diff --git a/CHANGELOG.md b/CHANGELOG.md index 973a865..80480c0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ This log is intended to keep track of backwards-incompatible changes, including but not limited to API changes and file location changes. Minor behavioral changes may not be included if they are not expected to break existing code. +## v0.19.0 + +* XLSX export hyperlinks compatible with google sheets (h/t Evan Bovie) +* NUMBERS export multiple sheets, full worksheet range +* formalized `dense` mode + ## v0.18.12 * `package.json` added types in `exports` structure diff --git a/bits/00_header.js b/bits/00_header.js index 7758960..9ff1c4a 100644 --- a/bits/00_header.js +++ b/bits/00_header.js @@ -1,6 +1,6 @@ /*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */ /* vim: set ts=2: */ /*exported XLSX */ -/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false, Set:false */ +/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false */ var XLSX = {}; function make_xlsx_lib(XLSX){ diff --git a/bits/01_version.js b/bits/01_version.js index 63cf089..a34ea873 100644 --- a/bits/01_version.js +++ b/bits/01_version.js @@ -1 +1 @@ -XLSX.version = '0.18.12'; +XLSX.version = '0.19.0'; diff --git a/bits/18_cfb.js b/bits/18_cfb.js index b58177c..5d770fc 100644 --- a/bits/18_cfb.js +++ b/bits/18_cfb.js @@ -306,7 +306,7 @@ sleuth_fat(difat_start, difat_sec_cnt, sectors, ssz, fat_addrs); /** Chains */ var sector_list/*:SectorList*/ = make_sector_list(sectors, dir_start, fat_addrs, ssz); -sector_list[dir_start].name = "!Directory"; +if(dir_start < sector_list.length) sector_list[dir_start].name = "!Directory"; if(nmfs > 0 && minifat_start !== ENDOFCHAIN) sector_list[minifat_start].name = "!MiniFAT"; sector_list[fat_addrs[0]].name = "!FAT"; sector_list.fat_addrs = fat_addrs; diff --git a/bits/27_csfutils.js b/bits/27_csfutils.js index 31d94b0..f8381f7 100644 --- a/bits/27_csfutils.js +++ b/bits/27_csfutils.js @@ -9,7 +9,6 @@ function fix_col(cstr/*:string*/)/*:string*/ { return cstr.replace(/^([A-Z])/,"$ function unfix_col(cstr/*:string*/)/*:string*/ { return cstr.replace(/^\$([A-Z])/,"$1"); } function split_cell(cstr/*:string*/)/*:Array*/ { return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(","); } -//function decode_cell(cstr/*:string*/)/*:CellAddress*/ { var splt = split_cell(cstr); return { c:decode_col(splt[0]), r:decode_row(splt[1]) }; } function decode_cell(cstr/*:string*/)/*:CellAddress*/ { var R = 0, C = 0; for(var i = 0; i < cstr.length; ++i) { @@ -19,7 +18,6 @@ function decode_cell(cstr/*:string*/)/*:CellAddress*/ { } return { c: C - 1, r:R - 1 }; } -//function encode_cell(cell/*:CellAddress*/)/*:string*/ { return encode_col(cell.c) + encode_row(cell.r); } function encode_cell(cell/*:CellAddress*/)/*:string*/ { var col = cell.c + 1; var s=""; @@ -112,9 +110,10 @@ function sheet_to_workbook(sheet/*:Worksheet*/, opts)/*:Workbook*/ { function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksheet*/ { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; - var ws/*:Worksheet*/ = _ws || (dense ? ([]/*:any*/) : ({}/*:any*/)); + var ws/*:Worksheet*/ = _ws || ({}/*:any*/); + if(dense && !ws["!data"]) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -133,13 +132,19 @@ function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksh range.e.r = Math.max(range.e.r, _range.e.r); if(_R == -1) range.e.r = _R = _range.e.r + 1; } + var row = []; for(var R = 0; R != data.length; ++R) { if(!data[R]) continue; if(!Array.isArray(data[R])) throw new Error("aoa_to_sheet expects an array of arrays"); + var __R = _R + R, __Rstr = "" + (__R + 1); + if(dense) { + if(!ws["!data"][__R]) ws["!data"][__R] = []; + row = ws["!data"][__R]; + } for(var C = 0; C != data[R].length; ++C) { if(typeof data[R][C] === 'undefined') continue; var cell/*:Cell*/ = ({v: data[R][C] }/*:any*/); - var __R = _R + R, __C = _C + C; + var __C = _C + C; if(range.s.r > __R) range.s.r = __R; if(range.s.c > __C) range.s.c = __C; if(range.e.r < __R) range.e.r = __R; @@ -163,11 +168,10 @@ function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksh else cell.t = 's'; } if(dense) { - if(!ws[__R]) ws[__R] = []; - if(ws[__R][__C] && ws[__R][__C].z) cell.z = ws[__R][__C].z; - ws[__R][__C] = cell; + if(row[__C] && row[__C].z) cell.z = row[__C].z; + row[__C] = cell; } else { - var cell_ref = encode_cell(({c:__C,r:__R}/*:any*/)); + var cell_ref = encode_col(__C) + __Rstr/*:any*/; if(ws[cell_ref] && ws[cell_ref].z) cell.z = ws[cell_ref].z; ws[cell_ref] = cell; } diff --git a/bits/40_harb.js b/bits/40_harb.js index 9f6f61f..1ceb55b 100644 --- a/bits/40_harb.js +++ b/bits/40_harb.js @@ -611,7 +611,7 @@ var SYLK = /*#__PURE__*/(function() { /* TODO: codepage */ var preamble/*:Array*/ = ["ID;PSheetJS;N;E"], o/*:Array*/ = []; var r = safe_decode_range(ws['!ref']), cell/*:Cell*/; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var RS = "\r\n"; var d1904 = (((wb||{}).Workbook||{}).WBProps||{}).date1904; @@ -623,10 +623,10 @@ var SYLK = /*#__PURE__*/(function() { preamble.push("B;Y" + (r.e.r - r.s.r + 1) + ";X" + (r.e.c - r.s.c + 1) + ";D" + [r.s.c,r.s.r,r.e.c,r.e.r].join(" ")); preamble.push("O;L;D;B" + (d1904 ? ";V4" : "") + ";K47;G100 0.001"); for(var R = r.s.r; R <= r.e.r; ++R) { + if(dense && !ws["!data"][R]) continue; var p = []; for(var C = r.s.c; C <= r.e.c; ++C) { - var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C]: ws[coord]; + cell = dense ? ws["!data"][R][C] : ws[encode_col(C) + encode_row(R)]; if(!cell || (cell.v == null && (!cell.f || cell.F))) continue; p.push(write_ws_cell_sylk(cell, ws, R, C, opts)); // TODO: pass date1904 info } @@ -699,7 +699,7 @@ var DIF = /*#__PURE__*/(function() { function sheet_to_dif(ws/*:Worksheet*//*::, opts:?any*/)/*:string*/ { var _DIF_XL = DIF_XL; var r = safe_decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var o/*:Array*/ = [ "TABLE\r\n0,1\r\n\"sheetjs\"\r\n", "VECTORS\r\n0," + (r.e.r - r.s.r + 1) + "\r\n\"\"\r\n", @@ -707,9 +707,10 @@ var DIF = /*#__PURE__*/(function() { "DATA\r\n0,0\r\n\"\"\r\n" ]; for(var R = r.s.r; R <= r.e.r; ++R) { + var row = dense ? ws["!data"][R] : []; var p = "-1,0\r\nBOT\r\n"; for(var C = r.s.c; C <= r.e.c; ++C) { - var cell/*:Cell*/ = dense ? (ws[R] && ws[R][C]) : ws[encode_cell({r:R,c:C})]; + var cell/*:Cell*/ = dense ? (row && row[C]) : ws[encode_cell({r:R,c:C})]; if(cell == null) { p +=("1,0\r\n\"\"\r\n"); continue;} switch(cell.t) { case 'n': @@ -804,11 +805,11 @@ var ETH = /*#__PURE__*/(function() { if(!ws || !ws['!ref']) return ""; var o/*:Array*/ = [], oo/*:Array*/ = [], cell, coord = ""; var r = decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { for(var C = r.s.c; C <= r.e.c; ++C) { coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null || cell.t === 'z') continue; oo = ["cell", coord, 't']; switch(cell.t) { @@ -930,7 +931,8 @@ var PRN = /*#__PURE__*/(function() { var o = opts || {}; var sep = ""; if(DENSE != null && o.dense == null) o.dense = DENSE; - var ws/*:Worksheet*/ = o.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws/*:Worksheet*/ = ({}/*:any*/); + if(o.dense) ws["!data"] = []; var range/*:Range*/ = ({s: {c:0, r:0}, e: {c:0, r:0}}/*:any*/); if(str.slice(0,4) == "sep=") { @@ -976,7 +978,7 @@ var PRN = /*#__PURE__*/(function() { cell.v = s; } if(cell.t == 'z'){} - else if(o.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = cell; } + else if(o.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = cell; } else ws[encode_cell({c:C,r:R})] = cell; start = end+1; startcc = str.charCodeAt(start); if(range.e.c < C) range.e.c = C; @@ -1032,12 +1034,12 @@ var PRN = /*#__PURE__*/(function() { function sheet_to_prn(ws/*:Worksheet*//*::, opts:?any*/)/*:string*/ { var o/*:Array*/ = []; var r = safe_decode_range(ws['!ref']), cell/*:Cell*/; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { var oo/*:Array*/ = []; for(var C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null) { oo.push(" "); continue; } var w = (cell.w || (format_cell(cell), cell.w) || "").slice(0,10); while(w.length < 10) w += " "; diff --git a/bits/41_lotus.js b/bits/41_lotus.js index 433ce9c..319cf20 100644 --- a/bits/41_lotus.js +++ b/bits/41_lotus.js @@ -28,8 +28,9 @@ var WK_ = /*#__PURE__*/(function() { if(!d) return d; var o = opts || {}; if(DENSE != null && o.dense == null) o.dense = DENSE; - var s/*:Worksheet*/ = ((o.dense ? [] : {})/*:any*/), n = "Sheet1", next_n = "", sidx = 0; - var sheets = {}, snames = [], realnames = []; + var s/*:Worksheet*/ = ({}/*:any*/), n = "Sheet1", next_n = "", sidx = 0; + var sheets = {}, snames = [], realnames = [], sdata = []; + if(o.dense) sdata = s["!data"] = []; var refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; var sheetRows = o.sheetRows || 0; @@ -74,13 +75,13 @@ var WK_ = /*#__PURE__*/(function() { s["!ref"] = encode_range(refguess); sheets[n] = s; snames.push(n); - s = (o.dense ? [] : {}); + s = ({}/*:any*/); if(o.dense) sdata = s["!data"] = []; refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; sidx = val[3]; n = next_n || "Sheet" + (sidx + 1); next_n = ""; } } - var tmpcell = o.dense ? (s[val[0].r]||[])[val[0].c] : s[encode_cell(val[0])]; + var tmpcell = o.dense ? (sdata[val[0].r]||[])[val[0].c] : s[encode_cell(val[0])]; if(tmpcell) { tmpcell.t = val[1].t; tmpcell.v = val[1].v; if(val[1].z != null) tmpcell.z = val[1].z; @@ -88,8 +89,8 @@ var WK_ = /*#__PURE__*/(function() { break; } if(o.dense) { - if(!s[val[0].r]) s[val[0].r] = []; - s[val[0].r][val[0].c] = val[1]; + if(!sdata[val[0].r]) sdata[val[0].r] = []; + sdata[val[0].r][val[0].c] = val[1]; } else s[encode_cell(val[0])] = val[1]; break; case 0x5405: o.works2 = true; break; @@ -115,14 +116,14 @@ var WK_ = /*#__PURE__*/(function() { s["!ref"] = encode_range(refguess); sheets[n] = s; snames.push(n); - s = (o.dense ? [] : {}); + s = ({}/*:any*/); if(o.dense) sdata = s["!data"] = []; refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; sidx = val[3]; n = "Sheet" + (sidx + 1); } if(sheetRows > 0 && val[0].r >= sheetRows) break; if(o.dense) { - if(!s[val[0].r]) s[val[0].r] = []; - s[val[0].r][val[0].c] = val[1]; + if(!sdata[val[0].r]) sdata[val[0].r] = []; + sdata[val[0].r][val[0].c] = val[1]; } else s[encode_cell(val[0])] = val[1]; if(refguess.e.c < val[0].c) refguess.e.c = val[0].c; if(refguess.e.r < val[0].r) refguess.e.r = val[0].r; @@ -157,18 +158,17 @@ var WK_ = /*#__PURE__*/(function() { if(o.type == "string") throw new Error("Cannot write WK1 to JS string"); var ba = buf_array(); var range = safe_decode_range(ws["!ref"]); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cols = []; write_biff_rec(ba, 0x00, write_BOF_WK1(0x0406)); write_biff_rec(ba, 0x06, write_RANGE(range)); var max_R = Math.min(range.e.r, 8191); + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= max_R; ++R) { var rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); - var ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + for(C = range.s.c; C <= range.e.c; ++C) { + var cell = dense ? (ws["!data"][R]||[])[C] : ws[cols[C] + rr]; if(!cell || cell.t == "z") continue; /* TODO: formula records */ if(cell.t == "n") { @@ -200,7 +200,7 @@ var WK_ = /*#__PURE__*/(function() { var ws = wb.Sheets[wb.SheetNames[i]]; if(!ws || !ws["!ref"]) continue; var range = safe_decode_range(ws["!ref"]); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cols = []; var max_R = Math.min(range.e.r, 8191); for(var R = range.s.r; R <= max_R; ++R) { @@ -208,7 +208,7 @@ var WK_ = /*#__PURE__*/(function() { for(var C = range.s.c; C <= range.e.c; ++C) { if(R === range.s.r) cols[C] = encode_col(C); var ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; if(!cell || cell.t == "z") continue; /* TODO: FORMULA19 NUMBER18 records */ if(cell.t == "n") { @@ -919,7 +919,7 @@ var WK_ = /*#__PURE__*/(function() { prep_blob(d, 0); var o = opts || {}; if(DENSE != null && o.dense == null) o.dense = DENSE; - var s/*:Worksheet*/ = ((o.dense ? [] : {})/*:any*/); + var s/*:Worksheet*/ = ({}/*:any*/); if(o.dense) s["!data"] = []; var SST = [], sname = "", formulae = []; var range = {s:{r:-1,c:-1}, e:{r:-1,c:-1}}; var cnt = 0, type = 0, C = 0, R = 0; @@ -956,7 +956,7 @@ var WK_ = /*#__PURE__*/(function() { case 0x0601: { /* BOS */ var sidx = p.read_shift(2); - s = ((o.dense ? [] : {})/*:any*/); + s = ({}/*:any*/); if(o.dense) s["!data"] = []; range.s.c = p.read_shift(2); range.e.c = p.read_shift(2); range.s.r = p.read_shift(4); @@ -993,6 +993,7 @@ var WK_ = /*#__PURE__*/(function() { R = p.read_shift(4), cnt = p.read_shift(4); if(range.s.r > R) range.s.r = R; if(range.e.r < R + cnt - 1) range.e.r = R + cnt - 1; + var CC = encode_col(C); while(p.l < p.length) { var cell = { t: "z" }; var flags = p.read_shift(1); @@ -1015,10 +1016,10 @@ var WK_ = /*#__PURE__*/(function() { default: throw "Unsupported delta for QPW cell type " + (flags & 0x1F); } if(!(!o.sheetStubs && cell.t == "z")) { - if(Array.isArray(s)) { - if(!s[R]) s[R] = []; - s[R][C] = cell; - } else s[encode_cell({r:R, c:C})] = cell; + if(s["!data"] != null) { + if(!s["!data"][R]) s["!data"][R] = []; + s["!data"][R][C] = cell; + } else s[CC + encode_row(R)] = cell; } ++R; --cnt; while(mul-- > 0 && cnt >= 0) { @@ -1034,10 +1035,10 @@ var WK_ = /*#__PURE__*/(function() { default: throw "Cannot apply repeat for QPW cell type " + (flags & 0x1F); } if(!(!o.sheetStubs && cell.t == "z")) { - if(Array.isArray(s)) { - if(!s[R]) s[R] = []; - s[R][C] = cell; - } else s[encode_cell({r:R, c:C})] = cell; + if(s["!data"] != null) { + if(!s["!data"][R]) s["!data"][R] = []; + s["!data"][R][C] = cell; + } else s[CC + encode_row(R)] = cell; } ++R; --cnt; } diff --git a/bits/45_rtf.js b/bits/45_rtf.js index dd4b42f..e4c323f 100644 --- a/bits/45_rtf.js +++ b/bits/45_rtf.js @@ -13,14 +13,18 @@ function rtf_to_sheet(d, opts) { } function rtf_to_sheet_str(str, opts) { var o = opts || {}; - var ws = o.dense ? [] : {}; + var ws = {}; + var dense = o.dense; + if (dense) + ws["!data"] = []; var rows = str.match(/\\trowd[\s\S]*?\\row\b/g); if (!rows) throw new Error("RTF missing table"); var range = { s: { c: 0, r: 0 }, e: { c: 0, r: rows.length - 1 } }; + var row = []; rows.forEach(function(rowtf, R) { - if (Array.isArray(ws)) - ws[R] = []; + if (dense) + row = ws["!data"][R] = []; var rtfre = /\\[\w\-]+\b/g; var last_index = 0; var res; @@ -46,8 +50,8 @@ function rtf_to_sheet_str(str, opts) { cell.w = cell.v; cell.v = fuzzynum(cell.v); } - if (Array.isArray(ws)) - ws[R][C] = cell; + if (dense) + row[C] = cell; else ws[encode_cell({ r: R, c: C })] = cell; } @@ -75,15 +79,17 @@ function sheet_to_rtf(ws, opts) { if (!ws["!ref"]) return o[0] + "}"; var r = safe_decode_range(ws["!ref"]), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, row = []; for (var R = r.s.r; R <= r.e.r; ++R) { o.push("\\trowd\\trautofit1"); for (var C = r.s.c; C <= r.e.c; ++C) o.push("\\cellx" + (C + 1)); o.push("\\pard\\intbl"); + if (dense) + row = ws["!data"][R] || []; for (C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({ r: R, c: C }); - cell = dense ? (ws[R] || [])[C] : ws[coord]; + cell = dense ? row[C] : ws[coord]; if (!cell || cell.v == null && (!cell.f || cell.F)) { o.push(" \\cell"); continue; diff --git a/bits/56_cmntcommon.js b/bits/56_cmntcommon.js index c87f857..76d0295 100644 --- a/bits/56_cmntcommon.js +++ b/bits/56_cmntcommon.js @@ -1,15 +1,15 @@ -function sheet_insert_comments(sheet, comments/*:Array*/, threaded/*:boolean*/, people/*:?Array*/) { - var dense = Array.isArray(sheet); +function sheet_insert_comments(sheet/*:WorkSheet*/, comments/*:Array*/, threaded/*:boolean*/, people/*:?Array*/) { + var dense = sheet["!data"] != null; var cell/*:Cell*/; comments.forEach(function(comment) { var r = decode_cell(comment.ref); if(dense) { - if(!sheet[r.r]) sheet[r.r] = []; - cell = sheet[r.r][r.c]; + if(!sheet["!data"][r.r]) sheet["!data"][r.r] = []; + cell = sheet["!data"][r.r][r.c]; } else cell = sheet[comment.ref]; if (!cell) { cell = ({t:"z"}/*:any*/); - if(dense) sheet[r.r][r.c] = cell; + if(dense) sheet["!data"][r.r][r.c] = cell; else sheet[comment.ref] = cell; var range = safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1"); if(range.s.r > r.r) range.s.r = r.r; @@ -17,7 +17,7 @@ function sheet_insert_comments(sheet, comments/*:Array*/, threaded/* if(range.s.c > r.c) range.s.c = r.c; if(range.e.c < r.c) range.e.c = r.c; var encoded = encode_range(range); - if (encoded !== sheet["!ref"]) sheet["!ref"] = encoded; + sheet["!ref"] = encoded; } if (!cell.c) cell.c = []; @@ -35,4 +35,3 @@ function sheet_insert_comments(sheet, comments/*:Array*/, threaded/* cell.c.push(o); }); } - diff --git a/bits/67_wsxml.js b/bits/67_wsxml.js index e40175c..5f48021 100644 --- a/bits/67_wsxml.js +++ b/bits/67_wsxml.js @@ -20,7 +20,7 @@ function parse_ws_xml(data/*:?string*/, opts, idx/*:number*/, rels, wb/*:WBWBPro if(DENSE != null && opts.dense == null) opts.dense = DENSE; /* 18.3.1.99 worksheet CT_Worksheet */ - var s = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var s = ({}/*:any*/); if(opts.dense) s["!data"] = []; var refguess/*:Range*/ = ({s: {r:2000000, c:2000000}, e: {r:0, c:0} }/*:any*/); var data1 = "", data2 = ""; @@ -149,7 +149,7 @@ function write_ws_xml_protection(sp)/*:string*/ { } function parse_ws_xml_hlinks(s, data/*:Array*/, rels) { - var dense = Array.isArray(s); + var dense = s["!data"] != null; for(var i = 0; i != data.length; ++i) { var val = parsexmltag(utf8read(data[i]), true); if(!val.ref) return; @@ -165,11 +165,11 @@ function parse_ws_xml_hlinks(s, data/*:Array*/, rels) { if(val.tooltip) { val.Tooltip = val.tooltip; delete val.tooltip; } var rng = safe_decode_range(val.ref); for(var R=rng.s.r;R<=rng.e.r;++R) for(var C=rng.s.c;C<=rng.e.c;++C) { - var addr = encode_cell({c:C,r:R}); + var addr = encode_col(C) + encode_row(R); if(dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:"z",v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:"z",v:undefined}; + s["!data"][R][C].l = val; } else { if(!s[addr]) s[addr] = {t:"z",v:undefined}; s[addr].l = val; @@ -321,7 +321,7 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th var do_format = Array.isArray(styles.CellXf), cf; var arrayf/*:Array<[Range, string]>*/ = []; var sharedf = []; - var dense = Array.isArray(s); + var dense = s["!data"] != null; var rows/*:Array*/ = [], rowobj = {}, rowrite = false; var sheetStubs = !!opts.sheetStubs; for(var marr = sdata.split(rowregex), mt = 0, marrlen = marr.length; mt != marrlen; ++mt) { @@ -486,8 +486,8 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th } if(dense) { var _r = decode_cell(tag.r); - if(!s[_r.r]) s[_r.r] = []; - s[_r.r][_r.c] = p; + if(!s["!data"][_r.r]) s["!data"][_r.r] = []; + s["!data"][_r.r][_r.c] = p; } else s[tag.r] = p; } } @@ -496,7 +496,7 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th function write_ws_xml_data(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbook*//*::, rels*/)/*:string*/ { var o/*:Array*/ = [], r/*:Array*/ = [], range = safe_decode_range(ws['!ref']), cell="", ref, rr = "", cols/*:Array*/ = [], R=0, C=0, rows = ws['!rows']; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var params = ({r:rr}/*:any*/), row/*:RowInfo*/, height = -1; for(C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(R = range.s.r; R <= range.e.r; ++R) { @@ -504,7 +504,7 @@ function write_ws_xml_data(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbook rr = encode_row(R); for(C = range.s.c; C <= range.e.c; ++C) { ref = cols[C] + rr; - var _cell = dense ? (ws[R]||[])[C]: ws[ref]; + var _cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(_cell === undefined) continue; if((cell = write_ws_xml_cell(_cell, ref, ws, opts, idx, wb)) != null) r.push(cell); } diff --git a/bits/68_wsbin.js b/bits/68_wsbin.js index c08914c..591f6a5 100644 --- a/bits/68_wsbin.js +++ b/bits/68_wsbin.js @@ -41,12 +41,13 @@ function write_BrtRowHdr(R/*:number*/, range, ws) { o.l += 4; var caddr = {r:R, c:0}; + var dense = ws["!data"] != null; for(var i = 0; i < 16; ++i) { if((range.s.c > ((i+1) << 10)) || (range.e.c < (i << 10))) continue; var first = -1, last = -1; for(var j = (i<<10); j < ((i+1)<<10); ++j) { caddr.c = j; - var cell = Array.isArray(ws) ? (ws[caddr.r]||[])[caddr.c] : ws[encode_cell(caddr)]; + var cell = dense ? (ws["!data"][caddr.r]||[])[caddr.c] : ws[encode_cell(caddr)]; if(cell) { if(first < 0) first = j; last = j; } } if(first < 0) continue; @@ -510,7 +511,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ var opts = _opts || {}; if(!rels) rels = {'!id':{}}; if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var s/*:Worksheet*/ = (opts.dense ? [] : {}); + var s/*:Worksheet*/ = ({}); if(opts.dense) s["!data"] = []; var ref; var refguess = {s: {r:2000000, c:2000000}, e: {r:0, c:0} }; @@ -586,7 +587,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ } if((cf = styles.CellXf[val[0].iStyleRef])) safe_format(p,cf.numFmtId,null,opts, themes, styles); C = val[0].c == -1 ? C + 1 : val[0].c; - if(opts.dense) { if(!s[R]) s[R] = []; s[R][C] = p; } + if(opts.dense) { if(!s["!data"][R]) s["!data"][R] = []; s["!data"][R][C] = p; } else s[encode_col(C) + rr] = p; if(opts.cellFormula) { af = false; @@ -619,7 +620,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ if(!opts.sheetStubs || pass) break; p = ({t:'z',v:void 0}/*:any*/); C = val[0].c == -1 ? C + 1 : val[0].c; - if(opts.dense) { if(!s[R]) s[R] = []; s[R][C] = p; } + if(opts.dense) { if(!s["!data"][R]) s["!data"][R] = []; s["!data"][R][C] = p; } else s[encode_col(C) + rr] = p; if(refguess.s.r > row.r) refguess.s.r = row.r; if(refguess.s.c > C) refguess.s.c = C; @@ -650,11 +651,11 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ } for(R=val.rfx.s.r;R<=val.rfx.e.r;++R) for(C=val.rfx.s.c;C<=val.rfx.e.c;++C) { if(opts.dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:'z',v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:'z',v:undefined}; + s["!data"][R][C].l = val; } else { - addr = encode_cell({c:C,r:R}); + addr = encode_col(C) + encode_row(R); if(!s[addr]) s[addr] = {t:'z',v:undefined}; s[addr].l = val; } @@ -664,14 +665,14 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ case 0x01AA: /* 'BrtArrFmla' */ if(!opts.cellFormula) break; arrayf.push(val); - cell = ((opts.dense ? s[R][C] : s[encode_col(C) + rr])/*:any*/); + cell = ((opts.dense ? s["!data"][R][C] : s[encode_col(C) + rr])/*:any*/); cell.f = stringify_formula(val[1], refguess, {r:row.r, c:C}, supbooks, opts); cell.F = encode_range(val[0]); break; case 0x01AB: /* 'BrtShrFmla' */ if(!opts.cellFormula) break; sharedf[encode_cell(val[0].s)] = val[1]; - cell = (opts.dense ? s[R][C] : s[encode_col(C) + rr]); + cell = (opts.dense ? s["!data"][R][C] : s[encode_col(C) + rr]); cell.f = stringify_formula(val[1], refguess, {r:row.r, c:C}, supbooks, opts); break; @@ -864,7 +865,7 @@ function write_ws_bin_cell(ba/*:BufArray*/, cell/*:Cell*/, R/*:number*/, C/*:num function write_CELLTABLE(ba, ws/*:Worksheet*/, idx/*:number*/, opts/*::, wb:Workbook*/) { var range = safe_decode_range(ws['!ref'] || "A1"), ref, rr = "", cols/*:Array*/ = []; write_record(ba, 0x0091 /* BrtBeginSheetData */); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cap = range.e.r; if(ws['!rows']) cap = Math.max(range.e.r, ws['!rows'].length - 1); for(var R = range.s.r; R <= cap; ++R) { @@ -877,7 +878,7 @@ function write_CELLTABLE(ba, ws/*:Worksheet*/, idx/*:number*/, opts/*::, wb:Work /* *16384CELL */ if(R === range.s.r) cols[C] = encode_col(C); ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; if(!cell) { last_seen = false; continue; } /* write cell */ last_seen = write_ws_bin_cell(ba, cell, R, C, opts, ws, last_seen); diff --git a/bits/69_chartxml.js b/bits/69_chartxml.js index e4a9ec7..603622a 100644 --- a/bits/69_chartxml.js +++ b/bits/69_chartxml.js @@ -34,7 +34,10 @@ function parse_chart(data/*:?string*/, name/*:string*/, opts, rels, wb, csheet) refguess.e.c = C; col = encode_col(C); cache[0].forEach(function(n,i) { - cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; + if(cs["!data"]) { + if(!cs["!data"][i]) cs["!data"][i] = []; + cs["!data"][i][C] = {t:'n', v:n, z:cache[1] }; + } else cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; R = i; }); if(refguess.e.r < R) refguess.e.r = R; diff --git a/bits/75_xlml.js b/bits/75_xlml.js index 6dad076..eff56cc 100644 --- a/bits/75_xlml.js +++ b/bits/75_xlml.js @@ -207,7 +207,7 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { var Rn; var state = [], tmp; if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var sheets = {}, sheetnames/*:Array*/ = [], cursheet/*:Worksheet*/ = (opts.dense ? [] : {}), sheetname = ""; + var sheets = {}, sheetnames/*:Array*/ = [], cursheet/*:Worksheet*/ = ({}), sheetname = ""; if(opts.dense) cursheet["!data"] = []; var cell = ({}/*:any*/), row = {};// eslint-disable-line no-unused-vars var dtag = xlml_parsexmltag(''), didx = 0; var c = 0, r = 0; @@ -240,8 +240,8 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { if(comments.length > 0) cell.c = comments; if((!opts.sheetRows || opts.sheetRows > r) && cell.v !== void 0) { if(opts.dense) { - if(!cursheet[r]) cursheet[r] = []; - cursheet[r][c] = cell; + if(!cursheet["!data"][r]) cursheet["!data"][r] = []; + cursheet["!data"][r][c] = cell; } else cursheet[encode_col(c) + encode_row(r)] = cell; } if(cell.HRef) { @@ -261,8 +261,8 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { for(var cmd = r; cmd <= rr; ++cmd) { if(cma > c || cmd > r) { if(opts.dense) { - if(!cursheet[cmd]) cursheet[cmd] = []; - cursheet[cmd][cma] = {t:'z'}; + if(!cursheet["!data"][cmd]) cursheet["!data"][cmd] = []; + cursheet["!data"][cmd][cma] = {t:'z'}; } else cursheet[encode_col(cma) + encode_row(cmd)] = {t:'z'}; } } @@ -321,7 +321,7 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { state.push([Rn[3], false]); tmp = xlml_parsexmltag(Rn[0]); sheetname = unescapexml(tmp.Name); - cursheet = (opts.dense ? [] : {}); + cursheet = ({}); if(opts.dense) cursheet["!data"] = []; merges = []; arrayf = []; rowinfo = []; @@ -1177,7 +1177,7 @@ function write_ws_xlml_table(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbo if(n.hidden) k['ss:Hidden']="1"; o.push(writextag("Column",null,k)); }); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = range.s.r; R <= range.e.r; ++R) { var row = [write_ws_xlml_row(R, (ws['!rows']||[])[R])]; for(var C = range.s.c; C <= range.e.c; ++C) { @@ -1192,7 +1192,7 @@ function write_ws_xlml_table(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbo } if(skip) continue; var addr = {r:R,c:C}; - var ref = encode_cell(addr), cell = dense ? (ws[R]||[])[C] : ws[ref]; + var ref = encode_col(C) + encode_row(R), cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; row.push(write_ws_xlml_cell(cell, ref, ws, opts, idx, wb, addr)); } row.push(""); diff --git a/bits/76_xls.js b/bits/76_xls.js index 4546068..488653f 100644 --- a/bits/76_xls.js +++ b/bits/76_xls.js @@ -104,7 +104,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { var wb = ({opts:{}}/*:any*/); var Sheets = {}; if(DENSE != null && options.dense == null) options.dense = DENSE; - var out/*:Worksheet*/ = ((options.dense ? [] : {})/*:any*/); + var out/*:Worksheet*/ = ({}/*:any*/); if(options.dense) out["!data"] = []; var Directory = {}; var range/*:Range*/ = ({}/*:any*/); var last_formula = null; @@ -157,8 +157,8 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { } { if(options.dense) { - if(!out[cell.r]) out[cell.r] = []; - out[cell.r][cell.c] = line; + if(!out["!data"][cell.r]) out["!data"][cell.r] = []; + out["!data"][cell.r][cell.c] = line; } else out[last_cell] = line; } }; @@ -324,7 +324,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { Workbook.Sheets.push(wsprops); } if(cur_sheet === "") Preamble = out; else Sheets[cur_sheet] = out; - out = ((options.dense ? [] : {})/*:any*/); + out = ({}/*:any*/); if(options.dense) out["!data"] = []; } break; case 0x0009: case 0x0209: case 0x0409: case 0x0809 /* BOF */: { if(opts.biff === 8) opts.biff = { @@ -344,7 +344,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { if(val.BIFFVer == 0 && val.dt == 0x1000) { opts.biff = 5; seen_codepage = true; set_cp(opts.codepage = 28591); } if(opts.biff == 8 && val.BIFFVer == 0 && val.dt == 16) opts.biff = 2; if(file_depth++) break; - out = ((options.dense ? [] : {})/*:any*/); + out = ({}/*:any*/); if(options.dense) out["!data"] = []; if(opts.biff < 8 && !seen_codepage) { seen_codepage = true; set_cp(opts.codepage = options.codepage || 1252); } @@ -367,7 +367,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { wsprops = {Hidden:(Directory[s]||{hs:0}).hs, name:cur_sheet }; } break; case 0x0203 /* Number */: case 0x0003 /* BIFF2NUM */: case 0x0002 /* BIFF2INT */: { - if(out["!type"] == "chart") if(options.dense ? (out[val.r]||[])[val.c]: out[encode_cell({c:val.c, r:val.r})]) ++val.c; + if(out["!type"] == "chart") if(options.dense ? (out["!data"][val.r]||[])[val.c]: out[encode_col(val.c) + encode_row(val.r)]) ++val.c; temp_val = ({ixfe: val.ixfe, XF: XFs[val.ixfe]||{}, v:val.val, t:'n'}/*:any*/); if(BIFF2Fmt > 0) temp_val.z = BIFF2FmtTable[(temp_val.ixfe>>8) & 0x3F]; safe_format_xf(temp_val, options, wb.opts.Date1904); @@ -404,7 +404,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { var _fr = _f[0][0][1][0], _fc = _f[0][0][1][1]; var _fe = encode_cell({r:_fr, c:_fc}); if(sharedf[_fe]) temp_val.f = ""+stringify_formula(val.formula,range,val.cell,supbooks, opts); - else temp_val.F = ((options.dense ? (out[_fr]||[])[_fc]: out[_fe]) || {}).F; + else temp_val.F = ((options.dense ? (out["!data"][_fr]||[])[_fc]: out[_fe]) || {}).F; } else temp_val.f = ""+stringify_formula(val.formula,range,val.cell,supbooks, opts); } if(BIFF2Fmt > 0) temp_val.z = BIFF2FmtTable[(temp_val.ixfe>>8) & 0x3F]; @@ -429,7 +429,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { case 0x0021: case 0x0221 /* Array */: { arrayf.push(val); var _arraystart = encode_cell(val[0].s); - cc = options.dense ? (out[val[0].s.r]||[])[val[0].s.c] : out[_arraystart]; + cc = options.dense ? (out["!data"][val[0].s.r]||[])[val[0].s.c] : out[_arraystart]; if(options.cellFormula && cc) { if(!last_formula) break; /* technically unreachable */ if(!_arraystart || !cc) break; @@ -443,7 +443,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { /* TODO: capture range */ if(!last_formula) break; /* technically unreachable */ sharedf[encode_cell(last_formula.cell)]= val[0]; - cc = options.dense ? (out[last_formula.cell.r]||[])[last_formula.cell.c] : out[encode_cell(last_formula.cell)]; + cc = options.dense ? (out["!data"][last_formula.cell.r]||[])[last_formula.cell.c] : out[encode_cell(last_formula.cell)]; (cc||{}).f = ""+stringify_formula(val[0], range, lastcell, supbooks, opts); } } break; @@ -508,25 +508,25 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { case 0x01b8 /* HLink */: { for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR) for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC) { - cc = options.dense ? (out[rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; + cc = options.dense ? (out["!data"][rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; if(cc) cc.l = val[1]; } } break; case 0x0800 /* HLinkTooltip */: { for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR) for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC) { - cc = options.dense ? (out[rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; + cc = options.dense ? (out["!data"][rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; if(cc && cc.l) cc.l.Tooltip = val[1]; } } break; case 0x001c /* Note */: { if(opts.biff <= 5 && opts.biff >= 2) break; /* TODO: BIFF5 */ - cc = options.dense ? (out[val[0].r]||[])[val[0].c] : out[encode_cell(val[0])]; + cc = options.dense ? (out["!data"][val[0].r]||[])[val[0].c] : out[encode_cell(val[0])]; var noteobj = objects[val[2]]; if(!cc) { if(options.dense) { - if(!out[val[0].r]) out[val[0].r] = []; - cc = out[val[0].r][val[0].c] = ({t:"z"}/*:any*/); + if(!out["!data"][val[0].r]) out["!data"][val[0].r] = []; + cc = out["!data"][val[0].r][val[0].c] = ({t:"z"}/*:any*/); } else { cc = out[encode_cell(val[0])] = ({t:"z"}/*:any*/); } diff --git a/bits/78_writebiff.js b/bits/78_writebiff.js index cdcdfed..078c137 100644 --- a/bits/78_writebiff.js +++ b/bits/78_writebiff.js @@ -75,20 +75,20 @@ function write_ws_biff2_cell(ba/*:BufArray*/, cell/*:Cell*/, R/*:number*/, C/*:n } function write_ws_biff2(ba/*:BufArray*/, ws/*:Worksheet*/, idx/*:number*/, opts/*::, wb:Workbook*/) { - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var range = safe_decode_range(ws['!ref'] || "A1"), ref/*:string*/, rr = "", cols/*:Array*/ = []; if(range.e.c > 0xFF || range.e.r > 0x3FFF) { if(opts.WTF) throw new Error("Range " + (ws['!ref'] || "A1") + " exceeds format limit A1:IV16384"); range.e.c = Math.min(range.e.c, 0xFF); range.e.r = Math.min(range.e.c, 0x3FFF); - ref = encode_range(range); } + var row = []; + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= range.e.r; ++R) { + if(dense) row = ws["!data"][R] || []; rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); - ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + for(C = range.s.c; C <= range.e.c; ++C) { + var cell = dense ? row[C] : ws[cols[C] + rr]; if(!cell) continue; /* write cell */ write_ws_biff2_cell(ba, cell, R, C, opts); @@ -99,7 +99,6 @@ function write_ws_biff2(ba/*:BufArray*/, ws/*:Worksheet*/, idx/*:number*/, opts/ /* Based on test files */ function write_biff2_buf(wb/*:Workbook*/, opts/*:WriteOpts*/) { var o = opts || {}; - if(DENSE != null && o.dense == null) o.dense = DENSE; var ba = buf_array(); var idx = 0; for(var i=0;i*/ = []; var range = safe_decode_range(ws['!ref'] || "A1"); @@ -243,12 +242,14 @@ function write_ws_biff8(idx/*:number*/, opts, wb/*:Workbook*/) { if(b8) ws['!links'] = []; var comments = []; + var row = []; + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= range.e.r; ++R) { + if(dense) row = ws["!data"][R] || []; rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); + for(C = range.s.c; C <= range.e.c; ++C) { ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? row[C] : ws[ref]; if(!cell) continue; /* write cell */ write_ws_biff8_cell(ba, cell, R, C, opts); diff --git a/bits/79_html.js b/bits/79_html.js index fbd4df4..4406332 100644 --- a/bits/79_html.js +++ b/bits/79_html.js @@ -1,8 +1,8 @@ /* note: browser DOM element cannot see mso- style attrs, must parse */ function html_to_sheet(str/*:string*/, _opts)/*:Workbook*/ { var opts = _opts || {}; - if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var ws/*:Worksheet*/ = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var dense = (opts.dense != null) ? opts.dense : DENSE; + var ws/*:Worksheet*/ = ({}/*:any*/); if(dense) ws["!data"] = []; str = str.replace(//g, ""); var mtch/*:any*/ = str.match(/"); @@ -48,7 +48,7 @@ function html_to_sheet(str/*:string*/, _opts)/*:Workbook*/ { if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}/*:any*/); o.z = opts.dateNF || table_fmt[14]; } - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = o; } + if(dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = o; } else ws[encode_cell({r:R, c:C})] = o; C += CS; } @@ -61,6 +61,7 @@ function make_html_row(ws/*:Worksheet*/, r/*:Range*/, R/*:number*/, o/*:Sheet2HT var M/*:Array*/ = (ws['!merges'] ||[]); var oo/*:Array*/ = []; var sp = ({}/*:any*/); + var dense = ws["!data"] != null; for(var C = r.s.c; C <= r.e.c; ++C) { var RS = 0, CS = 0; for(var j = 0; j < M.length; ++j) { @@ -70,8 +71,8 @@ function make_html_row(ws/*:Worksheet*/, r/*:Range*/, R/*:number*/, o/*:Sheet2HT RS = M[j].e.r - M[j].s.r + 1; CS = M[j].e.c - M[j].s.c + 1; break; } if(RS < 0) continue; - var coord = encode_cell({r:R,c:C}); - var cell = o.dense ? (ws[R]||[])[C] : ws[coord]; + var coord = encode_col(C) + encode_row(R); + var cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; /* TODO: html entities */ var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; sp = ({}/*:any*/); @@ -119,7 +120,6 @@ function sheet_to_html(ws/*:Worksheet*/, opts/*:?Sheet2HTMLOpts*//*, wb:?Workboo var footer = o.footer != null ? o.footer : HTML_END; var out/*:Array*/ = [header]; var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); out.push(make_html_preamble(ws, r, o)); for(var R = r.s.r; R <= r.e.r; ++R) out.push(make_html_row(ws, r, R, o)); out.push("
" + footer); @@ -134,7 +134,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ } var opts = _opts || {}; - if(DENSE != null) opts.dense = DENSE; + var dense = ws["!data"] != null; var or_R = 0, or_C = 0; if(opts.origin != null) { if(typeof opts.origin == 'number') or_R = opts.origin; @@ -199,7 +199,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ l = Aelts[Aelti].getAttribute("href"); if(l.charAt(0) != "#") break; } if(l && l.charAt(0) != "#" && l.slice(0, 11).toLowerCase() != 'javascript:') o.l = ({ Target: l }); - if(opts.dense) { if(!ws[R + or_R]) ws[R + or_R] = []; ws[R + or_R][C + or_C] = o; } + if(dense) { if(!ws["!data"][R + or_R]) ws["!data"][R + or_R] = []; ws["!data"][R + or_R][C + or_C] = o; } else ws[encode_cell({c:C + or_C, r:R + or_R})] = o; if(range.e.c < C + or_C) range.e.c = C + or_C; C += CS; @@ -215,7 +215,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ function parse_dom_table(table/*:HTMLElement*/, _opts/*:?any*/)/*:Worksheet*/ { var opts = _opts || {}; - var ws/*:Worksheet*/ = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws/*:Worksheet*/ = ({}/*:any*/); if(opts.dense) ws["!data"] = []; return sheet_add_dom(ws, table, _opts); } diff --git a/bits/80_parseods.js b/bits/80_parseods.js index 7daa790..7df0c4c 100644 --- a/bits/80_parseods.js +++ b/bits/80_parseods.js @@ -245,7 +245,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { var sheetag/*:: = {name:"", '名称':""}*/; var rowtag/*:: = {'行号':""}*/; var Sheets = {}, SheetNames/*:Array*/ = []; - var ws = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws = ({}/*:any*/); if(opts.dense) ws["!data"] = []; var Rn, q/*:: :any = ({t:"", v:null, z:null, w:"",c:[],}:any)*/; var ctag = ({value:""}/*:any*/); var textp = "", textpidx = 0, textptag/*:: = {}*/; @@ -289,7 +289,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { sheetag = parsexmltag(Rn[0], false); R = C = -1; range.s.r = range.s.c = 10000000; range.e.r = range.e.c = 0; - ws = opts.dense ? ([]/*:any*/) : ({}/*:any*/); merges = []; + ws = ({}/*:any*/); if(opts.dense) ws["!data"] = []; merges = []; rowinfo = []; intable = true; } @@ -309,7 +309,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { case 'covered-table-cell': // 9.1.5 if(Rn[1] !== '/') ++C; if(opts.sheetStubs) { - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = {t:'z'}; } + if(opts.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = {t:'z'}; } else ws[encode_cell({r:R,c:C})] = {t:'z'}; } textp = ""; textR = []; @@ -325,10 +325,10 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { if((ctag['数据类型'] || ctag['value-type']) == "string") { q.t = "s"; q.v = unescapexml(ctag['string-value'] || ""); if(opts.dense) { - if(!ws[R]) ws[R] = []; - ws[R][C] = q; + if(!ws["!data"][R]) ws["!data"][R] = []; + ws["!data"][R][C] = q; } else { - ws[encode_cell({r:R,c:C})] = q; + ws[encode_col(C) + encode_row(R)] = q; } } C+= colpeat-1; @@ -405,9 +405,9 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { for(var rpt = 0; rpt < rowpeat; ++rpt) { colpeat = parseInt(ctag['number-columns-repeated']||"1", 10); if(opts.dense) { - if(!ws[R + rpt]) ws[R + rpt] = []; - ws[R + rpt][C] = rpt == 0 ? q : dup(q); - while(--colpeat > 0) ws[R + rpt][C + colpeat] = dup(q); + if(!ws["!data"][R + rpt]) ws["!data"][R + rpt] = []; + ws["!data"][R + rpt][C] = rpt == 0 ? q : dup(q); + while(--colpeat > 0) ws["!data"][R + rpt][C + colpeat] = dup(q); } else { ws[encode_cell({r:R + rpt,c:C})] = q; while(--colpeat > 0) ws[encode_cell({r:R + rpt,c:C + colpeat})] = dup(q); diff --git a/bits/81_writeods.js b/bits/81_writeods.js index 5d0cd92..3c612a0 100644 --- a/bits/81_writeods.js +++ b/bits/81_writeods.js @@ -211,7 +211,7 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function o.push(' \n'); var R=0,C=0, range = decode_range(ws['!ref']||"A1"); var marr/*:Array*/ = ws['!merges'] || [], mi = 0; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; if(ws["!cols"]) { for(C = 0; C <= range.e.c; ++C) o.push(' \n'); } @@ -237,7 +237,7 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function break; } if(skip) { o.push(covered_cell_xml); continue; } - var ref = encode_cell({r:R, c:C}), cell = dense ? (ws[R]||[])[C]: ws[ref]; + var ref = encode_cell({r:R, c:C}), cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(cell && cell.f) { ct['table:formula'] = escapexml(csf_to_ods_formula(cell.f)); if(cell.F) { @@ -347,9 +347,10 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function var nfi = 69; wb.SheetNames.map(function(n) { return wb.Sheets[n]; }).forEach(function(ws) { if(!ws) return; + var dense = (ws["!data"] != null); var range = decode_range(ws["!ref"]); for(var R = 0; R <= range.e.r; ++R) for(var C = 0; C <= range.e.c; ++C) { - var c = Array.isArray(ws) ? (ws[R]||[])[C] : ws[encode_cell({r:R,c:C})]; + var c = dense ? (ws["!data"][R]||[])[C] : ws[encode_cell({r:R,c:C})]; if(!c || !c.z || c.z.toLowerCase() == "general") continue; if(!nfs[c.z]) { var out = write_number_format_ods(c.z, "N" + nfi); diff --git a/bits/83_numbers.js b/bits/83_numbers.js index a7e59a1..037ac62 100644 --- a/bits/83_numbers.js +++ b/bits/83_numbers.js @@ -26,29 +26,22 @@ function u8str(u8) { function stru8(str) { return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); } -function u8contains(body, search) { - var L = body.indexOf(search[0]); - if (L == -1) - return false; - outer: - for (; L <= body.length - search.length; ++L) { - for (var j = 0; j < search.length; ++j) - if (body[L + j] != search[j]) - continue outer; - return true; - } - return false; -} function u8concat(u8a) { - var len = u8a.reduce(function(acc, x) { - return acc + x.length; - }, 0); + var len = 0; + for (var i = 0; i < u8a.length; ++i) + len += u8a[i].length; var out = new Uint8Array(len); var off = 0; - u8a.forEach(function(u8) { - out.set(u8, off); - off += u8.length; - }); + for (i = 0; i < u8a.length; ++i) { + var u8 = u8a[i], L = u8.length; + if (L < 250) { + for (var j = 0; j < L; ++j) + out[off++] = u8[j]; + } else { + out.set(u8, off); + off += L; + } + } return out; } function popcnt(x) { @@ -73,7 +66,7 @@ function writeDecimal128LE(buf, offset, value) { buf[offset + 15] |= value >= 0 ? 0 : 128; } function parse_varint49(buf, ptr) { - var l = ptr ? ptr[0] : 0; + var l = ptr.l; var usz = buf[l] & 127; varint: if (buf[l++] >= 128) { @@ -99,8 +92,7 @@ function parse_varint49(buf, ptr) { if (buf[l++] < 128) break varint; } - if (ptr) - ptr[0] = l; + ptr.l = l; return usz; } function write_varint49(v) { @@ -141,9 +133,9 @@ function write_varint49(v) { return usz[subarray](0, L); } function parse_packed_varints(buf) { - var ptr = [0]; + var ptr = { l: 0 }; var out = []; - while (ptr[0] < buf.length) + while (ptr.l < buf.length) out.push(parse_varint49(buf, ptr)); return out; } @@ -203,50 +195,49 @@ function varint_to_u64(buf) { return [lo >>> 0, hi >>> 0]; } function parse_shallow(buf) { - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { - var off = ptr[0]; + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { + var off = ptr.l; var num = parse_varint49(buf, ptr); var type = num & 7; - num = Math.floor(num / 8); - var len = 0; - var res; - if (num == 0) - break; + num = num / 8 | 0; + var data; + var l = ptr.l; switch (type) { case 0: { - var l = ptr[0]; - while (buf[ptr[0]++] >= 128) + while (buf[l++] >= 128) ; - res = buf[subarray](l, ptr[0]); + data = buf[subarray](ptr.l, l); + ptr.l = l; + } + break; + case 1: + { + data = buf[subarray](l, l + 8); + ptr.l = l + 8; + } + break; + case 2: + { + var len = parse_varint49(buf, ptr); + data = buf[subarray](ptr.l, ptr.l + len); + ptr.l += len; } break; case 5: - len = 4; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; + { + data = buf[subarray](l, l + 4); + ptr.l = l + 4; + } break; - case 1: - len = 8; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 2: - len = parse_varint49(buf, ptr); - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 3: - case 4: default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { data: res, type: type }; + var v = { data: data, type: type }; if (out[num] == null) - out[num] = [v]; - else - out[num].push(v); + out[num] = []; + out[num].push(v); } return out; } @@ -273,11 +264,11 @@ function mappa(data, cb) { } function parse_iwa_file(buf) { var _a; - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { var len = parse_varint49(buf, ptr); - var ai = parse_shallow(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + var ai = parse_shallow(buf[subarray](ptr.l, ptr.l + len)); + ptr.l += len; var res = { id: varint_to_i32(ai[1][0].data), messages: [] @@ -287,9 +278,9 @@ function parse_iwa_file(buf) { var fl = varint_to_i32(mi[3][0].data); res.messages.push({ meta: mi, - data: buf[subarray](ptr[0], ptr[0] + fl) + data: buf[subarray](ptr.l, ptr.l + fl) }); - ptr[0] += fl; + ptr.l += fl; }); if ((_a = ai[3]) == null ? void 0 : _a[0]) res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; @@ -325,45 +316,46 @@ function write_iwa_file(ias) { function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); - var ptr = [0]; + var ptr = { l: 0 }; var usz = parse_varint49(buf, ptr); var chunks = []; - while (ptr[0] < buf.length) { - var tag = buf[ptr[0]] & 3; + var l = ptr.l; + while (l < buf.length) { + var tag = buf[l] & 3; if (tag == 0) { - var len = buf[ptr[0]++] >> 2; + var len = buf[l++] >> 2; if (len < 60) ++len; else { var c = len - 59; - len = buf[ptr[0]]; + len = buf[l]; if (c > 1) - len |= buf[ptr[0] + 1] << 8; + len |= buf[l + 1] << 8; if (c > 2) - len |= buf[ptr[0] + 2] << 16; + len |= buf[l + 2] << 16; if (c > 3) - len |= buf[ptr[0] + 3] << 24; + len |= buf[l + 3] << 24; len >>>= 0; len++; - ptr[0] += c; + l += c; } - chunks.push(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + chunks.push(buf[subarray](l, l + len)); + l += len; continue; } else { var offset = 0, length = 0; if (tag == 1) { - length = (buf[ptr[0]] >> 2 & 7) + 4; - offset = (buf[ptr[0]++] & 224) << 3; - offset |= buf[ptr[0]++]; + length = (buf[l] >> 2 & 7) + 4; + offset = (buf[l++] & 224) << 3; + offset |= buf[l++]; } else { - length = (buf[ptr[0]++] >> 2) + 1; + length = (buf[l++] >> 2) + 1; if (tag == 2) { - offset = buf[ptr[0]] | buf[ptr[0] + 1] << 8; - ptr[0] += 2; + offset = buf[l] | buf[l + 1] << 8; + l += 2; } else { - offset = (buf[ptr[0]] | buf[ptr[0] + 1] << 8 | buf[ptr[0] + 2] << 16 | buf[ptr[0] + 3] << 24) >>> 0; - ptr[0] += 4; + offset = (buf[l] | buf[l + 1] << 8 | buf[l + 2] << 16 | buf[l + 3] << 24) >>> 0; + l += 4; } } if (offset == 0) @@ -395,16 +387,15 @@ function parse_snappy_chunk(type, buf) { if (length) chunks.push(chunks[j][subarray](0, length)); } - if (chunks.length > 100) + if (chunks.length > 25) chunks = [u8concat(chunks)]; } } - if (chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0) != usz) - throw new Error("Unexpected length: ".concat(chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0), " != ").concat(usz)); + var clen = 0; + for (var u8i = 0; u8i < chunks.length; ++u8i) + clen += chunks[u8i].length; + if (clen != usz) + throw new Error("Unexpected length: ".concat(clen, " != ").concat(usz)); return chunks; } function decompress_iwa_file(buf) { @@ -421,7 +412,7 @@ function decompress_iwa_file(buf) { } if (l !== buf.length) throw new Error("data is not a valid framed stream!"); - return u8concat(out); + return out.length == 1 ? out[0] : u8concat(out); } function compress_iwa_file(buf) { var out = []; @@ -468,12 +459,12 @@ function numbers_format_cell(cell, t, flags, ofmt, nfmt) { var fmt = ver >= 5 ? nfmt : ofmt; dur: if (flags & (ver > 4 ? 8 : 4) && cell.t == "n" && ctype == 7) { - var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? parse_varint49(fmt[7][0].data) : -1; + var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? varint_to_i32(fmt[7][0].data) : -1; if (dstyle == -1) break dur; - var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? parse_varint49(fmt[15][0].data) : -1; - var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? parse_varint49(fmt[16][0].data) : -1; - var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? parse_varint49(fmt[40][0].data) : -1; + var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? varint_to_i32(fmt[15][0].data) : -1; + var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? varint_to_i32(fmt[16][0].data) : -1; + var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? varint_to_i32(fmt[40][0].data) : -1; var d = cell.v, dd = d; autodur: if (auto) { @@ -801,7 +792,7 @@ function parse_cell_storage(buf, lut) { } function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); - return parse_varint49(pb[1][0].data); + return varint_to_i32(pb[1][0].data); } function write_TSP_Reference(idx) { return write_shallow([ @@ -932,7 +923,7 @@ function parse_TST_TableModelArchive(M, root, ws) { if (range.e.c < 0) throw new Error("Invalid col varint ".concat(pb[7][0].data)); ws["!ref"] = encode_range(range); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, dws = ws; var store = parse_shallow(pb[4][0].data); var lut = numbers_lut_new(); if ((_a = store[4]) == null ? void 0 : _a[0]) @@ -957,12 +948,11 @@ function parse_TST_TableModelArchive(M, root, ws) { var res = parse_cell_storage(buf, lut); if (res) { if (dense) { - if (!ws[_R + R]) - ws[_R + R] = []; - ws[_R + R][C] = res; + if (!dws["!data"][_R + R]) + dws["!data"][_R + R] = []; + dws["!data"][_R + R][C] = res; } else { - var addr = encode_cell({ r: _R + R, c: C }); - ws[addr] = res; + ws[encode_col(C) + encode_row(_R + R)] = res; } } }); @@ -989,12 +979,9 @@ function parse_TST_TableModelArchive(M, root, ws) { } function parse_TST_TableInfoArchive(M, root, opts) { var pb = parse_shallow(root.data); - var out; - if (!(opts == null ? void 0 : opts.dense)) - out = { "!ref": "A1" }; - else - out = []; - out["!ref"] = "A1"; + var out = { "!ref": "A1" }; + if (opts == null ? void 0 : opts.dense) + out["!data"] = []; var tableref = M[parse_TSP_Reference(pb[2][0].data)]; var mtype = varint_to_i32(tableref[0].meta[1][0].data); if (mtype != 6001) @@ -1211,26 +1198,20 @@ function build_numbers_deps(cfb) { dependents[packet.id] = { deps: [], location: fp, type: varint_to_i32(packet.messages[0].meta[1][0].data) }; }); }); - indices.sort(function(x, y) { - return x - y; - }); - var indices_varint = indices.filter(function(x) { - return x > 1; - }).map(function(x) { - return [x, write_varint49(x)]; - }); cfb.FileIndex.forEach(function(fi) { if (!fi.name.match(/\.iwa/)) return; if (fi.name.match(/OperationStorage/)) return; parse_iwa_file(decompress_iwa_file(fi.content)).forEach(function(ia) { - indices_varint.forEach(function(ivi) { - if (ia.messages.some(function(mess) { - return varint_to_i32(mess.meta[1][0].data) != 11006 && u8contains(mess.data, ivi[1]); - })) { - dependents[ivi[0]].deps.push(ia.id); - } + ia.messages.forEach(function(mess) { + [5, 6].forEach(function(f) { + if (!mess.meta[f]) + return; + mess.meta[f].forEach(function(x) { + dependents[ia.id].deps.push(varint_to_i32(x.data)); + }); + }); }); }); }); @@ -1479,7 +1460,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a3, _b2; var mm = parse_shallow(m.data); @@ -1542,7 +1523,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a2, _b2; var mm = parse_shallow(m.data); @@ -1602,7 +1583,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a2, _b2; var mm = parse_shallow(m.data); @@ -1714,16 +1695,16 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { var metadata = numbers_iwa_find(cfb, deps, 2); var mlist = parse_shallow(metadata.messages[0].data); var mlst = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) == tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) == tileref; }); - return (mlst == null ? void 0 : mlst.length) ? parse_varint49(parse_shallow(mlst[0].data)[12][0].data) : 0; + return (mlst == null ? void 0 : mlst.length) ? varint_to_i32(parse_shallow(mlst[0].data)[12][0].data) : 0; }(); { CFB.utils.cfb_del(cfb, deps[tileref].location); numbers_iwa_doit(cfb, deps, 2, function(ai) { var mlist = parse_shallow(ai.messages[0].data); mlist[3] = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); var parentidx = mlist[3].findIndex(function(m) { var _a, _b; @@ -1738,7 +1719,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { if (!parent[6]) parent[6] = []; parent[6] = parent[6].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); mlist[3][parentidx].data = write_shallow(parent); ai.messages[0].data = write_shallow(mlist); @@ -1798,7 +1779,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { [], [{ type: 0, data: write_varint49(save_token) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a, _b; var mm = parse_shallow(m.data); diff --git a/bits/90_utils.js b/bits/90_utils.js index c7df543..14e1353 100644 --- a/bits/90_utils.js +++ b/bits/90_utils.js @@ -4,17 +4,17 @@ type MJRObject = { isempty: boolean; }; */ -function make_json_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, header/*:number*/, hdr/*:Array*/, dense/*:boolean*/, o/*:Sheet2JSONOpts*/)/*:MJRObject*/ { +function make_json_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, header/*:number*/, hdr/*:Array*/, o/*:Sheet2JSONOpts*/)/*:MJRObject*/ { var rr = encode_row(R); var defval = o.defval, raw = o.raw || !Object.prototype.hasOwnProperty.call(o, "raw"); - var isempty = true; + var isempty = true, dense = (sheet["!data"] != null); var row/*:any*/ = (header === 1) ? [] : {}; if(header !== 1) { if(Object.defineProperty) try { Object.defineProperty(row, '__rowNum__', {value:R, enumerable:false}); } catch(e) { row.__rowNum__ = R; } else row.__rowNum__ = R; } - if(!dense || sheet[R]) for (var C = r.s.c; C <= r.e.c; ++C) { - var val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + if(!dense || sheet["!data"][R]) for (var C = r.s.c; C <= r.e.c; ++C) { + var val = dense ? (sheet["!data"][R]||[])[C] : sheet[cols[C] + rr]; if(val === undefined || val.t === undefined) { if(defval === undefined) continue; if(hdr[C] != null) { row[hdr[C]] = defval; } @@ -63,16 +63,16 @@ function sheet_to_json(sheet/*:Worksheet*/, opts/*:?Sheet2JSONOpts*/) { var cols/*:Array*/ = []; var out/*:Array*/ = []; var outi = 0, counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -91,7 +91,7 @@ function sheet_to_json(sheet/*:Worksheet*/, opts/*:?Sheet2JSONOpts*/) { } for (R = r.s.r + offset; R <= r.e.r; ++R) { if ((rowinfo[R]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) out[outi++] = row.row; } out.length = outi; @@ -102,9 +102,11 @@ var qreg = /"/g; function make_csv_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, fs/*:number*/, rs/*:number*/, FS/*:string*/, o/*:Sheet2CSVOpts*/)/*:?string*/ { var isempty = true; var row/*:Array*/ = [], txt = "", rr = encode_row(R); + var dense = sheet["!data"] != null; + var datarow = dense && sheet["!data"][R] || []; for(var C = r.s.c; C <= r.e.c; ++C) { if (!cols[C]) continue; - var val = o.dense ? (sheet[R]||[])[C]: sheet[cols[C] + rr]; + var val = dense ? datarow[C]: sheet[cols[C] + rr]; if(val == null) txt = ""; else if(val.v != null) { isempty = false; @@ -131,7 +133,6 @@ function sheet_to_csv(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/)/*:string*/ { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row = "", cols/*:Array*/ = []; - o.dense = Array.isArray(sheet); var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -143,7 +144,6 @@ function sheet_to_csv(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/)/*:string*/ { if(o.strip) row = row.replace(endregex,""); if(row || (o.blankrows !== false)) out.push((w++ ? RS : "") + row); } - delete o.dense; return out.join(""); } @@ -160,13 +160,13 @@ function sheet_to_formulae(sheet/*:Worksheet*/)/*:Array*/ { if(sheet == null || sheet["!ref"] == null) return []; var r = safe_decode_range(sheet['!ref']), rr = "", cols/*:Array*/ = [], C; var cmds/*:Array*/ = []; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; for(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C); for(var R = r.s.r; R <= r.e.r; ++R) { rr = encode_row(R); for(C = r.s.c; C <= r.e.c; ++C) { y = cols[C] + rr; - x = dense ? (sheet[R]||[])[C] : sheet[y]; + x = dense ? (sheet["!data"][R]||[])[C] : sheet[y]; val = ""; if(x === undefined) continue; else if(x.F != null) { @@ -191,10 +191,11 @@ function sheet_to_formulae(sheet/*:Worksheet*/)/*:Array*/ { function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet*/ { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; var offset = +!o.skipHeader; - var ws/*:Worksheet*/ = _ws || (dense ? ([]/*:any*/) : ({}/*:any*/)); + var ws/*:Worksheet*/ = _ws || ({}); + if(!_ws && dense) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -215,17 +216,18 @@ function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet var hdr/*:Array*/ = o.header || [], C = 0; var ROW = []; js.forEach(function (JS, R/*:number*/) { - if(dense && !ws[_R + R + offset]) ws[_R + R + offset] = []; - if(dense) ROW = ws[_R + R + offset]; + if(dense && !ws["!data"][_R + R + offset]) ws["!data"][_R + R + offset] = []; + if(dense) ROW = ws["!data"][_R + R + offset]; keys(JS).forEach(function(k) { if((C=hdr.indexOf(k)) == -1) hdr[C=hdr.length] = k; var v = JS[k]; var t = 'z'; var z = ""; - var ref = dense ? "" : encode_cell({c:_C + C,r:_R + R + offset}); + var ref = dense ? "" : (encode_col(_C + C) + encode_row(_R + R + offset)); var cell/*:Cell*/ = dense ? ROW[_C + C] : ws[ref]; if(v && typeof v === 'object' && !(v instanceof Date)){ - ws[ref] = v; + if(dense) ROW[_C + C] = v; + else ws[ref] = v; } else { if(typeof v == 'number') t = 'n'; else if(typeof v == 'boolean') t = 'b'; @@ -250,9 +252,9 @@ function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet }); range.e.c = Math.max(range.e.c, _C + hdr.length - 1); var __R = encode_row(_R); - if(dense && !ws[_R]) ws[_R] = []; + if(dense && !ws["!data"][_R]) ws["!data"][_R] = []; if(offset) for(C = 0; C < hdr.length; ++C) { - if(dense) ws[_R][C + _C] = {t:'s', v:hdr[C]}; + if(dense) ws["!data"][_R][C + _C] = {t:'s', v:hdr[C]}; else ws[encode_col(C + _C) + __R] = {t:'s', v:hdr[C]}; } ws['!ref'] = encode_range(range); @@ -264,18 +266,17 @@ function json_to_sheet(js/*:Array*/, opts)/*:Worksheet*/ { return sheet_add function ws_get_cell_stub(ws/*:Worksheet*/, R, C/*:?number*/)/*:Cell*/ { /* A1 cell address */ if(typeof R == "string") { - /* dense */ - if(Array.isArray(ws)) { + if(ws["!data"] != null) { var RC = decode_cell(R); - if(!ws[RC.r]) ws[RC.r] = []; - return ws[RC.r][RC.c] || (ws[RC.r][RC.c] = {t:'z'}); + if(!ws["!data"][RC.r]) ws["!data"][RC.r] = []; + return ws["!data"][RC.r][RC.c] || (ws["!data"][RC.r][RC.c] = {t:'z'}); } return ws[R] || (ws[R] = {t:'z'}); } /* cell address object */ if(typeof R != "number") return ws_get_cell_stub(ws, encode_cell(R)); /* R and C are 0-based indices */ - return ws_get_cell_stub(ws, encode_cell({r:R,c:C||0})); + return ws_get_cell_stub(ws, encode_col(C||0) + encode_row(R)); } /* find sheet index for given name / validate index */ diff --git a/bits/97_node.js b/bits/97_node.js index 8df8721..d7ff2e7 100644 --- a/bits/97_node.js +++ b/bits/97_node.js @@ -10,7 +10,6 @@ function write_csv_stream(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/) { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row/*:?string*/ = "", cols/*:Array*/ = []; - o.dense = Array.isArray(sheet); var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -40,7 +39,6 @@ function write_html_stream(ws/*:Worksheet*/, opts/*:?Sheet2HTMLOpts*/) { var footer = o.footer != null ? o.footer : HTML_END; stream.push(header); var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); stream.push(make_html_preamble(ws, r, o)); var R = r.s.r; var end = false; @@ -78,16 +76,16 @@ function write_json_stream(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/) { var rr = encode_row(r.s.r); var cols/*:Array*/ = []; var counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -108,7 +106,7 @@ function write_json_stream(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/) { stream._read = function() { while(R <= r.e.r) { if ((rowinfo[R-1]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); ++R; if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) { stream.push(row.row); diff --git a/dist/xlsx.core.min.js b/dist/xlsx.core.min.js index e39ee36..cff601b 100644 --- a/dist/xlsx.core.min.js +++ b/dist/xlsx.core.min.js @@ -1,16 +1,17 @@ /*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */ -var XLSX={};function make_xlsx_lib(e){e.version="0.18.12";var r=1200,t=1252;var a;var n=[874,932,936,949,950,1250,1251,1252,1253,1254,1255,1256,1257,1258,1e4];var i={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 s=function(e){if(n.indexOf(e)==-1)return;t=i[0]=e};function f(){s(1252)}var l=function(e){r=e;s(e)};function o(){l(1200);f()}function c(e){var r=[];for(var t=0,a=e.length;t>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t)+(e.charCodeAt(2*t+1)<<8));return r.join("")}function h(e){var r=[];for(var t=0;t>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t+1)+(e.charCodeAt(2*t)<<8));return r.join("")}var d=function(e){var r=e.charCodeAt(0),t=e.charCodeAt(1);if(r==255&&t==254)return u(e.slice(2));if(r==254&&t==255)return h(e.slice(2));if(r==65279)return e.slice(1);return e};var v=function xk(e){return String.fromCharCode(e)};var p=function Ck(e){return String.fromCharCode(e)};function m(e){a=e;l=function(e){r=e;s(e)};d=function(e){if(e.charCodeAt(0)===255&&e.charCodeAt(1)===254){return a.utils.decode(1200,c(e.slice(2)))}return e};v=function n(e){if(r===1200)return String.fromCharCode(e);return a.utils.decode(r,[e&255,e>>8])[0]};p=function i(e){return a.utils.decode(t,[e])[0]};na()}var b=null;var g=true;var w="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function k(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,l=0;for(var o=0;o>2;a=e.charCodeAt(o++);s=(t&3)<<4|a>>4;n=e.charCodeAt(o++);f=(a&15)<<2|n>>6;l=n&63;if(isNaN(a)){f=l=64}else if(isNaN(n)){l=64}r+=w.charAt(i)+w.charAt(s)+w.charAt(f)+w.charAt(l)}return r}function T(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,l=0;for(var o=0;o255)t=95;i=t>>2;a=e.charCodeAt(o++);if(a>255)a=95;s=(t&3)<<4|a>>4;n=e.charCodeAt(o++);if(n>255)n=95;f=(a&15)<<2|n>>6;l=n&63;if(isNaN(a)){f=l=64}else if(isNaN(n)){l=64}r+=w.charAt(i)+w.charAt(s)+w.charAt(f)+w.charAt(l)}return r}function E(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,l=0;e=e.replace(/^data:([^\/]+\/[^\/]+)?;base64\,/,"").replace(/[^\w\+\/\=]/g,"");for(var o=0;o>4;r+=String.fromCharCode(t);f=w.indexOf(e.charAt(o++));a=(s&15)<<4|f>>2;if(f!==64){r+=String.fromCharCode(a)}l=w.indexOf(e.charAt(o++));n=(f&3)<<6|l;if(l!==64){r+=String.fromCharCode(n)}}return r}var y=function(){return typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node}();var S=function(){if(typeof Buffer!=="undefined"){var e=!Buffer.from;if(!e)try{Buffer.from("foo","utf8")}catch(r){e=true}return e?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer)}return function(){}}();var _=function(){if(typeof Buffer==="undefined")return false;var e=S([65,0]);if(!e)return false;var r=e.toString("utf16le");return r.length==1}();function A(e){if(y)return Buffer.alloc?Buffer.alloc(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function x(e){if(y)return Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var C=function Ok(e){if(y)return S(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function O(e){if(typeof ArrayBuffer==="undefined")return C(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 R(e){if(Array.isArray(e))return e.map(function(e){return String.fromCharCode(e)}).join("");var r=[];for(var t=0;t>6&31;n[t++]=128|s&63}else if(s>=55296&&s<57344){s=(s&1023)+64;var f=e.charCodeAt(++i)&1023;n[t++]=240|s>>8&7;n[t++]=128|s>>2&63;n[t++]=128|f>>6&15|(s&3)<<4;n[t++]=128|f&63}else{n[t++]=224|s>>12&15;n[t++]=128|s>>6&63;n[t++]=128|s&63}if(t>a){r.push(n.slice(0,t));t=0;n=A(65535);a=65530}}r.push(n.slice(0,t));return F(r)}var P=/\u0000/g,L=/[\u0001-\u0006]/g;function M(e){var r="",t=e.length-1;while(t>=0)r+=e.charAt(t--);return r}function U(e,r){var t=""+e;return t.length>=r?t:Sr("0",r-t.length)+t}function B(e,r){var t=""+e;return t.length>=r?t:Sr(" ",r-t.length)+t}function W(e,r){var t=""+e;return t.length>=r?t:t+Sr(" ",r-t.length)}function H(e,r){var t=""+Math.round(e);return t.length>=r?t:Sr("0",r-t.length)+t}function z(e,r){var t=""+e;return t.length>=r?t:Sr("0",r-t.length)+t}var V=Math.pow(2,32);function G(e,r){if(e>V||e<-V)return H(e,r);var t=Math.round(e);return z(t,r)}function j(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)===114&&(e.charCodeAt(r+5)|32)===97&&(e.charCodeAt(r+6)|32)===108}var X=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var Y=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function K(e){if(!e)e={};e[0]="General";e[1]="0";e[2]="0.00";e[3]="#,##0";e[4]="#,##0.00";e[9]="0%";e[10]="0.00%";e[11]="0.00E+00";e[12]="# ?/?";e[13]="# ??/??";e[14]="m/d/yy";e[15]="d-mmm-yy";e[16]="d-mmm";e[17]="mmm-yy";e[18]="h:mm AM/PM";e[19]="h:mm:ss AM/PM";e[20]="h:mm";e[21]="h:mm:ss";e[22]="m/d/yy h:mm";e[37]="#,##0 ;(#,##0)";e[38]="#,##0 ;[Red](#,##0)";e[39]="#,##0.00;(#,##0.00)";e[40]="#,##0.00;[Red](#,##0.00)";e[45]="mm:ss";e[46]="[h]:mm:ss";e[47]="mmss.0";e[48]="##0.0E+0";e[49]="@";e[56]='"上午/下午 "hh"時"mm"分"ss"秒 "';return e}var Z={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "'};var J={5:37,6:38,7:39,8:40,23:0,24:0,25:0,26:0,27:14,28:14,29:14,30:14,31:14,50:14,51:14,52:14,53:14,54:14,55:14,56:14,57:14,58:14,59:1,60:2,61:3,62:4,67:9,68:10,69:12,70:13,71:14,72:14,73:15,74:16,75:17,76:20,77:21,78:22,79:45,80:46,81:47,82:0};var q={5:'"$"#,##0_);\\("$"#,##0\\)',63:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',41:'_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)'};function Q(e,r,t){var a=e<0?-1:1;var n=e*a;var i=0,s=1,f=0;var l=1,o=0,c=0;var u=Math.floor(n);while(or){if(o>r){c=l;f=i}else{c=o;f=s}}if(!t)return[0,a*f,c];var h=Math.floor(a*f/c);return[h,a*f-h*c,c]}function ee(e,r,t){if(e>2958465||e<0)return null;var a=e|0,n=Math.floor(86400*(e-a)),i=0;var s=[];var f={D:a,T:n,u:86400*(e-a)-n,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(f.u)<1e-6)f.u=0;if(r&&r.date1904)a+=1462;if(f.u>.9999){f.u=0;if(++n==86400){f.T=n=0;++a;++f.D}}if(a===60){s=t?[1317,10,29]:[1900,2,29];i=3}else if(a===0){s=t?[1317,8,29]:[1900,1,0];i=6}else{if(a>60)--a;var l=new Date(1900,0,1);l.setDate(l.getDate()+a-1);s=[l.getFullYear(),l.getMonth()+1,l.getDate()];i=l.getDay();if(a<60)i=(i+6)%7;if(t)i=ue(l,s)}f.y=s[0];f.m=s[1];f.d=s[2];f.S=n%60;n=Math.floor(n/60);f.M=n%60;n=Math.floor(n/60);f.H=n;f.q=i;return f}var re=new Date(1899,11,31,0,0,0);var te=re.getTime();var ae=new Date(1900,2,1,0,0,0);function ne(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=ae)t+=24*60*60*1e3;return(t-(te+(e.getTimezoneOffset()-re.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function ie(e){return e.indexOf(".")==-1?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function se(e){if(e.indexOf("E")==-1)return e;return e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}function fe(e){var r=e<0?12:11;var t=ie(e.toFixed(12));if(t.length<=r)return t;t=e.toPrecision(10);if(t.length<=r)return t;return e.toExponential(5)}function le(e){var r=ie(e.toFixed(11));return r.length>(e<0?12:11)||r==="0"||r==="-0"?e.toPrecision(6):r}function oe(e){var r=Math.floor(Math.log(Math.abs(e))*Math.LOG10E),t;if(r>=-4&&r<=-1)t=e.toPrecision(10+r);else if(Math.abs(r)<=9)t=fe(e);else if(r===10)t=e.toFixed(10).substr(0,12);else t=le(e);return ie(se(t.toUpperCase()))}function ce(e,r){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):oe(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return ze(14,ne(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}function ue(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function he(e,r,t,a){var n="",i=0,s=0,f=t.y,l,o=0;switch(e){case 98:f=t.y+543;case 121:switch(r.length){case 1:;case 2:l=f%100;o=2;break;default:l=f%1e4;o=4;break;}break;case 109:switch(r.length){case 1:;case 2:l=t.m;o=r.length;break;case 3:return Y[t.m-1][1];case 5:return Y[t.m-1][0];default:return Y[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:l=t.d;o=r.length;break;case 3:return X[t.q][0];default:return X[t.q][1];}break;case 104:switch(r.length){case 1:;case 2:l=1+(t.H+11)%12;o=r.length;break;default:throw"bad hour format: "+r;}break;case 72:switch(r.length){case 1:;case 2:l=t.H;o=r.length;break;default:throw"bad hour format: "+r;}break;case 77:switch(r.length){case 1:;case 2:l=t.M;o=r.length;break;default:throw"bad minute format: "+r;}break;case 115:if(r!="s"&&r!="ss"&&r!=".0"&&r!=".00"&&r!=".000")throw"bad second format: "+r;if(t.u===0&&(r=="s"||r=="ss"))return U(t.S,r.length);if(a>=2)s=a===3?1e3:100;else s=a===1?10:1;i=Math.round(s*(t.S+t.u));if(i>=60*s)i=0;if(r==="s")return i===0?"0":""+i/s;n=U(i,2+a);if(r==="ss")return n.substr(0,2);return"."+n.substr(2,r.length-1);case 90:switch(r){case"[h]":;case"[hh]":l=t.D*24+t.H;break;case"[m]":;case"[mm]":l=(t.D*24+t.H)*60+t.M;break;case"[s]":;case"[ss]":l=((t.D*24+t.H)*60+t.M)*60+Math.round(t.S+t.u);break;default:throw"bad abstime format: "+r;}o=r.length===3?1:2;break;case 101:l=f;o=1;break;}var c=o>0?U(l,o):"";return c}function de(e){var r=3;if(e.length<=r)return e;var t=e.length%r,a=e.substr(0,t);for(;t!=e.length;t+=r)a+=(a.length>0?",":"")+e.substr(t,r);return a}var ve=/%/g;function pe(e,r,t){var a=r.replace(ve,""),n=r.length-a.length;return De(e,a,t*Math.pow(10,2*n))+Sr("%",n)}function me(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return De(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function be(e,r){var t;var a=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\+0$/)){if(r==0)return"0.0E+0";else if(r<0)return"-"+be(e,-r);var n=e.indexOf(".");if(n===-1)n=e.indexOf("E");var i=Math.floor(Math.log(r)*Math.LOG10E)%n;if(i<0)i+=n;t=(r/Math.pow(10,i)).toPrecision(a+1+(n+i)%n);if(t.indexOf("e")===-1){var s=Math.floor(Math.log(r)*Math.LOG10E);if(t.indexOf(".")===-1)t=t.charAt(0)+"."+t.substr(1)+"E+"+(s-t.length+i);else t+="E+"+(s-i);while(t.substr(0,2)==="0."){t=t.charAt(0)+t.substr(2,n)+"."+t.substr(2+n);t=t.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}t=t.replace(/\+-/,"-")}t=t.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function(e,r,t,a){return r+t+a.substr(0,(n+i)%n)+"."+a.substr(i)+"E"})}else t=r.toExponential(a);if(e.match(/E\+00$/)&&t.match(/e[+-]\d$/))t=t.substr(0,t.length-1)+"0"+t.charAt(t.length-1);if(e.match(/E\-/)&&t.match(/e\+/))t=t.replace(/e\+/,"e");return t.replace("e","E")}var ge=/# (\?+)( ?)\/( ?)(\d+)/;function we(e,r,t){var a=parseInt(e[4],10),n=Math.round(r*a),i=Math.floor(n/a);var s=n-i*a,f=a;return t+(i===0?"":""+i)+" "+(s===0?Sr(" ",e[1].length+1+e[4].length):B(s,e[1].length)+e[2]+"/"+e[3]+U(f,e[4].length))}function ke(e,r,t){return t+(r===0?"":""+r)+Sr(" ",e[1].length+2+e[4].length)}var Te=/^#*0*\.([0#]+)/;var Ee=/\).*[0#]/;var ye=/\(###\) ###\\?-####/;function Se(e){var r="",t;for(var a=0;a!=e.length;++a)switch(t=e.charCodeAt(a)){case 35:break;case 63:r+=" ";break;case 48:r+="0";break;default:r+=String.fromCharCode(t);}return r}function _e(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function Ae(e,r){var t=e-Math.floor(e),a=Math.pow(10,r);if(r<(""+Math.round(t*a)).length)return 0;return Math.round(t*a)}function xe(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function Ce(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function Oe(e,r,t){if(e.charCodeAt(0)===40&&!r.match(Ee)){var a=r.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(t>=0)return Oe("n",a,t);return"("+Oe("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return me(e,r,t);if(r.indexOf("%")!==-1)return pe(e,r,t);if(r.indexOf("E")!==-1)return be(r,t);if(r.charCodeAt(0)===36)return"$"+Oe(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,f,l=Math.abs(t),o=t<0?"-":"";if(r.match(/^00+$/))return o+G(l,r.length);if(r.match(/^[#?]+$/)){n=G(t,0);if(n==="0")n="";return n.length>r.length?n:Se(r.substr(0,r.length-n.length))+n}if(i=r.match(ge))return we(i,l,o);if(r.match(/^#+0+$/))return o+G(l,r.length-r.indexOf("0"));if(i=r.match(Te)){n=_e(t,i[1].length).replace(/^([^\.]+)$/,"$1."+Se(i[1])).replace(/\.$/,"."+Se(i[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+Sr("0",Se(i[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(i=r.match(/^(0*)\.(#*)$/)){return o+_e(l,i[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".")}if(i=r.match(/^#{1,3},##0(\.?)$/))return o+de(G(l,0));if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Oe(e,r,-t):de(""+(Math.floor(t)+xe(t,i[1].length)))+"."+U(Ae(t,i[1].length),i[1].length)}if(i=r.match(/^#,#*,#0/))return Oe(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=M(Oe(e,r.replace(/[\\-]/g,""),t));s=0;return M(M(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return s=0)return Fe("n",a,t);return"("+Fe("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return Re(e,r,t);if(r.indexOf("%")!==-1)return Ne(e,r,t);if(r.indexOf("E")!==-1)return Ie(r,t);if(r.charCodeAt(0)===36)return"$"+Fe(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,f,l=Math.abs(t),o=t<0?"-":"";if(r.match(/^00+$/))return o+U(l,r.length);if(r.match(/^[#?]+$/)){n=""+t;if(t===0)n="";return n.length>r.length?n:Se(r.substr(0,r.length-n.length))+n}if(i=r.match(ge))return ke(i,l,o);if(r.match(/^#+0+$/))return o+U(l,r.length-r.indexOf("0"));if(i=r.match(Te)){n=(""+t).replace(/^([^\.]+)$/,"$1."+Se(i[1])).replace(/\.$/,"."+Se(i[1]));n=n.replace(/\.(\d*)$/,function(e,r){return"."+r+Sr("0",Se(i[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(i=r.match(/^(0*)\.(#*)$/)){return o+(""+l).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".")}if(i=r.match(/^#{1,3},##0(\.?)$/))return o+de(""+l);if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Fe(e,r,-t):de(""+t)+"."+Sr("0",i[1].length)}if(i=r.match(/^#,#*,#0/))return Fe(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=M(Fe(e,r.replace(/[\\-]/g,""),t));s=0;return M(M(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return s-1||t=="\\"&&e.charAt(r+1)=="-"&&"0#".indexOf(e.charAt(r+2))>-1)){}break;case"?":while(e.charAt(++r)===t){}break;case"*":++r;if(e.charAt(r)==" "||e.charAt(r)=="*")++r;break;case"(":;case")":++r;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":while(r-1){}break;case" ":++r;break;default:++r;break;}}return false}function Ue(e,r,t,a){var n=[],i="",s=0,f="",l="t",o,c,u;var h="H";while(s=12?e.charAt(s+2):f;p.t="T";h="h";s+=3}else if(e.substr(s,5).toUpperCase()==="AM/PM"){if(o!=null)p.v=o.H>=12?"PM":"AM";p.t="T";s+=5;h="h"}else if(e.substr(s,5).toUpperCase()==="上午/下午"){if(o!=null)p.v=o.H>=12?"下午":"上午";p.t="T";s+=5;h="h"}else{p.t="t";++s}if(o==null&&p.t==="T")return"";n[n.length]=p;l=f;break;case"[":i=f;while(e.charAt(s++)!=="]"&&s-1){i=(i.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!Me(e))n[n.length]={t:"t",v:i}}break;case".":if(o!=null){i=f;while(++s-1)i+=f;n[n.length]={t:"n",v:i};break;case"?":i=f;while(e.charAt(++s)===f)i+=f;n[n.length]={t:f,v:i};l=f;break;case"*":++s;if(e.charAt(s)==" "||e.charAt(s)=="*")++s;break;case"(":;case")":n[n.length]={t:a===1?"t":f,v:f};++s;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":i=f;while(s-1)i+=e.charAt(s);n[n.length]={t:"D",v:i};break;case" ":n[n.length]={t:f,v:f};++s;break;case"$":n[n.length]={t:"t",v:"$"};++s;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxzP".indexOf(f)===-1)throw new Error("unrecognized character "+f+" in "+e);n[n.length]={t:"t",v:f};++s;break;}}var m=0,b=0,g;for(s=n.length-1,l="t";s>=0;--s){switch(n[s].t){case"h":;case"H":n[s].t=h;l="h";if(m<1)m=1;break;case"s":if(g=n[s].v.match(/\.0+$/))b=Math.max(b,g[0].length-1);if(m<3)m=3;case"d":;case"y":;case"M":;case"e":l=n[s].t;break;case"m":if(l==="s"){n[s].t="M";if(m<2)m=2}break;case"X":break;case"Z":if(m<1&&n[s].v.match(/[Hh]/))m=1;if(m<2&&n[s].v.match(/[Mm]/))m=2;if(m<3&&n[s].v.match(/[Ss]/))m=3;}}switch(m){case 0:break;case 1:if(o.u>=.5){o.u=0;++o.S}if(o.S>=60){o.S=0;++o.M}if(o.M>=60){o.M=0;++o.H}break;case 2:if(o.u>=.5){o.u=0;++o.S}if(o.S>=60){o.S=0;++o.M}break;}var w="",k;for(s=0;s0){if(w.charCodeAt(0)==40){E=r<0&&w.charCodeAt(0)===45?-r:r;y=De("n",w,E)}else{E=r<0&&a>1?-r:r;y=De("n",w,E);if(E<0&&n[0]&&n[0].t=="t"){y=y.substr(1);n[0].v="-"+n[0].v}}k=y.length-1;var S=n.length;for(s=0;s-1){S=s;break}var _=n.length;if(S===n.length&&y.indexOf("E")===-1){for(s=n.length-1;s>=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;if(k>=n[s].v.length-1){k-=n[s].v.length;n[s].v=y.substr(k+1,n[s].v.length)}else if(k<0)n[s].v="";else{n[s].v=y.substr(0,k+1);k=-1}n[s].t="t";_=s}if(k>=0&&_=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;c=n[s].v.indexOf(".")>-1&&s===S?n[s].v.indexOf(".")-1:n[s].v.length-1;T=n[s].v.substr(c+1);for(;c>=0;--c){if(k>=0&&(n[s].v.charAt(c)==="0"||n[s].v.charAt(c)==="#"))T=y.charAt(k--)+T}n[s].v=T;n[s].t="t";_=s}if(k>=0&&_-1&&s===S?n[s].v.indexOf(".")+1:0;T=n[s].v.substr(0,c);for(;c-1){E=a>1&&r<0&&s>0&&n[s-1].v==="-"?-r:r;n[s].v=De(n[s].t,n[s].v,E);n[s].t="t"}var A="";for(s=0;s!==n.length;++s)if(n[s]!=null)A+=n[s].v;return A}var Be=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function We(e,r){if(r==null)return false;var t=parseFloat(r[2]);switch(r[1]){case"=":if(e==t)return true;break;case">":if(e>t)return true;break;case"<":if(e":if(e!=t)return true;break;case">=":if(e>=t)return true;break;case"<=":if(e<=t)return true;break;}return false}function He(e,r){var t=Pe(e);var a=t.length,n=t[a-1].indexOf("@");if(a<4&&n>-1)--a;if(t.length>4)throw new Error("cannot find right format for |"+t.join("|")+"|");if(typeof r!=="number")return[4,t.length===4||n>-1?t[t.length-1]:"@"];switch(t.length){case 1:t=n>-1?["General","General","General",t[0]]:[t[0],t[0],t[0],"@"];break;case 2:t=n>-1?[t[0],t[0],t[0],t[1]]:[t[0],t[1],t[0],"@"];break;case 3:t=n>-1?[t[0],t[1],t[0],t[2]]:[t[0],t[1],t[2],"@"];break;case 4:break;}var i=r>0?t[0]:r<0?t[1]:t[2];if(t[0].indexOf("[")===-1&&t[1].indexOf("[")===-1)return[a,i];if(t[0].match(/\[[=<>]/)!=null||t[1].match(/\[[=<>]/)!=null){var s=t[0].match(Be);var f=t[1].match(Be);return We(r,s)?[a,t[0]]:We(r,f)?[a,t[1]]:[a,t[s!=null&&f!=null?2:1]]}return[a,i]}function ze(e,r,t){if(t==null)t={};var a="";switch(typeof e){case"string":if(e=="m/d/yy"&&t.dateNF)a=t.dateNF;else a=e;break;case"number":if(e==14&&t.dateNF)a=t.dateNF;else a=(t.table!=null?t.table:Z)[e];if(a==null)a=t.table&&t.table[J[e]]||Z[J[e]];if(a==null)a=q[e]||"General";break;}if(j(a,0))return ce(r,t);if(r instanceof Date)r=ne(r,t.date1904);var n=He(a,r);if(j(n[1]))return ce(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return Ue(n[1],r,t,n[0])}function Ve(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(Z[t]==undefined){if(r<0)r=t;continue}if(Z[t]==e){r=t;break}}if(r<0)r=391}Z[r]=e;return r}function Ge(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)Ve(e[r],r)}function $e(){Z=K()}var je={format:ze,load:Ve,_table:Z,load_table:Ge,parse_date_code:ee,is_date:Me,get_table:function Rk(){return je._table=Z}};var Xe={5:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',23:"General",24:"General",25:"General",26:"General",27:"m/d/yy",28:"m/d/yy",29:"m/d/yy",30:"m/d/yy",31:"m/d/yy",32:"h:mm:ss",33:"h:mm:ss",34:"h:mm:ss",35:"h:mm:ss",36:"m/d/yy",41:'_(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* (#,##0);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)',50:"m/d/yy",51:"m/d/yy",52:"m/d/yy",53:"m/d/yy",54:"m/d/yy",55:"m/d/yy",56:"m/d/yy",57:"m/d/yy",58:"m/d/yy",59:"0",60:"0.00",61:"#,##0",62:"#,##0.00",63:'"$"#,##0_);\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',67:"0%",68:"0.00%",69:"# ?/?",70:"# ??/??",71:"m/d/yy",72:"m/d/yy",73:"d-mmm-yy",74:"d-mmm",75:"mmm-yy",76:"h:mm",77:"h:mm:ss",78:"m/d/yy h:mm",79:"mm:ss",80:"[h]:mm:ss",81:"mmss.0"};var Ye=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function Ke(e){var r=typeof e=="number"?Z[e]:e;r=r.replace(Ye,"(\\d+)");return new RegExp("^"+r+"$")}function Ze(e,r,t){var a=-1,n=-1,i=-1,s=-1,f=-1,l=-1;(r.match(Ye)||[]).forEach(function(e,r){var o=parseInt(t[r+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=o;break;case"d":i=o;break;case"h":s=o;break;case"s":l=o;break;case"m":if(s>=0)f=o;else n=o;break;}});if(l>=0&&f==-1&&n>=0){f=n;n=-1}var o=(""+(a>=0?a:(new Date).getFullYear())).slice(-4)+"-"+("00"+(n>=1?n:1)).slice(-2)+"-"+("00"+(i>=1?i:1)).slice(-2);if(o.length==7)o="0"+o;if(o.length==8)o="20"+o;var c=("00"+(s>=0?s:0)).slice(-2)+":"+("00"+(f>=0?f:0)).slice(-2)+":"+("00"+(l>=0?l:0)).slice(-2);if(s==-1&&f==-1&&l==-1)return o;if(a==-1&&n==-1&&i==-1)return c;return o+"T"+c}var Je={"d.m":"d\\.m"};function qe(e,r){return Ve(Je[e]||e,r)}var Qe=function(){var e={};e.version="1.2.0";function r(){var e=0,r=new Array(256);for(var t=0;t!=256;++t){e=t;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;r[t]=e}return typeof Int32Array!=="undefined"?new Int32Array(r):r; -}var t=r();function a(e){var r=0,t=0,a=0,n=typeof Int32Array!=="undefined"?new Int32Array(4096):new Array(4096);for(a=0;a!=256;++a)n[a]=e[a];for(a=0;a!=256;++a){t=e[a];for(r=256+a;r<4096;r+=256)t=n[r]=t>>>8^e[t&255]}var i=[];for(a=1;a!=16;++a)i[a-1]=typeof Int32Array!=="undefined"?n.subarray(a*256,a*256+256):n.slice(a*256,a*256+256);return i}var n=a(t);var i=n[0],s=n[1],f=n[2],l=n[3],o=n[4];var c=n[5],u=n[6],h=n[7],d=n[8],v=n[9];var p=n[10],m=n[11],b=n[12],g=n[13],w=n[14];function k(e,r){var a=r^-1;for(var n=0,i=e.length;n>>8^t[(a^e.charCodeAt(n++))&255];return~a}function T(e,r){var a=r^-1,n=e.length-15,k=0;for(;k>8&255]^b[e[k++]^a>>16&255]^m[e[k++]^a>>>24]^p[e[k++]]^v[e[k++]]^d[e[k++]]^h[e[k++]]^u[e[k++]]^c[e[k++]]^o[e[k++]]^l[e[k++]]^f[e[k++]]^s[e[k++]]^i[e[k++]]^t[e[k++]];n+=15;while(k>>8^t[(a^e[k++])&255];return~a}function E(e,r){var a=r^-1;for(var n=0,i=e.length,s=0,f=0;n>>8^t[(a^s)&255]}else if(s<2048){a=a>>>8^t[(a^(192|s>>6&31))&255];a=a>>>8^t[(a^(128|s&63))&255]}else if(s>=55296&&s<57344){s=(s&1023)+64;f=e.charCodeAt(n++)&1023;a=a>>>8^t[(a^(240|s>>8&7))&255];a=a>>>8^t[(a^(128|s>>2&63))&255];a=a>>>8^t[(a^(128|f>>6&15|(s&3)<<4))&255];a=a>>>8^t[(a^(128|f&63))&255]}else{a=a>>>8^t[(a^(224|s>>12&15))&255];a=a>>>8^t[(a^(128|s>>6&63))&255];a=a>>>8^t[(a^(128|s&63))&255]}}return~a}e.table=t;e.bstr=k;e.buf=T;e.str=E;return e}();var er=function Nk(){var e={};e.version="1.2.2";function r(e,r){var t=e.split("/"),a=r.split("/");for(var n=0,i=0,s=Math.min(t.length,a.length);n>>1;e._W(2,t);var a=r.getFullYear()-1980;a=a<<4|r.getMonth()+1;a=a<<5|r.getDate();e._W(2,a)}function i(e){var r=e._R(2)&65535;var t=e._R(2)&65535;var a=new Date;var n=t&31;t>>>=5;var i=t&15;t>>>=4;a.setMilliseconds(0);a.setFullYear(t+1980);a.setMonth(i-1);a.setDate(n);var s=r&31;r>>>=5;var f=r&63;r>>>=6;a.setHours(r);a.setMinutes(f);a.setSeconds(s<<1);return a}function s(e){ba(e,0);var r={};var t=0;while(e.l<=e.length-4){var a=e._R(2);var n=e._R(2),i=e.l+n;var s={};switch(a){case 21589:{t=e._R(1);if(t&1)s.mtime=e._R(4);if(n>5){if(t&2)s.atime=e._R(4);if(t&4)s.ctime=e._R(4)}if(s.mtime)s.mt=new Date(s.mtime*1e3)}break;case 1:{var f=e._R(4),l=e._R(4);s.usz=l*Math.pow(2,32)+f;f=e._R(4);l=e._R(4);s.csz=l*Math.pow(2,32)+f}break;}e.l=i;r[a]=s}return r}var f;function l(){return f||(f=rr)}function o(e,r){if(e[0]==80&&e[1]==75)return Ne(e,r);if((e[0]|32)==109&&(e[1]|32)==105)return We(e,r);if(e.length<512)throw new Error("CFB file size "+e.length+" < 512");var t=3;var a=512;var n=0;var i=0;var s=0;var f=0;var l=0;var o=[];var v=e.slice(0,512);ba(v,0);var m=c(v);t=m[0];switch(t){case 3:a=512;break;case 4:a=4096;break;case 0:if(m[1]==0)return Ne(e,r);default:throw new Error("Major Version: Expected 3 or 4 saw "+t);}if(a!==512){v=e.slice(0,a);ba(v,28)}var w=e.slice(0,a);u(v,t);var k=v._R(4,"i");if(t===3&&k!==0)throw new Error("# Directory Sectors: Expected 0 saw "+k);v.l+=4;s=v._R(4,"i");v.l+=4;v.chk("00100000","Mini Stream Cutoff Size: ");f=v._R(4,"i");n=v._R(4,"i");l=v._R(4,"i");i=v._R(4,"i");for(var T=-1,E=0;E<109;++E){T=v._R(4,"i");if(T<0)break;o[E]=T}var y=h(e,a);p(l,i,y,a,o);var S=b(y,s,o,a);S[s].name="!Directory";if(n>0&&f!==U)S[f].name="!MiniFAT";S[o[0]].name="!FAT";S.fat_addrs=o;S.ssz=a;var _={},A=[],x=[],C=[];g(s,S,y,A,n,_,x,f);d(x,C,A);A.shift();var O={FileIndex:x,FullPaths:C};if(r&&r.raw)O.raw={header:w,sectors:y};return O}function c(e){if(e[e.l]==80&&e[e.l+1]==75)return[0,0];e.chk(B,"Header Signature: ");e.l+=16;var r=e._R(2,"u");return[e._R(2,"u"),r]}function u(e,r){var t=9;e.l+=2;switch(t=e._R(2)){case 9:if(r!=3)throw new Error("Sector Shift: Expected 9 saw "+t);break;case 12:if(r!=4)throw new Error("Sector Shift: Expected 12 saw "+t);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+t);}e.chk("0600","Mini Sector Shift: ");e.chk("000000000000","Reserved: ")}function h(e,r){var t=Math.ceil(e.length/r)-1;var a=[];for(var n=1;n0&&s>=0){i.push(r.slice(s*M,s*M+M));n-=M;s=oa(t,s*4)}if(i.length===0)return wa(0);return F(i).slice(0,e.size)}function p(e,r,t,a,n){var i=U;if(e===U){if(r!==0)throw new Error("DIFAT chain shorter than expected")}else if(e!==-1){var s=t[e],f=(a>>>2)-1;if(!s)return;for(var l=0;l=1)p(oa(s,a-4),r-1,t,a,n)}}function m(e,r,t,a,n){var i=[],s=[];if(!n)n=[];var f=a-1,l=0,o=0;for(l=r;l>=0;){n[l]=true;i[i.length]=l;s.push(e[l]);var c=t[Math.floor(l*4/a)];o=l*4&f;if(a<4+o)throw new Error("FAT boundary crossed: "+l+" 4 "+a);if(!e[c])break;l=oa(e[c],o)}return{nodes:i,data:Ut([s])}}function b(e,r,t,a){var n=e.length,i=[];var s=[],f=[],l=[];var o=a-1,c=0,u=0,h=0,d=0;for(c=0;c=n)h-=n;if(s[h])continue;l=[];var v=[];for(u=h;u>=0;){v[u]=true;s[u]=true;f[f.length]=u;l.push(e[u]);var p=t[Math.floor(u*4/a)];d=u*4&o;if(a<4+d)throw new Error("FAT boundary crossed: "+u+" 4 "+a);if(!e[p])break;u=oa(e[p],d);if(v[u])break}i[h]={nodes:f,data:Ut([l])}}return i}function g(e,r,t,a,n,i,s,f){var l=0,o=a.length?2:0;var c=r[e].data;var u=0,h=0,d;for(;u0&&l!==U)r[l].name="!StreamData"}else if(b.size>=4096){b.storage="fat";if(r[b.start]===undefined)r[b.start]=m(t,b.start,r.fat_addrs,r.ssz);r[b.start].name=b.name;b.content=r[b.start].data.slice(0,b.size)}else{b.storage="minifat";if(b.size<0)b.size=0;else if(l!==U&&b.start!==U&&r[l]){b.content=v(b,r[l].data,(r[f]||{}).data)}}if(b.content)ba(b.content,0);i[d]=b;s.push(b)}}function w(e,r){return new Date((la(e,r+4)/1e7*Math.pow(2,32)+la(e,r)/1e7-11644473600)*1e3)}function T(e,r){l();return o(f.readFileSync(e),r)}function _(e,r){var t=r&&r.type;if(!t){if(y&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return T(e,r);case"base64":return o(C(E(e)),r);case"binary":return o(C(e),r);}return o(e,r)}function O(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;R(e)}function R(e){var r="Sh33tJ5";if(er.find(e,"/"+r))return;var t=wa(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);N(e)}function N(e,n){O(e);var i=false,s=false;for(var f=e.FullPaths.length-1;f>=0;--f){var l=e.FileIndex[f];switch(l.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(l.R*l.L*l.C))i=true;if(l.R>-1&&l.L>-1&&l.R==l.L)i=true;break;default:i=true;break;}}if(!i&&!n)return;var o=new Date(1987,1,19),c=0;var u=Object.create?Object.create(null):{};var h=[];for(f=0;f1?1:-1;v.size=0;v.type=5}else if(p.slice(-1)=="/"){for(c=f+1;c=h.length?-1:c;for(c=f+1;c=h.length?-1:c;v.type=1}else{if(t(e.FullPaths[f+1]||"")==t(p))v.R=f+1;v.type=2}}}function I(e,r){var t=r||{};if(t.fileType=="mad")return He(e,t);N(e);switch(t.fileType){case"zip":return Fe(e,t);}var a=function(e){var r=0,t=0;for(var a=0;a0){if(i<4096)r+=i+63>>6;else t+=i+511>>9}}var s=e.FullPaths.length+3>>2;var f=r+7>>3;var l=r+127>>7;var o=f+t+s+l;var c=o+127>>7;var u=c<=109?0:Math.ceil((c-109)/127);while(o+c+u+127>>7>c)u=++c<=109?0:Math.ceil((c-109)/127);var h=[1,u,c,l,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=wa(a[7]<<9);var i=0,s=0;{for(i=0;i<8;++i)n._W(1,W[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:U);n._W(4,a[3]);n._W(-4,a[1]?a[0]-1:U);n._W(4,a[1]);for(i=0;i<109;++i)n._W(-4,i>9)}f(a[6]+7>>3);while(n.l&511)n._W(-4,z.ENDOFCHAIN);s=i=0;for(l=0;l=4096)continue;c.start=s;f(o+63>>6)}while(n.l&511)n._W(-4,z.ENDOFCHAIN);for(i=0;i32){console.error("Name "+h+" will be truncated to "+h.slice(0,32));h=h.slice(0,32)}o=2*(h.length+1);n._W(64,h,"utf16le");n._W(2,o);n._W(1,c.type);n._W(1,c.color);n._W(-4,c.L);n._W(-4,c.R);n._W(-4,c.C);if(!c.clsid)for(l=0;l<4;++l)n._W(4,0);else n._W(16,c.clsid,"hex");n._W(4,c.state||0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,c.start);n._W(4,c.size);n._W(4,0)}for(i=1;i=4096){n.l=c.start+1<<9;if(y&&Buffer.isBuffer(c.content)){c.content.copy(n,n.l,0,c.size);n.l+=c.size+511&-512}else{for(l=0;l0&&c.size<4096){if(y&&Buffer.isBuffer(c.content)){c.content.copy(n,n.l,0,c.size);n.l+=c.size+63&-64}else{for(l=0;l>16|r>>8|r)&255}var ee=typeof Uint8Array!=="undefined";var re=ee?new Uint8Array(1<<8):[];for(var te=0;te<1<<8;++te)re[te]=Q(te);function ae(e,r){var t=re[e&255];if(r<=8)return t>>>8-r;t=t<<8|re[e>>8&255];if(r<=16)return t>>>16-r;t=t<<8|re[e>>16&255];return t>>>24-r}function ne(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=6?0:e[a+1]<<8))>>>t&3}function ie(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=5?0:e[a+1]<<8))>>>t&7}function se(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=4?0:e[a+1]<<8))>>>t&15}function fe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=3?0:e[a+1]<<8))>>>t&31}function le(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=1?0:e[a+1]<<8))>>>t&127}function oe(e,r,t){var a=r&7,n=r>>>3,i=(1<>>a;if(t<8-a)return s&i;s|=e[n+1]<<8-a;if(t<16-a)return s&i;s|=e[n+2]<<16-a;if(t<24-a)return s&i;s|=e[n+3]<<24-a;return s&i}function ce(e,r,t){var a=r&7,n=r>>>3;if(a<=5)e[n]|=(t&7)<>8-a}return r+3}function ue(e,r,t){var a=r&7,n=r>>>3;t=(t&1)<>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t;return r+8}function de(e,r,t){var a=r&7,n=r>>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t&255;e[n+2]=t>>>8;return r+16}function ve(e,r){var t=e.length,a=2*t>r?2*t:r+5,n=0;if(t>=r)return e;if(y){var i=x(a);if(e.copy)e.copy(i);else for(;n>a-u;for(s=(1<=0;--s)r[f|s<0)r[r.l++]=e[t++]}return r.l}function i(r,t){var n=0;var i=0;var s=ee?new Uint16Array(32768):[];while(i0)t[t.l++]=r[i++];n=t.l*8;continue}n=ce(t,n,+!!(i+f==r.length)+2);var l=0;while(f-- >0){var o=r[i];l=(l<<5^o)&32767;var c=-1,u=0;if(c=s[l]){c|=i&~32767;if(c>i)c-=32768;if(c2){o=a[u];if(o<=22)n=he(t,n,re[o+1]>>1)-1;else{he(t,n,3);n+=5;he(t,n,re[o-23]>>5);n+=3}var h=o<8?0:o-4>>2;if(h>0){de(t,n,u-J[o]);n+=h}o=e[i-c];n=he(t,n,re[o]>>3);n-=3;var d=o<4?0:o-2>>1;if(d>0){de(t,n,i-c-q[o]);n+=d}for(var v=0;v>8-v;for(var p=(1<<7-v)-1;p>=0;--p)Se[d|p<>>=3){case 16:i=3+ne(e,r);r+=2;d=m[m.length-1];while(i-- >0)m.push(d);break;case 17:i=3+ie(e,r);r+=3;while(i-- >0)m.push(0);break;case 18:i=11+le(e,r);r+=7;while(i-- >0)m.push(0);break;default:m.push(d);if(l>>0;var f=0,l=0;while((a&1)==0){a=ie(e,t);t+=3;if(a>>>1==0){if(t&7)t+=8-(t&7);var o=e[t>>>3]|e[(t>>>3)+1]<<8;t+=32;if(o>0){if(!r&&s0){n[i++]=e[t>>>3];t+=8}}continue}else if(a>>1==1){f=9;l=5}else{t=xe(e,t);f=_e;l=Ae}for(;;){if(!r&&s>>1==1?be[c]:Ee[c];t+=u&15;u>>>=4;if((u>>>8&255)===0)n[i++]=u;else if(u==256)break;else{u-=257;var h=u<8?0:u-4>>2;if(h>5)h=0;var d=i+J[u];if(h>0){d+=oe(e,t,h);t+=h}c=oe(e,t,l);u=a>>>1==1?ge[c]:ye[c];t+=u&15;u>>>=4;var v=u<4?0:u-2>>1;var p=q[u];if(v>0){p+=oe(e,t,v);t+=v}if(!r&&s>>3];return[n.slice(0,i),t+7>>>3]}function Oe(e,r){var t=e.slice(e.l||0);var a=Ce(t,r);e.l+=a[1];return a[0]}function Re(e,r){if(e){if(typeof console!=="undefined")console.error(r)}else throw new Error(r)}function Ne(e,r){var t=e;ba(t,0);var a=[],n=[];var i={FileIndex:a,FullPaths:n};O(i,{root:r.root});var f=t.length-4;while((t[f]!=80||t[f+1]!=75||t[f+2]!=5||t[f+3]!=6)&&f>=0)--f;t.l=f+4;t.l+=4;var l=t._R(2);t.l+=6;var o=t._R(4);t.l=o;for(f=0;f0){t=t.slice(0,t.length-1);t=t.slice(0,t.lastIndexOf("/")+1);if(i.slice(0,t.length)==t)break}}var s=(a[1]||"").match(/boundary="(.*?)"/);if(!s)throw new Error("MAD cannot find boundary");var f="--"+(s[1]||"");var l=[],o=[];var c={FileIndex:l,FullPaths:o};O(c);var u,h=0;for(n=0;n=32&&d<128)++u;var p=u>=h*4/5;n.push(a);n.push("Content-Location: "+(t.root||"file:///C:/SheetJS/")+s);n.push("Content-Transfer-Encoding: "+(p?"quoted-printable":"base64"));n.push("Content-Type: "+Pe(f,s));n.push("");n.push(p?Me(c):Le(c))}n.push(a+"--\r\n");return n.join("\r\n")}function ze(e){var r={};O(r,e);return r}function Ve(e,r,t,n){var i=n&&n.unsafe;if(!i)O(e);var s=!i&&er.find(e,r);if(!s){var f=e.FullPaths[0];if(r.slice(0,f.length)==f)f=r;else{if(f.slice(-1)!="/")f+="/";f=(f+r).replace("//","/")}s={name:a(r),type:2};e.FileIndex.push(s);e.FullPaths.push(f);if(!i)er.utils.cfb_gc(e)}s.content=t;s.size=t?t.length:0;if(n){if(n.CLSID)s.clsid=n.CLSID;if(n.mt)s.mt=n.mt;if(n.ct)s.ct=n.ct}return s}function Ge(e,r){O(e);var t=er.find(e,r);if(t)for(var a=0;a3)a=true;switch(n[i].slice(n[i].length-1)){case"Y":throw new Error("Unsupported ISO Duration Field: "+n[i].slice(n[i].length-1));case"D":t*=24;case"H":t*=60;case"M":if(!a)throw new Error("Unsupported ISO Duration Field: M");else t*=60;case"S":break;}r+=t*parseInt(n[i],10)}return r}var gr=new Date("2017-02-19T19:06:09.000Z");var wr=isNaN(gr.getFullYear())?new Date("2/19/17"):gr;var kr=wr.getFullYear()==2017;function Tr(e,r){var t=new Date(e);if(kr){if(r>0)t.setTime(t.getTime()+t.getTimezoneOffset()*60*1e3);else if(r<0)t.setTime(t.getTime()-t.getTimezoneOffset()*60*1e3);return t}if(e instanceof Date)return e;if(wr.getFullYear()==1917&&!isNaN(t.getFullYear())){var a=t.getFullYear();if(e.indexOf(""+a)>-1)return t;t.setFullYear(t.getFullYear()+100);return t}var n=e.match(/\d+/g)||["2017","2","19","0","0","0"];var i=new Date(+n[0],+n[1]-1,+n[2],+n[3]||0,+n[4]||0,+n[5]||0);if(e.indexOf("Z")>-1)i=new Date(i.getTime()-i.getTimezoneOffset()*60*1e3);return i}function Er(e,r){if(y&&Buffer.isBuffer(e)){if(r&&_){if(e[0]==255&&e[1]==254)return bt(e.slice(2).toString("utf16le"));if(e[1]==254&&e[2]==255)return bt(h(e.slice(2).toString("binary")))}return e.toString("binary")}if(typeof TextDecoder!=="undefined")try{if(r){if(e[0]==255&&e[1]==254)return bt(new TextDecoder("utf-16le").decode(e.slice(2)));if(e[0]==254&&e[1]==255)return bt(new TextDecoder("utf-16be").decode(e.slice(2)))}var t={"€":"€","‚":"‚","ƒ":"ƒ","„":"„","…":"…","†":"†","‡":"‡","ˆ":"ˆ","‰":"‰","Š":"Š","‹":"‹","Œ":"Œ","Ž":"Ž","‘":"‘","’":"’","“":"“","”":"”","•":"•","–":"–","—":"—","˜":"˜","™":"™","š":"š","›":"›","œ":"œ","ž":"ž","Ÿ":"Ÿ"};if(Array.isArray(e))e=new Uint8Array(e);return new TextDecoder("latin1").decode(e).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g,function(e){return t[e]||e})}catch(a){}var n=[];for(var i=0;i!=e.length;++i)n.push(String.fromCharCode(e[i]));return n.join("")}function yr(e){if(typeof JSON!="undefined"&&!Array.isArray(e))return JSON.parse(JSON.stringify(e));if(typeof e!="object"||e==null)return e;if(e instanceof Date)return new Date(e.getTime());var r={};for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))r[t]=yr(e[t]);return r}function Sr(e,r){var t="";while(t.length3&&Cr.indexOf(r)==-1)return i}else if(r.replace(/[ap]m?/,"").match(/[a-z]/))return i;if(s<0||s>8099||e.match(/[^-0-9:,\/\\]/))return i;return n}var Rr=function(){var e="abacaba".split(/(:?b)/i).length==5;return function r(t,a,n){if(e||typeof a=="string")return t.split(a);var i=t.split(a),s=[i[0]];for(var f=1;f\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g;var jr=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm,Xr=/<[^>]*>/g;var Yr=Gr.match(jr)?jr:Xr;var Kr=/<\w*:/,Zr=/<(\/?)\w+:/;function Jr(e,r,t){var a={};var n=0,i=0;for(;n!==e.length;++n)if((i=e.charCodeAt(n))===32||i===10||i===13)break;if(!r)a[0]=e.slice(0,n);if(n===e.length)return a;var s=e.match($r),f=0,l="",o=0,c="",u="",h=1;if(s)for(o=0;o!=s.length;++o){u=s[o];for(i=0;i!=u.length;++i)if(u.charCodeAt(i)===61)break;c=u.slice(0,i).trim();while(u.charCodeAt(i+1)==32)++i;h=(n=u.charCodeAt(i+1))==34||n==39?1:0;l=u.slice(i+1+h,u.length-h);for(f=0;f!=c.length;++f)if(c.charCodeAt(f)===58)break;if(f===c.length){if(c.indexOf("_")>0)c=c.slice(0,c.indexOf("_"));a[c]=l;if(!t)a[c.toLowerCase()]=l}else{var d=(f===5&&c.slice(0,5)==="xmlns"?"xmlns":"")+c.slice(f+1);if(a[d]&&c.slice(f-3,f)=="ext")continue;a[d]=l;if(!t)a[d.toLowerCase()]=l}}return a}function qr(e){return e.replace(Zr,"<$1")}var Qr={""":'"',"'":"'",">":">","<":"<","&":"&"};var et=lr(Qr);var rt=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;function t(a){var n=a+"",i=n.indexOf("-1?16:10))||e}).replace(r,function(e,r){return String.fromCharCode(parseInt(r,16))});var s=n.indexOf("]]>");return t(n.slice(0,i))+n.slice(i+9,s)+t(n.slice(s+3))}return function a(e,r){var a=t(e);return r?a.replace(/\r\n/g,"\n"):a}}();var tt=/[&<>'"]/g,at=/[\u0000-\u0008\u000b-\u001f\uFFFE-\uFFFF]/g;function nt(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(at,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function it(e){return nt(e).replace(/ /g,"_x0020_")}var st=/[\u0000-\u001f]/g;function ft(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(/\n/g,"
").replace(st,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function lt(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(st,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var ot=function(){var e=/&#(\d+);/g;function r(e,r){return String.fromCharCode(parseInt(r,10))}return function t(a){return a.replace(e,r)}}();function ct(e){return e.replace(/(\r\n|[\r\n])/g," ")}function ut(e){switch(e){case 1:;case true:;case"1":;case"true":return true;case 0:;case false:;case"0":;case"false":return false;}return false}function ht(e){var r="",t=0,a=0,n=0,i=0,s=0,f=0;while(t191&&a<224){s=(a&31)<<6;s|=n&63;r+=String.fromCharCode(s);continue}i=e.charCodeAt(t++);if(a<240){r+=String.fromCharCode((a&15)<<12|(n&63)<<6|i&63);continue}s=e.charCodeAt(t++);f=((a&7)<<18|(n&63)<<12|(i&63)<<6|s&63)-65536;r+=String.fromCharCode(55296+(f>>>10&1023));r+=String.fromCharCode(56320+(f&1023))}return r}function dt(e){var r=A(2*e.length),t,a,n=1,i=0,s=0,f;for(a=0;a>>10&1023);t=56320+(t&1023)}if(s!==0){r[i++]=s&255;r[i++]=s>>>8;s=0}r[i++]=t%256;r[i++]=t>>>8}return r.slice(0,i).toString("ucs2")}function vt(e){return S(e,"binary").toString("utf8")}var pt="foo bar baz☃🍣";var mt=y&&(vt(pt)==ht(pt)&&vt||dt(pt)==ht(pt)&&dt)||ht;var bt=y?function(e){return S(e,"utf8").toString("binary")}:function(e){var r=[],t=0,a=0,n=0;while(t>6)));r.push(String.fromCharCode(128+(a&63)));break;case a>=55296&&a<57344:a-=55296;n=e.charCodeAt(t++)-56320+(a<<10);r.push(String.fromCharCode(240+(n>>18&7)));r.push(String.fromCharCode(144+(n>>12&63)));r.push(String.fromCharCode(128+(n>>6&63)));r.push(String.fromCharCode(128+(n&63)));break;default:r.push(String.fromCharCode(224+(a>>12)));r.push(String.fromCharCode(128+(a>>6&63)));r.push(String.fromCharCode(128+(a&63)));}}return r.join("")};var gt=function(){var e={};return function r(t,a){var n=t+"|"+(a||"");if(e[n])return e[n];return e[n]=new RegExp("<(?:\\w+:)?"+t+'(?: xml:space="preserve")?(?:[^>]*)>([\\s\\S]*?)",a||"")}}();var wt=function(){var e=[["nbsp"," "],["middot","·"],["quot",'"'],["apos","'"],["gt",">"],["lt","<"],["amp","&"]].map(function(e){return[new RegExp("&"+e[0]+";","ig"),e[1]]});return function r(t){var a=t.replace(/^[\t\n\r ]+/,"").replace(/[\t\n\r ]+$/,"").replace(/>\s+/g,">").replace(/\s+/g,"\n").replace(/<[^>]*>/g,"");for(var n=0;n([\\s\\S]*?)","g")}}();var Tt=/<\/?(?:vt:)?variant>/g,Et=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function At(e){return sr(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function xt(e,r,t){return"<"+e+(t!=null?At(t):"")+(r!=null?(r.match(St)?' xml:space="preserve"':"")+">"+r+""}function Ct(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function Ot(e,r){switch(typeof e){case"string":var t=xt("vt:lpwstr",nt(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return xt((e|0)==e?"vt:i4":"vt:r8",nt(String(e)));case"boolean":return xt("vt:bool",e?"true":"false");}if(e instanceof Date)return xt("vt:filetime",Ct(e));throw new Error("Unable to serialize "+e)}function Rt(e){if(y&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return mt(R(I(e)));throw new Error("Bad input format: expected Buffer or string")}var Nt=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/](?:[^>=]|="[^"]*?")*)?>/gm;var It={CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",CT:"http://schemas.openxmlformats.org/package/2006/content-types",RELS:"http://schemas.openxmlformats.org/package/2006/relationships",TCMNT:"http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"};var Ft=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];var Dt={o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel",ss:"urn:schemas-microsoft-com:office:spreadsheet",dt:"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",mv:"http://macVmlSchemaUri",v:"urn:schemas-microsoft-com:vml",html:"http://www.w3.org/TR/REC-html40"};function Pt(e,r){var t=1-2*(e[r+7]>>>7);var a=((e[r+7]&127)<<4)+(e[r+6]>>>4&15);var n=e[r+6]&15;for(var i=5;i>=0;--i)n=n*256+e[r+i];if(a==2047)return n==0?t*Infinity:NaN;if(a==0)a=-1022;else{a-=1023;n+=Math.pow(2,52)}return t*Math.pow(2,a-52)*n}function Lt(e,r,t){var a=(r<0||1/r==-Infinity?1:0)<<7,n=0,i=0;var s=a?-r:r;if(!isFinite(s)){n=2047;i=isNaN(r)?26985:0}else if(s==0)n=i=0;else{n=Math.floor(Math.log(s)/Math.LN2);i=s*Math.pow(2,52-n);if(n<=-1023&&(!isFinite(i)||i>4|a}var Mt=function(e){var r=[],t=10240;for(var a=0;a0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map(function(e){return Buffer.isBuffer(e)?e:S(e)})):Mt(e)}:Mt;var Bt=function(e,r,t){var a=[];for(var n=r;n0?Gt(e,r+4,r+4+t-1):""};var jt=$t;var Xt=function(e,r){var t=la(e,r);return t>0?Gt(e,r+4,r+4+t-1):""};var Yt=Xt;var Kt=function(e,r){var t=2*la(e,r);return t>0?Gt(e,r+4,r+4+t-1):""};var Zt=Kt;var Jt=function Fk(e,r){var t=la(e,r);return t>0?Wt(e,r+4,r+4+t):""};var qt=Jt;var Qt=function(e,r){var t=la(e,r);return t>0?Gt(e,r+4,r+4+t):""};var ea=Qt;var ra=function(e,r){return Pt(e,r)};var ta=ra;var aa=function Dk(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(y){jt=function Pk(e,r){if(!Buffer.isBuffer(e))return $t(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Yt=function Lk(e,r){if(!Buffer.isBuffer(e))return Xt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Zt=function Mk(e,r){if(!Buffer.isBuffer(e)||!_)return Kt(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};qt=function Uk(e,r){if(!Buffer.isBuffer(e)||!_)return Jt(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};ea=function Bk(e,r){if(!Buffer.isBuffer(e))return Qt(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};ta=function Wk(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return ra(e,r)};aa=function Hk(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function na(){Wt=function(e,r,t){return a.utils.decode(1200,e.slice(r,t)).replace(P,"")};Gt=function(e,r,t){return a.utils.decode(65001,e.slice(r,t))};jt=function(e,r){var n=la(e,r);return n>0?a.utils.decode(t,e.slice(r+4,r+4+n-1)):""};Yt=function(e,t){var n=la(e,t);return n>0?a.utils.decode(r,e.slice(t+4,t+4+n-1)):""};Zt=function(e,r){var t=2*la(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};qt=function(e,r){var t=la(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t)):""};ea=function(e,r){var t=la(e,r);return t>0?a.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof a!=="undefined")na();var ia=function(e,r){return e[r]};var sa=function(e,r){return e[r+1]*(1<<8)+e[r]};var fa=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var la=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var oa=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var ca=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function ua(e,t){var n="",i,s,f=[],l,o,c,u;switch(t){case"dbcs":u=this.l;if(y&&Buffer.isBuffer(this)&&_)n=this.slice(this.l,this.l+2*e).toString("utf16le");else for(c=0;c0?oa:ca)(this,this.l);this.l+=4;return i}else{s=la(this,this.l);this.l+=4}return s;case 8:;case-8:if(t==="f"){if(e==8)s=ta(this,this.l);else s=ta([this[this.l+7],this[this.l+6],this[this.l+5],this[this.l+4],this[this.l+3],this[this.l+2],this[this.l+1],this[this.l+0]],0);this.l+=8;return s}else e=8;case 16:n=zt(this,this.l,e);break;};}this.l+=e;return n}var ha=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255;e[t+2]=r>>>16&255;e[t+3]=r>>>24&255};var da=function(e,r,t){e[t]=r&255;e[t+1]=r>>8&255;e[t+2]=r>>16&255;e[t+3]=r>>24&255};var va=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function pa(e,n,i){var s=0,f=0;if(i==="dbcs"){for(f=0;f!=n.length;++f)va(this,n.charCodeAt(f),this.l+2*f);s=2*n.length}else if(i==="sbcs"||i=="cpstr"){if(typeof a!=="undefined"&&t==874){for(f=0;f!=n.length;++f){var l=a.utils.encode(t,n.charAt(f));this[this.l+f]=l[0]}s=n.length}else if(typeof a!=="undefined"&&i=="cpstr"){l=a.utils.encode(r,n);if(l.length==n.length)for(f=0;f>8}while(this.l>>=8;this[this.l+1]=n&255;break;case 3:s=3;this[this.l]=n&255;n>>>=8;this[this.l+1]=n&255;n>>>=8;this[this.l+2]=n&255;break;case 4:s=4;ha(this,n,this.l);break;case 8:s=8;if(i==="f"){Lt(this,n,this.l);break};case 16:break;case-4:s=4;da(this,n,this.l);break;}this.l+=s;return this}function ma(e,r){var t=zt(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function ba(e,r){e.l=r;e._R=ua;e.chk=ma;e._W=pa}function ga(e,r){e.l+=r}function wa(e){var r=A(e);ba(r,0);return r}function ka(e,r,t){if(!e)return;var a,n,i;ba(e,e.l||0);var s=e.length,f=0,l=0;while(e.la.l){a=a.slice(0,a.l);a.l=a.length}if(a.length>0)e.push(a)}a=null};var i=function c(e){if(a&&e=128?1:0)+1;if(a>=128)++i;if(a>=16384)++i;if(a>=2097152)++i;var s=e.next(i);if(n<=127)s._W(1,n);else{s._W(1,(n&127)+128);s._W(1,n>>7)}for(var f=0;f!=4;++f){if(a>=128){s._W(1,(a&127)+128);a>>=7}else{s._W(1,a);break}}if(a>0&&aa(t))e.push(t)}function ya(e,r,t){var a=yr(e);if(r.s){if(a.cRel)a.c+=r.s.c;if(a.rRel)a.r+=r.s.r}else{if(a.cRel)a.c+=r.c;if(a.rRel)a.r+=r.r}if(!t||t.biff<12){while(a.c>=256)a.c-=256;while(a.r>=65536)a.r-=65536}return a}function Sa(e,r,t){var a=yr(e);a.s=ya(a.s,r.s,t);a.e=ya(a.e,r.s,t);return a}function _a(e,r){if(e.cRel&&e.c<0){e=yr(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=yr(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=Ma(e);if(!e.cRel&&e.cRel!=null)t=Fa(t);if(!e.rRel&&e.rRel!=null)t=Oa(t);return t}function Aa(e,r){if(e.s.r==0&&!e.s.rRel){if(e.e.r==(r.biff>=12?1048575:r.biff>=8?65536:16384)&&!e.e.rRel){return(e.s.cRel?"":"$")+Ia(e.s.c)+":"+(e.e.cRel?"":"$")+Ia(e.e.c)}}if(e.s.c==0&&!e.s.cRel){if(e.e.c==(r.biff>=12?16383:255)&&!e.e.cRel){return(e.s.rRel?"":"$")+Ca(e.s.r)+":"+(e.e.rRel?"":"$")+Ca(e.e.r)}}return _a(e.s,r.biff)+":"+_a(e.e,r.biff)}if(typeof cptable!=="undefined")m(cptable);else if(typeof module!=="undefined"&&typeof require!=="undefined"){m(undefined)}function xa(e){return parseInt(Ra(e),10)-1}function Ca(e){return""+(e+1)}function Oa(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function Ra(e){return e.replace(/\$(\d+)$/,"$1")}function Na(e){var r=Da(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function Ia(e){if(e<0)throw new Error("invalid column "+e);var r="";for(++e;e;e=Math.floor((e-1)/26))r=String.fromCharCode((e-1)%26+65)+r;return r}function Fa(e){return e.replace(/^([A-Z])/,"$$$1")}function Da(e){return e.replace(/^\$([A-Z])/,"$1")}function Pa(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function La(e){var r=0,t=0;for(var a=0;a=48&&n<=57)r=10*r+(n-48);else if(n>=65&&n<=90)t=26*t+(n-64)}return{c:t-1,r:r-1}}function Ma(e){var r=e.c+1;var t="";for(;r;r=(r-1)/26|0)t=String.fromCharCode((r-1)%26+65)+t;return t+(e.r+1)}function Ua(e){var r=e.indexOf(":");if(r==-1)return{s:La(e),e:La(e)};return{s:La(e.slice(0,r)),e:La(e.slice(r+1))}}function Ba(e,r){if(typeof r==="undefined"||typeof r==="number"){return Ba(e.s,e.e)}if(typeof e!=="string")e=Ma(e);if(typeof r!=="string")r=Ma(r);return e==r?e:e+":"+r}function Wa(e){var r=Ua(e);return"$"+Ia(r.s.c)+"$"+Ca(r.s.r)+":$"+Ia(r.e.c)+"$"+Ca(r.e.r)}function Ha(e,r){if(!e&&!(r&&r.biff<=5&&r.biff>=2))throw new Error("empty sheet name");if(/[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(e))return"'"+e.replace(/'/g,"''")+"'";return e}function za(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;a26)break;t=26*t+n}r.s.c=--t;for(t=0;a9)break;t=10*t+n}r.s.r=--t;if(a===i||n!=10){r.e.c=r.s.c;r.e.r=r.s.r;return r}++a;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 Va(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=ze(e.z,t?hr(r):r)}catch(a){}try{return e.w=ze((e.XF||{}).numFmtId||(t?14:0),t?hr(r):r)}catch(a){return""+r}}function Ga(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(e.t=="e")return Jn[e.v]||e.v;if(r==undefined)return Va(e,e.v);return Va(e,r)}function $a(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function ja(e,r,t){var a=t||{};var n=e?Array.isArray(e):a.dense;if(b!=null&&n==null)n=b;var i=e||(n?[]:{});var s=0,f=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var l=typeof a.origin=="string"?La(a.origin):a.origin;s=l.r;f=l.c}if(!i["!ref"])i["!ref"]="A1:A1"}var o={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(i["!ref"]){var c=za(i["!ref"]);o.s.c=c.s.c;o.s.r=c.s.r;o.e.c=Math.max(o.e.c,c.e.c);o.e.r=Math.max(o.e.r,c.e.r);if(s==-1)o.e.r=s=c.e.r+1}for(var u=0;u!=r.length;++u){if(!r[u])continue;if(!Array.isArray(r[u]))throw new Error("aoa_to_sheet expects an array of arrays");for(var h=0;h!=r[u].length;++h){if(typeof r[u][h]==="undefined")continue;var d={v:r[u][h]};var v=s+u,p=f+h;if(o.s.r>v)o.s.r=v;if(o.s.c>p)o.s.c=p;if(o.e.r0)r._W(0,e,"dbcs");return t?r.slice(0,r.l):r}function qa(e){return{ich:e._R(2),ifnt:e._R(2)}}function Qa(e,r){if(!r)r=wa(4);r._W(2,e.ich||0);r._W(2,e.ifnt||0);return r}function en(e,r){var t=e.l;var a=e._R(1);var n=Za(e);var i=[];var s={t:n,h:n};if((a&1)!==0){var f=e._R(4);for(var l=0;l!=f;++l)i.push(qa(e));s.r=i}else s.r=[{ich:0,ifnt:0}];e.l=t+r;return s}function rn(e,r){var t=false;if(r==null){t=true;r=wa(15+4*e.t.length)}r._W(1,0);Ja(e.t,r);return t?r.slice(0,r.l):r}var tn=en;function an(e,r){var t=false;if(r==null){t=true;r=wa(23+4*e.t.length)}r._W(1,1);Ja(e.t,r);r._W(4,1);Qa({ich:0,ifnt:0},r);return t?r.slice(0,r.l):r}function nn(e){var r=e._R(4);var t=e._R(2);t+=e._R(1)<<16;e.l++;return{c:r,iStyleRef:t}}function sn(e,r){if(r==null)r=wa(8);r._W(-4,e.c);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}function fn(e){var r=e._R(2);r+=e._R(1)<<16;e.l++;return{c:-1,iStyleRef:r}}function ln(e,r){if(r==null)r=wa(4);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}var on=Za;var cn=Ja;function un(e){var r=e._R(4);return r===0||r===4294967295?"":e._R(r,"dbcs")}function hn(e,r){var t=false;if(r==null){t=true;r=wa(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 dn=Za;var vn=un;var pn=hn;function mn(e){var r=e.slice(e.l,e.l+4);var t=r[0]&1,a=r[0]&2;e.l+=4;var n=a===0?ta([0,0,0,0,r[0]&252,r[1],r[2],r[3]],0):oa(r,0)>>2;return t?n/100:n}function bn(e,r){if(r==null)r=wa(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 gn(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 wn(e,r){if(!r)r=wa(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 kn=gn;var Tn=wn;function En(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e._R(8,"f")}function yn(e,r){return(r||wa(8))._W(8,e,"f")}function Sn(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 f=e._R(1);var l=e._R(1);e.l++;switch(a){case 0:r.auto=1;break;case 1:r.index=n;var o=Zn[n];if(o)r.rgb=Co(o);break;case 2:r.rgb=Co([s,f,l]);break;case 3:r.theme=n;break;}if(i!=0)r.tint=i>0?i/32767:i/32768;return r}function _n(e,r){if(!r)r=wa(8);if(!e||e.auto){r._W(4,0);r._W(4,0);return r}if(e.index!=null){r._W(1,2);r._W(1,e.index)}else if(e.theme!=null){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||e.theme!=null){r._W(2,0);r._W(1,0);r._W(1,0)}else{var a=e.rgb||"FFFFFF";if(typeof a=="number")a=("000000"+a.toString(16)).slice(-6);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 An(e){var r=e._R(1);e.l++;var t={fBold:r&1,fItalic:r&2,fUnderline:r&4, -fStrikeout:r&8,fOutline:r&16,fShadow:r&32,fCondense:r&64,fExtend:r&128};return t}function xn(e,r){if(!r)r=wa(2);var t=(e.italic?2:0)|(e.strike?8:0)|(e.outline?16:0)|(e.shadow?32:0)|(e.condense?64:0)|(e.extend?128:0);r._W(1,t);r._W(1,0);return r}function Cn(e,r){var t={2:"BITMAP",3:"METAFILEPICT",8:"DIB",14:"ENHMETAFILE"};var a=e._R(4);switch(a){case 0:return"";case 4294967295:;case 4294967294:return t[e._R(4)]||"";}if(a>400)throw new Error("Unsupported Clipboard: "+a.toString(16));e.l-=4;return e._R(0,r==1?"lpstr":"lpwstr")}function On(e){return Cn(e,1)}function Rn(e){return Cn(e,2)}var Nn=2;var In=3;var Fn=11;var Dn=12;var Pn=19;var Ln=64;var Mn=65;var Un=71;var Bn=4108;var Wn=4126;var Hn=80;var zn=81;var Vn=[Hn,zn];var Gn={1:{n:"CodePage",t:Nn},2:{n:"Category",t:Hn},3:{n:"PresentationFormat",t:Hn},4:{n:"ByteCount",t:In},5:{n:"LineCount",t:In},6:{n:"ParagraphCount",t:In},7:{n:"SlideCount",t:In},8:{n:"NoteCount",t:In},9:{n:"HiddenCount",t:In},10:{n:"MultimediaClipCount",t:In},11:{n:"ScaleCrop",t:Fn},12:{n:"HeadingPairs",t:Bn},13:{n:"TitlesOfParts",t:Wn},14:{n:"Manager",t:Hn},15:{n:"Company",t:Hn},16:{n:"LinksUpToDate",t:Fn},17:{n:"CharacterCount",t:In},19:{n:"SharedDoc",t:Fn},22:{n:"HyperlinksChanged",t:Fn},23:{n:"AppVersion",t:In,p:"version"},24:{n:"DigSig",t:Mn},26:{n:"ContentType",t:Hn},27:{n:"ContentStatus",t:Hn},28:{n:"Language",t:Hn},29:{n:"Version",t:Hn},255:{},2147483648:{n:"Locale",t:Pn},2147483651:{n:"Behavior",t:Pn},1919054434:{}};var $n={1:{n:"CodePage",t:Nn},2:{n:"Title",t:Hn},3:{n:"Subject",t:Hn},4:{n:"Author",t:Hn},5:{n:"Keywords",t:Hn},6:{n:"Comments",t:Hn},7:{n:"Template",t:Hn},8:{n:"LastAuthor",t:Hn},9:{n:"RevNumber",t:Hn},10:{n:"EditTime",t:Ln},11:{n:"LastPrinted",t:Ln},12:{n:"CreatedDate",t:Ln},13:{n:"ModifiedDate",t:Ln},14:{n:"PageCount",t:In},15:{n:"WordCount",t:In},16:{n:"CharCount",t:In},17:{n:"Thumbnail",t:Un},18:{n:"Application",t:Hn},19:{n:"DocSecurity",t:In},255:{},2147483648:{n:"Locale",t:Pn},2147483651:{n:"Behavior",t:Pn},1919054434:{}};var jn={1:"US",2:"CA",3:"",7:"RU",20:"EG",30:"GR",31:"NL",32:"BE",33:"FR",34:"ES",36:"HU",39:"IT",41:"CH",43:"AT",44:"GB",45:"DK",46:"SE",47:"NO",48:"PL",49:"DE",52:"MX",55:"BR",61:"AU",64:"NZ",66:"TH",81:"JP",82:"KR",84:"VN",86:"CN",90:"TR",105:"JS",213:"DZ",216:"MA",218:"LY",351:"PT",354:"IS",358:"FI",420:"CZ",886:"TW",961:"LB",962:"JO",963:"SY",964:"IQ",965:"KW",966:"SA",971:"AE",972:"IL",974:"QA",981:"IR",65535:"US"};var Xn=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function Yn(e){return e.map(function(e){return[e>>16&255,e>>8&255,e&255]})}var Kn=Yn([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,0,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var Zn=yr(Kn);var Jn={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var qn={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255};var Qn=["_xlnm.Consolidate_Area","_xlnm.Auto_Open","_xlnm.Auto_Close","_xlnm.Extract","_xlnm.Database","_xlnm.Criteria","_xlnm.Print_Area","_xlnm.Print_Titles","_xlnm.Recorder","_xlnm.Data_Form","_xlnm.Auto_Activate","_xlnm.Auto_Deactivate","_xlnm.Sheet_Title","_xlnm._FilterDatabase"];var ei={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.sheet.macroEnabled.main+xml":"workbooks","application/vnd.ms-excel.sheet.binary.macroEnabled.main":"workbooks","application/vnd.ms-excel.addin.macroEnabled.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"charts","application/vnd.ms-excel.chartsheet":"charts","application/vnd.ms-excel.macrosheet+xml":"macros","application/vnd.ms-excel.macrosheet":"macros","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"dialogs","application/vnd.ms-excel.dialogsheet":"dialogs","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.customXmlProperties+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.ms-excel.threadedcomments+xml":"threadedcomments","application/vnd.ms-excel.person+xml":"people","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"metadata","application/vnd.ms-excel.sheetMetadata":"metadata","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","application/vnd.ms-office.chartcolorstyle+xml":"TODO","application/vnd.ms-office.chartstyle+xml":"TODO","application/vnd.ms-office.chartex+xml":"TODO","application/vnd.ms-excel.calcChain":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings":"TODO","application/vnd.ms-office.activeX":"TODO","application/vnd.ms-office.activeX+xml":"TODO","application/vnd.ms-excel.attachedToolbars":"TODO","application/vnd.ms-excel.connections":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":"TODO","application/vnd.ms-excel.externalLink":"links","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"links","application/vnd.ms-excel.pivotCacheDefinition":"TODO","application/vnd.ms-excel.pivotCacheRecords":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml":"TODO","application/vnd.ms-excel.queryTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml":"TODO","application/vnd.ms-excel.userNames":"TODO","application/vnd.ms-excel.revisionHeaders":"TODO","application/vnd.ms-excel.revisionLog":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml":"TODO","application/vnd.ms-excel.tableSingleCells":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml":"TODO","application/vnd.ms-excel.slicer":"TODO","application/vnd.ms-excel.slicerCache":"TODO","application/vnd.ms-excel.slicer+xml":"TODO","application/vnd.ms-excel.slicerCache+xml":"TODO","application/vnd.ms-excel.wsSortMap":"TODO","application/vnd.ms-excel.table":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":"TODO","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.themeOverride+xml":"TODO","application/vnd.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"TODO","application/vnd.ms-office.volatileDependencies":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml":"TODO","application/vnd.ms-excel.controlproperties+xml":"TODO","application/vnd.openxmlformats-officedocument.model+data":"TODO","application/vnd.ms-excel.Survey+xml":"TODO","application/vnd.openxmlformats-officedocument.drawing+xml":"drawings","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml":"TODO","application/vnd.openxmlformats-officedocument.vmlDrawing":"TODO","application/vnd.openxmlformats-package.relationships+xml":"rels","application/vnd.openxmlformats-officedocument.oleObject":"TODO","image/png":"TODO",sheet:"js"};var ri={workbooks:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",xlsm:"application/vnd.ms-excel.sheet.macroEnabled.main+xml",xlsb:"application/vnd.ms-excel.sheet.binary.macroEnabled.main",xlam:"application/vnd.ms-excel.addin.macroEnabled.main+xml",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},comments:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",xlsb:"application/vnd.ms-excel.comments"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},charts:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml",xlsb:"application/vnd.ms-excel.chartsheet"},dialogs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml",xlsb:"application/vnd.ms-excel.dialogsheet"},macros:{xlsx:"application/vnd.ms-excel.macrosheet+xml",xlsb:"application/vnd.ms-excel.macrosheet"},metadata:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml",xlsb:"application/vnd.ms-excel.sheetMetadata"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};function ti(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function ai(e){var r=ti();if(!e||!e.match)return r;var t={};(e.match(Yr)||[]).forEach(function(e){var a=Jr(e);switch(a[0].replace(Kr,"<")){case"0?r.calcchains[0]:"";r.sst=r.strs.length>0?r.strs[0]:"";r.style=r.styles.length>0?r.styles[0]:"";r.defaults=t;delete r.calcchains;return r}function ni(e,r,t){var a=cr(ei);var n=[],i;if(!t){n[n.length]=Gr;n[n.length]=xt("Types",null,{xmlns:It.CT,"xmlns:xsd":It.xsd,"xmlns:xsi":It.xsi});n=n.concat([["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["vml","application/vnd.openxmlformats-officedocument.vmlDrawing"],["data","application/vnd.openxmlformats-officedocument.model+data"],["bmp","image/bmp"],["png","image/png"],["gif","image/gif"],["emf","image/x-emf"],["wmf","image/x-wmf"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["tif","image/tiff"],["tiff","image/tiff"],["pdf","application/pdf"],["rels","application/vnd.openxmlformats-package.relationships+xml"]].map(function(e){return xt("Default",null,{Extension:e[0],ContentType:e[1]})}))}var s=function(t){if(e[t]&&e[t].length>0){i=e[t][0];n[n.length]=xt("Override",null,{PartName:(i[0]=="/"?"":"/")+i,ContentType:ri[t][r.bookType]||ri[t]["xlsx"]})}};var f=function(t){(e[t]||[]).forEach(function(e){n[n.length]=xt("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:ri[t][r.bookType]||ri[t]["xlsx"]})})};var l=function(r){(e[r]||[]).forEach(function(e){n[n.length]=xt("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:a[r][0]})})};s("workbooks");f("sheets");f("charts");l("themes");["strs","styles"].forEach(s);["coreprops","extprops","custprops"].forEach(l);l("vba");l("comments");l("threadedcomments");l("drawings");f("metadata");l("people");if(!t&&n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}var ii={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument",HLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",VML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",XPATH:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath",XMISS:"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing",XLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink",CXML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml",CXMLP:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps",CMNT:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",SST:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",STY:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",THEME:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",CHART:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart",CHARTEX:"http://schemas.microsoft.com/office/2014/relationships/chartEx",CS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet",WS:["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet","http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"],DS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet",MS:"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet",IMG:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",DRAW:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",XLMETA:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata",TCMNT:"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment",PEOPLE:"http://schemas.microsoft.com/office/2017/10/relationships/person",CONN:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/connections",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function si(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function fi(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Yr)||[]).forEach(function(e){var n=Jr(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function oi(e,r,t,a,n,i){if(!n)n={};if(!e["!id"])e["!id"]={};if(!e["!idx"])e["!idx"]=1;if(r<0)for(r=e["!idx"];e["!id"]["rId"+r];++r){}e["!idx"]=r+1;n.Id="rId"+r;n.Type=a;n.Target=t;if(i)n.TargetMode=i;else if([ii.HLINK,ii.XPATH,ii.XMISS].indexOf(n.Type)>-1)n.TargetMode="External";if(e["!id"][n.Id])throw new Error("Cannot rewrite rId "+r);e["!id"][n.Id]=n;e[("/"+n.Target).replace("//","/")]=n;return r}var ci="application/vnd.oasis.opendocument.spreadsheet";function ui(e,r){var t=Rt(e);var a;var n;while(a=Nt.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Jr(a[0],false);if(n.path=="/"&&n.type!==ci)throw new Error("This OpenDocument is not a spreadsheet");break;case"encryption-data":;case"algorithm":;case"start-key-generation":;case"key-derivation":throw new Error("Unsupported ODS Encryption");default:if(r&&r.WTF)throw a;}}function hi(e){var r=[Gr];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function di(e,r,t){return[' \n',' \n'," \n"].join("")}function vi(e,r){return[' \n',' \n'," \n"].join("")}function pi(e){var r=[Gr];r.push('\n');for(var t=0;t!=e.length;++t){r.push(di(e[t][0],e[t][1]));r.push(vi("",e[t][0]))}r.push(di("","Document","pkg"));r.push("");return r.join("")}function mi(){return'Sheet'+"JS "+e.version+""}var bi=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];var gi=function(){var e=new Array(bi.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function wi(e){var r={};e=mt(e);for(var t=0;t0)r[a[1]]=rt(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=Tr(r[a[1]])}return r}function ki(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=nt(r);a[a.length]=t?xt(e,r,t):_t(e,r)}function Ti(e,r){var t=r||{};var a=[Gr,xt("cp:coreProperties",null,{"xmlns:cp":It.CORE_PROPS,"xmlns:dc":It.dc,"xmlns:dcterms":It.dcterms,"xmlns:dcmitype":It.dcmitype,"xmlns:xsi":It.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)ki("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:Ct(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)ki("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:Ct(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var i=0;i!=bi.length;++i){var s=bi[i];var f=t.Props&&t.Props[s[1]]!=null?t.Props[s[1]]:e?e[s[1]]:null;if(f===true)f="1";else if(f===false)f="0";else if(typeof f=="number")f=String(f);if(f!=null)ki(s[0],f,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var Ei=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]];var yi=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function Si(e,r,t,a){var n=[];if(typeof e=="string")n=yt(e,a);else for(var i=0;i0)for(var o=0;o!==n.length;o+=2){l=+n[o+1].v;switch(n[o].v){case"Worksheets":;case"工作表":;case"Листы":;case"أوراق العمل":;case"ワークシート":;case"גליונות עבודה":;case"Arbeitsblätter":;case"Çalışma Sayfaları":;case"Feuilles de calcul":;case"Fogli di lavoro":;case"Folhas de cálculo":;case"Planilhas":;case"Regneark":;case"Hojas de cálculo":;case"Werkbladen":t.Worksheets=l;t.SheetNames=s.slice(f,f+l);break;case"Named Ranges":;case"Rangos con nombre":;case"名前付き一覧":;case"Benannte Bereiche":;case"Navngivne områder":t.NamedRanges=l;t.DefinedNames=s.slice(f,f+l);break;case"Charts":;case"Diagramme":t.Chartsheets=l;t.ChartNames=s.slice(f,f+l);break;}f+=l}}function _i(e,r,t){var a={};if(!r)r={};e=mt(e);Ei.forEach(function(t){var n=(e.match(gt(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=rt(n);break;case"bool":r[t[1]]=n==="true";break;case"raw":var i=e.match(new RegExp("<"+t[0]+"[^>]*>([\\s\\S]*?)"));if(i&&i.length>0)a[t[1]]=i[1];break;}});if(a.HeadingPairs&&a.TitlesOfParts)Si(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function Ai(e){var r=[],t=xt;if(!e)e={};e.Application="SheetJS";r[r.length]=Gr;r[r.length]=xt("Properties",null,{xmlns:It.EXT_PROPS,"xmlns:vt":It.vt});Ei.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=nt(String(e[a[1]]));break;case"bool":n=e[a[1]]?"true":"false";break;}if(n!==undefined)r[r.length]=t(a[0],n)});r[r.length]=t("HeadingPairs",t("vt:vector",t("vt:variant","Worksheets")+t("vt:variant",t("vt:i4",String(e.Worksheets))),{size:2,baseType:"variant"}));r[r.length]=t("TitlesOfParts",t("vt:vector",e.SheetNames.map(function(e){return""+nt(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var xi=/<[^>]+>[^<]*/g;function Ci(e,r){var t={},a="";var n=e.match(xi);if(n)for(var i=0;i!=n.length;++i){var s=n[i],f=Jr(s);switch(qr(f[0])){case"":a=null;break;default:if(s.indexOf("");var o=l[0].slice(4),c=l[1];switch(o){case"lpstr":;case"bstr":;case"lpwstr":t[a]=rt(c);break;case"bool":t[a]=ut(c);break;case"i1":;case"i2":;case"i4":;case"i8":;case"int":;case"uint":t[a]=parseInt(c,10);break;case"r4":;case"r8":;case"decimal":t[a]=parseFloat(c);break;case"filetime":;case"date":t[a]=Tr(c);break;case"cy":;case"error":t[a]=rt(c);break;default:if(o.slice(-1)=="/")break;if(r.WTF&&typeof console!=="undefined")console.warn("Unexpected",s,o,l);}}else if(s.slice(0,2)==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Ri={Title:"Title",Subject:"Subject",Author:"Author",Keywords:"Keywords",Comments:"Description",LastAuthor:"LastAuthor",RevNumber:"Revision",Application:"AppName",LastPrinted:"LastPrinted",CreatedDate:"Created",ModifiedDate:"LastSaved",Category:"Category",Manager:"Manager",Company:"Company",AppVersion:"Version",ContentStatus:"ContentStatus",Identifier:"Identifier",Language:"Language"};var Ni;function Ii(e,r,t){if(!Ni)Ni=lr(Ri);r=Ni[r]||r;e[r]=t}function Fi(e,r){var t=[];sr(Ri).map(function(e){for(var r=0;r'+n.join("")+""}function Pi(e){var r=e._R(4),t=e._R(4);return new Date((t/1e7*Math.pow(2,32)+r/1e7-11644473600)*1e3).toISOString().replace(/\.000/,"")}function Li(e){var r=typeof e=="string"?new Date(Date.parse(e)):e;var t=r.getTime()/1e3+11644473600;var a=t%Math.pow(2,32),n=(t-a)/Math.pow(2,32);a*=1e7;n*=1e7;var i=a/Math.pow(2,32)|0;if(i>0){a=a%Math.pow(2,32);n+=i}var s=wa(8);s._W(4,a);s._W(4,n);return s}function Mi(e,r,t){var a=e.l;var n=e._R(0,"lpstr-cp");if(t)while(e.l-a&3)++e.l;return n}function Ui(e,r,t){var a=e._R(0,"lpwstr");if(t)e.l+=4-(a.length+1&3)&3;return a}function Bi(e,r,t){if(r===31)return Ui(e);return Mi(e,r,t)}function Wi(e,r,t){return Bi(e,r,t===false?0:4)}function Hi(e,r){if(!r)throw new Error("VtUnalignedString must have positive length");return Bi(e,r,0)}function zi(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a){var n=e.l;t[a]=e._R(0,"lpwstr").replace(P,"");if(e.l-n&2)e.l+=2}return t}function Vi(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a)t[a]=e._R(0,"lpstr-cp").replace(P,"");return t}function Gi(e){var r=e.l;var t=Ki(e,zn);if(e[e.l]==0&&e[e.l+1]==0&&e.l-r&2)e.l+=2;var a=Ki(e,In);return[t,a]}function $i(e){var r=e._R(4);var t=[];for(var a=0;a>2+1<<2;return a}function Xi(e){var r=e._R(4);var t=e.slice(e.l,e.l+r);e.l+=r;if((r&3)>0)e.l+=4-(r&3)&3;return t}function Yi(e){var r={};r.Size=e._R(4);e.l+=r.Size+3-(r.Size-1)%4;return r}function Ki(e,r,t){var a=e._R(2),n,i=t||{};e.l+=2;if(r!==Dn)if(a!==r&&Vn.indexOf(r)===-1&&!((r&65534)==4126&&(a&65534)==4126))throw new Error("Expected type "+r+" saw "+a);switch(r===Dn?a:r){case 2:n=e._R(2,"i");if(!i.raw)e.l+=2;return n;case 3:n=e._R(4,"i");return n;case 11:return e._R(4)!==0;case 19:n=e._R(4);return n;case 30:return Mi(e,a,4).replace(P,"");case 31:return Ui(e);case 64:return Pi(e);case 65:return Xi(e);case 71:return Yi(e);case 80:return Wi(e,a,!i.raw).replace(P,"");case 81:return Hi(e,a).replace(P,"");case 4108:return $i(e);case 4126:;case 4127:return a==4127?zi(e):Vi(e);default:throw new Error("TypedPropertyValue unrecognized type "+r+" "+a);}}function Zi(e,r){var t=wa(4),a=wa(4);t._W(4,e==80?31:e);switch(e){case 3:a._W(-4,r);break;case 5:a=wa(8);a._W(8,r,"f");break;case 11:a._W(4,r?1:0);break;case 64:a=Li(r);break;case 31:;case 80:a=wa(4+2*(r.length+1)+(r.length%2?0:2));a._W(4,r.length+1);a._W(0,r,"dbcs");while(a.l!=a.length)a._W(1,0);break;default:throw new Error("TypedPropertyValue unrecognized type "+e+" "+r);}return F([t,a])}function Ji(e,r){var t=e.l;var a=e._R(4);var n=e._R(4);var i=[],s=0;var f=0;var o=-1,c={};for(s=0;s!=n;++s){var u=e._R(4);var h=e._R(4);i[s]=[u,h+t]}i.sort(function(e,r){return e[1]-r[1]});var d={};for(s=0;s!=n;++s){if(e.l!==i[s][1]){var v=true;if(s>0&&r)switch(r[i[s-1][0]].t){case 2:if(e.l+2===i[s][1]){e.l+=2;v=false}break;case 80:if(e.l<=i[s][1]){e.l=i[s][1];v=false}break;case 4108:if(e.l<=i[s][1]){e.l=i[s][1];v=false}break;}if((!r||s==0)&&e.l<=i[s][1]){v=false;e.l=i[s][1]}if(v)throw new Error("Read Error: Expected address "+i[s][1]+" at "+e.l+" :"+s)}if(r){if(i[s][0]==0&&i.length>s+1&&i[s][1]==i[s+1][1])continue;var p=r[i[s][0]];d[p.n]=Ki(e,p.t,{raw:true});if(p.p==="version")d[p.n]=String(d[p.n]>>16)+"."+("0000"+String(d[p.n]&65535)).slice(-4);if(p.n=="CodePage")switch(d[p.n]){case 0:d[p.n]=1252;case 874:;case 932:;case 936:;case 949:;case 950:;case 1250:;case 1251:;case 1253:;case 1254:;case 1255:;case 1256:;case 1257:;case 1258:;case 1e4:;case 1200:;case 1201:;case 1252:;case 65e3:;case-536:;case 65001:;case-535:l(f=d[p.n]>>>0&65535);break;default:throw new Error("Unsupported CodePage: "+d[p.n]);}}else{if(i[s][0]===1){f=d.CodePage=Ki(e,Nn);l(f);if(o!==-1){var m=e.l;e.l=i[o][1];c=ji(e,f);e.l=m}}else if(i[s][0]===0){if(f===0){o=s;e.l=i[s+1][1];continue}c=ji(e,f)}else{var b=c[i[s][0]];var g;switch(e[e.l]){case 65:e.l+=4;g=Xi(e);break;case 30:e.l+=4;g=Wi(e,e[e.l-4]).replace(/\u0000+$/,"");break;case 31:e.l+=4;g=Wi(e,e[e.l-4]).replace(/\u0000+$/,"");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=ss(e,4);break;case 64:e.l+=4;g=Tr(Pi(e));break;default:throw new Error("unparsed value: "+e[e.l]);}d[b]=g}}}e.l=t+a;return d}var qi=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function Qi(e){switch(typeof e){case"boolean":return 11;case"number":return(e|0)==e?3:5;case"string":return 31;case"object":if(e instanceof Date)return 64;break;}return-1}function es(e,r,t){var a=wa(8),n=[],i=[];var s=8,f=0;var l=wa(8),o=wa(8);l._W(4,2);l._W(4,1200);o._W(4,1);i.push(l);n.push(o);s+=8+l.length;if(!r){o=wa(8);o._W(4,0);n.unshift(o);var c=[wa(4)];c[0]._W(4,e.length);for(f=0;f-1||yi.indexOf(e[f][0])>-1)continue;if(e[f][1]==null)continue;var h=e[f][1],d=0;if(r){d=+r[e[f][0]];var v=t[d];if(v.p=="version"&&typeof h=="string"){var p=h.split(".");h=(+p[0]<<16)+(+p[1]||0)}l=Zi(v.t,h)}else{var m=Qi(h);if(m==-1){m=31;h=String(h)}l=Zi(m,h)}i.push(l);o=wa(8);o._W(4,!r?2+f:d);n.push(o);s+=8+l.length}var b=8*(i.length+1);for(f=0;f=12?2:1);var i="sbcs-cont";var s=r;if(a&&a.biff>=8)r=1200;if(!a||a.biff==8){var f=e._R(1);if(f){i="dbcs-cont"}}else if(a.biff==12){i="wstr"}if(a.biff>=2&&a.biff<=5)i="cpstr";var l=n?e._R(n,i):"";r=s;return l}function vs(e){var t=r;r=1200;var a=e._R(2),n=e._R(1);var i=n&4,s=n&8;var f=1+(n&1);var l=0,o;var c={};if(s)l=e._R(2);if(i)o=e._R(4);var u=f==2?"dbcs-cont":"sbcs-cont";var h=a===0?"":e._R(a,u);if(s)e.l+=4*l;if(i)e.l+=o;c.t=h;if(!s){c.raw=""+c.t+"";c.r=c.t}r=t;return c}function ps(e){var r=e.t||"",t=1;var a=wa(3+(t>1?2:0));a._W(2,r.length);a._W(1,(t>1?8:0)|1);if(t>1)a._W(2,t);var n=wa(2*r.length);n._W(2*r.length,r,"utf16le");var i=[a,n];return F(i)}function ms(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 bs(e,r,t){var a=e._R(t&&t.biff==2?1:2);if(a===0){e.l++;return""}return ms(e,a,t)}function gs(e,r,t){if(t.biff>5)return bs(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 ws(e,r,t){if(!t)t=wa(3+2*e.length);t._W(2,e.length);t._W(1,1);t._W(31,e,"utf16le");return t}function ks(e){var r=e._R(1);e.l++;var t=e._R(2);e.l+=2;return[r,t]}function Ts(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(P,"");if(a)e.l+=24;return n}function Es(e){var r=e._R(2);var t="";while(r-- >0)t+="../";var a=e._R(0,"lpstr-ansi");e.l+=2;if(e._R(2)!=57005)throw new Error("Bad FileMoniker");var n=e._R(4);if(n===0)return t+a.replace(/\\/g,"/");var i=e._R(4);if(e._R(2)!=3)throw new Error("Bad FileMoniker");var s=e._R(i>>1,"utf16le").replace(P,"");return t+s}function ys(e,r){var t=e._R(16);r-=16;switch(t){case"e0c9ea79f9bace118c8200aa004ba90b":return Ts(e,r);case"0303000000000000c000000000000046":return Es(e,r);default:throw new Error("Unsupported Moniker "+t);}}function Ss(e){var r=e._R(4);var t=r>0?e._R(r,"utf16le").replace(P,""):"";return t}function _s(e,r){if(!r)r=wa(6+e.length*2);r._W(4,1+e.length);for(var t=0;t-1?31:23;switch(a.charAt(0)){case"#":i=28;break;case".":i&=~2;break;}r._W(4,2);r._W(4,i);var s=[8,6815827,6619237,4849780,83];for(t=0;t-1?a.slice(0,n):a;r._W(4,2*(f.length+1));for(t=0;t-1?a.slice(n+1):"",r)}else{s="03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46".split(" ");for(t=0;t8?4:2;var n=e._R(a),i=e._R(a,"i"),s=e._R(a,"i");return[n,i,s]}function Ps(e){var r=e._R(2);var t=mn(e);return[r,t]}function Ls(e,r,t){e.l+=4;r-=4;var a=e.l+r;var n=ds(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 Ms(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 Us(e,r){if(!r)r=wa(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 Bs(e){var r=e._R(2);var t=e._R(2);var a=e._R(1);var n=e._R(1);return{s:{c:a,r:r},e:{c:n,r:t}}}var Ws=Bs;function Hs(e){e.l+=4;var r=e._R(2);var t=e._R(2);var a=e._R(2);e.l+=12;return[t,r,a]}function zs(e){var r={};e.l+=4;e.l+=16;r.fSharedNote=e._R(2);e.l+=4;return r}function Vs(e){var r={};e.l+=4;e.cf=e._R(2);return r}function Gs(e){e.l+=2;e.l+=e._R(2)}var $s={0:Gs,4:Gs,5:Gs,6:Gs,7:Vs,8:Gs,9:Gs,10:Gs,11:Gs,12:Gs,13:zs,14:Gs,15:Gs,16:Gs,17:Gs,18:Gs,19:Gs,20:Gs,21:Hs};function js(e,r){var t=e.l+r;var a=[];while(e.l=2){t.dt=e._R(2);e.l-=2}switch(t.BIFFVer){case 1536:;case 1280:;case 1024:;case 768:;case 512:;case 2:;case 7:break;default:if(r>6)throw new Error("Unexpected BIFF Ver "+t.BIFFVer);}e._R(r);return t}function Ys(e,r,t){var a=1536,n=16;switch(t.bookType){case"biff8":break;case"biff5":a=1280;n=8;break;case"biff4":a=4;n=6;break;case"biff3":a=3;n=6;break;case"biff2":a=2;n=4;break;case"xla":break;default:throw new Error("unsupported BIFF version");}var i=wa(n);i._W(2,a);i._W(2,r);if(n>4)i._W(2,29282);if(n>6)i._W(2,1997);if(n>8){i._W(2,49161);i._W(2,1);i._W(2,1798);i._W(2,0)}return i}function Ks(e,r){if(r===0)return 1200;if(e._R(2)!==1200){}return 1200}function Zs(e,r,t){if(t.enc){e.l+=r;return""}var a=e.l;var n=gs(e,0,t);e._R(r+a-e.l);return n}function Js(e,r){var t=!r||r.biff==8;var a=wa(t?112:54);a._W(r.biff==8?2:1,7);if(t)a._W(1,0);a._W(4,859007059);a._W(4,5458548|(t?0:536870912));while(a.l=8?2:1;var a=wa(8+t*e.name.length);a._W(4,e.pos);a._W(1,e.hs||0);a._W(1,e.dt);a._W(1,e.name.length);if(r.biff>=8)a._W(1,1);a._W(t*e.name.length,e.name,r.biff<8?"sbcs":"utf16le");var n=a.slice(0,a.l);n.l=a.l;return n}function rf(e,r){var t=e.l+r;var a=e._R(4);var n=e._R(4);var i=[];for(var s=0;s!=n&&e.l>15);n&=32767}var i={Unsynced:a&1,DyZero:(a&2)>>1,ExAsc:(a&4)>>2,ExDsc:(a&8)>>3};return[i,n]}function of(e){var r=e._R(2),t=e._R(2),a=e._R(2),n=e._R(2);var i=e._R(2),s=e._R(2),f=e._R(2);var l=e._R(2),o=e._R(2);return{Pos:[r,t],Dim:[a,n],Flags:i,CurTab:s,FirstTab:f,Selected:l,TabRatio:o}}function cf(){var e=wa(18);e._W(2,0);e._W(2,0);e._W(2,29280);e._W(2,17600);e._W(2,56);e._W(2,0);e._W(2,0);e._W(2,1);e._W(2,500);return e}function uf(e,r,t){if(t&&t.biff>=2&&t.biff<5)return{};var a=e._R(2);return{RTL:a&64}}function hf(e){var r=wa(18),t=1718;if(e&&e.RTL)t|=64;r._W(2,t);r._W(4,0);r._W(4,64);r._W(4,0);r._W(4,0);return r}function df(){}function vf(e,r,t){var a={dyHeight:e._R(2),fl:e._R(2)};switch(t&&t.biff||8){case 2:break;case 3:;case 4:e.l+=2;break;default:e.l+=10;break;}a.name=ds(e,0,t);return a}function pf(e,r){var t=e.name||"Arial";var a=r&&r.biff==5,n=a?15+t.length:16+2*t.length;var i=wa(n);i._W(2,(e.sz||12)*20);i._W(4,0);i._W(2,400);i._W(4,0);i._W(2,0);i._W(1,t.length);if(!a)i._W(1,1);i._W((a?1:2)*t.length,t,a?"sbcs":"utf16le");return i}function mf(e){var r=Rs(e);r.isst=e._R(4);return r}function bf(e,r,t,a){var n=wa(10);Ns(e,r,a,n);n._W(4,t);return n}function gf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=e.l+r;var n=Rs(e,6);if(t.biff==2)e.l++;var i=bs(e,a-e.l,t);n.val=i;return n}function wf(e,r,t,a,n){var i=!n||n.biff==8;var s=wa(6+2+ +i+(1+i)*t.length);Ns(e,r,a,s);s._W(2,t.length);if(i)s._W(1,1);s._W((1+i)*t.length,t,i?"utf16le":"sbcs");return s}function kf(e,r,t){var a=e._R(2);var n=gs(e,0,t);return[a,n]}function Tf(e,r,t,a){var n=t&&t.biff==5;if(!a)a=wa(n?3+r.length:5+2*r.length);a._W(2,e);a._W(n?1:2,r.length);if(!n)a._W(1,1);a._W((n?1:2)*r.length,r,n?"sbcs":"utf16le");var i=a.length>a.l?a.slice(0,a.l):a;if(i.l==null)i.l=i.length;return i}var Ef=gs;function yf(e,r,t){var a=e.l+r;var n=t.biff==8||!t.biff?4:2;var i=e._R(n),s=e._R(n);var f=e._R(2),l=e._R(2);e.l=a;return{s:{r:i,c:f},e:{r:s,c:l}}}function Sf(e,r){var t=r.biff==8||!r.biff?4:2;var a=wa(2*t+6);a._W(t,e.s.r);a._W(t,e.e.r+1);a._W(2,e.s.c);a._W(2,e.e.c+1);a._W(2,0);return a}function _f(e){var r=e._R(2),t=e._R(2);var a=Ps(e);return{r:r,c:t,ixfe:a[0],rknum:a[1]}}function Af(e,r){var t=e.l+r-2;var a=e._R(2),n=e._R(2);var i=[];while(e.l>26];if(!a.cellStyles)return n;n.alc=i&7;n.fWrap=i>>3&1;n.alcV=i>>4&7;n.fJustLast=i>>7&1;n.trot=i>>8&255;n.cIndent=i>>16&15;n.fShrinkToFit=i>>20&1;n.iReadOrder=i>>22&2;n.fAtrNum=i>>26&1;n.fAtrFnt=i>>27&1;n.fAtrAlc=i>>28&1;n.fAtrBdr=i>>29&1;n.fAtrPat=i>>30&1;n.fAtrProt=i>>31&1;n.dgLeft=s&15;n.dgRight=s>>4&15;n.dgTop=s>>8&15;n.dgBottom=s>>12&15;n.icvLeft=s>>16&127;n.icvRight=s>>23&127;n.grbitDiag=s>>30&3;n.icvTop=f&127;n.icvBottom=f>>7&127;n.icvDiag=f>>14&127;n.dgDiag=f>>21&15;n.icvFore=l&127;n.icvBack=l>>7&127;n.fsxButton=l>>14&1;return n}function Of(e,r,t){var a={};a.ifnt=e._R(2);a.numFmtId=e._R(2);a.flags=e._R(2);a.fStyle=a.flags>>2&1;r-=6;a.data=Cf(e,r,a.fStyle,t);return a}function Rf(e,r,t,a){var n=t&&t.biff==5;if(!a)a=wa(n?16:20);a._W(2,0);if(e.style){a._W(2,e.numFmtId||0);a._W(2,65524)}else{a._W(2,e.numFmtId||0);a._W(2,r<<4)}var i=0;if(e.numFmtId>0&&n)i|=1024;a._W(4,i);a._W(4,0);if(!n)a._W(4,0);a._W(2,0);return a}function Nf(e){e.l+=4;var r=[e._R(2),e._R(2)];if(r[0]!==0)r[0]--;if(r[1]!==0)r[1]--;if(r[0]>7||r[1]>7)throw new Error("Bad Gutters: "+r.join("|"));return r}function If(e){var r=wa(8);r._W(4,0);r._W(2,e[0]?e[0]+1:0);r._W(2,e[1]?e[1]+1:0);return r}function Ff(e,r,t){var a=Rs(e,6);if(t.biff==2||r==9)++e.l;var n=us(e,2);a.val=n;a.t=n===true||n===false?"b":"e";return a}function Df(e,r,t,a,n,i){var s=wa(8);Ns(e,r,a,s);hs(t,i,s);return s}function Pf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=Rs(e,6);var n=En(e,8);a.val=n;return a}function Lf(e,r,t,a){var n=wa(14);Ns(e,r,a,n);yn(t,n);return n}var Mf=Fs;function Uf(e,r,t){var a=e.l+r;var n=e._R(2);var i=e._R(2);t.sbcch=i;if(i==1025||i==14849)return[i,n];if(i<1||i>255)throw new Error("Unexpected SupBook type: "+i);var s=ms(e,i);var f=[];while(a>e.l)f.push(bs(e));return[i,n,s,f]}function Bf(e,r,t){var a=e._R(2);var n;var i={fBuiltIn:a&1,fWantAdvise:a>>>1&1,fWantPict:a>>>2&1,fOle:a>>>3&1,fOleLink:a>>>4&1,cf:a>>>5&1023,fIcon:a>>>15&1};if(t.sbcch===14849)n=Ls(e,r-2,t);i.body=n||e._R(r-2);if(typeof n==="string")i.Name=n;return i}function Wf(e,r,t){var a=e.l+r;var n=e._R(2);var i=e._R(1);var s=e._R(1);var f=e._R(t&&t.biff==2?1:2);var l=0;if(!t||t.biff>=5){if(t.biff!=5)e.l+=2;l=e._R(2);if(t.biff==5)e.l+=2;e.l+=4}var o=ms(e,s,t);if(n&32)o=Qn[o.charCodeAt(0)];var c=a-e.l;if(t&&t.biff==2)--c;var u=a==e.l||f===0||!(c>0)?[]:kd(e,c,t,f);return{chKey:i,Name:o,itab:l,rgce:u}}function Hf(e,r,t){if(t.biff<8)return zf(e,r,t);var a=[],n=e.l+r,i=e._R(t.biff>8?4:2);while(i--!==0)a.push(Ds(e,t.biff>8?12:6,t));if(e.l!=n)throw new Error("Bad ExternSheet: "+e.l+" != "+n);return a}function zf(e,r,t){if(e[e.l+1]==3)e[e.l]++;var a=ds(e,r,t);return a.charCodeAt(0)==3?a.slice(1):a}function Vf(e,r,t){if(t.biff<8){e.l+=r;return}var a=e._R(2);var n=e._R(2);var i=ms(e,a,t);var s=ms(e,n,t);return[i,s]}function Gf(e,r,t){var a=Bs(e,6);e.l++;var n=e._R(1);r-=8;return[Td(e,r,t),n,a]}function $f(e,r,t){var a=Ws(e,6);switch(t.biff){case 2:e.l++;r-=7;break;case 3:;case 4:e.l+=2;r-=8;break;default:e.l+=6;r-=12;}return[a,gd(e,r,t,a)]}function jf(e){var r=e._R(4)!==0;var t=e._R(4)!==0;var a=e._R(4);return[r,t,a]}function Xf(e,r,t){if(t.biff<8)return;var a=e._R(2),n=e._R(2);var i=e._R(2),s=e._R(2);var f=gs(e,0,t);if(t.biff<8)e._R(1);return[{r:a,c:n},f,s,i]}function Yf(e,r,t){return Xf(e,r,t)}function Kf(e,r){var t=[];var a=e._R(2);while(a--)t.push(Ms(e,r));return t}function Zf(e){var r=wa(2+e.length*8);r._W(2,e.length);for(var t=0;t=(c?f:2*f))break}if(n.length!==f&&n.length!==f*2){throw new Error("cchText: "+f+" != "+n.length)}e.l=a+r;return{t:n}}catch(h){e.l=a+r;return{t:n}}}function rl(e,r){var t=Ms(e,8);e.l+=16;var a=As(e,r-24);return[t,a]}function tl(e){var r=wa(24);var t=La(e[0]);r._W(2,t.r);r._W(2,t.r);r._W(2,t.c);r._W(2,t.c);var a="d0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" ");for(var n=0;n<16;++n)r._W(1,parseInt(a[n],16));return F([r,xs(e[1])])}function al(e,r){e._R(2);var t=Ms(e,8);var a=e._R((r-10)/2,"dbcs-cont");a=a.replace(P,"");return[t,a]}function nl(e){var r=e[1].Tooltip;var t=wa(10+2*(r.length+1));t._W(2,2048);var a=La(e[0]);t._W(2,a.r);t._W(2,a.r);t._W(2,a.c);t._W(2,a.c);for(var n=0;n0)t.push(Os(e,8));return t}function ll(e){var r=e._R(2);var t=[];while(r-- >0)t.push(Os(e,8));return t}function ol(e){e.l+=2;var r={cxfs:0,crc:0};r.cxfs=e._R(2);r.crc=e._R(4);return r}function cl(e,r,t){if(!t.cellStyles)return ga(e,r);var a=t&&t.biff>=12?4:2;var n=e._R(a);var i=e._R(a);var s=e._R(a);var f=e._R(a);var l=e._R(2);if(a==2)e.l+=2;var o={s:n,e:i,w:s,ixfe:f,flags:l};if(t.biff>=5||!t.biff)o.level=l>>8&7;return o}function ul(e,r){var t=wa(12);t._W(2,r);t._W(2,r);t._W(2,e.width*256);t._W(2,0);var a=0;if(e.hidden)a|=1;t._W(1,a);a=e.level||0;t._W(1,a);t._W(2,0);return t}function hl(e,r){var t={};if(r<32)return t;e.l+=16;t.header=En(e,8);t.footer=En(e,8);e.l+=2;return t}function dl(e,r,t){var a={area:false};if(t.biff!=5){e.l+=r;return a}var n=e._R(1);e.l+=3;if(n&16)a.area=true;return a}function vl(e){var r=wa(2*e);for(var t=0;t1048576)c=1e6;if(s!=2)u=i._R(2);var h=i._R(2);var d=t.codepage||1252;if(s!=2){i.l+=16;i._R(1);if(i[i.l]!==0)d=e[i[i.l]];i.l+=1;i.l+=2}if(o)i.l+=36;var v=[],p={};var m=Math.min(i.length,s==2?521:u-10-(l?264:0));var b=o?32:11;while(i.l0){if(i[i.l]===42){i.l+=h;continue}++i.l;n[++g]=[];w=0;for(w=0;w!=v.length;++w){var k=i.slice(i.l,i.l+v[w].len);i.l+=v[w].len;ba(k,0);var T=typeof a!=="undefined"?a.utils.decode(d,k):R(k);switch(v[w].type){case"C":if(T.trim().length)n[g][w]=T.replace(/\s+$/,"");break;case"D":if(T.length===8)n[g][w]=new Date(+T.slice(0,4),+T.slice(4,6)-1,+T.slice(6,8));else n[g][w]=T;break;case"F":n[g][w]=parseFloat(T.trim());break;case"+":;case"I":n[g][w]=o?k._R(-4,"i")^2147483648:k._R(4,"i");break;case"L":switch(T.trim().toUpperCase()){case"Y":;case"T":n[g][w]=true;break;case"N":;case"F":n[g][w]=false;break;case"":;case"?":break;default:throw new Error("DBF Unrecognized L:|"+T+"|");}break;case"M":if(!f)throw new Error("DBF Unexpected MEMO for type "+s.toString(16));n[g][w]="##MEMO##"+(o?parseInt(T.trim(),10):k._R(4));break;case"N":T=T.replace(/\u0000/g,"").trim();if(T&&T!=".")n[g][w]=+T||0;break;case"@":n[g][w]=new Date(k._R(-8,"f")-621356832e5);break;case"T":n[g][w]=new Date((k._R(4)-2440588)*864e5+k._R(4));break;case"Y":n[g][w]=k._R(4,"i")/1e4+k._R(4,"i")/1e4*Math.pow(2,32);break;case"O":n[g][w]=-k._R(-8,"f");break;case"B":if(l&&v[w].len==8){n[g][w]=k._R(8,"f");break};case"G":;case"P":k.l+=v[w].len;break;case"0":if(v[w].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+v[w].type);}}}if(s!=2)if(i.l=0)l(+f.codepage);if(f.type=="string")throw new Error("Cannot write DBF to JS string");var u=Ta();var h=ek(i,{header:1,raw:true,cellDates:true});var d=h[0],v=h.slice(1),p=i["!cols"]||[];var m=0,b=0,g=0,w=1;for(m=0;m250)A=250;_=((p[m]||{}).DBF||{}).type;if(_=="C"){if(p[m].DBF.len>A)A=p[m].DBF.len}if(S=="B"&&_=="N"){S="N";y[m]=p[m].DBF.dec;A=p[m].DBF.len}E[m]=S=="C"||_=="N"?A:o[S]||0;w+=E[m];T[m]=S}var C=u.next(32);C._W(4,318902576);C._W(4,v.length);C._W(2,296+32*g);C._W(2,w);for(m=0;m<4;++m)C._W(4,0);var O=+n[r]||3;C._W(4,0|O<<8);if(e[O]!=+f.codepage){console.error("DBF Unsupported codepage "+r+", using 1252");r=1252}for(m=0,b=0;m":190,"?":191,"{":223};var r=new RegExp("N("+sr(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm");var t=function(r,t){var a=e[t];return typeof a=="number"?p(a):a};var n=function(e,r,t){var a=r.charCodeAt(0)-32<<4|t.charCodeAt(0)-48;return a==59?e:p(a)};e["|"]=254;function i(e,r){switch(r.type){case"base64":return s(E(e),r);case"binary":return s(e,r);case"buffer":return s(y&&Buffer.isBuffer(e)?e.toString("binary"):R(e),r);case"array":return s(Er(e),r);}throw new Error("Unrecognized type "+r.type)}function s(e,i){var s=e.split(/[\n\r]+/),f=-1,o=-1,c=0,u=0,h=[];var d=[];var v=null;var p={},m=[],b=[],g=[];var w=0,k;var T={Workbook:{WBProps:{},Names:[]}};if(+i.codepage>=0)l(+i.codepage);for(;c!==s.length;++c){w=0;var E=s[c].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,n).replace(r,t);var y=E.replace(/;;/g,"\0").split(";").map(function(e){return e.replace(/\u0000/g,";")});var S=y[0],_;if(E.length>0)switch(S){case"ID":break;case"E":break;case"B":break;case"O":for(u=1;u=1&&A<=4)T.Workbook.WBProps.date1904=true}break;}break;case"W":break;case"P":switch(y[1].charAt(0)){case"P":d.push(E.slice(3).replace(/;;/g,";"));break;}break;case"NN":{var x={Sheet:0};for(u=1;u-1&&h[I][F];if(!L||!L[1])throw new Error("SYLK shared formula cannot find base");D=Bu(L[1],{r:f-I,c:o-F})}if(D){if(!h[f][o])h[f][o]={t:"n",f:D};else h[f][o].f=D}break;case"F":var M=0;for(u=1;u0){m[f].hpt=w;m[f].hpx=$o(w)}else if(w===0)m[f].hidden=true;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+E);}if(M<1)v=null;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+E);}}if(m.length>0)p["!rows"]=m;if(b.length>0)p["!cols"]=b;b.forEach(function(e){Ho(e)});if(i&&i.sheetRows)h=h.slice(0,i.sheetRows);return[h,p,T]}function f(e,r){var t=i(e,r);var a=t[0],n=t[1],s=t[2];var f=yr(r);f.date1904=(((s||{}).Workbook||{}).WBProps||{}).date1904;var l=Xa(a,f);sr(n).forEach(function(e){l[e]=n[e]});var o=$a(l,r);sr(s).forEach(function(e){o[e]=s[e]});o.bookType="sylk";return o}function o(e,r,t,a){var n="C;Y"+(t+1)+";X"+(a+1)+";K";switch(e.t){case"n":n+=e.v||0;if(e.f&&!e.F)n+=";E"+Uu(e.f,{r:t,c:a});break;case"b":n+=e.v?"TRUE":"FALSE";break;case"e":n+=e.w||e.v;break;case"d":n+='"'+(e.w||e.v)+'"';break;case"s":n+='"'+e.v.replace(/"/g,"").replace(/;/g,";;")+'"';break;}return n}function c(e,r){r.forEach(function(r,t){var a="F;W"+(t+1)+" "+(t+1)+" ";if(r.hidden)a+="0";else{if(typeof r.width=="number"&&!r.wpx)r.wpx=Lo(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=Mo(r.wpx);if(typeof r.wch=="number")a+=Math.round(r.wch)}if(a.charAt(a.length-1)!=" ")e.push(a)})}function u(e,r){r.forEach(function(r,t){var a="F;";if(r.hidden)a+="M0;";else if(r.hpt)a+="M"+20*r.hpt+";";else if(r.hpx)a+="M"+20*Go(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function h(e,r,t){var a=["ID;PSheetJS;N;E"],n=[];var i=za(e["!ref"]),s;var f=Array.isArray(e);var l="\r\n";var h=(((t||{}).Workbook||{}).WBProps||{}).date1904;a.push("P;PGeneral");a.push("F;P0;DG0G8;M255");if(e["!cols"])c(a,e["!cols"]);if(e["!rows"])u(a,e["!rows"]);a.push("B;Y"+(i.e.r-i.s.r+1)+";X"+(i.e.c-i.s.c+1)+";D"+[i.s.c,i.s.r,i.e.c,i.e.r].join(" "));a.push("O;L;D;B"+(h?";V4":"")+";K47;G100 0.001");for(var d=i.s.r;d<=i.e.r;++d){var v=[];for(var p=i.s.c;p<=i.e.c;++p){var m=Ma({r:d,c:p});s=f?(e[d]||[])[p]:e[m];if(!s||s.v==null&&(!s.f||s.F))continue;v.push(o(s,e,d,p,r))}n.push(v.join(l))}return a.join(l)+l+n.join(l)+l+"E"+l}return{to_workbook:f,from_sheet:h}}();var Rl=function(){function e(e,t){switch(t.type){case"base64":return r(E(e),t);case"binary":return r(e,t);case"buffer":return r(y&&Buffer.isBuffer(e)?e.toString("binary"):R(e),t);case"array":return r(Er(e),t);}throw new Error("Unrecognized type "+t.type)}function r(e,r){var t=e.split("\n"),a=-1,n=-1,i=0,s=[];for(;i!==t.length;++i){if(t[i].trim()==="BOT"){s[++a]=[];n=0;continue}if(a<0)continue;var f=t[i].trim().split(",");var l=f[0],o=f[1];++i;var c=t[i]||"";while((c.match(/["]/g)||[]).length&1&&i=0&&i[s].length===0)--s;var f=10,l=0;var o=0;for(;o<=s;++o){l=i[o].indexOf(" ");if(l==-1)l=i[o].length;else l++;f=Math.max(f,l)}for(o=0;o<=s;++o){n[o]=[];var c=0;e(i[o].slice(0,f).trim(),n,o,c,a);for(c=1;c<=(i[o].length-f)/10+1;++c)e(i[o].slice(f+(c-1)*10,f+c*10).trim(),n,o,c,a)}if(a.sheetRows)n=n.slice(0,a.sheetRows);return n}var t={44:",",9:"\t",59:";",124:"|"};var n={44:3,9:2,59:1,124:0};function i(e){var r={},a=false,i=0,s=0;for(;i0)g();n["!ref"]=Ba(s);return n}function f(e,t){if(!(t&&t.PRN))return s(e,t);if(t.FS)return s(e,t);if(e.slice(0,4)=="sep=")return s(e,t);if(e.indexOf("\t")>=0||e.indexOf(",")>=0||e.indexOf(";")>=0)return s(e,t);return Xa(r(e,t),t)}function l(e,r){var t="",n=r.type=="string"?[0,0,0,0]:Cw(e,r);switch(r.type){case"base64":t=E(e);break;case"binary":t=e;break;case"buffer":if(r.codepage==65001)t=e.toString("utf8");else if(r.codepage&&typeof a!=="undefined")t=a.utils.decode(r.codepage,e);else t=y&&Buffer.isBuffer(e)?e.toString("binary"):R(e);break;case"array":t=Er(e);break;case"string":t=e;break;default:throw new Error("Unrecognized type "+r.type);}if(n[0]==239&&n[1]==187&&n[2]==191)t=mt(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=mt(t);else if(r.type=="binary"&&typeof a!=="undefined"&&r.codepage)t=a.utils.decode(r.codepage,a.utils.encode(28591,t));if(t.slice(0,19)=="socialcalc:version:")return Nl.to_sheet(r.type=="string"?t:mt(t),r);return f(t,r)}function o(e,r){return $a(l(e,r),r)}function c(e){var r=[];var t=za(e["!ref"]),a;var n=Array.isArray(e);for(var i=t.s.r;i<=t.e.r;++i){var s=[];for(var f=t.s.c;f<=t.e.c;++f){var l=Ma({r:i,c:f});a=n?(e[i]||[])[f]:e[l];if(!a||a.v==null){s.push(" ");continue}var o=(a.w||(Ga(a),a.w)||"").slice(0,10);while(o.length<10)o+=" ";s.push(o+(f===0?" ":""))}r.push(s.join(""))}return r.join("\n")}return{to_workbook:o,to_sheet:l,from_sheet:c}}();function Fl(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=Ol.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 Il.to_workbook(e,r)}}var Dl=function(){function e(e,r,t){if(!e)return;ba(e,e.l||0);var a=t.Enum||H;while(e.l=16&&r[14]==5&&r[15]===108)throw new Error("Unsupported Works 3 for Mac file")}}if(r[2]==2){a.Enum=H;e(r,function(e,r,t){switch(t){case 0:a.vers=e;if(e>=4096)a.qpro=true;break;case 255:a.vers=e;a.works=true;break;case 6:u=e;break;case 204:if(e)s=e;break;case 222:s=e;break;case 15:;case 51:if((!a.qpro&&!a.works||t==51)&&e[1].v.charCodeAt(0)<48)e[1].v=e[1].v.slice(1);if(a.works||a.works2)e[1].v=e[1].v.replace(/\r\n/g,"\n");case 13:;case 14:;case 16:if(t==14&&(e[2]&112)==112&&(e[2]&15)>1&&(e[2]&15)<15){e[1].z=a.dateNF||Z[14];if(a.cellDates){e[1].t="d";e[1].v=mr(e[1].v)}}if(a.qpro){if(e[3]>f){n["!ref"]=Ba(u);l[i]=n;o.push(i);n=a.dense?[]:{};u={s:{r:0,c:0},e:{r:0,c:0}};f=e[3];i=s||"Sheet"+(f+1);s=""}}var c=a.dense?(n[e[0].r]||[])[e[0].c]:n[Ma(e[0])];if(c){c.t=e[1].t;c.v=e[1].v;if(e[1].z!=null)c.z=e[1].z;if(e[1].f!=null)c.f=e[1].f;break}if(a.dense){if(!n[e[0].r])n[e[0].r]=[];n[e[0].r][e[0].c]=e[1]}else n[Ma(e[0])]=e[1];break;case 21509:a.works2=true;break;default:;}},a)}else if(r[2]==26||r[2]==14){a.Enum=z;if(r[2]==14){a.qpro=true;r.l=0}e(r,function(e,r,t){switch(t){case 204:i=e;break;case 22:if(e[1].v.charCodeAt(0)<48)e[1].v=e[1].v.slice(1);e[1].v=e[1].v.replace(/\x0F./g,function(e){return String.fromCharCode(e.charCodeAt(1)-32)}).replace(/\r\n/g,"\n");case 23:;case 24:;case 25:;case 37:;case 39:;case 40:if(e[3]>f){n["!ref"]=Ba(u);l[i]=n;o.push(i);n=a.dense?[]:{};u={s:{r:0,c:0},e:{r:0,c:0}};f=e[3];i="Sheet"+(f+1)}if(h>0&&e[0].r>=h)break;if(a.dense){if(!n[e[0].r])n[e[0].r]=[];n[e[0].r][e[0].c]=e[1]}else n[Ma(e[0])]=e[1];if(u.e.c=0)l(+t.codepage);if(t.type=="string")throw new Error("Cannot write WK1 to JS string");var a=Ta();var n=za(e["!ref"]);var s=Array.isArray(e);var f=[];Pb(a,0,i(1030));Pb(a,6,o(n));var c=Math.min(n.e.r,8191);for(var u=n.s.r;u<=c;++u){var d=Ca(u);for(var v=n.s.c;v<=n.e.c;++v){if(u===n.s.r)f[v]=Ia(v);var m=f[v]+d;var b=s?(e[u]||[])[v]:e[m];if(!b||b.t=="z")continue;if(b.t=="n"){if((b.v|0)==b.v&&b.v>=-32768&&b.v<=32767)Pb(a,13,p(u,v,b.v));else Pb(a,14,g(u,v,b.v))}else{var w=Ga(b);Pb(a,15,h(u,v,w.slice(0,239)))}}}Pb(a,1);return a.end()}function n(e,r){var t=r||{};if(+t.codepage>=0)l(+t.codepage);if(t.type=="string")throw new Error("Cannot write WK3 to JS string");var a=Ta();Pb(a,0,s(e));for(var n=0,i=0;n8191)t=8191;r._W(2,t);r._W(1,n);r._W(1,a);r._W(2,0);r._W(2,0);r._W(1,1);r._W(1,2);r._W(4,0);r._W(4,0);return r}function f(e,r,t){var a={s:{c:0,r:0},e:{c:0,r:0}};if(r==8&&t.qpro){a.s.c=e._R(1);e.l++;a.s.r=e._R(2);a.e.c=e._R(1);e.l++;a.e.r=e._R(2);return a}a.s.c=e._R(2);a.s.r=e._R(2);if(r==12&&t.qpro)e.l+=2;a.e.c=e._R(2);a.e.r=e._R(2);if(r==12&&t.qpro)e.l+=2;if(a.s.c==65535)a.s.c=a.e.c=a.s.r=a.e.r=0;return a}function o(e){var r=wa(8);r._W(2,e.s.c);r._W(2,e.s.r);r._W(2,e.e.c);r._W(2,e.e.r);return r}function c(e,r,t){var a=[{c:0,r:0},{t:"n",v:0},0,0];if(t.qpro&&t.vers!=20768){a[0].c=e._R(1);a[3]=e._R(1);a[0].r=e._R(2);e.l+=2}else if(t.works){a[0].c=e._R(2);a[0].r=e._R(2);a[2]=e._R(2)}else{a[2]=e._R(1);a[0].c=e._R(2);a[0].r=e._R(2)}return a}function u(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].t="s";if(t.vers==20768){e.l++;var i=e._R(1);n[1].v=e._R(i,"utf8");return n}if(t.qpro)e.l++;n[1].v=e._R(a-e.l,"cstr");return n}function h(e,r,t){var a=wa(7+t.length);a._W(1,255);a._W(2,r);a._W(2,e);a._W(1,39);for(var n=0;n=128?95:i)}a._W(1,0);return a}function d(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].t="s";if(t.vers==20768){var i=e._R(1);n[1].v=e._R(i,"utf8");return n}n[1].v=e._R(a-e.l,"cstr");return n}function v(e,r,t){var a=c(e,r,t);a[1].v=e._R(2,"i");return a}function p(e,r,t){var a=wa(7);a._W(1,255);a._W(2,r);a._W(2,e);a._W(2,t,"i");return a}function m(e,r,t){var a=c(e,r,t);a[1].v=e._R(8,"f");return a}function g(e,r,t){var a=wa(13);a._W(1,255);a._W(2,r);a._W(2,e);a._W(8,t,"f");return a}function w(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].v=e._R(8,"f");if(t.qpro)e.l=a;else{var i=e._R(2);S(e.slice(e.l,e.l+i),n);e.l+=i}return n}function k(e,r,t){var a=r&32768;r&=~32768;r=(a?e:0)+(r>=8192?r-16384:r);return(a?"":"$")+(t?Ia(r):Ca(r))}var T={31:["NA",0],33:["ABS",1],34:["TRUNC",1],35:["SQRT",1],36:["LOG",1],37:["LN",1],38:["PI",0],39:["SIN",1],40:["COS",1],41:["TAN",1],42:["ATAN2",2],43:["ATAN",1],44:["ASIN",1],45:["ACOS",1],46:["EXP",1],47:["MOD",2],49:["ISNA",1],50:["ISERR",1],51:["FALSE",0],52:["TRUE",0],53:["RAND",0],63:["ROUND",2],68:["ISNUMBER",1],69:["ISTEXT",1],70:["LEN",1],71:["VALUE",1],73:["MID",3],74:["CHAR",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],102:["UPPER",1],103:["LOWER",1],107:["PROPER",1],109:["TRIM",1],111:["T",1]};var y=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function S(e,r){ba(e,0);var t=[],a=0,n="",i="",s="",f="";while(e.lt.length){console.error("WK1 bad formula parse 0x"+l.toString(16)+":|"+t.join("|")+"|");return}var h=t.slice(-a);t.length-=a;t.push(T[l][0]+"("+h.join(",")+")")}else if(l<=7)return console.error("WK1 invalid opcode "+l.toString(16));else if(l<=24)return console.error("WK1 unsupported op "+l.toString(16));else if(l<=30)return console.error("WK1 invalid opcode "+l.toString(16));else if(l<=115)return console.error("WK1 unsupported function opcode "+l.toString(16));else return console.error("WK1 unrecognized opcode "+l.toString(16));}}if(t.length==1)r[1].f=""+t[0];else console.error("WK1 bad formula parse |"+t.join("|")+"|")}function _(e){var r=[{c:0,r:0},{t:"n",v:0},0];r[0].r=e._R(2);r[3]=e[e.l++];r[0].c=e[e.l++];return r}function A(e,r){var t=_(e,r);t[1].t="s";t[1].v=e._R(r-4,"cstr");return t}function x(e,r,t,a){var n=wa(6+a.length);n._W(2,e);n._W(1,t);n._W(1,r);n._W(1,39);for(var i=0;i=128?95:s)}n._W(1,0);return n}function O(e,r){var t=_(e,r);t[1].v=e._R(2);var a=t[1].v>>1;if(t[1].v&1){switch(a&7){case 0:a=(a>>3)*5e3;break;case 1:a=(a>>3)*500;break;case 2:a=(a>>3)/20;break;case 3:a=(a>>3)/200;break;case 4:a=(a>>3)/2e3;break;case 5:a=(a>>3)/2e4;break;case 6:a=(a>>3)/16;break;case 7:a=(a>>3)/64;break;}}t[1].v=a;return t}function R(e,r){var t=_(e,r);var a=e._R(4);var n=e._R(4);var i=e._R(2);if(i==65535){if(a===0&&n===3221225472){t[1].t="e";t[1].v=15}else if(a===0&&n===3489660928){t[1].t="e";t[1].v=42}else t[1].v=0;return t}var s=i&32768;i=(i&32767)-16446;t[1].v=(1-s*2)*(n*Math.pow(2,i+32)+a*Math.pow(2,i));return t}function N(e,r,t,a){var n=wa(14);n._W(2,e);n._W(1,t);n._W(1,r);if(a==0){n._W(4,0);n._W(4,0);n._W(2,65535);return n}var i=0,s=0,f=0,l=0;if(a<0){i=1;a=-a}s=Math.log2(a)|0;a/=Math.pow(2,s-31);l=a>>>0;if((l&2147483648)==0){a/=2;++s;l=a>>>0}a-=l;l|=2147483648;l>>>=0;a*=Math.pow(2,32);f=a>>>0;n._W(4,f);n._W(4,l);s+=16383+(i?32768:0);n._W(2,s);return n}function I(e,r){var t=R(e,14);e.l+=r-14;return t}function F(e,r){var t=_(e,r);var a=e._R(4);t[1].v=a>>6;return t}function D(e,r){var t=_(e,r);var a=e._R(8,"f");t[1].v=a;return t}function P(e,r){var t=D(e,12);e.l+=r-12;return t}function L(e,r){return e[e.l+r-1]==0?e._R(r,"cstr"):""}function M(e,r){var t=e[e.l++];if(t>r-1)t=r-1;var a="";while(a.length127?95:n}t[t.l++]=0;return t}var H={0:{n:"BOF",f:ls},1:{n:"EOF"},2:{n:"CALCMODE"},3:{n:"CALCORDER"},4:{n:"SPLIT"},5:{n:"SYNC"},6:{n:"RANGE",f:f},7:{n:"WINDOW1"},8:{n:"COLW1"},9:{n:"WINTWO"},10:{n:"COLW2"},11:{n:"NAME"},12:{n:"BLANK"},13:{n:"INTEGER",f:v},14:{n:"NUMBER",f:m},15:{n:"LABEL",f:u},16:{n:"FORMULA",f:w},24:{n:"TABLE"},25:{n:"ORANGE"},26:{n:"PRANGE"},27:{n:"SRANGE"},28:{n:"FRANGE"},29:{n:"KRANGE1"},32:{n:"HRANGE"},35:{n:"KRANGE2"},36:{n:"PROTEC"},37:{n:"FOOTER"},38:{n:"HEADER"},39:{n:"SETUP"},40:{n:"MARGINS"},41:{n:"LABELFMT"},42:{n:"TITLES"},43:{n:"SHEETJS"},45:{n:"GRAPH"},46:{n:"NGRAPH"},47:{n:"CALCCOUNT"},48:{n:"UNFORMATTED"},49:{n:"CURSORW12"},50:{n:"WINDOW"},51:{n:"STRING",f:d},55:{n:"PASSWORD"},56:{n:"LOCKED"},60:{n:"QUERY"},61:{n:"QUERYNAME"},62:{n:"PRINT"},63:{n:"PRINTNAME"},64:{n:"GRAPH2"},65:{n:"GRAPHNAME"},66:{n:"ZOOM"},67:{n:"SYMSPLIT"},68:{n:"NSROWS"},69:{n:"NSCOLS"},70:{n:"RULER"},71:{n:"NNAME"},72:{n:"ACOMM"},73:{n:"AMACRO"},74:{n:"PARSE"},102:{n:"PRANGES??"},103:{n:"RRANGES??"},104:{n:"FNAME??"},105:{n:"MRANGES??"},204:{n:"SHEETNAMECS",f:L},222:{n:"SHEETNAMELP",f:M},255:{n:"BOF",f:ls},65535:{n:""}};var z={0:{n:"BOF"},1:{n:"EOF"},2:{n:"PASSWORD"},3:{n:"CALCSET"},4:{n:"WINDOWSET"},5:{n:"SHEETCELLPTR"},6:{n:"SHEETLAYOUT"},7:{n:"COLUMNWIDTH"},8:{n:"HIDDENCOLUMN"},9:{n:"USERRANGE"},10:{n:"SYSTEMRANGE"},11:{n:"ZEROFORCE"},12:{n:"SORTKEYDIR"},13:{n:"FILESEAL"},14:{n:"DATAFILLNUMS"},15:{n:"PRINTMAIN"},16:{n:"PRINTSTRING"},17:{n:"GRAPHMAIN"},18:{n:"GRAPHSTRING"},19:{n:"??"},20:{n:"ERRCELL"},21:{n:"NACELL"},22:{n:"LABEL16",f:A},23:{n:"NUMBER17",f:R},24:{n:"NUMBER18",f:O},25:{n:"FORMULA19",f:I},26:{n:"FORMULA1A"},27:{n:"XFORMAT",f:B},28:{n:"DTLABELMISC"},29:{n:"DTLABELCELL"},30:{n:"GRAPHWINDOW"},31:{n:"CPA"},32:{n:"LPLAUTO"},33:{n:"QUERY"},34:{n:"HIDDENSHEET"},35:{n:"??"},37:{n:"NUMBER25",f:F},38:{n:"??"},39:{n:"NUMBER27",f:D},40:{n:"FORMULA28",f:P},142:{n:"??"},147:{n:"??"},150:{n:"??"},151:{n:"??"},152:{n:"??"},153:{n:"??"},154:{n:"??"},155:{n:"??"},156:{n:"??"},163:{n:"??"},174:{n:"??"},175:{n:"??"},176:{n:"??"},177:{n:"??"},184:{n:"??"},185:{n:"??"},186:{n:"??"},187:{n:"??"},188:{n:"??"},195:{n:"??"},201:{n:"??"},204:{n:"SHEETNAMECS",f:L},205:{n:"??"},206:{n:"??"},207:{n:"??"},208:{n:"??"},256:{n:"??"},259:{n:"??"},260:{n:"??"},261:{n:"??"},262:{n:"??"},263:{n:"??"},265:{n:"??"},266:{n:"??"},267:{n:"??"},268:{n:"??"},270:{n:"??"},271:{n:"??"},384:{n:"??"},389:{n:"??"},390:{n:"??"},393:{n:"??"},396:{n:"??"},512:{n:"??"},514:{n:"??"},513:{n:"??"},516:{n:"??"},517:{n:"??"},640:{n:"??"},641:{n:"??"},642:{n:"??"},643:{n:"??"},644:{n:"??"},645:{n:"??"},646:{n:"??"},647:{n:"??"},648:{n:"??"},658:{n:"??"},659:{n:"??"},660:{n:"??"},661:{n:"??"},662:{n:"??"},665:{n:"??"},666:{n:"??"},768:{n:"??"},772:{n:"??"},1537:{n:"SHEETINFOQP",f:U},1600:{n:"??"},1602:{n:"??"},1793:{n:"??"},1794:{n:"??"},1795:{n:"??"},1796:{n:"??"},1920:{n:"??"},2048:{n:"??"},2049:{n:"??"},2052:{n:"??"},2688:{n:"??"},10998:{n:"??"},12849:{n:"??"},28233:{n:"??"},28484:{n:"??"},65535:{n:""}};function V(e,r){ba(e,0);var t=r||{};if(b!=null&&t.dense==null)t.dense=b;var a=t.dense?[]:{};var n=[],i="",s=[];var f={s:{r:-1,c:-1},e:{r:-1,c:-1}};var l=0,o=0,c=0,u=0;var h={SheetNames:[],Sheets:{}};e:while(e.l255||f.s.r>999999)break;if(f.e.cc)f.s.c=c;u=p._R(4);if(f.s.r>u)f.s.r=u;u=p._R(4);if(f.e.ru)f.s.r=u;if(f.e.r0&&l>=0){if(w&32)switch(w&31){case 2:g={t:"n",v:g.v+T&65535};break;case 3:g={t:"n",v:g.v+T&65535};if(g.v>32767)g.v-=65536;break;case 7:g={t:"s",v:n[o=o+T>>>0]};break;default:throw"Cannot apply delta for QPW cell type "+(w&31);}else switch(w&31){case 1:g={t:"z"};break;case 2:g={t:"n",v:p._R(2)};break;case 7:g={t:"s",v:n[o=p._R(4)-1]};break;default:throw"Cannot apply repeat for QPW cell type "+(w&31);}if(!(!t.sheetStubs&&g.t=="z")){if(Array.isArray(a)){if(!a[u])a[u]=[];a[u][c]=g}else a[Ma({r:u,c:c})]=g}++u;--l}}}break;default:break;}e.l+=v}return h}return{sheet_to_wk1:a,book_to_wk3:n,to_workbook:r}}();function Pl(e){var r={},t=e.match(Yr),a=0;var n=false;if(t)for(;a!=t.length;++a){var s=Jr(t[a]);switch(s[0].replace(/\w*:/g,"")){case"":;case"":r.shadow=1;break;case"":break;case"":;case"":r.outline=1;break;case"":break;case"":;case"":r.strike=1;break;case"":break;case"":;case"":r.u=1;break;case"":break;case"":;case"":r.b=1;break;case"":break;case"":;case"":r.i=1;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":break;case"":n=false;break;default:if(s[0].charCodeAt(1)!==47&&!n)throw new Error("Unrecognized rich format "+s[0]);}}return r}var Ll=function(){var e=gt("t"),r=gt("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:rt(a[1])};var i=t.match(r);if(i)n.s=Pl(i[1]);return n}var a=/<(?:\w+:)?r>/g,n=/<\/(?:\w+:)?r>/;return function i(e){return e.replace(a,"").split(n).map(t).filter(function(e){return e.v})}}();var Ml=function zk(){var e=/(\r\n|\n)/g;function r(e,r,t){var a=[];if(e.u)a.push("text-decoration: underline;");if(e.uval)a.push("text-underline-style:"+e.uval+";");if(e.sz)a.push("font-size:"+e.sz+"pt;");if(e.outline)a.push("text-effect: outline;");if(e.shadow)a.push("text-shadow: auto;");r.push('');if(e.b){r.push("");t.push("")}if(e.i){r.push("");t.push("")}if(e.strike){r.push("");t.push("")}var n=e.valign||"";if(n=="superscript"||n=="super")n="sup";else if(n=="subscript")n="sub";if(n!=""){r.push("<"+n+">");t.push("")}t.push("");return e}function t(t){var a=[[],t.v,[]];if(!t.v)return"";if(t.s)r(t.s,a[0],a[2]);return a[0].join("")+a[1].replace(e,"
")+a[2].join("")}return function a(e){return e.map(t).join("")}}();var Ul=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,Bl=/<(?:\w+:)?r>/;var Wl=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function Hl(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=rt(mt(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""),true);a.r=mt(e);if(t)a.h=ft(a.t)}else if(e.match(Bl)){a.r=mt(e); -a.t=rt(mt((e.replace(Wl,"").match(Ul)||[]).join("").replace(Yr,"")),true);if(t)a.h=Ml(Ll(a.r))}return a}var zl=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var Vl=/<(?:\w+:)?(?:si|sstItem)>/g;var Gl=/<\/(?:\w+:)?(?:si|sstItem)>/;function $l(e,r){var t=[],a="";if(!e)return t;var n=e.match(zl);if(n){a=n[2].replace(Vl,"").split(Gl);for(var i=0;i!=a.length;++i){var s=Hl(a[i].trim(),r);if(s!=null)t[t.length]=s}n=Jr(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var jl=/^\s|\s$|[\t\n\r]/;function Xl(e,r){if(!r.bookSST)return"";var t=[Gr];t[t.length]=xt("sst",null,{xmlns:Ft[0],count:e.Count,uniqueCount:e.Unique});for(var a=0;a!=e.length;++a){if(e[a]==null)continue;var n=e[a];var i="";if(n.r)i+=n.r;else{i+=""}i+="";t[t.length]=i}if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}function Yl(e){return[e._R(4),e._R(4)]}function Kl(e,r){var t=[];var a=false;ka(e,function n(e,i,s){switch(s){case 159:t.Count=e[0];t.Unique=e[1];break;case 19:t.push(e);break;case 160:return true;case 35:a=true;break;case 36:a=false;break;default:if(i.T){}if(!a||r.WTF)throw new Error("Unexpected record 0x"+s.toString(16));}});return t}function Zl(e,r){if(!r)r=wa(8);r._W(4,e.Count);r._W(4,e.Unique);return r}var Jl=rn;function ql(e){var r=Ta();Ea(r,159,Zl(e));for(var t=0;t=4)e.l+=r-4;return t}function ro(e){var r={};r.id=e._R(0,"lpp4");r.R=eo(e,4);r.U=eo(e,4);r.W=eo(e,4);return r}function to(e){var r=e._R(4);var t=e.l+r-4;var a={};var n=e._R(4);var i=[];while(n-- >0)i.push({t:e._R(4),v:e._R(0,"lpp4")});a.name=e._R(0,"lpp4");a.comps=i;if(e.l!=t)throw new Error("Bad DataSpaceMapEntry: "+e.l+" != "+t);return a}function ao(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(to(e));return r}function no(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(e._R(0,"lpp4"));return r}function io(e){var r={};e._R(4);e.l+=4;r.id=e._R(0,"lpp4");r.name=e._R(0,"lpp4");r.R=eo(e,4);r.U=eo(e,4);r.W=eo(e,4);return r}function so(e){var r=io(e);r.ename=e._R(0,"8lpp4");r.blksz=e._R(4);r.cmode=e._R(4);if(e._R(4)!=4)throw new Error("Bad !Primary record");return r}function fo(e,r){var t=e.l+r;var a={};a.Flags=e._R(4)&63;e.l+=4;a.AlgID=e._R(4);var n=false;switch(a.AlgID){case 26126:;case 26127:;case 26128:n=a.Flags==36;break;case 26625:n=a.Flags==4;break;case 0:n=a.Flags==16||a.Flags==4||a.Flags==36;break;default:throw"Unrecognized encryption algorithm: "+a.AlgID;}if(!n)throw new Error("Encryption Flags/AlgID mismatch");a.AlgIDHash=e._R(4);a.KeySize=e._R(4);a.ProviderType=e._R(4);e.l+=8;a.CSPName=e._R(t-e.l>>1,"utf16le");e.l=t;return a}function lo(e,r){var t={},a=e.l+r;e.l+=4;t.Salt=e.slice(e.l,e.l+16);e.l+=16;t.Verifier=e.slice(e.l,e.l+16);e.l+=16;e._R(4);t.VerifierHash=e.slice(e.l,a);e.l=a;return t}function oo(e){var r=eo(e);switch(r.Minor){case 2:return[r.Minor,co(e,r)];case 3:return[r.Minor,uo(e,r)];case 4:return[r.Minor,ho(e,r)];}throw new Error("ECMA-376 Encrypted file unrecognized Version: "+r.Minor)}function co(e){var r=e._R(4);if((r&63)!=36)throw new Error("EncryptionInfo mismatch");var t=e._R(4);var a=fo(e,t);var n=lo(e,e.length-e.l);return{t:"Std",h:a,v:n}}function uo(){throw new Error("File is password-protected: ECMA-376 Extensible")}function ho(e){var r=["saltSize","blockSize","keyBits","hashSize","cipherAlgorithm","cipherChaining","hashAlgorithm","saltValue"];e.l+=4;var t=e._R(e.length-e.l,"utf8");var a={};t.replace(Yr,function n(e){var t=Jr(e);switch(qr(t[0])){case"":break;case"":;case"":break;case"":break;case"4||a.Major<2)throw new Error("unrecognized major version code: "+a.Major);t.Flags=e._R(4);r-=4;var n=e._R(4);r-=4;t.EncryptionHeader=fo(e,n);r-=n;t.EncryptionVerifier=lo(e,r);return t}function po(e){var r={};var t=r.EncryptionVersionInfo=eo(e,4);if(t.Major!=1||t.Minor!=1)throw"unrecognized version code "+t.Major+" : "+t.Minor;r.Salt=e._R(16);r.EncryptedVerifier=e._R(16);r.EncryptedVerifierHash=e._R(16);return r}function mo(e){var r=0,t;var a=Ql(e);var n=a.length+1,i,s;var f,l,o;t=A(n);t[0]=a.length;for(i=1;i!=n;++i)t[i]=a[i-1];for(i=n-1;i>=0;--i){s=t[i];f=(r&16384)===0?0:1;l=r<<1&32767;o=f|l;r=o^s}return r^52811}var bo=function(){var e=[187,255,255,186,255,255,185,128,0,190,15,0,191,15,0];var r=[57840,7439,52380,33984,4364,3600,61902,12606,6258,57657,54287,34041,10252,43370,20163];var t=[44796,19929,39858,10053,20106,40212,10761,31585,63170,64933,60267,50935,40399,11199,17763,35526,1453,2906,5812,11624,23248,885,1770,3540,7080,14160,28320,56640,55369,41139,20807,41614,21821,43642,17621,28485,56970,44341,19019,38038,14605,29210,60195,50791,40175,10751,21502,43004,24537,18387,36774,3949,7898,15796,31592,63184,47201,24803,49606,37805,14203,28406,56812,17824,35648,1697,3394,6788,13576,27152,43601,17539,35078,557,1114,2228,4456,30388,60776,51953,34243,7079,14158,28316,14128,28256,56512,43425,17251,34502,7597,13105,26210,52420,35241,883,1766,3532,4129,8258,16516,33032,4657,9314,18628];var a=function(e){return(e/2|e*128)&255};var n=function(e,r){return a(e^r)};var i=function(e){var a=r[e.length-1];var n=104;for(var i=e.length-1;i>=0;--i){var s=e[i];for(var f=0;f!=7;++f){if(s&64)a^=t[n];s*=2;--n}}return a};return function(r){var t=Ql(r);var a=i(t);var s=t.length;var f=A(16);for(var l=0;l!=16;++l)f[l]=0;var o,c,u;if((s&1)===1){o=a>>8;f[s]=n(e[0],o);--s;o=a&255;c=t[t.length-1];f[s]=n(c,o)}while(s>0){--s;o=a>>8;f[s]=n(t[s],o);--s;o=a&255;f[s]=n(t[s],o)}s=15;u=15-t.length;while(u>0){o=a>>8;f[s]=n(e[u],o);--s;--u;o=a&255;f[s]=n(t[s],o);--s;--u}return f}}();var go=function(e,r,t,a,n){if(!n)n=r;if(!a)a=bo(e);var i,s;for(i=0;i!=r.length;++i){s=r[i];s^=a[t];s=(s>>5|s<<3)&255;n[i]=s;++t}return[n,t,a]};var wo=function(e){var r=0,t=bo(e);return function(e){var a=go("",e,r,t);r=a[1];return a[0]}};function ko(e,r,t,a){var n={key:ls(e),verificationBytes:ls(e)};if(t.password)n.verifier=mo(t.password);a.valid=n.verificationBytes===n.verifier;if(a.valid)a.insitu=wo(t.password);return n}function To(e,r,t){var a=t||{};a.Info=e._R(2);e.l-=2;if(a.Info===1)a.Data=po(e,r);else a.Data=vo(e,r);return a}function Eo(e,r,t){var a={Type:t.biff>=8?e._R(2):0};if(a.Type)To(e,r-2,a);else ko(e,t.biff>=8?r:r-2,t,a);return a}function yo(e,r){switch(r.type){case"base64":return So(E(e),r);case"binary":return So(e,r);case"buffer":return So(y&&Buffer.isBuffer(e)?e.toString("binary"):R(e),r);case"array":return So(Er(e),r);}throw new Error("Unrecognized type "+r.type)}function So(e,r){var t=r||{};var a=t.dense?[]:{};var n=e.match(/\\trowd[\s\S]*?\\row\b/g);if(!n)throw new Error("RTF missing table");var i={s:{c:0,r:0},e:{c:0,r:n.length-1}};n.forEach(function(e,r){if(Array.isArray(a))a[r]=[];var n=/\\[\w\-]+\b/g;var s=0;var f;var l=-1;var o=[];while((f=n.exec(e))!=null){var c=e.slice(s,n.lastIndex-f[0].length);if(c.charCodeAt(0)==32)c=c.slice(1);if(c.length)o.push(c);switch(f[0]){case"\\cell":++l;if(o.length){var u={v:o.join(""),t:"s"};if(u.v=="TRUE"||u.v=="FALSE"){u.v=u.v=="TRUE";u.t="b"}else if(!isNaN(_r(u.v))){u.t="n";if(t.cellText!==false)u.w=u.v;u.v=_r(u.v)}if(Array.isArray(a))a[r][l]=u;else a[Ma({r:r,c:l})]=u}o=[];break;case"\\par":o.push("\n");break;}s=n.lastIndex}if(l>i.e.c)i.e.c=l});a["!ref"]=Ba(i);return a}function _o(e,r){var t=$a(yo(e,r),r);t.bookType="rtf";return t}function Ao(e,r){var t=["{\\rtf1\\ansi"];if(!e["!ref"])return t[0]+"}";var a=za(e["!ref"]),n;var i=Array.isArray(e);for(var s=a.s.r;s<=a.e.r;++s){t.push("\\trowd\\trautofit1");for(var f=a.s.c;f<=a.e.c;++f)t.push("\\cellx"+(f+1));t.push("\\pard\\intbl");for(f=a.s.c;f<=a.e.c;++f){var l=Ma({r:s,c:f});n=i?(e[s]||[])[f]:e[l];if(!n||n.v==null&&(!n.f||n.F)){t.push(" \\cell");continue}t.push(" "+(n.w||(Ga(n),n.w)||"").replace(/[\r\n]/g,"\\par "));t.push("\\cell")}t.push("\\pard\\intbl\\row")}return t.join("")+"}"}function xo(e){var r=e.slice(e[0]==="#"?1:0).slice(0,6);return[parseInt(r.slice(0,2),16),parseInt(r.slice(2,4),16),parseInt(r.slice(4,6),16)]}function Co(e){for(var r=0,t=1;r!=3;++r)t=t*256+(e[r]>255?255:e[r]<0?0:e[r]);return t.toString(16).toUpperCase().slice(1)}function Oo(e){var r=e[0]/255,t=e[1]/255,a=e[2]/255;var n=Math.max(r,t,a),i=Math.min(r,t,a),s=n-i;if(s===0)return[0,0,r];var f=0,l=0,o=n+i;l=s/(o>1?2-o:o);switch(n){case r:f=((t-a)/s+6)%6;break;case t:f=(a-r)/s+2;break;case a:f=(r-t)/s+4;break;}return[f/6,l,o/2]}function Ro(e){var r=e[0],t=e[1],a=e[2];var n=t*2*(a<.5?a:1-a),i=a-n/2;var s=[i,i,i],f=6*r;var l;if(t!==0)switch(f|0){case 0:;case 6:l=n*f;s[0]+=n;s[1]+=l;break;case 1:l=n*(2-f);s[0]+=l;s[1]+=n;break;case 2:l=n*(f-2);s[1]+=n;s[2]+=l;break;case 3:l=n*(4-f);s[1]+=l;s[2]+=n;break;case 4:l=n*(f-4);s[2]+=n;s[0]+=l;break;case 5:l=n*(6-f);s[2]+=l;s[0]+=n;break;}for(var o=0;o!=3;++o)s[o]=Math.round(s[o]*255);return s}function No(e,r){if(r===0)return e;var t=Oo(xo(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return Co(Ro(t))}var Io=6,Fo=15,Do=1,Po=Io;function Lo(e){return Math.floor((e+Math.round(128/Po)/256)*Po)}function Mo(e){return Math.floor((e-5)/Po*100+.5)/100}function Uo(e){return Math.round((e*Po+5)/Po*256)/256}function Bo(e){return Uo(Mo(Lo(e)))}function Wo(e){var r=Math.abs(e-Bo(e)),t=Po;if(r>.005)for(Po=Do;Po":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=ut(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=ut(t.diagonalDown);r.Borders.push(n);break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":break;case"":i=false;break;default:if(a&&a.WTF){if(!i)throw new Error("unrecognized "+t[0]+" in borders")};}})}function Yo(e,r,t,a){r.Fills=[];var n={};var i=false;(e[0].match(Yr)||[]).forEach(function(e){var t=Jr(e);switch(qr(t[0])){case"":;case"":break;case"":;case"":n={};r.Fills.push(n);break;case"":break;case"":break;case"":r.Fills.push(n);n={};break;case"":if(t.patternType)n.patternType=t.patternType;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":i=false;break;default:if(a&&a.WTF){if(!i)throw new Error("unrecognized "+t[0]+" in fills")};}})}function Ko(e,r,t,a){r.Fonts=[];var n={};var s=false;(e[0].match(Yr)||[]).forEach(function(e){var f=Jr(e);switch(qr(f[0])){case"":;case"":break;case"":break;case"":;case"":r.Fonts.push(n);n={};break;case"":;case"":break;case"":n.bold=1;break;case"":n.italic=1;break;case"":n.underline=1;break;case"":n.strike=1;break;case"":n.outline=1;break;case"":n.shadow=1;break;case"":n.condense=1;break;case"":n.extend=1;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":s=false;break;case"":;case"":break;case"":s=false;break;default:if(a&&a.WTF){if(!s)throw new Error("unrecognized "+f[0]+" in fonts")};}})}function Zo(e,r,t){r.NumberFmt=[];var a=sr(Z);for(var n=0;n":;case"":;case"":break;case"0){if(l>392){for(l=392;l>60;--l)if(r.NumberFmt[l]==null)break;r.NumberFmt[l]=f}qe(f,l)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+s[0]+" in numFmts");}}}function Jo(e){var r=[""];[[5,8],[23,26],[41,44],[50,392]].forEach(function(t){for(var a=t[0];a<=t[1];++a)if(e[a]!=null)r[r.length]=xt("numFmt",null,{numFmtId:a,formatCode:nt(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=xt("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var qo=["numFmtId","fillId","fontId","borderId","xfId"];var Qo=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function ec(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Yr)||[]).forEach(function(e){var i=Jr(e),s=0;switch(qr(i[0])){case"":;case"":;case"":break;case"":a=i;delete a[0];for(s=0;s392){for(s=392;s>60;--s)if(r.NumberFmt[a.numFmtId]==r.NumberFmt[s]){a.numFmtId=s;break}}r.CellXf.push(a);break;case"":break;case"":var f={};if(i.vertical)f.vertical=i.vertical;if(i.horizontal)f.horizontal=i.horizontal;if(i.textRotation!=null)f.textRotation=i.textRotation;if(i.indent)f.indent=i.indent;if(i.wrapText)f.wrapText=ut(i.wrapText);a.alignment=f;break;case"":break;case"":;case"":break;case"":n=false;break;case"":;case"":break;case"":n=false;break;default:if(t&&t.WTF){if(!n)throw new Error("unrecognized "+i[0]+" in cellXfs")};}})}function rc(e){var r=[];r[r.length]=xt("cellXfs",null);e.forEach(function(e){r[r.length]=xt("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=xt("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var tc=function Vk(){var e=/<(?:\w+:)?numFmts([^>]*)>[\S\s]*?<\/(?:\w+:)?numFmts>/;var r=/<(?:\w+:)?cellXfs([^>]*)>[\S\s]*?<\/(?:\w+:)?cellXfs>/;var t=/<(?:\w+:)?fills([^>]*)>[\S\s]*?<\/(?:\w+:)?fills>/;var a=/<(?:\w+:)?fonts([^>]*)>[\S\s]*?<\/(?:\w+:)?fonts>/;var n=/<(?:\w+:)?borders([^>]*)>[\S\s]*?<\/(?:\w+:)?borders>/;return function i(s,f,l){var o={};if(!s)return o;s=s.replace(//gm,"").replace(//gm,"");var c;if(c=s.match(e))Zo(c,o,l);if(c=s.match(a))Ko(c,o,f,l);if(c=s.match(t))Yo(c,o,f,l);if(c=s.match(n))Xo(c,o,f,l);if(c=s.match(r))ec(c,o,l);return o}}();function ac(e,r){var t=[Gr,xt("styleSheet",null,{xmlns:Ft[0],"xmlns:vt":It.vt})],a;if(e.SSF&&(a=Jo(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=rc(r.cellXfs))t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}function nc(e,r){var t=e._R(2);var a=Za(e,r-2);return[t,a]}function ic(e,r,t){if(!t)t=wa(6+4*r.length);t._W(2,e);Ja(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 sc(e,r,t){var a={};a.sz=e._R(2)/20;var n=An(e,2,t);if(n.fItalic)a.italic=1;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;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 f=e._R(1);if(f>0)a.family=f;var l=e._R(1);if(l>0)a.charset=l;e.l++;a.color=Sn(e,8);switch(e._R(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor";break;}a.name=Za(e,r-21);return a}function fc(e,r){if(!r)r=wa(25+4*32);r._W(2,e.sz*20);xn(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);_n(e.color,r);var a=0;if(e.scheme=="major")a=1;if(e.scheme=="minor")a=2;r._W(1,a);Ja(e.name,r);return r.length>r.l?r.slice(0,r.l):r}var lc=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];var oc;var cc=ga;function uc(e,r){if(!r)r=wa(4*3+8*7+16*1);if(!oc)oc=lr(lc);var t=oc[e.patternType];if(t==null)t=40;r._W(4,t);var a=0;if(t!=40){_n({auto:1},r);_n({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 hc(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 dc(e,r,t){if(!t)t=wa(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);var a=0;t._W(1,a);t._W(1,0);t._W(1,0);t._W(1,0);return t}function vc(e,r){if(!r)r=wa(10);r._W(1,0);r._W(1,0);r._W(4,0);r._W(4,0);return r}var pc=ga;function mc(e,r){if(!r)r=wa(51);r._W(1,0);vc(null,r);vc(null,r);vc(null,r);vc(null,r);vc(null,r);return r.length>r.l?r.slice(0,r.l):r}function bc(e,r){if(!r)r=wa(12+4*10);r._W(4,e.xfId);r._W(2,1);r._W(1,+e.builtinId);r._W(1,0);hn(e.name||"",r);return r.length>r.l?r.slice(0,r.l):r}function gc(e,r,t){var a=wa(4+256*2*4);a._W(4,e);hn(r,a);hn(t,a);return a.length>a.l?a.slice(0,a.l):a}function wc(e,r,t){var a={};a.NumberFmt=[];for(var n in Z)a.NumberFmt[n]=Z[n];a.CellXf=[];a.Fonts=[];var i=[];var s=false;ka(e,function f(e,n,l){switch(l){case 44:a.NumberFmt[e[0]]=e[1];qe(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=No(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]==617){a.CellXf.push(e)}break;case 48:;case 507:;case 572:;case 475:break;case 1171:;case 2102:;case 1130:;case 512:;case 2095:;case 3072:break;case 35:s=true;break;case 36:s=false;break;case 37:i.push(l);s=true;break;case 38:i.pop();s=false;break;default:if(n.T>0)i.push(l);else if(n.T<0)i.pop();else if(!s||t.WTF&&i[i.length-1]!=37)throw new Error("Unexpected record 0x"+l.toString(16));}});return a}function kc(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;Ea(e,615,Ka(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)Ea(e,44,ic(a,r[a]))});Ea(e,616)}function Tc(e){var r=1;if(r==0)return;Ea(e,611,Ka(r));Ea(e,43,fc({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}));Ea(e,612)}function Ec(e){var r=2;if(r==0)return;Ea(e,603,Ka(r));Ea(e,45,uc({patternType:"none"}));Ea(e,45,uc({patternType:"gray125"}));Ea(e,604)}function yc(e){var r=1;if(r==0)return;Ea(e,613,Ka(r));Ea(e,46,mc({}));Ea(e,614)}function Sc(e){var r=1;Ea(e,626,Ka(r));Ea(e,47,dc({numFmtId:0,fontId:0,fillId:0,borderId:0},65535));Ea(e,627)}function _c(e,r){Ea(e,617,Ka(r.length));r.forEach(function(r){Ea(e,47,dc(r,0))});Ea(e,618)}function Ac(e){var r=1;Ea(e,619,Ka(r));Ea(e,48,bc({xfId:0,builtinId:0,name:"Normal"}));Ea(e,620)}function xc(e){var r=0;Ea(e,505,Ka(r));Ea(e,506)}function Cc(e){var r=0;Ea(e,508,gc(r,"TableStyleMedium9","PivotStyleMedium4"));Ea(e,509)}function Oc(){return}function Rc(e,r){var t=Ta();Ea(t,278);kc(t,e.SSF);Tc(t,e);Ec(t,e);yc(t,e);Sc(t,e);_c(t,r.cellXfs);Ac(t,e);xc(t,e);Cc(t,e);Oc(t,e);Ea(t,279);return t.end()}var Nc=["","","","","","","","","","","",""];function Ic(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Yr)||[]).forEach(function(e){var n=Jr(e);switch(n[0]){case"":break;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":if(n[0].charAt(1)==="/"){r.themeElements.clrScheme[Nc.indexOf(n[0])]=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 Pc=/]*)>[\s\S]*<\/a:clrScheme>/;var Lc=/]*)>[\s\S]*<\/a:fontScheme>/;var Mc=/]*)>[\s\S]*<\/a:fmtScheme>/;function Uc(e,r,t){r.themeElements={};var a;[["clrScheme",Pc,Ic],["fontScheme",Lc,Fc],["fmtScheme",Mc,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 Bc=/]*)>[\s\S]*<\/a:themeElements>/;function Wc(e,r){if(!e||e.length===0)e=Hc();var t;var a={};if(!(t=e.match(Bc)))throw new Error("themeElements not found in theme");Uc(t[0],a,r);a.raw=e;return a}function Hc(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Gr];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]=''; -t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";return t.join("")}function zc(e,r,t){var a=e.l+r;var n=e._R(4);if(n===124226)return;if(!t.cellStyles){e.l=a;return}var i=e.slice(e.l);e.l=a;var s;try{s=zr(i,{type:"array"})}catch(f){return}var l=Mr(s,"theme/theme/theme1.xml",true);if(!l)return;return Wc(l,t)}function Vc(e){return e._R(4)}function Gc(e){var r={};r.xclrType=e._R(2);r.nTintShade=e._R(2);switch(r.xclrType){case 0:e.l+=4;break;case 1:r.xclrValue=$c(e,4);break;case 2:r.xclrValue=Cs(e,4);break;case 3:r.xclrValue=Vc(e,4);break;case 4:e.l+=4;break;}e.l+=8;return r}function $c(e,r){return ga(e,r)}function jc(e,r){return ga(e,r)}function Xc(e){var r=e._R(2);var t=e._R(2)-4;var a=[r];switch(r){case 4:;case 5:;case 7:;case 8:;case 9:;case 10:;case 11:;case 13:a[1]=Gc(e,t);break;case 6:a[1]=jc(e,t);break;case 14:;case 15:a[1]=e._R(t===1?1:2);break;default:throw new Error("Unrecognized ExtProp type: "+r+" "+t);}return a}function Yc(e,r){var t=e.l+r;e.l+=2;var a=e._R(2);e.l+=2;var n=e._R(2);var i=[];while(n-- >0)i.push(Xc(e,t-e.l));return{ixfe:a,ext:i}}function Kc(e,r){r.forEach(function(e){switch(e[0]){case 4:break;case 5:break;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:break;case 13:break;case 14:break;case 15:break;}})}function Zc(e,r){return{flags:e._R(4),version:e._R(4),name:Za(e,r-8)}}function Jc(e){var r=wa(12+2*e.name.length);r._W(4,e.flags);r._W(4,e.version);Ja(e.name,r);return r.slice(0,r.l)}function qc(e){var r=[];var t=e._R(4);while(t-- >0)r.push([e._R(4),e._R(4)]);return r}function Qc(e){var r=wa(4+8*e.length);r._W(4,e.length);for(var t=0;t":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":i=2;break;case"":i=2;break;case"":;case"":;case"":break;case"":n=false;break;case"\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n');return e.join("")}function fu(e){var r=[];if(!e)return r;var t=1;(e.match(Yr)||[]).forEach(function(e){var a=Jr(e);switch(a[0]){case"":;case"":break;case"]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}function du(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[xt("xml",null,{"xmlns:v":Dt.v,"xmlns:o":Dt.o,"xmlns:x":Dt.x,"xmlns:mv":Dt.mv}).replace(/\/>/,">"),xt("o:shapelayout",xt("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"})];var i=65536*e;var s=r||[];if(s.length>0)n.push(xt("v:shapetype",[xt("v:stroke",null,{joinstyle:"miter"}),xt("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202",coordsize:t.join(","),"o:spt":202,path:a}));s.forEach(function(e){++i;n.push(vu(e,i))});n.push("");return n.join("")}function vu(e,r){var t=La(e[0]);var a={color2:"#BEFF82",type:"gradient"};if(a.type=="gradient")a.angle="-180";var n=a.type=="gradient"?xt("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null;var i=xt("v:fill",n,a);var s={on:"t",obscured:"t"};return["",i,xt("v:shadow",null,s),xt("v:path",null,{"o:connecttype":"none"}),'
','',"","",_t("x:Anchor",[t.c+1,0,t.r+1,0,t.c+3,20,t.r+5,20].join(",")),_t("x:AutoFill","False"),_t("x:Row",String(t.r)),_t("x:Column",String(t.c)),e[1].hidden?"":"","",""].join("")}function pu(e,r,t,a){var n=Array.isArray(e);var i;r.forEach(function(r){var s=La(r.ref);if(n){if(!e[s.r])e[s.r]=[];i=e[s.r][s.c]}else i=e[r.ref];if(!i){i={t:"z"};if(n)e[s.r][s.c]=i;else e[r.ref]=i;var f=za(e["!ref"]||"BDWGO1000001:A1");if(f.s.r>s.r)f.s.r=s.r;if(f.e.rs.c)f.s.c=s.c;if(f.e.c=0;--c){if(!t&&i.c[c].T)return;if(t&&!i.c[c].T)i.c.splice(c,1)}if(t&&a)for(c=0;c/))return[];var t=[];var a=[];var n=e.match(/<(?:\w+:)?authors>([\s\S]*)<\/(?:\w+:)?authors>/);if(n&&n[1])n[1].split(/<\/\w*:?author>/).forEach(function(e){if(e===""||e.trim()==="")return;var r=e.match(/<(?:\w+:)?author[^>]*>(.*)/);if(r)t.push(r[1])});var i=e.match(/<(?:\w+:)?commentList>([\s\S]*)<\/(?:\w+:)?commentList>/);if(i&&i[1])i[1].split(/<\/\w*:?comment>/).forEach(function(e){if(e===""||e.trim()==="")return;var n=e.match(/<(?:\w+:)?comment[^>]*>/);if(!n)return;var i=Jr(n[0]);var s={author:i.authorId&&t[i.authorId]||"sheetjsghost",ref:i.ref,guid:i.guid};var f=La(i.ref);if(r.sheetRows&&r.sheetRows<=f.r)return;var l=e.match(/<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/);var o=!!l&&!!l[1]&&Hl(l[1])||{r:"",t:"",h:""};s.r=o.r;if(o.r=="")o.t=o.h="";s.t=(o.t||"").replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(r.cellHTML)s.h=o.h;a.push(s)});return a}function bu(e){var r=[Gr,xt("comments",null,{xmlns:Ft[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=nt(e.a);if(t.indexOf(a)==-1){t.push(a);r.push(""+a+"")}if(e.T&&e.ID&&t.indexOf("tc="+e.ID)==-1){t.push("tc="+e.ID);r.push(""+"tc="+e.ID+"")}})});if(t.length==0){t.push("SheetJ5");r.push("SheetJ5")}r.push("");r.push("");e.forEach(function(e){var a=0,n=[],i=0;if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);e[1].forEach(function(e){if(e.a)a=t.indexOf(nt(e.a));if(e.T)++i;n.push(e.t==null?"":nt(e.t))});if(i===0){e[1].forEach(function(a){r.push('');r.push(_t("t",a.t==null?"":nt(a.t)));r.push("")})}else{r.push('');var s="Comment:\n "+n[0]+"\n";for(var f=1;f")}});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function gu(e,r){var t=[];var a=false,n={},i=0;e.replace(Yr,function s(f,l){var o=Jr(f);switch(qr(o[0])){case"":break;case"":if(n.t!=null)t.push(n);break;case"":;case"":n.t=e.slice(i,l).replace(/\r\n/g,"\n").replace(/\r/g,"\n");break;case"":a=true;break;case"":a=false;break;case"":;case"
":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+o[0]+" in threaded comments");}return f});return t}function wu(e,r,t){var a=[Gr,xt("ThreadedComments",null,{xmlns:It.TCMNT}).replace(/[\/]>/,">")];e.forEach(function(e){var n="";(e[1]||[]).forEach(function(i,s){if(!i.T){delete i.ID;return}if(i.a&&r.indexOf(i.a)==-1)r.push(i.a);var f={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+t.tcid++).slice(-12)+"}"};if(s==0)n=f.id;else f.parentId=n;i.ID=f.id;if(i.a)f.personId="{54EE7950-7262-4200-6969-"+("000000000000"+r.indexOf(i.a)).slice(-12)+"}";a.push(xt("threadedComment",_t("text",i.t||""),f))})});a.push("");return a.join("")}function ku(e,r){var t=[];var a=false;e.replace(Yr,function n(e){var n=Jr(e);switch(qr(n[0])){case"":break;case"":break;case"":;case"":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+n[0]+" in threaded comments");}return e});return t}function Tu(e){var r=[Gr,xt("personList",null,{xmlns:It.TCMNT,"xmlns:x":Ft[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(xt("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}function Eu(e){var r={};r.iauthor=e._R(4);var t=kn(e,16);r.rfx=t.s;r.ref=Ma(t.s);e.l+=16;return r}function yu(e,r){if(r==null)r=wa(36);r._W(4,e[1].iauthor);Tn(e[0],r);r._W(4,0);r._W(4,0);r._W(4,0);r._W(4,0);return r}var Su=Za;function _u(e){return Ja(e.slice(0,54))}function Au(e,r){var t=[];var a=[];var n={};var i=false;ka(e,function s(e,f,l){switch(l){case 632:a.push(e);break;case 635:n=e;break;case 637:n.t=e.t;n.h=e.h;n.r=e.r;break;case 636:n.author=a[n.iauthor];delete n.iauthor;if(r.sheetRows&&n.rfx&&r.sheetRows<=n.rfx.r)break;if(!n.t)n.t="";delete n.rfx;t.push(n);break;case 3072:break;case 35:i=true;break;case 36:i=false;break;case 37:break;case 38:break;default:if(f.T){}else if(!i||r.WTF)throw new Error("Unexpected record 0x"+l.toString(16));}});return t}function xu(e){var r=Ta();var t=[];Ea(r,628);Ea(r,630);e.forEach(function(e){e[1].forEach(function(e){if(t.indexOf(e.a)>-1)return;t.push(e.a.slice(0,54));Ea(r,632,_u(e.a))})});Ea(r,631);Ea(r,633);e.forEach(function(e){e[1].forEach(function(a){a.iauthor=t.indexOf(a.a);var n={s:La(e[0]),e:La(e[0])};Ea(r,635,yu([n,a]));if(a.t&&a.t.length>0)Ea(r,637,an(a));Ea(r,636);delete a.iauthor})});Ea(r,634);Ea(r,629);return r.end()}var Cu="application/vnd.ms-office.vbaProject";function Ou(e){var r=er.utils.cfb_new({root:"R"});e.FullPaths.forEach(function(t,a){if(t.slice(-1)==="/"||!t.match(/_VBA_PROJECT_CUR/))return;var n=t.replace(/^[^\/]*/,"R").replace(/\/_VBA_PROJECT_CUR\u0000*/,"");er.utils.cfb_add(r,n,e.FileIndex[a].content)});return er.write(r)}function Ru(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")er.utils.cfb_add(e,n,r.FileIndex[a].content)})}var Nu=["xlsb","xlsm","xlam","biff8","xla"];function Iu(){return{"!type":"dialog"}}function Fu(){return{"!type":"dialog"}}function Du(){return{"!type":"macro"}}function Pu(){return{"!type":"macro"}}var Lu=function(){var e=/(^|[^A-Za-z_])R(\[?-?\d+\]|[1-9]\d*|)C(\[?-?\d+\]|[1-9]\d*|)(?![A-Za-z0-9_])/g;var r={r:0,c:0};function t(e,t,a,n){var i=false,s=false;if(a.length==0)s=true;else if(a.charAt(0)=="["){s=true;a=a.slice(1,-1)}if(n.length==0)i=true;else if(n.charAt(0)=="["){i=true;n=n.slice(1,-1)}var f=a.length>0?parseInt(a,10)|0:0,l=n.length>0?parseInt(n,10)|0:0;if(i)l+=r.c;else--l;if(s)f+=r.r;else--f;return t+(i?"":"$")+Ia(l)+(s?"":"$")+Ca(f)}return function a(n,i){r=i;return n.replace(e,t)}}();var Mu=/(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})(?![_.\(A-Za-z0-9])/g;var Uu=function(){return function e(r,t){return r.replace(Mu,function(e,r,a,n,i,s){var f=Na(n)-(a?0:t.c);var l=xa(s)-(i?0:t.r);var o=i=="$"?l+1:l==0?"":"["+l+"]";var c=a=="$"?f+1:f==0?"":"["+f+"]";return r+"R"+o+"C"+c})}}();function Bu(e,r){return e.replace(Mu,function(e,t,a,n,i,s){return t+(a=="$"?a+n:Ia(Na(n)+r.c))+(i=="$"?i+s:Ca(xa(s)+r.r))})}function Wu(e,r,t){var a=Ua(r),n=a.s,i=La(t);var s={r:i.r-n.r,c:i.c-n.c};return Bu(e,s)}function Hu(e){if(e.length==1)return false;return true}function zu(e){return e.replace(/_xlfn\./g,"")}function Vu(e){e.l+=1;return}function Gu(e,r){var t=e._R(r==1?1:2);return[t&16383,t>>14&1,t>>15&1]}function $u(e,r,t){var a=2;if(t){if(t.biff>=2&&t.biff<=5)return ju(e,r,t);else if(t.biff==12)a=4}var n=e._R(a),i=e._R(a);var s=Gu(e,2);var f=Gu(e,2);return{s:{r:n,c:s[0],cRel:s[1],rRel:s[2]},e:{r:i,c:f[0],cRel:f[1],rRel:f[2]}}}function ju(e){var r=Gu(e,2),t=Gu(e,2);var a=e._R(1);var n=e._R(1);return{s:{r:r[0],c:a,cRel:r[1],rRel:r[2]},e:{r:t[0],c:n,cRel:t[1],rRel:t[2]}}}function Xu(e,r,t){if(t.biff<8)return ju(e,r,t);var a=e._R(t.biff==12?4:2),n=e._R(t.biff==12?4:2);var i=Gu(e,2);var s=Gu(e,2);return{s:{r:a,c:i[0],cRel:i[1],rRel:i[2]},e:{r:n,c:s[0],cRel:s[1],rRel:s[2]}}}function Yu(e,r,t){if(t&&t.biff>=2&&t.biff<=5)return Ku(e,r,t);var a=e._R(t&&t.biff==12?4:2);var n=Gu(e,2);return{r:a,c:n[0],cRel:n[1],rRel:n[2]}}function Ku(e){var r=Gu(e,2);var t=e._R(1);return{r:r[0],c:t,cRel:r[1],rRel:r[2]}}function Zu(e){var r=e._R(2);var t=e._R(2);return{r:r,c:t&255,fQuoted:!!(t&16384),cRel:t>>15,rRel:t>>15}}function Ju(e,r,t){var a=t&&t.biff?t.biff:8;if(a>=2&&a<=5)return qu(e,r,t);var n=e._R(a>=12?4:2);var i=e._R(2);var s=(i&16384)>>14,f=(i&32768)>>15;i&=16383;if(f==1)while(n>524287)n-=1048576;if(s==1)while(i>8191)i=i-16384;return{r:n,c:i,cRel:s,rRel:f}}function qu(e){var r=e._R(2);var t=e._R(1);var a=(r&32768)>>15,n=(r&16384)>>14;r&=16383;if(a==1&&r>=8192)r=r-16384;if(n==1&&t>=128)t=t-256;return{r:r,c:t,cRel:n,rRel:a}}function Qu(e,r,t){var a=(e[e.l++]&96)>>5;var n=$u(e,t.biff>=2&&t.biff<=5?6:8,t);return[a,n]}function eh(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2,"i");var i=8;if(t)switch(t.biff){case 5:e.l+=12;i=6;break;case 12:i=12;break;}var s=$u(e,i,t);return[a,n,s]}function rh(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t&&t.biff>8?12:t.biff<8?6:8;return[a]}function th(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2);var i=8;if(t)switch(t.biff){case 5:e.l+=12;i=6;break;case 12:i=12;break;}e.l+=i;return[a,n]}function ah(e,r,t){var a=(e[e.l++]&96)>>5;var n=Xu(e,r-1,t);return[a,n]}function nh(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t.biff==2?6:t.biff==12?14:7;return[a]}function ih(e){var r=e[e.l+1]&1;var t=1;e.l+=4;return[r,t]}function sh(e,r,t){e.l+=2;var a=e._R(t&&t.biff==2?1:2);var n=[];for(var i=0;i<=a;++i)n.push(e._R(t&&t.biff==2?1:2));return n}function fh(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=2;return[a,e._R(t&&t.biff==2?1:2)]}function lh(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=2;return[a,e._R(t&&t.biff==2?1:2)]}function oh(e){var r=e[e.l+1]&255?1:0;e.l+=2;return[r,e._R(2)]}function ch(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=t&&t.biff==2?3:4;return[a]}function uh(e){var r=e._R(1),t=e._R(1);return[r,t]}function hh(e){e._R(2);return uh(e,2)}function dh(e){e._R(2);return uh(e,2)}function vh(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Yu(e,0,t);return[a,n]}function ph(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Ju(e,0,t);return[a,n]}function mh(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(2);if(t&&t.biff==5)e.l+=12;var i=Yu(e,0,t);return[a,n,i]}function bh(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(t&&t.biff<=3?1:2);return[$d[n],Gd[n],a]}function gh(e,r,t){var a=e[e.l++];var n=e._R(1),i=t&&t.biff<=3?[a==88?-1:0,e._R(1)]:wh(e);return[n,(i[0]===0?Gd:Vd)[i[1]]]}function wh(e){return[e[e.l+1]>>7,e._R(2)&32767]}function kh(e,r,t){e.l+=t&&t.biff==2?3:4;return}function Th(e,r,t){e.l++;if(t&&t.biff==12)return[e._R(4,"i"),0];var a=e._R(2);var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Eh(e){e.l++;return Jn[e._R(1)]}function yh(e){e.l++;return e._R(2)}function Sh(e){e.l++;return e._R(1)!==0}function _h(e){e.l++;return En(e,8)}function Ah(e,r,t){e.l++;return ds(e,r-1,t)}function xh(e,r){var t=[e._R(1)];if(r==12)switch(t[0]){case 2:t[0]=4;break;case 4:t[0]=16;break;case 0:t[0]=1;break;case 1:t[0]=2;break;}switch(t[0]){case 4:t[1]=ss(e,1)?"TRUE":"FALSE";if(r!=12)e.l+=7;break;case 37:;case 16:t[1]=Jn[e[e.l]];e.l+=r==12?4:8;break;case 0:e.l+=8;break;case 1:t[1]=En(e,8);break;case 2:t[1]=gs(e,0,{biff:r>0&&r<8?2:r});break;default:throw new Error("Bad SerAr: "+t[0]);}return t}function Ch(e,r,t){var a=e._R(t.biff==12?4:2);var n=[];for(var i=0;i!=a;++i)n.push((t.biff==12?kn:Ms)(e,8));return n}function Oh(e,r,t){var a=0,n=0;if(t.biff==12){a=e._R(4);n=e._R(4)}else{n=1+e._R(1);a=1+e._R(2)}if(t.biff>=2&&t.biff<8){--a;if(--n==0)n=256}for(var i=0,s=[];i!=a&&(s[i]=[]);++i)for(var f=0;f!=n;++f)s[i][f]=xh(e,t.biff);return s}function Rh(e,r,t){var a=e._R(1)>>>5&3;var n=!t||t.biff>=8?4:2;var i=e._R(n);switch(t.biff){case 2:e.l+=5;break;case 3:;case 4:e.l+=8;break;case 5:e.l+=12;break;}return[a,0,i]}function Nh(e,r,t){if(t.biff==5)return Ih(e,r,t);var a=e._R(1)>>>5&3;var n=e._R(2);var i=e._R(4);return[a,n,i]}function Ih(e){var r=e._R(1)>>>5&3;var t=e._R(2,"i");e.l+=8;var a=e._R(2);e.l+=12;return[r,t,a]}function Fh(e,r,t){var a=e._R(1)>>>5&3;e.l+=t&&t.biff==2?3:4;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Dh(e,r,t){var a=e._R(1)>>>5&3;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Ph(e,r,t){var a=e._R(1)>>>5&3;e.l+=4;if(t.biff<8)e.l--;if(t.biff==12)e.l+=2;return[a]}function Lh(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2);var i=4;if(t)switch(t.biff){case 5:i=15;break;case 12:i=6;break;}e.l+=i;return[a,n]}var Mh=ga;var Uh=ga;var Bh=ga;function Wh(e,r,t){e.l+=2;return[Zu(e,4,t)]}function Hh(e){e.l+=6;return[]}var zh=Wh;var Vh=Hh;var Gh=Hh;var $h=Wh;function jh(e){e.l+=2;return[ls(e),e._R(2)&1]}var Xh=Wh;var Yh=jh;var Kh=Hh;var Zh=Wh;var Jh=Wh;var qh=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];function Qh(e){e.l+=2;var r=e._R(2);var t=e._R(2);var a=e._R(4);var n=e._R(2);var i=e._R(2);var s=qh[t>>2&31];return{ixti:r,coltype:t&3,rt:s,idx:a,c:n,C:i}}function ed(e){e.l+=2;return[e._R(4)]}function rd(e,r,t){e.l+=5;e.l+=2;e.l+=t.biff==2?1:4;return["PTGSHEET"]}function td(e,r,t){e.l+=t.biff==2?4:5;return["PTGENDSHEET"]}function ad(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function nd(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function id(e){e.l+=4;return[0,0]}var sd={1:{n:"PtgExp",f:Th},2:{n:"PtgTbl",f:Bh},3:{n:"PtgAdd",f:Vu},4:{n:"PtgSub",f:Vu},5:{n:"PtgMul",f:Vu},6:{n:"PtgDiv",f:Vu},7:{n:"PtgPower",f:Vu},8:{n:"PtgConcat",f:Vu},9:{n:"PtgLt",f:Vu},10:{n:"PtgLe",f:Vu},11:{n:"PtgEq",f:Vu},12:{n:"PtgGe",f:Vu},13:{n:"PtgGt",f:Vu},14:{n:"PtgNe",f:Vu},15:{n:"PtgIsect",f:Vu},16:{n:"PtgUnion",f:Vu},17:{n:"PtgRange",f:Vu},18:{n:"PtgUplus",f:Vu},19:{n:"PtgUminus",f:Vu},20:{n:"PtgPercent",f:Vu},21:{n:"PtgParen",f:Vu},22:{n:"PtgMissArg",f:Vu},23:{n:"PtgStr",f:Ah},26:{n:"PtgSheet",f:rd},27:{n:"PtgEndSheet",f:td},28:{n:"PtgErr",f:Eh},29:{n:"PtgBool",f:Sh},30:{n:"PtgInt",f:yh},31:{n:"PtgNum",f:_h},32:{n:"PtgArray",f:nh},33:{n:"PtgFunc",f:bh},34:{n:"PtgFuncVar",f:gh},35:{n:"PtgName",f:Rh},36:{n:"PtgRef",f:vh},37:{n:"PtgArea",f:Qu},38:{n:"PtgMemArea",f:Fh},39:{n:"PtgMemErr",f:Mh},40:{n:"PtgMemNoMem",f:Uh},41:{n:"PtgMemFunc",f:Dh},42:{n:"PtgRefErr",f:Ph},43:{n:"PtgAreaErr",f:rh},44:{n:"PtgRefN",f:ph},45:{n:"PtgAreaN",f:ah},46:{n:"PtgMemAreaN",f:ad},47:{n:"PtgMemNoMemN",f:nd},57:{n:"PtgNameX",f:Nh},58:{n:"PtgRef3d",f:mh},59:{n:"PtgArea3d",f:eh},60:{n:"PtgRefErr3d",f:Lh},61:{n:"PtgAreaErr3d",f:th},255:{}};var fd={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,78:46,110:46,79:47,111:47,88:34,120:34,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61};var ld={1:{n:"PtgElfLel",f:jh},2:{n:"PtgElfRw",f:Zh},3:{n:"PtgElfCol",f:zh},6:{n:"PtgElfRwV",f:Jh},7:{n:"PtgElfColV",f:$h},10:{n:"PtgElfRadical",f:Xh},11:{n:"PtgElfRadicalS",f:Kh},13:{n:"PtgElfColS",f:Vh},15:{n:"PtgElfColSV",f:Gh},16:{n:"PtgElfRadicalLel",f:Yh},25:{n:"PtgList",f:Qh},29:{n:"PtgSxName",f:ed},255:{}};var od={0:{n:"PtgAttrNoop",f:id},1:{n:"PtgAttrSemi",f:ch},2:{n:"PtgAttrIf",f:lh},4:{n:"PtgAttrChoose",f:sh},8:{n:"PtgAttrGoto",f:fh},16:{n:"PtgAttrSum",f:kh},32:{n:"PtgAttrBaxcel",f:ih},33:{n:"PtgAttrBaxcel",f:ih},64:{n:"PtgAttrSpace",f:hh},65:{n:"PtgAttrSpaceSemi",f:dh},128:{n:"PtgAttrIfError",f:oh},255:{}};function cd(e,r,t,a){if(a.biff<8)return ga(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]=Oh(e,0,a);i.push(t[s][1]);break;case"PtgMemArea":t[s][2]=Ch(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(ga(e,r));return i}function ud(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=sd[i]||sd[fd[i]];if(i===24||i===25)n=(i===24?ld:od)[e[e.l+1]];if(!n||!n.f){ga(e,r)}else{s.push([n.n,n.f(e,r,t)])}}return s}function hd(e){var r=[];for(var t=0;t=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};function vd(e,r){var t=e.lastIndexOf("!"),a=r.lastIndexOf("!");if(t==-1&&a==-1)return e+":"+r;if(t>0&&a>0&&e.slice(0,t).toLowerCase()==r.slice(0,a).toLowerCase())return e+":"+r.slice(a+1);console.error("Cannot hydrate range",e,r);return e+":"+r}function pd(e,r,t){if(!e)return"SH33TJSERR0";if(t.biff>8&&(!e.XTI||!e.XTI[r]))return e.SheetNames[r];if(!e.XTI)return"SH33TJSERR6";var a=e.XTI[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 e[a[0]].slice(1).map(function(e){return e.Name}).join(";;");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 md(e,r,t){var a=pd(e,r,t);return a=="#REF"?a:Ha(a,t)}function bd(e,r,t,a,n){var i=n&&n.biff||8;var s={s:{c:0,r:0},e:{c:0,r:0}};var f=[],l,o,c,u=0,h=0,d,v="";if(!e[0]||!e[0][0])return"";var p=-1,m="";for(var b=0,g=e[0].length;b=0){switch(e[0][p][1][0]){case 0:m=Sr(" ",e[0][p][1][1]);break;case 1:m=Sr("\r",e[0][p][1][1]);break;default:m="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][p][1][0]);}o=o+m;p=-1}f.push(o+dd[w[0]]+l);break;case"PtgIsect":l=f.pop();o=f.pop();f.push(o+" "+l);break;case"PtgUnion":l=f.pop();o=f.pop();f.push(o+","+l);break;case"PtgRange":l=f.pop();o=f.pop();f.push(vd(o,l));break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgAttrIfError":break;case"PtgRef":c=ya(w[1][1],s,n);f.push(_a(c,i));break;case"PtgRefN":c=t?ya(w[1][1],t,n):w[1][1]; -f.push(_a(c,i));break;case"PtgRef3d":u=w[1][1];c=ya(w[1][2],s,n);v=md(a,u,n);var k=v;f.push(v+"!"+_a(c,i));break;case"PtgFunc":;case"PtgFuncVar":var T=w[1][0],E=w[1][1];if(!T)T=0;T&=127;var y=T==0?[]:f.slice(-T);f.length-=T;if(E==="User")E=y.shift();f.push(E+"("+y.join(",")+")");break;case"PtgBool":f.push(w[1]?"TRUE":"FALSE");break;case"PtgInt":f.push(w[1]);break;case"PtgNum":f.push(String(w[1]));break;case"PtgStr":f.push('"'+w[1].replace(/"/g,'""')+'"');break;case"PtgErr":f.push(w[1]);break;case"PtgAreaN":d=Sa(w[1][1],t?{s:t}:s,n);f.push(Aa(d,n));break;case"PtgArea":d=Sa(w[1][1],s,n);f.push(Aa(d,n));break;case"PtgArea3d":u=w[1][1];d=w[1][2];v=md(a,u,n);f.push(v+"!"+Aa(d,n));break;case"PtgAttrSum":f.push("SUM("+f.pop()+")");break;case"PtgAttrBaxcel":;case"PtgAttrSemi":break;case"PtgName":h=w[1][2];var S=(a.names||[])[h-1]||(a[0]||[])[h];var _=S?S.Name:"SH33TJSNAME"+String(h);if(_&&_.slice(0,6)=="_xlfn."&&!n.xlfn)_=_.slice(6);f.push(_);break;case"PtgNameX":var A=w[1][1];h=w[1][2];var x;if(n.biff<=5){if(A<0)A=-A;if(a[A])x=a[A][h]}else{var C="";if(((a[A]||[])[0]||[])[0]==14849){}else if(((a[A]||[])[0]||[])[0]==1025){if(a[A][h]&&a[A][h].itab>0){C=a.SheetNames[a[A][h].itab-1]+"!"}}else C=a.SheetNames[h-1]+"!";if(a[A]&&a[A][h])C+=a[A][h].Name;else if(a[0]&&a[0][h])C+=a[0][h].Name;else{var O=(pd(a,A,n)||"").split(";;");if(O[h-1])C=O[h-1];else C+="SH33TJSERRX"}f.push(C);break}if(!x)x={Name:"SH33TJSERRY"};f.push(x.Name);break;case"PtgParen":var R="(",N=")";if(p>=0){m="";switch(e[0][p][1][0]){case 2:R=Sr(" ",e[0][p][1][1])+R;break;case 3:R=Sr("\r",e[0][p][1][1])+R;break;case 4:N=Sr(" ",e[0][p][1][1])+N;break;case 5:N=Sr("\r",e[0][p][1][1])+N;break;default:if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][p][1][0]);}p=-1}f.push(R+f.pop()+N);break;case"PtgRefErr":f.push("#REF!");break;case"PtgRefErr3d":f.push("#REF!");break;case"PtgExp":c={c:w[1][1],r:w[1][0]};var I={c:t.c,r:t.r};if(a.sharedf[Ma(c)]){var F=a.sharedf[Ma(c)];f.push(bd(F,s,I,a,n))}else{var D=false;for(l=0;l!=a.arrayf.length;++l){o=a.arrayf[l];if(c.co[0].e.c)continue;if(c.ro[0].e.r)continue;f.push(bd(o[1],s,I,a,n));D=true;break}if(!D)f.push(w[1])}break;case"PtgArray":f.push("{"+hd(w[1])+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":;case"PtgAttrSpaceSemi":p=b;break;case"PtgTbl":break;case"PtgMemErr":break;case"PtgMissArg":f.push("");break;case"PtgAreaErr":f.push("#REF!");break;case"PtgAreaErr3d":f.push("#REF!");break;case"PtgList":f.push("Table"+w[1].idx+"[#"+w[1].rt+"]");break;case"PtgMemAreaN":;case"PtgMemNoMemN":;case"PtgAttrNoop":;case"PtgSheet":;case"PtgEndSheet":break;case"PtgMemFunc":break;case"PtgMemNoMem":break;case"PtgElfCol":;case"PtgElfColS":;case"PtgElfColSV":;case"PtgElfColV":;case"PtgElfLel":;case"PtgElfRadical":;case"PtgElfRadicalLel":;case"PtgElfRadicalS":;case"PtgElfRw":;case"PtgElfRwV":throw new Error("Unsupported ELFs");case"PtgSxName":throw new Error("Unrecognized Formula Token: "+String(w));default:throw new Error("Unrecognized Formula Token: "+String(w));}var P=["PtgAttrSpace","PtgAttrSpaceSemi","PtgAttrGoto"];if(n.biff!=3)if(p>=0&&P.indexOf(e[0][b][0])==-1){w=e[0][p];var L=true;switch(w[1][0]){case 4:L=false;case 0:m=Sr(" ",w[1][1]);break;case 5:L=false;case 1:m=Sr("\r",w[1][1]);break;default:m="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+w[1][0]);}f.push((L?m:"")+f.pop()+(L?"":m));p=-1}}if(f.length>1&&n.WTF)throw new Error("bad formula stack");if(f[0]=="TRUE")return true;if(f[0]=="FALSE")return false;return f[0]}function gd(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ga(e,r-2)];var f=ud(e,s,t);if(r!==s+n)i=cd(e,r-s-n,f,t);e.l=a;return[f,i]}function wd(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ga(e,r-2)];var f=ud(e,s,t);if(r!==s+n)i=cd(e,r-s-n,f,t);e.l=a;return[f,i]}function kd(e,r,t,a){var n=e.l+r;var i=ud(e,a,t);var s;if(n!==e.l)s=cd(e,n-e.l,i,t);return[i,s]}function Td(e,r,t){var a=e.l+r;var n,i=e._R(2);var s=ud(e,i,t);if(i==65535)return[[],ga(e,r-2)];if(r!==i+2)n=cd(e,a-i-2,s,t);return[s,n]}function Ed(e){var r;if(sa(e,e.l+6)!==65535)return[En(e),"n"];switch(e[e.l]){case 0:e.l+=8;return["String","s"];case 1:r=e[e.l+2]===1;e.l+=8;return[r,"b"];case 2:r=e[e.l+2];e.l+=8;return[r,"e"];case 3:e.l+=8;return["","s"];}return[]}function yd(e){if(e==null){var r=wa(8);r._W(1,3);r._W(1,0);r._W(2,0);r._W(2,0);r._W(2,65535);return r}else if(typeof e=="number")return yn(e);return yn(0)}function Sd(e,r,t){var a=e.l+r;var n=Rs(e,6);if(t.biff==2)++e.l;var i=Ed(e,8);var s=e._R(1);if(t.biff!=2){e._R(1);if(t.biff>=5){e._R(4)}}var f=wd(e,a-e.l,t);return{cell:n,val:i[0],formula:f,shared:s>>3&1,tt:i[1]}}function _d(e,r,t,a,n){var i=Ns(r,t,n);var s=yd(e.v);var f=wa(6);var l=1|32;f._W(2,l);f._W(4,0);var o=wa(e.bf.length);for(var c=0;c0?cd(e,i,n,t):null;return[n,s]}var xd=Ad;var Cd=Ad;var Od=Ad;var Rd=Ad;function Nd(e){if((e|0)==e&&e=0){var r=wa(11);r._W(4,3);r._W(1,30);r._W(2,e);r._W(4,0);return r}var t=wa(17);t._W(4,11);t._W(1,31);t._W(8,e);t._W(4,0);return t}function Id(e){var r=wa(10);r._W(4,2);r._W(1,28);r._W(1,e);r._W(4,0);return r}function Fd(e){var r=wa(10);r._W(4,2);r._W(1,29);r._W(1,e?1:0);r._W(4,0);return r}function Dd(e){var r=wa(7);r._W(4,3+2*e.length);r._W(1,23);r._W(2,e.length);var t=wa(2*e.length);t._W(2*e.length,e,"utf16le");var a=wa(4);a._W(4,0);return F([r,t,a])}function Pd(e){var r=La(e);var t=wa(15);t._W(4,7);t._W(1,4|1<<5);t._W(4,r.r);t._W(2,r.c|(e.charAt(0)=="$"?0:1)<<14|(e.match(/\$\d/)?0:1)<<15);t._W(4,0);return t}function Ld(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);var n=La(e);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var i=wa(17);i._W(4,9);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,n.r);i._W(2,n.c|(e.charAt(0)=="$"?0:1)<<14|(e.match(/\$\d/)?0:1)<<15);i._W(4,0);return i}function Md(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=wa(17);n._W(4,9);n._W(1,28|1<<5);n._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));n._W(4,0);n._W(2,0);n._W(4,0);return n}function Ud(e){var r=e.split(":"),t=r[0];var a=wa(23);a._W(4,15);t=r[0];var n=La(t);a._W(1,4|1<<5);a._W(4,n.r);a._W(2,n.c|(t.charAt(0)=="$"?0:1)<<14|(t.match(/\$\d/)?0:1)<<15);a._W(4,0);t=r[1];n=La(t);a._W(1,4|1<<5);a._W(4,n.r);a._W(2,n.c|(t.charAt(0)=="$"?0:1)<<14|(t.match(/\$\d/)?0:1)<<15);a._W(4,0);a._W(1,17);a._W(4,0);return a}function Bd(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=e.split(":");s=n[0];var i=wa(27);i._W(4,19);var s=n[0],f=La(s);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,f.r);i._W(2,f.c|(s.charAt(0)=="$"?0:1)<<14|(s.match(/\$\d/)?0:1)<<15);s=n[1];f=La(s);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,f.r);i._W(2,f.c|(s.charAt(0)=="$"?0:1)<<14|(s.match(/\$\d/)?0:1)<<15);i._W(1,17);i._W(4,0);return i}function Wd(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=Ua(e);var i=wa(23);i._W(4,15);i._W(1,27|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,n.s.r);i._W(4,n.e.r);i._W(2,n.s.c);i._W(2,n.e.c);i._W(4,0);return i}function Hd(e,r){if(typeof e=="number")return Nd(e);if(typeof e=="boolean")return Fd(e);if(/^#(DIV\/0!|GETTING_DATA|N\/A|NAME\?|NULL!|NUM!|REF!|VALUE!)$/.test(e))return Id(+qn[e]);if(e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Pd(e);if(e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Ud(e);if(e.match(/^#REF!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Wd(e,r);if(e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Ld(e,r);if(e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Bd(e,r);if(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!#REF!$/.test(e))return Md(e,r);if(/^".*"$/.test(e))return Dd(e);if(/^[+-]\d+$/.test(e))return Nd(parseInt(e,10));throw"Formula |"+e+"| not supported for XLSB"}var zd=Hd;var Vd={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"};var Gd={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ",319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK",348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD",380:"CUBEVALUE",381:"CUBEMEMBER",382:"CUBEMEMBERPROPERTY",383:"CUBERANKEDMEMBER",384:"HEX2BIN",385:"HEX2DEC",386:"HEX2OCT",387:"DEC2BIN",388:"DEC2HEX",389:"DEC2OCT",390:"OCT2BIN",391:"OCT2HEX",392:"OCT2DEC",393:"BIN2DEC",394:"BIN2OCT",395:"BIN2HEX",396:"IMSUB",397:"IMDIV",398:"IMPOWER",399:"IMABS",400:"IMSQRT",401:"IMLN",402:"IMLOG2",403:"IMLOG10",404:"IMSIN",405:"IMCOS",406:"IMEXP",407:"IMARGUMENT",408:"IMCONJUGATE",409:"IMAGINARY",410:"IMREAL",411:"COMPLEX",412:"IMSUM",413:"IMPRODUCT",414:"SERIESSUM",415:"FACTDOUBLE",416:"SQRTPI",417:"QUOTIENT",418:"DELTA",419:"GESTEP",420:"ISEVEN",421:"ISODD",422:"MROUND",423:"ERF",424:"ERFC",425:"BESSELJ",426:"BESSELK",427:"BESSELY",428:"BESSELI",429:"XIRR",430:"XNPV",431:"PRICEMAT",432:"YIELDMAT",433:"INTRATE",434:"RECEIVED",435:"DISC",436:"PRICEDISC",437:"YIELDDISC",438:"TBILLEQ",439:"TBILLPRICE",440:"TBILLYIELD",441:"PRICE",442:"YIELD",443:"DOLLARDE",444:"DOLLARFR",445:"NOMINAL",446:"EFFECT",447:"CUMPRINC",448:"CUMIPMT",449:"EDATE",450:"EOMONTH",451:"YEARFRAC",452:"COUPDAYBS",453:"COUPDAYS",454:"COUPDAYSNC",455:"COUPNCD",456:"COUPNUM",457:"COUPPCD",458:"DURATION",459:"MDURATION",460:"ODDLPRICE",461:"ODDLYIELD",462:"ODDFPRICE",463:"ODDFYIELD",464:"RANDBETWEEN",465:"WEEKNUM",466:"AMORDEGRC",467:"AMORLINC",468:"CONVERT",724:"SHEETJS",469:"ACCRINT",470:"ACCRINTM",471:"WORKDAY",472:"NETWORKDAYS",473:"GCD",474:"MULTINOMIAL",475:"LCM",476:"FVSCHEDULE",477:"CUBEKPIMEMBER",478:"CUBESET",479:"CUBESETCOUNT",480:"IFERROR",481:"COUNTIFS",482:"SUMIFS",483:"AVERAGEIF",484:"AVERAGEIFS"};var $d={2:1,3:1,10:0,15:1,16:1,17:1,18:1,19:0,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,34:0,35:0,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,63:0,65:3,66:3,67:1,68:1,69:1,70:1,71:1,72:1,73:1,74:0,75:1,76:1,77:1,79:2,80:2,83:1,85:0,86:1,89:0,90:1,94:0,95:0,97:2,98:1,99:1,101:3,102:3,105:1,106:1,108:2,111:1,112:1,113:1,114:1,117:2,118:1,119:4,121:1,126:1,127:1,128:1,129:1,130:1,131:1,133:1,134:1,135:1,136:2,137:2,138:2,140:1,141:1,142:3,143:4,144:4,161:1,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,186:1,189:3,190:1,195:3,196:3,197:1,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,225:0,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,247:4,252:2,257:1,261:1,271:1,273:4,274:2,275:2,276:2,277:3,278:3,279:1,280:3,281:3,282:3,283:1,284:1,285:2,286:4,287:3,288:2,289:4,290:3,291:3,292:3,293:4,294:1,295:3,296:1,297:3,298:1,299:2,300:3,301:3,302:4,303:2,304:2,305:2,306:2,307:2,308:2,309:3,310:2,311:2,312:2,313:2,314:2,315:2,316:4,325:2,326:2,327:2,328:2,331:2,332:2,337:2,342:1,343:1,346:2,347:1,350:4,351:3,352:1,353:2,360:1,368:1,369:1,370:1,371:1,372:1,373:1,374:1,375:1,376:1,377:1,378:1,382:3,385:1,392:1,393:1,396:2,397:2,398:2,399:1,400:1,401:1,402:1,403:1,404:1,405:1,406:1,407:1,408:1,409:1,410:1,414:4,415:1,416:1,417:2,420:1,421:1,422:2,424:1,425:2,426:2,427:2,428:2,430:3,438:3,439:3,440:3,443:2,444:2,445:2,446:2,447:6,448:6,449:2,450:2,464:2,468:3,476:2,479:1,480:2,65535:0};function jd(e){if(e.slice(0,3)=="of:")e=e.slice(3);if(e.charCodeAt(0)==61){e=e.slice(1);if(e.charCodeAt(0)==61)e=e.slice(1)}e=e.replace(/COM\.MICROSOFT\./g,"");e=e.replace(/\[((?:\.[A-Z]+[0-9]+)(?::\.[A-Z]+[0-9]+)?)\]/g,function(e,r){return r.replace(/\./g,"")});e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});e=e.replace(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function Xd(e){var r="of:="+e.replace(Mu,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function Yd(e){e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});var r=e.split(":");var t=r[0].split(".")[0];return[t,r[0].split(".")[1]+(r.length>1?":"+(r[1].split(".")[1]||r[1].split(".")[0]):"")]}function Kd(e){return e.replace(/!/,".")}var Zd={};var Jd={};var qd=typeof Map!=="undefined";function Qd(e,r,t){var a=0,n=e.length;if(t){if(qd?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var i=qd?t.get(r):t[r];for(;a-1){t.width=Uo(a);t.customWidth=1}else if(r.width!=null)t.width=r.width;if(r.hidden)t.hidden=true;if(r.level!=null){t.outlineLevel=t.level=r.level}return t}function rv(e,r){if(!e)return;var t=[.7,.7,.75,.75,.3,.3];if(r=="xlml")t=[1,1,1,1,.5,.5];if(e.left==null)e.left=t[0];if(e.right==null)e.right=t[1];if(e.top==null)e.top=t[2];if(e.bottom==null)e.bottom=t[3];if(e.header==null)e.header=t[4];if(e.footer==null)e.footer=t[5]}function tv(e,r,t){var a=t.revssf[r.z!=null?r.z:"General"];var n=60,i=e.length;if(a==null&&t.ssf){for(;n<392;++n)if(t.ssf[n]==null){qe(r.z,n);t.ssf[n]=r.z;t.revssf[r.z]=a=n;break}}for(n=0;n!=i;++n)if(e[n].numFmtId===a)return n;e[i]={numFmtId:a,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1};return i}function av(e,r,t,a,n,i){try{if(a.cellNF)e.z=Z[r]}catch(s){if(a.WTF)throw s}if(e.t==="z"&&!a.cellStyles)return;if(e.t==="d"&&typeof e.v==="string")e.v=Tr(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(Z[r]==null)qe(Xe[r]||"General",r);if(e.t==="e")e.w=e.w||Jn[e.v];else if(r===0){if(e.t==="n"){if((e.v|0)===e.v)e.w=e.v.toString(10);else e.w=oe(e.v)}else if(e.t==="d"){var f=hr(e.v);if((f|0)===f)e.w=f.toString(10);else e.w=oe(f)}else if(e.v===undefined)return"";else e.w=ce(e.v,Jd)}else if(e.t==="d")e.w=ze(r,hr(e.v),Jd);else e.w=ze(r,e.v,Jd)}catch(s){if(a.WTF)throw s}if(!a.cellStyles)return;if(t!=null)try{e.s=i.Fills[t];if(e.s.fgColor&&e.s.fgColor.theme&&!e.s.fgColor.rgb){e.s.fgColor.rgb=No(n.themeElements.clrScheme[e.s.fgColor.theme].rgb,e.s.fgColor.tint||0);if(a.WTF)e.s.fgColor.raw_rgb=n.themeElements.clrScheme[e.s.fgColor.theme].rgb}if(e.s.bgColor&&e.s.bgColor.theme){e.s.bgColor.rgb=No(n.themeElements.clrScheme[e.s.bgColor.theme].rgb,e.s.bgColor.tint||0);if(a.WTF)e.s.bgColor.raw_rgb=n.themeElements.clrScheme[e.s.bgColor.theme].rgb}}catch(s){if(a.WTF&&i.Fills)throw s}}function nv(e,r,t){if(e&&e["!ref"]){var a=za(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=Ba(t)}var sv=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var fv=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var lv=/<(?:\w:)?hyperlink [^>]*>/gm;var ov=/"(\w*:\w*)"/;var cv=/<(?:\w:)?col\b[^>]*[\/]?>/g;var uv=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var hv=/<(?:\w:)?pageMargins[^>]*\/>/g;var dv=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var vv=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var pv=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function mv(e,r,t,a,n,i,s){if(!e)return e;if(!a)a={"!id":{}};if(b!=null&&r.dense==null)r.dense=b;var f=r.dense?[]:{};var l={s:{r:2e6,c:2e6},e:{r:0,c:0}};var o="",c="";var u=e.match(fv);if(u){o=e.slice(0,u.index);c=e.slice(u.index+u[0].length)}else o=c=e;var h=o.match(dv);if(h)gv(h[0],f,n,t);else if(h=o.match(vv))wv(h[0],h[1]||"",f,n,t,s,i);var d=(o.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(d>0){var v=o.slice(d,d+50).match(ov);if(v)iv(f,v[1])}var p=o.match(pv);if(p&&p[1])Iv(p[1],n);var m=[];if(r.cellStyles){var g=o.match(cv);if(g)xv(m,g)}if(u)Pv(u[1],f,r,l,i,s);var w=c.match(uv);if(w)f["!autofilter"]=Ov(w[0]);var k=[];var T=c.match(sv);if(T)for(d=0;d!=T.length;++d)k[d]=za(T[d].slice(T[d].indexOf('"')+1));var E=c.match(lv);if(E)Sv(f,E,a);var y=c.match(hv);if(y)f["!margins"]=_v(Jr(y[0]));if(!f["!ref"]&&l.e.c>=l.s.c&&l.e.r>=l.s.r)f["!ref"]=Ba(l);if(r.sheetRows>0&&f["!ref"]){var S=za(f["!ref"]);if(r.sheetRows<=+S.e.r){S.e.r=r.sheetRows-1;if(S.e.r>l.e.r)S.e.r=l.e.r;if(S.e.rl.e.c)S.e.c=l.e.c;if(S.e.c0)f["!cols"]=m;if(k.length>0)f["!merges"]=k;return f}function bv(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function gv(e,r,t,a){var n=Jr(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=rt(mt(n.codeName))}function wv(e,r,t,a,n){gv(e.slice(0,e.indexOf(">")),t,a,n)}function kv(e,r,t,a,n){var i=false;var s={},f=null;if(a.bookType!=="xlsx"&&r.vbaraw){var l=r.SheetNames[t];try{if(r.Workbook)l=r.Workbook.Sheets[t].CodeName||l}catch(o){}i=true;s.codeName=bt(nt(l))}if(e&&e["!outline"]){var c={summaryBelow:1,summaryRight:1};if(e["!outline"].above)c.summaryBelow=0;if(e["!outline"].left)c.summaryRight=0;f=(f||"")+xt("outlinePr",null,c)}if(!i&&!f)return;n[n.length]=xt("sheetPr",f,s)}var Tv=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var Ev=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"]; -function yv(e){var r={sheet:1};Tv.forEach(function(t){if(e[t]!=null&&e[t])r[t]="1"});Ev.forEach(function(t){if(e[t]!=null&&!e[t])r[t]="0"});if(e.password)r.password=mo(e.password).toString(16).toUpperCase();return xt("sheetProtection",null,r)}function Sv(e,r,t){var a=Array.isArray(e);for(var n=0;n!=r.length;++n){var i=Jr(mt(r[n]),true);if(!i.ref)return;var s=((t||{})["!id"]||[])[i.id];if(s){i.Target=s.Target;if(i.location)i.Target+="#"+rt(i.location)}else{i.Target="#"+rt(i.location);s={Target:i.Target,TargetMode:"Internal"}}i.Rel=s;if(i.tooltip){i.Tooltip=i.tooltip;delete i.tooltip}var f=za(i.ref);for(var l=f.s.r;l<=f.e.r;++l)for(var o=f.s.c;o<=f.e.c;++o){var c=Ma({c:o,r:l});if(a){if(!e[l])e[l]=[];if(!e[l][o])e[l][o]={t:"z",v:undefined};e[l][o].l=i}else{if(!e[c])e[c]={t:"z",v:undefined};e[c].l=i}}}}function _v(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function Av(e){rv(e);return xt("pageMargins",null,e)}function xv(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Jr(r[a],true);if(n.hidden)n.hidden=ut(n.hidden);var i=parseInt(n.min,10)-1,s=parseInt(n.max,10)-1;if(n.outlineLevel)n.level=+n.outlineLevel||0;delete n.min;delete n.max;n.width=+n.width;if(!t&&n.width){t=true;Wo(n.width)}Ho(n);while(i<=s)e[i++]=yr(n)}}function Cv(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=xt("col",null,ev(n,a))}t[t.length]="";return t.join("")}function Ov(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function Rv(e,r,t,a){var n=typeof e.ref=="string"?e.ref:Ba(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var i=t.Workbook.Names;var s=Ua(n);if(s.s.r==s.e.r){s.e.r=Ua(r["!ref"]).e.r;n=Ba(s)}for(var f=0;fa-z][^>]*)?\/?>/g;function Iv(e,r){if(!r.Views)r.Views=[{}];(e.match(Nv)||[]).forEach(function(e,t){var a=Jr(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(a.rightToLeft&&ut(a.rightToLeft))r.Views[t].RTL=true})}function Fv(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return xt("sheetViews",xt("sheetView",null,n),{})}function Dv(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if((e.v===undefined||e.t==="z"&&!(a||{}).sheetStubs)&&typeof e.f!=="string"&&typeof e.z=="undefined")return"";var n="";var i=e.t,s=e.v;if(e.t!=="z")switch(e.t){case"b":n=e.v?"1":"0";break;case"n":n=""+e.v;break;case"e":n=Jn[e.v];break;case"d":if(a&&a.cellDates)n=Tr(e.v,-1).toISOString();else{e=yr(e);e.t="n";n=""+(e.v=hr(Tr(e.v)))}if(typeof e.z==="undefined")e.z=Z[14];break;default:n=e.v;break;}var f=e.t=="z"||e.v==null?"":_t("v",nt(n)),l={r:r};var o=tv(a.cellXfs,e,a);if(o!==0)l.s=o;switch(e.t){case"n":break;case"d":l.t="d";break;case"b":l.t="b";break;case"e":l.t="e";break;case"z":break;default:if(e.v==null){delete e.t;break}if(e.v.length>32767)throw new Error("Text length must not exceed 32767 characters");if(a&&a.bookSST){f=_t("v",""+Qd(a.Strings,e.v,a.revStrings));l.t="s";break}else l.t="str";break;}if(e.t!=i){e.t=i;e.v=s}if(typeof e.f=="string"&&e.f){var c=e.F&&e.F.slice(0,r.length)==r?{t:"array",ref:e.F}:null;f=xt("f",nt(e.f),c)+(e.v!=null?f:"")}if(e.l)t["!links"].push([r,e.l]);if(e.D)l.cm=1;return xt("c",f,l)}var Pv=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var i=gt("v"),s=gt("f");return function f(l,o,c,u,h,d){var v=0,p="",m=[],b=[],g=0,w=0,k=0,T="",E;var y,S=0,_=0;var A,x;var C=0,O=0;var R=Array.isArray(d.CellXf),N;var I=[];var F=[];var D=Array.isArray(o);var P=[],L={},M=false;var U=!!c.sheetStubs;for(var B=l.split(r),W=0,H=B.length;W!=H;++W){p=B[W].trim();var z=p.length;if(z===0)continue;var V=0;e:for(v=0;v":if(p[v-1]!="/"){++v;break e}if(c&&c.cellStyles){y=Jr(p.slice(V,v),true);S=y.r!=null?parseInt(y.r,10):S+1;_=-1;if(c.sheetRows&&c.sheetRows=v)break;y=Jr(p.slice(V,v),true);S=y.r!=null?parseInt(y.r,10):S+1;_=-1;if(c.sheetRows&&c.sheetRowsS-1)u.s.r=S-1;if(u.e.r":"")+p;if(b!=null&&b.length===2){g=0;T=b[1];for(w=0;w!=T.length;++w){if((k=T.charCodeAt(w)-64)<1||k>26)break;g=26*g+k}--g;_=g}else++_;for(w=0;w!=p.length;++w)if(p.charCodeAt(w)===62)break;++w;y=Jr(p.slice(0,w),true);if(!y.r)y.r=Ma({r:S-1,c:_});T=p.slice(w);E={t:""};if((b=T.match(i))!=null&&b[1]!=="")E.v=rt(b[1]);if(c.cellFormula){if((b=T.match(s))!=null&&b[1]!==""){E.f=rt(mt(b[1]),true);if(!c.xlfn)E.f=zu(E.f);if(b[0].indexOf('t="array"')>-1){E.F=(T.match(n)||[])[1];if(E.F.indexOf(":")>-1)I.push([za(E.F),E.F])}else if(b[0].indexOf('t="shared"')>-1){x=Jr(b[0]);var $=rt(mt(b[1]));if(!c.xlfn)$=zu($);F[parseInt(x.si,10)]=[x,$,y.r]}}else if(b=T.match(/]*\/>/)){x=Jr(b[0]);if(F[x.si])E.f=Wu(F[x.si][1],F[x.si][2],y.r)}var j=La(y.r);for(w=0;w=I[w][0].s.r&&j.r<=I[w][0].e.r)if(j.c>=I[w][0].s.c&&j.c<=I[w][0].e.c)E.F=I[w][1]}if(y.t==null&&E.v===undefined){if(E.f||E.F){E.v=0;E.t="n"}else if(!U)continue;else E.t="z"}else E.t=y.t||"n";if(u.s.c>_)u.s.c=_;if(u.e.c<_)u.e.c=_;switch(E.t){case"n":if(E.v==""||E.v==null){if(!U)continue;E.t="z"}else E.v=parseFloat(E.v);break;case"s":if(typeof E.v=="undefined"){if(!U)continue;E.t="z"}else{A=Zd[parseInt(E.v,10)];E.v=A.t;E.r=A.r;if(c.cellHTML)E.h=A.h}break;case"str":E.t="s";E.v=E.v!=null?rt(mt(E.v),true):"";if(c.cellHTML)E.h=ft(E.v);break;case"inlineStr":b=T.match(a);E.t="s";if(b!=null&&(A=Hl(b[1]))){E.v=A.t;if(c.cellHTML)E.h=A.h}else E.v="";break;case"b":E.v=ut(E.v);break;case"d":if(c.cellDates)E.v=Tr(E.v,1);else{E.v=hr(Tr(E.v,1));E.t="n"}break;case"e":if(!c||c.cellText!==false)E.w=E.v;E.v=qn[E.v];break;}C=O=0;N=null;if(R&&y.s!==undefined){N=d.CellXf[y.s];if(N!=null){if(N.numFmtId!=null)C=N.numFmtId;if(c.cellStyles){if(N.fillId!=null)O=N.fillId}}}av(E,C,O,c,h,d);if(c.cellDates&&R&&E.t=="n"&&Me(Z[C])){E.t="d";E.v=mr(E.v)}if(y.cm&&c.xlmeta){var X=(c.xlmeta.Cell||[])[+y.cm-1];if(X&&X.type=="XLDAPR")E.D=true}if(D){var Y=La(y.r);if(!o[Y.r])o[Y.r]=[];o[Y.r][Y.c]=E}else o[y.r]=E}}if(P.length>0)o["!rows"]=P}}();function Lv(e,r,t,a){var n=[],i=[],s=za(e["!ref"]),f="",l,o="",c=[],u=0,h=0,d=e["!rows"];var v=Array.isArray(e);var p={r:o},m,b=-1;for(h=s.s.c;h<=s.e.c;++h)c[h]=Ia(h);for(u=s.s.r;u<=s.e.r;++u){i=[];o=Ca(u);for(h=s.s.c;h<=s.e.c;++h){l=c[h]+o;var g=v?(e[u]||[])[h]:e[l];if(g===undefined)continue;if((f=Dv(g,l,e,r,t,a))!=null)i.push(f)}if(i.length>0||d&&d[u]){p={r:o};if(d&&d[u]){m=d[u];if(m.hidden)p.hidden=1;b=-1;if(m.hpx)b=Go(m.hpx);else if(m.hpt)b=m.hpt;if(b>-1){p.ht=b;p.customHeight=1}if(m.level){p.outlineLevel=m.level}}n[n.length]=xt("row",i.join(""),p)}}if(d)for(;u-1){p.ht=b;p.customHeight=1}if(m.level){p.outlineLevel=m.level}n[n.length]=xt("row","",p)}}return n.join("")}function Mv(e,r,t,a){var n=[Gr,xt("worksheet",null,{xmlns:Ft[0],"xmlns:r":It.r})];var i=t.SheetNames[e],s=0,f="";var l=t.Sheets[i];if(l==null)l={};var o=l["!ref"]||"A1";var c=za(o);if(c.e.c>16383||c.e.r>1048575){if(r.WTF)throw new Error("Range "+o+" exceeds format limit A1:XFD1048576");c.e.c=Math.min(c.e.c,16383);c.e.r=Math.min(c.e.c,1048575);o=Ba(c)}if(!a)a={};l["!comments"]=[];var u=[];kv(l,t,e,r,n);n[n.length]=xt("dimension",null,{ref:o});n[n.length]=Fv(l,r,e,t);if(r.sheetFormat)n[n.length]=xt("sheetFormatPr",null,{defaultRowHeight:r.sheetFormat.defaultRowHeight||"16",baseColWidth:r.sheetFormat.baseColWidth||"10",outlineLevelRow:r.sheetFormat.outlineLevelRow||"7"});if(l["!cols"]!=null&&l["!cols"].length>0)n[n.length]=Cv(l,l["!cols"]);n[s=n.length]="";l["!links"]=[];if(l["!ref"]!=null){f=Lv(l,r,e,t,a);if(f.length>0)n[n.length]=f}if(n.length>s+1){n[n.length]="";n[s]=n[s].replace("/>",">")}if(l["!protect"])n[n.length]=yv(l["!protect"]);if(l["!autofilter"]!=null)n[n.length]=Rv(l["!autofilter"],l,t,e);if(l["!merges"]!=null&&l["!merges"].length>0)n[n.length]=bv(l["!merges"]);var h=-1,d,v=-1;if(l["!links"].length>0){n[n.length]="";l["!links"].forEach(function(e){if(!e[1].Target)return;d={ref:e[0]};if(e[1].Target.charAt(0)!="#"){v=oi(a,-1,nt(e[1].Target).replace(/#.*$/,""),ii.HLINK);d["r:id"]="rId"+v}if((h=e[1].Target.indexOf("#"))>-1)d.location=nt(e[1].Target.slice(h+1));if(e[1].Tooltip)d.tooltip=nt(e[1].Tooltip);n[n.length]=xt("hyperlink",null,d)});n[n.length]=""}delete l["!links"];if(l["!margins"]!=null)n[n.length]=Av(l["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=_t("ignoredErrors",xt("ignoredError",null,{numberStoredAsText:1,sqref:o}));if(u.length>0){v=oi(a,-1,"../drawings/drawing"+(e+1)+".xml",ii.DRAW);n[n.length]=xt("drawing",null,{"r:id":"rId"+v});l["!drawing"]=u}if(l["!comments"].length>0){v=oi(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",ii.VML);n[n.length]=xt("legacyDrawing",null,{"r:id":"rId"+v});l["!legacy"]=v}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function Uv(e,r){var t={};var a=e.l+r;t.r=e._R(4);e.l+=4;var n=e._R(2);e.l+=1;var i=e._R(1);e.l=a;if(i&7)t.level=i&7;if(i&16)t.hidden=true;if(i&32)t.hpt=n/20;return t}function Bv(e,r,t){var a=wa(17+8*16);var n=(t["!rows"]||[])[e]||{};a._W(4,e);a._W(4,0);var i=320;if(n.hpx)i=Go(n.hpx)*20;else if(n.hpt)i=n.hpt*20;a._W(2,i);a._W(1,0);var s=0;if(n.level)s|=n.level;if(n.hidden)s|=16;if(n.hpx||n.hpt)s|=32;a._W(1,s);a._W(1,0);var f=0,l=a.l;a.l+=4;var o={r:e,c:0};for(var c=0;c<16;++c){if(r.s.c>c+1<<10||r.e.ca.l?a.slice(0,a.l):a}function Wv(e,r,t,a){var n=Bv(a,t,r);if(n.length>17||(r["!rows"]||[])[a])Ea(e,0,n)}var Hv=kn;var zv=Tn;function Vv(){}function Gv(e,r){var t={};var a=e[e.l];++e.l;t.above=!(a&64);t.left=!(a&128);e.l+=18;t.name=on(e,r-19);return t}function $v(e,r,t){if(t==null)t=wa(84+4*e.length);var a=192;if(r){if(r.above)a&=~64;if(r.left)a&=~128}t._W(1,a);for(var n=1;n<3;++n)t._W(1,0);_n({auto:1},t);t._W(-4,-1);t._W(-4,-1);cn(e,t);return t.slice(0,t.l)}function jv(e){var r=nn(e);return[r]}function Xv(e,r,t){if(t==null)t=wa(8);return sn(r,t)}function Yv(e){var r=fn(e);return[r]}function Kv(e,r,t){if(t==null)t=wa(4);return ln(r,t)}function Zv(e){var r=nn(e);var t=e._R(1);return[r,t,"b"]}function Jv(e,r,t){if(t==null)t=wa(9);sn(r,t);t._W(1,e.v?1:0);return t}function qv(e){var r=fn(e);var t=e._R(1);return[r,t,"b"]}function Qv(e,r,t){if(t==null)t=wa(5);ln(r,t);t._W(1,e.v?1:0);return t}function ep(e){var r=nn(e);var t=e._R(1);return[r,t,"e"]}function rp(e,r,t){if(t==null)t=wa(9);sn(r,t);t._W(1,e.v);return t}function tp(e){var r=fn(e);var t=e._R(1);return[r,t,"e"]}function ap(e,r,t){if(t==null)t=wa(8);ln(r,t);t._W(1,e.v);t._W(2,0);t._W(1,0);return t}function np(e){var r=nn(e);var t=e._R(4);return[r,t,"s"]}function ip(e,r,t){if(t==null)t=wa(12);sn(r,t);t._W(4,r.v);return t}function sp(e){var r=fn(e);var t=e._R(4);return[r,t,"s"]}function fp(e,r,t){if(t==null)t=wa(8);ln(r,t);t._W(4,r.v);return t}function lp(e){var r=nn(e);var t=En(e);return[r,t,"n"]}function op(e,r,t){if(t==null)t=wa(16);sn(r,t);yn(e.v,t);return t}function cp(e){var r=fn(e);var t=En(e);return[r,t,"n"]}function up(e,r,t){if(t==null)t=wa(12);ln(r,t);yn(e.v,t);return t}function hp(e){var r=nn(e);var t=mn(e);return[r,t,"n"]}function dp(e,r,t){if(t==null)t=wa(12);sn(r,t);bn(e.v,t);return t}function vp(e){var r=fn(e);var t=mn(e);return[r,t,"n"]}function pp(e,r,t){if(t==null)t=wa(8);ln(r,t);bn(e.v,t);return t}function mp(e){var r=nn(e);var t=en(e);return[r,t,"is"]}function bp(e){var r=nn(e);var t=Za(e);return[r,t,"str"]}function gp(e,r,t){if(t==null)t=wa(12+4*e.v.length);sn(r,t);Ja(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function wp(e){var r=fn(e);var t=Za(e);return[r,t,"str"]}function kp(e,r,t){if(t==null)t=wa(8+4*e.v.length);ln(r,t);Ja(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function Tp(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"b"];if(t.cellFormula){e.l+=2;var f=Cd(e,a-e.l,t);s[3]=bd(f,null,n,t.supbooks,t)}else e.l=a;return s}function Ep(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"e"];if(t.cellFormula){e.l+=2;var f=Cd(e,a-e.l,t);s[3]=bd(f,null,n,t.supbooks,t)}else e.l=a;return s}function yp(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=En(e);var s=[n,i,"n"];if(t.cellFormula){e.l+=2;var f=Cd(e,a-e.l,t);s[3]=bd(f,null,n,t.supbooks,t)}else e.l=a;return s}function Sp(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=Za(e);var s=[n,i,"str"];if(t.cellFormula){e.l+=2;var f=Cd(e,a-e.l,t);s[3]=bd(f,null,n,t.supbooks,t)}else e.l=a;return s}var _p=kn;var Ap=Tn;function xp(e,r){if(r==null)r=wa(4);r._W(4,e);return r}function Cp(e,r){var t=e.l+r;var a=kn(e,16);var n=un(e);var i=Za(e);var s=Za(e);var f=Za(e);e.l=t;var l={rfx:a,relId:n,loc:i,display:f};if(s)l.Tooltip=s;return l}function Op(e,r){var t=wa(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));Tn({s:La(e[0]),e:La(e[0])},t);pn("rId"+r,t);var a=e[1].Target.indexOf("#");var n=a==-1?"":e[1].Target.slice(a+1);Ja(n||"",t);Ja(e[1].Tooltip||"",t);Ja("",t);return t.slice(0,t.l)}function Rp(){}function Np(e,r,t){var a=e.l+r;var n=gn(e,16);var i=e._R(1);var s=[n];s[2]=i;if(t.cellFormula){var f=xd(e,a-e.l,t);s[1]=f}else e.l=a;return s}function Ip(e,r,t){var a=e.l+r;var n=kn(e,16);var i=[n];if(t.cellFormula){var s=Rd(e,a-e.l,t);i[1]=s;e.l=a}else e.l=a;return i}function Fp(e,r,t){if(t==null)t=wa(18);var a=ev(e,r);t._W(-4,e);t._W(-4,e);t._W(4,(a.width||10)*256);t._W(4,0);var n=0;if(r.hidden)n|=1;if(typeof a.width=="number")n|=2;if(r.level)n|=r.level<<8;t._W(2,n);return t}var Dp=["left","right","top","bottom","header","footer"];function Pp(e){var r={};Dp.forEach(function(t){r[t]=En(e,8)});return r}function Lp(e,r){if(r==null)r=wa(6*8);rv(e);Dp.forEach(function(t){yn(e[t],r)});return r}function Mp(e){var r=e._R(2);e.l+=28;return{RTL:r&32}}function Up(e,r,t){if(t==null)t=wa(30);var a=924;if((((r||{}).Views||[])[0]||{}).RTL)a|=32;t._W(2,a);t._W(4,0);t._W(4,0);t._W(4,0);t._W(1,0);t._W(1,0);t._W(2,0);t._W(2,100);t._W(2,0);t._W(2,0);t._W(2,0);t._W(4,0);return t}function Bp(e){var r=wa(24);r._W(4,4);r._W(4,1);Tn(e,r);return r}function Wp(e,r){if(r==null)r=wa(16*4+2);r._W(2,e.password?mo(e.password):0);r._W(4,1);[["objects",false],["scenarios",false],["formatCells",true],["formatColumns",true],["formatRows",true],["insertColumns",true],["insertRows",true],["insertHyperlinks",true],["deleteColumns",true],["deleteRows",true],["selectLockedCells",false],["sort",true],["autoFilter",true],["pivotTables",true],["selectUnlockedCells",false]].forEach(function(t){if(t[1])r._W(4,e[t[0]]!=null&&!e[t[0]]?1:0);else r._W(4,e[t[0]]!=null&&e[t[0]]?0:1)});return r}function Hp(){}function zp(){}function Vp(e,r,t,a,n,i,s){if(!e)return e;var f=r||{};if(!a)a={"!id":{}};if(b!=null&&f.dense==null)f.dense=b;var l=f.dense?[]:{};var o;var c={s:{r:2e6,c:2e6},e:{r:0,c:0}};var u=[];var h=false,d=false;var v,p,m,g,w,k,T,E,y;var S=[];f.biff=12;f["!row"]=0;var _=0,A=false;var x=[];var C={};var O=f.supbooks||n.supbooks||[[]];O.sharedf=C;O.arrayf=x;O.SheetNames=n.SheetNames||n.Sheets.map(function(e){return e.name});if(!f.supbooks){f.supbooks=O;if(n.Names)for(var R=0;R=R[0].s.r&&v.r<=R[0].e.r)if(w>=R[0].s.c&&w<=R[0].e.c){p.F=Ba(R[0]);A=true}}if(!A&&e.length>3)p.f=e[3]}if(c.s.r>v.r)c.s.r=v.r;if(c.s.c>w)c.s.c=w;if(c.e.rv.r)c.s.r=v.r;if(c.s.c>w)c.s.c=w;if(c.e.r=e.s){N[e.e--]={width:e.w/256,hidden:!!(e.flags&1),level:e.level};if(!F){F=true;Wo(e.w/256)}Ho(N[e.e+1])}break;case 161:l["!autofilter"]={ref:Ba(e)};break;case 476:l["!margins"]=e;break;case 147:if(!n.Sheets[t])n.Sheets[t]={};if(e.name)n.Sheets[t].CodeName=e.name;if(e.above||e.left)l["!outline"]={above:e.above,left:e.left};break;case 137:if(!n.Views)n.Views=[{}];if(!n.Views[0])n.Views[0]={};if(e.RTL)n.Views[0].RTL=true;break;case 485:break;case 64:;case 1053:break;case 151:break;case 152:;case 175:;case 644:;case 625:;case 562:;case 396:;case 1112:;case 1146:;case 471:;case 1050:;case 649:;case 1105:;case 589:;case 607:;case 564:;case 1055:;case 168:;case 174:;case 1180:;case 499:;case 507:;case 550:;case 171:;case 167:;case 1177:;case 169:;case 1181:;case 551:;case 552:;case 661:;case 639:;case 478:;case 537:;case 477:;case 536:;case 1103:;case 680:;case 1104:;case 1024:;case 663:;case 535:;case 678:;case 504:;case 1043:;case 428:;case 170:;case 3072:;case 50:;case 2070:;case 1045:break;case 35:h=true;break;case 36:h=false;break;case 37:u.push(b);h=true;break;case 38:u.pop();h=false;break;default:if(r.T){}else if(!h||f.WTF)throw new Error("Unexpected record 0x"+b.toString(16));}},f);delete f.supbooks;delete f["!row"];if(!l["!ref"]&&(c.s.r<2e6||o&&(o.e.r>0||o.e.c>0||o.s.r>0||o.s.c>0)))l["!ref"]=Ba(o||c);if(f.sheetRows&&l["!ref"]){var L=za(l["!ref"]);if(f.sheetRows<=+L.e.r){L.e.r=f.sheetRows-1;if(L.e.r>c.e.r)L.e.r=c.e.r;if(L.e.rc.e.c)L.e.c=c.e.c;if(L.e.c0)l["!merges"]=S;if(N.length>0)l["!cols"]=N;if(I.length>0)l["!rows"]=I;return l}function Gp(e,r,t,a,n,i,s){var f={r:t,c:a};if(r.c)i["!comments"].push([Ma(f),r.c]);if(r.v===undefined)return false;var l="";switch(r.t){case"b":l=r.v?"1":"0";break;case"d":r=yr(r);r.z=r.z||Z[14];r.v=hr(Tr(r.v));r.t="n";break;case"n":;case"e":l=""+r.v;break;default:l=r.v;break;}f.s=tv(n.cellXfs,r,n);if(r.l)i["!links"].push([Ma(f),r.l]);switch(r.t){case"s":;case"str":if(n.bookSST){l=Qd(n.Strings,r.v,n.revStrings);f.t="s";f.v=l;if(s)Ea(e,18,fp(r,f));else Ea(e,7,ip(r,f))}else{f.t="str";if(s)Ea(e,17,kp(r,f));else Ea(e,6,gp(r,f))}return true;case"n":if(r.v==(r.v|0)&&r.v>-1e3&&r.v<1e3){if(s)Ea(e,13,pp(r,f));else Ea(e,2,dp(r,f))}else{if(s)Ea(e,16,up(r,f));else Ea(e,5,op(r,f))}return true;case"b":f.t="b";if(s)Ea(e,15,Qv(r,f));else Ea(e,4,Jv(r,f));return true;case"e":f.t="e";if(s)Ea(e,14,ap(r,f));else Ea(e,3,rp(r,f));return true;}if(s)Ea(e,12,Kv(r,f));else Ea(e,1,Xv(r,f));return true}function $p(e,r,t,a){var n=za(r["!ref"]||"A1"),i,s="",f=[];Ea(e,145);var l=Array.isArray(r);var o=n.e.r;if(r["!rows"])o=Math.max(n.e.r,r["!rows"].length-1);for(var c=n.s.r;c<=o;++c){s=Ca(c);Wv(e,r,n,c);var u=false;if(c<=n.e.r)for(var h=n.s.c;h<=n.e.c;++h){if(c===n.s.r)f[h]=Ia(h);i=f[h]+s;var d=l?(r[c]||[])[h]:r[i];if(!d){u=false;continue}u=Gp(e,d,c,h,a,r,u)}}Ea(e,146)}function jp(e,r){if(!r||!r["!merges"])return;Ea(e,177,xp(r["!merges"].length));r["!merges"].forEach(function(r){Ea(e,176,Ap(r))});Ea(e,178)}function Xp(e,r){if(!r||!r["!cols"])return;Ea(e,390);r["!cols"].forEach(function(r,t){if(r)Ea(e,60,Fp(t,r))});Ea(e,391)}function Yp(e,r){if(!r||!r["!ref"])return;Ea(e,648);Ea(e,649,Bp(za(r["!ref"])));Ea(e,650)}function Kp(e,r,t){r["!links"].forEach(function(r){if(!r[1].Target)return;var a=oi(t,-1,r[1].Target.replace(/#.*$/,""),ii.HLINK);Ea(e,494,Op(r,a))});delete r["!links"]}function Zp(e,r,t,a){if(r["!comments"].length>0){var n=oi(a,-1,"../drawings/vmlDrawing"+(t+1)+".vml",ii.VML);Ea(e,551,pn("rId"+n));r["!legacy"]=n}}function Jp(e,r,t,a){if(!r["!autofilter"])return;var n=r["!autofilter"];var i=typeof n.ref==="string"?n.ref:Ba(n.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var s=t.Workbook.Names;var f=Ua(i);if(f.s.r==f.e.r){f.e.r=Ua(r["!ref"]).e.r;i=Ba(f)}for(var l=0;l16383||o.e.r>1048575){if(r.WTF)throw new Error("Range "+(s["!ref"]||"A1")+" exceeds format limit A1:XFD1048576");o.e.c=Math.min(o.e.c,16383);o.e.r=Math.min(o.e.c,1048575)}s["!links"]=[];s["!comments"]=[];Ea(n,129);if(t.vbaraw||s["!outline"])Ea(n,147,$v(f,s["!outline"]));Ea(n,148,zv(o));qp(n,s,t.Workbook);Qp(n,s);Xp(n,s,e,r,t);$p(n,s,e,r,t);em(n,s);Jp(n,s,t,e);jp(n,s);Kp(n,s,a);if(s["!margins"])Ea(n,476,Lp(s["!margins"]));if(!r||r.ignoreEC||r.ignoreEC==void 0)Yp(n,s);Zp(n,s,e,a);Ea(n,130);return n.end()}function tm(e){var r=[];var t=e.match(/^/);var a;(e.match(/(.*?)<\/c:pt>/gm)||[]).forEach(function(e){var a=e.match(/(.*)<\/c:v><\/c:pt>/);if(!a)return;r[+a[1]]=t?+a[2]:a[2]});var n=rt((e.match(/([\s\S]*?)<\/c:formatCode>/)||["","General"])[1]);(e.match(/(.*?)<\/c:f>/gm)||[]).forEach(function(e){a=e.replace(/<.*?>/g,"")});return[r,n,a]}function am(e,r,t,a,n,i){var s=i||{"!type":"chart"};if(!e)return i;var f=0,l=0,o="A";var c={s:{r:2e6,c:2e6},e:{r:0,c:0}};(e.match(/[\s\S]*?<\/c:numCache>/gm)||[]).forEach(function(e){var r=tm(e);c.s.r=c.s.c=0;c.e.c=f;o=Ia(f);r[0].forEach(function(e,t){s[o+Ca(t)]={t:"n",v:e,z:r[1]};l=t});if(c.e.r0)s["!ref"]=Ba(c);return s}function nm(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var i={"!type":"chart","!drawel":null,"!rel":""};var s;var f=e.match(dv);if(f)gv(f[0],i,n,t);if(s=e.match(/drawing r:id="(.*?)"/))i["!rel"]=s[1];if(a["!id"][i["!rel"]])i["!drawel"]=a["!id"][i["!rel"]];return i}function im(e,r){e.l+=10;var t=Za(e,r-10);return{name:t}}function sm(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var i={"!type":"chart","!drawel":null,"!rel":""};var s=[];var f=false;ka(e,function l(e,a,o){switch(o){case 550:i["!rel"]=e;break;case 651:if(!n.Sheets[t])n.Sheets[t]={};if(e.name)n.Sheets[t].CodeName=e.name;break;case 562:;case 652:;case 669:;case 679:;case 551:;case 552:;case 476:;case 3072:break;case 35:f=true;break;case 36:f=false;break;case 37:s.push(o);break;case 38:s.pop();break;default:if(a.T>0)s.push(o);else if(a.T<0)s.pop();else if(!f||r.WTF)throw new Error("Unexpected record 0x"+o.toString(16));}},r);if(a["!id"][i["!rel"]])i["!drawel"]=a["!id"][i["!rel"]];return i}var fm=[["allowRefreshQuery",false,"bool"],["autoCompressPictures",true,"bool"],["backupFile",false,"bool"],["checkCompatibility",false,"bool"],["CodeName",""],["date1904",false,"bool"],["defaultThemeVersion",0,"int"],["filterPrivacy",false,"bool"],["hidePivotFieldList",false,"bool"],["promptedSolutions",false,"bool"],["publishItems",false,"bool"],["refreshAllConnections",false,"bool"],["saveExternalLinkValues",true,"bool"],["showBorderUnselectedTables",true,"bool"],["showInkAnnotation",true,"bool"],["showObjects","all"],["showPivotChartFilter",false,"bool"],["updateLinks","userSet"]];var lm=[["activeTab",0,"int"],["autoFilterDateGrouping",true,"bool"],["firstSheet",0,"int"],["minimized",false,"bool"],["showHorizontalScroll",true,"bool"],["showSheetTabs",true,"bool"],["showVerticalScroll",true,"bool"],["tabRatio",600,"int"],["visibility","visible"]];var om=[];var cm=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function um(e,r){for(var t=0;t!=e.length;++t){var a=e[t];for(var n=0;n!=r.length;++n){var i=r[n];if(a[i[0]]==null)a[i[0]]=i[1];else switch(i[2]){case"bool":if(typeof a[i[0]]=="string")a[i[0]]=ut(a[i[0]]);break;case"int":if(typeof a[i[0]]=="string")a[i[0]]=parseInt(a[i[0]],10);break;}}}}function hm(e,r){for(var t=0;t!=r.length;++t){var a=r[t];if(e[a[0]]==null)e[a[0]]=a[1];else switch(a[2]){case"bool":if(typeof e[a[0]]=="string")e[a[0]]=ut(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function dm(e){hm(e.WBProps,fm);hm(e.CalcPr,cm);um(e.WBView,lm);um(e.Sheets,om);Jd.date1904=ut(e.WBProps.date1904)}function vm(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return ut(e.Workbook.WBProps.date1904)?"true":"false"}var pm=":][*?/\\".split("");function mm(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;pm.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function bm(e,r,t){e.forEach(function(a,n){mm(a);for(var i=0;i22)throw new Error("Bad Code Name: Worksheet"+s)}})}function gm(e){if(!e||!e.SheetNames||!e.Sheets)throw new Error("Invalid Workbook");if(!e.SheetNames.length)throw new Error("Workbook is empty");var r=e.Workbook&&e.Workbook.Sheets||[];bm(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":fm.forEach(function(e){if(c[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=ut(c[e[0]]);break;case"int":t.WBProps[e[0]]=parseInt(c[e[0]],10);break;default:t.WBProps[e[0]]=c[e[0]];}});if(c.codeName)t.WBProps.CodeName=mt(c.codeName);break;case"":break;case"":break;case"":;case"":break;case"":delete c[0];t.WBView.push(c);break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":a=false;break;case"":{i.Ref=rt(mt(e.slice(s,o)));t.Names.push(i)}break;case"":break;case"":delete c[0];t.CalcPr=c;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":;case"":break;case"":a=false;break;case"":a=true;break;case"":a=false;break;case"0;var a={codeName:"ThisWorkbook"};if(e.Workbook&&e.Workbook.WBProps){fm.forEach(function(r){if(e.Workbook.WBProps[r[0]]==null)return;if(e.Workbook.WBProps[r[0]]==r[1])return;a[r[0]]=e.Workbook.WBProps[r[0]]});if(e.Workbook.WBProps.CodeName){a.codeName=e.Workbook.WBProps.CodeName;delete a.CodeName}}r[r.length]=xt("workbookPr",null,a);var n=e.Workbook&&e.Workbook.Sheets||[];var i=0;if(n&&n[0]&&!!n[0].Hidden){r[r.length]="";for(i=0;i!=e.SheetNames.length;++i){if(!n[i])break;if(!n[i].Hidden)break}if(i==e.SheetNames.length)i=0;r[r.length]='';r[r.length]=""}r[r.length]="";for(i=0;i!=e.SheetNames.length;++i){var s={name:nt(e.SheetNames[i].slice(0,31))};s.sheetId=""+(i+1);s["r:id"]="rId"+(i+1);if(n[i])switch(n[i].Hidden){case 1:s.state="hidden";break;case 2:s.state="veryHidden";break;}r[r.length]=xt("sheet",null,s)}r[r.length]="";if(t){r[r.length]="";if(e.Workbook&&e.Workbook.Names)e.Workbook.Names.forEach(function(e){var t={name:e.Name};if(e.Comment)t.comment=e.Comment;if(e.Sheet!=null)t.localSheetId=""+e.Sheet;if(e.Hidden)t.hidden="1";if(!e.Ref)return;r[r.length]=xt("definedName",nt(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Em(e,r){var t={};t.Hidden=e._R(4);t.iTabID=e._R(4);t.strRelID=vn(e,r-8);t.name=Za(e);return t}function ym(e,r){if(!r)r=wa(127);r._W(4,e.Hidden);r._W(4,e.iTabID);pn(e.strRelID,r);Ja(e.name.slice(0,31),r);return r.length>r.l?r.slice(0,r.l):r}function Sm(e,r){var t={};var a=e._R(4);t.defaultThemeVersion=e._R(4);var n=r>8?Za(e):"";if(n.length>0)t.CodeName=n;t.autoCompressPictures=!!(a&65536);t.backupFile=!!(a&64);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 _m(e,r){if(!r)r=wa(72);var t=0;if(e){if(e.date1904)t|=1;if(e.filterPrivacy)t|=8}r._W(4,t);r._W(4,0);cn(e&&e.CodeName||"ThisWorkbook",r);return r.slice(0,r.l)}function Am(e,r){var t={};e._R(4);t.ArchID=e._R(4);e.l+=r-8;return t}function xm(e,r,t){var a=e.l+r;var n=e._R(4);e.l+=1;var i=e._R(4);var s=dn(e);var f=Od(e,0,t);var l=un(e);if(n&32)s="_xlnm."+s;e.l=a;var o={Name:s,Ptg:f,Flags:n};if(i<268435455)o.Sheet=i;if(l)o.Comment=l;return o}function Cm(e,r){var t=wa(9);var a=0;var n=e.Name;if(Qn.indexOf(n)>-1){a|=32;n=n.slice(6)}t._W(4,a);t._W(1,0);t._W(4,e.Sheet==null?4294967295:e.Sheet);var i=[t,Ja(n),zd(e.Ref,r)];if(e.Comment)i.push(hn(e.Comment));else{var s=wa(4);s._W(4,4294967295);i.push(s)}return F(i)}function Om(e,r){var t={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var a=[];var n=false;if(!r)r={};r.biff=12;var i=[];var s=[[]];s.SheetNames=[];s.XTI=[];Fb[16]={n:"BrtFRTArchID$",f:Am};ka(e,function f(e,l,o){switch(o){case 156:s.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=bd(e.Ptg,null,null,s,r);delete r.SID;delete e.Ptg;i.push(e);break;case 1036:break;case 357:;case 358:;case 355:;case 667:if(!s[0].length)s[0]=[o,e];else s.push([o,e]);s[s.length-1].XTI=[];break;case 362:if(s.length===0){s[0]=[];s[0].XTI=[]}s[s.length-1].XTI=s[s.length-1].XTI.concat(e);s.XTI=s.XTI.concat(e);break;case 361:break;case 2071:;case 158:;case 143:;case 664:;case 353:break;case 3072:;case 3073:;case 534:;case 677:;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.push(o);n=true;break;case 36:a.pop();n=false;break;case 37:a.push(o);n=true;break;case 38:a.pop();n=false;break;case 16:break;default:if(l.T){}else if(!n||r.WTF&&a[a.length-1]!=37&&a[a.length-1]!=35)throw new Error("Unexpected record 0x"+o.toString(16));}},r);dm(t);t.Names=i;t.supbooks=s;return t}function Rm(e,r){Ea(e,143);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]};Ea(e,156,ym(n))}Ea(e,144)}function Nm(r,t){if(!t)t=wa(127);for(var a=0;a!=4;++a)t._W(4,0);Ja("SheetJS",t);Ja(e.version,t);Ja(e.version,t);Ja("7262",t);return t.length>t.l?t.slice(0,t.l):t}function Im(e,r){if(!r)r=wa(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 Fm(e,r){if(!r.Workbook||!r.Workbook.Sheets)return;var t=r.Workbook.Sheets;var a=0,n=-1,i=-1;for(;an)return;Ea(e,135);Ea(e,158,Im(n));Ea(e,136)}function Dm(e,r){if(!r.Workbook||!r.Workbook.Names)return;r.Workbook.Names.forEach(function(t){try{if(t.Flags&14)return;Ea(e,39,Cm(t,r))}catch(a){console.error("Could not serialize defined name "+JSON.stringify(t))}})}function Pm(e){var r=e.SheetNames.length;var t=wa(12*r+28);t._W(4,r+2);t._W(4,0);t._W(4,-2);t._W(4,-2);t._W(4,0);t._W(4,-1);t._W(4,-1);for(var a=0;a-1?rt(r||e).replace(/<.*?>/g,""):a.r;break;case"DateTime":if(e.slice(-1)!="Z")e+="Z";a.v=(Tr(e)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(a.v!==a.v)a.v=rt(e);else if(a.v<60)a.v=a.v-1;if(!c||c=="General")c="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=qn[e];if(o.cellText!==false)a.w=e;break;default:if(e==""&&r==""){a.t="z"}else{a.t="s";a.v=ot(r||e)}break;}tb(a,c,o);if(o.cellFormula!==false){if(a.Formula){var p=rt(a.Formula);if(p.charCodeAt(0)==61)p=p.slice(1);a.f=Lu(p,n);delete a.Formula;if(a.ArrayRange=="RC")a.F=Lu("RC:RC",n);else if(a.ArrayRange){a.F=Lu(a.ArrayRange,n);l.push([za(a.F),a.F])}}else{for(v=0;v=l[v][0].s.r&&n.r<=l[v][0].e.r)if(n.c>=l[v][0].s.c&&n.c<=l[v][0].e.c)a.F=l[v][1]}}if(o.cellStyles){d.forEach(function(e){if(!h.patternType&&e.patternType)h.patternType=e.patternType});a.s=h}if(a.StyleID!==undefined)a.ixfe=a.StyleID}function ib(e){return Qn.indexOf("_xlnm."+e)>-1?"_xlnm."+e:e}function sb(e){e.t=e.v||"";e.t=e.t.replace(/\r\n/g,"\n").replace(/\r/g,"\n");e.v=e.w=e.ixfe=undefined}function fb(e,r){var t=r||{};$e();var n=d(Rt(e));if(t.type=="binary"||t.type=="array"||t.type=="base64"){if(typeof a!=="undefined")n=a.utils.decode(65001,c(n));else n=mt(n)}var i=n.slice(0,1024).toLowerCase(),s=false;i=i.replace(/".*?"/g,"");if((i.indexOf(">")&1023)>Math.min(i.indexOf(",")&1023,i.indexOf(";")&1023)){var f=yr(t);f.type="string";return Il.to_workbook(n,f)}if(i.indexOf("=0)s=true});if(s)return ng(n,t);Qm={"General Number":"General","General Date":Z[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":Z[15],"Short Date":Z[14],"Long Time":Z[19],"Medium Time":Z[18],"Short Time":Z[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:Z[2],Standard:Z[4],Percent:Z[10],Scientific:Z[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var l;var o=[],u;if(b!=null&&t.dense==null)t.dense=b;var h={},v=[],p=t.dense?[]:{},m="";var g={},w={};var k=Jm(''),T=0;var E=0,y=0;var S={s:{r:2e6,c:2e6},e:{r:0,c:0}};var _={},A={};var x="",C=0;var O=[];var R={},N={},I=0,F=[];var D=[],P={};var L=[],M,U=false;var B=[];var W=[],H={},z=0,V=0;var G={Sheets:[],WBProps:{date1904:false}},$={};Nt.lastIndex=0;n=n.replace(//gm,"");var j="";while(l=Nt.exec(n))switch(l[3]=(j=l[3]).toLowerCase()){case"data":if(j=="data"){if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else if(l[0].charAt(l[0].length-2)!=="/")o.push([l[3],true]);break}if(o[o.length-1][1])break;if(l[1]==="/")nb(n.slice(T,l.index),x,k,o[o.length-1][0]=="comment"?P:g,{c:E,r:y},_,L[E],w,B,t);else{x="";k=Jm(l[0]);T=l.index+l[0].length}break;case"cell":if(l[1]==="/"){if(D.length>0)g.c=D;if((!t.sheetRows||t.sheetRows>y)&&g.v!==void 0){if(t.dense){if(!p[y])p[y]=[];p[y][E]=g}else p[Ia(E)+Ca(y)]=g}if(g.HRef){g.l={Target:rt(g.HRef)};if(g.HRefScreenTip)g.l.Tooltip=g.HRefScreenTip;delete g.HRef;delete g.HRefScreenTip}if(g.MergeAcross||g.MergeDown){z=E+(parseInt(g.MergeAcross,10)|0);V=y+(parseInt(g.MergeDown,10)|0);if(z>E||V>y)O.push({s:{c:E,r:y},e:{c:z,r:V}})}if(!t.sheetStubs){if(g.MergeAcross)E=z+1;else++E}else if(g.MergeAcross||g.MergeDown){for(var X=E;X<=z;++X){for(var Y=y;Y<=V;++Y){if(X>E||Y>y){if(t.dense){if(!p[Y])p[Y]=[];p[Y][X]={t:"z"}}else p[Ia(X)+Ca(Y)]={t:"z"}}}}E=z+1}else++E}else{g=qm(l[0]);if(g.Index)E=+g.Index-1;if(ES.e.c)S.e.c=E;if(l[0].slice(-2)==="/>")++E;D=[]}break;case"row":if(l[1]==="/"||l[0].slice(-2)==="/>"){if(yS.e.r)S.e.r=y;if(l[0].slice(-2)==="/>"){w=Jm(l[0]);if(w.Index)y=+w.Index-1}E=0;++y}else{w=Jm(l[0]);if(w.Index)y=+w.Index-1;H={};if(w.AutoFitHeight=="0"||w.Height){H.hpx=parseInt(w.Height,10);H.hpt=Go(H.hpx);W[y]=H}if(w.Hidden=="1"){H.hidden=true;W[y]=H}}break;case"worksheet":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"));v.push(m);if(S.s.r<=S.e.r&&S.s.c<=S.e.c){p["!ref"]=Ba(S);if(t.sheetRows&&t.sheetRows<=S.e.r){p["!fullref"]=p["!ref"];S.e.r=t.sheetRows-1;p["!ref"]=Ba(S)}}if(O.length)p["!merges"]=O;if(L.length>0)p["!cols"]=L;if(W.length>0)p["!rows"]=W;h[m]=p}else{S={s:{r:2e6,c:2e6},e:{r:0,c:0}};y=E=0;o.push([l[3],false]);u=Jm(l[0]);m=rt(u.Name);p=t.dense?[]:{};O=[];B=[];W=[];$={name:m,Hidden:0};G.Sheets.push($)}break;case"table":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else if(l[0].slice(-2)=="/>")break;else{o.push([l[3],false]);L=[];U=false}break;case"style":if(l[1]==="/")ab(_,A,t);else A=Jm(l[0]);break;case"numberformat":A.nf=rt(Jm(l[0]).Format||"General");if(Qm[A.nf])A.nf=Qm[A.nf];for(var K=0;K!=392;++K)if(Z[K]==A.nf)break;if(K==392)for(K=57;K!=392;++K)if(Z[K]==null){qe(A.nf,K);break}break;case"column":if(o[o.length-1][0]!=="table")break;if(l[1]==="/")break;M=Jm(l[0]);if(M.Hidden){M.hidden=true;delete M.Hidden}if(M.Width)M.wpx=parseInt(M.Width,10);if(!U&&M.wpx>10){U=true;Po=Io;for(var J=0;J0)ee.Sheet=G.Sheets.length-1;G.Names.push(ee);break;case"namedcell":break;case"b":break;case"i":break;case"u":break;case"s":break;case"em":break;case"h2":break;case"h3":break;case"sub":break;case"sup":break;case"span":break;case"alignment":break;case"borders":break;case"border":break;case"font":if(l[0].slice(-2)==="/>")break;else if(l[1]==="/")x+=n.slice(C,l.index);else C=l.index+l[0].length;break;case"interior":if(!t.cellStyles)break;A.Interior=Jm(l[0]);break;case"protection":break;case"author":;case"title":;case"description":;case"created":;case"keywords":;case"subject":;case"category":;case"company":;case"lastauthor":;case"lastsaved":;case"lastprinted":;case"version":;case"revision":;case"totaltime":;case"hyperlinkbase":;case"manager":;case"contentstatus":;case"identifier":;case"language":;case"appname":if(l[0].slice(-2)==="/>")break;else if(l[1]==="/")Ii(R,j,n.slice(I,l.index));else I=l.index+l[0].length;break;case"paragraphs":break;case"styles":;case"workbook":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else o.push([l[3],false]);break;case"comment":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"));sb(P);D.push(P)}else{o.push([l[3],false]);u=Jm(l[0]);P={a:u.Author}}break;case"autofilter":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else if(l[0].charAt(l[0].length-2)!=="/"){var re=Jm(l[0]);p["!autofilter"]={ref:Lu(re.Range).replace(/\$/g,"")};o.push([l[3],true])}break;case"name":break;case"datavalidation":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else{if(l[0].charAt(l[0].length-2)!=="/")o.push([l[3],true])}break;case"pixelsperinch":break;case"componentoptions":;case"documentproperties":;case"customdocumentproperties":;case"officedocumentsettings":;case"pivottable":;case"pivotcache":;case"names":;case"mapinfo":;case"pagebreaks":;case"querytable":;case"sorting":;case"schema":;case"conditionalformatting":;case"smarttagtype":;case"smarttags":;case"excelworkbook":;case"workbookoptions":;case"worksheetoptions":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else if(l[0].charAt(l[0].length-2)!=="/")o.push([l[3],true]);break;case"null":break;default:if(o.length==0&&l[3]=="document")return mg(n,t);if(o.length==0&&l[3]=="uof")return mg(n,t);var te=true;switch(o[o.length-1][0]){case"officedocumentsettings":switch(l[3]){case"allowpng":break;case"removepersonalinformation":break;case"downloadcomponents":break;case"locationofcomponents":break;case"colors":break;case"color":break;case"index":break;case"rgb":break;case"targetscreensize":break;case"readonlyrecommended":break;default:te=false;}break;case"componentoptions":switch(l[3]){case"toolbar":break;case"hideofficelogo":break;case"spreadsheetautofit":break;case"label":break;case"caption":break;case"maxheight":break;case"maxwidth":break;case"nextsheetnumber":break;default:te=false;}break;case"excelworkbook":switch(l[3]){case"date1904":G.WBProps.date1904=true;break;case"windowheight":break;case"windowwidth":break;case"windowtopx":break;case"windowtopy":break;case"tabratio":break;case"protectstructure":break;case"protectwindow":break;case"protectwindows":break;case"activesheet":break;case"displayinknotes":break;case"firstvisiblesheet":break;case"supbook":break;case"sheetname":break;case"sheetindex":break;case"sheetindexfirst":break;case"sheetindexlast":break;case"dll":break;case"acceptlabelsinformulas":break;case"donotsavelinkvalues":break;case"iteration":break;case"maxiterations":break;case"maxchange":break;case"path":break;case"xct":break;case"count":break;case"selectedsheets":break;case"calculation":break;case"uncalced":break;case"startupprompt":break;case"crn":break;case"externname":break;case"formula":break;case"colfirst":break;case"collast":break;case"wantadvise":break;case"boolean":break;case"error":break;case"text":break;case"ole":break;case"noautorecover":break;case"publishobjects":break;case"donotcalculatebeforesave":break;case"number":break;case"refmoder1c1":break;case"embedsavesmarttags":break;default:te=false;}break;case"workbookoptions":switch(l[3]){case"owcversion":break;case"height":break;case"width":break;default:te=false;}break;case"worksheetoptions":switch(l[3]){case"visible":if(l[0].slice(-2)==="/>"){}else if(l[1]==="/")switch(n.slice(I,l.index)){case"SheetHidden":$.Hidden=1;break;case"SheetVeryHidden":$.Hidden=2;break;}else I=l.index+l[0].length;break;case"header":if(!p["!margins"])rv(p["!margins"]={},"xlml");if(!isNaN(+Jr(l[0]).Margin))p["!margins"].header=+Jr(l[0]).Margin;break;case"footer":if(!p["!margins"])rv(p["!margins"]={},"xlml");if(!isNaN(+Jr(l[0]).Margin))p["!margins"].footer=+Jr(l[0]).Margin;break;case"pagemargins":var ae=Jr(l[0]);if(!p["!margins"])rv(p["!margins"]={},"xlml");if(!isNaN(+ae.Top))p["!margins"].top=+ae.Top;if(!isNaN(+ae.Left))p["!margins"].left=+ae.Left;if(!isNaN(+ae.Right))p["!margins"].right=+ae.Right;if(!isNaN(+ae.Bottom))p["!margins"].bottom=+ae.Bottom;break;case"displayrighttoleft":if(!G.Views)G.Views=[];if(!G.Views[0])G.Views[0]={};G.Views[0].RTL=true;break;case"freezepanes":break;case"frozennosplit":break;case"splithorizontal":;case"splitvertical":break;case"donotdisplaygridlines":break;case"activerow":break;case"activecol":break;case"toprowbottompane":break;case"leftcolumnrightpane":break;case"unsynced":break;case"print":break;case"printerrors":break;case"panes":break;case"scale":break;case"pane":break;case"number":break;case"layout":break;case"pagesetup":break;case"selected":break;case"protectobjects":break;case"enableselection":break;case"protectscenarios":break;case"validprinterinfo":break;case"horizontalresolution":break;case"verticalresolution":break;case"numberofcopies":break;case"activepane":break;case"toprowvisible":break;case"leftcolumnvisible":break;case"fittopage":break;case"rangeselection":break;case"papersizeindex":break;case"pagelayoutzoom":break;case"pagebreakzoom":break;case"filteron":break;case"fitwidth":break;case"fitheight":break;case"commentslayout":break;case"zoom":break;case"lefttoright":break;case"gridlines":break;case"allowsort":break;case"allowfilter":break;case"allowinsertrows":break;case"allowdeleterows":break;case"allowinsertcols":break;case"allowdeletecols":break;case"allowinserthyperlinks":break;case"allowformatcells":break;case"allowsizecols":break;case"allowsizerows":break;case"nosummaryrowsbelowdetail":if(!p["!outline"])p["!outline"]={};p["!outline"].above=true;break;case"tabcolorindex":break;case"donotdisplayheadings":break;case"showpagelayoutzoom":break;case"nosummarycolumnsrightdetail":if(!p["!outline"])p["!outline"]={};p["!outline"].left=true;break;case"blackandwhite":break;case"donotdisplayzeros":break;case"displaypagebreak":break;case"rowcolheadings":break;case"donotdisplayoutline":break;case"noorientation":break;case"allowusepivottables":break;case"zeroheight":break;case"viewablerange":break;case"selection":break;case"protectcontents":break;default:te=false;}break;case"pivottable":;case"pivotcache":switch(l[3]){case"immediateitemsondrop":break;case"showpagemultipleitemlabel":break;case"compactrowindent":break;case"location":break;case"pivotfield":break;case"orientation":break;case"layoutform":break;case"layoutsubtotallocation":break;case"layoutcompactrow":break;case"position":break;case"pivotitem":break;case"datatype":break;case"datafield":break;case"sourcename":break;case"parentfield":break;case"ptlineitems":break;case"ptlineitem":break;case"countofsameitems":break;case"item":break;case"itemtype":break;case"ptsource":break;case"cacheindex":break;case"consolidationreference":break;case"filename":break;case"reference":break;case"nocolumngrand":break;case"norowgrand":break;case"blanklineafteritems":break;case"hidden":break;case"subtotal":break;case"basefield":break;case"mapchilditems":break;case"function":break;case"refreshonfileopen":break;case"printsettitles":break;case"mergelabels":break;case"defaultversion":break;case"refreshname":break;case"refreshdate":break;case"refreshdatecopy":break;case"versionlastrefresh":break;case"versionlastupdate":break;case"versionupdateablemin":break;case"versionrefreshablemin":break;case"calculation":break;default:te=false;}break;case"pagebreaks":switch(l[3]){case"colbreaks":break;case"colbreak":break;case"rowbreaks":break;case"rowbreak":break;case"colstart":break;case"colend":break;case"rowend":break;default:te=false;}break;case"autofilter":switch(l[3]){case"autofiltercolumn":break;case"autofiltercondition":break;case"autofilterand":break;case"autofilteror":break;default:te=false;}break;case"querytable":switch(l[3]){case"id":break;case"autoformatfont":break;case"autoformatpattern":break;case"querysource":break;case"querytype":break;case"enableredirections":break;case"refreshedinxl9":break;case"urlstring":break;case"htmltables":break;case"connection":break;case"commandtext":break;case"refreshinfo":break;case"notitles":break;case"nextid":break;case"columninfo":break;case"overwritecells":break;case"donotpromptforfile":break;case"textwizardsettings":break;case"source":break;case"number":break;case"decimal":break;case"thousandseparator":break;case"trailingminusnumbers":break;case"formatsettings":break;case"fieldtype":break;case"delimiters":break;case"tab":break;case"comma":break;case"autoformatname":break;case"versionlastedit":break;case"versionlastrefresh":break;default:te=false;}break;case"datavalidation":switch(l[3]){case"range":break;case"type":break;case"min":break;case"max":break;case"sort":break;case"descending":break;case"order":break;case"casesensitive":break;case"value":break;case"errorstyle":break;case"errormessage":break;case"errortitle":break;case"inputmessage":break;case"inputtitle":break;case"combohide":break;case"inputhide":break;case"condition":break;case"qualifier":break;case"useblank":break;case"value1":break;case"value2":break;case"format":break;case"cellrangelist":break;default:te=false;}break;case"sorting":;case"conditionalformatting":switch(l[3]){case"range":break;case"type":break;case"min":break;case"max":break;case"sort":break;case"descending":break;case"order":break;case"casesensitive":break;case"value":break;case"errorstyle":break;case"errormessage":break;case"errortitle":break;case"cellrangelist":break;case"inputmessage":break;case"inputtitle":break;case"combohide":break;case"inputhide":break;case"condition":break;case"qualifier":break;case"useblank":break;case"value1":break;case"value2":break;case"format":break;default:te=false;}break;case"mapinfo":;case"schema":;case"data":switch(l[3]){case"map":break;case"entry":break;case"range":break;case"xpath":break;case"field":break;case"xsdtype":break;case"filteron":break;case"aggregate":break;case"elementtype":break;case"attributetype":break;case"schema":;case"element":;case"complextype":;case"datatype":;case"all":;case"attribute":;case"extends":break;case"row":break;default:te=false;}break;case"smarttags":break;default:te=false;break;}if(te)break;if(l[3].match(/!\[CDATA/))break;if(!o[o.length-1][1])throw"Unrecognized tag: "+l[3]+"|"+o.join("|");if(o[o.length-1][0]==="customdocumentproperties"){if(l[0].slice(-2)==="/>")break;else if(l[1]==="/")rb(N,j,F,n.slice(I,l.index));else{F=l;I=l.index+l[0].length}break}if(t.WTF)throw"Unrecognized tag: "+l[3]+"|"+o.join("|");}var ne={};if(!t.bookSheets&&!t.bookProps)ne.Sheets=h;ne.SheetNames=v;ne.Workbook=G;ne.SSF=yr(Z);ne.Props=R;ne.Custprops=N;ne.bookType="xlml";return ne}function lb(e,r){gw(r=r||{});switch(r.type||"base64"){case"base64":return fb(E(e),r);case"binary":;case"buffer":;case"file":return fb(e,r);case"array":return fb(R(e),r);}}function ob(e,r){var t=[];if(e.Props)t.push(Fi(e.Props,r));if(e.Custprops)t.push(Di(e.Props,e.Custprops,r));return t.join("")}function cb(e){if((((e||{}).Workbook||{}).WBProps||{}).date1904)return'';return""}function ub(e,r){var t=[''];r.cellXfs.forEach(function(e,r){var a=[];a.push(xt("NumberFormat",null,{"ss:Format":nt(Z[e.numFmtId])}));var n={"ss:ID":"s"+(21+r)};t.push(xt("Style",a.join(""),n))});return xt("Styles",t.join(""))}function hb(e){return xt("NamedRange",null,{"ss:Name":e.Name.slice(0,6)=="_xlnm."?e.Name.slice(6):e.Name,"ss:RefersTo":"="+Uu(e.Ref,{r:0,c:0})})}function db(e){if(!((e||{}).Workbook||{}).Names)return"";var r=e.Workbook.Names;var t=[];for(var a=0;a");if(e["!margins"].header)n.push(xt("Header",null,{"x:Margin":e["!margins"].header}));if(e["!margins"].footer)n.push(xt("Footer",null,{"x:Margin":e["!margins"].footer}));n.push(xt("PageMargins",null,{"x:Bottom":e["!margins"].bottom||"0.75","x:Left":e["!margins"].left||"0.7","x:Right":e["!margins"].right||"0.7","x:Top":e["!margins"].top||"0.75"}));n.push("")}if(a&&a.Workbook&&a.Workbook.Sheets&&a.Workbook.Sheets[t]){if(a.Workbook.Sheets[t].Hidden)n.push(xt("Visible",a.Workbook.Sheets[t].Hidden==1?"SheetHidden":"SheetVeryHidden",{}));else{for(var i=0;i")}}if(((((a||{}).Workbook||{}).Views||[])[0]||{}).RTL)n.push("");if(e["!protect"]){n.push(_t("ProtectContents","True"));if(e["!protect"].objects)n.push(_t("ProtectObjects","True"));if(e["!protect"].scenarios)n.push(_t("ProtectScenarios","True"));if(e["!protect"].selectLockedCells!=null&&!e["!protect"].selectLockedCells)n.push(_t("EnableSelection","NoSelection"));else if(e["!protect"].selectUnlockedCells!=null&&!e["!protect"].selectUnlockedCells)n.push(_t("EnableSelection","UnlockedCells"));[["formatCells","AllowFormatCells"],["formatColumns","AllowSizeCols"],["formatRows","AllowSizeRows"],["insertColumns","AllowInsertCols"],["insertRows","AllowInsertRows"],["insertHyperlinks","AllowInsertHyperlinks"],["deleteColumns","AllowDeleteCols"],["deleteRows","AllowDeleteRows"],["sort","AllowSort"],["autoFilter","AllowFilter"],["pivotTables","AllowUsePivotTables"]].forEach(function(r){if(e["!protect"][r[0]])n.push("<"+r[1]+"/>")})}if(n.length==0)return"";return xt("WorksheetOptions",n.join(""),{xmlns:Dt.x})}function mb(e){return e.map(function(e){var r=ct(e.t||"");var t=xt("ss:Data",r,{xmlns:"http://www.w3.org/TR/REC-html40"});return xt("Comment",t,{"ss:Author":e.a})}).join("")}function bb(e,r,t,a,n,i,s){if(!e||e.v==undefined&&e.f==undefined)return"";var f={};if(e.f)f["ss:Formula"]="="+nt(Uu(e.f,s));if(e.F&&e.F.slice(0,r.length)==r){var l=La(e.F.slice(r.length+1));f["ss:ArrayRange"]="RC:R"+(l.r==s.r?"":"["+(l.r-s.r)+"]")+"C"+(l.c==s.c?"":"["+(l.c-s.c)+"]")}if(e.l&&e.l.Target){f["ss:HRef"]=nt(e.l.Target);if(e.l.Tooltip)f["x:HRefScreenTip"]=nt(e.l.Tooltip)}if(t["!merges"]){var o=t["!merges"];for(var c=0;c!=o.length;++c){if(o[c].s.c!=s.c||o[c].s.r!=s.r)continue;if(o[c].e.c>o[c].s.c)f["ss:MergeAcross"]=o[c].e.c-o[c].s.c;if(o[c].e.r>o[c].s.r)f["ss:MergeDown"]=o[c].e.r-o[c].s.r}}var u="",h="";switch(e.t){case"z":if(!a.sheetStubs)return"";break;case"n":u="Number";h=String(e.v);break;case"b":u="Boolean";h=e.v?"1":"0";break;case"e":u="Error";h=Jn[e.v];break;case"d":u="DateTime";h=new Date(e.v).toISOString();if(e.z==null)e.z=e.z||Z[14];break;case"s":u="String";h=lt(e.v||"");break;}var d=tv(a.cellXfs,e,a);f["ss:StyleID"]="s"+(21+d);f["ss:Index"]=s.c+1;var v=e.v!=null?h:"";var p=e.t=="z"?"":''+v+"";if((e.c||[]).length>0)p+=mb(e.c);return xt("Cell",p,f)}function gb(e,r){var t='"}function wb(e,r,t,a){if(!e["!ref"])return"";var n=za(e["!ref"]);var i=e["!merges"]||[],s=0;var f=[];if(e["!cols"])e["!cols"].forEach(function(e,r){Ho(e);var t=!!e.width;var a=ev(r,e);var n={"ss:Index":r+1};if(t)n["ss:Width"]=Lo(a.width);if(e.hidden)n["ss:Hidden"]="1";f.push(xt("Column",null,n))});var l=Array.isArray(e);for(var o=n.s.r;o<=n.e.r;++o){var c=[gb(o,(e["!rows"]||[])[o])];for(var u=n.s.c;u<=n.e.c;++u){var h=false;for(s=0;s!=i.length;++s){if(i[s].s.c>u)continue;if(i[s].s.r>o)continue;if(i[s].e.c");if(c.length>2)f.push(c.join(""))}return f.join("")}function kb(e,r,t){var a=[];var n=t.SheetNames[e];var i=t.Sheets[n];var s=i?vb(i,r,e,t):"";if(s.length>0)a.push(""+s+"");s=i?wb(i,r,e,t):"";if(s.length>0)a.push(""+s+"
");a.push(pb(i,r,e,t));if(i["!autofilter"])a.push('');return a.join("")}function Tb(e,r){if(!r)r={};if(!e.SSF)e.SSF=yr(Z);if(e.SSF){$e();Ge(e.SSF);r.revssf=or(e.SSF); -r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF;r.cellXfs=[];tv(r.cellXfs,{},{revssf:{General:0}})}var t=[];t.push(ob(e,r));t.push(cb(e,r));t.push("");t.push("");for(var a=0;a40)return r;t.l-=4;r.Reserved1=t._R(0,"lpstr-ansi");if(t.length-t.l<=4)return r;a=t._R(4);if(a!==1907505652)return r;r.UnicodeClipboardFormat=Rn(t);a=t._R(4);if(a==0||a>40)return r;t.l-=4;r.Reserved2=t._R(0,"lpwstr")}var yb=[60,1084,2066,2165,2175];function Sb(e,r,t,a,n){var i=a;var s=[];var f=t.slice(t.l,t.l+i);if(n&&n.enc&&n.enc.insitu&&f.length>0)switch(e){case 9:;case 521:;case 1033:;case 2057:;case 47:;case 405:;case 225:;case 406:;case 312:;case 404:;case 10:break;case 133:break;default:n.enc.insitu(f);}s.push(f);t.l+=i;var l=sa(t,t.l),o=Db[l];var c=0;while(o!=null&&yb.indexOf(l)>-1){i=sa(t,t.l+2);c=t.l+4;if(l==2066)c+=4;else if(l==2165||l==2175){c+=12}f=t.slice(c,t.l+4+i);s.push(f);t.l+=4+i;o=Db[l=sa(t,t.l)]}var u=F(s);ba(u,0);var h=0;u.lens=[];for(var d=0;d1)return;if(t.sheetRows&&e.r>=t.sheetRows)return;if(t.cellStyles&&r.XF&&r.XF.data)C(e,r,t);delete r.ixfe;delete r.XF;h=e;d=Ma(e);if(!s||!s.s||!s.e)s={s:{r:0,c:0},e:{r:0,c:0}};if(e.rs.e.r)s.e.r=e.r+1;if(e.c+1>s.e.c)s.e.c=e.c+1;if(t.cellFormula&&r.f){for(var a=0;ae.c||k[a][0].s.r>e.r)continue;if(k[a][0].e.c>8)!==j)throw new Error("rt mismatch: "+K+"!="+j);if(Y.r==12){e.l+=10;X-=10}}var J={};if(j===10)J=Y.f(e,X,R);else J=Sb(j,Y,e,X,R);if(B==0&&[9,521,1033,2057].indexOf(U)===-1)continue;switch(j){case 34:t.opts.Date1904=_.WBProps.date1904=J;break;case 134:t.opts.WriteProtect=true;break;case 47:if(!R.enc)e.l=0;R.enc=J;if(!r.password)throw new Error("File is password-protected");if(J.valid==null)throw new Error("Encryption scheme unsupported");if(!J.valid)throw new Error("Password is incorrect");break;case 92:R.lastuser=J;break;case 66:var q=Number(J);switch(q){case 21010:q=1200;break;case 32768:q=1e4;break;case 32769:q=1252;break;}l(R.codepage=q);G=true;break;case 317:R.rrtabid=J;break;case 25:R.winlocked=J;break;case 439:t.opts["RefreshAll"]=J;break;case 12:t.opts["CalcCount"]=J;break;case 16:t.opts["CalcDelta"]=J;break;case 17:t.opts["CalcIter"]=J;break;case 13:t.opts["CalcMode"]=J;break;case 14:t.opts["CalcPrecision"]=J;break;case 95:t.opts["CalcSaveRecalc"]=J;break;case 15:R.CalcRefMode=J;break;case 2211:t.opts.FullCalc=J;break;case 129:if(J.fDialog)n["!type"]="dialog";if(!J.fBelow)(n["!outline"]||(n["!outline"]={})).above=true;if(!J.fRight)(n["!outline"]||(n["!outline"]={})).left=true;break;case 224:y.push(J);break;case 430:M.push([J]);M[M.length-1].XTI=[];break;case 35:;case 547:M[M.length-1].push(J);break;case 24:;case 536:V={Name:J.Name,Ref:bd(J.rgce,s,null,M,R)};if(J.itab>0)V.Sheet=J.itab-1;M.names.push(V);if(!M[0]){M[0]=[];M[0].XTI=[]}M[M.length-1].push(J);if(J.Name=="_xlnm._FilterDatabase"&&J.itab>0)if(J.rgce&&J.rgce[0]&&J.rgce[0][0]&&J.rgce[0][0][0]=="PtgArea3d")z[J.itab-1]={ref:Ba(J.rgce[0][0][1][2])};break;case 22:R.ExternCount=J;break;case 23:if(M.length==0){M[0]=[];M[0].XTI=[]}M[M.length-1].XTI=M[M.length-1].XTI.concat(J);M.XTI=M.XTI.concat(J);break;case 2196:if(R.biff<8)break;if(V!=null)V.Comment=J[1];break;case 18:n["!protect"]=J;break;case 19:if(J!==0&&R.WTF)console.error("Password verifier: "+J);break;case 133:{i[J.pos]=J;R.snames.push(J.name)}break;case 10:{if(--B)break;if(s.e){if(s.e.r>0&&s.e.c>0){s.e.r--;s.e.c--;n["!ref"]=Ba(s);if(r.sheetRows&&r.sheetRows<=s.e.r){var Q=s.e.r;s.e.r=r.sheetRows-1;n["!fullref"]=n["!ref"];n["!ref"]=Ba(s);s.e.r=Q}s.e.r++;s.e.c++}if(I.length>0)n["!merges"]=I;if(F.length>0)n["!objects"]=F;if(D.length>0)n["!cols"]=D;if(P.length>0)n["!rows"]=P;_.Sheets.push(A)}if(c==="")u=n;else a[c]=n;n=r.dense?[]:{}}break;case 9:;case 521:;case 1033:;case 2057:{if(R.biff===8)R.biff={9:2,521:3,1033:4}[j]||{512:2,768:3,1024:4,1280:5,1536:8,2:2,7:2}[J.BIFFVer]||8;R.biffguess=J.BIFFVer==0;if(J.BIFFVer==0&&J.dt==4096){R.biff=5;G=true;l(R.codepage=28591)}if(R.biff==8&&J.BIFFVer==0&&J.dt==16)R.biff=2;if(B++)break;n=r.dense?[]:{};if(R.biff<8&&!G){G=true;l(R.codepage=r.codepage||1252)}if(R.biff<5||J.BIFFVer==0&&J.dt==4096){if(c==="")c="Sheet1";s={s:{r:0,c:0},e:{r:0,c:0}};var ee={pos:e.l-X,name:c};i[ee.pos]=ee;R.snames.push(c)}else c=(i[$]||{name:""}).name;if(J.dt==32)n["!type"]="chart";if(J.dt==64)n["!type"]="macro";I=[];F=[];R.arrayf=k=[];D=[];P=[];L=false;A={Hidden:(i[$]||{hs:0}).hs,name:c}}break;case 515:;case 3:;case 2:{if(n["!type"]=="chart")if(r.dense?(n[J.r]||[])[J.c]:n[Ma({c:J.c,r:J.r})])++J.c;T={ixfe:J.ixfe,XF:y[J.ixfe]||{},v:J.val,t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 5:;case 517:{T={ixfe:J.ixfe,XF:y[J.ixfe],v:J.val,t:J.t};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 638:{T={ixfe:J.ixfe,XF:y[J.ixfe],v:J.rknum,t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 189:{for(var re=J.c;re<=J.C;++re){var te=J.rkrec[re-J.c][0];T={ixfe:te,XF:y[te],v:J.rkrec[re-J.c][1],t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:re,r:J.r},T,r)}}break;case 6:;case 518:;case 1030:{if(J.val=="String"){f=J;break}T=Ab(J.val,J.cell.ixfe,J.tt);T.XF=y[T.ixfe];if(r.cellFormula){var ae=J.formula;if(ae&&ae[0]&&ae[0][0]&&ae[0][0][0]=="PtgExp"){var ne=ae[0][0][1][0],ie=ae[0][0][1][1];var se=Ma({r:ne,c:ie});if(w[se])T.f=""+bd(J.formula,s,J.cell,M,R);else T.F=((r.dense?(n[ne]||[])[ie]:n[se])||{}).F}else T.f=""+bd(J.formula,s,J.cell,M,R)}if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O(J.cell,T,r);f=J}break;case 7:;case 519:{if(f){f.val=J;T=Ab(J,f.cell.ixfe,"s");T.XF=y[T.ixfe];if(r.cellFormula){T.f=""+bd(f.formula,s,f.cell,M,R)}if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O(f.cell,T,r);f=null}else throw new Error("String record expects Formula")}break;case 33:;case 545:{k.push(J);var fe=Ma(J[0].s);v=r.dense?(n[J[0].s.r]||[])[J[0].s.c]:n[fe];if(r.cellFormula&&v){if(!f)break;if(!fe||!v)break;v.f=""+bd(J[1],s,J[0],M,R);v.F=Ba(J[0])}}break;case 1212:{if(!r.cellFormula)break;if(d){if(!f)break;w[Ma(f.cell)]=J[0];v=r.dense?(n[f.cell.r]||[])[f.cell.c]:n[Ma(f.cell)];(v||{}).f=""+bd(J[0],s,h,M,R)}}break;case 253:T=Ab(o[J.isst].t,J.ixfe,"s");if(o[J.isst].h)T.h=o[J.isst].h;T.XF=y[T.ixfe];if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r);break;case 513:if(r.sheetStubs){T={ixfe:J.ixfe,XF:y[J.ixfe],t:"z"};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 190:if(r.sheetStubs){for(var le=J.c;le<=J.C;++le){var oe=J.ixfe[le-J.c];T={ixfe:oe,XF:y[oe],t:"z"};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:le,r:J.r},T,r)}}break;case 214:;case 516:;case 4:T=Ab(J.val,J.ixfe,"s");T.XF=y[T.ixfe];if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r);break;case 0:;case 512:{if(B===1)s=J}break;case 252:{o=J}break;case 1054:{if(R.biff==4){H[W++]=J[1];for(var ce=0;ce=163)qe(J[1],W+163)}else qe(J[1],J[0])}break;case 30:{H[W++]=J;for(var ue=0;ue=163)qe(J,W+163)}break;case 229:I=I.concat(J);break;case 93:F[J.cmo[0]]=R.lastobj=J;break;case 438:R.lastobj.TxO=J;break;case 127:R.lastobj.ImData=J;break;case 440:{for(g=J[0].s.r;g<=J[0].e.r;++g)for(m=J[0].s.c;m<=J[0].e.c;++m){v=r.dense?(n[g]||[])[m]:n[Ma({c:m,r:g})];if(v)v.l=J[1]}}break;case 2048:{for(g=J[0].s.r;g<=J[0].e.r;++g)for(m=J[0].s.c;m<=J[0].e.c;++m){v=r.dense?(n[g]||[])[m]:n[Ma({c:m,r:g})];if(v&&v.l)v.l.Tooltip=J[1]}}break;case 28:{if(R.biff<=5&&R.biff>=2)break;v=r.dense?(n[J[0].r]||[])[J[0].c]:n[Ma(J[0])];var he=F[J[2]];if(!v){if(r.dense){if(!n[J[0].r])n[J[0].r]=[];v=n[J[0].r][J[0].c]={t:"z"}}else{v=n[Ma(J[0])]={t:"z"}}s.e.r=Math.max(s.e.r,J[0].r);s.s.r=Math.min(s.s.r,J[0].r);s.e.c=Math.max(s.e.c,J[0].c);s.s.c=Math.min(s.s.c,J[0].c)}if(!v.c)v.c=[];p={a:J[1],t:he.TxO.t};v.c.push(p)}break;case 2173:Kc(y[J.ixfe],J.ext);break;case 125:{if(!R.cellStyles)break;while(J.e>=J.s){D[J.e--]={width:J.w/256,level:J.level||0,hidden:!!(J.flags&1)};if(!L){L=true;Wo(J.w/256)}Ho(D[J.e+1])}}break;case 520:{var de={};if(J.level!=null){P[J.r]=de;de.level=J.level}if(J.hidden){P[J.r]=de;de.hidden=true}if(J.hpt){P[J.r]=de;de.hpt=J.hpt;de.hpx=$o(J.hpt)}}break;case 38:;case 39:;case 40:;case 41:if(!n["!margins"])rv(n["!margins"]={});n["!margins"][{38:"left",39:"right",40:"top",41:"bottom"}[j]]=J;break;case 161:if(!n["!margins"])rv(n["!margins"]={});n["!margins"].header=J.header;n["!margins"].footer=J.footer;break;case 574:if(J.RTL)_.Views[0].RTL=true;break;case 146:S=J;break;case 2198:N=J;break;case 140:E=J;break;case 442:{if(!c)_.WBProps.CodeName=J||"ThisWorkbook";else A.CodeName=J||A.name}break;}}else{if(!Y)console.error("Missing Info for XLS Record 0x"+j.toString(16));e.l+=X}}t.SheetNames=sr(i).sort(function(e,r){return Number(e)-Number(r)}).map(function(e){return i[e].name});if(!r.bookSheets)t.Sheets=a;if(!t.SheetNames.length&&u["!ref"]){t.SheetNames.push("Sheet1");if(t.Sheets)t.Sheets["Sheet1"]=u}else t.Preamble=u;if(t.Sheets)z.forEach(function(e,r){t.Sheets[t.SheetNames[r]]["!autofilter"]=e});t.Strings=o;t.SSF=yr(Z);if(R.enc)t.Encryption=R.enc;if(N)t.Themes=N;t.Metadata={};if(E!==undefined)t.Metadata.Country=E;if(M.names.length>0)_.Names=M.names;t.Workbook=_;return t}var Cb={SI:"e0859ff2f94f6810ab9108002b27b3d9",DSI:"02d5cdd59c2e1b10939708002b2cf9ae",UDI:"05d5cdd59c2e1b10939708002b2cf9ae"};function Ob(e,r,t){var a=er.find(e,"/!DocumentSummaryInformation");if(a&&a.size>0)try{var n=rs(a,Gn,Cb.DSI);for(var i in n)r[i]=n[i]}catch(s){if(t.WTF)throw s}var f=er.find(e,"/!SummaryInformation");if(f&&f.size>0)try{var l=rs(f,$n,Cb.SI);for(var o in l)if(r[o]==null)r[o]=l[o]}catch(s){if(t.WTF)throw s}if(r.HeadingPairs&&r.TitlesOfParts){Si(r.HeadingPairs,r.TitlesOfParts,r,t);delete r.HeadingPairs;delete r.TitlesOfParts}}function Rb(e,r){var t=[],a=[],n=[];var i=0,s;var f=fr(Gn,"n");var l=fr($n,"n");if(e.Props){s=sr(e.Props);for(i=0;i-1||yi.indexOf(n[i][0])>-1)continue;if(n[i][1]==null)continue;o.push(n[i])}if(a.length)er.utils.cfb_add(r,"/SummaryInformation",ts(a,Cb.SI,l,$n));if(t.length||o.length)er.utils.cfb_add(r,"/DocumentSummaryInformation",ts(t,Cb.DSI,f,Gn,o.length?o:null,Cb.UDI))}function Nb(e,r){if(!r)r={};gw(r);o();if(r.codepage)s(r.codepage);var t,a;if(e.FullPaths){if(er.find(e,"/encryption"))throw new Error("File is password-protected");t=er.find(e,"!CompObj");a=er.find(e,"/Workbook")||er.find(e,"/Book")}else{switch(r.type){case"base64":e=C(E(e));break;case"binary":e=C(e);break;case"buffer":break;case"array":if(!Array.isArray(e))e=Array.prototype.slice.call(e);break;}ba(e,0);a={content:e}}var n;var i;if(t)Eb(t);if(r.bookProps&&!r.bookSheets)n={};else{var f=y?"buffer":"array";if(a&&a.content)n=xb(a.content,r);else if((i=er.find(e,"PerfectOffice_MAIN"))&&i.content)n=Dl.to_workbook(i.content,(r.type=f,r));else if((i=er.find(e,"NativeContent_MAIN"))&&i.content)n=Dl.to_workbook(i.content,(r.type=f,r));else if((i=er.find(e,"MN0"))&&i.content)throw new Error("Unsupported Works 4 for Mac file");else throw new Error("Cannot find Workbook stream");if(r.bookVBA&&e.FullPaths&&er.find(e,"/_VBA_PROJECT_CUR/VBA/dir"))n.vbaraw=Ou(e)}var l={};if(e.FullPaths)Ob(e,l,r);n.Props=n.Custprops=l;if(r.bookFiles)n.cfb=e;return n}function Ib(e,r){var t=r||{};var a=er.utils.cfb_new({root:"R"});var n="/Workbook";switch(t.bookType||"xls"){case"xls":t.bookType="biff8";case"xla":if(!t.bookType)t.bookType="xla";case"biff8":n="/Workbook";t.biff=8;break;case"biff5":n="/Book";t.biff=5;break;default:throw new Error("invalid type "+t.bookType+" for XLS CFB");}er.utils.cfb_add(a,n,Qb(e,t));if(t.biff==8&&(e.Props||e.Custprops))Rb(e,a);if(t.biff==8&&e.vbaraw)Ru(a,er.read(e.vbaraw,{type:typeof e.vbaraw=="string"?"binary":"buffer"}));return a}var Fb={0:{f:Uv},1:{f:jv},2:{f:hp},3:{f:ep},4:{f:Zv},5:{f:lp},6:{f:bp},7:{f:np},8:{f:Sp},9:{f:yp},10:{f:Tp},11:{f:Ep},12:{f:Yv},13:{f:vp},14:{f:tp},15:{f:qv},16:{f:cp},17:{f:wp},18:{f:sp},19:{f:en},20:{},21:{},22:{},23:{},24:{},25:{},26:{},27:{},28:{},29:{},30:{},31:{},32:{},33:{},34:{},35:{T:1},36:{T:-1},37:{T:1},38:{T:-1},39:{f:xm},40:{},42:{},43:{f:sc},44:{f:nc},45:{f:cc},46:{f:pc},47:{f:hc},48:{},49:{f:Ya},50:{},51:{f:qc},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:cl},62:{f:mp},63:{f:lu},64:{f:Hp},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:ga,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:Mp},138:{T:-1},139:{T:1},140:{T:-1},141:{T:1},142:{T:-1},143:{T:1},144:{T:-1},145:{T:1},146:{T:-1},147:{f:Gv},148:{f:Hv,p:16},151:{f:Rp},152:{},153:{f:Sm},154:{},155:{},156:{f:Em},157:{},158:{},159:{T:1,f:Yl},160:{T:-1},161:{T:1,f:kn},162:{T:-1},163:{T:1},164:{T:-1},165:{T:1},166:{T:-1},167:{},168:{},169:{},170:{},171:{},172:{T:1},173:{T:-1},174:{},175:{},176:{f:_p},177:{T:1},178:{T:-1},179:{T:1},180:{T:-1},181:{T:1},182:{T:-1},183:{T:1},184:{T:-1},185:{T:1},186:{T:-1},187:{T:1},188:{T:-1},189:{T:1},190:{T:-1},191:{T:1},192:{T:-1},193:{T:1},194:{T:-1},195:{T:1},196:{T:-1},197:{T:1},198:{T:-1},199:{T:1},200:{T:-1},201:{T:1},202:{T:-1},203:{T:1},204:{T:-1},205:{T:1},206:{T:-1},207:{T:1},208:{T:-1},209:{T:1},210:{T:-1},211:{T:1},212:{T:-1},213:{T:1},214:{T:-1},215:{T:1},216:{T:-1},217:{T:1},218:{T:-1},219:{T:1},220:{T:-1},221:{T:1},222:{T:-1},223:{T:1},224:{T:-1},225:{T:1},226:{T:-1},227:{T:1},228:{T:-1},229:{T:1},230:{T:-1},231:{T:1},232:{T:-1},233:{T:1},234:{T:-1},235:{T:1},236:{T:-1},237:{T:1},238:{T:-1},239:{T:1},240:{T:-1},241:{T:1},242:{T:-1},243:{T:1},244:{T:-1},245:{T:1},246:{T:-1},247:{T:1},248:{T:-1},249:{T:1},250:{T:-1},251:{T:1},252:{T:-1},253:{T:1},254:{T:-1},255:{T:1},256:{T:-1},257:{T:1},258:{T:-1},259:{T:1},260:{T:-1},261:{T:1},262:{T:-1},263:{T:1},264:{T:-1},265:{T:1},266:{T:-1},267:{T:1},268:{T:-1},269:{T:1},270:{T:-1},271:{T:1},272:{T:-1},273:{T:1},274:{T:-1},275:{T:1},276:{T:-1},277:{},278:{T:1},279:{T:-1},280:{T:1},281:{T:-1},282:{T:1},283:{T:1},284:{T:-1},285:{T:1},286:{T:-1},287:{T:1},288:{T:-1},289:{T:1},290:{T:-1},291:{T:1},292:{T:-1},293:{T:1},294:{T:-1},295:{T:1},296:{T:-1},297:{T:1},298:{T:-1},299:{T:1},300:{T:-1},301:{T:1},302:{T:-1},303:{T:1},304:{T:-1},305:{T:1},306:{T:-1},307:{T:1},308:{T:-1},309:{T:1},310:{T:-1},311:{T:1},312:{T:-1},313:{T:-1},314:{T:1},315:{T:-1},316:{T:1},317:{T:-1},318:{T:1},319:{T:-1},320:{T:1},321:{T:-1},322:{T:1},323:{T:-1},324:{T:1},325:{T:-1},326:{T:1},327:{T:-1},328:{T:1},329:{T:-1},330:{T:1},331:{T:-1},332:{T:1},333:{T:-1},334:{T:1},335:{f:Zc},336:{T:-1},337:{f:ru,T:1},338:{T:-1},339:{T:1},340:{T:-1},341:{T:1},342:{T:-1},343:{T:1},344:{T:-1},345:{T:1},346:{T:-1},347:{T:1},348:{T:-1},349:{T:1},350:{T:-1},351:{},352:{},353:{T:1},354:{T:-1},355:{f:vn},357:{},358:{},359:{},360:{T:1},361:{},362:{f:Hf},363:{},364:{},366:{},367:{},368:{},369:{},370:{},371:{},372:{T:1},373:{T:-1},374:{T:1},375:{T:-1},376:{T:1},377:{T:-1},378:{T:1},379:{T:-1},380:{T:1},381:{T:-1},382:{T:1},383:{T:-1},384:{T:1},385:{T:-1},386:{T:1},387:{T:-1},388:{T:1},389:{T:-1},390:{T:1},391:{T:-1},392:{T:1},393:{T:-1},394:{T:1},395:{T:-1},396:{},397:{},398:{},399:{},400:{},401:{T:1},403:{},404:{},405:{},406:{},407:{},408:{},409:{},410:{},411:{},412:{},413:{},414:{},415:{},416:{},417:{},418:{},419:{},420:{},421:{},422:{T:1},423:{T:1},424:{T:-1},425:{T:-1},426:{f:Np},427:{f:Ip},428:{},429:{T:1},430:{T:-1},431:{T:1},432:{T:-1},433:{T:1},434:{T:-1},435:{T:1},436:{T:-1},437:{T:1},438:{T:-1},439:{T:1},440:{T:-1},441:{T:1},442:{T:-1},443:{T:1},444:{T:-1},445:{T:1},446:{T:-1},447:{T:1},448:{T:-1},449:{T:1},450:{T:-1},451:{T:1},452:{T:-1},453:{T:1},454:{T:-1},455:{T:1},456:{T:-1},457:{T:1},458:{T:-1},459:{T:1},460:{T:-1},461:{T:1},462:{T:-1},463:{T:1},464:{T:-1},465:{T:1},466:{T:-1},467:{T:1},468:{T:-1},469:{T:1},470:{T:-1},471:{},472:{},473:{T:1},474:{T:-1},475:{},476:{f:Pp},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:Vv},486:{T:1},487:{T:-1},488:{T:1},489:{T:-1},490:{T:1},491:{T:-1},492:{T:1},493:{T:-1},494:{f:Cp},495:{T:1},496:{T:-1},497:{T:1},498:{T:-1},499:{},500:{T:1},501:{T:-1},502:{T:1},503:{T:-1},504:{},505:{T:1},506:{T:-1},507:{},508:{T:1},509:{T:-1},510:{T:1},511:{T:-1},512:{},513:{},514:{T:1},515:{T:-1},516:{T:1},517:{T:-1},518:{T:1},519:{T:-1},520:{T:1},521:{T:-1},522:{},523:{},524:{},525:{},526:{},527:{},528:{T:1},529:{T:-1},530:{T:1},531:{T:-1},532:{T:1},533:{T:-1},534:{},535:{},536:{},537:{},538:{T:1},539:{T:-1},540:{T:1},541:{T:-1},542:{T:1},548:{},549:{},550:{f:vn},551:{},552:{},553:{},554:{T:1},555:{T:-1},556:{T:1},557:{T:-1},558:{T:1},559:{T:-1},560:{T:1},561:{T:-1},562:{},564:{},565:{T:1},566:{T:-1},569:{T:1},570:{T:-1},572:{},573:{T:1},574:{T:-1},577:{},578:{},579:{},580:{},581:{},582:{},583:{},584:{},585:{},586:{},587:{},588:{T:-1},589:{},590:{T:1},591:{T:-1},592:{T:1},593:{T:-1},594:{T:1},595:{T:-1},596:{},597:{T:1},598:{T:-1},599:{T:1},600:{T:-1},601:{T:1},602:{T:-1},603:{T:1},604:{T:-1},605:{T:1},606:{T:-1},607:{},608:{T:1},609:{T:-1},610:{},611:{T:1},612:{T:-1},613:{T:1},614:{T:-1},615:{T:1},616:{T:-1},617:{T:1},618:{T:-1},619:{T:1},620:{T:-1},625:{},626:{T:1},627:{T:-1},628:{T:1},629:{T:-1},630:{T:1},631:{T:-1},632:{f:Su},633:{T:1},634:{T:-1},635:{T:1,f:Eu},636:{T:-1},637:{f:tn},638:{T:1},639:{},640:{T:-1},641:{T:1},642:{T:-1},643:{T:1},644:{},645:{T:-1},646:{T:1},648:{T:1},649:{},650:{T:-1},651:{f:im},652:{},653:{T:1},654:{T:-1},655:{T:1},656:{T:-1},657:{T:1},658:{T:-1},659:{},660:{T:1},661:{},662:{T:-1},663:{},664:{T:1},665:{},666:{T:-1},667:{},668:{},669:{},671:{T:1},672:{T:-1},673:{T:1},674:{T:-1},675:{},676:{},677:{},678:{},679:{},680:{},681:{},1024:{},1025:{},1026:{T:1},1027:{T:-1},1028:{T:1},1029:{T:-1},1030:{},1031:{T:1},1032:{T:-1},1033:{T:1},1034:{T:-1},1035:{},1036:{},1037:{},1038:{T:1},1039:{T:-1},1040:{},1041:{T:1},1042:{T:-1},1043:{},1044:{},1045:{},1046:{T:1},1047:{T:-1},1048:{T:1},1049:{T:-1},1050:{},1051:{T:1},1052:{T:1},1053:{f:zp},1054:{T:1},1055:{},1056:{T:1},1057:{T:-1},1058:{T:1},1059:{T:-1},1061:{},1062:{T:1},1063:{T:-1},1064:{T:1},1065:{T:-1},1066:{T:1},1067:{T:-1},1068:{T:1},1069:{T:-1},1070:{T:1},1071:{T:-1},1072:{T:1},1073:{T:-1},1075:{T:1},1076:{T:-1},1077:{T:1},1078:{T:-1},1079:{T:1},1080:{T:-1},1081:{T:1},1082:{T:-1},1083:{T:1},1084:{T:-1},1085:{},1086:{T:1},1087:{T:-1},1088:{T:1},1089:{T:-1},1090:{T:1},1091:{T:-1},1092:{T:1},1093:{T:-1},1094:{T:1},1095:{T:-1},1096:{},1097:{T:1},1098:{},1099:{T:-1},1100:{T:1},1101:{T:-1},1102:{},1103:{},1104:{},1105:{},1111:{},1112:{},1113:{T:1},1114:{T:-1},1115:{T:1},1116:{T:-1},1117:{},1118:{T:1},1119:{T:-1},1120:{T:1},1121:{T:-1},1122:{T:1},1123:{T:-1},1124:{T:1},1125:{T:-1},1126:{},1128:{T:1},1129:{T:-1},1130:{},1131:{T:1},1132:{T:-1},1133:{T:1},1134:{T:-1},1135:{T:1},1136:{T:-1},1137:{T:1},1138:{T:-1},1139:{T:1},1140:{T:-1},1141:{},1142:{T:1},1143:{T:-1},1144:{T:1},1145:{T:-1},1146:{},1147:{T:1},1148:{T:-1},1149:{T:1},1150:{T:-1},1152:{T:1},1153:{T:-1},1154:{T:-1},1155:{T:-1},1156:{T:-1},1157:{T:1},1158:{T:-1},1159:{T:1},1160:{T:-1},1161:{T:1},1162:{T:-1},1163:{T:1},1164:{T:-1},1165:{T:1},1166:{T:-1},1167:{T:1},1168:{T:-1},1169:{T:1},1170:{T:-1},1171:{},1172:{T:1},1173:{T:-1},1177:{},1178:{T:1},1180:{},1181:{},1182:{},2048:{T:1},2049:{T:-1},2050:{},2051:{T:1},2052:{T:-1},2053:{},2054:{},2055:{T:1},2056:{T:-1},2057:{T:1},2058:{T:-1},2060:{},2067:{},2068:{T:1},2069:{T:-1},2070:{},2071:{},2072:{T:1},2073:{T:-1},2075:{},2076:{},2077:{T:1},2078:{T:-1},2079:{},2080:{T:1},2081:{T:-1},2082:{},2083:{T:1},2084:{T:-1},2085:{T:1},2086:{T:-1},2087:{T:1},2088:{T:-1},2089:{T:1},2090:{T:-1},2091:{},2092:{},2093:{T:1},2094:{T:-1},2095:{},2096:{T:1},2097:{T:-1},2098:{T:1},2099:{T:-1},2100:{T:1},2101:{T:-1},2102:{},2103:{T:1},2104:{T:-1},2105:{},2106:{T:1},2107:{T:-1},2108:{},2109:{T:1},2110:{T:-1},2111:{T:1},2112:{T:-1},2113:{T:1},2114:{T:-1},2115:{},2116:{},2117:{},2118:{T:1},2119:{T:-1},2120:{},2121:{T:1},2122:{T:-1},2123:{T:1},2124:{T:-1},2125:{},2126:{T:1},2127:{T:-1},2128:{},2129:{T:1},2130:{T:-1},2131:{T:1},2132:{T:-1},2133:{T:1},2134:{},2135:{},2136:{},2137:{T:1},2138:{T:-1},2139:{T:1},2140:{T:-1},2141:{},3072:{},3073:{},4096:{T:1},4097:{T:-1},5002:{T:1},5003:{T:-1},5081:{T:1},5082:{T:-1},5083:{},5084:{T:1},5085:{T:-1},5086:{T:1},5087:{T:-1},5088:{},5089:{},5090:{},5092:{T:1},5093:{T:-1},5094:{},5095:{T:1},5096:{T:-1},5097:{},5099:{},65535:{n:""}};var Db={6:{f:Sd},10:{f:as},12:{f:ls},13:{f:ls},14:{f:ss},15:{f:ss},16:{f:En},17:{f:ss},18:{f:ss},19:{f:ls},20:{f:Mf},21:{f:Mf},23:{f:Hf},24:{f:Wf},25:{f:ss},26:{},27:{},28:{f:Yf},29:{},34:{f:ss},35:{f:Bf},38:{f:En},39:{f:En},40:{f:En},41:{f:En},42:{f:ss},43:{f:ss},47:{f:Eo},49:{f:vf},51:{f:ls},60:{},61:{f:of},64:{f:ss},65:{f:df},66:{f:ls},77:{},80:{},81:{},82:{},85:{f:ls},89:{},90:{},91:{},92:{f:Zs},93:{f:Jf},94:{},95:{f:ss},96:{},97:{},99:{f:ss},125:{f:cl},128:{f:Nf},129:{f:qs},130:{f:ls},131:{f:ss},132:{f:ss},133:{f:Qs},134:{},140:{f:il},141:{f:ls},144:{},146:{f:ll},151:{},152:{},153:{},154:{},155:{},156:{f:ls},157:{},158:{},160:{f:ml},161:{f:hl},174:{},175:{},176:{},177:{},178:{},180:{},181:{},182:{},184:{},185:{},189:{f:Af},190:{f:xf},193:{f:as},197:{},198:{},199:{},200:{},201:{},202:{f:ss},203:{},204:{},205:{},206:{},207:{},208:{},209:{},210:{},211:{},213:{},215:{},216:{},217:{},218:{f:ls},220:{},221:{f:ss},222:{},224:{f:Of},225:{f:Ks},226:{f:as},227:{},229:{f:Kf},233:{},235:{},236:{},237:{},239:{},240:{},241:{},242:{},244:{},245:{},246:{},247:{},248:{},249:{},251:{},252:{f:rf},253:{f:mf},255:{f:af},256:{},259:{},290:{},311:{},312:{},315:{},317:{f:cs},318:{},319:{},320:{},330:{},331:{},333:{},334:{},335:{},336:{},337:{},338:{},339:{},340:{},351:{},352:{f:ss},353:{f:as},401:{},402:{},403:{},404:{},405:{},406:{},407:{},408:{},425:{},426:{},427:{},428:{},429:{},430:{f:Uf},431:{f:ss},432:{},433:{},434:{},437:{},438:{f:el},439:{f:ss},440:{f:rl},441:{},442:{f:bs},443:{},444:{f:ls},445:{},446:{},448:{f:as},449:{f:ff,r:2},450:{f:as},512:{f:yf},513:{f:pl},515:{f:Pf},516:{f:gf},517:{f:Ff},519:{f:bl},520:{f:nf},523:{},545:{f:$f},549:{f:lf},566:{},574:{f:uf},638:{f:_f},659:{},1048:{},1054:{f:kf},1084:{},1212:{f:Gf},2048:{f:al},2049:{},2050:{},2051:{},2052:{},2053:{},2054:{},2055:{},2056:{},2057:{f:Xs},2058:{},2059:{},2060:{},2061:{},2062:{},2063:{},2064:{},2066:{},2067:{},2128:{},2129:{},2130:{},2131:{},2132:{},2133:{},2134:{},2135:{},2136:{},2137:{},2138:{},2146:{},2147:{r:12},2148:{},2149:{},2150:{},2151:{f:as},2152:{},2154:{},2155:{},2156:{},2161:{},2162:{},2164:{},2165:{},2166:{},2167:{},2168:{},2169:{},2170:{},2171:{},2172:{f:ol,r:12},2173:{f:Yc,r:12},2174:{},2175:{},2180:{},2181:{},2182:{},2183:{},2184:{},2185:{},2186:{},2187:{},2188:{f:ss,r:12},2189:{},2190:{r:12},2191:{},2192:{},2194:{},2195:{},2196:{f:Vf,r:12},2197:{},2198:{f:zc,r:12},2199:{},2200:{},2201:{},2202:{f:jf,r:12},2203:{f:as},2204:{},2205:{},2206:{},2207:{},2211:{f:sf},2212:{},2213:{},2214:{},2215:{},4097:{},4098:{},4099:{},4102:{},4103:{},4105:{},4106:{},4107:{},4108:{},4109:{},4116:{},4117:{},4118:{},4119:{},4120:{},4121:{},4122:{},4123:{},4124:{},4125:{},4126:{},4127:{},4128:{},4129:{},4130:{},4132:{},4133:{},4134:{f:ls},4135:{},4146:{},4147:{},4148:{},4149:{},4154:{},4156:{},4157:{},4158:{},4159:{},4160:{},4161:{},4163:{},4164:{f:dl},4165:{},4166:{},4168:{},4170:{},4171:{},4174:{},4175:{},4176:{},4177:{},4187:{},4188:{f:fl},4189:{},4191:{},4192:{},4193:{},4194:{},4195:{},4196:{},4197:{},4198:{},4199:{},4200:{},0:{f:yf},1:{},2:{f:El},3:{f:kl},4:{f:wl},5:{f:Ff},7:{f:Sl},8:{},9:{f:Xs},11:{},22:{f:ls},30:{f:Ef},31:{},32:{},33:{f:$f},36:{},37:{f:lf},50:{f:_l},62:{},52:{},67:{},68:{f:ls},69:{},86:{},126:{},127:{f:gl},135:{},136:{},137:{},145:{},148:{},149:{},150:{},169:{},171:{},188:{},191:{},192:{},194:{},195:{},214:{f:Al},223:{},234:{},354:{},421:{},518:{f:Sd},521:{f:Xs},536:{f:Wf},547:{f:Bf},561:{},579:{},1030:{f:Sd},1033:{f:Xs},1091:{},2157:{},2163:{},2177:{},2240:{},2241:{},2242:{},2243:{},2244:{},2245:{},2246:{},2247:{},2248:{},2249:{},2250:{},2251:{},2262:{r:12},101:{},102:{},105:{},106:{},107:{},109:{},112:{},114:{},29282:{}};function Pb(e,r,t,a){var n=r;if(isNaN(n))return;var i=a||(t||[]).length||0;var s=e.next(4);s._W(2,n);s._W(2,i);if(i>0&&aa(t))e.push(t)}function Lb(e,r,t,a){var n=a||(t||[]).length||0;if(n<=8224)return Pb(e,r,t,n);var i=r;if(isNaN(i))return;var s=t.parts||[],f=0;var l=0,o=0;while(o+(s[f]||8224)<=8224){o+=s[f]||8224;f++}var c=e.next(4);c._W(2,i);c._W(2,o);e.push(t.slice(l,l+o));l+=o;while(l=0&&n<65536)Pb(e,2,yl(t,a,n));else Pb(e,3,Tl(t,a,n));return;case"b":;case"e":Pb(e,5,Ub(t,a,r.v,r.t));return;case"s":;case"str":Pb(e,4,Bb(t,a,(r.v||"").slice(0,255)));return;}Pb(e,1,Mb(null,t,a))}function Hb(e,r,t,a){var n=Array.isArray(r);var i=za(r["!ref"]||"A1"),s,f="",l=[];if(i.e.c>255||i.e.r>16383){if(a.WTF)throw new Error("Range "+(r["!ref"]||"A1")+" exceeds format limit A1:IV16384");i.e.c=Math.min(i.e.c,255);i.e.r=Math.min(i.e.c,16383);s=Ba(i)}for(var o=i.s.r;o<=i.e.r;++o){f=Ca(o);for(var c=i.s.c;c<=i.e.c;++c){if(o===i.s.r)l[c]=Ia(c);s=l[c]+f;var u=n?(r[o]||[])[c]:r[s];if(!u)continue;Wb(e,u,o,c,a)}}}function zb(e,r){var t=r||{};if(b!=null&&t.dense==null)t.dense=b;var a=Ta();var n=0;for(var i=0;i255||d.e.r>=v){if(r.WTF)throw new Error("Range "+(i["!ref"]||"A1")+" exceeds format limit A1:IV16384");d.e.c=Math.min(d.e.c,255);d.e.r=Math.min(d.e.c,v-1)}Pb(a,2057,Ys(t,16,r));Pb(a,13,os(1));Pb(a,12,os(100));Pb(a,15,fs(true));Pb(a,17,fs(false));Pb(a,16,yn(.001));Pb(a,95,fs(true));Pb(a,42,fs(false));Pb(a,43,fs(false));Pb(a,130,os(1));Pb(a,128,If([0,0]));Pb(a,131,fs(false));Pb(a,132,fs(false));if(o)Yb(a,i["!cols"]);Pb(a,512,Sf(d,r));if(o)i["!links"]=[];var p=[];for(var m=d.s.r;m<=d.e.r;++m){u=Ca(m);for(var b=d.s.c;b<=d.e.c;++b){if(m===d.s.r)h[b]=Ia(b);c=h[b]+u;var g=l?(i[m]||[])[b]:i[c];if(!g)continue;Kb(a,g,m,b,r);if(o&&g.l)i["!links"].push([c,g.l]);if(o&&g.c)p.push([c,g.c])}}var w=f.CodeName||f.name||n;if(o)Pb(a,574,hf((s.Views||[])[0]));if(o&&(i["!merges"]||[]).length)Pb(a,229,Zf(i["!merges"]));if(o)Xb(a,i);Pb(a,442,ws(w,r));if(o)$b(a,i);Pb(a,10);return a.end()}function Jb(e,r,t){var a=Ta();var n=(e||{}).Workbook||{};var i=n.Sheets||[];var s=n.WBProps||{};var f=t.biff==8,l=t.biff==5;Pb(a,2057,Ys(e,5,t));if(t.bookType=="xla")Pb(a,135);Pb(a,225,f?os(1200):null);Pb(a,193,ns(2));if(l)Pb(a,191);if(l)Pb(a,192);Pb(a,226);Pb(a,92,Js("SheetJS",t));Pb(a,66,os(f?1200:1252));if(f)Pb(a,353,os(0));if(f)Pb(a,448);Pb(a,317,vl(e.SheetNames.length));if(f&&e.vbaraw)Pb(a,211); -if(f&&e.vbaraw){var o=s.CodeName||"ThisWorkbook";Pb(a,442,ws(o,t))}Pb(a,156,os(17));Pb(a,25,fs(false));Pb(a,18,fs(false));Pb(a,19,os(0));if(f)Pb(a,431,fs(false));if(f)Pb(a,444,os(0));Pb(a,61,cf(t));Pb(a,64,fs(false));Pb(a,141,os(0));Pb(a,34,fs(vm(e)=="true"));Pb(a,14,fs(true));if(f)Pb(a,439,fs(false));Pb(a,218,os(0));Vb(a,e,t);Gb(a,e.SSF,t);jb(a,t);if(f)Pb(a,352,fs(false));var c=a.end();var u=Ta();if(f)Pb(u,140,sl());if(f&&t.Strings)Lb(u,252,tf(t.Strings,t));Pb(u,10);var h=u.end();var d=Ta();var v=0,p=0;for(p=0;p255){if(typeof console!="undefined"&&console.error)console.error("Worksheet '"+e.SheetNames[t]+"' extends beyond column IV (255). Data may be lost.")}}var i=r||{};switch(i.biff||2){case 8:;case 5:return qb(e,r);case 4:;case 3:;case 2:return zb(e,r);}throw new Error("invalid type "+i.bookType+" for BIFF")}function eg(e,r){var t=r||{};if(b!=null&&t.dense==null)t.dense=b;var a=t.dense?[]:{};e=e.replace(//g,"");var n=e.match(/");var i=e.match(/<\/table/i);var s=n.index,f=i&&i.index||e.length;var l=Rr(e.slice(s,f),/(:?]*>)/i,"");var o=-1,c=0,u=0,h=0;var d={s:{r:1e7,c:1e7},e:{r:0,c:0}};var v=[];for(s=0;s/i);for(f=0;f"))>-1)k=k.slice(T+1);for(var E=0;E")));h=S.colspan?+S.colspan:1;if((u=+S.rowspan)>1||h>1)v.push({s:{r:o,c:c},e:{r:o+(u||1)-1,c:c+h-1}});var _=S.t||S["data-t"]||"";if(!k.length){c+=h;continue}k=wt(k);if(d.s.r>o)d.s.r=o;if(d.e.rc)d.s.c=c;if(d.e.ct||n[c].s.c>f)continue;if(n[c].e.r1)s.rowspan=l;if(o>1)s.colspan=o;if(a.editable)d=''+d+"";else if(h){s["data-t"]=h&&h.t||"z";if(h.v!=null)s["data-v"]=h.v;if(h.z!=null)s["data-z"]=h.z;if(h.l&&(h.l.Target||"#").charAt(0)!="#")d=''+d+""}s.id=(a.id||"sjs")+"-"+u;i.push(xt("td",d,s))}var v="";return v+i.join("")+""}var tg='SheetJS Table Export';var ag="";function ng(e,r){var t=e.match(/[\s\S]*?<\/table>/gi);if(!t||t.length==0)throw new Error("Invalid HTML: could not find
");if(t.length==1){var a=$a(eg(t[0],r),r);a.bookType="html";return a}var n=ck();t.forEach(function(e,t){uk(n,eg(e,r),"Sheet"+(t+1))});n.bookType="html";return n}function ig(e,r,t){var a=[];return a.join("")+""}function sg(e,r){var t=r||{};var a=t.header!=null?t.header:tg;var n=t.footer!=null?t.footer:ag;var i=[a];var s=Ua(e["!ref"]);t.dense=Array.isArray(e);i.push(ig(e,s,t));for(var f=s.s.r;f<=s.e.r;++f)i.push(rg(e,s,f,t));i.push("
"+n);return i.join("")}function fg(e,r,t){var a=r.rows;if(!a){throw"Unsupported origin when "+r.tagName+" is not a TABLE"}var n=t||{};if(b!=null)n.dense=b;var i=0,s=0;if(n.origin!=null){if(typeof n.origin=="number")i=n.origin;else{var f=typeof n.origin=="string"?La(n.origin):n.origin;i=f.r;s=f.c}}var l=Math.min(n.sheetRows||1e7,a.length);var o={s:{r:0,c:0},e:{r:i,c:s}};if(e["!ref"]){var c=Ua(e["!ref"]);o.s.r=Math.min(o.s.r,c.s.r);o.s.c=Math.min(o.s.c,c.s.c);o.e.r=Math.max(o.e.r,c.e.r);o.e.c=Math.max(o.e.c,c.e.c);if(i==-1)o.e.r=i=c.e.r+1}var u=[],h=0;var d=e["!rows"]||(e["!rows"]=[]);var v=0,p=0,m=0,g=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;v1||k>1)u.push({s:{r:p+i,c:g+s},e:{r:p+i+(w||1)-1,c:g+s+(k||1)-1}});var x={t:"s",v:S};var C=y.getAttribute("data-t")||y.getAttribute("t")||"";if(S!=null){if(S.length==0)x.t=C||"z";else if(n.raw||S.trim().length==0||C=="s"){}else if(S==="TRUE")x={t:"b",v:true};else if(S==="FALSE")x={t:"b",v:false};else if(!isNaN(_r(S)))x={t:"n",v:_r(S)};else if(!isNaN(Or(S).getDate())){x={t:"d",v:Tr(S)};if(!n.cellDates)x={t:"n",v:hr(x.v)};x.z=n.dateNF||Z[14]}}if(x.z===undefined&&_!=null)x.z=_;var O="",R=y.getElementsByTagName("A");if(R&&R.length)for(var N=0;N=l)e["!fullref"]=Ba((o.e.r=a.length-v+p-1+i,o));return e}function lg(e,r){var t=r||{};var a=t.dense?[]:{};return fg(a,e,r)}function og(e,r){var t=$a(lg(e,r),r);return t}function cg(e){var r="";var t=ug(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function ug(e){if(e.ownerDocument.defaultView&&typeof e.ownerDocument.defaultView.getComputedStyle==="function")return e.ownerDocument.defaultView.getComputedStyle;if(typeof getComputedStyle==="function")return getComputedStyle;return null}function hg(e){var r=e.replace(/[\t\r\n]/g," ").trim().replace(/ +/g," ").replace(//g," ").replace(//g,function(e,r){return Array(parseInt(r,10)+1).join(" ")}).replace(/]*\/>/g,"\t").replace(//g,"\n");var t=rt(r.replace(/<[^>]*>/g,""));return[t]}function dg(e,r,t){var a=t||{};var n=Rt(e);Nt.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");var i,s,f="",l="",o,c=0,u=-1,h=false,d="";while(i=Nt.exec(n)){switch(i[3]=i[3].replace(/_.*$/,"")){case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":;case"text-style":if(i[1]==="/"){h=false;if(s["truncate-on-overflow"]=="false"){if(f.match(/h/))f=f.replace(/h+/,"[$&]");else if(f.match(/m/))f=f.replace(/m+/,"[$&]");else if(f.match(/s/))f=f.replace(/s+/,"[$&]")}a[s.name]=f;f=""}else if(i[0].charAt(i[0].length-2)!=="/"){h=true;f="";s=Jr(i[0],false)}break;case"boolean-style":if(i[1]==="/"){h=false;a[s.name]="General";f=""}else if(i[0].charAt(i[0].length-2)!=="/"){h=true;f="";s=Jr(i[0],false)}break;case"boolean":f+="General";break;case"text":if(i[1]==="/"){d=n.slice(u,Nt.lastIndex-i[0].length);if(d=="%"&&s[0]=="=0")f=a[o["apply-style-name"]]+";"+f;else console.error("ODS number format may be incorrect: "+o["condition"]);break;case"number":if(i[1]==="/")break;o=Jr(i[0],false);l="";l+=Sr("0",+o["min-integer-digits"]||1);if(ut(o["grouping"]))l=de(Sr("#",Math.max(0,4-l.length))+l);if(+o["min-decimal-places"]||+o["decimal-places"])l+=".";if(+o["min-decimal-places"])l+=Sr("0",+o["min-decimal-places"]||1);if(+o["decimal-places"]-(+o["min-decimal-places"]||0))l+=Sr("0",+o["decimal-places"]-(+o["min-decimal-places"]||0));f+=l;break;case"embedded-text":if(i[1]==="/"){if(c==0)f+='"'+n.slice(u,Nt.lastIndex-i[0].length).replace(/"/g,'""')+'"';else f=f.slice(0,c)+'"'+n.slice(u,Nt.lastIndex-i[0].length).replace(/"/g,'""')+'"'+f.slice(c)}else if(i[0].charAt(i[0].length-2)!=="/"){u=Nt.lastIndex;c=-+Jr(i[0],false)["position"]||0}break;}}return a}function vg(e,r,t){var a=r||{};if(b!=null&&a.dense==null)a.dense=b;var n=Rt(e);var i=[],s;var f;var l,o="",c=0;var u;var h;var d={},v=[];var p=a.dense?[]:{};var m,g;var w={value:""};var k="",T=0,E;var y=[];var S=-1,_=-1,A={s:{r:1e6,c:1e7},e:{r:0,c:0}};var x=0;var C=t||{},O={};var R=[],N={},I=0,F=0;var D=[],P=1,L=1;var M=[];var U={Names:[],WBProps:{}};var B={};var W=["",""];var H=[],z={};var V="",G=0;var $=false,j=false;var X=0;var Y=0;Nt.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");while(m=Nt.exec(n))switch(m[3]=m[3].replace(/_.*$/,"")){case"table":;case"工作表":if(m[1]==="/"){if(A.e.c>=A.s.c&&A.e.r>=A.s.r)p["!ref"]=Ba(A);else p["!ref"]="A1:A1";if(a.sheetRows>0&&a.sheetRows<=A.e.r){p["!fullref"]=p["!ref"];A.e.r=a.sheetRows-1;p["!ref"]=Ba(A)}if(R.length)p["!merges"]=R;if(D.length)p["!rows"]=D;u.name=u["名称"]||u.name;if(typeof JSON!=="undefined")JSON.stringify(u);v.push(u.name);d[u.name]=p;j=false}else if(m[0].charAt(m[0].length-2)!=="/"){u=Jr(m[0],false);S=_=-1;A.s.r=A.s.c=1e7;A.e.r=A.e.c=0;p=a.dense?[]:{};R=[];D=[];j=true}break;case"table-row-group":if(m[1]==="/")--x;else++x;break;case"table-row":;case"行":if(m[1]==="/"){S+=P;P=1;break}h=Jr(m[0],false);if(h["行号"])S=h["行号"]-1;else if(S==-1)S=0;P=+h["number-rows-repeated"]||1;if(P<10)for(X=0;X0)D[S+X]={level:x};_=-1;break;case"covered-table-cell":if(m[1]!=="/")++_;if(a.sheetStubs){if(a.dense){if(!p[S])p[S]=[];p[S][_]={t:"z"}}else p[Ma({r:S,c:_})]={t:"z"}}k="";y=[];break;case"table-cell":;case"数据":if(m[0].charAt(m[0].length-2)==="/"){++_;w=Jr(m[0],false);L=parseInt(w["number-columns-repeated"]||"1",10);g={t:"z",v:null};if(w.formula&&a.cellFormula!=false)g.f=jd(rt(w.formula));if(w["style-name"]&&O[w["style-name"]])g.z=O[w["style-name"]];if((w["数据类型"]||w["value-type"])=="string"){g.t="s";g.v=rt(w["string-value"]||"");if(a.dense){if(!p[S])p[S]=[];p[S][_]=g}else{p[Ma({r:S,c:_})]=g}}_+=L-1}else if(m[1]!=="/"){++_;k="";T=0;y=[];L=1;var K=P?S+P-1:S;if(_>A.e.c)A.e.c=_;if(_A.e.r)A.e.r=K;w=Jr(m[0],false);H=[];z={};g={t:w["数据类型"]||w["value-type"],v:null};if(w["style-name"]&&O[w["style-name"]])g.z=O[w["style-name"]];if(a.cellFormula){if(w.formula)w.formula=rt(w.formula);if(w["number-matrix-columns-spanned"]&&w["number-matrix-rows-spanned"]){I=parseInt(w["number-matrix-rows-spanned"],10)||0;F=parseInt(w["number-matrix-columns-spanned"],10)||0;N={s:{r:S,c:_},e:{r:S+I-1,c:_+F-1}};g.F=Ba(N);M.push([N,g.F])}if(w.formula)g.f=jd(w.formula);else for(X=0;X=M[X][0].s.r&&S<=M[X][0].e.r)if(_>=M[X][0].s.c&&_<=M[X][0].e.c)g.F=M[X][1]}if(w["number-columns-spanned"]||w["number-rows-spanned"]){I=parseInt(w["number-rows-spanned"],10)||0;F=parseInt(w["number-columns-spanned"],10)||0;N={s:{r:S,c:_},e:{r:S+I-1,c:_+F-1}};R.push(N)}if(w["number-columns-repeated"])L=parseInt(w["number-columns-repeated"],10);switch(g.t){case"boolean":g.t="b";g.v=ut(w["boolean-value"])||+w["boolean-value"]>=1;break;case"float":g.t="n";g.v=parseFloat(w.value);break;case"percentage":g.t="n";g.v=parseFloat(w.value);break;case"currency":g.t="n";g.v=parseFloat(w.value);break;case"date":g.t="d";g.v=Tr(w["date-value"]);if(!a.cellDates){g.t="n";g.v=hr(g.v,U.WBProps.date1904)-Y}if(!g.z)g.z="m/d/yy";break;case"time":g.t="n";g.v=br(w["time-value"])/86400;if(a.cellDates){g.t="d";g.v=mr(g.v)}if(!g.z)g.z="HH:MM:SS";break;case"number":g.t="n";g.v=parseFloat(w["数据数值"]);break;default:if(g.t==="string"||g.t==="text"||!g.t){g.t="s";if(w["string-value"]!=null){k=rt(w["string-value"]);y=[]}}else throw new Error("Unsupported value type "+g.t);}}else{$=false;if(g.t==="s"){g.v=k||"";if(y.length)g.R=y;$=T==0}if(B.Target)g.l=B;if(H.length>0){g.c=H;H=[]}if(k&&a.cellText!==false)g.w=k;if($){g.t="z";delete g.v}if(!$||a.sheetStubs){if(!(a.sheetRows&&a.sheetRows<=S)){for(var Z=0;Z0)p[S+Z][_+L]=yr(g)}else{p[Ma({r:S+Z,c:_})]=g;while(--L>0)p[Ma({r:S+Z,c:_+L})]=yr(g)}if(A.e.c<=_)A.e.c=_}}}L=parseInt(w["number-columns-repeated"]||"1",10);_+=L-1;L=0;g={};k="";y=[]}B={};break;case"document":;case"document-content":;case"电子表格文档":;case"spreadsheet":;case"主体":;case"scripts":;case"styles":;case"font-face-decls":;case"master-styles":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s}else if(m[0].charAt(m[0].length-2)!=="/")i.push([m[3],true]);break;case"annotation":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s;z.t=k;if(y.length)z.R=y;z.a=V;H.push(z)}else if(m[0].charAt(m[0].length-2)!=="/"){i.push([m[3],false])}V="";G=0;k="";T=0;y=[];break;case"creator":if(m[1]==="/"){V=n.slice(G,m.index)}else G=m.index+m[0].length;break;case"meta":;case"元数据":;case"settings":;case"config-item-set":;case"config-item-map-indexed":;case"config-item-map-entry":;case"config-item-map-named":;case"shapes":;case"frame":;case"text-box":;case"image":;case"data-pilot-tables":;case"list-style":;case"form":;case"dde-links":;case"event-listeners":;case"chart":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s}else if(m[0].charAt(m[0].length-2)!=="/")i.push([m[3],false]);k="";T=0;y=[];break;case"scientific-number":;case"currency-symbol":;case"fill-character":break;case"text-style":;case"boolean-style":;case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":if(m[1]==="/"){var J=Nt.lastIndex;dg(n.slice(l,Nt.lastIndex),r,C);Nt.lastIndex=J}else if(m[0].charAt(m[0].length-2)!=="/"){l=Nt.lastIndex-m[0].length}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":{var q=Jr(m[0],false);if(q["family"]=="table-cell"&&C[q["data-style-name"]])O[q["name"]]=C[q["data-style-name"]]}break;case"map":break;case"font-face":break;case"paragraph-properties":break;case"table-properties":break;case"table-column-properties":break;case"table-row-properties":break;case"table-cell-properties":break;case"number":break;case"fraction":break;case"day":;case"month":;case"year":;case"era":;case"day-of-week":;case"week-of-year":;case"quarter":;case"hours":;case"minutes":;case"seconds":;case"am-pm":break;case"boolean":break;case"text":if(m[0].slice(-2)==="/>")break;else if(m[1]==="/")switch(i[i.length-1][0]){case"number-style":;case"date-style":;case"time-style":o+=n.slice(c,m.index);break;}else c=m.index+m[0].length;break;case"named-range":f=Jr(m[0],false);W=Yd(f["cell-range-address"]);var Q={Name:f.name,Ref:W[0]+"!"+W[1]};if(j)Q.Sheet=v.length;U.Names.push(Q);break;case"text-content":break;case"text-properties":break;case"embedded-text":break;case"body":;case"电子表格":break;case"forms":break;case"table-column":break;case"table-header-rows":break;case"table-rows":break;case"table-column-group":break;case"table-header-columns":break;case"table-columns":break;case"null-date":f=Jr(m[0],false);switch(f["date-value"]){case"1904-01-01":U.WBProps.date1904=true;case"1900-01-01":Y=0;}break;case"graphic-properties":break;case"calculation-settings":break;case"named-expressions":break;case"label-range":break;case"label-ranges":break;case"named-expression":break;case"sort":break;case"sort-by":break;case"sort-groups":break;case"tab":break;case"line-break":break;case"span":break;case"p":;case"文本串":if(["master-styles"].indexOf(i[i.length-1][0])>-1)break;if(m[1]==="/"&&(!w||!w["string-value"])){var ee=hg(n.slice(T,m.index),E);k=(k.length>0?k+"\n":"")+ee[0]}else{E=Jr(m[0],false);T=m.index+m[0].length}break;case"s":break;case"database-range":if(m[1]==="/")break;try{W=Yd(Jr(m[0])["target-range-address"]);d[W[0]]["!autofilter"]={ref:W[1]}}catch(re){}break;case"date":break;case"object":break;case"title":;case"标题":break;case"desc":break;case"binary-data":break;case"table-source":break;case"scenario":break;case"iteration":break;case"content-validations":break;case"content-validation":break;case"help-message":break;case"error-message":break;case"database-ranges":break;case"filter":break;case"filter-and":break;case"filter-or":break;case"filter-condition":break;case"list-level-style-bullet":break;case"list-level-style-number":break;case"list-level-properties":break;case"sender-firstname":;case"sender-lastname":;case"sender-initials":;case"sender-title":;case"sender-position":;case"sender-email":;case"sender-phone-private":;case"sender-fax":;case"sender-company":;case"sender-phone-work":;case"sender-street":;case"sender-city":;case"sender-postal-code":;case"sender-country":;case"sender-state-or-province":;case"author-name":;case"author-initials":;case"chapter":;case"file-name":;case"template-name":;case"sheet-name":break;case"event-listener":break;case"initial-creator":;case"creation-date":;case"print-date":;case"generator":;case"document-statistic":;case"user-defined":;case"editing-duration":;case"editing-cycles":break;case"config-item":break;case"page-number":break;case"page-count":break;case"time":break;case"cell-range-source":break;case"detective":break;case"operation":break;case"highlighted-range":break;case"data-pilot-table":;case"source-cell-range":;case"source-service":;case"data-pilot-field":;case"data-pilot-level":;case"data-pilot-subtotals":;case"data-pilot-subtotal":;case"data-pilot-members":;case"data-pilot-member":;case"data-pilot-display-info":;case"data-pilot-sort-info":;case"data-pilot-layout-info":;case"data-pilot-field-reference":;case"data-pilot-groups":;case"data-pilot-group":;case"data-pilot-group-member":break;case"rect":break;case"dde-connection-decls":;case"dde-connection-decl":;case"dde-link":;case"dde-source":break;case"properties":break;case"property":break;case"a":if(m[1]!=="/"){B=Jr(m[0],false);if(!B.href)break;B.Target=rt(B.href);delete B.href;if(B.Target.charAt(0)=="#"&&B.Target.indexOf(".")>-1){W=Yd(B.Target.slice(1));B.Target="#"+W[0]+"!"+W[1]}else if(B.Target.match(/^\.\.[\\\/]/))B.Target=B.Target.slice(3)}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(m[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(a.WTF)throw new Error(m);};}var te={Sheets:d,SheetNames:v,Workbook:U};if(a.bookSheets)delete te.Sheets;return te}function pg(e,r){r=r||{};if(Dr(e,"META-INF/manifest.xml"))ui(Lr(e,"META-INF/manifest.xml"),r);var t=Mr(e,"styles.xml");var a=t&&dg(mt(t),r);var n=Mr(e,"content.xml");if(!n)throw new Error("Missing content.xml in ODS / UOF file");var i=vg(mt(n),r,a);if(Dr(e,"meta.xml"))i.Props=wi(Lr(e,"meta.xml"));i.bookType="ods";return i}function mg(e,r){var t=vg(e,r);t.bookType="fods";return t}var bg=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return Gr+r}}();function gg(e,r){var t="number",a="",n={"style:name":r},i="",s=0;e=e.replace(/"[$]"/g,"$");e:{if(e.indexOf(";")>-1){console.error("Unsupported ODS Style Map exported. Using first branch of "+e);e=e.slice(0,e.indexOf(";"))}if(e=="@"){t="text";a="";break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[s]=='"'){i="";while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;if(e[s+1]=="*"){s++;a+=""+nt(i.replace(/""/g,'"'))+""}else{a+=""+nt(i.replace(/""/g,'"'))+""}e=e.slice(s+1);s=0}var f=e.match(/# (\?+)\/(\?+)/);if(f){a+=xt("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":f[1].length,"number:max-denominator-value":Math.max(+f[1].replace(/./g,"9"),+f[2].replace(/./g,"9"))});break e}if(f=e.match(/# (\?+)\/(\d+)/)){a+=xt("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":f[1].length,"number:denominator-value":+f[2]});break e}if(f=e.match(/(\d+)(|\.\d+)%/)){t="percentage";a+=xt("number:number",null,{"number:decimal-places":f[2]&&f.length-1||0,"number:min-decimal-places":f[2]&&f.length-1||0,"number:min-integer-digits":f[1].length})+"%";break e}var l=false;if(["y","m","d"].indexOf(e[0])>-1){t="date";r:for(;s";break;case"yyy":;case"yyyy":a+='';break;case"mmmmm":console.error("ODS has no equivalent of format |mmmmm|");case"m":;case"mm":;case"mmm":;case"mmmm":a+='';break;case"d":;case"dd":a+='';break;case"ddd":;case"dddd":a+='';break;}break;case'"':while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(i)+"";break;default:console.error("unrecognized character "+i+" in ODF format "+e);}if(!l)break e;e=e.slice(s+1);s=0}if(e.match(/^\[?[hms]/)){if(t=="number")t="time";if(e.match(/\[/)){e=e.replace(/[\[\]]/g,"");n["number:truncate-on-overflow"]="false"}for(;s';break;case"m":;case"mm":a+='';break;case"s":;case"ss":if(e[s+1]==".")do{i+=e[s+1];++s}while(e[s+1]=="0");a+='";break;}break;case'"':while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(i)+"";break;case"a":if(e.slice(s,s+3).toLowerCase()=="a/p"){a+="";s+=2;break}if(e.slice(s,s+5).toLowerCase()=="am/pm"){a+="";s+=4;break};default:console.error("unrecognized character "+i+" in ODF format "+e);}break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[0]=="$"){a+='$';e=e.slice(1);s=0}s=0;if(e[s]=='"'){while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;if(e[s+1]=="*"){s++;a+=""+nt(i.replace(/""/g,'"'))+""}else{a+=""+nt(i.replace(/""/g,'"'))+""}e=e.slice(s+1);s=0}var c=e.match(/([#0][0#,]*)(\.[0#]*|)(E[+]?0*|)/i);if(!c||!c[0])console.error("Could not find numeric part of "+e);else{var u=c[1].replace(/,/g,"");a+="-1?' number:grouping="true"':"")+(c[2]&&' number:decimal-places="'+(c[2].length-1)+'"'||' number:decimal-places="0"')+(c[3]&&c[3].indexOf("+")>-1?' number:forced-exponent-sign="true"':"")+(c[3]?' number:min-exponent-digits="'+c[3].match(/0+/)[0].length+'"':"")+">"+"";s=c.index+c[0].length}if(e[s]=='"'){i="";while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.replace(/""/g,'"'))+""}}if(!a){console.error("Could not generate ODS number format for |"+e+"|");return""}return xt("number:"+t+"-style",a,n)}function wg(e,r,t){var a=e.filter(function(e){return e.Sheet==(t==-1?null:t)});if(!a.length)return"";return" \n"+a.map(function(e){var r=Kd(e.Ref);return" "+xt("table:named-range",null,{"table:name":e.Name,"table:cell-range-address":r,"table:base-cell-address":r.replace(/[\.]?[^\.]*$/,".$A$1")})}).join("\n")+"\n \n"}var kg=function(){var e=function(e){return nt(e).replace(/ +/g,function(e){return''}).replace(/\t/g,"").replace(/\n/g,"").replace(/^ /,"").replace(/ $/,"")};var r=" \n";var t=" \n";var a=function(a,n,i,s,f){var l=[];l.push(' \n');var o=0,c=0,u=Ua(a["!ref"]||"A1");var h=a["!merges"]||[],d=0;var v=Array.isArray(a);if(a["!cols"]){for(c=0;c<=u.e.c;++c)l.push(" \n")}var p="",m=a["!rows"]||[];for(o=0;o\n")}for(;o<=u.e.r;++o){p=m[o]?' table:style-name="ro'+m[o].ods+'"':"";l.push(" \n");for(c=0;cc)continue;if(h[d].s.r>o)continue;if(h[d].e.c\n")}if((n.Workbook||{}).Names)l.push(wg(n.Workbook.Names,n.SheetNames,i));l.push(" \n");return l.join("")};var n=function(e,r){e.push(" \n");var t=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!cols"]){for(var a=0;a\n');e.push(' \n');e.push(" \n");++t}}});var a=0;r.SheetNames.map(function(e){ -return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!rows"]){for(var t=0;t\n');e.push(' \n');e.push(" \n");++a}}});e.push(' \n');e.push(' \n');e.push(" \n");e.push(' \n');e.push(' \n');e.push(" /\n");e.push(' \n');e.push(" /\n");e.push(" \n");e.push(" \n");var n={};var i=69;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;var t=Ua(r["!ref"]);for(var a=0;a<=t.e.r;++a)for(var s=0;s<=t.e.c;++s){var f=Array.isArray(r)?(r[a]||[])[s]:r[Ma({r:a,c:s})];if(!f||!f.z||f.z.toLowerCase()=="general")continue;if(!n[f.z]){var l=gg(f.z,"N"+i);if(l){n[f.z]="N"+i;++i;e.push(l+"\n")}}}});e.push(' \n');sr(n).forEach(function(r){e.push('\n')});e.push(" \n");return n};return function i(e,r){var t=[Gr];var i=At({"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:meta":"urn:oasis:names:tc:opendocument:xmlns:meta:1.0","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:presentation":"urn:oasis:names:tc:opendocument:xmlns:presentation:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:chart":"urn:oasis:names:tc:opendocument:xmlns:chart:1.0","xmlns:dr3d":"urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0","xmlns:math":"http://www.w3.org/1998/Math/MathML","xmlns:form":"urn:oasis:names:tc:opendocument:xmlns:form:1.0","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=At({"xmlns:config":"urn:oasis:names:tc:opendocument:xmlns:config:1.0","office:mimetype":"application/vnd.oasis.opendocument.spreadsheet"});if(r.bookType=="fods"){t.push("\n");t.push(mi().replace(//,"").replace(/<\/office:document-meta>/,"")+"\n")}else t.push("\n");var f=n(t,e);t.push(" \n");t.push(" \n");if(((e.Workbook||{}).WBProps||{}).date1904)t.push(' \n \n \n');for(var l=0;l!=e.SheetNames.length;++l)t.push(a(e.Sheets[e.SheetNames[l]],e,l,r,f));if((e.Workbook||{}).Names)t.push(wg(e.Workbook.Names,e.SheetNames,-1));t.push(" \n");t.push(" \n");if(r.bookType=="fods")t.push("");else t.push("");return t.join("")}}();function Tg(e,r){if(r.bookType=="fods")return kg(e,r);var t=Hr();var a="";var n=[];var i=[];a="mimetype";Wr(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";Wr(t,a,kg(e,r));n.push([a,"text/xml"]);i.push([a,"ContentFile"]);a="styles.xml";Wr(t,a,bg(e,r));n.push([a,"text/xml"]);i.push([a,"StylesFile"]);a="meta.xml";Wr(t,a,Gr+mi());n.push([a,"text/xml"]);i.push([a,"MetadataFile"]);a="manifest.rdf";Wr(t,a,pi(i));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";Wr(t,a,hi(n));return t}var Eg=function(){try{if(typeof Uint8Array=="undefined")return"slice";if(typeof Uint8Array.prototype.subarray=="undefined")return"slice";if(typeof Buffer!=="undefined"){if(typeof Buffer.prototype.subarray=="undefined")return"slice";if((typeof Buffer.from=="function"?Buffer.from([72,62]):new Buffer([72,62]))instanceof Uint8Array)return"subarray";return"slice"}return"subarray"}catch(e){return"slice"}}();function yg(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Sg(e){return typeof TextDecoder!="undefined"?(new TextDecoder).decode(e):mt(R(e))}function _g(e){return typeof TextEncoder!="undefined"?(new TextEncoder).encode(e):C(bt(e))}function Ag(e,r){var t=e.indexOf(r[0]);if(t==-1)return false;e:for(;t<=e.length-r.length;++t){for(var a=0;a>1&1431655765;e=(e&858993459)+(e>>2&858993459);return(e+(e>>4)&252645135)*16843009>>>24}function Og(e,r){var t=(e[r+15]&127)<<7|e[r+14]>>1;var a=e[r+14]&1;for(var n=r+13;n>=r;--n)a=a*256+e[n];return(e[r+15]&128?-a:a)*Math.pow(10,t-6176)}function Rg(e,r,t){var a=Math.floor(t==0?0:Math.LOG10E*Math.log(Math.abs(t)))+6176-16;var n=t/Math.pow(10,a-6176);e[r+15]|=a>>7;e[r+14]|=(a&127)<<1;for(var i=0;n>=1;++i,n/=256)e[r+i]=n&255;e[r+15]|=t>=0?0:128}function Ng(e,r){var t=r?r[0]:0;var a=e[t]&127;e:if(e[t++]>=128){a|=(e[t]&127)<<7;if(e[t++]<128)break e;a|=(e[t]&127)<<14;if(e[t++]<128)break e;a|=(e[t]&127)<<21;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,28);++t;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,35);++t;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,42);++t;if(e[t++]<128)break e}if(r)r[0]=t;return a}function Ig(e){var r=new Uint8Array(7);r[0]=e&127;var t=1;e:if(e>127){r[t-1]|=128;r[t]=e>>7&127;++t;if(e<=16383)break e;r[t-1]|=128;r[t]=e>>14&127;++t;if(e<=2097151)break e;r[t-1]|=128;r[t]=e>>21&127;++t;if(e<=268435455)break e;r[t-1]|=128;r[t]=e/256>>>21&127;++t;if(e<=34359738367)break e;r[t-1]|=128;r[t]=e/65536>>>21&127;++t;if(e<=4398046511103)break e;r[t-1]|=128;r[t]=e/16777216>>>21&127;++t}return r[Eg](0,t)}function Fg(e){var r=[0];var t=[];while(r[0]=128){t|=(e[r]&127)<<7;if(e[r++]<128)break e;t|=(e[r]&127)<<14;if(e[r++]<128)break e;t|=(e[r]&127)<<21;if(e[r++]<128)break e;t|=(e[r]&127)<<28}return t}function Lg(e){var r=[],t=[0];while(t[0]=128);f=e[Eg](l,t[0])}break;case 5:s=4;f=e[Eg](t[0],t[0]+s);t[0]+=s;break;case 1:s=8;f=e[Eg](t[0],t[0]+s);t[0]+=s;break;case 2:s=Ng(e,t);f=e[Eg](t[0],t[0]+s);t[0]+=s;break;case 3:;case 4:;default:throw new Error("PB Type ".concat(i," for Field ").concat(n," at offset ").concat(a));}var o={data:f,type:i};if(r[n]==null)r[n]=[o];else r[n].push(o)}return r}function Mg(e){var r=[];e.forEach(function(e,t){if(t==0)return;e.forEach(function(e){if(!e.data)return;r.push(Ig(t*8+e.type));if(e.type==2)r.push(Ig(e.data.length));r.push(e.data)})});return xg(r)}function Ug(e,r){return(e==null?void 0:e.map(function(e){return r(e.data)}))||[]}function Bg(e){var r;var t=[],a=[0];while(a[0]>>0>0;t.push(s)}return t}function Wg(e){var r=[];e.forEach(function(e){var t=[[],[{data:Ig(e.id),type:0}],[]];if(e.merge!=null)t[3]=[{data:Ig(+!!e.merge),type:0}];var a=[];e.messages.forEach(function(e){a.push(e.data);e.meta[3]=[{type:0,data:Ig(e.data.length)}];t[2].push({data:Mg(e.meta),type:2})});var n=Mg(t);r.push(Ig(n.length));r.push(n);a.forEach(function(e){return r.push(e)})});return xg(r)}function Hg(e,r){if(e!=0)throw new Error("Unexpected Snappy chunk type ".concat(e));var t=[0];var a=Ng(r,t);var n=[];while(t[0]>2;if(s<60)++s;else{var f=s-59;s=r[t[0]];if(f>1)s|=r[t[0]+1]<<8;if(f>2)s|=r[t[0]+2]<<16;if(f>3)s|=r[t[0]+3]<<24;s>>>=0;s++;t[0]+=f}n.push(r[Eg](t[0],t[0]+s));t[0]+=s;continue}else{var l=0,o=0;if(i==1){o=(r[t[0]]>>2&7)+4;l=(r[t[0]++]&224)<<3;l|=r[t[0]++]}else{o=(r[t[0]++]>>2)+1;if(i==2){l=r[t[0]]|r[t[0]+1]<<8;t[0]+=2}else{l=(r[t[0]]|r[t[0]+1]<<8|r[t[0]+2]<<16|r[t[0]+3]<<24)>>>0;t[0]+=4}}if(l==0)throw new Error("Invalid offset 0");var c=n.length-1,u=l;while(c>=0&&u>=n[c].length){u-=n[c].length;--c}if(c<0){if(u==0)u=n[c=0].length;else throw new Error("Invalid offset beyond length")}if(o0){n.push(n[c][Eg](n[c].length-u));o-=u}++c;while(o>=n[c].length){n.push(n[c]);o-=n[c].length;++c}if(o)n.push(n[c][Eg](0,o))}if(n.length>100)n=[xg(n)]}}if(n.reduce(function(e,r){return e+r.length},0)!=a)throw new Error("Unexpected length: ".concat(n.reduce(function(e,r){return e+r.length},0)," != ").concat(a));return n}function zg(e){if(Array.isArray(e))e=new Uint8Array(e);var r=[];var t=0;while(t>8&255]))}else if(a<=16777216){s+=4;r.push(new Uint8Array([248,a-1&255,a-1>>8&255,a-1>>16&255]))}else if(a<=4294967296){s+=5;r.push(new Uint8Array([252,a-1&255,a-1>>8&255,a-1>>16&255,a-1>>>24&255]))}r.push(e[Eg](t,t+a));s+=a;n[0]=0;n[1]=s&255;n[2]=s>>8&255;n[3]=s>>16&255;t+=a}return xg(r)}var Gg=function(){return{sst:[],rsst:[],ofmt:[],nfmt:[]}};function $g(e,r,t,a,n){var i,s,f,l;var o=r&255,c=r>>8;var u=c>=5?n:a;e:if(t&(c>4?8:4)&&e.t=="n"&&o==7){var h=((i=u[7])==null?void 0:i[0])?Ng(u[7][0].data):-1;if(h==-1)break e;var d=((s=u[15])==null?void 0:s[0])?Ng(u[15][0].data):-1;var v=((f=u[16])==null?void 0:f[0])?Ng(u[16][0].data):-1;var p=((l=u[40])==null?void 0:l[0])?Ng(u[40][0].data):-1;var m=e.v,b=m;r:if(p){if(m==0){d=v=2;break r}if(m>=604800)d=1;else if(m>=86400)d=2;else if(m>=3600)d=4;else if(m>=60)d=8;else if(m>=1)d=16;else d=32;if(Math.floor(m)!=m)v=32;else if(m%60)v=16;else if(m%3600)v=8;else if(m%86400)v=4;else if(m%604800)v=2;if(v=2){b=m/86400;if(v>2){b|=0;m-=86400*b}w.push('d"d"');g.push(b+(h==2?" day"+(b==1?"":"s"):h==1?"d":""))}if(d<=4&&v>=4){b=m/3600;if(v>4){b|=0;m-=3600*b}w.push((d>=4?"[h]":"h")+'"h"');g.push(b+(h==2?" hour"+(b==1?"":"s"):h==1?"h":""))}if(d<=8&&v>=8){b=m/60;if(v>8){b|=0;m-=60*b}w.push((d>=8?"[m]":"m")+'"m"');if(h==0)g.push((d==8&&v==8||b>=10?"":"0")+b);else g.push(b+(h==2?" minute"+(b==1?"":"s"):h==1?"m":""))}if(d<=16&&v>=16){b=m;if(v>16){b|=0;m-=b}w.push((d>=16?"[s]":"s")+'"s"');if(h==0)g.push((v==16&&d==16||b>=10?"":"0")+b);else g.push(b+(h==2?" second"+(b==1?"":"s"):h==1?"s":""))}if(v>=32){b=Math.round(1e3*m);if(d<32)w.push('.000"ms"');if(h==0)g.push((b>=100?"":b>=10?"0":"00")+b);else g.push(b+(h==2?" millisecond"+(b==1?"":"s"):h==1?"ms":""))}e.w=g.join(h==0?":":" ");e.z=w.join(h==0?'":"':" ");if(h==0)e.w=e.w.replace(/:(\d\d\d)$/,".$1")}}function jg(e,r,t){var a=yg(e);var n=a.getUint32(4,true);var i=-1,s=-1,f=-1,l=NaN,o=new Date(2001,0,1);var c=t>1?12:8;if(n&2){f=a.getUint32(c,true);c+=4}c+=Cg(n&(t>1?3468:396))*4;if(n&512){i=a.getUint32(c,true);c+=4}c+=Cg(n&(t>1?12288:4096))*4;if(n&16){s=a.getUint32(c,true);c+=4}if(n&32){l=a.getFloat64(c,true);c+=8}if(n&64){o.setTime(o.getTime()+a.getFloat64(c,true)*1e3);c+=8}if(t>1){n=a.getUint32(8,true)>>>16;if(n&255){if(f==-1)f=a.getUint32(c,true);c+=4}}var u;var h=e[t>=4?1:2];switch(h){case 0:return void 0;case 2:u={t:"n",v:l};break;case 3:u={t:"s",v:r.sst[s]};break;case 5:u={t:"d",v:o};break;case 6:u={t:"b",v:l>0};break;case 7:u={t:"n",v:l};break;case 8:u={t:"e",v:0};break;case 9:{if(i>-1)u={t:"s",v:r.rsst[i]};else throw new Error("Unsupported cell type ".concat(e[Eg](0,4)))}break;default:throw new Error("Unsupported cell type ".concat(e[Eg](0,4)));}if(f>-1)$g(u,h|t<<8,n,r.ofmt[f],r.nfmt[f]);if(h==7)u.v/=86400;return u}function Xg(e,r){var t=yg(e);var a=t.getUint32(4,true);var n=t.getUint32(8,true);var i=12;var s=-1,f=-1,l=-1,o=NaN,c=NaN,u=new Date(2001,0,1);if(n&1){o=Og(e,i);i+=16}if(n&2){c=t.getFloat64(i,true);i+=8}if(n&4){u.setTime(u.getTime()+t.getFloat64(i,true)*1e3);i+=8}if(n&8){f=t.getUint32(i,true);i+=4}if(n&16){s=t.getUint32(i,true);i+=4}var h;var d=e[1];switch(d){case 0:return void 0;case 2:h={t:"n",v:o};break;case 3:h={t:"s",v:r.sst[f]};break;case 5:h={t:"d",v:u};break;case 6:h={t:"b",v:c>0};break;case 7:h={t:"n",v:c};break;case 8:h={t:"e",v:0};break;case 9:h={t:"s",v:r.rsst[s]};break;case 10:h={t:"n",v:o};break;default:throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(n&31," : ").concat(e[Eg](0,4)));}i+=Cg(n&8160)*4;if(n&516096){if(l==-1)l=t.getUint32(i,true);i+=4}if(l>-1)$g(h,d|5<<8,n>>13,r.ofmt[l],r.nfmt[l]);if(d==7)h.v/=86400;return h}function Yg(e,r){var t=new Uint8Array(32),a=yg(t),n=12,i=0;t[0]=5;switch(e.t){case"n":t[1]=2;Rg(t,n,e.v);i|=1;n+=16;break;case"b":t[1]=6;a.setFloat64(n,e.v?1:0,true);i|=2;n+=8;break;case"s":if(r.indexOf(e.v)==-1)throw new Error("Value ".concat(e.v," missing from SST!"));t[1]=3;a.setUint32(n,r.indexOf(e.v),true);i|=8;n+=4;break;default:throw"unsupported cell type "+e.t;}a.setUint32(8,i,true);return t[Eg](0,n)}function Kg(e,r){var t=new Uint8Array(32),a=yg(t),n=12,i=0;t[0]=4;switch(e.t){case"n":t[2]=2;a.setFloat64(n,e.v,true);i|=32;n+=8;break;case"b":t[2]=6;a.setFloat64(n,e.v?1:0,true);i|=32;n+=8;break;case"s":if(r.indexOf(e.v)==-1)throw new Error("Value ".concat(e.v," missing from SST!"));t[2]=3;a.setUint32(n,r.indexOf(e.v),true);i|=16;n+=4;break;default:throw"unsupported cell type "+e.t;}a.setUint32(8,i,true);return t[Eg](0,n)}function Zg(e,r){switch(e[0]){case 0:;case 1:;case 2:;case 3:;case 4:return jg(e,r,e[0]);case 5:return Xg(e,r);default:throw new Error("Unsupported payload version ".concat(e[0]));}}function Jg(e){var r=Lg(e);return Ng(r[1][0].data)}function qg(e){return Mg([[],[{type:0,data:Ig(e)}]])}function Qg(e,r){var t=Lg(r.data);var a=Pg(t[1][0].data);var n=t[3];var i=[];(n||[]).forEach(function(r){var t=Lg(r.data);var n=Pg(t[1][0].data)>>>0;switch(a){case 1:i[n]=Sg(t[3][0].data);break;case 8:{var s=e[Jg(t[9][0].data)][0];var f=Lg(s.data);var l=e[Jg(f[1][0].data)][0];var o=Pg(l.meta[1][0].data);if(o!=2001)throw new Error("2000 unexpected reference to ".concat(o));var c=Lg(l.data);i[n]=c[3].map(function(e){return Sg(e.data)}).join("")}break;case 2:i[n]=Lg(t[6][0].data);break;default:throw a;}});return i}function ew(e,r){var t,a,n,i,s,f,l,o,c,u,h,d,v,p;var m=Lg(e);var b=Pg(m[1][0].data)>>>0;var g=Pg(m[2][0].data)>>>0;var w=((a=(t=m[8])==null?void 0:t[0])==null?void 0:a.data)&&Pg(m[8][0].data)>0||false;var k,T;if(((i=(n=m[7])==null?void 0:n[0])==null?void 0:i.data)&&r!=0){k=(f=(s=m[7])==null?void 0:s[0])==null?void 0:f.data;T=(o=(l=m[6])==null?void 0:l[0])==null?void 0:o.data}else if(((u=(c=m[4])==null?void 0:c[0])==null?void 0:u.data)&&r!=1){k=(d=(h=m[4])==null?void 0:h[0])==null?void 0:d.data;T=(p=(v=m[3])==null?void 0:v[0])==null?void 0:p.data}else throw"NUMBERS Tile missing ".concat(r," cell storage");var E=w?4:1;var y=yg(k);var S=[];for(var _=0;_=1)x[S[S.length-1][0]]=T[Eg](S[S.length-1][1]*E);return{R:b,cells:x}}function rw(e,r){var t;var a=Lg(r.data);var n=-1;if((t=a==null?void 0:a[7])==null?void 0:t[0]){if(Pg(a[7][0].data)>>>0)n=1;else n=0}var i=Ug(a[5],function(e){return ew(e,n)});return{nrows:Pg(a[4][0].data)>>>0,data:i.reduce(function(e,r){if(!e[r.R])e[r.R]=[];r.cells.forEach(function(t,a){if(e[r.R][a])throw new Error("Duplicate cell r=".concat(r.R," c=").concat(a));e[r.R][a]=t});return e},[])}}function tw(e,r,t){var a,n,i,s,f,l;var o=Lg(r.data);var c={s:{r:0,c:0},e:{r:0,c:0}};c.e.r=(Pg(o[6][0].data)>>>0)-1;if(c.e.r<0)throw new Error("Invalid row varint ".concat(o[6][0].data));c.e.c=(Pg(o[7][0].data)>>>0)-1;if(c.e.c<0)throw new Error("Invalid col varint ".concat(o[7][0].data));t["!ref"]=Ba(c);var u=Array.isArray(t);var h=Lg(o[4][0].data);var d=Gg();if((a=h[4])==null?void 0:a[0])d.sst=Qg(e,e[Jg(h[4][0].data)][0]);if((n=h[11])==null?void 0:n[0])d.ofmt=Qg(e,e[Jg(h[11][0].data)][0]);if((i=h[17])==null?void 0:i[0])d.rsst=Qg(e,e[Jg(h[17][0].data)][0]);if((s=h[22])==null?void 0:s[0])d.nfmt=Qg(e,e[Jg(h[22][0].data)][0]);var v=Lg(h[3][0].data);var p=0;v[1].forEach(function(r){var a=Lg(r.data);var n=e[Jg(a[2][0].data)][0];var i=Pg(n.meta[1][0].data);if(i!=6002)throw new Error("6001 unexpected reference to ".concat(i));var s=rw(e,n);s.data.forEach(function(e,r){e.forEach(function(e,a){var n=Zg(e,d);if(n){if(u){if(!t[p+r])t[p+r]=[];t[p+r][a]=n}else{var i=Ma({r:p+r,c:a});t[i]=n}}})});p+=s.nrows});if((f=h[13])==null?void 0:f[0]){var m=e[Jg(h[13][0].data)][0];var b=Pg(m.meta[1][0].data);if(b!=6144)throw new Error("Expected merge type 6144, found ".concat(b));t["!merges"]=(l=Lg(m.data))==null?void 0:l[1].map(function(e){var r=Lg(e.data);var t=yg(Lg(r[1][0].data)[1][0].data),a=yg(Lg(r[2][0].data)[1][0].data);return{s:{r:t.getUint16(0,true),c:t.getUint16(2,true)},e:{r:t.getUint16(0,true)+a.getUint16(0,true)-1,c:t.getUint16(2,true)+a.getUint16(2,true)-1}}})}}function aw(e,r,t){var a=Lg(r.data);var n;if(!(t==null?void 0:t.dense))n={"!ref":"A1"};else n=[];n["!ref"]="A1";var i=e[Jg(a[2][0].data)];var s=Pg(i[0].meta[1][0].data);if(s!=6001)throw new Error("6000 unexpected reference to ".concat(s));tw(e,i[0],n);return n}function nw(e,r,t){var a;var n=Lg(r.data);var i={name:((a=n[1])==null?void 0:a[0])?Sg(n[1][0].data):"",sheets:[]};var s=Ug(n[2],Jg);s.forEach(function(r){e[r].forEach(function(r){var a=Pg(r.meta[1][0].data);if(a==6e3)i.sheets.push(aw(e,r,t))})});return i}function iw(e,r,t){var a;var n=ck();var i=Lg(r.data);if((a=i[2])==null?void 0:a[0])throw new Error("Keynote presentations are not supported");var s=Ug(i[1],Jg);s.forEach(function(r){e[r].forEach(function(r){var a=Pg(r.meta[1][0].data);if(a==2){var i=nw(e,r,t);i.sheets.forEach(function(e,r){uk(n,e,r==0?i.name:i.name+"_"+r,true)})}})});if(n.SheetNames.length==0)throw new Error("Empty NUMBERS file");n.bookType="numbers";return n}function sw(e,r){var t,a,n,i,s,f,l,o;var c={},u=[];e.FullPaths.forEach(function(e){if(e.match(/\.iwpv2/))throw new Error("Unsupported password protection")});e.FileIndex.forEach(function(e){if(!e.name.match(/\.iwa$/))return;if(e.content[0]==98)return;var r;try{r=zg(e.content)}catch(t){return console.log("?? "+e.content.length+" "+(t.message||t))}var a;try{a=Bg(r)}catch(t){return console.log("## "+(t.message||t))}a.forEach(function(e){c[e.id]=e.messages;u.push(e.id)})});if(!u.length)throw new Error("File has no messages");if(((i=(n=(a=(t=c==null?void 0:c[1])==null?void 0:t[0])==null?void 0:a.meta)==null?void 0:n[1])==null?void 0:i[0].data)&&Pg(c[1][0].meta[1][0].data)==1e4)throw new Error("Pages documents are not supported");var h=((o=(l=(f=(s=c==null?void 0:c[1])==null?void 0:s[0])==null?void 0:f.meta)==null?void 0:l[1])==null?void 0:o[0].data)&&Pg(c[1][0].meta[1][0].data)==1&&c[1][0];if(!h)u.forEach(function(e){c[e].forEach(function(e){var r=Pg(e.meta[1][0].data)>>>0;if(r==1){if(!h)h=e;else throw new Error("Document has multiple roots")}})});if(!h)throw new Error("Cannot find Document root");return iw(c,h,r)}function fw(e,r,t,a){var n,i;if(!((n=e[6])==null?void 0:n[0])||!((i=e[7])==null?void 0:i[0]))throw"Mutation only works on post-BNC storages!";var s=0;if(e[7][0].data.length<2*r.length){var f=new Uint8Array(2*r.length);f.set(e[7][0].data);e[7][0].data=f}if(e[4][0].data.length<2*r.length){var l=new Uint8Array(2*r.length);l.set(e[4][0].data);e[4][0].data=l}var o=yg(e[7][0].data),c=0,u=[];var h=yg(e[4][0].data),d=0,v=[];var p=a?4:1;for(var m=0;m1}).map(function(e){return[e,Ig(e)]});e.FileIndex.forEach(function(e){if(!e.name.match(/\.iwa/))return;if(e.name.match(/OperationStorage/))return;Bg(zg(e.content)).forEach(function(e){a.forEach(function(t){if(e.messages.some(function(e){return Pg(e.meta[1][0].data)!=11006&&Ag(e.data,t[1])})){r[t[0]].deps.push(e.id)}})})});return r}function uw(e,r){if(!r||!r.numbers)throw new Error("Must pass a `numbers` option -- check the README");var t=er.read(r.numbers,{type:"base64"});var a=cw(t);var n=er.find(t,a[1].location);if(!n)throw"Could not find ".concat(a[1].location," in Numbers template");var i=Bg(zg(n.content));var s=i.find(function(e){return e.id==1});if(s==null)throw"Could not find message ".concat(1," in Numbers template");var f=Ug(Lg(s.messages[0].data)[1],Jg);e.SheetNames.forEach(function(r,n){return vw(t,a,e.Sheets[r],r,n,f[n])});return t}function hw(e,r,t,a){var n=er.find(e,r[t].location);if(!n)throw"Could not find ".concat(r[t].location," in Numbers template");var i=Bg(zg(n.content));var s=i.find(function(e){return e.id==t});a(s,i);n.content=Vg(Wg(i));n.size=n.content.length}function dw(e,r,t){var a=er.find(e,r[t].location);if(!a)throw"Could not find ".concat(r[t].location," in Numbers template");var n=Bg(zg(a.content));var i=n.find(function(e){return e.id==t});return i}function vw(e,r,t,a,n,i){if(n>=1)return console.error("The Numbers writer currently writes only the first table");var s=[];hw(e,r,i,function(e){var r=Lg(e.messages[0].data);{r[1]=[{type:2,data:_g(a)}];s=Ug(r[2],Jg)}e.messages[0].data=Mg(r)});var f=dw(e,r,s[0]);var l=Jg(Lg(f.messages[0].data)[2][0].data);hw(e,r,l,function(a,n){return mw(e,r,t,a,n,l)})}var pw=true;function mw(e,r,t,a,n,i){var s,f;var l=Ua(t["!ref"]);l.s.r=l.s.c=0;var o=false;if(l.e.c>999){o=true;l.e.c=999}if(l.e.r>999999){o=true;l.e.r=999999}if(o)console.error("Truncating to ".concat(Ba(l)));var c=ek(t,{range:l,header:1});var u=["~Sh33tJ5~"],h=new Set(u);c.forEach(function(e){return e.forEach(function(e){if(typeof e=="string"&&!h.has(e)){u.push(e);h.add(e)}})});var d=r[i].location;d=d.replace(/^Root Entry\//,"");d=d.replace(/^Index\//,"").replace(/\.iwa$/,"");var v=Lg(a.messages[0].data);{v[6][0].data=Ig(l.e.r+1);v[7][0].data=Ig(l.e.c+1);delete v[46];var p=Lg(v[4][0].data);{var m=Jg(Lg(p[1][0].data)[2][0].data);hw(e,r,m,function(e,r){var t;var a=Lg(e.messages[0].data);if((t=a==null?void 0:a[2])==null?void 0:t[0])for(var n=0;n0)y=Ng(Lg(t[0].data)[12][0].data);r[3]=r[3].filter(function(e){return Ng(Lg(e.data)[1][0].data)!=E});var a=r[3].findIndex(function(e){var r,t;var a=Lg(e.data);if((r=a[3])==null?void 0:r[0])return Sg(a[3][0].data)==d;if(((t=a[2])==null?void 0:t[0])&&Sg(a[2][0].data)==d)return true;return false});var n=Lg(r[3][a].data);if(!n[6])n[6]=[];n[6]=n[6].filter(function(e){return Ng(Lg(e.data)[1][0].data)!=E});r[3][a].data=Mg(n);e.messages[0].data=Mg(r)})}k[1]=[];var S=Math.ceil((l.e.r+1)/T);for(var _=0;_-1)return"sheet";if(ii.CS&&e==ii.CS)return"chart";if(ii.DS&&e==ii.DS)return"dialog";if(ii.MS&&e==ii.MS)return"macro";return e&&e.length?e:"sheet"}function Tw(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,kw(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function Ew(e,r,t,a,n,i,s,f,l,o,c,u){try{i[a]=fi(Mr(e,t,true),r);var h=Lr(e,r);var d;switch(f){case"sheet":d=Bm(h,r,n,l,i[a],o,c,u);break;case"chart":d=Wm(h,r,n,l,i[a],o,c,u);if(!d||!d["!drawel"])break;var v=Vr(d["!drawel"].Target,r);var p=si(v);var m=hu(Mr(e,v,true),fi(Mr(e,p,true),v));var b=Vr(m,v);var g=si(b);d=am(Mr(e,b,true),b,l,fi(Mr(e,g,true),b),o,d);break;case"macro":d=Hm(h,r,n,l,i[a],o,c,u);break;case"dialog":d=zm(h,r,n,l,i[a],o,c,u);break;default:throw new Error("Unrecognized sheet type "+f);}s[a]=d;var w=[],k=[];if(i&&i[a])sr(i[a]).forEach(function(t){var n="";if(i[a][t].Type==ii.CMNT){n=Vr(i[a][t].Target,r);w=$m(Lr(e,n,true),n,l);if(!w||!w.length)return;pu(d,w,false)}if(i[a][t].Type==ii.TCMNT){n=Vr(i[a][t].Target,r); -k=k.concat(gu(Lr(e,n,true),l))}});if(k&&k.length)pu(d,k,true,l.people||[])}catch(T){if(l.WTF)throw T}}function yw(e){return e.charAt(0)=="/"?e.slice(1):e}function Sw(e,r){$e();r=r||{};gw(r);if(Dr(e,"META-INF/manifest.xml"))return pg(e,r);if(Dr(e,"objectdata.xml"))return pg(e,r);if(Dr(e,"Index/Document.iwa")){if(typeof Uint8Array=="undefined")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof sw!="undefined"){if(e.FileIndex)return sw(e,r);var t=er.utils.cfb_new();Br(e).forEach(function(r){Wr(t,r,Ur(e,r))});return sw(t,r)}throw new Error("Unsupported NUMBERS file")}if(!Dr(e,"[Content_Types].xml")){if(Dr(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(Dr(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");var a=er.find(e,"Index.zip");if(a){r=yr(r);delete r.type;if(typeof a.content=="string")r.type="binary";if(typeof Bun!=="undefined"&&Buffer.isBuffer(a.content))return Lw(new Uint8Array(a.content),r);return Lw(a.content,r)}throw new Error("Unsupported ZIP file")}var n=Br(e);var i=ai(Mr(e,"[Content_Types].xml"));var s=false;var f,l;if(i.workbooks.length===0){l="xl/workbook.xml";if(Lr(e,l,true))i.workbooks.push(l)}if(i.workbooks.length===0){l="xl/workbook.bin";if(!Lr(e,l,true))throw new Error("Could not find workbook");i.workbooks.push(l);s=true}if(i.workbooks[0].slice(-3)=="bin")s=true;var o={};var c={};if(!r.bookSheets&&!r.bookProps){Zd=[];if(i.sst)try{Zd=Gm(Lr(e,yw(i.sst)),i.sst,r)}catch(u){if(r.WTF)throw u}if(r.cellStyles&&i.themes.length)o=Wc(Mr(e,i.themes[0].replace(/^\//,""),true)||"",r);if(i.style)c=Vm(Lr(e,yw(i.style)),i.style,o,r)}i.links.map(function(t){try{var a=fi(Mr(e,si(yw(t))),t);return Xm(Lr(e,yw(t)),a,t,r)}catch(n){}});var h=Um(Lr(e,yw(i.workbooks[0])),i.workbooks[0],r);var d={},v="";if(i.coreprops.length){v=Lr(e,yw(i.coreprops[0]),true);if(v)d=wi(v);if(i.extprops.length!==0){v=Lr(e,yw(i.extprops[0]),true);if(v)_i(v,d,r)}}var p={};if(!r.bookSheets||r.bookProps){if(i.custprops.length!==0){v=Mr(e,yw(i.custprops[0]),true);if(v)p=Ci(v,r)}}var m={};if(r.bookSheets||r.bookProps){if(h.Sheets)f=h.Sheets.map(function I(e){return e.name});else if(d.Worksheets&&d.SheetNames.length>0)f=d.SheetNames;if(r.bookProps){m.Props=d;m.Custprops=p}if(r.bookSheets&&typeof f!=="undefined")m.SheetNames=f;if(r.bookSheets?m.SheetNames:r.bookProps)return m}f={};var b={};if(r.bookDeps&&i.calcchain)b=jm(Lr(e,yw(i.calcchain)),i.calcchain,r);var g=0;var w={};var k,T;{var E=h.Sheets;d.Worksheets=E.length;d.SheetNames=[];for(var y=0;y!=E.length;++y){d.SheetNames[y]=E[y].name}}var S=s?"bin":"xml";var _=i.workbooks[0].lastIndexOf("/");var A=(i.workbooks[0].slice(0,_+1)+"_rels/"+i.workbooks[0].slice(_+1)+".rels").replace(/^\//,"");if(!Dr(e,A))A="xl/_rels/workbook."+S+".rels";var x=fi(Mr(e,A,true),A.replace(/_rels.*/,"s5s"));if((i.metadata||[]).length>=1){r.xlmeta=Ym(Lr(e,yw(i.metadata[0])),i.metadata[0],r)}if((i.people||[]).length>=1){r.people=ku(Lr(e,yw(i.people[0])),r)}if(x)x=Tw(x,h.Sheets);var C=Lr(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(g=0;g!=d.Worksheets;++g){var O="sheet";if(x&&x[g]){k="xl/"+x[g][1].replace(/[\/]?xl\//,"");if(!Dr(e,k))k=x[g][1];if(!Dr(e,k))k=A.replace(/_rels\/.*$/,"")+x[g][1];O=x[g][2]}else{k="xl/worksheets/sheet"+(g+1-C)+"."+S;k=k.replace(/sheet0\./,"sheet.")}T=k.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");if(r&&r.sheets!=null)switch(typeof r.sheets){case"number":if(g!=r.sheets)continue e;break;case"string":if(d.SheetNames[g].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var R=false;for(var N=0;N!=r.sheets.length;++N){if(typeof r.sheets[N]=="number"&&r.sheets[N]==g)R=1;if(typeof r.sheets[N]=="string"&&r.sheets[N].toLowerCase()==d.SheetNames[g].toLowerCase())R=1}if(!R)continue e};}Ew(e,k,T,d.SheetNames[g],g,w,f,O,r,h,o,c)}m={Directory:i,Workbook:h,Props:d,Custprops:p,Deps:b,Sheets:f,SheetNames:d.SheetNames,Strings:Zd,Styles:c,Themes:o,SSF:yr(Z)};if(r&&r.bookFiles){if(e.files){m.keys=n;m.files=e.files}else{m.keys=[];m.files={};e.FullPaths.forEach(function(r,t){r=r.replace(/^Root Entry[\/]/,"");m.keys.push(r);m.files[r]=e.FileIndex[t]})}}if(r&&r.bookVBA){if(i.vba.length>0)m.vbaraw=Lr(e,yw(i.vba[0]),true);else if(i.defaults&&i.defaults.bin===Cu)m.vbaraw=Lr(e,"xl/vbaProject.bin",true)}m.bookType=s?"xlsb":"xlsx";return m}function _w(e,r){var t=r||{};var a="Workbook",n=er.find(e,a);try{a="/!DataSpaces/Version";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);ro(n.content);a="/!DataSpaces/DataSpaceMap";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=ao(n.content);if(i.length!==1||i[0].comps.length!==1||i[0].comps[0].t!==0||i[0].name!=="StrongEncryptionDataSpace"||i[0].comps[0].v!=="EncryptedPackage")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=no(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);so(n.content)}catch(f){}a="/EncryptionInfo";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var l=oo(n.content);a="/EncryptedPackage";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);if(l[0]==4&&typeof decrypt_agile!=="undefined")return decrypt_agile(l[1],n.content,t.password||"",t);if(l[0]==2&&typeof decrypt_std76!=="undefined")return decrypt_std76(l[1],n.content,t.password||"",t);throw new Error("File is password-protected")}function Aw(e,r){if(e&&!e.SSF){e.SSF=yr(Z)}if(e&&e.SSF){$e();Ge(e.SSF);r.revssf=or(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(qd)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="bin";var a=true;var n=ti();ww(r=r||{});var i=Hr();var s="",f=0;r.cellXfs=[];tv(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Wr(i,s,Ti(e.Props,r));n.coreprops.push(s);oi(r.rels,2,s,ii.CORE_PROPS);s="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var l=[];for(var o=0;o0){s="docProps/custom.xml";Wr(i,s,Oi(e.Custprops,r));n.custprops.push(s);oi(r.rels,4,s,ii.CUST_PROPS)}for(f=1;f<=e.SheetNames.length;++f){var c={"!id":{}};var u=e.Sheets[e.SheetNames[f-1]];var h=(u||{})["!type"]||"sheet";switch(h){case"chart":;default:s="xl/worksheets/sheet"+f+"."+t;Wr(i,s,rm(f-1,r,e,c));n.sheets.push(s);oi(r.wbrels,-1,"worksheets/sheet"+f+"."+t,ii.WS[0]);}if(u){var d=u["!comments"];var v=false;var p="";if(d&&d.length>0){p="xl/comments"+f+"."+t;Wr(i,p,xu(d,r));n.comments.push(p);oi(c,-1,"../comments"+f+"."+t,ii.CMNT);v=true}if(u["!legacy"]){if(v)Wr(i,"xl/drawings/vmlDrawing"+f+".vml",du(f,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(c["!id"].rId1)Wr(i,si(s),li(c))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Wr(i,s,ql(r.Strings,r));n.strs.push(s);oi(r.wbrels,-1,"sharedStrings."+t,ii.SST)}s="xl/workbook."+t;Wr(i,s,Mm(e,r));n.workbooks.push(s);oi(r.rels,1,s,ii.WB);s="xl/theme/theme1.xml";var m=Hc(e.Themes,r);Wr(i,s,m);n.themes.push(s);oi(r.wbrels,-1,"theme/theme1.xml",ii.THEME);s="xl/styles."+t;Wr(i,s,Rc(e,r));n.styles.push(s);oi(r.wbrels,-1,"styles."+t,ii.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Wr(i,s,e.vbaraw);n.vba.push(s);oi(r.wbrels,-1,"vbaProject.bin",ii.VBA)}s="xl/metadata."+t;Wr(i,s,nu());n.metadata.push(s);oi(r.wbrels,-1,"metadata."+t,ii.XLMETA);Wr(i,"[Content_Types].xml",ni(n,r));Wr(i,"_rels/.rels",li(r.rels));Wr(i,"xl/_rels/workbook."+t+".rels",li(r.wbrels));delete r.revssf;delete r.ssf;return i}function xw(e,r){if(e&&!e.SSF){e.SSF=yr(Z)}if(e&&e.SSF){$e();Ge(e.SSF);r.revssf=or(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(qd)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=Nu.indexOf(r.bookType)>-1;var n=ti();ww(r=r||{});var i=Hr();var s="",f=0;r.cellXfs=[];tv(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Wr(i,s,Ti(e.Props,r));n.coreprops.push(s);oi(r.rels,2,s,ii.CORE_PROPS);s="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var l=[];for(var o=0;o0){s="docProps/custom.xml";Wr(i,s,Oi(e.Custprops,r));n.custprops.push(s);oi(r.rels,4,s,ii.CUST_PROPS)}var c=["SheetJ5"];r.tcid=0;for(f=1;f<=e.SheetNames.length;++f){var u={"!id":{}};var h=e.Sheets[e.SheetNames[f-1]];var d=(h||{})["!type"]||"sheet";switch(d){case"chart":;default:s="xl/worksheets/sheet"+f+"."+t;Wr(i,s,Mv(f-1,r,e,u));n.sheets.push(s);oi(r.wbrels,-1,"worksheets/sheet"+f+"."+t,ii.WS[0]);}if(h){var v=h["!comments"];var p=false;var m="";if(v&&v.length>0){var b=false;v.forEach(function(e){e[1].forEach(function(e){if(e.T==true)b=true})});if(b){m="xl/threadedComments/threadedComment"+f+".xml";Wr(i,m,wu(v,c,r));n.threadedcomments.push(m);oi(u,-1,"../threadedComments/threadedComment"+f+".xml",ii.TCMNT)}m="xl/comments"+f+"."+t;Wr(i,m,bu(v,r));n.comments.push(m);oi(u,-1,"../comments"+f+"."+t,ii.CMNT);p=true}if(h["!legacy"]){if(p)Wr(i,"xl/drawings/vmlDrawing"+f+".vml",du(f,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(u["!id"].rId1)Wr(i,si(s),li(u))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Wr(i,s,Xl(r.Strings,r));n.strs.push(s);oi(r.wbrels,-1,"sharedStrings."+t,ii.SST)}s="xl/workbook."+t;Wr(i,s,Tm(e,r));n.workbooks.push(s);oi(r.rels,1,s,ii.WB);s="xl/theme/theme1.xml";Wr(i,s,Hc(e.Themes,r));n.themes.push(s);oi(r.wbrels,-1,"theme/theme1.xml",ii.THEME);s="xl/styles."+t;Wr(i,s,ac(e,r));n.styles.push(s);oi(r.wbrels,-1,"styles."+t,ii.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Wr(i,s,e.vbaraw);n.vba.push(s);oi(r.wbrels,-1,"vbaProject.bin",ii.VBA)}s="xl/metadata."+t;Wr(i,s,su());n.metadata.push(s);oi(r.wbrels,-1,"metadata."+t,ii.XLMETA);if(c.length>1){s="xl/persons/person.xml";Wr(i,s,Tu(c,r));n.people.push(s);oi(r.wbrels,-1,"persons/person.xml",ii.PEOPLE)}Wr(i,"[Content_Types].xml",ni(n,r));Wr(i,"_rels/.rels",li(r.rels));Wr(i,"xl/_rels/workbook."+t+".rels",li(r.wbrels));delete r.revssf;delete r.ssf;return i}function Cw(e,r){var t="";switch((r||{}).type||"base64"){case"buffer":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];case"base64":t=E(e.slice(0,12));break;case"binary":t=e;break;case"array":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];default:throw new Error("Unrecognized type "+(r&&r.type||"undefined"));}return[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3),t.charCodeAt(4),t.charCodeAt(5),t.charCodeAt(6),t.charCodeAt(7)]}function Ow(e,r){if(er.find(e,"EncryptedPackage"))return _w(e,r);return Nb(e,r)}function Rw(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=y&&Buffer.isBuffer(e)?"buffer":"base64";t=zr(a,n);return Sw(t,n)}function Nw(e,r){var t=0;e:while(t=2&&i[3]===0)return Dl.to_workbook(n,t);if(i[2]===0&&(i[3]===8||i[3]===9))return Dl.to_workbook(n,t)}break;case 3:;case 131:;case 139:;case 140:return Cl.to_workbook(n,t);case 123:if(i[1]===92&&i[2]===114&&i[3]===116)return _o(n,t);break;case 10:;case 13:;case 32:return Iw(n,t);case 137:if(i[1]===80&&i[2]===78&&i[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;case 8:if(i[1]===231)throw new Error("Unsupported Multiplan 1.x file!");break;case 12:if(i[1]===236)throw new Error("Unsupported Multiplan 2.x file!");if(i[1]===237)throw new Error("Unsupported Multiplan 3.x file!");break;}if(xl.indexOf(i[0])>-1&&i[2]<=12&&i[3]<=31)return Cl.to_workbook(n,t);return Pw(e,n,t,s)}function Mw(e,r){var t=r||{};t.type="file";return Lw(e,t)}function Uw(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return nr(r.file,er.write(e,{type:y?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return er.write(e,r)}function Bw(e,r){switch(r.bookType){case"ods":return Tg(e,r);case"numbers":return uw(e,r);case"xlsb":return Aw(e,r);default:return xw(e,r);}}function Ww(e,r){var t=yr(r||{});var a=Bw(e,t);return zw(a,t)}function Hw(e,r){var t=yr(r||{});var a=xw(e,t);return zw(a,t)}function zw(e,r){var t={};var a=y?"nodebuffer":typeof Uint8Array!=="undefined"?"array":"string";if(r.compression)t.compression="DEFLATE";if(r.password)t.type=a;else switch(r.type){case"base64":t.type="base64";break;case"binary":t.type="string";break;case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");case"buffer":;case"file":t.type=a;break;default:throw new Error("Unrecognized type "+r.type);}var n=e.FullPaths?er.write(e,{fileType:"zip",type:{nodebuffer:"buffer",string:"binary"}[t.type]||t.type,compression:!!r.compression}):e.generate(t);if(typeof Deno!=="undefined"){if(typeof n=="string"){if(r.type=="binary"||r.type=="base64")return n;n=new Uint8Array(O(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return Uw(encrypt_agile(n,r.password),r);if(r.type==="file")return nr(r.file,n);return r.type=="string"?mt(n):n}function Vw(e,r){var t=r||{};var a=Ib(e,t);return Uw(a,t)}function Gw(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return k(bt(a));case"binary":return bt(a);case"string":return e;case"file":return nr(r.file,a,"utf8");case"buffer":{if(y)return S(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return Gw(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function $w(e,r){switch(r.type){case"base64":return T(e);case"binary":return e;case"string":return e;case"file":return nr(r.file,e,"binary");case"buffer":{if(y)return S(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function jw(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var u=Ca(l.s.r);var h=[];var d=[];var v=0,p=0;var m=Array.isArray(e);var b=l.s.r,g=0;var w={};if(m&&!e[b])e[b]=[];var k=o.skipHidden&&e["!cols"]||[];var T=o.skipHidden&&e["!rows"]||[];for(g=l.s.c;g<=l.e.c;++g){if((k[g]||{}).hidden)continue;h[g]=Ia(g);t=m?e[b][g]:e[h[g]+u];switch(a){case 1:i[g]=g-l.s.c;break;case 2:i[g]=h[g];break;case 3:i[g]=o.header[g-l.s.c];break;default:if(t==null)t={w:"__EMPTY",t:"s"};f=s=Ga(t,null,o);p=w[s]||0;if(!p)w[s]=1;else{do{f=s+"_"+p++}while(w[f]);w[s]=p;w[f]=1}i[g]=f;}}for(b=l.s.r+n;b<=l.e.r;++b){if((T[b]||{}).hidden)continue;var E=Qw(e,l,b,h,a,i,m,o);if(E.isempty===false||(a===1?o.blankrows!==false:!!o.blankrows))d[v++]=E.row}d.length=v;return d}var rk=/"/g;function tk(e,r,t,a,n,i,s,f){var l=true;var o=[],c="",u=Ca(t);for(var h=r.s.c;h<=r.e.c;++h){if(!a[h])continue;var d=f.dense?(e[t]||[])[h]:e[a[h]+u];if(d==null)c="";else if(d.v!=null){l=false;c=""+(f.rawNumbers&&d.t=="n"?d.v:Ga(d,null,f));for(var v=0,p=0;v!==c.length;++v)if((p=c.charCodeAt(v))===n||p===i||p===34||f.forceQuotes){c='"'+c.replace(rk,'""')+'"';break}if(c=="ID")c='"ID"'}else if(d.f!=null&&!d.F){l=false;c="="+d.f;if(c.indexOf(",")>=0)c='"'+c.replace(rk,'""')+'"'}else c="";o.push(c)}if(f.blankrows===false&&l)return null;return o.join(s)}function ak(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=za(e["!ref"]);var i=a.FS!==undefined?a.FS:",",s=i.charCodeAt(0);var f=a.RS!==undefined?a.RS:"\n",l=f.charCodeAt(0);var o=new RegExp((i=="|"?"\\|":i)+"+$");var c="",u=[];a.dense=Array.isArray(e);var h=a.skipHidden&&e["!cols"]||[];var d=a.skipHidden&&e["!rows"]||[];for(var v=n.s.c;v<=n.e.c;++v)if(!(h[v]||{}).hidden)u[v]=Ia(v);var p=0;for(var m=n.s.r;m<=n.e.r;++m){if((d[m]||{}).hidden)continue;c=tk(e,n,m,u,s,l,i,a);if(c==null){continue}if(a.strip)c=c.replace(o,"");if(c||a.blankrows!==false)t.push((p++?f:"")+c)}delete a.dense;return t.join("")}function nk(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=ak(e,r);if(typeof a=="undefined"||r.type=="string")return t;var n=a.utils.encode(1200,t,"str");return String.fromCharCode(255)+String.fromCharCode(254)+n}function ik(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=za(e["!ref"]),i="",s=[],f;var l=[];var o=Array.isArray(e);for(f=n.s.c;f<=n.e.c;++f)s[f]=Ia(f);for(var c=n.s.r;c<=n.e.r;++c){i=Ca(c);for(f=n.s.c;f<=n.e.c;++f){r=s[f]+i;t=o?(e[c]||[])[f]:e[r];a="";if(t===undefined)continue;else if(t.F!=null){r=t.F;if(!t.f)continue;a=t.f;if(r.indexOf(":")==-1)r=r+":"+r}if(t.f!=null)a=t.f;else if(t.t=="z")continue;else if(t.t=="n"&&t.v!=null)a=""+t.v;else if(t.t=="b")a=t.v?"TRUE":"FALSE";else if(t.w!==undefined)a="'"+t.w;else if(t.v===undefined)continue;else if(t.t=="s")a="'"+t.v;else a=""+t.v;l[l.length]=r+"="+a}}return l}function sk(e,r,t){var a=t||{};var n=e?Array.isArray(e):a.dense;if(b!=null&&n==null)n=b;var i=+!a.skipHeader;var s=e||(n?[]:{});var f=0,l=0;if(s&&a.origin!=null){if(typeof a.origin=="number")f=a.origin;else{var o=typeof a.origin=="string"?La(a.origin):a.origin;f=o.r;l=o.c}}var c={s:{c:0,r:0},e:{c:l,r:f+r.length-1+i}};if(s["!ref"]){var u=za(s["!ref"]);c.e.c=Math.max(c.e.c,u.e.c);c.e.r=Math.max(c.e.r,u.e.r);if(f==-1){f=u.e.r+1;c.e.r=f+r.length-1+i}}else{if(f==-1){f=0;c.e.r=r.length-1+i}}var h=a.header||[],d=0;var v=[];r.forEach(function(e,r){if(n&&!s[f+r+i])s[f+r+i]=[];if(n)v=s[f+r+i];sr(e).forEach(function(t){if((d=h.indexOf(t))==-1)h[d=h.length]=t;var o=e[t];var c="z";var u="";var p=n?"":Ma({c:l+d,r:f+r+i});var m=n?v[l+d]:s[p];if(o&&typeof o==="object"&&!(o instanceof Date)){s[p]=o}else{if(typeof o=="number")c="n";else if(typeof o=="boolean")c="b";else if(typeof o=="string")c="s";else if(o instanceof Date){c="d";if(!a.cellDates){c="n";o=hr(o)}u=m!=null&&m.z&&Me(m.z)?m.z:a.dateNF||Z[14]}else if(o===null&&a.nullError){c="e";o=0}if(!m){if(!n)s[p]=m={t:c,v:o};else v[l+d]=m={t:c,v:o}}else{m.t=c;m.v=o;delete m.w;delete m.R;if(u)m.z=u}if(u)m.z=u}})});c.e.c=Math.max(c.e.c,l+h.length-1);var p=Ca(f);if(n&&!s[f])s[f]=[];if(i)for(d=0;d=0&&e.SheetNames.length>r)return r;throw new Error("Cannot find sheet # "+r)}else if(typeof r=="string"){var t=e.SheetNames.indexOf(r);if(t>-1)return t;throw new Error("Cannot find sheet name |"+r+"|")}else throw new Error("Cannot find sheet |"+r+"|")}function ck(){return{SheetNames:[],Sheets:{}}}function uk(e,r,t,a){var n=1;if(!t)for(;n<=65535;++n,t=undefined)if(e.SheetNames.indexOf(t="Sheet"+n)==-1)break;if(!t||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(t)>=0){var i=t.match(/(^.*?)(\d+)$/);n=i&&+i[2]||0;var s=i&&i[1]||t;for(++n;n<=65535;++n)if(e.SheetNames.indexOf(t=s+n)==-1)break}mm(t);if(e.SheetNames.indexOf(t)>=0)throw new Error("Worksheet with name |"+t+"| already exists!");e.SheetNames.push(t);e.Sheets[t]=r;return t}function hk(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=ok(e,r);if(!e.Workbook.Sheets[a])e.Workbook.Sheets[a]={};switch(t){case 0:;case 1:;case 2:break;default:throw new Error("Bad sheet visibility setting "+t);}e.Workbook.Sheets[a].Hidden=t}function dk(e,r){e.z=r;return e}function vk(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function pk(e,r,t){return vk(e,"#"+r,t)}function mk(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function bk(e,r,t,a){var n=typeof r!="string"?r:za(r);var i=typeof r=="string"?r:Ba(r);for(var s=n.s.r;s<=n.e.r;++s)for(var f=n.s.c;f<=n.e.c;++f){var l=lk(e,s,f);l.t="n";l.F=i;delete l.v;if(s==n.s.r&&f==n.s.c){l.f=t;if(a)l.D=true}}var o=Ua(e["!ref"]);if(o.s.r>n.s.r)o.s.r=n.s.r;if(o.s.c>n.s.c)o.s.c=n.s.c;if(o.e.rs.e.r){if(!l){l=true;t.push(""+i)}return t.push(null)}while(f<=s.e.r){t.push(rg(e,s,f,a));++f;break}};return t}function yk(e,r){var t=wk({objectMode:true});if(e==null||e["!ref"]==null){t.push(null);return t}var a={t:"n",v:0},n=0,i=1,s=[],f=0,l="";var o={s:{r:0,c:0},e:{r:0,c:0}};var c=r||{};var u=c.range!=null?c.range:e["!ref"];if(c.header===1)n=1;else if(c.header==="A")n=2;else if(Array.isArray(c.header))n=3;switch(typeof u){case"string":o=za(u);break;case"number":o=za(e["!ref"]);o.s.r=u;break;default:o=u;}if(n>0)i=0;var h=Ca(o.s.r);var d=[];var v=0;var p=Array.isArray(e);var m=o.s.r,b=0;var g={};if(p&&!e[m])e[m]=[];var w=c.skipHidden&&e["!cols"]||[];var k=c.skipHidden&&e["!rows"]||[];for(b=o.s.c;b<=o.e.c;++b){if((w[b]||{}).hidden)continue;d[b]=Ia(b);a=p?e[m][b]:e[d[b]+h];switch(n){case 1:s[b]=b-o.s.c;break;case 2:s[b]=d[b];break;case 3:s[b]=c.header[b-o.s.c];break;default:if(a==null)a={w:"__EMPTY",t:"s"};l=f=Ga(a,null,c);v=g[f]||0;if(!v)g[f]=1;else{do{l=f+"_"+v++}while(g[l]);g[f]=v;g[l]=1}s[b]=l;}}m=o.s.r+i;t._read=function(){while(m<=o.e.r){if((k[m-1]||{}).hidden)continue;var r=Qw(e,o,m,d,n,s,p,c);++m;if(r.isempty===false||(n===1?c.blankrows!==false:!!c.blankrows)){t.push(r.row);return}}return t.push(null)};return t}var Sk={to_json:yk,to_html:Ek,to_csv:Tk,set_readable:kk};if(typeof Nb!=="undefined")e.parse_xlscfb=Nb;e.parse_zip=Sw;e.read=Lw;e.readFile=Mw;e.readFileSync=Mw;e.write=Yw;e.writeFile=Zw;e.writeFileSync=Zw;e.writeFileAsync=qw;e.utils=gk;e.writeXLSX=Xw;e.writeFileXLSX=Jw;e.SSF=je;if(typeof Sk!=="undefined")e.stream=Sk;if(typeof er!=="undefined")e.CFB=er;if(typeof require!=="undefined"){var _k=undefined;if((_k||{}).Readable)kk(_k.Readable);try{rr=undefined}catch(Ak){}}}if(typeof exports!=="undefined")make_xlsx_lib(exports);else if(typeof module!=="undefined"&&module.exports)make_xlsx_lib(module.exports);else if(typeof define==="function"&&define.amd)define("xlsx",function(){if(!XLSX.version)make_xlsx_lib(XLSX);return XLSX});else make_xlsx_lib(XLSX);if(typeof window!=="undefined"&&!window.XLSX)try{window.XLSX=XLSX}catch(e){} +var XLSX={};function make_xlsx_lib(e){e.version="0.19.0";var r=1200,t=1252;var a;var n=[874,932,936,949,950,1250,1251,1252,1253,1254,1255,1256,1257,1258,1e4];var i={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 s=function(e){if(n.indexOf(e)==-1)return;t=i[0]=e};function f(){s(1252)}var l=function(e){r=e;s(e)};function o(){l(1200);f()}function c(e){var r=[];for(var t=0,a=e.length;t>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t)+(e.charCodeAt(2*t+1)<<8));return r.join("")}function h(e){var r=[];for(var t=0;t>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t+1)+(e.charCodeAt(2*t)<<8));return r.join("")}var d=function(e){var r=e.charCodeAt(0),t=e.charCodeAt(1);if(r==255&&t==254)return u(e.slice(2));if(r==254&&t==255)return h(e.slice(2));if(r==65279)return e.slice(1);return e};var v=function Rk(e){return String.fromCharCode(e)};var p=function Ik(e){return String.fromCharCode(e)};function m(e){a=e;l=function(e){r=e;s(e)};d=function(e){if(e.charCodeAt(0)===255&&e.charCodeAt(1)===254){return a.utils.decode(1200,c(e.slice(2)))}return e};v=function n(e){if(r===1200)return String.fromCharCode(e);return a.utils.decode(r,[e&255,e>>8])[0]};p=function i(e){return a.utils.decode(t,[e])[0]};na()}var b=null;var g=true;var w="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function k(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,l=0;for(var o=0;o>2;a=e.charCodeAt(o++);s=(t&3)<<4|a>>4;n=e.charCodeAt(o++);f=(a&15)<<2|n>>6;l=n&63;if(isNaN(a)){f=l=64}else if(isNaN(n)){l=64}r+=w.charAt(i)+w.charAt(s)+w.charAt(f)+w.charAt(l)}return r}function T(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,l=0;for(var o=0;o255)t=95;i=t>>2;a=e.charCodeAt(o++);if(a>255)a=95;s=(t&3)<<4|a>>4;n=e.charCodeAt(o++);if(n>255)n=95;f=(a&15)<<2|n>>6;l=n&63;if(isNaN(a)){f=l=64}else if(isNaN(n)){l=64}r+=w.charAt(i)+w.charAt(s)+w.charAt(f)+w.charAt(l)}return r}function E(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,l=0;e=e.replace(/^data:([^\/]+\/[^\/]+)?;base64\,/,"").replace(/[^\w\+\/\=]/g,"");for(var o=0;o>4;r+=String.fromCharCode(t);f=w.indexOf(e.charAt(o++));a=(s&15)<<4|f>>2;if(f!==64){r+=String.fromCharCode(a)}l=w.indexOf(e.charAt(o++));n=(f&3)<<6|l;if(l!==64){r+=String.fromCharCode(n)}}return r}var y=function(){return typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node}();var S=function(){if(typeof Buffer!=="undefined"){var e=!Buffer.from;if(!e)try{Buffer.from("foo","utf8")}catch(r){e=true}return e?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer)}return function(){}}();var _=function(){if(typeof Buffer==="undefined")return false;var e=S([65,0]);if(!e)return false;var r=e.toString("utf16le");return r.length==1}();function x(e){if(y)return Buffer.alloc?Buffer.alloc(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function A(e){if(y)return Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var C=function Nk(e){if(y)return S(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function O(e){if(typeof ArrayBuffer==="undefined")return C(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 R(e){if(Array.isArray(e))return e.map(function(e){return String.fromCharCode(e)}).join("");var r=[];for(var t=0;t>6&31;n[t++]=128|s&63}else if(s>=55296&&s<57344){s=(s&1023)+64;var f=e.charCodeAt(++i)&1023;n[t++]=240|s>>8&7;n[t++]=128|s>>2&63;n[t++]=128|f>>6&15|(s&3)<<4;n[t++]=128|f&63}else{n[t++]=224|s>>12&15;n[t++]=128|s>>6&63;n[t++]=128|s&63}if(t>a){r.push(n.slice(0,t));t=0;n=x(65535);a=65530}}r.push(n.slice(0,t));return F(r)}var P=/\u0000/g,L=/[\u0001-\u0006]/g;function M(e){var r="",t=e.length-1;while(t>=0)r+=e.charAt(t--);return r}function U(e,r){var t=""+e;return t.length>=r?t:Sr("0",r-t.length)+t}function B(e,r){var t=""+e;return t.length>=r?t:Sr(" ",r-t.length)+t}function W(e,r){var t=""+e;return t.length>=r?t:t+Sr(" ",r-t.length)}function H(e,r){var t=""+Math.round(e);return t.length>=r?t:Sr("0",r-t.length)+t}function z(e,r){var t=""+e;return t.length>=r?t:Sr("0",r-t.length)+t}var V=Math.pow(2,32);function G(e,r){if(e>V||e<-V)return H(e,r);var t=Math.round(e);return z(t,r)}function j(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)===114&&(e.charCodeAt(r+5)|32)===97&&(e.charCodeAt(r+6)|32)===108}var X=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var Y=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function K(e){if(!e)e={};e[0]="General";e[1]="0";e[2]="0.00";e[3]="#,##0";e[4]="#,##0.00";e[9]="0%";e[10]="0.00%";e[11]="0.00E+00";e[12]="# ?/?";e[13]="# ??/??";e[14]="m/d/yy";e[15]="d-mmm-yy";e[16]="d-mmm";e[17]="mmm-yy";e[18]="h:mm AM/PM";e[19]="h:mm:ss AM/PM";e[20]="h:mm";e[21]="h:mm:ss";e[22]="m/d/yy h:mm";e[37]="#,##0 ;(#,##0)";e[38]="#,##0 ;[Red](#,##0)";e[39]="#,##0.00;(#,##0.00)";e[40]="#,##0.00;[Red](#,##0.00)";e[45]="mm:ss";e[46]="[h]:mm:ss";e[47]="mmss.0";e[48]="##0.0E+0";e[49]="@";e[56]='"上午/下午 "hh"時"mm"分"ss"秒 "';return e}var Z={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "'};var J={5:37,6:38,7:39,8:40,23:0,24:0,25:0,26:0,27:14,28:14,29:14,30:14,31:14,50:14,51:14,52:14,53:14,54:14,55:14,56:14,57:14,58:14,59:1,60:2,61:3,62:4,67:9,68:10,69:12,70:13,71:14,72:14,73:15,74:16,75:17,76:20,77:21,78:22,79:45,80:46,81:47,82:0};var q={5:'"$"#,##0_);\\("$"#,##0\\)',63:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',41:'_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)'};function Q(e,r,t){var a=e<0?-1:1;var n=e*a;var i=0,s=1,f=0;var l=1,o=0,c=0;var u=Math.floor(n);while(or){if(o>r){c=l;f=i}else{c=o;f=s}}if(!t)return[0,a*f,c];var h=Math.floor(a*f/c);return[h,a*f-h*c,c]}function ee(e,r,t){if(e>2958465||e<0)return null;var a=e|0,n=Math.floor(86400*(e-a)),i=0;var s=[];var f={D:a,T:n,u:86400*(e-a)-n,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(f.u)<1e-6)f.u=0;if(r&&r.date1904)a+=1462;if(f.u>.9999){f.u=0;if(++n==86400){f.T=n=0;++a;++f.D}}if(a===60){s=t?[1317,10,29]:[1900,2,29];i=3}else if(a===0){s=t?[1317,8,29]:[1900,1,0];i=6}else{if(a>60)--a;var l=new Date(1900,0,1);l.setDate(l.getDate()+a-1);s=[l.getFullYear(),l.getMonth()+1,l.getDate()];i=l.getDay();if(a<60)i=(i+6)%7;if(t)i=ue(l,s)}f.y=s[0];f.m=s[1];f.d=s[2];f.S=n%60;n=Math.floor(n/60);f.M=n%60;n=Math.floor(n/60);f.H=n;f.q=i;return f}var re=new Date(1899,11,31,0,0,0);var te=re.getTime();var ae=new Date(1900,2,1,0,0,0);function ne(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=ae)t+=24*60*60*1e3;return(t-(te+(e.getTimezoneOffset()-re.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function ie(e){return e.indexOf(".")==-1?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function se(e){if(e.indexOf("E")==-1)return e;return e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}function fe(e){var r=e<0?12:11;var t=ie(e.toFixed(12));if(t.length<=r)return t;t=e.toPrecision(10);if(t.length<=r)return t;return e.toExponential(5)}function le(e){var r=ie(e.toFixed(11));return r.length>(e<0?12:11)||r==="0"||r==="-0"?e.toPrecision(6):r}function oe(e){var r=Math.floor(Math.log(Math.abs(e))*Math.LOG10E),t;if(r>=-4&&r<=-1)t=e.toPrecision(10+r);else if(Math.abs(r)<=9)t=fe(e);else if(r===10)t=e.toFixed(10).substr(0,12);else t=le(e);return ie(se(t.toUpperCase()))}function ce(e,r){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):oe(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return ze(14,ne(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}function ue(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function he(e,r,t,a){var n="",i=0,s=0,f=t.y,l,o=0;switch(e){case 98:f=t.y+543;case 121:switch(r.length){case 1:;case 2:l=f%100;o=2;break;default:l=f%1e4;o=4;break;}break;case 109:switch(r.length){case 1:;case 2:l=t.m;o=r.length;break;case 3:return Y[t.m-1][1];case 5:return Y[t.m-1][0];default:return Y[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:l=t.d;o=r.length;break;case 3:return X[t.q][0];default:return X[t.q][1];}break;case 104:switch(r.length){case 1:;case 2:l=1+(t.H+11)%12;o=r.length;break;default:throw"bad hour format: "+r;}break;case 72:switch(r.length){case 1:;case 2:l=t.H;o=r.length;break;default:throw"bad hour format: "+r;}break;case 77:switch(r.length){case 1:;case 2:l=t.M;o=r.length;break;default:throw"bad minute format: "+r;}break;case 115:if(r!="s"&&r!="ss"&&r!=".0"&&r!=".00"&&r!=".000")throw"bad second format: "+r;if(t.u===0&&(r=="s"||r=="ss"))return U(t.S,r.length);if(a>=2)s=a===3?1e3:100;else s=a===1?10:1;i=Math.round(s*(t.S+t.u));if(i>=60*s)i=0;if(r==="s")return i===0?"0":""+i/s;n=U(i,2+a);if(r==="ss")return n.substr(0,2);return"."+n.substr(2,r.length-1);case 90:switch(r){case"[h]":;case"[hh]":l=t.D*24+t.H;break;case"[m]":;case"[mm]":l=(t.D*24+t.H)*60+t.M;break;case"[s]":;case"[ss]":l=((t.D*24+t.H)*60+t.M)*60+Math.round(t.S+t.u);break;default:throw"bad abstime format: "+r;}o=r.length===3?1:2;break;case 101:l=f;o=1;break;}var c=o>0?U(l,o):"";return c}function de(e){var r=3;if(e.length<=r)return e;var t=e.length%r,a=e.substr(0,t);for(;t!=e.length;t+=r)a+=(a.length>0?",":"")+e.substr(t,r);return a}var ve=/%/g;function pe(e,r,t){var a=r.replace(ve,""),n=r.length-a.length;return De(e,a,t*Math.pow(10,2*n))+Sr("%",n)}function me(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return De(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function be(e,r){var t;var a=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\+0$/)){if(r==0)return"0.0E+0";else if(r<0)return"-"+be(e,-r);var n=e.indexOf(".");if(n===-1)n=e.indexOf("E");var i=Math.floor(Math.log(r)*Math.LOG10E)%n;if(i<0)i+=n;t=(r/Math.pow(10,i)).toPrecision(a+1+(n+i)%n);if(t.indexOf("e")===-1){var s=Math.floor(Math.log(r)*Math.LOG10E);if(t.indexOf(".")===-1)t=t.charAt(0)+"."+t.substr(1)+"E+"+(s-t.length+i);else t+="E+"+(s-i);while(t.substr(0,2)==="0."){t=t.charAt(0)+t.substr(2,n)+"."+t.substr(2+n);t=t.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}t=t.replace(/\+-/,"-")}t=t.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function(e,r,t,a){return r+t+a.substr(0,(n+i)%n)+"."+a.substr(i)+"E"})}else t=r.toExponential(a);if(e.match(/E\+00$/)&&t.match(/e[+-]\d$/))t=t.substr(0,t.length-1)+"0"+t.charAt(t.length-1);if(e.match(/E\-/)&&t.match(/e\+/))t=t.replace(/e\+/,"e");return t.replace("e","E")}var ge=/# (\?+)( ?)\/( ?)(\d+)/;function we(e,r,t){var a=parseInt(e[4],10),n=Math.round(r*a),i=Math.floor(n/a);var s=n-i*a,f=a;return t+(i===0?"":""+i)+" "+(s===0?Sr(" ",e[1].length+1+e[4].length):B(s,e[1].length)+e[2]+"/"+e[3]+U(f,e[4].length))}function ke(e,r,t){return t+(r===0?"":""+r)+Sr(" ",e[1].length+2+e[4].length)}var Te=/^#*0*\.([0#]+)/;var Ee=/\).*[0#]/;var ye=/\(###\) ###\\?-####/;function Se(e){var r="",t;for(var a=0;a!=e.length;++a)switch(t=e.charCodeAt(a)){case 35:break;case 63:r+=" ";break;case 48:r+="0";break;default:r+=String.fromCharCode(t);}return r}function _e(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function xe(e,r){var t=e-Math.floor(e),a=Math.pow(10,r);if(r<(""+Math.round(t*a)).length)return 0;return Math.round(t*a)}function Ae(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function Ce(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function Oe(e,r,t){if(e.charCodeAt(0)===40&&!r.match(Ee)){var a=r.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(t>=0)return Oe("n",a,t);return"("+Oe("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return me(e,r,t);if(r.indexOf("%")!==-1)return pe(e,r,t);if(r.indexOf("E")!==-1)return be(r,t);if(r.charCodeAt(0)===36)return"$"+Oe(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,f,l=Math.abs(t),o=t<0?"-":"";if(r.match(/^00+$/))return o+G(l,r.length);if(r.match(/^[#?]+$/)){n=G(t,0);if(n==="0")n="";return n.length>r.length?n:Se(r.substr(0,r.length-n.length))+n}if(i=r.match(ge))return we(i,l,o);if(r.match(/^#+0+$/))return o+G(l,r.length-r.indexOf("0"));if(i=r.match(Te)){n=_e(t,i[1].length).replace(/^([^\.]+)$/,"$1."+Se(i[1])).replace(/\.$/,"."+Se(i[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+Sr("0",Se(i[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(i=r.match(/^(0*)\.(#*)$/)){return o+_e(l,i[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".")}if(i=r.match(/^#{1,3},##0(\.?)$/))return o+de(G(l,0));if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Oe(e,r,-t):de(""+(Math.floor(t)+Ae(t,i[1].length)))+"."+U(xe(t,i[1].length),i[1].length)}if(i=r.match(/^#,#*,#0/))return Oe(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=M(Oe(e,r.replace(/[\\-]/g,""),t));s=0;return M(M(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return s=0)return Fe("n",a,t);return"("+Fe("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return Re(e,r,t);if(r.indexOf("%")!==-1)return Ie(e,r,t);if(r.indexOf("E")!==-1)return Ne(r,t);if(r.charCodeAt(0)===36)return"$"+Fe(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,f,l=Math.abs(t),o=t<0?"-":"";if(r.match(/^00+$/))return o+U(l,r.length);if(r.match(/^[#?]+$/)){n=""+t;if(t===0)n="";return n.length>r.length?n:Se(r.substr(0,r.length-n.length))+n}if(i=r.match(ge))return ke(i,l,o);if(r.match(/^#+0+$/))return o+U(l,r.length-r.indexOf("0"));if(i=r.match(Te)){n=(""+t).replace(/^([^\.]+)$/,"$1."+Se(i[1])).replace(/\.$/,"."+Se(i[1]));n=n.replace(/\.(\d*)$/,function(e,r){return"."+r+Sr("0",Se(i[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(i=r.match(/^(0*)\.(#*)$/)){return o+(""+l).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".")}if(i=r.match(/^#{1,3},##0(\.?)$/))return o+de(""+l);if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Fe(e,r,-t):de(""+t)+"."+Sr("0",i[1].length)}if(i=r.match(/^#,#*,#0/))return Fe(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=M(Fe(e,r.replace(/[\\-]/g,""),t));s=0;return M(M(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return s-1||t=="\\"&&e.charAt(r+1)=="-"&&"0#".indexOf(e.charAt(r+2))>-1)){}break;case"?":while(e.charAt(++r)===t){}break;case"*":++r;if(e.charAt(r)==" "||e.charAt(r)=="*")++r;break;case"(":;case")":++r;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":while(r-1){}break;case" ":++r;break;default:++r;break;}}return false}function Ue(e,r,t,a){var n=[],i="",s=0,f="",l="t",o,c,u;var h="H";while(s=12?e.charAt(s+2):f;p.t="T";h="h";s+=3}else if(e.substr(s,5).toUpperCase()==="AM/PM"){if(o!=null)p.v=o.H>=12?"PM":"AM";p.t="T";s+=5;h="h"}else if(e.substr(s,5).toUpperCase()==="上午/下午"){if(o!=null)p.v=o.H>=12?"下午":"上午";p.t="T";s+=5;h="h"}else{p.t="t";++s}if(o==null&&p.t==="T")return"";n[n.length]=p;l=f;break;case"[":i=f;while(e.charAt(s++)!=="]"&&s-1){i=(i.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!Me(e))n[n.length]={t:"t",v:i}}break;case".":if(o!=null){i=f;while(++s-1)i+=f;n[n.length]={t:"n",v:i};break;case"?":i=f;while(e.charAt(++s)===f)i+=f;n[n.length]={t:f,v:i};l=f;break;case"*":++s;if(e.charAt(s)==" "||e.charAt(s)=="*")++s;break;case"(":;case")":n[n.length]={t:a===1?"t":f,v:f};++s;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":i=f;while(s-1)i+=e.charAt(s);n[n.length]={t:"D",v:i};break;case" ":n[n.length]={t:f,v:f};++s;break;case"$":n[n.length]={t:"t",v:"$"};++s;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxzP".indexOf(f)===-1)throw new Error("unrecognized character "+f+" in "+e);n[n.length]={t:"t",v:f};++s;break;}}var m=0,b=0,g;for(s=n.length-1,l="t";s>=0;--s){switch(n[s].t){case"h":;case"H":n[s].t=h;l="h";if(m<1)m=1;break;case"s":if(g=n[s].v.match(/\.0+$/))b=Math.max(b,g[0].length-1);if(m<3)m=3;case"d":;case"y":;case"M":;case"e":l=n[s].t;break;case"m":if(l==="s"){n[s].t="M";if(m<2)m=2}break;case"X":break;case"Z":if(m<1&&n[s].v.match(/[Hh]/))m=1;if(m<2&&n[s].v.match(/[Mm]/))m=2;if(m<3&&n[s].v.match(/[Ss]/))m=3;}}switch(m){case 0:break;case 1:if(o.u>=.5){o.u=0;++o.S}if(o.S>=60){o.S=0;++o.M}if(o.M>=60){o.M=0;++o.H}break;case 2:if(o.u>=.5){o.u=0;++o.S}if(o.S>=60){o.S=0;++o.M}break;}var w="",k;for(s=0;s0){if(w.charCodeAt(0)==40){E=r<0&&w.charCodeAt(0)===45?-r:r;y=De("n",w,E)}else{E=r<0&&a>1?-r:r;y=De("n",w,E);if(E<0&&n[0]&&n[0].t=="t"){y=y.substr(1);n[0].v="-"+n[0].v}}k=y.length-1;var S=n.length;for(s=0;s-1){S=s;break}var _=n.length;if(S===n.length&&y.indexOf("E")===-1){for(s=n.length-1;s>=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;if(k>=n[s].v.length-1){k-=n[s].v.length;n[s].v=y.substr(k+1,n[s].v.length)}else if(k<0)n[s].v="";else{n[s].v=y.substr(0,k+1);k=-1}n[s].t="t";_=s}if(k>=0&&_=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;c=n[s].v.indexOf(".")>-1&&s===S?n[s].v.indexOf(".")-1:n[s].v.length-1;T=n[s].v.substr(c+1);for(;c>=0;--c){if(k>=0&&(n[s].v.charAt(c)==="0"||n[s].v.charAt(c)==="#"))T=y.charAt(k--)+T}n[s].v=T;n[s].t="t";_=s}if(k>=0&&_-1&&s===S?n[s].v.indexOf(".")+1:0;T=n[s].v.substr(0,c);for(;c-1){E=a>1&&r<0&&s>0&&n[s-1].v==="-"?-r:r;n[s].v=De(n[s].t,n[s].v,E);n[s].t="t"}var x="";for(s=0;s!==n.length;++s)if(n[s]!=null)x+=n[s].v;return x}var Be=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function We(e,r){if(r==null)return false;var t=parseFloat(r[2]);switch(r[1]){case"=":if(e==t)return true;break;case">":if(e>t)return true;break;case"<":if(e":if(e!=t)return true;break;case">=":if(e>=t)return true;break;case"<=":if(e<=t)return true;break;}return false}function He(e,r){var t=Pe(e);var a=t.length,n=t[a-1].indexOf("@");if(a<4&&n>-1)--a;if(t.length>4)throw new Error("cannot find right format for |"+t.join("|")+"|");if(typeof r!=="number")return[4,t.length===4||n>-1?t[t.length-1]:"@"];switch(t.length){case 1:t=n>-1?["General","General","General",t[0]]:[t[0],t[0],t[0],"@"];break;case 2:t=n>-1?[t[0],t[0],t[0],t[1]]:[t[0],t[1],t[0],"@"];break;case 3:t=n>-1?[t[0],t[1],t[0],t[2]]:[t[0],t[1],t[2],"@"];break;case 4:break;}var i=r>0?t[0]:r<0?t[1]:t[2];if(t[0].indexOf("[")===-1&&t[1].indexOf("[")===-1)return[a,i];if(t[0].match(/\[[=<>]/)!=null||t[1].match(/\[[=<>]/)!=null){var s=t[0].match(Be);var f=t[1].match(Be);return We(r,s)?[a,t[0]]:We(r,f)?[a,t[1]]:[a,t[s!=null&&f!=null?2:1]]}return[a,i]}function ze(e,r,t){if(t==null)t={};var a="";switch(typeof e){case"string":if(e=="m/d/yy"&&t.dateNF)a=t.dateNF;else a=e;break;case"number":if(e==14&&t.dateNF)a=t.dateNF;else a=(t.table!=null?t.table:Z)[e];if(a==null)a=t.table&&t.table[J[e]]||Z[J[e]];if(a==null)a=q[e]||"General";break;}if(j(a,0))return ce(r,t);if(r instanceof Date)r=ne(r,t.date1904);var n=He(a,r);if(j(n[1]))return ce(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return Ue(n[1],r,t,n[0])}function Ve(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(Z[t]==undefined){if(r<0)r=t;continue}if(Z[t]==e){r=t;break}}if(r<0)r=391}Z[r]=e;return r}function $e(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)Ve(e[r],r)}function Ge(){Z=K()}var je={format:ze,load:Ve,_table:Z,load_table:$e,parse_date_code:ee,is_date:Me,get_table:function Fk(){return je._table=Z}};var Xe={5:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',23:"General",24:"General",25:"General",26:"General",27:"m/d/yy",28:"m/d/yy",29:"m/d/yy",30:"m/d/yy",31:"m/d/yy",32:"h:mm:ss",33:"h:mm:ss",34:"h:mm:ss",35:"h:mm:ss",36:"m/d/yy",41:'_(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* (#,##0);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)',50:"m/d/yy",51:"m/d/yy",52:"m/d/yy",53:"m/d/yy",54:"m/d/yy",55:"m/d/yy",56:"m/d/yy",57:"m/d/yy",58:"m/d/yy",59:"0",60:"0.00",61:"#,##0",62:"#,##0.00",63:'"$"#,##0_);\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',67:"0%",68:"0.00%",69:"# ?/?",70:"# ??/??",71:"m/d/yy",72:"m/d/yy",73:"d-mmm-yy",74:"d-mmm",75:"mmm-yy",76:"h:mm",77:"h:mm:ss",78:"m/d/yy h:mm",79:"mm:ss",80:"[h]:mm:ss",81:"mmss.0"};var Ye=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function Ke(e){var r=typeof e=="number"?Z[e]:e;r=r.replace(Ye,"(\\d+)");return new RegExp("^"+r+"$")}function Ze(e,r,t){var a=-1,n=-1,i=-1,s=-1,f=-1,l=-1;(r.match(Ye)||[]).forEach(function(e,r){var o=parseInt(t[r+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=o;break;case"d":i=o;break;case"h":s=o;break;case"s":l=o;break;case"m":if(s>=0)f=o;else n=o;break;}});if(l>=0&&f==-1&&n>=0){f=n;n=-1}var o=(""+(a>=0?a:(new Date).getFullYear())).slice(-4)+"-"+("00"+(n>=1?n:1)).slice(-2)+"-"+("00"+(i>=1?i:1)).slice(-2);if(o.length==7)o="0"+o;if(o.length==8)o="20"+o;var c=("00"+(s>=0?s:0)).slice(-2)+":"+("00"+(f>=0?f:0)).slice(-2)+":"+("00"+(l>=0?l:0)).slice(-2);if(s==-1&&f==-1&&l==-1)return o;if(a==-1&&n==-1&&i==-1)return c;return o+"T"+c}var Je={"d.m":"d\\.m"};function qe(e,r){return Ve(Je[e]||e,r)}var Qe=function(){var e={};e.version="1.2.0";function r(){var e=0,r=new Array(256);for(var t=0;t!=256;++t){e=t;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;r[t]=e}return typeof Int32Array!=="undefined"?new Int32Array(r):r; +}var t=r();function a(e){var r=0,t=0,a=0,n=typeof Int32Array!=="undefined"?new Int32Array(4096):new Array(4096);for(a=0;a!=256;++a)n[a]=e[a];for(a=0;a!=256;++a){t=e[a];for(r=256+a;r<4096;r+=256)t=n[r]=t>>>8^e[t&255]}var i=[];for(a=1;a!=16;++a)i[a-1]=typeof Int32Array!=="undefined"?n.subarray(a*256,a*256+256):n.slice(a*256,a*256+256);return i}var n=a(t);var i=n[0],s=n[1],f=n[2],l=n[3],o=n[4];var c=n[5],u=n[6],h=n[7],d=n[8],v=n[9];var p=n[10],m=n[11],b=n[12],g=n[13],w=n[14];function k(e,r){var a=r^-1;for(var n=0,i=e.length;n>>8^t[(a^e.charCodeAt(n++))&255];return~a}function T(e,r){var a=r^-1,n=e.length-15,k=0;for(;k>8&255]^b[e[k++]^a>>16&255]^m[e[k++]^a>>>24]^p[e[k++]]^v[e[k++]]^d[e[k++]]^h[e[k++]]^u[e[k++]]^c[e[k++]]^o[e[k++]]^l[e[k++]]^f[e[k++]]^s[e[k++]]^i[e[k++]]^t[e[k++]];n+=15;while(k>>8^t[(a^e[k++])&255];return~a}function E(e,r){var a=r^-1;for(var n=0,i=e.length,s=0,f=0;n>>8^t[(a^s)&255]}else if(s<2048){a=a>>>8^t[(a^(192|s>>6&31))&255];a=a>>>8^t[(a^(128|s&63))&255]}else if(s>=55296&&s<57344){s=(s&1023)+64;f=e.charCodeAt(n++)&1023;a=a>>>8^t[(a^(240|s>>8&7))&255];a=a>>>8^t[(a^(128|s>>2&63))&255];a=a>>>8^t[(a^(128|f>>6&15|(s&3)<<4))&255];a=a>>>8^t[(a^(128|f&63))&255]}else{a=a>>>8^t[(a^(224|s>>12&15))&255];a=a>>>8^t[(a^(128|s>>6&63))&255];a=a>>>8^t[(a^(128|s&63))&255]}}return~a}e.table=t;e.bstr=k;e.buf=T;e.str=E;return e}();var er=function Dk(){var e={};e.version="1.2.2";function r(e,r){var t=e.split("/"),a=r.split("/");for(var n=0,i=0,s=Math.min(t.length,a.length);n>>1;e._W(2,t);var a=r.getFullYear()-1980;a=a<<4|r.getMonth()+1;a=a<<5|r.getDate();e._W(2,a)}function i(e){var r=e._R(2)&65535;var t=e._R(2)&65535;var a=new Date;var n=t&31;t>>>=5;var i=t&15;t>>>=4;a.setMilliseconds(0);a.setFullYear(t+1980);a.setMonth(i-1);a.setDate(n);var s=r&31;r>>>=5;var f=r&63;r>>>=6;a.setHours(r);a.setMinutes(f);a.setSeconds(s<<1);return a}function s(e){ba(e,0);var r={};var t=0;while(e.l<=e.length-4){var a=e._R(2);var n=e._R(2),i=e.l+n;var s={};switch(a){case 21589:{t=e._R(1);if(t&1)s.mtime=e._R(4);if(n>5){if(t&2)s.atime=e._R(4);if(t&4)s.ctime=e._R(4)}if(s.mtime)s.mt=new Date(s.mtime*1e3)}break;case 1:{var f=e._R(4),l=e._R(4);s.usz=l*Math.pow(2,32)+f;f=e._R(4);l=e._R(4);s.csz=l*Math.pow(2,32)+f}break;}e.l=i;r[a]=s}return r}var f;function l(){return f||(f=rr)}function o(e,r){if(e[0]==80&&e[1]==75)return Ie(e,r);if((e[0]|32)==109&&(e[1]|32)==105)return We(e,r);if(e.length<512)throw new Error("CFB file size "+e.length+" < 512");var t=3;var a=512;var n=0;var i=0;var s=0;var f=0;var l=0;var o=[];var v=e.slice(0,512);ba(v,0);var m=c(v);t=m[0];switch(t){case 3:a=512;break;case 4:a=4096;break;case 0:if(m[1]==0)return Ie(e,r);default:throw new Error("Major Version: Expected 3 or 4 saw "+t);}if(a!==512){v=e.slice(0,a);ba(v,28)}var w=e.slice(0,a);u(v,t);var k=v._R(4,"i");if(t===3&&k!==0)throw new Error("# Directory Sectors: Expected 0 saw "+k);v.l+=4;s=v._R(4,"i");v.l+=4;v.chk("00100000","Mini Stream Cutoff Size: ");f=v._R(4,"i");n=v._R(4,"i");l=v._R(4,"i");i=v._R(4,"i");for(var T=-1,E=0;E<109;++E){T=v._R(4,"i");if(T<0)break;o[E]=T}var y=h(e,a);p(l,i,y,a,o);var S=b(y,s,o,a);if(s0&&f!==U)S[f].name="!MiniFAT";S[o[0]].name="!FAT";S.fat_addrs=o;S.ssz=a;var _={},x=[],A=[],C=[];g(s,S,y,x,n,_,A,f);d(A,C,x);x.shift();var O={FileIndex:A,FullPaths:C};if(r&&r.raw)O.raw={header:w,sectors:y};return O}function c(e){if(e[e.l]==80&&e[e.l+1]==75)return[0,0];e.chk(B,"Header Signature: ");e.l+=16;var r=e._R(2,"u");return[e._R(2,"u"),r]}function u(e,r){var t=9;e.l+=2;switch(t=e._R(2)){case 9:if(r!=3)throw new Error("Sector Shift: Expected 9 saw "+t);break;case 12:if(r!=4)throw new Error("Sector Shift: Expected 12 saw "+t);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+t);}e.chk("0600","Mini Sector Shift: ");e.chk("000000000000","Reserved: ")}function h(e,r){var t=Math.ceil(e.length/r)-1;var a=[];for(var n=1;n0&&s>=0){i.push(r.slice(s*M,s*M+M));n-=M;s=oa(t,s*4)}if(i.length===0)return wa(0);return F(i).slice(0,e.size)}function p(e,r,t,a,n){var i=U;if(e===U){if(r!==0)throw new Error("DIFAT chain shorter than expected")}else if(e!==-1){var s=t[e],f=(a>>>2)-1;if(!s)return;for(var l=0;l=1)p(oa(s,a-4),r-1,t,a,n)}}function m(e,r,t,a,n){var i=[],s=[];if(!n)n=[];var f=a-1,l=0,o=0;for(l=r;l>=0;){n[l]=true;i[i.length]=l;s.push(e[l]);var c=t[Math.floor(l*4/a)];o=l*4&f;if(a<4+o)throw new Error("FAT boundary crossed: "+l+" 4 "+a);if(!e[c])break;l=oa(e[c],o)}return{nodes:i,data:Ut([s])}}function b(e,r,t,a){var n=e.length,i=[];var s=[],f=[],l=[];var o=a-1,c=0,u=0,h=0,d=0;for(c=0;c=n)h-=n;if(s[h])continue;l=[];var v=[];for(u=h;u>=0;){v[u]=true;s[u]=true;f[f.length]=u;l.push(e[u]);var p=t[Math.floor(u*4/a)];d=u*4&o;if(a<4+d)throw new Error("FAT boundary crossed: "+u+" 4 "+a);if(!e[p])break;u=oa(e[p],d);if(v[u])break}i[h]={nodes:f,data:Ut([l])}}return i}function g(e,r,t,a,n,i,s,f){var l=0,o=a.length?2:0;var c=r[e].data;var u=0,h=0,d;for(;u0&&l!==U)r[l].name="!StreamData"}else if(b.size>=4096){b.storage="fat";if(r[b.start]===undefined)r[b.start]=m(t,b.start,r.fat_addrs,r.ssz);r[b.start].name=b.name;b.content=r[b.start].data.slice(0,b.size)}else{b.storage="minifat";if(b.size<0)b.size=0;else if(l!==U&&b.start!==U&&r[l]){b.content=v(b,r[l].data,(r[f]||{}).data)}}if(b.content)ba(b.content,0);i[d]=b;s.push(b)}}function w(e,r){return new Date((la(e,r+4)/1e7*Math.pow(2,32)+la(e,r)/1e7-11644473600)*1e3)}function T(e,r){l();return o(f.readFileSync(e),r)}function _(e,r){var t=r&&r.type;if(!t){if(y&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return T(e,r);case"base64":return o(C(E(e)),r);case"binary":return o(C(e),r);}return o(e,r)}function O(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;R(e)}function R(e){var r="Sh33tJ5";if(er.find(e,"/"+r))return;var t=wa(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);I(e)}function I(e,n){O(e);var i=false,s=false;for(var f=e.FullPaths.length-1;f>=0;--f){var l=e.FileIndex[f];switch(l.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(l.R*l.L*l.C))i=true;if(l.R>-1&&l.L>-1&&l.R==l.L)i=true;break;default:i=true;break;}}if(!i&&!n)return;var o=new Date(1987,1,19),c=0;var u=Object.create?Object.create(null):{};var h=[];for(f=0;f1?1:-1;v.size=0;v.type=5}else if(p.slice(-1)=="/"){for(c=f+1;c=h.length?-1:c;for(c=f+1;c=h.length?-1:c;v.type=1}else{if(t(e.FullPaths[f+1]||"")==t(p))v.R=f+1;v.type=2}}}function N(e,r){var t=r||{};if(t.fileType=="mad")return He(e,t);I(e);switch(t.fileType){case"zip":return Fe(e,t);}var a=function(e){var r=0,t=0;for(var a=0;a0){if(i<4096)r+=i+63>>6;else t+=i+511>>9}}var s=e.FullPaths.length+3>>2;var f=r+7>>3;var l=r+127>>7;var o=f+t+s+l;var c=o+127>>7;var u=c<=109?0:Math.ceil((c-109)/127);while(o+c+u+127>>7>c)u=++c<=109?0:Math.ceil((c-109)/127);var h=[1,u,c,l,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=wa(a[7]<<9);var i=0,s=0;{for(i=0;i<8;++i)n._W(1,W[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:U);n._W(4,a[3]);n._W(-4,a[1]?a[0]-1:U);n._W(4,a[1]);for(i=0;i<109;++i)n._W(-4,i>9)}f(a[6]+7>>3);while(n.l&511)n._W(-4,z.ENDOFCHAIN);s=i=0;for(l=0;l=4096)continue;c.start=s;f(o+63>>6)}while(n.l&511)n._W(-4,z.ENDOFCHAIN);for(i=0;i32){console.error("Name "+h+" will be truncated to "+h.slice(0,32));h=h.slice(0,32)}o=2*(h.length+1);n._W(64,h,"utf16le");n._W(2,o);n._W(1,c.type);n._W(1,c.color);n._W(-4,c.L);n._W(-4,c.R);n._W(-4,c.C);if(!c.clsid)for(l=0;l<4;++l)n._W(4,0);else n._W(16,c.clsid,"hex");n._W(4,c.state||0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,c.start);n._W(4,c.size);n._W(4,0)}for(i=1;i=4096){n.l=c.start+1<<9;if(y&&Buffer.isBuffer(c.content)){c.content.copy(n,n.l,0,c.size);n.l+=c.size+511&-512}else{for(l=0;l0&&c.size<4096){if(y&&Buffer.isBuffer(c.content)){c.content.copy(n,n.l,0,c.size);n.l+=c.size+63&-64}else{for(l=0;l>16|r>>8|r)&255}var ee=typeof Uint8Array!=="undefined";var re=ee?new Uint8Array(1<<8):[];for(var te=0;te<1<<8;++te)re[te]=Q(te);function ae(e,r){var t=re[e&255];if(r<=8)return t>>>8-r;t=t<<8|re[e>>8&255];if(r<=16)return t>>>16-r;t=t<<8|re[e>>16&255];return t>>>24-r}function ne(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=6?0:e[a+1]<<8))>>>t&3}function ie(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=5?0:e[a+1]<<8))>>>t&7}function se(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=4?0:e[a+1]<<8))>>>t&15}function fe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=3?0:e[a+1]<<8))>>>t&31}function le(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=1?0:e[a+1]<<8))>>>t&127}function oe(e,r,t){var a=r&7,n=r>>>3,i=(1<>>a;if(t<8-a)return s&i;s|=e[n+1]<<8-a;if(t<16-a)return s&i;s|=e[n+2]<<16-a;if(t<24-a)return s&i;s|=e[n+3]<<24-a;return s&i}function ce(e,r,t){var a=r&7,n=r>>>3;if(a<=5)e[n]|=(t&7)<>8-a}return r+3}function ue(e,r,t){var a=r&7,n=r>>>3;t=(t&1)<>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t;return r+8}function de(e,r,t){var a=r&7,n=r>>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t&255;e[n+2]=t>>>8;return r+16}function ve(e,r){var t=e.length,a=2*t>r?2*t:r+5,n=0;if(t>=r)return e;if(y){var i=A(a);if(e.copy)e.copy(i);else for(;n>a-u;for(s=(1<=0;--s)r[f|s<0)r[r.l++]=e[t++]}return r.l}function i(r,t){var n=0;var i=0;var s=ee?new Uint16Array(32768):[];while(i0)t[t.l++]=r[i++];n=t.l*8;continue}n=ce(t,n,+!!(i+f==r.length)+2);var l=0;while(f-- >0){var o=r[i];l=(l<<5^o)&32767;var c=-1,u=0;if(c=s[l]){c|=i&~32767;if(c>i)c-=32768;if(c2){o=a[u];if(o<=22)n=he(t,n,re[o+1]>>1)-1;else{he(t,n,3);n+=5;he(t,n,re[o-23]>>5);n+=3}var h=o<8?0:o-4>>2;if(h>0){de(t,n,u-J[o]);n+=h}o=e[i-c];n=he(t,n,re[o]>>3);n-=3;var d=o<4?0:o-2>>1;if(d>0){de(t,n,i-c-q[o]);n+=d}for(var v=0;v>8-v;for(var p=(1<<7-v)-1;p>=0;--p)Se[d|p<>>=3){case 16:i=3+ne(e,r);r+=2;d=m[m.length-1];while(i-- >0)m.push(d);break;case 17:i=3+ie(e,r);r+=3;while(i-- >0)m.push(0);break;case 18:i=11+le(e,r);r+=7;while(i-- >0)m.push(0);break;default:m.push(d);if(l>>0;var f=0,l=0;while((a&1)==0){a=ie(e,t);t+=3;if(a>>>1==0){if(t&7)t+=8-(t&7);var o=e[t>>>3]|e[(t>>>3)+1]<<8;t+=32;if(o>0){if(!r&&s0){n[i++]=e[t>>>3];t+=8}}continue}else if(a>>1==1){f=9;l=5}else{t=Ae(e,t);f=_e;l=xe}for(;;){if(!r&&s>>1==1?be[c]:Ee[c];t+=u&15;u>>>=4;if((u>>>8&255)===0)n[i++]=u;else if(u==256)break;else{u-=257;var h=u<8?0:u-4>>2;if(h>5)h=0;var d=i+J[u];if(h>0){d+=oe(e,t,h);t+=h}c=oe(e,t,l);u=a>>>1==1?ge[c]:ye[c];t+=u&15;u>>>=4;var v=u<4?0:u-2>>1;var p=q[u];if(v>0){p+=oe(e,t,v);t+=v}if(!r&&s>>3];return[n.slice(0,i),t+7>>>3]}function Oe(e,r){var t=e.slice(e.l||0);var a=Ce(t,r);e.l+=a[1];return a[0]}function Re(e,r){if(e){if(typeof console!=="undefined")console.error(r)}else throw new Error(r)}function Ie(e,r){var t=e;ba(t,0);var a=[],n=[];var i={FileIndex:a,FullPaths:n};O(i,{root:r.root});var f=t.length-4;while((t[f]!=80||t[f+1]!=75||t[f+2]!=5||t[f+3]!=6)&&f>=0)--f;t.l=f+4;t.l+=4;var l=t._R(2);t.l+=6;var o=t._R(4);t.l=o;for(f=0;f0){t=t.slice(0,t.length-1);t=t.slice(0,t.lastIndexOf("/")+1);if(i.slice(0,t.length)==t)break}}var s=(a[1]||"").match(/boundary="(.*?)"/);if(!s)throw new Error("MAD cannot find boundary");var f="--"+(s[1]||"");var l=[],o=[];var c={FileIndex:l,FullPaths:o};O(c);var u,h=0;for(n=0;n=32&&d<128)++u;var p=u>=h*4/5;n.push(a);n.push("Content-Location: "+(t.root||"file:///C:/SheetJS/")+s);n.push("Content-Transfer-Encoding: "+(p?"quoted-printable":"base64"));n.push("Content-Type: "+Pe(f,s));n.push("");n.push(p?Me(c):Le(c))}n.push(a+"--\r\n");return n.join("\r\n")}function ze(e){var r={};O(r,e);return r}function Ve(e,r,t,n){var i=n&&n.unsafe;if(!i)O(e);var s=!i&&er.find(e,r);if(!s){var f=e.FullPaths[0];if(r.slice(0,f.length)==f)f=r;else{if(f.slice(-1)!="/")f+="/";f=(f+r).replace("//","/")}s={name:a(r),type:2};e.FileIndex.push(s);e.FullPaths.push(f);if(!i)er.utils.cfb_gc(e)}s.content=t;s.size=t?t.length:0;if(n){if(n.CLSID)s.clsid=n.CLSID;if(n.mt)s.mt=n.mt;if(n.ct)s.ct=n.ct}return s}function $e(e,r){O(e);var t=er.find(e,r);if(t)for(var a=0;a3)a=true;switch(n[i].slice(n[i].length-1)){case"Y":throw new Error("Unsupported ISO Duration Field: "+n[i].slice(n[i].length-1));case"D":t*=24;case"H":t*=60;case"M":if(!a)throw new Error("Unsupported ISO Duration Field: M");else t*=60;case"S":break;}r+=t*parseInt(n[i],10)}return r}var gr=new Date("2017-02-19T19:06:09.000Z");var wr=isNaN(gr.getFullYear())?new Date("2/19/17"):gr;var kr=wr.getFullYear()==2017;function Tr(e,r){var t=new Date(e);if(kr){if(r>0)t.setTime(t.getTime()+t.getTimezoneOffset()*60*1e3);else if(r<0)t.setTime(t.getTime()-t.getTimezoneOffset()*60*1e3);return t}if(e instanceof Date)return e;if(wr.getFullYear()==1917&&!isNaN(t.getFullYear())){var a=t.getFullYear();if(e.indexOf(""+a)>-1)return t;t.setFullYear(t.getFullYear()+100);return t}var n=e.match(/\d+/g)||["2017","2","19","0","0","0"];var i=new Date(+n[0],+n[1]-1,+n[2],+n[3]||0,+n[4]||0,+n[5]||0);if(e.indexOf("Z")>-1)i=new Date(i.getTime()-i.getTimezoneOffset()*60*1e3);return i}function Er(e,r){if(y&&Buffer.isBuffer(e)){if(r&&_){if(e[0]==255&&e[1]==254)return bt(e.slice(2).toString("utf16le"));if(e[1]==254&&e[2]==255)return bt(h(e.slice(2).toString("binary")))}return e.toString("binary")}if(typeof TextDecoder!=="undefined")try{if(r){if(e[0]==255&&e[1]==254)return bt(new TextDecoder("utf-16le").decode(e.slice(2)));if(e[0]==254&&e[1]==255)return bt(new TextDecoder("utf-16be").decode(e.slice(2)))}var t={"€":"€","‚":"‚","ƒ":"ƒ","„":"„","…":"…","†":"†","‡":"‡","ˆ":"ˆ","‰":"‰","Š":"Š","‹":"‹","Œ":"Œ","Ž":"Ž","‘":"‘","’":"’","“":"“","”":"”","•":"•","–":"–","—":"—","˜":"˜","™":"™","š":"š","›":"›","œ":"œ","ž":"ž","Ÿ":"Ÿ"};if(Array.isArray(e))e=new Uint8Array(e);return new TextDecoder("latin1").decode(e).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g,function(e){return t[e]||e})}catch(a){}var n=[];for(var i=0;i!=e.length;++i)n.push(String.fromCharCode(e[i]));return n.join("")}function yr(e){if(typeof JSON!="undefined"&&!Array.isArray(e))return JSON.parse(JSON.stringify(e));if(typeof e!="object"||e==null)return e;if(e instanceof Date)return new Date(e.getTime());var r={};for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))r[t]=yr(e[t]);return r}function Sr(e,r){var t="";while(t.length3&&Cr.indexOf(r)==-1)return i}else if(r.replace(/[ap]m?/,"").match(/[a-z]/))return i;if(s<0||s>8099||e.match(/[^-0-9:,\/\\]/))return i;return n}var Rr=function(){var e="abacaba".split(/(:?b)/i).length==5;return function r(t,a,n){if(e||typeof a=="string")return t.split(a);var i=t.split(a),s=[i[0]];for(var f=1;f\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g;var jr=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm,Xr=/<[^>]*>/g;var Yr=$r.match(jr)?jr:Xr;var Kr=/<\w*:/,Zr=/<(\/?)\w+:/;function Jr(e,r,t){var a={};var n=0,i=0;for(;n!==e.length;++n)if((i=e.charCodeAt(n))===32||i===10||i===13)break;if(!r)a[0]=e.slice(0,n);if(n===e.length)return a;var s=e.match(Gr),f=0,l="",o=0,c="",u="",h=1;if(s)for(o=0;o!=s.length;++o){u=s[o];for(i=0;i!=u.length;++i)if(u.charCodeAt(i)===61)break;c=u.slice(0,i).trim();while(u.charCodeAt(i+1)==32)++i;h=(n=u.charCodeAt(i+1))==34||n==39?1:0;l=u.slice(i+1+h,u.length-h);for(f=0;f!=c.length;++f)if(c.charCodeAt(f)===58)break;if(f===c.length){if(c.indexOf("_")>0)c=c.slice(0,c.indexOf("_"));a[c]=l;if(!t)a[c.toLowerCase()]=l}else{var d=(f===5&&c.slice(0,5)==="xmlns"?"xmlns":"")+c.slice(f+1);if(a[d]&&c.slice(f-3,f)=="ext")continue;a[d]=l;if(!t)a[d.toLowerCase()]=l}}return a}function qr(e){return e.replace(Zr,"<$1")}var Qr={""":'"',"'":"'",">":">","<":"<","&":"&"};var et=lr(Qr);var rt=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;function t(a){var n=a+"",i=n.indexOf("-1?16:10))||e}).replace(r,function(e,r){return String.fromCharCode(parseInt(r,16))});var s=n.indexOf("]]>");return t(n.slice(0,i))+n.slice(i+9,s)+t(n.slice(s+3))}return function a(e,r){var a=t(e);return r?a.replace(/\r\n/g,"\n"):a}}();var tt=/[&<>'"]/g,at=/[\u0000-\u0008\u000b-\u001f\uFFFE-\uFFFF]/g;function nt(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(at,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function it(e){return nt(e).replace(/ /g,"_x0020_")}var st=/[\u0000-\u001f]/g;function ft(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(/\n/g,"
").replace(st,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function lt(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(st,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var ot=function(){var e=/&#(\d+);/g;function r(e,r){return String.fromCharCode(parseInt(r,10))}return function t(a){return a.replace(e,r)}}();function ct(e){return e.replace(/(\r\n|[\r\n])/g," ")}function ut(e){switch(e){case 1:;case true:;case"1":;case"true":return true;case 0:;case false:;case"0":;case"false":return false;}return false}function ht(e){var r="",t=0,a=0,n=0,i=0,s=0,f=0;while(t191&&a<224){s=(a&31)<<6;s|=n&63;r+=String.fromCharCode(s);continue}i=e.charCodeAt(t++);if(a<240){r+=String.fromCharCode((a&15)<<12|(n&63)<<6|i&63);continue}s=e.charCodeAt(t++);f=((a&7)<<18|(n&63)<<12|(i&63)<<6|s&63)-65536;r+=String.fromCharCode(55296+(f>>>10&1023));r+=String.fromCharCode(56320+(f&1023))}return r}function dt(e){var r=x(2*e.length),t,a,n=1,i=0,s=0,f;for(a=0;a>>10&1023);t=56320+(t&1023)}if(s!==0){r[i++]=s&255;r[i++]=s>>>8;s=0}r[i++]=t%256;r[i++]=t>>>8}return r.slice(0,i).toString("ucs2")}function vt(e){return S(e,"binary").toString("utf8")}var pt="foo bar baz☃🍣";var mt=y&&(vt(pt)==ht(pt)&&vt||dt(pt)==ht(pt)&&dt)||ht;var bt=y?function(e){return S(e,"utf8").toString("binary")}:function(e){var r=[],t=0,a=0,n=0;while(t>6)));r.push(String.fromCharCode(128+(a&63)));break;case a>=55296&&a<57344:a-=55296;n=e.charCodeAt(t++)-56320+(a<<10);r.push(String.fromCharCode(240+(n>>18&7)));r.push(String.fromCharCode(144+(n>>12&63)));r.push(String.fromCharCode(128+(n>>6&63)));r.push(String.fromCharCode(128+(n&63)));break;default:r.push(String.fromCharCode(224+(a>>12)));r.push(String.fromCharCode(128+(a>>6&63)));r.push(String.fromCharCode(128+(a&63)));}}return r.join("")};var gt=function(){var e={};return function r(t,a){var n=t+"|"+(a||"");if(e[n])return e[n];return e[n]=new RegExp("<(?:\\w+:)?"+t+'(?: xml:space="preserve")?(?:[^>]*)>([\\s\\S]*?)",a||"")}}();var wt=function(){var e=[["nbsp"," "],["middot","·"],["quot",'"'],["apos","'"],["gt",">"],["lt","<"],["amp","&"]].map(function(e){return[new RegExp("&"+e[0]+";","ig"),e[1]]});return function r(t){var a=t.replace(/^[\t\n\r ]+/,"").replace(/[\t\n\r ]+$/,"").replace(/>\s+/g,">").replace(/\s+/g,"\n").replace(/<[^>]*>/g,"");for(var n=0;n([\\s\\S]*?)","g")}}();var Tt=/<\/?(?:vt:)?variant>/g,Et=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function xt(e){return sr(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function At(e,r,t){return"<"+e+(t!=null?xt(t):"")+(r!=null?(r.match(St)?' xml:space="preserve"':"")+">"+r+""}function Ct(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function Ot(e,r){switch(typeof e){case"string":var t=At("vt:lpwstr",nt(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return At((e|0)==e?"vt:i4":"vt:r8",nt(String(e)));case"boolean":return At("vt:bool",e?"true":"false");}if(e instanceof Date)return At("vt:filetime",Ct(e));throw new Error("Unable to serialize "+e)}function Rt(e){if(y&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return mt(R(N(e)));throw new Error("Bad input format: expected Buffer or string")}var It=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/](?:[^>=]|="[^"]*?")*)?>/gm;var Nt={CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",CT:"http://schemas.openxmlformats.org/package/2006/content-types",RELS:"http://schemas.openxmlformats.org/package/2006/relationships",TCMNT:"http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"};var Ft=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];var Dt={o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel",ss:"urn:schemas-microsoft-com:office:spreadsheet",dt:"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",mv:"http://macVmlSchemaUri",v:"urn:schemas-microsoft-com:vml",html:"http://www.w3.org/TR/REC-html40"};function Pt(e,r){var t=1-2*(e[r+7]>>>7);var a=((e[r+7]&127)<<4)+(e[r+6]>>>4&15);var n=e[r+6]&15;for(var i=5;i>=0;--i)n=n*256+e[r+i];if(a==2047)return n==0?t*Infinity:NaN;if(a==0)a=-1022;else{a-=1023;n+=Math.pow(2,52)}return t*Math.pow(2,a-52)*n}function Lt(e,r,t){var a=(r<0||1/r==-Infinity?1:0)<<7,n=0,i=0;var s=a?-r:r;if(!isFinite(s)){n=2047;i=isNaN(r)?26985:0}else if(s==0)n=i=0;else{n=Math.floor(Math.log(s)/Math.LN2);i=s*Math.pow(2,52-n);if(n<=-1023&&(!isFinite(i)||i>4|a}var Mt=function(e){var r=[],t=10240;for(var a=0;a0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map(function(e){return Buffer.isBuffer(e)?e:S(e)})):Mt(e)}:Mt;var Bt=function(e,r,t){var a=[];for(var n=r;n0?$t(e,r+4,r+4+t-1):""};var jt=Gt;var Xt=function(e,r){var t=la(e,r);return t>0?$t(e,r+4,r+4+t-1):""};var Yt=Xt;var Kt=function(e,r){var t=2*la(e,r);return t>0?$t(e,r+4,r+4+t-1):""};var Zt=Kt;var Jt=function Lk(e,r){var t=la(e,r);return t>0?Wt(e,r+4,r+4+t):""};var qt=Jt;var Qt=function(e,r){var t=la(e,r);return t>0?$t(e,r+4,r+4+t):""};var ea=Qt;var ra=function(e,r){return Pt(e,r)};var ta=ra;var aa=function Mk(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(y){jt=function Uk(e,r){if(!Buffer.isBuffer(e))return Gt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Yt=function Bk(e,r){if(!Buffer.isBuffer(e))return Xt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Zt=function Wk(e,r){if(!Buffer.isBuffer(e)||!_)return Kt(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};qt=function Hk(e,r){if(!Buffer.isBuffer(e)||!_)return Jt(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};ea=function zk(e,r){if(!Buffer.isBuffer(e))return Qt(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};ta=function Vk(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return ra(e,r)};aa=function $k(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function na(){Wt=function(e,r,t){return a.utils.decode(1200,e.slice(r,t)).replace(P,"")};$t=function(e,r,t){return a.utils.decode(65001,e.slice(r,t))};jt=function(e,r){var n=la(e,r);return n>0?a.utils.decode(t,e.slice(r+4,r+4+n-1)):""};Yt=function(e,t){var n=la(e,t);return n>0?a.utils.decode(r,e.slice(t+4,t+4+n-1)):""};Zt=function(e,r){var t=2*la(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};qt=function(e,r){var t=la(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t)):""};ea=function(e,r){var t=la(e,r);return t>0?a.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof a!=="undefined")na();var ia=function(e,r){return e[r]};var sa=function(e,r){return e[r+1]*(1<<8)+e[r]};var fa=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var la=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var oa=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var ca=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function ua(e,t){var n="",i,s,f=[],l,o,c,u;switch(t){case"dbcs":u=this.l;if(y&&Buffer.isBuffer(this)&&_)n=this.slice(this.l,this.l+2*e).toString("utf16le");else for(c=0;c0?oa:ca)(this,this.l);this.l+=4;return i}else{s=la(this,this.l);this.l+=4}return s;case 8:;case-8:if(t==="f"){if(e==8)s=ta(this,this.l);else s=ta([this[this.l+7],this[this.l+6],this[this.l+5],this[this.l+4],this[this.l+3],this[this.l+2],this[this.l+1],this[this.l+0]],0);this.l+=8;return s}else e=8;case 16:n=zt(this,this.l,e);break;};}this.l+=e;return n}var ha=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255;e[t+2]=r>>>16&255;e[t+3]=r>>>24&255};var da=function(e,r,t){e[t]=r&255;e[t+1]=r>>8&255;e[t+2]=r>>16&255;e[t+3]=r>>24&255};var va=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function pa(e,n,i){var s=0,f=0;if(i==="dbcs"){for(f=0;f!=n.length;++f)va(this,n.charCodeAt(f),this.l+2*f);s=2*n.length}else if(i==="sbcs"||i=="cpstr"){if(typeof a!=="undefined"&&t==874){for(f=0;f!=n.length;++f){var l=a.utils.encode(t,n.charAt(f));this[this.l+f]=l[0]}s=n.length}else if(typeof a!=="undefined"&&i=="cpstr"){l=a.utils.encode(r,n);if(l.length==n.length)for(f=0;f>8}while(this.l>>=8;this[this.l+1]=n&255;break;case 3:s=3;this[this.l]=n&255;n>>>=8;this[this.l+1]=n&255;n>>>=8;this[this.l+2]=n&255;break;case 4:s=4;ha(this,n,this.l);break;case 8:s=8;if(i==="f"){Lt(this,n,this.l);break};case 16:break;case-4:s=4;da(this,n,this.l);break;}this.l+=s;return this}function ma(e,r){var t=zt(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function ba(e,r){e.l=r;e._R=ua;e.chk=ma;e._W=pa}function ga(e,r){e.l+=r}function wa(e){var r=x(e);ba(r,0);return r}function ka(e,r,t){if(!e)return;var a,n,i;ba(e,e.l||0);var s=e.length,f=0,l=0;while(e.la.l){a=a.slice(0,a.l);a.l=a.length}if(a.length>0)e.push(a)}a=null};var i=function c(e){if(a&&e=128?1:0)+1;if(a>=128)++i;if(a>=16384)++i;if(a>=2097152)++i;var s=e.next(i);if(n<=127)s._W(1,n);else{s._W(1,(n&127)+128);s._W(1,n>>7)}for(var f=0;f!=4;++f){if(a>=128){s._W(1,(a&127)+128);a>>=7}else{s._W(1,a);break}}if(a>0&&aa(t))e.push(t)}function ya(e,r,t){var a=yr(e);if(r.s){if(a.cRel)a.c+=r.s.c;if(a.rRel)a.r+=r.s.r}else{if(a.cRel)a.c+=r.c;if(a.rRel)a.r+=r.r}if(!t||t.biff<12){while(a.c>=256)a.c-=256;while(a.r>=65536)a.r-=65536}return a}function Sa(e,r,t){var a=yr(e);a.s=ya(a.s,r.s,t);a.e=ya(a.e,r.s,t);return a}function _a(e,r){if(e.cRel&&e.c<0){e=yr(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=yr(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=Ma(e);if(!e.cRel&&e.cRel!=null)t=Fa(t);if(!e.rRel&&e.rRel!=null)t=Oa(t);return t}function xa(e,r){if(e.s.r==0&&!e.s.rRel){if(e.e.r==(r.biff>=12?1048575:r.biff>=8?65536:16384)&&!e.e.rRel){return(e.s.cRel?"":"$")+Na(e.s.c)+":"+(e.e.cRel?"":"$")+Na(e.e.c)}}if(e.s.c==0&&!e.s.cRel){if(e.e.c==(r.biff>=12?16383:255)&&!e.e.cRel){return(e.s.rRel?"":"$")+Ca(e.s.r)+":"+(e.e.rRel?"":"$")+Ca(e.e.r)}}return _a(e.s,r.biff)+":"+_a(e.e,r.biff)}if(typeof cptable!=="undefined")m(cptable);else if(typeof module!=="undefined"&&typeof require!=="undefined"){m(undefined)}function Aa(e){return parseInt(Ra(e),10)-1}function Ca(e){return""+(e+1)}function Oa(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function Ra(e){return e.replace(/\$(\d+)$/,"$1")}function Ia(e){var r=Da(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function Na(e){if(e<0)throw new Error("invalid column "+e);var r="";for(++e;e;e=Math.floor((e-1)/26))r=String.fromCharCode((e-1)%26+65)+r;return r}function Fa(e){return e.replace(/^([A-Z])/,"$$$1")}function Da(e){return e.replace(/^\$([A-Z])/,"$1")}function Pa(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function La(e){var r=0,t=0;for(var a=0;a=48&&n<=57)r=10*r+(n-48);else if(n>=65&&n<=90)t=26*t+(n-64)}return{c:t-1,r:r-1}}function Ma(e){var r=e.c+1;var t="";for(;r;r=(r-1)/26|0)t=String.fromCharCode((r-1)%26+65)+t;return t+(e.r+1)}function Ua(e){var r=e.indexOf(":");if(r==-1)return{s:La(e),e:La(e)};return{s:La(e.slice(0,r)),e:La(e.slice(r+1))}}function Ba(e,r){if(typeof r==="undefined"||typeof r==="number"){return Ba(e.s,e.e)}if(typeof e!=="string")e=Ma(e);if(typeof r!=="string")r=Ma(r);return e==r?e:e+":"+r}function Wa(e){var r=Ua(e);return"$"+Na(r.s.c)+"$"+Ca(r.s.r)+":$"+Na(r.e.c)+"$"+Ca(r.e.r)}function Ha(e,r){if(!e&&!(r&&r.biff<=5&&r.biff>=2))throw new Error("empty sheet name");if(/[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(e))return"'"+e.replace(/'/g,"''")+"'";return e}function za(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;a26)break;t=26*t+n}r.s.c=--t;for(t=0;a9)break;t=10*t+n}r.s.r=--t;if(a===i||n!=10){r.e.c=r.s.c;r.e.r=r.s.r;return r}++a;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 Va(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=ze(e.z,t?hr(r):r)}catch(a){}try{return e.w=ze((e.XF||{}).numFmtId||(t?14:0),t?hr(r):r)}catch(a){return""+r}}function $a(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(e.t=="e")return Jn[e.v]||e.v;if(r==undefined)return Va(e,e.v);return Va(e,r)}function Ga(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function ja(e,r,t){var a=t||{};var n=e?e["!data"]!=null:a.dense;if(b!=null&&n==null)n=b;var i=e||{};if(n&&!i["!data"])i["!data"]=[];var s=0,f=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var l=typeof a.origin=="string"?La(a.origin):a.origin;s=l.r;f=l.c}if(!i["!ref"])i["!ref"]="A1:A1"}var o={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(i["!ref"]){var c=za(i["!ref"]);o.s.c=c.s.c;o.s.r=c.s.r;o.e.c=Math.max(o.e.c,c.e.c);o.e.r=Math.max(o.e.r,c.e.r);if(s==-1)o.e.r=s=c.e.r+1}var u=[];for(var h=0;h!=r.length;++h){if(!r[h])continue;if(!Array.isArray(r[h]))throw new Error("aoa_to_sheet expects an array of arrays");var d=s+h,v=""+(d+1);if(n){if(!i["!data"][d])i["!data"][d]=[];u=i["!data"][d]}for(var p=0;p!=r[h].length;++p){if(typeof r[h][p]==="undefined")continue;var m={v:r[h][p]};var g=f+p;if(o.s.r>d)o.s.r=d;if(o.s.c>g)o.s.c=g;if(o.e.r0)r._W(0,e,"dbcs");return t?r.slice(0,r.l):r}function qa(e){return{ich:e._R(2),ifnt:e._R(2)}}function Qa(e,r){if(!r)r=wa(4);r._W(2,e.ich||0);r._W(2,e.ifnt||0);return r}function en(e,r){var t=e.l;var a=e._R(1);var n=Za(e);var i=[];var s={t:n,h:n};if((a&1)!==0){var f=e._R(4);for(var l=0;l!=f;++l)i.push(qa(e));s.r=i}else s.r=[{ich:0,ifnt:0}];e.l=t+r;return s}function rn(e,r){var t=false;if(r==null){t=true;r=wa(15+4*e.t.length)}r._W(1,0);Ja(e.t,r);return t?r.slice(0,r.l):r}var tn=en;function an(e,r){var t=false;if(r==null){t=true;r=wa(23+4*e.t.length)}r._W(1,1);Ja(e.t,r);r._W(4,1);Qa({ich:0,ifnt:0},r);return t?r.slice(0,r.l):r}function nn(e){var r=e._R(4);var t=e._R(2);t+=e._R(1)<<16;e.l++;return{c:r,iStyleRef:t}}function sn(e,r){if(r==null)r=wa(8);r._W(-4,e.c);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}function fn(e){var r=e._R(2);r+=e._R(1)<<16;e.l++;return{c:-1,iStyleRef:r}}function ln(e,r){if(r==null)r=wa(4);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}var on=Za;var cn=Ja;function un(e){var r=e._R(4);return r===0||r===4294967295?"":e._R(r,"dbcs")}function hn(e,r){var t=false;if(r==null){t=true;r=wa(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 dn=Za;var vn=un;var pn=hn;function mn(e){var r=e.slice(e.l,e.l+4);var t=r[0]&1,a=r[0]&2;e.l+=4;var n=a===0?ta([0,0,0,0,r[0]&252,r[1],r[2],r[3]],0):oa(r,0)>>2;return t?n/100:n}function bn(e,r){if(r==null)r=wa(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 gn(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 wn(e,r){if(!r)r=wa(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 kn=gn;var Tn=wn;function En(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e._R(8,"f")}function yn(e,r){return(r||wa(8))._W(8,e,"f")}function Sn(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 f=e._R(1);var l=e._R(1);e.l++;switch(a){case 0:r.auto=1;break;case 1:r.index=n;var o=Zn[n];if(o)r.rgb=Co(o);break;case 2:r.rgb=Co([s,f,l]);break;case 3:r.theme=n;break;}if(i!=0)r.tint=i>0?i/32767:i/32768;return r}function _n(e,r){if(!r)r=wa(8);if(!e||e.auto){r._W(4,0);r._W(4,0);return r}if(e.index!=null){r._W(1,2);r._W(1,e.index)}else if(e.theme!=null){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||e.theme!=null){r._W(2,0);r._W(1,0);r._W(1,0)}else{var a=e.rgb||"FFFFFF";if(typeof a=="number")a=("000000"+a.toString(16)).slice(-6);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 xn(e){var r=e._R(1);e.l++;var t={fBold:r&1,fItalic:r&2,fUnderline:r&4,fStrikeout:r&8,fOutline:r&16,fShadow:r&32,fCondense:r&64,fExtend:r&128};return t}function An(e,r){if(!r)r=wa(2);var t=(e.italic?2:0)|(e.strike?8:0)|(e.outline?16:0)|(e.shadow?32:0)|(e.condense?64:0)|(e.extend?128:0);r._W(1,t);r._W(1,0);return r}function Cn(e,r){var t={2:"BITMAP",3:"METAFILEPICT",8:"DIB",14:"ENHMETAFILE"};var a=e._R(4);switch(a){case 0:return"";case 4294967295:;case 4294967294:return t[e._R(4)]||"";}if(a>400)throw new Error("Unsupported Clipboard: "+a.toString(16));e.l-=4;return e._R(0,r==1?"lpstr":"lpwstr")}function On(e){return Cn(e,1)}function Rn(e){return Cn(e,2)}var In=2;var Nn=3;var Fn=11;var Dn=12;var Pn=19;var Ln=64;var Mn=65;var Un=71;var Bn=4108;var Wn=4126;var Hn=80;var zn=81;var Vn=[Hn,zn];var $n={1:{n:"CodePage",t:In},2:{n:"Category",t:Hn},3:{n:"PresentationFormat",t:Hn},4:{n:"ByteCount",t:Nn},5:{n:"LineCount",t:Nn},6:{n:"ParagraphCount",t:Nn},7:{n:"SlideCount",t:Nn},8:{n:"NoteCount",t:Nn},9:{n:"HiddenCount",t:Nn},10:{n:"MultimediaClipCount",t:Nn},11:{n:"ScaleCrop",t:Fn},12:{n:"HeadingPairs",t:Bn},13:{n:"TitlesOfParts",t:Wn},14:{n:"Manager",t:Hn},15:{n:"Company",t:Hn},16:{n:"LinksUpToDate",t:Fn},17:{n:"CharacterCount",t:Nn},19:{n:"SharedDoc",t:Fn},22:{n:"HyperlinksChanged",t:Fn},23:{n:"AppVersion",t:Nn,p:"version"},24:{n:"DigSig",t:Mn},26:{n:"ContentType",t:Hn},27:{n:"ContentStatus",t:Hn},28:{n:"Language",t:Hn},29:{n:"Version",t:Hn},255:{},2147483648:{n:"Locale",t:Pn},2147483651:{n:"Behavior",t:Pn},1919054434:{}};var Gn={1:{n:"CodePage",t:In},2:{n:"Title",t:Hn},3:{n:"Subject",t:Hn},4:{n:"Author",t:Hn},5:{n:"Keywords",t:Hn},6:{n:"Comments",t:Hn},7:{n:"Template",t:Hn},8:{n:"LastAuthor",t:Hn},9:{n:"RevNumber",t:Hn},10:{n:"EditTime",t:Ln},11:{n:"LastPrinted",t:Ln},12:{n:"CreatedDate",t:Ln},13:{n:"ModifiedDate",t:Ln},14:{n:"PageCount",t:Nn},15:{n:"WordCount",t:Nn},16:{n:"CharCount",t:Nn},17:{n:"Thumbnail",t:Un},18:{n:"Application",t:Hn},19:{n:"DocSecurity",t:Nn},255:{},2147483648:{n:"Locale",t:Pn},2147483651:{n:"Behavior",t:Pn},1919054434:{}};var jn={1:"US",2:"CA",3:"",7:"RU",20:"EG",30:"GR",31:"NL",32:"BE",33:"FR",34:"ES",36:"HU",39:"IT",41:"CH",43:"AT",44:"GB",45:"DK",46:"SE",47:"NO",48:"PL",49:"DE",52:"MX",55:"BR",61:"AU",64:"NZ",66:"TH",81:"JP",82:"KR",84:"VN",86:"CN",90:"TR",105:"JS",213:"DZ",216:"MA",218:"LY",351:"PT",354:"IS",358:"FI",420:"CZ",886:"TW",961:"LB",962:"JO",963:"SY",964:"IQ",965:"KW",966:"SA",971:"AE",972:"IL",974:"QA",981:"IR",65535:"US"};var Xn=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function Yn(e){return e.map(function(e){return[e>>16&255,e>>8&255,e&255]})}var Kn=Yn([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,0,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var Zn=yr(Kn);var Jn={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var qn={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255};var Qn=["_xlnm.Consolidate_Area","_xlnm.Auto_Open","_xlnm.Auto_Close","_xlnm.Extract","_xlnm.Database","_xlnm.Criteria","_xlnm.Print_Area","_xlnm.Print_Titles","_xlnm.Recorder","_xlnm.Data_Form","_xlnm.Auto_Activate","_xlnm.Auto_Deactivate","_xlnm.Sheet_Title","_xlnm._FilterDatabase"];var ei={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.sheet.macroEnabled.main+xml":"workbooks","application/vnd.ms-excel.sheet.binary.macroEnabled.main":"workbooks","application/vnd.ms-excel.addin.macroEnabled.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"charts","application/vnd.ms-excel.chartsheet":"charts","application/vnd.ms-excel.macrosheet+xml":"macros","application/vnd.ms-excel.macrosheet":"macros","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"dialogs","application/vnd.ms-excel.dialogsheet":"dialogs","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.customXmlProperties+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.ms-excel.threadedcomments+xml":"threadedcomments","application/vnd.ms-excel.person+xml":"people","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"metadata","application/vnd.ms-excel.sheetMetadata":"metadata","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","application/vnd.ms-office.chartcolorstyle+xml":"TODO","application/vnd.ms-office.chartstyle+xml":"TODO","application/vnd.ms-office.chartex+xml":"TODO","application/vnd.ms-excel.calcChain":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings":"TODO","application/vnd.ms-office.activeX":"TODO","application/vnd.ms-office.activeX+xml":"TODO","application/vnd.ms-excel.attachedToolbars":"TODO","application/vnd.ms-excel.connections":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":"TODO","application/vnd.ms-excel.externalLink":"links","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"links","application/vnd.ms-excel.pivotCacheDefinition":"TODO","application/vnd.ms-excel.pivotCacheRecords":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml":"TODO","application/vnd.ms-excel.queryTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml":"TODO","application/vnd.ms-excel.userNames":"TODO","application/vnd.ms-excel.revisionHeaders":"TODO","application/vnd.ms-excel.revisionLog":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml":"TODO","application/vnd.ms-excel.tableSingleCells":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml":"TODO","application/vnd.ms-excel.slicer":"TODO","application/vnd.ms-excel.slicerCache":"TODO","application/vnd.ms-excel.slicer+xml":"TODO","application/vnd.ms-excel.slicerCache+xml":"TODO","application/vnd.ms-excel.wsSortMap":"TODO","application/vnd.ms-excel.table":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":"TODO","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.themeOverride+xml":"TODO","application/vnd.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"TODO","application/vnd.ms-office.volatileDependencies":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml":"TODO","application/vnd.ms-excel.controlproperties+xml":"TODO","application/vnd.openxmlformats-officedocument.model+data":"TODO","application/vnd.ms-excel.Survey+xml":"TODO","application/vnd.openxmlformats-officedocument.drawing+xml":"drawings","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml":"TODO","application/vnd.openxmlformats-officedocument.vmlDrawing":"TODO","application/vnd.openxmlformats-package.relationships+xml":"rels","application/vnd.openxmlformats-officedocument.oleObject":"TODO","image/png":"TODO",sheet:"js"};var ri={workbooks:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",xlsm:"application/vnd.ms-excel.sheet.macroEnabled.main+xml",xlsb:"application/vnd.ms-excel.sheet.binary.macroEnabled.main",xlam:"application/vnd.ms-excel.addin.macroEnabled.main+xml",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},comments:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",xlsb:"application/vnd.ms-excel.comments"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},charts:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml",xlsb:"application/vnd.ms-excel.chartsheet"},dialogs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml",xlsb:"application/vnd.ms-excel.dialogsheet"},macros:{xlsx:"application/vnd.ms-excel.macrosheet+xml",xlsb:"application/vnd.ms-excel.macrosheet"},metadata:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml",xlsb:"application/vnd.ms-excel.sheetMetadata"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};function ti(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function ai(e){var r=ti();if(!e||!e.match)return r;var t={};(e.match(Yr)||[]).forEach(function(e){var a=Jr(e);switch(a[0].replace(Kr,"<")){case"0?r.calcchains[0]:"";r.sst=r.strs.length>0?r.strs[0]:"";r.style=r.styles.length>0?r.styles[0]:"";r.defaults=t;delete r.calcchains;return r}function ni(e,r,t){var a=cr(ei);var n=[],i;if(!t){n[n.length]=$r;n[n.length]=At("Types",null,{xmlns:Nt.CT,"xmlns:xsd":Nt.xsd,"xmlns:xsi":Nt.xsi});n=n.concat([["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["vml","application/vnd.openxmlformats-officedocument.vmlDrawing"],["data","application/vnd.openxmlformats-officedocument.model+data"],["bmp","image/bmp"],["png","image/png"],["gif","image/gif"],["emf","image/x-emf"],["wmf","image/x-wmf"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["tif","image/tiff"],["tiff","image/tiff"],["pdf","application/pdf"],["rels","application/vnd.openxmlformats-package.relationships+xml"]].map(function(e){return At("Default",null,{Extension:e[0],ContentType:e[1]})}))}var s=function(t){if(e[t]&&e[t].length>0){i=e[t][0];n[n.length]=At("Override",null,{PartName:(i[0]=="/"?"":"/")+i,ContentType:ri[t][r.bookType]||ri[t]["xlsx"]})}};var f=function(t){(e[t]||[]).forEach(function(e){n[n.length]=At("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:ri[t][r.bookType]||ri[t]["xlsx"]})})};var l=function(r){(e[r]||[]).forEach(function(e){n[n.length]=At("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:a[r][0]})})};s("workbooks");f("sheets");f("charts");l("themes");["strs","styles"].forEach(s);["coreprops","extprops","custprops"].forEach(l);l("vba");l("comments");l("threadedcomments");l("drawings");f("metadata");l("people");if(!t&&n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}var ii={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument",HLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",VML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",XPATH:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath",XMISS:"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing",XLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink",CXML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml",CXMLP:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps",CMNT:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",SST:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",STY:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",THEME:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",CHART:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart",CHARTEX:"http://schemas.microsoft.com/office/2014/relationships/chartEx",CS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet",WS:["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet","http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"],DS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet",MS:"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet",IMG:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",DRAW:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",XLMETA:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata",TCMNT:"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment",PEOPLE:"http://schemas.microsoft.com/office/2017/10/relationships/person",CONN:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/connections",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function si(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function fi(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Yr)||[]).forEach(function(e){var n=Jr(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function oi(e,r,t,a,n,i){if(!n)n={};if(!e["!id"])e["!id"]={};if(!e["!idx"])e["!idx"]=1;if(r<0)for(r=e["!idx"];e["!id"]["rId"+r];++r){}e["!idx"]=r+1;n.Id="rId"+r;n.Type=a;n.Target=t;if(i)n.TargetMode=i;else if([ii.HLINK,ii.XPATH,ii.XMISS].indexOf(n.Type)>-1)n.TargetMode="External";if(e["!id"][n.Id])throw new Error("Cannot rewrite rId "+r);e["!id"][n.Id]=n;e[("/"+n.Target).replace("//","/")]=n;return r}var ci="application/vnd.oasis.opendocument.spreadsheet";function ui(e,r){var t=Rt(e);var a;var n;while(a=It.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Jr(a[0],false);if(n.path=="/"&&n.type!==ci)throw new Error("This OpenDocument is not a spreadsheet");break;case"encryption-data":;case"algorithm":;case"start-key-generation":;case"key-derivation":throw new Error("Unsupported ODS Encryption");default:if(r&&r.WTF)throw a;}}function hi(e){var r=[$r];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function di(e,r,t){return[' \n',' \n'," \n"].join("")}function vi(e,r){return[' \n',' \n'," \n"].join("")}function pi(e){var r=[$r];r.push('\n');for(var t=0;t!=e.length;++t){r.push(di(e[t][0],e[t][1]));r.push(vi("",e[t][0]))}r.push(di("","Document","pkg"));r.push("");return r.join("")}function mi(){return'Sheet'+"JS "+e.version+""}var bi=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];var gi=function(){var e=new Array(bi.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function wi(e){var r={};e=mt(e);for(var t=0;t0)r[a[1]]=rt(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=Tr(r[a[1]])}return r}function ki(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=nt(r);a[a.length]=t?At(e,r,t):_t(e,r)}function Ti(e,r){var t=r||{};var a=[$r,At("cp:coreProperties",null,{"xmlns:cp":Nt.CORE_PROPS,"xmlns:dc":Nt.dc,"xmlns:dcterms":Nt.dcterms,"xmlns:dcmitype":Nt.dcmitype,"xmlns:xsi":Nt.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)ki("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:Ct(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)ki("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:Ct(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var i=0;i!=bi.length;++i){var s=bi[i];var f=t.Props&&t.Props[s[1]]!=null?t.Props[s[1]]:e?e[s[1]]:null;if(f===true)f="1";else if(f===false)f="0";else if(typeof f=="number")f=String(f);if(f!=null)ki(s[0],f,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var Ei=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]];var yi=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function Si(e,r,t,a){var n=[];if(typeof e=="string")n=yt(e,a);else for(var i=0;i0)for(var o=0;o!==n.length;o+=2){l=+n[o+1].v;switch(n[o].v){case"Worksheets":;case"工作表":;case"Листы":;case"أوراق العمل":;case"ワークシート":;case"גליונות עבודה":;case"Arbeitsblätter":;case"Çalışma Sayfaları":;case"Feuilles de calcul":;case"Fogli di lavoro":;case"Folhas de cálculo":;case"Planilhas":;case"Regneark":;case"Hojas de cálculo":;case"Werkbladen":t.Worksheets=l;t.SheetNames=s.slice(f,f+l);break;case"Named Ranges":;case"Rangos con nombre":;case"名前付き一覧":;case"Benannte Bereiche":;case"Navngivne områder":t.NamedRanges=l;t.DefinedNames=s.slice(f,f+l);break;case"Charts":;case"Diagramme":t.Chartsheets=l;t.ChartNames=s.slice(f,f+l);break;}f+=l}}function _i(e,r,t){var a={};if(!r)r={};e=mt(e);Ei.forEach(function(t){var n=(e.match(gt(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=rt(n);break;case"bool":r[t[1]]=n==="true";break;case"raw":var i=e.match(new RegExp("<"+t[0]+"[^>]*>([\\s\\S]*?)"));if(i&&i.length>0)a[t[1]]=i[1];break;}});if(a.HeadingPairs&&a.TitlesOfParts)Si(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function xi(e){var r=[],t=At;if(!e)e={};e.Application="SheetJS";r[r.length]=$r;r[r.length]=At("Properties",null,{xmlns:Nt.EXT_PROPS,"xmlns:vt":Nt.vt});Ei.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=nt(String(e[a[1]]));break;case"bool":n=e[a[1]]?"true":"false";break;}if(n!==undefined)r[r.length]=t(a[0],n)});r[r.length]=t("HeadingPairs",t("vt:vector",t("vt:variant","Worksheets")+t("vt:variant",t("vt:i4",String(e.Worksheets))),{size:2,baseType:"variant"}));r[r.length]=t("TitlesOfParts",t("vt:vector",e.SheetNames.map(function(e){return""+nt(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Ai=/<[^>]+>[^<]*/g;function Ci(e,r){var t={},a="";var n=e.match(Ai);if(n)for(var i=0;i!=n.length;++i){var s=n[i],f=Jr(s);switch(qr(f[0])){case"":a=null;break;default:if(s.indexOf("");var o=l[0].slice(4),c=l[1];switch(o){case"lpstr":;case"bstr":;case"lpwstr":t[a]=rt(c);break;case"bool":t[a]=ut(c);break;case"i1":;case"i2":;case"i4":;case"i8":;case"int":;case"uint":t[a]=parseInt(c,10);break;case"r4":;case"r8":;case"decimal":t[a]=parseFloat(c);break;case"filetime":;case"date":t[a]=Tr(c);break;case"cy":;case"error":t[a]=rt(c);break;default:if(o.slice(-1)=="/")break;if(r.WTF&&typeof console!=="undefined")console.warn("Unexpected",s,o,l);}}else if(s.slice(0,2)==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Ri={Title:"Title",Subject:"Subject",Author:"Author",Keywords:"Keywords",Comments:"Description",LastAuthor:"LastAuthor",RevNumber:"Revision",Application:"AppName",LastPrinted:"LastPrinted",CreatedDate:"Created",ModifiedDate:"LastSaved",Category:"Category",Manager:"Manager",Company:"Company",AppVersion:"Version",ContentStatus:"ContentStatus",Identifier:"Identifier",Language:"Language"};var Ii;function Ni(e,r,t){if(!Ii)Ii=lr(Ri);r=Ii[r]||r;e[r]=t}function Fi(e,r){var t=[];sr(Ri).map(function(e){for(var r=0;r'+n.join("")+""}function Pi(e){var r=e._R(4),t=e._R(4);return new Date((t/1e7*Math.pow(2,32)+r/1e7-11644473600)*1e3).toISOString().replace(/\.000/,"")}function Li(e){var r=typeof e=="string"?new Date(Date.parse(e)):e;var t=r.getTime()/1e3+11644473600;var a=t%Math.pow(2,32),n=(t-a)/Math.pow(2,32);a*=1e7;n*=1e7;var i=a/Math.pow(2,32)|0;if(i>0){a=a%Math.pow(2,32);n+=i}var s=wa(8);s._W(4,a);s._W(4,n);return s}function Mi(e,r,t){var a=e.l;var n=e._R(0,"lpstr-cp");if(t)while(e.l-a&3)++e.l;return n}function Ui(e,r,t){var a=e._R(0,"lpwstr");if(t)e.l+=4-(a.length+1&3)&3;return a}function Bi(e,r,t){if(r===31)return Ui(e);return Mi(e,r,t)}function Wi(e,r,t){return Bi(e,r,t===false?0:4)}function Hi(e,r){if(!r)throw new Error("VtUnalignedString must have positive length");return Bi(e,r,0)}function zi(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a){var n=e.l;t[a]=e._R(0,"lpwstr").replace(P,"");if(e.l-n&2)e.l+=2}return t}function Vi(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a)t[a]=e._R(0,"lpstr-cp").replace(P,"");return t}function $i(e){var r=e.l;var t=Ki(e,zn);if(e[e.l]==0&&e[e.l+1]==0&&e.l-r&2)e.l+=2;var a=Ki(e,Nn);return[t,a]}function Gi(e){var r=e._R(4);var t=[];for(var a=0;a>2+1<<2;return a}function Xi(e){var r=e._R(4);var t=e.slice(e.l,e.l+r);e.l+=r;if((r&3)>0)e.l+=4-(r&3)&3;return t}function Yi(e){var r={};r.Size=e._R(4);e.l+=r.Size+3-(r.Size-1)%4;return r}function Ki(e,r,t){var a=e._R(2),n,i=t||{};e.l+=2;if(r!==Dn)if(a!==r&&Vn.indexOf(r)===-1&&!((r&65534)==4126&&(a&65534)==4126))throw new Error("Expected type "+r+" saw "+a);switch(r===Dn?a:r){case 2:n=e._R(2,"i");if(!i.raw)e.l+=2;return n;case 3:n=e._R(4,"i");return n;case 11:return e._R(4)!==0;case 19:n=e._R(4);return n;case 30:return Mi(e,a,4).replace(P,"");case 31:return Ui(e);case 64:return Pi(e);case 65:return Xi(e);case 71:return Yi(e);case 80:return Wi(e,a,!i.raw).replace(P,"");case 81:return Hi(e,a).replace(P,"");case 4108:return Gi(e);case 4126:;case 4127:return a==4127?zi(e):Vi(e);default:throw new Error("TypedPropertyValue unrecognized type "+r+" "+a);}}function Zi(e,r){var t=wa(4),a=wa(4);t._W(4,e==80?31:e);switch(e){case 3:a._W(-4,r);break;case 5:a=wa(8);a._W(8,r,"f");break;case 11:a._W(4,r?1:0);break;case 64:a=Li(r);break;case 31:;case 80:a=wa(4+2*(r.length+1)+(r.length%2?0:2));a._W(4,r.length+1);a._W(0,r,"dbcs");while(a.l!=a.length)a._W(1,0);break;default:throw new Error("TypedPropertyValue unrecognized type "+e+" "+r);}return F([t,a])}function Ji(e,r){var t=e.l;var a=e._R(4);var n=e._R(4);var i=[],s=0;var f=0;var o=-1,c={};for(s=0;s!=n;++s){var u=e._R(4);var h=e._R(4);i[s]=[u,h+t]}i.sort(function(e,r){return e[1]-r[1]});var d={};for(s=0;s!=n;++s){if(e.l!==i[s][1]){var v=true;if(s>0&&r)switch(r[i[s-1][0]].t){case 2:if(e.l+2===i[s][1]){e.l+=2;v=false}break;case 80:if(e.l<=i[s][1]){e.l=i[s][1];v=false}break;case 4108:if(e.l<=i[s][1]){e.l=i[s][1];v=false}break;}if((!r||s==0)&&e.l<=i[s][1]){v=false;e.l=i[s][1]}if(v)throw new Error("Read Error: Expected address "+i[s][1]+" at "+e.l+" :"+s)}if(r){if(i[s][0]==0&&i.length>s+1&&i[s][1]==i[s+1][1])continue;var p=r[i[s][0]];d[p.n]=Ki(e,p.t,{raw:true});if(p.p==="version")d[p.n]=String(d[p.n]>>16)+"."+("0000"+String(d[p.n]&65535)).slice(-4);if(p.n=="CodePage")switch(d[p.n]){case 0:d[p.n]=1252;case 874:;case 932:;case 936:;case 949:;case 950:;case 1250:;case 1251:;case 1253:;case 1254:;case 1255:;case 1256:;case 1257:;case 1258:;case 1e4:;case 1200:;case 1201:;case 1252:;case 65e3:;case-536:;case 65001:;case-535:l(f=d[p.n]>>>0&65535);break;default:throw new Error("Unsupported CodePage: "+d[p.n]);}}else{if(i[s][0]===1){f=d.CodePage=Ki(e,In);l(f);if(o!==-1){var m=e.l;e.l=i[o][1];c=ji(e,f);e.l=m}}else if(i[s][0]===0){if(f===0){o=s;e.l=i[s+1][1];continue}c=ji(e,f)}else{var b=c[i[s][0]];var g;switch(e[e.l]){case 65:e.l+=4;g=Xi(e);break;case 30:e.l+=4;g=Wi(e,e[e.l-4]).replace(/\u0000+$/,"");break;case 31:e.l+=4;g=Wi(e,e[e.l-4]).replace(/\u0000+$/,"");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=ss(e,4);break;case 64:e.l+=4;g=Tr(Pi(e));break;default:throw new Error("unparsed value: "+e[e.l]);}d[b]=g}}}e.l=t+a;return d}var qi=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function Qi(e){switch(typeof e){case"boolean":return 11;case"number":return(e|0)==e?3:5;case"string":return 31;case"object":if(e instanceof Date)return 64;break;}return-1}function es(e,r,t){var a=wa(8),n=[],i=[];var s=8,f=0;var l=wa(8),o=wa(8);l._W(4,2);l._W(4,1200);o._W(4,1);i.push(l);n.push(o);s+=8+l.length;if(!r){o=wa(8);o._W(4,0);n.unshift(o);var c=[wa(4)];c[0]._W(4,e.length);for(f=0;f-1||yi.indexOf(e[f][0])>-1)continue;if(e[f][1]==null)continue;var h=e[f][1],d=0;if(r){d=+r[e[f][0]];var v=t[d];if(v.p=="version"&&typeof h=="string"){var p=h.split(".");h=(+p[0]<<16)+(+p[1]||0)}l=Zi(v.t,h)}else{var m=Qi(h);if(m==-1){m=31;h=String(h)}l=Zi(m,h)}i.push(l);o=wa(8);o._W(4,!r?2+f:d);n.push(o);s+=8+l.length}var b=8*(i.length+1);for(f=0;f=12?2:1);var i="sbcs-cont";var s=r;if(a&&a.biff>=8)r=1200;if(!a||a.biff==8){var f=e._R(1);if(f){i="dbcs-cont"}}else if(a.biff==12){i="wstr"}if(a.biff>=2&&a.biff<=5)i="cpstr";var l=n?e._R(n,i):"";r=s;return l}function vs(e){var t=r;r=1200;var a=e._R(2),n=e._R(1);var i=n&4,s=n&8;var f=1+(n&1);var l=0,o;var c={};if(s)l=e._R(2);if(i)o=e._R(4);var u=f==2?"dbcs-cont":"sbcs-cont";var h=a===0?"":e._R(a,u);if(s)e.l+=4*l;if(i)e.l+=o;c.t=h;if(!s){c.raw=""+c.t+"";c.r=c.t}r=t;return c}function ps(e){var r=e.t||"",t=1;var a=wa(3+(t>1?2:0));a._W(2,r.length);a._W(1,(t>1?8:0)|1);if(t>1)a._W(2,t);var n=wa(2*r.length);n._W(2*r.length,r,"utf16le");var i=[a,n];return F(i)}function ms(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 bs(e,r,t){var a=e._R(t&&t.biff==2?1:2);if(a===0){e.l++;return""}return ms(e,a,t)}function gs(e,r,t){if(t.biff>5)return bs(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 ws(e,r,t){if(!t)t=wa(3+2*e.length);t._W(2,e.length);t._W(1,1);t._W(31,e,"utf16le");return t}function ks(e){var r=e._R(1);e.l++;var t=e._R(2);e.l+=2;return[r,t]}function Ts(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(P,"");if(a)e.l+=24;return n}function Es(e){var r=e._R(2);var t="";while(r-- >0)t+="../";var a=e._R(0,"lpstr-ansi");e.l+=2;if(e._R(2)!=57005)throw new Error("Bad FileMoniker");var n=e._R(4);if(n===0)return t+a.replace(/\\/g,"/");var i=e._R(4);if(e._R(2)!=3)throw new Error("Bad FileMoniker");var s=e._R(i>>1,"utf16le").replace(P,"");return t+s}function ys(e,r){var t=e._R(16);r-=16;switch(t){case"e0c9ea79f9bace118c8200aa004ba90b":return Ts(e,r);case"0303000000000000c000000000000046":return Es(e,r);default:throw new Error("Unsupported Moniker "+t);}}function Ss(e){var r=e._R(4);var t=r>0?e._R(r,"utf16le").replace(P,""):"";return t}function _s(e,r){if(!r)r=wa(6+e.length*2);r._W(4,1+e.length);for(var t=0;t-1?31:23;switch(a.charAt(0)){case"#":i=28;break;case".":i&=~2;break;}r._W(4,2);r._W(4,i);var s=[8,6815827,6619237,4849780,83];for(t=0;t-1?a.slice(0,n):a;r._W(4,2*(f.length+1));for(t=0;t-1?a.slice(n+1):"",r)}else{s="03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46".split(" ");for(t=0;t8?4:2;var n=e._R(a),i=e._R(a,"i"),s=e._R(a,"i");return[n,i,s]}function Ps(e){var r=e._R(2);var t=mn(e);return[r,t]}function Ls(e,r,t){e.l+=4;r-=4;var a=e.l+r;var n=ds(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 Ms(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 Us(e,r){if(!r)r=wa(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 Bs(e){var r=e._R(2);var t=e._R(2);var a=e._R(1);var n=e._R(1);return{s:{c:a,r:r},e:{c:n,r:t}}}var Ws=Bs;function Hs(e){e.l+=4;var r=e._R(2);var t=e._R(2);var a=e._R(2);e.l+=12;return[t,r,a]}function zs(e){var r={};e.l+=4;e.l+=16;r.fSharedNote=e._R(2);e.l+=4;return r}function Vs(e){var r={};e.l+=4;e.cf=e._R(2);return r}function $s(e){e.l+=2;e.l+=e._R(2)}var Gs={0:$s,4:$s,5:$s,6:$s,7:Vs,8:$s,9:$s,10:$s,11:$s,12:$s,13:zs,14:$s,15:$s,16:$s,17:$s,18:$s,19:$s,20:$s,21:Hs};function js(e,r){var t=e.l+r;var a=[];while(e.l=2){t.dt=e._R(2);e.l-=2}switch(t.BIFFVer){case 1536:;case 1280:;case 1024:;case 768:;case 512:;case 2:;case 7:break;default:if(r>6)throw new Error("Unexpected BIFF Ver "+t.BIFFVer);}e._R(r);return t}function Ys(e,r,t){var a=1536,n=16;switch(t.bookType){case"biff8":break;case"biff5":a=1280;n=8;break;case"biff4":a=4;n=6;break;case"biff3":a=3;n=6;break;case"biff2":a=2;n=4;break;case"xla":break;default:throw new Error("unsupported BIFF version");}var i=wa(n);i._W(2,a);i._W(2,r);if(n>4)i._W(2,29282);if(n>6)i._W(2,1997);if(n>8){i._W(2,49161);i._W(2,1);i._W(2,1798);i._W(2,0)}return i}function Ks(e,r){if(r===0)return 1200;if(e._R(2)!==1200){}return 1200}function Zs(e,r,t){if(t.enc){e.l+=r;return""}var a=e.l;var n=gs(e,0,t);e._R(r+a-e.l);return n}function Js(e,r){var t=!r||r.biff==8;var a=wa(t?112:54);a._W(r.biff==8?2:1,7);if(t)a._W(1,0);a._W(4,859007059);a._W(4,5458548|(t?0:536870912));while(a.l=8?2:1;var a=wa(8+t*e.name.length);a._W(4,e.pos);a._W(1,e.hs||0);a._W(1,e.dt);a._W(1,e.name.length);if(r.biff>=8)a._W(1,1);a._W(t*e.name.length,e.name,r.biff<8?"sbcs":"utf16le");var n=a.slice(0,a.l);n.l=a.l;return n}function rf(e,r){var t=e.l+r;var a=e._R(4);var n=e._R(4);var i=[];for(var s=0;s!=n&&e.l>15);n&=32767}var i={Unsynced:a&1,DyZero:(a&2)>>1,ExAsc:(a&4)>>2,ExDsc:(a&8)>>3};return[i,n]}function of(e){var r=e._R(2),t=e._R(2),a=e._R(2),n=e._R(2);var i=e._R(2),s=e._R(2),f=e._R(2);var l=e._R(2),o=e._R(2);return{Pos:[r,t],Dim:[a,n],Flags:i,CurTab:s,FirstTab:f,Selected:l,TabRatio:o}}function cf(){var e=wa(18);e._W(2,0);e._W(2,0);e._W(2,29280);e._W(2,17600);e._W(2,56);e._W(2,0);e._W(2,0);e._W(2,1);e._W(2,500);return e}function uf(e,r,t){if(t&&t.biff>=2&&t.biff<5)return{};var a=e._R(2);return{RTL:a&64}}function hf(e){var r=wa(18),t=1718;if(e&&e.RTL)t|=64;r._W(2,t);r._W(4,0);r._W(4,64);r._W(4,0);r._W(4,0);return r}function df(){}function vf(e,r,t){var a={dyHeight:e._R(2),fl:e._R(2)};switch(t&&t.biff||8){case 2:break;case 3:;case 4:e.l+=2;break;default:e.l+=10;break;}a.name=ds(e,0,t);return a}function pf(e,r){var t=e.name||"Arial";var a=r&&r.biff==5,n=a?15+t.length:16+2*t.length;var i=wa(n);i._W(2,(e.sz||12)*20);i._W(4,0);i._W(2,400);i._W(4,0);i._W(2,0);i._W(1,t.length);if(!a)i._W(1,1);i._W((a?1:2)*t.length,t,a?"sbcs":"utf16le");return i}function mf(e){var r=Rs(e);r.isst=e._R(4);return r}function bf(e,r,t,a){var n=wa(10);Is(e,r,a,n);n._W(4,t);return n}function gf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=e.l+r;var n=Rs(e,6);if(t.biff==2)e.l++;var i=bs(e,a-e.l,t);n.val=i;return n}function wf(e,r,t,a,n){var i=!n||n.biff==8;var s=wa(6+2+ +i+(1+i)*t.length);Is(e,r,a,s);s._W(2,t.length);if(i)s._W(1,1);s._W((1+i)*t.length,t,i?"utf16le":"sbcs");return s}function kf(e,r,t){var a=e._R(2);var n=gs(e,0,t);return[a,n]}function Tf(e,r,t,a){var n=t&&t.biff==5;if(!a)a=wa(n?3+r.length:5+2*r.length);a._W(2,e);a._W(n?1:2,r.length);if(!n)a._W(1,1);a._W((n?1:2)*r.length,r,n?"sbcs":"utf16le");var i=a.length>a.l?a.slice(0,a.l):a;if(i.l==null)i.l=i.length;return i}var Ef=gs;function yf(e,r,t){var a=e.l+r;var n=t.biff==8||!t.biff?4:2;var i=e._R(n),s=e._R(n);var f=e._R(2),l=e._R(2);e.l=a;return{s:{r:i,c:f},e:{r:s,c:l}}}function Sf(e,r){var t=r.biff==8||!r.biff?4:2;var a=wa(2*t+6);a._W(t,e.s.r);a._W(t,e.e.r+1);a._W(2,e.s.c);a._W(2,e.e.c+1);a._W(2,0);return a}function _f(e){var r=e._R(2),t=e._R(2);var a=Ps(e);return{r:r,c:t,ixfe:a[0],rknum:a[1]}}function xf(e,r){var t=e.l+r-2;var a=e._R(2),n=e._R(2);var i=[];while(e.l>26];if(!a.cellStyles)return n;n.alc=i&7;n.fWrap=i>>3&1;n.alcV=i>>4&7;n.fJustLast=i>>7&1;n.trot=i>>8&255;n.cIndent=i>>16&15;n.fShrinkToFit=i>>20&1;n.iReadOrder=i>>22&2;n.fAtrNum=i>>26&1;n.fAtrFnt=i>>27&1;n.fAtrAlc=i>>28&1;n.fAtrBdr=i>>29&1;n.fAtrPat=i>>30&1;n.fAtrProt=i>>31&1;n.dgLeft=s&15;n.dgRight=s>>4&15;n.dgTop=s>>8&15;n.dgBottom=s>>12&15;n.icvLeft=s>>16&127;n.icvRight=s>>23&127;n.grbitDiag=s>>30&3;n.icvTop=f&127;n.icvBottom=f>>7&127;n.icvDiag=f>>14&127;n.dgDiag=f>>21&15;n.icvFore=l&127;n.icvBack=l>>7&127;n.fsxButton=l>>14&1;return n}function Of(e,r,t){var a={};a.ifnt=e._R(2);a.numFmtId=e._R(2);a.flags=e._R(2);a.fStyle=a.flags>>2&1;r-=6;a.data=Cf(e,r,a.fStyle,t);return a}function Rf(e,r,t,a){var n=t&&t.biff==5;if(!a)a=wa(n?16:20);a._W(2,0);if(e.style){a._W(2,e.numFmtId||0);a._W(2,65524)}else{a._W(2,e.numFmtId||0);a._W(2,r<<4)}var i=0;if(e.numFmtId>0&&n)i|=1024;a._W(4,i);a._W(4,0);if(!n)a._W(4,0);a._W(2,0);return a}function If(e){e.l+=4;var r=[e._R(2),e._R(2)];if(r[0]!==0)r[0]--;if(r[1]!==0)r[1]--;if(r[0]>7||r[1]>7)throw new Error("Bad Gutters: "+r.join("|"));return r}function Nf(e){var r=wa(8);r._W(4,0);r._W(2,e[0]?e[0]+1:0);r._W(2,e[1]?e[1]+1:0);return r}function Ff(e,r,t){var a=Rs(e,6);if(t.biff==2||r==9)++e.l;var n=us(e,2);a.val=n;a.t=n===true||n===false?"b":"e";return a}function Df(e,r,t,a,n,i){var s=wa(8);Is(e,r,a,s);hs(t,i,s);return s}function Pf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=Rs(e,6);var n=En(e,8);a.val=n;return a}function Lf(e,r,t,a){var n=wa(14);Is(e,r,a,n);yn(t,n);return n}var Mf=Fs;function Uf(e,r,t){var a=e.l+r;var n=e._R(2);var i=e._R(2);t.sbcch=i;if(i==1025||i==14849)return[i,n];if(i<1||i>255)throw new Error("Unexpected SupBook type: "+i);var s=ms(e,i);var f=[];while(a>e.l)f.push(bs(e));return[i,n,s,f]}function Bf(e,r,t){var a=e._R(2);var n;var i={fBuiltIn:a&1,fWantAdvise:a>>>1&1,fWantPict:a>>>2&1,fOle:a>>>3&1,fOleLink:a>>>4&1,cf:a>>>5&1023,fIcon:a>>>15&1};if(t.sbcch===14849)n=Ls(e,r-2,t);i.body=n||e._R(r-2);if(typeof n==="string")i.Name=n;return i}function Wf(e,r,t){var a=e.l+r;var n=e._R(2);var i=e._R(1);var s=e._R(1);var f=e._R(t&&t.biff==2?1:2);var l=0;if(!t||t.biff>=5){if(t.biff!=5)e.l+=2;l=e._R(2);if(t.biff==5)e.l+=2;e.l+=4}var o=ms(e,s,t);if(n&32)o=Qn[o.charCodeAt(0)];var c=a-e.l;if(t&&t.biff==2)--c;var u=a==e.l||f===0||!(c>0)?[]:kd(e,c,t,f);return{chKey:i,Name:o,itab:l,rgce:u}}function Hf(e,r,t){if(t.biff<8)return zf(e,r,t);var a=[],n=e.l+r,i=e._R(t.biff>8?4:2);while(i--!==0)a.push(Ds(e,t.biff>8?12:6,t));if(e.l!=n)throw new Error("Bad ExternSheet: "+e.l+" != "+n);return a}function zf(e,r,t){if(e[e.l+1]==3)e[e.l]++;var a=ds(e,r,t);return a.charCodeAt(0)==3?a.slice(1):a}function Vf(e,r,t){if(t.biff<8){e.l+=r;return}var a=e._R(2);var n=e._R(2);var i=ms(e,a,t);var s=ms(e,n,t);return[i,s]}function $f(e,r,t){var a=Bs(e,6);e.l++;var n=e._R(1);r-=8;return[Td(e,r,t),n,a]}function Gf(e,r,t){var a=Ws(e,6);switch(t.biff){case 2:e.l++;r-=7;break;case 3:;case 4:e.l+=2;r-=8;break;default:e.l+=6;r-=12;}return[a,gd(e,r,t,a)]}function jf(e){var r=e._R(4)!==0;var t=e._R(4)!==0;var a=e._R(4);return[r,t,a]}function Xf(e,r,t){if(t.biff<8)return;var a=e._R(2),n=e._R(2);var i=e._R(2),s=e._R(2);var f=gs(e,0,t);if(t.biff<8)e._R(1);return[{r:a,c:n},f,s,i]}function Yf(e,r,t){return Xf(e,r,t)}function Kf(e,r){var t=[];var a=e._R(2);while(a--)t.push(Ms(e,r));return t}function Zf(e){var r=wa(2+e.length*8);r._W(2,e.length);for(var t=0;t=(c?f:2*f))break}if(n.length!==f&&n.length!==f*2){throw new Error("cchText: "+f+" != "+n.length)}e.l=a+r;return{t:n}}catch(h){e.l=a+r;return{t:n}}}function rl(e,r){var t=Ms(e,8);e.l+=16;var a=xs(e,r-24);return[t,a]}function tl(e){var r=wa(24);var t=La(e[0]);r._W(2,t.r);r._W(2,t.r);r._W(2,t.c);r._W(2,t.c);var a="d0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" ");for(var n=0;n<16;++n)r._W(1,parseInt(a[n],16));return F([r,As(e[1])])}function al(e,r){e._R(2);var t=Ms(e,8);var a=e._R((r-10)/2,"dbcs-cont");a=a.replace(P,"");return[t,a]}function nl(e){var r=e[1].Tooltip;var t=wa(10+2*(r.length+1));t._W(2,2048);var a=La(e[0]);t._W(2,a.r);t._W(2,a.r);t._W(2,a.c);t._W(2,a.c);for(var n=0;n0)t.push(Os(e,8));return t}function ll(e){var r=e._R(2);var t=[];while(r-- >0)t.push(Os(e,8));return t}function ol(e){e.l+=2;var r={cxfs:0,crc:0};r.cxfs=e._R(2);r.crc=e._R(4);return r}function cl(e,r,t){if(!t.cellStyles)return ga(e,r);var a=t&&t.biff>=12?4:2;var n=e._R(a);var i=e._R(a);var s=e._R(a);var f=e._R(a);var l=e._R(2);if(a==2)e.l+=2;var o={s:n,e:i,w:s,ixfe:f,flags:l};if(t.biff>=5||!t.biff)o.level=l>>8&7;return o}function ul(e,r){var t=wa(12);t._W(2,r);t._W(2,r);t._W(2,e.width*256);t._W(2,0);var a=0;if(e.hidden)a|=1;t._W(1,a);a=e.level||0;t._W(1,a);t._W(2,0);return t}function hl(e,r){var t={};if(r<32)return t;e.l+=16;t.header=En(e,8);t.footer=En(e,8);e.l+=2;return t}function dl(e,r,t){var a={area:false};if(t.biff!=5){e.l+=r;return a}var n=e._R(1);e.l+=3;if(n&16)a.area=true;return a}function vl(e){var r=wa(2*e);for(var t=0;t1048576)c=1e6;if(s!=2)u=i._R(2);var h=i._R(2);var d=t.codepage||1252;if(s!=2){i.l+=16;i._R(1);if(i[i.l]!==0)d=e[i[i.l]];i.l+=1;i.l+=2}if(o)i.l+=36;var v=[],p={};var m=Math.min(i.length,s==2?521:u-10-(l?264:0));var b=o?32:11;while(i.l0){if(i[i.l]===42){i.l+=h;continue}++i.l;n[++g]=[];w=0;for(w=0;w!=v.length;++w){var k=i.slice(i.l,i.l+v[w].len);i.l+=v[w].len;ba(k,0);var T=typeof a!=="undefined"?a.utils.decode(d,k):R(k);switch(v[w].type){case"C":if(T.trim().length)n[g][w]=T.replace(/\s+$/,"");break;case"D":if(T.length===8)n[g][w]=new Date(+T.slice(0,4),+T.slice(4,6)-1,+T.slice(6,8));else n[g][w]=T;break;case"F":n[g][w]=parseFloat(T.trim());break;case"+":;case"I":n[g][w]=o?k._R(-4,"i")^2147483648:k._R(4,"i");break;case"L":switch(T.trim().toUpperCase()){case"Y":;case"T":n[g][w]=true;break;case"N":;case"F":n[g][w]=false;break;case"":;case"?":break;default:throw new Error("DBF Unrecognized L:|"+T+"|");}break;case"M":if(!f)throw new Error("DBF Unexpected MEMO for type "+s.toString(16));n[g][w]="##MEMO##"+(o?parseInt(T.trim(),10):k._R(4));break;case"N":T=T.replace(/\u0000/g,"").trim();if(T&&T!=".")n[g][w]=+T||0;break;case"@":n[g][w]=new Date(k._R(-8,"f")-621356832e5);break;case"T":n[g][w]=new Date((k._R(4)-2440588)*864e5+k._R(4));break;case"Y":n[g][w]=k._R(4,"i")/1e4+k._R(4,"i")/1e4*Math.pow(2,32);break;case"O":n[g][w]=-k._R(-8,"f");break;case"B":if(l&&v[w].len==8){n[g][w]=k._R(8,"f");break};case"G":;case"P":k.l+=v[w].len;break;case"0":if(v[w].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+v[w].type);}}}if(s!=2)if(i.l=0)l(+f.codepage);if(f.type=="string")throw new Error("Cannot write DBF to JS string");var u=Ta();var h=ak(i,{header:1,raw:true,cellDates:true});var d=h[0],v=h.slice(1),p=i["!cols"]||[];var m=0,b=0,g=0,w=1;for(m=0;m250)x=250;_=((p[m]||{}).DBF||{}).type;if(_=="C"){if(p[m].DBF.len>x)x=p[m].DBF.len}if(S=="B"&&_=="N"){S="N";y[m]=p[m].DBF.dec;x=p[m].DBF.len}E[m]=S=="C"||_=="N"?x:o[S]||0;w+=E[m];T[m]=S}var C=u.next(32);C._W(4,318902576);C._W(4,v.length);C._W(2,296+32*g);C._W(2,w);for(m=0;m<4;++m)C._W(4,0);var O=+n[r]||3;C._W(4,0|O<<8);if(e[O]!=+f.codepage){if(f.codepage)console.error("DBF Unsupported codepage "+r+", using 1252");r=1252}for(m=0,b=0;mE[b])D=D.slice(0,E[b]);for(g=0;g":190,"?":191,"{":223};var r=new RegExp("N("+sr(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm");var t=function(r,t){var a=e[t];return typeof a=="number"?p(a):a};var n=function(e,r,t){var a=r.charCodeAt(0)-32<<4|t.charCodeAt(0)-48;return a==59?e:p(a)};e["|"]=254;function i(e,r){switch(r.type){case"base64":return s(E(e),r);case"binary":return s(e,r);case"buffer":return s(y&&Buffer.isBuffer(e)?e.toString("binary"):R(e),r);case"array":return s(Er(e),r);}throw new Error("Unrecognized type "+r.type)}function s(e,i){var s=e.split(/[\n\r]+/),f=-1,o=-1,c=0,u=0,h=[];var d=[];var v=null;var p={},m=[],b=[],g=[];var w=0,k;var T={Workbook:{WBProps:{},Names:[]}};if(+i.codepage>=0)l(+i.codepage);for(;c!==s.length;++c){w=0;var E=s[c].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,n).replace(r,t);var y=E.replace(/;;/g,"\0").split(";").map(function(e){return e.replace(/\u0000/g,";")});var S=y[0],_;if(E.length>0)switch(S){case"ID":break;case"E":break;case"B":break;case"O":for(u=1;u=1&&x<=4)T.Workbook.WBProps.date1904=true}break;}break;case"W":break;case"P":switch(y[1].charAt(0)){case"P":d.push(E.slice(3).replace(/;;/g,";"));break;}break;case"NN":{var A={Sheet:0};for(u=1;u-1&&h[N][F];if(!L||!L[1])throw new Error("SYLK shared formula cannot find base");D=Bu(L[1],{r:f-N,c:o-F})}if(D){if(!h[f][o])h[f][o]={t:"n",f:D};else h[f][o].f=D}break;case"F":var M=0;for(u=1;u0){m[f].hpt=w;m[f].hpx=Go(w)}else if(w===0)m[f].hidden=true;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+E);}if(M<1)v=null;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+E);}}if(m.length>0)p["!rows"]=m;if(b.length>0)p["!cols"]=b;b.forEach(function(e){Ho(e)});if(i&&i.sheetRows)h=h.slice(0,i.sheetRows);return[h,p,T]}function f(e,r){var t=i(e,r);var a=t[0],n=t[1],s=t[2];var f=yr(r);f.date1904=(((s||{}).Workbook||{}).WBProps||{}).date1904;var l=Xa(a,f);sr(n).forEach(function(e){l[e]=n[e]});var o=Ga(l,r);sr(s).forEach(function(e){o[e]=s[e]});o.bookType="sylk";return o}function o(e,r,t,a){var n="C;Y"+(t+1)+";X"+(a+1)+";K";switch(e.t){case"n":n+=e.v||0;if(e.f&&!e.F)n+=";E"+Uu(e.f,{r:t,c:a});break;case"b":n+=e.v?"TRUE":"FALSE";break;case"e":n+=e.w||e.v;break;case"d":n+='"'+(e.w||e.v)+'"';break;case"s":n+='"'+(e.v==null?"":String(e.v)).replace(/"/g,"").replace(/;/g,";;")+'"';break;}return n}function c(e,r){r.forEach(function(r,t){var a="F;W"+(t+1)+" "+(t+1)+" ";if(r.hidden)a+="0";else{if(typeof r.width=="number"&&!r.wpx)r.wpx=Lo(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=Mo(r.wpx);if(typeof r.wch=="number")a+=Math.round(r.wch)}if(a.charAt(a.length-1)!=" ")e.push(a)})}function u(e,r){r.forEach(function(r,t){var a="F;";if(r.hidden)a+="M0;";else if(r.hpt)a+="M"+20*r.hpt+";";else if(r.hpx)a+="M"+20*$o(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function h(e,r,t){var a=["ID;PSheetJS;N;E"],n=[];var i=za(e["!ref"]),s;var f=e["!data"]!=null;var l="\r\n";var h=(((t||{}).Workbook||{}).WBProps||{}).date1904;a.push("P;PGeneral");a.push("F;P0;DG0G8;M255");if(e["!cols"])c(a,e["!cols"]);if(e["!rows"])u(a,e["!rows"]);a.push("B;Y"+(i.e.r-i.s.r+1)+";X"+(i.e.c-i.s.c+1)+";D"+[i.s.c,i.s.r,i.e.c,i.e.r].join(" "));a.push("O;L;D;B"+(h?";V4":"")+";K47;G100 0.001");for(var d=i.s.r;d<=i.e.r;++d){if(f&&!e["!data"][d])continue;var v=[];for(var p=i.s.c;p<=i.e.c;++p){s=f?e["!data"][d][p]:e[Na(p)+Ca(d)];if(!s||s.v==null&&(!s.f||s.F))continue;v.push(o(s,e,d,p,r))}n.push(v.join(l))}return a.join(l)+l+n.join(l)+l+"E"+l}return{to_workbook:f,from_sheet:h}}();var Rl=function(){function e(e,t){switch(t.type){case"base64":return r(E(e),t);case"binary":return r(e,t);case"buffer":return r(y&&Buffer.isBuffer(e)?e.toString("binary"):R(e),t);case"array":return r(Er(e),t);}throw new Error("Unrecognized type "+t.type)}function r(e,r){var t=e.split("\n"),a=-1,n=-1,i=0,s=[];for(;i!==t.length;++i){if(t[i].trim()==="BOT"){s[++a]=[];n=0;continue}if(a<0)continue;var f=t[i].trim().split(",");var l=f[0],o=f[1];++i;var c=t[i]||"";while((c.match(/["]/g)||[]).length&1&&i=0&&i[s].length===0)--s;var f=10,l=0;var o=0;for(;o<=s;++o){l=i[o].indexOf(" ");if(l==-1)l=i[o].length;else l++;f=Math.max(f,l)}for(o=0;o<=s;++o){n[o]=[];var c=0;e(i[o].slice(0,f).trim(),n,o,c,a);for(c=1;c<=(i[o].length-f)/10+1;++c)e(i[o].slice(f+(c-1)*10,f+c*10).trim(),n,o,c,a)}if(a.sheetRows)n=n.slice(0,a.sheetRows);return n}var t={44:",",9:"\t",59:";",124:"|"};var n={44:3,9:2,59:1,124:0};function i(e){var r={},a=false,i=0,s=0;for(;i0)g();n["!ref"]=Ba(s);return n}function f(e,t){if(!(t&&t.PRN))return s(e,t);if(t.FS)return s(e,t);if(e.slice(0,4)=="sep=")return s(e,t);if(e.indexOf("\t")>=0||e.indexOf(",")>=0||e.indexOf(";")>=0)return s(e,t);return Xa(r(e,t),t)}function l(e,r){var t="",n=r.type=="string"?[0,0,0,0]:Iw(e,r);switch(r.type){case"base64":t=E(e);break;case"binary":t=e;break;case"buffer":if(r.codepage==65001)t=e.toString("utf8");else if(r.codepage&&typeof a!=="undefined")t=a.utils.decode(r.codepage,e);else t=y&&Buffer.isBuffer(e)?e.toString("binary"):R(e);break;case"array":t=Er(e);break;case"string":t=e;break;default:throw new Error("Unrecognized type "+r.type);}if(n[0]==239&&n[1]==187&&n[2]==191)t=mt(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=mt(t);else if(r.type=="binary"&&typeof a!=="undefined"&&r.codepage)t=a.utils.decode(r.codepage,a.utils.encode(28591,t));if(t.slice(0,19)=="socialcalc:version:")return Il.to_sheet(r.type=="string"?t:mt(t),r);return f(t,r)}function o(e,r){return Ga(l(e,r),r)}function c(e){var r=[];var t=za(e["!ref"]),a;var n=e["!data"]!=null;for(var i=t.s.r;i<=t.e.r;++i){var s=[];for(var f=t.s.c;f<=t.e.c;++f){var l=Ma({r:i,c:f});a=n?(e["!data"][i]||[])[f]:e[l];if(!a||a.v==null){s.push(" ");continue}var o=(a.w||($a(a),a.w)||"").slice(0,10);while(o.length<10)o+=" ";s.push(o+(f===0?" ":""))}r.push(s.join(""))}return r.join("\n")}return{to_workbook:o,to_sheet:l,from_sheet:c}}();function Fl(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=Ol.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 Nl.to_workbook(e,r)}}var Dl=function(){function e(e,r,t){if(!e)return;ba(e,e.l||0);var a=t.Enum||H;while(e.l=16&&r[14]==5&&r[15]===108)throw new Error("Unsupported Works 3 for Mac file")}}if(r[2]==2){a.Enum=H;e(r,function(e,r,t){switch(t){case 0:a.vers=e;if(e>=4096)a.qpro=true;break;case 255:a.vers=e;a.works=true;break;case 6:h=e;break;case 204:if(e)s=e;break;case 222:s=e;break;case 15:;case 51:if((!a.qpro&&!a.works||t==51)&&e[1].v.charCodeAt(0)<48)e[1].v=e[1].v.slice(1);if(a.works||a.works2)e[1].v=e[1].v.replace(/\r\n/g,"\n");case 13:;case 14:;case 16:if(t==14&&(e[2]&112)==112&&(e[2]&15)>1&&(e[2]&15)<15){e[1].z=a.dateNF||Z[14];if(a.cellDates){e[1].t="d";e[1].v=mr(e[1].v)}}if(a.qpro){if(e[3]>f){n["!ref"]=Ba(h);l[i]=n;o.push(i);n={};if(a.dense)u=n["!data"]=[];h={s:{r:0,c:0},e:{r:0,c:0}};f=e[3];i=s||"Sheet"+(f+1);s=""}}var c=a.dense?(u[e[0].r]||[])[e[0].c]:n[Ma(e[0])];if(c){c.t=e[1].t;c.v=e[1].v;if(e[1].z!=null)c.z=e[1].z;if(e[1].f!=null)c.f=e[1].f;break}if(a.dense){if(!u[e[0].r])u[e[0].r]=[];u[e[0].r][e[0].c]=e[1]}else n[Ma(e[0])]=e[1];break;case 21509:a.works2=true;break;default:;}},a)}else if(r[2]==26||r[2]==14){a.Enum=z;if(r[2]==14){a.qpro=true;r.l=0}e(r,function(e,r,t){switch(t){case 204:i=e;break;case 22:if(e[1].v.charCodeAt(0)<48)e[1].v=e[1].v.slice(1);e[1].v=e[1].v.replace(/\x0F./g,function(e){return String.fromCharCode(e.charCodeAt(1)-32)}).replace(/\r\n/g,"\n");case 23:;case 24:;case 25:;case 37:;case 39:;case 40:if(e[3]>f){n["!ref"]=Ba(h);l[i]=n;o.push(i);n={};if(a.dense)u=n["!data"]=[];h={s:{r:0,c:0},e:{r:0,c:0}};f=e[3];i="Sheet"+(f+1)}if(d>0&&e[0].r>=d)break;if(a.dense){if(!u[e[0].r])u[e[0].r]=[];u[e[0].r][e[0].c]=e[1]}else n[Ma(e[0])]=e[1];if(h.e.c=0)l(+t.codepage);if(t.type=="string")throw new Error("Cannot write WK1 to JS string");var a=Ta();var n=za(e["!ref"]);var s=e["!data"]!=null;var f=[];Pb(a,0,i(1030));Pb(a,6,o(n));var c=Math.min(n.e.r,8191);for(var u=n.s.c;u<=n.e.c;++u)f[u]=Na(u);for(var d=n.s.r;d<=c;++d){var v=Ca(d);for(u=n.s.c;u<=n.e.c;++u){var m=s?(e["!data"][d]||[])[u]:e[f[u]+v];if(!m||m.t=="z")continue;if(m.t=="n"){if((m.v|0)==m.v&&m.v>=-32768&&m.v<=32767)Pb(a,13,p(d,u,m.v));else Pb(a,14,g(d,u,m.v))}else{var b=$a(m);Pb(a,15,h(d,u,b.slice(0,239)))}}}Pb(a,1);return a.end()}function n(e,r){var t=r||{};if(+t.codepage>=0)l(+t.codepage);if(t.type=="string")throw new Error("Cannot write WK3 to JS string");var a=Ta();Pb(a,0,s(e));for(var n=0,i=0;n8191)t=8191;r._W(2,t);r._W(1,n);r._W(1,a);r._W(2,0);r._W(2,0);r._W(1,1);r._W(1,2);r._W(4,0);r._W(4,0);return r}function f(e,r,t){var a={s:{c:0,r:0},e:{c:0,r:0}};if(r==8&&t.qpro){a.s.c=e._R(1);e.l++;a.s.r=e._R(2);a.e.c=e._R(1);e.l++;a.e.r=e._R(2);return a}a.s.c=e._R(2);a.s.r=e._R(2);if(r==12&&t.qpro)e.l+=2;a.e.c=e._R(2);a.e.r=e._R(2);if(r==12&&t.qpro)e.l+=2;if(a.s.c==65535)a.s.c=a.e.c=a.s.r=a.e.r=0;return a}function o(e){var r=wa(8);r._W(2,e.s.c);r._W(2,e.s.r);r._W(2,e.e.c);r._W(2,e.e.r);return r}function c(e,r,t){var a=[{c:0,r:0},{t:"n",v:0},0,0];if(t.qpro&&t.vers!=20768){a[0].c=e._R(1);a[3]=e._R(1);a[0].r=e._R(2);e.l+=2}else if(t.works){a[0].c=e._R(2);a[0].r=e._R(2);a[2]=e._R(2)}else{a[2]=e._R(1);a[0].c=e._R(2);a[0].r=e._R(2)}return a}function u(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].t="s";if(t.vers==20768){e.l++;var i=e._R(1);n[1].v=e._R(i,"utf8");return n}if(t.qpro)e.l++;n[1].v=e._R(a-e.l,"cstr");return n}function h(e,r,t){var a=wa(7+t.length);a._W(1,255);a._W(2,r);a._W(2,e);a._W(1,39);for(var n=0;n=128?95:i)}a._W(1,0);return a}function d(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].t="s";if(t.vers==20768){var i=e._R(1);n[1].v=e._R(i,"utf8");return n}n[1].v=e._R(a-e.l,"cstr");return n}function v(e,r,t){var a=c(e,r,t);a[1].v=e._R(2,"i");return a}function p(e,r,t){var a=wa(7);a._W(1,255);a._W(2,r);a._W(2,e);a._W(2,t,"i");return a}function m(e,r,t){var a=c(e,r,t);a[1].v=e._R(8,"f");return a}function g(e,r,t){var a=wa(13);a._W(1,255);a._W(2,r);a._W(2,e);a._W(8,t,"f");return a}function w(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].v=e._R(8,"f");if(t.qpro)e.l=a;else{var i=e._R(2);S(e.slice(e.l,e.l+i),n);e.l+=i}return n}function k(e,r,t){var a=r&32768;r&=~32768;r=(a?e:0)+(r>=8192?r-16384:r);return(a?"":"$")+(t?Na(r):Ca(r))}var T={31:["NA",0],33:["ABS",1],34:["TRUNC",1],35:["SQRT",1],36:["LOG",1],37:["LN",1],38:["PI",0],39:["SIN",1],40:["COS",1],41:["TAN",1],42:["ATAN2",2],43:["ATAN",1],44:["ASIN",1],45:["ACOS",1],46:["EXP",1],47:["MOD",2],49:["ISNA",1],50:["ISERR",1],51:["FALSE",0],52:["TRUE",0],53:["RAND",0],63:["ROUND",2],68:["ISNUMBER",1],69:["ISTEXT",1],70:["LEN",1],71:["VALUE",1],73:["MID",3],74:["CHAR",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],102:["UPPER",1],103:["LOWER",1],107:["PROPER",1],109:["TRIM",1],111:["T",1]};var y=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function S(e,r){ba(e,0);var t=[],a=0,n="",i="",s="",f="";while(e.lt.length){console.error("WK1 bad formula parse 0x"+l.toString(16)+":|"+t.join("|")+"|");return}var h=t.slice(-a);t.length-=a;t.push(T[l][0]+"("+h.join(",")+")")}else if(l<=7)return console.error("WK1 invalid opcode "+l.toString(16));else if(l<=24)return console.error("WK1 unsupported op "+l.toString(16));else if(l<=30)return console.error("WK1 invalid opcode "+l.toString(16));else if(l<=115)return console.error("WK1 unsupported function opcode "+l.toString(16));else return console.error("WK1 unrecognized opcode "+l.toString(16));}}if(t.length==1)r[1].f=""+t[0];else console.error("WK1 bad formula parse |"+t.join("|")+"|")}function _(e){var r=[{c:0,r:0},{t:"n",v:0},0];r[0].r=e._R(2);r[3]=e[e.l++];r[0].c=e[e.l++];return r}function x(e,r){var t=_(e,r);t[1].t="s";t[1].v=e._R(r-4,"cstr");return t}function A(e,r,t,a){var n=wa(6+a.length);n._W(2,e);n._W(1,t);n._W(1,r);n._W(1,39);for(var i=0;i=128?95:s)}n._W(1,0);return n}function O(e,r){var t=_(e,r);t[1].v=e._R(2);var a=t[1].v>>1;if(t[1].v&1){switch(a&7){case 0:a=(a>>3)*5e3;break;case 1:a=(a>>3)*500;break;case 2:a=(a>>3)/20;break;case 3:a=(a>>3)/200;break;case 4:a=(a>>3)/2e3;break;case 5:a=(a>>3)/2e4;break;case 6:a=(a>>3)/16;break;case 7:a=(a>>3)/64;break;}}t[1].v=a;return t}function R(e,r){var t=_(e,r);var a=e._R(4);var n=e._R(4);var i=e._R(2);if(i==65535){if(a===0&&n===3221225472){t[1].t="e";t[1].v=15}else if(a===0&&n===3489660928){t[1].t="e";t[1].v=42}else t[1].v=0;return t}var s=i&32768;i=(i&32767)-16446;t[1].v=(1-s*2)*(n*Math.pow(2,i+32)+a*Math.pow(2,i));return t}function I(e,r,t,a){var n=wa(14);n._W(2,e);n._W(1,t);n._W(1,r);if(a==0){n._W(4,0);n._W(4,0);n._W(2,65535);return n}var i=0,s=0,f=0,l=0;if(a<0){i=1;a=-a}s=Math.log2(a)|0;a/=Math.pow(2,s-31);l=a>>>0;if((l&2147483648)==0){a/=2;++s;l=a>>>0}a-=l;l|=2147483648;l>>>=0;a*=Math.pow(2,32);f=a>>>0;n._W(4,f);n._W(4,l);s+=16383+(i?32768:0);n._W(2,s);return n}function N(e,r){var t=R(e,14);e.l+=r-14;return t}function F(e,r){var t=_(e,r);var a=e._R(4);t[1].v=a>>6;return t}function D(e,r){var t=_(e,r);var a=e._R(8,"f");t[1].v=a;return t}function P(e,r){var t=D(e,12);e.l+=r-12;return t}function L(e,r){return e[e.l+r-1]==0?e._R(r,"cstr"):""}function M(e,r){var t=e[e.l++];if(t>r-1)t=r-1;var a="";while(a.length127?95:n}t[t.l++]=0;return t}var H={0:{n:"BOF",f:ls},1:{n:"EOF"},2:{n:"CALCMODE"},3:{n:"CALCORDER"},4:{n:"SPLIT"},5:{n:"SYNC"},6:{n:"RANGE",f:f},7:{n:"WINDOW1"},8:{n:"COLW1"},9:{n:"WINTWO"},10:{n:"COLW2"},11:{n:"NAME"},12:{n:"BLANK"},13:{n:"INTEGER",f:v},14:{n:"NUMBER",f:m},15:{n:"LABEL",f:u},16:{n:"FORMULA",f:w},24:{n:"TABLE"},25:{n:"ORANGE"},26:{n:"PRANGE"},27:{n:"SRANGE"},28:{n:"FRANGE"},29:{n:"KRANGE1"},32:{n:"HRANGE"},35:{n:"KRANGE2"},36:{n:"PROTEC"},37:{n:"FOOTER"},38:{n:"HEADER"},39:{n:"SETUP"},40:{n:"MARGINS"},41:{n:"LABELFMT"},42:{n:"TITLES"},43:{n:"SHEETJS"},45:{n:"GRAPH"},46:{n:"NGRAPH"},47:{n:"CALCCOUNT"},48:{n:"UNFORMATTED"},49:{n:"CURSORW12"},50:{n:"WINDOW"},51:{n:"STRING",f:d},55:{n:"PASSWORD"},56:{n:"LOCKED"},60:{n:"QUERY"},61:{n:"QUERYNAME"},62:{n:"PRINT"},63:{n:"PRINTNAME"},64:{n:"GRAPH2"},65:{n:"GRAPHNAME"},66:{n:"ZOOM"},67:{n:"SYMSPLIT"},68:{n:"NSROWS"},69:{n:"NSCOLS"},70:{n:"RULER"},71:{n:"NNAME"},72:{n:"ACOMM"},73:{n:"AMACRO"},74:{n:"PARSE"},102:{n:"PRANGES??"},103:{n:"RRANGES??"},104:{n:"FNAME??"},105:{n:"MRANGES??"},204:{n:"SHEETNAMECS",f:L},222:{n:"SHEETNAMELP",f:M},255:{n:"BOF",f:ls},65535:{n:""}};var z={0:{n:"BOF"},1:{n:"EOF"},2:{n:"PASSWORD"},3:{n:"CALCSET"},4:{n:"WINDOWSET"},5:{n:"SHEETCELLPTR"},6:{n:"SHEETLAYOUT"},7:{n:"COLUMNWIDTH"},8:{n:"HIDDENCOLUMN"},9:{n:"USERRANGE"},10:{n:"SYSTEMRANGE"},11:{n:"ZEROFORCE"},12:{n:"SORTKEYDIR"},13:{n:"FILESEAL"},14:{n:"DATAFILLNUMS"},15:{n:"PRINTMAIN"},16:{n:"PRINTSTRING"},17:{n:"GRAPHMAIN"},18:{n:"GRAPHSTRING"},19:{n:"??"},20:{n:"ERRCELL"},21:{n:"NACELL"},22:{n:"LABEL16",f:x},23:{n:"NUMBER17",f:R},24:{n:"NUMBER18",f:O},25:{n:"FORMULA19",f:N},26:{n:"FORMULA1A"},27:{n:"XFORMAT",f:B},28:{n:"DTLABELMISC"},29:{n:"DTLABELCELL"},30:{n:"GRAPHWINDOW"},31:{n:"CPA"},32:{n:"LPLAUTO"},33:{n:"QUERY"},34:{n:"HIDDENSHEET"},35:{n:"??"},37:{n:"NUMBER25",f:F},38:{n:"??"},39:{n:"NUMBER27",f:D},40:{n:"FORMULA28",f:P},142:{n:"??"},147:{n:"??"},150:{n:"??"},151:{n:"??"},152:{n:"??"},153:{n:"??"},154:{n:"??"},155:{n:"??"},156:{n:"??"},163:{n:"??"},174:{n:"??"},175:{n:"??"},176:{n:"??"},177:{n:"??"},184:{n:"??"},185:{n:"??"},186:{n:"??"},187:{n:"??"},188:{n:"??"},195:{n:"??"},201:{n:"??"},204:{n:"SHEETNAMECS",f:L},205:{n:"??"},206:{n:"??"},207:{n:"??"},208:{n:"??"},256:{n:"??"},259:{n:"??"},260:{n:"??"},261:{n:"??"},262:{n:"??"},263:{n:"??"},265:{n:"??"},266:{n:"??"},267:{n:"??"},268:{n:"??"},270:{n:"??"},271:{n:"??"},384:{n:"??"},389:{n:"??"},390:{n:"??"},393:{n:"??"},396:{n:"??"},512:{n:"??"},514:{n:"??"},513:{n:"??"},516:{n:"??"},517:{n:"??"},640:{n:"??"},641:{n:"??"},642:{n:"??"},643:{n:"??"},644:{n:"??"},645:{n:"??"},646:{n:"??"},647:{n:"??"},648:{n:"??"},658:{n:"??"},659:{n:"??"},660:{n:"??"},661:{n:"??"},662:{n:"??"},665:{n:"??"},666:{n:"??"},768:{n:"??"},772:{n:"??"},1537:{n:"SHEETINFOQP",f:U},1600:{n:"??"},1602:{n:"??"},1793:{n:"??"},1794:{n:"??"},1795:{n:"??"},1796:{n:"??"},1920:{n:"??"},2048:{n:"??"},2049:{n:"??"},2052:{n:"??"},2688:{n:"??"},10998:{n:"??"},12849:{n:"??"},28233:{n:"??"},28484:{n:"??"},65535:{n:""}};function V(e,r){ba(e,0);var t=r||{};if(b!=null&&t.dense==null)t.dense=b;var a={};if(t.dense)a["!data"]=[];var n=[],i="",s=[];var f={s:{r:-1,c:-1},e:{r:-1,c:-1}};var l=0,o=0,c=0,u=0;var h={SheetNames:[],Sheets:{}};e:while(e.l255||f.s.r>999999)break;if(f.e.cc)f.s.c=c;u=p._R(4);if(f.s.r>u)f.s.r=u;u=p._R(4);if(f.e.ru)f.s.r=u;if(f.e.r0&&l>=0){if(k&32)switch(k&31){case 2:w={t:"n",v:w.v+E&65535};break;case 3:w={t:"n",v:w.v+E&65535};if(w.v>32767)w.v-=65536;break;case 7:w={t:"s",v:n[o=o+E>>>0]};break;default:throw"Cannot apply delta for QPW cell type "+(k&31);}else switch(k&31){case 1:w={t:"z"};break;case 2:w={t:"n",v:p._R(2)};break;case 7:w={t:"s",v:n[o=p._R(4)-1]};break;default:throw"Cannot apply repeat for QPW cell type "+(k&31);}if(!(!t.sheetStubs&&w.t=="z")){if(a["!data"]!=null){if(!a["!data"][u])a["!data"][u]=[];a["!data"][u][c]=w}else a[g+Ca(u)]=w}++u;--l}}}break;default:break;}e.l+=v}return h}return{sheet_to_wk1:a,book_to_wk3:n,to_workbook:r}}();function Pl(e){var r={},t=e.match(Yr),a=0;var n=false;if(t)for(;a!=t.length;++a){var s=Jr(t[a]);switch(s[0].replace(/\w*:/g,"")){case"":;case"":r.shadow=1;break;case"":break;case"":;case"":r.outline=1;break;case"":break;case"":;case"":r.strike=1;break;case"":break;case"":;case"":r.u=1;break;case"":break;case"":;case"":r.b=1;break;case"":break;case"":;case"":r.i=1;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"
":break;case"":n=false;break;default:if(s[0].charCodeAt(1)!==47&&!n)throw new Error("Unrecognized rich format "+s[0]);}}return r}var Ll=function(){var e=gt("t"),r=gt("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:rt(a[1])};var i=t.match(r);if(i)n.s=Pl(i[1]);return n}var a=/<(?:\w+:)?r>/g,n=/<\/(?:\w+:)?r>/;return function i(e){return e.replace(a,"").split(n).map(t).filter(function(e){return e.v})}}();var Ml=function Gk(){var e=/(\r\n|\n)/g;function r(e,r,t){var a=[];if(e.u)a.push("text-decoration: underline;");if(e.uval)a.push("text-underline-style:"+e.uval+";");if(e.sz)a.push("font-size:"+e.sz+"pt;");if(e.outline)a.push("text-effect: outline;");if(e.shadow)a.push("text-shadow: auto;");r.push('');if(e.b){r.push("");t.push("")}if(e.i){r.push("");t.push("")}if(e.strike){r.push("");t.push("")}var n=e.valign||"";if(n=="superscript"||n=="super")n="sup";else if(n=="subscript")n="sub";if(n!=""){r.push("<"+n+">");t.push("")}t.push("");return e}function t(t){var a=[[],t.v,[]];if(!t.v)return"";if(t.s)r(t.s,a[0],a[2]);return a[0].join("")+a[1].replace(e,"
")+a[2].join(""); +}return function a(e){return e.map(t).join("")}}();var Ul=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,Bl=/<(?:\w+:)?r>/;var Wl=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function Hl(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=rt(mt(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""),true);a.r=mt(e);if(t)a.h=ft(a.t)}else if(e.match(Bl)){a.r=mt(e);a.t=rt(mt((e.replace(Wl,"").match(Ul)||[]).join("").replace(Yr,"")),true);if(t)a.h=Ml(Ll(a.r))}return a}var zl=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var Vl=/<(?:\w+:)?(?:si|sstItem)>/g;var $l=/<\/(?:\w+:)?(?:si|sstItem)>/;function Gl(e,r){var t=[],a="";if(!e)return t;var n=e.match(zl);if(n){a=n[2].replace(Vl,"").split($l);for(var i=0;i!=a.length;++i){var s=Hl(a[i].trim(),r);if(s!=null)t[t.length]=s}n=Jr(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var jl=/^\s|\s$|[\t\n\r]/;function Xl(e,r){if(!r.bookSST)return"";var t=[$r];t[t.length]=At("sst",null,{xmlns:Ft[0],count:e.Count,uniqueCount:e.Unique});for(var a=0;a!=e.length;++a){if(e[a]==null)continue;var n=e[a];var i="";if(n.r)i+=n.r;else{i+=""}i+="";t[t.length]=i}if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}function Yl(e){return[e._R(4),e._R(4)]}function Kl(e,r){var t=[];var a=false;ka(e,function n(e,i,s){switch(s){case 159:t.Count=e[0];t.Unique=e[1];break;case 19:t.push(e);break;case 160:return true;case 35:a=true;break;case 36:a=false;break;default:if(i.T){}if(!a||r.WTF)throw new Error("Unexpected record 0x"+s.toString(16));}});return t}function Zl(e,r){if(!r)r=wa(8);r._W(4,e.Count);r._W(4,e.Unique);return r}var Jl=rn;function ql(e){var r=Ta();Ea(r,159,Zl(e));for(var t=0;t=4)e.l+=r-4;return t}function ro(e){var r={};r.id=e._R(0,"lpp4");r.R=eo(e,4);r.U=eo(e,4);r.W=eo(e,4);return r}function to(e){var r=e._R(4);var t=e.l+r-4;var a={};var n=e._R(4);var i=[];while(n-- >0)i.push({t:e._R(4),v:e._R(0,"lpp4")});a.name=e._R(0,"lpp4");a.comps=i;if(e.l!=t)throw new Error("Bad DataSpaceMapEntry: "+e.l+" != "+t);return a}function ao(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(to(e));return r}function no(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(e._R(0,"lpp4"));return r}function io(e){var r={};e._R(4);e.l+=4;r.id=e._R(0,"lpp4");r.name=e._R(0,"lpp4");r.R=eo(e,4);r.U=eo(e,4);r.W=eo(e,4);return r}function so(e){var r=io(e);r.ename=e._R(0,"8lpp4");r.blksz=e._R(4);r.cmode=e._R(4);if(e._R(4)!=4)throw new Error("Bad !Primary record");return r}function fo(e,r){var t=e.l+r;var a={};a.Flags=e._R(4)&63;e.l+=4;a.AlgID=e._R(4);var n=false;switch(a.AlgID){case 26126:;case 26127:;case 26128:n=a.Flags==36;break;case 26625:n=a.Flags==4;break;case 0:n=a.Flags==16||a.Flags==4||a.Flags==36;break;default:throw"Unrecognized encryption algorithm: "+a.AlgID;}if(!n)throw new Error("Encryption Flags/AlgID mismatch");a.AlgIDHash=e._R(4);a.KeySize=e._R(4);a.ProviderType=e._R(4);e.l+=8;a.CSPName=e._R(t-e.l>>1,"utf16le");e.l=t;return a}function lo(e,r){var t={},a=e.l+r;e.l+=4;t.Salt=e.slice(e.l,e.l+16);e.l+=16;t.Verifier=e.slice(e.l,e.l+16);e.l+=16;e._R(4);t.VerifierHash=e.slice(e.l,a);e.l=a;return t}function oo(e){var r=eo(e);switch(r.Minor){case 2:return[r.Minor,co(e,r)];case 3:return[r.Minor,uo(e,r)];case 4:return[r.Minor,ho(e,r)];}throw new Error("ECMA-376 Encrypted file unrecognized Version: "+r.Minor)}function co(e){var r=e._R(4);if((r&63)!=36)throw new Error("EncryptionInfo mismatch");var t=e._R(4);var a=fo(e,t);var n=lo(e,e.length-e.l);return{t:"Std",h:a,v:n}}function uo(){throw new Error("File is password-protected: ECMA-376 Extensible")}function ho(e){var r=["saltSize","blockSize","keyBits","hashSize","cipherAlgorithm","cipherChaining","hashAlgorithm","saltValue"];e.l+=4;var t=e._R(e.length-e.l,"utf8");var a={};t.replace(Yr,function n(e){var t=Jr(e);switch(qr(t[0])){case"":break;case"":;case"":break;case"":break;case"4||a.Major<2)throw new Error("unrecognized major version code: "+a.Major);t.Flags=e._R(4);r-=4;var n=e._R(4);r-=4;t.EncryptionHeader=fo(e,n);r-=n;t.EncryptionVerifier=lo(e,r);return t}function po(e){var r={};var t=r.EncryptionVersionInfo=eo(e,4);if(t.Major!=1||t.Minor!=1)throw"unrecognized version code "+t.Major+" : "+t.Minor;r.Salt=e._R(16);r.EncryptedVerifier=e._R(16);r.EncryptedVerifierHash=e._R(16);return r}function mo(e){var r=0,t;var a=Ql(e);var n=a.length+1,i,s;var f,l,o;t=x(n);t[0]=a.length;for(i=1;i!=n;++i)t[i]=a[i-1];for(i=n-1;i>=0;--i){s=t[i];f=(r&16384)===0?0:1;l=r<<1&32767;o=f|l;r=o^s}return r^52811}var bo=function(){var e=[187,255,255,186,255,255,185,128,0,190,15,0,191,15,0];var r=[57840,7439,52380,33984,4364,3600,61902,12606,6258,57657,54287,34041,10252,43370,20163];var t=[44796,19929,39858,10053,20106,40212,10761,31585,63170,64933,60267,50935,40399,11199,17763,35526,1453,2906,5812,11624,23248,885,1770,3540,7080,14160,28320,56640,55369,41139,20807,41614,21821,43642,17621,28485,56970,44341,19019,38038,14605,29210,60195,50791,40175,10751,21502,43004,24537,18387,36774,3949,7898,15796,31592,63184,47201,24803,49606,37805,14203,28406,56812,17824,35648,1697,3394,6788,13576,27152,43601,17539,35078,557,1114,2228,4456,30388,60776,51953,34243,7079,14158,28316,14128,28256,56512,43425,17251,34502,7597,13105,26210,52420,35241,883,1766,3532,4129,8258,16516,33032,4657,9314,18628];var a=function(e){return(e/2|e*128)&255};var n=function(e,r){return a(e^r)};var i=function(e){var a=r[e.length-1];var n=104;for(var i=e.length-1;i>=0;--i){var s=e[i];for(var f=0;f!=7;++f){if(s&64)a^=t[n];s*=2;--n}}return a};return function(r){var t=Ql(r);var a=i(t);var s=t.length;var f=x(16);for(var l=0;l!=16;++l)f[l]=0;var o,c,u;if((s&1)===1){o=a>>8;f[s]=n(e[0],o);--s;o=a&255;c=t[t.length-1];f[s]=n(c,o)}while(s>0){--s;o=a>>8;f[s]=n(t[s],o);--s;o=a&255;f[s]=n(t[s],o)}s=15;u=15-t.length;while(u>0){o=a>>8;f[s]=n(e[u],o);--s;--u;o=a&255;f[s]=n(t[s],o);--s;--u}return f}}();var go=function(e,r,t,a,n){if(!n)n=r;if(!a)a=bo(e);var i,s;for(i=0;i!=r.length;++i){s=r[i];s^=a[t];s=(s>>5|s<<3)&255;n[i]=s;++t}return[n,t,a]};var wo=function(e){var r=0,t=bo(e);return function(e){var a=go("",e,r,t);r=a[1];return a[0]}};function ko(e,r,t,a){var n={key:ls(e),verificationBytes:ls(e)};if(t.password)n.verifier=mo(t.password);a.valid=n.verificationBytes===n.verifier;if(a.valid)a.insitu=wo(t.password);return n}function To(e,r,t){var a=t||{};a.Info=e._R(2);e.l-=2;if(a.Info===1)a.Data=po(e,r);else a.Data=vo(e,r);return a}function Eo(e,r,t){var a={Type:t.biff>=8?e._R(2):0};if(a.Type)To(e,r-2,a);else ko(e,t.biff>=8?r:r-2,t,a);return a}function yo(e,r){switch(r.type){case"base64":return So(E(e),r);case"binary":return So(e,r);case"buffer":return So(y&&Buffer.isBuffer(e)?e.toString("binary"):R(e),r);case"array":return So(Er(e),r);}throw new Error("Unrecognized type "+r.type)}function So(e,r){var t=r||{};var a={};var n=t.dense;if(n)a["!data"]=[];var i=e.match(/\\trowd[\s\S]*?\\row\b/g);if(!i)throw new Error("RTF missing table");var s={s:{c:0,r:0},e:{c:0,r:i.length-1}};var f=[];i.forEach(function(e,r){if(n)f=a["!data"][r]=[];var i=/\\[\w\-]+\b/g;var l=0;var o;var c=-1;var u=[];while((o=i.exec(e))!=null){var h=e.slice(l,i.lastIndex-o[0].length);if(h.charCodeAt(0)==32)h=h.slice(1);if(h.length)u.push(h);switch(o[0]){case"\\cell":++c;if(u.length){var d={v:u.join(""),t:"s"};if(d.v=="TRUE"||d.v=="FALSE"){d.v=d.v=="TRUE";d.t="b"}else if(!isNaN(_r(d.v))){d.t="n";if(t.cellText!==false)d.w=d.v;d.v=_r(d.v)}if(n)f[c]=d;else a[Ma({r:r,c:c})]=d}u=[];break;case"\\par":u.push("\n");break;}l=i.lastIndex}if(c>s.e.c)s.e.c=c});a["!ref"]=Ba(s);return a}function _o(e,r){var t=Ga(yo(e,r),r);t.bookType="rtf";return t}function xo(e,r){var t=["{\\rtf1\\ansi"];if(!e["!ref"])return t[0]+"}";var a=za(e["!ref"]),n;var i=e["!data"]!=null,s=[];for(var f=a.s.r;f<=a.e.r;++f){t.push("\\trowd\\trautofit1");for(var l=a.s.c;l<=a.e.c;++l)t.push("\\cellx"+(l+1));t.push("\\pard\\intbl");if(i)s=e["!data"][f]||[];for(l=a.s.c;l<=a.e.c;++l){var o=Ma({r:f,c:l});n=i?s[l]:e[o];if(!n||n.v==null&&(!n.f||n.F)){t.push(" \\cell");continue}t.push(" "+(n.w||($a(n),n.w)||"").replace(/[\r\n]/g,"\\par "));t.push("\\cell")}t.push("\\pard\\intbl\\row")}return t.join("")+"}"}function Ao(e){var r=e.slice(e[0]==="#"?1:0).slice(0,6);return[parseInt(r.slice(0,2),16),parseInt(r.slice(2,4),16),parseInt(r.slice(4,6),16)]}function Co(e){for(var r=0,t=1;r!=3;++r)t=t*256+(e[r]>255?255:e[r]<0?0:e[r]);return t.toString(16).toUpperCase().slice(1)}function Oo(e){var r=e[0]/255,t=e[1]/255,a=e[2]/255;var n=Math.max(r,t,a),i=Math.min(r,t,a),s=n-i;if(s===0)return[0,0,r];var f=0,l=0,o=n+i;l=s/(o>1?2-o:o);switch(n){case r:f=((t-a)/s+6)%6;break;case t:f=(a-r)/s+2;break;case a:f=(r-t)/s+4;break;}return[f/6,l,o/2]}function Ro(e){var r=e[0],t=e[1],a=e[2];var n=t*2*(a<.5?a:1-a),i=a-n/2;var s=[i,i,i],f=6*r;var l;if(t!==0)switch(f|0){case 0:;case 6:l=n*f;s[0]+=n;s[1]+=l;break;case 1:l=n*(2-f);s[0]+=l;s[1]+=n;break;case 2:l=n*(f-2);s[1]+=n;s[2]+=l;break;case 3:l=n*(4-f);s[1]+=l;s[2]+=n;break;case 4:l=n*(f-4);s[2]+=n;s[0]+=l;break;case 5:l=n*(6-f);s[2]+=l;s[0]+=n;break;}for(var o=0;o!=3;++o)s[o]=Math.round(s[o]*255);return s}function Io(e,r){if(r===0)return e;var t=Oo(Ao(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return Co(Ro(t))}var No=6,Fo=15,Do=1,Po=No;function Lo(e){return Math.floor((e+Math.round(128/Po)/256)*Po)}function Mo(e){return Math.floor((e-5)/Po*100+.5)/100}function Uo(e){return Math.round((e*Po+5)/Po*256)/256}function Bo(e){return Uo(Mo(Lo(e)))}function Wo(e){var r=Math.abs(e-Bo(e)),t=Po;if(r>.005)for(Po=Do;Po":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=ut(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=ut(t.diagonalDown);r.Borders.push(n);break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":break;case"":i=false;break;default:if(a&&a.WTF){if(!i)throw new Error("unrecognized "+t[0]+" in borders")};}})}function Yo(e,r,t,a){r.Fills=[];var n={};var i=false;(e[0].match(Yr)||[]).forEach(function(e){var t=Jr(e);switch(qr(t[0])){case"":;case"":break;case"":;case"":n={};r.Fills.push(n);break;case"":break;case"":break;case"":r.Fills.push(n);n={};break;case"":if(t.patternType)n.patternType=t.patternType;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":i=false;break;default:if(a&&a.WTF){if(!i)throw new Error("unrecognized "+t[0]+" in fills")};}})}function Ko(e,r,t,a){r.Fonts=[];var n={};var s=false;(e[0].match(Yr)||[]).forEach(function(e){var f=Jr(e);switch(qr(f[0])){case"":;case"":break;case"":break;case"
":;case"":r.Fonts.push(n);n={};break;case"":;case"":break;case"":n.bold=1;break;case"":n.italic=1;break;case"":n.underline=1;break;case"":n.strike=1;break;case"":n.outline=1;break;case"":n.shadow=1;break;case"":n.condense=1;break;case"":n.extend=1;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":s=false;break;case"":;case"":break;case"":s=false;break;default:if(a&&a.WTF){if(!s)throw new Error("unrecognized "+f[0]+" in fonts")};}})}function Zo(e,r,t){r.NumberFmt=[];var a=sr(Z);for(var n=0;n":;case"":;case"":break;case"0){if(l>392){for(l=392;l>60;--l)if(r.NumberFmt[l]==null)break;r.NumberFmt[l]=f}qe(f,l)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+s[0]+" in numFmts");}}}function Jo(e){var r=[""];[[5,8],[23,26],[41,44],[50,392]].forEach(function(t){for(var a=t[0];a<=t[1];++a)if(e[a]!=null)r[r.length]=At("numFmt",null,{numFmtId:a,formatCode:nt(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=At("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var qo=["numFmtId","fillId","fontId","borderId","xfId"];var Qo=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function ec(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Yr)||[]).forEach(function(e){var i=Jr(e),s=0;switch(qr(i[0])){case"":;case"":;case"":break;case"":a=i;delete a[0];for(s=0;s392){for(s=392;s>60;--s)if(r.NumberFmt[a.numFmtId]==r.NumberFmt[s]){a.numFmtId=s;break}}r.CellXf.push(a);break;case"":break;case"":var f={};if(i.vertical)f.vertical=i.vertical;if(i.horizontal)f.horizontal=i.horizontal;if(i.textRotation!=null)f.textRotation=i.textRotation;if(i.indent)f.indent=i.indent;if(i.wrapText)f.wrapText=ut(i.wrapText);a.alignment=f;break;case"":break;case"":;case"":break;case"":n=false;break;case"":;case"":break;case"":n=false;break;default:if(t&&t.WTF){if(!n)throw new Error("unrecognized "+i[0]+" in cellXfs")};}})}function rc(e){var r=[];r[r.length]=At("cellXfs",null);e.forEach(function(e){r[r.length]=At("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=At("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var tc=function jk(){var e=/<(?:\w+:)?numFmts([^>]*)>[\S\s]*?<\/(?:\w+:)?numFmts>/;var r=/<(?:\w+:)?cellXfs([^>]*)>[\S\s]*?<\/(?:\w+:)?cellXfs>/;var t=/<(?:\w+:)?fills([^>]*)>[\S\s]*?<\/(?:\w+:)?fills>/;var a=/<(?:\w+:)?fonts([^>]*)>[\S\s]*?<\/(?:\w+:)?fonts>/;var n=/<(?:\w+:)?borders([^>]*)>[\S\s]*?<\/(?:\w+:)?borders>/;return function i(s,f,l){var o={};if(!s)return o;s=s.replace(//gm,"").replace(//gm,"");var c;if(c=s.match(e))Zo(c,o,l);if(c=s.match(a))Ko(c,o,f,l);if(c=s.match(t))Yo(c,o,f,l);if(c=s.match(n))Xo(c,o,f,l);if(c=s.match(r))ec(c,o,l);return o}}();function ac(e,r){var t=[$r,At("styleSheet",null,{xmlns:Ft[0],"xmlns:vt":Nt.vt})],a;if(e.SSF&&(a=Jo(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=rc(r.cellXfs))t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}function nc(e,r){var t=e._R(2);var a=Za(e,r-2);return[t,a]}function ic(e,r,t){if(!t)t=wa(6+4*r.length);t._W(2,e);Ja(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 sc(e,r,t){var a={};a.sz=e._R(2)/20;var n=xn(e,2,t);if(n.fItalic)a.italic=1;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;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 f=e._R(1);if(f>0)a.family=f;var l=e._R(1);if(l>0)a.charset=l;e.l++;a.color=Sn(e,8);switch(e._R(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor";break;}a.name=Za(e,r-21);return a}function fc(e,r){if(!r)r=wa(25+4*32);r._W(2,e.sz*20);An(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);_n(e.color,r);var a=0;if(e.scheme=="major")a=1;if(e.scheme=="minor")a=2;r._W(1,a);Ja(e.name,r);return r.length>r.l?r.slice(0,r.l):r}var lc=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];var oc;var cc=ga;function uc(e,r){if(!r)r=wa(4*3+8*7+16*1);if(!oc)oc=lr(lc);var t=oc[e.patternType];if(t==null)t=40;r._W(4,t);var a=0;if(t!=40){_n({auto:1},r);_n({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 hc(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 dc(e,r,t){if(!t)t=wa(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);var a=0;t._W(1,a);t._W(1,0);t._W(1,0);t._W(1,0);return t}function vc(e,r){if(!r)r=wa(10);r._W(1,0);r._W(1,0);r._W(4,0);r._W(4,0);return r}var pc=ga;function mc(e,r){if(!r)r=wa(51);r._W(1,0);vc(null,r);vc(null,r);vc(null,r);vc(null,r);vc(null,r);return r.length>r.l?r.slice(0,r.l):r}function bc(e,r){if(!r)r=wa(12+4*10);r._W(4,e.xfId);r._W(2,1);r._W(1,+e.builtinId);r._W(1,0);hn(e.name||"",r);return r.length>r.l?r.slice(0,r.l):r}function gc(e,r,t){var a=wa(4+256*2*4);a._W(4,e);hn(r,a);hn(t,a);return a.length>a.l?a.slice(0,a.l):a}function wc(e,r,t){var a={};a.NumberFmt=[];for(var n in Z)a.NumberFmt[n]=Z[n];a.CellXf=[];a.Fonts=[];var i=[];var s=false;ka(e,function f(e,n,l){switch(l){case 44:a.NumberFmt[e[0]]=e[1];qe(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=Io(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]==617){a.CellXf.push(e)}break;case 48:;case 507:;case 572:;case 475:break;case 1171:;case 2102:;case 1130:;case 512:;case 2095:;case 3072:break;case 35:s=true;break;case 36:s=false;break;case 37:i.push(l);s=true;break;case 38:i.pop();s=false;break;default:if(n.T>0)i.push(l);else if(n.T<0)i.pop();else if(!s||t.WTF&&i[i.length-1]!=37)throw new Error("Unexpected record 0x"+l.toString(16));}});return a}function kc(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;Ea(e,615,Ka(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)Ea(e,44,ic(a,r[a]))});Ea(e,616)}function Tc(e){var r=1;if(r==0)return;Ea(e,611,Ka(r));Ea(e,43,fc({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}));Ea(e,612)}function Ec(e){var r=2;if(r==0)return;Ea(e,603,Ka(r));Ea(e,45,uc({patternType:"none"}));Ea(e,45,uc({patternType:"gray125"}));Ea(e,604)}function yc(e){var r=1;if(r==0)return;Ea(e,613,Ka(r));Ea(e,46,mc({}));Ea(e,614)}function Sc(e){var r=1;Ea(e,626,Ka(r));Ea(e,47,dc({numFmtId:0,fontId:0,fillId:0,borderId:0},65535));Ea(e,627)}function _c(e,r){Ea(e,617,Ka(r.length));r.forEach(function(r){Ea(e,47,dc(r,0))});Ea(e,618)}function xc(e){var r=1;Ea(e,619,Ka(r));Ea(e,48,bc({xfId:0,builtinId:0,name:"Normal"}));Ea(e,620)}function Ac(e){var r=0;Ea(e,505,Ka(r));Ea(e,506)}function Cc(e){var r=0;Ea(e,508,gc(r,"TableStyleMedium9","PivotStyleMedium4"));Ea(e,509)}function Oc(){return}function Rc(e,r){var t=Ta();Ea(t,278);kc(t,e.SSF);Tc(t,e);Ec(t,e);yc(t,e);Sc(t,e);_c(t,r.cellXfs);xc(t,e);Ac(t,e);Cc(t,e);Oc(t,e);Ea(t,279);return t.end()}var Ic=["","","","","","","","","","","",""];function Nc(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Yr)||[]).forEach(function(e){var n=Jr(e);switch(n[0]){case"":break;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":if(n[0].charAt(1)==="/"){r.themeElements.clrScheme[Ic.indexOf(n[0])]=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 Pc=/]*)>[\s\S]*<\/a:clrScheme>/;var Lc=/]*)>[\s\S]*<\/a:fontScheme>/;var Mc=/]*)>[\s\S]*<\/a:fmtScheme>/;function Uc(e,r,t){r.themeElements={};var a;[["clrScheme",Pc,Nc],["fontScheme",Lc,Fc],["fmtScheme",Mc,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 Bc=/]*)>[\s\S]*<\/a:themeElements>/;function Wc(e,r){if(!e||e.length===0)e=Hc();var t;var a={};if(!(t=e.match(Bc)))throw new Error("themeElements not found in theme");Uc(t[0],a,r);a.raw=e;return a}function Hc(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[$r];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]=''; +t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";return t.join("")}function zc(e,r,t){var a=e.l+r;var n=e._R(4);if(n===124226)return;if(!t.cellStyles){e.l=a;return}var i=e.slice(e.l);e.l=a;var s;try{s=zr(i,{type:"array"})}catch(f){return}var l=Mr(s,"theme/theme/theme1.xml",true);if(!l)return;return Wc(l,t)}function Vc(e){return e._R(4)}function $c(e){var r={};r.xclrType=e._R(2);r.nTintShade=e._R(2);switch(r.xclrType){case 0:e.l+=4;break;case 1:r.xclrValue=Gc(e,4);break;case 2:r.xclrValue=Cs(e,4);break;case 3:r.xclrValue=Vc(e,4);break;case 4:e.l+=4;break;}e.l+=8;return r}function Gc(e,r){return ga(e,r)}function jc(e,r){return ga(e,r)}function Xc(e){var r=e._R(2);var t=e._R(2)-4;var a=[r];switch(r){case 4:;case 5:;case 7:;case 8:;case 9:;case 10:;case 11:;case 13:a[1]=$c(e,t);break;case 6:a[1]=jc(e,t);break;case 14:;case 15:a[1]=e._R(t===1?1:2);break;default:throw new Error("Unrecognized ExtProp type: "+r+" "+t);}return a}function Yc(e,r){var t=e.l+r;e.l+=2;var a=e._R(2);e.l+=2;var n=e._R(2);var i=[];while(n-- >0)i.push(Xc(e,t-e.l));return{ixfe:a,ext:i}}function Kc(e,r){r.forEach(function(e){switch(e[0]){case 4:break;case 5:break;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:break;case 13:break;case 14:break;case 15:break;}})}function Zc(e,r){return{flags:e._R(4),version:e._R(4),name:Za(e,r-8)}}function Jc(e){var r=wa(12+2*e.name.length);r._W(4,e.flags);r._W(4,e.version);Ja(e.name,r);return r.slice(0,r.l)}function qc(e){var r=[];var t=e._R(4);while(t-- >0)r.push([e._R(4),e._R(4)]);return r}function Qc(e){var r=wa(4+8*e.length);r._W(4,e.length);for(var t=0;t":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":i=2;break;case"":i=2;break;case"":;case"":;case"":break;case"":n=false;break;case"\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n');return e.join("")}function fu(e){var r=[];if(!e)return r;var t=1;(e.match(Yr)||[]).forEach(function(e){var a=Jr(e);switch(a[0]){case"":;case"":break;case"]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}function du(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[At("xml",null,{"xmlns:v":Dt.v,"xmlns:o":Dt.o,"xmlns:x":Dt.x,"xmlns:mv":Dt.mv}).replace(/\/>/,">"),At("o:shapelayout",At("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"})];var i=65536*e;var s=r||[];if(s.length>0)n.push(At("v:shapetype",[At("v:stroke",null,{joinstyle:"miter"}),At("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202",coordsize:t.join(","),"o:spt":202,path:a}));s.forEach(function(e){++i;n.push(vu(e,i))});n.push("");return n.join("")}function vu(e,r){var t=La(e[0]);var a={color2:"#BEFF82",type:"gradient"};if(a.type=="gradient")a.angle="-180";var n=a.type=="gradient"?At("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null;var i=At("v:fill",n,a);var s={on:"t",obscured:"t"};return["",i,At("v:shadow",null,s),At("v:path",null,{"o:connecttype":"none"}),'
','',"","",_t("x:Anchor",[t.c+1,0,t.r+1,0,t.c+3,20,t.r+5,20].join(",")),_t("x:AutoFill","False"),_t("x:Row",String(t.r)),_t("x:Column",String(t.c)),e[1].hidden?"":"","",""].join("")}function pu(e,r,t,a){var n=e["!data"]!=null;var i;r.forEach(function(r){var s=La(r.ref);if(n){if(!e["!data"][s.r])e["!data"][s.r]=[];i=e["!data"][s.r][s.c]}else i=e[r.ref];if(!i){i={t:"z"};if(n)e["!data"][s.r][s.c]=i;else e[r.ref]=i;var f=za(e["!ref"]||"BDWGO1000001:A1");if(f.s.r>s.r)f.s.r=s.r;if(f.e.rs.c)f.s.c=s.c;if(f.e.c=0;--c){if(!t&&i.c[c].T)return;if(t&&!i.c[c].T)i.c.splice(c,1)}if(t&&a)for(c=0;c/))return[];var t=[];var a=[];var n=e.match(/<(?:\w+:)?authors>([\s\S]*)<\/(?:\w+:)?authors>/);if(n&&n[1])n[1].split(/<\/\w*:?author>/).forEach(function(e){if(e===""||e.trim()==="")return;var r=e.match(/<(?:\w+:)?author[^>]*>(.*)/);if(r)t.push(r[1])});var i=e.match(/<(?:\w+:)?commentList>([\s\S]*)<\/(?:\w+:)?commentList>/);if(i&&i[1])i[1].split(/<\/\w*:?comment>/).forEach(function(e){if(e===""||e.trim()==="")return;var n=e.match(/<(?:\w+:)?comment[^>]*>/);if(!n)return;var i=Jr(n[0]);var s={author:i.authorId&&t[i.authorId]||"sheetjsghost",ref:i.ref,guid:i.guid};var f=La(i.ref);if(r.sheetRows&&r.sheetRows<=f.r)return;var l=e.match(/<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/);var o=!!l&&!!l[1]&&Hl(l[1])||{r:"",t:"",h:""};s.r=o.r;if(o.r=="")o.t=o.h="";s.t=(o.t||"").replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(r.cellHTML)s.h=o.h;a.push(s)});return a}function bu(e){var r=[$r,At("comments",null,{xmlns:Ft[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=nt(e.a);if(t.indexOf(a)==-1){t.push(a);r.push(""+a+"")}if(e.T&&e.ID&&t.indexOf("tc="+e.ID)==-1){t.push("tc="+e.ID);r.push(""+"tc="+e.ID+"")}})});if(t.length==0){t.push("SheetJ5");r.push("SheetJ5")}r.push("");r.push("");e.forEach(function(e){var a=0,n=[],i=0;if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);e[1].forEach(function(e){if(e.a)a=t.indexOf(nt(e.a));if(e.T)++i;n.push(e.t==null?"":nt(e.t))});if(i===0){e[1].forEach(function(a){r.push('');r.push(_t("t",a.t==null?"":nt(a.t)));r.push("")})}else{r.push('');var s="Comment:\n "+n[0]+"\n";for(var f=1;f")}});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function gu(e,r){var t=[];var a=false,n={},i=0;e.replace(Yr,function s(f,l){var o=Jr(f);switch(qr(o[0])){case"":break;case"":if(n.t!=null)t.push(n);break;case"":;case"":n.t=e.slice(i,l).replace(/\r\n/g,"\n").replace(/\r/g,"\n");break;case"":a=true;break;case"":a=false;break;case"":;case"
":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+o[0]+" in threaded comments");}return f});return t}function wu(e,r,t){var a=[$r,At("ThreadedComments",null,{xmlns:Nt.TCMNT}).replace(/[\/]>/,">")];e.forEach(function(e){var n="";(e[1]||[]).forEach(function(i,s){if(!i.T){delete i.ID;return}if(i.a&&r.indexOf(i.a)==-1)r.push(i.a);var f={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+t.tcid++).slice(-12)+"}"};if(s==0)n=f.id;else f.parentId=n;i.ID=f.id;if(i.a)f.personId="{54EE7950-7262-4200-6969-"+("000000000000"+r.indexOf(i.a)).slice(-12)+"}";a.push(At("threadedComment",_t("text",i.t||""),f))})});a.push("");return a.join("")}function ku(e,r){var t=[];var a=false;e.replace(Yr,function n(e){var n=Jr(e);switch(qr(n[0])){case"":break;case"":break;case"":;case"":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+n[0]+" in threaded comments");}return e});return t}function Tu(e){var r=[$r,At("personList",null,{xmlns:Nt.TCMNT,"xmlns:x":Ft[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(At("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}function Eu(e){var r={};r.iauthor=e._R(4);var t=kn(e,16);r.rfx=t.s;r.ref=Ma(t.s);e.l+=16;return r}function yu(e,r){if(r==null)r=wa(36);r._W(4,e[1].iauthor);Tn(e[0],r);r._W(4,0);r._W(4,0);r._W(4,0);r._W(4,0);return r}var Su=Za;function _u(e){return Ja(e.slice(0,54))}function xu(e,r){var t=[];var a=[];var n={};var i=false;ka(e,function s(e,f,l){switch(l){case 632:a.push(e);break;case 635:n=e;break;case 637:n.t=e.t;n.h=e.h;n.r=e.r;break;case 636:n.author=a[n.iauthor];delete n.iauthor;if(r.sheetRows&&n.rfx&&r.sheetRows<=n.rfx.r)break;if(!n.t)n.t="";delete n.rfx;t.push(n);break;case 3072:break;case 35:i=true;break;case 36:i=false;break;case 37:break;case 38:break;default:if(f.T){}else if(!i||r.WTF)throw new Error("Unexpected record 0x"+l.toString(16));}});return t}function Au(e){var r=Ta();var t=[];Ea(r,628);Ea(r,630);e.forEach(function(e){e[1].forEach(function(e){if(t.indexOf(e.a)>-1)return;t.push(e.a.slice(0,54));Ea(r,632,_u(e.a))})});Ea(r,631);Ea(r,633);e.forEach(function(e){e[1].forEach(function(a){a.iauthor=t.indexOf(a.a);var n={s:La(e[0]),e:La(e[0])};Ea(r,635,yu([n,a]));if(a.t&&a.t.length>0)Ea(r,637,an(a));Ea(r,636);delete a.iauthor})});Ea(r,634);Ea(r,629);return r.end()}var Cu="application/vnd.ms-office.vbaProject";function Ou(e){var r=er.utils.cfb_new({root:"R"});e.FullPaths.forEach(function(t,a){if(t.slice(-1)==="/"||!t.match(/_VBA_PROJECT_CUR/))return;var n=t.replace(/^[^\/]*/,"R").replace(/\/_VBA_PROJECT_CUR\u0000*/,"");er.utils.cfb_add(r,n,e.FileIndex[a].content)});return er.write(r)}function Ru(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")er.utils.cfb_add(e,n,r.FileIndex[a].content)})}var Iu=["xlsb","xlsm","xlam","biff8","xla"];function Nu(){return{"!type":"dialog"}}function Fu(){return{"!type":"dialog"}}function Du(){return{"!type":"macro"}}function Pu(){return{"!type":"macro"}}var Lu=function(){var e=/(^|[^A-Za-z_])R(\[?-?\d+\]|[1-9]\d*|)C(\[?-?\d+\]|[1-9]\d*|)(?![A-Za-z0-9_])/g;var r={r:0,c:0};function t(e,t,a,n){var i=false,s=false;if(a.length==0)s=true;else if(a.charAt(0)=="["){s=true;a=a.slice(1,-1)}if(n.length==0)i=true;else if(n.charAt(0)=="["){i=true;n=n.slice(1,-1)}var f=a.length>0?parseInt(a,10)|0:0,l=n.length>0?parseInt(n,10)|0:0;if(i)l+=r.c;else--l;if(s)f+=r.r;else--f;return t+(i?"":"$")+Na(l)+(s?"":"$")+Ca(f)}return function a(n,i){r=i;return n.replace(e,t)}}();var Mu=/(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})(?![_.\(A-Za-z0-9])/g;var Uu=function(){return function e(r,t){return r.replace(Mu,function(e,r,a,n,i,s){var f=Ia(n)-(a?0:t.c);var l=Aa(s)-(i?0:t.r);var o=i=="$"?l+1:l==0?"":"["+l+"]";var c=a=="$"?f+1:f==0?"":"["+f+"]";return r+"R"+o+"C"+c})}}();function Bu(e,r){return e.replace(Mu,function(e,t,a,n,i,s){return t+(a=="$"?a+n:Na(Ia(n)+r.c))+(i=="$"?i+s:Ca(Aa(s)+r.r))})}function Wu(e,r,t){var a=Ua(r),n=a.s,i=La(t);var s={r:i.r-n.r,c:i.c-n.c};return Bu(e,s)}function Hu(e){if(e.length==1)return false;return true}function zu(e){return e.replace(/_xlfn\./g,"")}function Vu(e){e.l+=1;return}function $u(e,r){var t=e._R(r==1?1:2);return[t&16383,t>>14&1,t>>15&1]}function Gu(e,r,t){var a=2;if(t){if(t.biff>=2&&t.biff<=5)return ju(e,r,t);else if(t.biff==12)a=4}var n=e._R(a),i=e._R(a);var s=$u(e,2);var f=$u(e,2);return{s:{r:n,c:s[0],cRel:s[1],rRel:s[2]},e:{r:i,c:f[0],cRel:f[1],rRel:f[2]}}}function ju(e){var r=$u(e,2),t=$u(e,2);var a=e._R(1);var n=e._R(1);return{s:{r:r[0],c:a,cRel:r[1],rRel:r[2]},e:{r:t[0],c:n,cRel:t[1],rRel:t[2]}}}function Xu(e,r,t){if(t.biff<8)return ju(e,r,t);var a=e._R(t.biff==12?4:2),n=e._R(t.biff==12?4:2);var i=$u(e,2);var s=$u(e,2);return{s:{r:a,c:i[0],cRel:i[1],rRel:i[2]},e:{r:n,c:s[0],cRel:s[1],rRel:s[2]}}}function Yu(e,r,t){if(t&&t.biff>=2&&t.biff<=5)return Ku(e,r,t);var a=e._R(t&&t.biff==12?4:2);var n=$u(e,2);return{r:a,c:n[0],cRel:n[1],rRel:n[2]}}function Ku(e){var r=$u(e,2);var t=e._R(1);return{r:r[0],c:t,cRel:r[1],rRel:r[2]}}function Zu(e){var r=e._R(2);var t=e._R(2);return{r:r,c:t&255,fQuoted:!!(t&16384),cRel:t>>15,rRel:t>>15}}function Ju(e,r,t){var a=t&&t.biff?t.biff:8;if(a>=2&&a<=5)return qu(e,r,t);var n=e._R(a>=12?4:2);var i=e._R(2);var s=(i&16384)>>14,f=(i&32768)>>15;i&=16383;if(f==1)while(n>524287)n-=1048576;if(s==1)while(i>8191)i=i-16384;return{r:n,c:i,cRel:s,rRel:f}}function qu(e){var r=e._R(2);var t=e._R(1);var a=(r&32768)>>15,n=(r&16384)>>14;r&=16383;if(a==1&&r>=8192)r=r-16384;if(n==1&&t>=128)t=t-256;return{r:r,c:t,cRel:n,rRel:a}}function Qu(e,r,t){var a=(e[e.l++]&96)>>5;var n=Gu(e,t.biff>=2&&t.biff<=5?6:8,t);return[a,n]}function eh(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2,"i");var i=8;if(t)switch(t.biff){case 5:e.l+=12;i=6;break;case 12:i=12;break;}var s=Gu(e,i,t);return[a,n,s]}function rh(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t&&t.biff>8?12:t.biff<8?6:8;return[a]}function th(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2);var i=8;if(t)switch(t.biff){case 5:e.l+=12;i=6;break;case 12:i=12;break;}e.l+=i;return[a,n]}function ah(e,r,t){var a=(e[e.l++]&96)>>5;var n=Xu(e,r-1,t);return[a,n]}function nh(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t.biff==2?6:t.biff==12?14:7;return[a]}function ih(e){var r=e[e.l+1]&1;var t=1;e.l+=4;return[r,t]}function sh(e,r,t){e.l+=2;var a=e._R(t&&t.biff==2?1:2);var n=[];for(var i=0;i<=a;++i)n.push(e._R(t&&t.biff==2?1:2));return n}function fh(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=2;return[a,e._R(t&&t.biff==2?1:2)]}function lh(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=2;return[a,e._R(t&&t.biff==2?1:2)]}function oh(e){var r=e[e.l+1]&255?1:0;e.l+=2;return[r,e._R(2)]}function ch(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=t&&t.biff==2?3:4;return[a]}function uh(e){var r=e._R(1),t=e._R(1);return[r,t]}function hh(e){e._R(2);return uh(e,2)}function dh(e){e._R(2);return uh(e,2)}function vh(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Yu(e,0,t);return[a,n]}function ph(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Ju(e,0,t);return[a,n]}function mh(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(2);if(t&&t.biff==5)e.l+=12;var i=Yu(e,0,t);return[a,n,i]}function bh(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(t&&t.biff<=3?1:2);return[Gd[n],$d[n],a]}function gh(e,r,t){var a=e[e.l++];var n=e._R(1),i=t&&t.biff<=3?[a==88?-1:0,e._R(1)]:wh(e);return[n,(i[0]===0?$d:Vd)[i[1]]]}function wh(e){return[e[e.l+1]>>7,e._R(2)&32767]}function kh(e,r,t){e.l+=t&&t.biff==2?3:4;return}function Th(e,r,t){e.l++;if(t&&t.biff==12)return[e._R(4,"i"),0];var a=e._R(2);var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Eh(e){e.l++;return Jn[e._R(1)]}function yh(e){e.l++;return e._R(2)}function Sh(e){e.l++;return e._R(1)!==0}function _h(e){e.l++;return En(e,8)}function xh(e,r,t){e.l++;return ds(e,r-1,t)}function Ah(e,r){var t=[e._R(1)];if(r==12)switch(t[0]){case 2:t[0]=4;break;case 4:t[0]=16;break;case 0:t[0]=1;break;case 1:t[0]=2;break;}switch(t[0]){case 4:t[1]=ss(e,1)?"TRUE":"FALSE";if(r!=12)e.l+=7;break;case 37:;case 16:t[1]=Jn[e[e.l]];e.l+=r==12?4:8;break;case 0:e.l+=8;break;case 1:t[1]=En(e,8);break;case 2:t[1]=gs(e,0,{biff:r>0&&r<8?2:r});break;default:throw new Error("Bad SerAr: "+t[0]);}return t}function Ch(e,r,t){var a=e._R(t.biff==12?4:2);var n=[];for(var i=0;i!=a;++i)n.push((t.biff==12?kn:Ms)(e,8));return n}function Oh(e,r,t){var a=0,n=0;if(t.biff==12){a=e._R(4);n=e._R(4)}else{n=1+e._R(1);a=1+e._R(2)}if(t.biff>=2&&t.biff<8){--a;if(--n==0)n=256}for(var i=0,s=[];i!=a&&(s[i]=[]);++i)for(var f=0;f!=n;++f)s[i][f]=Ah(e,t.biff);return s}function Rh(e,r,t){var a=e._R(1)>>>5&3;var n=!t||t.biff>=8?4:2;var i=e._R(n);switch(t.biff){case 2:e.l+=5;break;case 3:;case 4:e.l+=8;break;case 5:e.l+=12;break;}return[a,0,i]}function Ih(e,r,t){if(t.biff==5)return Nh(e,r,t);var a=e._R(1)>>>5&3;var n=e._R(2);var i=e._R(4);return[a,n,i]}function Nh(e){var r=e._R(1)>>>5&3;var t=e._R(2,"i");e.l+=8;var a=e._R(2);e.l+=12;return[r,t,a]}function Fh(e,r,t){var a=e._R(1)>>>5&3;e.l+=t&&t.biff==2?3:4;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Dh(e,r,t){var a=e._R(1)>>>5&3;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Ph(e,r,t){var a=e._R(1)>>>5&3;e.l+=4;if(t.biff<8)e.l--;if(t.biff==12)e.l+=2;return[a]}function Lh(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2);var i=4;if(t)switch(t.biff){case 5:i=15;break;case 12:i=6;break;}e.l+=i;return[a,n]}var Mh=ga;var Uh=ga;var Bh=ga;function Wh(e,r,t){e.l+=2;return[Zu(e,4,t)]}function Hh(e){e.l+=6;return[]}var zh=Wh;var Vh=Hh;var $h=Hh;var Gh=Wh;function jh(e){e.l+=2;return[ls(e),e._R(2)&1]}var Xh=Wh;var Yh=jh;var Kh=Hh;var Zh=Wh;var Jh=Wh;var qh=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];function Qh(e){e.l+=2;var r=e._R(2);var t=e._R(2);var a=e._R(4);var n=e._R(2);var i=e._R(2);var s=qh[t>>2&31];return{ixti:r,coltype:t&3,rt:s,idx:a,c:n,C:i}}function ed(e){e.l+=2;return[e._R(4)]}function rd(e,r,t){e.l+=5;e.l+=2;e.l+=t.biff==2?1:4;return["PTGSHEET"]}function td(e,r,t){e.l+=t.biff==2?4:5;return["PTGENDSHEET"]}function ad(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function nd(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function id(e){e.l+=4;return[0,0]}var sd={1:{n:"PtgExp",f:Th},2:{n:"PtgTbl",f:Bh},3:{n:"PtgAdd",f:Vu},4:{n:"PtgSub",f:Vu},5:{n:"PtgMul",f:Vu},6:{n:"PtgDiv",f:Vu},7:{n:"PtgPower",f:Vu},8:{n:"PtgConcat",f:Vu},9:{n:"PtgLt",f:Vu},10:{n:"PtgLe",f:Vu},11:{n:"PtgEq",f:Vu},12:{n:"PtgGe",f:Vu},13:{n:"PtgGt",f:Vu},14:{n:"PtgNe",f:Vu},15:{n:"PtgIsect",f:Vu},16:{n:"PtgUnion",f:Vu},17:{n:"PtgRange",f:Vu},18:{n:"PtgUplus",f:Vu},19:{n:"PtgUminus",f:Vu},20:{n:"PtgPercent",f:Vu},21:{n:"PtgParen",f:Vu},22:{n:"PtgMissArg",f:Vu},23:{n:"PtgStr",f:xh},26:{n:"PtgSheet",f:rd},27:{n:"PtgEndSheet",f:td},28:{n:"PtgErr",f:Eh},29:{n:"PtgBool",f:Sh},30:{n:"PtgInt",f:yh},31:{n:"PtgNum",f:_h},32:{n:"PtgArray",f:nh},33:{n:"PtgFunc",f:bh},34:{n:"PtgFuncVar",f:gh},35:{n:"PtgName",f:Rh},36:{n:"PtgRef",f:vh},37:{n:"PtgArea",f:Qu},38:{n:"PtgMemArea",f:Fh},39:{n:"PtgMemErr",f:Mh},40:{n:"PtgMemNoMem",f:Uh},41:{n:"PtgMemFunc",f:Dh},42:{n:"PtgRefErr",f:Ph},43:{n:"PtgAreaErr",f:rh},44:{n:"PtgRefN",f:ph},45:{n:"PtgAreaN",f:ah},46:{n:"PtgMemAreaN",f:ad},47:{n:"PtgMemNoMemN",f:nd},57:{n:"PtgNameX",f:Ih},58:{n:"PtgRef3d",f:mh},59:{n:"PtgArea3d",f:eh},60:{n:"PtgRefErr3d",f:Lh},61:{n:"PtgAreaErr3d",f:th},255:{}};var fd={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,78:46,110:46,79:47,111:47,88:34,120:34,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61};var ld={1:{n:"PtgElfLel",f:jh},2:{n:"PtgElfRw",f:Zh},3:{n:"PtgElfCol",f:zh},6:{n:"PtgElfRwV",f:Jh},7:{n:"PtgElfColV",f:Gh},10:{n:"PtgElfRadical",f:Xh},11:{n:"PtgElfRadicalS",f:Kh},13:{n:"PtgElfColS",f:Vh},15:{n:"PtgElfColSV",f:$h},16:{n:"PtgElfRadicalLel",f:Yh},25:{n:"PtgList",f:Qh},29:{n:"PtgSxName",f:ed},255:{}};var od={0:{n:"PtgAttrNoop",f:id},1:{n:"PtgAttrSemi",f:ch},2:{n:"PtgAttrIf",f:lh},4:{n:"PtgAttrChoose",f:sh},8:{n:"PtgAttrGoto",f:fh},16:{n:"PtgAttrSum",f:kh},32:{n:"PtgAttrBaxcel",f:ih},33:{n:"PtgAttrBaxcel",f:ih},64:{n:"PtgAttrSpace",f:hh},65:{n:"PtgAttrSpaceSemi",f:dh},128:{n:"PtgAttrIfError",f:oh},255:{}};function cd(e,r,t,a){if(a.biff<8)return ga(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]=Oh(e,0,a);i.push(t[s][1]);break;case"PtgMemArea":t[s][2]=Ch(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(ga(e,r));return i}function ud(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=sd[i]||sd[fd[i]];if(i===24||i===25)n=(i===24?ld:od)[e[e.l+1]];if(!n||!n.f){ga(e,r)}else{s.push([n.n,n.f(e,r,t)])}}return s}function hd(e){var r=[];for(var t=0;t=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};function vd(e,r){var t=e.lastIndexOf("!"),a=r.lastIndexOf("!");if(t==-1&&a==-1)return e+":"+r;if(t>0&&a>0&&e.slice(0,t).toLowerCase()==r.slice(0,a).toLowerCase())return e+":"+r.slice(a+1);console.error("Cannot hydrate range",e,r);return e+":"+r}function pd(e,r,t){if(!e)return"SH33TJSERR0";if(t.biff>8&&(!e.XTI||!e.XTI[r]))return e.SheetNames[r];if(!e.XTI)return"SH33TJSERR6";var a=e.XTI[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 e[a[0]].slice(1).map(function(e){return e.Name}).join(";;");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 md(e,r,t){var a=pd(e,r,t);return a=="#REF"?a:Ha(a,t)}function bd(e,r,t,a,n){var i=n&&n.biff||8;var s={s:{c:0,r:0},e:{c:0,r:0}};var f=[],l,o,c,u=0,h=0,d,v="";if(!e[0]||!e[0][0])return"";var p=-1,m="";for(var b=0,g=e[0].length;b=0){switch(e[0][p][1][0]){case 0:m=Sr(" ",e[0][p][1][1]);break;case 1:m=Sr("\r",e[0][p][1][1]);break;default:m="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][p][1][0]);}o=o+m;p=-1}f.push(o+dd[w[0]]+l);break;case"PtgIsect":l=f.pop();o=f.pop();f.push(o+" "+l);break;case"PtgUnion":l=f.pop();o=f.pop();f.push(o+","+l);break;case"PtgRange":l=f.pop();o=f.pop();f.push(vd(o,l));break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgAttrIfError":break;case"PtgRef":c=ya(w[1][1],s,n);f.push(_a(c,i));break;case"PtgRefN":c=t?ya(w[1][1],t,n):w[1][1];f.push(_a(c,i));break;case"PtgRef3d":u=w[1][1];c=ya(w[1][2],s,n);v=md(a,u,n);var k=v;f.push(v+"!"+_a(c,i));break;case"PtgFunc":;case"PtgFuncVar":var T=w[1][0],E=w[1][1];if(!T)T=0;T&=127;var y=T==0?[]:f.slice(-T);f.length-=T;if(E==="User")E=y.shift();f.push(E+"("+y.join(",")+")");break;case"PtgBool":f.push(w[1]?"TRUE":"FALSE");break;case"PtgInt":f.push(w[1]);break;case"PtgNum":f.push(String(w[1]));break;case"PtgStr":f.push('"'+w[1].replace(/"/g,'""')+'"');break;case"PtgErr":f.push(w[1]);break;case"PtgAreaN":d=Sa(w[1][1],t?{s:t}:s,n);f.push(xa(d,n));break;case"PtgArea":d=Sa(w[1][1],s,n);f.push(xa(d,n));break;case"PtgArea3d":u=w[1][1];d=w[1][2];v=md(a,u,n);f.push(v+"!"+xa(d,n));break;case"PtgAttrSum":f.push("SUM("+f.pop()+")");break;case"PtgAttrBaxcel":;case"PtgAttrSemi":break;case"PtgName":h=w[1][2];var S=(a.names||[])[h-1]||(a[0]||[])[h];var _=S?S.Name:"SH33TJSNAME"+String(h);if(_&&_.slice(0,6)=="_xlfn."&&!n.xlfn)_=_.slice(6);f.push(_);break;case"PtgNameX":var x=w[1][1];h=w[1][2];var A;if(n.biff<=5){if(x<0)x=-x;if(a[x])A=a[x][h]}else{var C="";if(((a[x]||[])[0]||[])[0]==14849){}else if(((a[x]||[])[0]||[])[0]==1025){if(a[x][h]&&a[x][h].itab>0){C=a.SheetNames[a[x][h].itab-1]+"!"}}else C=a.SheetNames[h-1]+"!";if(a[x]&&a[x][h])C+=a[x][h].Name;else if(a[0]&&a[0][h])C+=a[0][h].Name;else{var O=(pd(a,x,n)||"").split(";;");if(O[h-1])C=O[h-1];else C+="SH33TJSERRX"}f.push(C);break}if(!A)A={Name:"SH33TJSERRY"};f.push(A.Name);break;case"PtgParen":var R="(",I=")";if(p>=0){m="";switch(e[0][p][1][0]){case 2:R=Sr(" ",e[0][p][1][1])+R;break;case 3:R=Sr("\r",e[0][p][1][1])+R;break;case 4:I=Sr(" ",e[0][p][1][1])+I;break;case 5:I=Sr("\r",e[0][p][1][1])+I;break;default:if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][p][1][0]);}p=-1}f.push(R+f.pop()+I);break;case"PtgRefErr":f.push("#REF!");break;case"PtgRefErr3d":f.push("#REF!");break;case"PtgExp":c={c:w[1][1],r:w[1][0]};var N={c:t.c,r:t.r};if(a.sharedf[Ma(c)]){var F=a.sharedf[Ma(c)];f.push(bd(F,s,N,a,n))}else{var D=false;for(l=0;l!=a.arrayf.length;++l){o=a.arrayf[l];if(c.co[0].e.c)continue;if(c.ro[0].e.r)continue;f.push(bd(o[1],s,N,a,n));D=true;break}if(!D)f.push(w[1])}break;case"PtgArray":f.push("{"+hd(w[1])+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":;case"PtgAttrSpaceSemi":p=b;break;case"PtgTbl":break;case"PtgMemErr":break;case"PtgMissArg":f.push("");break;case"PtgAreaErr":f.push("#REF!");break;case"PtgAreaErr3d":f.push("#REF!");break;case"PtgList":f.push("Table"+w[1].idx+"[#"+w[1].rt+"]");break;case"PtgMemAreaN":;case"PtgMemNoMemN":;case"PtgAttrNoop":;case"PtgSheet":;case"PtgEndSheet":break;case"PtgMemFunc":break;case"PtgMemNoMem":break;case"PtgElfCol":;case"PtgElfColS":;case"PtgElfColSV":;case"PtgElfColV":;case"PtgElfLel":;case"PtgElfRadical":;case"PtgElfRadicalLel":;case"PtgElfRadicalS":;case"PtgElfRw":;case"PtgElfRwV":throw new Error("Unsupported ELFs");case"PtgSxName":throw new Error("Unrecognized Formula Token: "+String(w));default:throw new Error("Unrecognized Formula Token: "+String(w));}var P=["PtgAttrSpace","PtgAttrSpaceSemi","PtgAttrGoto"];if(n.biff!=3)if(p>=0&&P.indexOf(e[0][b][0])==-1){w=e[0][p];var L=true;switch(w[1][0]){case 4:L=false;case 0:m=Sr(" ",w[1][1]);break;case 5:L=false;case 1:m=Sr("\r",w[1][1]);break;default:m="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+w[1][0]);}f.push((L?m:"")+f.pop()+(L?"":m));p=-1}}if(f.length>1&&n.WTF)throw new Error("bad formula stack");if(f[0]=="TRUE")return true;if(f[0]=="FALSE")return false;return f[0]}function gd(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ga(e,r-2)];var f=ud(e,s,t);if(r!==s+n)i=cd(e,r-s-n,f,t);e.l=a;return[f,i]}function wd(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ga(e,r-2)];var f=ud(e,s,t);if(r!==s+n)i=cd(e,r-s-n,f,t);e.l=a;return[f,i]}function kd(e,r,t,a){var n=e.l+r;var i=ud(e,a,t);var s;if(n!==e.l)s=cd(e,n-e.l,i,t);return[i,s]}function Td(e,r,t){var a=e.l+r;var n,i=e._R(2);var s=ud(e,i,t);if(i==65535)return[[],ga(e,r-2)];if(r!==i+2)n=cd(e,a-i-2,s,t);return[s,n]}function Ed(e){var r;if(sa(e,e.l+6)!==65535)return[En(e),"n"];switch(e[e.l]){case 0:e.l+=8;return["String","s"];case 1:r=e[e.l+2]===1;e.l+=8;return[r,"b"];case 2:r=e[e.l+2];e.l+=8;return[r,"e"];case 3:e.l+=8;return["","s"];}return[]}function yd(e){if(e==null){var r=wa(8);r._W(1,3);r._W(1,0);r._W(2,0);r._W(2,0);r._W(2,65535);return r}else if(typeof e=="number")return yn(e);return yn(0)}function Sd(e,r,t){var a=e.l+r;var n=Rs(e,6);if(t.biff==2)++e.l;var i=Ed(e,8);var s=e._R(1);if(t.biff!=2){e._R(1);if(t.biff>=5){e._R(4)}}var f=wd(e,a-e.l,t);return{cell:n,val:i[0],formula:f,shared:s>>3&1,tt:i[1]}}function _d(e,r,t,a,n){var i=Is(r,t,n);var s=yd(e.v);var f=wa(6);var l=1|32;f._W(2,l);f._W(4,0);var o=wa(e.bf.length);for(var c=0;c0?cd(e,i,n,t):null;return[n,s]}var Ad=xd;var Cd=xd;var Od=xd;var Rd=xd;function Id(e){if((e|0)==e&&e=0){var r=wa(11);r._W(4,3);r._W(1,30);r._W(2,e);r._W(4,0);return r}var t=wa(17);t._W(4,11);t._W(1,31);t._W(8,e);t._W(4,0);return t}function Nd(e){var r=wa(10);r._W(4,2);r._W(1,28);r._W(1,e);r._W(4,0);return r}function Fd(e){var r=wa(10);r._W(4,2);r._W(1,29);r._W(1,e?1:0);r._W(4,0);return r}function Dd(e){var r=wa(7);r._W(4,3+2*e.length);r._W(1,23);r._W(2,e.length);var t=wa(2*e.length);t._W(2*e.length,e,"utf16le");var a=wa(4);a._W(4,0);return F([r,t,a])}function Pd(e){var r=La(e);var t=wa(15);t._W(4,7);t._W(1,4|1<<5);t._W(4,r.r);t._W(2,r.c|(e.charAt(0)=="$"?0:1)<<14|(e.match(/\$\d/)?0:1)<<15);t._W(4,0);return t}function Ld(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);var n=La(e);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var i=wa(17);i._W(4,9);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,n.r);i._W(2,n.c|(e.charAt(0)=="$"?0:1)<<14|(e.match(/\$\d/)?0:1)<<15);i._W(4,0);return i}function Md(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=wa(17);n._W(4,9);n._W(1,28|1<<5);n._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));n._W(4,0);n._W(2,0);n._W(4,0);return n}function Ud(e){var r=e.split(":"),t=r[0];var a=wa(23);a._W(4,15);t=r[0];var n=La(t);a._W(1,4|1<<5);a._W(4,n.r);a._W(2,n.c|(t.charAt(0)=="$"?0:1)<<14|(t.match(/\$\d/)?0:1)<<15);a._W(4,0);t=r[1];n=La(t);a._W(1,4|1<<5);a._W(4,n.r);a._W(2,n.c|(t.charAt(0)=="$"?0:1)<<14|(t.match(/\$\d/)?0:1)<<15);a._W(4,0);a._W(1,17);a._W(4,0);return a}function Bd(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=e.split(":");s=n[0];var i=wa(27);i._W(4,19);var s=n[0],f=La(s);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,f.r);i._W(2,f.c|(s.charAt(0)=="$"?0:1)<<14|(s.match(/\$\d/)?0:1)<<15);s=n[1];f=La(s);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,f.r);i._W(2,f.c|(s.charAt(0)=="$"?0:1)<<14|(s.match(/\$\d/)?0:1)<<15);i._W(1,17);i._W(4,0);return i}function Wd(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=Ua(e);var i=wa(23);i._W(4,15);i._W(1,27|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,n.s.r);i._W(4,n.e.r);i._W(2,n.s.c);i._W(2,n.e.c);i._W(4,0);return i}function Hd(e,r){if(typeof e=="number")return Id(e);if(typeof e=="boolean")return Fd(e);if(/^#(DIV\/0!|GETTING_DATA|N\/A|NAME\?|NULL!|NUM!|REF!|VALUE!)$/.test(e))return Nd(+qn[e]);if(e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Pd(e);if(e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Ud(e);if(e.match(/^#REF!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Wd(e,r);if(e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Ld(e,r);if(e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Bd(e,r);if(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!#REF!$/.test(e))return Md(e,r);if(/^".*"$/.test(e))return Dd(e);if(/^[+-]\d+$/.test(e))return Id(parseInt(e,10));throw"Formula |"+e+"| not supported for XLSB"}var zd=Hd;var Vd={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"};var $d={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ",319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK",348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD",380:"CUBEVALUE",381:"CUBEMEMBER",382:"CUBEMEMBERPROPERTY",383:"CUBERANKEDMEMBER",384:"HEX2BIN",385:"HEX2DEC",386:"HEX2OCT",387:"DEC2BIN",388:"DEC2HEX",389:"DEC2OCT",390:"OCT2BIN",391:"OCT2HEX",392:"OCT2DEC",393:"BIN2DEC",394:"BIN2OCT",395:"BIN2HEX",396:"IMSUB",397:"IMDIV",398:"IMPOWER",399:"IMABS",400:"IMSQRT",401:"IMLN",402:"IMLOG2",403:"IMLOG10",404:"IMSIN",405:"IMCOS",406:"IMEXP",407:"IMARGUMENT",408:"IMCONJUGATE",409:"IMAGINARY",410:"IMREAL",411:"COMPLEX",412:"IMSUM",413:"IMPRODUCT",414:"SERIESSUM",415:"FACTDOUBLE",416:"SQRTPI",417:"QUOTIENT",418:"DELTA",419:"GESTEP",420:"ISEVEN",421:"ISODD",422:"MROUND",423:"ERF",424:"ERFC",425:"BESSELJ",426:"BESSELK",427:"BESSELY",428:"BESSELI",429:"XIRR",430:"XNPV",431:"PRICEMAT",432:"YIELDMAT",433:"INTRATE",434:"RECEIVED",435:"DISC",436:"PRICEDISC",437:"YIELDDISC",438:"TBILLEQ",439:"TBILLPRICE",440:"TBILLYIELD",441:"PRICE",442:"YIELD",443:"DOLLARDE",444:"DOLLARFR",445:"NOMINAL",446:"EFFECT",447:"CUMPRINC",448:"CUMIPMT",449:"EDATE",450:"EOMONTH",451:"YEARFRAC",452:"COUPDAYBS",453:"COUPDAYS",454:"COUPDAYSNC",455:"COUPNCD",456:"COUPNUM",457:"COUPPCD",458:"DURATION",459:"MDURATION",460:"ODDLPRICE",461:"ODDLYIELD",462:"ODDFPRICE",463:"ODDFYIELD",464:"RANDBETWEEN",465:"WEEKNUM",466:"AMORDEGRC",467:"AMORLINC",468:"CONVERT",724:"SHEETJS",469:"ACCRINT",470:"ACCRINTM",471:"WORKDAY",472:"NETWORKDAYS",473:"GCD",474:"MULTINOMIAL",475:"LCM",476:"FVSCHEDULE",477:"CUBEKPIMEMBER",478:"CUBESET",479:"CUBESETCOUNT",480:"IFERROR",481:"COUNTIFS",482:"SUMIFS",483:"AVERAGEIF",484:"AVERAGEIFS"};var Gd={2:1,3:1,10:0,15:1,16:1,17:1,18:1,19:0,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,34:0,35:0,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,63:0,65:3,66:3,67:1,68:1,69:1,70:1,71:1,72:1,73:1,74:0,75:1,76:1,77:1,79:2,80:2,83:1,85:0,86:1,89:0,90:1,94:0,95:0,97:2,98:1,99:1,101:3,102:3,105:1,106:1,108:2,111:1,112:1,113:1,114:1,117:2,118:1,119:4,121:1,126:1,127:1,128:1,129:1,130:1,131:1,133:1,134:1,135:1,136:2,137:2,138:2,140:1,141:1,142:3,143:4,144:4,161:1,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,186:1,189:3,190:1,195:3,196:3,197:1,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,225:0,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,247:4,252:2,257:1,261:1,271:1,273:4,274:2,275:2,276:2,277:3,278:3,279:1,280:3,281:3,282:3,283:1,284:1,285:2,286:4,287:3,288:2,289:4,290:3,291:3,292:3,293:4,294:1,295:3,296:1,297:3,298:1,299:2,300:3,301:3,302:4,303:2,304:2,305:2,306:2,307:2,308:2,309:3,310:2,311:2,312:2,313:2,314:2,315:2,316:4,325:2,326:2,327:2,328:2,331:2,332:2,337:2,342:1,343:1,346:2,347:1,350:4,351:3,352:1,353:2,360:1,368:1,369:1,370:1,371:1,372:1,373:1,374:1,375:1,376:1,377:1,378:1,382:3,385:1,392:1,393:1,396:2,397:2,398:2,399:1,400:1,401:1,402:1,403:1,404:1,405:1,406:1,407:1,408:1,409:1,410:1,414:4,415:1,416:1,417:2,420:1,421:1,422:2,424:1,425:2,426:2,427:2,428:2,430:3,438:3,439:3,440:3,443:2,444:2,445:2,446:2,447:6,448:6,449:2,450:2,464:2,468:3,476:2,479:1,480:2,65535:0};function jd(e){if(e.slice(0,3)=="of:")e=e.slice(3);if(e.charCodeAt(0)==61){e=e.slice(1);if(e.charCodeAt(0)==61)e=e.slice(1)}e=e.replace(/COM\.MICROSOFT\./g,"");e=e.replace(/\[((?:\.[A-Z]+[0-9]+)(?::\.[A-Z]+[0-9]+)?)\]/g,function(e,r){return r.replace(/\./g,"")});e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});e=e.replace(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function Xd(e){var r="of:="+e.replace(Mu,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function Yd(e){e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});var r=e.split(":");var t=r[0].split(".")[0];return[t,r[0].split(".")[1]+(r.length>1?":"+(r[1].split(".")[1]||r[1].split(".")[0]):"")]}function Kd(e){return e.replace(/!/,".")}var Zd={};var Jd={};var qd=typeof Map!=="undefined";function Qd(e,r,t){var a=0,n=e.length;if(t){if(qd?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var i=qd?t.get(r):t[r];for(;a-1){t.width=Uo(a);t.customWidth=1}else if(r.width!=null)t.width=r.width;if(r.hidden)t.hidden=true;if(r.level!=null){t.outlineLevel=t.level=r.level}return t}function rv(e,r){if(!e)return;var t=[.7,.7,.75,.75,.3,.3];if(r=="xlml")t=[1,1,1,1,.5,.5];if(e.left==null)e.left=t[0];if(e.right==null)e.right=t[1];if(e.top==null)e.top=t[2];if(e.bottom==null)e.bottom=t[3];if(e.header==null)e.header=t[4];if(e.footer==null)e.footer=t[5]}function tv(e,r,t){var a=t.revssf[r.z!=null?r.z:"General"];var n=60,i=e.length;if(a==null&&t.ssf){for(;n<392;++n)if(t.ssf[n]==null){qe(r.z,n);t.ssf[n]=r.z;t.revssf[r.z]=a=n;break}}for(n=0;n!=i;++n)if(e[n].numFmtId===a)return n;e[i]={numFmtId:a,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1};return i}function av(e,r,t,a,n,i){try{if(a.cellNF)e.z=Z[r]}catch(s){if(a.WTF)throw s}if(e.t==="z"&&!a.cellStyles)return;if(e.t==="d"&&typeof e.v==="string")e.v=Tr(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(Z[r]==null)qe(Xe[r]||"General",r);if(e.t==="e")e.w=e.w||Jn[e.v];else if(r===0){if(e.t==="n"){if((e.v|0)===e.v)e.w=e.v.toString(10);else e.w=oe(e.v)}else if(e.t==="d"){var f=hr(e.v);if((f|0)===f)e.w=f.toString(10);else e.w=oe(f)}else if(e.v===undefined)return"";else e.w=ce(e.v,Jd)}else if(e.t==="d")e.w=ze(r,hr(e.v),Jd);else e.w=ze(r,e.v,Jd)}catch(s){if(a.WTF)throw s}if(!a.cellStyles)return;if(t!=null)try{e.s=i.Fills[t];if(e.s.fgColor&&e.s.fgColor.theme&&!e.s.fgColor.rgb){e.s.fgColor.rgb=Io(n.themeElements.clrScheme[e.s.fgColor.theme].rgb,e.s.fgColor.tint||0);if(a.WTF)e.s.fgColor.raw_rgb=n.themeElements.clrScheme[e.s.fgColor.theme].rgb}if(e.s.bgColor&&e.s.bgColor.theme){e.s.bgColor.rgb=Io(n.themeElements.clrScheme[e.s.bgColor.theme].rgb,e.s.bgColor.tint||0);if(a.WTF)e.s.bgColor.raw_rgb=n.themeElements.clrScheme[e.s.bgColor.theme].rgb}}catch(s){if(a.WTF&&i.Fills)throw s}}function nv(e,r,t){if(e&&e["!ref"]){var a=za(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=Ba(t)}var sv=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var fv=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var lv=/<(?:\w:)?hyperlink [^>]*>/gm;var ov=/"(\w*:\w*)"/;var cv=/<(?:\w:)?col\b[^>]*[\/]?>/g;var uv=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var hv=/<(?:\w:)?pageMargins[^>]*\/>/g;var dv=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var vv=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var pv=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function mv(e,r,t,a,n,i,s){if(!e)return e;if(!a)a={"!id":{}};if(b!=null&&r.dense==null)r.dense=b;var f={};if(r.dense)f["!data"]=[];var l={s:{r:2e6,c:2e6},e:{r:0,c:0}};var o="",c="";var u=e.match(fv);if(u){o=e.slice(0,u.index);c=e.slice(u.index+u[0].length)}else o=c=e;var h=o.match(dv);if(h)gv(h[0],f,n,t);else if(h=o.match(vv))wv(h[0],h[1]||"",f,n,t,s,i);var d=(o.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(d>0){var v=o.slice(d,d+50).match(ov);if(v)iv(f,v[1])}var p=o.match(pv);if(p&&p[1])Nv(p[1],n);var m=[];if(r.cellStyles){var g=o.match(cv);if(g)Av(m,g)}if(u)Pv(u[1],f,r,l,i,s);var w=c.match(uv);if(w)f["!autofilter"]=Ov(w[0]);var k=[];var T=c.match(sv);if(T)for(d=0;d!=T.length;++d)k[d]=za(T[d].slice(T[d].indexOf('"')+1));var E=c.match(lv);if(E)Sv(f,E,a);var y=c.match(hv);if(y)f["!margins"]=_v(Jr(y[0]));if(!f["!ref"]&&l.e.c>=l.s.c&&l.e.r>=l.s.r)f["!ref"]=Ba(l);if(r.sheetRows>0&&f["!ref"]){var S=za(f["!ref"]);if(r.sheetRows<=+S.e.r){S.e.r=r.sheetRows-1;if(S.e.r>l.e.r)S.e.r=l.e.r;if(S.e.rl.e.c)S.e.c=l.e.c;if(S.e.c0)f["!cols"]=m;if(k.length>0)f["!merges"]=k;return f}function bv(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function gv(e,r,t,a){var n=Jr(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=rt(mt(n.codeName)); +}function wv(e,r,t,a,n){gv(e.slice(0,e.indexOf(">")),t,a,n)}function kv(e,r,t,a,n){var i=false;var s={},f=null;if(a.bookType!=="xlsx"&&r.vbaraw){var l=r.SheetNames[t];try{if(r.Workbook)l=r.Workbook.Sheets[t].CodeName||l}catch(o){}i=true;s.codeName=bt(nt(l))}if(e&&e["!outline"]){var c={summaryBelow:1,summaryRight:1};if(e["!outline"].above)c.summaryBelow=0;if(e["!outline"].left)c.summaryRight=0;f=(f||"")+At("outlinePr",null,c)}if(!i&&!f)return;n[n.length]=At("sheetPr",f,s)}var Tv=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var Ev=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function yv(e){var r={sheet:1};Tv.forEach(function(t){if(e[t]!=null&&e[t])r[t]="1"});Ev.forEach(function(t){if(e[t]!=null&&!e[t])r[t]="0"});if(e.password)r.password=mo(e.password).toString(16).toUpperCase();return At("sheetProtection",null,r)}function Sv(e,r,t){var a=e["!data"]!=null;for(var n=0;n!=r.length;++n){var i=Jr(mt(r[n]),true);if(!i.ref)return;var s=((t||{})["!id"]||[])[i.id];if(s){i.Target=s.Target;if(i.location)i.Target+="#"+rt(i.location)}else{i.Target="#"+rt(i.location);s={Target:i.Target,TargetMode:"Internal"}}i.Rel=s;if(i.tooltip){i.Tooltip=i.tooltip;delete i.tooltip}var f=za(i.ref);for(var l=f.s.r;l<=f.e.r;++l)for(var o=f.s.c;o<=f.e.c;++o){var c=Na(o)+Ca(l);if(a){if(!e["!data"][l])e["!data"][l]=[];if(!e["!data"][l][o])e["!data"][l][o]={t:"z",v:undefined};e["!data"][l][o].l=i}else{if(!e[c])e[c]={t:"z",v:undefined};e[c].l=i}}}}function _v(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function xv(e){rv(e);return At("pageMargins",null,e)}function Av(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Jr(r[a],true);if(n.hidden)n.hidden=ut(n.hidden);var i=parseInt(n.min,10)-1,s=parseInt(n.max,10)-1;if(n.outlineLevel)n.level=+n.outlineLevel||0;delete n.min;delete n.max;n.width=+n.width;if(!t&&n.width){t=true;Wo(n.width)}Ho(n);while(i<=s)e[i++]=yr(n)}}function Cv(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=At("col",null,ev(n,a))}t[t.length]="";return t.join("")}function Ov(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function Rv(e,r,t,a){var n=typeof e.ref=="string"?e.ref:Ba(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var i=t.Workbook.Names;var s=Ua(n);if(s.s.r==s.e.r){s.e.r=Ua(r["!ref"]).e.r;n=Ba(s)}for(var f=0;fa-z][^>]*)?\/?>/g;function Nv(e,r){if(!r.Views)r.Views=[{}];(e.match(Iv)||[]).forEach(function(e,t){var a=Jr(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(a.rightToLeft&&ut(a.rightToLeft))r.Views[t].RTL=true})}function Fv(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return At("sheetViews",At("sheetView",null,n),{})}function Dv(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if((e.v===undefined||e.t==="z"&&!(a||{}).sheetStubs)&&typeof e.f!=="string"&&typeof e.z=="undefined")return"";var n="";var i=e.t,s=e.v;if(e.t!=="z")switch(e.t){case"b":n=e.v?"1":"0";break;case"n":n=""+e.v;break;case"e":n=Jn[e.v];break;case"d":if(a&&a.cellDates)n=Tr(e.v,-1).toISOString();else{e=yr(e);e.t="n";n=""+(e.v=hr(Tr(e.v)))}if(typeof e.z==="undefined")e.z=Z[14];break;default:n=e.v;break;}var f=e.t=="z"||e.v==null?"":_t("v",nt(n)),l={r:r};var o=tv(a.cellXfs,e,a);if(o!==0)l.s=o;switch(e.t){case"n":break;case"d":l.t="d";break;case"b":l.t="b";break;case"e":l.t="e";break;case"z":break;default:if(e.v==null){delete e.t;break}if(e.v.length>32767)throw new Error("Text length must not exceed 32767 characters");if(a&&a.bookSST){f=_t("v",""+Qd(a.Strings,e.v,a.revStrings));l.t="s";break}else l.t="str";break;}if(e.t!=i){e.t=i;e.v=s}if(typeof e.f=="string"&&e.f){var c=e.F&&e.F.slice(0,r.length)==r?{t:"array",ref:e.F}:null;f=At("f",nt(e.f),c)+(e.v!=null?f:"")}if(e.l){e.l.display=nt(n);t["!links"].push([r,e.l])}if(e.D)l.cm=1;return At("c",f,l)}var Pv=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var i=gt("v"),s=gt("f");return function f(l,o,c,u,h,d){var v=0,p="",m=[],b=[],g=0,w=0,k=0,T="",E;var y,S=0,_=0;var x,A;var C=0,O=0;var R=Array.isArray(d.CellXf),I;var N=[];var F=[];var D=o["!data"]!=null;var P=[],L={},M=false;var U=!!c.sheetStubs;for(var B=l.split(r),W=0,H=B.length;W!=H;++W){p=B[W].trim();var z=p.length;if(z===0)continue;var V=0;e:for(v=0;v":if(p[v-1]!="/"){++v;break e}if(c&&c.cellStyles){y=Jr(p.slice(V,v),true);S=y.r!=null?parseInt(y.r,10):S+1;_=-1;if(c.sheetRows&&c.sheetRows=v)break;y=Jr(p.slice(V,v),true);S=y.r!=null?parseInt(y.r,10):S+1;_=-1;if(c.sheetRows&&c.sheetRowsS-1)u.s.r=S-1;if(u.e.r":"")+p;if(b!=null&&b.length===2){g=0;T=b[1];for(w=0;w!=T.length;++w){if((k=T.charCodeAt(w)-64)<1||k>26)break;g=26*g+k}--g;_=g}else++_;for(w=0;w!=p.length;++w)if(p.charCodeAt(w)===62)break;++w;y=Jr(p.slice(0,w),true);if(!y.r)y.r=Ma({r:S-1,c:_});T=p.slice(w);E={t:""};if((b=T.match(i))!=null&&b[1]!=="")E.v=rt(b[1]);if(c.cellFormula){if((b=T.match(s))!=null&&b[1]!==""){E.f=rt(mt(b[1]),true);if(!c.xlfn)E.f=zu(E.f);if(b[0].indexOf('t="array"')>-1){E.F=(T.match(n)||[])[1];if(E.F.indexOf(":")>-1)N.push([za(E.F),E.F])}else if(b[0].indexOf('t="shared"')>-1){A=Jr(b[0]);var G=rt(mt(b[1]));if(!c.xlfn)G=zu(G);F[parseInt(A.si,10)]=[A,G,y.r]}}else if(b=T.match(/]*\/>/)){A=Jr(b[0]);if(F[A.si])E.f=Wu(F[A.si][1],F[A.si][2],y.r)}var j=La(y.r);for(w=0;w=N[w][0].s.r&&j.r<=N[w][0].e.r)if(j.c>=N[w][0].s.c&&j.c<=N[w][0].e.c)E.F=N[w][1]}if(y.t==null&&E.v===undefined){if(E.f||E.F){E.v=0;E.t="n"}else if(!U)continue;else E.t="z"}else E.t=y.t||"n";if(u.s.c>_)u.s.c=_;if(u.e.c<_)u.e.c=_;switch(E.t){case"n":if(E.v==""||E.v==null){if(!U)continue;E.t="z"}else E.v=parseFloat(E.v);break;case"s":if(typeof E.v=="undefined"){if(!U)continue;E.t="z"}else{x=Zd[parseInt(E.v,10)];E.v=x.t;E.r=x.r;if(c.cellHTML)E.h=x.h}break;case"str":E.t="s";E.v=E.v!=null?rt(mt(E.v),true):"";if(c.cellHTML)E.h=ft(E.v);break;case"inlineStr":b=T.match(a);E.t="s";if(b!=null&&(x=Hl(b[1]))){E.v=x.t;if(c.cellHTML)E.h=x.h}else E.v="";break;case"b":E.v=ut(E.v);break;case"d":if(c.cellDates)E.v=Tr(E.v,1);else{E.v=hr(Tr(E.v,1));E.t="n"}break;case"e":if(!c||c.cellText!==false)E.w=E.v;E.v=qn[E.v];break;}C=O=0;I=null;if(R&&y.s!==undefined){I=d.CellXf[y.s];if(I!=null){if(I.numFmtId!=null)C=I.numFmtId;if(c.cellStyles){if(I.fillId!=null)O=I.fillId}}}av(E,C,O,c,h,d);if(c.cellDates&&R&&E.t=="n"&&Me(Z[C])){E.t="d";E.v=mr(E.v)}if(y.cm&&c.xlmeta){var X=(c.xlmeta.Cell||[])[+y.cm-1];if(X&&X.type=="XLDAPR")E.D=true}if(D){var Y=La(y.r);if(!o["!data"][Y.r])o["!data"][Y.r]=[];o["!data"][Y.r][Y.c]=E}else o[y.r]=E}}if(P.length>0)o["!rows"]=P}}();function Lv(e,r,t,a){var n=[],i=[],s=za(e["!ref"]),f="",l,o="",c=[],u=0,h=0,d=e["!rows"];var v=e["!data"]!=null;var p={r:o},m,b=-1;for(h=s.s.c;h<=s.e.c;++h)c[h]=Na(h);for(u=s.s.r;u<=s.e.r;++u){i=[];o=Ca(u);for(h=s.s.c;h<=s.e.c;++h){l=c[h]+o;var g=v?(e["!data"][u]||[])[h]:e[l];if(g===undefined)continue;if((f=Dv(g,l,e,r,t,a))!=null)i.push(f)}if(i.length>0||d&&d[u]){p={r:o};if(d&&d[u]){m=d[u];if(m.hidden)p.hidden=1;b=-1;if(m.hpx)b=$o(m.hpx);else if(m.hpt)b=m.hpt;if(b>-1){p.ht=b;p.customHeight=1}if(m.level){p.outlineLevel=m.level}}n[n.length]=At("row",i.join(""),p)}}if(d)for(;u-1){p.ht=b;p.customHeight=1}if(m.level){p.outlineLevel=m.level}n[n.length]=At("row","",p)}}return n.join("")}function Mv(e,r,t,a){var n=[$r,At("worksheet",null,{xmlns:Ft[0],"xmlns:r":Nt.r})];var i=t.SheetNames[e],s=0,f="";var l=t.Sheets[i];if(l==null)l={};var o=l["!ref"]||"A1";var c=za(o);if(c.e.c>16383||c.e.r>1048575){if(r.WTF)throw new Error("Range "+o+" exceeds format limit A1:XFD1048576");c.e.c=Math.min(c.e.c,16383);c.e.r=Math.min(c.e.c,1048575);o=Ba(c)}if(!a)a={};l["!comments"]=[];var u=[];kv(l,t,e,r,n);n[n.length]=At("dimension",null,{ref:o});n[n.length]=Fv(l,r,e,t);if(r.sheetFormat)n[n.length]=At("sheetFormatPr",null,{defaultRowHeight:r.sheetFormat.defaultRowHeight||"16",baseColWidth:r.sheetFormat.baseColWidth||"10",outlineLevelRow:r.sheetFormat.outlineLevelRow||"7"});if(l["!cols"]!=null&&l["!cols"].length>0)n[n.length]=Cv(l,l["!cols"]);n[s=n.length]="";l["!links"]=[];if(l["!ref"]!=null){f=Lv(l,r,e,t,a);if(f.length>0)n[n.length]=f}if(n.length>s+1){n[n.length]="";n[s]=n[s].replace("/>",">")}if(l["!protect"])n[n.length]=yv(l["!protect"]);if(l["!autofilter"]!=null)n[n.length]=Rv(l["!autofilter"],l,t,e);if(l["!merges"]!=null&&l["!merges"].length>0)n[n.length]=bv(l["!merges"]);var h=-1,d,v=-1;if(l["!links"].length>0){n[n.length]="";l["!links"].forEach(function(e){if(!e[1].Target)return;d={ref:e[0]};if(e[1].Target.charAt(0)!="#"){v=oi(a,-1,nt(e[1].Target).replace(/#.*$/,""),ii.HLINK);d["r:id"]="rId"+v}if((h=e[1].Target.indexOf("#"))>-1)d.location=nt(e[1].Target.slice(h+1));if(e[1].Tooltip)d.tooltip=nt(e[1].Tooltip);d.display=e[1].display;n[n.length]=At("hyperlink",null,d)});n[n.length]=""}delete l["!links"];if(l["!margins"]!=null)n[n.length]=xv(l["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=_t("ignoredErrors",At("ignoredError",null,{numberStoredAsText:1,sqref:o}));if(u.length>0){v=oi(a,-1,"../drawings/drawing"+(e+1)+".xml",ii.DRAW);n[n.length]=At("drawing",null,{"r:id":"rId"+v});l["!drawing"]=u}if(l["!comments"].length>0){v=oi(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",ii.VML);n[n.length]=At("legacyDrawing",null,{"r:id":"rId"+v});l["!legacy"]=v}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function Uv(e,r){var t={};var a=e.l+r;t.r=e._R(4);e.l+=4;var n=e._R(2);e.l+=1;var i=e._R(1);e.l=a;if(i&7)t.level=i&7;if(i&16)t.hidden=true;if(i&32)t.hpt=n/20;return t}function Bv(e,r,t){var a=wa(17+8*16);var n=(t["!rows"]||[])[e]||{};a._W(4,e);a._W(4,0);var i=320;if(n.hpx)i=$o(n.hpx)*20;else if(n.hpt)i=n.hpt*20;a._W(2,i);a._W(1,0);var s=0;if(n.level)s|=n.level;if(n.hidden)s|=16;if(n.hpx||n.hpt)s|=32;a._W(1,s);a._W(1,0);var f=0,l=a.l;a.l+=4;var o={r:e,c:0};var c=t["!data"]!=null;for(var u=0;u<16;++u){if(r.s.c>u+1<<10||r.e.ca.l?a.slice(0,a.l):a}function Wv(e,r,t,a){var n=Bv(a,t,r);if(n.length>17||(r["!rows"]||[])[a])Ea(e,0,n)}var Hv=kn;var zv=Tn;function Vv(){}function $v(e,r){var t={};var a=e[e.l];++e.l;t.above=!(a&64);t.left=!(a&128);e.l+=18;t.name=on(e,r-19);return t}function Gv(e,r,t){if(t==null)t=wa(84+4*e.length);var a=192;if(r){if(r.above)a&=~64;if(r.left)a&=~128}t._W(1,a);for(var n=1;n<3;++n)t._W(1,0);_n({auto:1},t);t._W(-4,-1);t._W(-4,-1);cn(e,t);return t.slice(0,t.l)}function jv(e){var r=nn(e);return[r]}function Xv(e,r,t){if(t==null)t=wa(8);return sn(r,t)}function Yv(e){var r=fn(e);return[r]}function Kv(e,r,t){if(t==null)t=wa(4);return ln(r,t)}function Zv(e){var r=nn(e);var t=e._R(1);return[r,t,"b"]}function Jv(e,r,t){if(t==null)t=wa(9);sn(r,t);t._W(1,e.v?1:0);return t}function qv(e){var r=fn(e);var t=e._R(1);return[r,t,"b"]}function Qv(e,r,t){if(t==null)t=wa(5);ln(r,t);t._W(1,e.v?1:0);return t}function ep(e){var r=nn(e);var t=e._R(1);return[r,t,"e"]}function rp(e,r,t){if(t==null)t=wa(9);sn(r,t);t._W(1,e.v);return t}function tp(e){var r=fn(e);var t=e._R(1);return[r,t,"e"]}function ap(e,r,t){if(t==null)t=wa(8);ln(r,t);t._W(1,e.v);t._W(2,0);t._W(1,0);return t}function np(e){var r=nn(e);var t=e._R(4);return[r,t,"s"]}function ip(e,r,t){if(t==null)t=wa(12);sn(r,t);t._W(4,r.v);return t}function sp(e){var r=fn(e);var t=e._R(4);return[r,t,"s"]}function fp(e,r,t){if(t==null)t=wa(8);ln(r,t);t._W(4,r.v);return t}function lp(e){var r=nn(e);var t=En(e);return[r,t,"n"]}function op(e,r,t){if(t==null)t=wa(16);sn(r,t);yn(e.v,t);return t}function cp(e){var r=fn(e);var t=En(e);return[r,t,"n"]}function up(e,r,t){if(t==null)t=wa(12);ln(r,t);yn(e.v,t);return t}function hp(e){var r=nn(e);var t=mn(e);return[r,t,"n"]}function dp(e,r,t){if(t==null)t=wa(12);sn(r,t);bn(e.v,t);return t}function vp(e){var r=fn(e);var t=mn(e);return[r,t,"n"]}function pp(e,r,t){if(t==null)t=wa(8);ln(r,t);bn(e.v,t);return t}function mp(e){var r=nn(e);var t=en(e);return[r,t,"is"]}function bp(e){var r=nn(e);var t=Za(e);return[r,t,"str"]}function gp(e,r,t){var a=e.v==null?"":String(e.v);if(t==null)t=wa(12+4*e.v.length);sn(r,t);Ja(a,t);return t.length>t.l?t.slice(0,t.l):t}function wp(e){var r=fn(e);var t=Za(e);return[r,t,"str"]}function kp(e,r,t){var a=e.v==null?"":String(e.v);if(t==null)t=wa(8+4*a.length);ln(r,t);Ja(a,t);return t.length>t.l?t.slice(0,t.l):t}function Tp(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"b"];if(t.cellFormula){e.l+=2;var f=Cd(e,a-e.l,t);s[3]=bd(f,null,n,t.supbooks,t)}else e.l=a;return s}function Ep(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"e"];if(t.cellFormula){e.l+=2;var f=Cd(e,a-e.l,t);s[3]=bd(f,null,n,t.supbooks,t)}else e.l=a;return s}function yp(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=En(e);var s=[n,i,"n"];if(t.cellFormula){e.l+=2;var f=Cd(e,a-e.l,t);s[3]=bd(f,null,n,t.supbooks,t)}else e.l=a;return s}function Sp(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=Za(e);var s=[n,i,"str"];if(t.cellFormula){e.l+=2;var f=Cd(e,a-e.l,t);s[3]=bd(f,null,n,t.supbooks,t)}else e.l=a;return s}var _p=kn;var xp=Tn;function Ap(e,r){if(r==null)r=wa(4);r._W(4,e);return r}function Cp(e,r){var t=e.l+r;var a=kn(e,16);var n=un(e);var i=Za(e);var s=Za(e);var f=Za(e);e.l=t;var l={rfx:a,relId:n,loc:i,display:f};if(s)l.Tooltip=s;return l}function Op(e,r){var t=wa(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));Tn({s:La(e[0]),e:La(e[0])},t);pn("rId"+r,t);var a=e[1].Target.indexOf("#");var n=a==-1?"":e[1].Target.slice(a+1);Ja(n||"",t);Ja(e[1].Tooltip||"",t);Ja("",t);return t.slice(0,t.l)}function Rp(){}function Ip(e,r,t){var a=e.l+r;var n=gn(e,16);var i=e._R(1);var s=[n];s[2]=i;if(t.cellFormula){var f=Ad(e,a-e.l,t);s[1]=f}else e.l=a;return s}function Np(e,r,t){var a=e.l+r;var n=kn(e,16);var i=[n];if(t.cellFormula){var s=Rd(e,a-e.l,t);i[1]=s;e.l=a}else e.l=a;return i}function Fp(e,r,t){if(t==null)t=wa(18);var a=ev(e,r);t._W(-4,e);t._W(-4,e);t._W(4,(a.width||10)*256);t._W(4,0);var n=0;if(r.hidden)n|=1;if(typeof a.width=="number")n|=2;if(r.level)n|=r.level<<8;t._W(2,n);return t}var Dp=["left","right","top","bottom","header","footer"];function Pp(e){var r={};Dp.forEach(function(t){r[t]=En(e,8)});return r}function Lp(e,r){if(r==null)r=wa(6*8);rv(e);Dp.forEach(function(t){yn(e[t],r)});return r}function Mp(e){var r=e._R(2);e.l+=28;return{RTL:r&32}}function Up(e,r,t){if(t==null)t=wa(30);var a=924;if((((r||{}).Views||[])[0]||{}).RTL)a|=32;t._W(2,a);t._W(4,0);t._W(4,0);t._W(4,0);t._W(1,0);t._W(1,0);t._W(2,0);t._W(2,100);t._W(2,0);t._W(2,0);t._W(2,0);t._W(4,0);return t}function Bp(e){var r=wa(24);r._W(4,4);r._W(4,1);Tn(e,r);return r}function Wp(e,r){if(r==null)r=wa(16*4+2);r._W(2,e.password?mo(e.password):0);r._W(4,1);[["objects",false],["scenarios",false],["formatCells",true],["formatColumns",true],["formatRows",true],["insertColumns",true],["insertRows",true],["insertHyperlinks",true],["deleteColumns",true],["deleteRows",true],["selectLockedCells",false],["sort",true],["autoFilter",true],["pivotTables",true],["selectUnlockedCells",false]].forEach(function(t){if(t[1])r._W(4,e[t[0]]!=null&&!e[t[0]]?1:0);else r._W(4,e[t[0]]!=null&&e[t[0]]?0:1)});return r}function Hp(){}function zp(){}function Vp(e,r,t,a,n,i,s){if(!e)return e;var f=r||{};if(!a)a={"!id":{}};if(b!=null&&f.dense==null)f.dense=b;var l={};if(f.dense)l["!data"]=[];var o;var c={s:{r:2e6,c:2e6},e:{r:0,c:0}};var u=[];var h=false,d=false;var v,p,m,g,w,k,T,E,y;var S=[];f.biff=12;f["!row"]=0;var _=0,x=false;var A=[];var C={};var O=f.supbooks||n.supbooks||[[]];O.sharedf=C;O.arrayf=A;O.SheetNames=n.SheetNames||n.Sheets.map(function(e){return e.name});if(!f.supbooks){f.supbooks=O;if(n.Names)for(var R=0;R=R[0].s.r&&v.r<=R[0].e.r)if(w>=R[0].s.c&&w<=R[0].e.c){p.F=Ba(R[0]);x=true}}if(!x&&e.length>3)p.f=e[3]}if(c.s.r>v.r)c.s.r=v.r;if(c.s.c>w)c.s.c=w;if(c.e.rv.r)c.s.r=v.r;if(c.s.c>w)c.s.c=w;if(c.e.r=e.s){I[e.e--]={width:e.w/256,hidden:!!(e.flags&1),level:e.level};if(!F){F=true;Wo(e.w/256)}Ho(I[e.e+1])}break;case 161:l["!autofilter"]={ref:Ba(e)};break;case 476:l["!margins"]=e;break;case 147:if(!n.Sheets[t])n.Sheets[t]={};if(e.name)n.Sheets[t].CodeName=e.name;if(e.above||e.left)l["!outline"]={above:e.above,left:e.left};break;case 137:if(!n.Views)n.Views=[{}];if(!n.Views[0])n.Views[0]={};if(e.RTL)n.Views[0].RTL=true;break;case 485:break;case 64:;case 1053:break;case 151:break;case 152:;case 175:;case 644:;case 625:;case 562:;case 396:;case 1112:;case 1146:;case 471:;case 1050:;case 649:;case 1105:;case 589:;case 607:;case 564:;case 1055:;case 168:;case 174:;case 1180:;case 499:;case 507:;case 550:;case 171:;case 167:;case 1177:;case 169:;case 1181:;case 551:;case 552:;case 661:;case 639:;case 478:;case 537:;case 477:;case 536:;case 1103:;case 680:;case 1104:;case 1024:;case 663:;case 535:;case 678:;case 504:;case 1043:;case 428:;case 170:;case 3072:;case 50:;case 2070:;case 1045:break;case 35:h=true;break;case 36:h=false;break;case 37:u.push(b);h=true;break;case 38:u.pop();h=false;break;default:if(r.T){}else if(!h||f.WTF)throw new Error("Unexpected record 0x"+b.toString(16));}},f);delete f.supbooks;delete f["!row"];if(!l["!ref"]&&(c.s.r<2e6||o&&(o.e.r>0||o.e.c>0||o.s.r>0||o.s.c>0)))l["!ref"]=Ba(o||c);if(f.sheetRows&&l["!ref"]){var L=za(l["!ref"]);if(f.sheetRows<=+L.e.r){L.e.r=f.sheetRows-1;if(L.e.r>c.e.r)L.e.r=c.e.r;if(L.e.rc.e.c)L.e.c=c.e.c;if(L.e.c0)l["!merges"]=S;if(I.length>0)l["!cols"]=I;if(N.length>0)l["!rows"]=N;return l}function $p(e,r,t,a,n,i,s){var f={r:t,c:a};if(r.c)i["!comments"].push([Ma(f),r.c]);if(r.v===undefined)return false;var l="";switch(r.t){case"b":l=r.v?"1":"0";break;case"d":r=yr(r);r.z=r.z||Z[14];r.v=hr(Tr(r.v));r.t="n";break;case"n":;case"e":l=""+r.v;break;default:l=r.v;break;}f.s=tv(n.cellXfs,r,n);if(r.l)i["!links"].push([Ma(f),r.l]);switch(r.t){case"s":;case"str":if(n.bookSST){l=Qd(n.Strings,r.v==null?"":String(r.v),n.revStrings);f.t="s";f.v=l;if(s)Ea(e,18,fp(r,f));else Ea(e,7,ip(r,f))}else{f.t="str";if(s)Ea(e,17,kp(r,f));else Ea(e,6,gp(r,f))}return true;case"n":if(r.v==(r.v|0)&&r.v>-1e3&&r.v<1e3){if(s)Ea(e,13,pp(r,f));else Ea(e,2,dp(r,f))}else{if(s)Ea(e,16,up(r,f));else Ea(e,5,op(r,f))}return true;case"b":f.t="b";if(s)Ea(e,15,Qv(r,f));else Ea(e,4,Jv(r,f));return true;case"e":f.t="e";if(s)Ea(e,14,ap(r,f));else Ea(e,3,rp(r,f));return true;}if(s)Ea(e,12,Kv(r,f));else Ea(e,1,Xv(r,f));return true}function Gp(e,r,t,a){var n=za(r["!ref"]||"A1"),i,s="",f=[];Ea(e,145);var l=r["!data"]!=null;var o=n.e.r;if(r["!rows"])o=Math.max(n.e.r,r["!rows"].length-1);for(var c=n.s.r;c<=o;++c){s=Ca(c);Wv(e,r,n,c);var u=false;if(c<=n.e.r)for(var h=n.s.c;h<=n.e.c;++h){if(c===n.s.r)f[h]=Na(h);i=f[h]+s;var d=l?(r["!data"][c]||[])[h]:r[i];if(!d){u=false;continue}u=$p(e,d,c,h,a,r,u)}}Ea(e,146)}function jp(e,r){if(!r||!r["!merges"])return;Ea(e,177,Ap(r["!merges"].length));r["!merges"].forEach(function(r){Ea(e,176,xp(r))});Ea(e,178)}function Xp(e,r){if(!r||!r["!cols"])return;Ea(e,390);r["!cols"].forEach(function(r,t){if(r)Ea(e,60,Fp(t,r))});Ea(e,391)}function Yp(e,r){if(!r||!r["!ref"])return;Ea(e,648);Ea(e,649,Bp(za(r["!ref"])));Ea(e,650)}function Kp(e,r,t){r["!links"].forEach(function(r){if(!r[1].Target)return;var a=oi(t,-1,r[1].Target.replace(/#.*$/,""),ii.HLINK);Ea(e,494,Op(r,a))});delete r["!links"]}function Zp(e,r,t,a){if(r["!comments"].length>0){var n=oi(a,-1,"../drawings/vmlDrawing"+(t+1)+".vml",ii.VML);Ea(e,551,pn("rId"+n));r["!legacy"]=n}}function Jp(e,r,t,a){if(!r["!autofilter"])return;var n=r["!autofilter"];var i=typeof n.ref==="string"?n.ref:Ba(n.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var s=t.Workbook.Names;var f=Ua(i);if(f.s.r==f.e.r){f.e.r=Ua(r["!ref"]).e.r;i=Ba(f)}for(var l=0;l16383||o.e.r>1048575){if(r.WTF)throw new Error("Range "+(s["!ref"]||"A1")+" exceeds format limit A1:XFD1048576");o.e.c=Math.min(o.e.c,16383);o.e.r=Math.min(o.e.c,1048575)}s["!links"]=[];s["!comments"]=[];Ea(n,129);if(t.vbaraw||s["!outline"])Ea(n,147,Gv(f,s["!outline"]));Ea(n,148,zv(o));qp(n,s,t.Workbook);Qp(n,s);Xp(n,s,e,r,t);Gp(n,s,e,r,t);em(n,s);Jp(n,s,t,e);jp(n,s);Kp(n,s,a);if(s["!margins"])Ea(n,476,Lp(s["!margins"]));if(!r||r.ignoreEC||r.ignoreEC==void 0)Yp(n,s);Zp(n,s,e,a);Ea(n,130);return n.end()}function tm(e){var r=[];var t=e.match(/^/);var a;(e.match(/(.*?)<\/c:pt>/gm)||[]).forEach(function(e){var a=e.match(/(.*)<\/c:v><\/c:pt>/);if(!a)return;r[+a[1]]=t?+a[2]:a[2]});var n=rt((e.match(/([\s\S]*?)<\/c:formatCode>/)||["","General"])[1]);(e.match(/(.*?)<\/c:f>/gm)||[]).forEach(function(e){a=e.replace(/<.*?>/g,"")});return[r,n,a]}function am(e,r,t,a,n,i){var s=i||{"!type":"chart"};if(!e)return i;var f=0,l=0,o="A";var c={s:{r:2e6,c:2e6},e:{r:0,c:0}};(e.match(/[\s\S]*?<\/c:numCache>/gm)||[]).forEach(function(e){var r=tm(e);c.s.r=c.s.c=0;c.e.c=f;o=Na(f);r[0].forEach(function(e,t){if(s["!data"]){if(!s["!data"][t])s["!data"][t]=[];s["!data"][t][f]={t:"n",v:e,z:r[1]}}else s[o+Ca(t)]={t:"n",v:e,z:r[1]};l=t});if(c.e.r0)s["!ref"]=Ba(c);return s}function nm(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var i={"!type":"chart","!drawel":null,"!rel":""};var s;var f=e.match(dv);if(f)gv(f[0],i,n,t);if(s=e.match(/drawing r:id="(.*?)"/))i["!rel"]=s[1];if(a["!id"][i["!rel"]])i["!drawel"]=a["!id"][i["!rel"]];return i}function im(e,r){e.l+=10;var t=Za(e,r-10);return{name:t}}function sm(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var i={"!type":"chart","!drawel":null,"!rel":""};var s=[];var f=false;ka(e,function l(e,a,o){switch(o){case 550:i["!rel"]=e;break;case 651:if(!n.Sheets[t])n.Sheets[t]={};if(e.name)n.Sheets[t].CodeName=e.name;break;case 562:;case 652:;case 669:;case 679:;case 551:;case 552:;case 476:;case 3072:break;case 35:f=true;break;case 36:f=false;break;case 37:s.push(o);break;case 38:s.pop();break;default:if(a.T>0)s.push(o);else if(a.T<0)s.pop();else if(!f||r.WTF)throw new Error("Unexpected record 0x"+o.toString(16));}},r);if(a["!id"][i["!rel"]])i["!drawel"]=a["!id"][i["!rel"]];return i}var fm=[["allowRefreshQuery",false,"bool"],["autoCompressPictures",true,"bool"],["backupFile",false,"bool"],["checkCompatibility",false,"bool"],["CodeName",""],["date1904",false,"bool"],["defaultThemeVersion",0,"int"],["filterPrivacy",false,"bool"],["hidePivotFieldList",false,"bool"],["promptedSolutions",false,"bool"],["publishItems",false,"bool"],["refreshAllConnections",false,"bool"],["saveExternalLinkValues",true,"bool"],["showBorderUnselectedTables",true,"bool"],["showInkAnnotation",true,"bool"],["showObjects","all"],["showPivotChartFilter",false,"bool"],["updateLinks","userSet"]];var lm=[["activeTab",0,"int"],["autoFilterDateGrouping",true,"bool"],["firstSheet",0,"int"],["minimized",false,"bool"],["showHorizontalScroll",true,"bool"],["showSheetTabs",true,"bool"],["showVerticalScroll",true,"bool"],["tabRatio",600,"int"],["visibility","visible"]];var om=[];var cm=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function um(e,r){for(var t=0;t!=e.length;++t){var a=e[t];for(var n=0;n!=r.length;++n){var i=r[n];if(a[i[0]]==null)a[i[0]]=i[1];else switch(i[2]){case"bool":if(typeof a[i[0]]=="string")a[i[0]]=ut(a[i[0]]);break;case"int":if(typeof a[i[0]]=="string")a[i[0]]=parseInt(a[i[0]],10);break;}}}}function hm(e,r){for(var t=0;t!=r.length;++t){var a=r[t];if(e[a[0]]==null)e[a[0]]=a[1];else switch(a[2]){case"bool":if(typeof e[a[0]]=="string")e[a[0]]=ut(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function dm(e){hm(e.WBProps,fm);hm(e.CalcPr,cm);um(e.WBView,lm);um(e.Sheets,om);Jd.date1904=ut(e.WBProps.date1904)}function vm(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return ut(e.Workbook.WBProps.date1904)?"true":"false"}var pm=":][*?/\\".split("");function mm(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;pm.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function bm(e,r,t){e.forEach(function(a,n){mm(a);for(var i=0;i22)throw new Error("Bad Code Name: Worksheet"+s)}})}function gm(e){if(!e||!e.SheetNames||!e.Sheets)throw new Error("Invalid Workbook");if(!e.SheetNames.length)throw new Error("Workbook is empty");var r=e.Workbook&&e.Workbook.Sheets||[];bm(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":fm.forEach(function(e){if(c[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=ut(c[e[0]]);break;case"int":t.WBProps[e[0]]=parseInt(c[e[0]],10);break;default:t.WBProps[e[0]]=c[e[0]];}});if(c.codeName)t.WBProps.CodeName=mt(c.codeName);break;case"":break;case"":break;case"":;case"":break;case"":delete c[0];t.WBView.push(c);break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":a=false;break;case"":{i.Ref=rt(mt(e.slice(s,o)));t.Names.push(i)}break;case"":break;case"":delete c[0];t.CalcPr=c;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":;case"":break;case"":a=false;break;case"":a=true;break;case"":a=false;break;case"0;var a={codeName:"ThisWorkbook"};if(e.Workbook&&e.Workbook.WBProps){fm.forEach(function(r){if(e.Workbook.WBProps[r[0]]==null)return;if(e.Workbook.WBProps[r[0]]==r[1])return;a[r[0]]=e.Workbook.WBProps[r[0]]});if(e.Workbook.WBProps.CodeName){a.codeName=e.Workbook.WBProps.CodeName;delete a.CodeName}}r[r.length]=At("workbookPr",null,a);var n=e.Workbook&&e.Workbook.Sheets||[];var i=0;if(n&&n[0]&&!!n[0].Hidden){r[r.length]="";for(i=0;i!=e.SheetNames.length;++i){if(!n[i])break;if(!n[i].Hidden)break}if(i==e.SheetNames.length)i=0;r[r.length]='';r[r.length]=""}r[r.length]="";for(i=0;i!=e.SheetNames.length;++i){var s={name:nt(e.SheetNames[i].slice(0,31))};s.sheetId=""+(i+1);s["r:id"]="rId"+(i+1);if(n[i])switch(n[i].Hidden){case 1:s.state="hidden";break;case 2:s.state="veryHidden";break;}r[r.length]=At("sheet",null,s)}r[r.length]="";if(t){r[r.length]="";if(e.Workbook&&e.Workbook.Names)e.Workbook.Names.forEach(function(e){var t={name:e.Name};if(e.Comment)t.comment=e.Comment;if(e.Sheet!=null)t.localSheetId=""+e.Sheet;if(e.Hidden)t.hidden="1";if(!e.Ref)return;r[r.length]=At("definedName",nt(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Em(e,r){var t={};t.Hidden=e._R(4);t.iTabID=e._R(4);t.strRelID=vn(e,r-8);t.name=Za(e);return t}function ym(e,r){if(!r)r=wa(127);r._W(4,e.Hidden);r._W(4,e.iTabID);pn(e.strRelID,r);Ja(e.name.slice(0,31),r);return r.length>r.l?r.slice(0,r.l):r}function Sm(e,r){var t={};var a=e._R(4);t.defaultThemeVersion=e._R(4);var n=r>8?Za(e):"";if(n.length>0)t.CodeName=n;t.autoCompressPictures=!!(a&65536);t.backupFile=!!(a&64);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 _m(e,r){if(!r)r=wa(72);var t=0;if(e){if(e.date1904)t|=1;if(e.filterPrivacy)t|=8}r._W(4,t);r._W(4,0);cn(e&&e.CodeName||"ThisWorkbook",r);return r.slice(0,r.l)}function xm(e,r){var t={};e._R(4);t.ArchID=e._R(4);e.l+=r-8;return t}function Am(e,r,t){var a=e.l+r;var n=e._R(4);e.l+=1;var i=e._R(4);var s=dn(e);var f=Od(e,0,t);var l=un(e);if(n&32)s="_xlnm."+s;e.l=a;var o={Name:s,Ptg:f,Flags:n};if(i<268435455)o.Sheet=i;if(l)o.Comment=l;return o}function Cm(e,r){var t=wa(9);var a=0;var n=e.Name;if(Qn.indexOf(n)>-1){a|=32;n=n.slice(6)}t._W(4,a);t._W(1,0);t._W(4,e.Sheet==null?4294967295:e.Sheet);var i=[t,Ja(n),zd(e.Ref,r)];if(e.Comment)i.push(hn(e.Comment));else{var s=wa(4);s._W(4,4294967295);i.push(s)}return F(i)}function Om(e,r){var t={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var a=[];var n=false;if(!r)r={};r.biff=12;var i=[];var s=[[]];s.SheetNames=[];s.XTI=[];Fb[16]={n:"BrtFRTArchID$",f:xm};ka(e,function f(e,l,o){switch(o){case 156:s.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=bd(e.Ptg,null,null,s,r);delete r.SID;delete e.Ptg;i.push(e);break;case 1036:break;case 357:;case 358:;case 355:;case 667:if(!s[0].length)s[0]=[o,e];else s.push([o,e]);s[s.length-1].XTI=[];break;case 362:if(s.length===0){s[0]=[];s[0].XTI=[]}s[s.length-1].XTI=s[s.length-1].XTI.concat(e);s.XTI=s.XTI.concat(e);break;case 361:break;case 2071:;case 158:;case 143:;case 664:;case 353:break;case 3072:;case 3073:;case 534:;case 677:;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.push(o);n=true;break;case 36:a.pop();n=false;break;case 37:a.push(o);n=true;break;case 38:a.pop();n=false;break;case 16:break;default:if(l.T){}else if(!n||r.WTF&&a[a.length-1]!=37&&a[a.length-1]!=35)throw new Error("Unexpected record 0x"+o.toString(16));}},r);dm(t);t.Names=i;t.supbooks=s;return t}function Rm(e,r){Ea(e,143);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]};Ea(e,156,ym(n))}Ea(e,144)}function Im(r,t){if(!t)t=wa(127);for(var a=0;a!=4;++a)t._W(4,0);Ja("SheetJS",t);Ja(e.version,t);Ja(e.version,t);Ja("7262",t);return t.length>t.l?t.slice(0,t.l):t}function Nm(e,r){if(!r)r=wa(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 Fm(e,r){if(!r.Workbook||!r.Workbook.Sheets)return;var t=r.Workbook.Sheets;var a=0,n=-1,i=-1;for(;an)return;Ea(e,135);Ea(e,158,Nm(n));Ea(e,136)}function Dm(e,r){if(!r.Workbook||!r.Workbook.Names)return;r.Workbook.Names.forEach(function(t){try{if(t.Flags&14)return;Ea(e,39,Cm(t,r))}catch(a){console.error("Could not serialize defined name "+JSON.stringify(t))}})}function Pm(e){var r=e.SheetNames.length;var t=wa(12*r+28);t._W(4,r+2);t._W(4,0);t._W(4,-2);t._W(4,-2);t._W(4,0);t._W(4,-1);t._W(4,-1);for(var a=0;a-1?rt(r||e).replace(/<.*?>/g,""):a.r;break;case"DateTime":if(e.slice(-1)!="Z")e+="Z";a.v=(Tr(e)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(a.v!==a.v)a.v=rt(e);else if(a.v<60)a.v=a.v-1;if(!c||c=="General")c="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=qn[e];if(o.cellText!==false)a.w=e;break;default:if(e==""&&r==""){a.t="z"}else{a.t="s";a.v=ot(r||e)}break;}tb(a,c,o);if(o.cellFormula!==false){if(a.Formula){var p=rt(a.Formula);if(p.charCodeAt(0)==61)p=p.slice(1);a.f=Lu(p,n);delete a.Formula;if(a.ArrayRange=="RC")a.F=Lu("RC:RC",n);else if(a.ArrayRange){a.F=Lu(a.ArrayRange,n);l.push([za(a.F),a.F])}}else{for(v=0;v=l[v][0].s.r&&n.r<=l[v][0].e.r)if(n.c>=l[v][0].s.c&&n.c<=l[v][0].e.c)a.F=l[v][1]}}if(o.cellStyles){d.forEach(function(e){if(!h.patternType&&e.patternType)h.patternType=e.patternType});a.s=h}if(a.StyleID!==undefined)a.ixfe=a.StyleID}function ib(e){return Qn.indexOf("_xlnm."+e)>-1?"_xlnm."+e:e}function sb(e){e.t=e.v||"";e.t=e.t.replace(/\r\n/g,"\n").replace(/\r/g,"\n");e.v=e.w=e.ixfe=undefined}function fb(e,r){var t=r||{};Ge();var n=d(Rt(e));if(t.type=="binary"||t.type=="array"||t.type=="base64"){if(typeof a!=="undefined")n=a.utils.decode(65001,c(n));else n=mt(n)}var i=n.slice(0,1024).toLowerCase(),s=false;i=i.replace(/".*?"/g,"");if((i.indexOf(">")&1023)>Math.min(i.indexOf(",")&1023,i.indexOf(";")&1023)){var f=yr(t);f.type="string";return Nl.to_workbook(n,f)}if(i.indexOf("=0)s=true});if(s)return ng(n,t);Qm={"General Number":"General","General Date":Z[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":Z[15],"Short Date":Z[14],"Long Time":Z[19],"Medium Time":Z[18],"Short Time":Z[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:Z[2],Standard:Z[4],Percent:Z[10],Scientific:Z[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var l;var o=[],u;if(b!=null&&t.dense==null)t.dense=b;var h={},v=[],p={},m="";if(t.dense)p["!data"]=[];var g={},w={};var k=Jm(''),T=0;var E=0,y=0;var S={s:{r:2e6,c:2e6},e:{r:0,c:0}};var _={},x={};var A="",C=0;var O=[];var R={},I={},N=0,F=[];var D=[],P={};var L=[],M,U=false;var B=[];var W=[],H={},z=0,V=0;var $={Sheets:[],WBProps:{date1904:false}},G={};It.lastIndex=0;n=n.replace(//gm,"");var j="";while(l=It.exec(n))switch(l[3]=(j=l[3]).toLowerCase()){case"data":if(j=="data"){if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else if(l[0].charAt(l[0].length-2)!=="/")o.push([l[3],true]);break}if(o[o.length-1][1])break;if(l[1]==="/")nb(n.slice(T,l.index),A,k,o[o.length-1][0]=="comment"?P:g,{c:E,r:y},_,L[E],w,B,t);else{A="";k=Jm(l[0]);T=l.index+l[0].length}break;case"cell":if(l[1]==="/"){if(D.length>0)g.c=D;if((!t.sheetRows||t.sheetRows>y)&&g.v!==void 0){if(t.dense){if(!p["!data"][y])p["!data"][y]=[];p["!data"][y][E]=g}else p[Na(E)+Ca(y)]=g}if(g.HRef){g.l={Target:rt(g.HRef)};if(g.HRefScreenTip)g.l.Tooltip=g.HRefScreenTip;delete g.HRef;delete g.HRefScreenTip}if(g.MergeAcross||g.MergeDown){z=E+(parseInt(g.MergeAcross,10)|0);V=y+(parseInt(g.MergeDown,10)|0);if(z>E||V>y)O.push({s:{c:E,r:y},e:{c:z,r:V}})}if(!t.sheetStubs){if(g.MergeAcross)E=z+1;else++E}else if(g.MergeAcross||g.MergeDown){for(var X=E;X<=z;++X){for(var Y=y;Y<=V;++Y){if(X>E||Y>y){if(t.dense){if(!p["!data"][Y])p["!data"][Y]=[];p["!data"][Y][X]={t:"z"}}else p[Na(X)+Ca(Y)]={t:"z"}}}}E=z+1}else++E}else{g=qm(l[0]);if(g.Index)E=+g.Index-1;if(ES.e.c)S.e.c=E;if(l[0].slice(-2)==="/>")++E;D=[]}break;case"row":if(l[1]==="/"||l[0].slice(-2)==="/>"){if(yS.e.r)S.e.r=y;if(l[0].slice(-2)==="/>"){w=Jm(l[0]);if(w.Index)y=+w.Index-1}E=0;++y}else{w=Jm(l[0]);if(w.Index)y=+w.Index-1;H={};if(w.AutoFitHeight=="0"||w.Height){H.hpx=parseInt(w.Height,10);H.hpt=$o(H.hpx);W[y]=H}if(w.Hidden=="1"){H.hidden=true;W[y]=H}}break;case"worksheet":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"));v.push(m);if(S.s.r<=S.e.r&&S.s.c<=S.e.c){p["!ref"]=Ba(S);if(t.sheetRows&&t.sheetRows<=S.e.r){p["!fullref"]=p["!ref"];S.e.r=t.sheetRows-1;p["!ref"]=Ba(S)}}if(O.length)p["!merges"]=O;if(L.length>0)p["!cols"]=L;if(W.length>0)p["!rows"]=W;h[m]=p}else{S={s:{r:2e6,c:2e6},e:{r:0,c:0}};y=E=0;o.push([l[3],false]);u=Jm(l[0]);m=rt(u.Name);p={};if(t.dense)p["!data"]=[];O=[];B=[];W=[];G={name:m,Hidden:0};$.Sheets.push(G)}break;case"table":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else if(l[0].slice(-2)=="/>")break;else{o.push([l[3],false]);L=[];U=false}break;case"style":if(l[1]==="/")ab(_,x,t);else x=Jm(l[0]);break;case"numberformat":x.nf=rt(Jm(l[0]).Format||"General");if(Qm[x.nf])x.nf=Qm[x.nf];for(var K=0;K!=392;++K)if(Z[K]==x.nf)break;if(K==392)for(K=57;K!=392;++K)if(Z[K]==null){qe(x.nf,K);break}break;case"column":if(o[o.length-1][0]!=="table")break;if(l[1]==="/")break;M=Jm(l[0]);if(M.Hidden){M.hidden=true;delete M.Hidden}if(M.Width)M.wpx=parseInt(M.Width,10);if(!U&&M.wpx>10){U=true;Po=No;for(var J=0;J0)ee.Sheet=$.Sheets.length-1;$.Names.push(ee);break;case"namedcell":break;case"b":break;case"i":break;case"u":break;case"s":break;case"em":break;case"h2":break;case"h3":break;case"sub":break;case"sup":break;case"span":break;case"alignment":break;case"borders":break;case"border":break;case"font":if(l[0].slice(-2)==="/>")break;else if(l[1]==="/")A+=n.slice(C,l.index);else C=l.index+l[0].length;break;case"interior":if(!t.cellStyles)break;x.Interior=Jm(l[0]);break;case"protection":break;case"author":;case"title":;case"description":;case"created":;case"keywords":;case"subject":;case"category":;case"company":;case"lastauthor":;case"lastsaved":;case"lastprinted":;case"version":;case"revision":;case"totaltime":;case"hyperlinkbase":;case"manager":;case"contentstatus":;case"identifier":;case"language":;case"appname":if(l[0].slice(-2)==="/>")break;else if(l[1]==="/")Ni(R,j,n.slice(N,l.index));else N=l.index+l[0].length;break;case"paragraphs":break;case"styles":;case"workbook":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else o.push([l[3],false]);break;case"comment":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"));sb(P);D.push(P)}else{o.push([l[3],false]);u=Jm(l[0]);P={a:u.Author}}break;case"autofilter":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else if(l[0].charAt(l[0].length-2)!=="/"){var re=Jm(l[0]);p["!autofilter"]={ref:Lu(re.Range).replace(/\$/g,"")};o.push([l[3],true])}break;case"name":break;case"datavalidation":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else{if(l[0].charAt(l[0].length-2)!=="/")o.push([l[3],true])}break;case"pixelsperinch":break;case"componentoptions":;case"documentproperties":;case"customdocumentproperties":;case"officedocumentsettings":;case"pivottable":;case"pivotcache":;case"names":;case"mapinfo":;case"pagebreaks":;case"querytable":;case"sorting":;case"schema":;case"conditionalformatting":;case"smarttagtype":;case"smarttags":;case"excelworkbook":;case"workbookoptions":;case"worksheetoptions":if(l[1]==="/"){if((u=o.pop())[0]!==l[3])throw new Error("Bad state: "+u.join("|"))}else if(l[0].charAt(l[0].length-2)!=="/")o.push([l[3],true]);break;case"null":break;default:if(o.length==0&&l[3]=="document")return mg(n,t);if(o.length==0&&l[3]=="uof")return mg(n,t);var te=true;switch(o[o.length-1][0]){case"officedocumentsettings":switch(l[3]){case"allowpng":break;case"removepersonalinformation":break;case"downloadcomponents":break;case"locationofcomponents":break;case"colors":break;case"color":break;case"index":break;case"rgb":break;case"targetscreensize":break;case"readonlyrecommended":break;default:te=false;}break;case"componentoptions":switch(l[3]){case"toolbar":break;case"hideofficelogo":break;case"spreadsheetautofit":break;case"label":break;case"caption":break;case"maxheight":break;case"maxwidth":break;case"nextsheetnumber":break;default:te=false;}break;case"excelworkbook":switch(l[3]){case"date1904":$.WBProps.date1904=true;break;case"windowheight":break;case"windowwidth":break;case"windowtopx":break;case"windowtopy":break;case"tabratio":break;case"protectstructure":break;case"protectwindow":break;case"protectwindows":break;case"activesheet":break;case"displayinknotes":break;case"firstvisiblesheet":break;case"supbook":break;case"sheetname":break;case"sheetindex":break;case"sheetindexfirst":break;case"sheetindexlast":break;case"dll":break;case"acceptlabelsinformulas":break;case"donotsavelinkvalues":break;case"iteration":break;case"maxiterations":break;case"maxchange":break;case"path":break;case"xct":break;case"count":break;case"selectedsheets":break;case"calculation":break;case"uncalced":break;case"startupprompt":break;case"crn":break;case"externname":break;case"formula":break;case"colfirst":break;case"collast":break;case"wantadvise":break;case"boolean":break;case"error":break;case"text":break;case"ole":break;case"noautorecover":break;case"publishobjects":break;case"donotcalculatebeforesave":break;case"number":break;case"refmoder1c1":break;case"embedsavesmarttags":break;default:te=false;}break;case"workbookoptions":switch(l[3]){case"owcversion":break;case"height":break;case"width":break;default:te=false;}break;case"worksheetoptions":switch(l[3]){case"visible":if(l[0].slice(-2)==="/>"){}else if(l[1]==="/")switch(n.slice(N,l.index)){case"SheetHidden":G.Hidden=1;break;case"SheetVeryHidden":G.Hidden=2;break;}else N=l.index+l[0].length;break;case"header":if(!p["!margins"])rv(p["!margins"]={},"xlml");if(!isNaN(+Jr(l[0]).Margin))p["!margins"].header=+Jr(l[0]).Margin;break;case"footer":if(!p["!margins"])rv(p["!margins"]={},"xlml");if(!isNaN(+Jr(l[0]).Margin))p["!margins"].footer=+Jr(l[0]).Margin;break;case"pagemargins":var ae=Jr(l[0]);if(!p["!margins"])rv(p["!margins"]={},"xlml");if(!isNaN(+ae.Top))p["!margins"].top=+ae.Top;if(!isNaN(+ae.Left))p["!margins"].left=+ae.Left;if(!isNaN(+ae.Right))p["!margins"].right=+ae.Right;if(!isNaN(+ae.Bottom))p["!margins"].bottom=+ae.Bottom;break;case"displayrighttoleft":if(!$.Views)$.Views=[];if(!$.Views[0])$.Views[0]={};$.Views[0].RTL=true;break;case"freezepanes":break;case"frozennosplit":break;case"splithorizontal":;case"splitvertical":break;case"donotdisplaygridlines":break;case"activerow":break;case"activecol":break;case"toprowbottompane":break;case"leftcolumnrightpane":break;case"unsynced":break;case"print":break;case"printerrors":break;case"panes":break;case"scale":break;case"pane":break;case"number":break;case"layout":break;case"pagesetup":break;case"selected":break;case"protectobjects":break;case"enableselection":break;case"protectscenarios":break;case"validprinterinfo":break;case"horizontalresolution":break;case"verticalresolution":break;case"numberofcopies":break;case"activepane":break;case"toprowvisible":break;case"leftcolumnvisible":break;case"fittopage":break;case"rangeselection":break;case"papersizeindex":break;case"pagelayoutzoom":break;case"pagebreakzoom":break;case"filteron":break;case"fitwidth":break;case"fitheight":break;case"commentslayout":break;case"zoom":break;case"lefttoright":break;case"gridlines":break;case"allowsort":break;case"allowfilter":break;case"allowinsertrows":break;case"allowdeleterows":break;case"allowinsertcols":break;case"allowdeletecols":break;case"allowinserthyperlinks":break;case"allowformatcells":break;case"allowsizecols":break;case"allowsizerows":break;case"nosummaryrowsbelowdetail":if(!p["!outline"])p["!outline"]={};p["!outline"].above=true;break;case"tabcolorindex":break;case"donotdisplayheadings":break;case"showpagelayoutzoom":break;case"nosummarycolumnsrightdetail":if(!p["!outline"])p["!outline"]={};p["!outline"].left=true;break;case"blackandwhite":break;case"donotdisplayzeros":break;case"displaypagebreak":break;case"rowcolheadings":break;case"donotdisplayoutline":break;case"noorientation":break;case"allowusepivottables":break;case"zeroheight":break;case"viewablerange":break;case"selection":break;case"protectcontents":break;default:te=false;}break;case"pivottable":;case"pivotcache":switch(l[3]){case"immediateitemsondrop":break;case"showpagemultipleitemlabel":break;case"compactrowindent":break;case"location":break;case"pivotfield":break;case"orientation":break;case"layoutform":break;case"layoutsubtotallocation":break;case"layoutcompactrow":break;case"position":break;case"pivotitem":break;case"datatype":break;case"datafield":break;case"sourcename":break;case"parentfield":break;case"ptlineitems":break;case"ptlineitem":break;case"countofsameitems":break;case"item":break;case"itemtype":break;case"ptsource":break;case"cacheindex":break;case"consolidationreference":break;case"filename":break;case"reference":break;case"nocolumngrand":break;case"norowgrand":break;case"blanklineafteritems":break;case"hidden":break;case"subtotal":break;case"basefield":break;case"mapchilditems":break;case"function":break;case"refreshonfileopen":break;case"printsettitles":break;case"mergelabels":break;case"defaultversion":break;case"refreshname":break;case"refreshdate":break;case"refreshdatecopy":break;case"versionlastrefresh":break;case"versionlastupdate":break;case"versionupdateablemin":break;case"versionrefreshablemin":break;case"calculation":break;default:te=false;}break;case"pagebreaks":switch(l[3]){case"colbreaks":break;case"colbreak":break;case"rowbreaks":break;case"rowbreak":break;case"colstart":break;case"colend":break;case"rowend":break;default:te=false;}break;case"autofilter":switch(l[3]){case"autofiltercolumn":break;case"autofiltercondition":break;case"autofilterand":break;case"autofilteror":break;default:te=false;}break;case"querytable":switch(l[3]){case"id":break;case"autoformatfont":break;case"autoformatpattern":break;case"querysource":break;case"querytype":break;case"enableredirections":break;case"refreshedinxl9":break;case"urlstring":break;case"htmltables":break;case"connection":break;case"commandtext":break;case"refreshinfo":break;case"notitles":break;case"nextid":break;case"columninfo":break;case"overwritecells":break;case"donotpromptforfile":break;case"textwizardsettings":break;case"source":break;case"number":break;case"decimal":break;case"thousandseparator":break;case"trailingminusnumbers":break;case"formatsettings":break;case"fieldtype":break;case"delimiters":break;case"tab":break;case"comma":break;case"autoformatname":break;case"versionlastedit":break;case"versionlastrefresh":break;default:te=false;}break;case"datavalidation":switch(l[3]){case"range":break;case"type":break;case"min":break;case"max":break;case"sort":break;case"descending":break;case"order":break;case"casesensitive":break;case"value":break;case"errorstyle":break;case"errormessage":break;case"errortitle":break;case"inputmessage":break;case"inputtitle":break;case"combohide":break;case"inputhide":break;case"condition":break;case"qualifier":break;case"useblank":break;case"value1":break;case"value2":break;case"format":break;case"cellrangelist":break;default:te=false;}break;case"sorting":;case"conditionalformatting":switch(l[3]){case"range":break;case"type":break;case"min":break;case"max":break;case"sort":break;case"descending":break;case"order":break;case"casesensitive":break;case"value":break;case"errorstyle":break;case"errormessage":break;case"errortitle":break;case"cellrangelist":break;case"inputmessage":break;case"inputtitle":break;case"combohide":break;case"inputhide":break;case"condition":break;case"qualifier":break;case"useblank":break;case"value1":break;case"value2":break;case"format":break;default:te=false;}break;case"mapinfo":;case"schema":;case"data":switch(l[3]){case"map":break;case"entry":break;case"range":break;case"xpath":break;case"field":break;case"xsdtype":break;case"filteron":break;case"aggregate":break;case"elementtype":break;case"attributetype":break;case"schema":;case"element":;case"complextype":;case"datatype":;case"all":;case"attribute":;case"extends":break;case"row":break;default:te=false;}break;case"smarttags":break;default:te=false;break;}if(te)break;if(l[3].match(/!\[CDATA/))break;if(!o[o.length-1][1])throw"Unrecognized tag: "+l[3]+"|"+o.join("|");if(o[o.length-1][0]==="customdocumentproperties"){if(l[0].slice(-2)==="/>")break;else if(l[1]==="/")rb(I,j,F,n.slice(N,l.index));else{F=l;N=l.index+l[0].length}break}if(t.WTF)throw"Unrecognized tag: "+l[3]+"|"+o.join("|");}var ne={};if(!t.bookSheets&&!t.bookProps)ne.Sheets=h;ne.SheetNames=v;ne.Workbook=$;ne.SSF=yr(Z);ne.Props=R;ne.Custprops=I;ne.bookType="xlml";return ne}function lb(e,r){Tw(r=r||{});switch(r.type||"base64"){case"base64":return fb(E(e),r);case"binary":;case"buffer":;case"file":return fb(e,r);case"array":return fb(R(e),r);}}function ob(e,r){var t=[];if(e.Props)t.push(Fi(e.Props,r));if(e.Custprops)t.push(Di(e.Props,e.Custprops,r));return t.join("")}function cb(e){if((((e||{}).Workbook||{}).WBProps||{}).date1904)return'';return""}function ub(e,r){var t=[''];r.cellXfs.forEach(function(e,r){var a=[];a.push(At("NumberFormat",null,{"ss:Format":nt(Z[e.numFmtId])}));var n={"ss:ID":"s"+(21+r)};t.push(At("Style",a.join(""),n))});return At("Styles",t.join(""))}function hb(e){return At("NamedRange",null,{"ss:Name":e.Name.slice(0,6)=="_xlnm."?e.Name.slice(6):e.Name,"ss:RefersTo":"="+Uu(e.Ref,{r:0,c:0})})}function db(e){if(!((e||{}).Workbook||{}).Names)return"";var r=e.Workbook.Names;var t=[];for(var a=0;a");if(e["!margins"].header)n.push(At("Header",null,{"x:Margin":e["!margins"].header}));if(e["!margins"].footer)n.push(At("Footer",null,{"x:Margin":e["!margins"].footer}));n.push(At("PageMargins",null,{"x:Bottom":e["!margins"].bottom||"0.75","x:Left":e["!margins"].left||"0.7","x:Right":e["!margins"].right||"0.7","x:Top":e["!margins"].top||"0.75"}));n.push("")}if(a&&a.Workbook&&a.Workbook.Sheets&&a.Workbook.Sheets[t]){if(a.Workbook.Sheets[t].Hidden)n.push(At("Visible",a.Workbook.Sheets[t].Hidden==1?"SheetHidden":"SheetVeryHidden",{}));else{for(var i=0;i")}}if(((((a||{}).Workbook||{}).Views||[])[0]||{}).RTL)n.push("");if(e["!protect"]){n.push(_t("ProtectContents","True"));if(e["!protect"].objects)n.push(_t("ProtectObjects","True"));if(e["!protect"].scenarios)n.push(_t("ProtectScenarios","True"));if(e["!protect"].selectLockedCells!=null&&!e["!protect"].selectLockedCells)n.push(_t("EnableSelection","NoSelection"));else if(e["!protect"].selectUnlockedCells!=null&&!e["!protect"].selectUnlockedCells)n.push(_t("EnableSelection","UnlockedCells"));[["formatCells","AllowFormatCells"],["formatColumns","AllowSizeCols"],["formatRows","AllowSizeRows"],["insertColumns","AllowInsertCols"],["insertRows","AllowInsertRows"],["insertHyperlinks","AllowInsertHyperlinks"],["deleteColumns","AllowDeleteCols"],["deleteRows","AllowDeleteRows"],["sort","AllowSort"],["autoFilter","AllowFilter"],["pivotTables","AllowUsePivotTables"]].forEach(function(r){if(e["!protect"][r[0]])n.push("<"+r[1]+"/>")})}if(n.length==0)return"";return At("WorksheetOptions",n.join(""),{xmlns:Dt.x})}function mb(e){return e.map(function(e){var r=ct(e.t||"");var t=At("ss:Data",r,{xmlns:"http://www.w3.org/TR/REC-html40"});return At("Comment",t,{"ss:Author":e.a})}).join("")}function bb(e,r,t,a,n,i,s){if(!e||e.v==undefined&&e.f==undefined)return"";var f={};if(e.f)f["ss:Formula"]="="+nt(Uu(e.f,s));if(e.F&&e.F.slice(0,r.length)==r){var l=La(e.F.slice(r.length+1));f["ss:ArrayRange"]="RC:R"+(l.r==s.r?"":"["+(l.r-s.r)+"]")+"C"+(l.c==s.c?"":"["+(l.c-s.c)+"]")}if(e.l&&e.l.Target){f["ss:HRef"]=nt(e.l.Target);if(e.l.Tooltip)f["x:HRefScreenTip"]=nt(e.l.Tooltip)}if(t["!merges"]){var o=t["!merges"];for(var c=0;c!=o.length;++c){if(o[c].s.c!=s.c||o[c].s.r!=s.r)continue;if(o[c].e.c>o[c].s.c)f["ss:MergeAcross"]=o[c].e.c-o[c].s.c;if(o[c].e.r>o[c].s.r)f["ss:MergeDown"]=o[c].e.r-o[c].s.r}}var u="",h="";switch(e.t){case"z":if(!a.sheetStubs)return"";break;case"n":u="Number";h=String(e.v);break;case"b":u="Boolean";h=e.v?"1":"0";break;case"e":u="Error";h=Jn[e.v];break;case"d":u="DateTime";h=new Date(e.v).toISOString();if(e.z==null)e.z=e.z||Z[14];break;case"s":u="String";h=lt(e.v||"");break;}var d=tv(a.cellXfs,e,a);f["ss:StyleID"]="s"+(21+d);f["ss:Index"]=s.c+1;var v=e.v!=null?h:"";var p=e.t=="z"?"":''+v+"";if((e.c||[]).length>0)p+=mb(e.c);return At("Cell",p,f)}function gb(e,r){var t='"}function wb(e,r,t,a){if(!e["!ref"])return"";var n=za(e["!ref"]);var i=e["!merges"]||[],s=0;var f=[];if(e["!cols"])e["!cols"].forEach(function(e,r){Ho(e);var t=!!e.width;var a=ev(r,e);var n={"ss:Index":r+1};if(t)n["ss:Width"]=Lo(a.width);if(e.hidden)n["ss:Hidden"]="1";f.push(At("Column",null,n))});var l=e["!data"]!=null;for(var o=n.s.r;o<=n.e.r;++o){var c=[gb(o,(e["!rows"]||[])[o])];for(var u=n.s.c;u<=n.e.c;++u){var h=false;for(s=0;s!=i.length;++s){if(i[s].s.c>u)continue;if(i[s].s.r>o)continue;if(i[s].e.c");if(c.length>2)f.push(c.join(""))}return f.join("")}function kb(e,r,t){var a=[];var n=t.SheetNames[e];var i=t.Sheets[n];var s=i?vb(i,r,e,t):"";if(s.length>0)a.push(""+s+"");s=i?wb(i,r,e,t):"";if(s.length>0)a.push(""+s+"
");a.push(pb(i,r,e,t));if(i["!autofilter"])a.push('');return a.join("")}function Tb(e,r){if(!r)r={};if(!e.SSF)e.SSF=yr(Z);if(e.SSF){Ge();$e(e.SSF);r.revssf=or(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF;r.cellXfs=[];tv(r.cellXfs,{},{revssf:{General:0}})}var t=[];t.push(ob(e,r));t.push(cb(e,r));t.push("");t.push("");for(var a=0;a40)return r;t.l-=4;r.Reserved1=t._R(0,"lpstr-ansi");if(t.length-t.l<=4)return r;a=t._R(4);if(a!==1907505652)return r;r.UnicodeClipboardFormat=Rn(t);a=t._R(4);if(a==0||a>40)return r;t.l-=4;r.Reserved2=t._R(0,"lpwstr")}var yb=[60,1084,2066,2165,2175];function Sb(e,r,t,a,n){var i=a;var s=[];var f=t.slice(t.l,t.l+i);if(n&&n.enc&&n.enc.insitu&&f.length>0)switch(e){case 9:;case 521:;case 1033:;case 2057:;case 47:;case 405:;case 225:;case 406:;case 312:;case 404:;case 10:break;case 133:break;default:n.enc.insitu(f);}s.push(f);t.l+=i;var l=sa(t,t.l),o=Db[l];var c=0;while(o!=null&&yb.indexOf(l)>-1){i=sa(t,t.l+2);c=t.l+4;if(l==2066)c+=4;else if(l==2165||l==2175){c+=12}f=t.slice(c,t.l+4+i);s.push(f);t.l+=4+i;o=Db[l=sa(t,t.l)]}var u=F(s);ba(u,0);var h=0;u.lens=[];for(var d=0;d1)return;if(t.sheetRows&&e.r>=t.sheetRows)return;if(t.cellStyles&&r.XF&&r.XF.data)C(e,r,t);delete r.ixfe;delete r.XF;h=e;d=Ma(e);if(!s||!s.s||!s.e)s={s:{r:0,c:0},e:{r:0,c:0}};if(e.rs.e.r)s.e.r=e.r+1;if(e.c+1>s.e.c)s.e.c=e.c+1;if(t.cellFormula&&r.f){for(var a=0;ae.c||k[a][0].s.r>e.r)continue;if(k[a][0].e.c>8)!==j)throw new Error("rt mismatch: "+K+"!="+j);if(Y.r==12){e.l+=10;X-=10}}var J={};if(j===10)J=Y.f(e,X,R);else J=Sb(j,Y,e,X,R);if(B==0&&[9,521,1033,2057].indexOf(U)===-1)continue;switch(j){case 34:t.opts.Date1904=_.WBProps.date1904=J;break;case 134:t.opts.WriteProtect=true;break;case 47:if(!R.enc)e.l=0;R.enc=J;if(!r.password)throw new Error("File is password-protected");if(J.valid==null)throw new Error("Encryption scheme unsupported");if(!J.valid)throw new Error("Password is incorrect");break;case 92:R.lastuser=J;break;case 66:var q=Number(J);switch(q){case 21010:q=1200;break;case 32768:q=1e4;break;case 32769:q=1252;break;}l(R.codepage=q);$=true;break;case 317:R.rrtabid=J;break;case 25:R.winlocked=J;break;case 439:t.opts["RefreshAll"]=J;break;case 12:t.opts["CalcCount"]=J;break;case 16:t.opts["CalcDelta"]=J;break;case 17:t.opts["CalcIter"]=J;break;case 13:t.opts["CalcMode"]=J;break;case 14:t.opts["CalcPrecision"]=J;break;case 95:t.opts["CalcSaveRecalc"]=J;break;case 15:R.CalcRefMode=J;break;case 2211:t.opts.FullCalc=J;break;case 129:if(J.fDialog)n["!type"]="dialog";if(!J.fBelow)(n["!outline"]||(n["!outline"]={})).above=true;if(!J.fRight)(n["!outline"]||(n["!outline"]={})).left=true;break;case 224:y.push(J);break;case 430:M.push([J]);M[M.length-1].XTI=[];break;case 35:;case 547:M[M.length-1].push(J);break;case 24:;case 536:V={Name:J.Name,Ref:bd(J.rgce,s,null,M,R)};if(J.itab>0)V.Sheet=J.itab-1;M.names.push(V);if(!M[0]){M[0]=[];M[0].XTI=[]}M[M.length-1].push(J);if(J.Name=="_xlnm._FilterDatabase"&&J.itab>0)if(J.rgce&&J.rgce[0]&&J.rgce[0][0]&&J.rgce[0][0][0]=="PtgArea3d")z[J.itab-1]={ref:Ba(J.rgce[0][0][1][2])};break;case 22:R.ExternCount=J;break;case 23:if(M.length==0){M[0]=[];M[0].XTI=[]}M[M.length-1].XTI=M[M.length-1].XTI.concat(J);M.XTI=M.XTI.concat(J);break;case 2196:if(R.biff<8)break;if(V!=null)V.Comment=J[1];break;case 18:n["!protect"]=J;break;case 19:if(J!==0&&R.WTF)console.error("Password verifier: "+J);break;case 133:{i[J.pos]=J;R.snames.push(J.name)}break;case 10:{if(--B)break;if(s.e){if(s.e.r>0&&s.e.c>0){s.e.r--;s.e.c--;n["!ref"]=Ba(s);if(r.sheetRows&&r.sheetRows<=s.e.r){var Q=s.e.r;s.e.r=r.sheetRows-1;n["!fullref"]=n["!ref"];n["!ref"]=Ba(s);s.e.r=Q}s.e.r++;s.e.c++}if(N.length>0)n["!merges"]=N;if(F.length>0)n["!objects"]=F;if(D.length>0)n["!cols"]=D;if(P.length>0)n["!rows"]=P;_.Sheets.push(x)}if(c==="")u=n;else a[c]=n;n={};if(r.dense)n["!data"]=[]}break;case 9:;case 521:;case 1033:;case 2057:{if(R.biff===8)R.biff={9:2,521:3,1033:4}[j]||{512:2,768:3,1024:4,1280:5,1536:8,2:2,7:2}[J.BIFFVer]||8;R.biffguess=J.BIFFVer==0;if(J.BIFFVer==0&&J.dt==4096){R.biff=5;$=true;l(R.codepage=28591)}if(R.biff==8&&J.BIFFVer==0&&J.dt==16)R.biff=2;if(B++)break;n={};if(r.dense)n["!data"]=[];if(R.biff<8&&!$){$=true;l(R.codepage=r.codepage||1252)}if(R.biff<5||J.BIFFVer==0&&J.dt==4096){if(c==="")c="Sheet1";s={s:{r:0,c:0},e:{r:0,c:0}};var ee={pos:e.l-X,name:c};i[ee.pos]=ee;R.snames.push(c)}else c=(i[G]||{name:""}).name;if(J.dt==32)n["!type"]="chart";if(J.dt==64)n["!type"]="macro";N=[];F=[];R.arrayf=k=[];D=[];P=[];L=false;x={Hidden:(i[G]||{hs:0}).hs,name:c}}break;case 515:;case 3:;case 2:{if(n["!type"]=="chart")if(r.dense?(n["!data"][J.r]||[])[J.c]:n[Na(J.c)+Ca(J.r)])++J.c;T={ixfe:J.ixfe,XF:y[J.ixfe]||{},v:J.val,t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 5:;case 517:{T={ixfe:J.ixfe,XF:y[J.ixfe],v:J.val,t:J.t};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 638:{T={ixfe:J.ixfe,XF:y[J.ixfe],v:J.rknum,t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 189:{for(var re=J.c;re<=J.C;++re){var te=J.rkrec[re-J.c][0];T={ixfe:te,XF:y[te],v:J.rkrec[re-J.c][1],t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:re,r:J.r},T,r)}}break;case 6:;case 518:;case 1030:{if(J.val=="String"){f=J;break}T=xb(J.val,J.cell.ixfe,J.tt);T.XF=y[T.ixfe];if(r.cellFormula){var ae=J.formula;if(ae&&ae[0]&&ae[0][0]&&ae[0][0][0]=="PtgExp"){var ne=ae[0][0][1][0],ie=ae[0][0][1][1];var se=Ma({r:ne,c:ie});if(w[se])T.f=""+bd(J.formula,s,J.cell,M,R);else T.F=((r.dense?(n["!data"][ne]||[])[ie]:n[se])||{}).F}else T.f=""+bd(J.formula,s,J.cell,M,R)}if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O(J.cell,T,r);f=J}break;case 7:;case 519:{if(f){f.val=J;T=xb(J,f.cell.ixfe,"s");T.XF=y[T.ixfe];if(r.cellFormula){T.f=""+bd(f.formula,s,f.cell,M,R)}if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O(f.cell,T,r);f=null}else throw new Error("String record expects Formula")}break;case 33:;case 545:{k.push(J);var fe=Ma(J[0].s);v=r.dense?(n["!data"][J[0].s.r]||[])[J[0].s.c]:n[fe];if(r.cellFormula&&v){if(!f)break;if(!fe||!v)break;v.f=""+bd(J[1],s,J[0],M,R);v.F=Ba(J[0])}}break;case 1212:{if(!r.cellFormula)break;if(d){if(!f)break;w[Ma(f.cell)]=J[0];v=r.dense?(n["!data"][f.cell.r]||[])[f.cell.c]:n[Ma(f.cell)];(v||{}).f=""+bd(J[0],s,h,M,R)}}break;case 253:T=xb(o[J.isst].t,J.ixfe,"s");if(o[J.isst].h)T.h=o[J.isst].h;T.XF=y[T.ixfe];if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r);break;case 513:if(r.sheetStubs){T={ixfe:J.ixfe,XF:y[J.ixfe],t:"z"};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 190:if(r.sheetStubs){for(var le=J.c;le<=J.C;++le){var oe=J.ixfe[le-J.c];T={ixfe:oe,XF:y[oe],t:"z"};if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:le,r:J.r},T,r)}}break;case 214:;case 516:;case 4:T=xb(J.val,J.ixfe,"s");T.XF=y[T.ixfe];if(W>0)T.z=H[T.ixfe>>8&63];_b(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r);break;case 0:;case 512:{if(B===1)s=J}break;case 252:{o=J}break;case 1054:{if(R.biff==4){H[W++]=J[1];for(var ce=0;ce=163)qe(J[1],W+163)}else qe(J[1],J[0])}break;case 30:{H[W++]=J;for(var ue=0;ue=163)qe(J,W+163)}break;case 229:N=N.concat(J);break;case 93:F[J.cmo[0]]=R.lastobj=J;break;case 438:R.lastobj.TxO=J;break;case 127:R.lastobj.ImData=J;break;case 440:{for(g=J[0].s.r;g<=J[0].e.r;++g)for(m=J[0].s.c;m<=J[0].e.c;++m){v=r.dense?(n["!data"][g]||[])[m]:n[Ma({c:m,r:g})];if(v)v.l=J[1]}}break;case 2048:{for(g=J[0].s.r;g<=J[0].e.r;++g)for(m=J[0].s.c;m<=J[0].e.c;++m){v=r.dense?(n["!data"][g]||[])[m]:n[Ma({c:m,r:g})];if(v&&v.l)v.l.Tooltip=J[1]}}break;case 28:{if(R.biff<=5&&R.biff>=2)break;v=r.dense?(n["!data"][J[0].r]||[])[J[0].c]:n[Ma(J[0])];var he=F[J[2]];if(!v){if(r.dense){if(!n["!data"][J[0].r])n["!data"][J[0].r]=[];v=n["!data"][J[0].r][J[0].c]={t:"z"}}else{v=n[Ma(J[0])]={t:"z"}}s.e.r=Math.max(s.e.r,J[0].r);s.s.r=Math.min(s.s.r,J[0].r);s.e.c=Math.max(s.e.c,J[0].c);s.s.c=Math.min(s.s.c,J[0].c)}if(!v.c)v.c=[];p={a:J[1],t:he.TxO.t};v.c.push(p)}break;case 2173:Kc(y[J.ixfe],J.ext);break;case 125:{if(!R.cellStyles)break;while(J.e>=J.s){D[J.e--]={width:J.w/256,level:J.level||0,hidden:!!(J.flags&1)};if(!L){L=true;Wo(J.w/256)}Ho(D[J.e+1])}}break;case 520:{var de={};if(J.level!=null){P[J.r]=de;de.level=J.level}if(J.hidden){P[J.r]=de;de.hidden=true}if(J.hpt){P[J.r]=de;de.hpt=J.hpt;de.hpx=Go(J.hpt)}}break;case 38:;case 39:;case 40:;case 41:if(!n["!margins"])rv(n["!margins"]={});n["!margins"][{38:"left",39:"right",40:"top",41:"bottom"}[j]]=J;break;case 161:if(!n["!margins"])rv(n["!margins"]={});n["!margins"].header=J.header;n["!margins"].footer=J.footer;break;case 574:if(J.RTL)_.Views[0].RTL=true;break;case 146:S=J;break;case 2198:I=J;break;case 140:E=J;break;case 442:{if(!c)_.WBProps.CodeName=J||"ThisWorkbook";else x.CodeName=J||x.name}break;}}else{if(!Y)console.error("Missing Info for XLS Record 0x"+j.toString(16));e.l+=X}}t.SheetNames=sr(i).sort(function(e,r){return Number(e)-Number(r)}).map(function(e){return i[e].name});if(!r.bookSheets)t.Sheets=a;if(!t.SheetNames.length&&u["!ref"]){t.SheetNames.push("Sheet1");if(t.Sheets)t.Sheets["Sheet1"]=u}else t.Preamble=u;if(t.Sheets)z.forEach(function(e,r){t.Sheets[t.SheetNames[r]]["!autofilter"]=e});t.Strings=o;t.SSF=yr(Z);if(R.enc)t.Encryption=R.enc;if(I)t.Themes=I;t.Metadata={};if(E!==undefined)t.Metadata.Country=E;if(M.names.length>0)_.Names=M.names;t.Workbook=_;return t}var Cb={SI:"e0859ff2f94f6810ab9108002b27b3d9",DSI:"02d5cdd59c2e1b10939708002b2cf9ae",UDI:"05d5cdd59c2e1b10939708002b2cf9ae"};function Ob(e,r,t){var a=er.find(e,"/!DocumentSummaryInformation");if(a&&a.size>0)try{var n=rs(a,$n,Cb.DSI);for(var i in n)r[i]=n[i]}catch(s){if(t.WTF)throw s}var f=er.find(e,"/!SummaryInformation");if(f&&f.size>0)try{var l=rs(f,Gn,Cb.SI);for(var o in l)if(r[o]==null)r[o]=l[o]}catch(s){if(t.WTF)throw s}if(r.HeadingPairs&&r.TitlesOfParts){Si(r.HeadingPairs,r.TitlesOfParts,r,t);delete r.HeadingPairs;delete r.TitlesOfParts}}function Rb(e,r){var t=[],a=[],n=[];var i=0,s;var f=fr($n,"n");var l=fr(Gn,"n");if(e.Props){s=sr(e.Props);for(i=0;i-1||yi.indexOf(n[i][0])>-1)continue;if(n[i][1]==null)continue;o.push(n[i])}if(a.length)er.utils.cfb_add(r,"/SummaryInformation",ts(a,Cb.SI,l,Gn));if(t.length||o.length)er.utils.cfb_add(r,"/DocumentSummaryInformation",ts(t,Cb.DSI,f,$n,o.length?o:null,Cb.UDI))}function Ib(e,r){if(!r)r={};Tw(r);o();if(r.codepage)s(r.codepage);var t,a;if(e.FullPaths){if(er.find(e,"/encryption"))throw new Error("File is password-protected");t=er.find(e,"!CompObj");a=er.find(e,"/Workbook")||er.find(e,"/Book")}else{switch(r.type){case"base64":e=C(E(e));break;case"binary":e=C(e);break;case"buffer":break;case"array":if(!Array.isArray(e))e=Array.prototype.slice.call(e);break;}ba(e,0);a={content:e}}var n;var i;if(t)Eb(t);if(r.bookProps&&!r.bookSheets)n={};else{var f=y?"buffer":"array";if(a&&a.content)n=Ab(a.content,r);else if((i=er.find(e,"PerfectOffice_MAIN"))&&i.content)n=Dl.to_workbook(i.content,(r.type=f,r));else if((i=er.find(e,"NativeContent_MAIN"))&&i.content)n=Dl.to_workbook(i.content,(r.type=f,r));else if((i=er.find(e,"MN0"))&&i.content)throw new Error("Unsupported Works 4 for Mac file");else throw new Error("Cannot find Workbook stream");if(r.bookVBA&&e.FullPaths&&er.find(e,"/_VBA_PROJECT_CUR/VBA/dir"))n.vbaraw=Ou(e)}var l={};if(e.FullPaths)Ob(e,l,r);n.Props=n.Custprops=l;if(r.bookFiles)n.cfb=e;return n}function Nb(e,r){var t=r||{};var a=er.utils.cfb_new({root:"R"});var n="/Workbook";switch(t.bookType||"xls"){case"xls":t.bookType="biff8";case"xla":if(!t.bookType)t.bookType="xla";case"biff8":n="/Workbook";t.biff=8;break;case"biff5":n="/Book";t.biff=5;break;default:throw new Error("invalid type "+t.bookType+" for XLS CFB");}er.utils.cfb_add(a,n,Qb(e,t));if(t.biff==8&&(e.Props||e.Custprops))Rb(e,a);if(t.biff==8&&e.vbaraw)Ru(a,er.read(e.vbaraw,{type:typeof e.vbaraw=="string"?"binary":"buffer"}));return a}var Fb={0:{f:Uv},1:{f:jv},2:{f:hp},3:{f:ep},4:{f:Zv},5:{f:lp},6:{f:bp},7:{f:np},8:{f:Sp},9:{f:yp},10:{f:Tp},11:{f:Ep},12:{f:Yv},13:{f:vp},14:{f:tp},15:{f:qv},16:{f:cp},17:{f:wp},18:{f:sp},19:{f:en},20:{},21:{},22:{},23:{},24:{},25:{},26:{},27:{},28:{},29:{},30:{},31:{},32:{},33:{},34:{},35:{T:1},36:{T:-1},37:{T:1},38:{T:-1},39:{f:Am},40:{},42:{},43:{f:sc},44:{f:nc},45:{f:cc},46:{f:pc},47:{f:hc},48:{},49:{f:Ya},50:{},51:{f:qc},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:cl},62:{f:mp},63:{f:lu},64:{f:Hp},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:ga,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:Mp},138:{T:-1},139:{T:1},140:{T:-1},141:{T:1},142:{T:-1},143:{T:1},144:{T:-1},145:{T:1},146:{T:-1},147:{f:$v},148:{f:Hv,p:16},151:{f:Rp},152:{},153:{f:Sm},154:{},155:{},156:{f:Em},157:{},158:{},159:{T:1,f:Yl},160:{T:-1},161:{T:1,f:kn},162:{T:-1},163:{T:1},164:{T:-1},165:{T:1},166:{T:-1},167:{},168:{},169:{},170:{},171:{},172:{T:1},173:{T:-1},174:{},175:{},176:{f:_p},177:{T:1},178:{T:-1},179:{T:1},180:{T:-1},181:{T:1},182:{T:-1},183:{T:1},184:{T:-1},185:{T:1},186:{T:-1},187:{T:1},188:{T:-1},189:{T:1},190:{T:-1},191:{T:1},192:{T:-1},193:{T:1},194:{T:-1},195:{T:1},196:{T:-1},197:{T:1},198:{T:-1},199:{T:1},200:{T:-1},201:{T:1},202:{T:-1},203:{T:1},204:{T:-1},205:{T:1},206:{T:-1},207:{T:1},208:{T:-1},209:{T:1},210:{T:-1},211:{T:1},212:{T:-1},213:{T:1},214:{T:-1},215:{T:1},216:{T:-1},217:{T:1},218:{T:-1},219:{T:1},220:{T:-1},221:{T:1},222:{T:-1},223:{T:1},224:{T:-1},225:{T:1},226:{T:-1},227:{T:1},228:{T:-1},229:{T:1},230:{T:-1},231:{T:1},232:{T:-1},233:{T:1},234:{T:-1},235:{T:1},236:{T:-1},237:{T:1},238:{T:-1},239:{T:1},240:{T:-1},241:{T:1},242:{T:-1},243:{T:1},244:{T:-1},245:{T:1},246:{T:-1},247:{T:1},248:{T:-1},249:{T:1},250:{T:-1},251:{T:1},252:{T:-1},253:{T:1},254:{T:-1},255:{T:1},256:{T:-1},257:{T:1},258:{T:-1},259:{T:1},260:{T:-1},261:{T:1},262:{T:-1},263:{T:1},264:{T:-1},265:{T:1},266:{T:-1},267:{T:1},268:{T:-1},269:{T:1},270:{T:-1},271:{T:1},272:{T:-1},273:{T:1},274:{T:-1},275:{T:1},276:{T:-1},277:{},278:{T:1},279:{T:-1},280:{T:1},281:{T:-1},282:{T:1},283:{T:1},284:{T:-1},285:{T:1},286:{T:-1},287:{T:1},288:{T:-1},289:{T:1},290:{T:-1},291:{T:1},292:{T:-1},293:{T:1},294:{T:-1},295:{T:1},296:{T:-1},297:{T:1},298:{T:-1},299:{T:1},300:{T:-1},301:{T:1},302:{T:-1},303:{T:1},304:{T:-1},305:{T:1},306:{T:-1},307:{T:1},308:{T:-1},309:{T:1},310:{T:-1},311:{T:1},312:{T:-1},313:{T:-1},314:{T:1},315:{T:-1},316:{T:1},317:{T:-1},318:{T:1},319:{T:-1},320:{T:1},321:{T:-1},322:{T:1},323:{T:-1},324:{T:1},325:{T:-1},326:{T:1},327:{T:-1},328:{T:1},329:{T:-1},330:{T:1},331:{T:-1},332:{T:1},333:{T:-1},334:{T:1},335:{f:Zc},336:{T:-1},337:{f:ru,T:1},338:{T:-1},339:{T:1},340:{T:-1},341:{T:1},342:{T:-1},343:{T:1},344:{T:-1},345:{T:1},346:{T:-1},347:{T:1},348:{T:-1},349:{T:1},350:{T:-1},351:{},352:{},353:{T:1},354:{T:-1},355:{f:vn},357:{},358:{},359:{},360:{T:1},361:{},362:{f:Hf},363:{},364:{},366:{},367:{},368:{},369:{},370:{},371:{},372:{T:1},373:{T:-1},374:{T:1},375:{T:-1},376:{T:1},377:{T:-1},378:{T:1},379:{T:-1},380:{T:1},381:{T:-1},382:{T:1},383:{T:-1},384:{T:1},385:{T:-1},386:{T:1},387:{T:-1},388:{T:1},389:{T:-1},390:{T:1},391:{T:-1},392:{T:1},393:{T:-1},394:{T:1},395:{T:-1},396:{},397:{},398:{},399:{},400:{},401:{T:1},403:{},404:{},405:{},406:{},407:{},408:{},409:{},410:{},411:{},412:{},413:{},414:{},415:{},416:{},417:{},418:{},419:{},420:{},421:{},422:{T:1},423:{T:1},424:{T:-1},425:{T:-1},426:{f:Ip},427:{f:Np},428:{},429:{T:1},430:{T:-1},431:{T:1},432:{T:-1},433:{T:1},434:{T:-1},435:{T:1},436:{T:-1},437:{T:1},438:{T:-1},439:{T:1},440:{T:-1},441:{T:1},442:{T:-1},443:{T:1},444:{T:-1},445:{T:1},446:{T:-1},447:{T:1},448:{T:-1},449:{T:1},450:{T:-1},451:{T:1},452:{T:-1},453:{T:1},454:{T:-1},455:{T:1},456:{T:-1},457:{T:1},458:{T:-1},459:{T:1},460:{T:-1},461:{T:1},462:{T:-1},463:{T:1},464:{T:-1},465:{T:1},466:{T:-1},467:{T:1},468:{T:-1},469:{T:1},470:{T:-1},471:{},472:{},473:{T:1},474:{T:-1},475:{},476:{f:Pp},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:Vv},486:{T:1},487:{T:-1},488:{T:1},489:{T:-1},490:{T:1},491:{T:-1},492:{T:1},493:{T:-1},494:{f:Cp},495:{T:1},496:{T:-1},497:{T:1},498:{T:-1},499:{},500:{T:1},501:{T:-1},502:{T:1},503:{T:-1},504:{},505:{T:1},506:{T:-1},507:{},508:{T:1},509:{T:-1},510:{T:1},511:{T:-1},512:{},513:{},514:{T:1},515:{T:-1},516:{T:1},517:{T:-1},518:{T:1},519:{T:-1},520:{T:1},521:{T:-1},522:{},523:{},524:{},525:{},526:{},527:{},528:{T:1},529:{T:-1},530:{T:1},531:{T:-1},532:{T:1},533:{T:-1},534:{},535:{},536:{},537:{},538:{T:1},539:{T:-1},540:{T:1},541:{T:-1},542:{T:1},548:{},549:{},550:{f:vn},551:{},552:{},553:{},554:{T:1},555:{T:-1},556:{T:1},557:{T:-1},558:{T:1},559:{T:-1},560:{T:1},561:{T:-1},562:{},564:{},565:{T:1},566:{T:-1},569:{T:1},570:{T:-1},572:{},573:{T:1},574:{T:-1},577:{},578:{},579:{},580:{},581:{},582:{},583:{},584:{},585:{},586:{},587:{},588:{T:-1},589:{},590:{T:1},591:{T:-1},592:{T:1},593:{T:-1},594:{T:1},595:{T:-1},596:{},597:{T:1},598:{T:-1},599:{T:1},600:{T:-1},601:{T:1},602:{T:-1},603:{T:1},604:{T:-1},605:{T:1},606:{T:-1},607:{},608:{T:1},609:{T:-1},610:{},611:{T:1},612:{T:-1},613:{T:1},614:{T:-1},615:{T:1},616:{T:-1},617:{T:1},618:{T:-1},619:{T:1},620:{T:-1},625:{},626:{T:1},627:{T:-1},628:{T:1},629:{T:-1},630:{T:1},631:{T:-1},632:{f:Su},633:{T:1},634:{T:-1},635:{T:1,f:Eu},636:{T:-1},637:{f:tn},638:{T:1},639:{},640:{T:-1},641:{T:1},642:{T:-1},643:{T:1},644:{},645:{T:-1},646:{T:1},648:{T:1},649:{},650:{T:-1},651:{f:im},652:{},653:{T:1},654:{T:-1},655:{T:1},656:{T:-1},657:{T:1},658:{T:-1},659:{},660:{T:1},661:{},662:{T:-1},663:{},664:{T:1},665:{},666:{T:-1},667:{},668:{},669:{},671:{T:1},672:{T:-1},673:{T:1},674:{T:-1},675:{},676:{},677:{},678:{},679:{},680:{},681:{},1024:{},1025:{},1026:{T:1},1027:{T:-1},1028:{T:1},1029:{T:-1},1030:{},1031:{T:1},1032:{T:-1},1033:{T:1},1034:{T:-1},1035:{},1036:{},1037:{},1038:{T:1},1039:{T:-1},1040:{},1041:{T:1},1042:{T:-1},1043:{},1044:{},1045:{},1046:{T:1},1047:{T:-1},1048:{T:1},1049:{T:-1},1050:{},1051:{T:1},1052:{T:1},1053:{f:zp},1054:{T:1},1055:{},1056:{T:1},1057:{T:-1},1058:{T:1},1059:{T:-1},1061:{},1062:{T:1},1063:{T:-1},1064:{T:1},1065:{T:-1},1066:{T:1},1067:{T:-1},1068:{T:1},1069:{T:-1},1070:{T:1},1071:{T:-1},1072:{T:1},1073:{T:-1},1075:{T:1},1076:{T:-1},1077:{T:1},1078:{T:-1},1079:{T:1},1080:{T:-1},1081:{T:1},1082:{T:-1},1083:{T:1},1084:{T:-1},1085:{},1086:{T:1},1087:{T:-1},1088:{T:1},1089:{T:-1},1090:{T:1},1091:{T:-1},1092:{T:1},1093:{T:-1},1094:{T:1},1095:{T:-1},1096:{},1097:{T:1},1098:{},1099:{T:-1},1100:{T:1},1101:{T:-1},1102:{},1103:{},1104:{},1105:{},1111:{},1112:{},1113:{T:1},1114:{T:-1},1115:{T:1},1116:{T:-1},1117:{},1118:{T:1},1119:{T:-1},1120:{T:1},1121:{T:-1},1122:{T:1},1123:{T:-1},1124:{T:1},1125:{T:-1},1126:{},1128:{T:1},1129:{T:-1},1130:{},1131:{T:1},1132:{T:-1},1133:{T:1},1134:{T:-1},1135:{T:1},1136:{T:-1},1137:{T:1},1138:{T:-1},1139:{T:1},1140:{T:-1},1141:{},1142:{T:1},1143:{T:-1},1144:{T:1},1145:{T:-1},1146:{},1147:{T:1},1148:{T:-1},1149:{T:1},1150:{T:-1},1152:{T:1},1153:{T:-1},1154:{T:-1},1155:{T:-1},1156:{T:-1},1157:{T:1},1158:{T:-1},1159:{T:1},1160:{T:-1},1161:{T:1},1162:{T:-1},1163:{T:1},1164:{T:-1},1165:{T:1},1166:{T:-1},1167:{T:1},1168:{T:-1},1169:{T:1},1170:{T:-1},1171:{},1172:{T:1},1173:{T:-1},1177:{},1178:{T:1},1180:{},1181:{},1182:{},2048:{T:1},2049:{T:-1},2050:{},2051:{T:1},2052:{T:-1},2053:{},2054:{},2055:{T:1},2056:{T:-1},2057:{T:1},2058:{T:-1},2060:{},2067:{},2068:{T:1},2069:{T:-1},2070:{},2071:{},2072:{T:1},2073:{T:-1},2075:{},2076:{},2077:{T:1},2078:{T:-1},2079:{},2080:{T:1},2081:{T:-1},2082:{},2083:{T:1},2084:{T:-1},2085:{T:1},2086:{T:-1},2087:{T:1},2088:{T:-1},2089:{T:1},2090:{T:-1},2091:{},2092:{},2093:{T:1},2094:{T:-1},2095:{},2096:{T:1},2097:{T:-1},2098:{T:1},2099:{T:-1},2100:{T:1},2101:{T:-1},2102:{},2103:{T:1},2104:{T:-1},2105:{},2106:{T:1},2107:{T:-1},2108:{},2109:{T:1},2110:{T:-1},2111:{T:1},2112:{T:-1},2113:{T:1},2114:{T:-1},2115:{},2116:{},2117:{},2118:{T:1},2119:{T:-1},2120:{},2121:{T:1},2122:{T:-1},2123:{T:1},2124:{T:-1},2125:{},2126:{T:1},2127:{T:-1},2128:{},2129:{T:1},2130:{T:-1},2131:{T:1},2132:{T:-1},2133:{T:1},2134:{},2135:{},2136:{},2137:{T:1},2138:{T:-1},2139:{T:1},2140:{T:-1},2141:{},3072:{},3073:{},4096:{T:1},4097:{T:-1},5002:{T:1},5003:{T:-1},5081:{T:1},5082:{T:-1},5083:{},5084:{T:1},5085:{T:-1},5086:{T:1},5087:{T:-1},5088:{},5089:{},5090:{},5092:{T:1},5093:{T:-1},5094:{},5095:{T:1},5096:{T:-1},5097:{},5099:{},65535:{n:""}};var Db={6:{f:Sd},10:{f:as},12:{f:ls},13:{f:ls},14:{f:ss},15:{f:ss},16:{f:En},17:{f:ss},18:{f:ss},19:{f:ls},20:{f:Mf},21:{f:Mf},23:{f:Hf},24:{f:Wf},25:{f:ss},26:{},27:{},28:{f:Yf},29:{},34:{f:ss},35:{f:Bf},38:{f:En},39:{f:En},40:{f:En},41:{f:En},42:{f:ss},43:{f:ss},47:{f:Eo},49:{f:vf},51:{f:ls},60:{},61:{f:of},64:{f:ss},65:{f:df},66:{f:ls},77:{},80:{},81:{},82:{},85:{f:ls},89:{},90:{},91:{},92:{f:Zs},93:{f:Jf},94:{},95:{f:ss},96:{},97:{},99:{f:ss},125:{f:cl},128:{f:If},129:{f:qs},130:{f:ls},131:{f:ss},132:{f:ss},133:{f:Qs},134:{},140:{f:il},141:{f:ls},144:{},146:{f:ll},151:{},152:{},153:{},154:{},155:{},156:{f:ls},157:{},158:{},160:{f:ml},161:{f:hl},174:{},175:{},176:{},177:{},178:{},180:{},181:{},182:{},184:{},185:{},189:{f:xf},190:{f:Af},193:{f:as},197:{},198:{},199:{},200:{},201:{},202:{f:ss},203:{},204:{},205:{},206:{},207:{},208:{},209:{},210:{},211:{},213:{},215:{},216:{},217:{},218:{f:ls},220:{},221:{f:ss},222:{},224:{f:Of},225:{f:Ks},226:{f:as},227:{},229:{f:Kf},233:{},235:{},236:{},237:{},239:{},240:{},241:{},242:{},244:{},245:{},246:{},247:{},248:{},249:{},251:{},252:{f:rf},253:{f:mf},255:{f:af},256:{},259:{},290:{},311:{},312:{},315:{},317:{f:cs},318:{},319:{},320:{},330:{},331:{},333:{},334:{},335:{},336:{},337:{},338:{},339:{},340:{},351:{},352:{f:ss},353:{f:as},401:{},402:{},403:{},404:{},405:{},406:{},407:{},408:{},425:{},426:{},427:{},428:{},429:{},430:{f:Uf},431:{f:ss},432:{},433:{},434:{},437:{},438:{f:el},439:{f:ss},440:{f:rl},441:{},442:{f:bs},443:{},444:{f:ls},445:{},446:{},448:{f:as},449:{f:ff,r:2},450:{f:as},512:{f:yf},513:{f:pl},515:{f:Pf},516:{f:gf},517:{f:Ff},519:{f:bl},520:{f:nf},523:{},545:{f:Gf},549:{f:lf},566:{},574:{f:uf},638:{f:_f},659:{},1048:{},1054:{f:kf},1084:{},1212:{f:$f},2048:{f:al},2049:{},2050:{},2051:{},2052:{},2053:{},2054:{},2055:{},2056:{},2057:{f:Xs},2058:{},2059:{},2060:{},2061:{},2062:{},2063:{},2064:{},2066:{},2067:{},2128:{},2129:{},2130:{},2131:{},2132:{},2133:{},2134:{},2135:{},2136:{},2137:{},2138:{},2146:{},2147:{r:12},2148:{},2149:{},2150:{},2151:{f:as},2152:{},2154:{},2155:{},2156:{},2161:{},2162:{},2164:{},2165:{},2166:{},2167:{},2168:{},2169:{},2170:{},2171:{},2172:{f:ol,r:12},2173:{f:Yc,r:12},2174:{},2175:{},2180:{},2181:{},2182:{},2183:{},2184:{},2185:{},2186:{},2187:{},2188:{f:ss,r:12},2189:{},2190:{r:12},2191:{},2192:{},2194:{},2195:{},2196:{f:Vf,r:12},2197:{},2198:{f:zc,r:12},2199:{},2200:{},2201:{},2202:{f:jf,r:12},2203:{f:as},2204:{},2205:{},2206:{},2207:{},2211:{f:sf},2212:{},2213:{},2214:{},2215:{},4097:{},4098:{},4099:{},4102:{},4103:{},4105:{},4106:{},4107:{},4108:{},4109:{},4116:{},4117:{},4118:{},4119:{},4120:{},4121:{},4122:{},4123:{},4124:{},4125:{},4126:{},4127:{},4128:{},4129:{},4130:{},4132:{},4133:{},4134:{f:ls},4135:{},4146:{},4147:{},4148:{},4149:{},4154:{},4156:{},4157:{},4158:{},4159:{},4160:{},4161:{},4163:{},4164:{f:dl},4165:{},4166:{},4168:{},4170:{},4171:{},4174:{},4175:{},4176:{},4177:{},4187:{},4188:{f:fl},4189:{},4191:{},4192:{},4193:{},4194:{},4195:{},4196:{},4197:{},4198:{},4199:{},4200:{},0:{f:yf},1:{},2:{f:El},3:{f:kl},4:{f:wl},5:{f:Ff},7:{f:Sl},8:{},9:{f:Xs},11:{},22:{f:ls},30:{f:Ef},31:{},32:{},33:{f:Gf},36:{},37:{f:lf},50:{f:_l},62:{},52:{},67:{},68:{f:ls},69:{},86:{},126:{},127:{f:gl},135:{},136:{},137:{},145:{},148:{},149:{},150:{},169:{},171:{},188:{},191:{},192:{},194:{},195:{},214:{f:xl},223:{},234:{},354:{},421:{},518:{f:Sd},521:{f:Xs},536:{f:Wf},547:{f:Bf},561:{},579:{},1030:{f:Sd},1033:{f:Xs},1091:{},2157:{},2163:{},2177:{},2240:{},2241:{},2242:{},2243:{},2244:{},2245:{},2246:{},2247:{},2248:{},2249:{},2250:{},2251:{},2262:{r:12},101:{},102:{},105:{},106:{},107:{},109:{},112:{},114:{},29282:{}};function Pb(e,r,t,a){var n=r;if(isNaN(n))return;var i=a||(t||[]).length||0;var s=e.next(4);s._W(2,n);s._W(2,i);if(i>0&&aa(t))e.push(t)}function Lb(e,r,t,a){var n=a||(t||[]).length||0;if(n<=8224)return Pb(e,r,t,n);var i=r;if(isNaN(i))return;var s=t.parts||[],f=0;var l=0,o=0;while(o+(s[f]||8224)<=8224){o+=s[f]||8224;f++}var c=e.next(4);c._W(2,i);c._W(2,o);e.push(t.slice(l,l+o));l+=o;while(l=0&&n<65536)Pb(e,2,yl(t,a,n));else Pb(e,3,Tl(t,a,n));return;case"b":;case"e":Pb(e,5,Ub(t,a,r.v,r.t));return;case"s":;case"str":Pb(e,4,Bb(t,a,r.v==null?"":String(r.v).slice(0,255)));return;}Pb(e,1,Mb(null,t,a))}function Hb(e,r,t,a){var n=r["!data"]!=null;var i=za(r["!ref"]||"A1"),s,f="",l=[];if(i.e.c>255||i.e.r>16383){if(a.WTF)throw new Error("Range "+(r["!ref"]||"A1")+" exceeds format limit A1:IV16384");i.e.c=Math.min(i.e.c,255);i.e.r=Math.min(i.e.c,16383)}var o=[];for(var c=i.s.c;c<=i.e.c;++c)l[c]=Na(c);for(var u=i.s.r;u<=i.e.r;++u){if(n)o=r["!data"][u]||[];f=Ca(u);for(c=i.s.c;c<=i.e.c;++c){var h=n?o[c]:r[l[c]+f];if(!h)continue;Wb(e,h,u,c,a)}}}function zb(e,r){var t=r||{};var a=Ta();var n=0;for(var i=0;i255||d.e.r>=v){if(r.WTF)throw new Error("Range "+(i["!ref"]||"A1")+" exceeds format limit A1:IV16384");d.e.c=Math.min(d.e.c,255);d.e.r=Math.min(d.e.c,v-1)}Pb(a,2057,Ys(t,16,r));Pb(a,13,os(1));Pb(a,12,os(100));Pb(a,15,fs(true));Pb(a,17,fs(false));Pb(a,16,yn(.001));Pb(a,95,fs(true));Pb(a,42,fs(false));Pb(a,43,fs(false));Pb(a,130,os(1));Pb(a,128,Nf([0,0]));Pb(a,131,fs(false));Pb(a,132,fs(false));if(o)Yb(a,i["!cols"]);Pb(a,512,Sf(d,r));if(o)i["!links"]=[];var p=[];var m=[];for(var b=d.s.c;b<=d.e.c;++b)h[b]=Na(b);for(var g=d.s.r;g<=d.e.r;++g){if(l)m=i["!data"][g]||[];u=Ca(g);for(b=d.s.c;b<=d.e.c;++b){c=h[b]+u;var w=l?m[b]:i[c];if(!w)continue;Kb(a,w,g,b,r);if(o&&w.l)i["!links"].push([c,w.l]);if(o&&w.c)p.push([c,w.c])}}var k=f.CodeName||f.name||n;if(o)Pb(a,574,hf((s.Views||[])[0]));if(o&&(i["!merges"]||[]).length)Pb(a,229,Zf(i["!merges"]));if(o)Xb(a,i);Pb(a,442,ws(k,r));if(o)Gb(a,i);Pb(a,10);return a.end()}function Jb(e,r,t){var a=Ta();var n=(e||{}).Workbook||{};var i=n.Sheets||[];var s=n.WBProps||{};var f=t.biff==8,l=t.biff==5;Pb(a,2057,Ys(e,5,t));if(t.bookType=="xla")Pb(a,135);Pb(a,225,f?os(1200):null);Pb(a,193,ns(2));if(l)Pb(a,191);if(l)Pb(a,192);Pb(a,226);Pb(a,92,Js("SheetJS",t));Pb(a,66,os(f?1200:1252));if(f)Pb(a,353,os(0));if(f)Pb(a,448);Pb(a,317,vl(e.SheetNames.length));if(f&&e.vbaraw)Pb(a,211);if(f&&e.vbaraw){var o=s.CodeName||"ThisWorkbook";Pb(a,442,ws(o,t))}Pb(a,156,os(17));Pb(a,25,fs(false));Pb(a,18,fs(false));Pb(a,19,os(0));if(f)Pb(a,431,fs(false));if(f)Pb(a,444,os(0));Pb(a,61,cf(t));Pb(a,64,fs(false));Pb(a,141,os(0));Pb(a,34,fs(vm(e)=="true"));Pb(a,14,fs(true));if(f)Pb(a,439,fs(false));Pb(a,218,os(0));Vb(a,e,t);$b(a,e.SSF,t);jb(a,t);if(f)Pb(a,352,fs(false));var c=a.end();var u=Ta();if(f)Pb(u,140,sl());if(f&&t.Strings)Lb(u,252,tf(t.Strings,t));Pb(u,10);var h=u.end();var d=Ta();var v=0,p=0;for(p=0;p255){if(typeof console!="undefined"&&console.error)console.error("Worksheet '"+e.SheetNames[t]+"' extends beyond column IV (255). Data may be lost.")}}var i=r||{};switch(i.biff||2){case 8:;case 5:return qb(e,r);case 4:;case 3:;case 2:return zb(e,r);}throw new Error("invalid type "+i.bookType+" for BIFF")}function eg(e,r){var t=r||{};var a=t.dense!=null?t.dense:b;var n={};if(a)n["!data"]=[];e=e.replace(//g,"");var i=e.match(/");var s=e.match(/<\/table/i);var f=i.index,l=s&&s.index||e.length;var o=Rr(e.slice(f,l),/(:?]*>)/i,"");var c=-1,u=0,h=0,d=0;var v={s:{r:1e7,c:1e7},e:{r:0,c:0}};var p=[];for(f=0;f/i);for(l=0;l"))>-1)T=T.slice(E+1);for(var y=0;y")));d=_.colspan?+_.colspan:1;if((h=+_.rowspan)>1||d>1)p.push({s:{r:c,c:u},e:{r:c+(h||1)-1,c:u+d-1}});var x=_.t||_["data-t"]||"";if(!T.length){u+=d;continue}T=wt(T);if(v.s.r>c)v.s.r=c;if(v.e.ru)v.s.c=u;if(v.e.ct||n[u].s.c>l)continue;if(n[u].e.r1)s.rowspan=o;if(c>1)s.colspan=c;if(a.editable)v=''+v+"";else if(d){s["data-t"]=d&&d.t||"z";if(d.v!=null)s["data-v"]=d.v;if(d.z!=null)s["data-z"]=d.z;if(d.l&&(d.l.Target||"#").charAt(0)!="#")v=''+v+""}s.id=(a.id||"sjs")+"-"+h;i.push(At("td",v,s))}var p="";return p+i.join("")+""}var tg='SheetJS Table Export';var ag="";function ng(e,r){var t=e.match(/[\s\S]*?<\/table>/gi);if(!t||t.length==0)throw new Error("Invalid HTML: could not find
");if(t.length==1){var a=Ga(eg(t[0],r),r);a.bookType="html";return a}var n=dk();t.forEach(function(e,t){vk(n,eg(e,r),"Sheet"+(t+1))});n.bookType="html";return n}function ig(e,r,t){var a=[];return a.join("")+""}function sg(e,r){var t=r||{};var a=t.header!=null?t.header:tg;var n=t.footer!=null?t.footer:ag;var i=[a];var s=Ua(e["!ref"]);i.push(ig(e,s,t));for(var f=s.s.r;f<=s.e.r;++f)i.push(rg(e,s,f,t));i.push("
"+n);return i.join("")}function fg(e,r,t){var a=r.rows;if(!a){throw"Unsupported origin when "+r.tagName+" is not a TABLE"}var n=t||{};var i=e["!data"]!=null;var s=0,f=0;if(n.origin!=null){if(typeof n.origin=="number")s=n.origin;else{var l=typeof n.origin=="string"?La(n.origin):n.origin;s=l.r;f=l.c}}var o=Math.min(n.sheetRows||1e7,a.length);var c={s:{r:0,c:0},e:{r:s,c:f}};if(e["!ref"]){var u=Ua(e["!ref"]);c.s.r=Math.min(c.s.r,u.s.r);c.s.c=Math.min(c.s.c,u.s.c);c.e.r=Math.max(c.e.r,u.e.r);c.e.c=Math.max(c.e.c,u.e.c);if(s==-1)c.e.r=s=u.e.r+1}var h=[],d=0;var v=e["!rows"]||(e["!rows"]=[]);var p=0,m=0,b=0,g=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;p1||k>1)h.push({s:{r:m+s,c:g+f},e:{r:m+s+(w||1)-1,c:g+f+(k||1)-1}});var A={t:"s",v:S};var C=y.getAttribute("data-t")||y.getAttribute("t")||"";if(S!=null){if(S.length==0)A.t=C||"z";else if(n.raw||S.trim().length==0||C=="s"){}else if(S==="TRUE")A={t:"b",v:true};else if(S==="FALSE")A={t:"b",v:false};else if(!isNaN(_r(S)))A={t:"n",v:_r(S)};else if(!isNaN(Or(S).getDate())){A={t:"d",v:Tr(S)};if(!n.cellDates)A={t:"n",v:hr(A.v)};A.z=n.dateNF||Z[14]}}if(A.z===undefined&&_!=null)A.z=_;var O="",R=y.getElementsByTagName("A");if(R&&R.length)for(var I=0;I=o)e["!fullref"]=Ba((c.e.r=a.length-p+m-1+s,c));return e}function lg(e,r){var t=r||{};var a={};if(t.dense)a["!data"]=[];return fg(a,e,r)}function og(e,r){var t=Ga(lg(e,r),r);return t}function cg(e){var r="";var t=ug(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function ug(e){if(e.ownerDocument.defaultView&&typeof e.ownerDocument.defaultView.getComputedStyle==="function")return e.ownerDocument.defaultView.getComputedStyle;if(typeof getComputedStyle==="function")return getComputedStyle;return null}function hg(e){var r=e.replace(/[\t\r\n]/g," ").trim().replace(/ +/g," ").replace(//g," ").replace(//g,function(e,r){return Array(parseInt(r,10)+1).join(" ")}).replace(/]*\/>/g,"\t").replace(//g,"\n");var t=rt(r.replace(/<[^>]*>/g,""));return[t]}function dg(e,r,t){var a=t||{};var n=Rt(e);It.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");var i,s,f="",l="",o,c=0,u=-1,h=false,d="";while(i=It.exec(n)){switch(i[3]=i[3].replace(/_.*$/,"")){case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":;case"text-style":if(i[1]==="/"){h=false;if(s["truncate-on-overflow"]=="false"){if(f.match(/h/))f=f.replace(/h+/,"[$&]");else if(f.match(/m/))f=f.replace(/m+/,"[$&]");else if(f.match(/s/))f=f.replace(/s+/,"[$&]")}a[s.name]=f;f=""}else if(i[0].charAt(i[0].length-2)!=="/"){h=true;f="";s=Jr(i[0],false)}break;case"boolean-style":if(i[1]==="/"){h=false;a[s.name]="General";f=""}else if(i[0].charAt(i[0].length-2)!=="/"){h=true;f="";s=Jr(i[0],false)}break;case"boolean":f+="General";break;case"text":if(i[1]==="/"){d=n.slice(u,It.lastIndex-i[0].length);if(d=="%"&&s[0]=="=0")f=a[o["apply-style-name"]]+";"+f;else console.error("ODS number format may be incorrect: "+o["condition"]);break;case"number":if(i[1]==="/")break;o=Jr(i[0],false);l="";l+=Sr("0",+o["min-integer-digits"]||1);if(ut(o["grouping"]))l=de(Sr("#",Math.max(0,4-l.length))+l);if(+o["min-decimal-places"]||+o["decimal-places"])l+=".";if(+o["min-decimal-places"])l+=Sr("0",+o["min-decimal-places"]||1);if(+o["decimal-places"]-(+o["min-decimal-places"]||0))l+=Sr("0",+o["decimal-places"]-(+o["min-decimal-places"]||0));f+=l;break;case"embedded-text":if(i[1]==="/"){if(c==0)f+='"'+n.slice(u,It.lastIndex-i[0].length).replace(/"/g,'""')+'"';else f=f.slice(0,c)+'"'+n.slice(u,It.lastIndex-i[0].length).replace(/"/g,'""')+'"'+f.slice(c)}else if(i[0].charAt(i[0].length-2)!=="/"){u=It.lastIndex;c=-+Jr(i[0],false)["position"]||0}break;}}return a}function vg(e,r,t){var a=r||{};if(b!=null&&a.dense==null)a.dense=b;var n=Rt(e);var i=[],s;var f;var l,o="",c=0;var u;var h;var d={},v=[];var p={};if(a.dense)p["!data"]=[];var m,g;var w={value:""};var k="",T=0,E;var y=[];var S=-1,_=-1,x={s:{r:1e6,c:1e7},e:{r:0,c:0}};var A=0;var C=t||{},O={};var R=[],I={},N=0,F=0;var D=[],P=1,L=1;var M=[];var U={Names:[],WBProps:{}};var B={};var W=["",""];var H=[],z={};var V="",$=0;var G=false,j=false;var X=0;var Y=0;It.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");while(m=It.exec(n))switch(m[3]=m[3].replace(/_.*$/,"")){case"table":;case"工作表":if(m[1]==="/"){if(x.e.c>=x.s.c&&x.e.r>=x.s.r)p["!ref"]=Ba(x);else p["!ref"]="A1:A1";if(a.sheetRows>0&&a.sheetRows<=x.e.r){p["!fullref"]=p["!ref"];x.e.r=a.sheetRows-1;p["!ref"]=Ba(x)}if(R.length)p["!merges"]=R;if(D.length)p["!rows"]=D;u.name=u["名称"]||u.name;if(typeof JSON!=="undefined")JSON.stringify(u);v.push(u.name);d[u.name]=p;j=false}else if(m[0].charAt(m[0].length-2)!=="/"){u=Jr(m[0],false);S=_=-1;x.s.r=x.s.c=1e7;x.e.r=x.e.c=0;p={};if(a.dense)p["!data"]=[];R=[];D=[];j=true}break;case"table-row-group":if(m[1]==="/")--A;else++A;break;case"table-row":;case"行":if(m[1]==="/"){S+=P;P=1;break}h=Jr(m[0],false);if(h["行号"])S=h["行号"]-1;else if(S==-1)S=0;P=+h["number-rows-repeated"]||1;if(P<10)for(X=0;X0)D[S+X]={level:A};_=-1;break;case"covered-table-cell":if(m[1]!=="/")++_;if(a.sheetStubs){if(a.dense){if(!p["!data"][S])p["!data"][S]=[];p["!data"][S][_]={t:"z"}}else p[Ma({r:S,c:_})]={t:"z"}}k="";y=[];break;case"table-cell":;case"数据":if(m[0].charAt(m[0].length-2)==="/"){++_;w=Jr(m[0],false);L=parseInt(w["number-columns-repeated"]||"1",10);g={t:"z",v:null};if(w.formula&&a.cellFormula!=false)g.f=jd(rt(w.formula));if(w["style-name"]&&O[w["style-name"]])g.z=O[w["style-name"]];if((w["数据类型"]||w["value-type"])=="string"){g.t="s";g.v=rt(w["string-value"]||"");if(a.dense){if(!p["!data"][S])p["!data"][S]=[];p["!data"][S][_]=g}else{p[Na(_)+Ca(S)]=g}}_+=L-1}else if(m[1]!=="/"){++_;k="";T=0;y=[];L=1;var K=P?S+P-1:S;if(_>x.e.c)x.e.c=_;if(_x.e.r)x.e.r=K;w=Jr(m[0],false);H=[];z={};g={t:w["数据类型"]||w["value-type"],v:null};if(w["style-name"]&&O[w["style-name"]])g.z=O[w["style-name"]];if(a.cellFormula){if(w.formula)w.formula=rt(w.formula);if(w["number-matrix-columns-spanned"]&&w["number-matrix-rows-spanned"]){N=parseInt(w["number-matrix-rows-spanned"],10)||0;F=parseInt(w["number-matrix-columns-spanned"],10)||0;I={s:{r:S,c:_},e:{r:S+N-1,c:_+F-1}};g.F=Ba(I);M.push([I,g.F])}if(w.formula)g.f=jd(w.formula);else for(X=0;X=M[X][0].s.r&&S<=M[X][0].e.r)if(_>=M[X][0].s.c&&_<=M[X][0].e.c)g.F=M[X][1]}if(w["number-columns-spanned"]||w["number-rows-spanned"]){N=parseInt(w["number-rows-spanned"],10)||0;F=parseInt(w["number-columns-spanned"],10)||0;I={s:{r:S,c:_},e:{r:S+N-1,c:_+F-1}};R.push(I)}if(w["number-columns-repeated"])L=parseInt(w["number-columns-repeated"],10);switch(g.t){case"boolean":g.t="b";g.v=ut(w["boolean-value"])||+w["boolean-value"]>=1;break;case"float":g.t="n";g.v=parseFloat(w.value);break;case"percentage":g.t="n";g.v=parseFloat(w.value);break;case"currency":g.t="n";g.v=parseFloat(w.value);break;case"date":g.t="d";g.v=Tr(w["date-value"]);if(!a.cellDates){g.t="n";g.v=hr(g.v,U.WBProps.date1904)-Y}if(!g.z)g.z="m/d/yy";break;case"time":g.t="n";g.v=br(w["time-value"])/86400;if(a.cellDates){g.t="d";g.v=mr(g.v)}if(!g.z)g.z="HH:MM:SS";break;case"number":g.t="n";g.v=parseFloat(w["数据数值"]);break;default:if(g.t==="string"||g.t==="text"||!g.t){g.t="s";if(w["string-value"]!=null){k=rt(w["string-value"]);y=[]}}else throw new Error("Unsupported value type "+g.t);}}else{G=false;if(g.t==="s"){g.v=k||"";if(y.length)g.R=y;G=T==0}if(B.Target)g.l=B;if(H.length>0){g.c=H;H=[]}if(k&&a.cellText!==false)g.w=k;if(G){g.t="z";delete g.v}if(!G||a.sheetStubs){if(!(a.sheetRows&&a.sheetRows<=S)){for(var Z=0;Z0)p["!data"][S+Z][_+L]=yr(g)}else{p[Ma({r:S+Z,c:_})]=g;while(--L>0)p[Ma({r:S+Z,c:_+L})]=yr(g)}if(x.e.c<=_)x.e.c=_}}}L=parseInt(w["number-columns-repeated"]||"1",10);_+=L-1;L=0;g={};k="";y=[]}B={};break;case"document":;case"document-content":;case"电子表格文档":;case"spreadsheet":;case"主体":;case"scripts":;case"styles":;case"font-face-decls":;case"master-styles":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s}else if(m[0].charAt(m[0].length-2)!=="/")i.push([m[3],true]);break;case"annotation":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s;z.t=k;if(y.length)z.R=y;z.a=V;H.push(z)}else if(m[0].charAt(m[0].length-2)!=="/"){i.push([m[3],false])}V="";$=0;k="";T=0;y=[];break;case"creator":if(m[1]==="/"){V=n.slice($,m.index)}else $=m.index+m[0].length;break;case"meta":;case"元数据":;case"settings":;case"config-item-set":;case"config-item-map-indexed":;case"config-item-map-entry":;case"config-item-map-named":;case"shapes":;case"frame":;case"text-box":;case"image":;case"data-pilot-tables":;case"list-style":;case"form":;case"dde-links":;case"event-listeners":;case"chart":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s}else if(m[0].charAt(m[0].length-2)!=="/")i.push([m[3],false]);k="";T=0;y=[];break;case"scientific-number":;case"currency-symbol":;case"fill-character":break;case"text-style":;case"boolean-style":;case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":if(m[1]==="/"){var J=It.lastIndex;dg(n.slice(l,It.lastIndex),r,C);It.lastIndex=J}else if(m[0].charAt(m[0].length-2)!=="/"){l=It.lastIndex-m[0].length}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":{var q=Jr(m[0],false);if(q["family"]=="table-cell"&&C[q["data-style-name"]])O[q["name"]]=C[q["data-style-name"]]}break;case"map":break;case"font-face":break;case"paragraph-properties":break;case"table-properties":break;case"table-column-properties":break;case"table-row-properties":break;case"table-cell-properties":break;case"number":break;case"fraction":break;case"day":;case"month":;case"year":;case"era":;case"day-of-week":;case"week-of-year":;case"quarter":;case"hours":;case"minutes":;case"seconds":;case"am-pm":break;case"boolean":break;case"text":if(m[0].slice(-2)==="/>")break;else if(m[1]==="/")switch(i[i.length-1][0]){case"number-style":;case"date-style":;case"time-style":o+=n.slice(c,m.index);break;}else c=m.index+m[0].length;break;case"named-range":f=Jr(m[0],false);W=Yd(f["cell-range-address"]);var Q={Name:f.name,Ref:W[0]+"!"+W[1]};if(j)Q.Sheet=v.length;U.Names.push(Q);break;case"text-content":break;case"text-properties":break;case"embedded-text":break;case"body":;case"电子表格":break;case"forms":break;case"table-column":break;case"table-header-rows":break;case"table-rows":break;case"table-column-group":break;case"table-header-columns":break;case"table-columns":break;case"null-date":f=Jr(m[0],false);switch(f["date-value"]){case"1904-01-01":U.WBProps.date1904=true;case"1900-01-01":Y=0;}break;case"graphic-properties":break;case"calculation-settings":break;case"named-expressions":break;case"label-range":break;case"label-ranges":break;case"named-expression":break;case"sort":break;case"sort-by":break;case"sort-groups":break;case"tab":break;case"line-break":break;case"span":break;case"p":;case"文本串":if(["master-styles"].indexOf(i[i.length-1][0])>-1)break;if(m[1]==="/"&&(!w||!w["string-value"])){var ee=hg(n.slice(T,m.index),E);k=(k.length>0?k+"\n":"")+ee[0]}else{E=Jr(m[0],false);T=m.index+m[0].length}break;case"s":break;case"database-range":if(m[1]==="/")break;try{W=Yd(Jr(m[0])["target-range-address"]);d[W[0]]["!autofilter"]={ref:W[1]}}catch(re){}break;case"date":break;case"object":break;case"title":;case"标题":break;case"desc":break;case"binary-data":break;case"table-source":break;case"scenario":break;case"iteration":break;case"content-validations":break;case"content-validation":break;case"help-message":break;case"error-message":break;case"database-ranges":break;case"filter":break;case"filter-and":break;case"filter-or":break;case"filter-condition":break;case"list-level-style-bullet":break;case"list-level-style-number":break;case"list-level-properties":break;case"sender-firstname":;case"sender-lastname":;case"sender-initials":;case"sender-title":;case"sender-position":;case"sender-email":;case"sender-phone-private":;case"sender-fax":;case"sender-company":;case"sender-phone-work":;case"sender-street":;case"sender-city":;case"sender-postal-code":;case"sender-country":;case"sender-state-or-province":;case"author-name":;case"author-initials":;case"chapter":;case"file-name":;case"template-name":;case"sheet-name":break;case"event-listener":break;case"initial-creator":;case"creation-date":;case"print-date":;case"generator":;case"document-statistic":;case"user-defined":;case"editing-duration":;case"editing-cycles":break;case"config-item":break;case"page-number":break;case"page-count":break;case"time":break;case"cell-range-source":break;case"detective":break;case"operation":break;case"highlighted-range":break;case"data-pilot-table":;case"source-cell-range":;case"source-service":;case"data-pilot-field":;case"data-pilot-level":;case"data-pilot-subtotals":;case"data-pilot-subtotal":;case"data-pilot-members":;case"data-pilot-member":;case"data-pilot-display-info":;case"data-pilot-sort-info":;case"data-pilot-layout-info":;case"data-pilot-field-reference":;case"data-pilot-groups":;case"data-pilot-group":;case"data-pilot-group-member":break;case"rect":break;case"dde-connection-decls":;case"dde-connection-decl":;case"dde-link":;case"dde-source":break;case"properties":break;case"property":break;case"a":if(m[1]!=="/"){B=Jr(m[0],false);if(!B.href)break;B.Target=rt(B.href);delete B.href;if(B.Target.charAt(0)=="#"&&B.Target.indexOf(".")>-1){W=Yd(B.Target.slice(1));B.Target="#"+W[0]+"!"+W[1]}else if(B.Target.match(/^\.\.[\\\/]/))B.Target=B.Target.slice(3)}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(m[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(a.WTF)throw new Error(m);};}var te={Sheets:d,SheetNames:v,Workbook:U};if(a.bookSheets)delete te.Sheets;return te}function pg(e,r){r=r||{};if(Dr(e,"META-INF/manifest.xml"))ui(Lr(e,"META-INF/manifest.xml"),r);var t=Mr(e,"styles.xml");var a=t&&dg(mt(t),r);var n=Mr(e,"content.xml");if(!n)throw new Error("Missing content.xml in ODS / UOF file");var i=vg(mt(n),r,a);if(Dr(e,"meta.xml"))i.Props=wi(Lr(e,"meta.xml"));i.bookType="ods";return i}function mg(e,r){var t=vg(e,r);t.bookType="fods";return t}var bg=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return $r+r}}();function gg(e,r){var t="number",a="",n={"style:name":r},i="",s=0;e=e.replace(/"[$]"/g,"$");e:{if(e.indexOf(";")>-1){console.error("Unsupported ODS Style Map exported. Using first branch of "+e);e=e.slice(0,e.indexOf(";"))}if(e=="@"){t="text";a="";break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[s]=='"'){i="";while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;if(e[s+1]=="*"){s++;a+=""+nt(i.replace(/""/g,'"'))+""}else{a+=""+nt(i.replace(/""/g,'"'))+""}e=e.slice(s+1);s=0}var f=e.match(/# (\?+)\/(\?+)/);if(f){a+=At("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":f[1].length,"number:max-denominator-value":Math.max(+f[1].replace(/./g,"9"),+f[2].replace(/./g,"9"))});break e}if(f=e.match(/# (\?+)\/(\d+)/)){a+=At("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":f[1].length,"number:denominator-value":+f[2]});break e}if(f=e.match(/(\d+)(|\.\d+)%/)){t="percentage";a+=At("number:number",null,{"number:decimal-places":f[2]&&f.length-1||0,"number:min-decimal-places":f[2]&&f.length-1||0,"number:min-integer-digits":f[1].length})+"%";break e}var l=false;if(["y","m","d"].indexOf(e[0])>-1){t="date";r:for(;s";break;case"yyy":;case"yyyy":a+='';break;case"mmmmm":console.error("ODS has no equivalent of format |mmmmm|");case"m":;case"mm":;case"mmm":;case"mmmm":a+='';break;case"d":;case"dd":a+='';break;case"ddd":;case"dddd":a+='';break;}break;case'"':while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(i)+"";break;default:console.error("unrecognized character "+i+" in ODF format "+e);}if(!l)break e;e=e.slice(s+1);s=0}if(e.match(/^\[?[hms]/)){if(t=="number")t="time";if(e.match(/\[/)){e=e.replace(/[\[\]]/g,"");n["number:truncate-on-overflow"]="false"}for(;s';break;case"m":;case"mm":a+='';break;case"s":;case"ss":if(e[s+1]==".")do{i+=e[s+1];++s}while(e[s+1]=="0");a+='";break;}break;case'"':while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(i)+"";break;case"a":if(e.slice(s,s+3).toLowerCase()=="a/p"){a+="";s+=2;break}if(e.slice(s,s+5).toLowerCase()=="am/pm"){a+="";s+=4;break};default:console.error("unrecognized character "+i+" in ODF format "+e);}break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[0]=="$"){a+='$';e=e.slice(1);s=0}s=0;if(e[s]=='"'){while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;if(e[s+1]=="*"){s++;a+=""+nt(i.replace(/""/g,'"'))+""}else{a+=""+nt(i.replace(/""/g,'"'))+""}e=e.slice(s+1);s=0}var c=e.match(/([#0][0#,]*)(\.[0#]*|)(E[+]?0*|)/i);if(!c||!c[0])console.error("Could not find numeric part of "+e);else{var u=c[1].replace(/,/g,"");a+="-1?' number:grouping="true"':"")+(c[2]&&' number:decimal-places="'+(c[2].length-1)+'"'||' number:decimal-places="0"')+(c[3]&&c[3].indexOf("+")>-1?' number:forced-exponent-sign="true"':"")+(c[3]?' number:min-exponent-digits="'+c[3].match(/0+/)[0].length+'"':"")+">"+"";s=c.index+c[0].length}if(e[s]=='"'){i="";while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.replace(/""/g,'"'))+""}}if(!a){console.error("Could not generate ODS number format for |"+e+"|");return""}return At("number:"+t+"-style",a,n)}function wg(e,r,t){var a=e.filter(function(e){return e.Sheet==(t==-1?null:t)});if(!a.length)return"";return" \n"+a.map(function(e){var r=Kd(e.Ref);return" "+At("table:named-range",null,{"table:name":e.Name,"table:cell-range-address":r,"table:base-cell-address":r.replace(/[\.]?[^\.]*$/,".$A$1")})}).join("\n")+"\n \n"}var kg=function(){var e=function(e){return nt(e).replace(/ +/g,function(e){return''}).replace(/\t/g,"").replace(/\n/g,"").replace(/^ /,"").replace(/ $/,"")};var r=" \n";var t=" \n";var a=function(a,n,i,s,f){var l=[];l.push(' \n');var o=0,c=0,u=Ua(a["!ref"]||"A1");var h=a["!merges"]||[],d=0;var v=a["!data"]!=null;if(a["!cols"]){for(c=0;c<=u.e.c;++c)l.push(" \n")}var p="",m=a["!rows"]||[];for(o=0;o\n")}for(;o<=u.e.r;++o){p=m[o]?' table:style-name="ro'+m[o].ods+'"':"";l.push(" \n");for(c=0;cc)continue;if(h[d].s.r>o)continue;if(h[d].e.c\n")}if((n.Workbook||{}).Names)l.push(wg(n.Workbook.Names,n.SheetNames,i));l.push(" \n");return l.join("")};var n=function(e,r){e.push(" \n");var t=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!cols"]){for(var a=0;a\n');e.push(' \n');e.push(" \n");++t}}});var a=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!rows"]){for(var t=0;t\n');e.push(' \n');e.push(" \n");++a}}});e.push(' \n');e.push(' \n');e.push(" \n");e.push(' \n');e.push(' \n');e.push(" /\n");e.push(' \n');e.push(" /\n");e.push(" \n");e.push(" \n");var n={};var i=69;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;var t=r["!data"]!=null;var a=Ua(r["!ref"]);for(var s=0;s<=a.e.r;++s)for(var f=0;f<=a.e.c;++f){var l=t?(r["!data"][s]||[])[f]:r[Ma({r:s,c:f})];if(!l||!l.z||l.z.toLowerCase()=="general")continue;if(!n[l.z]){var o=gg(l.z,"N"+i);if(o){n[l.z]="N"+i;++i;e.push(o+"\n")}}}});e.push(' \n');sr(n).forEach(function(r){e.push('\n')});e.push(" \n");return n};return function i(e,r){var t=[$r];var i=xt({"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:meta":"urn:oasis:names:tc:opendocument:xmlns:meta:1.0","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:presentation":"urn:oasis:names:tc:opendocument:xmlns:presentation:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:chart":"urn:oasis:names:tc:opendocument:xmlns:chart:1.0","xmlns:dr3d":"urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0","xmlns:math":"http://www.w3.org/1998/Math/MathML","xmlns:form":"urn:oasis:names:tc:opendocument:xmlns:form:1.0","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=xt({"xmlns:config":"urn:oasis:names:tc:opendocument:xmlns:config:1.0","office:mimetype":"application/vnd.oasis.opendocument.spreadsheet"});if(r.bookType=="fods"){t.push("\n");t.push(mi().replace(//,"").replace(/<\/office:document-meta>/,"")+"\n")}else t.push("\n");var f=n(t,e);t.push(" \n");t.push(" \n");if(((e.Workbook||{}).WBProps||{}).date1904)t.push(' \n \n \n');for(var l=0;l!=e.SheetNames.length;++l)t.push(a(e.Sheets[e.SheetNames[l]],e,l,r,f));if((e.Workbook||{}).Names)t.push(wg(e.Workbook.Names,e.SheetNames,-1));t.push(" \n");t.push(" \n");if(r.bookType=="fods")t.push("");else t.push("");return t.join("")}}();function Tg(e,r){if(r.bookType=="fods")return kg(e,r);var t=Hr();var a="";var n=[];var i=[];a="mimetype";Wr(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";Wr(t,a,kg(e,r));n.push([a,"text/xml"]);i.push([a,"ContentFile"]);a="styles.xml";Wr(t,a,bg(e,r));n.push([a,"text/xml"]);i.push([a,"StylesFile"]);a="meta.xml";Wr(t,a,$r+mi());n.push([a,"text/xml"]);i.push([a,"MetadataFile"]);a="manifest.rdf";Wr(t,a,pi(i));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";Wr(t,a,hi(n));return t}var Eg=function(){try{if(typeof Uint8Array=="undefined")return"slice";if(typeof Uint8Array.prototype.subarray=="undefined")return"slice";if(typeof Buffer!=="undefined"){if(typeof Buffer.prototype.subarray=="undefined")return"slice";if((typeof Buffer.from=="function"?Buffer.from([72,62]):new Buffer([72,62]))instanceof Uint8Array)return"subarray";return"slice"}return"subarray"}catch(e){return"slice"}}();function yg(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function Sg(e){return typeof TextDecoder!="undefined"?(new TextDecoder).decode(e):mt(R(e))}function _g(e){return typeof TextEncoder!="undefined"?(new TextEncoder).encode(e):C(bt(e))}function xg(e){var r=0;for(var t=0;t>1&1431655765;e=(e&858993459)+(e>>2&858993459);return(e+(e>>4)&252645135)*16843009>>>24}function Cg(e,r){var t=(e[r+15]&127)<<7|e[r+14]>>1;var a=e[r+14]&1;for(var n=r+13;n>=r;--n)a=a*256+e[n];return(e[r+15]&128?-a:a)*Math.pow(10,t-6176)}function Og(e,r,t){var a=Math.floor(t==0?0:Math.LOG10E*Math.log(Math.abs(t)))+6176-16;var n=t/Math.pow(10,a-6176);e[r+15]|=a>>7;e[r+14]|=(a&127)<<1;for(var i=0;n>=1;++i,n/=256)e[r+i]=n&255;e[r+15]|=t>=0?0:128}function Rg(e,r){var t=r.l;var a=e[t]&127;e:if(e[t++]>=128){a|=(e[t]&127)<<7;if(e[t++]<128)break e;a|=(e[t]&127)<<14;if(e[t++]<128)break e;a|=(e[t]&127)<<21;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,28);++t;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,35);++t;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,42);++t;if(e[t++]<128)break e}r.l=t;return a}function Ig(e){var r=new Uint8Array(7);r[0]=e&127;var t=1;e:if(e>127){r[t-1]|=128;r[t]=e>>7&127;++t;if(e<=16383)break e;r[t-1]|=128;r[t]=e>>14&127;++t;if(e<=2097151)break e;r[t-1]|=128;r[t]=e>>21&127;++t;if(e<=268435455)break e;r[t-1]|=128;r[t]=e/256>>>21&127;++t;if(e<=34359738367)break e;r[t-1]|=128;r[t]=e/65536>>>21&127;++t;if(e<=4398046511103)break e;r[t-1]|=128;r[t]=e/16777216>>>21&127;++t}return r[Eg](0,t)}function Ng(e){var r={l:0};var t=[];while(r.l=128){t|=(e[r]&127)<<7;if(e[r++]<128)break e;t|=(e[r]&127)<<14;if(e[r++]<128)break e;t|=(e[r]&127)<<21;if(e[r++]<128)break e;t|=(e[r]&127)<<28}return t}function Pg(e){var r=0,t=e[r]&127,a=0;e:if(e[r++]>=128){t|=(e[r]&127)<<7;if(e[r++]<128)break e;t|=(e[r]&127)<<14;if(e[r++]<128)break e;t|=(e[r]&127)<<21;if(e[r++]<128)break e;t|=(e[r]&127)<<28;a=e[r]>>4&7;if(e[r++]<128)break e;a|=(e[r]&127)<<3;if(e[r++]<128)break e;a|=(e[r]&127)<<10;if(e[r++]<128)break e;a|=(e[r]&127)<<17;if(e[r++]<128)break e;a|=(e[r]&127)<<24;if(e[r++]<128)break e;a|=(e[r]&127)<<31}return[t>>>0,a>>>0]}function Lg(e){var r=[],t={l:0};while(t.l=128);s=e[Eg](t.l,f);t.l=f}break;case 1:{s=e[Eg](f,f+8);t.l=f+8}break;case 2:{var l=Rg(e,t);s=e[Eg](t.l,t.l+l);t.l+=l}break;case 5:{s=e[Eg](f,f+4);t.l=f+4}break;default:throw new Error("PB Type ".concat(i," for Field ").concat(n," at offset ").concat(a));}var o={data:s,type:i};if(r[n]==null)r[n]=[];r[n].push(o)}return r}function Mg(e){var r=[];e.forEach(function(e,t){if(t==0)return;e.forEach(function(e){if(!e.data)return;r.push(Ig(t*8+e.type));if(e.type==2)r.push(Ig(e.data.length));r.push(e.data)})});return xg(r)}function Ug(e,r){return(e==null?void 0:e.map(function(e){return r(e.data)}))||[]}function Bg(e){var r;var t=[],a={l:0};while(a.l>>0>0;t.push(s)}return t}function Wg(e){var r=[];e.forEach(function(e){var t=[[],[{data:Ig(e.id),type:0}],[]];if(e.merge!=null)t[3]=[{data:Ig(+!!e.merge),type:0}];var a=[];e.messages.forEach(function(e){a.push(e.data);e.meta[3]=[{type:0,data:Ig(e.data.length)}];t[2].push({data:Mg(e.meta),type:2})});var n=Mg(t);r.push(Ig(n.length));r.push(n);a.forEach(function(e){return r.push(e)})});return xg(r)}function Hg(e,r){if(e!=0)throw new Error("Unexpected Snappy chunk type ".concat(e));var t={l:0};var a=Rg(r,t);var n=[];var i=t.l;while(i>2;if(f<60)++f;else{var l=f-59;f=r[i];if(l>1)f|=r[i+1]<<8;if(l>2)f|=r[i+2]<<16;if(l>3)f|=r[i+3]<<24;f>>>=0;f++;i+=l}n.push(r[Eg](i,i+f));i+=f;continue}else{var o=0,c=0;if(s==1){c=(r[i]>>2&7)+4;o=(r[i++]&224)<<3;o|=r[i++]}else{c=(r[i++]>>2)+1;if(s==2){o=r[i]|r[i+1]<<8;i+=2}else{o=(r[i]|r[i+1]<<8|r[i+2]<<16|r[i+3]<<24)>>>0;i+=4}}if(o==0)throw new Error("Invalid offset 0");var u=n.length-1,h=o;while(u>=0&&h>=n[u].length){h-=n[u].length;--u}if(u<0){if(h==0)h=n[u=0].length;else throw new Error("Invalid offset beyond length")}if(c0){n.push(n[u][Eg](n[u].length-h));c-=h}++u;while(c>=n[u].length){n.push(n[u]);c-=n[u].length;++u}if(c)n.push(n[u][Eg](0,c))}if(n.length>25)n=[xg(n)]}}var d=0;for(var v=0;v>8&255]))}else if(a<=16777216){s+=4;r.push(new Uint8Array([248,a-1&255,a-1>>8&255,a-1>>16&255]))}else if(a<=4294967296){s+=5;r.push(new Uint8Array([252,a-1&255,a-1>>8&255,a-1>>16&255,a-1>>>24&255]))}r.push(e[Eg](t,t+a));s+=a;n[0]=0;n[1]=s&255;n[2]=s>>8&255;n[3]=s>>16&255;t+=a}return xg(r)}var $g=function(){return{sst:[],rsst:[],ofmt:[],nfmt:[]}};function Gg(e,r,t,a,n){var i,s,f,l;var o=r&255,c=r>>8;var u=c>=5?n:a;e:if(t&(c>4?8:4)&&e.t=="n"&&o==7){var h=((i=u[7])==null?void 0:i[0])?Dg(u[7][0].data):-1;if(h==-1)break e;var d=((s=u[15])==null?void 0:s[0])?Dg(u[15][0].data):-1;var v=((f=u[16])==null?void 0:f[0])?Dg(u[16][0].data):-1;var p=((l=u[40])==null?void 0:l[0])?Dg(u[40][0].data):-1;var m=e.v,b=m;r:if(p){if(m==0){d=v=2;break r}if(m>=604800)d=1;else if(m>=86400)d=2;else if(m>=3600)d=4;else if(m>=60)d=8;else if(m>=1)d=16;else d=32;if(Math.floor(m)!=m)v=32;else if(m%60)v=16;else if(m%3600)v=8;else if(m%86400)v=4;else if(m%604800)v=2;if(v=2){b=m/86400;if(v>2){b|=0;m-=86400*b}w.push('d"d"');g.push(b+(h==2?" day"+(b==1?"":"s"):h==1?"d":""))}if(d<=4&&v>=4){b=m/3600;if(v>4){b|=0;m-=3600*b}w.push((d>=4?"[h]":"h")+'"h"');g.push(b+(h==2?" hour"+(b==1?"":"s"):h==1?"h":""))}if(d<=8&&v>=8){b=m/60;if(v>8){b|=0;m-=60*b}w.push((d>=8?"[m]":"m")+'"m"');if(h==0)g.push((d==8&&v==8||b>=10?"":"0")+b);else g.push(b+(h==2?" minute"+(b==1?"":"s"):h==1?"m":""))}if(d<=16&&v>=16){b=m;if(v>16){b|=0;m-=b}w.push((d>=16?"[s]":"s")+'"s"');if(h==0)g.push((v==16&&d==16||b>=10?"":"0")+b);else g.push(b+(h==2?" second"+(b==1?"":"s"):h==1?"s":""))}if(v>=32){b=Math.round(1e3*m);if(d<32)w.push('.000"ms"');if(h==0)g.push((b>=100?"":b>=10?"0":"00")+b);else g.push(b+(h==2?" millisecond"+(b==1?"":"s"):h==1?"ms":""))}e.w=g.join(h==0?":":" ");e.z=w.join(h==0?'":"':" ");if(h==0)e.w=e.w.replace(/:(\d\d\d)$/,".$1")}}function jg(e,r,t){var a=yg(e);var n=a.getUint32(4,true);var i=-1,s=-1,f=-1,l=NaN,o=new Date(2001,0,1);var c=t>1?12:8;if(n&2){f=a.getUint32(c,true);c+=4}c+=Ag(n&(t>1?3468:396))*4;if(n&512){i=a.getUint32(c,true);c+=4}c+=Ag(n&(t>1?12288:4096))*4;if(n&16){s=a.getUint32(c,true);c+=4}if(n&32){l=a.getFloat64(c,true);c+=8}if(n&64){o.setTime(o.getTime()+a.getFloat64(c,true)*1e3);c+=8}if(t>1){n=a.getUint32(8,true)>>>16;if(n&255){if(f==-1)f=a.getUint32(c,true);c+=4}}var u;var h=e[t>=4?1:2];switch(h){case 0:return void 0;case 2:u={t:"n",v:l};break;case 3:u={t:"s",v:r.sst[s]};break;case 5:u={t:"d",v:o};break;case 6:u={t:"b",v:l>0};break;case 7:u={t:"n",v:l};break;case 8:u={t:"e",v:0};break;case 9:{if(i>-1)u={t:"s",v:r.rsst[i]};else throw new Error("Unsupported cell type ".concat(e[Eg](0,4)))}break;default:throw new Error("Unsupported cell type ".concat(e[Eg](0,4)));}if(f>-1)Gg(u,h|t<<8,n,r.ofmt[f],r.nfmt[f]);if(h==7)u.v/=86400;return u}function Xg(e,r){var t=yg(e);var a=t.getUint32(4,true);var n=t.getUint32(8,true);var i=12;var s=-1,f=-1,l=-1,o=NaN,c=NaN,u=new Date(2001,0,1);if(n&1){o=Cg(e,i);i+=16}if(n&2){c=t.getFloat64(i,true);i+=8}if(n&4){u.setTime(u.getTime()+t.getFloat64(i,true)*1e3);i+=8}if(n&8){f=t.getUint32(i,true);i+=4}if(n&16){s=t.getUint32(i,true);i+=4}var h;var d=e[1];switch(d){case 0:return void 0;case 2:h={t:"n",v:o};break;case 3:h={t:"s",v:r.sst[f]};break;case 5:h={t:"d",v:u};break;case 6:h={t:"b",v:c>0};break;case 7:h={t:"n",v:c};break;case 8:h={t:"e",v:0};break;case 9:h={t:"s",v:r.rsst[s]};break;case 10:h={t:"n",v:o};break;default:throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(n&31," : ").concat(e[Eg](0,4)));}i+=Ag(n&8160)*4;if(n&516096){if(l==-1)l=t.getUint32(i,true);i+=4}if(l>-1)Gg(h,d|5<<8,n>>13,r.ofmt[l],r.nfmt[l]);if(d==7)h.v/=86400;return h}function Yg(e,r){var t=new Uint8Array(32),a=yg(t),n=12,i=0;t[0]=5;switch(e.t){case"n":t[1]=2;Og(t,n,e.v);i|=1;n+=16;break;case"b":t[1]=6;a.setFloat64(n,e.v?1:0,true);i|=2;n+=8;break;case"s":var s=e.v==null?"":String(e.v);var f=r.indexOf(s);if(f==-1)r[f=r.length]=s;t[1]=3;a.setUint32(n,f,true);i|=8;n+=4;break;default:throw"unsupported cell type "+e.t;}a.setUint32(8,i,true);return t[Eg](0,n)}function Kg(e,r){var t=new Uint8Array(32),a=yg(t),n=12,i=0;t[0]=4;switch(e.t){case"n":t[2]=2;a.setFloat64(n,e.v,true);i|=32;n+=8;break;case"b":t[2]=6;a.setFloat64(n,e.v?1:0,true);i|=32;n+=8;break;case"s":var s=e.v==null?"":String(e.v);var f=r.indexOf(s);if(f==-1)r[f=r.length]=s;t[2]=3;a.setUint32(n,f,true);i|=16;n+=4;break;default:throw"unsupported cell type "+e.t;}a.setUint32(8,i,true);return t[Eg](0,n)}function Zg(e,r){switch(e[0]){case 0:;case 1:;case 2:;case 3:;case 4:return jg(e,r,e[0]);case 5:return Xg(e,r);default:throw new Error("Unsupported payload version ".concat(e[0]));}}function Jg(e){var r=Lg(e);return Dg(r[1][0].data)}function qg(e){return Mg([[],[{type:0,data:Ig(e)}]])}function Qg(e,r){var t;var a=((t=e.messages[0].meta[5])==null?void 0:t[0])?Ng(e.messages[0].meta[5][0].data):[];var n=a.indexOf(r);if(n==-1){a.push(r);e.messages[0].meta[5]=[{type:2,data:Fg(a)}]}}function ew(e,r){var t;var a=((t=e.messages[0].meta[5])==null?void 0:t[0])?Ng(e.messages[0].meta[5][0].data):[];e.messages[0].meta[5]=[{type:2,data:Fg(a.filter(function(e){return e!=r}))}]}function rw(e,r){var t=Lg(r.data);var a=Dg(t[1][0].data);var n=t[3];var i=[];(n||[]).forEach(function(r){var t=Lg(r.data);if(!t[1])return;var n=Dg(t[1][0].data)>>>0;switch(a){case 1:i[n]=Sg(t[3][0].data);break;case 8:{var s=e[Jg(t[9][0].data)][0];var f=Lg(s.data);var l=e[Jg(f[1][0].data)][0];var o=Dg(l.meta[1][0].data);if(o!=2001)throw new Error("2000 unexpected reference to ".concat(o));var c=Lg(l.data);i[n]=c[3].map(function(e){return Sg(e.data)}).join("")}break;case 2:i[n]=Lg(t[6][0].data);break;default:throw a;}});return i}function tw(e,r){var t,a,n,i,s,f,l,o,c,u,h,d,v,p;var m=Lg(e);var b=Dg(m[1][0].data)>>>0;var g=Dg(m[2][0].data)>>>0;var w=((a=(t=m[8])==null?void 0:t[0])==null?void 0:a.data)&&Dg(m[8][0].data)>0||false;var k,T;if(((i=(n=m[7])==null?void 0:n[0])==null?void 0:i.data)&&r!=0){k=(f=(s=m[7])==null?void 0:s[0])==null?void 0:f.data;T=(o=(l=m[6])==null?void 0:l[0])==null?void 0:o.data}else if(((u=(c=m[4])==null?void 0:c[0])==null?void 0:u.data)&&r!=1){k=(d=(h=m[4])==null?void 0:h[0])==null?void 0:d.data;T=(p=(v=m[3])==null?void 0:v[0])==null?void 0:p.data}else throw"NUMBERS Tile missing ".concat(r," cell storage");var E=w?4:1;var y=yg(k);var S=[];for(var _=0;_=1)A[S[S.length-1][0]]=T[Eg](S[S.length-1][1]*E);return{R:b,cells:A}}function aw(e,r){var t;var a=Lg(r.data);var n=-1;if((t=a==null?void 0:a[7])==null?void 0:t[0]){if(Dg(a[7][0].data)>>>0)n=1;else n=0}var i=Ug(a[5],function(e){return tw(e,n)});return{nrows:Dg(a[4][0].data)>>>0,data:i.reduce(function(e,r){if(!e[r.R])e[r.R]=[];r.cells.forEach(function(t,a){if(e[r.R][a])throw new Error("Duplicate cell r=".concat(r.R," c=").concat(a));e[r.R][a]=t});return e},[])}}function nw(e,r,t){var a,n,i,s,f,l;var o=Lg(r.data);var c={s:{r:0,c:0},e:{r:0,c:0}};c.e.r=(Dg(o[6][0].data)>>>0)-1;if(c.e.r<0)throw new Error("Invalid row varint ".concat(o[6][0].data));c.e.c=(Dg(o[7][0].data)>>>0)-1;if(c.e.c<0)throw new Error("Invalid col varint ".concat(o[7][0].data));t["!ref"]=Ba(c);var u=t["!data"]!=null,h=t;var d=Lg(o[4][0].data);var v=$g();if((a=d[4])==null?void 0:a[0])v.sst=rw(e,e[Jg(d[4][0].data)][0]);if((n=d[11])==null?void 0:n[0])v.ofmt=rw(e,e[Jg(d[11][0].data)][0]);if((i=d[17])==null?void 0:i[0])v.rsst=rw(e,e[Jg(d[17][0].data)][0]);if((s=d[22])==null?void 0:s[0])v.nfmt=rw(e,e[Jg(d[22][0].data)][0]);var p=Lg(d[3][0].data);var m=0;p[1].forEach(function(r){var a=Lg(r.data);var n=e[Jg(a[2][0].data)][0];var i=Dg(n.meta[1][0].data);if(i!=6002)throw new Error("6001 unexpected reference to ".concat(i));var s=aw(e,n);s.data.forEach(function(e,r){e.forEach(function(e,a){var n=Zg(e,v);if(n){if(u){if(!h["!data"][m+r])h["!data"][m+r]=[];h["!data"][m+r][a]=n}else{t[Na(a)+Ca(m+r)]=n}}})});m+=s.nrows});if((f=d[13])==null?void 0:f[0]){var b=e[Jg(d[13][0].data)][0];var g=Dg(b.meta[1][0].data);if(g!=6144)throw new Error("Expected merge type 6144, found ".concat(g));t["!merges"]=(l=Lg(b.data))==null?void 0:l[1].map(function(e){var r=Lg(e.data);var t=yg(Lg(r[1][0].data)[1][0].data),a=yg(Lg(r[2][0].data)[1][0].data);return{s:{r:t.getUint16(0,true),c:t.getUint16(2,true)},e:{r:t.getUint16(0,true)+a.getUint16(0,true)-1,c:t.getUint16(2,true)+a.getUint16(2,true)-1}}})}}function iw(e,r,t){var a=Lg(r.data);var n={"!ref":"A1"};if(t==null?void 0:t.dense)n["!data"]=[];var i=e[Jg(a[2][0].data)];var s=Dg(i[0].meta[1][0].data);if(s!=6001)throw new Error("6000 unexpected reference to ".concat(s));nw(e,i[0],n);return n}function sw(e,r,t){var a;var n=Lg(r.data);var i={name:((a=n[1])==null?void 0:a[0])?Sg(n[1][0].data):"",sheets:[]};var s=Ug(n[2],Jg);s.forEach(function(r){e[r].forEach(function(r){var a=Dg(r.meta[1][0].data);if(a==6e3)i.sheets.push(iw(e,r,t))})});return i}function fw(e,r,t){var a;var n=dk();var i=Lg(r.data);if((a=i[2])==null?void 0:a[0])throw new Error("Keynote presentations are not supported");var s=Ug(i[1],Jg);s.forEach(function(r){e[r].forEach(function(r){var a=Dg(r.meta[1][0].data);if(a==2){var i=sw(e,r,t);i.sheets.forEach(function(e,r){vk(n,e,r==0?i.name:i.name+"_"+r,true)})}})});if(n.SheetNames.length==0)throw new Error("Empty NUMBERS file");n.bookType="numbers";return n}function lw(e,r){var t,a,n,i,s,f,l;var o={},c=[];e.FullPaths.forEach(function(e){if(e.match(/\.iwpv2/))throw new Error("Unsupported password protection")});e.FileIndex.forEach(function(e){if(!e.name.match(/\.iwa$/))return;if(e.content[0]==98)return;var r;try{r=zg(e.content)}catch(t){return console.log("?? "+e.content.length+" "+(t.message||t))}var a;try{a=Bg(r)}catch(t){return console.log("## "+(t.message||t))}a.forEach(function(e){o[e.id]=e.messages;c.push(e.id)})});if(!c.length)throw new Error("File has no messages");if(((n=(a=(t=o==null?void 0:o[1])==null?void 0:t[0].meta)==null?void 0:a[1])==null?void 0:n[0].data)&&Dg(o[1][0].meta[1][0].data)==1e4)throw new Error("Pages documents are not supported");var u=((l=(f=(s=(i=o==null?void 0:o[1])==null?void 0:i[0])==null?void 0:s.meta)==null?void 0:f[1])==null?void 0:l[0].data)&&Dg(o[1][0].meta[1][0].data)==1&&o[1][0];if(!u)c.forEach(function(e){o[e].forEach(function(e){var r=Dg(e.meta[1][0].data)>>>0;if(r==1){if(!u)u=e;else throw new Error("Document has multiple roots")}})});if(!u)throw new Error("Cannot find Document root");return fw(o,u,r)}function ow(e,r,t){var a,n;var i=[[],[{type:0,data:Ig(0)}],[{type:0,data:Ig(0)}],[{type:2,data:new Uint8Array([])}],[{type:2,data:new Uint8Array(Array.from({length:510},function(){return 255}))}],[{type:0,data:Ig(5)}],[{type:2,data:new Uint8Array([])}],[{type:2,data:new Uint8Array(Array.from({length:510},function(){return 255}))}],[{type:0,data:Ig(1)}]];if(!((a=i[6])==null?void 0:a[0])||!((n=i[7])==null?void 0:n[0]))throw"Mutation only works on post-BNC storages!";var s=0;if(i[7][0].data.length<2*e.length){var f=new Uint8Array(2*e.length);f.set(i[7][0].data);i[7][0].data=f}if(i[4][0].data.length<2*e.length){var l=new Uint8Array(2*e.length);l.set(i[4][0].data);i[4][0].data=l}var o=yg(i[7][0].data),c=0,u=[];var h=yg(i[4][0].data),d=0,v=[];var p=t?4:1;for(var m=0;m1)throw new Error("Template NUMBERS file must have exactly one sheet");e.SheetNames.forEach(function(r,s){if(s>=1){mw(t,a,s+1);n=pw(t,a,1);i=Ug(Lg(n.messages[0].data)[1],Jg)}bw(t,a,e.Sheets[r],r,s,i[s])});return t}function vw(e,r,t,a){var n=er.find(e,r[t].location);if(!n)throw"Could not find ".concat(r[t].location," in Numbers template");var i=Bg(zg(n.content));var s=i.find(function(e){return e.id==t});a(s,i);n.content=Vg(Wg(i));n.size=n.content.length}function pw(e,r,t){var a=er.find(e,r[t].location);if(!a)throw"Could not find ".concat(r[t].location," in Numbers template");var n=Bg(zg(a.content));var i=n.find(function(e){return e.id==t});return i}function mw(e,r,t){var a=-1,n=-1;var i={};vw(e,r,1,function(t,s){var f=Lg(t.messages[0].data);a=Jg(Lg(t.messages[0].data)[1][0].data);n=uw({deps:[1],location:r[a].location,type:2},r);i[a]=n;Qg(t,n);f[1].push({type:2,data:qg(n)});var l=pw(e,r,a);l.id=n;if(r[1].location==r[n].location)s.push(l);else vw(e,r,n,function(e,r){return r.push(l)});t.messages[0].data=Mg(f)});var s=-1;vw(e,r,n,function(t,a){var f=Lg(t.messages[0].data);for(var l=3;l<=69;++l)delete f[l];var o=Ug(f[2],Jg);o.forEach(function(e){return ew(t,e)});s=uw({deps:[n],location:r[o[0]].location,type:r[o[0]].type},r);Qg(t,s);i[o[0]]=s;f[2]=[{type:2,data:qg(s)}];var c=pw(e,r,o[0]);c.id=s;if(r[o[0]].location==r[n].location)a.push(c);else{var u=r[n].location;u=u.replace(/^Root Entry\//,"");u=u.replace(/^Index\//,"").replace(/\.iwa$/,"");vw(e,r,2,function(e){var r=Lg(e.messages[0].data);var t=r[3].findIndex(function(e){var r,t;var a=Lg(e.data);if((r=a[3])==null?void 0:r[0])return Sg(a[3][0].data)==u;if(((t=a[2])==null?void 0:t[0])&&Sg(a[2][0].data)==u)return true;return false});var a=Lg(r[3][t].data);if(!a[6])a[6]=[];a[6].push({type:2,data:Mg([[],[{type:0,data:Ig(s)}]])});r[3][t].data=Mg(a);e.messages[0].data=Mg(r)});vw(e,r,s,function(e,r){return r.push(c)})}t.messages[0].data=Mg(f)});var f=-1;vw(e,r,s,function(t,a){var n=Lg(t.messages[0].data);var l=Lg(n[1][0].data);for(var o=3;o<=69;++o)delete l[o];var c=Jg(l[2][0].data);l[2][0].data=qg(i[c]);n[1][0].data=Mg(l);var u=Jg(n[2][0].data);ew(t,u);f=uw({deps:[s],location:r[u].location,type:r[u].type},r);Qg(t,f);i[u]=f;n[2][0].data=qg(f);var h=pw(e,r,u);h.id=f;if(r[s].location==r[f].location)a.push(h);else vw(e,r,f,function(e,r){return r.push(h)});t.messages[0].data=Mg(n)});var l=r[f].location;l=l.replace(/^Root Entry\//,"");l=l.replace(/^Index\//,"").replace(/\.iwa$/,"");vw(e,r,f,function(a,n){var s,o;var c=Lg(a.messages[0].data);var u=Sg(c[1][0].data),h=u.replace(/-[A-Z0-9]*/,"-".concat(t.toString(16).padStart(4,"0")));c[1][0].data=_g(h);[12,13,29,31,32,33,39,44,47,81,82,84].forEach(function(e){return delete c[e]});if(c[45]){var d=Lg(c[45][0].data);var v=Jg(d[1][0].data);ew(a,v);delete c[45]}if(c[70]){var p=Lg(c[70][0].data);(s=p[2])==null?void 0:s.forEach(function(e){var r=Lg(e.data);[2,3].map(function(e){return r[e][0]}).forEach(function(e){var r=Lg(e.data);if(!r[8])return;var t=Jg(r[8][0].data);ew(a,t)})});delete c[70]}[46,30,34,35,36,38,48,49,60,61,62,63,64,71,72,73,74,75,85,86,87,88,89].forEach(function(e){if(!c[e])return;var r=Jg(c[e][0].data);delete c[e];ew(a,r)});var m=Lg(c[4][0].data);{[2,4,5,6,11,12,13,15,16,17,18,19,20,21,22].forEach(function(t){var s;if(!((s=m[t])==null?void 0:s[0]))return;var o=Jg(m[t][0].data);var c=uw({deps:[f],location:r[o].location,type:r[o].type},r);ew(a,o);Qg(a,c);i[o]=c;var u=pw(e,r,o);u.id=c;if(r[o].location==r[f].location)n.push(u);else{r[c].location=r[o].location.replace(o.toString(),c.toString());if(r[c].location==r[o].location)r[c].location=r[c].location.replace(/\.iwa/,"-".concat(c,".iwa"));er.utils.cfb_add(e,r[c].location,Vg(Wg([u])));var h=r[c].location;h=h.replace(/^Root Entry\//,"");h=h.replace(/^Index\//,"").replace(/\.iwa$/,"");vw(e,r,2,function(e){var r=Lg(e.messages[0].data);r[3].push({type:2,data:Mg([[],[{type:0,data:Ig(c)}],[{type:2,data:_g(h.replace(/-.*$/,""))}],[{type:2,data:_g(h)}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:Ig(0)}],[],[{type:0,data:Ig(0)}]])});r[1]=[{type:0,data:Ig(Math.max(c+1,Dg(r[1][0].data)))}];var t=r[3].findIndex(function(e){var r,t;var a=Lg(e.data);if((r=a[3])==null?void 0:r[0])return Sg(a[3][0].data)==l;if(((t=a[2])==null?void 0:t[0])&&Sg(a[2][0].data)==l)return true;return false});var a=Lg(r[3][t].data);if(!a[6])a[6]=[];a[6].push({type:2,data:Mg([[],[{type:0,data:Ig(c)}]])});r[3][t].data=Mg(a);e.messages[0].data=Mg(r)})}m[t][0].data=qg(c)});var b=Lg(m[1][0].data);{(o=b[2])==null?void 0:o.forEach(function(t){var s=Jg(t.data);var o=uw({deps:[f],location:r[s].location,type:r[s].type},r);ew(a,s);Qg(a,o);i[s]=o;var c=pw(e,r,s);c.id=o;if(r[s].location==r[f].location){n.push(c)}else{r[o].location=r[s].location.replace(s.toString(),o.toString());if(r[o].location==r[s].location)r[o].location=r[o].location.replace(/\.iwa/,"-".concat(o,".iwa"));er.utils.cfb_add(e,r[o].location,Vg(Wg([c])));var u=r[o].location;u=u.replace(/^Root Entry\//,"");u=u.replace(/^Index\//,"").replace(/\.iwa$/,"");vw(e,r,2,function(e){var r=Lg(e.messages[0].data);r[3].push({type:2,data:Mg([[],[{type:0,data:Ig(o)}],[{type:2,data:_g(u.replace(/-.*$/,""))}],[{type:2,data:_g(u)}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:Ig(0)}],[],[{type:0,data:Ig(0)}]])});r[1]=[{type:0,data:Ig(Math.max(o+1,Dg(r[1][0].data)))}];var t=r[3].findIndex(function(e){ +var r,t;var a=Lg(e.data);if((r=a[3])==null?void 0:r[0])return Sg(a[3][0].data)==l;if(((t=a[2])==null?void 0:t[0])&&Sg(a[2][0].data)==l)return true;return false});var a=Lg(r[3][t].data);if(!a[6])a[6]=[];a[6].push({type:2,data:Mg([[],[{type:0,data:Ig(o)}]])});r[3][t].data=Mg(a);e.messages[0].data=Mg(r)})}t.data=qg(o)})}m[1][0].data=Mg(b);var g=Lg(m[3][0].data);{g[1].forEach(function(t){var n=Lg(t.data);var s=Jg(n[2][0].data);var o=i[s];if(!i[s]){o=uw({deps:[f],location:"",type:r[s].type},r);r[o].location="Root Entry/Index/Tables/Tile-".concat(o,".iwa");i[s]=o;var c=pw(e,r,s);c.id=o;ew(a,s);Qg(a,o);er.utils.cfb_add(e,"/Index/Tables/Tile-".concat(o,".iwa"),Vg(Wg([c])));vw(e,r,2,function(e){var r=Lg(e.messages[0].data);r[3].push({type:2,data:Mg([[],[{type:0,data:Ig(o)}],[{type:2,data:_g("Tables/Tile")}],[{type:2,data:_g("Tables/Tile-".concat(o))}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:Ig(0)}],[],[{type:0,data:Ig(0)}]])});r[1]=[{type:0,data:Ig(Math.max(o+1,Dg(r[1][0].data)))}];var t=r[3].findIndex(function(e){var r,t;var a=Lg(e.data);if((r=a[3])==null?void 0:r[0])return Sg(a[3][0].data)==l;if(((t=a[2])==null?void 0:t[0])&&Sg(a[2][0].data)==l)return true;return false});var a=Lg(r[3][t].data);if(!a[6])a[6]=[];a[6].push({type:2,data:Mg([[],[{type:0,data:Ig(o)}]])});r[3][t].data=Mg(a);e.messages[0].data=Mg(r)})}n[2][0].data=qg(o);t.data=Mg(n)})}m[3][0].data=Mg(g)}c[4][0].data=Mg(m);a.messages[0].data=Mg(c)})}function bw(e,r,t,a,n,i){var s=[];vw(e,r,i,function(e){var r=Lg(e.messages[0].data);{r[1]=[{type:2,data:_g(a)}];s=Ug(r[2],Jg)}e.messages[0].data=Mg(r)});var f=pw(e,r,s[0]);var l=Jg(Lg(f.messages[0].data)[2][0].data);vw(e,r,l,function(a,n){return ww(e,r,t,a,n,l)})}var gw=true;function ww(e,r,t,a,n,i){var s=Ua(t["!ref"]);s.s.r=s.s.c=0;var f=false;if(s.e.c>999){f=true;s.e.c=999}if(s.e.r>999999){f=true;s.e.r=999999}if(f)console.error("Truncating to ".concat(Ba(s)));var l=ak(t,{range:s,header:1});var o=["~Sh33tJ5~"];var c=r[i].location;c=c.replace(/^Root Entry\//,"");c=c.replace(/^Index\//,"").replace(/\.iwa$/,"");var u=Lg(a.messages[0].data);{u[6][0].data=Ig(s.e.r+1);u[7][0].data=Ig(s.e.c+1);delete u[46];var h=Lg(u[4][0].data);{var d=Jg(Lg(h[1][0].data)[2][0].data);vw(e,r,d,function(e,r){var t;var a=Lg(e.messages[0].data);if((t=a==null?void 0:a[2])==null?void 0:t[0])for(var n=0;n-1)return"sheet";if(ii.CS&&e==ii.CS)return"chart";if(ii.DS&&e==ii.DS)return"dialog";if(ii.MS&&e==ii.MS)return"macro";return e&&e.length?e:"sheet"}function Sw(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,yw(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function _w(e,r,t,a,n,i,s,f,l,o,c,u){try{i[a]=fi(Mr(e,t,true),r);var h=Lr(e,r);var d;switch(f){case"sheet":d=Bm(h,r,n,l,i[a],o,c,u);break;case"chart":d=Wm(h,r,n,l,i[a],o,c,u);if(!d||!d["!drawel"])break;var v=Vr(d["!drawel"].Target,r);var p=si(v);var m=hu(Mr(e,v,true),fi(Mr(e,p,true),v));var b=Vr(m,v);var g=si(b);d=am(Mr(e,b,true),b,l,fi(Mr(e,g,true),b),o,d);break;case"macro":d=Hm(h,r,n,l,i[a],o,c,u);break;case"dialog":d=zm(h,r,n,l,i[a],o,c,u);break;default:throw new Error("Unrecognized sheet type "+f);}s[a]=d;var w=[],k=[];if(i&&i[a])sr(i[a]).forEach(function(t){var n="";if(i[a][t].Type==ii.CMNT){n=Vr(i[a][t].Target,r);w=Gm(Lr(e,n,true),n,l);if(!w||!w.length)return;pu(d,w,false)}if(i[a][t].Type==ii.TCMNT){n=Vr(i[a][t].Target,r);k=k.concat(gu(Lr(e,n,true),l))}});if(k&&k.length)pu(d,k,true,l.people||[])}catch(T){if(l.WTF)throw T}}function xw(e){return e.charAt(0)=="/"?e.slice(1):e}function Aw(e,r){Ge();r=r||{};Tw(r);if(Dr(e,"META-INF/manifest.xml"))return pg(e,r);if(Dr(e,"objectdata.xml"))return pg(e,r);if(Dr(e,"Index/Document.iwa")){if(typeof Uint8Array=="undefined")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof lw!="undefined"){if(e.FileIndex)return lw(e,r);var t=er.utils.cfb_new();Br(e).forEach(function(r){Wr(t,r,Ur(e,r))});return lw(t,r)}throw new Error("Unsupported NUMBERS file")}if(!Dr(e,"[Content_Types].xml")){if(Dr(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(Dr(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");var a=er.find(e,"Index.zip");if(a){r=yr(r);delete r.type;if(typeof a.content=="string")r.type="binary";if(typeof Bun!=="undefined"&&Buffer.isBuffer(a.content))return Bw(new Uint8Array(a.content),r);return Bw(a.content,r)}throw new Error("Unsupported ZIP file")}var n=Br(e);var i=ai(Mr(e,"[Content_Types].xml"));var s=false;var f,l;if(i.workbooks.length===0){l="xl/workbook.xml";if(Lr(e,l,true))i.workbooks.push(l)}if(i.workbooks.length===0){l="xl/workbook.bin";if(!Lr(e,l,true))throw new Error("Could not find workbook");i.workbooks.push(l);s=true}if(i.workbooks[0].slice(-3)=="bin")s=true;var o={};var c={};if(!r.bookSheets&&!r.bookProps){Zd=[];if(i.sst)try{Zd=$m(Lr(e,xw(i.sst)),i.sst,r)}catch(u){if(r.WTF)throw u}if(r.cellStyles&&i.themes.length)o=Wc(Mr(e,i.themes[0].replace(/^\//,""),true)||"",r);if(i.style)c=Vm(Lr(e,xw(i.style)),i.style,o,r)}i.links.map(function(t){try{var a=fi(Mr(e,si(xw(t))),t);return Xm(Lr(e,xw(t)),a,t,r)}catch(n){}});var h=Um(Lr(e,xw(i.workbooks[0])),i.workbooks[0],r);var d={},v="";if(i.coreprops.length){v=Lr(e,xw(i.coreprops[0]),true);if(v)d=wi(v);if(i.extprops.length!==0){v=Lr(e,xw(i.extprops[0]),true);if(v)_i(v,d,r)}}var p={};if(!r.bookSheets||r.bookProps){if(i.custprops.length!==0){v=Mr(e,xw(i.custprops[0]),true);if(v)p=Ci(v,r)}}var m={};if(r.bookSheets||r.bookProps){if(h.Sheets)f=h.Sheets.map(function N(e){return e.name});else if(d.Worksheets&&d.SheetNames.length>0)f=d.SheetNames;if(r.bookProps){m.Props=d;m.Custprops=p}if(r.bookSheets&&typeof f!=="undefined")m.SheetNames=f;if(r.bookSheets?m.SheetNames:r.bookProps)return m}f={};var b={};if(r.bookDeps&&i.calcchain)b=jm(Lr(e,xw(i.calcchain)),i.calcchain,r);var g=0;var w={};var k,T;{var E=h.Sheets;d.Worksheets=E.length;d.SheetNames=[];for(var y=0;y!=E.length;++y){d.SheetNames[y]=E[y].name}}var S=s?"bin":"xml";var _=i.workbooks[0].lastIndexOf("/");var x=(i.workbooks[0].slice(0,_+1)+"_rels/"+i.workbooks[0].slice(_+1)+".rels").replace(/^\//,"");if(!Dr(e,x))x="xl/_rels/workbook."+S+".rels";var A=fi(Mr(e,x,true),x.replace(/_rels.*/,"s5s"));if((i.metadata||[]).length>=1){r.xlmeta=Ym(Lr(e,xw(i.metadata[0])),i.metadata[0],r)}if((i.people||[]).length>=1){r.people=ku(Lr(e,xw(i.people[0])),r)}if(A)A=Sw(A,h.Sheets);var C=Lr(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(g=0;g!=d.Worksheets;++g){var O="sheet";if(A&&A[g]){k="xl/"+A[g][1].replace(/[\/]?xl\//,"");if(!Dr(e,k))k=A[g][1];if(!Dr(e,k))k=x.replace(/_rels\/.*$/,"")+A[g][1];O=A[g][2]}else{k="xl/worksheets/sheet"+(g+1-C)+"."+S;k=k.replace(/sheet0\./,"sheet.")}T=k.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");if(r&&r.sheets!=null)switch(typeof r.sheets){case"number":if(g!=r.sheets)continue e;break;case"string":if(d.SheetNames[g].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var R=false;for(var I=0;I!=r.sheets.length;++I){if(typeof r.sheets[I]=="number"&&r.sheets[I]==g)R=1;if(typeof r.sheets[I]=="string"&&r.sheets[I].toLowerCase()==d.SheetNames[g].toLowerCase())R=1}if(!R)continue e};}_w(e,k,T,d.SheetNames[g],g,w,f,O,r,h,o,c)}m={Directory:i,Workbook:h,Props:d,Custprops:p,Deps:b,Sheets:f,SheetNames:d.SheetNames,Strings:Zd,Styles:c,Themes:o,SSF:yr(Z)};if(r&&r.bookFiles){if(e.files){m.keys=n;m.files=e.files}else{m.keys=[];m.files={};e.FullPaths.forEach(function(r,t){r=r.replace(/^Root Entry[\/]/,"");m.keys.push(r);m.files[r]=e.FileIndex[t]})}}if(r&&r.bookVBA){if(i.vba.length>0)m.vbaraw=Lr(e,xw(i.vba[0]),true);else if(i.defaults&&i.defaults.bin===Cu)m.vbaraw=Lr(e,"xl/vbaProject.bin",true)}m.bookType=s?"xlsb":"xlsx";return m}function Cw(e,r){var t=r||{};var a="Workbook",n=er.find(e,a);try{a="/!DataSpaces/Version";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);ro(n.content);a="/!DataSpaces/DataSpaceMap";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=ao(n.content);if(i.length!==1||i[0].comps.length!==1||i[0].comps[0].t!==0||i[0].name!=="StrongEncryptionDataSpace"||i[0].comps[0].v!=="EncryptedPackage")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=no(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);so(n.content)}catch(f){}a="/EncryptionInfo";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var l=oo(n.content);a="/EncryptedPackage";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);if(l[0]==4&&typeof decrypt_agile!=="undefined")return decrypt_agile(l[1],n.content,t.password||"",t);if(l[0]==2&&typeof decrypt_std76!=="undefined")return decrypt_std76(l[1],n.content,t.password||"",t);throw new Error("File is password-protected")}function Ow(e,r){if(e&&!e.SSF){e.SSF=yr(Z)}if(e&&e.SSF){Ge();$e(e.SSF);r.revssf=or(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(qd)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="bin";var a=true;var n=ti();Ew(r=r||{});var i=Hr();var s="",f=0;r.cellXfs=[];tv(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Wr(i,s,Ti(e.Props,r));n.coreprops.push(s);oi(r.rels,2,s,ii.CORE_PROPS);s="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var l=[];for(var o=0;o0){s="docProps/custom.xml";Wr(i,s,Oi(e.Custprops,r));n.custprops.push(s);oi(r.rels,4,s,ii.CUST_PROPS)}for(f=1;f<=e.SheetNames.length;++f){var c={"!id":{}};var u=e.Sheets[e.SheetNames[f-1]];var h=(u||{})["!type"]||"sheet";switch(h){case"chart":;default:s="xl/worksheets/sheet"+f+"."+t;Wr(i,s,rm(f-1,r,e,c));n.sheets.push(s);oi(r.wbrels,-1,"worksheets/sheet"+f+"."+t,ii.WS[0]);}if(u){var d=u["!comments"];var v=false;var p="";if(d&&d.length>0){p="xl/comments"+f+"."+t;Wr(i,p,Au(d,r));n.comments.push(p);oi(c,-1,"../comments"+f+"."+t,ii.CMNT);v=true}if(u["!legacy"]){if(v)Wr(i,"xl/drawings/vmlDrawing"+f+".vml",du(f,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(c["!id"].rId1)Wr(i,si(s),li(c))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Wr(i,s,ql(r.Strings,r));n.strs.push(s);oi(r.wbrels,-1,"sharedStrings."+t,ii.SST)}s="xl/workbook."+t;Wr(i,s,Mm(e,r));n.workbooks.push(s);oi(r.rels,1,s,ii.WB);s="xl/theme/theme1.xml";var m=Hc(e.Themes,r);Wr(i,s,m);n.themes.push(s);oi(r.wbrels,-1,"theme/theme1.xml",ii.THEME);s="xl/styles."+t;Wr(i,s,Rc(e,r));n.styles.push(s);oi(r.wbrels,-1,"styles."+t,ii.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Wr(i,s,e.vbaraw);n.vba.push(s);oi(r.wbrels,-1,"vbaProject.bin",ii.VBA)}s="xl/metadata."+t;Wr(i,s,nu());n.metadata.push(s);oi(r.wbrels,-1,"metadata."+t,ii.XLMETA);Wr(i,"[Content_Types].xml",ni(n,r));Wr(i,"_rels/.rels",li(r.rels));Wr(i,"xl/_rels/workbook."+t+".rels",li(r.wbrels));delete r.revssf;delete r.ssf;return i}function Rw(e,r){if(e&&!e.SSF){e.SSF=yr(Z)}if(e&&e.SSF){Ge();$e(e.SSF);r.revssf=or(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(qd)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=Iu.indexOf(r.bookType)>-1;var n=ti();Ew(r=r||{});var i=Hr();var s="",f=0;r.cellXfs=[];tv(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Wr(i,s,Ti(e.Props,r));n.coreprops.push(s);oi(r.rels,2,s,ii.CORE_PROPS);s="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var l=[];for(var o=0;o0){s="docProps/custom.xml";Wr(i,s,Oi(e.Custprops,r));n.custprops.push(s);oi(r.rels,4,s,ii.CUST_PROPS)}var c=["SheetJ5"];r.tcid=0;for(f=1;f<=e.SheetNames.length;++f){var u={"!id":{}};var h=e.Sheets[e.SheetNames[f-1]];var d=(h||{})["!type"]||"sheet";switch(d){case"chart":;default:s="xl/worksheets/sheet"+f+"."+t;Wr(i,s,Mv(f-1,r,e,u));n.sheets.push(s);oi(r.wbrels,-1,"worksheets/sheet"+f+"."+t,ii.WS[0]);}if(h){var v=h["!comments"];var p=false;var m="";if(v&&v.length>0){var b=false;v.forEach(function(e){e[1].forEach(function(e){if(e.T==true)b=true})});if(b){m="xl/threadedComments/threadedComment"+f+".xml";Wr(i,m,wu(v,c,r));n.threadedcomments.push(m);oi(u,-1,"../threadedComments/threadedComment"+f+".xml",ii.TCMNT)}m="xl/comments"+f+"."+t;Wr(i,m,bu(v,r));n.comments.push(m);oi(u,-1,"../comments"+f+"."+t,ii.CMNT);p=true}if(h["!legacy"]){if(p)Wr(i,"xl/drawings/vmlDrawing"+f+".vml",du(f,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(u["!id"].rId1)Wr(i,si(s),li(u))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Wr(i,s,Xl(r.Strings,r));n.strs.push(s);oi(r.wbrels,-1,"sharedStrings."+t,ii.SST)}s="xl/workbook."+t;Wr(i,s,Tm(e,r));n.workbooks.push(s);oi(r.rels,1,s,ii.WB);s="xl/theme/theme1.xml";Wr(i,s,Hc(e.Themes,r));n.themes.push(s);oi(r.wbrels,-1,"theme/theme1.xml",ii.THEME);s="xl/styles."+t;Wr(i,s,ac(e,r));n.styles.push(s);oi(r.wbrels,-1,"styles."+t,ii.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Wr(i,s,e.vbaraw);n.vba.push(s);oi(r.wbrels,-1,"vbaProject.bin",ii.VBA)}s="xl/metadata."+t;Wr(i,s,su());n.metadata.push(s);oi(r.wbrels,-1,"metadata."+t,ii.XLMETA);if(c.length>1){s="xl/persons/person.xml";Wr(i,s,Tu(c,r));n.people.push(s);oi(r.wbrels,-1,"persons/person.xml",ii.PEOPLE)}Wr(i,"[Content_Types].xml",ni(n,r));Wr(i,"_rels/.rels",li(r.rels));Wr(i,"xl/_rels/workbook."+t+".rels",li(r.wbrels));delete r.revssf;delete r.ssf;return i}function Iw(e,r){var t="";switch((r||{}).type||"base64"){case"buffer":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];case"base64":t=E(e.slice(0,12));break;case"binary":t=e;break;case"array":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];default:throw new Error("Unrecognized type "+(r&&r.type||"undefined"));}return[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3),t.charCodeAt(4),t.charCodeAt(5),t.charCodeAt(6),t.charCodeAt(7)]}function Nw(e,r){if(er.find(e,"EncryptedPackage"))return Cw(e,r);return Ib(e,r)}function Fw(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=y&&Buffer.isBuffer(e)?"buffer":"base64";t=zr(a,n);return Aw(t,n)}function Dw(e,r){var t=0;e:while(t=2&&i[3]===0)return Dl.to_workbook(n,t);if(i[2]===0&&(i[3]===8||i[3]===9))return Dl.to_workbook(n,t)}break;case 3:;case 131:;case 139:;case 140:return Cl.to_workbook(n,t);case 123:if(i[1]===92&&i[2]===114&&i[3]===116)return _o(n,t);break;case 10:;case 13:;case 32:return Pw(n,t);case 137:if(i[1]===80&&i[2]===78&&i[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;case 8:if(i[1]===231)throw new Error("Unsupported Multiplan 1.x file!");break;case 12:if(i[1]===236)throw new Error("Unsupported Multiplan 2.x file!");if(i[1]===237)throw new Error("Unsupported Multiplan 3.x file!");break;}if(Al.indexOf(i[0])>-1&&i[2]<=12&&i[3]<=31)return Cl.to_workbook(n,t);return Uw(e,n,t,s)}function Ww(e,r){var t=r||{};t.type="file";return Bw(e,t)}function Hw(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return nr(r.file,er.write(e,{type:y?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return er.write(e,r)}function zw(e,r){switch(r.bookType){case"ods":return Tg(e,r);case"numbers":return dw(e,r);case"xlsb":return Ow(e,r);default:return Rw(e,r);}}function Vw(e,r){var t=yr(r||{});var a=zw(e,t);return Gw(a,t)}function $w(e,r){var t=yr(r||{});var a=Rw(e,t);return Gw(a,t)}function Gw(e,r){var t={};var a=y?"nodebuffer":typeof Uint8Array!=="undefined"?"array":"string";if(r.compression)t.compression="DEFLATE";if(r.password)t.type=a;else switch(r.type){case"base64":t.type="base64";break;case"binary":t.type="string";break;case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");case"buffer":;case"file":t.type=a;break;default:throw new Error("Unrecognized type "+r.type);}var n=e.FullPaths?er.write(e,{fileType:"zip",type:{nodebuffer:"buffer",string:"binary"}[t.type]||t.type,compression:!!r.compression}):e.generate(t);if(typeof Deno!=="undefined"){if(typeof n=="string"){if(r.type=="binary"||r.type=="base64")return n;n=new Uint8Array(O(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return Hw(encrypt_agile(n,r.password),r);if(r.type==="file")return nr(r.file,n);return r.type=="string"?mt(n):n}function jw(e,r){var t=r||{};var a=Nb(e,t);return Hw(a,t)}function Xw(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return k(bt(a));case"binary":return bt(a);case"string":return e;case"file":return nr(r.file,a,"utf8");case"buffer":{if(y)return S(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return Xw(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Yw(e,r){switch(r.type){case"base64":return T(e);case"binary":return e;case"string":return e;case"file":return nr(r.file,e,"binary");case"buffer":{if(y)return S(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Kw(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var u=Ca(l.s.r);var h=[];var d=[];var v=0,p=0;var m=e["!data"]!=null;var b=l.s.r,g=0;var w={};if(m&&!e["!data"][b])e["!data"][b]=[];var k=o.skipHidden&&e["!cols"]||[];var T=o.skipHidden&&e["!rows"]||[];for(g=l.s.c;g<=l.e.c;++g){if((k[g]||{}).hidden)continue;h[g]=Na(g);t=m?e["!data"][b][g]:e[h[g]+u];switch(a){case 1:i[g]=g-l.s.c;break;case 2:i[g]=h[g];break;case 3:i[g]=o.header[g-l.s.c];break;default:if(t==null)t={w:"__EMPTY",t:"s"};f=s=$a(t,null,o);p=w[s]||0;if(!p)w[s]=1;else{do{f=s+"_"+p++}while(w[f]);w[s]=p;w[f]=1}i[g]=f;}}for(b=l.s.r+n;b<=l.e.r;++b){if((T[b]||{}).hidden)continue;var E=tk(e,l,b,h,a,i,o);if(E.isempty===false||(a===1?o.blankrows!==false:!!o.blankrows))d[v++]=E.row}d.length=v;return d}var nk=/"/g;function ik(e,r,t,a,n,i,s,f){var l=true;var o=[],c="",u=Ca(t);var h=e["!data"]!=null;var d=h&&e["!data"][t]||[];for(var v=r.s.c;v<=r.e.c;++v){if(!a[v])continue;var p=h?d[v]:e[a[v]+u];if(p==null)c="";else if(p.v!=null){l=false;c=""+(f.rawNumbers&&p.t=="n"?p.v:$a(p,null,f));for(var m=0,b=0;m!==c.length;++m)if((b=c.charCodeAt(m))===n||b===i||b===34||f.forceQuotes){c='"'+c.replace(nk,'""')+'"';break}if(c=="ID")c='"ID"'}else if(p.f!=null&&!p.F){l=false;c="="+p.f;if(c.indexOf(",")>=0)c='"'+c.replace(nk,'""')+'"'}else c="";o.push(c)}if(f.blankrows===false&&l)return null;return o.join(s)}function sk(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=za(e["!ref"]);var i=a.FS!==undefined?a.FS:",",s=i.charCodeAt(0);var f=a.RS!==undefined?a.RS:"\n",l=f.charCodeAt(0);var o=new RegExp((i=="|"?"\\|":i)+"+$");var c="",u=[];var h=a.skipHidden&&e["!cols"]||[];var d=a.skipHidden&&e["!rows"]||[];for(var v=n.s.c;v<=n.e.c;++v)if(!(h[v]||{}).hidden)u[v]=Na(v);var p=0;for(var m=n.s.r;m<=n.e.r;++m){if((d[m]||{}).hidden)continue;c=ik(e,n,m,u,s,l,i,a);if(c==null){continue}if(a.strip)c=c.replace(o,"");if(c||a.blankrows!==false)t.push((p++?f:"")+c)}return t.join("")}function fk(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=sk(e,r);if(typeof a=="undefined"||r.type=="string")return t;var n=a.utils.encode(1200,t,"str");return String.fromCharCode(255)+String.fromCharCode(254)+n}function lk(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=za(e["!ref"]),i="",s=[],f;var l=[];var o=e["!data"]!=null;for(f=n.s.c;f<=n.e.c;++f)s[f]=Na(f);for(var c=n.s.r;c<=n.e.r;++c){i=Ca(c);for(f=n.s.c;f<=n.e.c;++f){r=s[f]+i;t=o?(e["!data"][c]||[])[f]:e[r];a="";if(t===undefined)continue;else if(t.F!=null){r=t.F;if(!t.f)continue;a=t.f;if(r.indexOf(":")==-1)r=r+":"+r}if(t.f!=null)a=t.f;else if(t.t=="z")continue;else if(t.t=="n"&&t.v!=null)a=""+t.v;else if(t.t=="b")a=t.v?"TRUE":"FALSE";else if(t.w!==undefined)a="'"+t.w;else if(t.v===undefined)continue;else if(t.t=="s")a="'"+t.v;else a=""+t.v;l[l.length]=r+"="+a}}return l}function ok(e,r,t){var a=t||{};var n=e?e["!data"]!=null:a.dense;if(b!=null&&n==null)n=b;var i=+!a.skipHeader;var s=e||{};if(!e&&n)s["!data"]=[];var f=0,l=0;if(s&&a.origin!=null){if(typeof a.origin=="number")f=a.origin;else{var o=typeof a.origin=="string"?La(a.origin):a.origin; +f=o.r;l=o.c}}var c={s:{c:0,r:0},e:{c:l,r:f+r.length-1+i}};if(s["!ref"]){var u=za(s["!ref"]);c.e.c=Math.max(c.e.c,u.e.c);c.e.r=Math.max(c.e.r,u.e.r);if(f==-1){f=u.e.r+1;c.e.r=f+r.length-1+i}}else{if(f==-1){f=0;c.e.r=r.length-1+i}}var h=a.header||[],d=0;var v=[];r.forEach(function(e,r){if(n&&!s["!data"][f+r+i])s["!data"][f+r+i]=[];if(n)v=s["!data"][f+r+i];sr(e).forEach(function(t){if((d=h.indexOf(t))==-1)h[d=h.length]=t;var o=e[t];var c="z";var u="";var p=n?"":Na(l+d)+Ca(f+r+i);var m=n?v[l+d]:s[p];if(o&&typeof o==="object"&&!(o instanceof Date)){if(n)v[l+d]=o;else s[p]=o}else{if(typeof o=="number")c="n";else if(typeof o=="boolean")c="b";else if(typeof o=="string")c="s";else if(o instanceof Date){c="d";if(!a.cellDates){c="n";o=hr(o)}u=m!=null&&m.z&&Me(m.z)?m.z:a.dateNF||Z[14]}else if(o===null&&a.nullError){c="e";o=0}if(!m){if(!n)s[p]=m={t:c,v:o};else v[l+d]=m={t:c,v:o}}else{m.t=c;m.v=o;delete m.w;delete m.R;if(u)m.z=u}if(u)m.z=u}})});c.e.c=Math.max(c.e.c,l+h.length-1);var p=Ca(f);if(n&&!s["!data"][f])s["!data"][f]=[];if(i)for(d=0;d=0&&e.SheetNames.length>r)return r;throw new Error("Cannot find sheet # "+r)}else if(typeof r=="string"){var t=e.SheetNames.indexOf(r);if(t>-1)return t;throw new Error("Cannot find sheet name |"+r+"|")}else throw new Error("Cannot find sheet |"+r+"|")}function dk(){return{SheetNames:[],Sheets:{}}}function vk(e,r,t,a){var n=1;if(!t)for(;n<=65535;++n,t=undefined)if(e.SheetNames.indexOf(t="Sheet"+n)==-1)break;if(!t||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(t)>=0){var i=t.match(/(^.*?)(\d+)$/);n=i&&+i[2]||0;var s=i&&i[1]||t;for(++n;n<=65535;++n)if(e.SheetNames.indexOf(t=s+n)==-1)break}mm(t);if(e.SheetNames.indexOf(t)>=0)throw new Error("Worksheet with name |"+t+"| already exists!");e.SheetNames.push(t);e.Sheets[t]=r;return t}function pk(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=hk(e,r);if(!e.Workbook.Sheets[a])e.Workbook.Sheets[a]={};switch(t){case 0:;case 1:;case 2:break;default:throw new Error("Bad sheet visibility setting "+t);}e.Workbook.Sheets[a].Hidden=t}function mk(e,r){e.z=r;return e}function bk(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function gk(e,r,t){return bk(e,"#"+r,t)}function wk(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function kk(e,r,t,a){var n=typeof r!="string"?r:za(r);var i=typeof r=="string"?r:Ba(r);for(var s=n.s.r;s<=n.e.r;++s)for(var f=n.s.c;f<=n.e.c;++f){var l=uk(e,s,f);l.t="n";l.F=i;delete l.v;if(s==n.s.r&&f==n.s.c){l.f=t;if(a)l.D=true}}var o=Ua(e["!ref"]);if(o.s.r>n.s.r)o.s.r=n.s.r;if(o.s.c>n.s.c)o.s.c=n.s.c;if(o.e.rs.e.r){if(!l){l=true;t.push(""+i)}return t.push(null)}while(f<=s.e.r){t.push(rg(e,s,f,a));++f;break}};return t}function xk(e,r){var t=Ek({objectMode:true});if(e==null||e["!ref"]==null){t.push(null);return t}var a={t:"n",v:0},n=0,i=1,s=[],f=0,l="";var o={s:{r:0,c:0},e:{r:0,c:0}};var c=r||{};var u=c.range!=null?c.range:e["!ref"];if(c.header===1)n=1;else if(c.header==="A")n=2;else if(Array.isArray(c.header))n=3;switch(typeof u){case"string":o=za(u);break;case"number":o=za(e["!ref"]);o.s.r=u;break;default:o=u;}if(n>0)i=0;var h=Ca(o.s.r);var d=[];var v=0;var p=e["!data"]!=null;var m=o.s.r,b=0;var g={};if(p&&!e["!data"][m])e["!data"][m]=[];var w=c.skipHidden&&e["!cols"]||[];var k=c.skipHidden&&e["!rows"]||[];for(b=o.s.c;b<=o.e.c;++b){if((w[b]||{}).hidden)continue;d[b]=Na(b);a=p?e["!data"][m][b]:e[d[b]+h];switch(n){case 1:s[b]=b-o.s.c;break;case 2:s[b]=d[b];break;case 3:s[b]=c.header[b-o.s.c];break;default:if(a==null)a={w:"__EMPTY",t:"s"};l=f=$a(a,null,c);v=g[f]||0;if(!v)g[f]=1;else{do{l=f+"_"+v++}while(g[l]);g[f]=v;g[l]=1}s[b]=l;}}m=o.s.r+i;t._read=function(){while(m<=o.e.r){if((k[m-1]||{}).hidden)continue;var r=tk(e,o,m,d,n,s,c);++m;if(r.isempty===false||(n===1?c.blankrows!==false:!!c.blankrows)){t.push(r.row);return}}return t.push(null)};return t}var Ak={to_json:xk,to_html:_k,to_csv:Sk,set_readable:yk};if(typeof Ib!=="undefined")e.parse_xlscfb=Ib;e.parse_zip=Aw;e.read=Bw;e.readFile=Ww;e.readFileSync=Ww;e.write=Jw;e.writeFile=Qw;e.writeFileSync=Qw;e.writeFileAsync=rk;e.utils=Tk;e.writeXLSX=Zw;e.writeFileXLSX=ek;e.SSF=je;if(typeof Ak!=="undefined")e.stream=Ak;if(typeof er!=="undefined")e.CFB=er;if(typeof require!=="undefined"){var Ck=undefined;if((Ck||{}).Readable)yk(Ck.Readable);try{rr=undefined}catch(Ok){}}}if(typeof exports!=="undefined")make_xlsx_lib(exports);else if(typeof module!=="undefined"&&module.exports)make_xlsx_lib(module.exports);else if(typeof define==="function"&&define.amd)define("xlsx",function(){if(!XLSX.version)make_xlsx_lib(XLSX);return XLSX});else make_xlsx_lib(XLSX);if(typeof window!=="undefined"&&!window.XLSX)try{window.XLSX=XLSX}catch(e){} diff --git a/dist/xlsx.core.min.map b/dist/xlsx.core.min.map index 11a4d88..73167fd 100644 --- a/dist/xlsx.core.min.map +++ b/dist/xlsx.core.min.map @@ -1 +1 @@ -{"version":3,"sources":["dist/xlsx.js"],"names":["XLSX","make_xlsx_lib","version","current_codepage","current_ansi","$cptable","VALID_ANSI","CS2CP","0","1","2","77","128","129","130","134","136","161","162","163","177","178","186","204","222","238","255","69","set_ansi","cp","indexOf","reset_ansi","set_cp","reset_cp","char_codes","data","o","i","len","length","charCodeAt","utf16leread","String","fromCharCode","join","utf16beread","debom","c1","c2","slice","_getchar","_gc1","x","_getansi","_ga1","set_cptable","cptable","utils","decode","_gc2","_ga2","cpdoit","DENSE","DIF_XL","Base64_map","Base64_encode","input","c3","e1","e2","e3","e4","isNaN","charAt","Base64_encode_pass","Base64_decode","replace","has_buf","Buffer","undefined","node","Buffer_from","nbfs","from","e","buf","enc","bind","buf_utf16le","toString","new_raw_buf","alloc","Uint8Array","Array","new_unsafe_buf","allocUnsafe","s2a","s","split","map","s2ab","ArrayBuffer","view","a2s","isArray","c","a2u","Error","ab2a","bconcat","bufs","concat","isBuffer","maxlen","set","apply","call","utf8decode","content","out","widx","L","ridx","d","push","chr0","chr1","_strrev","pad0","v","t","fill","pad_","rpad_","pad0r1","Math","round","pad0r2","p2_32","pow","pad0r","SSF_isgeneral","days","months","SSF_init_table","table_fmt","3","4","9","10","11","12","13","14","15","16","17","18","19","20","21","22","37","38","39","40","45","46","47","48","49","56","SSF_default_map","5","6","7","8","23","24","25","26","27","28","29","30","31","50","51","52","53","54","55","57","58","59","60","61","62","67","68","70","71","72","73","74","75","76","78","79","80","81","82","SSF_default_str","63","64","65","66","41","42","43","44","SSF_frac","D","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","floor","q","SSF_parse_date_code","opts","b2","date","time","dow","dout","T","u","y","m","H","M","S","abs","date1904","Date","setDate","getDate","getFullYear","getMonth","getDay","SSF_fix_hijri","SSFbasedate","SSFdnthresh","getTime","SSFbase1904","datenum_local","epoch","getTimezoneOffset","SSF_strip_decimal","SSF_normalize_exp","SSF_small_exp","w","toFixed","toPrecision","toExponential","SSF_large_exp","SSF_general_num","V","log","LOG10E","substr","toUpperCase","SSF_general","SSF_format","SSF_write_date","type","fmt","val","ss0","ss","tt","outl","outstr","commaify","j","pct1","write_num_pct","sfmt","mul","write_num","write_num_cm","idx","write_num_exp","match","period","ee","fakee","$$","$1","$2","$3","frac1","write_num_f1","r","aval","sign","den","parseInt","rr","base","myn","myd","write_num_f2","dec1","closeparen","phone","hashq","str","cc","rnd","dd","dec","_frac","carry","flr","write_num_flt","ffmt","ri","ff","oa","min","max","lres","rres","write_num_cm2","write_num_pct2","write_num_exp2","write_num_int","lastIndexOf","SSF_split_fmt","in_str","SSF_abstime","fmt_is_date","eval_fmt","flen","lst","dt","hr","toLowerCase","bt","ssm","nstr","jj","vv","myv","ostr","decpt","lasti","retval","cfregex2","chkcond","thresh","parseFloat","choose_fmt","f","l","lat","m1","m2","dateNF","table","SSF_load","SSF_load_table","tbl","make_ssf","SSF","format","load","_table","load_table","parse_date_code","is_date","get_table","SSFImplicit","32","33","34","35","36","dateNFregex","dateNF_regex","RegExp","dateNF_fix","Y","forEach","n","datestr","timestr","bad_formats","d.m","SSF__load","CRC32","signed_crc_table","Int32Array","T0","slice_by_16_tables","subarray","TT","T1","T2","T3","T4","T5","T6","T7","T8","T9","Ta","Tb","Tc","Td","Te","Tf","crc32_bstr","bstr","seed","C","crc32_buf","crc32_str","CFB","_CFB","exports","namecmp","R","Z","dirname","p","filename","write_dos_date","hms","getHours","getMinutes","getSeconds","write_shift","ymd","parse_dos_date","read_shift","setMilliseconds","setFullYear","setMonth","setHours","setMinutes","setSeconds","parse_extra_field","blob","prep_blob","flags","sz","tgt","mtime","atime","ctime","mt","sz1","sz2","usz","csz","fs","get_fs","_fs","parse","file","options","parse_zip","parse_mad","mver","ssz","nmfs","difat_sec_cnt","dir_start","minifat_start","difat_start","fat_addrs","mv","check_get_mver","header","check_shifts","dir_cnt","chk","sectors","sectorify","sleuth_fat","sector_list","make_sector_list","name","ENDOFCHAIN","files","Paths","FileIndex","FullPaths","read_directory","build_full_paths","shift","raw","HEADER_SIGNATURE","nsectors","ceil","FI","FP","pl","dad","get_mfat_entry","entry","payload","mini","start","size","MSSZ","__readInt32LE","new_buf","cnt","sector","get_sector_list","chkd","buf_chain","modulus","addr","nodes","__toBuffer","sl","k","seen","minifat_store","namelen","__utf16le","color","clsid","state","ct","read_date","storage","offset","__readUInt32LE","read_file","readFileSync","read","init_cfb","cfb","root","CLSID","seed_cfb","nm","find","rebuild_cfb","gc","_file","pop","now","fullPaths","Object","create","HEADER_CLSID","sort","elt","_write","_opts","fileType","write_mad","write_zip","mini_size","fat_size","mini_cnt","mfat_cnt","fat_base","fat_cnt","difat_cnt","HEADER_SIG","chainit","consts","DIFSECT","FATSECT","_nm","console","error","copy","path","UCFullPaths","UCPaths","UCPath","MAXREGSECT","FREESECT","HEADER_MINOR_VERSION","MAXREGSID","NOSTREAM","EntryTypes","write_file","writeFileSync","write","_zlib","use_zlib","zlib","InflateRaw","InflRaw","_processChunk","_finishFlushFlag","bytesRead","message","_inflateRawSync","_inflate","_deflateRawSync","deflateRawSync","_deflate","CLEN_ORDER","LEN_LN","DST_LN","bit_swap_8","use_typed_arrays","bitswap8","bit_swap_n","b","rev","read_bits_2","bl","h","read_bits_3","read_bits_4","read_bits_5","read_bits_7","read_bits_n","write_bits_3","write_bits_1","write_bits_8","write_bits_16","realloc","a","zero_fill_array","build_tree","clens","cmap","MAX","ccode","bl_count","Uint16Array","ctree","cleni","fix_lmap","fix_dmap","dlens","_deflateRaw","_deflateRawIIFE","DST_LN_RE","LEN_LN_RE","write_stored","boff","write_huff_fixed","addrs","hash","mlen","len_eb","dst_eb","off","dyn_lmap","dyn_dmap","dyn_cmap","dyn_len_1","dyn_len_2","dyn","_HLIT","_HDIST","_HCLEN","next_code","hcodes","h1","h2","inflate","outbuf","woff","OL","max_len_1","max_len_2","bits","code","dst","warn_or_throw","wrn","msg","fcnt","start_cd","efsz","fcsz","EF","parse_local_file","meth","crc32","_csz","_usz","ef","cfb_add","unsafe","cdirs","method","compression","desc","fp","fi","crcs","sz_cd","namebuf","ContentTypeMap","htm","xml","gif","jpg","png","mso","thmx","sh33tj5","get_content_type","ctype","ext","write_base64_76","write_quoted_printable","text","encoded","si","end","tmp","parse_quoted_printable","di","line","oi","parse_mime","fname","cte","fdata","trim","row","test","mboundary","boundary","start_di","ca","cstr","dispcnt","csl","qp","cfb_new","fpath","cfb_gc","cfb_del","splice","cfb_mov","old_name","new_name","writeFile","ReadShift","CheckField","_inflateRaw","set_fs","blobify","write_dl","Deno","TextEncoder","encode","utf8write","IE_SaveFile","Blob","navigator","msSaveBlob","saveAs","URL","document","createElement","createObjectURL","url","chrome","downloads","download","revokeObjectURL","setTimeout","href","body","appendChild","click","removeChild","$","File","Folder","open","encoding","close","read_binary","infile","keys","ks","o2","prototype","hasOwnProperty","evert_key","obj","key","K","evert","evert_num","evert_arr","basedate","datenum","dnthresh","refdate","refoffset","numdate","setTime","parse_isodur","sec","good_pd_date_1","good_pd_date","good_pd","parseDate","fixdate","cc2str","arr","debomit","TextDecoder","€","‚","ƒ","„","…","†","‡","ˆ","‰","Š","‹","Œ","Ž","‘","’","“","”","•","–","—","˜","™","š","›","œ","ž","Ÿ","dup","JSON","stringify","fuzzynum","Number","isFinite","NaN","wt","FDRE1","fuzzytime1","lower_months","fuzzydate","lower","lnos","getYear","split_regex","safe_split_regex","re","def","getdatastr","asNodeBuffer","asBinary","_data","getContent","getdatabin","getdata","safegetzipfile","zip","g","getzipfile","getzipdata","safe","getzipstr","getzipbin","zipentries","zip_add_file","res","zip_new","zip_read","resolve_path","result","target","step","XML_HEADER","attregexg","tagregex1","tagregex2","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","skip_LC","z","eq","quot","strip_ns","encodings",""","'",">","<","&","rencoding","unescapexml","encregex","coderegex","raw_unescapexml","xlsx","decregex","charegex","escapexml","escapexmltag","htmlcharegex","escapehtml","escapexlml","xlml_fixstr","entregex","entrepl","xlml_unfixstr","parsexmlbool","value","utf8reada","orig","utf8readb","ww","utf8readc","utf8corpus","utf8read","matchtag","mtcache","htmldecode","entities","vtregex","vt_cache","vt_regex","vtvregex","vtmregex","parseVector","matches","baseType","WTF","wtregex","writetag","wxt_helper","writextag","write_w3cdtf","toISOString","write_vt","xlml_normalize","xlmlregex","XMLNS","CORE_PROPS","CUST_PROPS","EXT_PROPS","CT","RELS","TCMNT","dc","dcterms","dcmitype","mx","sjs","vt","xsi","xsd","XMLNS_main","XLMLNS","html","read_double_le","Infinity","write_double_le","bs","av","LN2","___toBuffer","___utf16le","__readUInt16LE","___hexlify","__hexlify","___utf8","__readUInt8","__utf8","utf8_b","___lpstr","__lpstr","___cpstr","__cpstr","___lpwstr","__lpwstr","___lpp4","lpp4_","__lpp4","___8lpp4","__8lpp4","___double","__double","is_buf","is_buf_a","lpstr_b","readUInt32LE","cpstr_b","lpwstr_b","lpp4_b","lpp4_8b","double_","readDoubleLE","is_buf_b","__readInt16LE","__readInt32BE","oI","oR","oo","loc","this","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cpp","hexstr","fld","pos","parsenoop","recordhopper","cb","tmpbyte","cntbyte","RT","XLSBRecordEnum","buf_array","blksz","newblk","ba_newblk","curbuf","endbuf","ba_endbuf","next","ba_next","ba_end","ba_push","_bufs","write_record","ba","shift_cell_xls","cell","cRel","rRel","biff","shift_range_xls","range","encode_cell_xls","encode_cell","fix_col","fix_row","encode_range_xls","encode_col","encode_row","module","require","decode_row","rowstr","unfix_row","decode_col","colstr","unfix_col","col","split_cell","decode_cell","decode_range","encode_range","cs","ce","fix_range","a1","formula_quote_sheet_name","sname","safe_decode_range","safe_format_cell","XF","numFmtId","format_cell","BErr","sheet_to_workbook","sheet","sheets","SheetNames","Sheets","sheet_add_aoa","_ws","dense","ws","_R","_C","origin","_origin","_range","__R","__C","nullError","sheetStubs","cellDates","cell_ref","aoa_to_sheet","parse_Int32LE","write_UInt32LE","parse_XLWideString","cchCharacters","write_XLWideString","_null","parse_StrRun","ich","ifnt","write_StrRun","run","parse_RichStr","rgsStrRun","dwSizeStrRun","write_RichStr","parse_BrtCommentText","write_BrtCommentText","parse_XLSBCell","iStyleRef","write_XLSBCell","parse_XLSBShortCell","write_XLSBShortCell","parse_XLSBCodeName","write_XLSBCodeName","parse_XLNullableWideString","write_XLNullableWideString","parse_XLNameWideString","parse_RelID","write_RelID","parse_RkNumber","fX100","fInt","RK","write_RkNumber","d100","parse_RfX","write_RfX","parse_UncheckedRfX","write_UncheckedRfX","parse_Xnum","write_Xnum","parse_BrtColor","xColorType","index","nTS","bR","bG","bB","auto","icv","XLSIcv","rgb","rgb2Hex","theme","tint","write_BrtColor","parse_FontFlags","fBold","fItalic","fUnderline","fStrikeout","fOutline","fShadow","fCondense","fExtend","write_FontFlags","font","grbit","italic","strike","outline","shadow","condense","extend","parse_ClipboardFormatOrString","ClipFmt","parse_ClipboardFormatOrAnsiString","parse_ClipboardFormatOrUnicodeString","VT_I2","VT_I4","VT_BOOL","VT_VARIANT","VT_UI4","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR_VARIANT","VT_VECTOR_LPSTR","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","2147483648","2147483651","1919054434","SummaryPIDSI","CountryEnum","84","86","90","105","213","216","218","351","354","358","420","886","961","962","963","964","965","966","971","972","974","981","65535","XLSFillPattern","rgbify","_XLSIcv","RBErr","#NULL!","#DIV/0!","#VALUE!","#REF!","#NAME?","#NUM!","#N/A","#GETTING_DATA","#WTF?","XLSLblBuiltIn","ct2type","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml","application/vnd.ms-excel.sheet.macroEnabled.main+xml","application/vnd.ms-excel.sheet.binary.macroEnabled.main","application/vnd.ms-excel.addin.macroEnabled.main+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml","application/vnd.ms-excel.worksheet","application/vnd.ms-excel.binIndexWs","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml","application/vnd.ms-excel.chartsheet","application/vnd.ms-excel.macrosheet+xml","application/vnd.ms-excel.macrosheet","application/vnd.ms-excel.intlmacrosheet","application/vnd.ms-excel.binIndexMs","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml","application/vnd.ms-excel.dialogsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml","application/vnd.ms-excel.sharedStrings","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml","application/vnd.ms-excel.styles","application/vnd.openxmlformats-package.core-properties+xml","application/vnd.openxmlformats-officedocument.custom-properties+xml","application/vnd.openxmlformats-officedocument.extended-properties+xml","application/vnd.openxmlformats-officedocument.customXmlProperties+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml","application/vnd.ms-excel.comments","application/vnd.ms-excel.threadedcomments+xml","application/vnd.ms-excel.person+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml","application/vnd.ms-excel.sheetMetadata","application/vnd.ms-excel.pivotTable","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml","application/vnd.openxmlformats-officedocument.drawingml.chart+xml","application/vnd.ms-office.chartcolorstyle+xml","application/vnd.ms-office.chartstyle+xml","application/vnd.ms-office.chartex+xml","application/vnd.ms-excel.calcChain","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings","application/vnd.ms-office.activeX","application/vnd.ms-office.activeX+xml","application/vnd.ms-excel.attachedToolbars","application/vnd.ms-excel.connections","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml","application/vnd.ms-excel.externalLink","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml","application/vnd.ms-excel.pivotCacheDefinition","application/vnd.ms-excel.pivotCacheRecords","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml","application/vnd.ms-excel.queryTable","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml","application/vnd.ms-excel.userNames","application/vnd.ms-excel.revisionHeaders","application/vnd.ms-excel.revisionLog","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml","application/vnd.ms-excel.tableSingleCells","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml","application/vnd.ms-excel.slicer","application/vnd.ms-excel.slicerCache","application/vnd.ms-excel.slicer+xml","application/vnd.ms-excel.slicerCache+xml","application/vnd.ms-excel.wsSortMap","application/vnd.ms-excel.table","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml","application/vnd.openxmlformats-officedocument.theme+xml","application/vnd.openxmlformats-officedocument.themeOverride+xml","application/vnd.ms-excel.Timeline+xml","application/vnd.ms-excel.TimelineCache+xml","application/vnd.ms-office.vbaProject","application/vnd.ms-office.vbaProjectSignature","application/vnd.ms-office.volatileDependencies","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml","application/vnd.ms-excel.controlproperties+xml","application/vnd.openxmlformats-officedocument.model+data","application/vnd.ms-excel.Survey+xml","application/vnd.openxmlformats-officedocument.drawing+xml","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml","application/vnd.openxmlformats-officedocument.vmlDrawing","application/vnd.openxmlformats-package.relationships+xml","application/vnd.openxmlformats-officedocument.oleObject","image/png","CT_LIST","workbooks","xlsm","xlsb","xlam","xltx","strs","comments","charts","dialogs","macros","metadata","styles","new_ct","rels","threadedcomments","links","coreprops","extprops","custprops","themes","calcchains","vba","drawings","people","TODO","xmlns","parse_ct","ctext","Extension","ContentType","PartName","calcchain","sst","style","defaults","write_ct","type2ct","xmlns:xsd","xmlns:xsi","f1","bookType","f2","f3","WB","SHEET","HLINK","VML","XPATH","XMISS","XLINK","CXML","CXMLP","CMNT","SST","STY","THEME","CHART","CHARTEX","CS","WS","DS","MS","IMG","DRAW","XLMETA","PEOPLE","CONN","VBA","get_rels_path","parse_rels","currentFilePath","!id","rel","Type","Target","Id","TargetMode","canonictarget","write_rels","rid","add_rels","rId","relobj","targetmode","CT_ODS","parse_manifest","Rn","FEtag","exec","write_manifest","manifest","write_rdf_type","write_rdf_has","write_rdf","rdf","write_meta_ods","CORE_PROPS_REGEX","parse_core_props","cur","cp_doit","write_core_props","xmlns:cp","xmlns:dc","xmlns:dcterms","xmlns:dcmitype","Props","CreatedDate","xsi:type","ModifiedDate","PseudoPropsPairs","load_props_pairs","HP","TOP","props","hp","parts","Worksheets","NamedRanges","DefinedNames","Chartsheets","ChartNames","parse_ext_props","HeadingPairs","TitlesOfParts","write_ext_props","W","Application","xmlns:vt","custregex","parse_cust_props","toks","warn","write_cust_props","pid","custprop","fmtid","XLMLDocPropsMap","Title","Subject","Author","Keywords","Comments","LastAuthor","RevNumber","LastPrinted","Category","Manager","Company","AppVersion","ContentStatus","Identifier","Language","evert_XLMLDPM","xlml_set_prop","xlml_write_docprops","xlml_write_custprops","Custprops","BLACKLIST","dt:dt","parse_FILETIME","dwLowDateTime","dwHighDateTime","write_FILETIME","parse_lpstr","pad","parse_lpwstr","parse_VtStringBase","stringType","parse_VtString","parse_VtUnalignedString","parse_VtVecLpwstrValue","ret","parse_VtVecUnalignedLpstrValue","parse_VtHeadingPair","headingString","parse_TypedPropertyValue","headerParts","parse_VtVecHeadingPairValue","cElements","parse_dictionary","CodePage","dict","parse_BLOB","bytes","parse_ClipboardData","Size","write_TypedPropertyValue","parse_PropertySet","PIDSI","start_addr","NumProps","Dictionary","DictObj","PropID","Offset","PropH","fail","piddsi","oldpos","parsebool","XLSPSSkip","guess_property_type","write_PropertySet","entries","RE","hdr","piao","prop","pr","pio","unshift","pinfo","parse_PropertySetStream","NumSets","FMTID0","FMTID1","Offset0","Offset1","SystemIdentifier","PSet0","rval","FMTID","PSet1","write_PropertySetStream","entries2","clsid2","ps0","ps1","parsenoop2","writezeroes","parslurp","writebool","parseuint16","writeuint16","parseuint16a","parse_Bes","write_Bes","parse_ShortXLUnicodeString","cch","fHighByte","parse_XLUnicodeRichExtendedString","fExtSt","fRichSt","width","cRun","cbExtRst","write_XLUnicodeRichExtendedString","xlstr","nfmts","otext","parse_XLUnicodeStringNoCch","parse_XLUnicodeString","parse_XLUnicodeString2","write_XLUnicodeString","parse_ControlInfo","accel","parse_URLMoniker","extra","parse_FileMoniker","cAnti","preamble","ansiPath","unicodePath","parse_HyperlinkMoniker","parse_HyperlinkString","write_HyperlinkString","parse_Hyperlink","sVer","displayName","targetFrameName","moniker","oleMoniker","Loc","guid","fileTime","Tooltip","write_Hyperlink","hl","hashidx","F","Pretarget","parse_LongRGBA","parse_LongRGB","parse_XLSCell","rw","ixfe","write_XLSCell","parse_frtHeader","rt","parse_OptXLUnicodeString","parse_XTI","iSupBook","itabFirst","itabLast","parse_RkRec","parse_AddinUdf","udfName","parse_Ref8U","rwFirst","rwLast","colFirst","colLast","write_Ref8U","parse_RefU","parse_Ref","parse_FtCmo","ot","id","parse_FtNts","fSharedNote","parse_FtCf","cf","parse_FtSkip","FtTab","parse_FtArray","fts","ft","parse_BOF","BIFFVer","write_BOF","wb","parse_InterfaceHdr","parse_WriteAccess","UserName","write_WriteAccess","b8","parse_WsBool","fDialog","fBelow","fRight","parse_BoundSheet8","hidden","hs","write_BoundSheet8","parse_SST","ucnt","Count","Unique","write_SST","parse_ExtSST","extsst","dsst","parse_Row","miyRw","level","hpt","parse_ForceFullCalculation","fullcalc","parse_RecalcId","parse_DefaultRowHeight","fl","Unsynced","DyZero","ExAsc","ExDsc","parse_Window1","xWn","yWn","dxWn","dyWn","iTabCur","iTabFirst","ctabSel","wTabRatio","Pos","Dim","Flags","CurTab","FirstTab","Selected","TabRatio","write_Window1","parse_Window2","RTL","write_Window2","parse_Pane","parse_Font","dyHeight","write_Font","b5","parse_LabelSst","isst","write_LabelSst","os","parse_Label","biffguess","write_Label","parse_Format","fmtstr","write_Format","parse_BIFF2Format","parse_Dimensions","write_Dimensions","parse_RK","rkrec","rknum","parse_MulRk","rkrecs","lastcol","parse_MulBlank","ixfes","parse_CellStyleXF","patternType","cellStyles","alc","fWrap","alcV","fJustLast","trot","cIndent","fShrinkToFit","iReadOrder","fAtrNum","fAtrFnt","fAtrAlc","fAtrBdr","fAtrPat","fAtrProt","dgLeft","dgRight","dgTop","dgBottom","icvLeft","icvRight","grbitDiag","icvTop","icvBottom","icvDiag","dgDiag","icvFore","icvBack","fsxButton","parse_XF","fStyle","write_XF","ixfeP","parse_Guts","write_Guts","guts","parse_BoolErr","write_BoolErr","parse_Number","xnum","write_Number","parse_XLHeaderFooter","parse_SupBook","ctab","sbcch","virtPath","rgst","parse_ExternName","fBuiltIn","fWantAdvise","fWantPict","fOle","fOleLink","fIcon","Name","parse_Lbl","chKey","cce","itab","npflen","rgce","parse_NameParsedFormula","parse_ExternSheet","parse_BIFF5ExternSheet","parse_NameCmt","cchName","cchComment","comment","parse_ShrFmla","ref","cUse","parse_SharedParsedFormula","parse_Array","parse_ArrayParsedFormula","parse_MTRSettings","fMTREnabled","fUserSetThreadCount","cUserThreadCount","parse_NoteSh","idObj","stAuthor","parse_Note","parse_MergeCells","merges","cmcs","write_MergeCells","parse_Obj","parse_BIFF5Obj","cmo","parse_BIFF5OT","parse_TxO","texts","lastobj","controlInfo","cchText","parse_HLink","hlink","write_HLink","O","parse_HLinkTooltip","wzTooltip","write_HLinkTooltip","parse_Country","write_Country","parse_ClrtClient","ccv","parse_Palette","parse_XFCRC","cxfs","crc","parse_ColInfo","coldx","write_ColInfo","parse_Setup","footer","parse_ShtProps","area","write_RRTabId","parse_Blank","parse_Scl","parse_String","parse_ImData","env","lcb","parse_BIFF2STR","parse_BIFF2NUM","num","write_BIFF2NUM","write_BIFF2Cell","parse_BIFF2INT","write_BIFF2INT","parse_BIFF2STRING","parse_BIFF2FONTXTRA","parse_RString","DBF_SUPPORTED_VERSIONS","DBF","dbf_codepage_map","100","101","102","103","104","106","107","120","121","122","123","124","125","126","150","151","152","200","201","202","203","87","88","89","108","135","dbf_reverse_map","dbf_to_aoa","memo","vfp","l7","nrow","fpos","rlen","current_cp","codepage","fields","field","hend","sheetRows","dbf_to_sheet","wch","dbf_to_workbook","_RLEN","?","","sheet_to_dbf","old_cp","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_l","_s","to_workbook","to_sheet","from_sheet","SYLK","sylk_escapes","AA","BA","CA","DA","HA","JA","AE","BE","CE","HE","AI","BI","CI","HI","AO","BO","CO","DO","HO","AU","BU","CU","HU","Aa","Ba","Ca","Da","Ha","Ja","Ae","Be","Ce","He","Ai","Bi","Ci","Hi","Ao","Bo","Co","Do","Ho","Au","Bu","Cu","Hu","KC","Kc","DN","Dn","Hy","B ","!","\"","#","(","%","'","H ","+",";","<","=",">","{","sylk_char_regex","sylk_char_fn","_","decode_sylk_char","newcc","sylk_to_aoa","sylk_to_aoa_str","records","rj","formats","next_cell_format","sht","rowinfo","colinfo","cw","Mval","Workbook","WBProps","Names","rstr","record","d1904","nn","Sheet","Ref","rc_to_a1","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","cell_t","cellText","shrbase","shift_formula_str","F_seen","hpx","pt2px","process_col","sylk_to_workbook","aoasht","outwb","write_ws_cell_sylk","a1_to_rc","write_ws_cols_sylk","rec","wpx","width2px","px2char","write_ws_rows_sylk","rows","px2pt","sheet_to_sylk","RS","coord","DIF","dif_to_aoa","dif_to_aoa_str","dif_to_sheet","dif_to_workbook","make_value","make_value_str","sheet_to_dif","_DIF_XL","ETH","eth_to_aoa","eth_to_sheet","eth_to_workbook","sep","meta","sheet_to_eth_data","sheet_to_eth","PRN","set_text_arr","prn_to_aoa_str","lines","guess_seps","guess_sep_weights","guess_sep","instr","dsv_to_sheet_str","FS","sepcc","startcc","_re","finish_cell","fuzzyfmla","cellNF","outer","prn_to_sheet_str","prn_to_sheet","firstbyte","prn_to_workbook","sheet_to_prn","read_wb_ID","OLD_WTF","WK_","lotushopper","Enum","WK1Enum","lotus_to_workbook","lotus_to_workbook_buf","next_n","sidx","snames","realnames","refguess","qpw_to_workbook_buf","vers","qpro","works","works2","tmpcell","WK3Enum","osheets","rnames","!ref","sheet_to_wk1","write_biff_rec","write_BOF_WK1","write_RANGE","max_R","write_INTEGER","write_NUMBER","write_LABEL","book_to_wk3","write_BOF_WK3","write_XFORMAT_SHEETNAME","wsidx","write_NUMBER_17","write_LABEL_16","wscnt","parse_RANGE","parse_cell","parse_LABEL","parse_STRING","parse_INTEGER","parse_NUMBER","parse_FORMULA","wk1_fmla_to_csf","wk1_parse_rc","FuncTab","83","109","111","BinOpTab","argc","argL","argR","args","parse_cell_3","parse_LABEL_16","parse_NUMBER_18","parse_NUMBER_17","v1","v2","log2","parse_FORMULA_19","parse_NUMBER_25","parse_NUMBER_27","parse_FORMULA_28","parse_SHEETNAMECS","parse_SHEETNAMELP","parse_SHEETINFOQP","parse_XFORMAT","142","147","153","154","155","156","174","175","176","184","185","187","188","195","205","206","207","208","256","259","260","261","262","263","265","266","267","268","270","271","384","389","390","393","396","512","514","513","516","517","640","641","642","643","644","645","646","647","648","658","659","660","661","662","665","666","768","772","1537","1600","1602","1793","1794","1795","1796","1920","2048","2049","2052","2688","10998","12849","28233","28484","formulae","book_append_sheet","delta","parse_rpr","rpr","pass","uval","family","valign","parse_rs","tregex","rpregex","parse_r","rregex","rend","rs","filter","rs_to_html","parse_rs_factory","nlregex","parse_rpr2","intro","outro","align","r_to_html","terms","sitregex","sirregex","sirphregex","parse_si","cellHTML","sstr0","sstr1","sstr2","parse_sst_xml","count","uniqueCount","straywsregex","write_sst_xml","bookSST","sitag","parse_BrtBeginSst","parse_sst_bin","hopper_sst","write_BrtBeginSst","write_BrtSSTItem","write_sst_bin","_JS2ANSI","parse_CRYPTOVersion","Major","Minor","parse_DataSpaceVersionInfo","U","parse_DataSpaceMapEntry","comps","parse_DataSpaceMap","parse_DataSpaceDefinition","parse_TransformInfoHeader","parse_Primary","ename","cmode","parse_EncryptionHeader","AlgID","valid","AlgIDHash","KeySize","ProviderType","CSPName","parse_EncryptionVerifier","Salt","Verifier","VerifierHash","parse_EncryptionInfo","parse_EncInfoStd","parse_EncInfoExt","parse_EncInfoAgl","verifier","KeyData","xml_agile","encryptedHmacKey","encryptedHmacValue","encs","uri","parse_RC4CryptoHeader","EncryptionVersionInfo","EncryptionHeader","EncryptionVerifier","parse_RC4Header","EncryptedVerifier","EncryptedVerifierHash","crypto_CreatePasswordVerifier_Method1","Password","PasswordArray","PasswordDecoded","PasswordByte","Intermediate1","Intermediate2","Intermediate3","crypto_CreateXorArray_Method1","PadArray","InitialCode","XorMatrix","Ror","Byte","XorRor","byte1","byte2","CreateXorKey_Method1","XorKey","CurrentElement","Char","password","Index","ObfuscationArray","Temp","PasswordLastChar","PadIndex","crypto_DecryptData_Method1","Data","XorArrayIndex","XorArray","Value","crypto_MakeXorDecryptor","parse_XORObfuscation","verificationBytes","insitu","parse_FilePassHeader","Info","parse_FilePass","rtf_to_sheet","rtf_to_sheet_str","rowtf","rtfre","last_index","lastIndex","rtf_to_workbook","sheet_to_rtf","hex2RGB","rgb2HSL","G","H6","L2","hsl2RGB","hsl","h6","X","rgb_tint","hex","DEF_MDW","MAX_MDW","MIN_MDW","MDW","px","char2width","chr","cycle_width","collw","find_mdw_colw","_MDW","coll","customWidth","DEF_PPI","PPI","pt","XLMLPatternTypeMap","None","Solid","Gray50","Gray75","Gray25","HorzStripe","VertStripe","ReverseDiagStripe","DiagStripe","DiagCross","ThickDiagCross","ThinHorzStripe","ThinVertStripe","ThinReverseDiagStripe","ThinHorzCross","parse_borders","Borders","border","diagonalUp","diagonalDown","parse_fills","Fills","bgColor","indexed","fgColor","parse_fonts","Fonts","bold","underline","vertAlign","scheme","themeElements","clrScheme","parse_numFmts","NumberFmt","formatCode","write_numFmts","NF","cellXF_uint","cellXF_bool","parse_cellXfs","CellXf","xf","alignment","vertical","horizontal","textRotation","indent","wrapText","write_cellXfs","cellXfs","parse_sty_xml","make_pstyx","numFmtRegex","cellXfRegex","fillsRegex","fontsRegex","bordersRegex","write_sty_xml","parse_BrtFmt","stFmtCode","write_BrtFmt","parse_BrtFont","bls","bCharSet","charset","write_BrtFont","sss","XLSBFillPTNames","rev_XLSBFillPTNames","parse_BrtFill","write_BrtFill","fls","parse_BrtXF","ixfeParent","ifmt","write_BrtXF","flow","write_Blxf","parse_BrtBorder","write_BrtBorder","write_BrtStyle","xfId","builtinId","write_BrtBeginTableStyles","defTableStyle","defPivotStyle","parse_sty_bin","hopper_sty","write_FMTS_bin","write_FONTS_bin","write_FILLS_bin","write_BORDERS_bin","write_CELLSTYLEXFS_bin","fontId","fillId","borderId","write_CELLXFS_bin","write_STYLES_bin","write_DXFS_bin","write_TABLESTYLES_bin","write_COLORPALETTE_bin","write_sty_bin","XLSXThemeClrScheme","parse_clrScheme","lastClr","parse_fontScheme","parse_fmtScheme","clrsregex","fntsregex","fmtsregex","parse_themeElements","themeltregex","parse_theme_xml","write_theme","Themes","themeXLSX","parse_Theme","dwThemeVersion","themeXML","parse_ColorTheme","parse_FullColorExt","xclrType","nTintShade","xclrValue","parse_IcvXF","parse_XFExtGradient","parse_ExtProp","extType","parse_XFExt","cexts","update_xfext","xfext","xfe","parse_BrtMdtinfo","write_BrtMdtinfo","parse_BrtMdb","write_BrtMdb","mdb","write_BrtBeginEsfmd","parse_BrtBeginEsmdb","write_BrtBeginEsmdb","cm","parse_xlmeta_bin","Types","Cell","metatype","write_xlmeta_bin","parse_xlmeta_xml","lastmeta","offsets","write_xlmeta_xml","parse_cc_xml","parse_BrtCalcChainItem$","parse_cc_bin","hopper_cc","parse_xlink_xml","parse_xlink_bin","xlink_parse","parse_drawing","write_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","_shapeid","_comments","joinstyle","gradientshapeok","o:connecttype","coordsize","o:spt","write_vml_comment","fillopts","color2","angle","fillparm","fillxml","shadata","on","obscured","fillcolor","strokecolor","sheet_insert_comments","threaded","author","parse_comments_xml","authors","commentList","authtag","cmnttag","authorId","textMatch","write_comments_xml","iauthor","ID","lastauthor","ts","tcnt","parse_tcmnt_xml","tidx","xml_tcmnt","personId","write_tcmnt_xml","carr","rootid","tcopts","tcid","parentId","parse_people_xml","displayname","write_people_xml","person","userId","providerId","parse_BrtBeginComment","rfx","write_BrtBeginComment","parse_BrtCommentAuthor","write_BrtCommentAuthor","parse_comments_bin","hopper_cmnt","write_comments_bin","CT_VBA","make_vba_xls","newcfb","newpath","fill_vba_xls","VBAFMTS","parse_ds_bin","!type","parse_ds_xml","parse_ms_bin","parse_ms_xml","rcregex","rcbase","rcfunc","fstr","crefregex","$0","$4","$5","shift_formula_xlsx","_xlfn","parseread1","parse_ColRelU","parse_RgceArea","parse_RgceArea_BIFF2","parse_RgceAreaRel","parse_RgceLoc","parse_RgceLoc_BIFF2","parse_RgceElfLoc","fQuoted","parse_RgceLocRel","parse_RgceLocRel_BIFF2","cl","rl","parse_PtgArea","parse_PtgArea3d","ixti","parse_PtgAreaErr","parse_PtgAreaErr3d","parse_PtgAreaN","parse_PtgArray","parse_PtgAttrBaxcel","bitSemi","bitBaxcel","parse_PtgAttrChoose","parse_PtgAttrGoto","bitGoto","parse_PtgAttrIf","bitIf","parse_PtgAttrIfError","parse_PtgAttrSemi","parse_PtgAttrSpaceType","parse_PtgAttrSpace","parse_PtgAttrSpaceSemi","parse_PtgRef","parse_PtgRefN","parse_PtgRef3d","parse_PtgFunc","iftab","FtabArgc","Ftab","parse_PtgFuncVar","cparams","tab","parsetab","Cetab","parse_PtgAttrSum","parse_PtgExp","parse_PtgErr","parse_PtgInt","parse_PtgBool","parse_PtgNum","parse_PtgStr","parse_SerAr","parse_PtgExtraMem","parse_PtgExtraArray","parse_PtgName","nameindex","parse_PtgNameX","parse_PtgNameX_BIFF5","parse_PtgMemArea","parse_PtgMemFunc","parse_PtgRefErr","parse_PtgRefErr3d","parse_PtgMemErr","parse_PtgMemNoMem","parse_PtgTbl","parse_PtgElfLoc","parse_PtgElfNoop","parse_PtgElfCol","parse_PtgElfColS","parse_PtgElfColSV","parse_PtgElfColV","parse_PtgElfLel","parse_PtgElfRadical","parse_PtgElfRadicalLel","parse_PtgElfRadicalS","parse_PtgElfRw","parse_PtgElfRwV","PtgListRT","parse_PtgList","coltype","parse_PtgSxName","parse_PtgSheet","parse_PtgEndSheet","parse_PtgMemAreaN","parse_PtgMemNoMemN","parse_PtgAttrNoop","PtgTypes","PtgDupes","96","97","98","99","110","91","92","93","Ptg18","Ptg19","parse_RgbExtra","parse_Rgce","ptgs","stringify_array","PtgBinOp","PtgAdd","PtgConcat","PtgDiv","PtgEq","PtgGe","PtgGt","PtgLe","PtgLt","PtgMul","PtgNe","PtgPower","PtgSub","make_3d_range","get_ixti_raw","supbooks","XTI","SID","get_ixti","ixtiraw","stringify_formula","stack","nameidx","last_sp","sp","fflen","func","lbl","names","xlfn","bookidx","externbook","ixtidata","lp","rp","sharedf","parsedf","fnd","arrayf","PtgNonDisp","_left","rgcb","parse_XLSCellParsedFormula","parse_FormulaValue","write_FormulaValue","parse_Formula","cbf","shared","write_Formula","o1","o3","bf","parse_XLSBParsedFormula","parse_XLSBArrayParsedFormula","parse_XLSBCellParsedFormula","parse_XLSBNameParsedFormula","parse_XLSBSharedParsedFormula","write_XLSBFormulaNum","oint","write_XLSBFormulaErr","write_XLSBFormulaBool","write_XLSBFormulaStr","postamble","write_XLSBFormulaRef","write_XLSBFormulaRef3D","lastbang","write_XLSBFormulaRefErr3D","write_XLSBFormulaRange","_str","write_XLSBFormulaRangeWS","write_XLSBFormulaArea3D","write_XLSBFormula","write_XLSBNameParsedFormula","85","94","95","112","113","114","115","116","117","118","119","127","131","132","133","137","138","139","140","143","144","145","146","148","149","159","164","166","167","168","169","170","171","172","173","189","190","191","192","193","194","196","197","198","199","209","210","211","212","214","215","217","219","220","223","224","225","226","227","228","229","240","243","249","250","251","252","253","254","269","272","273","274","276","277","278","279","280","281","282","283","284","285","288","289","290","291","292","293","295","296","297","298","302","305","306","307","308","309","310","311","312","313","314","315","316","318","319","320","321","322","323","324","325","328","330","336","338","339","342","343","344","350","352","355","356","370","373","374","375","376","377","378","379","380","381","382","383","385","386","388","391","392","394","395","397","398","399","400","412","413","414","415","416","417","421","422","423","424","425","430","431","432","433","434","435","436","437","438","439","440","441","442","443","444","445","446","447","448","449","450","451","452","453","454","455","456","458","459","460","461","462","463","464","465","466","467","468","469","470","471","472","473","474","475","476","477","478","480","481","482","485","489","491","493","494","495","509","510","511","518","519","520","521","522","523","545","546","547","548","549","620","621","653","667","673","753","755","808","141","157","158","160","165","179","180","181","182","183","221","230","231","232","233","234","235","236","237","239","241","242","244","245","246","247","248","257","258","264","275","286","287","294","299","300","301","303","304","317","326","327","329","331","332","334","335","337","340","341","345","346","347","348","349","353","357","359","360","361","362","363","364","365","366","367","368","369","371","372","387","401","402","403","404","405","406","407","408","409","410","411","418","419","426","427","428","429","457","724","479","483","484","ods_to_csf_formula","csf_to_ods_formula","ods_to_csf_3D","csf_to_ods_3D","_ssfopts","browser_has_Map","Map","get_sst_id","has","revarr","get","col_obj_w","outlineLevel","default_margins","margins","mode","defs","left","right","top","bottom","get_cell_style","revssf","ssf","applyNumberFormat","safe_format","fillid","raw_rgb","check_ws","parse_ws_xml_dim","mergecregex","sheetdataregex","hlinkregex","dimregex","colregex","afregex","marginregex","sheetprregex","sheetprregex2","svsregex","parse_ws_xml","data1","data2","mtch","sheetPr","parse_ws_xml_sheetpr","parse_ws_xml_sheetpr2","svs","parse_ws_xml_sheetviews","columns","parse_ws_xml_cols","parse_ws_xml_data","afilter","parse_ws_xml_autofilter","_merge","parse_ws_xml_hlinks","parse_ws_xml_margins","tmpref","write_ws_xml_merges","codeName","CodeName","write_ws_xml_sheetpr","needed","vbaraw","cname","outlineprops","summaryBelow","summaryRight","above","sheetprot_deffalse","sheetprot_deftrue","write_ws_xml_protection","location","Rel","tooltip","rng","margin","write_ws_xml_margins","seencol","coli","colm","colM","write_ws_xml_cols","write_ws_xml_autofilter","sviewregex","Views","zoomScale","zoom","rightToLeft","write_ws_xml_sheetviews","sview","workbookViewId","write_ws_xml_cell","oldt","oldv","Strings","revStrings","cellregex","rowregex","isregex","refregex","match_v","match_f","sdata","cells","cref","tagr","tagc","sstr","ftag","do_format","rowobj","rowrite","marr","marrlen","xlen","rstarti","outa","ht","rslice","cellFormula","___f","_tag","xlmeta","_r","write_ws_xml_data","params","height","_cell","customHeight","write_ws_xml","xmlns:r","rdata","_drawing","sheetFormat","defaultRowHeight","baseColWidth","outlineLevelRow","relc","ignoreEC","numberStoredAsText","sqref","r:id","parse_BrtRowHdr","write_BrtRowHdr","ncolspan","lcs","caddr","first","last","write_row_header","parse_BrtWsDim","write_BrtWsDim","parse_BrtWsFmtInfo","parse_BrtWsProp","write_BrtWsProp","parse_BrtCellBlank","write_BrtCellBlank","ncell","parse_BrtShortBlank","write_BrtShortBlank","parse_BrtCellBool","fBool","write_BrtCellBool","parse_BrtShortBool","write_BrtShortBool","parse_BrtCellError","bError","write_BrtCellError","parse_BrtShortError","write_BrtShortError","parse_BrtCellIsst","write_BrtCellIsst","parse_BrtShortIsst","write_BrtShortIsst","parse_BrtCellReal","write_BrtCellReal","parse_BrtShortReal","write_BrtShortReal","parse_BrtCellRk","write_BrtCellRk","parse_BrtShortRk","write_BrtShortRk","parse_BrtCellRString","parse_BrtCellSt","write_BrtCellSt","parse_BrtShortSt","write_BrtShortSt","parse_BrtFmlaBool","parse_BrtFmlaError","parse_BrtFmlaNum","parse_BrtFmlaString","parse_BrtMergeCell","write_BrtMergeCell","write_BrtBeginMergeCells","parse_BrtHLink","relId","display","write_BrtHLink","locidx","parse_BrtPane","parse_BrtArrFmla","fAlwaysCalc","parse_BrtShrFmla","write_BrtColInfo","BrtMarginKeys","parse_BrtMargins","write_BrtMargins","parse_BrtBeginWsView","write_BrtBeginWsView","write_BrtCellIgnoreEC","write_BrtSheetProtection","parse_BrtDVal","parse_BrtDVal14","parse_ws_bin","ai","af","vm","ws_parse","RR","aii","_d","write_ws_bin_cell","last_seen","write_CELLTABLE","cap","write_MERGECELLS","write_COLINFOS","write_IGNOREECS","write_HLINKS","write_LEGACYDRAWING","write_AUTOFILTER","write_WSVIEWS2","write_WSFMTINFO","write_SHEETPROTECT","write_ws_bin","parse_Cache","nf","parse_chart","csheet","nc","cache","parse_cs_xml","!drawel","!rel","parse_BrtCsProp","parse_cs_bin","cs_parse","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","dn","wbnsregex","parse_wb_xml","dname","dnstart","xml_wb","Hidden","Comment","localSheetId","write_wb_xml","write_names","workbookPr","sheetId","parse_BrtBundleSh","iTabID","strRelID","write_BrtBundleSh","parse_BrtWbProp","defaultThemeVersion","strName","autoCompressPictures","backupFile","checkCompatibility","filterPrivacy","hidePivotFieldList","promptedSolutions","publishItems","refreshAllConnections","saveExternalLinkValues","showBorderUnselectedTables","showInkAnnotation","showObjects","showPivotChartFilter","updateLinks","write_BrtWbProp","parse_BrtFRTArchID$","ArchID","parse_BrtName","Ptg","write_BrtName","parse_wb_bin","hopper_wb","write_BUNDLESHS","viz","write_BrtFileVersion","write_BrtBookView","write_BOOKVIEWS","vistab","write_BRTNAMES","write_SELF_EXTERNS_xlsb","write_EXTERNALS_xlsb","write_wb_bin","parse_wb","parse_ws","parse_cs","parse_ms","parse_ds","parse_sty","parse_sst","parse_cmnt","parse_cc","parse_xlink","parse_xlmeta","attregexg2","attregex2","xlml_parsexmltag","words","xlml_parsexmltagobj","XLMLFormatMap","xlml_format","xlml_set_custprop","oval","safe_format_xlml","process_style_xlml","stag","Interior","I","Pattern","parse_xlml_data","csty","sid","StyleID","interiors","Parent","UTC","Formula","ArrayRange","xlml_prefix_dname","xlml_clean_comment","parse_xlml_xml","opening","ishtml","_o","html_to_workbook","General Number","General Date","Long Date","Medium Date","Short Date","Long Time","Medium Time","Short Time","Currency","Fixed","Standard","Percent","Scientific","Yes/No","True/False","On/Off","sheetnames","cursheet","sheetname","dtag","didx","fidx","pidx","cstys","wsprops","raw_Rn3","HRef","HRefScreenTip","MergeAcross","MergeDown","cma","cmd","AutoFitHeight","Height","Format","ssfidx","Width","_col","Span","_NamedRange","_DefinedName","RefersTo","AutoFilter","Range","parse_fods","Margin","pagemargins","Top","Left","Right","Bottom","bookSheets","bookProps","parse_xlml","fix_read_opts","write_props_xlml","write_wb_xlml","write_sty_xlml","ss:Format","ss:ID","write_name_xlml","ss:Name","ss:RefersTo","write_names_xlml","write_ws_xlml_names","write_ws_xlml_wsopts","x:Margin","x:Bottom","x:Left","x:Right","x:Top","objects","scenarios","selectLockedCells","selectUnlockedCells","write_ws_xlml_comment","ss:Author","write_ws_xlml_cell","attr","mi","_v","write_ws_xlml_row","write_ws_xlml_table","ss:Index","skip","write_ws_xlml","write_xlml","General","xmlns:ss","xmlns:dt","xmlns:html","parse_compobj","AnsiUserType","AnsiClipboardFormat","Reserved1","UnicodeClipboardFormat","Reserved2","CONTINUE_RT","slurp","RecordType","nextrt","XLSRecordEnum","ll","safe_format_xf","make_cell","parse_workbook","Directory","last_formula","cur_sheet","Preamble","lastcell","last_cell","cmnt","rngC","rngR","temp_val","country","XFs","palette","get_rgb","getrgb","process_cell_style","pcs","xfd","addcell","file_depth","afi","rrtabid","lastuser","winlocked","wtf","last_RT","BIFF2Fmt","BIFF2FmtTable","FilterDatabases","last_lbl","seen_codepage","Date1904","WriteProtect","cpval","CalcRefMode","FullCalc","ExternCount","tmpri","1033","1024","1280","1536","fakebs8","_fr","_fc","_fe","_arraystart","_j","_ixfe","b4idx","b2idx","TxO","ImData","noteobj","Encryption","Metadata","Country","PSCLSID","SI","DSI","UDI","parse_xls_props","DocSummary","Summary","write_xls_props","DSEntries","SEntries","CEntries","Keys","DocSummaryRE","SummaryRE","CEntries2","parse_xlscfb","CompObj","WorkbookP","bookVBA","bookFiles","write_xlscfb","wbpath","write_biff_buf","333","486","487","488","490","492","496","497","498","499","500","501","502","503","504","505","506","507","508","515","524","525","526","527","528","529","530","531","532","533","534","535","536","537","538","539","540","541","542","550","551","552","553","554","555","556","557","558","559","560","561","562","564","565","566","569","570","572","573","574","577","578","579","580","581","582","583","584","585","586","587","588","589","590","591","592","593","594","595","596","597","598","599","600","601","602","603","604","605","606","607","608","609","610","611","612","613","614","615","616","617","618","619","625","626","627","628","629","630","631","632","633","634","635","636","637","638","639","649","650","651","652","654","655","656","657","663","664","668","669","671","672","674","675","676","677","678","679","680","681","1025","1026","1027","1028","1029","1030","1031","1032","1034","1035","1036","1037","1038","1039","1040","1041","1042","1043","1044","1045","1046","1047","1048","1049","1050","1051","1052","1053","1054","1055","1056","1057","1058","1059","1061","1062","1063","1064","1065","1066","1067","1068","1069","1070","1071","1072","1073","1075","1076","1077","1078","1079","1080","1081","1082","1083","1084","1085","1086","1087","1088","1089","1090","1091","1092","1093","1094","1095","1096","1097","1098","1099","1100","1101","1102","1103","1104","1105","1111","1112","1113","1114","1115","1116","1117","1118","1119","1120","1121","1122","1123","1124","1125","1126","1128","1129","1130","1131","1132","1133","1134","1135","1136","1137","1138","1139","1140","1141","1142","1143","1144","1145","1146","1147","1148","1149","1150","1152","1153","1154","1155","1156","1157","1158","1159","1160","1161","1162","1163","1164","1165","1166","1167","1168","1169","1170","1171","1172","1173","1177","1178","1180","1181","1182","2050","2051","2053","2054","2055","2056","2057","2058","2060","2067","2068","2069","2070","2071","2072","2073","2075","2076","2077","2078","2079","2080","2081","2082","2083","2084","2085","2086","2087","2088","2089","2090","2091","2092","2093","2094","2095","2096","2097","2098","2099","2100","2101","2102","2103","2104","2105","2106","2107","2108","2109","2110","2111","2112","2113","2114","2115","2116","2117","2118","2119","2120","2121","2122","2123","2124","2125","2126","2127","2128","2129","2130","2131","2132","2133","2134","2135","2136","2137","2138","2139","2140","2141","3072","3073","4096","4097","5002","5003","5081","5082","5083","5084","5085","5086","5087","5088","5089","5090","5092","5093","5094","5095","5096","5097","5099","1212","2059","2061","2062","2063","2064","2066","2146","2147","2148","2149","2150","2151","2152","2154","2155","2156","2161","2162","2164","2165","2166","2167","2168","2169","2170","2171","2172","2173","2174","2175","2180","2181","2182","2183","2184","2185","2186","2187","2188","2189","2190","2191","2192","2194","2195","2196","2197","2198","2199","2200","2201","2202","2203","2204","2205","2206","2207","2211","2212","2213","2214","2215","4098","4099","4102","4103","4105","4106","4107","4108","4109","4116","4117","4118","4119","4120","4121","4122","4123","4124","4125","4126","4127","4128","4129","4130","4132","4133","4134","4135","4146","4147","4148","4149","4154","4156","4157","4158","4159","4160","4161","4163","4164","4165","4166","4168","4170","4171","4174","4175","4176","4177","4187","4188","4189","4191","4192","4193","4194","4195","4196","4197","4198","4199","4200","2157","2163","2177","2240","2241","2242","2243","2244","2245","2246","2247","2248","2249","2250","2251","2262","29282","write_biff_continue","write_BIFF2BERR","write_BIFF2LABEL","write_ws_biff2_cell","write_ws_biff2","write_biff2_buf","write_FONTS_biff8","write_FMTS_biff8","write_FEAT","write_CELLXFS_biff8","write_ws_biff8_hlinks","HL","write_ws_cols_biff8","write_ws_biff8_cell","write_ws_biff8","_WB","_sheet","MAX_ROWS","write_biff8_global","_sheets","_wb","blen","write_biff8_buf","fix_write_opts","html_to_sheet","mtch2","hd","midx","colspan","rowspan","_t","make_html_row","editable","HTML_BEGIN","HTML_END","book_new","make_html_preamble","sheet_to_html","sheet_add_dom","tagName","or_R","or_C","is_dom_element_hidden","elts","hasAttribute","getAttribute","innerHTML","Aelts","getElementsByTagName","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","parse_ods_styles","_nfm","number_format_map","NFtag","tNF","etpos","infmt","parse_content_xml","nfidx","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","baddate","rptR","rpt","xlmlidx","styletag","nrange","ptp","parse_ods","Styles","write_styles_ods","master_styles","xmlns:office","xmlns:table","xmlns:style","xmlns:text","xmlns:draw","xmlns:fo","xmlns:xlink","xmlns:number","xmlns:svg","xmlns:of","office:version","wso","write_number_format_ods","nopts","style:name","number:min-integer-digits","number:min-numerator-digits","number:max-denominator-value","number:denominator-value","number:decimal-places","number:min-decimal-places","has_time","np","write_names_ods","scoped","odsref","table:name","table:cell-range-address","table:base-cell-address","write_content_ods","write_text_p","null_cell_xml","covered_cell_xml","write_ws","nfs","ods","ROWS","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","nfi","wcx","xmlns:meta","xmlns:presentation","xmlns:chart","xmlns:dr3d","xmlns:math","xmlns:form","xmlns:script","xmlns:ooo","xmlns:ooow","xmlns:oooc","xmlns:dom","xmlns:xforms","xmlns:sheet","xmlns:rpt","xmlns:xhtml","xmlns:grddl","xmlns:tableooo","xmlns:drawooo","xmlns:calcext","xmlns:loext","xmlns:field","xmlns:formx","xmlns:css3t","fods","xmlns:config","office:mimetype","write_ods","u8_to_dataview","array","DataView","buffer","byteOffset","byteLength","u8str","u8","stru8","u8contains","search","u8concat","u8a","reduce","acc","popcnt","readDecimal128LE","exp","mantissa","writeDecimal128LE","parse_varint49","ptr","varint","write_varint49","parse_packed_varints","write_packed_varints","nums","varint_to_i32","i32","parse_shallow","write_shallow","proto","item","mappa","parse_iwa_file","_a","messages","merge","write_iwa_file","ias","ia","midata","aipayload","mid","parse_snappy_chunk","chunks","decompress_iwa_file","compress_iwa_file","frame","numbers_lut_new","rsst","ofmt","nfmt","numbers_format_cell","_b","_c","ver","dur","dstyle","dmin","dmax","autodur","dstr","zstr","parse_old_storage","lut","dv","getUint32","zidx","ieee","doff","getFloat64","parse_new_storage","d128","write_new_storage","setFloat64","setUint32","write_old_storage","parse_cell_storage","parse_TSP_Reference","pb","write_TSP_Reference","parse_TST_TableDataList","le","rtp","rtpref","mtype","tswpsa","parse_TST_TileRowInfo","_e","_g","_h","_i","_k","_m","wide_offsets","used_storage_u8","used_storage","used_storage_offsets","getUint16","parse_TST_Tile","nrows","parse_TST_TableModelArchive","store","tile","tl","ref2","mtype2","_tile","pi","parse_TST_TableInfoArchive","tableref","parse_TN_SheetArchive","shapeoffs","parse_TN_DocumentArchive","sheetoffs","root2","parse_numbers_iwa","indices","packets","packet","docroot","iwam","write_tile_row","tri","wide","new_7","new_4","last_offset","cell_storage","_dv","_last_offset","_cell_storage","setUint16","celload","_celload","write_iwam","get_unique_msgid","dep","dependents","build_numbers_deps","deps","indices_varint","ivi","some","mess","write_numbers_iwa","numbers","cfb_DA","iwa_DA","sheetrefs","write_numbers_ws","numbers_iwa_doit","ainfo","numbers_iwa_find","wsname","sheetidx","rootref","drawables","sheetref","tia","tmaref","write_numbers_tma","USE_WIDE_ROWS","tmaroot","tmafile","trunc","SST_set","Set","add","row_header_ref","rowhead","_x","_a2","base_bucket","R2","_bucket","col_header_ref","colhead","sstref","sstroot","sstdata","rbtree","tilestore","tstride","tileref","save_token","mlist","parentidx","findIndex","_b2","mm","parent","ntiles","newtileid","tiledata","tilerow","newtile","tilecontent","orefs","orefidx","mergeid","fix_opts_func","fix_opts","get_sheet_type","safe_parse_wbrels","wbrels","pwbr","safe_parse_sheet","relsPath","sheetRels","stype","dfile","drelsp","draw","chartp","crelsp","tcomments","strip_front_slash","_zip","index_zip","Bun","readSync","dir","binname","link","propdata","pluck","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Deps","bin","parse_xlsxcfb","dsm","seds","einfo","decrypt_agile","decrypt_std76","write_zip_xlsb","foo","vbafmt","_sn","wsrels","_type","need_vml","rId1","write_zip_xlsx","needtc","read_cfb","read_zip","read_plaintext","main","read_plaintext_raw","read_utf16","bstrify","read_prn","ab","vu","write_cfb_ctr","write_zip_type","write_zip_denouement","write_zip_typeXLSX","oopts","ftype","nodebuffer","string","generate","encrypt_agile","write_cfb_type","write_string_type","bom","write_stxt_type","write_binary_type","writeSyncXLSX","writeSync","sheet_to_txt","sheet_to_csv","resolve_book_type","_BT","xls","slk","socialcalc","Sh33tJS","writeFileSyncXLSX","writeFileAsync","_cb","Function","make_json_row","defval","isempty","defineProperty","enumerable","__rowNum__","rawNumbers","outi","counter","header_cnt","skipHidden","blankrows","qreg","make_csv_row","txt","forceQuotes","endregex","strip","sheet_to_formulae","cmds","sheet_add_json","js","skipHeader","ROW","JS","json_to_sheet","ws_get_cell_stub","RC","wb_sheet_idx","sh","roll","book_set_sheet_visibility","vis","cell_set_number_format","cell_set_hyperlink","cell_set_internal_link","cell_add_comment","sheet_set_array_formula","dynamic","rngstr","wsr","table_to_sheet","sheet_to_row_object_array","sheet_get_cell","SHEET_VISIBLE","SHEET_HIDDEN","SHEET_VERY_HIDDEN","_Readable","set_readable","write_csv_stream","stream","BOM","_read","write_html_stream","write_json_stream","objectMode","__stream","to_json","to_html","to_csv","readFile","writeXLSX","writeFileXLSX","strmod","Readable","define","amd","window"],"mappings":"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AAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,MAAQ,KAIR,IAAIC,KACH,KACA,QACA,aACA,WACA,YACA,iBACA,eACA,WACA,SACA,WACA,cACA,kBACA,gBACA,YACA,UACA,YACA,eACA,UACA,WAGD,SAASC,IAAOja,GAAO,MAAOA,GAAIxtB,IAAI,SAAS/C,GAAK,OAASA,GAAG,GAAI,IAAKA,GAAG,EAAG,IAAIA,EAAE,OAIrF,GAAIyqC,IAAWD,IAEd,EACA,SACA,SACA,MACA,IACA,SACA,SACA,MAGA,EACA,SACA,SACA,MACA,IACA,SACA,SACA,MAEA,QACA,MACA,IACA,QACA,QACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,MACA,SAEA,IACA,SACA,SACA,MACA,QACA,QACA,MACA,IACA,MACA,SACA,SACA,SACA,SACA,SACA,SACA,SAEA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,QACA,SACA,SACA,QACA,QAGA,EACA,SACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAED,IAAIvE,IAAS5T,GAAIoY,GAGjB,IAAIhJ,KACJrkC,EAAM,SACNuK,EAAM,UACNrB,GAAM,UACNuB,GAAM,QACNM,GAAM,SACNoN,GAAM,QACNjL,GAAM,OACNC,GAAM,gBACNjM,IAAM,QAGN,IAAIosC,KACHC,SAAiB,EACjBC,UAAiB,EACjBC,UAAiB,GACjBC,QAAiB,GACjBC,SAAiB,GACjBC,QAAiB,GACjBC,OAAiB,GACjBC,gBAAiB,GACjBC,QAAiB,IAGlB,IAAIC,KACH,yBACA,kBACA,mBACA,gBACA,iBACA,iBACA,mBACA,qBACA,iBACA,kBACA,sBACA,wBACA,oBACA,wBAOD,IAAIC,KAEHC,6EAA8E,YAC9EC,uDAAwD,YACxDC,0DAA2D,YAC3DC,uDAAwD,YACxDC,gFAAiF,YAGjFC,4EAA6E,SAC7EC,qCAAsC,SACtCC,sCAAuC,OAGvCC,6EA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IAAK,aACLC,IAAK,KACLC,IAAK,QACLxM,IAAK,SACLC,IAAK,YACLC,IAAK,cACLC,IAAK,iBACL50F,IAAK,OACLooE,IAAK,gBACL84B,IAAK,WACLC,IAAK,cACL94B,IAAK,WACLC,IAAK,iBACLC,IAAK,aACLC,IAAK,YACLC,IAAK,eACL24B,IAAK,eACL14B,IAAK,cACLC,IAAK,aACLC,IAAK,cACLC,IAAK,eACLgsB,IAAK,SACL/rB,IAAK,WACLC,IAAK,UACL+rB,IAAK,UACLC,IAAK,YACLC,IAAK,UACLqM,IAAK,SACLpM,IAAK,SACLC,IAAK,aACLC,IAAK,YACLC,IAAK,OACLC,IAAK,YACLC,IAAK,QACLC,IAAK,OACLC,IAAK,SACLC,IAAK,YACLC,IAAK,QACL4L,IAAK,YACLC,IAAK,WACL5L,IAAK,UACLC,IAAK,cACLC,IAAK,cACLC,IAAK,SACLC,IAAK,eACLC,IAAK,WACLwL,IAAK,YACLvL,IAAK,UACLC,IAAK,WACLC,IAAK,cACLC,IAAK,MACLqL,IAAK,SACLC,IAAK,UACLC,IAAK,QACLtL,IAAK,UACLuL,IAAK,UACLC,IAAK,WACLvL,IAAK,WACLC,IAAK,UACLC,IAAK,SACLC,IAAK,QACLC,IAAK,WACLC,IAAK,QACLC,IAAK,YACLC,IAAK,UACLC,IAAK,MACLC,IAAK,QACLC,IAAK,QACLC,IAAK,QACL6K,IAAK,OACL5K,IAAK,QACLC,IAAK,UACLC,IAAK,UACLC,IAAK,QACLC,IAAK,OACLC,IAAK,OACLC,IAAK,QACLC,IAAK,QACLsK,IAAK,QACLC,IAAK,WACLtK,IAAK,aACLuK,IAAK,cACLtK,IAAK,OACLuK,IAAK,WACLC,IAAK,OACLC,IAAK,gBACLC,IAAK,YACLzK,IAAK,cACL0K,IAAK,QACLzK,IAAK,iBACLC,IAAK,kBACLyK,IAAK,kBACLC,IAAK,iBACLzK,IAAK,UACLC,IAAK,UACLC,IAAK,WACLwK,IAAK,QACLC,IAAK,UACLC,IAAK,aACLC,IAAK,eACLC,IAAK,oBACL3K,IAAK,QACLjtD,IAAK,UACLktD,IAAK,aACL2K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AK,KAA6Bx1G,EAAEq0C,IAC/B4kE,KAAwBj5G,EAAE01C,IAC1Bif,OACAonD,QACAM,MAA4Br8G,EAAEo1C,IAC9B6oE,QACAkM,MAA6BnqH,EAAEw6C,IAC/Bmb,MAAkC31D,EAAEu8C,IACpCqZ,QACA6tD,QACAC,QACA7tD,QACA8tD,QACAC,QACAC,QACAC,QACAC,MAAyB/jH,EAAE8wC,IAC3BkzE,QACAoG,QACAnG,QACAoG,QACAC,QACAC,QACAC,QACAC,QACAvG,QACA4D,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAkC,QACAC,MAA6BxuH,EAAE,IAC/ByuH,QACAC,QACAC,QACAC,MAA6B/qH,EAAEqrC,IAC/B2/E,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA2B9rH,EAAE+8C,GAAa5gD,EAAE,IAC5C4vH,MAA2B/rH,EAAEyoE,GAAatsE,EAAE,IAC5C6vH,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8B1sH,EAAEwpC,GAAWrtC,EAAE,IAC7CwwH,QACAC,MAAiCzwH,EAAE,IACnC0wH,QACAC,QACAC,QACAC,QACAC,MAA6BjtH,EAAEo6C,GAAej+C,EAAE,IAChD+wH,QACAC,MAA2BntH,EAAE6nE,GAAa1rE,EAAE,IAC5CixH,QACAC,QACAC,QACAC,MAAiCvtH,EAAE86C,GAAmB3+C,EAAE,IACxDqxH,MAAsCxtH,EAAEqrC,IACxCoiF,QACAC,QACAC,QACAC,QACAC,MAA0C7tH,EAAE2yC,IAC5Cm7E,QACAC,QACAC,QACAC,QACAlF,QACAmF,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA2B5vH,EAAEyrC,IAC7BokF,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8B1wH,EAAEu9C,IAChCozE,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAAgCrxH,EAAE48C,IAClC00E,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QAEA3oI,GAAgC2W,EAAEw1C,IAClClsD,KACAC,GAA8ByW,EAAEq+C,IAChCtsD,GAA8BiO,EAAEi+C,IAChCjsD,GAA8BgO,EAAEg+C,IAChCtqD,GAA6BsM,EAAEw4C,IAC/B5kD,GAA4BoM,EAAEu+C,IAC9B1qD,KACA5B,GAAyB+N,EAAE8wC,IAC3B3+C,MACAW,IAAiCkN,EAAEyrC,IACnCp3C,IAAiC2L,EAAEu1C,IACnCjhD,MACA8M,MACAC,IAA2BrB,EAAE46C,IAC7Bp5C,MACAzO,IAAsCiN,EAAE8yC,IAKxCv+C,IAAmCyL,EAAEw+C,IAQrCtpD,MAcAT,MACAU,MACAC,IAAkC4K,EAAEyrC,IACpCjhD,MACA0qC,MACAwqB,OACAg8B,KAA4B17E,EAAE69C,IAC9ByC,OACAz2D,OACAiyF,OAKAM,OAEAE,OACAC,OACA58B,OAIAk9B,OACAE,OACA1qB,OACA+qB,OACAC,OACAE,OACAjrB,OACA0rB,KAA6Bh+E,EAAEy+C,IAC/B4/B,OACAwM,OACAp1D,OACAivD,OACAiE,KAA6B3oF,EAAEm5E,IAC/B2P,KAAyB9oF,EAAE8wC,IAC3B+iE,KAAyB7zG,EAAE25C,IAC3BwvC,KAAgCnpF,EAAEm5C,IAClC47D,OACAY,OACAmF,MAA6B96G,EAAEm5E,IAC/Bg2B,MAAyBnvG,EAAE8wC,IAC3B0tE,QACAyT,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAAgC72H,EAAE,IAGlC2iD,OACAC,OACA3pB,OACA8pB,OACAC,OACAgR,OACA+qB,OACAE,OAEA63C,SAGA,SAASvkE,IAAevjC,EAAI5wB,EAAM8O,EAASje,GAC1C,GAAI2F,GAAIwJ,CACR,IAAGlN,MAAM0D,GAAI,MACb,IAAI5F,GAAMC,IAAWie,OAAaje,QAAU,CAC5C,IAAIH,GAAIkgC,EAAGN,KAAK,EAChB5/B,GAAE8Z,YAAY,EAAGhU,EACjB9F,GAAE8Z,YAAY,EAAG5Z,EACjB,IAAGA,EAAM,GAAKi9B,GAAO/e,GAAU8hB,EAAG16B,KAAK4Y,GAGxC,QAAS6pH,IAAoB/nG,EAAI5wB,EAAM8O,EAASje,GAC/C,GAAID,GAAMC,IAAWie,OAAaje,QAAU,CAC5C,IAAGD,GAAO,KAAM,MAAOujE,IAAevjC,EAAI5wB,EAAM8O,EAASle,EACzD,IAAI4F,GAAIwJ,CACR,IAAGlN,MAAM0D,GAAI,MACb,IAAIqzC,GAAQ/6B,EAAQ+6B,UAAaupB,EAAO,CACxC,IAAIziE,GAAI,EAAGuO,EAAI,CACf,OAAMA,GAAK2qC,EAAMupB,IAAS,OAAS,KAAM,CAAEl0D,GAAK2qC,EAAMupB,IAAS,IAAOA,KACtE,GAAI1iE,GAAIkgC,EAAGN,KAAK,EAChB5/B,GAAE8Z,YAAY,EAAGhU,EACjB9F,GAAE8Z,YAAY,EAAGtL,EACjB0xB,GAAG16B,KAAK4Y,EAAQvd,MAAMZ,EAAGA,EAAIuO,GAC7BvO,IAAKuO,CACL,OAAMvO,EAAIC,EAAK,CACdF,EAAIkgC,EAAGN,KAAK,EACZ5/B,GAAE8Z,YAAY,EAAG,GACjBtL,GAAI,CACJ,OAAMA,GAAK2qC,EAAMupB,IAAS,OAAS,KAAM,CAAEl0D,GAAK2qC,EAAMupB,IAAS,IAAOA,KACtE1iE,EAAE8Z,YAAY,EAAGtL,EACjB0xB,GAAG16B,KAAK4Y,EAAQvd,MAAMZ,EAAGA,EAAEuO,GAAKvO,IAAIuO,GAItC,QAAS2kD,IAAgBhuD,EAAK+L,EAAG7M,GAChC,IAAIc,EAAKA,EAAMuZ,GAAQ,EACvBvZ,GAAI2U,YAAY,EAAG5I,EACnB/L,GAAI2U,YAAY,EAAGzV,EACnBc,GAAI2U,YAAY,EAAG,EACnB3U,GAAI2U,YAAY,EAAG,EACnB,OAAO3U,GAGR,QAAS+iI,IAAgBh3H,EAAG7M,EAAGmL,EAAK1J,GACnC,GAAIX,GAAMuZ,GAAQ,EAClBy0C,IAAgBhuD,EAAK+L,EAAG7M,EACxBu8C,IAAUpxC,EAAK1J,GAAK,IAAKX,EACzB,OAAOA,GAIR,QAASgjI,IAAiBj3H,EAAG7M,EAAGmL,GAC/B,GAAIrK,GAAMuZ,GAAQ,EAAI,EAAElP,EAAIrP,OAC5BgzD,IAAgBhuD,EAAK+L,EAAG7M,EACxBc,GAAI2U,YAAY,EAAGtK,EAAIrP,OACvBgF,GAAI2U,YAAYtK,EAAIrP,OAAQqP,EAAK,OACjC,OAAOrK,GAAI6P,EAAI7P,EAAIhF,OAASgF,EAAItE,MAAM,EAAGsE,EAAI6P,GAAK7P,EAGnD,QAASijI,IAAoBloG,EAAIE,EAAMhnB,EAAGP,GACzC,GAAGunB,EAAKv6B,GAAK,KAAM,OAAOu6B,EAAKt6B,GAC9B,IAAK,KAAK,IAAK,IACd,GAAID,GAAIu6B,EAAKt6B,GAAK,IAAM2qB,GAAQW,GAAUgP,EAAKv6B,IAAMu6B,EAAKv6B,CAC1D,IAAIA,IAAMA,EAAE,IAAQA,GAAK,GAAOA,EAAI,MACnC49D,GAAevjC,EAAI,EAAQmzB,GAAej6C,EAAGP,EAAGhT,QAEhD49D,IAAevjC,EAAI,EAAQgzB,GAAe95C,EAAEP,EAAGhT,GAChD,QACD,IAAK,KAAK,IAAK,IAAK49D,GAAevjC,EAAI,EAAQgoG,GAAgB9uH,EAAGP,EAAGunB,EAAKv6B,EAAGu6B,EAAKt6B,GAAK,QAEvF,IAAK,KAAK,IAAK,MACd29D,GAAevjC,EAAI,EAAQioG,GAAiB/uH,EAAGP,GAAIunB,EAAKv6B,GAAG,IAAIhF,MAAM,EAAE,MACvE,SAEF4iE,GAAevjC,EAAI,EAAQizB,GAAgB,KAAM/5C,EAAGP,IAGrD,QAASwvH,IAAenoG,EAAIgD,EAAI5yB,EAAK9D,GACpC,GAAIy2B,GAAQx/B,MAAMW,QAAQ8+B,EAC1B,IAAIzC,GAAQ2B,GAAkBc,EAAG,SAAW,MAAOssB,EAAKj+C,EAAK,GAAIwlD,IACjE,IAAGt2B,EAAMz9B,EAAEqB,EAAI,KAAQo8B,EAAMz9B,EAAEkO,EAAI,MAAQ,CAC1C,GAAG1E,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,UAAY2+B,EAAG,SAAW,MAAQ,mCAC/DzC,GAAMz9B,EAAEqB,EAAI8B,KAAK0M,IAAI4tB,EAAMz9B,EAAEqB,EAAG,IAChCo8B,GAAMz9B,EAAEkO,EAAI/K,KAAK0M,IAAI4tB,EAAMz9B,EAAEqB,EAAG,MAChCmrD,GAAM3tB,GAAapB,GAEpB,IAAI,GAAIrnB,GAAIqnB,EAAM58B,EAAEqN,EAAGkI,GAAKqnB,EAAMz9B,EAAEkO,IAAKkI,EAAG,CAC3C7H,EAAKyvB,GAAW5nB,EAChB,KAAI,GAAIP,GAAI4nB,EAAM58B,EAAEQ,EAAGwU,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAG,CAC3C,GAAGO,IAAMqnB,EAAM58B,EAAEqN,EAAG6lD,EAAKl+C,GAAKkoB,GAAWloB,EACzC22C,GAAMuH,EAAKl+C,GAAKtH,CAChB,IAAI6uB,GAAO6C,GAASC,EAAG9pB,QAAQP,GAAKqqB,EAAGssB,EACvC,KAAIpvB,EAAM,QAEVgoG,IAAoBloG,EAAIE,EAAMhnB,EAAGP,EAAGrM,KAMvC,QAAS87H,IAAgBtiF,EAAIx5C,GAC5B,GAAIxM,GAAIwM,KACR,IAAG9K,GAAS,MAAQ1B,EAAEijC,OAAS,KAAMjjC,EAAEijC,MAAQvhC,CAC/C,IAAIw+B,GAAKb,IACT,IAAI/uB,GAAM,CACV,KAAI,GAAIrQ,GAAE,EAAEA,EAAE+lD,EAAGnjB,WAAW1iC,SAASF,EAAG,GAAG+lD,EAAGnjB,WAAW5iC,IAAMD,EAAE2iC,MAAOryB,EAAIrQ,CAC5E,IAAGqQ,GAAO,KAAOtQ,EAAE2iC,OAASqjB,EAAGnjB,WAAW,IAAM7iC,EAAE2iC,MAAO,KAAM,IAAIp+B,OAAM,oBAAsBvE,EAAE2iC,MACjG8gC,IAAevjC,EAAKlgC,EAAEugC,MAAQ,EAAI,KAAUvgC,EAAEugC,MAAQ,EAAI,IAAS,EAAUwlB,GAAUC,EAAI,GAAMhmD,GAEjGqoI,IAAenoG,EAAI8lB,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOA,EAAKtQ,EAAGgmD,EAE1Dyd,IAAevjC,EAAI,GACnB,OAAOA,GAAG1U,MAGX,QAAS+8G,IAAkBroG,EAAIngC,EAAMyM,GACpCi3D,GAAevjC,EAAI,GAAmBwpB,IACrC9uC,GAAG,GACH8E,OAAQ0nB,MAAM,GACdnqB,KAAM,QACNwuD,OAAQ,EACR4L,OAAQ,SACN7qE,IAIJ,QAASg8H,IAAiBtoG,EAAI03C,EAAIprE,GACjC,IAAIorE,EAAI,SACN,EAAE,IAAI,GAAG,KAAK,GAAG,KAAW,GAAgB,MAAM/gE,QAAQ,SAAS3F,GACtE,IAAI,GAAIjR,GAAIiR,EAAE,GAAIjR,GAAKiR,EAAE,KAAMjR,EAAG,GAAG23E,EAAG33E,IAAM,KAAMwjE,GAAevjC,EAAI,KAAqBmqB,GAAapqD,EAAG23E,EAAG33E,GAAIuM,MAInH,QAASi8H,IAAWvoG,EAAIgD,GAEvB,GAAIljC,GAAI0e,GAAQ,GAChB1e,GAAE8Z,YAAY,EAAG,KAAQ9Z,GAAE8Z,YAAY,EAAG,EAAI9Z,GAAE8Z,YAAY,EAAG,EAC/D9Z,GAAE8Z,YAAY,EAAG,EAAI9Z,GAAE8Z,YAAY,EAAG,EAAI9Z,GAAE8Z,YAAY,EAAG,EAC3D2pD,IAAevjC,EAAI,KAAsBlgC,EAEzCA,GAAI0e,GAAQ,GACZ1e,GAAE8Z,YAAY,EAAG,KAAQ9Z,GAAE8Z,YAAY,EAAG,EAAI9Z,GAAE8Z,YAAY,EAAG,EAC/D9Z,GAAE8Z,YAAY,EAAG,EAAI9Z,GAAE8Z,YAAY,EAAG,EAAI9Z,GAAE8Z,YAAY,EAAG,EAC3D9Z,GAAE8Z,YAAY,EAAG,EAAI9Z,GAAE8Z,YAAY,EAAG,EAAI9Z,GAAE8Z,YAAY,EAAG,EAC3DgrC,IAAY1iB,GAAkBc,EAAG,SAAS,MAAOljC,EACjDA,GAAE8Z,YAAY,EAAG,EACjB2pD,IAAevjC,EAAI,KAAmBlgC,GAGvC,QAAS0oI,IAAoBxoG,EAAI1zB,GAChC,IAAI,GAAIvM,GAAI,EAAGA,EAAI,KAAMA,EAAGwjE,GAAevjC,EAAI,IAAiBgtB,IAAU3qB,SAAS,EAAG0R,MAAM,MAAO,EAAGznC,GACtGA,GAAKisE,QAAQ5hE,QAAQ,SAASxS,GAC7Bo/D,GAAevjC,EAAI,IAAiBgtB,GAAS7oD,EAAG,EAAGmI,MAIrD,QAASm8H,IAAsBzoG,EAAIgD,GAClC,IAAI,GAAI9pB,GAAE,EAAGA,EAAE8pB,EAAG,UAAU/iC,SAAUiZ,EAAG,CACxC,GAAIwvH,GAAK1lG,EAAG,UAAU9pB,EACtBqqD,IAAevjC,EAAI,IAAoBkxB,GAAYw3E,GACnD,IAAGA,EAAG,GAAGzlF,QAASsgB,GAAevjC,EAAI,KAA2BsxB,GAAmBo3E,UAE7E1lG,GAAG,UAGX,QAAS2lG,IAAoB3oG,EAAI62B,GAChC,IAAIA,EAAM,MACV,IAAIp4C,GAAM,CACVo4C,GAAKlgD,QAAQ,SAAS4qB,EAAKnxB,GAC1B,KAAKqO,GAAO,KAAO8iB,EAAK,CACvBgiC,GAAevjC,EAAI,IAAsBiyB,GAAckzC,GAAU/0F,EAAKmxB,GAAMnxB,OAK/E,QAASw4H,IAAoB5oG,EAAIE,EAAMhnB,EAAGP,EAAGrM,GAC5C,GAAIu9C,GAAK,GAAKg8C,GAAev5F,EAAKisE,QAASr4C,EAAM5zB,EACjD,IAAG4zB,EAAKv6B,GAAK,OAASu6B,EAAKouD,GAAI,CAC9B/qB,GAAevjC,EAAI,IAAoB4jB,GAAc1qC,EAAGP,EAAGkxC,GAC3D,QAED,GAAG3pB,EAAKouD,GAAI/qB,GAAevjC,EAAI,EAAsBmuD,GAAcjuD,EAAMhnB,EAAGP,EAAGrM,EAAMu9C,QAChF,QAAO3pB,EAAKt6B,GAChB,IAAK,KAAK,IAAK,IACd,GAAID,GAAIu6B,EAAKt6B,GAAK,IAAM2qB,GAAQW,GAAUgP,EAAKv6B,IAAMu6B,EAAKv6B,CAE1D49D,IAAevjC,EAAI,IAAqBytB,GAAav0C,EAAGP,EAAGhT,EAAGkkD,EAAIv9C,GAClE,OACD,IAAK,KAAK,IAAK,IACdi3D,GAAevjC,EAAI,IAAsBstB,GAAcp0C,EAAGP,EAAGunB,EAAKv6B,EAAGkkD,EAAIv9C,EAAM4zB,EAAKt6B,GACpF,OAED,IAAK,KAAK,IAAK,MACd,GAAG0G,EAAKihE,QAAS,CAChB,GAAI5jB,GAAOo7C,GAAWz4F,EAAKi+F,QAASrqE,EAAKv6B,EAAG2G,EAAKk+F,WACjDjnC,IAAevjC,EAAI,IAAuB4pB,GAAe1wC,EAAGP,EAAGgxC,EAAME,EAAIv9C,QACnEi3D,IAAevjC,EAAI,IAAoBgqB,GAAY9wC,EAAGP,GAAIunB,EAAKv6B,GAAG,IAAIhF,MAAM,EAAE,KAAMkpD,EAAIv9C,GAC/F,OACD,QACCi3D,GAAevjC,EAAI,IAAoB4jB,GAAc1qC,EAAGP,EAAGkxC,MAK9D,QAASg/E,IAAez4H,EAAK9D,EAAMw5C,GAClC,GAAI9lB,GAAKb,IACT,IAAIx7B,GAAImiD,EAAGnjB,WAAWvyB,GAAM4yB,EAAK8iB,EAAGljB,OAAOj/B,MAC3C,IAAImlI,IAAQhjF,OAAQmX,YACpB,IAAI8rE,IAAWD,EAAIlmG,YAAYxyB,MAC/B,IAAI2yB,GAAQx/B,MAAMW,QAAQ8+B,EAC1B,IAAImjB,GAAK75C,EAAK+zB,MAAQ,CACtB,IAAIivB,GAAKj+C,EAAK,GAAIwlD,IAClB,IAAIt2B,GAAQ2B,GAAkBc,EAAG,SAAW,KAC5C,IAAIgmG,GAAW7iF,EAAK,MAAQ,KAC5B,IAAG5lB,EAAMz9B,EAAEqB,EAAI,KAAQo8B,EAAMz9B,EAAEkO,GAAKg4H,EAAU,CAC7C,GAAG18H,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,UAAY2+B,EAAG,SAAW,MAAQ,mCAC/DzC,GAAMz9B,EAAEqB,EAAI8B,KAAK0M,IAAI4tB,EAAMz9B,EAAEqB,EAAG,IAChCo8B,GAAMz9B,EAAEkO,EAAI/K,KAAK0M,IAAI4tB,EAAMz9B,EAAEqB,EAAG6kI,EAAS,GAG1CzlE,GAAevjC,EAAI,KAAQ6lB,GAAUC,EAAI,GAAMx5C,GAE/Ci3D,IAAevjC,EAAI,GAAuBugB,GAAY,GACtDgjB,IAAevjC,EAAI,GAAwBugB,GAAY,KACvDgjB,IAAevjC,EAAI,GAA0BqgB,GAAU,MACvDkjB,IAAevjC,EAAI,GAAuBqgB,GAAU,OACpDkjB,IAAevjC,EAAI,GAAwBqG,GAAW,MACtDk9B,IAAevjC,EAAI,GAA6BqgB,GAAU,MAC1DkjB,IAAevjC,EAAI,GAA0BqgB,GAAU,OACvDkjB,IAAevjC,EAAI,GAAwBqgB,GAAU,OACrDkjB,IAAevjC,EAAI,IAAsBugB,GAAY,GACrDgjB,IAAevjC,EAAI,IAAmBmtB,IAAY,EAAE,IAIpDoW,IAAevjC,EAAI,IAAsBqgB,GAAU,OACnDkjB,IAAevjC,EAAI,IAAsBqgB,GAAU,OAEnD,IAAG8F,EAAIwiF,GAAoB3oG,EAAIgD,EAAG,SAElCugC,IAAevjC,EAAI,IAAyBsqB,GAAiB/pB,EAAOj0B,GAGpE,IAAG65C,EAAInjB,EAAG,YACV,IAAIoP,KACJ,KAAI,GAAIl5B,GAAIqnB,EAAM58B,EAAEqN,EAAGkI,GAAKqnB,EAAMz9B,EAAEkO,IAAKkI,EAAG,CAC3C7H,EAAKyvB,GAAW5nB,EAChB,KAAI,GAAIP,GAAI4nB,EAAM58B,EAAEQ,EAAGwU,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAG,CAC3C,GAAGO,IAAMqnB,EAAM58B,EAAEqN,EAAG6lD,EAAKl+C,GAAKkoB,GAAWloB,EACzC22C,GAAMuH,EAAKl+C,GAAKtH,CAChB,IAAI6uB,GAAO6C,GAASC,EAAG9pB,QAAQP,GAAKqqB,EAAGssB,EACvC,KAAIpvB,EAAM,QAEV0oG,IAAoB5oG,EAAIE,EAAMhnB,EAAGP,EAAGrM,EACpC,IAAG65C,GAAMjmB,EAAKprB,EAAGkuB,EAAG,UAAU19B,MAAMgqD,EAAKpvB,EAAKprB,GAC9C,IAAGqxC,GAAMjmB,EAAK/7B,EAAGiuC,EAAS9sC,MAAMgqD,EAAKpvB,EAAK/7B,KAG5C,GAAIqkG,GAAQugC,EAAO3gC,UAAY2gC,EAAOhsH,MAAQpZ,CAI9C,IAAGwiD,EAAIod,GAAevjC,EAAI,IAAsBopB,IAAe0/E,EAAIj/B,WAAW,IAE9E,IAAG1jD,IAAOnjB,EAAG,gBAAgB/iC,OAAQsjE,GAAevjC,EAAI,IAAyBswB,GAAiBttB,EAAG,YAErG,IAAGmjB,EAAIsiF,GAAsBzoG,EAAIgD,EAEjCugC,IAAevjC,EAAI,IAAuB2hB,GAAsB6mD,EAAOl8F,GAEvE,IAAG65C,EAAIoiF,GAAWvoG,EAAIgD,EAEtBugC,IAAevjC,EAAI,GACnB,OAAOA,GAAG1U,MAIX,QAAS29G,IAAmBnjF,EAAIthD,EAAM8H,GACrC,GAAIJ,GAAIizB,IACR,IAAI2pG,IAAQhjF,OAAQmX,YACpB,IAAIisE,GAAWJ,EAAIlmG,UACnB,IAAIumG,GAAML,EAAI5rE,WACd,IAAI/W,GAAK75C,EAAK+zB,MAAQ,EAAGopB,EAAKn9C,EAAK+zB,MAAQ,CAC3CkjC,IAAer3D,EAAG,KAAQ25C,GAAUC,EAAI,EAAMx5C,GAC9C,IAAGA,EAAKgoC,UAAY,MAAOivB,GAAer3D,EAAG,IAC7Cq3D,IAAer3D,EAAG,IAA2Bi6C,EAAK5F,GAAY,MAAU,KACxEgjB,IAAer3D,EAAG,IAAkBi0C,GAAY,GAChD,IAAGsJ,EAAI8Z,GAAer3D,EAAG,IACzB,IAAGu9C,EAAI8Z,GAAer3D,EAAG,IACzBq3D,IAAer3D,EAAG,IAClBq3D,IAAer3D,EAAG,GAA0Bg6C,GAAkB,UAAW55C,GAEzEi3D,IAAer3D,EAAG,GAAuBq0C,GAAY4F,EAAK,KAAS,MAEnE,IAAGA,EAAIod,GAAer3D,EAAG,IAAkBq0C,GAAY,GACvD,IAAG4F,EAAIod,GAAer3D,EAAG,IACzBq3D,IAAer3D,EAAG,IAAsBomD,GAAcxM,EAAGnjB,WAAW1iC,QACpE,IAAGkmD,GAAML,EAAGyiD,OAAQhlC,GAAer3D,EAAG;AAEtC,GAAGi6C,GAAML,EAAGyiD,OAAQ,CACnB,GAAIC,GAAQ2gC,EAAI/gC,UAAY,cAC5B7kC,IAAer3D,EAAG,IAAuBy1C,GAAsB6mD,EAAOl8F,IAEvEi3D,GAAer3D,EAAG,IAAkCq0C,GAAY,IAIhEgjB,IAAer3D,EAAG,GAAyBm0C,GAAU,OACrDkjB,IAAer3D,EAAG,GAAsBm0C,GAAU,OAClDkjB,IAAer3D,EAAG,GAAuBq0C,GAAY,GACrD,IAAG4F,EAAIod,GAAer3D,EAAG,IAAuBm0C,GAAU,OAC1D,IAAG8F,EAAIod,GAAer3D,EAAG,IAA2Bq0C,GAAY,GAChEgjB,IAAer3D,EAAG,GAAsB+8C,GAAc38C,GACtDi3D,IAAer3D,EAAG,GAAqBm0C,GAAU,OACjDkjB,IAAer3D,EAAG,IAAsBq0C,GAAY,GACpDgjB,IAAer3D,EAAG,GAAuBm0C,GAAUo0D,GAAS3uD,IAAK,QACjEyd,IAAer3D,EAAG,GAA4Bm0C,GAAU,MACxD,IAAG8F,EAAIod,GAAer3D,EAAG,IAAyBm0C,GAAU,OAC5DkjB,IAAer3D,EAAG,IAAuBq0C,GAAY,GAErD8nF,IAAkBn8H,EAAG45C,EAAIx5C,EACzBg8H,IAAiBp8H,EAAG45C,EAAGtwC,IAAKlJ,EAC5Bk8H,IAAoBt8H,EAAGI,EAEvB,IAAG65C,EAAIod,GAAer3D,EAAG,IAAuBm0C,GAAU,OAC1D,IAAI16B,GAAIzZ,EAAEof,KAEV,IAAI3S,GAAIwmB,IAER,IAAGgnB,EAAIod,GAAe5qD,EAAG,IAAsB64C,KAI/C,IAAGrL,GAAM75C,EAAKi+F,QAASw9B,GAAoBpvH,EAAG,IAAkBquC,GAAU16C,EAAKi+F,QAASj+F,GAGxFi3D,IAAe5qD,EAAG,GAClB,IAAIxU,GAAIwU,EAAE2S,KAEV,IAAI3f,GAAIwzB,IACR,IAAIiqG,GAAO,EAAGv5H,EAAI,CAClB,KAAIA,EAAI,EAAGA,EAAIi2C,EAAGnjB,WAAW1iC,SAAU4P,EAAGu5H,IAASjjF,EAAK,GAAK,KAAOA,EAAK,EAAI,GAAKL,EAAGnjB,WAAW9yB,GAAG5P,MACnG,IAAIme,GAAQuH,EAAE1lB,OAASmpI,EAAOjlI,EAAElE,MAChC,KAAI4P,EAAI,EAAGA,EAAIi2C,EAAGnjB,WAAW1iC,SAAU4P,EAAG,CACzC,GAAIk5H,GAASG,EAAQr5H,MACrB0zD,IAAe53D,EAAG,IAA0Bg7C,IAAmBhoB,IAAIvgB,EAAOsoC,GAAGqiF,EAAOvzB,QAAQ,EAAG7hG,GAAG,EAAGoJ,KAAK+oC,EAAGnjB,WAAW9yB,IAAKvD,GAC7H8R,IAAS5Z,EAAKqL,GAAG5P,OAGlB,GAAI2kB,GAAIjZ,EAAE2f,KACV,IAAG89G,GAAQxkH,EAAE3kB,OAAQ,KAAM,IAAIoE,OAAM,OAAS+kI,EAAO,OAASxkH,EAAE3kB,OAEhE,IAAIgF,KACJ,IAAG0gB,EAAE1lB,OAAQgF,EAAIK,KAAKqgB,EACtB,IAAGf,EAAE3kB,OAAQgF,EAAIK,KAAKsf,EACtB,IAAGzgB,EAAElE,OAAQgF,EAAIK,KAAKnB,EACtB,OAAOI,GAAQU,GAIhB,QAASokI,IAAgBvjF,EAAIx5C,GAC5B,GAAIxM,GAAIwM,KACR,IAAI9H,KAEJ,IAAGshD,IAAOA,EAAGtwC,IAAK,CACjBswC,EAAGtwC,IAAM2d,GAAIxsB,GAEd,GAAGm/C,GAAMA,EAAGtwC,IAAK,CAChBD,IAAYF,IAAeywC,EAAGtwC,IAE9B1V,GAAEgmG,OAAS11E,GAAU01B,EAAGtwC,IAAM1V,GAAEgmG,OAAOhgD,EAAGtwC,IAAI,QAAU,CACxD1V,GAAEimG,IAAMjgD,EAAGtwC,IAGZ1V,EAAEyqG,UAAczqG,GAAEyqG,QAAQzjD,MAAQ,CAAGhnD,GAAEyqG,QAAQxjD,OAAS,CACxDuiF,IAAexpI,EAEfA,GAAEy4E,UACFstB,IAAe/lG,EAAEy4E,YAAcutB,QAAQya,QAAU,IAEjD,KAAIz6D,EAAGvN,MAAOuN,EAAGvN,QAEjB,KAAI,GAAIx4C,GAAI,EAAGA,EAAI+lD,EAAGnjB,WAAW1iC,SAAUF,EAAGyE,EAAKA,EAAKvE,QAAU4oI,GAAe9oI,EAAGD,EAAGgmD,EACvFthD,GAAKw6C,QAAQiqF,GAAmBnjF,EAAIthD,EAAM1E,GAC1C,OAAOyE,GAAQC,GAGhB,QAASiiH,IAAe3gE,EAAIx5C,GAC3B,IAAI,GAAIvM,GAAI,EAAGA,GAAK+lD,EAAGnjB,WAAW1iC,SAAUF,EAAG,CAC9C,GAAIijC,GAAK8iB,EAAGljB,OAAOkjB,EAAGnjB,WAAW5iC,GACjC,KAAIijC,IAAOA,EAAG,QAAS,QACvB,IAAIzC,GAAQmB,GAAasB,EAAG,QAC5B,IAAGzC,EAAMz9B,EAAEqB,EAAI,IAAK,CACnB,SAAUoe,UAAW,aAAeA,QAAQC,MAAOD,QAAQC,MAAM,cAAgBsjC,EAAGnjB,WAAW5iC,GAAK,yDAItG,GAAID,GAAIwM,KACR,QAAOxM,EAAEugC,MAAQ,GAChB,IAAK,IAAG,IAAK,GAAG,MAAOgpG,IAAgBvjF,EAAIx5C,GAC3C,IAAK,IAAG,IAAK,IAAG,IAAK,GAAG,MAAO87H,IAAgBtiF,EAAIx5C,IAEpD,KAAM,IAAIjI,OAAM,gBAAkBvE,EAAEw0C,SAAW,aAGhD,QAASi1F,IAAcz3H,EAAKwP,GAC3B,GAAIhV,GAAOgV,KACX,IAAG9f,GAAS,MAAQ8K,EAAKy2B,OAAS,KAAMz2B,EAAKy2B,MAAQvhC,CACrD,IAAIwhC,GAAK12B,EAAKy2B,WACdjxB,GAAMA,EAAIxP,QAAQ,cAAe,GACjC,IAAI6kG,GAAOr1F,EAAIxB,MAAM,UACrB,KAAI62F,EAAM,KAAM,IAAI9iG,OAAM,uCAC1B,IAAImlI,GAAQ13H,EAAIxB,MAAM,YACtB,IAAIvQ,GAAIonG,EAAK3gE,MAAO32B,EAAI25H,GAASA,EAAMhjG,OAAS10B,EAAI7R,MACpD,IAAIk/D,GAAOjrC,GAAYpiB,EAAInR,MAAMZ,EAAG8P,GAAI,iBAAkB,OAC1D,IAAIqJ,IAAK,EAAGP,EAAI,EAAG2mD,EAAK,EAAG9pB,EAAK,CAChC,IAAIjV,IAAS58B,GAAGqN,EAAE,IAAU7M,EAAE,KAAUrB,GAAGkO,EAAE,EAAE7M,EAAE,GACjD,IAAIisD,KACJ,KAAIrwD,EAAI,EAAGA,EAAIo/D,EAAKl/D,SAAUF,EAAG,CAChC,GAAIksB,GAAMkzC,EAAKp/D,GAAGisB,MAClB,IAAIy9G,GAAKx9G,EAAItrB,MAAM,EAAE,GAAGkT,aACxB,IAAG41H,GAAM,MAAO,GAAIvwH,CAAG,IAAG5M,EAAK2pD,WAAa3pD,EAAK2pD,WAAa/8C,EAAG,GAAIA,CAAG,OAASP,EAAI,CAAG,UACxF,GAAG8wH,GAAM,OAASA,GAAM,MAAO,QAC/B,IAAIz+B,GAAQ/+E,EAAIroB,MAAM,aACtB,KAAIiM,EAAI,EAAGA,EAAIm7F,EAAM/qG,SAAU4P,EAAG,CACjC,GAAIqwB,GAAO8qE,EAAMn7F,GAAGmc,MACpB,KAAIkU,EAAK5vB,MAAM,WAAY,QAC3B,IAAIvD,GAAImzB,EAAMnuB,EAAK,CAEnB,OAAMhF,EAAE5K,OAAO,IAAM,MAAQ4P,EAAKhF,EAAEvN,QAAQ,OAAS,EAAGuN,EAAIA,EAAEpM,MAAMoR,EAAG,EACvE,KAAI,GAAI23H,GAAO,EAAGA,EAAOt5E,EAAOnwD,SAAUypI,EAAM,CAC/C,GAAI5hC,GAAS13C,EAAOs5E,EACpB,IAAG5hC,EAAOnkG,EAAEQ,GAAKwU,GAAKmvF,EAAOnkG,EAAEqN,EAAIkI,GAAKA,GAAK4uF,EAAOhlG,EAAEkO,EAAG,CAAE2H,EAAImvF,EAAOhlG,EAAEqB,EAAI,CAAGulI,IAAQ,GAExF,GAAIpzG,GAAMD,GAAY6J,EAAKv/B,MAAM,EAAGu/B,EAAK1gC,QAAQ,MACjDg2C,GAAKlf,EAAIqzG,SAAWrzG,EAAIqzG,QAAU,CAClC,KAAIrqE,GAAMhpC,EAAIszG,SAAS,GAAKp0F,EAAG,EAAG4a,EAAO9qD,MAAM3B,GAAGqN,EAAEkI,EAAE/U,EAAEwU,GAAG7V,GAAGkO,EAAEkI,GAAKomD,GAAI,GAAK,EAAGn7D,EAAEwU,EAAI68B,EAAK,IAC5F,IAAIq0F,GAAKvzG,EAAI1wB,GAAK0wB,EAAI,WAAa,EAEnC,KAAIvpB,EAAE9M,OAAQ,CAAE0Y,GAAK68B,CAAI,UACzBzoC,EAAIgsB,GAAWhsB,EACf,IAAGwzB,EAAM58B,EAAEqN,EAAIkI,EAAGqnB,EAAM58B,EAAEqN,EAAIkI,CAAG,IAAGqnB,EAAMz9B,EAAEkO,EAAIkI,EAAGqnB,EAAMz9B,EAAEkO,EAAIkI,CAC/D,IAAGqnB,EAAM58B,EAAEQ,EAAIwU,EAAG4nB,EAAM58B,EAAEQ,EAAIwU,CAAG,IAAG4nB,EAAMz9B,EAAEqB,EAAIwU,EAAG4nB,EAAMz9B,EAAEqB,EAAIwU,CAC/D,KAAI5L,EAAE9M,OAAQ,CAAE0Y,GAAK68B,CAAI,UACzB,GAAI11C,IAAK8F,EAAE,IAAKD,EAAEoH,EAClB,IAAGT,EAAKkR,MAAQzQ,EAAEif,OAAO/rB,QAAU4pI,GAAM,IAAI,MACxC,IAAG98H,IAAM,OAAQjN,GAAK8F,EAAE,IAAKD,EAAE,UAC/B,IAAGoH,IAAM,QAASjN,GAAK8F,EAAE,IAAKD,EAAE,WAChC,KAAIzD,MAAMoxB,GAASvmB,IAAKjN,GAAK8F,EAAE,IAAKD,EAAE2tB,GAASvmB,QAC/C,KAAI7K,MAAM4xB,GAAU/mB,GAAGQ,WAAY,CACvCzN,GAAM8F,EAAE,IAAKD,EAAEurB,GAAUnkB,GACzB,KAAIT,EAAKo3B,UAAW5jC,GAAM8F,EAAE,IAAKD,EAAE4qB,GAAQzwB,EAAE6F,GAC7C7F,GAAE22B,EAAInqB,EAAK4I,QAAUvO,EAAU,IAEhC,GAAG2F,EAAKy2B,MAAO,CAAE,IAAIC,EAAG9pB,GAAI8pB,EAAG9pB,KAAS8pB,GAAG9pB,GAAGP,GAAK7Y,MAC9CkjC,GAAGvC,IAAazvB,EAAEkI,EAAG/U,EAAEwU,KAAO7Y,CACnC6Y,IAAK68B,GAGPxS,EAAG,QAAUrB,GAAapB,EAC1B,IAAG6vB,EAAOnwD,OAAQ+iC,EAAG,WAAaotB,CAClC,OAAOptB,GAER,QAAS8mG,IAAc9mG,EAAIhyB,EAAGkI,EAAGpZ,GAChC,GAAImN,GAAK+1B,EAAG,cACZ,IAAIhF,KACJ,IAAI2uD,KACJ,KAAI,GAAIh0E,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CACnC,GAAI2mD,GAAK,EAAG9pB,EAAK,CACjB,KAAI,GAAI3lC,GAAI,EAAGA,EAAI5C,EAAEhN,SAAU4P,EAAG,CACjC,GAAG5C,EAAE4C,GAAGlM,EAAEqN,EAAIkI,GAAKjM,EAAE4C,GAAGlM,EAAEQ,EAAIwU,EAAG,QACjC,IAAG1L,EAAE4C,GAAG/M,EAAEkO,EAAIkI,GAAKjM,EAAE4C,GAAG/M,EAAEqB,EAAIwU,EAAG,QACjC,IAAG1L,EAAE4C,GAAGlM,EAAEqN,EAAIkI,GAAKjM,EAAE4C,GAAGlM,EAAEQ,EAAIwU,EAAG,CAAE2mD,GAAM,CAAG,OAC5CA,EAAKryD,EAAE4C,GAAG/M,EAAEkO,EAAI/D,EAAE4C,GAAGlM,EAAEqN,EAAI,CAAGwkC,GAAKvoC,EAAE4C,GAAG/M,EAAEqB,EAAI8I,EAAE4C,GAAGlM,EAAEQ,EAAI,CAAG,OAE7D,GAAGm7D,EAAK,EAAG,QACX,IAAIC,GAAQ9+B,IAAazvB,EAAEkI,EAAE/U,EAAEwU,GAC/B,IAAIunB,GAAOpgC,EAAEijC,OAASC,EAAG9pB,QAAQP,GAAKqqB,EAAGu8B,EAEzC,IAAIjxD,GAAK4xB,GAAQA,EAAKv6B,GAAK,OAAUu6B,EAAKlb,GAAK8S,GAAWoI,EAAK5xB,IAAMg0B,GAAYpC,GAAOA,EAAK5xB,IAAM,MAAQ,EAC3Gq+E,KACA,IAAGrtB,EAAK,EAAGqtB,EAAGi9C,QAAUtqE,CACxB,IAAG9pB,EAAK,EAAGm3C,EAAGg9C,QAAUn0F,CACxB,IAAG11C,EAAEiqI,SAAUz7H,EAAI,gCAAkCA,EAAI,cACpD,IAAG4xB,EAAM,CACbysD,EAAG,UAAYzsD,GAAQA,EAAKt6B,GAAK,GACjC,IAAGs6B,EAAKv6B,GAAK,KAAMgnF,EAAG,UAAYzsD,EAAKv6B,CACvC,IAAGu6B,EAAKzJ,GAAK,KAAMk2D,EAAG,UAAYzsD,EAAKzJ,CACvC,IAAGyJ,EAAKprB,IAAMorB,EAAKprB,EAAE0hC,QAAU,KAAKr0C,OAAO,IAAM,IAAKmM,EAAI,YAAc4xB,EAAKprB,EAAE0hC,OAAQ,KAAOloC,EAAI,OAEnGq+E,EAAG1nC,IAAMnlD,EAAEmlD,IAAM,OAAS,IAAMsa,CAChCvhC,GAAG14B,KAAKu0B,GAAU,KAAMvrB,EAAGq+E,IAE5B,GAAIzqC,GAAW,MACf,OAAOA,GAAWlkB,EAAG19B,KAAK,IAAM,QAGjC,GAAI0pI,IAAa,qFACjB,IAAIC,IAAW,gBAEf,SAASlvB,IAAiBjpG,EAAKxF,GAC9B,GAAI66F,GAAOr1F,EAAIxB,MAAM,qCACrB,KAAI62F,GAAQA,EAAKlnG,QAAU,EAAG,KAAM,IAAIoE,OAAM,uCAC9C,IAAG8iG,EAAKlnG,QAAU,EAAG,CACpB,GAAIqO,GAAIk0B,GAAkB+mG,GAAcpiC,EAAK,GAAI76F,GAAOA,EACxDgC,GAAEgmC,SAAW,MACb,OAAOhmC,GAER,GAAIw3C,GAAKokF,IACT/iC,GAAKxwF,QAAQ,SAAShT,EAAGyM,GAAO66D,GAAkBnlB,EAAIyjF,GAAc5lI,EAAG2I,GAAO,SAAW8D,EAAI,KAC7F01C,GAAGxR,SAAW,MACd,OAAOwR,GAGR,QAASqkF,IAAmBnnG,EAAI9pB,EAAGpZ,GAClC,GAAImF,KACJ,OAAOA,GAAI3E,KAAK,IAAM,UAAYR,GAAKA,EAAEmlD,GAAK,QAAUnlD,EAAEmlD,GAAK,IAAM,IAAM,IAG5E,QAASmlF,IAAcpnG,EAAI12B,GAC1B,GAAIxM,GAAIwM,KACR,IAAIgQ,GAASxc,EAAEwc,QAAU,KAAOxc,EAAEwc,OAAS0tH,EAC3C,IAAI73E,GAASryD,EAAEqyD,QAAU,KAAOryD,EAAEqyD,OAAS83E,EAC3C,IAAIhlI,IAAOqX,EACX,IAAItL,GAAI0wB,GAAasB,EAAG,QACxBljC,GAAEijC,MAAQx/B,MAAMW,QAAQ8+B,EACxB/9B,GAAIK,KAAK6kI,GAAmBnnG,EAAIhyB,EAAGlR,GACnC,KAAI,GAAIoZ,GAAIlI,EAAErN,EAAEqN,EAAGkI,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAGjU,EAAIK,KAAKwkI,GAAc9mG,EAAIhyB,EAAGkI,EAAGpZ,GACrEmF,GAAIK,KAAK,WAAa6sD,EACtB,OAAOltD,GAAI3E,KAAK,IAGjB,QAAS+pI,IAAcrnG,EAAI7tB,EAAOmM,GACjC,GAAI69C,GAAOhqD,EAAMgqD,IACjB,KAAIA,EAAM,CAET,KAAM,2BAA6BhqD,EAAMm1H,QAAU,kBAGpD,GAAIh+H,GAAOgV,KACX,IAAG9f,GAAS,KAAM8K,EAAKy2B,MAAQvhC,CAC/B,IAAI+oI,GAAO,EAAGC,EAAO,CACrB,IAAGl+H,EAAK62B,QAAU,KAAM,CACvB,SAAU72B,GAAK62B,QAAU,SAAUonG,EAAOj+H,EAAK62B,WAC1C,CACJ,GAAIC,SAAiB92B,GAAK62B,QAAU,SAAW1B,GAAYn1B,EAAK62B,QAAU72B,EAAK62B,MAC/EonG,GAAOnnG,EAAQpyB,CAAGw5H,GAAOpnG,EAAQj/B,GAInC,GAAI8xD,GAAYhwD,KAAK0M,IAAIrG,EAAK2pD,WAAW,IAAUkJ,EAAKl/D,OACxD,IAAIsgC,IAAS58B,GAAGqN,EAAE,EAAE7M,EAAE,GAAGrB,GAAGkO,EAAEu5H,EAAKpmI,EAAEqmI,GACrC,IAAGxnG,EAAG,QAAS,CACd,GAAIK,GAAS3B,GAAasB,EAAG,QAC7BzC,GAAM58B,EAAEqN,EAAI/K,KAAK0M,IAAI4tB,EAAM58B,EAAEqN,EAAGqyB,EAAO1/B,EAAEqN,EACzCuvB,GAAM58B,EAAEQ,EAAI8B,KAAK0M,IAAI4tB,EAAM58B,EAAEQ,EAAGk/B,EAAO1/B,EAAEQ,EACzCo8B,GAAMz9B,EAAEkO,EAAI/K,KAAK2M,IAAI2tB,EAAMz9B,EAAEkO,EAAGqyB,EAAOvgC,EAAEkO,EACzCuvB,GAAMz9B,EAAEqB,EAAI8B,KAAK2M,IAAI2tB,EAAMz9B,EAAEqB,EAAGk/B,EAAOvgC,EAAEqB,EACzC,IAAGomI,IAAS,EAAGhqG,EAAMz9B,EAAEkO,EAAIu5H,EAAOlnG,EAAOvgC,EAAEkO,EAAI,EAEhD,GAAIo/C,MAAas5E,EAAO,CACxB,IAAI7sE,GAAU75B,EAAG,WAAaA,EAAG,YACjC,IAAIC,GAAK,EAAG/pB,EAAI,EAAGgqB,EAAK,EAAGvqB,EAAI,EAAG2mD,EAAK,EAAG9pB,EAAK,CAC/C,KAAIxS,EAAG,SAAUA,EAAG,WACpB,MAAMC,EAAKk8B,EAAKl/D,QAAUiZ,EAAI+8C,IAAahzB,EAAI,CAC9C,GAAIhX,GAAMkzC,EAAKl8B,EACf,IAAIwnG,GAAsBx+G,GAAM,CAC/B,GAAI3f,EAAKukG,QAAS,QAClBh0C,GAAQ3jD,IAAMutC,OAAQ,MAEvB,GAAIikF,GAAQz+G,EAAS,KACrB,KAAIiX,EAAKvqB,EAAI,EAAGuqB,EAAKwnG,EAAKzqI,SAAUijC,EAAI,CACvC,GAAI9hB,GAAMspH,EAAKxnG,EACf,IAAI52B,EAAKukG,SAAW45B,GAAsBrpH,GAAM,QAChD,IAAIzb,GAAIyb,EAAIupH,aAAa,UAAYvpH,EAAIwpH,aAAa,UAAYxpH,EAAIupH,aAAa,KAAOvpH,EAAIwpH,aAAa,KAAO7xG,GAAW3X,EAAIypH,UACjI,IAAIp0G,GAAIrV,EAAIwpH,aAAa,WAAaxpH,EAAIwpH,aAAa,IACvD,KAAIlB,EAAO,EAAGA,EAAOt5E,EAAOnwD,SAAUypI,EAAM,CAC3C,GAAI38H,GAAIqjD,EAAOs5E,EACf,IAAG38H,EAAEpJ,EAAEQ,GAAKwU,EAAI6xH,GAAQz9H,EAAEpJ,EAAEqN,EAAIkI,EAAIqxH,GAAQrxH,EAAIqxH,GAAQx9H,EAAEjK,EAAEkO,EAAG,CAAE2H,EAAI5L,EAAEjK,EAAEqB,EAAE,EAAIqmI,CAAMd,IAAQ,GAG9Fl0F,GAAMp0B,EAAIwpH,aAAa,YAAc,CACrC,KAAMtrE,GAAOl+C,EAAIwpH,aAAa,YAAc,GAAK,GAAKp1F,EAAG,EAAG4a,EAAO9qD,MAAM3B,GAAGqN,EAAEkI,EAAIqxH,EAAKpmI,EAAEwU,EAAI6xH,GAAM1nI,GAAGkO,EAAEkI,EAAIqxH,GAAQjrE,GAAI,GAAK,EAAGn7D,EAAEwU,EAAI6xH,GAAQh1F,GAAI,GAAK,IACvJ,IAAI11C,IAAK8F,EAAE,IAAKD,EAAEA,EAClB,IAAIkkI,GAAKzoH,EAAIwpH,aAAa,WAAaxpH,EAAIwpH,aAAa,MAAQ,EAChE,IAAGjlI,GAAK,KAAM,CACb,GAAGA,EAAE1F,QAAU,EAAGH,EAAE8F,EAAIikI,GAAM,QACzB,IAAGv9H,EAAKkR,KAAO7X,EAAEqmB,OAAO/rB,QAAU,GAAK4pI,GAAM,IAAI,MACjD,IAAGlkI,IAAM,OAAQ7F,GAAK8F,EAAE,IAAKD,EAAE,UAC/B,IAAGA,IAAM,QAAS7F,GAAK8F,EAAE,IAAKD,EAAE,WAChC,KAAIzD,MAAMoxB,GAAS3tB,IAAK7F,GAAK8F,EAAE,IAAKD,EAAE2tB,GAAS3tB,QAC/C,KAAIzD,MAAM4xB,GAAUnuB,GAAG4H,WAAY,CACvCzN,GAAM8F,EAAE,IAAKD,EAAEurB,GAAUvrB,GACzB,KAAI2G,EAAKo3B,UAAW5jC,GAAM8F,EAAE,IAAKD,EAAE4qB,GAAQzwB,EAAE6F,GAC7C7F,GAAE22B,EAAInqB,EAAK4I,QAAUvO,EAAU,KAGjC,GAAG7G,EAAE22B,IAAMh0B,WAAag0B,GAAK,KAAM32B,EAAE22B,EAAIA,CAGzC,IAAI3hB,GAAI,GAAIg2H,EAAQ1pH,EAAI2pH,qBAAqB,IAC7C,IAAGD,GAASA,EAAM7qI,OAAQ,IAAI,GAAI+qI,GAAQ,EAAGA,EAAQF,EAAM7qI,SAAU+qI,EAAO,GAAGF,EAAME,GAAOL,aAAa,QAAS,CACjH71H,EAAIg2H,EAAME,GAAOJ,aAAa,OAAS,IAAG91H,EAAE3S,OAAO,IAAM,IAAK,MAE/D,GAAG2S,GAAKA,EAAE3S,OAAO,IAAM,KAAO2S,EAAEnU,MAAM,EAAG,IAAIkT,eAAiB,cAAe/T,EAAEgV,GAAO0hC,OAAQ1hC,EAC9F,IAAGxI,EAAKy2B,MAAO,CAAE,IAAIC,EAAG9pB,EAAIqxH,GAAOvnG,EAAG9pB,EAAIqxH,KAAYvnG,GAAG9pB,EAAIqxH,GAAM5xH,EAAI6xH,GAAQ1qI,MAC1EkjC,GAAGvC,IAAat8B,EAAEwU,EAAI6xH,EAAMx5H,EAAEkI,EAAIqxH,KAAUzqI,CACjD,IAAGygC,EAAMz9B,EAAEqB,EAAIwU,EAAI6xH,EAAMjqG,EAAMz9B,EAAEqB,EAAIwU,EAAI6xH,CACzC7xH,IAAK68B,IAEJt8B,EAEH,GAAGk3C,EAAOnwD,OAAQ+iC,EAAG,YAAcA,EAAG,gBAAkBv+B,OAAO2rD,EAC/D7vB,GAAMz9B,EAAEkO,EAAI/K,KAAK2M,IAAI2tB,EAAMz9B,EAAEkO,EAAGkI,EAAI,EAAIqxH,EACxCvnG,GAAG,QAAUrB,GAAapB,EAC1B,IAAGrnB,GAAK+8C,EAAWjzB,EAAG,YAAcrB,IAAcpB,EAAMz9B,EAAEkO,EAAImuD,EAAKl/D,OAAOgjC,EAAG/pB,EAAE,EAAIqxH,EAAKhqG,GACxF,OAAOyC,GAGR,QAASioG,IAAgB91H,EAAOmM,GAC/B,GAAIhV,GAAOgV,KACX,IAAI0hB,GAAK12B,EAAKy2B,WACd,OAAOsnG,IAAcrnG,EAAI7tB,EAAOmM,GAGjC,QAAS4pH,IAAc/1H,EAAO7I,GAC7B,GAAIxM,GAAI0iC,GAAkByoG,GAAgB91H,EAAO7I,GAAOA,EAExD,OAAOxM,GAGR,QAAS2qI,IAAsBU,GAC9B,GAAIt6B,GAAU,EACd,IAAIu6B,GAAqBC,GAAgCF,EACzD,IAAGC,EAAoBv6B,EAAUu6B,EAAmBD,GAASG,iBAAiB,UAC9E,KAAIz6B,EAASA,EAAUs6B,EAAQp3F,OAASo3F,EAAQp3F,MAAM88D,OACtD,OAAOA,KAAY,OAIpB,QAASw6B,IAAgCF,GAExC,GAAGA,EAAQI,cAAcC,mBAAsBL,GAAQI,cAAcC,YAAYC,mBAAqB,WAAY,MAAON,GAAQI,cAAcC,YAAYC,gBAE3J,UAAUA,oBAAqB,WAAY,MAAOA,iBAClD,OAAO,MAGR,QAASC,IAAavgH,GAErB,GAAIwgH,GAAQxgH,EACV7oB,QAAQ,YAAa,KAAK0pB,OAAO1pB,QAAQ,MAAO,KAChDA,QAAQ,cAAc,KACtBA,QAAQ,6BAA8B,SAASoO,EAAGC,GAAM,MAAOpN,OAAM6N,SAAST,EAAG,IAAI,GAAGrQ,KAAK,OAC7FgC,QAAQ,qBAAqB,MAC7BA,QAAQ,uBAAuB,KACjC,IAAIqD,GAAIyxB,GAAYu0G,EAAMrpI,QAAQ,WAAW,IAE7C,QAAQqD,GAIT,QAASimI,IAAiBvmI,EAAGic,EAAOuqH,GACnC,GAAIC,GAAoBD,KACxB,IAAI/5H,GAAMmoB,GAAe50B,EACzB60B,IAAUo5C,UAAY,CACtBxhE,GAAMA,EAAIxP,QAAQ,sBAAsB,IAAIA,QAAQ,+BAA+B,GACnF,IAAI80C,GAAI20F,EAAOr0D,EAAK,GAAIs0D,EAAM,GAAIl/H,EAAGm/H,EAAQ,EAAGjqD,GAAQ,EAAGkqD,EAAQ,MAAOhuH,EAAU,EACpF,OAAOk5B,EAAKld,GAAUod,KAAKxlC,GAAO,CACjC,OAAQslC,EAAG,GAAGA,EAAG,GAAG90C,QAAQ,OAAO,KAEnC,IAAK,gBACL,IAAK,kBACL,IAAK,oBACL,IAAK,cACL,IAAK,cACL,IAAK,aACJ,GAAG80C,EAAG,KAAK,IAAK,CACf80F,EAAQ,KACR,IAAGH,EAAM,yBAA2B,QAAS,CAC5C,GAAGr0D,EAAGpnE,MAAM,KAAMonE,EAAKA,EAAGp1E,QAAQ,KAAM,YACnC,IAAGo1E,EAAGpnE,MAAM,KAAMonE,EAAKA,EAAGp1E,QAAQ,KAAM,YACxC,IAAGo1E,EAAGpnE,MAAM,KAAMonE,EAAKA,EAAGp1E,QAAQ,KAAM,QAE9CwpI,EAAkBC,EAAMhvH,MAAQ26D,CAChCA,GAAK,OACC,IAAGtgC,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAK,CAC/CisI,EAAQ,IACRx0D,GAAK,EACLq0D,GAAQ11G,GAAY+gB,EAAG,GAAI,OAC1B,MAGH,IAAK,gBACJ,GAAGA,EAAG,KAAK,IAAK,CACf80F,EAAQ,KACRJ,GAAkBC,EAAMhvH,MAAQ,SAChC26D,GAAK,OACC,IAAGtgC,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAK,CAC/CisI,EAAQ,IACRx0D,GAAK,EACLq0D,GAAQ11G,GAAY+gB,EAAG,GAAI,OAC1B,MAGH,IAAK,UACJsgC,GAAM,SACN,OAED,IAAK,OACJ,GAAGtgC,EAAG,KAAK,IAAK,CACfl5B,EAAUpM,EAAInR,MAAMqhF,EAAM9nD,GAAUo5C,UAAYl8B,EAAG,GAAGn3C,OAEtD,IAAGie,GAAW,KAAO6tH,EAAM,IAAM,2BAA4Br0D,GAAM,QAC9DA,IAAM,IAAMx5D,EAAQ5b,QAAQ,KAAM,MAAQ,QACzC,IAAG80C,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAK,CAC/C+hF,EAAO9nD,GAAUo5C,UAChB,MAGH,IAAK,MAAO,CACXxmE,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,QAAOtqC,EAAE,UACR,IAAK,QAAS4qE,GAAM,GAAK,OACzB,IAAK,OAAQA,GAAM,IAAM,OACzB,QAASA,GAAM,IAAM,SAErB,MAEF,IAAK,cAAe,CACnB5qE,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,QAAOtqC,EAAE,UACR,IAAK,QAAS4qE,GAAM,KAAO,OAC3B,IAAK,OAAQA,GAAM,MAAQ,OAC3B,QAASA,GAAM,KAAO,SAEtB,MAEF,IAAK,MAAO,CACX5qE,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,QAAOtqC,EAAE,UACR,IAAK,QAAS4qE,GAAM,IAAM,OAC1B,IAAK,OAAQA,GAAM,MAAQ,OAC3B,QAASA,GAAM,MAAQ,SAEvB,MAEF,IAAK,QAAS,CACb5qE,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,QAAOtqC,EAAE,UACR,IAAK,QAAS4qE,GAAM,GAAK,OACzB,IAAK,OAAQA,GAAM,IAAM,OACzB,QAASA,GAAM,IAAM,SAErB,MAEF,IAAK,UAAW,CACf5qE,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,QAAOtqC,EAAE,UACR,IAAK,QAAS4qE,GAAM,GAAK,OACzB,IAAK,OAAQA,GAAM,IAAM,OACzB,QAASA,GAAM,IAAM,SAErB,MAEF,IAAK,QAAS,CACb5qE,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,IAAGtqC,EAAE,WAAY4qE,GAAM,IACvB,QAAO5qE,EAAE,UACR,IAAK,QAAS4qE,GAAM,GAAK,OACzB,IAAK,OAAQA,GAAM,IAAM,OACzB,QAASA,GAAM,GAAK,SAEpB,MAEF,IAAK,UAAW,CACf5qE,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,QAAOtqC,EAAE,UACR,IAAK,QAAS4qE,GAAM,GAAK,OACzB,IAAK,OAAQA,GAAM,IAAM,OACzB,QAASA,GAAM,IAAM,QAEtB,GAAG5qE,EAAE,kBAAmB4qE,GAAM,IAAM7xE,GAAK,KAAMiH,EAAE,mBAChD,MAEF,IAAK,OAAQ,CACZA,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,QAAOtqC,EAAE,UACR,IAAK,QAAS4qE,GAAM,IAAM,OAC1B,IAAK,OAAQA,GAAM,MAAQ,OAC3B,QAASA,GAAM,IAAM,SAErB,MAEF,IAAK,QACJA,GAAM,OACN,OAED,IAAK,gBACL,IAAK,UACJn1D,QAAQC,MAAM,2CAA6C40B,EAAG,GAC9D,OAED,IAAK,iBACJ,GAAGA,EAAG,KAAK,IAAK,CACfl5B,EAAUpM,EAAInR,MAAMqhF,EAAM9nD,GAAUo5C,UAAYl8B,EAAG,GAAGn3C,OAEtDy3E,IAAM,IAAMx5D,EAAQ5b,QAAQ,KAAM,MAAQ,SACpC,IAAG80C,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAK,CAC/C+hF,EAAO9nD,GAAUo5C,UAChB,MAEH,IAAK,oBAEJxmE,EAAIupB,GAAY+gB,EAAG,GAAI,MACvBsgC,IAAM,KAAO7xE,GAAK,KAAMiH,EAAE,wBAA0BA,EAAE,mBAAqB,GAAKjH,GAAK,KAAMiH,EAAE,mBAAqBA,EAAE,uBAAyB,GAAK,KAAOsrB,GAAatrB,EAAE,yBAA2B,IAAM,IAAMjH,GAAK,KAAMiH,EAAE,wBAA0B,EACtP,OAED,IAAK,WAEJA,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,MAAKtqC,EAAE,sBAAuB4qE,GAAM,QAC/BA,IAAM7xE,GAAK,KAAMiH,EAAE,sBACxB4qE,IAAM,GACNA,IAAM7xE,GAAK,KAAMiH,EAAE,yBAA2B,EAC9C4qE,IAAM,GACN,KAAI5qE,EAAE,qBAAsB4qE,GAAM5qE,EAAE,yBAC/B4qE,IAAM7xE,GAAK,KAAMiH,EAAE,2BAA6B,EACrD,OAED,IAAK,kBAEJ,GAAGsqC,EAAG,KAAK,IAAK,CACfsgC,GAAM,IAAM5lE,EAAInR,MAAMqhF,EAAM9nD,GAAUo5C,UAAYl8B,EAAG,GAAGn3C,QAAQqC,QAAQ,KAAM,MAAQ,QAChF,IAAG80C,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAK,CAC/C+hF,EAAO9nD,GAAUo5C,cACXoE,IAAM,GACb,OAED,IAAK,kBACJ5qE,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,SAAQtqC,EAAE,UAAU,IAAI+G,cAAcvR,QAAQ,IAAK,KAClD,IAAK,UAAU,IAAK,MAAOo1E,EAAK,QAAUA,CAAI,QAE/C,MAED,IAAK,eACJA,GAAM,GACN,OAED,IAAK,MAEJ5qE,EAAIupB,GAAY+gB,EAAG,GAAI,MACvB,IAAGhgB,GAAYtqB,EAAE,eAAiB,aAAc4qE,EAAKo0D,EAAkBh/H,EAAE,qBAAuB,IAAM4qE,MACjGn1D,SAAQC,MAAM,uCAAyC1V,EAAE,aAC9D,OAED,IAAK,SAEJ,GAAGsqC,EAAG,KAAK,IAAK,KAChBtqC,GAAIupB,GAAY+gB,EAAG,GAAI,MACvB40F,GAAM,EACNA,IAAOnmI,GAAK,KAAMiH,EAAE,uBAAyB,EAC7C,IAAGsrB,GAAatrB,EAAE,aAAck/H,EAAMp8H,GAAS/J,GAAK,IAAKI,KAAK2M,IAAI,EAAG,EAAIo5H,EAAI/rI,SAAW+rI,EACxF,KAAIl/H,EAAE,wBAA0BA,EAAE,kBAAmBk/H,GAAO,GAC5D,KAAIl/H,EAAE,sBAAuBk/H,GAAOnmI,GAAK,KAAMiH,EAAE,uBAAyB,EAC1E,KAAIA,EAAE,oBAAsBA,EAAE,uBAAuB,GAAIk/H,GAAOnmI,GAAK,KAAMiH,EAAE,oBAAsBA,EAAE,uBAAuB,GAC5H4qE,IAAMs0D,CACN,OAED,IAAK,gBAEJ,GAAG50F,EAAG,KAAK,IAAK,CACf,GAAG60F,GAAS,EAAGv0D,GAAM,IAAM5lE,EAAInR,MAAMqhF,EAAM9nD,GAAUo5C,UAAYl8B,EAAG,GAAGn3C,QAAQqC,QAAQ,KAAM,MAAQ,QAChGo1E,GAAKA,EAAG/2E,MAAM,EAAGsrI,GAAS,IAAMn6H,EAAInR,MAAMqhF,EAAM9nD,GAAUo5C,UAAYl8B,EAAG,GAAGn3C,QAAQqC,QAAQ,KAAM,MAAQ,IAAMo1E,EAAG/2E,MAAMsrI,OACxH,IAAG70F,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAK,CAC/C+hF,EAAO9nD,GAAUo5C,SACjB24D,KAAU51G,GAAY+gB,EAAG,GAAI,OAAO,aAAe,EAClD,QAGJ,MAAO00F,GAGR,QAASK,IAAkB9mI,EAAGic,EAAOuqH,GACnC,GAAIv/H,GAAOgV,KACX,IAAG9f,GAAS,MAAQ8K,EAAKy2B,OAAS,KAAMz2B,EAAKy2B,MAAQvhC,CACrD,IAAIsQ,GAAMmoB,GAAe50B,EACzB,IAAIqa,MAAY6L,CAChB,IAAI+K,EACJ,IAAI81G,GAAO10D,EAAK,GAAI4kC,EAAO,CAC3B,IAAI+vB,EACJ,IAAIC,EACJ,IAAI1pG,MAAaD,IACjB,IAAIK,GAAK12B,EAAKy2B,WACd,IAAIqU,GAAIhrC,CACR,IAAImgI,IAASl0G,MAAM,GACnB,IAAIm0G,GAAQ,GAAIC,EAAW,EAAGC,CAC9B,IAAIC,KACJ,IAAIzzH,IAAK,EAAGP,GAAK,EAAG4nB,GAAS58B,GAAIqN,EAAE,IAAQ7M,EAAE,KAAWrB,GAAIkO,EAAE,EAAG7M,EAAE,GACnE,IAAIyoI,GAAS,CACb,IAAId,GAAoBD,MAAYp5F,IACpC,IAAI2d,MAAay8E,KAAaC,EAAK,EAAGC,EAAK,CAC3C,IAAIlwE,MAAcmwE,EAAU,EAAGC,EAAU,CACzC,IAAIx/C,KACJ,IAAIh5C,IAAM0oB,SAAUD,WACpB,IAAIgwE,KACJ,IAAIC,IAAQ,GAAI,GAChB,IAAI/6F,MAAegd,IACnB,IAAIg+E,GAAU,GAAIC,EAAa,CAC/B,IAAIC,GAAS,MAAOC,EAAU,KAC9B,IAAIxtI,GAAI,CACR,IAAIytI,GAAU,CACdtzG,IAAUo5C,UAAY,CACtBxhE,GAAMA,EAAIxP,QAAQ,sBAAsB,IAAIA,QAAQ,+BAA+B,GACnF,OAAO80C,EAAKld,GAAUod,KAAKxlC,GAAO,OAAQslC,EAAG,GAAGA,EAAG,GAAG90C,QAAQ,OAAO,KAEpE,IAAK,SAAS,IAAK,MAClB,GAAG80C,EAAG,KAAK,IAAK,CACf,GAAG7W,EAAMz9B,EAAEqB,GAAKo8B,EAAM58B,EAAEQ,GAAKo8B,EAAMz9B,EAAEkO,GAAKuvB,EAAM58B,EAAEqN,EAAGgyB,EAAG,QAAUrB,GAAapB,OAC1EyC,GAAG,QAAU,OAClB,IAAG12B,EAAK2pD,UAAY,GAAK3pD,EAAK2pD,WAAa11B,EAAMz9B,EAAEkO,EAAG,CACrDgyB,EAAG,YAAcA,EAAG,OACpBzC,GAAMz9B,EAAEkO,EAAI1E,EAAK2pD,UAAY,CAC7BjzB,GAAG,QAAUrB,GAAapB,GAE3B,GAAG6vB,EAAOnwD,OAAQ+iC,EAAG,WAAaotB,CAClC,IAAGyM,EAAQ58D,OAAQ+iC,EAAG,SAAW65B,CACjCwvE,GAAQtvH,KAAOsvH,EAAQ,OAASA,EAAQtvH,IACxC,UAAUqW,QAAS,YAAaA,KAAKC,UAAUg5G,EAC/C1pG,GAAWr9B,KAAK+mI,EAAQtvH,KACxB6lB,GAAOypG,EAAQtvH,MAAQimB,CACvBuqG,GAAU,UAEN,IAAGn2F,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAK,CAC7CosI,EAAUh2G,GAAY+gB,EAAG,GAAI,MAC7Bl+B,GAAIP,GAAK,CACT4nB,GAAM58B,EAAEqN,EAAIuvB,EAAM58B,EAAEQ,EAAI,GAAUo8B,GAAMz9B,EAAEkO,EAAIuvB,EAAMz9B,EAAEqB,EAAI,CAC1D6+B,GAAK12B,EAAKy2B,WAAqBqtB,KAC/ByM,KACA0wE,GAAU,KAEX,MAED,IAAK,kBACJ,GAAGn2F,EAAG,KAAO,MAAOw1F,QAAeA,CACnC,OACD,IAAK,aAAa,IAAK,IACtB,GAAGx1F,EAAG,KAAO,IAAK,CAAEl+B,GAAG8zH,CAASA,GAAU,CAAG,OAC7CV,EAASj2G,GAAY+gB,EAAG,GAAI,MAC5B,IAAGk1F,EAAO,MAAOpzH,EAAIozH,EAAO,MAAQ,MAAQ,IAAGpzH,IAAM,EAAGA,EAAI,CAC5D8zH,IAAWV,EAAO,yBAA2B,CAE7C,IAAGU,EAAU,GAAI,IAAIjtI,EAAI,EAAGA,EAAIitI,IAAWjtI,EAAG,GAAG6sI,EAAS,EAAG/vE,EAAQ3jD,EAAInZ,IAAMunD,MAAOslF,EACtFj0H,IAAK,CAAG,OACT,IAAK,qBACJ,GAAGy+B,EAAG,KAAO,MAAOz+B,CACpB,IAAGrM,EAAKm3B,WAAY,CACnB,GAAGn3B,EAAKy2B,MAAO,CAAE,IAAIC,EAAG9pB,GAAI8pB,EAAG9pB,KAAS8pB,GAAG9pB,GAAGP,IAAM/S,EAAE,SACjDo9B,GAAGvC,IAAazvB,EAAEkI,EAAE/U,EAAEwU,MAAQ/S,EAAE,KAEtC4mI,EAAQ,EAAIG,KACZ,OACD,IAAK,cAAc,IAAK,KACvB,GAAGv1F,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAK,GACtC0Y,CACF4zH,GAAOl2G,GAAY+gB,EAAG,GAAI,MAC1B61F,GAAU77H,SAASm7H,EAAK,4BAA4B,IAAK,GACzDngI,IAAMxG,EAAE,IAAKD,EAAE,KACf,IAAG4mI,EAAKxuE,SAAWzxD,EAAK0/F,aAAe,MAAO5/F,EAAEyI,EAAI2vF,GAAmBptE,GAAYm1G,EAAKxuE,SACxF,IAAGwuE,EAAK,eAAiB95F,EAAO85F,EAAK,eAAgBngI,EAAEqqB,EAAIgc,EAAO85F,EAAK,cACvE,KAAIA,EAAK,SAAWA,EAAK,gBAAkB,SAAU,CACpDngI,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIyxB,GAAYm1G,EAAK,iBAAmB,GACrD,IAAGjgI,EAAKy2B,MAAO,CACd,IAAIC,EAAG9pB,GAAI8pB,EAAG9pB,KACd8pB,GAAG9pB,GAAGP,GAAKvM,MACL,CACN42B,EAAGvC,IAAazvB,EAAEkI,EAAE/U,EAAEwU,KAAOvM,GAG/BuM,GAAIs0H,EAAQ,MACN,IAAG71F,EAAG,KAAK,IAAK,GACpBz+B,CACF6zH,GAAQ,EAAIC,GAAW,CAAGE,KAC1BM,GAAU,CACV,IAAIQ,GAAOT,EAAU9zH,EAAI8zH,EAAU,EAAI9zH,CACvC,IAAGP,EAAI4nB,EAAMz9B,EAAEqB,EAAGo8B,EAAMz9B,EAAEqB,EAAIwU,CAC9B,IAAGA,EAAI4nB,EAAM58B,EAAEQ,EAAGo8B,EAAM58B,EAAEQ,EAAIwU,CAC9B,IAAGO,EAAIqnB,EAAM58B,EAAEqN,EAAGuvB,EAAM58B,EAAEqN,EAAIkI,CAC9B,IAAGu0H,EAAOltG,EAAMz9B,EAAEkO,EAAGuvB,EAAMz9B,EAAEkO,EAAIy8H,CACjClB,GAAOl2G,GAAY+gB,EAAG,GAAI,MAC1BhF,KAAegd,KACfhjD,IAAMxG,EAAE2mI,EAAK,SAAWA,EAAK,cAAe5mI,EAAE,KAC9C,IAAG4mI,EAAK,eAAiB95F,EAAO85F,EAAK,eAAgBngI,EAAEqqB,EAAIgc,EAAO85F,EAAK,cACvE,IAAGjgI,EAAK0/F,YAAa,CACpB,GAAGugC,EAAKxuE,QAASwuE,EAAKxuE,QAAU3mC,GAAYm1G,EAAKxuE,QACjD,IAAGwuE,EAAK,kCAAoCA,EAAK,8BAA+B,CAC/EO,EAAK17H,SAASm7H,EAAK,8BAA8B,KAAO,CACxDQ,GAAK37H,SAASm7H,EAAK,iCAAiC,KAAO,CAC3DM,IAAUlpI,GAAIqN,EAAEkI,EAAE/U,EAAEwU,GAAI7V,GAAGkO,EAAEkI,EAAI4zH,EAAG,EAAE3oI,EAAEwU,EAAIo0H,EAAG,GAC/C3gI,GAAEi3C,EAAI1hB,GAAakrG,EACnBp/C,GAAOnoF,MAAMunI,EAAQzgI,EAAEi3C,IAExB,GAAGkpF,EAAKxuE,QAAS3xD,EAAEyI,EAAI2vF,GAAmB+nC,EAAKxuE,aAC1C,KAAIh+D,EAAI,EAAGA,EAAI0tF,EAAOxtF,SAAUF,EACpC,GAAGmZ,GAAKu0E,EAAO1tF,GAAG,GAAG4D,EAAEqN,GAAKkI,GAAKu0E,EAAO1tF,GAAG,GAAG+C,EAAEkO,EAC/C,GAAG2H,GAAK80E,EAAO1tF,GAAG,GAAG4D,EAAEQ,GAAKwU,GAAK80E,EAAO1tF,GAAG,GAAG+C,EAAEqB,EAC/CiI,EAAEi3C,EAAIoqC,EAAO1tF,GAAG,GAEpB,GAAGwsI,EAAK,2BAA6BA,EAAK,uBAAwB,CACjEO,EAAK17H,SAASm7H,EAAK,uBAAuB,KAAO,CACjDQ,GAAK37H,SAASm7H,EAAK,0BAA0B,KAAO,CACpDM,IAAUlpI,GAAIqN,EAAEkI,EAAE/U,EAAEwU,GAAI7V,GAAGkO,EAAEkI,EAAI4zH,EAAG,EAAE3oI,EAAEwU,EAAIo0H,EAAG,GAC/C38E,GAAO9qD,KAAKunI,GAIb,GAAGN,EAAK,2BAA4BU,EAAU77H,SAASm7H,EAAK,2BAA4B,GAGxF,QAAOngI,EAAExG,GACR,IAAK,UAAWwG,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIyyB,GAAam0G,EAAK,oBAAuBA,EAAK,kBAAoB,CAAI,OACvG,IAAK,QAASngI,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIgP,WAAW43H,EAAKl0G,MAAQ,OACvD,IAAK,aAAcjsB,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIgP,WAAW43H,EAAKl0G,MAAQ,OAC5D,IAAK,WAAYjsB,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIgP,WAAW43H,EAAKl0G,MAAQ,OAC1D,IAAK,OAAQjsB,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIurB,GAAUq7G,EAAK,cAC5C,KAAIjgI,EAAKo3B,UAAW,CAAEt3B,EAAExG,EAAI,GAAKwG,GAAEzG,EAAI4qB,GAAQnkB,EAAEzG,EAAG8uC,EAAGyoB,QAAQ9vD,UAAYogI,EAC3E,IAAIphI,EAAEqqB,EAAGrqB,EAAEqqB,EAAI,QAAU,OAC1B,IAAK,OAAQrqB,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIkrB,GAAa07G,EAAK,eAAe,KAC9D,IAAGjgI,EAAKo3B,UAAW,CAAEt3B,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIgrB,GAAQvkB,EAAEzG,GAChD,IAAIyG,EAAEqqB,EAAGrqB,EAAEqqB,EAAI,UAAY,OAC5B,IAAK,SAAUrqB,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIgP,WAAW43H,EAAK,QAAU,OAC1D,QACC,GAAGngI,EAAExG,IAAM,UAAYwG,EAAExG,IAAM,SAAWwG,EAAExG,EAAG,CAC9CwG,EAAExG,EAAI,GACN,IAAG2mI,EAAK,iBAAmB,KAAM,CAAEC,EAAQp1G,GAAYm1G,EAAK,gBAAkBI,WACxE,MAAM,IAAItoI,OAAM,0BAA4B+H,EAAExG,SAEjD,CACN0nI,EAAS,KACT,IAAGlhI,EAAExG,IAAM,IAAK,CACfwG,EAAEzG,EAAI6mI,GAAS,EACf,IAAGG,EAAM1sI,OAAQmM,EAAE8M,EAAIyzH,CACvBW,GAASb,GAAY,EAEtB,GAAGS,EAAK12F,OAAQpqC,EAAE0I,EAAIo4H,CACtB,IAAG96F,EAASnyC,OAAS,EAAG,CAAEmM,EAAEjI,EAAIiuC,CAAUA,MAC1C,GAAGo6F,GAASlgI,EAAK2xD,WAAa,MAAO7xD,EAAEkC,EAAIk+H,CAC3C,IAAGc,EAAQ,CAAElhI,EAAExG,EAAI,UAAYwG,GAAEzG,EACjC,IAAI2nI,GAAUhhI,EAAKm3B,WAAY,CAC9B,KAAKn3B,EAAK2pD,WAAa3pD,EAAK2pD,WAAa/8C,GAAI,CAC5C,IAAI,GAAIw0H,GAAM,EAAGA,EAAMV,IAAWU,EAAK,CACtCT,EAAU77H,SAASm7H,EAAK,4BAA4B,IAAK,GACzD,IAAGjgI,EAAKy2B,MAAO,CACd,IAAIC,EAAG9pB,EAAIw0H,GAAM1qG,EAAG9pB,EAAIw0H,KACxB1qG,GAAG9pB,EAAIw0H,GAAK/0H,GAAK+0H,GAAO,EAAIthI,EAAI+mB,GAAI/mB,EACpC,SAAQ6gI,EAAU,EAAGjqG,EAAG9pB,EAAIw0H,GAAK/0H,EAAIs0H,GAAW95G,GAAI/mB,OAC9C,CACN42B,EAAGvC,IAAazvB,EAAEkI,EAAIw0H,EAAIvpI,EAAEwU,KAAOvM,CACnC,SAAQ6gI,EAAU,EAAGjqG,EAAGvC,IAAazvB,EAAEkI,EAAIw0H,EAAIvpI,EAAEwU,EAAIs0H,KAAa95G,GAAI/mB,GAEvE,GAAGm0B,EAAMz9B,EAAEqB,GAAKwU,EAAG4nB,EAAMz9B,EAAEqB,EAAIwU,IAIlCs0H,EAAU77H,SAASm7H,EAAK,4BAA4B,IAAK,GACzD5zH,IAAKs0H,EAAQ,CAAGA,GAAU,CAC1B7gI,KACAogI,GAAQ,EAAIG,MAEbO,IACA,OAGD,IAAK,YACL,IAAK,oBAAoB,IAAK,UAC9B,IAAK,eAAe,IAAK,MACzB,IAAK,WACL,IAAK,UACL,IAAK,mBACL,IAAK,gBACJ,GAAG91F,EAAG,KAAK,IAAI,CAAC,IAAI7rB,EAAI7L,EAAMmB,OAAO,KAAKu2B,EAAG,GAAI,KAAM,cAAc7rB,MAChE,IAAG6rB,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAKyf,EAAMpa,MAAM8xC,EAAG,GAAI,MACjE,OAED,IAAK,aACJ,GAAGA,EAAG,KAAK,IAAI,CACd,IAAI7rB,EAAI7L,EAAMmB,OAAO,KAAKu2B,EAAG,GAAI,KAAM,cAAc7rB,CACrD6jC,GAAQxpD,EAAI4mI,CACZ,IAAGG,EAAM1sI,OAAQmvD,EAAQl2C,EAAIyzH,CAC7Bv9E,GAAQzpC,EAAIynH,CACZh7F,GAAS9sC,KAAK8pD,OAEV,IAAGhY,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAK,CAACyf,EAAMpa,MAAM8xC,EAAG,GAAI,QAClEg2F,EAAU,EAAIC,GAAa,CAC3Bb,GAAQ,EAAIC,GAAW,CAAGE,KAC1B,OAED,IAAK,UACJ,GAAGv1F,EAAG,KAAK,IAAK,CAAEg2F,EAAUt7H,EAAInR,MAAM0sI,EAAWj2F,EAAG5Q,WAC/C6mG,GAAaj2F,EAAG5Q,MAAQ4Q,EAAG,GAAGn3C,MACnC,OAGD,IAAK,QAAQ,IAAK,OAClB,IAAK,YACL,IAAK,mBACL,IAAK,2BACL,IAAK,yBACL,IAAK,yBACL,IAAK,UACL,IAAK,SACL,IAAK,YACL,IAAK,SACL,IAAK,qBACL,IAAK,cACL,IAAK,QACL,IAAK,aACL,IAAK,mBACL,IAAK,QACJ,GAAGm3C,EAAG,KAAK,IAAI,CAAC,IAAI7rB,EAAI7L,EAAMmB,OAAO,KAAKu2B,EAAG,GAAI,KAAM,cAAc7rB,MAChE,IAAG6rB,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAKyf,EAAMpa,MAAM8xC,EAAG,GAAI,OACjEo1F,GAAQ,EAAIC,GAAW,CAAGE,KAC1B,OAED,IAAK,qBACL,IAAK,mBACL,IAAK,iBACJ,MAED,IAAK,cACL,IAAK,iBACL,IAAK,gBACL,IAAK,kBACL,IAAK,oBACL,IAAK,cACL,IAAK,aACJ,GAAGv1F,EAAG,KAAK,IAAI,CACd,GAAIu2F,GAAUzzG,GAAUo5C,SACxBs4D,IAAiB95H,EAAInR,MAAMyrI,EAAOlyG,GAAUo5C,WAAYhyD,EAAOwqH,EAC/D5xG,IAAUo5C,UAAYq6D,MAChB,IAAGv2F,EAAG,GAAGj1C,OAAOi1C,EAAG,GAAGn3C,OAAO,KAAO,IAAK,CAC/CmsI,EAAQlyG,GAAUo5C,UAAYl8B,EAAG,GAAGn3C,OACnC,MAEH,IAAK,SAAU,MACf,IAAK,YAAa,MAClB,IAAK,mBAAoB,MAEzB,IAAK,iBACL,IAAK,cAAe,MACpB,IAAK,QAAS,CACb,GAAI2tI,GAAWv3G,GAAY+gB,EAAG,GAAI,MAClC,IAAGw2F,EAAS,WAAa,cAAgB9B,EAAkB8B,EAAS,oBAAqBn7F,EAAOm7F,EAAS,SAAW9B,EAAkB8B,EAAS,oBAC9I,MACF,IAAK,MAAO,MACZ,IAAK,YAAa,MAElB,IAAK,uBAAwB,MAC7B,IAAK,mBAAoB,MACzB,IAAK,0BAA2B,MAChC,IAAK,uBAAwB,MAC7B,IAAK,wBAAyB,MAE9B,IAAK,SACJ,MAED,IAAK,WAAY,MAEjB,IAAK,OACL,IAAK,SACL,IAAK,QACL,IAAK,OACL,IAAK,eACL,IAAK,gBACL,IAAK,WACL,IAAK,SACL,IAAK,WACL,IAAK,WACL,IAAK,QACJ,MAED,IAAK,UAAW,MAChB,IAAK,OACJ,GAAGx2F,EAAG,GAAGz2C,OAAO,KAAO,KAAM,UACxB,IAAGy2C,EAAG,KAAK,IAAK,OAAO13B,EAAMA,EAAMzf,OAAO,GAAG,IACjD,IAAK,gBACL,IAAK,cACL,IAAK,aACJy3E,GAAM5lE,EAAInR,MAAM27G,EAAMllE,EAAG5Q,MACzB,YAEG81E,GAAOllE,EAAG5Q,MAAQ4Q,EAAG,GAAGn3C,MAC7B,OAED,IAAK,cACJq2B,EAAMD,GAAY+gB,EAAG,GAAI,MACzB+1F,GAAOzoC,GAAcpuE,EAAI,sBACzB,IAAIu3G,IAAWt/E,KAAKj4B,EAAIvZ,KAAM0gD,IAAI0vE,EAAK,GAAK,IAAMA,EAAK,GACvD,IAAGI,EAASM,EAAOrwE,MAAQ76B,EAAW1iC,MACtCw0C,GAAG0oB,MAAM73D,KAAKuoI,EACd,OAED,IAAK,eAAgB,MACrB,IAAK,kBAAmB,MACxB,IAAK,gBAAiB,MAEtB,IAAK,QAAQ,IAAK,OAAQ,MAE1B,IAAK,QAAS,MACd,IAAK,eAAgB,MACrB,IAAK,oBAAqB,MAC1B,IAAK,aAAc,MAEnB,IAAK,qBAAsB,MAC3B,IAAK,uBAAwB,MAC7B,IAAK,gBAAiB,MAEtB,IAAK,YACJv3G,EAAMD,GAAY+gB,EAAG,GAAI,MACzB,QAAO9gB,EAAI,eACV,IAAK,aAAcme,EAAGyoB,QAAQ9vD,SAAW,KAEzC,IAAK,aAAcogI,EAAU,GAE9B,MAED,IAAK,qBAAsB,MAC3B,IAAK,uBAAwB,MAC7B,IAAK,oBAAqB,MAC1B,IAAK,cAAe,MACpB,IAAK,eAAgB,MACrB,IAAK,mBAAoB,MACzB,IAAK,OAAQ,MACb,IAAK,UAAW,MAChB,IAAK,cAAe,MAEpB,IAAK,MAAO,MACZ,IAAK,aAAc,MACnB,IAAK,OAAQ,MACb,IAAK,KAAK,IAAK,MACd,IAAI,iBAAiBhuI,QAAQkgB,EAAMA,EAAMzf,OAAO,GAAG,KAAO,EAAG,KAC7D,IAAGm3C,EAAG,KAAK,OAASm1F,IAASA,EAAK,iBAAkB,CACnD,GAAIuB,IAAMpC,GAAa55H,EAAInR,MAAM8rI,EAASr1F,EAAG5Q,OAAQkmG,EACrDF,IAASA,EAAMvsI,OAAS,EAAIusI,EAAQ,KAAO,IAAMsB,GAAI,OAC/C,CAAEpB,EAAWr2G,GAAY+gB,EAAG,GAAI,MAAQq1F,GAAWr1F,EAAG5Q,MAAQ4Q,EAAG,GAAGn3C,OAC3E,MACD,IAAK,IAAK,MAEV,IAAK,iBACJ,GAAGm3C,EAAG,KAAK,IAAK,KAChB,KACC+1F,EAAOzoC,GAAcruE,GAAY+gB,EAAG,IAAI,wBACxCxU,GAAOuqG,EAAK,IAAI,gBAAmB79E,IAAI69E,EAAK,IAC3C,MAAMrqI,KACR,MAED,IAAK,OAAQ,MAEb,IAAK,SAAU,MACf,IAAK,SAAS,IAAK,KAAM,MACzB,IAAK,OAAQ,MACb,IAAK,cAAe,MAGpB,IAAK,eAAgB,MACrB,IAAK,WAAY,MAEjB,IAAK,YAAa,MAClB,IAAK,sBAAuB,MAC5B,IAAK,qBAAsB,MAC3B,IAAK,eAAgB,MACrB,IAAK,gBAAiB,MACtB,IAAK,kBAAmB,MACxB,IAAK,SAAU,MACf,IAAK,aAAc,MACnB,IAAK,YAAa,MAClB,IAAK,mBAAoB,MAEzB,IAAK,0BAA2B,MAChC,IAAK,0BAA2B,MAChC,IAAK,wBAAyB,MAG9B,IAAK,oBACL,IAAK,mBACL,IAAK,mBACL,IAAK,gBACL,IAAK,mBACL,IAAK,gBACL,IAAK,wBACL,IAAK,cACL,IAAK,kBACL,IAAK,qBACL,IAAK,iBACL,IAAK,eACL,IAAK,sBACL,IAAK,kBACL,IAAK,4BACL,IAAK,eACL,IAAK,mBACL,IAAK,WACL,IAAK,aACL,IAAK,iBACL,IAAK,aACJ,MAED,IAAK,iBACJ,MAED,IAAK,mBACL,IAAK,iBACL,IAAK,cACL,IAAK,aACL,IAAK,sBACL,IAAK,gBACL,IAAK,oBACL,IAAK,iBACJ,MAGD,IAAK,cACJ,MAGD,IAAK,cAAe,MACpB,IAAK,aAAc,MACnB,IAAK,OAAQ,MAGb,IAAK,oBAAqB,MAC1B,IAAK,YAAa,MAClB,IAAK,YAAa,MAClB,IAAK,oBAAqB,MAG1B,IAAK,oBACL,IAAK,qBACL,IAAK,kBACL,IAAK,oBACL,IAAK,oBACL,IAAK,wBACL,IAAK,uBACL,IAAK,sBACL,IAAK,qBACL,IAAK,2BACL,IAAK,wBACL,IAAK,0BACL,IAAK,8BACL,IAAK,qBACL,IAAK,oBACL,IAAK,0BACJ,MAGD,IAAK,OACJ,MAGD,IAAK,wBACL,IAAK,uBACL,IAAK,YACL,IAAK,aACJ,MAED,IAAK,aAAc,MACnB,IAAK,WAAY,MAEjB,IAAK,IACJ,GAAGs0C,EAAG,KAAM,IAAK,CAChB81F,EAAO72G,GAAY+gB,EAAG,GAAI,MAC1B,KAAI81F,EAAKr+G,KAAM,KACfq+G,GAAK12F,OAASpf,GAAY81G,EAAKr+G,YAAcq+G,GAAKr+G,IAClD,IAAGq+G,EAAK12F,OAAOr0C,OAAO,IAAM,KAAO+qI,EAAK12F,OAAOh3C,QAAQ,MAAQ,EAAG,CACjE2tI,EAAOzoC,GAAcwoC,EAAK12F,OAAO71C,MAAM,GACvCusI,GAAK12F,OAAS,IAAM22F,EAAK,GAAK,IAAMA,EAAK,OACnC,IAAGD,EAAK12F,OAAOlmC,MAAM,eAAgB48H,EAAK12F,OAAS02F,EAAK12F,OAAO71C,MAAM,GAE7E,MAGD,IAAK,mBAAoB,MACzB,IAAK,yBAA0B,MAC/B,IAAK,+BAAgC,MACrC,QAAS,OAAOy2C,EAAG,IAClB,IAAK,OACL,IAAK,YACL,IAAK,UACL,IAAK,QACL,IAAK,aACL,IAAK,SACL,IAAK,UACL,IAAK,UACL,IAAK,SACL,IAAK,QACL,IAAK,MACL,IAAK,KACJ,MACD,QAAS,GAAG9qC,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM+yC,MAGxC,GAAInyC,KACH29B,OAAQA,EACRD,WAAYA,EACZs6B,SAAUxoB,EAEX,IAAGnoC,EAAK6xG,iBAAmBl5G,IAAI29B,MAC/B,OAAO39B,IAGT,QAAS8oI,IAAUj5G,EAAKxoB,GACvBA,EAAOA,KACP,IAAGuoB,GAAeC,EAAK,yBAA0BqiB,GAAeliB,GAAWH,EAAK,yBAA0BxoB,EAC1G,IAAImmC,GAAStd,GAAUL,EAAK,aAC5B,IAAIk5G,GAASv7F,GAAUm5F,GAAiBhzG,GAAS6Z,GAASnmC,EAC1D,IAAItH,GAAUmwB,GAAUL,EAAK,cAC7B,KAAI9vB,EAAS,KAAM,IAAIX,OAAM,wCAC7B,IAAIyhD,GAAKqmF,GAAkBvzG,GAAS5zB,GAAUsH,EAAM0hI,EACpD,IAAGn5G,GAAeC,EAAK,YAAagxB,EAAGvN,MAAQR,GAAiB9iB,GAAWH,EAAK,YAChFgxB,GAAGxR,SAAW,KACd,OAAOwR,GAER,QAAS83D,IAAW/9G,EAAMyM,GACzB,GAAIw5C,GAAKqmF,GAAkBtsI,EAAMyM,EACjCw5C,GAAGxR,SAAW,MACd,OAAOwR,GAIR,GAAImoF,IAAkC,WACrC,GAAIC,IACH,yBACC,oEACC,kBACA,6CACA,kBACA,6CACD,uBACD,2BACC5tI,KAAK,GAEP,IAAI4d,GAAU,2BAA6B0b,IAC1Cu0G,eAAkB,mDAClBC,cAAkB,kDAClBC,cAAkB,kDAClBC,aAAkB,iDAClBC,aAAkB,oDAClBC,WAAkB,8DAClBC,cAAkB,+BAClBr2F,WAAkB,mCAClBs2F,eAAkB,sDAClBC,YAAkB,2DAClBC,WAAkB,+CAClBC,iBAAkB,QACd,IAAMX,EAAgB,2BAE3B,OAAO,SAASY,KACf,MAAOh5G,IAAa5X,KAKtB,SAAS6wH,IAAwB17B,EAAI+4B,GACpC,GAAIh9H,GAAO,SAAU8O,EAAU,GAAI8wH,GAAUC,aAAc7C,GAASjoI,EAAI,GAAIpE,EAAI,CAChFszG,GAAKA,EAAG/wG,QAAQ,SAAU,IAE1BuN,GAAG,CAEF,GAAGwjG,EAAG7zG,QAAQ,MAAQ,EAAG,CACxB+iB,QAAQC,MAAM,8DAAgE6wF,EAC9EA,GAAKA,EAAG1yG,MAAM,EAAG0yG,EAAG7zG,QAAQ,MAG7B,GAAG6zG,GAAM,IAAK,CAAEjkG,EAAO,MAAQ8O,GAAU,wBAA0B,MAAMrO,GAGzE,GAAGwjG,EAAG7zG,QAAQ,OAAS,EAAG,CAAE4P,EAAO,WAGnC,GAAGikG,EAAGtzG,IAAM,IAAK,CAChBoE,EAAI,EACJ,OAAMkvG,IAAKtzG,IAAM,KAAOszG,IAAKtzG,IAAM,IAAKoE,GAAKkvG,EAAGtzG,KAAMA,CACtD,IAAGszG,EAAGtzG,EAAE,IAAM,IAAK,CAClBA,GACAme,IAAW,0BAA4ByZ,GAAUxzB,EAAE7B,QAAQ,MAAO,MAAQ,+BACpE,CACN4b,GAAW,gBAAkByZ,GAAUxzB,EAAE7B,QAAQ,MAAO,MAAQ,iBAEjE+wG,EAAKA,EAAG1yG,MAAMZ,EAAE,EAAIA,GAAI,EAIzB,GAAI6F,GAAIytG,EAAG/iG,MAAM,iBACjB,IAAG1K,EAAG,CAAEsY,GAAW2b,GAAU,kBAAmB,MAAOq1G,4BAA4B,EAAGC,8BAA+BvpI,EAAE,GAAG3F,OAAQmvI,+BAAgCnpI,KAAK2M,KAAMhN,EAAE,GAAGtD,QAAQ,KAAM,MAASsD,EAAE,GAAGtD,QAAQ,KAAM,OAAW,MAAMuN,GAC7O,GAAIjK,EAAEytG,EAAG/iG,MAAM,kBAAoB,CAAE4N,GAAW2b,GAAU,kBAAmB,MAAOq1G,4BAA4B,EAAGC,8BAA+BvpI,EAAE,GAAG3F,OAAQovI,4BAA6BzpI,EAAE,IAAM,MAAMiK,GAG1M,GAAIjK,EAAEytG,EAAG/iG,MAAM,kBAAoB,CAAElB,EAAO,YAAc8O,IAAW2b,GAAU,gBAAiB,MAAOy1G,wBAAyB1pI,EAAE,IAAMA,EAAE3F,OAAS,GAAK,EAAGsvI,4BAA6B3pI,EAAE,IAAMA,EAAE3F,OAAS,GAAK,EAAGivI,4BAA6BtpI,EAAE,GAAG3F,SAAY,8BAAgC,MAAM4P,GAGvS,GAAI2/H,GAAW,KACf,KAAI,IAAI,IAAI,KAAKhwI,QAAQ6zG,EAAG,KAAO,EAAG,CACrCjkG,EAAO,MACP+P,GAAG,KAAMpf,EAAIszG,EAAGpzG,SAAUF,EAAG,OAAQoE,EAAIkvG,EAAGtzG,GAAG8T,eAC9C,IAAK,KAAK,IAAK,IAAK27H,EAAW,OAAQzvI,CAAG,MAAMof,GAChD,IAAK,IACJrK,EAAG,IAAI,GAAIkQ,GAAIjlB,EAAE,EAAGilB,EAAIquF,EAAGpzG,SAAU+kB,EAAG,OAAOquF,EAAGruF,IACjD,IAAK,KAAK,IAAK,IAAK,KAAMlQ,GAC1B,IAAK,KAAK,IAAK,IAAK06H,EAAW,OAAQzvI,CAAG,MAAMof,KAGlD,IAAK,KAAK,IAAK,IACd,OAAOk0F,IAAKtzG,IAAI,IAAI8T,eAAiB1P,EAAE,GAAIA,GAAKA,EAAE,KAAMpE,CACxD,QAAOoE,GACN,IAAK,KAAK,IAAK,KAAM+Z,GAAW,gBAAkB,OAClD,IAAK,OAAO,IAAK,OAAQA,GAAW,oCAAsC,OAC1E,IAAK,QAASqE,QAAQC,MAAM,2CAE5B,IAAK,KAAK,IAAK,MAAM,IAAK,OAAO,IAAK,OACrCtE,GAAW,gCAAkC/Z,EAAElE,OAAS,EAAI,QAAU,QAAU,sBAAwBkE,EAAElE,QAAU,EAAI,OAAS,SAAW,KAC5I,OACD,IAAK,KAAK,IAAK,KAAMie,GAAW,8BAAgC/Z,EAAElE,OAAS,EAAI,QAAU,QAAU,KAAO,OAC1G,IAAK,OAAO,IAAK,OAAQie,GAAW,sCAAwC/Z,EAAElE,OAAS,EAAI,QAAU,QAAU,KAAO,QAEvH,MACD,IAAK,IACJ,MAAMozG,IAAKtzG,IAAM,KAAOszG,IAAKtzG,IAAM,IAAKoE,GAAKkvG,EAAGtzG,KAAMA,CACtDme,IAAW,gBAAkByZ,GAAUxzB,EAAExD,MAAM,GAAG2B,QAAQ,MAAO,MAAQ,gBACzE,OACD,IAAK,IAAK4b,GAAW,gBAAkByZ,GAAUxzB,GAAK,gBAAkB,OACxE,QAASoe,QAAQC,MAAM,0BAA4Bre,EAAI,kBAAoBkvG,IAE5E,IAAIm8B,EAAU,KAAM3/H,EACpBwjG,GAAKA,EAAG1yG,MAAMZ,EAAE,EAAIA,GAAI,EAEzB,GAAGszG,EAAG/iG,MAAM,aAAc,CACzB,GAAGlB,GAAQ,SAAUA,EAAO,MAC5B,IAAGikG,EAAG/iG,MAAM,MAAO,CAClB+iG,EAAKA,EAAG/wG,QAAQ,UAAW,GAC3B0sI,GAAM,+BAAiC,QAExC,KAAMjvI,EAAIszG,EAAGpzG,SAAUF,EAAG,OAAQoE,EAAIkvG,EAAGtzG,GAAG8T,eAC3C,IAAK,KAAK,IAAK,KAAK,IAAK,IACxB,OAAOw/F,IAAKtzG,IAAI,IAAI8T,eAAiB1P,EAAE,GAAIA,GAAKA,EAAE,KAAMpE,CACxD,QAAOoE,GACN,IAAK,KAAK,IAAK,KAAM+Z,GAAW,gCAAkC/Z,EAAElE,OAAS,EAAI,QAAU,QAAU,KAAO,OAC5G,IAAK,KAAK,IAAK,KAAMie,GAAW,kCAAoC/Z,EAAElE,OAAS,EAAI,QAAU,QAAU,KAAO,OAC9G,IAAK,KAAK,IAAK,KACd,GAAGozG,EAAGtzG,EAAE,IAAM,IAAK,EAAG,CAAEoE,GAAKkvG,EAAGtzG,EAAE,KAAMA,QAAWszG,EAAGtzG,EAAE,IAAM,IAC9Dme,IAAW,kCAAoC/Z,EAAEmM,MAAM,MAAQ,OAAS,SAAW,KAAOnM,EAAEmM,MAAM,MAAQ,4BAA8BnM,EAAEmM,MAAM,QAAQ,KAAK,GAAGrQ,OAAS,IAAM,IAAK,IAAM,QAE5L,MACD,IAAK,IACJ,MAAMozG,IAAKtzG,IAAM,KAAOszG,IAAKtzG,IAAM,IAAKoE,GAAKkvG,EAAGtzG,KAAMA,CACtDme,IAAW,gBAAkByZ,GAAUxzB,EAAExD,MAAM,GAAG2B,QAAQ,MAAO,MAAQ,gBACzE,OACD,IAAK,IAAK4b,GAAW,gBAAkByZ,GAAUxzB,GAAK,gBAAkB,OACxE,IAAK,IACJ,GAAGkvG,EAAG1yG,MAAMZ,EAAGA,EAAE,GAAG8T,eAAiB,MAAO,CAAEqK,GAAW,iBAAmBne,IAAK,CAAG,OACpF,GAAGszG,EAAG1yG,MAAMZ,EAAGA,EAAE,GAAG8T,eAAiB,QAAU,CAAEqK,GAAW,iBAAmBne,IAAK,CAAG,QAExF,QAASwiB,QAAQC,MAAM,0BAA4Bre,EAAI,kBAAoBkvG,IAE5E,KAAMxjG,GAIP,GAAGwjG,EAAG7zG,QAAQ,OAAS,EAAG,CAAE4P,EAAO,WAGnC,GAAGikG,EAAG,IAAM,IAAK,CAAEn1F,GAAW,6FAA+Fm1F,GAAKA,EAAG1yG,MAAM,EAAIZ,GAAI,EACnJA,EAAI,CAAG,IAAGszG,EAAGtzG,IAAM,IAAK,CACvB,MAAMszG,IAAKtzG,IAAM,KAAOszG,IAAKtzG,IAAM,IAAKoE,GAAKkvG,EAAGtzG,KAAMA,CACtD,IAAGszG,EAAGtzG,EAAE,IAAM,IAAK,CAClBA,GACAme,IAAW,0BAA4ByZ,GAAUxzB,EAAE7B,QAAQ,MAAO,MAAQ,+BACpE,CACN4b,GAAW,gBAAkByZ,GAAUxzB,EAAE7B,QAAQ,MAAO,MAAQ,iBAEjE+wG,EAAKA,EAAG1yG,MAAMZ,EAAE,EAAIA,GAAI,EAIzB,GAAI0vI,GAAKp8B,EAAG/iG,MAAM,oCAClB,KAAIm/H,IAAOA,EAAG,GAAIltH,QAAQC,MAAM,kCAAoC6wF,OAC/D,CACJ,GAAI/hG,GAAOm+H,EAAG,GAAGntI,QAAQ,KAAM,GAC/B4b,IAAW,YAAcuxH,EAAG,GAAK,cAAgB,IAAK,SACrD,gCAAkCn+H,EAAK9R,QAAQ,OAAS,EAAI,IAAM8R,EAAKrR,OAASqR,EAAK9R,QAAQ,MAAQ,KACpGiwI,EAAG,GAAGjwI,QAAQ,MAAQ,EAAI,0BAA4B,KACtDiwI,EAAG,IAAM,4BAA8BA,EAAG,GAAGxvI,OAAS,GAAK,KAAO,+BAClEwvI,EAAG,IAAMA,EAAG,GAAGjwI,QAAQ,MAAQ,EAAI,sCAAwC,KAC3EiwI,EAAG,GAAK,gCAAkCA,EAAG,GAAGn/H,MAAM,MAAM,GAAGrQ,OAAS,IAAM,IAC/E,IAEA,aAAewvI,EAAG,GAAK,cAAgB,IAAM,SAC9C1vI,GAAI0vI,EAAGjpG,MAAQipG,EAAG,GAAGxvI,OAItB,GAAGozG,EAAGtzG,IAAM,IAAK,CAChBoE,EAAI,EACJ,OAAMkvG,IAAKtzG,IAAM,KAAOszG,IAAKtzG,IAAM,IAAKoE,GAAKkvG,EAAGtzG,KAAMA,CACtDme,IAAW,gBAAkByZ,GAAUxzB,EAAE7B,QAAQ,MAAO,MAAQ,kBAIlE,IAAI4b,EAAS,CAAEqE,QAAQC,MAAM,6CAA+C6wF,EAAK,IAAM,OAAO,GAC9F,MAAOx5E,IAAU,UAAYzqB,EAAO,SAAU8O,EAAS8wH,GAGxD,QAASU,IAAgBvyE,EAAOx6B,EAAYvyB,GAC3C,GAAIu/H,GAASxyE,EAAM6O,OAAO,SAASjvD,GAAQ,MAAOA,GAAKygD,QAAUptD,IAAQ,EAAI,KAAOA,IACpF,KAAIu/H,EAAO1vI,OAAQ,MAAO,EAC1B,OAAO,oCAAsC0vI,EAAO9rI,IAAI,SAASkZ,GAChE,GAAI6yH,GAAUjrC,GAAc5nF,EAAK0gD,IACjC,OAAO,WAAa5jC,GAAU,oBAAqB,MAClDg2G,aAAc9yH,EAAKwxC,KACnBuhF,2BAA4BF,EAC5BG,0BAA2BH,EAAOttI,QAAQ,eAAgB,aAEzDhC,KAAK,MAAQ,uCAEjB,GAAI0vI,IAAmC,WAEtC,GAAIC,GAAe,SAAS9kH,GAC3B,MAAOwM,IAAUxM,GACf7oB,QAAQ,OAAQ,SAASoO,GAAI,MAAO,mBAAmBA,EAAGzQ,OAAO,QACjEqC,QAAQ,MAAO,eACfA,QAAQ,MAAO,qBACfA,QAAQ,KAAM,aAAaA,QAAQ,KAAM,aAG5C,IAAI4tI,GAAgB,kCACpB,IAAIC,GAAmB,yCACvB,IAAIC,GAAW,SAASptG,EAAI8iB,EAAI/lD,EAAGuM,EAAM+jI,GAExC,GAAIvwI,KACJA,GAAEwF,KAAK,kCAAoCqyB,GAAUmuB,EAAGnjB,WAAW5iC,IAAM,8BACzE,IAAImZ,GAAE,EAAEP,EAAE,EAAG4nB,EAAQmB,GAAasB,EAAG,SAAS,KAC9C,IAAIyoE,GAAOzoE,EAAG,eAAkB+8E,EAAK,CACrC,IAAIh9E,GAAQx/B,MAAMW,QAAQ8+B,EAC1B,IAAGA,EAAG,SAAU,CACf,IAAIrqB,EAAI,EAAGA,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAG7Y,EAAEwF,KAAK,+BAAiC09B,EAAG,SAASrqB,GAAK,wBAA0BqqB,EAAG,SAASrqB,GAAG23H,IAAM,IAAM,IAAM,4BAErJ,GAAItjI,GAAI,GAAIujI,EAAOvtG,EAAG,YACtB,KAAI9pB,EAAI,EAAGA,EAAIqnB,EAAM58B,EAAEqN,IAAKkI,EAAG,CAC9BlM,EAAIujI,EAAKr3H,GAAK,wBAA0Bq3H,EAAKr3H,GAAGo3H,IAAM,IAAM,EAC5DxwI,GAAEwF,KAAK,2BAA6B0H,EAAI,yBAEzC,KAAMkM,GAAKqnB,EAAMz9B,EAAEkO,IAAKkI,EAAG,CAC1BlM,EAAIujI,EAAKr3H,GAAK,wBAA0Bq3H,EAAKr3H,GAAGo3H,IAAM,IAAM,EAC5DxwI,GAAEwF,KAAK,2BAA6B0H,EAAI,MACxC,KAAI2L,EAAE,EAAGA,EAAI4nB,EAAM58B,EAAEQ,IAAKwU,EAAG7Y,EAAEwF,KAAK4qI,EACpC,MAAMv3H,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAG,CAC1B,GAAIynG,GAAO,MAAOzgG,KAAS6sH,EAAQ,EACnC,KAAIzsB,EAAK,EAAGA,GAAMtU,EAAKxrG,SAAU8/G,EAAI,CACpC,GAAGtU,EAAKsU,GAAIp8G,EAAEQ,EAAIwU,EAAG,QACrB,IAAG8yF,EAAKsU,GAAIp8G,EAAEqN,EAAIkI,EAAG,QACrB,IAAGuyF,EAAKsU,GAAIj9G,EAAEqB,EAAIwU,EAAG,QACrB,IAAG8yF,EAAKsU,GAAIj9G,EAAEkO,EAAIkI,EAAG,QACrB,IAAGuyF,EAAKsU,GAAIp8G,EAAEQ,GAAKwU,GAAK8yF,EAAKsU,GAAIp8G,EAAEqN,GAAKkI,EAAGknG,EAAO,IAClDzgG,GAAG,gCAAmC8rF,EAAKsU,GAAIj9G,EAAEqB,EAAIsnG,EAAKsU,GAAIp8G,EAAEQ,EAAI,CACpEwb,GAAG,6BAAmC8rF,EAAKsU,GAAIj9G,EAAEkO,EAAIy6F,EAAKsU,GAAIp8G,EAAEqN,EAAI,CACpE,OAED,GAAGovG,EAAM,CAAEtgH,EAAEwF,KAAK6qI,EAAmB,UACrC,GAAI7gF,GAAM7uB,IAAazvB,EAAEkI,EAAG/U,EAAEwU,IAAKunB,EAAO6C,GAASC,EAAG9pB,QAAQP,GAAIqqB,EAAGssB,EACrE,IAAGpvB,GAAQA,EAAKrrB,EAAG,CAClB8K,EAAG,iBAAmBgY,GAAU8sE,GAAmBvkE,EAAKrrB,GACxD,IAAGqrB,EAAKmjB,EAAG,CACV,GAAGnjB,EAAKmjB,EAAE1iD,MAAM,EAAG2uD,EAAIrvD,SAAWqvD,EAAK,CACtC,GAAIkhF,GAAQ9uG,GAAaxB,EAAKmjB,EAC9B1jC,GAAG,uCAA0C6wH,EAAM1tI,EAAEqB,EAAIqsI,EAAM7sI,EAAEQ,EAAI,CACrEwb,GAAG,oCAA0C6wH,EAAM1tI,EAAEkO,EAAIw/H,EAAM7sI,EAAEqN,EAAI,IAIxE,IAAIkvB,EAAM,CAAEpgC,EAAEwF,KAAK4qI,EAAgB,UACnC,OAAOhwG,EAAKt6B,GACX,IAAK,IACJ4mI,EAAStsG,EAAKv6B,EAAI,OAAS,OAC3Bga,GAAG,qBAAuB,SAC1BA,GAAG,wBAA2BugB,EAAKv6B,EAAI,OAAS,OAChD,OACD,IAAK,IACJ6mI,EAAStsG,EAAK5xB,GAAGlO,OAAO8/B,EAAKv6B,GAAG,EAChCga,GAAG,qBAAuB,OAC1BA,GAAG,gBAAmBugB,EAAKv6B,GAAG,CAC9B,OACD,IAAK,KAAK,IAAK,MACd6mI,EAAQtsG,EAAKv6B,GAAK,KAAO,GAAKu6B,EAAKv6B,CACnCga,GAAG,qBAAuB,QAC1B,OACD,IAAK,IACJ6sH,EAAStsG,EAAK5xB,GAAI4iB,GAAUgP,EAAKv6B,GAAGo0B,aACpCpa,GAAG,qBAAuB,MAC1BA,GAAG,qBAAwBuR,GAAUgP,EAAKv6B,GAAGo0B,aAC7Cpa,GAAG,oBAAsB,KACzB,OAED,QAAS7f,EAAEwF,KAAK4qI,EAAgB,WAEjC,GAAIO,GAASR,EAAazD,EAC1B,IAAGtsG,EAAKprB,GAAKorB,EAAKprB,EAAE0hC,OAAQ,CAC3B,GAAIk6F,GAAOxwG,EAAKprB,EAAE0hC,MAClBk6F,GAAOA,EAAKvuI,OAAO,IAAM,IAAM,IAAMwiG,GAAc+rC,EAAK/vI,MAAM,IAAM+vI,CAEpE,IAAGA,EAAKvuI,OAAO,IAAM,MAAQuuI,EAAKpgI,MAAM,SAAUogI,EAAO,MAAQA,CACjED,GAAS52G,GAAU,SAAU42G,GAASE,aAAcD,EAAKpuI,QAAQ,KAAM,WAExE,GAAG+tI,EAAInwG,EAAKzJ,GAAI9W,EAAG,oBAAsB,KAAO0wH,EAAInwG,EAAKzJ,GAAG91B,MAAM,EAClEb,GAAEwF,KAAK,aAAeu0B,GAAU,mBAAoBA,GAAU,SAAU42G,MAAa9wH,GAAM,MAE5F7f,EAAEwF,KAAK,gCAER,IAAIwgD,EAAGmX,cAAcE,MAAOr9D,EAAEwF,KAAKoqI,GAAgB5pF,EAAGmX,SAASE,MAAOrX,EAAGnjB,WAAY5iC,GACrFD,GAAEwF,KAAK,yBACP,OAAOxF,GAAEQ,KAAK,IAGf,IAAIswI,GAA6B,SAAS9wI,EAAGgmD,GAC5ChmD,EAAEwF,KAAK,+BAGP,IAAIurI,GAAO,CACX/qF,GAAGnjB,WAAW9+B,IAAI,SAAS+S,GAAK,MAAOkvC,GAAGljB,OAAOhsB,KAAOD,QAAQ,SAASqsB,GACxE,IAAIA,EAAI,MACR,IAAGA,EAAG,SAAU,CACf,IAAI,GAAIrqB,GAAI,EAAGA,EAAIqqB,EAAG,SAAS/iC,SAAU0Y,EAAG,GAAGqqB,EAAG,SAASrqB,GAAI,CAC9D,GAAIm4H,GAAS9tG,EAAG,SAASrqB,EACzB,IAAGm4H,EAAO7vF,OAAS,MAAQ6vF,EAAO/xE,KAAO,MAAQ+xE,EAAO36E,KAAO,KAAM,QACrEoI,IAAYuyE,EACZA,GAAOR,IAAMO,CACb,IAAIviI,GAAI00B,EAAG,SAASrqB,GAAGomD,IAAM,IAC7Bj/D,GAAEwF,KAAK,gCAAkCurI,EAAO,mCAChD/wI,GAAEwF,KAAK,gFAAkFgJ,EAAI,QAC7FxO,GAAEwF,KAAK,wBACLurI,KAML,IAAIzrI,GAAO,CACX0gD,GAAGnjB,WAAW9+B,IAAI,SAAS+S;AAAK,MAAOkvC,GAAGljB,OAAOhsB,KAAOD,QAAQ,SAASqsB,GACxE,IAAIA,EAAI,MACR,IAAGA,EAAG,SAAU,CACf,IAAI,GAAI9pB,GAAI,EAAGA,EAAI8pB,EAAG,SAAS/iC,SAAUiZ,EAAG,GAAG8pB,EAAG,SAAS9pB,GAAI,CAC9D8pB,EAAG,SAAS9pB,GAAGo3H,IAAMlrI,CACrB,IAAI4f,GAAIge,EAAG,SAAS9pB,GAAGmlD,IAAM,IAC7Bv+D,GAAEwF,KAAK,gCAAkCF,EAAO,gCAChDtF,GAAEwF,KAAK,2EAA6E0f,EAAI,QACxFllB,GAAEwF,KAAK,wBACLF,KAMLtF,GAAEwF,KAAK,uFACPxF,GAAEwF,KAAK,iFACPxF,GAAEwF,KAAK,qBAEPxF,GAAEwF,KAAK,yEACPxF,GAAEwF,KAAK,2CACPxF,GAAEwF,KAAK,oCACPxF,GAAEwF,KAAK,yCACPxF,GAAEwF,KAAK,oCACPxF,GAAEwF,KAAK,sBACPxF,GAAEwF,KAAK,2BAGP,IAAI+qI,KACJ,IAAIU,GAAM,EACVjrF,GAAGnjB,WAAW9+B,IAAI,SAAS+S,GAAK,MAAOkvC,GAAGljB,OAAOhsB,KAAOD,QAAQ,SAASqsB,GACxE,IAAIA,EAAI,MACR,IAAIzC,GAAQmB,GAAasB,EAAG,QAC5B,KAAI,GAAI9pB,GAAI,EAAGA,GAAKqnB,EAAMz9B,EAAEkO,IAAKkI,EAAG,IAAI,GAAIP,GAAI,EAAGA,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAG,CACvE,GAAIxU,GAAIZ,MAAMW,QAAQ8+B,IAAOA,EAAG9pB,QAAQP,GAAKqqB,EAAGvC,IAAazvB,EAAEkI,EAAE/U,EAAEwU,IACnE,KAAIxU,IAAMA,EAAEsyB,GAAKtyB,EAAEsyB,EAAE5iB,eAAiB,UAAW,QACjD,KAAIw8H,EAAIlsI,EAAEsyB,GAAI,CACb,GAAIxxB,GAAM8pI,GAAwB5qI,EAAEsyB,EAAG,IAAMs6G,EAC7C,IAAG9rI,EAAK,CAAEorI,EAAIlsI,EAAEsyB,GAAK,IAAMs6G,IAAOA,CAAKjxI,GAAEwF,KAAKL,EAAM,UAIvDnF,GAAEwF,KAAK,8HACPoqB,IAAK2gH,GAAK15H,QAAQ,SAAS08F,GAC1BvzG,EAAEwF,KAAK,8BAAgC+qI,EAAIh9B,GAAI1yG,MAAM,GAAK,wFAA0F0vI,EAAIh9B,GAAM,UAK/JvzG,GAAEwF,KAAK,gCACP,OAAO+qI,GAGR,OAAO,SAASW,GAAIlrF,EAAIx5C,GACvB,GAAIxM,IAAKg2B,GAET,IAAIgqF,GAAOlmF,IACVu0G,eAAsB,mDACtBC,cAAsB,kDACtBC,cAAsB,kDACtBC,aAAsB,iDACtBC,aAAsB,oDACtBC,WAAsB,8DACtBC,cAAsB,+BACtBr2F,WAAsB,mCACtB64F,aAAsB,iDACtBvC,eAAsB,sDACtBwC,qBAAsB,yDACtBvC,YAAsB,2DACtBwC,cAAsB,kDACtBC,aAAsB,iDACtBC,aAAsB,qCACtBC,aAAsB,iDACtBC,eAAsB,mDACtBC,YAAsB,oCACtBC,aAAsB,oCACtBC,aAAsB,kCACtBC,YAAsB,oCACtBC,eAAsB,gCACtBz9F,YAAsB,mCACtBC,YAAsB,4CACtBy9F,cAAsB,8CACtBC,YAAsB,oCACtBlD,WAAsB,+CACtBmD,cAAsB,+BACtBC,cAAsB,sCACtBC,iBAAsB,mCACtBC,gBAAsB,kCACtBC,gBAAsB,uEACtBC,cAAsB,uEACtBC,cAAsB,mEACtBC,cAAsB,qEACtBC,cAAsB,kCACtB1D,iBAAsB,OAGvB,IAAI2D,GAAO54G,IACV64G,eAAmB,mDACnBC,kBAAmB,kDAGpB,IAAGpmI,EAAKgoC,UAAY,OAAQ,CAC3Bx0C,EAAEwF,KAAK,mBAAqBw6G,EAAO0yB,EAAO,MAC1C1yI,GAAEwF,KAAKuyC,KAAiBv1C,QAAQ,4BAA6B,IAAIA,QAAQ,2BAA4B,IAAM,UAErGxC,GAAEwF,KAAK,2BAA6Bw6G,EAAQ,MAEnD,IAAIuwB,GAAMO,EAA2B9wI,EAAGgmD,EACxChmD,GAAEwF,KAAK,oBACPxF,GAAEwF,KAAK,6BACP,MAAKwgD,EAAGmX,cAAcC,aAAa9vD,SAAUtN,EAAEwF,KAAK,8TACpD,KAAI,GAAIvF,GAAI,EAAGA,GAAK+lD,EAAGnjB,WAAW1iC,SAAUF,EAAGD,EAAEwF,KAAK8qI,EAAStqF,EAAGljB,OAAOkjB,EAAGnjB,WAAW5iC,IAAK+lD,EAAI/lD,EAAGuM,EAAM+jI,GACzG,KAAIvqF,EAAGmX,cAAcE,MAAOr9D,EAAEwF,KAAKoqI,GAAgB5pF,EAAGmX,SAASE,MAAOrX,EAAGnjB,YAAa,GACtF7iC,GAAEwF,KAAK,8BACPxF,GAAEwF,KAAK,qBACP,IAAGgH,EAAKgoC,UAAY,OAAQx0C,EAAEwF,KAAK,0BAC9BxF,GAAEwF,KAAK,6BACZ,OAAOxF,GAAEQ,KAAK,OAIhB,SAASqyI,IAAU7sF,EAAIx5C,GACtB,GAAGA,EAAKgoC,UAAY,OAAQ,MAAO07F,IAAkBlqF,EAAIx5C,EAEzD,IAAIwoB,GAAMU,IACV,IAAI3gB,GAAI,EAER,IAAI2iC,KACJ,IAAII,KAGJ/iC,GAAI,UACJygB,IAAaR,EAAKjgB,EAAG,iDAGrBA,GAAI,aACJygB,IAAaR,EAAKjgB,EAAGm7H,GAAkBlqF,EAAIx5C,GAC3CkrC,GAASlyC,MAAMuP,EAAG,YAClB+iC,GAAItyC,MAAMuP,EAAG,eAGbA,GAAI,YACJygB,IAAaR,EAAKjgB,EAAGo5H,GAAiBnoF,EAAIx5C,GAC1CkrC,GAASlyC,MAAMuP,EAAG,YAClB+iC,GAAItyC,MAAMuP,EAAG,cAGbA,GAAI,UACJygB,IAAaR,EAAKjgB,EAAGihB,GAAa+hB,KAClCL,GAASlyC,MAAMuP,EAAG,YAClB+iC,GAAItyC,MAAMuP,EAAG,gBAGbA,GAAI,cACJygB,IAAaR,EAAKjgB,EAAG8iC,GAAUC,GAC/BJ,GAASlyC,MAAMuP,EAAG,uBAGlBA,GAAI,uBACJygB,IAAaR,EAAKjgB,EAAG0iC,GAAeC,GAEpC,OAAO1iB,GAIR,GAAIvd,IAAW,WACb,IACE,SAAWjU,aAAc,YACvB,MAAO,OACT,UAAWA,YAAWusB,UAAUtY,UAAY,YAC1C,MAAO,OACT,UAAW/U,UAAW,YAAa,CACjC,SAAWA,QAAOqtB,UAAUtY,UAAY,YACtC,MAAO,OACT,WAAY/U,QAAOK,MAAQ,WAAaL,OAAOK,MAAM,GAAI,KAAO,GAAIL,SAAQ,GAAI,eAAiBc,YAC/F,MAAO,UACT,OAAO,QAET,MAAO,WACP,MAAOR,GACP,MAAO,WAGX,SAAS8vI,IAAeC,GACtB,MAAO,IAAIC,UAASD,EAAME,OAAQF,EAAMG,WAAYH,EAAMI,YAE5D,QAASC,IAAMC,GACb,aAAc5hH,cAAe,aAAc,GAAIA,cAAcnwB,OAAO+xI,GAAMv6G,GAAS30B,EAAIkvI,IAEzF,QAASC,IAAMthI,GACb,aAAc6b,cAAe,aAAc,GAAIA,cAAcC,OAAO9b,GAAOpO,EAAImqB,GAAU/b,IAE3F,QAASuhI,IAAWvkH,EAAMwkH,GACxB,GAAInuI,GAAI2pB,EAAKtvB,QAAQ8zI,EAAO,GAC5B,IAAInuI,IAAM,EACR,MAAO,MACTs8D,GACE,KAAOt8D,GAAK2pB,EAAK7uB,OAASqzI,EAAOrzI,SAAUkF,EAAG,CAC5C,IAAK,GAAI0K,GAAI,EAAGA,EAAIyjI,EAAOrzI,SAAU4P,EACnC,GAAIif,EAAK3pB,EAAI0K,IAAMyjI,EAAOzjI,GACxB,QAAS4xD,EACb,OAAO,MAEX,MAAO,OAET,QAAS8xE,IAASC,GAChB,GAAIxzI,GAAMwzI,EAAIC,OAAO,SAASC,EAAK5yI,GACjC,MAAO4yI,GAAM5yI,EAAEb,QACd,EACH,IAAIgF,GAAM,GAAI3B,YAAWtD,EACzB,IAAIqnB,GAAM,CACVmsH,GAAI78H,QAAQ,SAASw8H,GACnBluI,EAAIL,IAAIuuI,EAAI9rH,EACZA,IAAO8rH,EAAGlzI,QAEZ,OAAOgF,GAET,QAAS0uI,IAAO7yI,GACdA,GAAKA,GAAK,EAAI,UACdA,IAAKA,EAAI,YAAcA,GAAK,EAAI,UAChC,QAAQA,GAAKA,GAAK,GAAK,WAAa,WAAa,GAEnD,QAAS8yI,IAAiB7wI,EAAK+c,GAC7B,GAAI+zH,IAAO9wI,EAAI+c,EAAS,IAAM,MAAQ,EAAI/c,EAAI+c,EAAS,KAAO,CAC9D,IAAIg0H,GAAW/wI,EAAI+c,EAAS,IAAM,CAClC,KAAK,GAAIjQ,GAAIiQ,EAAS,GAAIjQ,GAAKiQ,IAAUjQ,EACvCikI,EAAWA,EAAW,IAAM/wI,EAAI8M,EAClC,QAAQ9M,EAAI+c,EAAS,IAAM,KAAOg0H,EAAWA,GAAY7tI,KAAKI,IAAI,GAAIwtI,EAAM,MAE9E,QAASE,IAAkBhxI,EAAK+c,EAAQuY,GACtC,GAAIw7G,GAAM5tI,KAAKkG,MAAMksB,GAAS,EAAI,EAAIpyB,KAAK6I,OAAS7I,KAAK4I,IAAI5I,KAAKkH,IAAIkrB,KAAW,KAAO,EACxF,IAAIy7G,GAAWz7G,EAAQpyB,KAAKI,IAAI,GAAIwtI,EAAM,KAC1C9wI,GAAI+c,EAAS,KAAO+zH,GAAO,CAC3B9wI,GAAI+c,EAAS,MAAQ+zH,EAAM,MAAQ,CACnC,KAAK,GAAI9zI,GAAI,EAAG+zI,GAAY,IAAK/zI,EAAG+zI,GAAY,IAC9C/wI,EAAI+c,EAAS/f,GAAK+zI,EAAW,GAC/B/wI,GAAI+c,EAAS,KAAOuY,GAAS,EAAI,EAAI,IAEvC,QAAS27G,IAAejxI,EAAKkxI,GAC3B,GAAIn/H,GAAIm/H,EAAMA,EAAI,GAAK,CACvB,IAAI/4H,GAAMnY,EAAI+R,GAAK,GACnBo/H,GACE,GAAInxI,EAAI+R,MAAQ,IAAK,CACnBoG,IAAQnY,EAAI+R,GAAK,MAAQ,CACzB,IAAI/R,EAAI+R,KAAO,IACb,KAAMo/H,EACRh5H,KAAQnY,EAAI+R,GAAK,MAAQ,EACzB,IAAI/R,EAAI+R,KAAO,IACb,KAAMo/H,EACRh5H,KAAQnY,EAAI+R,GAAK,MAAQ,EACzB,IAAI/R,EAAI+R,KAAO,IACb,KAAMo/H,EACRh5H,KAAQnY,EAAI+R,GAAK,KAAO7O,KAAKI,IAAI,EAAG,MAClCyO,CACF,IAAI/R,EAAI+R,KAAO,IACb,KAAMo/H,EACRh5H,KAAQnY,EAAI+R,GAAK,KAAO7O,KAAKI,IAAI,EAAG,MAClCyO,CACF,IAAI/R,EAAI+R,KAAO,IACb,KAAMo/H,EACRh5H,KAAQnY,EAAI+R,GAAK,KAAO7O,KAAKI,IAAI,EAAG,MAClCyO,CACF,IAAI/R,EAAI+R,KAAO,IACb,KAAMo/H,GAEZ,GAAID,EACFA,EAAI,GAAKn/H,CACX,OAAOoG,GAET,QAASi5H,IAAexuI,GACtB,GAAIuV,GAAM,GAAI5X,YAAW,EACzB4X,GAAI,GAAKvV,EAAI,GACb,IAAIR,GAAI,CACRuV,GACE,GAAI/U,EAAI,IAAK,CACXuV,EAAI/V,EAAI,IAAM,GACd+V,GAAI/V,GAAKQ,GAAK,EAAI,MAChBR,CACF,IAAIQ,GAAK,MACP,KAAM+U,EACRQ,GAAI/V,EAAI,IAAM,GACd+V,GAAI/V,GAAKQ,GAAK,GAAK,MACjBR,CACF,IAAIQ,GAAK,QACP,KAAM+U,EACRQ,GAAI/V,EAAI,IAAM,GACd+V,GAAI/V,GAAKQ,GAAK,GAAK,MACjBR,CACF,IAAIQ,GAAK,UACP,KAAM+U,EACRQ,GAAI/V,EAAI,IAAM,GACd+V,GAAI/V,GAAKQ,EAAI,MAAQ,GAAK,MACxBR,CACF,IAAIQ,GAAK,YACP,KAAM+U,EACRQ,GAAI/V,EAAI,IAAM,GACd+V,GAAI/V,GAAKQ,EAAI,QAAU,GAAK,MAC1BR,CACF,IAAIQ,GAAK,cACP,KAAM+U,EACRQ,GAAI/V,EAAI,IAAM,GACd+V,GAAI/V,GAAKQ,EAAI,WAAa,GAAK,MAC7BR,EAEN,MAAO+V,GAAI3D,IAAU,EAAGpS,GAE1B,QAASivI,IAAqBrxI,GAC5B,GAAIkxI,IAAO,EACX,IAAIhvI,KACJ,OAAOgvI,EAAI,GAAKlxI,EAAI9C,OAClBgF,EAAIK,KAAK0uI,GAAejxI,EAAKkxI,GAC/B,OAAOhvI,GAET,QAASovI,IAAqBC,GAC5B,MAAOf,IAASe,EAAKzwI,IAAI,SAAS/C,GAChC,MAAOqzI,IAAerzI,MAG1B,QAASyzI,IAAcxxI,GACrB,GAAI+R,GAAI,EAAG0/H,EAAMzxI,EAAI+R,GAAK,GAC1Bo/H,GACE,GAAInxI,EAAI+R,MAAQ,IAAK,CACnB0/H,IAAQzxI,EAAI+R,GAAK,MAAQ,CACzB,IAAI/R,EAAI+R,KAAO,IACb,KAAMo/H,EACRM,KAAQzxI,EAAI+R,GAAK,MAAQ,EACzB,IAAI/R,EAAI+R,KAAO,IACb,KAAMo/H,EACRM,KAAQzxI,EAAI+R,GAAK,MAAQ,EACzB,IAAI/R,EAAI+R,KAAO,IACb,KAAMo/H,EACRM,KAAQzxI,EAAI+R,GAAK,MAAQ,GAE7B,MAAO0/H,GAET,QAASC,IAAc1xI,GACrB,GAAIkC,MAAUgvI,GAAO,EACrB,OAAOA,EAAI,GAAKlxI,EAAI9C,OAAQ,CAC1B,GAAIonB,GAAM4sH,EAAI,EACd,IAAIlhF,GAAMihF,GAAejxI,EAAKkxI,EAC9B,IAAI7kI,GAAO2jD,EAAM,CACjBA,GAAM9sD,KAAKkG,MAAM4mD,EAAM,EACvB,IAAI/yD,GAAM,CACV,IAAIu1B,EACJ,IAAIw9B,GAAO,EACT,KACF,QAAQ3jD,GACN,IAAK,GACH,CACE,GAAI0F,GAAIm/H,EAAI,EACZ,OAAOlxI,EAAIkxI,EAAI,OAAS,KAExB1+G,EAAMxyB,EAAIwU,IAAUzC,EAAGm/H,EAAI,IAE7B,MACF,IAAK,GACHj0I,EAAM,CACNu1B,GAAMxyB,EAAIwU,IAAU08H,EAAI,GAAIA,EAAI,GAAKj0I,EACrCi0I,GAAI,IAAMj0I,CACV,OACF,IAAK,GACHA,EAAM,CACNu1B,GAAMxyB,EAAIwU,IAAU08H,EAAI,GAAIA,EAAI,GAAKj0I,EACrCi0I,GAAI,IAAMj0I,CACV,OACF,IAAK,GACHA,EAAMg0I,GAAejxI,EAAKkxI,EAC1B1+G,GAAMxyB,EAAIwU,IAAU08H,EAAI,GAAIA,EAAI,GAAKj0I,EACrCi0I,GAAI,IAAMj0I,CACV,OACF,IAAK,IACL,IAAK,IACL,QACE,KAAM,IAAIqE,OAAM,WAAWI,OAAO2K,EAAM,eAAe3K,OAAOsuD,EAAK,eAAetuD,OAAO4iB,KAE7F,GAAI1hB,IAAM9F,KAAM01B,EAAKnmB,KAAMA,EAC3B,IAAInK,EAAI8tD,IAAQ,KACd9tD,EAAI8tD,IAAQptD,OAEZV,GAAI8tD,GAAKztD,KAAKK,GAElB,MAAOV,GAET,QAASyvI,IAAcC,GACrB,GAAI1vI,KACJ0vI,GAAMh+H,QAAQ,SAASo/C,EAAO3lD,GAC5B,GAAIA,GAAO,EACT,MACF2lD,GAAMp/C,QAAQ,SAASi+H,GACrB,IAAKA,EAAK/0I,KACR,MACFoF,GAAIK,KAAK6uI,GAAe/jI,EAAM,EAAIwkI,EAAKxlI,MACvC,IAAIwlI,EAAKxlI,MAAQ,EACfnK,EAAIK,KAAK6uI,GAAeS,EAAK/0I,KAAKI,QACpCgF,GAAIK,KAAKsvI,EAAK/0I,SAGlB,OAAO0zI,IAAStuI,GAElB,QAAS4vI,IAAMh1I,EAAMi/B,GACnB,OAAQj/B,GAAQ,SAAY,GAAIA,EAAKgE,IAAI,SAASwB,GAChD,MAAOy5B,GAAGz5B,EAAExF,aAGhB,QAASi1I,IAAe/xI,GACtB,GAAIgyI,EACJ,IAAI9vI,MAAUgvI,GAAO,EACrB,OAAOA,EAAI,GAAKlxI,EAAI9C,OAAQ,CAC1B,GAAID,GAAMg0I,GAAejxI,EAAKkxI,EAC9B,IAAIliC,GAAK0iC,GAAc1xI,EAAIwU,IAAU08H,EAAI,GAAIA,EAAI,GAAKj0I,GACtDi0I,GAAI,IAAMj0I,CACV,IAAIu1B,IACF0vB,GAAIsvF,GAAcxiC,EAAG,GAAG,GAAGlyG,MAC3Bm1I,YAEFjjC,GAAG,GAAGp7F,QAAQ,SAASiO,GACrB,GAAIm7F,GAAK00B,GAAc7vH,EAAE/kB,KACzB,IAAI+nD,GAAK2sF,GAAcx0B,EAAG,GAAG,GAAGlgH,KAChC01B,GAAIy/G,SAAS1vI,MACXg7D,KAAMy/C,EACNlgH,KAAMkD,EAAIwU,IAAU08H,EAAI,GAAIA,EAAI,GAAKrsF,IAEvCqsF,GAAI,IAAMrsF,GAEZ,KAAKmtF,EAAKhjC,EAAG,KAAO,SAAY,GAAIgjC,EAAG,GACrCx/G,EAAI0/G,MAAQV,GAAcxiC,EAAG,GAAG,GAAGlyG,QAAU,EAAI,CACnDoF,GAAIK,KAAKiwB,GAEX,MAAOtwB,GAET,QAASiwI,IAAeC,GACtB,GAAI3wI,KACJ2wI,GAAIx+H,QAAQ,SAASy+H,GACnB,GAAIrjC,SAEClyG,KAAMs0I,GAAeiB,EAAGnwF,IAAK71C,KAAM,OAGxC,IAAIgmI,EAAGH,OAAS,KACdljC,EAAG,KAAQlyG,KAAMs0I,MAAkBiB,EAAGH,OAAQ7lI,KAAM,GACtD,IAAIimI,KACJD,GAAGJ,SAASr+H,QAAQ,SAASopG,GAC3Bs1B,EAAO/vI,KAAKy6G,EAAGlgH,KACfkgH,GAAGz/C,KAAK,KAAQlxD,KAAM,EAAGvP,KAAMs0I,GAAep0B,EAAGlgH,KAAKI,SACtD8xG,GAAG,GAAGzsG,MAAOzF,KAAM60I,GAAc30B,EAAGz/C,MAAOlxD,KAAM,KAEnD,IAAIkmI,GAAYZ,GAAc3iC,EAC9BvtG,GAAKc,KAAK6uI,GAAemB,EAAUr1I,QACnCuE,GAAKc,KAAKgwI,EACVD,GAAO1+H,QAAQ,SAAS4+H,GACtB,MAAO/wI,GAAKc,KAAKiwI,MAGrB,OAAOhC,IAAS/uI,GAElB,QAASgxI,IAAmBpmI,EAAMrM,GAChC,GAAIqM,GAAQ,EACV,KAAM,IAAI/K,OAAM,gCAAgCI,OAAO2K,GACzD,IAAI6kI,IAAO,EACX,IAAI/4H,GAAM84H,GAAejxI,EAAKkxI,EAC9B,IAAIwB,KACJ,OAAOxB,EAAI,GAAKlxI,EAAI9C,OAAQ,CAC1B,GAAIq2B,GAAMvzB,EAAIkxI,EAAI,IAAM,CACxB,IAAI39G,GAAO,EAAG,CACZ,GAAIt2B,GAAM+C,EAAIkxI,EAAI,OAAS,CAC3B,IAAIj0I,EAAM,KACNA,MACC,CACH,GAAImE,GAAInE,EAAM,EACdA,GAAM+C,EAAIkxI,EAAI,GACd,IAAI9vI,EAAI,EACNnE,GAAO+C,EAAIkxI,EAAI,GAAK,IAAM,CAC5B,IAAI9vI,EAAI,EACNnE,GAAO+C,EAAIkxI,EAAI,GAAK,IAAM,EAC5B,IAAI9vI,EAAI,EACNnE,GAAO+C,EAAIkxI,EAAI,GAAK,IAAM,EAC5Bj0I,MAAS,CACTA,IACAi0I,GAAI,IAAM9vI,EAEZsxI,EAAOnwI,KAAKvC,EAAIwU,IAAU08H,EAAI,GAAIA,EAAI,GAAKj0I,GAC3Ci0I,GAAI,IAAMj0I,CACV,cACK,CACL,GAAI8f,GAAS,EAAG7f,EAAS,CACzB,IAAIq2B,GAAO,EAAG,CACZr2B,GAAU8C,EAAIkxI,EAAI,KAAO,EAAI,GAAK,CAClCn0H,IAAU/c,EAAIkxI,EAAI,MAAQ,MAAQ,CAClCn0H,IAAU/c,EAAIkxI,EAAI,UACb,CACLh0I,GAAU8C,EAAIkxI,EAAI,OAAS,GAAK,CAChC,IAAI39G,GAAO,EAAG,CACZxW,EAAS/c,EAAIkxI,EAAI,IAAMlxI,EAAIkxI,EAAI,GAAK,IAAM,CAC1CA,GAAI,IAAM,MACL,CACLn0H,GAAU/c,EAAIkxI,EAAI,IAAMlxI,EAAIkxI,EAAI,GAAK,IAAM,EAAIlxI,EAAIkxI,EAAI,GAAK,IAAM,GAAKlxI,EAAIkxI,EAAI,GAAK,IAAM,MAAQ,CAClGA,GAAI,IAAM,GAGd,GAAIn0H,GAAU,EACZ,KAAM,IAAIzb,OAAM,mBAClB,IAAIwL,GAAI4lI,EAAOx1I,OAAS,EAAGonB,EAAMvH,CACjC,OAAOjQ,GAAK,GAAKwX,GAAOouH,EAAO5lI,GAAG5P,OAAQ,CACxConB,GAAOouH,EAAO5lI,GAAG5P,SACf4P,EAEJ,GAAIA,EAAI,EAAG,CACT,GAAIwX,GAAO,EACTA,EAAMouH,EAAO5lI,EAAI,GAAG5P,WAEpB,MAAM,IAAIoE,OAAM,gCAEpB,GAAIpE,EAASonB,EACXouH,EAAOnwI,KAAKmwI,EAAO5lI,GAAG0H,IAAUk+H,EAAO5lI,GAAG5P,OAASonB,EAAKouH,EAAO5lI,GAAG5P,OAASonB,EAAMpnB,QAC9E,CACH,GAAIonB,EAAM,EAAG,CACXouH,EAAOnwI,KAAKmwI,EAAO5lI,GAAG0H,IAAUk+H,EAAO5lI,GAAG5P,OAASonB,GACnDpnB,IAAUonB,IAEVxX,CACF,OAAO5P,GAAUw1I,EAAO5lI,GAAG5P,OAAQ,CACjCw1I,EAAOnwI,KAAKmwI,EAAO5lI,GACnB5P,IAAUw1I,EAAO5lI,GAAG5P,SAClB4P,EAEJ,GAAI5P,EACFw1I,EAAOnwI,KAAKmwI,EAAO5lI,GAAG0H,IAAU,EAAGtX,IAEvC,GAAIw1I,EAAOx1I,OAAS,IAClBw1I,GAAUlC,GAASkC,KAGzB,GAAIA,EAAOhC,OAAO,SAASC,EAAKP,GAC9B,MAAOO,GAAMP,EAAGlzI,QACf,IAAMib,EACP,KAAM,IAAI7W,OAAM,sBAAsBI,OAAOgxI,EAAOhC,OAAO,SAASC,EAAKP,GACvE,MAAOO,GAAMP,EAAGlzI,QACf,GAAI,QAAQwE,OAAOyW,GACxB,OAAOu6H,GAET,QAASC,IAAoB3yI,GAC3B,GAAIQ,MAAMW,QAAQnB,GAChBA,EAAM,GAAIO,YAAWP,EACvB,IAAIkC,KACJ,IAAI6P,GAAI,CACR,OAAOA,EAAI/R,EAAI9C,OAAQ,CACrB,GAAI2F,GAAI7C,EAAI+R,IACZ,IAAI9U,GAAM+C,EAAI+R,GAAK/R,EAAI+R,EAAI,IAAM,EAAI/R,EAAI+R,EAAI,IAAM,EACnDA,IAAK,CACL7P,GAAIK,KAAKT,MAAMI,EAAKuwI,GAAmB5vI,EAAG7C,EAAIwU,IAAUzC,EAAGA,EAAI9U,IAC/D8U,IAAK9U,EAEP,GAAI8U,IAAM/R,EAAI9C,OACZ,KAAM,IAAIoE,OAAM,qCAClB,OAAOkvI,IAAStuI,GAElB,QAAS0wI,IAAkB5yI,GACzB,GAAIkC,KACJ,IAAI6P,GAAI,CACR,OAAOA,EAAI/R,EAAI9C,OAAQ,CACrB,GAAIkE,GAAI8B,KAAK0M,IAAI5P,EAAI9C,OAAS6U,EAAG,UACjC,IAAI8gI,GAAQ,GAAItyI,YAAW,EAC3B2B,GAAIK,KAAKswI,EACT,IAAI16H,GAAMi5H,GAAehwI,EACzB,IAAIgB,GAAI+V,EAAIjb,MACZgF,GAAIK,KAAK4V,EACT,IAAI/W,GAAK,GAAI,CACXgB,GACAF,GAAIK,KAAK,GAAIhC,aAAYa,EAAI,GAAK,SAC7B,IAAIA,GAAK,IAAK,CACnBgB,GAAK,CACLF,GAAIK,KAAK,GAAIhC,aAAY,IAAKa,EAAI,EAAI,WACjC,IAAIA,GAAK,MAAO,CACrBgB,GAAK,CACLF,GAAIK,KAAK,GAAIhC,aAAY,IAAKa,EAAI,EAAI,IAAKA,EAAI,GAAK,EAAI,WACnD,IAAIA,GAAK,SAAU,CACxBgB,GAAK,CACLF,GAAIK,KAAK,GAAIhC,aAAY,IAAKa,EAAI,EAAI,IAAKA,EAAI,GAAK,EAAI,IAAKA,EAAI,GAAK,GAAK,WACtE,IAAIA,GAAK,WAAY,CAC1BgB,GAAK,CACLF,GAAIK,KAAK,GAAIhC,aAAY,IAAKa,EAAI,EAAI,IAAKA,EAAI,GAAK,EAAI,IAAKA,EAAI,GAAK,GAAK,IAAKA,EAAI,IAAM,GAAK,OAEjGc,EAAIK,KAAKvC,EAAIwU,IAAUzC,EAAGA,EAAI3Q,GAC9BgB,IAAKhB,CACLyxI,GAAM,GAAK,CACXA,GAAM,GAAKzwI,EAAI,GACfywI,GAAM,GAAKzwI,GAAK,EAAI,GACpBywI,GAAM,GAAKzwI,GAAK,GAAK,GACrB2P,IAAK3Q,EAEP,MAAOovI,IAAStuI,GAElB,GAAI4wI,IAAkB,WACpB,OAAS/hG,OAASgiG,QAAUC,QAAUC,SAExC,SAASC,IAAoB/1G,EAAMt6B,EAAG6U,EAAOs7H,EAAMC,GACjD,GAAIjB,GAAImB,EAAIC,EAAI9jC,CAChB,IAAItnF,GAAQnlB,EAAI,IAAKwwI,EAAMxwI,GAAK,CAChC,IAAIyJ,GAAM+mI,GAAO,EAAIJ,EAAOD,CAC5BM,GACE,GAAI57H,GAAS27H,EAAM,EAAI,EAAI,IAAMl2G,EAAKt6B,GAAK,KAAOmlB,GAAS,EAAG,CAC5D,GAAIurH,KAAWvB,EAAK1lI,EAAI,KAAO,SAAY,GAAI0lI,EAAG,IAAMf,GAAe3kI,EAAI,GAAG,GAAGxP,OAAS,CAC1F,IAAIy2I,IAAW,EACb,KAAMD,EACR,IAAIE,KAASL,EAAK7mI,EAAI,MAAQ,SAAY,GAAI6mI,EAAG,IAAMlC,GAAe3kI,EAAI,IAAI,GAAGxP,OAAS,CAC1F,IAAI22I,KAASL,EAAK9mI,EAAI,MAAQ,SAAY,GAAI8mI,EAAG,IAAMnC,GAAe3kI,EAAI,IAAI,GAAGxP,OAAS,CAC1F,IAAIgnC,KAASwrE,EAAKhjG,EAAI,MAAQ,SAAY,GAAIgjG,EAAG,IAAM2hC,GAAe3kI,EAAI,IAAI,GAAGxP,OAAS,CAC1F,IAAIwF,GAAI66B,EAAKv6B,EAAGsM,EAAK5M,CACrBoxI,GACE,GAAI5vG,EAAM,CACR,GAAIxhC,GAAK,EAAG,CACVkxI,EAAOC,EAAO,CACd,MAAMC,GAER,GAAIpxI,GAAK,OACPkxI,EAAO,MACJ,IAAIlxI,GAAK,MACZkxI,EAAO,MACJ,IAAIlxI,GAAK,KACZkxI,EAAO,MACJ,IAAIlxI,GAAK,GACZkxI,EAAO,MACJ,IAAIlxI,GAAK,EACZkxI,EAAO,OAEPA,GAAO,EACT,IAAItwI,KAAKkG,MAAM9G,IAAMA,EACnBmxI,EAAO,OACJ,IAAInxI,EAAI,GACXmxI,EAAO,OACJ,IAAInxI,EAAI,KACXmxI,EAAO,MACJ,IAAInxI,EAAI,MACXmxI,EAAO,MACJ,IAAInxI,EAAI,OACXmxI,EAAO,CACT,IAAIA,EAAOD,EACTC,EAAOD,EAEb,GAAIA,IAAS,GAAKC,IAAS,EACzB,KAAMH,EACR,IAAIK,MAAWC,IACf,IAAIJ,GAAQ,EAAG,CACbtkI,EAAK5M,EAAI,MACT,IAAImxI,GAAQ,EAAG,CACbG,EAAKrxI,KAAK,YACL,CACL2M,GAAM,CACN5M,IAAK,OAAS4M,EAEhBykI,EAAKpxI,KAAK2M,GAAMqkI,GAAU,EAAI,SAAWrkI,GAAM,EAAI,GAAK,KAAOqkI,GAAU,EAAI,IAAM,KAErF,GAAIC,GAAQ,GAAKC,GAAQ,EAAG,CAC1BvkI,EAAK5M,EAAI,KACT,IAAImxI,EAAO,EAAG,CACZvkI,GAAM,CACN5M,IAAK,MAAQ4M,EAEf0kI,EAAKrxI,KAAK,OACVoxI,GAAKpxI,KAAK2M,GAAMqkI,GAAU,EAAI,QAAUrkI,GAAM,EAAI,GAAK,KAAOqkI,GAAU,EAAI,IAAM,KAEpF,GAAIC,GAAQ,GAAKC,GAAQ,EAAG,CAC1BvkI,EAAK5M,EAAI,IACT,IAAImxI,EAAO,EAAG,CACZvkI,GAAM,CACN5M,IAAK,KAAO4M,EAEd0kI,EAAKrxI,MAAMixI,GAAQ,EAAI,MAAQ,KAAO,MACtCG,GAAKpxI,KAAK2M,GAAMqkI,GAAU,EAAI,SAAWrkI,GAAM,EAAI,GAAK,KAAOqkI,GAAU,EAAI,IAAM,KAErF,GAAIC,GAAQ,GAAKC,GAAQ,EAAG,CAC1BvkI,EAAK5M,EAAI,EACT,IAAImxI,EAAO,EAAG,CACZvkI,GAAM,CACN5M,IAAK,GAAK4M,EAEZ0kI,EAAKrxI,MAAMixI,GAAQ,EAAI,MAAQ,KAAO,MACtC,IAAID,GAAU,EACZI,EAAKpxI,MAAMixI,GAAQ,GAAKC,GAAQ,GAAKvkI,GAAM,GAAK,GAAK,KAAOA,OAE5DykI,GAAKpxI,KAAK2M,GAAMqkI,GAAU,EAAI,WAAarkI,GAAM,EAAI,GAAK,KAAOqkI,GAAU,EAAI,IAAM,KAEzF,GAAIC,GAAQ,IAAMC,GAAQ,GAAI,CAC5BvkI,EAAK5M,CACL,IAAImxI,EAAO,GAAI,CACbvkI,GAAM,CACN5M,IAAK4M,EAEP0kI,EAAKrxI,MAAMixI,GAAQ,GAAK,MAAQ,KAAO,MACvC,IAAID,GAAU,EACZI,EAAKpxI,MAAMkxI,GAAQ,IAAMD,GAAQ,IAAMtkI,GAAM,GAAK,GAAK,KAAOA,OAE9DykI,GAAKpxI,KAAK2M,GAAMqkI,GAAU,EAAI,WAAarkI,GAAM,EAAI,GAAK,KAAOqkI,GAAU,EAAI,IAAM,KAEzF,GAAIE,GAAQ,GAAI,CACdvkI,EAAKhM,KAAKC,MAAM,IAAMb,EACtB,IAAIkxI,EAAO,GACTI,EAAKrxI,KAAK,WACZ,IAAIgxI,GAAU,EACZI,EAAKpxI,MAAM2M,GAAM,IAAM,GAAKA,GAAM,GAAK,IAAM,MAAQA,OAErDykI,GAAKpxI,KAAK2M,GAAMqkI,GAAU,EAAI,gBAAkBrkI,GAAM,EAAI,GAAK,KAAOqkI,GAAU,EAAI,KAAO,KAE/Fp2G,EAAK5xB,EAAIooI,EAAKp2I,KAAKg2I,GAAU,EAAI,IAAM,IACvCp2G,GAAKzJ,EAAIkgH,EAAKr2I,KAAKg2I,GAAU,EAAI,MAAQ,IACzC,IAAIA,GAAU,EACZp2G,EAAK5xB,EAAI4xB,EAAK5xB,EAAEhM,QAAQ,aAAc,QAG9C,QAASs0I,IAAkB7zI,EAAK8zI,EAAKlxI,GACnC,GAAImxI,GAAKlE,GAAe7vI,EACxB,IAAI0X,GAAQq8H,EAAGC,UAAU,EAAG,KAC5B,IAAI3xI,IAAQ,EAAGo9D,GAAQ,EAAGw0E,GAAQ,EAAGC,EAAOxjH,IAAK9f,EAAK,GAAItG,MAAK,KAAM,EAAG,EACxE,IAAI6pI,GAAOvxI,EAAI,EAAI,GAAK,CACxB,IAAI8U,EAAQ,EAAG,CACbu8H,EAAOF,EAAGC,UAAUG,EAAM,KAC1BA,IAAQ,EAEVA,GAAQvD,GAAOl5H,GAAS9U,EAAI,EAAI,KAAO,MAAQ,CAC/C,IAAI8U,EAAQ,IAAK,CACfrV,EAAO0xI,EAAGC,UAAUG,EAAM,KAC1BA,IAAQ,EAEVA,GAAQvD,GAAOl5H,GAAS9U,EAAI,EAAI,MAAQ,OAAS,CACjD,IAAI8U,EAAQ,GAAI,CACd+nD,EAAOs0E,EAAGC,UAAUG,EAAM,KAC1BA,IAAQ,EAEV,GAAIz8H,EAAQ,GAAI,CACdw8H,EAAOH,EAAGK,WAAWD,EAAM,KAC3BA,IAAQ,EAEV,GAAIz8H,EAAQ,GAAI,CACd9G,EAAGid,QAAQjd,EAAG7F,UAAYgpI,EAAGK,WAAWD,EAAM,MAAQ,IACtDA,IAAQ,EAEV,GAAIvxI,EAAI,EAAG,CACT8U,EAAQq8H,EAAGC,UAAU,EAAG,QAAU,EAClC,IAAIt8H,EAAQ,IAAK,CACf,GAAIu8H,IAAS,EACXA,EAAOF,EAAGC,UAAUG,EAAM,KAC5BA,IAAQ,GAGZ,GAAIz6F,EACJ,IAAI72C,GAAI7C,EAAI4C,GAAK,EAAI,EAAI,EACzB,QAAQC,GACN,IAAK,GACH,WAAY,GACd,IAAK,GACH62C,GAAQ72C,EAAG,IAAKD,EAAGsxI,EACnB,OACF,IAAK,GACHx6F,GAAQ72C,EAAG,IAAKD,EAAGkxI,EAAI/iG,IAAI0uB,GAC3B,OACF,IAAK,GACH/lB,GAAQ72C,EAAG,IAAKD,EAAGgO,EACnB,OACF,IAAK,GACH8oC,GAAQ72C,EAAG,IAAKD,EAAGsxI,EAAO,EAC1B,OACF,IAAK,GACHx6F,GAAQ72C,EAAG,IAAKD,EAAGsxI,EACnB,OACF,IAAK,GACHx6F,GAAQ72C,EAAG,IAAKD,EAAG,EACnB,OACF,IAAK,GACH,CACE,GAAIP,GAAQ,EACVq3C,GAAQ72C,EAAG,IAAKD,EAAGkxI,EAAIf,KAAK1wI,QAE5B,MAAM,IAAIf,OAAM,yBAAyBI,OAAO1B,EAAIwU,IAAU,EAAG,KAErE,MACF,QACE,KAAM,IAAIlT,OAAM,yBAAyBI,OAAO1B,EAAIwU,IAAU,EAAG,MAErE,GAAIy/H,GAAQ,EACVf,GAAoBx5F,EAAK72C,EAAID,GAAK,EAAG8U,EAAOo8H,EAAId,KAAKiB,GAAOH,EAAIb,KAAKgB,GACvE,IAAIpxI,GAAK,EACP62C,EAAI92C,GAAK,KACX,OAAO82C,GAET,QAAS26F,IAAkBr0I,EAAK8zI,GAC9B,GAAIC,GAAKlE,GAAe7vI,EACxB,IAAI0X,GAAQq8H,EAAGC,UAAU,EAAG,KAC5B,IAAIjhF,GAASghF,EAAGC,UAAU,EAAG,KAC7B,IAAIG,GAAO,EACX,IAAI9xI,IAAQ,EAAGo9D,GAAQ,EAAGw0E,GAAQ,EAAGK,EAAO5jH,IAAKwjH,EAAOxjH,IAAK9f,EAAK,GAAItG,MAAK,KAAM,EAAG,EACpF,IAAIyoD,EAAS,EAAG,CACduhF,EAAOzD,GAAiB7wI,EAAKm0I,EAC7BA,IAAQ,GAEV,GAAIphF,EAAS,EAAG,CACdmhF,EAAOH,EAAGK,WAAWD,EAAM,KAC3BA,IAAQ,EAEV,GAAIphF,EAAS,EAAG,CACdniD,EAAGid,QAAQjd,EAAG7F,UAAYgpI,EAAGK,WAAWD,EAAM,MAAQ,IACtDA,IAAQ,EAEV,GAAIphF,EAAS,EAAG,CACd0M,EAAOs0E,EAAGC,UAAUG,EAAM,KAC1BA,IAAQ,EAEV,GAAIphF,EAAS,GAAI,CACf1wD,EAAO0xI,EAAGC,UAAUG,EAAM,KAC1BA,IAAQ,EAEV,GAAIz6F,EACJ,IAAI72C,GAAI7C,EAAI,EACZ,QAAQ6C,GACN,IAAK,GACH,WAAY,GACd,IAAK,GACH62C,GAAQ72C,EAAG,IAAKD,EAAG0xI,EACnB,OACF,IAAK,GACH56F,GAAQ72C,EAAG,IAAKD,EAAGkxI,EAAI/iG,IAAI0uB,GAC3B,OACF,IAAK,GACH/lB,GAAQ72C,EAAG,IAAKD,EAAGgO,EACnB,OACF,IAAK,GACH8oC,GAAQ72C,EAAG,IAAKD,EAAGsxI,EAAO,EAC1B,OACF,IAAK,GACHx6F,GAAQ72C,EAAG,IAAKD,EAAGsxI,EACnB,OACF,IAAK,GACHx6F,GAAQ72C,EAAG,IAAKD,EAAG,EACnB,OACF,IAAK,GACH82C,GAAQ72C,EAAG,IAAKD,EAAGkxI,EAAIf,KAAK1wI,GAC5B,OACF,IAAK,IACHq3C,GAAQ72C,EAAG,IAAKD,EAAG0xI,EACnB,OACF,QACE,KAAM,IAAIhzI,OAAM,yBAAyBI,OAAO1B,EAAI,GAAI,OAAO0B,OAAOqxD,EAAS,GAAI,OAAOrxD,OAAO1B,EAAIwU,IAAU,EAAG,MAEtH2/H,GAAQvD,GAAO79E,EAAS,MAAQ,CAChC,IAAIA,EAAS,OAAQ,CACnB,GAAIkhF,IAAS,EACXA,EAAOF,EAAGC,UAAUG,EAAM,KAC5BA,IAAQ,EAEV,GAAIF,GAAQ,EACVf,GAAoBx5F,EAAK72C,EAAI,GAAK,EAAGkwD,GAAU,GAAI+gF,EAAId,KAAKiB,GAAOH,EAAIb,KAAKgB,GAC9E,IAAIpxI,GAAK,EACP62C,EAAI92C,GAAK,KACX,OAAO82C,GAET,QAAS66F,IAAkBp3G,EAAM4T,GAC/B,GAAI7uC,GAAM,GAAI3B,YAAW,IAAKwzI,EAAKlE,GAAe3tI,GAAM6P,EAAI,GAAI2F,EAAQ,CACxExV,GAAI,GAAK,CACT,QAAQi7B,EAAKt6B,GACX,IAAK,IACHX,EAAI,GAAK,CACT8uI,IAAkB9uI,EAAK6P,EAAGorB,EAAKv6B,EAC/B8U,IAAS,CACT3F,IAAK,EACL,OACF,IAAK,IACH7P,EAAI,GAAK,CACT6xI,GAAGS,WAAWziI,EAAGorB,EAAKv6B,EAAI,EAAI,EAAG,KACjC8U,IAAS,CACT3F,IAAK,CACL,OACF,IAAK,IACH,GAAIg/B,EAAIt0C,QAAQ0gC,EAAKv6B,KAAO,EAC1B,KAAM,IAAItB,OAAM,SAASI,OAAOy7B,EAAKv6B,EAAG,sBAC1CV,GAAI,GAAK,CACT6xI,GAAGU,UAAU1iI,EAAGg/B,EAAIt0C,QAAQ0gC,EAAKv6B,GAAI,KACrC8U,IAAS,CACT3F,IAAK,CACL,OACF,QACE,KAAM,yBAA2BorB,EAAKt6B,GAE1CkxI,EAAGU,UAAU,EAAG/8H,EAAO,KACvB,OAAOxV,GAAIsS,IAAU,EAAGzC,GAE1B,QAAS2iI,IAAkBv3G,EAAM4T,GAC/B,GAAI7uC,GAAM,GAAI3B,YAAW,IAAKwzI,EAAKlE,GAAe3tI,GAAM6P,EAAI,GAAI2F,EAAQ,CACxExV,GAAI,GAAK,CACT,QAAQi7B,EAAKt6B,GACX,IAAK,IACHX,EAAI,GAAK,CACT6xI,GAAGS,WAAWziI,EAAGorB,EAAKv6B,EAAG,KACzB8U,IAAS,EACT3F,IAAK,CACL,OACF,IAAK,IACH7P,EAAI,GAAK,CACT6xI,GAAGS,WAAWziI,EAAGorB,EAAKv6B,EAAI,EAAI,EAAG,KACjC8U,IAAS,EACT3F,IAAK,CACL,OACF,IAAK,IACH,GAAIg/B,EAAIt0C,QAAQ0gC,EAAKv6B,KAAO,EAC1B,KAAM,IAAItB,OAAM,SAASI,OAAOy7B,EAAKv6B,EAAG,sBAC1CV,GAAI,GAAK,CACT6xI,GAAGU,UAAU1iI,EAAGg/B,EAAIt0C,QAAQ0gC,EAAKv6B,GAAI,KACrC8U,IAAS,EACT3F,IAAK,CACL,OACF,QACE,KAAM,yBAA2BorB,EAAKt6B,GAE1CkxI,EAAGU,UAAU,EAAG/8H,EAAO,KACvB,OAAOxV,GAAIsS,IAAU,EAAGzC,GAE1B,QAAS4iI,IAAmB30I,EAAK8zI,GAC/B,OAAQ9zI,EAAI,IACV,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,GACH,MAAO6zI,IAAkB7zI,EAAK8zI,EAAK9zI,EAAI,IACzC,IAAK,GACH,MAAOq0I,IAAkBr0I,EAAK8zI,GAChC,QACE,KAAM,IAAIxyI,OAAM,+BAA+BI,OAAO1B,EAAI,OAGhE,QAAS40I,IAAoB50I,GAC3B,GAAI60I,GAAKnD,GAAc1xI,EACvB,OAAOixI,IAAe4D,EAAG,GAAG,GAAG/3I,MAEjC,QAASg4I,IAAoBznI,GAC3B,MAAOskI,UAEFtlI,KAAM,EAAGvP,KAAMs0I,GAAe/jI,OAGrC,QAAS0nI,IAAwB7qI,EAAGoT,GAClC,GAAIu3H,GAAKnD,GAAcp0H,EAAKxgB,KAC5B,IAAIuP,GAAOmlI,GAAcqD,EAAG,GAAG,GAAG/3I,KAClC,IAAI4+C,GAAUm5F,EAAG,EACjB,IAAI/3I,OACH4+C,OAAe9nC,QAAQ,SAASsH,GAC/B,GAAI85H,GAAKtD,GAAcx2H,EAAMpe,KAC7B,IAAIowB,GAAMskH,GAAcwD,EAAG,GAAG,GAAGl4I,QAAU,CAC3C,QAAQuP,GACN,IAAK,GACHvP,EAAKowB,GAAOijH,GAAM6E,EAAG,GAAG,GAAGl4I,KAC3B,OACF,IAAK,GACH,CACE,GAAIikD,GAAK72C,EAAE0qI,GAAoBI,EAAG,GAAG,GAAGl4I,OAAO,EAC/C,IAAIm4I,GAAMvD,GAAc3wF,EAAGjkD,KAC3B,IAAIo4I,GAAShrI,EAAE0qI,GAAoBK,EAAI,GAAG,GAAGn4I,OAAO,EACpD,IAAIq4I,GAAQ3D,GAAc0D,EAAO33E,KAAK,GAAG,GAAGzgE,KAC5C,IAAIq4I,GAAS,KACX,KAAM,IAAI7zI,OAAM,gCAAgCI,OAAOyzI,GACzD,IAAIC,GAAS1D,GAAcwD,EAAOp4I,KAClCA,GAAKowB,GAAOkoH,EAAO,GAAGt0I,IAAI,SAAS/C,GACjC,MAAOoyI,IAAMpyI,EAAEjB,QACdS,KAAK,IAEV,MACF,IAAK,GACHT,EAAKowB,GAAOwkH,GAAcsD,EAAG,GAAG,GAAGl4I,KACnC,OACF,QACE,KAAMuP,MAGZ,OAAOvP,GAET,QAASu4I,IAAsBjF,EAAI/jI,GACjC,GAAI2lI,GAAImB,EAAIC,EAAI9jC,EAAIgmC,EAAIhhF,EAAIihF,EAAIC,EAAIC,EAAI/zB,EAAIg0B,EAAIhhF,EAAIihF,EAAIlhF,CACxD,IAAIogF,GAAKnD,GAActB,EACvB,IAAIj6H,GAAIq7H,GAAcqD,EAAG,GAAG,GAAG/3I,QAAU,CACzC,IAAI4e,GAAM81H,GAAcqD,EAAG,GAAG,GAAG/3I,QAAU,CAC3C,IAAI84I,KAAiBzC,GAAMnB,EAAK6C,EAAG,KAAO,SAAY,GAAI7C,EAAG,KAAO,SAAY,GAAImB,EAAGr2I,OAAS00I,GAAcqD,EAAG,GAAG,GAAG/3I,MAAQ,GAAK,KACpI,IAAI+4I,GAAiBC,CACrB,MAAMxmC,GAAM8jC,EAAKyB,EAAG,KAAO,SAAY,GAAIzB,EAAG,KAAO,SAAY,GAAI9jC,EAAGxyG,OAASuP,GAAQ,EAAG,CAC1FwpI,GAAmBvhF,GAAMghF,EAAKT,EAAG,KAAO,SAAY,GAAIS,EAAG,KAAO,SAAY,GAAIhhF,EAAGx3D,IACrFg5I,IAAgBN,GAAMD,EAAKV,EAAG,KAAO,SAAY,GAAIU,EAAG,KAAO,SAAY,GAAIC,EAAG14I,SAC7E,MAAM4kH,GAAM+zB,EAAKZ,EAAG,KAAO,SAAY,GAAIY,EAAG,KAAO,SAAY,GAAI/zB,EAAG5kH,OAASuP,GAAQ,EAAG,CACjGwpI,GAAmBnhF,GAAMghF,EAAKb,EAAG,KAAO,SAAY,GAAIa,EAAG,KAAO,SAAY,GAAIhhF,EAAG53D,IACrFg5I,IAAgBrhF,GAAMkhF,EAAKd,EAAG,KAAO,SAAY,GAAIc,EAAG,KAAO,SAAY,GAAIlhF,EAAG33D,SAElF,MAAM,wBAAwB4E,OAAO2K,EAAM,gBAC7C,IAAI6xC,GAAQ03F,EAAe,EAAI,CAC/B,IAAIG,GAAuBlG,GAAegG,EAC1C,IAAIj6D,KACJ,KAAK,GAAIhmE,GAAI,EAAGA,EAAIigI,EAAgB34I,OAAS,IAAK0Y,EAAG,CACnD,GAAI0O,GAAMyxH,EAAqBC,UAAUpgI,EAAI,EAAG,KAChD,IAAI0O,EAAM,MACRs3D,EAAQr5E,MAAMqT,EAAG0O,IAErB,GAAIs3D,EAAQ1+E,QAAUwe,EACpB,KAAM,YAAYha,OAAOga,EAAK,kBAAkBha,OAAOk6E,EAAQ1+E,OACjE,IAAI+qG,KACJ,KAAKryF,EAAI,EAAGA,EAAIgmE,EAAQ1+E,OAAS,IAAK0Y,EACpCqyF,EAAMrsB,EAAQhmE,GAAG,IAAMkgI,EAAathI,IAAUonE,EAAQhmE,GAAG,GAAKsoC,EAAO09B,EAAQhmE,EAAI,GAAG,GAAKsoC,EAC3F,IAAI09B,EAAQ1+E,QAAU,EACpB+qG,EAAMrsB,EAAQA,EAAQ1+E,OAAS,GAAG,IAAM44I,EAAathI,IAAUonE,EAAQA,EAAQ1+E,OAAS,GAAG,GAAKghD,EAClG,QAAS/nC,EAAGA,EAAG8xF,MAAOA,GAExB,QAASguC,IAAe/rI,EAAGoT,GACzB,GAAI00H,EACJ,IAAI6C,GAAKnD,GAAcp0H,EAAKxgB,KAC5B,IAAIggB,IAAW,CACf,KAAKk1H,EAAK6C,GAAM,SAAY,GAAIA,EAAG,KAAO,SAAY,GAAI7C,EAAG,GAAI,CAC/D,GAAIR,GAAcqD,EAAG,GAAG,GAAG/3I,QAAU,EACnCggB,EAAU,MAEVA,GAAU,EAEd,GAAIrN,GAAKqiI,GAAM+C,EAAG,GAAI,SAASzE,GAC7B,MAAOiF,IAAsBjF,EAAItzH,IAEnC,QACEo5H,MAAO1E,GAAcqD,EAAG,GAAG,GAAG/3I,QAAU,EACxCA,KAAM2S,EAAGihI,OAAO,SAASC,EAAK5yI,GAC5B,IAAK4yI,EAAI5yI,EAAEoY,GACTw6H,EAAI5yI,EAAEoY,KACRpY,GAAEkqG,MAAMr0F,QAAQ,SAASupB,EAAMvnB,GAC7B,GAAI+6H,EAAI5yI,EAAEoY,GAAGP,GACX,KAAM,IAAItU,OAAM,oBAAoBI,OAAO3D,EAAEoY,EAAG,OAAOzU,OAAOkU,GAChE+6H,GAAI5yI,EAAEoY,GAAGP,GAAKunB,GAEhB,OAAOwzG,SAIb,QAASwF,IAA4BjsI,EAAGoT,EAAM2iB,GAC5C,GAAI+xG,GAAImB,EAAIC,EAAI9jC,EAAIgmC,EAAIhhF,CACxB,IAAIugF,GAAKnD,GAAcp0H,EAAKxgB,KAC5B,IAAI0gC,IAAU58B,GAAKqN,EAAG,EAAG7M,EAAG,GAAKrB,GAAKkO,EAAG,EAAG7M,EAAG,GAC/Co8B,GAAMz9B,EAAEkO,GAAKujI,GAAcqD,EAAG,GAAG,GAAG/3I,QAAU,GAAK,CACnD,IAAI0gC,EAAMz9B,EAAEkO,EAAI,EACd,KAAM,IAAI3M,OAAM,sBAAsBI,OAAOmzI,EAAG,GAAG,GAAG/3I,MACxD0gC,GAAMz9B,EAAEqB,GAAKowI,GAAcqD,EAAG,GAAG,GAAG/3I,QAAU,GAAK,CACnD,IAAI0gC,EAAMz9B,EAAEqB,EAAI,EACd,KAAM,IAAIE,OAAM,sBAAsBI,OAAOmzI,EAAG,GAAG,GAAG/3I,MACxDmjC,GAAG,QAAUrB,GAAapB,EAC1B,IAAIwC,GAAQx/B,MAAMW,QAAQ8+B,EAC1B,IAAIm2G,GAAQ1E,GAAcmD,EAAG,GAAG,GAAG/3I,KACnC,IAAIg3I,GAAMhB,IACV,KAAKd,EAAKoE,EAAM,KAAO,SAAY,GAAIpE,EAAG,GACxC8B,EAAI/iG,IAAMgkG,GAAwB7qI,EAAGA,EAAE0qI,GAAoBwB,EAAM,GAAG,GAAGt5I,OAAO,GAChF,KAAKq2I,EAAKiD,EAAM,MAAQ,SAAY,GAAIjD,EAAG,GACzCW,EAAId,KAAO+B,GAAwB7qI,EAAGA,EAAE0qI,GAAoBwB,EAAM,IAAI,GAAGt5I,OAAO,GAClF,KAAKs2I,EAAKgD,EAAM,MAAQ,SAAY,GAAIhD,EAAG,GACzCU,EAAIf,KAAOgC,GAAwB7qI,EAAGA,EAAE0qI,GAAoBwB,EAAM,IAAI,GAAGt5I,OAAO,GAClF,KAAKwyG,EAAK8mC,EAAM,MAAQ,SAAY,GAAI9mC,EAAG,GACzCwkC,EAAIb,KAAO8B,GAAwB7qI,EAAGA,EAAE0qI,GAAoBwB,EAAM,IAAI,GAAGt5I,OAAO,GAClF,IAAIu5I,GAAO3E,GAAc0E,EAAM,GAAG,GAAGt5I,KACrC,IAAIojC,GAAK,CACTm2G,GAAK,GAAGziI,QAAQ,SAAS/Q,GACvB,GAAIyzI,GAAK5E,GAAc7uI,EAAE/F,KACzB,IAAIy5I,GAAOrsI,EAAE0qI,GAAoB0B,EAAG,GAAG,GAAGx5I,OAAO,EACjD,IAAI05I,GAAShF,GAAc+E,EAAKh5E,KAAK,GAAG,GAAGzgE,KAC3C,IAAI05I,GAAU,KACZ,KAAM,IAAIl1I,OAAM,gCAAgCI,OAAO80I,GACzD,IAAIC,GAAQR,GAAe/rI,EAAGqsI,EAC9BE,GAAM35I,KAAK8W,QAAQ,SAASsV,EAAK/S,GAC/B+S,EAAItV,QAAQ,SAAS5T,EAAK4V,GACxB,GAAI4c,GAAMmiH,GAAmB30I,EAAK8zI,EAClC,IAAIthH,EAAK,CACP,GAAIwN,EAAO,CACT,IAAKC,EAAGC,EAAK/pB,GACX8pB,EAAGC,EAAK/pB,KACV8pB,GAAGC,EAAK/pB,GAAGP,GAAK4c,MACX,CACL,GAAIxW,GAAO0hB,IAAczvB,EAAGiyB,EAAK/pB,EAAG/U,EAAGwU,GACvCqqB,GAAGjkB,GAAQwW,OAKnB0N,IAAMu2G,EAAMP,OAEd,KAAKZ,EAAKc,EAAM,MAAQ,SAAY,GAAId,EAAG,GAAI,CAC7C,GAAI/oF,GAAMriD,EAAE0qI,GAAoBwB,EAAM,IAAI,GAAGt5I,OAAO,EACpD,IAAIq4I,GAAQ3D,GAAcjlF,EAAIgR,KAAK,GAAG,GAAGzgE,KACzC,IAAIq4I,GAAS,KACX,KAAM,IAAI7zI,OAAM,mCAAmCI,OAAOyzI,GAC5Dl1G,GAAG,YAAcq0B,EAAKo9E,GAAcnlF,EAAIzvD,QAAU,SAAY,GAAIw3D,EAAG,GAAGxzD,IAAI,SAAS41I,GACnF,GAAIxE,GAAQR,GAAcgF,EAAG55I,KAC7B,IAAIsjC,GAASyvG,GAAe6B,GAAcQ,EAAM,GAAG,GAAGp1I,MAAM,GAAG,GAAGA,MAAOwe,EAAOu0H,GAAe6B,GAAcQ,EAAM,GAAG,GAAGp1I,MAAM,GAAG,GAAGA,KACrI,QACE8D,GAAKqN,EAAGmyB,EAAO41G,UAAU,EAAG,MAAO50I,EAAGg/B,EAAO41G,UAAU,EAAG,OAC1Dj2I,GACEkO,EAAGmyB,EAAO41G,UAAU,EAAG,MAAQ16H,EAAK06H,UAAU,EAAG,MAAQ,EACzD50I,EAAGg/B,EAAO41G,UAAU,EAAG,MAAQ16H,EAAK06H,UAAU,EAAG,MAAQ,OAMnE,QAASW,IAA2BzsI,EAAGoT,EAAM/T,GAC3C,GAAIsrI,GAAKnD,GAAcp0H,EAAKxgB,KAC5B,IAAIoF,EACJ,MAAMqH,GAAQ,SAAY,GAAIA,EAAKy2B,OACjC99B,GAAQo+D,OAAQ,UAEhBp+D,KACFA,GAAI,QAAU,IACd,IAAI00I,GAAW1sI,EAAE0qI,GAAoBC,EAAG,GAAG,GAAG/3I,MAC9C,IAAIq4I,GAAQ3D,GAAcoF,EAAS,GAAGr5E,KAAK,GAAG,GAAGzgE,KACjD,IAAIq4I,GAAS,KACX,KAAM,IAAI7zI,OAAM,gCAAgCI,OAAOyzI,GACzDgB,IAA4BjsI,EAAG0sI,EAAS,GAAI10I,EAC5C,OAAOA,GAET,QAAS20I,IAAsB3sI,EAAGoT,EAAM/T,GACtC,GAAIyoI,EACJ,IAAI6C,GAAKnD,GAAcp0H,EAAKxgB,KAC5B,IAAIoF,IACF8X,OAAQg4H,EAAK6C,EAAG,KAAO,SAAY,GAAI7C,EAAG,IAAM7B,GAAM0E,EAAG,GAAG,GAAG/3I,MAAQ,GACvE6iC,UAEF,IAAIm3G,GAAYhF,GAAM+C,EAAG,GAAID,GAC7BkC,GAAUljI,QAAQ,SAAS0Q,GACzBpa,EAAEoa,GAAK1Q,QAAQ,SAAS5J,GACtB,GAAImrI,GAAQ3D,GAAcxnI,EAAEuzD,KAAK,GAAG,GAAGzgE,KACvC,IAAIq4I,GAAS,IACXjzI,EAAIy9B,OAAOp9B,KAAKo0I,GAA2BzsI,EAAGF,EAAGT,OAGvD,OAAOrH,GAET,QAAS60I,IAAyB7sI,EAAGoT,EAAM/T,GACzC,GAAIyoI,EACJ,IAAI9vI,GAAMilI,IACV,IAAI0N,GAAKnD,GAAcp0H,EAAKxgB,KAC5B,KAAKk1I,EAAK6C,EAAG,KAAO,SAAY,GAAI7C,EAAG,GACrC,KAAM,IAAI1wI,OAAM,0CAClB,IAAI01I,GAAYlF,GAAM+C,EAAG,GAAID,GAC7BoC,GAAUpjI,QAAQ,SAAS0Q,GACzBpa,EAAEoa,GAAK1Q,QAAQ,SAAS5J,GACtB,GAAImrI,GAAQ3D,GAAcxnI,EAAEuzD,KAAK,GAAG,GAAGzgE,KACvC,IAAIq4I,GAAS,EAAG,CACd,GAAI8B,GAAQJ,GAAsB3sI,EAAGF,EAAGT,EACxC0tI,GAAMt3G,OAAO/rB,QAAQ,SAAS8rB,EAAOryB,GACnC66D,GAAkBhmE,EAAKw9B,EAAOryB,GAAO,EAAI4pI,EAAMj9H,KAAOi9H,EAAMj9H,KAAO,IAAM3M,EAAK,YAKtF,IAAInL,EAAI09B,WAAW1iC,QAAU,EAC3B,KAAM,IAAIoE,OAAM,qBAClBY,GAAIqvC,SAAW,SACf,OAAOrvC,GAET,QAASg1I,IAAkB75H,EAAK9T,GAC9B,GAAIyoI,GAAImB,EAAIC,EAAI9jC,EAAIgmC,EAAIhhF,EAAIihF,EAAIC,CAChC,IAAItrI,MAAQitI,IACZ95H,GAAIhD,UAAUzG,QAAQ,SAAS0C,GAC7B,GAAIA,EAAE/I,MAAM,WACV,KAAM,IAAIjM,OAAM,oCAEpB+b,GAAIjD,UAAUxG,QAAQ,SAAShT,GAC7B,IAAKA,EAAEoZ,KAAKzM,MAAM,UAChB,MACF,IAAI3M,EAAEqB,QAAQ,IAAM,GAClB,MACF,IAAIlF,EACJ,KACEA,EAAI41I,GAAoB/xI,EAAEqB,SAC1B,MAAOlC,GACP,MAAOyf,SAAQ1T,IAAI,MAAQlL,EAAEqB,QAAQ/E,OAAS,KAAO6C,EAAEihB,SAAWjhB,IAEpE,GAAIq3I,EACJ,KACEA,EAAUrF,GAAeh1I,GACzB,MAAOgD,GACP,MAAOyf,SAAQ1T,IAAI,OAAS/L,EAAEihB,SAAWjhB,IAE3Cq3I,EAAQxjI,QAAQ,SAASyjI,GACvBntI,EAAEmtI,EAAOn1F,IAAMm1F,EAAOpF,QACtBkF,GAAQ50I,KAAK80I,EAAOn1F,OAGxB,KAAKi1F,EAAQj6I,OACX,KAAM,IAAIoE,OAAM,uBAClB,MAAMguG,GAAM8jC,GAAMD,GAAMnB,EAAK9nI,GAAK,SAAY,GAAIA,EAAE,KAAO,SAAY,GAAI8nI,EAAG,KAAO,SAAY,GAAImB,EAAG51E,OAAS,SAAY,GAAI61E,EAAG,KAAO,SAAY,GAAI9jC,EAAG,GAAGxyG,OAAS00I,GAActnI,EAAE,GAAG,GAAGqzD,KAAK,GAAG,GAAGzgE,OAAS,IAClN,KAAM,IAAIwE,OAAM,oCAClB,IAAIg2I,KAAY9B,GAAMD,GAAMjhF,GAAMghF,EAAKprI,GAAK,SAAY,GAAIA,EAAE,KAAO,SAAY,GAAIorI,EAAG,KAAO,SAAY,GAAIhhF,EAAGiJ,OAAS,SAAY,GAAIg4E,EAAG,KAAO,SAAY,GAAIC,EAAG,GAAG14I,OAAS00I,GAActnI,EAAE,GAAG,GAAGqzD,KAAK,GAAG,GAAGzgE,OAAS,GAAKoN,EAAE,GAAG,EACxO,KAAKotI,EACHH,EAAQvjI,QAAQ,SAASvG,GACvBnD,EAAEmD,GAAKuG,QAAQ,SAAS2jI,GACtB,GAAIpC,GAAQ3D,GAAc+F,EAAKh6E,KAAK,GAAG,GAAGzgE,QAAU,CACpD,IAAIq4I,GAAS,EAAG,CACd,IAAKmC,EACHA,EAAUC,MAEV,MAAM,IAAIj2I,OAAM,mCAI1B,KAAKg2I,EACH,KAAM,IAAIh2I,OAAM,4BAClB,OAAOy1I,IAAyB7sI,EAAGotI,EAAS/tI,GAE9C,QAASiuI,IAAeC,EAAK36I,EAAMs1C,EAAKslG,GACtC,GAAI1F,GAAImB,CACR,OAAOnB,EAAKyF,EAAI,KAAO,SAAY,GAAIzF,EAAG,QAAUmB,EAAKsE,EAAI,KAAO,SAAY,GAAItE,EAAG,IACrF,KAAM,2CACR,IAAIz3H,GAAM,CACV,IAAI+7H,EAAI,GAAG,GAAG36I,KAAKI,OAAS,EAAIJ,EAAKI,OAAQ,CAC3C,GAAIy6I,GAAQ,GAAIp3I,YAAW,EAAIzD,EAAKI,OACpCy6I,GAAM91I,IAAI41I,EAAI,GAAG,GAAG36I,KACpB26I,GAAI,GAAG,GAAG36I,KAAO66I,EAEnB,GAAIF,EAAI,GAAG,GAAG36I,KAAKI,OAAS,EAAIJ,EAAKI,OAAQ,CAC3C,GAAI06I,GAAQ,GAAIr3I,YAAW,EAAIzD,EAAKI,OACpC06I,GAAM/1I,IAAI41I,EAAI,GAAG,GAAG36I,KACpB26I,GAAI,GAAG,GAAG36I,KAAO86I,EAEnB,GAAI7D,GAAKlE,GAAe4H,EAAI,GAAG,GAAG36I,MAAO+6I,EAAc,EAAGC,IAC1D,IAAIC,GAAMlI,GAAe4H,EAAI,GAAG,GAAG36I,MAAOk7I,EAAe,EAAGC,IAC5D,IAAI/5F,GAAQw5F,EAAO,EAAI,CACvB,KAAK,GAAI9hI,GAAI,EAAGA,EAAI9Y,EAAKI,SAAU0Y,EAAG,CACpC,GAAI9Y,EAAK8Y,IAAM,KAAM,CACnBm+H,EAAGmE,UAAUtiI,EAAI,EAAG,MAAO,KAC3BmiI,GAAIG,UAAUtiI,EAAI,EAAG,MACrB,UAEFm+H,EAAGmE,UAAUtiI,EAAI,EAAGiiI,EAAc35F,EAAO,KACzC65F,GAAIG,UAAUtiI,EAAI,EAAGoiI,EAAe95F,EAAO,KAC3C,IAAIi6F,GAASC,CACb,cAAet7I,GAAK8Y,IAClB,IAAK,SACHuiI,EAAU5D,IAAoB1xI,EAAG,IAAKD,EAAG9F,EAAK8Y,IAAMw8B,EACpDgmG,GAAW1D,IAAoB7xI,EAAG,IAAKD,EAAG9F,EAAK8Y,IAAMw8B,EACrD,OACF,IAAK,SACH+lG,EAAU5D,IAAoB1xI,EAAG,IAAKD,EAAG9F,EAAK8Y,IAAMw8B,EACpDgmG,GAAW1D,IAAoB7xI,EAAG,IAAKD,EAAG9F,EAAK8Y,IAAMw8B,EACrD,OACF,IAAK,UACH+lG,EAAU5D,IAAoB1xI,EAAG,IAAKD,EAAG9F,EAAK8Y,IAAMw8B,EACpDgmG,GAAW1D,IAAoB7xI,EAAG,IAAKD,EAAG9F,EAAK8Y,IAAMw8B,EACrD,OACF,QACE,KAAM,IAAI9wC,OAAM,qBAAuBxE,EAAK8Y,KAEhDkiI,EAAav1I,KAAK41I,EAClBN,IAAeM,EAAQj7I,MACvB,EACE+6I,EAAc11I,KAAK61I,EACnBJ,IAAgBI,EAASl7I,SAEzBwe,EAEJ+7H,EAAI,GAAG,GAAG36I,KAAOs0I,GAAe11H,EAChC+7H,GAAI,GAAG,GAAG36I,KAAOs0I,GAAe,EAChC,MAAOx7H,EAAI6hI,EAAI,GAAG,GAAG36I,KAAKI,OAAS,IAAK0Y,EAAG,CACzCm+H,EAAGmE,UAAUtiI,EAAI,EAAG,MAAO,KAC3BmiI,GAAIG,UAAUtiI,EAAI,EAAG,MAAO,MAE9B6hI,EAAI,GAAG,GAAG36I,KAAO0zI,GAASsH,EAC1BL,GAAI,GAAG,GAAG36I,KAAO0zI,GAASyH,EAC1BR,GAAI,KAAQprI,KAAM,EAAGvP,KAAMs0I,GAAesG,EAAO,EAAI,IACrD,OAAOh8H,GAET,QAAS28H,IAAWhsI,EAAM8O,GACxB,OACEoiD,WAEKlxD,KAAM,EAAGvP,KAAMs0I,GAAe/kI,MAEnCvP,KAAMqe,GAGV,QAASm9H,IAAiBC,EAAKC,GAC7B,IAAKA,EAAW1tC,KACd0tC,EAAW1tC,KAAO,MACpB,KAAK,GAAI9tG,GAAIw7I,EAAW1tC,KAAM9tG,EAAI,MAAOA,EACvC,IAAKw7I,EAAWx7I,GAAI,CAClBw7I,EAAWA,EAAW1tC,KAAO9tG,GAAKu7I,CAClC,OAAOv7I,GAEX,KAAM,IAAIsE,OAAM,qBAElB,QAASm3I,IAAmBp7H,GAC1B,GAAIm7H,KACJ,IAAIrB,KACJ95H,GAAIjD,UAAUtZ,IAAI,SAASomB,EAAI7Z,GAC7B,OAAQ6Z,EAAI7J,EAAIhD,UAAUhN,MACzBuG,QAAQ,SAASsV,GAClB,GAAIhC,GAAKgC,EAAI,GAAIjC,EAAKiC,EAAI,EAC1B,IAAIhC,EAAG7a,MAAQ,EACb,MACF,KAAK6a,EAAGlN,KAAKzM,MAAM,SACjB,MACF,IAAI2Z,EAAGlN,KAAKzM,MAAM,oBAChB,MACFwkI,IAAeY,GAAoBzrH,EAAGjlB,UAAU2R,QAAQ,SAASyjI,GAC/DF,EAAQ50I,KAAK80I,EAAOn1F,GACpBs2F,GAAWnB,EAAOn1F,KAAQw2F,QAAUzyC,SAAUh/E,EAAI5a,KAAMmlI,GAAc6F,EAAOpF,SAAS,GAAG10E,KAAK,GAAG,GAAGzgE,UAGxGq6I,GAAQ/4H,KAAK,SAASrgB,EAAGgM,GACvB,MAAOhM,GAAIgM,GAEb,IAAI4uI,GAAiBxB,EAAQluE,OAAO,SAASlrE,GAC3C,MAAOA,GAAI,IACV+C,IAAI,SAAS/C,GACd,OAAQA,EAAGqzI,GAAerzI,KAE5Bsf,GAAIjD,UAAUxG,QAAQ,SAASsT,GAC7B,IAAKA,EAAGlN,KAAKzM,MAAM,SACjB,MACF,IAAI2Z,EAAGlN,KAAKzM,MAAM,oBAChB,MACFwkI,IAAeY,GAAoBzrH,EAAGjlB,UAAU2R,QAAQ,SAASy+H,GAC/DsG,EAAe/kI,QAAQ,SAASglI,GAC9B,GAAIvG,EAAGJ,SAAS4G,KAAK,SAASC,GAC5B,MAAOtH,IAAcsH,EAAKv7E,KAAK,GAAG,GAAGzgE,OAAS,OAASwzI,GAAWwI,EAAKh8I,KAAM87I,EAAI,MAC/E,CACFJ,EAAWI,EAAI,IAAIF,KAAKn2I,KAAK8vI,EAAGnwF,UAKxC,OAAOs2F,GAET,QAASO,IAAkBh2F,EAAIx5C,GAC7B,IAAKA,IAASA,EAAKyvI,QACjB,KAAM,IAAI13I,OAAM,mDAClB,IAAI+b,GAAMtH,GAAIoH,KAAK5T,EAAKyvI,SAAW3sI,KAAM,UACzC,IAAImsI,GAAaC,GAAmBp7H,EACpC,IAAI47H,GAASljI,GAAI2H,KAAKL,EAAKm7H,EAAW,GAAGvyC,SACzC,KAAKgzC,EACH,KAAM,kBAAkBv3I,OAAO82I,EAAW,GAAGvyC,SAAU,uBACzD,IAAIizC,GAASnH,GAAeY,GAAoBsG,EAAOh3I,SACvD,IAAIq1I,GAAU4B,EAAOx7H,KAAK,SAAS25H,GACjC,MAAOA,GAAOn1F,IAAM,GAEtB,IAAIo1F,GAAW,KACb,KAAM,0BAA0B51I,OAAO,EAAG,uBAC5C,IAAIy3I,GAAYrH,GAAMJ,GAAc4F,EAAQrF,SAAS,GAAGn1I,MAAM,GAAI83I,GAClE7xF,GAAGnjB,WAAWhsB,QAAQ,SAASoG,EAAM3M,GACnC,MAAO+rI,IAAiB/7H,EAAKm7H,EAAYz1F,EAAGljB,OAAO7lB,GAAOA,EAAM3M,EAAK8rI,EAAU9rI,KAEjF,OAAOgQ,GAET,QAASg8H,IAAiBh8H,EAAKq7H,EAAMx2F,EAAInmB,GACvC,GAAI7gB,GAAQnF,GAAI2H,KAAKL,EAAKq7H,EAAKx2F,GAAI+jD,SACnC,KAAK/qF,EACH,KAAM,kBAAkBxZ,OAAOg3I,EAAKx2F,GAAI+jD,SAAU,uBACpD,IAAIloG,GAAIg0I,GAAeY,GAAoBz3H,EAAMjZ,SACjD,IAAIq3I,GAAQv7I,EAAE2f,KAAK,SAAS25H,GAC1B,MAAOA,GAAOn1F,IAAMA,GAEtBnmB,GAAGu9G,EAAOv7I,EACVmd,GAAMjZ,QAAU2wI,GAAkBT,GAAep0I,GACjDmd,GAAMI,KAAOJ,EAAMjZ,QAAQ/E,OAE7B,QAASq8I,IAAiBl8H,EAAKq7H,EAAMx2F,GACnC,GAAIhnC,GAAQnF,GAAI2H,KAAKL,EAAKq7H,EAAKx2F,GAAI+jD,SACnC,KAAK/qF,EACH,KAAM,kBAAkBxZ,OAAOg3I,EAAKx2F,GAAI+jD,SAAU,uBACpD,IAAIloG,GAAIg0I,GAAeY,GAAoBz3H,EAAMjZ,SACjD,IAAIq3I,GAAQv7I,EAAE2f,KAAK,SAAS25H,GAC1B,MAAOA,GAAOn1F,IAAMA,GAEtB,OAAOo3F,GAET,QAASF,IAAiB/7H,EAAKq7H,EAAMz4G,EAAIu5G,EAAQC,EAAUC,GACzD,GAAID,GAAY,EACd,MAAOj6H,SAAQC,MAAM,2DACvB,IAAIk6H,KACJN,IAAiBh8H,EAAKq7H,EAAMgB,EAAS,SAASpC,GAC5C,GAAIsC,GAAWlI,GAAc4F,EAAQrF,SAAS,GAAGn1I,KACjD,EACE88I,EAAS,KAAQvtI,KAAM,EAAGvP,KAAMuzI,GAAMmJ,IACtCG,GAAY7H,GAAM8H,EAAS,GAAIhF,IAEjC0C,EAAQrF,SAAS,GAAGn1I,KAAO60I,GAAciI,IAE3C,IAAIC,GAAMN,GAAiBl8H,EAAKq7H,EAAMiB,EAAU,GAChD,IAAIG,GAASlF,GAAoBlD,GAAcmI,EAAI5H,SAAS,GAAGn1I,MAAM,GAAG,GAAGA,KAC3Eu8I,IAAiBh8H,EAAKq7H,EAAMoB,EAAQ,SAASxC,EAASv5I,GACpD,MAAOg8I,IAAkB18H,EAAKq7H,EAAMz4G,EAAIq3G,EAASv5I,EAAG+7I,KAGxD,GAAIE,IAAgB,IACpB,SAASD,IAAkB18H,EAAKq7H,EAAMz4G,EAAIg6G,EAASC,EAASJ,GAC1D,GAAI9H,GAAImB,CACR,IAAI31G,GAAQmB,GAAasB,EAAG,QAC5BzC,GAAM58B,EAAEqN,EAAIuvB,EAAM58B,EAAEQ,EAAI,CACxB,IAAI+4I,GAAQ,KACZ,IAAI38G,EAAMz9B,EAAEqB,EAAI,IAAK,CACnB+4I,EAAQ,IACR38G,GAAMz9B,EAAEqB,EAAI,IAEd,GAAIo8B,EAAMz9B,EAAEkO,EAAI,OAAQ,CACtBksI,EAAQ,IACR38G,GAAMz9B,EAAEkO,EAAI,OAEd,GAAIksI,EACF36H,QAAQC,MAAM,iBAAiB/d,OAAOk9B,GAAapB,IACrD,IAAI1gC,GAAO82D,GAAc3zB,GAAMzC,MAAOA,EAAOjkB,OAAQ,GACrD,IAAI64B,IAAO,aAAcgoG,EAAU,GAAIC,KAAIjoG,EAC3Ct1C,GAAK8W,QAAQ,SAASsV,GACpB,MAAOA,GAAItV,QAAQ,SAASupB,GAC1B,SAAWA,IAAQ,WAAai9G,EAAQn4C,IAAI9kE,GAAO,CACjDiV,EAAI7vC,KAAK46B,EACTi9G,GAAQE,IAAIn9G,OAIlB,IAAIjC,GAAMw9G,EAAKoB,GAAQ7zC,QACvB/qE,GAAMA,EAAI37B,QAAQ,gBAAiB,GACnC27B,GAAMA,EAAI37B,QAAQ,WAAY,IAAIA,QAAQ,SAAU,GACpD,IAAIs1I,GAAKnD,GAAcuI,EAAQhI,SAAS,GAAGn1I,KAC3C,EACE+3I,EAAG,GAAG,GAAG/3I,KAAOs0I,GAAe5zG,EAAMz9B,EAAEkO,EAAI,EAC3C4mI,GAAG,GAAG,GAAG/3I,KAAOs0I,GAAe5zG,EAAMz9B,EAAEqB,EAAI,SACpCyzI,GAAG,GACV,IAAIuB,GAAQ1E,GAAcmD,EAAG,GAAG,GAAG/3I,KACnC,EACE,GAAIy9I,GAAiB3F,GAAoBlD,GAAc0E,EAAM,GAAG,GAAGt5I,MAAM,GAAG,GAAGA,KAC/Eu8I,IAAiBh8H,EAAKq7H,EAAM6B,EAAgB,SAASC,EAASC,GAC5D,GAAIC,EACJ,IAAIC,GAAcjJ,GAAc8I,EAAQvI,SAAS,GAAGn1I,KACpD,KAAK49I,EAAMC,GAAe,SAAY,GAAIA,EAAY,KAAO,SAAY,GAAID,EAAI,GAC/E,IAAK,GAAIE,GAAK,EAAGA,EAAK99I,EAAKI,SAAU09I,EAAI,CACvC,GAAIC,GAAUnJ,GAAciJ,EAAY,GAAG,GAAG79I,KAC9C+9I,GAAQ,GAAG,GAAG/9I,KAAOs0I,GAAewJ,EACpCC,GAAQ,GAAG,GAAG/9I,KAAOs0I,GAAet0I,EAAK89I,GAAI19I,OAC7Cy9I,GAAY,GAAGC,IAAQvuI,KAAMsuI,EAAY,GAAG,GAAGtuI,KAAMvP,KAAM60I,GAAckJ,IAE7EL,EAAQvI,SAAS,GAAGn1I,KAAO60I,GAAcgJ,IAE3C,IAAIG,GAAiBlG,GAAoBwB,EAAM,GAAG,GAAGt5I,KACrDu8I,IAAiBh8H,EAAKq7H,EAAMoC,EAAgB,SAASC,EAASN,GAC5D,GAAIE,GAAcjJ,GAAcqJ,EAAQ9I,SAAS,GAAGn1I,KACpD,KAAK,GAAI8Y,GAAI,EAAGA,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAG,CACnC,GAAIilI,GAAUnJ,GAAciJ,EAAY,GAAG,GAAG79I,KAC9C+9I,GAAQ,GAAG,GAAG/9I,KAAOs0I,GAAex7H,EACpCilI,GAAQ,GAAG,GAAG/9I,KAAOs0I,GAAe5zG,EAAMz9B,EAAEkO,EAAI,EAChD0sI,GAAY,GAAG/kI,IAAOvJ,KAAMsuI,EAAY,GAAG,GAAGtuI,KAAMvP,KAAM60I,GAAckJ,IAE1EE,EAAQ9I,SAAS,GAAGn1I,KAAO60I,GAAcgJ,IAE3C,IAAIK,GAASpG,GAAoBwB,EAAM,GAAG,GAAGt5I,KAC7Cu8I,IAAiBh8H,EAAKq7H,EAAMsC,EAAQ,SAASC,GAC3C,GAAIC,GAAUxJ,GAAcuJ,EAAQhJ,SAAS,GAAGn1I,KAChD,EACEo+I,EAAQ,KACR9oG,GAAIx+B,QAAQ,SAAS7E,EAAK/R,GACxBk+I,EAAQ,GAAG34I,MAAO8J,KAAM,EAAGvP,KAAM60I,SAE5BtlI,KAAM,EAAGvP,KAAMs0I,GAAep0I,OAC9BqP,KAAM,EAAGvP,KAAMs0I,GAAe,OAC9B/kI,KAAM,EAAGvP,KAAMuzI,GAAMthI,WAI9BksI,EAAQhJ,SAAS,GAAGn1I,KAAO60I,GAAcuJ,IAE3C,IAAIC,GAASzJ,GAAc0E,EAAM,GAAG,GAAGt5I,KACvCq+I,GAAO,KACP,IAAIC,GAAY1J,GAAc0E,EAAM,GAAG,GAAGt5I,KAC1C,EACE,GAAIu+I,GAAU,GACdD,GAAU,KAAQ/uI,KAAM,EAAGvP,KAAMs0I,GAAeiK,IAChD,IAAIC,GAAU1G,GAAoBlD,GAAc0J,EAAU,GAAG,GAAGt+I,MAAM,GAAG,GAAGA,KAC5E,IAAIy+I,GAAa,CACjB,EACExlI,GAAI3X,MAAM2rB,QAAQ1M,EAAKq7H,EAAK4C,GAASr1C,SACrCozC,IAAiBh8H,EAAKq7H,EAAM,EAAG,SAAS1pC,GACtC,GAAIwsC,GAAQ9J,GAAc1iC,EAAGijC,SAAS,GAAGn1I,KACzC,IAAI6T,GAAM6qI,EAAM,GAAGvyE,OAAO,SAASj/D,GACjC,MAAOinI,IAAeS,GAAc1nI,EAAElN,MAAM,GAAG,GAAGA,OAASw+I,GAE7D,IAAI3qI,GAAOA,EAAIzT,OAAS,EACtBq+I,EAAatK,GAAeS,GAAc/gI,EAAI,GAAG7T,MAAM,IAAI,GAAGA,KAChE0+I,GAAM,GAAKA,EAAM,GAAGvyE,OAAO,SAASj/D,GAClC,MAAOinI,IAAeS,GAAc1nI,EAAElN,MAAM,GAAG,GAAGA,OAASw+I,GAE7D,IAAIG,GAAYD,EAAM,GAAGE,UAAU,SAAS1xI,GAC1C,GAAI0wI,GAAKiB,CACT,IAAIC,GAAKlK,GAAc1nI,EAAElN,KACzB,KAAK49I,EAAMkB,EAAG,KAAO,SAAY,GAAIlB,EAAI,GACvC,MAAOvK,IAAMyL,EAAG,GAAG,GAAG9+I,OAASo+B,CACjC,MAAMygH,EAAMC,EAAG,KAAO,SAAY,GAAID,EAAI,KAAOxL,GAAMyL,EAAG,GAAG,GAAG9+I,OAASo+B,EACvE,MAAO,KACT,OAAO,QAET,IAAI2gH,GAASnK,GAAc8J,EAAM,GAAGC,GAAW3+I,KAC/C,KAAK++I,EAAO,GACVA,EAAO,KACTA,GAAO,GAAKA,EAAO,GAAG5yE,OAAO,SAASj/D,GACpC,MAAOinI,IAAeS,GAAc1nI,EAAElN,MAAM,GAAG,GAAGA,OAASw+I,GAE7DE,GAAM,GAAGC,GAAW3+I,KAAO60I,GAAckK,EACzC7sC,GAAGijC,SAAS,GAAGn1I,KAAO60I,GAAc6J,KAGxCJ,EAAU,KACV,IAAIU,GAAS54I,KAAK0X,MAAM4iB,EAAMz9B,EAAEkO,EAAI,GAAKotI,EACzC,KAAK,GAAIp8D,GAAO,EAAGA,EAAO68D,IAAU78D,EAAM,CACxC,GAAI88D,GAAYzD,IACdI,QACAzyC,SAAU,GACV55F,KAAM,MACLqsI,EACHA,GAAKqD,GAAW91C,SAAW,gCAAgCvkG,OAAOq6I,EAAW,OAC7E,IAAIC,SAEC3vI,KAAM,EAAGvP,KAAMs0I,GAAe,OAC9B/kI,KAAM,EAAGvP,KAAMs0I,GAAeluI,KAAK0M,IAAI4tB,EAAMz9B,EAAEkO,EAAI,GAAIgxE,EAAO,GAAKo8D,QACnEhvI,KAAM,EAAGvP,KAAMs0I,GAAe,OAC9B/kI,KAAM,EAAGvP,KAAMs0I,GAAeluI,KAAK0M,KAAKqvE,EAAO,GAAKo8D,EAAS79G,EAAMz9B,EAAEkO,EAAI,GAAKgxE,EAAOo8D,UAErFhvI,KAAM,EAAGvP,KAAMs0I,GAAe,OAC9B/kI,KAAM,EAAGvP,KAAMs0I,GAAe,OAC9B/kI,KAAM,EAAGvP,KAAMs0I,GAAe4I,GAAgB,EAAI,KAEvD,KAAK,GAAI7jI,GAAI8oE,EAAOo8D,EAASllI,GAAKjT,KAAK0M,IAAI4tB,EAAMz9B,EAAEkO,GAAIgxE,EAAO,GAAKo8D,EAAU,KAAMllI,EAAG,CACpF,GAAI8lI,SAEC5vI,KAAM,EAAGvP,KAAMs0I,GAAe,OAC9B/kI,KAAM,EAAGvP,KAAMs0I,GAAe,OAC9B/kI,KAAM,EAAGvP,KAAM,GAAIyD,oBACnB8L,KAAM,EAAGvP,KAAM,GAAIyD,YAAWC,MAAMV,MAAO5C,OAAQ,KAAO,WAC3D,MAAO,YAENmP,KAAM,EAAGvP,KAAMs0I,GAAe,OAC9B/kI,KAAM,EAAGvP,KAAM,GAAIyD,oBACnB8L,KAAM,EAAGvP,KAAM,GAAIyD,YAAWC,MAAMV,MAAO5C,OAAQ,KAAO,WAC3D,MAAO,YAENmP,KAAM,EAAGvP,KAAMs0I,GAAe,KAEnCoG,IAAeyE,EAASn/I,EAAKqZ,GAAIi8B,EAAK4nG,GACtCiC,GAAQ,GAAG,GAAGn/I,KAAOs0I,GAAej7H,EAAI8oE,EAAOo8D,EAC/CW,GAAS,GAAGz5I,MAAOzF,KAAM60I,GAAcsK,GAAU5vI,KAAM,IAEzD+uI,EAAU,GAAG74I,MAAO8J,KAAM,EAAGvP,KAAM60I,SAE9BtlI,KAAM,EAAGvP,KAAMs0I,GAAenyD,OAC9B5yE,KAAM,EAAGvP,KAAMg4I,GAAoBiH,QAExC,IAAIG,IACFh6F,GAAI65F,EACJ9J,UAAWoG,GAAW,KAAM1G,GAAcqK,KAE5C,IAAIG,GAAcvJ,GAAkBT,IAAgB+J,IACpDnmI,IAAI3X,MAAMuoB,QAAQtJ,EAAK,sBAAsB3b,OAAOq6I,EAAW,QAASI,EACxE9C,IAAiBh8H,EAAKq7H,EAAM,EAAG,SAAS1pC,GACtC,GAAIwsC,GAAQ9J,GAAc1iC,EAAGijC,SAAS,GAAGn1I,KACzC0+I,GAAM,GAAGj5I,MAAO8J,KAAM,EAAGvP,KAAM60I,SAE1BtlI,KAAM,EAAGvP,KAAMs0I,GAAe2K,OAC9B1vI,KAAM,EAAGvP,KAAMuzI,GAAM,mBACrBhkI,KAAM,EAAGvP,KAAMuzI,GAAM,eAAe3uI,OAAOq6I,QAC3C1vI,KAAM,EAAGvP,KAAM,GAAIyD,aAAY,EAAG,EAAG,QACrC8L,KAAM,EAAGvP,KAAM,GAAIyD,aAAY,EAAG,EAAG,oBAKrC8L,KAAM,EAAGvP,KAAMs0I,GAAe,UAE9B/kI,KAAM,EAAGvP,KAAMs0I,GAAemK,QAEnCC,GAAM,KAAQnvI,KAAM,EAAGvP,KAAMs0I,GAAeluI,KAAK2M,IAAIksI,EAAY,EAAG9K,GAAeuK,EAAM,GAAG,GAAG1+I,SAC/F,IAAI2+I,GAAYD,EAAM,GAAGE,UAAU,SAAS1xI,GAC1C,GAAI0wI,GAAKiB,CACT,IAAIC,GAAKlK,GAAc1nI,EAAElN,KACzB,KAAK49I,EAAMkB,EAAG,KAAO,SAAY,GAAIlB,EAAI,GACvC,MAAOvK,IAAMyL,EAAG,GAAG,GAAG9+I,OAASo+B,CACjC,MAAMygH,EAAMC,EAAG,KAAO,SAAY,GAAID,EAAI,KAAOxL,GAAMyL,EAAG,GAAG,GAAG9+I,OAASo+B,EACvE,MAAO,KACT,OAAO,QAET,IAAI2gH,GAASnK,GAAc8J,EAAM,GAAGC,GAAW3+I,KAC/C,KAAK++I,EAAO,GACVA,EAAO,KACTA,GAAO,GAAGt5I,MACR8J,KAAM,EACNvP,KAAM60I,SAEDtlI,KAAM,EAAGvP,KAAMs0I,GAAe2K,QAGrCP,GAAM,GAAGC,GAAW3+I,KAAO60I,GAAckK,EACzC7sC,GAAGijC,SAAS,GAAGn1I,KAAO60I,GAAc6J,IAEtC,IAAIY,KAAUpK,EAAKiI,EAAQhI,SAAS,GAAG10E,KAAK,KAAO,SAAY,GAAIy0E,EAAG,IAAMX,GAAqB4I,EAAQhI,SAAS,GAAG10E,KAAK,GAAG,GAAGzgE,QAChI,IAAIu/I,GAAUD,EAAM3/I,QAAQs/I,EAC5B,IAAIM,IAAY,EAAG,CACjBD,EAAMC,EAAUD,EAAMl/I,QAAU6+I,CAChC9B,GAAQhI,SAAS,GAAG10E,KAAK,KAAQlxD,KAAM,EAAGvP,KAAMw0I,GAAqB8K,KAEvEjB,EAAO,GAAG54I,MAAO8J,KAAM,EAAGvP,KAAM60I,SAE3BtlI,KAAM,EAAGvP,KAAMs0I,GAAenyD,EAAOo8D,OACrChvI,KAAM,EAAGvP,KAAMs0I,GAAenyD,UAIvCm3D,EAAM,GAAG,GAAGt5I,KAAO60I,GAAcyJ,EACjChF,GAAM,GAAG,GAAGt5I,KAAO60I,GAAcwJ,EACjC/E,GAAM,MAAS/pI,KAAM,EAAGvP,KAAM,GAAIyD,iBAClC,IAAI0/B,EAAG,WAAY,CACjB,GAAIq8G,GAAUhE,IACZjsI,KAAM,KACNqsI,MAAOoB,GACP7zC,SAAUyyC,EAAKoB,GAAQ7zC,UACtByyC,EACHwB,GAAQ33I,MACN2/C,GAAIo6F,EACJrK,UAAWoG,GAAW,KAAM1G,OAE1B1xG,EAAG,WAAWn/B,IAAI,SAASkJ,GACzB,OAASqC,KAAM,EAAGvP,KAAM60I,SAEnBtlI,KAAM,EAAGvP,KAAM60I,SAEbtlI,KAAM,EAAGvP,KAAM,GAAIyD,YAAW,GAAI6iB,cAAapZ,EAAEpJ,EAAEqN,EAAGjE,EAAEpJ,EAAEQ,IAAI4uI,gBAEhE3jI,KAAM,EAAGvP,KAAM60I,SAEbtlI,KAAM,EAAGvP,KAAM,GAAIyD,YAAW,GAAI6iB,cAAapZ,EAAEjK,EAAEkO,EAAIjE,EAAEpJ,EAAEqN,EAAI,EAAGjE,EAAEjK,EAAEqB,EAAI4I,EAAEpJ,EAAEQ,EAAI,IAAI4uI,wBAMnGoG,GAAM,MAAS/pI,KAAM,EAAGvP,KAAMg4I,GAAoBwH,IAClDjD,IAAiBh8H,EAAKq7H,EAAM,EAAG,SAAS1pC,GACtC,GAAIwsC,GAAQ9J,GAAc1iC,EAAGijC,SAAS,GAAGn1I,KACzC,IAAI2+I,GAAYD,EAAM,GAAGE,UAAU,SAAS1xI,GAC1C,GAAI0wI,GAAKiB,CACT,IAAIC,GAAKlK,GAAc1nI,EAAElN,KACzB,KAAK49I,EAAMkB,EAAG,KAAO,SAAY,GAAIlB,EAAI,GACvC,MAAOvK,IAAMyL,EAAG,GAAG,GAAG9+I,OAASo+B,CACjC,MAAMygH,EAAMC,EAAG,KAAO,SAAY,GAAID,EAAI,KAAOxL,GAAMyL,EAAG,GAAG,GAAG9+I,OAASo+B,EACvE,MAAO,KACT,OAAO,QAET,IAAI2gH,GAASnK,GAAc8J,EAAM,GAAGC,GAAW3+I,KAC/C,KAAK++I,EAAO,GACVA,EAAO,KACTA,GAAO,GAAGt5I,MACR8J,KAAM,EACNvP,KAAM60I,SAEDtlI,KAAM,EAAGvP,KAAMs0I,GAAekL,QAGrCd,GAAM,GAAGC,GAAW3+I,KAAO60I,GAAckK,EACzC7sC,GAAGijC,SAAS,GAAGn1I,KAAO60I,GAAc6J,IAEtCY,KAAUjJ,EAAK8G,EAAQhI,SAAS,GAAG10E,KAAK,KAAO,SAAY,GAAI41E,EAAG,IAAM9B,GAAqB4I,EAAQhI,SAAS,GAAG10E,KAAK,GAAG,GAAGzgE,QAC5Hu/I,GAAUD,EAAM3/I,QAAQ6/I,EACxB,IAAID,IAAY,EAAG,CACjBD,EAAMC,EAAUD,EAAMl/I,QAAUo/I,CAChCrC,GAAQhI,SAAS,GAAG10E,KAAK,KAAQlxD,KAAM,EAAGvP,KAAMw0I,GAAqB8K,iBAGhEhG,GAAM,IAEjBvB,EAAG,GAAG,GAAG/3I,KAAO60I,GAAcyE,GAEhC6D,EAAQhI,SAAS,GAAGn1I,KAAO60I,GAAckD,GAE3C,QAAS0H,IAActrG,GACtB,MAAO,SAASurG,GAASjzI,GACxB,IAAI,GAAIvM,GAAI,EAAGA,GAAKi0C,EAAS/zC,SAAUF,EAAG,CACzC,GAAIsF,GAAI2uC,EAASj0C,EACjB,IAAGuM,EAAKjH,EAAE,MAAQ5C,UAAW6J,EAAKjH,EAAE,IAAMA,EAAE,EAC5C,IAAGA,EAAE,KAAO,IAAKiH,EAAKjH,EAAE,IAAMkuB,OAAOjnB,EAAKjH,EAAE,OAK/C,QAASi5G,IAAchyG,GACvBgzI,KACE,SAAU,QACV,WAAY,OACZ,cAAe,OACf,aAAc,QACd,WAAY,OACZ,YAAa,QAEb,aAAc,QACd,YAAa,EAAG,MAEhB,WAAY,QACZ,aAAc,QACd,YAAa,QACb,YAAa,QACb,UAAW,QAEX,WAAW,KACX,MAAO,SACNhzI,GAGH,QAASg9H,IAAeh9H,GACxBgzI,KACE,YAAa,QAEb,UAAW,QAEX,WAAY,SAEZ,cAAe,QAEf,MAAO,SACNhzI,GAEH,QAASkzI,IAAe5oI,GACvB,GAAG4jB,GAAKib,GAAGj2C,QAAQoX,IAAM,EAAG,MAAO,OACnC,IAAG4jB,GAAKgb,IAAM5+B,GAAK4jB,GAAKgb,GAAI,MAAO,OACnC,IAAGhb,GAAKkb,IAAM9+B,GAAK4jB,GAAKkb,GAAI,MAAO,QACnC,IAAGlb,GAAKmb,IAAM/+B,GAAK4jB,GAAKmb,GAAI,MAAO,OACnC,OAAQ/+B,IAAKA,EAAE3W,OAAU2W,EAAI,QAE9B,QAAS6oI,IAAkBC,EAAQh9G,GAClC,IAAIg9G,EAAQ,MAAO,EACnB,KACCA,EAASh9G,EAAO7+B,IAAI,QAAS87I,GAAKrxI,GAAK,IAAIA,EAAE22C,GAAI32C,EAAE22C,GAAK32C,EAAE2nG,QAAU,QAAQ3nG,EAAEyO,KAAM2iI,EAAO,OAAOpxI,EAAE22C,IAAIzO,OAAQgpG,GAAeE,EAAO,OAAOpxI,EAAE22C,IAAI1O,SAClJ,MAAMzzC,GAAK,MAAO,MACpB,OAAQ48I,GAAUA,EAAOz/I,SAAW,EAAI,KAAOy/I,EAGhD,QAASE,IAAiB9qH,EAAKpS,EAAMm9H,EAAUp9G,EAAOryB,EAAK0vI,EAAWp9G,EAAQq9G,EAAOzzI,EAAMw5C,EAAI7S,EAAQR,GACtG,IACCqtG,EAAUr9G,GAAO0T,GAAWhhB,GAAUL,EAAK+qH,EAAU,MAAOn9H,EAC5D,IAAI7iB,GAAOo1B,GAAWH,EAAKpS,EAC3B,IAAIogB,EACJ,QAAOi9G,GACN,IAAK,QAAUj9G,EAAMy1E,GAAS14G,EAAM6iB,EAAMtS,EAAK9D,EAAMwzI,EAAUr9G,GAAQqjB,EAAI7S,EAAQR,EAAS,OAC5F,IAAK,QAAU3P,EAAM01E,GAAS34G,EAAM6iB,EAAMtS,EAAK9D,EAAMwzI,EAAUr9G,GAAQqjB,EAAI7S,EAAQR,EAClF,KAAI3P,IAAQA,EAAI,WAAY,KAC5B,IAAIk9G,GAAQtqH,GAAaoN,EAAI,WAAW0T,OAAQ9zB,EAChD,IAAIu9H,GAAS/pG,GAAc8pG,EAC3B,IAAIE,GAAO9gE,GAAcjqD,GAAUL,EAAKkrH,EAAO,MAAO7pG,GAAWhhB,GAAUL,EAAKmrH,EAAQ,MAAOD,GAC/F,IAAIG,GAASzqH,GAAawqH,EAAMF,EAChC,IAAII,GAASlqG,GAAciqG,EAC3Br9G,GAAMwwE,GAAYn+E,GAAUL,EAAKqrH,EAAQ,MAAOA,EAAQ7zI,EAAM6pC,GAAWhhB,GAAUL,EAAKsrH,EAAQ,MAAOD,GAASr6F,EAAIhjB,EACpH,OACD,IAAK,QAAUA,EAAM21E,GAAS54G,EAAM6iB,EAAMtS,EAAK9D,EAAMwzI,EAAUr9G,GAAQqjB,EAAI7S,EAAQR,EAAS,OAC5F,IAAK,SAAU3P,EAAM41E,GAAS74G,EAAM6iB,EAAMtS,EAAK9D,EAAMwzI,EAAUr9G,GAAQqjB,EAAI7S,EAAQR,EAAS,OAC5F,QAAS,KAAM,IAAIpuC,OAAM,2BAA6B07I,IAEvDr9G,EAAOD,GAASK,CAGhB,IAAIsP,MAAeiuG,IACnB,IAAGP,GAAaA,EAAUr9G,GAAQ/S,GAAKowH,EAAUr9G,IAAQ9rB,QAAQ,SAASC,GACzE,GAAIopI,GAAQ,EACZ,IAAGF,EAAUr9G,GAAO7rB,GAAG2/B,MAAQ/b,GAAK0a,KAAM,CACzC8qG,EAAQtqH,GAAaoqH,EAAUr9G,GAAO7rB,GAAG4/B,OAAQ9zB,EACjD0vB,GAAWymE,GAAW5jF,GAAWH,EAAKkrH,EAAO,MAAOA,EAAO1zI,EAC3D,KAAI8lC,IAAaA,EAASnyC,OAAQ,MAClC8gF,IAAsBj+C,EAAKsP,EAAU,OAEtC,GAAG0tG,EAAUr9G,GAAO7rB,GAAG2/B,MAAQ/b,GAAKC,MAAO,CAC1CulH,EAAQtqH,GAAaoqH,EAAUr9G,GAAO7rB,GAAG4/B,OAAQ9zB;AACjD29H,EAAYA,EAAU57I,OAAOs9E,GAAgB9sD,GAAWH,EAAKkrH,EAAO,MAAO1zI,MAG7E,IAAG+zI,GAAaA,EAAUpgJ,OAAQ8gF,GAAsBj+C,EAAKu9G,EAAW,KAAM/zI,EAAK+mC,YAClF,MAAMvwC,GAAK,GAAGwJ,EAAKmtB,IAAK,KAAM32B,IAGjC,QAASw9I,IAAkBx/I,GAAK,MAAOA,GAAEqB,OAAO,IAAM,IAAMrB,EAAEH,MAAM,GAAKG,EAEzE,QAAS4a,IAAUoZ,EAAKxoB,GACvBiJ,IACAjJ,GAAOA,KACPgyG,IAAchyG,EAGd,IAAGuoB,GAAeC,EAAK,yBAA0B,MAAOi5G,IAAUj5G,EAAKxoB,EAEvE,IAAGuoB,GAAeC,EAAK,kBAAmB,MAAOi5G,IAAUj5G,EAAKxoB,EAEhE,IAAGuoB,GAAeC,EAAK,sBAAuB,CAC7C,SAAUxxB,aAAc,YAAa,KAAM,IAAIe,OAAM,mDACrD,UAAU41I,KAAqB,YAAa,CAC3C,GAAGnlH,EAAI3X,UAAW,MAAO88H,IAAkBnlH,EAAKxoB,EAChD,IAAIi0I,GAAOznI,GAAI3X,MAAMwrB,SACrB0I,IAAWP,GAAKne,QAAQ,SAAS7T,GAAKwyB,GAAairH,EAAMz9I,EAAGsyB,GAAUN,EAAKhyB,KAC3E,OAAOm3I,IAAkBsG,EAAMj0I,GAEhC,KAAM,IAAIjI,OAAM,4BAEjB,IAAIwwB,GAAeC,EAAK,uBAAwB,CAC/C,GAAGD,GAAeC,EAAK,gBAAiB,KAAM,IAAIzwB,OAAM,8BACxD,IAAGwwB,GAAeC,EAAK,aAAc,KAAM,IAAIzwB,OAAM,8BACrD,IAAIm8I,GAAY1nI,GAAI2H,KAAKqU,EAAK,YAC9B,IAAG0rH,EAAW,CACbl0I,EAAO6mB,GAAI7mB,SACJA,GAAK8C,IACZ,UAAUoxI,GAAUx7I,SAAW,SAAUsH,EAAK8C,KAAO,QAErD,UAAUqxI,OAAQ,aAAej+I,OAAOkC,SAAS87I,EAAUx7I,SAAU,MAAO07I,IAAS,GAAIp9I,YAAWk9I,EAAUx7I,SAAUsH,EACxH,OAAOo0I,IAASF,EAAUx7I,QAASsH,GAEpC,KAAM,IAAIjI,OAAM,wBAGjB,GAAIo6C,GAAUppB,GAAWP,EACzB,IAAI6rH,GAAMntG,GAAUre,GAAUL,EAAK,uBACnC,IAAIkd,GAAO,KACX,IAAItP,GAAQk+G,CACZ,IAAGD,EAAI7uG,UAAU7xC,SAAW,EAAG,CAC9B2gJ,EAAU,iBACV,IAAG3rH,GAAWH,EAAI8rH,EAAS,MAAOD,EAAI7uG,UAAUxsC,KAAKs7I,GAEtD,GAAGD,EAAI7uG,UAAU7xC,SAAW,EAAG,CAC9B2gJ,EAAU,iBACV,KAAI3rH,GAAWH,EAAI8rH,EAAQ,MAAO,KAAM,IAAIv8I,OAAM,0BAClDs8I,GAAI7uG,UAAUxsC,KAAKs7I,EACnB5uG,GAAO,KAER,GAAG2uG,EAAI7uG,UAAU,GAAGnxC,OAAO,IAAM,MAAOqxC,EAAO,IAE/C,IAAIiB,KACJ,IAAIR,KACJ,KAAInmC,EAAK6xG,aAAe7xG,EAAK8xG,UAAW,CACvCjsE,KACA,IAAGwuG,EAAI7sG,IAAK,IAAM3B,GAAKymE,GAAU3jF,GAAWH,EAAKwrH,GAAkBK,EAAI7sG,MAAO6sG,EAAI7sG,IAAKxnC,GAAS,MAAMxJ,GAAK,GAAGwJ,EAAKmtB,IAAK,KAAM32B,GAE9H,GAAGwJ,EAAK2+C,YAAc01F,EAAI1tG,OAAOhzC,OAAQgzC,EAASqpC,GAAgBnnD,GAAUL,EAAK6rH,EAAI1tG,OAAO,GAAG3wC,QAAQ,MAAM,IAAK,OAAO,GAAIgK,EAE7H,IAAGq0I,EAAI5sG,MAAOtB,EAASkmE,GAAU1jF,GAAWH,EAAKwrH,GAAkBK,EAAI5sG,QAAS4sG,EAAI5sG,MAAOd,EAAQ3mC,GAG9Eq0I,EAAI9tG,MAAMhvC,IAAI,SAASg9I,GAC5C,IACC,GAAIluG,GAAOwD,GAAWhhB,GAAUL,EAAKohB,GAAcoqG,GAAkBO,KAASA,EAC9E,OAAO9nC,IAAY9jF,GAAWH,EAAKwrH,GAAkBO,IAAQluG,EAAMkuG,EAAMv0I,GACxE,MAAMxJ,MAGT,IAAIgjD,GAAKwyD,GAASrjF,GAAWH,EAAKwrH,GAAkBK,EAAI7uG,UAAU,KAAM6uG,EAAI7uG,UAAU,GAAIxlC,EAE1F,IAAIysC,MAAY+nG,EAAW,EAE3B,IAAGH,EAAI7tG,UAAU7yC,OAAQ,CACxB6gJ,EAAW7rH,GAAWH,EAAKwrH,GAAkBK,EAAI7tG,UAAU,IAAK,KAChE,IAAGguG,EAAU/nG,EAAQhB,GAAiB+oG,EACtC,IAAGH,EAAI5tG,SAAS9yC,SAAW,EAAG,CAC7B6gJ,EAAW7rH,GAAWH,EAAKwrH,GAAkBK,EAAI5tG,SAAS,IAAK,KAC/D,IAAG+tG,EAAUvnG,GAAgBunG,EAAU/nG,EAAOzsC,IAIhD,GAAI0mC,KACJ,KAAI1mC,EAAK6xG,YAAc7xG,EAAK8xG,UAAW,CACtC,GAAIuiC,EAAI3tG,UAAU/yC,SAAW,EAAG,CAC/B6gJ,EAAW3rH,GAAUL,EAAKwrH,GAAkBK,EAAI3tG,UAAU,IAAK,KAC/D,IAAG8tG,EAAU9tG,EAAY+G,GAAiB+mG,EAAUx0I,IAItD,GAAIrH,KACJ,IAAGqH,EAAK6xG,YAAc7xG,EAAK8xG,UAAW,CACrC,GAAGt4D,EAAGljB,OAAQF,EAASojB,EAAGljB,OAAO/+B,IAAI,QAASk9I,GAAMjgJ,GAAI,MAAOA,GAAEic,WAC5D,IAAGg8B,EAAMG,YAAcH,EAAMpW,WAAW1iC,OAAS,EAAGyiC,EAAOqW,EAAMpW,UACtE,IAAGr2B,EAAK8xG,UAAW,CAAEn5G,EAAIszC,MAAQQ,CAAO9zC,GAAIy2C,UAAY1I,EACxD,GAAG1mC,EAAK6xG,kBAAqBz7E,KAAW,YAAaz9B,EAAI09B,WAAaD,CACtE,IAAGp2B,EAAK6xG,WAAal5G,EAAI09B,WAAar2B,EAAK8xG,UAAW,MAAOn5G,GAE9Dy9B,IAEA,IAAI+4G,KACJ,IAAGnvI,EAAK00I,UAAYL,EAAI9sG,UAAW4nG,EAAK3iC,GAAS7jF,GAAWH,EAAKwrH,GAAkBK,EAAI9sG,YAAY8sG,EAAI9sG,UAAUvnC,EAEjH,IAAIvM,GAAE,CACN,IAAI+/I,KACJ,IAAIp9H,GAAMm9H,CAEV,EACC,GAAIoB,GAAWn7F,EAAGljB,MAClBmW,GAAMG,WAAa+nG,EAAShhJ,MAC5B84C,GAAMpW,aACN,KAAI,GAAI9yB,GAAI,EAAGA,GAAKoxI,EAAShhJ,SAAU4P,EAAG,CACzCkpC,EAAMpW,WAAW9yB,GAAKoxI,EAASpxI,GAAGkN,MAIpC,GAAImkI,GAAQlvG,EAAO,MAAQ,KAC3B,IAAImvG,GAAUR,EAAI7uG,UAAU,GAAG3+B,YAAY,IAC3C,IAAIiuI,IAAcT,EAAI7uG,UAAU,GAAGnxC,MAAM,EAAGwgJ,EAAQ,GAAK,SAAWR,EAAI7uG,UAAU,GAAGnxC,MAAMwgJ,EAAQ,GAAK,SAAS7+I,QAAQ,MAAM,GAC/H,KAAIuyB,GAAeC,EAAKssH,GAAaA,EAAa,qBAAuBF,EAAQ,OACjF,IAAIxB,GAASvpG,GAAWhhB,GAAUL,EAAKssH,EAAY,MAAOA,EAAW9+I,QAAQ,UAAW,OAExF,KAAIq+I,EAAInuG,cAAgBvyC,QAAU,EAAG,CAEpCqM,EAAK6/F,OAAS6M,GAAa/jF,GAAWH,EAAKwrH,GAAkBK,EAAInuG,SAAS,KAAKmuG,EAAInuG,SAAS,GAAGlmC,GAGhG,IAAIq0I,EAAIttG,YAAcpzC,QAAU,EAAG,CAClCqM,EAAK+mC,OAASovC,GAAiBxtD,GAAWH,EAAKwrH,GAAkBK,EAAIttG,OAAO,KAAK/mC,GAGlF,GAAGozI,EAAQA,EAASD,GAAkBC,EAAQ55F,EAAGljB,OAGjD,IAAIy+G,GAASpsH,GAAWH,EAAI,0BAA0B,MAAO,EAAE,CAC/DwsH,GAAQ,IAAIvhJ,EAAI,EAAGA,GAAKg5C,EAAMG,aAAcn5C,EAAG,CAC9C,GAAIggJ,GAAQ,OACZ,IAAGL,GAAUA,EAAO3/I,GAAI,CACvB2iB,EAAO,MAASg9H,EAAO3/I,GAAG,GAAIuC,QAAQ,YAAa,GACnD,KAAIuyB,GAAeC,EAAKpS,GAAOA,EAAOg9H,EAAO3/I,GAAG,EAChD,KAAI80B,GAAeC,EAAKpS,GAAOA,EAAO0+H,EAAW9+I,QAAQ,aAAa,IAAMo9I,EAAO3/I,GAAG,EACtFggJ,GAAQL,EAAO3/I,GAAG,OACZ,CACN2iB,EAAO,uBAAuB3iB,EAAE,EAAEshJ,GAAO,IAAMH,CAC/Cx+H,GAAOA,EAAKpgB,QAAQ,WAAW,UAEhCu9I,EAAWn9H,EAAKpgB,QAAQ,qBAAsB,mBAC9C,IAAGgK,GAAQA,EAAKo2B,QAAU,KAAM,aAAcp2B,GAAKo2B,QAClD,IAAK,SAAU,GAAG3iC,GAAKuM,EAAKo2B,OAAQ,QAAS4+G,EAAQ,OACrD,IAAK,SAAU,GAAGvoG,EAAMpW,WAAW5iC,GAAG8T,eAAiBvH,EAAKo2B,OAAO7uB,cAAe,QAASytI,EAAQ,OACnG,QAAS,GAAG/9I,MAAMW,SAAWX,MAAMW,QAAQoI,EAAKo2B,QAAS,CACxD,GAAI6+G,GAAU,KACd,KAAI,GAAIC,GAAM,EAAGA,GAAOl1I,EAAKo2B,OAAOziC,SAAUuhJ,EAAK,CAClD,SAAUl1I,GAAKo2B,OAAO8+G,IAAQ,UAAYl1I,EAAKo2B,OAAO8+G,IAAQzhJ,EAAGwhJ,EAAQ,CACzE,UAAUj1I,GAAKo2B,OAAO8+G,IAAQ,UAAYl1I,EAAKo2B,OAAO8+G,GAAK3tI,eAAiBklC,EAAMpW,WAAW5iC,GAAG8T,cAAe0tI,EAAU,EAE1H,IAAIA,EAAS,QAASD,KAGxB1B,GAAiB9qH,EAAKpS,EAAMm9H,EAAU9mG,EAAMpW,WAAW5iC,GAAIA,EAAG+/I,EAAWp9G,EAAQq9G,EAAOzzI,EAAMw5C,EAAI7S,EAAQR,GAG3GxtC,GACCy8G,UAAWi/B,EACX1jF,SAAUnX,EACVvN,MAAOQ,EACP2C,UAAW1I,EACXyuG,KAAMhG,EACN74G,OAAQF,EACRC,WAAYoW,EAAMpW,WAClB4nE,QAASp4D,GACT67F,OAAQv7F,EACR+pC,OAAQvpC,EACRz9B,IAAK2d,GAAIxsB,GAEV,IAAG2F,GAAQA,EAAKg6G,UAAW,CAC1B,GAAGxxF,EAAI7X,MAAO,CACbhY,EAAIyqB,KAAO+uB,CACXx5C,GAAIgY,MAAQ6X,EAAI7X,UACV,CACNhY,EAAIyqB,OACJzqB,GAAIgY,QACJ6X,GAAI1X,UAAUzG,QAAQ,SAAS0C,EAAGjJ,GACjCiJ,EAAIA,EAAE/W,QAAQ,kBAAmB,GACjC2C,GAAIyqB,KAAKpqB,KAAK+T,EACdpU,GAAIgY,MAAM5D,GAAKyb,EAAI3X,UAAU/M,MAIhC,GAAG9D,GAAQA,EAAK+5G,QAAS,CACxB,GAAGs6B,EAAIxtG,IAAIlzC,OAAS,EAAGgF,EAAIsjG,OAAStzE,GAAWH,EAAIwrH,GAAkBK,EAAIxtG,IAAI,IAAI,UAC5E,IAAGwtG,EAAI3sG,UAAY2sG,EAAI3sG,SAAS0tG,MAAQn+D,GAAQt+E,EAAIsjG,OAAStzE,GAAWH,EAAK,oBAAoB,MAGvG7vB,EAAIqvC,SAAWtC,EAAO,OAAS,MAC/B,OAAO/sC,GAIR,QAAS08I,IAAcvhI,EAAKkB,GAC3B,GAAIhV,GAAOgV,KACX,IAAIzM,GAAI,WAAYhV,EAAOiZ,GAAI2H,KAAKL,EAAKvL,EACzC,KACAA,EAAI,sBACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EACvFs5D,IAA2BtuE,EAAKmF,QAGlD6P,GAAI,2BACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EACzG,IAAI+sI,GAAMrzE,GAAmB1uE,EAAKmF,QAClC,IAAG48I,EAAI3hJ,SAAW,GAAK2hJ,EAAI,GAAGtzE,MAAMruE,SAAW,GAAK2hJ,EAAI,GAAGtzE,MAAM,GAAG1oE,IAAM,GAAKg8I,EAAI,GAAG7kI,OAAS,6BAA+B6kI,EAAI,GAAGtzE,MAAM,GAAG3oE,IAAM,mBACnJ,KAAM,IAAItB,OAAM,+BAAiCwQ,EAGlDA,GAAI,sDACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EACzG,IAAIgtI,GAAOrzE,GAA0B3uE,EAAKmF,QAC1C,IAAG68I,EAAK5hJ,QAAU,GAAK4hJ,EAAK,IAAM,4BACjC,KAAM,IAAIx9I,OAAM,+BAAiCwQ,EAGlDA,GAAI,+DACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EAC3F65D,IAAc7uE,EAAKmF,SAC/B,MAAMlC,IAER+R,EAAI,iBACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EACzG,IAAIitI,GAAQtyE,GAAqB3vE,EAAKmF,QAGtC6P,GAAI,mBACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EAG1G,IAAGitI,EAAM,IAAM,SAAeC,iBAAkB,YAAa,MAAOA,eAAcD,EAAM,GAAIjiJ,EAAKmF,QAASsH,EAAKylE,UAAY,GAAIzlE,EAE/H,IAAGw1I,EAAM,IAAM,SAAeE,iBAAkB,YAAa,MAAOA,eAAcF,EAAM,GAAIjiJ,EAAKmF,QAASsH,EAAKylE,UAAY,GAAIzlE,EAC9H,MAAM,IAAIjI,OAAM,8BAGjB,QAAS49I,IAAen8F,EAAIx5C,GAC3B,GAAGw5C,IAAOA,EAAGtwC,IAAK,CACjBswC,EAAGtwC,IAAM2d,GAAIxsB,GAEd,GAAGm/C,GAAMA,EAAGtwC,IAAK,CAChBD,IAAYF,IAAeywC,EAAGtwC,IAE9BlJ,GAAKw5F,OAAS11E,GAAU01B,EAAGtwC,IAAMlJ,GAAKw5F,OAAOhgD,EAAGtwC,IAAI,QAAU,CAC9DlJ,GAAKy5F,IAAMjgD,EAAGtwC,IAEflJ,EAAKqmC,OAAWrmC,GAAKozI,SACrBpzI,GAAKi+F,UAAcj+F,GAAKi+F,QAAQzjD,MAAQ,CAAGx6C,GAAKi+F,QAAQxjD,OAAS,CACjE,IAAG89C,GAAiBv4F,EAAKk+F,WAAa,GAAI1F,SACrC,CAAEx4F,EAAKk+F,aAAiBl+F,GAAKk+F,WAAW03C,aAAiB51I,GAAKk+F,WAAW03C,IAC9E,GAAIhB,GAAQ,KACZ,IAAIiB,GAAS,IACb,IAAIxiI,GAAK+yB,IACT42F,IAAeh9H,EAAOA,MACtB,IAAIwoB,GAAMU,IACV,IAAI3gB,GAAI,GAAIkiC,EAAM,CAElBzqC,GAAKisE,UACLstB,IAAev5F,EAAKisE,YAAcutB,QAAQya,QAAU,IAEpD,KAAIz6D,EAAGvN,MAAOuN,EAAGvN,QAEjB1jC,GAAI,mBACJygB,IAAaR,EAAKjgB,EAAGqjC,GAAiB4N,EAAGvN,MAAOjsC,GAChDqT,GAAGmzB,UAAUxtC,KAAKuP,EAClBiiC,IAASxqC,EAAKqmC,KAAM,EAAG99B,EAAG2lB,GAAKJ,WAEhCvlB,GAAI,kBACH,IAAGixC,EAAGvN,OAASuN,EAAGvN,MAAM5V,WAAW,MAC9B,KAAImjB,EAAGmX,WAAanX,EAAGmX,SAASr6B,OAAQkjB,EAAGvN,MAAM5V,WAAamjB,EAAGnjB,eACjE,CACJ,GAAIy/G,KACJ,KAAI,GAAI5J,GAAK,EAAGA,EAAK1yF,EAAGnjB,WAAW1iC,SAAUu4I,EAC5C,IAAI1yF,EAAGmX,SAASr6B,OAAO41G,QAAShjC,QAAU,EAAG4sC,EAAI98I,KAAKwgD,EAAGnjB,WAAW61G,GACrE1yF,GAAGvN,MAAM5V,WAAay/G,EAEvBt8F,EAAGvN,MAAMW,WAAa4M,EAAGvN,MAAM5V,WAAW1iC,MAC1Cq1B,IAAaR,EAAKjgB,EAAG6kC,GAAgBoM,EAAGvN,MAAOjsC,GAC/CqT,GAAGozB,SAASztC,KAAKuP,EACjBiiC,IAASxqC,EAAKqmC,KAAM,EAAG99B,EAAG2lB,GAAKF,UAE/B,IAAGwrB,EAAGpK,YAAcoK,EAAGvN,OAAS7oB,GAAKo2B,EAAGpK,eAAez7C,OAAS,EAAG,CAClE4U,EAAI,qBACJygB,IAAaR,EAAKjgB,EAAGqlC,GAAiB4L,EAAGpK,UAAWpvC,GACpDqT,GAAGqzB,UAAU1tC,KAAKuP,EAClBiiC,IAASxqC,EAAKqmC,KAAM,EAAG99B,EAAG2lB,GAAKH,YAGhC,IAAI0c,EAAI,EAAEA,GAAO+O,EAAGnjB,WAAW1iC,SAAU82C,EAAK,CAC7C,GAAIsrG,IAAUhsG,SACd,IAAIrT,GAAK8iB,EAAGljB,OAAOkjB,EAAGnjB,WAAWoU,EAAI,GACrC,IAAIurG,IAASt/G,OAAU,UAAY,OACnC,QAAOs/G,GACP,IAAK,SAEL,QACCztI,EAAI,sBAAwBkiC,EAAM,IAAMmqG,CACxC5rH,IAAaR,EAAKjgB,EAAGs+F,GAAap8D,EAAI,EAAGzqC,EAAMw5C,EAAIu8F,GACnD1iI,GAAG+iB,OAAOp9B,KAAKuP,EACfiiC,IAASxqC,EAAKozI,QAAS,EAAG,mBAAqB3oG,EAAM,IAAMmqG,EAAO1mH,GAAKib,GAAG,KAG3E,GAAGzS,EAAI,CACN,GAAIoP,GAAWpP,EAAG,YAClB,IAAIu/G,GAAW,KACf,IAAIl9F,GAAK,EACT,IAAGjT,GAAYA,EAASnyC,OAAS,EAAG,CACnColD,EAAK,cAAgBtO,EAAM,IAAMmqG,CACjC5rH,IAAaR,EAAKuwB,EAAIi+B,GAAmBlxC,EAAU9lC,GACnDqT,GAAGyyB,SAAS9sC,KAAK+/C,EACjBvO,IAASurG,GAAS,EAAG,cAAgBtrG,EAAM,IAAMmqG,EAAO1mH,GAAK0a,KAC7DqtG,GAAW,KAEZ,GAAGv/G,EAAG,WAAY,CACjB,GAAGu/G,EAAUjtH,GAAaR,EAAK,yBAA2B,EAAQ,OAAQuqD,GAAUtoC,EAAK/T,EAAG,qBAEtFA,GAAG,mBACHA,GAAG,WAGX,GAAGq/G,EAAO,OAAOG,KAAMltH,GAAaR,EAAKohB,GAAcrhC,GAAI+hC,GAAWyrG,IAGvE,GAAG/1I,EAAKi+F,SAAW,MAAQj+F,EAAKi+F,QAAQtqG,OAAS,EAAG,CACnD4U,EAAI,oBAAsBqsI,CAC1B5rH,IAAaR,EAAKjgB,EAAGi5D,GAAcxhE,EAAKi+F,QAASj+F,GACjDqT,GAAGwyB,KAAK7sC,KAAKuP,EACbiiC,IAASxqC,EAAKozI,QAAS,EAAG,iBAAmBwB,EAAO1mH,GAAK2a,KAG1DtgC,EAAI,eAAiBqsI,CACrB5rH,IAAaR,EAAKjgB,EAAGwjG,GAAavyD,EAAIx5C,GACtCqT,GAAGmyB,UAAUxsC,KAAKuP,EAClBiiC,IAASxqC,EAAKqmC,KAAM,EAAG99B,EAAG2lB,GAAKia,GAI/B5/B,GAAI,qBACJ,IAAI4jB,GAAK8jD,GAAYz2B,EAAG02B,OAAQlwE,EAChCgpB,IAAaR,EAAKjgB,EAAG4jB,EACrB9Y,GAAGszB,OAAO3tC,KAAKuP,EACfiiC,IAASxqC,EAAKozI,QAAS,EAAG,mBAAoBllH,GAAK6a,MAInDxgC,GAAI,aAAeqsI,CACnB5rH,IAAaR,EAAKjgB,EAAG8mE,GAAc71B,EAAIx5C,GACvCqT,GAAG8yB,OAAOntC,KAAKuP,EACfiiC,IAASxqC,EAAKozI,QAAS,EAAG,UAAYwB,EAAO1mH,GAAK4a,IAElD,IAAG0Q,EAAGyiD,QAAU45C,EAAQ,CACvBttI,EAAI,mBACJygB,IAAaR,EAAKjgB,EAAGixC,EAAGyiD,OACxB5oF,GAAGwzB,IAAI7tC,KAAKuP,EACZiiC,IAASxqC,EAAKozI,QAAS,EAAG,iBAAkBllH,GAAKyb,KAGlDphC,EAAI,eAAiBqsI,CACrB5rH,IAAaR,EAAKjgB,EAAG2pE,KACrB7+D,GAAG6yB,SAASltC,KAAKuP,EACjBiiC,IAASxqC,EAAKozI,QAAS,EAAG,YAAcwB,EAAO1mH,GAAKsb,OAEpDxgB,IAAaR,EAAK,sBAAuBmf,GAASt0B,EAAIrT,GACtDgpB,IAAaR,EAAK,cAAe8hB,GAAWtqC,EAAKqmC,MACjDrd,IAAaR,EAAK,qBAAuBosH,EAAQ,QAAStqG,GAAWtqC,EAAKozI,eAEnEpzI,GAAKw5F,aAAex5F,GAAKy5F,GAChC,OAAOjxE,GAGR,QAAS2tH,IAAe38F,EAAIx5C,GAC3B,GAAGw5C,IAAOA,EAAGtwC,IAAK,CACjBswC,EAAGtwC,IAAM2d,GAAIxsB,GAEd,GAAGm/C,GAAMA,EAAGtwC,IAAK,CAChBD,IAAYF,IAAeywC,EAAGtwC,IAE9BlJ,GAAKw5F,OAAS11E,GAAU01B,EAAGtwC,IAAMlJ,GAAKw5F,OAAOhgD,EAAGtwC,IAAI,QAAU,CAC9DlJ,GAAKy5F,IAAMjgD,EAAGtwC,IAEflJ,EAAKqmC,OAAWrmC,GAAKozI,SACrBpzI,GAAKi+F,UAAcj+F,GAAKi+F,QAAQzjD,MAAQ,CAAGx6C,GAAKi+F,QAAQxjD,OAAS,CACjE,IAAG89C,GAAiBv4F,EAAKk+F,WAAa,GAAI1F,SACrC,CAAEx4F,EAAKk+F,aAAiBl+F,GAAKk+F,WAAW03C,aAAiB51I,GAAKk+F,WAAW03C,IAC9E,GAAIhB,GAAQ,KACZ,IAAIiB,GAASv+D,GAAQpkF,QAAQ8M,EAAKgoC,WAAa,CAC/C,IAAI30B,GAAK+yB,IACT42F,IAAeh9H,EAAOA,MACtB,IAAIwoB,GAAMU,IACV,IAAI3gB,GAAI,GAAIkiC,EAAM,CAElBzqC,GAAKisE,UACLstB,IAAev5F,EAAKisE,YAAcutB,QAAQya,QAAU,IAEpD,KAAIz6D,EAAGvN,MAAOuN,EAAGvN,QAEjB1jC,GAAI,mBACJygB,IAAaR,EAAKjgB,EAAGqjC,GAAiB4N,EAAGvN,MAAOjsC,GAChDqT,GAAGmzB,UAAUxtC,KAAKuP,EAClBiiC,IAASxqC,EAAKqmC,KAAM,EAAG99B,EAAG2lB,GAAKJ,WAEhCvlB,GAAI,kBACH,IAAGixC,EAAGvN,OAASuN,EAAGvN,MAAM5V,WAAW,MAC9B,KAAImjB,EAAGmX,WAAanX,EAAGmX,SAASr6B,OAAQkjB,EAAGvN,MAAM5V,WAAamjB,EAAGnjB,eACjE,CACJ,GAAIy/G,KACJ,KAAI,GAAI5J,GAAK,EAAGA,EAAK1yF,EAAGnjB,WAAW1iC,SAAUu4I,EAC5C,IAAI1yF,EAAGmX,SAASr6B,OAAO41G,QAAShjC,QAAU,EAAG4sC,EAAI98I,KAAKwgD,EAAGnjB,WAAW61G,GACrE1yF,GAAGvN,MAAM5V,WAAay/G,EAEvBt8F,EAAGvN,MAAMW,WAAa4M,EAAGvN,MAAM5V,WAAW1iC,MAC1Cq1B,IAAaR,EAAKjgB,EAAG6kC,GAAgBoM,EAAGvN,MAAOjsC,GAC/CqT,GAAGozB,SAASztC,KAAKuP,EACjBiiC,IAASxqC,EAAKqmC,KAAM,EAAG99B,EAAG2lB,GAAKF,UAE/B,IAAGwrB,EAAGpK,YAAcoK,EAAGvN,OAAS7oB,GAAKo2B,EAAGpK,eAAez7C,OAAS,EAAG,CAClE4U,EAAI,qBACJygB,IAAaR,EAAKjgB,EAAGqlC,GAAiB4L,EAAGpK,UAAWpvC,GACpDqT,GAAGqzB,UAAU1tC,KAAKuP,EAClBiiC,IAASxqC,EAAKqmC,KAAM,EAAG99B,EAAG2lB,GAAKH,YAGhC,GAAIgZ,IAAU,UACd/mC,GAAKi2E,KAAO,CAEZ,KAAIxrC,EAAI,EAAEA,GAAO+O,EAAGnjB,WAAW1iC,SAAU82C,EAAK,CAC7C,GAAIsrG,IAAUhsG,SACd,IAAIrT,GAAK8iB,EAAGljB,OAAOkjB,EAAGnjB,WAAWoU,EAAI,GACrC,IAAIurG,IAASt/G,OAAU,UAAY,OACnC,QAAOs/G,GACP,IAAK,SAEL,QACCztI,EAAI,sBAAwBkiC,EAAM,IAAMmqG,CACxC5rH,IAAaR,EAAKjgB,EAAG63F,GAAa31D,EAAI,EAAGzqC,EAAMw5C,EAAIu8F,GACnD1iI,GAAG+iB,OAAOp9B,KAAKuP,EACfiiC,IAASxqC,EAAKozI,QAAS,EAAG,mBAAqB3oG,EAAM,IAAMmqG,EAAO1mH,GAAKib,GAAG,KAG3E,GAAGzS,EAAI,CACN,GAAIoP,GAAWpP,EAAG,YAClB,IAAIu/G,GAAW,KACf,IAAIl9F,GAAK,EACT,IAAGjT,GAAYA,EAASnyC,OAAS,EAAG,CACnC,GAAIyiJ,GAAS,KACbtwG,GAASz7B,QAAQ,SAASyrE,GACzBA,EAAK,GAAGzrE,QAAQ,SAASxS,GAAK,GAAGA,EAAEyI,GAAK,KAAM81I,EAAS,QAExD,IAAGA,EAAQ,CACVr9F,EAAK,sCAAwCtO,EAAM,MACnDzhB,IAAaR,EAAKuwB,EAAI88B,GAAgB/vC,EAAUiB,EAAQ/mC,GACxDqT,GAAGizB,iBAAiBttC,KAAK+/C,EACzBvO,IAASurG,GAAS,EAAG,sCAAwCtrG,EAAM,OAAQvc,GAAKC,OAGjF4qB,EAAK,cAAgBtO,EAAM,IAAMmqG,CACjC5rH,IAAaR,EAAKuwB,EAAIo8B,GAAmBrvC,EAAU9lC,GACnDqT,GAAGyyB,SAAS9sC,KAAK+/C,EACjBvO,IAASurG,GAAS,EAAG,cAAgBtrG,EAAM,IAAMmqG,EAAO1mH,GAAK0a,KAC7DqtG,GAAW,KAEZ,GAAGv/G,EAAG,WAAY,CACjB,GAAGu/G,EAAUjtH,GAAaR,EAAK,yBAA2B,EAAQ,OAAQuqD,GAAUtoC,EAAK/T,EAAG,qBAEtFA,GAAG,mBACHA,GAAG,WAGX,GAAGq/G,EAAO,OAAOG,KAAMltH,GAAaR,EAAKohB,GAAcrhC,GAAI+hC,GAAWyrG,IAGvE,GAAG/1I,EAAKi+F,SAAW,MAAQj+F,EAAKi+F,QAAQtqG,OAAS,EAAG,CACnD4U,EAAI,oBAAsBqsI,CAC1B5rH,IAAaR,EAAKjgB,EAAGy4D,GAAchhE,EAAKi+F,QAASj+F,GACjDqT,GAAGwyB,KAAK7sC,KAAKuP,EACbiiC,IAASxqC,EAAKozI,QAAS,EAAG,iBAAmBwB,EAAO1mH,GAAK2a,KAG1DtgC,EAAI,eAAiBqsI,CACrB5rH,IAAaR,EAAKjgB,EAAG8gG,GAAa7vD,EAAIx5C,GACtCqT,GAAGmyB,UAAUxsC,KAAKuP,EAClBiiC,IAASxqC,EAAKqmC,KAAM,EAAG99B,EAAG2lB,GAAKia,GAI/B5/B,GAAI,qBACJygB,IAAaR,EAAKjgB,EAAG0nE,GAAYz2B,EAAG02B,OAAQlwE,GAC5CqT,GAAGszB,OAAO3tC,KAAKuP,EACfiiC,IAASxqC,EAAKozI,QAAS,EAAG,mBAAoBllH,GAAK6a,MAInDxgC,GAAI,aAAeqsI,CACnB5rH,IAAaR,EAAKjgB,EAAGkkE,GAAcjzB,EAAIx5C,GACvCqT,GAAG8yB,OAAOntC,KAAKuP,EACfiiC,IAASxqC,EAAKozI,QAAS,EAAG,UAAYwB,EAAO1mH,GAAK4a,IAElD,IAAG0Q,EAAGyiD,QAAU45C,EAAQ,CACvBttI,EAAI,mBACJygB,IAAaR,EAAKjgB,EAAGixC,EAAGyiD,OACxB5oF,GAAGwzB,IAAI7tC,KAAKuP,EACZiiC,IAASxqC,EAAKozI,QAAS,EAAG,iBAAkBllH,GAAKyb,KAGlDphC,EAAI,eAAiBqsI,CACrB5rH,IAAaR,EAAKjgB,EAAG+pE,KACrBj/D,GAAG6yB,SAASltC,KAAKuP,EACjBiiC,IAASxqC,EAAKozI,QAAS,EAAG,YAAcwB,EAAO1mH,GAAKsb,OAEpD,IAAGzC,EAAOpzC,OAAS,EAAG,CACrB4U,EAAI,uBACJygB,IAAaR,EAAKjgB,EAAG8tE,GAAiBtvC,EAAQ/mC,GAC9CqT,GAAG0zB,OAAO/tC,KAAKuP,EACfiiC,IAASxqC,EAAKozI,QAAS,EAAG,qBAAsBllH,GAAKub,QAGtDzgB,GAAaR,EAAK,sBAAuBmf,GAASt0B,EAAIrT,GACtDgpB,IAAaR,EAAK,cAAe8hB,GAAWtqC,EAAKqmC,MACjDrd,IAAaR,EAAK,qBAAuBosH,EAAQ,QAAStqG,GAAWtqC,EAAKozI,eAEnEpzI,GAAKw5F,aAAex5F,GAAKy5F,GAChC,OAAOjxE,GAGR,QAAS8sC,IAAU/sD,EAAE/U,GACpB,GAAIgB,GAAI,EACR,SAAQhB,OAAOsP,MAAQ,UACtB,IAAK,SAAU,OAAQyF,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IACnE,IAAK,SAAU/T,EAAIuB,EAAcwS,EAAElU,MAAM,EAAE,IAAM,OACjD,IAAK,SAAUG,EAAI+T,CAAG,OACtB,IAAK,QAAU,OAAQA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IACnE,QAAS,KAAM,IAAIxQ,OAAM,sBAAwBvE,GAAKA,EAAEsP,MAAQ,eAEjE,OAAQtO,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,IAG7I,QAASyiJ,IAASviI,EAAK9T,GACtB,GAAGwM,GAAI2H,KAAKL,EAAK,oBAAqB,MAAOuhI,IAAcvhI,EAAK9T,EAChE,OAAO45G,IAAa9lG,EAAK9T,GAG1B,QAASs2I,IAAS/iJ,EAAMyM,GACvB,GAAIwoB,GAAKzvB,EAAIxF,CACb,IAAIC,GAAIwM,KACR,KAAIxM,EAAEsP,KAAMtP,EAAEsP,KAAQ7M,GAAWC,OAAOkC,SAAS7E,GAAS,SAAW,QACrEi1B,GAAMW,GAASpwB,EAAGvF,EAClB,OAAO4b,IAAUoZ,EAAKh1B,GAGvB,QAAS+iJ,IAAehjJ,EAAMC,GAC7B,GAAIC,GAAI,CACR+iJ,GAAM,MAAM/iJ,EAAIF,EAAKI,OAAQ,OAAOJ,EAAKK,WAAWH,IACnD,IAAK,KAAM,IAAK,KAAM,IAAK,MAAQA,CAAG,OACtC,IAAK,IAAM,MAAOs+G,IAAWx+G,EAAKc,MAAMZ,GAAGD,GAC3C,QAAS,KAAMgjJ,IAEhB,MAAOriF,IAAI9I,YAAY93D,EAAMC,GAG9B,QAASijJ,IAAmBljJ,EAAMC,GACjC,GAAIgS,GAAM,GAAIurC,EAAQukB,GAAU/hE,EAAMC,EACtC,QAAOA,EAAEsP,MACR,IAAK,SAAU0C,EAAMzP,EAAcxC,EAAO,OAC1C,IAAK,SAAUiS,EAAMjS,CAAM,OAC3B,IAAK,SAAUiS,EAAMjS,EAAKsD,SAAS,SAAW,OAC9C,IAAK,QAAS2O,EAAMsf,GAAOvxB,EAAO,OAClC,QAAS,KAAM,IAAIwE,OAAM,qBAAuBvE,EAAEsP,OAEnD,GAAGiuC,EAAM,IAAM,KAAQA,EAAM,IAAM,KAAQA,EAAM,IAAM,IAAMvrC,EAAM8mB,GAAS9mB,EAC5EhS,GAAEsP,KAAO,QACT,OAAOyzI,IAAe/wI,EAAKhS,GAG5B,QAASkjJ,IAAWnjJ,EAAMC,GACzB,GAAIuF,GAAIxF,CACR,IAAGC,EAAEsP,MAAQ,SAAU/J,EAAIhD,EAAcgD,EACzCA,SAAWtH,KAAa,YAAcA,EAASoD,MAAMC,OAAO,KAAMiE,EAAE1E,MAAM,GAAI,OAASR,EAAYkF,EAAE1E,MAAM,GAC3Gb,GAAEsP,KAAO,QACT,OAAOyzI,IAAex9I,EAAGvF,GAG1B,QAASmjJ,IAAQpjJ,GAChB,OAAQA,EAAKyQ,MAAM,gBAAkBzQ,EAAOguB,GAAUhuB,GAGvD,QAASqjJ,IAASrjJ,EAAMwF,EAAGvF,EAAGgS,GAC7B,GAAGA,EAAK,CAAEhS,EAAEsP,KAAO,QAAU,OAAOqxD,IAAI9I,YAAY93D,EAAMC,GAC1D,MAAO2gE,IAAI9I,YAAYtyD,EAAGvF,GAG3B,QAAS4gJ,IAAS7gJ,EAAMyM,GACvB3M,GACA,IAAIG,GAAIwM,KACR,IAAGxM,EAAE+1D,gBAAmB93D,KAAa,YAAawkB,QAAQC,MAAM,sFAChE,UAAUze,eAAgB,aAAelE,YAAgBkE,aAAa,MAAO28I,IAAS,GAAIp9I,YAAWzD,IAAQC,EAAIqzB,GAAIrzB,GAAIA,EAAEsP,KAAO,QAAStP,GAC3I,UAAUwD,cAAe,aAAezD,YAAgByD,cAAexD,EAAEsP,KAAMtP,EAAEsP,WAAcse,QAAS,YAAc,SAAW,OACjI,IAAIroB,GAAIxF,EAAM+W,GAAK,EAAE,EAAE,EAAE,GAAI9E,EAAM,KACnC,IAAGhS,EAAEmrD,WAAY,CAAEnrD,EAAE0hE,OAAS,IAAM1hE,GAAE2jC,WAAa,KACnDmhE,KACA,IAAG9kG,EAAEoV,OAAQ0vF,GAAS1vF,OAASpV,EAAEoV,MACjC,KAAIpV,EAAEsP,KAAMtP,EAAEsP,KAAQ7M,GAAWC,OAAOkC,SAAS7E,GAAS,SAAW,QACrE,IAAGC,EAAEsP,MAAQ,OAAQ,CAAEtP,EAAEsP,KAAO7M,EAAU,SAAW,QAAU8C,GAAImqB,GAAY3vB,EAAO,UAAUyD,cAAe,cAAgBf,EAASzC,EAAEsP,KAAO,QACjJ,GAAGtP,EAAEsP,MAAQ,SAAU,CAAE0C,EAAM,IAAMhS,GAAEsP,KAAO,QAAUtP,GAAE+1D,SAAW,KAAOxwD,GAAI49I,GAAQpjJ,GACxF,GAAGC,EAAEsP,MAAQ,eAAkB9L,cAAe,aAAezD,YAAgByD,mBAAqBS,eAAgB,YAAa,CAE9H,GAAIo/I,GAAG,GAAIp/I,aAAY,GAAIq/I,EAAG,GAAI9/I,YAAW6/I,EAAKC,GAAGlB,IAAI,KAEzD,KAAIkB,EAAGlB,IAAK,CAACpiJ,EAAEqzB,GAAIrzB,EAAIA,GAAEsP,KAAK,OAAS,OAAOsxI,IAASp8I,EAAKe,GAAIvF,IAEjE,QAAQ8W,EAAIgrD,GAAUv8D,EAAGvF,IAAI,IAC5B,IAAK,KAAM,GAAG8W,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAM,MAAO+rI,IAAS7pI,GAAIoH,KAAK7a,EAAGvF,GAAIA,EAAI,OACvK,IAAK,GAAM,GAAG8W,EAAE,IAAM,EAAM,MAAOsvG,IAAa7gH,EAAGvF,EAAI,OACvD,IAAK,IAAM,MAAOu+G,IAAWh5G,EAAGvF,GAChC,IAAK,IACJ,GAAG8W,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,EAAM,KAAM,IAAIvS,OAAM,uCACpE,IAAGuS,EAAE,KAAO,GAAM,MAAOmrD,IAAW18D,EAAGvF,EACvC,OACD,IAAK,IAAM,GAAG8W,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,GAAM,MAAO4oD,IAAI7H,YAAYtyD,EAAGvF,EAAI,OAC7F,IAAK,IAAM,MAAQ8W,GAAE,KAAO,IAAQA,EAAE,GAAK,GAAQA,EAAE,GAAK,EAAQgsI,GAASv9I,EAAGvF,GAAKojJ,GAASrjJ,EAAMwF,EAAGvF,EAAGgS,GACxG,IAAK,KAAM,MAAO8E,GAAE,KAAO,GAAOynG,GAAWh5G,EAAGvF,GAAKojJ,GAASrjJ,EAAMwF,EAAGvF,EAAGgS,GAC1E,IAAK,KACJ,GAAG8E,EAAE,KAAO,IAAM,CAAE,MAAOosI,IAAW39I,EAAGvF,OACpC,IAAG8W,EAAE,KAAO,GAAQA,EAAE,KAAO,GAAQA,EAAE,KAAO,EAAM,MAAOqrD,IAAItK,YAAYtyD,EAAGvF,EACnF,OACD,IAAK,GACJ,GAAG8W,EAAE,KAAO,EAAM,CACjB,GAAGA,EAAE,IAAM,GAAQA,EAAE,KAAO,EAAM,MAAOqrD,IAAItK,YAAYtyD,EAAGvF,EAC5D,IAAG8W,EAAE,KAAO,IAASA,EAAE,KAAO,GAAQA,EAAE,KAAO,GAAO,MAAOqrD,IAAItK,YAAYtyD,EAAGvF,GAEjF,MACD,IAAK,IAAM,IAAK,MAAM,IAAK,MAAM,IAAK,KAAM,MAAO0zD,IAAImE,YAAYtyD,EAAGvF,GACtE,IAAK,KAAM,GAAG8W,EAAE,KAAO,IAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAM,MAAO28D,IAAgBluE,EAAGvF,EAAI,OAC7F,IAAK,KAAM,IAAK,KAAM,IAAK,IAAM,MAAOijJ,IAAmB19I,EAAGvF,GAC9D,IAAK,KAAM,GAAG8W,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,GAAM,KAAM,IAAIvS,OAAM,sCAAwC,OACvH,IAAK,GAAM,GAAGuS,EAAE,KAAO,IAAM,KAAM,IAAIvS,OAAM,kCAAoC,OACjF,IAAK,IACJ,GAAGuS,EAAE,KAAO,IAAM,KAAM,IAAIvS,OAAM,kCAClC,IAAGuS,EAAE,KAAO,IAAM,KAAM,IAAIvS,OAAM,kCAClC,QAEF,GAAGkvD,GAAuB/zD,QAAQoX,EAAE,KAAO,GAAKA,EAAE,IAAM,IAAMA,EAAE,IAAM,GAAI,MAAO48C,IAAImE,YAAYtyD,EAAGvF,EACpG,OAAOojJ,IAASrjJ,EAAMwF,EAAGvF,EAAGgS,GAG7B,QAASmO,IAAa3G,EAAUhN,GAC/B,GAAIxM,GAAIwM,KAAUxM,GAAEsP,KAAO,MAC3B,OAAOsxI,IAASpnI,EAAUxZ,GAE3B,QAASujJ,IAAcjjI,EAAKtgB,GAC3B,OAAOA,EAAEsP,MACR,IAAK,UAAU,IAAK,SAAU,MAC9B,IAAK,UAAU,IAAK,QAAStP,EAAEsP,KAAO,EAAI,OAC1C,IAAK,OAAQ,MAAOqe,IAAS3tB,EAAE0b,KAAM1C,GAAIwK,MAAMlD,GAAMhR,KAAK7M,EAAU,SAAW,MAC/E,IAAK,SAAU,KAAM,IAAI8B,OAAM,qCAAuCvE,EAAEw0C,SAAW,WACnF,QAAS,KAAM,IAAIjwC,OAAM,qBAAuBvE,EAAEsP,OAEnD,MAAO0J,IAAIwK,MAAMlD,EAAKtgB,GAGvB,QAAS2hB,IAAUqkC,EAAIx5C,GACtB,OAAOA,EAAKgoC,UACX,IAAK,MAAO,MAAOq+F,IAAU7sF,EAAIx5C,GACjC,IAAK,UAAW,MAAOwvI,IAAkBh2F,EAAIx5C,GAC7C,IAAK,OAAQ,MAAO21I,IAAen8F,EAAIx5C,GACvC,QAAS,MAAOm2I,IAAe38F,EAAIx5C,KAIrC,QAASg3I,IAAex9F,EAAIx5C,GAC3B,GAAIxM,GAAIqzB,GAAI7mB,MACZ,IAAImqB,GAAIhV,GAAUqkC,EAAIhmD,EACtB,OAAOyjJ,IAAqB9sH,EAAG32B,GAEhC,QAAS0jJ,IAAmB19F,EAAIx5C,GAC/B,GAAIxM,GAAIqzB,GAAI7mB,MACZ,IAAImqB,GAAIgsH,GAAe38F,EAAIhmD,EAC3B,OAAOyjJ,IAAqB9sH,EAAG32B,GAEhC,QAASyjJ,IAAqB9sH,EAAG32B,GAChC,GAAI2jJ,KACJ,IAAIC,GAAQnhJ,EAAU,mBAAuBe,cAAe,YAAc,QAAU,QACpF,IAAGxD,EAAEgqB,YAAa25H,EAAM35H,YAAc,SACtC,IAAGhqB,EAAEiyE,SAAU0xE,EAAMr0I,KAAOs0I,MACvB,QAAO5jJ,EAAEsP,MACb,IAAK,SAAUq0I,EAAMr0I,KAAO,QAAU,OACtC,IAAK,SAAUq0I,EAAMr0I,KAAO,QAAU,OACtC,IAAK,SAAU,KAAM,IAAI/K,OAAM,qCAAuCvE,EAAEw0C,SAAW,WACnF,IAAK,UACL,IAAK,OAAQmvG,EAAMr0I,KAAOs0I,CAAO,OACjC,QAAS,KAAM,IAAIr/I,OAAM,qBAAuBvE,EAAEsP,OAEnD,GAAInK,GAAMwxB,EAAErZ,UAAYtE,GAAIwK,MAAMmT,GAAIlV,SAAS,MAAOnS,MAAOu0I,WAAc,SAAUC,OAAU,UAAUH,EAAMr0I,OAASq0I,EAAMr0I,KAAM0a,cAAehqB,EAAEgqB,cAAgB2M,EAAEotH,SAASJ,EAChL,UAAU/1H,QAAS,YAAa,CAC/B,SAAUzoB,IAAO,SAAU,CAC1B,GAAGnF,EAAEsP,MAAQ,UAAYtP,EAAEsP,MAAQ,SAAU,MAAOnK,EACpDA,GAAM,GAAI3B,YAAWQ,EAAKmB,KAI5B,GAAGnF,EAAEiyE,gBAAmB+xE,iBAAkB,YAAa,MAAOT,IAAcS,cAAc7+I,EAAKnF,EAAEiyE,UAAWjyE,EAE5G,IAAGA,EAAEsP,OAAS,OAAQ,MAAOqe,IAAS3tB,EAAE0b,KAAMvW,EAC9C,OAAOnF,GAAEsP,MAAQ,SAAWwpB,GAAS3zB,GAAOA,EAG7C,QAAS8+I,IAAej+F,EAAIx5C,GAC3B,GAAIxM,GAAIwM,KACR,IAAI8T,GAAMmmG,GAAazgE,EAAIhmD,EAC3B,OAAOujJ,IAAcjjI,EAAKtgB,GAG3B,QAASkkJ,IAAkB/+I,EAAKqH,EAAM23I,GACrC,IAAIA,EAAKA,EAAM,EACf,IAAInkJ,GAAImkJ,EAAMh/I,CACd,QAAOqH,EAAK8C,MACX,IAAK,SAAU,MAAOzN,GAAcksB,GAAU/tB,IAC9C,IAAK,SAAU,MAAO+tB,IAAU/tB,GAChC,IAAK,SAAU,MAAOmF,GACtB,IAAK,OAAQ,MAAOwoB,IAASnhB,EAAKkP,KAAM1b,EAAG,QAC3C,IAAK,SAAU,CACd,GAAGyC,EAAS,MAAOI,GAAY7C,EAAG,YAC7B,UAAU6tB,eAAgB,YAAa,OAAO,GAAIA,cAAcC,OAAO9tB,OACvE,OAAOkkJ,IAAkBlkJ,GAAIsP,KAAK,WAAWxL,MAAM,IAAIC,IAAI,SAASM,GAAK,MAAOA,GAAEjE,WAAW,OAGpG,KAAM,IAAImE,OAAM,qBAAuBiI,EAAK8C,MAG7C,QAAS80I,IAAgBj/I,EAAKqH,GAC7B,OAAOA,EAAK8C,MACX,IAAK,SAAU,MAAOhN,GAAmB6C,GACzC,IAAK,SAAU,MAAOA,GACtB,IAAK,SAAU,MAAOA,GACtB,IAAK,OAAQ,MAAOwoB,IAASnhB,EAAKkP,KAAMvW,EAAK,UAC7C,IAAK,SAAU,CACd,GAAG1C,EAAS,MAAOI,GAAYsC,EAAK,cAC/B,OAAOA,GAAIrB,MAAM,IAAIC,IAAI,SAASM,GAAK,MAAOA,GAAEjE,WAAW,OAGlE,KAAM,IAAImE,OAAM,qBAAuBiI,EAAK8C,MAI7C,QAAS+0I,IAAkBl/I,EAAKqH,GAC/B,OAAOA,EAAK8C,MACX,IAAK,UACL,IAAK,UACL,IAAK,SACJ,GAAIqJ,GAAO,EAEX,KAAI,GAAI1Y,GAAI,EAAGA,EAAIkF,EAAIhF,SAAUF,EAAG0Y,GAAQrY,OAAOC,aAAa4E,EAAIlF,GACpE,OAAOuM,GAAK8C,MAAQ,SAAWzN,EAAc8W,GAAQnM,EAAK8C,MAAQ,SAAWwpB,GAASngB,GAAQA,EAC/F,IAAK,OAAQ,MAAOgV,IAASnhB,EAAKkP,KAAMvW,GACxC,IAAK,SAAU,MAAOA,GACtB,QAAS,KAAM,IAAIZ,OAAM,qBAAuBiI,EAAK8C,QAIvD,QAASg1I,IAAct+F,EAAIx5C,GAC1B3M,GACAs1G,IAASnvD,EACT,IAAIhmD,GAAIqzB,GAAI7mB,MACZ,IAAGxM,EAAEmrD,WAAY,CAAEnrD,EAAE0hE,OAAS,IAAM1hE,GAAE2jC,WAAa,KACnD,GAAG3jC,EAAEsP,MAAQ,QAAS,CAAEtP,EAAEsP,KAAO,QAAU,IAAInK,GAAOm/I,GAAct+F,EAAIhmD,EAAKA,GAAEsP,KAAO,OAAS,OAAOtL,GAAKmB,GAC3G,MAAOu+I,IAAmB19F,EAAIhmD,GAG/B,QAASukJ,IAAUv+F,EAAIx5C,GACtB3M,GACAs1G,IAASnvD,EACT,IAAIhmD,GAAIqzB,GAAI7mB,MACZ,IAAGxM,EAAEmrD,WAAY,CAAEnrD,EAAE0hE,OAAS,IAAM1hE,GAAE2jC,WAAa,KACnD,GAAG3jC,EAAEsP,MAAQ,QAAS,CAAEtP,EAAEsP,KAAO,QAAU,IAAInK,GAAOo/I,GAAUv+F,EAAIhmD,EAAKA,GAAEsP,KAAO,OAAS,OAAOtL,GAAKmB,GACvG,GAAImL,GAAM,CACV,IAAGtQ,EAAE2iC,MAAO,CACX,SAAU3iC,GAAE2iC,OAAS,SAAUryB,EAAMtQ,EAAE2iC,UAClCryB,GAAM01C,EAAGnjB,WAAWnjC,QAAQM,EAAE2iC,MACnC,KAAIqjB,EAAGnjB,WAAWvyB,GAAM,KAAM,IAAI/L,OAAM,oBAAsBvE,EAAE2iC,MAAQ,YAAgB3iC,GAAE2iC,OAE3F,OAAO3iC,EAAEw0C,UAAY,QACpB,IAAK,OACL,IAAK,OAAQ,MAAO0vG,IAAkB1jC,GAAWx6D,EAAIhmD,GAAIA,GACzD,IAAK,OACL,IAAK,OAAQ,MAAOkkJ,IAAkBlsF,GAAKD,WAAW/R,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOtQ,EAAGgmD,GAAKhmD,GAC7F,IAAK,OACL,IAAK,OAAQ,MAAOkkJ,IAAkB5Z,GAActkF,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOtQ,GAAIA,GACvF,IAAK,MAAO,MAAOokJ,IAAgBI,GAAax+F,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOtQ,GAAIA,GACnF,IAAK,MAAO,MAAOkkJ,IAAkBO,GAAaz+F,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOtQ,GAAIA,EAAG,UACxF,IAAK,MAAO,MAAOkkJ,IAAkBxkF,GAAI3H,WAAW/R,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOtQ,GAAIA,GACvF,IAAK,MAAO,MAAOqkJ,IAAkB3wF,GAAIqE,WAAW/R,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOtQ,GAAIA,GACvF,IAAK,MAAO,MAAOkkJ,IAAkBvjF,GAAI5I,WAAW/R,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOtQ,GAAIA,GACvF,IAAK,MAAO,MAAOkkJ,IAAkBxwE,GAAa1tB,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOtQ,GAAIA,GACrF,IAAK,MAAO,MAAOkkJ,IAAkB/jF,GAAIpI,WAAW/R,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOtQ,GAAIA,GACvF,IAAK,OAAQ,MAAOkkJ,IAAkBrR,GAAU7sF,EAAIhmD,GAAIA,GACxD,IAAK,MAAO,MAAOqkJ,IAAkBliF,GAAIqB,aAAaxd,EAAGljB,OAAOkjB,EAAGnjB,WAAWvyB,IAAOtQ,GAAIA,GACzF,IAAK,MAAO,MAAOqkJ,IAAkBliF,GAAI6B,YAAYhe,EAAIhmD,GAAIA,GAC7D,IAAK,QAAS,IAAIA,EAAEugC,KAAMvgC,EAAEugC,KAAO,EACnC,IAAK,QAAS,IAAIvgC,EAAEugC,KAAMvgC,EAAEugC,KAAO,EACnC,IAAK,QAAS,IAAIvgC,EAAEugC,KAAMvgC,EAAEugC,KAAO,CAAG,OAAO8jH,IAAkB19B,GAAe3gE,EAAIhmD,GAAIA,GACtF,IAAK,QAAS,IAAIA,EAAEugC,KAAMvgC,EAAEugC,KAAO,EACnC,IAAK,SACL,IAAK,OACL,IAAK,MAAO,IAAIvgC,EAAEugC,KAAMvgC,EAAEugC,KAAO,CAAG,OAAO0jH,IAAej+F,EAAIhmD,GAC9D,IAAK,QACL,IAAK,QACL,IAAK,QACL,IAAK,QACL,IAAK,WACL,IAAK,MAAO,MAAOwjJ,IAAex9F,EAAIhmD,GACtC,QAAS,KAAM,IAAIuE,OAAO,0BAA4BvE,EAAEw0C,SAAW,OAIrE,QAASkwG,IAAkB1kJ,GAC1B,GAAGA,EAAEw0C,SAAU,MACf,IAAImwG,IACHC,IAAO,QACPp6H,IAAO,OACPq6H,IAAO,OACPC,WAAc,MACdC,QAAW,MAEZ,IAAI75H,GAAMlrB,EAAE0b,KAAK7a,MAAMb,EAAE0b,KAAKrI,YAAY,MAAMU,aAChD,IAAGmX,EAAI1a,MAAM,cAAexQ,EAAEw0C,SAAWtpB,EAAIrqB,MAAM,EACnDb,GAAEw0C,SAAWmwG,EAAI3kJ,EAAEw0C,WAAax0C,EAAEw0C,SAGnC,QAASjxB,IAAcyiC,EAAIxsC,EAAUhN,GACpC,GAAIxM,GAAIwM,KAAUxM,GAAEsP,KAAO,MAC3BtP,GAAE0b,KAAOlC,CACTkrI,IAAkB1kJ,EAClB,OAAOukJ,IAAUv+F,EAAIhmD,GAGtB,QAASglJ,IAAkBh/F,EAAIxsC,EAAUhN,GACxC,GAAIxM,GAAIwM,KAAUxM,GAAEsP,KAAO,MAC3BtP,GAAE0b,KAAOlC,CACTkrI,IAAkB1kJ,EAClB,OAAOskJ,IAAct+F,EAAIhmD,GAI1B,QAASilJ,IAAezrI,EAAUwsC,EAAIx5C,EAAMwyB,GAC3C,GAAIh/B,GAAIwM,KAAUxM,GAAEsP,KAAO,MAC3BtP,GAAE0b,KAAOlC,CACTkrI,IAAkB1kJ,EAClBA,GAAEsP,KAAO,QACT,IAAI41I,GAAMlmH,CAAI,MAAKkmH,YAAeC,WAAWD,EAAM,CACnD,OAAO1pI,IAAI6R,UAAU7T,EAAU+qI,GAAUv+F,EAAIhmD,GAAIklJ,GAElD,QAASE,IAAcziH,EAAOzxB,EAAGkI,EAAG29C,EAAMv6C,EAAQqiC,EAAK5b,EAAOjjC,GAC7D,GAAIuR,GAAKyvB,GAAW5nB,EACpB,IAAIisI,GAASrlJ,EAAEqlJ,OAAQ3nI,EAAM1d,EAAE0d,MAAQwD,OAAO6O,UAAUC,eAAehrB,KAAKhF,EAAG,MAC/E,IAAIslJ,GAAU,IACd,IAAIn5H,GAAO3P,IAAW,OACtB,IAAGA,IAAW,EAAG,CAChB,GAAG0E,OAAOqkI,eAAgB,IAAMrkI,OAAOqkI,eAAep5H,EAAK,cAAeoM,MAAMnf,EAAGosI,WAAW,QAAW,MAAMxiJ,GAAKmpB,EAAIs5H,WAAarsI,MAChI+S,GAAIs5H,WAAarsI,EAEvB,IAAI6pB,GAASN,EAAMvpB,GAAI,IAAK,GAAIP,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CAC3D,GAAIrJ,GAAMyzB,EAAQN,EAAMvpB,GAAGP,GAAK8pB,EAAMo0B,EAAKl+C,GAAKtH,EAChD,IAAG/B,IAAQ7M,WAAa6M,EAAI1J,IAAMnD,UAAW,CAC5C,GAAG0iJ,IAAW1iJ,UAAW,QACzB,IAAGk8C,EAAIhmC,IAAM,KAAM,CAAEsT,EAAI0yB,EAAIhmC,IAAMwsI,EACnC,SAED,GAAIx/I,GAAI2J,EAAI3J,CACZ,QAAO2J,EAAI1J,GACV,IAAK,IAAK,GAAGD,GAAK,KAAM,KAAO,UAC/B,IAAK,IAAKA,EAAKA,GAAK,EAAI,SAAY,EAAI,OACxC,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAAK,MACxC,QAAS,KAAM,IAAItB,OAAM,qBAAuBiL,EAAI1J,IAErD,GAAG+4C,EAAIhmC,IAAM,KAAM,CAClB,GAAGhT,GAAK,KAAM,CACb,GAAG2J,EAAI1J,GAAK,KAAOD,IAAM,KAAMsmB,EAAI0yB,EAAIhmC,IAAM,SACxC,IAAGwsI,IAAW1iJ,UAAWwpB,EAAI0yB,EAAIhmC,IAAMwsI,MACvC,IAAG3nI,GAAO7X,IAAM,KAAMsmB,EAAI0yB,EAAIhmC,IAAM,SACpC,cACC,CACNsT,EAAI0yB,EAAIhmC,IAAM6E,IAAQlO,EAAI1J,IAAM,KAAQ0J,EAAI1J,IAAM,KAAO9F,EAAE0lJ,aAAe,OAAU7/I,EAAI28B,GAAYhzB,EAAI3J,EAAE7F,GAE3G,GAAG6F,GAAK,KAAMy/I,EAAU,OAG1B,OAASn5H,IAAKA,EAAKm5H,QAASA,GAI7B,QAASzuF,IAAcl0B,EAAOn2B,GAC7B,GAAGm2B,GAAS,MAAQA,EAAM,SAAW,KAAM,QAC3C,IAAInzB,IAAO1J,EAAE,IAAID,EAAE,GAAI2W,EAAS,EAAGwD,EAAS,EAAG6+B,KAAUh5C,EAAE,EAAGuO,EAAG,EACjE,IAAIlD,IAAKrN,GAAGqN,EAAE,EAAE7M,EAAE,GAAGrB,GAAGkO,EAAE,EAAE7M,EAAE,GAC9B,IAAIrE,GAAIwM,KACR,IAAIi0B,GAAQzgC,EAAEygC,OAAS,KAAOzgC,EAAEygC,MAAQkC,EAAM,OAC9C,IAAG3iC,EAAEwc,SAAW,EAAGA,EAAS,MACvB,IAAGxc,EAAEwc,SAAW,IAAKA,EAAS,MAC9B,IAAG/Y,MAAMW,QAAQpE,EAAEwc,QAASA,EAAS,MACrC,IAAGxc,EAAEwc,QAAU,KAAMA,EAAS,CACnC,cAAcikB,IACb,IAAK,SAAUvvB,EAAIkxB,GAAkB3B,EAAQ,OAC7C,IAAK,SAAUvvB,EAAIkxB,GAAkBO,EAAM,QAAUzxB,GAAErN,EAAEqN,EAAIuvB,CAAO,OACpE,QAASvvB,EAAIuvB,GAEd,GAAGjkB,EAAS,EAAGwD,EAAS,CACxB,IAAIzO,GAAKyvB,GAAW9vB,EAAErN,EAAEqN,EACxB,IAAI6lD,KACJ,IAAI5xD,KACJ,IAAIwgJ,GAAO,EAAGC,EAAU,CACxB,IAAI3iH,GAAQx/B,MAAMW,QAAQu+B,EAC1B,IAAIvpB,GAAIlI,EAAErN,EAAEqN,EAAG2H,EAAI,CACnB,IAAIgtI,KACJ,IAAG5iH,IAAUN,EAAMvpB,GAAIupB,EAAMvpB,KAC7B,IAAI4jD,GAAUh9D,EAAE8lJ,YAAcnjH,EAAM,YACpC,IAAIo6B,GAAU/8D,EAAE8lJ,YAAcnjH,EAAM,YACpC,KAAI9pB,EAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CAC/B,IAAKmkD,EAAQnkD,QAAc,OAAG,QAC9Bk+C,GAAKl+C,GAAKkoB,GAAWloB,EACrBrJ,GAAMyzB,EAAQN,EAAMvpB,GAAGP,GAAK8pB,EAAMo0B,EAAKl+C,GAAKtH,EAC5C,QAAOiL,GACN,IAAK,GAAGqiC,EAAIhmC,GAAKA,EAAI3H,EAAErN,EAAEQ,CAAG,OAC5B,IAAK,GAAGw6C,EAAIhmC,GAAKk+C,EAAKl+C,EAAI,OAC1B,IAAK,GAAGgmC,EAAIhmC,GAAK7Y,EAAEwc,OAAO3D,EAAI3H,EAAErN,EAAEQ,EAAI,OACtC,QACC,GAAGmL,GAAO,KAAMA,GAAOhB,EAAG,UAAW1I,EAAG,IACxCsO,GAAKvO,EAAI28B,GAAYhzB,EAAK,KAAMxP,EAChC4lJ,GAAUC,EAAWhgJ,IAAM,CAC3B,KAAI+/I,EAASC,EAAWhgJ,GAAK,MACxB,CACJ,EAAG,CAAEuO,EAAKvO,EAAI,IAAO+/I,UAAoBC,EAAWzxI,GAAMyxI,GAAWhgJ,GAAK+/I,CAC1EC,GAAWzxI,GAAM,EAElByqC,EAAIhmC,GAAKzE,IAGZ,IAAKgF,EAAIlI,EAAErN,EAAEqN,EAAI8O,EAAQ5G,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAG,CACzC,IAAK2jD,EAAQ3jD,QAAQutC,OAAQ,QAC7B,IAAIx6B,GAAMi5H,GAAcziH,EAAOzxB,EAAGkI,EAAG29C,EAAMv6C,EAAQqiC,EAAK5b,EAAOjjC,EAC/D,IAAImsB,EAAIm5H,UAAY,QAAW9oI,IAAW,EAAIxc,EAAE+lJ,YAAc,QAAU/lJ,EAAE+lJ,WAAY5gJ,EAAIwgJ,KAAUx5H,EAAIA,IAEzGhnB,EAAIhF,OAASwlJ,CACb,OAAOxgJ,GAGR,GAAI6gJ,IAAO,IACX,SAASC,IAAatjH,EAAOzxB,EAAGkI,EAAG29C,EAAMz7C,EAAI2wD,EAAI7K,EAAIphE,GACpD,GAAIslJ,GAAU,IACd,IAAIn5H,MAAU+5H,EAAM,GAAI30I,EAAKyvB,GAAW5nB,EACxC,KAAI,GAAIP,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CACnC,IAAKk+C,EAAKl+C,GAAI,QACd,IAAIrJ,GAAMxP,EAAEijC,OAASN,EAAMvpB,QAAQP,GAAI8pB,EAAMo0B,EAAKl+C,GAAKtH,EACvD,IAAG/B,GAAO,KAAM02I,EAAM,OACjB,IAAG12I,EAAI3J,GAAK,KAAM,CACtBy/I,EAAU,KACVY,GAAM,IAAIlmJ,EAAE0lJ,YAAcl2I,EAAI1J,GAAK,IAAM0J,EAAI3J,EAAI28B,GAAYhzB,EAAK,KAAMxP,GACxE,KAAI,GAAIC,GAAI,EAAGgS,EAAK,EAAGhS,IAAMimJ,EAAI/lJ,SAAUF,EAAG,IAAIgS,EAAKi0I,EAAI9lJ,WAAWH,MAAQqb,GAAMrJ,IAAOg6D,GAAMh6D,IAAO,IAAMjS,EAAEmmJ,YAAa,CAACD,EAAM,IAAOA,EAAI1jJ,QAAQwjJ,GAAM,MAAQ,GAAM,OAC3K,GAAGE,GAAO,KAAMA,EAAM,WAChB,IAAG12I,EAAIuF,GAAK,OAASvF,EAAI+zC,EAAG,CAClC+hG,EAAU,KACVY,GAAM,IAAM12I,EAAIuF,CAAG,IAAGmxI,EAAIxmJ,QAAQ,MAAQ,EAAGwmJ,EAAM,IAAMA,EAAI1jJ,QAAQwjJ,GAAM,MAAQ,QAC7EE,GAAM,EAEb/5H,GAAI3mB,KAAK0gJ,GAEV,GAAGlmJ,EAAE+lJ,YAAc,OAAST,EAAS,MAAO,KAC5C,OAAOn5H,GAAI3rB,KAAK4gE,GAGjB,QAASqjF,IAAa9hH,EAAOn2B,GAC5B,GAAIrH,KACJ,IAAInF,GAAIwM,GAAQ,QAAYA,CAC5B,IAAGm2B,GAAS,MAAQA,EAAM,SAAW,KAAM,MAAO,EAClD,IAAIzxB,GAAIkxB,GAAkBO,EAAM,QAChC,IAAIy+B,GAAKphE,EAAEohE,KAAOz+D,UAAY3C,EAAEohE,GAAK,IAAK9lD,EAAK8lD,EAAGhhE,WAAW,EAC7D,IAAIo/D,GAAKx/D,EAAEw/D,KAAO78D,UAAY3C,EAAEw/D,GAAK,KAAMyM,EAAKzM,EAAGp/D,WAAW,EAC9D,IAAIgmJ,GAAW,GAAI1vI,SAAQ0qD,GAAI,IAAM,MAAQA,GAAI,KACjD,IAAIj1C,GAAM,GAAI4qC,IACd/2D,GAAEijC,MAAQx/B,MAAMW,QAAQu+B,EACxB,IAAIq6B,GAAUh9D,EAAE8lJ,YAAcnjH,EAAM,YACpC,IAAIo6B,GAAU/8D,EAAE8lJ,YAAcnjH,EAAM,YACpC,KAAI,GAAI9pB,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,KAAOmkD,EAAQnkD,QAAc,OAAGk+C,EAAKl+C,GAAKkoB,GAAWloB,EACzF,IAAIrK,GAAI,CACR,KAAI,GAAI4K,GAAIlI,EAAErN,EAAEqN,EAAGkI,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAG,CACnC,IAAK2jD,EAAQ3jD,QAAQutC,OAAQ,QAC7Bx6B,GAAM85H,GAAatjH,EAAOzxB,EAAGkI,EAAG29C,EAAMz7C,EAAI2wD,EAAI7K,EAAIphE,EAClD,IAAGmsB,GAAO,KAAM,CAAE,SAClB,GAAGnsB,EAAEqmJ,MAAOl6H,EAAMA,EAAI3pB,QAAQ4jJ,EAAS,GACvC,IAAGj6H,GAAQnsB,EAAE+lJ,YAAc,MAAQ5gJ,EAAIK,MAAMgJ,IAAMgxD,EAAK,IAAMrzC,SAExDnsB,GAAEijC,KACT,OAAO99B,GAAI3E,KAAK,IAGjB,QAASgkJ,IAAa7hH,EAAOn2B,GAC5B,IAAIA,EAAMA,IAAWA,GAAK40D,GAAK,IAAM50D,GAAKgzD,GAAK,IAC/C,IAAI37D,GAAI4gJ,GAAa9hH,EAAOn2B,EAC5B,UAAUvO,IAAY,aAAeuO,EAAK8C,MAAQ,SAAU,MAAOzL,EACnE,IAAI7D,GAAI/B,EAASoD,MAAMysB,OAAO,KAAMjqB,EAAG,MACvC,OAAOvD,QAAOC,aAAa,KAAOD,OAAOC,aAAa,KAAOP,EAG9D,QAASsmJ,IAAkB3jH,GAC1B,GAAI31B,GAAI,GAAIhM,EAAGwO,EAAI,EACnB,IAAGmzB,GAAS,MAAQA,EAAM,SAAW,KAAM,QAC3C,IAAIzxB,GAAIkxB,GAAkBO,EAAM,SAAUpxB,EAAK,GAAIwlD,KAAWl+C,CAC9D,IAAI0tI,KACJ,IAAItjH,GAAQx/B,MAAMW,QAAQu+B,EAC1B,KAAI9pB,EAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAGk+C,EAAKl+C,GAAKkoB,GAAWloB,EACrD,KAAI,GAAIO,GAAIlI,EAAErN,EAAEqN,EAAGkI,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAG,CACnC7H,EAAKyvB,GAAW5nB,EAChB,KAAIP,EAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CAC/B7L,EAAI+pD,EAAKl+C,GAAKtH,CACdvQ,GAAIiiC,GAASN,EAAMvpB,QAAQP,GAAK8pB,EAAM31B,EACtCwC,GAAM,EACN,IAAGxO,IAAM2B,UAAW,aACf,IAAG3B,EAAEuiD,GAAK,KAAM,CACpBv2C,EAAIhM,EAAEuiD,CACN,KAAIviD,EAAE+T,EAAG,QACTvF,GAAMxO,EAAE+T,CACR,IAAG/H,EAAEtN,QAAQ,OAAS,EAAGsN,EAAIA,EAAI,IAAMA,EAExC,GAAGhM,EAAE+T,GAAK,KAAMvF,EAAMxO,EAAE+T,MACnB,IAAG/T,EAAE8E,GAAK,IAAK,aACf,IAAG9E,EAAE8E,GAAK,KAAO9E,EAAE6E,GAAK,KAAM2J,EAAM,GAAKxO,EAAE6E,MAC3C,IAAG7E,EAAE8E,GAAK,IAAK0J,EAAMxO,EAAE6E,EAAI,OAAS,YACpC,IAAG7E,EAAEwN,IAAM7L,UAAW6M,EAAM,IAAMxO,EAAEwN,MACpC,IAAGxN,EAAE6E,IAAMlD,UAAW,aACtB,IAAG3B,EAAE8E,GAAK,IAAK0J,EAAM,IAAMxO,EAAE6E,MAC7B2J,GAAM,GAAGxO,EAAE6E,CAChB0gJ,GAAKA,EAAKpmJ,QAAU6M,EAAI,IAAMwC,GAGhC,MAAO+2I,GAGR,QAASC,IAAexjH,EAAKyjH,EAAIj6I,GAChC,GAAIxM,GAAIwM,KACR,IAAIy2B,GAAQD,EAAMv/B,MAAMW,QAAQ4+B,GAAOhjC,EAAEijC,KACzC,IAAGvhC,GAAS,MAAQuhC,GAAS,KAAMA,EAAQvhC,CAC3C,IAAIse,KAAWhgB,EAAE0mJ,UACjB,IAAIxjH,GAAKF,IAAQC,QACjB,IAAIE,GAAK,EAAGC,EAAK,CACjB,IAAGF,GAAMljC,EAAEqjC,QAAU,KAAM,CAC1B,SAAUrjC,GAAEqjC,QAAU,SAAUF,EAAKnjC,EAAEqjC,WAClC,CACJ,GAAIC,SAAiBtjC,GAAEqjC,QAAU,SAAW1B,GAAY3hC,EAAEqjC,QAAUrjC,EAAEqjC,MACtEF,GAAKG,EAAQpyB,CAAGkyB,GAAKE,EAAQj/B,GAG/B,GAAIo8B,IAAU58B,GAAIQ,EAAE,EAAG6M,EAAE,GAAIlO,GAAIqB,EAAE++B,EAAIlyB,EAAEiyB,EAAKsjH,EAAGtmJ,OAAS,EAAI6f,GAC9D,IAAGkjB,EAAG,QAAS,CACd,GAAIK,GAASnB,GAAkBc,EAAG,QAClCzC,GAAMz9B,EAAEqB,EAAI8B,KAAK2M,IAAI2tB,EAAMz9B,EAAEqB,EAAGk/B,EAAOvgC,EAAEqB,EACzCo8B,GAAMz9B,EAAEkO,EAAI/K,KAAK2M,IAAI2tB,EAAMz9B,EAAEkO,EAAGqyB,EAAOvgC,EAAEkO,EACzC,IAAGiyB,IAAO,EAAG,CAAEA,EAAKI,EAAOvgC,EAAEkO,EAAI,CAAGuvB,GAAMz9B,EAAEkO,EAAIiyB,EAAKsjH,EAAGtmJ,OAAS,EAAI6f,OAC/D,CACN,GAAGmjB,IAAO,EAAG,CAAEA,EAAK,CAAG1C,GAAMz9B,EAAEkO,EAAIu1I,EAAGtmJ,OAAS,EAAI6f,GAEpD,GAAI6+B,GAAM7+C,EAAEwc,WAAc3D,EAAI,CAC9B,IAAI8tI,KACJF,GAAG5vI,QAAQ,SAAU+vI,EAAIxtI,GACxB,GAAG6pB,IAAUC,EAAGC,EAAK/pB,EAAI4G,GAASkjB,EAAGC,EAAK/pB,EAAI4G,KAC9C,IAAGijB,EAAO0jH,EAAMzjH,EAAGC,EAAK/pB,EAAI4G,EAC5B4P,IAAKg3H,GAAI/vI,QAAQ,SAASwI,GACzB,IAAIxG,EAAEgmC,EAAIn/C,QAAQ2f,MAAQ,EAAGw/B,EAAIhmC,EAAEgmC,EAAI1+C,QAAUkf,CACjD,IAAIxZ,GAAI+gJ,EAAGvnI,EACX,IAAIvZ,GAAI,GACR,IAAI6wB,GAAI,EACR,IAAI64B,GAAMvsB,EAAQ,GAAKtC,IAAat8B,EAAE++B,EAAKvqB,EAAE3H,EAAEiyB,EAAK/pB,EAAI4G,GACxD,IAAIogB,GAAO6C,EAAQ0jH,EAAIvjH,EAAKvqB,GAAKqqB,EAAGssB,EACpC,IAAG3pD,SAAYA,KAAM,YAAcA,YAAa0H,OAAM,CACrD21B,EAAGssB,GAAO3pD,MACJ,CACN,SAAUA,IAAK,SAAUC,EAAI,QACxB,UAAUD,IAAK,UAAWC,EAAI,QAC9B,UAAUD,IAAK,SAAUC,EAAI,QAC7B,IAAGD,YAAa0H,MAAM,CAC1BzH,EAAI,GACJ,KAAI9F,EAAE4jC,UAAW,CAAE99B,EAAI,GAAKD,GAAI4qB,GAAQ5qB,GACxC8wB,EAAKyJ,GAAQ,MAAQA,EAAKzJ,GAAKljB,GAAY2sB,EAAKzJ,GAAMyJ,EAAKzJ,EAAK32B,EAAEoV,QAAUvO,EAAU,QAElF,IAAGhB,IAAM,MAAQ7F,EAAE0jC,UAAW,CAAE59B,EAAI,GAAKD,GAAI,EAClD,IAAIu6B,EAAM,CACT,IAAI6C,EAAOC,EAAGssB,GAAOpvB,GAASt6B,EAAEA,EAAGD,EAAEA,OAChC8gJ,GAAIvjH,EAAKvqB,GAAKunB,GAASt6B,EAAEA,EAAGD,EAAEA,OAC7B,CACNu6B,EAAKt6B,EAAIA,CAAGs6B,GAAKv6B,EAAIA,QACdu6B,GAAK5xB,QAAU4xB,GAAKhnB,CAC3B,IAAGud,EAAGyJ,EAAKzJ,EAAIA,EAEhB,GAAGA,EAAGyJ,EAAKzJ,EAAIA,MAIlB8J,GAAMz9B,EAAEqB,EAAI8B,KAAK2M,IAAI2tB,EAAMz9B,EAAEqB,EAAG++B,EAAKyb,EAAI1+C,OAAS,EAClD,IAAIqjC,GAAMxC,GAAWmC,EACrB,IAAGF,IAAUC,EAAGC,GAAKD,EAAGC,KACxB,IAAGnjB,EAAQ,IAAInH,EAAI,EAAGA,EAAIgmC,EAAI1+C,SAAU0Y,EAAG,CAC1C,GAAGoqB,EAAOC,EAAGC,GAAItqB,EAAIuqB,IAAOt9B,EAAE,IAAKD,EAAEg5C,EAAIhmC,QACpCqqB,GAAGnC,GAAWloB,EAAIuqB,GAAMI,IAAQ19B,EAAE,IAAKD,EAAEg5C,EAAIhmC,IAEnDqqB,EAAG,QAAUrB,GAAapB,EAC1B,OAAOyC,GAER,QAAS2jH,IAAcJ,EAAIj6I,GAAQ,MAAOg6I,IAAe,KAAMC,EAAIj6I,GAGnE,QAASs6I,IAAiB5jH,EAAI9pB,EAAGP,GAEhC,SAAUO,IAAK,SAAU,CAExB,GAAG3V,MAAMW,QAAQ8+B,GAAK,CACrB,GAAI6jH,GAAKplH,GAAYvoB,EACrB,KAAI8pB,EAAG6jH,EAAG71I,GAAIgyB,EAAG6jH,EAAG71I,KACpB,OAAOgyB,GAAG6jH,EAAG71I,GAAG61I,EAAG1iJ,KAAO6+B,EAAG6jH,EAAG71I,GAAG61I,EAAG1iJ,IAAMyB,EAAE,MAE/C,MAAOo9B,GAAG9pB,KAAO8pB,EAAG9pB,IAAMtT,EAAE,MAG7B,SAAUsT,IAAK,SAAU,MAAO0tI,IAAiB5jH,EAAIvC,GAAYvnB,GAEjE,OAAO0tI,IAAiB5jH,EAAIvC,IAAazvB,EAAEkI,EAAE/U,EAAEwU,GAAG,KAInD,QAASmuI,IAAahhG,EAAIihG,GACzB,SAAUA,IAAM,SAAU,CACzB,GAAGA,GAAM,GAAKjhG,EAAGnjB,WAAW1iC,OAAS8mJ,EAAI,MAAOA,EAChD,MAAM,IAAI1iJ,OAAM,uBAAyB0iJ,OACnC,UAAUA,IAAM,SAAU,CAChC,GAAI32I,GAAM01C,EAAGnjB,WAAWnjC,QAAQunJ,EAChC,IAAG32I,GAAO,EAAG,MAAOA,EACpB,MAAM,IAAI/L,OAAM,2BAA6B0iJ,EAAK,SAC5C,MAAM,IAAI1iJ,OAAM,sBAAwB0iJ,EAAK,KAIrD,QAAS7c,MACR,OAASvnG,cAAgBC,WAI1B,QAASqoC,IAAkBnlB,EAAI9iB,EAAIjmB,EAAMiqI,GACxC,GAAIjnJ,GAAI,CACR,KAAIgd,EAAM,KAAMhd,GAAK,QAAUA,EAAGgd,EAAOta,UAAW,GAAGqjD,EAAGnjB,WAAWnjC,QAAQud,EAAO,QAAUhd,KAAO,EAAG,KACxG,KAAIgd,GAAQ+oC,EAAGnjB,WAAW1iC,QAAU,MAAQ,KAAM,IAAIoE,OAAM,sBAC5D,IAAG2iJ,GAAQlhG,EAAGnjB,WAAWnjC,QAAQud,IAAS,EAAG,CAC5C,GAAIhQ,GAAIgQ,EAAKzM,MAAM,eACnBvQ,GAAIgN,IAAMA,EAAE,IAAM,CAClB,IAAIsT,GAAOtT,GAAKA,EAAE,IAAMgQ,CACxB,OAAMhd,EAAGA,GAAK,QAAUA,EAAG,GAAG+lD,EAAGnjB,WAAWnjC,QAAQud,EAAOsD,EAAOtgB,KAAO,EAAG,MAE7E40G,GAAc53F,EACd,IAAG+oC,EAAGnjB,WAAWnjC,QAAQud,IAAS,EAAG,KAAM,IAAI1Y,OAAM,wBAA0B0Y,EAAO,oBAEtF+oC,GAAGnjB,WAAWr9B,KAAKyX,EACnB+oC,GAAGljB,OAAO7lB,GAAQimB,CAClB,OAAOjmB,GAIR,QAASkqI,IAA0BnhG,EAAIihG,EAAIG,GAC1C,IAAIphG,EAAGmX,SAAUnX,EAAGmX,WACpB,KAAInX,EAAGmX,SAASr6B,OAAQkjB,EAAGmX,SAASr6B,SAEpC,IAAIxyB,GAAM02I,GAAahhG,EAAIihG,EAE3B,KAAIjhG,EAAGmX,SAASr6B,OAAOxyB,GAAM01C,EAAGmX,SAASr6B,OAAOxyB,KAEhD,QAAO82I,GACN,IAAK,IAAG,IAAK,IAAG,IAAK,GAAG,MACxB,QAAS,KAAM,IAAI7iJ,OAAM,gCAAkC6iJ,IAG5DphG,EAAGmX,SAASr6B,OAAOxyB,GAAKolG,OAAS0xC,EAIlC,QAASC,IAAuBjnH,EAAM7wB,GACrC6wB,EAAKzJ,EAAIpnB,CACT,OAAO6wB,GAIR,QAASknH,IAAmBlnH,EAAMtK,EAAQszE,GACzC,IAAItzE,EAAQ,OACJsK,GAAKprB,MACN,CACNorB,EAAKprB,GAAO0hC,OAAQ5gB,EACpB,IAAGszE,EAAShpE,EAAKprB,EAAEmuC,QAAUimD,EAE9B,MAAOhpE,GAER,QAASmnH,IAAuBnnH,EAAMK,EAAO2oE,GAAW,MAAOk+C,IAAmBlnH,EAAM,IAAMK,EAAO2oE,GAGrG,QAASo+C,IAAiBpnH,EAAM/U,EAAM81D,GACrC,IAAI/gD,EAAK/7B,EAAG+7B,EAAK/7B,IACjB+7B,GAAK/7B,EAAEmB,MAAMM,EAAEulB,EAAMxF,EAAEs7D,GAAQ,YAIhC,QAASsmE,IAAwBvkH,EAAIzC,EAAOw9B,EAASypF,GACpD,GAAIr+C,SAAa5oE,IAAS,SAAWA,EAAQ2B,GAAkB3B,EAC/D,IAAIknH,SAAgBlnH,IAAS,SAAWA,EAAQoB,GAAapB,EAC7D,KAAI,GAAIrnB,GAAIiwF,EAAIxlG,EAAEqN,EAAGkI,GAAKiwF,EAAIrmG,EAAEkO,IAAKkI,EAAG,IAAI,GAAIP,GAAIwwF,EAAIxlG,EAAEQ,EAAGwU,GAAKwwF,EAAIrmG,EAAEqB,IAAKwU,EAAG,CAC/E,GAAIunB,GAAO0mH,GAAiB5jH,EAAI9pB,EAAGP,EACnCunB,GAAKt6B,EAAI,GACTs6B,GAAKmjB,EAAIokG,QACFvnH,GAAKv6B,CACZ,IAAGuT,GAAKiwF,EAAIxlG,EAAEqN,GAAK2H,GAAKwwF,EAAIxlG,EAAEQ,EAAG,CAChC+7B,EAAKrrB,EAAIkpD,CACT,IAAGypF,EAAStnH,EAAK10B,EAAI,MAGvB,GAAIk8I,GAAMhmH,GAAasB,EAAG,QAC1B,IAAG0kH,EAAI/jJ,EAAEqN,EAAIm4F,EAAIxlG,EAAEqN,EAAG02I,EAAI/jJ,EAAEqN,EAAIm4F,EAAIxlG,EAAEqN,CACtC,IAAG02I,EAAI/jJ,EAAEQ,EAAIglG,EAAIxlG,EAAEQ,EAAGujJ,EAAI/jJ,EAAEQ,EAAIglG,EAAIxlG,EAAEQ,CACtC,IAAGujJ,EAAI5kJ,EAAEkO,EAAIm4F,EAAIrmG,EAAEkO,EAAG02I,EAAI5kJ,EAAEkO,EAAIm4F,EAAIrmG,EAAEkO,CACtC,IAAG02I,EAAI5kJ,EAAEqB,EAAIglG,EAAIrmG,EAAEqB,EAAGujJ,EAAI5kJ,EAAEqB,EAAIglG,EAAIrmG,EAAEqB,CACtC6+B,GAAG,QAAUrB,GAAa+lH,EAC1B,OAAO1kH,GAGR,GAAI7hC,KACH0/B,WAAYA,GACZC,WAAYA,GACZL,YAAaA,GACbkB,aAAcA,GACdP,WAAYA,GACZH,WAAYA,GACZO,WAAYA,GACZC,YAAaA,GACbC,aAAcA,GACdY,YAAaA,GACbO,cAAeA,GACfyjH,eAAgBA,GAChBjc,cAAeA,GACfzmG,aAAcA,GACd+iH,cAAeA,GACfgB,eAAgB1c,GAChBC,cAAeA,GACfqZ,aAAcA,GACdD,aAAcA,GACd3tF,cAAeA,GACfyzE,cAAeA,GACfgc,kBAAmBA,GACnBwB,0BAA2BjxF,GAC3BkxF,eAAgBjB,GAChB1c,SAAUA,GACVj/D,kBAAmBA,GACnBg8E,0BAA2BA,GAC3BE,uBAAwBA,GACxBC,mBAAoBA,GACpBC,uBAAwBA,GACxBC,iBAAkBA,GAClBC,wBAAyBA,GACzBplI,QACC2lI,cAAe,EACfC,aAAc,EACdC,kBAAmB,GAIrB,IAAIC,GACJ,SAASC,IAAahvI,GAAK+uI,GAAY/uI,EAEvC,QAASivI,IAAiB1lH,EAAOn2B,GAChC,GAAI87I,GAASH,IACb,IAAInoJ,GAAIwM,GAAQ,QAAYA,CAC5B,IAAGm2B,GAAS,MAAQA,EAAM,SAAW,KAAM,CAAE2lH,EAAO9iJ,KAAK,KAAO,OAAO8iJ,GACvE,GAAIp3I,GAAIkxB,GAAkBO,EAAM,QAChC,IAAIy+B,GAAKphE,EAAEohE,KAAOz+D,UAAY3C,EAAEohE,GAAK,IAAK9lD,EAAK8lD,EAAGhhE,WAAW,EAC7D,IAAIo/D,GAAKx/D,EAAEw/D,KAAO78D,UAAY3C,EAAEw/D,GAAK,KAAMyM,EAAKzM,EAAGp/D,WAAW,EAC9D,IAAIgmJ,GAAW,GAAI1vI,SAAQ0qD,GAAI,IAAM,MAAQA,GAAI,KACjD,IAAIj1C,GAAM,GAAI4qC,IACd/2D,GAAEijC,MAAQx/B,MAAMW,QAAQu+B,EACxB,IAAIq6B,GAAUh9D,EAAE8lJ,YAAcnjH,EAAM,YACpC,IAAIo6B,GAAU/8D,EAAE8lJ,YAAcnjH,EAAM,YACpC,KAAI,GAAI9pB,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,KAAOmkD,EAAQnkD,QAAc,OAAGk+C,EAAKl+C,GAAKkoB,GAAWloB,EACzF,IAAIO,GAAIlI,EAAErN,EAAEqN,CACZ,IAAIq3I,GAAM,MAAO/5I,EAAI,CACrB85I,GAAOE,MAAQ,WACd,IAAID,EAAK,CAAEA,EAAM,IAAM,OAAOD,GAAO9iJ,KAAK,UAC1C,MAAM4T,GAAKlI,EAAElO,EAAEkO,EAAG,GACfkI,CACF,KAAK2jD,EAAQ3jD,EAAE,QAAQutC,OAAQ,QAC/Bx6B,GAAM85H,GAAatjH,EAAOzxB,EAAGkI,EAAE,EAAG29C,EAAMz7C,EAAI2wD,EAAI7K,EAAIphE,EACpD,IAAGmsB,GAAO,KAAM,CACf,GAAGnsB,EAAEqmJ,MAAOl6H,EAAMA,EAAI3pB,QAAQ4jJ,EAAS,GACvC,IAAGj6H,GAAQnsB,EAAE+lJ,YAAc,MAAQ,MAAOuC,GAAO9iJ,MAAMgJ,IAAMgxD,EAAK,IAAMrzC,IAG1E,MAAOm8H,GAAO9iJ,KAAK,MAEpB,OAAO8iJ,GAGR,QAASG,IAAkBvlH,EAAI12B,GAC9B,GAAI87I,GAASH,IAEb,IAAInoJ,GAAIwM,KACR,IAAIgQ,GAASxc,EAAEwc,QAAU,KAAOxc,EAAEwc,OAAS0tH,EAC3C,IAAI73E,GAASryD,EAAEqyD,QAAU,KAAOryD,EAAEqyD,OAAS83E,EAC3Cme,GAAO9iJ,KAAKgX,EACZ,IAAItL,GAAI0wB,GAAasB,EAAG,QACxBljC,GAAEijC,MAAQx/B,MAAMW,QAAQ8+B,EACxBolH,GAAO9iJ,KAAK6kI,GAAmBnnG,EAAIhyB,EAAGlR,GACtC,IAAIoZ,GAAIlI,EAAErN,EAAEqN,CACZ,IAAIsa,GAAM,KACV88H,GAAOE,MAAQ,WACd,GAAGpvI,EAAIlI,EAAElO,EAAEkO,EAAG,CACb,IAAIsa,EAAK,CAAEA,EAAM,IAAM88H,GAAO9iJ,KAAK,WAAa6sD,GAChD,MAAOi2F,GAAO9iJ,KAAK,MAEpB,MAAM4T,GAAKlI,EAAElO,EAAEkO,EAAG,CACjBo3I,EAAO9iJ,KAAKwkI,GAAc9mG,EAAIhyB,EAAGkI,EAAGpZ,MAClCoZ,CACF,QAGF,OAAOkvI,GAGR,QAASI,IAAkB/lH,EAAOn2B,GACjC,GAAI87I,GAASH,IAAWQ,WAAW,MAEnC,IAAGhmH,GAAS,MAAQA,EAAM,SAAW,KAAM,CAAE2lH,EAAO9iJ,KAAK,KAAO,OAAO8iJ,GACvE,GAAI94I,IAAO1J,EAAE,IAAID,EAAE,GAAI2W,EAAS,EAAGwD,EAAS,EAAG6+B,KAAUh5C,EAAE,EAAGuO,EAAG,EACjE,IAAIlD,IAAKrN,GAAGqN,EAAE,EAAE7M,EAAE,GAAGrB,GAAGkO,EAAE,EAAE7M,EAAE,GAC9B,IAAIrE,GAAIwM,KACR,IAAIi0B,GAAQzgC,EAAEygC,OAAS,KAAOzgC,EAAEygC,MAAQkC,EAAM,OAC9C,IAAG3iC,EAAEwc,SAAW,EAAGA,EAAS,MACvB,IAAGxc,EAAEwc,SAAW,IAAKA,EAAS,MAC9B,IAAG/Y,MAAMW,QAAQpE,EAAEwc,QAASA,EAAS,CAC1C,cAAcikB,IACb,IAAK,SAAUvvB,EAAIkxB,GAAkB3B,EAAQ,OAC7C,IAAK,SAAUvvB,EAAIkxB,GAAkBO,EAAM,QAAUzxB,GAAErN,EAAEqN,EAAIuvB,CAAO,OACpE,QAASvvB,EAAIuvB,GAEd,GAAGjkB,EAAS,EAAGwD,EAAS,CACxB,IAAIzO,GAAKyvB,GAAW9vB,EAAErN,EAAEqN,EACxB,IAAI6lD,KACJ,IAAI6uF,GAAU,CACd,IAAI3iH,GAAQx/B,MAAMW,QAAQu+B,EAC1B,IAAIvpB,GAAIlI,EAAErN,EAAEqN,EAAG2H,EAAI,CACnB,IAAIgtI,KACJ,IAAG5iH,IAAUN,EAAMvpB,GAAIupB,EAAMvpB,KAC7B,IAAI4jD,GAAUh9D,EAAE8lJ,YAAcnjH,EAAM,YACpC,IAAIo6B,GAAU/8D,EAAE8lJ,YAAcnjH,EAAM,YACpC,KAAI9pB,EAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CAC/B,IAAKmkD,EAAQnkD,QAAc,OAAG,QAC9Bk+C,GAAKl+C,GAAKkoB,GAAWloB,EACrBrJ,GAAMyzB,EAAQN,EAAMvpB,GAAGP,GAAK8pB,EAAMo0B,EAAKl+C,GAAKtH,EAC5C,QAAOiL,GACN,IAAK,GAAGqiC,EAAIhmC,GAAKA,EAAI3H,EAAErN,EAAEQ,CAAG,OAC5B,IAAK,GAAGw6C,EAAIhmC,GAAKk+C,EAAKl+C,EAAI,OAC1B,IAAK,GAAGgmC,EAAIhmC,GAAK7Y,EAAEwc,OAAO3D,EAAI3H,EAAErN,EAAEQ,EAAI,OACtC,QACC,GAAGmL,GAAO,KAAMA,GAAOhB,EAAG,UAAW1I,EAAG,IACxCsO,GAAKvO,EAAI28B,GAAYhzB,EAAK,KAAMxP,EAChC4lJ,GAAUC,EAAWhgJ,IAAM,CAC3B,KAAI+/I,EAASC,EAAWhgJ,GAAK,MACxB,CACJ,EAAG,CAAEuO,EAAKvO,EAAI,IAAO+/I,UAAoBC,EAAWzxI,GAAMyxI,GAAWhgJ,GAAK+/I,CAC1EC,GAAWzxI,GAAM,EAElByqC,EAAIhmC,GAAKzE,IAGZgF,EAAIlI,EAAErN,EAAEqN,EAAI8O,CACZsoI,GAAOE,MAAQ,WACd,MAAMpvI,GAAKlI,EAAElO,EAAEkO,EAAG,CACjB,IAAK6rD,EAAQ3jD,EAAE,QAAQutC,OAAQ,QAC/B,IAAIx6B,GAAMi5H,GAAcziH,EAAOzxB,EAAGkI,EAAG29C,EAAMv6C,EAAQqiC,EAAK5b,EAAOjjC,KAC7DoZ,CACF,IAAI+S,EAAIm5H,UAAY,QAAW9oI,IAAW,EAAIxc,EAAE+lJ,YAAc,QAAU/lJ,EAAE+lJ,WAAY,CACrFuC,EAAO9iJ,KAAK2mB,EAAIA,IAChB,SAGF,MAAOm8H,GAAO9iJ,KAAK,MAEpB,OAAO8iJ,GAGR,GAAIM,KACHC,QAASH,GACTI,QAASL,GACTM,OAAQV,GACRD,aAAcA,GAEf,UAAUhiC,MAAiB,YAAaxoH,EAAKwoH,aAAeA,EAC5DxoH,GAAKge,UAAYA,EACjBhe,GAAKwiB,KAAOwgI,EACZhjJ,GAAKorJ,SAAW7oI,EAChBviB,GAAKuiB,aAAeA,EACpBviB,GAAK4lB,MAAQ+gI,EACb3mJ,GAAKyvB,UAAY9J,EACjB3lB,GAAK2lB,cAAgBA,EACrB3lB,GAAKqnJ,eAAiBA,EACtBrnJ,GAAKyD,MAAQA,EACbzD,GAAKqrJ,UAAY3E,EACjB1mJ,GAAKsrJ,cAAgBlE,EACrBpnJ,GAAK8X,IAAMA,EACX,UAAUkzI,MAAa,YAAahrJ,EAAK0qJ,OAASM,EAClD,UAAU5vI,MAAQ,YAAapb,EAAKob,IAAMA,EAC1C,UAAUkoB,WAAY,YAAa,CACjC,GAAIioH,IAASxmJ,SACb,KAAIwmJ,QAAYC,SAAUhB,GAAae,GAAOC,SAC/C,KAAM5tI,GAAM7Y,UAAa,MAAMK,OAIhC,SAAUkW,WAAY,YAAarb,cAAcqb,aAC5C,UAAU+nB,UAAW,aAAeA,OAAO/nB,QAASrb,cAAcojC,OAAO/nB,aACzE,UAAUmwI,UAAW,YAAcA,OAAOC,IAAKD,OAAO,OAAQ,WAAa,IAAIzrJ,KAAKE,QAASD,cAAcD,KAAO,OAAOA,YACzHC,eAAcD,KAEnB,UAAU2rJ,UAAW,cAAgBA,OAAO3rJ,KAAM,IAAM2rJ,OAAO3rJ,KAAOA,KAAQ,MAAMoF","file":"dist/xlsx.core.min.js"} \ No newline at end of file +{"version":3,"sources":["dist/xlsx.js"],"names":["XLSX","make_xlsx_lib","version","current_codepage","current_ansi","$cptable","VALID_ANSI","CS2CP","0","1","2","77","128","129","130","134","136","161","162","163","177","178","186","204","222","238","255","69","set_ansi","cp","indexOf","reset_ansi","set_cp","reset_cp","char_codes","data","o","i","len","length","charCodeAt","utf16leread","String","fromCharCode","join","utf16beread","debom","c1","c2","slice","_getchar","_gc1","x","_getansi","_ga1","set_cptable","cptable","utils","decode","_gc2","_ga2","cpdoit","DENSE","DIF_XL","Base64_map","Base64_encode","input","c3","e1","e2","e3","e4","isNaN","charAt","Base64_encode_pass","Base64_decode","replace","has_buf","Buffer","undefined","node","Buffer_from","nbfs","from","e","buf","enc","bind","buf_utf16le","toString","new_raw_buf","alloc","Uint8Array","Array","new_unsafe_buf","allocUnsafe","s2a","s","split","map","s2ab","ArrayBuffer","view","a2s","isArray","c","a2u","Error","ab2a","bconcat","bufs","concat","isBuffer","maxlen","set","apply","call","utf8decode","content","out","widx","L","ridx","d","push","chr0","chr1","_strrev","pad0","v","t","fill","pad_","rpad_","pad0r1","Math","round","pad0r2","p2_32","pow","pad0r","SSF_isgeneral","days","months","SSF_init_table","table_fmt","3","4","9","10","11","12","13","14","15","16","17","18","19","20","21","22","37","38","39","40","45","46","47","48","49","56","SSF_default_map","5","6","7","8","23","24","25","26","27","28","29","30","31","50","51","52","53","54","55","57","58","59","60","61","62","67","68","70","71","72","73","74","75","76","78","79","80","81","82","SSF_default_str","63","64","65","66","41","42","43","44","SSF_frac","D","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","floor","q","SSF_parse_date_code","opts","b2","date","time","dow","dout","T","u","y","m","H","M","S","abs","date1904","Date","setDate","getDate","getFullYear","getMonth","getDay","SSF_fix_hijri","SSFbasedate","SSFdnthresh","getTime","SSFbase1904","datenum_local","epoch","getTimezoneOffset","SSF_strip_decimal","SSF_normalize_exp","SSF_small_exp","w","toFixed","toPrecision","toExponential","SSF_large_exp","SSF_general_num","V","log","LOG10E","substr","toUpperCase","SSF_general","SSF_format","SSF_write_date","type","fmt","val","ss0","ss","tt","outl","outstr","commaify","j","pct1","write_num_pct","sfmt","mul","write_num","write_num_cm","idx","write_num_exp","match","period","ee","fakee","$$","$1","$2","$3","frac1","write_num_f1","r","aval","sign","den","parseInt","rr","base","myn","myd","write_num_f2","dec1","closeparen","phone","hashq","str","cc","rnd","dd","dec","_frac","carry","flr","write_num_flt","ffmt","ri","ff","oa","min","max","lres","rres","write_num_cm2","write_num_pct2","write_num_exp2","write_num_int","lastIndexOf","SSF_split_fmt","in_str","SSF_abstime","fmt_is_date","eval_fmt","flen","lst","dt","hr","toLowerCase","bt","ssm","nstr","jj","vv","myv","ostr","decpt","lasti","retval","cfregex2","chkcond","thresh","parseFloat","choose_fmt","f","l","lat","m1","m2","dateNF","table","SSF_load","SSF_load_table","tbl","make_ssf","SSF","format","load","_table","load_table","parse_date_code","is_date","get_table","SSFImplicit","32","33","34","35","36","dateNFregex","dateNF_regex","RegExp","dateNF_fix","Y","forEach","n","datestr","timestr","bad_formats","d.m","SSF__load","CRC32","signed_crc_table","Int32Array","T0","slice_by_16_tables","subarray","TT","T1","T2","T3","T4","T5","T6","T7","T8","T9","Ta","Tb","Tc","Td","Te","Tf","crc32_bstr","bstr","seed","C","crc32_buf","crc32_str","CFB","_CFB","exports","namecmp","R","Z","dirname","p","filename","write_dos_date","hms","getHours","getMinutes","getSeconds","write_shift","ymd","parse_dos_date","read_shift","setMilliseconds","setFullYear","setMonth","setHours","setMinutes","setSeconds","parse_extra_field","blob","prep_blob","flags","sz","tgt","mtime","atime","ctime","mt","sz1","sz2","usz","csz","fs","get_fs","_fs","parse","file","options","parse_zip","parse_mad","mver","ssz","nmfs","difat_sec_cnt","dir_start","minifat_start","difat_start","fat_addrs","mv","check_get_mver","header","check_shifts","dir_cnt","chk","sectors","sectorify","sleuth_fat","sector_list","make_sector_list","name","ENDOFCHAIN","files","Paths","FileIndex","FullPaths","read_directory","build_full_paths","shift","raw","HEADER_SIGNATURE","nsectors","ceil","FI","FP","pl","dad","get_mfat_entry","entry","payload","mini","start","size","MSSZ","__readInt32LE","new_buf","cnt","sector","get_sector_list","chkd","buf_chain","modulus","addr","nodes","__toBuffer","sl","k","seen","minifat_store","namelen","__utf16le","color","clsid","state","ct","read_date","storage","offset","__readUInt32LE","read_file","readFileSync","read","init_cfb","cfb","root","CLSID","seed_cfb","nm","find","rebuild_cfb","gc","_file","pop","now","fullPaths","Object","create","HEADER_CLSID","sort","elt","_write","_opts","fileType","write_mad","write_zip","mini_size","fat_size","mini_cnt","mfat_cnt","fat_base","fat_cnt","difat_cnt","HEADER_SIG","chainit","consts","DIFSECT","FATSECT","_nm","console","error","copy","path","UCFullPaths","UCPaths","UCPath","MAXREGSECT","FREESECT","HEADER_MINOR_VERSION","MAXREGSID","NOSTREAM","EntryTypes","write_file","writeFileSync","write","_zlib","use_zlib","zlib","InflateRaw","InflRaw","_processChunk","_finishFlushFlag","bytesRead","message","_inflateRawSync","_inflate","_deflateRawSync","deflateRawSync","_deflate","CLEN_ORDER","LEN_LN","DST_LN","bit_swap_8","use_typed_arrays","bitswap8","bit_swap_n","b","rev","read_bits_2","bl","h","read_bits_3","read_bits_4","read_bits_5","read_bits_7","read_bits_n","write_bits_3","write_bits_1","write_bits_8","write_bits_16","realloc","a","zero_fill_array","build_tree","clens","cmap","MAX","ccode","bl_count","Uint16Array","ctree","cleni","fix_lmap","fix_dmap","dlens","_deflateRaw","_deflateRawIIFE","DST_LN_RE","LEN_LN_RE","write_stored","boff","write_huff_fixed","addrs","hash","mlen","len_eb","dst_eb","off","dyn_lmap","dyn_dmap","dyn_cmap","dyn_len_1","dyn_len_2","dyn","_HLIT","_HDIST","_HCLEN","next_code","hcodes","h1","h2","inflate","outbuf","woff","OL","max_len_1","max_len_2","bits","code","dst","warn_or_throw","wrn","msg","fcnt","start_cd","efsz","fcsz","EF","parse_local_file","meth","crc32","_csz","_usz","ef","cfb_add","unsafe","cdirs","method","compression","desc","fp","fi","crcs","sz_cd","namebuf","ContentTypeMap","htm","xml","gif","jpg","png","mso","thmx","sh33tj5","get_content_type","ctype","ext","write_base64_76","write_quoted_printable","text","encoded","si","end","tmp","parse_quoted_printable","di","line","oi","parse_mime","fname","cte","fdata","trim","row","test","mboundary","boundary","start_di","ca","cstr","dispcnt","csl","qp","cfb_new","fpath","cfb_gc","cfb_del","splice","cfb_mov","old_name","new_name","writeFile","ReadShift","CheckField","_inflateRaw","set_fs","blobify","write_dl","Deno","TextEncoder","encode","utf8write","IE_SaveFile","Blob","navigator","msSaveBlob","saveAs","URL","document","createElement","createObjectURL","url","chrome","downloads","download","revokeObjectURL","setTimeout","href","body","appendChild","click","removeChild","$","File","Folder","open","encoding","close","read_binary","infile","keys","ks","o2","prototype","hasOwnProperty","evert_key","obj","key","K","evert","evert_num","evert_arr","basedate","datenum","dnthresh","refdate","refoffset","numdate","setTime","parse_isodur","sec","good_pd_date_1","good_pd_date","good_pd","parseDate","fixdate","cc2str","arr","debomit","TextDecoder","€","‚","ƒ","„","…","†","‡","ˆ","‰","Š","‹","Œ","Ž","‘","’","“","”","•","–","—","˜","™","š","›","œ","ž","Ÿ","dup","JSON","stringify","fuzzynum","Number","isFinite","NaN","wt","FDRE1","fuzzytime1","lower_months","fuzzydate","lower","lnos","getYear","split_regex","safe_split_regex","re","def","getdatastr","asNodeBuffer","asBinary","_data","getContent","getdatabin","getdata","safegetzipfile","zip","g","getzipfile","getzipdata","safe","getzipstr","getzipbin","zipentries","zip_add_file","res","zip_new","zip_read","resolve_path","result","target","step","XML_HEADER","attregexg","tagregex1","tagregex2","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","skip_LC","z","eq","quot","strip_ns","encodings",""","'",">","<","&","rencoding","unescapexml","encregex","coderegex","raw_unescapexml","xlsx","decregex","charegex","escapexml","escapexmltag","htmlcharegex","escapehtml","escapexlml","xlml_fixstr","entregex","entrepl","xlml_unfixstr","parsexmlbool","value","utf8reada","orig","utf8readb","ww","utf8readc","utf8corpus","utf8read","matchtag","mtcache","htmldecode","entities","vtregex","vt_cache","vt_regex","vtvregex","vtmregex","parseVector","matches","baseType","WTF","wtregex","writetag","wxt_helper","writextag","write_w3cdtf","toISOString","write_vt","xlml_normalize","xlmlregex","XMLNS","CORE_PROPS","CUST_PROPS","EXT_PROPS","CT","RELS","TCMNT","dc","dcterms","dcmitype","mx","sjs","vt","xsi","xsd","XMLNS_main","XLMLNS","html","read_double_le","Infinity","write_double_le","bs","av","LN2","___toBuffer","___utf16le","__readUInt16LE","___hexlify","__hexlify","___utf8","__readUInt8","__utf8","utf8_b","___lpstr","__lpstr","___cpstr","__cpstr","___lpwstr","__lpwstr","___lpp4","lpp4_","__lpp4","___8lpp4","__8lpp4","___double","__double","is_buf","is_buf_a","lpstr_b","readUInt32LE","cpstr_b","lpwstr_b","lpp4_b","lpp4_8b","double_","readDoubleLE","is_buf_b","__readInt16LE","__readInt32BE","oI","oR","oo","loc","this","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cpp","hexstr","fld","pos","parsenoop","recordhopper","cb","tmpbyte","cntbyte","RT","XLSBRecordEnum","buf_array","blksz","newblk","ba_newblk","curbuf","endbuf","ba_endbuf","next","ba_next","ba_end","ba_push","_bufs","write_record","ba","shift_cell_xls","cell","cRel","rRel","biff","shift_range_xls","range","encode_cell_xls","encode_cell","fix_col","fix_row","encode_range_xls","encode_col","encode_row","module","require","decode_row","rowstr","unfix_row","decode_col","colstr","unfix_col","col","split_cell","decode_cell","decode_range","encode_range","cs","ce","fix_range","a1","formula_quote_sheet_name","sname","safe_decode_range","safe_format_cell","XF","numFmtId","format_cell","BErr","sheet_to_workbook","sheet","sheets","SheetNames","Sheets","sheet_add_aoa","_ws","dense","ws","_R","_C","origin","_origin","_range","__R","__Rstr","__C","nullError","sheetStubs","cellDates","cell_ref","aoa_to_sheet","parse_Int32LE","write_UInt32LE","parse_XLWideString","cchCharacters","write_XLWideString","_null","parse_StrRun","ich","ifnt","write_StrRun","run","parse_RichStr","rgsStrRun","dwSizeStrRun","write_RichStr","parse_BrtCommentText","write_BrtCommentText","parse_XLSBCell","iStyleRef","write_XLSBCell","parse_XLSBShortCell","write_XLSBShortCell","parse_XLSBCodeName","write_XLSBCodeName","parse_XLNullableWideString","write_XLNullableWideString","parse_XLNameWideString","parse_RelID","write_RelID","parse_RkNumber","fX100","fInt","RK","write_RkNumber","d100","parse_RfX","write_RfX","parse_UncheckedRfX","write_UncheckedRfX","parse_Xnum","write_Xnum","parse_BrtColor","xColorType","index","nTS","bR","bG","bB","auto","icv","XLSIcv","rgb","rgb2Hex","theme","tint","write_BrtColor","parse_FontFlags","fBold","fItalic","fUnderline","fStrikeout","fOutline","fShadow","fCondense","fExtend","write_FontFlags","font","grbit","italic","strike","outline","shadow","condense","extend","parse_ClipboardFormatOrString","ClipFmt","parse_ClipboardFormatOrAnsiString","parse_ClipboardFormatOrUnicodeString","VT_I2","VT_I4","VT_BOOL","VT_VARIANT","VT_UI4","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR_VARIANT","VT_VECTOR_LPSTR","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","2147483648","2147483651","1919054434","SummaryPIDSI","CountryEnum","84","86","90","105","213","216","218","351","354","358","420","886","961","962","963","964","965","966","971","972","974","981","65535","XLSFillPattern","rgbify","_XLSIcv","RBErr","#NULL!","#DIV/0!","#VALUE!","#REF!","#NAME?","#NUM!","#N/A","#GETTING_DATA","#WTF?","XLSLblBuiltIn","ct2type","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml","application/vnd.ms-excel.sheet.macroEnabled.main+xml","application/vnd.ms-excel.sheet.binary.macroEnabled.main","application/vnd.ms-excel.addin.macroEnabled.main+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml","application/vnd.ms-excel.worksheet","application/vnd.ms-excel.binIndexWs","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml","application/vnd.ms-excel.chartsheet","application/vnd.ms-excel.macrosheet+xml","application/vnd.ms-excel.macrosheet","application/vnd.ms-excel.intlmacrosheet","application/vnd.ms-excel.binIndexMs","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml","application/vnd.ms-excel.dialogsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml","application/vnd.ms-excel.sharedStrings","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml","application/vnd.ms-excel.styles","application/vnd.openxmlformats-package.core-properties+xml","application/vnd.openxmlformats-officedocument.custom-properties+xml","application/vnd.openxmlformats-officedocument.extended-properties+xml","application/vnd.openxmlformats-officedocument.customXmlProperties+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml","application/vnd.ms-excel.comments","application/vnd.ms-excel.threadedcomments+xml","application/vnd.ms-excel.person+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml","application/vnd.ms-excel.sheetMetadata","application/vnd.ms-excel.pivotTable","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml","application/vnd.openxmlformats-officedocument.drawingml.chart+xml","application/vnd.ms-office.chartcolorstyle+xml","application/vnd.ms-office.chartstyle+xml","application/vnd.ms-office.chartex+xml","application/vnd.ms-excel.calcChain","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings","application/vnd.ms-office.activeX","application/vnd.ms-office.activeX+xml","application/vnd.ms-excel.attachedToolbars","application/vnd.ms-excel.connections","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml","application/vnd.ms-excel.externalLink","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml","application/vnd.ms-excel.pivotCacheDefinition","application/vnd.ms-excel.pivotCacheRecords","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml","application/vnd.ms-excel.queryTable","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml","application/vnd.ms-excel.userNames","application/vnd.ms-excel.revisionHeaders","application/vnd.ms-excel.revisionLog","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml","application/vnd.ms-excel.tableSingleCells","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml","application/vnd.ms-excel.slicer","application/vnd.ms-excel.slicerCache","application/vnd.ms-excel.slicer+xml","application/vnd.ms-excel.slicerCache+xml","application/vnd.ms-excel.wsSortMap","application/vnd.ms-excel.table","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml","application/vnd.openxmlformats-officedocument.theme+xml","application/vnd.openxmlformats-officedocument.themeOverride+xml","application/vnd.ms-excel.Timeline+xml","application/vnd.ms-excel.TimelineCache+xml","application/vnd.ms-office.vbaProject","application/vnd.ms-office.vbaProjectSignature","application/vnd.ms-office.volatileDependencies","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml","application/vnd.ms-excel.controlproperties+xml","application/vnd.openxmlformats-officedocument.model+data","application/vnd.ms-excel.Survey+xml","application/vnd.openxmlformats-officedocument.drawing+xml","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml","application/vnd.openxmlformats-officedocument.vmlDrawing","application/vnd.openxmlformats-package.relationships+xml","application/vnd.openxmlformats-officedocument.oleObject","image/png","CT_LIST","workbooks","xlsm","xlsb","xlam","xltx","strs","comments","charts","dialogs","macros","metadata","styles","new_ct","rels","threadedcomments","links","coreprops","extprops","custprops","themes","calcchains","vba","drawings","people","TODO","xmlns","parse_ct","ctext","Extension","ContentType","PartName","calcchain","sst","style","defaults","write_ct","type2ct","xmlns:xsd","xmlns:xsi","f1","bookType","f2","f3","WB","SHEET","HLINK","VML","XPATH","XMISS","XLINK","CXML","CXMLP","CMNT","SST","STY","THEME","CHART","CHARTEX","CS","WS","DS","MS","IMG","DRAW","XLMETA","PEOPLE","CONN","VBA","get_rels_path","parse_rels","currentFilePath","!id","rel","Type","Target","Id","TargetMode","canonictarget","write_rels","rid","add_rels","rId","relobj","targetmode","CT_ODS","parse_manifest","Rn","FEtag","exec","write_manifest","manifest","write_rdf_type","write_rdf_has","write_rdf","rdf","write_meta_ods","CORE_PROPS_REGEX","parse_core_props","cur","cp_doit","write_core_props","xmlns:cp","xmlns:dc","xmlns:dcterms","xmlns:dcmitype","Props","CreatedDate","xsi:type","ModifiedDate","PseudoPropsPairs","load_props_pairs","HP","TOP","props","hp","parts","Worksheets","NamedRanges","DefinedNames","Chartsheets","ChartNames","parse_ext_props","HeadingPairs","TitlesOfParts","write_ext_props","W","Application","xmlns:vt","custregex","parse_cust_props","toks","warn","write_cust_props","pid","custprop","fmtid","XLMLDocPropsMap","Title","Subject","Author","Keywords","Comments","LastAuthor","RevNumber","LastPrinted","Category","Manager","Company","AppVersion","ContentStatus","Identifier","Language","evert_XLMLDPM","xlml_set_prop","xlml_write_docprops","xlml_write_custprops","Custprops","BLACKLIST","dt:dt","parse_FILETIME","dwLowDateTime","dwHighDateTime","write_FILETIME","parse_lpstr","pad","parse_lpwstr","parse_VtStringBase","stringType","parse_VtString","parse_VtUnalignedString","parse_VtVecLpwstrValue","ret","parse_VtVecUnalignedLpstrValue","parse_VtHeadingPair","headingString","parse_TypedPropertyValue","headerParts","parse_VtVecHeadingPairValue","cElements","parse_dictionary","CodePage","dict","parse_BLOB","bytes","parse_ClipboardData","Size","write_TypedPropertyValue","parse_PropertySet","PIDSI","start_addr","NumProps","Dictionary","DictObj","PropID","Offset","PropH","fail","piddsi","oldpos","parsebool","XLSPSSkip","guess_property_type","write_PropertySet","entries","RE","hdr","piao","prop","pr","pio","unshift","pinfo","parse_PropertySetStream","NumSets","FMTID0","FMTID1","Offset0","Offset1","SystemIdentifier","PSet0","rval","FMTID","PSet1","write_PropertySetStream","entries2","clsid2","ps0","ps1","parsenoop2","writezeroes","parslurp","writebool","parseuint16","writeuint16","parseuint16a","parse_Bes","write_Bes","parse_ShortXLUnicodeString","cch","fHighByte","parse_XLUnicodeRichExtendedString","fExtSt","fRichSt","width","cRun","cbExtRst","write_XLUnicodeRichExtendedString","xlstr","nfmts","otext","parse_XLUnicodeStringNoCch","parse_XLUnicodeString","parse_XLUnicodeString2","write_XLUnicodeString","parse_ControlInfo","accel","parse_URLMoniker","extra","parse_FileMoniker","cAnti","preamble","ansiPath","unicodePath","parse_HyperlinkMoniker","parse_HyperlinkString","write_HyperlinkString","parse_Hyperlink","sVer","displayName","targetFrameName","moniker","oleMoniker","Loc","guid","fileTime","Tooltip","write_Hyperlink","hl","hashidx","F","Pretarget","parse_LongRGBA","parse_LongRGB","parse_XLSCell","rw","ixfe","write_XLSCell","parse_frtHeader","rt","parse_OptXLUnicodeString","parse_XTI","iSupBook","itabFirst","itabLast","parse_RkRec","parse_AddinUdf","udfName","parse_Ref8U","rwFirst","rwLast","colFirst","colLast","write_Ref8U","parse_RefU","parse_Ref","parse_FtCmo","ot","id","parse_FtNts","fSharedNote","parse_FtCf","cf","parse_FtSkip","FtTab","parse_FtArray","fts","ft","parse_BOF","BIFFVer","write_BOF","wb","parse_InterfaceHdr","parse_WriteAccess","UserName","write_WriteAccess","b8","parse_WsBool","fDialog","fBelow","fRight","parse_BoundSheet8","hidden","hs","write_BoundSheet8","parse_SST","ucnt","Count","Unique","write_SST","parse_ExtSST","extsst","dsst","parse_Row","miyRw","level","hpt","parse_ForceFullCalculation","fullcalc","parse_RecalcId","parse_DefaultRowHeight","fl","Unsynced","DyZero","ExAsc","ExDsc","parse_Window1","xWn","yWn","dxWn","dyWn","iTabCur","iTabFirst","ctabSel","wTabRatio","Pos","Dim","Flags","CurTab","FirstTab","Selected","TabRatio","write_Window1","parse_Window2","RTL","write_Window2","parse_Pane","parse_Font","dyHeight","write_Font","b5","parse_LabelSst","isst","write_LabelSst","os","parse_Label","biffguess","write_Label","parse_Format","fmtstr","write_Format","parse_BIFF2Format","parse_Dimensions","write_Dimensions","parse_RK","rkrec","rknum","parse_MulRk","rkrecs","lastcol","parse_MulBlank","ixfes","parse_CellStyleXF","patternType","cellStyles","alc","fWrap","alcV","fJustLast","trot","cIndent","fShrinkToFit","iReadOrder","fAtrNum","fAtrFnt","fAtrAlc","fAtrBdr","fAtrPat","fAtrProt","dgLeft","dgRight","dgTop","dgBottom","icvLeft","icvRight","grbitDiag","icvTop","icvBottom","icvDiag","dgDiag","icvFore","icvBack","fsxButton","parse_XF","fStyle","write_XF","ixfeP","parse_Guts","write_Guts","guts","parse_BoolErr","write_BoolErr","parse_Number","xnum","write_Number","parse_XLHeaderFooter","parse_SupBook","ctab","sbcch","virtPath","rgst","parse_ExternName","fBuiltIn","fWantAdvise","fWantPict","fOle","fOleLink","fIcon","Name","parse_Lbl","chKey","cce","itab","npflen","rgce","parse_NameParsedFormula","parse_ExternSheet","parse_BIFF5ExternSheet","parse_NameCmt","cchName","cchComment","comment","parse_ShrFmla","ref","cUse","parse_SharedParsedFormula","parse_Array","parse_ArrayParsedFormula","parse_MTRSettings","fMTREnabled","fUserSetThreadCount","cUserThreadCount","parse_NoteSh","idObj","stAuthor","parse_Note","parse_MergeCells","merges","cmcs","write_MergeCells","parse_Obj","parse_BIFF5Obj","cmo","parse_BIFF5OT","parse_TxO","texts","lastobj","controlInfo","cchText","parse_HLink","hlink","write_HLink","O","parse_HLinkTooltip","wzTooltip","write_HLinkTooltip","parse_Country","write_Country","parse_ClrtClient","ccv","parse_Palette","parse_XFCRC","cxfs","crc","parse_ColInfo","coldx","write_ColInfo","parse_Setup","footer","parse_ShtProps","area","write_RRTabId","parse_Blank","parse_Scl","parse_String","parse_ImData","env","lcb","parse_BIFF2STR","parse_BIFF2NUM","num","write_BIFF2NUM","write_BIFF2Cell","parse_BIFF2INT","write_BIFF2INT","parse_BIFF2STRING","parse_BIFF2FONTXTRA","parse_RString","DBF_SUPPORTED_VERSIONS","DBF","dbf_codepage_map","100","101","102","103","104","106","107","120","121","122","123","124","125","126","150","151","152","200","201","202","203","87","88","89","108","135","dbf_reverse_map","dbf_to_aoa","memo","vfp","l7","nrow","fpos","rlen","current_cp","codepage","fields","field","hend","sheetRows","dbf_to_sheet","wch","dbf_to_workbook","_RLEN","?","","sheet_to_dbf","old_cp","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_l","_s","to_workbook","to_sheet","from_sheet","SYLK","sylk_escapes","AA","BA","CA","DA","HA","JA","AE","BE","CE","HE","AI","BI","CI","HI","AO","BO","CO","DO","HO","AU","BU","CU","HU","Aa","Ba","Ca","Da","Ha","Ja","Ae","Be","Ce","He","Ai","Bi","Ci","Hi","Ao","Bo","Co","Do","Ho","Au","Bu","Cu","Hu","KC","Kc","DN","Dn","Hy","B ","!","\"","#","(","%","'","H ","+",";","<","=",">","{","sylk_char_regex","sylk_char_fn","_","decode_sylk_char","newcc","sylk_to_aoa","sylk_to_aoa_str","records","rj","formats","next_cell_format","sht","rowinfo","colinfo","cw","Mval","Workbook","WBProps","Names","rstr","record","d1904","nn","Sheet","Ref","rc_to_a1","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","cell_t","cellText","shrbase","shift_formula_str","F_seen","hpx","pt2px","process_col","sylk_to_workbook","aoasht","outwb","write_ws_cell_sylk","a1_to_rc","write_ws_cols_sylk","rec","wpx","width2px","px2char","write_ws_rows_sylk","rows","px2pt","sheet_to_sylk","RS","DIF","dif_to_aoa","dif_to_aoa_str","dif_to_sheet","dif_to_workbook","make_value","make_value_str","sheet_to_dif","_DIF_XL","ETH","eth_to_aoa","eth_to_sheet","eth_to_workbook","sep","meta","sheet_to_eth_data","coord","sheet_to_eth","PRN","set_text_arr","prn_to_aoa_str","lines","guess_seps","guess_sep_weights","guess_sep","instr","dsv_to_sheet_str","FS","sepcc","startcc","_re","finish_cell","fuzzyfmla","cellNF","outer","prn_to_sheet_str","prn_to_sheet","firstbyte","prn_to_workbook","sheet_to_prn","read_wb_ID","OLD_WTF","WK_","lotushopper","Enum","WK1Enum","lotus_to_workbook","lotus_to_workbook_buf","next_n","sidx","snames","realnames","sdata","refguess","qpw_to_workbook_buf","vers","qpro","works","works2","tmpcell","WK3Enum","osheets","rnames","!ref","sheet_to_wk1","write_biff_rec","write_BOF_WK1","write_RANGE","max_R","write_INTEGER","write_NUMBER","write_LABEL","book_to_wk3","write_BOF_WK3","write_XFORMAT_SHEETNAME","wsidx","write_NUMBER_17","write_LABEL_16","wscnt","parse_RANGE","parse_cell","parse_LABEL","parse_STRING","parse_INTEGER","parse_NUMBER","parse_FORMULA","wk1_fmla_to_csf","wk1_parse_rc","FuncTab","83","109","111","BinOpTab","argc","argL","argR","args","parse_cell_3","parse_LABEL_16","parse_NUMBER_18","parse_NUMBER_17","v1","v2","log2","parse_FORMULA_19","parse_NUMBER_25","parse_NUMBER_27","parse_FORMULA_28","parse_SHEETNAMECS","parse_SHEETNAMELP","parse_SHEETINFOQP","parse_XFORMAT","142","147","153","154","155","156","174","175","176","184","185","187","188","195","205","206","207","208","256","259","260","261","262","263","265","266","267","268","270","271","384","389","390","393","396","512","514","513","516","517","640","641","642","643","644","645","646","647","648","658","659","660","661","662","665","666","768","772","1537","1600","1602","1793","1794","1795","1796","1920","2048","2049","2052","2688","10998","12849","28233","28484","formulae","book_append_sheet","CC","delta","parse_rpr","rpr","pass","uval","family","valign","parse_rs","tregex","rpregex","parse_r","rregex","rend","rs","filter","rs_to_html","parse_rs_factory","nlregex","parse_rpr2","intro","outro","align","r_to_html","terms","sitregex","sirregex","sirphregex","parse_si","cellHTML","sstr0","sstr1","sstr2","parse_sst_xml","count","uniqueCount","straywsregex","write_sst_xml","bookSST","sitag","parse_BrtBeginSst","parse_sst_bin","hopper_sst","write_BrtBeginSst","write_BrtSSTItem","write_sst_bin","_JS2ANSI","parse_CRYPTOVersion","Major","Minor","parse_DataSpaceVersionInfo","U","parse_DataSpaceMapEntry","comps","parse_DataSpaceMap","parse_DataSpaceDefinition","parse_TransformInfoHeader","parse_Primary","ename","cmode","parse_EncryptionHeader","AlgID","valid","AlgIDHash","KeySize","ProviderType","CSPName","parse_EncryptionVerifier","Salt","Verifier","VerifierHash","parse_EncryptionInfo","parse_EncInfoStd","parse_EncInfoExt","parse_EncInfoAgl","verifier","KeyData","xml_agile","encryptedHmacKey","encryptedHmacValue","encs","uri","parse_RC4CryptoHeader","EncryptionVersionInfo","EncryptionHeader","EncryptionVerifier","parse_RC4Header","EncryptedVerifier","EncryptedVerifierHash","crypto_CreatePasswordVerifier_Method1","Password","PasswordArray","PasswordDecoded","PasswordByte","Intermediate1","Intermediate2","Intermediate3","crypto_CreateXorArray_Method1","PadArray","InitialCode","XorMatrix","Ror","Byte","XorRor","byte1","byte2","CreateXorKey_Method1","XorKey","CurrentElement","Char","password","Index","ObfuscationArray","Temp","PasswordLastChar","PadIndex","crypto_DecryptData_Method1","Data","XorArrayIndex","XorArray","Value","crypto_MakeXorDecryptor","parse_XORObfuscation","verificationBytes","insitu","parse_FilePassHeader","Info","parse_FilePass","rtf_to_sheet","rtf_to_sheet_str","rowtf","rtfre","last_index","lastIndex","rtf_to_workbook","sheet_to_rtf","hex2RGB","rgb2HSL","G","H6","L2","hsl2RGB","hsl","h6","X","rgb_tint","hex","DEF_MDW","MAX_MDW","MIN_MDW","MDW","px","char2width","chr","cycle_width","collw","find_mdw_colw","_MDW","coll","customWidth","DEF_PPI","PPI","pt","XLMLPatternTypeMap","None","Solid","Gray50","Gray75","Gray25","HorzStripe","VertStripe","ReverseDiagStripe","DiagStripe","DiagCross","ThickDiagCross","ThinHorzStripe","ThinVertStripe","ThinReverseDiagStripe","ThinHorzCross","parse_borders","Borders","border","diagonalUp","diagonalDown","parse_fills","Fills","bgColor","indexed","fgColor","parse_fonts","Fonts","bold","underline","vertAlign","scheme","themeElements","clrScheme","parse_numFmts","NumberFmt","formatCode","write_numFmts","NF","cellXF_uint","cellXF_bool","parse_cellXfs","CellXf","xf","alignment","vertical","horizontal","textRotation","indent","wrapText","write_cellXfs","cellXfs","parse_sty_xml","make_pstyx","numFmtRegex","cellXfRegex","fillsRegex","fontsRegex","bordersRegex","write_sty_xml","parse_BrtFmt","stFmtCode","write_BrtFmt","parse_BrtFont","bls","bCharSet","charset","write_BrtFont","sss","XLSBFillPTNames","rev_XLSBFillPTNames","parse_BrtFill","write_BrtFill","fls","parse_BrtXF","ixfeParent","ifmt","write_BrtXF","flow","write_Blxf","parse_BrtBorder","write_BrtBorder","write_BrtStyle","xfId","builtinId","write_BrtBeginTableStyles","defTableStyle","defPivotStyle","parse_sty_bin","hopper_sty","write_FMTS_bin","write_FONTS_bin","write_FILLS_bin","write_BORDERS_bin","write_CELLSTYLEXFS_bin","fontId","fillId","borderId","write_CELLXFS_bin","write_STYLES_bin","write_DXFS_bin","write_TABLESTYLES_bin","write_COLORPALETTE_bin","write_sty_bin","XLSXThemeClrScheme","parse_clrScheme","lastClr","parse_fontScheme","parse_fmtScheme","clrsregex","fntsregex","fmtsregex","parse_themeElements","themeltregex","parse_theme_xml","write_theme","Themes","themeXLSX","parse_Theme","dwThemeVersion","themeXML","parse_ColorTheme","parse_FullColorExt","xclrType","nTintShade","xclrValue","parse_IcvXF","parse_XFExtGradient","parse_ExtProp","extType","parse_XFExt","cexts","update_xfext","xfext","xfe","parse_BrtMdtinfo","write_BrtMdtinfo","parse_BrtMdb","write_BrtMdb","mdb","write_BrtBeginEsfmd","parse_BrtBeginEsmdb","write_BrtBeginEsmdb","cm","parse_xlmeta_bin","Types","Cell","metatype","write_xlmeta_bin","parse_xlmeta_xml","lastmeta","offsets","write_xlmeta_xml","parse_cc_xml","parse_BrtCalcChainItem$","parse_cc_bin","hopper_cc","parse_xlink_xml","parse_xlink_bin","xlink_parse","parse_drawing","write_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","_shapeid","_comments","joinstyle","gradientshapeok","o:connecttype","coordsize","o:spt","write_vml_comment","fillopts","color2","angle","fillparm","fillxml","shadata","on","obscured","fillcolor","strokecolor","sheet_insert_comments","threaded","author","parse_comments_xml","authors","commentList","authtag","cmnttag","authorId","textMatch","write_comments_xml","iauthor","ID","lastauthor","ts","tcnt","parse_tcmnt_xml","tidx","xml_tcmnt","personId","write_tcmnt_xml","carr","rootid","tcopts","tcid","parentId","parse_people_xml","displayname","write_people_xml","person","userId","providerId","parse_BrtBeginComment","rfx","write_BrtBeginComment","parse_BrtCommentAuthor","write_BrtCommentAuthor","parse_comments_bin","hopper_cmnt","write_comments_bin","CT_VBA","make_vba_xls","newcfb","newpath","fill_vba_xls","VBAFMTS","parse_ds_bin","!type","parse_ds_xml","parse_ms_bin","parse_ms_xml","rcregex","rcbase","rcfunc","fstr","crefregex","$0","$4","$5","shift_formula_xlsx","_xlfn","parseread1","parse_ColRelU","parse_RgceArea","parse_RgceArea_BIFF2","parse_RgceAreaRel","parse_RgceLoc","parse_RgceLoc_BIFF2","parse_RgceElfLoc","fQuoted","parse_RgceLocRel","parse_RgceLocRel_BIFF2","cl","rl","parse_PtgArea","parse_PtgArea3d","ixti","parse_PtgAreaErr","parse_PtgAreaErr3d","parse_PtgAreaN","parse_PtgArray","parse_PtgAttrBaxcel","bitSemi","bitBaxcel","parse_PtgAttrChoose","parse_PtgAttrGoto","bitGoto","parse_PtgAttrIf","bitIf","parse_PtgAttrIfError","parse_PtgAttrSemi","parse_PtgAttrSpaceType","parse_PtgAttrSpace","parse_PtgAttrSpaceSemi","parse_PtgRef","parse_PtgRefN","parse_PtgRef3d","parse_PtgFunc","iftab","FtabArgc","Ftab","parse_PtgFuncVar","cparams","tab","parsetab","Cetab","parse_PtgAttrSum","parse_PtgExp","parse_PtgErr","parse_PtgInt","parse_PtgBool","parse_PtgNum","parse_PtgStr","parse_SerAr","parse_PtgExtraMem","parse_PtgExtraArray","parse_PtgName","nameindex","parse_PtgNameX","parse_PtgNameX_BIFF5","parse_PtgMemArea","parse_PtgMemFunc","parse_PtgRefErr","parse_PtgRefErr3d","parse_PtgMemErr","parse_PtgMemNoMem","parse_PtgTbl","parse_PtgElfLoc","parse_PtgElfNoop","parse_PtgElfCol","parse_PtgElfColS","parse_PtgElfColSV","parse_PtgElfColV","parse_PtgElfLel","parse_PtgElfRadical","parse_PtgElfRadicalLel","parse_PtgElfRadicalS","parse_PtgElfRw","parse_PtgElfRwV","PtgListRT","parse_PtgList","coltype","parse_PtgSxName","parse_PtgSheet","parse_PtgEndSheet","parse_PtgMemAreaN","parse_PtgMemNoMemN","parse_PtgAttrNoop","PtgTypes","PtgDupes","96","97","98","99","110","91","92","93","Ptg18","Ptg19","parse_RgbExtra","parse_Rgce","ptgs","stringify_array","PtgBinOp","PtgAdd","PtgConcat","PtgDiv","PtgEq","PtgGe","PtgGt","PtgLe","PtgLt","PtgMul","PtgNe","PtgPower","PtgSub","make_3d_range","get_ixti_raw","supbooks","XTI","SID","get_ixti","ixtiraw","stringify_formula","stack","nameidx","last_sp","sp","fflen","func","lbl","names","xlfn","bookidx","externbook","ixtidata","lp","rp","sharedf","parsedf","fnd","arrayf","PtgNonDisp","_left","rgcb","parse_XLSCellParsedFormula","parse_FormulaValue","write_FormulaValue","parse_Formula","cbf","shared","write_Formula","o1","o3","bf","parse_XLSBParsedFormula","parse_XLSBArrayParsedFormula","parse_XLSBCellParsedFormula","parse_XLSBNameParsedFormula","parse_XLSBSharedParsedFormula","write_XLSBFormulaNum","oint","write_XLSBFormulaErr","write_XLSBFormulaBool","write_XLSBFormulaStr","postamble","write_XLSBFormulaRef","write_XLSBFormulaRef3D","lastbang","write_XLSBFormulaRefErr3D","write_XLSBFormulaRange","_str","write_XLSBFormulaRangeWS","write_XLSBFormulaArea3D","write_XLSBFormula","write_XLSBNameParsedFormula","85","94","95","112","113","114","115","116","117","118","119","127","131","132","133","137","138","139","140","143","144","145","146","148","149","159","164","166","167","168","169","170","171","172","173","189","190","191","192","193","194","196","197","198","199","209","210","211","212","214","215","217","219","220","223","224","225","226","227","228","229","240","243","249","250","251","252","253","254","269","272","273","274","276","277","278","279","280","281","282","283","284","285","288","289","290","291","292","293","295","296","297","298","302","305","306","307","308","309","310","311","312","313","314","315","316","318","319","320","321","322","323","324","325","328","330","336","338","339","342","343","344","350","352","355","356","370","373","374","375","376","377","378","379","380","381","382","383","385","386","388","391","392","394","395","397","398","399","400","412","413","414","415","416","417","421","422","423","424","425","430","431","432","433","434","435","436","437","438","439","440","441","442","443","444","445","446","447","448","449","450","451","452","453","454","455","456","458","459","460","461","462","463","464","465","466","467","468","469","470","471","472","473","474","475","476","477","478","480","481","482","485","489","491","493","494","495","509","510","511","518","519","520","521","522","523","545","546","547","548","549","620","621","653","667","673","753","755","808","141","157","158","160","165","179","180","181","182","183","221","230","231","232","233","234","235","236","237","239","241","242","244","245","246","247","248","257","258","264","275","286","287","294","299","300","301","303","304","317","326","327","329","331","332","334","335","337","340","341","345","346","347","348","349","353","357","359","360","361","362","363","364","365","366","367","368","369","371","372","387","401","402","403","404","405","406","407","408","409","410","411","418","419","426","427","428","429","457","724","479","483","484","ods_to_csf_formula","csf_to_ods_formula","ods_to_csf_3D","csf_to_ods_3D","_ssfopts","browser_has_Map","Map","get_sst_id","has","revarr","get","col_obj_w","outlineLevel","default_margins","margins","mode","defs","left","right","top","bottom","get_cell_style","revssf","ssf","applyNumberFormat","safe_format","fillid","raw_rgb","check_ws","parse_ws_xml_dim","mergecregex","sheetdataregex","hlinkregex","dimregex","colregex","afregex","marginregex","sheetprregex","sheetprregex2","svsregex","parse_ws_xml","data1","data2","mtch","sheetPr","parse_ws_xml_sheetpr","parse_ws_xml_sheetpr2","svs","parse_ws_xml_sheetviews","columns","parse_ws_xml_cols","parse_ws_xml_data","afilter","parse_ws_xml_autofilter","_merge","parse_ws_xml_hlinks","parse_ws_xml_margins","tmpref","write_ws_xml_merges","codeName","CodeName","write_ws_xml_sheetpr","needed","vbaraw","cname","outlineprops","summaryBelow","summaryRight","above","sheetprot_deffalse","sheetprot_deftrue","write_ws_xml_protection","location","Rel","tooltip","rng","margin","write_ws_xml_margins","seencol","coli","colm","colM","write_ws_xml_cols","write_ws_xml_autofilter","sviewregex","Views","zoomScale","zoom","rightToLeft","write_ws_xml_sheetviews","sview","workbookViewId","write_ws_xml_cell","oldt","oldv","Strings","revStrings","display","cellregex","rowregex","isregex","refregex","match_v","match_f","cells","cref","tagr","tagc","sstr","ftag","do_format","rowobj","rowrite","marr","marrlen","xlen","rstarti","outa","ht","rslice","cellFormula","___f","_tag","xlmeta","_r","write_ws_xml_data","params","height","_cell","customHeight","write_ws_xml","xmlns:r","rdata","_drawing","sheetFormat","defaultRowHeight","baseColWidth","outlineLevelRow","relc","ignoreEC","numberStoredAsText","sqref","r:id","parse_BrtRowHdr","write_BrtRowHdr","ncolspan","lcs","caddr","first","last","write_row_header","parse_BrtWsDim","write_BrtWsDim","parse_BrtWsFmtInfo","parse_BrtWsProp","write_BrtWsProp","parse_BrtCellBlank","write_BrtCellBlank","ncell","parse_BrtShortBlank","write_BrtShortBlank","parse_BrtCellBool","fBool","write_BrtCellBool","parse_BrtShortBool","write_BrtShortBool","parse_BrtCellError","bError","write_BrtCellError","parse_BrtShortError","write_BrtShortError","parse_BrtCellIsst","write_BrtCellIsst","parse_BrtShortIsst","write_BrtShortIsst","parse_BrtCellReal","write_BrtCellReal","parse_BrtShortReal","write_BrtShortReal","parse_BrtCellRk","write_BrtCellRk","parse_BrtShortRk","write_BrtShortRk","parse_BrtCellRString","parse_BrtCellSt","write_BrtCellSt","parse_BrtShortSt","write_BrtShortSt","parse_BrtFmlaBool","parse_BrtFmlaError","parse_BrtFmlaNum","parse_BrtFmlaString","parse_BrtMergeCell","write_BrtMergeCell","write_BrtBeginMergeCells","parse_BrtHLink","relId","write_BrtHLink","locidx","parse_BrtPane","parse_BrtArrFmla","fAlwaysCalc","parse_BrtShrFmla","write_BrtColInfo","BrtMarginKeys","parse_BrtMargins","write_BrtMargins","parse_BrtBeginWsView","write_BrtBeginWsView","write_BrtCellIgnoreEC","write_BrtSheetProtection","parse_BrtDVal","parse_BrtDVal14","parse_ws_bin","ai","af","vm","ws_parse","RR","aii","_d","write_ws_bin_cell","last_seen","write_CELLTABLE","cap","write_MERGECELLS","write_COLINFOS","write_IGNOREECS","write_HLINKS","write_LEGACYDRAWING","write_AUTOFILTER","write_WSVIEWS2","write_WSFMTINFO","write_SHEETPROTECT","write_ws_bin","parse_Cache","nf","parse_chart","csheet","nc","cache","parse_cs_xml","!drawel","!rel","parse_BrtCsProp","parse_cs_bin","cs_parse","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","dn","wbnsregex","parse_wb_xml","dname","dnstart","xml_wb","Hidden","Comment","localSheetId","write_wb_xml","write_names","workbookPr","sheetId","parse_BrtBundleSh","iTabID","strRelID","write_BrtBundleSh","parse_BrtWbProp","defaultThemeVersion","strName","autoCompressPictures","backupFile","checkCompatibility","filterPrivacy","hidePivotFieldList","promptedSolutions","publishItems","refreshAllConnections","saveExternalLinkValues","showBorderUnselectedTables","showInkAnnotation","showObjects","showPivotChartFilter","updateLinks","write_BrtWbProp","parse_BrtFRTArchID$","ArchID","parse_BrtName","Ptg","write_BrtName","parse_wb_bin","hopper_wb","write_BUNDLESHS","viz","write_BrtFileVersion","write_BrtBookView","write_BOOKVIEWS","vistab","write_BRTNAMES","write_SELF_EXTERNS_xlsb","write_EXTERNALS_xlsb","write_wb_bin","parse_wb","parse_ws","parse_cs","parse_ms","parse_ds","parse_sty","parse_sst","parse_cmnt","parse_cc","parse_xlink","parse_xlmeta","attregexg2","attregex2","xlml_parsexmltag","words","xlml_parsexmltagobj","XLMLFormatMap","xlml_format","xlml_set_custprop","oval","safe_format_xlml","process_style_xlml","stag","Interior","I","Pattern","parse_xlml_data","csty","sid","StyleID","interiors","Parent","UTC","Formula","ArrayRange","xlml_prefix_dname","xlml_clean_comment","parse_xlml_xml","opening","ishtml","_o","html_to_workbook","General Number","General Date","Long Date","Medium Date","Short Date","Long Time","Medium Time","Short Time","Currency","Fixed","Standard","Percent","Scientific","Yes/No","True/False","On/Off","sheetnames","cursheet","sheetname","dtag","didx","fidx","pidx","cstys","wsprops","raw_Rn3","HRef","HRefScreenTip","MergeAcross","MergeDown","cma","cmd","AutoFitHeight","Height","Format","ssfidx","Width","_col","Span","_NamedRange","_DefinedName","RefersTo","AutoFilter","Range","parse_fods","Margin","pagemargins","Top","Left","Right","Bottom","bookSheets","bookProps","parse_xlml","fix_read_opts","write_props_xlml","write_wb_xlml","write_sty_xlml","ss:Format","ss:ID","write_name_xlml","ss:Name","ss:RefersTo","write_names_xlml","write_ws_xlml_names","write_ws_xlml_wsopts","x:Margin","x:Bottom","x:Left","x:Right","x:Top","objects","scenarios","selectLockedCells","selectUnlockedCells","write_ws_xlml_comment","ss:Author","write_ws_xlml_cell","attr","mi","_v","write_ws_xlml_row","write_ws_xlml_table","ss:Index","skip","write_ws_xlml","write_xlml","General","xmlns:ss","xmlns:dt","xmlns:html","parse_compobj","AnsiUserType","AnsiClipboardFormat","Reserved1","UnicodeClipboardFormat","Reserved2","CONTINUE_RT","slurp","RecordType","nextrt","XLSRecordEnum","ll","safe_format_xf","make_cell","parse_workbook","Directory","last_formula","cur_sheet","Preamble","lastcell","last_cell","cmnt","rngC","rngR","temp_val","country","XFs","palette","get_rgb","getrgb","process_cell_style","pcs","xfd","addcell","file_depth","afi","rrtabid","lastuser","winlocked","wtf","last_RT","BIFF2Fmt","BIFF2FmtTable","FilterDatabases","last_lbl","seen_codepage","Date1904","WriteProtect","cpval","CalcRefMode","FullCalc","ExternCount","tmpri","1033","1024","1280","1536","fakebs8","_fr","_fc","_fe","_arraystart","_j","_ixfe","b4idx","b2idx","TxO","ImData","noteobj","Encryption","Metadata","Country","PSCLSID","SI","DSI","UDI","parse_xls_props","DocSummary","Summary","write_xls_props","DSEntries","SEntries","CEntries","Keys","DocSummaryRE","SummaryRE","CEntries2","parse_xlscfb","CompObj","WorkbookP","bookVBA","bookFiles","write_xlscfb","wbpath","write_biff_buf","333","486","487","488","490","492","496","497","498","499","500","501","502","503","504","505","506","507","508","515","524","525","526","527","528","529","530","531","532","533","534","535","536","537","538","539","540","541","542","550","551","552","553","554","555","556","557","558","559","560","561","562","564","565","566","569","570","572","573","574","577","578","579","580","581","582","583","584","585","586","587","588","589","590","591","592","593","594","595","596","597","598","599","600","601","602","603","604","605","606","607","608","609","610","611","612","613","614","615","616","617","618","619","625","626","627","628","629","630","631","632","633","634","635","636","637","638","639","649","650","651","652","654","655","656","657","663","664","668","669","671","672","674","675","676","677","678","679","680","681","1025","1026","1027","1028","1029","1030","1031","1032","1034","1035","1036","1037","1038","1039","1040","1041","1042","1043","1044","1045","1046","1047","1048","1049","1050","1051","1052","1053","1054","1055","1056","1057","1058","1059","1061","1062","1063","1064","1065","1066","1067","1068","1069","1070","1071","1072","1073","1075","1076","1077","1078","1079","1080","1081","1082","1083","1084","1085","1086","1087","1088","1089","1090","1091","1092","1093","1094","1095","1096","1097","1098","1099","1100","1101","1102","1103","1104","1105","1111","1112","1113","1114","1115","1116","1117","1118","1119","1120","1121","1122","1123","1124","1125","1126","1128","1129","1130","1131","1132","1133","1134","1135","1136","1137","1138","1139","1140","1141","1142","1143","1144","1145","1146","1147","1148","1149","1150","1152","1153","1154","1155","1156","1157","1158","1159","1160","1161","1162","1163","1164","1165","1166","1167","1168","1169","1170","1171","1172","1173","1177","1178","1180","1181","1182","2050","2051","2053","2054","2055","2056","2057","2058","2060","2067","2068","2069","2070","2071","2072","2073","2075","2076","2077","2078","2079","2080","2081","2082","2083","2084","2085","2086","2087","2088","2089","2090","2091","2092","2093","2094","2095","2096","2097","2098","2099","2100","2101","2102","2103","2104","2105","2106","2107","2108","2109","2110","2111","2112","2113","2114","2115","2116","2117","2118","2119","2120","2121","2122","2123","2124","2125","2126","2127","2128","2129","2130","2131","2132","2133","2134","2135","2136","2137","2138","2139","2140","2141","3072","3073","4096","4097","5002","5003","5081","5082","5083","5084","5085","5086","5087","5088","5089","5090","5092","5093","5094","5095","5096","5097","5099","1212","2059","2061","2062","2063","2064","2066","2146","2147","2148","2149","2150","2151","2152","2154","2155","2156","2161","2162","2164","2165","2166","2167","2168","2169","2170","2171","2172","2173","2174","2175","2180","2181","2182","2183","2184","2185","2186","2187","2188","2189","2190","2191","2192","2194","2195","2196","2197","2198","2199","2200","2201","2202","2203","2204","2205","2206","2207","2211","2212","2213","2214","2215","4098","4099","4102","4103","4105","4106","4107","4108","4109","4116","4117","4118","4119","4120","4121","4122","4123","4124","4125","4126","4127","4128","4129","4130","4132","4133","4134","4135","4146","4147","4148","4149","4154","4156","4157","4158","4159","4160","4161","4163","4164","4165","4166","4168","4170","4171","4174","4175","4176","4177","4187","4188","4189","4191","4192","4193","4194","4195","4196","4197","4198","4199","4200","2157","2163","2177","2240","2241","2242","2243","2244","2245","2246","2247","2248","2249","2250","2251","2262","29282","write_biff_continue","write_BIFF2BERR","write_BIFF2LABEL","write_ws_biff2_cell","write_ws_biff2","write_biff2_buf","write_FONTS_biff8","write_FMTS_biff8","write_FEAT","write_CELLXFS_biff8","write_ws_biff8_hlinks","HL","write_ws_cols_biff8","write_ws_biff8_cell","write_ws_biff8","_WB","_sheet","MAX_ROWS","write_biff8_global","_sheets","_wb","blen","write_biff8_buf","fix_write_opts","html_to_sheet","mtch2","hd","midx","colspan","rowspan","_t","make_html_row","editable","HTML_BEGIN","HTML_END","book_new","make_html_preamble","sheet_to_html","sheet_add_dom","tagName","or_R","or_C","is_dom_element_hidden","elts","hasAttribute","getAttribute","innerHTML","Aelts","getElementsByTagName","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","parse_ods_styles","_nfm","number_format_map","NFtag","tNF","etpos","infmt","parse_content_xml","nfidx","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","baddate","rptR","rpt","xlmlidx","styletag","nrange","ptp","parse_ods","Styles","write_styles_ods","master_styles","xmlns:office","xmlns:table","xmlns:style","xmlns:text","xmlns:draw","xmlns:fo","xmlns:xlink","xmlns:number","xmlns:svg","xmlns:of","office:version","wso","write_number_format_ods","nopts","style:name","number:min-integer-digits","number:min-numerator-digits","number:max-denominator-value","number:denominator-value","number:decimal-places","number:min-decimal-places","has_time","np","write_names_ods","scoped","odsref","table:name","table:cell-range-address","table:base-cell-address","write_content_ods","write_text_p","null_cell_xml","covered_cell_xml","write_ws","nfs","ods","ROWS","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","nfi","wcx","xmlns:meta","xmlns:presentation","xmlns:chart","xmlns:dr3d","xmlns:math","xmlns:form","xmlns:script","xmlns:ooo","xmlns:ooow","xmlns:oooc","xmlns:dom","xmlns:xforms","xmlns:sheet","xmlns:rpt","xmlns:xhtml","xmlns:grddl","xmlns:tableooo","xmlns:drawooo","xmlns:calcext","xmlns:loext","xmlns:field","xmlns:formx","xmlns:css3t","fods","xmlns:config","office:mimetype","write_ods","u8_to_dataview","array","DataView","buffer","byteOffset","byteLength","u8str","u8","stru8","u8concat","u8a","popcnt","readDecimal128LE","exp","mantissa","writeDecimal128LE","parse_varint49","ptr","varint","write_varint49","parse_packed_varints","write_packed_varints","nums","varint_to_i32","i32","varint_to_u64","lo","hi","parse_shallow","write_shallow","proto","item","mappa","parse_iwa_file","_a","messages","merge","write_iwa_file","ias","ia","midata","aipayload","mid","parse_snappy_chunk","chunks","clen","u8i","decompress_iwa_file","compress_iwa_file","frame","numbers_lut_new","rsst","ofmt","nfmt","numbers_format_cell","_b","_c","ver","dur","dstyle","dmin","dmax","autodur","dstr","zstr","parse_old_storage","lut","dv","getUint32","zidx","ieee","doff","getFloat64","parse_new_storage","d128","write_new_storage","setFloat64","setUint32","write_old_storage","parse_cell_storage","parse_TSP_Reference","pb","write_TSP_Reference","numbers_add_oref","iwa","orefs","orefidx","numbers_del_oref","parse_TST_TableDataList","le","rtp","rtpref","mtype","tswpsa","parse_TST_TileRowInfo","_e","_g","_h","_i","_k","_m","wide_offsets","used_storage_u8","used_storage","used_storage_offsets","getUint16","parse_TST_Tile","nrows","reduce","acc","parse_TST_TableModelArchive","dws","store","tile","tl","ref2","mtype2","_tile","pi","parse_TST_TableInfoArchive","tableref","parse_TN_SheetArchive","shapeoffs","parse_TN_DocumentArchive","sheetoffs","root2","parse_numbers_iwa","indices","packets","packet","docroot","iwam","write_TST_TileRowInfo","wide","tri","new_7","new_4","last_offset","cell_storage","_dv","_last_offset","_cell_storage","setUint16","celload","_celload","write_iwam","get_unique_msgid","dep","dependents","build_numbers_deps","deps","mess","write_numbers_iwa","numbers","numbers_iwa_find","sheetrefs","numbers_add_ws","write_numbers_ws","numbers_iwa_doit","ainfo","sheetref","newsheetref","remap","arch","doc","tiaref","sheetroot","sa","drawables","tia","loc2","mlist","parentidx","findIndex","mm","parent","tmaref","tiaroot","da","dap","oldtmaref","tma","tmaroot","uuid","new_uuid","padStart","srrta","hsoa","hsa","hseadata","hsea","_a2","oldref","newref","newloc","_a3","_b2","row_headers","tspref","tiles","tst","oldtileref","newtileref","oldtile","wsname","sheetidx","rootref","write_numbers_tma","USE_WIDE_ROWS","tmafile","trunc","row_header_ref","rowhead","_x","base_bucket","R2","_bucket","col_header_ref","colhead","rbtree","tilestore","tstride","tileref","save_token","mlst","ntiles","newtileid","tiledata","tilerow","newtile","tilecontent","mergeid","sstref","sstroot","sstdata","fix_opts_func","fix_opts","get_sheet_type","safe_parse_wbrels","wbrels","pwbr","safe_parse_sheet","relsPath","sheetRels","stype","dfile","drelsp","draw","chartp","crelsp","tcomments","strip_front_slash","_zip","index_zip","Bun","readSync","dir","binname","link","propdata","pluck","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Deps","bin","parse_xlsxcfb","dsm","seds","einfo","decrypt_agile","decrypt_std76","write_zip_xlsb","foo","vbafmt","_sn","wsrels","_type","need_vml","rId1","write_zip_xlsx","needtc","read_cfb","read_zip","read_plaintext","main","read_plaintext_raw","read_utf16","bstrify","read_prn","ab","vu","write_cfb_ctr","write_zip_type","write_zip_denouement","write_zip_typeXLSX","oopts","ftype","nodebuffer","string","generate","encrypt_agile","write_cfb_type","write_string_type","bom","write_stxt_type","write_binary_type","writeSyncXLSX","writeSync","sheet_to_txt","sheet_to_csv","resolve_book_type","_BT","xls","slk","socialcalc","Sh33tJS","writeFileSyncXLSX","writeFileAsync","_cb","Function","make_json_row","defval","isempty","defineProperty","enumerable","__rowNum__","rawNumbers","outi","counter","header_cnt","skipHidden","blankrows","qreg","make_csv_row","txt","datarow","forceQuotes","endregex","strip","sheet_to_formulae","cmds","sheet_add_json","js","skipHeader","ROW","JS","json_to_sheet","ws_get_cell_stub","RC","wb_sheet_idx","sh","roll","book_set_sheet_visibility","vis","cell_set_number_format","cell_set_hyperlink","cell_set_internal_link","cell_add_comment","sheet_set_array_formula","dynamic","rngstr","wsr","table_to_sheet","sheet_to_row_object_array","sheet_get_cell","SHEET_VISIBLE","SHEET_HIDDEN","SHEET_VERY_HIDDEN","_Readable","set_readable","write_csv_stream","stream","BOM","_read","write_html_stream","write_json_stream","objectMode","__stream","to_json","to_html","to_csv","readFile","writeXLSX","writeFileXLSX","strmod","Readable","define","amd","window"],"mappings":"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C,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,MAAQ,KAIR,IAAIC,KACH,KACA,QACA,aACA,WACA,YACA,iBACA,eACA,WACA,SACA,WACA,cACA,kBACA,gBACA,YACA,UACA,YACA,eACA,UACA,WAGD,SAASC,IAAOla,GAAO,MAAOA,GAAIxtB,IAAI,SAAS/C,GAAK,OAASA,GAAG,GAAI,IAAKA,GAAG,EAAG,IAAIA,EAAE,OAIrF,GAAI0qC,IAAWD,IAEd,EACA,SACA,SACA,MACA,IACA,SACA,SACA,MAGA,EACA,SACA,SACA,MACA,IACA,SACA,SACA,MAEA,QACA,MACA,IACA,QACA,QACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,MACA,SAEA,IACA,SACA,SACA,MACA,QACA,QACA,MACA,IACA,MACA,SACA,SACA,SACA,SACA,SACA,SACA,SAEA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,QACA,SACA,SACA,QACA,QAGA,EACA,SACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAED,IAAIvE,IAAS7T,GAAIqY,GAGjB,IAAIjJ,KACJrkC,EAAM,SACNuK,EAAM,UACNrB,GAAM,UACNuB,GAAM,QACNM,GAAM,SACNoN,GAAM,QACNjL,GAAM,OACNC,GAAM,gBACNjM,IAAM,QAGN,IAAIqsC,KACHC,SAAiB,EACjBC,UAAiB,EACjBC,UAAiB,GACjBC,QAAiB,GACjBC,SAAiB,GACjBC,QAAiB,GACjBC,OAAiB,GACjBC,gBAAiB,GACjBC,QAAiB,IAGlB,IAAIC,KACH,yBACA,kBACA,mBACA,gBACA,iBACA,iBACA,mBACA,qBACA,iBACA,kBACA,sBACA,wBACA,oBACA,wBAOD,IAAIC,KAEHC,6EAA8E,YAC9EC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,IAAK,QACLtL,IAAK,UACLuL,IAAK,UACLC,IAAK,WACLvL,IAAK,WACLC,IAAK,UACLC,IAAK,SACLC,IAAK,QACLC,IAAK,WACLC,IAAK,QACLC,IAAK,YACLC,IAAK,UACLC,IAAK,MACLC,IAAK,QACLC,IAAK,QACLC,IAAK,QACL6K,IAAK,OACL5K,IAAK,QACLC,IAAK,UACLC,IAAK,UACLC,IAAK,QACLC,IAAK,OACLC,IAAK,OACLC,IAAK,QACLC,IAAK,QACLsK,IAAK,QACLC,IAAK,WACLtK,IAAK,aACLuK,IAAK,cACLtK,IAAK,OACLuK,IAAK,WACLC,IAAK,OACLC,IAAK,gBACLC,IAAK,YACLzK,IAAK,cACL0K,IAAK,QACLzK,IAAK,iBACLC,IAAK,kBACLyK,IAAK,kBACLC,IAAK,iBACLzK,IAAK,UACLC,IAAK,UACLC,IAAK,WACLwK,IAAK,QACLC,IAAK,UACLC,IAAK,aACLC,IAAK,eACLC,IAAK,oBACL3K,IAAK,QACLntD,IAAK,UACLotD,IAAK,aACL2K,IAAK,eACL93D,IAAK,QACLotD,IAAK,cACLC,IAAK,cACL0K,IAAK,WACL93D,IAAK,eACL+3D,IAAK,YACLC,IAAK,WACLC,IAAK,WACLC,IAAK,OACLC,IAAK,OACLC,IAAK,UACLC,IAAK,QACLC,IAAK,SACLC,IAAK,OACLC,IAAK,WACLC,IAAK,gBACLpL,IAAK,YACLqL,IAAK,kBACLC,IAAK,eACLrL,IAAK,gBACLC,IAAK,mBACLC,IAAK,cACLC,IAAK,gBACLC,IAAK,cACLC,IAAK,WACLC,IAAK,MACLC,IAAK,YACLC,IAAK,aACLC,IAAK,qBACLC,IAAK,mBACLlwB,IAAK,UACLmwB,IAAK,UACLC,IAAK,UACL0K,IAAK,UACLzK,IAAK,UACLpwB,IAAK,UACLC,IAAK,UACLowB,IAAK,UACLC,IAAK,UACLpwB,IAAK,UACLqwB,IAAK,UACLC,IAAK,UACLrwB,IAAK,QACLswB,IAAK,QACLC,IAAK,UACLC,IAAK,QACLC,IAAK,SACLkK,IAAK,OACLC,IAAK,SACLC,IAAK,UACLC,IAAK,QACLC,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C9BmrC,KAAyBhpF,EAAEwyC,IAC3B22C,OACAC,KAA2BppF,EAAE66C,IAC7B2uC,KAAsCxpF,EAAE+yC,IACxCsiE,OACAK,KAA6B11G,EAAEs0C,IAC/B6kE,KAAwBn5G,EAAE21C,IAC1Bkf,OACAonD,QACAM,MAA4Bv8G,EAAEq1C,IAC9B8oE,QACAkM,MAA6BrqH,EAAEy6C,IAC/Bob,MAAkC71D,EAAEw8C,IACpCsZ,QACA6tD,QACAC,QACA7tD,QACA8tD,QACAC,QACAC,QACAC,QACAC,MAAyBjkH,EAAE+wC,IAC3BmzE,QACAoG,QACAnG,QACAoG,QACAC,QACAC,QACAC,QACAC,QACAvG,QACA4D,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAkC,QACAC,MAA6B1uH,EAAE,IAC/B2uH,QACAC,QACAC,QACAC,MAA6BjrH,EAAEsrC,IAC/B4/E,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA2BhsH,EAAEg9C,GAAa7gD,EAAE,IAC5C8vH,MAA2BjsH,EAAE4oE,GAAazsE,EAAE,IAC5C+vH,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8B5sH,EAAEypC,GAAWttC,EAAE,IAC7C0wH,QACAC,MAAiC3wH,EAAE,IACnC4wH,QACAC,QACAC,QACAC,QACAC,MAA6BntH,EAAEq6C,GAAel+C,EAAE,IAChDixH,QACAC,MAA2BrtH,EAAEgoE,GAAa7rE,EAAE,IAC5CmxH,QACAC,QACAC,QACAC,MAAiCztH,EAAE+6C,GAAmB5+C,EAAE,IACxDuxH,MAAsC1tH,EAAEsrC,IACxCqiF,QACAC,QACAC,QACAC,QACAC,MAA0C/tH,EAAE4yC,IAC5Co7E,QACAC,QACAC,QACAC,QACAlF,QACAmF,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACA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","file":"dist/xlsx.core.min.js"} \ No newline at end of file diff --git a/dist/xlsx.extendscript.js b/dist/xlsx.extendscript.js index 57cdc29..acdb085 100644 --- a/dist/xlsx.extendscript.js +++ b/dist/xlsx.extendscript.js @@ -157,10 +157,10 @@ var DO_NOT_EXPORT_CODEPAGE = true; /*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */ /* vim: set ts=2: */ /*exported XLSX */ -/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false, Set:false */ +/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false */ var XLSX = {}; function make_xlsx_lib(XLSX){ -XLSX.version = '0.18.12'; +XLSX.version = '0.19.0'; var current_codepage = 1200, current_ansi = 1252; /*global cptable:true, window */ var $cptable; @@ -1763,7 +1763,7 @@ sleuth_fat(difat_start, difat_sec_cnt, sectors, ssz, fat_addrs); /** Chains */ var sector_list = make_sector_list(sectors, dir_start, fat_addrs, ssz); -sector_list[dir_start].name = "!Directory"; +if(dir_start < sector_list.length) sector_list[dir_start].name = "!Directory"; if(nmfs > 0 && minifat_start !== ENDOFCHAIN) sector_list[minifat_start].name = "!MiniFAT"; sector_list[fat_addrs[0]].name = "!FAT"; sector_list.fat_addrs = fat_addrs; @@ -4361,7 +4361,6 @@ function fix_col(cstr) { return cstr.replace(/^([A-Z])/,"$$$1"); } function unfix_col(cstr) { return cstr.replace(/^\$([A-Z])/,"$1"); } function split_cell(cstr) { return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(","); } -//function decode_cell(cstr) { var splt = split_cell(cstr); return { c:decode_col(splt[0]), r:decode_row(splt[1]) }; } function decode_cell(cstr) { var R = 0, C = 0; for(var i = 0; i < cstr.length; ++i) { @@ -4371,7 +4370,6 @@ function decode_cell(cstr) { } return { c: C - 1, r:R - 1 }; } -//function encode_cell(cell) { return encode_col(cell.c) + encode_row(cell.r); } function encode_cell(cell) { var col = cell.c + 1; var s=""; @@ -4459,9 +4457,10 @@ function sheet_to_workbook(sheet, opts) { function sheet_add_aoa(_ws, data, opts) { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; - var ws = _ws || (dense ? ([]) : ({})); + var ws = _ws || ({}); + if(dense && !ws["!data"]) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -4480,13 +4479,19 @@ function sheet_add_aoa(_ws, data, opts) { range.e.r = Math.max(range.e.r, _range.e.r); if(_R == -1) range.e.r = _R = _range.e.r + 1; } + var row = []; for(var R = 0; R != data.length; ++R) { if(!data[R]) continue; if(!Array.isArray(data[R])) throw new Error("aoa_to_sheet expects an array of arrays"); + var __R = _R + R, __Rstr = "" + (__R + 1); + if(dense) { + if(!ws["!data"][__R]) ws["!data"][__R] = []; + row = ws["!data"][__R]; + } for(var C = 0; C != data[R].length; ++C) { if(typeof data[R][C] === 'undefined') continue; var cell = ({v: data[R][C] }); - var __R = _R + R, __C = _C + C; + var __C = _C + C; if(range.s.r > __R) range.s.r = __R; if(range.s.c > __C) range.s.c = __C; if(range.e.r < __R) range.e.r = __R; @@ -4510,11 +4515,10 @@ function sheet_add_aoa(_ws, data, opts) { else cell.t = 's'; } if(dense) { - if(!ws[__R]) ws[__R] = []; - if(ws[__R][__C] && ws[__R][__C].z) cell.z = ws[__R][__C].z; - ws[__R][__C] = cell; + if(row[__C] && row[__C].z) cell.z = row[__C].z; + row[__C] = cell; } else { - var cell_ref = encode_cell(({c:__C,r:__R})); + var cell_ref = encode_col(__C) + __Rstr; if(ws[cell_ref] && ws[cell_ref].z) cell.z = ws[cell_ref].z; ws[cell_ref] = cell; } @@ -8024,7 +8028,7 @@ function sheet_to_dbf(ws, opts) { var cp = +dbf_reverse_map[current_codepage] || 0x03; h.write_shift(4, 0x00000000 | (cp<<8)); if(dbf_codepage_map[cp] != +o.codepage) { - console.error("DBF Unsupported codepage " + current_codepage + ", using 1252"); + if(o.codepage) console.error("DBF Unsupported codepage " + current_codepage + ", using 1252"); current_codepage = 1252; } @@ -8060,6 +8064,7 @@ function sheet_to_dbf(ws, opts) { case 'N': var _n = "0"; if(typeof data[i][j] == "number") _n = data[i][j].toFixed(coldecimals[j]||0); + if(_n.length > colwidths[j]) _n = _n.slice(0, colwidths[j]); // addresses decimal > width for(hcnt=0; hcnt < colwidths[j]-_n.length; ++hcnt) rout.write_shift(1, 0x20); rout.write_shift(1, _n, "sbcs"); break; @@ -8291,7 +8296,7 @@ var SYLK = (function() { case 'b': o += cell.v ? "TRUE" : "FALSE"; break; case 'e': o += cell.w || cell.v; break; case 'd': o += '"' + (cell.w || cell.v) + '"'; break; - case 's': o += '"' + cell.v.replace(/"/g,"").replace(/;/g, ";;") + '"'; break; + case 's': o += '"' + (cell.v == null ? "" : String(cell.v)).replace(/"/g,"").replace(/;/g, ";;") + '"'; break; } return o; } @@ -8323,7 +8328,7 @@ var SYLK = (function() { /* TODO: codepage */ var preamble = ["ID;PSheetJS;N;E"], o = []; var r = safe_decode_range(ws['!ref']), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var RS = "\r\n"; var d1904 = (((wb||{}).Workbook||{}).WBProps||{}).date1904; @@ -8335,10 +8340,10 @@ var SYLK = (function() { preamble.push("B;Y" + (r.e.r - r.s.r + 1) + ";X" + (r.e.c - r.s.c + 1) + ";D" + [r.s.c,r.s.r,r.e.c,r.e.r].join(" ")); preamble.push("O;L;D;B" + (d1904 ? ";V4" : "") + ";K47;G100 0.001"); for(var R = r.s.r; R <= r.e.r; ++R) { + if(dense && !ws["!data"][R]) continue; var p = []; for(var C = r.s.c; C <= r.e.c; ++C) { - var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C]: ws[coord]; + cell = dense ? ws["!data"][R][C] : ws[encode_col(C) + encode_row(R)]; if(!cell || (cell.v == null && (!cell.f || cell.F))) continue; p.push(write_ws_cell_sylk(cell, ws, R, C, opts)); // TODO: pass date1904 info } @@ -8411,7 +8416,7 @@ var DIF = (function() { function sheet_to_dif(ws) { var _DIF_XL = DIF_XL; var r = safe_decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var o = [ "TABLE\r\n0,1\r\n\"sheetjs\"\r\n", "VECTORS\r\n0," + (r.e.r - r.s.r + 1) + "\r\n\"\"\r\n", @@ -8419,9 +8424,10 @@ var DIF = (function() { "DATA\r\n0,0\r\n\"\"\r\n" ]; for(var R = r.s.r; R <= r.e.r; ++R) { + var row = dense ? ws["!data"][R] : []; var p = "-1,0\r\nBOT\r\n"; for(var C = r.s.c; C <= r.e.c; ++C) { - var cell = dense ? (ws[R] && ws[R][C]) : ws[encode_cell({r:R,c:C})]; + var cell = dense ? (row && row[C]) : ws[encode_cell({r:R,c:C})]; if(cell == null) { p +=("1,0\r\n\"\"\r\n"); continue;} switch(cell.t) { case 'n': @@ -8516,11 +8522,11 @@ var ETH = (function() { if(!ws || !ws['!ref']) return ""; var o = [], oo = [], cell, coord = ""; var r = decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { for(var C = r.s.c; C <= r.e.c; ++C) { coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null || cell.t === 'z') continue; oo = ["cell", coord, 't']; switch(cell.t) { @@ -8642,7 +8648,8 @@ var PRN = (function() { var o = opts || {}; var sep = ""; if(DENSE != null && o.dense == null) o.dense = DENSE; - var ws = o.dense ? ([]) : ({}); + var ws = ({}); + if(o.dense) ws["!data"] = []; var range = ({s: {c:0, r:0}, e: {c:0, r:0}}); if(str.slice(0,4) == "sep=") { @@ -8688,7 +8695,7 @@ var PRN = (function() { cell.v = s; } if(cell.t == 'z'){} - else if(o.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = cell; } + else if(o.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = cell; } else ws[encode_cell({c:C,r:R})] = cell; start = end+1; startcc = str.charCodeAt(start); if(range.e.c < C) range.e.c = C; @@ -8744,12 +8751,12 @@ var PRN = (function() { function sheet_to_prn(ws) { var o = []; var r = safe_decode_range(ws['!ref']), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { var oo = []; for(var C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null) { oo.push(" "); continue; } var w = (cell.w || (format_cell(cell), cell.w) || "").slice(0,10); while(w.length < 10) w += " "; @@ -8811,8 +8818,9 @@ var WK_ = (function() { if(!d) return d; var o = opts || {}; if(DENSE != null && o.dense == null) o.dense = DENSE; - var s = ((o.dense ? [] : {})), n = "Sheet1", next_n = "", sidx = 0; - var sheets = {}, snames = [], realnames = []; + var s = ({}), n = "Sheet1", next_n = "", sidx = 0; + var sheets = {}, snames = [], realnames = [], sdata = []; + if(o.dense) sdata = s["!data"] = []; var refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; var sheetRows = o.sheetRows || 0; @@ -8857,13 +8865,13 @@ var WK_ = (function() { s["!ref"] = encode_range(refguess); sheets[n] = s; snames.push(n); - s = (o.dense ? [] : {}); + s = ({}); if(o.dense) sdata = s["!data"] = []; refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; sidx = val[3]; n = next_n || "Sheet" + (sidx + 1); next_n = ""; } } - var tmpcell = o.dense ? (s[val[0].r]||[])[val[0].c] : s[encode_cell(val[0])]; + var tmpcell = o.dense ? (sdata[val[0].r]||[])[val[0].c] : s[encode_cell(val[0])]; if(tmpcell) { tmpcell.t = val[1].t; tmpcell.v = val[1].v; if(val[1].z != null) tmpcell.z = val[1].z; @@ -8871,8 +8879,8 @@ var WK_ = (function() { break; } if(o.dense) { - if(!s[val[0].r]) s[val[0].r] = []; - s[val[0].r][val[0].c] = val[1]; + if(!sdata[val[0].r]) sdata[val[0].r] = []; + sdata[val[0].r][val[0].c] = val[1]; } else s[encode_cell(val[0])] = val[1]; break; case 0x5405: o.works2 = true; break; @@ -8898,14 +8906,14 @@ var WK_ = (function() { s["!ref"] = encode_range(refguess); sheets[n] = s; snames.push(n); - s = (o.dense ? [] : {}); + s = ({}); if(o.dense) sdata = s["!data"] = []; refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; sidx = val[3]; n = "Sheet" + (sidx + 1); } if(sheetRows > 0 && val[0].r >= sheetRows) break; if(o.dense) { - if(!s[val[0].r]) s[val[0].r] = []; - s[val[0].r][val[0].c] = val[1]; + if(!sdata[val[0].r]) sdata[val[0].r] = []; + sdata[val[0].r][val[0].c] = val[1]; } else s[encode_cell(val[0])] = val[1]; if(refguess.e.c < val[0].c) refguess.e.c = val[0].c; if(refguess.e.r < val[0].r) refguess.e.r = val[0].r; @@ -8940,18 +8948,17 @@ var WK_ = (function() { if(o.type == "string") throw new Error("Cannot write WK1 to JS string"); var ba = buf_array(); var range = safe_decode_range(ws["!ref"]); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cols = []; write_biff_rec(ba, 0x00, write_BOF_WK1(0x0406)); write_biff_rec(ba, 0x06, write_RANGE(range)); var max_R = Math.min(range.e.r, 8191); + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= max_R; ++R) { var rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); - var ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + for(C = range.s.c; C <= range.e.c; ++C) { + var cell = dense ? (ws["!data"][R]||[])[C] : ws[cols[C] + rr]; if(!cell || cell.t == "z") continue; /* TODO: formula records */ if(cell.t == "n") { @@ -8983,7 +8990,7 @@ var WK_ = (function() { var ws = wb.Sheets[wb.SheetNames[i]]; if(!ws || !ws["!ref"]) continue; var range = safe_decode_range(ws["!ref"]); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cols = []; var max_R = Math.min(range.e.r, 8191); for(var R = range.s.r; R <= max_R; ++R) { @@ -8991,7 +8998,7 @@ var WK_ = (function() { for(var C = range.s.c; C <= range.e.c; ++C) { if(R === range.s.r) cols[C] = encode_col(C); var ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; if(!cell || cell.t == "z") continue; /* TODO: FORMULA19 NUMBER18 records */ if(cell.t == "n") { @@ -9702,7 +9709,7 @@ var WK_ = (function() { prep_blob(d, 0); var o = opts || {}; if(DENSE != null && o.dense == null) o.dense = DENSE; - var s = ((o.dense ? [] : {})); + var s = ({}); if(o.dense) s["!data"] = []; var SST = [], sname = "", formulae = []; var range = {s:{r:-1,c:-1}, e:{r:-1,c:-1}}; var cnt = 0, type = 0, C = 0, R = 0; @@ -9739,7 +9746,7 @@ var WK_ = (function() { case 0x0601: { /* BOS */ var sidx = p.read_shift(2); - s = ((o.dense ? [] : {})); + s = ({}); if(o.dense) s["!data"] = []; range.s.c = p.read_shift(2); range.e.c = p.read_shift(2); range.s.r = p.read_shift(4); @@ -9776,6 +9783,7 @@ var WK_ = (function() { R = p.read_shift(4), cnt = p.read_shift(4); if(range.s.r > R) range.s.r = R; if(range.e.r < R + cnt - 1) range.e.r = R + cnt - 1; + var CC = encode_col(C); while(p.l < p.length) { var cell = { t: "z" }; var flags = p.read_shift(1); @@ -9798,10 +9806,10 @@ var WK_ = (function() { default: throw "Unsupported delta for QPW cell type " + (flags & 0x1F); } if(!(!o.sheetStubs && cell.t == "z")) { - if(Array.isArray(s)) { - if(!s[R]) s[R] = []; - s[R][C] = cell; - } else s[encode_cell({r:R, c:C})] = cell; + if(s["!data"] != null) { + if(!s["!data"][R]) s["!data"][R] = []; + s["!data"][R][C] = cell; + } else s[CC + encode_row(R)] = cell; } ++R; --cnt; while(mul-- > 0 && cnt >= 0) { @@ -9817,10 +9825,10 @@ var WK_ = (function() { default: throw "Cannot apply repeat for QPW cell type " + (flags & 0x1F); } if(!(!o.sheetStubs && cell.t == "z")) { - if(Array.isArray(s)) { - if(!s[R]) s[R] = []; - s[R][C] = cell; - } else s[encode_cell({r:R, c:C})] = cell; + if(s["!data"] != null) { + if(!s["!data"][R]) s["!data"][R] = []; + s["!data"][R][C] = cell; + } else s[CC + encode_row(R)] = cell; } ++R; --cnt; } @@ -10071,6 +10079,7 @@ function write_sst_xml(sst, opts) { else { sitag += ""; } @@ -10458,14 +10467,18 @@ function rtf_to_sheet(d, opts) { } function rtf_to_sheet_str(str, opts) { var o = opts || {}; - var ws = o.dense ? [] : {}; + var ws = {}; + var dense = o.dense; + if (dense) + ws["!data"] = []; var rows = str.match(/\\trowd[\s\S]*?\\row\b/g); if (!rows) throw new Error("RTF missing table"); var range = { s: { c: 0, r: 0 }, e: { c: 0, r: rows.length - 1 } }; + var row = []; rows.forEach(function(rowtf, R) { - if (Array.isArray(ws)) - ws[R] = []; + if (dense) + row = ws["!data"][R] = []; var rtfre = /\\[\w\-]+\b/g; var last_index = 0; var res; @@ -10491,8 +10504,8 @@ function rtf_to_sheet_str(str, opts) { cell.w = cell.v; cell.v = fuzzynum(cell.v); } - if (Array.isArray(ws)) - ws[R][C] = cell; + if (dense) + row[C] = cell; else ws[encode_cell({ r: R, c: C })] = cell; } @@ -10520,15 +10533,17 @@ function sheet_to_rtf(ws, opts) { if (!ws["!ref"]) return o[0] + "}"; var r = safe_decode_range(ws["!ref"]), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, row = []; for (var R = r.s.r; R <= r.e.r; ++R) { o.push("\\trowd\\trautofit1"); for (var C = r.s.c; C <= r.e.c; ++C) o.push("\\cellx" + (C + 1)); o.push("\\pard\\intbl"); + if (dense) + row = ws["!data"][R] || []; for (C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({ r: R, c: C }); - cell = dense ? (ws[R] || [])[C] : ws[coord]; + cell = dense ? row[C] : ws[coord]; if (!cell || cell.v == null && (!cell.f || cell.F)) { o.push(" \\cell"); continue; @@ -12225,17 +12240,17 @@ function write_vml_comment(x, _shapeid) { ].join(""); } function sheet_insert_comments(sheet, comments, threaded, people) { - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var cell; comments.forEach(function(comment) { var r = decode_cell(comment.ref); if(dense) { - if(!sheet[r.r]) sheet[r.r] = []; - cell = sheet[r.r][r.c]; + if(!sheet["!data"][r.r]) sheet["!data"][r.r] = []; + cell = sheet["!data"][r.r][r.c]; } else cell = sheet[comment.ref]; if (!cell) { cell = ({t:"z"}); - if(dense) sheet[r.r][r.c] = cell; + if(dense) sheet["!data"][r.r][r.c] = cell; else sheet[comment.ref] = cell; var range = safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1"); if(range.s.r > r.r) range.s.r = r.r; @@ -12243,7 +12258,7 @@ function sheet_insert_comments(sheet, comments, threaded, people) { if(range.s.c > r.c) range.s.c = r.c; if(range.e.c < r.c) range.e.c = r.c; var encoded = encode_range(range); - if (encoded !== sheet["!ref"]) sheet["!ref"] = encoded; + sheet["!ref"] = encoded; } if (!cell.c) cell.c = []; @@ -12261,7 +12276,6 @@ function sheet_insert_comments(sheet, comments, threaded, people) { cell.c.push(o); }); } - /* 18.7 Comments */ function parse_comments_xml(data, opts) { /* 18.7.6 CT_Comments */ @@ -15326,7 +15340,7 @@ function parse_ws_xml(data, opts, idx, rels, wb, themes, styles) { if(DENSE != null && opts.dense == null) opts.dense = DENSE; /* 18.3.1.99 worksheet CT_Worksheet */ - var s = opts.dense ? ([]) : ({}); + var s = ({}); if(opts.dense) s["!data"] = []; var refguess = ({s: {r:2000000, c:2000000}, e: {r:0, c:0} }); var data1 = "", data2 = ""; @@ -15455,7 +15469,7 @@ function write_ws_xml_protection(sp) { } function parse_ws_xml_hlinks(s, data, rels) { - var dense = Array.isArray(s); + var dense = s["!data"] != null; for(var i = 0; i != data.length; ++i) { var val = parsexmltag(utf8read(data[i]), true); if(!val.ref) return; @@ -15471,11 +15485,11 @@ function parse_ws_xml_hlinks(s, data, rels) { if(val.tooltip) { val.Tooltip = val.tooltip; delete val.tooltip; } var rng = safe_decode_range(val.ref); for(var R=rng.s.r;R<=rng.e.r;++R) for(var C=rng.s.c;C<=rng.e.c;++C) { - var addr = encode_cell({c:C,r:R}); + var addr = encode_col(C) + encode_row(R); if(dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:"z",v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:"z",v:undefined}; + s["!data"][R][C].l = val; } else { if(!s[addr]) s[addr] = {t:"z",v:undefined}; s[addr].l = val; @@ -15605,7 +15619,10 @@ function write_ws_xml_cell(cell, ref, ws, opts) { var ff = cell.F && cell.F.slice(0, ref.length) == ref ? {t:"array", ref:cell.F} : null; v = writextag('f', escapexml(cell.f), ff) + (cell.v != null ? v : ""); } - if(cell.l) ws['!links'].push([ref, cell.l]); + if(cell.l) { + cell.l.display = escapexml(vv); + ws['!links'].push([ref, cell.l]); + } if(cell.D) o.cm = 1; return writextag('c', v, o); } @@ -15624,7 +15641,7 @@ return function parse_ws_xml_data(sdata, s, opts, guess, themes, styles) { var do_format = Array.isArray(styles.CellXf), cf; var arrayf = []; var sharedf = []; - var dense = Array.isArray(s); + var dense = s["!data"] != null; var rows = [], rowobj = {}, rowrite = false; var sheetStubs = !!opts.sheetStubs; for(var marr = sdata.split(rowregex), mt = 0, marrlen = marr.length; mt != marrlen; ++mt) { @@ -15789,8 +15806,8 @@ return function parse_ws_xml_data(sdata, s, opts, guess, themes, styles) { } if(dense) { var _r = decode_cell(tag.r); - if(!s[_r.r]) s[_r.r] = []; - s[_r.r][_r.c] = p; + if(!s["!data"][_r.r]) s["!data"][_r.r] = []; + s["!data"][_r.r][_r.c] = p; } else s[tag.r] = p; } } @@ -15799,7 +15816,7 @@ return function parse_ws_xml_data(sdata, s, opts, guess, themes, styles) { function write_ws_xml_data(ws, opts, idx, wb) { var o = [], r = [], range = safe_decode_range(ws['!ref']), cell="", ref, rr = "", cols = [], R=0, C=0, rows = ws['!rows']; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var params = ({r:rr}), row, height = -1; for(C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(R = range.s.r; R <= range.e.r; ++R) { @@ -15807,7 +15824,7 @@ function write_ws_xml_data(ws, opts, idx, wb) { rr = encode_row(R); for(C = range.s.c; C <= range.e.c; ++C) { ref = cols[C] + rr; - var _cell = dense ? (ws[R]||[])[C]: ws[ref]; + var _cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(_cell === undefined) continue; if((cell = write_ws_xml_cell(_cell, ref, ws, opts, idx, wb)) != null) r.push(cell); } @@ -15915,6 +15932,7 @@ ws['!links'].forEach(function(l) { } if((relc = l[1].Target.indexOf("#")) > -1) rel.location = escapexml(l[1].Target.slice(relc+1)); if(l[1].Tooltip) rel.tooltip = escapexml(l[1].Tooltip); + rel.display = l[1].display; o[o.length] = writextag("hyperlink",null,rel); }); o[o.length] = ""; @@ -16002,12 +16020,13 @@ function write_BrtRowHdr(R, range, ws) { o.l += 4; var caddr = {r:R, c:0}; + var dense = ws["!data"] != null; for(var i = 0; i < 16; ++i) { if((range.s.c > ((i+1) << 10)) || (range.e.c < (i << 10))) continue; var first = -1, last = -1; for(var j = (i<<10); j < ((i+1)<<10); ++j) { caddr.c = j; - var cell = Array.isArray(ws) ? (ws[caddr.r]||[])[caddr.c] : ws[encode_cell(caddr)]; + var cell = dense ? (ws["!data"][caddr.r]||[])[caddr.c] : ws[encode_cell(caddr)]; if(cell) { if(first < 0) first = j; last = j; } } if(first < 0) continue; @@ -16219,9 +16238,10 @@ function parse_BrtCellSt(data) { return [cell, value, 'str']; } function write_BrtCellSt(cell, ncell, o) { + var data = cell.v == null ? "" : String(cell.v); if(o == null) o = new_buf(12 + 4 * cell.v.length); write_XLSBCell(ncell, o); - write_XLWideString(cell.v, o); + write_XLWideString(data, o); return o.length > o.l ? o.slice(0, o.l) : o; } function parse_BrtShortSt(data) { @@ -16230,9 +16250,10 @@ function parse_BrtShortSt(data) { return [cell, value, 'str']; } function write_BrtShortSt(cell, ncell, o) { - if(o == null) o = new_buf(8 + 4 * cell.v.length); + var data = cell.v == null ? "" : String(cell.v); + if(o == null) o = new_buf(8 + 4 * data.length); write_XLSBShortCell(ncell, o); - write_XLWideString(cell.v, o); + write_XLWideString(data, o); return o.length > o.l ? o.slice(0, o.l) : o; } @@ -16468,7 +16489,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { var opts = _opts || {}; if(!rels) rels = {'!id':{}}; if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var s = (opts.dense ? [] : {}); + var s = ({}); if(opts.dense) s["!data"] = []; var ref; var refguess = {s: {r:2000000, c:2000000}, e: {r:0, c:0} }; @@ -16544,7 +16565,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { } if((cf = styles.CellXf[val[0].iStyleRef])) safe_format(p,cf.numFmtId,null,opts, themes, styles); C = val[0].c == -1 ? C + 1 : val[0].c; - if(opts.dense) { if(!s[R]) s[R] = []; s[R][C] = p; } + if(opts.dense) { if(!s["!data"][R]) s["!data"][R] = []; s["!data"][R][C] = p; } else s[encode_col(C) + rr] = p; if(opts.cellFormula) { af = false; @@ -16577,7 +16598,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { if(!opts.sheetStubs || pass) break; p = ({t:'z',v:void 0}); C = val[0].c == -1 ? C + 1 : val[0].c; - if(opts.dense) { if(!s[R]) s[R] = []; s[R][C] = p; } + if(opts.dense) { if(!s["!data"][R]) s["!data"][R] = []; s["!data"][R][C] = p; } else s[encode_col(C) + rr] = p; if(refguess.s.r > row.r) refguess.s.r = row.r; if(refguess.s.c > C) refguess.s.c = C; @@ -16608,11 +16629,11 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { } for(R=val.rfx.s.r;R<=val.rfx.e.r;++R) for(C=val.rfx.s.c;C<=val.rfx.e.c;++C) { if(opts.dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:'z',v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:'z',v:undefined}; + s["!data"][R][C].l = val; } else { - addr = encode_cell({c:C,r:R}); + addr = encode_col(C) + encode_row(R); if(!s[addr]) s[addr] = {t:'z',v:undefined}; s[addr].l = val; } @@ -16622,14 +16643,14 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { case 0x01AA: /* 'BrtArrFmla' */ if(!opts.cellFormula) break; arrayf.push(val); - cell = ((opts.dense ? s[R][C] : s[encode_col(C) + rr])); + cell = ((opts.dense ? s["!data"][R][C] : s[encode_col(C) + rr])); cell.f = stringify_formula(val[1], refguess, {r:row.r, c:C}, supbooks, opts); cell.F = encode_range(val[0]); break; case 0x01AB: /* 'BrtShrFmla' */ if(!opts.cellFormula) break; sharedf[encode_cell(val[0].s)] = val[1]; - cell = (opts.dense ? s[R][C] : s[encode_col(C) + rr]); + cell = (opts.dense ? s["!data"][R][C] : s[encode_col(C) + rr]); cell.f = stringify_formula(val[1], refguess, {r:row.r, c:C}, supbooks, opts); break; @@ -16784,7 +16805,7 @@ function write_ws_bin_cell(ba, cell, R, C, opts, ws, last_seen) { switch(cell.t) { case 's': case 'str': if(opts.bookSST) { - vv = get_sst_id(opts.Strings, (cell.v), opts.revStrings); + vv = get_sst_id(opts.Strings, (cell.v == null ? "" : String(cell.v)), opts.revStrings); o.t = "s"; o.v = vv; if(last_seen) write_record(ba, 0x0012 /* BrtShortIsst */, write_BrtShortIsst(cell, o)); else write_record(ba, 0x0007 /* BrtCellIsst */, write_BrtCellIsst(cell, o)); @@ -16822,7 +16843,7 @@ function write_ws_bin_cell(ba, cell, R, C, opts, ws, last_seen) { function write_CELLTABLE(ba, ws, idx, opts) { var range = safe_decode_range(ws['!ref'] || "A1"), ref, rr = "", cols = []; write_record(ba, 0x0091 /* BrtBeginSheetData */); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cap = range.e.r; if(ws['!rows']) cap = Math.max(range.e.r, ws['!rows'].length - 1); for(var R = range.s.r; R <= cap; ++R) { @@ -16835,7 +16856,7 @@ function write_CELLTABLE(ba, ws, idx, opts) { /* *16384CELL */ if(R === range.s.r) cols[C] = encode_col(C); ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; if(!cell) { last_seen = false; continue; } /* write cell */ last_seen = write_ws_bin_cell(ba, cell, R, C, opts, ws, last_seen); @@ -17026,7 +17047,10 @@ function parse_chart(data, name, opts, rels, wb, csheet) { refguess.e.c = C; col = encode_col(C); cache[0].forEach(function(n,i) { - cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; + if(cs["!data"]) { + if(!cs["!data"][i]) cs["!data"][i] = []; + cs["!data"][i][C] = {t:'n', v:n, z:cache[1] }; + } else cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; R = i; }); if(refguess.e.r < R) refguess.e.r = R; @@ -18154,7 +18178,7 @@ function parse_xlml_xml(d, _opts) { var Rn; var state = [], tmp; if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var sheets = {}, sheetnames = [], cursheet = (opts.dense ? [] : {}), sheetname = ""; + var sheets = {}, sheetnames = [], cursheet = ({}), sheetname = ""; if(opts.dense) cursheet["!data"] = []; var cell = ({}), row = {};// eslint-disable-line no-unused-vars var dtag = xlml_parsexmltag(''), didx = 0; var c = 0, r = 0; @@ -18187,8 +18211,8 @@ function parse_xlml_xml(d, _opts) { if(comments.length > 0) cell.c = comments; if((!opts.sheetRows || opts.sheetRows > r) && cell.v !== void 0) { if(opts.dense) { - if(!cursheet[r]) cursheet[r] = []; - cursheet[r][c] = cell; + if(!cursheet["!data"][r]) cursheet["!data"][r] = []; + cursheet["!data"][r][c] = cell; } else cursheet[encode_col(c) + encode_row(r)] = cell; } if(cell.HRef) { @@ -18207,8 +18231,8 @@ for(var cma = c; cma <= cc; ++cma) { for(var cmd = r; cmd <= rr; ++cmd) { if(cma > c || cmd > r) { if(opts.dense) { - if(!cursheet[cmd]) cursheet[cmd] = []; - cursheet[cmd][cma] = {t:'z'}; + if(!cursheet["!data"][cmd]) cursheet["!data"][cmd] = []; + cursheet["!data"][cmd][cma] = {t:'z'}; } else cursheet[encode_col(cma) + encode_row(cmd)] = {t:'z'}; } } @@ -18267,7 +18291,7 @@ for(var cma = c; cma <= cc; ++cma) { state.push([Rn[3], false]); tmp = xlml_parsexmltag(Rn[0]); sheetname = unescapexml(tmp.Name); - cursheet = (opts.dense ? [] : {}); + cursheet = ({}); if(opts.dense) cursheet["!data"] = []; merges = []; arrayf = []; rowinfo = []; @@ -19119,7 +19143,7 @@ function write_ws_xlml_table(ws, opts, idx, wb) { if(n.hidden) k['ss:Hidden']="1"; o.push(writextag("Column",null,k)); }); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = range.s.r; R <= range.e.r; ++R) { var row = [write_ws_xlml_row(R, (ws['!rows']||[])[R])]; for(var C = range.s.c; C <= range.e.c; ++C) { @@ -19134,7 +19158,7 @@ function write_ws_xlml_table(ws, opts, idx, wb) { } if(skip) continue; var addr = {r:R,c:C}; - var ref = encode_cell(addr), cell = dense ? (ws[R]||[])[C] : ws[ref]; + var ref = encode_col(C) + encode_row(R), cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; row.push(write_ws_xlml_cell(cell, ref, ws, opts, idx, wb, addr)); } row.push("
"); @@ -19294,7 +19318,7 @@ function parse_workbook(blob, options) { var wb = ({opts:{}}); var Sheets = {}; if(DENSE != null && options.dense == null) options.dense = DENSE; - var out = ((options.dense ? [] : {})); + var out = ({}); if(options.dense) out["!data"] = []; var Directory = {}; var range = ({}); var last_formula = null; @@ -19347,8 +19371,8 @@ function parse_workbook(blob, options) { } { if(options.dense) { - if(!out[cell.r]) out[cell.r] = []; - out[cell.r][cell.c] = line; + if(!out["!data"][cell.r]) out["!data"][cell.r] = []; + out["!data"][cell.r][cell.c] = line; } else out[last_cell] = line; } }; @@ -19512,7 +19536,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; Workbook.Sheets.push(wsprops); } if(cur_sheet === "") Preamble = out; else Sheets[cur_sheet] = out; - out = ((options.dense ? [] : {})); + out = ({}); if(options.dense) out["!data"] = []; } break; case 0x0009: case 0x0209: case 0x0409: case 0x0809 /* BOF */: { if(opts.biff === 8) opts.biff = { @@ -19532,7 +19556,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; if(val.BIFFVer == 0 && val.dt == 0x1000) { opts.biff = 5; seen_codepage = true; set_cp(opts.codepage = 28591); } if(opts.biff == 8 && val.BIFFVer == 0 && val.dt == 16) opts.biff = 2; if(file_depth++) break; - out = ((options.dense ? [] : {})); + out = ({}); if(options.dense) out["!data"] = []; if(opts.biff < 8 && !seen_codepage) { seen_codepage = true; set_cp(opts.codepage = options.codepage || 1252); } @@ -19555,7 +19579,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; wsprops = {Hidden:(Directory[s]||{hs:0}).hs, name:cur_sheet }; } break; case 0x0203 /* Number */: case 0x0003 /* BIFF2NUM */: case 0x0002 /* BIFF2INT */: { - if(out["!type"] == "chart") if(options.dense ? (out[val.r]||[])[val.c]: out[encode_cell({c:val.c, r:val.r})]) ++val.c; + if(out["!type"] == "chart") if(options.dense ? (out["!data"][val.r]||[])[val.c]: out[encode_col(val.c) + encode_row(val.r)]) ++val.c; temp_val = ({ixfe: val.ixfe, XF: XFs[val.ixfe]||{}, v:val.val, t:'n'}); if(BIFF2Fmt > 0) temp_val.z = BIFF2FmtTable[(temp_val.ixfe>>8) & 0x3F]; safe_format_xf(temp_val, options, wb.opts.Date1904); @@ -19592,7 +19616,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; var _fr = _f[0][0][1][0], _fc = _f[0][0][1][1]; var _fe = encode_cell({r:_fr, c:_fc}); if(sharedf[_fe]) temp_val.f = ""+stringify_formula(val.formula,range,val.cell,supbooks, opts); - else temp_val.F = ((options.dense ? (out[_fr]||[])[_fc]: out[_fe]) || {}).F; + else temp_val.F = ((options.dense ? (out["!data"][_fr]||[])[_fc]: out[_fe]) || {}).F; } else temp_val.f = ""+stringify_formula(val.formula,range,val.cell,supbooks, opts); } if(BIFF2Fmt > 0) temp_val.z = BIFF2FmtTable[(temp_val.ixfe>>8) & 0x3F]; @@ -19617,7 +19641,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; case 0x0021: case 0x0221 /* Array */: { arrayf.push(val); var _arraystart = encode_cell(val[0].s); - cc = options.dense ? (out[val[0].s.r]||[])[val[0].s.c] : out[_arraystart]; + cc = options.dense ? (out["!data"][val[0].s.r]||[])[val[0].s.c] : out[_arraystart]; if(options.cellFormula && cc) { if(!last_formula) break; /* technically unreachable */ if(!_arraystart || !cc) break; @@ -19631,7 +19655,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; /* TODO: capture range */ if(!last_formula) break; /* technically unreachable */ sharedf[encode_cell(last_formula.cell)]= val[0]; - cc = options.dense ? (out[last_formula.cell.r]||[])[last_formula.cell.c] : out[encode_cell(last_formula.cell)]; + cc = options.dense ? (out["!data"][last_formula.cell.r]||[])[last_formula.cell.c] : out[encode_cell(last_formula.cell)]; (cc||{}).f = ""+stringify_formula(val[0], range, lastcell, supbooks, opts); } } break; @@ -19696,25 +19720,25 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; case 0x01b8 /* HLink */: { for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR) for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC) { - cc = options.dense ? (out[rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; + cc = options.dense ? (out["!data"][rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; if(cc) cc.l = val[1]; } } break; case 0x0800 /* HLinkTooltip */: { for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR) for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC) { - cc = options.dense ? (out[rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; + cc = options.dense ? (out["!data"][rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; if(cc && cc.l) cc.l.Tooltip = val[1]; } } break; case 0x001c /* Note */: { if(opts.biff <= 5 && opts.biff >= 2) break; /* TODO: BIFF5 */ - cc = options.dense ? (out[val[0].r]||[])[val[0].c] : out[encode_cell(val[0])]; + cc = options.dense ? (out["!data"][val[0].r]||[])[val[0].c] : out[encode_cell(val[0])]; var noteobj = objects[val[2]]; if(!cc) { if(options.dense) { - if(!out[val[0].r]) out[val[0].r] = []; - cc = out[val[0].r][val[0].c] = ({t:"z"}); + if(!out["!data"][val[0].r]) out["!data"][val[0].r] = []; + cc = out["!data"][val[0].r][val[0].c] = ({t:"z"}); } else { cc = out[encode_cell(val[0])] = ({t:"z"}); } @@ -21316,27 +21340,27 @@ function write_ws_biff2_cell(ba, cell, R, C) { case 'b': case 'e': write_biff_rec(ba, 0x0005, write_BIFF2BERR(R, C, cell.v, cell.t)); return; /* TODO: codepage, sst */ case 's': case 'str': - write_biff_rec(ba, 0x0004, write_BIFF2LABEL(R, C, (cell.v||"").slice(0,255))); + write_biff_rec(ba, 0x0004, write_BIFF2LABEL(R, C, cell.v == null ? "" : String(cell.v).slice(0,255))); return; } write_biff_rec(ba, 0x0001, write_BIFF2Cell(null, R, C)); } function write_ws_biff2(ba, ws, idx, opts) { - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var range = safe_decode_range(ws['!ref'] || "A1"), ref, rr = "", cols = []; if(range.e.c > 0xFF || range.e.r > 0x3FFF) { if(opts.WTF) throw new Error("Range " + (ws['!ref'] || "A1") + " exceeds format limit A1:IV16384"); range.e.c = Math.min(range.e.c, 0xFF); range.e.r = Math.min(range.e.c, 0x3FFF); - ref = encode_range(range); } + var row = []; + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= range.e.r; ++R) { + if(dense) row = ws["!data"][R] || []; rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); - ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + for(C = range.s.c; C <= range.e.c; ++C) { + var cell = dense ? row[C] : ws[cols[C] + rr]; if(!cell) continue; /* write cell */ write_ws_biff2_cell(ba, cell, R, C, opts); @@ -21347,7 +21371,6 @@ function write_ws_biff2(ba, ws, idx, opts) { /* Based on test files */ function write_biff2_buf(wb, opts) { var o = opts || {}; - if(DENSE != null && o.dense == null) o.dense = DENSE; var ba = buf_array(); var idx = 0; for(var i=0;i/g, ""); var mtch = str.match(/"); @@ -21699,7 +21724,7 @@ function html_to_sheet(str, _opts) { if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}); o.z = opts.dateNF || table_fmt[14]; } - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = o; } + if(dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = o; } else ws[encode_cell({r:R, c:C})] = o; C += CS; } @@ -21712,6 +21737,7 @@ function make_html_row(ws, r, R, o) { var M = (ws['!merges'] ||[]); var oo = []; var sp = ({}); + var dense = ws["!data"] != null; for(var C = r.s.c; C <= r.e.c; ++C) { var RS = 0, CS = 0; for(var j = 0; j < M.length; ++j) { @@ -21721,8 +21747,8 @@ function make_html_row(ws, r, R, o) { RS = M[j].e.r - M[j].s.r + 1; CS = M[j].e.c - M[j].s.c + 1; break; } if(RS < 0) continue; - var coord = encode_cell({r:R,c:C}); - var cell = o.dense ? (ws[R]||[])[C] : ws[coord]; + var coord = encode_col(C) + encode_row(R); + var cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; /* TODO: html entities */ var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; sp = ({}); @@ -21770,7 +21796,6 @@ function sheet_to_html(ws, opts/*, wb:?Workbook*/) { var footer = o.footer != null ? o.footer : HTML_END; var out = [header]; var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); out.push(make_html_preamble(ws, r, o)); for(var R = r.s.r; R <= r.e.r; ++R) out.push(make_html_row(ws, r, R, o)); out.push("
" + footer); @@ -21785,7 +21810,7 @@ function sheet_add_dom(ws, table, _opts) { } var opts = _opts || {}; - if(DENSE != null) opts.dense = DENSE; + var dense = ws["!data"] != null; var or_R = 0, or_C = 0; if(opts.origin != null) { if(typeof opts.origin == 'number') or_R = opts.origin; @@ -21850,7 +21875,7 @@ function sheet_add_dom(ws, table, _opts) { l = Aelts[Aelti].getAttribute("href"); if(l.charAt(0) != "#") break; } if(l && l.charAt(0) != "#" && l.slice(0, 11).toLowerCase() != 'javascript:') o.l = ({ Target: l }); - if(opts.dense) { if(!ws[R + or_R]) ws[R + or_R] = []; ws[R + or_R][C + or_C] = o; } + if(dense) { if(!ws["!data"][R + or_R]) ws["!data"][R + or_R] = []; ws["!data"][R + or_R][C + or_C] = o; } else ws[encode_cell({c:C + or_C, r:R + or_R})] = o; if(range.e.c < C + or_C) range.e.c = C + or_C; C += CS; @@ -21866,7 +21891,7 @@ function sheet_add_dom(ws, table, _opts) { function parse_dom_table(table, _opts) { var opts = _opts || {}; - var ws = opts.dense ? ([]) : ({}); + var ws = ({}); if(opts.dense) ws["!data"] = []; return sheet_add_dom(ws, table, _opts); } @@ -22139,7 +22164,7 @@ function parse_content_xml(d, _opts, _nfm) { var sheetag; var rowtag; var Sheets = {}, SheetNames = []; - var ws = opts.dense ? ([]) : ({}); + var ws = ({}); if(opts.dense) ws["!data"] = []; var Rn, q; var ctag = ({value:""}); var textp = "", textpidx = 0, textptag; @@ -22183,7 +22208,7 @@ function parse_content_xml(d, _opts, _nfm) { sheetag = parsexmltag(Rn[0], false); R = C = -1; range.s.r = range.s.c = 10000000; range.e.r = range.e.c = 0; - ws = opts.dense ? ([]) : ({}); merges = []; + ws = ({}); if(opts.dense) ws["!data"] = []; merges = []; rowinfo = []; intable = true; } @@ -22203,7 +22228,7 @@ function parse_content_xml(d, _opts, _nfm) { case 'covered-table-cell': // 9.1.5 if(Rn[1] !== '/') ++C; if(opts.sheetStubs) { - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = {t:'z'}; } + if(opts.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = {t:'z'}; } else ws[encode_cell({r:R,c:C})] = {t:'z'}; } textp = ""; textR = []; @@ -22219,10 +22244,10 @@ function parse_content_xml(d, _opts, _nfm) { if((ctag['数据类型'] || ctag['value-type']) == "string") { q.t = "s"; q.v = unescapexml(ctag['string-value'] || ""); if(opts.dense) { - if(!ws[R]) ws[R] = []; - ws[R][C] = q; + if(!ws["!data"][R]) ws["!data"][R] = []; + ws["!data"][R][C] = q; } else { - ws[encode_cell({r:R,c:C})] = q; + ws[encode_col(C) + encode_row(R)] = q; } } C+= colpeat-1; @@ -22299,9 +22324,9 @@ function parse_content_xml(d, _opts, _nfm) { for(var rpt = 0; rpt < rowpeat; ++rpt) { colpeat = parseInt(ctag['number-columns-repeated']||"1", 10); if(opts.dense) { - if(!ws[R + rpt]) ws[R + rpt] = []; - ws[R + rpt][C] = rpt == 0 ? q : dup(q); - while(--colpeat > 0) ws[R + rpt][C + colpeat] = dup(q); + if(!ws["!data"][R + rpt]) ws["!data"][R + rpt] = []; + ws["!data"][R + rpt][C] = rpt == 0 ? q : dup(q); + while(--colpeat > 0) ws["!data"][R + rpt][C + colpeat] = dup(q); } else { ws[encode_cell({r:R + rpt,c:C})] = q; while(--colpeat > 0) ws[encode_cell({r:R + rpt,c:C + colpeat})] = dup(q); @@ -22886,7 +22911,7 @@ var write_content_ods = /* @__PURE__ */(function() { o.push(' \n'); var R=0,C=0, range = decode_range(ws['!ref']||"A1"); var marr = ws['!merges'] || [], mi = 0; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; if(ws["!cols"]) { for(C = 0; C <= range.e.c; ++C) o.push(' \n'); } @@ -22912,7 +22937,7 @@ var write_content_ods = /* @__PURE__ */(function() { break; } if(skip) { o.push(covered_cell_xml); continue; } - var ref = encode_cell({r:R, c:C}), cell = dense ? (ws[R]||[])[C]: ws[ref]; + var ref = encode_cell({r:R, c:C}), cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(cell && cell.f) { ct['table:formula'] = escapexml(csf_to_ods_formula(cell.f)); if(cell.F) { @@ -23022,9 +23047,10 @@ var write_content_ods = /* @__PURE__ */(function() { var nfi = 69; wb.SheetNames.map(function(n) { return wb.Sheets[n]; }).forEach(function(ws) { if(!ws) return; + var dense = (ws["!data"] != null); var range = decode_range(ws["!ref"]); for(var R = 0; R <= range.e.r; ++R) for(var C = 0; C <= range.e.c; ++C) { - var c = Array.isArray(ws) ? (ws[R]||[])[C] : ws[encode_cell({r:R,c:C})]; + var c = dense ? (ws["!data"][R]||[])[C] : ws[encode_cell({r:R,c:C})]; if(!c || !c.z || c.z.toLowerCase() == "general") continue; if(!nfs[c.z]) { var out = write_number_format_ods(c.z, "N" + nfi); @@ -23182,29 +23208,22 @@ function u8str(u8) { function stru8(str) { return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); } -function u8contains(body, search) { - var L = body.indexOf(search[0]); - if (L == -1) - return false; - outer: - for (; L <= body.length - search.length; ++L) { - for (var j = 0; j < search.length; ++j) - if (body[L + j] != search[j]) - continue outer; - return true; - } - return false; -} function u8concat(u8a) { - var len = u8a.reduce(function(acc, x) { - return acc + x.length; - }, 0); + var len = 0; + for (var i = 0; i < u8a.length; ++i) + len += u8a[i].length; var out = new Uint8Array(len); var off = 0; - u8a.forEach(function(u8) { - out.set(u8, off); - off += u8.length; - }); + for (i = 0; i < u8a.length; ++i) { + var u8 = u8a[i], L = u8.length; + if (L < 250) { + for (var j = 0; j < L; ++j) + out[off++] = u8[j]; + } else { + out.set(u8, off); + off += L; + } + } return out; } function popcnt(x) { @@ -23229,7 +23248,7 @@ function writeDecimal128LE(buf, offset, value) { buf[offset + 15] |= value >= 0 ? 0 : 128; } function parse_varint49(buf, ptr) { - var l = ptr ? ptr[0] : 0; + var l = ptr.l; var usz = buf[l] & 127; varint: if (buf[l++] >= 128) { @@ -23255,8 +23274,7 @@ function parse_varint49(buf, ptr) { if (buf[l++] < 128) break varint; } - if (ptr) - ptr[0] = l; + ptr.l = l; return usz; } function write_varint49(v) { @@ -23297,9 +23315,9 @@ function write_varint49(v) { return usz[subarray](0, L); } function parse_packed_varints(buf) { - var ptr = [0]; + var ptr = { l: 0 }; var out = []; - while (ptr[0] < buf.length) + while (ptr.l < buf.length) out.push(parse_varint49(buf, ptr)); return out; } @@ -23325,51 +23343,83 @@ function varint_to_i32(buf) { } return i32; } +function varint_to_u64(buf) { + var l = 0, lo = buf[l] & 127, hi = 0; + varint: + if (buf[l++] >= 128) { + lo |= (buf[l] & 127) << 7; + if (buf[l++] < 128) + break varint; + lo |= (buf[l] & 127) << 14; + if (buf[l++] < 128) + break varint; + lo |= (buf[l] & 127) << 21; + if (buf[l++] < 128) + break varint; + lo |= (buf[l] & 127) << 28; + hi = buf[l] >> 4 & 7; + if (buf[l++] < 128) + break varint; + hi |= (buf[l] & 127) << 3; + if (buf[l++] < 128) + break varint; + hi |= (buf[l] & 127) << 10; + if (buf[l++] < 128) + break varint; + hi |= (buf[l] & 127) << 17; + if (buf[l++] < 128) + break varint; + hi |= (buf[l] & 127) << 24; + if (buf[l++] < 128) + break varint; + hi |= (buf[l] & 127) << 31; + } + return [lo >>> 0, hi >>> 0]; +} function parse_shallow(buf) { - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { - var off = ptr[0]; + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { + var off = ptr.l; var num = parse_varint49(buf, ptr); var type = num & 7; - num = Math.floor(num / 8); - var len = 0; - var res; - if (num == 0) - break; + num = num / 8 | 0; + var data; + var l = ptr.l; switch (type) { case 0: { - var l = ptr[0]; - while (buf[ptr[0]++] >= 128) + while (buf[l++] >= 128) ; - res = buf[subarray](l, ptr[0]); + data = buf[subarray](ptr.l, l); + ptr.l = l; + } + break; + case 1: + { + data = buf[subarray](l, l + 8); + ptr.l = l + 8; + } + break; + case 2: + { + var len = parse_varint49(buf, ptr); + data = buf[subarray](ptr.l, ptr.l + len); + ptr.l += len; } break; case 5: - len = 4; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; + { + data = buf[subarray](l, l + 4); + ptr.l = l + 4; + } break; - case 1: - len = 8; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 2: - len = parse_varint49(buf, ptr); - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 3: - case 4: default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { data: res, type: type }; + var v = { data: data, type: type }; if (out[num] == null) - out[num] = [v]; - else - out[num].push(v); + out[num] = []; + out[num].push(v); } return out; } @@ -23396,11 +23446,11 @@ function mappa(data, cb) { } function parse_iwa_file(buf) { var _a; - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { var len = parse_varint49(buf, ptr); - var ai = parse_shallow(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + var ai = parse_shallow(buf[subarray](ptr.l, ptr.l + len)); + ptr.l += len; var res = { id: varint_to_i32(ai[1][0].data), messages: [] @@ -23410,9 +23460,9 @@ function parse_iwa_file(buf) { var fl = varint_to_i32(mi[3][0].data); res.messages.push({ meta: mi, - data: buf[subarray](ptr[0], ptr[0] + fl) + data: buf[subarray](ptr.l, ptr.l + fl) }); - ptr[0] += fl; + ptr.l += fl; }); if ((_a = ai[3]) == null ? void 0 : _a[0]) res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; @@ -23448,45 +23498,46 @@ function write_iwa_file(ias) { function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); - var ptr = [0]; + var ptr = { l: 0 }; var usz = parse_varint49(buf, ptr); var chunks = []; - while (ptr[0] < buf.length) { - var tag = buf[ptr[0]] & 3; + var l = ptr.l; + while (l < buf.length) { + var tag = buf[l] & 3; if (tag == 0) { - var len = buf[ptr[0]++] >> 2; + var len = buf[l++] >> 2; if (len < 60) ++len; else { var c = len - 59; - len = buf[ptr[0]]; + len = buf[l]; if (c > 1) - len |= buf[ptr[0] + 1] << 8; + len |= buf[l + 1] << 8; if (c > 2) - len |= buf[ptr[0] + 2] << 16; + len |= buf[l + 2] << 16; if (c > 3) - len |= buf[ptr[0] + 3] << 24; + len |= buf[l + 3] << 24; len >>>= 0; len++; - ptr[0] += c; + l += c; } - chunks.push(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + chunks.push(buf[subarray](l, l + len)); + l += len; continue; } else { var offset = 0, length = 0; if (tag == 1) { - length = (buf[ptr[0]] >> 2 & 7) + 4; - offset = (buf[ptr[0]++] & 224) << 3; - offset |= buf[ptr[0]++]; + length = (buf[l] >> 2 & 7) + 4; + offset = (buf[l++] & 224) << 3; + offset |= buf[l++]; } else { - length = (buf[ptr[0]++] >> 2) + 1; + length = (buf[l++] >> 2) + 1; if (tag == 2) { - offset = buf[ptr[0]] | buf[ptr[0] + 1] << 8; - ptr[0] += 2; + offset = buf[l] | buf[l + 1] << 8; + l += 2; } else { - offset = (buf[ptr[0]] | buf[ptr[0] + 1] << 8 | buf[ptr[0] + 2] << 16 | buf[ptr[0] + 3] << 24) >>> 0; - ptr[0] += 4; + offset = (buf[l] | buf[l + 1] << 8 | buf[l + 2] << 16 | buf[l + 3] << 24) >>> 0; + l += 4; } } if (offset == 0) @@ -23518,16 +23569,15 @@ function parse_snappy_chunk(type, buf) { if (length) chunks.push(chunks[j][subarray](0, length)); } - if (chunks.length > 100) + if (chunks.length > 25) chunks = [u8concat(chunks)]; } } - if (chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0) != usz) - throw new Error("Unexpected length: ".concat(chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0), " != ").concat(usz)); + var clen = 0; + for (var u8i = 0; u8i < chunks.length; ++u8i) + clen += chunks[u8i].length; + if (clen != usz) + throw new Error("Unexpected length: ".concat(clen, " != ").concat(usz)); return chunks; } function decompress_iwa_file(buf) { @@ -23544,7 +23594,7 @@ function decompress_iwa_file(buf) { } if (l !== buf.length) throw new Error("data is not a valid framed stream!"); - return u8concat(out); + return out.length == 1 ? out[0] : u8concat(out); } function compress_iwa_file(buf) { var out = []; @@ -23591,12 +23641,12 @@ function numbers_format_cell(cell, t, flags, ofmt, nfmt) { var fmt = ver >= 5 ? nfmt : ofmt; dur: if (flags & (ver > 4 ? 8 : 4) && cell.t == "n" && ctype == 7) { - var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? parse_varint49(fmt[7][0].data) : -1; + var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? varint_to_i32(fmt[7][0].data) : -1; if (dstyle == -1) break dur; - var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? parse_varint49(fmt[15][0].data) : -1; - var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? parse_varint49(fmt[16][0].data) : -1; - var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? parse_varint49(fmt[40][0].data) : -1; + var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? varint_to_i32(fmt[15][0].data) : -1; + var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? varint_to_i32(fmt[16][0].data) : -1; + var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? varint_to_i32(fmt[40][0].data) : -1; var d = cell.v, dd = d; autodur: if (auto) { @@ -23861,10 +23911,12 @@ function write_new_storage(cell, sst) { l += 8; break; case "s": - if (sst.indexOf(cell.v) == -1) - throw new Error("Value ".concat(cell.v, " missing from SST!")); + var s = cell.v == null ? "" : String(cell.v); + var isst = sst.indexOf(s); + if (isst == -1) + sst[isst = sst.length] = s; out[1] = 3; - dv.setUint32(l, sst.indexOf(cell.v), true); + dv.setUint32(l, isst, true); flags |= 8; l += 4; break; @@ -23891,10 +23943,12 @@ function write_old_storage(cell, sst) { l += 8; break; case "s": - if (sst.indexOf(cell.v) == -1) - throw new Error("Value ".concat(cell.v, " missing from SST!")); + var s = cell.v == null ? "" : String(cell.v); + var isst = sst.indexOf(s); + if (isst == -1) + sst[isst = sst.length] = s; out[2] = 3; - dv.setUint32(l, sst.indexOf(cell.v), true); + dv.setUint32(l, isst, true); flags |= 16; l += 4; break; @@ -23920,7 +23974,7 @@ function parse_cell_storage(buf, lut) { } function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); - return parse_varint49(pb[1][0].data); + return varint_to_i32(pb[1][0].data); } function write_TSP_Reference(idx) { return write_shallow([ @@ -23928,6 +23982,22 @@ function write_TSP_Reference(idx) { [{ type: 0, data: write_varint49(idx) }] ]); } +function numbers_add_oref(iwa, ref) { + var _a; + var orefs = ((_a = iwa.messages[0].meta[5]) == null ? void 0 : _a[0]) ? parse_packed_varints(iwa.messages[0].meta[5][0].data) : []; + var orefidx = orefs.indexOf(ref); + if (orefidx == -1) { + orefs.push(ref); + iwa.messages[0].meta[5] = [{ type: 2, data: write_packed_varints(orefs) }]; + } +} +function numbers_del_oref(iwa, ref) { + var _a; + var orefs = ((_a = iwa.messages[0].meta[5]) == null ? void 0 : _a[0]) ? parse_packed_varints(iwa.messages[0].meta[5][0].data) : []; + iwa.messages[0].meta[5] = [{ type: 2, data: write_packed_varints(orefs.filter(function(r) { + return r != ref; + })) }]; +} function parse_TST_TableDataList(M, root) { var pb = parse_shallow(root.data); var type = varint_to_i32(pb[1][0].data); @@ -23935,6 +24005,8 @@ function parse_TST_TableDataList(M, root) { var data = []; (entries || []).forEach(function(entry) { var le = parse_shallow(entry.data); + if (!le[1]) + return; var key = varint_to_i32(le[1][0].data) >>> 0; switch (type) { case 1: @@ -24033,7 +24105,7 @@ function parse_TST_TableModelArchive(M, root, ws) { if (range.e.c < 0) throw new Error("Invalid col varint ".concat(pb[7][0].data)); ws["!ref"] = encode_range(range); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, dws = ws; var store = parse_shallow(pb[4][0].data); var lut = numbers_lut_new(); if ((_a = store[4]) == null ? void 0 : _a[0]) @@ -24058,12 +24130,11 @@ function parse_TST_TableModelArchive(M, root, ws) { var res = parse_cell_storage(buf, lut); if (res) { if (dense) { - if (!ws[_R + R]) - ws[_R + R] = []; - ws[_R + R][C] = res; + if (!dws["!data"][_R + R]) + dws["!data"][_R + R] = []; + dws["!data"][_R + R][C] = res; } else { - var addr = encode_cell({ r: _R + R, c: C }); - ws[addr] = res; + ws[encode_col(C) + encode_row(_R + R)] = res; } } }); @@ -24090,12 +24161,9 @@ function parse_TST_TableModelArchive(M, root, ws) { } function parse_TST_TableInfoArchive(M, root, opts) { var pb = parse_shallow(root.data); - var out; - if (!(opts == null ? void 0 : opts.dense)) - out = { "!ref": "A1" }; - else - out = []; - out["!ref"] = "A1"; + var out = { "!ref": "A1" }; + if (opts == null ? void 0 : opts.dense) + out["!data"] = []; var tableref = M[parse_TSP_Reference(pb[2][0].data)]; var mtype = varint_to_i32(tableref[0].meta[1][0].data); if (mtype != 6001) @@ -24144,7 +24212,7 @@ function parse_TN_DocumentArchive(M, root, opts) { return out; } function parse_numbers_iwa(cfb, opts) { - var _a, _b, _c, _d, _e, _f, _g, _h; + var _a, _b, _c, _d, _e, _f, _g; var M = {}, indices = []; cfb.FullPaths.forEach(function(p) { if (p.match(/\.iwpv2/)) @@ -24174,9 +24242,9 @@ function parse_numbers_iwa(cfb, opts) { }); if (!indices.length) throw new Error("File has no messages"); - if (((_d = (_c = (_b = (_a = M == null ? void 0 : M[1]) == null ? void 0 : _a[0]) == null ? void 0 : _b.meta) == null ? void 0 : _c[1]) == null ? void 0 : _d[0].data) && varint_to_i32(M[1][0].meta[1][0].data) == 1e4) + if (((_c = (_b = (_a = M == null ? void 0 : M[1]) == null ? void 0 : _a[0].meta) == null ? void 0 : _b[1]) == null ? void 0 : _c[0].data) && varint_to_i32(M[1][0].meta[1][0].data) == 1e4) throw new Error("Pages documents are not supported"); - var docroot = ((_h = (_g = (_f = (_e = M == null ? void 0 : M[1]) == null ? void 0 : _e[0]) == null ? void 0 : _f.meta) == null ? void 0 : _g[1]) == null ? void 0 : _h[0].data) && varint_to_i32(M[1][0].meta[1][0].data) == 1 && M[1][0]; + var docroot = ((_g = (_f = (_e = (_d = M == null ? void 0 : M[1]) == null ? void 0 : _d[0]) == null ? void 0 : _e.meta) == null ? void 0 : _f[1]) == null ? void 0 : _g[0].data) && varint_to_i32(M[1][0].meta[1][0].data) == 1 && M[1][0]; if (!docroot) indices.forEach(function(idx) { M[idx].forEach(function(iwam) { @@ -24193,8 +24261,23 @@ function parse_numbers_iwa(cfb, opts) { throw new Error("Cannot find Document root"); return parse_TN_DocumentArchive(M, docroot, opts); } -function write_tile_row(tri, data, SST, wide) { +function write_TST_TileRowInfo(data, SST, wide) { var _a, _b; + var tri = [ + [], + [{ type: 0, data: write_varint49(0) }], + [{ type: 0, data: write_varint49(0) }], + [{ type: 2, data: new Uint8Array([]) }], + [{ type: 2, data: new Uint8Array(Array.from({ length: 510 }, function() { + return 255; + })) }], + [{ type: 0, data: write_varint49(5) }], + [{ type: 2, data: new Uint8Array([]) }], + [{ type: 2, data: new Uint8Array(Array.from({ length: 510 }, function() { + return 255; + })) }], + [{ type: 0, data: write_varint49(1) }] + ]; if (!((_a = tri[6]) == null ? void 0 : _a[0]) || !((_b = tri[7]) == null ? void 0 : _b[0])) throw "Mutation only works on post-BNC storages!"; var cnt = 0; @@ -24234,6 +24317,11 @@ function write_tile_row(tri, data, SST, wide) { _celload = write_old_storage({ t: "b", v: data[C] }, SST); break; default: + if (data[C] instanceof Date) { + celload = write_new_storage({ t: "s", v: data[C].toISOString() }, SST); + _celload = write_old_storage({ t: "s", v: data[C].toISOString() }, SST); + break; + } throw new Error("Unsupported value " + data[C]); } cell_storage.push(celload); @@ -24253,7 +24341,7 @@ function write_tile_row(tri, data, SST, wide) { tri[6][0].data = u8concat(cell_storage); tri[3][0].data = u8concat(_cell_storage); tri[8] = [{ type: 0, data: write_varint49(wide ? 1 : 0) }]; - return cnt; + return tri; } function write_iwam(type, payload) { return { @@ -24292,26 +24380,20 @@ function build_numbers_deps(cfb) { dependents[packet.id] = { deps: [], location: fp, type: varint_to_i32(packet.messages[0].meta[1][0].data) }; }); }); - indices.sort(function(x, y) { - return x - y; - }); - var indices_varint = indices.filter(function(x) { - return x > 1; - }).map(function(x) { - return [x, write_varint49(x)]; - }); cfb.FileIndex.forEach(function(fi) { if (!fi.name.match(/\.iwa/)) return; if (fi.name.match(/OperationStorage/)) return; parse_iwa_file(decompress_iwa_file(fi.content)).forEach(function(ia) { - indices_varint.forEach(function(ivi) { - if (ia.messages.some(function(mess) { - return varint_to_i32(mess.meta[1][0].data) != 11006 && u8contains(mess.data, ivi[1]); - })) { - dependents[ivi[0]].deps.push(ia.id); - } + ia.messages.forEach(function(mess) { + [5, 6].forEach(function(f) { + if (!mess.meta[f]) + return; + mess.meta[f].forEach(function(x) { + dependents[ia.id].deps.push(varint_to_i32(x.data)); + }); + }); }); }); }); @@ -24321,19 +24403,20 @@ function write_numbers_iwa(wb, opts) { if (!opts || !opts.numbers) throw new Error("Must pass a `numbers` option -- check the README"); var cfb = CFB.read(opts.numbers, { type: "base64" }); - var dependents = build_numbers_deps(cfb); - var cfb_DA = CFB.find(cfb, dependents[1].location); - if (!cfb_DA) - throw "Could not find ".concat(dependents[1].location, " in Numbers template"); - var iwa_DA = parse_iwa_file(decompress_iwa_file(cfb_DA.content)); - var docroot = iwa_DA.find(function(packet) { - return packet.id == 1; - }); + var deps = build_numbers_deps(cfb); + var docroot = numbers_iwa_find(cfb, deps, 1); if (docroot == null) throw "Could not find message ".concat(1, " in Numbers template"); var sheetrefs = mappa(parse_shallow(docroot.messages[0].data)[1], parse_TSP_Reference); + if (sheetrefs.length > 1) + throw new Error("Template NUMBERS file must have exactly one sheet"); wb.SheetNames.forEach(function(name, idx) { - return write_numbers_ws(cfb, dependents, wb.Sheets[name], name, idx, sheetrefs[idx]); + if (idx >= 1) { + numbers_add_ws(cfb, deps, idx + 1); + docroot = numbers_iwa_find(cfb, deps, 1); + sheetrefs = mappa(parse_shallow(docroot.messages[0].data)[1], parse_TSP_Reference); + } + write_numbers_ws(cfb, deps, wb.Sheets[name], name, idx, sheetrefs[idx]); }); return cfb; } @@ -24359,9 +24442,364 @@ function numbers_iwa_find(cfb, deps, id) { }); return ainfo; } +function numbers_add_ws(cfb, deps, wsidx) { + var sheetref = -1, newsheetref = -1; + var remap = {}; + numbers_iwa_doit(cfb, deps, 1, function(docroot, arch) { + var doc = parse_shallow(docroot.messages[0].data); + sheetref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[1][0].data); + newsheetref = get_unique_msgid({ deps: [1], location: deps[sheetref].location, type: 2 }, deps); + remap[sheetref] = newsheetref; + numbers_add_oref(docroot, newsheetref); + doc[1].push({ type: 2, data: write_TSP_Reference(newsheetref) }); + var sheet = numbers_iwa_find(cfb, deps, sheetref); + sheet.id = newsheetref; + if (deps[1].location == deps[newsheetref].location) + arch.push(sheet); + else + numbers_iwa_doit(cfb, deps, newsheetref, function(_, x) { + return x.push(sheet); + }); + docroot.messages[0].data = write_shallow(doc); + }); + var tiaref = -1; + numbers_iwa_doit(cfb, deps, newsheetref, function(sheetroot, arch) { + var sa = parse_shallow(sheetroot.messages[0].data); + for (var i = 3; i <= 69; ++i) + delete sa[i]; + var drawables = mappa(sa[2], parse_TSP_Reference); + drawables.forEach(function(n) { + return numbers_del_oref(sheetroot, n); + }); + tiaref = get_unique_msgid({ deps: [newsheetref], location: deps[drawables[0]].location, type: deps[drawables[0]].type }, deps); + numbers_add_oref(sheetroot, tiaref); + remap[drawables[0]] = tiaref; + sa[2] = [{ type: 2, data: write_TSP_Reference(tiaref) }]; + var tia = numbers_iwa_find(cfb, deps, drawables[0]); + tia.id = tiaref; + if (deps[drawables[0]].location == deps[newsheetref].location) + arch.push(tia); + else { + var loc2 = deps[newsheetref].location; + loc2 = loc2.replace(/^Root Entry\//, ""); + loc2 = loc2.replace(/^Index\//, "").replace(/\.iwa$/, ""); + numbers_iwa_doit(cfb, deps, 2, function(ai) { + var mlist = parse_shallow(ai.messages[0].data); + var parentidx = mlist[3].findIndex(function(m) { + var _a, _b; + var mm = parse_shallow(m.data); + if ((_a = mm[3]) == null ? void 0 : _a[0]) + return u8str(mm[3][0].data) == loc2; + if (((_b = mm[2]) == null ? void 0 : _b[0]) && u8str(mm[2][0].data) == loc2) + return true; + return false; + }); + var parent = parse_shallow(mlist[3][parentidx].data); + if (!parent[6]) + parent[6] = []; + parent[6].push({ + type: 2, + data: write_shallow([ + [], + [{ type: 0, data: write_varint49(tiaref) }] + ]) + }); + mlist[3][parentidx].data = write_shallow(parent); + ai.messages[0].data = write_shallow(mlist); + }); + numbers_iwa_doit(cfb, deps, tiaref, function(_, x) { + return x.push(tia); + }); + } + sheetroot.messages[0].data = write_shallow(sa); + }); + var tmaref = -1; + numbers_iwa_doit(cfb, deps, tiaref, function(tiaroot, arch) { + var tia = parse_shallow(tiaroot.messages[0].data); + var da = parse_shallow(tia[1][0].data); + for (var i = 3; i <= 69; ++i) + delete da[i]; + var dap = parse_TSP_Reference(da[2][0].data); + da[2][0].data = write_TSP_Reference(remap[dap]); + tia[1][0].data = write_shallow(da); + var oldtmaref = parse_TSP_Reference(tia[2][0].data); + numbers_del_oref(tiaroot, oldtmaref); + tmaref = get_unique_msgid({ deps: [tiaref], location: deps[oldtmaref].location, type: deps[oldtmaref].type }, deps); + numbers_add_oref(tiaroot, tmaref); + remap[oldtmaref] = tmaref; + tia[2][0].data = write_TSP_Reference(tmaref); + var tma = numbers_iwa_find(cfb, deps, oldtmaref); + tma.id = tmaref; + if (deps[tiaref].location == deps[tmaref].location) + arch.push(tma); + else + numbers_iwa_doit(cfb, deps, tmaref, function(_, x) { + return x.push(tma); + }); + tiaroot.messages[0].data = write_shallow(tia); + }); + var loc = deps[tmaref].location; + loc = loc.replace(/^Root Entry\//, ""); + loc = loc.replace(/^Index\//, "").replace(/\.iwa$/, ""); + numbers_iwa_doit(cfb, deps, tmaref, function(tmaroot, arch) { + var _a, _b; + var tma = parse_shallow(tmaroot.messages[0].data); + var uuid = u8str(tma[1][0].data), new_uuid = uuid.replace(/-[A-Z0-9]*/, "-".concat(wsidx.toString(16).padStart(4, "0"))); + tma[1][0].data = stru8(new_uuid); + [12, 13, 29, 31, 32, 33, 39, 44, 47, 81, 82, 84].forEach(function(n) { + return delete tma[n]; + }); + if (tma[45]) { + var srrta = parse_shallow(tma[45][0].data); + var ref = parse_TSP_Reference(srrta[1][0].data); + numbers_del_oref(tmaroot, ref); + delete tma[45]; + } + if (tma[70]) { + var hsoa = parse_shallow(tma[70][0].data); + (_a = hsoa[2]) == null ? void 0 : _a.forEach(function(item) { + var hsa = parse_shallow(item.data); + [2, 3].map(function(n) { + return hsa[n][0]; + }).forEach(function(hseadata) { + var hsea = parse_shallow(hseadata.data); + if (!hsea[8]) + return; + var ref2 = parse_TSP_Reference(hsea[8][0].data); + numbers_del_oref(tmaroot, ref2); + }); + }); + delete tma[70]; + } + [ + 46, + 30, + 34, + 35, + 36, + 38, + 48, + 49, + 60, + 61, + 62, + 63, + 64, + 71, + 72, + 73, + 74, + 75, + 85, + 86, + 87, + 88, + 89 + ].forEach(function(n) { + if (!tma[n]) + return; + var ref2 = parse_TSP_Reference(tma[n][0].data); + delete tma[n]; + numbers_del_oref(tmaroot, ref2); + }); + var store = parse_shallow(tma[4][0].data); + { + [2, 4, 5, 6, 11, 12, 13, 15, 16, 17, 18, 19, 20, 21, 22].forEach(function(n) { + var _a2; + if (!((_a2 = store[n]) == null ? void 0 : _a2[0])) + return; + var oldref = parse_TSP_Reference(store[n][0].data); + var newref = get_unique_msgid({ deps: [tmaref], location: deps[oldref].location, type: deps[oldref].type }, deps); + numbers_del_oref(tmaroot, oldref); + numbers_add_oref(tmaroot, newref); + remap[oldref] = newref; + var msg = numbers_iwa_find(cfb, deps, oldref); + msg.id = newref; + if (deps[oldref].location == deps[tmaref].location) + arch.push(msg); + else { + deps[newref].location = deps[oldref].location.replace(oldref.toString(), newref.toString()); + if (deps[newref].location == deps[oldref].location) + deps[newref].location = deps[newref].location.replace(/\.iwa/, "-".concat(newref, ".iwa")); + CFB.utils.cfb_add(cfb, deps[newref].location, compress_iwa_file(write_iwa_file([msg]))); + var newloc = deps[newref].location; + newloc = newloc.replace(/^Root Entry\//, ""); + newloc = newloc.replace(/^Index\//, "").replace(/\.iwa$/, ""); + numbers_iwa_doit(cfb, deps, 2, function(ai) { + var mlist = parse_shallow(ai.messages[0].data); + mlist[3].push({ type: 2, data: write_shallow([ + [], + [{ type: 0, data: write_varint49(newref) }], + [{ type: 2, data: stru8(newloc.replace(/-.*$/, "")) }], + [{ type: 2, data: stru8(newloc) }], + [{ type: 2, data: new Uint8Array([2, 0, 0]) }], + [{ type: 2, data: new Uint8Array([2, 0, 0]) }], + [], + [], + [], + [], + [{ type: 0, data: write_varint49(0) }], + [], + [{ type: 0, data: write_varint49(0) }] + ]) }); + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; + var parentidx = mlist[3].findIndex(function(m) { + var _a3, _b2; + var mm = parse_shallow(m.data); + if ((_a3 = mm[3]) == null ? void 0 : _a3[0]) + return u8str(mm[3][0].data) == loc; + if (((_b2 = mm[2]) == null ? void 0 : _b2[0]) && u8str(mm[2][0].data) == loc) + return true; + return false; + }); + var parent = parse_shallow(mlist[3][parentidx].data); + if (!parent[6]) + parent[6] = []; + parent[6].push({ + type: 2, + data: write_shallow([ + [], + [{ type: 0, data: write_varint49(newref) }] + ]) + }); + mlist[3][parentidx].data = write_shallow(parent); + ai.messages[0].data = write_shallow(mlist); + }); + } + store[n][0].data = write_TSP_Reference(newref); + }); + var row_headers = parse_shallow(store[1][0].data); + { + (_b = row_headers[2]) == null ? void 0 : _b.forEach(function(tspref) { + var oldref = parse_TSP_Reference(tspref.data); + var newref = get_unique_msgid({ deps: [tmaref], location: deps[oldref].location, type: deps[oldref].type }, deps); + numbers_del_oref(tmaroot, oldref); + numbers_add_oref(tmaroot, newref); + remap[oldref] = newref; + var msg = numbers_iwa_find(cfb, deps, oldref); + msg.id = newref; + if (deps[oldref].location == deps[tmaref].location) { + arch.push(msg); + } else { + deps[newref].location = deps[oldref].location.replace(oldref.toString(), newref.toString()); + if (deps[newref].location == deps[oldref].location) + deps[newref].location = deps[newref].location.replace(/\.iwa/, "-".concat(newref, ".iwa")); + CFB.utils.cfb_add(cfb, deps[newref].location, compress_iwa_file(write_iwa_file([msg]))); + var newloc = deps[newref].location; + newloc = newloc.replace(/^Root Entry\//, ""); + newloc = newloc.replace(/^Index\//, "").replace(/\.iwa$/, ""); + numbers_iwa_doit(cfb, deps, 2, function(ai) { + var mlist = parse_shallow(ai.messages[0].data); + mlist[3].push({ type: 2, data: write_shallow([ + [], + [{ type: 0, data: write_varint49(newref) }], + [{ type: 2, data: stru8(newloc.replace(/-.*$/, "")) }], + [{ type: 2, data: stru8(newloc) }], + [{ type: 2, data: new Uint8Array([2, 0, 0]) }], + [{ type: 2, data: new Uint8Array([2, 0, 0]) }], + [], + [], + [], + [], + [{ type: 0, data: write_varint49(0) }], + [], + [{ type: 0, data: write_varint49(0) }] + ]) }); + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; + var parentidx = mlist[3].findIndex(function(m) { + var _a2, _b2; + var mm = parse_shallow(m.data); + if ((_a2 = mm[3]) == null ? void 0 : _a2[0]) + return u8str(mm[3][0].data) == loc; + if (((_b2 = mm[2]) == null ? void 0 : _b2[0]) && u8str(mm[2][0].data) == loc) + return true; + return false; + }); + var parent = parse_shallow(mlist[3][parentidx].data); + if (!parent[6]) + parent[6] = []; + parent[6].push({ + type: 2, + data: write_shallow([ + [], + [{ type: 0, data: write_varint49(newref) }] + ]) + }); + mlist[3][parentidx].data = write_shallow(parent); + ai.messages[0].data = write_shallow(mlist); + }); + } + tspref.data = write_TSP_Reference(newref); + }); + } + store[1][0].data = write_shallow(row_headers); + var tiles = parse_shallow(store[3][0].data); + { + tiles[1].forEach(function(t) { + var tst = parse_shallow(t.data); + var oldtileref = parse_TSP_Reference(tst[2][0].data); + var newtileref = remap[oldtileref]; + if (!remap[oldtileref]) { + newtileref = get_unique_msgid({ deps: [tmaref], location: "", type: deps[oldtileref].type }, deps); + deps[newtileref].location = "Root Entry/Index/Tables/Tile-".concat(newtileref, ".iwa"); + remap[oldtileref] = newtileref; + var oldtile = numbers_iwa_find(cfb, deps, oldtileref); + oldtile.id = newtileref; + numbers_del_oref(tmaroot, oldtileref); + numbers_add_oref(tmaroot, newtileref); + CFB.utils.cfb_add(cfb, "/Index/Tables/Tile-".concat(newtileref, ".iwa"), compress_iwa_file(write_iwa_file([oldtile]))); + numbers_iwa_doit(cfb, deps, 2, function(ai) { + var mlist = parse_shallow(ai.messages[0].data); + mlist[3].push({ type: 2, data: write_shallow([ + [], + [{ type: 0, data: write_varint49(newtileref) }], + [{ type: 2, data: stru8("Tables/Tile") }], + [{ type: 2, data: stru8("Tables/Tile-".concat(newtileref)) }], + [{ type: 2, data: new Uint8Array([2, 0, 0]) }], + [{ type: 2, data: new Uint8Array([2, 0, 0]) }], + [], + [], + [], + [], + [{ type: 0, data: write_varint49(0) }], + [], + [{ type: 0, data: write_varint49(0) }] + ]) }); + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, varint_to_i32(mlist[1][0].data))) }]; + var parentidx = mlist[3].findIndex(function(m) { + var _a2, _b2; + var mm = parse_shallow(m.data); + if ((_a2 = mm[3]) == null ? void 0 : _a2[0]) + return u8str(mm[3][0].data) == loc; + if (((_b2 = mm[2]) == null ? void 0 : _b2[0]) && u8str(mm[2][0].data) == loc) + return true; + return false; + }); + var parent = parse_shallow(mlist[3][parentidx].data); + if (!parent[6]) + parent[6] = []; + parent[6].push({ + type: 2, + data: write_shallow([ + [], + [{ type: 0, data: write_varint49(newtileref) }] + ]) + }); + mlist[3][parentidx].data = write_shallow(parent); + ai.messages[0].data = write_shallow(mlist); + }); + } + tst[2][0].data = write_TSP_Reference(newtileref); + t.data = write_shallow(tst); + }); + } + store[3][0].data = write_shallow(tiles); + } + tma[4][0].data = write_shallow(store); + tmaroot.messages[0].data = write_shallow(tma); + }); +} function write_numbers_ws(cfb, deps, ws, wsname, sheetidx, rootref) { - if (sheetidx >= 1) - return console.error("The Numbers writer currently writes only the first table"); var drawables = []; numbers_iwa_doit(cfb, deps, rootref, function(docroot) { var sheetref = parse_shallow(docroot.messages[0].data); @@ -24379,7 +24817,6 @@ function write_numbers_ws(cfb, deps, ws, wsname, sheetidx, rootref) { } var USE_WIDE_ROWS = true; function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { - var _a, _b; var range = decode_range(ws["!ref"]); range.s.r = range.s.c = 0; var trunc = false; @@ -24394,15 +24831,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { if (trunc) console.error("Truncating to ".concat(encode_range(range))); var data = sheet_to_json(ws, { range: range, header: 1 }); - var SST = ["~Sh33tJ5~"], SST_set = new Set(SST); - data.forEach(function(row) { - return row.forEach(function(cell) { - if (typeof cell == "string" && !SST_set.has(cell)) { - SST.push(cell); - SST_set.add(cell); - } - }); - }); + var SST = ["~Sh33tJ5~"]; var loc = deps[tmaref].location; loc = loc.replace(/^Root Entry\//, ""); loc = loc.replace(/^Index\//, "").replace(/\.iwa$/, ""); @@ -24415,9 +24844,9 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { { var row_header_ref = parse_TSP_Reference(parse_shallow(store[1][0].data)[2][0].data); numbers_iwa_doit(cfb, deps, row_header_ref, function(rowhead, _x) { - var _a2; + var _a; var base_bucket = parse_shallow(rowhead.messages[0].data); - if ((_a2 = base_bucket == null ? void 0 : base_bucket[2]) == null ? void 0 : _a2[0]) + if ((_a = base_bucket == null ? void 0 : base_bucket[2]) == null ? void 0 : _a[0]) for (var R2 = 0; R2 < data.length; ++R2) { var _bucket = parse_shallow(base_bucket[2][0].data); _bucket[1][0].data = write_varint49(R2); @@ -24437,22 +24866,6 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { } colhead.messages[0].data = write_shallow(base_bucket); }); - var sstref = parse_TSP_Reference(store[4][0].data); - numbers_iwa_doit(cfb, deps, sstref, function(sstroot) { - var sstdata = parse_shallow(sstroot.messages[0].data); - { - sstdata[3] = []; - SST.forEach(function(str, i) { - sstdata[3].push({ type: 2, data: write_shallow([ - [], - [{ type: 0, data: write_varint49(i) }], - [{ type: 0, data: write_varint49(1) }], - [{ type: 2, data: stru8(str) }] - ]) }); - }); - } - sstroot.messages[0].data = write_shallow(sstdata); - }); var rbtree = parse_shallow(store[9][0].data); rbtree[1] = []; var tilestore = parse_shallow(store[3][0].data); @@ -24460,25 +24873,27 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { var tstride = 256; tilestore[2] = [{ type: 0, data: write_varint49(tstride) }]; var tileref = parse_TSP_Reference(parse_shallow(tilestore[1][0].data)[2][0].data); - var save_token = 0; + var save_token = function() { + var metadata = numbers_iwa_find(cfb, deps, 2); + var mlist = parse_shallow(metadata.messages[0].data); + var mlst = mlist[3].filter(function(m) { + return varint_to_i32(parse_shallow(m.data)[1][0].data) == tileref; + }); + return (mlst == null ? void 0 : mlst.length) ? varint_to_i32(parse_shallow(mlst[0].data)[12][0].data) : 0; + }(); { CFB.utils.cfb_del(cfb, deps[tileref].location); numbers_iwa_doit(cfb, deps, 2, function(ai) { var mlist = parse_shallow(ai.messages[0].data); - var lst = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) == tileref; - }); - if (lst && lst.length > 0) - save_token = parse_varint49(parse_shallow(lst[0].data)[12][0].data); mlist[3] = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); var parentidx = mlist[3].findIndex(function(m) { - var _a2, _b2; + var _a, _b; var mm = parse_shallow(m.data); - if ((_a2 = mm[3]) == null ? void 0 : _a2[0]) + if ((_a = mm[3]) == null ? void 0 : _a[0]) return u8str(mm[3][0].data) == loc; - if (((_b2 = mm[2]) == null ? void 0 : _b2[0]) && u8str(mm[2][0].data) == loc) + if (((_b = mm[2]) == null ? void 0 : _b[0]) && u8str(mm[2][0].data) == loc) return true; return false; }); @@ -24486,11 +24901,12 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { if (!parent[6]) parent[6] = []; parent[6] = parent[6].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); mlist[3][parentidx].data = write_shallow(parent); ai.messages[0].data = write_shallow(mlist); }); + numbers_del_oref(tmaroot, tileref); } tilestore[1] = []; var ntiles = Math.ceil((range.e.r + 1) / tstride); @@ -24513,22 +24929,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { [{ type: 0, data: write_varint49(USE_WIDE_ROWS ? 1 : 0) }] ]; for (var R = tidx * tstride; R <= Math.min(range.e.r, (tidx + 1) * tstride - 1); ++R) { - var tilerow = [ - [], - [{ type: 0, data: write_varint49(0) }], - [{ type: 0, data: write_varint49(0) }], - [{ type: 2, data: new Uint8Array([]) }], - [{ type: 2, data: new Uint8Array(Array.from({ length: 510 }, function() { - return 255; - })) }], - [{ type: 0, data: write_varint49(5) }], - [{ type: 2, data: new Uint8Array([]) }], - [{ type: 2, data: new Uint8Array(Array.from({ length: 510 }, function() { - return 255; - })) }], - [{ type: 0, data: write_varint49(1) }] - ]; - write_tile_row(tilerow, data[R], SST, USE_WIDE_ROWS); + var tilerow = write_TST_TileRowInfo(data[R], SST, USE_WIDE_ROWS); tilerow[1][0].data = write_varint49(R - tidx * tstride); tiledata[5].push({ data: write_shallow(tilerow), type: 2 }); } @@ -24560,13 +24961,13 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { [], [{ type: 0, data: write_varint49(save_token) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { - var _a2, _b2; + var _a, _b; var mm = parse_shallow(m.data); - if ((_a2 = mm[3]) == null ? void 0 : _a2[0]) + if ((_a = mm[3]) == null ? void 0 : _a[0]) return u8str(mm[3][0].data) == loc; - if (((_b2 = mm[2]) == null ? void 0 : _b2[0]) && u8str(mm[2][0].data) == loc) + if (((_b = mm[2]) == null ? void 0 : _b[0]) && u8str(mm[2][0].data) == loc) return true; return false; }); @@ -24583,12 +24984,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { mlist[3][parentidx].data = write_shallow(parent); ai.messages[0].data = write_shallow(mlist); }); - var orefs = ((_a = tmaroot.messages[0].meta[5]) == null ? void 0 : _a[0]) ? parse_packed_varints(tmaroot.messages[0].meta[5][0].data) : []; - var orefidx = orefs.indexOf(newtileid); - if (orefidx == -1) { - orefs[orefidx = orefs.length] = newtileid; - tmaroot.messages[0].meta[5] = [{ type: 2, data: write_packed_varints(orefs) }]; - } + numbers_add_oref(tmaroot, newtileid); rbtree[1].push({ type: 2, data: write_shallow([ [], [{ type: 0, data: write_varint49(tidx * tstride) }], @@ -24628,11 +25024,11 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { numbers_iwa_doit(cfb, deps, 2, function(ai) { var mlist = parse_shallow(ai.messages[0].data); var parentidx = mlist[3].findIndex(function(m) { - var _a2, _b2; + var _a, _b; var mm = parse_shallow(m.data); - if ((_a2 = mm[3]) == null ? void 0 : _a2[0]) + if ((_a = mm[3]) == null ? void 0 : _a[0]) return u8str(mm[3][0].data) == loc; - if (((_b2 = mm[2]) == null ? void 0 : _b2[0]) && u8str(mm[2][0].data) == loc) + if (((_b = mm[2]) == null ? void 0 : _b[0]) && u8str(mm[2][0].data) == loc) return true; return false; }); @@ -24649,14 +25045,27 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { mlist[3][parentidx].data = write_shallow(parent); ai.messages[0].data = write_shallow(mlist); }); - orefs = ((_b = tmaroot.messages[0].meta[5]) == null ? void 0 : _b[0]) ? parse_packed_varints(tmaroot.messages[0].meta[5][0].data) : []; - orefidx = orefs.indexOf(mergeid); - if (orefidx == -1) { - orefs[orefidx = orefs.length] = mergeid; - tmaroot.messages[0].meta[5] = [{ type: 2, data: write_packed_varints(orefs) }]; - } + numbers_add_oref(tmaroot, mergeid); } else delete store[13]; + var sstref = parse_TSP_Reference(store[4][0].data); + numbers_iwa_doit(cfb, deps, sstref, function(sstroot) { + var sstdata = parse_shallow(sstroot.messages[0].data); + { + sstdata[3] = []; + SST.forEach(function(str, i) { + if (i == 0) + return; + sstdata[3].push({ type: 2, data: write_shallow([ + [], + [{ type: 0, data: write_varint49(i) }], + [{ type: 0, data: write_varint49(1) }], + [{ type: 2, data: stru8(str) }] + ]) }); + }); + } + sstroot.messages[0].data = write_shallow(sstdata); + }); } pb[4][0].data = write_shallow(store); } @@ -25622,17 +26031,17 @@ function writeFileAsync(filename, wb, opts, cb) { var _cb = cb; if(!(_cb instanceof Function)) _cb = (opts); return _fs.writeFile(filename, writeSync(wb, o), _cb); } -function make_json_row(sheet, r, R, cols, header, hdr, dense, o) { +function make_json_row(sheet, r, R, cols, header, hdr, o) { var rr = encode_row(R); var defval = o.defval, raw = o.raw || !Object.prototype.hasOwnProperty.call(o, "raw"); - var isempty = true; + var isempty = true, dense = (sheet["!data"] != null); var row = (header === 1) ? [] : {}; if(header !== 1) { if(Object.defineProperty) try { Object.defineProperty(row, '__rowNum__', {value:R, enumerable:false}); } catch(e) { row.__rowNum__ = R; } else row.__rowNum__ = R; } - if(!dense || sheet[R]) for (var C = r.s.c; C <= r.e.c; ++C) { - var val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + if(!dense || sheet["!data"][R]) for (var C = r.s.c; C <= r.e.c; ++C) { + var val = dense ? (sheet["!data"][R]||[])[C] : sheet[cols[C] + rr]; if(val === undefined || val.t === undefined) { if(defval === undefined) continue; if(hdr[C] != null) { row[hdr[C]] = defval; } @@ -25681,16 +26090,16 @@ function sheet_to_json(sheet, opts) { var cols = []; var out = []; var outi = 0, counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo = o.skipHidden && sheet["!cols"] || []; var rowinfo = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -25709,7 +26118,7 @@ function sheet_to_json(sheet, opts) { } for (R = r.s.r + offset; R <= r.e.r; ++R) { if ((rowinfo[R]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) out[outi++] = row.row; } out.length = outi; @@ -25720,9 +26129,11 @@ var qreg = /"/g; function make_csv_row(sheet, r, R, cols, fs, rs, FS, o) { var isempty = true; var row = [], txt = "", rr = encode_row(R); + var dense = sheet["!data"] != null; + var datarow = dense && sheet["!data"][R] || []; for(var C = r.s.c; C <= r.e.c; ++C) { if (!cols[C]) continue; - var val = o.dense ? (sheet[R]||[])[C]: sheet[cols[C] + rr]; + var val = dense ? datarow[C]: sheet[cols[C] + rr]; if(val == null) txt = ""; else if(val.v != null) { isempty = false; @@ -25749,7 +26160,6 @@ function sheet_to_csv(sheet, opts) { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row = "", cols = []; - o.dense = Array.isArray(sheet); var colinfo = o.skipHidden && sheet["!cols"] || []; var rowinfo = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -25761,7 +26171,6 @@ function sheet_to_csv(sheet, opts) { if(o.strip) row = row.replace(endregex,""); if(row || (o.blankrows !== false)) out.push((w++ ? RS : "") + row); } - delete o.dense; return out.join(""); } @@ -25778,13 +26187,13 @@ function sheet_to_formulae(sheet) { if(sheet == null || sheet["!ref"] == null) return []; var r = safe_decode_range(sheet['!ref']), rr = "", cols = [], C; var cmds = []; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; for(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C); for(var R = r.s.r; R <= r.e.r; ++R) { rr = encode_row(R); for(C = r.s.c; C <= r.e.c; ++C) { y = cols[C] + rr; - x = dense ? (sheet[R]||[])[C] : sheet[y]; + x = dense ? (sheet["!data"][R]||[])[C] : sheet[y]; val = ""; if(x === undefined) continue; else if(x.F != null) { @@ -25809,10 +26218,11 @@ function sheet_to_formulae(sheet) { function sheet_add_json(_ws, js, opts) { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; var offset = +!o.skipHeader; - var ws = _ws || (dense ? ([]) : ({})); + var ws = _ws || ({}); + if(!_ws && dense) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -25833,17 +26243,18 @@ function sheet_add_json(_ws, js, opts) { var hdr = o.header || [], C = 0; var ROW = []; js.forEach(function (JS, R) { - if(dense && !ws[_R + R + offset]) ws[_R + R + offset] = []; - if(dense) ROW = ws[_R + R + offset]; + if(dense && !ws["!data"][_R + R + offset]) ws["!data"][_R + R + offset] = []; + if(dense) ROW = ws["!data"][_R + R + offset]; keys(JS).forEach(function(k) { if((C=hdr.indexOf(k)) == -1) hdr[C=hdr.length] = k; var v = JS[k]; var t = 'z'; var z = ""; - var ref = dense ? "" : encode_cell({c:_C + C,r:_R + R + offset}); + var ref = dense ? "" : (encode_col(_C + C) + encode_row(_R + R + offset)); var cell = dense ? ROW[_C + C] : ws[ref]; if(v && typeof v === 'object' && !(v instanceof Date)){ - ws[ref] = v; + if(dense) ROW[_C + C] = v; + else ws[ref] = v; } else { if(typeof v == 'number') t = 'n'; else if(typeof v == 'boolean') t = 'b'; @@ -25868,9 +26279,9 @@ function sheet_add_json(_ws, js, opts) { }); range.e.c = Math.max(range.e.c, _C + hdr.length - 1); var __R = encode_row(_R); - if(dense && !ws[_R]) ws[_R] = []; + if(dense && !ws["!data"][_R]) ws["!data"][_R] = []; if(offset) for(C = 0; C < hdr.length; ++C) { - if(dense) ws[_R][C + _C] = {t:'s', v:hdr[C]}; + if(dense) ws["!data"][_R][C + _C] = {t:'s', v:hdr[C]}; else ws[encode_col(C + _C) + __R] = {t:'s', v:hdr[C]}; } ws['!ref'] = encode_range(range); @@ -25882,18 +26293,17 @@ function json_to_sheet(js, opts) { return sheet_add_json(null, js, opts); } function ws_get_cell_stub(ws, R, C) { /* A1 cell address */ if(typeof R == "string") { - /* dense */ - if(Array.isArray(ws)) { + if(ws["!data"] != null) { var RC = decode_cell(R); - if(!ws[RC.r]) ws[RC.r] = []; - return ws[RC.r][RC.c] || (ws[RC.r][RC.c] = {t:'z'}); + if(!ws["!data"][RC.r]) ws["!data"][RC.r] = []; + return ws["!data"][RC.r][RC.c] || (ws["!data"][RC.r][RC.c] = {t:'z'}); } return ws[R] || (ws[R] = {t:'z'}); } /* cell address object */ if(typeof R != "number") return ws_get_cell_stub(ws, encode_cell(R)); /* R and C are 0-based indices */ - return ws_get_cell_stub(ws, encode_cell({r:R,c:C||0})); + return ws_get_cell_stub(ws, encode_col(C||0) + encode_row(R)); } /* find sheet index for given name / validate index */ @@ -26048,7 +26458,6 @@ function write_csv_stream(sheet, opts) { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row = "", cols = []; - o.dense = Array.isArray(sheet); var colinfo = o.skipHidden && sheet["!cols"] || []; var rowinfo = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -26078,7 +26487,6 @@ function write_html_stream(ws, opts) { var footer = o.footer != null ? o.footer : HTML_END; stream.push(header); var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); stream.push(make_html_preamble(ws, r, o)); var R = r.s.r; var end = false; @@ -26116,16 +26524,16 @@ function write_json_stream(sheet, opts) { var rr = encode_row(r.s.r); var cols = []; var counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo = o.skipHidden && sheet["!cols"] || []; var rowinfo = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -26146,7 +26554,7 @@ function write_json_stream(sheet, opts) { stream._read = function() { while(R <= r.e.r) { if ((rowinfo[R-1]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); ++R; if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) { stream.push(row.row); diff --git a/dist/xlsx.full.min.js b/dist/xlsx.full.min.js index eea4fa3..198562a 100644 --- a/dist/xlsx.full.min.js +++ b/dist/xlsx.full.min.js @@ -4,20 +4,20 @@ var DO_NOT_EXPORT_CODEPAGE=true;var cptable={version:"1.15.0"};cptable[437]=func for(a=0;a!=t[236].length;++a)if(t[236][a].charCodeAt(0)!==65533){r[t[236][a]]=60416+a;e[60416+a]=t[236][a]}t[237]="����������������������������������������������������������������鞞鞟鞡鞢鞤鞥鞦鞧鞨鞩鞪鞬鞮鞰鞱鞳鞵鞶鞷鞸鞹鞺鞻鞼鞽鞾鞿韀韁韂韃韄韅韆韇韈韉韊韋韌韍韎韏韐韑韒韓韔韕韖韗韘韙韚韛韜韝韞韟韠韡韢韣�韤韥韨韮韯韰韱韲韴韷韸韹韺韻韼韽韾響頀頁頂頃頄項順頇須頉頊頋頌頍頎怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉磬磲礅磴礓礤礞礴龛黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵眸睐睑睇睃睚睨�".split("");for(a=0;a!=t[237].length;++a)if(t[237][a].charCodeAt(0)!==65533){r[t[237][a]]=60672+a;e[60672+a]=t[237][a]}t[238]="����������������������������������������������������������������頏預頑頒頓頔頕頖頗領頙頚頛頜頝頞頟頠頡頢頣頤頥頦頧頨頩頪頫頬頭頮頯頰頱頲頳頴頵頶頷頸頹頺頻頼頽頾頿顀顁顂顃顄顅顆顇顈顉顊顋題額�顎顏顐顑顒顓顔顕顖顗願顙顚顛顜顝類顟顠顡顢顣顤顥顦顧顨顩顪顫顬顭顮睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶钷钸钹钺钼钽钿铄铈铉铊铋铌铍铎铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪�".split("");for(a=0;a!=t[238].length;++a)if(t[238][a].charCodeAt(0)!==65533){r[t[238][a]]=60928+a;e[60928+a]=t[238][a]}t[239]="����������������������������������������������������������������顯顰顱顲顳顴颋颎颒颕颙颣風颩颪颫颬颭颮颯颰颱颲颳颴颵颶颷颸颹颺颻颼颽颾颿飀飁飂飃飄飅飆飇飈飉飊飋飌飍飏飐飔飖飗飛飜飝飠飡飢飣飤�飥飦飩飪飫飬飭飮飯飰飱飲飳飴飵飶飷飸飹飺飻飼飽飾飿餀餁餂餃餄餅餆餇铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒锓锔锕锖锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤镥镦镧镨镩镪镫镬镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔�".split("");for(a=0;a!=t[239].length;++a)if(t[239][a].charCodeAt(0)!==65533){r[t[239][a]]=61184+a;e[61184+a]=t[239][a]}t[240]="����������������������������������������������������������������餈餉養餋餌餎餏餑餒餓餔餕餖餗餘餙餚餛餜餝餞餟餠餡餢餣餤餥餦餧館餩餪餫餬餭餯餰餱餲餳餴餵餶餷餸餹餺餻餼餽餾餿饀饁饂饃饄饅饆饇饈饉�饊饋饌饍饎饏饐饑饒饓饖饗饘饙饚饛饜饝饞饟饠饡饢饤饦饳饸饹饻饾馂馃馉稹稷穑黏馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨鸩鸪鸫鸬鸲鸱鸶鸸鸷鸹鸺鸾鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦鹧鹨鹩鹪鹫鹬鹱鹭鹳疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙�".split("");for(a=0;a!=t[240].length;++a)if(t[240][a].charCodeAt(0)!==65533){r[t[240][a]]=61440+a;e[61440+a]=t[240][a]}t[241]="����������������������������������������������������������������馌馎馚馛馜馝馞馟馠馡馢馣馤馦馧馩馪馫馬馭馮馯馰馱馲馳馴馵馶馷馸馹馺馻馼馽馾馿駀駁駂駃駄駅駆駇駈駉駊駋駌駍駎駏駐駑駒駓駔駕駖駗駘�駙駚駛駜駝駞駟駠駡駢駣駤駥駦駧駨駩駪駫駬駭駮駯駰駱駲駳駴駵駶駷駸駹瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴褫褶襁襦襻疋胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨耱耋耵聃聆聍聒聩聱覃顸颀颃�".split("");for(a=0;a!=t[241].length;++a)if(t[241][a].charCodeAt(0)!==65533){r[t[241][a]]=61696+a;e[61696+a]=t[241][a]}t[242]="����������������������������������������������������������������駺駻駼駽駾駿騀騁騂騃騄騅騆騇騈騉騊騋騌騍騎騏騐騑騒験騔騕騖騗騘騙騚騛騜騝騞騟騠騡騢騣騤騥騦騧騨騩騪騫騬騭騮騯騰騱騲騳騴騵騶騷騸�騹騺騻騼騽騾騿驀驁驂驃驄驅驆驇驈驉驊驋驌驍驎驏驐驑驒驓驔驕驖驗驘驙颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒�".split("");for(a=0;a!=t[242].length;++a)if(t[242][a].charCodeAt(0)!==65533){r[t[242][a]]=61952+a;e[61952+a]=t[242][a]}t[243]="����������������������������������������������������������������驚驛驜驝驞驟驠驡驢驣驤驥驦驧驨驩驪驫驲骃骉骍骎骔骕骙骦骩骪骫骬骭骮骯骲骳骴骵骹骻骽骾骿髃髄髆髇髈髉髊髍髎髏髐髒體髕髖髗髙髚髛髜�髝髞髠髢髣髤髥髧髨髩髪髬髮髰髱髲髳髴髵髶髷髸髺髼髽髾髿鬀鬁鬂鬄鬅鬆蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缶罂罄罅舐竺竽笈笃笄笕笊笫笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖簋�".split("");for(a=0;a!=t[243].length;++a)if(t[243][a].charCodeAt(0)!==65533){r[t[243][a]]=62208+a;e[62208+a]=t[243][a]}t[244]="����������������������������������������������������������������鬇鬉鬊鬋鬌鬍鬎鬐鬑鬒鬔鬕鬖鬗鬘鬙鬚鬛鬜鬝鬞鬠鬡鬢鬤鬥鬦鬧鬨鬩鬪鬫鬬鬭鬮鬰鬱鬳鬴鬵鬶鬷鬸鬹鬺鬽鬾鬿魀魆魊魋魌魎魐魒魓魕魖魗魘魙魚�魛魜魝魞魟魠魡魢魣魤魥魦魧魨魩魪魫魬魭魮魯魰魱魲魳魴魵魶魷魸魹魺魻簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞粢粲粼粽糁糇糌糍糈糅糗糨艮暨羿翎翕翥翡翦翩翮翳糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤�".split("");for(a=0;a!=t[244].length;++a)if(t[244][a].charCodeAt(0)!==65533){r[t[244][a]]=62464+a;e[62464+a]=t[244][a]}t[245]="����������������������������������������������������������������魼魽魾魿鮀鮁鮂鮃鮄鮅鮆鮇鮈鮉鮊鮋鮌鮍鮎鮏鮐鮑鮒鮓鮔鮕鮖鮗鮘鮙鮚鮛鮜鮝鮞鮟鮠鮡鮢鮣鮤鮥鮦鮧鮨鮩鮪鮫鮬鮭鮮鮯鮰鮱鮲鮳鮴鮵鮶鮷鮸鮹鮺�鮻鮼鮽鮾鮿鯀鯁鯂鯃鯄鯅鯆鯇鯈鯉鯊鯋鯌鯍鯎鯏鯐鯑鯒鯓鯔鯕鯖鯗鯘鯙鯚鯛酢酡酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴躅躏躔躐躜躞豸貂貊貅貘貔斛觖觞觚觜�".split("");for(a=0;a!=t[245].length;++a)if(t[245][a].charCodeAt(0)!==65533){r[t[245][a]]=62720+a;e[62720+a]=t[245][a]}t[246]="����������������������������������������������������������������鯜鯝鯞鯟鯠鯡鯢鯣鯤鯥鯦鯧鯨鯩鯪鯫鯬鯭鯮鯯鯰鯱鯲鯳鯴鯵鯶鯷鯸鯹鯺鯻鯼鯽鯾鯿鰀鰁鰂鰃鰄鰅鰆鰇鰈鰉鰊鰋鰌鰍鰎鰏鰐鰑鰒鰓鰔鰕鰖鰗鰘鰙鰚�鰛鰜鰝鰞鰟鰠鰡鰢鰣鰤鰥鰦鰧鰨鰩鰪鰫鰬鰭鰮鰯鰰鰱鰲鰳鰴鰵鰶鰷鰸鰹鰺鰻觥觫觯訾謦靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅龆龇龈龉龊龌黾鼋鼍隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞鲟鲠鲡鲢鲣鲥鲦鲧鲨鲩鲫鲭鲮鲰鲱鲲鲳鲴鲵鲶鲷鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋�".split("");for(a=0;a!=t[246].length;++a)if(t[246][a].charCodeAt(0)!==65533){r[t[246][a]]=62976+a;e[62976+a]=t[246][a]}t[247]="����������������������������������������������������������������鰼鰽鰾鰿鱀鱁鱂鱃鱄鱅鱆鱇鱈鱉鱊鱋鱌鱍鱎鱏鱐鱑鱒鱓鱔鱕鱖鱗鱘鱙鱚鱛鱜鱝鱞鱟鱠鱡鱢鱣鱤鱥鱦鱧鱨鱩鱪鱫鱬鱭鱮鱯鱰鱱鱲鱳鱴鱵鱶鱷鱸鱹鱺�鱻鱽鱾鲀鲃鲄鲉鲊鲌鲏鲓鲖鲗鲘鲙鲝鲪鲬鲯鲹鲾鲿鳀鳁鳂鳈鳉鳑鳒鳚鳛鳠鳡鳌鳍鳎鳏鳐鳓鳔鳕鳗鳘鳙鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔髟髡髦髯髫髻髭髹鬈鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯鼢鼬鼯鼹鼷鼽鼾齄�".split("");for(a=0;a!=t[247].length;++a)if(t[247][a].charCodeAt(0)!==65533){r[t[247][a]]=63232+a;e[63232+a]=t[247][a]}t[248]="����������������������������������������������������������������鳣鳤鳥鳦鳧鳨鳩鳪鳫鳬鳭鳮鳯鳰鳱鳲鳳鳴鳵鳶鳷鳸鳹鳺鳻鳼鳽鳾鳿鴀鴁鴂鴃鴄鴅鴆鴇鴈鴉鴊鴋鴌鴍鴎鴏鴐鴑鴒鴓鴔鴕鴖鴗鴘鴙鴚鴛鴜鴝鴞鴟鴠鴡�鴢鴣鴤鴥鴦鴧鴨鴩鴪鴫鴬鴭鴮鴯鴰鴱鴲鴳鴴鴵鴶鴷鴸鴹鴺鴻鴼鴽鴾鴿鵀鵁鵂�����������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[248].length;++a)if(t[248][a].charCodeAt(0)!==65533){r[t[248][a]]=63488+a;e[63488+a]=t[248][a]}t[249]="����������������������������������������������������������������鵃鵄鵅鵆鵇鵈鵉鵊鵋鵌鵍鵎鵏鵐鵑鵒鵓鵔鵕鵖鵗鵘鵙鵚鵛鵜鵝鵞鵟鵠鵡鵢鵣鵤鵥鵦鵧鵨鵩鵪鵫鵬鵭鵮鵯鵰鵱鵲鵳鵴鵵鵶鵷鵸鵹鵺鵻鵼鵽鵾鵿鶀鶁�鶂鶃鶄鶅鶆鶇鶈鶉鶊鶋鶌鶍鶎鶏鶐鶑鶒鶓鶔鶕鶖鶗鶘鶙鶚鶛鶜鶝鶞鶟鶠鶡鶢�����������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[249].length;++a)if(t[249][a].charCodeAt(0)!==65533){r[t[249][a]]=63744+a;e[63744+a]=t[249][a]}t[250]="����������������������������������������������������������������鶣鶤鶥鶦鶧鶨鶩鶪鶫鶬鶭鶮鶯鶰鶱鶲鶳鶴鶵鶶鶷鶸鶹鶺鶻鶼鶽鶾鶿鷀鷁鷂鷃鷄鷅鷆鷇鷈鷉鷊鷋鷌鷍鷎鷏鷐鷑鷒鷓鷔鷕鷖鷗鷘鷙鷚鷛鷜鷝鷞鷟鷠鷡�鷢鷣鷤鷥鷦鷧鷨鷩鷪鷫鷬鷭鷮鷯鷰鷱鷲鷳鷴鷵鷶鷷鷸鷹鷺鷻鷼鷽鷾鷿鸀鸁鸂�����������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[250].length;++a)if(t[250][a].charCodeAt(0)!==65533){r[t[250][a]]=64e3+a;e[64e3+a]=t[250][a]}t[251]="����������������������������������������������������������������鸃鸄鸅鸆鸇鸈鸉鸊鸋鸌鸍鸎鸏鸐鸑鸒鸓鸔鸕鸖鸗鸘鸙鸚鸛鸜鸝鸞鸤鸧鸮鸰鸴鸻鸼鹀鹍鹐鹒鹓鹔鹖鹙鹝鹟鹠鹡鹢鹥鹮鹯鹲鹴鹵鹶鹷鹸鹹鹺鹻鹼鹽麀�麁麃麄麅麆麉麊麌麍麎麏麐麑麔麕麖麗麘麙麚麛麜麞麠麡麢麣麤麥麧麨麩麪�����������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[251].length;++a)if(t[251][a].charCodeAt(0)!==65533){r[t[251][a]]=64256+a;e[64256+a]=t[251][a]}t[252]="����������������������������������������������������������������麫麬麭麮麯麰麱麲麳麵麶麷麹麺麼麿黀黁黂黃黅黆黇黈黊黋黌黐黒黓黕黖黗黙黚點黡黣黤黦黨黫黬黭黮黰黱黲黳黴黵黶黷黸黺黽黿鼀鼁鼂鼃鼄鼅�鼆鼇鼈鼉鼊鼌鼏鼑鼒鼔鼕鼖鼘鼚鼛鼜鼝鼞鼟鼡鼣鼤鼥鼦鼧鼨鼩鼪鼫鼭鼮鼰鼱�����������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[252].length;++a)if(t[252][a].charCodeAt(0)!==65533){r[t[252][a]]=64512+a;e[64512+a]=t[252][a]}t[253]="����������������������������������������������������������������鼲鼳鼴鼵鼶鼸鼺鼼鼿齀齁齂齃齅齆齇齈齉齊齋齌齍齎齏齒齓齔齕齖齗齘齙齚齛齜齝齞齟齠齡齢齣齤齥齦齧齨齩齪齫齬齭齮齯齰齱齲齳齴齵齶齷齸�齹齺齻齼齽齾龁龂龍龎龏龐龑龒龓龔龕龖龗龘龜龝龞龡龢龣龤龥郎凉秊裏隣�����������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[253].length;++a)if(t[253][a].charCodeAt(0)!==65533){r[t[253][a]]=64768+a;e[64768+a]=t[253][a]}t[254]="����������������������������������������������������������������兀嗀﨎﨏﨑﨓﨔礼﨟蘒﨡﨣﨤﨧﨨﨩��������������������������������������������������������������������������������������������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[254].length;++a)if(t[254][a].charCodeAt(0)!==65533){r[t[254][a]]=65024+a;e[65024+a]=t[254][a]}return{enc:r,dec:e}}();cptable[949]=function(){var e=[],r={},t=[],a;t[0]="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[0].length;++a)if(t[0][a].charCodeAt(0)!==65533){r[t[0][a]]=0+a;e[0+a]=t[0][a]}t[129]="�����������������������������������������������������������������갂갃갅갆갋갌갍갎갏갘갞갟갡갢갣갥갦갧갨갩갪갫갮갲갳갴������갵갶갷갺갻갽갾갿걁걂걃걄걅걆걇걈걉걊걌걎걏걐걑걒걓걕������걖걗걙걚걛걝걞걟걠걡걢걣걤걥걦걧걨걩걪걫걬걭걮걯걲걳걵걶걹걻걼걽걾걿겂겇겈겍겎겏겑겒겓겕겖겗겘겙겚겛겞겢겣겤겥겦겧겫겭겮겱겲겳겴겵겶겷겺겾겿곀곂곃곅곆곇곉곊곋곍곎곏곐곑곒곓곔곖곘곙곚곛곜곝곞곟곢곣곥곦곩곫곭곮곲곴곷곸곹곺곻곾곿괁괂괃괅괇괈괉괊괋괎괐괒괓�".split("");for(a=0;a!=t[129].length;++a)if(t[129][a].charCodeAt(0)!==65533){r[t[129][a]]=33024+a;e[33024+a]=t[129][a]}t[130]="�����������������������������������������������������������������괔괕괖괗괙괚괛괝괞괟괡괢괣괤괥괦괧괨괪괫괮괯괰괱괲괳������괶괷괹괺괻괽괾괿굀굁굂굃굆굈굊굋굌굍굎굏굑굒굓굕굖굗������굙굚굛굜굝굞굟굠굢굤굥굦굧굨굩굪굫굮굯굱굲굷굸굹굺굾궀궃궄궅궆궇궊궋궍궎궏궑궒궓궔궕궖궗궘궙궚궛궞궟궠궡궢궣궥궦궧궨궩궪궫궬궭궮궯궰궱궲궳궴궵궶궸궹궺궻궼궽궾궿귂귃귅귆귇귉귊귋귌귍귎귏귒귔귕귖귗귘귙귚귛귝귞귟귡귢귣귥귦귧귨귩귪귫귬귭귮귯귰귱귲귳귴귵귶귷�".split("");for(a=0;a!=t[130].length;++a)if(t[130][a].charCodeAt(0)!==65533){r[t[130][a]]=33280+a;e[33280+a]=t[130][a]}t[131]="�����������������������������������������������������������������귺귻귽귾긂긃긄긅긆긇긊긌긎긏긐긑긒긓긕긖긗긘긙긚긛긜������긝긞긟긠긡긢긣긤긥긦긧긨긩긪긫긬긭긮긯긲긳긵긶긹긻긼������긽긾긿깂깄깇깈깉깋깏깑깒깓깕깗깘깙깚깛깞깢깣깤깦깧깪깫깭깮깯깱깲깳깴깵깶깷깺깾깿꺀꺁꺂꺃꺆꺇꺈꺉꺊꺋꺍꺎꺏꺐꺑꺒꺓꺔꺕꺖꺗꺘꺙꺚꺛꺜꺝꺞꺟꺠꺡꺢꺣꺤꺥꺦꺧꺨꺩꺪꺫꺬꺭꺮꺯꺰꺱꺲꺳꺴꺵꺶꺷꺸꺹꺺꺻꺿껁껂껃껅껆껇껈껉껊껋껎껒껓껔껕껖껗껚껛껝껞껟껠껡껢껣껤껥�".split("");for(a=0;a!=t[131].length;++a)if(t[131][a].charCodeAt(0)!==65533){r[t[131][a]]=33536+a;e[33536+a]=t[131][a]}t[132]="�����������������������������������������������������������������껦껧껩껪껬껮껯껰껱껲껳껵껶껷껹껺껻껽껾껿꼀꼁꼂꼃꼄꼅������꼆꼉꼊꼋꼌꼎꼏꼑꼒꼓꼔꼕꼖꼗꼘꼙꼚꼛꼜꼝꼞꼟꼠꼡꼢꼣������꼤꼥꼦꼧꼨꼩꼪꼫꼮꼯꼱꼳꼵꼶꼷꼸꼹꼺꼻꼾꽀꽄꽅꽆꽇꽊꽋꽌꽍꽎꽏꽑꽒꽓꽔꽕꽖꽗꽘꽙꽚꽛꽞꽟꽠꽡꽢꽣꽦꽧꽨꽩꽪꽫꽬꽭꽮꽯꽰꽱꽲꽳꽴꽵꽶꽷꽸꽺꽻꽼꽽꽾꽿꾁꾂꾃꾅꾆꾇꾉꾊꾋꾌꾍꾎꾏꾒꾓꾔꾖꾗꾘꾙꾚꾛꾝꾞꾟꾠꾡꾢꾣꾤꾥꾦꾧꾨꾩꾪꾫꾬꾭꾮꾯꾰꾱꾲꾳꾴꾵꾶꾷꾺꾻꾽꾾�".split("");for(a=0;a!=t[132].length;++a)if(t[132][a].charCodeAt(0)!==65533){r[t[132][a]]=33792+a;e[33792+a]=t[132][a]}t[133]="�����������������������������������������������������������������꾿꿁꿂꿃꿄꿅꿆꿊꿌꿏꿐꿑꿒꿓꿕꿖꿗꿘꿙꿚꿛꿝꿞꿟꿠꿡������꿢꿣꿤꿥꿦꿧꿪꿫꿬꿭꿮꿯꿲꿳꿵꿶꿷꿹꿺꿻꿼꿽꿾꿿뀂뀃������뀅뀆뀇뀈뀉뀊뀋뀍뀎뀏뀑뀒뀓뀕뀖뀗뀘뀙뀚뀛뀞뀟뀠뀡뀢뀣뀤뀥뀦뀧뀩뀪뀫뀬뀭뀮뀯뀰뀱뀲뀳뀴뀵뀶뀷뀸뀹뀺뀻뀼뀽뀾뀿끀끁끂끃끆끇끉끋끍끏끐끑끒끖끘끚끛끜끞끟끠끡끢끣끤끥끦끧끨끩끪끫끬끭끮끯끰끱끲끳끴끵끶끷끸끹끺끻끾끿낁낂낃낅낆낇낈낉낊낋낎낐낒낓낔낕낖낗낛낝낞낣낤�".split("");for(a=0;a!=t[133].length;++a)if(t[133][a].charCodeAt(0)!==65533){r[t[133][a]]=34048+a;e[34048+a]=t[133][a]}t[134]="�����������������������������������������������������������������낥낦낧낪낰낲낶낷낹낺낻낽낾낿냀냁냂냃냆냊냋냌냍냎냏냒������냓냕냖냗냙냚냛냜냝냞냟냡냢냣냤냦냧냨냩냪냫냬냭냮냯냰������냱냲냳냴냵냶냷냸냹냺냻냼냽냾냿넀넁넂넃넄넅넆넇넊넍넎넏넑넔넕넖넗넚넞넟넠넡넢넦넧넩넪넫넭넮넯넰넱넲넳넶넺넻넼넽넾넿녂녃녅녆녇녉녊녋녌녍녎녏녒녓녖녗녙녚녛녝녞녟녡녢녣녤녥녦녧녨녩녪녫녬녭녮녯녰녱녲녳녴녵녶녷녺녻녽녾녿놁놃놄놅놆놇놊놌놎놏놐놑놕놖놗놙놚놛놝�".split("");for(a=0;a!=t[134].length;++a)if(t[134][a].charCodeAt(0)!==65533){r[t[134][a]]=34304+a;e[34304+a]=t[134][a]}t[135]="�����������������������������������������������������������������놞놟놠놡놢놣놤놥놦놧놩놪놫놬놭놮놯놰놱놲놳놴놵놶놷놸������놹놺놻놼놽놾놿뇀뇁뇂뇃뇄뇅뇆뇇뇈뇉뇊뇋뇍뇎뇏뇑뇒뇓뇕������뇖뇗뇘뇙뇚뇛뇞뇠뇡뇢뇣뇤뇥뇦뇧뇪뇫뇭뇮뇯뇱뇲뇳뇴뇵뇶뇷뇸뇺뇼뇾뇿눀눁눂눃눆눇눉눊눍눎눏눐눑눒눓눖눘눚눛눜눝눞눟눡눢눣눤눥눦눧눨눩눪눫눬눭눮눯눰눱눲눳눵눶눷눸눹눺눻눽눾눿뉀뉁뉂뉃뉄뉅뉆뉇뉈뉉뉊뉋뉌뉍뉎뉏뉐뉑뉒뉓뉔뉕뉖뉗뉙뉚뉛뉝뉞뉟뉡뉢뉣뉤뉥뉦뉧뉪뉫뉬뉭뉮�".split("");for(a=0;a!=t[135].length;++a)if(t[135][a].charCodeAt(0)!==65533){r[t[135][a]]=34560+a;e[34560+a]=t[135][a]}t[136]="�����������������������������������������������������������������뉯뉰뉱뉲뉳뉶뉷뉸뉹뉺뉻뉽뉾뉿늀늁늂늃늆늇늈늊늋늌늍늎������늏늒늓늕늖늗늛늜늝늞늟늢늤늧늨늩늫늭늮늯늱늲늳늵늶늷������늸늹늺늻늼늽늾늿닀닁닂닃닄닅닆닇닊닋닍닎닏닑닓닔닕닖닗닚닜닞닟닠닡닣닧닩닪닰닱닲닶닼닽닾댂댃댅댆댇댉댊댋댌댍댎댏댒댖댗댘댙댚댛댝댞댟댠댡댢댣댤댥댦댧댨댩댪댫댬댭댮댯댰댱댲댳댴댵댶댷댸댹댺댻댼댽댾댿덀덁덂덃덄덅덆덇덈덉덊덋덌덍덎덏덐덑덒덓덗덙덚덝덠덡덢덣�".split("");for(a=0;a!=t[136].length;++a)if(t[136][a].charCodeAt(0)!==65533){r[t[136][a]]=34816+a;e[34816+a]=t[136][a]}t[137]="�����������������������������������������������������������������덦덨덪덬덭덯덲덳덵덶덷덹덺덻덼덽덾덿뎂뎆뎇뎈뎉뎊뎋뎍������뎎뎏뎑뎒뎓뎕뎖뎗뎘뎙뎚뎛뎜뎝뎞뎟뎢뎣뎤뎥뎦뎧뎩뎪뎫뎭������뎮뎯뎰뎱뎲뎳뎴뎵뎶뎷뎸뎹뎺뎻뎼뎽뎾뎿돀돁돂돃돆돇돉돊돍돏돑돒돓돖돘돚돜돞돟돡돢돣돥돦돧돩돪돫돬돭돮돯돰돱돲돳돴돵돶돷돸돹돺돻돽돾돿됀됁됂됃됄됅됆됇됈됉됊됋됌됍됎됏됑됒됓됔됕됖됗됙됚됛됝됞됟됡됢됣됤됥됦됧됪됬됭됮됯됰됱됲됳됵됶됷됸됹됺됻됼됽됾됿둀둁둂둃둄�".split("");for(a=0;a!=t[137].length;++a)if(t[137][a].charCodeAt(0)!==65533){r[t[137][a]]=35072+a;e[35072+a]=t[137][a]}t[138]="�����������������������������������������������������������������둅둆둇둈둉둊둋둌둍둎둏둒둓둕둖둗둙둚둛둜둝둞둟둢둤둦������둧둨둩둪둫둭둮둯둰둱둲둳둴둵둶둷둸둹둺둻둼둽둾둿뒁뒂������뒃뒄뒅뒆뒇뒉뒊뒋뒌뒍뒎뒏뒐뒑뒒뒓뒔뒕뒖뒗뒘뒙뒚뒛뒜뒞뒟뒠뒡뒢뒣뒥뒦뒧뒩뒪뒫뒭뒮뒯뒰뒱뒲뒳뒴뒶뒸뒺뒻뒼뒽뒾뒿듁듂듃듅듆듇듉듊듋듌듍듎듏듑듒듓듔듖듗듘듙듚듛듞듟듡듢듥듧듨듩듪듫듮듰듲듳듴듵듶듷듹듺듻듼듽듾듿딀딁딂딃딄딅딆딇딈딉딊딋딌딍딎딏딐딑딒딓딖딗딙딚딝�".split("");for(a=0;a!=t[138].length;++a)if(t[138][a].charCodeAt(0)!==65533){r[t[138][a]]=35328+a;e[35328+a]=t[138][a]}t[139]="�����������������������������������������������������������������딞딟딠딡딢딣딦딫딬딭딮딯딲딳딵딶딷딹딺딻딼딽딾딿땂땆������땇땈땉땊땎땏땑땒땓땕땖땗땘땙땚땛땞땢땣땤땥땦땧땨땩땪������땫땬땭땮땯땰땱땲땳땴땵땶땷땸땹땺땻땼땽땾땿떀떁떂떃떄떅떆떇떈떉떊떋떌떍떎떏떐떑떒떓떔떕떖떗떘떙떚떛떜떝떞떟떢떣떥떦떧떩떬떭떮떯떲떶떷떸떹떺떾떿뗁뗂뗃뗅뗆뗇뗈뗉뗊뗋뗎뗒뗓뗔뗕뗖뗗뗙뗚뗛뗜뗝뗞뗟뗠뗡뗢뗣뗤뗥뗦뗧뗨뗩뗪뗫뗭뗮뗯뗰뗱뗲뗳뗴뗵뗶뗷뗸뗹뗺뗻뗼뗽뗾뗿�".split("");for(a=0;a!=t[139].length;++a)if(t[139][a].charCodeAt(0)!==65533){r[t[139][a]]=35584+a;e[35584+a]=t[139][a]}t[140]="�����������������������������������������������������������������똀똁똂똃똄똅똆똇똈똉똊똋똌똍똎똏똒똓똕똖똗똙똚똛똜똝������똞똟똠똡똢똣똤똦똧똨똩똪똫똭똮똯똰똱똲똳똵똶똷똸똹똺������똻똼똽똾똿뙀뙁뙂뙃뙄뙅뙆뙇뙉뙊뙋뙌뙍뙎뙏뙐뙑뙒뙓뙔뙕뙖뙗뙘뙙뙚뙛뙜뙝뙞뙟뙠뙡뙢뙣뙥뙦뙧뙩뙪뙫뙬뙭뙮뙯뙰뙱뙲뙳뙴뙵뙶뙷뙸뙹뙺뙻뙼뙽뙾뙿뚀뚁뚂뚃뚄뚅뚆뚇뚈뚉뚊뚋뚌뚍뚎뚏뚐뚑뚒뚓뚔뚕뚖뚗뚘뚙뚚뚛뚞뚟뚡뚢뚣뚥뚦뚧뚨뚩뚪뚭뚮뚯뚰뚲뚳뚴뚵뚶뚷뚸뚹뚺뚻뚼뚽뚾뚿뛀뛁뛂�".split("");for(a=0;a!=t[140].length;++a)if(t[140][a].charCodeAt(0)!==65533){r[t[140][a]]=35840+a;e[35840+a]=t[140][a]}t[141]="�����������������������������������������������������������������뛃뛄뛅뛆뛇뛈뛉뛊뛋뛌뛍뛎뛏뛐뛑뛒뛓뛕뛖뛗뛘뛙뛚뛛뛜뛝������뛞뛟뛠뛡뛢뛣뛤뛥뛦뛧뛨뛩뛪뛫뛬뛭뛮뛯뛱뛲뛳뛵뛶뛷뛹뛺������뛻뛼뛽뛾뛿뜂뜃뜄뜆뜇뜈뜉뜊뜋뜌뜍뜎뜏뜐뜑뜒뜓뜔뜕뜖뜗뜘뜙뜚뜛뜜뜝뜞뜟뜠뜡뜢뜣뜤뜥뜦뜧뜪뜫뜭뜮뜱뜲뜳뜴뜵뜶뜷뜺뜼뜽뜾뜿띀띁띂띃띅띆띇띉띊띋띍띎띏띐띑띒띓띖띗띘띙띚띛띜띝띞띟띡띢띣띥띦띧띩띪띫띬띭띮띯띲띴띶띷띸띹띺띻띾띿랁랂랃랅랆랇랈랉랊랋랎랓랔랕랚랛랝랞�".split("");for(a=0;a!=t[141].length;++a)if(t[141][a].charCodeAt(0)!==65533){r[t[141][a]]=36096+a;e[36096+a]=t[141][a]}t[142]="�����������������������������������������������������������������랟랡랢랣랤랥랦랧랪랮랯랰랱랲랳랶랷랹랺랻랼랽랾랿럀럁������럂럃럄럅럆럈럊럋럌럍럎럏럐럑럒럓럔럕럖럗럘럙럚럛럜럝������럞럟럠럡럢럣럤럥럦럧럨럩럪럫럮럯럱럲럳럵럶럷럸럹럺럻럾렂렃렄렅렆렊렋렍렎렏렑렒렓렔렕렖렗렚렜렞렟렠렡렢렣렦렧렩렪렫렭렮렯렰렱렲렳렶렺렻렼렽렾렿롁롂롃롅롆롇롈롉롊롋롌롍롎롏롐롒롔롕롖롗롘롙롚롛롞롟롡롢롣롥롦롧롨롩롪롫롮롰롲롳롴롵롶롷롹롺롻롽롾롿뢀뢁뢂뢃뢄�".split("");for(a=0;a!=t[142].length;++a)if(t[142][a].charCodeAt(0)!==65533){r[t[142][a]]=36352+a;e[36352+a]=t[142][a]}t[143]="�����������������������������������������������������������������뢅뢆뢇뢈뢉뢊뢋뢌뢎뢏뢐뢑뢒뢓뢔뢕뢖뢗뢘뢙뢚뢛뢜뢝뢞뢟������뢠뢡뢢뢣뢤뢥뢦뢧뢩뢪뢫뢬뢭뢮뢯뢱뢲뢳뢵뢶뢷뢹뢺뢻뢼뢽������뢾뢿룂룄룆룇룈룉룊룋룍룎룏룑룒룓룕룖룗룘룙룚룛룜룞룠룢룣룤룥룦룧룪룫룭룮룯룱룲룳룴룵룶룷룺룼룾룿뤀뤁뤂뤃뤅뤆뤇뤈뤉뤊뤋뤌뤍뤎뤏뤐뤑뤒뤓뤔뤕뤖뤗뤙뤚뤛뤜뤝뤞뤟뤡뤢뤣뤤뤥뤦뤧뤨뤩뤪뤫뤬뤭뤮뤯뤰뤱뤲뤳뤴뤵뤶뤷뤸뤹뤺뤻뤾뤿륁륂륃륅륆륇륈륉륊륋륍륎륐륒륓륔륕륖륗�".split("");for(a=0;a!=t[143].length;++a)if(t[143][a].charCodeAt(0)!==65533){r[t[143][a]]=36608+a;e[36608+a]=t[143][a]}t[144]="�����������������������������������������������������������������륚륛륝륞륟륡륢륣륤륥륦륧륪륬륮륯륰륱륲륳륶륷륹륺륻륽������륾륿릀릁릂릃릆릈릋릌릏릐릑릒릓릔릕릖릗릘릙릚릛릜릝릞������릟릠릡릢릣릤릥릦릧릨릩릪릫릮릯릱릲릳릵릶릷릸릹릺릻릾맀맂맃맄맅맆맇맊맋맍맓맔맕맖맗맚맜맟맠맢맦맧맩맪맫맭맮맯맰맱맲맳맶맻맼맽맾맿먂먃먄먅먆먇먉먊먋먌먍먎먏먐먑먒먓먔먖먗먘먙먚먛먜먝먞먟먠먡먢먣먤먥먦먧먨먩먪먫먬먭먮먯먰먱먲먳먴먵먶먷먺먻먽먾먿멁멃멄멅멆�".split("");for(a=0;a!=t[144].length;++a)if(t[144][a].charCodeAt(0)!==65533){r[t[144][a]]=36864+a;e[36864+a]=t[144][a]}t[145]="�����������������������������������������������������������������멇멊멌멏멐멑멒멖멗멙멚멛멝멞멟멠멡멢멣멦멪멫멬멭멮멯������멲멳멵멶멷멹멺멻멼멽멾멿몀몁몂몆몈몉몊몋몍몎몏몐몑몒������몓몔몕몖몗몘몙몚몛몜몝몞몟몠몡몢몣몤몥몦몧몪몭몮몯몱몳몴몵몶몷몺몼몾몿뫀뫁뫂뫃뫅뫆뫇뫉뫊뫋뫌뫍뫎뫏뫐뫑뫒뫓뫔뫕뫖뫗뫚뫛뫜뫝뫞뫟뫠뫡뫢뫣뫤뫥뫦뫧뫨뫩뫪뫫뫬뫭뫮뫯뫰뫱뫲뫳뫴뫵뫶뫷뫸뫹뫺뫻뫽뫾뫿묁묂묃묅묆묇묈묉묊묋묌묎묐묒묓묔묕묖묗묙묚묛묝묞묟묡묢묣묤묥묦묧�".split("");for(a=0;a!=t[145].length;++a)if(t[145][a].charCodeAt(0)!==65533){r[t[145][a]]=37120+a;e[37120+a]=t[145][a]}t[146]="�����������������������������������������������������������������묨묪묬묭묮묯묰묱묲묳묷묹묺묿뭀뭁뭂뭃뭆뭈뭊뭋뭌뭎뭑뭒������뭓뭕뭖뭗뭙뭚뭛뭜뭝뭞뭟뭠뭢뭤뭥뭦뭧뭨뭩뭪뭫뭭뭮뭯뭰뭱������뭲뭳뭴뭵뭶뭷뭸뭹뭺뭻뭼뭽뭾뭿뮀뮁뮂뮃뮄뮅뮆뮇뮉뮊뮋뮍뮎뮏뮑뮒뮓뮔뮕뮖뮗뮘뮙뮚뮛뮜뮝뮞뮟뮠뮡뮢뮣뮥뮦뮧뮩뮪뮫뮭뮮뮯뮰뮱뮲뮳뮵뮶뮸뮹뮺뮻뮼뮽뮾뮿믁믂믃믅믆믇믉믊믋믌믍믎믏믑믒믔믕믖믗믘믙믚믛믜믝믞믟믠믡믢믣믤믥믦믧믨믩믪믫믬믭믮믯믰믱믲믳믴믵믶믷믺믻믽믾밁�".split("");for(a=0;a!=t[146].length;++a)if(t[146][a].charCodeAt(0)!==65533){r[t[146][a]]=37376+a;e[37376+a]=t[146][a]}t[147]="�����������������������������������������������������������������밃밄밅밆밇밊밎밐밒밓밙밚밠밡밢밣밦밨밪밫밬밮밯밲밳밵������밶밷밹밺밻밼밽밾밿뱂뱆뱇뱈뱊뱋뱎뱏뱑뱒뱓뱔뱕뱖뱗뱘뱙������뱚뱛뱜뱞뱟뱠뱡뱢뱣뱤뱥뱦뱧뱨뱩뱪뱫뱬뱭뱮뱯뱰뱱뱲뱳뱴뱵뱶뱷뱸뱹뱺뱻뱼뱽뱾뱿벀벁벂벃벆벇벉벊벍벏벐벑벒벓벖벘벛벜벝벞벟벢벣벥벦벩벪벫벬벭벮벯벲벶벷벸벹벺벻벾벿볁볂볃볅볆볇볈볉볊볋볌볎볒볓볔볖볗볙볚볛볝볞볟볠볡볢볣볤볥볦볧볨볩볪볫볬볭볮볯볰볱볲볳볷볹볺볻볽�".split("");for(a=0;a!=t[147].length;++a)if(t[147][a].charCodeAt(0)!==65533){r[t[147][a]]=37632+a;e[37632+a]=t[147][a]}t[148]="�����������������������������������������������������������������볾볿봀봁봂봃봆봈봊봋봌봍봎봏봑봒봓봕봖봗봘봙봚봛봜봝������봞봟봠봡봢봣봥봦봧봨봩봪봫봭봮봯봰봱봲봳봴봵봶봷봸봹������봺봻봼봽봾봿뵁뵂뵃뵄뵅뵆뵇뵊뵋뵍뵎뵏뵑뵒뵓뵔뵕뵖뵗뵚뵛뵜뵝뵞뵟뵠뵡뵢뵣뵥뵦뵧뵩뵪뵫뵬뵭뵮뵯뵰뵱뵲뵳뵴뵵뵶뵷뵸뵹뵺뵻뵼뵽뵾뵿붂붃붅붆붋붌붍붎붏붒붔붖붗붘붛붝붞붟붠붡붢붣붥붦붧붨붩붪붫붬붭붮붯붱붲붳붴붵붶붷붹붺붻붼붽붾붿뷀뷁뷂뷃뷄뷅뷆뷇뷈뷉뷊뷋뷌뷍뷎뷏뷐뷑�".split("");for(a=0;a!=t[148].length;++a)if(t[148][a].charCodeAt(0)!==65533){r[t[148][a]]=37888+a;e[37888+a]=t[148][a]}t[149]="�����������������������������������������������������������������뷒뷓뷖뷗뷙뷚뷛뷝뷞뷟뷠뷡뷢뷣뷤뷥뷦뷧뷨뷪뷫뷬뷭뷮뷯뷱������뷲뷳뷵뷶뷷뷹뷺뷻뷼뷽뷾뷿븁븂븄븆븇븈븉븊븋븎븏븑븒븓������븕븖븗븘븙븚븛븞븠븡븢븣븤븥븦븧븨븩븪븫븬븭븮븯븰븱븲븳븴븵븶븷븸븹븺븻븼븽븾븿빀빁빂빃빆빇빉빊빋빍빏빐빑빒빓빖빘빜빝빞빟빢빣빥빦빧빩빫빬빭빮빯빲빶빷빸빹빺빾빿뺁뺂뺃뺅뺆뺇뺈뺉뺊뺋뺎뺒뺓뺔뺕뺖뺗뺚뺛뺜뺝뺞뺟뺠뺡뺢뺣뺤뺥뺦뺧뺩뺪뺫뺬뺭뺮뺯뺰뺱뺲뺳뺴뺵뺶뺷�".split("");for(a=0;a!=t[149].length;++a)if(t[149][a].charCodeAt(0)!==65533){r[t[149][a]]=38144+a;e[38144+a]=t[149][a]}t[150]="�����������������������������������������������������������������뺸뺹뺺뺻뺼뺽뺾뺿뻀뻁뻂뻃뻄뻅뻆뻇뻈뻉뻊뻋뻌뻍뻎뻏뻒뻓������뻕뻖뻙뻚뻛뻜뻝뻞뻟뻡뻢뻦뻧뻨뻩뻪뻫뻭뻮뻯뻰뻱뻲뻳뻴뻵������뻶뻷뻸뻹뻺뻻뻼뻽뻾뻿뼀뼂뼃뼄뼅뼆뼇뼊뼋뼌뼍뼎뼏뼐뼑뼒뼓뼔뼕뼖뼗뼚뼞뼟뼠뼡뼢뼣뼤뼥뼦뼧뼨뼩뼪뼫뼬뼭뼮뼯뼰뼱뼲뼳뼴뼵뼶뼷뼸뼹뼺뼻뼼뼽뼾뼿뽂뽃뽅뽆뽇뽉뽊뽋뽌뽍뽎뽏뽒뽓뽔뽖뽗뽘뽙뽚뽛뽜뽝뽞뽟뽠뽡뽢뽣뽤뽥뽦뽧뽨뽩뽪뽫뽬뽭뽮뽯뽰뽱뽲뽳뽴뽵뽶뽷뽸뽹뽺뽻뽼뽽뽾뽿뾀뾁뾂�".split("");for(a=0;a!=t[150].length;++a)if(t[150][a].charCodeAt(0)!==65533){r[t[150][a]]=38400+a;e[38400+a]=t[150][a]}t[151]="�����������������������������������������������������������������뾃뾄뾅뾆뾇뾈뾉뾊뾋뾌뾍뾎뾏뾐뾑뾒뾓뾕뾖뾗뾘뾙뾚뾛뾜뾝������뾞뾟뾠뾡뾢뾣뾤뾥뾦뾧뾨뾩뾪뾫뾬뾭뾮뾯뾱뾲뾳뾴뾵뾶뾷뾸������뾹뾺뾻뾼뾽뾾뾿뿀뿁뿂뿃뿄뿆뿇뿈뿉뿊뿋뿎뿏뿑뿒뿓뿕뿖뿗뿘뿙뿚뿛뿝뿞뿠뿢뿣뿤뿥뿦뿧뿨뿩뿪뿫뿬뿭뿮뿯뿰뿱뿲뿳뿴뿵뿶뿷뿸뿹뿺뿻뿼뿽뿾뿿쀀쀁쀂쀃쀄쀅쀆쀇쀈쀉쀊쀋쀌쀍쀎쀏쀐쀑쀒쀓쀔쀕쀖쀗쀘쀙쀚쀛쀜쀝쀞쀟쀠쀡쀢쀣쀤쀥쀦쀧쀨쀩쀪쀫쀬쀭쀮쀯쀰쀱쀲쀳쀴쀵쀶쀷쀸쀹쀺쀻쀽쀾쀿�".split("");for(a=0;a!=t[151].length;++a)if(t[151][a].charCodeAt(0)!==65533){r[t[151][a]]=38656+a;e[38656+a]=t[151][a]}t[152]="�����������������������������������������������������������������쁀쁁쁂쁃쁄쁅쁆쁇쁈쁉쁊쁋쁌쁍쁎쁏쁐쁒쁓쁔쁕쁖쁗쁙쁚쁛������쁝쁞쁟쁡쁢쁣쁤쁥쁦쁧쁪쁫쁬쁭쁮쁯쁰쁱쁲쁳쁴쁵쁶쁷쁸쁹������쁺쁻쁼쁽쁾쁿삀삁삂삃삄삅삆삇삈삉삊삋삌삍삎삏삒삓삕삖삗삙삚삛삜삝삞삟삢삤삦삧삨삩삪삫삮삱삲삷삸삹삺삻삾샂샃샄샆샇샊샋샍샎샏샑샒샓샔샕샖샗샚샞샟샠샡샢샣샦샧샩샪샫샭샮샯샰샱샲샳샶샸샺샻샼샽샾샿섁섂섃섅섆섇섉섊섋섌섍섎섏섑섒섓섔섖섗섘섙섚섛섡섢섥섨섩섪섫섮�".split("");for(a=0;a!=t[152].length;++a)if(t[152][a].charCodeAt(0)!==65533){r[t[152][a]]=38912+a;e[38912+a]=t[152][a]}t[153]="�����������������������������������������������������������������섲섳섴섵섷섺섻섽섾섿셁셂셃셄셅셆셇셊셎셏셐셑셒셓셖셗������셙셚셛셝셞셟셠셡셢셣셦셪셫셬셭셮셯셱셲셳셵셶셷셹셺셻������셼셽셾셿솀솁솂솃솄솆솇솈솉솊솋솏솑솒솓솕솗솘솙솚솛솞솠솢솣솤솦솧솪솫솭솮솯솱솲솳솴솵솶솷솸솹솺솻솼솾솿쇀쇁쇂쇃쇅쇆쇇쇉쇊쇋쇍쇎쇏쇐쇑쇒쇓쇕쇖쇙쇚쇛쇜쇝쇞쇟쇡쇢쇣쇥쇦쇧쇩쇪쇫쇬쇭쇮쇯쇲쇴쇵쇶쇷쇸쇹쇺쇻쇾쇿숁숂숃숅숆숇숈숉숊숋숎숐숒숓숔숕숖숗숚숛숝숞숡숢숣�".split("");for(a=0;a!=t[153].length;++a)if(t[153][a].charCodeAt(0)!==65533){r[t[153][a]]=39168+a;e[39168+a]=t[153][a]}t[154]="�����������������������������������������������������������������숤숥숦숧숪숬숮숰숳숵숶숷숸숹숺숻숼숽숾숿쉀쉁쉂쉃쉄쉅������쉆쉇쉉쉊쉋쉌쉍쉎쉏쉒쉓쉕쉖쉗쉙쉚쉛쉜쉝쉞쉟쉡쉢쉣쉤쉦������쉧쉨쉩쉪쉫쉮쉯쉱쉲쉳쉵쉶쉷쉸쉹쉺쉻쉾슀슂슃슄슅슆슇슊슋슌슍슎슏슑슒슓슔슕슖슗슙슚슜슞슟슠슡슢슣슦슧슩슪슫슮슯슰슱슲슳슶슸슺슻슼슽슾슿싀싁싂싃싄싅싆싇싈싉싊싋싌싍싎싏싐싑싒싓싔싕싖싗싘싙싚싛싞싟싡싢싥싦싧싨싩싪싮싰싲싳싴싵싷싺싽싾싿쌁쌂쌃쌄쌅쌆쌇쌊쌋쌎쌏�".split("");for(a=0;a!=t[154].length;++a)if(t[154][a].charCodeAt(0)!==65533){r[t[154][a]]=39424+a;e[39424+a]=t[154][a]}t[155]="�����������������������������������������������������������������쌐쌑쌒쌖쌗쌙쌚쌛쌝쌞쌟쌠쌡쌢쌣쌦쌧쌪쌫쌬쌭쌮쌯쌰쌱쌲������쌳쌴쌵쌶쌷쌸쌹쌺쌻쌼쌽쌾쌿썀썁썂썃썄썆썇썈썉썊썋썌썍������썎썏썐썑썒썓썔썕썖썗썘썙썚썛썜썝썞썟썠썡썢썣썤썥썦썧썪썫썭썮썯썱썳썴썵썶썷썺썻썾썿쎀쎁쎂쎃쎅쎆쎇쎉쎊쎋쎍쎎쎏쎐쎑쎒쎓쎔쎕쎖쎗쎘쎙쎚쎛쎜쎝쎞쎟쎠쎡쎢쎣쎤쎥쎦쎧쎨쎩쎪쎫쎬쎭쎮쎯쎰쎱쎲쎳쎴쎵쎶쎷쎸쎹쎺쎻쎼쎽쎾쎿쏁쏂쏃쏄쏅쏆쏇쏈쏉쏊쏋쏌쏍쏎쏏쏐쏑쏒쏓쏔쏕쏖쏗쏚�".split("");for(a=0;a!=t[155].length;++a)if(t[155][a].charCodeAt(0)!==65533){r[t[155][a]]=39680+a;e[39680+a]=t[155][a]}t[156]="�����������������������������������������������������������������쏛쏝쏞쏡쏣쏤쏥쏦쏧쏪쏫쏬쏮쏯쏰쏱쏲쏳쏶쏷쏹쏺쏻쏼쏽쏾������쏿쐀쐁쐂쐃쐄쐅쐆쐇쐉쐊쐋쐌쐍쐎쐏쐑쐒쐓쐔쐕쐖쐗쐘쐙쐚������쐛쐜쐝쐞쐟쐠쐡쐢쐣쐥쐦쐧쐨쐩쐪쐫쐭쐮쐯쐱쐲쐳쐵쐶쐷쐸쐹쐺쐻쐾쐿쑀쑁쑂쑃쑄쑅쑆쑇쑉쑊쑋쑌쑍쑎쑏쑐쑑쑒쑓쑔쑕쑖쑗쑘쑙쑚쑛쑜쑝쑞쑟쑠쑡쑢쑣쑦쑧쑩쑪쑫쑭쑮쑯쑰쑱쑲쑳쑶쑷쑸쑺쑻쑼쑽쑾쑿쒁쒂쒃쒄쒅쒆쒇쒈쒉쒊쒋쒌쒍쒎쒏쒐쒑쒒쒓쒕쒖쒗쒘쒙쒚쒛쒝쒞쒟쒠쒡쒢쒣쒤쒥쒦쒧쒨쒩�".split("");for(a=0;a!=t[156].length;++a)if(t[156][a].charCodeAt(0)!==65533){r[t[156][a]]=39936+a;e[39936+a]=t[156][a]}t[157]="�����������������������������������������������������������������쒪쒫쒬쒭쒮쒯쒰쒱쒲쒳쒴쒵쒶쒷쒹쒺쒻쒽쒾쒿쓀쓁쓂쓃쓄쓅������쓆쓇쓈쓉쓊쓋쓌쓍쓎쓏쓐쓑쓒쓓쓔쓕쓖쓗쓘쓙쓚쓛쓜쓝쓞쓟������쓠쓡쓢쓣쓤쓥쓦쓧쓨쓪쓫쓬쓭쓮쓯쓲쓳쓵쓶쓷쓹쓻쓼쓽쓾씂씃씄씅씆씇씈씉씊씋씍씎씏씑씒씓씕씖씗씘씙씚씛씝씞씟씠씡씢씣씤씥씦씧씪씫씭씮씯씱씲씳씴씵씶씷씺씼씾씿앀앁앂앃앆앇앋앏앐앑앒앖앚앛앜앟앢앣앥앦앧앩앪앫앬앭앮앯앲앶앷앸앹앺앻앾앿얁얂얃얅얆얈얉얊얋얎얐얒얓얔�".split("");for(a=0;a!=t[157].length;++a)if(t[157][a].charCodeAt(0)!==65533){r[t[157][a]]=40192+a;e[40192+a]=t[157][a]}t[158]="�����������������������������������������������������������������얖얙얚얛얝얞얟얡얢얣얤얥얦얧얨얪얫얬얭얮얯얰얱얲얳얶������얷얺얿엀엁엂엃엋엍엏엒엓엕엖엗엙엚엛엜엝엞엟엢엤엦엧������엨엩엪엫엯엱엲엳엵엸엹엺엻옂옃옄옉옊옋옍옎옏옑옒옓옔옕옖옗옚옝옞옟옠옡옢옣옦옧옩옪옫옯옱옲옶옸옺옼옽옾옿왂왃왅왆왇왉왊왋왌왍왎왏왒왖왗왘왙왚왛왞왟왡왢왣왤왥왦왧왨왩왪왫왭왮왰왲왳왴왵왶왷왺왻왽왾왿욁욂욃욄욅욆욇욊욌욎욏욐욑욒욓욖욗욙욚욛욝욞욟욠욡욢욣욦�".split("");for(a=0;a!=t[158].length;++a)if(t[158][a].charCodeAt(0)!==65533){r[t[158][a]]=40448+a;e[40448+a]=t[158][a]}t[159]="�����������������������������������������������������������������욨욪욫욬욭욮욯욲욳욵욶욷욻욼욽욾욿웂웄웆웇웈웉웊웋웎������웏웑웒웓웕웖웗웘웙웚웛웞웟웢웣웤웥웦웧웪웫웭웮웯웱웲������웳웴웵웶웷웺웻웼웾웿윀윁윂윃윆윇윉윊윋윍윎윏윐윑윒윓윖윘윚윛윜윝윞윟윢윣윥윦윧윩윪윫윬윭윮윯윲윴윶윸윹윺윻윾윿읁읂읃읅읆읇읈읉읋읎읐읙읚읛읝읞읟읡읢읣읤읥읦읧읩읪읬읭읮읯읰읱읲읳읶읷읹읺읻읿잀잁잂잆잋잌잍잏잒잓잕잙잛잜잝잞잟잢잧잨잩잪잫잮잯잱잲잳잵잶잷�".split("");for(a=0;a!=t[159].length;++a)if(t[159][a].charCodeAt(0)!==65533){r[t[159][a]]=40704+a;e[40704+a]=t[159][a]}t[160]="�����������������������������������������������������������������잸잹잺잻잾쟂쟃쟄쟅쟆쟇쟊쟋쟍쟏쟑쟒쟓쟔쟕쟖쟗쟙쟚쟛쟜������쟞쟟쟠쟡쟢쟣쟥쟦쟧쟩쟪쟫쟭쟮쟯쟰쟱쟲쟳쟴쟵쟶쟷쟸쟹쟺������쟻쟼쟽쟾쟿젂젃젅젆젇젉젋젌젍젎젏젒젔젗젘젙젚젛젞젟젡젢젣젥젦젧젨젩젪젫젮젰젲젳젴젵젶젷젹젺젻젽젾젿졁졂졃졄졅졆졇졊졋졎졏졐졑졒졓졕졖졗졘졙졚졛졜졝졞졟졠졡졢졣졤졥졦졧졨졩졪졫졬졭졮졯졲졳졵졶졷졹졻졼졽졾졿좂좄좈좉좊좎좏좐좑좒좓좕좖좗좘좙좚좛좜좞좠좢좣좤�".split("");for(a=0;a!=t[160].length;++a)if(t[160][a].charCodeAt(0)!==65533){r[t[160][a]]=40960+a;e[40960+a]=t[160][a]}t[161]="�����������������������������������������������������������������좥좦좧좩좪좫좬좭좮좯좰좱좲좳좴좵좶좷좸좹좺좻좾좿죀죁������죂죃죅죆죇죉죊죋죍죎죏죐죑죒죓죖죘죚죛죜죝죞죟죢죣죥������죦죧죨죩죪죫죬죭죮죯죰죱죲죳죴죶죷죸죹죺죻죾죿줁줂줃줇줈줉줊줋줎 、。·‥…¨〃­―∥\∼‘’“”〔〕〈〉《》「」『』【】±×÷≠≤≥∞∴°′″℃Å¢£¥♂♀∠⊥⌒∂∇≡≒§※☆★○●◎◇◆□■△▲▽▼→←↑↓↔〓≪≫√∽∝∵∫∬∈∋⊆⊇⊂⊃∪∩∧∨¬�".split("");for(a=0;a!=t[161].length;++a)if(t[161][a].charCodeAt(0)!==65533){r[t[161][a]]=41216+a;e[41216+a]=t[161][a]}t[162]="�����������������������������������������������������������������줐줒줓줔줕줖줗줙줚줛줜줝줞줟줠줡줢줣줤줥줦줧줨줩줪줫������줭줮줯줰줱줲줳줵줶줷줸줹줺줻줼줽줾줿쥀쥁쥂쥃쥄쥅쥆쥇������쥈쥉쥊쥋쥌쥍쥎쥏쥒쥓쥕쥖쥗쥙쥚쥛쥜쥝쥞쥟쥢쥤쥥쥦쥧쥨쥩쥪쥫쥭쥮쥯⇒⇔∀∃´~ˇ˘˝˚˙¸˛¡¿ː∮∑∏¤℉‰◁◀▷▶♤♠♡♥♧♣⊙◈▣◐◑▒▤▥▨▧▦▩♨☏☎☜☞¶†‡↕↗↙↖↘♭♩♪♬㉿㈜№㏇™㏂㏘℡€®������������������������".split("");for(a=0;a!=t[162].length;++a)if(t[162][a].charCodeAt(0)!==65533){r[t[162][a]]=41472+a;e[41472+a]=t[162][a]}t[163]="�����������������������������������������������������������������쥱쥲쥳쥵쥶쥷쥸쥹쥺쥻쥽쥾쥿즀즁즂즃즄즅즆즇즊즋즍즎즏������즑즒즓즔즕즖즗즚즜즞즟즠즡즢즣즤즥즦즧즨즩즪즫즬즭즮������즯즰즱즲즳즴즵즶즷즸즹즺즻즼즽즾즿짂짃짅짆짉짋짌짍짎짏짒짔짗짘짛!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[₩]^_`abcdefghijklmnopqrstuvwxyz{|} ̄�".split("");for(a=0;a!=t[163].length;++a)if(t[163][a].charCodeAt(0)!==65533){r[t[163][a]]=41728+a;e[41728+a]=t[163][a]}t[164]="�����������������������������������������������������������������짞짟짡짣짥짦짨짩짪짫짮짲짳짴짵짶짷짺짻짽짾짿쨁쨂쨃쨄������쨅쨆쨇쨊쨎쨏쨐쨑쨒쨓쨕쨖쨗쨙쨚쨛쨜쨝쨞쨟쨠쨡쨢쨣쨤쨥������쨦쨧쨨쨪쨫쨬쨭쨮쨯쨰쨱쨲쨳쨴쨵쨶쨷쨸쨹쨺쨻쨼쨽쨾쨿쩀쩁쩂쩃쩄쩅쩆ㄱㄲㄳㄴㄵㄶㄷㄸㄹㄺㄻㄼㄽㄾㄿㅀㅁㅂㅃㅄㅅㅆㅇㅈㅉㅊㅋㅌㅍㅎㅏㅐㅑㅒㅓㅔㅕㅖㅗㅘㅙㅚㅛㅜㅝㅞㅟㅠㅡㅢㅣㅤㅥㅦㅧㅨㅩㅪㅫㅬㅭㅮㅯㅰㅱㅲㅳㅴㅵㅶㅷㅸㅹㅺㅻㅼㅽㅾㅿㆀㆁㆂㆃㆄㆅㆆㆇㆈㆉㆊㆋㆌㆍㆎ�".split("");for(a=0;a!=t[164].length;++a)if(t[164][a].charCodeAt(0)!==65533){r[t[164][a]]=41984+a;e[41984+a]=t[164][a]}t[165]="�����������������������������������������������������������������쩇쩈쩉쩊쩋쩎쩏쩑쩒쩓쩕쩖쩗쩘쩙쩚쩛쩞쩢쩣쩤쩥쩦쩧쩩쩪������쩫쩬쩭쩮쩯쩰쩱쩲쩳쩴쩵쩶쩷쩸쩹쩺쩻쩼쩾쩿쪀쪁쪂쪃쪅쪆������쪇쪈쪉쪊쪋쪌쪍쪎쪏쪐쪑쪒쪓쪔쪕쪖쪗쪙쪚쪛쪜쪝쪞쪟쪠쪡쪢쪣쪤쪥쪦쪧ⅰⅱⅲⅳⅴⅵⅶⅷⅸⅹ�����ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ�������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω�������".split("");for(a=0;a!=t[165].length;++a)if(t[165][a].charCodeAt(0)!==65533){r[t[165][a]]=42240+a;e[42240+a]=t[165][a]}t[166]="�����������������������������������������������������������������쪨쪩쪪쪫쪬쪭쪮쪯쪰쪱쪲쪳쪴쪵쪶쪷쪸쪹쪺쪻쪾쪿쫁쫂쫃쫅������쫆쫇쫈쫉쫊쫋쫎쫐쫒쫔쫕쫖쫗쫚쫛쫜쫝쫞쫟쫡쫢쫣쫤쫥쫦쫧������쫨쫩쫪쫫쫭쫮쫯쫰쫱쫲쫳쫵쫶쫷쫸쫹쫺쫻쫼쫽쫾쫿쬀쬁쬂쬃쬄쬅쬆쬇쬉쬊─│┌┐┘└├┬┤┴┼━┃┏┓┛┗┣┳┫┻╋┠┯┨┷┿┝┰┥┸╂┒┑┚┙┖┕┎┍┞┟┡┢┦┧┩┪┭┮┱┲┵┶┹┺┽┾╀╁╃╄╅╆╇╈╉╊���������������������������".split("");for(a=0;a!=t[166].length;++a)if(t[166][a].charCodeAt(0)!==65533){r[t[166][a]]=42496+a;e[42496+a]=t[166][a]}t[167]="�����������������������������������������������������������������쬋쬌쬍쬎쬏쬑쬒쬓쬕쬖쬗쬙쬚쬛쬜쬝쬞쬟쬢쬣쬤쬥쬦쬧쬨쬩������쬪쬫쬬쬭쬮쬯쬰쬱쬲쬳쬴쬵쬶쬷쬸쬹쬺쬻쬼쬽쬾쬿쭀쭂쭃쭄������쭅쭆쭇쭊쭋쭍쭎쭏쭑쭒쭓쭔쭕쭖쭗쭚쭛쭜쭞쭟쭠쭡쭢쭣쭥쭦쭧쭨쭩쭪쭫쭬㎕㎖㎗ℓ㎘㏄㎣㎤㎥㎦㎙㎚㎛㎜㎝㎞㎟㎠㎡㎢㏊㎍㎎㎏㏏㎈㎉㏈㎧㎨㎰㎱㎲㎳㎴㎵㎶㎷㎸㎹㎀㎁㎂㎃㎄㎺㎻㎼㎽㎾㎿㎐㎑㎒㎓㎔Ω㏀㏁㎊㎋㎌㏖㏅㎭㎮㎯㏛㎩㎪㎫㎬㏝㏐㏓㏃㏉㏜㏆����������������".split("");for(a=0;a!=t[167].length;++a)if(t[167][a].charCodeAt(0)!==65533){r[t[167][a]]=42752+a;e[42752+a]=t[167][a]}t[168]="�����������������������������������������������������������������쭭쭮쭯쭰쭱쭲쭳쭴쭵쭶쭷쭺쭻쭼쭽쭾쭿쮀쮁쮂쮃쮄쮅쮆쮇쮈������쮉쮊쮋쮌쮍쮎쮏쮐쮑쮒쮓쮔쮕쮖쮗쮘쮙쮚쮛쮝쮞쮟쮠쮡쮢쮣������쮤쮥쮦쮧쮨쮩쮪쮫쮬쮭쮮쮯쮰쮱쮲쮳쮴쮵쮶쮷쮹쮺쮻쮼쮽쮾쮿쯀쯁쯂쯃쯄ÆЪĦ�IJ�ĿŁØŒºÞŦŊ�㉠㉡㉢㉣㉤㉥㉦㉧㉨㉩㉪㉫㉬㉭㉮㉯㉰㉱㉲㉳㉴㉵㉶㉷㉸㉹㉺㉻ⓐⓑⓒⓓⓔⓕⓖⓗⓘⓙⓚⓛⓜⓝⓞⓟⓠⓡⓢⓣⓤⓥⓦⓧⓨⓩ①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮½⅓⅔¼¾⅛⅜⅝⅞�".split("");for(a=0;a!=t[168].length;++a)if(t[168][a].charCodeAt(0)!==65533){r[t[168][a]]=43008+a;e[43008+a]=t[168][a]}t[169]="�����������������������������������������������������������������쯅쯆쯇쯈쯉쯊쯋쯌쯍쯎쯏쯐쯑쯒쯓쯕쯖쯗쯘쯙쯚쯛쯜쯝쯞쯟������쯠쯡쯢쯣쯥쯦쯨쯪쯫쯬쯭쯮쯯쯰쯱쯲쯳쯴쯵쯶쯷쯸쯹쯺쯻쯼������쯽쯾쯿찀찁찂찃찄찅찆찇찈찉찊찋찎찏찑찒찓찕찖찗찘찙찚찛찞찟찠찣찤æđðħıijĸŀłøœßþŧŋʼn㈀㈁㈂㈃㈄㈅㈆㈇㈈㈉㈊㈋㈌㈍㈎㈏㈐㈑㈒㈓㈔㈕㈖㈗㈘㈙㈚㈛⒜⒝⒞⒟⒠⒡⒢⒣⒤⒥⒦⒧⒨⒩⒪⒫⒬⒭⒮⒯⒰⒱⒲⒳⒴⒵⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂¹²³⁴ⁿ₁₂₃₄�".split("");for(a=0;a!=t[169].length;++a)if(t[169][a].charCodeAt(0)!==65533){r[t[169][a]]=43264+a;e[43264+a]=t[169][a]}t[170]="�����������������������������������������������������������������찥찦찪찫찭찯찱찲찳찴찵찶찷찺찿챀챁챂챃챆챇챉챊챋챍챎������챏챐챑챒챓챖챚챛챜챝챞챟챡챢챣챥챧챩챪챫챬챭챮챯챱챲������챳챴챶챷챸챹챺챻챼챽챾챿첀첁첂첃첄첅첆첇첈첉첊첋첌첍첎첏첐첑첒첓ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん������������".split("");for(a=0;a!=t[170].length;++a)if(t[170][a].charCodeAt(0)!==65533){r[t[170][a]]=43520+a;e[43520+a]=t[170][a]}t[171]="�����������������������������������������������������������������첔첕첖첗첚첛첝첞첟첡첢첣첤첥첦첧첪첮첯첰첱첲첳첶첷첹������첺첻첽첾첿쳀쳁쳂쳃쳆쳈쳊쳋쳌쳍쳎쳏쳑쳒쳓쳕쳖쳗쳘쳙쳚������쳛쳜쳝쳞쳟쳠쳡쳢쳣쳥쳦쳧쳨쳩쳪쳫쳭쳮쳯쳱쳲쳳쳴쳵쳶쳷쳸쳹쳺쳻쳼쳽ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ���������".split("");for(a=0;a!=t[171].length;++a)if(t[171][a].charCodeAt(0)!==65533){r[t[171][a]]=43776+a;e[43776+a]=t[171][a]}t[172]="�����������������������������������������������������������������쳾쳿촀촂촃촄촅촆촇촊촋촍촎촏촑촒촓촔촕촖촗촚촜촞촟촠������촡촢촣촥촦촧촩촪촫촭촮촯촰촱촲촳촴촵촶촷촸촺촻촼촽촾������촿쵀쵁쵂쵃쵄쵅쵆쵇쵈쵉쵊쵋쵌쵍쵎쵏쵐쵑쵒쵓쵔쵕쵖쵗쵘쵙쵚쵛쵝쵞쵟АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмнопрстуфхцчшщъыьэюя��������������".split("");for(a=0;a!=t[172].length;++a)if(t[172][a].charCodeAt(0)!==65533){r[t[172][a]]=44032+a;e[44032+a]=t[172][a]}t[173]="�����������������������������������������������������������������쵡쵢쵣쵥쵦쵧쵨쵩쵪쵫쵮쵰쵲쵳쵴쵵쵶쵷쵹쵺쵻쵼쵽쵾쵿춀������춁춂춃춄춅춆춇춉춊춋춌춍춎춏춐춑춒춓춖춗춙춚춛춝춞춟������춠춡춢춣춦춨춪춫춬춭춮춯춱춲춳춴춵춶춷춸춹춺춻춼춽춾춿췀췁췂췃췅�����������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[173].length;++a)if(t[173][a].charCodeAt(0)!==65533){r[t[173][a]]=44288+a;e[44288+a]=t[173][a]}t[174]="�����������������������������������������������������������������췆췇췈췉췊췋췍췎췏췑췒췓췔췕췖췗췘췙췚췛췜췝췞췟췠췡������췢췣췤췥췦췧췩췪췫췭췮췯췱췲췳췴췵췶췷췺췼췾췿츀츁츂������츃츅츆츇츉츊츋츍츎츏츐츑츒츓츕츖츗츘츚츛츜츝츞츟츢츣츥츦츧츩츪츫�����������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[174].length;++a)if(t[174][a].charCodeAt(0)!==65533){r[t[174][a]]=44544+a;e[44544+a]=t[174][a]}t[175]="�����������������������������������������������������������������츬츭츮츯츲츴츶츷츸츹츺츻츼츽츾츿칀칁칂칃칄칅칆칇칈칉������칊칋칌칍칎칏칐칑칒칓칔칕칖칗칚칛칝칞칢칣칤칥칦칧칪칬������칮칯칰칱칲칳칶칷칹칺칻칽칾칿캀캁캂캃캆캈캊캋캌캍캎캏캒캓캕캖캗캙�����������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[175].length;++a)if(t[175][a].charCodeAt(0)!==65533){r[t[175][a]]=44800+a;e[44800+a]=t[175][a]}t[176]="�����������������������������������������������������������������캚캛캜캝캞캟캢캦캧캨캩캪캫캮캯캰캱캲캳캴캵캶캷캸캹캺������캻캼캽캾캿컀컂컃컄컅컆컇컈컉컊컋컌컍컎컏컐컑컒컓컔컕������컖컗컘컙컚컛컜컝컞컟컠컡컢컣컦컧컩컪컭컮컯컰컱컲컳컶컺컻컼컽컾컿가각간갇갈갉갊감갑값갓갔강갖갗같갚갛개객갠갤갬갭갯갰갱갸갹갼걀걋걍걔걘걜거걱건걷걸걺검겁것겄겅겆겉겊겋게겐겔겜겝겟겠겡겨격겪견겯결겸겹겻겼경곁계곈곌곕곗고곡곤곧골곪곬곯곰곱곳공곶과곽관괄괆�".split("");for(a=0;a!=t[176].length;++a)if(t[176][a].charCodeAt(0)!==65533){r[t[176][a]]=45056+a;e[45056+a]=t[176][a]}t[177]="�����������������������������������������������������������������켂켃켅켆켇켉켊켋켌켍켎켏켒켔켖켗켘켙켚켛켝켞켟켡켢켣������켥켦켧켨켩켪켫켮켲켳켴켵켶켷켹켺켻켼켽켾켿콀콁콂콃콄������콅콆콇콈콉콊콋콌콍콎콏콐콑콒콓콖콗콙콚콛콝콞콟콠콡콢콣콦콨콪콫콬괌괍괏광괘괜괠괩괬괭괴괵괸괼굄굅굇굉교굔굘굡굣구국군굳굴굵굶굻굼굽굿궁궂궈궉권궐궜궝궤궷귀귁귄귈귐귑귓규균귤그극근귿글긁금급긋긍긔기긱긴긷길긺김깁깃깅깆깊까깍깎깐깔깖깜깝깟깠깡깥깨깩깬깰깸�".split("");for(a=0;a!=t[177].length;++a)if(t[177][a].charCodeAt(0)!==65533){r[t[177][a]]=45312+a;e[45312+a]=t[177][a]}t[178]="�����������������������������������������������������������������콭콮콯콲콳콵콶콷콹콺콻콼콽콾콿쾁쾂쾃쾄쾆쾇쾈쾉쾊쾋쾍������쾎쾏쾐쾑쾒쾓쾔쾕쾖쾗쾘쾙쾚쾛쾜쾝쾞쾟쾠쾢쾣쾤쾥쾦쾧쾩������쾪쾫쾬쾭쾮쾯쾱쾲쾳쾴쾵쾶쾷쾸쾹쾺쾻쾼쾽쾾쾿쿀쿁쿂쿃쿅쿆쿇쿈쿉쿊쿋깹깻깼깽꺄꺅꺌꺼꺽꺾껀껄껌껍껏껐껑께껙껜껨껫껭껴껸껼꼇꼈꼍꼐꼬꼭꼰꼲꼴꼼꼽꼿꽁꽂꽃꽈꽉꽐꽜꽝꽤꽥꽹꾀꾄꾈꾐꾑꾕꾜꾸꾹꾼꿀꿇꿈꿉꿋꿍꿎꿔꿜꿨꿩꿰꿱꿴꿸뀀뀁뀄뀌뀐뀔뀜뀝뀨끄끅끈끊끌끎끓끔끕끗끙�".split("");for(a=0;a!=t[178].length;++a)if(t[178][a].charCodeAt(0)!==65533){r[t[178][a]]=45568+a;e[45568+a]=t[178][a]}t[179]="�����������������������������������������������������������������쿌쿍쿎쿏쿐쿑쿒쿓쿔쿕쿖쿗쿘쿙쿚쿛쿜쿝쿞쿟쿢쿣쿥쿦쿧쿩������쿪쿫쿬쿭쿮쿯쿲쿴쿶쿷쿸쿹쿺쿻쿽쿾쿿퀁퀂퀃퀅퀆퀇퀈퀉퀊������퀋퀌퀍퀎퀏퀐퀒퀓퀔퀕퀖퀗퀙퀚퀛퀜퀝퀞퀟퀠퀡퀢퀣퀤퀥퀦퀧퀨퀩퀪퀫퀬끝끼끽낀낄낌낍낏낑나낙낚난낟날낡낢남납낫났낭낮낯낱낳내낵낸낼냄냅냇냈냉냐냑냔냘냠냥너넉넋넌널넒넓넘넙넛넜넝넣네넥넨넬넴넵넷넸넹녀녁년녈념녑녔녕녘녜녠노녹논놀놂놈놉놋농높놓놔놘놜놨뇌뇐뇔뇜뇝�".split("");for(a=0;a!=t[179].length;++a)if(t[179][a].charCodeAt(0)!==65533){r[t[179][a]]=45824+a;e[45824+a]=t[179][a]}t[180]="�����������������������������������������������������������������퀮퀯퀰퀱퀲퀳퀶퀷퀹퀺퀻퀽퀾퀿큀큁큂큃큆큈큊큋큌큍큎큏������큑큒큓큕큖큗큙큚큛큜큝큞큟큡큢큣큤큥큦큧큨큩큪큫큮큯������큱큲큳큵큶큷큸큹큺큻큾큿킀킂킃킄킅킆킇킈킉킊킋킌킍킎킏킐킑킒킓킔뇟뇨뇩뇬뇰뇹뇻뇽누눅눈눋눌눔눕눗눙눠눴눼뉘뉜뉠뉨뉩뉴뉵뉼늄늅늉느늑는늘늙늚늠늡늣능늦늪늬늰늴니닉닌닐닒님닙닛닝닢다닥닦단닫달닭닮닯닳담답닷닸당닺닻닿대댁댄댈댐댑댓댔댕댜더덕덖던덛덜덞덟덤덥�".split("");for(a=0;a!=t[180].length;++a)if(t[180][a].charCodeAt(0)!==65533){r[t[180][a]]=46080+a;e[46080+a]=t[180][a]}t[181]="�����������������������������������������������������������������킕킖킗킘킙킚킛킜킝킞킟킠킡킢킣킦킧킩킪킫킭킮킯킰킱킲������킳킶킸킺킻킼킽킾킿탂탃탅탆탇탊탋탌탍탎탏탒탖탗탘탙탚������탛탞탟탡탢탣탥탦탧탨탩탪탫탮탲탳탴탵탶탷탹탺탻탼탽탾탿턀턁턂턃턄덧덩덫덮데덱덴델뎀뎁뎃뎄뎅뎌뎐뎔뎠뎡뎨뎬도독돈돋돌돎돐돔돕돗동돛돝돠돤돨돼됐되된될됨됩됫됴두둑둔둘둠둡둣둥둬뒀뒈뒝뒤뒨뒬뒵뒷뒹듀듄듈듐듕드득든듣들듦듬듭듯등듸디딕딘딛딜딤딥딧딨딩딪따딱딴딸�".split("");for(a=0;a!=t[181].length;++a)if(t[181][a].charCodeAt(0)!==65533){r[t[181][a]]=46336+a;e[46336+a]=t[181][a]}t[182]="�����������������������������������������������������������������턅턆턇턈턉턊턋턌턎턏턐턑턒턓턔턕턖턗턘턙턚턛턜턝턞턟������턠턡턢턣턤턥턦턧턨턩턪턫턬턭턮턯턲턳턵턶턷턹턻턼턽턾������턿텂텆텇텈텉텊텋텎텏텑텒텓텕텖텗텘텙텚텛텞텠텢텣텤텥텦텧텩텪텫텭땀땁땃땄땅땋때땍땐땔땜땝땟땠땡떠떡떤떨떪떫떰떱떳떴떵떻떼떽뗀뗄뗌뗍뗏뗐뗑뗘뗬또똑똔똘똥똬똴뙈뙤뙨뚜뚝뚠뚤뚫뚬뚱뛔뛰뛴뛸뜀뜁뜅뜨뜩뜬뜯뜰뜸뜹뜻띄띈띌띔띕띠띤띨띰띱띳띵라락란랄람랍랏랐랑랒랖랗�".split("");for(a=0;a!=t[182].length;++a)if(t[182][a].charCodeAt(0)!==65533){r[t[182][a]]=46592+a;e[46592+a]=t[182][a]}t[183]="�����������������������������������������������������������������텮텯텰텱텲텳텴텵텶텷텸텹텺텻텽텾텿톀톁톂톃톅톆톇톉톊������톋톌톍톎톏톐톑톒톓톔톕톖톗톘톙톚톛톜톝톞톟톢톣톥톦톧������톩톪톫톬톭톮톯톲톴톶톷톸톹톻톽톾톿퇁퇂퇃퇄퇅퇆퇇퇈퇉퇊퇋퇌퇍퇎퇏래랙랜랠램랩랫랬랭랴략랸럇량러럭런럴럼럽럿렀렁렇레렉렌렐렘렙렛렝려력련렬렴렵렷렸령례롄롑롓로록론롤롬롭롯롱롸롼뢍뢨뢰뢴뢸룀룁룃룅료룐룔룝룟룡루룩룬룰룸룹룻룽뤄뤘뤠뤼뤽륀륄륌륏륑류륙륜률륨륩�".split("");for(a=0;a!=t[183].length;++a)if(t[183][a].charCodeAt(0)!==65533){r[t[183][a]]=46848+a;e[46848+a]=t[183][a]}t[184]="�����������������������������������������������������������������퇐퇑퇒퇓퇔퇕퇖퇗퇙퇚퇛퇜퇝퇞퇟퇠퇡퇢퇣퇤퇥퇦퇧퇨퇩퇪������퇫퇬퇭퇮퇯퇰퇱퇲퇳퇵퇶퇷퇹퇺퇻퇼퇽퇾퇿툀툁툂툃툄툅툆������툈툊툋툌툍툎툏툑툒툓툔툕툖툗툘툙툚툛툜툝툞툟툠툡툢툣툤툥툦툧툨툩륫륭르륵른를름릅릇릉릊릍릎리릭린릴림립릿링마막만많맏말맑맒맘맙맛망맞맡맣매맥맨맬맴맵맷맸맹맺먀먁먈먕머먹먼멀멂멈멉멋멍멎멓메멕멘멜멤멥멧멨멩며멱면멸몃몄명몇몌모목몫몬몰몲몸몹못몽뫄뫈뫘뫙뫼�".split("");for(a=0;a!=t[184].length;++a)if(t[184][a].charCodeAt(0)!==65533){r[t[184][a]]=47104+a;e[47104+a]=t[184][a]}t[185]="�����������������������������������������������������������������툪툫툮툯툱툲툳툵툶툷툸툹툺툻툾퉀퉂퉃퉄퉅퉆퉇퉉퉊퉋퉌������퉍퉎퉏퉐퉑퉒퉓퉔퉕퉖퉗퉘퉙퉚퉛퉝퉞퉟퉠퉡퉢퉣퉥퉦퉧퉨������퉩퉪퉫퉬퉭퉮퉯퉰퉱퉲퉳퉴퉵퉶퉷퉸퉹퉺퉻퉼퉽퉾퉿튂튃튅튆튇튉튊튋튌묀묄묍묏묑묘묜묠묩묫무묵묶문묻물묽묾뭄뭅뭇뭉뭍뭏뭐뭔뭘뭡뭣뭬뮈뮌뮐뮤뮨뮬뮴뮷므믄믈믐믓미믹민믿밀밂밈밉밋밌밍및밑바박밖밗반받발밝밞밟밤밥밧방밭배백밴밸뱀뱁뱃뱄뱅뱉뱌뱍뱐뱝버벅번벋벌벎범법벗�".split("");for(a=0;a!=t[185].length;++a)if(t[185][a].charCodeAt(0)!==65533){r[t[185][a]]=47360+a;e[47360+a]=t[185][a]}t[186]="�����������������������������������������������������������������튍튎튏튒튓튔튖튗튘튙튚튛튝튞튟튡튢튣튥튦튧튨튩튪튫튭������튮튯튰튲튳튴튵튶튷튺튻튽튾틁틃틄틅틆틇틊틌틍틎틏틐틑������틒틓틕틖틗틙틚틛틝틞틟틠틡틢틣틦틧틨틩틪틫틬틭틮틯틲틳틵틶틷틹틺벙벚베벡벤벧벨벰벱벳벴벵벼벽변별볍볏볐병볕볘볜보복볶본볼봄봅봇봉봐봔봤봬뵀뵈뵉뵌뵐뵘뵙뵤뵨부북분붇불붉붊붐붑붓붕붙붚붜붤붰붸뷔뷕뷘뷜뷩뷰뷴뷸븀븃븅브븍븐블븜븝븟비빅빈빌빎빔빕빗빙빚빛빠빡빤�".split("");for(a=0;a!=t[186].length;++a)if(t[186][a].charCodeAt(0)!==65533){r[t[186][a]]=47616+a;e[47616+a]=t[186][a]}t[187]="�����������������������������������������������������������������틻틼틽틾틿팂팄팆팇팈팉팊팋팏팑팒팓팕팗팘팙팚팛팞팢팣������팤팦팧팪팫팭팮팯팱팲팳팴팵팶팷팺팾팿퍀퍁퍂퍃퍆퍇퍈퍉������퍊퍋퍌퍍퍎퍏퍐퍑퍒퍓퍔퍕퍖퍗퍘퍙퍚퍛퍜퍝퍞퍟퍠퍡퍢퍣퍤퍥퍦퍧퍨퍩빨빪빰빱빳빴빵빻빼빽뺀뺄뺌뺍뺏뺐뺑뺘뺙뺨뻐뻑뻔뻗뻘뻠뻣뻤뻥뻬뼁뼈뼉뼘뼙뼛뼜뼝뽀뽁뽄뽈뽐뽑뽕뾔뾰뿅뿌뿍뿐뿔뿜뿟뿡쀼쁑쁘쁜쁠쁨쁩삐삑삔삘삠삡삣삥사삭삯산삳살삵삶삼삽삿샀상샅새색샌샐샘샙샛샜생샤�".split("");for(a=0;a!=t[187].length;++a)if(t[187][a].charCodeAt(0)!==65533){r[t[187][a]]=47872+a;e[47872+a]=t[187][a]}t[188]="�����������������������������������������������������������������퍪퍫퍬퍭퍮퍯퍰퍱퍲퍳퍴퍵퍶퍷퍸퍹퍺퍻퍾퍿펁펂펃펅펆펇������펈펉펊펋펎펒펓펔펕펖펗펚펛펝펞펟펡펢펣펤펥펦펧펪펬펮������펯펰펱펲펳펵펶펷펹펺펻펽펾펿폀폁폂폃폆폇폊폋폌폍폎폏폑폒폓폔폕폖샥샨샬샴샵샷샹섀섄섈섐섕서석섞섟선섣설섦섧섬섭섯섰성섶세섹센셀셈셉셋셌셍셔셕션셜셤셥셧셨셩셰셴셸솅소속솎손솔솖솜솝솟송솥솨솩솬솰솽쇄쇈쇌쇔쇗쇘쇠쇤쇨쇰쇱쇳쇼쇽숀숄숌숍숏숑수숙순숟술숨숩숫숭�".split("");for(a=0;a!=t[188].length;++a)if(t[188][a].charCodeAt(0)!==65533){r[t[188][a]]=48128+a;e[48128+a]=t[188][a]}t[189]="�����������������������������������������������������������������폗폙폚폛폜폝폞폟폠폢폤폥폦폧폨폩폪폫폮폯폱폲폳폵폶폷������폸폹폺폻폾퐀퐂퐃퐄퐅퐆퐇퐉퐊퐋퐌퐍퐎퐏퐐퐑퐒퐓퐔퐕퐖������퐗퐘퐙퐚퐛퐜퐞퐟퐠퐡퐢퐣퐤퐥퐦퐧퐨퐩퐪퐫퐬퐭퐮퐯퐰퐱퐲퐳퐴퐵퐶퐷숯숱숲숴쉈쉐쉑쉔쉘쉠쉥쉬쉭쉰쉴쉼쉽쉿슁슈슉슐슘슛슝스슥슨슬슭슴습슷승시식신싣실싫심십싯싱싶싸싹싻싼쌀쌈쌉쌌쌍쌓쌔쌕쌘쌜쌤쌥쌨쌩썅써썩썬썰썲썸썹썼썽쎄쎈쎌쏀쏘쏙쏜쏟쏠쏢쏨쏩쏭쏴쏵쏸쐈쐐쐤쐬쐰�".split("");for(a=0;a!=t[189].length;++a)if(t[189][a].charCodeAt(0)!==65533){r[t[189][a]]=48384+a;e[48384+a]=t[189][a]}t[190]="�����������������������������������������������������������������퐸퐹퐺퐻퐼퐽퐾퐿푁푂푃푅푆푇푈푉푊푋푌푍푎푏푐푑푒푓������푔푕푖푗푘푙푚푛푝푞푟푡푢푣푥푦푧푨푩푪푫푬푮푰푱푲������푳푴푵푶푷푺푻푽푾풁풃풄풅풆풇풊풌풎풏풐풑풒풓풕풖풗풘풙풚풛풜풝쐴쐼쐽쑈쑤쑥쑨쑬쑴쑵쑹쒀쒔쒜쒸쒼쓩쓰쓱쓴쓸쓺쓿씀씁씌씐씔씜씨씩씬씰씸씹씻씽아악안앉않알앍앎앓암압앗았앙앝앞애액앤앨앰앱앳앴앵야약얀얄얇얌얍얏양얕얗얘얜얠얩어억언얹얻얼얽얾엄업없엇었엉엊엌엎�".split("");for(a=0;a!=t[190].length;++a)if(t[190][a].charCodeAt(0)!==65533){r[t[190][a]]=48640+a;e[48640+a]=t[190][a]}t[191]="�����������������������������������������������������������������풞풟풠풡풢풣풤풥풦풧풨풪풫풬풭풮풯풰풱풲풳풴풵풶풷풸������풹풺풻풼풽풾풿퓀퓁퓂퓃퓄퓅퓆퓇퓈퓉퓊퓋퓍퓎퓏퓑퓒퓓퓕������퓖퓗퓘퓙퓚퓛퓝퓞퓠퓡퓢퓣퓤퓥퓦퓧퓩퓪퓫퓭퓮퓯퓱퓲퓳퓴퓵퓶퓷퓹퓺퓼에엑엔엘엠엡엣엥여역엮연열엶엷염엽엾엿였영옅옆옇예옌옐옘옙옛옜오옥온올옭옮옰옳옴옵옷옹옻와왁완왈왐왑왓왔왕왜왝왠왬왯왱외왹왼욀욈욉욋욍요욕욘욜욤욥욧용우욱운울욹욺움웁웃웅워웍원월웜웝웠웡웨�".split("");for(a=0;a!=t[191].length;++a)if(t[191][a].charCodeAt(0)!==65533){r[t[191][a]]=48896+a;e[48896+a]=t[191][a]}t[192]="�����������������������������������������������������������������퓾퓿픀픁픂픃픅픆픇픉픊픋픍픎픏픐픑픒픓픖픘픙픚픛픜픝������픞픟픠픡픢픣픤픥픦픧픨픩픪픫픬픭픮픯픰픱픲픳픴픵픶픷������픸픹픺픻픾픿핁핂핃핅핆핇핈핉핊핋핎핐핒핓핔핕핖핗핚핛핝핞핟핡핢핣웩웬웰웸웹웽위윅윈윌윔윕윗윙유육윤율윰윱윳융윷으윽은을읊음읍읏응읒읓읔읕읖읗의읜읠읨읫이익인일읽읾잃임입잇있잉잊잎자작잔잖잗잘잚잠잡잣잤장잦재잭잰잴잼잽잿쟀쟁쟈쟉쟌쟎쟐쟘쟝쟤쟨쟬저적전절젊�".split("");for(a=0;a!=t[192].length;++a)if(t[192][a].charCodeAt(0)!==65533){r[t[192][a]]=49152+a;e[49152+a]=t[192][a]}t[193]="�����������������������������������������������������������������핤핦핧핪핬핮핯핰핱핲핳핶핷핹핺핻핽핾핿햀햁햂햃햆햊햋������햌햍햎햏햑햒햓햔햕햖햗햘햙햚햛햜햝햞햟햠햡햢햣햤햦햧������햨햩햪햫햬햭햮햯햰햱햲햳햴햵햶햷햸햹햺햻햼햽햾햿헀헁헂헃헄헅헆헇점접젓정젖제젝젠젤젬젭젯젱져젼졀졈졉졌졍졔조족존졸졺좀좁좃종좆좇좋좌좍좔좝좟좡좨좼좽죄죈죌죔죕죗죙죠죡죤죵주죽준줄줅줆줌줍줏중줘줬줴쥐쥑쥔쥘쥠쥡쥣쥬쥰쥴쥼즈즉즌즐즘즙즛증지직진짇질짊짐집짓�".split(""); for(a=0;a!=t[193].length;++a)if(t[193][a].charCodeAt(0)!==65533){r[t[193][a]]=49408+a;e[49408+a]=t[193][a]}t[194]="�����������������������������������������������������������������헊헋헍헎헏헑헓헔헕헖헗헚헜헞헟헠헡헢헣헦헧헩헪헫헭헮������헯헰헱헲헳헶헸헺헻헼헽헾헿혂혃혅혆혇혉혊혋혌혍혎혏혒������혖혗혘혙혚혛혝혞혟혡혢혣혥혦혧혨혩혪혫혬혮혯혰혱혲혳혴혵혶혷혺혻징짖짙짚짜짝짠짢짤짧짬짭짯짰짱째짹짼쨀쨈쨉쨋쨌쨍쨔쨘쨩쩌쩍쩐쩔쩜쩝쩟쩠쩡쩨쩽쪄쪘쪼쪽쫀쫄쫌쫍쫏쫑쫓쫘쫙쫠쫬쫴쬈쬐쬔쬘쬠쬡쭁쭈쭉쭌쭐쭘쭙쭝쭤쭸쭹쮜쮸쯔쯤쯧쯩찌찍찐찔찜찝찡찢찧차착찬찮찰참찹찻�".split("");for(a=0;a!=t[194].length;++a)if(t[194][a].charCodeAt(0)!==65533){r[t[194][a]]=49664+a;e[49664+a]=t[194][a]}t[195]="�����������������������������������������������������������������혽혾혿홁홂홃홄홆홇홊홌홎홏홐홒홓홖홗홙홚홛홝홞홟홠홡������홢홣홤홥홦홨홪홫홬홭홮홯홲홳홵홶홷홸홹홺홻홼홽홾홿횀������횁횂횄횆횇횈횉횊횋횎횏횑횒횓횕횖횗횘횙횚횛횜횞횠횢횣횤횥횦횧횩횪찼창찾채책챈챌챔챕챗챘챙챠챤챦챨챰챵처척천철첨첩첫첬청체첵첸첼쳄쳅쳇쳉쳐쳔쳤쳬쳰촁초촉촌촐촘촙촛총촤촨촬촹최쵠쵤쵬쵭쵯쵱쵸춈추축춘출춤춥춧충춰췄췌췐취췬췰췸췹췻췽츄츈츌츔츙츠측츤츨츰츱츳층�".split("");for(a=0;a!=t[195].length;++a)if(t[195][a].charCodeAt(0)!==65533){r[t[195][a]]=49920+a;e[49920+a]=t[195][a]}t[196]="�����������������������������������������������������������������횫횭횮횯횱횲횳횴횵횶횷횸횺횼횽횾횿훀훁훂훃훆훇훉훊훋������훍훎훏훐훒훓훕훖훘훚훛훜훝훞훟훡훢훣훥훦훧훩훪훫훬훭������훮훯훱훲훳훴훶훷훸훹훺훻훾훿휁휂휃휅휆휇휈휉휊휋휌휍휎휏휐휒휓휔치칙친칟칠칡침칩칫칭카칵칸칼캄캅캇캉캐캑캔캘캠캡캣캤캥캬캭컁커컥컨컫컬컴컵컷컸컹케켁켄켈켐켑켓켕켜켠켤켬켭켯켰켱켸코콕콘콜콤콥콧콩콰콱콴콸쾀쾅쾌쾡쾨쾰쿄쿠쿡쿤쿨쿰쿱쿳쿵쿼퀀퀄퀑퀘퀭퀴퀵퀸퀼�".split("");for(a=0;a!=t[196].length;++a)if(t[196][a].charCodeAt(0)!==65533){r[t[196][a]]=50176+a;e[50176+a]=t[196][a]}t[197]="�����������������������������������������������������������������휕휖휗휚휛휝휞휟휡휢휣휤휥휦휧휪휬휮휯휰휱휲휳휶휷휹������휺휻휽휾휿흀흁흂흃흅흆흈흊흋흌흍흎흏흒흓흕흚흛흜흝흞������흟흢흤흦흧흨흪흫흭흮흯흱흲흳흵흶흷흸흹흺흻흾흿힀힂힃힄힅힆힇힊힋큄큅큇큉큐큔큘큠크큭큰클큼큽킁키킥킨킬킴킵킷킹타탁탄탈탉탐탑탓탔탕태택탠탤탬탭탯탰탱탸턍터턱턴털턺텀텁텃텄텅테텍텐텔템텝텟텡텨텬텼톄톈토톡톤톨톰톱톳통톺톼퇀퇘퇴퇸툇툉툐투툭툰툴툼툽툿퉁퉈퉜�".split("");for(a=0;a!=t[197].length;++a)if(t[197][a].charCodeAt(0)!==65533){r[t[197][a]]=50432+a;e[50432+a]=t[197][a]}t[198]="�����������������������������������������������������������������힍힎힏힑힒힓힔힕힖힗힚힜힞힟힠힡힢힣������������������������������������������������������������������������������퉤튀튁튄튈튐튑튕튜튠튤튬튱트특튼튿틀틂틈틉틋틔틘틜틤틥티틱틴틸팀팁팃팅파팍팎판팔팖팜팝팟팠팡팥패팩팬팰팸팹팻팼팽퍄퍅퍼퍽펀펄펌펍펏펐펑페펙펜펠펨펩펫펭펴편펼폄폅폈평폐폘폡폣포폭폰폴폼폽폿퐁�".split("");for(a=0;a!=t[198].length;++a)if(t[198][a].charCodeAt(0)!==65533){r[t[198][a]]=50688+a;e[50688+a]=t[198][a]}t[199]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������퐈퐝푀푄표푠푤푭푯푸푹푼푿풀풂품풉풋풍풔풩퓌퓐퓔퓜퓟퓨퓬퓰퓸퓻퓽프픈플픔픕픗피픽핀필핌핍핏핑하학한할핥함합핫항해핵핸핼햄햅햇했행햐향허헉헌헐헒험헙헛헝헤헥헨헬헴헵헷헹혀혁현혈혐협혓혔형혜혠�".split("");for(a=0;a!=t[199].length;++a)if(t[199][a].charCodeAt(0)!==65533){r[t[199][a]]=50944+a;e[50944+a]=t[199][a]}t[200]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������혤혭호혹혼홀홅홈홉홋홍홑화확환활홧황홰홱홴횃횅회획횐횔횝횟횡효횬횰횹횻후훅훈훌훑훔훗훙훠훤훨훰훵훼훽휀휄휑휘휙휜휠휨휩휫휭휴휵휸휼흄흇흉흐흑흔흖흗흘흙흠흡흣흥흩희흰흴흼흽힁히힉힌힐힘힙힛힝�".split("");for(a=0;a!=t[200].length;++a)if(t[200][a].charCodeAt(0)!==65533){r[t[200][a]]=51200+a;e[51200+a]=t[200][a]}t[202]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������伽佳假價加可呵哥嘉嫁家暇架枷柯歌珂痂稼苛茄街袈訶賈跏軻迦駕刻却各恪慤殼珏脚覺角閣侃刊墾奸姦干幹懇揀杆柬桿澗癎看磵稈竿簡肝艮艱諫間乫喝曷渴碣竭葛褐蝎鞨勘坎堪嵌感憾戡敢柑橄減甘疳監瞰紺邯鑑鑒龕�".split("");for(a=0;a!=t[202].length;++a)if(t[202][a].charCodeAt(0)!==65533){r[t[202][a]]=51712+a;e[51712+a]=t[202][a]}t[203]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������匣岬甲胛鉀閘剛堈姜岡崗康强彊慷江畺疆糠絳綱羌腔舡薑襁講鋼降鱇介价個凱塏愷愾慨改槪漑疥皆盖箇芥蓋豈鎧開喀客坑更粳羹醵倨去居巨拒据據擧渠炬祛距踞車遽鉅鋸乾件健巾建愆楗腱虔蹇鍵騫乞傑杰桀儉劍劒檢�".split("");for(a=0;a!=t[203].length;++a)if(t[203][a].charCodeAt(0)!==65533){r[t[203][a]]=51968+a;e[51968+a]=t[203][a]}t[204]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������瞼鈐黔劫怯迲偈憩揭擊格檄激膈覡隔堅牽犬甄絹繭肩見譴遣鵑抉決潔結缺訣兼慊箝謙鉗鎌京俓倞傾儆勁勍卿坰境庚徑慶憬擎敬景暻更梗涇炅烱璟璥瓊痙硬磬竟競絅經耕耿脛莖警輕逕鏡頃頸驚鯨係啓堺契季屆悸戒桂械�".split("");for(a=0;a!=t[204].length;++a)if(t[204][a].charCodeAt(0)!==65533){r[t[204][a]]=52224+a;e[52224+a]=t[204][a]}t[205]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������棨溪界癸磎稽系繫繼計誡谿階鷄古叩告呱固姑孤尻庫拷攷故敲暠枯槁沽痼皐睾稿羔考股膏苦苽菰藁蠱袴誥賈辜錮雇顧高鼓哭斛曲梏穀谷鵠困坤崑昆梱棍滾琨袞鯤汨滑骨供公共功孔工恐恭拱控攻珙空蚣貢鞏串寡戈果瓜�".split("");for(a=0;a!=t[205].length;++a)if(t[205][a].charCodeAt(0)!==65533){r[t[205][a]]=52480+a;e[52480+a]=t[205][a]}t[206]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������科菓誇課跨過鍋顆廓槨藿郭串冠官寬慣棺款灌琯瓘管罐菅觀貫關館刮恝括适侊光匡壙廣曠洸炚狂珖筐胱鑛卦掛罫乖傀塊壞怪愧拐槐魁宏紘肱轟交僑咬喬嬌嶠巧攪敎校橋狡皎矯絞翹膠蕎蛟較轎郊餃驕鮫丘久九仇俱具勾�".split("");for(a=0;a!=t[206].length;++a)if(t[206][a].charCodeAt(0)!==65533){r[t[206][a]]=52736+a;e[52736+a]=t[206][a]}t[207]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������區口句咎嘔坵垢寇嶇廐懼拘救枸柩構歐毆毬求溝灸狗玖球瞿矩究絿耉臼舅舊苟衢謳購軀逑邱鉤銶駒驅鳩鷗龜國局菊鞠鞫麴君窘群裙軍郡堀屈掘窟宮弓穹窮芎躬倦券勸卷圈拳捲權淃眷厥獗蕨蹶闕机櫃潰詭軌饋句晷歸貴�".split("");for(a=0;a!=t[207].length;++a)if(t[207][a].charCodeAt(0)!==65533){r[t[207][a]]=52992+a;e[52992+a]=t[207][a]}t[208]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������鬼龜叫圭奎揆槻珪硅窺竅糾葵規赳逵閨勻均畇筠菌鈞龜橘克剋劇戟棘極隙僅劤勤懃斤根槿瑾筋芹菫覲謹近饉契今妗擒昑檎琴禁禽芩衾衿襟金錦伋及急扱汲級給亘兢矜肯企伎其冀嗜器圻基埼夔奇妓寄岐崎己幾忌技旗旣�".split("");for(a=0;a!=t[208].length;++a)if(t[208][a].charCodeAt(0)!==65533){r[t[208][a]]=53248+a;e[53248+a]=t[208][a]}t[209]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������朞期杞棋棄機欺氣汽沂淇玘琦琪璂璣畸畿碁磯祁祇祈祺箕紀綺羈耆耭肌記譏豈起錡錤飢饑騎騏驥麒緊佶吉拮桔金喫儺喇奈娜懦懶拏拿癩羅蘿螺裸邏那樂洛烙珞落諾酪駱亂卵暖欄煖爛蘭難鸞捏捺南嵐枏楠湳濫男藍襤拉�".split("");for(a=0;a!=t[209].length;++a)if(t[209][a].charCodeAt(0)!==65533){r[t[209][a]]=53504+a;e[53504+a]=t[209][a]}t[210]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������納臘蠟衲囊娘廊朗浪狼郎乃來內奈柰耐冷女年撚秊念恬拈捻寧寗努勞奴弩怒擄櫓爐瑙盧老蘆虜路露駑魯鷺碌祿綠菉錄鹿論壟弄濃籠聾膿農惱牢磊腦賂雷尿壘屢樓淚漏累縷陋嫩訥杻紐勒肋凜凌稜綾能菱陵尼泥匿溺多茶�".split("");for(a=0;a!=t[210].length;++a)if(t[210][a].charCodeAt(0)!==65533){r[t[210][a]]=53760+a;e[53760+a]=t[210][a]}t[211]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������丹亶但單團壇彖斷旦檀段湍短端簞緞蛋袒鄲鍛撻澾獺疸達啖坍憺擔曇淡湛潭澹痰聃膽蕁覃談譚錟沓畓答踏遝唐堂塘幢戇撞棠當糖螳黨代垈坮大對岱帶待戴擡玳臺袋貸隊黛宅德悳倒刀到圖堵塗導屠島嶋度徒悼挑掉搗桃�".split("");for(a=0;a!=t[211].length;++a)if(t[211][a].charCodeAt(0)!==65533){r[t[211][a]]=54016+a;e[54016+a]=t[211][a]}t[212]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������棹櫂淘渡滔濤燾盜睹禱稻萄覩賭跳蹈逃途道都鍍陶韜毒瀆牘犢獨督禿篤纛讀墩惇敦旽暾沌焞燉豚頓乭突仝冬凍動同憧東桐棟洞潼疼瞳童胴董銅兜斗杜枓痘竇荳讀豆逗頭屯臀芚遁遯鈍得嶝橙燈登等藤謄鄧騰喇懶拏癩羅�".split("");for(a=0;a!=t[212].length;++a)if(t[212][a].charCodeAt(0)!==65533){r[t[212][a]]=54272+a;e[54272+a]=t[212][a]}t[213]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������蘿螺裸邏樂洛烙珞絡落諾酪駱丹亂卵欄欒瀾爛蘭鸞剌辣嵐擥攬欖濫籃纜藍襤覽拉臘蠟廊朗浪狼琅瑯螂郞來崍徠萊冷掠略亮倆兩凉梁樑粮粱糧良諒輛量侶儷勵呂廬慮戾旅櫚濾礪藜蠣閭驢驪麗黎力曆歷瀝礫轢靂憐戀攣漣�".split("");for(a=0;a!=t[213].length;++a)if(t[213][a].charCodeAt(0)!==65533){r[t[213][a]]=54528+a;e[54528+a]=t[213][a]}t[214]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������煉璉練聯蓮輦連鍊冽列劣洌烈裂廉斂殮濂簾獵令伶囹寧岺嶺怜玲笭羚翎聆逞鈴零靈領齡例澧禮醴隷勞怒撈擄櫓潞瀘爐盧老蘆虜路輅露魯鷺鹵碌祿綠菉錄鹿麓論壟弄朧瀧瓏籠聾儡瀨牢磊賂賚賴雷了僚寮廖料燎療瞭聊蓼�".split("");for(a=0;a!=t[214].length;++a)if(t[214][a].charCodeAt(0)!==65533){r[t[214][a]]=54784+a;e[54784+a]=t[214][a]}t[215]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������遼鬧龍壘婁屢樓淚漏瘻累縷蔞褸鏤陋劉旒柳榴流溜瀏琉瑠留瘤硫謬類六戮陸侖倫崙淪綸輪律慄栗率隆勒肋凜凌楞稜綾菱陵俚利厘吏唎履悧李梨浬犁狸理璃異痢籬罹羸莉裏裡里釐離鯉吝潾燐璘藺躪隣鱗麟林淋琳臨霖砬�".split("");for(a=0;a!=t[215].length;++a)if(t[215][a].charCodeAt(0)!==65533){r[t[215][a]]=55040+a;e[55040+a]=t[215][a]}t[216]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������立笠粒摩瑪痲碼磨馬魔麻寞幕漠膜莫邈万卍娩巒彎慢挽晩曼滿漫灣瞞萬蔓蠻輓饅鰻唜抹末沫茉襪靺亡妄忘忙望網罔芒茫莽輞邙埋妹媒寐昧枚梅每煤罵買賣邁魅脈貊陌驀麥孟氓猛盲盟萌冪覓免冕勉棉沔眄眠綿緬面麵滅�".split("");for(a=0;a!=t[216].length;++a)if(t[216][a].charCodeAt(0)!==65533){r[t[216][a]]=55296+a;e[55296+a]=t[216][a]}t[217]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������蔑冥名命明暝椧溟皿瞑茗蓂螟酩銘鳴袂侮冒募姆帽慕摸摹暮某模母毛牟牡瑁眸矛耗芼茅謀謨貌木沐牧目睦穆鶩歿沒夢朦蒙卯墓妙廟描昴杳渺猫竗苗錨務巫憮懋戊拇撫无楙武毋無珷畝繆舞茂蕪誣貿霧鵡墨默們刎吻問文�".split("");for(a=0;a!=t[217].length;++a)if(t[217][a].charCodeAt(0)!==65533){r[t[217][a]]=55552+a;e[55552+a]=t[217][a]}t[218]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������汶紊紋聞蚊門雯勿沕物味媚尾嵋彌微未梶楣渼湄眉米美薇謎迷靡黴岷悶愍憫敏旻旼民泯玟珉緡閔密蜜謐剝博拍搏撲朴樸泊珀璞箔粕縛膊舶薄迫雹駁伴半反叛拌搬攀斑槃泮潘班畔瘢盤盼磐磻礬絆般蟠返頒飯勃拔撥渤潑�".split("");for(a=0;a!=t[218].length;++a)if(t[218][a].charCodeAt(0)!==65533){r[t[218][a]]=55808+a;e[55808+a]=t[218][a]}t[219]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������發跋醱鉢髮魃倣傍坊妨尨幇彷房放方旁昉枋榜滂磅紡肪膀舫芳蒡蚌訪謗邦防龐倍俳北培徘拜排杯湃焙盃背胚裴裵褙賠輩配陪伯佰帛柏栢白百魄幡樊煩燔番磻繁蕃藩飜伐筏罰閥凡帆梵氾汎泛犯範范法琺僻劈壁擘檗璧癖�".split("");for(a=0;a!=t[219].length;++a)if(t[219][a].charCodeAt(0)!==65533){r[t[219][a]]=56064+a;e[56064+a]=t[219][a]}t[220]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������碧蘗闢霹便卞弁變辨辯邊別瞥鱉鼈丙倂兵屛幷昞昺柄棅炳甁病秉竝輧餠騈保堡報寶普步洑湺潽珤甫菩補褓譜輔伏僕匐卜宓復服福腹茯蔔複覆輹輻馥鰒本乶俸奉封峯峰捧棒烽熢琫縫蓬蜂逢鋒鳳不付俯傅剖副否咐埠夫婦�".split("");for(a=0;a!=t[220].length;++a)if(t[220][a].charCodeAt(0)!==65533){r[t[220][a]]=56320+a;e[56320+a]=t[220][a]}t[221]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������孚孵富府復扶敷斧浮溥父符簿缶腐腑膚艀芙莩訃負賦賻赴趺部釜阜附駙鳧北分吩噴墳奔奮忿憤扮昐汾焚盆粉糞紛芬賁雰不佛弗彿拂崩朋棚硼繃鵬丕備匕匪卑妃婢庇悲憊扉批斐枇榧比毖毗毘沸泌琵痺砒碑秕秘粃緋翡肥�".split("");for(a=0;a!=t[221].length;++a)if(t[221][a].charCodeAt(0)!==65533){r[t[221][a]]=56576+a;e[56576+a]=t[221][a]}t[222]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������脾臂菲蜚裨誹譬費鄙非飛鼻嚬嬪彬斌檳殯浜濱瀕牝玭貧賓頻憑氷聘騁乍事些仕伺似使俟僿史司唆嗣四士奢娑寫寺射巳師徙思捨斜斯柶査梭死沙泗渣瀉獅砂社祀祠私篩紗絲肆舍莎蓑蛇裟詐詞謝賜赦辭邪飼駟麝削數朔索�".split("");for(a=0;a!=t[222].length;++a)if(t[222][a].charCodeAt(0)!==65533){r[t[222][a]]=56832+a;e[56832+a]=t[222][a]}t[223]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������傘刪山散汕珊産疝算蒜酸霰乷撒殺煞薩三參杉森渗芟蔘衫揷澁鈒颯上傷像償商喪嘗孀尙峠常床庠廂想桑橡湘爽牀狀相祥箱翔裳觴詳象賞霜塞璽賽嗇塞穡索色牲生甥省笙墅壻嶼序庶徐恕抒捿敍暑曙書栖棲犀瑞筮絮緖署�".split("");for(a=0;a!=t[223].length;++a)if(t[223][a].charCodeAt(0)!==65533){r[t[223][a]]=57088+a;e[57088+a]=t[223][a]}t[224]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������胥舒薯西誓逝鋤黍鼠夕奭席惜昔晳析汐淅潟石碩蓆釋錫仙僊先善嬋宣扇敾旋渲煽琁瑄璇璿癬禪線繕羨腺膳船蘚蟬詵跣選銑鐥饍鮮卨屑楔泄洩渫舌薛褻設說雪齧剡暹殲纖蟾贍閃陝攝涉燮葉城姓宬性惺成星晟猩珹盛省筬�".split("");for(a=0;a!=t[224].length;++a)if(t[224][a].charCodeAt(0)!==65533){r[t[224][a]]=57344+a;e[57344+a]=t[224][a]}t[225]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������聖聲腥誠醒世勢歲洗稅笹細說貰召嘯塑宵小少巢所掃搔昭梳沼消溯瀟炤燒甦疏疎瘙笑篠簫素紹蔬蕭蘇訴逍遡邵銷韶騷俗屬束涑粟續謖贖速孫巽損蓀遜飡率宋悚松淞訟誦送頌刷殺灑碎鎖衰釗修受嗽囚垂壽嫂守岫峀帥愁�".split("");for(a=0;a!=t[225].length;++a)if(t[225][a].charCodeAt(0)!==65533){r[t[225][a]]=57600+a;e[57600+a]=t[225][a]}t[226]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������戍手授搜收數樹殊水洙漱燧狩獸琇璲瘦睡秀穗竪粹綏綬繡羞脩茱蒐蓚藪袖誰讐輸遂邃酬銖銹隋隧隨雖需須首髓鬚叔塾夙孰宿淑潚熟琡璹肅菽巡徇循恂旬栒楯橓殉洵淳珣盾瞬筍純脣舜荀蓴蕣詢諄醇錞順馴戌術述鉥崇崧�".split("");for(a=0;a!=t[226].length;++a)if(t[226][a].charCodeAt(0)!==65533){r[t[226][a]]=57856+a;e[57856+a]=t[226][a]}t[227]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������嵩瑟膝蝨濕拾習褶襲丞乘僧勝升承昇繩蠅陞侍匙嘶始媤尸屎屍市弑恃施是時枾柴猜矢示翅蒔蓍視試詩諡豕豺埴寔式息拭植殖湜熄篒蝕識軾食飾伸侁信呻娠宸愼新晨燼申神紳腎臣莘薪藎蜃訊身辛辰迅失室實悉審尋心沁�".split("");for(a=0;a!=t[227].length;++a)if(t[227][a].charCodeAt(0)!==65533){r[t[227][a]]=58112+a;e[58112+a]=t[227][a]}t[228]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������沈深瀋甚芯諶什十拾雙氏亞俄兒啞娥峨我牙芽莪蛾衙訝阿雅餓鴉鵝堊岳嶽幄惡愕握樂渥鄂鍔顎鰐齷安岸按晏案眼雁鞍顔鮟斡謁軋閼唵岩巖庵暗癌菴闇壓押狎鴨仰央怏昻殃秧鴦厓哀埃崖愛曖涯碍艾隘靄厄扼掖液縊腋額�".split("");for(a=0;a!=t[228].length;++a)if(t[228][a].charCodeAt(0)!==65533){r[t[228][a]]=58368+a;e[58368+a]=t[228][a]}t[229]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������櫻罌鶯鸚也倻冶夜惹揶椰爺耶若野弱掠略約若葯蒻藥躍亮佯兩凉壤孃恙揚攘敭暘梁楊樣洋瀁煬痒瘍禳穰糧羊良襄諒讓釀陽量養圄御於漁瘀禦語馭魚齬億憶抑檍臆偃堰彦焉言諺孼蘖俺儼嚴奄掩淹嶪業円予余勵呂女如廬�".split("");for(a=0;a!=t[229].length;++a)if(t[229][a].charCodeAt(0)!==65533){r[t[229][a]]=58624+a;e[58624+a]=t[229][a]}t[230]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������旅歟汝濾璵礖礪與艅茹輿轝閭餘驪麗黎亦力域役易曆歷疫繹譯轢逆驛嚥堧姸娟宴年延憐戀捐挻撚椽沇沿涎涓淵演漣烟然煙煉燃燕璉硏硯秊筵緣練縯聯衍軟輦蓮連鉛鍊鳶列劣咽悅涅烈熱裂說閱厭廉念捻染殮炎焰琰艶苒�".split("");for(a=0;a!=t[230].length;++a)if(t[230][a].charCodeAt(0)!==65533){r[t[230][a]]=58880+a;e[58880+a]=t[230][a]}t[231]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������簾閻髥鹽曄獵燁葉令囹塋寧嶺嶸影怜映暎楹榮永泳渶潁濚瀛瀯煐營獰玲瑛瑩瓔盈穎纓羚聆英詠迎鈴鍈零霙靈領乂倪例刈叡曳汭濊猊睿穢芮藝蘂禮裔詣譽豫醴銳隸霓預五伍俉傲午吾吳嗚塢墺奧娛寤悟惡懊敖旿晤梧汚澳�".split("");for(a=0;a!=t[231].length;++a)if(t[231][a].charCodeAt(0)!==65533){r[t[231][a]]=59136+a;e[59136+a]=t[231][a]}t[232]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������烏熬獒筽蜈誤鰲鼇屋沃獄玉鈺溫瑥瘟穩縕蘊兀壅擁瓮甕癰翁邕雍饔渦瓦窩窪臥蛙蝸訛婉完宛梡椀浣玩琓琬碗緩翫脘腕莞豌阮頑曰往旺枉汪王倭娃歪矮外嵬巍猥畏了僚僥凹堯夭妖姚寥寮尿嶢拗搖撓擾料曜樂橈燎燿瑤療�".split("");for(a=0;a!=t[232].length;++a)if(t[232][a].charCodeAt(0)!==65533){r[t[232][a]]=59392+a;e[59392+a]=t[232][a]}t[233]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������窈窯繇繞耀腰蓼蟯要謠遙遼邀饒慾欲浴縟褥辱俑傭冗勇埇墉容庸慂榕涌湧溶熔瑢用甬聳茸蓉踊鎔鏞龍于佑偶優又友右宇寓尤愚憂旴牛玗瑀盂祐禑禹紆羽芋藕虞迂遇郵釪隅雨雩勖彧旭昱栯煜稶郁頊云暈橒殞澐熉耘芸蕓�".split("");for(a=0;a!=t[233].length;++a)if(t[233][a].charCodeAt(0)!==65533){r[t[233][a]]=59648+a;e[59648+a]=t[233][a]}t[234]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������運隕雲韻蔚鬱亐熊雄元原員圓園垣媛嫄寃怨愿援沅洹湲源爰猿瑗苑袁轅遠阮院願鴛月越鉞位偉僞危圍委威尉慰暐渭爲瑋緯胃萎葦蔿蝟衛褘謂違韋魏乳侑儒兪劉唯喩孺宥幼幽庾悠惟愈愉揄攸有杻柔柚柳楡楢油洧流游溜�".split("");for(a=0;a!=t[234].length;++a)if(t[234][a].charCodeAt(0)!==65533){r[t[234][a]]=59904+a;e[59904+a]=t[234][a]}t[235]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������濡猶猷琉瑜由留癒硫紐維臾萸裕誘諛諭踰蹂遊逾遺酉釉鍮類六堉戮毓肉育陸倫允奫尹崙淪潤玧胤贇輪鈗閏律慄栗率聿戎瀜絨融隆垠恩慇殷誾銀隱乙吟淫蔭陰音飮揖泣邑凝應膺鷹依倚儀宜意懿擬椅毅疑矣義艤薏蟻衣誼�".split("");for(a=0;a!=t[235].length;++a)if(t[235][a].charCodeAt(0)!==65533){r[t[235][a]]=60160+a;e[60160+a]=t[235][a]}t[236]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������議醫二以伊利吏夷姨履已弛彛怡易李梨泥爾珥理異痍痢移罹而耳肄苡荑裏裡貽貳邇里離飴餌匿溺瀷益翊翌翼謚人仁刃印吝咽因姻寅引忍湮燐璘絪茵藺蚓認隣靭靷鱗麟一佚佾壹日溢逸鎰馹任壬妊姙恁林淋稔臨荏賃入卄�".split("");for(a=0;a!=t[236].length;++a)if(t[236][a].charCodeAt(0)!==65533){r[t[236][a]]=60416+a;e[60416+a]=t[236][a]}t[237]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������立笠粒仍剩孕芿仔刺咨姉姿子字孜恣慈滋炙煮玆瓷疵磁紫者自茨蔗藉諮資雌作勺嚼斫昨灼炸爵綽芍酌雀鵲孱棧殘潺盞岑暫潛箴簪蠶雜丈仗匠場墻壯奬將帳庄張掌暲杖樟檣欌漿牆狀獐璋章粧腸臟臧莊葬蔣薔藏裝贓醬長�".split("");for(a=0;a!=t[237].length;++a)if(t[237][a].charCodeAt(0)!==65533){r[t[237][a]]=60672+a;e[60672+a]=t[237][a]}t[238]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������障再哉在宰才材栽梓渽滓災縡裁財載齋齎爭箏諍錚佇低儲咀姐底抵杵楮樗沮渚狙猪疽箸紵苧菹著藷詛貯躇這邸雎齟勣吊嫡寂摘敵滴狄炙的積笛籍績翟荻謫賊赤跡蹟迪迹適鏑佃佺傳全典前剪塡塼奠專展廛悛戰栓殿氈澱�".split("");for(a=0;a!=t[238].length;++a)if(t[238][a].charCodeAt(0)!==65533){r[t[238][a]]=60928+a;e[60928+a]=t[238][a]}t[239]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������煎琠田甸畑癲筌箋箭篆纏詮輾轉鈿銓錢鐫電顚顫餞切截折浙癤竊節絶占岾店漸点粘霑鮎點接摺蝶丁井亭停偵呈姃定幀庭廷征情挺政整旌晶晸柾楨檉正汀淀淨渟湞瀞炡玎珽町睛碇禎程穽精綎艇訂諪貞鄭酊釘鉦鋌錠霆靖�".split("");for(a=0;a!=t[239].length;++a)if(t[239][a].charCodeAt(0)!==65533){r[t[239][a]]=61184+a;e[61184+a]=t[239][a]}t[240]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������靜頂鼎制劑啼堤帝弟悌提梯濟祭第臍薺製諸蹄醍除際霽題齊俎兆凋助嘲弔彫措操早晁曺曹朝條棗槽漕潮照燥爪璪眺祖祚租稠窕粗糟組繰肇藻蚤詔調趙躁造遭釣阻雕鳥族簇足鏃存尊卒拙猝倧宗從悰慫棕淙琮種終綜縱腫�".split("");for(a=0;a!=t[240].length;++a)if(t[240][a].charCodeAt(0)!==65533){r[t[240][a]]=61440+a;e[61440+a]=t[240][a]}t[241]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������踪踵鍾鐘佐坐左座挫罪主住侏做姝胄呪周嗾奏宙州廚晝朱柱株注洲湊澍炷珠疇籌紂紬綢舟蛛註誅走躊輳週酎酒鑄駐竹粥俊儁准埈寯峻晙樽浚準濬焌畯竣蠢逡遵雋駿茁中仲衆重卽櫛楫汁葺增憎曾拯烝甑症繒蒸證贈之只�".split("");for(a=0;a!=t[241].length;++a)if(t[241][a].charCodeAt(0)!==65533){r[t[241][a]]=61696+a;e[61696+a]=t[241][a]}t[242]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������咫地址志持指摯支旨智枝枳止池沚漬知砥祉祗紙肢脂至芝芷蜘誌識贄趾遲直稙稷織職唇嗔塵振搢晉晋桭榛殄津溱珍瑨璡畛疹盡眞瞋秦縉縝臻蔯袗診賑軫辰進鎭陣陳震侄叱姪嫉帙桎瓆疾秩窒膣蛭質跌迭斟朕什執潗緝輯�".split("");for(a=0;a!=t[242].length;++a)if(t[242][a].charCodeAt(0)!==65533){r[t[242][a]]=61952+a;e[61952+a]=t[242][a]}t[243]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������鏶集徵懲澄且侘借叉嗟嵯差次此磋箚茶蹉車遮捉搾着窄錯鑿齪撰澯燦璨瓚竄簒纂粲纘讚贊鑽餐饌刹察擦札紮僭參塹慘慙懺斬站讒讖倉倡創唱娼廠彰愴敞昌昶暢槍滄漲猖瘡窓脹艙菖蒼債埰寀寨彩採砦綵菜蔡采釵冊柵策�".split("");for(a=0;a!=t[243].length;++a)if(t[243][a].charCodeAt(0)!==65533){r[t[243][a]]=62208+a;e[62208+a]=t[243][a]}t[244]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������責凄妻悽處倜刺剔尺慽戚拓擲斥滌瘠脊蹠陟隻仟千喘天川擅泉淺玔穿舛薦賤踐遷釧闡阡韆凸哲喆徹撤澈綴輟轍鐵僉尖沾添甛瞻簽籤詹諂堞妾帖捷牒疊睫諜貼輒廳晴淸聽菁請靑鯖切剃替涕滯締諦逮遞體初剿哨憔抄招梢�".split("");for(a=0;a!=t[244].length;++a)if(t[244][a].charCodeAt(0)!==65533){r[t[244][a]]=62464+a;e[62464+a]=t[244][a]}t[245]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������椒楚樵炒焦硝礁礎秒稍肖艸苕草蕉貂超酢醋醮促囑燭矗蜀觸寸忖村邨叢塚寵悤憁摠總聰蔥銃撮催崔最墜抽推椎楸樞湫皺秋芻萩諏趨追鄒酋醜錐錘鎚雛騶鰍丑畜祝竺筑築縮蓄蹙蹴軸逐春椿瑃出朮黜充忠沖蟲衝衷悴膵萃�".split("");for(a=0;a!=t[245].length;++a)if(t[245][a].charCodeAt(0)!==65533){r[t[245][a]]=62720+a;e[62720+a]=t[245][a]}t[246]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������贅取吹嘴娶就炊翠聚脆臭趣醉驟鷲側仄厠惻測層侈値嗤峙幟恥梔治淄熾痔痴癡稚穉緇緻置致蚩輜雉馳齒則勅飭親七柒漆侵寢枕沈浸琛砧針鍼蟄秤稱快他咤唾墮妥惰打拖朶楕舵陀馱駝倬卓啄坼度托拓擢晫柝濁濯琢琸託�".split("");for(a=0;a!=t[246].length;++a)if(t[246][a].charCodeAt(0)!==65533){r[t[246][a]]=62976+a;e[62976+a]=t[246][a]}t[247]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������鐸呑嘆坦彈憚歎灘炭綻誕奪脫探眈耽貪塔搭榻宕帑湯糖蕩兌台太怠態殆汰泰笞胎苔跆邰颱宅擇澤撑攄兎吐土討慟桶洞痛筒統通堆槌腿褪退頹偸套妬投透鬪慝特闖坡婆巴把播擺杷波派爬琶破罷芭跛頗判坂板版瓣販辦鈑�".split("");for(a=0;a!=t[247].length;++a)if(t[247][a].charCodeAt(0)!==65533){r[t[247][a]]=63232+a;e[63232+a]=t[247][a]}t[248]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������阪八叭捌佩唄悖敗沛浿牌狽稗覇貝彭澎烹膨愎便偏扁片篇編翩遍鞭騙貶坪平枰萍評吠嬖幣廢弊斃肺蔽閉陛佈包匍匏咆哺圃布怖抛抱捕暴泡浦疱砲胞脯苞葡蒲袍褒逋鋪飽鮑幅暴曝瀑爆輻俵剽彪慓杓標漂瓢票表豹飇飄驃�".split("");for(a=0;a!=t[248].length;++a)if(t[248][a].charCodeAt(0)!==65533){r[t[248][a]]=63488+a;e[63488+a]=t[248][a]}t[249]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������品稟楓諷豊風馮彼披疲皮被避陂匹弼必泌珌畢疋筆苾馝乏逼下何厦夏廈昰河瑕荷蝦賀遐霞鰕壑學虐謔鶴寒恨悍旱汗漢澣瀚罕翰閑閒限韓割轄函含咸啣喊檻涵緘艦銜陷鹹合哈盒蛤閤闔陜亢伉姮嫦巷恒抗杭桁沆港缸肛航�".split("");for(a=0;a!=t[249].length;++a)if(t[249][a].charCodeAt(0)!==65533){r[t[249][a]]=63744+a;e[63744+a]=t[249][a]}t[250]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������行降項亥偕咳垓奚孩害懈楷海瀣蟹解該諧邂駭骸劾核倖幸杏荇行享向嚮珦鄕響餉饗香噓墟虛許憲櫶獻軒歇險驗奕爀赫革俔峴弦懸晛泫炫玄玹現眩睍絃絢縣舷衒見賢鉉顯孑穴血頁嫌俠協夾峽挾浹狹脅脇莢鋏頰亨兄刑型�".split("");for(a=0;a!=t[250].length;++a)if(t[250][a].charCodeAt(0)!==65533){r[t[250][a]]=64e3+a;e[64e3+a]=t[250][a]}t[251]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������形泂滎瀅灐炯熒珩瑩荊螢衡逈邢鎣馨兮彗惠慧暳蕙蹊醯鞋乎互呼壕壺好岵弧戶扈昊晧毫浩淏湖滸澔濠濩灝狐琥瑚瓠皓祜糊縞胡芦葫蒿虎號蝴護豪鎬頀顥惑或酷婚昏混渾琿魂忽惚笏哄弘汞泓洪烘紅虹訌鴻化和嬅樺火畵�".split("");for(a=0;a!=t[251].length;++a)if(t[251][a].charCodeAt(0)!==65533){r[t[251][a]]=64256+a;e[64256+a]=t[251][a]}t[252]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������禍禾花華話譁貨靴廓擴攫確碻穫丸喚奐宦幻患換歡晥桓渙煥環紈還驩鰥活滑猾豁闊凰幌徨恍惶愰慌晃晄榥況湟滉潢煌璜皇篁簧荒蝗遑隍黃匯回廻徊恢悔懷晦會檜淮澮灰獪繪膾茴蛔誨賄劃獲宖橫鐄哮嚆孝效斅曉梟涍淆�".split("");for(a=0;a!=t[252].length;++a)if(t[252][a].charCodeAt(0)!==65533){r[t[252][a]]=64512+a;e[64512+a]=t[252][a]}t[253]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������爻肴酵驍侯候厚后吼喉嗅帿後朽煦珝逅勛勳塤壎焄熏燻薰訓暈薨喧暄煊萱卉喙毁彙徽揮暉煇諱輝麾休携烋畦虧恤譎鷸兇凶匈洶胸黑昕欣炘痕吃屹紇訖欠欽歆吸恰洽翕興僖凞喜噫囍姬嬉希憙憘戱晞曦熙熹熺犧禧稀羲詰�".split("");for(a=0;a!=t[253].length;++a)if(t[253][a].charCodeAt(0)!==65533){r[t[253][a]]=64768+a;e[64768+a]=t[253][a]}return{enc:r,dec:e}}();cptable[950]=function(){var e=[],r={},t=[],a;t[0]="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~��������������������������������������������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[0].length;++a)if(t[0][a].charCodeAt(0)!==65533){r[t[0][a]]=0+a;e[0+a]=t[0][a]}t[161]="���������������������������������������������������������������� ,、。.‧;:?!︰…‥﹐﹑﹒·﹔﹕﹖﹗|–︱—︳╴︴﹏()︵︶{}︷︸〔〕︹︺【】︻︼《》︽︾〈〉︿﹀「」﹁﹂『』﹃﹄﹙﹚����������������������������������﹛﹜﹝﹞‘’“”〝〞‵′#&*※§〃○●△▲◎☆★◇◆□■▽▼㊣℅¯ ̄_ˍ﹉﹊﹍﹎﹋﹌﹟﹠﹡+-×÷±√<>=≦≧≠∞≒≡﹢﹣﹤﹥﹦~∩∪⊥∠∟⊿㏒㏑∫∮∵∴♀♂⊕⊙↑↓←→↖↗↙↘∥∣/�".split("");for(a=0;a!=t[161].length;++a)if(t[161][a].charCodeAt(0)!==65533){r[t[161][a]]=41216+a;e[41216+a]=t[161][a]}t[162]="����������������������������������������������������������������\∕﹨$¥〒¢£%@℃℉﹩﹪﹫㏕㎜㎝㎞㏎㎡㎎㎏㏄°兙兛兞兝兡兣嗧瓩糎▁▂▃▄▅▆▇█▏▎▍▌▋▊▉┼┴┬┤├▔─│▕┌┐└┘╭����������������������������������╮╰╯═╞╪╡◢◣◥◤╱╲╳0123456789ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩ〡〢〣〤〥〦〧〨〩十卄卅ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuv�".split("");for(a=0;a!=t[162].length;++a)if(t[162][a].charCodeAt(0)!==65533){r[t[162][a]]=41472+a;e[41472+a]=t[162][a]}t[163]="����������������������������������������������������������������wxyzΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩαβγδεζηθικλμνξοπρστυφχψωㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏ����������������������������������ㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ˙ˉˊˇˋ���������������������������������€������������������������������".split("");for(a=0;a!=t[163].length;++a)if(t[163][a].charCodeAt(0)!==65533){r[t[163][a]]=41728+a;e[41728+a]=t[163][a]}t[164]="����������������������������������������������������������������一乙丁七乃九了二人儿入八几刀刁力匕十卜又三下丈上丫丸凡久么也乞于亡兀刃勺千叉口土士夕大女子孑孓寸小尢尸山川工己已巳巾干廾弋弓才����������������������������������丑丐不中丰丹之尹予云井互五亢仁什仃仆仇仍今介仄元允內六兮公冗凶分切刈勻勾勿化匹午升卅卞厄友及反壬天夫太夭孔少尤尺屯巴幻廿弔引心戈戶手扎支文斗斤方日曰月木欠止歹毋比毛氏水火爪父爻片牙牛犬王丙�".split("");for(a=0;a!=t[164].length;++a)if(t[164][a].charCodeAt(0)!==65533){r[t[164][a]]=41984+a;e[41984+a]=t[164][a]}t[165]="����������������������������������������������������������������世丕且丘主乍乏乎以付仔仕他仗代令仙仞充兄冉冊冬凹出凸刊加功包匆北匝仟半卉卡占卯卮去可古右召叮叩叨叼司叵叫另只史叱台句叭叻四囚外����������������������������������央失奴奶孕它尼巨巧左市布平幼弁弘弗必戊打扔扒扑斥旦朮本未末札正母民氐永汁汀氾犯玄玉瓜瓦甘生用甩田由甲申疋白皮皿目矛矢石示禾穴立丞丟乒乓乩亙交亦亥仿伉伙伊伕伍伐休伏仲件任仰仳份企伋光兇兆先全�".split("");for(a=0;a!=t[165].length;++a)if(t[165][a].charCodeAt(0)!==65533){r[t[165][a]]=42240+a;e[42240+a]=t[165][a]}t[166]="����������������������������������������������������������������共再冰列刑划刎刖劣匈匡匠印危吉吏同吊吐吁吋各向名合吃后吆吒因回囝圳地在圭圬圯圩夙多夷夸妄奸妃好她如妁字存宇守宅安寺尖屹州帆并年����������������������������������式弛忙忖戎戌戍成扣扛托收早旨旬旭曲曳有朽朴朱朵次此死氖汝汗汙江池汐汕污汛汍汎灰牟牝百竹米糸缶羊羽老考而耒耳聿肉肋肌臣自至臼舌舛舟艮色艾虫血行衣西阡串亨位住佇佗佞伴佛何估佐佑伽伺伸佃佔似但佣�".split("");for(a=0;a!=t[166].length;++a)if(t[166][a].charCodeAt(0)!==65533){r[t[166][a]]=42496+a;e[42496+a]=t[166][a]}t[167]="����������������������������������������������������������������作你伯低伶余佝佈佚兌克免兵冶冷別判利刪刨劫助努劬匣即卵吝吭吞吾否呎吧呆呃吳呈呂君吩告吹吻吸吮吵吶吠吼呀吱含吟听囪困囤囫坊坑址坍����������������������������������均坎圾坐坏圻壯夾妝妒妨妞妣妙妖妍妤妓妊妥孝孜孚孛完宋宏尬局屁尿尾岐岑岔岌巫希序庇床廷弄弟彤形彷役忘忌志忍忱快忸忪戒我抄抗抖技扶抉扭把扼找批扳抒扯折扮投抓抑抆改攻攸旱更束李杏材村杜杖杞杉杆杠�".split("");for(a=0;a!=t[167].length;++a)if(t[167][a].charCodeAt(0)!==65533){r[t[167][a]]=42752+a;e[42752+a]=t[167][a]}t[168]="����������������������������������������������������������������杓杗步每求汞沙沁沈沉沅沛汪決沐汰沌汨沖沒汽沃汲汾汴沆汶沍沔沘沂灶灼災灸牢牡牠狄狂玖甬甫男甸皂盯矣私秀禿究系罕肖肓肝肘肛肚育良芒����������������������������������芋芍見角言谷豆豕貝赤走足身車辛辰迂迆迅迄巡邑邢邪邦那酉釆里防阮阱阪阬並乖乳事些亞享京佯依侍佳使佬供例來侃佰併侈佩佻侖佾侏侑佺兔兒兕兩具其典冽函刻券刷刺到刮制剁劾劻卒協卓卑卦卷卸卹取叔受味呵�".split("");for(a=0;a!=t[168].length;++a)if(t[168][a].charCodeAt(0)!==65533){r[t[168][a]]=43008+a;e[43008+a]=t[168][a]}t[169]="����������������������������������������������������������������咖呸咕咀呻呷咄咒咆呼咐呱呶和咚呢周咋命咎固垃坷坪坩坡坦坤坼夜奉奇奈奄奔妾妻委妹妮姑姆姐姍始姓姊妯妳姒姅孟孤季宗定官宜宙宛尚屈居����������������������������������屆岷岡岸岩岫岱岳帘帚帖帕帛帑幸庚店府底庖延弦弧弩往征彿彼忝忠忽念忿怏怔怯怵怖怪怕怡性怩怫怛或戕房戾所承拉拌拄抿拂抹拒招披拓拔拋拈抨抽押拐拙拇拍抵拚抱拘拖拗拆抬拎放斧於旺昔易昌昆昂明昀昏昕昊�".split("");for(a=0;a!=t[169].length;++a)if(t[169][a].charCodeAt(0)!==65533){r[t[169][a]]=43264+a;e[43264+a]=t[169][a]}t[170]="����������������������������������������������������������������昇服朋杭枋枕東果杳杷枇枝林杯杰板枉松析杵枚枓杼杪杲欣武歧歿氓氛泣注泳沱泌泥河沽沾沼波沫法泓沸泄油況沮泗泅泱沿治泡泛泊沬泯泜泖泠����������������������������������炕炎炒炊炙爬爭爸版牧物狀狎狙狗狐玩玨玟玫玥甽疝疙疚的盂盲直知矽社祀祁秉秈空穹竺糾罔羌羋者肺肥肢肱股肫肩肴肪肯臥臾舍芳芝芙芭芽芟芹花芬芥芯芸芣芰芾芷虎虱初表軋迎返近邵邸邱邶采金長門阜陀阿阻附�".split("");for(a=0;a!=t[170].length;++a)if(t[170][a].charCodeAt(0)!==65533){r[t[170][a]]=43520+a;e[43520+a]=t[170][a]}t[171]="����������������������������������������������������������������陂隹雨青非亟亭亮信侵侯便俠俑俏保促侶俘俟俊俗侮俐俄係俚俎俞侷兗冒冑冠剎剃削前剌剋則勇勉勃勁匍南卻厚叛咬哀咨哎哉咸咦咳哇哂咽咪品����������������������������������哄哈咯咫咱咻咩咧咿囿垂型垠垣垢城垮垓奕契奏奎奐姜姘姿姣姨娃姥姪姚姦威姻孩宣宦室客宥封屎屏屍屋峙峒巷帝帥帟幽庠度建弈弭彥很待徊律徇後徉怒思怠急怎怨恍恰恨恢恆恃恬恫恪恤扁拜挖按拼拭持拮拽指拱拷�".split("");for(a=0;a!=t[171].length;++a)if(t[171][a].charCodeAt(0)!==65533){r[t[171][a]]=43776+a;e[43776+a]=t[171][a]}t[172]="����������������������������������������������������������������拯括拾拴挑挂政故斫施既春昭映昧是星昨昱昤曷柿染柱柔某柬架枯柵柩柯柄柑枴柚查枸柏柞柳枰柙柢柝柒歪殃殆段毒毗氟泉洋洲洪流津洌洱洞洗����������������������������������活洽派洶洛泵洹洧洸洩洮洵洎洫炫為炳炬炯炭炸炮炤爰牲牯牴狩狠狡玷珊玻玲珍珀玳甚甭畏界畎畋疫疤疥疢疣癸皆皇皈盈盆盃盅省盹相眉看盾盼眇矜砂研砌砍祆祉祈祇禹禺科秒秋穿突竿竽籽紂紅紀紉紇約紆缸美羿耄�".split("");for(a=0;a!=t[172].length;++a)if(t[172][a].charCodeAt(0)!==65533){r[t[172][a]]=44032+a;e[44032+a]=t[172][a]}t[173]="����������������������������������������������������������������耐耍耑耶胖胥胚胃胄背胡胛胎胞胤胝致舢苧范茅苣苛苦茄若茂茉苒苗英茁苜苔苑苞苓苟苯茆虐虹虻虺衍衫要觔計訂訃貞負赴赳趴軍軌述迦迢迪迥����������������������������������迭迫迤迨郊郎郁郃酋酊重閂限陋陌降面革韋韭音頁風飛食首香乘亳倌倍倣俯倦倥俸倩倖倆值借倚倒們俺倀倔倨俱倡個候倘俳修倭倪俾倫倉兼冤冥冢凍凌准凋剖剜剔剛剝匪卿原厝叟哨唐唁唷哼哥哲唆哺唔哩哭員唉哮哪�".split("");for(a=0;a!=t[173].length;++a)if(t[173][a].charCodeAt(0)!==65533){r[t[173][a]]=44288+a;e[44288+a]=t[173][a]}t[174]="����������������������������������������������������������������哦唧唇哽唏圃圄埂埔埋埃堉夏套奘奚娑娘娜娟娛娓姬娠娣娩娥娌娉孫屘宰害家宴宮宵容宸射屑展屐峭峽峻峪峨峰島崁峴差席師庫庭座弱徒徑徐恙����������������������������������恣恥恐恕恭恩息悄悟悚悍悔悌悅悖扇拳挈拿捎挾振捕捂捆捏捉挺捐挽挪挫挨捍捌效敉料旁旅時晉晏晃晒晌晅晁書朔朕朗校核案框桓根桂桔栩梳栗桌桑栽柴桐桀格桃株桅栓栘桁殊殉殷氣氧氨氦氤泰浪涕消涇浦浸海浙涓�".split("");for(a=0;a!=t[174].length;++a)if(t[174][a].charCodeAt(0)!==65533){r[t[174][a]]=44544+a;e[44544+a]=t[174][a]}t[175]="����������������������������������������������������������������浬涉浮浚浴浩涌涊浹涅浥涔烊烘烤烙烈烏爹特狼狹狽狸狷玆班琉珮珠珪珞畔畝畜畚留疾病症疲疳疽疼疹痂疸皋皰益盍盎眩真眠眨矩砰砧砸砝破砷����������������������������������砥砭砠砟砲祕祐祠祟祖神祝祗祚秤秣秧租秦秩秘窄窈站笆笑粉紡紗紋紊素索純紐紕級紜納紙紛缺罟羔翅翁耆耘耕耙耗耽耿胱脂胰脅胭胴脆胸胳脈能脊胼胯臭臬舀舐航舫舨般芻茫荒荔荊茸荐草茵茴荏茲茹茶茗荀茱茨荃�".split("");for(a=0;a!=t[175].length;++a)if(t[175][a].charCodeAt(0)!==65533){r[t[175][a]]=44800+a;e[44800+a]=t[175][a]}t[176]="����������������������������������������������������������������虔蚊蚪蚓蚤蚩蚌蚣蚜衰衷袁袂衽衹記訐討訌訕訊託訓訖訏訑豈豺豹財貢起躬軒軔軏辱送逆迷退迺迴逃追逅迸邕郡郝郢酒配酌釘針釗釜釙閃院陣陡����������������������������������陛陝除陘陞隻飢馬骨高鬥鬲鬼乾偺偽停假偃偌做偉健偶偎偕偵側偷偏倏偯偭兜冕凰剪副勒務勘動匐匏匙匿區匾參曼商啪啦啄啞啡啃啊唱啖問啕唯啤唸售啜唬啣唳啁啗圈國圉域堅堊堆埠埤基堂堵執培夠奢娶婁婉婦婪婀�".split("");for(a=0;a!=t[176].length;++a)if(t[176][a].charCodeAt(0)!==65533){r[t[176][a]]=45056+a;e[45056+a]=t[176][a]}t[177]="����������������������������������������������������������������娼婢婚婆婊孰寇寅寄寂宿密尉專將屠屜屝崇崆崎崛崖崢崑崩崔崙崤崧崗巢常帶帳帷康庸庶庵庾張強彗彬彩彫得徙從徘御徠徜恿患悉悠您惋悴惦悽����������������������������������情悻悵惜悼惘惕惆惟悸惚惇戚戛扈掠控捲掖探接捷捧掘措捱掩掉掃掛捫推掄授掙採掬排掏掀捻捩捨捺敝敖救教敗啟敏敘敕敔斜斛斬族旋旌旎晝晚晤晨晦晞曹勗望梁梯梢梓梵桿桶梱梧梗械梃棄梭梆梅梔條梨梟梡梂欲殺�".split("");for(a=0;a!=t[177].length;++a)if(t[177][a].charCodeAt(0)!==65533){r[t[177][a]]=45312+a;e[45312+a]=t[177][a]}t[178]="����������������������������������������������������������������毫毬氫涎涼淳淙液淡淌淤添淺清淇淋涯淑涮淞淹涸混淵淅淒渚涵淚淫淘淪深淮淨淆淄涪淬涿淦烹焉焊烽烯爽牽犁猜猛猖猓猙率琅琊球理現琍瓠瓶����������������������������������瓷甜產略畦畢異疏痔痕疵痊痍皎盔盒盛眷眾眼眶眸眺硫硃硎祥票祭移窒窕笠笨笛第符笙笞笮粒粗粕絆絃統紮紹紼絀細紳組累終紲紱缽羞羚翌翎習耜聊聆脯脖脣脫脩脰脤舂舵舷舶船莎莞莘荸莢莖莽莫莒莊莓莉莠荷荻荼�".split("");for(a=0;a!=t[178].length;++a)if(t[178][a].charCodeAt(0)!==65533){r[t[178][a]]=45568+a;e[45568+a]=t[178][a]}t[179]="����������������������������������������������������������������莆莧處彪蛇蛀蚶蛄蚵蛆蛋蚱蚯蛉術袞袈被袒袖袍袋覓規訪訝訣訥許設訟訛訢豉豚販責貫貨貪貧赧赦趾趺軛軟這逍通逗連速逝逐逕逞造透逢逖逛途����������������������������������部郭都酗野釵釦釣釧釭釩閉陪陵陳陸陰陴陶陷陬雀雪雩章竟頂頃魚鳥鹵鹿麥麻傢傍傅備傑傀傖傘傚最凱割剴創剩勞勝勛博厥啻喀喧啼喊喝喘喂喜喪喔喇喋喃喳單喟唾喲喚喻喬喱啾喉喫喙圍堯堪場堤堰報堡堝堠壹壺奠�".split("");for(a=0;a!=t[179].length;++a)if(t[179][a].charCodeAt(0)!==65533){r[t[179][a]]=45824+a;e[45824+a]=t[179][a]}t[180]="����������������������������������������������������������������婷媚婿媒媛媧孳孱寒富寓寐尊尋就嵌嵐崴嵇巽幅帽幀幃幾廊廁廂廄弼彭復循徨惑惡悲悶惠愜愣惺愕惰惻惴慨惱愎惶愉愀愒戟扉掣掌描揀揩揉揆揍����������������������������������插揣提握揖揭揮捶援揪換摒揚揹敞敦敢散斑斐斯普晰晴晶景暑智晾晷曾替期朝棺棕棠棘棗椅棟棵森棧棹棒棲棣棋棍植椒椎棉棚楮棻款欺欽殘殖殼毯氮氯氬港游湔渡渲湧湊渠渥渣減湛湘渤湖湮渭渦湯渴湍渺測湃渝渾滋�".split("");for(a=0;a!=t[180].length;++a)if(t[180][a].charCodeAt(0)!==65533){r[t[180][a]]=46080+a;e[46080+a]=t[180][a]}t[181]="����������������������������������������������������������������溉渙湎湣湄湲湩湟焙焚焦焰無然煮焜牌犄犀猶猥猴猩琺琪琳琢琥琵琶琴琯琛琦琨甥甦畫番痢痛痣痙痘痞痠登發皖皓皴盜睏短硝硬硯稍稈程稅稀窘����������������������������������窗窖童竣等策筆筐筒答筍筋筏筑粟粥絞結絨絕紫絮絲絡給絢絰絳善翔翕耋聒肅腕腔腋腑腎脹腆脾腌腓腴舒舜菩萃菸萍菠菅萋菁華菱菴著萊菰萌菌菽菲菊萸萎萄菜萇菔菟虛蛟蛙蛭蛔蛛蛤蛐蛞街裁裂袱覃視註詠評詞証詁�".split("");for(a=0;a!=t[181].length;++a)if(t[181][a].charCodeAt(0)!==65533){r[t[181][a]]=46336+a;e[46336+a]=t[181][a]}t[182]="����������������������������������������������������������������詔詛詐詆訴診訶詖象貂貯貼貳貽賁費賀貴買貶貿貸越超趁跎距跋跚跑跌跛跆軻軸軼辜逮逵週逸進逶鄂郵鄉郾酣酥量鈔鈕鈣鈉鈞鈍鈐鈇鈑閔閏開閑����������������������������������間閒閎隊階隋陽隅隆隍陲隄雁雅雄集雇雯雲韌項順須飧飪飯飩飲飭馮馭黃黍黑亂傭債傲傳僅傾催傷傻傯僇剿剷剽募勦勤勢勣匯嗟嗨嗓嗦嗎嗜嗇嗑嗣嗤嗯嗚嗡嗅嗆嗥嗉園圓塞塑塘塗塚塔填塌塭塊塢塒塋奧嫁嫉嫌媾媽媼�".split("");for(a=0;a!=t[182].length;++a)if(t[182][a].charCodeAt(0)!==65533){r[t[182][a]]=46592+a;e[46592+a]=t[182][a]}t[183]="����������������������������������������������������������������媳嫂媲嵩嵯幌幹廉廈弒彙徬微愚意慈感想愛惹愁愈慎慌慄慍愾愴愧愍愆愷戡戢搓搾搞搪搭搽搬搏搜搔損搶搖搗搆敬斟新暗暉暇暈暖暄暘暍會榔業����������������������������������楚楷楠楔極椰概楊楨楫楞楓楹榆楝楣楛歇歲毀殿毓毽溢溯滓溶滂源溝滇滅溥溘溼溺溫滑準溜滄滔溪溧溴煎煙煩煤煉照煜煬煦煌煥煞煆煨煖爺牒猷獅猿猾瑯瑚瑕瑟瑞瑁琿瑙瑛瑜當畸瘀痰瘁痲痱痺痿痴痳盞盟睛睫睦睞督�".split("");for(a=0;a!=t[183].length;++a)if(t[183][a].charCodeAt(0)!==65533){r[t[183][a]]=46848+a;e[46848+a]=t[183][a]}t[184]="����������������������������������������������������������������睹睪睬睜睥睨睢矮碎碰碗碘碌碉硼碑碓硿祺祿禁萬禽稜稚稠稔稟稞窟窠筷節筠筮筧粱粳粵經絹綑綁綏絛置罩罪署義羨群聖聘肆肄腱腰腸腥腮腳腫����������������������������������腹腺腦舅艇蒂葷落萱葵葦葫葉葬葛萼萵葡董葩葭葆虞虜號蛹蜓蜈蜇蜀蛾蛻蜂蜃蜆蜊衙裟裔裙補裘裝裡裊裕裒覜解詫該詳試詩詰誇詼詣誠話誅詭詢詮詬詹詻訾詨豢貊貉賊資賈賄貲賃賂賅跡跟跨路跳跺跪跤跦躲較載軾輊�".split(""); for(a=0;a!=t[184].length;++a)if(t[184][a].charCodeAt(0)!==65533){r[t[184][a]]=47104+a;e[47104+a]=t[184][a]}t[185]="����������������������������������������������������������������辟農運遊道遂達逼違遐遇遏過遍遑逾遁鄒鄗酬酪酩釉鈷鉗鈸鈽鉀鈾鉛鉋鉤鉑鈴鉉鉍鉅鈹鈿鉚閘隘隔隕雍雋雉雊雷電雹零靖靴靶預頑頓頊頒頌飼飴����������������������������������飽飾馳馱馴髡鳩麂鼎鼓鼠僧僮僥僖僭僚僕像僑僱僎僩兢凳劃劂匱厭嗾嘀嘛嘗嗽嘔嘆嘉嘍嘎嗷嘖嘟嘈嘐嗶團圖塵塾境墓墊塹墅塽壽夥夢夤奪奩嫡嫦嫩嫗嫖嫘嫣孵寞寧寡寥實寨寢寤察對屢嶄嶇幛幣幕幗幔廓廖弊彆彰徹慇�".split("");for(a=0;a!=t[185].length;++a)if(t[185][a].charCodeAt(0)!==65533){r[t[185][a]]=47360+a;e[47360+a]=t[185][a]}t[186]="����������������������������������������������������������������愿態慷慢慣慟慚慘慵截撇摘摔撤摸摟摺摑摧搴摭摻敲斡旗旖暢暨暝榜榨榕槁榮槓構榛榷榻榫榴槐槍榭槌榦槃榣歉歌氳漳演滾漓滴漩漾漠漬漏漂漢����������������������������������滿滯漆漱漸漲漣漕漫漯澈漪滬漁滲滌滷熔熙煽熊熄熒爾犒犖獄獐瑤瑣瑪瑰瑭甄疑瘧瘍瘋瘉瘓盡監瞄睽睿睡磁碟碧碳碩碣禎福禍種稱窪窩竭端管箕箋筵算箝箔箏箸箇箄粹粽精綻綰綜綽綾綠緊綴網綱綺綢綿綵綸維緒緇綬�".split("");for(a=0;a!=t[186].length;++a)if(t[186][a].charCodeAt(0)!==65533){r[t[186][a]]=47616+a;e[47616+a]=t[186][a]}t[187]="����������������������������������������������������������������罰翠翡翟聞聚肇腐膀膏膈膊腿膂臧臺與舔舞艋蓉蒿蓆蓄蒙蒞蒲蒜蓋蒸蓀蓓蒐蒼蓑蓊蜿蜜蜻蜢蜥蜴蜘蝕蜷蜩裳褂裴裹裸製裨褚裯誦誌語誣認誡誓誤����������������������������������說誥誨誘誑誚誧豪貍貌賓賑賒赫趙趕跼輔輒輕輓辣遠遘遜遣遙遞遢遝遛鄙鄘鄞酵酸酷酴鉸銀銅銘銖鉻銓銜銨鉼銑閡閨閩閣閥閤隙障際雌雒需靼鞅韶頗領颯颱餃餅餌餉駁骯骰髦魁魂鳴鳶鳳麼鼻齊億儀僻僵價儂儈儉儅凜�".split("");for(a=0;a!=t[187].length;++a)if(t[187][a].charCodeAt(0)!==65533){r[t[187][a]]=47872+a;e[47872+a]=t[187][a]}t[188]="����������������������������������������������������������������劇劈劉劍劊勰厲嘮嘻嘹嘲嘿嘴嘩噓噎噗噴嘶嘯嘰墀墟增墳墜墮墩墦奭嬉嫻嬋嫵嬌嬈寮寬審寫層履嶝嶔幢幟幡廢廚廟廝廣廠彈影德徵慶慧慮慝慕憂����������������������������������慼慰慫慾憧憐憫憎憬憚憤憔憮戮摩摯摹撞撲撈撐撰撥撓撕撩撒撮播撫撚撬撙撢撳敵敷數暮暫暴暱樣樟槨樁樞標槽模樓樊槳樂樅槭樑歐歎殤毅毆漿潼澄潑潦潔澆潭潛潸潮澎潺潰潤澗潘滕潯潠潟熟熬熱熨牖犛獎獗瑩璋璃�".split("");for(a=0;a!=t[188].length;++a)if(t[188][a].charCodeAt(0)!==65533){r[t[188][a]]=48128+a;e[48128+a]=t[188][a]}t[189]="����������������������������������������������������������������瑾璀畿瘠瘩瘟瘤瘦瘡瘢皚皺盤瞎瞇瞌瞑瞋磋磅確磊碾磕碼磐稿稼穀稽稷稻窯窮箭箱範箴篆篇篁箠篌糊締練緯緻緘緬緝編緣線緞緩綞緙緲緹罵罷羯����������������������������������翩耦膛膜膝膠膚膘蔗蔽蔚蓮蔬蔭蔓蔑蔣蔡蔔蓬蔥蓿蔆螂蝴蝶蝠蝦蝸蝨蝙蝗蝌蝓衛衝褐複褒褓褕褊誼諒談諄誕請諸課諉諂調誰論諍誶誹諛豌豎豬賠賞賦賤賬賭賢賣賜質賡赭趟趣踫踐踝踢踏踩踟踡踞躺輝輛輟輩輦輪輜輞�".split("");for(a=0;a!=t[189].length;++a)if(t[189][a].charCodeAt(0)!==65533){r[t[189][a]]=48384+a;e[48384+a]=t[189][a]}t[190]="����������������������������������������������������������������輥適遮遨遭遷鄰鄭鄧鄱醇醉醋醃鋅銻銷鋪銬鋤鋁銳銼鋒鋇鋰銲閭閱霄霆震霉靠鞍鞋鞏頡頫頜颳養餓餒餘駝駐駟駛駑駕駒駙骷髮髯鬧魅魄魷魯鴆鴉����������������������������������鴃麩麾黎墨齒儒儘儔儐儕冀冪凝劑劓勳噙噫噹噩噤噸噪器噥噱噯噬噢噶壁墾壇壅奮嬝嬴學寰導彊憲憑憩憊懍憶憾懊懈戰擅擁擋撻撼據擄擇擂操撿擒擔撾整曆曉暹曄曇暸樽樸樺橙橫橘樹橄橢橡橋橇樵機橈歙歷氅濂澱澡�".split("");for(a=0;a!=t[190].length;++a)if(t[190][a].charCodeAt(0)!==65533){r[t[190][a]]=48640+a;e[48640+a]=t[190][a]}t[191]="����������������������������������������������������������������濃澤濁澧澳激澹澶澦澠澴熾燉燐燒燈燕熹燎燙燜燃燄獨璜璣璘璟璞瓢甌甍瘴瘸瘺盧盥瞠瞞瞟瞥磨磚磬磧禦積穎穆穌穋窺篙簑築篤篛篡篩篦糕糖縊����������������������������������縑縈縛縣縞縝縉縐罹羲翰翱翮耨膳膩膨臻興艘艙蕊蕙蕈蕨蕩蕃蕉蕭蕪蕞螃螟螞螢融衡褪褲褥褫褡親覦諦諺諫諱謀諜諧諮諾謁謂諷諭諳諶諼豫豭貓賴蹄踱踴蹂踹踵輻輯輸輳辨辦遵遴選遲遼遺鄴醒錠錶鋸錳錯錢鋼錫錄錚�".split("");for(a=0;a!=t[191].length;++a)if(t[191][a].charCodeAt(0)!==65533){r[t[191][a]]=48896+a;e[48896+a]=t[191][a]}t[192]="����������������������������������������������������������������錐錦錡錕錮錙閻隧隨險雕霎霑霖霍霓霏靛靜靦鞘頰頸頻頷頭頹頤餐館餞餛餡餚駭駢駱骸骼髻髭鬨鮑鴕鴣鴦鴨鴒鴛默黔龍龜優償儡儲勵嚎嚀嚐嚅嚇����������������������������������嚏壕壓壑壎嬰嬪嬤孺尷屨嶼嶺嶽嶸幫彌徽應懂懇懦懋戲戴擎擊擘擠擰擦擬擱擢擭斂斃曙曖檀檔檄檢檜櫛檣橾檗檐檠歜殮毚氈濘濱濟濠濛濤濫濯澀濬濡濩濕濮濰燧營燮燦燥燭燬燴燠爵牆獰獲璩環璦璨癆療癌盪瞳瞪瞰瞬�".split("");for(a=0;a!=t[192].length;++a)if(t[192][a].charCodeAt(0)!==65533){r[t[192][a]]=49152+a;e[49152+a]=t[192][a]}t[193]="����������������������������������������������������������������瞧瞭矯磷磺磴磯礁禧禪穗窿簇簍篾篷簌篠糠糜糞糢糟糙糝縮績繆縷縲繃縫總縱繅繁縴縹繈縵縿縯罄翳翼聱聲聰聯聳臆臃膺臂臀膿膽臉膾臨舉艱薪����������������������������������薄蕾薜薑薔薯薛薇薨薊虧蟀蟑螳蟒蟆螫螻螺蟈蟋褻褶襄褸褽覬謎謗謙講謊謠謝謄謐豁谿豳賺賽購賸賻趨蹉蹋蹈蹊轄輾轂轅輿避遽還邁邂邀鄹醣醞醜鍍鎂錨鍵鍊鍥鍋錘鍾鍬鍛鍰鍚鍔闊闋闌闈闆隱隸雖霜霞鞠韓顆颶餵騁�".split("");for(a=0;a!=t[193].length;++a)if(t[193][a].charCodeAt(0)!==65533){r[t[193][a]]=49408+a;e[49408+a]=t[193][a]}t[194]="����������������������������������������������������������������駿鮮鮫鮪鮭鴻鴿麋黏點黜黝黛鼾齋叢嚕嚮壙壘嬸彝懣戳擴擲擾攆擺擻擷斷曜朦檳檬櫃檻檸櫂檮檯歟歸殯瀉瀋濾瀆濺瀑瀏燻燼燾燸獷獵璧璿甕癖癘����������������������������������癒瞽瞿瞻瞼礎禮穡穢穠竄竅簫簧簪簞簣簡糧織繕繞繚繡繒繙罈翹翻職聶臍臏舊藏薩藍藐藉薰薺薹薦蟯蟬蟲蟠覆覲觴謨謹謬謫豐贅蹙蹣蹦蹤蹟蹕軀轉轍邇邃邈醫醬釐鎔鎊鎖鎢鎳鎮鎬鎰鎘鎚鎗闔闖闐闕離雜雙雛雞霤鞣鞦�".split("");for(a=0;a!=t[194].length;++a)if(t[194][a].charCodeAt(0)!==65533){r[t[194][a]]=49664+a;e[49664+a]=t[194][a]}t[195]="����������������������������������������������������������������鞭韹額顏題顎顓颺餾餿餽餮馥騎髁鬃鬆魏魎魍鯊鯉鯽鯈鯀鵑鵝鵠黠鼕鼬儳嚥壞壟壢寵龐廬懲懷懶懵攀攏曠曝櫥櫝櫚櫓瀛瀟瀨瀚瀝瀕瀘爆爍牘犢獸����������������������������������獺璽瓊瓣疇疆癟癡矇礙禱穫穩簾簿簸簽簷籀繫繭繹繩繪羅繳羶羹羸臘藩藝藪藕藤藥藷蟻蠅蠍蟹蟾襠襟襖襞譁譜識證譚譎譏譆譙贈贊蹼蹲躇蹶蹬蹺蹴轔轎辭邊邋醱醮鏡鏑鏟鏃鏈鏜鏝鏖鏢鏍鏘鏤鏗鏨關隴難霪霧靡韜韻類�".split("");for(a=0;a!=t[195].length;++a)if(t[195][a].charCodeAt(0)!==65533){r[t[195][a]]=49920+a;e[49920+a]=t[195][a]}t[196]="����������������������������������������������������������������願顛颼饅饉騖騙鬍鯨鯧鯖鯛鶉鵡鵲鵪鵬麒麗麓麴勸嚨嚷嚶嚴嚼壤孀孃孽寶巉懸懺攘攔攙曦朧櫬瀾瀰瀲爐獻瓏癢癥礦礪礬礫竇競籌籃籍糯糰辮繽繼����������������������������������纂罌耀臚艦藻藹蘑藺蘆蘋蘇蘊蠔蠕襤覺觸議譬警譯譟譫贏贍躉躁躅躂醴釋鐘鐃鏽闡霰飄饒饑馨騫騰騷騵鰓鰍鹹麵黨鼯齟齣齡儷儸囁囀囂夔屬巍懼懾攝攜斕曩櫻欄櫺殲灌爛犧瓖瓔癩矓籐纏續羼蘗蘭蘚蠣蠢蠡蠟襪襬覽譴�".split("");for(a=0;a!=t[196].length;++a)if(t[196][a].charCodeAt(0)!==65533){r[t[196][a]]=50176+a;e[50176+a]=t[196][a]}t[197]="����������������������������������������������������������������護譽贓躊躍躋轟辯醺鐮鐳鐵鐺鐸鐲鐫闢霸霹露響顧顥饗驅驃驀騾髏魔魑鰭鰥鶯鶴鷂鶸麝黯鼙齜齦齧儼儻囈囊囉孿巔巒彎懿攤權歡灑灘玀瓤疊癮癬����������������������������������禳籠籟聾聽臟襲襯觼讀贖贗躑躓轡酈鑄鑑鑒霽霾韃韁顫饕驕驍髒鬚鱉鰱鰾鰻鷓鷗鼴齬齪龔囌巖戀攣攫攪曬欐瓚竊籤籣籥纓纖纔臢蘸蘿蠱變邐邏鑣鑠鑤靨顯饜驚驛驗髓體髑鱔鱗鱖鷥麟黴囑壩攬灞癱癲矗罐羈蠶蠹衢讓讒�".split("");for(a=0;a!=t[197].length;++a)if(t[197][a].charCodeAt(0)!==65533){r[t[197][a]]=50432+a;e[50432+a]=t[197][a]}t[198]="����������������������������������������������������������������讖艷贛釀鑪靂靈靄韆顰驟鬢魘鱟鷹鷺鹼鹽鼇齷齲廳欖灣籬籮蠻觀躡釁鑲鑰顱饞髖鬣黌灤矚讚鑷韉驢驥纜讜躪釅鑽鑾鑼鱷鱸黷豔鑿鸚爨驪鬱鸛鸞籲���������������������������������������������������������������������������������������������������������������������������������".split("");for(a=0;a!=t[198].length;++a)if(t[198][a].charCodeAt(0)!==65533){r[t[198][a]]=50688+a;e[50688+a]=t[198][a]}t[201]="����������������������������������������������������������������乂乜凵匚厂万丌乇亍囗兀屮彳丏冇与丮亓仂仉仈冘勼卬厹圠夃夬尐巿旡殳毌气爿丱丼仨仜仩仡仝仚刌匜卌圢圣夗夯宁宄尒尻屴屳帄庀庂忉戉扐氕����������������������������������氶汃氿氻犮犰玊禸肊阞伎优伬仵伔仱伀价伈伝伂伅伢伓伄仴伒冱刓刉刐劦匢匟卍厊吇囡囟圮圪圴夼妀奼妅奻奾奷奿孖尕尥屼屺屻屾巟幵庄异弚彴忕忔忏扜扞扤扡扦扢扙扠扚扥旯旮朾朹朸朻机朿朼朳氘汆汒汜汏汊汔汋�".split("");for(a=0;a!=t[201].length;++a)if(t[201][a].charCodeAt(0)!==65533){r[t[201][a]]=51456+a;e[51456+a]=t[201][a]}t[202]="����������������������������������������������������������������汌灱牞犴犵玎甪癿穵网艸艼芀艽艿虍襾邙邗邘邛邔阢阤阠阣佖伻佢佉体佤伾佧佒佟佁佘伭伳伿佡冏冹刜刞刡劭劮匉卣卲厎厏吰吷吪呔呅吙吜吥吘����������������������������������吽呏呁吨吤呇囮囧囥坁坅坌坉坋坒夆奀妦妘妠妗妎妢妐妏妧妡宎宒尨尪岍岏岈岋岉岒岊岆岓岕巠帊帎庋庉庌庈庍弅弝彸彶忒忑忐忭忨忮忳忡忤忣忺忯忷忻怀忴戺抃抌抎抏抔抇扱扻扺扰抁抈扷扽扲扴攷旰旴旳旲旵杅杇�".split("");for(a=0;a!=t[202].length;++a)if(t[202][a].charCodeAt(0)!==65533){r[t[202][a]]=51712+a;e[51712+a]=t[202][a]}t[203]="����������������������������������������������������������������杙杕杌杈杝杍杚杋毐氙氚汸汧汫沄沋沏汱汯汩沚汭沇沕沜汦汳汥汻沎灴灺牣犿犽狃狆狁犺狅玕玗玓玔玒町甹疔疕皁礽耴肕肙肐肒肜芐芏芅芎芑芓����������������������������������芊芃芄豸迉辿邟邡邥邞邧邠阰阨阯阭丳侘佼侅佽侀侇佶佴侉侄佷佌侗佪侚佹侁佸侐侜侔侞侒侂侕佫佮冞冼冾刵刲刳剆刱劼匊匋匼厒厔咇呿咁咑咂咈呫呺呾呥呬呴呦咍呯呡呠咘呣呧呤囷囹坯坲坭坫坱坰坶垀坵坻坳坴坢�".split("");for(a=0;a!=t[203].length;++a)if(t[203][a].charCodeAt(0)!==65533){r[t[203][a]]=51968+a;e[51968+a]=t[203][a]}t[204]="����������������������������������������������������������������坨坽夌奅妵妺姏姎妲姌姁妶妼姃姖妱妽姀姈妴姇孢孥宓宕屄屇岮岤岠岵岯岨岬岟岣岭岢岪岧岝岥岶岰岦帗帔帙弨弢弣弤彔徂彾彽忞忥怭怦怙怲怋����������������������������������怴怊怗怳怚怞怬怢怍怐怮怓怑怌怉怜戔戽抭抴拑抾抪抶拊抮抳抯抻抩抰抸攽斨斻昉旼昄昒昈旻昃昋昍昅旽昑昐曶朊枅杬枎枒杶杻枘枆构杴枍枌杺枟枑枙枃杽极杸杹枔欥殀歾毞氝沓泬泫泮泙沶泔沭泧沷泐泂沺泃泆泭泲�".split("");for(a=0;a!=t[204].length;++a)if(t[204][a].charCodeAt(0)!==65533){r[t[204][a]]=52224+a;e[52224+a]=t[204][a]}t[205]="����������������������������������������������������������������泒泝沴沊沝沀泞泀洰泍泇沰泹泏泩泑炔炘炅炓炆炄炑炖炂炚炃牪狖狋狘狉狜狒狔狚狌狑玤玡玭玦玢玠玬玝瓝瓨甿畀甾疌疘皯盳盱盰盵矸矼矹矻矺����������������������������������矷祂礿秅穸穻竻籵糽耵肏肮肣肸肵肭舠芠苀芫芚芘芛芵芧芮芼芞芺芴芨芡芩苂芤苃芶芢虰虯虭虮豖迒迋迓迍迖迕迗邲邴邯邳邰阹阽阼阺陃俍俅俓侲俉俋俁俔俜俙侻侳俛俇俖侺俀侹俬剄剉勀勂匽卼厗厖厙厘咺咡咭咥哏�".split("");for(a=0;a!=t[205].length;++a)if(t[205][a].charCodeAt(0)!==65533){r[t[205][a]]=52480+a;e[52480+a]=t[205][a]}t[206]="����������������������������������������������������������������哃茍咷咮哖咶哅哆咠呰咼咢咾呲哞咰垵垞垟垤垌垗垝垛垔垘垏垙垥垚垕壴复奓姡姞姮娀姱姝姺姽姼姶姤姲姷姛姩姳姵姠姾姴姭宨屌峐峘峌峗峋峛����������������������������������峞峚峉峇峊峖峓峔峏峈峆峎峟峸巹帡帢帣帠帤庰庤庢庛庣庥弇弮彖徆怷怹恔恲恞恅恓恇恉恛恌恀恂恟怤恄恘恦恮扂扃拏挍挋拵挎挃拫拹挏挌拸拶挀挓挔拺挕拻拰敁敃斪斿昶昡昲昵昜昦昢昳昫昺昝昴昹昮朏朐柁柲柈枺�".split("");for(a=0;a!=t[206].length;++a)if(t[206][a].charCodeAt(0)!==65533){r[t[206][a]]=52736+a;e[52736+a]=t[206][a]}t[207]="����������������������������������������������������������������柜枻柸柘柀枷柅柫柤柟枵柍枳柷柶柮柣柂枹柎柧柰枲柼柆柭柌枮柦柛柺柉柊柃柪柋欨殂殄殶毖毘毠氠氡洨洴洭洟洼洿洒洊泚洳洄洙洺洚洑洀洝浂����������������������������������洁洘洷洃洏浀洇洠洬洈洢洉洐炷炟炾炱炰炡炴炵炩牁牉牊牬牰牳牮狊狤狨狫狟狪狦狣玅珌珂珈珅玹玶玵玴珫玿珇玾珃珆玸珋瓬瓮甮畇畈疧疪癹盄眈眃眄眅眊盷盻盺矧矨砆砑砒砅砐砏砎砉砃砓祊祌祋祅祄秕种秏秖秎窀�".split("");for(a=0;a!=t[207].length;++a)if(t[207][a].charCodeAt(0)!==65533){r[t[207][a]]=52992+a;e[52992+a]=t[207][a]}t[208]="����������������������������������������������������������������穾竑笀笁籺籸籹籿粀粁紃紈紁罘羑羍羾耇耎耏耔耷胘胇胠胑胈胂胐胅胣胙胜胊胕胉胏胗胦胍臿舡芔苙苾苹茇苨茀苕茺苫苖苴苬苡苲苵茌苻苶苰苪����������������������������������苤苠苺苳苭虷虴虼虳衁衎衧衪衩觓訄訇赲迣迡迮迠郱邽邿郕郅邾郇郋郈釔釓陔陏陑陓陊陎倞倅倇倓倢倰倛俵俴倳倷倬俶俷倗倜倠倧倵倯倱倎党冔冓凊凄凅凈凎剡剚剒剞剟剕剢勍匎厞唦哢唗唒哧哳哤唚哿唄唈哫唑唅哱�".split("");for(a=0;a!=t[208].length;++a)if(t[208][a].charCodeAt(0)!==65533){r[t[208][a]]=53248+a;e[53248+a]=t[208][a]}t[209]="����������������������������������������������������������������唊哻哷哸哠唎唃唋圁圂埌堲埕埒垺埆垽垼垸垶垿埇埐垹埁夎奊娙娖娭娮娕娏娗娊娞娳孬宧宭宬尃屖屔峬峿峮峱峷崀峹帩帨庨庮庪庬弳弰彧恝恚恧����������������������������������恁悢悈悀悒悁悝悃悕悛悗悇悜悎戙扆拲挐捖挬捄捅挶捃揤挹捋捊挼挩捁挴捘捔捙挭捇挳捚捑挸捗捀捈敊敆旆旃旄旂晊晟晇晑朒朓栟栚桉栲栳栻桋桏栖栱栜栵栫栭栯桎桄栴栝栒栔栦栨栮桍栺栥栠欬欯欭欱欴歭肂殈毦毤�".split("");for(a=0;a!=t[209].length;++a)if(t[209][a].charCodeAt(0)!==65533){r[t[209][a]]=53504+a;e[53504+a]=t[209][a]}t[210]="����������������������������������������������������������������毨毣毢毧氥浺浣浤浶洍浡涒浘浢浭浯涑涍淯浿涆浞浧浠涗浰浼浟涂涘洯浨涋浾涀涄洖涃浻浽浵涐烜烓烑烝烋缹烢烗烒烞烠烔烍烅烆烇烚烎烡牂牸����������������������������������牷牶猀狺狴狾狶狳狻猁珓珙珥珖玼珧珣珩珜珒珛珔珝珚珗珘珨瓞瓟瓴瓵甡畛畟疰痁疻痄痀疿疶疺皊盉眝眛眐眓眒眣眑眕眙眚眢眧砣砬砢砵砯砨砮砫砡砩砳砪砱祔祛祏祜祓祒祑秫秬秠秮秭秪秜秞秝窆窉窅窋窌窊窇竘笐�".split("");for(a=0;a!=t[210].length;++a)if(t[210][a].charCodeAt(0)!==65533){r[t[210][a]]=53760+a;e[53760+a]=t[210][a]}t[211]="����������������������������������������������������������������笄笓笅笏笈笊笎笉笒粄粑粊粌粈粍粅紞紝紑紎紘紖紓紟紒紏紌罜罡罞罠罝罛羖羒翃翂翀耖耾耹胺胲胹胵脁胻脀舁舯舥茳茭荄茙荑茥荖茿荁茦茜茢����������������������������������荂荎茛茪茈茼荍茖茤茠茷茯茩荇荅荌荓茞茬荋茧荈虓虒蚢蚨蚖蚍蚑蚞蚇蚗蚆蚋蚚蚅蚥蚙蚡蚧蚕蚘蚎蚝蚐蚔衃衄衭衵衶衲袀衱衿衯袃衾衴衼訒豇豗豻貤貣赶赸趵趷趶軑軓迾迵适迿迻逄迼迶郖郠郙郚郣郟郥郘郛郗郜郤酐�".split("");for(a=0;a!=t[211].length;++a)if(t[211][a].charCodeAt(0)!==65533){r[t[211][a]]=54016+a;e[54016+a]=t[211][a]}t[212]="����������������������������������������������������������������酎酏釕釢釚陜陟隼飣髟鬯乿偰偪偡偞偠偓偋偝偲偈偍偁偛偊偢倕偅偟偩偫偣偤偆偀偮偳偗偑凐剫剭剬剮勖勓匭厜啵啶唼啍啐唴唪啑啢唶唵唰啒啅����������������������������������唌唲啥啎唹啈唭唻啀啋圊圇埻堔埢埶埜埴堀埭埽堈埸堋埳埏堇埮埣埲埥埬埡堎埼堐埧堁堌埱埩埰堍堄奜婠婘婕婧婞娸娵婭婐婟婥婬婓婤婗婃婝婒婄婛婈媎娾婍娹婌婰婩婇婑婖婂婜孲孮寁寀屙崞崋崝崚崠崌崨崍崦崥崏�".split("");for(a=0;a!=t[212].length;++a)if(t[212][a].charCodeAt(0)!==65533){r[t[212][a]]=54272+a;e[54272+a]=t[212][a]}t[213]="����������������������������������������������������������������崰崒崣崟崮帾帴庱庴庹庲庳弶弸徛徖徟悊悐悆悾悰悺惓惔惏惤惙惝惈悱惛悷惊悿惃惍惀挲捥掊掂捽掽掞掭掝掗掫掎捯掇掐据掯捵掜捭掮捼掤挻掟����������������������������������捸掅掁掑掍捰敓旍晥晡晛晙晜晢朘桹梇梐梜桭桮梮梫楖桯梣梬梩桵桴梲梏桷梒桼桫桲梪梀桱桾梛梖梋梠梉梤桸桻梑梌梊桽欶欳欷欸殑殏殍殎殌氪淀涫涴涳湴涬淩淢涷淶淔渀淈淠淟淖涾淥淜淝淛淴淊涽淭淰涺淕淂淏淉�".split("");for(a=0;a!=t[213].length;++a)if(t[213][a].charCodeAt(0)!==65533){r[t[213][a]]=54528+a;e[54528+a]=t[213][a]}t[214]="����������������������������������������������������������������淐淲淓淽淗淍淣涻烺焍烷焗烴焌烰焄烳焐烼烿焆焓焀烸烶焋焂焎牾牻牼牿猝猗猇猑猘猊猈狿猏猞玈珶珸珵琄琁珽琇琀珺珼珿琌琋珴琈畤畣痎痒痏����������������������������������痋痌痑痐皏皉盓眹眯眭眱眲眴眳眽眥眻眵硈硒硉硍硊硌砦硅硐祤祧祩祪祣祫祡离秺秸秶秷窏窔窐笵筇笴笥笰笢笤笳笘笪笝笱笫笭笯笲笸笚笣粔粘粖粣紵紽紸紶紺絅紬紩絁絇紾紿絊紻紨罣羕羜羝羛翊翋翍翐翑翇翏翉耟�".split("");for(a=0;a!=t[214].length;++a)if(t[214][a].charCodeAt(0)!==65533){r[t[214][a]]=54784+a;e[54784+a]=t[214][a]}t[215]="����������������������������������������������������������������耞耛聇聃聈脘脥脙脛脭脟脬脞脡脕脧脝脢舑舸舳舺舴舲艴莐莣莨莍荺荳莤荴莏莁莕莙荵莔莩荽莃莌莝莛莪莋荾莥莯莈莗莰荿莦莇莮荶莚虙虖蚿蚷����������������������������������蛂蛁蛅蚺蚰蛈蚹蚳蚸蛌蚴蚻蚼蛃蚽蚾衒袉袕袨袢袪袚袑袡袟袘袧袙袛袗袤袬袌袓袎覂觖觙觕訰訧訬訞谹谻豜豝豽貥赽赻赹趼跂趹趿跁軘軞軝軜軗軠軡逤逋逑逜逌逡郯郪郰郴郲郳郔郫郬郩酖酘酚酓酕釬釴釱釳釸釤釹釪�".split("");for(a=0;a!=t[215].length;++a)if(t[215][a].charCodeAt(0)!==65533){r[t[215][a]]=55040+a;e[55040+a]=t[215][a]}t[216]="����������������������������������������������������������������釫釷釨釮镺閆閈陼陭陫陱陯隿靪頄飥馗傛傕傔傞傋傣傃傌傎傝偨傜傒傂傇兟凔匒匑厤厧喑喨喥喭啷噅喢喓喈喏喵喁喣喒喤啽喌喦啿喕喡喎圌堩堷����������������������������������堙堞堧堣堨埵塈堥堜堛堳堿堶堮堹堸堭堬堻奡媯媔媟婺媢媞婸媦婼媥媬媕媮娷媄媊媗媃媋媩婻婽媌媜媏媓媝寪寍寋寔寑寊寎尌尰崷嵃嵫嵁嵋崿崵嵑嵎嵕崳崺嵒崽崱嵙嵂崹嵉崸崼崲崶嵀嵅幄幁彘徦徥徫惉悹惌惢惎惄愔�".split("");for(a=0;a!=t[216].length;++a)if(t[216][a].charCodeAt(0)!==65533){r[t[216][a]]=55296+a;e[55296+a]=t[216][a]}t[217]="����������������������������������������������������������������惲愊愖愅惵愓惸惼惾惁愃愘愝愐惿愄愋扊掔掱掰揎揥揨揯揃撝揳揊揠揶揕揲揵摡揟掾揝揜揄揘揓揂揇揌揋揈揰揗揙攲敧敪敤敜敨敥斌斝斞斮旐旒����������������������������������晼晬晻暀晱晹晪晲朁椌棓椄棜椪棬棪棱椏棖棷棫棤棶椓椐棳棡椇棌椈楰梴椑棯棆椔棸棐棽棼棨椋椊椗棎棈棝棞棦棴棑椆棔棩椕椥棇欹欻欿欼殔殗殙殕殽毰毲毳氰淼湆湇渟湉溈渼渽湅湢渫渿湁湝湳渜渳湋湀湑渻渃渮湞�".split("");for(a=0;a!=t[217].length;++a)if(t[217][a].charCodeAt(0)!==65533){r[t[217][a]]=55552+a;e[55552+a]=t[217][a]}t[218]="����������������������������������������������������������������湨湜湡渱渨湠湱湫渹渢渰湓湥渧湸湤湷湕湹湒湦渵渶湚焠焞焯烻焮焱焣焥焢焲焟焨焺焛牋牚犈犉犆犅犋猒猋猰猢猱猳猧猲猭猦猣猵猌琮琬琰琫琖����������������������������������琚琡琭琱琤琣琝琩琠琲瓻甯畯畬痧痚痡痦痝痟痤痗皕皒盚睆睇睄睍睅睊睎睋睌矞矬硠硤硥硜硭硱硪确硰硩硨硞硢祴祳祲祰稂稊稃稌稄窙竦竤筊笻筄筈筌筎筀筘筅粢粞粨粡絘絯絣絓絖絧絪絏絭絜絫絒絔絩絑絟絎缾缿罥�".split("");for(a=0;a!=t[218].length;++a)if(t[218][a].charCodeAt(0)!==65533){r[t[218][a]]=55808+a;e[55808+a]=t[218][a]}t[219]="����������������������������������������������������������������罦羢羠羡翗聑聏聐胾胔腃腊腒腏腇脽腍脺臦臮臷臸臹舄舼舽舿艵茻菏菹萣菀菨萒菧菤菼菶萐菆菈菫菣莿萁菝菥菘菿菡菋菎菖菵菉萉萏菞萑萆菂菳����������������������������������菕菺菇菑菪萓菃菬菮菄菻菗菢萛菛菾蛘蛢蛦蛓蛣蛚蛪蛝蛫蛜蛬蛩蛗蛨蛑衈衖衕袺裗袹袸裀袾袶袼袷袽袲褁裉覕覘覗觝觚觛詎詍訹詙詀詗詘詄詅詒詈詑詊詌詏豟貁貀貺貾貰貹貵趄趀趉跘跓跍跇跖跜跏跕跙跈跗跅軯軷軺�".split("");for(a=0;a!=t[219].length;++a)if(t[219][a].charCodeAt(0)!==65533){r[t[219][a]]=56064+a;e[56064+a]=t[219][a]}t[220]="����������������������������������������������������������������軹軦軮軥軵軧軨軶軫軱軬軴軩逭逴逯鄆鄬鄄郿郼鄈郹郻鄁鄀鄇鄅鄃酡酤酟酢酠鈁鈊鈥鈃鈚鈦鈏鈌鈀鈒釿釽鈆鈄鈧鈂鈜鈤鈙鈗鈅鈖镻閍閌閐隇陾隈����������������������������������隉隃隀雂雈雃雱雰靬靰靮頇颩飫鳦黹亃亄亶傽傿僆傮僄僊傴僈僂傰僁傺傱僋僉傶傸凗剺剸剻剼嗃嗛嗌嗐嗋嗊嗝嗀嗔嗄嗩喿嗒喍嗏嗕嗢嗖嗈嗲嗍嗙嗂圔塓塨塤塏塍塉塯塕塎塝塙塥塛堽塣塱壼嫇嫄嫋媺媸媱媵媰媿嫈媻嫆�".split("");for(a=0;a!=t[220].length;++a)if(t[220][a].charCodeAt(0)!==65533){r[t[220][a]]=56320+a;e[56320+a]=t[220][a]}t[221]="����������������������������������������������������������������媷嫀嫊媴媶嫍媹媐寖寘寙尟尳嵱嵣嵊嵥嵲嵬嵞嵨嵧嵢巰幏幎幊幍幋廅廌廆廋廇彀徯徭惷慉慊愫慅愶愲愮慆愯慏愩慀戠酨戣戥戤揅揱揫搐搒搉搠搤����������������������������������搳摃搟搕搘搹搷搢搣搌搦搰搨摁搵搯搊搚摀搥搧搋揧搛搮搡搎敯斒旓暆暌暕暐暋暊暙暔晸朠楦楟椸楎楢楱椿楅楪椹楂楗楙楺楈楉椵楬椳椽楥棰楸椴楩楀楯楄楶楘楁楴楌椻楋椷楜楏楑椲楒椯楻椼歆歅歃歂歈歁殛嗀毻毼�".split("");for(a=0;a!=t[221].length;++a)if(t[221][a].charCodeAt(0)!==65533){r[t[221][a]]=56576+a;e[56576+a]=t[221][a]}t[222]="����������������������������������������������������������������毹毷毸溛滖滈溏滀溟溓溔溠溱溹滆滒溽滁溞滉溷溰滍溦滏溲溾滃滜滘溙溒溎溍溤溡溿溳滐滊溗溮溣煇煔煒煣煠煁煝煢煲煸煪煡煂煘煃煋煰煟煐煓����������������������������������煄煍煚牏犍犌犑犐犎猼獂猻猺獀獊獉瑄瑊瑋瑒瑑瑗瑀瑏瑐瑎瑂瑆瑍瑔瓡瓿瓾瓽甝畹畷榃痯瘏瘃痷痾痼痹痸瘐痻痶痭痵痽皙皵盝睕睟睠睒睖睚睩睧睔睙睭矠碇碚碔碏碄碕碅碆碡碃硹碙碀碖硻祼禂祽祹稑稘稙稒稗稕稢稓�".split("");for(a=0;a!=t[222].length;++a)if(t[222][a].charCodeAt(0)!==65533){r[t[222][a]]=56832+a;e[56832+a]=t[222][a]}t[223]="����������������������������������������������������������������稛稐窣窢窞竫筦筤筭筴筩筲筥筳筱筰筡筸筶筣粲粴粯綈綆綀綍絿綅絺綎絻綃絼綌綔綄絽綒罭罫罧罨罬羦羥羧翛翜耡腤腠腷腜腩腛腢腲朡腞腶腧腯����������������������������������腄腡舝艉艄艀艂艅蓱萿葖葶葹蒏蒍葥葑葀蒆葧萰葍葽葚葙葴葳葝蔇葞萷萺萴葺葃葸萲葅萩菙葋萯葂萭葟葰萹葎葌葒葯蓅蒎萻葇萶萳葨葾葄萫葠葔葮葐蜋蜄蛷蜌蛺蛖蛵蝍蛸蜎蜉蜁蛶蜍蜅裖裋裍裎裞裛裚裌裐覅覛觟觥觤�".split("");for(a=0;a!=t[223].length;++a)if(t[223][a].charCodeAt(0)!==65533){r[t[223][a]]=57088+a;e[57088+a]=t[223][a]}t[224]="����������������������������������������������������������������觡觠觢觜触詶誆詿詡訿詷誂誄詵誃誁詴詺谼豋豊豥豤豦貆貄貅賌赨赩趑趌趎趏趍趓趔趐趒跰跠跬跱跮跐跩跣跢跧跲跫跴輆軿輁輀輅輇輈輂輋遒逿����������������������������������遄遉逽鄐鄍鄏鄑鄖鄔鄋鄎酮酯鉈鉒鈰鈺鉦鈳鉥鉞銃鈮鉊鉆鉭鉬鉏鉠鉧鉯鈶鉡鉰鈱鉔鉣鉐鉲鉎鉓鉌鉖鈲閟閜閞閛隒隓隑隗雎雺雽雸雵靳靷靸靲頏頍頎颬飶飹馯馲馰馵骭骫魛鳪鳭鳧麀黽僦僔僗僨僳僛僪僝僤僓僬僰僯僣僠�".split("");for(a=0;a!=t[224].length;++a)if(t[224][a].charCodeAt(0)!==65533){r[t[224][a]]=57344+a;e[57344+a]=t[224][a]}t[225]="����������������������������������������������������������������凘劀劁勩勫匰厬嘧嘕嘌嘒嗼嘏嘜嘁嘓嘂嗺嘝嘄嗿嗹墉塼墐墘墆墁塿塴墋塺墇墑墎塶墂墈塻墔墏壾奫嫜嫮嫥嫕嫪嫚嫭嫫嫳嫢嫠嫛嫬嫞嫝嫙嫨嫟孷寠����������������������������������寣屣嶂嶀嵽嶆嵺嶁嵷嶊嶉嶈嵾嵼嶍嵹嵿幘幙幓廘廑廗廎廜廕廙廒廔彄彃彯徶愬愨慁慞慱慳慒慓慲慬憀慴慔慺慛慥愻慪慡慖戩戧戫搫摍摛摝摴摶摲摳摽摵摦撦摎撂摞摜摋摓摠摐摿搿摬摫摙摥摷敳斠暡暠暟朅朄朢榱榶槉�".split("");for(a=0;a!=t[225].length;++a)if(t[225][a].charCodeAt(0)!==65533){r[t[225][a]]=57600+a;e[57600+a]=t[225][a]}t[226]="����������������������������������������������������������������榠槎榖榰榬榼榑榙榎榧榍榩榾榯榿槄榽榤槔榹槊榚槏榳榓榪榡榞槙榗榐槂榵榥槆歊歍歋殞殟殠毃毄毾滎滵滱漃漥滸漷滻漮漉潎漙漚漧漘漻漒滭漊����������������������������������漶潳滹滮漭潀漰漼漵滫漇漎潃漅滽滶漹漜滼漺漟漍漞漈漡熇熐熉熀熅熂熏煻熆熁熗牄牓犗犕犓獃獍獑獌瑢瑳瑱瑵瑲瑧瑮甀甂甃畽疐瘖瘈瘌瘕瘑瘊瘔皸瞁睼瞅瞂睮瞀睯睾瞃碲碪碴碭碨硾碫碞碥碠碬碢碤禘禊禋禖禕禔禓�".split("");for(a=0;a!=t[226].length;++a)if(t[226][a].charCodeAt(0)!==65533){r[t[226][a]]=57856+a;e[57856+a]=t[226][a]}t[227]="����������������������������������������������������������������禗禈禒禐稫穊稰稯稨稦窨窫窬竮箈箜箊箑箐箖箍箌箛箎箅箘劄箙箤箂粻粿粼粺綧綷緂綣綪緁緀緅綝緎緄緆緋緌綯綹綖綼綟綦綮綩綡緉罳翢翣翥翞����������������������������������耤聝聜膉膆膃膇膍膌膋舕蒗蒤蒡蒟蒺蓎蓂蒬蒮蒫蒹蒴蓁蓍蒪蒚蒱蓐蒝蒧蒻蒢蒔蓇蓌蒛蒩蒯蒨蓖蒘蒶蓏蒠蓗蓔蓒蓛蒰蒑虡蜳蜣蜨蝫蝀蜮蜞蜡蜙蜛蝃蜬蝁蜾蝆蜠蜲蜪蜭蜼蜒蜺蜱蜵蝂蜦蜧蜸蜤蜚蜰蜑裷裧裱裲裺裾裮裼裶裻�".split("");for(a=0;a!=t[227].length;++a)if(t[227][a].charCodeAt(0)!==65533){r[t[227][a]]=58112+a;e[58112+a]=t[227][a]}t[228]="����������������������������������������������������������������裰裬裫覝覡覟覞觩觫觨誫誙誋誒誏誖谽豨豩賕賏賗趖踉踂跿踍跽踊踃踇踆踅跾踀踄輐輑輎輍鄣鄜鄠鄢鄟鄝鄚鄤鄡鄛酺酲酹酳銥銤鉶銛鉺銠銔銪銍����������������������������������銦銚銫鉹銗鉿銣鋮銎銂銕銢鉽銈銡銊銆銌銙銧鉾銇銩銝銋鈭隞隡雿靘靽靺靾鞃鞀鞂靻鞄鞁靿韎韍頖颭颮餂餀餇馝馜駃馹馻馺駂馽駇骱髣髧鬾鬿魠魡魟鳱鳲鳵麧僿儃儰僸儆儇僶僾儋儌僽儊劋劌勱勯噈噂噌嘵噁噊噉噆噘�".split("");for(a=0;a!=t[228].length;++a)if(t[228][a].charCodeAt(0)!==65533){r[t[228][a]]=58368+a;e[58368+a]=t[228][a]}t[229]="����������������������������������������������������������������噚噀嘳嘽嘬嘾嘸嘪嘺圚墫墝墱墠墣墯墬墥墡壿嫿嫴嫽嫷嫶嬃嫸嬂嫹嬁嬇嬅嬏屧嶙嶗嶟嶒嶢嶓嶕嶠嶜嶡嶚嶞幩幝幠幜緳廛廞廡彉徲憋憃慹憱憰憢憉����������������������������������憛憓憯憭憟憒憪憡憍慦憳戭摮摰撖撠撅撗撜撏撋撊撌撣撟摨撱撘敶敺敹敻斲斳暵暰暩暲暷暪暯樀樆樗槥槸樕槱槤樠槿槬槢樛樝槾樧槲槮樔槷槧橀樈槦槻樍槼槫樉樄樘樥樏槶樦樇槴樖歑殥殣殢殦氁氀毿氂潁漦潾澇濆澒�".split("");for(a=0;a!=t[229].length;++a)if(t[229][a].charCodeAt(0)!==65533){r[t[229][a]]=58624+a;e[58624+a]=t[229][a]}t[230]="����������������������������������������������������������������澍澉澌潢潏澅潚澖潶潬澂潕潲潒潐潗澔澓潝漀潡潫潽潧澐潓澋潩潿澕潣潷潪潻熲熯熛熰熠熚熩熵熝熥熞熤熡熪熜熧熳犘犚獘獒獞獟獠獝獛獡獚獙����������������������������������獢璇璉璊璆璁瑽璅璈瑼瑹甈甇畾瘥瘞瘙瘝瘜瘣瘚瘨瘛皜皝皞皛瞍瞏瞉瞈磍碻磏磌磑磎磔磈磃磄磉禚禡禠禜禢禛歶稹窲窴窳箷篋箾箬篎箯箹篊箵糅糈糌糋緷緛緪緧緗緡縃緺緦緶緱緰緮緟罶羬羰羭翭翫翪翬翦翨聤聧膣膟�".split("");for(a=0;a!=t[230].length;++a)if(t[230][a].charCodeAt(0)!==65533){r[t[230][a]]=58880+a;e[58880+a]=t[230][a]}t[231]="����������������������������������������������������������������膞膕膢膙膗舖艏艓艒艐艎艑蔤蔻蔏蔀蔩蔎蔉蔍蔟蔊蔧蔜蓻蔫蓺蔈蔌蓴蔪蓲蔕蓷蓫蓳蓼蔒蓪蓩蔖蓾蔨蔝蔮蔂蓽蔞蓶蔱蔦蓧蓨蓰蓯蓹蔘蔠蔰蔋蔙蔯虢����������������������������������蝖蝣蝤蝷蟡蝳蝘蝔蝛蝒蝡蝚蝑蝞蝭蝪蝐蝎蝟蝝蝯蝬蝺蝮蝜蝥蝏蝻蝵蝢蝧蝩衚褅褌褔褋褗褘褙褆褖褑褎褉覢覤覣觭觰觬諏諆誸諓諑諔諕誻諗誾諀諅諘諃誺誽諙谾豍貏賥賟賙賨賚賝賧趠趜趡趛踠踣踥踤踮踕踛踖踑踙踦踧�".split("");for(a=0;a!=t[231].length;++a)if(t[231][a].charCodeAt(0)!==65533){r[t[231][a]]=59136+a;e[59136+a]=t[231][a]}t[232]="����������������������������������������������������������������踔踒踘踓踜踗踚輬輤輘輚輠輣輖輗遳遰遯遧遫鄯鄫鄩鄪鄲鄦鄮醅醆醊醁醂醄醀鋐鋃鋄鋀鋙銶鋏鋱鋟鋘鋩鋗鋝鋌鋯鋂鋨鋊鋈鋎鋦鋍鋕鋉鋠鋞鋧鋑鋓����������������������������������銵鋡鋆銴镼閬閫閮閰隤隢雓霅霈霂靚鞊鞎鞈韐韏頞頝頦頩頨頠頛頧颲餈飺餑餔餖餗餕駜駍駏駓駔駎駉駖駘駋駗駌骳髬髫髳髲髱魆魃魧魴魱魦魶魵魰魨魤魬鳼鳺鳽鳿鳷鴇鴀鳹鳻鴈鴅鴄麃黓鼏鼐儜儓儗儚儑凞匴叡噰噠噮�".split("");for(a=0;a!=t[232].length;++a)if(t[232][a].charCodeAt(0)!==65533){r[t[232][a]]=59392+a;e[59392+a]=t[232][a]}t[233]="����������������������������������������������������������������噳噦噣噭噲噞噷圜圛壈墽壉墿墺壂墼壆嬗嬙嬛嬡嬔嬓嬐嬖嬨嬚嬠嬞寯嶬嶱嶩嶧嶵嶰嶮嶪嶨嶲嶭嶯嶴幧幨幦幯廩廧廦廨廥彋徼憝憨憖懅憴懆懁懌憺����������������������������������憿憸憌擗擖擐擏擉撽撉擃擛擳擙攳敿敼斢曈暾曀曊曋曏暽暻暺曌朣樴橦橉橧樲橨樾橝橭橶橛橑樨橚樻樿橁橪橤橐橏橔橯橩橠樼橞橖橕橍橎橆歕歔歖殧殪殫毈毇氄氃氆澭濋澣濇澼濎濈潞濄澽澞濊澨瀄澥澮澺澬澪濏澿澸�".split("");for(a=0;a!=t[233].length;++a)if(t[233][a].charCodeAt(0)!==65533){r[t[233][a]]=59648+a;e[59648+a]=t[233][a]}t[234]="����������������������������������������������������������������澢濉澫濍澯澲澰燅燂熿熸燖燀燁燋燔燊燇燏熽燘熼燆燚燛犝犞獩獦獧獬獥獫獪瑿璚璠璔璒璕璡甋疀瘯瘭瘱瘽瘳瘼瘵瘲瘰皻盦瞚瞝瞡瞜瞛瞢瞣瞕瞙����������������������������������瞗磝磩磥磪磞磣磛磡磢磭磟磠禤穄穈穇窶窸窵窱窷篞篣篧篝篕篥篚篨篹篔篪篢篜篫篘篟糒糔糗糐糑縒縡縗縌縟縠縓縎縜縕縚縢縋縏縖縍縔縥縤罃罻罼罺羱翯耪耩聬膱膦膮膹膵膫膰膬膴膲膷膧臲艕艖艗蕖蕅蕫蕍蕓蕡蕘�".split("");for(a=0;a!=t[234].length;++a)if(t[234][a].charCodeAt(0)!==65533){r[t[234][a]]=59904+a;e[59904+a]=t[234][a]}t[235]="����������������������������������������������������������������蕀蕆蕤蕁蕢蕄蕑蕇蕣蔾蕛蕱蕎蕮蕵蕕蕧蕠薌蕦蕝蕔蕥蕬虣虥虤螛螏螗螓螒螈螁螖螘蝹螇螣螅螐螑螝螄螔螜螚螉褞褦褰褭褮褧褱褢褩褣褯褬褟觱諠����������������������������������諢諲諴諵諝謔諤諟諰諈諞諡諨諿諯諻貑貒貐賵賮賱賰賳赬赮趥趧踳踾踸蹀蹅踶踼踽蹁踰踿躽輶輮輵輲輹輷輴遶遹遻邆郺鄳鄵鄶醓醐醑醍醏錧錞錈錟錆錏鍺錸錼錛錣錒錁鍆錭錎錍鋋錝鋺錥錓鋹鋷錴錂錤鋿錩錹錵錪錔錌�".split("");for(a=0;a!=t[235].length;++a)if(t[235][a].charCodeAt(0)!==65533){r[t[235][a]]=60160+a;e[60160+a]=t[235][a]}t[236]="����������������������������������������������������������������錋鋾錉錀鋻錖閼闍閾閹閺閶閿閵閽隩雔霋霒霐鞙鞗鞔韰韸頵頯頲餤餟餧餩馞駮駬駥駤駰駣駪駩駧骹骿骴骻髶髺髹髷鬳鮀鮅鮇魼魾魻鮂鮓鮒鮐魺鮕����������������������������������魽鮈鴥鴗鴠鴞鴔鴩鴝鴘鴢鴐鴙鴟麈麆麇麮麭黕黖黺鼒鼽儦儥儢儤儠儩勴嚓嚌嚍嚆嚄嚃噾嚂噿嚁壖壔壏壒嬭嬥嬲嬣嬬嬧嬦嬯嬮孻寱寲嶷幬幪徾徻懃憵憼懧懠懥懤懨懞擯擩擣擫擤擨斁斀斶旚曒檍檖檁檥檉檟檛檡檞檇檓檎�".split("");for(a=0;a!=t[236].length;++a)if(t[236][a].charCodeAt(0)!==65533){r[t[236][a]]=60416+a;e[60416+a]=t[236][a]}t[237]="����������������������������������������������������������������檕檃檨檤檑橿檦檚檅檌檒歛殭氉濌澩濴濔濣濜濭濧濦濞濲濝濢濨燡燱燨燲燤燰燢獳獮獯璗璲璫璐璪璭璱璥璯甐甑甒甏疄癃癈癉癇皤盩瞵瞫瞲瞷瞶����������������������������������瞴瞱瞨矰磳磽礂磻磼磲礅磹磾礄禫禨穜穛穖穘穔穚窾竀竁簅簏篲簀篿篻簎篴簋篳簂簉簃簁篸篽簆篰篱簐簊糨縭縼繂縳顈縸縪繉繀繇縩繌縰縻縶繄縺罅罿罾罽翴翲耬膻臄臌臊臅臇膼臩艛艚艜薃薀薏薧薕薠薋薣蕻薤薚薞�".split("");for(a=0;a!=t[237].length;++a)if(t[237][a].charCodeAt(0)!==65533){r[t[237][a]]=60672+a;e[60672+a]=t[237][a]}t[238]="����������������������������������������������������������������蕷蕼薉薡蕺蕸蕗薎薖薆薍薙薝薁薢薂薈薅蕹蕶薘薐薟虨螾螪螭蟅螰螬螹螵螼螮蟉蟃蟂蟌螷螯蟄蟊螴螶螿螸螽蟞螲褵褳褼褾襁襒褷襂覭覯覮觲觳謞����������������������������������謘謖謑謅謋謢謏謒謕謇謍謈謆謜謓謚豏豰豲豱豯貕貔賹赯蹎蹍蹓蹐蹌蹇轃轀邅遾鄸醚醢醛醙醟醡醝醠鎡鎃鎯鍤鍖鍇鍼鍘鍜鍶鍉鍐鍑鍠鍭鎏鍌鍪鍹鍗鍕鍒鍏鍱鍷鍻鍡鍞鍣鍧鎀鍎鍙闇闀闉闃闅閷隮隰隬霠霟霘霝霙鞚鞡鞜�".split("");for(a=0;a!=t[238].length;++a)if(t[238][a].charCodeAt(0)!==65533){r[t[238][a]]=60928+a;e[60928+a]=t[238][a]}t[239]="����������������������������������������������������������������鞞鞝韕韔韱顁顄顊顉顅顃餥餫餬餪餳餲餯餭餱餰馘馣馡騂駺駴駷駹駸駶駻駽駾駼騃骾髾髽鬁髼魈鮚鮨鮞鮛鮦鮡鮥鮤鮆鮢鮠鮯鴳鵁鵧鴶鴮鴯鴱鴸鴰����������������������������������鵅鵂鵃鴾鴷鵀鴽翵鴭麊麉麍麰黈黚黻黿鼤鼣鼢齔龠儱儭儮嚘嚜嚗嚚嚝嚙奰嬼屩屪巀幭幮懘懟懭懮懱懪懰懫懖懩擿攄擽擸攁攃擼斔旛曚曛曘櫅檹檽櫡櫆檺檶檷櫇檴檭歞毉氋瀇瀌瀍瀁瀅瀔瀎濿瀀濻瀦濼濷瀊爁燿燹爃燽獶�".split("");for(a=0;a!=t[239].length;++a)if(t[239][a].charCodeAt(0)!==65533){r[t[239][a]]=61184+a;e[61184+a]=t[239][a]}t[240]="����������������������������������������������������������������璸瓀璵瓁璾璶璻瓂甔甓癜癤癙癐癓癗癚皦皽盬矂瞺磿礌礓礔礉礐礒礑禭禬穟簜簩簙簠簟簭簝簦簨簢簥簰繜繐繖繣繘繢繟繑繠繗繓羵羳翷翸聵臑臒����������������������������������臐艟艞薴藆藀藃藂薳薵薽藇藄薿藋藎藈藅薱薶藒蘤薸薷薾虩蟧蟦蟢蟛蟫蟪蟥蟟蟳蟤蟔蟜蟓蟭蟘蟣螤蟗蟙蠁蟴蟨蟝襓襋襏襌襆襐襑襉謪謧謣謳謰謵譇謯謼謾謱謥謷謦謶謮謤謻謽謺豂豵貙貘貗賾贄贂贀蹜蹢蹠蹗蹖蹞蹥蹧�".split("");for(a=0;a!=t[240].length;++a)if(t[240][a].charCodeAt(0)!==65533){r[t[240][a]]=61440+a;e[61440+a]=t[240][a]}t[241]="����������������������������������������������������������������蹛蹚蹡蹝蹩蹔轆轇轈轋鄨鄺鄻鄾醨醥醧醯醪鎵鎌鎒鎷鎛鎝鎉鎧鎎鎪鎞鎦鎕鎈鎙鎟鎍鎱鎑鎲鎤鎨鎴鎣鎥闒闓闑隳雗雚巂雟雘雝霣霢霥鞬鞮鞨鞫鞤鞪����������������������������������鞢鞥韗韙韖韘韺顐顑顒颸饁餼餺騏騋騉騍騄騑騊騅騇騆髀髜鬈鬄鬅鬩鬵魊魌魋鯇鯆鯃鮿鯁鮵鮸鯓鮶鯄鮹鮽鵜鵓鵏鵊鵛鵋鵙鵖鵌鵗鵒鵔鵟鵘鵚麎麌黟鼁鼀鼖鼥鼫鼪鼩鼨齌齕儴儵劖勷厴嚫嚭嚦嚧嚪嚬壚壝壛夒嬽嬾嬿巃幰�".split("");for(a=0;a!=t[241].length;++a)if(t[241][a].charCodeAt(0)!==65533){r[t[241][a]]=61696+a;e[61696+a]=t[241][a]}t[242]="����������������������������������������������������������������徿懻攇攐攍攉攌攎斄旞旝曞櫧櫠櫌櫑櫙櫋櫟櫜櫐櫫櫏櫍櫞歠殰氌瀙瀧瀠瀖瀫瀡瀢瀣瀩瀗瀤瀜瀪爌爊爇爂爅犥犦犤犣犡瓋瓅璷瓃甖癠矉矊矄矱礝礛����������������������������������礡礜礗礞禰穧穨簳簼簹簬簻糬糪繶繵繸繰繷繯繺繲繴繨罋罊羃羆羷翽翾聸臗臕艤艡艣藫藱藭藙藡藨藚藗藬藲藸藘藟藣藜藑藰藦藯藞藢蠀蟺蠃蟶蟷蠉蠌蠋蠆蟼蠈蟿蠊蠂襢襚襛襗襡襜襘襝襙覈覷覶觶譐譈譊譀譓譖譔譋譕�".split("");for(a=0;a!=t[242].length;++a)if(t[242][a].charCodeAt(0)!==65533){r[t[242][a]]=61952+a;e[61952+a]=t[242][a]}t[243]="����������������������������������������������������������������譑譂譒譗豃豷豶貚贆贇贉趬趪趭趫蹭蹸蹳蹪蹯蹻軂轒轑轏轐轓辴酀鄿醰醭鏞鏇鏏鏂鏚鏐鏹鏬鏌鏙鎩鏦鏊鏔鏮鏣鏕鏄鏎鏀鏒鏧镽闚闛雡霩霫霬霨霦����������������������������������鞳鞷鞶韝韞韟顜顙顝顗颿颽颻颾饈饇饃馦馧騚騕騥騝騤騛騢騠騧騣騞騜騔髂鬋鬊鬎鬌鬷鯪鯫鯠鯞鯤鯦鯢鯰鯔鯗鯬鯜鯙鯥鯕鯡鯚鵷鶁鶊鶄鶈鵱鶀鵸鶆鶋鶌鵽鵫鵴鵵鵰鵩鶅鵳鵻鶂鵯鵹鵿鶇鵨麔麑黀黼鼭齀齁齍齖齗齘匷嚲�".split("");for(a=0;a!=t[243].length;++a)if(t[243][a].charCodeAt(0)!==65533){r[t[243][a]]=62208+a;e[62208+a]=t[243][a]}t[244]="����������������������������������������������������������������嚵嚳壣孅巆巇廮廯忀忁懹攗攖攕攓旟曨曣曤櫳櫰櫪櫨櫹櫱櫮櫯瀼瀵瀯瀷瀴瀱灂瀸瀿瀺瀹灀瀻瀳灁爓爔犨獽獼璺皫皪皾盭矌矎矏矍矲礥礣礧礨礤礩����������������������������������禲穮穬穭竷籉籈籊籇籅糮繻繾纁纀羺翿聹臛臙舋艨艩蘢藿蘁藾蘛蘀藶蘄蘉蘅蘌藽蠙蠐蠑蠗蠓蠖襣襦覹觷譠譪譝譨譣譥譧譭趮躆躈躄轙轖轗轕轘轚邍酃酁醷醵醲醳鐋鐓鏻鐠鐏鐔鏾鐕鐐鐨鐙鐍鏵鐀鏷鐇鐎鐖鐒鏺鐉鏸鐊鏿�".split("");for(a=0;a!=t[244].length;++a)if(t[244][a].charCodeAt(0)!==65533){r[t[244][a]]=62464+a;e[62464+a]=t[244][a]}t[245]="����������������������������������������������������������������鏼鐌鏶鐑鐆闞闠闟霮霯鞹鞻韽韾顠顢顣顟飁飂饐饎饙饌饋饓騲騴騱騬騪騶騩騮騸騭髇髊髆鬐鬒鬑鰋鰈鯷鰅鰒鯸鱀鰇鰎鰆鰗鰔鰉鶟鶙鶤鶝鶒鶘鶐鶛����������������������������������鶠鶔鶜鶪鶗鶡鶚鶢鶨鶞鶣鶿鶩鶖鶦鶧麙麛麚黥黤黧黦鼰鼮齛齠齞齝齙龑儺儹劘劗囃嚽嚾孈孇巋巏廱懽攛欂櫼欃櫸欀灃灄灊灈灉灅灆爝爚爙獾甗癪矐礭礱礯籔籓糲纊纇纈纋纆纍罍羻耰臝蘘蘪蘦蘟蘣蘜蘙蘧蘮蘡蘠蘩蘞蘥�".split("");for(a=0;a!=t[245].length;++a)if(t[245][a].charCodeAt(0)!==65533){r[t[245][a]]=62720+a;e[62720+a]=t[245][a]}t[246]="����������������������������������������������������������������蠩蠝蠛蠠蠤蠜蠫衊襭襩襮襫觺譹譸譅譺譻贐贔趯躎躌轞轛轝酆酄酅醹鐿鐻鐶鐩鐽鐼鐰鐹鐪鐷鐬鑀鐱闥闤闣霵霺鞿韡顤飉飆飀饘饖騹騽驆驄驂驁騺����������������������������������騿髍鬕鬗鬘鬖鬺魒鰫鰝鰜鰬鰣鰨鰩鰤鰡鶷鶶鶼鷁鷇鷊鷏鶾鷅鷃鶻鶵鷎鶹鶺鶬鷈鶱鶭鷌鶳鷍鶲鹺麜黫黮黭鼛鼘鼚鼱齎齥齤龒亹囆囅囋奱孋孌巕巑廲攡攠攦攢欋欈欉氍灕灖灗灒爞爟犩獿瓘瓕瓙瓗癭皭礵禴穰穱籗籜籙籛籚�".split("");for(a=0;a!=t[246].length;++a)if(t[246][a].charCodeAt(0)!==65533){r[t[246][a]]=62976+a;e[62976+a]=t[246][a]}t[247]="����������������������������������������������������������������糴糱纑罏羇臞艫蘴蘵蘳蘬蘲蘶蠬蠨蠦蠪蠥襱覿覾觻譾讄讂讆讅譿贕躕躔躚躒躐躖躗轠轢酇鑌鑐鑊鑋鑏鑇鑅鑈鑉鑆霿韣顪顩飋饔饛驎驓驔驌驏驈驊����������������������������������驉驒驐髐鬙鬫鬻魖魕鱆鱈鰿鱄鰹鰳鱁鰼鰷鰴鰲鰽鰶鷛鷒鷞鷚鷋鷐鷜鷑鷟鷩鷙鷘鷖鷵鷕鷝麶黰鼵鼳鼲齂齫龕龢儽劙壨壧奲孍巘蠯彏戁戃戄攩攥斖曫欑欒欏毊灛灚爢玂玁玃癰矔籧籦纕艬蘺虀蘹蘼蘱蘻蘾蠰蠲蠮蠳襶襴襳觾�".split("");for(a=0;a!=t[247].length;++a)if(t[247][a].charCodeAt(0)!==65533){r[t[247][a]]=63232+a;e[63232+a]=t[247][a]}t[248]="����������������������������������������������������������������讌讎讋讈豅贙躘轤轣醼鑢鑕鑝鑗鑞韄韅頀驖驙鬞鬟鬠鱒鱘鱐鱊鱍鱋鱕鱙鱌鱎鷻鷷鷯鷣鷫鷸鷤鷶鷡鷮鷦鷲鷰鷢鷬鷴鷳鷨鷭黂黐黲黳鼆鼜鼸鼷鼶齃齏����������������������������������齱齰齮齯囓囍孎屭攭曭曮欓灟灡灝灠爣瓛瓥矕礸禷禶籪纗羉艭虃蠸蠷蠵衋讔讕躞躟躠躝醾醽釂鑫鑨鑩雥靆靃靇韇韥驞髕魙鱣鱧鱦鱢鱞鱠鸂鷾鸇鸃鸆鸅鸀鸁鸉鷿鷽鸄麠鼞齆齴齵齶囔攮斸欘欙欗欚灢爦犪矘矙礹籩籫糶纚�".split("");for(a=0;a!=t[248].length;++a)if(t[248][a].charCodeAt(0)!==65533){r[t[248][a]]=63488+a;e[63488+a]=t[248][a]}t[249]="����������������������������������������������������������������纘纛纙臠臡虆虇虈襹襺襼襻觿讘讙躥躤躣鑮鑭鑯鑱鑳靉顲饟鱨鱮鱭鸋鸍鸐鸏鸒鸑麡黵鼉齇齸齻齺齹圞灦籯蠼趲躦釃鑴鑸鑶鑵驠鱴鱳鱱鱵鸔鸓黶鼊����������������������������������龤灨灥糷虪蠾蠽蠿讞貜躩軉靋顳顴飌饡馫驤驦驧鬤鸕鸗齈戇欞爧虌躨钂钀钁驩驨鬮鸙爩虋讟钃鱹麷癵驫鱺鸝灩灪麤齾齉龘碁銹裏墻恒粧嫺╔╦╗╠╬╣╚╩╝╒╤╕╞╪╡╘╧╛╓╥╖╟╫╢╙╨╜║═╭╮╰╯▓�".split("");for(a=0;a!=t[249].length;++a)if(t[249][a].charCodeAt(0)!==65533){r[t[249][a]]=63744+a;e[63744+a]=t[249][a]}return{enc:r,dec:e}}();cptable[1250]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚�„…†‡�‰Š‹ŚŤŽŹ�‘’“”•–—�™š›śťžź ˇ˘Ł¤Ą¦§¨©Ş«¬­®Ż°±˛ł´µ¶·¸ąş»Ľ˝ľżŔÁÂĂÄĹĆÇČÉĘËĚÍÎĎĐŃŇÓÔŐÖ×ŘŮÚŰÜÝŢßŕáâăäĺćçčéęëěíîďđńňóôőö÷řůúűüýţ˙",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[1251]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ЂЃ‚ѓ„…†‡€‰Љ‹ЊЌЋЏђ‘’“”•–—�™љ›њќћџ ЎўЈ¤Ґ¦§Ё©Є«¬­®Ї°±Ііґµ¶·ё№є»јЅѕїАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[1252]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰Š‹Œ�Ž��‘’“”•–—˜™š›œ�žŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[1253]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡�‰�‹�����‘’“”•–—�™�›���� ΅Ά£¤¥¦§¨©�«¬­®―°±²³΄µ¶·ΈΉΊ»Ό½ΎΏΐΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡ�ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοπρςστυφχψωϊϋόύώ�",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[1254]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰Š‹Œ����‘’“”•–—˜™š›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏĞÑÒÓÔÕÖ×ØÙÚÛÜİŞßàáâãäåæçèéêëìíîïğñòóôõö÷øùúûüışÿ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[1255]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰�‹�����‘’“”•–—˜™�›���� ¡¢£₪¥¦§¨©×«¬­®¯°±²³´µ¶·¸¹÷»¼½¾¿ְֱֲֳִֵֶַָֹ�ֻּֽ־ֿ׀ׁׂ׃װױײ׳״�������אבגדהוזחטיךכלםמןנסעףפץצקרשת��‎‏�",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[1256]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€پ‚ƒ„…†‡ˆ‰ٹ‹Œچژڈگ‘’“”•–—ک™ڑ›œ‌‍ں ،¢£¤¥¦§¨©ھ«¬­®¯°±²³´µ¶·¸¹؛»¼½¾؟ہءآأؤإئابةتثجحخدذرزسشصض×طظعغـفقكàلâمنهوçèéêëىيîïًٌٍَôُِ÷ّùْûü‎‏ے",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[1257]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚�„…†‡�‰�‹�¨ˇ¸�‘’“”•–—�™�›�¯˛� �¢£¤�¦§Ø©Ŗ«¬­®Æ°±²³´µ¶·ø¹ŗ»¼½¾æĄĮĀĆÄÅĘĒČÉŹĖĢĶĪĻŠŃŅÓŌÕÖ×ŲŁŚŪÜŻŽßąįāćäåęēčéźėģķīļšńņóōõö÷ųłśūüżž˙",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[1258]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€�‚ƒ„…†‡ˆ‰�‹Œ����‘’“”•–—˜™�›œ��Ÿ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖ×ØÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[1e4]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[10006]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦­ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ�",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[10007]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°¢£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµ∂ЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[10008]=function(){var e=[],r={},t=[],a;t[0]="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€���������������������������������������������������������������������������������������".split("");for(a=0;a!=t[0].length;++a)if(t[0][a].charCodeAt(0)!==65533){r[t[0][a]]=0+a;e[0+a]=t[0][a]}t[161]="����������������������������������������������������������������������������������������������������������������������������������������������������������������� 、。・ˉˇ¨〃々―~�…‘’“”〔〕〈〉《》「」『』〖〗【】±×÷∶∧∨∑∏∪∩∈∷√⊥∥∠⌒⊙∫∮≡≌≈∽∝≠≮≯≤≥∞∵∴♂♀°′″℃$¤¢£‰§№☆★○●◎◇◆□■△▲※→←↑↓〓�".split("");for(a=0;a!=t[161].length;++a)if(t[161][a].charCodeAt(0)!==65533){r[t[161][a]]=41216+a;e[41216+a]=t[161][a]}t[162]="���������������������������������������������������������������������������������������������������������������������������������������������������������������������������������⒈⒉⒊⒋⒌⒍⒎⒏⒐⒑⒒⒓⒔⒕⒖⒗⒘⒙⒚⒛⑴⑵⑶⑷⑸⑹⑺⑻⑼⑽⑾⑿⒀⒁⒂⒃⒄⒅⒆⒇①②③④⑤⑥⑦⑧⑨⑩��㈠㈡㈢㈣㈤㈥㈦㈧㈨㈩��ⅠⅡⅢⅣⅤⅥⅦⅧⅨⅩⅪⅫ���".split("");for(a=0;a!=t[162].length;++a)if(t[162][a].charCodeAt(0)!==65533){r[t[162][a]]=41472+a;e[41472+a]=t[162][a]}t[163]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������!"#¥%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|} ̄�".split("");for(a=0;a!=t[163].length;++a)if(t[163][a].charCodeAt(0)!==65533){r[t[163][a]]=41728+a;e[41728+a]=t[163][a]}t[164]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������ぁあぃいぅうぇえぉおかがきぎくぐけげこごさざしじすずせぜそぞただちぢっつづてでとどなにぬねのはばぱひびぴふぶぷへべぺほぼぽまみむめもゃやゅゆょよらりるれろゎわゐゑをん������������".split("");for(a=0;a!=t[164].length;++a)if(t[164][a].charCodeAt(0)!==65533){r[t[164][a]]=41984+a;e[41984+a]=t[164][a]}t[165]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������ァアィイゥウェエォオカガキギクグケゲコゴサザシジスズセゼソゾタダチヂッツヅテデトドナニヌネノハバパヒビピフブプヘベペホボポマミムメモャヤュユョヨラリルレロヮワヰヱヲンヴヵヶ���������".split("");for(a=0;a!=t[165].length;++a)if(t[165][a].charCodeAt(0)!==65533){r[t[165][a]]=42240+a;e[42240+a]=t[165][a]}t[166]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������ΑΒΓΔΕΖΗΘΙΚΛΜΝΞΟΠΡΣΤΥΦΧΨΩ��������αβγδεζηθικλμνξοπρστυφχψω���������������������������������������".split("");for(a=0;a!=t[166].length;++a)if(t[166][a].charCodeAt(0)!==65533){ -r[t[166][a]]=42496+a;e[42496+a]=t[166][a]}t[167]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмнопрстуфхцчшщъыьэюя��������������".split("");for(a=0;a!=t[167].length;++a)if(t[167][a].charCodeAt(0)!==65533){r[t[167][a]]=42752+a;e[42752+a]=t[167][a]}t[168]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüê����������ㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ����������������������".split("");for(a=0;a!=t[168].length;++a)if(t[168][a].charCodeAt(0)!==65533){r[t[168][a]]=43008+a;e[43008+a]=t[168][a]}t[169]="��������������������������������������������������������������������������������������������������������������������������������������������������������������������─━│┃┄┅┆┇┈┉┊┋┌┍┎┏┐┑┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦┧┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶┷┸┹┺┻┼┽┾┿╀╁╂╃╄╅╆╇╈╉╊╋����������������".split("");for(a=0;a!=t[169].length;++a)if(t[169][a].charCodeAt(0)!==65533){r[t[169][a]]=43264+a;e[43264+a]=t[169][a]}t[176]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������啊阿埃挨哎唉哀皑癌蔼矮艾碍爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌扒叭吧笆八疤巴拔跋靶把耙坝霸罢爸白柏百摆佰败拜稗斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌镑傍谤苞胞包褒剥�".split("");for(a=0;a!=t[176].length;++a)if(t[176][a].charCodeAt(0)!==65533){r[t[176][a]]=45056+a;e[45056+a]=t[176][a]}t[177]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北辈背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼鼻比鄙笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄丙秉饼炳�".split("");for(a=0;a!=t[177].length;++a)if(t[177][a].charCodeAt(0)!==65533){r[t[177][a]]=45312+a;e[45312+a]=t[177][a]}t[178]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐参蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉茬茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖�".split("");for(a=0;a!=t[178].length;++a)if(t[178][a].charCodeAt(0)!==65533){r[t[178][a]]=45568+a;e[45568+a]=t[178][a]}t[179]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������场尝常长偿肠厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻澈郴臣辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承逞骋秤吃痴持匙池迟弛驰耻齿侈尺赤翅斥炽充冲虫崇宠抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚�".split("");for(a=0;a!=t[179].length;++a)if(t[179][a].charCodeAt(0)!==65533){r[t[179][a]]=45824+a;e[45824+a]=t[179][a]}t[180]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������础储矗搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿醇唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛凑粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存寸磋撮搓措挫错搭达答瘩打大呆歹傣戴带殆代贷袋待逮�".split("");for(a=0;a!=t[180].length;++a)if(t[180][a].charCodeAt(0)!==65533){r[t[180][a]]=46080+a;e[46080+a]=t[180][a]}t[181]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������怠耽担丹单郸掸胆旦氮但惮淡诞弹蛋当挡党荡档刀捣蹈倒岛祷导到稻悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉叼雕凋刁掉吊钓调跌爹碟蝶迭谍叠�".split("");for(a=0;a!=t[181].length;++a)if(t[181][a].charCodeAt(0)!==65533){r[t[181][a]]=46336+a;e[46336+a]=t[181][a]}t[182]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������丁盯叮钉顶鼎锭定订丢东冬董懂动栋侗恫冻洞兜抖斗陡豆逗痘都督毒犊独读堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿囤钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄扼遏鄂饿恩而儿耳尔饵洱二�".split("");for(a=0;a!=t[182].length;++a)if(t[182][a].charCodeAt(0)!==65533){r[t[182][a]]=46592+a;e[46592+a]=t[182][a]}t[183]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������贰发罚筏伐乏阀法珐藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳方肪房防妨仿访纺放菲非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汾粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫敷肤孵扶拂辐幅氟符伏俘服�".split("");for(a=0;a!=t[183].length;++a)if(t[183][a].charCodeAt(0)!==65533){r[t[183][a]]=46848+a;e[46848+a]=t[183][a]}t[184]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������浮涪福袱弗甫抚辅俯釜斧脯腑府腐赴副覆赋复傅付阜父腹负富讣附妇缚咐噶嘎该改概钙盖溉干甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港杠篙皋高膏羔糕搞镐稿告哥歌搁戈鸽胳疙割革葛格蛤阁隔铬个各给根跟耕更庚羹�".split("");for(a=0;a!=t[184].length;++a)if(t[184][a].charCodeAt(0)!==65533){r[t[184][a]]=47104+a;e[47104+a]=t[184][a]}t[185]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������埂耿梗工攻功恭龚供躬公宫弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑鼓古蛊骨谷股故顾固雇刮瓜剐寡挂褂乖拐怪棺关官冠观管馆罐惯灌贯光广逛瑰规圭硅归龟闺轨鬼诡癸桂柜跪贵刽辊滚棍锅郭国果裹过哈�".split("");for(a=0;a!=t[185].length;++a)if(t[185][a].charCodeAt(0)!==65533){r[t[185][a]]=47360+a;e[47360+a]=t[185][a]}t[186]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������骸孩海氦亥害骇酣憨邯韩含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗号浩呵喝荷菏核禾和何合盒貉阂河涸赫褐鹤贺嘿黑痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后呼乎忽瑚壶葫胡蝴狐糊湖�".split("");for(a=0;a!=t[186].length;++a)if(t[186][a].charCodeAt(0)!==65533){r[t[186][a]]=47616+a;e[47616+a]=t[186][a]}t[187]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������弧虎唬护互沪户花哗华猾滑画划化话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽会烩汇讳诲绘荤昏婚魂浑混豁活伙火获或惑霍货祸击圾基机畸稽积箕�".split("");for(a=0;a!=t[187].length;++a)if(t[187][a].charCodeAt(0)!==65533){r[t[187][a]]=47872+a;e[47872+a]=t[187][a]}t[188]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲即嫉级挤几脊己蓟技冀季伎祭剂悸济寄寂计记既忌际妓继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺间煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键箭件�".split("");for(a=0;a!=t[188].length;++a)if(t[188][a].charCodeAt(0)!==65533){r[t[188][a]]=48128+a;e[48128+a]=t[188][a]}t[189]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒礁焦胶交郊浇骄娇嚼搅铰矫侥脚狡角饺缴绞剿教酵轿较叫窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借介疥诫届巾筋斤金今津襟紧锦仅谨进靳晋禁近烬浸�".split("");for(a=0;a!=t[189].length;++a)if(t[189][a].charCodeAt(0)!==65533){r[t[189][a]]=48384+a;e[48384+a]=t[189][a]}t[190]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������尽劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟竞净炯窘揪究纠玖韭久灸九酒厩救旧臼舅咎就疚鞠拘狙疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻�".split("");for(a=0;a!=t[190].length;++a)if(t[190][a].charCodeAt(0)!==65533){r[t[190][a]]=48640+a;e[48640+a]=t[190][a]}t[191]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������俊竣浚郡骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷烤靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐孔控抠口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款匡筐狂框矿眶旷况亏盔岿窥葵奎魁傀�".split("");for(a=0;a!=t[191].length;++a)if(t[191][a].charCodeAt(0)!==65533){r[t[191][a]]=48896+a;e[48896+a]=t[191][a]}t[192]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������馈愧溃坤昆捆困括扩廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂滥琅榔狼廊郎朗浪捞劳牢老佬姥酪烙涝勒乐雷镭蕾磊累儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李里鲤礼莉荔吏栗丽厉励砾历利傈例俐�".split("");for(a=0;a!=t[192].length;++a)if(t[192][a].charCodeAt(0)!==65533){r[t[192][a]]=49152+a;e[49152+a]=t[192][a]}t[193]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������痢立粒沥隶力璃哩俩联莲连镰廉怜涟帘敛脸链恋炼练粮凉梁粱良两辆量晾亮谅撩聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞淋凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留刘瘤流柳六龙聋咙笼窿�".split("");for(a=0;a!=t[193].length;++a)if(t[193][a].charCodeAt(0)!==65533){r[t[193][a]]=49408+a;e[49408+a]=t[193][a]}t[194]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳卤虏鲁麓碌露路赂鹿潞禄录陆戮驴吕铝侣旅履屡缕虑氯律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣箩骡裸落洛骆络妈麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒蛮满蔓曼慢漫�".split("");for(a=0;a!=t[194].length;++a)if(t[194][a].charCodeAt(0)!==65533){r[t[194][a]]=49664+a;e[49664+a]=t[194][a]}t[195]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������谩芒茫盲氓忙莽猫茅锚毛矛铆卯茂冒帽貌贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟锰猛梦孟眯醚靡糜迷谜弥米秘觅泌蜜密幂棉眠绵冕免勉娩缅面苗描瞄藐秒渺庙妙蔑灭民抿皿敏悯闽明螟鸣铭名命谬摸�".split("");for(a=0;a!=t[195].length;++a)if(t[195][a].charCodeAt(0)!==65533){r[t[195][a]]=49920+a;e[49920+a]=t[195][a]}t[196]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇牡亩姆母墓暮幕募慕木目睦牧穆拿哪呐钠那娜纳氖乃奶耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿腻逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝宁�".split("");for(a=0;a!=t[196].length;++a)if(t[196][a].charCodeAt(0)!==65533){r[t[196][a]]=50176+a;e[50176+a]=t[196][a]}t[197]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������拧泞牛扭钮纽脓浓农弄奴努怒女暖虐疟挪懦糯诺哦欧鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆砰抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗�".split("");for(a=0;a!=t[197].length;++a)if(t[197][a].charCodeAt(0)!==65533){r[t[197][a]]=50432+a;e[50432+a]=t[197][a]}t[198]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������啤脾疲皮匹痞僻屁譬篇偏片骗飘漂瓢票撇瞥拼频贫品聘乒坪苹萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴圃普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗祈祁骑起岂乞企启契砌器气迄弃汽泣讫掐�".split("");for(a=0;a!=t[198].length;++a)if(t[198][a].charCodeAt(0)!==65533){r[t[198][a]]=50688+a;e[50688+a]=t[198][a]}t[199]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������恰洽牵扦钎铅千迁签仟谦乾黔钱钳前潜遣浅谴堑嵌欠歉枪呛腔羌墙蔷强抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲秦琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘邱球求囚酋泅趋区蛆曲躯屈驱渠�".split("");for(a=0;a!=t[199].length;++a)if(t[199][a].charCodeAt(0)!==65533){r[t[199][a]]=50944+a;e[50944+a]=t[199][a]}t[200]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������取娶龋趣去圈颧权醛泉全痊拳犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让饶扰绕惹热壬仁人忍韧任认刃妊纫扔仍日戎茸蓉荣融熔溶容绒冗揉柔肉茹蠕儒孺如辱乳汝入褥软阮蕊瑞锐闰润若弱撒洒萨腮鳃塞赛三叁�".split("");for(a=0;a!=t[200].length;++a)if(t[200][a].charCodeAt(0)!==65533){r[t[200][a]]=51200+a;e[51200+a]=t[200][a]}t[201]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������伞散桑嗓丧搔骚扫嫂瑟色涩森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉山删煽衫闪陕擅赡膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍奢赊蛇舌舍赦摄射慑涉社设砷申呻伸身深娠绅神沈审婶甚肾慎渗声生甥牲升绳�".split("");for(a=0;a!=t[201].length;++a)if(t[201][a].charCodeAt(0)!==65533){r[t[201][a]]=51456+a;e[51456+a]=t[201][a]}t[202]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������省盛剩胜圣师失狮施湿诗尸虱十石拾时什食蚀实识史矢使屎驶始式示士世柿事拭誓逝势是嗜噬适仕侍释饰氏市恃室视试收手首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑曙署蜀黍鼠属术述树束戍竖墅庶数漱�".split("");for(a=0;a!=t[202].length;++a)if(t[202][a].charCodeAt(0)!==65533){r[t[202][a]]=51712+a;e[51712+a]=t[202][a]}t[203]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������恕刷耍摔衰甩帅栓拴霜双爽谁水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝死肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素速粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋蓑梭唆缩琐索锁所塌他它她塔�".split("");for(a=0;a!=t[203].length;++a)if(t[203][a].charCodeAt(0)!==65533){r[t[203][a]]=51968+a;e[51968+a]=t[203][a]}t[204]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������獭挞蹋踏胎苔抬台泰酞太态汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔踢锑提题蹄啼体替嚏惕涕剃屉天添填田甜恬舔腆挑条迢眺跳贴铁帖厅听烃�".split("");for(a=0;a!=t[204].length;++a)if(t[204][a].charCodeAt(0)!==65533){r[t[204][a]]=52224+a;e[52224+a]=t[204][a]}t[205]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅筒统痛偷投头透凸秃突图徒途涂屠土吐兔湍团推颓腿蜕褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃瓦袜歪外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉网往旺望忘妄威�".split("");for(a=0;a!=t[205].length;++a)if(t[205][a].charCodeAt(0)!==65533){r[t[205][a]]=52480+a;e[52480+a]=t[205][a]}t[206]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未蔚味畏胃喂魏位渭谓尉慰卫瘟温蚊文闻纹吻稳紊问嗡翁瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋无芜梧吾吴毋武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸锡牺�".split("");for(a=0;a!=t[206].length;++a)if(t[206][a].charCodeAt(0)!==65533){r[t[206][a]]=52736+a;e[52736+a]=t[206][a]}t[207]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������稀息希悉膝夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷闲涎弦嫌显险现献县腺馅羡宪陷限线相厢镶香箱襄湘乡翔祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓�".split("");for(a=0;a!=t[207].length;++a)if(t[207][a].charCodeAt(0)!==65533){r[t[207][a]]=52992+a;e[52992+a]=t[207][a]}t[208]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������小孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻谢屑薪芯锌欣辛新忻心信衅星腥猩惺兴刑型形邢行醒幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚嘘须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋玄�".split("");for(a=0;a!=t[208].length;++a)if(t[208][a].charCodeAt(0)!==65533){r[t[208][a]]=53248+a;e[53248+a]=t[208][a]}t[209]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������选癣眩绚靴薛学穴雪血勋熏循旬询寻驯巡殉汛训讯逊迅压押鸦鸭呀丫芽牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩延言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃央鸯秧杨扬佯疡羊洋阳氧仰痒养样漾邀腰妖瑶�".split("");for(a=0;a!=t[209].length;++a)if(t[209][a].charCodeAt(0)!==65533){r[t[209][a]]=53504+a;e[53504+a]=t[209][a]}t[210]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������摇尧遥窑谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液一壹医揖铱依伊衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已乙矣以艺抑易邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异翼翌绎茵荫因殷音阴姻吟银淫寅饮尹引隐�".split("");for(a=0;a!=t[210].length;++a)if(t[210][a].charCodeAt(0)!==65533){r[t[210][a]]=53760+a;e[53760+a]=t[210][a]}t[211]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������印英樱婴鹰应缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳涌永恿勇用幽优悠忧尤由邮铀犹油游酉有友右佑釉诱又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱雨与屿禹宇语羽玉域芋郁吁遇喻峪御愈欲狱育誉�".split("");for(a=0;a!=t[211].length;++a)if(t[211][a].charCodeAt(0)!==65533){r[t[211][a]]=54016+a;e[54016+a]=t[211][a]}t[212]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������浴寓裕预豫驭鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院曰约越跃钥岳粤月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉灾宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶燥责择则泽贼怎增憎曾赠扎喳渣札轧�".split("");for(a=0;a!=t[212].length;++a)if(t[212][a].charCodeAt(0)!==65533){r[t[212][a]]=54272+a;e[54272+a]=t[212][a]}t[213]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������铡闸眨栅榨咋乍炸诈摘斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章彰漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折哲蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣睁征狰争怔整拯正政�".split("");for(a=0;a!=t[213].length;++a)if(t[213][a].charCodeAt(0)!==65533){r[t[213][a]]=54528+a;e[54528+a]=t[213][a]}t[214]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������帧症郑证芝枝支吱蜘知肢脂汁之织职直植殖执值侄址指止趾只旨纸志挚掷至致置帜峙制智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众舟周州洲诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐竹烛煮拄瞩嘱主著柱助蛀贮铸筑�".split("");for(a=0;a!=t[214].length;++a)if(t[214][a].charCodeAt(0)!==65533){r[t[214][a]]=54784+a;e[54784+a]=t[214][a]}t[215]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������住注祝驻抓爪拽专砖转撰赚篆桩庄装妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹咨资姿滋淄孜紫仔籽滓子自渍字鬃棕踪宗综总纵邹走奏揍租足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做作坐座������".split("");for(a=0;a!=t[215].length;++a)if(t[215][a].charCodeAt(0)!==65533){r[t[215][a]]=55040+a;e[55040+a]=t[215][a]}t[216]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������亍丌兀丐廿卅丕亘丞鬲孬噩丨禺丿匕乇夭爻卮氐囟胤馗毓睾鼗丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣厥厮靥赝匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜蒯剽劂劁劐劓冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉伫佞佧攸佚佝�".split("");for(a=0;a!=t[216].length;++a)if(t[216][a].charCodeAt(0)!==65533){r[t[216][a]]=55296+a;e[55296+a]=t[216][a]}t[217]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪俅俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎龠汆籴兮巽黉馘冁夔勹匍訇匐凫夙兕亠兖亳衮袤亵脔裒禀嬴蠃羸冫冱冽冼�".split("");for(a=0;a!=t[217].length;++a)if(t[217][a].charCodeAt(0)!==65533){r[t[217][a]]=55552+a;e[55552+a]=t[217][a]}t[218]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������凇冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕谖谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶卩卺阝阢阡阱阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺�".split("");for(a=0;a!=t[218].length;++a)if(t[218][a].charCodeAt(0)!==65533){r[t[218][a]]=55808+a;e[55808+a]=t[218][a]}t[219]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������邸邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃酆刍奂劢劬劭劾哿勐勖勰叟燮矍廴凵凼鬯厶弁畚巯坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝�".split("");for(a=0;a!=t[219].length;++a)if(t[219][a].charCodeAt(0)!==65533){r[t[219][a]]=56064+a;e[56064+a]=t[219][a]}t[220]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������堋堍埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥�".split("");for(a=0;a!=t[220].length;++a)if(t[220][a].charCodeAt(0)!==65533){r[t[220][a]]=56320+a;e[56320+a]=t[220][a]}t[221]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������荨茛荩荬荪荭荮莰荸莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺�".split("");for(a=0;a!=t[221].length;++a)if(t[221][a].charCodeAt(0)!==65533){r[t[221][a]]=56576+a;e[56576+a]=t[221][a]}t[222]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼廾弈夼奁耷奕奚奘匏尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌搦搡摞撄摭撖�".split("");for(a=0;a!=t[222].length;++a)if(t[222][a].charCodeAt(0)!==65533){r[t[222][a]]=56832+a;e[56832+a]=t[222][a]}t[223]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������摺撷撸撙撺擀擐擗擤擢攉攥攮弋忒甙弑卟叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐唼�".split("");for(a=0;a!=t[223].length;++a)if(t[223][a].charCodeAt(0)!==65533){r[t[223][a]]=57088+a;e[57088+a]=t[223][a]}t[224]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾喔喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅嚓嚯囔囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼�".split("");for(a=0;a!=t[224].length;++a)if(t[224][a].charCodeAt(0)!==65533){r[t[224][a]]=57344+a;e[57344+a]=t[224][a]}t[225]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������帷幄幔幛幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂嶙嶝豳嶷巅彳彷徂徇徉後徕徙徜徨徭徵徼衢彡犭犰犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺�".split("");for(a=0;a!=t[225].length;++a)if(t[225][a].charCodeAt(0)!==65533){r[t[225][a]]=57600+a;e[57600+a]=t[225][a]}t[226]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������狻猗猓猡猊猞猝猕猢猹猥猬猸猱獐獍獗獠獬獯獾舛夥飧夤夂饣饧饨饩饪饫饬饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庳赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵怦怛怏怍怩怫怊怿怡恸恹恻恺恂�".split("");for(a=0;a!=t[226].length;++a)if(t[226][a].charCodeAt(0)!==65533){r[t[226][a]]=57856+a;e[57856+a]=t[226][a]}t[227]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������恪恽悖悚悭悝悃悒悌悛惬悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬爿戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲泠泖泺泫泮沱泓泯泾�".split("");for(a=0;a!=t[227].length;++a)if(t[227][a].charCodeAt(0)!==65533){r[t[227][a]]=58112+a;e[58112+a]=t[227][a]}t[228]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒浔洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖涫渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻溷滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲潼潺濑�".split("");for(a=0;a!=t[228].length;++a)if(t[228][a].charCodeAt(0)!==65533){r[t[228][a]]=58368+a;e[58368+a]=t[228][a]}t[229]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞宀宄宕宓宥宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦逑逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋彐彗彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻屮妁妃妍妩妪妣�".split("");for(a=0;a!=t[229].length;++a)if(t[229][a].charCodeAt(0)!==65533){r[t[229][a]]=58624+a;e[58624+a]=t[229][a]}t[230]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������妗姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐骒骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩�".split("");for(a=0;a!=t[230].length;++a)if(t[230][a].charCodeAt(0)!==65533){r[t[230][a]]=58880+a;e[58880+a]=t[230][a]}t[231]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������纭纰纾绀绁绂绉绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈缋缌缏缑缒缗缙缜缛缟缡缢缣缤缥缦缧缪缫缬缭缯缰缱缲缳缵幺畿巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬�".split("");for(a=0;a!=t[231].length;++a)if(t[231][a].charCodeAt(0)!==65533){r[t[231][a]]=59136+a;e[59136+a]=t[231][a]}t[232]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴桷梓桫棂楮棼椟椠棹�".split("");for(a=0;a!=t[232].length;++a)if(t[232][a].charCodeAt(0)!==65533){r[t[232][a]]=59392+a;e[59392+a]=t[232][a]}t[233]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘楸椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁殂殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂辄辇辋�".split("");for(a=0;a!=t[233].length;++a)if(t[233][a].charCodeAt(0)!==65533){r[t[233][a]]=59648+a;e[59648+a]=t[233][a]}t[234]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰�".split("");for(a=0;a!=t[234].length;++a)if(t[234][a].charCodeAt(0)!==65533){r[t[234][a]]=59904+a;e[59904+a]=t[234][a]}t[235]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������搿擘耄毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖爰虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐胝胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻�".split("");for(a=0;a!=t[235].length;++a)if(t[235][a].charCodeAt(0)!==65533){r[t[235][a]]=60160+a;e[60160+a]=t[235][a]}t[236]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������臁膦欤欷欹歃歆歙飑飒飓飕飙飚殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨熠燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢祗祠祯祧祺禅禊禚禧禳忑忐�".split("");for(a=0;a!=t[236].length;++a)if(t[236][a].charCodeAt(0)!==65533){r[t[236][a]]=60416+a;e[60416+a]=t[236][a]}t[237]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉磬磲礅磴礓礤礞礴龛黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵眸睐睑睇睃睚睨�".split("");for(a=0;a!=t[237].length;++a)if(t[237][a].charCodeAt(0)!==65533){r[t[237][a]]=60672+a;e[60672+a]=t[237][a]}t[238]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶钷钸钹钺钼钽钿铄铈铉铊铋铌铍铎铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪�".split("");for(a=0;a!=t[238].length;++a)if(t[238][a].charCodeAt(0)!==65533){r[t[238][a]]=60928+a;e[60928+a]=t[238][a]}t[239]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒锓锔锕锖锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤镥镦镧镨镩镪镫镬镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔�".split("");for(a=0;a!=t[239].length;++a)if(t[239][a].charCodeAt(0)!==65533){r[t[239][a]]=61184+a;e[61184+a]=t[239][a]}t[240]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������稹稷穑黏馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨鸩鸪鸫鸬鸲鸱鸶鸸鸷鸹鸺鸾鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦鹧鹨鹩鹪鹫鹬鹱鹭鹳疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙�".split("");for(a=0;a!=t[240].length;++a)if(t[240][a].charCodeAt(0)!==65533){r[t[240][a]]=61440+a;e[61440+a]=t[240][a]}t[241]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴褫褶襁襦襻疋胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨耱耋耵聃聆聍聒聩聱覃顸颀颃�".split("");for(a=0;a!=t[241].length;++a)if(t[241][a].charCodeAt(0)!==65533){r[t[241][a]]=61696+a;e[61696+a]=t[241][a]}t[242]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒�".split("");for(a=0;a!=t[242].length;++a)if(t[242][a].charCodeAt(0)!==65533){r[t[242][a]]=61952+a;e[61952+a]=t[242][a]}t[243]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缶罂罄罅舐竺竽笈笃笄笕笊笫笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖簋�".split("");for(a=0;a!=t[243].length;++a)if(t[243][a].charCodeAt(0)!==65533){r[t[243][a]]=62208+a;e[62208+a]=t[243][a]}t[244]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞粢粲粼粽糁糇糌糍糈糅糗糨艮暨羿翎翕翥翡翦翩翮翳糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤�".split("");for(a=0;a!=t[244].length;++a)if(t[244][a].charCodeAt(0)!==65533){r[t[244][a]]=62464+a;e[62464+a]=t[244][a]}t[245]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������酢酡酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴躅躏躔躐躜躞豸貂貊貅貘貔斛觖觞觚觜�".split("");for(a=0;a!=t[245].length;++a)if(t[245][a].charCodeAt(0)!==65533){r[t[245][a]]=62720+a;e[62720+a]=t[245][a]}t[246]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������觥觫觯訾謦靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅龆龇龈龉龊龌黾鼋鼍隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞鲟鲠鲡鲢鲣鲥鲦鲧鲨鲩鲫鲭鲮鲰鲱鲲鲳鲴鲵鲶鲷鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋�".split("");for(a=0;a!=t[246].length;++a)if(t[246][a].charCodeAt(0)!==65533){r[t[246][a]]=62976+a;e[62976+a]=t[246][a]}t[247]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������鳌鳍鳎鳏鳐鳓鳔鳕鳗鳘鳙鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔髟髡髦髯髫髻髭髹鬈鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯鼢鼬鼯鼹鼷鼽鼾齄�".split("");for(a=0;a!=t[247].length;++a)if(t[247][a].charCodeAt(0)!==65533){r[t[247][a]]=63232+a;e[63232+a]=t[247][a]}return{enc:r,dec:e}}();cptable[10029]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[10079]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüÝ°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[10081]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙ�ˆ˜¯˘˙˚¸˝˛ˇ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[28591]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();if(typeof module!=="undefined"&&module.exports&&typeof DO_NOT_EXPORT_CODEPAGE==="undefined")module.exports=cptable;(function(e,r){"use strict";if(typeof cptable==="undefined"){if(typeof require!=="undefined"){var t=cptable;if(typeof module!=="undefined"&&module.exports&&typeof DO_NOT_EXPORT_CODEPAGE==="undefined")module.exports=r(t);else e.cptable=r(t)}else throw new Error("cptable not found")}else cptable=r(cptable)})(this,function(e){"use strict";var r={1200:"utf16le",1201:"utf16be",12000:"utf32le",12001:"utf32be",16969:"utf64le",20127:"ascii",65000:"utf7",65001:"utf8"};var t=[874,1250,1251,1252,1253,1254,1255,1256,1e4];var a=[932,936,949,950];var n=[65001];var i={};var s={};var f={};var o={};var l=function D(e){return String.fromCharCode(e)};var c=function P(e){return e.charCodeAt(0)};var h=typeof Buffer!=="undefined";var u=function(){};if(h){var d=!Buffer.from;if(!d)try{Buffer.from("foo","utf8")}catch(p){d=true}u=d?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer);if(!Buffer.allocUnsafe)Buffer.allocUnsafe=function(e){return new Buffer(e)};var v=1024,m=Buffer.allocUnsafe(v);var g=function L(e){var r=Buffer.allocUnsafe(65536);for(var t=0;t<65536;++t)r[t]=0;var a=Object.keys(e),n=a.length;for(var i=0,s=a[i];i>10&1023)];n[s++]=t[56320+(o&1023)]}}}n=n.slice(0,s)}else{n=Buffer.allocUnsafe(a);for(i=0;i>8}return function f(e){var r=e.length,t=0,n=0;if(2*r>v){v=2*r;m=Buffer.allocUnsafe(v)}if(Buffer.isBuffer(e)){for(t=0;t>8}return function l(e,r){var t=e.length,n=Buffer.allocUnsafe(2*t),i=0,s=0,f=0,o=0,l=0;if(typeof e==="string"){for(i=o=0;i0)n[o++]=a[s]}n=n.slice(0,o)}else if(Buffer.isBuffer(e)){for(i=o=0;i0)n[o++]=a[s]}else{f=s-65536;s=2*(55296+(f>>10&1023));n[o++]=a[s+1]||a[s];if(a[s+1]>0)n[o++]=a[s];s=2*(56320+(f&1023));n[o++]=a[s+1]||a[s];if(a[s+1]>0)n[o++]=a[s]}}n=n.slice(0,o)}else{for(i=o=0;i0)n[o++]=a[s]}}if(!r||r==="buf")return n;if(r!=="arr")return n.toString("binary");return[].slice.call(n)}};var A=function W(r){var t=e[r].dec;var a=Buffer.allocUnsafe(131072),n=0,i,s=0,f=0,o=0;for(o=0;o<65536;++o){a[2*o]=255;a[2*o+1]=253}for(n=0;n>8}return function l(e){var r=e.length,t=Buffer.allocUnsafe(2*r),n=0,i=0,s=0;if(Buffer.isBuffer(e)){for(n=0;nv){v=4*r;m=Buffer.allocUnsafe(v)}var n=0;if(r>=3&&e[0]==239)if(e[1]==187&&e[2]==191)n=3;for(var i=1,s=0,f=0;n>8}else{t-=65536;a=55296+(t>>10&1023);t=56320+(t&1023);m[s++]=a&255;m[s++]=a>>>8;m[s++]=t&255;m[s++]=t>>>8&255}}return m.slice(0,s).toString("ucs2")};s[65001]=function z(e,r){if(h&&Buffer.isBuffer(e)){if(!r||r==="buf")return e;if(r!=="arr")return e.toString("binary");return[].slice.call(e)}var t=e.length,a=0,n=0,i=0;var s=typeof e==="string";if(4*t>v){v=4*t;m=Buffer.allocUnsafe(v)}for(var f=0;f>6);m[i++]=128+(a&63)}else if(a>=55296&&a<=57343){a-=55296;++f;n=(s?e.charCodeAt(f):e[f].charCodeAt(0))-56320+(a<<10);m[i++]=240+(n>>>18&7);m[i++]=144+(n>>>12&63);m[i++]=128+(n>>>6&63);m[i++]=128+(n&63)}else{m[i++]=224+(a>>12);m[i++]=128+(a>>6&63);m[i++]=128+(a&63)}}if(!r||r==="buf")return m.slice(0,i);if(r!=="arr")return m.slice(0,i).toString("binary");return[].slice.call(m,0,i)}}var T=function V(){if(h){if(f[t[0]])return;var r=0,l=0;for(r=0;r255){s[d]=f>>8;s[++d]=f&255}else s[d]=f&255}else if(g=r[t])switch(g){case"utf8":if(h&&b){s=u(a,g);d=s.length;break}for(c=0;c>6);s[++d]=128+(f&63)}else if(f>=55296&&f<=57343){f-=55296;p=(b?a.charCodeAt(++c):a[++c].charCodeAt(0))-56320+(f<<10);s[d]=240+(p>>>18&7);s[++d]=144+(p>>>12&63);s[++d]=128+(p>>>6&63);s[++d]=128+(p&63)}else{s[d]=224+(f>>12);s[++d]=128+(f>>6&63);s[++d]=128+(f&63)}}break;case"ascii":if(h&&typeof a==="string"){s=u(a,g);d=s.length;break}for(c=0;c>8}break;case"utf16be":for(c=0;c>8;s[d++]=f&255}break;case"utf32le":for(c=0;c=55296&&f<=57343)f=65536+(f-55296<<10)+(a[++c].charCodeAt(0)-56320);s[d++]=f&255;f>>=8;s[d++]=f&255;f>>=8;s[d++]=f&255;f>>=8;s[d++]=f&255}break;case"utf32be":for(c=0;c=55296&&f<=57343)f=65536+(f-55296<<10)+(a[++c].charCodeAt(0)-56320);s[d+3]=f&255;f>>=8;s[d+2]=f&255;f>>=8;s[d+1]=f&255;f>>=8;s[d]=f&255;d+=4}break;case"utf7":for(c=0;c-1){s[d++]=w.charCodeAt(0);continue}var k=j(1201,w);s[d++]=43;s[d++]=_.charCodeAt(k[0]>>2);s[d++]=_.charCodeAt(((k[0]&3)<<4)+((k[1]||0)>>4));s[d++]=_.charCodeAt(((k[1]&15)<<2)+((k[2]||0)>>6));s[d++]=45}break;default:throw new Error("Unsupported magic: "+t+" "+r[t]);}else throw new Error("Unrecognized CP: "+t);s=s.slice(0,d);if(!h)return n=="str"?s.map(l).join(""):s;if(!n||n==="buf")return s;if(n!=="arr")return s.toString("binary");return[].slice.call(s)};var I=function X(t,a){var n;if(n=f[t])return n(a);if(typeof a==="string")return X(t,a.split("").map(c));var i=a.length,s=new Array(i),o="",l=0,u=0,d=1,p=0,v=0;var m=e[t],g,b="";if(m&&(g=m.dec)){for(u=0;u=3&&a[0]==239)if(a[1]==187&&a[2]==191)u=3;for(;u>10&1023);l=56320+(l&1023);s[p++]=String.fromCharCode(v);s[p++]=String.fromCharCode(l)}}break;case"ascii":if(h&&Buffer.isBuffer(a))return a.toString(b);for(u=0;u=2&&a[0]==255)if(a[1]==254)u=2;if(h&&Buffer.isBuffer(a))return a.toString(b);d=2;for(;u+1=2&&a[0]==254)if(a[1]==255)u=2;d=2;for(;u+1=4&&a[0]==255)if(a[1]==254&&a[2]===0&&a[3]===0)u=4;d=4;for(;u65535){l-=65536;s[p++]=String.fromCharCode(55296+(l>>10&1023));s[p++]=String.fromCharCode(56320+(l&1023))}else s[p++]=String.fromCharCode(l)}break;case"utf32be":if(i>=4&&a[3]==255)if(a[2]==254&&a[1]===0&&a[0]===0)u=4;d=4;for(;u65535){l-=65536;s[p++]=String.fromCharCode(55296+(l>>10&1023));s[p++]=String.fromCharCode(56320+(l&1023))}else s[p++]=String.fromCharCode(l)}break;case"utf7":if(i>=4&&a[0]==43&&a[1]==47&&a[2]==118){if(i>=5&&a[3]==56&&a[4]==45)u=5;else if(a[3]==56||a[3]==57||a[3]==43||a[3]==47)u=4}for(;u>4;k.push(T);x=_.indexOf(String.fromCharCode(a[u+R++]));if(x===-1)break;E=(S&15)<<4|x>>2;k.push(E);O=_.indexOf(String.fromCharCode(a[u+R++]));if(O===-1)break;y=(x&3)<<6|O;if(O<64)k.push(y)}A=X(1201,k);for(R=0;R>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t)+(e.charCodeAt(2*t+1)<<8));return r.join("")}function u(e){var r=[];for(var t=0;t>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t+1)+(e.charCodeAt(2*t)<<8));return r.join("")}var d=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 u(e.slice(2));if(r==65279)return e.slice(1);return e};var p=function _k(e){return String.fromCharCode(e)};var v=function xk(e){return String.fromCharCode(e)};function m(e){a=e;o=function(e){r=e;s(e)};d=function(e){if(e.charCodeAt(0)===255&&e.charCodeAt(1)===254){return a.utils.decode(1200,c(e.slice(2)))}return e};p=function n(e){if(r===1200)return String.fromCharCode(e);return a.utils.decode(r,[e&255,e>>8])[0]};v=function i(e){return a.utils.decode(t,[e])[0]};na()}var g=null;var b=true;var w="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function k(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,o=0;for(var l=0;l>2;a=e.charCodeAt(l++);s=(t&3)<<4|a>>4;n=e.charCodeAt(l++);f=(a&15)<<2|n>>6;o=n&63;if(isNaN(a)){f=o=64}else if(isNaN(n)){o=64}r+=w.charAt(i)+w.charAt(s)+w.charAt(f)+w.charAt(o)}return r}function A(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,o=0;for(var l=0;l255)t=95;i=t>>2;a=e.charCodeAt(l++);if(a>255)a=95;s=(t&3)<<4|a>>4;n=e.charCodeAt(l++);if(n>255)n=95;f=(a&15)<<2|n>>6;o=n&63;if(isNaN(a)){f=o=64}else if(isNaN(n)){o=64}r+=w.charAt(i)+w.charAt(s)+w.charAt(f)+w.charAt(o)}return r}function T(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,o=0;e=e.replace(/^data:([^\/]+\/[^\/]+)?;base64\,/,"").replace(/[^\w\+\/\=]/g,"");for(var l=0;l>4;r+=String.fromCharCode(t);f=w.indexOf(e.charAt(l++));a=(s&15)<<4|f>>2;if(f!==64){r+=String.fromCharCode(a)}o=w.indexOf(e.charAt(l++));n=(f&3)<<6|o;if(o!==64){r+=String.fromCharCode(n)}}return r}var E=function(){return typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node}();var y=function(){if(typeof Buffer!=="undefined"){var e=!Buffer.from;if(!e)try{Buffer.from("foo","utf8")}catch(r){e=true}return e?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer)}return function(){}}();var C=function(){if(typeof Buffer==="undefined")return false;var e=y([65,0]);if(!e)return false;var r=e.toString("utf16le");return r.length==1}();function S(e){if(E)return Buffer.alloc?Buffer.alloc(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function _(e){if(E)return Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var x=function Ok(e){if(E)return y(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function O(e){if(typeof ArrayBuffer==="undefined")return x(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 R(e){if(Array.isArray(e))return e.map(function(e){return String.fromCharCode(e)}).join("");var r=[];for(var t=0;t>6&31;n[t++]=128|s&63}else if(s>=55296&&s<57344){s=(s&1023)+64;var f=e.charCodeAt(++i)&1023;n[t++]=240|s>>8&7;n[t++]=128|s>>2&63;n[t++]=128|f>>6&15|(s&3)<<4;n[t++]=128|f&63}else{n[t++]=224|s>>12&15;n[t++]=128|s>>6&63;n[t++]=128|s&63}if(t>a){r.push(n.slice(0,t));t=0;n=S(65535);a=65530}}r.push(n.slice(0,t));return F(r)}var P=/\u0000/g,L=/[\u0001-\u0006]/g;function M(e){var r="",t=e.length-1;while(t>=0)r+=e.charAt(t--);return r}function U(e,r){var t=""+e;return t.length>=r?t:yr("0",r-t.length)+t}function B(e,r){var t=""+e;return t.length>=r?t:yr(" ",r-t.length)+t}function W(e,r){var t=""+e;return t.length>=r?t:t+yr(" ",r-t.length)}function H(e,r){var t=""+Math.round(e);return t.length>=r?t:yr("0",r-t.length)+t}function z(e,r){var t=""+e;return t.length>=r?t:yr("0",r-t.length)+t}var V=Math.pow(2,32);function G(e,r){if(e>V||e<-V)return H(e,r);var t=Math.round(e);return z(t,r)}function j(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)===114&&(e.charCodeAt(r+5)|32)===97&&(e.charCodeAt(r+6)|32)===108}var X=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var Y=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function K(e){if(!e)e={};e[0]="General";e[1]="0";e[2]="0.00";e[3]="#,##0";e[4]="#,##0.00";e[9]="0%";e[10]="0.00%";e[11]="0.00E+00";e[12]="# ?/?";e[13]="# ??/??";e[14]="m/d/yy";e[15]="d-mmm-yy";e[16]="d-mmm";e[17]="mmm-yy";e[18]="h:mm AM/PM";e[19]="h:mm:ss AM/PM";e[20]="h:mm";e[21]="h:mm:ss";e[22]="m/d/yy h:mm";e[37]="#,##0 ;(#,##0)";e[38]="#,##0 ;[Red](#,##0)";e[39]="#,##0.00;(#,##0.00)";e[40]="#,##0.00;[Red](#,##0.00)";e[45]="mm:ss";e[46]="[h]:mm:ss";e[47]="mmss.0";e[48]="##0.0E+0";e[49]="@";e[56]='"上午/下午 "hh"時"mm"分"ss"秒 "';return e}var Z={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "'};var J={5:37,6:38,7:39,8:40,23:0,24:0,25:0,26:0,27:14,28:14,29:14,30:14,31:14,50:14,51:14,52:14,53:14,54:14,55:14,56:14,57:14,58:14,59:1,60:2,61:3,62:4,67:9,68:10,69:12,70:13,71:14,72:14,73:15,74:16,75:17,76:20,77:21,78:22,79:45,80:46,81:47,82:0};var q={5:'"$"#,##0_);\\("$"#,##0\\)',63:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',41:'_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)'};function Q(e,r,t){var a=e<0?-1:1;var n=e*a;var i=0,s=1,f=0;var o=1,l=0,c=0;var h=Math.floor(n);while(lr){if(l>r){c=o;f=i}else{c=l;f=s}}if(!t)return[0,a*f,c];var u=Math.floor(a*f/c);return[u,a*f-u*c,c]}function ee(e,r,t){if(e>2958465||e<0)return null;var a=e|0,n=Math.floor(86400*(e-a)),i=0;var s=[];var f={D:a,T:n,u:86400*(e-a)-n,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(f.u)<1e-6)f.u=0;if(r&&r.date1904)a+=1462;if(f.u>.9999){f.u=0;if(++n==86400){f.T=n=0;++a;++f.D}}if(a===60){s=t?[1317,10,29]:[1900,2,29];i=3}else if(a===0){s=t?[1317,8,29]:[1900,1,0];i=6}else{if(a>60)--a;var o=new Date(1900,0,1);o.setDate(o.getDate()+a-1);s=[o.getFullYear(),o.getMonth()+1,o.getDate()];i=o.getDay();if(a<60)i=(i+6)%7;if(t)i=he(o,s)}f.y=s[0];f.m=s[1];f.d=s[2];f.S=n%60;n=Math.floor(n/60);f.M=n%60;n=Math.floor(n/60);f.H=n;f.q=i;return f}var re=new Date(1899,11,31,0,0,0);var te=re.getTime();var ae=new Date(1900,2,1,0,0,0);function ne(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=ae)t+=24*60*60*1e3;return(t-(te+(e.getTimezoneOffset()-re.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function ie(e){return e.indexOf(".")==-1?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function se(e){if(e.indexOf("E")==-1)return e;return e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}function fe(e){var r=e<0?12:11;var t=ie(e.toFixed(12));if(t.length<=r)return t;t=e.toPrecision(10);if(t.length<=r)return t;return e.toExponential(5)}function oe(e){var r=ie(e.toFixed(11));return r.length>(e<0?12:11)||r==="0"||r==="-0"?e.toPrecision(6):r}function le(e){var r=Math.floor(Math.log(Math.abs(e))*Math.LOG10E),t;if(r>=-4&&r<=-1)t=e.toPrecision(10+r);else if(Math.abs(r)<=9)t=fe(e);else if(r===10)t=e.toFixed(10).substr(0,12);else t=oe(e);return ie(se(t.toUpperCase()))}function ce(e,r){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):le(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return ze(14,ne(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}function he(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function ue(e,r,t,a){var n="",i=0,s=0,f=t.y,o,l=0;switch(e){case 98:f=t.y+543;case 121:switch(r.length){case 1:;case 2:o=f%100;l=2;break;default:o=f%1e4;l=4;break;}break;case 109:switch(r.length){case 1:;case 2:o=t.m;l=r.length;break;case 3:return Y[t.m-1][1];case 5:return Y[t.m-1][0];default:return Y[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:o=t.d;l=r.length;break;case 3:return X[t.q][0];default:return X[t.q][1];}break;case 104:switch(r.length){case 1:;case 2:o=1+(t.H+11)%12;l=r.length;break;default:throw"bad hour format: "+r;}break;case 72:switch(r.length){case 1:;case 2:o=t.H;l=r.length;break;default:throw"bad hour format: "+r;}break;case 77:switch(r.length){case 1:;case 2:o=t.M;l=r.length;break;default:throw"bad minute format: "+r;}break;case 115:if(r!="s"&&r!="ss"&&r!=".0"&&r!=".00"&&r!=".000")throw"bad second format: "+r;if(t.u===0&&(r=="s"||r=="ss"))return U(t.S,r.length);if(a>=2)s=a===3?1e3:100;else s=a===1?10:1;i=Math.round(s*(t.S+t.u));if(i>=60*s)i=0;if(r==="s")return i===0?"0":""+i/s;n=U(i,2+a);if(r==="ss")return n.substr(0,2);return"."+n.substr(2,r.length-1);case 90:switch(r){case"[h]":;case"[hh]":o=t.D*24+t.H;break;case"[m]":;case"[mm]":o=(t.D*24+t.H)*60+t.M;break;case"[s]":;case"[ss]":o=((t.D*24+t.H)*60+t.M)*60+Math.round(t.S+t.u);break;default:throw"bad abstime format: "+r;}l=r.length===3?1:2;break;case 101:o=f;l=1;break;}var c=l>0?U(o,l):"";return c}function de(e){var r=3;if(e.length<=r)return e;var t=e.length%r,a=e.substr(0,t);for(;t!=e.length;t+=r)a+=(a.length>0?",":"")+e.substr(t,r);return a}var pe=/%/g;function ve(e,r,t){var a=r.replace(pe,""),n=r.length-a.length;return De(e,a,t*Math.pow(10,2*n))+yr("%",n)}function me(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return De(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function ge(e,r){var t;var a=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\+0$/)){if(r==0)return"0.0E+0";else if(r<0)return"-"+ge(e,-r);var n=e.indexOf(".");if(n===-1)n=e.indexOf("E");var i=Math.floor(Math.log(r)*Math.LOG10E)%n;if(i<0)i+=n;t=(r/Math.pow(10,i)).toPrecision(a+1+(n+i)%n);if(t.indexOf("e")===-1){var s=Math.floor(Math.log(r)*Math.LOG10E);if(t.indexOf(".")===-1)t=t.charAt(0)+"."+t.substr(1)+"E+"+(s-t.length+i);else t+="E+"+(s-i);while(t.substr(0,2)==="0."){t=t.charAt(0)+t.substr(2,n)+"."+t.substr(2+n);t=t.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}t=t.replace(/\+-/,"-")}t=t.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function(e,r,t,a){return r+t+a.substr(0,(n+i)%n)+"."+a.substr(i)+"E"})}else t=r.toExponential(a);if(e.match(/E\+00$/)&&t.match(/e[+-]\d$/))t=t.substr(0,t.length-1)+"0"+t.charAt(t.length-1);if(e.match(/E\-/)&&t.match(/e\+/))t=t.replace(/e\+/,"e");return t.replace("e","E")}var be=/# (\?+)( ?)\/( ?)(\d+)/;function we(e,r,t){var a=parseInt(e[4],10),n=Math.round(r*a),i=Math.floor(n/a);var s=n-i*a,f=a;return t+(i===0?"":""+i)+" "+(s===0?yr(" ",e[1].length+1+e[4].length):B(s,e[1].length)+e[2]+"/"+e[3]+U(f,e[4].length))}function ke(e,r,t){return t+(r===0?"":""+r)+yr(" ",e[1].length+2+e[4].length)}var Ae=/^#*0*\.([0#]+)/;var Te=/\).*[0#]/;var Ee=/\(###\) ###\\?-####/;function ye(e){var r="",t;for(var a=0;a!=e.length;++a)switch(t=e.charCodeAt(a)){case 35:break;case 63:r+=" ";break;case 48:r+="0";break;default:r+=String.fromCharCode(t);}return r}function Ce(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function Se(e,r){var t=e-Math.floor(e),a=Math.pow(10,r);if(r<(""+Math.round(t*a)).length)return 0;return Math.round(t*a)}function _e(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function xe(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function Oe(e,r,t){if(e.charCodeAt(0)===40&&!r.match(Te)){var a=r.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(t>=0)return Oe("n",a,t);return"("+Oe("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return me(e,r,t);if(r.indexOf("%")!==-1)return ve(e,r,t);if(r.indexOf("E")!==-1)return ge(r,t);if(r.charCodeAt(0)===36)return"$"+Oe(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,f,o=Math.abs(t),l=t<0?"-":"";if(r.match(/^00+$/))return l+G(o,r.length);if(r.match(/^[#?]+$/)){n=G(t,0);if(n==="0")n="";return n.length>r.length?n:ye(r.substr(0,r.length-n.length))+n}if(i=r.match(be))return we(i,o,l);if(r.match(/^#+0+$/))return l+G(o,r.length-r.indexOf("0"));if(i=r.match(Ae)){n=Ce(t,i[1].length).replace(/^([^\.]+)$/,"$1."+ye(i[1])).replace(/\.$/,"."+ye(i[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+yr("0",ye(i[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(i=r.match(/^(0*)\.(#*)$/)){return l+Ce(o,i[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".")}if(i=r.match(/^#{1,3},##0(\.?)$/))return l+de(G(o,0));if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Oe(e,r,-t):de(""+(Math.floor(t)+_e(t,i[1].length)))+"."+U(Se(t,i[1].length),i[1].length)}if(i=r.match(/^#,#*,#0/))return Oe(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=M(Oe(e,r.replace(/[\\-]/g,""),t));s=0;return M(M(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return s=0)return Fe("n",a,t);return"("+Fe("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return Re(e,r,t);if(r.indexOf("%")!==-1)return Ne(e,r,t);if(r.indexOf("E")!==-1)return Ie(r,t);if(r.charCodeAt(0)===36)return"$"+Fe(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,f,o=Math.abs(t),l=t<0?"-":"";if(r.match(/^00+$/))return l+U(o,r.length);if(r.match(/^[#?]+$/)){n=""+t;if(t===0)n="";return n.length>r.length?n:ye(r.substr(0,r.length-n.length))+n}if(i=r.match(be))return ke(i,o,l);if(r.match(/^#+0+$/))return l+U(o,r.length-r.indexOf("0"));if(i=r.match(Ae)){n=(""+t).replace(/^([^\.]+)$/,"$1."+ye(i[1])).replace(/\.$/,"."+ye(i[1]));n=n.replace(/\.(\d*)$/,function(e,r){return"."+r+yr("0",ye(i[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(i=r.match(/^(0*)\.(#*)$/)){return l+(""+o).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".")}if(i=r.match(/^#{1,3},##0(\.?)$/))return l+de(""+o);if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Fe(e,r,-t):de(""+t)+"."+yr("0",i[1].length)}if(i=r.match(/^#,#*,#0/))return Fe(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=M(Fe(e,r.replace(/[\\-]/g,""),t));s=0;return M(M(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return s-1||t=="\\"&&e.charAt(r+1)=="-"&&"0#".indexOf(e.charAt(r+2))>-1)){} -break;case"?":while(e.charAt(++r)===t){}break;case"*":++r;if(e.charAt(r)==" "||e.charAt(r)=="*")++r;break;case"(":;case")":++r;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":while(r-1){}break;case" ":++r;break;default:++r;break;}}return false}function Ue(e,r,t,a){var n=[],i="",s=0,f="",o="t",l,c,h;var u="H";while(s=12?e.charAt(s+2):f;v.t="T";u="h";s+=3}else if(e.substr(s,5).toUpperCase()==="AM/PM"){if(l!=null)v.v=l.H>=12?"PM":"AM";v.t="T";s+=5;u="h"}else if(e.substr(s,5).toUpperCase()==="上午/下午"){if(l!=null)v.v=l.H>=12?"下午":"上午";v.t="T";s+=5;u="h"}else{v.t="t";++s}if(l==null&&v.t==="T")return"";n[n.length]=v;o=f;break;case"[":i=f;while(e.charAt(s++)!=="]"&&s-1){i=(i.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!Me(e))n[n.length]={t:"t",v:i}}break;case".":if(l!=null){i=f;while(++s-1)i+=f;n[n.length]={t:"n",v:i};break;case"?":i=f;while(e.charAt(++s)===f)i+=f;n[n.length]={t:f,v:i};o=f;break;case"*":++s;if(e.charAt(s)==" "||e.charAt(s)=="*")++s;break;case"(":;case")":n[n.length]={t:a===1?"t":f,v:f};++s;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":i=f;while(s-1)i+=e.charAt(s);n[n.length]={t:"D",v:i};break;case" ":n[n.length]={t:f,v:f};++s;break;case"$":n[n.length]={t:"t",v:"$"};++s;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxzP".indexOf(f)===-1)throw new Error("unrecognized character "+f+" in "+e);n[n.length]={t:"t",v:f};++s;break;}}var m=0,g=0,b;for(s=n.length-1,o="t";s>=0;--s){switch(n[s].t){case"h":;case"H":n[s].t=u;o="h";if(m<1)m=1;break;case"s":if(b=n[s].v.match(/\.0+$/))g=Math.max(g,b[0].length-1);if(m<3)m=3;case"d":;case"y":;case"M":;case"e":o=n[s].t;break;case"m":if(o==="s"){n[s].t="M";if(m<2)m=2}break;case"X":break;case"Z":if(m<1&&n[s].v.match(/[Hh]/))m=1;if(m<2&&n[s].v.match(/[Mm]/))m=2;if(m<3&&n[s].v.match(/[Ss]/))m=3;}}switch(m){case 0:break;case 1:if(l.u>=.5){l.u=0;++l.S}if(l.S>=60){l.S=0;++l.M}if(l.M>=60){l.M=0;++l.H}break;case 2:if(l.u>=.5){l.u=0;++l.S}if(l.S>=60){l.S=0;++l.M}break;}var w="",k;for(s=0;s0){if(w.charCodeAt(0)==40){T=r<0&&w.charCodeAt(0)===45?-r:r;E=De("n",w,T)}else{T=r<0&&a>1?-r:r;E=De("n",w,T);if(T<0&&n[0]&&n[0].t=="t"){E=E.substr(1);n[0].v="-"+n[0].v}}k=E.length-1;var y=n.length;for(s=0;s-1){y=s;break}var C=n.length;if(y===n.length&&E.indexOf("E")===-1){for(s=n.length-1;s>=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;if(k>=n[s].v.length-1){k-=n[s].v.length;n[s].v=E.substr(k+1,n[s].v.length)}else if(k<0)n[s].v="";else{n[s].v=E.substr(0,k+1);k=-1}n[s].t="t";C=s}if(k>=0&&C=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;c=n[s].v.indexOf(".")>-1&&s===y?n[s].v.indexOf(".")-1:n[s].v.length-1;A=n[s].v.substr(c+1);for(;c>=0;--c){if(k>=0&&(n[s].v.charAt(c)==="0"||n[s].v.charAt(c)==="#"))A=E.charAt(k--)+A}n[s].v=A;n[s].t="t";C=s}if(k>=0&&C-1&&s===y?n[s].v.indexOf(".")+1:0;A=n[s].v.substr(0,c);for(;c-1){T=a>1&&r<0&&s>0&&n[s-1].v==="-"?-r:r;n[s].v=De(n[s].t,n[s].v,T);n[s].t="t"}var S="";for(s=0;s!==n.length;++s)if(n[s]!=null)S+=n[s].v;return S}var Be=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function We(e,r){if(r==null)return false;var t=parseFloat(r[2]);switch(r[1]){case"=":if(e==t)return true;break;case">":if(e>t)return true;break;case"<":if(e":if(e!=t)return true;break;case">=":if(e>=t)return true;break;case"<=":if(e<=t)return true;break;}return false}function He(e,r){var t=Pe(e);var a=t.length,n=t[a-1].indexOf("@");if(a<4&&n>-1)--a;if(t.length>4)throw new Error("cannot find right format for |"+t.join("|")+"|");if(typeof r!=="number")return[4,t.length===4||n>-1?t[t.length-1]:"@"];switch(t.length){case 1:t=n>-1?["General","General","General",t[0]]:[t[0],t[0],t[0],"@"];break;case 2:t=n>-1?[t[0],t[0],t[0],t[1]]:[t[0],t[1],t[0],"@"];break;case 3:t=n>-1?[t[0],t[1],t[0],t[2]]:[t[0],t[1],t[2],"@"];break;case 4:break;}var i=r>0?t[0]:r<0?t[1]:t[2];if(t[0].indexOf("[")===-1&&t[1].indexOf("[")===-1)return[a,i];if(t[0].match(/\[[=<>]/)!=null||t[1].match(/\[[=<>]/)!=null){var s=t[0].match(Be);var f=t[1].match(Be);return We(r,s)?[a,t[0]]:We(r,f)?[a,t[1]]:[a,t[s!=null&&f!=null?2:1]]}return[a,i]}function ze(e,r,t){if(t==null)t={};var a="";switch(typeof e){case"string":if(e=="m/d/yy"&&t.dateNF)a=t.dateNF;else a=e;break;case"number":if(e==14&&t.dateNF)a=t.dateNF;else a=(t.table!=null?t.table:Z)[e];if(a==null)a=t.table&&t.table[J[e]]||Z[J[e]];if(a==null)a=q[e]||"General";break;}if(j(a,0))return ce(r,t);if(r instanceof Date)r=ne(r,t.date1904);var n=He(a,r);if(j(n[1]))return ce(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return Ue(n[1],r,t,n[0])}function Ve(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(Z[t]==undefined){if(r<0)r=t;continue}if(Z[t]==e){r=t;break}}if(r<0)r=391}Z[r]=e;return r}function Ge(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)Ve(e[r],r)}function $e(){Z=K()}var je={format:ze,load:Ve,_table:Z,load_table:Ge,parse_date_code:ee,is_date:Me,get_table:function Rk(){return je._table=Z}};var Xe={5:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',23:"General",24:"General",25:"General",26:"General",27:"m/d/yy",28:"m/d/yy",29:"m/d/yy",30:"m/d/yy",31:"m/d/yy",32:"h:mm:ss",33:"h:mm:ss",34:"h:mm:ss",35:"h:mm:ss",36:"m/d/yy",41:'_(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* (#,##0);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)',50:"m/d/yy",51:"m/d/yy",52:"m/d/yy",53:"m/d/yy",54:"m/d/yy",55:"m/d/yy",56:"m/d/yy",57:"m/d/yy",58:"m/d/yy",59:"0",60:"0.00",61:"#,##0",62:"#,##0.00",63:'"$"#,##0_);\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',67:"0%",68:"0.00%",69:"# ?/?",70:"# ??/??",71:"m/d/yy",72:"m/d/yy",73:"d-mmm-yy",74:"d-mmm",75:"mmm-yy",76:"h:mm",77:"h:mm:ss",78:"m/d/yy h:mm",79:"mm:ss",80:"[h]:mm:ss",81:"mmss.0"};var Ye=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function Ke(e){var r=typeof e=="number"?Z[e]:e;r=r.replace(Ye,"(\\d+)");return new RegExp("^"+r+"$")}function Ze(e,r,t){var a=-1,n=-1,i=-1,s=-1,f=-1,o=-1;(r.match(Ye)||[]).forEach(function(e,r){var l=parseInt(t[r+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=l;break;case"d":i=l;break;case"h":s=l;break;case"s":o=l;break;case"m":if(s>=0)f=l;else n=l;break;}});if(o>=0&&f==-1&&n>=0){f=n;n=-1}var l=(""+(a>=0?a:(new Date).getFullYear())).slice(-4)+"-"+("00"+(n>=1?n:1)).slice(-2)+"-"+("00"+(i>=1?i:1)).slice(-2);if(l.length==7)l="0"+l;if(l.length==8)l="20"+l;var c=("00"+(s>=0?s:0)).slice(-2)+":"+("00"+(f>=0?f:0)).slice(-2)+":"+("00"+(o>=0?o:0)).slice(-2);if(s==-1&&f==-1&&o==-1)return l;if(a==-1&&n==-1&&i==-1)return c;return l+"T"+c}var Je={"d.m":"d\\.m"};function qe(e,r){return Ve(Je[e]||e,r)}var Qe=function(){var e={};e.version="1.2.0";function r(){var e=0,r=new Array(256);for(var t=0;t!=256;++t){e=t;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;r[t]=e}return typeof Int32Array!=="undefined"?new Int32Array(r):r}var t=r();function a(e){var r=0,t=0,a=0,n=typeof Int32Array!=="undefined"?new Int32Array(4096):new Array(4096);for(a=0;a!=256;++a)n[a]=e[a];for(a=0;a!=256;++a){t=e[a];for(r=256+a;r<4096;r+=256)t=n[r]=t>>>8^e[t&255]}var i=[];for(a=1;a!=16;++a)i[a-1]=typeof Int32Array!=="undefined"?n.subarray(a*256,a*256+256):n.slice(a*256,a*256+256);return i}var n=a(t);var i=n[0],s=n[1],f=n[2],o=n[3],l=n[4];var c=n[5],h=n[6],u=n[7],d=n[8],p=n[9];var v=n[10],m=n[11],g=n[12],b=n[13],w=n[14];function k(e,r){var a=r^-1;for(var n=0,i=e.length;n>>8^t[(a^e.charCodeAt(n++))&255];return~a}function A(e,r){var a=r^-1,n=e.length-15,k=0;for(;k>8&255]^g[e[k++]^a>>16&255]^m[e[k++]^a>>>24]^v[e[k++]]^p[e[k++]]^d[e[k++]]^u[e[k++]]^h[e[k++]]^c[e[k++]]^l[e[k++]]^o[e[k++]]^f[e[k++]]^s[e[k++]]^i[e[k++]]^t[e[k++]];n+=15;while(k>>8^t[(a^e[k++])&255];return~a}function T(e,r){var a=r^-1;for(var n=0,i=e.length,s=0,f=0;n>>8^t[(a^s)&255]}else if(s<2048){a=a>>>8^t[(a^(192|s>>6&31))&255];a=a>>>8^t[(a^(128|s&63))&255]}else if(s>=55296&&s<57344){s=(s&1023)+64;f=e.charCodeAt(n++)&1023;a=a>>>8^t[(a^(240|s>>8&7))&255];a=a>>>8^t[(a^(128|s>>2&63))&255];a=a>>>8^t[(a^(128|f>>6&15|(s&3)<<4))&255];a=a>>>8^t[(a^(128|f&63))&255]}else{a=a>>>8^t[(a^(224|s>>12&15))&255];a=a>>>8^t[(a^(128|s>>6&63))&255];a=a>>>8^t[(a^(128|s&63))&255]}}return~a}e.table=t;e.bstr=k;e.buf=A;e.str=T;return e}();var er=function Nk(){var e={};e.version="1.2.2";function r(e,r){var t=e.split("/"),a=r.split("/");for(var n=0,i=0,s=Math.min(t.length,a.length);n>>1;e._W(2,t);var a=r.getFullYear()-1980;a=a<<4|r.getMonth()+1;a=a<<5|r.getDate();e._W(2,a)}function i(e){var r=e._R(2)&65535;var t=e._R(2)&65535;var a=new Date;var n=t&31;t>>>=5;var i=t&15;t>>>=4;a.setMilliseconds(0);a.setFullYear(t+1980);a.setMonth(i-1);a.setDate(n);var s=r&31;r>>>=5;var f=r&63;r>>>=6;a.setHours(r);a.setMinutes(f);a.setSeconds(s<<1);return a}function s(e){ga(e,0);var r={};var t=0;while(e.l<=e.length-4){var a=e._R(2);var n=e._R(2),i=e.l+n;var s={};switch(a){case 21589:{t=e._R(1);if(t&1)s.mtime=e._R(4);if(n>5){if(t&2)s.atime=e._R(4);if(t&4)s.ctime=e._R(4)}if(s.mtime)s.mt=new Date(s.mtime*1e3)}break;case 1:{var f=e._R(4),o=e._R(4);s.usz=o*Math.pow(2,32)+f;f=e._R(4);o=e._R(4);s.csz=o*Math.pow(2,32)+f}break;}e.l=i;r[a]=s}return r}var f;function o(){return f||(f=rr)}function l(e,r){if(e[0]==80&&e[1]==75)return Ne(e,r);if((e[0]|32)==109&&(e[1]|32)==105)return We(e,r);if(e.length<512)throw new Error("CFB file size "+e.length+" < 512");var t=3;var a=512;var n=0;var i=0;var s=0;var f=0;var o=0;var l=[];var p=e.slice(0,512);ga(p,0);var m=c(p);t=m[0];switch(t){case 3:a=512;break;case 4:a=4096;break;case 0:if(m[1]==0)return Ne(e,r);default:throw new Error("Major Version: Expected 3 or 4 saw "+t);}if(a!==512){p=e.slice(0,a);ga(p,28)}var w=e.slice(0,a);h(p,t);var k=p._R(4,"i");if(t===3&&k!==0)throw new Error("# Directory Sectors: Expected 0 saw "+k);p.l+=4;s=p._R(4,"i");p.l+=4;p.chk("00100000","Mini Stream Cutoff Size: ");f=p._R(4,"i");n=p._R(4,"i");o=p._R(4,"i");i=p._R(4,"i");for(var A=-1,T=0;T<109;++T){A=p._R(4,"i");if(A<0)break;l[T]=A}var E=u(e,a);v(o,i,E,a,l);var y=g(E,s,l,a);y[s].name="!Directory";if(n>0&&f!==U)y[f].name="!MiniFAT";y[l[0]].name="!FAT";y.fat_addrs=l;y.ssz=a;var C={},S=[],_=[],x=[];b(s,y,E,S,n,C,_,f);d(_,x,S);S.shift();var O={FileIndex:_,FullPaths:x};if(r&&r.raw)O.raw={header:w,sectors:E};return O}function c(e){if(e[e.l]==80&&e[e.l+1]==75)return[0,0];e.chk(B,"Header Signature: ");e.l+=16;var r=e._R(2,"u");return[e._R(2,"u"),r]}function h(e,r){var t=9;e.l+=2;switch(t=e._R(2)){case 9:if(r!=3)throw new Error("Sector Shift: Expected 9 saw "+t);break;case 12:if(r!=4)throw new Error("Sector Shift: Expected 12 saw "+t);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+t);}e.chk("0600","Mini Sector Shift: ");e.chk("000000000000","Reserved: ")}function u(e,r){var t=Math.ceil(e.length/r)-1;var a=[];for(var n=1;n0&&s>=0){i.push(r.slice(s*M,s*M+M));n-=M;s=la(t,s*4)}if(i.length===0)return wa(0);return F(i).slice(0,e.size)}function v(e,r,t,a,n){var i=U;if(e===U){if(r!==0)throw new Error("DIFAT chain shorter than expected")}else if(e!==-1){var s=t[e],f=(a>>>2)-1;if(!s)return;for(var o=0;o=1)v(la(s,a-4),r-1,t,a,n)}}function m(e,r,t,a,n){var i=[],s=[];if(!n)n=[];var f=a-1,o=0,l=0;for(o=r;o>=0;){n[o]=true;i[i.length]=o;s.push(e[o]);var c=t[Math.floor(o*4/a)];l=o*4&f;if(a<4+l)throw new Error("FAT boundary crossed: "+o+" 4 "+a);if(!e[c])break;o=la(e[c],l)}return{nodes:i,data:Ut([s])}}function g(e,r,t,a){var n=e.length,i=[];var s=[],f=[],o=[];var l=a-1,c=0,h=0,u=0,d=0;for(c=0;c=n)u-=n;if(s[u])continue;o=[];var p=[];for(h=u;h>=0;){p[h]=true;s[h]=true;f[f.length]=h;o.push(e[h]);var v=t[Math.floor(h*4/a)];d=h*4&l;if(a<4+d)throw new Error("FAT boundary crossed: "+h+" 4 "+a);if(!e[v])break;h=la(e[v],d);if(p[h])break}i[u]={nodes:f,data:Ut([o])}}return i}function b(e,r,t,a,n,i,s,f){var o=0,l=a.length?2:0;var c=r[e].data;var h=0,u=0,d;for(;h0&&o!==U)r[o].name="!StreamData"}else if(g.size>=4096){g.storage="fat";if(r[g.start]===undefined)r[g.start]=m(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(o!==U&&g.start!==U&&r[o]){g.content=p(g,r[o].data,(r[f]||{}).data)}}if(g.content)ga(g.content,0);i[d]=g;s.push(g)}}function w(e,r){return new Date((oa(e,r+4)/1e7*Math.pow(2,32)+oa(e,r)/1e7-11644473600)*1e3)}function A(e,r){o();return l(f.readFileSync(e),r)}function C(e,r){var t=r&&r.type;if(!t){if(E&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return A(e,r);case"base64":return l(x(T(e)),r);case"binary":return l(x(e),r);}return l(e,r)}function O(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;R(e)}function R(e){var r="Sh33tJ5";if(er.find(e,"/"+r))return;var t=wa(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);N(e)}function N(e,n){O(e);var i=false,s=false;for(var f=e.FullPaths.length-1;f>=0;--f){var o=e.FileIndex[f];switch(o.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(o.R*o.L*o.C))i=true;if(o.R>-1&&o.L>-1&&o.R==o.L)i=true;break;default:i=true;break;}}if(!i&&!n)return;var l=new Date(1987,1,19),c=0;var h=Object.create?Object.create(null):{};var u=[];for(f=0;f1?1:-1;p.size=0;p.type=5}else if(v.slice(-1)=="/"){for(c=f+1;c=u.length?-1:c;for(c=f+1;c=u.length?-1:c;p.type=1}else{if(t(e.FullPaths[f+1]||"")==t(v))p.R=f+1;p.type=2}}}function I(e,r){var t=r||{};if(t.fileType=="mad")return He(e,t);N(e);switch(t.fileType){case"zip":return Fe(e,t);}var a=function(e){var r=0,t=0;for(var a=0;a0){if(i<4096)r+=i+63>>6;else t+=i+511>>9}}var s=e.FullPaths.length+3>>2;var f=r+7>>3;var o=r+127>>7;var l=f+t+s+o;var c=l+127>>7;var h=c<=109?0:Math.ceil((c-109)/127);while(l+c+h+127>>7>c)h=++c<=109?0:Math.ceil((c-109)/127);var u=[1,h,c,o,s,t,r,0];e.FileIndex[0].size=r<<6;u[7]=(e.FileIndex[0].start=u[0]+u[1]+u[2]+u[3]+u[4]+u[5])+(u[6]+7>>3);return u}(e);var n=wa(a[7]<<9);var i=0,s=0;{for(i=0;i<8;++i)n._W(1,W[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:U);n._W(4,a[3]);n._W(-4,a[1]?a[0]-1:U);n._W(4,a[1]);for(i=0;i<109;++i)n._W(-4,i>9)}f(a[6]+7>>3);while(n.l&511)n._W(-4,z.ENDOFCHAIN);s=i=0;for(o=0;o=4096)continue;c.start=s;f(l+63>>6)}while(n.l&511)n._W(-4,z.ENDOFCHAIN);for(i=0;i32){console.error("Name "+u+" will be truncated to "+u.slice(0,32));u=u.slice(0,32)}l=2*(u.length+1);n._W(64,u,"utf16le");n._W(2,l);n._W(1,c.type);n._W(1,c.color);n._W(-4,c.L);n._W(-4,c.R);n._W(-4,c.C);if(!c.clsid)for(o=0;o<4;++o)n._W(4,0);else n._W(16,c.clsid,"hex");n._W(4,c.state||0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,c.start);n._W(4,c.size);n._W(4,0)}for(i=1;i=4096){n.l=c.start+1<<9;if(E&&Buffer.isBuffer(c.content)){c.content.copy(n,n.l,0,c.size);n.l+=c.size+511&-512}else{for(o=0;o0&&c.size<4096){if(E&&Buffer.isBuffer(c.content)){c.content.copy(n,n.l,0,c.size);n.l+=c.size+63&-64}else{for(o=0;o>16|r>>8|r)&255}var ee=typeof Uint8Array!=="undefined";var re=ee?new Uint8Array(1<<8):[];for(var te=0;te<1<<8;++te)re[te]=Q(te);function ae(e,r){var t=re[e&255];if(r<=8)return t>>>8-r;t=t<<8|re[e>>8&255];if(r<=16)return t>>>16-r;t=t<<8|re[e>>16&255];return t>>>24-r}function ne(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=6?0:e[a+1]<<8))>>>t&3}function ie(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=5?0:e[a+1]<<8))>>>t&7}function se(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=4?0:e[a+1]<<8))>>>t&15}function fe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=3?0:e[a+1]<<8))>>>t&31}function oe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=1?0:e[a+1]<<8))>>>t&127}function le(e,r,t){var a=r&7,n=r>>>3,i=(1<>>a;if(t<8-a)return s&i;s|=e[n+1]<<8-a;if(t<16-a)return s&i;s|=e[n+2]<<16-a;if(t<24-a)return s&i;s|=e[n+3]<<24-a;return s&i}function ce(e,r,t){var a=r&7,n=r>>>3;if(a<=5)e[n]|=(t&7)<>8-a}return r+3}function he(e,r,t){var a=r&7,n=r>>>3;t=(t&1)<>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t;return r+8}function de(e,r,t){var a=r&7,n=r>>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t&255;e[n+2]=t>>>8;return r+16}function pe(e,r){var t=e.length,a=2*t>r?2*t:r+5,n=0;if(t>=r)return e;if(E){var i=_(a);if(e.copy)e.copy(i);else for(;n>a-h;for(s=(1<=0;--s)r[f|s<0)r[r.l++]=e[t++]}return r.l}function i(r,t){var n=0;var i=0;var s=ee?new Uint16Array(32768):[];while(i0)t[t.l++]=r[i++];n=t.l*8;continue}n=ce(t,n,+!!(i+f==r.length)+2);var o=0;while(f-- >0){var l=r[i];o=(o<<5^l)&32767;var c=-1,h=0;if(c=s[o]){c|=i&~32767;if(c>i)c-=32768;if(c2){l=a[h];if(l<=22)n=ue(t,n,re[l+1]>>1)-1;else{ue(t,n,3);n+=5;ue(t,n,re[l-23]>>5);n+=3}var u=l<8?0:l-4>>2;if(u>0){de(t,n,h-J[l]);n+=u}l=e[i-c];n=ue(t,n,re[l]>>3);n-=3;var d=l<4?0:l-2>>1;if(d>0){de(t,n,i-c-q[l]);n+=d}for(var p=0;p>8-p;for(var v=(1<<7-p)-1;v>=0;--v)ye[d|v<>>=3){case 16:i=3+ne(e,r);r+=2;d=m[m.length-1];while(i-- >0)m.push(d);break;case 17:i=3+ie(e,r);r+=3;while(i-- >0)m.push(0);break;case 18:i=11+oe(e,r);r+=7;while(i-- >0)m.push(0);break;default:m.push(d);if(o>>0;var f=0,o=0;while((a&1)==0){a=ie(e,t);t+=3;if(a>>>1==0){if(t&7)t+=8-(t&7);var l=e[t>>>3]|e[(t>>>3)+1]<<8;t+=32;if(l>0){if(!r&&s0){n[i++]=e[t>>>3];t+=8}}continue}else if(a>>1==1){f=9;o=5}else{t=_e(e,t);f=Ce;o=Se}for(;;){if(!r&&s>>1==1?ge[c]:Te[c];t+=h&15;h>>>=4;if((h>>>8&255)===0)n[i++]=h;else if(h==256)break;else{h-=257;var u=h<8?0:h-4>>2;if(u>5)u=0;var d=i+J[h];if(u>0){d+=le(e,t,u);t+=u}c=le(e,t,o);h=a>>>1==1?be[c]:Ee[c];t+=h&15;h>>>=4;var p=h<4?0:h-2>>1;var v=q[h];if(p>0){v+=le(e,t,p);t+=p}if(!r&&s>>3];return[n.slice(0,i),t+7>>>3]}function Oe(e,r){var t=e.slice(e.l||0);var a=xe(t,r);e.l+=a[1];return a[0]}function Re(e,r){if(e){if(typeof console!=="undefined")console.error(r)}else throw new Error(r)}function Ne(e,r){var t=e;ga(t,0);var a=[],n=[];var i={FileIndex:a,FullPaths:n};O(i,{root:r.root});var f=t.length-4;while((t[f]!=80||t[f+1]!=75||t[f+2]!=5||t[f+3]!=6)&&f>=0)--f;t.l=f+4;t.l+=4;var o=t._R(2);t.l+=6;var l=t._R(4);t.l=l;for(f=0;f0){t=t.slice(0,t.length-1);t=t.slice(0,t.lastIndexOf("/")+1);if(i.slice(0,t.length)==t)break}}var s=(a[1]||"").match(/boundary="(.*?)"/);if(!s)throw new Error("MAD cannot find boundary");var f="--"+(s[1]||"");var o=[],l=[];var c={FileIndex:o,FullPaths:l};O(c);var h,u=0;for(n=0;n=32&&d<128)++h;var v=h>=u*4/5;n.push(a);n.push("Content-Location: "+(t.root||"file:///C:/SheetJS/")+s);n.push("Content-Transfer-Encoding: "+(v?"quoted-printable":"base64"));n.push("Content-Type: "+Pe(f,s));n.push("");n.push(v?Me(c):Le(c))}n.push(a+"--\r\n");return n.join("\r\n")}function ze(e){var r={};O(r,e);return r}function Ve(e,r,t,n){var i=n&&n.unsafe;if(!i)O(e);var s=!i&&er.find(e,r);if(!s){var f=e.FullPaths[0];if(r.slice(0,f.length)==f)f=r;else{if(f.slice(-1)!="/")f+="/";f=(f+r).replace("//","/")}s={name:a(r),type:2};e.FileIndex.push(s);e.FullPaths.push(f);if(!i)er.utils.cfb_gc(e)}s.content=t;s.size=t?t.length:0;if(n){if(n.CLSID)s.clsid=n.CLSID;if(n.mt)s.mt=n.mt;if(n.ct)s.ct=n.ct}return s}function Ge(e,r){O(e);var t=er.find(e,r);if(t)for(var a=0;a3)a=true;switch(n[i].slice(n[i].length-1)){case"Y":throw new Error("Unsupported ISO Duration Field: "+n[i].slice(n[i].length-1));case"D":t*=24;case"H":t*=60;case"M":if(!a)throw new Error("Unsupported ISO Duration Field: M");else t*=60;case"S":break;}r+=t*parseInt(n[i],10)}return r}var br=new Date("2017-02-19T19:06:09.000Z");var wr=isNaN(br.getFullYear())?new Date("2/19/17"):br;var kr=wr.getFullYear()==2017;function Ar(e,r){var t=new Date(e);if(kr){if(r>0)t.setTime(t.getTime()+t.getTimezoneOffset()*60*1e3);else if(r<0)t.setTime(t.getTime()-t.getTimezoneOffset()*60*1e3);return t}if(e instanceof Date)return e;if(wr.getFullYear()==1917&&!isNaN(t.getFullYear())){var a=t.getFullYear();if(e.indexOf(""+a)>-1)return t;t.setFullYear(t.getFullYear()+100);return t}var n=e.match(/\d+/g)||["2017","2","19","0","0","0"];var i=new Date(+n[0],+n[1]-1,+n[2],+n[3]||0,+n[4]||0,+n[5]||0);if(e.indexOf("Z")>-1)i=new Date(i.getTime()-i.getTimezoneOffset()*60*1e3);return i}function Tr(e,r){if(E&&Buffer.isBuffer(e)){if(r&&C){if(e[0]==255&&e[1]==254)return gt(e.slice(2).toString("utf16le"));if(e[1]==254&&e[2]==255)return gt(u(e.slice(2).toString("binary")))}return e.toString("binary")}if(typeof TextDecoder!=="undefined")try{if(r){if(e[0]==255&&e[1]==254)return gt(new TextDecoder("utf-16le").decode(e.slice(2)));if(e[0]==254&&e[1]==255)return gt(new TextDecoder("utf-16be").decode(e.slice(2)))}var t={"€":"€","‚":"‚","ƒ":"ƒ","„":"„","…":"…","†":"†","‡":"‡","ˆ":"ˆ","‰":"‰","Š":"Š","‹":"‹","Œ":"Œ","Ž":"Ž","‘":"‘","’":"’","“":"“","”":"”","•":"•","–":"–","—":"—","˜":"˜","™":"™","š":"š","›":"›","œ":"œ","ž":"ž","Ÿ":"Ÿ"};if(Array.isArray(e))e=new Uint8Array(e);return new TextDecoder("latin1").decode(e).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g,function(e){return t[e]||e})}catch(a){}var n=[];for(var i=0;i!=e.length;++i)n.push(String.fromCharCode(e[i]));return n.join("")}function Er(e){if(typeof JSON!="undefined"&&!Array.isArray(e))return JSON.parse(JSON.stringify(e));if(typeof e!="object"||e==null)return e;if(e instanceof Date)return new Date(e.getTime());var r={};for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))r[t]=Er(e[t]);return r}function yr(e,r){var t="";while(t.length3&&xr.indexOf(r)==-1)return i}else if(r.replace(/[ap]m?/,"").match(/[a-z]/))return i;if(s<0||s>8099||e.match(/[^-0-9:,\/\\]/))return i;return n}var Rr=function(){var e="abacaba".split(/(:?b)/i).length==5;return function r(t,a,n){if(e||typeof a=="string")return t.split(a);var i=t.split(a),s=[i[0]];for(var f=1;f\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g;var jr=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm,Xr=/<[^>]*>/g;var Yr=Gr.match(jr)?jr:Xr;var Kr=/<\w*:/,Zr=/<(\/?)\w+:/;function Jr(e,r,t){var a={};var n=0,i=0;for(;n!==e.length;++n)if((i=e.charCodeAt(n))===32||i===10||i===13)break;if(!r)a[0]=e.slice(0,n);if(n===e.length)return a;var s=e.match($r),f=0,o="",l=0,c="",h="",u=1;if(s)for(l=0;l!=s.length;++l){h=s[l];for(i=0;i!=h.length;++i)if(h.charCodeAt(i)===61)break;c=h.slice(0,i).trim();while(h.charCodeAt(i+1)==32)++i;u=(n=h.charCodeAt(i+1))==34||n==39?1:0;o=h.slice(i+1+u,h.length-u);for(f=0;f!=c.length;++f)if(c.charCodeAt(f)===58)break;if(f===c.length){if(c.indexOf("_")>0)c=c.slice(0,c.indexOf("_"));a[c]=o;if(!t)a[c.toLowerCase()]=o}else{var d=(f===5&&c.slice(0,5)==="xmlns"?"xmlns":"")+c.slice(f+1);if(a[d]&&c.slice(f-3,f)=="ext")continue;a[d]=o;if(!t)a[d.toLowerCase()]=o}}return a}function qr(e){return e.replace(Zr,"<$1")}var Qr={""":'"',"'":"'",">":">","<":"<","&":"&"};var et=or(Qr);var rt=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;function t(a){var n=a+"",i=n.indexOf("-1?16:10))||e}).replace(r,function(e,r){return String.fromCharCode(parseInt(r,16))});var s=n.indexOf("]]>");return t(n.slice(0,i))+n.slice(i+9,s)+t(n.slice(s+3))}return function a(e,r){var a=t(e);return r?a.replace(/\r\n/g,"\n"):a}}();var tt=/[&<>'"]/g,at=/[\u0000-\u0008\u000b-\u001f\uFFFE-\uFFFF]/g;function nt(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(at,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function it(e){return nt(e).replace(/ /g,"_x0020_")}var st=/[\u0000-\u001f]/g;function ft(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(/\n/g,"
").replace(st,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function ot(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(st,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var lt=function(){var e=/&#(\d+);/g;function r(e,r){return String.fromCharCode(parseInt(r,10))}return function t(a){return a.replace(e,r)}}();function ct(e){return e.replace(/(\r\n|[\r\n])/g," ")}function ht(e){switch(e){case 1:;case true:;case"1":;case"true":return true;case 0:;case false:;case"0":;case"false":return false;}return false}function ut(e){var r="",t=0,a=0,n=0,i=0,s=0,f=0;while(t191&&a<224){s=(a&31)<<6;s|=n&63;r+=String.fromCharCode(s);continue}i=e.charCodeAt(t++);if(a<240){r+=String.fromCharCode((a&15)<<12|(n&63)<<6|i&63);continue}s=e.charCodeAt(t++);f=((a&7)<<18|(n&63)<<12|(i&63)<<6|s&63)-65536;r+=String.fromCharCode(55296+(f>>>10&1023));r+=String.fromCharCode(56320+(f&1023))}return r}function dt(e){var r=S(2*e.length),t,a,n=1,i=0,s=0,f;for(a=0;a>>10&1023);t=56320+(t&1023)}if(s!==0){r[i++]=s&255;r[i++]=s>>>8;s=0}r[i++]=t%256;r[i++]=t>>>8}return r.slice(0,i).toString("ucs2")}function pt(e){return y(e,"binary").toString("utf8")}var vt="foo bar baz☃🍣";var mt=E&&(pt(vt)==ut(vt)&&pt||dt(vt)==ut(vt)&&dt)||ut;var gt=E?function(e){return y(e,"utf8").toString("binary")}:function(e){var r=[],t=0,a=0,n=0;while(t>6)));r.push(String.fromCharCode(128+(a&63)));break;case a>=55296&&a<57344:a-=55296;n=e.charCodeAt(t++)-56320+(a<<10);r.push(String.fromCharCode(240+(n>>18&7)));r.push(String.fromCharCode(144+(n>>12&63)));r.push(String.fromCharCode(128+(n>>6&63)));r.push(String.fromCharCode(128+(n&63)));break;default:r.push(String.fromCharCode(224+(a>>12)));r.push(String.fromCharCode(128+(a>>6&63)));r.push(String.fromCharCode(128+(a&63)));}}return r.join("")};var bt=function(){var e={};return function r(t,a){var n=t+"|"+(a||"");if(e[n])return e[n];return e[n]=new RegExp("<(?:\\w+:)?"+t+'(?: xml:space="preserve")?(?:[^>]*)>([\\s\\S]*?)",a||"")}}();var wt=function(){var e=[["nbsp"," "],["middot","·"],["quot",'"'],["apos","'"],["gt",">"],["lt","<"],["amp","&"]].map(function(e){return[new RegExp("&"+e[0]+";","ig"),e[1]]});return function r(t){var a=t.replace(/^[\t\n\r ]+/,"").replace(/[\t\n\r ]+$/,"").replace(/>\s+/g,">").replace(/\s+/g,"\n").replace(/<[^>]*>/g,"");for(var n=0;n([\\s\\S]*?)","g")}}();var At=/<\/?(?:vt:)?variant>/g,Tt=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function St(e){return sr(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function _t(e,r,t){return"<"+e+(t!=null?St(t):"")+(r!=null?(r.match(yt)?' xml:space="preserve"':"")+">"+r+""}function xt(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function Ot(e,r){switch(typeof e){case"string":var t=_t("vt:lpwstr",nt(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return _t((e|0)==e?"vt:i4":"vt:r8",nt(String(e)));case"boolean":return _t("vt:bool",e?"true":"false");}if(e instanceof Date)return _t("vt:filetime",xt(e));throw new Error("Unable to serialize "+e)}function Rt(e){if(E&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return mt(R(I(e)));throw new Error("Bad input format: expected Buffer or string")}var Nt=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/](?:[^>=]|="[^"]*?")*)?>/gm;var It={CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",CT:"http://schemas.openxmlformats.org/package/2006/content-types",RELS:"http://schemas.openxmlformats.org/package/2006/relationships",TCMNT:"http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"};var Ft=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];var Dt={o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel",ss:"urn:schemas-microsoft-com:office:spreadsheet",dt:"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",mv:"http://macVmlSchemaUri",v:"urn:schemas-microsoft-com:vml",html:"http://www.w3.org/TR/REC-html40"};function Pt(e,r){var t=1-2*(e[r+7]>>>7);var a=((e[r+7]&127)<<4)+(e[r+6]>>>4&15);var n=e[r+6]&15;for(var i=5;i>=0;--i)n=n*256+e[r+i];if(a==2047)return n==0?t*Infinity:NaN;if(a==0)a=-1022;else{a-=1023;n+=Math.pow(2,52)}return t*Math.pow(2,a-52)*n}function Lt(e,r,t){var a=(r<0||1/r==-Infinity?1:0)<<7,n=0,i=0;var s=a?-r:r;if(!isFinite(s)){n=2047;i=isNaN(r)?26985:0}else if(s==0)n=i=0;else{n=Math.floor(Math.log(s)/Math.LN2);i=s*Math.pow(2,52-n);if(n<=-1023&&(!isFinite(i)||i>4|a}var Mt=function(e){var r=[],t=10240;for(var a=0;a0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map(function(e){return Buffer.isBuffer(e)?e:y(e)})):Mt(e)}:Mt;var Bt=function(e,r,t){var a=[];for(var n=r;n0?Gt(e,r+4,r+4+t-1):""};var jt=$t;var Xt=function(e,r){var t=oa(e,r);return t>0?Gt(e,r+4,r+4+t-1):""};var Yt=Xt;var Kt=function(e,r){var t=2*oa(e,r);return t>0?Gt(e,r+4,r+4+t-1):""};var Zt=Kt;var Jt=function Fk(e,r){var t=oa(e,r);return t>0?Wt(e,r+4,r+4+t):""};var qt=Jt;var Qt=function(e,r){var t=oa(e,r);return t>0?Gt(e,r+4,r+4+t):""};var ea=Qt;var ra=function(e,r){return Pt(e,r)};var ta=ra;var aa=function Dk(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(E){jt=function Pk(e,r){if(!Buffer.isBuffer(e))return $t(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Yt=function Lk(e,r){if(!Buffer.isBuffer(e))return Xt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Zt=function Mk(e,r){if(!Buffer.isBuffer(e)||!C)return Kt(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};qt=function Uk(e,r){if(!Buffer.isBuffer(e)||!C)return Jt(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};ea=function Bk(e,r){if(!Buffer.isBuffer(e))return Qt(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};ta=function Wk(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return ra(e,r)};aa=function Hk(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function na(){Wt=function(e,r,t){return a.utils.decode(1200,e.slice(r,t)).replace(P,"")};Gt=function(e,r,t){return a.utils.decode(65001,e.slice(r,t))};jt=function(e,r){var n=oa(e,r);return n>0?a.utils.decode(t,e.slice(r+4,r+4+n-1)):""};Yt=function(e,t){var n=oa(e,t);return n>0?a.utils.decode(r,e.slice(t+4,t+4+n-1)):""};Zt=function(e,r){var t=2*oa(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};qt=function(e,r){var t=oa(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t)):""};ea=function(e,r){var t=oa(e,r);return t>0?a.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof a!=="undefined")na();var ia=function(e,r){return e[r]};var sa=function(e,r){return e[r+1]*(1<<8)+e[r]};var fa=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var oa=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var la=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var ca=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function ha(e,t){var n="",i,s,f=[],o,l,c,h;switch(t){case"dbcs":h=this.l;if(E&&Buffer.isBuffer(this)&&C)n=this.slice(this.l,this.l+2*e).toString("utf16le");else for(c=0;c0?la:ca)(this,this.l);this.l+=4;return i}else{s=oa(this,this.l);this.l+=4}return s;case 8:;case-8:if(t==="f"){if(e==8)s=ta(this,this.l);else s=ta([this[this.l+7],this[this.l+6],this[this.l+5],this[this.l+4],this[this.l+3],this[this.l+2],this[this.l+1],this[this.l+0]],0);this.l+=8;return s}else e=8;case 16:n=zt(this,this.l,e);break;};}this.l+=e;return n}var ua=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255;e[t+2]=r>>>16&255;e[t+3]=r>>>24&255};var da=function(e,r,t){e[t]=r&255;e[t+1]=r>>8&255;e[t+2]=r>>16&255;e[t+3]=r>>24&255};var pa=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function va(e,n,i){var s=0,f=0;if(i==="dbcs"){for(f=0;f!=n.length;++f)pa(this,n.charCodeAt(f),this.l+2*f);s=2*n.length}else if(i==="sbcs"||i=="cpstr"){if(typeof a!=="undefined"&&t==874){for(f=0;f!=n.length;++f){var o=a.utils.encode(t,n.charAt(f));this[this.l+f]=o[0]}s=n.length}else if(typeof a!=="undefined"&&i=="cpstr"){o=a.utils.encode(r,n);if(o.length==n.length)for(f=0;f>8}while(this.l>>=8;this[this.l+1]=n&255;break;case 3:s=3;this[this.l]=n&255;n>>>=8;this[this.l+1]=n&255;n>>>=8;this[this.l+2]=n&255;break;case 4:s=4;ua(this,n,this.l);break;case 8:s=8;if(i==="f"){Lt(this,n,this.l);break};case 16:break;case-4:s=4;da(this,n,this.l);break;}this.l+=s; -return this}function ma(e,r){var t=zt(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function ga(e,r){e.l=r;e._R=ha;e.chk=ma;e._W=va}function ba(e,r){e.l+=r}function wa(e){var r=S(e);ga(r,0);return r}function ka(e,r,t){if(!e)return;var a,n,i;ga(e,e.l||0);var s=e.length,f=0,o=0;while(e.la.l){a=a.slice(0,a.l);a.l=a.length}if(a.length>0)e.push(a)}a=null};var i=function c(e){if(a&&e=128?1:0)+1;if(a>=128)++i;if(a>=16384)++i;if(a>=2097152)++i;var s=e.next(i);if(n<=127)s._W(1,n);else{s._W(1,(n&127)+128);s._W(1,n>>7)}for(var f=0;f!=4;++f){if(a>=128){s._W(1,(a&127)+128);a>>=7}else{s._W(1,a);break}}if(a>0&&aa(t))e.push(t)}function Ea(e,r,t){var a=Er(e);if(r.s){if(a.cRel)a.c+=r.s.c;if(a.rRel)a.r+=r.s.r}else{if(a.cRel)a.c+=r.c;if(a.rRel)a.r+=r.r}if(!t||t.biff<12){while(a.c>=256)a.c-=256;while(a.r>=65536)a.r-=65536}return a}function ya(e,r,t){var a=Er(e);a.s=Ea(a.s,r.s,t);a.e=Ea(a.e,r.s,t);return a}function Ca(e,r){if(e.cRel&&e.c<0){e=Er(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=Er(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=Ma(e);if(!e.cRel&&e.cRel!=null)t=Fa(t);if(!e.rRel&&e.rRel!=null)t=Oa(t);return t}function Sa(e,r){if(e.s.r==0&&!e.s.rRel){if(e.e.r==(r.biff>=12?1048575:r.biff>=8?65536:16384)&&!e.e.rRel){return(e.s.cRel?"":"$")+Ia(e.s.c)+":"+(e.e.cRel?"":"$")+Ia(e.e.c)}}if(e.s.c==0&&!e.s.cRel){if(e.e.c==(r.biff>=12?16383:255)&&!e.e.cRel){return(e.s.rRel?"":"$")+xa(e.s.r)+":"+(e.e.rRel?"":"$")+xa(e.e.r)}}return Ca(e.s,r.biff)+":"+Ca(e.e,r.biff)}if(typeof cptable!=="undefined")m(cptable);else if(typeof module!=="undefined"&&typeof require!=="undefined"){m(undefined)}function _a(e){return parseInt(Ra(e),10)-1}function xa(e){return""+(e+1)}function Oa(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function Ra(e){return e.replace(/\$(\d+)$/,"$1")}function Na(e){var r=Da(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function Ia(e){if(e<0)throw new Error("invalid column "+e);var r="";for(++e;e;e=Math.floor((e-1)/26))r=String.fromCharCode((e-1)%26+65)+r;return r}function Fa(e){return e.replace(/^([A-Z])/,"$$$1")}function Da(e){return e.replace(/^\$([A-Z])/,"$1")}function Pa(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function La(e){var r=0,t=0;for(var a=0;a=48&&n<=57)r=10*r+(n-48);else if(n>=65&&n<=90)t=26*t+(n-64)}return{c:t-1,r:r-1}}function Ma(e){var r=e.c+1;var t="";for(;r;r=(r-1)/26|0)t=String.fromCharCode((r-1)%26+65)+t;return t+(e.r+1)}function Ua(e){var r=e.indexOf(":");if(r==-1)return{s:La(e),e:La(e)};return{s:La(e.slice(0,r)),e:La(e.slice(r+1))}}function Ba(e,r){if(typeof r==="undefined"||typeof r==="number"){return Ba(e.s,e.e)}if(typeof e!=="string")e=Ma(e);if(typeof r!=="string")r=Ma(r);return e==r?e:e+":"+r}function Wa(e){var r=Ua(e);return"$"+Ia(r.s.c)+"$"+xa(r.s.r)+":$"+Ia(r.e.c)+"$"+xa(r.e.r)}function Ha(e,r){if(!e&&!(r&&r.biff<=5&&r.biff>=2))throw new Error("empty sheet name");if(/[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(e))return"'"+e.replace(/'/g,"''")+"'";return e}function za(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;a26)break;t=26*t+n}r.s.c=--t;for(t=0;a9)break;t=10*t+n}r.s.r=--t;if(a===i||n!=10){r.e.c=r.s.c;r.e.r=r.s.r;return r}++a;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 Va(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=ze(e.z,t?ur(r):r)}catch(a){}try{return e.w=ze((e.XF||{}).numFmtId||(t?14:0),t?ur(r):r)}catch(a){return""+r}}function Ga(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(e.t=="e")return Jn[e.v]||e.v;if(r==undefined)return Va(e,e.v);return Va(e,r)}function $a(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function ja(e,r,t){var a=t||{};var n=e?Array.isArray(e):a.dense;if(g!=null&&n==null)n=g;var i=e||(n?[]:{});var s=0,f=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var o=typeof a.origin=="string"?La(a.origin):a.origin;s=o.r;f=o.c}if(!i["!ref"])i["!ref"]="A1:A1"}var l={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(i["!ref"]){var c=za(i["!ref"]);l.s.c=c.s.c;l.s.r=c.s.r;l.e.c=Math.max(l.e.c,c.e.c);l.e.r=Math.max(l.e.r,c.e.r);if(s==-1)l.e.r=s=c.e.r+1}for(var h=0;h!=r.length;++h){if(!r[h])continue;if(!Array.isArray(r[h]))throw new Error("aoa_to_sheet expects an array of arrays");for(var u=0;u!=r[h].length;++u){if(typeof r[h][u]==="undefined")continue;var d={v:r[h][u]};var p=s+h,v=f+u;if(l.s.r>p)l.s.r=p;if(l.s.c>v)l.s.c=v;if(l.e.r0)r._W(0,e,"dbcs");return t?r.slice(0,r.l):r}function qa(e){return{ich:e._R(2),ifnt:e._R(2)}}function Qa(e,r){if(!r)r=wa(4);r._W(2,e.ich||0);r._W(2,e.ifnt||0);return r}function en(e,r){var t=e.l;var a=e._R(1);var n=Za(e);var i=[];var s={t:n,h:n};if((a&1)!==0){var f=e._R(4);for(var o=0;o!=f;++o)i.push(qa(e));s.r=i}else s.r=[{ich:0,ifnt:0}];e.l=t+r;return s}function rn(e,r){var t=false;if(r==null){t=true;r=wa(15+4*e.t.length)}r._W(1,0);Ja(e.t,r);return t?r.slice(0,r.l):r}var tn=en;function an(e,r){var t=false;if(r==null){t=true;r=wa(23+4*e.t.length)}r._W(1,1);Ja(e.t,r);r._W(4,1);Qa({ich:0,ifnt:0},r);return t?r.slice(0,r.l):r}function nn(e){var r=e._R(4);var t=e._R(2);t+=e._R(1)<<16;e.l++;return{c:r,iStyleRef:t}}function sn(e,r){if(r==null)r=wa(8);r._W(-4,e.c);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}function fn(e){var r=e._R(2);r+=e._R(1)<<16;e.l++;return{c:-1,iStyleRef:r}}function on(e,r){if(r==null)r=wa(4);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}var ln=Za;var cn=Ja;function hn(e){var r=e._R(4);return r===0||r===4294967295?"":e._R(r,"dbcs")}function un(e,r){var t=false;if(r==null){t=true;r=wa(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 dn=Za;var pn=hn;var vn=un;function mn(e){var r=e.slice(e.l,e.l+4);var t=r[0]&1,a=r[0]&2;e.l+=4;var n=a===0?ta([0,0,0,0,r[0]&252,r[1],r[2],r[3]],0):la(r,0)>>2;return t?n/100:n}function gn(e,r){if(r==null)r=wa(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 bn(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 wn(e,r){if(!r)r=wa(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 kn=bn;var An=wn;function Tn(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e._R(8,"f")}function En(e,r){return(r||wa(8))._W(8,e,"f")}function yn(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 f=e._R(1);var o=e._R(1);e.l++;switch(a){case 0:r.auto=1;break;case 1:r.index=n;var l=Zn[n];if(l)r.rgb=xl(l);break;case 2:r.rgb=xl([s,f,o]);break;case 3:r.theme=n;break;}if(i!=0)r.tint=i>0?i/32767:i/32768;return r}function Cn(e,r){if(!r)r=wa(8);if(!e||e.auto){r._W(4,0);r._W(4,0);return r}if(e.index!=null){r._W(1,2);r._W(1,e.index)}else if(e.theme!=null){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||e.theme!=null){r._W(2,0);r._W(1,0);r._W(1,0)}else{var a=e.rgb||"FFFFFF";if(typeof a=="number")a=("000000"+a.toString(16)).slice(-6);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 Sn(e){var r=e._R(1);e.l++;var t={fBold:r&1,fItalic:r&2,fUnderline:r&4,fStrikeout:r&8,fOutline:r&16,fShadow:r&32,fCondense:r&64,fExtend:r&128};return t}function _n(e,r){if(!r)r=wa(2);var t=(e.italic?2:0)|(e.strike?8:0)|(e.outline?16:0)|(e.shadow?32:0)|(e.condense?64:0)|(e.extend?128:0);r._W(1,t);r._W(1,0);return r}function xn(e,r){var t={2:"BITMAP",3:"METAFILEPICT",8:"DIB",14:"ENHMETAFILE"};var a=e._R(4);switch(a){case 0:return"";case 4294967295:;case 4294967294:return t[e._R(4)]||"";}if(a>400)throw new Error("Unsupported Clipboard: "+a.toString(16));e.l-=4;return e._R(0,r==1?"lpstr":"lpwstr")}function On(e){return xn(e,1)}function Rn(e){return xn(e,2)}var Nn=2;var In=3;var Fn=11;var Dn=12;var Pn=19;var Ln=64;var Mn=65;var Un=71;var Bn=4108;var Wn=4126;var Hn=80;var zn=81;var Vn=[Hn,zn];var Gn={1:{n:"CodePage",t:Nn},2:{n:"Category",t:Hn},3:{n:"PresentationFormat",t:Hn},4:{n:"ByteCount",t:In},5:{n:"LineCount",t:In},6:{n:"ParagraphCount",t:In},7:{n:"SlideCount",t:In},8:{n:"NoteCount",t:In},9:{n:"HiddenCount",t:In},10:{n:"MultimediaClipCount",t:In},11:{n:"ScaleCrop",t:Fn},12:{n:"HeadingPairs",t:Bn},13:{n:"TitlesOfParts",t:Wn},14:{n:"Manager",t:Hn},15:{n:"Company",t:Hn},16:{n:"LinksUpToDate",t:Fn},17:{n:"CharacterCount",t:In},19:{n:"SharedDoc",t:Fn},22:{n:"HyperlinksChanged",t:Fn},23:{n:"AppVersion",t:In,p:"version"},24:{n:"DigSig",t:Mn},26:{n:"ContentType",t:Hn},27:{n:"ContentStatus",t:Hn},28:{n:"Language",t:Hn},29:{n:"Version",t:Hn},255:{},2147483648:{n:"Locale",t:Pn},2147483651:{n:"Behavior",t:Pn},1919054434:{}};var $n={1:{n:"CodePage",t:Nn},2:{n:"Title",t:Hn},3:{n:"Subject",t:Hn},4:{n:"Author",t:Hn},5:{n:"Keywords",t:Hn},6:{n:"Comments",t:Hn},7:{n:"Template",t:Hn},8:{n:"LastAuthor",t:Hn},9:{n:"RevNumber",t:Hn},10:{n:"EditTime",t:Ln},11:{n:"LastPrinted",t:Ln},12:{n:"CreatedDate",t:Ln},13:{n:"ModifiedDate",t:Ln},14:{n:"PageCount",t:In},15:{n:"WordCount",t:In},16:{n:"CharCount",t:In},17:{n:"Thumbnail",t:Un},18:{n:"Application",t:Hn},19:{n:"DocSecurity",t:In},255:{},2147483648:{n:"Locale",t:Pn},2147483651:{n:"Behavior",t:Pn},1919054434:{}};var jn={1:"US",2:"CA",3:"",7:"RU",20:"EG",30:"GR",31:"NL",32:"BE",33:"FR",34:"ES",36:"HU",39:"IT",41:"CH",43:"AT",44:"GB",45:"DK",46:"SE",47:"NO",48:"PL",49:"DE",52:"MX",55:"BR",61:"AU",64:"NZ",66:"TH",81:"JP",82:"KR",84:"VN",86:"CN",90:"TR",105:"JS",213:"DZ",216:"MA",218:"LY",351:"PT",354:"IS",358:"FI",420:"CZ",886:"TW",961:"LB",962:"JO",963:"SY",964:"IQ",965:"KW",966:"SA",971:"AE",972:"IL",974:"QA",981:"IR",65535:"US"};var Xn=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function Yn(e){return e.map(function(e){return[e>>16&255,e>>8&255,e&255]})}var Kn=Yn([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,0,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var Zn=Er(Kn);var Jn={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var qn={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255};var Qn=["_xlnm.Consolidate_Area","_xlnm.Auto_Open","_xlnm.Auto_Close","_xlnm.Extract","_xlnm.Database","_xlnm.Criteria","_xlnm.Print_Area","_xlnm.Print_Titles","_xlnm.Recorder","_xlnm.Data_Form","_xlnm.Auto_Activate","_xlnm.Auto_Deactivate","_xlnm.Sheet_Title","_xlnm._FilterDatabase"];var ei={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.sheet.macroEnabled.main+xml":"workbooks","application/vnd.ms-excel.sheet.binary.macroEnabled.main":"workbooks","application/vnd.ms-excel.addin.macroEnabled.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"charts","application/vnd.ms-excel.chartsheet":"charts","application/vnd.ms-excel.macrosheet+xml":"macros","application/vnd.ms-excel.macrosheet":"macros","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"dialogs","application/vnd.ms-excel.dialogsheet":"dialogs","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.customXmlProperties+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.ms-excel.threadedcomments+xml":"threadedcomments","application/vnd.ms-excel.person+xml":"people","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"metadata","application/vnd.ms-excel.sheetMetadata":"metadata","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","application/vnd.ms-office.chartcolorstyle+xml":"TODO","application/vnd.ms-office.chartstyle+xml":"TODO","application/vnd.ms-office.chartex+xml":"TODO","application/vnd.ms-excel.calcChain":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings":"TODO","application/vnd.ms-office.activeX":"TODO","application/vnd.ms-office.activeX+xml":"TODO","application/vnd.ms-excel.attachedToolbars":"TODO","application/vnd.ms-excel.connections":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":"TODO","application/vnd.ms-excel.externalLink":"links","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"links","application/vnd.ms-excel.pivotCacheDefinition":"TODO","application/vnd.ms-excel.pivotCacheRecords":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml":"TODO","application/vnd.ms-excel.queryTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml":"TODO","application/vnd.ms-excel.userNames":"TODO","application/vnd.ms-excel.revisionHeaders":"TODO","application/vnd.ms-excel.revisionLog":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml":"TODO","application/vnd.ms-excel.tableSingleCells":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml":"TODO","application/vnd.ms-excel.slicer":"TODO","application/vnd.ms-excel.slicerCache":"TODO","application/vnd.ms-excel.slicer+xml":"TODO","application/vnd.ms-excel.slicerCache+xml":"TODO","application/vnd.ms-excel.wsSortMap":"TODO","application/vnd.ms-excel.table":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":"TODO","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.themeOverride+xml":"TODO","application/vnd.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"TODO","application/vnd.ms-office.volatileDependencies":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml":"TODO","application/vnd.ms-excel.controlproperties+xml":"TODO","application/vnd.openxmlformats-officedocument.model+data":"TODO","application/vnd.ms-excel.Survey+xml":"TODO","application/vnd.openxmlformats-officedocument.drawing+xml":"drawings","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml":"TODO","application/vnd.openxmlformats-officedocument.vmlDrawing":"TODO","application/vnd.openxmlformats-package.relationships+xml":"rels","application/vnd.openxmlformats-officedocument.oleObject":"TODO","image/png":"TODO",sheet:"js"};var ri={workbooks:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",xlsm:"application/vnd.ms-excel.sheet.macroEnabled.main+xml",xlsb:"application/vnd.ms-excel.sheet.binary.macroEnabled.main",xlam:"application/vnd.ms-excel.addin.macroEnabled.main+xml",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},comments:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",xlsb:"application/vnd.ms-excel.comments"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},charts:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml",xlsb:"application/vnd.ms-excel.chartsheet"},dialogs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml",xlsb:"application/vnd.ms-excel.dialogsheet"},macros:{xlsx:"application/vnd.ms-excel.macrosheet+xml",xlsb:"application/vnd.ms-excel.macrosheet"},metadata:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml",xlsb:"application/vnd.ms-excel.sheetMetadata"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};function ti(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function ai(e){var r=ti();if(!e||!e.match)return r;var t={};(e.match(Yr)||[]).forEach(function(e){var a=Jr(e);switch(a[0].replace(Kr,"<")){case"0?r.calcchains[0]:"";r.sst=r.strs.length>0?r.strs[0]:"";r.style=r.styles.length>0?r.styles[0]:"";r.defaults=t;delete r.calcchains;return r}function ni(e,r,t){var a=cr(ei);var n=[],i;if(!t){n[n.length]=Gr;n[n.length]=_t("Types",null,{xmlns:It.CT,"xmlns:xsd":It.xsd,"xmlns:xsi":It.xsi});n=n.concat([["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["vml","application/vnd.openxmlformats-officedocument.vmlDrawing"],["data","application/vnd.openxmlformats-officedocument.model+data"],["bmp","image/bmp"],["png","image/png"],["gif","image/gif"],["emf","image/x-emf"],["wmf","image/x-wmf"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["tif","image/tiff"],["tiff","image/tiff"],["pdf","application/pdf"],["rels","application/vnd.openxmlformats-package.relationships+xml"]].map(function(e){return _t("Default",null,{Extension:e[0],ContentType:e[1]})}))}var s=function(t){if(e[t]&&e[t].length>0){i=e[t][0];n[n.length]=_t("Override",null,{PartName:(i[0]=="/"?"":"/")+i,ContentType:ri[t][r.bookType]||ri[t]["xlsx"]})}};var f=function(t){(e[t]||[]).forEach(function(e){n[n.length]=_t("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:ri[t][r.bookType]||ri[t]["xlsx"]})})};var o=function(r){(e[r]||[]).forEach(function(e){n[n.length]=_t("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:a[r][0]})})};s("workbooks");f("sheets");f("charts");o("themes");["strs","styles"].forEach(s);["coreprops","extprops","custprops"].forEach(o);o("vba");o("comments");o("threadedcomments");o("drawings");f("metadata");o("people");if(!t&&n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}var ii={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument",HLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",VML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",XPATH:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath",XMISS:"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing",XLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink",CXML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml",CXMLP:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps",CMNT:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",SST:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",STY:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",THEME:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",CHART:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart",CHARTEX:"http://schemas.microsoft.com/office/2014/relationships/chartEx",CS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet",WS:["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet","http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"],DS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet",MS:"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet",IMG:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",DRAW:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",XLMETA:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata",TCMNT:"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment",PEOPLE:"http://schemas.microsoft.com/office/2017/10/relationships/person",CONN:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/connections",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function si(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function fi(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Yr)||[]).forEach(function(e){var n=Jr(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function li(e,r,t,a,n,i){if(!n)n={};if(!e["!id"])e["!id"]={};if(!e["!idx"])e["!idx"]=1;if(r<0)for(r=e["!idx"];e["!id"]["rId"+r];++r){}e["!idx"]=r+1;n.Id="rId"+r;n.Type=a;n.Target=t;if(i)n.TargetMode=i;else if([ii.HLINK,ii.XPATH,ii.XMISS].indexOf(n.Type)>-1)n.TargetMode="External";if(e["!id"][n.Id])throw new Error("Cannot rewrite rId "+r);e["!id"][n.Id]=n;e[("/"+n.Target).replace("//","/")]=n;return r}var ci="application/vnd.oasis.opendocument.spreadsheet";function hi(e,r){var t=Rt(e);var a;var n;while(a=Nt.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Jr(a[0],false);if(n.path=="/"&&n.type!==ci)throw new Error("This OpenDocument is not a spreadsheet");break;case"encryption-data":;case"algorithm":;case"start-key-generation":;case"key-derivation":throw new Error("Unsupported ODS Encryption");default:if(r&&r.WTF)throw a;}}function ui(e){var r=[Gr];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function di(e,r,t){return[' \n',' \n'," \n"].join("")}function pi(e,r){return[' \n',' \n'," \n"].join("")}function vi(e){var r=[Gr];r.push('\n');for(var t=0;t!=e.length;++t){r.push(di(e[t][0],e[t][1]));r.push(pi("",e[t][0]))}r.push(di("","Document","pkg"));r.push("");return r.join("")}function mi(){return'Sheet'+"JS "+e.version+""}var gi=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];var bi=function(){var e=new Array(gi.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function wi(e){var r={};e=mt(e);for(var t=0;t0)r[a[1]]=rt(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=Ar(r[a[1]])}return r}function ki(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=nt(r);a[a.length]=t?_t(e,r,t):Ct(e,r)}function Ai(e,r){var t=r||{};var a=[Gr,_t("cp:coreProperties",null,{"xmlns:cp":It.CORE_PROPS,"xmlns:dc":It.dc,"xmlns:dcterms":It.dcterms,"xmlns:dcmitype":It.dcmitype,"xmlns:xsi":It.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)ki("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:xt(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)ki("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:xt(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var i=0;i!=gi.length;++i){var s=gi[i];var f=t.Props&&t.Props[s[1]]!=null?t.Props[s[1]]:e?e[s[1]]:null;if(f===true)f="1";else if(f===false)f="0";else if(typeof f=="number")f=String(f);if(f!=null)ki(s[0],f,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var Ti=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]];var Ei=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function yi(e,r,t,a){var n=[];if(typeof e=="string")n=Et(e,a);else for(var i=0;i0)for(var l=0;l!==n.length;l+=2){o=+n[l+1].v;switch(n[l].v){case"Worksheets":;case"工作表":;case"Листы":;case"أوراق العمل":;case"ワークシート":;case"גליונות עבודה":;case"Arbeitsblätter":;case"Çalışma Sayfaları":;case"Feuilles de calcul":;case"Fogli di lavoro":;case"Folhas de cálculo":;case"Planilhas":;case"Regneark":;case"Hojas de cálculo":;case"Werkbladen":t.Worksheets=o;t.SheetNames=s.slice(f,f+o);break;case"Named Ranges":;case"Rangos con nombre":;case"名前付き一覧":;case"Benannte Bereiche":;case"Navngivne områder": -t.NamedRanges=o;t.DefinedNames=s.slice(f,f+o);break;case"Charts":;case"Diagramme":t.Chartsheets=o;t.ChartNames=s.slice(f,f+o);break;}f+=o}}function Ci(e,r,t){var a={};if(!r)r={};e=mt(e);Ti.forEach(function(t){var n=(e.match(bt(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=rt(n);break;case"bool":r[t[1]]=n==="true";break;case"raw":var i=e.match(new RegExp("<"+t[0]+"[^>]*>([\\s\\S]*?)"));if(i&&i.length>0)a[t[1]]=i[1];break;}});if(a.HeadingPairs&&a.TitlesOfParts)yi(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function Si(e){var r=[],t=_t;if(!e)e={};e.Application="SheetJS";r[r.length]=Gr;r[r.length]=_t("Properties",null,{xmlns:It.EXT_PROPS,"xmlns:vt":It.vt});Ti.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=nt(String(e[a[1]]));break;case"bool":n=e[a[1]]?"true":"false";break;}if(n!==undefined)r[r.length]=t(a[0],n)});r[r.length]=t("HeadingPairs",t("vt:vector",t("vt:variant","Worksheets")+t("vt:variant",t("vt:i4",String(e.Worksheets))),{size:2,baseType:"variant"}));r[r.length]=t("TitlesOfParts",t("vt:vector",e.SheetNames.map(function(e){return""+nt(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var _i=/<[^>]+>[^<]*/g;function xi(e,r){var t={},a="";var n=e.match(_i);if(n)for(var i=0;i!=n.length;++i){var s=n[i],f=Jr(s);switch(qr(f[0])){case"":a=null;break;default:if(s.indexOf("");var l=o[0].slice(4),c=o[1];switch(l){case"lpstr":;case"bstr":;case"lpwstr":t[a]=rt(c);break;case"bool":t[a]=ht(c);break;case"i1":;case"i2":;case"i4":;case"i8":;case"int":;case"uint":t[a]=parseInt(c,10);break;case"r4":;case"r8":;case"decimal":t[a]=parseFloat(c);break;case"filetime":;case"date":t[a]=Ar(c);break;case"cy":;case"error":t[a]=rt(c);break;default:if(l.slice(-1)=="/")break;if(r.WTF&&typeof console!=="undefined")console.warn("Unexpected",s,l,o);}}else if(s.slice(0,2)==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Ri={Title:"Title",Subject:"Subject",Author:"Author",Keywords:"Keywords",Comments:"Description",LastAuthor:"LastAuthor",RevNumber:"Revision",Application:"AppName",LastPrinted:"LastPrinted",CreatedDate:"Created",ModifiedDate:"LastSaved",Category:"Category",Manager:"Manager",Company:"Company",AppVersion:"Version",ContentStatus:"ContentStatus",Identifier:"Identifier",Language:"Language"};var Ni;function Ii(e,r,t){if(!Ni)Ni=or(Ri);r=Ni[r]||r;e[r]=t}function Fi(e,r){var t=[];sr(Ri).map(function(e){for(var r=0;r'+n.join("")+""}function Pi(e){var r=e._R(4),t=e._R(4);return new Date((t/1e7*Math.pow(2,32)+r/1e7-11644473600)*1e3).toISOString().replace(/\.000/,"")}function Li(e){var r=typeof e=="string"?new Date(Date.parse(e)):e;var t=r.getTime()/1e3+11644473600;var a=t%Math.pow(2,32),n=(t-a)/Math.pow(2,32);a*=1e7;n*=1e7;var i=a/Math.pow(2,32)|0;if(i>0){a=a%Math.pow(2,32);n+=i}var s=wa(8);s._W(4,a);s._W(4,n);return s}function Mi(e,r,t){var a=e.l;var n=e._R(0,"lpstr-cp");if(t)while(e.l-a&3)++e.l;return n}function Ui(e,r,t){var a=e._R(0,"lpwstr");if(t)e.l+=4-(a.length+1&3)&3;return a}function Bi(e,r,t){if(r===31)return Ui(e);return Mi(e,r,t)}function Wi(e,r,t){return Bi(e,r,t===false?0:4)}function Hi(e,r){if(!r)throw new Error("VtUnalignedString must have positive length");return Bi(e,r,0)}function zi(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a){var n=e.l;t[a]=e._R(0,"lpwstr").replace(P,"");if(e.l-n&2)e.l+=2}return t}function Vi(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a)t[a]=e._R(0,"lpstr-cp").replace(P,"");return t}function Gi(e){var r=e.l;var t=Ki(e,zn);if(e[e.l]==0&&e[e.l+1]==0&&e.l-r&2)e.l+=2;var a=Ki(e,In);return[t,a]}function $i(e){var r=e._R(4);var t=[];for(var a=0;a>2+1<<2;return a}function Xi(e){var r=e._R(4);var t=e.slice(e.l,e.l+r);e.l+=r;if((r&3)>0)e.l+=4-(r&3)&3;return t}function Yi(e){var r={};r.Size=e._R(4);e.l+=r.Size+3-(r.Size-1)%4;return r}function Ki(e,r,t){var a=e._R(2),n,i=t||{};e.l+=2;if(r!==Dn)if(a!==r&&Vn.indexOf(r)===-1&&!((r&65534)==4126&&(a&65534)==4126))throw new Error("Expected type "+r+" saw "+a);switch(r===Dn?a:r){case 2:n=e._R(2,"i");if(!i.raw)e.l+=2;return n;case 3:n=e._R(4,"i");return n;case 11:return e._R(4)!==0;case 19:n=e._R(4);return n;case 30:return Mi(e,a,4).replace(P,"");case 31:return Ui(e);case 64:return Pi(e);case 65:return Xi(e);case 71:return Yi(e);case 80:return Wi(e,a,!i.raw).replace(P,"");case 81:return Hi(e,a).replace(P,"");case 4108:return $i(e);case 4126:;case 4127:return a==4127?zi(e):Vi(e);default:throw new Error("TypedPropertyValue unrecognized type "+r+" "+a);}}function Zi(e,r){var t=wa(4),a=wa(4);t._W(4,e==80?31:e);switch(e){case 3:a._W(-4,r);break;case 5:a=wa(8);a._W(8,r,"f");break;case 11:a._W(4,r?1:0);break;case 64:a=Li(r);break;case 31:;case 80:a=wa(4+2*(r.length+1)+(r.length%2?0:2));a._W(4,r.length+1);a._W(0,r,"dbcs");while(a.l!=a.length)a._W(1,0);break;default:throw new Error("TypedPropertyValue unrecognized type "+e+" "+r);}return F([t,a])}function Ji(e,r){var t=e.l;var a=e._R(4);var n=e._R(4);var i=[],s=0;var f=0;var l=-1,c={};for(s=0;s!=n;++s){var h=e._R(4);var u=e._R(4);i[s]=[h,u+t]}i.sort(function(e,r){return e[1]-r[1]});var d={};for(s=0;s!=n;++s){if(e.l!==i[s][1]){var p=true;if(s>0&&r)switch(r[i[s-1][0]].t){case 2:if(e.l+2===i[s][1]){e.l+=2;p=false}break;case 80:if(e.l<=i[s][1]){e.l=i[s][1];p=false}break;case 4108:if(e.l<=i[s][1]){e.l=i[s][1];p=false}break;}if((!r||s==0)&&e.l<=i[s][1]){p=false;e.l=i[s][1]}if(p)throw new Error("Read Error: Expected address "+i[s][1]+" at "+e.l+" :"+s)}if(r){if(i[s][0]==0&&i.length>s+1&&i[s][1]==i[s+1][1])continue;var v=r[i[s][0]];d[v.n]=Ki(e,v.t,{raw:true});if(v.p==="version")d[v.n]=String(d[v.n]>>16)+"."+("0000"+String(d[v.n]&65535)).slice(-4);if(v.n=="CodePage")switch(d[v.n]){case 0:d[v.n]=1252;case 874:;case 932:;case 936:;case 949:;case 950:;case 1250:;case 1251:;case 1253:;case 1254:;case 1255:;case 1256:;case 1257:;case 1258:;case 1e4:;case 1200:;case 1201:;case 1252:;case 65e3:;case-536:;case 65001:;case-535:o(f=d[v.n]>>>0&65535);break;default:throw new Error("Unsupported CodePage: "+d[v.n]);}}else{if(i[s][0]===1){f=d.CodePage=Ki(e,Nn);o(f);if(l!==-1){var m=e.l;e.l=i[l][1];c=ji(e,f);e.l=m}}else if(i[s][0]===0){if(f===0){l=s;e.l=i[s+1][1];continue}c=ji(e,f)}else{var g=c[i[s][0]];var b;switch(e[e.l]){case 65:e.l+=4;b=Xi(e);break;case 30:e.l+=4;b=Wi(e,e[e.l-4]).replace(/\u0000+$/,"");break;case 31:e.l+=4;b=Wi(e,e[e.l-4]).replace(/\u0000+$/,"");break;case 3:e.l+=4;b=e._R(4,"i");break;case 19:e.l+=4;b=e._R(4);break;case 5:e.l+=4;b=e._R(8,"f");break;case 11:e.l+=4;b=ss(e,4);break;case 64:e.l+=4;b=Ar(Pi(e));break;default:throw new Error("unparsed value: "+e[e.l]);}d[g]=b}}}e.l=t+a;return d}var qi=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function Qi(e){switch(typeof e){case"boolean":return 11;case"number":return(e|0)==e?3:5;case"string":return 31;case"object":if(e instanceof Date)return 64;break;}return-1}function es(e,r,t){var a=wa(8),n=[],i=[];var s=8,f=0;var o=wa(8),l=wa(8);o._W(4,2);o._W(4,1200);l._W(4,1);i.push(o);n.push(l);s+=8+o.length;if(!r){l=wa(8);l._W(4,0);n.unshift(l);var c=[wa(4)];c[0]._W(4,e.length);for(f=0;f-1||Ei.indexOf(e[f][0])>-1)continue;if(e[f][1]==null)continue;var u=e[f][1],d=0;if(r){d=+r[e[f][0]];var p=t[d];if(p.p=="version"&&typeof u=="string"){var v=u.split(".");u=(+v[0]<<16)+(+v[1]||0)}o=Zi(p.t,u)}else{var m=Qi(u);if(m==-1){m=31;u=String(u)}o=Zi(m,u)}i.push(o);l=wa(8);l._W(4,!r?2+f:d);n.push(l);s+=8+o.length}var g=8*(i.length+1);for(f=0;f=12?2:1);var i="sbcs-cont";var s=r;if(a&&a.biff>=8)r=1200;if(!a||a.biff==8){var f=e._R(1);if(f){i="dbcs-cont"}}else if(a.biff==12){i="wstr"}if(a.biff>=2&&a.biff<=5)i="cpstr";var o=n?e._R(n,i):"";r=s;return o}function ps(e){var t=r;r=1200;var a=e._R(2),n=e._R(1);var i=n&4,s=n&8;var f=1+(n&1);var o=0,l;var c={};if(s)o=e._R(2);if(i)l=e._R(4);var h=f==2?"dbcs-cont":"sbcs-cont";var u=a===0?"":e._R(a,h);if(s)e.l+=4*o;if(i)e.l+=l;c.t=u;if(!s){c.raw=""+c.t+"";c.r=c.t}r=t;return c}function vs(e){var r=e.t||"",t=1;var a=wa(3+(t>1?2:0));a._W(2,r.length);a._W(1,(t>1?8:0)|1);if(t>1)a._W(2,t);var n=wa(2*r.length);n._W(2*r.length,r,"utf16le");var i=[a,n];return F(i)}function ms(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 gs(e,r,t){var a=e._R(t&&t.biff==2?1:2);if(a===0){e.l++;return""}return ms(e,a,t)}function bs(e,r,t){if(t.biff>5)return gs(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 ws(e,r,t){if(!t)t=wa(3+2*e.length);t._W(2,e.length);t._W(1,1);t._W(31,e,"utf16le");return t}function ks(e){var r=e._R(1);e.l++;var t=e._R(2);e.l+=2;return[r,t]}function As(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(P,"");if(a)e.l+=24;return n}function Ts(e){var r=e._R(2);var t="";while(r-- >0)t+="../";var a=e._R(0,"lpstr-ansi");e.l+=2;if(e._R(2)!=57005)throw new Error("Bad FileMoniker");var n=e._R(4);if(n===0)return t+a.replace(/\\/g,"/");var i=e._R(4);if(e._R(2)!=3)throw new Error("Bad FileMoniker");var s=e._R(i>>1,"utf16le").replace(P,"");return t+s}function Es(e,r){var t=e._R(16);r-=16;switch(t){case"e0c9ea79f9bace118c8200aa004ba90b":return As(e,r);case"0303000000000000c000000000000046":return Ts(e,r);default:throw new Error("Unsupported Moniker "+t);}}function ys(e){var r=e._R(4);var t=r>0?e._R(r,"utf16le").replace(P,""):"";return t}function Cs(e,r){if(!r)r=wa(6+e.length*2);r._W(4,1+e.length);for(var t=0;t-1?31:23;switch(a.charAt(0)){case"#":i=28;break;case".":i&=~2;break;}r._W(4,2);r._W(4,i);var s=[8,6815827,6619237,4849780,83];for(t=0;t-1?a.slice(0,n):a;r._W(4,2*(f.length+1));for(t=0;t-1?a.slice(n+1):"",r)}else{s="03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46".split(" ");for(t=0;t8?4:2;var n=e._R(a),i=e._R(a,"i"),s=e._R(a,"i");return[n,i,s]}function Ps(e){var r=e._R(2);var t=mn(e);return[r,t]}function Ls(e,r,t){e.l+=4;r-=4;var a=e.l+r;var n=ds(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 Ms(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 Us(e,r){if(!r)r=wa(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 Bs(e){var r=e._R(2);var t=e._R(2);var a=e._R(1);var n=e._R(1);return{s:{c:a,r:r},e:{c:n,r:t}}}var Ws=Bs;function Hs(e){e.l+=4;var r=e._R(2);var t=e._R(2);var a=e._R(2);e.l+=12;return[t,r,a]}function zs(e){var r={};e.l+=4;e.l+=16;r.fSharedNote=e._R(2);e.l+=4;return r}function Vs(e){var r={};e.l+=4;e.cf=e._R(2);return r}function Gs(e){e.l+=2;e.l+=e._R(2)}var $s={0:Gs,4:Gs,5:Gs,6:Gs,7:Vs,8:Gs,9:Gs,10:Gs,11:Gs,12:Gs,13:zs,14:Gs,15:Gs,16:Gs,17:Gs,18:Gs,19:Gs,20:Gs,21:Hs};function js(e,r){var t=e.l+r;var a=[];while(e.l=2){t.dt=e._R(2);e.l-=2}switch(t.BIFFVer){case 1536:;case 1280:;case 1024:;case 768:;case 512:;case 2:;case 7:break;default:if(r>6)throw new Error("Unexpected BIFF Ver "+t.BIFFVer);}e._R(r);return t}function Ys(e,r,t){var a=1536,n=16;switch(t.bookType){case"biff8":break;case"biff5":a=1280;n=8;break;case"biff4":a=4;n=6;break;case"biff3":a=3;n=6;break;case"biff2":a=2;n=4;break;case"xla":break;default:throw new Error("unsupported BIFF version");}var i=wa(n);i._W(2,a);i._W(2,r);if(n>4)i._W(2,29282);if(n>6)i._W(2,1997);if(n>8){i._W(2,49161);i._W(2,1);i._W(2,1798);i._W(2,0)}return i}function Ks(e,r){if(r===0)return 1200;if(e._R(2)!==1200){}return 1200}function Zs(e,r,t){if(t.enc){e.l+=r;return""}var a=e.l;var n=bs(e,0,t);e._R(r+a-e.l);return n}function Js(e,r){var t=!r||r.biff==8;var a=wa(t?112:54);a._W(r.biff==8?2:1,7);if(t)a._W(1,0);a._W(4,859007059);a._W(4,5458548|(t?0:536870912));while(a.l=8?2:1;var a=wa(8+t*e.name.length);a._W(4,e.pos);a._W(1,e.hs||0);a._W(1,e.dt);a._W(1,e.name.length);if(r.biff>=8)a._W(1,1);a._W(t*e.name.length,e.name,r.biff<8?"sbcs":"utf16le");var n=a.slice(0,a.l);n.l=a.l;return n}function rf(e,r){var t=e.l+r;var a=e._R(4);var n=e._R(4);var i=[];for(var s=0;s!=n&&e.l>15);n&=32767}var i={Unsynced:a&1,DyZero:(a&2)>>1,ExAsc:(a&4)>>2,ExDsc:(a&8)>>3};return[i,n]}function lf(e){var r=e._R(2),t=e._R(2),a=e._R(2),n=e._R(2);var i=e._R(2),s=e._R(2),f=e._R(2);var o=e._R(2),l=e._R(2);return{Pos:[r,t],Dim:[a,n],Flags:i,CurTab:s,FirstTab:f,Selected:o,TabRatio:l}}function cf(){var e=wa(18);e._W(2,0);e._W(2,0);e._W(2,29280);e._W(2,17600);e._W(2,56);e._W(2,0);e._W(2,0);e._W(2,1);e._W(2,500);return e}function hf(e,r,t){if(t&&t.biff>=2&&t.biff<5)return{};var a=e._R(2);return{RTL:a&64}}function uf(e){var r=wa(18),t=1718;if(e&&e.RTL)t|=64;r._W(2,t);r._W(4,0);r._W(4,64);r._W(4,0);r._W(4,0);return r}function df(){}function pf(e,r,t){var a={dyHeight:e._R(2),fl:e._R(2)};switch(t&&t.biff||8){case 2:break;case 3:;case 4:e.l+=2;break;default:e.l+=10;break;}a.name=ds(e,0,t);return a}function vf(e,r){var t=e.name||"Arial";var a=r&&r.biff==5,n=a?15+t.length:16+2*t.length;var i=wa(n);i._W(2,(e.sz||12)*20);i._W(4,0);i._W(2,400);i._W(4,0);i._W(2,0);i._W(1,t.length);if(!a)i._W(1,1);i._W((a?1:2)*t.length,t,a?"sbcs":"utf16le");return i}function mf(e){var r=Rs(e);r.isst=e._R(4);return r}function gf(e,r,t,a){var n=wa(10);Ns(e,r,a,n);n._W(4,t);return n}function bf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=e.l+r;var n=Rs(e,6);if(t.biff==2)e.l++;var i=gs(e,a-e.l,t);n.val=i;return n}function wf(e,r,t,a,n){var i=!n||n.biff==8;var s=wa(6+2+ +i+(1+i)*t.length);Ns(e,r,a,s);s._W(2,t.length);if(i)s._W(1,1);s._W((1+i)*t.length,t,i?"utf16le":"sbcs");return s}function kf(e,r,t){var a=e._R(2);var n=bs(e,0,t);return[a,n]}function Af(e,r,t,a){var n=t&&t.biff==5;if(!a)a=wa(n?3+r.length:5+2*r.length);a._W(2,e);a._W(n?1:2,r.length);if(!n)a._W(1,1);a._W((n?1:2)*r.length,r,n?"sbcs":"utf16le");var i=a.length>a.l?a.slice(0,a.l):a;if(i.l==null)i.l=i.length;return i}var Tf=bs;function Ef(e,r,t){var a=e.l+r;var n=t.biff==8||!t.biff?4:2;var i=e._R(n),s=e._R(n);var f=e._R(2),o=e._R(2);e.l=a;return{s:{r:i,c:f},e:{r:s,c:o}}}function yf(e,r){var t=r.biff==8||!r.biff?4:2;var a=wa(2*t+6);a._W(t,e.s.r);a._W(t,e.e.r+1);a._W(2,e.s.c);a._W(2,e.e.c+1);a._W(2,0);return a}function Cf(e){var r=e._R(2),t=e._R(2);var a=Ps(e);return{r:r,c:t,ixfe:a[0],rknum:a[1]}}function Sf(e,r){var t=e.l+r-2;var a=e._R(2),n=e._R(2);var i=[];while(e.l>26];if(!a.cellStyles)return n;n.alc=i&7;n.fWrap=i>>3&1;n.alcV=i>>4&7;n.fJustLast=i>>7&1;n.trot=i>>8&255;n.cIndent=i>>16&15;n.fShrinkToFit=i>>20&1;n.iReadOrder=i>>22&2;n.fAtrNum=i>>26&1;n.fAtrFnt=i>>27&1;n.fAtrAlc=i>>28&1;n.fAtrBdr=i>>29&1;n.fAtrPat=i>>30&1;n.fAtrProt=i>>31&1;n.dgLeft=s&15;n.dgRight=s>>4&15;n.dgTop=s>>8&15;n.dgBottom=s>>12&15;n.icvLeft=s>>16&127;n.icvRight=s>>23&127;n.grbitDiag=s>>30&3;n.icvTop=f&127;n.icvBottom=f>>7&127;n.icvDiag=f>>14&127;n.dgDiag=f>>21&15;n.icvFore=o&127;n.icvBack=o>>7&127;n.fsxButton=o>>14&1;return n}function Of(e,r,t){var a={};a.ifnt=e._R(2);a.numFmtId=e._R(2);a.flags=e._R(2);a.fStyle=a.flags>>2&1;r-=6;a.data=xf(e,r,a.fStyle,t);return a}function Rf(e,r,t,a){var n=t&&t.biff==5;if(!a)a=wa(n?16:20);a._W(2,0);if(e.style){a._W(2,e.numFmtId||0);a._W(2,65524)}else{a._W(2,e.numFmtId||0);a._W(2,r<<4)}var i=0;if(e.numFmtId>0&&n)i|=1024;a._W(4,i);a._W(4,0);if(!n)a._W(4,0);a._W(2,0);return a}function Nf(e){e.l+=4;var r=[e._R(2),e._R(2)];if(r[0]!==0)r[0]--;if(r[1]!==0)r[1]--;if(r[0]>7||r[1]>7)throw new Error("Bad Gutters: "+r.join("|"));return r}function If(e){var r=wa(8);r._W(4,0);r._W(2,e[0]?e[0]+1:0);r._W(2,e[1]?e[1]+1:0);return r}function Ff(e,r,t){var a=Rs(e,6);if(t.biff==2||r==9)++e.l;var n=hs(e,2);a.val=n;a.t=n===true||n===false?"b":"e";return a}function Df(e,r,t,a,n,i){var s=wa(8);Ns(e,r,a,s);us(t,i,s);return s}function Pf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=Rs(e,6);var n=Tn(e,8);a.val=n;return a}function Lf(e,r,t,a){var n=wa(14);Ns(e,r,a,n);En(t,n);return n}var Mf=Fs;function Uf(e,r,t){var a=e.l+r;var n=e._R(2);var i=e._R(2);t.sbcch=i;if(i==1025||i==14849)return[i,n];if(i<1||i>255)throw new Error("Unexpected SupBook type: "+i);var s=ms(e,i);var f=[];while(a>e.l)f.push(gs(e));return[i,n,s,f]}function Bf(e,r,t){var a=e._R(2);var n;var i={fBuiltIn:a&1,fWantAdvise:a>>>1&1,fWantPict:a>>>2&1,fOle:a>>>3&1,fOleLink:a>>>4&1,cf:a>>>5&1023,fIcon:a>>>15&1};if(t.sbcch===14849)n=Ls(e,r-2,t);i.body=n||e._R(r-2);if(typeof n==="string")i.Name=n;return i}function Wf(e,r,t){var a=e.l+r;var n=e._R(2);var i=e._R(1);var s=e._R(1);var f=e._R(t&&t.biff==2?1:2);var o=0;if(!t||t.biff>=5){if(t.biff!=5)e.l+=2;o=e._R(2);if(t.biff==5)e.l+=2;e.l+=4}var l=ms(e,s,t);if(n&32)l=Qn[l.charCodeAt(0)];var c=a-e.l;if(t&&t.biff==2)--c;var h=a==e.l||f===0||!(c>0)?[]:kd(e,c,t,f);return{chKey:i,Name:l,itab:o,rgce:h}}function Hf(e,r,t){if(t.biff<8)return zf(e,r,t);var a=[],n=e.l+r,i=e._R(t.biff>8?4:2);while(i--!==0)a.push(Ds(e,t.biff>8?12:6,t));if(e.l!=n)throw new Error("Bad ExternSheet: "+e.l+" != "+n);return a}function zf(e,r,t){if(e[e.l+1]==3)e[e.l]++;var a=ds(e,r,t);return a.charCodeAt(0)==3?a.slice(1):a}function Vf(e,r,t){if(t.biff<8){e.l+=r;return}var a=e._R(2);var n=e._R(2);var i=ms(e,a,t);var s=ms(e,n,t);return[i,s]}function Gf(e,r,t){var a=Bs(e,6);e.l++;var n=e._R(1);r-=8;return[Ad(e,r,t),n,a]}function $f(e,r,t){var a=Ws(e,6);switch(t.biff){case 2:e.l++;r-=7;break;case 3:;case 4:e.l+=2;r-=8;break;default:e.l+=6;r-=12;}return[a,bd(e,r,t,a)]}function jf(e){var r=e._R(4)!==0;var t=e._R(4)!==0;var a=e._R(4);return[r,t,a]}function Xf(e,r,t){if(t.biff<8)return;var a=e._R(2),n=e._R(2);var i=e._R(2),s=e._R(2);var f=bs(e,0,t);if(t.biff<8)e._R(1);return[{r:a,c:n},f,s,i]}function Yf(e,r,t){return Xf(e,r,t)}function Kf(e,r){var t=[];var a=e._R(2);while(a--)t.push(Ms(e,r));return t}function Zf(e){var r=wa(2+e.length*8);r._W(2,e.length);for(var t=0;t=(c?f:2*f))break}if(n.length!==f&&n.length!==f*2){throw new Error("cchText: "+f+" != "+n.length)}e.l=a+r;return{t:n}}catch(u){e.l=a+r;return{t:n}}}function ro(e,r){var t=Ms(e,8);e.l+=16;var a=Ss(e,r-24);return[t,a]}function to(e){var r=wa(24);var t=La(e[0]);r._W(2,t.r);r._W(2,t.r);r._W(2,t.c);r._W(2,t.c);var a="d0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" ");for(var n=0;n<16;++n)r._W(1,parseInt(a[n],16));return F([r,_s(e[1])])}function ao(e,r){e._R(2);var t=Ms(e,8);var a=e._R((r-10)/2,"dbcs-cont");a=a.replace(P,"");return[t,a]}function no(e){var r=e[1].Tooltip;var t=wa(10+2*(r.length+1));t._W(2,2048);var a=La(e[0]);t._W(2,a.r);t._W(2,a.r);t._W(2,a.c);t._W(2,a.c);for(var n=0;n0)t.push(Os(e,8));return t}function oo(e){var r=e._R(2);var t=[];while(r-- >0)t.push(Os(e,8));return t}function lo(e){e.l+=2;var r={cxfs:0,crc:0};r.cxfs=e._R(2);r.crc=e._R(4);return r}function co(e,r,t){if(!t.cellStyles)return ba(e,r);var a=t&&t.biff>=12?4:2;var n=e._R(a);var i=e._R(a);var s=e._R(a);var f=e._R(a);var o=e._R(2);if(a==2)e.l+=2;var l={s:n,e:i,w:s,ixfe:f,flags:o};if(t.biff>=5||!t.biff)l.level=o>>8&7;return l}function ho(e,r){var t=wa(12);t._W(2,r);t._W(2,r);t._W(2,e.width*256);t._W(2,0);var a=0;if(e.hidden)a|=1;t._W(1,a);a=e.level||0;t._W(1,a);t._W(2,0);return t}function uo(e,r){var t={};if(r<32)return t;e.l+=16;t.header=Tn(e,8);t.footer=Tn(e,8);e.l+=2;return t}function po(e,r,t){var a={area:false};if(t.biff!=5){e.l+=r;return a}var n=e._R(1);e.l+=3;if(n&16)a.area=true;return a}function vo(e){var r=wa(2*e);for(var t=0;t1048576)c=1e6;if(s!=2)h=i._R(2);var u=i._R(2);var d=t.codepage||1252;if(s!=2){i.l+=16;i._R(1);if(i[i.l]!==0)d=e[i[i.l]];i.l+=1;i.l+=2}if(l)i.l+=36;var p=[],v={};var m=Math.min(i.length,s==2?521:h-10-(o?264:0));var g=l?32:11;while(i.l0){if(i[i.l]===42){i.l+=u;continue}++i.l;n[++b]=[];w=0;for(w=0;w!=p.length;++w){var k=i.slice(i.l,i.l+p[w].len);i.l+=p[w].len;ga(k,0);var A=typeof a!=="undefined"?a.utils.decode(d,k):R(k);switch(p[w].type){case"C":if(A.trim().length)n[b][w]=A.replace(/\s+$/,"");break;case"D":if(A.length===8)n[b][w]=new Date(+A.slice(0,4),+A.slice(4,6)-1,+A.slice(6,8));else n[b][w]=A;break;case"F":n[b][w]=parseFloat(A.trim());break;case"+":;case"I":n[b][w]=l?k._R(-4,"i")^2147483648:k._R(4,"i");break;case"L":switch(A.trim().toUpperCase()){case"Y":;case"T":n[b][w]=true;break;case"N":;case"F":n[b][w]=false;break;case"":;case"?":break;default:throw new Error("DBF Unrecognized L:|"+A+"|");}break;case"M":if(!f)throw new Error("DBF Unexpected MEMO for type "+s.toString(16));n[b][w]="##MEMO##"+(l?parseInt(A.trim(),10):k._R(4));break;case"N":A=A.replace(/\u0000/g,"").trim();if(A&&A!=".")n[b][w]=+A||0;break;case"@":n[b][w]=new Date(k._R(-8,"f")-621356832e5);break;case"T":n[b][w]=new Date((k._R(4)-2440588)*864e5+k._R(4));break;case"Y":n[b][w]=k._R(4,"i")/1e4+k._R(4,"i")/1e4*Math.pow(2,32);break;case"O":n[b][w]=-k._R(-8,"f");break;case"B":if(o&&p[w].len==8){n[b][w]=k._R(8,"f");break};case"G":;case"P":k.l+=p[w].len;break;case"0":if(p[w].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+p[w].type);}}}if(s!=2)if(i.l=0)o(+f.codepage);if(f.type=="string")throw new Error("Cannot write DBF to JS string");var h=Aa();var u=ek(i,{header:1,raw:true,cellDates:true});var d=u[0],p=u.slice(1),v=i["!cols"]||[];var m=0,g=0,b=0,w=1;for(m=0;m250)S=250;C=((v[m]||{}).DBF||{}).type;if(C=="C"){if(v[m].DBF.len>S)S=v[m].DBF.len}if(y=="B"&&C=="N"){y="N";E[m]=v[m].DBF.dec;S=v[m].DBF.len}T[m]=y=="C"||C=="N"?S:l[y]||0;w+=T[m];A[m]=y}var x=h.next(32);x._W(4,318902576);x._W(4,p.length);x._W(2,296+32*b);x._W(2,w);for(m=0;m<4;++m)x._W(4,0);var O=+n[r]||3;x._W(4,0|O<<8);if(e[O]!=+f.codepage){console.error("DBF Unsupported codepage "+r+", using 1252");r=1252}for(m=0,g=0;m":190,"?":191,"{":223};var r=new RegExp("N("+sr(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm");var t=function(r,t){var a=e[t];return typeof a=="number"?v(a):a};var n=function(e,r,t){var a=r.charCodeAt(0)-32<<4|t.charCodeAt(0)-48;return a==59?e:v(a)};e["|"]=254;function i(e,r){switch(r.type){case"base64":return s(T(e),r);case"binary":return s(e,r);case"buffer":return s(E&&Buffer.isBuffer(e)?e.toString("binary"):R(e),r);case"array":return s(Tr(e),r);}throw new Error("Unrecognized type "+r.type)}function s(e,i){var s=e.split(/[\n\r]+/),f=-1,l=-1,c=0,h=0,u=[];var d=[];var p=null;var v={},m=[],g=[],b=[];var w=0,k;var A={Workbook:{WBProps:{},Names:[]}};if(+i.codepage>=0)o(+i.codepage);for(;c!==s.length;++c){w=0;var T=s[c].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,n).replace(r,t);var E=T.replace(/;;/g,"\0").split(";").map(function(e){return e.replace(/\u0000/g,";")});var y=E[0],C;if(T.length>0)switch(y){case"ID":break;case"E":break;case"B":break;case"O":for(h=1;h=1&&S<=4)A.Workbook.WBProps.date1904=true}break;}break;case"W":break;case"P":switch(E[1].charAt(0)){case"P":d.push(T.slice(3).replace(/;;/g,";"));break;}break;case"NN":{var _={Sheet:0};for(h=1;h-1&&u[I][F];if(!L||!L[1])throw new Error("SYLK shared formula cannot find base");D=Bh(L[1],{r:f-I,c:l-F})}if(D){if(!u[f][l])u[f][l]={t:"n",f:D};else u[f][l].f=D}break;case"F":var M=0;for(h=1;h0){m[f].hpt=w;m[f].hpx=$l(w)}else if(w===0)m[f].hidden=true;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+T);}if(M<1)p=null;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+T);}}if(m.length>0)v["!rows"]=m;if(g.length>0)v["!cols"]=g;g.forEach(function(e){Hl(e)});if(i&&i.sheetRows)u=u.slice(0,i.sheetRows);return[u,v,A]}function f(e,r){var t=i(e,r);var a=t[0],n=t[1],s=t[2];var f=Er(r);f.date1904=(((s||{}).Workbook||{}).WBProps||{}).date1904;var o=Xa(a,f);sr(n).forEach(function(e){o[e]=n[e]});var l=$a(o,r);sr(s).forEach(function(e){l[e]=s[e]});l.bookType="sylk";return l}function l(e,r,t,a){var n="C;Y"+(t+1)+";X"+(a+1)+";K";switch(e.t){case"n":n+=e.v||0;if(e.f&&!e.F)n+=";E"+Uh(e.f,{r:t,c:a});break;case"b":n+=e.v?"TRUE":"FALSE";break;case"e":n+=e.w||e.v;break;case"d":n+='"'+(e.w||e.v)+'"';break;case"s":n+='"'+e.v.replace(/"/g,"").replace(/;/g,";;")+'"';break;}return n}function c(e,r){r.forEach(function(r,t){var a="F;W"+(t+1)+" "+(t+1)+" ";if(r.hidden)a+="0";else{if(typeof r.width=="number"&&!r.wpx)r.wpx=Ll(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=Ml(r.wpx);if(typeof r.wch=="number")a+=Math.round(r.wch)}if(a.charAt(a.length-1)!=" ")e.push(a)})}function h(e,r){r.forEach(function(r,t){var a="F;";if(r.hidden)a+="M0;";else if(r.hpt)a+="M"+20*r.hpt+";";else if(r.hpx)a+="M"+20*Gl(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function u(e,r,t){var a=["ID;PSheetJS;N;E"],n=[];var i=za(e["!ref"]),s;var f=Array.isArray(e);var o="\r\n";var u=(((t||{}).Workbook||{}).WBProps||{}).date1904;a.push("P;PGeneral");a.push("F;P0;DG0G8;M255");if(e["!cols"])c(a,e["!cols"]);if(e["!rows"])h(a,e["!rows"]);a.push("B;Y"+(i.e.r-i.s.r+1)+";X"+(i.e.c-i.s.c+1)+";D"+[i.s.c,i.s.r,i.e.c,i.e.r].join(" "));a.push("O;L;D;B"+(u?";V4":"")+";K47;G100 0.001");for(var d=i.s.r;d<=i.e.r;++d){var p=[];for(var v=i.s.c;v<=i.e.c;++v){var m=Ma({r:d,c:v});s=f?(e[d]||[])[v]:e[m];if(!s||s.v==null&&(!s.f||s.F))continue;p.push(l(s,e,d,v,r))}n.push(p.join(o))}return a.join(o)+o+n.join(o)+o+"E"+o}return{to_workbook:f,from_sheet:u}}();var No=function(){function e(e,t){switch(t.type){case"base64":return r(T(e),t);case"binary":return r(e,t);case"buffer":return r(E&&Buffer.isBuffer(e)?e.toString("binary"):R(e),t);case"array":return r(Tr(e),t);}throw new Error("Unrecognized type "+t.type)}function r(e,r){var t=e.split("\n"),a=-1,n=-1,i=0,s=[];for(;i!==t.length;++i){if(t[i].trim()==="BOT"){s[++a]=[];n=0;continue}if(a<0)continue;var f=t[i].trim().split(",");var o=f[0],l=f[1];++i;var c=t[i]||"";while((c.match(/["]/g)||[]).length&1&&i=0&&i[s].length===0)--s;var f=10,o=0;var l=0;for(;l<=s;++l){o=i[l].indexOf(" ");if(o==-1)o=i[l].length;else o++;f=Math.max(f,o)}for(l=0;l<=s;++l){n[l]=[];var c=0;e(i[l].slice(0,f).trim(),n,l,c,a);for(c=1;c<=(i[l].length-f)/10+1;++c)e(i[l].slice(f+(c-1)*10,f+c*10).trim(),n,l,c,a)}if(a.sheetRows)n=n.slice(0,a.sheetRows);return n}var t={44:",",9:"\t",59:";",124:"|"};var n={44:3,9:2,59:1,124:0};function i(e){var r={},a=false,i=0,s=0;for(;i0)b();n["!ref"]=Ba(s);return n}function f(e,t){if(!(t&&t.PRN))return s(e,t);if(t.FS)return s(e,t);if(e.slice(0,4)=="sep=")return s(e,t);if(e.indexOf("\t")>=0||e.indexOf(",")>=0||e.indexOf(";")>=0)return s(e,t);return Xa(r(e,t),t)}function o(e,r){var t="",n=r.type=="string"?[0,0,0,0]:xw(e,r);switch(r.type){case"base64":t=T(e);break;case"binary":t=e;break;case"buffer":if(r.codepage==65001)t=e.toString("utf8");else if(r.codepage&&typeof a!=="undefined")t=a.utils.decode(r.codepage,e);else t=E&&Buffer.isBuffer(e)?e.toString("binary"):R(e);break;case"array":t=Tr(e);break;case"string":t=e;break;default:throw new Error("Unrecognized type "+r.type);}if(n[0]==239&&n[1]==187&&n[2]==191)t=mt(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=mt(t);else if(r.type=="binary"&&typeof a!=="undefined"&&r.codepage)t=a.utils.decode(r.codepage,a.utils.encode(28591,t));if(t.slice(0,19)=="socialcalc:version:")return Io.to_sheet(r.type=="string"?t:mt(t),r);return f(t,r)}function l(e,r){return $a(o(e,r),r)}function c(e){var r=[];var t=za(e["!ref"]),a;var n=Array.isArray(e);for(var i=t.s.r;i<=t.e.r;++i){var s=[];for(var f=t.s.c;f<=t.e.c;++f){var o=Ma({r:i,c:f});a=n?(e[i]||[])[f]:e[o];if(!a||a.v==null){s.push(" ");continue}var l=(a.w||(Ga(a),a.w)||"").slice(0,10);while(l.length<10)l+=" ";s.push(l+(f===0?" ":""))}r.push(s.join(""))}return r.join("\n")}return{to_workbook:l,to_sheet:o,from_sheet:c}}();function Do(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=Ro.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 Fo.to_workbook(e,r)}}var Po=function(){function e(e,r,t){if(!e)return;ga(e,e.l||0);var a=t.Enum||H;while(e.l=16&&r[14]==5&&r[15]===108)throw new Error("Unsupported Works 3 for Mac file")}}if(r[2]==2){a.Enum=H;e(r,function(e,r,t){switch(t){case 0:a.vers=e;if(e>=4096)a.qpro=true;break;case 255:a.vers=e;a.works=true;break;case 6:h=e;break;case 204:if(e)s=e;break;case 222:s=e;break;case 15:;case 51:if((!a.qpro&&!a.works||t==51)&&e[1].v.charCodeAt(0)<48)e[1].v=e[1].v.slice(1);if(a.works||a.works2)e[1].v=e[1].v.replace(/\r\n/g,"\n");case 13:;case 14:;case 16:if(t==14&&(e[2]&112)==112&&(e[2]&15)>1&&(e[2]&15)<15){e[1].z=a.dateNF||Z[14];if(a.cellDates){e[1].t="d";e[1].v=mr(e[1].v)}}if(a.qpro){if(e[3]>f){n["!ref"]=Ba(h);o[i]=n;l.push(i);n=a.dense?[]:{};h={s:{r:0,c:0},e:{r:0,c:0}};f=e[3];i=s||"Sheet"+(f+1);s=""}}var c=a.dense?(n[e[0].r]||[])[e[0].c]:n[Ma(e[0])];if(c){c.t=e[1].t;c.v=e[1].v;if(e[1].z!=null)c.z=e[1].z;if(e[1].f!=null)c.f=e[1].f;break}if(a.dense){if(!n[e[0].r])n[e[0].r]=[];n[e[0].r][e[0].c]=e[1]}else n[Ma(e[0])]=e[1];break;case 21509:a.works2=true;break;default:;}},a)}else if(r[2]==26||r[2]==14){a.Enum=z;if(r[2]==14){a.qpro=true;r.l=0}e(r,function(e,r,t){switch(t){case 204:i=e;break;case 22:if(e[1].v.charCodeAt(0)<48)e[1].v=e[1].v.slice(1);e[1].v=e[1].v.replace(/\x0F./g,function(e){return String.fromCharCode(e.charCodeAt(1)-32)}).replace(/\r\n/g,"\n");case 23:;case 24:;case 25:;case 37:;case 39:;case 40:if(e[3]>f){n["!ref"]=Ba(h);o[i]=n;l.push(i);n=a.dense?[]:{};h={s:{r:0,c:0},e:{r:0,c:0}};f=e[3];i="Sheet"+(f+1)}if(u>0&&e[0].r>=u)break;if(a.dense){if(!n[e[0].r])n[e[0].r]=[];n[e[0].r][e[0].c]=e[1]}else n[Ma(e[0])]=e[1];if(h.e.c=0)o(+t.codepage);if(t.type=="string")throw new Error("Cannot write WK1 to JS string");var a=Aa();var n=za(e["!ref"]);var s=Array.isArray(e);var f=[];Pg(a,0,i(1030));Pg(a,6,l(n));var c=Math.min(n.e.r,8191);for(var h=n.s.r;h<=c;++h){var d=xa(h);for(var p=n.s.c;p<=n.e.c;++p){if(h===n.s.r)f[p]=Ia(p);var m=f[p]+d;var g=s?(e[h]||[])[p]:e[m];if(!g||g.t=="z")continue;if(g.t=="n"){if((g.v|0)==g.v&&g.v>=-32768&&g.v<=32767)Pg(a,13,v(h,p,g.v));else Pg(a,14,b(h,p,g.v))}else{var w=Ga(g);Pg(a,15,u(h,p,w.slice(0,239)))}}}Pg(a,1);return a.end()}function n(e,r){var t=r||{};if(+t.codepage>=0)o(+t.codepage);if(t.type=="string")throw new Error("Cannot write WK3 to JS string");var a=Aa();Pg(a,0,s(e));for(var n=0,i=0;n8191)t=8191;r._W(2,t);r._W(1,n);r._W(1,a);r._W(2,0);r._W(2,0);r._W(1,1);r._W(1,2);r._W(4,0);r._W(4,0);return r}function f(e,r,t){var a={s:{c:0,r:0},e:{c:0,r:0}};if(r==8&&t.qpro){a.s.c=e._R(1);e.l++;a.s.r=e._R(2);a.e.c=e._R(1);e.l++;a.e.r=e._R(2);return a}a.s.c=e._R(2);a.s.r=e._R(2);if(r==12&&t.qpro)e.l+=2;a.e.c=e._R(2);a.e.r=e._R(2);if(r==12&&t.qpro)e.l+=2;if(a.s.c==65535)a.s.c=a.e.c=a.s.r=a.e.r=0;return a}function l(e){var r=wa(8);r._W(2,e.s.c);r._W(2,e.s.r);r._W(2,e.e.c);r._W(2,e.e.r);return r}function c(e,r,t){var a=[{c:0,r:0},{t:"n",v:0},0,0];if(t.qpro&&t.vers!=20768){a[0].c=e._R(1);a[3]=e._R(1);a[0].r=e._R(2);e.l+=2}else if(t.works){a[0].c=e._R(2);a[0].r=e._R(2);a[2]=e._R(2)}else{a[2]=e._R(1);a[0].c=e._R(2);a[0].r=e._R(2)}return a}function h(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].t="s";if(t.vers==20768){e.l++;var i=e._R(1);n[1].v=e._R(i,"utf8");return n}if(t.qpro)e.l++;n[1].v=e._R(a-e.l,"cstr");return n}function u(e,r,t){var a=wa(7+t.length);a._W(1,255);a._W(2,r);a._W(2,e);a._W(1,39);for(var n=0;n=128?95:i)}a._W(1,0);return a}function d(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].t="s";if(t.vers==20768){var i=e._R(1);n[1].v=e._R(i,"utf8");return n}n[1].v=e._R(a-e.l,"cstr");return n}function p(e,r,t){var a=c(e,r,t);a[1].v=e._R(2,"i");return a}function v(e,r,t){var a=wa(7);a._W(1,255);a._W(2,r);a._W(2,e);a._W(2,t,"i");return a}function m(e,r,t){var a=c(e,r,t);a[1].v=e._R(8,"f");return a}function b(e,r,t){var a=wa(13);a._W(1,255);a._W(2,r);a._W(2,e);a._W(8,t,"f");return a}function w(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].v=e._R(8,"f");if(t.qpro)e.l=a;else{var i=e._R(2);y(e.slice(e.l,e.l+i),n);e.l+=i}return n}function k(e,r,t){var a=r&32768;r&=~32768;r=(a?e:0)+(r>=8192?r-16384:r);return(a?"":"$")+(t?Ia(r):xa(r))}var A={31:["NA",0],33:["ABS",1],34:["TRUNC",1],35:["SQRT",1],36:["LOG",1],37:["LN",1],38:["PI",0],39:["SIN",1],40:["COS",1],41:["TAN",1],42:["ATAN2",2],43:["ATAN",1],44:["ASIN",1],45:["ACOS",1],46:["EXP",1],47:["MOD",2],49:["ISNA",1],50:["ISERR",1],51:["FALSE",0],52:["TRUE",0],53:["RAND",0],63:["ROUND",2],68:["ISNUMBER",1],69:["ISTEXT",1],70:["LEN",1],71:["VALUE",1],73:["MID",3],74:["CHAR",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],102:["UPPER",1],103:["LOWER",1],107:["PROPER",1],109:["TRIM",1],111:["T",1]};var E=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function y(e,r){ga(e,0);var t=[],a=0,n="",i="",s="",f="";while(e.lt.length){console.error("WK1 bad formula parse 0x"+o.toString(16)+":|"+t.join("|")+"|");return}var u=t.slice(-a);t.length-=a;t.push(A[o][0]+"("+u.join(",")+")")}else if(o<=7)return console.error("WK1 invalid opcode "+o.toString(16));else if(o<=24)return console.error("WK1 unsupported op "+o.toString(16));else if(o<=30)return console.error("WK1 invalid opcode "+o.toString(16));else if(o<=115)return console.error("WK1 unsupported function opcode "+o.toString(16));else return console.error("WK1 unrecognized opcode "+o.toString(16));}}if(t.length==1)r[1].f=""+t[0];else console.error("WK1 bad formula parse |"+t.join("|")+"|")}function C(e){var r=[{c:0,r:0},{t:"n",v:0},0];r[0].r=e._R(2);r[3]=e[e.l++];r[0].c=e[e.l++];return r}function S(e,r){var t=C(e,r);t[1].t="s";t[1].v=e._R(r-4,"cstr");return t}function _(e,r,t,a){var n=wa(6+a.length);n._W(2,e);n._W(1,t);n._W(1,r);n._W(1,39);for(var i=0;i=128?95:s)}n._W(1,0);return n}function O(e,r){var t=C(e,r);t[1].v=e._R(2);var a=t[1].v>>1;if(t[1].v&1){switch(a&7){case 0:a=(a>>3)*5e3;break;case 1:a=(a>>3)*500;break;case 2:a=(a>>3)/20;break;case 3:a=(a>>3)/200;break;case 4:a=(a>>3)/2e3;break;case 5:a=(a>>3)/2e4;break;case 6:a=(a>>3)/16;break;case 7:a=(a>>3)/64;break;}}t[1].v=a;return t}function R(e,r){var t=C(e,r);var a=e._R(4);var n=e._R(4);var i=e._R(2);if(i==65535){if(a===0&&n===3221225472){t[1].t="e";t[1].v=15}else if(a===0&&n===3489660928){t[1].t="e";t[1].v=42}else t[1].v=0;return t}var s=i&32768;i=(i&32767)-16446;t[1].v=(1-s*2)*(n*Math.pow(2,i+32)+a*Math.pow(2,i)); -return t}function N(e,r,t,a){var n=wa(14);n._W(2,e);n._W(1,t);n._W(1,r);if(a==0){n._W(4,0);n._W(4,0);n._W(2,65535);return n}var i=0,s=0,f=0,o=0;if(a<0){i=1;a=-a}s=Math.log2(a)|0;a/=Math.pow(2,s-31);o=a>>>0;if((o&2147483648)==0){a/=2;++s;o=a>>>0}a-=o;o|=2147483648;o>>>=0;a*=Math.pow(2,32);f=a>>>0;n._W(4,f);n._W(4,o);s+=16383+(i?32768:0);n._W(2,s);return n}function I(e,r){var t=R(e,14);e.l+=r-14;return t}function F(e,r){var t=C(e,r);var a=e._R(4);t[1].v=a>>6;return t}function D(e,r){var t=C(e,r);var a=e._R(8,"f");t[1].v=a;return t}function P(e,r){var t=D(e,12);e.l+=r-12;return t}function L(e,r){return e[e.l+r-1]==0?e._R(r,"cstr"):""}function M(e,r){var t=e[e.l++];if(t>r-1)t=r-1;var a="";while(a.length127?95:n}t[t.l++]=0;return t}var H={0:{n:"BOF",f:os},1:{n:"EOF"},2:{n:"CALCMODE"},3:{n:"CALCORDER"},4:{n:"SPLIT"},5:{n:"SYNC"},6:{n:"RANGE",f:f},7:{n:"WINDOW1"},8:{n:"COLW1"},9:{n:"WINTWO"},10:{n:"COLW2"},11:{n:"NAME"},12:{n:"BLANK"},13:{n:"INTEGER",f:p},14:{n:"NUMBER",f:m},15:{n:"LABEL",f:h},16:{n:"FORMULA",f:w},24:{n:"TABLE"},25:{n:"ORANGE"},26:{n:"PRANGE"},27:{n:"SRANGE"},28:{n:"FRANGE"},29:{n:"KRANGE1"},32:{n:"HRANGE"},35:{n:"KRANGE2"},36:{n:"PROTEC"},37:{n:"FOOTER"},38:{n:"HEADER"},39:{n:"SETUP"},40:{n:"MARGINS"},41:{n:"LABELFMT"},42:{n:"TITLES"},43:{n:"SHEETJS"},45:{n:"GRAPH"},46:{n:"NGRAPH"},47:{n:"CALCCOUNT"},48:{n:"UNFORMATTED"},49:{n:"CURSORW12"},50:{n:"WINDOW"},51:{n:"STRING",f:d},55:{n:"PASSWORD"},56:{n:"LOCKED"},60:{n:"QUERY"},61:{n:"QUERYNAME"},62:{n:"PRINT"},63:{n:"PRINTNAME"},64:{n:"GRAPH2"},65:{n:"GRAPHNAME"},66:{n:"ZOOM"},67:{n:"SYMSPLIT"},68:{n:"NSROWS"},69:{n:"NSCOLS"},70:{n:"RULER"},71:{n:"NNAME"},72:{n:"ACOMM"},73:{n:"AMACRO"},74:{n:"PARSE"},102:{n:"PRANGES??"},103:{n:"RRANGES??"},104:{n:"FNAME??"},105:{n:"MRANGES??"},204:{n:"SHEETNAMECS",f:L},222:{n:"SHEETNAMELP",f:M},255:{n:"BOF",f:os},65535:{n:""}};var z={0:{n:"BOF"},1:{n:"EOF"},2:{n:"PASSWORD"},3:{n:"CALCSET"},4:{n:"WINDOWSET"},5:{n:"SHEETCELLPTR"},6:{n:"SHEETLAYOUT"},7:{n:"COLUMNWIDTH"},8:{n:"HIDDENCOLUMN"},9:{n:"USERRANGE"},10:{n:"SYSTEMRANGE"},11:{n:"ZEROFORCE"},12:{n:"SORTKEYDIR"},13:{n:"FILESEAL"},14:{n:"DATAFILLNUMS"},15:{n:"PRINTMAIN"},16:{n:"PRINTSTRING"},17:{n:"GRAPHMAIN"},18:{n:"GRAPHSTRING"},19:{n:"??"},20:{n:"ERRCELL"},21:{n:"NACELL"},22:{n:"LABEL16",f:S},23:{n:"NUMBER17",f:R},24:{n:"NUMBER18",f:O},25:{n:"FORMULA19",f:I},26:{n:"FORMULA1A"},27:{n:"XFORMAT",f:B},28:{n:"DTLABELMISC"},29:{n:"DTLABELCELL"},30:{n:"GRAPHWINDOW"},31:{n:"CPA"},32:{n:"LPLAUTO"},33:{n:"QUERY"},34:{n:"HIDDENSHEET"},35:{n:"??"},37:{n:"NUMBER25",f:F},38:{n:"??"},39:{n:"NUMBER27",f:D},40:{n:"FORMULA28",f:P},142:{n:"??"},147:{n:"??"},150:{n:"??"},151:{n:"??"},152:{n:"??"},153:{n:"??"},154:{n:"??"},155:{n:"??"},156:{n:"??"},163:{n:"??"},174:{n:"??"},175:{n:"??"},176:{n:"??"},177:{n:"??"},184:{n:"??"},185:{n:"??"},186:{n:"??"},187:{n:"??"},188:{n:"??"},195:{n:"??"},201:{n:"??"},204:{n:"SHEETNAMECS",f:L},205:{n:"??"},206:{n:"??"},207:{n:"??"},208:{n:"??"},256:{n:"??"},259:{n:"??"},260:{n:"??"},261:{n:"??"},262:{n:"??"},263:{n:"??"},265:{n:"??"},266:{n:"??"},267:{n:"??"},268:{n:"??"},270:{n:"??"},271:{n:"??"},384:{n:"??"},389:{n:"??"},390:{n:"??"},393:{n:"??"},396:{n:"??"},512:{n:"??"},514:{n:"??"},513:{n:"??"},516:{n:"??"},517:{n:"??"},640:{n:"??"},641:{n:"??"},642:{n:"??"},643:{n:"??"},644:{n:"??"},645:{n:"??"},646:{n:"??"},647:{n:"??"},648:{n:"??"},658:{n:"??"},659:{n:"??"},660:{n:"??"},661:{n:"??"},662:{n:"??"},665:{n:"??"},666:{n:"??"},768:{n:"??"},772:{n:"??"},1537:{n:"SHEETINFOQP",f:U},1600:{n:"??"},1602:{n:"??"},1793:{n:"??"},1794:{n:"??"},1795:{n:"??"},1796:{n:"??"},1920:{n:"??"},2048:{n:"??"},2049:{n:"??"},2052:{n:"??"},2688:{n:"??"},10998:{n:"??"},12849:{n:"??"},28233:{n:"??"},28484:{n:"??"},65535:{n:""}};function V(e,r){ga(e,0);var t=r||{};if(g!=null&&t.dense==null)t.dense=g;var a=t.dense?[]:{};var n=[],i="",s=[];var f={s:{r:-1,c:-1},e:{r:-1,c:-1}};var o=0,l=0,c=0,h=0;var u={SheetNames:[],Sheets:{}};e:while(e.l255||f.s.r>999999)break;if(f.e.cc)f.s.c=c;h=v._R(4);if(f.s.r>h)f.s.r=h;h=v._R(4);if(f.e.rh)f.s.r=h;if(f.e.r0&&o>=0){if(w&32)switch(w&31){case 2:b={t:"n",v:b.v+A&65535};break;case 3:b={t:"n",v:b.v+A&65535};if(b.v>32767)b.v-=65536;break;case 7:b={t:"s",v:n[l=l+A>>>0]};break;default:throw"Cannot apply delta for QPW cell type "+(w&31);}else switch(w&31){case 1:b={t:"z"};break;case 2:b={t:"n",v:v._R(2)};break;case 7:b={t:"s",v:n[l=v._R(4)-1]};break;default:throw"Cannot apply repeat for QPW cell type "+(w&31);}if(!(!t.sheetStubs&&b.t=="z")){if(Array.isArray(a)){if(!a[h])a[h]=[];a[h][c]=b}else a[Ma({r:h,c:c})]=b}++h;--o}}}break;default:break;}e.l+=p}return u}return{sheet_to_wk1:a,book_to_wk3:n,to_workbook:r}}();function Lo(e){var r={},t=e.match(Yr),a=0;var n=false;if(t)for(;a!=t.length;++a){var s=Jr(t[a]);switch(s[0].replace(/\w*:/g,"")){case"":;case"":r.shadow=1;break;case"":break;case"":;case"":r.outline=1;break;case"":break;case"":;case"":r.strike=1;break;case"":break;case"":;case"":r.u=1;break;case"":break;case"":;case"":r.b=1;break;case"":break;case"":;case"":r.i=1;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"
":break;case"":n=false;break;default:if(s[0].charCodeAt(1)!==47&&!n)throw new Error("Unrecognized rich format "+s[0]);}}return r}var Mo=function(){var e=bt("t"),r=bt("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:rt(a[1])};var i=t.match(r);if(i)n.s=Lo(i[1]);return n}var a=/<(?:\w+:)?r>/g,n=/<\/(?:\w+:)?r>/;return function i(e){return e.replace(a,"").split(n).map(t).filter(function(e){return e.v})}}();var Uo=function zk(){var e=/(\r\n|\n)/g;function r(e,r,t){var a=[];if(e.u)a.push("text-decoration: underline;");if(e.uval)a.push("text-underline-style:"+e.uval+";");if(e.sz)a.push("font-size:"+e.sz+"pt;");if(e.outline)a.push("text-effect: outline;");if(e.shadow)a.push("text-shadow: auto;");r.push('');if(e.b){r.push("");t.push("")}if(e.i){r.push("");t.push("")}if(e.strike){r.push("");t.push("")}var n=e.valign||"";if(n=="superscript"||n=="super")n="sup";else if(n=="subscript")n="sub";if(n!=""){r.push("<"+n+">");t.push("")}t.push("");return e}function t(t){var a=[[],t.v,[]];if(!t.v)return"";if(t.s)r(t.s,a[0],a[2]);return a[0].join("")+a[1].replace(e,"
")+a[2].join("")}return function a(e){return e.map(t).join("")}}();var Bo=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,Wo=/<(?:\w+:)?r>/;var Ho=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function zo(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=rt(mt(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""),true);a.r=mt(e);if(t)a.h=ft(a.t)}else if(e.match(Wo)){a.r=mt(e);a.t=rt(mt((e.replace(Ho,"").match(Bo)||[]).join("").replace(Yr,"")),true);if(t)a.h=Uo(Mo(a.r))}return a}var Vo=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var Go=/<(?:\w+:)?(?:si|sstItem)>/g;var $o=/<\/(?:\w+:)?(?:si|sstItem)>/;function jo(e,r){var t=[],a="";if(!e)return t;var n=e.match(Vo);if(n){a=n[2].replace(Go,"").split($o);for(var i=0;i!=a.length;++i){var s=zo(a[i].trim(),r);if(s!=null)t[t.length]=s}n=Jr(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var Xo=/^\s|\s$|[\t\n\r]/;function Yo(e,r){if(!r.bookSST)return"";var t=[Gr];t[t.length]=_t("sst",null,{xmlns:Ft[0],count:e.Count,uniqueCount:e.Unique});for(var a=0;a!=e.length;++a){if(e[a]==null)continue;var n=e[a];var i="";if(n.r)i+=n.r;else{i+=""}i+="";t[t.length]=i}if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}function Ko(e){return[e._R(4),e._R(4)]}function Zo(e,r){var t=[];var a=false;ka(e,function n(e,i,s){switch(s){case 159:t.Count=e[0];t.Unique=e[1];break;case 19:t.push(e);break;case 160:return true;case 35:a=true;break;case 36:a=false;break;default:if(i.T){}if(!a||r.WTF)throw new Error("Unexpected record 0x"+s.toString(16));}});return t}function Jo(e,r){if(!r)r=wa(8);r._W(4,e.Count);r._W(4,e.Unique);return r}var qo=rn;function Qo(e){var r=Aa();Ta(r,159,Jo(e));for(var t=0;t=4)e.l+=r-4;return t}function tl(e){var r={};r.id=e._R(0,"lpp4");r.R=rl(e,4);r.U=rl(e,4);r.W=rl(e,4);return r}function al(e){var r=e._R(4);var t=e.l+r-4;var a={};var n=e._R(4);var i=[];while(n-- >0)i.push({t:e._R(4),v:e._R(0,"lpp4")});a.name=e._R(0,"lpp4");a.comps=i;if(e.l!=t)throw new Error("Bad DataSpaceMapEntry: "+e.l+" != "+t);return a}function nl(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(al(e));return r}function il(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(e._R(0,"lpp4"));return r}function sl(e){var r={};e._R(4);e.l+=4;r.id=e._R(0,"lpp4");r.name=e._R(0,"lpp4");r.R=rl(e,4);r.U=rl(e,4);r.W=rl(e,4);return r}function fl(e){var r=sl(e);r.ename=e._R(0,"8lpp4");r.blksz=e._R(4);r.cmode=e._R(4);if(e._R(4)!=4)throw new Error("Bad !Primary record");return r}function ol(e,r){var t=e.l+r;var a={};a.Flags=e._R(4)&63;e.l+=4;a.AlgID=e._R(4);var n=false;switch(a.AlgID){case 26126:;case 26127:;case 26128:n=a.Flags==36;break;case 26625:n=a.Flags==4;break;case 0:n=a.Flags==16||a.Flags==4||a.Flags==36;break;default:throw"Unrecognized encryption algorithm: "+a.AlgID;}if(!n)throw new Error("Encryption Flags/AlgID mismatch");a.AlgIDHash=e._R(4);a.KeySize=e._R(4);a.ProviderType=e._R(4);e.l+=8;a.CSPName=e._R(t-e.l>>1,"utf16le");e.l=t;return a}function ll(e,r){var t={},a=e.l+r;e.l+=4;t.Salt=e.slice(e.l,e.l+16);e.l+=16;t.Verifier=e.slice(e.l,e.l+16);e.l+=16;e._R(4);t.VerifierHash=e.slice(e.l,a);e.l=a;return t}function cl(e){var r=rl(e);switch(r.Minor){case 2:return[r.Minor,hl(e,r)];case 3:return[r.Minor,ul(e,r)];case 4:return[r.Minor,dl(e,r)];}throw new Error("ECMA-376 Encrypted file unrecognized Version: "+r.Minor)}function hl(e){var r=e._R(4);if((r&63)!=36)throw new Error("EncryptionInfo mismatch");var t=e._R(4);var a=ol(e,t);var n=ll(e,e.length-e.l);return{t:"Std",h:a,v:n}}function ul(){throw new Error("File is password-protected: ECMA-376 Extensible")}function dl(e){var r=["saltSize","blockSize","keyBits","hashSize","cipherAlgorithm","cipherChaining","hashAlgorithm","saltValue"];e.l+=4;var t=e._R(e.length-e.l,"utf8");var a={};t.replace(Yr,function n(e){var t=Jr(e);switch(qr(t[0])){case"":break;case"":;case"":break;case"":break;case"4||a.Major<2)throw new Error("unrecognized major version code: "+a.Major);t.Flags=e._R(4);r-=4;var n=e._R(4);r-=4;t.EncryptionHeader=ol(e,n);r-=n;t.EncryptionVerifier=ll(e,r);return t}function vl(e){var r={};var t=r.EncryptionVersionInfo=rl(e,4);if(t.Major!=1||t.Minor!=1)throw"unrecognized version code "+t.Major+" : "+t.Minor;r.Salt=e._R(16);r.EncryptedVerifier=e._R(16);r.EncryptedVerifierHash=e._R(16);return r}function ml(e){var r=0,t;var a=el(e);var n=a.length+1,i,s;var f,o,l;t=S(n);t[0]=a.length;for(i=1;i!=n;++i)t[i]=a[i-1];for(i=n-1;i>=0;--i){s=t[i];f=(r&16384)===0?0:1;o=r<<1&32767;l=f|o;r=l^s}return r^52811}var gl=function(){var e=[187,255,255,186,255,255,185,128,0,190,15,0,191,15,0];var r=[57840,7439,52380,33984,4364,3600,61902,12606,6258,57657,54287,34041,10252,43370,20163];var t=[44796,19929,39858,10053,20106,40212,10761,31585,63170,64933,60267,50935,40399,11199,17763,35526,1453,2906,5812,11624,23248,885,1770,3540,7080,14160,28320,56640,55369,41139,20807,41614,21821,43642,17621,28485,56970,44341,19019,38038,14605,29210,60195,50791,40175,10751,21502,43004,24537,18387,36774,3949,7898,15796,31592,63184,47201,24803,49606,37805,14203,28406,56812,17824,35648,1697,3394,6788,13576,27152,43601,17539,35078,557,1114,2228,4456,30388,60776,51953,34243,7079,14158,28316,14128,28256,56512,43425,17251,34502,7597,13105,26210,52420,35241,883,1766,3532,4129,8258,16516,33032,4657,9314,18628];var a=function(e){return(e/2|e*128)&255};var n=function(e,r){return a(e^r)};var i=function(e){var a=r[e.length-1];var n=104;for(var i=e.length-1;i>=0;--i){var s=e[i];for(var f=0;f!=7;++f){if(s&64)a^=t[n];s*=2;--n}}return a};return function(r){var t=el(r);var a=i(t);var s=t.length;var f=S(16);for(var o=0;o!=16;++o)f[o]=0;var l,c,h;if((s&1)===1){l=a>>8;f[s]=n(e[0],l);--s;l=a&255;c=t[t.length-1];f[s]=n(c,l)}while(s>0){--s;l=a>>8;f[s]=n(t[s],l);--s;l=a&255;f[s]=n(t[s],l)}s=15;h=15-t.length;while(h>0){l=a>>8;f[s]=n(e[h],l);--s;--h;l=a&255;f[s]=n(t[s],l);--s;--h}return f}}();var bl=function(e,r,t,a,n){if(!n)n=r;if(!a)a=gl(e);var i,s;for(i=0;i!=r.length;++i){s=r[i];s^=a[t];s=(s>>5|s<<3)&255;n[i]=s;++t}return[n,t,a]};var wl=function(e){var r=0,t=gl(e);return function(e){var a=bl("",e,r,t);r=a[1];return a[0]}};function kl(e,r,t,a){var n={key:os(e),verificationBytes:os(e)};if(t.password)n.verifier=ml(t.password);a.valid=n.verificationBytes===n.verifier;if(a.valid)a.insitu=wl(t.password);return n}function Al(e,r,t){var a=t||{};a.Info=e._R(2);e.l-=2;if(a.Info===1)a.Data=vl(e,r);else a.Data=pl(e,r);return a}function Tl(e,r,t){var a={Type:t.biff>=8?e._R(2):0};if(a.Type)Al(e,r-2,a);else kl(e,t.biff>=8?r:r-2,t,a);return a}function El(e,r){switch(r.type){case"base64":return yl(T(e),r);case"binary":return yl(e,r);case"buffer":return yl(E&&Buffer.isBuffer(e)?e.toString("binary"):R(e),r);case"array":return yl(Tr(e),r);}throw new Error("Unrecognized type "+r.type)}function yl(e,r){var t=r||{};var a=t.dense?[]:{};var n=e.match(/\\trowd[\s\S]*?\\row\b/g);if(!n)throw new Error("RTF missing table");var i={s:{c:0,r:0},e:{c:0,r:n.length-1}};n.forEach(function(e,r){if(Array.isArray(a))a[r]=[];var n=/\\[\w\-]+\b/g;var s=0;var f;var o=-1;var l=[];while((f=n.exec(e))!=null){var c=e.slice(s,n.lastIndex-f[0].length);if(c.charCodeAt(0)==32)c=c.slice(1);if(c.length)l.push(c);switch(f[0]){case"\\cell":++o;if(l.length){var h={v:l.join(""),t:"s"};if(h.v=="TRUE"||h.v=="FALSE"){h.v=h.v=="TRUE";h.t="b"}else if(!isNaN(Cr(h.v))){h.t="n";if(t.cellText!==false)h.w=h.v;h.v=Cr(h.v)}if(Array.isArray(a))a[r][o]=h;else a[Ma({r:r,c:o})]=h}l=[];break;case"\\par":l.push("\n");break;}s=n.lastIndex}if(o>i.e.c)i.e.c=o});a["!ref"]=Ba(i);return a}function Cl(e,r){var t=$a(El(e,r),r);t.bookType="rtf";return t}function Sl(e,r){var t=["{\\rtf1\\ansi"];if(!e["!ref"])return t[0]+"}";var a=za(e["!ref"]),n;var i=Array.isArray(e);for(var s=a.s.r;s<=a.e.r;++s){t.push("\\trowd\\trautofit1");for(var f=a.s.c;f<=a.e.c;++f)t.push("\\cellx"+(f+1));t.push("\\pard\\intbl");for(f=a.s.c;f<=a.e.c;++f){var o=Ma({r:s,c:f});n=i?(e[s]||[])[f]:e[o];if(!n||n.v==null&&(!n.f||n.F)){t.push(" \\cell");continue}t.push(" "+(n.w||(Ga(n),n.w)||"").replace(/[\r\n]/g,"\\par "));t.push("\\cell")}t.push("\\pard\\intbl\\row")}return t.join("")+"}"}function _l(e){var r=e.slice(e[0]==="#"?1:0).slice(0,6);return[parseInt(r.slice(0,2),16),parseInt(r.slice(2,4),16),parseInt(r.slice(4,6),16)]}function xl(e){for(var r=0,t=1;r!=3;++r)t=t*256+(e[r]>255?255:e[r]<0?0:e[r]);return t.toString(16).toUpperCase().slice(1)}function Ol(e){var r=e[0]/255,t=e[1]/255,a=e[2]/255;var n=Math.max(r,t,a),i=Math.min(r,t,a),s=n-i;if(s===0)return[0,0,r];var f=0,o=0,l=n+i;o=s/(l>1?2-l:l);switch(n){case r:f=((t-a)/s+6)%6;break;case t:f=(a-r)/s+2;break;case a:f=(r-t)/s+4;break;}return[f/6,o,l/2]}function Rl(e){var r=e[0],t=e[1],a=e[2];var n=t*2*(a<.5?a:1-a),i=a-n/2;var s=[i,i,i],f=6*r;var o;if(t!==0)switch(f|0){case 0:;case 6:o=n*f;s[0]+=n;s[1]+=o;break;case 1:o=n*(2-f);s[0]+=o;s[1]+=n;break;case 2:o=n*(f-2);s[1]+=n;s[2]+=o;break;case 3:o=n*(4-f);s[1]+=o;s[2]+=n;break;case 4:o=n*(f-4);s[2]+=n;s[0]+=o;break;case 5:o=n*(6-f);s[2]+=o;s[0]+=n;break;}for(var l=0;l!=3;++l)s[l]=Math.round(s[l]*255);return s}function Nl(e,r){if(r===0)return e;var t=Ol(_l(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return xl(Rl(t))}var Il=6,Fl=15,Dl=1,Pl=Il;function Ll(e){return Math.floor((e+Math.round(128/Pl)/256)*Pl)}function Ml(e){return Math.floor((e-5)/Pl*100+.5)/100}function Ul(e){return Math.round((e*Pl+5)/Pl*256)/256}function Bl(e){return Ul(Ml(Ll(e)))}function Wl(e){var r=Math.abs(e-Bl(e)),t=Pl;if(r>.005)for(Pl=Dl;Pl":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=ht(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=ht(t.diagonalDown);r.Borders.push(n);break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":break;case"":i=false;break;default:if(a&&a.WTF){if(!i)throw new Error("unrecognized "+t[0]+" in borders")};}})}function Yl(e,r,t,a){r.Fills=[];var n={};var i=false;(e[0].match(Yr)||[]).forEach(function(e){var t=Jr(e);switch(qr(t[0])){case"":;case"":break;case"":;case"":n={};r.Fills.push(n);break;case"":break;case"":break;case"":r.Fills.push(n);n={};break;case"":if(t.patternType)n.patternType=t.patternType;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":i=false;break;default:if(a&&a.WTF){if(!i)throw new Error("unrecognized "+t[0]+" in fills")};}})}function Kl(e,r,t,a){r.Fonts=[];var n={};var s=false;(e[0].match(Yr)||[]).forEach(function(e){var f=Jr(e);switch(qr(f[0])){case"":;case"":break;case"":break;case"
":;case"":r.Fonts.push(n);n={};break;case"":;case"":break;case"":n.bold=1;break;case"":n.italic=1;break;case"":n.underline=1;break;case"":n.strike=1;break;case"":n.outline=1;break;case"":n.shadow=1;break;case"":n.condense=1;break;case"":n.extend=1;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":s=false;break;case"":;case"":break;case"":s=false;break;default:if(a&&a.WTF){if(!s)throw new Error("unrecognized "+f[0]+" in fonts")};}})}function Zl(e,r,t){r.NumberFmt=[];var a=sr(Z);for(var n=0;n":;case"":;case"":break;case"0){if(o>392){for(o=392;o>60;--o)if(r.NumberFmt[o]==null)break;r.NumberFmt[o]=f}qe(f,o)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+s[0]+" in numFmts");}}}function Jl(e){var r=[""];[[5,8],[23,26],[41,44],[50,392]].forEach(function(t){for(var a=t[0];a<=t[1];++a)if(e[a]!=null)r[r.length]=_t("numFmt",null,{numFmtId:a,formatCode:nt(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=_t("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var ql=["numFmtId","fillId","fontId","borderId","xfId"];var Ql=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function ec(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Yr)||[]).forEach(function(e){var i=Jr(e),s=0;switch(qr(i[0])){case"":;case"":;case"":break;case"":a=i;delete a[0];for(s=0;s392){for(s=392;s>60;--s)if(r.NumberFmt[a.numFmtId]==r.NumberFmt[s]){a.numFmtId=s;break}}r.CellXf.push(a);break;case"":break;case"":var f={};if(i.vertical)f.vertical=i.vertical;if(i.horizontal)f.horizontal=i.horizontal;if(i.textRotation!=null)f.textRotation=i.textRotation;if(i.indent)f.indent=i.indent;if(i.wrapText)f.wrapText=ht(i.wrapText);a.alignment=f;break;case"":break;case"":;case"":break;case"":n=false;break;case"":;case"":break;case"":n=false;break;default:if(t&&t.WTF){if(!n)throw new Error("unrecognized "+i[0]+" in cellXfs")};}})}function rc(e){var r=[];r[r.length]=_t("cellXfs",null);e.forEach(function(e){r[r.length]=_t("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=_t("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var tc=function Vk(){var e=/<(?:\w+:)?numFmts([^>]*)>[\S\s]*?<\/(?:\w+:)?numFmts>/;var r=/<(?:\w+:)?cellXfs([^>]*)>[\S\s]*?<\/(?:\w+:)?cellXfs>/;var t=/<(?:\w+:)?fills([^>]*)>[\S\s]*?<\/(?:\w+:)?fills>/;var a=/<(?:\w+:)?fonts([^>]*)>[\S\s]*?<\/(?:\w+:)?fonts>/;var n=/<(?:\w+:)?borders([^>]*)>[\S\s]*?<\/(?:\w+:)?borders>/;return function i(s,f,o){var l={};if(!s)return l;s=s.replace(//gm,"").replace(//gm,"");var c;if(c=s.match(e))Zl(c,l,o);if(c=s.match(a))Kl(c,l,f,o);if(c=s.match(t))Yl(c,l,f,o);if(c=s.match(n))Xl(c,l,f,o);if(c=s.match(r))ec(c,l,o);return l}}();function ac(e,r){var t=[Gr,_t("styleSheet",null,{xmlns:Ft[0],"xmlns:vt":It.vt})],a;if(e.SSF&&(a=Jl(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=rc(r.cellXfs))t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}function nc(e,r){var t=e._R(2);var a=Za(e,r-2);return[t,a]}function ic(e,r,t){if(!t)t=wa(6+4*r.length);t._W(2,e);Ja(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 sc(e,r,t){var a={};a.sz=e._R(2)/20;var n=Sn(e,2,t);if(n.fItalic)a.italic=1;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;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 f=e._R(1);if(f>0)a.family=f;var o=e._R(1);if(o>0)a.charset=o;e.l++;a.color=yn(e,8);switch(e._R(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor";break;}a.name=Za(e,r-21);return a}function fc(e,r){if(!r)r=wa(25+4*32);r._W(2,e.sz*20);_n(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);Cn(e.color,r);var a=0;if(e.scheme=="major")a=1;if(e.scheme=="minor")a=2;r._W(1,a);Ja(e.name,r);return r.length>r.l?r.slice(0,r.l):r}var oc=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];var lc;var cc=ba;function hc(e,r){if(!r)r=wa(4*3+8*7+16*1);if(!lc)lc=or(oc);var t=lc[e.patternType];if(t==null)t=40;r._W(4,t);var a=0;if(t!=40){Cn({auto:1},r);Cn({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 uc(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 dc(e,r,t){if(!t)t=wa(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);var a=0;t._W(1,a);t._W(1,0);t._W(1,0);t._W(1,0);return t}function pc(e,r){if(!r)r=wa(10);r._W(1,0);r._W(1,0);r._W(4,0);r._W(4,0);return r}var vc=ba;function mc(e,r){if(!r)r=wa(51);r._W(1,0);pc(null,r);pc(null,r);pc(null,r);pc(null,r);pc(null,r);return r.length>r.l?r.slice(0,r.l):r}function gc(e,r){if(!r)r=wa(12+4*10);r._W(4,e.xfId);r._W(2,1);r._W(1,+e.builtinId);r._W(1,0);un(e.name||"",r);return r.length>r.l?r.slice(0,r.l):r}function bc(e,r,t){var a=wa(4+256*2*4);a._W(4,e);un(r,a);un(t,a);return a.length>a.l?a.slice(0,a.l):a}function wc(e,r,t){var a={};a.NumberFmt=[];for(var n in Z)a.NumberFmt[n]=Z[n];a.CellXf=[];a.Fonts=[];var i=[];var s=false;ka(e,function f(e,n,o){switch(o){case 44:a.NumberFmt[e[0]]=e[1];qe(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=Nl(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]==617){a.CellXf.push(e)}break;case 48:;case 507:;case 572:;case 475:break;case 1171:;case 2102:;case 1130:;case 512:;case 2095:;case 3072:break;case 35:s=true;break;case 36:s=false;break;case 37:i.push(o);s=true;break;case 38:i.pop();s=false;break;default:if(n.T>0)i.push(o);else if(n.T<0)i.pop();else if(!s||t.WTF&&i[i.length-1]!=37)throw new Error("Unexpected record 0x"+o.toString(16));}});return a}function kc(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;Ta(e,615,Ka(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)Ta(e,44,ic(a,r[a]))});Ta(e,616)}function Ac(e){var r=1;if(r==0)return;Ta(e,611,Ka(r));Ta(e,43,fc({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}));Ta(e,612)}function Tc(e){var r=2;if(r==0)return;Ta(e,603,Ka(r));Ta(e,45,hc({patternType:"none"}));Ta(e,45,hc({patternType:"gray125"}));Ta(e,604)}function Ec(e){var r=1;if(r==0)return;Ta(e,613,Ka(r));Ta(e,46,mc({}));Ta(e,614)}function yc(e){var r=1;Ta(e,626,Ka(r));Ta(e,47,dc({numFmtId:0,fontId:0,fillId:0,borderId:0},65535));Ta(e,627)}function Cc(e,r){Ta(e,617,Ka(r.length));r.forEach(function(r){Ta(e,47,dc(r,0))});Ta(e,618)}function Sc(e){var r=1;Ta(e,619,Ka(r));Ta(e,48,gc({xfId:0,builtinId:0,name:"Normal"}));Ta(e,620)}function _c(e){var r=0;Ta(e,505,Ka(r));Ta(e,506)}function xc(e){var r=0;Ta(e,508,bc(r,"TableStyleMedium9","PivotStyleMedium4"));Ta(e,509)}function Oc(){return}function Rc(e,r){var t=Aa();Ta(t,278);kc(t,e.SSF);Ac(t,e);Tc(t,e);Ec(t,e);yc(t,e);Cc(t,r.cellXfs);Sc(t,e);_c(t,e);xc(t,e);Oc(t,e);Ta(t,279);return t.end()}var Nc=["","","","","","","","","","","",""];function Ic(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Yr)||[]).forEach(function(e){var n=Jr(e);switch(n[0]){case"":break;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":if(n[0].charAt(1)==="/"){r.themeElements.clrScheme[Nc.indexOf(n[0])]=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 Pc=/]*)>[\s\S]*<\/a:clrScheme>/;var Lc=/]*)>[\s\S]*<\/a:fontScheme>/;var Mc=/]*)>[\s\S]*<\/a:fmtScheme>/;function Uc(e,r,t){r.themeElements={};var a;[["clrScheme",Pc,Ic],["fontScheme",Lc,Fc],["fmtScheme",Mc,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 Bc=/]*)>[\s\S]*<\/a:themeElements>/;function Wc(e,r){if(!e||e.length===0)e=Hc();var t;var a={};if(!(t=e.match(Bc)))throw new Error("themeElements not found in theme");Uc(t[0],a,r);a.raw=e;return a}function Hc(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Gr];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";return t.join("")}function zc(e,r,t){var a=e.l+r;var n=e._R(4);if(n===124226)return;if(!t.cellStyles){e.l=a;return}var i=e.slice(e.l);e.l=a;var s;try{s=zr(i,{type:"array"})}catch(f){return}var o=Mr(s,"theme/theme/theme1.xml",true);if(!o)return;return Wc(o,t)}function Vc(e){return e._R(4)}function Gc(e){var r={};r.xclrType=e._R(2);r.nTintShade=e._R(2);switch(r.xclrType){case 0:e.l+=4;break;case 1:r.xclrValue=$c(e,4);break;case 2:r.xclrValue=xs(e,4);break;case 3:r.xclrValue=Vc(e,4);break;case 4:e.l+=4;break;}e.l+=8;return r}function $c(e,r){return ba(e,r)}function jc(e,r){return ba(e,r)}function Xc(e){var r=e._R(2);var t=e._R(2)-4;var a=[r];switch(r){case 4:;case 5:;case 7:;case 8:;case 9:;case 10:;case 11:;case 13:a[1]=Gc(e,t);break;case 6:a[1]=jc(e,t);break;case 14:;case 15:a[1]=e._R(t===1?1:2);break;default:throw new Error("Unrecognized ExtProp type: "+r+" "+t);}return a}function Yc(e,r){var t=e.l+r;e.l+=2;var a=e._R(2);e.l+=2;var n=e._R(2);var i=[];while(n-- >0)i.push(Xc(e,t-e.l));return{ixfe:a,ext:i}}function Kc(e,r){r.forEach(function(e){switch(e[0]){case 4:break;case 5:break;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:break;case 13:break;case 14:break;case 15:break;}})}function Zc(e,r){return{flags:e._R(4),version:e._R(4),name:Za(e,r-8)}}function Jc(e){var r=wa(12+2*e.name.length);r._W(4,e.flags);r._W(4,e.version);Ja(e.name,r);return r.slice(0,r.l)}function qc(e){var r=[];var t=e._R(4);while(t-- >0)r.push([e._R(4),e._R(4)]);return r}function Qc(e){var r=wa(4+8*e.length);r._W(4,e.length);for(var t=0;t":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":i=2;break;case"":i=2;break;case"":;case"":;case"":break;case"":n=false;break;case"\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n');return e.join("")}function fh(e){var r=[];if(!e)return r;var t=1;(e.match(Yr)||[]).forEach(function(e){var a=Jr(e);switch(a[0]){case"":;case"":break;case"]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}function dh(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[_t("xml",null,{"xmlns:v":Dt.v,"xmlns:o":Dt.o,"xmlns:x":Dt.x,"xmlns:mv":Dt.mv}).replace(/\/>/,">"),_t("o:shapelayout",_t("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"})];var i=65536*e;var s=r||[];if(s.length>0)n.push(_t("v:shapetype",[_t("v:stroke",null,{joinstyle:"miter"}),_t("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202",coordsize:t.join(","),"o:spt":202,path:a}));s.forEach(function(e){++i;n.push(ph(e,i))});n.push("");return n.join("")}function ph(e,r){var t=La(e[0]);var a={color2:"#BEFF82",type:"gradient"};if(a.type=="gradient")a.angle="-180";var n=a.type=="gradient"?_t("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null;var i=_t("v:fill",n,a);var s={on:"t",obscured:"t"};return["",i,_t("v:shadow",null,s),_t("v:path",null,{"o:connecttype":"none"}),'
','',"","",Ct("x:Anchor",[t.c+1,0,t.r+1,0,t.c+3,20,t.r+5,20].join(",")),Ct("x:AutoFill","False"),Ct("x:Row",String(t.r)),Ct("x:Column",String(t.c)),e[1].hidden?"":"","",""].join("")}function vh(e,r,t,a){var n=Array.isArray(e);var i;r.forEach(function(r){var s=La(r.ref);if(n){if(!e[s.r])e[s.r]=[];i=e[s.r][s.c]}else i=e[r.ref];if(!i){i={t:"z"};if(n)e[s.r][s.c]=i;else e[r.ref]=i;var f=za(e["!ref"]||"BDWGO1000001:A1");if(f.s.r>s.r)f.s.r=s.r;if(f.e.rs.c)f.s.c=s.c;if(f.e.c=0;--c){if(!t&&i.c[c].T)return;if(t&&!i.c[c].T)i.c.splice(c,1)}if(t&&a)for(c=0;c/))return[];var t=[];var a=[];var n=e.match(/<(?:\w+:)?authors>([\s\S]*)<\/(?:\w+:)?authors>/);if(n&&n[1])n[1].split(/<\/\w*:?author>/).forEach(function(e){if(e===""||e.trim()==="")return;var r=e.match(/<(?:\w+:)?author[^>]*>(.*)/);if(r)t.push(r[1])});var i=e.match(/<(?:\w+:)?commentList>([\s\S]*)<\/(?:\w+:)?commentList>/);if(i&&i[1])i[1].split(/<\/\w*:?comment>/).forEach(function(e){if(e===""||e.trim()==="")return;var n=e.match(/<(?:\w+:)?comment[^>]*>/);if(!n)return;var i=Jr(n[0]);var s={author:i.authorId&&t[i.authorId]||"sheetjsghost",ref:i.ref,guid:i.guid};var f=La(i.ref);if(r.sheetRows&&r.sheetRows<=f.r)return;var o=e.match(/<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/);var l=!!o&&!!o[1]&&zo(o[1])||{r:"",t:"",h:""};s.r=l.r;if(l.r=="")l.t=l.h="";s.t=(l.t||"").replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(r.cellHTML)s.h=l.h;a.push(s)});return a}function gh(e){var r=[Gr,_t("comments",null,{xmlns:Ft[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=nt(e.a);if(t.indexOf(a)==-1){t.push(a);r.push(""+a+"")}if(e.T&&e.ID&&t.indexOf("tc="+e.ID)==-1){t.push("tc="+e.ID);r.push(""+"tc="+e.ID+"")}})});if(t.length==0){t.push("SheetJ5");r.push("SheetJ5")}r.push("");r.push("");e.forEach(function(e){var a=0,n=[],i=0;if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);e[1].forEach(function(e){if(e.a)a=t.indexOf(nt(e.a));if(e.T)++i;n.push(e.t==null?"":nt(e.t))});if(i===0){e[1].forEach(function(a){r.push('');r.push(Ct("t",a.t==null?"":nt(a.t)));r.push("")})}else{r.push('');var s="Comment:\n "+n[0]+"\n";for(var f=1;f")}});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function bh(e,r){var t=[];var a=false,n={},i=0;e.replace(Yr,function s(f,o){var l=Jr(f);switch(qr(l[0])){case"":break;case"":if(n.t!=null)t.push(n);break;case"":;case"":n.t=e.slice(i,o).replace(/\r\n/g,"\n").replace(/\r/g,"\n");break;case"":a=true;break;case"":a=false;break;case"":;case"
":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+l[0]+" in threaded comments");}return f});return t}function wh(e,r,t){var a=[Gr,_t("ThreadedComments",null,{xmlns:It.TCMNT}).replace(/[\/]>/,">")];e.forEach(function(e){var n="";(e[1]||[]).forEach(function(i,s){if(!i.T){delete i.ID;return}if(i.a&&r.indexOf(i.a)==-1)r.push(i.a);var f={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+t.tcid++).slice(-12)+"}"};if(s==0)n=f.id;else f.parentId=n;i.ID=f.id;if(i.a)f.personId="{54EE7950-7262-4200-6969-"+("000000000000"+r.indexOf(i.a)).slice(-12)+"}";a.push(_t("threadedComment",Ct("text",i.t||""),f))})});a.push("");return a.join("")}function kh(e,r){var t=[];var a=false;e.replace(Yr,function n(e){var n=Jr(e);switch(qr(n[0])){case"":break;case"":break;case"":;case"":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+n[0]+" in threaded comments");}return e});return t}function Ah(e){var r=[Gr,_t("personList",null,{xmlns:It.TCMNT,"xmlns:x":Ft[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(_t("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}function Th(e){var r={};r.iauthor=e._R(4);var t=kn(e,16);r.rfx=t.s;r.ref=Ma(t.s);e.l+=16;return r}function Eh(e,r){if(r==null)r=wa(36);r._W(4,e[1].iauthor);An(e[0],r);r._W(4,0);r._W(4,0);r._W(4,0);r._W(4,0);return r}var yh=Za;function Ch(e){return Ja(e.slice(0,54))}function Sh(e,r){var t=[];var a=[];var n={};var i=false;ka(e,function s(e,f,o){switch(o){case 632:a.push(e);break;case 635:n=e;break;case 637:n.t=e.t;n.h=e.h;n.r=e.r;break;case 636:n.author=a[n.iauthor];delete n.iauthor;if(r.sheetRows&&n.rfx&&r.sheetRows<=n.rfx.r)break;if(!n.t)n.t="";delete n.rfx;t.push(n);break;case 3072:break;case 35:i=true;break;case 36:i=false;break;case 37:break;case 38:break;default:if(f.T){}else if(!i||r.WTF)throw new Error("Unexpected record 0x"+o.toString(16));}});return t}function _h(e){var r=Aa();var t=[];Ta(r,628);Ta(r,630);e.forEach(function(e){e[1].forEach(function(e){if(t.indexOf(e.a)>-1)return;t.push(e.a.slice(0,54));Ta(r,632,Ch(e.a))})});Ta(r,631);Ta(r,633);e.forEach(function(e){e[1].forEach(function(a){a.iauthor=t.indexOf(a.a);var n={s:La(e[0]),e:La(e[0])};Ta(r,635,Eh([n,a]));if(a.t&&a.t.length>0)Ta(r,637,an(a));Ta(r,636);delete a.iauthor})});Ta(r,634);Ta(r,629);return r.end()}var xh="application/vnd.ms-office.vbaProject";function Oh(e){var r=er.utils.cfb_new({root:"R"});e.FullPaths.forEach(function(t,a){if(t.slice(-1)==="/"||!t.match(/_VBA_PROJECT_CUR/))return;var n=t.replace(/^[^\/]*/,"R").replace(/\/_VBA_PROJECT_CUR\u0000*/,"");er.utils.cfb_add(r,n,e.FileIndex[a].content)});return er.write(r)}function Rh(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")er.utils.cfb_add(e,n,r.FileIndex[a].content)})}var Nh=["xlsb","xlsm","xlam","biff8","xla"];function Ih(){return{"!type":"dialog"}}function Fh(){return{"!type":"dialog"}}function Dh(){return{"!type":"macro"}}function Ph(){return{"!type":"macro"}}var Lh=function(){var e=/(^|[^A-Za-z_])R(\[?-?\d+\]|[1-9]\d*|)C(\[?-?\d+\]|[1-9]\d*|)(?![A-Za-z0-9_])/g;var r={r:0,c:0};function t(e,t,a,n){var i=false,s=false;if(a.length==0)s=true;else if(a.charAt(0)=="["){s=true;a=a.slice(1,-1)}if(n.length==0)i=true;else if(n.charAt(0)=="["){i=true;n=n.slice(1,-1)}var f=a.length>0?parseInt(a,10)|0:0,o=n.length>0?parseInt(n,10)|0:0;if(i)o+=r.c;else--o;if(s)f+=r.r;else--f;return t+(i?"":"$")+Ia(o)+(s?"":"$")+xa(f)}return function a(n,i){r=i;return n.replace(e,t)}}();var Mh=/(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})(?![_.\(A-Za-z0-9])/g;var Uh=function(){return function e(r,t){return r.replace(Mh,function(e,r,a,n,i,s){var f=Na(n)-(a?0:t.c);var o=_a(s)-(i?0:t.r);var l=i=="$"?o+1:o==0?"":"["+o+"]";var c=a=="$"?f+1:f==0?"":"["+f+"]";return r+"R"+l+"C"+c})}}();function Bh(e,r){return e.replace(Mh,function(e,t,a,n,i,s){return t+(a=="$"?a+n:Ia(Na(n)+r.c))+(i=="$"?i+s:xa(_a(s)+r.r))})}function Wh(e,r,t){var a=Ua(r),n=a.s,i=La(t);var s={r:i.r-n.r,c:i.c-n.c};return Bh(e,s)}function Hh(e){if(e.length==1)return false;return true}function zh(e){return e.replace(/_xlfn\./g,"")}function Vh(e){e.l+=1;return}function Gh(e,r){var t=e._R(r==1?1:2);return[t&16383,t>>14&1,t>>15&1]}function $h(e,r,t){var a=2;if(t){if(t.biff>=2&&t.biff<=5)return jh(e,r,t);else if(t.biff==12)a=4}var n=e._R(a),i=e._R(a);var s=Gh(e,2);var f=Gh(e,2);return{s:{r:n,c:s[0],cRel:s[1],rRel:s[2]},e:{r:i,c:f[0],cRel:f[1],rRel:f[2]}}}function jh(e){var r=Gh(e,2),t=Gh(e,2);var a=e._R(1);var n=e._R(1);return{s:{r:r[0],c:a,cRel:r[1],rRel:r[2]},e:{r:t[0],c:n,cRel:t[1],rRel:t[2]}}}function Xh(e,r,t){if(t.biff<8)return jh(e,r,t);var a=e._R(t.biff==12?4:2),n=e._R(t.biff==12?4:2);var i=Gh(e,2);var s=Gh(e,2);return{s:{r:a,c:i[0],cRel:i[1],rRel:i[2]},e:{r:n,c:s[0],cRel:s[1],rRel:s[2]}}}function Yh(e,r,t){if(t&&t.biff>=2&&t.biff<=5)return Kh(e,r,t);var a=e._R(t&&t.biff==12?4:2);var n=Gh(e,2);return{r:a,c:n[0],cRel:n[1],rRel:n[2]}}function Kh(e){var r=Gh(e,2);var t=e._R(1);return{r:r[0],c:t,cRel:r[1],rRel:r[2]}}function Zh(e){var r=e._R(2);var t=e._R(2);return{r:r,c:t&255,fQuoted:!!(t&16384),cRel:t>>15,rRel:t>>15}}function Jh(e,r,t){var a=t&&t.biff?t.biff:8;if(a>=2&&a<=5)return qh(e,r,t);var n=e._R(a>=12?4:2);var i=e._R(2);var s=(i&16384)>>14,f=(i&32768)>>15;i&=16383;if(f==1)while(n>524287)n-=1048576;if(s==1)while(i>8191)i=i-16384;return{r:n,c:i,cRel:s,rRel:f}}function qh(e){var r=e._R(2);var t=e._R(1);var a=(r&32768)>>15,n=(r&16384)>>14;r&=16383;if(a==1&&r>=8192)r=r-16384;if(n==1&&t>=128)t=t-256;return{r:r,c:t,cRel:n,rRel:a}}function Qh(e,r,t){var a=(e[e.l++]&96)>>5;var n=$h(e,t.biff>=2&&t.biff<=5?6:8,t);return[a,n]}function eu(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2,"i");var i=8;if(t)switch(t.biff){case 5:e.l+=12;i=6;break;case 12:i=12;break;}var s=$h(e,i,t);return[a,n,s]}function ru(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t&&t.biff>8?12:t.biff<8?6:8;return[a]}function tu(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2); -var i=8;if(t)switch(t.biff){case 5:e.l+=12;i=6;break;case 12:i=12;break;}e.l+=i;return[a,n]}function au(e,r,t){var a=(e[e.l++]&96)>>5;var n=Xh(e,r-1,t);return[a,n]}function nu(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t.biff==2?6:t.biff==12?14:7;return[a]}function iu(e){var r=e[e.l+1]&1;var t=1;e.l+=4;return[r,t]}function su(e,r,t){e.l+=2;var a=e._R(t&&t.biff==2?1:2);var n=[];for(var i=0;i<=a;++i)n.push(e._R(t&&t.biff==2?1:2));return n}function fu(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=2;return[a,e._R(t&&t.biff==2?1:2)]}function ou(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=2;return[a,e._R(t&&t.biff==2?1:2)]}function lu(e){var r=e[e.l+1]&255?1:0;e.l+=2;return[r,e._R(2)]}function cu(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=t&&t.biff==2?3:4;return[a]}function hu(e){var r=e._R(1),t=e._R(1);return[r,t]}function uu(e){e._R(2);return hu(e,2)}function du(e){e._R(2);return hu(e,2)}function pu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Yh(e,0,t);return[a,n]}function vu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Jh(e,0,t);return[a,n]}function mu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(2);if(t&&t.biff==5)e.l+=12;var i=Yh(e,0,t);return[a,n,i]}function gu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(t&&t.biff<=3?1:2);return[$d[n],Gd[n],a]}function bu(e,r,t){var a=e[e.l++];var n=e._R(1),i=t&&t.biff<=3?[a==88?-1:0,e._R(1)]:wu(e);return[n,(i[0]===0?Gd:Vd)[i[1]]]}function wu(e){return[e[e.l+1]>>7,e._R(2)&32767]}function ku(e,r,t){e.l+=t&&t.biff==2?3:4;return}function Au(e,r,t){e.l++;if(t&&t.biff==12)return[e._R(4,"i"),0];var a=e._R(2);var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Tu(e){e.l++;return Jn[e._R(1)]}function Eu(e){e.l++;return e._R(2)}function yu(e){e.l++;return e._R(1)!==0}function Cu(e){e.l++;return Tn(e,8)}function Su(e,r,t){e.l++;return ds(e,r-1,t)}function _u(e,r){var t=[e._R(1)];if(r==12)switch(t[0]){case 2:t[0]=4;break;case 4:t[0]=16;break;case 0:t[0]=1;break;case 1:t[0]=2;break;}switch(t[0]){case 4:t[1]=ss(e,1)?"TRUE":"FALSE";if(r!=12)e.l+=7;break;case 37:;case 16:t[1]=Jn[e[e.l]];e.l+=r==12?4:8;break;case 0:e.l+=8;break;case 1:t[1]=Tn(e,8);break;case 2:t[1]=bs(e,0,{biff:r>0&&r<8?2:r});break;default:throw new Error("Bad SerAr: "+t[0]);}return t}function xu(e,r,t){var a=e._R(t.biff==12?4:2);var n=[];for(var i=0;i!=a;++i)n.push((t.biff==12?kn:Ms)(e,8));return n}function Ou(e,r,t){var a=0,n=0;if(t.biff==12){a=e._R(4);n=e._R(4)}else{n=1+e._R(1);a=1+e._R(2)}if(t.biff>=2&&t.biff<8){--a;if(--n==0)n=256}for(var i=0,s=[];i!=a&&(s[i]=[]);++i)for(var f=0;f!=n;++f)s[i][f]=_u(e,t.biff);return s}function Ru(e,r,t){var a=e._R(1)>>>5&3;var n=!t||t.biff>=8?4:2;var i=e._R(n);switch(t.biff){case 2:e.l+=5;break;case 3:;case 4:e.l+=8;break;case 5:e.l+=12;break;}return[a,0,i]}function Nu(e,r,t){if(t.biff==5)return Iu(e,r,t);var a=e._R(1)>>>5&3;var n=e._R(2);var i=e._R(4);return[a,n,i]}function Iu(e){var r=e._R(1)>>>5&3;var t=e._R(2,"i");e.l+=8;var a=e._R(2);e.l+=12;return[r,t,a]}function Fu(e,r,t){var a=e._R(1)>>>5&3;e.l+=t&&t.biff==2?3:4;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Du(e,r,t){var a=e._R(1)>>>5&3;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Pu(e,r,t){var a=e._R(1)>>>5&3;e.l+=4;if(t.biff<8)e.l--;if(t.biff==12)e.l+=2;return[a]}function Lu(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2);var i=4;if(t)switch(t.biff){case 5:i=15;break;case 12:i=6;break;}e.l+=i;return[a,n]}var Mu=ba;var Uu=ba;var Bu=ba;function Wu(e,r,t){e.l+=2;return[Zh(e,4,t)]}function Hu(e){e.l+=6;return[]}var zu=Wu;var Vu=Hu;var Gu=Hu;var $u=Wu;function ju(e){e.l+=2;return[os(e),e._R(2)&1]}var Xu=Wu;var Yu=ju;var Ku=Hu;var Zu=Wu;var Ju=Wu;var qu=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];function Qu(e){e.l+=2;var r=e._R(2);var t=e._R(2);var a=e._R(4);var n=e._R(2);var i=e._R(2);var s=qu[t>>2&31];return{ixti:r,coltype:t&3,rt:s,idx:a,c:n,C:i}}function ed(e){e.l+=2;return[e._R(4)]}function rd(e,r,t){e.l+=5;e.l+=2;e.l+=t.biff==2?1:4;return["PTGSHEET"]}function td(e,r,t){e.l+=t.biff==2?4:5;return["PTGENDSHEET"]}function ad(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function nd(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function id(e){e.l+=4;return[0,0]}var sd={1:{n:"PtgExp",f:Au},2:{n:"PtgTbl",f:Bu},3:{n:"PtgAdd",f:Vh},4:{n:"PtgSub",f:Vh},5:{n:"PtgMul",f:Vh},6:{n:"PtgDiv",f:Vh},7:{n:"PtgPower",f:Vh},8:{n:"PtgConcat",f:Vh},9:{n:"PtgLt",f:Vh},10:{n:"PtgLe",f:Vh},11:{n:"PtgEq",f:Vh},12:{n:"PtgGe",f:Vh},13:{n:"PtgGt",f:Vh},14:{n:"PtgNe",f:Vh},15:{n:"PtgIsect",f:Vh},16:{n:"PtgUnion",f:Vh},17:{n:"PtgRange",f:Vh},18:{n:"PtgUplus",f:Vh},19:{n:"PtgUminus",f:Vh},20:{n:"PtgPercent",f:Vh},21:{n:"PtgParen",f:Vh},22:{n:"PtgMissArg",f:Vh},23:{n:"PtgStr",f:Su},26:{n:"PtgSheet",f:rd},27:{n:"PtgEndSheet",f:td},28:{n:"PtgErr",f:Tu},29:{n:"PtgBool",f:yu},30:{n:"PtgInt",f:Eu},31:{n:"PtgNum",f:Cu},32:{n:"PtgArray",f:nu},33:{n:"PtgFunc",f:gu},34:{n:"PtgFuncVar",f:bu},35:{n:"PtgName",f:Ru},36:{n:"PtgRef",f:pu},37:{n:"PtgArea",f:Qh},38:{n:"PtgMemArea",f:Fu},39:{n:"PtgMemErr",f:Mu},40:{n:"PtgMemNoMem",f:Uu},41:{n:"PtgMemFunc",f:Du},42:{n:"PtgRefErr",f:Pu},43:{n:"PtgAreaErr",f:ru},44:{n:"PtgRefN",f:vu},45:{n:"PtgAreaN",f:au},46:{n:"PtgMemAreaN",f:ad},47:{n:"PtgMemNoMemN",f:nd},57:{n:"PtgNameX",f:Nu},58:{n:"PtgRef3d",f:mu},59:{n:"PtgArea3d",f:eu},60:{n:"PtgRefErr3d",f:Lu},61:{n:"PtgAreaErr3d",f:tu},255:{}};var fd={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,78:46,110:46,79:47,111:47,88:34,120:34,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61};var od={1:{n:"PtgElfLel",f:ju},2:{n:"PtgElfRw",f:Zu},3:{n:"PtgElfCol",f:zu},6:{n:"PtgElfRwV",f:Ju},7:{n:"PtgElfColV",f:$u},10:{n:"PtgElfRadical",f:Xu},11:{n:"PtgElfRadicalS",f:Ku},13:{n:"PtgElfColS",f:Vu},15:{n:"PtgElfColSV",f:Gu},16:{n:"PtgElfRadicalLel",f:Yu},25:{n:"PtgList",f:Qu},29:{n:"PtgSxName",f:ed},255:{}};var ld={0:{n:"PtgAttrNoop",f:id},1:{n:"PtgAttrSemi",f:cu},2:{n:"PtgAttrIf",f:ou},4:{n:"PtgAttrChoose",f:su},8:{n:"PtgAttrGoto",f:fu},16:{n:"PtgAttrSum",f:ku},32:{n:"PtgAttrBaxcel",f:iu},33:{n:"PtgAttrBaxcel",f:iu},64:{n:"PtgAttrSpace",f:uu},65:{n:"PtgAttrSpaceSemi",f:du},128:{n:"PtgAttrIfError",f:lu},255:{}};function cd(e,r,t,a){if(a.biff<8)return ba(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]=Ou(e,0,a);i.push(t[s][1]);break;case"PtgMemArea":t[s][2]=xu(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(ba(e,r));return i}function hd(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=sd[i]||sd[fd[i]];if(i===24||i===25)n=(i===24?od:ld)[e[e.l+1]];if(!n||!n.f){ba(e,r)}else{s.push([n.n,n.f(e,r,t)])}}return s}function ud(e){var r=[];for(var t=0;t=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};function pd(e,r){var t=e.lastIndexOf("!"),a=r.lastIndexOf("!");if(t==-1&&a==-1)return e+":"+r;if(t>0&&a>0&&e.slice(0,t).toLowerCase()==r.slice(0,a).toLowerCase())return e+":"+r.slice(a+1);console.error("Cannot hydrate range",e,r);return e+":"+r}function vd(e,r,t){if(!e)return"SH33TJSERR0";if(t.biff>8&&(!e.XTI||!e.XTI[r]))return e.SheetNames[r];if(!e.XTI)return"SH33TJSERR6";var a=e.XTI[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 e[a[0]].slice(1).map(function(e){return e.Name}).join(";;");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 md(e,r,t){var a=vd(e,r,t);return a=="#REF"?a:Ha(a,t)}function gd(e,r,t,a,n){var i=n&&n.biff||8;var s={s:{c:0,r:0},e:{c:0,r:0}};var f=[],o,l,c,h=0,u=0,d,p="";if(!e[0]||!e[0][0])return"";var v=-1,m="";for(var g=0,b=e[0].length;g=0){switch(e[0][v][1][0]){case 0:m=yr(" ",e[0][v][1][1]);break;case 1:m=yr("\r",e[0][v][1][1]);break;default:m="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][v][1][0]);}l=l+m;v=-1}f.push(l+dd[w[0]]+o);break;case"PtgIsect":o=f.pop();l=f.pop();f.push(l+" "+o);break;case"PtgUnion":o=f.pop();l=f.pop();f.push(l+","+o);break;case"PtgRange":o=f.pop();l=f.pop();f.push(pd(l,o));break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgAttrIfError":break;case"PtgRef":c=Ea(w[1][1],s,n);f.push(Ca(c,i));break;case"PtgRefN":c=t?Ea(w[1][1],t,n):w[1][1];f.push(Ca(c,i));break;case"PtgRef3d":h=w[1][1];c=Ea(w[1][2],s,n);p=md(a,h,n);var k=p;f.push(p+"!"+Ca(c,i));break;case"PtgFunc":;case"PtgFuncVar":var A=w[1][0],T=w[1][1];if(!A)A=0;A&=127;var E=A==0?[]:f.slice(-A);f.length-=A;if(T==="User")T=E.shift();f.push(T+"("+E.join(",")+")");break;case"PtgBool":f.push(w[1]?"TRUE":"FALSE");break;case"PtgInt":f.push(w[1]);break;case"PtgNum":f.push(String(w[1]));break;case"PtgStr":f.push('"'+w[1].replace(/"/g,'""')+'"');break;case"PtgErr":f.push(w[1]);break;case"PtgAreaN":d=ya(w[1][1],t?{s:t}:s,n);f.push(Sa(d,n));break;case"PtgArea":d=ya(w[1][1],s,n);f.push(Sa(d,n));break;case"PtgArea3d":h=w[1][1];d=w[1][2];p=md(a,h,n);f.push(p+"!"+Sa(d,n));break;case"PtgAttrSum":f.push("SUM("+f.pop()+")");break;case"PtgAttrBaxcel":;case"PtgAttrSemi":break;case"PtgName":u=w[1][2];var y=(a.names||[])[u-1]||(a[0]||[])[u];var C=y?y.Name:"SH33TJSNAME"+String(u);if(C&&C.slice(0,6)=="_xlfn."&&!n.xlfn)C=C.slice(6);f.push(C);break;case"PtgNameX":var S=w[1][1];u=w[1][2];var _;if(n.biff<=5){if(S<0)S=-S;if(a[S])_=a[S][u]}else{var x="";if(((a[S]||[])[0]||[])[0]==14849){}else if(((a[S]||[])[0]||[])[0]==1025){if(a[S][u]&&a[S][u].itab>0){x=a.SheetNames[a[S][u].itab-1]+"!"}}else x=a.SheetNames[u-1]+"!";if(a[S]&&a[S][u])x+=a[S][u].Name;else if(a[0]&&a[0][u])x+=a[0][u].Name;else{var O=(vd(a,S,n)||"").split(";;");if(O[u-1])x=O[u-1];else x+="SH33TJSERRX"}f.push(x);break}if(!_)_={Name:"SH33TJSERRY"};f.push(_.Name);break;case"PtgParen":var R="(",N=")";if(v>=0){m="";switch(e[0][v][1][0]){case 2:R=yr(" ",e[0][v][1][1])+R;break;case 3:R=yr("\r",e[0][v][1][1])+R;break;case 4:N=yr(" ",e[0][v][1][1])+N;break;case 5:N=yr("\r",e[0][v][1][1])+N;break;default:if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][v][1][0]);}v=-1}f.push(R+f.pop()+N);break;case"PtgRefErr":f.push("#REF!");break;case"PtgRefErr3d":f.push("#REF!");break;case"PtgExp":c={c:w[1][1],r:w[1][0]};var I={c:t.c,r:t.r};if(a.sharedf[Ma(c)]){var F=a.sharedf[Ma(c)];f.push(gd(F,s,I,a,n))}else{var D=false;for(o=0;o!=a.arrayf.length;++o){l=a.arrayf[o];if(c.cl[0].e.c)continue;if(c.rl[0].e.r)continue;f.push(gd(l[1],s,I,a,n));D=true;break}if(!D)f.push(w[1])}break;case"PtgArray":f.push("{"+ud(w[1])+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":;case"PtgAttrSpaceSemi":v=g;break;case"PtgTbl":break;case"PtgMemErr":break;case"PtgMissArg":f.push("");break;case"PtgAreaErr":f.push("#REF!");break;case"PtgAreaErr3d":f.push("#REF!");break;case"PtgList":f.push("Table"+w[1].idx+"[#"+w[1].rt+"]");break;case"PtgMemAreaN":;case"PtgMemNoMemN":;case"PtgAttrNoop":;case"PtgSheet":;case"PtgEndSheet":break;case"PtgMemFunc":break;case"PtgMemNoMem":break;case"PtgElfCol":;case"PtgElfColS":;case"PtgElfColSV":;case"PtgElfColV":;case"PtgElfLel":;case"PtgElfRadical":;case"PtgElfRadicalLel":;case"PtgElfRadicalS":;case"PtgElfRw":;case"PtgElfRwV":throw new Error("Unsupported ELFs");case"PtgSxName":throw new Error("Unrecognized Formula Token: "+String(w));default:throw new Error("Unrecognized Formula Token: "+String(w));}var P=["PtgAttrSpace","PtgAttrSpaceSemi","PtgAttrGoto"];if(n.biff!=3)if(v>=0&&P.indexOf(e[0][g][0])==-1){w=e[0][v];var L=true;switch(w[1][0]){case 4:L=false;case 0:m=yr(" ",w[1][1]);break;case 5:L=false;case 1:m=yr("\r",w[1][1]);break;default:m="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+w[1][0]);}f.push((L?m:"")+f.pop()+(L?"":m));v=-1}}if(f.length>1&&n.WTF)throw new Error("bad formula stack");if(f[0]=="TRUE")return true;if(f[0]=="FALSE")return false;return f[0]}function bd(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ba(e,r-2)];var f=hd(e,s,t);if(r!==s+n)i=cd(e,r-s-n,f,t);e.l=a;return[f,i]}function wd(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ba(e,r-2)];var f=hd(e,s,t);if(r!==s+n)i=cd(e,r-s-n,f,t);e.l=a;return[f,i]}function kd(e,r,t,a){var n=e.l+r;var i=hd(e,a,t);var s;if(n!==e.l)s=cd(e,n-e.l,i,t);return[i,s]}function Ad(e,r,t){var a=e.l+r;var n,i=e._R(2);var s=hd(e,i,t);if(i==65535)return[[],ba(e,r-2)];if(r!==i+2)n=cd(e,a-i-2,s,t);return[s,n]}function Td(e){var r;if(sa(e,e.l+6)!==65535)return[Tn(e),"n"];switch(e[e.l]){case 0:e.l+=8;return["String","s"];case 1:r=e[e.l+2]===1;e.l+=8;return[r,"b"];case 2:r=e[e.l+2];e.l+=8;return[r,"e"];case 3:e.l+=8;return["","s"];}return[]}function Ed(e){if(e==null){var r=wa(8);r._W(1,3);r._W(1,0);r._W(2,0);r._W(2,0);r._W(2,65535);return r}else if(typeof e=="number")return En(e);return En(0)}function yd(e,r,t){var a=e.l+r;var n=Rs(e,6);if(t.biff==2)++e.l;var i=Td(e,8);var s=e._R(1);if(t.biff!=2){e._R(1);if(t.biff>=5){e._R(4)}}var f=wd(e,a-e.l,t);return{cell:n,val:i[0],formula:f,shared:s>>3&1,tt:i[1]}}function Cd(e,r,t,a,n){var i=Ns(r,t,n);var s=Ed(e.v);var f=wa(6);var o=1|32;f._W(2,o);f._W(4,0);var l=wa(e.bf.length);for(var c=0;c0?cd(e,i,n,t):null;return[n,s]}var _d=Sd;var xd=Sd;var Od=Sd;var Rd=Sd;function Nd(e){if((e|0)==e&&e=0){var r=wa(11);r._W(4,3);r._W(1,30);r._W(2,e);r._W(4,0);return r}var t=wa(17);t._W(4,11);t._W(1,31);t._W(8,e);t._W(4,0);return t}function Id(e){var r=wa(10);r._W(4,2);r._W(1,28);r._W(1,e);r._W(4,0);return r}function Fd(e){var r=wa(10);r._W(4,2);r._W(1,29);r._W(1,e?1:0);r._W(4,0);return r}function Dd(e){var r=wa(7);r._W(4,3+2*e.length);r._W(1,23);r._W(2,e.length);var t=wa(2*e.length);t._W(2*e.length,e,"utf16le");var a=wa(4);a._W(4,0);return F([r,t,a])}function Pd(e){var r=La(e);var t=wa(15);t._W(4,7);t._W(1,4|1<<5);t._W(4,r.r);t._W(2,r.c|(e.charAt(0)=="$"?0:1)<<14|(e.match(/\$\d/)?0:1)<<15);t._W(4,0);return t}function Ld(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);var n=La(e);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var i=wa(17);i._W(4,9);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,n.r);i._W(2,n.c|(e.charAt(0)=="$"?0:1)<<14|(e.match(/\$\d/)?0:1)<<15);i._W(4,0);return i}function Md(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=wa(17);n._W(4,9);n._W(1,28|1<<5);n._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));n._W(4,0);n._W(2,0);n._W(4,0);return n}function Ud(e){var r=e.split(":"),t=r[0];var a=wa(23);a._W(4,15);t=r[0];var n=La(t);a._W(1,4|1<<5);a._W(4,n.r);a._W(2,n.c|(t.charAt(0)=="$"?0:1)<<14|(t.match(/\$\d/)?0:1)<<15);a._W(4,0);t=r[1];n=La(t);a._W(1,4|1<<5);a._W(4,n.r);a._W(2,n.c|(t.charAt(0)=="$"?0:1)<<14|(t.match(/\$\d/)?0:1)<<15);a._W(4,0);a._W(1,17);a._W(4,0);return a}function Bd(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=e.split(":");s=n[0];var i=wa(27);i._W(4,19);var s=n[0],f=La(s);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,f.r);i._W(2,f.c|(s.charAt(0)=="$"?0:1)<<14|(s.match(/\$\d/)?0:1)<<15);s=n[1];f=La(s);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,f.r);i._W(2,f.c|(s.charAt(0)=="$"?0:1)<<14|(s.match(/\$\d/)?0:1)<<15);i._W(1,17);i._W(4,0);return i}function Wd(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=Ua(e);var i=wa(23);i._W(4,15);i._W(1,27|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,n.s.r);i._W(4,n.e.r);i._W(2,n.s.c);i._W(2,n.e.c);i._W(4,0);return i}function Hd(e,r){if(typeof e=="number")return Nd(e);if(typeof e=="boolean")return Fd(e);if(/^#(DIV\/0!|GETTING_DATA|N\/A|NAME\?|NULL!|NUM!|REF!|VALUE!)$/.test(e))return Id(+qn[e]);if(e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Pd(e);if(e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Ud(e);if(e.match(/^#REF!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Wd(e,r);if(e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Ld(e,r);if(e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Bd(e,r);if(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!#REF!$/.test(e))return Md(e,r);if(/^".*"$/.test(e))return Dd(e);if(/^[+-]\d+$/.test(e))return Nd(parseInt(e,10));throw"Formula |"+e+"| not supported for XLSB"}var zd=Hd;var Vd={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"};var Gd={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ",319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK", -348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD",380:"CUBEVALUE",381:"CUBEMEMBER",382:"CUBEMEMBERPROPERTY",383:"CUBERANKEDMEMBER",384:"HEX2BIN",385:"HEX2DEC",386:"HEX2OCT",387:"DEC2BIN",388:"DEC2HEX",389:"DEC2OCT",390:"OCT2BIN",391:"OCT2HEX",392:"OCT2DEC",393:"BIN2DEC",394:"BIN2OCT",395:"BIN2HEX",396:"IMSUB",397:"IMDIV",398:"IMPOWER",399:"IMABS",400:"IMSQRT",401:"IMLN",402:"IMLOG2",403:"IMLOG10",404:"IMSIN",405:"IMCOS",406:"IMEXP",407:"IMARGUMENT",408:"IMCONJUGATE",409:"IMAGINARY",410:"IMREAL",411:"COMPLEX",412:"IMSUM",413:"IMPRODUCT",414:"SERIESSUM",415:"FACTDOUBLE",416:"SQRTPI",417:"QUOTIENT",418:"DELTA",419:"GESTEP",420:"ISEVEN",421:"ISODD",422:"MROUND",423:"ERF",424:"ERFC",425:"BESSELJ",426:"BESSELK",427:"BESSELY",428:"BESSELI",429:"XIRR",430:"XNPV",431:"PRICEMAT",432:"YIELDMAT",433:"INTRATE",434:"RECEIVED",435:"DISC",436:"PRICEDISC",437:"YIELDDISC",438:"TBILLEQ",439:"TBILLPRICE",440:"TBILLYIELD",441:"PRICE",442:"YIELD",443:"DOLLARDE",444:"DOLLARFR",445:"NOMINAL",446:"EFFECT",447:"CUMPRINC",448:"CUMIPMT",449:"EDATE",450:"EOMONTH",451:"YEARFRAC",452:"COUPDAYBS",453:"COUPDAYS",454:"COUPDAYSNC",455:"COUPNCD",456:"COUPNUM",457:"COUPPCD",458:"DURATION",459:"MDURATION",460:"ODDLPRICE",461:"ODDLYIELD",462:"ODDFPRICE",463:"ODDFYIELD",464:"RANDBETWEEN",465:"WEEKNUM",466:"AMORDEGRC",467:"AMORLINC",468:"CONVERT",724:"SHEETJS",469:"ACCRINT",470:"ACCRINTM",471:"WORKDAY",472:"NETWORKDAYS",473:"GCD",474:"MULTINOMIAL",475:"LCM",476:"FVSCHEDULE",477:"CUBEKPIMEMBER",478:"CUBESET",479:"CUBESETCOUNT",480:"IFERROR",481:"COUNTIFS",482:"SUMIFS",483:"AVERAGEIF",484:"AVERAGEIFS"};var $d={2:1,3:1,10:0,15:1,16:1,17:1,18:1,19:0,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,34:0,35:0,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,63:0,65:3,66:3,67:1,68:1,69:1,70:1,71:1,72:1,73:1,74:0,75:1,76:1,77:1,79:2,80:2,83:1,85:0,86:1,89:0,90:1,94:0,95:0,97:2,98:1,99:1,101:3,102:3,105:1,106:1,108:2,111:1,112:1,113:1,114:1,117:2,118:1,119:4,121:1,126:1,127:1,128:1,129:1,130:1,131:1,133:1,134:1,135:1,136:2,137:2,138:2,140:1,141:1,142:3,143:4,144:4,161:1,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,186:1,189:3,190:1,195:3,196:3,197:1,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,225:0,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,247:4,252:2,257:1,261:1,271:1,273:4,274:2,275:2,276:2,277:3,278:3,279:1,280:3,281:3,282:3,283:1,284:1,285:2,286:4,287:3,288:2,289:4,290:3,291:3,292:3,293:4,294:1,295:3,296:1,297:3,298:1,299:2,300:3,301:3,302:4,303:2,304:2,305:2,306:2,307:2,308:2,309:3,310:2,311:2,312:2,313:2,314:2,315:2,316:4,325:2,326:2,327:2,328:2,331:2,332:2,337:2,342:1,343:1,346:2,347:1,350:4,351:3,352:1,353:2,360:1,368:1,369:1,370:1,371:1,372:1,373:1,374:1,375:1,376:1,377:1,378:1,382:3,385:1,392:1,393:1,396:2,397:2,398:2,399:1,400:1,401:1,402:1,403:1,404:1,405:1,406:1,407:1,408:1,409:1,410:1,414:4,415:1,416:1,417:2,420:1,421:1,422:2,424:1,425:2,426:2,427:2,428:2,430:3,438:3,439:3,440:3,443:2,444:2,445:2,446:2,447:6,448:6,449:2,450:2,464:2,468:3,476:2,479:1,480:2,65535:0};function jd(e){if(e.slice(0,3)=="of:")e=e.slice(3);if(e.charCodeAt(0)==61){e=e.slice(1);if(e.charCodeAt(0)==61)e=e.slice(1)}e=e.replace(/COM\.MICROSOFT\./g,"");e=e.replace(/\[((?:\.[A-Z]+[0-9]+)(?::\.[A-Z]+[0-9]+)?)\]/g,function(e,r){return r.replace(/\./g,"")});e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});e=e.replace(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function Xd(e){var r="of:="+e.replace(Mh,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function Yd(e){e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});var r=e.split(":");var t=r[0].split(".")[0];return[t,r[0].split(".")[1]+(r.length>1?":"+(r[1].split(".")[1]||r[1].split(".")[0]):"")]}function Kd(e){return e.replace(/!/,".")}var Zd={};var Jd={};var qd=typeof Map!=="undefined";function Qd(e,r,t){var a=0,n=e.length;if(t){if(qd?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var i=qd?t.get(r):t[r];for(;a-1){t.width=Ul(a);t.customWidth=1}else if(r.width!=null)t.width=r.width;if(r.hidden)t.hidden=true;if(r.level!=null){t.outlineLevel=t.level=r.level}return t}function rp(e,r){if(!e)return;var t=[.7,.7,.75,.75,.3,.3];if(r=="xlml")t=[1,1,1,1,.5,.5];if(e.left==null)e.left=t[0];if(e.right==null)e.right=t[1];if(e.top==null)e.top=t[2];if(e.bottom==null)e.bottom=t[3];if(e.header==null)e.header=t[4];if(e.footer==null)e.footer=t[5]}function tp(e,r,t){var a=t.revssf[r.z!=null?r.z:"General"];var n=60,i=e.length;if(a==null&&t.ssf){for(;n<392;++n)if(t.ssf[n]==null){qe(r.z,n);t.ssf[n]=r.z;t.revssf[r.z]=a=n;break}}for(n=0;n!=i;++n)if(e[n].numFmtId===a)return n;e[i]={numFmtId:a,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1};return i}function ap(e,r,t,a,n,i){try{if(a.cellNF)e.z=Z[r]}catch(s){if(a.WTF)throw s}if(e.t==="z"&&!a.cellStyles)return;if(e.t==="d"&&typeof e.v==="string")e.v=Ar(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(Z[r]==null)qe(Xe[r]||"General",r);if(e.t==="e")e.w=e.w||Jn[e.v];else if(r===0){if(e.t==="n"){if((e.v|0)===e.v)e.w=e.v.toString(10);else e.w=le(e.v)}else if(e.t==="d"){var f=ur(e.v);if((f|0)===f)e.w=f.toString(10);else e.w=le(f)}else if(e.v===undefined)return"";else e.w=ce(e.v,Jd)}else if(e.t==="d")e.w=ze(r,ur(e.v),Jd);else e.w=ze(r,e.v,Jd)}catch(s){if(a.WTF)throw s}if(!a.cellStyles)return;if(t!=null)try{e.s=i.Fills[t];if(e.s.fgColor&&e.s.fgColor.theme&&!e.s.fgColor.rgb){e.s.fgColor.rgb=Nl(n.themeElements.clrScheme[e.s.fgColor.theme].rgb,e.s.fgColor.tint||0);if(a.WTF)e.s.fgColor.raw_rgb=n.themeElements.clrScheme[e.s.fgColor.theme].rgb}if(e.s.bgColor&&e.s.bgColor.theme){e.s.bgColor.rgb=Nl(n.themeElements.clrScheme[e.s.bgColor.theme].rgb,e.s.bgColor.tint||0);if(a.WTF)e.s.bgColor.raw_rgb=n.themeElements.clrScheme[e.s.bgColor.theme].rgb}}catch(s){if(a.WTF&&i.Fills)throw s}}function np(e,r,t){if(e&&e["!ref"]){var a=za(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=Ba(t)}var sp=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var fp=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var op=/<(?:\w:)?hyperlink [^>]*>/gm;var lp=/"(\w*:\w*)"/;var cp=/<(?:\w:)?col\b[^>]*[\/]?>/g;var hp=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var up=/<(?:\w:)?pageMargins[^>]*\/>/g;var dp=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var pp=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var vp=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function mp(e,r,t,a,n,i,s){if(!e)return e;if(!a)a={"!id":{}};if(g!=null&&r.dense==null)r.dense=g;var f=r.dense?[]:{};var o={s:{r:2e6,c:2e6},e:{r:0,c:0}};var l="",c="";var h=e.match(fp);if(h){l=e.slice(0,h.index);c=e.slice(h.index+h[0].length)}else l=c=e;var u=l.match(dp);if(u)bp(u[0],f,n,t);else if(u=l.match(pp))wp(u[0],u[1]||"",f,n,t,s,i);var d=(l.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(d>0){var p=l.slice(d,d+50).match(lp);if(p)ip(f,p[1])}var v=l.match(vp);if(v&&v[1])Ip(v[1],n);var m=[];if(r.cellStyles){var b=l.match(cp);if(b)_p(m,b)}if(h)Pp(h[1],f,r,o,i,s);var w=c.match(hp);if(w)f["!autofilter"]=Op(w[0]);var k=[];var A=c.match(sp);if(A)for(d=0;d!=A.length;++d)k[d]=za(A[d].slice(A[d].indexOf('"')+1));var T=c.match(op);if(T)yp(f,T,a);var E=c.match(up);if(E)f["!margins"]=Cp(Jr(E[0]));if(!f["!ref"]&&o.e.c>=o.s.c&&o.e.r>=o.s.r)f["!ref"]=Ba(o);if(r.sheetRows>0&&f["!ref"]){var y=za(f["!ref"]);if(r.sheetRows<=+y.e.r){y.e.r=r.sheetRows-1;if(y.e.r>o.e.r)y.e.r=o.e.r;if(y.e.ro.e.c)y.e.c=o.e.c;if(y.e.c0)f["!cols"]=m;if(k.length>0)f["!merges"]=k;return f}function gp(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function bp(e,r,t,a){var n=Jr(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=rt(mt(n.codeName))}function wp(e,r,t,a,n){bp(e.slice(0,e.indexOf(">")),t,a,n)}function kp(e,r,t,a,n){var i=false;var s={},f=null;if(a.bookType!=="xlsx"&&r.vbaraw){var o=r.SheetNames[t];try{if(r.Workbook)o=r.Workbook.Sheets[t].CodeName||o}catch(l){}i=true;s.codeName=gt(nt(o))}if(e&&e["!outline"]){var c={summaryBelow:1,summaryRight:1};if(e["!outline"].above)c.summaryBelow=0;if(e["!outline"].left)c.summaryRight=0;f=(f||"")+_t("outlinePr",null,c)}if(!i&&!f)return;n[n.length]=_t("sheetPr",f,s)}var Ap=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var Tp=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function Ep(e){var r={sheet:1};Ap.forEach(function(t){if(e[t]!=null&&e[t])r[t]="1"});Tp.forEach(function(t){if(e[t]!=null&&!e[t])r[t]="0"});if(e.password)r.password=ml(e.password).toString(16).toUpperCase();return _t("sheetProtection",null,r)}function yp(e,r,t){var a=Array.isArray(e);for(var n=0;n!=r.length;++n){var i=Jr(mt(r[n]),true);if(!i.ref)return;var s=((t||{})["!id"]||[])[i.id];if(s){i.Target=s.Target;if(i.location)i.Target+="#"+rt(i.location)}else{i.Target="#"+rt(i.location);s={Target:i.Target,TargetMode:"Internal"}}i.Rel=s;if(i.tooltip){i.Tooltip=i.tooltip;delete i.tooltip}var f=za(i.ref);for(var o=f.s.r;o<=f.e.r;++o)for(var l=f.s.c;l<=f.e.c;++l){var c=Ma({c:l,r:o});if(a){if(!e[o])e[o]=[];if(!e[o][l])e[o][l]={t:"z",v:undefined};e[o][l].l=i}else{if(!e[c])e[c]={t:"z",v:undefined};e[c].l=i}}}}function Cp(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function Sp(e){rp(e);return _t("pageMargins",null,e)}function _p(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Jr(r[a],true);if(n.hidden)n.hidden=ht(n.hidden);var i=parseInt(n.min,10)-1,s=parseInt(n.max,10)-1;if(n.outlineLevel)n.level=+n.outlineLevel||0;delete n.min;delete n.max;n.width=+n.width;if(!t&&n.width){t=true;Wl(n.width)}Hl(n);while(i<=s)e[i++]=Er(n)}}function xp(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=_t("col",null,ep(n,a))}t[t.length]="";return t.join("")}function Op(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function Rp(e,r,t,a){var n=typeof e.ref=="string"?e.ref:Ba(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var i=t.Workbook.Names;var s=Ua(n);if(s.s.r==s.e.r){s.e.r=Ua(r["!ref"]).e.r;n=Ba(s)}for(var f=0;fa-z][^>]*)?\/?>/g;function Ip(e,r){if(!r.Views)r.Views=[{}];(e.match(Np)||[]).forEach(function(e,t){var a=Jr(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(a.rightToLeft&&ht(a.rightToLeft))r.Views[t].RTL=true})}function Fp(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return _t("sheetViews",_t("sheetView",null,n),{})}function Dp(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if((e.v===undefined||e.t==="z"&&!(a||{}).sheetStubs)&&typeof e.f!=="string"&&typeof e.z=="undefined")return"";var n="";var i=e.t,s=e.v;if(e.t!=="z")switch(e.t){case"b":n=e.v?"1":"0";break;case"n":n=""+e.v;break;case"e":n=Jn[e.v];break;case"d":if(a&&a.cellDates)n=Ar(e.v,-1).toISOString();else{e=Er(e);e.t="n";n=""+(e.v=ur(Ar(e.v)))}if(typeof e.z==="undefined")e.z=Z[14];break;default:n=e.v;break;}var f=e.t=="z"||e.v==null?"":Ct("v",nt(n)),o={r:r};var l=tp(a.cellXfs,e,a);if(l!==0)o.s=l;switch(e.t){case"n":break;case"d":o.t="d";break;case"b":o.t="b";break;case"e":o.t="e";break;case"z":break;default:if(e.v==null){delete e.t;break}if(e.v.length>32767)throw new Error("Text length must not exceed 32767 characters");if(a&&a.bookSST){f=Ct("v",""+Qd(a.Strings,e.v,a.revStrings));o.t="s";break}else o.t="str";break;}if(e.t!=i){e.t=i;e.v=s}if(typeof e.f=="string"&&e.f){var c=e.F&&e.F.slice(0,r.length)==r?{t:"array",ref:e.F}:null;f=_t("f",nt(e.f),c)+(e.v!=null?f:"")}if(e.l)t["!links"].push([r,e.l]);if(e.D)o.cm=1;return _t("c",f,o)}var Pp=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var i=bt("v"),s=bt("f");return function f(o,l,c,h,u,d){var p=0,v="",m=[],g=[],b=0,w=0,k=0,A="",T;var E,y=0,C=0;var S,_;var x=0,O=0;var R=Array.isArray(d.CellXf),N;var I=[];var F=[];var D=Array.isArray(l);var P=[],L={},M=false;var U=!!c.sheetStubs;for(var B=o.split(r),W=0,H=B.length;W!=H;++W){v=B[W].trim();var z=v.length;if(z===0)continue;var V=0;e:for(p=0;p":if(v[p-1]!="/"){++p;break e}if(c&&c.cellStyles){E=Jr(v.slice(V,p),true);y=E.r!=null?parseInt(E.r,10):y+1;C=-1;if(c.sheetRows&&c.sheetRows=p)break;E=Jr(v.slice(V,p),true);y=E.r!=null?parseInt(E.r,10):y+1;C=-1;if(c.sheetRows&&c.sheetRowsy-1)h.s.r=y-1;if(h.e.r":"")+v;if(g!=null&&g.length===2){b=0;A=g[1];for(w=0;w!=A.length;++w){if((k=A.charCodeAt(w)-64)<1||k>26)break;b=26*b+k}--b;C=b}else++C;for(w=0;w!=v.length;++w)if(v.charCodeAt(w)===62)break;++w;E=Jr(v.slice(0,w),true);if(!E.r)E.r=Ma({r:y-1,c:C});A=v.slice(w);T={t:""};if((g=A.match(i))!=null&&g[1]!=="")T.v=rt(g[1]);if(c.cellFormula){if((g=A.match(s))!=null&&g[1]!==""){T.f=rt(mt(g[1]),true);if(!c.xlfn)T.f=zh(T.f);if(g[0].indexOf('t="array"')>-1){T.F=(A.match(n)||[])[1];if(T.F.indexOf(":")>-1)I.push([za(T.F),T.F])}else if(g[0].indexOf('t="shared"')>-1){_=Jr(g[0]);var $=rt(mt(g[1]));if(!c.xlfn)$=zh($);F[parseInt(_.si,10)]=[_,$,E.r]}}else if(g=A.match(/]*\/>/)){_=Jr(g[0]);if(F[_.si])T.f=Wh(F[_.si][1],F[_.si][2],E.r)}var j=La(E.r);for(w=0;w=I[w][0].s.r&&j.r<=I[w][0].e.r)if(j.c>=I[w][0].s.c&&j.c<=I[w][0].e.c)T.F=I[w][1]}if(E.t==null&&T.v===undefined){if(T.f||T.F){T.v=0;T.t="n"}else if(!U)continue;else T.t="z"}else T.t=E.t||"n";if(h.s.c>C)h.s.c=C;if(h.e.c0)l["!rows"]=P}}();function Lp(e,r,t,a){var n=[],i=[],s=za(e["!ref"]),f="",o,l="",c=[],h=0,u=0,d=e["!rows"];var p=Array.isArray(e);var v={r:l},m,g=-1;for(u=s.s.c;u<=s.e.c;++u)c[u]=Ia(u);for(h=s.s.r;h<=s.e.r;++h){i=[];l=xa(h);for(u=s.s.c;u<=s.e.c;++u){o=c[u]+l;var b=p?(e[h]||[])[u]:e[o];if(b===undefined)continue;if((f=Dp(b,o,e,r,t,a))!=null)i.push(f)}if(i.length>0||d&&d[h]){v={r:l};if(d&&d[h]){m=d[h];if(m.hidden)v.hidden=1;g=-1;if(m.hpx)g=Gl(m.hpx);else if(m.hpt)g=m.hpt;if(g>-1){v.ht=g;v.customHeight=1}if(m.level){v.outlineLevel=m.level}}n[n.length]=_t("row",i.join(""),v)}}if(d)for(;h-1){v.ht=g;v.customHeight=1}if(m.level){v.outlineLevel=m.level}n[n.length]=_t("row","",v)}}return n.join("")}function Mp(e,r,t,a){var n=[Gr,_t("worksheet",null,{xmlns:Ft[0],"xmlns:r":It.r})];var i=t.SheetNames[e],s=0,f="";var o=t.Sheets[i];if(o==null)o={};var l=o["!ref"]||"A1";var c=za(l);if(c.e.c>16383||c.e.r>1048575){if(r.WTF)throw new Error("Range "+l+" exceeds format limit A1:XFD1048576");c.e.c=Math.min(c.e.c,16383);c.e.r=Math.min(c.e.c,1048575);l=Ba(c)}if(!a)a={};o["!comments"]=[];var h=[];kp(o,t,e,r,n);n[n.length]=_t("dimension",null,{ref:l});n[n.length]=Fp(o,r,e,t);if(r.sheetFormat)n[n.length]=_t("sheetFormatPr",null,{defaultRowHeight:r.sheetFormat.defaultRowHeight||"16",baseColWidth:r.sheetFormat.baseColWidth||"10",outlineLevelRow:r.sheetFormat.outlineLevelRow||"7"});if(o["!cols"]!=null&&o["!cols"].length>0)n[n.length]=xp(o,o["!cols"]);n[s=n.length]="";o["!links"]=[];if(o["!ref"]!=null){f=Lp(o,r,e,t,a);if(f.length>0)n[n.length]=f}if(n.length>s+1){n[n.length]="";n[s]=n[s].replace("/>",">")}if(o["!protect"])n[n.length]=Ep(o["!protect"]);if(o["!autofilter"]!=null)n[n.length]=Rp(o["!autofilter"],o,t,e);if(o["!merges"]!=null&&o["!merges"].length>0)n[n.length]=gp(o["!merges"]);var u=-1,d,p=-1;if(o["!links"].length>0){n[n.length]="";o["!links"].forEach(function(e){if(!e[1].Target)return;d={ref:e[0]};if(e[1].Target.charAt(0)!="#"){p=li(a,-1,nt(e[1].Target).replace(/#.*$/,""),ii.HLINK);d["r:id"]="rId"+p}if((u=e[1].Target.indexOf("#"))>-1)d.location=nt(e[1].Target.slice(u+1));if(e[1].Tooltip)d.tooltip=nt(e[1].Tooltip);n[n.length]=_t("hyperlink",null,d)});n[n.length]=""}delete o["!links"];if(o["!margins"]!=null)n[n.length]=Sp(o["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=Ct("ignoredErrors",_t("ignoredError",null,{numberStoredAsText:1,sqref:l}));if(h.length>0){p=li(a,-1,"../drawings/drawing"+(e+1)+".xml",ii.DRAW);n[n.length]=_t("drawing",null,{"r:id":"rId"+p});o["!drawing"]=h}if(o["!comments"].length>0){p=li(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",ii.VML);n[n.length]=_t("legacyDrawing",null,{"r:id":"rId"+p});o["!legacy"]=p}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function Up(e,r){var t={};var a=e.l+r;t.r=e._R(4);e.l+=4;var n=e._R(2);e.l+=1;var i=e._R(1);e.l=a;if(i&7)t.level=i&7;if(i&16)t.hidden=true;if(i&32)t.hpt=n/20;return t}function Bp(e,r,t){var a=wa(17+8*16);var n=(t["!rows"]||[])[e]||{};a._W(4,e);a._W(4,0);var i=320;if(n.hpx)i=Gl(n.hpx)*20;else if(n.hpt)i=n.hpt*20;a._W(2,i);a._W(1,0);var s=0;if(n.level)s|=n.level;if(n.hidden)s|=16;if(n.hpx||n.hpt)s|=32;a._W(1,s);a._W(1,0);var f=0,o=a.l;a.l+=4;var l={r:e,c:0};for(var c=0;c<16;++c){if(r.s.c>c+1<<10||r.e.ca.l?a.slice(0,a.l):a}function Wp(e,r,t,a){var n=Bp(a,t,r);if(n.length>17||(r["!rows"]||[])[a])Ta(e,0,n)}var Hp=kn;var zp=An;function Vp(){}function Gp(e,r){var t={};var a=e[e.l];++e.l;t.above=!(a&64);t.left=!(a&128);e.l+=18;t.name=ln(e,r-19);return t}function $p(e,r,t){if(t==null)t=wa(84+4*e.length);var a=192;if(r){if(r.above)a&=~64;if(r.left)a&=~128}t._W(1,a);for(var n=1;n<3;++n)t._W(1,0);Cn({auto:1},t);t._W(-4,-1);t._W(-4,-1);cn(e,t);return t.slice(0,t.l)}function jp(e){var r=nn(e);return[r]}function Xp(e,r,t){if(t==null)t=wa(8);return sn(r,t)}function Yp(e){var r=fn(e);return[r]}function Kp(e,r,t){if(t==null)t=wa(4);return on(r,t)}function Zp(e){var r=nn(e);var t=e._R(1);return[r,t,"b"]}function Jp(e,r,t){if(t==null)t=wa(9);sn(r,t);t._W(1,e.v?1:0);return t}function qp(e){var r=fn(e);var t=e._R(1);return[r,t,"b"]}function Qp(e,r,t){if(t==null)t=wa(5);on(r,t);t._W(1,e.v?1:0);return t}function ev(e){var r=nn(e);var t=e._R(1);return[r,t,"e"]}function rv(e,r,t){if(t==null)t=wa(9);sn(r,t);t._W(1,e.v);return t}function tv(e){var r=fn(e);var t=e._R(1);return[r,t,"e"]}function av(e,r,t){if(t==null)t=wa(8);on(r,t);t._W(1,e.v);t._W(2,0);t._W(1,0);return t}function nv(e){var r=nn(e);var t=e._R(4);return[r,t,"s"]}function iv(e,r,t){if(t==null)t=wa(12);sn(r,t);t._W(4,r.v);return t}function sv(e){var r=fn(e);var t=e._R(4);return[r,t,"s"]}function fv(e,r,t){if(t==null)t=wa(8);on(r,t);t._W(4,r.v);return t}function ov(e){var r=nn(e);var t=Tn(e);return[r,t,"n"]}function lv(e,r,t){if(t==null)t=wa(16);sn(r,t);En(e.v,t);return t}function cv(e){var r=fn(e);var t=Tn(e);return[r,t,"n"]}function hv(e,r,t){if(t==null)t=wa(12);on(r,t);En(e.v,t);return t}function uv(e){var r=nn(e);var t=mn(e);return[r,t,"n"]}function dv(e,r,t){if(t==null)t=wa(12);sn(r,t);gn(e.v,t);return t}function pv(e){var r=fn(e);var t=mn(e);return[r,t,"n"]}function vv(e,r,t){if(t==null)t=wa(8);on(r,t);gn(e.v,t);return t}function mv(e){var r=nn(e);var t=en(e);return[r,t,"is"]}function gv(e){var r=nn(e);var t=Za(e);return[r,t,"str"]}function bv(e,r,t){if(t==null)t=wa(12+4*e.v.length);sn(r,t);Ja(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function wv(e){var r=fn(e);var t=Za(e);return[r,t,"str"]}function kv(e,r,t){if(t==null)t=wa(8+4*e.v.length);on(r,t);Ja(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function Av(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"b"];if(t.cellFormula){e.l+=2;var f=xd(e,a-e.l,t);s[3]=gd(f,null,n,t.supbooks,t)}else e.l=a;return s}function Tv(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"e"];if(t.cellFormula){e.l+=2;var f=xd(e,a-e.l,t);s[3]=gd(f,null,n,t.supbooks,t)}else e.l=a;return s}function Ev(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=Tn(e);var s=[n,i,"n"];if(t.cellFormula){e.l+=2;var f=xd(e,a-e.l,t);s[3]=gd(f,null,n,t.supbooks,t)}else e.l=a;return s}function yv(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=Za(e);var s=[n,i,"str"];if(t.cellFormula){e.l+=2;var f=xd(e,a-e.l,t);s[3]=gd(f,null,n,t.supbooks,t)}else e.l=a;return s}var Cv=kn;var Sv=An;function _v(e,r){if(r==null)r=wa(4);r._W(4,e);return r}function xv(e,r){var t=e.l+r;var a=kn(e,16);var n=hn(e);var i=Za(e);var s=Za(e);var f=Za(e);e.l=t;var o={rfx:a,relId:n,loc:i,display:f};if(s)o.Tooltip=s;return o}function Ov(e,r){var t=wa(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));An({s:La(e[0]),e:La(e[0])},t);vn("rId"+r,t);var a=e[1].Target.indexOf("#");var n=a==-1?"":e[1].Target.slice(a+1);Ja(n||"",t);Ja(e[1].Tooltip||"",t);Ja("",t);return t.slice(0,t.l)}function Rv(){}function Nv(e,r,t){var a=e.l+r;var n=bn(e,16);var i=e._R(1);var s=[n];s[2]=i;if(t.cellFormula){var f=_d(e,a-e.l,t);s[1]=f}else e.l=a;return s}function Iv(e,r,t){var a=e.l+r;var n=kn(e,16);var i=[n];if(t.cellFormula){var s=Rd(e,a-e.l,t);i[1]=s;e.l=a}else e.l=a;return i}function Fv(e,r,t){if(t==null)t=wa(18);var a=ep(e,r);t._W(-4,e);t._W(-4,e);t._W(4,(a.width||10)*256);t._W(4,0);var n=0;if(r.hidden)n|=1;if(typeof a.width=="number")n|=2;if(r.level)n|=r.level<<8;t._W(2,n);return t}var Dv=["left","right","top","bottom","header","footer"];function Pv(e){var r={};Dv.forEach(function(t){r[t]=Tn(e,8)});return r}function Lv(e,r){if(r==null)r=wa(6*8);rp(e);Dv.forEach(function(t){En(e[t],r)});return r}function Mv(e){var r=e._R(2);e.l+=28;return{RTL:r&32}}function Uv(e,r,t){if(t==null)t=wa(30);var a=924;if((((r||{}).Views||[])[0]||{}).RTL)a|=32;t._W(2,a);t._W(4,0);t._W(4,0);t._W(4,0);t._W(1,0);t._W(1,0);t._W(2,0);t._W(2,100);t._W(2,0);t._W(2,0);t._W(2,0);t._W(4,0);return t}function Bv(e){var r=wa(24);r._W(4,4);r._W(4,1);An(e,r);return r}function Wv(e,r){if(r==null)r=wa(16*4+2);r._W(2,e.password?ml(e.password):0);r._W(4,1);[["objects",false],["scenarios",false],["formatCells",true],["formatColumns",true],["formatRows",true],["insertColumns",true],["insertRows",true],["insertHyperlinks",true],["deleteColumns",true],["deleteRows",true],["selectLockedCells",false],["sort",true],["autoFilter",true],["pivotTables",true],["selectUnlockedCells",false]].forEach(function(t){if(t[1])r._W(4,e[t[0]]!=null&&!e[t[0]]?1:0);else r._W(4,e[t[0]]!=null&&e[t[0]]?0:1)});return r}function Hv(){}function zv(){}function Vv(e,r,t,a,n,i,s){if(!e)return e;var f=r||{};if(!a)a={"!id":{}};if(g!=null&&f.dense==null)f.dense=g;var o=f.dense?[]:{};var l;var c={s:{r:2e6,c:2e6},e:{r:0,c:0}};var h=[];var u=false,d=false;var p,v,m,b,w,k,A,T,E;var y=[];f.biff=12;f["!row"]=0;var C=0,S=false;var _=[];var x={};var O=f.supbooks||n.supbooks||[[]];O.sharedf=x;O.arrayf=_;O.SheetNames=n.SheetNames||n.Sheets.map(function(e){return e.name});if(!f.supbooks){f.supbooks=O;if(n.Names)for(var R=0;R=R[0].s.r&&p.r<=R[0].e.r)if(w>=R[0].s.c&&w<=R[0].e.c){v.F=Ba(R[0]);S=true}}if(!S&&e.length>3)v.f=e[3]}if(c.s.r>p.r)c.s.r=p.r;if(c.s.c>w)c.s.c=w;if(c.e.rp.r)c.s.r=p.r;if(c.s.c>w)c.s.c=w;if(c.e.r=e.s){N[e.e--]={width:e.w/256,hidden:!!(e.flags&1),level:e.level};if(!F){F=true;Wl(e.w/256)}Hl(N[e.e+1])}break;case 161:o["!autofilter"]={ref:Ba(e)};break;case 476:o["!margins"]=e;break;case 147:if(!n.Sheets[t])n.Sheets[t]={};if(e.name)n.Sheets[t].CodeName=e.name;if(e.above||e.left)o["!outline"]={above:e.above,left:e.left};break;case 137:if(!n.Views)n.Views=[{}];if(!n.Views[0])n.Views[0]={};if(e.RTL)n.Views[0].RTL=true;break;case 485:break;case 64:;case 1053:break;case 151:break;case 152:;case 175:;case 644:;case 625:;case 562:;case 396:;case 1112:;case 1146:;case 471:;case 1050:;case 649:;case 1105:;case 589:;case 607:;case 564:;case 1055:;case 168:;case 174:;case 1180:;case 499:;case 507:;case 550:;case 171:;case 167:;case 1177:;case 169:;case 1181:;case 551:;case 552:;case 661:;case 639:;case 478:;case 537:;case 477:;case 536:;case 1103:;case 680:;case 1104:;case 1024:;case 663:;case 535:;case 678:;case 504:;case 1043:;case 428:;case 170:;case 3072:;case 50:;case 2070:;case 1045:break;case 35:u=true;break;case 36:u=false;break;case 37:h.push(g);u=true;break;case 38:h.pop();u=false;break;default:if(r.T){}else if(!u||f.WTF)throw new Error("Unexpected record 0x"+g.toString(16));}},f);delete f.supbooks;delete f["!row"];if(!o["!ref"]&&(c.s.r<2e6||l&&(l.e.r>0||l.e.c>0||l.s.r>0||l.s.c>0)))o["!ref"]=Ba(l||c);if(f.sheetRows&&o["!ref"]){var L=za(o["!ref"]);if(f.sheetRows<=+L.e.r){L.e.r=f.sheetRows-1;if(L.e.r>c.e.r)L.e.r=c.e.r;if(L.e.rc.e.c)L.e.c=c.e.c;if(L.e.c0)o["!merges"]=y;if(N.length>0)o["!cols"]=N;if(I.length>0)o["!rows"]=I;return o}function Gv(e,r,t,a,n,i,s){var f={r:t,c:a};if(r.c)i["!comments"].push([Ma(f),r.c]);if(r.v===undefined)return false;var o="";switch(r.t){case"b":o=r.v?"1":"0";break;case"d":r=Er(r);r.z=r.z||Z[14];r.v=ur(Ar(r.v));r.t="n";break;case"n":;case"e":o=""+r.v;break;default:o=r.v;break;}f.s=tp(n.cellXfs,r,n);if(r.l)i["!links"].push([Ma(f),r.l]);switch(r.t){case"s":;case"str":if(n.bookSST){o=Qd(n.Strings,r.v,n.revStrings);f.t="s";f.v=o;if(s)Ta(e,18,fv(r,f));else Ta(e,7,iv(r,f))}else{f.t="str";if(s)Ta(e,17,kv(r,f));else Ta(e,6,bv(r,f))}return true;case"n":if(r.v==(r.v|0)&&r.v>-1e3&&r.v<1e3){if(s)Ta(e,13,vv(r,f));else Ta(e,2,dv(r,f))}else{if(s)Ta(e,16,hv(r,f));else Ta(e,5,lv(r,f))}return true;case"b":f.t="b";if(s)Ta(e,15,Qp(r,f));else Ta(e,4,Jp(r,f));return true;case"e":f.t="e";if(s)Ta(e,14,av(r,f));else Ta(e,3,rv(r,f));return true;}if(s)Ta(e,12,Kp(r,f));else Ta(e,1,Xp(r,f));return true}function $v(e,r,t,a){var n=za(r["!ref"]||"A1"),i,s="",f=[];Ta(e,145);var o=Array.isArray(r);var l=n.e.r;if(r["!rows"])l=Math.max(n.e.r,r["!rows"].length-1);for(var c=n.s.r;c<=l;++c){s=xa(c);Wp(e,r,n,c);var h=false;if(c<=n.e.r)for(var u=n.s.c;u<=n.e.c;++u){if(c===n.s.r)f[u]=Ia(u); -i=f[u]+s;var d=o?(r[c]||[])[u]:r[i];if(!d){h=false;continue}h=Gv(e,d,c,u,a,r,h)}}Ta(e,146)}function jv(e,r){if(!r||!r["!merges"])return;Ta(e,177,_v(r["!merges"].length));r["!merges"].forEach(function(r){Ta(e,176,Sv(r))});Ta(e,178)}function Xv(e,r){if(!r||!r["!cols"])return;Ta(e,390);r["!cols"].forEach(function(r,t){if(r)Ta(e,60,Fv(t,r))});Ta(e,391)}function Yv(e,r){if(!r||!r["!ref"])return;Ta(e,648);Ta(e,649,Bv(za(r["!ref"])));Ta(e,650)}function Kv(e,r,t){r["!links"].forEach(function(r){if(!r[1].Target)return;var a=li(t,-1,r[1].Target.replace(/#.*$/,""),ii.HLINK);Ta(e,494,Ov(r,a))});delete r["!links"]}function Zv(e,r,t,a){if(r["!comments"].length>0){var n=li(a,-1,"../drawings/vmlDrawing"+(t+1)+".vml",ii.VML);Ta(e,551,vn("rId"+n));r["!legacy"]=n}}function Jv(e,r,t,a){if(!r["!autofilter"])return;var n=r["!autofilter"];var i=typeof n.ref==="string"?n.ref:Ba(n.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var s=t.Workbook.Names;var f=Ua(i);if(f.s.r==f.e.r){f.e.r=Ua(r["!ref"]).e.r;i=Ba(f)}for(var o=0;o16383||l.e.r>1048575){if(r.WTF)throw new Error("Range "+(s["!ref"]||"A1")+" exceeds format limit A1:XFD1048576");l.e.c=Math.min(l.e.c,16383);l.e.r=Math.min(l.e.c,1048575)}s["!links"]=[];s["!comments"]=[];Ta(n,129);if(t.vbaraw||s["!outline"])Ta(n,147,$p(f,s["!outline"]));Ta(n,148,zp(l));qv(n,s,t.Workbook);Qv(n,s);Xv(n,s,e,r,t);$v(n,s,e,r,t);em(n,s);Jv(n,s,t,e);jv(n,s);Kv(n,s,a);if(s["!margins"])Ta(n,476,Lv(s["!margins"]));if(!r||r.ignoreEC||r.ignoreEC==void 0)Yv(n,s);Zv(n,s,e,a);Ta(n,130);return n.end()}function tm(e){var r=[];var t=e.match(/^/);var a;(e.match(/(.*?)<\/c:pt>/gm)||[]).forEach(function(e){var a=e.match(/(.*)<\/c:v><\/c:pt>/);if(!a)return;r[+a[1]]=t?+a[2]:a[2]});var n=rt((e.match(/([\s\S]*?)<\/c:formatCode>/)||["","General"])[1]);(e.match(/(.*?)<\/c:f>/gm)||[]).forEach(function(e){a=e.replace(/<.*?>/g,"")});return[r,n,a]}function am(e,r,t,a,n,i){var s=i||{"!type":"chart"};if(!e)return i;var f=0,o=0,l="A";var c={s:{r:2e6,c:2e6},e:{r:0,c:0}};(e.match(/[\s\S]*?<\/c:numCache>/gm)||[]).forEach(function(e){var r=tm(e);c.s.r=c.s.c=0;c.e.c=f;l=Ia(f);r[0].forEach(function(e,t){s[l+xa(t)]={t:"n",v:e,z:r[1]};o=t});if(c.e.r0)s["!ref"]=Ba(c);return s}function nm(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var i={"!type":"chart","!drawel":null,"!rel":""};var s;var f=e.match(dp);if(f)bp(f[0],i,n,t);if(s=e.match(/drawing r:id="(.*?)"/))i["!rel"]=s[1];if(a["!id"][i["!rel"]])i["!drawel"]=a["!id"][i["!rel"]];return i}function im(e,r){e.l+=10;var t=Za(e,r-10);return{name:t}}function sm(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var i={"!type":"chart","!drawel":null,"!rel":""};var s=[];var f=false;ka(e,function o(e,a,l){switch(l){case 550:i["!rel"]=e;break;case 651:if(!n.Sheets[t])n.Sheets[t]={};if(e.name)n.Sheets[t].CodeName=e.name;break;case 562:;case 652:;case 669:;case 679:;case 551:;case 552:;case 476:;case 3072:break;case 35:f=true;break;case 36:f=false;break;case 37:s.push(l);break;case 38:s.pop();break;default:if(a.T>0)s.push(l);else if(a.T<0)s.pop();else if(!f||r.WTF)throw new Error("Unexpected record 0x"+l.toString(16));}},r);if(a["!id"][i["!rel"]])i["!drawel"]=a["!id"][i["!rel"]];return i}var fm=[["allowRefreshQuery",false,"bool"],["autoCompressPictures",true,"bool"],["backupFile",false,"bool"],["checkCompatibility",false,"bool"],["CodeName",""],["date1904",false,"bool"],["defaultThemeVersion",0,"int"],["filterPrivacy",false,"bool"],["hidePivotFieldList",false,"bool"],["promptedSolutions",false,"bool"],["publishItems",false,"bool"],["refreshAllConnections",false,"bool"],["saveExternalLinkValues",true,"bool"],["showBorderUnselectedTables",true,"bool"],["showInkAnnotation",true,"bool"],["showObjects","all"],["showPivotChartFilter",false,"bool"],["updateLinks","userSet"]];var om=[["activeTab",0,"int"],["autoFilterDateGrouping",true,"bool"],["firstSheet",0,"int"],["minimized",false,"bool"],["showHorizontalScroll",true,"bool"],["showSheetTabs",true,"bool"],["showVerticalScroll",true,"bool"],["tabRatio",600,"int"],["visibility","visible"]];var lm=[];var cm=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function hm(e,r){for(var t=0;t!=e.length;++t){var a=e[t];for(var n=0;n!=r.length;++n){var i=r[n];if(a[i[0]]==null)a[i[0]]=i[1];else switch(i[2]){case"bool":if(typeof a[i[0]]=="string")a[i[0]]=ht(a[i[0]]);break;case"int":if(typeof a[i[0]]=="string")a[i[0]]=parseInt(a[i[0]],10);break;}}}}function um(e,r){for(var t=0;t!=r.length;++t){var a=r[t];if(e[a[0]]==null)e[a[0]]=a[1];else switch(a[2]){case"bool":if(typeof e[a[0]]=="string")e[a[0]]=ht(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function dm(e){um(e.WBProps,fm);um(e.CalcPr,cm);hm(e.WBView,om);hm(e.Sheets,lm);Jd.date1904=ht(e.WBProps.date1904)}function pm(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return ht(e.Workbook.WBProps.date1904)?"true":"false"}var vm=":][*?/\\".split("");function mm(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;vm.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function gm(e,r,t){e.forEach(function(a,n){mm(a);for(var i=0;i22)throw new Error("Bad Code Name: Worksheet"+s)}})}function bm(e){if(!e||!e.SheetNames||!e.Sheets)throw new Error("Invalid Workbook");if(!e.SheetNames.length)throw new Error("Workbook is empty");var r=e.Workbook&&e.Workbook.Sheets||[];gm(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":fm.forEach(function(e){if(c[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=ht(c[e[0]]);break;case"int":t.WBProps[e[0]]=parseInt(c[e[0]],10);break;default:t.WBProps[e[0]]=c[e[0]];}});if(c.codeName)t.WBProps.CodeName=mt(c.codeName);break;case"":break;case"":break;case"":;case"":break;case"":delete c[0];t.WBView.push(c);break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":a=false;break;case"":{i.Ref=rt(mt(e.slice(s,l)));t.Names.push(i)}break;case"":break;case"":delete c[0];t.CalcPr=c;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":;case"":break;case"":a=false;break;case"":a=true;break;case"":a=false;break;case"0;var a={codeName:"ThisWorkbook"};if(e.Workbook&&e.Workbook.WBProps){fm.forEach(function(r){if(e.Workbook.WBProps[r[0]]==null)return;if(e.Workbook.WBProps[r[0]]==r[1])return;a[r[0]]=e.Workbook.WBProps[r[0]]});if(e.Workbook.WBProps.CodeName){a.codeName=e.Workbook.WBProps.CodeName;delete a.CodeName}}r[r.length]=_t("workbookPr",null,a);var n=e.Workbook&&e.Workbook.Sheets||[];var i=0;if(n&&n[0]&&!!n[0].Hidden){r[r.length]="";for(i=0;i!=e.SheetNames.length;++i){if(!n[i])break;if(!n[i].Hidden)break}if(i==e.SheetNames.length)i=0;r[r.length]='';r[r.length]=""}r[r.length]="";for(i=0;i!=e.SheetNames.length;++i){var s={name:nt(e.SheetNames[i].slice(0,31))};s.sheetId=""+(i+1);s["r:id"]="rId"+(i+1);if(n[i])switch(n[i].Hidden){case 1:s.state="hidden";break;case 2:s.state="veryHidden";break;}r[r.length]=_t("sheet",null,s)}r[r.length]="";if(t){r[r.length]="";if(e.Workbook&&e.Workbook.Names)e.Workbook.Names.forEach(function(e){var t={name:e.Name};if(e.Comment)t.comment=e.Comment;if(e.Sheet!=null)t.localSheetId=""+e.Sheet;if(e.Hidden)t.hidden="1";if(!e.Ref)return;r[r.length]=_t("definedName",nt(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Tm(e,r){var t={};t.Hidden=e._R(4);t.iTabID=e._R(4);t.strRelID=pn(e,r-8);t.name=Za(e);return t}function Em(e,r){if(!r)r=wa(127);r._W(4,e.Hidden);r._W(4,e.iTabID);vn(e.strRelID,r);Ja(e.name.slice(0,31),r);return r.length>r.l?r.slice(0,r.l):r}function ym(e,r){var t={};var a=e._R(4);t.defaultThemeVersion=e._R(4);var n=r>8?Za(e):"";if(n.length>0)t.CodeName=n;t.autoCompressPictures=!!(a&65536);t.backupFile=!!(a&64);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 Cm(e,r){if(!r)r=wa(72);var t=0;if(e){if(e.date1904)t|=1;if(e.filterPrivacy)t|=8}r._W(4,t);r._W(4,0);cn(e&&e.CodeName||"ThisWorkbook",r);return r.slice(0,r.l)}function Sm(e,r){var t={};e._R(4);t.ArchID=e._R(4);e.l+=r-8;return t}function _m(e,r,t){var a=e.l+r;var n=e._R(4);e.l+=1;var i=e._R(4);var s=dn(e);var f=Od(e,0,t);var o=hn(e);if(n&32)s="_xlnm."+s;e.l=a;var l={Name:s,Ptg:f,Flags:n};if(i<268435455)l.Sheet=i;if(o)l.Comment=o;return l}function xm(e,r){var t=wa(9);var a=0;var n=e.Name;if(Qn.indexOf(n)>-1){a|=32;n=n.slice(6)}t._W(4,a);t._W(1,0);t._W(4,e.Sheet==null?4294967295:e.Sheet);var i=[t,Ja(n),zd(e.Ref,r)];if(e.Comment)i.push(un(e.Comment));else{var s=wa(4);s._W(4,4294967295);i.push(s)}return F(i)}function Om(e,r){var t={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var a=[];var n=false;if(!r)r={};r.biff=12;var i=[];var s=[[]];s.SheetNames=[];s.XTI=[];Fg[16]={n:"BrtFRTArchID$",f:Sm};ka(e,function f(e,o,l){switch(l){case 156:s.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=gd(e.Ptg,null,null,s,r);delete r.SID;delete e.Ptg;i.push(e);break;case 1036:break;case 357:;case 358:;case 355:;case 667:if(!s[0].length)s[0]=[l,e];else s.push([l,e]);s[s.length-1].XTI=[];break;case 362:if(s.length===0){s[0]=[];s[0].XTI=[]}s[s.length-1].XTI=s[s.length-1].XTI.concat(e);s.XTI=s.XTI.concat(e);break;case 361:break;case 2071:;case 158:;case 143:;case 664:;case 353:break;case 3072:;case 3073:;case 534:;case 677:;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.push(l);n=true;break;case 36:a.pop();n=false;break;case 37:a.push(l);n=true;break;case 38:a.pop();n=false;break;case 16:break;default:if(o.T){}else if(!n||r.WTF&&a[a.length-1]!=37&&a[a.length-1]!=35)throw new Error("Unexpected record 0x"+l.toString(16));}},r);dm(t);t.Names=i;t.supbooks=s;return t}function Rm(e,r){Ta(e,143);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]};Ta(e,156,Em(n))}Ta(e,144)}function Nm(r,t){if(!t)t=wa(127);for(var a=0;a!=4;++a)t._W(4,0);Ja("SheetJS",t);Ja(e.version,t);Ja(e.version,t);Ja("7262",t);return t.length>t.l?t.slice(0,t.l):t}function Im(e,r){if(!r)r=wa(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 Fm(e,r){if(!r.Workbook||!r.Workbook.Sheets)return;var t=r.Workbook.Sheets;var a=0,n=-1,i=-1;for(;an)return;Ta(e,135);Ta(e,158,Im(n));Ta(e,136)}function Dm(e,r){if(!r.Workbook||!r.Workbook.Names)return;r.Workbook.Names.forEach(function(t){try{if(t.Flags&14)return;Ta(e,39,xm(t,r))}catch(a){console.error("Could not serialize defined name "+JSON.stringify(t))}})}function Pm(e){var r=e.SheetNames.length;var t=wa(12*r+28);t._W(4,r+2);t._W(4,0);t._W(4,-2);t._W(4,-2);t._W(4,0);t._W(4,-1);t._W(4,-1);for(var a=0;a-1?rt(r||e).replace(/<.*?>/g,""):a.r;break;case"DateTime":if(e.slice(-1)!="Z")e+="Z";a.v=(Ar(e)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(a.v!==a.v)a.v=rt(e);else if(a.v<60)a.v=a.v-1;if(!c||c=="General")c="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=qn[e];if(l.cellText!==false)a.w=e;break;default:if(e==""&&r==""){a.t="z"}else{a.t="s";a.v=lt(r||e)}break;}tg(a,c,l);if(l.cellFormula!==false){if(a.Formula){var v=rt(a.Formula);if(v.charCodeAt(0)==61)v=v.slice(1);a.f=Lh(v,n);delete a.Formula;if(a.ArrayRange=="RC")a.F=Lh("RC:RC",n);else if(a.ArrayRange){a.F=Lh(a.ArrayRange,n);o.push([za(a.F),a.F])}}else{for(p=0;p=o[p][0].s.r&&n.r<=o[p][0].e.r)if(n.c>=o[p][0].s.c&&n.c<=o[p][0].e.c)a.F=o[p][1]}}if(l.cellStyles){d.forEach(function(e){if(!u.patternType&&e.patternType)u.patternType=e.patternType});a.s=u}if(a.StyleID!==undefined)a.ixfe=a.StyleID}function ig(e){return Qn.indexOf("_xlnm."+e)>-1?"_xlnm."+e:e}function sg(e){e.t=e.v||"";e.t=e.t.replace(/\r\n/g,"\n").replace(/\r/g,"\n");e.v=e.w=e.ixfe=undefined}function fg(e,r){var t=r||{};$e();var n=d(Rt(e));if(t.type=="binary"||t.type=="array"||t.type=="base64"){if(typeof a!=="undefined")n=a.utils.decode(65001,c(n));else n=mt(n)}var i=n.slice(0,1024).toLowerCase(),s=false;i=i.replace(/".*?"/g,"");if((i.indexOf(">")&1023)>Math.min(i.indexOf(",")&1023,i.indexOf(";")&1023)){var f=Er(t);f.type="string";return Fo.to_workbook(n,f)}if(i.indexOf("=0)s=true});if(s)return nb(n,t);Qm={"General Number":"General","General Date":Z[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":Z[15],"Short Date":Z[14],"Long Time":Z[19],"Medium Time":Z[18],"Short Time":Z[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:Z[2],Standard:Z[4],Percent:Z[10],Scientific:Z[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var o;var l=[],h;if(g!=null&&t.dense==null)t.dense=g;var u={},p=[],v=t.dense?[]:{},m="";var b={},w={};var k=Jm(''),A=0;var T=0,E=0;var y={s:{r:2e6,c:2e6},e:{r:0,c:0}};var C={},S={};var _="",x=0;var O=[];var R={},N={},I=0,F=[];var D=[],P={};var L=[],M,U=false;var B=[];var W=[],H={},z=0,V=0;var G={Sheets:[],WBProps:{date1904:false}},$={};Nt.lastIndex=0;n=n.replace(//gm,"");var j="";while(o=Nt.exec(n))switch(o[3]=(j=o[3]).toLowerCase()){case"data":if(j=="data"){if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else if(o[0].charAt(o[0].length-2)!=="/")l.push([o[3],true]);break}if(l[l.length-1][1])break;if(o[1]==="/")ng(n.slice(A,o.index),_,k,l[l.length-1][0]=="comment"?P:b,{c:T,r:E},C,L[T],w,B,t);else{_="";k=Jm(o[0]);A=o.index+o[0].length}break;case"cell":if(o[1]==="/"){if(D.length>0)b.c=D;if((!t.sheetRows||t.sheetRows>E)&&b.v!==void 0){if(t.dense){if(!v[E])v[E]=[];v[E][T]=b}else v[Ia(T)+xa(E)]=b}if(b.HRef){b.l={Target:rt(b.HRef)};if(b.HRefScreenTip)b.l.Tooltip=b.HRefScreenTip;delete b.HRef;delete b.HRefScreenTip}if(b.MergeAcross||b.MergeDown){z=T+(parseInt(b.MergeAcross,10)|0);V=E+(parseInt(b.MergeDown,10)|0);if(z>T||V>E)O.push({s:{c:T,r:E},e:{c:z,r:V}})}if(!t.sheetStubs){if(b.MergeAcross)T=z+1;else++T}else if(b.MergeAcross||b.MergeDown){for(var X=T;X<=z;++X){for(var Y=E;Y<=V;++Y){if(X>T||Y>E){if(t.dense){if(!v[Y])v[Y]=[];v[Y][X]={t:"z"}}else v[Ia(X)+xa(Y)]={t:"z"}}}}T=z+1}else++T}else{b=qm(o[0]);if(b.Index)T=+b.Index-1;if(Ty.e.c)y.e.c=T;if(o[0].slice(-2)==="/>")++T;D=[]}break;case"row":if(o[1]==="/"||o[0].slice(-2)==="/>"){if(Ey.e.r)y.e.r=E;if(o[0].slice(-2)==="/>"){w=Jm(o[0]);if(w.Index)E=+w.Index-1}T=0;++E}else{w=Jm(o[0]);if(w.Index)E=+w.Index-1;H={};if(w.AutoFitHeight=="0"||w.Height){H.hpx=parseInt(w.Height,10);H.hpt=Gl(H.hpx);W[E]=H}if(w.Hidden=="1"){H.hidden=true;W[E]=H}}break;case"worksheet":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"));p.push(m);if(y.s.r<=y.e.r&&y.s.c<=y.e.c){v["!ref"]=Ba(y);if(t.sheetRows&&t.sheetRows<=y.e.r){v["!fullref"]=v["!ref"];y.e.r=t.sheetRows-1;v["!ref"]=Ba(y)}}if(O.length)v["!merges"]=O;if(L.length>0)v["!cols"]=L;if(W.length>0)v["!rows"]=W;u[m]=v}else{y={s:{r:2e6,c:2e6},e:{r:0,c:0}};E=T=0;l.push([o[3],false]);h=Jm(o[0]);m=rt(h.Name);v=t.dense?[]:{};O=[];B=[];W=[];$={name:m,Hidden:0};G.Sheets.push($)}break;case"table":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else if(o[0].slice(-2)=="/>")break;else{l.push([o[3],false]);L=[];U=false}break;case"style":if(o[1]==="/")ag(C,S,t);else S=Jm(o[0]);break;case"numberformat":S.nf=rt(Jm(o[0]).Format||"General");if(Qm[S.nf])S.nf=Qm[S.nf];for(var K=0;K!=392;++K)if(Z[K]==S.nf)break;if(K==392)for(K=57;K!=392;++K)if(Z[K]==null){qe(S.nf,K);break}break;case"column":if(l[l.length-1][0]!=="table")break;if(o[1]==="/")break;M=Jm(o[0]);if(M.Hidden){M.hidden=true;delete M.Hidden}if(M.Width)M.wpx=parseInt(M.Width,10);if(!U&&M.wpx>10){U=true;Pl=Il;for(var J=0;J0)ee.Sheet=G.Sheets.length-1;G.Names.push(ee);break;case"namedcell":break;case"b":break;case"i":break;case"u":break;case"s":break;case"em":break;case"h2":break;case"h3":break;case"sub":break;case"sup":break;case"span":break;case"alignment":break;case"borders":break;case"border":break;case"font":if(o[0].slice(-2)==="/>")break;else if(o[1]==="/")_+=n.slice(x,o.index);else x=o.index+o[0].length;break;case"interior":if(!t.cellStyles)break;S.Interior=Jm(o[0]);break;case"protection":break;case"author":;case"title":;case"description":;case"created":;case"keywords":;case"subject":;case"category":;case"company":;case"lastauthor":;case"lastsaved":;case"lastprinted":;case"version":;case"revision":;case"totaltime":;case"hyperlinkbase":;case"manager":;case"contentstatus":;case"identifier":;case"language":;case"appname":if(o[0].slice(-2)==="/>")break;else if(o[1]==="/")Ii(R,j,n.slice(I,o.index));else I=o.index+o[0].length;break;case"paragraphs":break;case"styles":;case"workbook":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else l.push([o[3],false]);break;case"comment":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"));sg(P);D.push(P)}else{l.push([o[3],false]);h=Jm(o[0]);P={a:h.Author}}break;case"autofilter":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else if(o[0].charAt(o[0].length-2)!=="/"){var re=Jm(o[0]);v["!autofilter"]={ref:Lh(re.Range).replace(/\$/g,"")};l.push([o[3],true])}break;case"name":break;case"datavalidation":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else{if(o[0].charAt(o[0].length-2)!=="/")l.push([o[3],true])}break;case"pixelsperinch":break;case"componentoptions":;case"documentproperties":;case"customdocumentproperties":;case"officedocumentsettings":;case"pivottable":;case"pivotcache":;case"names":;case"mapinfo":;case"pagebreaks":;case"querytable":;case"sorting":;case"schema":;case"conditionalformatting":;case"smarttagtype":;case"smarttags":;case"excelworkbook":;case"workbookoptions":;case"worksheetoptions":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else if(o[0].charAt(o[0].length-2)!=="/")l.push([o[3],true]);break;case"null":break;default:if(l.length==0&&o[3]=="document")return mb(n,t);if(l.length==0&&o[3]=="uof")return mb(n,t);var te=true;switch(l[l.length-1][0]){case"officedocumentsettings":switch(o[3]){case"allowpng":break;case"removepersonalinformation":break;case"downloadcomponents":break;case"locationofcomponents":break;case"colors":break;case"color":break;case"index":break;case"rgb":break;case"targetscreensize":break;case"readonlyrecommended":break;default:te=false;}break;case"componentoptions":switch(o[3]){case"toolbar":break;case"hideofficelogo":break;case"spreadsheetautofit":break;case"label":break;case"caption":break;case"maxheight":break;case"maxwidth":break;case"nextsheetnumber":break;default:te=false;}break;case"excelworkbook":switch(o[3]){case"date1904":G.WBProps.date1904=true;break;case"windowheight":break;case"windowwidth":break;case"windowtopx":break;case"windowtopy":break;case"tabratio":break;case"protectstructure":break;case"protectwindow":break;case"protectwindows":break;case"activesheet":break;case"displayinknotes":break;case"firstvisiblesheet":break;case"supbook":break;case"sheetname":break;case"sheetindex":break;case"sheetindexfirst":break;case"sheetindexlast":break;case"dll":break;case"acceptlabelsinformulas":break;case"donotsavelinkvalues":break;case"iteration":break;case"maxiterations":break;case"maxchange":break;case"path":break;case"xct":break;case"count":break;case"selectedsheets":break;case"calculation":break;case"uncalced":break;case"startupprompt":break;case"crn":break;case"externname":break;case"formula":break;case"colfirst":break;case"collast":break;case"wantadvise":break;case"boolean":break;case"error":break;case"text":break;case"ole":break;case"noautorecover":break;case"publishobjects":break;case"donotcalculatebeforesave":break;case"number":break;case"refmoder1c1":break;case"embedsavesmarttags":break;default:te=false;}break;case"workbookoptions":switch(o[3]){case"owcversion":break;case"height":break;case"width":break;default:te=false;}break;case"worksheetoptions":switch(o[3]){case"visible":if(o[0].slice(-2)==="/>"){}else if(o[1]==="/")switch(n.slice(I,o.index)){case"SheetHidden":$.Hidden=1;break;case"SheetVeryHidden":$.Hidden=2;break;}else I=o.index+o[0].length;break;case"header":if(!v["!margins"])rp(v["!margins"]={},"xlml");if(!isNaN(+Jr(o[0]).Margin))v["!margins"].header=+Jr(o[0]).Margin;break;case"footer":if(!v["!margins"])rp(v["!margins"]={},"xlml");if(!isNaN(+Jr(o[0]).Margin))v["!margins"].footer=+Jr(o[0]).Margin;break;case"pagemargins":var ae=Jr(o[0]);if(!v["!margins"])rp(v["!margins"]={},"xlml");if(!isNaN(+ae.Top))v["!margins"].top=+ae.Top;if(!isNaN(+ae.Left))v["!margins"].left=+ae.Left;if(!isNaN(+ae.Right))v["!margins"].right=+ae.Right;if(!isNaN(+ae.Bottom))v["!margins"].bottom=+ae.Bottom;break;case"displayrighttoleft":if(!G.Views)G.Views=[];if(!G.Views[0])G.Views[0]={};G.Views[0].RTL=true;break;case"freezepanes":break;case"frozennosplit":break;case"splithorizontal":;case"splitvertical":break;case"donotdisplaygridlines":break;case"activerow":break;case"activecol":break;case"toprowbottompane":break;case"leftcolumnrightpane":break;case"unsynced":break;case"print":break;case"printerrors":break;case"panes":break;case"scale":break;case"pane":break;case"number":break;case"layout":break;case"pagesetup":break;case"selected":break;case"protectobjects":break;case"enableselection":break;case"protectscenarios":break;case"validprinterinfo":break;case"horizontalresolution":break;case"verticalresolution":break;case"numberofcopies":break;case"activepane":break;case"toprowvisible":break;case"leftcolumnvisible":break;case"fittopage":break;case"rangeselection":break;case"papersizeindex":break;case"pagelayoutzoom":break;case"pagebreakzoom":break;case"filteron":break;case"fitwidth":break;case"fitheight":break;case"commentslayout":break;case"zoom":break;case"lefttoright":break;case"gridlines":break;case"allowsort":break;case"allowfilter":break;case"allowinsertrows":break;case"allowdeleterows":break;case"allowinsertcols":break;case"allowdeletecols":break;case"allowinserthyperlinks":break;case"allowformatcells":break;case"allowsizecols":break;case"allowsizerows":break;case"nosummaryrowsbelowdetail":if(!v["!outline"])v["!outline"]={};v["!outline"].above=true;break;case"tabcolorindex":break;case"donotdisplayheadings":break;case"showpagelayoutzoom":break;case"nosummarycolumnsrightdetail":if(!v["!outline"])v["!outline"]={};v["!outline"].left=true;break;case"blackandwhite":break;case"donotdisplayzeros":break;case"displaypagebreak":break;case"rowcolheadings":break;case"donotdisplayoutline":break;case"noorientation":break;case"allowusepivottables":break;case"zeroheight":break;case"viewablerange":break;case"selection":break;case"protectcontents":break;default:te=false;}break;case"pivottable":;case"pivotcache":switch(o[3]){case"immediateitemsondrop":break;case"showpagemultipleitemlabel":break;case"compactrowindent":break;case"location":break;case"pivotfield":break;case"orientation": -break;case"layoutform":break;case"layoutsubtotallocation":break;case"layoutcompactrow":break;case"position":break;case"pivotitem":break;case"datatype":break;case"datafield":break;case"sourcename":break;case"parentfield":break;case"ptlineitems":break;case"ptlineitem":break;case"countofsameitems":break;case"item":break;case"itemtype":break;case"ptsource":break;case"cacheindex":break;case"consolidationreference":break;case"filename":break;case"reference":break;case"nocolumngrand":break;case"norowgrand":break;case"blanklineafteritems":break;case"hidden":break;case"subtotal":break;case"basefield":break;case"mapchilditems":break;case"function":break;case"refreshonfileopen":break;case"printsettitles":break;case"mergelabels":break;case"defaultversion":break;case"refreshname":break;case"refreshdate":break;case"refreshdatecopy":break;case"versionlastrefresh":break;case"versionlastupdate":break;case"versionupdateablemin":break;case"versionrefreshablemin":break;case"calculation":break;default:te=false;}break;case"pagebreaks":switch(o[3]){case"colbreaks":break;case"colbreak":break;case"rowbreaks":break;case"rowbreak":break;case"colstart":break;case"colend":break;case"rowend":break;default:te=false;}break;case"autofilter":switch(o[3]){case"autofiltercolumn":break;case"autofiltercondition":break;case"autofilterand":break;case"autofilteror":break;default:te=false;}break;case"querytable":switch(o[3]){case"id":break;case"autoformatfont":break;case"autoformatpattern":break;case"querysource":break;case"querytype":break;case"enableredirections":break;case"refreshedinxl9":break;case"urlstring":break;case"htmltables":break;case"connection":break;case"commandtext":break;case"refreshinfo":break;case"notitles":break;case"nextid":break;case"columninfo":break;case"overwritecells":break;case"donotpromptforfile":break;case"textwizardsettings":break;case"source":break;case"number":break;case"decimal":break;case"thousandseparator":break;case"trailingminusnumbers":break;case"formatsettings":break;case"fieldtype":break;case"delimiters":break;case"tab":break;case"comma":break;case"autoformatname":break;case"versionlastedit":break;case"versionlastrefresh":break;default:te=false;}break;case"datavalidation":switch(o[3]){case"range":break;case"type":break;case"min":break;case"max":break;case"sort":break;case"descending":break;case"order":break;case"casesensitive":break;case"value":break;case"errorstyle":break;case"errormessage":break;case"errortitle":break;case"inputmessage":break;case"inputtitle":break;case"combohide":break;case"inputhide":break;case"condition":break;case"qualifier":break;case"useblank":break;case"value1":break;case"value2":break;case"format":break;case"cellrangelist":break;default:te=false;}break;case"sorting":;case"conditionalformatting":switch(o[3]){case"range":break;case"type":break;case"min":break;case"max":break;case"sort":break;case"descending":break;case"order":break;case"casesensitive":break;case"value":break;case"errorstyle":break;case"errormessage":break;case"errortitle":break;case"cellrangelist":break;case"inputmessage":break;case"inputtitle":break;case"combohide":break;case"inputhide":break;case"condition":break;case"qualifier":break;case"useblank":break;case"value1":break;case"value2":break;case"format":break;default:te=false;}break;case"mapinfo":;case"schema":;case"data":switch(o[3]){case"map":break;case"entry":break;case"range":break;case"xpath":break;case"field":break;case"xsdtype":break;case"filteron":break;case"aggregate":break;case"elementtype":break;case"attributetype":break;case"schema":;case"element":;case"complextype":;case"datatype":;case"all":;case"attribute":;case"extends":break;case"row":break;default:te=false;}break;case"smarttags":break;default:te=false;break;}if(te)break;if(o[3].match(/!\[CDATA/))break;if(!l[l.length-1][1])throw"Unrecognized tag: "+o[3]+"|"+l.join("|");if(l[l.length-1][0]==="customdocumentproperties"){if(o[0].slice(-2)==="/>")break;else if(o[1]==="/")rg(N,j,F,n.slice(I,o.index));else{F=o;I=o.index+o[0].length}break}if(t.WTF)throw"Unrecognized tag: "+o[3]+"|"+l.join("|");}var ne={};if(!t.bookSheets&&!t.bookProps)ne.Sheets=u;ne.SheetNames=p;ne.Workbook=G;ne.SSF=Er(Z);ne.Props=R;ne.Custprops=N;ne.bookType="xlml";return ne}function og(e,r){bw(r=r||{});switch(r.type||"base64"){case"base64":return fg(T(e),r);case"binary":;case"buffer":;case"file":return fg(e,r);case"array":return fg(R(e),r);}}function lg(e,r){var t=[];if(e.Props)t.push(Fi(e.Props,r));if(e.Custprops)t.push(Di(e.Props,e.Custprops,r));return t.join("")}function cg(e){if((((e||{}).Workbook||{}).WBProps||{}).date1904)return'';return""}function hg(e,r){var t=[''];r.cellXfs.forEach(function(e,r){var a=[];a.push(_t("NumberFormat",null,{"ss:Format":nt(Z[e.numFmtId])}));var n={"ss:ID":"s"+(21+r)};t.push(_t("Style",a.join(""),n))});return _t("Styles",t.join(""))}function ug(e){return _t("NamedRange",null,{"ss:Name":e.Name.slice(0,6)=="_xlnm."?e.Name.slice(6):e.Name,"ss:RefersTo":"="+Uh(e.Ref,{r:0,c:0})})}function dg(e){if(!((e||{}).Workbook||{}).Names)return"";var r=e.Workbook.Names;var t=[];for(var a=0;a");if(e["!margins"].header)n.push(_t("Header",null,{"x:Margin":e["!margins"].header}));if(e["!margins"].footer)n.push(_t("Footer",null,{"x:Margin":e["!margins"].footer}));n.push(_t("PageMargins",null,{"x:Bottom":e["!margins"].bottom||"0.75","x:Left":e["!margins"].left||"0.7","x:Right":e["!margins"].right||"0.7","x:Top":e["!margins"].top||"0.75"}));n.push("")}if(a&&a.Workbook&&a.Workbook.Sheets&&a.Workbook.Sheets[t]){if(a.Workbook.Sheets[t].Hidden)n.push(_t("Visible",a.Workbook.Sheets[t].Hidden==1?"SheetHidden":"SheetVeryHidden",{}));else{for(var i=0;i")}}if(((((a||{}).Workbook||{}).Views||[])[0]||{}).RTL)n.push("");if(e["!protect"]){n.push(Ct("ProtectContents","True"));if(e["!protect"].objects)n.push(Ct("ProtectObjects","True"));if(e["!protect"].scenarios)n.push(Ct("ProtectScenarios","True"));if(e["!protect"].selectLockedCells!=null&&!e["!protect"].selectLockedCells)n.push(Ct("EnableSelection","NoSelection"));else if(e["!protect"].selectUnlockedCells!=null&&!e["!protect"].selectUnlockedCells)n.push(Ct("EnableSelection","UnlockedCells"));[["formatCells","AllowFormatCells"],["formatColumns","AllowSizeCols"],["formatRows","AllowSizeRows"],["insertColumns","AllowInsertCols"],["insertRows","AllowInsertRows"],["insertHyperlinks","AllowInsertHyperlinks"],["deleteColumns","AllowDeleteCols"],["deleteRows","AllowDeleteRows"],["sort","AllowSort"],["autoFilter","AllowFilter"],["pivotTables","AllowUsePivotTables"]].forEach(function(r){if(e["!protect"][r[0]])n.push("<"+r[1]+"/>")})}if(n.length==0)return"";return _t("WorksheetOptions",n.join(""),{xmlns:Dt.x})}function mg(e){return e.map(function(e){var r=ct(e.t||"");var t=_t("ss:Data",r,{xmlns:"http://www.w3.org/TR/REC-html40"});return _t("Comment",t,{"ss:Author":e.a})}).join("")}function gg(e,r,t,a,n,i,s){if(!e||e.v==undefined&&e.f==undefined)return"";var f={};if(e.f)f["ss:Formula"]="="+nt(Uh(e.f,s));if(e.F&&e.F.slice(0,r.length)==r){var o=La(e.F.slice(r.length+1));f["ss:ArrayRange"]="RC:R"+(o.r==s.r?"":"["+(o.r-s.r)+"]")+"C"+(o.c==s.c?"":"["+(o.c-s.c)+"]")}if(e.l&&e.l.Target){f["ss:HRef"]=nt(e.l.Target);if(e.l.Tooltip)f["x:HRefScreenTip"]=nt(e.l.Tooltip)}if(t["!merges"]){var l=t["!merges"];for(var c=0;c!=l.length;++c){if(l[c].s.c!=s.c||l[c].s.r!=s.r)continue;if(l[c].e.c>l[c].s.c)f["ss:MergeAcross"]=l[c].e.c-l[c].s.c;if(l[c].e.r>l[c].s.r)f["ss:MergeDown"]=l[c].e.r-l[c].s.r}}var h="",u="";switch(e.t){case"z":if(!a.sheetStubs)return"";break;case"n":h="Number";u=String(e.v);break;case"b":h="Boolean";u=e.v?"1":"0";break;case"e":h="Error";u=Jn[e.v];break;case"d":h="DateTime";u=new Date(e.v).toISOString();if(e.z==null)e.z=e.z||Z[14];break;case"s":h="String";u=ot(e.v||"");break;}var d=tp(a.cellXfs,e,a);f["ss:StyleID"]="s"+(21+d);f["ss:Index"]=s.c+1;var p=e.v!=null?u:"";var v=e.t=="z"?"":''+p+"";if((e.c||[]).length>0)v+=mg(e.c);return _t("Cell",v,f)}function bg(e,r){var t='"}function wg(e,r,t,a){if(!e["!ref"])return"";var n=za(e["!ref"]);var i=e["!merges"]||[],s=0;var f=[];if(e["!cols"])e["!cols"].forEach(function(e,r){Hl(e);var t=!!e.width;var a=ep(r,e);var n={"ss:Index":r+1};if(t)n["ss:Width"]=Ll(a.width);if(e.hidden)n["ss:Hidden"]="1";f.push(_t("Column",null,n))});var o=Array.isArray(e);for(var l=n.s.r;l<=n.e.r;++l){var c=[bg(l,(e["!rows"]||[])[l])];for(var h=n.s.c;h<=n.e.c;++h){var u=false;for(s=0;s!=i.length;++s){if(i[s].s.c>h)continue;if(i[s].s.r>l)continue;if(i[s].e.c");if(c.length>2)f.push(c.join(""))}return f.join("")}function kg(e,r,t){var a=[];var n=t.SheetNames[e];var i=t.Sheets[n];var s=i?pg(i,r,e,t):"";if(s.length>0)a.push(""+s+"");s=i?wg(i,r,e,t):"";if(s.length>0)a.push(""+s+"
");a.push(vg(i,r,e,t));if(i["!autofilter"])a.push('');return a.join("")}function Ag(e,r){if(!r)r={};if(!e.SSF)e.SSF=Er(Z);if(e.SSF){$e();Ge(e.SSF);r.revssf=lr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF;r.cellXfs=[];tp(r.cellXfs,{},{revssf:{General:0}})}var t=[];t.push(lg(e,r));t.push(cg(e,r));t.push("");t.push("");for(var a=0;a40)return r;t.l-=4;r.Reserved1=t._R(0,"lpstr-ansi");if(t.length-t.l<=4)return r;a=t._R(4);if(a!==1907505652)return r;r.UnicodeClipboardFormat=Rn(t);a=t._R(4);if(a==0||a>40)return r;t.l-=4;r.Reserved2=t._R(0,"lpwstr")}var Eg=[60,1084,2066,2165,2175];function yg(e,r,t,a,n){var i=a;var s=[];var f=t.slice(t.l,t.l+i);if(n&&n.enc&&n.enc.insitu&&f.length>0)switch(e){case 9:;case 521:;case 1033:;case 2057:;case 47:;case 405:;case 225:;case 406:;case 312:;case 404:;case 10:break;case 133:break;default:n.enc.insitu(f);}s.push(f);t.l+=i;var o=sa(t,t.l),l=Dg[o];var c=0;while(l!=null&&Eg.indexOf(o)>-1){i=sa(t,t.l+2);c=t.l+4;if(o==2066)c+=4;else if(o==2165||o==2175){c+=12}f=t.slice(c,t.l+4+i);s.push(f);t.l+=4+i;l=Dg[o=sa(t,t.l)]}var h=F(s);ga(h,0);var u=0;h.lens=[];for(var d=0;d1)return;if(t.sheetRows&&e.r>=t.sheetRows)return;if(t.cellStyles&&r.XF&&r.XF.data)x(e,r,t);delete r.ixfe;delete r.XF;u=e;d=Ma(e);if(!s||!s.s||!s.e)s={s:{r:0,c:0},e:{r:0,c:0}};if(e.rs.e.r)s.e.r=e.r+1;if(e.c+1>s.e.c)s.e.c=e.c+1;if(t.cellFormula&&r.f){for(var a=0;ae.c||k[a][0].s.r>e.r)continue;if(k[a][0].e.c>8)!==j)throw new Error("rt mismatch: "+K+"!="+j);if(Y.r==12){e.l+=10;X-=10}}var J={};if(j===10)J=Y.f(e,X,R);else J=yg(j,Y,e,X,R);if(B==0&&[9,521,1033,2057].indexOf(U)===-1)continue;switch(j){case 34:t.opts.Date1904=C.WBProps.date1904=J;break;case 134:t.opts.WriteProtect=true;break;case 47:if(!R.enc)e.l=0;R.enc=J;if(!r.password)throw new Error("File is password-protected");if(J.valid==null)throw new Error("Encryption scheme unsupported");if(!J.valid)throw new Error("Password is incorrect");break;case 92:R.lastuser=J;break;case 66:var q=Number(J);switch(q){case 21010:q=1200;break;case 32768:q=1e4;break;case 32769:q=1252;break;}o(R.codepage=q);G=true;break;case 317:R.rrtabid=J;break;case 25:R.winlocked=J;break;case 439:t.opts["RefreshAll"]=J;break;case 12:t.opts["CalcCount"]=J;break;case 16:t.opts["CalcDelta"]=J;break;case 17:t.opts["CalcIter"]=J;break;case 13:t.opts["CalcMode"]=J;break;case 14:t.opts["CalcPrecision"]=J;break;case 95:t.opts["CalcSaveRecalc"]=J;break;case 15:R.CalcRefMode=J;break;case 2211:t.opts.FullCalc=J;break;case 129:if(J.fDialog)n["!type"]="dialog";if(!J.fBelow)(n["!outline"]||(n["!outline"]={})).above=true;if(!J.fRight)(n["!outline"]||(n["!outline"]={})).left=true;break;case 224:E.push(J);break;case 430:M.push([J]);M[M.length-1].XTI=[];break;case 35:;case 547:M[M.length-1].push(J);break;case 24:;case 536:V={Name:J.Name,Ref:gd(J.rgce,s,null,M,R)};if(J.itab>0)V.Sheet=J.itab-1;M.names.push(V);if(!M[0]){M[0]=[];M[0].XTI=[]}M[M.length-1].push(J);if(J.Name=="_xlnm._FilterDatabase"&&J.itab>0)if(J.rgce&&J.rgce[0]&&J.rgce[0][0]&&J.rgce[0][0][0]=="PtgArea3d")z[J.itab-1]={ref:Ba(J.rgce[0][0][1][2])};break;case 22:R.ExternCount=J;break;case 23:if(M.length==0){M[0]=[];M[0].XTI=[]}M[M.length-1].XTI=M[M.length-1].XTI.concat(J);M.XTI=M.XTI.concat(J);break;case 2196:if(R.biff<8)break;if(V!=null)V.Comment=J[1];break;case 18:n["!protect"]=J;break;case 19:if(J!==0&&R.WTF)console.error("Password verifier: "+J);break;case 133:{i[J.pos]=J;R.snames.push(J.name)}break;case 10:{if(--B)break;if(s.e){if(s.e.r>0&&s.e.c>0){s.e.r--;s.e.c--;n["!ref"]=Ba(s);if(r.sheetRows&&r.sheetRows<=s.e.r){var Q=s.e.r;s.e.r=r.sheetRows-1;n["!fullref"]=n["!ref"];n["!ref"]=Ba(s);s.e.r=Q}s.e.r++;s.e.c++}if(I.length>0)n["!merges"]=I;if(F.length>0)n["!objects"]=F;if(D.length>0)n["!cols"]=D;if(P.length>0)n["!rows"]=P;C.Sheets.push(S)}if(c==="")h=n;else a[c]=n;n=r.dense?[]:{}}break;case 9:;case 521:;case 1033:;case 2057:{if(R.biff===8)R.biff={9:2,521:3,1033:4}[j]||{512:2,768:3,1024:4,1280:5,1536:8,2:2,7:2}[J.BIFFVer]||8;R.biffguess=J.BIFFVer==0;if(J.BIFFVer==0&&J.dt==4096){R.biff=5;G=true;o(R.codepage=28591)}if(R.biff==8&&J.BIFFVer==0&&J.dt==16)R.biff=2;if(B++)break;n=r.dense?[]:{};if(R.biff<8&&!G){G=true;o(R.codepage=r.codepage||1252)}if(R.biff<5||J.BIFFVer==0&&J.dt==4096){if(c==="")c="Sheet1";s={s:{r:0,c:0},e:{r:0,c:0}};var ee={pos:e.l-X,name:c};i[ee.pos]=ee;R.snames.push(c)}else c=(i[$]||{name:""}).name;if(J.dt==32)n["!type"]="chart";if(J.dt==64)n["!type"]="macro";I=[];F=[];R.arrayf=k=[];D=[];P=[];L=false;S={Hidden:(i[$]||{hs:0}).hs,name:c}}break;case 515:;case 3:;case 2:{if(n["!type"]=="chart")if(r.dense?(n[J.r]||[])[J.c]:n[Ma({c:J.c,r:J.r})])++J.c;A={ixfe:J.ixfe,XF:E[J.ixfe]||{},v:J.val,t:"n"};if(W>0)A.z=H[A.ixfe>>8&63];Cg(A,r,t.opts.Date1904);O({c:J.c,r:J.r},A,r)}break;case 5:;case 517:{A={ixfe:J.ixfe,XF:E[J.ixfe],v:J.val,t:J.t};if(W>0)A.z=H[A.ixfe>>8&63];Cg(A,r,t.opts.Date1904);O({c:J.c,r:J.r},A,r)}break;case 638:{A={ixfe:J.ixfe,XF:E[J.ixfe],v:J.rknum,t:"n"};if(W>0)A.z=H[A.ixfe>>8&63];Cg(A,r,t.opts.Date1904);O({c:J.c,r:J.r},A,r)}break;case 189:{for(var re=J.c;re<=J.C;++re){var te=J.rkrec[re-J.c][0];A={ixfe:te,XF:E[te],v:J.rkrec[re-J.c][1],t:"n"};if(W>0)A.z=H[A.ixfe>>8&63];Cg(A,r,t.opts.Date1904);O({c:re,r:J.r},A,r)}}break;case 6:;case 518:;case 1030:{if(J.val=="String"){f=J;break}A=Sg(J.val,J.cell.ixfe,J.tt);A.XF=E[A.ixfe];if(r.cellFormula){var ae=J.formula;if(ae&&ae[0]&&ae[0][0]&&ae[0][0][0]=="PtgExp"){var ne=ae[0][0][1][0],ie=ae[0][0][1][1];var se=Ma({r:ne,c:ie});if(w[se])A.f=""+gd(J.formula,s,J.cell,M,R);else A.F=((r.dense?(n[ne]||[])[ie]:n[se])||{}).F}else A.f=""+gd(J.formula,s,J.cell,M,R)}if(W>0)A.z=H[A.ixfe>>8&63];Cg(A,r,t.opts.Date1904);O(J.cell,A,r);f=J}break;case 7:;case 519:{if(f){f.val=J;A=Sg(J,f.cell.ixfe,"s");A.XF=E[A.ixfe];if(r.cellFormula){A.f=""+gd(f.formula,s,f.cell,M,R)}if(W>0)A.z=H[A.ixfe>>8&63];Cg(A,r,t.opts.Date1904);O(f.cell,A,r);f=null}else throw new Error("String record expects Formula")}break;case 33:;case 545:{k.push(J);var fe=Ma(J[0].s);p=r.dense?(n[J[0].s.r]||[])[J[0].s.c]:n[fe];if(r.cellFormula&&p){if(!f)break;if(!fe||!p)break;p.f=""+gd(J[1],s,J[0],M,R);p.F=Ba(J[0])}}break;case 1212:{if(!r.cellFormula)break;if(d){if(!f)break;w[Ma(f.cell)]=J[0];p=r.dense?(n[f.cell.r]||[])[f.cell.c]:n[Ma(f.cell)];(p||{}).f=""+gd(J[0],s,u,M,R)}}break;case 253:A=Sg(l[J.isst].t,J.ixfe,"s");if(l[J.isst].h)A.h=l[J.isst].h;A.XF=E[A.ixfe];if(W>0)A.z=H[A.ixfe>>8&63];Cg(A,r,t.opts.Date1904);O({c:J.c,r:J.r},A,r);break;case 513:if(r.sheetStubs){A={ixfe:J.ixfe,XF:E[J.ixfe],t:"z"};if(W>0)A.z=H[A.ixfe>>8&63];Cg(A,r,t.opts.Date1904);O({c:J.c,r:J.r},A,r)}break;case 190:if(r.sheetStubs){for(var oe=J.c;oe<=J.C;++oe){var le=J.ixfe[oe-J.c];A={ixfe:le,XF:E[le],t:"z"};if(W>0)A.z=H[A.ixfe>>8&63];Cg(A,r,t.opts.Date1904);O({c:oe,r:J.r},A,r)}}break;case 214:;case 516:;case 4:A=Sg(J.val,J.ixfe,"s");A.XF=E[A.ixfe];if(W>0)A.z=H[A.ixfe>>8&63];Cg(A,r,t.opts.Date1904);O({c:J.c,r:J.r},A,r);break;case 0:;case 512:{if(B===1)s=J}break;case 252:{l=J}break;case 1054:{if(R.biff==4){H[W++]=J[1];for(var ce=0;ce=163)qe(J[1],W+163)}else qe(J[1],J[0])}break;case 30:{H[W++]=J;for(var he=0;he=163)qe(J,W+163)}break;case 229:I=I.concat(J);break;case 93:F[J.cmo[0]]=R.lastobj=J;break;case 438:R.lastobj.TxO=J;break;case 127:R.lastobj.ImData=J;break;case 440:{for(b=J[0].s.r;b<=J[0].e.r;++b)for(m=J[0].s.c;m<=J[0].e.c;++m){p=r.dense?(n[b]||[])[m]:n[Ma({c:m,r:b})];if(p)p.l=J[1]}}break;case 2048:{for(b=J[0].s.r;b<=J[0].e.r;++b)for(m=J[0].s.c;m<=J[0].e.c;++m){p=r.dense?(n[b]||[])[m]:n[Ma({c:m,r:b})];if(p&&p.l)p.l.Tooltip=J[1]}}break;case 28:{if(R.biff<=5&&R.biff>=2)break;p=r.dense?(n[J[0].r]||[])[J[0].c]:n[Ma(J[0])];var ue=F[J[2]];if(!p){if(r.dense){if(!n[J[0].r])n[J[0].r]=[];p=n[J[0].r][J[0].c]={t:"z"}}else{p=n[Ma(J[0])]={t:"z"}}s.e.r=Math.max(s.e.r,J[0].r);s.s.r=Math.min(s.s.r,J[0].r);s.e.c=Math.max(s.e.c,J[0].c);s.s.c=Math.min(s.s.c,J[0].c)}if(!p.c)p.c=[];v={a:J[1],t:ue.TxO.t};p.c.push(v)}break;case 2173:Kc(E[J.ixfe],J.ext);break;case 125:{if(!R.cellStyles)break;while(J.e>=J.s){D[J.e--]={width:J.w/256,level:J.level||0,hidden:!!(J.flags&1)};if(!L){L=true;Wl(J.w/256)}Hl(D[J.e+1])}}break;case 520:{var de={};if(J.level!=null){P[J.r]=de;de.level=J.level}if(J.hidden){P[J.r]=de;de.hidden=true}if(J.hpt){P[J.r]=de;de.hpt=J.hpt;de.hpx=$l(J.hpt)}}break;case 38:;case 39:;case 40:;case 41:if(!n["!margins"])rp(n["!margins"]={});n["!margins"][{38:"left",39:"right",40:"top",41:"bottom"}[j]]=J;break;case 161:if(!n["!margins"])rp(n["!margins"]={});n["!margins"].header=J.header;n["!margins"].footer=J.footer;break;case 574:if(J.RTL)C.Views[0].RTL=true;break;case 146:y=J;break;case 2198:N=J;break;case 140:T=J;break;case 442:{if(!c)C.WBProps.CodeName=J||"ThisWorkbook";else S.CodeName=J||S.name}break;}}else{if(!Y)console.error("Missing Info for XLS Record 0x"+j.toString(16));e.l+=X}}t.SheetNames=sr(i).sort(function(e,r){return Number(e)-Number(r)}).map(function(e){return i[e].name});if(!r.bookSheets)t.Sheets=a;if(!t.SheetNames.length&&h["!ref"]){t.SheetNames.push("Sheet1");if(t.Sheets)t.Sheets["Sheet1"]=h}else t.Preamble=h;if(t.Sheets)z.forEach(function(e,r){t.Sheets[t.SheetNames[r]]["!autofilter"]=e});t.Strings=l;t.SSF=Er(Z);if(R.enc)t.Encryption=R.enc;if(N)t.Themes=N;t.Metadata={};if(T!==undefined)t.Metadata.Country=T;if(M.names.length>0)C.Names=M.names;t.Workbook=C;return t}var xg={SI:"e0859ff2f94f6810ab9108002b27b3d9",DSI:"02d5cdd59c2e1b10939708002b2cf9ae",UDI:"05d5cdd59c2e1b10939708002b2cf9ae"};function Og(e,r,t){var a=er.find(e,"/!DocumentSummaryInformation");if(a&&a.size>0)try{var n=rs(a,Gn,xg.DSI);for(var i in n)r[i]=n[i]}catch(s){if(t.WTF)throw s}var f=er.find(e,"/!SummaryInformation");if(f&&f.size>0)try{var o=rs(f,$n,xg.SI);for(var l in o)if(r[l]==null)r[l]=o[l]}catch(s){if(t.WTF)throw s}if(r.HeadingPairs&&r.TitlesOfParts){yi(r.HeadingPairs,r.TitlesOfParts,r,t);delete r.HeadingPairs;delete r.TitlesOfParts}}function Rg(e,r){var t=[],a=[],n=[];var i=0,s;var f=fr(Gn,"n");var o=fr($n,"n");if(e.Props){s=sr(e.Props);for(i=0;i-1||Ei.indexOf(n[i][0])>-1)continue;if(n[i][1]==null)continue;l.push(n[i])}if(a.length)er.utils.cfb_add(r,"/SummaryInformation",ts(a,xg.SI,o,$n));if(t.length||l.length)er.utils.cfb_add(r,"/DocumentSummaryInformation",ts(t,xg.DSI,f,Gn,l.length?l:null,xg.UDI))}function Ng(e,r){if(!r)r={};bw(r);l();if(r.codepage)s(r.codepage);var t,a;if(e.FullPaths){if(er.find(e,"/encryption"))throw new Error("File is password-protected");t=er.find(e,"!CompObj");a=er.find(e,"/Workbook")||er.find(e,"/Book")}else{switch(r.type){case"base64":e=x(T(e));break;case"binary":e=x(e);break;case"buffer":break;case"array":if(!Array.isArray(e))e=Array.prototype.slice.call(e);break;}ga(e,0);a={content:e}}var n;var i;if(t)Tg(t);if(r.bookProps&&!r.bookSheets)n={};else{var f=E?"buffer":"array";if(a&&a.content)n=_g(a.content,r);else if((i=er.find(e,"PerfectOffice_MAIN"))&&i.content)n=Po.to_workbook(i.content,(r.type=f,r));else if((i=er.find(e,"NativeContent_MAIN"))&&i.content)n=Po.to_workbook(i.content,(r.type=f,r));else if((i=er.find(e,"MN0"))&&i.content)throw new Error("Unsupported Works 4 for Mac file");else throw new Error("Cannot find Workbook stream");if(r.bookVBA&&e.FullPaths&&er.find(e,"/_VBA_PROJECT_CUR/VBA/dir"))n.vbaraw=Oh(e)}var o={};if(e.FullPaths)Og(e,o,r);n.Props=n.Custprops=o;if(r.bookFiles)n.cfb=e;return n}function Ig(e,r){var t=r||{};var a=er.utils.cfb_new({root:"R"});var n="/Workbook";switch(t.bookType||"xls"){case"xls":t.bookType="biff8";case"xla":if(!t.bookType)t.bookType="xla";case"biff8":n="/Workbook";t.biff=8;break;case"biff5":n="/Book";t.biff=5;break;default:throw new Error("invalid type "+t.bookType+" for XLS CFB");}er.utils.cfb_add(a,n,Qg(e,t));if(t.biff==8&&(e.Props||e.Custprops))Rg(e,a);if(t.biff==8&&e.vbaraw)Rh(a,er.read(e.vbaraw,{type:typeof e.vbaraw=="string"?"binary":"buffer"}));return a}var Fg={0:{f:Up},1:{f:jp},2:{f:uv},3:{f:ev},4:{f:Zp},5:{f:ov},6:{f:gv},7:{f:nv},8:{f:yv},9:{f:Ev},10:{f:Av},11:{f:Tv},12:{f:Yp},13:{f:pv},14:{f:tv},15:{f:qp},16:{f:cv},17:{f:wv},18:{f:sv},19:{f:en},20:{},21:{},22:{},23:{},24:{},25:{},26:{},27:{},28:{},29:{},30:{},31:{},32:{},33:{},34:{},35:{T:1},36:{T:-1},37:{T:1},38:{T:-1},39:{f:_m},40:{},42:{},43:{f:sc},44:{f:nc},45:{f:cc},46:{f:vc},47:{f:uc},48:{},49:{f:Ya},50:{},51:{f:qc},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:co},62:{f:mv},63:{f:oh},64:{f:Hv},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:ba,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:Mv},138:{T:-1},139:{T:1},140:{T:-1},141:{T:1},142:{T:-1},143:{T:1},144:{T:-1},145:{T:1},146:{T:-1},147:{f:Gp},148:{f:Hp,p:16},151:{f:Rv},152:{},153:{f:ym},154:{},155:{},156:{f:Tm},157:{},158:{},159:{T:1,f:Ko},160:{T:-1},161:{T:1,f:kn},162:{T:-1},163:{T:1},164:{T:-1},165:{T:1},166:{T:-1},167:{},168:{},169:{},170:{},171:{},172:{T:1},173:{T:-1},174:{},175:{},176:{f:Cv},177:{T:1},178:{T:-1},179:{T:1},180:{T:-1},181:{T:1},182:{T:-1},183:{T:1},184:{T:-1},185:{T:1},186:{T:-1},187:{T:1},188:{T:-1},189:{T:1},190:{T:-1},191:{T:1},192:{T:-1},193:{T:1},194:{T:-1},195:{T:1},196:{T:-1},197:{T:1},198:{T:-1},199:{T:1},200:{T:-1},201:{T:1},202:{T:-1},203:{T:1},204:{T:-1},205:{T:1},206:{T:-1},207:{T:1},208:{T:-1},209:{T:1},210:{T:-1},211:{T:1},212:{T:-1},213:{T:1},214:{T:-1},215:{T:1},216:{T:-1},217:{T:1},218:{T:-1},219:{T:1},220:{T:-1},221:{T:1},222:{T:-1},223:{T:1},224:{T:-1},225:{T:1},226:{T:-1},227:{T:1},228:{T:-1},229:{T:1},230:{T:-1},231:{T:1},232:{T:-1},233:{T:1},234:{T:-1},235:{T:1},236:{T:-1},237:{T:1},238:{T:-1},239:{T:1},240:{T:-1},241:{T:1},242:{T:-1},243:{T:1},244:{T:-1},245:{T:1},246:{T:-1},247:{T:1},248:{T:-1},249:{T:1},250:{T:-1},251:{T:1},252:{T:-1},253:{T:1},254:{T:-1},255:{T:1},256:{T:-1},257:{T:1},258:{T:-1},259:{T:1},260:{T:-1},261:{T:1},262:{T:-1},263:{T:1},264:{T:-1},265:{T:1},266:{T:-1},267:{T:1},268:{T:-1},269:{T:1},270:{T:-1},271:{T:1},272:{T:-1},273:{T:1},274:{T:-1},275:{T:1},276:{T:-1},277:{},278:{T:1},279:{T:-1},280:{T:1},281:{T:-1},282:{T:1},283:{T:1},284:{T:-1},285:{T:1},286:{T:-1},287:{T:1},288:{T:-1},289:{T:1},290:{T:-1},291:{T:1},292:{T:-1},293:{T:1},294:{T:-1},295:{T:1},296:{T:-1},297:{T:1},298:{T:-1},299:{T:1},300:{T:-1},301:{T:1},302:{T:-1},303:{T:1},304:{T:-1},305:{T:1},306:{T:-1},307:{T:1},308:{T:-1},309:{T:1},310:{T:-1},311:{T:1},312:{T:-1},313:{T:-1},314:{T:1},315:{T:-1},316:{T:1},317:{T:-1},318:{T:1},319:{T:-1},320:{T:1},321:{T:-1},322:{T:1},323:{T:-1},324:{T:1},325:{T:-1},326:{T:1},327:{T:-1},328:{T:1},329:{T:-1},330:{T:1},331:{T:-1},332:{T:1},333:{T:-1},334:{T:1},335:{f:Zc},336:{T:-1},337:{f:rh,T:1},338:{T:-1},339:{T:1},340:{T:-1},341:{T:1},342:{T:-1},343:{T:1},344:{T:-1},345:{T:1},346:{T:-1},347:{T:1},348:{T:-1},349:{T:1},350:{T:-1},351:{},352:{},353:{T:1},354:{T:-1},355:{f:pn},357:{},358:{},359:{},360:{T:1},361:{},362:{f:Hf},363:{},364:{},366:{},367:{},368:{},369:{},370:{},371:{},372:{T:1},373:{T:-1},374:{T:1},375:{T:-1},376:{T:1},377:{T:-1},378:{T:1},379:{T:-1},380:{T:1},381:{T:-1},382:{T:1},383:{T:-1},384:{T:1},385:{T:-1},386:{T:1},387:{T:-1},388:{T:1},389:{T:-1},390:{T:1},391:{T:-1},392:{T:1},393:{T:-1},394:{T:1},395:{T:-1},396:{},397:{},398:{},399:{},400:{},401:{T:1},403:{},404:{},405:{},406:{},407:{},408:{},409:{},410:{},411:{},412:{},413:{},414:{},415:{},416:{},417:{},418:{},419:{},420:{},421:{},422:{T:1},423:{T:1},424:{T:-1},425:{T:-1},426:{f:Nv},427:{f:Iv},428:{},429:{T:1},430:{T:-1},431:{T:1},432:{T:-1},433:{T:1},434:{T:-1},435:{T:1},436:{T:-1},437:{T:1},438:{T:-1},439:{T:1},440:{T:-1},441:{T:1},442:{T:-1},443:{T:1},444:{T:-1},445:{T:1},446:{T:-1},447:{T:1},448:{T:-1},449:{T:1},450:{T:-1},451:{T:1},452:{T:-1},453:{T:1},454:{T:-1},455:{T:1},456:{T:-1},457:{T:1},458:{T:-1},459:{T:1},460:{T:-1},461:{T:1},462:{T:-1},463:{T:1},464:{T:-1},465:{T:1},466:{T:-1},467:{T:1},468:{T:-1},469:{T:1},470:{T:-1},471:{},472:{},473:{T:1},474:{T:-1},475:{},476:{f:Pv},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:Vp},486:{T:1},487:{T:-1},488:{T:1},489:{T:-1},490:{T:1},491:{T:-1},492:{T:1},493:{T:-1},494:{f:xv},495:{T:1},496:{T:-1},497:{T:1},498:{T:-1},499:{},500:{T:1},501:{T:-1},502:{T:1},503:{T:-1},504:{},505:{T:1},506:{T:-1},507:{},508:{T:1},509:{T:-1},510:{T:1},511:{T:-1},512:{},513:{},514:{T:1},515:{T:-1},516:{T:1},517:{T:-1},518:{T:1},519:{T:-1},520:{T:1},521:{T:-1},522:{},523:{},524:{},525:{},526:{},527:{},528:{T:1},529:{T:-1},530:{T:1},531:{T:-1},532:{T:1},533:{T:-1},534:{},535:{},536:{},537:{},538:{T:1},539:{T:-1},540:{T:1},541:{T:-1},542:{T:1},548:{},549:{},550:{f:pn},551:{},552:{},553:{},554:{T:1},555:{T:-1},556:{T:1},557:{T:-1},558:{T:1},559:{T:-1},560:{T:1},561:{T:-1},562:{},564:{},565:{T:1},566:{T:-1},569:{T:1},570:{T:-1},572:{},573:{T:1},574:{T:-1},577:{},578:{},579:{},580:{},581:{},582:{},583:{},584:{},585:{},586:{},587:{},588:{T:-1},589:{},590:{T:1},591:{T:-1},592:{T:1},593:{T:-1},594:{T:1},595:{T:-1},596:{},597:{T:1},598:{T:-1},599:{T:1},600:{T:-1},601:{T:1},602:{T:-1},603:{T:1},604:{T:-1},605:{T:1},606:{T:-1},607:{},608:{T:1},609:{T:-1},610:{},611:{T:1},612:{T:-1},613:{T:1},614:{T:-1},615:{T:1},616:{T:-1},617:{T:1},618:{T:-1},619:{T:1},620:{T:-1},625:{},626:{T:1},627:{T:-1},628:{T:1},629:{T:-1},630:{T:1},631:{T:-1},632:{f:yh},633:{T:1},634:{T:-1},635:{T:1,f:Th},636:{T:-1},637:{f:tn},638:{T:1},639:{},640:{T:-1},641:{T:1},642:{T:-1},643:{T:1},644:{},645:{T:-1},646:{T:1},648:{T:1},649:{},650:{T:-1},651:{f:im},652:{},653:{T:1},654:{T:-1},655:{T:1},656:{T:-1},657:{T:1},658:{T:-1},659:{},660:{T:1},661:{},662:{T:-1},663:{},664:{T:1},665:{},666:{T:-1},667:{},668:{},669:{},671:{T:1},672:{T:-1},673:{T:1},674:{T:-1},675:{},676:{},677:{},678:{},679:{},680:{},681:{},1024:{},1025:{},1026:{T:1},1027:{T:-1},1028:{T:1},1029:{T:-1},1030:{},1031:{T:1},1032:{T:-1},1033:{T:1},1034:{T:-1},1035:{},1036:{},1037:{},1038:{T:1},1039:{T:-1},1040:{},1041:{T:1},1042:{T:-1},1043:{},1044:{},1045:{},1046:{T:1},1047:{T:-1},1048:{T:1},1049:{T:-1},1050:{},1051:{T:1},1052:{T:1},1053:{f:zv},1054:{T:1},1055:{},1056:{T:1},1057:{T:-1},1058:{T:1},1059:{T:-1},1061:{},1062:{T:1},1063:{T:-1},1064:{T:1},1065:{T:-1},1066:{T:1},1067:{T:-1},1068:{T:1},1069:{T:-1},1070:{T:1},1071:{T:-1},1072:{T:1},1073:{T:-1},1075:{T:1},1076:{T:-1},1077:{T:1},1078:{T:-1},1079:{T:1},1080:{T:-1},1081:{T:1},1082:{T:-1},1083:{T:1},1084:{T:-1},1085:{},1086:{T:1},1087:{T:-1},1088:{T:1},1089:{T:-1},1090:{T:1},1091:{T:-1},1092:{T:1},1093:{T:-1},1094:{T:1},1095:{T:-1},1096:{},1097:{T:1},1098:{},1099:{T:-1},1100:{T:1},1101:{T:-1},1102:{},1103:{},1104:{},1105:{},1111:{},1112:{},1113:{T:1},1114:{T:-1},1115:{T:1},1116:{T:-1},1117:{},1118:{T:1},1119:{T:-1},1120:{T:1},1121:{T:-1},1122:{T:1},1123:{T:-1},1124:{T:1},1125:{T:-1},1126:{},1128:{T:1},1129:{T:-1},1130:{},1131:{T:1},1132:{T:-1},1133:{T:1},1134:{T:-1},1135:{T:1},1136:{T:-1},1137:{T:1},1138:{T:-1},1139:{T:1},1140:{T:-1},1141:{},1142:{T:1},1143:{T:-1},1144:{T:1},1145:{T:-1},1146:{},1147:{T:1 -},1148:{T:-1},1149:{T:1},1150:{T:-1},1152:{T:1},1153:{T:-1},1154:{T:-1},1155:{T:-1},1156:{T:-1},1157:{T:1},1158:{T:-1},1159:{T:1},1160:{T:-1},1161:{T:1},1162:{T:-1},1163:{T:1},1164:{T:-1},1165:{T:1},1166:{T:-1},1167:{T:1},1168:{T:-1},1169:{T:1},1170:{T:-1},1171:{},1172:{T:1},1173:{T:-1},1177:{},1178:{T:1},1180:{},1181:{},1182:{},2048:{T:1},2049:{T:-1},2050:{},2051:{T:1},2052:{T:-1},2053:{},2054:{},2055:{T:1},2056:{T:-1},2057:{T:1},2058:{T:-1},2060:{},2067:{},2068:{T:1},2069:{T:-1},2070:{},2071:{},2072:{T:1},2073:{T:-1},2075:{},2076:{},2077:{T:1},2078:{T:-1},2079:{},2080:{T:1},2081:{T:-1},2082:{},2083:{T:1},2084:{T:-1},2085:{T:1},2086:{T:-1},2087:{T:1},2088:{T:-1},2089:{T:1},2090:{T:-1},2091:{},2092:{},2093:{T:1},2094:{T:-1},2095:{},2096:{T:1},2097:{T:-1},2098:{T:1},2099:{T:-1},2100:{T:1},2101:{T:-1},2102:{},2103:{T:1},2104:{T:-1},2105:{},2106:{T:1},2107:{T:-1},2108:{},2109:{T:1},2110:{T:-1},2111:{T:1},2112:{T:-1},2113:{T:1},2114:{T:-1},2115:{},2116:{},2117:{},2118:{T:1},2119:{T:-1},2120:{},2121:{T:1},2122:{T:-1},2123:{T:1},2124:{T:-1},2125:{},2126:{T:1},2127:{T:-1},2128:{},2129:{T:1},2130:{T:-1},2131:{T:1},2132:{T:-1},2133:{T:1},2134:{},2135:{},2136:{},2137:{T:1},2138:{T:-1},2139:{T:1},2140:{T:-1},2141:{},3072:{},3073:{},4096:{T:1},4097:{T:-1},5002:{T:1},5003:{T:-1},5081:{T:1},5082:{T:-1},5083:{},5084:{T:1},5085:{T:-1},5086:{T:1},5087:{T:-1},5088:{},5089:{},5090:{},5092:{T:1},5093:{T:-1},5094:{},5095:{T:1},5096:{T:-1},5097:{},5099:{},65535:{n:""}};var Dg={6:{f:yd},10:{f:as},12:{f:os},13:{f:os},14:{f:ss},15:{f:ss},16:{f:Tn},17:{f:ss},18:{f:ss},19:{f:os},20:{f:Mf},21:{f:Mf},23:{f:Hf},24:{f:Wf},25:{f:ss},26:{},27:{},28:{f:Yf},29:{},34:{f:ss},35:{f:Bf},38:{f:Tn},39:{f:Tn},40:{f:Tn},41:{f:Tn},42:{f:ss},43:{f:ss},47:{f:Tl},49:{f:pf},51:{f:os},60:{},61:{f:lf},64:{f:ss},65:{f:df},66:{f:os},77:{},80:{},81:{},82:{},85:{f:os},89:{},90:{},91:{},92:{f:Zs},93:{f:Jf},94:{},95:{f:ss},96:{},97:{},99:{f:ss},125:{f:co},128:{f:Nf},129:{f:qs},130:{f:os},131:{f:ss},132:{f:ss},133:{f:Qs},134:{},140:{f:io},141:{f:os},144:{},146:{f:oo},151:{},152:{},153:{},154:{},155:{},156:{f:os},157:{},158:{},160:{f:go},161:{f:uo},174:{},175:{},176:{},177:{},178:{},180:{},181:{},182:{},184:{},185:{},189:{f:Sf},190:{f:_f},193:{f:as},197:{},198:{},199:{},200:{},201:{},202:{f:ss},203:{},204:{},205:{},206:{},207:{},208:{},209:{},210:{},211:{},213:{},215:{},216:{},217:{},218:{f:os},220:{},221:{f:ss},222:{},224:{f:Of},225:{f:Ks},226:{f:as},227:{},229:{f:Kf},233:{},235:{},236:{},237:{},239:{},240:{},241:{},242:{},244:{},245:{},246:{},247:{},248:{},249:{},251:{},252:{f:rf},253:{f:mf},255:{f:af},256:{},259:{},290:{},311:{},312:{},315:{},317:{f:cs},318:{},319:{},320:{},330:{},331:{},333:{},334:{},335:{},336:{},337:{},338:{},339:{},340:{},351:{},352:{f:ss},353:{f:as},401:{},402:{},403:{},404:{},405:{},406:{},407:{},408:{},425:{},426:{},427:{},428:{},429:{},430:{f:Uf},431:{f:ss},432:{},433:{},434:{},437:{},438:{f:eo},439:{f:ss},440:{f:ro},441:{},442:{f:gs},443:{},444:{f:os},445:{},446:{},448:{f:as},449:{f:ff,r:2},450:{f:as},512:{f:Ef},513:{f:mo},515:{f:Pf},516:{f:bf},517:{f:Ff},519:{f:bo},520:{f:nf},523:{},545:{f:$f},549:{f:of},566:{},574:{f:hf},638:{f:Cf},659:{},1048:{},1054:{f:kf},1084:{},1212:{f:Gf},2048:{f:ao},2049:{},2050:{},2051:{},2052:{},2053:{},2054:{},2055:{},2056:{},2057:{f:Xs},2058:{},2059:{},2060:{},2061:{},2062:{},2063:{},2064:{},2066:{},2067:{},2128:{},2129:{},2130:{},2131:{},2132:{},2133:{},2134:{},2135:{},2136:{},2137:{},2138:{},2146:{},2147:{r:12},2148:{},2149:{},2150:{},2151:{f:as},2152:{},2154:{},2155:{},2156:{},2161:{},2162:{},2164:{},2165:{},2166:{},2167:{},2168:{},2169:{},2170:{},2171:{},2172:{f:lo,r:12},2173:{f:Yc,r:12},2174:{},2175:{},2180:{},2181:{},2182:{},2183:{},2184:{},2185:{},2186:{},2187:{},2188:{f:ss,r:12},2189:{},2190:{r:12},2191:{},2192:{},2194:{},2195:{},2196:{f:Vf,r:12},2197:{},2198:{f:zc,r:12},2199:{},2200:{},2201:{},2202:{f:jf,r:12},2203:{f:as},2204:{},2205:{},2206:{},2207:{},2211:{f:sf},2212:{},2213:{},2214:{},2215:{},4097:{},4098:{},4099:{},4102:{},4103:{},4105:{},4106:{},4107:{},4108:{},4109:{},4116:{},4117:{},4118:{},4119:{},4120:{},4121:{},4122:{},4123:{},4124:{},4125:{},4126:{},4127:{},4128:{},4129:{},4130:{},4132:{},4133:{},4134:{f:os},4135:{},4146:{},4147:{},4148:{},4149:{},4154:{},4156:{},4157:{},4158:{},4159:{},4160:{},4161:{},4163:{},4164:{f:po},4165:{},4166:{},4168:{},4170:{},4171:{},4174:{},4175:{},4176:{},4177:{},4187:{},4188:{f:fo},4189:{},4191:{},4192:{},4193:{},4194:{},4195:{},4196:{},4197:{},4198:{},4199:{},4200:{},0:{f:Ef},1:{},2:{f:Eo},3:{f:Ao},4:{f:ko},5:{f:Ff},7:{f:Co},8:{},9:{f:Xs},11:{},22:{f:os},30:{f:Tf},31:{},32:{},33:{f:$f},36:{},37:{f:of},50:{f:So},62:{},52:{},67:{},68:{f:os},69:{},86:{},126:{},127:{f:wo},135:{},136:{},137:{},145:{},148:{},149:{},150:{},169:{},171:{},188:{},191:{},192:{},194:{},195:{},214:{f:_o},223:{},234:{},354:{},421:{},518:{f:yd},521:{f:Xs},536:{f:Wf},547:{f:Bf},561:{},579:{},1030:{f:yd},1033:{f:Xs},1091:{},2157:{},2163:{},2177:{},2240:{},2241:{},2242:{},2243:{},2244:{},2245:{},2246:{},2247:{},2248:{},2249:{},2250:{},2251:{},2262:{r:12},101:{},102:{},105:{},106:{},107:{},109:{},112:{},114:{},29282:{}};function Pg(e,r,t,a){var n=r;if(isNaN(n))return;var i=a||(t||[]).length||0;var s=e.next(4);s._W(2,n);s._W(2,i);if(i>0&&aa(t))e.push(t)}function Lg(e,r,t,a){var n=a||(t||[]).length||0;if(n<=8224)return Pg(e,r,t,n);var i=r;if(isNaN(i))return;var s=t.parts||[],f=0;var o=0,l=0;while(l+(s[f]||8224)<=8224){l+=s[f]||8224;f++}var c=e.next(4);c._W(2,i);c._W(2,l);e.push(t.slice(o,o+l));o+=l;while(o=0&&n<65536)Pg(e,2,yo(t,a,n));else Pg(e,3,To(t,a,n));return;case"b":;case"e":Pg(e,5,Ug(t,a,r.v,r.t));return;case"s":;case"str":Pg(e,4,Bg(t,a,(r.v||"").slice(0,255)));return;}Pg(e,1,Mg(null,t,a))}function Hg(e,r,t,a){var n=Array.isArray(r);var i=za(r["!ref"]||"A1"),s,f="",o=[];if(i.e.c>255||i.e.r>16383){if(a.WTF)throw new Error("Range "+(r["!ref"]||"A1")+" exceeds format limit A1:IV16384");i.e.c=Math.min(i.e.c,255);i.e.r=Math.min(i.e.c,16383);s=Ba(i)}for(var l=i.s.r;l<=i.e.r;++l){f=xa(l);for(var c=i.s.c;c<=i.e.c;++c){if(l===i.s.r)o[c]=Ia(c);s=o[c]+f;var h=n?(r[l]||[])[c]:r[s];if(!h)continue;Wg(e,h,l,c,a)}}}function zg(e,r){var t=r||{};if(g!=null&&t.dense==null)t.dense=g;var a=Aa();var n=0;for(var i=0;i255||d.e.r>=p){if(r.WTF)throw new Error("Range "+(i["!ref"]||"A1")+" exceeds format limit A1:IV16384");d.e.c=Math.min(d.e.c,255);d.e.r=Math.min(d.e.c,p-1)}Pg(a,2057,Ys(t,16,r));Pg(a,13,ls(1));Pg(a,12,ls(100));Pg(a,15,fs(true));Pg(a,17,fs(false));Pg(a,16,En(.001));Pg(a,95,fs(true));Pg(a,42,fs(false));Pg(a,43,fs(false));Pg(a,130,ls(1));Pg(a,128,If([0,0]));Pg(a,131,fs(false));Pg(a,132,fs(false));if(l)Yg(a,i["!cols"]);Pg(a,512,yf(d,r));if(l)i["!links"]=[];var v=[];for(var m=d.s.r;m<=d.e.r;++m){h=xa(m);for(var g=d.s.c;g<=d.e.c;++g){if(m===d.s.r)u[g]=Ia(g);c=u[g]+h;var b=o?(i[m]||[])[g]:i[c];if(!b)continue;Kg(a,b,m,g,r);if(l&&b.l)i["!links"].push([c,b.l]);if(l&&b.c)v.push([c,b.c])}}var w=f.CodeName||f.name||n;if(l)Pg(a,574,uf((s.Views||[])[0]));if(l&&(i["!merges"]||[]).length)Pg(a,229,Zf(i["!merges"]));if(l)Xg(a,i);Pg(a,442,ws(w,r));if(l)$g(a,i);Pg(a,10);return a.end()}function Jg(e,r,t){var a=Aa();var n=(e||{}).Workbook||{};var i=n.Sheets||[];var s=n.WBProps||{};var f=t.biff==8,o=t.biff==5;Pg(a,2057,Ys(e,5,t));if(t.bookType=="xla")Pg(a,135);Pg(a,225,f?ls(1200):null);Pg(a,193,ns(2));if(o)Pg(a,191);if(o)Pg(a,192);Pg(a,226);Pg(a,92,Js("SheetJS",t));Pg(a,66,ls(f?1200:1252));if(f)Pg(a,353,ls(0));if(f)Pg(a,448);Pg(a,317,vo(e.SheetNames.length));if(f&&e.vbaraw)Pg(a,211);if(f&&e.vbaraw){var l=s.CodeName||"ThisWorkbook";Pg(a,442,ws(l,t))}Pg(a,156,ls(17));Pg(a,25,fs(false));Pg(a,18,fs(false));Pg(a,19,ls(0));if(f)Pg(a,431,fs(false));if(f)Pg(a,444,ls(0));Pg(a,61,cf(t));Pg(a,64,fs(false));Pg(a,141,ls(0));Pg(a,34,fs(pm(e)=="true"));Pg(a,14,fs(true));if(f)Pg(a,439,fs(false));Pg(a,218,ls(0));Vg(a,e,t);Gg(a,e.SSF,t);jg(a,t);if(f)Pg(a,352,fs(false));var c=a.end();var h=Aa();if(f)Pg(h,140,so());if(f&&t.Strings)Lg(h,252,tf(t.Strings,t));Pg(h,10);var u=h.end();var d=Aa();var p=0,v=0;for(v=0;v255){if(typeof console!="undefined"&&console.error)console.error("Worksheet '"+e.SheetNames[t]+"' extends beyond column IV (255). Data may be lost.")}}var i=r||{};switch(i.biff||2){case 8:;case 5:return qg(e,r);case 4:;case 3:;case 2:return zg(e,r);}throw new Error("invalid type "+i.bookType+" for BIFF")}function eb(e,r){var t=r||{};if(g!=null&&t.dense==null)t.dense=g;var a=t.dense?[]:{};e=e.replace(//g,"");var n=e.match(/");var i=e.match(/<\/table/i);var s=n.index,f=i&&i.index||e.length;var o=Rr(e.slice(s,f),/(:?]*>)/i,"");var l=-1,c=0,h=0,u=0;var d={s:{r:1e7,c:1e7},e:{r:0,c:0}};var p=[];for(s=0;s/i);for(f=0;f"))>-1)k=k.slice(A+1);for(var T=0;T")));u=y.colspan?+y.colspan:1;if((h=+y.rowspan)>1||u>1)p.push({s:{r:l,c:c},e:{r:l+(h||1)-1,c:c+u-1}});var C=y.t||y["data-t"]||"";if(!k.length){c+=u;continue}k=wt(k);if(d.s.r>l)d.s.r=l;if(d.e.rc)d.s.c=c;if(d.e.ct||n[c].s.c>f)continue;if(n[c].e.r1)s.rowspan=o;if(l>1)s.colspan=l;if(a.editable)d=''+d+"";else if(u){s["data-t"]=u&&u.t||"z";if(u.v!=null)s["data-v"]=u.v;if(u.z!=null)s["data-z"]=u.z;if(u.l&&(u.l.Target||"#").charAt(0)!="#")d=''+d+""}s.id=(a.id||"sjs")+"-"+h;i.push(_t("td",d,s))}var p="";return p+i.join("")+""}var tb='SheetJS Table Export';var ab="";function nb(e,r){var t=e.match(/[\s\S]*?<\/table>/gi);if(!t||t.length==0)throw new Error("Invalid HTML: could not find
");if(t.length==1){var a=$a(eb(t[0],r),r);a.bookType="html";return a}var n=ck();t.forEach(function(e,t){hk(n,eb(e,r),"Sheet"+(t+1))});n.bookType="html";return n}function ib(e,r,t){var a=[];return a.join("")+""}function sb(e,r){var t=r||{};var a=t.header!=null?t.header:tb;var n=t.footer!=null?t.footer:ab;var i=[a];var s=Ua(e["!ref"]);t.dense=Array.isArray(e);i.push(ib(e,s,t));for(var f=s.s.r;f<=s.e.r;++f)i.push(rb(e,s,f,t));i.push("
"+n);return i.join("")}function fb(e,r,t){var a=r.rows;if(!a){throw"Unsupported origin when "+r.tagName+" is not a TABLE"}var n=t||{};if(g!=null)n.dense=g;var i=0,s=0;if(n.origin!=null){if(typeof n.origin=="number")i=n.origin;else{var f=typeof n.origin=="string"?La(n.origin):n.origin;i=f.r;s=f.c}}var o=Math.min(n.sheetRows||1e7,a.length);var l={s:{r:0,c:0},e:{r:i,c:s}};if(e["!ref"]){var c=Ua(e["!ref"]);l.s.r=Math.min(l.s.r,c.s.r);l.s.c=Math.min(l.s.c,c.s.c);l.e.r=Math.max(l.e.r,c.e.r);l.e.c=Math.max(l.e.c,c.e.c);if(i==-1)l.e.r=i=c.e.r+1}var h=[],u=0;var d=e["!rows"]||(e["!rows"]=[]);var p=0,v=0,m=0,b=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;p1||k>1)h.push({s:{r:v+i,c:b+s},e:{r:v+i+(w||1)-1,c:b+s+(k||1)-1}});var _={t:"s",v:y};var x=E.getAttribute("data-t")||E.getAttribute("t")||"";if(y!=null){if(y.length==0)_.t=x||"z";else if(n.raw||y.trim().length==0||x=="s"){}else if(y==="TRUE")_={t:"b",v:true};else if(y==="FALSE")_={t:"b",v:false};else if(!isNaN(Cr(y)))_={t:"n",v:Cr(y)};else if(!isNaN(Or(y).getDate())){_={t:"d",v:Ar(y)};if(!n.cellDates)_={t:"n",v:ur(_.v)};_.z=n.dateNF||Z[14]}}if(_.z===undefined&&C!=null)_.z=C;var O="",R=E.getElementsByTagName("A");if(R&&R.length)for(var N=0;N=o)e["!fullref"]=Ba((l.e.r=a.length-p+v-1+i,l));return e}function ob(e,r){var t=r||{};var a=t.dense?[]:{};return fb(a,e,r)}function lb(e,r){var t=$a(ob(e,r),r);return t}function cb(e){var r="";var t=hb(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function hb(e){if(e.ownerDocument.defaultView&&typeof e.ownerDocument.defaultView.getComputedStyle==="function")return e.ownerDocument.defaultView.getComputedStyle;if(typeof getComputedStyle==="function")return getComputedStyle;return null}function ub(e){var r=e.replace(/[\t\r\n]/g," ").trim().replace(/ +/g," ").replace(//g," ").replace(//g,function(e,r){return Array(parseInt(r,10)+1).join(" ")}).replace(/]*\/>/g,"\t").replace(//g,"\n");var t=rt(r.replace(/<[^>]*>/g,""));return[t]}function db(e,r,t){var a=t||{};var n=Rt(e);Nt.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");var i,s,f="",o="",l,c=0,h=-1,u=false,d="";while(i=Nt.exec(n)){switch(i[3]=i[3].replace(/_.*$/,"")){case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":;case"text-style":if(i[1]==="/"){u=false;if(s["truncate-on-overflow"]=="false"){if(f.match(/h/))f=f.replace(/h+/,"[$&]");else if(f.match(/m/))f=f.replace(/m+/,"[$&]");else if(f.match(/s/))f=f.replace(/s+/,"[$&]")}a[s.name]=f;f=""}else if(i[0].charAt(i[0].length-2)!=="/"){u=true;f="";s=Jr(i[0],false)}break;case"boolean-style":if(i[1]==="/"){u=false;a[s.name]="General";f=""}else if(i[0].charAt(i[0].length-2)!=="/"){u=true;f="";s=Jr(i[0],false)}break;case"boolean":f+="General";break;case"text":if(i[1]==="/"){d=n.slice(h,Nt.lastIndex-i[0].length);if(d=="%"&&s[0]=="=0")f=a[l["apply-style-name"]]+";"+f;else console.error("ODS number format may be incorrect: "+l["condition"]);break;case"number":if(i[1]==="/")break;l=Jr(i[0],false);o="";o+=yr("0",+l["min-integer-digits"]||1);if(ht(l["grouping"]))o=de(yr("#",Math.max(0,4-o.length))+o);if(+l["min-decimal-places"]||+l["decimal-places"])o+=".";if(+l["min-decimal-places"])o+=yr("0",+l["min-decimal-places"]||1);if(+l["decimal-places"]-(+l["min-decimal-places"]||0))o+=yr("0",+l["decimal-places"]-(+l["min-decimal-places"]||0));f+=o;break;case"embedded-text":if(i[1]==="/"){if(c==0)f+='"'+n.slice(h,Nt.lastIndex-i[0].length).replace(/"/g,'""')+'"';else f=f.slice(0,c)+'"'+n.slice(h,Nt.lastIndex-i[0].length).replace(/"/g,'""')+'"'+f.slice(c)}else if(i[0].charAt(i[0].length-2)!=="/"){h=Nt.lastIndex;c=-+Jr(i[0],false)["position"]||0}break;}}return a}function pb(e,r,t){var a=r||{};if(g!=null&&a.dense==null)a.dense=g;var n=Rt(e);var i=[],s;var f;var o,l="",c=0;var h;var u;var d={},p=[];var v=a.dense?[]:{};var m,b;var w={value:""};var k="",A=0,T;var E=[];var y=-1,C=-1,S={s:{r:1e6,c:1e7},e:{r:0,c:0}};var _=0;var x=t||{},O={};var R=[],N={},I=0,F=0;var D=[],P=1,L=1;var M=[];var U={Names:[],WBProps:{}};var B={};var W=["",""];var H=[],z={};var V="",G=0;var $=false,j=false;var X=0;var Y=0;Nt.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");while(m=Nt.exec(n))switch(m[3]=m[3].replace(/_.*$/,"")){case"table":;case"工作表":if(m[1]==="/"){if(S.e.c>=S.s.c&&S.e.r>=S.s.r)v["!ref"]=Ba(S);else v["!ref"]="A1:A1";if(a.sheetRows>0&&a.sheetRows<=S.e.r){v["!fullref"]=v["!ref"];S.e.r=a.sheetRows-1;v["!ref"]=Ba(S)}if(R.length)v["!merges"]=R;if(D.length)v["!rows"]=D;h.name=h["名称"]||h.name;if(typeof JSON!=="undefined")JSON.stringify(h);p.push(h.name);d[h.name]=v;j=false}else if(m[0].charAt(m[0].length-2)!=="/"){h=Jr(m[0],false);y=C=-1;S.s.r=S.s.c=1e7;S.e.r=S.e.c=0;v=a.dense?[]:{};R=[];D=[];j=true}break;case"table-row-group":if(m[1]==="/")--_;else++_;break;case"table-row":;case"行":if(m[1]==="/"){y+=P;P=1;break}u=Jr(m[0],false);if(u["行号"])y=u["行号"]-1;else if(y==-1)y=0;P=+u["number-rows-repeated"]||1;if(P<10)for(X=0;X0)D[y+X]={level:_};C=-1;break;case"covered-table-cell":if(m[1]!=="/")++C;if(a.sheetStubs){if(a.dense){if(!v[y])v[y]=[];v[y][C]={t:"z"}}else v[Ma({r:y,c:C})]={t:"z"}}k="";E=[];break;case"table-cell":;case"数据":if(m[0].charAt(m[0].length-2)==="/"){++C;w=Jr(m[0],false);L=parseInt(w["number-columns-repeated"]||"1",10);b={t:"z",v:null};if(w.formula&&a.cellFormula!=false)b.f=jd(rt(w.formula));if(w["style-name"]&&O[w["style-name"]])b.z=O[w["style-name"]];if((w["数据类型"]||w["value-type"])=="string"){b.t="s";b.v=rt(w["string-value"]||"");if(a.dense){if(!v[y])v[y]=[];v[y][C]=b}else{v[Ma({r:y,c:C})]=b}}C+=L-1}else if(m[1]!=="/"){++C;k="";A=0;E=[];L=1;var K=P?y+P-1:y;if(C>S.e.c)S.e.c=C;if(CS.e.r)S.e.r=K;w=Jr(m[0],false);H=[];z={};b={t:w["数据类型"]||w["value-type"],v:null};if(w["style-name"]&&O[w["style-name"]])b.z=O[w["style-name"]];if(a.cellFormula){if(w.formula)w.formula=rt(w.formula);if(w["number-matrix-columns-spanned"]&&w["number-matrix-rows-spanned"]){I=parseInt(w["number-matrix-rows-spanned"],10)||0;F=parseInt(w["number-matrix-columns-spanned"],10)||0;N={s:{r:y,c:C},e:{r:y+I-1,c:C+F-1}};b.F=Ba(N);M.push([N,b.F])}if(w.formula)b.f=jd(w.formula);else for(X=0;X=M[X][0].s.r&&y<=M[X][0].e.r)if(C>=M[X][0].s.c&&C<=M[X][0].e.c)b.F=M[X][1]}if(w["number-columns-spanned"]||w["number-rows-spanned"]){I=parseInt(w["number-rows-spanned"],10)||0;F=parseInt(w["number-columns-spanned"],10)||0;N={s:{r:y,c:C},e:{r:y+I-1,c:C+F-1}};R.push(N)}if(w["number-columns-repeated"])L=parseInt(w["number-columns-repeated"],10);switch(b.t){case"boolean":b.t="b";b.v=ht(w["boolean-value"])||+w["boolean-value"]>=1;break;case"float":b.t="n";b.v=parseFloat(w.value);break;case"percentage":b.t="n";b.v=parseFloat(w.value);break;case"currency":b.t="n";b.v=parseFloat(w.value);break;case"date":b.t="d";b.v=Ar(w["date-value"]);if(!a.cellDates){b.t="n";b.v=ur(b.v,U.WBProps.date1904)-Y}if(!b.z)b.z="m/d/yy";break;case"time":b.t="n";b.v=gr(w["time-value"])/86400;if(a.cellDates){b.t="d";b.v=mr(b.v)}if(!b.z)b.z="HH:MM:SS";break;case"number":b.t="n";b.v=parseFloat(w["数据数值"]);break;default:if(b.t==="string"||b.t==="text"||!b.t){b.t="s";if(w["string-value"]!=null){k=rt(w["string-value"]);E=[]}}else throw new Error("Unsupported value type "+b.t);}}else{$=false;if(b.t==="s"){b.v=k||"";if(E.length)b.R=E;$=A==0}if(B.Target)b.l=B;if(H.length>0){b.c=H;H=[]}if(k&&a.cellText!==false)b.w=k;if($){b.t="z";delete b.v}if(!$||a.sheetStubs){if(!(a.sheetRows&&a.sheetRows<=y)){for(var Z=0;Z0)v[y+Z][C+L]=Er(b)}else{v[Ma({r:y+Z,c:C})]=b;while(--L>0)v[Ma({r:y+Z,c:C+L})]=Er(b)}if(S.e.c<=C)S.e.c=C}}}L=parseInt(w["number-columns-repeated"]||"1",10);C+=L-1;L=0;b={};k="";E=[]}B={};break;case"document":;case"document-content":;case"电子表格文档":;case"spreadsheet":;case"主体":;case"scripts":;case"styles":;case"font-face-decls":;case"master-styles":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s}else if(m[0].charAt(m[0].length-2)!=="/")i.push([m[3],true]);break;case"annotation":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s;z.t=k;if(E.length)z.R=E;z.a=V;H.push(z)}else if(m[0].charAt(m[0].length-2)!=="/"){i.push([m[3],false])}V="";G=0;k="";A=0;E=[];break;case"creator":if(m[1]==="/"){V=n.slice(G,m.index)}else G=m.index+m[0].length;break;case"meta":;case"元数据":;case"settings":;case"config-item-set":;case"config-item-map-indexed":;case"config-item-map-entry":;case"config-item-map-named":;case"shapes":;case"frame":;case"text-box":;case"image":;case"data-pilot-tables":;case"list-style":;case"form":;case"dde-links":;case"event-listeners":;case"chart":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s}else if(m[0].charAt(m[0].length-2)!=="/")i.push([m[3],false]);k="";A=0;E=[];break;case"scientific-number":;case"currency-symbol":;case"fill-character":break;case"text-style":;case"boolean-style":;case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":if(m[1]==="/"){var J=Nt.lastIndex;db(n.slice(o,Nt.lastIndex),r,x);Nt.lastIndex=J}else if(m[0].charAt(m[0].length-2)!=="/"){o=Nt.lastIndex-m[0].length}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":{var q=Jr(m[0],false);if(q["family"]=="table-cell"&&x[q["data-style-name"]])O[q["name"]]=x[q["data-style-name"]]}break;case"map":break;case"font-face":break;case"paragraph-properties":break;case"table-properties":break;case"table-column-properties":break;case"table-row-properties":break;case"table-cell-properties":break;case"number":break;case"fraction":break;case"day":;case"month":;case"year":;case"era":;case"day-of-week":;case"week-of-year":;case"quarter":;case"hours":;case"minutes":;case"seconds":;case"am-pm":break;case"boolean":break;case"text":if(m[0].slice(-2)==="/>")break;else if(m[1]==="/")switch(i[i.length-1][0]){case"number-style":;case"date-style":;case"time-style":l+=n.slice(c,m.index);break;}else c=m.index+m[0].length;break;case"named-range":f=Jr(m[0],false);W=Yd(f["cell-range-address"]);var Q={Name:f.name,Ref:W[0]+"!"+W[1]};if(j)Q.Sheet=p.length;U.Names.push(Q);break;case"text-content":break;case"text-properties":break;case"embedded-text":break;case"body":;case"电子表格":break;case"forms":break;case"table-column":break;case"table-header-rows":break;case"table-rows":break;case"table-column-group":break;case"table-header-columns":break;case"table-columns":break;case"null-date":f=Jr(m[0],false);switch(f["date-value"]){case"1904-01-01":U.WBProps.date1904=true;case"1900-01-01":Y=0;}break;case"graphic-properties":break;case"calculation-settings":break;case"named-expressions":break;case"label-range":break;case"label-ranges":break;case"named-expression":break;case"sort":break;case"sort-by":break;case"sort-groups":break;case"tab":break;case"line-break":break;case"span":break;case"p":;case"文本串":if(["master-styles"].indexOf(i[i.length-1][0])>-1)break;if(m[1]==="/"&&(!w||!w["string-value"])){var ee=ub(n.slice(A,m.index),T);k=(k.length>0?k+"\n":"")+ee[0]}else{T=Jr(m[0],false);A=m.index+m[0].length}break;case"s":break;case"database-range":if(m[1]==="/")break;try{W=Yd(Jr(m[0])["target-range-address"]);d[W[0]]["!autofilter"]={ref:W[1]}}catch(re){}break;case"date":break;case"object":break;case"title":;case"标题":break;case"desc":break;case"binary-data":break;case"table-source":break;case"scenario":break;case"iteration":break;case"content-validations":break;case"content-validation":break;case"help-message":break;case"error-message":break;case"database-ranges":break;case"filter":break;case"filter-and":break;case"filter-or":break;case"filter-condition":break;case"list-level-style-bullet":break;case"list-level-style-number":break;case"list-level-properties":break;case"sender-firstname":;case"sender-lastname":;case"sender-initials":;case"sender-title":;case"sender-position":;case"sender-email":;case"sender-phone-private":;case"sender-fax":;case"sender-company":;case"sender-phone-work":;case"sender-street":;case"sender-city":;case"sender-postal-code":;case"sender-country":;case"sender-state-or-province":;case"author-name":;case"author-initials":;case"chapter":;case"file-name":;case"template-name":;case"sheet-name":break;case"event-listener":break;case"initial-creator":;case"creation-date":;case"print-date":;case"generator":;case"document-statistic":;case"user-defined":;case"editing-duration":;case"editing-cycles":break;case"config-item":break;case"page-number":break;case"page-count":break;case"time":break;case"cell-range-source":break;case"detective":break;case"operation":break;case"highlighted-range":break;case"data-pilot-table":;case"source-cell-range":;case"source-service":;case"data-pilot-field":;case"data-pilot-level":;case"data-pilot-subtotals":;case"data-pilot-subtotal":;case"data-pilot-members":;case"data-pilot-member":;case"data-pilot-display-info":;case"data-pilot-sort-info":;case"data-pilot-layout-info":;case"data-pilot-field-reference":;case"data-pilot-groups":;case"data-pilot-group":;case"data-pilot-group-member":break;case"rect":break;case"dde-connection-decls":;case"dde-connection-decl":;case"dde-link":;case"dde-source":break;case"properties":break;case"property":break;case"a":if(m[1]!=="/"){B=Jr(m[0],false);if(!B.href)break;B.Target=rt(B.href);delete B.href;if(B.Target.charAt(0)=="#"&&B.Target.indexOf(".")>-1){W=Yd(B.Target.slice(1));B.Target="#"+W[0]+"!"+W[1]}else if(B.Target.match(/^\.\.[\\\/]/))B.Target=B.Target.slice(3)}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs": -break;default:switch(m[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(a.WTF)throw new Error(m);};}var te={Sheets:d,SheetNames:p,Workbook:U};if(a.bookSheets)delete te.Sheets;return te}function vb(e,r){r=r||{};if(Dr(e,"META-INF/manifest.xml"))hi(Lr(e,"META-INF/manifest.xml"),r);var t=Mr(e,"styles.xml");var a=t&&db(mt(t),r);var n=Mr(e,"content.xml");if(!n)throw new Error("Missing content.xml in ODS / UOF file");var i=pb(mt(n),r,a);if(Dr(e,"meta.xml"))i.Props=wi(Lr(e,"meta.xml"));i.bookType="ods";return i}function mb(e,r){var t=pb(e,r);t.bookType="fods";return t}var gb=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return Gr+r}}();function bb(e,r){var t="number",a="",n={"style:name":r},i="",s=0;e=e.replace(/"[$]"/g,"$");e:{if(e.indexOf(";")>-1){console.error("Unsupported ODS Style Map exported. Using first branch of "+e);e=e.slice(0,e.indexOf(";"))}if(e=="@"){t="text";a="";break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[s]=='"'){i="";while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;if(e[s+1]=="*"){s++;a+=""+nt(i.replace(/""/g,'"'))+""}else{a+=""+nt(i.replace(/""/g,'"'))+""}e=e.slice(s+1);s=0}var f=e.match(/# (\?+)\/(\?+)/);if(f){a+=_t("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":f[1].length,"number:max-denominator-value":Math.max(+f[1].replace(/./g,"9"),+f[2].replace(/./g,"9"))});break e}if(f=e.match(/# (\?+)\/(\d+)/)){a+=_t("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":f[1].length,"number:denominator-value":+f[2]});break e}if(f=e.match(/(\d+)(|\.\d+)%/)){t="percentage";a+=_t("number:number",null,{"number:decimal-places":f[2]&&f.length-1||0,"number:min-decimal-places":f[2]&&f.length-1||0,"number:min-integer-digits":f[1].length})+"%";break e}var o=false;if(["y","m","d"].indexOf(e[0])>-1){t="date";r:for(;s";break;case"yyy":;case"yyyy":a+='';break;case"mmmmm":console.error("ODS has no equivalent of format |mmmmm|");case"m":;case"mm":;case"mmm":;case"mmmm":a+='';break;case"d":;case"dd":a+='';break;case"ddd":;case"dddd":a+='';break;}break;case'"':while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(i)+"";break;default:console.error("unrecognized character "+i+" in ODF format "+e);}if(!o)break e;e=e.slice(s+1);s=0}if(e.match(/^\[?[hms]/)){if(t=="number")t="time";if(e.match(/\[/)){e=e.replace(/[\[\]]/g,"");n["number:truncate-on-overflow"]="false"}for(;s';break;case"m":;case"mm":a+='';break;case"s":;case"ss":if(e[s+1]==".")do{i+=e[s+1];++s}while(e[s+1]=="0");a+='";break;}break;case'"':while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(i)+"";break;case"a":if(e.slice(s,s+3).toLowerCase()=="a/p"){a+="";s+=2;break}if(e.slice(s,s+5).toLowerCase()=="am/pm"){a+="";s+=4;break};default:console.error("unrecognized character "+i+" in ODF format "+e);}break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[0]=="$"){a+='$';e=e.slice(1);s=0}s=0;if(e[s]=='"'){while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;if(e[s+1]=="*"){s++;a+=""+nt(i.replace(/""/g,'"'))+""}else{a+=""+nt(i.replace(/""/g,'"'))+""}e=e.slice(s+1);s=0}var c=e.match(/([#0][0#,]*)(\.[0#]*|)(E[+]?0*|)/i);if(!c||!c[0])console.error("Could not find numeric part of "+e);else{var h=c[1].replace(/,/g,"");a+="-1?' number:grouping="true"':"")+(c[2]&&' number:decimal-places="'+(c[2].length-1)+'"'||' number:decimal-places="0"')+(c[3]&&c[3].indexOf("+")>-1?' number:forced-exponent-sign="true"':"")+(c[3]?' number:min-exponent-digits="'+c[3].match(/0+/)[0].length+'"':"")+">"+"";s=c.index+c[0].length}if(e[s]=='"'){i="";while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.replace(/""/g,'"'))+""}}if(!a){console.error("Could not generate ODS number format for |"+e+"|");return""}return _t("number:"+t+"-style",a,n)}function wb(e,r,t){var a=e.filter(function(e){return e.Sheet==(t==-1?null:t)});if(!a.length)return"";return" \n"+a.map(function(e){var r=Kd(e.Ref);return" "+_t("table:named-range",null,{"table:name":e.Name,"table:cell-range-address":r,"table:base-cell-address":r.replace(/[\.]?[^\.]*$/,".$A$1")})}).join("\n")+"\n \n"}var kb=function(){var e=function(e){return nt(e).replace(/ +/g,function(e){return''}).replace(/\t/g,"").replace(/\n/g,"").replace(/^ /,"").replace(/ $/,"")};var r=" \n";var t=" \n";var a=function(a,n,i,s,f){var o=[];o.push(' \n');var l=0,c=0,h=Ua(a["!ref"]||"A1");var u=a["!merges"]||[],d=0;var p=Array.isArray(a);if(a["!cols"]){for(c=0;c<=h.e.c;++c)o.push(" \n")}var v="",m=a["!rows"]||[];for(l=0;l\n")}for(;l<=h.e.r;++l){v=m[l]?' table:style-name="ro'+m[l].ods+'"':"";o.push(" \n");for(c=0;cc)continue;if(u[d].s.r>l)continue;if(u[d].e.c\n")}if((n.Workbook||{}).Names)o.push(wb(n.Workbook.Names,n.SheetNames,i));o.push(" \n");return o.join("")};var n=function(e,r){e.push(" \n");var t=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!cols"]){for(var a=0;a\n');e.push(' \n');e.push(" \n");++t}}});var a=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!rows"]){for(var t=0;t\n');e.push(' \n');e.push(" \n");++a}}});e.push(' \n');e.push(' \n');e.push(" \n");e.push(' \n');e.push(' \n');e.push(" /\n");e.push(' \n');e.push(" /\n");e.push(" \n");e.push(" \n");var n={};var i=69;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;var t=Ua(r["!ref"]);for(var a=0;a<=t.e.r;++a)for(var s=0;s<=t.e.c;++s){var f=Array.isArray(r)?(r[a]||[])[s]:r[Ma({r:a,c:s})];if(!f||!f.z||f.z.toLowerCase()=="general")continue;if(!n[f.z]){var o=bb(f.z,"N"+i);if(o){n[f.z]="N"+i;++i;e.push(o+"\n")}}}});e.push(' \n');sr(n).forEach(function(r){e.push('\n')});e.push(" \n");return n};return function i(e,r){var t=[Gr];var i=St({"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:meta":"urn:oasis:names:tc:opendocument:xmlns:meta:1.0","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:presentation":"urn:oasis:names:tc:opendocument:xmlns:presentation:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:chart":"urn:oasis:names:tc:opendocument:xmlns:chart:1.0","xmlns:dr3d":"urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0","xmlns:math":"http://www.w3.org/1998/Math/MathML","xmlns:form":"urn:oasis:names:tc:opendocument:xmlns:form:1.0","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=St({"xmlns:config":"urn:oasis:names:tc:opendocument:xmlns:config:1.0","office:mimetype":"application/vnd.oasis.opendocument.spreadsheet"});if(r.bookType=="fods"){t.push("\n");t.push(mi().replace(//,"").replace(/<\/office:document-meta>/,"")+"\n")}else t.push("\n");var f=n(t,e);t.push(" \n");t.push(" \n");if(((e.Workbook||{}).WBProps||{}).date1904)t.push(' \n \n \n');for(var o=0;o!=e.SheetNames.length;++o)t.push(a(e.Sheets[e.SheetNames[o]],e,o,r,f));if((e.Workbook||{}).Names)t.push(wb(e.Workbook.Names,e.SheetNames,-1));t.push(" \n");t.push(" \n");if(r.bookType=="fods")t.push("");else t.push("");return t.join("")}}();function Ab(e,r){if(r.bookType=="fods")return kb(e,r);var t=Hr();var a="";var n=[];var i=[];a="mimetype";Wr(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";Wr(t,a,kb(e,r));n.push([a,"text/xml"]);i.push([a,"ContentFile"]);a="styles.xml";Wr(t,a,gb(e,r));n.push([a,"text/xml"]);i.push([a,"StylesFile"]);a="meta.xml";Wr(t,a,Gr+mi());n.push([a,"text/xml"]);i.push([a,"MetadataFile"]);a="manifest.rdf";Wr(t,a,vi(i));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";Wr(t,a,ui(n));return t}var Tb=function(){try{if(typeof Uint8Array=="undefined")return"slice";if(typeof Uint8Array.prototype.subarray=="undefined")return"slice";if(typeof Buffer!=="undefined"){if(typeof Buffer.prototype.subarray=="undefined")return"slice";if((typeof Buffer.from=="function"?Buffer.from([72,62]):new Buffer([72,62]))instanceof Uint8Array)return"subarray";return"slice"}return"subarray"}catch(e){return"slice"}}();function Eb(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function yb(e){return typeof TextDecoder!="undefined"?(new TextDecoder).decode(e):mt(R(e))}function Cb(e){return typeof TextEncoder!="undefined"?(new TextEncoder).encode(e):x(gt(e))}function Sb(e,r){var t=e.indexOf(r[0]);if(t==-1)return false;e:for(;t<=e.length-r.length;++t){for(var a=0;a>1&1431655765;e=(e&858993459)+(e>>2&858993459);return(e+(e>>4)&252645135)*16843009>>>24}function Ob(e,r){var t=(e[r+15]&127)<<7|e[r+14]>>1;var a=e[r+14]&1;for(var n=r+13;n>=r;--n)a=a*256+e[n];return(e[r+15]&128?-a:a)*Math.pow(10,t-6176)}function Rb(e,r,t){var a=Math.floor(t==0?0:Math.LOG10E*Math.log(Math.abs(t)))+6176-16;var n=t/Math.pow(10,a-6176);e[r+15]|=a>>7;e[r+14]|=(a&127)<<1;for(var i=0;n>=1;++i,n/=256)e[r+i]=n&255;e[r+15]|=t>=0?0:128}function Nb(e,r){var t=r?r[0]:0;var a=e[t]&127;e:if(e[t++]>=128){a|=(e[t]&127)<<7;if(e[t++]<128)break e;a|=(e[t]&127)<<14;if(e[t++]<128)break e;a|=(e[t]&127)<<21;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,28);++t;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,35);++t;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,42);++t;if(e[t++]<128)break e}if(r)r[0]=t;return a}function Ib(e){var r=new Uint8Array(7);r[0]=e&127;var t=1;e:if(e>127){r[t-1]|=128;r[t]=e>>7&127;++t;if(e<=16383)break e;r[t-1]|=128;r[t]=e>>14&127;++t;if(e<=2097151)break e;r[t-1]|=128;r[t]=e>>21&127;++t;if(e<=268435455)break e;r[t-1]|=128;r[t]=e/256>>>21&127;++t;if(e<=34359738367)break e;r[t-1]|=128;r[t]=e/65536>>>21&127;++t;if(e<=4398046511103)break e;r[t-1]|=128;r[t]=e/16777216>>>21&127;++t}return r[Tb](0,t)}function Fb(e){var r=[0];var t=[];while(r[0]=128){t|=(e[r]&127)<<7;if(e[r++]<128)break e;t|=(e[r]&127)<<14;if(e[r++]<128)break e;t|=(e[r]&127)<<21;if(e[r++]<128)break e;t|=(e[r]&127)<<28}return t}function Lb(e){var r=[],t=[0];while(t[0]=128);f=e[Tb](o,t[0])}break;case 5:s=4;f=e[Tb](t[0],t[0]+s);t[0]+=s;break;case 1:s=8;f=e[Tb](t[0],t[0]+s);t[0]+=s;break;case 2:s=Nb(e,t);f=e[Tb](t[0],t[0]+s);t[0]+=s;break;case 3:;case 4:;default:throw new Error("PB Type ".concat(i," for Field ").concat(n," at offset ").concat(a));}var l={data:f,type:i};if(r[n]==null)r[n]=[l];else r[n].push(l)}return r}function Mb(e){var r=[];e.forEach(function(e,t){if(t==0)return;e.forEach(function(e){if(!e.data)return;r.push(Ib(t*8+e.type));if(e.type==2)r.push(Ib(e.data.length));r.push(e.data)})});return _b(r)}function Ub(e,r){return(e==null?void 0:e.map(function(e){return r(e.data)}))||[]}function Bb(e){var r;var t=[],a=[0];while(a[0]>>0>0;t.push(s)}return t}function Wb(e){var r=[];e.forEach(function(e){var t=[[],[{data:Ib(e.id),type:0}],[]];if(e.merge!=null)t[3]=[{data:Ib(+!!e.merge),type:0}];var a=[];e.messages.forEach(function(e){a.push(e.data);e.meta[3]=[{type:0,data:Ib(e.data.length)}];t[2].push({data:Mb(e.meta),type:2})});var n=Mb(t);r.push(Ib(n.length));r.push(n);a.forEach(function(e){return r.push(e)})});return _b(r)}function Hb(e,r){if(e!=0)throw new Error("Unexpected Snappy chunk type ".concat(e));var t=[0];var a=Nb(r,t);var n=[];while(t[0]>2;if(s<60)++s;else{var f=s-59;s=r[t[0]];if(f>1)s|=r[t[0]+1]<<8;if(f>2)s|=r[t[0]+2]<<16;if(f>3)s|=r[t[0]+3]<<24;s>>>=0;s++;t[0]+=f}n.push(r[Tb](t[0],t[0]+s));t[0]+=s;continue}else{var o=0,l=0;if(i==1){l=(r[t[0]]>>2&7)+4;o=(r[t[0]++]&224)<<3;o|=r[t[0]++]}else{l=(r[t[0]++]>>2)+1;if(i==2){o=r[t[0]]|r[t[0]+1]<<8;t[0]+=2}else{o=(r[t[0]]|r[t[0]+1]<<8|r[t[0]+2]<<16|r[t[0]+3]<<24)>>>0;t[0]+=4}}if(o==0)throw new Error("Invalid offset 0");var c=n.length-1,h=o;while(c>=0&&h>=n[c].length){h-=n[c].length;--c}if(c<0){if(h==0)h=n[c=0].length;else throw new Error("Invalid offset beyond length")}if(l0){n.push(n[c][Tb](n[c].length-h));l-=h}++c;while(l>=n[c].length){n.push(n[c]);l-=n[c].length;++c}if(l)n.push(n[c][Tb](0,l))}if(n.length>100)n=[_b(n)]}}if(n.reduce(function(e,r){return e+r.length},0)!=a)throw new Error("Unexpected length: ".concat(n.reduce(function(e,r){return e+r.length},0)," != ").concat(a));return n}function zb(e){if(Array.isArray(e))e=new Uint8Array(e);var r=[];var t=0;while(t>8&255]))}else if(a<=16777216){s+=4;r.push(new Uint8Array([248,a-1&255,a-1>>8&255,a-1>>16&255]))}else if(a<=4294967296){s+=5;r.push(new Uint8Array([252,a-1&255,a-1>>8&255,a-1>>16&255,a-1>>>24&255]))}r.push(e[Tb](t,t+a));s+=a;n[0]=0;n[1]=s&255;n[2]=s>>8&255;n[3]=s>>16&255;t+=a}return _b(r)}var Gb=function(){return{sst:[],rsst:[],ofmt:[],nfmt:[]}};function $b(e,r,t,a,n){var i,s,f,o;var l=r&255,c=r>>8;var h=c>=5?n:a;e:if(t&(c>4?8:4)&&e.t=="n"&&l==7){var u=((i=h[7])==null?void 0:i[0])?Nb(h[7][0].data):-1;if(u==-1)break e;var d=((s=h[15])==null?void 0:s[0])?Nb(h[15][0].data):-1;var p=((f=h[16])==null?void 0:f[0])?Nb(h[16][0].data):-1;var v=((o=h[40])==null?void 0:o[0])?Nb(h[40][0].data):-1;var m=e.v,g=m;r:if(v){if(m==0){d=p=2;break r}if(m>=604800)d=1;else if(m>=86400)d=2;else if(m>=3600)d=4;else if(m>=60)d=8;else if(m>=1)d=16;else d=32;if(Math.floor(m)!=m)p=32;else if(m%60)p=16;else if(m%3600)p=8;else if(m%86400)p=4;else if(m%604800)p=2;if(p=2){g=m/86400;if(p>2){g|=0;m-=86400*g}w.push('d"d"');b.push(g+(u==2?" day"+(g==1?"":"s"):u==1?"d":""))}if(d<=4&&p>=4){g=m/3600;if(p>4){g|=0;m-=3600*g}w.push((d>=4?"[h]":"h")+'"h"');b.push(g+(u==2?" hour"+(g==1?"":"s"):u==1?"h":""))}if(d<=8&&p>=8){g=m/60;if(p>8){g|=0;m-=60*g}w.push((d>=8?"[m]":"m")+'"m"');if(u==0)b.push((d==8&&p==8||g>=10?"":"0")+g);else b.push(g+(u==2?" minute"+(g==1?"":"s"):u==1?"m":""))}if(d<=16&&p>=16){g=m;if(p>16){g|=0;m-=g}w.push((d>=16?"[s]":"s")+'"s"');if(u==0)b.push((p==16&&d==16||g>=10?"":"0")+g);else b.push(g+(u==2?" second"+(g==1?"":"s"):u==1?"s":""))}if(p>=32){g=Math.round(1e3*m);if(d<32)w.push('.000"ms"');if(u==0)b.push((g>=100?"":g>=10?"0":"00")+g);else b.push(g+(u==2?" millisecond"+(g==1?"":"s"):u==1?"ms":""))}e.w=b.join(u==0?":":" ");e.z=w.join(u==0?'":"':" ");if(u==0)e.w=e.w.replace(/:(\d\d\d)$/,".$1")}}function jb(e,r,t){var a=Eb(e);var n=a.getUint32(4,true);var i=-1,s=-1,f=-1,o=NaN,l=new Date(2001,0,1);var c=t>1?12:8;if(n&2){f=a.getUint32(c,true);c+=4}c+=xb(n&(t>1?3468:396))*4;if(n&512){i=a.getUint32(c,true);c+=4}c+=xb(n&(t>1?12288:4096))*4;if(n&16){s=a.getUint32(c,true);c+=4}if(n&32){o=a.getFloat64(c,true);c+=8}if(n&64){l.setTime(l.getTime()+a.getFloat64(c,true)*1e3);c+=8}if(t>1){n=a.getUint32(8,true)>>>16;if(n&255){if(f==-1)f=a.getUint32(c,true);c+=4}}var h;var u=e[t>=4?1:2];switch(u){case 0:return void 0;case 2:h={t:"n",v:o};break;case 3:h={t:"s",v:r.sst[s]};break;case 5:h={t:"d",v:l};break;case 6:h={t:"b",v:o>0};break;case 7:h={t:"n",v:o};break;case 8:h={t:"e",v:0};break;case 9:{if(i>-1)h={t:"s",v:r.rsst[i]};else throw new Error("Unsupported cell type ".concat(e[Tb](0,4)))}break;default:throw new Error("Unsupported cell type ".concat(e[Tb](0,4)));}if(f>-1)$b(h,u|t<<8,n,r.ofmt[f],r.nfmt[f]);if(u==7)h.v/=86400;return h}function Xb(e,r){var t=Eb(e);var a=t.getUint32(4,true);var n=t.getUint32(8,true);var i=12;var s=-1,f=-1,o=-1,l=NaN,c=NaN,h=new Date(2001,0,1);if(n&1){l=Ob(e,i);i+=16}if(n&2){c=t.getFloat64(i,true);i+=8}if(n&4){h.setTime(h.getTime()+t.getFloat64(i,true)*1e3);i+=8}if(n&8){f=t.getUint32(i,true);i+=4}if(n&16){s=t.getUint32(i,true);i+=4}var u;var d=e[1];switch(d){case 0:return void 0;case 2:u={t:"n",v:l};break;case 3:u={t:"s",v:r.sst[f]};break;case 5:u={t:"d",v:h};break;case 6:u={t:"b",v:c>0};break;case 7:u={t:"n",v:c};break;case 8:u={t:"e",v:0};break;case 9:u={t:"s",v:r.rsst[s]};break;case 10:u={t:"n",v:l};break;default:throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(n&31," : ").concat(e[Tb](0,4)));}i+=xb(n&8160)*4;if(n&516096){if(o==-1)o=t.getUint32(i,true);i+=4}if(o>-1)$b(u,d|5<<8,n>>13,r.ofmt[o],r.nfmt[o]);if(d==7)u.v/=86400;return u}function Yb(e,r){var t=new Uint8Array(32),a=Eb(t),n=12,i=0;t[0]=5;switch(e.t){case"n":t[1]=2;Rb(t,n,e.v);i|=1;n+=16;break;case"b":t[1]=6;a.setFloat64(n,e.v?1:0,true);i|=2;n+=8;break;case"s":if(r.indexOf(e.v)==-1)throw new Error("Value ".concat(e.v," missing from SST!"));t[1]=3;a.setUint32(n,r.indexOf(e.v),true);i|=8;n+=4;break;default:throw"unsupported cell type "+e.t;}a.setUint32(8,i,true);return t[Tb](0,n)}function Kb(e,r){var t=new Uint8Array(32),a=Eb(t),n=12,i=0;t[0]=4;switch(e.t){case"n":t[2]=2;a.setFloat64(n,e.v,true);i|=32;n+=8;break;case"b":t[2]=6;a.setFloat64(n,e.v?1:0,true);i|=32;n+=8;break;case"s":if(r.indexOf(e.v)==-1)throw new Error("Value ".concat(e.v," missing from SST!"));t[2]=3;a.setUint32(n,r.indexOf(e.v),true);i|=16;n+=4;break;default:throw"unsupported cell type "+e.t;}a.setUint32(8,i,true);return t[Tb](0,n)}function Zb(e,r){switch(e[0]){case 0:;case 1:;case 2:;case 3:;case 4:return jb(e,r,e[0]);case 5:return Xb(e,r);default:throw new Error("Unsupported payload version ".concat(e[0]));}}function Jb(e){var r=Lb(e);return Nb(r[1][0].data)}function qb(e){return Mb([[],[{type:0,data:Ib(e)}]])}function Qb(e,r){var t=Lb(r.data);var a=Pb(t[1][0].data);var n=t[3];var i=[];(n||[]).forEach(function(r){var t=Lb(r.data);var n=Pb(t[1][0].data)>>>0;switch(a){case 1:i[n]=yb(t[3][0].data);break;case 8:{var s=e[Jb(t[9][0].data)][0];var f=Lb(s.data);var o=e[Jb(f[1][0].data)][0];var l=Pb(o.meta[1][0].data);if(l!=2001)throw new Error("2000 unexpected reference to ".concat(l));var c=Lb(o.data);i[n]=c[3].map(function(e){return yb(e.data)}).join("")}break;case 2:i[n]=Lb(t[6][0].data);break;default:throw a;}});return i}function ew(e,r){var t,a,n,i,s,f,o,l,c,h,u,d,p,v;var m=Lb(e);var g=Pb(m[1][0].data)>>>0;var b=Pb(m[2][0].data)>>>0;var w=((a=(t=m[8])==null?void 0:t[0])==null?void 0:a.data)&&Pb(m[8][0].data)>0||false;var k,A;if(((i=(n=m[7])==null?void 0:n[0])==null?void 0:i.data)&&r!=0){k=(f=(s=m[7])==null?void 0:s[0])==null?void 0:f.data;A=(l=(o=m[6])==null?void 0:o[0])==null?void 0:l.data}else if(((h=(c=m[4])==null?void 0:c[0])==null?void 0:h.data)&&r!=1){k=(d=(u=m[4])==null?void 0:u[0])==null?void 0:d.data;A=(v=(p=m[3])==null?void 0:p[0])==null?void 0:v.data}else throw"NUMBERS Tile missing ".concat(r," cell storage");var T=w?4:1;var E=Eb(k);var y=[];for(var C=0;C=1)_[y[y.length-1][0]]=A[Tb](y[y.length-1][1]*T);return{R:g,cells:_}}function rw(e,r){var t;var a=Lb(r.data);var n=-1;if((t=a==null?void 0:a[7])==null?void 0:t[0]){if(Pb(a[7][0].data)>>>0)n=1;else n=0}var i=Ub(a[5],function(e){return ew(e,n)});return{nrows:Pb(a[4][0].data)>>>0,data:i.reduce(function(e,r){if(!e[r.R])e[r.R]=[];r.cells.forEach(function(t,a){if(e[r.R][a])throw new Error("Duplicate cell r=".concat(r.R," c=").concat(a));e[r.R][a]=t});return e},[])}}function tw(e,r,t){var a,n,i,s,f,o;var l=Lb(r.data);var c={s:{r:0,c:0},e:{r:0,c:0}};c.e.r=(Pb(l[6][0].data)>>>0)-1;if(c.e.r<0)throw new Error("Invalid row varint ".concat(l[6][0].data));c.e.c=(Pb(l[7][0].data)>>>0)-1;if(c.e.c<0)throw new Error("Invalid col varint ".concat(l[7][0].data));t["!ref"]=Ba(c);var h=Array.isArray(t);var u=Lb(l[4][0].data);var d=Gb();if((a=u[4])==null?void 0:a[0])d.sst=Qb(e,e[Jb(u[4][0].data)][0]);if((n=u[11])==null?void 0:n[0])d.ofmt=Qb(e,e[Jb(u[11][0].data)][0]);if((i=u[17])==null?void 0:i[0])d.rsst=Qb(e,e[Jb(u[17][0].data)][0]);if((s=u[22])==null?void 0:s[0])d.nfmt=Qb(e,e[Jb(u[22][0].data)][0]);var p=Lb(u[3][0].data);var v=0;p[1].forEach(function(r){var a=Lb(r.data);var n=e[Jb(a[2][0].data)][0];var i=Pb(n.meta[1][0].data);if(i!=6002)throw new Error("6001 unexpected reference to ".concat(i));var s=rw(e,n);s.data.forEach(function(e,r){e.forEach(function(e,a){var n=Zb(e,d);if(n){if(h){if(!t[v+r])t[v+r]=[];t[v+r][a]=n}else{var i=Ma({r:v+r,c:a});t[i]=n}}})});v+=s.nrows});if((f=u[13])==null?void 0:f[0]){var m=e[Jb(u[13][0].data)][0];var g=Pb(m.meta[1][0].data);if(g!=6144)throw new Error("Expected merge type 6144, found ".concat(g));t["!merges"]=(o=Lb(m.data))==null?void 0:o[1].map(function(e){var r=Lb(e.data);var t=Eb(Lb(r[1][0].data)[1][0].data),a=Eb(Lb(r[2][0].data)[1][0].data);return{s:{r:t.getUint16(0,true),c:t.getUint16(2,true)},e:{r:t.getUint16(0,true)+a.getUint16(0,true)-1,c:t.getUint16(2,true)+a.getUint16(2,true)-1}}})}}function aw(e,r,t){var a=Lb(r.data);var n;if(!(t==null?void 0:t.dense))n={"!ref":"A1"};else n=[];n["!ref"]="A1";var i=e[Jb(a[2][0].data)];var s=Pb(i[0].meta[1][0].data);if(s!=6001)throw new Error("6000 unexpected reference to ".concat(s));tw(e,i[0],n);return n}function nw(e,r,t){var a;var n=Lb(r.data);var i={name:((a=n[1])==null?void 0:a[0])?yb(n[1][0].data):"",sheets:[]};var s=Ub(n[2],Jb);s.forEach(function(r){e[r].forEach(function(r){var a=Pb(r.meta[1][0].data);if(a==6e3)i.sheets.push(aw(e,r,t))})});return i}function iw(e,r,t){var a;var n=ck();var i=Lb(r.data);if((a=i[2])==null?void 0:a[0])throw new Error("Keynote presentations are not supported");var s=Ub(i[1],Jb);s.forEach(function(r){e[r].forEach(function(r){var a=Pb(r.meta[1][0].data);if(a==2){var i=nw(e,r,t);i.sheets.forEach(function(e,r){hk(n,e,r==0?i.name:i.name+"_"+r,true)})}})});if(n.SheetNames.length==0)throw new Error("Empty NUMBERS file");n.bookType="numbers";return n}function sw(e,r){var t,a,n,i,s,f,o,l;var c={},h=[];e.FullPaths.forEach(function(e){if(e.match(/\.iwpv2/))throw new Error("Unsupported password protection")});e.FileIndex.forEach(function(e){if(!e.name.match(/\.iwa$/))return;if(e.content[0]==98)return;var r;try{r=zb(e.content)}catch(t){return console.log("?? "+e.content.length+" "+(t.message||t))}var a;try{a=Bb(r)}catch(t){return console.log("## "+(t.message||t))}a.forEach(function(e){c[e.id]=e.messages;h.push(e.id)})});if(!h.length)throw new Error("File has no messages");if(((i=(n=(a=(t=c==null?void 0:c[1])==null?void 0:t[0])==null?void 0:a.meta)==null?void 0:n[1])==null?void 0:i[0].data)&&Pb(c[1][0].meta[1][0].data)==1e4)throw new Error("Pages documents are not supported");var u=((l=(o=(f=(s=c==null?void 0:c[1])==null?void 0:s[0])==null?void 0:f.meta)==null?void 0:o[1])==null?void 0:l[0].data)&&Pb(c[1][0].meta[1][0].data)==1&&c[1][0];if(!u)h.forEach(function(e){c[e].forEach(function(e){var r=Pb(e.meta[1][0].data)>>>0;if(r==1){if(!u)u=e;else throw new Error("Document has multiple roots")}})});if(!u)throw new Error("Cannot find Document root");return iw(c,u,r)}function fw(e,r,t,a){var n,i;if(!((n=e[6])==null?void 0:n[0])||!((i=e[7])==null?void 0:i[0]))throw"Mutation only works on post-BNC storages!";var s=0;if(e[7][0].data.length<2*r.length){var f=new Uint8Array(2*r.length); -f.set(e[7][0].data);e[7][0].data=f}if(e[4][0].data.length<2*r.length){var o=new Uint8Array(2*r.length);o.set(e[4][0].data);e[4][0].data=o}var l=Eb(e[7][0].data),c=0,h=[];var u=Eb(e[4][0].data),d=0,p=[];var v=a?4:1;for(var m=0;m1}).map(function(e){return[e,Ib(e)]});e.FileIndex.forEach(function(e){if(!e.name.match(/\.iwa/))return;if(e.name.match(/OperationStorage/))return;Bb(zb(e.content)).forEach(function(e){a.forEach(function(t){if(e.messages.some(function(e){return Pb(e.meta[1][0].data)!=11006&&Sb(e.data,t[1])})){r[t[0]].deps.push(e.id)}})})});return r}function hw(e,r){if(!r||!r.numbers)throw new Error("Must pass a `numbers` option -- check the README");var t=er.read(r.numbers,{type:"base64"});var a=cw(t);var n=er.find(t,a[1].location);if(!n)throw"Could not find ".concat(a[1].location," in Numbers template");var i=Bb(zb(n.content));var s=i.find(function(e){return e.id==1});if(s==null)throw"Could not find message ".concat(1," in Numbers template");var f=Ub(Lb(s.messages[0].data)[1],Jb);e.SheetNames.forEach(function(r,n){return pw(t,a,e.Sheets[r],r,n,f[n])});return t}function uw(e,r,t,a){var n=er.find(e,r[t].location);if(!n)throw"Could not find ".concat(r[t].location," in Numbers template");var i=Bb(zb(n.content));var s=i.find(function(e){return e.id==t});a(s,i);n.content=Vb(Wb(i));n.size=n.content.length}function dw(e,r,t){var a=er.find(e,r[t].location);if(!a)throw"Could not find ".concat(r[t].location," in Numbers template");var n=Bb(zb(a.content));var i=n.find(function(e){return e.id==t});return i}function pw(e,r,t,a,n,i){if(n>=1)return console.error("The Numbers writer currently writes only the first table");var s=[];uw(e,r,i,function(e){var r=Lb(e.messages[0].data);{r[1]=[{type:2,data:Cb(a)}];s=Ub(r[2],Jb)}e.messages[0].data=Mb(r)});var f=dw(e,r,s[0]);var o=Jb(Lb(f.messages[0].data)[2][0].data);uw(e,r,o,function(a,n){return mw(e,r,t,a,n,o)})}var vw=true;function mw(e,r,t,a,n,i){var s,f;var o=Ua(t["!ref"]);o.s.r=o.s.c=0;var l=false;if(o.e.c>999){l=true;o.e.c=999}if(o.e.r>999999){l=true;o.e.r=999999}if(l)console.error("Truncating to ".concat(Ba(o)));var c=ek(t,{range:o,header:1});var h=["~Sh33tJ5~"],u=new Set(h);c.forEach(function(e){return e.forEach(function(e){if(typeof e=="string"&&!u.has(e)){h.push(e);u.add(e)}})});var d=r[i].location;d=d.replace(/^Root Entry\//,"");d=d.replace(/^Index\//,"").replace(/\.iwa$/,"");var p=Lb(a.messages[0].data);{p[6][0].data=Ib(o.e.r+1);p[7][0].data=Ib(o.e.c+1);delete p[46];var v=Lb(p[4][0].data);{var m=Jb(Lb(v[1][0].data)[2][0].data);uw(e,r,m,function(e,r){var t;var a=Lb(e.messages[0].data);if((t=a==null?void 0:a[2])==null?void 0:t[0])for(var n=0;n0)E=Nb(Lb(t[0].data)[12][0].data);r[3]=r[3].filter(function(e){return Nb(Lb(e.data)[1][0].data)!=T});var a=r[3].findIndex(function(e){var r,t;var a=Lb(e.data);if((r=a[3])==null?void 0:r[0])return yb(a[3][0].data)==d;if(((t=a[2])==null?void 0:t[0])&&yb(a[2][0].data)==d)return true;return false});var n=Lb(r[3][a].data);if(!n[6])n[6]=[];n[6]=n[6].filter(function(e){return Nb(Lb(e.data)[1][0].data)!=T});r[3][a].data=Mb(n);e.messages[0].data=Mb(r)})}k[1]=[];var y=Math.ceil((o.e.r+1)/A);for(var C=0;C-1)return"sheet";if(ii.CS&&e==ii.CS)return"chart";if(ii.DS&&e==ii.DS)return"dialog";if(ii.MS&&e==ii.MS)return"macro";return e&&e.length?e:"sheet"}function Aw(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,kw(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function Tw(e,r,t,a,n,i,s,f,o,l,c,h){try{i[a]=fi(Mr(e,t,true),r);var u=Lr(e,r);var d;switch(f){case"sheet":d=Bm(u,r,n,o,i[a],l,c,h);break;case"chart":d=Wm(u,r,n,o,i[a],l,c,h);if(!d||!d["!drawel"])break;var p=Vr(d["!drawel"].Target,r);var v=si(p);var m=uh(Mr(e,p,true),fi(Mr(e,v,true),p));var g=Vr(m,p);var b=si(g);d=am(Mr(e,g,true),g,o,fi(Mr(e,b,true),g),l,d);break;case"macro":d=Hm(u,r,n,o,i[a],l,c,h);break;case"dialog":d=zm(u,r,n,o,i[a],l,c,h);break;default:throw new Error("Unrecognized sheet type "+f);}s[a]=d;var w=[],k=[];if(i&&i[a])sr(i[a]).forEach(function(t){var n="";if(i[a][t].Type==ii.CMNT){n=Vr(i[a][t].Target,r);w=$m(Lr(e,n,true),n,o);if(!w||!w.length)return;vh(d,w,false)}if(i[a][t].Type==ii.TCMNT){n=Vr(i[a][t].Target,r);k=k.concat(bh(Lr(e,n,true),o))}});if(k&&k.length)vh(d,k,true,o.people||[])}catch(A){if(o.WTF)throw A}}function Ew(e){return e.charAt(0)=="/"?e.slice(1):e}function yw(e,r){$e();r=r||{};bw(r);if(Dr(e,"META-INF/manifest.xml"))return vb(e,r);if(Dr(e,"objectdata.xml"))return vb(e,r);if(Dr(e,"Index/Document.iwa")){if(typeof Uint8Array=="undefined")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof sw!="undefined"){if(e.FileIndex)return sw(e,r);var t=er.utils.cfb_new();Br(e).forEach(function(r){Wr(t,r,Ur(e,r))});return sw(t,r)}throw new Error("Unsupported NUMBERS file")}if(!Dr(e,"[Content_Types].xml")){if(Dr(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(Dr(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");var a=er.find(e,"Index.zip");if(a){r=Er(r);delete r.type;if(typeof a.content=="string")r.type="binary";if(typeof Bun!=="undefined"&&Buffer.isBuffer(a.content))return Lw(new Uint8Array(a.content),r);return Lw(a.content,r)}throw new Error("Unsupported ZIP file")}var n=Br(e);var i=ai(Mr(e,"[Content_Types].xml"));var s=false;var f,o;if(i.workbooks.length===0){o="xl/workbook.xml";if(Lr(e,o,true))i.workbooks.push(o)}if(i.workbooks.length===0){o="xl/workbook.bin";if(!Lr(e,o,true))throw new Error("Could not find workbook");i.workbooks.push(o);s=true}if(i.workbooks[0].slice(-3)=="bin")s=true;var l={};var c={};if(!r.bookSheets&&!r.bookProps){Zd=[];if(i.sst)try{Zd=Gm(Lr(e,Ew(i.sst)),i.sst,r)}catch(h){if(r.WTF)throw h}if(r.cellStyles&&i.themes.length)l=Wc(Mr(e,i.themes[0].replace(/^\//,""),true)||"",r);if(i.style)c=Vm(Lr(e,Ew(i.style)),i.style,l,r)}i.links.map(function(t){try{var a=fi(Mr(e,si(Ew(t))),t);return Xm(Lr(e,Ew(t)),a,t,r)}catch(n){}});var u=Um(Lr(e,Ew(i.workbooks[0])),i.workbooks[0],r);var d={},p="";if(i.coreprops.length){p=Lr(e,Ew(i.coreprops[0]),true);if(p)d=wi(p);if(i.extprops.length!==0){p=Lr(e,Ew(i.extprops[0]),true);if(p)Ci(p,d,r)}}var v={};if(!r.bookSheets||r.bookProps){if(i.custprops.length!==0){p=Mr(e,Ew(i.custprops[0]),true);if(p)v=xi(p,r)}}var m={};if(r.bookSheets||r.bookProps){if(u.Sheets)f=u.Sheets.map(function I(e){return e.name});else if(d.Worksheets&&d.SheetNames.length>0)f=d.SheetNames;if(r.bookProps){m.Props=d;m.Custprops=v}if(r.bookSheets&&typeof f!=="undefined")m.SheetNames=f;if(r.bookSheets?m.SheetNames:r.bookProps)return m}f={};var g={};if(r.bookDeps&&i.calcchain)g=jm(Lr(e,Ew(i.calcchain)),i.calcchain,r);var b=0;var w={};var k,A;{var T=u.Sheets;d.Worksheets=T.length;d.SheetNames=[];for(var E=0;E!=T.length;++E){d.SheetNames[E]=T[E].name}}var y=s?"bin":"xml";var C=i.workbooks[0].lastIndexOf("/");var S=(i.workbooks[0].slice(0,C+1)+"_rels/"+i.workbooks[0].slice(C+1)+".rels").replace(/^\//,"");if(!Dr(e,S))S="xl/_rels/workbook."+y+".rels";var _=fi(Mr(e,S,true),S.replace(/_rels.*/,"s5s"));if((i.metadata||[]).length>=1){r.xlmeta=Ym(Lr(e,Ew(i.metadata[0])),i.metadata[0],r)}if((i.people||[]).length>=1){r.people=kh(Lr(e,Ew(i.people[0])),r)}if(_)_=Aw(_,u.Sheets);var x=Lr(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(b=0;b!=d.Worksheets;++b){var O="sheet";if(_&&_[b]){k="xl/"+_[b][1].replace(/[\/]?xl\//,"");if(!Dr(e,k))k=_[b][1];if(!Dr(e,k))k=S.replace(/_rels\/.*$/,"")+_[b][1];O=_[b][2]}else{k="xl/worksheets/sheet"+(b+1-x)+"."+y;k=k.replace(/sheet0\./,"sheet.")}A=k.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");if(r&&r.sheets!=null)switch(typeof r.sheets){case"number":if(b!=r.sheets)continue e;break;case"string":if(d.SheetNames[b].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var R=false;for(var N=0;N!=r.sheets.length;++N){if(typeof r.sheets[N]=="number"&&r.sheets[N]==b)R=1;if(typeof r.sheets[N]=="string"&&r.sheets[N].toLowerCase()==d.SheetNames[b].toLowerCase())R=1}if(!R)continue e};}Tw(e,k,A,d.SheetNames[b],b,w,f,O,r,u,l,c)}m={Directory:i,Workbook:u,Props:d,Custprops:v,Deps:g,Sheets:f,SheetNames:d.SheetNames,Strings:Zd,Styles:c,Themes:l,SSF:Er(Z)};if(r&&r.bookFiles){if(e.files){m.keys=n;m.files=e.files}else{m.keys=[];m.files={};e.FullPaths.forEach(function(r,t){r=r.replace(/^Root Entry[\/]/,"");m.keys.push(r);m.files[r]=e.FileIndex[t]})}}if(r&&r.bookVBA){if(i.vba.length>0)m.vbaraw=Lr(e,Ew(i.vba[0]),true);else if(i.defaults&&i.defaults.bin===xh)m.vbaraw=Lr(e,"xl/vbaProject.bin",true)}m.bookType=s?"xlsb":"xlsx";return m}function Cw(e,r){var t=r||{};var a="Workbook",n=er.find(e,a);try{a="/!DataSpaces/Version";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);tl(n.content);a="/!DataSpaces/DataSpaceMap";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=nl(n.content);if(i.length!==1||i[0].comps.length!==1||i[0].comps[0].t!==0||i[0].name!=="StrongEncryptionDataSpace"||i[0].comps[0].v!=="EncryptedPackage")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=il(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);fl(n.content)}catch(f){}a="/EncryptionInfo";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var o=cl(n.content);a="/EncryptedPackage";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);if(o[0]==4&&typeof decrypt_agile!=="undefined")return decrypt_agile(o[1],n.content,t.password||"",t);if(o[0]==2&&typeof decrypt_std76!=="undefined")return decrypt_std76(o[1],n.content,t.password||"",t);throw new Error("File is password-protected")}function Sw(e,r){if(e&&!e.SSF){e.SSF=Er(Z)}if(e&&e.SSF){$e();Ge(e.SSF);r.revssf=lr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(qd)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="bin";var a=true;var n=ti();ww(r=r||{});var i=Hr();var s="",f=0;r.cellXfs=[];tp(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Wr(i,s,Ai(e.Props,r));n.coreprops.push(s);li(r.rels,2,s,ii.CORE_PROPS);s="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var o=[];for(var l=0;l0){s="docProps/custom.xml";Wr(i,s,Oi(e.Custprops,r));n.custprops.push(s);li(r.rels,4,s,ii.CUST_PROPS)}for(f=1;f<=e.SheetNames.length;++f){var c={"!id":{}};var h=e.Sheets[e.SheetNames[f-1]];var u=(h||{})["!type"]||"sheet";switch(u){case"chart":;default:s="xl/worksheets/sheet"+f+"."+t;Wr(i,s,rm(f-1,r,e,c));n.sheets.push(s);li(r.wbrels,-1,"worksheets/sheet"+f+"."+t,ii.WS[0]);}if(h){var d=h["!comments"];var p=false;var v="";if(d&&d.length>0){v="xl/comments"+f+"."+t;Wr(i,v,_h(d,r));n.comments.push(v);li(c,-1,"../comments"+f+"."+t,ii.CMNT);p=true}if(h["!legacy"]){if(p)Wr(i,"xl/drawings/vmlDrawing"+f+".vml",dh(f,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(c["!id"].rId1)Wr(i,si(s),oi(c))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Wr(i,s,Qo(r.Strings,r));n.strs.push(s);li(r.wbrels,-1,"sharedStrings."+t,ii.SST)}s="xl/workbook."+t;Wr(i,s,Mm(e,r));n.workbooks.push(s);li(r.rels,1,s,ii.WB);s="xl/theme/theme1.xml";var m=Hc(e.Themes,r);Wr(i,s,m);n.themes.push(s);li(r.wbrels,-1,"theme/theme1.xml",ii.THEME);s="xl/styles."+t;Wr(i,s,Rc(e,r));n.styles.push(s);li(r.wbrels,-1,"styles."+t,ii.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Wr(i,s,e.vbaraw);n.vba.push(s);li(r.wbrels,-1,"vbaProject.bin",ii.VBA)}s="xl/metadata."+t;Wr(i,s,nh());n.metadata.push(s);li(r.wbrels,-1,"metadata."+t,ii.XLMETA);Wr(i,"[Content_Types].xml",ni(n,r));Wr(i,"_rels/.rels",oi(r.rels));Wr(i,"xl/_rels/workbook."+t+".rels",oi(r.wbrels));delete r.revssf;delete r.ssf;return i}function _w(e,r){if(e&&!e.SSF){e.SSF=Er(Z)}if(e&&e.SSF){$e();Ge(e.SSF);r.revssf=lr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(qd)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=Nh.indexOf(r.bookType)>-1;var n=ti();ww(r=r||{});var i=Hr();var s="",f=0;r.cellXfs=[];tp(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Wr(i,s,Ai(e.Props,r));n.coreprops.push(s);li(r.rels,2,s,ii.CORE_PROPS);s="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var o=[];for(var l=0;l0){s="docProps/custom.xml";Wr(i,s,Oi(e.Custprops,r));n.custprops.push(s);li(r.rels,4,s,ii.CUST_PROPS)}var c=["SheetJ5"];r.tcid=0;for(f=1;f<=e.SheetNames.length;++f){var h={"!id":{}};var u=e.Sheets[e.SheetNames[f-1]];var d=(u||{})["!type"]||"sheet";switch(d){case"chart":;default:s="xl/worksheets/sheet"+f+"."+t;Wr(i,s,Mp(f-1,r,e,h));n.sheets.push(s);li(r.wbrels,-1,"worksheets/sheet"+f+"."+t,ii.WS[0]);}if(u){var p=u["!comments"];var v=false;var m="";if(p&&p.length>0){var g=false;p.forEach(function(e){e[1].forEach(function(e){if(e.T==true)g=true})});if(g){m="xl/threadedComments/threadedComment"+f+".xml";Wr(i,m,wh(p,c,r));n.threadedcomments.push(m);li(h,-1,"../threadedComments/threadedComment"+f+".xml",ii.TCMNT)}m="xl/comments"+f+"."+t;Wr(i,m,gh(p,r));n.comments.push(m);li(h,-1,"../comments"+f+"."+t,ii.CMNT);v=true}if(u["!legacy"]){if(v)Wr(i,"xl/drawings/vmlDrawing"+f+".vml",dh(f,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(h["!id"].rId1)Wr(i,si(s),oi(h))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Wr(i,s,Yo(r.Strings,r));n.strs.push(s);li(r.wbrels,-1,"sharedStrings."+t,ii.SST)}s="xl/workbook."+t;Wr(i,s,Am(e,r));n.workbooks.push(s);li(r.rels,1,s,ii.WB);s="xl/theme/theme1.xml";Wr(i,s,Hc(e.Themes,r));n.themes.push(s);li(r.wbrels,-1,"theme/theme1.xml",ii.THEME);s="xl/styles."+t;Wr(i,s,ac(e,r));n.styles.push(s);li(r.wbrels,-1,"styles."+t,ii.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Wr(i,s,e.vbaraw);n.vba.push(s);li(r.wbrels,-1,"vbaProject.bin",ii.VBA)}s="xl/metadata."+t;Wr(i,s,sh());n.metadata.push(s);li(r.wbrels,-1,"metadata."+t,ii.XLMETA);if(c.length>1){s="xl/persons/person.xml";Wr(i,s,Ah(c,r));n.people.push(s);li(r.wbrels,-1,"persons/person.xml",ii.PEOPLE)}Wr(i,"[Content_Types].xml",ni(n,r));Wr(i,"_rels/.rels",oi(r.rels));Wr(i,"xl/_rels/workbook."+t+".rels",oi(r.wbrels));delete r.revssf;delete r.ssf;return i}function xw(e,r){var t="";switch((r||{}).type||"base64"){case"buffer":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];case"base64":t=T(e.slice(0,12));break;case"binary":t=e;break;case"array":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];default:throw new Error("Unrecognized type "+(r&&r.type||"undefined"));}return[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3),t.charCodeAt(4),t.charCodeAt(5),t.charCodeAt(6),t.charCodeAt(7)]}function Ow(e,r){if(er.find(e,"EncryptedPackage"))return Cw(e,r);return Ng(e,r)}function Rw(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=E&&Buffer.isBuffer(e)?"buffer":"base64";t=zr(a,n);return yw(t,n)}function Nw(e,r){var t=0;e:while(t=2&&i[3]===0)return Po.to_workbook(n,t);if(i[2]===0&&(i[3]===8||i[3]===9))return Po.to_workbook(n,t)}break;case 3:;case 131:;case 139:;case 140:return Oo.to_workbook(n,t);case 123:if(i[1]===92&&i[2]===114&&i[3]===116)return Cl(n,t);break;case 10:;case 13:;case 32:return Iw(n,t);case 137:if(i[1]===80&&i[2]===78&&i[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;case 8:if(i[1]===231)throw new Error("Unsupported Multiplan 1.x file!");break;case 12:if(i[1]===236)throw new Error("Unsupported Multiplan 2.x file!");if(i[1]===237)throw new Error("Unsupported Multiplan 3.x file!");break;}if(xo.indexOf(i[0])>-1&&i[2]<=12&&i[3]<=31)return Oo.to_workbook(n,t);return Pw(e,n,t,s)}function Mw(e,r){var t=r||{};t.type="file";return Lw(e,t)}function Uw(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return nr(r.file,er.write(e,{type:E?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return er.write(e,r)}function Bw(e,r){switch(r.bookType){case"ods":return Ab(e,r);case"numbers":return hw(e,r);case"xlsb":return Sw(e,r);default:return _w(e,r);}}function Ww(e,r){var t=Er(r||{});var a=Bw(e,t);return zw(a,t)}function Hw(e,r){var t=Er(r||{});var a=_w(e,t);return zw(a,t)}function zw(e,r){var t={};var a=E?"nodebuffer":typeof Uint8Array!=="undefined"?"array":"string";if(r.compression)t.compression="DEFLATE";if(r.password)t.type=a;else switch(r.type){case"base64":t.type="base64";break;case"binary":t.type="string";break;case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");case"buffer":;case"file":t.type=a;break;default:throw new Error("Unrecognized type "+r.type);}var n=e.FullPaths?er.write(e,{fileType:"zip",type:{nodebuffer:"buffer",string:"binary"}[t.type]||t.type,compression:!!r.compression}):e.generate(t);if(typeof Deno!=="undefined"){if(typeof n=="string"){if(r.type=="binary"||r.type=="base64")return n;n=new Uint8Array(O(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return Uw(encrypt_agile(n,r.password),r);if(r.type==="file")return nr(r.file,n);return r.type=="string"?mt(n):n}function Vw(e,r){var t=r||{};var a=Ig(e,t);return Uw(a,t)}function Gw(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return k(gt(a));case"binary":return gt(a);case"string":return e;case"file":return nr(r.file,a,"utf8");case"buffer":{if(E)return y(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return Gw(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function $w(e,r){switch(r.type){case"base64":return A(e);case"binary":return e;case"string":return e;case"file":return nr(r.file,e,"binary");case"buffer":{if(E)return y(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function jw(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var h=xa(o.s.r);var u=[];var d=[];var p=0,v=0;var m=Array.isArray(e);var g=o.s.r,b=0;var w={};if(m&&!e[g])e[g]=[];var k=l.skipHidden&&e["!cols"]||[];var A=l.skipHidden&&e["!rows"]||[];for(b=o.s.c;b<=o.e.c;++b){if((k[b]||{}).hidden)continue;u[b]=Ia(b);t=m?e[g][b]:e[u[b]+h];switch(a){case 1:i[b]=b-o.s.c;break;case 2:i[b]=u[b];break;case 3:i[b]=l.header[b-o.s.c];break;default:if(t==null)t={w:"__EMPTY",t:"s"};f=s=Ga(t,null,l);v=w[s]||0;if(!v)w[s]=1;else{do{f=s+"_"+v++}while(w[f]);w[s]=v;w[f]=1}i[b]=f;}}for(g=o.s.r+n;g<=o.e.r;++g){if((A[g]||{}).hidden)continue;var T=Qw(e,o,g,u,a,i,m,l);if(T.isempty===false||(a===1?l.blankrows!==false:!!l.blankrows))d[p++]=T.row}d.length=p;return d}var rk=/"/g;function tk(e,r,t,a,n,i,s,f){var o=true;var l=[],c="",h=xa(t);for(var u=r.s.c;u<=r.e.c;++u){if(!a[u])continue;var d=f.dense?(e[t]||[])[u]:e[a[u]+h];if(d==null)c="";else if(d.v!=null){o=false;c=""+(f.rawNumbers&&d.t=="n"?d.v:Ga(d,null,f)); -for(var p=0,v=0;p!==c.length;++p)if((v=c.charCodeAt(p))===n||v===i||v===34||f.forceQuotes){c='"'+c.replace(rk,'""')+'"';break}if(c=="ID")c='"ID"'}else if(d.f!=null&&!d.F){o=false;c="="+d.f;if(c.indexOf(",")>=0)c='"'+c.replace(rk,'""')+'"'}else c="";l.push(c)}if(f.blankrows===false&&o)return null;return l.join(s)}function ak(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=za(e["!ref"]);var i=a.FS!==undefined?a.FS:",",s=i.charCodeAt(0);var f=a.RS!==undefined?a.RS:"\n",o=f.charCodeAt(0);var l=new RegExp((i=="|"?"\\|":i)+"+$");var c="",h=[];a.dense=Array.isArray(e);var u=a.skipHidden&&e["!cols"]||[];var d=a.skipHidden&&e["!rows"]||[];for(var p=n.s.c;p<=n.e.c;++p)if(!(u[p]||{}).hidden)h[p]=Ia(p);var v=0;for(var m=n.s.r;m<=n.e.r;++m){if((d[m]||{}).hidden)continue;c=tk(e,n,m,h,s,o,i,a);if(c==null){continue}if(a.strip)c=c.replace(l,"");if(c||a.blankrows!==false)t.push((v++?f:"")+c)}delete a.dense;return t.join("")}function nk(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=ak(e,r);if(typeof a=="undefined"||r.type=="string")return t;var n=a.utils.encode(1200,t,"str");return String.fromCharCode(255)+String.fromCharCode(254)+n}function ik(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=za(e["!ref"]),i="",s=[],f;var o=[];var l=Array.isArray(e);for(f=n.s.c;f<=n.e.c;++f)s[f]=Ia(f);for(var c=n.s.r;c<=n.e.r;++c){i=xa(c);for(f=n.s.c;f<=n.e.c;++f){r=s[f]+i;t=l?(e[c]||[])[f]:e[r];a="";if(t===undefined)continue;else if(t.F!=null){r=t.F;if(!t.f)continue;a=t.f;if(r.indexOf(":")==-1)r=r+":"+r}if(t.f!=null)a=t.f;else if(t.t=="z")continue;else if(t.t=="n"&&t.v!=null)a=""+t.v;else if(t.t=="b")a=t.v?"TRUE":"FALSE";else if(t.w!==undefined)a="'"+t.w;else if(t.v===undefined)continue;else if(t.t=="s")a="'"+t.v;else a=""+t.v;o[o.length]=r+"="+a}}return o}function sk(e,r,t){var a=t||{};var n=e?Array.isArray(e):a.dense;if(g!=null&&n==null)n=g;var i=+!a.skipHeader;var s=e||(n?[]:{});var f=0,o=0;if(s&&a.origin!=null){if(typeof a.origin=="number")f=a.origin;else{var l=typeof a.origin=="string"?La(a.origin):a.origin;f=l.r;o=l.c}}var c={s:{c:0,r:0},e:{c:o,r:f+r.length-1+i}};if(s["!ref"]){var h=za(s["!ref"]);c.e.c=Math.max(c.e.c,h.e.c);c.e.r=Math.max(c.e.r,h.e.r);if(f==-1){f=h.e.r+1;c.e.r=f+r.length-1+i}}else{if(f==-1){f=0;c.e.r=r.length-1+i}}var u=a.header||[],d=0;var p=[];r.forEach(function(e,r){if(n&&!s[f+r+i])s[f+r+i]=[];if(n)p=s[f+r+i];sr(e).forEach(function(t){if((d=u.indexOf(t))==-1)u[d=u.length]=t;var l=e[t];var c="z";var h="";var v=n?"":Ma({c:o+d,r:f+r+i});var m=n?p[o+d]:s[v];if(l&&typeof l==="object"&&!(l instanceof Date)){s[v]=l}else{if(typeof l=="number")c="n";else if(typeof l=="boolean")c="b";else if(typeof l=="string")c="s";else if(l instanceof Date){c="d";if(!a.cellDates){c="n";l=ur(l)}h=m!=null&&m.z&&Me(m.z)?m.z:a.dateNF||Z[14]}else if(l===null&&a.nullError){c="e";l=0}if(!m){if(!n)s[v]=m={t:c,v:l};else p[o+d]=m={t:c,v:l}}else{m.t=c;m.v=l;delete m.w;delete m.R;if(h)m.z=h}if(h)m.z=h}})});c.e.c=Math.max(c.e.c,o+u.length-1);var v=xa(f);if(n&&!s[f])s[f]=[];if(i)for(d=0;d=0&&e.SheetNames.length>r)return r;throw new Error("Cannot find sheet # "+r)}else if(typeof r=="string"){var t=e.SheetNames.indexOf(r);if(t>-1)return t;throw new Error("Cannot find sheet name |"+r+"|")}else throw new Error("Cannot find sheet |"+r+"|")}function ck(){return{SheetNames:[],Sheets:{}}}function hk(e,r,t,a){var n=1;if(!t)for(;n<=65535;++n,t=undefined)if(e.SheetNames.indexOf(t="Sheet"+n)==-1)break;if(!t||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(t)>=0){var i=t.match(/(^.*?)(\d+)$/);n=i&&+i[2]||0;var s=i&&i[1]||t;for(++n;n<=65535;++n)if(e.SheetNames.indexOf(t=s+n)==-1)break}mm(t);if(e.SheetNames.indexOf(t)>=0)throw new Error("Worksheet with name |"+t+"| already exists!");e.SheetNames.push(t);e.Sheets[t]=r;return t}function uk(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=lk(e,r);if(!e.Workbook.Sheets[a])e.Workbook.Sheets[a]={};switch(t){case 0:;case 1:;case 2:break;default:throw new Error("Bad sheet visibility setting "+t);}e.Workbook.Sheets[a].Hidden=t}function dk(e,r){e.z=r;return e}function pk(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function vk(e,r,t){return pk(e,"#"+r,t)}function mk(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function gk(e,r,t,a){var n=typeof r!="string"?r:za(r);var i=typeof r=="string"?r:Ba(r);for(var s=n.s.r;s<=n.e.r;++s)for(var f=n.s.c;f<=n.e.c;++f){var o=ok(e,s,f);o.t="n";o.F=i;delete o.v;if(s==n.s.r&&f==n.s.c){o.f=t;if(a)o.D=true}}var l=Ua(e["!ref"]);if(l.s.r>n.s.r)l.s.r=n.s.r;if(l.s.c>n.s.c)l.s.c=n.s.c;if(l.e.rs.e.r){if(!o){o=true;t.push(""+i)}return t.push(null)}while(f<=s.e.r){t.push(rb(e,s,f,a));++f;break}};return t}function Ek(e,r){var t=wk({objectMode:true});if(e==null||e["!ref"]==null){t.push(null);return t}var a={t:"n",v:0},n=0,i=1,s=[],f=0,o="";var l={s:{r:0,c:0},e:{r:0,c:0}};var c=r||{};var h=c.range!=null?c.range:e["!ref"];if(c.header===1)n=1;else if(c.header==="A")n=2;else if(Array.isArray(c.header))n=3;switch(typeof h){case"string":l=za(h);break;case"number":l=za(e["!ref"]);l.s.r=h;break;default:l=h;}if(n>0)i=0;var u=xa(l.s.r);var d=[];var p=0;var v=Array.isArray(e);var m=l.s.r,g=0;var b={};if(v&&!e[m])e[m]=[];var w=c.skipHidden&&e["!cols"]||[];var k=c.skipHidden&&e["!rows"]||[];for(g=l.s.c;g<=l.e.c;++g){if((w[g]||{}).hidden)continue;d[g]=Ia(g);a=v?e[m][g]:e[d[g]+u];switch(n){case 1:s[g]=g-l.s.c;break;case 2:s[g]=d[g];break;case 3:s[g]=c.header[g-l.s.c];break;default:if(a==null)a={w:"__EMPTY",t:"s"};o=f=Ga(a,null,c);p=b[f]||0;if(!p)b[f]=1;else{do{o=f+"_"+p++}while(b[o]);b[f]=p;b[o]=1}s[g]=o;}}m=l.s.r+i;t._read=function(){while(m<=l.e.r){if((k[m-1]||{}).hidden)continue;var r=Qw(e,l,m,d,n,s,v,c);++m;if(r.isempty===false||(n===1?c.blankrows!==false:!!c.blankrows)){t.push(r.row);return}}return t.push(null)};return t}var yk={to_json:Ek,to_html:Tk,to_csv:Ak,set_readable:kk};if(typeof Ng!=="undefined")e.parse_xlscfb=Ng;e.parse_zip=yw;e.read=Lw;e.readFile=Mw;e.readFileSync=Mw;e.write=Yw;e.writeFile=Zw;e.writeFileSync=Zw;e.writeFileAsync=qw;e.utils=bk;e.writeXLSX=Xw;e.writeFileXLSX=Jw;e.SSF=je;if(typeof yk!=="undefined")e.stream=yk;if(typeof er!=="undefined")e.CFB=er;if(typeof require!=="undefined"){var Ck=undefined;if((Ck||{}).Readable)kk(Ck.Readable);try{rr=undefined}catch(Sk){}}}if(typeof exports!=="undefined")make_xlsx_lib(exports);else if(typeof module!=="undefined"&&module.exports)make_xlsx_lib(module.exports);else if(typeof define==="function"&&define.amd)define("xlsx",function(){if(!XLSX.version)make_xlsx_lib(XLSX);return XLSX});else make_xlsx_lib(XLSX);if(typeof window!=="undefined"&&!window.XLSX)try{window.XLSX=XLSX}catch(e){} +r[t[166][a]]=42496+a;e[42496+a]=t[166][a]}t[167]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ���������������абвгдеёжзийклмнопрстуфхцчшщъыьэюя��������������".split("");for(a=0;a!=t[167].length;++a)if(t[167][a].charCodeAt(0)!==65533){r[t[167][a]]=42752+a;e[42752+a]=t[167][a]}t[168]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������āáǎàēéěèīíǐìōóǒòūúǔùǖǘǚǜüê����������ㄅㄆㄇㄈㄉㄊㄋㄌㄍㄎㄏㄐㄑㄒㄓㄔㄕㄖㄗㄘㄙㄚㄛㄜㄝㄞㄟㄠㄡㄢㄣㄤㄥㄦㄧㄨㄩ����������������������".split("");for(a=0;a!=t[168].length;++a)if(t[168][a].charCodeAt(0)!==65533){r[t[168][a]]=43008+a;e[43008+a]=t[168][a]}t[169]="��������������������������������������������������������������������������������������������������������������������������������������������������������������������─━│┃┄┅┆┇┈┉┊┋┌┍┎┏┐┑┒┓└┕┖┗┘┙┚┛├┝┞┟┠┡┢┣┤┥┦┧┨┩┪┫┬┭┮┯┰┱┲┳┴┵┶┷┸┹┺┻┼┽┾┿╀╁╂╃╄╅╆╇╈╉╊╋����������������".split("");for(a=0;a!=t[169].length;++a)if(t[169][a].charCodeAt(0)!==65533){r[t[169][a]]=43264+a;e[43264+a]=t[169][a]}t[176]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������啊阿埃挨哎唉哀皑癌蔼矮艾碍爱隘鞍氨安俺按暗岸胺案肮昂盎凹敖熬翱袄傲奥懊澳芭捌扒叭吧笆八疤巴拔跋靶把耙坝霸罢爸白柏百摆佰败拜稗斑班搬扳般颁板版扮拌伴瓣半办绊邦帮梆榜膀绑棒磅蚌镑傍谤苞胞包褒剥�".split("");for(a=0;a!=t[176].length;++a)if(t[176][a].charCodeAt(0)!==65533){r[t[176][a]]=45056+a;e[45056+a]=t[176][a]}t[177]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������薄雹保堡饱宝抱报暴豹鲍爆杯碑悲卑北辈背贝钡倍狈备惫焙被奔苯本笨崩绷甭泵蹦迸逼鼻比鄙笔彼碧蓖蔽毕毙毖币庇痹闭敝弊必辟壁臂避陛鞭边编贬扁便变卞辨辩辫遍标彪膘表鳖憋别瘪彬斌濒滨宾摈兵冰柄丙秉饼炳�".split("");for(a=0;a!=t[177].length;++a)if(t[177][a].charCodeAt(0)!==65533){r[t[177][a]]=45312+a;e[45312+a]=t[177][a]}t[178]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������病并玻菠播拨钵波博勃搏铂箔伯帛舶脖膊渤泊驳捕卜哺补埠不布步簿部怖擦猜裁材才财睬踩采彩菜蔡餐参蚕残惭惨灿苍舱仓沧藏操糙槽曹草厕策侧册测层蹭插叉茬茶查碴搽察岔差诧拆柴豺搀掺蝉馋谗缠铲产阐颤昌猖�".split("");for(a=0;a!=t[178].length;++a)if(t[178][a].charCodeAt(0)!==65533){r[t[178][a]]=45568+a;e[45568+a]=t[178][a]}t[179]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������场尝常长偿肠厂敞畅唱倡超抄钞朝嘲潮巢吵炒车扯撤掣彻澈郴臣辰尘晨忱沉陈趁衬撑称城橙成呈乘程惩澄诚承逞骋秤吃痴持匙池迟弛驰耻齿侈尺赤翅斥炽充冲虫崇宠抽酬畴踌稠愁筹仇绸瞅丑臭初出橱厨躇锄雏滁除楚�".split("");for(a=0;a!=t[179].length;++a)if(t[179][a].charCodeAt(0)!==65533){r[t[179][a]]=45824+a;e[45824+a]=t[179][a]}t[180]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������础储矗搐触处揣川穿椽传船喘串疮窗幢床闯创吹炊捶锤垂春椿醇唇淳纯蠢戳绰疵茨磁雌辞慈瓷词此刺赐次聪葱囱匆从丛凑粗醋簇促蹿篡窜摧崔催脆瘁粹淬翠村存寸磋撮搓措挫错搭达答瘩打大呆歹傣戴带殆代贷袋待逮�".split("");for(a=0;a!=t[180].length;++a)if(t[180][a].charCodeAt(0)!==65533){r[t[180][a]]=46080+a;e[46080+a]=t[180][a]}t[181]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������怠耽担丹单郸掸胆旦氮但惮淡诞弹蛋当挡党荡档刀捣蹈倒岛祷导到稻悼道盗德得的蹬灯登等瞪凳邓堤低滴迪敌笛狄涤翟嫡抵底地蒂第帝弟递缔颠掂滇碘点典靛垫电佃甸店惦奠淀殿碉叼雕凋刁掉吊钓调跌爹碟蝶迭谍叠�".split("");for(a=0;a!=t[181].length;++a)if(t[181][a].charCodeAt(0)!==65533){r[t[181][a]]=46336+a;e[46336+a]=t[181][a]}t[182]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������丁盯叮钉顶鼎锭定订丢东冬董懂动栋侗恫冻洞兜抖斗陡豆逗痘都督毒犊独读堵睹赌杜镀肚度渡妒端短锻段断缎堆兑队对墩吨蹲敦顿囤钝盾遁掇哆多夺垛躲朵跺舵剁惰堕蛾峨鹅俄额讹娥恶厄扼遏鄂饿恩而儿耳尔饵洱二�".split("");for(a=0;a!=t[182].length;++a)if(t[182][a].charCodeAt(0)!==65533){r[t[182][a]]=46592+a;e[46592+a]=t[182][a]}t[183]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������贰发罚筏伐乏阀法珐藩帆番翻樊矾钒繁凡烦反返范贩犯饭泛坊芳方肪房防妨仿访纺放菲非啡飞肥匪诽吠肺废沸费芬酚吩氛分纷坟焚汾粉奋份忿愤粪丰封枫蜂峰锋风疯烽逢冯缝讽奉凤佛否夫敷肤孵扶拂辐幅氟符伏俘服�".split("");for(a=0;a!=t[183].length;++a)if(t[183][a].charCodeAt(0)!==65533){r[t[183][a]]=46848+a;e[46848+a]=t[183][a]}t[184]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������浮涪福袱弗甫抚辅俯釜斧脯腑府腐赴副覆赋复傅付阜父腹负富讣附妇缚咐噶嘎该改概钙盖溉干甘杆柑竿肝赶感秆敢赣冈刚钢缸肛纲岗港杠篙皋高膏羔糕搞镐稿告哥歌搁戈鸽胳疙割革葛格蛤阁隔铬个各给根跟耕更庚羹�".split("");for(a=0;a!=t[184].length;++a)if(t[184][a].charCodeAt(0)!==65533){r[t[184][a]]=47104+a;e[47104+a]=t[184][a]}t[185]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������埂耿梗工攻功恭龚供躬公宫弓巩汞拱贡共钩勾沟苟狗垢构购够辜菇咕箍估沽孤姑鼓古蛊骨谷股故顾固雇刮瓜剐寡挂褂乖拐怪棺关官冠观管馆罐惯灌贯光广逛瑰规圭硅归龟闺轨鬼诡癸桂柜跪贵刽辊滚棍锅郭国果裹过哈�".split("");for(a=0;a!=t[185].length;++a)if(t[185][a].charCodeAt(0)!==65533){r[t[185][a]]=47360+a;e[47360+a]=t[185][a]}t[186]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������骸孩海氦亥害骇酣憨邯韩含涵寒函喊罕翰撼捍旱憾悍焊汗汉夯杭航壕嚎豪毫郝好耗号浩呵喝荷菏核禾和何合盒貉阂河涸赫褐鹤贺嘿黑痕很狠恨哼亨横衡恒轰哄烘虹鸿洪宏弘红喉侯猴吼厚候后呼乎忽瑚壶葫胡蝴狐糊湖�".split("");for(a=0;a!=t[186].length;++a)if(t[186][a].charCodeAt(0)!==65533){r[t[186][a]]=47616+a;e[47616+a]=t[186][a]}t[187]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������弧虎唬护互沪户花哗华猾滑画划化话槐徊怀淮坏欢环桓还缓换患唤痪豢焕涣宦幻荒慌黄磺蝗簧皇凰惶煌晃幌恍谎灰挥辉徽恢蛔回毁悔慧卉惠晦贿秽会烩汇讳诲绘荤昏婚魂浑混豁活伙火获或惑霍货祸击圾基机畸稽积箕�".split("");for(a=0;a!=t[187].length;++a)if(t[187][a].charCodeAt(0)!==65533){r[t[187][a]]=47872+a;e[47872+a]=t[187][a]}t[188]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������肌饥迹激讥鸡姬绩缉吉极棘辑籍集及急疾汲即嫉级挤几脊己蓟技冀季伎祭剂悸济寄寂计记既忌际妓继纪嘉枷夹佳家加荚颊贾甲钾假稼价架驾嫁歼监坚尖笺间煎兼肩艰奸缄茧检柬碱硷拣捡简俭剪减荐槛鉴践贱见键箭件�".split("");for(a=0;a!=t[188].length;++a)if(t[188][a].charCodeAt(0)!==65533){r[t[188][a]]=48128+a;e[48128+a]=t[188][a]}t[189]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������健舰剑饯渐溅涧建僵姜将浆江疆蒋桨奖讲匠酱降蕉椒礁焦胶交郊浇骄娇嚼搅铰矫侥脚狡角饺缴绞剿教酵轿较叫窖揭接皆秸街阶截劫节桔杰捷睫竭洁结解姐戒藉芥界借介疥诫届巾筋斤金今津襟紧锦仅谨进靳晋禁近烬浸�".split("");for(a=0;a!=t[189].length;++a)if(t[189][a].charCodeAt(0)!==65533){r[t[189][a]]=48384+a;e[48384+a]=t[189][a]}t[190]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������尽劲荆兢茎睛晶鲸京惊精粳经井警景颈静境敬镜径痉靖竟竞净炯窘揪究纠玖韭久灸九酒厩救旧臼舅咎就疚鞠拘狙疽居驹菊局咀矩举沮聚拒据巨具距踞锯俱句惧炬剧捐鹃娟倦眷卷绢撅攫抉掘倔爵觉决诀绝均菌钧军君峻�".split("");for(a=0;a!=t[190].length;++a)if(t[190][a].charCodeAt(0)!==65533){r[t[190][a]]=48640+a;e[48640+a]=t[190][a]}t[191]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������俊竣浚郡骏喀咖卡咯开揩楷凯慨刊堪勘坎砍看康慷糠扛抗亢炕考拷烤靠坷苛柯棵磕颗科壳咳可渴克刻客课肯啃垦恳坑吭空恐孔控抠口扣寇枯哭窟苦酷库裤夸垮挎跨胯块筷侩快宽款匡筐狂框矿眶旷况亏盔岿窥葵奎魁傀�".split("");for(a=0;a!=t[191].length;++a)if(t[191][a].charCodeAt(0)!==65533){r[t[191][a]]=48896+a;e[48896+a]=t[191][a]}t[192]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������馈愧溃坤昆捆困括扩廓阔垃拉喇蜡腊辣啦莱来赖蓝婪栏拦篮阑兰澜谰揽览懒缆烂滥琅榔狼廊郎朗浪捞劳牢老佬姥酪烙涝勒乐雷镭蕾磊累儡垒擂肋类泪棱楞冷厘梨犁黎篱狸离漓理李里鲤礼莉荔吏栗丽厉励砾历利傈例俐�".split("");for(a=0;a!=t[192].length;++a)if(t[192][a].charCodeAt(0)!==65533){r[t[192][a]]=49152+a;e[49152+a]=t[192][a]}t[193]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������痢立粒沥隶力璃哩俩联莲连镰廉怜涟帘敛脸链恋炼练粮凉梁粱良两辆量晾亮谅撩聊僚疗燎寥辽潦了撂镣廖料列裂烈劣猎琳林磷霖临邻鳞淋凛赁吝拎玲菱零龄铃伶羚凌灵陵岭领另令溜琉榴硫馏留刘瘤流柳六龙聋咙笼窿�".split("");for(a=0;a!=t[193].length;++a)if(t[193][a].charCodeAt(0)!==65533){r[t[193][a]]=49408+a;e[49408+a]=t[193][a]}t[194]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������隆垄拢陇楼娄搂篓漏陋芦卢颅庐炉掳卤虏鲁麓碌露路赂鹿潞禄录陆戮驴吕铝侣旅履屡缕虑氯律率滤绿峦挛孪滦卵乱掠略抡轮伦仑沦纶论萝螺罗逻锣箩骡裸落洛骆络妈麻玛码蚂马骂嘛吗埋买麦卖迈脉瞒馒蛮满蔓曼慢漫�".split("");for(a=0;a!=t[194].length;++a)if(t[194][a].charCodeAt(0)!==65533){r[t[194][a]]=49664+a;e[49664+a]=t[194][a]}t[195]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������谩芒茫盲氓忙莽猫茅锚毛矛铆卯茂冒帽貌贸么玫枚梅酶霉煤没眉媒镁每美昧寐妹媚门闷们萌蒙檬盟锰猛梦孟眯醚靡糜迷谜弥米秘觅泌蜜密幂棉眠绵冕免勉娩缅面苗描瞄藐秒渺庙妙蔑灭民抿皿敏悯闽明螟鸣铭名命谬摸�".split("");for(a=0;a!=t[195].length;++a)if(t[195][a].charCodeAt(0)!==65533){r[t[195][a]]=49920+a;e[49920+a]=t[195][a]}t[196]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������摹蘑模膜磨摩魔抹末莫墨默沫漠寞陌谋牟某拇牡亩姆母墓暮幕募慕木目睦牧穆拿哪呐钠那娜纳氖乃奶耐奈南男难囊挠脑恼闹淖呢馁内嫩能妮霓倪泥尼拟你匿腻逆溺蔫拈年碾撵捻念娘酿鸟尿捏聂孽啮镊镍涅您柠狞凝宁�".split("");for(a=0;a!=t[196].length;++a)if(t[196][a].charCodeAt(0)!==65533){r[t[196][a]]=50176+a;e[50176+a]=t[196][a]}t[197]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������拧泞牛扭钮纽脓浓农弄奴努怒女暖虐疟挪懦糯诺哦欧鸥殴藕呕偶沤啪趴爬帕怕琶拍排牌徘湃派攀潘盘磐盼畔判叛乓庞旁耪胖抛咆刨炮袍跑泡呸胚培裴赔陪配佩沛喷盆砰抨烹澎彭蓬棚硼篷膨朋鹏捧碰坯砒霹批披劈琵毗�".split("");for(a=0;a!=t[197].length;++a)if(t[197][a].charCodeAt(0)!==65533){r[t[197][a]]=50432+a;e[50432+a]=t[197][a]}t[198]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������啤脾疲皮匹痞僻屁譬篇偏片骗飘漂瓢票撇瞥拼频贫品聘乒坪苹萍平凭瓶评屏坡泼颇婆破魄迫粕剖扑铺仆莆葡菩蒲埔朴圃普浦谱曝瀑期欺栖戚妻七凄漆柒沏其棋奇歧畦崎脐齐旗祈祁骑起岂乞企启契砌器气迄弃汽泣讫掐�".split("");for(a=0;a!=t[198].length;++a)if(t[198][a].charCodeAt(0)!==65533){r[t[198][a]]=50688+a;e[50688+a]=t[198][a]}t[199]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������恰洽牵扦钎铅千迁签仟谦乾黔钱钳前潜遣浅谴堑嵌欠歉枪呛腔羌墙蔷强抢橇锹敲悄桥瞧乔侨巧鞘撬翘峭俏窍切茄且怯窃钦侵亲秦琴勤芹擒禽寝沁青轻氢倾卿清擎晴氰情顷请庆琼穷秋丘邱球求囚酋泅趋区蛆曲躯屈驱渠�".split("");for(a=0;a!=t[199].length;++a)if(t[199][a].charCodeAt(0)!==65533){r[t[199][a]]=50944+a;e[50944+a]=t[199][a]}t[200]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������取娶龋趣去圈颧权醛泉全痊拳犬券劝缺炔瘸却鹊榷确雀裙群然燃冉染瓤壤攘嚷让饶扰绕惹热壬仁人忍韧任认刃妊纫扔仍日戎茸蓉荣融熔溶容绒冗揉柔肉茹蠕儒孺如辱乳汝入褥软阮蕊瑞锐闰润若弱撒洒萨腮鳃塞赛三叁�".split("");for(a=0;a!=t[200].length;++a)if(t[200][a].charCodeAt(0)!==65533){r[t[200][a]]=51200+a;e[51200+a]=t[200][a]}t[201]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������伞散桑嗓丧搔骚扫嫂瑟色涩森僧莎砂杀刹沙纱傻啥煞筛晒珊苫杉山删煽衫闪陕擅赡膳善汕扇缮墒伤商赏晌上尚裳梢捎稍烧芍勺韶少哨邵绍奢赊蛇舌舍赦摄射慑涉社设砷申呻伸身深娠绅神沈审婶甚肾慎渗声生甥牲升绳�".split("");for(a=0;a!=t[201].length;++a)if(t[201][a].charCodeAt(0)!==65533){r[t[201][a]]=51456+a;e[51456+a]=t[201][a]}t[202]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������省盛剩胜圣师失狮施湿诗尸虱十石拾时什食蚀实识史矢使屎驶始式示士世柿事拭誓逝势是嗜噬适仕侍释饰氏市恃室视试收手首守寿授售受瘦兽蔬枢梳殊抒输叔舒淑疏书赎孰熟薯暑曙署蜀黍鼠属术述树束戍竖墅庶数漱�".split("");for(a=0;a!=t[202].length;++a)if(t[202][a].charCodeAt(0)!==65533){r[t[202][a]]=51712+a;e[51712+a]=t[202][a]}t[203]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������恕刷耍摔衰甩帅栓拴霜双爽谁水睡税吮瞬顺舜说硕朔烁斯撕嘶思私司丝死肆寺嗣四伺似饲巳松耸怂颂送宋讼诵搜艘擞嗽苏酥俗素速粟僳塑溯宿诉肃酸蒜算虽隋随绥髓碎岁穗遂隧祟孙损笋蓑梭唆缩琐索锁所塌他它她塔�".split("");for(a=0;a!=t[203].length;++a)if(t[203][a].charCodeAt(0)!==65533){r[t[203][a]]=51968+a;e[51968+a]=t[203][a]}t[204]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������獭挞蹋踏胎苔抬台泰酞太态汰坍摊贪瘫滩坛檀痰潭谭谈坦毯袒碳探叹炭汤塘搪堂棠膛唐糖倘躺淌趟烫掏涛滔绦萄桃逃淘陶讨套特藤腾疼誊梯剔踢锑提题蹄啼体替嚏惕涕剃屉天添填田甜恬舔腆挑条迢眺跳贴铁帖厅听烃�".split("");for(a=0;a!=t[204].length;++a)if(t[204][a].charCodeAt(0)!==65533){r[t[204][a]]=52224+a;e[52224+a]=t[204][a]}t[205]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������汀廷停亭庭挺艇通桐酮瞳同铜彤童桶捅筒统痛偷投头透凸秃突图徒途涂屠土吐兔湍团推颓腿蜕褪退吞屯臀拖托脱鸵陀驮驼椭妥拓唾挖哇蛙洼娃瓦袜歪外豌弯湾玩顽丸烷完碗挽晚皖惋宛婉万腕汪王亡枉网往旺望忘妄威�".split("");for(a=0;a!=t[205].length;++a)if(t[205][a].charCodeAt(0)!==65533){r[t[205][a]]=52480+a;e[52480+a]=t[205][a]}t[206]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������巍微危韦违桅围唯惟为潍维苇萎委伟伪尾纬未蔚味畏胃喂魏位渭谓尉慰卫瘟温蚊文闻纹吻稳紊问嗡翁瓮挝蜗涡窝我斡卧握沃巫呜钨乌污诬屋无芜梧吾吴毋武五捂午舞伍侮坞戊雾晤物勿务悟误昔熙析西硒矽晰嘻吸锡牺�".split("");for(a=0;a!=t[206].length;++a)if(t[206][a].charCodeAt(0)!==65533){r[t[206][a]]=52736+a;e[52736+a]=t[206][a]}t[207]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������稀息希悉膝夕惜熄烯溪汐犀檄袭席习媳喜铣洗系隙戏细瞎虾匣霞辖暇峡侠狭下厦夏吓掀锨先仙鲜纤咸贤衔舷闲涎弦嫌显险现献县腺馅羡宪陷限线相厢镶香箱襄湘乡翔祥详想响享项巷橡像向象萧硝霄削哮嚣销消宵淆晓�".split("");for(a=0;a!=t[207].length;++a)if(t[207][a].charCodeAt(0)!==65533){r[t[207][a]]=52992+a;e[52992+a]=t[207][a]}t[208]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������小孝校肖啸笑效楔些歇蝎鞋协挟携邪斜胁谐写械卸蟹懈泄泻谢屑薪芯锌欣辛新忻心信衅星腥猩惺兴刑型形邢行醒幸杏性姓兄凶胸匈汹雄熊休修羞朽嗅锈秀袖绣墟戌需虚嘘须徐许蓄酗叙旭序畜恤絮婿绪续轩喧宣悬旋玄�".split("");for(a=0;a!=t[208].length;++a)if(t[208][a].charCodeAt(0)!==65533){r[t[208][a]]=53248+a;e[53248+a]=t[208][a]}t[209]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������选癣眩绚靴薛学穴雪血勋熏循旬询寻驯巡殉汛训讯逊迅压押鸦鸭呀丫芽牙蚜崖衙涯雅哑亚讶焉咽阉烟淹盐严研蜒岩延言颜阎炎沿奄掩眼衍演艳堰燕厌砚雁唁彦焰宴谚验殃央鸯秧杨扬佯疡羊洋阳氧仰痒养样漾邀腰妖瑶�".split("");for(a=0;a!=t[209].length;++a)if(t[209][a].charCodeAt(0)!==65533){r[t[209][a]]=53504+a;e[53504+a]=t[209][a]}t[210]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������摇尧遥窑谣姚咬舀药要耀椰噎耶爷野冶也页掖业叶曳腋夜液一壹医揖铱依伊衣颐夷遗移仪胰疑沂宜姨彝椅蚁倚已乙矣以艺抑易邑屹亿役臆逸肄疫亦裔意毅忆义益溢诣议谊译异翼翌绎茵荫因殷音阴姻吟银淫寅饮尹引隐�".split("");for(a=0;a!=t[210].length;++a)if(t[210][a].charCodeAt(0)!==65533){r[t[210][a]]=53760+a;e[53760+a]=t[210][a]}t[211]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������印英樱婴鹰应缨莹萤营荧蝇迎赢盈影颖硬映哟拥佣臃痈庸雍踊蛹咏泳涌永恿勇用幽优悠忧尤由邮铀犹油游酉有友右佑釉诱又幼迂淤于盂榆虞愚舆余俞逾鱼愉渝渔隅予娱雨与屿禹宇语羽玉域芋郁吁遇喻峪御愈欲狱育誉�".split("");for(a=0;a!=t[211].length;++a)if(t[211][a].charCodeAt(0)!==65533){r[t[211][a]]=54016+a;e[54016+a]=t[211][a]}t[212]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������浴寓裕预豫驭鸳渊冤元垣袁原援辕园员圆猿源缘远苑愿怨院曰约越跃钥岳粤月悦阅耘云郧匀陨允运蕴酝晕韵孕匝砸杂栽哉灾宰载再在咱攒暂赞赃脏葬遭糟凿藻枣早澡蚤躁噪造皂灶燥责择则泽贼怎增憎曾赠扎喳渣札轧�".split("");for(a=0;a!=t[212].length;++a)if(t[212][a].charCodeAt(0)!==65533){r[t[212][a]]=54272+a;e[54272+a]=t[212][a]}t[213]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������铡闸眨栅榨咋乍炸诈摘斋宅窄债寨瞻毡詹粘沾盏斩辗崭展蘸栈占战站湛绽樟章彰漳张掌涨杖丈帐账仗胀瘴障招昭找沼赵照罩兆肇召遮折哲蛰辙者锗蔗这浙珍斟真甄砧臻贞针侦枕疹诊震振镇阵蒸挣睁征狰争怔整拯正政�".split("");for(a=0;a!=t[213].length;++a)if(t[213][a].charCodeAt(0)!==65533){r[t[213][a]]=54528+a;e[54528+a]=t[213][a]}t[214]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������帧症郑证芝枝支吱蜘知肢脂汁之织职直植殖执值侄址指止趾只旨纸志挚掷至致置帜峙制智秩稚质炙痔滞治窒中盅忠钟衷终种肿重仲众舟周州洲诌粥轴肘帚咒皱宙昼骤珠株蛛朱猪诸诛逐竹烛煮拄瞩嘱主著柱助蛀贮铸筑�".split("");for(a=0;a!=t[214].length;++a)if(t[214][a].charCodeAt(0)!==65533){r[t[214][a]]=54784+a;e[54784+a]=t[214][a]}t[215]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������住注祝驻抓爪拽专砖转撰赚篆桩庄装妆撞壮状椎锥追赘坠缀谆准捉拙卓桌琢茁酌啄着灼浊兹咨资姿滋淄孜紫仔籽滓子自渍字鬃棕踪宗综总纵邹走奏揍租足卒族祖诅阻组钻纂嘴醉最罪尊遵昨左佐柞做作坐座������".split("");for(a=0;a!=t[215].length;++a)if(t[215][a].charCodeAt(0)!==65533){r[t[215][a]]=55040+a;e[55040+a]=t[215][a]}t[216]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������亍丌兀丐廿卅丕亘丞鬲孬噩丨禺丿匕乇夭爻卮氐囟胤馗毓睾鼗丶亟鼐乜乩亓芈孛啬嘏仄厍厝厣厥厮靥赝匚叵匦匮匾赜卦卣刂刈刎刭刳刿剀剌剞剡剜蒯剽劂劁劐劓冂罔亻仃仉仂仨仡仫仞伛仳伢佤仵伥伧伉伫佞佧攸佚佝�".split("");for(a=0;a!=t[216].length;++a)if(t[216][a].charCodeAt(0)!==65533){r[t[216][a]]=55296+a;e[55296+a]=t[216][a]}t[217]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������佟佗伲伽佶佴侑侉侃侏佾佻侪佼侬侔俦俨俪俅俚俣俜俑俟俸倩偌俳倬倏倮倭俾倜倌倥倨偾偃偕偈偎偬偻傥傧傩傺僖儆僭僬僦僮儇儋仝氽佘佥俎龠汆籴兮巽黉馘冁夔勹匍訇匐凫夙兕亠兖亳衮袤亵脔裒禀嬴蠃羸冫冱冽冼�".split("");for(a=0;a!=t[217].length;++a)if(t[217][a].charCodeAt(0)!==65533){r[t[217][a]]=55552+a;e[55552+a]=t[217][a]}t[218]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������凇冖冢冥讠讦讧讪讴讵讷诂诃诋诏诎诒诓诔诖诘诙诜诟诠诤诨诩诮诰诳诶诹诼诿谀谂谄谇谌谏谑谒谔谕谖谙谛谘谝谟谠谡谥谧谪谫谮谯谲谳谵谶卩卺阝阢阡阱阪阽阼陂陉陔陟陧陬陲陴隈隍隗隰邗邛邝邙邬邡邴邳邶邺�".split("");for(a=0;a!=t[218].length;++a)if(t[218][a].charCodeAt(0)!==65533){r[t[218][a]]=55808+a;e[55808+a]=t[218][a]}t[219]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������邸邰郏郅邾郐郄郇郓郦郢郜郗郛郫郯郾鄄鄢鄞鄣鄱鄯鄹酃酆刍奂劢劬劭劾哿勐勖勰叟燮矍廴凵凼鬯厶弁畚巯坌垩垡塾墼壅壑圩圬圪圳圹圮圯坜圻坂坩垅坫垆坼坻坨坭坶坳垭垤垌垲埏垧垴垓垠埕埘埚埙埒垸埴埯埸埤埝�".split("");for(a=0;a!=t[219].length;++a)if(t[219][a].charCodeAt(0)!==65533){r[t[219][a]]=56064+a;e[56064+a]=t[219][a]}t[220]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������堋堍埽埭堀堞堙塄堠塥塬墁墉墚墀馨鼙懿艹艽艿芏芊芨芄芎芑芗芙芫芸芾芰苈苊苣芘芷芮苋苌苁芩芴芡芪芟苄苎芤苡茉苷苤茏茇苜苴苒苘茌苻苓茑茚茆茔茕苠苕茜荑荛荜茈莒茼茴茱莛荞茯荏荇荃荟荀茗荠茭茺茳荦荥�".split("");for(a=0;a!=t[220].length;++a)if(t[220][a].charCodeAt(0)!==65533){r[t[220][a]]=56320+a;e[56320+a]=t[220][a]}t[221]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������荨茛荩荬荪荭荮莰荸莳莴莠莪莓莜莅荼莶莩荽莸荻莘莞莨莺莼菁萁菥菘堇萘萋菝菽菖萜萸萑萆菔菟萏萃菸菹菪菅菀萦菰菡葜葑葚葙葳蒇蒈葺蒉葸萼葆葩葶蒌蒎萱葭蓁蓍蓐蓦蒽蓓蓊蒿蒺蓠蒡蒹蒴蒗蓥蓣蔌甍蔸蓰蔹蔟蔺�".split("");for(a=0;a!=t[221].length;++a)if(t[221][a].charCodeAt(0)!==65533){r[t[221][a]]=56576+a;e[56576+a]=t[221][a]}t[222]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������蕖蔻蓿蓼蕙蕈蕨蕤蕞蕺瞢蕃蕲蕻薤薨薇薏蕹薮薜薅薹薷薰藓藁藜藿蘧蘅蘩蘖蘼廾弈夼奁耷奕奚奘匏尢尥尬尴扌扪抟抻拊拚拗拮挢拶挹捋捃掭揶捱捺掎掴捭掬掊捩掮掼揲揸揠揿揄揞揎摒揆掾摅摁搋搛搠搌搦搡摞撄摭撖�".split("");for(a=0;a!=t[222].length;++a)if(t[222][a].charCodeAt(0)!==65533){r[t[222][a]]=56832+a;e[56832+a]=t[222][a]}t[223]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������摺撷撸撙撺擀擐擗擤擢攉攥攮弋忒甙弑卟叱叽叩叨叻吒吖吆呋呒呓呔呖呃吡呗呙吣吲咂咔呷呱呤咚咛咄呶呦咝哐咭哂咴哒咧咦哓哔呲咣哕咻咿哌哙哚哜咩咪咤哝哏哞唛哧唠哽唔哳唢唣唏唑唧唪啧喏喵啉啭啁啕唿啐唼�".split("");for(a=0;a!=t[223].length;++a)if(t[223][a].charCodeAt(0)!==65533){r[t[223][a]]=57088+a;e[57088+a]=t[223][a]}t[224]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������唷啖啵啶啷唳唰啜喋嗒喃喱喹喈喁喟啾嗖喑啻嗟喽喾喔喙嗪嗷嗉嘟嗑嗫嗬嗔嗦嗝嗄嗯嗥嗲嗳嗌嗍嗨嗵嗤辔嘞嘈嘌嘁嘤嘣嗾嘀嘧嘭噘嘹噗嘬噍噢噙噜噌噔嚆噤噱噫噻噼嚅嚓嚯囔囗囝囡囵囫囹囿圄圊圉圜帏帙帔帑帱帻帼�".split("");for(a=0;a!=t[224].length;++a)if(t[224][a].charCodeAt(0)!==65533){r[t[224][a]]=57344+a;e[57344+a]=t[224][a]}t[225]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������帷幄幔幛幞幡岌屺岍岐岖岈岘岙岑岚岜岵岢岽岬岫岱岣峁岷峄峒峤峋峥崂崃崧崦崮崤崞崆崛嵘崾崴崽嵬嵛嵯嵝嵫嵋嵊嵩嵴嶂嶙嶝豳嶷巅彳彷徂徇徉後徕徙徜徨徭徵徼衢彡犭犰犴犷犸狃狁狎狍狒狨狯狩狲狴狷猁狳猃狺�".split("");for(a=0;a!=t[225].length;++a)if(t[225][a].charCodeAt(0)!==65533){r[t[225][a]]=57600+a;e[57600+a]=t[225][a]}t[226]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������狻猗猓猡猊猞猝猕猢猹猥猬猸猱獐獍獗獠獬獯獾舛夥飧夤夂饣饧饨饩饪饫饬饴饷饽馀馄馇馊馍馐馑馓馔馕庀庑庋庖庥庠庹庵庾庳赓廒廑廛廨廪膺忄忉忖忏怃忮怄忡忤忾怅怆忪忭忸怙怵怦怛怏怍怩怫怊怿怡恸恹恻恺恂�".split("");for(a=0;a!=t[226].length;++a)if(t[226][a].charCodeAt(0)!==65533){r[t[226][a]]=57856+a;e[57856+a]=t[226][a]}t[227]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������恪恽悖悚悭悝悃悒悌悛惬悻悱惝惘惆惚悴愠愦愕愣惴愀愎愫慊慵憬憔憧憷懔懵忝隳闩闫闱闳闵闶闼闾阃阄阆阈阊阋阌阍阏阒阕阖阗阙阚丬爿戕氵汔汜汊沣沅沐沔沌汨汩汴汶沆沩泐泔沭泷泸泱泗沲泠泖泺泫泮沱泓泯泾�".split("");for(a=0;a!=t[227].length;++a)if(t[227][a].charCodeAt(0)!==65533){r[t[227][a]]=58112+a;e[58112+a]=t[227][a]}t[228]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������洹洧洌浃浈洇洄洙洎洫浍洮洵洚浏浒浔洳涑浯涞涠浞涓涔浜浠浼浣渚淇淅淞渎涿淠渑淦淝淙渖涫渌涮渫湮湎湫溲湟溆湓湔渲渥湄滟溱溘滠漭滢溥溧溽溻溷滗溴滏溏滂溟潢潆潇漤漕滹漯漶潋潴漪漉漩澉澍澌潸潲潼潺濑�".split("");for(a=0;a!=t[228].length;++a)if(t[228][a].charCodeAt(0)!==65533){r[t[228][a]]=58368+a;e[58368+a]=t[228][a]}t[229]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������濉澧澹澶濂濡濮濞濠濯瀚瀣瀛瀹瀵灏灞宀宄宕宓宥宸甯骞搴寤寮褰寰蹇謇辶迓迕迥迮迤迩迦迳迨逅逄逋逦逑逍逖逡逵逶逭逯遄遑遒遐遨遘遢遛暹遴遽邂邈邃邋彐彗彖彘尻咫屐屙孱屣屦羼弪弩弭艴弼鬻屮妁妃妍妩妪妣�".split("");for(a=0;a!=t[229].length;++a)if(t[229][a].charCodeAt(0)!==65533){r[t[229][a]]=58624+a;e[58624+a]=t[229][a]}t[230]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������妗姊妫妞妤姒妲妯姗妾娅娆姝娈姣姘姹娌娉娲娴娑娣娓婀婧婊婕娼婢婵胬媪媛婷婺媾嫫媲嫒嫔媸嫠嫣嫱嫖嫦嫘嫜嬉嬗嬖嬲嬷孀尕尜孚孥孳孑孓孢驵驷驸驺驿驽骀骁骅骈骊骐骒骓骖骘骛骜骝骟骠骢骣骥骧纟纡纣纥纨纩�".split("");for(a=0;a!=t[230].length;++a)if(t[230][a].charCodeAt(0)!==65533){r[t[230][a]]=58880+a;e[58880+a]=t[230][a]}t[231]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������纭纰纾绀绁绂绉绋绌绐绔绗绛绠绡绨绫绮绯绱绲缍绶绺绻绾缁缂缃缇缈缋缌缏缑缒缗缙缜缛缟缡缢缣缤缥缦缧缪缫缬缭缯缰缱缲缳缵幺畿巛甾邕玎玑玮玢玟珏珂珑玷玳珀珉珈珥珙顼琊珩珧珞玺珲琏琪瑛琦琥琨琰琮琬�".split("");for(a=0;a!=t[231].length;++a)if(t[231][a].charCodeAt(0)!==65533){r[t[231][a]]=59136+a;e[59136+a]=t[231][a]}t[232]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������琛琚瑁瑜瑗瑕瑙瑷瑭瑾璜璎璀璁璇璋璞璨璩璐璧瓒璺韪韫韬杌杓杞杈杩枥枇杪杳枘枧杵枨枞枭枋杷杼柰栉柘栊柩枰栌柙枵柚枳柝栀柃枸柢栎柁柽栲栳桠桡桎桢桄桤梃栝桕桦桁桧桀栾桊桉栩梵梏桴桷梓桫棂楮棼椟椠棹�".split("");for(a=0;a!=t[232].length;++a)if(t[232][a].charCodeAt(0)!==65533){r[t[232][a]]=59392+a;e[59392+a]=t[232][a]}t[233]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������椤棰椋椁楗棣椐楱椹楠楂楝榄楫榀榘楸椴槌榇榈槎榉楦楣楹榛榧榻榫榭槔榱槁槊槟榕槠榍槿樯槭樗樘橥槲橄樾檠橐橛樵檎橹樽樨橘橼檑檐檩檗檫猷獒殁殂殇殄殒殓殍殚殛殡殪轫轭轱轲轳轵轶轸轷轹轺轼轾辁辂辄辇辋�".split("");for(a=0;a!=t[233].length;++a)if(t[233][a].charCodeAt(0)!==65533){r[t[233][a]]=59648+a;e[59648+a]=t[233][a]}t[234]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������辍辎辏辘辚軎戋戗戛戟戢戡戥戤戬臧瓯瓴瓿甏甑甓攴旮旯旰昊昙杲昃昕昀炅曷昝昴昱昶昵耆晟晔晁晏晖晡晗晷暄暌暧暝暾曛曜曦曩贲贳贶贻贽赀赅赆赈赉赇赍赕赙觇觊觋觌觎觏觐觑牮犟牝牦牯牾牿犄犋犍犏犒挈挲掰�".split("");for(a=0;a!=t[234].length;++a)if(t[234][a].charCodeAt(0)!==65533){r[t[234][a]]=59904+a;e[59904+a]=t[234][a]}t[235]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������搿擘耄毪毳毽毵毹氅氇氆氍氕氘氙氚氡氩氤氪氲攵敕敫牍牒牖爰虢刖肟肜肓肼朊肽肱肫肭肴肷胧胨胩胪胛胂胄胙胍胗朐胝胫胱胴胭脍脎胲胼朕脒豚脶脞脬脘脲腈腌腓腴腙腚腱腠腩腼腽腭腧塍媵膈膂膑滕膣膪臌朦臊膻�".split("");for(a=0;a!=t[235].length;++a)if(t[235][a].charCodeAt(0)!==65533){r[t[235][a]]=60160+a;e[60160+a]=t[235][a]}t[236]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������臁膦欤欷欹歃歆歙飑飒飓飕飙飚殳彀毂觳斐齑斓於旆旄旃旌旎旒旖炀炜炖炝炻烀炷炫炱烨烊焐焓焖焯焱煳煜煨煅煲煊煸煺熘熳熵熨熠燠燔燧燹爝爨灬焘煦熹戾戽扃扈扉礻祀祆祉祛祜祓祚祢祗祠祯祧祺禅禊禚禧禳忑忐�".split("");for(a=0;a!=t[236].length;++a)if(t[236][a].charCodeAt(0)!==65533){r[t[236][a]]=60416+a;e[60416+a]=t[236][a]}t[237]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������怼恝恚恧恁恙恣悫愆愍慝憩憝懋懑戆肀聿沓泶淼矶矸砀砉砗砘砑斫砭砜砝砹砺砻砟砼砥砬砣砩硎硭硖硗砦硐硇硌硪碛碓碚碇碜碡碣碲碹碥磔磙磉磬磲礅磴礓礤礞礴龛黹黻黼盱眄眍盹眇眈眚眢眙眭眦眵眸睐睑睇睃睚睨�".split("");for(a=0;a!=t[237].length;++a)if(t[237][a].charCodeAt(0)!==65533){r[t[237][a]]=60672+a;e[60672+a]=t[237][a]}t[238]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������睢睥睿瞍睽瞀瞌瞑瞟瞠瞰瞵瞽町畀畎畋畈畛畲畹疃罘罡罟詈罨罴罱罹羁罾盍盥蠲钅钆钇钋钊钌钍钏钐钔钗钕钚钛钜钣钤钫钪钭钬钯钰钲钴钶钷钸钹钺钼钽钿铄铈铉铊铋铌铍铎铐铑铒铕铖铗铙铘铛铞铟铠铢铤铥铧铨铪�".split("");for(a=0;a!=t[238].length;++a)if(t[238][a].charCodeAt(0)!==65533){r[t[238][a]]=60928+a;e[60928+a]=t[238][a]}t[239]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������铩铫铮铯铳铴铵铷铹铼铽铿锃锂锆锇锉锊锍锎锏锒锓锔锕锖锘锛锝锞锟锢锪锫锩锬锱锲锴锶锷锸锼锾锿镂锵镄镅镆镉镌镎镏镒镓镔镖镗镘镙镛镞镟镝镡镢镤镥镦镧镨镩镪镫镬镯镱镲镳锺矧矬雉秕秭秣秫稆嵇稃稂稞稔�".split("");for(a=0;a!=t[239].length;++a)if(t[239][a].charCodeAt(0)!==65533){r[t[239][a]]=61184+a;e[61184+a]=t[239][a]}t[240]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������稹稷穑黏馥穰皈皎皓皙皤瓞瓠甬鸠鸢鸨鸩鸪鸫鸬鸲鸱鸶鸸鸷鸹鸺鸾鹁鹂鹄鹆鹇鹈鹉鹋鹌鹎鹑鹕鹗鹚鹛鹜鹞鹣鹦鹧鹨鹩鹪鹫鹬鹱鹭鹳疒疔疖疠疝疬疣疳疴疸痄疱疰痃痂痖痍痣痨痦痤痫痧瘃痱痼痿瘐瘀瘅瘌瘗瘊瘥瘘瘕瘙�".split("");for(a=0;a!=t[240].length;++a)if(t[240][a].charCodeAt(0)!==65533){r[t[240][a]]=61440+a;e[61440+a]=t[240][a]}t[241]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������瘛瘼瘢瘠癀瘭瘰瘿瘵癃瘾瘳癍癞癔癜癖癫癯翊竦穸穹窀窆窈窕窦窠窬窨窭窳衤衩衲衽衿袂袢裆袷袼裉裢裎裣裥裱褚裼裨裾裰褡褙褓褛褊褴褫褶襁襦襻疋胥皲皴矜耒耔耖耜耠耢耥耦耧耩耨耱耋耵聃聆聍聒聩聱覃顸颀颃�".split("");for(a=0;a!=t[241].length;++a)if(t[241][a].charCodeAt(0)!==65533){r[t[241][a]]=61696+a;e[61696+a]=t[241][a]}t[242]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������颉颌颍颏颔颚颛颞颟颡颢颥颦虍虔虬虮虿虺虼虻蚨蚍蚋蚬蚝蚧蚣蚪蚓蚩蚶蛄蚵蛎蚰蚺蚱蚯蛉蛏蚴蛩蛱蛲蛭蛳蛐蜓蛞蛴蛟蛘蛑蜃蜇蛸蜈蜊蜍蜉蜣蜻蜞蜥蜮蜚蜾蝈蜴蜱蜩蜷蜿螂蜢蝽蝾蝻蝠蝰蝌蝮螋蝓蝣蝼蝤蝙蝥螓螯螨蟒�".split("");for(a=0;a!=t[242].length;++a)if(t[242][a].charCodeAt(0)!==65533){r[t[242][a]]=61952+a;e[61952+a]=t[242][a]}t[243]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������蟆螈螅螭螗螃螫蟥螬螵螳蟋蟓螽蟑蟀蟊蟛蟪蟠蟮蠖蠓蟾蠊蠛蠡蠹蠼缶罂罄罅舐竺竽笈笃笄笕笊笫笏筇笸笪笙笮笱笠笥笤笳笾笞筘筚筅筵筌筝筠筮筻筢筲筱箐箦箧箸箬箝箨箅箪箜箢箫箴篑篁篌篝篚篥篦篪簌篾篼簏簖簋�".split("");for(a=0;a!=t[243].length;++a)if(t[243][a].charCodeAt(0)!==65533){r[t[243][a]]=62208+a;e[62208+a]=t[243][a]}t[244]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������簟簪簦簸籁籀臾舁舂舄臬衄舡舢舣舭舯舨舫舸舻舳舴舾艄艉艋艏艚艟艨衾袅袈裘裟襞羝羟羧羯羰羲籼敉粑粝粜粞粢粲粼粽糁糇糌糍糈糅糗糨艮暨羿翎翕翥翡翦翩翮翳糸絷綦綮繇纛麸麴赳趄趔趑趱赧赭豇豉酊酐酎酏酤�".split("");for(a=0;a!=t[244].length;++a)if(t[244][a].charCodeAt(0)!==65533){r[t[244][a]]=62464+a;e[62464+a]=t[244][a]}t[245]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������酢酡酰酩酯酽酾酲酴酹醌醅醐醍醑醢醣醪醭醮醯醵醴醺豕鹾趸跫踅蹙蹩趵趿趼趺跄跖跗跚跞跎跏跛跆跬跷跸跣跹跻跤踉跽踔踝踟踬踮踣踯踺蹀踹踵踽踱蹉蹁蹂蹑蹒蹊蹰蹶蹼蹯蹴躅躏躔躐躜躞豸貂貊貅貘貔斛觖觞觚觜�".split("");for(a=0;a!=t[245].length;++a)if(t[245][a].charCodeAt(0)!==65533){r[t[245][a]]=62720+a;e[62720+a]=t[245][a]}t[246]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������觥觫觯訾謦靓雩雳雯霆霁霈霏霎霪霭霰霾龀龃龅龆龇龈龉龊龌黾鼋鼍隹隼隽雎雒瞿雠銎銮鋈錾鍪鏊鎏鐾鑫鱿鲂鲅鲆鲇鲈稣鲋鲎鲐鲑鲒鲔鲕鲚鲛鲞鲟鲠鲡鲢鲣鲥鲦鲧鲨鲩鲫鲭鲮鲰鲱鲲鲳鲴鲵鲶鲷鲺鲻鲼鲽鳄鳅鳆鳇鳊鳋�".split("");for(a=0;a!=t[246].length;++a)if(t[246][a].charCodeAt(0)!==65533){r[t[246][a]]=62976+a;e[62976+a]=t[246][a]}t[247]="�����������������������������������������������������������������������������������������������������������������������������������������������������������������鳌鳍鳎鳏鳐鳓鳔鳕鳗鳘鳙鳜鳝鳟鳢靼鞅鞑鞒鞔鞯鞫鞣鞲鞴骱骰骷鹘骶骺骼髁髀髅髂髋髌髑魅魃魇魉魈魍魑飨餍餮饕饔髟髡髦髯髫髻髭髹鬈鬏鬓鬟鬣麽麾縻麂麇麈麋麒鏖麝麟黛黜黝黠黟黢黩黧黥黪黯鼢鼬鼯鼹鼷鼽鼾齄�".split("");for(a=0;a!=t[247].length;++a)if(t[247][a].charCodeAt(0)!==65533){r[t[247][a]]=63232+a;e[63232+a]=t[247][a]}return{enc:r,dec:e}}();cptable[10029]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄĀāÉĄÖÜáąČäčĆć鏟ĎíďĒēĖóėôöõúĚěü†°Ę£§•¶ß®©™ę¨≠ģĮįĪ≤≥īĶ∂∑łĻļĽľĹĺŅņѬ√ńŇ∆«»… ňŐÕőŌ–—“”‘’÷◊ōŔŕŘ‹›řŖŗŠ‚„šŚśÁŤťÍŽžŪÓÔūŮÚůŰűŲųÝýķŻŁżĢˇ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[10079]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüÝ°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[10081]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙ�ˆ˜¯˘˙˚¸˝˛ˇ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();cptable[28591]=function(){var e="\0\b\t\n\x0B\f\r !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞßàáâãäåæçèéêëìíîïðñòóôõö÷øùúûüýþÿ",r=[],t={};for(var a=0;a!=e.length;++a){if(e.charCodeAt(a)!==65533)t[e.charAt(a)]=a;r[a]=e.charAt(a)}return{enc:t,dec:r}}();if(typeof module!=="undefined"&&module.exports&&typeof DO_NOT_EXPORT_CODEPAGE==="undefined")module.exports=cptable;(function(e,r){"use strict";if(typeof cptable==="undefined"){if(typeof require!=="undefined"){var t=cptable;if(typeof module!=="undefined"&&module.exports&&typeof DO_NOT_EXPORT_CODEPAGE==="undefined")module.exports=r(t);else e.cptable=r(t)}else throw new Error("cptable not found")}else cptable=r(cptable)})(this,function(e){"use strict";var r={1200:"utf16le",1201:"utf16be",12000:"utf32le",12001:"utf32be",16969:"utf64le",20127:"ascii",65000:"utf7",65001:"utf8"};var t=[874,1250,1251,1252,1253,1254,1255,1256,1e4];var a=[932,936,949,950];var n=[65001];var i={};var s={};var f={};var o={};var l=function F(e){return String.fromCharCode(e)};var c=function P(e){return e.charCodeAt(0)};var h=typeof Buffer!=="undefined";var u=function(){};if(h){var d=!Buffer.from;if(!d)try{Buffer.from("foo","utf8")}catch(p){d=true}u=d?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer);if(!Buffer.allocUnsafe)Buffer.allocUnsafe=function(e){return new Buffer(e)};var v=1024,m=Buffer.allocUnsafe(v);var g=function L(e){var r=Buffer.allocUnsafe(65536);for(var t=0;t<65536;++t)r[t]=0;var a=Object.keys(e),n=a.length;for(var i=0,s=a[i];i>10&1023)];n[s++]=t[56320+(o&1023)]}}}n=n.slice(0,s)}else{n=Buffer.allocUnsafe(a);for(i=0;i>8}return function f(e){var r=e.length,t=0,n=0;if(2*r>v){v=2*r;m=Buffer.allocUnsafe(v)}if(Buffer.isBuffer(e)){for(t=0;t>8}return function l(e,r){var t=e.length,n=Buffer.allocUnsafe(2*t),i=0,s=0,f=0,o=0,l=0;if(typeof e==="string"){for(i=o=0;i0)n[o++]=a[s]}n=n.slice(0,o)}else if(Buffer.isBuffer(e)){for(i=o=0;i0)n[o++]=a[s]}else{f=s-65536;s=2*(55296+(f>>10&1023));n[o++]=a[s+1]||a[s];if(a[s+1]>0)n[o++]=a[s];s=2*(56320+(f&1023));n[o++]=a[s+1]||a[s];if(a[s+1]>0)n[o++]=a[s]}}n=n.slice(0,o)}else{for(i=o=0;i0)n[o++]=a[s]}}if(!r||r==="buf")return n;if(r!=="arr")return n.toString("binary");return[].slice.call(n)}};var T=function W(r){var t=e[r].dec;var a=Buffer.allocUnsafe(131072),n=0,i,s=0,f=0,o=0;for(o=0;o<65536;++o){a[2*o]=255;a[2*o+1]=253}for(n=0;n>8}return function l(e){var r=e.length,t=Buffer.allocUnsafe(2*r),n=0,i=0,s=0;if(Buffer.isBuffer(e)){for(n=0;nv){v=4*r;m=Buffer.allocUnsafe(v)}var n=0;if(r>=3&&e[0]==239)if(e[1]==187&&e[2]==191)n=3;for(var i=1,s=0,f=0;n>8}else{t-=65536;a=55296+(t>>10&1023);t=56320+(t&1023);m[s++]=a&255;m[s++]=a>>>8;m[s++]=t&255;m[s++]=t>>>8&255}}return m.slice(0,s).toString("ucs2")};s[65001]=function z(e,r){if(h&&Buffer.isBuffer(e)){if(!r||r==="buf")return e;if(r!=="arr")return e.toString("binary");return[].slice.call(e)}var t=e.length,a=0,n=0,i=0;var s=typeof e==="string";if(4*t>v){v=4*t;m=Buffer.allocUnsafe(v)}for(var f=0;f>6);m[i++]=128+(a&63)}else if(a>=55296&&a<=57343){a-=55296;++f;n=(s?e.charCodeAt(f):e[f].charCodeAt(0))-56320+(a<<10);m[i++]=240+(n>>>18&7);m[i++]=144+(n>>>12&63);m[i++]=128+(n>>>6&63);m[i++]=128+(n&63)}else{m[i++]=224+(a>>12);m[i++]=128+(a>>6&63);m[i++]=128+(a&63)}}if(!r||r==="buf")return m.slice(0,i);if(r!=="arr")return m.slice(0,i).toString("binary");return[].slice.call(m,0,i)}}var A=function V(){if(h){if(f[t[0]])return;var r=0,l=0;for(r=0;r255){s[d]=f>>8;s[++d]=f&255}else s[d]=f&255}else if(g=r[t])switch(g){case"utf8":if(h&&b){s=u(a,g);d=s.length;break}for(c=0;c>6);s[++d]=128+(f&63)}else if(f>=55296&&f<=57343){f-=55296;p=(b?a.charCodeAt(++c):a[++c].charCodeAt(0))-56320+(f<<10);s[d]=240+(p>>>18&7);s[++d]=144+(p>>>12&63);s[++d]=128+(p>>>6&63);s[++d]=128+(p&63)}else{s[d]=224+(f>>12);s[++d]=128+(f>>6&63);s[++d]=128+(f&63)}}break;case"ascii":if(h&&typeof a==="string"){s=u(a,g);d=s.length;break}for(c=0;c>8}break;case"utf16be":for(c=0;c>8;s[d++]=f&255}break;case"utf32le":for(c=0;c=55296&&f<=57343)f=65536+(f-55296<<10)+(a[++c].charCodeAt(0)-56320);s[d++]=f&255;f>>=8;s[d++]=f&255;f>>=8;s[d++]=f&255;f>>=8;s[d++]=f&255}break;case"utf32be":for(c=0;c=55296&&f<=57343)f=65536+(f-55296<<10)+(a[++c].charCodeAt(0)-56320);s[d+3]=f&255;f>>=8;s[d+2]=f&255;f>>=8;s[d+1]=f&255;f>>=8;s[d]=f&255;d+=4}break;case"utf7":for(c=0;c-1){s[d++]=w.charCodeAt(0);continue}var k=j(1201,w);s[d++]=43;s[d++]=_.charCodeAt(k[0]>>2);s[d++]=_.charCodeAt(((k[0]&3)<<4)+((k[1]||0)>>4));s[d++]=_.charCodeAt(((k[1]&15)<<2)+((k[2]||0)>>6));s[d++]=45}break;default:throw new Error("Unsupported magic: "+t+" "+r[t]);}else throw new Error("Unrecognized CP: "+t);s=s.slice(0,d);if(!h)return n=="str"?s.map(l).join(""):s;if(!n||n==="buf")return s;if(n!=="arr")return s.toString("binary");return[].slice.call(s)};var N=function X(t,a){var n;if(n=f[t])return n(a);if(typeof a==="string")return X(t,a.split("").map(c));var i=a.length,s=new Array(i),o="",l=0,u=0,d=1,p=0,v=0;var m=e[t],g,b="";if(m&&(g=m.dec)){for(u=0;u=3&&a[0]==239)if(a[1]==187&&a[2]==191)u=3;for(;u>10&1023);l=56320+(l&1023);s[p++]=String.fromCharCode(v);s[p++]=String.fromCharCode(l)}}break;case"ascii":if(h&&Buffer.isBuffer(a))return a.toString(b);for(u=0;u=2&&a[0]==255)if(a[1]==254)u=2;if(h&&Buffer.isBuffer(a))return a.toString(b);d=2;for(;u+1=2&&a[0]==254)if(a[1]==255)u=2;d=2;for(;u+1=4&&a[0]==255)if(a[1]==254&&a[2]===0&&a[3]===0)u=4;d=4;for(;u65535){l-=65536;s[p++]=String.fromCharCode(55296+(l>>10&1023));s[p++]=String.fromCharCode(56320+(l&1023))}else s[p++]=String.fromCharCode(l)}break;case"utf32be":if(i>=4&&a[3]==255)if(a[2]==254&&a[1]===0&&a[0]===0)u=4;d=4;for(;u65535){l-=65536;s[p++]=String.fromCharCode(55296+(l>>10&1023));s[p++]=String.fromCharCode(56320+(l&1023))}else s[p++]=String.fromCharCode(l)}break;case"utf7":if(i>=4&&a[0]==43&&a[1]==47&&a[2]==118){if(i>=5&&a[3]==56&&a[4]==45)u=5;else if(a[3]==56||a[3]==57||a[3]==43||a[3]==47)u=4}for(;u>4;k.push(A);x=_.indexOf(String.fromCharCode(a[u+R++]));if(x===-1)break;E=(S&15)<<4|x>>2;k.push(E);O=_.indexOf(String.fromCharCode(a[u+R++]));if(O===-1)break;y=(x&3)<<6|O;if(O<64)k.push(y)}T=X(1201,k);for(R=0;R>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t)+(e.charCodeAt(2*t+1)<<8));return r.join("")}function u(e){var r=[];for(var t=0;t>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t+1)+(e.charCodeAt(2*t)<<8));return r.join("")}var d=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 u(e.slice(2));if(r==65279)return e.slice(1);return e};var p=function Rk(e){return String.fromCharCode(e)};var v=function Ik(e){return String.fromCharCode(e)};function m(e){a=e;o=function(e){r=e;s(e)};d=function(e){if(e.charCodeAt(0)===255&&e.charCodeAt(1)===254){return a.utils.decode(1200,c(e.slice(2)))}return e};p=function n(e){if(r===1200)return String.fromCharCode(e);return a.utils.decode(r,[e&255,e>>8])[0]};v=function i(e){return a.utils.decode(t,[e])[0]};na()}var g=null;var b=true;var w="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function k(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,o=0;for(var l=0;l>2;a=e.charCodeAt(l++);s=(t&3)<<4|a>>4;n=e.charCodeAt(l++);f=(a&15)<<2|n>>6;o=n&63;if(isNaN(a)){f=o=64}else if(isNaN(n)){o=64}r+=w.charAt(i)+w.charAt(s)+w.charAt(f)+w.charAt(o)}return r}function T(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,o=0;for(var l=0;l255)t=95;i=t>>2;a=e.charCodeAt(l++);if(a>255)a=95;s=(t&3)<<4|a>>4;n=e.charCodeAt(l++);if(n>255)n=95;f=(a&15)<<2|n>>6;o=n&63;if(isNaN(a)){f=o=64}else if(isNaN(n)){o=64}r+=w.charAt(i)+w.charAt(s)+w.charAt(f)+w.charAt(o)}return r}function A(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,o=0;e=e.replace(/^data:([^\/]+\/[^\/]+)?;base64\,/,"").replace(/[^\w\+\/\=]/g,"");for(var l=0;l>4;r+=String.fromCharCode(t);f=w.indexOf(e.charAt(l++));a=(s&15)<<4|f>>2;if(f!==64){r+=String.fromCharCode(a)}o=w.indexOf(e.charAt(l++));n=(f&3)<<6|o;if(o!==64){r+=String.fromCharCode(n)}}return r}var E=function(){return typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node}();var y=function(){if(typeof Buffer!=="undefined"){var e=!Buffer.from;if(!e)try{Buffer.from("foo","utf8")}catch(r){e=true}return e?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer)}return function(){}}();var C=function(){if(typeof Buffer==="undefined")return false;var e=y([65,0]);if(!e)return false;var r=e.toString("utf16le");return r.length==1}();function S(e){if(E)return Buffer.alloc?Buffer.alloc(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function _(e){if(E)return Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var x=function Nk(e){if(E)return y(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function O(e){if(typeof ArrayBuffer==="undefined")return x(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 R(e){if(Array.isArray(e))return e.map(function(e){return String.fromCharCode(e)}).join("");var r=[];for(var t=0;t>6&31;n[t++]=128|s&63}else if(s>=55296&&s<57344){s=(s&1023)+64;var f=e.charCodeAt(++i)&1023;n[t++]=240|s>>8&7;n[t++]=128|s>>2&63;n[t++]=128|f>>6&15|(s&3)<<4;n[t++]=128|f&63}else{n[t++]=224|s>>12&15;n[t++]=128|s>>6&63;n[t++]=128|s&63}if(t>a){r.push(n.slice(0,t));t=0;n=S(65535);a=65530}}r.push(n.slice(0,t));return D(r)}var P=/\u0000/g,L=/[\u0001-\u0006]/g;function M(e){var r="",t=e.length-1;while(t>=0)r+=e.charAt(t--);return r}function U(e,r){var t=""+e;return t.length>=r?t:yr("0",r-t.length)+t}function B(e,r){var t=""+e;return t.length>=r?t:yr(" ",r-t.length)+t}function W(e,r){var t=""+e;return t.length>=r?t:t+yr(" ",r-t.length)}function H(e,r){var t=""+Math.round(e);return t.length>=r?t:yr("0",r-t.length)+t}function z(e,r){var t=""+e;return t.length>=r?t:yr("0",r-t.length)+t}var V=Math.pow(2,32);function G(e,r){if(e>V||e<-V)return H(e,r);var t=Math.round(e);return z(t,r)}function j(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)===114&&(e.charCodeAt(r+5)|32)===97&&(e.charCodeAt(r+6)|32)===108}var X=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var Y=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function K(e){if(!e)e={};e[0]="General";e[1]="0";e[2]="0.00";e[3]="#,##0";e[4]="#,##0.00";e[9]="0%";e[10]="0.00%";e[11]="0.00E+00";e[12]="# ?/?";e[13]="# ??/??";e[14]="m/d/yy";e[15]="d-mmm-yy";e[16]="d-mmm";e[17]="mmm-yy";e[18]="h:mm AM/PM";e[19]="h:mm:ss AM/PM";e[20]="h:mm";e[21]="h:mm:ss";e[22]="m/d/yy h:mm";e[37]="#,##0 ;(#,##0)";e[38]="#,##0 ;[Red](#,##0)";e[39]="#,##0.00;(#,##0.00)";e[40]="#,##0.00;[Red](#,##0.00)";e[45]="mm:ss";e[46]="[h]:mm:ss";e[47]="mmss.0";e[48]="##0.0E+0";e[49]="@";e[56]='"上午/下午 "hh"時"mm"分"ss"秒 "';return e}var Z={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "'};var J={5:37,6:38,7:39,8:40,23:0,24:0,25:0,26:0,27:14,28:14,29:14,30:14,31:14,50:14,51:14,52:14,53:14,54:14,55:14,56:14,57:14,58:14,59:1,60:2,61:3,62:4,67:9,68:10,69:12,70:13,71:14,72:14,73:15,74:16,75:17,76:20,77:21,78:22,79:45,80:46,81:47,82:0};var q={5:'"$"#,##0_);\\("$"#,##0\\)',63:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',41:'_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)'};function Q(e,r,t){var a=e<0?-1:1;var n=e*a;var i=0,s=1,f=0;var o=1,l=0,c=0;var h=Math.floor(n);while(lr){if(l>r){c=o;f=i}else{c=l;f=s}}if(!t)return[0,a*f,c];var u=Math.floor(a*f/c);return[u,a*f-u*c,c]}function ee(e,r,t){if(e>2958465||e<0)return null;var a=e|0,n=Math.floor(86400*(e-a)),i=0;var s=[];var f={D:a,T:n,u:86400*(e-a)-n,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(f.u)<1e-6)f.u=0;if(r&&r.date1904)a+=1462;if(f.u>.9999){f.u=0;if(++n==86400){f.T=n=0;++a;++f.D}}if(a===60){s=t?[1317,10,29]:[1900,2,29];i=3}else if(a===0){s=t?[1317,8,29]:[1900,1,0];i=6}else{if(a>60)--a;var o=new Date(1900,0,1);o.setDate(o.getDate()+a-1);s=[o.getFullYear(),o.getMonth()+1,o.getDate()];i=o.getDay();if(a<60)i=(i+6)%7;if(t)i=he(o,s)}f.y=s[0];f.m=s[1];f.d=s[2];f.S=n%60;n=Math.floor(n/60);f.M=n%60;n=Math.floor(n/60);f.H=n;f.q=i;return f}var re=new Date(1899,11,31,0,0,0);var te=re.getTime();var ae=new Date(1900,2,1,0,0,0);function ne(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=ae)t+=24*60*60*1e3;return(t-(te+(e.getTimezoneOffset()-re.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function ie(e){return e.indexOf(".")==-1?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function se(e){if(e.indexOf("E")==-1)return e;return e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}function fe(e){var r=e<0?12:11;var t=ie(e.toFixed(12));if(t.length<=r)return t;t=e.toPrecision(10);if(t.length<=r)return t;return e.toExponential(5)}function oe(e){var r=ie(e.toFixed(11));return r.length>(e<0?12:11)||r==="0"||r==="-0"?e.toPrecision(6):r}function le(e){var r=Math.floor(Math.log(Math.abs(e))*Math.LOG10E),t;if(r>=-4&&r<=-1)t=e.toPrecision(10+r);else if(Math.abs(r)<=9)t=fe(e);else if(r===10)t=e.toFixed(10).substr(0,12);else t=oe(e);return ie(se(t.toUpperCase()))}function ce(e,r){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):le(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return ze(14,ne(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}function he(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function ue(e,r,t,a){var n="",i=0,s=0,f=t.y,o,l=0;switch(e){case 98:f=t.y+543;case 121:switch(r.length){case 1:;case 2:o=f%100;l=2;break;default:o=f%1e4;l=4;break;}break;case 109:switch(r.length){case 1:;case 2:o=t.m;l=r.length;break;case 3:return Y[t.m-1][1];case 5:return Y[t.m-1][0];default:return Y[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:o=t.d;l=r.length;break;case 3:return X[t.q][0];default:return X[t.q][1];}break;case 104:switch(r.length){case 1:;case 2:o=1+(t.H+11)%12;l=r.length;break;default:throw"bad hour format: "+r;}break;case 72:switch(r.length){case 1:;case 2:o=t.H;l=r.length;break;default:throw"bad hour format: "+r;}break;case 77:switch(r.length){case 1:;case 2:o=t.M;l=r.length;break;default:throw"bad minute format: "+r;}break;case 115:if(r!="s"&&r!="ss"&&r!=".0"&&r!=".00"&&r!=".000")throw"bad second format: "+r;if(t.u===0&&(r=="s"||r=="ss"))return U(t.S,r.length);if(a>=2)s=a===3?1e3:100;else s=a===1?10:1;i=Math.round(s*(t.S+t.u));if(i>=60*s)i=0;if(r==="s")return i===0?"0":""+i/s;n=U(i,2+a);if(r==="ss")return n.substr(0,2);return"."+n.substr(2,r.length-1);case 90:switch(r){case"[h]":;case"[hh]":o=t.D*24+t.H;break;case"[m]":;case"[mm]":o=(t.D*24+t.H)*60+t.M;break;case"[s]":;case"[ss]":o=((t.D*24+t.H)*60+t.M)*60+Math.round(t.S+t.u);break;default:throw"bad abstime format: "+r;}l=r.length===3?1:2;break;case 101:o=f;l=1;break;}var c=l>0?U(o,l):"";return c}function de(e){var r=3;if(e.length<=r)return e;var t=e.length%r,a=e.substr(0,t);for(;t!=e.length;t+=r)a+=(a.length>0?",":"")+e.substr(t,r);return a}var pe=/%/g;function ve(e,r,t){var a=r.replace(pe,""),n=r.length-a.length;return Fe(e,a,t*Math.pow(10,2*n))+yr("%",n)}function me(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return Fe(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function ge(e,r){var t;var a=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\+0$/)){if(r==0)return"0.0E+0";else if(r<0)return"-"+ge(e,-r);var n=e.indexOf(".");if(n===-1)n=e.indexOf("E");var i=Math.floor(Math.log(r)*Math.LOG10E)%n;if(i<0)i+=n;t=(r/Math.pow(10,i)).toPrecision(a+1+(n+i)%n);if(t.indexOf("e")===-1){var s=Math.floor(Math.log(r)*Math.LOG10E);if(t.indexOf(".")===-1)t=t.charAt(0)+"."+t.substr(1)+"E+"+(s-t.length+i);else t+="E+"+(s-i);while(t.substr(0,2)==="0."){t=t.charAt(0)+t.substr(2,n)+"."+t.substr(2+n);t=t.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}t=t.replace(/\+-/,"-")}t=t.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function(e,r,t,a){return r+t+a.substr(0,(n+i)%n)+"."+a.substr(i)+"E"})}else t=r.toExponential(a);if(e.match(/E\+00$/)&&t.match(/e[+-]\d$/))t=t.substr(0,t.length-1)+"0"+t.charAt(t.length-1);if(e.match(/E\-/)&&t.match(/e\+/))t=t.replace(/e\+/,"e");return t.replace("e","E")}var be=/# (\?+)( ?)\/( ?)(\d+)/;function we(e,r,t){var a=parseInt(e[4],10),n=Math.round(r*a),i=Math.floor(n/a);var s=n-i*a,f=a;return t+(i===0?"":""+i)+" "+(s===0?yr(" ",e[1].length+1+e[4].length):B(s,e[1].length)+e[2]+"/"+e[3]+U(f,e[4].length))}function ke(e,r,t){return t+(r===0?"":""+r)+yr(" ",e[1].length+2+e[4].length)}var Te=/^#*0*\.([0#]+)/;var Ae=/\).*[0#]/;var Ee=/\(###\) ###\\?-####/;function ye(e){var r="",t;for(var a=0;a!=e.length;++a)switch(t=e.charCodeAt(a)){case 35:break;case 63:r+=" ";break;case 48:r+="0";break;default:r+=String.fromCharCode(t);}return r}function Ce(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function Se(e,r){var t=e-Math.floor(e),a=Math.pow(10,r);if(r<(""+Math.round(t*a)).length)return 0;return Math.round(t*a)}function _e(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function xe(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function Oe(e,r,t){if(e.charCodeAt(0)===40&&!r.match(Ae)){var a=r.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(t>=0)return Oe("n",a,t);return"("+Oe("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return me(e,r,t);if(r.indexOf("%")!==-1)return ve(e,r,t);if(r.indexOf("E")!==-1)return ge(r,t);if(r.charCodeAt(0)===36)return"$"+Oe(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,f,o=Math.abs(t),l=t<0?"-":"";if(r.match(/^00+$/))return l+G(o,r.length);if(r.match(/^[#?]+$/)){n=G(t,0);if(n==="0")n="";return n.length>r.length?n:ye(r.substr(0,r.length-n.length))+n}if(i=r.match(be))return we(i,o,l);if(r.match(/^#+0+$/))return l+G(o,r.length-r.indexOf("0"));if(i=r.match(Te)){n=Ce(t,i[1].length).replace(/^([^\.]+)$/,"$1."+ye(i[1])).replace(/\.$/,"."+ye(i[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+yr("0",ye(i[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(i=r.match(/^(0*)\.(#*)$/)){return l+Ce(o,i[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".")}if(i=r.match(/^#{1,3},##0(\.?)$/))return l+de(G(o,0));if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Oe(e,r,-t):de(""+(Math.floor(t)+_e(t,i[1].length)))+"."+U(Se(t,i[1].length),i[1].length)}if(i=r.match(/^#,#*,#0/))return Oe(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=M(Oe(e,r.replace(/[\\-]/g,""),t));s=0;return M(M(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return s=0)return De("n",a,t);return"("+De("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return Re(e,r,t);if(r.indexOf("%")!==-1)return Ie(e,r,t);if(r.indexOf("E")!==-1)return Ne(r,t);if(r.charCodeAt(0)===36)return"$"+De(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,f,o=Math.abs(t),l=t<0?"-":"";if(r.match(/^00+$/))return l+U(o,r.length);if(r.match(/^[#?]+$/)){n=""+t;if(t===0)n="";return n.length>r.length?n:ye(r.substr(0,r.length-n.length))+n}if(i=r.match(be))return ke(i,o,l);if(r.match(/^#+0+$/))return l+U(o,r.length-r.indexOf("0"));if(i=r.match(Te)){n=(""+t).replace(/^([^\.]+)$/,"$1."+ye(i[1])).replace(/\.$/,"."+ye(i[1]));n=n.replace(/\.(\d*)$/,function(e,r){return"."+r+yr("0",ye(i[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(i=r.match(/^(0*)\.(#*)$/)){return l+(""+o).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".")}if(i=r.match(/^#{1,3},##0(\.?)$/))return l+de(""+o);if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+De(e,r,-t):de(""+t)+"."+yr("0",i[1].length)}if(i=r.match(/^#,#*,#0/))return De(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=M(De(e,r.replace(/[\\-]/g,""),t));s=0;return M(M(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return s-1||t=="\\"&&e.charAt(r+1)=="-"&&"0#".indexOf(e.charAt(r+2))>-1)){} +break;case"?":while(e.charAt(++r)===t){}break;case"*":++r;if(e.charAt(r)==" "||e.charAt(r)=="*")++r;break;case"(":;case")":++r;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":while(r-1){}break;case" ":++r;break;default:++r;break;}}return false}function Ue(e,r,t,a){var n=[],i="",s=0,f="",o="t",l,c,h;var u="H";while(s=12?e.charAt(s+2):f;v.t="T";u="h";s+=3}else if(e.substr(s,5).toUpperCase()==="AM/PM"){if(l!=null)v.v=l.H>=12?"PM":"AM";v.t="T";s+=5;u="h"}else if(e.substr(s,5).toUpperCase()==="上午/下午"){if(l!=null)v.v=l.H>=12?"下午":"上午";v.t="T";s+=5;u="h"}else{v.t="t";++s}if(l==null&&v.t==="T")return"";n[n.length]=v;o=f;break;case"[":i=f;while(e.charAt(s++)!=="]"&&s-1){i=(i.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!Me(e))n[n.length]={t:"t",v:i}}break;case".":if(l!=null){i=f;while(++s-1)i+=f;n[n.length]={t:"n",v:i};break;case"?":i=f;while(e.charAt(++s)===f)i+=f;n[n.length]={t:f,v:i};o=f;break;case"*":++s;if(e.charAt(s)==" "||e.charAt(s)=="*")++s;break;case"(":;case")":n[n.length]={t:a===1?"t":f,v:f};++s;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":i=f;while(s-1)i+=e.charAt(s);n[n.length]={t:"D",v:i};break;case" ":n[n.length]={t:f,v:f};++s;break;case"$":n[n.length]={t:"t",v:"$"};++s;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxzP".indexOf(f)===-1)throw new Error("unrecognized character "+f+" in "+e);n[n.length]={t:"t",v:f};++s;break;}}var m=0,g=0,b;for(s=n.length-1,o="t";s>=0;--s){switch(n[s].t){case"h":;case"H":n[s].t=u;o="h";if(m<1)m=1;break;case"s":if(b=n[s].v.match(/\.0+$/))g=Math.max(g,b[0].length-1);if(m<3)m=3;case"d":;case"y":;case"M":;case"e":o=n[s].t;break;case"m":if(o==="s"){n[s].t="M";if(m<2)m=2}break;case"X":break;case"Z":if(m<1&&n[s].v.match(/[Hh]/))m=1;if(m<2&&n[s].v.match(/[Mm]/))m=2;if(m<3&&n[s].v.match(/[Ss]/))m=3;}}switch(m){case 0:break;case 1:if(l.u>=.5){l.u=0;++l.S}if(l.S>=60){l.S=0;++l.M}if(l.M>=60){l.M=0;++l.H}break;case 2:if(l.u>=.5){l.u=0;++l.S}if(l.S>=60){l.S=0;++l.M}break;}var w="",k;for(s=0;s0){if(w.charCodeAt(0)==40){A=r<0&&w.charCodeAt(0)===45?-r:r;E=Fe("n",w,A)}else{A=r<0&&a>1?-r:r;E=Fe("n",w,A);if(A<0&&n[0]&&n[0].t=="t"){E=E.substr(1);n[0].v="-"+n[0].v}}k=E.length-1;var y=n.length;for(s=0;s-1){y=s;break}var C=n.length;if(y===n.length&&E.indexOf("E")===-1){for(s=n.length-1;s>=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;if(k>=n[s].v.length-1){k-=n[s].v.length;n[s].v=E.substr(k+1,n[s].v.length)}else if(k<0)n[s].v="";else{n[s].v=E.substr(0,k+1);k=-1}n[s].t="t";C=s}if(k>=0&&C=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;c=n[s].v.indexOf(".")>-1&&s===y?n[s].v.indexOf(".")-1:n[s].v.length-1;T=n[s].v.substr(c+1);for(;c>=0;--c){if(k>=0&&(n[s].v.charAt(c)==="0"||n[s].v.charAt(c)==="#"))T=E.charAt(k--)+T}n[s].v=T;n[s].t="t";C=s}if(k>=0&&C-1&&s===y?n[s].v.indexOf(".")+1:0;T=n[s].v.substr(0,c);for(;c-1){A=a>1&&r<0&&s>0&&n[s-1].v==="-"?-r:r;n[s].v=Fe(n[s].t,n[s].v,A);n[s].t="t"}var S="";for(s=0;s!==n.length;++s)if(n[s]!=null)S+=n[s].v;return S}var Be=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function We(e,r){if(r==null)return false;var t=parseFloat(r[2]);switch(r[1]){case"=":if(e==t)return true;break;case">":if(e>t)return true;break;case"<":if(e":if(e!=t)return true;break;case">=":if(e>=t)return true;break;case"<=":if(e<=t)return true;break;}return false}function He(e,r){var t=Pe(e);var a=t.length,n=t[a-1].indexOf("@");if(a<4&&n>-1)--a;if(t.length>4)throw new Error("cannot find right format for |"+t.join("|")+"|");if(typeof r!=="number")return[4,t.length===4||n>-1?t[t.length-1]:"@"];switch(t.length){case 1:t=n>-1?["General","General","General",t[0]]:[t[0],t[0],t[0],"@"];break;case 2:t=n>-1?[t[0],t[0],t[0],t[1]]:[t[0],t[1],t[0],"@"];break;case 3:t=n>-1?[t[0],t[1],t[0],t[2]]:[t[0],t[1],t[2],"@"];break;case 4:break;}var i=r>0?t[0]:r<0?t[1]:t[2];if(t[0].indexOf("[")===-1&&t[1].indexOf("[")===-1)return[a,i];if(t[0].match(/\[[=<>]/)!=null||t[1].match(/\[[=<>]/)!=null){var s=t[0].match(Be);var f=t[1].match(Be);return We(r,s)?[a,t[0]]:We(r,f)?[a,t[1]]:[a,t[s!=null&&f!=null?2:1]]}return[a,i]}function ze(e,r,t){if(t==null)t={};var a="";switch(typeof e){case"string":if(e=="m/d/yy"&&t.dateNF)a=t.dateNF;else a=e;break;case"number":if(e==14&&t.dateNF)a=t.dateNF;else a=(t.table!=null?t.table:Z)[e];if(a==null)a=t.table&&t.table[J[e]]||Z[J[e]];if(a==null)a=q[e]||"General";break;}if(j(a,0))return ce(r,t);if(r instanceof Date)r=ne(r,t.date1904);var n=He(a,r);if(j(n[1]))return ce(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return Ue(n[1],r,t,n[0])}function Ve(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(Z[t]==undefined){if(r<0)r=t;continue}if(Z[t]==e){r=t;break}}if(r<0)r=391}Z[r]=e;return r}function Ge(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)Ve(e[r],r)}function $e(){Z=K()}var je={format:ze,load:Ve,_table:Z,load_table:Ge,parse_date_code:ee,is_date:Me,get_table:function Dk(){return je._table=Z}};var Xe={5:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',23:"General",24:"General",25:"General",26:"General",27:"m/d/yy",28:"m/d/yy",29:"m/d/yy",30:"m/d/yy",31:"m/d/yy",32:"h:mm:ss",33:"h:mm:ss",34:"h:mm:ss",35:"h:mm:ss",36:"m/d/yy",41:'_(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* (#,##0);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)',50:"m/d/yy",51:"m/d/yy",52:"m/d/yy",53:"m/d/yy",54:"m/d/yy",55:"m/d/yy",56:"m/d/yy",57:"m/d/yy",58:"m/d/yy",59:"0",60:"0.00",61:"#,##0",62:"#,##0.00",63:'"$"#,##0_);\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',67:"0%",68:"0.00%",69:"# ?/?",70:"# ??/??",71:"m/d/yy",72:"m/d/yy",73:"d-mmm-yy",74:"d-mmm",75:"mmm-yy",76:"h:mm",77:"h:mm:ss",78:"m/d/yy h:mm",79:"mm:ss",80:"[h]:mm:ss",81:"mmss.0"};var Ye=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function Ke(e){var r=typeof e=="number"?Z[e]:e;r=r.replace(Ye,"(\\d+)");return new RegExp("^"+r+"$")}function Ze(e,r,t){var a=-1,n=-1,i=-1,s=-1,f=-1,o=-1;(r.match(Ye)||[]).forEach(function(e,r){var l=parseInt(t[r+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=l;break;case"d":i=l;break;case"h":s=l;break;case"s":o=l;break;case"m":if(s>=0)f=l;else n=l;break;}});if(o>=0&&f==-1&&n>=0){f=n;n=-1}var l=(""+(a>=0?a:(new Date).getFullYear())).slice(-4)+"-"+("00"+(n>=1?n:1)).slice(-2)+"-"+("00"+(i>=1?i:1)).slice(-2);if(l.length==7)l="0"+l;if(l.length==8)l="20"+l;var c=("00"+(s>=0?s:0)).slice(-2)+":"+("00"+(f>=0?f:0)).slice(-2)+":"+("00"+(o>=0?o:0)).slice(-2);if(s==-1&&f==-1&&o==-1)return l;if(a==-1&&n==-1&&i==-1)return c;return l+"T"+c}var Je={"d.m":"d\\.m"};function qe(e,r){return Ve(Je[e]||e,r)}var Qe=function(){var e={};e.version="1.2.0";function r(){var e=0,r=new Array(256);for(var t=0;t!=256;++t){e=t;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;r[t]=e}return typeof Int32Array!=="undefined"?new Int32Array(r):r}var t=r();function a(e){var r=0,t=0,a=0,n=typeof Int32Array!=="undefined"?new Int32Array(4096):new Array(4096);for(a=0;a!=256;++a)n[a]=e[a];for(a=0;a!=256;++a){t=e[a];for(r=256+a;r<4096;r+=256)t=n[r]=t>>>8^e[t&255]}var i=[];for(a=1;a!=16;++a)i[a-1]=typeof Int32Array!=="undefined"?n.subarray(a*256,a*256+256):n.slice(a*256,a*256+256);return i}var n=a(t);var i=n[0],s=n[1],f=n[2],o=n[3],l=n[4];var c=n[5],h=n[6],u=n[7],d=n[8],p=n[9];var v=n[10],m=n[11],g=n[12],b=n[13],w=n[14];function k(e,r){var a=r^-1;for(var n=0,i=e.length;n>>8^t[(a^e.charCodeAt(n++))&255];return~a}function T(e,r){var a=r^-1,n=e.length-15,k=0;for(;k>8&255]^g[e[k++]^a>>16&255]^m[e[k++]^a>>>24]^v[e[k++]]^p[e[k++]]^d[e[k++]]^u[e[k++]]^h[e[k++]]^c[e[k++]]^l[e[k++]]^o[e[k++]]^f[e[k++]]^s[e[k++]]^i[e[k++]]^t[e[k++]];n+=15;while(k>>8^t[(a^e[k++])&255];return~a}function A(e,r){var a=r^-1;for(var n=0,i=e.length,s=0,f=0;n>>8^t[(a^s)&255]}else if(s<2048){a=a>>>8^t[(a^(192|s>>6&31))&255];a=a>>>8^t[(a^(128|s&63))&255]}else if(s>=55296&&s<57344){s=(s&1023)+64;f=e.charCodeAt(n++)&1023;a=a>>>8^t[(a^(240|s>>8&7))&255];a=a>>>8^t[(a^(128|s>>2&63))&255];a=a>>>8^t[(a^(128|f>>6&15|(s&3)<<4))&255];a=a>>>8^t[(a^(128|f&63))&255]}else{a=a>>>8^t[(a^(224|s>>12&15))&255];a=a>>>8^t[(a^(128|s>>6&63))&255];a=a>>>8^t[(a^(128|s&63))&255]}}return~a}e.table=t;e.bstr=k;e.buf=T;e.str=A;return e}();var er=function Fk(){var e={};e.version="1.2.2";function r(e,r){var t=e.split("/"),a=r.split("/");for(var n=0,i=0,s=Math.min(t.length,a.length);n>>1;e._W(2,t);var a=r.getFullYear()-1980;a=a<<4|r.getMonth()+1;a=a<<5|r.getDate();e._W(2,a)}function i(e){var r=e._R(2)&65535;var t=e._R(2)&65535;var a=new Date;var n=t&31;t>>>=5;var i=t&15;t>>>=4;a.setMilliseconds(0);a.setFullYear(t+1980);a.setMonth(i-1);a.setDate(n);var s=r&31;r>>>=5;var f=r&63;r>>>=6;a.setHours(r);a.setMinutes(f);a.setSeconds(s<<1);return a}function s(e){ga(e,0);var r={};var t=0;while(e.l<=e.length-4){var a=e._R(2);var n=e._R(2),i=e.l+n;var s={};switch(a){case 21589:{t=e._R(1);if(t&1)s.mtime=e._R(4);if(n>5){if(t&2)s.atime=e._R(4);if(t&4)s.ctime=e._R(4)}if(s.mtime)s.mt=new Date(s.mtime*1e3)}break;case 1:{var f=e._R(4),o=e._R(4);s.usz=o*Math.pow(2,32)+f;f=e._R(4);o=e._R(4);s.csz=o*Math.pow(2,32)+f}break;}e.l=i;r[a]=s}return r}var f;function o(){return f||(f=rr)}function l(e,r){if(e[0]==80&&e[1]==75)return Ie(e,r);if((e[0]|32)==109&&(e[1]|32)==105)return We(e,r);if(e.length<512)throw new Error("CFB file size "+e.length+" < 512");var t=3;var a=512;var n=0;var i=0;var s=0;var f=0;var o=0;var l=[];var p=e.slice(0,512);ga(p,0);var m=c(p);t=m[0];switch(t){case 3:a=512;break;case 4:a=4096;break;case 0:if(m[1]==0)return Ie(e,r);default:throw new Error("Major Version: Expected 3 or 4 saw "+t);}if(a!==512){p=e.slice(0,a);ga(p,28)}var w=e.slice(0,a);h(p,t);var k=p._R(4,"i");if(t===3&&k!==0)throw new Error("# Directory Sectors: Expected 0 saw "+k);p.l+=4;s=p._R(4,"i");p.l+=4;p.chk("00100000","Mini Stream Cutoff Size: ");f=p._R(4,"i");n=p._R(4,"i");o=p._R(4,"i");i=p._R(4,"i");for(var T=-1,A=0;A<109;++A){T=p._R(4,"i");if(T<0)break;l[A]=T}var E=u(e,a);v(o,i,E,a,l);var y=g(E,s,l,a);if(s0&&f!==U)y[f].name="!MiniFAT";y[l[0]].name="!FAT";y.fat_addrs=l;y.ssz=a;var C={},S=[],_=[],x=[];b(s,y,E,S,n,C,_,f);d(_,x,S);S.shift();var O={FileIndex:_,FullPaths:x};if(r&&r.raw)O.raw={header:w,sectors:E};return O}function c(e){if(e[e.l]==80&&e[e.l+1]==75)return[0,0];e.chk(B,"Header Signature: ");e.l+=16;var r=e._R(2,"u");return[e._R(2,"u"),r]}function h(e,r){var t=9;e.l+=2;switch(t=e._R(2)){case 9:if(r!=3)throw new Error("Sector Shift: Expected 9 saw "+t);break;case 12:if(r!=4)throw new Error("Sector Shift: Expected 12 saw "+t);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+t);}e.chk("0600","Mini Sector Shift: ");e.chk("000000000000","Reserved: ")}function u(e,r){var t=Math.ceil(e.length/r)-1;var a=[];for(var n=1;n0&&s>=0){i.push(r.slice(s*M,s*M+M));n-=M;s=la(t,s*4)}if(i.length===0)return wa(0);return D(i).slice(0,e.size)}function v(e,r,t,a,n){var i=U;if(e===U){if(r!==0)throw new Error("DIFAT chain shorter than expected")}else if(e!==-1){var s=t[e],f=(a>>>2)-1;if(!s)return;for(var o=0;o=1)v(la(s,a-4),r-1,t,a,n)}}function m(e,r,t,a,n){var i=[],s=[];if(!n)n=[];var f=a-1,o=0,l=0;for(o=r;o>=0;){n[o]=true;i[i.length]=o;s.push(e[o]);var c=t[Math.floor(o*4/a)];l=o*4&f;if(a<4+l)throw new Error("FAT boundary crossed: "+o+" 4 "+a);if(!e[c])break;o=la(e[c],l)}return{nodes:i,data:Ut([s])}}function g(e,r,t,a){var n=e.length,i=[];var s=[],f=[],o=[];var l=a-1,c=0,h=0,u=0,d=0;for(c=0;c=n)u-=n;if(s[u])continue;o=[];var p=[];for(h=u;h>=0;){p[h]=true;s[h]=true;f[f.length]=h;o.push(e[h]);var v=t[Math.floor(h*4/a)];d=h*4&l;if(a<4+d)throw new Error("FAT boundary crossed: "+h+" 4 "+a);if(!e[v])break;h=la(e[v],d);if(p[h])break}i[u]={nodes:f,data:Ut([o])}}return i}function b(e,r,t,a,n,i,s,f){var o=0,l=a.length?2:0;var c=r[e].data;var h=0,u=0,d;for(;h0&&o!==U)r[o].name="!StreamData"}else if(g.size>=4096){g.storage="fat";if(r[g.start]===undefined)r[g.start]=m(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(o!==U&&g.start!==U&&r[o]){g.content=p(g,r[o].data,(r[f]||{}).data)}}if(g.content)ga(g.content,0);i[d]=g;s.push(g)}}function w(e,r){return new Date((oa(e,r+4)/1e7*Math.pow(2,32)+oa(e,r)/1e7-11644473600)*1e3)}function T(e,r){o();return l(f.readFileSync(e),r)}function C(e,r){var t=r&&r.type;if(!t){if(E&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return T(e,r);case"base64":return l(x(A(e)),r);case"binary":return l(x(e),r);}return l(e,r)}function O(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;R(e)}function R(e){var r="Sh33tJ5";if(er.find(e,"/"+r))return;var t=wa(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);I(e)}function I(e,n){O(e);var i=false,s=false;for(var f=e.FullPaths.length-1;f>=0;--f){var o=e.FileIndex[f];switch(o.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(o.R*o.L*o.C))i=true;if(o.R>-1&&o.L>-1&&o.R==o.L)i=true;break;default:i=true;break;}}if(!i&&!n)return;var l=new Date(1987,1,19),c=0;var h=Object.create?Object.create(null):{};var u=[];for(f=0;f1?1:-1;p.size=0;p.type=5}else if(v.slice(-1)=="/"){for(c=f+1;c=u.length?-1:c;for(c=f+1;c=u.length?-1:c;p.type=1}else{if(t(e.FullPaths[f+1]||"")==t(v))p.R=f+1;p.type=2}}}function N(e,r){var t=r||{};if(t.fileType=="mad")return He(e,t);I(e);switch(t.fileType){case"zip":return De(e,t);}var a=function(e){var r=0,t=0;for(var a=0;a0){if(i<4096)r+=i+63>>6;else t+=i+511>>9}}var s=e.FullPaths.length+3>>2;var f=r+7>>3;var o=r+127>>7;var l=f+t+s+o;var c=l+127>>7;var h=c<=109?0:Math.ceil((c-109)/127);while(l+c+h+127>>7>c)h=++c<=109?0:Math.ceil((c-109)/127);var u=[1,h,c,o,s,t,r,0];e.FileIndex[0].size=r<<6;u[7]=(e.FileIndex[0].start=u[0]+u[1]+u[2]+u[3]+u[4]+u[5])+(u[6]+7>>3);return u}(e);var n=wa(a[7]<<9);var i=0,s=0;{for(i=0;i<8;++i)n._W(1,W[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:U);n._W(4,a[3]);n._W(-4,a[1]?a[0]-1:U);n._W(4,a[1]);for(i=0;i<109;++i)n._W(-4,i>9)}f(a[6]+7>>3);while(n.l&511)n._W(-4,z.ENDOFCHAIN);s=i=0;for(o=0;o=4096)continue;c.start=s;f(l+63>>6)}while(n.l&511)n._W(-4,z.ENDOFCHAIN);for(i=0;i32){console.error("Name "+u+" will be truncated to "+u.slice(0,32));u=u.slice(0,32)}l=2*(u.length+1);n._W(64,u,"utf16le");n._W(2,l);n._W(1,c.type);n._W(1,c.color);n._W(-4,c.L);n._W(-4,c.R);n._W(-4,c.C);if(!c.clsid)for(o=0;o<4;++o)n._W(4,0);else n._W(16,c.clsid,"hex");n._W(4,c.state||0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,c.start);n._W(4,c.size);n._W(4,0)}for(i=1;i=4096){n.l=c.start+1<<9;if(E&&Buffer.isBuffer(c.content)){c.content.copy(n,n.l,0,c.size);n.l+=c.size+511&-512}else{for(o=0;o0&&c.size<4096){if(E&&Buffer.isBuffer(c.content)){c.content.copy(n,n.l,0,c.size);n.l+=c.size+63&-64}else{for(o=0;o>16|r>>8|r)&255}var ee=typeof Uint8Array!=="undefined";var re=ee?new Uint8Array(1<<8):[];for(var te=0;te<1<<8;++te)re[te]=Q(te);function ae(e,r){var t=re[e&255];if(r<=8)return t>>>8-r;t=t<<8|re[e>>8&255];if(r<=16)return t>>>16-r;t=t<<8|re[e>>16&255];return t>>>24-r}function ne(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=6?0:e[a+1]<<8))>>>t&3}function ie(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=5?0:e[a+1]<<8))>>>t&7}function se(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=4?0:e[a+1]<<8))>>>t&15}function fe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=3?0:e[a+1]<<8))>>>t&31}function oe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=1?0:e[a+1]<<8))>>>t&127}function le(e,r,t){var a=r&7,n=r>>>3,i=(1<>>a;if(t<8-a)return s&i;s|=e[n+1]<<8-a;if(t<16-a)return s&i;s|=e[n+2]<<16-a;if(t<24-a)return s&i;s|=e[n+3]<<24-a;return s&i}function ce(e,r,t){var a=r&7,n=r>>>3;if(a<=5)e[n]|=(t&7)<>8-a}return r+3}function he(e,r,t){var a=r&7,n=r>>>3;t=(t&1)<>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t;return r+8}function de(e,r,t){var a=r&7,n=r>>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t&255;e[n+2]=t>>>8;return r+16}function pe(e,r){var t=e.length,a=2*t>r?2*t:r+5,n=0;if(t>=r)return e;if(E){var i=_(a);if(e.copy)e.copy(i);else for(;n>a-h;for(s=(1<=0;--s)r[f|s<0)r[r.l++]=e[t++]}return r.l}function i(r,t){var n=0;var i=0;var s=ee?new Uint16Array(32768):[];while(i0)t[t.l++]=r[i++];n=t.l*8;continue}n=ce(t,n,+!!(i+f==r.length)+2);var o=0;while(f-- >0){var l=r[i];o=(o<<5^l)&32767;var c=-1,h=0;if(c=s[o]){c|=i&~32767;if(c>i)c-=32768;if(c2){l=a[h];if(l<=22)n=ue(t,n,re[l+1]>>1)-1;else{ue(t,n,3);n+=5;ue(t,n,re[l-23]>>5);n+=3}var u=l<8?0:l-4>>2;if(u>0){de(t,n,h-J[l]);n+=u}l=e[i-c];n=ue(t,n,re[l]>>3);n-=3;var d=l<4?0:l-2>>1;if(d>0){de(t,n,i-c-q[l]);n+=d}for(var p=0;p>8-p;for(var v=(1<<7-p)-1;v>=0;--v)ye[d|v<>>=3){case 16:i=3+ne(e,r);r+=2;d=m[m.length-1];while(i-- >0)m.push(d);break;case 17:i=3+ie(e,r);r+=3;while(i-- >0)m.push(0);break;case 18:i=11+oe(e,r);r+=7;while(i-- >0)m.push(0);break;default:m.push(d);if(o>>0;var f=0,o=0;while((a&1)==0){a=ie(e,t);t+=3;if(a>>>1==0){if(t&7)t+=8-(t&7);var l=e[t>>>3]|e[(t>>>3)+1]<<8;t+=32;if(l>0){if(!r&&s0){n[i++]=e[t>>>3];t+=8}}continue}else if(a>>1==1){f=9;o=5}else{t=_e(e,t);f=Ce;o=Se}for(;;){if(!r&&s>>1==1?ge[c]:Ae[c];t+=h&15;h>>>=4;if((h>>>8&255)===0)n[i++]=h;else if(h==256)break;else{h-=257;var u=h<8?0:h-4>>2;if(u>5)u=0;var d=i+J[h];if(u>0){d+=le(e,t,u);t+=u}c=le(e,t,o);h=a>>>1==1?be[c]:Ee[c];t+=h&15;h>>>=4;var p=h<4?0:h-2>>1;var v=q[h];if(p>0){v+=le(e,t,p);t+=p}if(!r&&s>>3];return[n.slice(0,i),t+7>>>3]}function Oe(e,r){var t=e.slice(e.l||0);var a=xe(t,r);e.l+=a[1];return a[0]}function Re(e,r){if(e){if(typeof console!=="undefined")console.error(r)}else throw new Error(r)}function Ie(e,r){var t=e;ga(t,0);var a=[],n=[];var i={FileIndex:a,FullPaths:n};O(i,{root:r.root});var f=t.length-4;while((t[f]!=80||t[f+1]!=75||t[f+2]!=5||t[f+3]!=6)&&f>=0)--f;t.l=f+4;t.l+=4;var o=t._R(2);t.l+=6;var l=t._R(4);t.l=l;for(f=0;f0){t=t.slice(0,t.length-1);t=t.slice(0,t.lastIndexOf("/")+1);if(i.slice(0,t.length)==t)break}}var s=(a[1]||"").match(/boundary="(.*?)"/);if(!s)throw new Error("MAD cannot find boundary");var f="--"+(s[1]||"");var o=[],l=[];var c={FileIndex:o,FullPaths:l};O(c);var h,u=0;for(n=0;n=32&&d<128)++h;var v=h>=u*4/5;n.push(a);n.push("Content-Location: "+(t.root||"file:///C:/SheetJS/")+s);n.push("Content-Transfer-Encoding: "+(v?"quoted-printable":"base64"));n.push("Content-Type: "+Pe(f,s));n.push("");n.push(v?Me(c):Le(c))}n.push(a+"--\r\n");return n.join("\r\n")}function ze(e){var r={};O(r,e);return r}function Ve(e,r,t,n){var i=n&&n.unsafe;if(!i)O(e);var s=!i&&er.find(e,r);if(!s){var f=e.FullPaths[0];if(r.slice(0,f.length)==f)f=r;else{if(f.slice(-1)!="/")f+="/";f=(f+r).replace("//","/")}s={name:a(r),type:2};e.FileIndex.push(s);e.FullPaths.push(f);if(!i)er.utils.cfb_gc(e)}s.content=t;s.size=t?t.length:0;if(n){if(n.CLSID)s.clsid=n.CLSID;if(n.mt)s.mt=n.mt;if(n.ct)s.ct=n.ct}return s}function Ge(e,r){O(e);var t=er.find(e,r);if(t)for(var a=0;a3)a=true;switch(n[i].slice(n[i].length-1)){case"Y":throw new Error("Unsupported ISO Duration Field: "+n[i].slice(n[i].length-1));case"D":t*=24;case"H":t*=60;case"M":if(!a)throw new Error("Unsupported ISO Duration Field: M");else t*=60;case"S":break;}r+=t*parseInt(n[i],10)}return r}var br=new Date("2017-02-19T19:06:09.000Z");var wr=isNaN(br.getFullYear())?new Date("2/19/17"):br;var kr=wr.getFullYear()==2017;function Tr(e,r){var t=new Date(e);if(kr){if(r>0)t.setTime(t.getTime()+t.getTimezoneOffset()*60*1e3);else if(r<0)t.setTime(t.getTime()-t.getTimezoneOffset()*60*1e3);return t}if(e instanceof Date)return e;if(wr.getFullYear()==1917&&!isNaN(t.getFullYear())){var a=t.getFullYear();if(e.indexOf(""+a)>-1)return t;t.setFullYear(t.getFullYear()+100);return t}var n=e.match(/\d+/g)||["2017","2","19","0","0","0"];var i=new Date(+n[0],+n[1]-1,+n[2],+n[3]||0,+n[4]||0,+n[5]||0);if(e.indexOf("Z")>-1)i=new Date(i.getTime()-i.getTimezoneOffset()*60*1e3);return i}function Ar(e,r){if(E&&Buffer.isBuffer(e)){if(r&&C){if(e[0]==255&&e[1]==254)return gt(e.slice(2).toString("utf16le"));if(e[1]==254&&e[2]==255)return gt(u(e.slice(2).toString("binary")))}return e.toString("binary")}if(typeof TextDecoder!=="undefined")try{if(r){if(e[0]==255&&e[1]==254)return gt(new TextDecoder("utf-16le").decode(e.slice(2)));if(e[0]==254&&e[1]==255)return gt(new TextDecoder("utf-16be").decode(e.slice(2)))}var t={"€":"€","‚":"‚","ƒ":"ƒ","„":"„","…":"…","†":"†","‡":"‡","ˆ":"ˆ","‰":"‰","Š":"Š","‹":"‹","Œ":"Œ","Ž":"Ž","‘":"‘","’":"’","“":"“","”":"”","•":"•","–":"–","—":"—","˜":"˜","™":"™","š":"š","›":"›","œ":"œ","ž":"ž","Ÿ":"Ÿ"};if(Array.isArray(e))e=new Uint8Array(e);return new TextDecoder("latin1").decode(e).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g,function(e){return t[e]||e})}catch(a){}var n=[];for(var i=0;i!=e.length;++i)n.push(String.fromCharCode(e[i]));return n.join("")}function Er(e){if(typeof JSON!="undefined"&&!Array.isArray(e))return JSON.parse(JSON.stringify(e));if(typeof e!="object"||e==null)return e;if(e instanceof Date)return new Date(e.getTime());var r={};for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))r[t]=Er(e[t]);return r}function yr(e,r){var t="";while(t.length3&&xr.indexOf(r)==-1)return i}else if(r.replace(/[ap]m?/,"").match(/[a-z]/))return i;if(s<0||s>8099||e.match(/[^-0-9:,\/\\]/))return i;return n}var Rr=function(){var e="abacaba".split(/(:?b)/i).length==5;return function r(t,a,n){if(e||typeof a=="string")return t.split(a);var i=t.split(a),s=[i[0]];for(var f=1;f\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g;var jr=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm,Xr=/<[^>]*>/g;var Yr=Gr.match(jr)?jr:Xr;var Kr=/<\w*:/,Zr=/<(\/?)\w+:/;function Jr(e,r,t){var a={};var n=0,i=0;for(;n!==e.length;++n)if((i=e.charCodeAt(n))===32||i===10||i===13)break;if(!r)a[0]=e.slice(0,n);if(n===e.length)return a;var s=e.match($r),f=0,o="",l=0,c="",h="",u=1;if(s)for(l=0;l!=s.length;++l){h=s[l];for(i=0;i!=h.length;++i)if(h.charCodeAt(i)===61)break;c=h.slice(0,i).trim();while(h.charCodeAt(i+1)==32)++i;u=(n=h.charCodeAt(i+1))==34||n==39?1:0;o=h.slice(i+1+u,h.length-u);for(f=0;f!=c.length;++f)if(c.charCodeAt(f)===58)break;if(f===c.length){if(c.indexOf("_")>0)c=c.slice(0,c.indexOf("_"));a[c]=o;if(!t)a[c.toLowerCase()]=o}else{var d=(f===5&&c.slice(0,5)==="xmlns"?"xmlns":"")+c.slice(f+1);if(a[d]&&c.slice(f-3,f)=="ext")continue;a[d]=o;if(!t)a[d.toLowerCase()]=o}}return a}function qr(e){return e.replace(Zr,"<$1")}var Qr={""":'"',"'":"'",">":">","<":"<","&":"&"};var et=or(Qr);var rt=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;function t(a){var n=a+"",i=n.indexOf("-1?16:10))||e}).replace(r,function(e,r){return String.fromCharCode(parseInt(r,16))});var s=n.indexOf("]]>");return t(n.slice(0,i))+n.slice(i+9,s)+t(n.slice(s+3))}return function a(e,r){var a=t(e);return r?a.replace(/\r\n/g,"\n"):a}}();var tt=/[&<>'"]/g,at=/[\u0000-\u0008\u000b-\u001f\uFFFE-\uFFFF]/g;function nt(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(at,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function it(e){return nt(e).replace(/ /g,"_x0020_")}var st=/[\u0000-\u001f]/g;function ft(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(/\n/g,"
").replace(st,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function ot(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(st,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var lt=function(){var e=/&#(\d+);/g;function r(e,r){return String.fromCharCode(parseInt(r,10))}return function t(a){return a.replace(e,r)}}();function ct(e){return e.replace(/(\r\n|[\r\n])/g," ")}function ht(e){switch(e){case 1:;case true:;case"1":;case"true":return true;case 0:;case false:;case"0":;case"false":return false;}return false}function ut(e){var r="",t=0,a=0,n=0,i=0,s=0,f=0;while(t191&&a<224){s=(a&31)<<6;s|=n&63;r+=String.fromCharCode(s);continue}i=e.charCodeAt(t++);if(a<240){r+=String.fromCharCode((a&15)<<12|(n&63)<<6|i&63);continue}s=e.charCodeAt(t++);f=((a&7)<<18|(n&63)<<12|(i&63)<<6|s&63)-65536;r+=String.fromCharCode(55296+(f>>>10&1023));r+=String.fromCharCode(56320+(f&1023))}return r}function dt(e){var r=S(2*e.length),t,a,n=1,i=0,s=0,f;for(a=0;a>>10&1023);t=56320+(t&1023)}if(s!==0){r[i++]=s&255;r[i++]=s>>>8;s=0}r[i++]=t%256;r[i++]=t>>>8}return r.slice(0,i).toString("ucs2")}function pt(e){return y(e,"binary").toString("utf8")}var vt="foo bar baz☃🍣";var mt=E&&(pt(vt)==ut(vt)&&pt||dt(vt)==ut(vt)&&dt)||ut;var gt=E?function(e){return y(e,"utf8").toString("binary")}:function(e){var r=[],t=0,a=0,n=0;while(t>6)));r.push(String.fromCharCode(128+(a&63)));break;case a>=55296&&a<57344:a-=55296;n=e.charCodeAt(t++)-56320+(a<<10);r.push(String.fromCharCode(240+(n>>18&7)));r.push(String.fromCharCode(144+(n>>12&63)));r.push(String.fromCharCode(128+(n>>6&63)));r.push(String.fromCharCode(128+(n&63)));break;default:r.push(String.fromCharCode(224+(a>>12)));r.push(String.fromCharCode(128+(a>>6&63)));r.push(String.fromCharCode(128+(a&63)));}}return r.join("")};var bt=function(){var e={};return function r(t,a){var n=t+"|"+(a||"");if(e[n])return e[n];return e[n]=new RegExp("<(?:\\w+:)?"+t+'(?: xml:space="preserve")?(?:[^>]*)>([\\s\\S]*?)",a||"")}}();var wt=function(){var e=[["nbsp"," "],["middot","·"],["quot",'"'],["apos","'"],["gt",">"],["lt","<"],["amp","&"]].map(function(e){return[new RegExp("&"+e[0]+";","ig"),e[1]]});return function r(t){var a=t.replace(/^[\t\n\r ]+/,"").replace(/[\t\n\r ]+$/,"").replace(/>\s+/g,">").replace(/\s+/g,"\n").replace(/<[^>]*>/g,"");for(var n=0;n([\\s\\S]*?)","g")}}();var Tt=/<\/?(?:vt:)?variant>/g,At=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function St(e){return sr(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function _t(e,r,t){return"<"+e+(t!=null?St(t):"")+(r!=null?(r.match(yt)?' xml:space="preserve"':"")+">"+r+""}function xt(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function Ot(e,r){switch(typeof e){case"string":var t=_t("vt:lpwstr",nt(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return _t((e|0)==e?"vt:i4":"vt:r8",nt(String(e)));case"boolean":return _t("vt:bool",e?"true":"false");}if(e instanceof Date)return _t("vt:filetime",xt(e));throw new Error("Unable to serialize "+e)}function Rt(e){if(E&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return mt(R(N(e)));throw new Error("Bad input format: expected Buffer or string")}var It=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/](?:[^>=]|="[^"]*?")*)?>/gm;var Nt={CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",CT:"http://schemas.openxmlformats.org/package/2006/content-types",RELS:"http://schemas.openxmlformats.org/package/2006/relationships",TCMNT:"http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"};var Dt=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];var Ft={o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel",ss:"urn:schemas-microsoft-com:office:spreadsheet",dt:"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",mv:"http://macVmlSchemaUri",v:"urn:schemas-microsoft-com:vml",html:"http://www.w3.org/TR/REC-html40"};function Pt(e,r){var t=1-2*(e[r+7]>>>7);var a=((e[r+7]&127)<<4)+(e[r+6]>>>4&15);var n=e[r+6]&15;for(var i=5;i>=0;--i)n=n*256+e[r+i];if(a==2047)return n==0?t*Infinity:NaN;if(a==0)a=-1022;else{a-=1023;n+=Math.pow(2,52)}return t*Math.pow(2,a-52)*n}function Lt(e,r,t){var a=(r<0||1/r==-Infinity?1:0)<<7,n=0,i=0;var s=a?-r:r;if(!isFinite(s)){n=2047;i=isNaN(r)?26985:0}else if(s==0)n=i=0;else{n=Math.floor(Math.log(s)/Math.LN2);i=s*Math.pow(2,52-n);if(n<=-1023&&(!isFinite(i)||i>4|a}var Mt=function(e){var r=[],t=10240;for(var a=0;a0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map(function(e){return Buffer.isBuffer(e)?e:y(e)})):Mt(e)}:Mt;var Bt=function(e,r,t){var a=[];for(var n=r;n0?Gt(e,r+4,r+4+t-1):""};var jt=$t;var Xt=function(e,r){var t=oa(e,r);return t>0?Gt(e,r+4,r+4+t-1):""};var Yt=Xt;var Kt=function(e,r){var t=2*oa(e,r);return t>0?Gt(e,r+4,r+4+t-1):""};var Zt=Kt;var Jt=function Lk(e,r){var t=oa(e,r);return t>0?Wt(e,r+4,r+4+t):""};var qt=Jt;var Qt=function(e,r){var t=oa(e,r);return t>0?Gt(e,r+4,r+4+t):""};var ea=Qt;var ra=function(e,r){return Pt(e,r)};var ta=ra;var aa=function Mk(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(E){jt=function Uk(e,r){if(!Buffer.isBuffer(e))return $t(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Yt=function Bk(e,r){if(!Buffer.isBuffer(e))return Xt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Zt=function Wk(e,r){if(!Buffer.isBuffer(e)||!C)return Kt(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};qt=function Hk(e,r){if(!Buffer.isBuffer(e)||!C)return Jt(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};ea=function zk(e,r){if(!Buffer.isBuffer(e))return Qt(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};ta=function Vk(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return ra(e,r)};aa=function Gk(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function na(){Wt=function(e,r,t){return a.utils.decode(1200,e.slice(r,t)).replace(P,"")};Gt=function(e,r,t){return a.utils.decode(65001,e.slice(r,t))};jt=function(e,r){var n=oa(e,r);return n>0?a.utils.decode(t,e.slice(r+4,r+4+n-1)):""};Yt=function(e,t){var n=oa(e,t);return n>0?a.utils.decode(r,e.slice(t+4,t+4+n-1)):""};Zt=function(e,r){var t=2*oa(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};qt=function(e,r){var t=oa(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t)):""};ea=function(e,r){var t=oa(e,r);return t>0?a.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof a!=="undefined")na();var ia=function(e,r){return e[r]};var sa=function(e,r){return e[r+1]*(1<<8)+e[r]};var fa=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var oa=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var la=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var ca=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function ha(e,t){var n="",i,s,f=[],o,l,c,h;switch(t){case"dbcs":h=this.l;if(E&&Buffer.isBuffer(this)&&C)n=this.slice(this.l,this.l+2*e).toString("utf16le");else for(c=0;c0?la:ca)(this,this.l);this.l+=4;return i}else{s=oa(this,this.l);this.l+=4}return s;case 8:;case-8:if(t==="f"){if(e==8)s=ta(this,this.l);else s=ta([this[this.l+7],this[this.l+6],this[this.l+5],this[this.l+4],this[this.l+3],this[this.l+2],this[this.l+1],this[this.l+0]],0);this.l+=8;return s}else e=8;case 16:n=zt(this,this.l,e);break;};}this.l+=e;return n}var ua=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255;e[t+2]=r>>>16&255;e[t+3]=r>>>24&255};var da=function(e,r,t){e[t]=r&255;e[t+1]=r>>8&255;e[t+2]=r>>16&255;e[t+3]=r>>24&255};var pa=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function va(e,n,i){var s=0,f=0;if(i==="dbcs"){for(f=0;f!=n.length;++f)pa(this,n.charCodeAt(f),this.l+2*f);s=2*n.length}else if(i==="sbcs"||i=="cpstr"){if(typeof a!=="undefined"&&t==874){for(f=0;f!=n.length;++f){var o=a.utils.encode(t,n.charAt(f));this[this.l+f]=o[0]}s=n.length}else if(typeof a!=="undefined"&&i=="cpstr"){o=a.utils.encode(r,n);if(o.length==n.length)for(f=0;f>8}while(this.l>>=8;this[this.l+1]=n&255;break;case 3:s=3;this[this.l]=n&255;n>>>=8;this[this.l+1]=n&255;n>>>=8;this[this.l+2]=n&255;break;case 4:s=4;ua(this,n,this.l);break;case 8:s=8;if(i==="f"){Lt(this,n,this.l);break};case 16:break;case-4:s=4;da(this,n,this.l);break;}this.l+=s; +return this}function ma(e,r){var t=zt(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function ga(e,r){e.l=r;e._R=ha;e.chk=ma;e._W=va}function ba(e,r){e.l+=r}function wa(e){var r=S(e);ga(r,0);return r}function ka(e,r,t){if(!e)return;var a,n,i;ga(e,e.l||0);var s=e.length,f=0,o=0;while(e.la.l){a=a.slice(0,a.l);a.l=a.length}if(a.length>0)e.push(a)}a=null};var i=function c(e){if(a&&e=128?1:0)+1;if(a>=128)++i;if(a>=16384)++i;if(a>=2097152)++i;var s=e.next(i);if(n<=127)s._W(1,n);else{s._W(1,(n&127)+128);s._W(1,n>>7)}for(var f=0;f!=4;++f){if(a>=128){s._W(1,(a&127)+128);a>>=7}else{s._W(1,a);break}}if(a>0&&aa(t))e.push(t)}function Ea(e,r,t){var a=Er(e);if(r.s){if(a.cRel)a.c+=r.s.c;if(a.rRel)a.r+=r.s.r}else{if(a.cRel)a.c+=r.c;if(a.rRel)a.r+=r.r}if(!t||t.biff<12){while(a.c>=256)a.c-=256;while(a.r>=65536)a.r-=65536}return a}function ya(e,r,t){var a=Er(e);a.s=Ea(a.s,r.s,t);a.e=Ea(a.e,r.s,t);return a}function Ca(e,r){if(e.cRel&&e.c<0){e=Er(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=Er(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=Ma(e);if(!e.cRel&&e.cRel!=null)t=Da(t);if(!e.rRel&&e.rRel!=null)t=Oa(t);return t}function Sa(e,r){if(e.s.r==0&&!e.s.rRel){if(e.e.r==(r.biff>=12?1048575:r.biff>=8?65536:16384)&&!e.e.rRel){return(e.s.cRel?"":"$")+Na(e.s.c)+":"+(e.e.cRel?"":"$")+Na(e.e.c)}}if(e.s.c==0&&!e.s.cRel){if(e.e.c==(r.biff>=12?16383:255)&&!e.e.cRel){return(e.s.rRel?"":"$")+xa(e.s.r)+":"+(e.e.rRel?"":"$")+xa(e.e.r)}}return Ca(e.s,r.biff)+":"+Ca(e.e,r.biff)}if(typeof cptable!=="undefined")m(cptable);else if(typeof module!=="undefined"&&typeof require!=="undefined"){m(undefined)}function _a(e){return parseInt(Ra(e),10)-1}function xa(e){return""+(e+1)}function Oa(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function Ra(e){return e.replace(/\$(\d+)$/,"$1")}function Ia(e){var r=Fa(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function Na(e){if(e<0)throw new Error("invalid column "+e);var r="";for(++e;e;e=Math.floor((e-1)/26))r=String.fromCharCode((e-1)%26+65)+r;return r}function Da(e){return e.replace(/^([A-Z])/,"$$$1")}function Fa(e){return e.replace(/^\$([A-Z])/,"$1")}function Pa(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function La(e){var r=0,t=0;for(var a=0;a=48&&n<=57)r=10*r+(n-48);else if(n>=65&&n<=90)t=26*t+(n-64)}return{c:t-1,r:r-1}}function Ma(e){var r=e.c+1;var t="";for(;r;r=(r-1)/26|0)t=String.fromCharCode((r-1)%26+65)+t;return t+(e.r+1)}function Ua(e){var r=e.indexOf(":");if(r==-1)return{s:La(e),e:La(e)};return{s:La(e.slice(0,r)),e:La(e.slice(r+1))}}function Ba(e,r){if(typeof r==="undefined"||typeof r==="number"){return Ba(e.s,e.e)}if(typeof e!=="string")e=Ma(e);if(typeof r!=="string")r=Ma(r);return e==r?e:e+":"+r}function Wa(e){var r=Ua(e);return"$"+Na(r.s.c)+"$"+xa(r.s.r)+":$"+Na(r.e.c)+"$"+xa(r.e.r)}function Ha(e,r){if(!e&&!(r&&r.biff<=5&&r.biff>=2))throw new Error("empty sheet name");if(/[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(e))return"'"+e.replace(/'/g,"''")+"'";return e}function za(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;a26)break;t=26*t+n}r.s.c=--t;for(t=0;a9)break;t=10*t+n}r.s.r=--t;if(a===i||n!=10){r.e.c=r.s.c;r.e.r=r.s.r;return r}++a;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 Va(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=ze(e.z,t?ur(r):r)}catch(a){}try{return e.w=ze((e.XF||{}).numFmtId||(t?14:0),t?ur(r):r)}catch(a){return""+r}}function Ga(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(e.t=="e")return Jn[e.v]||e.v;if(r==undefined)return Va(e,e.v);return Va(e,r)}function $a(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function ja(e,r,t){var a=t||{};var n=e?e["!data"]!=null:a.dense;if(g!=null&&n==null)n=g;var i=e||{};if(n&&!i["!data"])i["!data"]=[];var s=0,f=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var o=typeof a.origin=="string"?La(a.origin):a.origin;s=o.r;f=o.c}if(!i["!ref"])i["!ref"]="A1:A1"}var l={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(i["!ref"]){var c=za(i["!ref"]);l.s.c=c.s.c;l.s.r=c.s.r;l.e.c=Math.max(l.e.c,c.e.c);l.e.r=Math.max(l.e.r,c.e.r);if(s==-1)l.e.r=s=c.e.r+1}var h=[];for(var u=0;u!=r.length;++u){if(!r[u])continue;if(!Array.isArray(r[u]))throw new Error("aoa_to_sheet expects an array of arrays");var d=s+u,p=""+(d+1);if(n){if(!i["!data"][d])i["!data"][d]=[];h=i["!data"][d]}for(var v=0;v!=r[u].length;++v){if(typeof r[u][v]==="undefined")continue;var m={v:r[u][v]};var b=f+v;if(l.s.r>d)l.s.r=d;if(l.s.c>b)l.s.c=b;if(l.e.r0)r._W(0,e,"dbcs");return t?r.slice(0,r.l):r}function qa(e){return{ich:e._R(2),ifnt:e._R(2)}}function Qa(e,r){if(!r)r=wa(4);r._W(2,e.ich||0);r._W(2,e.ifnt||0);return r}function en(e,r){var t=e.l;var a=e._R(1);var n=Za(e);var i=[];var s={t:n,h:n};if((a&1)!==0){var f=e._R(4);for(var o=0;o!=f;++o)i.push(qa(e));s.r=i}else s.r=[{ich:0,ifnt:0}];e.l=t+r;return s}function rn(e,r){var t=false;if(r==null){t=true;r=wa(15+4*e.t.length)}r._W(1,0);Ja(e.t,r);return t?r.slice(0,r.l):r}var tn=en;function an(e,r){var t=false;if(r==null){t=true;r=wa(23+4*e.t.length)}r._W(1,1);Ja(e.t,r);r._W(4,1);Qa({ich:0,ifnt:0},r);return t?r.slice(0,r.l):r}function nn(e){var r=e._R(4);var t=e._R(2);t+=e._R(1)<<16;e.l++;return{c:r,iStyleRef:t}}function sn(e,r){if(r==null)r=wa(8);r._W(-4,e.c);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}function fn(e){var r=e._R(2);r+=e._R(1)<<16;e.l++;return{c:-1,iStyleRef:r}}function on(e,r){if(r==null)r=wa(4);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}var ln=Za;var cn=Ja;function hn(e){var r=e._R(4);return r===0||r===4294967295?"":e._R(r,"dbcs")}function un(e,r){var t=false;if(r==null){t=true;r=wa(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 dn=Za;var pn=hn;var vn=un;function mn(e){var r=e.slice(e.l,e.l+4);var t=r[0]&1,a=r[0]&2;e.l+=4;var n=a===0?ta([0,0,0,0,r[0]&252,r[1],r[2],r[3]],0):la(r,0)>>2;return t?n/100:n}function gn(e,r){if(r==null)r=wa(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 bn(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 wn(e,r){if(!r)r=wa(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 kn=bn;var Tn=wn;function An(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e._R(8,"f")}function En(e,r){return(r||wa(8))._W(8,e,"f")}function yn(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 f=e._R(1);var o=e._R(1);e.l++;switch(a){case 0:r.auto=1;break;case 1:r.index=n;var l=Zn[n];if(l)r.rgb=xl(l);break;case 2:r.rgb=xl([s,f,o]);break;case 3:r.theme=n;break;}if(i!=0)r.tint=i>0?i/32767:i/32768;return r}function Cn(e,r){if(!r)r=wa(8);if(!e||e.auto){r._W(4,0);r._W(4,0);return r}if(e.index!=null){r._W(1,2);r._W(1,e.index)}else if(e.theme!=null){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||e.theme!=null){r._W(2,0);r._W(1,0);r._W(1,0)}else{var a=e.rgb||"FFFFFF";if(typeof a=="number")a=("000000"+a.toString(16)).slice(-6);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 Sn(e){var r=e._R(1);e.l++;var t={fBold:r&1,fItalic:r&2,fUnderline:r&4,fStrikeout:r&8,fOutline:r&16,fShadow:r&32,fCondense:r&64,fExtend:r&128};return t}function _n(e,r){if(!r)r=wa(2);var t=(e.italic?2:0)|(e.strike?8:0)|(e.outline?16:0)|(e.shadow?32:0)|(e.condense?64:0)|(e.extend?128:0);r._W(1,t);r._W(1,0);return r}function xn(e,r){var t={2:"BITMAP",3:"METAFILEPICT",8:"DIB",14:"ENHMETAFILE"};var a=e._R(4);switch(a){case 0:return"";case 4294967295:;case 4294967294:return t[e._R(4)]||"";}if(a>400)throw new Error("Unsupported Clipboard: "+a.toString(16));e.l-=4;return e._R(0,r==1?"lpstr":"lpwstr")}function On(e){return xn(e,1)}function Rn(e){return xn(e,2)}var In=2;var Nn=3;var Dn=11;var Fn=12;var Pn=19;var Ln=64;var Mn=65;var Un=71;var Bn=4108;var Wn=4126;var Hn=80;var zn=81;var Vn=[Hn,zn];var Gn={1:{n:"CodePage",t:In},2:{n:"Category",t:Hn},3:{n:"PresentationFormat",t:Hn},4:{n:"ByteCount",t:Nn},5:{n:"LineCount",t:Nn},6:{n:"ParagraphCount",t:Nn},7:{n:"SlideCount",t:Nn},8:{n:"NoteCount",t:Nn},9:{n:"HiddenCount",t:Nn},10:{n:"MultimediaClipCount",t:Nn},11:{n:"ScaleCrop",t:Dn},12:{n:"HeadingPairs",t:Bn},13:{n:"TitlesOfParts",t:Wn},14:{n:"Manager",t:Hn},15:{n:"Company",t:Hn},16:{n:"LinksUpToDate",t:Dn},17:{n:"CharacterCount",t:Nn},19:{n:"SharedDoc",t:Dn},22:{n:"HyperlinksChanged",t:Dn},23:{n:"AppVersion",t:Nn,p:"version"},24:{n:"DigSig",t:Mn},26:{n:"ContentType",t:Hn},27:{n:"ContentStatus",t:Hn},28:{n:"Language",t:Hn},29:{n:"Version",t:Hn},255:{},2147483648:{n:"Locale",t:Pn},2147483651:{n:"Behavior",t:Pn},1919054434:{}};var $n={1:{n:"CodePage",t:In},2:{n:"Title",t:Hn},3:{n:"Subject",t:Hn},4:{n:"Author",t:Hn},5:{n:"Keywords",t:Hn},6:{n:"Comments",t:Hn},7:{n:"Template",t:Hn},8:{n:"LastAuthor",t:Hn},9:{n:"RevNumber",t:Hn},10:{n:"EditTime",t:Ln},11:{n:"LastPrinted",t:Ln},12:{n:"CreatedDate",t:Ln},13:{n:"ModifiedDate",t:Ln},14:{n:"PageCount",t:Nn},15:{n:"WordCount",t:Nn},16:{n:"CharCount",t:Nn},17:{n:"Thumbnail",t:Un},18:{n:"Application",t:Hn},19:{n:"DocSecurity",t:Nn},255:{},2147483648:{n:"Locale",t:Pn},2147483651:{n:"Behavior",t:Pn},1919054434:{}};var jn={1:"US",2:"CA",3:"",7:"RU",20:"EG",30:"GR",31:"NL",32:"BE",33:"FR",34:"ES",36:"HU",39:"IT",41:"CH",43:"AT",44:"GB",45:"DK",46:"SE",47:"NO",48:"PL",49:"DE",52:"MX",55:"BR",61:"AU",64:"NZ",66:"TH",81:"JP",82:"KR",84:"VN",86:"CN",90:"TR",105:"JS",213:"DZ",216:"MA",218:"LY",351:"PT",354:"IS",358:"FI",420:"CZ",886:"TW",961:"LB",962:"JO",963:"SY",964:"IQ",965:"KW",966:"SA",971:"AE",972:"IL",974:"QA",981:"IR",65535:"US"};var Xn=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function Yn(e){return e.map(function(e){return[e>>16&255,e>>8&255,e&255]})}var Kn=Yn([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,0,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var Zn=Er(Kn);var Jn={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var qn={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255};var Qn=["_xlnm.Consolidate_Area","_xlnm.Auto_Open","_xlnm.Auto_Close","_xlnm.Extract","_xlnm.Database","_xlnm.Criteria","_xlnm.Print_Area","_xlnm.Print_Titles","_xlnm.Recorder","_xlnm.Data_Form","_xlnm.Auto_Activate","_xlnm.Auto_Deactivate","_xlnm.Sheet_Title","_xlnm._FilterDatabase"];var ei={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.sheet.macroEnabled.main+xml":"workbooks","application/vnd.ms-excel.sheet.binary.macroEnabled.main":"workbooks","application/vnd.ms-excel.addin.macroEnabled.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"charts","application/vnd.ms-excel.chartsheet":"charts","application/vnd.ms-excel.macrosheet+xml":"macros","application/vnd.ms-excel.macrosheet":"macros","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"dialogs","application/vnd.ms-excel.dialogsheet":"dialogs","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.customXmlProperties+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.ms-excel.threadedcomments+xml":"threadedcomments","application/vnd.ms-excel.person+xml":"people","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"metadata","application/vnd.ms-excel.sheetMetadata":"metadata","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","application/vnd.ms-office.chartcolorstyle+xml":"TODO","application/vnd.ms-office.chartstyle+xml":"TODO","application/vnd.ms-office.chartex+xml":"TODO","application/vnd.ms-excel.calcChain":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings":"TODO","application/vnd.ms-office.activeX":"TODO","application/vnd.ms-office.activeX+xml":"TODO","application/vnd.ms-excel.attachedToolbars":"TODO","application/vnd.ms-excel.connections":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":"TODO","application/vnd.ms-excel.externalLink":"links","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"links","application/vnd.ms-excel.pivotCacheDefinition":"TODO","application/vnd.ms-excel.pivotCacheRecords":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml":"TODO","application/vnd.ms-excel.queryTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml":"TODO","application/vnd.ms-excel.userNames":"TODO","application/vnd.ms-excel.revisionHeaders":"TODO","application/vnd.ms-excel.revisionLog":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml":"TODO","application/vnd.ms-excel.tableSingleCells":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml":"TODO","application/vnd.ms-excel.slicer":"TODO","application/vnd.ms-excel.slicerCache":"TODO","application/vnd.ms-excel.slicer+xml":"TODO","application/vnd.ms-excel.slicerCache+xml":"TODO","application/vnd.ms-excel.wsSortMap":"TODO","application/vnd.ms-excel.table":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":"TODO","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.themeOverride+xml":"TODO","application/vnd.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"TODO","application/vnd.ms-office.volatileDependencies":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml":"TODO","application/vnd.ms-excel.controlproperties+xml":"TODO","application/vnd.openxmlformats-officedocument.model+data":"TODO","application/vnd.ms-excel.Survey+xml":"TODO","application/vnd.openxmlformats-officedocument.drawing+xml":"drawings","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml":"TODO","application/vnd.openxmlformats-officedocument.vmlDrawing":"TODO","application/vnd.openxmlformats-package.relationships+xml":"rels","application/vnd.openxmlformats-officedocument.oleObject":"TODO","image/png":"TODO",sheet:"js"};var ri={workbooks:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",xlsm:"application/vnd.ms-excel.sheet.macroEnabled.main+xml",xlsb:"application/vnd.ms-excel.sheet.binary.macroEnabled.main",xlam:"application/vnd.ms-excel.addin.macroEnabled.main+xml",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},comments:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",xlsb:"application/vnd.ms-excel.comments"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},charts:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml",xlsb:"application/vnd.ms-excel.chartsheet"},dialogs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml",xlsb:"application/vnd.ms-excel.dialogsheet"},macros:{xlsx:"application/vnd.ms-excel.macrosheet+xml",xlsb:"application/vnd.ms-excel.macrosheet"},metadata:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml",xlsb:"application/vnd.ms-excel.sheetMetadata"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};function ti(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function ai(e){var r=ti();if(!e||!e.match)return r;var t={};(e.match(Yr)||[]).forEach(function(e){var a=Jr(e);switch(a[0].replace(Kr,"<")){case"0?r.calcchains[0]:"";r.sst=r.strs.length>0?r.strs[0]:"";r.style=r.styles.length>0?r.styles[0]:"";r.defaults=t;delete r.calcchains;return r}function ni(e,r,t){var a=cr(ei);var n=[],i;if(!t){n[n.length]=Gr;n[n.length]=_t("Types",null,{xmlns:Nt.CT,"xmlns:xsd":Nt.xsd,"xmlns:xsi":Nt.xsi});n=n.concat([["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["vml","application/vnd.openxmlformats-officedocument.vmlDrawing"],["data","application/vnd.openxmlformats-officedocument.model+data"],["bmp","image/bmp"],["png","image/png"],["gif","image/gif"],["emf","image/x-emf"],["wmf","image/x-wmf"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["tif","image/tiff"],["tiff","image/tiff"],["pdf","application/pdf"],["rels","application/vnd.openxmlformats-package.relationships+xml"]].map(function(e){return _t("Default",null,{Extension:e[0],ContentType:e[1]})}))}var s=function(t){if(e[t]&&e[t].length>0){i=e[t][0];n[n.length]=_t("Override",null,{PartName:(i[0]=="/"?"":"/")+i,ContentType:ri[t][r.bookType]||ri[t]["xlsx"]})}};var f=function(t){(e[t]||[]).forEach(function(e){n[n.length]=_t("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:ri[t][r.bookType]||ri[t]["xlsx"]})})};var o=function(r){(e[r]||[]).forEach(function(e){n[n.length]=_t("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:a[r][0]})})};s("workbooks");f("sheets");f("charts");o("themes");["strs","styles"].forEach(s);["coreprops","extprops","custprops"].forEach(o);o("vba");o("comments");o("threadedcomments");o("drawings");f("metadata");o("people");if(!t&&n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}var ii={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument",HLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",VML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",XPATH:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath",XMISS:"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing",XLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink",CXML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml",CXMLP:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps",CMNT:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",SST:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",STY:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",THEME:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",CHART:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart",CHARTEX:"http://schemas.microsoft.com/office/2014/relationships/chartEx",CS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet",WS:["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet","http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"],DS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet",MS:"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet",IMG:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",DRAW:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",XLMETA:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata",TCMNT:"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment",PEOPLE:"http://schemas.microsoft.com/office/2017/10/relationships/person",CONN:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/connections",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function si(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function fi(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Yr)||[]).forEach(function(e){var n=Jr(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function li(e,r,t,a,n,i){if(!n)n={};if(!e["!id"])e["!id"]={};if(!e["!idx"])e["!idx"]=1;if(r<0)for(r=e["!idx"];e["!id"]["rId"+r];++r){}e["!idx"]=r+1;n.Id="rId"+r;n.Type=a;n.Target=t;if(i)n.TargetMode=i;else if([ii.HLINK,ii.XPATH,ii.XMISS].indexOf(n.Type)>-1)n.TargetMode="External";if(e["!id"][n.Id])throw new Error("Cannot rewrite rId "+r);e["!id"][n.Id]=n;e[("/"+n.Target).replace("//","/")]=n;return r}var ci="application/vnd.oasis.opendocument.spreadsheet";function hi(e,r){var t=Rt(e);var a;var n;while(a=It.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Jr(a[0],false);if(n.path=="/"&&n.type!==ci)throw new Error("This OpenDocument is not a spreadsheet");break;case"encryption-data":;case"algorithm":;case"start-key-generation":;case"key-derivation":throw new Error("Unsupported ODS Encryption");default:if(r&&r.WTF)throw a;}}function ui(e){var r=[Gr];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function di(e,r,t){return[' \n',' \n'," \n"].join("")}function pi(e,r){return[' \n',' \n'," \n"].join("")}function vi(e){var r=[Gr];r.push('\n');for(var t=0;t!=e.length;++t){r.push(di(e[t][0],e[t][1]));r.push(pi("",e[t][0]))}r.push(di("","Document","pkg"));r.push("");return r.join("")}function mi(){return'Sheet'+"JS "+e.version+""}var gi=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];var bi=function(){var e=new Array(gi.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function wi(e){var r={};e=mt(e);for(var t=0;t0)r[a[1]]=rt(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=Tr(r[a[1]])}return r}function ki(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=nt(r);a[a.length]=t?_t(e,r,t):Ct(e,r)}function Ti(e,r){var t=r||{};var a=[Gr,_t("cp:coreProperties",null,{"xmlns:cp":Nt.CORE_PROPS,"xmlns:dc":Nt.dc,"xmlns:dcterms":Nt.dcterms,"xmlns:dcmitype":Nt.dcmitype,"xmlns:xsi":Nt.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)ki("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:xt(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)ki("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:xt(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var i=0;i!=gi.length;++i){var s=gi[i];var f=t.Props&&t.Props[s[1]]!=null?t.Props[s[1]]:e?e[s[1]]:null;if(f===true)f="1";else if(f===false)f="0";else if(typeof f=="number")f=String(f);if(f!=null)ki(s[0],f,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var Ai=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]];var Ei=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function yi(e,r,t,a){var n=[];if(typeof e=="string")n=Et(e,a);else for(var i=0;i0)for(var l=0;l!==n.length;l+=2){o=+n[l+1].v;switch(n[l].v){case"Worksheets":;case"工作表":;case"Листы":;case"أوراق العمل":;case"ワークシート":;case"גליונות עבודה":;case"Arbeitsblätter":;case"Çalışma Sayfaları":;case"Feuilles de calcul":;case"Fogli di lavoro":;case"Folhas de cálculo":;case"Planilhas":;case"Regneark":;case"Hojas de cálculo":;case"Werkbladen":t.Worksheets=o;t.SheetNames=s.slice(f,f+o);break;case"Named Ranges":;case"Rangos con nombre":;case"名前付き一覧":;case"Benannte Bereiche":;case"Navngivne områder": +t.NamedRanges=o;t.DefinedNames=s.slice(f,f+o);break;case"Charts":;case"Diagramme":t.Chartsheets=o;t.ChartNames=s.slice(f,f+o);break;}f+=o}}function Ci(e,r,t){var a={};if(!r)r={};e=mt(e);Ai.forEach(function(t){var n=(e.match(bt(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=rt(n);break;case"bool":r[t[1]]=n==="true";break;case"raw":var i=e.match(new RegExp("<"+t[0]+"[^>]*>([\\s\\S]*?)"));if(i&&i.length>0)a[t[1]]=i[1];break;}});if(a.HeadingPairs&&a.TitlesOfParts)yi(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function Si(e){var r=[],t=_t;if(!e)e={};e.Application="SheetJS";r[r.length]=Gr;r[r.length]=_t("Properties",null,{xmlns:Nt.EXT_PROPS,"xmlns:vt":Nt.vt});Ai.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=nt(String(e[a[1]]));break;case"bool":n=e[a[1]]?"true":"false";break;}if(n!==undefined)r[r.length]=t(a[0],n)});r[r.length]=t("HeadingPairs",t("vt:vector",t("vt:variant","Worksheets")+t("vt:variant",t("vt:i4",String(e.Worksheets))),{size:2,baseType:"variant"}));r[r.length]=t("TitlesOfParts",t("vt:vector",e.SheetNames.map(function(e){return""+nt(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var _i=/<[^>]+>[^<]*/g;function xi(e,r){var t={},a="";var n=e.match(_i);if(n)for(var i=0;i!=n.length;++i){var s=n[i],f=Jr(s);switch(qr(f[0])){case"":a=null;break;default:if(s.indexOf("");var l=o[0].slice(4),c=o[1];switch(l){case"lpstr":;case"bstr":;case"lpwstr":t[a]=rt(c);break;case"bool":t[a]=ht(c);break;case"i1":;case"i2":;case"i4":;case"i8":;case"int":;case"uint":t[a]=parseInt(c,10);break;case"r4":;case"r8":;case"decimal":t[a]=parseFloat(c);break;case"filetime":;case"date":t[a]=Tr(c);break;case"cy":;case"error":t[a]=rt(c);break;default:if(l.slice(-1)=="/")break;if(r.WTF&&typeof console!=="undefined")console.warn("Unexpected",s,l,o);}}else if(s.slice(0,2)==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Ri={Title:"Title",Subject:"Subject",Author:"Author",Keywords:"Keywords",Comments:"Description",LastAuthor:"LastAuthor",RevNumber:"Revision",Application:"AppName",LastPrinted:"LastPrinted",CreatedDate:"Created",ModifiedDate:"LastSaved",Category:"Category",Manager:"Manager",Company:"Company",AppVersion:"Version",ContentStatus:"ContentStatus",Identifier:"Identifier",Language:"Language"};var Ii;function Ni(e,r,t){if(!Ii)Ii=or(Ri);r=Ii[r]||r;e[r]=t}function Di(e,r){var t=[];sr(Ri).map(function(e){for(var r=0;r'+n.join("")+""}function Pi(e){var r=e._R(4),t=e._R(4);return new Date((t/1e7*Math.pow(2,32)+r/1e7-11644473600)*1e3).toISOString().replace(/\.000/,"")}function Li(e){var r=typeof e=="string"?new Date(Date.parse(e)):e;var t=r.getTime()/1e3+11644473600;var a=t%Math.pow(2,32),n=(t-a)/Math.pow(2,32);a*=1e7;n*=1e7;var i=a/Math.pow(2,32)|0;if(i>0){a=a%Math.pow(2,32);n+=i}var s=wa(8);s._W(4,a);s._W(4,n);return s}function Mi(e,r,t){var a=e.l;var n=e._R(0,"lpstr-cp");if(t)while(e.l-a&3)++e.l;return n}function Ui(e,r,t){var a=e._R(0,"lpwstr");if(t)e.l+=4-(a.length+1&3)&3;return a}function Bi(e,r,t){if(r===31)return Ui(e);return Mi(e,r,t)}function Wi(e,r,t){return Bi(e,r,t===false?0:4)}function Hi(e,r){if(!r)throw new Error("VtUnalignedString must have positive length");return Bi(e,r,0)}function zi(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a){var n=e.l;t[a]=e._R(0,"lpwstr").replace(P,"");if(e.l-n&2)e.l+=2}return t}function Vi(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a)t[a]=e._R(0,"lpstr-cp").replace(P,"");return t}function Gi(e){var r=e.l;var t=Ki(e,zn);if(e[e.l]==0&&e[e.l+1]==0&&e.l-r&2)e.l+=2;var a=Ki(e,Nn);return[t,a]}function $i(e){var r=e._R(4);var t=[];for(var a=0;a>2+1<<2;return a}function Xi(e){var r=e._R(4);var t=e.slice(e.l,e.l+r);e.l+=r;if((r&3)>0)e.l+=4-(r&3)&3;return t}function Yi(e){var r={};r.Size=e._R(4);e.l+=r.Size+3-(r.Size-1)%4;return r}function Ki(e,r,t){var a=e._R(2),n,i=t||{};e.l+=2;if(r!==Fn)if(a!==r&&Vn.indexOf(r)===-1&&!((r&65534)==4126&&(a&65534)==4126))throw new Error("Expected type "+r+" saw "+a);switch(r===Fn?a:r){case 2:n=e._R(2,"i");if(!i.raw)e.l+=2;return n;case 3:n=e._R(4,"i");return n;case 11:return e._R(4)!==0;case 19:n=e._R(4);return n;case 30:return Mi(e,a,4).replace(P,"");case 31:return Ui(e);case 64:return Pi(e);case 65:return Xi(e);case 71:return Yi(e);case 80:return Wi(e,a,!i.raw).replace(P,"");case 81:return Hi(e,a).replace(P,"");case 4108:return $i(e);case 4126:;case 4127:return a==4127?zi(e):Vi(e);default:throw new Error("TypedPropertyValue unrecognized type "+r+" "+a);}}function Zi(e,r){var t=wa(4),a=wa(4);t._W(4,e==80?31:e);switch(e){case 3:a._W(-4,r);break;case 5:a=wa(8);a._W(8,r,"f");break;case 11:a._W(4,r?1:0);break;case 64:a=Li(r);break;case 31:;case 80:a=wa(4+2*(r.length+1)+(r.length%2?0:2));a._W(4,r.length+1);a._W(0,r,"dbcs");while(a.l!=a.length)a._W(1,0);break;default:throw new Error("TypedPropertyValue unrecognized type "+e+" "+r);}return D([t,a])}function Ji(e,r){var t=e.l;var a=e._R(4);var n=e._R(4);var i=[],s=0;var f=0;var l=-1,c={};for(s=0;s!=n;++s){var h=e._R(4);var u=e._R(4);i[s]=[h,u+t]}i.sort(function(e,r){return e[1]-r[1]});var d={};for(s=0;s!=n;++s){if(e.l!==i[s][1]){var p=true;if(s>0&&r)switch(r[i[s-1][0]].t){case 2:if(e.l+2===i[s][1]){e.l+=2;p=false}break;case 80:if(e.l<=i[s][1]){e.l=i[s][1];p=false}break;case 4108:if(e.l<=i[s][1]){e.l=i[s][1];p=false}break;}if((!r||s==0)&&e.l<=i[s][1]){p=false;e.l=i[s][1]}if(p)throw new Error("Read Error: Expected address "+i[s][1]+" at "+e.l+" :"+s)}if(r){if(i[s][0]==0&&i.length>s+1&&i[s][1]==i[s+1][1])continue;var v=r[i[s][0]];d[v.n]=Ki(e,v.t,{raw:true});if(v.p==="version")d[v.n]=String(d[v.n]>>16)+"."+("0000"+String(d[v.n]&65535)).slice(-4);if(v.n=="CodePage")switch(d[v.n]){case 0:d[v.n]=1252;case 874:;case 932:;case 936:;case 949:;case 950:;case 1250:;case 1251:;case 1253:;case 1254:;case 1255:;case 1256:;case 1257:;case 1258:;case 1e4:;case 1200:;case 1201:;case 1252:;case 65e3:;case-536:;case 65001:;case-535:o(f=d[v.n]>>>0&65535);break;default:throw new Error("Unsupported CodePage: "+d[v.n]);}}else{if(i[s][0]===1){f=d.CodePage=Ki(e,In);o(f);if(l!==-1){var m=e.l;e.l=i[l][1];c=ji(e,f);e.l=m}}else if(i[s][0]===0){if(f===0){l=s;e.l=i[s+1][1];continue}c=ji(e,f)}else{var g=c[i[s][0]];var b;switch(e[e.l]){case 65:e.l+=4;b=Xi(e);break;case 30:e.l+=4;b=Wi(e,e[e.l-4]).replace(/\u0000+$/,"");break;case 31:e.l+=4;b=Wi(e,e[e.l-4]).replace(/\u0000+$/,"");break;case 3:e.l+=4;b=e._R(4,"i");break;case 19:e.l+=4;b=e._R(4);break;case 5:e.l+=4;b=e._R(8,"f");break;case 11:e.l+=4;b=ss(e,4);break;case 64:e.l+=4;b=Tr(Pi(e));break;default:throw new Error("unparsed value: "+e[e.l]);}d[g]=b}}}e.l=t+a;return d}var qi=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function Qi(e){switch(typeof e){case"boolean":return 11;case"number":return(e|0)==e?3:5;case"string":return 31;case"object":if(e instanceof Date)return 64;break;}return-1}function es(e,r,t){var a=wa(8),n=[],i=[];var s=8,f=0;var o=wa(8),l=wa(8);o._W(4,2);o._W(4,1200);l._W(4,1);i.push(o);n.push(l);s+=8+o.length;if(!r){l=wa(8);l._W(4,0);n.unshift(l);var c=[wa(4)];c[0]._W(4,e.length);for(f=0;f-1||Ei.indexOf(e[f][0])>-1)continue;if(e[f][1]==null)continue;var u=e[f][1],d=0;if(r){d=+r[e[f][0]];var p=t[d];if(p.p=="version"&&typeof u=="string"){var v=u.split(".");u=(+v[0]<<16)+(+v[1]||0)}o=Zi(p.t,u)}else{var m=Qi(u);if(m==-1){m=31;u=String(u)}o=Zi(m,u)}i.push(o);l=wa(8);l._W(4,!r?2+f:d);n.push(l);s+=8+o.length}var g=8*(i.length+1);for(f=0;f=12?2:1);var i="sbcs-cont";var s=r;if(a&&a.biff>=8)r=1200;if(!a||a.biff==8){var f=e._R(1);if(f){i="dbcs-cont"}}else if(a.biff==12){i="wstr"}if(a.biff>=2&&a.biff<=5)i="cpstr";var o=n?e._R(n,i):"";r=s;return o}function ps(e){var t=r;r=1200;var a=e._R(2),n=e._R(1);var i=n&4,s=n&8;var f=1+(n&1);var o=0,l;var c={};if(s)o=e._R(2);if(i)l=e._R(4);var h=f==2?"dbcs-cont":"sbcs-cont";var u=a===0?"":e._R(a,h);if(s)e.l+=4*o;if(i)e.l+=l;c.t=u;if(!s){c.raw=""+c.t+"";c.r=c.t}r=t;return c}function vs(e){var r=e.t||"",t=1;var a=wa(3+(t>1?2:0));a._W(2,r.length);a._W(1,(t>1?8:0)|1);if(t>1)a._W(2,t);var n=wa(2*r.length);n._W(2*r.length,r,"utf16le");var i=[a,n];return D(i)}function ms(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 gs(e,r,t){var a=e._R(t&&t.biff==2?1:2);if(a===0){e.l++;return""}return ms(e,a,t)}function bs(e,r,t){if(t.biff>5)return gs(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 ws(e,r,t){if(!t)t=wa(3+2*e.length);t._W(2,e.length);t._W(1,1);t._W(31,e,"utf16le");return t}function ks(e){var r=e._R(1);e.l++;var t=e._R(2);e.l+=2;return[r,t]}function Ts(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(P,"");if(a)e.l+=24;return n}function As(e){var r=e._R(2);var t="";while(r-- >0)t+="../";var a=e._R(0,"lpstr-ansi");e.l+=2;if(e._R(2)!=57005)throw new Error("Bad FileMoniker");var n=e._R(4);if(n===0)return t+a.replace(/\\/g,"/");var i=e._R(4);if(e._R(2)!=3)throw new Error("Bad FileMoniker");var s=e._R(i>>1,"utf16le").replace(P,"");return t+s}function Es(e,r){var t=e._R(16);r-=16;switch(t){case"e0c9ea79f9bace118c8200aa004ba90b":return Ts(e,r);case"0303000000000000c000000000000046":return As(e,r);default:throw new Error("Unsupported Moniker "+t);}}function ys(e){var r=e._R(4);var t=r>0?e._R(r,"utf16le").replace(P,""):"";return t}function Cs(e,r){if(!r)r=wa(6+e.length*2);r._W(4,1+e.length);for(var t=0;t-1?31:23;switch(a.charAt(0)){case"#":i=28;break;case".":i&=~2;break;}r._W(4,2);r._W(4,i);var s=[8,6815827,6619237,4849780,83];for(t=0;t-1?a.slice(0,n):a;r._W(4,2*(f.length+1));for(t=0;t-1?a.slice(n+1):"",r)}else{s="03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46".split(" ");for(t=0;t8?4:2;var n=e._R(a),i=e._R(a,"i"),s=e._R(a,"i");return[n,i,s]}function Ps(e){var r=e._R(2);var t=mn(e);return[r,t]}function Ls(e,r,t){e.l+=4;r-=4;var a=e.l+r;var n=ds(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 Ms(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 Us(e,r){if(!r)r=wa(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 Bs(e){var r=e._R(2);var t=e._R(2);var a=e._R(1);var n=e._R(1);return{s:{c:a,r:r},e:{c:n,r:t}}}var Ws=Bs;function Hs(e){e.l+=4;var r=e._R(2);var t=e._R(2);var a=e._R(2);e.l+=12;return[t,r,a]}function zs(e){var r={};e.l+=4;e.l+=16;r.fSharedNote=e._R(2);e.l+=4;return r}function Vs(e){var r={};e.l+=4;e.cf=e._R(2);return r}function Gs(e){e.l+=2;e.l+=e._R(2)}var $s={0:Gs,4:Gs,5:Gs,6:Gs,7:Vs,8:Gs,9:Gs,10:Gs,11:Gs,12:Gs,13:zs,14:Gs,15:Gs,16:Gs,17:Gs,18:Gs,19:Gs,20:Gs,21:Hs};function js(e,r){var t=e.l+r;var a=[];while(e.l=2){t.dt=e._R(2);e.l-=2}switch(t.BIFFVer){case 1536:;case 1280:;case 1024:;case 768:;case 512:;case 2:;case 7:break;default:if(r>6)throw new Error("Unexpected BIFF Ver "+t.BIFFVer);}e._R(r);return t}function Ys(e,r,t){var a=1536,n=16;switch(t.bookType){case"biff8":break;case"biff5":a=1280;n=8;break;case"biff4":a=4;n=6;break;case"biff3":a=3;n=6;break;case"biff2":a=2;n=4;break;case"xla":break;default:throw new Error("unsupported BIFF version");}var i=wa(n);i._W(2,a);i._W(2,r);if(n>4)i._W(2,29282);if(n>6)i._W(2,1997);if(n>8){i._W(2,49161);i._W(2,1);i._W(2,1798);i._W(2,0)}return i}function Ks(e,r){if(r===0)return 1200;if(e._R(2)!==1200){}return 1200}function Zs(e,r,t){if(t.enc){e.l+=r;return""}var a=e.l;var n=bs(e,0,t);e._R(r+a-e.l);return n}function Js(e,r){var t=!r||r.biff==8;var a=wa(t?112:54);a._W(r.biff==8?2:1,7);if(t)a._W(1,0);a._W(4,859007059);a._W(4,5458548|(t?0:536870912));while(a.l=8?2:1;var a=wa(8+t*e.name.length);a._W(4,e.pos);a._W(1,e.hs||0);a._W(1,e.dt);a._W(1,e.name.length);if(r.biff>=8)a._W(1,1);a._W(t*e.name.length,e.name,r.biff<8?"sbcs":"utf16le");var n=a.slice(0,a.l);n.l=a.l;return n}function rf(e,r){var t=e.l+r;var a=e._R(4);var n=e._R(4);var i=[];for(var s=0;s!=n&&e.l>15);n&=32767}var i={Unsynced:a&1,DyZero:(a&2)>>1,ExAsc:(a&4)>>2,ExDsc:(a&8)>>3};return[i,n]}function lf(e){var r=e._R(2),t=e._R(2),a=e._R(2),n=e._R(2);var i=e._R(2),s=e._R(2),f=e._R(2);var o=e._R(2),l=e._R(2);return{Pos:[r,t],Dim:[a,n],Flags:i,CurTab:s,FirstTab:f,Selected:o,TabRatio:l}}function cf(){var e=wa(18);e._W(2,0);e._W(2,0);e._W(2,29280);e._W(2,17600);e._W(2,56);e._W(2,0);e._W(2,0);e._W(2,1);e._W(2,500);return e}function hf(e,r,t){if(t&&t.biff>=2&&t.biff<5)return{};var a=e._R(2);return{RTL:a&64}}function uf(e){var r=wa(18),t=1718;if(e&&e.RTL)t|=64;r._W(2,t);r._W(4,0);r._W(4,64);r._W(4,0);r._W(4,0);return r}function df(){}function pf(e,r,t){var a={dyHeight:e._R(2),fl:e._R(2)};switch(t&&t.biff||8){case 2:break;case 3:;case 4:e.l+=2;break;default:e.l+=10;break;}a.name=ds(e,0,t);return a}function vf(e,r){var t=e.name||"Arial";var a=r&&r.biff==5,n=a?15+t.length:16+2*t.length;var i=wa(n);i._W(2,(e.sz||12)*20);i._W(4,0);i._W(2,400);i._W(4,0);i._W(2,0);i._W(1,t.length);if(!a)i._W(1,1);i._W((a?1:2)*t.length,t,a?"sbcs":"utf16le");return i}function mf(e){var r=Rs(e);r.isst=e._R(4);return r}function gf(e,r,t,a){var n=wa(10);Is(e,r,a,n);n._W(4,t);return n}function bf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=e.l+r;var n=Rs(e,6);if(t.biff==2)e.l++;var i=gs(e,a-e.l,t);n.val=i;return n}function wf(e,r,t,a,n){var i=!n||n.biff==8;var s=wa(6+2+ +i+(1+i)*t.length);Is(e,r,a,s);s._W(2,t.length);if(i)s._W(1,1);s._W((1+i)*t.length,t,i?"utf16le":"sbcs");return s}function kf(e,r,t){var a=e._R(2);var n=bs(e,0,t);return[a,n]}function Tf(e,r,t,a){var n=t&&t.biff==5;if(!a)a=wa(n?3+r.length:5+2*r.length);a._W(2,e);a._W(n?1:2,r.length);if(!n)a._W(1,1);a._W((n?1:2)*r.length,r,n?"sbcs":"utf16le");var i=a.length>a.l?a.slice(0,a.l):a;if(i.l==null)i.l=i.length;return i}var Af=bs;function Ef(e,r,t){var a=e.l+r;var n=t.biff==8||!t.biff?4:2;var i=e._R(n),s=e._R(n);var f=e._R(2),o=e._R(2);e.l=a;return{s:{r:i,c:f},e:{r:s,c:o}}}function yf(e,r){var t=r.biff==8||!r.biff?4:2;var a=wa(2*t+6);a._W(t,e.s.r);a._W(t,e.e.r+1);a._W(2,e.s.c);a._W(2,e.e.c+1);a._W(2,0);return a}function Cf(e){var r=e._R(2),t=e._R(2);var a=Ps(e);return{r:r,c:t,ixfe:a[0],rknum:a[1]}}function Sf(e,r){var t=e.l+r-2;var a=e._R(2),n=e._R(2);var i=[];while(e.l>26];if(!a.cellStyles)return n;n.alc=i&7;n.fWrap=i>>3&1;n.alcV=i>>4&7;n.fJustLast=i>>7&1;n.trot=i>>8&255;n.cIndent=i>>16&15;n.fShrinkToFit=i>>20&1;n.iReadOrder=i>>22&2;n.fAtrNum=i>>26&1;n.fAtrFnt=i>>27&1;n.fAtrAlc=i>>28&1;n.fAtrBdr=i>>29&1;n.fAtrPat=i>>30&1;n.fAtrProt=i>>31&1;n.dgLeft=s&15;n.dgRight=s>>4&15;n.dgTop=s>>8&15;n.dgBottom=s>>12&15;n.icvLeft=s>>16&127;n.icvRight=s>>23&127;n.grbitDiag=s>>30&3;n.icvTop=f&127;n.icvBottom=f>>7&127;n.icvDiag=f>>14&127;n.dgDiag=f>>21&15;n.icvFore=o&127;n.icvBack=o>>7&127;n.fsxButton=o>>14&1;return n}function Of(e,r,t){var a={};a.ifnt=e._R(2);a.numFmtId=e._R(2);a.flags=e._R(2);a.fStyle=a.flags>>2&1;r-=6;a.data=xf(e,r,a.fStyle,t);return a}function Rf(e,r,t,a){var n=t&&t.biff==5;if(!a)a=wa(n?16:20);a._W(2,0);if(e.style){a._W(2,e.numFmtId||0);a._W(2,65524)}else{a._W(2,e.numFmtId||0);a._W(2,r<<4)}var i=0;if(e.numFmtId>0&&n)i|=1024;a._W(4,i);a._W(4,0);if(!n)a._W(4,0);a._W(2,0);return a}function If(e){e.l+=4;var r=[e._R(2),e._R(2)];if(r[0]!==0)r[0]--;if(r[1]!==0)r[1]--;if(r[0]>7||r[1]>7)throw new Error("Bad Gutters: "+r.join("|"));return r}function Nf(e){var r=wa(8);r._W(4,0);r._W(2,e[0]?e[0]+1:0);r._W(2,e[1]?e[1]+1:0);return r}function Df(e,r,t){var a=Rs(e,6);if(t.biff==2||r==9)++e.l;var n=hs(e,2);a.val=n;a.t=n===true||n===false?"b":"e";return a}function Ff(e,r,t,a,n,i){var s=wa(8);Is(e,r,a,s);us(t,i,s);return s}function Pf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=Rs(e,6);var n=An(e,8);a.val=n;return a}function Lf(e,r,t,a){var n=wa(14);Is(e,r,a,n);En(t,n);return n}var Mf=Ds;function Uf(e,r,t){var a=e.l+r;var n=e._R(2);var i=e._R(2);t.sbcch=i;if(i==1025||i==14849)return[i,n];if(i<1||i>255)throw new Error("Unexpected SupBook type: "+i);var s=ms(e,i);var f=[];while(a>e.l)f.push(gs(e));return[i,n,s,f]}function Bf(e,r,t){var a=e._R(2);var n;var i={fBuiltIn:a&1,fWantAdvise:a>>>1&1,fWantPict:a>>>2&1,fOle:a>>>3&1,fOleLink:a>>>4&1,cf:a>>>5&1023,fIcon:a>>>15&1};if(t.sbcch===14849)n=Ls(e,r-2,t);i.body=n||e._R(r-2);if(typeof n==="string")i.Name=n;return i}function Wf(e,r,t){var a=e.l+r;var n=e._R(2);var i=e._R(1);var s=e._R(1);var f=e._R(t&&t.biff==2?1:2);var o=0;if(!t||t.biff>=5){if(t.biff!=5)e.l+=2;o=e._R(2);if(t.biff==5)e.l+=2;e.l+=4}var l=ms(e,s,t);if(n&32)l=Qn[l.charCodeAt(0)];var c=a-e.l;if(t&&t.biff==2)--c;var h=a==e.l||f===0||!(c>0)?[]:kd(e,c,t,f);return{chKey:i,Name:l,itab:o,rgce:h}}function Hf(e,r,t){if(t.biff<8)return zf(e,r,t);var a=[],n=e.l+r,i=e._R(t.biff>8?4:2);while(i--!==0)a.push(Fs(e,t.biff>8?12:6,t));if(e.l!=n)throw new Error("Bad ExternSheet: "+e.l+" != "+n);return a}function zf(e,r,t){if(e[e.l+1]==3)e[e.l]++;var a=ds(e,r,t);return a.charCodeAt(0)==3?a.slice(1):a}function Vf(e,r,t){if(t.biff<8){e.l+=r;return}var a=e._R(2);var n=e._R(2);var i=ms(e,a,t);var s=ms(e,n,t);return[i,s]}function Gf(e,r,t){var a=Bs(e,6);e.l++;var n=e._R(1);r-=8;return[Td(e,r,t),n,a]}function $f(e,r,t){var a=Ws(e,6);switch(t.biff){case 2:e.l++;r-=7;break;case 3:;case 4:e.l+=2;r-=8;break;default:e.l+=6;r-=12;}return[a,bd(e,r,t,a)]}function jf(e){var r=e._R(4)!==0;var t=e._R(4)!==0;var a=e._R(4);return[r,t,a]}function Xf(e,r,t){if(t.biff<8)return;var a=e._R(2),n=e._R(2);var i=e._R(2),s=e._R(2);var f=bs(e,0,t);if(t.biff<8)e._R(1);return[{r:a,c:n},f,s,i]}function Yf(e,r,t){return Xf(e,r,t)}function Kf(e,r){var t=[];var a=e._R(2);while(a--)t.push(Ms(e,r));return t}function Zf(e){var r=wa(2+e.length*8);r._W(2,e.length);for(var t=0;t=(c?f:2*f))break}if(n.length!==f&&n.length!==f*2){throw new Error("cchText: "+f+" != "+n.length)}e.l=a+r;return{t:n}}catch(u){e.l=a+r;return{t:n}}}function ro(e,r){var t=Ms(e,8);e.l+=16;var a=Ss(e,r-24);return[t,a]}function to(e){var r=wa(24);var t=La(e[0]);r._W(2,t.r);r._W(2,t.r);r._W(2,t.c);r._W(2,t.c);var a="d0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" ");for(var n=0;n<16;++n)r._W(1,parseInt(a[n],16));return D([r,_s(e[1])])}function ao(e,r){e._R(2);var t=Ms(e,8);var a=e._R((r-10)/2,"dbcs-cont");a=a.replace(P,"");return[t,a]}function no(e){var r=e[1].Tooltip;var t=wa(10+2*(r.length+1));t._W(2,2048);var a=La(e[0]);t._W(2,a.r);t._W(2,a.r);t._W(2,a.c);t._W(2,a.c);for(var n=0;n0)t.push(Os(e,8));return t}function oo(e){var r=e._R(2);var t=[];while(r-- >0)t.push(Os(e,8));return t}function lo(e){e.l+=2;var r={cxfs:0,crc:0};r.cxfs=e._R(2);r.crc=e._R(4);return r}function co(e,r,t){if(!t.cellStyles)return ba(e,r);var a=t&&t.biff>=12?4:2;var n=e._R(a);var i=e._R(a);var s=e._R(a);var f=e._R(a);var o=e._R(2);if(a==2)e.l+=2;var l={s:n,e:i,w:s,ixfe:f,flags:o};if(t.biff>=5||!t.biff)l.level=o>>8&7;return l}function ho(e,r){var t=wa(12);t._W(2,r);t._W(2,r);t._W(2,e.width*256);t._W(2,0);var a=0;if(e.hidden)a|=1;t._W(1,a);a=e.level||0;t._W(1,a);t._W(2,0);return t}function uo(e,r){var t={};if(r<32)return t;e.l+=16;t.header=An(e,8);t.footer=An(e,8);e.l+=2;return t}function po(e,r,t){var a={area:false};if(t.biff!=5){e.l+=r;return a}var n=e._R(1);e.l+=3;if(n&16)a.area=true;return a}function vo(e){var r=wa(2*e);for(var t=0;t1048576)c=1e6;if(s!=2)h=i._R(2);var u=i._R(2);var d=t.codepage||1252;if(s!=2){i.l+=16;i._R(1);if(i[i.l]!==0)d=e[i[i.l]];i.l+=1;i.l+=2}if(l)i.l+=36;var p=[],v={};var m=Math.min(i.length,s==2?521:h-10-(o?264:0));var g=l?32:11;while(i.l0){if(i[i.l]===42){i.l+=u;continue}++i.l;n[++b]=[];w=0;for(w=0;w!=p.length;++w){var k=i.slice(i.l,i.l+p[w].len);i.l+=p[w].len;ga(k,0);var T=typeof a!=="undefined"?a.utils.decode(d,k):R(k);switch(p[w].type){case"C":if(T.trim().length)n[b][w]=T.replace(/\s+$/,"");break;case"D":if(T.length===8)n[b][w]=new Date(+T.slice(0,4),+T.slice(4,6)-1,+T.slice(6,8));else n[b][w]=T;break;case"F":n[b][w]=parseFloat(T.trim());break;case"+":;case"I":n[b][w]=l?k._R(-4,"i")^2147483648:k._R(4,"i");break;case"L":switch(T.trim().toUpperCase()){case"Y":;case"T":n[b][w]=true;break;case"N":;case"F":n[b][w]=false;break;case"":;case"?":break;default:throw new Error("DBF Unrecognized L:|"+T+"|");}break;case"M":if(!f)throw new Error("DBF Unexpected MEMO for type "+s.toString(16));n[b][w]="##MEMO##"+(l?parseInt(T.trim(),10):k._R(4));break;case"N":T=T.replace(/\u0000/g,"").trim();if(T&&T!=".")n[b][w]=+T||0;break;case"@":n[b][w]=new Date(k._R(-8,"f")-621356832e5);break;case"T":n[b][w]=new Date((k._R(4)-2440588)*864e5+k._R(4));break;case"Y":n[b][w]=k._R(4,"i")/1e4+k._R(4,"i")/1e4*Math.pow(2,32);break;case"O":n[b][w]=-k._R(-8,"f");break;case"B":if(o&&p[w].len==8){n[b][w]=k._R(8,"f");break};case"G":;case"P":k.l+=p[w].len;break;case"0":if(p[w].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+p[w].type);}}}if(s!=2)if(i.l=0)o(+f.codepage);if(f.type=="string")throw new Error("Cannot write DBF to JS string");var h=Ta();var u=ak(i,{header:1,raw:true,cellDates:true});var d=u[0],p=u.slice(1),v=i["!cols"]||[];var m=0,g=0,b=0,w=1;for(m=0;m250)S=250;C=((v[m]||{}).DBF||{}).type;if(C=="C"){if(v[m].DBF.len>S)S=v[m].DBF.len}if(y=="B"&&C=="N"){y="N";E[m]=v[m].DBF.dec;S=v[m].DBF.len}A[m]=y=="C"||C=="N"?S:l[y]||0;w+=A[m];T[m]=y}var x=h.next(32);x._W(4,318902576);x._W(4,p.length);x._W(2,296+32*b);x._W(2,w);for(m=0;m<4;++m)x._W(4,0);var O=+n[r]||3;x._W(4,0|O<<8);if(e[O]!=+f.codepage){if(f.codepage)console.error("DBF Unsupported codepage "+r+", using 1252");r=1252}for(m=0,g=0;mA[g])F=F.slice(0,A[g]);for(b=0;b":190,"?":191,"{":223};var r=new RegExp("N("+sr(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm");var t=function(r,t){var a=e[t];return typeof a=="number"?v(a):a};var n=function(e,r,t){var a=r.charCodeAt(0)-32<<4|t.charCodeAt(0)-48;return a==59?e:v(a)};e["|"]=254;function i(e,r){switch(r.type){case"base64":return s(A(e),r);case"binary":return s(e,r);case"buffer":return s(E&&Buffer.isBuffer(e)?e.toString("binary"):R(e),r);case"array":return s(Ar(e),r);}throw new Error("Unrecognized type "+r.type)}function s(e,i){var s=e.split(/[\n\r]+/),f=-1,l=-1,c=0,h=0,u=[];var d=[];var p=null;var v={},m=[],g=[],b=[];var w=0,k;var T={Workbook:{WBProps:{},Names:[]}};if(+i.codepage>=0)o(+i.codepage);for(;c!==s.length;++c){w=0;var A=s[c].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,n).replace(r,t);var E=A.replace(/;;/g,"\0").split(";").map(function(e){return e.replace(/\u0000/g,";")});var y=E[0],C;if(A.length>0)switch(y){case"ID":break;case"E":break;case"B":break;case"O":for(h=1;h=1&&S<=4)T.Workbook.WBProps.date1904=true}break;}break;case"W":break;case"P":switch(E[1].charAt(0)){case"P":d.push(A.slice(3).replace(/;;/g,";"));break;}break;case"NN":{var _={Sheet:0};for(h=1;h-1&&u[N][D];if(!L||!L[1])throw new Error("SYLK shared formula cannot find base");F=Bh(L[1],{r:f-N,c:l-D})}if(F){if(!u[f][l])u[f][l]={t:"n",f:F};else u[f][l].f=F}break;case"F":var M=0;for(h=1;h0){m[f].hpt=w;m[f].hpx=$l(w)}else if(w===0)m[f].hidden=true;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+A);}if(M<1)p=null;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+A);}}if(m.length>0)v["!rows"]=m;if(g.length>0)v["!cols"]=g;g.forEach(function(e){Hl(e)});if(i&&i.sheetRows)u=u.slice(0,i.sheetRows);return[u,v,T]}function f(e,r){var t=i(e,r);var a=t[0],n=t[1],s=t[2];var f=Er(r);f.date1904=(((s||{}).Workbook||{}).WBProps||{}).date1904;var o=Xa(a,f);sr(n).forEach(function(e){o[e]=n[e]});var l=$a(o,r);sr(s).forEach(function(e){l[e]=s[e]});l.bookType="sylk";return l}function l(e,r,t,a){var n="C;Y"+(t+1)+";X"+(a+1)+";K";switch(e.t){case"n":n+=e.v||0;if(e.f&&!e.F)n+=";E"+Uh(e.f,{r:t,c:a});break;case"b":n+=e.v?"TRUE":"FALSE";break;case"e":n+=e.w||e.v;break;case"d":n+='"'+(e.w||e.v)+'"';break;case"s":n+='"'+(e.v==null?"":String(e.v)).replace(/"/g,"").replace(/;/g,";;")+'"';break;}return n}function c(e,r){r.forEach(function(r,t){var a="F;W"+(t+1)+" "+(t+1)+" ";if(r.hidden)a+="0";else{if(typeof r.width=="number"&&!r.wpx)r.wpx=Ll(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=Ml(r.wpx);if(typeof r.wch=="number")a+=Math.round(r.wch)}if(a.charAt(a.length-1)!=" ")e.push(a)})}function h(e,r){r.forEach(function(r,t){var a="F;";if(r.hidden)a+="M0;";else if(r.hpt)a+="M"+20*r.hpt+";";else if(r.hpx)a+="M"+20*Gl(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function u(e,r,t){var a=["ID;PSheetJS;N;E"],n=[];var i=za(e["!ref"]),s;var f=e["!data"]!=null;var o="\r\n";var u=(((t||{}).Workbook||{}).WBProps||{}).date1904;a.push("P;PGeneral");a.push("F;P0;DG0G8;M255");if(e["!cols"])c(a,e["!cols"]);if(e["!rows"])h(a,e["!rows"]);a.push("B;Y"+(i.e.r-i.s.r+1)+";X"+(i.e.c-i.s.c+1)+";D"+[i.s.c,i.s.r,i.e.c,i.e.r].join(" "));a.push("O;L;D;B"+(u?";V4":"")+";K47;G100 0.001");for(var d=i.s.r;d<=i.e.r;++d){if(f&&!e["!data"][d])continue;var p=[];for(var v=i.s.c;v<=i.e.c;++v){s=f?e["!data"][d][v]:e[Na(v)+xa(d)];if(!s||s.v==null&&(!s.f||s.F))continue;p.push(l(s,e,d,v,r))}n.push(p.join(o))}return a.join(o)+o+n.join(o)+o+"E"+o}return{to_workbook:f,from_sheet:u}}();var Io=function(){function e(e,t){switch(t.type){case"base64":return r(A(e),t);case"binary":return r(e,t);case"buffer":return r(E&&Buffer.isBuffer(e)?e.toString("binary"):R(e),t);case"array":return r(Ar(e),t);}throw new Error("Unrecognized type "+t.type)}function r(e,r){var t=e.split("\n"),a=-1,n=-1,i=0,s=[];for(;i!==t.length;++i){if(t[i].trim()==="BOT"){s[++a]=[];n=0;continue}if(a<0)continue;var f=t[i].trim().split(",");var o=f[0],l=f[1];++i;var c=t[i]||"";while((c.match(/["]/g)||[]).length&1&&i=0&&i[s].length===0)--s;var f=10,o=0;var l=0;for(;l<=s;++l){o=i[l].indexOf(" ");if(o==-1)o=i[l].length;else o++;f=Math.max(f,o)}for(l=0;l<=s;++l){n[l]=[];var c=0;e(i[l].slice(0,f).trim(),n,l,c,a);for(c=1;c<=(i[l].length-f)/10+1;++c)e(i[l].slice(f+(c-1)*10,f+c*10).trim(),n,l,c,a)}if(a.sheetRows)n=n.slice(0,a.sheetRows);return n}var t={44:",",9:"\t",59:";",124:"|"};var n={44:3,9:2,59:1,124:0};function i(e){var r={},a=false,i=0,s=0;for(;i0)b();n["!ref"]=Ba(s);return n}function f(e,t){if(!(t&&t.PRN))return s(e,t);if(t.FS)return s(e,t);if(e.slice(0,4)=="sep=")return s(e,t);if(e.indexOf("\t")>=0||e.indexOf(",")>=0||e.indexOf(";")>=0)return s(e,t);return Xa(r(e,t),t)}function o(e,r){var t="",n=r.type=="string"?[0,0,0,0]:Iw(e,r);switch(r.type){case"base64":t=A(e);break;case"binary":t=e;break;case"buffer":if(r.codepage==65001)t=e.toString("utf8");else if(r.codepage&&typeof a!=="undefined")t=a.utils.decode(r.codepage,e);else t=E&&Buffer.isBuffer(e)?e.toString("binary"):R(e);break;case"array":t=Ar(e);break;case"string":t=e;break;default:throw new Error("Unrecognized type "+r.type);}if(n[0]==239&&n[1]==187&&n[2]==191)t=mt(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=mt(t);else if(r.type=="binary"&&typeof a!=="undefined"&&r.codepage)t=a.utils.decode(r.codepage,a.utils.encode(28591,t));if(t.slice(0,19)=="socialcalc:version:")return No.to_sheet(r.type=="string"?t:mt(t),r);return f(t,r)}function l(e,r){return $a(o(e,r),r)}function c(e){var r=[];var t=za(e["!ref"]),a;var n=e["!data"]!=null;for(var i=t.s.r;i<=t.e.r;++i){var s=[];for(var f=t.s.c;f<=t.e.c;++f){var o=Ma({r:i,c:f});a=n?(e["!data"][i]||[])[f]:e[o];if(!a||a.v==null){s.push(" ");continue}var l=(a.w||(Ga(a),a.w)||"").slice(0,10);while(l.length<10)l+=" ";s.push(l+(f===0?" ":""))}r.push(s.join(""))}return r.join("\n")}return{to_workbook:l,to_sheet:o,from_sheet:c}}();function Fo(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=Ro.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 Do.to_workbook(e,r)}}var Po=function(){function e(e,r,t){if(!e)return;ga(e,e.l||0);var a=t.Enum||H;while(e.l=16&&r[14]==5&&r[15]===108)throw new Error("Unsupported Works 3 for Mac file")}}if(r[2]==2){a.Enum=H;e(r,function(e,r,t){switch(t){case 0:a.vers=e;if(e>=4096)a.qpro=true;break;case 255:a.vers=e;a.works=true;break;case 6:u=e;break;case 204:if(e)s=e;break;case 222:s=e;break;case 15:;case 51:if((!a.qpro&&!a.works||t==51)&&e[1].v.charCodeAt(0)<48)e[1].v=e[1].v.slice(1);if(a.works||a.works2)e[1].v=e[1].v.replace(/\r\n/g,"\n");case 13:;case 14:;case 16:if(t==14&&(e[2]&112)==112&&(e[2]&15)>1&&(e[2]&15)<15){e[1].z=a.dateNF||Z[14];if(a.cellDates){e[1].t="d";e[1].v=mr(e[1].v)}}if(a.qpro){if(e[3]>f){n["!ref"]=Ba(u);o[i]=n;l.push(i);n={};if(a.dense)h=n["!data"]=[];u={s:{r:0,c:0},e:{r:0,c:0}};f=e[3];i=s||"Sheet"+(f+1);s=""}}var c=a.dense?(h[e[0].r]||[])[e[0].c]:n[Ma(e[0])];if(c){c.t=e[1].t;c.v=e[1].v;if(e[1].z!=null)c.z=e[1].z;if(e[1].f!=null)c.f=e[1].f;break}if(a.dense){if(!h[e[0].r])h[e[0].r]=[];h[e[0].r][e[0].c]=e[1]}else n[Ma(e[0])]=e[1];break;case 21509:a.works2=true;break;default:;}},a)}else if(r[2]==26||r[2]==14){a.Enum=z;if(r[2]==14){a.qpro=true;r.l=0}e(r,function(e,r,t){switch(t){case 204:i=e;break;case 22:if(e[1].v.charCodeAt(0)<48)e[1].v=e[1].v.slice(1);e[1].v=e[1].v.replace(/\x0F./g,function(e){return String.fromCharCode(e.charCodeAt(1)-32)}).replace(/\r\n/g,"\n");case 23:;case 24:;case 25:;case 37:;case 39:;case 40:if(e[3]>f){n["!ref"]=Ba(u);o[i]=n;l.push(i);n={};if(a.dense)h=n["!data"]=[];u={s:{r:0,c:0},e:{r:0,c:0}};f=e[3];i="Sheet"+(f+1)}if(d>0&&e[0].r>=d)break;if(a.dense){if(!h[e[0].r])h[e[0].r]=[];h[e[0].r][e[0].c]=e[1]}else n[Ma(e[0])]=e[1];if(u.e.c=0)o(+t.codepage);if(t.type=="string")throw new Error("Cannot write WK1 to JS string");var a=Ta();var n=za(e["!ref"]);var s=e["!data"]!=null;var f=[];Pg(a,0,i(1030));Pg(a,6,l(n));var c=Math.min(n.e.r,8191);for(var h=n.s.c;h<=n.e.c;++h)f[h]=Na(h);for(var d=n.s.r;d<=c;++d){var p=xa(d);for(h=n.s.c;h<=n.e.c;++h){var m=s?(e["!data"][d]||[])[h]:e[f[h]+p];if(!m||m.t=="z")continue;if(m.t=="n"){if((m.v|0)==m.v&&m.v>=-32768&&m.v<=32767)Pg(a,13,v(d,h,m.v));else Pg(a,14,b(d,h,m.v))}else{var g=Ga(m);Pg(a,15,u(d,h,g.slice(0,239)))}}}Pg(a,1);return a.end()}function n(e,r){var t=r||{};if(+t.codepage>=0)o(+t.codepage);if(t.type=="string")throw new Error("Cannot write WK3 to JS string");var a=Ta();Pg(a,0,s(e));for(var n=0,i=0;n8191)t=8191;r._W(2,t);r._W(1,n);r._W(1,a);r._W(2,0);r._W(2,0);r._W(1,1);r._W(1,2);r._W(4,0);r._W(4,0);return r}function f(e,r,t){var a={s:{c:0,r:0},e:{c:0,r:0}};if(r==8&&t.qpro){a.s.c=e._R(1);e.l++;a.s.r=e._R(2);a.e.c=e._R(1);e.l++;a.e.r=e._R(2);return a}a.s.c=e._R(2);a.s.r=e._R(2);if(r==12&&t.qpro)e.l+=2;a.e.c=e._R(2);a.e.r=e._R(2);if(r==12&&t.qpro)e.l+=2;if(a.s.c==65535)a.s.c=a.e.c=a.s.r=a.e.r=0;return a}function l(e){var r=wa(8);r._W(2,e.s.c);r._W(2,e.s.r);r._W(2,e.e.c);r._W(2,e.e.r);return r}function c(e,r,t){var a=[{c:0,r:0},{t:"n",v:0},0,0];if(t.qpro&&t.vers!=20768){a[0].c=e._R(1);a[3]=e._R(1);a[0].r=e._R(2);e.l+=2}else if(t.works){a[0].c=e._R(2);a[0].r=e._R(2);a[2]=e._R(2)}else{a[2]=e._R(1);a[0].c=e._R(2);a[0].r=e._R(2)}return a}function h(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].t="s";if(t.vers==20768){e.l++;var i=e._R(1);n[1].v=e._R(i,"utf8");return n}if(t.qpro)e.l++;n[1].v=e._R(a-e.l,"cstr");return n}function u(e,r,t){var a=wa(7+t.length);a._W(1,255);a._W(2,r);a._W(2,e);a._W(1,39);for(var n=0;n=128?95:i)}a._W(1,0);return a}function d(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].t="s";if(t.vers==20768){var i=e._R(1);n[1].v=e._R(i,"utf8");return n}n[1].v=e._R(a-e.l,"cstr");return n}function p(e,r,t){var a=c(e,r,t);a[1].v=e._R(2,"i");return a}function v(e,r,t){var a=wa(7);a._W(1,255);a._W(2,r);a._W(2,e);a._W(2,t,"i");return a}function m(e,r,t){var a=c(e,r,t);a[1].v=e._R(8,"f");return a}function b(e,r,t){var a=wa(13);a._W(1,255);a._W(2,r);a._W(2,e);a._W(8,t,"f");return a}function w(e,r,t){var a=e.l+r;var n=c(e,r,t);n[1].v=e._R(8,"f");if(t.qpro)e.l=a;else{var i=e._R(2);y(e.slice(e.l,e.l+i),n);e.l+=i}return n}function k(e,r,t){var a=r&32768;r&=~32768;r=(a?e:0)+(r>=8192?r-16384:r);return(a?"":"$")+(t?Na(r):xa(r))}var T={31:["NA",0],33:["ABS",1],34:["TRUNC",1],35:["SQRT",1],36:["LOG",1],37:["LN",1],38:["PI",0],39:["SIN",1],40:["COS",1],41:["TAN",1],42:["ATAN2",2],43:["ATAN",1],44:["ASIN",1],45:["ACOS",1],46:["EXP",1],47:["MOD",2],49:["ISNA",1],50:["ISERR",1],51:["FALSE",0],52:["TRUE",0],53:["RAND",0],63:["ROUND",2],68:["ISNUMBER",1],69:["ISTEXT",1],70:["LEN",1],71:["VALUE",1],73:["MID",3],74:["CHAR",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],102:["UPPER",1],103:["LOWER",1],107:["PROPER",1],109:["TRIM",1],111:["T",1]};var E=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function y(e,r){ga(e,0);var t=[],a=0,n="",i="",s="",f="";while(e.lt.length){console.error("WK1 bad formula parse 0x"+o.toString(16)+":|"+t.join("|")+"|");return}var u=t.slice(-a);t.length-=a;t.push(T[o][0]+"("+u.join(",")+")")}else if(o<=7)return console.error("WK1 invalid opcode "+o.toString(16));else if(o<=24)return console.error("WK1 unsupported op "+o.toString(16));else if(o<=30)return console.error("WK1 invalid opcode "+o.toString(16));else if(o<=115)return console.error("WK1 unsupported function opcode "+o.toString(16));else return console.error("WK1 unrecognized opcode "+o.toString(16));}}if(t.length==1)r[1].f=""+t[0];else console.error("WK1 bad formula parse |"+t.join("|")+"|")}function C(e){var r=[{c:0,r:0},{t:"n",v:0},0];r[0].r=e._R(2);r[3]=e[e.l++];r[0].c=e[e.l++];return r}function S(e,r){var t=C(e,r);t[1].t="s";t[1].v=e._R(r-4,"cstr");return t}function _(e,r,t,a){var n=wa(6+a.length);n._W(2,e);n._W(1,t);n._W(1,r);n._W(1,39);for(var i=0;i=128?95:s)}n._W(1,0);return n}function O(e,r){var t=C(e,r);t[1].v=e._R(2);var a=t[1].v>>1;if(t[1].v&1){switch(a&7){case 0:a=(a>>3)*5e3;break;case 1:a=(a>>3)*500;break;case 2:a=(a>>3)/20;break;case 3:a=(a>>3)/200;break;case 4:a=(a>>3)/2e3;break;case 5:a=(a>>3)/2e4;break;case 6:a=(a>>3)/16;break;case 7:a=(a>>3)/64;break;}}t[1].v=a;return t}function R(e,r){var t=C(e,r);var a=e._R(4);var n=e._R(4); +var i=e._R(2);if(i==65535){if(a===0&&n===3221225472){t[1].t="e";t[1].v=15}else if(a===0&&n===3489660928){t[1].t="e";t[1].v=42}else t[1].v=0;return t}var s=i&32768;i=(i&32767)-16446;t[1].v=(1-s*2)*(n*Math.pow(2,i+32)+a*Math.pow(2,i));return t}function I(e,r,t,a){var n=wa(14);n._W(2,e);n._W(1,t);n._W(1,r);if(a==0){n._W(4,0);n._W(4,0);n._W(2,65535);return n}var i=0,s=0,f=0,o=0;if(a<0){i=1;a=-a}s=Math.log2(a)|0;a/=Math.pow(2,s-31);o=a>>>0;if((o&2147483648)==0){a/=2;++s;o=a>>>0}a-=o;o|=2147483648;o>>>=0;a*=Math.pow(2,32);f=a>>>0;n._W(4,f);n._W(4,o);s+=16383+(i?32768:0);n._W(2,s);return n}function N(e,r){var t=R(e,14);e.l+=r-14;return t}function D(e,r){var t=C(e,r);var a=e._R(4);t[1].v=a>>6;return t}function F(e,r){var t=C(e,r);var a=e._R(8,"f");t[1].v=a;return t}function P(e,r){var t=F(e,12);e.l+=r-12;return t}function L(e,r){return e[e.l+r-1]==0?e._R(r,"cstr"):""}function M(e,r){var t=e[e.l++];if(t>r-1)t=r-1;var a="";while(a.length127?95:n}t[t.l++]=0;return t}var H={0:{n:"BOF",f:os},1:{n:"EOF"},2:{n:"CALCMODE"},3:{n:"CALCORDER"},4:{n:"SPLIT"},5:{n:"SYNC"},6:{n:"RANGE",f:f},7:{n:"WINDOW1"},8:{n:"COLW1"},9:{n:"WINTWO"},10:{n:"COLW2"},11:{n:"NAME"},12:{n:"BLANK"},13:{n:"INTEGER",f:p},14:{n:"NUMBER",f:m},15:{n:"LABEL",f:h},16:{n:"FORMULA",f:w},24:{n:"TABLE"},25:{n:"ORANGE"},26:{n:"PRANGE"},27:{n:"SRANGE"},28:{n:"FRANGE"},29:{n:"KRANGE1"},32:{n:"HRANGE"},35:{n:"KRANGE2"},36:{n:"PROTEC"},37:{n:"FOOTER"},38:{n:"HEADER"},39:{n:"SETUP"},40:{n:"MARGINS"},41:{n:"LABELFMT"},42:{n:"TITLES"},43:{n:"SHEETJS"},45:{n:"GRAPH"},46:{n:"NGRAPH"},47:{n:"CALCCOUNT"},48:{n:"UNFORMATTED"},49:{n:"CURSORW12"},50:{n:"WINDOW"},51:{n:"STRING",f:d},55:{n:"PASSWORD"},56:{n:"LOCKED"},60:{n:"QUERY"},61:{n:"QUERYNAME"},62:{n:"PRINT"},63:{n:"PRINTNAME"},64:{n:"GRAPH2"},65:{n:"GRAPHNAME"},66:{n:"ZOOM"},67:{n:"SYMSPLIT"},68:{n:"NSROWS"},69:{n:"NSCOLS"},70:{n:"RULER"},71:{n:"NNAME"},72:{n:"ACOMM"},73:{n:"AMACRO"},74:{n:"PARSE"},102:{n:"PRANGES??"},103:{n:"RRANGES??"},104:{n:"FNAME??"},105:{n:"MRANGES??"},204:{n:"SHEETNAMECS",f:L},222:{n:"SHEETNAMELP",f:M},255:{n:"BOF",f:os},65535:{n:""}};var z={0:{n:"BOF"},1:{n:"EOF"},2:{n:"PASSWORD"},3:{n:"CALCSET"},4:{n:"WINDOWSET"},5:{n:"SHEETCELLPTR"},6:{n:"SHEETLAYOUT"},7:{n:"COLUMNWIDTH"},8:{n:"HIDDENCOLUMN"},9:{n:"USERRANGE"},10:{n:"SYSTEMRANGE"},11:{n:"ZEROFORCE"},12:{n:"SORTKEYDIR"},13:{n:"FILESEAL"},14:{n:"DATAFILLNUMS"},15:{n:"PRINTMAIN"},16:{n:"PRINTSTRING"},17:{n:"GRAPHMAIN"},18:{n:"GRAPHSTRING"},19:{n:"??"},20:{n:"ERRCELL"},21:{n:"NACELL"},22:{n:"LABEL16",f:S},23:{n:"NUMBER17",f:R},24:{n:"NUMBER18",f:O},25:{n:"FORMULA19",f:N},26:{n:"FORMULA1A"},27:{n:"XFORMAT",f:B},28:{n:"DTLABELMISC"},29:{n:"DTLABELCELL"},30:{n:"GRAPHWINDOW"},31:{n:"CPA"},32:{n:"LPLAUTO"},33:{n:"QUERY"},34:{n:"HIDDENSHEET"},35:{n:"??"},37:{n:"NUMBER25",f:D},38:{n:"??"},39:{n:"NUMBER27",f:F},40:{n:"FORMULA28",f:P},142:{n:"??"},147:{n:"??"},150:{n:"??"},151:{n:"??"},152:{n:"??"},153:{n:"??"},154:{n:"??"},155:{n:"??"},156:{n:"??"},163:{n:"??"},174:{n:"??"},175:{n:"??"},176:{n:"??"},177:{n:"??"},184:{n:"??"},185:{n:"??"},186:{n:"??"},187:{n:"??"},188:{n:"??"},195:{n:"??"},201:{n:"??"},204:{n:"SHEETNAMECS",f:L},205:{n:"??"},206:{n:"??"},207:{n:"??"},208:{n:"??"},256:{n:"??"},259:{n:"??"},260:{n:"??"},261:{n:"??"},262:{n:"??"},263:{n:"??"},265:{n:"??"},266:{n:"??"},267:{n:"??"},268:{n:"??"},270:{n:"??"},271:{n:"??"},384:{n:"??"},389:{n:"??"},390:{n:"??"},393:{n:"??"},396:{n:"??"},512:{n:"??"},514:{n:"??"},513:{n:"??"},516:{n:"??"},517:{n:"??"},640:{n:"??"},641:{n:"??"},642:{n:"??"},643:{n:"??"},644:{n:"??"},645:{n:"??"},646:{n:"??"},647:{n:"??"},648:{n:"??"},658:{n:"??"},659:{n:"??"},660:{n:"??"},661:{n:"??"},662:{n:"??"},665:{n:"??"},666:{n:"??"},768:{n:"??"},772:{n:"??"},1537:{n:"SHEETINFOQP",f:U},1600:{n:"??"},1602:{n:"??"},1793:{n:"??"},1794:{n:"??"},1795:{n:"??"},1796:{n:"??"},1920:{n:"??"},2048:{n:"??"},2049:{n:"??"},2052:{n:"??"},2688:{n:"??"},10998:{n:"??"},12849:{n:"??"},28233:{n:"??"},28484:{n:"??"},65535:{n:""}};function V(e,r){ga(e,0);var t=r||{};if(g!=null&&t.dense==null)t.dense=g;var a={};if(t.dense)a["!data"]=[];var n=[],i="",s=[];var f={s:{r:-1,c:-1},e:{r:-1,c:-1}};var o=0,l=0,c=0,h=0;var u={SheetNames:[],Sheets:{}};e:while(e.l255||f.s.r>999999)break;if(f.e.cc)f.s.c=c;h=v._R(4);if(f.s.r>h)f.s.r=h;h=v._R(4);if(f.e.rh)f.s.r=h;if(f.e.r0&&o>=0){if(k&32)switch(k&31){case 2:w={t:"n",v:w.v+A&65535};break;case 3:w={t:"n",v:w.v+A&65535};if(w.v>32767)w.v-=65536;break;case 7:w={t:"s",v:n[l=l+A>>>0]};break;default:throw"Cannot apply delta for QPW cell type "+(k&31);}else switch(k&31){case 1:w={t:"z"};break;case 2:w={t:"n",v:v._R(2)};break;case 7:w={t:"s",v:n[l=v._R(4)-1]};break;default:throw"Cannot apply repeat for QPW cell type "+(k&31);}if(!(!t.sheetStubs&&w.t=="z")){if(a["!data"]!=null){if(!a["!data"][h])a["!data"][h]=[];a["!data"][h][c]=w}else a[b+xa(h)]=w}++h;--o}}}break;default:break;}e.l+=p}return u}return{sheet_to_wk1:a,book_to_wk3:n,to_workbook:r}}();function Lo(e){var r={},t=e.match(Yr),a=0;var n=false;if(t)for(;a!=t.length;++a){var s=Jr(t[a]);switch(s[0].replace(/\w*:/g,"")){case"":;case"":r.shadow=1;break;case"":break;case"":;case"":r.outline=1;break;case"":break;case"":;case"":r.strike=1;break;case"":break;case"":;case"":r.u=1;break;case"":break;case"":;case"":r.b=1;break;case"":break;case"":;case"":r.i=1;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"
":break;case"":n=false;break;default:if(s[0].charCodeAt(1)!==47&&!n)throw new Error("Unrecognized rich format "+s[0]);}}return r}var Mo=function(){var e=bt("t"),r=bt("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:rt(a[1])};var i=t.match(r);if(i)n.s=Lo(i[1]);return n}var a=/<(?:\w+:)?r>/g,n=/<\/(?:\w+:)?r>/;return function i(e){return e.replace(a,"").split(n).map(t).filter(function(e){return e.v})}}();var Uo=function $k(){var e=/(\r\n|\n)/g;function r(e,r,t){var a=[];if(e.u)a.push("text-decoration: underline;");if(e.uval)a.push("text-underline-style:"+e.uval+";");if(e.sz)a.push("font-size:"+e.sz+"pt;");if(e.outline)a.push("text-effect: outline;");if(e.shadow)a.push("text-shadow: auto;");r.push('');if(e.b){r.push("");t.push("")}if(e.i){r.push("");t.push("")}if(e.strike){r.push("");t.push("")}var n=e.valign||"";if(n=="superscript"||n=="super")n="sup";else if(n=="subscript")n="sub";if(n!=""){r.push("<"+n+">");t.push("")}t.push("");return e}function t(t){var a=[[],t.v,[]];if(!t.v)return"";if(t.s)r(t.s,a[0],a[2]);return a[0].join("")+a[1].replace(e,"
")+a[2].join("")}return function a(e){return e.map(t).join("")}}();var Bo=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,Wo=/<(?:\w+:)?r>/;var Ho=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function zo(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=rt(mt(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""),true);a.r=mt(e);if(t)a.h=ft(a.t)}else if(e.match(Wo)){a.r=mt(e);a.t=rt(mt((e.replace(Ho,"").match(Bo)||[]).join("").replace(Yr,"")),true);if(t)a.h=Uo(Mo(a.r))}return a}var Vo=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var Go=/<(?:\w+:)?(?:si|sstItem)>/g;var $o=/<\/(?:\w+:)?(?:si|sstItem)>/;function jo(e,r){var t=[],a="";if(!e)return t;var n=e.match(Vo);if(n){a=n[2].replace(Go,"").split($o);for(var i=0;i!=a.length;++i){var s=zo(a[i].trim(),r);if(s!=null)t[t.length]=s}n=Jr(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var Xo=/^\s|\s$|[\t\n\r]/;function Yo(e,r){if(!r.bookSST)return"";var t=[Gr];t[t.length]=_t("sst",null,{xmlns:Dt[0],count:e.Count,uniqueCount:e.Unique});for(var a=0;a!=e.length;++a){if(e[a]==null)continue;var n=e[a];var i="";if(n.r)i+=n.r;else{i+=""}i+="";t[t.length]=i}if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}function Ko(e){return[e._R(4),e._R(4)]}function Zo(e,r){var t=[];var a=false;ka(e,function n(e,i,s){switch(s){case 159:t.Count=e[0];t.Unique=e[1];break;case 19:t.push(e);break;case 160:return true;case 35:a=true;break;case 36:a=false;break;default:if(i.T){}if(!a||r.WTF)throw new Error("Unexpected record 0x"+s.toString(16));}});return t}function Jo(e,r){if(!r)r=wa(8);r._W(4,e.Count);r._W(4,e.Unique);return r}var qo=rn;function Qo(e){var r=Ta();Aa(r,159,Jo(e));for(var t=0;t=4)e.l+=r-4;return t}function tl(e){var r={};r.id=e._R(0,"lpp4");r.R=rl(e,4);r.U=rl(e,4);r.W=rl(e,4);return r}function al(e){var r=e._R(4);var t=e.l+r-4;var a={};var n=e._R(4);var i=[];while(n-- >0)i.push({t:e._R(4),v:e._R(0,"lpp4")});a.name=e._R(0,"lpp4");a.comps=i;if(e.l!=t)throw new Error("Bad DataSpaceMapEntry: "+e.l+" != "+t);return a}function nl(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(al(e));return r}function il(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(e._R(0,"lpp4"));return r}function sl(e){var r={};e._R(4);e.l+=4;r.id=e._R(0,"lpp4");r.name=e._R(0,"lpp4");r.R=rl(e,4);r.U=rl(e,4);r.W=rl(e,4);return r}function fl(e){var r=sl(e);r.ename=e._R(0,"8lpp4");r.blksz=e._R(4);r.cmode=e._R(4);if(e._R(4)!=4)throw new Error("Bad !Primary record");return r}function ol(e,r){var t=e.l+r;var a={};a.Flags=e._R(4)&63;e.l+=4;a.AlgID=e._R(4);var n=false;switch(a.AlgID){case 26126:;case 26127:;case 26128:n=a.Flags==36;break;case 26625:n=a.Flags==4;break;case 0:n=a.Flags==16||a.Flags==4||a.Flags==36;break;default:throw"Unrecognized encryption algorithm: "+a.AlgID;}if(!n)throw new Error("Encryption Flags/AlgID mismatch");a.AlgIDHash=e._R(4);a.KeySize=e._R(4);a.ProviderType=e._R(4);e.l+=8;a.CSPName=e._R(t-e.l>>1,"utf16le");e.l=t;return a}function ll(e,r){var t={},a=e.l+r;e.l+=4;t.Salt=e.slice(e.l,e.l+16);e.l+=16;t.Verifier=e.slice(e.l,e.l+16);e.l+=16;e._R(4);t.VerifierHash=e.slice(e.l,a);e.l=a;return t}function cl(e){var r=rl(e);switch(r.Minor){case 2:return[r.Minor,hl(e,r)];case 3:return[r.Minor,ul(e,r)];case 4:return[r.Minor,dl(e,r)];}throw new Error("ECMA-376 Encrypted file unrecognized Version: "+r.Minor)}function hl(e){var r=e._R(4);if((r&63)!=36)throw new Error("EncryptionInfo mismatch");var t=e._R(4);var a=ol(e,t);var n=ll(e,e.length-e.l);return{t:"Std",h:a,v:n}}function ul(){throw new Error("File is password-protected: ECMA-376 Extensible")}function dl(e){var r=["saltSize","blockSize","keyBits","hashSize","cipherAlgorithm","cipherChaining","hashAlgorithm","saltValue"];e.l+=4;var t=e._R(e.length-e.l,"utf8");var a={};t.replace(Yr,function n(e){var t=Jr(e);switch(qr(t[0])){case"":break;case"":;case"":break;case"":break;case"4||a.Major<2)throw new Error("unrecognized major version code: "+a.Major);t.Flags=e._R(4);r-=4;var n=e._R(4);r-=4;t.EncryptionHeader=ol(e,n);r-=n;t.EncryptionVerifier=ll(e,r);return t}function vl(e){var r={};var t=r.EncryptionVersionInfo=rl(e,4);if(t.Major!=1||t.Minor!=1)throw"unrecognized version code "+t.Major+" : "+t.Minor;r.Salt=e._R(16);r.EncryptedVerifier=e._R(16);r.EncryptedVerifierHash=e._R(16);return r}function ml(e){var r=0,t;var a=el(e);var n=a.length+1,i,s;var f,o,l;t=S(n);t[0]=a.length;for(i=1;i!=n;++i)t[i]=a[i-1];for(i=n-1;i>=0;--i){s=t[i];f=(r&16384)===0?0:1;o=r<<1&32767;l=f|o;r=l^s}return r^52811}var gl=function(){var e=[187,255,255,186,255,255,185,128,0,190,15,0,191,15,0];var r=[57840,7439,52380,33984,4364,3600,61902,12606,6258,57657,54287,34041,10252,43370,20163];var t=[44796,19929,39858,10053,20106,40212,10761,31585,63170,64933,60267,50935,40399,11199,17763,35526,1453,2906,5812,11624,23248,885,1770,3540,7080,14160,28320,56640,55369,41139,20807,41614,21821,43642,17621,28485,56970,44341,19019,38038,14605,29210,60195,50791,40175,10751,21502,43004,24537,18387,36774,3949,7898,15796,31592,63184,47201,24803,49606,37805,14203,28406,56812,17824,35648,1697,3394,6788,13576,27152,43601,17539,35078,557,1114,2228,4456,30388,60776,51953,34243,7079,14158,28316,14128,28256,56512,43425,17251,34502,7597,13105,26210,52420,35241,883,1766,3532,4129,8258,16516,33032,4657,9314,18628];var a=function(e){return(e/2|e*128)&255};var n=function(e,r){return a(e^r)};var i=function(e){var a=r[e.length-1];var n=104;for(var i=e.length-1;i>=0;--i){var s=e[i];for(var f=0;f!=7;++f){if(s&64)a^=t[n];s*=2;--n}}return a};return function(r){var t=el(r);var a=i(t);var s=t.length;var f=S(16);for(var o=0;o!=16;++o)f[o]=0;var l,c,h;if((s&1)===1){l=a>>8;f[s]=n(e[0],l);--s;l=a&255;c=t[t.length-1];f[s]=n(c,l)}while(s>0){--s;l=a>>8;f[s]=n(t[s],l);--s;l=a&255;f[s]=n(t[s],l)}s=15;h=15-t.length;while(h>0){l=a>>8;f[s]=n(e[h],l);--s;--h;l=a&255;f[s]=n(t[s],l);--s;--h}return f}}();var bl=function(e,r,t,a,n){if(!n)n=r;if(!a)a=gl(e);var i,s;for(i=0;i!=r.length;++i){s=r[i];s^=a[t];s=(s>>5|s<<3)&255;n[i]=s;++t}return[n,t,a]};var wl=function(e){var r=0,t=gl(e);return function(e){var a=bl("",e,r,t);r=a[1];return a[0]}};function kl(e,r,t,a){var n={key:os(e),verificationBytes:os(e)};if(t.password)n.verifier=ml(t.password);a.valid=n.verificationBytes===n.verifier;if(a.valid)a.insitu=wl(t.password);return n}function Tl(e,r,t){var a=t||{};a.Info=e._R(2);e.l-=2;if(a.Info===1)a.Data=vl(e,r);else a.Data=pl(e,r);return a}function Al(e,r,t){var a={Type:t.biff>=8?e._R(2):0};if(a.Type)Tl(e,r-2,a);else kl(e,t.biff>=8?r:r-2,t,a);return a}function El(e,r){switch(r.type){case"base64":return yl(A(e),r);case"binary":return yl(e,r);case"buffer":return yl(E&&Buffer.isBuffer(e)?e.toString("binary"):R(e),r);case"array":return yl(Ar(e),r);}throw new Error("Unrecognized type "+r.type)}function yl(e,r){var t=r||{};var a={};var n=t.dense;if(n)a["!data"]=[];var i=e.match(/\\trowd[\s\S]*?\\row\b/g);if(!i)throw new Error("RTF missing table");var s={s:{c:0,r:0},e:{c:0,r:i.length-1}};var f=[];i.forEach(function(e,r){if(n)f=a["!data"][r]=[];var i=/\\[\w\-]+\b/g;var o=0;var l;var c=-1;var h=[];while((l=i.exec(e))!=null){var u=e.slice(o,i.lastIndex-l[0].length);if(u.charCodeAt(0)==32)u=u.slice(1);if(u.length)h.push(u);switch(l[0]){case"\\cell":++c;if(h.length){var d={v:h.join(""),t:"s"};if(d.v=="TRUE"||d.v=="FALSE"){d.v=d.v=="TRUE";d.t="b"}else if(!isNaN(Cr(d.v))){d.t="n";if(t.cellText!==false)d.w=d.v;d.v=Cr(d.v)}if(n)f[c]=d;else a[Ma({r:r,c:c})]=d}h=[];break;case"\\par":h.push("\n");break;}o=i.lastIndex}if(c>s.e.c)s.e.c=c});a["!ref"]=Ba(s);return a}function Cl(e,r){var t=$a(El(e,r),r);t.bookType="rtf";return t}function Sl(e,r){var t=["{\\rtf1\\ansi"];if(!e["!ref"])return t[0]+"}";var a=za(e["!ref"]),n;var i=e["!data"]!=null,s=[];for(var f=a.s.r;f<=a.e.r;++f){t.push("\\trowd\\trautofit1");for(var o=a.s.c;o<=a.e.c;++o)t.push("\\cellx"+(o+1));t.push("\\pard\\intbl");if(i)s=e["!data"][f]||[];for(o=a.s.c;o<=a.e.c;++o){var l=Ma({r:f,c:o});n=i?s[o]:e[l];if(!n||n.v==null&&(!n.f||n.F)){t.push(" \\cell");continue}t.push(" "+(n.w||(Ga(n),n.w)||"").replace(/[\r\n]/g,"\\par "));t.push("\\cell")}t.push("\\pard\\intbl\\row")}return t.join("")+"}"}function _l(e){var r=e.slice(e[0]==="#"?1:0).slice(0,6);return[parseInt(r.slice(0,2),16),parseInt(r.slice(2,4),16),parseInt(r.slice(4,6),16)]}function xl(e){for(var r=0,t=1;r!=3;++r)t=t*256+(e[r]>255?255:e[r]<0?0:e[r]);return t.toString(16).toUpperCase().slice(1)}function Ol(e){var r=e[0]/255,t=e[1]/255,a=e[2]/255;var n=Math.max(r,t,a),i=Math.min(r,t,a),s=n-i;if(s===0)return[0,0,r];var f=0,o=0,l=n+i;o=s/(l>1?2-l:l);switch(n){case r:f=((t-a)/s+6)%6;break;case t:f=(a-r)/s+2;break;case a:f=(r-t)/s+4;break;}return[f/6,o,l/2]}function Rl(e){var r=e[0],t=e[1],a=e[2];var n=t*2*(a<.5?a:1-a),i=a-n/2;var s=[i,i,i],f=6*r;var o;if(t!==0)switch(f|0){case 0:;case 6:o=n*f;s[0]+=n;s[1]+=o;break;case 1:o=n*(2-f);s[0]+=o;s[1]+=n;break;case 2:o=n*(f-2);s[1]+=n;s[2]+=o;break;case 3:o=n*(4-f);s[1]+=o;s[2]+=n;break;case 4:o=n*(f-4);s[2]+=n;s[0]+=o;break;case 5:o=n*(6-f);s[2]+=o;s[0]+=n;break;}for(var l=0;l!=3;++l)s[l]=Math.round(s[l]*255);return s}function Il(e,r){if(r===0)return e;var t=Ol(_l(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return xl(Rl(t))}var Nl=6,Dl=15,Fl=1,Pl=Nl;function Ll(e){return Math.floor((e+Math.round(128/Pl)/256)*Pl)}function Ml(e){return Math.floor((e-5)/Pl*100+.5)/100}function Ul(e){return Math.round((e*Pl+5)/Pl*256)/256}function Bl(e){return Ul(Ml(Ll(e)))}function Wl(e){var r=Math.abs(e-Bl(e)),t=Pl;if(r>.005)for(Pl=Fl;Pl":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=ht(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=ht(t.diagonalDown);r.Borders.push(n);break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":break;case"":i=false;break;default:if(a&&a.WTF){if(!i)throw new Error("unrecognized "+t[0]+" in borders")};}})}function Yl(e,r,t,a){r.Fills=[];var n={};var i=false;(e[0].match(Yr)||[]).forEach(function(e){var t=Jr(e);switch(qr(t[0])){case"":;case"":break;case"":;case"":n={};r.Fills.push(n);break;case"":break;case"":break;case"":r.Fills.push(n);n={};break;case"":if(t.patternType)n.patternType=t.patternType;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":i=false;break;default:if(a&&a.WTF){if(!i)throw new Error("unrecognized "+t[0]+" in fills")};}})}function Kl(e,r,t,a){r.Fonts=[];var n={};var s=false;(e[0].match(Yr)||[]).forEach(function(e){var f=Jr(e);switch(qr(f[0])){case"":;case"":break;case"":break;case"
":;case"":r.Fonts.push(n);n={};break;case"":;case"":break;case"":n.bold=1;break;case"":n.italic=1;break;case"":n.underline=1;break;case"":n.strike=1;break;case"":n.outline=1;break;case"":n.shadow=1;break;case"":n.condense=1;break;case"":n.extend=1;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":s=false;break;case"":;case"":break;case"":s=false;break;default:if(a&&a.WTF){if(!s)throw new Error("unrecognized "+f[0]+" in fonts")};}})}function Zl(e,r,t){r.NumberFmt=[];var a=sr(Z);for(var n=0;n":;case"":;case"":break;case"0){if(o>392){for(o=392;o>60;--o)if(r.NumberFmt[o]==null)break;r.NumberFmt[o]=f}qe(f,o)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+s[0]+" in numFmts");}}}function Jl(e){var r=[""];[[5,8],[23,26],[41,44],[50,392]].forEach(function(t){for(var a=t[0];a<=t[1];++a)if(e[a]!=null)r[r.length]=_t("numFmt",null,{numFmtId:a,formatCode:nt(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=_t("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var ql=["numFmtId","fillId","fontId","borderId","xfId"];var Ql=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function ec(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Yr)||[]).forEach(function(e){var i=Jr(e),s=0;switch(qr(i[0])){case"":;case"":;case"":break;case"":a=i;delete a[0];for(s=0;s392){for(s=392;s>60;--s)if(r.NumberFmt[a.numFmtId]==r.NumberFmt[s]){a.numFmtId=s;break}}r.CellXf.push(a);break;case"":break;case"":var f={};if(i.vertical)f.vertical=i.vertical;if(i.horizontal)f.horizontal=i.horizontal;if(i.textRotation!=null)f.textRotation=i.textRotation;if(i.indent)f.indent=i.indent;if(i.wrapText)f.wrapText=ht(i.wrapText);a.alignment=f;break;case"":break;case"":;case"":break;case"":n=false;break;case"":;case"":break;case"":n=false;break;default:if(t&&t.WTF){if(!n)throw new Error("unrecognized "+i[0]+" in cellXfs")};}})}function rc(e){var r=[];r[r.length]=_t("cellXfs",null);e.forEach(function(e){r[r.length]=_t("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=_t("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var tc=function jk(){var e=/<(?:\w+:)?numFmts([^>]*)>[\S\s]*?<\/(?:\w+:)?numFmts>/;var r=/<(?:\w+:)?cellXfs([^>]*)>[\S\s]*?<\/(?:\w+:)?cellXfs>/;var t=/<(?:\w+:)?fills([^>]*)>[\S\s]*?<\/(?:\w+:)?fills>/;var a=/<(?:\w+:)?fonts([^>]*)>[\S\s]*?<\/(?:\w+:)?fonts>/;var n=/<(?:\w+:)?borders([^>]*)>[\S\s]*?<\/(?:\w+:)?borders>/;return function i(s,f,o){var l={};if(!s)return l;s=s.replace(//gm,"").replace(//gm,"");var c;if(c=s.match(e))Zl(c,l,o);if(c=s.match(a))Kl(c,l,f,o);if(c=s.match(t))Yl(c,l,f,o);if(c=s.match(n))Xl(c,l,f,o);if(c=s.match(r))ec(c,l,o);return l}}();function ac(e,r){var t=[Gr,_t("styleSheet",null,{xmlns:Dt[0],"xmlns:vt":Nt.vt})],a;if(e.SSF&&(a=Jl(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=rc(r.cellXfs))t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}function nc(e,r){var t=e._R(2);var a=Za(e,r-2);return[t,a]}function ic(e,r,t){if(!t)t=wa(6+4*r.length);t._W(2,e);Ja(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 sc(e,r,t){var a={};a.sz=e._R(2)/20;var n=Sn(e,2,t);if(n.fItalic)a.italic=1;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;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 f=e._R(1);if(f>0)a.family=f;var o=e._R(1);if(o>0)a.charset=o;e.l++;a.color=yn(e,8);switch(e._R(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor";break;}a.name=Za(e,r-21);return a}function fc(e,r){if(!r)r=wa(25+4*32);r._W(2,e.sz*20);_n(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);Cn(e.color,r);var a=0;if(e.scheme=="major")a=1;if(e.scheme=="minor")a=2;r._W(1,a);Ja(e.name,r);return r.length>r.l?r.slice(0,r.l):r}var oc=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];var lc;var cc=ba;function hc(e,r){if(!r)r=wa(4*3+8*7+16*1);if(!lc)lc=or(oc);var t=lc[e.patternType];if(t==null)t=40;r._W(4,t);var a=0;if(t!=40){ +Cn({auto:1},r);Cn({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 uc(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 dc(e,r,t){if(!t)t=wa(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);var a=0;t._W(1,a);t._W(1,0);t._W(1,0);t._W(1,0);return t}function pc(e,r){if(!r)r=wa(10);r._W(1,0);r._W(1,0);r._W(4,0);r._W(4,0);return r}var vc=ba;function mc(e,r){if(!r)r=wa(51);r._W(1,0);pc(null,r);pc(null,r);pc(null,r);pc(null,r);pc(null,r);return r.length>r.l?r.slice(0,r.l):r}function gc(e,r){if(!r)r=wa(12+4*10);r._W(4,e.xfId);r._W(2,1);r._W(1,+e.builtinId);r._W(1,0);un(e.name||"",r);return r.length>r.l?r.slice(0,r.l):r}function bc(e,r,t){var a=wa(4+256*2*4);a._W(4,e);un(r,a);un(t,a);return a.length>a.l?a.slice(0,a.l):a}function wc(e,r,t){var a={};a.NumberFmt=[];for(var n in Z)a.NumberFmt[n]=Z[n];a.CellXf=[];a.Fonts=[];var i=[];var s=false;ka(e,function f(e,n,o){switch(o){case 44:a.NumberFmt[e[0]]=e[1];qe(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=Il(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]==617){a.CellXf.push(e)}break;case 48:;case 507:;case 572:;case 475:break;case 1171:;case 2102:;case 1130:;case 512:;case 2095:;case 3072:break;case 35:s=true;break;case 36:s=false;break;case 37:i.push(o);s=true;break;case 38:i.pop();s=false;break;default:if(n.T>0)i.push(o);else if(n.T<0)i.pop();else if(!s||t.WTF&&i[i.length-1]!=37)throw new Error("Unexpected record 0x"+o.toString(16));}});return a}function kc(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;Aa(e,615,Ka(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)Aa(e,44,ic(a,r[a]))});Aa(e,616)}function Tc(e){var r=1;if(r==0)return;Aa(e,611,Ka(r));Aa(e,43,fc({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}));Aa(e,612)}function Ac(e){var r=2;if(r==0)return;Aa(e,603,Ka(r));Aa(e,45,hc({patternType:"none"}));Aa(e,45,hc({patternType:"gray125"}));Aa(e,604)}function Ec(e){var r=1;if(r==0)return;Aa(e,613,Ka(r));Aa(e,46,mc({}));Aa(e,614)}function yc(e){var r=1;Aa(e,626,Ka(r));Aa(e,47,dc({numFmtId:0,fontId:0,fillId:0,borderId:0},65535));Aa(e,627)}function Cc(e,r){Aa(e,617,Ka(r.length));r.forEach(function(r){Aa(e,47,dc(r,0))});Aa(e,618)}function Sc(e){var r=1;Aa(e,619,Ka(r));Aa(e,48,gc({xfId:0,builtinId:0,name:"Normal"}));Aa(e,620)}function _c(e){var r=0;Aa(e,505,Ka(r));Aa(e,506)}function xc(e){var r=0;Aa(e,508,bc(r,"TableStyleMedium9","PivotStyleMedium4"));Aa(e,509)}function Oc(){return}function Rc(e,r){var t=Ta();Aa(t,278);kc(t,e.SSF);Tc(t,e);Ac(t,e);Ec(t,e);yc(t,e);Cc(t,r.cellXfs);Sc(t,e);_c(t,e);xc(t,e);Oc(t,e);Aa(t,279);return t.end()}var Ic=["","","","","","","","","","","",""];function Nc(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Yr)||[]).forEach(function(e){var n=Jr(e);switch(n[0]){case"":break;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":if(n[0].charAt(1)==="/"){r.themeElements.clrScheme[Ic.indexOf(n[0])]=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 Dc(){}function Fc(){}var Pc=/]*)>[\s\S]*<\/a:clrScheme>/;var Lc=/]*)>[\s\S]*<\/a:fontScheme>/;var Mc=/]*)>[\s\S]*<\/a:fmtScheme>/;function Uc(e,r,t){r.themeElements={};var a;[["clrScheme",Pc,Nc],["fontScheme",Lc,Dc],["fmtScheme",Mc,Fc]].forEach(function(n){if(!(a=e.match(n[1])))throw new Error(n[0]+" not found in themeElements");n[2](a,r,t)})}var Bc=/]*)>[\s\S]*<\/a:themeElements>/;function Wc(e,r){if(!e||e.length===0)e=Hc();var t;var a={};if(!(t=e.match(Bc)))throw new Error("themeElements not found in theme");Uc(t[0],a,r);a.raw=e;return a}function Hc(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Gr];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";return t.join("")}function zc(e,r,t){var a=e.l+r;var n=e._R(4);if(n===124226)return;if(!t.cellStyles){e.l=a;return}var i=e.slice(e.l);e.l=a;var s;try{s=zr(i,{type:"array"})}catch(f){return}var o=Mr(s,"theme/theme/theme1.xml",true);if(!o)return;return Wc(o,t)}function Vc(e){return e._R(4)}function Gc(e){var r={};r.xclrType=e._R(2);r.nTintShade=e._R(2);switch(r.xclrType){case 0:e.l+=4;break;case 1:r.xclrValue=$c(e,4);break;case 2:r.xclrValue=xs(e,4);break;case 3:r.xclrValue=Vc(e,4);break;case 4:e.l+=4;break;}e.l+=8;return r}function $c(e,r){return ba(e,r)}function jc(e,r){return ba(e,r)}function Xc(e){var r=e._R(2);var t=e._R(2)-4;var a=[r];switch(r){case 4:;case 5:;case 7:;case 8:;case 9:;case 10:;case 11:;case 13:a[1]=Gc(e,t);break;case 6:a[1]=jc(e,t);break;case 14:;case 15:a[1]=e._R(t===1?1:2);break;default:throw new Error("Unrecognized ExtProp type: "+r+" "+t);}return a}function Yc(e,r){var t=e.l+r;e.l+=2;var a=e._R(2);e.l+=2;var n=e._R(2);var i=[];while(n-- >0)i.push(Xc(e,t-e.l));return{ixfe:a,ext:i}}function Kc(e,r){r.forEach(function(e){switch(e[0]){case 4:break;case 5:break;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:break;case 13:break;case 14:break;case 15:break;}})}function Zc(e,r){return{flags:e._R(4),version:e._R(4),name:Za(e,r-8)}}function Jc(e){var r=wa(12+2*e.name.length);r._W(4,e.flags);r._W(4,e.version);Ja(e.name,r);return r.slice(0,r.l)}function qc(e){var r=[];var t=e._R(4);while(t-- >0)r.push([e._R(4),e._R(4)]);return r}function Qc(e){var r=wa(4+8*e.length);r._W(4,e.length);for(var t=0;t":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":i=2;break;case"":i=2;break;case"":;case"":;case"":break;case"":n=false;break;case"\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n');return e.join("")}function fh(e){var r=[];if(!e)return r;var t=1;(e.match(Yr)||[]).forEach(function(e){var a=Jr(e);switch(a[0]){case"":;case"":break;case"]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}function dh(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[_t("xml",null,{"xmlns:v":Ft.v,"xmlns:o":Ft.o,"xmlns:x":Ft.x,"xmlns:mv":Ft.mv}).replace(/\/>/,">"),_t("o:shapelayout",_t("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"})];var i=65536*e;var s=r||[];if(s.length>0)n.push(_t("v:shapetype",[_t("v:stroke",null,{joinstyle:"miter"}),_t("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202",coordsize:t.join(","),"o:spt":202,path:a}));s.forEach(function(e){++i;n.push(ph(e,i))});n.push("");return n.join("")}function ph(e,r){var t=La(e[0]);var a={color2:"#BEFF82",type:"gradient"};if(a.type=="gradient")a.angle="-180";var n=a.type=="gradient"?_t("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null;var i=_t("v:fill",n,a);var s={on:"t",obscured:"t"};return["",i,_t("v:shadow",null,s),_t("v:path",null,{"o:connecttype":"none"}),'
','',"","",Ct("x:Anchor",[t.c+1,0,t.r+1,0,t.c+3,20,t.r+5,20].join(",")),Ct("x:AutoFill","False"),Ct("x:Row",String(t.r)),Ct("x:Column",String(t.c)),e[1].hidden?"":"","",""].join("")}function vh(e,r,t,a){var n=e["!data"]!=null;var i;r.forEach(function(r){var s=La(r.ref);if(n){if(!e["!data"][s.r])e["!data"][s.r]=[];i=e["!data"][s.r][s.c]}else i=e[r.ref];if(!i){i={t:"z"};if(n)e["!data"][s.r][s.c]=i;else e[r.ref]=i;var f=za(e["!ref"]||"BDWGO1000001:A1");if(f.s.r>s.r)f.s.r=s.r;if(f.e.rs.c)f.s.c=s.c;if(f.e.c=0;--c){if(!t&&i.c[c].T)return;if(t&&!i.c[c].T)i.c.splice(c,1)}if(t&&a)for(c=0;c/))return[];var t=[];var a=[];var n=e.match(/<(?:\w+:)?authors>([\s\S]*)<\/(?:\w+:)?authors>/);if(n&&n[1])n[1].split(/<\/\w*:?author>/).forEach(function(e){if(e===""||e.trim()==="")return;var r=e.match(/<(?:\w+:)?author[^>]*>(.*)/);if(r)t.push(r[1])});var i=e.match(/<(?:\w+:)?commentList>([\s\S]*)<\/(?:\w+:)?commentList>/);if(i&&i[1])i[1].split(/<\/\w*:?comment>/).forEach(function(e){if(e===""||e.trim()==="")return;var n=e.match(/<(?:\w+:)?comment[^>]*>/);if(!n)return;var i=Jr(n[0]);var s={author:i.authorId&&t[i.authorId]||"sheetjsghost",ref:i.ref,guid:i.guid};var f=La(i.ref);if(r.sheetRows&&r.sheetRows<=f.r)return;var o=e.match(/<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/);var l=!!o&&!!o[1]&&zo(o[1])||{r:"",t:"",h:""};s.r=l.r;if(l.r=="")l.t=l.h="";s.t=(l.t||"").replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(r.cellHTML)s.h=l.h;a.push(s)});return a}function gh(e){var r=[Gr,_t("comments",null,{xmlns:Dt[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=nt(e.a);if(t.indexOf(a)==-1){t.push(a);r.push(""+a+"")}if(e.T&&e.ID&&t.indexOf("tc="+e.ID)==-1){t.push("tc="+e.ID);r.push(""+"tc="+e.ID+"")}})});if(t.length==0){t.push("SheetJ5");r.push("SheetJ5")}r.push("");r.push("");e.forEach(function(e){var a=0,n=[],i=0;if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);e[1].forEach(function(e){if(e.a)a=t.indexOf(nt(e.a));if(e.T)++i;n.push(e.t==null?"":nt(e.t))});if(i===0){e[1].forEach(function(a){r.push('');r.push(Ct("t",a.t==null?"":nt(a.t)));r.push("")})}else{r.push('');var s="Comment:\n "+n[0]+"\n";for(var f=1;f")}});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function bh(e,r){var t=[];var a=false,n={},i=0;e.replace(Yr,function s(f,o){var l=Jr(f);switch(qr(l[0])){case"":break;case"":if(n.t!=null)t.push(n);break;case"":;case"":n.t=e.slice(i,o).replace(/\r\n/g,"\n").replace(/\r/g,"\n");break;case"":a=true;break;case"":a=false;break;case"":;case"
":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+l[0]+" in threaded comments");}return f});return t}function wh(e,r,t){var a=[Gr,_t("ThreadedComments",null,{xmlns:Nt.TCMNT}).replace(/[\/]>/,">")];e.forEach(function(e){var n="";(e[1]||[]).forEach(function(i,s){if(!i.T){delete i.ID;return}if(i.a&&r.indexOf(i.a)==-1)r.push(i.a);var f={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+t.tcid++).slice(-12)+"}"};if(s==0)n=f.id;else f.parentId=n;i.ID=f.id;if(i.a)f.personId="{54EE7950-7262-4200-6969-"+("000000000000"+r.indexOf(i.a)).slice(-12)+"}";a.push(_t("threadedComment",Ct("text",i.t||""),f))})});a.push("");return a.join("")}function kh(e,r){var t=[];var a=false;e.replace(Yr,function n(e){var n=Jr(e);switch(qr(n[0])){case"":break;case"":break;case"":;case"":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+n[0]+" in threaded comments");}return e});return t}function Th(e){var r=[Gr,_t("personList",null,{xmlns:Nt.TCMNT,"xmlns:x":Dt[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(_t("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}function Ah(e){var r={};r.iauthor=e._R(4);var t=kn(e,16);r.rfx=t.s;r.ref=Ma(t.s);e.l+=16;return r}function Eh(e,r){if(r==null)r=wa(36);r._W(4,e[1].iauthor);Tn(e[0],r);r._W(4,0);r._W(4,0);r._W(4,0);r._W(4,0);return r}var yh=Za;function Ch(e){return Ja(e.slice(0,54))}function Sh(e,r){var t=[];var a=[];var n={};var i=false;ka(e,function s(e,f,o){switch(o){case 632:a.push(e);break;case 635:n=e;break;case 637:n.t=e.t;n.h=e.h;n.r=e.r;break;case 636:n.author=a[n.iauthor];delete n.iauthor;if(r.sheetRows&&n.rfx&&r.sheetRows<=n.rfx.r)break;if(!n.t)n.t="";delete n.rfx;t.push(n);break;case 3072:break;case 35:i=true;break;case 36:i=false;break;case 37:break;case 38:break;default:if(f.T){}else if(!i||r.WTF)throw new Error("Unexpected record 0x"+o.toString(16));}});return t}function _h(e){var r=Ta();var t=[];Aa(r,628);Aa(r,630);e.forEach(function(e){e[1].forEach(function(e){if(t.indexOf(e.a)>-1)return;t.push(e.a.slice(0,54));Aa(r,632,Ch(e.a))})});Aa(r,631);Aa(r,633);e.forEach(function(e){e[1].forEach(function(a){a.iauthor=t.indexOf(a.a);var n={s:La(e[0]),e:La(e[0])};Aa(r,635,Eh([n,a]));if(a.t&&a.t.length>0)Aa(r,637,an(a));Aa(r,636);delete a.iauthor})});Aa(r,634);Aa(r,629);return r.end()}var xh="application/vnd.ms-office.vbaProject";function Oh(e){var r=er.utils.cfb_new({root:"R"});e.FullPaths.forEach(function(t,a){if(t.slice(-1)==="/"||!t.match(/_VBA_PROJECT_CUR/))return;var n=t.replace(/^[^\/]*/,"R").replace(/\/_VBA_PROJECT_CUR\u0000*/,"");er.utils.cfb_add(r,n,e.FileIndex[a].content)});return er.write(r)}function Rh(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")er.utils.cfb_add(e,n,r.FileIndex[a].content)})}var Ih=["xlsb","xlsm","xlam","biff8","xla"];function Nh(){return{"!type":"dialog"}}function Dh(){return{"!type":"dialog"}}function Fh(){return{"!type":"macro"}}function Ph(){return{"!type":"macro"}}var Lh=function(){var e=/(^|[^A-Za-z_])R(\[?-?\d+\]|[1-9]\d*|)C(\[?-?\d+\]|[1-9]\d*|)(?![A-Za-z0-9_])/g;var r={r:0,c:0};function t(e,t,a,n){var i=false,s=false;if(a.length==0)s=true;else if(a.charAt(0)=="["){s=true;a=a.slice(1,-1)}if(n.length==0)i=true;else if(n.charAt(0)=="["){i=true;n=n.slice(1,-1)}var f=a.length>0?parseInt(a,10)|0:0,o=n.length>0?parseInt(n,10)|0:0;if(i)o+=r.c;else--o;if(s)f+=r.r;else--f;return t+(i?"":"$")+Na(o)+(s?"":"$")+xa(f)}return function a(n,i){r=i;return n.replace(e,t)}}();var Mh=/(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})(?![_.\(A-Za-z0-9])/g;var Uh=function(){return function e(r,t){return r.replace(Mh,function(e,r,a,n,i,s){var f=Ia(n)-(a?0:t.c);var o=_a(s)-(i?0:t.r);var l=i=="$"?o+1:o==0?"":"["+o+"]";var c=a=="$"?f+1:f==0?"":"["+f+"]";return r+"R"+l+"C"+c})}}();function Bh(e,r){return e.replace(Mh,function(e,t,a,n,i,s){return t+(a=="$"?a+n:Na(Ia(n)+r.c))+(i=="$"?i+s:xa(_a(s)+r.r))})}function Wh(e,r,t){var a=Ua(r),n=a.s,i=La(t);var s={r:i.r-n.r,c:i.c-n.c};return Bh(e,s)}function Hh(e){if(e.length==1)return false;return true}function zh(e){return e.replace(/_xlfn\./g,"")}function Vh(e){e.l+=1;return}function Gh(e,r){var t=e._R(r==1?1:2);return[t&16383,t>>14&1,t>>15&1]}function $h(e,r,t){var a=2;if(t){if(t.biff>=2&&t.biff<=5)return jh(e,r,t);else if(t.biff==12)a=4}var n=e._R(a),i=e._R(a);var s=Gh(e,2);var f=Gh(e,2);return{s:{r:n,c:s[0],cRel:s[1],rRel:s[2]},e:{r:i,c:f[0],cRel:f[1],rRel:f[2]}}}function jh(e){var r=Gh(e,2),t=Gh(e,2);var a=e._R(1);var n=e._R(1);return{s:{r:r[0],c:a,cRel:r[1],rRel:r[2]},e:{r:t[0],c:n,cRel:t[1],rRel:t[2]}}}function Xh(e,r,t){if(t.biff<8)return jh(e,r,t);var a=e._R(t.biff==12?4:2),n=e._R(t.biff==12?4:2);var i=Gh(e,2);var s=Gh(e,2);return{s:{r:a,c:i[0],cRel:i[1],rRel:i[2]},e:{r:n,c:s[0],cRel:s[1],rRel:s[2]}}}function Yh(e,r,t){if(t&&t.biff>=2&&t.biff<=5)return Kh(e,r,t);var a=e._R(t&&t.biff==12?4:2);var n=Gh(e,2);return{r:a,c:n[0],cRel:n[1],rRel:n[2]}}function Kh(e){var r=Gh(e,2);var t=e._R(1);return{r:r[0],c:t,cRel:r[1],rRel:r[2]}}function Zh(e){var r=e._R(2);var t=e._R(2);return{r:r,c:t&255,fQuoted:!!(t&16384),cRel:t>>15,rRel:t>>15}}function Jh(e,r,t){var a=t&&t.biff?t.biff:8;if(a>=2&&a<=5)return qh(e,r,t);var n=e._R(a>=12?4:2);var i=e._R(2);var s=(i&16384)>>14,f=(i&32768)>>15;i&=16383;if(f==1)while(n>524287)n-=1048576;if(s==1)while(i>8191)i=i-16384;return{r:n,c:i,cRel:s,rRel:f}}function qh(e){var r=e._R(2);var t=e._R(1);var a=(r&32768)>>15,n=(r&16384)>>14;r&=16383;if(a==1&&r>=8192)r=r-16384;if(n==1&&t>=128)t=t-256;return{r:r,c:t,cRel:n, +rRel:a}}function Qh(e,r,t){var a=(e[e.l++]&96)>>5;var n=$h(e,t.biff>=2&&t.biff<=5?6:8,t);return[a,n]}function eu(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2,"i");var i=8;if(t)switch(t.biff){case 5:e.l+=12;i=6;break;case 12:i=12;break;}var s=$h(e,i,t);return[a,n,s]}function ru(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t&&t.biff>8?12:t.biff<8?6:8;return[a]}function tu(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2);var i=8;if(t)switch(t.biff){case 5:e.l+=12;i=6;break;case 12:i=12;break;}e.l+=i;return[a,n]}function au(e,r,t){var a=(e[e.l++]&96)>>5;var n=Xh(e,r-1,t);return[a,n]}function nu(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t.biff==2?6:t.biff==12?14:7;return[a]}function iu(e){var r=e[e.l+1]&1;var t=1;e.l+=4;return[r,t]}function su(e,r,t){e.l+=2;var a=e._R(t&&t.biff==2?1:2);var n=[];for(var i=0;i<=a;++i)n.push(e._R(t&&t.biff==2?1:2));return n}function fu(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=2;return[a,e._R(t&&t.biff==2?1:2)]}function ou(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=2;return[a,e._R(t&&t.biff==2?1:2)]}function lu(e){var r=e[e.l+1]&255?1:0;e.l+=2;return[r,e._R(2)]}function cu(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=t&&t.biff==2?3:4;return[a]}function hu(e){var r=e._R(1),t=e._R(1);return[r,t]}function uu(e){e._R(2);return hu(e,2)}function du(e){e._R(2);return hu(e,2)}function pu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Yh(e,0,t);return[a,n]}function vu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Jh(e,0,t);return[a,n]}function mu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(2);if(t&&t.biff==5)e.l+=12;var i=Yh(e,0,t);return[a,n,i]}function gu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(t&&t.biff<=3?1:2);return[$d[n],Gd[n],a]}function bu(e,r,t){var a=e[e.l++];var n=e._R(1),i=t&&t.biff<=3?[a==88?-1:0,e._R(1)]:wu(e);return[n,(i[0]===0?Gd:Vd)[i[1]]]}function wu(e){return[e[e.l+1]>>7,e._R(2)&32767]}function ku(e,r,t){e.l+=t&&t.biff==2?3:4;return}function Tu(e,r,t){e.l++;if(t&&t.biff==12)return[e._R(4,"i"),0];var a=e._R(2);var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Au(e){e.l++;return Jn[e._R(1)]}function Eu(e){e.l++;return e._R(2)}function yu(e){e.l++;return e._R(1)!==0}function Cu(e){e.l++;return An(e,8)}function Su(e,r,t){e.l++;return ds(e,r-1,t)}function _u(e,r){var t=[e._R(1)];if(r==12)switch(t[0]){case 2:t[0]=4;break;case 4:t[0]=16;break;case 0:t[0]=1;break;case 1:t[0]=2;break;}switch(t[0]){case 4:t[1]=ss(e,1)?"TRUE":"FALSE";if(r!=12)e.l+=7;break;case 37:;case 16:t[1]=Jn[e[e.l]];e.l+=r==12?4:8;break;case 0:e.l+=8;break;case 1:t[1]=An(e,8);break;case 2:t[1]=bs(e,0,{biff:r>0&&r<8?2:r});break;default:throw new Error("Bad SerAr: "+t[0]);}return t}function xu(e,r,t){var a=e._R(t.biff==12?4:2);var n=[];for(var i=0;i!=a;++i)n.push((t.biff==12?kn:Ms)(e,8));return n}function Ou(e,r,t){var a=0,n=0;if(t.biff==12){a=e._R(4);n=e._R(4)}else{n=1+e._R(1);a=1+e._R(2)}if(t.biff>=2&&t.biff<8){--a;if(--n==0)n=256}for(var i=0,s=[];i!=a&&(s[i]=[]);++i)for(var f=0;f!=n;++f)s[i][f]=_u(e,t.biff);return s}function Ru(e,r,t){var a=e._R(1)>>>5&3;var n=!t||t.biff>=8?4:2;var i=e._R(n);switch(t.biff){case 2:e.l+=5;break;case 3:;case 4:e.l+=8;break;case 5:e.l+=12;break;}return[a,0,i]}function Iu(e,r,t){if(t.biff==5)return Nu(e,r,t);var a=e._R(1)>>>5&3;var n=e._R(2);var i=e._R(4);return[a,n,i]}function Nu(e){var r=e._R(1)>>>5&3;var t=e._R(2,"i");e.l+=8;var a=e._R(2);e.l+=12;return[r,t,a]}function Du(e,r,t){var a=e._R(1)>>>5&3;e.l+=t&&t.biff==2?3:4;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Fu(e,r,t){var a=e._R(1)>>>5&3;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function Pu(e,r,t){var a=e._R(1)>>>5&3;e.l+=4;if(t.biff<8)e.l--;if(t.biff==12)e.l+=2;return[a]}function Lu(e,r,t){var a=(e[e.l++]&96)>>5;var n=e._R(2);var i=4;if(t)switch(t.biff){case 5:i=15;break;case 12:i=6;break;}e.l+=i;return[a,n]}var Mu=ba;var Uu=ba;var Bu=ba;function Wu(e,r,t){e.l+=2;return[Zh(e,4,t)]}function Hu(e){e.l+=6;return[]}var zu=Wu;var Vu=Hu;var Gu=Hu;var $u=Wu;function ju(e){e.l+=2;return[os(e),e._R(2)&1]}var Xu=Wu;var Yu=ju;var Ku=Hu;var Zu=Wu;var Ju=Wu;var qu=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];function Qu(e){e.l+=2;var r=e._R(2);var t=e._R(2);var a=e._R(4);var n=e._R(2);var i=e._R(2);var s=qu[t>>2&31];return{ixti:r,coltype:t&3,rt:s,idx:a,c:n,C:i}}function ed(e){e.l+=2;return[e._R(4)]}function rd(e,r,t){e.l+=5;e.l+=2;e.l+=t.biff==2?1:4;return["PTGSHEET"]}function td(e,r,t){e.l+=t.biff==2?4:5;return["PTGENDSHEET"]}function ad(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function nd(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function id(e){e.l+=4;return[0,0]}var sd={1:{n:"PtgExp",f:Tu},2:{n:"PtgTbl",f:Bu},3:{n:"PtgAdd",f:Vh},4:{n:"PtgSub",f:Vh},5:{n:"PtgMul",f:Vh},6:{n:"PtgDiv",f:Vh},7:{n:"PtgPower",f:Vh},8:{n:"PtgConcat",f:Vh},9:{n:"PtgLt",f:Vh},10:{n:"PtgLe",f:Vh},11:{n:"PtgEq",f:Vh},12:{n:"PtgGe",f:Vh},13:{n:"PtgGt",f:Vh},14:{n:"PtgNe",f:Vh},15:{n:"PtgIsect",f:Vh},16:{n:"PtgUnion",f:Vh},17:{n:"PtgRange",f:Vh},18:{n:"PtgUplus",f:Vh},19:{n:"PtgUminus",f:Vh},20:{n:"PtgPercent",f:Vh},21:{n:"PtgParen",f:Vh},22:{n:"PtgMissArg",f:Vh},23:{n:"PtgStr",f:Su},26:{n:"PtgSheet",f:rd},27:{n:"PtgEndSheet",f:td},28:{n:"PtgErr",f:Au},29:{n:"PtgBool",f:yu},30:{n:"PtgInt",f:Eu},31:{n:"PtgNum",f:Cu},32:{n:"PtgArray",f:nu},33:{n:"PtgFunc",f:gu},34:{n:"PtgFuncVar",f:bu},35:{n:"PtgName",f:Ru},36:{n:"PtgRef",f:pu},37:{n:"PtgArea",f:Qh},38:{n:"PtgMemArea",f:Du},39:{n:"PtgMemErr",f:Mu},40:{n:"PtgMemNoMem",f:Uu},41:{n:"PtgMemFunc",f:Fu},42:{n:"PtgRefErr",f:Pu},43:{n:"PtgAreaErr",f:ru},44:{n:"PtgRefN",f:vu},45:{n:"PtgAreaN",f:au},46:{n:"PtgMemAreaN",f:ad},47:{n:"PtgMemNoMemN",f:nd},57:{n:"PtgNameX",f:Iu},58:{n:"PtgRef3d",f:mu},59:{n:"PtgArea3d",f:eu},60:{n:"PtgRefErr3d",f:Lu},61:{n:"PtgAreaErr3d",f:tu},255:{}};var fd={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,78:46,110:46,79:47,111:47,88:34,120:34,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61};var od={1:{n:"PtgElfLel",f:ju},2:{n:"PtgElfRw",f:Zu},3:{n:"PtgElfCol",f:zu},6:{n:"PtgElfRwV",f:Ju},7:{n:"PtgElfColV",f:$u},10:{n:"PtgElfRadical",f:Xu},11:{n:"PtgElfRadicalS",f:Ku},13:{n:"PtgElfColS",f:Vu},15:{n:"PtgElfColSV",f:Gu},16:{n:"PtgElfRadicalLel",f:Yu},25:{n:"PtgList",f:Qu},29:{n:"PtgSxName",f:ed},255:{}};var ld={0:{n:"PtgAttrNoop",f:id},1:{n:"PtgAttrSemi",f:cu},2:{n:"PtgAttrIf",f:ou},4:{n:"PtgAttrChoose",f:su},8:{n:"PtgAttrGoto",f:fu},16:{n:"PtgAttrSum",f:ku},32:{n:"PtgAttrBaxcel",f:iu},33:{n:"PtgAttrBaxcel",f:iu},64:{n:"PtgAttrSpace",f:uu},65:{n:"PtgAttrSpaceSemi",f:du},128:{n:"PtgAttrIfError",f:lu},255:{}};function cd(e,r,t,a){if(a.biff<8)return ba(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]=Ou(e,0,a);i.push(t[s][1]);break;case"PtgMemArea":t[s][2]=xu(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(ba(e,r));return i}function hd(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=sd[i]||sd[fd[i]];if(i===24||i===25)n=(i===24?od:ld)[e[e.l+1]];if(!n||!n.f){ba(e,r)}else{s.push([n.n,n.f(e,r,t)])}}return s}function ud(e){var r=[];for(var t=0;t=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};function pd(e,r){var t=e.lastIndexOf("!"),a=r.lastIndexOf("!");if(t==-1&&a==-1)return e+":"+r;if(t>0&&a>0&&e.slice(0,t).toLowerCase()==r.slice(0,a).toLowerCase())return e+":"+r.slice(a+1);console.error("Cannot hydrate range",e,r);return e+":"+r}function vd(e,r,t){if(!e)return"SH33TJSERR0";if(t.biff>8&&(!e.XTI||!e.XTI[r]))return e.SheetNames[r];if(!e.XTI)return"SH33TJSERR6";var a=e.XTI[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 e[a[0]].slice(1).map(function(e){return e.Name}).join(";;");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 md(e,r,t){var a=vd(e,r,t);return a=="#REF"?a:Ha(a,t)}function gd(e,r,t,a,n){var i=n&&n.biff||8;var s={s:{c:0,r:0},e:{c:0,r:0}};var f=[],o,l,c,h=0,u=0,d,p="";if(!e[0]||!e[0][0])return"";var v=-1,m="";for(var g=0,b=e[0].length;g=0){switch(e[0][v][1][0]){case 0:m=yr(" ",e[0][v][1][1]);break;case 1:m=yr("\r",e[0][v][1][1]);break;default:m="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][v][1][0]);}l=l+m;v=-1}f.push(l+dd[w[0]]+o);break;case"PtgIsect":o=f.pop();l=f.pop();f.push(l+" "+o);break;case"PtgUnion":o=f.pop();l=f.pop();f.push(l+","+o);break;case"PtgRange":o=f.pop();l=f.pop();f.push(pd(l,o));break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgAttrIfError":break;case"PtgRef":c=Ea(w[1][1],s,n);f.push(Ca(c,i));break;case"PtgRefN":c=t?Ea(w[1][1],t,n):w[1][1];f.push(Ca(c,i));break;case"PtgRef3d":h=w[1][1];c=Ea(w[1][2],s,n);p=md(a,h,n);var k=p;f.push(p+"!"+Ca(c,i));break;case"PtgFunc":;case"PtgFuncVar":var T=w[1][0],A=w[1][1];if(!T)T=0;T&=127;var E=T==0?[]:f.slice(-T);f.length-=T;if(A==="User")A=E.shift();f.push(A+"("+E.join(",")+")");break;case"PtgBool":f.push(w[1]?"TRUE":"FALSE");break;case"PtgInt":f.push(w[1]);break;case"PtgNum":f.push(String(w[1]));break;case"PtgStr":f.push('"'+w[1].replace(/"/g,'""')+'"');break;case"PtgErr":f.push(w[1]);break;case"PtgAreaN":d=ya(w[1][1],t?{s:t}:s,n);f.push(Sa(d,n));break;case"PtgArea":d=ya(w[1][1],s,n);f.push(Sa(d,n));break;case"PtgArea3d":h=w[1][1];d=w[1][2];p=md(a,h,n);f.push(p+"!"+Sa(d,n));break;case"PtgAttrSum":f.push("SUM("+f.pop()+")");break;case"PtgAttrBaxcel":;case"PtgAttrSemi":break;case"PtgName":u=w[1][2];var y=(a.names||[])[u-1]||(a[0]||[])[u];var C=y?y.Name:"SH33TJSNAME"+String(u);if(C&&C.slice(0,6)=="_xlfn."&&!n.xlfn)C=C.slice(6);f.push(C);break;case"PtgNameX":var S=w[1][1];u=w[1][2];var _;if(n.biff<=5){if(S<0)S=-S;if(a[S])_=a[S][u]}else{var x="";if(((a[S]||[])[0]||[])[0]==14849){}else if(((a[S]||[])[0]||[])[0]==1025){if(a[S][u]&&a[S][u].itab>0){x=a.SheetNames[a[S][u].itab-1]+"!"}}else x=a.SheetNames[u-1]+"!";if(a[S]&&a[S][u])x+=a[S][u].Name;else if(a[0]&&a[0][u])x+=a[0][u].Name;else{var O=(vd(a,S,n)||"").split(";;");if(O[u-1])x=O[u-1];else x+="SH33TJSERRX"}f.push(x);break}if(!_)_={Name:"SH33TJSERRY"};f.push(_.Name);break;case"PtgParen":var R="(",I=")";if(v>=0){m="";switch(e[0][v][1][0]){case 2:R=yr(" ",e[0][v][1][1])+R;break;case 3:R=yr("\r",e[0][v][1][1])+R;break;case 4:I=yr(" ",e[0][v][1][1])+I;break;case 5:I=yr("\r",e[0][v][1][1])+I;break;default:if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][v][1][0]);}v=-1}f.push(R+f.pop()+I);break;case"PtgRefErr":f.push("#REF!");break;case"PtgRefErr3d":f.push("#REF!");break;case"PtgExp":c={c:w[1][1],r:w[1][0]};var N={c:t.c,r:t.r};if(a.sharedf[Ma(c)]){var D=a.sharedf[Ma(c)];f.push(gd(D,s,N,a,n))}else{var F=false;for(o=0;o!=a.arrayf.length;++o){l=a.arrayf[o];if(c.cl[0].e.c)continue;if(c.rl[0].e.r)continue;f.push(gd(l[1],s,N,a,n));F=true;break}if(!F)f.push(w[1])}break;case"PtgArray":f.push("{"+ud(w[1])+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":;case"PtgAttrSpaceSemi":v=g;break;case"PtgTbl":break;case"PtgMemErr":break;case"PtgMissArg":f.push("");break;case"PtgAreaErr":f.push("#REF!");break;case"PtgAreaErr3d":f.push("#REF!");break;case"PtgList":f.push("Table"+w[1].idx+"[#"+w[1].rt+"]");break;case"PtgMemAreaN":;case"PtgMemNoMemN":;case"PtgAttrNoop":;case"PtgSheet":;case"PtgEndSheet":break;case"PtgMemFunc":break;case"PtgMemNoMem":break;case"PtgElfCol":;case"PtgElfColS":;case"PtgElfColSV":;case"PtgElfColV":;case"PtgElfLel":;case"PtgElfRadical":;case"PtgElfRadicalLel":;case"PtgElfRadicalS":;case"PtgElfRw":;case"PtgElfRwV":throw new Error("Unsupported ELFs");case"PtgSxName":throw new Error("Unrecognized Formula Token: "+String(w));default:throw new Error("Unrecognized Formula Token: "+String(w));}var P=["PtgAttrSpace","PtgAttrSpaceSemi","PtgAttrGoto"];if(n.biff!=3)if(v>=0&&P.indexOf(e[0][g][0])==-1){w=e[0][v];var L=true;switch(w[1][0]){case 4:L=false;case 0:m=yr(" ",w[1][1]);break;case 5:L=false;case 1:m=yr("\r",w[1][1]);break;default:m="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+w[1][0]);}f.push((L?m:"")+f.pop()+(L?"":m));v=-1}}if(f.length>1&&n.WTF)throw new Error("bad formula stack");if(f[0]=="TRUE")return true;if(f[0]=="FALSE")return false;return f[0]}function bd(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ba(e,r-2)];var f=hd(e,s,t);if(r!==s+n)i=cd(e,r-s-n,f,t);e.l=a;return[f,i]}function wd(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ba(e,r-2)];var f=hd(e,s,t);if(r!==s+n)i=cd(e,r-s-n,f,t);e.l=a;return[f,i]}function kd(e,r,t,a){var n=e.l+r;var i=hd(e,a,t);var s;if(n!==e.l)s=cd(e,n-e.l,i,t);return[i,s]}function Td(e,r,t){var a=e.l+r;var n,i=e._R(2);var s=hd(e,i,t);if(i==65535)return[[],ba(e,r-2)];if(r!==i+2)n=cd(e,a-i-2,s,t);return[s,n]}function Ad(e){var r;if(sa(e,e.l+6)!==65535)return[An(e),"n"];switch(e[e.l]){case 0:e.l+=8;return["String","s"];case 1:r=e[e.l+2]===1;e.l+=8;return[r,"b"];case 2:r=e[e.l+2];e.l+=8;return[r,"e"];case 3:e.l+=8;return["","s"];}return[]}function Ed(e){if(e==null){var r=wa(8);r._W(1,3);r._W(1,0);r._W(2,0);r._W(2,0);r._W(2,65535);return r}else if(typeof e=="number")return En(e);return En(0)}function yd(e,r,t){var a=e.l+r;var n=Rs(e,6);if(t.biff==2)++e.l;var i=Ad(e,8);var s=e._R(1);if(t.biff!=2){e._R(1);if(t.biff>=5){e._R(4)}}var f=wd(e,a-e.l,t);return{cell:n,val:i[0],formula:f,shared:s>>3&1,tt:i[1]}}function Cd(e,r,t,a,n){var i=Is(r,t,n);var s=Ed(e.v);var f=wa(6);var o=1|32;f._W(2,o);f._W(4,0);var l=wa(e.bf.length);for(var c=0;c0?cd(e,i,n,t):null;return[n,s]}var _d=Sd;var xd=Sd;var Od=Sd;var Rd=Sd;function Id(e){if((e|0)==e&&e=0){var r=wa(11);r._W(4,3);r._W(1,30);r._W(2,e);r._W(4,0);return r}var t=wa(17);t._W(4,11);t._W(1,31);t._W(8,e);t._W(4,0);return t}function Nd(e){var r=wa(10);r._W(4,2);r._W(1,28);r._W(1,e);r._W(4,0);return r}function Dd(e){var r=wa(10);r._W(4,2);r._W(1,29);r._W(1,e?1:0);r._W(4,0);return r}function Fd(e){var r=wa(7);r._W(4,3+2*e.length);r._W(1,23);r._W(2,e.length);var t=wa(2*e.length);t._W(2*e.length,e,"utf16le");var a=wa(4);a._W(4,0);return D([r,t,a])}function Pd(e){var r=La(e);var t=wa(15);t._W(4,7);t._W(1,4|1<<5);t._W(4,r.r);t._W(2,r.c|(e.charAt(0)=="$"?0:1)<<14|(e.match(/\$\d/)?0:1)<<15);t._W(4,0);return t}function Ld(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);var n=La(e);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var i=wa(17);i._W(4,9);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,n.r);i._W(2,n.c|(e.charAt(0)=="$"?0:1)<<14|(e.match(/\$\d/)?0:1)<<15);i._W(4,0);return i}function Md(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=wa(17);n._W(4,9);n._W(1,28|1<<5);n._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));n._W(4,0);n._W(2,0);n._W(4,0);return n}function Ud(e){var r=e.split(":"),t=r[0];var a=wa(23);a._W(4,15);t=r[0];var n=La(t);a._W(1,4|1<<5);a._W(4,n.r);a._W(2,n.c|(t.charAt(0)=="$"?0:1)<<14|(t.match(/\$\d/)?0:1)<<15);a._W(4,0);t=r[1];n=La(t);a._W(1,4|1<<5);a._W(4,n.r);a._W(2,n.c|(t.charAt(0)=="$"?0:1)<<14|(t.match(/\$\d/)?0:1)<<15);a._W(4,0);a._W(1,17);a._W(4,0);return a}function Bd(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=e.split(":");s=n[0];var i=wa(27);i._W(4,19);var s=n[0],f=La(s);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,f.r);i._W(2,f.c|(s.charAt(0)=="$"?0:1)<<14|(s.match(/\$\d/)?0:1)<<15);s=n[1];f=La(s);i._W(1,26|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,f.r);i._W(2,f.c|(s.charAt(0)=="$"?0:1)<<14|(s.match(/\$\d/)?0:1)<<15);i._W(1,17);i._W(4,0);return i}function Wd(e,r){var t=e.lastIndexOf("!");var a=e.slice(0,t);e=e.slice(t+1);if(a.charAt(0)=="'")a=a.slice(1,-1).replace(/''/g,"'");var n=Ua(e);var i=wa(23);i._W(4,15);i._W(1,27|1<<5);i._W(2,2+r.SheetNames.map(function(e){return e.toLowerCase()}).indexOf(a.toLowerCase()));i._W(4,n.s.r);i._W(4,n.e.r);i._W(2,n.s.c);i._W(2,n.e.c);i._W(4,0);return i}function Hd(e,r){if(typeof e=="number")return Id(e);if(typeof e=="boolean")return Dd(e);if(/^#(DIV\/0!|GETTING_DATA|N\/A|NAME\?|NULL!|NUM!|REF!|VALUE!)$/.test(e))return Nd(+qn[e]);if(e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Pd(e);if(e.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Ud(e);if(e.match(/^#REF!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Wd(e,r);if(e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Ld(e,r);if(e.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return Bd(e,r);if(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!#REF!$/.test(e))return Md(e,r);if(/^".*"$/.test(e))return Fd(e);if(/^[+-]\d+$/.test(e))return Id(parseInt(e,10));throw"Formula |"+e+"| not supported for XLSB"}var zd=Hd;var Vd={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"};var Gd={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ", +319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK",348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD",380:"CUBEVALUE",381:"CUBEMEMBER",382:"CUBEMEMBERPROPERTY",383:"CUBERANKEDMEMBER",384:"HEX2BIN",385:"HEX2DEC",386:"HEX2OCT",387:"DEC2BIN",388:"DEC2HEX",389:"DEC2OCT",390:"OCT2BIN",391:"OCT2HEX",392:"OCT2DEC",393:"BIN2DEC",394:"BIN2OCT",395:"BIN2HEX",396:"IMSUB",397:"IMDIV",398:"IMPOWER",399:"IMABS",400:"IMSQRT",401:"IMLN",402:"IMLOG2",403:"IMLOG10",404:"IMSIN",405:"IMCOS",406:"IMEXP",407:"IMARGUMENT",408:"IMCONJUGATE",409:"IMAGINARY",410:"IMREAL",411:"COMPLEX",412:"IMSUM",413:"IMPRODUCT",414:"SERIESSUM",415:"FACTDOUBLE",416:"SQRTPI",417:"QUOTIENT",418:"DELTA",419:"GESTEP",420:"ISEVEN",421:"ISODD",422:"MROUND",423:"ERF",424:"ERFC",425:"BESSELJ",426:"BESSELK",427:"BESSELY",428:"BESSELI",429:"XIRR",430:"XNPV",431:"PRICEMAT",432:"YIELDMAT",433:"INTRATE",434:"RECEIVED",435:"DISC",436:"PRICEDISC",437:"YIELDDISC",438:"TBILLEQ",439:"TBILLPRICE",440:"TBILLYIELD",441:"PRICE",442:"YIELD",443:"DOLLARDE",444:"DOLLARFR",445:"NOMINAL",446:"EFFECT",447:"CUMPRINC",448:"CUMIPMT",449:"EDATE",450:"EOMONTH",451:"YEARFRAC",452:"COUPDAYBS",453:"COUPDAYS",454:"COUPDAYSNC",455:"COUPNCD",456:"COUPNUM",457:"COUPPCD",458:"DURATION",459:"MDURATION",460:"ODDLPRICE",461:"ODDLYIELD",462:"ODDFPRICE",463:"ODDFYIELD",464:"RANDBETWEEN",465:"WEEKNUM",466:"AMORDEGRC",467:"AMORLINC",468:"CONVERT",724:"SHEETJS",469:"ACCRINT",470:"ACCRINTM",471:"WORKDAY",472:"NETWORKDAYS",473:"GCD",474:"MULTINOMIAL",475:"LCM",476:"FVSCHEDULE",477:"CUBEKPIMEMBER",478:"CUBESET",479:"CUBESETCOUNT",480:"IFERROR",481:"COUNTIFS",482:"SUMIFS",483:"AVERAGEIF",484:"AVERAGEIFS"};var $d={2:1,3:1,10:0,15:1,16:1,17:1,18:1,19:0,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,34:0,35:0,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,63:0,65:3,66:3,67:1,68:1,69:1,70:1,71:1,72:1,73:1,74:0,75:1,76:1,77:1,79:2,80:2,83:1,85:0,86:1,89:0,90:1,94:0,95:0,97:2,98:1,99:1,101:3,102:3,105:1,106:1,108:2,111:1,112:1,113:1,114:1,117:2,118:1,119:4,121:1,126:1,127:1,128:1,129:1,130:1,131:1,133:1,134:1,135:1,136:2,137:2,138:2,140:1,141:1,142:3,143:4,144:4,161:1,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,186:1,189:3,190:1,195:3,196:3,197:1,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,225:0,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,247:4,252:2,257:1,261:1,271:1,273:4,274:2,275:2,276:2,277:3,278:3,279:1,280:3,281:3,282:3,283:1,284:1,285:2,286:4,287:3,288:2,289:4,290:3,291:3,292:3,293:4,294:1,295:3,296:1,297:3,298:1,299:2,300:3,301:3,302:4,303:2,304:2,305:2,306:2,307:2,308:2,309:3,310:2,311:2,312:2,313:2,314:2,315:2,316:4,325:2,326:2,327:2,328:2,331:2,332:2,337:2,342:1,343:1,346:2,347:1,350:4,351:3,352:1,353:2,360:1,368:1,369:1,370:1,371:1,372:1,373:1,374:1,375:1,376:1,377:1,378:1,382:3,385:1,392:1,393:1,396:2,397:2,398:2,399:1,400:1,401:1,402:1,403:1,404:1,405:1,406:1,407:1,408:1,409:1,410:1,414:4,415:1,416:1,417:2,420:1,421:1,422:2,424:1,425:2,426:2,427:2,428:2,430:3,438:3,439:3,440:3,443:2,444:2,445:2,446:2,447:6,448:6,449:2,450:2,464:2,468:3,476:2,479:1,480:2,65535:0};function jd(e){if(e.slice(0,3)=="of:")e=e.slice(3);if(e.charCodeAt(0)==61){e=e.slice(1);if(e.charCodeAt(0)==61)e=e.slice(1)}e=e.replace(/COM\.MICROSOFT\./g,"");e=e.replace(/\[((?:\.[A-Z]+[0-9]+)(?::\.[A-Z]+[0-9]+)?)\]/g,function(e,r){return r.replace(/\./g,"")});e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});e=e.replace(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function Xd(e){var r="of:="+e.replace(Mh,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function Yd(e){e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});var r=e.split(":");var t=r[0].split(".")[0];return[t,r[0].split(".")[1]+(r.length>1?":"+(r[1].split(".")[1]||r[1].split(".")[0]):"")]}function Kd(e){return e.replace(/!/,".")}var Zd={};var Jd={};var qd=typeof Map!=="undefined";function Qd(e,r,t){var a=0,n=e.length;if(t){if(qd?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var i=qd?t.get(r):t[r];for(;a-1){t.width=Ul(a);t.customWidth=1}else if(r.width!=null)t.width=r.width;if(r.hidden)t.hidden=true;if(r.level!=null){t.outlineLevel=t.level=r.level}return t}function rp(e,r){if(!e)return;var t=[.7,.7,.75,.75,.3,.3];if(r=="xlml")t=[1,1,1,1,.5,.5];if(e.left==null)e.left=t[0];if(e.right==null)e.right=t[1];if(e.top==null)e.top=t[2];if(e.bottom==null)e.bottom=t[3];if(e.header==null)e.header=t[4];if(e.footer==null)e.footer=t[5]}function tp(e,r,t){var a=t.revssf[r.z!=null?r.z:"General"];var n=60,i=e.length;if(a==null&&t.ssf){for(;n<392;++n)if(t.ssf[n]==null){qe(r.z,n);t.ssf[n]=r.z;t.revssf[r.z]=a=n;break}}for(n=0;n!=i;++n)if(e[n].numFmtId===a)return n;e[i]={numFmtId:a,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1};return i}function ap(e,r,t,a,n,i){try{if(a.cellNF)e.z=Z[r]}catch(s){if(a.WTF)throw s}if(e.t==="z"&&!a.cellStyles)return;if(e.t==="d"&&typeof e.v==="string")e.v=Tr(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(Z[r]==null)qe(Xe[r]||"General",r);if(e.t==="e")e.w=e.w||Jn[e.v];else if(r===0){if(e.t==="n"){if((e.v|0)===e.v)e.w=e.v.toString(10);else e.w=le(e.v)}else if(e.t==="d"){var f=ur(e.v);if((f|0)===f)e.w=f.toString(10);else e.w=le(f)}else if(e.v===undefined)return"";else e.w=ce(e.v,Jd)}else if(e.t==="d")e.w=ze(r,ur(e.v),Jd);else e.w=ze(r,e.v,Jd)}catch(s){if(a.WTF)throw s}if(!a.cellStyles)return;if(t!=null)try{e.s=i.Fills[t];if(e.s.fgColor&&e.s.fgColor.theme&&!e.s.fgColor.rgb){e.s.fgColor.rgb=Il(n.themeElements.clrScheme[e.s.fgColor.theme].rgb,e.s.fgColor.tint||0);if(a.WTF)e.s.fgColor.raw_rgb=n.themeElements.clrScheme[e.s.fgColor.theme].rgb}if(e.s.bgColor&&e.s.bgColor.theme){e.s.bgColor.rgb=Il(n.themeElements.clrScheme[e.s.bgColor.theme].rgb,e.s.bgColor.tint||0);if(a.WTF)e.s.bgColor.raw_rgb=n.themeElements.clrScheme[e.s.bgColor.theme].rgb}}catch(s){if(a.WTF&&i.Fills)throw s}}function np(e,r,t){if(e&&e["!ref"]){var a=za(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=Ba(t)}var sp=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var fp=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var op=/<(?:\w:)?hyperlink [^>]*>/gm;var lp=/"(\w*:\w*)"/;var cp=/<(?:\w:)?col\b[^>]*[\/]?>/g;var hp=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var up=/<(?:\w:)?pageMargins[^>]*\/>/g;var dp=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var pp=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var vp=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function mp(e,r,t,a,n,i,s){if(!e)return e;if(!a)a={"!id":{}};if(g!=null&&r.dense==null)r.dense=g;var f={};if(r.dense)f["!data"]=[];var o={s:{r:2e6,c:2e6},e:{r:0,c:0}};var l="",c="";var h=e.match(fp);if(h){l=e.slice(0,h.index);c=e.slice(h.index+h[0].length)}else l=c=e;var u=l.match(dp);if(u)bp(u[0],f,n,t);else if(u=l.match(pp))wp(u[0],u[1]||"",f,n,t,s,i);var d=(l.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(d>0){var p=l.slice(d,d+50).match(lp);if(p)ip(f,p[1])}var v=l.match(vp);if(v&&v[1])Np(v[1],n);var m=[];if(r.cellStyles){var b=l.match(cp);if(b)_p(m,b)}if(h)Pp(h[1],f,r,o,i,s);var w=c.match(hp);if(w)f["!autofilter"]=Op(w[0]);var k=[];var T=c.match(sp);if(T)for(d=0;d!=T.length;++d)k[d]=za(T[d].slice(T[d].indexOf('"')+1));var A=c.match(op);if(A)yp(f,A,a);var E=c.match(up);if(E)f["!margins"]=Cp(Jr(E[0]));if(!f["!ref"]&&o.e.c>=o.s.c&&o.e.r>=o.s.r)f["!ref"]=Ba(o);if(r.sheetRows>0&&f["!ref"]){var y=za(f["!ref"]);if(r.sheetRows<=+y.e.r){y.e.r=r.sheetRows-1;if(y.e.r>o.e.r)y.e.r=o.e.r;if(y.e.ro.e.c)y.e.c=o.e.c;if(y.e.c0)f["!cols"]=m;if(k.length>0)f["!merges"]=k;return f}function gp(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function bp(e,r,t,a){var n=Jr(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=rt(mt(n.codeName))}function wp(e,r,t,a,n){bp(e.slice(0,e.indexOf(">")),t,a,n)}function kp(e,r,t,a,n){var i=false;var s={},f=null;if(a.bookType!=="xlsx"&&r.vbaraw){var o=r.SheetNames[t];try{if(r.Workbook)o=r.Workbook.Sheets[t].CodeName||o}catch(l){}i=true;s.codeName=gt(nt(o))}if(e&&e["!outline"]){var c={summaryBelow:1,summaryRight:1};if(e["!outline"].above)c.summaryBelow=0;if(e["!outline"].left)c.summaryRight=0;f=(f||"")+_t("outlinePr",null,c)}if(!i&&!f)return;n[n.length]=_t("sheetPr",f,s)}var Tp=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var Ap=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function Ep(e){var r={sheet:1};Tp.forEach(function(t){if(e[t]!=null&&e[t])r[t]="1"});Ap.forEach(function(t){if(e[t]!=null&&!e[t])r[t]="0"});if(e.password)r.password=ml(e.password).toString(16).toUpperCase();return _t("sheetProtection",null,r)}function yp(e,r,t){var a=e["!data"]!=null;for(var n=0;n!=r.length;++n){var i=Jr(mt(r[n]),true);if(!i.ref)return;var s=((t||{})["!id"]||[])[i.id];if(s){i.Target=s.Target;if(i.location)i.Target+="#"+rt(i.location)}else{i.Target="#"+rt(i.location);s={Target:i.Target,TargetMode:"Internal"}}i.Rel=s;if(i.tooltip){i.Tooltip=i.tooltip;delete i.tooltip}var f=za(i.ref);for(var o=f.s.r;o<=f.e.r;++o)for(var l=f.s.c;l<=f.e.c;++l){var c=Na(l)+xa(o);if(a){if(!e["!data"][o])e["!data"][o]=[];if(!e["!data"][o][l])e["!data"][o][l]={t:"z",v:undefined};e["!data"][o][l].l=i}else{if(!e[c])e[c]={t:"z",v:undefined};e[c].l=i}}}}function Cp(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function Sp(e){rp(e);return _t("pageMargins",null,e)}function _p(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Jr(r[a],true);if(n.hidden)n.hidden=ht(n.hidden);var i=parseInt(n.min,10)-1,s=parseInt(n.max,10)-1;if(n.outlineLevel)n.level=+n.outlineLevel||0;delete n.min;delete n.max;n.width=+n.width;if(!t&&n.width){t=true;Wl(n.width)}Hl(n);while(i<=s)e[i++]=Er(n)}}function xp(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=_t("col",null,ep(n,a))}t[t.length]="";return t.join("")}function Op(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function Rp(e,r,t,a){var n=typeof e.ref=="string"?e.ref:Ba(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var i=t.Workbook.Names;var s=Ua(n);if(s.s.r==s.e.r){s.e.r=Ua(r["!ref"]).e.r;n=Ba(s)}for(var f=0;fa-z][^>]*)?\/?>/g;function Np(e,r){if(!r.Views)r.Views=[{}];(e.match(Ip)||[]).forEach(function(e,t){var a=Jr(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(a.rightToLeft&&ht(a.rightToLeft))r.Views[t].RTL=true})}function Dp(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return _t("sheetViews",_t("sheetView",null,n),{})}function Fp(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if((e.v===undefined||e.t==="z"&&!(a||{}).sheetStubs)&&typeof e.f!=="string"&&typeof e.z=="undefined")return"";var n="";var i=e.t,s=e.v;if(e.t!=="z")switch(e.t){case"b":n=e.v?"1":"0";break;case"n":n=""+e.v;break;case"e":n=Jn[e.v];break;case"d":if(a&&a.cellDates)n=Tr(e.v,-1).toISOString();else{e=Er(e);e.t="n";n=""+(e.v=ur(Tr(e.v)))}if(typeof e.z==="undefined")e.z=Z[14];break;default:n=e.v;break;}var f=e.t=="z"||e.v==null?"":Ct("v",nt(n)),o={r:r};var l=tp(a.cellXfs,e,a);if(l!==0)o.s=l;switch(e.t){case"n":break;case"d":o.t="d";break;case"b":o.t="b";break;case"e":o.t="e";break;case"z":break;default:if(e.v==null){delete e.t;break}if(e.v.length>32767)throw new Error("Text length must not exceed 32767 characters");if(a&&a.bookSST){f=Ct("v",""+Qd(a.Strings,e.v,a.revStrings));o.t="s";break}else o.t="str";break;}if(e.t!=i){e.t=i;e.v=s}if(typeof e.f=="string"&&e.f){var c=e.F&&e.F.slice(0,r.length)==r?{t:"array",ref:e.F}:null;f=_t("f",nt(e.f),c)+(e.v!=null?f:"")}if(e.l){e.l.display=nt(n);t["!links"].push([r,e.l])}if(e.D)o.cm=1;return _t("c",f,o)}var Pp=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var i=bt("v"),s=bt("f");return function f(o,l,c,h,u,d){var p=0,v="",m=[],g=[],b=0,w=0,k=0,T="",A;var E,y=0,C=0;var S,_;var x=0,O=0;var R=Array.isArray(d.CellXf),I;var N=[];var D=[];var F=l["!data"]!=null;var P=[],L={},M=false;var U=!!c.sheetStubs;for(var B=o.split(r),W=0,H=B.length;W!=H;++W){v=B[W].trim();var z=v.length;if(z===0)continue;var V=0;e:for(p=0;p":if(v[p-1]!="/"){++p;break e}if(c&&c.cellStyles){E=Jr(v.slice(V,p),true);y=E.r!=null?parseInt(E.r,10):y+1;C=-1;if(c.sheetRows&&c.sheetRows=p)break;E=Jr(v.slice(V,p),true);y=E.r!=null?parseInt(E.r,10):y+1;C=-1;if(c.sheetRows&&c.sheetRowsy-1)h.s.r=y-1;if(h.e.r":"")+v;if(g!=null&&g.length===2){b=0;T=g[1];for(w=0;w!=T.length;++w){if((k=T.charCodeAt(w)-64)<1||k>26)break;b=26*b+k}--b;C=b}else++C;for(w=0;w!=v.length;++w)if(v.charCodeAt(w)===62)break;++w;E=Jr(v.slice(0,w),true);if(!E.r)E.r=Ma({r:y-1,c:C});T=v.slice(w);A={t:""};if((g=T.match(i))!=null&&g[1]!=="")A.v=rt(g[1]);if(c.cellFormula){if((g=T.match(s))!=null&&g[1]!==""){A.f=rt(mt(g[1]),true);if(!c.xlfn)A.f=zh(A.f);if(g[0].indexOf('t="array"')>-1){A.F=(T.match(n)||[])[1];if(A.F.indexOf(":")>-1)N.push([za(A.F),A.F])}else if(g[0].indexOf('t="shared"')>-1){_=Jr(g[0]);var $=rt(mt(g[1]));if(!c.xlfn)$=zh($);D[parseInt(_.si,10)]=[_,$,E.r]}}else if(g=T.match(/]*\/>/)){_=Jr(g[0]);if(D[_.si])A.f=Wh(D[_.si][1],D[_.si][2],E.r)}var j=La(E.r);for(w=0;w=N[w][0].s.r&&j.r<=N[w][0].e.r)if(j.c>=N[w][0].s.c&&j.c<=N[w][0].e.c)A.F=N[w][1]}if(E.t==null&&A.v===undefined){if(A.f||A.F){A.v=0;A.t="n"}else if(!U)continue;else A.t="z"}else A.t=E.t||"n";if(h.s.c>C)h.s.c=C;if(h.e.c0)l["!rows"]=P}}();function Lp(e,r,t,a){var n=[],i=[],s=za(e["!ref"]),f="",o,l="",c=[],h=0,u=0,d=e["!rows"];var p=e["!data"]!=null;var v={r:l},m,g=-1;for(u=s.s.c;u<=s.e.c;++u)c[u]=Na(u);for(h=s.s.r;h<=s.e.r;++h){i=[];l=xa(h);for(u=s.s.c;u<=s.e.c;++u){o=c[u]+l;var b=p?(e["!data"][h]||[])[u]:e[o];if(b===undefined)continue;if((f=Fp(b,o,e,r,t,a))!=null)i.push(f)}if(i.length>0||d&&d[h]){v={r:l};if(d&&d[h]){m=d[h];if(m.hidden)v.hidden=1;g=-1;if(m.hpx)g=Gl(m.hpx);else if(m.hpt)g=m.hpt;if(g>-1){v.ht=g;v.customHeight=1}if(m.level){v.outlineLevel=m.level}}n[n.length]=_t("row",i.join(""),v)}}if(d)for(;h-1){v.ht=g;v.customHeight=1}if(m.level){v.outlineLevel=m.level}n[n.length]=_t("row","",v)}}return n.join("")}function Mp(e,r,t,a){var n=[Gr,_t("worksheet",null,{xmlns:Dt[0],"xmlns:r":Nt.r})];var i=t.SheetNames[e],s=0,f="";var o=t.Sheets[i];if(o==null)o={};var l=o["!ref"]||"A1";var c=za(l);if(c.e.c>16383||c.e.r>1048575){if(r.WTF)throw new Error("Range "+l+" exceeds format limit A1:XFD1048576");c.e.c=Math.min(c.e.c,16383);c.e.r=Math.min(c.e.c,1048575);l=Ba(c)}if(!a)a={};o["!comments"]=[];var h=[];kp(o,t,e,r,n);n[n.length]=_t("dimension",null,{ref:l});n[n.length]=Dp(o,r,e,t);if(r.sheetFormat)n[n.length]=_t("sheetFormatPr",null,{defaultRowHeight:r.sheetFormat.defaultRowHeight||"16",baseColWidth:r.sheetFormat.baseColWidth||"10",outlineLevelRow:r.sheetFormat.outlineLevelRow||"7"});if(o["!cols"]!=null&&o["!cols"].length>0)n[n.length]=xp(o,o["!cols"]);n[s=n.length]="";o["!links"]=[];if(o["!ref"]!=null){f=Lp(o,r,e,t,a);if(f.length>0)n[n.length]=f}if(n.length>s+1){n[n.length]="";n[s]=n[s].replace("/>",">")}if(o["!protect"])n[n.length]=Ep(o["!protect"]);if(o["!autofilter"]!=null)n[n.length]=Rp(o["!autofilter"],o,t,e);if(o["!merges"]!=null&&o["!merges"].length>0)n[n.length]=gp(o["!merges"]);var u=-1,d,p=-1;if(o["!links"].length>0){n[n.length]="";o["!links"].forEach(function(e){if(!e[1].Target)return;d={ref:e[0]};if(e[1].Target.charAt(0)!="#"){p=li(a,-1,nt(e[1].Target).replace(/#.*$/,""),ii.HLINK);d["r:id"]="rId"+p}if((u=e[1].Target.indexOf("#"))>-1)d.location=nt(e[1].Target.slice(u+1));if(e[1].Tooltip)d.tooltip=nt(e[1].Tooltip);d.display=e[1].display;n[n.length]=_t("hyperlink",null,d)});n[n.length]=""}delete o["!links"];if(o["!margins"]!=null)n[n.length]=Sp(o["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=Ct("ignoredErrors",_t("ignoredError",null,{numberStoredAsText:1,sqref:l}));if(h.length>0){p=li(a,-1,"../drawings/drawing"+(e+1)+".xml",ii.DRAW);n[n.length]=_t("drawing",null,{"r:id":"rId"+p});o["!drawing"]=h}if(o["!comments"].length>0){p=li(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",ii.VML);n[n.length]=_t("legacyDrawing",null,{"r:id":"rId"+p});o["!legacy"]=p}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function Up(e,r){var t={};var a=e.l+r;t.r=e._R(4);e.l+=4;var n=e._R(2);e.l+=1;var i=e._R(1);e.l=a;if(i&7)t.level=i&7;if(i&16)t.hidden=true;if(i&32)t.hpt=n/20;return t}function Bp(e,r,t){var a=wa(17+8*16);var n=(t["!rows"]||[])[e]||{};a._W(4,e);a._W(4,0);var i=320;if(n.hpx)i=Gl(n.hpx)*20;else if(n.hpt)i=n.hpt*20;a._W(2,i);a._W(1,0);var s=0;if(n.level)s|=n.level;if(n.hidden)s|=16;if(n.hpx||n.hpt)s|=32;a._W(1,s);a._W(1,0);var f=0,o=a.l;a.l+=4;var l={r:e,c:0};var c=t["!data"]!=null;for(var h=0;h<16;++h){if(r.s.c>h+1<<10||r.e.ca.l?a.slice(0,a.l):a}function Wp(e,r,t,a){var n=Bp(a,t,r);if(n.length>17||(r["!rows"]||[])[a])Aa(e,0,n)}var Hp=kn;var zp=Tn;function Vp(){}function Gp(e,r){var t={};var a=e[e.l];++e.l;t.above=!(a&64);t.left=!(a&128);e.l+=18;t.name=ln(e,r-19);return t}function $p(e,r,t){if(t==null)t=wa(84+4*e.length);var a=192;if(r){if(r.above)a&=~64;if(r.left)a&=~128}t._W(1,a);for(var n=1;n<3;++n)t._W(1,0);Cn({auto:1},t);t._W(-4,-1);t._W(-4,-1);cn(e,t);return t.slice(0,t.l)}function jp(e){var r=nn(e);return[r]}function Xp(e,r,t){if(t==null)t=wa(8);return sn(r,t)}function Yp(e){var r=fn(e);return[r]}function Kp(e,r,t){if(t==null)t=wa(4);return on(r,t)}function Zp(e){var r=nn(e);var t=e._R(1);return[r,t,"b"]}function Jp(e,r,t){if(t==null)t=wa(9);sn(r,t);t._W(1,e.v?1:0);return t}function qp(e){var r=fn(e);var t=e._R(1);return[r,t,"b"]}function Qp(e,r,t){if(t==null)t=wa(5);on(r,t);t._W(1,e.v?1:0);return t}function ev(e){var r=nn(e);var t=e._R(1);return[r,t,"e"]}function rv(e,r,t){if(t==null)t=wa(9);sn(r,t);t._W(1,e.v);return t}function tv(e){var r=fn(e);var t=e._R(1);return[r,t,"e"]}function av(e,r,t){if(t==null)t=wa(8);on(r,t);t._W(1,e.v);t._W(2,0);t._W(1,0);return t}function nv(e){var r=nn(e);var t=e._R(4);return[r,t,"s"]}function iv(e,r,t){if(t==null)t=wa(12);sn(r,t);t._W(4,r.v);return t}function sv(e){var r=fn(e);var t=e._R(4);return[r,t,"s"]}function fv(e,r,t){if(t==null)t=wa(8);on(r,t);t._W(4,r.v);return t}function ov(e){var r=nn(e);var t=An(e);return[r,t,"n"]}function lv(e,r,t){if(t==null)t=wa(16);sn(r,t);En(e.v,t);return t}function cv(e){var r=fn(e);var t=An(e);return[r,t,"n"]}function hv(e,r,t){if(t==null)t=wa(12);on(r,t);En(e.v,t);return t}function uv(e){var r=nn(e);var t=mn(e);return[r,t,"n"]}function dv(e,r,t){if(t==null)t=wa(12);sn(r,t);gn(e.v,t);return t}function pv(e){var r=fn(e);var t=mn(e);return[r,t,"n"]}function vv(e,r,t){if(t==null)t=wa(8);on(r,t);gn(e.v,t);return t}function mv(e){var r=nn(e);var t=en(e);return[r,t,"is"]}function gv(e){var r=nn(e);var t=Za(e);return[r,t,"str"]}function bv(e,r,t){var a=e.v==null?"":String(e.v);if(t==null)t=wa(12+4*e.v.length);sn(r,t);Ja(a,t);return t.length>t.l?t.slice(0,t.l):t}function wv(e){var r=fn(e);var t=Za(e);return[r,t,"str"]}function kv(e,r,t){var a=e.v==null?"":String(e.v);if(t==null)t=wa(8+4*a.length);on(r,t);Ja(a,t);return t.length>t.l?t.slice(0,t.l):t}function Tv(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"b"];if(t.cellFormula){e.l+=2;var f=xd(e,a-e.l,t);s[3]=gd(f,null,n,t.supbooks,t)}else e.l=a;return s}function Av(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"e"];if(t.cellFormula){e.l+=2;var f=xd(e,a-e.l,t);s[3]=gd(f,null,n,t.supbooks,t)}else e.l=a;return s}function Ev(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=An(e);var s=[n,i,"n"];if(t.cellFormula){e.l+=2;var f=xd(e,a-e.l,t);s[3]=gd(f,null,n,t.supbooks,t)}else e.l=a;return s}function yv(e,r,t){var a=e.l+r;var n=nn(e);n.r=t["!row"];var i=Za(e);var s=[n,i,"str"];if(t.cellFormula){e.l+=2;var f=xd(e,a-e.l,t);s[3]=gd(f,null,n,t.supbooks,t)}else e.l=a;return s}var Cv=kn;var Sv=Tn;function _v(e,r){if(r==null)r=wa(4);r._W(4,e);return r}function xv(e,r){var t=e.l+r;var a=kn(e,16);var n=hn(e);var i=Za(e);var s=Za(e);var f=Za(e);e.l=t;var o={rfx:a,relId:n,loc:i,display:f};if(s)o.Tooltip=s;return o}function Ov(e,r){var t=wa(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));Tn({s:La(e[0]),e:La(e[0])},t);vn("rId"+r,t);var a=e[1].Target.indexOf("#");var n=a==-1?"":e[1].Target.slice(a+1);Ja(n||"",t);Ja(e[1].Tooltip||"",t);Ja("",t);return t.slice(0,t.l)}function Rv(){}function Iv(e,r,t){var a=e.l+r;var n=bn(e,16);var i=e._R(1);var s=[n];s[2]=i;if(t.cellFormula){var f=_d(e,a-e.l,t);s[1]=f}else e.l=a;return s}function Nv(e,r,t){var a=e.l+r;var n=kn(e,16);var i=[n];if(t.cellFormula){var s=Rd(e,a-e.l,t);i[1]=s;e.l=a}else e.l=a;return i}function Dv(e,r,t){if(t==null)t=wa(18);var a=ep(e,r);t._W(-4,e);t._W(-4,e);t._W(4,(a.width||10)*256);t._W(4,0);var n=0;if(r.hidden)n|=1;if(typeof a.width=="number")n|=2;if(r.level)n|=r.level<<8;t._W(2,n);return t}var Fv=["left","right","top","bottom","header","footer"];function Pv(e){var r={};Fv.forEach(function(t){r[t]=An(e,8)});return r}function Lv(e,r){if(r==null)r=wa(6*8);rp(e);Fv.forEach(function(t){En(e[t],r)});return r}function Mv(e){var r=e._R(2);e.l+=28;return{RTL:r&32}}function Uv(e,r,t){if(t==null)t=wa(30);var a=924;if((((r||{}).Views||[])[0]||{}).RTL)a|=32;t._W(2,a);t._W(4,0);t._W(4,0);t._W(4,0);t._W(1,0);t._W(1,0);t._W(2,0);t._W(2,100);t._W(2,0);t._W(2,0);t._W(2,0);t._W(4,0);return t}function Bv(e){var r=wa(24);r._W(4,4);r._W(4,1);Tn(e,r);return r}function Wv(e,r){if(r==null)r=wa(16*4+2);r._W(2,e.password?ml(e.password):0);r._W(4,1);[["objects",false],["scenarios",false],["formatCells",true],["formatColumns",true],["formatRows",true],["insertColumns",true],["insertRows",true],["insertHyperlinks",true],["deleteColumns",true],["deleteRows",true],["selectLockedCells",false],["sort",true],["autoFilter",true],["pivotTables",true],["selectUnlockedCells",false]].forEach(function(t){if(t[1])r._W(4,e[t[0]]!=null&&!e[t[0]]?1:0);else r._W(4,e[t[0]]!=null&&e[t[0]]?0:1)});return r}function Hv(){}function zv(){}function Vv(e,r,t,a,n,i,s){if(!e)return e;var f=r||{};if(!a)a={"!id":{}};if(g!=null&&f.dense==null)f.dense=g;var o={};if(f.dense)o["!data"]=[];var l;var c={s:{r:2e6,c:2e6},e:{r:0,c:0}};var h=[];var u=false,d=false;var p,v,m,b,w,k,T,A,E;var y=[];f.biff=12;f["!row"]=0;var C=0,S=false;var _=[];var x={};var O=f.supbooks||n.supbooks||[[]];O.sharedf=x;O.arrayf=_;O.SheetNames=n.SheetNames||n.Sheets.map(function(e){return e.name});if(!f.supbooks){f.supbooks=O;if(n.Names)for(var R=0;R=R[0].s.r&&p.r<=R[0].e.r)if(w>=R[0].s.c&&w<=R[0].e.c){v.F=Ba(R[0]);S=true}}if(!S&&e.length>3)v.f=e[3]}if(c.s.r>p.r)c.s.r=p.r;if(c.s.c>w)c.s.c=w;if(c.e.rp.r)c.s.r=p.r;if(c.s.c>w)c.s.c=w;if(c.e.r=e.s){I[e.e--]={width:e.w/256,hidden:!!(e.flags&1),level:e.level};if(!D){D=true;Wl(e.w/256)}Hl(I[e.e+1])}break;case 161:o["!autofilter"]={ref:Ba(e)};break;case 476:o["!margins"]=e;break;case 147:if(!n.Sheets[t])n.Sheets[t]={};if(e.name)n.Sheets[t].CodeName=e.name;if(e.above||e.left)o["!outline"]={above:e.above,left:e.left};break;case 137:if(!n.Views)n.Views=[{}];if(!n.Views[0])n.Views[0]={};if(e.RTL)n.Views[0].RTL=true;break;case 485:break;case 64:;case 1053:break;case 151:break;case 152:;case 175:;case 644:;case 625:;case 562:;case 396:;case 1112:;case 1146:;case 471:;case 1050:;case 649:;case 1105:;case 589:;case 607:;case 564:;case 1055:;case 168:;case 174:;case 1180:;case 499:;case 507:;case 550:;case 171:;case 167:;case 1177:;case 169:;case 1181:;case 551:;case 552:;case 661:;case 639:;case 478:;case 537:;case 477:;case 536:;case 1103:;case 680:;case 1104:;case 1024:;case 663:;case 535:;case 678:;case 504:;case 1043:;case 428:;case 170:;case 3072:;case 50:;case 2070:;case 1045:break;case 35:u=true;break;case 36:u=false;break;case 37:h.push(g);u=true;break;case 38:h.pop();u=false;break;default:if(r.T){}else if(!u||f.WTF)throw new Error("Unexpected record 0x"+g.toString(16));}},f);delete f.supbooks;delete f["!row"];if(!o["!ref"]&&(c.s.r<2e6||l&&(l.e.r>0||l.e.c>0||l.s.r>0||l.s.c>0)))o["!ref"]=Ba(l||c);if(f.sheetRows&&o["!ref"]){var L=za(o["!ref"]);if(f.sheetRows<=+L.e.r){L.e.r=f.sheetRows-1;if(L.e.r>c.e.r)L.e.r=c.e.r;if(L.e.rc.e.c)L.e.c=c.e.c;if(L.e.c0)o["!merges"]=y;if(I.length>0)o["!cols"]=I;if(N.length>0)o["!rows"]=N;return o}function Gv(e,r,t,a,n,i,s){var f={r:t,c:a};if(r.c)i["!comments"].push([Ma(f),r.c]);if(r.v===undefined)return false;var o="";switch(r.t){case"b":o=r.v?"1":"0";break;case"d":r=Er(r);r.z=r.z||Z[14];r.v=ur(Tr(r.v));r.t="n";break;case"n":;case"e":o=""+r.v;break;default:o=r.v;break;}f.s=tp(n.cellXfs,r,n);if(r.l)i["!links"].push([Ma(f),r.l]);switch(r.t){case"s":;case"str":if(n.bookSST){o=Qd(n.Strings,r.v==null?"":String(r.v),n.revStrings); +f.t="s";f.v=o;if(s)Aa(e,18,fv(r,f));else Aa(e,7,iv(r,f))}else{f.t="str";if(s)Aa(e,17,kv(r,f));else Aa(e,6,bv(r,f))}return true;case"n":if(r.v==(r.v|0)&&r.v>-1e3&&r.v<1e3){if(s)Aa(e,13,vv(r,f));else Aa(e,2,dv(r,f))}else{if(s)Aa(e,16,hv(r,f));else Aa(e,5,lv(r,f))}return true;case"b":f.t="b";if(s)Aa(e,15,Qp(r,f));else Aa(e,4,Jp(r,f));return true;case"e":f.t="e";if(s)Aa(e,14,av(r,f));else Aa(e,3,rv(r,f));return true;}if(s)Aa(e,12,Kp(r,f));else Aa(e,1,Xp(r,f));return true}function $v(e,r,t,a){var n=za(r["!ref"]||"A1"),i,s="",f=[];Aa(e,145);var o=r["!data"]!=null;var l=n.e.r;if(r["!rows"])l=Math.max(n.e.r,r["!rows"].length-1);for(var c=n.s.r;c<=l;++c){s=xa(c);Wp(e,r,n,c);var h=false;if(c<=n.e.r)for(var u=n.s.c;u<=n.e.c;++u){if(c===n.s.r)f[u]=Na(u);i=f[u]+s;var d=o?(r["!data"][c]||[])[u]:r[i];if(!d){h=false;continue}h=Gv(e,d,c,u,a,r,h)}}Aa(e,146)}function jv(e,r){if(!r||!r["!merges"])return;Aa(e,177,_v(r["!merges"].length));r["!merges"].forEach(function(r){Aa(e,176,Sv(r))});Aa(e,178)}function Xv(e,r){if(!r||!r["!cols"])return;Aa(e,390);r["!cols"].forEach(function(r,t){if(r)Aa(e,60,Dv(t,r))});Aa(e,391)}function Yv(e,r){if(!r||!r["!ref"])return;Aa(e,648);Aa(e,649,Bv(za(r["!ref"])));Aa(e,650)}function Kv(e,r,t){r["!links"].forEach(function(r){if(!r[1].Target)return;var a=li(t,-1,r[1].Target.replace(/#.*$/,""),ii.HLINK);Aa(e,494,Ov(r,a))});delete r["!links"]}function Zv(e,r,t,a){if(r["!comments"].length>0){var n=li(a,-1,"../drawings/vmlDrawing"+(t+1)+".vml",ii.VML);Aa(e,551,vn("rId"+n));r["!legacy"]=n}}function Jv(e,r,t,a){if(!r["!autofilter"])return;var n=r["!autofilter"];var i=typeof n.ref==="string"?n.ref:Ba(n.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var s=t.Workbook.Names;var f=Ua(i);if(f.s.r==f.e.r){f.e.r=Ua(r["!ref"]).e.r;i=Ba(f)}for(var o=0;o16383||l.e.r>1048575){if(r.WTF)throw new Error("Range "+(s["!ref"]||"A1")+" exceeds format limit A1:XFD1048576");l.e.c=Math.min(l.e.c,16383);l.e.r=Math.min(l.e.c,1048575)}s["!links"]=[];s["!comments"]=[];Aa(n,129);if(t.vbaraw||s["!outline"])Aa(n,147,$p(f,s["!outline"]));Aa(n,148,zp(l));qv(n,s,t.Workbook);Qv(n,s);Xv(n,s,e,r,t);$v(n,s,e,r,t);em(n,s);Jv(n,s,t,e);jv(n,s);Kv(n,s,a);if(s["!margins"])Aa(n,476,Lv(s["!margins"]));if(!r||r.ignoreEC||r.ignoreEC==void 0)Yv(n,s);Zv(n,s,e,a);Aa(n,130);return n.end()}function tm(e){var r=[];var t=e.match(/^/);var a;(e.match(/(.*?)<\/c:pt>/gm)||[]).forEach(function(e){var a=e.match(/(.*)<\/c:v><\/c:pt>/);if(!a)return;r[+a[1]]=t?+a[2]:a[2]});var n=rt((e.match(/([\s\S]*?)<\/c:formatCode>/)||["","General"])[1]);(e.match(/(.*?)<\/c:f>/gm)||[]).forEach(function(e){a=e.replace(/<.*?>/g,"")});return[r,n,a]}function am(e,r,t,a,n,i){var s=i||{"!type":"chart"};if(!e)return i;var f=0,o=0,l="A";var c={s:{r:2e6,c:2e6},e:{r:0,c:0}};(e.match(/[\s\S]*?<\/c:numCache>/gm)||[]).forEach(function(e){var r=tm(e);c.s.r=c.s.c=0;c.e.c=f;l=Na(f);r[0].forEach(function(e,t){if(s["!data"]){if(!s["!data"][t])s["!data"][t]=[];s["!data"][t][f]={t:"n",v:e,z:r[1]}}else s[l+xa(t)]={t:"n",v:e,z:r[1]};o=t});if(c.e.r0)s["!ref"]=Ba(c);return s}function nm(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var i={"!type":"chart","!drawel":null,"!rel":""};var s;var f=e.match(dp);if(f)bp(f[0],i,n,t);if(s=e.match(/drawing r:id="(.*?)"/))i["!rel"]=s[1];if(a["!id"][i["!rel"]])i["!drawel"]=a["!id"][i["!rel"]];return i}function im(e,r){e.l+=10;var t=Za(e,r-10);return{name:t}}function sm(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var i={"!type":"chart","!drawel":null,"!rel":""};var s=[];var f=false;ka(e,function o(e,a,l){switch(l){case 550:i["!rel"]=e;break;case 651:if(!n.Sheets[t])n.Sheets[t]={};if(e.name)n.Sheets[t].CodeName=e.name;break;case 562:;case 652:;case 669:;case 679:;case 551:;case 552:;case 476:;case 3072:break;case 35:f=true;break;case 36:f=false;break;case 37:s.push(l);break;case 38:s.pop();break;default:if(a.T>0)s.push(l);else if(a.T<0)s.pop();else if(!f||r.WTF)throw new Error("Unexpected record 0x"+l.toString(16));}},r);if(a["!id"][i["!rel"]])i["!drawel"]=a["!id"][i["!rel"]];return i}var fm=[["allowRefreshQuery",false,"bool"],["autoCompressPictures",true,"bool"],["backupFile",false,"bool"],["checkCompatibility",false,"bool"],["CodeName",""],["date1904",false,"bool"],["defaultThemeVersion",0,"int"],["filterPrivacy",false,"bool"],["hidePivotFieldList",false,"bool"],["promptedSolutions",false,"bool"],["publishItems",false,"bool"],["refreshAllConnections",false,"bool"],["saveExternalLinkValues",true,"bool"],["showBorderUnselectedTables",true,"bool"],["showInkAnnotation",true,"bool"],["showObjects","all"],["showPivotChartFilter",false,"bool"],["updateLinks","userSet"]];var om=[["activeTab",0,"int"],["autoFilterDateGrouping",true,"bool"],["firstSheet",0,"int"],["minimized",false,"bool"],["showHorizontalScroll",true,"bool"],["showSheetTabs",true,"bool"],["showVerticalScroll",true,"bool"],["tabRatio",600,"int"],["visibility","visible"]];var lm=[];var cm=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function hm(e,r){for(var t=0;t!=e.length;++t){var a=e[t];for(var n=0;n!=r.length;++n){var i=r[n];if(a[i[0]]==null)a[i[0]]=i[1];else switch(i[2]){case"bool":if(typeof a[i[0]]=="string")a[i[0]]=ht(a[i[0]]);break;case"int":if(typeof a[i[0]]=="string")a[i[0]]=parseInt(a[i[0]],10);break;}}}}function um(e,r){for(var t=0;t!=r.length;++t){var a=r[t];if(e[a[0]]==null)e[a[0]]=a[1];else switch(a[2]){case"bool":if(typeof e[a[0]]=="string")e[a[0]]=ht(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function dm(e){um(e.WBProps,fm);um(e.CalcPr,cm);hm(e.WBView,om);hm(e.Sheets,lm);Jd.date1904=ht(e.WBProps.date1904)}function pm(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return ht(e.Workbook.WBProps.date1904)?"true":"false"}var vm=":][*?/\\".split("");function mm(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;vm.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function gm(e,r,t){e.forEach(function(a,n){mm(a);for(var i=0;i22)throw new Error("Bad Code Name: Worksheet"+s)}})}function bm(e){if(!e||!e.SheetNames||!e.Sheets)throw new Error("Invalid Workbook");if(!e.SheetNames.length)throw new Error("Workbook is empty");var r=e.Workbook&&e.Workbook.Sheets||[];gm(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":fm.forEach(function(e){if(c[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=ht(c[e[0]]);break;case"int":t.WBProps[e[0]]=parseInt(c[e[0]],10);break;default:t.WBProps[e[0]]=c[e[0]];}});if(c.codeName)t.WBProps.CodeName=mt(c.codeName);break;case"":break;case"":break;case"":;case"":break;case"":delete c[0];t.WBView.push(c);break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":a=false;break;case"":{i.Ref=rt(mt(e.slice(s,l)));t.Names.push(i)}break;case"":break;case"":delete c[0];t.CalcPr=c;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":;case"":break;case"":a=false;break;case"":a=true;break;case"":a=false;break;case"0;var a={codeName:"ThisWorkbook"};if(e.Workbook&&e.Workbook.WBProps){fm.forEach(function(r){if(e.Workbook.WBProps[r[0]]==null)return;if(e.Workbook.WBProps[r[0]]==r[1])return;a[r[0]]=e.Workbook.WBProps[r[0]]});if(e.Workbook.WBProps.CodeName){a.codeName=e.Workbook.WBProps.CodeName;delete a.CodeName}}r[r.length]=_t("workbookPr",null,a);var n=e.Workbook&&e.Workbook.Sheets||[];var i=0;if(n&&n[0]&&!!n[0].Hidden){r[r.length]="";for(i=0;i!=e.SheetNames.length;++i){if(!n[i])break;if(!n[i].Hidden)break}if(i==e.SheetNames.length)i=0;r[r.length]='';r[r.length]=""}r[r.length]="";for(i=0;i!=e.SheetNames.length;++i){var s={name:nt(e.SheetNames[i].slice(0,31))};s.sheetId=""+(i+1);s["r:id"]="rId"+(i+1);if(n[i])switch(n[i].Hidden){case 1:s.state="hidden";break;case 2:s.state="veryHidden";break;}r[r.length]=_t("sheet",null,s)}r[r.length]="";if(t){r[r.length]="";if(e.Workbook&&e.Workbook.Names)e.Workbook.Names.forEach(function(e){var t={name:e.Name};if(e.Comment)t.comment=e.Comment;if(e.Sheet!=null)t.localSheetId=""+e.Sheet;if(e.Hidden)t.hidden="1";if(!e.Ref)return;r[r.length]=_t("definedName",nt(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Am(e,r){var t={};t.Hidden=e._R(4);t.iTabID=e._R(4);t.strRelID=pn(e,r-8);t.name=Za(e);return t}function Em(e,r){if(!r)r=wa(127);r._W(4,e.Hidden);r._W(4,e.iTabID);vn(e.strRelID,r);Ja(e.name.slice(0,31),r);return r.length>r.l?r.slice(0,r.l):r}function ym(e,r){var t={};var a=e._R(4);t.defaultThemeVersion=e._R(4);var n=r>8?Za(e):"";if(n.length>0)t.CodeName=n;t.autoCompressPictures=!!(a&65536);t.backupFile=!!(a&64);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 Cm(e,r){if(!r)r=wa(72);var t=0;if(e){if(e.date1904)t|=1;if(e.filterPrivacy)t|=8}r._W(4,t);r._W(4,0);cn(e&&e.CodeName||"ThisWorkbook",r);return r.slice(0,r.l)}function Sm(e,r){var t={};e._R(4);t.ArchID=e._R(4);e.l+=r-8;return t}function _m(e,r,t){var a=e.l+r;var n=e._R(4);e.l+=1;var i=e._R(4);var s=dn(e);var f=Od(e,0,t);var o=hn(e);if(n&32)s="_xlnm."+s;e.l=a;var l={Name:s,Ptg:f,Flags:n};if(i<268435455)l.Sheet=i;if(o)l.Comment=o;return l}function xm(e,r){var t=wa(9);var a=0;var n=e.Name;if(Qn.indexOf(n)>-1){a|=32;n=n.slice(6)}t._W(4,a);t._W(1,0);t._W(4,e.Sheet==null?4294967295:e.Sheet);var i=[t,Ja(n),zd(e.Ref,r)];if(e.Comment)i.push(un(e.Comment));else{var s=wa(4);s._W(4,4294967295);i.push(s)}return D(i)}function Om(e,r){var t={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var a=[];var n=false;if(!r)r={};r.biff=12;var i=[];var s=[[]];s.SheetNames=[];s.XTI=[];Dg[16]={n:"BrtFRTArchID$",f:Sm};ka(e,function f(e,o,l){switch(l){case 156:s.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=gd(e.Ptg,null,null,s,r);delete r.SID;delete e.Ptg;i.push(e);break;case 1036:break;case 357:;case 358:;case 355:;case 667:if(!s[0].length)s[0]=[l,e];else s.push([l,e]);s[s.length-1].XTI=[];break;case 362:if(s.length===0){s[0]=[];s[0].XTI=[]}s[s.length-1].XTI=s[s.length-1].XTI.concat(e);s.XTI=s.XTI.concat(e);break;case 361:break;case 2071:;case 158:;case 143:;case 664:;case 353:break;case 3072:;case 3073:;case 534:;case 677:;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.push(l);n=true;break;case 36:a.pop();n=false;break;case 37:a.push(l);n=true;break;case 38:a.pop();n=false;break;case 16:break;default:if(o.T){}else if(!n||r.WTF&&a[a.length-1]!=37&&a[a.length-1]!=35)throw new Error("Unexpected record 0x"+l.toString(16));}},r);dm(t);t.Names=i;t.supbooks=s;return t}function Rm(e,r){Aa(e,143);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]};Aa(e,156,Em(n))}Aa(e,144)}function Im(r,t){if(!t)t=wa(127);for(var a=0;a!=4;++a)t._W(4,0);Ja("SheetJS",t);Ja(e.version,t);Ja(e.version,t);Ja("7262",t);return t.length>t.l?t.slice(0,t.l):t}function Nm(e,r){if(!r)r=wa(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 Dm(e,r){if(!r.Workbook||!r.Workbook.Sheets)return;var t=r.Workbook.Sheets;var a=0,n=-1,i=-1;for(;an)return;Aa(e,135);Aa(e,158,Nm(n));Aa(e,136)}function Fm(e,r){if(!r.Workbook||!r.Workbook.Names)return;r.Workbook.Names.forEach(function(t){try{if(t.Flags&14)return;Aa(e,39,xm(t,r))}catch(a){console.error("Could not serialize defined name "+JSON.stringify(t))}})}function Pm(e){var r=e.SheetNames.length;var t=wa(12*r+28);t._W(4,r+2);t._W(4,0);t._W(4,-2);t._W(4,-2);t._W(4,0);t._W(4,-1);t._W(4,-1);for(var a=0;a-1?rt(r||e).replace(/<.*?>/g,""):a.r;break;case"DateTime":if(e.slice(-1)!="Z")e+="Z";a.v=(Tr(e)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(a.v!==a.v)a.v=rt(e);else if(a.v<60)a.v=a.v-1;if(!c||c=="General")c="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=qn[e];if(l.cellText!==false)a.w=e;break;default:if(e==""&&r==""){a.t="z"}else{a.t="s";a.v=lt(r||e)}break;}tg(a,c,l);if(l.cellFormula!==false){if(a.Formula){var v=rt(a.Formula);if(v.charCodeAt(0)==61)v=v.slice(1);a.f=Lh(v,n);delete a.Formula;if(a.ArrayRange=="RC")a.F=Lh("RC:RC",n);else if(a.ArrayRange){a.F=Lh(a.ArrayRange,n);o.push([za(a.F),a.F])}}else{for(p=0;p=o[p][0].s.r&&n.r<=o[p][0].e.r)if(n.c>=o[p][0].s.c&&n.c<=o[p][0].e.c)a.F=o[p][1]}}if(l.cellStyles){d.forEach(function(e){if(!u.patternType&&e.patternType)u.patternType=e.patternType});a.s=u}if(a.StyleID!==undefined)a.ixfe=a.StyleID}function ig(e){return Qn.indexOf("_xlnm."+e)>-1?"_xlnm."+e:e}function sg(e){e.t=e.v||"";e.t=e.t.replace(/\r\n/g,"\n").replace(/\r/g,"\n");e.v=e.w=e.ixfe=undefined}function fg(e,r){var t=r||{};$e();var n=d(Rt(e));if(t.type=="binary"||t.type=="array"||t.type=="base64"){if(typeof a!=="undefined")n=a.utils.decode(65001,c(n));else n=mt(n)}var i=n.slice(0,1024).toLowerCase(),s=false;i=i.replace(/".*?"/g,"");if((i.indexOf(">")&1023)>Math.min(i.indexOf(",")&1023,i.indexOf(";")&1023)){var f=Er(t);f.type="string";return Do.to_workbook(n,f)}if(i.indexOf("=0)s=true});if(s)return nb(n,t);Qm={"General Number":"General","General Date":Z[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":Z[15],"Short Date":Z[14],"Long Time":Z[19],"Medium Time":Z[18],"Short Time":Z[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:Z[2],Standard:Z[4],Percent:Z[10],Scientific:Z[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var o;var l=[],h;if(g!=null&&t.dense==null)t.dense=g;var u={},p=[],v={},m="";if(t.dense)v["!data"]=[];var b={},w={};var k=Jm(''),T=0;var A=0,E=0;var y={s:{r:2e6,c:2e6},e:{r:0,c:0}};var C={},S={};var _="",x=0;var O=[];var R={},I={},N=0,D=[];var F=[],P={};var L=[],M,U=false;var B=[];var W=[],H={},z=0,V=0;var G={Sheets:[],WBProps:{date1904:false}},$={};It.lastIndex=0;n=n.replace(//gm,"");var j="";while(o=It.exec(n))switch(o[3]=(j=o[3]).toLowerCase()){case"data":if(j=="data"){if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else if(o[0].charAt(o[0].length-2)!=="/")l.push([o[3],true]);break}if(l[l.length-1][1])break;if(o[1]==="/")ng(n.slice(T,o.index),_,k,l[l.length-1][0]=="comment"?P:b,{c:A,r:E},C,L[A],w,B,t);else{_="";k=Jm(o[0]);T=o.index+o[0].length}break;case"cell":if(o[1]==="/"){if(F.length>0)b.c=F;if((!t.sheetRows||t.sheetRows>E)&&b.v!==void 0){if(t.dense){if(!v["!data"][E])v["!data"][E]=[];v["!data"][E][A]=b}else v[Na(A)+xa(E)]=b}if(b.HRef){b.l={Target:rt(b.HRef)};if(b.HRefScreenTip)b.l.Tooltip=b.HRefScreenTip;delete b.HRef;delete b.HRefScreenTip}if(b.MergeAcross||b.MergeDown){z=A+(parseInt(b.MergeAcross,10)|0);V=E+(parseInt(b.MergeDown,10)|0);if(z>A||V>E)O.push({s:{c:A,r:E},e:{c:z,r:V}})}if(!t.sheetStubs){if(b.MergeAcross)A=z+1;else++A}else if(b.MergeAcross||b.MergeDown){for(var X=A;X<=z;++X){for(var Y=E;Y<=V;++Y){if(X>A||Y>E){if(t.dense){if(!v["!data"][Y])v["!data"][Y]=[];v["!data"][Y][X]={t:"z"}}else v[Na(X)+xa(Y)]={t:"z"}}}}A=z+1}else++A}else{b=qm(o[0]);if(b.Index)A=+b.Index-1;if(Ay.e.c)y.e.c=A;if(o[0].slice(-2)==="/>")++A;F=[]}break;case"row":if(o[1]==="/"||o[0].slice(-2)==="/>"){if(Ey.e.r)y.e.r=E;if(o[0].slice(-2)==="/>"){w=Jm(o[0]);if(w.Index)E=+w.Index-1}A=0;++E}else{w=Jm(o[0]);if(w.Index)E=+w.Index-1;H={};if(w.AutoFitHeight=="0"||w.Height){H.hpx=parseInt(w.Height,10);H.hpt=Gl(H.hpx);W[E]=H}if(w.Hidden=="1"){H.hidden=true;W[E]=H}}break;case"worksheet":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"));p.push(m);if(y.s.r<=y.e.r&&y.s.c<=y.e.c){v["!ref"]=Ba(y);if(t.sheetRows&&t.sheetRows<=y.e.r){v["!fullref"]=v["!ref"];y.e.r=t.sheetRows-1;v["!ref"]=Ba(y)}}if(O.length)v["!merges"]=O;if(L.length>0)v["!cols"]=L;if(W.length>0)v["!rows"]=W;u[m]=v}else{y={s:{r:2e6,c:2e6},e:{r:0,c:0}};E=A=0;l.push([o[3],false]);h=Jm(o[0]);m=rt(h.Name);v={};if(t.dense)v["!data"]=[];O=[];B=[];W=[];$={name:m,Hidden:0};G.Sheets.push($)}break;case"table":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else if(o[0].slice(-2)=="/>")break;else{l.push([o[3],false]);L=[];U=false}break;case"style":if(o[1]==="/")ag(C,S,t);else S=Jm(o[0]);break;case"numberformat":S.nf=rt(Jm(o[0]).Format||"General");if(Qm[S.nf])S.nf=Qm[S.nf];for(var K=0;K!=392;++K)if(Z[K]==S.nf)break;if(K==392)for(K=57;K!=392;++K)if(Z[K]==null){qe(S.nf,K);break}break;case"column":if(l[l.length-1][0]!=="table")break;if(o[1]==="/")break;M=Jm(o[0]);if(M.Hidden){M.hidden=true;delete M.Hidden}if(M.Width)M.wpx=parseInt(M.Width,10);if(!U&&M.wpx>10){U=true;Pl=Nl;for(var J=0;J0)ee.Sheet=G.Sheets.length-1;G.Names.push(ee);break;case"namedcell":break;case"b":break;case"i":break;case"u":break;case"s":break;case"em":break;case"h2":break;case"h3":break;case"sub":break;case"sup":break;case"span":break;case"alignment":break;case"borders":break;case"border":break;case"font":if(o[0].slice(-2)==="/>")break;else if(o[1]==="/")_+=n.slice(x,o.index);else x=o.index+o[0].length;break;case"interior":if(!t.cellStyles)break;S.Interior=Jm(o[0]);break;case"protection":break;case"author":;case"title":;case"description":;case"created":;case"keywords":;case"subject":;case"category":;case"company":;case"lastauthor":;case"lastsaved":;case"lastprinted":;case"version":;case"revision":;case"totaltime":;case"hyperlinkbase":;case"manager":;case"contentstatus":;case"identifier":;case"language":;case"appname":if(o[0].slice(-2)==="/>")break;else if(o[1]==="/")Ni(R,j,n.slice(N,o.index));else N=o.index+o[0].length;break;case"paragraphs":break;case"styles":;case"workbook":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else l.push([o[3],false]);break;case"comment":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"));sg(P);F.push(P)}else{l.push([o[3],false]);h=Jm(o[0]);P={a:h.Author}}break;case"autofilter":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else if(o[0].charAt(o[0].length-2)!=="/"){var re=Jm(o[0]);v["!autofilter"]={ref:Lh(re.Range).replace(/\$/g,"")};l.push([o[3],true])}break;case"name":break;case"datavalidation":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else{if(o[0].charAt(o[0].length-2)!=="/")l.push([o[3],true])}break;case"pixelsperinch":break;case"componentoptions":;case"documentproperties":;case"customdocumentproperties":;case"officedocumentsettings":;case"pivottable":;case"pivotcache":;case"names":;case"mapinfo":;case"pagebreaks":;case"querytable":;case"sorting":;case"schema":;case"conditionalformatting":;case"smarttagtype":;case"smarttags":;case"excelworkbook":;case"workbookoptions":;case"worksheetoptions":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"))}else if(o[0].charAt(o[0].length-2)!=="/")l.push([o[3],true]);break;case"null":break;default:if(l.length==0&&o[3]=="document")return mb(n,t);if(l.length==0&&o[3]=="uof")return mb(n,t);var te=true;switch(l[l.length-1][0]){case"officedocumentsettings":switch(o[3]){case"allowpng":break;case"removepersonalinformation":break;case"downloadcomponents":break;case"locationofcomponents":break;case"colors":break;case"color":break;case"index":break;case"rgb":break;case"targetscreensize":break;case"readonlyrecommended":break;default:te=false;}break;case"componentoptions":switch(o[3]){case"toolbar":break;case"hideofficelogo":break;case"spreadsheetautofit":break;case"label":break;case"caption":break;case"maxheight":break;case"maxwidth":break;case"nextsheetnumber":break;default:te=false;}break;case"excelworkbook":switch(o[3]){case"date1904":G.WBProps.date1904=true;break;case"windowheight":break;case"windowwidth":break;case"windowtopx":break;case"windowtopy":break;case"tabratio":break;case"protectstructure":break;case"protectwindow":break;case"protectwindows":break;case"activesheet":break;case"displayinknotes":break;case"firstvisiblesheet":break;case"supbook":break;case"sheetname":break;case"sheetindex":break;case"sheetindexfirst":break;case"sheetindexlast":break;case"dll":break;case"acceptlabelsinformulas":break;case"donotsavelinkvalues":break;case"iteration":break;case"maxiterations":break;case"maxchange":break;case"path":break;case"xct":break;case"count":break;case"selectedsheets":break;case"calculation":break;case"uncalced":break;case"startupprompt":break;case"crn":break;case"externname":break;case"formula":break;case"colfirst":break;case"collast":break;case"wantadvise":break;case"boolean":break;case"error":break;case"text":break;case"ole":break;case"noautorecover":break;case"publishobjects":break;case"donotcalculatebeforesave":break;case"number":break;case"refmoder1c1":break;case"embedsavesmarttags":break;default:te=false;}break;case"workbookoptions":switch(o[3]){case"owcversion":break;case"height":break;case"width":break;default:te=false;}break;case"worksheetoptions":switch(o[3]){case"visible":if(o[0].slice(-2)==="/>"){}else if(o[1]==="/")switch(n.slice(N,o.index)){case"SheetHidden":$.Hidden=1;break;case"SheetVeryHidden":$.Hidden=2;break;}else N=o.index+o[0].length;break;case"header":if(!v["!margins"])rp(v["!margins"]={},"xlml");if(!isNaN(+Jr(o[0]).Margin))v["!margins"].header=+Jr(o[0]).Margin;break;case"footer":if(!v["!margins"])rp(v["!margins"]={},"xlml");if(!isNaN(+Jr(o[0]).Margin))v["!margins"].footer=+Jr(o[0]).Margin;break;case"pagemargins":var ae=Jr(o[0]);if(!v["!margins"])rp(v["!margins"]={},"xlml");if(!isNaN(+ae.Top))v["!margins"].top=+ae.Top;if(!isNaN(+ae.Left))v["!margins"].left=+ae.Left;if(!isNaN(+ae.Right))v["!margins"].right=+ae.Right;if(!isNaN(+ae.Bottom))v["!margins"].bottom=+ae.Bottom;break;case"displayrighttoleft":if(!G.Views)G.Views=[];if(!G.Views[0])G.Views[0]={};G.Views[0].RTL=true;break;case"freezepanes":break;case"frozennosplit":break;case"splithorizontal":;case"splitvertical":break;case"donotdisplaygridlines":break;case"activerow":break;case"activecol":break;case"toprowbottompane":break;case"leftcolumnrightpane":break;case"unsynced":break;case"print":break;case"printerrors":break;case"panes":break;case"scale":break;case"pane":break;case"number":break;case"layout":break;case"pagesetup":break;case"selected":break;case"protectobjects":break;case"enableselection":break;case"protectscenarios":break;case"validprinterinfo":break;case"horizontalresolution":break;case"verticalresolution":break;case"numberofcopies":break;case"activepane":break;case"toprowvisible":break;case"leftcolumnvisible":break;case"fittopage":break;case"rangeselection":break;case"papersizeindex":break;case"pagelayoutzoom":break;case"pagebreakzoom":break;case"filteron":break;case"fitwidth":break;case"fitheight":break;case"commentslayout":break;case"zoom":break;case"lefttoright":break;case"gridlines":break;case"allowsort":break;case"allowfilter":break;case"allowinsertrows":break;case"allowdeleterows":break;case"allowinsertcols":break;case"allowdeletecols": +break;case"allowinserthyperlinks":break;case"allowformatcells":break;case"allowsizecols":break;case"allowsizerows":break;case"nosummaryrowsbelowdetail":if(!v["!outline"])v["!outline"]={};v["!outline"].above=true;break;case"tabcolorindex":break;case"donotdisplayheadings":break;case"showpagelayoutzoom":break;case"nosummarycolumnsrightdetail":if(!v["!outline"])v["!outline"]={};v["!outline"].left=true;break;case"blackandwhite":break;case"donotdisplayzeros":break;case"displaypagebreak":break;case"rowcolheadings":break;case"donotdisplayoutline":break;case"noorientation":break;case"allowusepivottables":break;case"zeroheight":break;case"viewablerange":break;case"selection":break;case"protectcontents":break;default:te=false;}break;case"pivottable":;case"pivotcache":switch(o[3]){case"immediateitemsondrop":break;case"showpagemultipleitemlabel":break;case"compactrowindent":break;case"location":break;case"pivotfield":break;case"orientation":break;case"layoutform":break;case"layoutsubtotallocation":break;case"layoutcompactrow":break;case"position":break;case"pivotitem":break;case"datatype":break;case"datafield":break;case"sourcename":break;case"parentfield":break;case"ptlineitems":break;case"ptlineitem":break;case"countofsameitems":break;case"item":break;case"itemtype":break;case"ptsource":break;case"cacheindex":break;case"consolidationreference":break;case"filename":break;case"reference":break;case"nocolumngrand":break;case"norowgrand":break;case"blanklineafteritems":break;case"hidden":break;case"subtotal":break;case"basefield":break;case"mapchilditems":break;case"function":break;case"refreshonfileopen":break;case"printsettitles":break;case"mergelabels":break;case"defaultversion":break;case"refreshname":break;case"refreshdate":break;case"refreshdatecopy":break;case"versionlastrefresh":break;case"versionlastupdate":break;case"versionupdateablemin":break;case"versionrefreshablemin":break;case"calculation":break;default:te=false;}break;case"pagebreaks":switch(o[3]){case"colbreaks":break;case"colbreak":break;case"rowbreaks":break;case"rowbreak":break;case"colstart":break;case"colend":break;case"rowend":break;default:te=false;}break;case"autofilter":switch(o[3]){case"autofiltercolumn":break;case"autofiltercondition":break;case"autofilterand":break;case"autofilteror":break;default:te=false;}break;case"querytable":switch(o[3]){case"id":break;case"autoformatfont":break;case"autoformatpattern":break;case"querysource":break;case"querytype":break;case"enableredirections":break;case"refreshedinxl9":break;case"urlstring":break;case"htmltables":break;case"connection":break;case"commandtext":break;case"refreshinfo":break;case"notitles":break;case"nextid":break;case"columninfo":break;case"overwritecells":break;case"donotpromptforfile":break;case"textwizardsettings":break;case"source":break;case"number":break;case"decimal":break;case"thousandseparator":break;case"trailingminusnumbers":break;case"formatsettings":break;case"fieldtype":break;case"delimiters":break;case"tab":break;case"comma":break;case"autoformatname":break;case"versionlastedit":break;case"versionlastrefresh":break;default:te=false;}break;case"datavalidation":switch(o[3]){case"range":break;case"type":break;case"min":break;case"max":break;case"sort":break;case"descending":break;case"order":break;case"casesensitive":break;case"value":break;case"errorstyle":break;case"errormessage":break;case"errortitle":break;case"inputmessage":break;case"inputtitle":break;case"combohide":break;case"inputhide":break;case"condition":break;case"qualifier":break;case"useblank":break;case"value1":break;case"value2":break;case"format":break;case"cellrangelist":break;default:te=false;}break;case"sorting":;case"conditionalformatting":switch(o[3]){case"range":break;case"type":break;case"min":break;case"max":break;case"sort":break;case"descending":break;case"order":break;case"casesensitive":break;case"value":break;case"errorstyle":break;case"errormessage":break;case"errortitle":break;case"cellrangelist":break;case"inputmessage":break;case"inputtitle":break;case"combohide":break;case"inputhide":break;case"condition":break;case"qualifier":break;case"useblank":break;case"value1":break;case"value2":break;case"format":break;default:te=false;}break;case"mapinfo":;case"schema":;case"data":switch(o[3]){case"map":break;case"entry":break;case"range":break;case"xpath":break;case"field":break;case"xsdtype":break;case"filteron":break;case"aggregate":break;case"elementtype":break;case"attributetype":break;case"schema":;case"element":;case"complextype":;case"datatype":;case"all":;case"attribute":;case"extends":break;case"row":break;default:te=false;}break;case"smarttags":break;default:te=false;break;}if(te)break;if(o[3].match(/!\[CDATA/))break;if(!l[l.length-1][1])throw"Unrecognized tag: "+o[3]+"|"+l.join("|");if(l[l.length-1][0]==="customdocumentproperties"){if(o[0].slice(-2)==="/>")break;else if(o[1]==="/")rg(I,j,D,n.slice(N,o.index));else{D=o;N=o.index+o[0].length}break}if(t.WTF)throw"Unrecognized tag: "+o[3]+"|"+l.join("|");}var ne={};if(!t.bookSheets&&!t.bookProps)ne.Sheets=u;ne.SheetNames=p;ne.Workbook=G;ne.SSF=Er(Z);ne.Props=R;ne.Custprops=I;ne.bookType="xlml";return ne}function og(e,r){Tw(r=r||{});switch(r.type||"base64"){case"base64":return fg(A(e),r);case"binary":;case"buffer":;case"file":return fg(e,r);case"array":return fg(R(e),r);}}function lg(e,r){var t=[];if(e.Props)t.push(Di(e.Props,r));if(e.Custprops)t.push(Fi(e.Props,e.Custprops,r));return t.join("")}function cg(e){if((((e||{}).Workbook||{}).WBProps||{}).date1904)return'';return""}function hg(e,r){var t=[''];r.cellXfs.forEach(function(e,r){var a=[];a.push(_t("NumberFormat",null,{"ss:Format":nt(Z[e.numFmtId])}));var n={"ss:ID":"s"+(21+r)};t.push(_t("Style",a.join(""),n))});return _t("Styles",t.join(""))}function ug(e){return _t("NamedRange",null,{"ss:Name":e.Name.slice(0,6)=="_xlnm."?e.Name.slice(6):e.Name,"ss:RefersTo":"="+Uh(e.Ref,{r:0,c:0})})}function dg(e){if(!((e||{}).Workbook||{}).Names)return"";var r=e.Workbook.Names;var t=[];for(var a=0;a");if(e["!margins"].header)n.push(_t("Header",null,{"x:Margin":e["!margins"].header}));if(e["!margins"].footer)n.push(_t("Footer",null,{"x:Margin":e["!margins"].footer}));n.push(_t("PageMargins",null,{"x:Bottom":e["!margins"].bottom||"0.75","x:Left":e["!margins"].left||"0.7","x:Right":e["!margins"].right||"0.7","x:Top":e["!margins"].top||"0.75"}));n.push("")}if(a&&a.Workbook&&a.Workbook.Sheets&&a.Workbook.Sheets[t]){if(a.Workbook.Sheets[t].Hidden)n.push(_t("Visible",a.Workbook.Sheets[t].Hidden==1?"SheetHidden":"SheetVeryHidden",{}));else{for(var i=0;i")}}if(((((a||{}).Workbook||{}).Views||[])[0]||{}).RTL)n.push("");if(e["!protect"]){n.push(Ct("ProtectContents","True"));if(e["!protect"].objects)n.push(Ct("ProtectObjects","True"));if(e["!protect"].scenarios)n.push(Ct("ProtectScenarios","True"));if(e["!protect"].selectLockedCells!=null&&!e["!protect"].selectLockedCells)n.push(Ct("EnableSelection","NoSelection"));else if(e["!protect"].selectUnlockedCells!=null&&!e["!protect"].selectUnlockedCells)n.push(Ct("EnableSelection","UnlockedCells"));[["formatCells","AllowFormatCells"],["formatColumns","AllowSizeCols"],["formatRows","AllowSizeRows"],["insertColumns","AllowInsertCols"],["insertRows","AllowInsertRows"],["insertHyperlinks","AllowInsertHyperlinks"],["deleteColumns","AllowDeleteCols"],["deleteRows","AllowDeleteRows"],["sort","AllowSort"],["autoFilter","AllowFilter"],["pivotTables","AllowUsePivotTables"]].forEach(function(r){if(e["!protect"][r[0]])n.push("<"+r[1]+"/>")})}if(n.length==0)return"";return _t("WorksheetOptions",n.join(""),{xmlns:Ft.x})}function mg(e){return e.map(function(e){var r=ct(e.t||"");var t=_t("ss:Data",r,{xmlns:"http://www.w3.org/TR/REC-html40"});return _t("Comment",t,{"ss:Author":e.a})}).join("")}function gg(e,r,t,a,n,i,s){if(!e||e.v==undefined&&e.f==undefined)return"";var f={};if(e.f)f["ss:Formula"]="="+nt(Uh(e.f,s));if(e.F&&e.F.slice(0,r.length)==r){var o=La(e.F.slice(r.length+1));f["ss:ArrayRange"]="RC:R"+(o.r==s.r?"":"["+(o.r-s.r)+"]")+"C"+(o.c==s.c?"":"["+(o.c-s.c)+"]")}if(e.l&&e.l.Target){f["ss:HRef"]=nt(e.l.Target);if(e.l.Tooltip)f["x:HRefScreenTip"]=nt(e.l.Tooltip)}if(t["!merges"]){var l=t["!merges"];for(var c=0;c!=l.length;++c){if(l[c].s.c!=s.c||l[c].s.r!=s.r)continue;if(l[c].e.c>l[c].s.c)f["ss:MergeAcross"]=l[c].e.c-l[c].s.c;if(l[c].e.r>l[c].s.r)f["ss:MergeDown"]=l[c].e.r-l[c].s.r}}var h="",u="";switch(e.t){case"z":if(!a.sheetStubs)return"";break;case"n":h="Number";u=String(e.v);break;case"b":h="Boolean";u=e.v?"1":"0";break;case"e":h="Error";u=Jn[e.v];break;case"d":h="DateTime";u=new Date(e.v).toISOString();if(e.z==null)e.z=e.z||Z[14];break;case"s":h="String";u=ot(e.v||"");break;}var d=tp(a.cellXfs,e,a);f["ss:StyleID"]="s"+(21+d);f["ss:Index"]=s.c+1;var p=e.v!=null?u:"";var v=e.t=="z"?"":''+p+"";if((e.c||[]).length>0)v+=mg(e.c);return _t("Cell",v,f)}function bg(e,r){var t='"}function wg(e,r,t,a){if(!e["!ref"])return"";var n=za(e["!ref"]);var i=e["!merges"]||[],s=0;var f=[];if(e["!cols"])e["!cols"].forEach(function(e,r){Hl(e);var t=!!e.width;var a=ep(r,e);var n={"ss:Index":r+1};if(t)n["ss:Width"]=Ll(a.width);if(e.hidden)n["ss:Hidden"]="1";f.push(_t("Column",null,n))});var o=e["!data"]!=null;for(var l=n.s.r;l<=n.e.r;++l){var c=[bg(l,(e["!rows"]||[])[l])];for(var h=n.s.c;h<=n.e.c;++h){var u=false;for(s=0;s!=i.length;++s){if(i[s].s.c>h)continue;if(i[s].s.r>l)continue;if(i[s].e.c");if(c.length>2)f.push(c.join(""))}return f.join("")}function kg(e,r,t){var a=[];var n=t.SheetNames[e];var i=t.Sheets[n];var s=i?pg(i,r,e,t):"";if(s.length>0)a.push(""+s+"");s=i?wg(i,r,e,t):"";if(s.length>0)a.push(""+s+"
");a.push(vg(i,r,e,t));if(i["!autofilter"])a.push('');return a.join("")}function Tg(e,r){if(!r)r={};if(!e.SSF)e.SSF=Er(Z);if(e.SSF){$e();Ge(e.SSF);r.revssf=lr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF;r.cellXfs=[];tp(r.cellXfs,{},{revssf:{General:0}})}var t=[];t.push(lg(e,r));t.push(cg(e,r));t.push("");t.push("");for(var a=0;a40)return r;t.l-=4;r.Reserved1=t._R(0,"lpstr-ansi");if(t.length-t.l<=4)return r;a=t._R(4);if(a!==1907505652)return r;r.UnicodeClipboardFormat=Rn(t);a=t._R(4);if(a==0||a>40)return r;t.l-=4;r.Reserved2=t._R(0,"lpwstr")}var Eg=[60,1084,2066,2165,2175];function yg(e,r,t,a,n){var i=a;var s=[];var f=t.slice(t.l,t.l+i);if(n&&n.enc&&n.enc.insitu&&f.length>0)switch(e){case 9:;case 521:;case 1033:;case 2057:;case 47:;case 405:;case 225:;case 406:;case 312:;case 404:;case 10:break;case 133:break;default:n.enc.insitu(f);}s.push(f);t.l+=i;var o=sa(t,t.l),l=Fg[o];var c=0;while(l!=null&&Eg.indexOf(o)>-1){i=sa(t,t.l+2);c=t.l+4;if(o==2066)c+=4;else if(o==2165||o==2175){c+=12}f=t.slice(c,t.l+4+i);s.push(f);t.l+=4+i;l=Fg[o=sa(t,t.l)]}var h=D(s);ga(h,0);var u=0;h.lens=[];for(var d=0;d1)return;if(t.sheetRows&&e.r>=t.sheetRows)return;if(t.cellStyles&&r.XF&&r.XF.data)x(e,r,t);delete r.ixfe;delete r.XF;u=e;d=Ma(e);if(!s||!s.s||!s.e)s={s:{r:0,c:0},e:{r:0,c:0}};if(e.rs.e.r)s.e.r=e.r+1;if(e.c+1>s.e.c)s.e.c=e.c+1;if(t.cellFormula&&r.f){for(var a=0;ae.c||k[a][0].s.r>e.r)continue;if(k[a][0].e.c>8)!==j)throw new Error("rt mismatch: "+K+"!="+j);if(Y.r==12){e.l+=10;X-=10}}var J={};if(j===10)J=Y.f(e,X,R);else J=yg(j,Y,e,X,R);if(B==0&&[9,521,1033,2057].indexOf(U)===-1)continue;switch(j){case 34:t.opts.Date1904=C.WBProps.date1904=J;break;case 134:t.opts.WriteProtect=true;break;case 47:if(!R.enc)e.l=0;R.enc=J;if(!r.password)throw new Error("File is password-protected");if(J.valid==null)throw new Error("Encryption scheme unsupported");if(!J.valid)throw new Error("Password is incorrect");break;case 92:R.lastuser=J;break;case 66:var q=Number(J);switch(q){case 21010:q=1200;break;case 32768:q=1e4;break;case 32769:q=1252;break;}o(R.codepage=q);G=true;break;case 317:R.rrtabid=J;break;case 25:R.winlocked=J;break;case 439:t.opts["RefreshAll"]=J;break;case 12:t.opts["CalcCount"]=J;break;case 16:t.opts["CalcDelta"]=J;break;case 17:t.opts["CalcIter"]=J;break;case 13:t.opts["CalcMode"]=J;break;case 14:t.opts["CalcPrecision"]=J;break;case 95:t.opts["CalcSaveRecalc"]=J;break;case 15:R.CalcRefMode=J;break;case 2211:t.opts.FullCalc=J;break;case 129:if(J.fDialog)n["!type"]="dialog";if(!J.fBelow)(n["!outline"]||(n["!outline"]={})).above=true;if(!J.fRight)(n["!outline"]||(n["!outline"]={})).left=true;break;case 224:E.push(J);break;case 430:M.push([J]);M[M.length-1].XTI=[];break;case 35:;case 547:M[M.length-1].push(J);break;case 24:;case 536:V={Name:J.Name,Ref:gd(J.rgce,s,null,M,R)};if(J.itab>0)V.Sheet=J.itab-1;M.names.push(V);if(!M[0]){M[0]=[];M[0].XTI=[]}M[M.length-1].push(J);if(J.Name=="_xlnm._FilterDatabase"&&J.itab>0)if(J.rgce&&J.rgce[0]&&J.rgce[0][0]&&J.rgce[0][0][0]=="PtgArea3d")z[J.itab-1]={ref:Ba(J.rgce[0][0][1][2])};break;case 22:R.ExternCount=J;break;case 23:if(M.length==0){M[0]=[];M[0].XTI=[]}M[M.length-1].XTI=M[M.length-1].XTI.concat(J);M.XTI=M.XTI.concat(J);break;case 2196:if(R.biff<8)break;if(V!=null)V.Comment=J[1];break;case 18:n["!protect"]=J;break;case 19:if(J!==0&&R.WTF)console.error("Password verifier: "+J);break;case 133:{i[J.pos]=J;R.snames.push(J.name)}break;case 10:{if(--B)break;if(s.e){if(s.e.r>0&&s.e.c>0){s.e.r--;s.e.c--;n["!ref"]=Ba(s);if(r.sheetRows&&r.sheetRows<=s.e.r){var Q=s.e.r;s.e.r=r.sheetRows-1;n["!fullref"]=n["!ref"];n["!ref"]=Ba(s);s.e.r=Q}s.e.r++;s.e.c++}if(N.length>0)n["!merges"]=N;if(D.length>0)n["!objects"]=D;if(F.length>0)n["!cols"]=F;if(P.length>0)n["!rows"]=P;C.Sheets.push(S)}if(c==="")h=n;else a[c]=n;n={};if(r.dense)n["!data"]=[]}break;case 9:;case 521:;case 1033:;case 2057:{if(R.biff===8)R.biff={9:2,521:3,1033:4}[j]||{512:2,768:3,1024:4,1280:5,1536:8,2:2,7:2}[J.BIFFVer]||8;R.biffguess=J.BIFFVer==0;if(J.BIFFVer==0&&J.dt==4096){R.biff=5;G=true;o(R.codepage=28591)}if(R.biff==8&&J.BIFFVer==0&&J.dt==16)R.biff=2;if(B++)break;n={};if(r.dense)n["!data"]=[];if(R.biff<8&&!G){G=true;o(R.codepage=r.codepage||1252)}if(R.biff<5||J.BIFFVer==0&&J.dt==4096){if(c==="")c="Sheet1";s={s:{r:0,c:0},e:{r:0,c:0}};var ee={pos:e.l-X,name:c};i[ee.pos]=ee;R.snames.push(c)}else c=(i[$]||{name:""}).name;if(J.dt==32)n["!type"]="chart";if(J.dt==64)n["!type"]="macro";N=[];D=[];R.arrayf=k=[];F=[];P=[];L=false;S={Hidden:(i[$]||{hs:0}).hs,name:c}}break;case 515:;case 3:;case 2:{if(n["!type"]=="chart")if(r.dense?(n["!data"][J.r]||[])[J.c]:n[Na(J.c)+xa(J.r)])++J.c;T={ixfe:J.ixfe,XF:E[J.ixfe]||{},v:J.val,t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];Cg(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 5:;case 517:{T={ixfe:J.ixfe,XF:E[J.ixfe],v:J.val,t:J.t};if(W>0)T.z=H[T.ixfe>>8&63];Cg(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 638:{T={ixfe:J.ixfe,XF:E[J.ixfe],v:J.rknum,t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];Cg(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 189:{for(var re=J.c;re<=J.C;++re){var te=J.rkrec[re-J.c][0];T={ixfe:te,XF:E[te],v:J.rkrec[re-J.c][1],t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];Cg(T,r,t.opts.Date1904);O({c:re,r:J.r},T,r)}}break;case 6:;case 518:;case 1030:{if(J.val=="String"){f=J;break}T=Sg(J.val,J.cell.ixfe,J.tt);T.XF=E[T.ixfe];if(r.cellFormula){var ae=J.formula;if(ae&&ae[0]&&ae[0][0]&&ae[0][0][0]=="PtgExp"){var ne=ae[0][0][1][0],ie=ae[0][0][1][1];var se=Ma({r:ne,c:ie});if(w[se])T.f=""+gd(J.formula,s,J.cell,M,R);else T.F=((r.dense?(n["!data"][ne]||[])[ie]:n[se])||{}).F}else T.f=""+gd(J.formula,s,J.cell,M,R)}if(W>0)T.z=H[T.ixfe>>8&63];Cg(T,r,t.opts.Date1904);O(J.cell,T,r);f=J}break;case 7:;case 519:{if(f){f.val=J;T=Sg(J,f.cell.ixfe,"s");T.XF=E[T.ixfe];if(r.cellFormula){T.f=""+gd(f.formula,s,f.cell,M,R)}if(W>0)T.z=H[T.ixfe>>8&63];Cg(T,r,t.opts.Date1904);O(f.cell,T,r);f=null}else throw new Error("String record expects Formula")}break;case 33:;case 545:{k.push(J);var fe=Ma(J[0].s);p=r.dense?(n["!data"][J[0].s.r]||[])[J[0].s.c]:n[fe];if(r.cellFormula&&p){if(!f)break;if(!fe||!p)break;p.f=""+gd(J[1],s,J[0],M,R);p.F=Ba(J[0])}}break;case 1212:{if(!r.cellFormula)break;if(d){if(!f)break;w[Ma(f.cell)]=J[0];p=r.dense?(n["!data"][f.cell.r]||[])[f.cell.c]:n[Ma(f.cell)];(p||{}).f=""+gd(J[0],s,u,M,R)}}break;case 253:T=Sg(l[J.isst].t,J.ixfe,"s");if(l[J.isst].h)T.h=l[J.isst].h;T.XF=E[T.ixfe];if(W>0)T.z=H[T.ixfe>>8&63];Cg(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r);break;case 513:if(r.sheetStubs){T={ixfe:J.ixfe,XF:E[J.ixfe],t:"z"};if(W>0)T.z=H[T.ixfe>>8&63];Cg(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r)}break;case 190:if(r.sheetStubs){for(var oe=J.c;oe<=J.C;++oe){var le=J.ixfe[oe-J.c];T={ixfe:le,XF:E[le],t:"z"};if(W>0)T.z=H[T.ixfe>>8&63];Cg(T,r,t.opts.Date1904);O({c:oe,r:J.r},T,r)}}break;case 214:;case 516:;case 4:T=Sg(J.val,J.ixfe,"s");T.XF=E[T.ixfe];if(W>0)T.z=H[T.ixfe>>8&63];Cg(T,r,t.opts.Date1904);O({c:J.c,r:J.r},T,r);break;case 0:;case 512:{if(B===1)s=J}break;case 252:{l=J}break;case 1054:{if(R.biff==4){H[W++]=J[1];for(var ce=0;ce=163)qe(J[1],W+163)}else qe(J[1],J[0])}break;case 30:{H[W++]=J;for(var he=0;he=163)qe(J,W+163)}break;case 229:N=N.concat(J);break;case 93:D[J.cmo[0]]=R.lastobj=J;break;case 438:R.lastobj.TxO=J;break;case 127:R.lastobj.ImData=J;break;case 440:{for(b=J[0].s.r;b<=J[0].e.r;++b)for(m=J[0].s.c;m<=J[0].e.c;++m){p=r.dense?(n["!data"][b]||[])[m]:n[Ma({c:m,r:b})];if(p)p.l=J[1]}}break;case 2048:{for(b=J[0].s.r;b<=J[0].e.r;++b)for(m=J[0].s.c;m<=J[0].e.c;++m){p=r.dense?(n["!data"][b]||[])[m]:n[Ma({c:m,r:b})];if(p&&p.l)p.l.Tooltip=J[1]}}break;case 28:{if(R.biff<=5&&R.biff>=2)break;p=r.dense?(n["!data"][J[0].r]||[])[J[0].c]:n[Ma(J[0])];var ue=D[J[2]];if(!p){if(r.dense){if(!n["!data"][J[0].r])n["!data"][J[0].r]=[];p=n["!data"][J[0].r][J[0].c]={t:"z"}}else{p=n[Ma(J[0])]={t:"z"}}s.e.r=Math.max(s.e.r,J[0].r);s.s.r=Math.min(s.s.r,J[0].r);s.e.c=Math.max(s.e.c,J[0].c);s.s.c=Math.min(s.s.c,J[0].c)}if(!p.c)p.c=[];v={a:J[1],t:ue.TxO.t};p.c.push(v)}break;case 2173:Kc(E[J.ixfe],J.ext);break;case 125:{if(!R.cellStyles)break;while(J.e>=J.s){F[J.e--]={width:J.w/256,level:J.level||0,hidden:!!(J.flags&1)};if(!L){L=true;Wl(J.w/256)}Hl(F[J.e+1])}}break;case 520:{var de={};if(J.level!=null){P[J.r]=de;de.level=J.level}if(J.hidden){P[J.r]=de;de.hidden=true}if(J.hpt){P[J.r]=de;de.hpt=J.hpt;de.hpx=$l(J.hpt)}}break;case 38:;case 39:;case 40:;case 41:if(!n["!margins"])rp(n["!margins"]={});n["!margins"][{38:"left",39:"right",40:"top",41:"bottom"}[j]]=J;break;case 161:if(!n["!margins"])rp(n["!margins"]={});n["!margins"].header=J.header;n["!margins"].footer=J.footer;break;case 574:if(J.RTL)C.Views[0].RTL=true;break;case 146:y=J;break;case 2198:I=J;break;case 140:A=J;break;case 442:{if(!c)C.WBProps.CodeName=J||"ThisWorkbook";else S.CodeName=J||S.name}break;}}else{if(!Y)console.error("Missing Info for XLS Record 0x"+j.toString(16));e.l+=X}}t.SheetNames=sr(i).sort(function(e,r){return Number(e)-Number(r)}).map(function(e){return i[e].name});if(!r.bookSheets)t.Sheets=a;if(!t.SheetNames.length&&h["!ref"]){t.SheetNames.push("Sheet1");if(t.Sheets)t.Sheets["Sheet1"]=h}else t.Preamble=h;if(t.Sheets)z.forEach(function(e,r){t.Sheets[t.SheetNames[r]]["!autofilter"]=e});t.Strings=l;t.SSF=Er(Z);if(R.enc)t.Encryption=R.enc;if(I)t.Themes=I;t.Metadata={};if(A!==undefined)t.Metadata.Country=A;if(M.names.length>0)C.Names=M.names;t.Workbook=C;return t}var xg={SI:"e0859ff2f94f6810ab9108002b27b3d9",DSI:"02d5cdd59c2e1b10939708002b2cf9ae",UDI:"05d5cdd59c2e1b10939708002b2cf9ae"};function Og(e,r,t){var a=er.find(e,"/!DocumentSummaryInformation");if(a&&a.size>0)try{var n=rs(a,Gn,xg.DSI);for(var i in n)r[i]=n[i]}catch(s){if(t.WTF)throw s}var f=er.find(e,"/!SummaryInformation");if(f&&f.size>0)try{var o=rs(f,$n,xg.SI);for(var l in o)if(r[l]==null)r[l]=o[l]}catch(s){if(t.WTF)throw s}if(r.HeadingPairs&&r.TitlesOfParts){yi(r.HeadingPairs,r.TitlesOfParts,r,t);delete r.HeadingPairs;delete r.TitlesOfParts}}function Rg(e,r){var t=[],a=[],n=[];var i=0,s;var f=fr(Gn,"n");var o=fr($n,"n");if(e.Props){s=sr(e.Props);for(i=0;i-1||Ei.indexOf(n[i][0])>-1)continue;if(n[i][1]==null)continue;l.push(n[i])}if(a.length)er.utils.cfb_add(r,"/SummaryInformation",ts(a,xg.SI,o,$n));if(t.length||l.length)er.utils.cfb_add(r,"/DocumentSummaryInformation",ts(t,xg.DSI,f,Gn,l.length?l:null,xg.UDI))}function Ig(e,r){if(!r)r={};Tw(r);l();if(r.codepage)s(r.codepage);var t,a;if(e.FullPaths){if(er.find(e,"/encryption"))throw new Error("File is password-protected");t=er.find(e,"!CompObj");a=er.find(e,"/Workbook")||er.find(e,"/Book")}else{switch(r.type){case"base64":e=x(A(e));break;case"binary":e=x(e);break;case"buffer":break;case"array":if(!Array.isArray(e))e=Array.prototype.slice.call(e);break;}ga(e,0);a={content:e}}var n;var i;if(t)Ag(t);if(r.bookProps&&!r.bookSheets)n={};else{var f=E?"buffer":"array";if(a&&a.content)n=_g(a.content,r);else if((i=er.find(e,"PerfectOffice_MAIN"))&&i.content)n=Po.to_workbook(i.content,(r.type=f,r));else if((i=er.find(e,"NativeContent_MAIN"))&&i.content)n=Po.to_workbook(i.content,(r.type=f,r));else if((i=er.find(e,"MN0"))&&i.content)throw new Error("Unsupported Works 4 for Mac file");else throw new Error("Cannot find Workbook stream");if(r.bookVBA&&e.FullPaths&&er.find(e,"/_VBA_PROJECT_CUR/VBA/dir"))n.vbaraw=Oh(e)}var o={};if(e.FullPaths)Og(e,o,r);n.Props=n.Custprops=o;if(r.bookFiles)n.cfb=e;return n}function Ng(e,r){var t=r||{};var a=er.utils.cfb_new({root:"R"});var n="/Workbook";switch(t.bookType||"xls"){case"xls":t.bookType="biff8";case"xla":if(!t.bookType)t.bookType="xla";case"biff8":n="/Workbook";t.biff=8;break;case"biff5":n="/Book";t.biff=5;break;default:throw new Error("invalid type "+t.bookType+" for XLS CFB");}er.utils.cfb_add(a,n,Qg(e,t));if(t.biff==8&&(e.Props||e.Custprops))Rg(e,a);if(t.biff==8&&e.vbaraw)Rh(a,er.read(e.vbaraw,{type:typeof e.vbaraw=="string"?"binary":"buffer"}));return a}var Dg={0:{f:Up},1:{f:jp},2:{f:uv},3:{f:ev},4:{f:Zp},5:{f:ov},6:{f:gv},7:{f:nv},8:{f:yv},9:{f:Ev},10:{f:Tv},11:{f:Av},12:{f:Yp},13:{f:pv},14:{f:tv},15:{f:qp},16:{f:cv},17:{f:wv},18:{f:sv},19:{f:en},20:{},21:{},22:{},23:{},24:{},25:{},26:{},27:{},28:{},29:{},30:{},31:{},32:{},33:{},34:{},35:{T:1},36:{T:-1},37:{T:1},38:{T:-1},39:{f:_m},40:{},42:{},43:{f:sc},44:{f:nc},45:{f:cc},46:{f:vc},47:{f:uc},48:{},49:{f:Ya},50:{},51:{f:qc},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:co},62:{f:mv},63:{f:oh},64:{f:Hv},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:ba,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:Mv},138:{T:-1},139:{T:1},140:{T:-1},141:{T:1},142:{T:-1},143:{T:1},144:{T:-1},145:{T:1},146:{T:-1},147:{f:Gp},148:{f:Hp,p:16},151:{f:Rv},152:{},153:{f:ym},154:{},155:{},156:{f:Am},157:{},158:{},159:{T:1,f:Ko},160:{T:-1},161:{T:1,f:kn},162:{T:-1},163:{T:1},164:{T:-1},165:{T:1},166:{T:-1},167:{},168:{},169:{},170:{},171:{},172:{T:1},173:{T:-1},174:{},175:{},176:{f:Cv},177:{T:1},178:{T:-1},179:{T:1},180:{T:-1},181:{T:1},182:{T:-1},183:{T:1},184:{T:-1},185:{T:1},186:{T:-1},187:{T:1},188:{T:-1},189:{T:1},190:{T:-1},191:{T:1},192:{T:-1},193:{T:1},194:{T:-1},195:{T:1},196:{T:-1},197:{T:1},198:{T:-1},199:{T:1},200:{T:-1},201:{T:1},202:{T:-1},203:{T:1},204:{T:-1},205:{T:1},206:{T:-1},207:{T:1},208:{T:-1},209:{T:1},210:{T:-1},211:{T:1},212:{T:-1},213:{T:1},214:{T:-1},215:{T:1},216:{T:-1},217:{T:1},218:{T:-1},219:{T:1},220:{T:-1},221:{T:1},222:{T:-1},223:{T:1},224:{T:-1},225:{T:1},226:{T:-1},227:{T:1},228:{T:-1},229:{T:1},230:{T:-1},231:{T:1},232:{T:-1},233:{T:1},234:{T:-1},235:{T:1},236:{T:-1},237:{T:1},238:{T:-1},239:{T:1},240:{T:-1},241:{T:1},242:{T:-1},243:{T:1},244:{T:-1},245:{T:1},246:{T:-1},247:{T:1},248:{T:-1},249:{T:1},250:{T:-1},251:{T:1},252:{T:-1},253:{T:1},254:{T:-1},255:{T:1},256:{T:-1},257:{T:1},258:{T:-1},259:{T:1},260:{T:-1},261:{T:1},262:{T:-1},263:{T:1},264:{T:-1},265:{T:1},266:{T:-1},267:{T:1},268:{T:-1},269:{T:1},270:{T:-1},271:{T:1},272:{T:-1},273:{T:1},274:{T:-1},275:{T:1},276:{T:-1},277:{},278:{T:1},279:{T:-1},280:{T:1},281:{T:-1},282:{T:1},283:{T:1},284:{T:-1},285:{T:1},286:{T:-1},287:{T:1},288:{T:-1},289:{T:1},290:{T:-1},291:{T:1},292:{T:-1},293:{T:1},294:{T:-1},295:{T:1},296:{T:-1},297:{T:1},298:{T:-1},299:{T:1},300:{T:-1},301:{T:1},302:{T:-1},303:{T:1},304:{T:-1},305:{T:1},306:{T:-1},307:{T:1},308:{T:-1},309:{T:1},310:{T:-1},311:{T:1},312:{T:-1},313:{T:-1},314:{T:1},315:{T:-1},316:{T:1},317:{T:-1},318:{T:1},319:{T:-1},320:{T:1},321:{T:-1},322:{T:1},323:{T:-1},324:{T:1},325:{T:-1},326:{T:1},327:{T:-1},328:{T:1},329:{T:-1},330:{T:1},331:{T:-1},332:{T:1},333:{T:-1},334:{T:1},335:{f:Zc},336:{T:-1},337:{f:rh,T:1},338:{T:-1},339:{T:1},340:{T:-1},341:{T:1},342:{T:-1},343:{T:1},344:{T:-1},345:{T:1},346:{T:-1},347:{T:1},348:{T:-1},349:{T:1},350:{T:-1},351:{},352:{},353:{T:1},354:{T:-1},355:{f:pn},357:{},358:{},359:{},360:{T:1},361:{},362:{f:Hf},363:{},364:{},366:{},367:{},368:{},369:{},370:{},371:{},372:{T:1},373:{T:-1},374:{T:1},375:{T:-1},376:{T:1},377:{T:-1},378:{T:1},379:{T:-1},380:{T:1},381:{T:-1},382:{T:1},383:{T:-1},384:{T:1},385:{T:-1},386:{T:1},387:{T:-1},388:{T:1},389:{T:-1},390:{T:1},391:{T:-1},392:{T:1},393:{T:-1},394:{T:1},395:{T:-1},396:{},397:{},398:{},399:{},400:{},401:{T:1},403:{},404:{},405:{},406:{},407:{},408:{},409:{},410:{},411:{},412:{},413:{},414:{},415:{},416:{},417:{},418:{},419:{},420:{},421:{},422:{T:1},423:{T:1},424:{T:-1},425:{T:-1},426:{f:Iv},427:{f:Nv},428:{},429:{T:1},430:{T:-1},431:{T:1},432:{T:-1},433:{T:1},434:{T:-1},435:{T:1},436:{T:-1},437:{T:1},438:{T:-1},439:{T:1},440:{T:-1},441:{T:1},442:{T:-1},443:{T:1},444:{T:-1},445:{T:1},446:{T:-1},447:{T:1},448:{T:-1},449:{T:1},450:{T:-1},451:{T:1},452:{T:-1},453:{T:1},454:{T:-1},455:{T:1},456:{T:-1},457:{T:1},458:{T:-1},459:{T:1},460:{T:-1},461:{T:1},462:{T:-1},463:{T:1},464:{T:-1},465:{T:1},466:{T:-1},467:{T:1},468:{T:-1},469:{T:1},470:{T:-1},471:{},472:{},473:{T:1},474:{T:-1},475:{},476:{f:Pv},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:Vp},486:{T:1},487:{T:-1},488:{T:1},489:{T:-1},490:{T:1},491:{T:-1},492:{T:1},493:{T:-1},494:{f:xv},495:{T:1},496:{T:-1},497:{T:1},498:{T:-1},499:{},500:{T:1},501:{T:-1},502:{T:1},503:{T:-1},504:{},505:{T:1},506:{T:-1},507:{},508:{T:1},509:{T:-1},510:{T:1},511:{T:-1},512:{},513:{},514:{T:1},515:{T:-1},516:{T:1},517:{T:-1},518:{T:1},519:{T:-1},520:{T:1},521:{T:-1},522:{},523:{},524:{},525:{},526:{},527:{},528:{T:1},529:{T:-1},530:{T:1},531:{T:-1},532:{T:1},533:{T:-1},534:{},535:{},536:{},537:{},538:{T:1},539:{T:-1},540:{T:1},541:{T:-1},542:{T:1},548:{},549:{},550:{f:pn},551:{},552:{},553:{},554:{T:1},555:{T:-1},556:{T:1},557:{T:-1},558:{T:1},559:{T:-1},560:{T:1},561:{T:-1},562:{},564:{},565:{T:1},566:{T:-1},569:{T:1},570:{T:-1},572:{},573:{T:1},574:{T:-1},577:{},578:{},579:{},580:{},581:{},582:{},583:{},584:{},585:{},586:{},587:{},588:{T:-1},589:{},590:{T:1},591:{T:-1},592:{T:1},593:{T:-1},594:{T:1},595:{T:-1},596:{},597:{T:1},598:{T:-1},599:{T:1},600:{T:-1},601:{T:1},602:{T:-1},603:{T:1},604:{T:-1},605:{T:1},606:{T:-1},607:{},608:{T:1},609:{T:-1},610:{},611:{T:1},612:{T:-1},613:{T:1},614:{T:-1},615:{T:1},616:{T:-1},617:{T:1},618:{T:-1},619:{T:1},620:{T:-1},625:{},626:{T:1},627:{T:-1},628:{T:1},629:{T:-1},630:{T:1},631:{T:-1},632:{f:yh},633:{T:1},634:{T:-1},635:{T:1,f:Ah},636:{T:-1},637:{f:tn},638:{T:1},639:{},640:{T:-1},641:{T:1},642:{T:-1},643:{T:1},644:{},645:{T:-1},646:{T:1},648:{T:1},649:{},650:{T:-1},651:{f:im},652:{},653:{T:1},654:{T:-1},655:{T:1},656:{T:-1},657:{T:1},658:{T:-1},659:{},660:{T:1},661:{},662:{T:-1},663:{},664:{T:1},665:{},666:{T:-1},667:{},668:{},669:{},671:{T:1},672:{T:-1},673:{T:1},674:{T:-1},675:{},676:{},677:{},678:{},679:{},680:{},681:{},1024:{},1025:{},1026:{T:1},1027:{T:-1},1028:{T:1},1029:{T:-1},1030:{},1031:{T:1},1032:{T:-1},1033:{T:1},1034:{T:-1},1035:{}, +1036:{},1037:{},1038:{T:1},1039:{T:-1},1040:{},1041:{T:1},1042:{T:-1},1043:{},1044:{},1045:{},1046:{T:1},1047:{T:-1},1048:{T:1},1049:{T:-1},1050:{},1051:{T:1},1052:{T:1},1053:{f:zv},1054:{T:1},1055:{},1056:{T:1},1057:{T:-1},1058:{T:1},1059:{T:-1},1061:{},1062:{T:1},1063:{T:-1},1064:{T:1},1065:{T:-1},1066:{T:1},1067:{T:-1},1068:{T:1},1069:{T:-1},1070:{T:1},1071:{T:-1},1072:{T:1},1073:{T:-1},1075:{T:1},1076:{T:-1},1077:{T:1},1078:{T:-1},1079:{T:1},1080:{T:-1},1081:{T:1},1082:{T:-1},1083:{T:1},1084:{T:-1},1085:{},1086:{T:1},1087:{T:-1},1088:{T:1},1089:{T:-1},1090:{T:1},1091:{T:-1},1092:{T:1},1093:{T:-1},1094:{T:1},1095:{T:-1},1096:{},1097:{T:1},1098:{},1099:{T:-1},1100:{T:1},1101:{T:-1},1102:{},1103:{},1104:{},1105:{},1111:{},1112:{},1113:{T:1},1114:{T:-1},1115:{T:1},1116:{T:-1},1117:{},1118:{T:1},1119:{T:-1},1120:{T:1},1121:{T:-1},1122:{T:1},1123:{T:-1},1124:{T:1},1125:{T:-1},1126:{},1128:{T:1},1129:{T:-1},1130:{},1131:{T:1},1132:{T:-1},1133:{T:1},1134:{T:-1},1135:{T:1},1136:{T:-1},1137:{T:1},1138:{T:-1},1139:{T:1},1140:{T:-1},1141:{},1142:{T:1},1143:{T:-1},1144:{T:1},1145:{T:-1},1146:{},1147:{T:1},1148:{T:-1},1149:{T:1},1150:{T:-1},1152:{T:1},1153:{T:-1},1154:{T:-1},1155:{T:-1},1156:{T:-1},1157:{T:1},1158:{T:-1},1159:{T:1},1160:{T:-1},1161:{T:1},1162:{T:-1},1163:{T:1},1164:{T:-1},1165:{T:1},1166:{T:-1},1167:{T:1},1168:{T:-1},1169:{T:1},1170:{T:-1},1171:{},1172:{T:1},1173:{T:-1},1177:{},1178:{T:1},1180:{},1181:{},1182:{},2048:{T:1},2049:{T:-1},2050:{},2051:{T:1},2052:{T:-1},2053:{},2054:{},2055:{T:1},2056:{T:-1},2057:{T:1},2058:{T:-1},2060:{},2067:{},2068:{T:1},2069:{T:-1},2070:{},2071:{},2072:{T:1},2073:{T:-1},2075:{},2076:{},2077:{T:1},2078:{T:-1},2079:{},2080:{T:1},2081:{T:-1},2082:{},2083:{T:1},2084:{T:-1},2085:{T:1},2086:{T:-1},2087:{T:1},2088:{T:-1},2089:{T:1},2090:{T:-1},2091:{},2092:{},2093:{T:1},2094:{T:-1},2095:{},2096:{T:1},2097:{T:-1},2098:{T:1},2099:{T:-1},2100:{T:1},2101:{T:-1},2102:{},2103:{T:1},2104:{T:-1},2105:{},2106:{T:1},2107:{T:-1},2108:{},2109:{T:1},2110:{T:-1},2111:{T:1},2112:{T:-1},2113:{T:1},2114:{T:-1},2115:{},2116:{},2117:{},2118:{T:1},2119:{T:-1},2120:{},2121:{T:1},2122:{T:-1},2123:{T:1},2124:{T:-1},2125:{},2126:{T:1},2127:{T:-1},2128:{},2129:{T:1},2130:{T:-1},2131:{T:1},2132:{T:-1},2133:{T:1},2134:{},2135:{},2136:{},2137:{T:1},2138:{T:-1},2139:{T:1},2140:{T:-1},2141:{},3072:{},3073:{},4096:{T:1},4097:{T:-1},5002:{T:1},5003:{T:-1},5081:{T:1},5082:{T:-1},5083:{},5084:{T:1},5085:{T:-1},5086:{T:1},5087:{T:-1},5088:{},5089:{},5090:{},5092:{T:1},5093:{T:-1},5094:{},5095:{T:1},5096:{T:-1},5097:{},5099:{},65535:{n:""}};var Fg={6:{f:yd},10:{f:as},12:{f:os},13:{f:os},14:{f:ss},15:{f:ss},16:{f:An},17:{f:ss},18:{f:ss},19:{f:os},20:{f:Mf},21:{f:Mf},23:{f:Hf},24:{f:Wf},25:{f:ss},26:{},27:{},28:{f:Yf},29:{},34:{f:ss},35:{f:Bf},38:{f:An},39:{f:An},40:{f:An},41:{f:An},42:{f:ss},43:{f:ss},47:{f:Al},49:{f:pf},51:{f:os},60:{},61:{f:lf},64:{f:ss},65:{f:df},66:{f:os},77:{},80:{},81:{},82:{},85:{f:os},89:{},90:{},91:{},92:{f:Zs},93:{f:Jf},94:{},95:{f:ss},96:{},97:{},99:{f:ss},125:{f:co},128:{f:If},129:{f:qs},130:{f:os},131:{f:ss},132:{f:ss},133:{f:Qs},134:{},140:{f:io},141:{f:os},144:{},146:{f:oo},151:{},152:{},153:{},154:{},155:{},156:{f:os},157:{},158:{},160:{f:go},161:{f:uo},174:{},175:{},176:{},177:{},178:{},180:{},181:{},182:{},184:{},185:{},189:{f:Sf},190:{f:_f},193:{f:as},197:{},198:{},199:{},200:{},201:{},202:{f:ss},203:{},204:{},205:{},206:{},207:{},208:{},209:{},210:{},211:{},213:{},215:{},216:{},217:{},218:{f:os},220:{},221:{f:ss},222:{},224:{f:Of},225:{f:Ks},226:{f:as},227:{},229:{f:Kf},233:{},235:{},236:{},237:{},239:{},240:{},241:{},242:{},244:{},245:{},246:{},247:{},248:{},249:{},251:{},252:{f:rf},253:{f:mf},255:{f:af},256:{},259:{},290:{},311:{},312:{},315:{},317:{f:cs},318:{},319:{},320:{},330:{},331:{},333:{},334:{},335:{},336:{},337:{},338:{},339:{},340:{},351:{},352:{f:ss},353:{f:as},401:{},402:{},403:{},404:{},405:{},406:{},407:{},408:{},425:{},426:{},427:{},428:{},429:{},430:{f:Uf},431:{f:ss},432:{},433:{},434:{},437:{},438:{f:eo},439:{f:ss},440:{f:ro},441:{},442:{f:gs},443:{},444:{f:os},445:{},446:{},448:{f:as},449:{f:ff,r:2},450:{f:as},512:{f:Ef},513:{f:mo},515:{f:Pf},516:{f:bf},517:{f:Df},519:{f:bo},520:{f:nf},523:{},545:{f:$f},549:{f:of},566:{},574:{f:hf},638:{f:Cf},659:{},1048:{},1054:{f:kf},1084:{},1212:{f:Gf},2048:{f:ao},2049:{},2050:{},2051:{},2052:{},2053:{},2054:{},2055:{},2056:{},2057:{f:Xs},2058:{},2059:{},2060:{},2061:{},2062:{},2063:{},2064:{},2066:{},2067:{},2128:{},2129:{},2130:{},2131:{},2132:{},2133:{},2134:{},2135:{},2136:{},2137:{},2138:{},2146:{},2147:{r:12},2148:{},2149:{},2150:{},2151:{f:as},2152:{},2154:{},2155:{},2156:{},2161:{},2162:{},2164:{},2165:{},2166:{},2167:{},2168:{},2169:{},2170:{},2171:{},2172:{f:lo,r:12},2173:{f:Yc,r:12},2174:{},2175:{},2180:{},2181:{},2182:{},2183:{},2184:{},2185:{},2186:{},2187:{},2188:{f:ss,r:12},2189:{},2190:{r:12},2191:{},2192:{},2194:{},2195:{},2196:{f:Vf,r:12},2197:{},2198:{f:zc,r:12},2199:{},2200:{},2201:{},2202:{f:jf,r:12},2203:{f:as},2204:{},2205:{},2206:{},2207:{},2211:{f:sf},2212:{},2213:{},2214:{},2215:{},4097:{},4098:{},4099:{},4102:{},4103:{},4105:{},4106:{},4107:{},4108:{},4109:{},4116:{},4117:{},4118:{},4119:{},4120:{},4121:{},4122:{},4123:{},4124:{},4125:{},4126:{},4127:{},4128:{},4129:{},4130:{},4132:{},4133:{},4134:{f:os},4135:{},4146:{},4147:{},4148:{},4149:{},4154:{},4156:{},4157:{},4158:{},4159:{},4160:{},4161:{},4163:{},4164:{f:po},4165:{},4166:{},4168:{},4170:{},4171:{},4174:{},4175:{},4176:{},4177:{},4187:{},4188:{f:fo},4189:{},4191:{},4192:{},4193:{},4194:{},4195:{},4196:{},4197:{},4198:{},4199:{},4200:{},0:{f:Ef},1:{},2:{f:Eo},3:{f:To},4:{f:ko},5:{f:Df},7:{f:Co},8:{},9:{f:Xs},11:{},22:{f:os},30:{f:Af},31:{},32:{},33:{f:$f},36:{},37:{f:of},50:{f:So},62:{},52:{},67:{},68:{f:os},69:{},86:{},126:{},127:{f:wo},135:{},136:{},137:{},145:{},148:{},149:{},150:{},169:{},171:{},188:{},191:{},192:{},194:{},195:{},214:{f:_o},223:{},234:{},354:{},421:{},518:{f:yd},521:{f:Xs},536:{f:Wf},547:{f:Bf},561:{},579:{},1030:{f:yd},1033:{f:Xs},1091:{},2157:{},2163:{},2177:{},2240:{},2241:{},2242:{},2243:{},2244:{},2245:{},2246:{},2247:{},2248:{},2249:{},2250:{},2251:{},2262:{r:12},101:{},102:{},105:{},106:{},107:{},109:{},112:{},114:{},29282:{}};function Pg(e,r,t,a){var n=r;if(isNaN(n))return;var i=a||(t||[]).length||0;var s=e.next(4);s._W(2,n);s._W(2,i);if(i>0&&aa(t))e.push(t)}function Lg(e,r,t,a){var n=a||(t||[]).length||0;if(n<=8224)return Pg(e,r,t,n);var i=r;if(isNaN(i))return;var s=t.parts||[],f=0;var o=0,l=0;while(l+(s[f]||8224)<=8224){l+=s[f]||8224;f++}var c=e.next(4);c._W(2,i);c._W(2,l);e.push(t.slice(o,o+l));o+=l;while(o=0&&n<65536)Pg(e,2,yo(t,a,n));else Pg(e,3,Ao(t,a,n));return;case"b":;case"e":Pg(e,5,Ug(t,a,r.v,r.t));return;case"s":;case"str":Pg(e,4,Bg(t,a,r.v==null?"":String(r.v).slice(0,255)));return;}Pg(e,1,Mg(null,t,a))}function Hg(e,r,t,a){var n=r["!data"]!=null;var i=za(r["!ref"]||"A1"),s,f="",o=[];if(i.e.c>255||i.e.r>16383){if(a.WTF)throw new Error("Range "+(r["!ref"]||"A1")+" exceeds format limit A1:IV16384");i.e.c=Math.min(i.e.c,255);i.e.r=Math.min(i.e.c,16383)}var l=[];for(var c=i.s.c;c<=i.e.c;++c)o[c]=Na(c);for(var h=i.s.r;h<=i.e.r;++h){if(n)l=r["!data"][h]||[];f=xa(h);for(c=i.s.c;c<=i.e.c;++c){var u=n?l[c]:r[o[c]+f];if(!u)continue;Wg(e,u,h,c,a)}}}function zg(e,r){var t=r||{};var a=Ta();var n=0;for(var i=0;i255||d.e.r>=p){if(r.WTF)throw new Error("Range "+(i["!ref"]||"A1")+" exceeds format limit A1:IV16384");d.e.c=Math.min(d.e.c,255);d.e.r=Math.min(d.e.c,p-1)}Pg(a,2057,Ys(t,16,r));Pg(a,13,ls(1));Pg(a,12,ls(100));Pg(a,15,fs(true));Pg(a,17,fs(false));Pg(a,16,En(.001));Pg(a,95,fs(true));Pg(a,42,fs(false));Pg(a,43,fs(false));Pg(a,130,ls(1));Pg(a,128,Nf([0,0]));Pg(a,131,fs(false));Pg(a,132,fs(false));if(l)Yg(a,i["!cols"]);Pg(a,512,yf(d,r));if(l)i["!links"]=[];var v=[];var m=[];for(var g=d.s.c;g<=d.e.c;++g)u[g]=Na(g);for(var b=d.s.r;b<=d.e.r;++b){if(o)m=i["!data"][b]||[];h=xa(b);for(g=d.s.c;g<=d.e.c;++g){c=u[g]+h;var w=o?m[g]:i[c];if(!w)continue;Kg(a,w,b,g,r);if(l&&w.l)i["!links"].push([c,w.l]);if(l&&w.c)v.push([c,w.c])}}var k=f.CodeName||f.name||n;if(l)Pg(a,574,uf((s.Views||[])[0]));if(l&&(i["!merges"]||[]).length)Pg(a,229,Zf(i["!merges"]));if(l)Xg(a,i);Pg(a,442,ws(k,r));if(l)$g(a,i);Pg(a,10);return a.end()}function Jg(e,r,t){var a=Ta();var n=(e||{}).Workbook||{};var i=n.Sheets||[];var s=n.WBProps||{};var f=t.biff==8,o=t.biff==5;Pg(a,2057,Ys(e,5,t));if(t.bookType=="xla")Pg(a,135);Pg(a,225,f?ls(1200):null);Pg(a,193,ns(2));if(o)Pg(a,191);if(o)Pg(a,192);Pg(a,226);Pg(a,92,Js("SheetJS",t));Pg(a,66,ls(f?1200:1252));if(f)Pg(a,353,ls(0));if(f)Pg(a,448);Pg(a,317,vo(e.SheetNames.length));if(f&&e.vbaraw)Pg(a,211);if(f&&e.vbaraw){var l=s.CodeName||"ThisWorkbook";Pg(a,442,ws(l,t))}Pg(a,156,ls(17));Pg(a,25,fs(false));Pg(a,18,fs(false));Pg(a,19,ls(0));if(f)Pg(a,431,fs(false));if(f)Pg(a,444,ls(0));Pg(a,61,cf(t));Pg(a,64,fs(false));Pg(a,141,ls(0));Pg(a,34,fs(pm(e)=="true"));Pg(a,14,fs(true));if(f)Pg(a,439,fs(false));Pg(a,218,ls(0));Vg(a,e,t);Gg(a,e.SSF,t);jg(a,t);if(f)Pg(a,352,fs(false));var c=a.end();var h=Ta();if(f)Pg(h,140,so());if(f&&t.Strings)Lg(h,252,tf(t.Strings,t));Pg(h,10);var u=h.end();var d=Ta();var p=0,v=0;for(v=0;v255){if(typeof console!="undefined"&&console.error)console.error("Worksheet '"+e.SheetNames[t]+"' extends beyond column IV (255). Data may be lost.")}}var i=r||{};switch(i.biff||2){case 8:;case 5:return qg(e,r);case 4:;case 3:;case 2:return zg(e,r);}throw new Error("invalid type "+i.bookType+" for BIFF")}function eb(e,r){var t=r||{};var a=t.dense!=null?t.dense:g;var n={};if(a)n["!data"]=[];e=e.replace(//g,"");var i=e.match(/");var s=e.match(/<\/table/i);var f=i.index,o=s&&s.index||e.length;var l=Rr(e.slice(f,o),/(:?]*>)/i,"");var c=-1,h=0,u=0,d=0;var p={s:{r:1e7,c:1e7},e:{r:0,c:0}};var v=[];for(f=0;f/i);for(o=0;o"))>-1)T=T.slice(A+1);for(var E=0;E")));d=C.colspan?+C.colspan:1;if((u=+C.rowspan)>1||d>1)v.push({s:{r:c,c:h},e:{r:c+(u||1)-1,c:h+d-1}});var S=C.t||C["data-t"]||"";if(!T.length){h+=d;continue}T=wt(T);if(p.s.r>c)p.s.r=c;if(p.e.rh)p.s.c=h;if(p.e.ct||n[h].s.c>o)continue;if(n[h].e.r1)s.rowspan=l;if(c>1)s.colspan=c;if(a.editable)p=''+p+"";else if(d){s["data-t"]=d&&d.t||"z";if(d.v!=null)s["data-v"]=d.v;if(d.z!=null)s["data-z"]=d.z;if(d.l&&(d.l.Target||"#").charAt(0)!="#")p=''+p+""}s.id=(a.id||"sjs")+"-"+u;i.push(_t("td",p,s))}var v="";return v+i.join("")+""}var tb='SheetJS Table Export';var ab="";function nb(e,r){var t=e.match(/[\s\S]*?<\/table>/gi);if(!t||t.length==0)throw new Error("Invalid HTML: could not find
");if(t.length==1){var a=$a(eb(t[0],r),r);a.bookType="html";return a}var n=dk();t.forEach(function(e,t){pk(n,eb(e,r),"Sheet"+(t+1))});n.bookType="html";return n}function ib(e,r,t){var a=[];return a.join("")+""}function sb(e,r){var t=r||{};var a=t.header!=null?t.header:tb;var n=t.footer!=null?t.footer:ab;var i=[a];var s=Ua(e["!ref"]);i.push(ib(e,s,t));for(var f=s.s.r;f<=s.e.r;++f)i.push(rb(e,s,f,t));i.push("
"+n);return i.join("")}function fb(e,r,t){var a=r.rows;if(!a){throw"Unsupported origin when "+r.tagName+" is not a TABLE"}var n=t||{};var i=e["!data"]!=null;var s=0,f=0;if(n.origin!=null){if(typeof n.origin=="number")s=n.origin;else{var o=typeof n.origin=="string"?La(n.origin):n.origin;s=o.r;f=o.c}}var l=Math.min(n.sheetRows||1e7,a.length);var c={s:{r:0,c:0},e:{r:s,c:f}};if(e["!ref"]){var h=Ua(e["!ref"]);c.s.r=Math.min(c.s.r,h.s.r);c.s.c=Math.min(c.s.c,h.s.c);c.e.r=Math.max(c.e.r,h.e.r);c.e.c=Math.max(c.e.c,h.e.c);if(s==-1)c.e.r=s=h.e.r+1}var u=[],d=0;var p=e["!rows"]||(e["!rows"]=[]);var v=0,m=0,g=0,b=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;v1||k>1)u.push({s:{r:m+s,c:b+f},e:{r:m+s+(w||1)-1,c:b+f+(k||1)-1}});var _={t:"s",v:y};var x=E.getAttribute("data-t")||E.getAttribute("t")||"";if(y!=null){if(y.length==0)_.t=x||"z";else if(n.raw||y.trim().length==0||x=="s"){}else if(y==="TRUE")_={t:"b",v:true};else if(y==="FALSE")_={t:"b",v:false};else if(!isNaN(Cr(y)))_={t:"n",v:Cr(y)};else if(!isNaN(Or(y).getDate())){_={t:"d",v:Tr(y)};if(!n.cellDates)_={t:"n",v:ur(_.v)};_.z=n.dateNF||Z[14]}}if(_.z===undefined&&C!=null)_.z=C;var O="",R=E.getElementsByTagName("A");if(R&&R.length)for(var I=0;I=l)e["!fullref"]=Ba((c.e.r=a.length-v+m-1+s,c));return e}function ob(e,r){var t=r||{};var a={};if(t.dense)a["!data"]=[];return fb(a,e,r)}function lb(e,r){var t=$a(ob(e,r),r);return t}function cb(e){var r="";var t=hb(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function hb(e){if(e.ownerDocument.defaultView&&typeof e.ownerDocument.defaultView.getComputedStyle==="function")return e.ownerDocument.defaultView.getComputedStyle;if(typeof getComputedStyle==="function")return getComputedStyle;return null}function ub(e){var r=e.replace(/[\t\r\n]/g," ").trim().replace(/ +/g," ").replace(//g," ").replace(//g,function(e,r){return Array(parseInt(r,10)+1).join(" ")}).replace(/]*\/>/g,"\t").replace(//g,"\n");var t=rt(r.replace(/<[^>]*>/g,""));return[t]}function db(e,r,t){var a=t||{};var n=Rt(e);It.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");var i,s,f="",o="",l,c=0,h=-1,u=false,d="";while(i=It.exec(n)){switch(i[3]=i[3].replace(/_.*$/,"")){case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":;case"text-style":if(i[1]==="/"){u=false;if(s["truncate-on-overflow"]=="false"){if(f.match(/h/))f=f.replace(/h+/,"[$&]");else if(f.match(/m/))f=f.replace(/m+/,"[$&]");else if(f.match(/s/))f=f.replace(/s+/,"[$&]")}a[s.name]=f;f=""}else if(i[0].charAt(i[0].length-2)!=="/"){u=true;f="";s=Jr(i[0],false)}break;case"boolean-style":if(i[1]==="/"){u=false;a[s.name]="General";f=""}else if(i[0].charAt(i[0].length-2)!=="/"){u=true;f="";s=Jr(i[0],false)}break;case"boolean":f+="General";break;case"text":if(i[1]==="/"){d=n.slice(h,It.lastIndex-i[0].length);if(d=="%"&&s[0]=="=0")f=a[l["apply-style-name"]]+";"+f;else console.error("ODS number format may be incorrect: "+l["condition"]);break;case"number":if(i[1]==="/")break;l=Jr(i[0],false);o="";o+=yr("0",+l["min-integer-digits"]||1);if(ht(l["grouping"]))o=de(yr("#",Math.max(0,4-o.length))+o);if(+l["min-decimal-places"]||+l["decimal-places"])o+=".";if(+l["min-decimal-places"])o+=yr("0",+l["min-decimal-places"]||1);if(+l["decimal-places"]-(+l["min-decimal-places"]||0))o+=yr("0",+l["decimal-places"]-(+l["min-decimal-places"]||0));f+=o;break;case"embedded-text":if(i[1]==="/"){if(c==0)f+='"'+n.slice(h,It.lastIndex-i[0].length).replace(/"/g,'""')+'"';else f=f.slice(0,c)+'"'+n.slice(h,It.lastIndex-i[0].length).replace(/"/g,'""')+'"'+f.slice(c)}else if(i[0].charAt(i[0].length-2)!=="/"){h=It.lastIndex;c=-+Jr(i[0],false)["position"]||0}break;}}return a}function pb(e,r,t){var a=r||{};if(g!=null&&a.dense==null)a.dense=g;var n=Rt(e);var i=[],s;var f;var o,l="",c=0;var h;var u;var d={},p=[];var v={};if(a.dense)v["!data"]=[];var m,b;var w={value:""};var k="",T=0,A;var E=[];var y=-1,C=-1,S={s:{r:1e6,c:1e7},e:{r:0,c:0}};var _=0;var x=t||{},O={};var R=[],I={},N=0,D=0;var F=[],P=1,L=1;var M=[];var U={Names:[],WBProps:{}};var B={};var W=["",""];var H=[],z={};var V="",G=0;var $=false,j=false;var X=0;var Y=0;It.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");while(m=It.exec(n))switch(m[3]=m[3].replace(/_.*$/,"")){case"table":;case"工作表":if(m[1]==="/"){if(S.e.c>=S.s.c&&S.e.r>=S.s.r)v["!ref"]=Ba(S);else v["!ref"]="A1:A1";if(a.sheetRows>0&&a.sheetRows<=S.e.r){v["!fullref"]=v["!ref"];S.e.r=a.sheetRows-1;v["!ref"]=Ba(S)}if(R.length)v["!merges"]=R;if(F.length)v["!rows"]=F;h.name=h["名称"]||h.name;if(typeof JSON!=="undefined")JSON.stringify(h);p.push(h.name);d[h.name]=v;j=false}else if(m[0].charAt(m[0].length-2)!=="/"){h=Jr(m[0],false);y=C=-1;S.s.r=S.s.c=1e7;S.e.r=S.e.c=0;v={};if(a.dense)v["!data"]=[];R=[];F=[];j=true}break;case"table-row-group":if(m[1]==="/")--_;else++_;break;case"table-row":;case"行":if(m[1]==="/"){y+=P;P=1;break}u=Jr(m[0],false);if(u["行号"])y=u["行号"]-1;else if(y==-1)y=0;P=+u["number-rows-repeated"]||1;if(P<10)for(X=0;X0)F[y+X]={level:_};C=-1;break;case"covered-table-cell":if(m[1]!=="/")++C;if(a.sheetStubs){if(a.dense){if(!v["!data"][y])v["!data"][y]=[];v["!data"][y][C]={t:"z"}}else v[Ma({r:y,c:C})]={t:"z"}}k="";E=[];break;case"table-cell":;case"数据":if(m[0].charAt(m[0].length-2)==="/"){++C;w=Jr(m[0],false);L=parseInt(w["number-columns-repeated"]||"1",10);b={t:"z",v:null};if(w.formula&&a.cellFormula!=false)b.f=jd(rt(w.formula));if(w["style-name"]&&O[w["style-name"]])b.z=O[w["style-name"]];if((w["数据类型"]||w["value-type"])=="string"){b.t="s";b.v=rt(w["string-value"]||"");if(a.dense){if(!v["!data"][y])v["!data"][y]=[];v["!data"][y][C]=b}else{v[Na(C)+xa(y)]=b}}C+=L-1}else if(m[1]!=="/"){++C;k="";T=0;E=[];L=1;var K=P?y+P-1:y;if(C>S.e.c)S.e.c=C;if(CS.e.r)S.e.r=K;w=Jr(m[0],false);H=[];z={};b={t:w["数据类型"]||w["value-type"],v:null};if(w["style-name"]&&O[w["style-name"]])b.z=O[w["style-name"]];if(a.cellFormula){if(w.formula)w.formula=rt(w.formula);if(w["number-matrix-columns-spanned"]&&w["number-matrix-rows-spanned"]){N=parseInt(w["number-matrix-rows-spanned"],10)||0;D=parseInt(w["number-matrix-columns-spanned"],10)||0;I={s:{r:y,c:C},e:{r:y+N-1,c:C+D-1}};b.F=Ba(I);M.push([I,b.F])}if(w.formula)b.f=jd(w.formula);else for(X=0;X=M[X][0].s.r&&y<=M[X][0].e.r)if(C>=M[X][0].s.c&&C<=M[X][0].e.c)b.F=M[X][1]}if(w["number-columns-spanned"]||w["number-rows-spanned"]){N=parseInt(w["number-rows-spanned"],10)||0;D=parseInt(w["number-columns-spanned"],10)||0;I={s:{r:y,c:C},e:{r:y+N-1,c:C+D-1}};R.push(I)}if(w["number-columns-repeated"])L=parseInt(w["number-columns-repeated"],10);switch(b.t){case"boolean":b.t="b";b.v=ht(w["boolean-value"])||+w["boolean-value"]>=1;break;case"float":b.t="n";b.v=parseFloat(w.value);break;case"percentage":b.t="n";b.v=parseFloat(w.value);break;case"currency":b.t="n";b.v=parseFloat(w.value);break;case"date":b.t="d";b.v=Tr(w["date-value"]);if(!a.cellDates){b.t="n";b.v=ur(b.v,U.WBProps.date1904)-Y}if(!b.z)b.z="m/d/yy";break;case"time":b.t="n";b.v=gr(w["time-value"])/86400;if(a.cellDates){b.t="d";b.v=mr(b.v)}if(!b.z)b.z="HH:MM:SS";break;case"number":b.t="n";b.v=parseFloat(w["数据数值"]);break;default:if(b.t==="string"||b.t==="text"||!b.t){b.t="s";if(w["string-value"]!=null){k=rt(w["string-value"]);E=[]}}else throw new Error("Unsupported value type "+b.t);}}else{$=false;if(b.t==="s"){b.v=k||"";if(E.length)b.R=E;$=T==0}if(B.Target)b.l=B;if(H.length>0){b.c=H;H=[]}if(k&&a.cellText!==false)b.w=k;if($){b.t="z";delete b.v}if(!$||a.sheetStubs){if(!(a.sheetRows&&a.sheetRows<=y)){for(var Z=0;Z0)v["!data"][y+Z][C+L]=Er(b)}else{v[Ma({r:y+Z,c:C})]=b;while(--L>0)v[Ma({r:y+Z,c:C+L})]=Er(b)}if(S.e.c<=C)S.e.c=C}}}L=parseInt(w["number-columns-repeated"]||"1",10);C+=L-1;L=0;b={};k="";E=[]}B={};break;case"document":;case"document-content":;case"电子表格文档":;case"spreadsheet":;case"主体":;case"scripts":;case"styles":;case"font-face-decls":;case"master-styles":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s}else if(m[0].charAt(m[0].length-2)!=="/")i.push([m[3],true]);break;case"annotation":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s;z.t=k;if(E.length)z.R=E;z.a=V;H.push(z)}else if(m[0].charAt(m[0].length-2)!=="/"){i.push([m[3],false])}V="";G=0;k="";T=0;E=[];break;case"creator":if(m[1]==="/"){V=n.slice(G,m.index)}else G=m.index+m[0].length;break;case"meta":;case"元数据":;case"settings":;case"config-item-set":;case"config-item-map-indexed":;case"config-item-map-entry":;case"config-item-map-named":;case"shapes":;case"frame":;case"text-box":;case"image":;case"data-pilot-tables":;case"list-style":;case"form":;case"dde-links":;case"event-listeners":;case"chart":if(m[1]==="/"){if((s=i.pop())[0]!==m[3])throw"Bad state: "+s}else if(m[0].charAt(m[0].length-2)!=="/")i.push([m[3],false]);k="";T=0;E=[];break;case"scientific-number":;case"currency-symbol":;case"fill-character":break;case"text-style":;case"boolean-style":;case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":if(m[1]==="/"){var J=It.lastIndex;db(n.slice(o,It.lastIndex),r,x);It.lastIndex=J}else if(m[0].charAt(m[0].length-2)!=="/"){o=It.lastIndex-m[0].length}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":{var q=Jr(m[0],false);if(q["family"]=="table-cell"&&x[q["data-style-name"]])O[q["name"]]=x[q["data-style-name"]]}break;case"map":break;case"font-face":break;case"paragraph-properties":break;case"table-properties":break;case"table-column-properties":break;case"table-row-properties":break;case"table-cell-properties":break;case"number":break;case"fraction":break;case"day":;case"month":;case"year":;case"era":;case"day-of-week":;case"week-of-year":;case"quarter":;case"hours":;case"minutes":;case"seconds":;case"am-pm":break;case"boolean":break;case"text":if(m[0].slice(-2)==="/>")break;else if(m[1]==="/")switch(i[i.length-1][0]){case"number-style":;case"date-style":;case"time-style":l+=n.slice(c,m.index);break;}else c=m.index+m[0].length;break;case"named-range":f=Jr(m[0],false);W=Yd(f["cell-range-address"]);var Q={Name:f.name,Ref:W[0]+"!"+W[1]};if(j)Q.Sheet=p.length;U.Names.push(Q);break;case"text-content":break;case"text-properties":break;case"embedded-text":break;case"body":;case"电子表格":break;case"forms":break;case"table-column":break;case"table-header-rows":break;case"table-rows":break;case"table-column-group":break;case"table-header-columns":break;case"table-columns":break;case"null-date":f=Jr(m[0],false);switch(f["date-value"]){case"1904-01-01":U.WBProps.date1904=true;case"1900-01-01":Y=0;}break;case"graphic-properties":break;case"calculation-settings":break;case"named-expressions":break;case"label-range":break;case"label-ranges":break;case"named-expression":break;case"sort":break;case"sort-by":break;case"sort-groups":break;case"tab":break;case"line-break":break;case"span":break;case"p":;case"文本串":if(["master-styles"].indexOf(i[i.length-1][0])>-1)break;if(m[1]==="/"&&(!w||!w["string-value"])){var ee=ub(n.slice(T,m.index),A);k=(k.length>0?k+"\n":"")+ee[0]}else{A=Jr(m[0],false);T=m.index+m[0].length}break;case"s":break;case"database-range":if(m[1]==="/")break;try{W=Yd(Jr(m[0])["target-range-address"]);d[W[0]]["!autofilter"]={ref:W[1]}}catch(re){}break;case"date":break;case"object":break;case"title":;case"标题":break;case"desc":break;case"binary-data":break;case"table-source":break;case"scenario":break;case"iteration":break;case"content-validations":break;case"content-validation":break;case"help-message":break;case"error-message":break;case"database-ranges":break;case"filter":break;case"filter-and":break;case"filter-or":break;case"filter-condition":break;case"list-level-style-bullet":break;case"list-level-style-number":break;case"list-level-properties":break;case"sender-firstname":;case"sender-lastname":;case"sender-initials":;case"sender-title":;case"sender-position":;case"sender-email":;case"sender-phone-private":;case"sender-fax":;case"sender-company":;case"sender-phone-work":;case"sender-street":;case"sender-city":;case"sender-postal-code":;case"sender-country":;case"sender-state-or-province":;case"author-name":;case"author-initials":;case"chapter":;case"file-name":;case"template-name":;case"sheet-name": +break;case"event-listener":break;case"initial-creator":;case"creation-date":;case"print-date":;case"generator":;case"document-statistic":;case"user-defined":;case"editing-duration":;case"editing-cycles":break;case"config-item":break;case"page-number":break;case"page-count":break;case"time":break;case"cell-range-source":break;case"detective":break;case"operation":break;case"highlighted-range":break;case"data-pilot-table":;case"source-cell-range":;case"source-service":;case"data-pilot-field":;case"data-pilot-level":;case"data-pilot-subtotals":;case"data-pilot-subtotal":;case"data-pilot-members":;case"data-pilot-member":;case"data-pilot-display-info":;case"data-pilot-sort-info":;case"data-pilot-layout-info":;case"data-pilot-field-reference":;case"data-pilot-groups":;case"data-pilot-group":;case"data-pilot-group-member":break;case"rect":break;case"dde-connection-decls":;case"dde-connection-decl":;case"dde-link":;case"dde-source":break;case"properties":break;case"property":break;case"a":if(m[1]!=="/"){B=Jr(m[0],false);if(!B.href)break;B.Target=rt(B.href);delete B.href;if(B.Target.charAt(0)=="#"&&B.Target.indexOf(".")>-1){W=Yd(B.Target.slice(1));B.Target="#"+W[0]+"!"+W[1]}else if(B.Target.match(/^\.\.[\\\/]/))B.Target=B.Target.slice(3)}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(m[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(a.WTF)throw new Error(m);};}var te={Sheets:d,SheetNames:p,Workbook:U};if(a.bookSheets)delete te.Sheets;return te}function vb(e,r){r=r||{};if(Fr(e,"META-INF/manifest.xml"))hi(Lr(e,"META-INF/manifest.xml"),r);var t=Mr(e,"styles.xml");var a=t&&db(mt(t),r);var n=Mr(e,"content.xml");if(!n)throw new Error("Missing content.xml in ODS / UOF file");var i=pb(mt(n),r,a);if(Fr(e,"meta.xml"))i.Props=wi(Lr(e,"meta.xml"));i.bookType="ods";return i}function mb(e,r){var t=pb(e,r);t.bookType="fods";return t}var gb=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return Gr+r}}();function bb(e,r){var t="number",a="",n={"style:name":r},i="",s=0;e=e.replace(/"[$]"/g,"$");e:{if(e.indexOf(";")>-1){console.error("Unsupported ODS Style Map exported. Using first branch of "+e);e=e.slice(0,e.indexOf(";"))}if(e=="@"){t="text";a="";break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[s]=='"'){i="";while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;if(e[s+1]=="*"){s++;a+=""+nt(i.replace(/""/g,'"'))+""}else{a+=""+nt(i.replace(/""/g,'"'))+""}e=e.slice(s+1);s=0}var f=e.match(/# (\?+)\/(\?+)/);if(f){a+=_t("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":f[1].length,"number:max-denominator-value":Math.max(+f[1].replace(/./g,"9"),+f[2].replace(/./g,"9"))});break e}if(f=e.match(/# (\?+)\/(\d+)/)){a+=_t("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":f[1].length,"number:denominator-value":+f[2]});break e}if(f=e.match(/(\d+)(|\.\d+)%/)){t="percentage";a+=_t("number:number",null,{"number:decimal-places":f[2]&&f.length-1||0,"number:min-decimal-places":f[2]&&f.length-1||0,"number:min-integer-digits":f[1].length})+"%";break e}var o=false;if(["y","m","d"].indexOf(e[0])>-1){t="date";r:for(;s";break;case"yyy":;case"yyyy":a+='';break;case"mmmmm":console.error("ODS has no equivalent of format |mmmmm|");case"m":;case"mm":;case"mmm":;case"mmmm":a+='';break;case"d":;case"dd":a+='';break;case"ddd":;case"dddd":a+='';break;}break;case'"':while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(i)+"";break;default:console.error("unrecognized character "+i+" in ODF format "+e);}if(!o)break e;e=e.slice(s+1);s=0}if(e.match(/^\[?[hms]/)){if(t=="number")t="time";if(e.match(/\[/)){e=e.replace(/[\[\]]/g,"");n["number:truncate-on-overflow"]="false"}for(;s';break;case"m":;case"mm":a+='';break;case"s":;case"ss":if(e[s+1]==".")do{i+=e[s+1];++s}while(e[s+1]=="0");a+='";break;}break;case'"':while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(i)+"";break;case"a":if(e.slice(s,s+3).toLowerCase()=="a/p"){a+="";s+=2;break}if(e.slice(s,s+5).toLowerCase()=="am/pm"){a+="";s+=4;break};default:console.error("unrecognized character "+i+" in ODF format "+e);}break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[0]=="$"){a+='$';e=e.slice(1);s=0}s=0;if(e[s]=='"'){while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;if(e[s+1]=="*"){s++;a+=""+nt(i.replace(/""/g,'"'))+""}else{a+=""+nt(i.replace(/""/g,'"'))+""}e=e.slice(s+1);s=0}var c=e.match(/([#0][0#,]*)(\.[0#]*|)(E[+]?0*|)/i);if(!c||!c[0])console.error("Could not find numeric part of "+e);else{var h=c[1].replace(/,/g,"");a+="-1?' number:grouping="true"':"")+(c[2]&&' number:decimal-places="'+(c[2].length-1)+'"'||' number:decimal-places="0"')+(c[3]&&c[3].indexOf("+")>-1?' number:forced-exponent-sign="true"':"")+(c[3]?' number:min-exponent-digits="'+c[3].match(/0+/)[0].length+'"':"")+">"+"";s=c.index+c[0].length}if(e[s]=='"'){i="";while(e[++s]!='"'||e[++s]=='"')i+=e[s];--s;a+=""+nt(i.replace(/""/g,'"'))+""}}if(!a){console.error("Could not generate ODS number format for |"+e+"|");return""}return _t("number:"+t+"-style",a,n)}function wb(e,r,t){var a=e.filter(function(e){return e.Sheet==(t==-1?null:t)});if(!a.length)return"";return" \n"+a.map(function(e){var r=Kd(e.Ref);return" "+_t("table:named-range",null,{"table:name":e.Name,"table:cell-range-address":r,"table:base-cell-address":r.replace(/[\.]?[^\.]*$/,".$A$1")})}).join("\n")+"\n \n"}var kb=function(){var e=function(e){return nt(e).replace(/ +/g,function(e){return''}).replace(/\t/g,"").replace(/\n/g,"").replace(/^ /,"").replace(/ $/,"")};var r=" \n";var t=" \n";var a=function(a,n,i,s,f){var o=[];o.push(' \n');var l=0,c=0,h=Ua(a["!ref"]||"A1");var u=a["!merges"]||[],d=0;var p=a["!data"]!=null;if(a["!cols"]){for(c=0;c<=h.e.c;++c)o.push(" \n")}var v="",m=a["!rows"]||[];for(l=0;l\n")}for(;l<=h.e.r;++l){v=m[l]?' table:style-name="ro'+m[l].ods+'"':"";o.push(" \n");for(c=0;cc)continue;if(u[d].s.r>l)continue;if(u[d].e.c\n")}if((n.Workbook||{}).Names)o.push(wb(n.Workbook.Names,n.SheetNames,i));o.push(" \n");return o.join("")};var n=function(e,r){e.push(" \n");var t=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!cols"]){for(var a=0;a\n');e.push(' \n');e.push(" \n");++t}}});var a=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!rows"]){for(var t=0;t\n');e.push(' \n');e.push(" \n");++a}}});e.push(' \n');e.push(' \n');e.push(" \n");e.push(' \n');e.push(' \n');e.push(" /\n");e.push(' \n');e.push(" /\n");e.push(" \n");e.push(" \n");var n={};var i=69;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;var t=r["!data"]!=null;var a=Ua(r["!ref"]);for(var s=0;s<=a.e.r;++s)for(var f=0;f<=a.e.c;++f){var o=t?(r["!data"][s]||[])[f]:r[Ma({r:s,c:f})];if(!o||!o.z||o.z.toLowerCase()=="general")continue;if(!n[o.z]){var l=bb(o.z,"N"+i);if(l){n[o.z]="N"+i;++i;e.push(l+"\n")}}}});e.push(' \n');sr(n).forEach(function(r){e.push('\n')});e.push(" \n");return n};return function i(e,r){var t=[Gr];var i=St({"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:meta":"urn:oasis:names:tc:opendocument:xmlns:meta:1.0","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:presentation":"urn:oasis:names:tc:opendocument:xmlns:presentation:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:chart":"urn:oasis:names:tc:opendocument:xmlns:chart:1.0","xmlns:dr3d":"urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0","xmlns:math":"http://www.w3.org/1998/Math/MathML","xmlns:form":"urn:oasis:names:tc:opendocument:xmlns:form:1.0","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=St({"xmlns:config":"urn:oasis:names:tc:opendocument:xmlns:config:1.0","office:mimetype":"application/vnd.oasis.opendocument.spreadsheet"});if(r.bookType=="fods"){t.push("\n");t.push(mi().replace(//,"").replace(/<\/office:document-meta>/,"")+"\n")}else t.push("\n");var f=n(t,e);t.push(" \n");t.push(" \n");if(((e.Workbook||{}).WBProps||{}).date1904)t.push(' \n \n \n');for(var o=0;o!=e.SheetNames.length;++o)t.push(a(e.Sheets[e.SheetNames[o]],e,o,r,f));if((e.Workbook||{}).Names)t.push(wb(e.Workbook.Names,e.SheetNames,-1));t.push(" \n");t.push(" \n");if(r.bookType=="fods")t.push("");else t.push("");return t.join("")}}();function Tb(e,r){if(r.bookType=="fods")return kb(e,r);var t=Hr();var a="";var n=[];var i=[];a="mimetype";Wr(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";Wr(t,a,kb(e,r));n.push([a,"text/xml"]);i.push([a,"ContentFile"]);a="styles.xml";Wr(t,a,gb(e,r));n.push([a,"text/xml"]);i.push([a,"StylesFile"]);a="meta.xml";Wr(t,a,Gr+mi());n.push([a,"text/xml"]);i.push([a,"MetadataFile"]);a="manifest.rdf";Wr(t,a,vi(i));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";Wr(t,a,ui(n));return t}var Ab=function(){try{if(typeof Uint8Array=="undefined")return"slice";if(typeof Uint8Array.prototype.subarray=="undefined")return"slice";if(typeof Buffer!=="undefined"){if(typeof Buffer.prototype.subarray=="undefined")return"slice";if((typeof Buffer.from=="function"?Buffer.from([72,62]):new Buffer([72,62]))instanceof Uint8Array)return"subarray";return"slice"}return"subarray"}catch(e){return"slice"}}();function Eb(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function yb(e){return typeof TextDecoder!="undefined"?(new TextDecoder).decode(e):mt(R(e))}function Cb(e){return typeof TextEncoder!="undefined"?(new TextEncoder).encode(e):x(gt(e))}function Sb(e){var r=0;for(var t=0;t>1&1431655765;e=(e&858993459)+(e>>2&858993459);return(e+(e>>4)&252645135)*16843009>>>24}function xb(e,r){var t=(e[r+15]&127)<<7|e[r+14]>>1;var a=e[r+14]&1;for(var n=r+13;n>=r;--n)a=a*256+e[n];return(e[r+15]&128?-a:a)*Math.pow(10,t-6176)}function Ob(e,r,t){var a=Math.floor(t==0?0:Math.LOG10E*Math.log(Math.abs(t)))+6176-16;var n=t/Math.pow(10,a-6176);e[r+15]|=a>>7;e[r+14]|=(a&127)<<1;for(var i=0;n>=1;++i,n/=256)e[r+i]=n&255;e[r+15]|=t>=0?0:128}function Rb(e,r){var t=r.l;var a=e[t]&127;e:if(e[t++]>=128){a|=(e[t]&127)<<7;if(e[t++]<128)break e;a|=(e[t]&127)<<14;if(e[t++]<128)break e;a|=(e[t]&127)<<21;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,28);++t;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,35);++t;if(e[t++]<128)break e;a+=(e[t]&127)*Math.pow(2,42);++t;if(e[t++]<128)break e}r.l=t;return a}function Ib(e){var r=new Uint8Array(7);r[0]=e&127;var t=1;e:if(e>127){r[t-1]|=128;r[t]=e>>7&127;++t;if(e<=16383)break e;r[t-1]|=128;r[t]=e>>14&127;++t;if(e<=2097151)break e;r[t-1]|=128;r[t]=e>>21&127;++t;if(e<=268435455)break e;r[t-1]|=128;r[t]=e/256>>>21&127;++t;if(e<=34359738367)break e;r[t-1]|=128;r[t]=e/65536>>>21&127;++t;if(e<=4398046511103)break e;r[t-1]|=128;r[t]=e/16777216>>>21&127;++t}return r[Ab](0,t)}function Nb(e){var r={l:0};var t=[];while(r.l=128){t|=(e[r]&127)<<7;if(e[r++]<128)break e;t|=(e[r]&127)<<14;if(e[r++]<128)break e;t|=(e[r]&127)<<21;if(e[r++]<128)break e;t|=(e[r]&127)<<28}return t}function Pb(e){var r=0,t=e[r]&127,a=0;e:if(e[r++]>=128){t|=(e[r]&127)<<7;if(e[r++]<128)break e;t|=(e[r]&127)<<14;if(e[r++]<128)break e;t|=(e[r]&127)<<21;if(e[r++]<128)break e;t|=(e[r]&127)<<28;a=e[r]>>4&7;if(e[r++]<128)break e;a|=(e[r]&127)<<3;if(e[r++]<128)break e;a|=(e[r]&127)<<10;if(e[r++]<128)break e;a|=(e[r]&127)<<17;if(e[r++]<128)break e;a|=(e[r]&127)<<24;if(e[r++]<128)break e;a|=(e[r]&127)<<31}return[t>>>0,a>>>0]}function Lb(e){var r=[],t={l:0};while(t.l=128);s=e[Ab](t.l,f);t.l=f}break;case 1:{s=e[Ab](f,f+8);t.l=f+8}break;case 2:{var o=Rb(e,t);s=e[Ab](t.l,t.l+o);t.l+=o}break;case 5:{s=e[Ab](f,f+4);t.l=f+4}break;default:throw new Error("PB Type ".concat(i," for Field ").concat(n," at offset ").concat(a));}var l={data:s,type:i};if(r[n]==null)r[n]=[];r[n].push(l)}return r}function Mb(e){var r=[];e.forEach(function(e,t){if(t==0)return;e.forEach(function(e){if(!e.data)return;r.push(Ib(t*8+e.type));if(e.type==2)r.push(Ib(e.data.length));r.push(e.data)})});return Sb(r)}function Ub(e,r){return(e==null?void 0:e.map(function(e){return r(e.data)}))||[]}function Bb(e){var r;var t=[],a={l:0};while(a.l>>0>0;t.push(s)}return t}function Wb(e){var r=[];e.forEach(function(e){var t=[[],[{data:Ib(e.id),type:0}],[]];if(e.merge!=null)t[3]=[{data:Ib(+!!e.merge),type:0}];var a=[];e.messages.forEach(function(e){a.push(e.data);e.meta[3]=[{type:0,data:Ib(e.data.length)}];t[2].push({data:Mb(e.meta),type:2})});var n=Mb(t);r.push(Ib(n.length));r.push(n);a.forEach(function(e){return r.push(e)})});return Sb(r)}function Hb(e,r){if(e!=0)throw new Error("Unexpected Snappy chunk type ".concat(e));var t={l:0};var a=Rb(r,t);var n=[];var i=t.l;while(i>2;if(f<60)++f;else{var o=f-59;f=r[i];if(o>1)f|=r[i+1]<<8;if(o>2)f|=r[i+2]<<16;if(o>3)f|=r[i+3]<<24;f>>>=0;f++;i+=o}n.push(r[Ab](i,i+f));i+=f;continue}else{var l=0,c=0;if(s==1){c=(r[i]>>2&7)+4;l=(r[i++]&224)<<3;l|=r[i++]}else{c=(r[i++]>>2)+1;if(s==2){l=r[i]|r[i+1]<<8;i+=2}else{l=(r[i]|r[i+1]<<8|r[i+2]<<16|r[i+3]<<24)>>>0;i+=4}}if(l==0)throw new Error("Invalid offset 0");var h=n.length-1,u=l;while(h>=0&&u>=n[h].length){u-=n[h].length;--h}if(h<0){if(u==0)u=n[h=0].length;else throw new Error("Invalid offset beyond length")}if(c0){n.push(n[h][Ab](n[h].length-u));c-=u}++h;while(c>=n[h].length){n.push(n[h]);c-=n[h].length;++h}if(c)n.push(n[h][Ab](0,c))}if(n.length>25)n=[Sb(n)]}}var d=0;for(var p=0;p>8&255]))}else if(a<=16777216){s+=4;r.push(new Uint8Array([248,a-1&255,a-1>>8&255,a-1>>16&255]))}else if(a<=4294967296){s+=5;r.push(new Uint8Array([252,a-1&255,a-1>>8&255,a-1>>16&255,a-1>>>24&255]))}r.push(e[Ab](t,t+a));s+=a;n[0]=0;n[1]=s&255;n[2]=s>>8&255;n[3]=s>>16&255;t+=a}return Sb(r)}var Gb=function(){return{sst:[],rsst:[],ofmt:[],nfmt:[]}};function $b(e,r,t,a,n){var i,s,f,o;var l=r&255,c=r>>8;var h=c>=5?n:a;e:if(t&(c>4?8:4)&&e.t=="n"&&l==7){var u=((i=h[7])==null?void 0:i[0])?Fb(h[7][0].data):-1;if(u==-1)break e;var d=((s=h[15])==null?void 0:s[0])?Fb(h[15][0].data):-1;var p=((f=h[16])==null?void 0:f[0])?Fb(h[16][0].data):-1;var v=((o=h[40])==null?void 0:o[0])?Fb(h[40][0].data):-1;var m=e.v,g=m;r:if(v){if(m==0){d=p=2;break r}if(m>=604800)d=1;else if(m>=86400)d=2;else if(m>=3600)d=4;else if(m>=60)d=8;else if(m>=1)d=16;else d=32;if(Math.floor(m)!=m)p=32;else if(m%60)p=16;else if(m%3600)p=8;else if(m%86400)p=4;else if(m%604800)p=2;if(p=2){g=m/86400;if(p>2){g|=0;m-=86400*g}w.push('d"d"');b.push(g+(u==2?" day"+(g==1?"":"s"):u==1?"d":""))}if(d<=4&&p>=4){g=m/3600;if(p>4){g|=0;m-=3600*g}w.push((d>=4?"[h]":"h")+'"h"');b.push(g+(u==2?" hour"+(g==1?"":"s"):u==1?"h":""))}if(d<=8&&p>=8){g=m/60;if(p>8){g|=0;m-=60*g}w.push((d>=8?"[m]":"m")+'"m"');if(u==0)b.push((d==8&&p==8||g>=10?"":"0")+g);else b.push(g+(u==2?" minute"+(g==1?"":"s"):u==1?"m":""))}if(d<=16&&p>=16){g=m;if(p>16){g|=0;m-=g}w.push((d>=16?"[s]":"s")+'"s"');if(u==0)b.push((p==16&&d==16||g>=10?"":"0")+g);else b.push(g+(u==2?" second"+(g==1?"":"s"):u==1?"s":""))}if(p>=32){g=Math.round(1e3*m);if(d<32)w.push('.000"ms"');if(u==0)b.push((g>=100?"":g>=10?"0":"00")+g);else b.push(g+(u==2?" millisecond"+(g==1?"":"s"):u==1?"ms":""))}e.w=b.join(u==0?":":" ");e.z=w.join(u==0?'":"':" ");if(u==0)e.w=e.w.replace(/:(\d\d\d)$/,".$1")}}function jb(e,r,t){var a=Eb(e);var n=a.getUint32(4,true);var i=-1,s=-1,f=-1,o=NaN,l=new Date(2001,0,1);var c=t>1?12:8;if(n&2){f=a.getUint32(c,true);c+=4}c+=_b(n&(t>1?3468:396))*4;if(n&512){i=a.getUint32(c,true);c+=4}c+=_b(n&(t>1?12288:4096))*4;if(n&16){s=a.getUint32(c,true);c+=4}if(n&32){o=a.getFloat64(c,true);c+=8}if(n&64){l.setTime(l.getTime()+a.getFloat64(c,true)*1e3);c+=8}if(t>1){n=a.getUint32(8,true)>>>16;if(n&255){if(f==-1)f=a.getUint32(c,true);c+=4}}var h;var u=e[t>=4?1:2];switch(u){case 0:return void 0;case 2:h={t:"n",v:o};break;case 3:h={t:"s",v:r.sst[s]};break;case 5:h={t:"d",v:l};break;case 6:h={t:"b",v:o>0};break;case 7:h={t:"n",v:o};break;case 8:h={t:"e",v:0};break;case 9:{if(i>-1)h={t:"s",v:r.rsst[i]};else throw new Error("Unsupported cell type ".concat(e[Ab](0,4)))}break;default:throw new Error("Unsupported cell type ".concat(e[Ab](0,4)));}if(f>-1)$b(h,u|t<<8,n,r.ofmt[f],r.nfmt[f]);if(u==7)h.v/=86400;return h}function Xb(e,r){var t=Eb(e);var a=t.getUint32(4,true);var n=t.getUint32(8,true);var i=12;var s=-1,f=-1,o=-1,l=NaN,c=NaN,h=new Date(2001,0,1);if(n&1){l=xb(e,i);i+=16}if(n&2){c=t.getFloat64(i,true);i+=8}if(n&4){h.setTime(h.getTime()+t.getFloat64(i,true)*1e3);i+=8}if(n&8){f=t.getUint32(i,true);i+=4}if(n&16){s=t.getUint32(i,true);i+=4}var u;var d=e[1];switch(d){case 0:return void 0;case 2:u={t:"n",v:l};break;case 3:u={t:"s",v:r.sst[f]};break;case 5:u={t:"d",v:h};break;case 6:u={t:"b",v:c>0};break;case 7:u={t:"n",v:c};break;case 8:u={t:"e",v:0};break;case 9:u={t:"s",v:r.rsst[s]};break;case 10:u={t:"n",v:l};break;default:throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(n&31," : ").concat(e[Ab](0,4)));}i+=_b(n&8160)*4;if(n&516096){if(o==-1)o=t.getUint32(i,true);i+=4}if(o>-1)$b(u,d|5<<8,n>>13,r.ofmt[o],r.nfmt[o]);if(d==7)u.v/=86400;return u}function Yb(e,r){var t=new Uint8Array(32),a=Eb(t),n=12,i=0;t[0]=5;switch(e.t){case"n":t[1]=2;Ob(t,n,e.v);i|=1;n+=16;break;case"b":t[1]=6;a.setFloat64(n,e.v?1:0,true);i|=2;n+=8;break;case"s":var s=e.v==null?"":String(e.v);var f=r.indexOf(s);if(f==-1)r[f=r.length]=s;t[1]=3;a.setUint32(n,f,true);i|=8;n+=4;break;default:throw"unsupported cell type "+e.t;}a.setUint32(8,i,true);return t[Ab](0,n)}function Kb(e,r){var t=new Uint8Array(32),a=Eb(t),n=12,i=0;t[0]=4;switch(e.t){case"n":t[2]=2;a.setFloat64(n,e.v,true);i|=32;n+=8;break;case"b":t[2]=6;a.setFloat64(n,e.v?1:0,true);i|=32;n+=8;break;case"s":var s=e.v==null?"":String(e.v);var f=r.indexOf(s);if(f==-1)r[f=r.length]=s;t[2]=3;a.setUint32(n,f,true);i|=16;n+=4;break;default:throw"unsupported cell type "+e.t;}a.setUint32(8,i,true);return t[Ab](0,n)}function Zb(e,r){switch(e[0]){case 0:;case 1:;case 2:;case 3:;case 4:return jb(e,r,e[0]);case 5:return Xb(e,r);default:throw new Error("Unsupported payload version ".concat(e[0]));}}function Jb(e){var r=Lb(e);return Fb(r[1][0].data)}function qb(e){return Mb([[],[{type:0,data:Ib(e)}]])}function Qb(e,r){var t;var a=((t=e.messages[0].meta[5])==null?void 0:t[0])?Nb(e.messages[0].meta[5][0].data):[];var n=a.indexOf(r);if(n==-1){a.push(r);e.messages[0].meta[5]=[{type:2,data:Db(a)}]}}function ew(e,r){var t;var a=((t=e.messages[0].meta[5])==null?void 0:t[0])?Nb(e.messages[0].meta[5][0].data):[];e.messages[0].meta[5]=[{type:2,data:Db(a.filter(function(e){return e!=r}))}]}function rw(e,r){var t=Lb(r.data);var a=Fb(t[1][0].data);var n=t[3];var i=[];(n||[]).forEach(function(r){var t=Lb(r.data);if(!t[1])return;var n=Fb(t[1][0].data)>>>0;switch(a){case 1:i[n]=yb(t[3][0].data);break;case 8:{var s=e[Jb(t[9][0].data)][0];var f=Lb(s.data);var o=e[Jb(f[1][0].data)][0];var l=Fb(o.meta[1][0].data);if(l!=2001)throw new Error("2000 unexpected reference to ".concat(l));var c=Lb(o.data);i[n]=c[3].map(function(e){return yb(e.data)}).join("")}break;case 2:i[n]=Lb(t[6][0].data);break;default:throw a;}});return i}function tw(e,r){var t,a,n,i,s,f,o,l,c,h,u,d,p,v;var m=Lb(e);var g=Fb(m[1][0].data)>>>0;var b=Fb(m[2][0].data)>>>0;var w=((a=(t=m[8])==null?void 0:t[0])==null?void 0:a.data)&&Fb(m[8][0].data)>0||false;var k,T;if(((i=(n=m[7])==null?void 0:n[0])==null?void 0:i.data)&&r!=0){k=(f=(s=m[7])==null?void 0:s[0])==null?void 0:f.data;T=(l=(o=m[6])==null?void 0:o[0])==null?void 0:l.data}else if(((h=(c=m[4])==null?void 0:c[0])==null?void 0:h.data)&&r!=1){k=(d=(u=m[4])==null?void 0:u[0])==null?void 0:d.data;T=(v=(p=m[3])==null?void 0:p[0])==null?void 0:v.data}else throw"NUMBERS Tile missing ".concat(r," cell storage");var A=w?4:1;var E=Eb(k);var y=[];for(var C=0;C=1)_[y[y.length-1][0]]=T[Ab](y[y.length-1][1]*A);return{R:g,cells:_}}function aw(e,r){var t;var a=Lb(r.data);var n=-1;if((t=a==null?void 0:a[7])==null?void 0:t[0]){if(Fb(a[7][0].data)>>>0)n=1;else n=0}var i=Ub(a[5],function(e){return tw(e,n)});return{nrows:Fb(a[4][0].data)>>>0,data:i.reduce(function(e,r){if(!e[r.R])e[r.R]=[];r.cells.forEach(function(t,a){if(e[r.R][a])throw new Error("Duplicate cell r=".concat(r.R," c=").concat(a));e[r.R][a]=t});return e},[])}}function nw(e,r,t){var a,n,i,s,f,o;var l=Lb(r.data);var c={s:{r:0,c:0},e:{r:0,c:0}};c.e.r=(Fb(l[6][0].data)>>>0)-1;if(c.e.r<0)throw new Error("Invalid row varint ".concat(l[6][0].data));c.e.c=(Fb(l[7][0].data)>>>0)-1;if(c.e.c<0)throw new Error("Invalid col varint ".concat(l[7][0].data));t["!ref"]=Ba(c);var h=t["!data"]!=null,u=t;var d=Lb(l[4][0].data);var p=Gb();if((a=d[4])==null?void 0:a[0])p.sst=rw(e,e[Jb(d[4][0].data)][0]);if((n=d[11])==null?void 0:n[0])p.ofmt=rw(e,e[Jb(d[11][0].data)][0]);if((i=d[17])==null?void 0:i[0])p.rsst=rw(e,e[Jb(d[17][0].data)][0]);if((s=d[22])==null?void 0:s[0])p.nfmt=rw(e,e[Jb(d[22][0].data)][0]);var v=Lb(d[3][0].data);var m=0;v[1].forEach(function(r){var a=Lb(r.data);var n=e[Jb(a[2][0].data)][0];var i=Fb(n.meta[1][0].data);if(i!=6002)throw new Error("6001 unexpected reference to ".concat(i));var s=aw(e,n);s.data.forEach(function(e,r){e.forEach(function(e,a){var n=Zb(e,p);if(n){if(h){if(!u["!data"][m+r])u["!data"][m+r]=[];u["!data"][m+r][a]=n}else{t[Na(a)+xa(m+r)]=n}}})});m+=s.nrows});if((f=d[13])==null?void 0:f[0]){var g=e[Jb(d[13][0].data)][0];var b=Fb(g.meta[1][0].data);if(b!=6144)throw new Error("Expected merge type 6144, found ".concat(b));t["!merges"]=(o=Lb(g.data))==null?void 0:o[1].map(function(e){var r=Lb(e.data);var t=Eb(Lb(r[1][0].data)[1][0].data),a=Eb(Lb(r[2][0].data)[1][0].data);return{s:{r:t.getUint16(0,true),c:t.getUint16(2,true)},e:{r:t.getUint16(0,true)+a.getUint16(0,true)-1,c:t.getUint16(2,true)+a.getUint16(2,true)-1}}})}}function iw(e,r,t){var a=Lb(r.data);var n={"!ref":"A1"};if(t==null?void 0:t.dense)n["!data"]=[];var i=e[Jb(a[2][0].data)];var s=Fb(i[0].meta[1][0].data);if(s!=6001)throw new Error("6000 unexpected reference to ".concat(s));nw(e,i[0],n);return n}function sw(e,r,t){var a;var n=Lb(r.data);var i={name:((a=n[1])==null?void 0:a[0])?yb(n[1][0].data):"",sheets:[]};var s=Ub(n[2],Jb); +s.forEach(function(r){e[r].forEach(function(r){var a=Fb(r.meta[1][0].data);if(a==6e3)i.sheets.push(iw(e,r,t))})});return i}function fw(e,r,t){var a;var n=dk();var i=Lb(r.data);if((a=i[2])==null?void 0:a[0])throw new Error("Keynote presentations are not supported");var s=Ub(i[1],Jb);s.forEach(function(r){e[r].forEach(function(r){var a=Fb(r.meta[1][0].data);if(a==2){var i=sw(e,r,t);i.sheets.forEach(function(e,r){pk(n,e,r==0?i.name:i.name+"_"+r,true)})}})});if(n.SheetNames.length==0)throw new Error("Empty NUMBERS file");n.bookType="numbers";return n}function ow(e,r){var t,a,n,i,s,f,o;var l={},c=[];e.FullPaths.forEach(function(e){if(e.match(/\.iwpv2/))throw new Error("Unsupported password protection")});e.FileIndex.forEach(function(e){if(!e.name.match(/\.iwa$/))return;if(e.content[0]==98)return;var r;try{r=zb(e.content)}catch(t){return console.log("?? "+e.content.length+" "+(t.message||t))}var a;try{a=Bb(r)}catch(t){return console.log("## "+(t.message||t))}a.forEach(function(e){l[e.id]=e.messages;c.push(e.id)})});if(!c.length)throw new Error("File has no messages");if(((n=(a=(t=l==null?void 0:l[1])==null?void 0:t[0].meta)==null?void 0:a[1])==null?void 0:n[0].data)&&Fb(l[1][0].meta[1][0].data)==1e4)throw new Error("Pages documents are not supported");var h=((o=(f=(s=(i=l==null?void 0:l[1])==null?void 0:i[0])==null?void 0:s.meta)==null?void 0:f[1])==null?void 0:o[0].data)&&Fb(l[1][0].meta[1][0].data)==1&&l[1][0];if(!h)c.forEach(function(e){l[e].forEach(function(e){var r=Fb(e.meta[1][0].data)>>>0;if(r==1){if(!h)h=e;else throw new Error("Document has multiple roots")}})});if(!h)throw new Error("Cannot find Document root");return fw(l,h,r)}function lw(e,r,t){var a,n;var i=[[],[{type:0,data:Ib(0)}],[{type:0,data:Ib(0)}],[{type:2,data:new Uint8Array([])}],[{type:2,data:new Uint8Array(Array.from({length:510},function(){return 255}))}],[{type:0,data:Ib(5)}],[{type:2,data:new Uint8Array([])}],[{type:2,data:new Uint8Array(Array.from({length:510},function(){return 255}))}],[{type:0,data:Ib(1)}]];if(!((a=i[6])==null?void 0:a[0])||!((n=i[7])==null?void 0:n[0]))throw"Mutation only works on post-BNC storages!";var s=0;if(i[7][0].data.length<2*e.length){var f=new Uint8Array(2*e.length);f.set(i[7][0].data);i[7][0].data=f}if(i[4][0].data.length<2*e.length){var o=new Uint8Array(2*e.length);o.set(i[4][0].data);i[4][0].data=o}var l=Eb(i[7][0].data),c=0,h=[];var u=Eb(i[4][0].data),d=0,p=[];var v=t?4:1;for(var m=0;m1)throw new Error("Template NUMBERS file must have exactly one sheet");e.SheetNames.forEach(function(r,s){if(s>=1){mw(t,a,s+1);n=vw(t,a,1);i=Ub(Lb(n.messages[0].data)[1],Jb)}gw(t,a,e.Sheets[r],r,s,i[s])});return t}function pw(e,r,t,a){var n=er.find(e,r[t].location);if(!n)throw"Could not find ".concat(r[t].location," in Numbers template");var i=Bb(zb(n.content));var s=i.find(function(e){return e.id==t});a(s,i);n.content=Vb(Wb(i));n.size=n.content.length}function vw(e,r,t){var a=er.find(e,r[t].location);if(!a)throw"Could not find ".concat(r[t].location," in Numbers template");var n=Bb(zb(a.content));var i=n.find(function(e){return e.id==t});return i}function mw(e,r,t){var a=-1,n=-1;var i={};pw(e,r,1,function(t,s){var f=Lb(t.messages[0].data);a=Jb(Lb(t.messages[0].data)[1][0].data);n=hw({deps:[1],location:r[a].location,type:2},r);i[a]=n;Qb(t,n);f[1].push({type:2,data:qb(n)});var o=vw(e,r,a);o.id=n;if(r[1].location==r[n].location)s.push(o);else pw(e,r,n,function(e,r){return r.push(o)});t.messages[0].data=Mb(f)});var s=-1;pw(e,r,n,function(t,a){var f=Lb(t.messages[0].data);for(var o=3;o<=69;++o)delete f[o];var l=Ub(f[2],Jb);l.forEach(function(e){return ew(t,e)});s=hw({deps:[n],location:r[l[0]].location,type:r[l[0]].type},r);Qb(t,s);i[l[0]]=s;f[2]=[{type:2,data:qb(s)}];var c=vw(e,r,l[0]);c.id=s;if(r[l[0]].location==r[n].location)a.push(c);else{var h=r[n].location;h=h.replace(/^Root Entry\//,"");h=h.replace(/^Index\//,"").replace(/\.iwa$/,"");pw(e,r,2,function(e){var r=Lb(e.messages[0].data);var t=r[3].findIndex(function(e){var r,t;var a=Lb(e.data);if((r=a[3])==null?void 0:r[0])return yb(a[3][0].data)==h;if(((t=a[2])==null?void 0:t[0])&&yb(a[2][0].data)==h)return true;return false});var a=Lb(r[3][t].data);if(!a[6])a[6]=[];a[6].push({type:2,data:Mb([[],[{type:0,data:Ib(s)}]])});r[3][t].data=Mb(a);e.messages[0].data=Mb(r)});pw(e,r,s,function(e,r){return r.push(c)})}t.messages[0].data=Mb(f)});var f=-1;pw(e,r,s,function(t,a){var n=Lb(t.messages[0].data);var o=Lb(n[1][0].data);for(var l=3;l<=69;++l)delete o[l];var c=Jb(o[2][0].data);o[2][0].data=qb(i[c]);n[1][0].data=Mb(o);var h=Jb(n[2][0].data);ew(t,h);f=hw({deps:[s],location:r[h].location,type:r[h].type},r);Qb(t,f);i[h]=f;n[2][0].data=qb(f);var u=vw(e,r,h);u.id=f;if(r[s].location==r[f].location)a.push(u);else pw(e,r,f,function(e,r){return r.push(u)});t.messages[0].data=Mb(n)});var o=r[f].location;o=o.replace(/^Root Entry\//,"");o=o.replace(/^Index\//,"").replace(/\.iwa$/,"");pw(e,r,f,function(a,n){var s,l;var c=Lb(a.messages[0].data);var h=yb(c[1][0].data),u=h.replace(/-[A-Z0-9]*/,"-".concat(t.toString(16).padStart(4,"0")));c[1][0].data=Cb(u);[12,13,29,31,32,33,39,44,47,81,82,84].forEach(function(e){return delete c[e]});if(c[45]){var d=Lb(c[45][0].data);var p=Jb(d[1][0].data);ew(a,p);delete c[45]}if(c[70]){var v=Lb(c[70][0].data);(s=v[2])==null?void 0:s.forEach(function(e){var r=Lb(e.data);[2,3].map(function(e){return r[e][0]}).forEach(function(e){var r=Lb(e.data);if(!r[8])return;var t=Jb(r[8][0].data);ew(a,t)})});delete c[70]}[46,30,34,35,36,38,48,49,60,61,62,63,64,71,72,73,74,75,85,86,87,88,89].forEach(function(e){if(!c[e])return;var r=Jb(c[e][0].data);delete c[e];ew(a,r)});var m=Lb(c[4][0].data);{[2,4,5,6,11,12,13,15,16,17,18,19,20,21,22].forEach(function(t){var s;if(!((s=m[t])==null?void 0:s[0]))return;var l=Jb(m[t][0].data);var c=hw({deps:[f],location:r[l].location,type:r[l].type},r);ew(a,l);Qb(a,c);i[l]=c;var h=vw(e,r,l);h.id=c;if(r[l].location==r[f].location)n.push(h);else{r[c].location=r[l].location.replace(l.toString(),c.toString());if(r[c].location==r[l].location)r[c].location=r[c].location.replace(/\.iwa/,"-".concat(c,".iwa"));er.utils.cfb_add(e,r[c].location,Vb(Wb([h])));var u=r[c].location;u=u.replace(/^Root Entry\//,"");u=u.replace(/^Index\//,"").replace(/\.iwa$/,"");pw(e,r,2,function(e){var r=Lb(e.messages[0].data);r[3].push({type:2,data:Mb([[],[{type:0,data:Ib(c)}],[{type:2,data:Cb(u.replace(/-.*$/,""))}],[{type:2,data:Cb(u)}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:Ib(0)}],[],[{type:0,data:Ib(0)}]])});r[1]=[{type:0,data:Ib(Math.max(c+1,Fb(r[1][0].data)))}];var t=r[3].findIndex(function(e){var r,t;var a=Lb(e.data);if((r=a[3])==null?void 0:r[0])return yb(a[3][0].data)==o;if(((t=a[2])==null?void 0:t[0])&&yb(a[2][0].data)==o)return true;return false});var a=Lb(r[3][t].data);if(!a[6])a[6]=[];a[6].push({type:2,data:Mb([[],[{type:0,data:Ib(c)}]])});r[3][t].data=Mb(a);e.messages[0].data=Mb(r)})}m[t][0].data=qb(c)});var g=Lb(m[1][0].data);{(l=g[2])==null?void 0:l.forEach(function(t){var s=Jb(t.data);var l=hw({deps:[f],location:r[s].location,type:r[s].type},r);ew(a,s);Qb(a,l);i[s]=l;var c=vw(e,r,s);c.id=l;if(r[s].location==r[f].location){n.push(c)}else{r[l].location=r[s].location.replace(s.toString(),l.toString());if(r[l].location==r[s].location)r[l].location=r[l].location.replace(/\.iwa/,"-".concat(l,".iwa"));er.utils.cfb_add(e,r[l].location,Vb(Wb([c])));var h=r[l].location;h=h.replace(/^Root Entry\//,"");h=h.replace(/^Index\//,"").replace(/\.iwa$/,"");pw(e,r,2,function(e){var r=Lb(e.messages[0].data);r[3].push({type:2,data:Mb([[],[{type:0,data:Ib(l)}],[{type:2,data:Cb(h.replace(/-.*$/,""))}],[{type:2,data:Cb(h)}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:Ib(0)}],[],[{type:0,data:Ib(0)}]])});r[1]=[{type:0,data:Ib(Math.max(l+1,Fb(r[1][0].data)))}];var t=r[3].findIndex(function(e){var r,t;var a=Lb(e.data);if((r=a[3])==null?void 0:r[0])return yb(a[3][0].data)==o;if(((t=a[2])==null?void 0:t[0])&&yb(a[2][0].data)==o)return true;return false});var a=Lb(r[3][t].data);if(!a[6])a[6]=[];a[6].push({type:2,data:Mb([[],[{type:0,data:Ib(l)}]])});r[3][t].data=Mb(a);e.messages[0].data=Mb(r)})}t.data=qb(l)})}m[1][0].data=Mb(g);var b=Lb(m[3][0].data);{b[1].forEach(function(t){var n=Lb(t.data);var s=Jb(n[2][0].data);var l=i[s];if(!i[s]){l=hw({deps:[f],location:"",type:r[s].type},r);r[l].location="Root Entry/Index/Tables/Tile-".concat(l,".iwa");i[s]=l;var c=vw(e,r,s);c.id=l;ew(a,s);Qb(a,l);er.utils.cfb_add(e,"/Index/Tables/Tile-".concat(l,".iwa"),Vb(Wb([c])));pw(e,r,2,function(e){var r=Lb(e.messages[0].data);r[3].push({type:2,data:Mb([[],[{type:0,data:Ib(l)}],[{type:2,data:Cb("Tables/Tile")}],[{type:2,data:Cb("Tables/Tile-".concat(l))}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:Ib(0)}],[],[{type:0,data:Ib(0)}]])});r[1]=[{type:0,data:Ib(Math.max(l+1,Fb(r[1][0].data)))}];var t=r[3].findIndex(function(e){var r,t;var a=Lb(e.data);if((r=a[3])==null?void 0:r[0])return yb(a[3][0].data)==o;if(((t=a[2])==null?void 0:t[0])&&yb(a[2][0].data)==o)return true;return false});var a=Lb(r[3][t].data);if(!a[6])a[6]=[];a[6].push({type:2,data:Mb([[],[{type:0,data:Ib(l)}]])});r[3][t].data=Mb(a);e.messages[0].data=Mb(r)})}n[2][0].data=qb(l);t.data=Mb(n)})}m[3][0].data=Mb(b)}c[4][0].data=Mb(m);a.messages[0].data=Mb(c)})}function gw(e,r,t,a,n,i){var s=[];pw(e,r,i,function(e){var r=Lb(e.messages[0].data);{r[1]=[{type:2,data:Cb(a)}];s=Ub(r[2],Jb)}e.messages[0].data=Mb(r)});var f=vw(e,r,s[0]);var o=Jb(Lb(f.messages[0].data)[2][0].data);pw(e,r,o,function(a,n){return ww(e,r,t,a,n,o)})}var bw=true;function ww(e,r,t,a,n,i){var s=Ua(t["!ref"]);s.s.r=s.s.c=0;var f=false;if(s.e.c>999){f=true;s.e.c=999}if(s.e.r>999999){f=true;s.e.r=999999}if(f)console.error("Truncating to ".concat(Ba(s)));var o=ak(t,{range:s,header:1});var l=["~Sh33tJ5~"];var c=r[i].location;c=c.replace(/^Root Entry\//,"");c=c.replace(/^Index\//,"").replace(/\.iwa$/,"");var h=Lb(a.messages[0].data);{h[6][0].data=Ib(s.e.r+1);h[7][0].data=Ib(s.e.c+1);delete h[46];var u=Lb(h[4][0].data);{var d=Jb(Lb(u[1][0].data)[2][0].data);pw(e,r,d,function(e,r){var t;var a=Lb(e.messages[0].data);if((t=a==null?void 0:a[2])==null?void 0:t[0])for(var n=0;n-1)return"sheet";if(ii.CS&&e==ii.CS)return"chart";if(ii.DS&&e==ii.DS)return"dialog";if(ii.MS&&e==ii.MS)return"macro";return e&&e.length?e:"sheet"}function yw(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,Ew(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function Cw(e,r,t,a,n,i,s,f,o,l,c,h){try{i[a]=fi(Mr(e,t,true),r);var u=Lr(e,r);var d;switch(f){case"sheet":d=Bm(u,r,n,o,i[a],l,c,h);break;case"chart":d=Wm(u,r,n,o,i[a],l,c,h);if(!d||!d["!drawel"])break;var p=Vr(d["!drawel"].Target,r);var v=si(p);var m=uh(Mr(e,p,true),fi(Mr(e,v,true),p));var g=Vr(m,p);var b=si(g);d=am(Mr(e,g,true),g,o,fi(Mr(e,b,true),g),l,d);break;case"macro":d=Hm(u,r,n,o,i[a],l,c,h);break;case"dialog":d=zm(u,r,n,o,i[a],l,c,h);break;default:throw new Error("Unrecognized sheet type "+f);}s[a]=d;var w=[],k=[];if(i&&i[a])sr(i[a]).forEach(function(t){var n="";if(i[a][t].Type==ii.CMNT){n=Vr(i[a][t].Target,r);w=$m(Lr(e,n,true),n,o);if(!w||!w.length)return;vh(d,w,false)}if(i[a][t].Type==ii.TCMNT){n=Vr(i[a][t].Target,r);k=k.concat(bh(Lr(e,n,true),o))}});if(k&&k.length)vh(d,k,true,o.people||[])}catch(T){if(o.WTF)throw T}}function Sw(e){return e.charAt(0)=="/"?e.slice(1):e}function _w(e,r){$e();r=r||{};Tw(r);if(Fr(e,"META-INF/manifest.xml"))return vb(e,r);if(Fr(e,"objectdata.xml"))return vb(e,r);if(Fr(e,"Index/Document.iwa")){if(typeof Uint8Array=="undefined")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof ow!="undefined"){if(e.FileIndex)return ow(e,r);var t=er.utils.cfb_new();Br(e).forEach(function(r){Wr(t,r,Ur(e,r))});return ow(t,r)}throw new Error("Unsupported NUMBERS file")}if(!Fr(e,"[Content_Types].xml")){if(Fr(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(Fr(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");var a=er.find(e,"Index.zip");if(a){r=Er(r);delete r.type;if(typeof a.content=="string")r.type="binary";if(typeof Bun!=="undefined"&&Buffer.isBuffer(a.content))return Bw(new Uint8Array(a.content),r);return Bw(a.content,r)}throw new Error("Unsupported ZIP file")}var n=Br(e);var i=ai(Mr(e,"[Content_Types].xml"));var s=false;var f,o;if(i.workbooks.length===0){o="xl/workbook.xml";if(Lr(e,o,true))i.workbooks.push(o)}if(i.workbooks.length===0){o="xl/workbook.bin";if(!Lr(e,o,true))throw new Error("Could not find workbook");i.workbooks.push(o);s=true}if(i.workbooks[0].slice(-3)=="bin")s=true;var l={};var c={};if(!r.bookSheets&&!r.bookProps){Zd=[];if(i.sst)try{Zd=Gm(Lr(e,Sw(i.sst)),i.sst,r)}catch(h){if(r.WTF)throw h}if(r.cellStyles&&i.themes.length)l=Wc(Mr(e,i.themes[0].replace(/^\//,""),true)||"",r);if(i.style)c=Vm(Lr(e,Sw(i.style)),i.style,l,r)}i.links.map(function(t){try{var a=fi(Mr(e,si(Sw(t))),t);return Xm(Lr(e,Sw(t)),a,t,r)}catch(n){}});var u=Um(Lr(e,Sw(i.workbooks[0])),i.workbooks[0],r);var d={},p="";if(i.coreprops.length){p=Lr(e,Sw(i.coreprops[0]),true);if(p)d=wi(p);if(i.extprops.length!==0){p=Lr(e,Sw(i.extprops[0]),true);if(p)Ci(p,d,r)}}var v={};if(!r.bookSheets||r.bookProps){if(i.custprops.length!==0){p=Mr(e,Sw(i.custprops[0]),true);if(p)v=xi(p,r)}}var m={};if(r.bookSheets||r.bookProps){if(u.Sheets)f=u.Sheets.map(function N(e){return e.name});else if(d.Worksheets&&d.SheetNames.length>0)f=d.SheetNames;if(r.bookProps){m.Props=d;m.Custprops=v}if(r.bookSheets&&typeof f!=="undefined")m.SheetNames=f;if(r.bookSheets?m.SheetNames:r.bookProps)return m}f={};var g={};if(r.bookDeps&&i.calcchain)g=jm(Lr(e,Sw(i.calcchain)),i.calcchain,r);var b=0;var w={};var k,T;{var A=u.Sheets;d.Worksheets=A.length;d.SheetNames=[];for(var E=0;E!=A.length;++E){d.SheetNames[E]=A[E].name}}var y=s?"bin":"xml";var C=i.workbooks[0].lastIndexOf("/");var S=(i.workbooks[0].slice(0,C+1)+"_rels/"+i.workbooks[0].slice(C+1)+".rels").replace(/^\//,"");if(!Fr(e,S))S="xl/_rels/workbook."+y+".rels";var _=fi(Mr(e,S,true),S.replace(/_rels.*/,"s5s"));if((i.metadata||[]).length>=1){r.xlmeta=Ym(Lr(e,Sw(i.metadata[0])),i.metadata[0],r)}if((i.people||[]).length>=1){r.people=kh(Lr(e,Sw(i.people[0])),r)}if(_)_=yw(_,u.Sheets);var x=Lr(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(b=0;b!=d.Worksheets;++b){var O="sheet";if(_&&_[b]){k="xl/"+_[b][1].replace(/[\/]?xl\//,"");if(!Fr(e,k))k=_[b][1];if(!Fr(e,k))k=S.replace(/_rels\/.*$/,"")+_[b][1];O=_[b][2]}else{k="xl/worksheets/sheet"+(b+1-x)+"."+y;k=k.replace(/sheet0\./,"sheet.")}T=k.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");if(r&&r.sheets!=null)switch(typeof r.sheets){case"number":if(b!=r.sheets)continue e;break;case"string":if(d.SheetNames[b].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var R=false;for(var I=0;I!=r.sheets.length;++I){if(typeof r.sheets[I]=="number"&&r.sheets[I]==b)R=1;if(typeof r.sheets[I]=="string"&&r.sheets[I].toLowerCase()==d.SheetNames[b].toLowerCase())R=1}if(!R)continue e};}Cw(e,k,T,d.SheetNames[b],b,w,f,O,r,u,l,c)}m={Directory:i,Workbook:u,Props:d,Custprops:v,Deps:g,Sheets:f,SheetNames:d.SheetNames,Strings:Zd,Styles:c,Themes:l,SSF:Er(Z)};if(r&&r.bookFiles){if(e.files){m.keys=n;m.files=e.files}else{m.keys=[];m.files={};e.FullPaths.forEach(function(r,t){r=r.replace(/^Root Entry[\/]/,"");m.keys.push(r);m.files[r]=e.FileIndex[t]})}}if(r&&r.bookVBA){if(i.vba.length>0)m.vbaraw=Lr(e,Sw(i.vba[0]),true);else if(i.defaults&&i.defaults.bin===xh)m.vbaraw=Lr(e,"xl/vbaProject.bin",true)}m.bookType=s?"xlsb":"xlsx";return m}function xw(e,r){var t=r||{};var a="Workbook",n=er.find(e,a);try{a="/!DataSpaces/Version";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);tl(n.content);a="/!DataSpaces/DataSpaceMap";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=nl(n.content);if(i.length!==1||i[0].comps.length!==1||i[0].comps[0].t!==0||i[0].name!=="StrongEncryptionDataSpace"||i[0].comps[0].v!=="EncryptedPackage")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=il(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);fl(n.content)}catch(f){}a="/EncryptionInfo";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var o=cl(n.content);a="/EncryptedPackage";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);if(o[0]==4&&typeof decrypt_agile!=="undefined")return decrypt_agile(o[1],n.content,t.password||"",t);if(o[0]==2&&typeof decrypt_std76!=="undefined")return decrypt_std76(o[1],n.content,t.password||"",t);throw new Error("File is password-protected")}function Ow(e,r){if(e&&!e.SSF){e.SSF=Er(Z)}if(e&&e.SSF){$e();Ge(e.SSF);r.revssf=lr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(qd)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="bin";var a=true;var n=ti();Aw(r=r||{});var i=Hr();var s="",f=0;r.cellXfs=[];tp(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Wr(i,s,Ti(e.Props,r));n.coreprops.push(s);li(r.rels,2,s,ii.CORE_PROPS);s="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var o=[];for(var l=0;l0){s="docProps/custom.xml";Wr(i,s,Oi(e.Custprops,r));n.custprops.push(s);li(r.rels,4,s,ii.CUST_PROPS)}for(f=1;f<=e.SheetNames.length;++f){var c={"!id":{}};var h=e.Sheets[e.SheetNames[f-1]];var u=(h||{})["!type"]||"sheet";switch(u){case"chart":;default:s="xl/worksheets/sheet"+f+"."+t;Wr(i,s,rm(f-1,r,e,c));n.sheets.push(s);li(r.wbrels,-1,"worksheets/sheet"+f+"."+t,ii.WS[0]);}if(h){var d=h["!comments"];var p=false;var v="";if(d&&d.length>0){v="xl/comments"+f+"."+t;Wr(i,v,_h(d,r));n.comments.push(v);li(c,-1,"../comments"+f+"."+t,ii.CMNT);p=true}if(h["!legacy"]){if(p)Wr(i,"xl/drawings/vmlDrawing"+f+".vml",dh(f,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(c["!id"].rId1)Wr(i,si(s),oi(c))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Wr(i,s,Qo(r.Strings,r));n.strs.push(s);li(r.wbrels,-1,"sharedStrings."+t,ii.SST)}s="xl/workbook."+t;Wr(i,s,Mm(e,r));n.workbooks.push(s);li(r.rels,1,s,ii.WB);s="xl/theme/theme1.xml";var m=Hc(e.Themes,r);Wr(i,s,m);n.themes.push(s);li(r.wbrels,-1,"theme/theme1.xml",ii.THEME);s="xl/styles."+t;Wr(i,s,Rc(e,r));n.styles.push(s);li(r.wbrels,-1,"styles."+t,ii.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Wr(i,s,e.vbaraw);n.vba.push(s);li(r.wbrels,-1,"vbaProject.bin",ii.VBA)}s="xl/metadata."+t;Wr(i,s,nh());n.metadata.push(s);li(r.wbrels,-1,"metadata."+t,ii.XLMETA);Wr(i,"[Content_Types].xml",ni(n,r));Wr(i,"_rels/.rels",oi(r.rels));Wr(i,"xl/_rels/workbook."+t+".rels",oi(r.wbrels));delete r.revssf;delete r.ssf;return i}function Rw(e,r){if(e&&!e.SSF){e.SSF=Er(Z)}if(e&&e.SSF){$e();Ge(e.SSF);r.revssf=lr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(qd)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=Ih.indexOf(r.bookType)>-1;var n=ti();Aw(r=r||{});var i=Hr();var s="",f=0;r.cellXfs=[];tp(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Wr(i,s,Ti(e.Props,r));n.coreprops.push(s);li(r.rels,2,s,ii.CORE_PROPS);s="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var o=[];for(var l=0;l0){s="docProps/custom.xml";Wr(i,s,Oi(e.Custprops,r));n.custprops.push(s);li(r.rels,4,s,ii.CUST_PROPS)}var c=["SheetJ5"];r.tcid=0;for(f=1;f<=e.SheetNames.length;++f){var h={"!id":{}};var u=e.Sheets[e.SheetNames[f-1]];var d=(u||{})["!type"]||"sheet";switch(d){case"chart":;default:s="xl/worksheets/sheet"+f+"."+t;Wr(i,s,Mp(f-1,r,e,h));n.sheets.push(s);li(r.wbrels,-1,"worksheets/sheet"+f+"."+t,ii.WS[0]);}if(u){var p=u["!comments"];var v=false;var m="";if(p&&p.length>0){var g=false;p.forEach(function(e){e[1].forEach(function(e){if(e.T==true)g=true})});if(g){m="xl/threadedComments/threadedComment"+f+".xml";Wr(i,m,wh(p,c,r));n.threadedcomments.push(m);li(h,-1,"../threadedComments/threadedComment"+f+".xml",ii.TCMNT)}m="xl/comments"+f+"."+t;Wr(i,m,gh(p,r));n.comments.push(m);li(h,-1,"../comments"+f+"."+t,ii.CMNT);v=true}if(u["!legacy"]){if(v)Wr(i,"xl/drawings/vmlDrawing"+f+".vml",dh(f,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(h["!id"].rId1)Wr(i,si(s),oi(h))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Wr(i,s,Yo(r.Strings,r));n.strs.push(s);li(r.wbrels,-1,"sharedStrings."+t,ii.SST)}s="xl/workbook."+t;Wr(i,s,Tm(e,r));n.workbooks.push(s);li(r.rels,1,s,ii.WB);s="xl/theme/theme1.xml";Wr(i,s,Hc(e.Themes,r));n.themes.push(s);li(r.wbrels,-1,"theme/theme1.xml",ii.THEME);s="xl/styles."+t;Wr(i,s,ac(e,r));n.styles.push(s);li(r.wbrels,-1,"styles."+t,ii.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Wr(i,s,e.vbaraw);n.vba.push(s);li(r.wbrels,-1,"vbaProject.bin",ii.VBA)}s="xl/metadata."+t;Wr(i,s,sh());n.metadata.push(s);li(r.wbrels,-1,"metadata."+t,ii.XLMETA);if(c.length>1){s="xl/persons/person.xml";Wr(i,s,Th(c,r));n.people.push(s);li(r.wbrels,-1,"persons/person.xml",ii.PEOPLE)}Wr(i,"[Content_Types].xml",ni(n,r));Wr(i,"_rels/.rels",oi(r.rels));Wr(i,"xl/_rels/workbook."+t+".rels",oi(r.wbrels));delete r.revssf;delete r.ssf;return i}function Iw(e,r){var t="";switch((r||{}).type||"base64"){case"buffer":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];case"base64":t=A(e.slice(0,12));break;case"binary":t=e;break;case"array":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];default:throw new Error("Unrecognized type "+(r&&r.type||"undefined"));}return[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3),t.charCodeAt(4),t.charCodeAt(5),t.charCodeAt(6),t.charCodeAt(7)]}function Nw(e,r){if(er.find(e,"EncryptedPackage"))return xw(e,r);return Ig(e,r)}function Dw(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=E&&Buffer.isBuffer(e)?"buffer":"base64";t=zr(a,n);return _w(t,n)}function Fw(e,r){var t=0;e:while(t=2&&i[3]===0)return Po.to_workbook(n,t);if(i[2]===0&&(i[3]===8||i[3]===9))return Po.to_workbook(n,t); +}break;case 3:;case 131:;case 139:;case 140:return Oo.to_workbook(n,t);case 123:if(i[1]===92&&i[2]===114&&i[3]===116)return Cl(n,t);break;case 10:;case 13:;case 32:return Pw(n,t);case 137:if(i[1]===80&&i[2]===78&&i[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;case 8:if(i[1]===231)throw new Error("Unsupported Multiplan 1.x file!");break;case 12:if(i[1]===236)throw new Error("Unsupported Multiplan 2.x file!");if(i[1]===237)throw new Error("Unsupported Multiplan 3.x file!");break;}if(xo.indexOf(i[0])>-1&&i[2]<=12&&i[3]<=31)return Oo.to_workbook(n,t);return Uw(e,n,t,s)}function Ww(e,r){var t=r||{};t.type="file";return Bw(e,t)}function Hw(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return nr(r.file,er.write(e,{type:E?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return er.write(e,r)}function zw(e,r){switch(r.bookType){case"ods":return Tb(e,r);case"numbers":return dw(e,r);case"xlsb":return Ow(e,r);default:return Rw(e,r);}}function Vw(e,r){var t=Er(r||{});var a=zw(e,t);return $w(a,t)}function Gw(e,r){var t=Er(r||{});var a=Rw(e,t);return $w(a,t)}function $w(e,r){var t={};var a=E?"nodebuffer":typeof Uint8Array!=="undefined"?"array":"string";if(r.compression)t.compression="DEFLATE";if(r.password)t.type=a;else switch(r.type){case"base64":t.type="base64";break;case"binary":t.type="string";break;case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");case"buffer":;case"file":t.type=a;break;default:throw new Error("Unrecognized type "+r.type);}var n=e.FullPaths?er.write(e,{fileType:"zip",type:{nodebuffer:"buffer",string:"binary"}[t.type]||t.type,compression:!!r.compression}):e.generate(t);if(typeof Deno!=="undefined"){if(typeof n=="string"){if(r.type=="binary"||r.type=="base64")return n;n=new Uint8Array(O(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return Hw(encrypt_agile(n,r.password),r);if(r.type==="file")return nr(r.file,n);return r.type=="string"?mt(n):n}function jw(e,r){var t=r||{};var a=Ng(e,t);return Hw(a,t)}function Xw(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return k(gt(a));case"binary":return gt(a);case"string":return e;case"file":return nr(r.file,a,"utf8");case"buffer":{if(E)return y(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return Xw(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Yw(e,r){switch(r.type){case"base64":return T(e);case"binary":return e;case"string":return e;case"file":return nr(r.file,e,"binary");case"buffer":{if(E)return y(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Kw(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var h=xa(o.s.r);var u=[];var d=[];var p=0,v=0;var m=e["!data"]!=null;var g=o.s.r,b=0;var w={};if(m&&!e["!data"][g])e["!data"][g]=[];var k=l.skipHidden&&e["!cols"]||[];var T=l.skipHidden&&e["!rows"]||[];for(b=o.s.c;b<=o.e.c;++b){if((k[b]||{}).hidden)continue;u[b]=Na(b);t=m?e["!data"][g][b]:e[u[b]+h];switch(a){case 1:i[b]=b-o.s.c;break;case 2:i[b]=u[b];break;case 3:i[b]=l.header[b-o.s.c];break;default:if(t==null)t={w:"__EMPTY",t:"s"};f=s=Ga(t,null,l);v=w[s]||0;if(!v)w[s]=1;else{do{f=s+"_"+v++}while(w[f]);w[s]=v;w[f]=1}i[b]=f;}}for(g=o.s.r+n;g<=o.e.r;++g){if((T[g]||{}).hidden)continue;var A=tk(e,o,g,u,a,i,l);if(A.isempty===false||(a===1?l.blankrows!==false:!!l.blankrows))d[p++]=A.row}d.length=p;return d}var nk=/"/g;function ik(e,r,t,a,n,i,s,f){var o=true;var l=[],c="",h=xa(t);var u=e["!data"]!=null;var d=u&&e["!data"][t]||[];for(var p=r.s.c;p<=r.e.c;++p){if(!a[p])continue;var v=u?d[p]:e[a[p]+h];if(v==null)c="";else if(v.v!=null){o=false;c=""+(f.rawNumbers&&v.t=="n"?v.v:Ga(v,null,f));for(var m=0,g=0;m!==c.length;++m)if((g=c.charCodeAt(m))===n||g===i||g===34||f.forceQuotes){c='"'+c.replace(nk,'""')+'"';break}if(c=="ID")c='"ID"'}else if(v.f!=null&&!v.F){o=false;c="="+v.f;if(c.indexOf(",")>=0)c='"'+c.replace(nk,'""')+'"'}else c="";l.push(c)}if(f.blankrows===false&&o)return null;return l.join(s)}function sk(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=za(e["!ref"]);var i=a.FS!==undefined?a.FS:",",s=i.charCodeAt(0);var f=a.RS!==undefined?a.RS:"\n",o=f.charCodeAt(0);var l=new RegExp((i=="|"?"\\|":i)+"+$");var c="",h=[];var u=a.skipHidden&&e["!cols"]||[];var d=a.skipHidden&&e["!rows"]||[];for(var p=n.s.c;p<=n.e.c;++p)if(!(u[p]||{}).hidden)h[p]=Na(p);var v=0;for(var m=n.s.r;m<=n.e.r;++m){if((d[m]||{}).hidden)continue;c=ik(e,n,m,h,s,o,i,a);if(c==null){continue}if(a.strip)c=c.replace(l,"");if(c||a.blankrows!==false)t.push((v++?f:"")+c)}return t.join("")}function fk(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=sk(e,r);if(typeof a=="undefined"||r.type=="string")return t;var n=a.utils.encode(1200,t,"str");return String.fromCharCode(255)+String.fromCharCode(254)+n}function ok(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=za(e["!ref"]),i="",s=[],f;var o=[];var l=e["!data"]!=null;for(f=n.s.c;f<=n.e.c;++f)s[f]=Na(f);for(var c=n.s.r;c<=n.e.r;++c){i=xa(c);for(f=n.s.c;f<=n.e.c;++f){r=s[f]+i;t=l?(e["!data"][c]||[])[f]:e[r];a="";if(t===undefined)continue;else if(t.F!=null){r=t.F;if(!t.f)continue;a=t.f;if(r.indexOf(":")==-1)r=r+":"+r}if(t.f!=null)a=t.f;else if(t.t=="z")continue;else if(t.t=="n"&&t.v!=null)a=""+t.v;else if(t.t=="b")a=t.v?"TRUE":"FALSE";else if(t.w!==undefined)a="'"+t.w;else if(t.v===undefined)continue;else if(t.t=="s")a="'"+t.v;else a=""+t.v;o[o.length]=r+"="+a}}return o}function lk(e,r,t){var a=t||{};var n=e?e["!data"]!=null:a.dense;if(g!=null&&n==null)n=g;var i=+!a.skipHeader;var s=e||{};if(!e&&n)s["!data"]=[];var f=0,o=0;if(s&&a.origin!=null){if(typeof a.origin=="number")f=a.origin;else{var l=typeof a.origin=="string"?La(a.origin):a.origin;f=l.r;o=l.c}}var c={s:{c:0,r:0},e:{c:o,r:f+r.length-1+i}};if(s["!ref"]){var h=za(s["!ref"]);c.e.c=Math.max(c.e.c,h.e.c);c.e.r=Math.max(c.e.r,h.e.r);if(f==-1){f=h.e.r+1;c.e.r=f+r.length-1+i}}else{if(f==-1){f=0;c.e.r=r.length-1+i}}var u=a.header||[],d=0;var p=[];r.forEach(function(e,r){if(n&&!s["!data"][f+r+i])s["!data"][f+r+i]=[];if(n)p=s["!data"][f+r+i];sr(e).forEach(function(t){if((d=u.indexOf(t))==-1)u[d=u.length]=t;var l=e[t];var c="z";var h="";var v=n?"":Na(o+d)+xa(f+r+i);var m=n?p[o+d]:s[v];if(l&&typeof l==="object"&&!(l instanceof Date)){if(n)p[o+d]=l;else s[v]=l}else{if(typeof l=="number")c="n";else if(typeof l=="boolean")c="b";else if(typeof l=="string")c="s";else if(l instanceof Date){c="d";if(!a.cellDates){c="n";l=ur(l)}h=m!=null&&m.z&&Me(m.z)?m.z:a.dateNF||Z[14]}else if(l===null&&a.nullError){c="e";l=0}if(!m){if(!n)s[v]=m={t:c,v:l};else p[o+d]=m={t:c,v:l}}else{m.t=c;m.v=l;delete m.w;delete m.R;if(h)m.z=h}if(h)m.z=h}})});c.e.c=Math.max(c.e.c,o+u.length-1);var v=xa(f);if(n&&!s["!data"][f])s["!data"][f]=[];if(i)for(d=0;d=0&&e.SheetNames.length>r)return r;throw new Error("Cannot find sheet # "+r)}else if(typeof r=="string"){var t=e.SheetNames.indexOf(r);if(t>-1)return t;throw new Error("Cannot find sheet name |"+r+"|")}else throw new Error("Cannot find sheet |"+r+"|")}function dk(){return{SheetNames:[],Sheets:{}}}function pk(e,r,t,a){var n=1;if(!t)for(;n<=65535;++n,t=undefined)if(e.SheetNames.indexOf(t="Sheet"+n)==-1)break;if(!t||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(t)>=0){var i=t.match(/(^.*?)(\d+)$/);n=i&&+i[2]||0;var s=i&&i[1]||t;for(++n;n<=65535;++n)if(e.SheetNames.indexOf(t=s+n)==-1)break}mm(t);if(e.SheetNames.indexOf(t)>=0)throw new Error("Worksheet with name |"+t+"| already exists!");e.SheetNames.push(t);e.Sheets[t]=r;return t}function vk(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=uk(e,r);if(!e.Workbook.Sheets[a])e.Workbook.Sheets[a]={};switch(t){case 0:;case 1:;case 2:break;default:throw new Error("Bad sheet visibility setting "+t);}e.Workbook.Sheets[a].Hidden=t}function mk(e,r){e.z=r;return e}function gk(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function bk(e,r,t){return gk(e,"#"+r,t)}function wk(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function kk(e,r,t,a){var n=typeof r!="string"?r:za(r);var i=typeof r=="string"?r:Ba(r);for(var s=n.s.r;s<=n.e.r;++s)for(var f=n.s.c;f<=n.e.c;++f){var o=hk(e,s,f);o.t="n";o.F=i;delete o.v;if(s==n.s.r&&f==n.s.c){o.f=t;if(a)o.D=true}}var l=Ua(e["!ref"]);if(l.s.r>n.s.r)l.s.r=n.s.r;if(l.s.c>n.s.c)l.s.c=n.s.c;if(l.e.rs.e.r){if(!o){o=true;t.push(""+i)}return t.push(null)}while(f<=s.e.r){t.push(rb(e,s,f,a));++f;break}};return t}function Sk(e,r){var t=Ak({objectMode:true});if(e==null||e["!ref"]==null){t.push(null);return t}var a={t:"n",v:0},n=0,i=1,s=[],f=0,o="";var l={s:{r:0,c:0},e:{r:0,c:0}};var c=r||{};var h=c.range!=null?c.range:e["!ref"];if(c.header===1)n=1;else if(c.header==="A")n=2;else if(Array.isArray(c.header))n=3;switch(typeof h){case"string":l=za(h);break;case"number":l=za(e["!ref"]);l.s.r=h;break;default:l=h;}if(n>0)i=0;var u=xa(l.s.r);var d=[];var p=0;var v=e["!data"]!=null;var m=l.s.r,g=0;var b={};if(v&&!e["!data"][m])e["!data"][m]=[];var w=c.skipHidden&&e["!cols"]||[];var k=c.skipHidden&&e["!rows"]||[];for(g=l.s.c;g<=l.e.c;++g){if((w[g]||{}).hidden)continue;d[g]=Na(g);a=v?e["!data"][m][g]:e[d[g]+u];switch(n){case 1:s[g]=g-l.s.c;break;case 2:s[g]=d[g];break;case 3:s[g]=c.header[g-l.s.c];break;default:if(a==null)a={w:"__EMPTY",t:"s"};o=f=Ga(a,null,c);p=b[f]||0;if(!p)b[f]=1;else{do{o=f+"_"+p++}while(b[o]);b[f]=p;b[o]=1}s[g]=o;}}m=l.s.r+i;t._read=function(){while(m<=l.e.r){if((k[m-1]||{}).hidden)continue;var r=tk(e,l,m,d,n,s,c);++m;if(r.isempty===false||(n===1?c.blankrows!==false:!!c.blankrows)){t.push(r.row);return}}return t.push(null)};return t}var _k={to_json:Sk,to_html:Ck,to_csv:yk,set_readable:Ek};if(typeof Ig!=="undefined")e.parse_xlscfb=Ig;e.parse_zip=_w;e.read=Bw;e.readFile=Ww;e.readFileSync=Ww;e.write=Jw;e.writeFile=Qw;e.writeFileSync=Qw;e.writeFileAsync=rk;e.utils=Tk;e.writeXLSX=Zw;e.writeFileXLSX=ek;e.SSF=je;if(typeof _k!=="undefined")e.stream=_k;if(typeof er!=="undefined")e.CFB=er;if(typeof require!=="undefined"){var xk=undefined;if((xk||{}).Readable)Ek(xk.Readable);try{rr=undefined}catch(Ok){}}}if(typeof exports!=="undefined")make_xlsx_lib(exports);else if(typeof module!=="undefined"&&module.exports)make_xlsx_lib(module.exports);else if(typeof define==="function"&&define.amd)define("xlsx",function(){if(!XLSX.version)make_xlsx_lib(XLSX);return XLSX});else make_xlsx_lib(XLSX);if(typeof window!=="undefined"&&!window.XLSX)try{window.XLSX=XLSX}catch(e){} diff --git a/dist/xlsx.full.min.map b/dist/xlsx.full.min.map index 1e10725..5c1abf3 100644 --- a/dist/xlsx.full.min.map +++ b/dist/xlsx.full.min.map @@ -1 +1 @@ -{"version":3,"sources":["misc/suppress_export.js","dist/cpexcel.js","dist/xlsx.js"],"names":["DO_NOT_EXPORT_CODEPAGE","cptable","version","d","D","e","i","length","charCodeAt","charAt","enc","dec","j","split","module","exports","root","factory","require","cpt","Error","this","magic","1200","1201","12000","12001","16969","20127","65000","65001","sbcs_cache","dbcs_cache","magic_cache","magic_decode","magic_encode","cpdcache","cpecache","sfcc","x","String","fromCharCode","cca","has_buf","Buffer","Buffer_from","nbfs","from","buf","bind","allocUnsafe","n","mdl","mdb","make_EE","E","EE","keys","Object","len","ee","sbcs_encode","make_sbcs_encode","cp","sbcs_e","data","ofmt","out","w","isBuffer","slice","toString","call","sbcs_decode","make_sbcs_decode","DD","c","sbcs_d","dbcs_encode","make_dbcs_encode","f","dbcs_e","jj","k","dbcs_decode","make_dbcs_decode","dbcs_d","utf8_d","map","ww","utf8_e","direct","encache","s","null_enc","cp_decache","decache","forEach","last_enc","last_cp","cache","sbcs","dbcs","BM","SetD","encode","C","M","isstr","indexOf","tt","join","decode","F","Array","match","dash","o64","c1","c2","c3","e1","e2","e3","e4","l","push","hascp","utils","XLSX","make_xlsx_lib","current_codepage","current_ansi","$cptable","VALID_ANSI","CS2CP","0","1","2","77","128","129","130","134","136","161","162","163","177","178","186","204","222","238","255","69","set_ansi","reset_ansi","set_cp","reset_cp","char_codes","o","utf16leread","utf16beread","debom","_getchar","_gc1","_getansi","_ga1","set_cptable","_gc2","_ga2","cpdoit","DENSE","DIF_XL","Base64_map","Base64_encode","input","isNaN","Base64_encode_pass","Base64_decode","replace","undefined","node","buf_utf16le","new_raw_buf","alloc","Uint8Array","new_unsafe_buf","s2a","s2ab","ArrayBuffer","view","a2s","isArray","a2u","ab2a","bconcat","bufs","concat","maxlen","set","apply","utf8decode","content","widx","L","ridx","chr0","chr1","_strrev","pad0","v","t","fill","pad_","rpad_","pad0r1","Math","round","pad0r2","p2_32","pow","pad0r","SSF_isgeneral","days","months","SSF_init_table","table_fmt","3","4","9","10","11","12","13","14","15","16","17","18","19","20","21","22","37","38","39","40","45","46","47","48","49","56","SSF_default_map","5","6","7","8","23","24","25","26","27","28","29","30","31","50","51","52","53","54","55","57","58","59","60","61","62","67","68","70","71","72","73","74","75","76","78","79","80","81","82","SSF_default_str","63","64","65","66","41","42","43","44","SSF_frac","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","floor","q","SSF_parse_date_code","opts","b2","date","time","dow","dout","T","u","y","m","H","S","abs","date1904","Date","setDate","getDate","getFullYear","getMonth","getDay","SSF_fix_hijri","SSFbasedate","SSFdnthresh","getTime","SSFbase1904","datenum_local","epoch","getTimezoneOffset","SSF_strip_decimal","SSF_normalize_exp","SSF_small_exp","toFixed","toPrecision","toExponential","SSF_large_exp","SSF_general_num","V","log","LOG10E","substr","toUpperCase","SSF_general","SSF_format","SSF_write_date","type","fmt","val","ss0","ss","outl","outstr","commaify","pct1","write_num_pct","sfmt","mul","write_num","write_num_cm","idx","write_num_exp","period","fakee","$$","$1","$2","$3","frac1","write_num_f1","r","aval","sign","den","parseInt","rr","base","myn","myd","write_num_f2","dec1","closeparen","phone","hashq","str","cc","rnd","dd","_frac","carry","flr","write_num_flt","ffmt","ri","ff","oa","min","max","lres","rres","write_num_cm2","write_num_pct2","write_num_exp2","write_num_int","lastIndexOf","SSF_split_fmt","in_str","SSF_abstime","fmt_is_date","eval_fmt","flen","lst","dt","hr","toLowerCase","bt","ssm","nstr","vv","myv","ostr","decpt","lasti","retval","cfregex2","chkcond","thresh","parseFloat","choose_fmt","lat","m1","m2","dateNF","table","SSF_load","SSF_load_table","tbl","make_ssf","SSF","format","load","_table","load_table","parse_date_code","is_date","get_table","SSFImplicit","32","33","34","35","36","dateNFregex","dateNF_regex","RegExp","dateNF_fix","Y","datestr","timestr","bad_formats","d.m","SSF__load","CRC32","signed_crc_table","Int32Array","T0","slice_by_16_tables","subarray","TT","T1","T2","T3","T4","T5","T6","T7","T8","T9","Ta","Tb","Tc","Td","Te","Tf","crc32_bstr","bstr","seed","crc32_buf","crc32_str","CFB","_CFB","namecmp","R","Z","dirname","p","filename","write_dos_date","hms","getHours","getMinutes","getSeconds","write_shift","ymd","parse_dos_date","read_shift","setMilliseconds","setFullYear","setMonth","setHours","setMinutes","setSeconds","parse_extra_field","blob","prep_blob","flags","sz","tgt","mtime","atime","ctime","mt","sz1","sz2","usz","csz","fs","get_fs","_fs","parse","file","options","parse_zip","parse_mad","mver","ssz","nmfs","difat_sec_cnt","dir_start","minifat_start","difat_start","fat_addrs","mv","check_get_mver","header","check_shifts","dir_cnt","chk","sectors","sectorify","sleuth_fat","sector_list","make_sector_list","name","ENDOFCHAIN","files","Paths","FileIndex","FullPaths","read_directory","build_full_paths","shift","raw","HEADER_SIGNATURE","nsectors","ceil","FI","FP","pl","dad","get_mfat_entry","entry","payload","mini","start","size","MSSZ","__readInt32LE","new_buf","cnt","sector","get_sector_list","chkd","buf_chain","modulus","addr","nodes","__toBuffer","sl","seen","minifat_store","namelen","__utf16le","color","clsid","state","ct","read_date","storage","offset","__readUInt32LE","read_file","readFileSync","read","init_cfb","cfb","CLSID","seed_cfb","nm","find","rebuild_cfb","gc","_file","pop","now","fullPaths","create","HEADER_CLSID","sort","elt","_write","_opts","fileType","write_mad","write_zip","mini_size","fat_size","mini_cnt","mfat_cnt","fat_base","fat_cnt","difat_cnt","HEADER_SIG","chainit","consts","DIFSECT","FATSECT","_nm","console","error","copy","path","UCFullPaths","UCPaths","UCPath","MAXREGSECT","FREESECT","HEADER_MINOR_VERSION","MAXREGSID","NOSTREAM","EntryTypes","write_file","writeFileSync","write","_zlib","use_zlib","zlib","InflateRaw","InflRaw","_processChunk","_finishFlushFlag","bytesRead","message","_inflateRawSync","_inflate","_deflateRawSync","deflateRawSync","_deflate","CLEN_ORDER","LEN_LN","DST_LN","bit_swap_8","use_typed_arrays","bitswap8","bit_swap_n","b","rev","read_bits_2","bl","h","read_bits_3","read_bits_4","read_bits_5","read_bits_7","read_bits_n","write_bits_3","write_bits_1","write_bits_8","write_bits_16","realloc","a","zero_fill_array","build_tree","clens","cmap","MAX","ccode","bl_count","Uint16Array","ctree","cleni","fix_lmap","fix_dmap","dlens","_deflateRaw","_deflateRawIIFE","DST_LN_RE","LEN_LN_RE","write_stored","boff","write_huff_fixed","addrs","hash","mlen","len_eb","dst_eb","off","dyn_lmap","dyn_dmap","dyn_cmap","dyn_len_1","dyn_len_2","dyn","_HLIT","_HDIST","_HCLEN","next_code","hcodes","h1","h2","inflate","outbuf","woff","OL","max_len_1","max_len_2","bits","code","dst","warn_or_throw","wrn","msg","fcnt","start_cd","efsz","fcsz","EF","parse_local_file","meth","crc32","_csz","_usz","ef","cfb_add","unsafe","cdirs","method","compression","desc","fp","fi","crcs","sz_cd","namebuf","ContentTypeMap","htm","xml","gif","jpg","png","mso","thmx","sh33tj5","get_content_type","ctype","ext","write_base64_76","write_quoted_printable","text","encoded","si","end","tmp","parse_quoted_printable","di","line","oi","parse_mime","fname","cte","fdata","trim","row","test","mboundary","boundary","start_di","ca","cstr","dispcnt","csl","qp","cfb_new","fpath","cfb_gc","cfb_del","splice","cfb_mov","old_name","new_name","writeFile","ReadShift","CheckField","_inflateRaw","set_fs","blobify","write_dl","Deno","TextEncoder","utf8write","IE_SaveFile","Blob","navigator","msSaveBlob","saveAs","URL","document","createElement","createObjectURL","url","chrome","downloads","download","revokeObjectURL","setTimeout","href","body","appendChild","click","removeChild","$","File","Folder","open","encoding","close","read_binary","infile","ks","o2","prototype","hasOwnProperty","evert_key","obj","key","K","evert","evert_num","evert_arr","basedate","datenum","dnthresh","refdate","refoffset","numdate","setTime","parse_isodur","sec","good_pd_date_1","good_pd_date","good_pd","parseDate","fixdate","cc2str","arr","debomit","TextDecoder","€","‚","ƒ","„","…","†","‡","ˆ","‰","Š","‹","Œ","Ž","‘","’","“","”","•","–","—","˜","™","š","›","œ","ž","Ÿ","dup","JSON","stringify","fuzzynum","Number","isFinite","NaN","wt","FDRE1","fuzzytime1","lower_months","fuzzydate","lower","lnos","getYear","split_regex","safe_split_regex","re","def","getdatastr","asNodeBuffer","asBinary","_data","getContent","getdatabin","getdata","safegetzipfile","zip","g","getzipfile","getzipdata","safe","getzipstr","getzipbin","zipentries","zip_add_file","res","zip_new","zip_read","resolve_path","result","target","step","XML_HEADER","attregexg","tagregex1","tagregex2","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","skip_LC","z","eq","quot","strip_ns","encodings",""","'",">","<","&","rencoding","unescapexml","encregex","coderegex","raw_unescapexml","xlsx","decregex","charegex","escapexml","escapexmltag","htmlcharegex","escapehtml","escapexlml","xlml_fixstr","entregex","entrepl","xlml_unfixstr","parsexmlbool","value","utf8reada","orig","utf8readb","utf8readc","utf8corpus","utf8read","matchtag","mtcache","htmldecode","entities","vtregex","vt_cache","vt_regex","vtvregex","vtmregex","parseVector","matches","baseType","WTF","wtregex","writetag","wxt_helper","writextag","write_w3cdtf","toISOString","write_vt","xlml_normalize","xlmlregex","XMLNS","CORE_PROPS","CUST_PROPS","EXT_PROPS","CT","RELS","TCMNT","dc","dcterms","dcmitype","mx","sjs","vt","xsi","xsd","XMLNS_main","XLMLNS","html","read_double_le","Infinity","write_double_le","bs","av","LN2","___toBuffer","___utf16le","__readUInt16LE","___hexlify","__hexlify","___utf8","__readUInt8","__utf8","utf8_b","___lpstr","__lpstr","___cpstr","__cpstr","___lpwstr","__lpwstr","___lpp4","lpp4_","__lpp4","___8lpp4","__8lpp4","___double","__double","is_buf","is_buf_a","lpstr_b","readUInt32LE","cpstr_b","lpwstr_b","lpp4_b","lpp4_8b","double_","readDoubleLE","is_buf_b","__readInt16LE","__readInt32BE","oI","oR","oo","loc","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cpp","hexstr","fld","pos","parsenoop","recordhopper","cb","tmpbyte","cntbyte","RT","XLSBRecordEnum","buf_array","blksz","newblk","ba_newblk","curbuf","endbuf","ba_endbuf","next","ba_next","ba_end","ba_push","_bufs","write_record","ba","shift_cell_xls","cell","cRel","rRel","biff","shift_range_xls","range","encode_cell_xls","encode_cell","fix_col","fix_row","encode_range_xls","encode_col","encode_row","decode_row","rowstr","unfix_row","decode_col","colstr","unfix_col","col","split_cell","decode_cell","decode_range","encode_range","cs","ce","fix_range","a1","formula_quote_sheet_name","sname","safe_decode_range","safe_format_cell","XF","numFmtId","format_cell","BErr","sheet_to_workbook","sheet","sheets","SheetNames","Sheets","sheet_add_aoa","_ws","dense","ws","_R","_C","origin","_origin","_range","__R","__C","nullError","sheetStubs","cellDates","cell_ref","aoa_to_sheet","parse_Int32LE","write_UInt32LE","parse_XLWideString","cchCharacters","write_XLWideString","_null","parse_StrRun","ich","ifnt","write_StrRun","run","parse_RichStr","rgsStrRun","dwSizeStrRun","write_RichStr","parse_BrtCommentText","write_BrtCommentText","parse_XLSBCell","iStyleRef","write_XLSBCell","parse_XLSBShortCell","write_XLSBShortCell","parse_XLSBCodeName","write_XLSBCodeName","parse_XLNullableWideString","write_XLNullableWideString","parse_XLNameWideString","parse_RelID","write_RelID","parse_RkNumber","fX100","fInt","RK","write_RkNumber","d100","parse_RfX","write_RfX","parse_UncheckedRfX","write_UncheckedRfX","parse_Xnum","write_Xnum","parse_BrtColor","xColorType","index","nTS","bR","bG","bB","auto","icv","XLSIcv","rgb","rgb2Hex","theme","tint","write_BrtColor","parse_FontFlags","fBold","fItalic","fUnderline","fStrikeout","fOutline","fShadow","fCondense","fExtend","write_FontFlags","font","grbit","italic","strike","outline","shadow","condense","extend","parse_ClipboardFormatOrString","ClipFmt","parse_ClipboardFormatOrAnsiString","parse_ClipboardFormatOrUnicodeString","VT_I2","VT_I4","VT_BOOL","VT_VARIANT","VT_UI4","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR_VARIANT","VT_VECTOR_LPSTR","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","2147483648","2147483651","1919054434","SummaryPIDSI","CountryEnum","84","86","90","105","213","216","218","351","354","358","420","886","961","962","963","964","965","966","971","972","974","981","65535","XLSFillPattern","rgbify","_XLSIcv","RBErr","#NULL!","#DIV/0!","#VALUE!","#REF!","#NAME?","#NUM!","#N/A","#GETTING_DATA","#WTF?","XLSLblBuiltIn","ct2type","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml","application/vnd.ms-excel.sheet.macroEnabled.main+xml","application/vnd.ms-excel.sheet.binary.macroEnabled.main","application/vnd.ms-excel.addin.macroEnabled.main+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml","application/vnd.ms-excel.worksheet","application/vnd.ms-excel.binIndexWs","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml","application/vnd.ms-excel.chartsheet","application/vnd.ms-excel.macrosheet+xml","application/vnd.ms-excel.macrosheet","application/vnd.ms-excel.intlmacrosheet","application/vnd.ms-excel.binIndexMs","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml","application/vnd.ms-excel.dialogsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml","application/vnd.ms-excel.sharedStrings","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml","application/vnd.ms-excel.styles","application/vnd.openxmlformats-package.core-properties+xml","application/vnd.openxmlformats-officedocument.custom-properties+xml","application/vnd.openxmlformats-officedocument.extended-properties+xml","application/vnd.openxmlformats-officedocument.customXmlProperties+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml","application/vnd.ms-excel.comments","application/vnd.ms-excel.threadedcomments+xml","application/vnd.ms-excel.person+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml","application/vnd.ms-excel.sheetMetadata","application/vnd.ms-excel.pivotTable","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml","application/vnd.openxmlformats-officedocument.drawingml.chart+xml","application/vnd.ms-office.chartcolorstyle+xml","application/vnd.ms-office.chartstyle+xml","application/vnd.ms-office.chartex+xml","application/vnd.ms-excel.calcChain","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings","application/vnd.ms-office.activeX","application/vnd.ms-office.activeX+xml","application/vnd.ms-excel.attachedToolbars","application/vnd.ms-excel.connections","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml","application/vnd.ms-excel.externalLink","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml","application/vnd.ms-excel.pivotCacheDefinition","application/vnd.ms-excel.pivotCacheRecords","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml","application/vnd.ms-excel.queryTable","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml","application/vnd.ms-excel.userNames","application/vnd.ms-excel.revisionHeaders","application/vnd.ms-excel.revisionLog","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml","application/vnd.ms-excel.tableSingleCells","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml","application/vnd.ms-excel.slicer","application/vnd.ms-excel.slicerCache","application/vnd.ms-excel.slicer+xml","application/vnd.ms-excel.slicerCache+xml","application/vnd.ms-excel.wsSortMap","application/vnd.ms-excel.table","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml","application/vnd.openxmlformats-officedocument.theme+xml","application/vnd.openxmlformats-officedocument.themeOverride+xml","application/vnd.ms-excel.Timeline+xml","application/vnd.ms-excel.TimelineCache+xml","application/vnd.ms-office.vbaProject","application/vnd.ms-office.vbaProjectSignature","application/vnd.ms-office.volatileDependencies","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml","application/vnd.ms-excel.controlproperties+xml","application/vnd.openxmlformats-officedocument.model+data","application/vnd.ms-excel.Survey+xml","application/vnd.openxmlformats-officedocument.drawing+xml","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml","application/vnd.openxmlformats-officedocument.vmlDrawing","application/vnd.openxmlformats-package.relationships+xml","application/vnd.openxmlformats-officedocument.oleObject","image/png","CT_LIST","workbooks","xlsm","xlsb","xlam","xltx","strs","comments","charts","dialogs","macros","metadata","styles","new_ct","rels","threadedcomments","links","coreprops","extprops","custprops","themes","calcchains","vba","drawings","people","TODO","xmlns","parse_ct","ctext","Extension","ContentType","PartName","calcchain","sst","style","defaults","write_ct","type2ct","xmlns:xsd","xmlns:xsi","f1","bookType","f2","f3","WB","SHEET","HLINK","VML","XPATH","XMISS","XLINK","CXML","CXMLP","CMNT","SST","STY","THEME","CHART","CHARTEX","CS","WS","DS","MS","IMG","DRAW","XLMETA","PEOPLE","CONN","VBA","get_rels_path","parse_rels","currentFilePath","!id","rel","Type","Target","Id","TargetMode","canonictarget","write_rels","rid","add_rels","rId","relobj","targetmode","CT_ODS","parse_manifest","Rn","FEtag","exec","write_manifest","manifest","write_rdf_type","write_rdf_has","write_rdf","rdf","write_meta_ods","CORE_PROPS_REGEX","parse_core_props","cur","cp_doit","write_core_props","xmlns:cp","xmlns:dc","xmlns:dcterms","xmlns:dcmitype","Props","CreatedDate","xsi:type","ModifiedDate","PseudoPropsPairs","load_props_pairs","HP","TOP","props","hp","parts","Worksheets","NamedRanges","DefinedNames","Chartsheets","ChartNames","parse_ext_props","HeadingPairs","TitlesOfParts","write_ext_props","W","Application","xmlns:vt","custregex","parse_cust_props","toks","warn","write_cust_props","pid","custprop","fmtid","XLMLDocPropsMap","Title","Subject","Author","Keywords","Comments","LastAuthor","RevNumber","LastPrinted","Category","Manager","Company","AppVersion","ContentStatus","Identifier","Language","evert_XLMLDPM","xlml_set_prop","xlml_write_docprops","xlml_write_custprops","Custprops","BLACKLIST","dt:dt","parse_FILETIME","dwLowDateTime","dwHighDateTime","write_FILETIME","parse_lpstr","pad","parse_lpwstr","parse_VtStringBase","stringType","parse_VtString","parse_VtUnalignedString","parse_VtVecLpwstrValue","ret","parse_VtVecUnalignedLpstrValue","parse_VtHeadingPair","headingString","parse_TypedPropertyValue","headerParts","parse_VtVecHeadingPairValue","cElements","parse_dictionary","CodePage","dict","parse_BLOB","bytes","parse_ClipboardData","Size","write_TypedPropertyValue","parse_PropertySet","PIDSI","start_addr","NumProps","Dictionary","DictObj","PropID","Offset","PropH","fail","piddsi","oldpos","parsebool","XLSPSSkip","guess_property_type","write_PropertySet","entries","RE","hdr","piao","prop","pr","pio","unshift","pinfo","parse_PropertySetStream","NumSets","FMTID0","FMTID1","Offset0","Offset1","SystemIdentifier","PSet0","rval","FMTID","PSet1","write_PropertySetStream","entries2","clsid2","ps0","ps1","parsenoop2","writezeroes","parslurp","writebool","parseuint16","writeuint16","parseuint16a","parse_Bes","write_Bes","parse_ShortXLUnicodeString","cch","fHighByte","parse_XLUnicodeRichExtendedString","fExtSt","fRichSt","width","cRun","cbExtRst","write_XLUnicodeRichExtendedString","xlstr","nfmts","otext","parse_XLUnicodeStringNoCch","parse_XLUnicodeString","parse_XLUnicodeString2","write_XLUnicodeString","parse_ControlInfo","accel","parse_URLMoniker","extra","parse_FileMoniker","cAnti","preamble","ansiPath","unicodePath","parse_HyperlinkMoniker","parse_HyperlinkString","write_HyperlinkString","parse_Hyperlink","sVer","displayName","targetFrameName","moniker","oleMoniker","Loc","guid","fileTime","Tooltip","write_Hyperlink","hl","hashidx","Pretarget","parse_LongRGBA","parse_LongRGB","parse_XLSCell","rw","ixfe","write_XLSCell","parse_frtHeader","rt","parse_OptXLUnicodeString","parse_XTI","iSupBook","itabFirst","itabLast","parse_RkRec","parse_AddinUdf","udfName","parse_Ref8U","rwFirst","rwLast","colFirst","colLast","write_Ref8U","parse_RefU","parse_Ref","parse_FtCmo","ot","id","parse_FtNts","fSharedNote","parse_FtCf","cf","parse_FtSkip","FtTab","parse_FtArray","fts","ft","parse_BOF","BIFFVer","write_BOF","wb","parse_InterfaceHdr","parse_WriteAccess","UserName","write_WriteAccess","b8","parse_WsBool","fDialog","fBelow","fRight","parse_BoundSheet8","hidden","hs","write_BoundSheet8","parse_SST","ucnt","Count","Unique","write_SST","parse_ExtSST","extsst","dsst","parse_Row","miyRw","level","hpt","parse_ForceFullCalculation","fullcalc","parse_RecalcId","parse_DefaultRowHeight","fl","Unsynced","DyZero","ExAsc","ExDsc","parse_Window1","xWn","yWn","dxWn","dyWn","iTabCur","iTabFirst","ctabSel","wTabRatio","Pos","Dim","Flags","CurTab","FirstTab","Selected","TabRatio","write_Window1","parse_Window2","RTL","write_Window2","parse_Pane","parse_Font","dyHeight","write_Font","b5","parse_LabelSst","isst","write_LabelSst","os","parse_Label","biffguess","write_Label","parse_Format","fmtstr","write_Format","parse_BIFF2Format","parse_Dimensions","write_Dimensions","parse_RK","rkrec","rknum","parse_MulRk","rkrecs","lastcol","parse_MulBlank","ixfes","parse_CellStyleXF","patternType","cellStyles","alc","fWrap","alcV","fJustLast","trot","cIndent","fShrinkToFit","iReadOrder","fAtrNum","fAtrFnt","fAtrAlc","fAtrBdr","fAtrPat","fAtrProt","dgLeft","dgRight","dgTop","dgBottom","icvLeft","icvRight","grbitDiag","icvTop","icvBottom","icvDiag","dgDiag","icvFore","icvBack","fsxButton","parse_XF","fStyle","write_XF","ixfeP","parse_Guts","write_Guts","guts","parse_BoolErr","write_BoolErr","parse_Number","xnum","write_Number","parse_XLHeaderFooter","parse_SupBook","ctab","sbcch","virtPath","rgst","parse_ExternName","fBuiltIn","fWantAdvise","fWantPict","fOle","fOleLink","fIcon","Name","parse_Lbl","chKey","cce","itab","npflen","rgce","parse_NameParsedFormula","parse_ExternSheet","parse_BIFF5ExternSheet","parse_NameCmt","cchName","cchComment","comment","parse_ShrFmla","ref","cUse","parse_SharedParsedFormula","parse_Array","parse_ArrayParsedFormula","parse_MTRSettings","fMTREnabled","fUserSetThreadCount","cUserThreadCount","parse_NoteSh","idObj","stAuthor","parse_Note","parse_MergeCells","merges","cmcs","write_MergeCells","parse_Obj","parse_BIFF5Obj","cmo","parse_BIFF5OT","parse_TxO","texts","lastobj","controlInfo","cchText","parse_HLink","hlink","write_HLink","O","parse_HLinkTooltip","wzTooltip","write_HLinkTooltip","parse_Country","write_Country","parse_ClrtClient","ccv","parse_Palette","parse_XFCRC","cxfs","crc","parse_ColInfo","coldx","write_ColInfo","parse_Setup","footer","parse_ShtProps","area","write_RRTabId","parse_Blank","parse_Scl","parse_String","parse_ImData","env","lcb","parse_BIFF2STR","parse_BIFF2NUM","num","write_BIFF2NUM","write_BIFF2Cell","parse_BIFF2INT","write_BIFF2INT","parse_BIFF2STRING","parse_BIFF2FONTXTRA","parse_RString","DBF_SUPPORTED_VERSIONS","DBF","dbf_codepage_map","100","101","102","103","104","106","107","120","121","122","123","124","125","126","150","151","152","200","201","202","203","87","88","89","108","135","dbf_reverse_map","dbf_to_aoa","memo","vfp","l7","nrow","fpos","rlen","current_cp","codepage","fields","field","hend","sheetRows","dbf_to_sheet","wch","dbf_to_workbook","_RLEN","?","","sheet_to_dbf","old_cp","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_l","_s","to_workbook","to_sheet","from_sheet","SYLK","sylk_escapes","AA","BA","CA","DA","HA","JA","AE","BE","CE","HE","AI","BI","CI","HI","AO","BO","CO","DO","HO","AU","BU","CU","HU","Aa","Ba","Ca","Da","Ha","Ja","Ae","Be","Ce","He","Ai","Bi","Ci","Hi","Ao","Bo","Co","Do","Ho","Au","Bu","Cu","Hu","KC","Kc","DN","Dn","Hy","B ","!","\"","#","(","%","'","H ","+",";","<","=",">","{","sylk_char_regex","sylk_char_fn","_","decode_sylk_char","newcc","sylk_to_aoa","sylk_to_aoa_str","records","rj","formats","next_cell_format","sht","rowinfo","colinfo","cw","Mval","Workbook","WBProps","Names","rstr","record","d1904","nn","Sheet","Ref","rc_to_a1","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","cell_t","cellText","shrbase","shift_formula_str","F_seen","hpx","pt2px","process_col","sylk_to_workbook","aoasht","outwb","write_ws_cell_sylk","a1_to_rc","write_ws_cols_sylk","rec","wpx","width2px","px2char","write_ws_rows_sylk","rows","px2pt","sheet_to_sylk","RS","coord","DIF","dif_to_aoa","dif_to_aoa_str","dif_to_sheet","dif_to_workbook","make_value","make_value_str","sheet_to_dif","_DIF_XL","ETH","eth_to_aoa","eth_to_sheet","eth_to_workbook","sep","meta","sheet_to_eth_data","sheet_to_eth","PRN","set_text_arr","prn_to_aoa_str","lines","guess_seps","guess_sep_weights","guess_sep","instr","dsv_to_sheet_str","FS","sepcc","startcc","_re","finish_cell","fuzzyfmla","cellNF","outer","prn_to_sheet_str","prn_to_sheet","firstbyte","prn_to_workbook","sheet_to_prn","read_wb_ID","OLD_WTF","WK_","lotushopper","Enum","WK1Enum","lotus_to_workbook","lotus_to_workbook_buf","next_n","sidx","snames","realnames","refguess","qpw_to_workbook_buf","vers","qpro","works","works2","tmpcell","WK3Enum","osheets","rnames","!ref","sheet_to_wk1","write_biff_rec","write_BOF_WK1","write_RANGE","max_R","write_INTEGER","write_NUMBER","write_LABEL","book_to_wk3","write_BOF_WK3","write_XFORMAT_SHEETNAME","wsidx","write_NUMBER_17","write_LABEL_16","wscnt","parse_RANGE","parse_cell","parse_LABEL","parse_STRING","parse_INTEGER","parse_NUMBER","parse_FORMULA","wk1_fmla_to_csf","wk1_parse_rc","FuncTab","83","109","111","BinOpTab","argc","argL","argR","args","parse_cell_3","parse_LABEL_16","parse_NUMBER_18","parse_NUMBER_17","v1","v2","log2","parse_FORMULA_19","parse_NUMBER_25","parse_NUMBER_27","parse_FORMULA_28","parse_SHEETNAMECS","parse_SHEETNAMELP","parse_SHEETINFOQP","parse_XFORMAT","142","147","153","154","155","156","174","175","176","184","185","187","188","195","205","206","207","208","256","259","260","261","262","263","265","266","267","268","270","271","384","389","390","393","396","512","514","513","516","517","640","641","642","643","644","645","646","647","648","658","659","660","661","662","665","666","768","772","1537","1600","1602","1793","1794","1795","1796","1920","2048","2049","2052","2688","10998","12849","28233","28484","formulae","book_append_sheet","delta","parse_rpr","rpr","pass","uval","family","valign","parse_rs","tregex","rpregex","parse_r","rregex","rend","rs","filter","rs_to_html","parse_rs_factory","nlregex","parse_rpr2","intro","outro","align","r_to_html","terms","sitregex","sirregex","sirphregex","parse_si","cellHTML","sstr0","sstr1","sstr2","parse_sst_xml","count","uniqueCount","straywsregex","write_sst_xml","bookSST","sitag","parse_BrtBeginSst","parse_sst_bin","hopper_sst","write_BrtBeginSst","write_BrtSSTItem","write_sst_bin","_JS2ANSI","parse_CRYPTOVersion","Major","Minor","parse_DataSpaceVersionInfo","U","parse_DataSpaceMapEntry","comps","parse_DataSpaceMap","parse_DataSpaceDefinition","parse_TransformInfoHeader","parse_Primary","ename","cmode","parse_EncryptionHeader","AlgID","valid","AlgIDHash","KeySize","ProviderType","CSPName","parse_EncryptionVerifier","Salt","Verifier","VerifierHash","parse_EncryptionInfo","parse_EncInfoStd","parse_EncInfoExt","parse_EncInfoAgl","verifier","KeyData","xml_agile","encryptedHmacKey","encryptedHmacValue","encs","uri","parse_RC4CryptoHeader","EncryptionVersionInfo","EncryptionHeader","EncryptionVerifier","parse_RC4Header","EncryptedVerifier","EncryptedVerifierHash","crypto_CreatePasswordVerifier_Method1","Password","PasswordArray","PasswordDecoded","PasswordByte","Intermediate1","Intermediate2","Intermediate3","crypto_CreateXorArray_Method1","PadArray","InitialCode","XorMatrix","Ror","Byte","XorRor","byte1","byte2","CreateXorKey_Method1","XorKey","CurrentElement","Char","password","Index","ObfuscationArray","Temp","PasswordLastChar","PadIndex","crypto_DecryptData_Method1","Data","XorArrayIndex","XorArray","Value","crypto_MakeXorDecryptor","parse_XORObfuscation","verificationBytes","insitu","parse_FilePassHeader","Info","parse_FilePass","rtf_to_sheet","rtf_to_sheet_str","rowtf","rtfre","last_index","lastIndex","rtf_to_workbook","sheet_to_rtf","hex2RGB","rgb2HSL","G","H6","L2","hsl2RGB","hsl","h6","X","rgb_tint","hex","DEF_MDW","MAX_MDW","MIN_MDW","MDW","px","char2width","chr","cycle_width","collw","find_mdw_colw","_MDW","coll","customWidth","DEF_PPI","PPI","pt","XLMLPatternTypeMap","None","Solid","Gray50","Gray75","Gray25","HorzStripe","VertStripe","ReverseDiagStripe","DiagStripe","DiagCross","ThickDiagCross","ThinHorzStripe","ThinVertStripe","ThinReverseDiagStripe","ThinHorzCross","parse_borders","Borders","border","diagonalUp","diagonalDown","parse_fills","Fills","bgColor","indexed","fgColor","parse_fonts","Fonts","bold","underline","vertAlign","scheme","themeElements","clrScheme","parse_numFmts","NumberFmt","formatCode","write_numFmts","NF","cellXF_uint","cellXF_bool","parse_cellXfs","CellXf","xf","alignment","vertical","horizontal","textRotation","indent","wrapText","write_cellXfs","cellXfs","parse_sty_xml","make_pstyx","numFmtRegex","cellXfRegex","fillsRegex","fontsRegex","bordersRegex","write_sty_xml","parse_BrtFmt","stFmtCode","write_BrtFmt","parse_BrtFont","bls","bCharSet","charset","write_BrtFont","sss","XLSBFillPTNames","rev_XLSBFillPTNames","parse_BrtFill","write_BrtFill","fls","parse_BrtXF","ixfeParent","ifmt","write_BrtXF","flow","write_Blxf","parse_BrtBorder","write_BrtBorder","write_BrtStyle","xfId","builtinId","write_BrtBeginTableStyles","defTableStyle","defPivotStyle","parse_sty_bin","hopper_sty","write_FMTS_bin","write_FONTS_bin","write_FILLS_bin","write_BORDERS_bin","write_CELLSTYLEXFS_bin","fontId","fillId","borderId","write_CELLXFS_bin","write_STYLES_bin","write_DXFS_bin","write_TABLESTYLES_bin","write_COLORPALETTE_bin","write_sty_bin","XLSXThemeClrScheme","parse_clrScheme","lastClr","parse_fontScheme","parse_fmtScheme","clrsregex","fntsregex","fmtsregex","parse_themeElements","themeltregex","parse_theme_xml","write_theme","Themes","themeXLSX","parse_Theme","dwThemeVersion","themeXML","parse_ColorTheme","parse_FullColorExt","xclrType","nTintShade","xclrValue","parse_IcvXF","parse_XFExtGradient","parse_ExtProp","extType","parse_XFExt","cexts","update_xfext","xfext","xfe","parse_BrtMdtinfo","write_BrtMdtinfo","parse_BrtMdb","write_BrtMdb","write_BrtBeginEsfmd","parse_BrtBeginEsmdb","write_BrtBeginEsmdb","cm","parse_xlmeta_bin","Types","Cell","metatype","write_xlmeta_bin","parse_xlmeta_xml","lastmeta","offsets","write_xlmeta_xml","parse_cc_xml","parse_BrtCalcChainItem$","parse_cc_bin","hopper_cc","parse_xlink_xml","parse_xlink_bin","xlink_parse","parse_drawing","write_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","_shapeid","_comments","joinstyle","gradientshapeok","o:connecttype","coordsize","o:spt","write_vml_comment","fillopts","color2","angle","fillparm","fillxml","shadata","on","obscured","fillcolor","strokecolor","sheet_insert_comments","threaded","author","parse_comments_xml","authors","commentList","authtag","cmnttag","authorId","textMatch","write_comments_xml","iauthor","ID","lastauthor","ts","tcnt","parse_tcmnt_xml","tidx","xml_tcmnt","personId","write_tcmnt_xml","carr","rootid","tcopts","tcid","parentId","parse_people_xml","displayname","write_people_xml","person","userId","providerId","parse_BrtBeginComment","rfx","write_BrtBeginComment","parse_BrtCommentAuthor","write_BrtCommentAuthor","parse_comments_bin","hopper_cmnt","write_comments_bin","CT_VBA","make_vba_xls","newcfb","newpath","fill_vba_xls","VBAFMTS","parse_ds_bin","!type","parse_ds_xml","parse_ms_bin","parse_ms_xml","rcregex","rcbase","rcfunc","fstr","crefregex","$0","$4","$5","shift_formula_xlsx","_xlfn","parseread1","parse_ColRelU","parse_RgceArea","parse_RgceArea_BIFF2","parse_RgceAreaRel","parse_RgceLoc","parse_RgceLoc_BIFF2","parse_RgceElfLoc","fQuoted","parse_RgceLocRel","parse_RgceLocRel_BIFF2","cl","rl","parse_PtgArea","parse_PtgArea3d","ixti","parse_PtgAreaErr","parse_PtgAreaErr3d","parse_PtgAreaN","parse_PtgArray","parse_PtgAttrBaxcel","bitSemi","bitBaxcel","parse_PtgAttrChoose","parse_PtgAttrGoto","bitGoto","parse_PtgAttrIf","bitIf","parse_PtgAttrIfError","parse_PtgAttrSemi","parse_PtgAttrSpaceType","parse_PtgAttrSpace","parse_PtgAttrSpaceSemi","parse_PtgRef","parse_PtgRefN","parse_PtgRef3d","parse_PtgFunc","iftab","FtabArgc","Ftab","parse_PtgFuncVar","cparams","tab","parsetab","Cetab","parse_PtgAttrSum","parse_PtgExp","parse_PtgErr","parse_PtgInt","parse_PtgBool","parse_PtgNum","parse_PtgStr","parse_SerAr","parse_PtgExtraMem","parse_PtgExtraArray","parse_PtgName","nameindex","parse_PtgNameX","parse_PtgNameX_BIFF5","parse_PtgMemArea","parse_PtgMemFunc","parse_PtgRefErr","parse_PtgRefErr3d","parse_PtgMemErr","parse_PtgMemNoMem","parse_PtgTbl","parse_PtgElfLoc","parse_PtgElfNoop","parse_PtgElfCol","parse_PtgElfColS","parse_PtgElfColSV","parse_PtgElfColV","parse_PtgElfLel","parse_PtgElfRadical","parse_PtgElfRadicalLel","parse_PtgElfRadicalS","parse_PtgElfRw","parse_PtgElfRwV","PtgListRT","parse_PtgList","coltype","parse_PtgSxName","parse_PtgSheet","parse_PtgEndSheet","parse_PtgMemAreaN","parse_PtgMemNoMemN","parse_PtgAttrNoop","PtgTypes","PtgDupes","96","97","98","99","110","91","92","93","Ptg18","Ptg19","parse_RgbExtra","parse_Rgce","ptgs","stringify_array","PtgBinOp","PtgAdd","PtgConcat","PtgDiv","PtgEq","PtgGe","PtgGt","PtgLe","PtgLt","PtgMul","PtgNe","PtgPower","PtgSub","make_3d_range","get_ixti_raw","supbooks","XTI","SID","get_ixti","ixtiraw","stringify_formula","stack","nameidx","last_sp","sp","fflen","func","lbl","names","xlfn","bookidx","externbook","ixtidata","lp","rp","sharedf","parsedf","fnd","arrayf","PtgNonDisp","_left","rgcb","parse_XLSCellParsedFormula","parse_FormulaValue","write_FormulaValue","parse_Formula","cbf","shared","write_Formula","o1","o3","bf","parse_XLSBParsedFormula","parse_XLSBArrayParsedFormula","parse_XLSBCellParsedFormula","parse_XLSBNameParsedFormula","parse_XLSBSharedParsedFormula","write_XLSBFormulaNum","oint","write_XLSBFormulaErr","write_XLSBFormulaBool","write_XLSBFormulaStr","postamble","write_XLSBFormulaRef","write_XLSBFormulaRef3D","lastbang","write_XLSBFormulaRefErr3D","write_XLSBFormulaRange","_str","write_XLSBFormulaRangeWS","write_XLSBFormulaArea3D","write_XLSBFormula","write_XLSBNameParsedFormula","85","94","95","112","113","114","115","116","117","118","119","127","131","132","133","137","138","139","140","143","144","145","146","148","149","159","164","166","167","168","169","170","171","172","173","189","190","191","192","193","194","196","197","198","199","209","210","211","212","214","215","217","219","220","223","224","225","226","227","228","229","240","243","249","250","251","252","253","254","269","272","273","274","276","277","278","279","280","281","282","283","284","285","288","289","290","291","292","293","295","296","297","298","302","305","306","307","308","309","310","311","312","313","314","315","316","318","319","320","321","322","323","324","325","328","330","336","338","339","342","343","344","350","352","355","356","370","373","374","375","376","377","378","379","380","381","382","383","385","386","388","391","392","394","395","397","398","399","400","412","413","414","415","416","417","421","422","423","424","425","430","431","432","433","434","435","436","437","438","439","440","441","442","443","444","445","446","447","448","449","450","451","452","453","454","455","456","458","459","460","461","462","463","464","465","466","467","468","469","470","471","472","473","474","475","476","477","478","480","481","482","485","489","491","493","494","495","509","510","511","518","519","520","521","522","523","545","546","547","548","549","620","621","653","667","673","753","755","808","141","157","158","160","165","179","180","181","182","183","221","230","231","232","233","234","235","236","237","239","241","242","244","245","246","247","248","257","258","264","275","286","287","294","299","300","301","303","304","317","326","327","329","331","332","334","335","337","340","341","345","346","347","348","349","353","357","359","360","361","362","363","364","365","366","367","368","369","371","372","387","401","402","403","404","405","406","407","408","409","410","411","418","419","426","427","428","429","457","724","479","483","484","ods_to_csf_formula","csf_to_ods_formula","ods_to_csf_3D","csf_to_ods_3D","_ssfopts","browser_has_Map","Map","get_sst_id","has","revarr","get","col_obj_w","outlineLevel","default_margins","margins","mode","defs","left","right","top","bottom","get_cell_style","revssf","ssf","applyNumberFormat","safe_format","fillid","raw_rgb","check_ws","parse_ws_xml_dim","mergecregex","sheetdataregex","hlinkregex","dimregex","colregex","afregex","marginregex","sheetprregex","sheetprregex2","svsregex","parse_ws_xml","data1","data2","mtch","sheetPr","parse_ws_xml_sheetpr","parse_ws_xml_sheetpr2","svs","parse_ws_xml_sheetviews","columns","parse_ws_xml_cols","parse_ws_xml_data","afilter","parse_ws_xml_autofilter","_merge","parse_ws_xml_hlinks","parse_ws_xml_margins","tmpref","write_ws_xml_merges","codeName","CodeName","write_ws_xml_sheetpr","needed","vbaraw","cname","outlineprops","summaryBelow","summaryRight","above","sheetprot_deffalse","sheetprot_deftrue","write_ws_xml_protection","location","Rel","tooltip","rng","margin","write_ws_xml_margins","seencol","coli","colm","colM","write_ws_xml_cols","write_ws_xml_autofilter","sviewregex","Views","zoomScale","zoom","rightToLeft","write_ws_xml_sheetviews","sview","workbookViewId","write_ws_xml_cell","oldt","oldv","Strings","revStrings","cellregex","rowregex","isregex","refregex","match_v","match_f","sdata","cells","cref","tagr","tagc","sstr","ftag","do_format","rowobj","rowrite","marr","marrlen","xlen","rstarti","outa","ht","rslice","cellFormula","___f","_tag","xlmeta","_r","write_ws_xml_data","params","height","_cell","customHeight","write_ws_xml","xmlns:r","rdata","_drawing","sheetFormat","defaultRowHeight","baseColWidth","outlineLevelRow","relc","ignoreEC","numberStoredAsText","sqref","r:id","parse_BrtRowHdr","write_BrtRowHdr","ncolspan","lcs","caddr","first","last","write_row_header","parse_BrtWsDim","write_BrtWsDim","parse_BrtWsFmtInfo","parse_BrtWsProp","write_BrtWsProp","parse_BrtCellBlank","write_BrtCellBlank","ncell","parse_BrtShortBlank","write_BrtShortBlank","parse_BrtCellBool","fBool","write_BrtCellBool","parse_BrtShortBool","write_BrtShortBool","parse_BrtCellError","bError","write_BrtCellError","parse_BrtShortError","write_BrtShortError","parse_BrtCellIsst","write_BrtCellIsst","parse_BrtShortIsst","write_BrtShortIsst","parse_BrtCellReal","write_BrtCellReal","parse_BrtShortReal","write_BrtShortReal","parse_BrtCellRk","write_BrtCellRk","parse_BrtShortRk","write_BrtShortRk","parse_BrtCellRString","parse_BrtCellSt","write_BrtCellSt","parse_BrtShortSt","write_BrtShortSt","parse_BrtFmlaBool","parse_BrtFmlaError","parse_BrtFmlaNum","parse_BrtFmlaString","parse_BrtMergeCell","write_BrtMergeCell","write_BrtBeginMergeCells","parse_BrtHLink","relId","display","write_BrtHLink","locidx","parse_BrtPane","parse_BrtArrFmla","fAlwaysCalc","parse_BrtShrFmla","write_BrtColInfo","BrtMarginKeys","parse_BrtMargins","write_BrtMargins","parse_BrtBeginWsView","write_BrtBeginWsView","write_BrtCellIgnoreEC","write_BrtSheetProtection","parse_BrtDVal","parse_BrtDVal14","parse_ws_bin","ai","af","vm","ws_parse","RR","aii","_d","write_ws_bin_cell","last_seen","write_CELLTABLE","cap","write_MERGECELLS","write_COLINFOS","write_IGNOREECS","write_HLINKS","write_LEGACYDRAWING","write_AUTOFILTER","write_WSVIEWS2","write_WSFMTINFO","write_SHEETPROTECT","write_ws_bin","parse_Cache","nf","parse_chart","csheet","nc","parse_cs_xml","!drawel","!rel","parse_BrtCsProp","parse_cs_bin","cs_parse","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","dn","wbnsregex","parse_wb_xml","dname","dnstart","xml_wb","Hidden","Comment","localSheetId","write_wb_xml","write_names","workbookPr","sheetId","parse_BrtBundleSh","iTabID","strRelID","write_BrtBundleSh","parse_BrtWbProp","defaultThemeVersion","strName","autoCompressPictures","backupFile","checkCompatibility","filterPrivacy","hidePivotFieldList","promptedSolutions","publishItems","refreshAllConnections","saveExternalLinkValues","showBorderUnselectedTables","showInkAnnotation","showObjects","showPivotChartFilter","updateLinks","write_BrtWbProp","parse_BrtFRTArchID$","ArchID","parse_BrtName","Ptg","write_BrtName","parse_wb_bin","hopper_wb","write_BUNDLESHS","viz","write_BrtFileVersion","write_BrtBookView","write_BOOKVIEWS","vistab","write_BRTNAMES","write_SELF_EXTERNS_xlsb","write_EXTERNALS_xlsb","write_wb_bin","parse_wb","parse_ws","parse_cs","parse_ms","parse_ds","parse_sty","parse_sst","parse_cmnt","parse_cc","parse_xlink","parse_xlmeta","attregexg2","attregex2","xlml_parsexmltag","words","xlml_parsexmltagobj","XLMLFormatMap","xlml_format","xlml_set_custprop","oval","safe_format_xlml","process_style_xlml","stag","Interior","I","Pattern","parse_xlml_data","csty","sid","StyleID","interiors","Parent","UTC","Formula","ArrayRange","xlml_prefix_dname","xlml_clean_comment","parse_xlml_xml","opening","ishtml","_o","html_to_workbook","General Number","General Date","Long Date","Medium Date","Short Date","Long Time","Medium Time","Short Time","Currency","Fixed","Standard","Percent","Scientific","Yes/No","True/False","On/Off","sheetnames","cursheet","sheetname","dtag","didx","fidx","pidx","cstys","wsprops","raw_Rn3","HRef","HRefScreenTip","MergeAcross","MergeDown","cma","cmd","AutoFitHeight","Height","Format","ssfidx","Width","_col","Span","_NamedRange","_DefinedName","RefersTo","AutoFilter","Range","parse_fods","Margin","pagemargins","Top","Left","Right","Bottom","bookSheets","bookProps","parse_xlml","fix_read_opts","write_props_xlml","write_wb_xlml","write_sty_xlml","ss:Format","ss:ID","write_name_xlml","ss:Name","ss:RefersTo","write_names_xlml","write_ws_xlml_names","write_ws_xlml_wsopts","x:Margin","x:Bottom","x:Left","x:Right","x:Top","objects","scenarios","selectLockedCells","selectUnlockedCells","write_ws_xlml_comment","ss:Author","write_ws_xlml_cell","attr","mi","_v","write_ws_xlml_row","write_ws_xlml_table","ss:Index","skip","write_ws_xlml","write_xlml","General","xmlns:ss","xmlns:dt","xmlns:html","parse_compobj","AnsiUserType","AnsiClipboardFormat","Reserved1","UnicodeClipboardFormat","Reserved2","CONTINUE_RT","slurp","RecordType","nextrt","XLSRecordEnum","ll","safe_format_xf","make_cell","parse_workbook","Directory","last_formula","cur_sheet","Preamble","lastcell","last_cell","cmnt","rngC","rngR","temp_val","country","XFs","palette","get_rgb","getrgb","process_cell_style","pcs","xfd","addcell","file_depth","afi","rrtabid","lastuser","winlocked","wtf","last_RT","BIFF2Fmt","BIFF2FmtTable","FilterDatabases","last_lbl","seen_codepage","Date1904","WriteProtect","cpval","CalcRefMode","FullCalc","ExternCount","tmpri","1033","1024","1280","1536","fakebs8","_fr","_fc","_fe","_arraystart","_j","_ixfe","b4idx","b2idx","TxO","ImData","noteobj","Encryption","Metadata","Country","PSCLSID","SI","DSI","UDI","parse_xls_props","DocSummary","Summary","write_xls_props","DSEntries","SEntries","CEntries","Keys","DocSummaryRE","SummaryRE","CEntries2","parse_xlscfb","CompObj","WorkbookP","bookVBA","bookFiles","write_xlscfb","wbpath","write_biff_buf","333","486","487","488","490","492","496","497","498","499","500","501","502","503","504","505","506","507","508","515","524","525","526","527","528","529","530","531","532","533","534","535","536","537","538","539","540","541","542","550","551","552","553","554","555","556","557","558","559","560","561","562","564","565","566","569","570","572","573","574","577","578","579","580","581","582","583","584","585","586","587","588","589","590","591","592","593","594","595","596","597","598","599","600","601","602","603","604","605","606","607","608","609","610","611","612","613","614","615","616","617","618","619","625","626","627","628","629","630","631","632","633","634","635","636","637","638","639","649","650","651","652","654","655","656","657","663","664","668","669","671","672","674","675","676","677","678","679","680","681","1025","1026","1027","1028","1029","1030","1031","1032","1034","1035","1036","1037","1038","1039","1040","1041","1042","1043","1044","1045","1046","1047","1048","1049","1050","1051","1052","1053","1054","1055","1056","1057","1058","1059","1061","1062","1063","1064","1065","1066","1067","1068","1069","1070","1071","1072","1073","1075","1076","1077","1078","1079","1080","1081","1082","1083","1084","1085","1086","1087","1088","1089","1090","1091","1092","1093","1094","1095","1096","1097","1098","1099","1100","1101","1102","1103","1104","1105","1111","1112","1113","1114","1115","1116","1117","1118","1119","1120","1121","1122","1123","1124","1125","1126","1128","1129","1130","1131","1132","1133","1134","1135","1136","1137","1138","1139","1140","1141","1142","1143","1144","1145","1146","1147","1148","1149","1150","1152","1153","1154","1155","1156","1157","1158","1159","1160","1161","1162","1163","1164","1165","1166","1167","1168","1169","1170","1171","1172","1173","1177","1178","1180","1181","1182","2050","2051","2053","2054","2055","2056","2057","2058","2060","2067","2068","2069","2070","2071","2072","2073","2075","2076","2077","2078","2079","2080","2081","2082","2083","2084","2085","2086","2087","2088","2089","2090","2091","2092","2093","2094","2095","2096","2097","2098","2099","2100","2101","2102","2103","2104","2105","2106","2107","2108","2109","2110","2111","2112","2113","2114","2115","2116","2117","2118","2119","2120","2121","2122","2123","2124","2125","2126","2127","2128","2129","2130","2131","2132","2133","2134","2135","2136","2137","2138","2139","2140","2141","3072","3073","4096","4097","5002","5003","5081","5082","5083","5084","5085","5086","5087","5088","5089","5090","5092","5093","5094","5095","5096","5097","5099","1212","2059","2061","2062","2063","2064","2066","2146","2147","2148","2149","2150","2151","2152","2154","2155","2156","2161","2162","2164","2165","2166","2167","2168","2169","2170","2171","2172","2173","2174","2175","2180","2181","2182","2183","2184","2185","2186","2187","2188","2189","2190","2191","2192","2194","2195","2196","2197","2198","2199","2200","2201","2202","2203","2204","2205","2206","2207","2211","2212","2213","2214","2215","4098","4099","4102","4103","4105","4106","4107","4108","4109","4116","4117","4118","4119","4120","4121","4122","4123","4124","4125","4126","4127","4128","4129","4130","4132","4133","4134","4135","4146","4147","4148","4149","4154","4156","4157","4158","4159","4160","4161","4163","4164","4165","4166","4168","4170","4171","4174","4175","4176","4177","4187","4188","4189","4191","4192","4193","4194","4195","4196","4197","4198","4199","4200","2157","2163","2177","2240","2241","2242","2243","2244","2245","2246","2247","2248","2249","2250","2251","2262","29282","write_biff_continue","write_BIFF2BERR","write_BIFF2LABEL","write_ws_biff2_cell","write_ws_biff2","write_biff2_buf","write_FONTS_biff8","write_FMTS_biff8","write_FEAT","write_CELLXFS_biff8","write_ws_biff8_hlinks","HL","write_ws_cols_biff8","write_ws_biff8_cell","write_ws_biff8","_WB","_sheet","MAX_ROWS","write_biff8_global","_sheets","_wb","blen","write_biff8_buf","fix_write_opts","html_to_sheet","mtch2","hd","midx","colspan","rowspan","_t","make_html_row","editable","HTML_BEGIN","HTML_END","book_new","make_html_preamble","sheet_to_html","sheet_add_dom","tagName","or_R","or_C","is_dom_element_hidden","elts","hasAttribute","getAttribute","innerHTML","Aelts","getElementsByTagName","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","parse_ods_styles","_nfm","number_format_map","NFtag","tNF","etpos","infmt","parse_content_xml","nfidx","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","baddate","rptR","rpt","xlmlidx","styletag","nrange","ptp","parse_ods","Styles","write_styles_ods","master_styles","xmlns:office","xmlns:table","xmlns:style","xmlns:text","xmlns:draw","xmlns:fo","xmlns:xlink","xmlns:number","xmlns:svg","xmlns:of","office:version","wso","write_number_format_ods","nopts","style:name","number:min-integer-digits","number:min-numerator-digits","number:max-denominator-value","number:denominator-value","number:decimal-places","number:min-decimal-places","has_time","np","write_names_ods","scoped","odsref","table:name","table:cell-range-address","table:base-cell-address","write_content_ods","write_text_p","null_cell_xml","covered_cell_xml","write_ws","nfs","ods","ROWS","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","nfi","wcx","xmlns:meta","xmlns:presentation","xmlns:chart","xmlns:dr3d","xmlns:math","xmlns:form","xmlns:script","xmlns:ooo","xmlns:ooow","xmlns:oooc","xmlns:dom","xmlns:xforms","xmlns:sheet","xmlns:rpt","xmlns:xhtml","xmlns:grddl","xmlns:tableooo","xmlns:drawooo","xmlns:calcext","xmlns:loext","xmlns:field","xmlns:formx","xmlns:css3t","fods","xmlns:config","office:mimetype","write_ods","u8_to_dataview","array","DataView","buffer","byteOffset","byteLength","u8str","u8","stru8","u8contains","search","u8concat","u8a","reduce","acc","popcnt","readDecimal128LE","exp","mantissa","writeDecimal128LE","parse_varint49","ptr","varint","write_varint49","parse_packed_varints","write_packed_varints","nums","varint_to_i32","i32","parse_shallow","write_shallow","proto","item","mappa","parse_iwa_file","_a","messages","merge","write_iwa_file","ias","ia","midata","aipayload","mid","parse_snappy_chunk","chunks","decompress_iwa_file","compress_iwa_file","frame","numbers_lut_new","rsst","nfmt","numbers_format_cell","_b","_c","ver","dur","dstyle","dmin","dmax","autodur","dstr","zstr","parse_old_storage","lut","dv","getUint32","zidx","ieee","doff","getFloat64","parse_new_storage","d128","write_new_storage","setFloat64","setUint32","write_old_storage","parse_cell_storage","parse_TSP_Reference","pb","write_TSP_Reference","parse_TST_TableDataList","le","rtp","rtpref","mtype","tswpsa","parse_TST_TileRowInfo","_e","_g","_h","_i","_k","_m","wide_offsets","used_storage_u8","used_storage","used_storage_offsets","getUint16","parse_TST_Tile","nrows","parse_TST_TableModelArchive","store","tile","tl","ref2","mtype2","_tile","pi","parse_TST_TableInfoArchive","tableref","parse_TN_SheetArchive","shapeoffs","parse_TN_DocumentArchive","sheetoffs","root2","parse_numbers_iwa","indices","packets","packet","docroot","iwam","write_tile_row","tri","wide","new_7","new_4","last_offset","cell_storage","_dv","_last_offset","_cell_storage","setUint16","celload","_celload","write_iwam","get_unique_msgid","dep","dependents","build_numbers_deps","deps","indices_varint","ivi","some","mess","write_numbers_iwa","numbers","cfb_DA","iwa_DA","sheetrefs","write_numbers_ws","numbers_iwa_doit","ainfo","numbers_iwa_find","wsname","sheetidx","rootref","drawables","sheetref","tia","tmaref","write_numbers_tma","USE_WIDE_ROWS","tmaroot","tmafile","trunc","SST_set","Set","add","row_header_ref","rowhead","_x","_a2","base_bucket","R2","_bucket","col_header_ref","colhead","sstref","sstroot","sstdata","rbtree","tilestore","tstride","tileref","save_token","mlist","parentidx","findIndex","_b2","mm","parent","ntiles","newtileid","tiledata","tilerow","newtile","tilecontent","orefs","orefidx","mergeid","fix_opts_func","fix_opts","get_sheet_type","safe_parse_wbrels","wbrels","pwbr","safe_parse_sheet","relsPath","sheetRels","stype","dfile","drelsp","draw","chartp","crelsp","tcomments","strip_front_slash","_zip","index_zip","Bun","readSync","dir","binname","link","propdata","pluck","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Deps","bin","parse_xlsxcfb","dsm","seds","einfo","decrypt_agile","decrypt_std76","write_zip_xlsb","foo","vbafmt","_sn","wsrels","_type","need_vml","rId1","write_zip_xlsx","needtc","read_cfb","read_zip","read_plaintext","main","read_plaintext_raw","read_utf16","bstrify","read_prn","ab","vu","write_cfb_ctr","write_zip_type","write_zip_denouement","write_zip_typeXLSX","oopts","ftype","nodebuffer","string","generate","encrypt_agile","write_cfb_type","write_string_type","bom","write_stxt_type","write_binary_type","writeSyncXLSX","writeSync","sheet_to_txt","sheet_to_csv","resolve_book_type","_BT","xls","slk","socialcalc","Sh33tJS","writeFileSyncXLSX","writeFileAsync","_cb","Function","make_json_row","defval","isempty","defineProperty","enumerable","__rowNum__","rawNumbers","outi","counter","header_cnt","skipHidden","blankrows","qreg","make_csv_row","txt","forceQuotes","endregex","strip","sheet_to_formulae","cmds","sheet_add_json","js","skipHeader","ROW","JS","json_to_sheet","ws_get_cell_stub","RC","wb_sheet_idx","sh","roll","book_set_sheet_visibility","vis","cell_set_number_format","cell_set_hyperlink","cell_set_internal_link","cell_add_comment","sheet_set_array_formula","dynamic","rngstr","wsr","table_to_sheet","sheet_to_row_object_array","sheet_get_cell","SHEET_VISIBLE","SHEET_HIDDEN","SHEET_VERY_HIDDEN","_Readable","set_readable","write_csv_stream","stream","BOM","_read","write_html_stream","write_json_stream","objectMode","__stream","to_json","to_html","to_csv","readFile","writeXLSX","writeFileXLSX","strmod","Readable","define","amd","window"],"mappings":";AAAA,GAAIA,wBAAyB,ICE7B,IAAIC,UAAWC,QAAQ,SACvBD,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACvkBH,SAAQ,KAAO,WAAa,GAAIE,MAAQE,KAAQD,KAAQQ,CACxDR,GAAE,GAAK,8QAAiZS,MAAM,GAC9Z,KAAID,EAAI,EAAGA,GAAKR,EAAE,GAAGG,SAAUK,EAAG,GAAGR,EAAE,GAAGQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,GAAGQ,IAAM,EAAIA,CAAGT,GAAE,EAAIS,GAAKR,EAAE,GAAGQ,GAC7GR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,KAAQA,CAAGT,GAAE,KAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7H,OAAQF,IAAOL,EAAGM,IAAOR,KACzBF,SAAQ,KAAO,WAAa,GAAIE,MAAQE,KAAQD,KAAQQ,CACxDR,GAAE,GAAK,8QAAiZS,MAAM,GAC9Z,KAAID,EAAI,EAAGA,GAAKR,EAAE,GAAGG,SAAUK,EAAG,GAAGR,EAAE,GAAGQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,GAAGQ,IAAM,EAAIA,CAAGT,GAAE,EAAIS,GAAKR,EAAE,GAAGQ,GAC7GR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ;CAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM;AAClR,IAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,KAAQA,CAAGT,GAAE,KAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7H,OAAQF,IAAOL,EAAGM,IAAOR,KACzBF,SAAQ,KAAO,WAAa,GAAIE,MAAQE,KAAQD,KAAQQ,CACxDR,GAAE,GAAK,8QAAiZS,MAAM,GAC9Z,KAAID,EAAI,EAAGA,GAAKR,EAAE,GAAGG,SAAUK,EAAG,GAAGR,EAAE,GAAGQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,GAAGQ,IAAM,EAAIA,CAAGT,GAAE,EAAIS,GAAKR,EAAE,GAAGQ,GAC7GR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM;AAClR,IAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,KAAQA,CAAGT,GAAE,KAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7H,OAAQF,IAAOL,EAAGM,IAAOR,KACzBF,SAAQ,KAAO,WAAa,GAAIE,MAAQE,KAAQD,KAAQQ,CACxDR,GAAE,GAAK,8QAAiZS,MAAM,GAC9Z,KAAID,EAAI,EAAGA,GAAKR,EAAE,GAAGG,SAAUK,EAAG,GAAGR,EAAE,GAAGQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,GAAGQ,IAAM,EAAIA,CAAGT,GAAE,EAAIS,GAAKR,EAAE,GAAGQ,GAC7GR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM;AAClR,IAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7H,OAAQF,IAAOL,EAAGM,IAAOR,KACzBF,SAAQ,MAAQ,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACxkBH,SAAQ,MAAQ,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACxkBH,SAAQ,MAAQ,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACxkBH,SAAQ,MAAQ,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACxkBH,SAAQ,MAAQ,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACxkBH,SAAQ,MAAQ,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACxkBH,SAAQ,MAAQ,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACxkBH,SAAQ,MAAQ,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACxkBH,SAAQ,MAAQ,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACxkBH,SAAQ,KAAS,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACzkBH,SAAQ,OAAS,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACzkBH,SAAQ,OAAS,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACzkBH,SAAQ,OAAS,WAAa,GAAIE,MAAQE,KAAQD,KAAQQ,CAC1DR,GAAE,GAAK,8QAAiZS,MAAM,GAC9Z,KAAID,EAAI,EAAGA,GAAKR,EAAE,GAAGG,SAAUK,EAAG,GAAGR,EAAE,GAAGQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,GAAGQ,IAAM,EAAIA,CAAGT,GAAE,EAAIS,GAAKR,EAAE,GAAGQ,GAC7GR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ;AAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7HR,EAAE,KAAO,mQAAmQS,MAAM,GAClR,KAAID,EAAI,EAAGA,GAAKR,EAAE,KAAKG,SAAUK,EAAG,GAAGR,EAAE,KAAKQ,GAAGJ,WAAW,KAAO,MAAQ,CAAEH,EAAED,EAAE,KAAKQ,IAAM,MAAQA,CAAGT,GAAE,MAAQS,GAAKR,EAAE,KAAKQ,GAC7H,OAAQF,IAAOL,EAAGM,IAAOR,KACzBF,SAAQ,OAAS,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACzkBH,SAAQ,OAAS,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACzkBH,SAAQ,OAAS,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KACzkBH,SAAQ,OAAS,WAAa,GAAIE,GAAI,8QAAkZC,KAAQC,IAAQ,KAAI,GAAIC,GAAE,EAAEA,GAAGH,EAAEI,SAASD,EAAG,CAAE,GAAGH,EAAEK,WAAWF,KAAO,MAAQD,EAAEF,EAAEM,OAAOH,IAAMA,CAAGF,GAAEE,GAAKH,EAAEM,OAAOH,GAAM,OAAQI,IAAOL,EAAGM,IAAOP,KAEzkB,UAAWU,UAAW,aAAeA,OAAOC,eAAkBf,0BAA2B,YAAac,OAAOC,QAAUd,SAItH,SAASe,EAAMC,GAGd,YACA,UAAUhB,WAAY,YAAa,CACjC,SAAUiB,WAAY,YAAY,CAChC,GAAIC,GAAMlB,OACV,UAAWa,UAAW,aAAeA,OAAOC,eAAkBf,0BAA2B,YAAac,OAAOC,QAAUE,EAAQE,OAC1HH,GAAKf,QAAUgB,EAAQE,OACvB,MAAM,IAAIC,OAAM,yBAClBnB,SAAUgB,EAAQhB,WAGzBoB,KAAM,SAASF,GACf,YAEA,IAAIG,IACFC,KAAO,UACPC,KAAO,UACPC,MAAQ,UACRC,MAAQ,UACRC,MAAQ,UACRC,MAAQ,QACRC,MAAQ,OACRC,MAAQ,OAGV,IAAIC,IAAc,IAAI,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,IACzD,IAAIC,IAAc,IAAI,IAAI,IAAI,IAC9B,IAAIC,IAAe,MACnB,IAAIC,KACJ,IAAIC,KACJ,IAAIC,KACJ,IAAIC,KAEJ,IAAIC,GAAO,QAASA,GAAKC,GAAK,MAAOC,QAAOC,aAAaF,GACzD,IAAIG,GAAM,QAASA,GAAIH,GAAK,MAAOA,GAAE/B,WAAW,GAEhD,IAAImC,SAAkBC,UAAW,WACjC,IAAIC,GAAc,YAClB,IAAGF,EAAS,CACV,GAAIG,IAAQF,OAAOG,IACnB,KAAID,EAAM,IAAMF,OAAOG,KAAK,MAAO,QAAW,MAAM1C,GAAKyC,EAAO,KAChED,EAAcC,EAAO,SAASE,EAAKtC,GAAO,MAAO,GAAQ,GAAIkC,QAAOI,EAAKtC,GAAO,GAAIkC,QAAOI,IAAUJ,OAAOG,KAAKE,KAAKL,OAEtH,KAAIA,OAAOM,YAAaN,OAAOM,YAAc,SAASC,GAAK,MAAO,IAAIP,QAAOO,GAE7E,IAAIC,GAAM,KAAMC,EAAMT,OAAOM,YAAYE,EACzC,IAAIE,GAAU,QAASA,GAAQC,GAC7B,GAAIC,GAAKZ,OAAOM,YAAY,MAC5B,KAAI,GAAI5C,GAAI,EAAGA,EAAI,QAAQA,EAAGkD,EAAGlD,GAAK,CACtC,IAAImD,GAAOC,OAAOD,KAAKF,GAAII,EAAMF,EAAKlD,MACtC,KAAI,GAAIqD,GAAK,EAAGvD,EAAIoD,EAAKG,GAAKA,EAAKD,IAAOC,EAAI,CAC5C,KAAKvD,EAAIoD,EAAKG,IAAM,QACpBJ,GAAGnD,EAAEG,WAAW,IAAM+C,EAAElD,GAE1B,MAAOmD,GAET,IAAIK,GAAc,QAASC,GAAiBC,GAC1C,GAAIP,GAAKF,EAAQnC,EAAI4C,GAAIrD,IACzB,OAAO,SAASsD,GAAOC,EAAMC,GAC3B,GAAIP,GAAMM,EAAK1D,MACf,IAAI4D,GAAK7D,EAAE,EAAGM,EAAE,EAAGR,EAAE,EAAGgE,EAAE,CAC1B,UAAUH,KAAS,SAAU,CAC3BE,EAAMvB,OAAOM,YAAYS,EACzB,KAAIrD,EAAI,EAAGA,EAAIqD,IAAOrD,EAAG6D,EAAI7D,GAAKkD,EAAGS,EAAKzD,WAAWF,QAChD,IAAGsC,OAAOyB,SAASJ,GAAO;AAC/BE,EAAMvB,OAAOM,YAAY,EAAES,EAC3B/C,GAAI,CACJ,KAAIN,EAAI,EAAGA,EAAIqD,IAAOrD,EAAG,CACvBF,EAAI6D,EAAK3D,EACT,IAAGF,EAAI,IAAK+D,EAAIvD,KAAO4C,EAAGpD,OACrB,IAAGA,EAAI,IAAK,CAAE+D,EAAIvD,KAAO4C,IAAKpD,EAAE,KAAK,IAAI6D,EAAK3D,EAAE,GAAG,OAAQA,MAC3D,IAAGF,EAAI,IAAK,CAAE+D,EAAIvD,KAAO4C,IAAKpD,EAAE,KAAK,MAAM6D,EAAK3D,EAAE,GAAG,KAAK,IAAI2D,EAAK3D,EAAE,GAAG,IAAMA,IAAG,MACjF,CACH8D,IAAMhE,EAAE,IAAI,MAAM6D,EAAK3D,EAAE,GAAG,KAAK,MAAM2D,EAAK3D,EAAE,GAAG,KAAK,IAAI2D,EAAK3D,EAAE,GAAG,GAAKA,IAAG,CAC5E,IAAG8D,EAAI,MAAOD,EAAIvD,KAAO4C,EAAGY,OACvB,CAAEA,GAAK,KAAOD,GAAIvD,KAAO4C,EAAG,OAAWY,GAAG,GAAI,MAAQD,GAAIvD,KAAO4C,EAAG,OAAUY,EAAE,SAGzFD,EAAMA,EAAIG,MAAM,EAAE1D,OACb,CACLuD,EAAMvB,OAAOM,YAAYS,EACzB,KAAIrD,EAAI,EAAGA,EAAIqD,IAAOrD,EAAG6D,EAAI7D,GAAKkD,EAAGS,EAAK3D,GAAGE,WAAW,IAE1D,IAAI0D,GAAQA,IAAS,MAAO,MAAOC,EACnC,IAAGD,IAAS,MAAO,MAAOC,GAAII,SAAS,SACvC,UAAUD,MAAME,KAAKL,IAGzB,IAAIM,GAAc,QAASC,GAAiBX,GAC1C,GAAI3D,GAAIe,EAAI4C,GAAIpD,GAChB,IAAIgE,GAAK/B,OAAOM,YAAY,QAAS/C,EAAE,EAAGyE,EAAE,EAC5C,KAAIzE,EAAE,EAAEA,EAAEC,EAAEG,SAASJ,EAAG,CACtB,KAAKyE,EAAExE,EAAED,IAAK,QACd,IAAIiE,GAAIQ,EAAEpE,WAAW,EACrBmE,GAAG,EAAExE,GAAKiE,EAAE,GAAKO,GAAG,EAAExE,EAAE,GAAKiE,GAAG,EAElC,MAAO,SAASS,GAAOZ,GACrB,GAAIN,GAAMM,EAAK1D,OAAQD,EAAE,EAAGM,EAAE,CAC9B,IAAG,EAAI+C,EAAMP,EAAK,CAAEA,EAAM,EAAIO,CAAKN,GAAMT,OAAOM,YAAYE,GAC5D,GAAGR,OAAOyB,SAASJ,GAAO,CACxB,IAAI3D,EAAI,EAAGA,EAAIqD,EAAKrD,IAAK,CACvBM,EAAI,EAAEqD,EAAK3D,EACX+C,GAAI,EAAE/C,GAAKqE,EAAG/D,EAAIyC,GAAI,EAAE/C,EAAE,GAAKqE,EAAG/D,EAAE,QAEjC,UAAUqD,KAAS,SAAU,CAClC,IAAI3D,EAAI,EAAGA,EAAIqD,EAAKrD,IAAK,CACvBM,EAAI,EAAEqD,EAAKzD,WAAWF,EACtB+C,GAAI,EAAE/C,GAAKqE,EAAG/D,EAAIyC,GAAI,EAAE/C,EAAE,GAAKqE,EAAG/D,EAAE,QAEjC,CACL,IAAIN,EAAI,EAAGA,EAAIqD,EAAKrD,IAAK,CACvBM,EAAI,EAAEqD,EAAK3D,EACX+C,GAAI,EAAE/C,GAAKqE,EAAG/D,EAAIyC,GAAI,EAAE/C,EAAE,GAAKqE,EAAG/D,EAAE,IAGxC,MAAOyC,GAAIiB,MAAM,EAAG,EAAIX,GAAKY,SAAS,SAG1C,IAAIO,GAAc,QAASC,GAAiBhB,GAC1C,GAAIR,GAAIpC,EAAI4C,GAAIrD,GAChB,IAAI8C,GAAKZ,OAAOM,YAAY,OAC5B,KAAI,GAAI5C,GAAI,EAAGA,EAAI,SAAUA,EAAGkD,EAAGlD,GAAK,CACxC,IAAImD,GAAOC,OAAOD,KAAKF,EACvB,KAAI,GAAIK,GAAK,EAAGvD,EAAIoD,EAAKG,GAAKA,EAAKH,EAAKlD,SAAUqD,EAAI,CACpD,KAAKvD,EAAIoD,EAAKG,IAAM,QACpB,IAAIoB,GAAI3E,EAAEG,WAAW,EACrBgD,GAAG,EAAEwB,GAAKzB,EAAElD,GAAK,GAAKmD,GAAG,EAAEwB,EAAE,GAAKzB,EAAElD,IAAI,EAE1C,MAAO,SAAS4E,GAAOhB,EAAMC,GAC3B,GAAIP,GAAMM,EAAK1D,OAAQ4D,EAAMvB,OAAOM,YAAY,EAAES,GAAMrD,EAAE,EAAGM,EAAE,EAAGsE,EAAG,EAAGC,EAAE,EAAG/E,EAAE,CAC/E,UAAU6D,KAAS,SAAU,CAC3B,IAAI3D,EAAI6E,EAAI,EAAG7E,EAAIqD,IAAOrD,EAAG,CAC3BM,EAAIqD,EAAKzD,WAAWF,GAAG,CACvB6D,GAAIgB,KAAO3B,EAAG5C,EAAE,IAAM4C,EAAG5C,EAAI,IAAG4C,EAAG5C,EAAE,GAAK,EAAGuD,EAAIgB,KAAO3B,EAAG5C,GAE7DuD,EAAMA,EAAIG,MAAM,EAAEa,OACb,IAAGvC,OAAOyB,SAASJ,GAAO,CAC/B,IAAI3D,EAAI6E,EAAI,EAAG7E,EAAIqD,IAAOrD,EAAG,CAC3BF,EAAI6D,EAAK3D,EACT,IAAGF,EAAI,IAAKQ,EAAIR,MACX,IAAGA,EAAI,IAAK,CAAEQ,IAAMR,EAAE,KAAK,IAAI6D,EAAK3D,EAAE,GAAG,MAAOA,MAChD,IAAGF,EAAI,IAAK,CAAEQ,IAAMR,EAAE,KAAK,MAAM6D,EAAK3D,EAAE,GAAG,KAAK,IAAI2D,EAAK3D,EAAE,GAAG,GAAKA,IAAG,MACtE,CAAEM,IAAMR,EAAE,IAAI,MAAM6D,EAAK3D,EAAE,GAAG,KAAK,MAAM2D,EAAK3D,EAAE,GAAG,KAAK,IAAI2D,EAAK3D,EAAE,GAAG,GAAKA,IAAG,EACnF,GAAGM,EAAE,MAAO,CAAEA,GAAG,CAAGuD,GAAIgB,KAAO3B,EAAG5C,EAAE,IAAM4C,EAAG5C,EAAI,IAAG4C,EAAG5C,EAAE,GAAK,EAAGuD,EAAIgB,KAAO3B,EAAG5C,OAC1E,CAAEsE,EAAKtE,EAAE,KACZA,GAAE,GAAG,OAAWsE,GAAI,GAAI,MAAQf,GAAIgB,KAAO3B,EAAG5C,EAAE,IAAM4C,EAAG5C,EAAI,IAAG4C,EAAG5C,EAAE,GAAK,EAAGuD,EAAIgB,KAAO3B,EAAG5C,EAC3FA,GAAE,GAAG,OAAUsE,EAAG,MAAQf,GAAIgB,KAAO3B,EAAG5C,EAAE,IAAM4C,EAAG5C,EAAI,IAAG4C,EAAG5C,EAAE,GAAK,EAAGuD,EAAIgB,KAAO3B,EAAG5C,IAGzFuD,EAAMA,EAAIG,MAAM,EAAEa,OACb,CACL,IAAI7E,EAAI6E,EAAI,EAAG7E,EAAIqD,EAAKrD,IAAK,CAC3BM,EAAIqD,EAAK3D,GAAGE,WAAW,GAAG,CAC1B2D,GAAIgB,KAAO3B,EAAG5C,EAAE,IAAM4C,EAAG5C,EAAI,IAAG4C,EAAG5C,EAAE,GAAK,EAAGuD,EAAIgB,KAAO3B,EAAG5C,IAG/D,IAAIsD,GAAQA,IAAS,MAAO,MAAOC,EACnC,IAAGD,IAAS,MAAO,MAAOC,GAAII,SAAS,SACvC,UAAUD,MAAME,KAAKL,IAGzB,IAAIiB,GAAc,QAASC,GAAiBtB,GAC1C,GAAI3D,GAAIe,EAAI4C,GAAIpD,GAChB,IAAIgE,GAAK/B,OAAOM,YAAY,QAAS/C,EAAE,EAAGyE,EAAGR,EAAE,EAAGxD,EAAE,EAAGN,EAAE,CACzD,KAAIA,EAAI,EAAGA,EAAI,QAASA,EAAG,CAAEqE,EAAG,EAAErE,GAAK,GAAMqE,GAAG,EAAErE,EAAE,GAAK,IACzD,IAAIH,EAAI,EAAGA,EAAIC,EAAEG,SAAUJ,EAAG,CAC5B,KAAKyE,EAAExE,EAAED,IAAK,QACdiE,GAAIQ,EAAEpE,WAAW,EACjBI,GAAI,EAAET,CACNwE,GAAG/D,GAAKwD,EAAE,GAAKO,GAAG/D,EAAE,GAAKwD,GAAG,EAE9B,MAAO,SAASkB,GAAOrB,GACrB,GAAIN,GAAMM,EAAK1D,OAAQ4D,EAAMvB,OAAOM,YAAY,EAAES,GAAMrD,EAAE,EAAGM,EAAE,EAAGuE,EAAE,CACpE,IAAGvC,OAAOyB,SAASJ,GAAO,CACxB,IAAI3D,EAAI,EAAGA,EAAIqD,EAAKrD,IAAK,CACvBM,EAAI,EAAEqD,EAAK3D,EACX,IAAGqE,EAAG/D,KAAK,KAAQ+D,EAAG/D,EAAE,KAAK,IAAM,CAAEA,EAAE,IAAIqD,EAAK3D,IAAI,GAAG2D,EAAK3D,EAAE,MAAOA,EACrE6D,EAAIgB,KAAOR,EAAG/D,EAAIuD,GAAIgB,KAAOR,EAAG/D,EAAE,QAE/B,UAAUqD,KAAS,SAAU,CAClC,IAAI3D,EAAI,EAAGA,EAAIqD,EAAKrD,IAAK,CACvBM,EAAI,EAAEqD,EAAKzD,WAAWF,EACtB,IAAGqE,EAAG/D,KAAK,KAAQ+D,EAAG/D,EAAE,KAAK,IAAM,CAAEA,EAAE,IAAIqD,EAAKzD,WAAWF,IAAI,GAAG2D,EAAKzD,WAAWF,EAAE,MAAOA,EAC3F6D,EAAIgB,KAAOR,EAAG/D,EAAIuD,GAAIgB,KAAOR,EAAG/D,EAAE,QAE/B,CACL,IAAIN,EAAI,EAAGA,EAAIqD,EAAKrD,IAAK,CACvBM,EAAI,EAAEqD,EAAK3D,EACX,IAAGqE,EAAG/D,KAAK,KAAQ+D,EAAG/D,EAAE,KAAK,IAAM,CAAEA,EAAE,IAAIqD,EAAK3D,IAAI,GAAG2D,EAAK3D,EAAE,MAAOA,EACrE6D,EAAIgB,KAAOR,EAAG/D,EAAIuD,GAAIgB,KAAOR,EAAG/D,EAAE,IAGtC,MAAOuD,GAAIG,MAAM,EAAEa,GAAGZ,SAAS,SAGnCrC,GAAa,OAAS,QAASqD,GAAOtB,GACpC,SAAUA,KAAS,SAAU,MAAOsB,GAAOtB,EAAKpD,MAAM,IAAI2E,IAAI9C,GAC9D,IAAIiB,GAAMM,EAAK1D,OAAQ6D,EAAI,EAAGqB,EAAK,CACnC,IAAG,EAAI9B,EAAMP,EAAK,CAAEA,EAAM,EAAIO,CAAKN,GAAMT,OAAOM,YAAYE,GAC5D,GAAI9C,GAAI,CACR,IAAGqD,GAAO,GAAKM,EAAK,IAAM,IAAM,GAAGA,EAAK,IAAM,KAAQA,EAAK,IAAM,IAAM3D,EAAI,CAC3E,KAAI,GAAIM,GAAI,EAAGuE,EAAI,EAAG/E,EAAI,EAAGE,EAAIqD,EAAKrD,GAAGM,EAAG,CAC1CA,EAAI,CAAGR,GAAI6D,EAAK3D,EAChB,IAAGF,EAAI,IAAKgE,EAAIhE,MACX,IAAGA,EAAI,IAAK,CAAEgE,GAAGhE,EAAE,IAAI,IAAI6D,EAAK3D,EAAE,GAAG,GAAKM,GAAE,MAC5C,IAAGR,EAAI,IAAK,CAAEgE,IAAIhE,EAAE,KAAK,KAAK6D,EAAK3D,EAAE,GAAG,IAAI,IAAI2D,EAAK3D,EAAE,GAAG,GAAKM,GAAE,MACjE,CAAEwD,GAAGhE,EAAE,GAAG,SAAS6D,EAAK3D,EAAE,GAAG,KAAK,KAAK2D,EAAK3D,EAAE,GAAG,IAAI,IAAI2D,EAAK3D,EAAE,GAAG,GAAKM,GAAE,EAC/E,GAAGwD,EAAI,MAAO,CAAEf,EAAI8B,KAAOf,EAAE,GAAKf,GAAI8B,KAAOf,GAAG,MAC3C,CACHA,GAAK,KAAOqB,GAAK,OAAWrB,GAAG,GAAI,KAAOA,GAAI,OAAUA,EAAE,KAC1Df,GAAI8B,KAAOM,EAAG,GAAKpC,GAAI8B,KAAOM,IAAK,CAAGpC,GAAI8B,KAAOf,EAAE,GAAKf,GAAI8B,KAAQf,IAAI,EAAG,KAG/E,MAAOf,GAAIiB,MAAM,EAAEa,GAAGZ,SAAS,QAEjCpC,GAAa,OAAS,QAASuD,GAAOzB,EAAMC,GAC1C,GAAGvB,GAAWC,OAAOyB,SAASJ,GAAO,CACnC,IAAIC,GAAQA,IAAS,MAAO,MAAOD,EACnC,IAAGC,IAAS,MAAO,MAAOD,GAAKM,SAAS,SACxC,UAAUD,MAAME,KAAKP,GAEvB,GAAIN,GAAMM,EAAK1D,OAAQ6D,EAAI,EAAGqB,EAAK,EAAG7E,EAAI,CAC1C,IAAI+E,SAAgB1B,KAAS,QAC7B,IAAG,EAAIN,EAAMP,EAAK,CAAEA,EAAM,EAAIO,CAAKN,GAAMT,OAAOM,YAAYE,GAC5D,IAAI,GAAI9C,GAAI,EAAGA,EAAIqD,IAAOrD,EAAG,CAC3B8D,EAAIuB,EAAS1B,EAAKzD,WAAWF,GAAK2D,EAAK3D,GAAGE,WAAW,EACrD,IAAG4D,GAAK,IAAQf,EAAIzC,KAAOwD,MACtB,IAAGA,GAAK,KAAQ,CACnBf,EAAIzC,KAAO,KAAOwD,GAAK,EACvBf,GAAIzC,KAAO,KAAOwD,EAAE,QACf,IAAGA,GAAK,OAAUA,GAAK,MAAQ,CACpCA,GAAK,QAAU9D,CACfmF,IAAME,EAAS1B,EAAKzD,WAAWF,GAAK2D,EAAK3D,GAAGE,WAAW,IAAM,OAAU4D,GAAK,GAC5Ef,GAAIzC,KAAO,KAAQ6E,IAAK,GAAM,EAC9BpC,GAAIzC,KAAO,KAAQ6E,IAAK,GAAM,GAC9BpC,GAAIzC,KAAO,KAAQ6E,IAAK,EAAK,GAC7BpC,GAAIzC,KAAO,KAAO6E,EAAK,QAClB,CACLpC,EAAIzC,KAAO,KAAOwD,GAAK,GACvBf,GAAIzC,KAAO,KAAQwD,GAAK,EAAG,GAC3Bf,GAAIzC,KAAO,KAAOwD,EAAE,KAGxB,IAAIF,GAAQA,IAAS,MAAO,MAAOb,GAAIiB,MAAM,EAAE1D,EAC/C,IAAGsD,IAAS,MAAO,MAAOb,GAAIiB,MAAM,EAAE1D,GAAG2D,SAAS,SAClD,UAAUD,MAAME,KAAKnB,EAAK,EAAGzC,IAIjC,GAAIgF,GAAU,QAASA,KACrB,GAAGjD,EAAS,CACV,GAAGP,EAASL,EAAW,IAAK,MAC5B,IAAIzB,GAAE,EAAGuF,EAAE,CACX,KAAIvF,EAAI,EAAGA,EAAIyB,EAAWxB,SAAUD,EAAG,CACrCuF,EAAI9D,EAAWzB,EACf,IAAGa,EAAI0E,GAAI,CACTzD,EAASyD,GAAKpB,EAAYoB,EAC1BxD,GAASwD,GAAKhC,EAAYgC,IAG9B,IAAIvF,EAAI,EAAGA,EAAI0B,EAAWzB,SAAUD,EAAG,CACrCuF,EAAI7D,EAAW1B,EACf,IAAGa,EAAI0E,GAAI,CACTzD,EAASyD,GAAKT,EAAYS,EAC1BxD,GAASwD,GAAKf,EAAYe,IAG9B,IAAIvF,EAAI,EAAGA,EAAI2B,EAAY1B,SAAUD,EAAG,CACtCuF,EAAI5D,EAAY3B,EAChB,IAAG4B,EAAa2D,GAAIzD,EAASyD,GAAK3D,EAAa2D,EAC/C,IAAG1D,EAAa0D,GAAIxD,EAASwD,GAAK1D,EAAa0D,KAIrD,IAAIC,GAAW,SAAS7B,EAAMC,OAAaA,EAAM,OAAO,GACxD,IAAI6B,GAAa,QAASA,GAAWhC,SAAa3B,GAAS2B,SAAY1B,GAAS0B,GAChF,IAAIiC,GAAU,QAASA,KACrB,GAAGrD,EAAS,CACV,IAAIP,EAASL,EAAW,IAAK,MAC7BA,GAAWkE,QAAQF,EACnB/D,GAAWiE,QAAQF,EACnB9D,GAAYgE,QAAQF,GAEtBG,EAAWJ,CAAUK,GAAU,EAEjC,IAAIC,IACFR,QAASA,EACTI,QAASA,EACTK,KAAMtE,EACNuE,KAAMtE,EAGR4D,IAEA,IAAIW,GAAK,kEACT,IAAIC,GAAO,yEACX,IAAIN,GAAWJ,EAAUK,EAAU,CACnC,IAAIM,GAAS,QAASA,GAAO1C,EAAIE,EAAMC,GACrC,GAAGH,IAAOoC,GAAWD,EAAU,CAAE,MAAOA,GAASjC,EAAMC,GACvD,GAAG7B,EAAS0B,GAAK,CAAEmC,EAAW7D,EAAS8D,EAAQpC,EAAK,OAAOmC,GAASjC,EAAMC,GAC1E,GAAGvB,GAAWC,OAAOyB,SAASJ,GAAOA,EAAOA,EAAKM,SAAS,OAC1D,IAAIZ,GAAMM,EAAK1D,MACf,IAAI4D,GAAMxB,EAAUC,OAAOM,YAAY,EAAES,MAAWS,EAAE,EAAG9D,EAAE,EAAGM,EAAI,EAAG6E,EAAG,CACxE,IAAIiB,GAAIvF,EAAI4C,GAAKR,EAAGoD,EAAI,EACxB,IAAIC,SAAe3C,KAAS,QAC5B,IAAGyC,IAAMnD,EAAEmD,EAAEhG,KAAM,IAAIJ,EAAI,EAAGA,EAAIqD,IAAOrD,IAAKM,EAAG,CAC/CwD,EAAIb,EAAEqD,EAAO3C,EAAKxD,OAAOH,GAAK2D,EAAK3D,GACnC,IAAG8D,EAAI,IAAK,CACVD,EAAIvD,GAAKwD,GAAG,CACZD,KAAMvD,GAAKwD,EAAE,QACRD,GAAIvD,GAAKwD,EAAE,QAEf,IAAIuC,EAAErF,EAAMyC,GAAM,OAAO4C,GAC5B,IAAK,OACH,GAAGhE,GAAWiE,EAAO,CAAEzC,EAAMtB,EAAYoB,EAAM0C,EAAI/F,GAAIuD,EAAI5D,MAAQ,OACnE,IAAID,EAAI,EAAGA,EAAIqD,IAAOrD,IAAKM,EAAG,CAC5BwD,EAAIwC,EAAQ3C,EAAKzD,WAAWF,GAAK2D,EAAK3D,GAAGE,WAAW,EACpD,IAAG4D,GAAK,IAAQD,EAAIvD,GAAKwD,MACpB,IAAGA,GAAK,KAAQ,CACnBD,EAAIvD,GAAO,KAAOwD,GAAK,EACvBD,KAAMvD,GAAK,KAAOwD,EAAE,QACf,IAAGA,GAAK,OAAUA,GAAK,MAAQ,CACpCA,GAAK,KACLqB,IAAMmB,EAAQ3C,EAAKzD,aAAaF,GAAK2D,IAAO3D,GAAGE,WAAW,IAAM,OAAU4D,GAAK,GAC/ED,GAAIvD,GAAO,KAAQ6E,IAAK,GAAM,EAC9BtB,KAAMvD,GAAK,KAAQ6E,IAAK,GAAM,GAC9BtB,KAAMvD,GAAK,KAAQ6E,IAAK,EAAK,GAC7BtB,KAAMvD,GAAK,KAAO6E,EAAK,QAClB,CACLtB,EAAIvD,GAAO,KAAOwD,GAAK,GACvBD,KAAMvD,GAAK,KAAQwD,GAAK,EAAG,GAC3BD,KAAMvD,GAAK,KAAOwD,EAAE,KAGxB,MACF,IAAK,QACH,GAAGzB,SAAkBsB,KAAS,SAAU,CAAEE,EAAMtB,EAAYoB,EAAM0C,EAAI/F,GAAIuD,EAAI5D,MAAQ,OACtF,IAAID,EAAI,EAAGA,EAAIqD,IAAOrD,IAAKM,EAAG,CAC5BwD,EAAIwC,EAAQ3C,EAAKzD,WAAWF,GAAK2D,EAAK3D,GAAGE,WAAW,EACpD,IAAG4D,GAAK,IAAQD,EAAIvD,GAAKwD,MACpB,MAAM,IAAIhD,OAAM,aAAegD,GAEtC,MACF,IAAK,UACH,GAAGzB,SAAkBsB,KAAS,SAAU,CAAEE,EAAMtB,EAAYoB,EAAM0C,EAAI/F,GAAIuD,EAAI5D,MAAQ,OACtF,IAAID,EAAI,EAAGA,EAAIqD,IAAOrD,EAAG,CACvB8D,EAAIwC,EAAQ3C,EAAKzD,WAAWF,GAAK2D,EAAK3D,GAAGE,WAAW,EACpD2D,GAAIvD,KAAOwD,EAAE,GACbD,GAAIvD,KAAOwD,GAAG,EAEhB,MACF,IAAK,UACH,IAAI9D,EAAI,EAAGA,EAAIqD,IAAOrD,EAAG,CACvB8D,EAAIwC,EAAQ3C,EAAKzD,WAAWF,GAAK2D,EAAK3D,GAAGE,WAAW,EACpD2D,GAAIvD,KAAOwD,GAAG,CACdD,GAAIvD,KAAOwD,EAAE,IAEf,MACF,IAAK,UACH,IAAI9D,EAAI,EAAGA,EAAIqD,IAAOrD,EAAG,CACvB8D,EAAIwC,EAAQ3C,EAAKzD,WAAWF,GAAK2D,EAAK3D,GAAGE,WAAW,EACpD,IAAG4D,GAAK,OAAUA,GAAK,MAAQA,EAAI,OAAYA,EAAI,OAAW,KAAOH,IAAO3D,GAAGE,WAAW,GAAK,MAC/F2D,GAAIvD,KAAOwD,EAAE,GAAKA,KAAM,CACxBD,GAAIvD,KAAOwD,EAAE,GAAKA,KAAM,CACxBD,GAAIvD,KAAOwD,EAAE,GAAKA,KAAM,CACxBD,GAAIvD,KAAOwD,EAAE,IAEf,MACF,IAAK,UACH,IAAI9D,EAAI,EAAGA,EAAIqD,IAAOrD,EAAG,CACvB8D,EAAIwC,EAAQ3C,EAAKzD,WAAWF,GAAK2D,EAAK3D,GAAGE,WAAW,EACpD,IAAG4D,GAAK,OAAUA,GAAK,MAAQA,EAAI,OAAYA,EAAI,OAAW,KAAOH,IAAO3D,GAAGE,WAAW,GAAK,MAC/F2D,GAAIvD,EAAE,GAAKwD,EAAE,GAAKA,KAAM,CACxBD,GAAIvD,EAAE,GAAKwD,EAAE,GAAKA,KAAM,CACxBD,GAAIvD,EAAE,GAAKwD,EAAE,GAAKA,KAAM,CACxBD,GAAIvD,GAAKwD,EAAE,GACXxD,IAAG,EAEL,MACF,IAAK,OACH,IAAIN,EAAI,EAAGA,EAAIqD,EAAKrD,IAAK,CACvB,GAAIsE,GAAIgC,EAAQ3C,EAAKxD,OAAOH,GAAK2D,EAAK3D,GAAGG,OAAO,EAChD,IAAGmE,IAAM,IAAK,CAAET,EAAIvD,KAAO,EAAMuD,GAAIvD,KAAO,EAAM,UAClD,GAAG4F,EAAKK,QAAQjC,IAAM,EAAG,CAAET,EAAIvD,KAAOgE,EAAEpE,WAAW,EAAI,UACvD,GAAIsG,GAAKL,EAAO,KAAM7B,EACtBT,GAAIvD,KAAO,EACXuD,GAAIvD,KAAO2F,EAAG/F,WAAWsG,EAAG,IAAI,EAChC3C,GAAIvD,KAAO2F,EAAG/F,aAAasG,EAAG,GAAG,IAAO,KAAOA,EAAG,IAAI,IAAI,GAC1D3C,GAAIvD,KAAO2F,EAAG/F,aAAasG,EAAG,GAAG,KAAO,KAAOA,EAAG,IAAI,IAAI,GAC1D3C,GAAIvD,KAAO,GAEb,MACF,QAAS,KAAM,IAAIQ,OAAM,sBAAwB2C,EAAK,IAAMzC,EAAMyC,SAE/D,MAAM,IAAI3C,OAAM,oBAAsB2C,EAC3CI,GAAMA,EAAIG,MAAM,EAAE1D,EAClB,KAAI+B,EAAS,MAAQuB,IAAQ,MAAS,EAAMsB,IAAIlD,GAAMyE,KAAK,IAAM5C,CACjE,KAAID,GAAQA,IAAS,MAAO,MAAOC,EACnC,IAAGD,IAAS,MAAO,MAAOC,GAAII,SAAS,SACvC,UAAUD,MAAME,KAAKL,GAEvB,IAAI6C,GAAS,QAASA,GAAOjD,EAAIE,GAC/B,GAAIgD,EAAG,IAAIA,EAAE7E,EAAS2B,GAAM,MAAOkD,GAAEhD,EACrC,UAAUA,KAAS,SAAU,MAAO+C,GAAOjD,EAAIE,EAAKpD,MAAM,IAAI2E,IAAI9C,GAClE,IAAIiB,GAAMM,EAAK1D,OAAQ4D,EAAM,GAAI+C,OAAMvD,GAAMkC,EAAE,GAAIzB,EAAE,EAAG9D,EAAE,EAAGM,EAAE,EAAGuE,EAAE,EAAGM,EAAG,CAC1E,IAAIiB,GAAIvF,EAAI4C,GAAK3D,EAAGuG,EAAE,EACtB,IAAGD,IAAMtG,EAAEsG,EAAE/F,KAAM,CACjB,IAAIL,EAAI,EAAGA,EAAIqD,EAAKrD,GAAGM,EAAG,CACxBA,EAAI,CACJiF,GAAIzF,GAAG6D,EAAK3D,IAAI,GAAI2D,EAAK3D,EAAE,GAC3B,KAAIuF,EAAG,CACLjF,EAAI,CACJiF,GAAIzF,EAAE6D,EAAK3D,IAEb,IAAIuF,EAAG,KAAM,IAAIzE,OAAM,sBAAwB6C,EAAK3D,GAAK,IAAM2D,EAAK3D,EAAEM,EAAE,GAAK,IAAMN,EAAI,IAAMM,EAAI,IAAMR,EAAE6D,EAAK3D,IAC9G6D,GAAIgB,KAAOU,OAGV,IAAIc,EAAErF,EAAMyC,GAAM,OAAO4C,GAC5B,IAAK,OACH,GAAGhD,GAAO,GAAKM,EAAK,IAAM,IAAM,GAAGA,EAAK,IAAM,KAAQA,EAAK,IAAM,IAAM3D,EAAI,CAC3E,MAAMA,EAAIqD,EAAKrD,GAAGM,EAAG,CACnBA,EAAI,CACJ,IAAGqD,EAAK3D,GAAK,IAAK8D,EAAIH,EAAK3D,OACtB,IAAG2D,EAAK3D,GAAK,IAAK,CAAE8D,GAAGH,EAAK3D,GAAG,IAAI,IAAI2D,EAAK3D,EAAE,GAAG,GAAKM,GAAE,MACxD,IAAGqD,EAAK3D,GAAK,IAAK,CAAE8D,IAAIH,EAAK3D,GAAG,KAAK,KAAK2D,EAAK3D,EAAE,GAAG,IAAI,IAAI2D,EAAK3D,EAAE,GAAG,GAAKM,GAAE,MAC7E,CAAEwD,GAAGH,EAAK3D,GAAG,GAAG,SAAS2D,EAAK3D,EAAE,GAAG,KAAK,KAAK2D,EAAK3D,EAAE,GAAG,IAAI,IAAI2D,EAAK3D,EAAE,GAAG,GAAKM,GAAE,EACrF,GAAGwD,EAAI,MAAO,CAAED,EAAIgB,KAAO3C,OAAOC,aAAa2B,OAC1C,CACHA,GAAK,KAAOqB,GAAK,OAAWrB,GAAG,GAAI,KAAOA,GAAI,OAAUA,EAAE,KAC1DD,GAAIgB,KAAO3C,OAAOC,aAAagD,EAAKtB,GAAIgB,KAAO3C,OAAOC,aAAa2B,IAGvE,MACF,IAAK,QACH,GAAGzB,GAAWC,OAAOyB,SAASJ,GAAO,MAAOA,GAAKM,SAASoC,EAC1D,KAAIrG,EAAI,EAAGA,EAAIqD,EAAKrD,IAAK6D,EAAI7D,GAAKkC,OAAOC,aAAawB,EAAK3D,GAC3D6E,GAAIxB,CAAK,OACX,IAAK,UACH,GAAGA,GAAO,GAAKM,EAAK,IAAM,IAAM,GAAGA,EAAK,IAAM,IAAM3D,EAAI,CACxD,IAAGqC,GAAWC,OAAOyB,SAASJ,GAAO,MAAOA,GAAKM,SAASoC,EAC1D/F,GAAI,CACJ,MAAMN,EAAE,EAAIqD,EAAKrD,GAAGM,EAAG,CACrBuD,EAAIgB,KAAO3C,OAAOC,cAAcwB,EAAK3D,EAAE,IAAI,GAAK2D,EAAK3D,IAEvD,MACF,IAAK,UACH,GAAGqD,GAAO,GAAKM,EAAK,IAAM,IAAM,GAAGA,EAAK,IAAM,IAAM3D,EAAI,CACxDM,GAAI,CACJ,MAAMN,EAAE,EAAIqD,EAAKrD,GAAGM,EAAG,CACrBuD,EAAIgB,KAAO3C,OAAOC,cAAcwB,EAAK3D,IAAI,GAAK2D,EAAK3D,EAAE,IAEvD,MACF,IAAK,UACH,GAAGqD,GAAO,GAAKM,EAAK,IAAM,IAAM,GAAGA,EAAK,IAAM,KAAQA,EAAK,KAAO,GAAKA,EAAK,KAAO,EAAG3D,EAAI,CAC1FM,GAAI,CACJ,MAAMN,EAAIqD,EAAKrD,GAAGM,EAAG,CACnBwD,GAAKH,EAAK3D,EAAE,IAAI,KAAO2D,EAAK3D,EAAE,IAAI,KAAO2D,EAAK3D,EAAE,IAAI,GAAM2D,EAAK3D,EAC/D,IAAG8D,EAAI,MAAQ,CACbA,GAAK,KACLD,GAAIgB,KAAO3C,OAAOC,aAAa,OAAW2B,GAAK,GAAM,MACrDD,GAAIgB,KAAO3C,OAAOC,aAAa,OAAU2B,EAAI,WAE1CD,GAAIgB,KAAO3C,OAAOC,aAAa2B,GAEtC,MACF,IAAK,UACH,GAAGT,GAAO,GAAKM,EAAK,IAAM,IAAM,GAAGA,EAAK,IAAM,KAAQA,EAAK,KAAO,GAAKA,EAAK,KAAO,EAAG3D,EAAI,CAC1FM,GAAI,CACJ,MAAMN,EAAIqD,EAAKrD,GAAGM,EAAG,CACnBwD,GAAKH,EAAK3D,IAAI,KAAO2D,EAAK3D,EAAE,IAAI,KAAO2D,EAAK3D,EAAE,IAAI,GAAM2D,EAAK3D,EAAE,EAC/D,IAAG8D,EAAI,MAAQ,CACbA,GAAK,KACLD,GAAIgB,KAAO3C,OAAOC,aAAa,OAAW2B,GAAK,GAAM,MACrDD,GAAIgB,KAAO3C,OAAOC,aAAa,OAAU2B,EAAI,WAE1CD,GAAIgB,KAAO3C,OAAOC,aAAa2B,GAEtC,MACF,IAAK,OACH,GAAGT,GAAO,GAAKM,EAAK,IAAM,IAAQA,EAAK,IAAM,IAAQA,EAAK,IAAM,IAAM,CACpE,GAAGN,GAAO,GAAKM,EAAK,IAAM,IAAQA,EAAK,IAAM,GAAM3D,EAAI,MAClD,IAAG2D,EAAK,IAAM,IAAQA,EAAK,IAAM,IAAQA,EAAK,IAAM,IAAQA,EAAK,IAAM,GAAM3D,EAAI,EAExF,KAAMA,EAAIqD,EAAKrD,GAAGM,EAAG,CACnB,GAAGqD,EAAK3D,KAAO,GAAM,CAAEM,EAAE,CAAGuD,GAAIgB,KAAO3C,OAAOC,aAAawB,EAAK3D,GAAK,UACrEM,EAAE,CACF,IAAGqD,EAAK3D,EAAE,KAAO,GAAM,CAAEM,EAAI,CAAGuD,GAAIgB,KAAO,GAAK,UAEhD,MAAM3C,OAAOC,aAAawB,EAAK3D,EAAEM,IAAIuG,MAAM,kBAAmBvG,GAC9D,IAAIwG,GAAO,CACX,IAAGnD,EAAK3D,EAAEM,KAAO,GAAM,GAAIA,CAAGwG,GAAK,EACnC,GAAIN,KACJ,IAAIO,GAAM,EACV,IAAIC,GAAG,EAAGC,EAAG,EAAGC,EAAG,CACnB,IAAIC,GAAG,EAAGC,EAAG,EAAGC,EAAG,EAAGC,EAAG,CACzB,KAAI,GAAIC,GAAI,EAAGA,EAAIjH,EAAIwG,GAAO,CAC5BK,EAAKlB,EAAGM,QAAQrE,OAAOC,aAAawB,EAAK3D,EAAEuH,MAC3CH,GAAKnB,EAAGM,QAAQrE,OAAOC,aAAawB,EAAK3D,EAAEuH,MAC3CP,GAAKG,GAAM,EAAIC,GAAM,CACrBZ,GAAGgB,KAAKR,EACRK,GAAKpB,EAAGM,QAAQrE,OAAOC,aAAawB,EAAK3D,EAAEuH,MAC3C,IAAGF,KAAQ,EAAG,KACdJ,IAAMG,EAAK,KAAO,EAAIC,GAAM,CAC5Bb,GAAGgB,KAAKP,EACRK,GAAKrB,EAAGM,QAAQrE,OAAOC,aAAawB,EAAK3D,EAAEuH,MAC3C,IAAGD,KAAQ,EAAG,KACdJ,IAAMG,EAAK,IAAM,EAAIC,CACrB,IAAGA,EAAK,GAAId,EAAGgB,KAAKN,GAEtBH,EAAML,EAAO,KAAMF,EACnB,KAAIe,EAAI,EAAGA,EAAIR,EAAI9G,SAAUsH,EAAG1D,EAAIgB,KAAOkC,EAAI5G,OAAOoH,GAExD,MACF,QAAS,KAAM,IAAIzG,OAAM,sBAAwB2C,EAAK,IAAMzC,EAAMyC,SAE/D,MAAM,IAAI3C,OAAM,oBAAsB2C,EAC3C,OAAOI,GAAIG,MAAM,EAAEa,GAAG4B,KAAK,IAE7B,IAAIgB,GAAQ,QAASA,GAAMhE,GAAM,SAAU5C,EAAI4C,IAAOzC,EAAMyC,IAC5D5C,GAAI6G,OAAUhB,OAAQA,EAAQP,OAAQA,EAAQsB,MAAOA,EAAOzG,MAAOA,EAAO8E,MAAMA,EAChF,OAAOjF,IC59CT,IAAI8G,QACJ,SAASC,eAAcD,GACvBA,EAAK/H,QAAU,SACf,IAAIiI,GAAmB,KAAMC,EAAe,IAE5C,IAAIC,EAEJ,IAAIC,IAAe,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAElG,IAAIC,IACJC,EAAM,KACNC,EAAK,MACLC,EAAK,MACLC,GAAK,IACLC,IAAO,IACPC,IAAO,IACPC,IAAM,KACNC,IAAO,IACPC,IAAO,IACPC,IAAM,KACNC,IAAM,KACNC,IAAM,KACNC,IAAM,KACNC,IAAM,KACNC,IAAM,KACNC,IAAM,KACNC,IAAO,IACPC,IAAM,KACNC,IAAM,KACNC,GAAM,KAGN,IAAIC,GAAW,SAAS7F,GAAM,GAAGuE,EAAWzB,QAAQ9C,KAAQ,EAAG,MAAQqE,GAAeG,EAAM,GAAKxE,EACjG,SAAS8F,KAAeD,EAAS,MAEjC,GAAIE,GAAS,SAAS/F,GAAMoE,EAAmBpE,CAAI6F,GAAS7F,GAC5D,SAASgG,KAAaD,EAAO,KAAOD,KAEpC,QAASG,GAAW/F,GAAQ,GAAIgG,KAAQ,KAAI,GAAI3J,GAAI,EAAGqD,EAAMM,EAAK1D,OAAQD,EAAIqD,IAAOrD,EAAG2J,EAAE3J,GAAK2D,EAAKzD,WAAWF,EAAI,OAAO2J,GAE1H,QAASC,GAAYjG,GACpB,GAAIgG,KACJ,KAAI,GAAI3J,GAAI,EAAGA,EAAK2D,EAAK1D,QAAQ,IAAMD,EAAG2J,EAAE3J,GAAKkC,OAAOC,aAAawB,EAAKzD,WAAW,EAAEF,IAAM2D,EAAKzD,WAAW,EAAEF,EAAE,IAAI,GACrH,OAAO2J,GAAElD,KAAK,IAEf,QAASoD,GAAYlG,GACpB,GAAIgG,KACJ,KAAI,GAAI3J,GAAI,EAAGA,EAAK2D,EAAK1D,QAAQ,IAAMD,EAAG2J,EAAE3J,GAAKkC,OAAOC,aAAawB,EAAKzD,WAAW,EAAEF,EAAE,IAAM2D,EAAKzD,WAAW,EAAEF,IAAI,GACrH,OAAO2J,GAAElD,KAAK,IAGf,GAAIqD,GAAQ,SAASnG,GACpB,GAAIqD,GAAKrD,EAAKzD,WAAW,GAAI+G,EAAKtD,EAAKzD,WAAW,EAClD,IAAG8G,GAAM,KAAQC,GAAM,IAAM,MAAO2C,GAAYjG,EAAKK,MAAM,GAC3D,IAAGgD,GAAM,KAAQC,GAAM,IAAM,MAAO4C,GAAYlG,EAAKK,MAAM,GAC3D,IAAGgD,GAAM,MAAQ,MAAOrD,GAAKK,MAAM,EACnC,OAAOL,GAGR,IAAIoG,GAAW,QAASC,IAAK/H,GAAK,MAAOC,QAAOC,aAAaF,GAC7D,IAAIgI,GAAW,QAASC,IAAKjI,GAAK,MAAOC,QAAOC,aAAaF,GAE7D,SAASkI,GAAYxK,GACpBoI,EAAWpI,CACX6J,GAAS,SAAS/F,GAAMoE,EAAmBpE,CAAI6F,GAAS7F,GACxDqG,GAAQ,SAASnG,GAChB,GAAGA,EAAKzD,WAAW,KAAO,KAAQyD,EAAKzD,WAAW,KAAO,IAAM,CAAE,MAAO6H,GAASL,MAAMhB,OAAO,KAAMgD,EAAW/F,EAAKK,MAAM,KAC1H,MAAOL,GAERoG,GAAW,QAASK,GAAKnI,GACxB,GAAG4F,IAAqB,KAAM,MAAO3F,QAAOC,aAAaF,EACzD,OAAO8F,GAASL,MAAMhB,OAAOmB,GAAmB5F,EAAE,IAAIA,GAAG,IAAI,GAE9DgI,GAAW,QAASI,GAAKpI,GACxB,MAAO8F,GAASL,MAAMhB,OAAOoB,GAAe7F,IAAI,GAEjDqI,MAED,GAAIC,GAAQ,IACZ,IAAIC,GAAS,IACb,IAAIC,GAAa,mEACjB,SAASC,GAAcC,GACrB,GAAIhB,GAAI,EACR,IAAI3C,GAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,CACzD,KAAK,GAAItH,GAAI,EAAGA,EAAI2K,EAAM1K,QAAU,CAClC+G,EAAK2D,EAAMzK,WAAWF,IACtBmH,GAAKH,GAAM,CACXC,GAAK0D,EAAMzK,WAAWF,IACtBoH,IAAMJ,EAAK,IAAM,EAAIC,GAAM,CAC3BC,GAAKyD,EAAMzK,WAAWF,IACtBqH,IAAMJ,EAAK,KAAO,EAAIC,GAAM,CAC5BI,GAAKJ,EAAK,EACV,IAAI0D,MAAM3D,GAAK,CACbI,EAAKC,EAAK,OACL,IAAIsD,MAAM1D,GAAK,CACpBI,EAAK,GAEPqC,GAAKc,EAAWtK,OAAOgH,GAAMsD,EAAWtK,OAAOiH,GAAMqD,EAAWtK,OAAOkH,GAAMoD,EAAWtK,OAAOmH,GAEjG,MAAOqC,GAET,QAASkB,GAAmBF,GAC1B,GAAIhB,GAAI,EACR,IAAI3C,GAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,CACzD,KAAK,GAAItH,GAAI,EAAGA,EAAI2K,EAAM1K,QAAU,CAClC+G,EAAK2D,EAAMzK,WAAWF,IACtB,IAAIgH,EAAK,IACPA,EAAK,EACPG,GAAKH,GAAM,CACXC,GAAK0D,EAAMzK,WAAWF,IACtB,IAAIiH,EAAK,IACPA,EAAK,EACPG,IAAMJ,EAAK,IAAM,EAAIC,GAAM,CAC3BC,GAAKyD,EAAMzK,WAAWF,IACtB,IAAIkH,EAAK,IACPA,EAAK,EACPG,IAAMJ,EAAK,KAAO,EAAIC,GAAM,CAC5BI,GAAKJ,EAAK,EACV,IAAI0D,MAAM3D,GAAK,CACbI,EAAKC,EAAK,OACL,IAAIsD,MAAM1D,GAAK,CACpBI,EAAK,GAEPqC,GAAKc,EAAWtK,OAAOgH,GAAMsD,EAAWtK,OAAOiH,GAAMqD,EAAWtK,OAAOkH,GAAMoD,EAAWtK,OAAOmH,GAEjG,MAAOqC,GAET,QAASmB,GAAcH,GACrB,GAAIhB,GAAI,EACR,IAAI3C,GAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,CACzDqD,GAAQA,EAAMI,QAAQ,mCAAoC,IAAIA,QAAQ,eAAgB,GACtF,KAAK,GAAI/K,GAAI,EAAGA,EAAI2K,EAAM1K,QAAU,CAClCkH,EAAKsD,EAAWlE,QAAQoE,EAAMxK,OAAOH,KACrCoH,GAAKqD,EAAWlE,QAAQoE,EAAMxK,OAAOH,KACrCgH,GAAKG,GAAM,EAAIC,GAAM,CACrBuC,IAAKzH,OAAOC,aAAa6E,EACzBK,GAAKoD,EAAWlE,QAAQoE,EAAMxK,OAAOH,KACrCiH,IAAMG,EAAK,KAAO,EAAIC,GAAM,CAC5B,IAAIA,IAAO,GAAI,CACbsC,GAAKzH,OAAOC,aAAa8E,GAE3BK,EAAKmD,EAAWlE,QAAQoE,EAAMxK,OAAOH,KACrCkH,IAAMG,EAAK,IAAM,EAAIC,CACrB,IAAIA,IAAO,GAAI,CACbqC,GAAKzH,OAAOC,aAAa+E,IAG7B,MAAOyC,GAET,GAAItH,GAAU,WAAc,aAAcC,UAAW,mBAAsB0I,aAAc,wBAA+B,kBAAsBC,OAE9I,IAAI1I,GAAc,WACjB,SAAUD,UAAW,YAAa,CACjC,GAAIE,IAAQF,OAAOG,IACnB,KAAID,EAAM,IAAMF,OAAOG,KAAK,MAAO,QAAW,MAAM1C,GAAKyC,EAAO,KAChE,MAAOA,GAAO,SAASE,EAAKtC,GAAO,MAAO,GAAQ,GAAIkC,QAAOI,EAAKtC,GAAO,GAAIkC,QAAOI,IAAUJ,OAAOG,KAAKE,KAAKL,QAEhH,MAAO,gBAER,IAAI4I,GAAc,WACjB,SAAU5I,UAAW,YAAa,MAAO,MACzC,IAAIL,GAAIM,GAAa,GAAG,GACxB,KAAIN,EAAG,MAAO,MACd,IAAI0H,GAAI1H,EAAEgC,SAAS,UACnB,OAAO0F,GAAE1J,QAAU,IAIpB,SAASkL,GAAY9H,GAEpB,GAAGhB,EAAS,MAAOC,QAAO8I,MAAQ9I,OAAO8I,MAAM/H,GAAO,GAAIf,QAAOe,EACjE,cAAcgI,aAAc,YAAc,GAAIA,YAAWhI,GAAO,GAAIuD,OAAMvD,GAI3E,QAASiI,GAAejI,GAEvB,GAAGhB,EAAS,MAAOC,QAAOM,YAAcN,OAAOM,YAAYS,GAAO,GAAIf,QAAOe,EAC7E,cAAcgI,aAAc,YAAc,GAAIA,YAAWhI,GAAO,GAAIuD,OAAMvD,GAI3E,GAAIkI,GAAM,QAASA,IAAIhG,GACtB,GAAGlD,EAAS,MAAOE,GAAYgD,EAAG,SAClC,OAAOA,GAAEhF,MAAM,IAAI2E,IAAI,SAASjD,GAAI,MAAOA,GAAE/B,WAAW,GAAK,MAG9D,SAASsL,GAAKjG,GACb,SAAUkG,eAAgB,YAAa,MAAOF,GAAIhG,EAClD,IAAI7C,GAAM,GAAI+I,aAAYlG,EAAEtF,QAASyL,EAAO,GAAIL,YAAW3I,EAC3D,KAAK,GAAI1C,GAAE,EAAGA,GAAGuF,EAAEtF,SAAUD,EAAG0L,EAAK1L,GAAKuF,EAAErF,WAAWF,GAAK,GAC5D,OAAO0C,GAGR,QAASiJ,GAAIhI,GACZ,GAAGiD,MAAMgF,QAAQjI,GAAO,MAAOA,GAAKuB,IAAI,SAASZ,GAAK,MAAOpC,QAAOC,aAAamC,KAAOmC,KAAK,GAC7F,IAAIkD,KAAQ,KAAI,GAAI3J,GAAI,EAAGA,EAAI2D,EAAK1D,SAAUD,EAAG2J,EAAE3J,GAAKkC,OAAOC,aAAawB,EAAK3D,GAAK,OAAO2J,GAAElD,KAAK,IAGrG,QAASoF,GAAIlI,GACZ,SAAU0H,cAAe,YAAa,KAAM,IAAIvK,OAAM,cACtD,OAAO,IAAIuK,YAAW1H,GAGvB,QAASmI,GAAKnI,GACb,SAAU8H,cAAe,YAAa,KAAM,IAAI3K,OAAM,cACtD,IAAG6C,YAAgB8H,aAAa,MAAOK,GAAK,GAAIT,YAAW1H,GAC5D,IAAIgG,GAAI,GAAI/C,OAAMjD,EAAK1D,OACtB,KAAI,GAAID,GAAI,EAAGA,EAAI2D,EAAK1D,SAAUD,EAAG2J,EAAE3J,GAAK2D,EAAK3D,EACjD,OAAO2J,GAGR,GAAIoC,GAAU1J,EAAU,SAAS2J,GAAQ,MAAO1J,QAAO2J,OAAOD,EAAK9G,IAAI,SAASxC,GAAO,MAAOJ,QAAOyB,SAASrB,GAAOA,EAAMH,EAAYG,OAAe,SAASsJ,GAC9J,SAAUX,cAAe,YAAa,CACrC,GAAIrL,GAAI,EAAGkM,EAAS,CACpB,KAAIlM,EAAI,EAAGA,EAAIgM,EAAK/L,SAAUD,EAAGkM,GAAUF,EAAKhM,GAAGC,MACnD,IAAI0J,GAAI,GAAI0B,YAAWa,EACvB,IAAI7I,GAAM,CACV,KAAIrD,EAAI,EAAGkM,EAAS,EAAGlM,EAAIgM,EAAK/L,OAAQiM,GAAU7I,IAAOrD,EAAG,CAC3DqD,EAAM2I,EAAKhM,GAAGC,MACd,IAAG+L,EAAKhM,YAAcqL,YAAY1B,EAAEwC,IAAIH,EAAKhM,GAAIkM,OAC5C,UAAUF,GAAKhM,IAAM,SAAU2J,EAAEwC,IAAI,GAAId,YAAWE,EAAIS,EAAKhM,KAAMkM,OACnEvC,GAAEwC,IAAI,GAAId,YAAWW,EAAKhM,IAAKkM,GAErC,MAAOvC,GAER,SAAUsC,OAAOG,SAAUJ,EAAK9G,IAAI,SAASxC,GAAO,MAAOkE,OAAMgF,QAAQlJ,GAAOA,KAASsB,MAAME,KAAKxB,MAGrG,SAAS2J,GAAWC,GACnB,GAAIzI,MAAU0I,EAAO,EAAGC,EAAIF,EAAQrM,OAAS,GAC7C,IAAI0J,GAAIwB,EAAYmB,EAAQrM,OAAS,IACrC,KAAI,GAAIwM,GAAO,EAAGA,EAAOH,EAAQrM,SAAUwM,EAAM,CAChD,GAAInI,GAAIgI,EAAQpM,WAAWuM,EAC3B,IAAGnI,EAAI,IAAMqF,EAAE4C,KAAUjI,MACpB,IAAGA,EAAI,KAAO,CAClBqF,EAAE4C,KAAW,IAAMjI,GAAG,EAAG,EACzBqF,GAAE4C,KAAW,IAAKjI,EAAE,OACd,IAAGA,GAAK,OAAUA,EAAI,MAAQ,CACpCA,GAAKA,EAAE,MAAM,EACb,IAAIzE,GAAIyM,EAAQpM,aAAauM,GAAM,IACnC9C,GAAE4C,KAAW,IAAMjI,GAAG,EAAG,CACzBqF,GAAE4C,KAAW,IAAMjI,GAAG,EAAG,EACzBqF,GAAE4C,KAAW,IAAM1M,GAAG,EAAG,IAAMyE,EAAE,IAAI,CACrCqF,GAAE4C,KAAW,IAAK1M,EAAE,OACd,CACN8J,EAAE4C,KAAW,IAAMjI,GAAG,GAAI,EAC1BqF,GAAE4C,KAAW,IAAMjI,GAAG,EAAG,EACzBqF,GAAE4C,KAAW,IAAKjI,EAAE,GAErB,GAAGiI,EAAOC,EAAG,CACZ3I,EAAI2D,KAAKmC,EAAE3F,MAAM,EAAGuI,GACpBA,GAAO,CACP5C,GAAIwB,EAAY,MAChBqB,GAAI,OAGN3I,EAAI2D,KAAKmC,EAAE3F,MAAM,EAAGuI,GACpB,OAAOR,GAAQlI,GAGhB,GAAI6I,GAAO,UAAWC,EAAO,kBAG7B,SAASC,GAAQ3K,GAAK,GAAI0H,GAAI,GAAI3J,EAAIiC,EAAEhC,OAAO,CAAG,OAAMD,GAAG,EAAG2J,GAAK1H,EAAE9B,OAAOH,IAAM,OAAO2J,GACzF,QAASkD,GAAKC,EAAEjN,GAAG,GAAIkN,GAAE,GAAGD,CAAG,OAAOC,GAAE9M,QAAQJ,EAAEkN,EAAEC,GAAK,IAAInN,EAAEkN,EAAE9M,QAAQ8M,EACzE,QAASE,GAAKH,EAAEjN,GAAG,GAAIkN,GAAE,GAAGD,CAAE,OAAOC,GAAE9M,QAAQJ,EAAEkN,EAAEC,GAAK,IAAInN,EAAEkN,EAAE9M,QAAQ8M,EACxE,QAASG,GAAMJ,EAAEjN,GAAG,GAAIkN,GAAE,GAAGD,CAAG,OAAOC,GAAE9M,QAAQJ,EAAEkN,EAAEA,EAAEC,GAAK,IAAInN,EAAEkN,EAAE9M,QACpE,QAASkN,GAAOL,EAAEjN,GAAG,GAAIkN,GAAE,GAAGK,KAAKC,MAAMP,EAAI,OAAOC,GAAE9M,QAAQJ,EAAEkN,EAAEC,GAAK,IAAInN,EAAEkN,EAAE9M,QAAQ8M,EACvF,QAASO,GAAOR,EAAEjN,GAAG,GAAIkN,GAAE,GAAGD,CAAG,OAAOC,GAAE9M,QAAQJ,EAAEkN,EAAEC,GAAK,IAAInN,EAAEkN,EAAE9M,QAAQ8M,EAC3E,GAAIQ,GAAQH,KAAKI,IAAI,EAAE,GACvB,SAASC,GAAMX,EAAEjN,GAAG,GAAGiN,EAAES,GAAOT,GAAGS,EAAO,MAAOJ,GAAOL,EAAEjN,EAAI,IAAIG,GAAIoN,KAAKC,MAAMP,EAAI,OAAOQ,GAAOtN,EAAEH,GAErG,QAAS6N,GAAcnI,EAAGvF,GAAKA,EAAIA,GAAK,CAAG,OAAOuF,GAAEtF,QAAU,EAAID,IAAMuF,EAAErF,WAAWF,GAAG,MAAQ,MAAQuF,EAAErF,WAAWF,EAAE,GAAG,MAAQ,MAAQuF,EAAErF,WAAWF,EAAE,GAAG,MAAQ,MAAQuF,EAAErF,WAAWF,EAAE,GAAG,MAAQ,MAAQuF,EAAErF,WAAWF,EAAE,GAAG,MAAQ,MAAQuF,EAAErF,WAAWF,EAAE,GAAG,MAAQ,KAAOuF,EAAErF,WAAWF,EAAE,GAAG,MAAQ,IAC3S,GAAI2N,KACF,MAAO,WACP,MAAO,WACP,MAAO,YACP,MAAO,cACP,MAAO,aACP,MAAO,WACP,MAAO,YAET,IAAIC,KACF,IAAK,MAAO,YACZ,IAAK,MAAO,aACZ,IAAK,MAAO,UACZ,IAAK,MAAO,UACZ,IAAK,MAAO,QACZ,IAAK,MAAO,SACZ,IAAK,MAAO,SACZ,IAAK,MAAO,WACZ,IAAK,MAAO,cACZ,IAAK,MAAO,YACZ,IAAK,MAAO,aACZ,IAAK,MAAO,YAEd,SAASC,GAAed,GACvB,IAAIA,EAAGA,IACPA,GAAE,GAAK,SACPA,GAAE,GAAK,GACPA,GAAE,GAAK,MACPA,GAAE,GAAK,OACPA,GAAE,GAAK,UACPA,GAAE,GAAK,IACPA,GAAE,IAAK,OACPA,GAAE,IAAK,UACPA,GAAE,IAAK,OACPA,GAAE,IAAK,SACPA,GAAE,IAAK,QACPA,GAAE,IAAK,UACPA,GAAE,IAAK,OACPA,GAAE,IAAK,QACPA,GAAE,IAAK,YACPA,GAAE,IAAK,eACPA,GAAE,IAAK,MACPA,GAAE,IAAK,SACPA,GAAE,IAAK,aACPA,GAAE,IAAK,gBACPA,GAAE,IAAK,qBACPA,GAAE,IAAK,qBACPA,GAAE,IAAK,0BACPA,GAAE,IAAK,OACPA,GAAE,IAAK,WACPA,GAAE,IAAK,QACPA,GAAE,IAAK,UACPA,GAAE,IAAK,GACPA,GAAE,IAAK,0BACP,OAAOA,GAGR,GAAIe,IACH5F,EAAI,UACJC,EAAI,IACJC,EAAI,OACJ2F,EAAI,QACJC,EAAI,WACJC,EAAI,KACJC,GAAI,QACJC,GAAI,WACJC,GAAI,QACJC,GAAI,UACJC,GAAI,SACJC,GAAI,WACJC,GAAI,QACJC,GAAI,SACJC,GAAI,aACJC,GAAI,gBACJC,GAAI,OACJC,GAAI,UACJC,GAAI,cACJC,GAAI,iBACJC,GAAI,sBACJC,GAAI,sBACJC,GAAI,2BACJC,GAAI,QACJC,GAAI,YACJC,GAAI,SACJC,GAAI,WACJC,GAAI,IACJC,GAAI,2BAML,IAAIC,IACHC,EAAI,GAAIC,EAAI,GAAIC,EAAI,GAAIC,EAAI,GAE5BC,GAAK,EAAGC,GAAK,EAAGC,GAAK,EAAGC,GAAK,EAE7BC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAEpCC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GACpCC,GAAI,GAAIpB,GAAI,GAAIqB,GAAI,GAAIC,GAAI,GAC5BC,GAAK,EAAGC,GAAK,EAAGC,GAAK,EAAGC,GAAK,EAE7BC,GAAK,EAAGC,GAAI,GACZ/H,GAAI,GAAIgI,GAAI,GAAIC,GAAI,GACpBC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAC5BC,GAAI,GAAItJ,GAAI,GAAIuJ,GAAI,GACpBC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GACpBC,GAAI,EAKL,IAAIC,IAEHvC,EAAI,4BACJwC,GAAI,4BAGJvC,EAAI,iCACJwC,GAAI,iCAGJvC,EAAI,kCACJwC,GAAI,kCAGJvC,EAAI,uCACJwC,GAAI,uCAGJC,GAAI,8CAGJC,GAAI,uDAGJC,GAAI,sDAGJC,GAAI,+DAGL,SAASC,GAASzQ,EAAGnC,EAAG6S,GACvB,GAAIC,GAAM3Q,EAAI,GAAK,EAAI,CACvB,IAAI4Q,GAAI5Q,EAAI2Q,CACZ,IAAIE,GAAM,EAAGC,EAAM,EAAGC,EAAI,CAC1B,IAAIC,GAAM,EAAGC,EAAM,EAAGC,EAAI,CAC1B,IAAIC,GAAIhG,KAAKiG,MAAMR,EACnB,OAAMK,EAAMpT,EAAG,CACdsT,EAAIhG,KAAKiG,MAAMR,EACfG,GAAII,EAAIL,EAAMD,CACdK,GAAIC,EAAIF,EAAMD,CACd,IAAIJ,EAAIO,EAAK,KAAY,KACzBP,GAAI,GAAKA,EAAIO,EACbN,GAAMC,CAAKA,GAAMC,CACjBC,GAAMC,CAAKA,GAAMC,EAElB,GAAGA,EAAIrT,EAAG,CAAE,GAAGoT,EAAMpT,EAAG,CAAEqT,EAAIF,CAAKD,GAAIF,MAAY,CAAEK,EAAID,CAAKF,GAAID,GAClE,IAAIJ,EAAO,OAAQ,EAAGC,EAAMI,EAAGG,EAC/B,IAAIG,GAAIlG,KAAKiG,MAAMT,EAAMI,EAAEG,EAC3B,QAAQG,EAAGV,EAAII,EAAIM,EAAEH,EAAGA,GAEzB,QAASI,IAAoBzG,EAAE0G,EAAKC,GACnC,GAAG3G,EAAI,SAAWA,EAAI,EAAG,MAAO,KAChC,IAAI4G,GAAQ5G,EAAE,EAAI6G,EAAOvG,KAAKiG,MAAM,OAASvG,EAAI4G,IAAQE,EAAI,CAC7D,IAAIC,KACJ,IAAIhQ,IAAK/D,EAAE4T,EAAMI,EAAEH,EAAMI,EAAE,OAAOjH,EAAE4G,GAAMC,EAAKK,EAAE,EAAEC,EAAE,EAAEpU,EAAE,EAAEqU,EAAE,EAAE7N,EAAE,EAAE8N,EAAE,EAAEb,EAAE,EACzE,IAAGlG,KAAKgH,IAAIvQ,EAAIkQ,GAAK,KAAMlQ,EAAIkQ,EAAI,CACnC,IAAGP,GAAQA,EAAKa,SAAUX,GAAQ,IAClC,IAAG7P,EAAIkQ,EAAI,MAAQ,CAClBlQ,EAAIkQ,EAAI,CACR,MAAKJ,GAAQ,MAAO,CAAE9P,EAAIiQ,EAAIH,EAAO,IAAKD,IAAQ7P,EAAI/D,GAEvD,GAAG4T,IAAS,GAAI,CAACG,EAAOJ,GAAM,KAAK,GAAG,KAAO,KAAK,EAAE,GAAKG,GAAI,MACxD,IAAGF,IAAS,EAAG,CAACG,EAAOJ,GAAM,KAAK,EAAE,KAAO,KAAK,EAAE,EAAIG,GAAI,MAC1D,CACJ,GAAGF,EAAO,KAAMA,CAEhB,IAAI7T,GAAI,GAAIyU,MAAK,KAAM,EAAG,EAC1BzU,GAAE0U,QAAQ1U,EAAE2U,UAAYd,EAAO,EAC/BG,IAAQhU,EAAE4U,cAAe5U,EAAE6U,WAAW,EAAE7U,EAAE2U,UAC1CZ,GAAM/T,EAAE8U,QACR,IAAGjB,EAAO,GAAIE,GAAOA,EAAM,GAAK,CAChC,IAAGH,EAAIG,EAAMgB,GAAc/U,EAAGgU,GAE/BhQ,EAAImQ,EAAIH,EAAK,EAAIhQ,GAAIoQ,EAAIJ,EAAK,EAAIhQ,GAAIhE,EAAIgU,EAAK,EAC/ChQ,GAAIsQ,EAAIR,EAAO,EAAIA,GAAOvG,KAAKiG,MAAMM,EAAO,GAC5C9P,GAAIwC,EAAIsN,EAAO,EAAIA,GAAOvG,KAAKiG,MAAMM,EAAO,GAC5C9P,GAAIqQ,EAAIP,CACR9P,GAAIyP,EAAIM,CACR,OAAO/P,GAER,GAAIgR,IAAc,GAAIP,MAAK,KAAM,GAAI,GAAI,EAAG,EAAG,EAC/C,IAAIQ,IAAcD,GAAYE,SAC9B,IAAIC,IAAc,GAAIV,MAAK,KAAM,EAAG,EAAG,EAAG,EAAG,EAC7C,SAASW,IAAcnI,EAAGuH,GACzB,GAAIa,GAAQpI,EAAEiI,SACd,IAAGV,EAAUa,GAAS,KAAK,GAAG,GAAG,GAAG,QAC/B,IAAGpI,GAAKkI,GAAaE,GAAS,GAAG,GAAG,GAAG,GAC5C,QAAQA,GAASJ,IAAehI,EAAEqI,oBAAsBN,GAAYM,qBAAuB,OAAW,GAAK,GAAK,GAAK,KAKtH,QAASC,IAAkBzL,GAC1B,MAAQA,GAAEpD,QAAQ,OAAS,EAAKoD,EAAIA,EAAEoB,QAAQ,2BAA4B,MAI3E,QAASsK,IAAkB1L,GAC1B,GAAGA,EAAEpD,QAAQ,OAAS,EAAG,MAAOoD,EAChC,OAAOA,GAAEoB,QAAQ,8BAA8B,OAAOA,QAAQ,eAAe,SAI9E,QAASuK,IAAcxI,GACtB,GAAIhJ,GAAKgJ,EAAE,EAAE,GAAG,EAChB,IAAInD,GAAIyL,GAAkBtI,EAAEyI,QAAQ,IAAM,IAAG5L,EAAE1J,QAAU6D,EAAG,MAAO6F,EACnEA,GAAImD,EAAE0I,YAAY,GAAK,IAAG7L,EAAE1J,QAAU6D,EAAG,MAAO6F,EAChD,OAAOmD,GAAE2I,cAAc,GAIxB,QAASC,IAAc5I,GACtB,GAAInD,GAAIyL,GAAkBtI,EAAEyI,QAAQ,IACpC,OAAQ5L,GAAE1J,QAAU6M,EAAE,EAAE,GAAG,KAAOnD,IAAM,KAAOA,IAAM,KAAQmD,EAAE0I,YAAY,GAAK7L,EAGjF,QAASgM,IAAgB7I,GACxB,GAAI8I,GAAIxI,KAAKiG,MAAMjG,KAAKyI,IAAIzI,KAAKgH,IAAItH,IAAIM,KAAK0I,QAASnM,CAEvD,IAAGiM,IAAM,GAAKA,IAAM,EAAGjM,EAAImD,EAAE0I,YAAY,GAAGI,OACvC,IAAGxI,KAAKgH,IAAIwB,IAAM,EAAGjM,EAAI2L,GAAcxI,OACvC,IAAG8I,IAAM,GAAIjM,EAAImD,EAAEyI,QAAQ,IAAIQ,OAAO,EAAE,QACxCpM,GAAI+L,GAAc5I,EAEvB,OAAOsI,IAAkBC,GAAkB1L,EAAEqM,gBAc9C,QAASC,IAAYnJ,EAAG0G,GACvB,aAAc1G,IACb,IAAK,SAAU,MAAOA,GACtB,IAAK,UAAW,MAAOA,GAAI,OAAS,QACpC,IAAK,SAAU,OAAQA,EAAE,KAAOA,EAAIA,EAAE7I,SAAS,IAAM0R,GAAgB7I,GACrE,IAAK,YAAa,MAAO,GACzB,IAAK,SACJ,GAAGA,GAAK,KAAM,MAAO,EACrB,IAAGA,YAAawH,MAAM,MAAO4B,IAAW,GAAIjB,GAAcnI,EAAG0G,GAAQA,EAAKa,UAAWb,IAEvF,KAAM,IAAI1S,OAAM,wCAA0CgM,GAG3D,QAAS8H,IAAclB,EAAM/J,GAE3BA,EAAE,IAAM,GACR,IAAIiK,GAAMF,EAAKiB,QACf,IAAGjB,EAAO,GAAIE,GAAOA,EAAM,GAAK,CAChC,OAAOA,GAGT,QAASuC,IAAeC,EAAMC,EAAKC,EAAKC,GACvC,GAAI5M,GAAE,GAAI6M,EAAG,EAAGhQ,EAAG,EAAGwN,EAAIsC,EAAItC,EAAGnQ,EAAK4S,EAAO,CAC7C,QAAOL,GACN,IAAK,IACJpC,EAAIsC,EAAItC,EAAI,IAEb,IAAK,KACL,OAAOqC,EAAIpW,QACV,IAAK,IAAG,IAAK,GAAG4D,EAAMmQ,EAAI,GAAKyC,GAAO,CAAG,OACzC,QAAS5S,EAAMmQ,EAAI,GAAOyC,GAAO,CAAG,QACnC,MACF,IAAK,KACL,OAAOJ,EAAIpW,QACV,IAAK,IAAG,IAAK,GAAG4D,EAAMyS,EAAIrC,CAAGwC,GAAOJ,EAAIpW,MAAQ,OAChD,IAAK,GAAG,MAAO2N,GAAO0I,EAAIrC,EAAE,GAAG,GAC/B,IAAK,GAAG,MAAOrG,GAAO0I,EAAIrC,EAAE,GAAG,GAC/B,QAAS,MAAOrG,GAAO0I,EAAIrC,EAAE,GAAG,IAC/B,MACF,IAAK,KACL,OAAOoC,EAAIpW,QACV,IAAK,IAAG,IAAK,GAAG4D,EAAMyS,EAAIzW,CAAG4W,GAAOJ,EAAIpW,MAAQ,OAChD,IAAK,GAAG,MAAO0N,GAAK2I,EAAIhD,GAAG,GAC3B,QAAS,MAAO3F,GAAK2I,EAAIhD,GAAG,IAC3B,MACF,IAAK,KACL,OAAO+C,EAAIpW,QACV,IAAK,IAAG,IAAK,GAAG4D,EAAM,GAAGyS,EAAIpC,EAAE,IAAI,EAAIuC,GAAOJ,EAAIpW,MAAQ,OAC1D,QAAS,KAAM,oBAAsBoW,GACpC,MACF,IAAK,IACL,OAAOA,EAAIpW,QACV,IAAK,IAAG,IAAK,GAAG4D,EAAMyS,EAAIpC,CAAGuC,GAAOJ,EAAIpW,MAAQ,OAChD,QAAS,KAAM,oBAAsBoW,GACpC,MACF,IAAK,IACL,OAAOA,EAAIpW,QACV,IAAK,IAAG,IAAK,GAAG4D,EAAMyS,EAAIjQ,CAAGoQ,GAAOJ,EAAIpW,MAAQ,OAChD,QAAS,KAAM,sBAAwBoW,GACtC,MACF,IAAK,KACJ,GAAGA,GAAO,KAAOA,GAAO,MAAQA,GAAO,MAAQA,GAAO,OAASA,GAAO,OAAQ,KAAM,sBAAwBA,CAC5G,IAAGC,EAAIvC,IAAM,IAAMsC,GAAO,KAAOA,GAAO,MAAO,MAAOxJ,GAAKyJ,EAAInC,EAAGkC,EAAIpW,OACzE,IAAGsW,GAAO,EAAG/P,EAAK+P,IAAQ,EAAI,IAAO,QAC7B/P,GAAK+P,IAAQ,EAAI,GAAK,CAC3BC,GAAKpJ,KAAKC,MAAM,GAAMiJ,EAAInC,EAAImC,EAAIvC,GAClC,IAAGyC,GAAM,GAAGhQ,EAAIgQ,EAAK,CACrB,IAAGH,IAAQ,IAAK,MAAOG,KAAO,EAAI,IAAM,GAAGA,EAAGhQ,CAC9CmD,GAAIkD,EAAK2J,EAAG,EAAID,EAChB,IAAGF,IAAQ,KAAM,MAAO1M,GAAEoM,OAAO,EAAE,EACnC,OAAO,IAAMpM,EAAEoM,OAAO,EAAEM,EAAIpW,OAAO,GACpC,IAAK,IACL,OAAOoW,GACN,IAAK,OAAO,IAAK,OAAQxS,EAAMyS,EAAIxW,EAAE,GAAGwW,EAAIpC,CAAG,OAC/C,IAAK,OAAO,IAAK,OAAQrQ,GAAOyS,EAAIxW,EAAE,GAAGwW,EAAIpC,GAAG,GAAGoC,EAAIjQ,CAAG,OAC1D,IAAK,OAAO,IAAK,OAAQxC,IAAQyS,EAAIxW,EAAE,GAAGwW,EAAIpC,GAAG,GAAGoC,EAAIjQ,GAAG,GAAG+G,KAAKC,MAAMiJ,EAAInC,EAAEmC,EAAIvC,EAAI,OACvF,QAAS,KAAM,uBAAyBsC,GACvCI,EAAOJ,EAAIpW,SAAW,EAAI,EAAI,CAAG,OACnC,IAAK,KACJ4D,EAAMmQ,CAAGyC,GAAO,CAAG,QAErB,GAAIC,GAASD,EAAO,EAAI5J,EAAKhJ,EAAK4S,GAAQ,EAC1C,OAAOC,GAMR,QAASC,IAASpR,GACjB,GAAIzB,GAAI,CACR,IAAGyB,EAAEtF,QAAU6D,EAAG,MAAOyB,EACzB,IAAIjF,GAAKiF,EAAEtF,OAAS6D,EAAI6F,EAAIpE,EAAEwQ,OAAO,EAAEzV,EACvC,MAAMA,GAAGiF,EAAEtF,OAAQK,GAAGwD,EAAG6F,IAAIA,EAAE1J,OAAS,EAAI,IAAM,IAAMsF,EAAEwQ,OAAOzV,EAAEwD,EACnE,OAAO6F,GAER,GAAIiN,IAAO,IACX,SAASC,IAAcT,EAAMC,EAAKC,GACjC,GAAIQ,GAAOT,EAAItL,QAAQ6L,GAAK,IAAKG,EAAMV,EAAIpW,OAAS6W,EAAK7W,MACzD,OAAO+W,IAAUZ,EAAMU,EAAMR,EAAMlJ,KAAKI,IAAI,GAAG,EAAEuJ,IAAQ/J,GAAK,IAAI+J,GAGnE,QAASE,IAAab,EAAMC,EAAKC,GAChC,GAAIY,GAAMb,EAAIpW,OAAS,CACvB,OAAMoW,EAAInW,WAAWgX,EAAI,KAAO,KAAMA,CACtC,OAAOF,IAAUZ,EAAMC,EAAIN,OAAO,EAAEmB,GAAMZ,EAAMlJ,KAAKI,IAAI,GAAG,GAAG6I,EAAIpW,OAAOiX,KAG3E,QAASC,IAAcd,EAAKC,GAC3B,GAAI3M,EACJ,IAAIuN,GAAMb,EAAI9P,QAAQ,KAAO8P,EAAI9P,QAAQ,KAAO,CAChD,IAAG8P,EAAIxP,MAAM,eAAgB,CAC5B,GAAGyP,GAAO,EAAG,MAAO,aACf,IAAGA,EAAM,EAAG,MAAO,IAAMa,GAAcd,GAAMC,EAClD,IAAIc,GAASf,EAAI9P,QAAQ,IAAM,IAAG6Q,KAAY,EAAGA,EAAOf,EAAI9P,QAAQ,IACpE,IAAIjD,GAAK8J,KAAKiG,MAAMjG,KAAKyI,IAAIS,GAAKlJ,KAAK0I,QAAQsB,CAC/C,IAAG9T,EAAK,EAAGA,GAAM8T,CACjBzN,IAAK2M,EAAIlJ,KAAKI,IAAI,GAAGlK,IAAKkS,YAAY0B,EAAI,GAAGE,EAAO9T,GAAI8T,EACxD,IAAGzN,EAAEpD,QAAQ,QAAU,EAAG,CACzB,GAAI8Q,GAAQjK,KAAKiG,MAAMjG,KAAKyI,IAAIS,GAAKlJ,KAAK0I,OAC1C,IAAGnM,EAAEpD,QAAQ,QAAU,EAAGoD,EAAIA,EAAExJ,OAAO,GAAK,IAAMwJ,EAAEoM,OAAO,GAAK,MAAQsB,EAAQ1N,EAAE1J,OAAOqD,OACpFqG,IAAK,MAAQ0N,EAAQ/T,EAC1B,OAAMqG,EAAEoM,OAAO,EAAE,KAAO,KAAM,CAC7BpM,EAAIA,EAAExJ,OAAO,GAAKwJ,EAAEoM,OAAO,EAAEqB,GAAU,IAAMzN,EAAEoM,OAAO,EAAEqB,EACxDzN,GAAIA,EAAEoB,QAAQ,aAAa,MAAMA,QAAQ,QAAQ,MAElDpB,EAAIA,EAAEoB,QAAQ,MAAM,KAErBpB,EAAIA,EAAEoB,QAAQ,2BAA2B,SAASuM,EAAGC,EAAGC,EAAGC,GAAM,MAAOF,GAAKC,EAAKC,EAAG1B,OAAO,GAAGqB,EAAO9T,GAAI8T,GAAU,IAAMK,EAAG1B,OAAOzS,GAAM,UACpIqG,GAAI2M,EAAIb,cAAcyB,EAC7B,IAAGb,EAAIxP,MAAM,WAAa8C,EAAE9C,MAAM,YAAa8C,EAAIA,EAAEoM,OAAO,EAAEpM,EAAE1J,OAAO,GAAK,IAAM0J,EAAExJ,OAAOwJ,EAAE1J,OAAO,EACpG,IAAGoW,EAAIxP,MAAM,QAAU8C,EAAE9C,MAAM,OAAQ8C,EAAIA,EAAEoB,QAAQ,MAAM,IAC3D,OAAOpB,GAAEoB,QAAQ,IAAI,KAEtB,GAAI2M,IAAQ,wBACZ,SAASC,IAAaC,EAAGC,EAAMC,GAC9B,GAAIC,GAAMC,SAASJ,EAAE,GAAG,IAAKK,EAAK7K,KAAKC,MAAMwK,EAAOE,GAAMG,EAAO9K,KAAKiG,MAAM4E,EAAGF,EAC/E,IAAII,GAAOF,EAAKC,EAAKH,EAAMK,EAAML,CACjC,OAAOD,IAAQI,IAAS,EAAI,GAAK,GAAGA,GAAQ,KAAOC,IAAQ,EAAInL,GAAK,IAAK4K,EAAE,GAAG3X,OAAS,EAAI2X,EAAE,GAAG3X,QAAUgN,EAAKkL,EAAIP,EAAE,GAAG3X,QAAU2X,EAAE,GAAK,IAAMA,EAAE,GAAK/K,EAAKuL,EAAIR,EAAE,GAAG3X,SAErK,QAASoY,IAAaT,EAAGC,EAAMC,GAC9B,MAAOA,IAAQD,IAAS,EAAI,GAAK,GAAGA,GAAQ7K,GAAK,IAAK4K,EAAE,GAAG3X,OAAS,EAAI2X,EAAE,GAAG3X,QAE9E,GAAIqY,IAAO,gBACX,IAAIC,IAAa,UACjB,IAAIC,IAAQ,qBACZ,SAASC,IAAMC,GACd,GAAI/O,GAAI,GAAIgP,CACZ,KAAI,GAAI3Y,GAAI,EAAGA,GAAK0Y,EAAIzY,SAAUD,EAAG,OAAQ2Y,EAAGD,EAAIxY,WAAWF,IAC9D,IAAK,IAAI,MACT,IAAK,IAAI2J,GAAI,GAAK,OAClB,IAAK,IAAIA,GAAI,GAAK,OAClB,QAASA,GAAIzH,OAAOC,aAAawW,IAElC,MAAOhP,GAER,QAASiP,IAAItC,EAAKzW,GAAK,GAAIgZ,GAAKzL,KAAKI,IAAI,GAAG3N,EAAI,OAAO,GAAIuN,KAAKC,MAAMiJ,EAAMuC,GAAIA,EAChF,QAASxY,IAAIiW,EAAKzW,GACjB,GAAIiZ,GAAQxC,EAAMlJ,KAAKiG,MAAMiD,GAAMuC,EAAKzL,KAAKI,IAAI,GAAG3N,EACpD,IAAIA,GAAK,GAAKuN,KAAKC,MAAMyL,EAAQD,IAAK5Y,OAAQ,MAAO,EACrD,OAAOmN,MAAKC,MAAMyL,EAAQD,GAE3B,QAASE,IAAMzC,EAAKzW,GACnB,GAAIA,GAAK,GAAKuN,KAAKC,OAAOiJ,EAAIlJ,KAAKiG,MAAMiD,IAAMlJ,KAAKI,IAAI,GAAG3N,KAAKI,OAAQ,CACvE,MAAO,GAER,MAAO,GAER,QAAS+Y,IAAI1C,GACZ,GAAGA,EAAM,YAAcA,GAAO,WAAY,MAAO,IAAIA,GAAO,EAAKA,EAAI,EAAMA,EAAI,EAAE,EACjF,OAAO,GAAGlJ,KAAKiG,MAAMiD,GAEtB,QAAS2C,IAAc7C,EAAMC,EAAKC,GACjC,GAAGF,EAAKlW,WAAW,KAAO,KAAOmW,EAAIxP,MAAM0R,IAAa,CACvD,GAAIW,GAAO7C,EAAItL,QAAQ,OAAO,IAAIA,QAAQ,MAAM,IAAIA,QAAQ,KAAK,GACjE,IAAGuL,GAAO,EAAG,MAAO2C,IAAc,IAAKC,EAAM5C,EAC7C,OAAO,IAAM2C,GAAc,IAAKC,GAAO5C,GAAO,IAE/C,GAAGD,EAAInW,WAAWmW,EAAIpW,OAAS,KAAO,GAAI,MAAOgX,IAAab,EAAMC,EAAKC,EACzE,IAAGD,EAAI9P,QAAQ,QAAU,EAAG,MAAOsQ,IAAcT,EAAMC,EAAKC,EAC5D,IAAGD,EAAI9P,QAAQ,QAAU,EAAG,MAAO4Q,IAAcd,EAAKC,EACtD,IAAGD,EAAInW,WAAW,KAAO,GAAI,MAAO,IAAI+Y,GAAc7C,EAAKC,EAAIN,OAAOM,EAAIlW,OAAO,IAAI,IAAI,EAAE,GAAGmW,EAC9F,IAAI3M,EACJ,IAAIiO,GAAGuB,EAAIC,EAAIvB,EAAOzK,KAAKgH,IAAIkC,GAAMwB,EAAOxB,EAAM,EAAI,IAAM,EAC5D,IAAGD,EAAIxP,MAAM,SAAU,MAAOiR,GAAOrK,EAAMoK,EAAKxB,EAAIpW,OACpD,IAAGoW,EAAIxP,MAAM,WAAY,CACxB8C,EAAI8D,EAAM6I,EAAI,EAAI,IAAG3M,IAAM,IAAKA,EAAI,EACpC,OAAOA,GAAE1J,OAASoW,EAAIpW,OAAS0J,EAAI8O,GAAMpC,EAAIN,OAAO,EAAEM,EAAIpW,OAAO0J,EAAE1J,SAAW0J,EAE/E,GAAIiO,EAAIvB,EAAIxP,MAAM6Q,IAAS,MAAOC,IAAaC,EAAGC,EAAMC,EACxD,IAAGzB,EAAIxP,MAAM,UAAW,MAAOiR,GAAOrK,EAAMoK,EAAKxB,EAAIpW,OAASoW,EAAI9P,QAAQ,KAC1E,IAAIqR,EAAIvB,EAAIxP,MAAMyR,IAAQ,CACzB3O,EAAIiP,GAAItC,EAAKsB,EAAE,GAAG3X,QAAQ8K,QAAQ,aAAa,MAAM0N,GAAMb,EAAE,KAAK7M,QAAQ,MAAM,IAAI0N,GAAMb,EAAE,KAAK7M,QAAQ,WAAW,SAASuM,EAAIC,GAAM,MAAO,IAAMA,EAAKvK,GAAK,IAAKyL,GAAMb,EAAE,IAAI3X,OAAOsX,EAAGtX,SACzL,OAAOoW,GAAI9P,QAAQ,SAAW,EAAIoD,EAAIA,EAAEoB,QAAQ,OAAO,KAExDsL,EAAMA,EAAItL,QAAQ,YAAa,KAC/B,IAAI6M,EAAIvB,EAAIxP,MAAM,gBAAkB,CACnC,MAAOiR,GAAOc,GAAIf,EAAMD,EAAE,GAAG3X,QAAQ8K,QAAQ,kBAAkB,OAAOA,QAAQ,YAAY,OAAOA,QAAQ,OAAO6M,EAAE,GAAG3X,OAAO,KAAK,KAElI,GAAI2X,EAAIvB,EAAIxP,MAAM,qBAAuB,MAAOiR,GAAOnB,GAASlJ,EAAMoK,EAAK,GAC3E,IAAID,EAAIvB,EAAIxP,MAAM,qBAAuB,CACxC,MAAOyP,GAAM,EAAI,IAAM2C,GAAc7C,EAAMC,GAAMC,GAAOK,GAAS,IAAIvJ,KAAKiG,MAAMiD,GAAOyC,GAAMzC,EAAKsB,EAAE,GAAG3X,UAAY,IAAM4M,EAAKxM,GAAIiW,EAAKsB,EAAE,GAAG3X,QAAQ2X,EAAE,GAAG3X,QAE1J,GAAI2X,EAAIvB,EAAIxP,MAAM,YAAc,MAAOoS,IAAc7C,EAAKC,EAAItL,QAAQ,SAAS,IAAIuL,EACnF,IAAIsB,EAAIvB,EAAIxP,MAAM,2BAA6B,CAC9C8C,EAAIiD,EAAQqM,GAAc7C,EAAMC,EAAItL,QAAQ,SAAS,IAAKuL,GAC1D6C,GAAK,CACL,OAAOvM,GAAQA,EAAQyJ,EAAItL,QAAQ,MAAM,KAAKA,QAAQ,QAAQ,SAAS9I,GAAG,MAAOkX,GAAGxP,EAAE1J,OAAO0J,EAAExJ,OAAOgZ,KAAMlX,IAAI,IAAI,IAAI,MAEzH,GAAGoU,EAAIxP,MAAM2R,IAAQ,CACpB7O,EAAIsP,GAAc7C,EAAM,aAAcE,EACtC,OAAO,IAAM3M,EAAEoM,OAAO,EAAE,GAAK,KAAOpM,EAAEoM,OAAO,EAAG,GAAK,IAAMpM,EAAEoM,OAAO,GAErE,GAAIsD,GAAK,EACT,IAAIzB,EAAIvB,EAAIxP,MAAM,+BAAiC,CAClDsS,EAAK/L,KAAKkM,IAAI1B,EAAE,GAAG3X,OAAO,EAC1BmZ,GAAK1G,EAASmF,EAAMzK,KAAKI,IAAI,GAAG2L,GAAI,EAAG,MACvCxP,GAAI,GAAKmO,CACTuB,GAAKrC,GAAU,IAAKY,EAAE,GAAIwB,EAAG,GAC7B,IAAGC,EAAGlZ,OAAOkZ,EAAGpZ,OAAO,IAAM,IAAKoZ,EAAKA,EAAGtD,OAAO,EAAEsD,EAAGpZ,OAAO,GAAK,GAClE0J,IAAK0P,EAAKzB,EAAE,GAAK,IAAMA,EAAE,EACzByB,GAAKnM,EAAMkM,EAAG,GAAGD,EACjB,IAAGE,EAAGpZ,OAAS2X,EAAE,GAAG3X,OAAQoZ,EAAKZ,GAAMb,EAAE,GAAG7B,OAAO6B,EAAE,GAAG3X,OAAOoZ,EAAGpZ,SAAWoZ,CAC7E1P,IAAK0P,CACL,OAAO1P,GAER,GAAIiO,EAAIvB,EAAIxP,MAAM,iCAAmC,CACpDsS,EAAK/L,KAAKkM,IAAIlM,KAAKmM,IAAI3B,EAAE,GAAG3X,OAAQ2X,EAAE,GAAG3X,QAAQ,EACjDmZ,GAAK1G,EAASmF,EAAMzK,KAAKI,IAAI,GAAG2L,GAAI,EAAG,KACvC,OAAOrB,IAAQsB,EAAG,KAAKA,EAAG,GAAK,GAAK,MAAQ,KAAOA,EAAG,GAAKnM,EAAKmM,EAAG,GAAGD,GAAMvB,EAAE,GAAK,IAAMA,EAAE,GAAK1K,EAAMkM,EAAG,GAAGD,GAAKnM,GAAK,IAAK,EAAEmM,EAAG,EAAIvB,EAAE,GAAG3X,OAAS2X,EAAE,GAAG3X,SAExJ,GAAI2X,EAAIvB,EAAIxP,MAAM,YAAc,CAC/B8C,EAAI8D,EAAM6I,EAAK,EACf,IAAGD,EAAIpW,QAAU0J,EAAE1J,OAAQ,MAAO0J,EAClC,OAAO8O,IAAMpC,EAAIN,OAAO,EAAEM,EAAIpW,OAAO0J,EAAE1J,SAAW0J,EAEnD,GAAIiO,EAAIvB,EAAIxP,MAAM,uBAAyB,CAC1C8C,EAAI,GAAK2M,EAAIf,QAAQnI,KAAKkM,IAAI1B,EAAE,GAAG3X,OAAO,KAAK8K,QAAQ,YAAY,KACnEoO,GAAKxP,EAAEpD,QAAQ,IACf,IAAIiT,GAAOnD,EAAI9P,QAAQ,KAAO4S,EAAIM,EAAOpD,EAAIpW,OAAS0J,EAAE1J,OAASuZ,CACjE,OAAOf,IAAMpC,EAAIN,OAAO,EAAEyD,GAAQ7P,EAAI0M,EAAIN,OAAOM,EAAIpW,OAAOwZ,IAE7D,GAAI7B,EAAIvB,EAAIxP,MAAM,sBAAwB,CACzCsS,EAAK9Y,GAAIiW,EAAKsB,EAAE,GAAG3X,OACnB,OAAOqW,GAAM,EAAI,IAAM2C,GAAc7C,EAAMC,GAAMC,GAAOK,GAASqC,GAAI1C,IAAMvL,QAAQ,aAAa,OAAOA,QAAQ,QAAQ,SAASuM,GAAM,MAAO,OAASA,EAAGrX,OAAS,EAAI4M,EAAK,EAAE,EAAEyK,EAAGrX,QAAU,IAAMqX,IAAS,IAAMzK,EAAKsM,EAAGvB,EAAE,GAAG3X,QAE/N,OAAOoW,GACN,IAAK,aAAc,MAAO4C,IAAc7C,EAAM,WAAYE,GAC1D,IAAK,WACL,IAAK,UACL,IAAK,QAAS,GAAIrU,GAAI0U,GAASlJ,EAAMoK,EAAK,GAAK,OAAO5V,KAAM,IAAM6V,EAAO7V,EAAI,GAC7E,IAAK,aAAc,MAAOgX,IAAc7C,EAAM,aAAaE,GAAKvL,QAAQ,OAAO,KAC/E,IAAK,WAAY,MAAOkO,IAAc7C,EAAM,WAAWE,GAAKvL,QAAQ,OAAO,KAC3E,UAED,KAAM,IAAIjK,OAAM,uBAAyBuV,EAAM,KAEhD,QAASqD,IAActD,EAAMC,EAAKC,GACjC,GAAIY,GAAMb,EAAIpW,OAAS,CACvB,OAAMoW,EAAInW,WAAWgX,EAAI,KAAO,KAAMA,CACtC,OAAOF,IAAUZ,EAAMC,EAAIN,OAAO,EAAEmB,GAAMZ,EAAMlJ,KAAKI,IAAI,GAAG,GAAG6I,EAAIpW,OAAOiX,KAE3E,QAASyC,IAAevD,EAAMC,EAAKC,GAClC,GAAIQ,GAAOT,EAAItL,QAAQ6L,GAAK,IAAKG,EAAMV,EAAIpW,OAAS6W,EAAK7W,MACzD,OAAO+W,IAAUZ,EAAMU,EAAMR,EAAMlJ,KAAKI,IAAI,GAAG,EAAEuJ,IAAQ/J,GAAK,IAAI+J,GAEnE,QAAS6C,IAAevD,EAAKC,GAC5B,GAAI3M,EACJ,IAAIuN,GAAMb,EAAI9P,QAAQ,KAAO8P,EAAI9P,QAAQ,KAAO,CAChD,IAAG8P,EAAIxP,MAAM,eAAgB,CAC5B,GAAGyP,GAAO,EAAG,MAAO,aACf,IAAGA,EAAM,EAAG,MAAO,IAAMsD,GAAevD,GAAMC,EACnD,IAAIc,GAASf,EAAI9P,QAAQ,IAAM,IAAG6Q,KAAY,EAAGA,EAAOf,EAAI9P,QAAQ,IACpE,IAAIjD,GAAK8J,KAAKiG,MAAMjG,KAAKyI,IAAIS,GAAKlJ,KAAK0I,QAAQsB,CAC/C,IAAG9T,EAAK,EAAGA,GAAM8T,CACjBzN,IAAK2M,EAAIlJ,KAAKI,IAAI,GAAGlK,IAAKkS,YAAY0B,EAAI,GAAGE,EAAO9T,GAAI8T,EACxD,KAAIzN,EAAE9C,MAAM,QAAS,CACpB,GAAIwQ,GAAQjK,KAAKiG,MAAMjG,KAAKyI,IAAIS,GAAKlJ,KAAK0I,OAC1C,IAAGnM,EAAEpD,QAAQ,QAAU,EAAGoD,EAAIA,EAAExJ,OAAO,GAAK,IAAMwJ,EAAEoM,OAAO,GAAK,MAAQsB,EAAQ1N,EAAE1J,OAAOqD,OACpFqG,IAAK,MAAQ0N,EAAQ/T,EAC1BqG,GAAIA,EAAEoB,QAAQ,MAAM,KAErBpB,EAAIA,EAAEoB,QAAQ,2BAA2B,SAASuM,EAAGC,EAAGC,EAAGC,GAAM,MAAOF,GAAKC,EAAKC,EAAG1B,OAAO,GAAGqB,EAAO9T,GAAI8T,GAAU,IAAMK,EAAG1B,OAAOzS,GAAM,UACpIqG,GAAI2M,EAAIb,cAAcyB,EAC7B,IAAGb,EAAIxP,MAAM,WAAa8C,EAAE9C,MAAM,YAAa8C,EAAIA,EAAEoM,OAAO,EAAEpM,EAAE1J,OAAO,GAAK,IAAM0J,EAAExJ,OAAOwJ,EAAE1J,OAAO,EACpG,IAAGoW,EAAIxP,MAAM,QAAU8C,EAAE9C,MAAM,OAAQ8C,EAAIA,EAAEoB,QAAQ,MAAM,IAC3D,OAAOpB,GAAEoB,QAAQ,IAAI,KAEtB,QAAS8O,IAAczD,EAAMC,EAAKC,GACjC,GAAGF,EAAKlW,WAAW,KAAO,KAAOmW,EAAIxP,MAAM0R,IAAa,CACvD,GAAIW,GAAO7C,EAAItL,QAAQ,OAAO,IAAIA,QAAQ,MAAM,IAAIA,QAAQ,KAAK,GACjE,IAAGuL,GAAO,EAAG,MAAOuD,IAAc,IAAKX,EAAM5C,EAC7C,OAAO,IAAMuD,GAAc,IAAKX,GAAO5C,GAAO,IAE/C,GAAGD,EAAInW,WAAWmW,EAAIpW,OAAS,KAAO,GAAI,MAAOyZ,IAActD,EAAMC,EAAKC,EAC1E,IAAGD,EAAI9P,QAAQ,QAAU,EAAG,MAAOoT,IAAevD,EAAMC,EAAKC,EAC7D,IAAGD,EAAI9P,QAAQ,QAAU,EAAG,MAAOqT,IAAevD,EAAKC,EACvD,IAAGD,EAAInW,WAAW,KAAO,GAAI,MAAO,IAAI2Z,GAAczD,EAAKC,EAAIN,OAAOM,EAAIlW,OAAO,IAAI,IAAI,EAAE,GAAGmW,EAC9F,IAAI3M,EACJ,IAAIiO,GAAGuB,EAAIC,EAAIvB,EAAOzK,KAAKgH,IAAIkC,GAAMwB,EAAOxB,EAAM,EAAI,IAAM,EAC5D,IAAGD,EAAIxP,MAAM,SAAU,MAAOiR,GAAOjL,EAAKgL,EAAKxB,EAAIpW,OACnD,IAAGoW,EAAIxP,MAAM,WAAY,CACxB8C,EAAK,GAAG2M,CAAM,IAAGA,IAAQ,EAAG3M,EAAI,EAChC,OAAOA,GAAE1J,OAASoW,EAAIpW,OAAS0J,EAAI8O,GAAMpC,EAAIN,OAAO,EAAEM,EAAIpW,OAAO0J,EAAE1J,SAAW0J,EAE/E,GAAIiO,EAAIvB,EAAIxP,MAAM6Q,IAAS,MAAOW,IAAaT,EAAGC,EAAMC,EACxD,IAAGzB,EAAIxP,MAAM,UAAW,MAAOiR,GAAOjL,EAAKgL,EAAKxB,EAAIpW,OAASoW,EAAI9P,QAAQ,KACzE,IAAIqR,EAAIvB,EAAIxP,MAAMyR,IAAQ,CAC3B3O,GAAK,GAAG2M,GAAKvL,QAAQ,aAAa,MAAM0N,GAAMb,EAAE,KAAK7M,QAAQ,MAAM,IAAI0N,GAAMb,EAAE,IAC7EjO,GAAIA,EAAEoB,QAAQ,WAAW,SAASuM,EAAIC,GACxC,MAAO,IAAMA,EAAKvK,GAAK,IAAKyL,GAAMb,EAAE,IAAI3X,OAAOsX,EAAGtX,SAChD,OAAOoW,GAAI9P,QAAQ,SAAW,EAAIoD,EAAIA,EAAEoB,QAAQ,OAAO,KAExDsL,EAAMA,EAAItL,QAAQ,YAAa,KAC/B,IAAI6M,EAAIvB,EAAIxP,MAAM,gBAAkB,CACnC,MAAOiR,IAAQ,GAAGD,GAAM9M,QAAQ,kBAAkB,OAAOA,QAAQ,YAAY,OAAOA,QAAQ,OAAO6M,EAAE,GAAG3X,OAAO,KAAK,KAErH,GAAI2X,EAAIvB,EAAIxP,MAAM,qBAAuB,MAAOiR,GAAOnB,GAAU,GAAGkB,EACpE,IAAID,EAAIvB,EAAIxP,MAAM,qBAAuB,CACxC,MAAOyP,GAAM,EAAI,IAAMuD,GAAczD,EAAMC,GAAMC,GAAOK,GAAU,GAAGL,GAAQ,IAAMtJ,GAAK,IAAI4K,EAAE,GAAG3X,QAElG,GAAI2X,EAAIvB,EAAIxP,MAAM,YAAc,MAAOgT,IAAczD,EAAKC,EAAItL,QAAQ,SAAS,IAAIuL,EACnF,IAAIsB,EAAIvB,EAAIxP,MAAM,2BAA6B,CAC9C8C,EAAIiD,EAAQiN,GAAczD,EAAMC,EAAItL,QAAQ,SAAS,IAAKuL,GAC1D6C,GAAK,CACL,OAAOvM,GAAQA,EAAQyJ,EAAItL,QAAQ,MAAM,KAAKA,QAAQ,QAAQ,SAAS9I,GAAG,MAAOkX,GAAGxP,EAAE1J,OAAO0J,EAAExJ,OAAOgZ,KAAMlX,IAAI,IAAI,IAAI,MAEzH,GAAGoU,EAAIxP,MAAM2R,IAAQ,CACpB7O,EAAIkQ,GAAczD,EAAM,aAAcE,EACtC,OAAO,IAAM3M,EAAEoM,OAAO,EAAE,GAAK,KAAOpM,EAAEoM,OAAO,EAAG,GAAK,IAAMpM,EAAEoM,OAAO,GAErE,GAAIsD,GAAK,EACT,IAAIzB,EAAIvB,EAAIxP,MAAM,+BAAiC,CAClDsS,EAAK/L,KAAKkM,IAAI1B,EAAE,GAAG3X,OAAO,EAC1BmZ,GAAK1G,EAASmF,EAAMzK,KAAKI,IAAI,GAAG2L,GAAI,EAAG,MACvCxP,GAAI,GAAKmO,CACTuB,GAAKrC,GAAU,IAAKY,EAAE,GAAIwB,EAAG,GAC7B,IAAGC,EAAGlZ,OAAOkZ,EAAGpZ,OAAO,IAAM,IAAKoZ,EAAKA,EAAGtD,OAAO,EAAEsD,EAAGpZ,OAAO,GAAK,GAClE0J,IAAK0P,EAAKzB,EAAE,GAAK,IAAMA,EAAE,EACzByB,GAAKnM,EAAMkM,EAAG,GAAGD,EACjB,IAAGE,EAAGpZ,OAAS2X,EAAE,GAAG3X,OAAQoZ,EAAKZ,GAAMb,EAAE,GAAG7B,OAAO6B,EAAE,GAAG3X,OAAOoZ,EAAGpZ,SAAWoZ,CAC7E1P,IAAK0P,CACL,OAAO1P,GAER,GAAIiO,EAAIvB,EAAIxP,MAAM,iCAAmC,CACpDsS,EAAK/L,KAAKkM,IAAIlM,KAAKmM,IAAI3B,EAAE,GAAG3X,OAAQ2X,EAAE,GAAG3X,QAAQ,EACjDmZ,GAAK1G,EAASmF,EAAMzK,KAAKI,IAAI,GAAG2L,GAAI,EAAG,KACvC,OAAOrB,IAAQsB,EAAG,KAAKA,EAAG,GAAK,GAAK,MAAQ,KAAOA,EAAG,GAAKnM,EAAKmM,EAAG,GAAGD,GAAMvB,EAAE,GAAK,IAAMA,EAAE,GAAK1K,EAAMkM,EAAG,GAAGD,GAAKnM,GAAK,IAAK,EAAEmM,EAAG,EAAIvB,EAAE,GAAG3X,OAAS2X,EAAE,GAAG3X,SAExJ,GAAI2X,EAAIvB,EAAIxP,MAAM,YAAc,CAC/B8C,EAAI,GAAK2M,CACT,IAAGD,EAAIpW,QAAU0J,EAAE1J,OAAQ,MAAO0J,EAClC,OAAO8O,IAAMpC,EAAIN,OAAO,EAAEM,EAAIpW,OAAO0J,EAAE1J,SAAW0J,EAEnD,GAAIiO,EAAIvB,EAAIxP,MAAM,sBAAwB,CACzC8C,EAAI,GAAK2M,EAAIf,QAAQnI,KAAKkM,IAAI1B,EAAE,GAAG3X,OAAO,KAAK8K,QAAQ,YAAY,KACnEoO,GAAKxP,EAAEpD,QAAQ,IACf,IAAIiT,GAAOnD,EAAI9P,QAAQ,KAAO4S,EAAIM,EAAOpD,EAAIpW,OAAS0J,EAAE1J,OAASuZ,CACjE,OAAOf,IAAMpC,EAAIN,OAAO,EAAEyD,GAAQ7P,EAAI0M,EAAIN,OAAOM,EAAIpW,OAAOwZ,IAE7D,GAAI7B,EAAIvB,EAAIxP,MAAM,sBAAwB,CACzC,MAAOyP,GAAM,EAAI,IAAMuD,GAAczD,EAAMC,GAAMC,GAAOK,GAAS,GAAGL,GAAKvL,QAAQ,aAAa,OAAOA,QAAQ,QAAQ,SAASuM,GAAM,MAAO,OAASA,EAAGrX,OAAS,EAAI4M,EAAK,EAAE,EAAEyK,EAAGrX,QAAU,IAAMqX,IAAS,IAAMzK,EAAK,EAAE+K,EAAE,GAAG3X,QAE5N,OAAOoW,GACN,IAAK,WACL,IAAK,UACL,IAAK,QAAS,GAAIpU,GAAI0U,GAAS,GAAGkB,EAAO,OAAO5V,KAAM,IAAM6V,EAAO7V,EAAI,GACvE,QACC,GAAGoU,EAAIxP,MAAM,aAAc,MAAOgT,IAAczD,EAAMC,EAAIrS,MAAM,EAAEqS,EAAIyD,YAAY,MAAOxD,GAAOmC,GAAMpC,EAAIrS,MAAMqS,EAAIyD,YAAY,QAElI,KAAM,IAAIhZ,OAAM,uBAAyBuV,EAAM,KAEhD,QAASW,IAAUZ,EAAMC,EAAKC,GAC7B,OAAQA,EAAI,KAAOA,EAAMuD,GAAczD,EAAMC,EAAKC,GAAO2C,GAAc7C,EAAMC,EAAKC,GAEnF,QAASyD,IAAc1D,GACtB,GAAIxS,KACJ,IAAImW,GAAS,KACb,KAAI,GAAIha,GAAI,EAAGM,EAAI,EAAGN,EAAIqW,EAAIpW,SAAUD,EAAG,OAAeqW,EAAInW,WAAWF,IACxE,IAAK,IACJga,GAAUA,CAAQ,OACnB,IAAK,KAAI,IAAK,KAAI,IAAK,MACpBha,CAAG,OACN,IAAK,IACJ6D,EAAIA,EAAI5D,QAAUoW,EAAIN,OAAOzV,EAAEN,EAAEM,EACjCA,GAAIN,EAAE,GAER6D,EAAIA,EAAI5D,QAAUoW,EAAIN,OAAOzV,EAC7B,IAAG0Z,IAAW,KAAM,KAAM,IAAIlZ,OAAM,WAAauV,EAAM,yBACvD,OAAOxS,GAGR,GAAIoW,IAAc,iCAClB,SAASC,IAAY7D,GACpB,GAAIrW,GAAI,EAAesE,EAAI,GAAIqF,EAAI,EACnC,OAAM3J,EAAIqW,EAAIpW,OAAQ,CACrB,OAAQqE,EAAI+R,EAAIlW,OAAOH,IACtB,IAAK,IAAK,GAAG0N,EAAc2I,EAAKrW,GAAIA,GAAI,CAAGA,IAAK,OAChD,IAAK,IAAK,KAAaqW,EAAInW,aAAaF,KAAQ,IAAMA,EAAIqW,EAAIpW,QAAQ,IAAcD,CAAG,OACvF,IAAK,KAAMA,GAAG,CAAG,OACjB,IAAK,IAAKA,GAAG,CAAG,OAChB,IAAK,MAAOA,CAAG,OACf,IAAK,KAAK,IAAK,IACd,GAAGqW,EAAIlW,OAAOH,EAAE,KAAO,KAAOqW,EAAIlW,OAAOH,EAAE,KAAO,IAAK,MAAO,MAE/D,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAEvD,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAAK,MAAO,MAC7E,IAAK,KAAK,IAAK,KAAK,IAAK,IACxB,GAAGqW,EAAIN,OAAO/V,EAAG,GAAGgW,gBAAkB,MAAO,MAAO,KACpD,IAAGK,EAAIN,OAAO/V,EAAG,GAAGgW,gBAAkB,QAAS,MAAO,KACtD,IAAGK,EAAIN,OAAO/V,EAAG,GAAGgW,gBAAkB,QAAS,MAAO,QACpDhW,CAAG,OACN,IAAK,IACJ2J,EAAIrF,CACJ,OAAM+R,EAAIlW,OAAOH,OAAS,KAAOA,EAAIqW,EAAIpW,OAAQ0J,GAAK0M,EAAIlW,OAAOH,EACjE,IAAG2J,EAAE9C,MAAMoT,IAAc,MAAO,KAChC,OACD,IAAK,KAEL,IAAK,KAAK,IAAK,IACd,MAAMja,EAAIqW,EAAIpW,SAAW,YAAYsG,QAAQjC,EAAE+R,EAAIlW,SAASH,KAAO,GAAMsE,GAAG,MAAQ+R,EAAIlW,OAAOH,EAAE,IAAM,KAAO,KAAKuG,QAAQ8P,EAAIlW,OAAOH,EAAE,KAAK,GAAI;AACjJ,MACD,IAAK,IAAK,MAAMqW,EAAIlW,SAASH,KAAOsE,EAAE,EAAc,MACpD,IAAK,MAAOtE,CAAG,IAAGqW,EAAIlW,OAAOH,IAAM,KAAOqW,EAAIlW,OAAOH,IAAM,MAAOA,CAAG,OACrE,IAAK,KAAK,IAAK,MAAOA,CAAG,OACzB,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IACpF,MAAMA,EAAIqW,EAAIpW,QAAU,aAAasG,QAAQ8P,EAAIlW,SAASH,KAAO,EAAE,EAAc,MAClF,IAAK,MAAOA,CAAG,OACf,UAAWA,CAAG,SAGhB,MAAO,OAGR,QAASma,IAAS9D,EAAKvJ,EAAG0G,EAAM4G,GAC/B,GAAIvW,MAAU8F,EAAI,GAAI3J,EAAI,EAAGsE,EAAI,GAAI+V,EAAI,IAAKC,EAAIha,EAAGqY,CACrD,IAAI4B,GAAG,GAEP,OAAMva,EAAIqW,EAAIpW,OAAQ,CACrB,OAAQqE,EAAI+R,EAAIlW,OAAOH,IACtB,IAAK,IACJ,IAAI0N,EAAc2I,EAAKrW,GAAI,KAAM,IAAIc,OAAM,0BAA4BwD,EAAI,OAAQ+R,EACnFxS,GAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAE,UAAY9M,IAAG,CAAG,OAC/C,IAAK,IACJ,IAAI2J,EAAE,IAAIgP,EAAGtC,EAAInW,aAAaF,MAAQ,IAAMA,EAAIqW,EAAIpW,QAAS0J,GAAKzH,OAAOC,aAAawW,EACtF9U,GAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAEnD,KAAM3J,CAAG,OACtC,IAAK,KAAM,GAAI8D,GAAIuS,EAAIlW,SAASH,GAAI+M,EAAKjJ,IAAM,KAAOA,IAAM,IAAOA,EAAI,GACtED,GAAIA,EAAI5D,SAAW8M,EAAEA,EAAGD,EAAEhJ,KAAM9D,CAAG,OACpC,IAAK,IAAK6D,EAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAE,IAAM9M,IAAG,CAAG,OAClD,IAAK,IACJ6D,EAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAEA,KAAM9M,CAAG,OACtC,IAAK,KAAK,IAAK,IACd,GAAGqW,EAAIlW,OAAOH,EAAE,KAAO,KAAOqW,EAAIlW,OAAOH,EAAE,KAAO,IAAK,CACtD,GAAGsa,GAAI,KAAM,CAAEA,EAAG/G,GAAoBzG,EAAG0G,EAAM6C,EAAIlW,OAAOH,EAAE,KAAO,IAAM,IAAGsa,GAAI,KAAM,MAAO,GAC7FzW,EAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAEuJ,EAAIN,OAAO/V,EAAE,GAAKqa,GAAM/V,CAAGtE,IAAG,CAAG,QAG/D,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IACtDsE,EAAIA,EAAEkW,cAEP,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAChE,GAAG1N,EAAI,EAAG,MAAO,EACjB,IAAGwN,GAAI,KAAM,CAAEA,EAAG/G,GAAoBzG,EAAG0G,EAAO,IAAG8G,GAAI,KAAM,MAAO,GACpE3Q,EAAIrF,CAAG,SAAQtE,EAAIqW,EAAIpW,QAAUoW,EAAIlW,OAAOH,GAAGwa,gBAAkBlW,EAAGqF,GAAGrF,CACvE,IAAGA,IAAM,KAAO+V,EAAIG,gBAAkB,IAAKlW,EAAI,GAC/C,IAAGA,IAAM,IAAKA,EAAIiW,CAClB1W,GAAIA,EAAI5D,SAAW8M,EAAEzI,EAAGwI,EAAEnD,EAAI0Q,GAAM/V,CAAG,OACxC,IAAK,KAAK,IAAK,KAAK,IAAK,IACxB,GAAIgP,IAAGvG,EAAEzI,EAAGwI,EAAExI,EACd,IAAGgW,GAAI,KAAMA,EAAG/G,GAAoBzG,EAAG0G,EACvC,IAAG6C,EAAIN,OAAO/V,EAAG,GAAGgW,gBAAkB,MAAO,CAAE,GAAGsE,GAAI,KAAMhH,EAAExG,EAAIwN,EAAGpG,GAAK,GAAKmC,EAAIlW,OAAOH,EAAE,GAAKsE,CAAGgP,GAAEvG,EAAI,GAAKwN,GAAG,GAAIva,IAAG,MACpH,IAAGqW,EAAIN,OAAO/V,EAAE,GAAGgW,gBAAkB,QAAS,CAAE,GAAGsE,GAAI,KAAMhH,EAAExG,EAAIwN,EAAGpG,GAAK,GAAK,KAAO,IAAMZ,GAAEvG,EAAI,GAAK/M,IAAG,CAAGua,GAAG,QACjH,IAAGlE,EAAIN,OAAO/V,EAAE,GAAGgW,gBAAkB,QAAS,CAAE,GAAGsE,GAAI,KAAMhH,EAAExG,EAAIwN,EAAGpG,GAAK,GAAK,KAAO,IAAMZ,GAAEvG,EAAI,GAAK/M,IAAG,CAAGua,GAAG,QACjH,CAAEjH,EAAEvG,EAAI,MAAO/M,EACpB,GAAGsa,GAAI,MAAQhH,EAAEvG,IAAM,IAAK,MAAO,EACnClJ,GAAIA,EAAI5D,QAAUqT,CAAG+G,GAAM/V,CAAG,OAC/B,IAAK,IACJqF,EAAIrF,CACJ,OAAM+R,EAAIlW,OAAOH,OAAS,KAAOA,EAAIqW,EAAIpW,OAAQ0J,GAAK0M,EAAIlW,OAAOH,EACjE,IAAG2J,EAAE3F,OAAO,KAAO,IAAK,KAAM,4BAA8B2F,EAAI,GAChE,IAAGA,EAAE9C,MAAMoT,IAAc,CACxB,GAAGK,GAAI,KAAM,CAAEA,EAAG/G,GAAoBzG,EAAG0G,EAAO,IAAG8G,GAAI,KAAM,MAAO,GACpEzW,EAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAEnD,EAAE6Q,cAC9BH,GAAM1Q,EAAExJ,OAAO,OACT,IAAGwJ,EAAEpD,QAAQ,MAAQ,EAAG,CAC9BoD,GAAKA,EAAE9C,MAAM,sBAAsB,IAAI,GACvC,KAAIqT,GAAY7D,GAAMxS,EAAIA,EAAI5D,SAAW8M,EAAE,IAAID,EAAEnD,GAElD,MAED,IAAK,IACJ,GAAG2Q,GAAM,KAAM,CACd3Q,EAAIrF,CAAG,SAAQtE,EAAIqW,EAAIpW,SAAWqE,EAAE+R,EAAIlW,OAAOH,MAAQ,IAAK2J,GAAKrF,CACjET,GAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAEnD,EAAI,QAGlC,IAAK,KAAK,IAAK,IACdA,EAAIrF,CAAG,SAAQtE,EAAIqW,EAAIpW,QAAU,YAAYsG,QAAQjC,EAAE+R,EAAIlW,OAAOH,KAAO,EAAG2J,GAAKrF,CACjFT,GAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAEnD,EAAI,OACjC,IAAK,IACJA,EAAIrF,CAAG,OAAM+R,EAAIlW,SAASH,KAAOsE,EAAGqF,GAAGrF,CACvCT,GAAIA,EAAI5D,SAAW8M,EAAEzI,EAAGwI,EAAEnD,EAAI0Q,GAAM/V,CAAG,OACxC,IAAK,MAAOtE,CAAG,IAAGqW,EAAIlW,OAAOH,IAAM,KAAOqW,EAAIlW,OAAOH,IAAM,MAAOA,CAAG,OACrE,IAAK,KAAK,IAAK,IAAK6D,EAAIA,EAAI5D,SAAW8M,EAAGqN,IAAO,EAAE,IAAI9V,EAAIwI,EAAExI,KAAMtE,CAAG,OACtE,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IACpF2J,EAAIrF,CAAG,OAAMtE,EAAIqW,EAAIpW,QAAU,aAAasG,QAAQ8P,EAAIlW,SAASH,KAAO,EAAG2J,GAAG0M,EAAIlW,OAAOH,EACzF6D,GAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAEnD,EAAI,OACjC,IAAK,IAAK9F,EAAIA,EAAI5D,SAAW8M,EAAEzI,EAAGwI,EAAExI,KAAMtE,CAAG,OAC7C,IAAK,IAAK6D,EAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAE,OAAQ9M,CAAG,OACjD,QACC,GAAG,wCAAwCuG,QAAQjC,MAAQ,EAAG,KAAM,IAAIxD,OAAM,0BAA4BwD,EAAI,OAAS+R,EACvHxS,GAAIA,EAAI5D,SAAW8M,EAAE,IAAKD,EAAExI,KAAMtE,CAAG,SAKxC,GAAIya,GAAK,EAAGlE,EAAM,EAAGmE,CACrB,KAAI1a,EAAE6D,EAAI5D,OAAO,EAAGoa,EAAI,IAAKra,GAAK,IAAKA,EAAG,CACzC,OAAO6D,EAAI7D,GAAG+M,GACb,IAAK,KAAK,IAAK,IAAKlJ,EAAI7D,GAAG+M,EAAIwN,CAAIF,GAAI,GAAK,IAAGI,EAAK,EAAGA,EAAK,CAAG,OAC/D,IAAK,IACJ,GAAIC,EAAI7W,EAAI7D,GAAG8M,EAAEjG,MAAM,SAAW0P,EAAInJ,KAAKmM,IAAIhD,EAAImE,EAAI,GAAGza,OAAO,EACjE,IAAGwa,EAAK,EAAGA,EAAK,EAEjB,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAAKJ,EAAIxW,EAAI7D,GAAG+M,CAAG,OACtD,IAAK,IAAK,GAAGsN,IAAQ,IAAK,CAAExW,EAAI7D,GAAG+M,EAAI,GAAK,IAAG0N,EAAK,EAAGA,EAAK,EAAK,MACjE,IAAK,IACJ,MACD,IAAK,IACJ,GAAGA,EAAK,GAAK5W,EAAI7D,GAAG8M,EAAEjG,MAAM,QAAS4T,EAAK,CAC1C,IAAGA,EAAK,GAAK5W,EAAI7D,GAAG8M,EAAEjG,MAAM,QAAS4T,EAAK,CAC1C,IAAGA,EAAK,GAAK5W,EAAI7D,GAAG8M,EAAEjG,MAAM,QAAS4T,EAAK,IAI7C,OAAOA,GACN,IAAK,GAAG,MACR,IAAK,GACP,GAAGH,EAAGvG,GAAK,GAAK,CAAEuG,EAAGvG,EAAI,IAAKuG,EAAGnG,EAC9B,GAAGmG,EAAGnG,GAAM,GAAI,CAAEmG,EAAGnG,EAAI,IAAKmG,EAAGjU,EACjC,GAAGiU,EAAGjU,GAAM,GAAI,CAAEiU,EAAGjU,EAAI,IAAKiU,EAAGpG,EACjC,MACD,IAAK,GACP,GAAGoG,EAAGvG,GAAK,GAAK,CAAEuG,EAAGvG,EAAI,IAAKuG,EAAGnG,EAC9B,GAAGmG,EAAGnG,GAAM,GAAI,CAAEmG,EAAGnG,EAAI,IAAKmG,EAAGjU,EACjC,OAIF,GAAIsU,GAAO,GAAI/V,CACf,KAAI5E,EAAE,EAAGA,EAAI6D,EAAI5D,SAAUD,EAAG,CAC7B,OAAO6D,EAAI7D,GAAG+M,GACb,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAAK,MACxC,IAAK,IAAKlJ,EAAI7D,GAAG8M,EAAI,EAAIjJ,GAAI7D,GAAG+M,EAAI,GAAK,OACzC,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAClGlJ,EAAI7D,GAAG8M,EAAIqJ,GAAetS,EAAI7D,GAAG+M,EAAE7M,WAAW,GAAI2D,EAAI7D,GAAG8M,EAAGwN,EAAI/D,EAC5D1S,GAAI7D,GAAG+M,EAAI,GAAK,OACjB,IAAK,KAAK,IAAK,IACdnI,EAAK5E,EAAE,CACP,OAAM6D,EAAIe,IAAO,QACfN,EAAET,EAAIe,GAAImI,KAAO,KAAOzI,IAAM,MAC7BA,IAAM,KAAOA,IAAM,MAAQT,EAAIe,EAAG,IAAM,OAASf,EAAIe,EAAG,GAAGmI,IAAM,KAAOlJ,EAAIe,EAAG,GAAGmI,IAAM,KAAOlJ,EAAIe,EAAG,GAAGkI,IAAM,MAChHjJ,EAAI7D,GAAG+M,IAAM,MAAQzI,IAAM,KAAOA,IAAM,KAAOA,IAAM,MACrDA,IAAM,MAAQT,EAAIe,GAAIkI,IAAM,KAAOjJ,EAAIe,GAAIkI,IAAM,KAAOjJ,EAAIe,EAAG,IAAM,MAAQf,EAAIe,EAAG,GAAGmI,GAAK,MAC3F,CACFlJ,EAAI7D,GAAG8M,GAAKjJ,EAAIe,GAAIkI,CACpBjJ,GAAIe,IAAOkI,EAAE,GAAIC,EAAE,OAAQnI,EAE5B+V,GAAQ9W,EAAI7D,GAAG8M,CACf9M,GAAI4E,EAAG,CAAG,OACX,IAAK,IAAKf,EAAI7D,GAAG+M,EAAI,GAAKlJ,GAAI7D,GAAG8M,EAAImJ,GAAYnJ,EAAE0G,EAAO,SAG5D,GAAIoH,GAAK,GAAIC,EAAKC,CAClB,IAAGH,EAAK1a,OAAS,EAAG,CACnB,GAAG0a,EAAKza,WAAW,IAAM,GAAc,CACtC2a,EAAO/N,EAAE,GAAG6N,EAAKza,WAAW,KAAO,IAAM4M,EAAIA,CAC7CgO,GAAO9D,GAAU,IAAK2D,EAAME,OACtB,CACNA,EAAO/N,EAAE,GAAKsN,EAAO,GAAKtN,EAAIA,CAC9BgO,GAAO9D,GAAU,IAAK2D,EAAME,EAC5B,IAAGA,EAAM,GAAKhX,EAAI,IAAMA,EAAI,GAAGkJ,GAAK,IAAK,CACxC+N,EAAOA,EAAK/E,OAAO,EACnBlS,GAAI,GAAGiJ,EAAI,IAAMjJ,EAAI,GAAGiJ,GAG1BlI,EAAGkW,EAAK7a,OAAO,CACf,IAAI8a,GAAQlX,EAAI5D,MAChB,KAAID,EAAE,EAAGA,EAAI6D,EAAI5D,SAAUD,EAAG,GAAG6D,EAAI7D,IAAM,MAAQ6D,EAAI7D,GAAG+M,GAAK,KAAOlJ,EAAI7D,GAAG8M,EAAEvG,QAAQ,MAAQ,EAAG,CAAEwU,EAAQ/a,CAAG,OAC/G,GAAIgb,GAAMnX,EAAI5D,MACd,IAAG8a,IAAUlX,EAAI5D,QAAU6a,EAAKvU,QAAQ,QAAU,EAAG,CACpD,IAAIvG,EAAE6D,EAAI5D,OAAO,EAAGD,GAAI,IAAIA,EAAG,CAC9B,GAAG6D,EAAI7D,IAAM,MAAQ,KAAKuG,QAAQ1C,EAAI7D,GAAG+M,MAAQ,EAAG,QACpD,IAAGnI,GAAIf,EAAI7D,GAAG8M,EAAE7M,OAAO,EAAG,CAAE2E,GAAMf,EAAI7D,GAAG8M,EAAE7M,MAAQ4D,GAAI7D,GAAG8M,EAAIgO,EAAK/E,OAAOnR,EAAG,EAAGf,EAAI7D,GAAG8M,EAAE7M,YACpF,IAAG2E,EAAK,EAAGf,EAAI7D,GAAG8M,EAAI,OACtB,CAAEjJ,EAAI7D,GAAG8M,EAAIgO,EAAK/E,OAAO,EAAGnR,EAAG,EAAIA,IAAM,EAC9Cf,EAAI7D,GAAG+M,EAAI,GACXiO,GAAQhb,EAET,GAAG4E,GAAI,GAAKoW,EAAMnX,EAAI5D,OAAQ4D,EAAImX,GAAOlO,EAAIgO,EAAK/E,OAAO,EAAEnR,EAAG,GAAKf,EAAImX,GAAOlO,MAE1E,IAAGiO,IAAUlX,EAAI5D,QAAU6a,EAAKvU,QAAQ,QAAU,EAAG,CACzD3B,EAAKkW,EAAKvU,QAAQ,KAAK,CACvB,KAAIvG,EAAE+a,EAAO/a,GAAI,IAAKA,EAAG,CACxB,GAAG6D,EAAI7D,IAAM,MAAQ,KAAKuG,QAAQ1C,EAAI7D,GAAG+M,MAAQ,EAAG,QACpDzM,GAAEuD,EAAI7D,GAAG8M,EAAEvG,QAAQ,MAAM,GAAGvG,IAAI+a,EAAMlX,EAAI7D,GAAG8M,EAAEvG,QAAQ,KAAK,EAAE1C,EAAI7D,GAAG8M,EAAE7M,OAAO,CAC9E2a,GAAK/W,EAAI7D,GAAG8M,EAAEiJ,OAAOzV,EAAE,EACvB,MAAMA,GAAG,IAAKA,EAAG,CAChB,GAAGsE,GAAI,IAAMf,EAAI7D,GAAG8M,EAAE3M,OAAOG,KAAO,KAAOuD,EAAI7D,GAAG8M,EAAE3M,OAAOG,KAAO,KAAMsa,EAAKE,EAAK3a,OAAOyE,KAAQgW,EAElG/W,EAAI7D,GAAG8M,EAAI8N,CACX/W,GAAI7D,GAAG+M,EAAI,GACXiO,GAAQhb,EAET,GAAG4E,GAAI,GAAKoW,EAAMnX,EAAI5D,OAAQ4D,EAAImX,GAAOlO,EAAIgO,EAAK/E,OAAO,EAAEnR,EAAG,GAAKf,EAAImX,GAAOlO,CAC9ElI,GAAKkW,EAAKvU,QAAQ,KAAK,CACvB,KAAIvG,EAAE+a,EAAO/a,EAAE6D,EAAI5D,SAAUD,EAAG,CAC/B,GAAG6D,EAAI7D,IAAM,MAAS,MAAMuG,QAAQ1C,EAAI7D,GAAG+M,MAAQ,GAAK/M,IAAM+a,EAAQ,QACtEza,GAAEuD,EAAI7D,GAAG8M,EAAEvG,QAAQ,MAAM,GAAGvG,IAAI+a,EAAMlX,EAAI7D,GAAG8M,EAAEvG,QAAQ,KAAK,EAAE,CAC9DqU,GAAK/W,EAAI7D,GAAG8M,EAAEiJ,OAAO,EAAEzV,EACvB,MAAMA,EAAEuD,EAAI7D,GAAG8M,EAAE7M,SAAUK,EAAG,CAC7B,GAAGsE,EAAGkW,EAAK7a,OAAQ2a,GAAME,EAAK3a,OAAOyE,KAEtCf,EAAI7D,GAAG8M,EAAI8N,CACX/W,GAAI7D,GAAG+M,EAAI,GACXiO,GAAQhb,IAIX,IAAIA,EAAE,EAAGA,EAAE6D,EAAI5D,SAAUD,EAAG,GAAG6D,EAAI7D,IAAM,MAAQ,KAAKuG,QAAQ1C,EAAI7D,GAAG+M,IAAI,EAAG,CAC3E8N,EAAOT,EAAM,GAAKtN,EAAI,GAAK9M,EAAE,GAAK6D,EAAI7D,EAAE,GAAG8M,IAAM,KAAOA,EAAEA,CAC1DjJ,GAAI7D,GAAG8M,EAAIkK,GAAUnT,EAAI7D,GAAG+M,EAAGlJ,EAAI7D,GAAG8M,EAAG+N,EACzChX,GAAI7D,GAAG+M,EAAI,IAEZ,GAAIkO,GAAS,EACb,KAAIjb,EAAE,EAAGA,IAAM6D,EAAI5D,SAAUD,EAAG,GAAG6D,EAAI7D,IAAM,KAAMib,GAAUpX,EAAI7D,GAAG8M,CACpE,OAAOmO,GAGR,GAAIC,IAAW,uCACf,SAASC,IAAQrO,EAAGmL,GACnB,GAAGA,GAAM,KAAM,MAAO,MACtB,IAAImD,GAASC,WAAWpD,EAAG,GAC3B,QAAOA,EAAG,IACT,IAAK,IAAM,GAAGnL,GAAKsO,EAAQ,MAAO,KAAM,OACxC,IAAK,IAAM,GAAGtO,EAAKsO,EAAQ,MAAO,KAAM,OACxC,IAAK,IAAM,GAAGtO,EAAKsO,EAAQ,MAAO,KAAM,OACxC,IAAK,KAAM,GAAGtO,GAAKsO,EAAQ,MAAO,KAAM,OACxC,IAAK,KAAM,GAAGtO,GAAKsO,EAAQ,MAAO,KAAM,OACxC,IAAK,KAAM,GAAGtO,GAAKsO,EAAQ,MAAO,KAAM,QAEzC,MAAO,OAER,QAASE,IAAW5W,EAAGoI,GACtB,GAAIuJ,GAAM0D,GAAcrV,EACxB,IAAI6C,GAAI8O,EAAIpW,OAAQsb,EAAMlF,EAAI9O,EAAE,GAAGhB,QAAQ,IAC3C,IAAGgB,EAAE,GAAKgU,GAAK,IAAKhU,CACpB,IAAG8O,EAAIpW,OAAS,EAAG,KAAM,IAAIa,OAAM,iCAAmCuV,EAAI5P,KAAK,KAAO,IACtF,UAAUqG,KAAM,SAAU,OAAQ,EAAGuJ,EAAIpW,SAAW,GAAKsb,GAAK,EAAElF,EAAIA,EAAIpW,OAAO,GAAG,IAClF,QAAOoW,EAAIpW,QACV,IAAK,GAAGoW,EAAMkF,GAAK,GAAK,UAAW,UAAW,UAAWlF,EAAI,KAAOA,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAI,IAAM,OAClG,IAAK,GAAGA,EAAMkF,GAAK,GAAKlF,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAIA,EAAI,KAAOA,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAI,IAAM,OACzF,IAAK,GAAGA,EAAMkF,GAAK,GAAKlF,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAIA,EAAI,KAAOA,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAI,IAAM,OACzF,IAAK,GAAG,OAET,GAAI+C,GAAKtM,EAAI,EAAIuJ,EAAI,GAAKvJ,EAAI,EAAIuJ,EAAI,GAAKA,EAAI,EAC/C,IAAGA,EAAI,GAAG9P,QAAQ,QAAU,GAAK8P,EAAI,GAAG9P,QAAQ,QAAU,EAAG,OAAQgB,EAAG6R,EACxE,IAAG/C,EAAI,GAAGxP,MAAM,YAAc,MAAQwP,EAAI,GAAGxP,MAAM,YAAc,KAAM,CACtE,GAAI2U,GAAKnF,EAAI,GAAGxP,MAAMqU,GACtB,IAAIO,GAAKpF,EAAI,GAAGxP,MAAMqU,GACtB,OAAOC,IAAQrO,EAAG0O,IAAOjU,EAAG8O,EAAI,IAAM8E,GAAQrO,EAAG2O,IAAOlU,EAAG8O,EAAI,KAAO9O,EAAG8O,EAAImF,GAAM,MAAQC,GAAM,KAAO,EAAI,IAE7G,OAAQlU,EAAG6R,GAEZ,QAASlD,IAAWG,EAAIvJ,EAAEnD,GACzB,GAAGA,GAAK,KAAMA,IACd,IAAImN,GAAO,EACX,cAAcT,IACb,IAAK,SACJ,GAAGA,GAAO,UAAY1M,EAAE+R,OAAQ5E,EAAOnN,EAAE+R,WACpC5E,GAAOT,CACZ,OACD,IAAK,SACJ,GAAGA,GAAO,IAAM1M,EAAE+R,OAAQ5E,EAAOnN,EAAE+R,WAC9B5E,IAAQnN,EAAEgS,OAAS,KAAQhS,EAAO,MAAImE,GAAWuI,EACtD,IAAGS,GAAQ,KAAMA,EAAQnN,EAAEgS,OAAShS,EAAEgS,MAAMlM,EAAgB4G,KAAUvI,EAAU2B,EAAgB4G,GAChG,IAAGS,GAAQ,KAAMA,EAAO7E,EAAgBoE,IAAQ,SAChD,QAEF,GAAG3I,EAAcoJ,EAAK,GAAI,MAAOb,IAAYnJ,EAAGnD,EAChD,IAAGmD,YAAawH,MAAMxH,EAAImI,GAAcnI,EAAGnD,EAAE0K,SAC7C,IAAI3P,GAAI4W,GAAWxE,EAAMhK,EACzB,IAAGY,EAAchJ,EAAE,IAAK,MAAOuR,IAAYnJ,EAAGnD,EAC9C,IAAGmD,IAAM,KAAMA,EAAI,WAAa,IAAGA,IAAM,MAAOA,EAAI,YAC/C,IAAGA,IAAM,IAAMA,GAAK,KAAM,MAAO,EACtC,OAAOqN,IAASzV,EAAE,GAAIoI,EAAGnD,EAAGjF,EAAE,IAE/B,QAASkX,IAASvF,EAAKa,GACtB,SAAUA,IAAO,SAAU,CAC1BA,GAAOA,IAAQ,CACjB,KAAI,GAAIlX,GAAI,EAAGA,EAAI,MAAUA,EAAG,CAChC,GAAG8N,EAAU9N,IAAMgL,UAAW,CAAE,GAAGkM,EAAM,EAAGA,EAAMlX,CAAG,UAClD,GAAG8N,EAAU9N,IAAMqW,EAAK,CAAEa,EAAMlX,CAAG,QAEtC,GAAGkX,EAAM,EAAGA,EAAM,IAElBpJ,EAAUoJ,GAAOb,CAChB,OAAOa,GAER,QAAS2E,IAAeC,GACvB,IAAI,GAAI9b,GAAE,EAAGA,GAAG,MAAUA,EACzB,GAAG8b,EAAI9b,KAAOgL,UAAW4Q,GAASE,EAAI9b,GAAIA,GAG5C,QAAS+b,MACRjO,EAAYD,IAGb,GAAImO,KACHC,OAAQ/F,GACRgG,KAAMN,GACNO,OAAQrO,EACRsO,WAAYP,GACZQ,gBAAiB9I,GACjB+I,QAASpC,GACTqC,UAAW,QAASA,MAAc,MAAOP,IAAIG,OAASrO,GAGvD,IAAI0O,KACH9M,EAAK,4BACLC,EAAK,iCACLC,EAAK,kCACLC,EAAK,uCACLC,GAAM,UAAWC,GAAM,UAAWC,GAAM,UAAWC,GAAM,UACzDC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SACtEmM,GAAM,UAAWC,GAAM,UAAWC,GAAM,UAAWC,GAAM,UACzDC,GAAM,SACNvK,GAAM,0CACNC,GAAM,mDACNC,GAAM,kDACNC,GAAM,2DACNlC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SACtEC,GAAM,SAAUpB,GAAM,SAAUqB,GAAM,SAAUC,GAAM,SACtDC,GAAM,IACNC,GAAM,OACNC,GAAM,QACNC,GAAM,WACNgB,GAAM,4BACNC,GAAM,iCACNC,GAAM,kCACNC,GAAM,uCACNlB,GAAM,KACNC,GAAM,QACN/H,GAAM,QACNgI,GAAM,UACNC,GAAM,SACNC,GAAM,SACNC,GAAM,WACNC,GAAM,QACNC,GAAM,SACNC,GAAM,OACNtJ,GAAM,UACNuJ,GAAM,cACNC,GAAM,QACNC,GAAM,YACNC,GAAM,SAIP,IAAI+K,IAAc,kCAClB,SAASC,IAAarB,GACrB,GAAIrF,SAAaqF,IAAU,SAAW5N,EAAU4N,GAAUA,CAC1DrF,GAAMA,EAAItL,QAAQ+R,GAAa,SAC/B,OAAO,IAAIE,QAAO,IAAM3G,EAAM,KAE/B,QAAS4G,IAAWvE,EAAKgD,EAAQ7U,GAChC,GAAIqW,IAAK,EAAGjJ,GAAK,EAAGpU,GAAK,EAAGqU,GAAK,EAAG7N,GAAK,EAAG8N,GAAK,GAChDuH,EAAO7U,MAAMiW,SAAkBnX,QAAQ,SAAS9C,EAAG7C,GACnD,GAAI8M,GAAIkL,SAASnR,EAAM7G,EAAE,GAAI,GAC7B,QAAO6C,EAAE2X,cAAcra,OAAO,IAC7B,IAAK,IAAK+c,EAAIpQ,CAAG,OAAO,IAAK,IAAKjN,EAAIiN,CAAG,OACzC,IAAK,IAAKoH,EAAIpH,CAAG,OAAO,IAAK,IAAKqH,EAAIrH,CAAG,OACzC,IAAK,IAAK,GAAGoH,GAAK,EAAG7N,EAAIyG,MAAQmH,GAAInH,CAAG,UAG1C,IAAGqH,GAAK,GAAK9N,IAAM,GAAK4N,GAAK,EAAG,CAAE5N,EAAI4N,CAAGA,IAAK,EAC9C,GAAIkJ,IAAY,IAAMD,GAAG,EAAEA,GAAG,GAAI5I,OAAOG,gBAAgBzQ,OAAO,GAAK,KAAO,MAAQiQ,GAAG,EAAEA,EAAE,IAAIjQ,OAAO,GAAK,KAAO,MAAQnE,GAAG,EAAEA,EAAE,IAAImE,OAAO,EAC5I,IAAGmZ,EAAQld,QAAU,EAAGkd,EAAU,IAAMA,CACxC,IAAGA,EAAQld,QAAU,EAAGkd,EAAU,KAAOA,CACzC,IAAIC,IAAY,MAAQlJ,GAAG,EAAEA,EAAE,IAAIlQ,OAAO,GAAK,KAAO,MAAQqC,GAAG,EAAEA,EAAE,IAAIrC,OAAO,GAAK,KAAO,MAAQmQ,GAAG,EAAEA,EAAE,IAAInQ,OAAO,EACtH,IAAGkQ,IAAM,GAAK7N,IAAM,GAAK8N,IAAM,EAAG,MAAOgJ,EACzC,IAAGD,IAAM,GAAKjJ,IAAM,GAAKpU,IAAM,EAAG,MAAOud,EACzC,OAAOD,GAAU,IAAMC,EAIxB,GAAIC,KACHC,MAAO,QAGR,SAASC,IAAUlH,EAAKa,GACvB,MAAO0E,IAASyB,GAAYhH,IAAQA,EAAKa,GAY1C,GAAIsG,IAAQ,WACZ,GAAIA,KACJA,GAAM5d,QAAU,OAGhB,SAAS6d,KACR,GAAInZ,GAAI,EAAGqX,EAAQ,GAAI/U,OAAM,IAE7B,KAAI,GAAI/D,GAAG,EAAGA,GAAK,MAAOA,EAAE,CAC3ByB,EAAIzB,CACJyB,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CqX,GAAM9Y,GAAKyB,EAGZ,aAAcoZ,cAAe,YAAc,GAAIA,YAAW/B,GAASA,EAGpE,GAAIgC,GAAKF,GACT,SAASG,GAAmB9J,GAC3B,GAAIxP,GAAI,EAAGwI,EAAI,EAAGjK,EAAI,EAAG8Y,QAAe+B,cAAe,YAAc,GAAIA,YAAW,MAAQ,GAAI9W,OAAM,KAEtG,KAAI/D,EAAI,EAAGA,GAAK,MAAOA,EAAG8Y,EAAM9Y,GAAKiR,EAAEjR,EACvC,KAAIA,EAAI,EAAGA,GAAK,MAAOA,EAAG,CACzBiK,EAAIgH,EAAEjR,EACN,KAAIyB,EAAI,IAAMzB,EAAGyB,EAAI,KAAMA,GAAK,IAAKwI,EAAI6O,EAAMrX,GAAMwI,IAAM,EAAKgH,EAAEhH,EAAI,KAEvE,GAAIjJ,KACJ,KAAIhB,EAAI,EAAGA,GAAK,KAAMA,EAAGgB,EAAIhB,EAAI,SAAY6a,cAAe,YAAc/B,EAAMkC,SAAShb,EAAI,IAAKA,EAAI,IAAM,KAAO8Y,EAAM3X,MAAMnB,EAAI,IAAKA,EAAI,IAAM,IAClJ,OAAOgB,GAER,GAAIia,GAAKF,EAAmBD,EAC5B,IAAII,GAAKD,EAAG,GAAKE,EAAKF,EAAG,GAAKG,EAAKH,EAAG,GAAKI,EAAKJ,EAAG,GAAKK,EAAKL,EAAG,EAChE,IAAIM,GAAKN,EAAG,GAAKO,EAAKP,EAAG,GAAKQ,EAAKR,EAAG,GAAKS,EAAKT,EAAG,GAAKU,EAAKV,EAAG,EAChE,IAAIW,GAAKX,EAAG,IAAKY,EAAKZ,EAAG,IAAKa,EAAKb,EAAG,IAAKc,EAAKd,EAAG,IAAKe,EAAKf,EAAG,GAChE,SAASgB,GAAWC,EAAMC,GACzB,GAAI5Y,GAAI4Y,GAAQ,CAChB,KAAI,GAAIhf,GAAI,EAAGwM,EAAIuS,EAAK9e,OAAQD,EAAIwM,GAAIpG,EAAKA,IAAI,EAAKuX,GAAIvX,EAAE2Y,EAAK7e,WAAWF,MAAM,IAClF,QAAQoG,EAGT,QAAS6Y,GAAUpM,EAAGmM,GACrB,GAAI5Y,GAAI4Y,GAAQ,EAAGxS,EAAIqG,EAAE5S,OAAS,GAAID,EAAI,CAC1C,MAAMA,EAAIwM,GAAIpG,EACbyY,EAAGhM,EAAE7S,KAAQoG,EAAI,KACjBwY,EAAG/L,EAAE7S,KAASoG,GAAK,EAAK,KACxBuY,EAAG9L,EAAE7S,KAASoG,GAAK,GAAM,KACzBsY,EAAG7L,EAAE7S,KAAQoG,IAAM,IACnBqY,EAAG5L,EAAE7S,MAAQwe,EAAG3L,EAAE7S,MAAQue,EAAG1L,EAAE7S,MAAQse,EAAGzL,EAAE7S,MAC5Cqe,EAAGxL,EAAE7S,MAAQoe,EAAGvL,EAAE7S,MAAQme,EAAGtL,EAAE7S,MAAQke,EAAGrL,EAAE7S,MAC5Cie,EAAGpL,EAAE7S,MAAQge,EAAGnL,EAAE7S,MAAQ+d,EAAGlL,EAAE7S,MAAQ2d,EAAG9K,EAAE7S,KAC7CwM,IAAK,EACL,OAAMxM,EAAIwM,EAAGpG,EAAKA,IAAI,EAAKuX,GAAIvX,EAAEyM,EAAE7S,MAAM,IACzC,QAAQoG,EAGT,QAAS8Y,GAAUxG,EAAKsG,GACvB,GAAI5Y,GAAI4Y,GAAQ,CAChB,KAAI,GAAIhf,GAAI,EAAGwM,EAAIkM,EAAIzY,OAAQqE,EAAI,EAAGzE,EAAI,EAAGG,EAAIwM,GAAI,CACpDlI,EAAIoU,EAAIxY,WAAWF,IACnB,IAAGsE,EAAI,IAAM,CACZ8B,EAAKA,IAAI,EAAKuX,GAAIvX,EAAE9B,GAAG,SACjB,IAAGA,EAAI,KAAO,CACpB8B,EAAKA,IAAI,EAAKuX,GAAIvX,GAAK,IAAM9B,GAAG,EAAG,KAAM,IACzC8B,GAAKA,IAAI,EAAKuX,GAAIvX,GAAK,IAAK9B,EAAE,KAAM,SAC9B,IAAGA,GAAK,OAAUA,EAAI,MAAQ,CACpCA,GAAKA,EAAE,MAAM,EAAIzE,GAAI6Y,EAAIxY,WAAWF,KAAK,IACzCoG,GAAKA,IAAI,EAAKuX,GAAIvX,GAAK,IAAM9B,GAAG,EAAG,IAAK,IACxC8B,GAAKA,IAAI,EAAKuX,GAAIvX,GAAK,IAAM9B,GAAG,EAAG,KAAM,IACzC8B,GAAKA,IAAI,EAAKuX,GAAIvX,GAAK,IAAMvG,GAAG,EAAG,IAAMyE,EAAE,IAAI,IAAK,IACpD8B,GAAKA,IAAI,EAAKuX,GAAIvX,GAAK,IAAKvG,EAAE,KAAM,SAC9B,CACNuG,EAAKA,IAAI,EAAKuX,GAAIvX,GAAK,IAAM9B,GAAG,GAAI,KAAM,IAC1C8B,GAAKA,IAAI,EAAKuX,GAAIvX,GAAK,IAAM9B,GAAG,EAAG,KAAM,IACzC8B,GAAKA,IAAI,EAAKuX,GAAIvX,GAAK,IAAK9B,EAAE,KAAM,MAGtC,OAAQ8B,EAEToX,EAAM7B,MAAQgC,CACdH,GAAMuB,KAAOD,CACbtB,GAAM9a,IAAMuc,CACZzB,GAAM9E,IAAMwG,CACZ,OAAO1B,KAGP,IAAI2B,IAAM,QAAUC,MACpB,GAAI3e,KACJA,GAAQb,QAAU,OAElB,SAASyf,GAAQ9X,EAAGqQ,GACnB,GAAIpL,GAAIjF,EAAEhH,MAAM,KAAM+e,EAAI1H,EAAErX,MAAM,IAClC,KAAI,GAAIP,GAAI,EAAGsE,EAAI,EAAGib,EAAInS,KAAKkM,IAAI9M,EAAEvM,OAAQqf,EAAErf,QAASD,EAAIuf,IAAKvf,EAAG,CACnE,GAAIsE,EAAIkI,EAAExM,GAAGC,OAASqf,EAAEtf,GAAGC,OAAS,MAAOqE,EAC3C,IAAGkI,EAAExM,IAAMsf,EAAEtf,GAAI,MAAOwM,GAAExM,GAAKsf,EAAEtf,IAAM,EAAI,EAE5C,MAAOwM,GAAEvM,OAASqf,EAAErf,OAErB,QAASuf,GAAQC,GAChB,GAAGA,EAAEtf,OAAOsf,EAAExf,OAAS,IAAM,IAAK,MAAQwf,GAAEzb,MAAM,GAAG,GAAGuC,QAAQ,QAAU,EAAKkZ,EAAID,EAAQC,EAAEzb,MAAM,GAAI,GACvG,IAAIM,GAAImb,EAAE3F,YAAY,IACtB,OAAQxV,MAAO,EAAKmb,EAAIA,EAAEzb,MAAM,EAAGM,EAAE,GAGtC,QAASob,GAASD,GACjB,GAAGA,EAAEtf,OAAOsf,EAAExf,OAAS,IAAM,IAAK,MAAOyf,GAASD,EAAEzb,MAAM,GAAI,GAC9D,IAAIM,GAAImb,EAAE3F,YAAY,IACtB,OAAQxV,MAAO,EAAKmb,EAAIA,EAAEzb,MAAMM,EAAE,GAUnC,QAASqb,GAAejd,EAAKgR,GAC5B,SAAUA,KAAS,SAAUA,EAAO,GAAIY,MAAKZ,EAC7C,IAAIkM,GAAMlM,EAAKmM,UACfD,GAAMA,GAAO,EAAIlM,EAAKoM,YACtBF,GAAMA,GAAO,EAAKlM,EAAKqM,eAAe,CACtCrd,GAAIsd,YAAY,EAAGJ,EACnB,IAAIK,GAAOvM,EAAKe,cAAgB,IAChCwL,GAAMA,GAAO,EAAKvM,EAAKgB,WAAW,CAClCuL,GAAMA,GAAO,EAAIvM,EAAKc,SACtB9R,GAAIsd,YAAY,EAAGC,GAIpB,QAASC,GAAexd,GACvB,GAAIkd,GAAMld,EAAIyd,WAAW,GAAK,KAC9B,IAAIF,GAAMvd,EAAIyd,WAAW,GAAK,KAC9B,IAAI7J,GAAM,GAAIhC,KACd,IAAIzU,GAAIogB,EAAM,EAAMA,MAAS,CAC7B,IAAIhM,GAAIgM,EAAM,EAAMA,MAAS,CAC7B3J,GAAI8J,gBAAgB,EACpB9J,GAAI+J,YAAYJ,EAAM,KACtB3J,GAAIgK,SAASrM,EAAE,EACfqC,GAAI/B,QAAQ1U,EACZ,IAAIsU,GAAIyL,EAAM,EAAMA,MAAS,CAC7B,IAAIvZ,GAAIuZ,EAAM,EAAMA,MAAS,CAC7BtJ,GAAIiK,SAASX,EACbtJ,GAAIkK,WAAWna,EACfiQ,GAAImK,WAAWtM,GAAG,EAClB,OAAOmC,GAER,QAASoK,GAAkBC,GAC1BC,GAAUD,EAAM,EAChB,IAAIhX,KACJ,IAAIkX,GAAQ,CACZ,OAAMF,EAAKpZ,GAAKoZ,EAAK1gB,OAAS,EAAG,CAChC,GAAImW,GAAOuK,EAAKR,WAAW,EAC3B,IAAIW,GAAKH,EAAKR,WAAW,GAAIY,EAAMJ,EAAKpZ,EAAIuZ,CAC5C,IAAIrB,KACJ,QAAOrJ,GAEN,IAAK,OAAQ,CACZyK,EAAQF,EAAKR,WAAW,EACxB,IAAGU,EAAQ,EAAGpB,EAAEuB,MAAQL,EAAKR,WAAW,EAExC,IAAGW,EAAK,EAAG,CACV,GAAGD,EAAQ,EAAGpB,EAAEwB,MAAQN,EAAKR,WAAW,EACxC,IAAGU,EAAQ,EAAGpB,EAAEyB,MAAQP,EAAKR,WAAW,GAEzC,GAAGV,EAAEuB,MAAOvB,EAAE0B,GAAK,GAAI7M,MAAKmL,EAAEuB,MAAM,KACnC,MAEF,IAAK,GAAQ,CACZ,GAAII,GAAMT,EAAKR,WAAW,GAAIkB,EAAMV,EAAKR,WAAW,EACpDV,GAAE6B,IAAOD,EAAMjU,KAAKI,IAAI,EAAE,IAAM4T,CAChCA,GAAMT,EAAKR,WAAW,EAAIkB,GAAMV,EAAKR,WAAW,EAChDV,GAAE8B,IAAOF,EAAMjU,KAAKI,IAAI,EAAE,IAAM4T,EAE/B,OAEHT,EAAKpZ,EAAIwZ,CACTpX,GAAEyM,GAAQqJ,EAEX,MAAO9V,GAER,GAAI6X,EACJ,SAASC,KAAW,MAAOD,KAAOA,EAAKE,IACvC,QAASC,GAAMC,EAAMC,GACrB,GAAGD,EAAK,IAAM,IAAQA,EAAK,IAAM,GAAM,MAAOE,IAAUF,EAAMC,EAC9D,KAAID,EAAK,GAAK,KAAS,MAASA,EAAK,GAAG,KAAS,IAAM,MAAOG,IAAUH,EAAMC,EAC9E,IAAGD,EAAK3hB,OAAS,IAAK,KAAM,IAAIa,OAAM,iBAAmB8gB,EAAK3hB,OAAS,SACvE,IAAI+hB,GAAO,CACX,IAAIC,GAAM,GACV,IAAIC,GAAO,CACX,IAAIC,GAAgB,CACpB,IAAIC,GAAY,CAChB,IAAIC,GAAgB,CACpB,IAAIC,GAAc,CAElB,IAAIC,KAGJ,IAAI5B,GAAOiB,EAAK5d,MAAM,EAAE,IACxB4c,IAAUD,EAAM,EAGhB,IAAI6B,GAAKC,EAAe9B,EACxBqB,GAAOQ,EAAG,EACV,QAAOR,GACN,IAAK,GAAGC,EAAM,GAAK,OAAO,IAAK,GAAGA,EAAM,IAAM,OAC9C,IAAK,GAAG,GAAGO,EAAG,IAAM,EAAG,MAAOV,IAAUF,EAAMC,GAE9C,QAAS,KAAM,IAAI/gB,OAAM,sCAAwCkhB,IAIlE,GAAGC,IAAQ,IAAK,CAAEtB,EAAOiB,EAAK5d,MAAM,EAAEie,EAAMrB,IAAUD,EAAM,IAE5D,GAAI+B,GAASd,EAAK5d,MAAM,EAAEie,EAE1BU,GAAahC,EAAMqB,EAGnB,IAAIY,GAAUjC,EAAKR,WAAW,EAAG,IACjC,IAAG6B,IAAS,GAAKY,IAAY,EAAG,KAAM,IAAI9hB,OAAM,uCAAyC8hB,EAGzFjC,GAAKpZ,GAAK,CAGV6a,GAAYzB,EAAKR,WAAW,EAAG,IAG/BQ,GAAKpZ,GAAK,CAGVoZ,GAAKkC,IAAI,WAAY,4BAGrBR,GAAgB1B,EAAKR,WAAW,EAAG,IAGnC+B,GAAOvB,EAAKR,WAAW,EAAG,IAG1BmC,GAAc3B,EAAKR,WAAW,EAAG,IAGjCgC,GAAgBxB,EAAKR,WAAW,EAAG,IAGnC,KAAI,GAAI7M,IAAK,EAAGhT,EAAI,EAAGA,EAAI,MAAOA,EAAG,CACpCgT,EAAIqN,EAAKR,WAAW,EAAG,IACvB,IAAG7M,EAAE,EAAG,KACRiP,GAAUjiB,GAAKgT,EAIhB,GAAIwP,GAAUC,EAAUnB,EAAMK,EAE9Be,GAAWV,EAAaH,EAAeW,EAASb,EAAKM,EAGrD,IAAIU,GAAcC,EAAiBJ,EAASV,EAAWG,EAAWN,EAElEgB,GAAYb,GAAWe,KAAO,YAC9B,IAAGjB,EAAO,GAAKG,IAAkBe,EAAYH,EAAYZ,GAAec,KAAO,UAC/EF,GAAYV,EAAU,IAAIY,KAAO,MACjCF,GAAYV,UAAYA,CACxBU,GAAYhB,IAAMA,CAGlB,IAAIoB,MAAYC,KAAYC,KAAgBC,IAC5CC,GAAerB,EAAWa,EAAaH,EAASQ,EAAOpB,EAAMmB,EAAOE,EAAWlB,EAE/EqB,GAAiBH,EAAWC,EAAWF,EACvCA,GAAMK,OAEN,IAAIha,IACH4Z,UAAWA,EACXC,UAAWA,EAIZ,IAAG3B,GAAWA,EAAQ+B,IAAKja,EAAEia,KAAOlB,OAAQA,EAAQI,QAASA,EAC7D,OAAOnZ,GAIP,QAAS8Y,GAAe9B,GACvB,GAAGA,EAAKA,EAAKpZ,IAAM,IAAQoZ,EAAKA,EAAKpZ,EAAI,IAAM,GAAM,OAAQ,EAAG,EAEhEoZ,GAAKkC,IAAIgB,EAAkB,qBAI3BlD,GAAKpZ,GAAK,EAGV,IAAIya,GAAOrB,EAAKR,WAAW,EAAG,IAE9B,QAAQQ,EAAKR,WAAW,EAAE,KAAM6B,GAEjC,QAASW,GAAahC,EAAMqB,GAC3B,GAAI2B,GAAQ,CAIZhD,GAAKpZ,GAAK,CAGV,QAAQoc,EAAQhD,EAAKR,WAAW,IAC/B,IAAK,GAAM,GAAG6B,GAAQ,EAAG,KAAM,IAAIlhB,OAAM,gCAAkC6iB,EAAQ,OACnF,IAAK,IAAM,GAAG3B,GAAQ,EAAG,KAAM,IAAIlhB,OAAM,iCAAmC6iB,EAAQ,OACpF,QAAS,KAAM,IAAI7iB,OAAM,sCAAwC6iB,IAIlEhD,EAAKkC,IAAI,OAAQ,sBAGjBlC,GAAKkC,IAAI,eAAgB,cAI1B,QAASE,GAAUnB,EAAMK,GACxB,GAAI6B,GAAW1W,KAAK2W,KAAKnC,EAAK3hB,OAAOgiB,GAAK,CAC1C,IAAIa,KACJ,KAAI,GAAI9iB,GAAE,EAAGA,EAAI8jB,IAAY9jB,EAAG8iB,EAAQ9iB,EAAE,GAAK4hB,EAAK5d,MAAMhE,EAAEiiB,GAAKjiB,EAAE,GAAGiiB,EACtEa,GAAQgB,EAAS,GAAKlC,EAAK5d,MAAM8f,EAAS7B,EAC1C,OAAOa,GAIR,QAASY,GAAiBM,EAAIC,EAAIX,GACjC,GAAItjB,GAAI,EAAGwM,EAAI,EAAG8S,EAAI,EAAGlZ,EAAI,EAAG9F,EAAI,EAAG4jB,EAAKZ,EAAMrjB,MAClD,IAAIkkB,MAAU7Q,IAEd,MAAMtT,EAAIkkB,IAAMlkB,EAAG,CAAEmkB,EAAInkB,GAAGsT,EAAEtT,GAAGA,CAAGikB,GAAGjkB,GAAGsjB,EAAMtjB,GAEhD,KAAMM,EAAIgT,EAAErT,SAAUK,EAAG,CACxBN,EAAIsT,EAAEhT,EACNkM,GAAIwX,EAAGhkB,GAAGwM,CAAG8S,GAAI0E,EAAGhkB,GAAGsf,CAAGlZ,GAAI4d,EAAGhkB,GAAGoG,CACpC,IAAG+d,EAAInkB,KAAOA,EAAG,CAChB,GAAGwM,KAAO,GAAkB2X,EAAI3X,KAAOA,EAAG2X,EAAInkB,GAAKmkB,EAAI3X,EACvD,IAAG8S,KAAO,GAAK6E,EAAI7E,KAAOA,EAAG6E,EAAInkB,GAAKmkB,EAAI7E,GAE3C,GAAGlZ,KAAO,EAAgB+d,EAAI/d,GAAKpG,CACnC,IAAGwM,KAAO,GAAKxM,GAAKmkB,EAAInkB,GAAI,CAAEmkB,EAAI3X,GAAK2X,EAAInkB,EAAI,IAAGsT,EAAEwG,YAAYtN,GAAKlM,EAAGgT,EAAE9L,KAAKgF,GAC/E,GAAG8S,KAAO,GAAKtf,GAAKmkB,EAAInkB,GAAI,CAAEmkB,EAAI7E,GAAK6E,EAAInkB,EAAI,IAAGsT,EAAEwG,YAAYwF,GAAKhf,EAAGgT,EAAE9L,KAAK8X,IAEhF,IAAItf,EAAE,EAAGA,EAAIkkB,IAAMlkB,EAAG,GAAGmkB,EAAInkB,KAAOA,EAAG,CACtC,GAAGsf,KAAO,GAAkB6E,EAAI7E,KAAOA,EAAG6E,EAAInkB,GAAKmkB,EAAI7E,OAClD,IAAG9S,KAAO,GAAK2X,EAAI3X,KAAOA,EAAG2X,EAAInkB,GAAKmkB,EAAI3X,GAGhD,IAAIxM,EAAE,EAAGA,EAAIkkB,IAAMlkB,EAAG,CACrB,GAAGgkB,EAAGhkB,GAAGoW,OAAS,EAAiB,QACnC9V,GAAIN,CACJ,IAAGM,GAAK6jB,EAAI7jB,GAAI,EAAG,CAClBA,EAAI6jB,EAAI7jB,EACR2jB,GAAGjkB,GAAKikB,EAAG3jB,GAAK,IAAM2jB,EAAGjkB,SACjBM,IAAM,IAAM,IAAM6jB,EAAI7jB,IAAMA,GAAK6jB,EAAI7jB,GAC9C6jB,GAAInkB,IAAM,EAGXikB,EAAG,IAAM,GACT,KAAIjkB,EAAE,EAAGA,EAAIkkB,IAAMlkB,EAAG,CACrB,GAAGgkB,EAAGhkB,GAAGoW,OAAS,EAAgB6N,EAAGjkB,IAAM,KAI7C,QAASokB,GAAeC,EAAOC,EAASC,GACvC,GAAIC,GAAQH,EAAMG,MAAOC,EAAOJ,EAAMI,IAEtC,IAAI9a,KACJ,IAAIuN,GAAMsN,CACV,OAAMD,GAAQE,EAAO,GAAKvN,GAAO,EAAG,CACnCvN,EAAEnC,KAAK8c,EAAQtgB,MAAMkT,EAAMwN,EAAMxN,EAAMwN,EAAOA,GAC9CD,IAAQC,CACRxN,GAAMyN,GAAcJ,EAAMrN,EAAM,GAEjC,GAAGvN,EAAE1J,SAAW,EAAG,MAAQ2kB,IAAQ,EACnC,OAAQ7Y,GAAQpC,GAAG3F,MAAM,EAAGqgB,EAAMI,MAKnC,QAASzB,GAAW9L,EAAK2N,EAAK/B,EAASb,EAAKM,GAC3C,GAAIjP,GAAI8P,CACR,IAAGlM,IAAQkM,EAAY,CACtB,GAAGyB,IAAQ,EAAG,KAAM,IAAI/jB,OAAM,yCACxB,IAAGoW,KAAS,EAAgB,CAClC,GAAI4N,GAAShC,EAAQ5L,GAAMjD,GAAKgO,IAAM,GAAG,CACzC,KAAI6C,EAAQ,MACZ,KAAI,GAAI9kB,GAAI,EAAGA,EAAIiU,IAAKjU,EAAG,CAC1B,IAAIsT,EAAIqR,GAAcG,EAAO9kB,EAAE,MAAQojB,EAAY,KACnDb,GAAU/a,KAAK8L,GAEhB,GAAGuR,GAAO,EAAG7B,EAAW2B,GAAcG,EAAO7C,EAAI,GAAG4C,EAAM,EAAG/B,EAASb,EAAKM,IAK7E,QAASwC,GAAgBjC,EAAS0B,EAAOjC,EAAWN,EAAK+C,GACxD,GAAItiB,MAAUuiB,IACd,KAAID,EAAMA,IACV,IAAIE,GAAUjD,EAAM,EAAG3hB,EAAI,EAAGsE,EAAK,CACnC,KAAItE,EAAEkkB,EAAOlkB,GAAG,GAAI,CACnB0kB,EAAK1kB,GAAK,IACVoC,GAAIA,EAAIzC,QAAUK,CAClB2kB,GAAUzd,KAAKsb,EAAQxiB,GACvB,IAAI6kB,GAAO5C,EAAUnV,KAAKiG,MAAM/S,EAAE,EAAE2hB,GACpCrd,GAAOtE,EAAE,EAAK4kB,CACd,IAAGjD,EAAM,EAAIrd,EAAI,KAAM,IAAI9D,OAAM,yBAA2BR,EAAI,MAAM2hB,EACtE,KAAIa,EAAQqC,GAAO,KACnB7kB,GAAIqkB,GAAc7B,EAAQqC,GAAOvgB,GAElC,OAAQwgB,MAAO1iB,EAAKiB,KAAK0hB,IAAYJ,KAItC,QAAS/B,GAAiBJ,EAASV,EAAWG,EAAWN,GACxD,GAAIqD,GAAKxC,EAAQ7iB,OAAQgjB,IACzB,IAAI+B,MAAWtiB,KAAUuiB,IACzB,IAAIC,GAAUjD,EAAM,EAAGjiB,EAAE,EAAGM,EAAE,EAAGuE,EAAE,EAAGD,EAAG,CACzC,KAAI5E,EAAE,EAAGA,EAAIslB,IAAMtlB,EAAG,CACrB0C,IACAmC,GAAK7E,EAAIoiB,CAAY,IAAGvd,GAAKygB,EAAIzgB,GAAGygB,CACpC,IAAGN,EAAKngB,GAAI,QACZogB,KACA,IAAIM,KACJ,KAAIjlB,EAAEuE,EAAGvE,GAAG,GAAI,CACfilB,EAAKjlB,GAAK,IACV0kB,GAAK1kB,GAAK,IACVoC,GAAIA,EAAIzC,QAAUK,CAClB2kB,GAAUzd,KAAKsb,EAAQxiB,GACvB,IAAI6kB,GAAO5C,EAAUnV,KAAKiG,MAAM/S,EAAE,EAAE2hB,GACpCrd,GAAOtE,EAAE,EAAK4kB,CACd,IAAGjD,EAAM,EAAIrd,EAAI,KAAM,IAAI9D,OAAM,yBAA2BR,EAAI,MAAM2hB,EACtE,KAAIa,EAAQqC,GAAO,KACnB7kB,GAAIqkB,GAAc7B,EAAQqC,GAAOvgB,EACjC,IAAG2gB,EAAKjlB,GAAI,MAEb2iB,EAAYpe,IAAOugB,MAAO1iB,EAAKiB,KAAK0hB,IAAYJ,KAEjD,MAAOhC,GAIR,QAASQ,GAAerB,EAAWa,EAAaH,EAASQ,EAAOpB,EAAMmB,EAAOE,EAAWgB,GACvF,GAAIiB,GAAgB,EAAGtB,EAAMZ,EAAMrjB,OAAO,EAAE,CAC5C,IAAI6kB,GAAS7B,EAAYb,GAAWze,IACpC,IAAI3D,GAAI,EAAGylB,EAAU,EAAGtC,CACxB,MAAMnjB,EAAI8kB,EAAO7kB,OAAQD,GAAI,IAAK,CACjC,GAAI2gB,GAAOmE,EAAO9gB,MAAMhE,EAAGA,EAAE,IAC7B4gB,IAAUD,EAAM,GAChB8E,GAAU9E,EAAKR,WAAW,EAC1BgD,GAAOuC,GAAU/E,EAAK,EAAE8E,EAAQvB,EAChCZ,GAAM9b,KAAK2b,EACX,IAAIxZ,IACHwZ,KAAOA,EACP/M,KAAOuK,EAAKR,WAAW,GACvBwF,MAAOhF,EAAKR,WAAW,GACvB3T,EAAOmU,EAAKR,WAAW,EAAG,KAC1Bb,EAAOqB,EAAKR,WAAW,EAAG,KAC1B/Z,EAAOua,EAAKR,WAAW,EAAG,KAC1ByF,MAAOjF,EAAKR,WAAW,IACvB0F,MAAOlF,EAAKR,WAAW,EAAG,KAC1BqE,MAAO,EACPC,KAAM,EAEP,IAAIvD,GAAQP,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,EAC3F,IAAGe,IAAU,EAAGvX,EAAEmc,GAAKC,EAAUpF,EAAMA,EAAKpZ,EAAE,EAC9C,IAAIyZ,GAAQL,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,EAC3F,IAAGa,IAAU,EAAGrX,EAAEwX,GAAK4E,EAAUpF,EAAMA,EAAKpZ,EAAE,EAC9CoC,GAAE6a,MAAQ7D,EAAKR,WAAW,EAAG,IAC7BxW,GAAE8a,KAAO9D,EAAKR,WAAW,EAAG,IAC5B,IAAGxW,EAAE8a,KAAO,GAAK9a,EAAE6a,MAAQ,EAAG,CAAE7a,EAAE8a,KAAO9a,EAAEyM,KAAO,CAAGzM,GAAE6a,MAAQpB,CAAYzZ,GAAEwZ,KAAO,GACpF,GAAGxZ,EAAEyM,OAAS,EAAG,CAChBoP,EAAgB7b,EAAE6a,KAClB,IAAGtC,EAAO,GAAKsD,IAAkBpC,EAAYH,EAAYuC,GAAerC,KAAO,kBAEzE,IAAGxZ,EAAE8a,MAAQ,KAAkB,CACrC9a,EAAEqc,QAAU,KACZ,IAAG/C,EAAYtZ,EAAE6a,SAAWxZ,UAAWiY,EAAYtZ,EAAE6a,OAASO,EAAgBjC,EAASnZ,EAAE6a,MAAOvB,EAAYV,UAAWU,EAAYhB,IACnIgB,GAAYtZ,EAAE6a,OAAOrB,KAAOxZ,EAAEwZ,IAC9BxZ,GAAE2C,QAAW2W,EAAYtZ,EAAE6a,OAAO7gB,KAAKK,MAAM,EAAE2F,EAAE8a,UAC3C,CACN9a,EAAEqc,QAAU,SACZ,IAAGrc,EAAE8a,KAAO,EAAG9a,EAAE8a,KAAO,MACnB,IAAGe,IAAkBpC,GAAczZ,EAAE6a,QAAUpB,GAAcH,EAAYuC,GAAgB,CAC7F7b,EAAE2C,QAAU8X,EAAeza,EAAGsZ,EAAYuC,GAAe7hB,MAAOsf,EAAYsB,QAAW5gB,OAGzF,GAAGgG,EAAE2C,QAASsU,GAAUjX,EAAE2C,QAAS,EACnC+W,GAAMF,GAAQxZ,CACd4Z,GAAU/b,KAAKmC,IAIjB,QAASoc,GAAUpF,EAAMsF,GACxB,MAAO,IAAI3R,OAAU4R,GAAevF,EAAKsF,EAAO,GAAG,IAAK7Y,KAAKI,IAAI,EAAE,IAAI0Y,GAAevF,EAAKsF,GAAQ,IAAQ,aAAa,KAGzH,QAASE,GAAUzG,EAAUmC,GAC5BJ,GACA,OAAOE,GAAMH,EAAG4E,aAAa1G,GAAWmC,GAGzC,QAASwE,GAAK1F,EAAMkB,GACnB,GAAIzL,GAAOyL,GAAWA,EAAQzL,IAC9B,KAAIA,EAAM,CACT,GAAG/T,GAAWC,OAAOyB,SAAS4c,GAAOvK,EAAO,SAE7C,OAAOA,GAAQ,UACd,IAAK,OAAQ,MAAO+P,GAAUxF,EAAMkB,GACpC,IAAK,SAAU,MAAOF,GAAMpW,EAAIT,EAAc6V,IAAQkB,GACtD,IAAK,SAAU,MAAOF,GAAMpW,EAAIoV,GAAOkB,IAExC,MAAOF,GAAMhB,EAAMkB,GAGpB,QAASyE,GAASC,EAAK/S,GACtB,GAAI7J,GAAI6J,MAAY9S,EAAOiJ,EAAEjJ,MAAQ,YACrC,KAAI6lB,EAAI/C,UAAW+C,EAAI/C,YACvB,KAAI+C,EAAIhD,UAAWgD,EAAIhD,YACvB,IAAGgD,EAAI/C,UAAUvjB,SAAWsmB,EAAIhD,UAAUtjB,OAAQ,KAAM,IAAIa,OAAM,6BAClE,IAAGylB,EAAI/C,UAAUvjB,SAAW,EAAG,CAC9BsmB,EAAI/C,UAAU,GAAK9iB,EAAO,GAC1B6lB,GAAIhD,UAAU,IAAQJ,KAAMziB,EAAM0V,KAAM,GAEzC,GAAGzM,EAAE6c,MAAOD,EAAIhD,UAAU,GAAGqC,MAAQjc,EAAE6c,KACvCC,GAASF,GAEV,QAASE,GAASF,GACjB,GAAIG,GAAK,UACT,IAAGvH,GAAIwH,KAAKJ,EAAK,IAAMG,GAAK,MAC5B,IAAIjH,GAAImF,GAAQ,EAAInF,GAAE,GAAK,EAAIA,GAAE,GAAKA,EAAE,GAAK,EAAIA,GAAE,GAAK,EACxD8G,GAAIhD,UAAU/b,MAAQ2b,KAAMuD,EAAItQ,KAAM,EAAG9J,QAAQmT,EAAGgF,KAAK,EAAGjY,EAAE,GAAI8S,EAAE,GAAIlZ,EAAE,IAC1EmgB,GAAI/C,UAAUhc,KAAK+e,EAAI/C,UAAU,GAAKkD,EACtCE,GAAYL,GAEb,QAASK,GAAYL,EAAK7hB,GACzB4hB,EAASC,EACT,IAAIM,GAAK,MAAOthB,EAAI,KACpB,KAAI,GAAIvF,GAAIumB,EAAI/C,UAAUvjB,OAAS,EAAGD,GAAK,IAAKA,EAAG,CAClD,GAAI8mB,GAAQP,EAAIhD,UAAUvjB,EAC1B,QAAO8mB,EAAM1Q,MACZ,IAAK,GACJ,GAAG7Q,EAAGshB,EAAK,SACN,CAAEN,EAAIhD,UAAUwD,KAAOR,GAAI/C,UAAUuD,MAC1C,MACD,IAAK,IAAG,IAAK,IAAG,IAAK,GACpBxhB,EAAI,IACJ,IAAGqF,MAAMkc,EAAMxH,EAAIwH,EAAMta,EAAIsa,EAAM1gB,GAAIygB,EAAK,IAC5C,IAAGC,EAAMxH,GAAK,GAAKwH,EAAMta,GAAK,GAAKsa,EAAMxH,GAAKwH,EAAMta,EAAGqa,EAAK,IAC5D,OACD,QAASA,EAAK,IAAM,SAGtB,IAAIA,IAAOniB,EAAG,MAEd,IAAIsiB,GAAM,GAAI1S,MAAK,KAAM,EAAG,IAAKhU,EAAI,CAErC,IAAI2mB,GAAY7jB,OAAO8jB,OAAS9jB,OAAO8jB,OAAO,QAC9C,IAAIvjB,KACJ,KAAI3D,EAAI,EAAGA,EAAIumB,EAAI/C,UAAUvjB,SAAUD,EAAG,CACzCinB,EAAUV,EAAI/C,UAAUxjB,IAAM,IAC9B,IAAGumB,EAAIhD,UAAUvjB,GAAGoW,OAAS,EAAG,QAChCzS,GAAK6D,MAAM+e,EAAI/C,UAAUxjB,GAAIumB,EAAIhD,UAAUvjB,KAE5C,IAAIA,EAAI,EAAGA,EAAI2D,EAAK1D,SAAUD,EAAG,CAChC,GAAImkB,GAAM3E,EAAQ7b,EAAK3D,GAAG,GAC1BuF,GAAI0hB,EAAU9C,EACd,QAAO5e,EAAG,CACT,MAAMia,EAAQ2E,KAAS8C,EAAUzH,EAAQ2E,IAAOA,EAAM3E,EAAQ2E,EAE9DxgB,GAAK6D,MAAM2c,GACVhB,KAAMzD,EAASyE,GAAKpZ,QAAQ,IAAI,IAChCqL,KAAM,EACNwP,MAAOuB,EACPrB,GAAIkB,EAAK7F,GAAI6F,EACb1a,QAAS,OAIV2a,GAAU9C,GAAO,IAEjBA,GAAM3E,EAAQ7b,EAAK3D,GAAG,GACtBuF,GAAI0hB,EAAU9C,IAIhBxgB,EAAKyjB,KAAK,SAASnlB,EAAE+R,GAAK,MAAOqL,GAAQpd,EAAE,GAAI+R,EAAE,KACjDuS,GAAI/C,YAAgB+C,GAAIhD,YACxB,KAAIvjB,EAAI,EAAGA,EAAI2D,EAAK1D,SAAUD,EAAG,CAAEumB,EAAI/C,UAAUxjB,GAAK2D,EAAK3D,GAAG,EAAIumB,GAAIhD,UAAUvjB,GAAK2D,EAAK3D,GAAG,GAC7F,IAAIA,EAAI,EAAGA,EAAI2D,EAAK1D,SAAUD,EAAG,CAChC,GAAIqnB,GAAMd,EAAIhD,UAAUvjB,EACxB,IAAI0mB,GAAKH,EAAI/C,UAAUxjB,EAEvBqnB,GAAIlE,KAAQzD,EAASgH,GAAI3b,QAAQ,IAAI,GACrCsc,GAAI7a,EAAI6a,EAAI/H,EAAI+H,EAAIjhB,IAAMihB,EAAI1B,MAAQ,EACtC0B,GAAI5C,KAAO4C,EAAI/a,QAAU+a,EAAI/a,QAAQrM,OAAS,CAC9ConB,GAAI7C,MAAQ,CACZ6C,GAAIzB,MAASyB,EAAIzB,OAASuB,CAC1B,IAAGnnB,IAAM,EAAG,CACXqnB,EAAIjhB,EAAIzC,EAAK1D,OAAS,EAAI,GAAK,CAC/BonB,GAAI5C,KAAO,CACX4C,GAAIjR,KAAO,MACL,IAAGsQ,EAAG1iB,OAAO,IAAM,IAAK,CAC9B,IAAI1D,EAAEN,EAAE,EAAEM,EAAIqD,EAAK1D,SAAUK,EAAG,GAAGkf,EAAQ+G,EAAI/C,UAAUljB,KAAKomB,EAAI,KAClEW,GAAIjhB,EAAI9F,GAAKqD,EAAK1D,QAAU,EAAIK,CAChC,KAAIA,EAAEN,EAAE,EAAEM,EAAIqD,EAAK1D,SAAUK,EAAG,GAAGkf,EAAQ+G,EAAI/C,UAAUljB,KAAKkf,EAAQkH,GAAK,KAC3EW,GAAI/H,EAAIhf,GAAKqD,EAAK1D,QAAU,EAAIK,CAChC+mB,GAAIjR,KAAO,MACL,CACN,GAAGoJ,EAAQ+G,EAAI/C,UAAUxjB,EAAE,IAAI,KAAOwf,EAAQkH,GAAKW,EAAI/H,EAAItf,EAAI,CAC/DqnB,GAAIjR,KAAO,IAMd,QAASkR,GAAOf,EAAK1E,GACpB,GAAI0F,GAAQ1F,KAEZ,IAAG0F,EAAMC,UAAY,MAAO,MAAOC,IAAUlB,EAAKgB,EAClDX,GAAYL,EACZ,QAAOgB,EAAMC,UACZ,IAAK,MAAO,MAAOE,IAAUnB,EAAKgB,IAGnC,GAAI/a,GAAI,SAAU+Z,GACjB,GAAIoB,GAAY,EAAGC,EAAW,CAC9B,KAAI,GAAI5nB,GAAI,EAAGA,EAAIumB,EAAIhD,UAAUtjB,SAAUD,EAAG,CAC7C,GAAI4hB,GAAO2E,EAAIhD,UAAUvjB,EACzB,KAAI4hB,EAAKtV,QAAS,QAClB,IAAI8N,GAAOwH,EAAKtV,QAAQrM,MACxB,IAAGma,EAAO,EAAE,CACX,GAAGA,EAAO,KAAQuN,GAAcvN,EAAO,IAAS,MAC3CwN,IAAaxN,EAAO,KAAW,GAGtC,GAAIwI,GAAW2D,EAAI/C,UAAUvjB,OAAQ,GAAM,CAC3C,IAAI4nB,GAAYF,EAAY,GAAM,CAClC,IAAIG,GAAYH,EAAY,KAAS,CACrC,IAAII,GAAWF,EAAWD,EAAWhF,EAAUkF,CAC/C,IAAIE,GAAWD,EAAW,KAAS,CACnC,IAAIE,GAAYD,GAAW,IAAM,EAAI5a,KAAK2W,MAAMiE,EAAQ,KAAK,IAC7D,OAAQD,EAAWC,EAAUC,EAAY,KAAS,EAAKD,EAASC,IAAcD,GAAW,IAAM,EAAI5a,KAAK2W,MAAMiE,EAAQ,KAAK,IAC3H,IAAIxb,IAAM,EAAGyb,EAAWD,EAASF,EAAUlF,EAASgF,EAAUD,EAAW,EACzEpB,GAAIhD,UAAU,GAAGkB,KAAOkD,GAAa,CACrCnb,GAAE,IAAM+Z,EAAIhD,UAAU,GAAGiB,MAAMhY,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,KAAMA,EAAE,GAAG,GAAM,EAC3E,OAAOA,IACL+Z,EACH,IAAI5c,GAAIib,GAAQpY,EAAE,IAAM,EACxB,IAAIxM,GAAI,EAAG8T,EAAI,CACf,EACC,IAAI9T,EAAI,EAAGA,EAAI,IAAKA,EAAG2J,EAAEqW,YAAY,EAAGkI,EAAWloB,GACnD,KAAIA,EAAI,EAAGA,EAAI,IAAKA,EAAG2J,EAAEqW,YAAY,EAAG,EACxCrW,GAAEqW,YAAY,EAAG,GACjBrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,MACjBrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,EACjB,KAAIhgB,EAAI,EAAGA,EAAI,IAAKA,EAAG2J,EAAEqW,YAAY,EAAG,EACxCrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAGxT,EAAE,GACnB7C,GAAEqW,YAAY,EAAGxT,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAC7C7C,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,GAAG,GACpBrW,GAAEqW,YAAY,EAAGxT,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAG4W,EAChDzZ,GAAEqW,YAAY,EAAGxT,EAAE,GACnB7C,GAAEqW,aAAa,EAAGxT,EAAE,GAAKA,EAAE,GAAK,EAAG4W,EACnCzZ,GAAEqW,YAAY,EAAGxT,EAAE,GACnB,KAAIxM,EAAI,EAAGA,EAAI,MAAOA,EAAG2J,EAAEqW,aAAa,EAAGhgB,EAAIwM,EAAE,GAAKA,EAAE,GAAKxM,GAAK,GAEnE,GAAGwM,EAAE,GAAI,CACR,IAAIsH,EAAI,EAAGA,EAAItH,EAAE,KAAMsH,EAAG,CACzB,KAAM9T,EAAI,IAAM8T,EAAI,MAAO9T,EAAG2J,EAAEqW,aAAa,EAAGhgB,EAAIwM,EAAE,GAAKA,EAAE,GAAKxM,GAAK,EACvE2J,GAAEqW,aAAa,EAAGlM,IAAMtH,EAAE,GAAK,EAAI4W,EAAatP,EAAI,IAGtD,GAAIqU,GAAU,SAASrkB,GACtB,IAAIgQ,GAAKhQ,EAAG9D,EAAE8T,EAAE,IAAK9T,EAAG2J,EAAEqW,aAAa,EAAGhgB,EAAE,EAC5C,IAAG8D,EAAG,GAAI9D,CAAG2J,GAAEqW,aAAa,EAAGoD,IAEhCtP,GAAI9T,EAAI,CACR,KAAI8T,GAAGtH,EAAE,GAAIxM,EAAE8T,IAAK9T,EAAG2J,EAAEqW,aAAa,EAAGoI,EAAOC,QAChD,KAAIvU,GAAGtH,EAAE,GAAIxM,EAAE8T,IAAK9T,EAAG2J,EAAEqW,aAAa,EAAGoI,EAAOE,QAChDH,GAAQ3b,EAAE,GACV2b,GAAQ3b,EAAE,GACV,IAAIlM,GAAI,EAAG8Z,EAAO,CAClB,IAAIwH,GAAO2E,EAAIhD,UAAU,EACzB,MAAMjjB,EAAIimB,EAAIhD,UAAUtjB,SAAUK,EAAG,CACpCshB,EAAO2E,EAAIhD,UAAUjjB,EACrB,KAAIshB,EAAKtV,QAAS,QACpB8N,GAAOwH,EAAKtV,QAAQrM,MAClB,IAAGma,EAAO,KAAQ,QAClBwH,GAAK4C,MAAQ1Q,CACbqU,GAAS/N,EAAO,KAAW,GAE5B+N,EAAS3b,EAAE,GAAK,GAAM,EACtB,OAAM7C,EAAEpC,EAAI,IAAOoC,EAAEqW,aAAa,EAAGoI,EAAOhF,WAC5CtP,GAAI9T,EAAI,CACR,KAAIM,EAAI,EAAGA,EAAIimB,EAAIhD,UAAUtjB,SAAUK,EAAG,CACzCshB,EAAO2E,EAAIhD,UAAUjjB,EACrB,KAAIshB,EAAKtV,QAAS,QACpB8N,GAAOwH,EAAKtV,QAAQrM,MAClB,KAAIma,GAAQA,GAAQ,KAAQ,QAC5BwH,GAAK4C,MAAQ1Q,CACbqU,GAAS/N,EAAO,IAAS,GAE1B,MAAMzQ,EAAEpC,EAAI,IAAOoC,EAAEqW,aAAa,EAAGoI,EAAOhF,WAC5C,KAAIpjB,EAAI,EAAGA,EAAIwM,EAAE,IAAI,IAAKxM,EAAG,CAC5B,GAAI0mB,GAAKH,EAAI/C,UAAUxjB,EACvB,KAAI0mB,GAAMA,EAAGzmB,SAAW,EAAG,CAC1B,IAAIK,EAAI,EAAGA,EAAI,KAAMA,EAAGqJ,EAAEqW,YAAY,EAAG,EACzC,KAAI1f,EAAI,EAAGA,EAAI,IAAKA,EAAGqJ,EAAEqW,YAAY,GAAI,EACzC,KAAI1f,EAAI,EAAGA,EAAI,KAAMA,EAAGqJ,EAAEqW,YAAY,EAAG,EACzC,UAED4B,EAAO2E,EAAIhD,UAAUvjB,EACrB,IAAGA,IAAM,EAAG4hB,EAAK4C,MAAQ5C,EAAK6C,KAAO7C,EAAK4C,MAAQ,EAAIpB,CACtD,IAAImF,GAAOvoB,IAAM,GAAKunB,EAAM7mB,MAASkhB,EAAKuB,IAC1C,IAAGoF,EAAItoB,OAAS,GAAI,CACnBuoB,QAAQC,MAAM,QAAUF,EAAM,yBAA2BA,EAAIvkB,MAAM,EAAE,IACrEukB,GAAMA,EAAIvkB,MAAM,EAAG,IAEpBoW,EAAO,GAAGmO,EAAItoB,OAAO,EACrB0J,GAAEqW,YAAY,GAAIuI,EAAK,UACvB5e,GAAEqW,YAAY,EAAG5F,EACjBzQ,GAAEqW,YAAY,EAAG4B,EAAKxL,KACtBzM,GAAEqW,YAAY,EAAG4B,EAAK+D,MACtBhc,GAAEqW,aAAa,EAAG4B,EAAKpV,EACvB7C,GAAEqW,aAAa,EAAG4B,EAAKtC,EACvB3V,GAAEqW,aAAa,EAAG4B,EAAKxb,EACvB,KAAIwb,EAAKgE,MAAO,IAAItlB,EAAI,EAAGA,EAAI,IAAKA,EAAGqJ,EAAEqW,YAAY,EAAG,OACnDrW,GAAEqW,YAAY,GAAI4B,EAAKgE,MAAO,MACnCjc,GAAEqW,YAAY,EAAG4B,EAAKiE,OAAS,EAC/Blc,GAAEqW,YAAY,EAAG,EAAIrW,GAAEqW,YAAY,EAAG,EACtCrW,GAAEqW,YAAY,EAAG,EAAIrW,GAAEqW,YAAY,EAAG,EACtCrW,GAAEqW,YAAY,EAAG4B,EAAK4C,MACtB7a,GAAEqW,YAAY,EAAG4B,EAAK6C,KAAO9a,GAAEqW,YAAY,EAAG,GAE/C,IAAIhgB,EAAI,EAAGA,EAAIumB,EAAIhD,UAAUtjB,SAAUD,EAAG,CACzC4hB,EAAO2E,EAAIhD,UAAUvjB,EACvB,IAAG4hB,EAAK6C,MAAQ,KAAQ,CACrB9a,EAAEpC,EAAKqa,EAAK4C,MAAM,GAAM,CACxB,IAAIniB,GAAWC,OAAOyB,SAAS6d,EAAKtV,SAAU,CAC7CsV,EAAKtV,QAAQoc,KAAK/e,EAAGA,EAAEpC,EAAG,EAAGqa,EAAK6C,KAElC9a,GAAEpC,GAAMqa,EAAK6C,KAAO,KAAQ,QACtB,CACN,IAAInkB,EAAI,EAAGA,EAAIshB,EAAK6C,OAAQnkB,EAAGqJ,EAAEqW,YAAY,EAAG4B,EAAKtV,QAAQhM,GAC7D,MAAMA,EAAI,MAASA,EAAGqJ,EAAEqW,YAAY,EAAG,KAI1C,IAAIhgB,EAAI,EAAGA,EAAIumB,EAAIhD,UAAUtjB,SAAUD,EAAG,CACzC4hB,EAAO2E,EAAIhD,UAAUvjB,EACvB,IAAG4hB,EAAK6C,KAAO,GAAK7C,EAAK6C,KAAO,KAAQ,CACrC,GAAIpiB,GAAWC,OAAOyB,SAAS6d,EAAKtV,SAAU,CAC7CsV,EAAKtV,QAAQoc,KAAK/e,EAAGA,EAAEpC,EAAG,EAAGqa,EAAK6C,KAElC9a,GAAEpC,GAAMqa,EAAK6C,KAAO,IAAO,OACrB,CACN,IAAInkB,EAAI,EAAGA,EAAIshB,EAAK6C,OAAQnkB,EAAGqJ,EAAEqW,YAAY,EAAG4B,EAAKtV,QAAQhM,GAC7D,MAAMA,EAAI,KAAQA,EAAGqJ,EAAEqW,YAAY,EAAG,KAIzC,GAAI3d,EAAS,CACZsH,EAAEpC,EAAIoC,EAAE1J,WACF,CAEN,MAAM0J,EAAEpC,EAAIoC,EAAE1J,OAAQ0J,EAAEqW,YAAY,EAAG,GAExC,MAAOrW,GAGR,QAASgd,GAAKJ,EAAKoC,GAClB,GAAIC,GAAcrC,EAAI/C,UAAUte,IAAI,SAASjD,GAAK,MAAOA,GAAE+T,eAC3D,IAAI6S,GAAUD,EAAY1jB,IAAI,SAASjD,GAAK,GAAI+R,GAAI/R,EAAE1B,MAAM,IAAM,OAAOyT,GAAEA,EAAE/T,QAAUgC,EAAE+B,OAAO,IAAM,IAAM,EAAI,KAChH,IAAIa,GAAI,KACR,IAAG8jB,EAAKzoB,WAAW,KAAO,GAAc,CAAE2E,EAAI,IAAM8jB,GAAOC,EAAY,GAAG5kB,MAAM,GAAI,GAAK2kB,MACpF9jB,GAAI8jB,EAAKpiB,QAAQ,QAAU,CAChC,IAAIuiB,GAASH,EAAK3S,aAClB,IAAIlS,GAAIe,IAAM,KAAO+jB,EAAYriB,QAAQuiB,GAAUD,EAAQtiB,QAAQuiB,EACnE,IAAGhlB,KAAO,EAAG,MAAOyiB,GAAIhD,UAAUzf,EAElC,IAAImQ,IAAK6U,EAAOjiB,MAAM8F,EACtBmc,GAASA,EAAO/d,QAAQ2B,EAAK,GAC7B,IAAGuH,EAAG6U,EAASA,EAAO/d,QAAQ4B,EAAK,IACnC,KAAI7I,EAAI,EAAGA,EAAI8kB,EAAY3oB,SAAU6D,EAAG,CACvC,IAAImQ,EAAI2U,EAAY9kB,GAAGiH,QAAQ4B,EAAK,KAAOic,EAAY9kB,IAAIiH,QAAQ2B,EAAK,KAAOoc,EAAQ,MAAOvC,GAAIhD,UAAUzf,EAC5G,KAAImQ,EAAI4U,EAAQ/kB,GAAGiH,QAAQ4B,EAAK,KAAOkc,EAAQ/kB,IAAIiH,QAAQ2B,EAAK,KAAOoc,EAAQ,MAAOvC,GAAIhD,UAAUzf,GAErG,MAAO,MAGR,GAAI4gB,GAAO,EAGX,IAAItB,IAAc,CAElB,IAAIS,GAAmB,kBACvB,IAAIqE,IAAc,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAC5D,IAAIf,GAAe,kCACnB,IAAIiB,IAEHW,YAAa,EACbV,SAAU,EACVC,SAAU,EACVlF,WAAYA,EACZ4F,UAAW,EAEXnF,iBAAkBA,EAClBoF,qBAAsB,OACtBC,WAAY,EACZC,UAAW,EACXhC,aAAcA,EAEdiC,YAAa,UAAU,UAAU,SAAS,YAAY,WAAW,QAGlE,SAASC,GAAW9C,EAAK7G,EAAUmC,GAClCJ,GACA,IAAI9X,GAAI2d,EAAOf,EAAK1E,EACrBL,GAAG8H,cAAc5J,EAAU/V,GAG3B,QAASgC,GAAIhC,GACZ,GAAI9F,GAAM,GAAI+C,OAAM+C,EAAE1J,OACtB,KAAI,GAAID,GAAI,EAAGA,EAAI2J,EAAE1J,SAAUD,EAAG6D,EAAI7D,GAAKkC,OAAOC,aAAawH,EAAE3J,GACjE,OAAO6D,GAAI4C,KAAK,IAGjB,QAAS8iB,GAAMhD,EAAK1E,GACnB,GAAIlY,GAAI2d,EAAOf,EAAK1E,EACpB,QAAOA,GAAWA,EAAQzL,MAAQ,UACjC,IAAK,OAAQqL,GAAUD,GAAG8H,cAAczH,EAAQnC,SAAU,EAAM,OAAO/V,GACvE,IAAK,SAAU,aAAcA,IAAK,SAAWA,EAAIgC,EAAIhC,GACrD,IAAK,SAAU,MAAOe,SAAqBf,IAAK,SAAWA,EAAIgC,EAAIhC,IACnE,IAAK,SAAU,GAAGtH,EAAS,MAAOC,QAAOyB,SAAS4F,GAAKA,EAAIpH,EAAYoH,GAEvE,IAAK,QAAS,aAAcA,IAAK,SAAW4B,EAAI5B,GAAKA,GAEtD,MAAOA,GAGR,GAAI6f,EACJ,SAASC,GAASC,GAAQ,IACzB,GAAIC,GAAaD,EAAKC,UACtB,IAAIC,GAAU,GAAID,EAClBC,GAAQC,cAAc,GAAIxe,aAAY,EAAG,IAAKue,EAAQE,iBACtD,IAAGF,EAAQG,UAAWP,EAAQE,MACzB,MAAM,IAAI5oB,OAAM,kCACpB,MAAMf,GAAIyoB,QAAQC,MAAM,4BAA8B1oB,EAAEiqB,SAAWjqB,KAErE,QAASkqB,GAAgB3F,EAAShD,GACjC,IAAIkI,EAAO,MAAOU,IAAS5F,EAAShD,EACpC,IAAIqI,GAAaH,EAAMG,UACvB,IAAIC,GAAU,GAAID,EAClB,IAAI9lB,GAAM+lB,EAAQC,cAAcvF,EAAQtgB,MAAMsgB,EAAQ/c,GAAIqiB,EAAQE,iBAClExF,GAAQ/c,GAAKqiB,EAAQG,SACrB,OAAOlmB,GAGR,QAASsmB,GAAgB7F,GACxB,MAAOkF,GAAQA,EAAMY,eAAe9F,GAAW+F,GAAS/F,GAEzD,GAAIgG,IAAe,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAGjF,IAAIC,IAAa,EAAK,EAAK,EAAK,EAAK,EAAK,EAAK,EAAI,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAG3J,IAAIC,IAAY,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,MAE7J,SAASC,GAAW5nB,GAAK,GAAIkK,IAASlK,GAAG,EAAIA,GAAG,IAAO,QAAcA,GAAG,EAAIA,GAAG,IAAO,MAAY,QAASkK,GAAG,GAAOA,GAAG,EAAIA,GAAG,IAE/H,GAAI2d,UAA0Brf,cAAe,WAE7C,IAAIsf,IAAWD,GAAmB,GAAIrf,YAAW,GAAG,KACpD,KAAI,GAAIiI,IAAI,EAAGA,GAAK,GAAG,IAAMA,GAAGqX,GAASrX,IAAKmX,EAAWnX,GAEzD,SAASsX,IAAW/nB,EAAGgoB,GACtB,GAAIC,GAAMH,GAAS9nB,EAAI,IACvB,IAAGgoB,GAAK,EAAG,MAAOC,KAAS,EAAED,CAC7BC,GAAOA,GAAO,EAAKH,GAAU9nB,GAAG,EAAG,IACnC,IAAGgoB,GAAK,GAAI,MAAOC,KAAS,GAAGD,CAC/BC,GAAOA,GAAO,EAAKH,GAAU9nB,GAAG,GAAI,IACpC,OAAOioB,KAAS,GAAGD,EAIpB,QAASE,IAAYroB,EAAKsoB,GAAM,GAAIlnB,GAAKknB,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAAStoB,EAAIuoB,IAAInnB,GAAK,EAAI,EAAIpB,EAAIuoB,EAAE,IAAI,MAAMnnB,EAAI,EAChH,QAASonB,IAAYxoB,EAAKsoB,GAAM,GAAIlnB,GAAKknB,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAAStoB,EAAIuoB,IAAInnB,GAAK,EAAI,EAAIpB,EAAIuoB,EAAE,IAAI,MAAMnnB,EAAI,EAChH,QAASqnB,IAAYzoB,EAAKsoB,GAAM,GAAIlnB,GAAKknB,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAAStoB,EAAIuoB,IAAInnB,GAAK,EAAI,EAAIpB,EAAIuoB,EAAE,IAAI,MAAMnnB,EAAI,GAChH,QAASsnB,IAAY1oB,EAAKsoB,GAAM,GAAIlnB,GAAKknB,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAAStoB,EAAIuoB,IAAInnB,GAAK,EAAI,EAAIpB,EAAIuoB,EAAE,IAAI,MAAMnnB,EAAI,GAChH,QAASunB,IAAY3oB,EAAKsoB,GAAM,GAAIlnB,GAAKknB,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAAStoB,EAAIuoB,IAAInnB,GAAK,EAAI,EAAIpB,EAAIuoB,EAAE,IAAI,MAAMnnB,EAAI,IAGhH,QAASwnB,IAAY5oB,EAAKsoB,EAAInoB,GAC7B,GAAIiB,GAAKknB,EAAG,EAAIC,EAAKD,IAAK,EAAItmB,GAAM,GAAG7B,GAAG,CAC1C,IAAIiK,GAAIpK,EAAIuoB,KAAOnnB,CACnB,IAAGjB,EAAI,EAAIiB,EAAG,MAAOgJ,GAAIpI,CACzBoI,IAAKpK,EAAIuoB,EAAE,IAAK,EAAEnnB,CAClB,IAAGjB,EAAI,GAAKiB,EAAG,MAAOgJ,GAAIpI,CAC1BoI,IAAKpK,EAAIuoB,EAAE,IAAK,GAAGnnB,CACnB,IAAGjB,EAAI,GAAKiB,EAAG,MAAOgJ,GAAIpI,CAC1BoI,IAAKpK,EAAIuoB,EAAE,IAAK,GAAGnnB,CACnB,OAAOgJ,GAAIpI,EAIZ,QAAS6mB,IAAa7oB,EAAKsoB,EAAIle,GAAK,GAAIhJ,GAAIknB,EAAK,EAAGC,EAAID,IAAO,CAC9D,IAAGlnB,GAAK,EAAGpB,EAAIuoB,KAAOne,EAAI,IAAMhJ,MAC3B,CACJpB,EAAIuoB,IAAOne,GAAKhJ,EAAK,GACrBpB,GAAIuoB,EAAE,IAAMne,EAAE,IAAO,EAAEhJ,EAExB,MAAOknB,GAAK,EAGb,QAASQ,IAAa9oB,EAAKsoB,EAAIle,GAC9B,GAAIhJ,GAAIknB,EAAK,EAAGC,EAAID,IAAO,CAC3Ble,IAAKA,EAAE,IAAMhJ,CACbpB,GAAIuoB,IAAMne,CACV,OAAOke,GAAK,EAEb,QAASS,IAAa/oB,EAAKsoB,EAAIle,GAC9B,GAAIhJ,GAAIknB,EAAK,EAAGC,EAAID,IAAO,CAC3Ble,KAAMhJ,CACNpB,GAAIuoB,IAAOne,EAAI,GAAMA,MAAO,CAC5BpK,GAAIuoB,EAAE,GAAKne,CACX,OAAOke,GAAK,EAEb,QAASU,IAAchpB,EAAKsoB,EAAIle,GAC/B,GAAIhJ,GAAIknB,EAAK,EAAGC,EAAID,IAAO,CAC3Ble,KAAMhJ,CACNpB,GAAIuoB,IAAOne,EAAI,GAAMA,MAAO,CAC5BpK,GAAIuoB,EAAE,GAAKne,EAAI,GACfpK,GAAIuoB,EAAE,GAAKne,IAAM,CACjB,OAAOke,GAAK,GAIb,QAASW,IAAQd,EAAG/J,GACnB,GAAItU,GAAIqe,EAAE5qB,OAAQoG,EAAI,EAAEmG,EAAIsU,EAAK,EAAEtU,EAAIsU,EAAK,EAAG9gB,EAAI,CACnD,IAAGwM,GAAKsU,EAAI,MAAO+J,EACnB,IAAGxoB,EAAS,CACX,GAAIsH,GAAI2B,EAAejF,EAEvB,IAAGwkB,EAAEnC,KAAMmC,EAAEnC,KAAK/e,OACb,MAAM3J,EAAI6qB,EAAE5qB,SAAUD,EAAG2J,EAAE3J,GAAK6qB,EAAE7qB,EACvC,OAAO2J,OACD,IAAG+gB,GAAkB,CAC3B,GAAIkB,GAAI,GAAIvgB,YAAWhF,EACvB,IAAGulB,EAAEzf,IAAKyf,EAAEzf,IAAI0e,OACX,MAAM7qB,EAAIwM,IAAKxM,EAAG4rB,EAAE5rB,GAAK6qB,EAAE7qB,EAChC,OAAO4rB,GAERf,EAAE5qB,OAASoG,CACX,OAAOwkB,GAIR,QAASgB,IAAgBhpB,GACxB,GAAI8G,GAAI,GAAI/C,OAAM/D,EAClB,KAAI,GAAI7C,GAAI,EAAGA,EAAI6C,IAAK7C,EAAG2J,EAAE3J,GAAK,CAClC,OAAO2J,GAIR,QAASmiB,IAAWC,EAAOC,EAAMC,GAChC,GAAI/f,GAAS,EAAGpI,EAAI,EAAG9D,EAAI,EAAGM,EAAI,EAAG4rB,EAAQ,EAAG1f,EAAIuf,EAAM9rB,MAE1D,IAAIksB,GAAYzB,GAAmB,GAAI0B,aAAY,IAAMP,GAAgB,GACzE,KAAI7rB,EAAI,EAAGA,EAAI,KAAMA,EAAGmsB,EAASnsB,GAAK,CAEtC,KAAIA,EAAIwM,EAAGxM,EAAIisB,IAAOjsB,EAAG+rB,EAAM/rB,GAAK,CACpCwM,GAAIuf,EAAM9rB,MAEV,IAAIosB,GAAQ3B,GAAmB,GAAI0B,aAAY5f,GAAKqf,GAAgBrf,EAGpE,KAAIxM,EAAI,EAAGA,EAAIwM,IAAKxM,EAAG,CACtBmsB,EAAUroB,EAAIioB,EAAM/rB,KACpB,IAAGkM,EAASpI,EAAGoI,EAASpI,CACxBuoB,GAAMrsB,GAAK,EAEZmsB,EAAS,GAAK,CACd,KAAInsB,EAAI,EAAGA,GAAKkM,IAAUlM,EAAGmsB,EAASnsB,EAAE,IAAOksB,EAASA,EAAQC,EAASnsB,EAAE,IAAK,CAChF,KAAIA,EAAI,EAAGA,EAAIwM,IAAKxM,EAAG,CACtBksB,EAAQH,EAAM/rB,EACd,IAAGksB,GAAS,EAAGG,EAAMrsB,GAAKmsB,EAASD,EAAM,MAI1C,GAAII,GAAQ,CACZ,KAAItsB,EAAI,EAAGA,EAAIwM,IAAKxM,EAAG,CACtBssB,EAAQP,EAAM/rB,EACd,IAAGssB,GAAS,EAAG,CACdJ,EAAQtB,GAAWyB,EAAMrsB,GAAIkM,IAAUA,EAAOogB,CAC9C,KAAIhsB,GAAK,GAAI4L,EAAS,EAAIogB,GAAU,EAAGhsB,GAAG,IAAKA,EAC9C0rB,EAAKE,EAAO5rB,GAAGgsB,GAAWA,EAAM,GAAOtsB,GAAG,GAG7C,MAAOkM,GAIR,GAAIqgB,IAAW7B,GAAmB,GAAI0B,aAAY,KAAOP,GAAgB,IACzE,IAAIW,IAAW9B,GAAmB,GAAI0B,aAAY,IAAOP,GAAgB,GACzE,KAAInB,GAAkB,CACrB,IAAI,GAAI1qB,IAAI,EAAGA,GAAI,MAAOA,GAAGusB,GAASvsB,IAAK,CAC3C,KAAIA,GAAI,EAAGA,GAAI,KAAMA,GAAGwsB,GAASxsB,IAAK,GAEvC,WACC,GAAIysB,KACJ,IAAIzsB,GAAI,CACR,MAAKA,EAAE,GAAIA,IAAKysB,EAAMjlB,KAAK,EAC3BskB,IAAWW,EAAOD,GAAU,GAE5B,IAAIT,KACJ/rB,GAAI,CACJ,MAAMA,GAAG,IAAKA,IAAK+rB,EAAMvkB,KAAK,EAC9B,MAAMxH,GAAG,IAAKA,IAAK+rB,EAAMvkB,KAAK,EAC9B,MAAMxH,GAAG,IAAKA,IAAK+rB,EAAMvkB,KAAK,EAC9B,MAAMxH,GAAG,IAAKA,IAAK+rB,EAAMvkB,KAAK,EAC9BskB,IAAWC,EAAOQ,GAAU,QACxB,IAAIG,IAAc,QAAUC,MAChC,GAAIC,GAAYlC,GAAmB,GAAIrf,YAAW,SAClD,IAAI/K,GAAI,EAAGuE,EAAI,CACf,MAAMvE,EAAIkqB,EAAOvqB,OAAS,IAAKK,EAAG,CACjC,KAAMuE,EAAI2lB,EAAOlqB,EAAE,KAAMuE,EAAG+nB,EAAU/nB,GAAKvE,EAE5C,KAAKuE,EAAI,QAASA,EAAG+nB,EAAU/nB,GAAK,EAEpC,IAAIgoB,GAAYnC,GAAmB,GAAIrf,YAAW,OAClD,KAAI/K,EAAI,EAAGuE,EAAI,EAAGvE,EAAIiqB,EAAOtqB,OAAS,IAAKK,EAAG,CAC7C,KAAMuE,EAAI0lB,EAAOjqB,EAAE,KAAMuE,EAAGgoB,EAAUhoB,GAAKvE,EAG5C,QAASwsB,GAAanpB,EAAME,GAC3B,GAAIkpB,GAAO,CACX,OAAMA,EAAOppB,EAAK1D,OAAQ,CACzB,GAAIuM,GAAIY,KAAKkM,IAAI,MAAQ3V,EAAK1D,OAAS8sB,EACvC,IAAI9B,GAAI8B,EAAOvgB,GAAK7I,EAAK1D,MACzB4D,GAAImc,YAAY,GAAIiL,EACpBpnB,GAAImc,YAAY,EAAGxT,EACnB3I,GAAImc,YAAY,GAAKxT,EAAK,MAC1B,OAAMA,KAAM,EAAG3I,EAAIA,EAAI0D,KAAO5D,EAAKopB,KAEpC,MAAOlpB,GAAI0D,EAIZ,QAASylB,GAAiBrpB,EAAME,GAC/B,GAAImnB,GAAK,CACT,IAAI+B,GAAO,CACX,IAAIE,GAAQvC,GAAmB,GAAI0B,aAAY,SAC/C,OAAMW,EAAOppB,EAAK1D,OAAQ,CACzB,GAAIuM,GAA8BY,KAAKkM,IAAI,MAAQ3V,EAAK1D,OAAS8sB,EAGjE,IAAGvgB,EAAI,GAAI,CACVwe,EAAKO,GAAa1nB,EAAKmnB,MAAQ+B,EAAOvgB,GAAK7I,EAAK1D,QAChD,IAAG+qB,EAAK,EAAGA,GAAM,GAAKA,EAAK,EAC3BnnB,GAAI0D,EAAKyjB,EAAK,EAAK,CACnBnnB,GAAImc,YAAY,EAAGxT,EACnB3I,GAAImc,YAAY,GAAKxT,EAAK,MAC1B,OAAMA,KAAM,EAAG3I,EAAIA,EAAI0D,KAAO5D,EAAKopB,IACnC/B,GAAKnnB,EAAI0D,EAAI,CACb,UAGDyjB,EAAKO,GAAa1nB,EAAKmnB,MAAQ+B,EAAOvgB,GAAK7I,EAAK1D,QAAU,EAC1D,IAAIitB,GAAO,CACX,OAAM1gB,KAAM,EAAG,CACd,GAAI3M,GAAI8D,EAAKopB,EACbG,IAASA,GAAQ,EAAKrtB,GAAK,KAE3B,IAAIgH,IAAS,EAAGsmB,EAAO,CAEvB,IAAItmB,EAAQomB,EAAMC,GAAQ,CACzBrmB,GAASkmB,GAAQ,KACjB,IAAGlmB,EAAQkmB,EAAMlmB,GAAS,KAC1B,IAAGA,EAAQkmB,EAAM,MAAMppB,EAAKkD,EAAQsmB,IAASxpB,EAAKopB,EAAOI,IAASA,EAAO,MAAOA,EAGjF,GAAGA,EAAO,EAAG,CAEZttB,EAAIgtB,EAAUM,EACd,IAAGttB,GAAK,GAAImrB,EAAKS,GAAa5nB,EAAKmnB,EAAIL,GAAS9qB,EAAE,IAAI,GAAK,MACtD,CACJ4rB,GAAa5nB,EAAKmnB,EAAI,EACtBA,IAAM,CACNS,IAAa5nB,EAAKmnB,EAAIL,GAAS9qB,EAAE,KAAK,EACtCmrB,IAAM,EAEP,GAAIoC,GAAUvtB,EAAI,EAAK,EAAMA,EAAI,GAAI,CACrC,IAAGutB,EAAS,EAAG,CACd1B,GAAc7nB,EAAKmnB,EAAImC,EAAO5C,EAAO1qB,GACrCmrB,IAAMoC,EAGPvtB,EAAI+sB,EAAUG,EAAOlmB,EACrBmkB,GAAKS,GAAa5nB,EAAKmnB,EAAIL,GAAS9qB,IAAI,EACxCmrB,IAAM,CAEN,IAAIqC,GAASxtB,EAAI,EAAI,EAAKA,EAAE,GAAI,CAChC,IAAGwtB,EAAS,EAAG,CACd3B,GAAc7nB,EAAKmnB,EAAI+B,EAAOlmB,EAAQ2jB,EAAO3qB,GAC7CmrB,IAAMqC,EAEP,IAAI,GAAI/Z,GAAI,EAAGA,EAAI6Z,IAAQ7Z,EAAG,CAC7B2Z,EAAMC,GAAQH,EAAO,KACrBG,IAASA,GAAQ,EAAKvpB,EAAKopB,IAAS,QAClCA,EAEHvgB,GAAI2gB,EAAO,MACL,CAEN,GAAGttB,GAAK,IAAKA,EAAIA,EAAI,OAChBmrB,GAAKQ,GAAa3nB,EAAKmnB,EAAI,EAChCA,GAAKS,GAAa5nB,EAAKmnB,EAAIL,GAAS9qB,GACpCotB,GAAMC,GAAQH,EAAO,QACnBA,GAIJ/B,EAAKS,GAAa5nB,EAAKmnB,EAAI,GAAK,EAEjCnnB,EAAI0D,GAAMyjB,EAAK,GAAG,EAAG,CACrB,OAAOnnB,GAAI0D,EAEZ,MAAO,SAASmlB,GAAY/oB,EAAME,GACjC,GAAGF,EAAK1D,OAAS,EAAG,MAAO6sB,GAAanpB,EAAME,EAC9C,OAAOmpB,GAAiBrpB,EAAME,MAIhC,SAASwmB,IAAS1mB,GACjB,GAAIjB,GAAMkiB,GAAQ,GAAGxX,KAAKiG,MAAM1P,EAAK1D,OAAO,KAC5C,IAAIqtB,GAAMZ,GAAY/oB,EAAMjB,EAC5B,OAAOA,GAAIsB,MAAM,EAAGspB,GAIrB,GAAIC,IAAW7C,GAAmB,GAAI0B,aAAY,OAASP,GAAgB,MAC3E,IAAI2B,IAAW9C,GAAmB,GAAI0B,aAAY,OAASP,GAAgB,MAC3E,IAAI4B,IAAW/C,GAAmB,GAAI0B,aAAY,KAASP,GAAgB,IAC3E,IAAI6B,IAAY,EAAGC,GAAY,CAG/B,SAASC,IAAIjqB,EAAMopB,GAElB,GAAIc,GAAQzC,GAAYznB,EAAMopB,GAAQ,GAAKA,IAAQ,CACnD,IAAIe,GAAS1C,GAAYznB,EAAMopB,GAAQ,CAAGA,IAAQ,CAClD,IAAIgB,GAAS5C,GAAYxnB,EAAMopB,GAAQ,CAAGA,IAAQ,CAClD,IAAIjpB,GAAI,CAGR,IAAIioB,GAAQrB,GAAmB,GAAIrf,YAAW,IAAMwgB,GAAgB,GACpE,IAAIQ,IAAU,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EACpE,IAAIngB,GAAS,CACb,IAAIigB,GAAYzB,GAAmB,GAAIrf,YAAW,GAAKwgB,GAAgB,EACvE,IAAImC,GAAYtD,GAAmB,GAAIrf,YAAW,GAAKwgB,GAAgB,EACvE,IAAIrf,GAAIuf,EAAM9rB,MACd,KAAI,GAAID,GAAI,EAAGA,EAAI+tB,IAAU/tB,EAAG,CAC/B+rB,EAAMzB,EAAWtqB,IAAM8D,EAAIonB,GAAYvnB,EAAMopB,EAC7C,IAAG7gB,EAASpI,EAAGoI,EAASpI,CACxBqoB,GAASroB,IACTipB,IAAQ,EAIT,GAAIb,GAAQ,CACZC,GAAS,GAAK,CACd,KAAInsB,EAAI,EAAGA,GAAKkM,IAAUlM,EAAGguB,EAAUhuB,GAAKksB,EAASA,EAAQC,EAASnsB,EAAE,IAAK,CAC7E,KAAIA,EAAI,EAAGA,EAAIwM,IAAKxM,EAAG,IAAIksB,EAAQH,EAAM/rB,KAAO,EAAGqsB,EAAMrsB,GAAKguB,EAAU9B,IAExE,IAAII,GAAQ,CACZ,KAAItsB,EAAI,EAAGA,EAAIwM,IAAKxM,EAAG,CACtBssB,EAAQP,EAAM/rB,EACd,IAAGssB,GAAS,EAAG,CACdJ,EAAQvB,GAAS0B,EAAMrsB,KAAM,EAAEssB,CAC/B,KAAI,GAAIhsB,IAAK,GAAI,EAAEgsB,GAAQ,EAAGhsB,GAAG,IAAKA,EAAGmtB,GAASvB,EAAO5rB,GAAGgsB,GAAWA,EAAM,EAAMtsB,GAAG,GAKxF,GAAIiuB,KACJ/hB,GAAS,CACT,MAAM+hB,EAAOhuB,OAAS4tB,EAAQC,GAAS,CACtC5B,EAAQuB,GAASpC,GAAY1nB,EAAMopB,GACnCA,IAAQb,EAAQ,CAChB,QAAQA,KAAW,GAClB,IAAK,IACJpoB,EAAI,EAAIinB,GAAYpnB,EAAMopB,EAAOA,IAAQ,CACzCb,GAAQ+B,EAAOA,EAAOhuB,OAAS,EAC/B,OAAM6D,KAAM,EAAGmqB,EAAOzmB,KAAK0kB,EAC3B,OACD,IAAK,IACJpoB,EAAI,EAAIonB,GAAYvnB,EAAMopB,EAAOA,IAAQ,CACzC,OAAMjpB,KAAM,EAAGmqB,EAAOzmB,KAAK,EAC3B,OACD,IAAK,IACJ1D,EAAI,GAAKunB,GAAY1nB,EAAMopB,EAAOA,IAAQ,CAC1C,OAAMjpB,KAAO,EAAGmqB,EAAOzmB,KAAK,EAC5B,OACD,QACCymB,EAAOzmB,KAAK0kB,EACZ,IAAGhgB,EAASggB,EAAOhgB,EAASggB,CAC5B,SAKH,GAAIgC,GAAKD,EAAOjqB,MAAM,EAAG6pB,GAAQM,EAAKF,EAAOjqB,MAAM6pB,EACnD,KAAI7tB,EAAI6tB,EAAO7tB,EAAI,MAAOA,EAAGkuB,EAAGluB,GAAK,CACrC,KAAIA,EAAI8tB,EAAQ9tB,EAAI,KAAMA,EAAGmuB,EAAGnuB,GAAK,CACrC0tB,IAAY5B,GAAWoC,EAAIX,GAAU,IACrCI,IAAY7B,GAAWqC,EAAIX,GAAU,GACrC,OAAOT,GAIR,QAASqB,IAAQzqB,EAAM2d,GAEtB,GAAG3d,EAAK,IAAM,KAAOA,EAAK,GAAK,GAAM,CAAE,OAAQwH,EAAYmW,GAAM,GAGjE,GAAIyL,GAAO,CAGX,IAAIrK,GAAS,CAEb,IAAI2L,GAAS/iB,EAAegW,EAAMA,EAAO,GAAG,GAC5C,IAAIgN,GAAO,CACX,IAAIC,GAAKF,EAAOpuB,SAAS,CACzB,IAAIuuB,GAAY,EAAGC,EAAY,CAE/B,QAAO/L,EAAO,IAAM,EAAG,CACtBA,EAASwI,GAAYvnB,EAAMopB,EAAOA,IAAQ,CAC1C,IAAIrK,IAAW,GAAM,EAAG,CAEvB,GAAGqK,EAAO,EAAGA,GAAQ,GAAKA,EAAK,EAE/B,IAAIjM,GAAKnd,EAAKopB,IAAO,GAAKppB,GAAMopB,IAAO,GAAG,IAAI,CAC9CA,IAAQ,EAER,IAAGjM,EAAK,EAAG,CACV,IAAIQ,GAAOiN,EAAKD,EAAOxN,EAAI,CAAEuN,EAAS1C,GAAQ0C,EAAQC,EAAOxN,EAAKyN,GAAKF,EAAOpuB,OAC9E,MAAM6gB,KAAO,EAAG,CAAEuN,EAAOC,KAAU3qB,EAAKopB,IAAO,EAAIA,IAAQ,GAE5D,aACM,IAAIrK,GAAU,GAAM,EAAG,CAE7B8L,EAAY,CAAGC,GAAY,MACrB,CAEN1B,EAAOa,GAAIjqB,EAAMopB,EACjByB,GAAYd,EAAWe,GAAYd,GAEpC,OAAQ,CACP,IAAIrM,GAAQiN,EAAKD,EAAO,MAAQ,CAAED,EAAS1C,GAAQ0C,EAAQC,EAAO,MAAQC,GAAKF,EAAOpuB,OAEtF,GAAIyuB,GAAOpD,GAAY3nB,EAAMopB,EAAMyB,EACnC,IAAIG,GAAQjM,IAAS,GAAM,EAAI6J,GAASmC,GAAQnB,GAASmB,EACzD3B,IAAQ4B,EAAO,EAAIA,MAAU,CAE7B,KAAKA,IAAO,EAAG,OAAU,EAAGN,EAAOC,KAAUK,MACxC,IAAGA,GAAQ,IAAK,UAChB,CACJA,GAAQ,GACR,IAAIvB,GAAUuB,EAAO,EAAK,EAAMA,EAAK,GAAI,CAAI,IAAGvB,EAAS,EAAGA,EAAS,CACrE,IAAIrM,GAAMuN,EAAO/D,EAAOoE,EAExB,IAAGvB,EAAS,EAAG,CACdrM,GAAOuK,GAAY3nB,EAAMopB,EAAMK,EAC/BL,IAAQK,EAITsB,EAAOpD,GAAY3nB,EAAMopB,EAAM0B,EAC/BE,GAAQjM,IAAS,GAAM,EAAI8J,GAASkC,GAAQlB,GAASkB,EACrD3B,IAAQ4B,EAAO,EAAIA,MAAU,CAC7B,IAAItB,GAAUsB,EAAO,EAAI,EAAKA,EAAK,GAAI,CACvC,IAAIC,GAAMpE,EAAOmE,EAEjB,IAAGtB,EAAS,EAAG,CACduB,GAAOtD,GAAY3nB,EAAMopB,EAAMM,EAC/BN,IAAQM,EAIT,IAAI/L,GAAOiN,EAAKxN,EAAK,CAAEsN,EAAS1C,GAAQ0C,EAAQtN,EAAM,IAAMwN,GAAKF,EAAOpuB,OACxE,MAAMquB,EAAOvN,EAAK,CAAEsN,EAAOC,GAAQD,EAAOC,EAAOM,KAAQN,KAI5D,GAAGhN,EAAK,OAAQ+M,EAAStB,EAAK,IAAK,EACnC,QAAQsB,EAAOrqB,MAAM,EAAGsqB,GAAQvB,EAAK,IAAK,GAG3C,QAAS7C,IAAS5F,EAAShD,GAC1B,GAAI3d,GAAO2gB,EAAQtgB,MAAMsgB,EAAQ/c,GAAG,EACpC,IAAI1D,GAAMuqB,GAAQzqB,EAAM2d,EACxBgD,GAAQ/c,GAAK1D,EAAI,EACjB,OAAOA,GAAI,GAGZ,QAASgrB,IAAcC,EAAKC,GAC3B,GAAGD,EAAK,CAAE,SAAUtG,WAAY,YAAaA,QAAQC,MAAMsG,OACtD,MAAM,IAAIjuB,OAAMiuB,GAGtB,QAASjN,IAAUF,EAAMC,GACxB,GAAIlB,GAAOiB,CACXhB,IAAUD,EAAM,EAEhB,IAAI4C,MAAgBC,IACpB,IAAI7Z,IACH4Z,UAAWA,EACXC,UAAWA,EAEZ8C,GAAS3c,GAAKjJ,KAAMmhB,EAAQnhB,MAG5B,IAAIV,GAAI2gB,EAAK1gB,OAAS,CACtB,QAAO0gB,EAAK3gB,IAAM,IAAQ2gB,EAAK3gB,EAAE,IAAM,IAAQ2gB,EAAK3gB,EAAE,IAAM,GAAQ2gB,EAAK3gB,EAAE,IAAM,IAASA,GAAK,IAAKA,CACpG2gB,GAAKpZ,EAAIvH,EAAI,CAGb2gB,GAAKpZ,GAAK,CACV,IAAIynB,GAAOrO,EAAKR,WAAW,EAC3BQ,GAAKpZ,GAAK,CACV,IAAI0nB,GAAWtO,EAAKR,WAAW,EAG/BQ,GAAKpZ,EAAI0nB,CAET,KAAIjvB,EAAI,EAAGA,EAAIgvB,IAAQhvB,EAAG,CAEzB2gB,EAAKpZ,GAAK,EACV,IAAIga,GAAMZ,EAAKR,WAAW,EAC1B,IAAImB,GAAMX,EAAKR,WAAW,EAC1B,IAAIsF,GAAU9E,EAAKR,WAAW,EAC9B,IAAI+O,GAAOvO,EAAKR,WAAW,EAC3B,IAAIgP,GAAOxO,EAAKR,WAAW,EAC3BQ,GAAKpZ,GAAK,CACV,IAAI0e,GAAStF,EAAKR,WAAW,EAC7B,IAAIiP,GAAK1O,EAAkBC,EAAK3c,MAAM2c,EAAKpZ,EAAEke,EAAS9E,EAAKpZ,EAAEke,EAAQyJ,GACrEvO,GAAKpZ,GAAKke,EAAUyJ,EAAOC,CAE3B,IAAI3iB,GAAImU,EAAKpZ,CACboZ,GAAKpZ,EAAI0e,EAAS,CAElB,IAAGmJ,GAAMA,EAAG,GAAS,CACpB,IAAIA,EAAG,QAAa9N,IAAKA,EAAM8N,EAAG,GAAQ9N,GAC1C,KAAI8N,EAAG,QAAa7N,IAAKA,EAAM6N,EAAG,GAAQ7N,IAE3C8N,GAAiB1O,EAAMY,EAAKD,EAAK3X,EAAGylB,EACpCzO,GAAKpZ,EAAIiF,EAGV,MAAO7C,GAKR,QAAS0lB,IAAiB1O,EAAMY,EAAKD,EAAK3X,EAAGylB,GAE5CzO,EAAKpZ,GAAK,CACV,IAAIsZ,GAAQF,EAAKR,WAAW,EAC5B,IAAImP,GAAO3O,EAAKR,WAAW,EAC3B,IAAIzM,GAAOwM,EAAeS,EAE1B,IAAGE,EAAQ,KAAQ,KAAM,IAAI/f,OAAM,6BACnC,IAAIyuB,GAAQ5O,EAAKR,WAAW,EAC5B,IAAIqP,GAAO7O,EAAKR,WAAW,EAC3B,IAAIsP,GAAO9O,EAAKR,WAAW,EAE3B,IAAIsF,GAAU9E,EAAKR,WAAW,EAC9B,IAAI+O,GAAOvO,EAAKR,WAAW,EAG3B,IAAIgD,GAAO,EAAI,KAAI,GAAInjB,GAAI,EAAGA,EAAIylB,IAAWzlB,EAAGmjB,GAAQjhB,OAAOC,aAAawe,EAAKA,EAAKpZ,KACtF,IAAG2nB,EAAM,CACR,GAAIQ,GAAKhP,EAAkBC,EAAK3c,MAAM2c,EAAKpZ,EAAGoZ,EAAKpZ,EAAI2nB,GACvD,KAAIQ,EAAG,YAAavO,GAAIzN,EAAOgc,EAAG,OAAQvO,EAC1C,KAAIuO,EAAG,QAAapO,IAAKmO,EAAOC,EAAG,GAAQpO,GAC3C,KAAIoO,EAAG,QAAanO,IAAKiO,EAAOE,EAAG,GAAQnO,GAC3C,IAAG6N,EAAI,CACN,IAAIA,EAAG,YAAajO,GAAIzN,EAAO0b,EAAG,OAAQjO,EAC1C,KAAIiO,EAAG,QAAa9N,IAAKmO,EAAOC,EAAG,GAAQpO;AAC3C,IAAI8N,EAAG,QAAa7N,IAAKiO,EAAOE,EAAG,GAAQnO,KAG7CZ,EAAKpZ,GAAK2nB,CAKV,IAAIvrB,GAAOgd,EAAK3c,MAAM2c,EAAKpZ,EAAGoZ,EAAKpZ,EAAIioB,EACvC,QAAOF,GACN,IAAK,GAAG3rB,EAAOsmB,EAAgBtJ,EAAM8O,EAAO,OAC5C,IAAK,GAAG,MACR,QAAS,KAAM,IAAI3uB,OAAM,sCAAwCwuB,IAIlE,GAAIR,GAAM,KACV,IAAGjO,EAAQ,EAAG,CACb0O,EAAQ5O,EAAKR,WAAW,EACxB,IAAGoP,GAAS,UAAY,CAAEA,EAAQ5O,EAAKR,WAAW,EAAI2O,GAAM,KAC5DU,EAAO7O,EAAKR,WAAW,EACvBsP,GAAO9O,EAAKR,WAAW,GAGxB,GAAGqP,GAAQjO,EAAKsN,GAAcC,EAAK,wBAA0BvN,EAAM,OAASiO,EAC5E,IAAGC,GAAQnO,EAAKuN,GAAcC,EAAK,0BAA4BxN,EAAM,OAASmO,EAG9EE,IAAQhmB,EAAGwZ,EAAMxf,GAAOisB,OAAQ,KAAMzO,GAAIzN,IAE3C,QAASgU,IAAUnB,EAAK1E,GACvB,GAAI0F,GAAQ1F,KACZ,IAAIhe,MAAUgsB,IACd,IAAIlmB,GAAIib,GAAQ,EAChB,IAAIkL,GAAUvI,EAAMwI,YAAc,EAAI,EAAIlP,EAAQ,CAClD,IAAImP,GAAO,KACX,IAAGA,EAAMnP,GAAS,CAClB,IAAI7gB,GAAI,EAAGM,EAAI,CAEf,IAAI2uB,GAAW,EAAGD,EAAO,CACzB,IAAItuB,GAAO6lB,EAAI/C,UAAU,GAAIyM,EAAKvvB,EAAMwvB,EAAK3J,EAAIhD,UAAU,EAC3D,IAAI4M,KACJ,IAAIC,GAAQ,CAEZ,KAAIpwB,EAAI,EAAGA,EAAIumB,EAAI/C,UAAUvjB,SAAUD,EAAG,CACzCiwB,EAAK1J,EAAI/C,UAAUxjB,GAAGgE,MAAMtD,EAAKT,OAASiwB,GAAK3J,EAAIhD,UAAUvjB,EAC7D,KAAIkwB,EAAGzL,OAASyL,EAAG5jB,SAAW2jB,GAAM,WAAiB,QACrD,IAAIzL,GAAQyK,CAGZ,IAAIoB,GAAUzL,GAAQqL,EAAGhwB,OACzB,KAAIK,EAAI,EAAGA,EAAI2vB,EAAGhwB,SAAUK,EAAG+vB,EAAQrQ,YAAY,EAAGiQ,EAAG/vB,WAAWI,GAAK,IACzE+vB,GAAUA,EAAQrsB,MAAM,EAAGqsB,EAAQ9oB,EACnC4oB,GAAKnB,SAAekB,GAAG5jB,SAAW,SAAWkR,GAAMuB,KAAKmR,EAAG5jB,QAAS,GAAKkR,GAAM9a,IAAIwtB,EAAG5jB,QAAS,EAE/F,IAAI+hB,SAAgB6B,GAAG5jB,SAAW,SAAWf,EAAI2kB,EAAG5jB,SAAW4jB,EAAG5jB,OAClE,IAAGwjB,GAAU,EAAGzB,EAASlE,EAAgBkE,EAGzC1kB,GAAIib,GAAQ,GACZjb,GAAEqW,YAAY,EAAG,SACjBrW,GAAEqW,YAAY,EAAG,GACjBrW,GAAEqW,YAAY,EAAGa,EACjBlX,GAAEqW,YAAY,EAAG8P,EAEjB,IAAGI,EAAG/O,GAAIxB,EAAehW,EAAGumB,EAAG/O,QAC1BxX,GAAEqW,YAAY,EAAG,EACtBrW,GAAEqW,aAAa,EAAIa,EAAQ,EAAK,EAAIsP,EAAKnB,GACzCrlB,GAAEqW,YAAY,EAAKa,EAAQ,EAAK,EAAIwN,EAAOpuB,OAC3C0J,GAAEqW,YAAY,EAAKa,EAAQ,EAAK,EAAIqP,EAAG5jB,QAAQrM,OAC/C0J,GAAEqW,YAAY,EAAGqQ,EAAQpwB,OACzB0J,GAAEqW,YAAY,EAAG,EAEjBiP,IAAYtlB,EAAE1J,MACd4D,GAAI2D,KAAKmC,EACTslB,IAAYoB,EAAQpwB,MACpB4D,GAAI2D,KAAK6oB,EAMTpB,IAAYZ,EAAOpuB,MACnB4D,GAAI2D,KAAK6mB,EAGT,IAAGxN,EAAQ,EAAG,CACblX,EAAIib,GAAQ,GACZjb,GAAEqW,aAAa,EAAGmQ,EAAKnB,GACvBrlB,GAAEqW,YAAY,EAAGqO,EAAOpuB,OACxB0J,GAAEqW,YAAY,EAAGkQ,EAAG5jB,QAAQrM,OAC5BgvB,IAAYtlB,EAAEpC,CACd1D,GAAI2D,KAAKmC,GAIVA,EAAIib,GAAQ,GACZjb,GAAEqW,YAAY,EAAG,SACjBrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,GACjBrW,GAAEqW,YAAY,EAAGa,EACjBlX,GAAEqW,YAAY,EAAG8P,EACjBnmB,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,aAAa,EAAGmQ,EAAKnB,GAEvBrlB,GAAEqW,YAAY,EAAGqO,EAAOpuB,OACxB0J,GAAEqW,YAAY,EAAGkQ,EAAG5jB,QAAQrM,OAC5B0J,GAAEqW,YAAY,EAAGqQ,EAAQpwB,OACzB0J,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAGwE,EAEjB4L,IAASzmB,EAAEpC,CACXsoB,GAAMroB,KAAKmC,EACXymB,IAASC,EAAQpwB,MACjB4vB,GAAMroB,KAAK6oB,KACTrB,EAIHrlB,EAAIib,GAAQ,GACZjb,GAAEqW,YAAY,EAAG,UACjBrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAGgP,EACjBrlB,GAAEqW,YAAY,EAAGgP,EACjBrlB,GAAEqW,YAAY,EAAGoQ,EACjBzmB,GAAEqW,YAAY,EAAGiP,EACjBtlB,GAAEqW,YAAY,EAAG,EAEjB,OAAOjU,IAAUA,EAAQ,GAAQA,EAAQ8jB,GAAQlmB,IAElD,GAAI2mB,KACHC,IAAO,YACPC,IAAO,WAEPC,IAAO,YACPC,IAAO,aACPC,IAAO,YAEPC,IAAO,oBACPC,KAAQ,iCACRC,QAAW,2BAGZ,SAASC,IAAiBb,EAAID,GAC7B,GAAGC,EAAGc,MAAO,MAAOd,GAAGc,KAEvB,IAAIC,GAAMf,EAAG/M,MAAQ,GAAIlP,EAAIgd,EAAIpqB,MAAM,cACvC,IAAGoN,GAAKqc,GAAerc,EAAE,IAAK,MAAOqc,IAAerc,EAAE,GAEtD,IAAGgc,EAAI,CACNhc,GAAKgd,EAAMhB,GAAIppB,MAAM,oBACrB,IAAGoN,GAAKqc,GAAerc,EAAE,IAAK,MAAOqc,IAAerc,EAAE,IAGvD,MAAO,2BAIR,QAASid,IAAgBnS,GACxB,GAAIpb,GAAO+G,EAAcqU,EACzB,IAAIpV,KACJ,KAAI,GAAI3J,GAAI,EAAGA,EAAI2D,EAAK1D,OAAQD,GAAI,GAAI2J,EAAEnC,KAAK7D,EAAKK,MAAMhE,EAAGA,EAAE,IAC/D,OAAO2J,GAAElD,KAAK,QAAU,OAiBzB,QAAS0qB,IAAuBC,GAC/B,GAAIC,GAAUD,EAAKrmB,QAAQ,0CAA2C,SAASzG,GAC9E,GAAIR,GAAIQ,EAAEpE,WAAW,GAAG+D,SAAS,IAAI+R,aACrC,OAAO,KAAOlS,EAAE7D,QAAU,EAAI,IAAM6D,EAAIA,IAGzCutB,GAAUA,EAAQtmB,QAAQ,OAAQ,OAAOA,QAAQ,QAAS,MAE1D,IAAGsmB,EAAQlxB,OAAO,IAAM,KAAMkxB,EAAU,MAAQA,EAAQrtB,MAAM,EAC9DqtB,GAAUA,EAAQtmB,QAAQ,aAAc,OAAOA,QAAQ,SAAU,SAASA,QAAQ,gBAAiB,QAEnG,IAAIpB,MAAQpJ,EAAQ8wB,EAAQ9wB,MAAM,OAClC,KAAI,GAAI+wB,GAAK,EAAGA,EAAK/wB,EAAMN,SAAUqxB,EAAI,CACxC,GAAI5Y,GAAMnY,EAAM+wB,EAChB,IAAG5Y,EAAIzY,QAAU,EAAG,CAAE0J,EAAEnC,KAAK,GAAK,UAClC,IAAI,GAAIxH,GAAI,EAAGA,EAAI0Y,EAAIzY,QAAS,CAC/B,GAAIsxB,GAAM,EACV,IAAIC,GAAM9Y,EAAI1U,MAAMhE,EAAGA,EAAIuxB,EAC3B,IAAGC,EAAIrxB,OAAOoxB,EAAM,IAAM,IAAKA,QAC1B,IAAGC,EAAIrxB,OAAOoxB,EAAM,IAAM,IAAKA,GAAO,MACtC,IAAGC,EAAIrxB,OAAOoxB,EAAM,IAAM,IAAKA,GAAO,CAC3CC,GAAM9Y,EAAI1U,MAAMhE,EAAGA,EAAIuxB,EACvBvxB,IAAKuxB,CACL,IAAGvxB,EAAI0Y,EAAIzY,OAAQuxB,GAAO,GAC1B7nB,GAAEnC,KAAKgqB,IAIT,MAAO7nB,GAAElD,KAAK,QAEf,QAASgrB,IAAuB9tB,GAC/B,GAAIgG,KAGJ,KAAI,GAAI+nB,GAAK,EAAGA,EAAK/tB,EAAK1D,SAAUyxB,EAAI,CACvC,GAAIC,GAAOhuB,EAAK+tB,EAChB,OAAMA,GAAM/tB,EAAK1D,QAAU0xB,EAAKxxB,OAAOwxB,EAAK1xB,OAAS,IAAM,IAAK0xB,EAAOA,EAAK3tB,MAAM,EAAG2tB,EAAK1xB,OAAS,GAAK0D,IAAO+tB,EAC/G/nB,GAAEnC,KAAKmqB,GAIR,IAAI,GAAIC,GAAK,EAAGA,EAAKjoB,EAAE1J,SAAU2xB,EAAIjoB,EAAEioB,GAAMjoB,EAAEioB,GAAI7mB,QAAQ,qBAAsB,SAASuM,GAAM,MAAOpV,QAAOC,aAAa6V,SAASV,EAAGtT,MAAM,GAAI,MACjJ,OAAOuH,GAAI5B,EAAElD,KAAK,SAInB,QAASorB,IAAWtL,EAAK5iB,EAAMjD,GAC9B,GAAIoxB,GAAQ,GAAIC,EAAM,GAAIf,EAAQ,GAAIgB,CACtC,IAAIN,GAAK,CACT,MAAKA,EAAK,KAAMA,EAAI,CACnB,GAAIC,GAAOhuB,EAAK+tB,EAChB,KAAIC,GAAQA,EAAK9qB,MAAM,SAAU,KACjC,IAAIoN,GAAI0d,EAAK9qB,MAAM,uBACnB,IAAGoN,EAAG,OAAOA,EAAE,GAAGuG,eACjB,IAAK,mBAAoBsX,EAAQ7d,EAAE,GAAGge,MAAQ,OAC9C,IAAK,eAAgBjB,EAAQ/c,EAAE,GAAGge,MAAQ,OAC1C,IAAK,4BAA6BF,EAAM9d,EAAE,GAAGge,MAAQ,WAGrDP,CACF,QAAOK,EAAIvX,eACV,IAAK,SAAUwX,EAAQzmB,EAAIT,EAAcnH,EAAKK,MAAM0tB,GAAIjrB,KAAK,KAAO,OACpE,IAAK,mBAAoBurB,EAAQP,GAAuB9tB,EAAKK,MAAM0tB,GAAM,OACzE,QAAS,KAAM,IAAI5wB,OAAM,yCAA2CixB,IAErE,GAAInQ,GAAO+N,GAAQpJ,EAAKuL,EAAM9tB,MAAMtD,EAAKT,QAAS+xB,GAAQpC,OAAQ,MAClE,IAAGoB,EAAOpP,EAAKoP,MAAQA,EAGxB,QAASjP,IAAUH,EAAMC,GACxB,GAAGlW,EAAIiW,EAAK5d,MAAM,EAAE,KAAKwW,eAAiB,gBAAiB,KAAM,IAAI1Z,OAAM,yBAC3E,IAAIJ,GAAQmhB,GAAWA,EAAQnhB,MAAQ,EAEvC,IAAIiD,IAAQtB,GAAWC,OAAOyB,SAAS6d,GAAQA,EAAK3d,SAAS,UAAY0H,EAAIiW,IAAOrhB,MAAM,OAC1F,IAAImxB,GAAK,EAAGQ,EAAM,EAGlB,KAAIR,EAAK,EAAGA,EAAK/tB,EAAK1D,SAAUyxB,EAAI,CACnCQ,EAAMvuB,EAAK+tB,EACX,KAAI,sBAAsBS,KAAKD,GAAM,QACrCA,GAAMA,EAAIluB,MAAMkuB,EAAI3rB,QAAQ,QAC5B,KAAI7F,EAAMA,EAAOwxB,EAAIluB,MAAM,EAAGkuB,EAAIpY,YAAY,KAAO,EACrD,IAAGoY,EAAIluB,MAAM,EAAGtD,EAAKT,SAAWS,EAAM,QACtC,OAAMA,EAAKT,OAAS,EAAG,CACtBS,EAAOA,EAAKsD,MAAM,EAAGtD,EAAKT,OAAS,EACnCS,GAAOA,EAAKsD,MAAM,EAAGtD,EAAKoZ,YAAY,KAAO,EAC7C,IAAGoY,EAAIluB,MAAM,EAAEtD,EAAKT,SAAWS,EAAM,OAIvC,GAAI0xB,IAAazuB,EAAK,IAAM,IAAIkD,MAAM,mBACtC,KAAIurB,EAAW,KAAM,IAAItxB,OAAM,2BAC/B,IAAIuxB,GAAW,MAAQD,EAAU,IAAM,GAEvC,IAAI7O,MAAgBC,IACpB,IAAI7Z,IACH4Z,UAAWA,EACXC,UAAWA,EAEZ8C,GAAS3c,EACT,IAAI2oB,GAAUtD,EAAO,CACrB,KAAI0C,EAAK,EAAGA,EAAK/tB,EAAK1D,SAAUyxB,EAAI,CACnC,GAAIC,GAAOhuB,EAAK+tB,EAChB,IAAGC,IAASU,GAAYV,IAASU,EAAW,KAAM,QAClD,IAAGrD,IAAQ6C,GAAWloB,EAAGhG,EAAKK,MAAMsuB,EAAUZ,GAAKhxB,EACnD4xB,GAAWZ,EAEZ,MAAO/nB,GAGR,QAAS8d,IAAUlB,EAAK1E,GACvB,GAAIrO,GAAOqO,KACX,IAAIwQ,GAAW7e,EAAK6e,UAAY,SAChCA,GAAW,UAAYA,CAEvB,IAAIxuB,IACH,oBACA,8CAAgDwuB,EAASruB,MAAM,GAAK,IACpE,GACA,GACA,GAGD,IAAItD,GAAO6lB,EAAI/C,UAAU,GAAIyM,EAAKvvB,EAAMwvB,EAAK3J,EAAIhD,UAAU,EAC3D,KAAI,GAAIvjB,GAAI,EAAGA,EAAIumB,EAAI/C,UAAUvjB,SAAUD,EAAG,CAC7CiwB,EAAK1J,EAAI/C,UAAUxjB,GAAGgE,MAAMtD,EAAKT,OACjCiwB,GAAK3J,EAAIhD,UAAUvjB,EACnB,KAAIkwB,EAAGzL,OAASyL,EAAG5jB,SAAW2jB,GAAM,WAAiB,QAGrDA,GAAKA,EAAGllB,QAAQ,yCAA0C,SAASzG,GAClE,MAAO,KAAOA,EAAEpE,WAAW,GAAG+D,SAAS,IAAM,MAC3C8G,QAAQ,mBAAoB,SAASgJ,GACvC,MAAO,KAAOA,EAAE7T,WAAW,GAAG+D,SAAS,IAAM,KAI9C,IAAIsuB,GAAKrC,EAAG5jB,OAEZ,IAAIkmB,GAAOnwB,GAAWC,OAAOyB,SAASwuB,GAAMA,EAAGtuB,SAAS,UAAY0H,EAAI4mB,EAGxE,IAAIE,GAAU,EAAGjmB,EAAIY,KAAKkM,IAAI,KAAMkZ,EAAKvyB,QAAS0Y,EAAK,CACvD,KAAI,GAAI+Z,GAAM,EAAGA,GAAOlmB,IAAKkmB,EAAK,IAAI/Z,EAAG6Z,EAAKtyB,WAAWwyB,KAAS,IAAQ/Z,EAAK,MAAQ8Z,CACvF,IAAIE,GAAKF,GAAWjmB,EAAI,EAAI,CAE5B3I,GAAI2D,KAAK6qB,EACTxuB,GAAI2D,KAAK,sBAAwBgM,EAAK9S,MAAQ,uBAAyBuvB,EACvEpsB,GAAI2D,KAAK,+BAAiCmrB,EAAK,mBAAqB,UACpE9uB,GAAI2D,KAAK,iBAAmBupB,GAAiBb,EAAID,GACjDpsB,GAAI2D,KAAK,GAET3D,GAAI2D,KAAKmrB,EAAKxB,GAAuBqB,GAAQtB,GAAgBsB,IAE9D3uB,EAAI2D,KAAK6qB,EAAW,SACpB,OAAOxuB,GAAI4C,KAAK,QAEjB,QAASmsB,IAAQpf,GAChB,GAAI7J,KACJ2c,GAAS3c,EAAG6J,EACZ,OAAO7J,GAGR,QAASgmB,IAAQpJ,EAAKpD,EAAM7W,EAASkH,GACpC,GAAIoc,GAASpc,GAAQA,EAAKoc,MAC1B,KAAIA,EAAQtJ,EAASC,EACrB,IAAI3E,IAAQgO,GAAUzQ,GAAIwH,KAAKJ,EAAKpD,EACpC,KAAIvB,EAAM,CACT,GAAIiR,GAAQtM,EAAI/C,UAAU,EAC1B,IAAGL,EAAKnf,MAAM,EAAG6uB,EAAM5yB,SAAW4yB,EAAOA,EAAQ1P,MAC5C,CACJ,GAAG0P,EAAM7uB,OAAO,IAAM,IAAK6uB,GAAS,GACpCA,IAASA,EAAQ1P,GAAMpY,QAAQ,KAAK,KAErC6W,GAASuB,KAAMzD,EAASyD,GAAO/M,KAAM,EACrCmQ,GAAIhD,UAAU/b,KAAKoa,EACnB2E,GAAI/C,UAAUhc,KAAKqrB,EACnB,KAAIjD,EAAQzQ,GAAIzX,MAAMorB,OAAOvM,GAE/B3E,EAAKtV,QAAU,CACdsV,GAAK6C,KAAOnY,EAAUA,EAAQrM,OAAS,CACvC,IAAGuT,EAAM,CACR,GAAGA,EAAKgT,MAAO5E,EAAKgE,MAAQpS,EAAKgT,KACjC,IAAGhT,EAAK2N,GAAIS,EAAKT,GAAK3N,EAAK2N,EAC3B,IAAG3N,EAAKsS,GAAIlE,EAAKkE,GAAKtS,EAAKsS,GAE5B,MAAOlE,GAGR,QAASmR,IAAQxM,EAAKpD,GACrBmD,EAASC,EACT,IAAI3E,GAAOzC,GAAIwH,KAAKJ,EAAKpD,EACzB,IAAGvB,EAAM,IAAI,GAAIthB,GAAI,EAAGA,EAAIimB,EAAIhD,UAAUtjB,SAAUK,EAAG,GAAGimB,EAAIhD,UAAUjjB,IAAMshB,EAAM,CACnF2E,EAAIhD,UAAUyP,OAAO1yB,EAAG,EACxBimB,GAAI/C,UAAUwP,OAAO1yB,EAAG,EACxB,OAAO,MAER,MAAO,OAGR,QAAS2yB,IAAQ1M,EAAK2M,EAAUC,GAC/B7M,EAASC,EACT,IAAI3E,GAAOzC,GAAIwH,KAAKJ,EAAK2M,EACzB,IAAGtR,EAAM,IAAI,GAAIthB,GAAI,EAAGA,EAAIimB,EAAIhD,UAAUtjB,SAAUK,EAAG,GAAGimB,EAAIhD,UAAUjjB,IAAMshB,EAAM,CACnF2E,EAAIhD,UAAUjjB,GAAG6iB,KAAOzD,EAASyT,EACjC5M,GAAI/C,UAAUljB,GAAK6yB,CACnB,OAAO,MAER,MAAO,OAGR,QAASL,IAAOvM,GAAOK,EAAYL,EAAK,MAExC9lB,EAAQkmB,KAAOA,CACflmB,GAAQ4lB,KAAOA,CACf5lB,GAAQkhB,MAAQA,CAChBlhB,GAAQ8oB,MAAQA,CAChB9oB,GAAQ2yB,UAAY/J,CACpB5oB,GAAQiH,OACPkrB,QAASA,GACTjD,QAASA,GACToD,QAASA,GACTE,QAASA,GACTH,OAAQA,GACRO,UAAWA,GACXC,WAAYA,GACZ1S,UAAWA,GACX7U,QAASA,EACT0d,SAAUA,EACViD,YAAarC,GACbkJ,YAAarJ,GACb9B,OAAQA,EAGT,OAAO3nB,KAGP,IAAIihB,GACJ,SAAS8R,IAAOhS,GAAME,GAAMF,EAG5B,QAASiS,IAAQ9vB,GAChB,SAAUA,KAAS,SAAU,MAAO6H,GAAK7H,EACzC,IAAGiD,MAAMgF,QAAQjI,GAAO,MAAOkI,GAAIlI,EACnC,OAAOA,GAGR,QAAS+vB,IAAS5B,EAAOxN,EAASlkB,GAEjC,SAAUshB,MAAQ,aAAeA,GAAI4H,cAAe,MAAOlpB,GAAMshB,GAAI4H,cAAcwI,EAAOxN,EAASlkB,GAAOshB,GAAI4H,cAAcwI,EAAOxN,EACnI,UAAUqP,QAAS,YAAa,CAE/B,GAAGvzB,SAAckkB,IAAW,SAAU,OAAOlkB,GAC5C,IAAK,OAAQkkB,EAAU,GAAIsP,aAAYxzB,GAAK+F,OAAOme,EAAU,OAC7D,IAAK,SAAUA,EAAU9Y,EAAK8Y,EAAU,OAExC,QAAS,KAAM,IAAIxjB,OAAM,wBAA0BV,IAEpD,MAAOuzB,MAAKrK,cAAcwI,EAAOxN,GAElC,GAAI3gB,GAAQvD,GAAO,OAAUyzB,GAAUvP,GAAWA,CACnD,UAAUwP,eAAgB,YAAa,MAAOA,aAAYnwB,EAAMmuB,EAC/D,UAAUiC,QAAS,YAAa,CAC/B,GAAIpT,GAAO,GAAIoT,OAAMN,GAAQ9vB,KAASyS,KAAK,4BAC7C,UAAU4d,aAAc,aAAeA,UAAUC,WAAY,MAAOD,WAAUC,WAAWtT,EAAMmR,EAC/F,UAAUoC,UAAW,YAAa,MAAOA,QAAOvT,EAAMmR,EACpD,UAAUqC,OAAQ,mBAAsBC,YAAa,aAAeA,SAASC,eAAiBF,IAAIG,gBAAiB,CAClH,GAAIC,GAAMJ,IAAIG,gBAAgB3T,EACjC,UAAU6T,UAAW,iBAAoBA,OAAOC,eAAeC,UAAY,WAAY,CACnF,GAAGP,IAAIQ,uBAA0BC,cAAe,YAAaA,WAAW,WAAaT,IAAIQ,gBAAgBJ,IAAS,IAClH,OAAOC,QAAOC,UAAUC,UAAWH,IAAKA,EAAK7U,SAAUoS,EAAOoC,OAAQ,OAEvE,GAAItI,GAAIwI,SAASC,cAAc,IAC/B,IAAGzI,EAAE8I,UAAY,KAAM,CAC1B9I,EAAE8I,SAAW5C,CAAOlG,GAAEiJ,KAAON,CAAKH,UAASU,KAAKC,YAAYnJ,EAAIA,GAAEoJ,OAClEZ,UAASU,KAAKG,YAAYrJ,EACtB,IAAGuI,IAAIQ,uBAA0BC,cAAe,YAAaA,WAAW,WAAaT,IAAIQ,gBAAgBJ,IAAS,IAClH,OAAOA,KAKV,SAAUW,KAAM,mBAAsBC,QAAS,mBAAsBC,UAAW,YAAa,IAE5F,GAAIvxB,GAAMsxB,KAAKrD,EAAQjuB,GAAIwxB,KAAK,IAAMxxB,GAAIyxB,SAAW,QACrD,IAAG1uB,MAAMgF,QAAQ0Y,GAAUA,EAAU3Y,EAAI2Y,EACzCzgB,GAAI0lB,MAAMjF,EAAUzgB,GAAI0xB,OAAS,OAAOjR,GACvC,MAAMvkB,GAAK,IAAIA,EAAEiqB,UAAYjqB,EAAEiqB,QAAQnjB,MAAM,YAAa,KAAM9G,GAClE,KAAM,IAAIe,OAAM,oBAAsBgxB,GAIvC,QAAS0D,IAAY7M,GACpB,SAAUjH,MAAQ,YAAa,MAAOA,IAAI0E,aAAauC,EACvD,UAAUgL,QAAS,YAAa,MAAOA,MAAKvN,aAAauC,EAEzD,UAAUuM,KAAM,mBAAsBC,QAAS,mBAAsBC,UAAW,YAAa,IAE5F,GAAIK,GAASN,KAAKxM,EAAO8M,GAAOJ,KAAK,IAAMI,GAAOH,SAAW,QAC7D,IAAI3xB,GAAO8xB,EAAOpP,MAAQoP,GAAOF,OACjC,OAAO5xB,GACN,MAAM5D,GAAK,IAAIA,EAAEiqB,UAAYjqB,EAAEiqB,QAAQnjB,MAAM,YAAa,KAAM9G,GAClE,KAAM,IAAIe,OAAM,sBAAwB6nB,GAEzC,QAASxlB,IAAKwG,GACb,GAAI+rB,GAAKtyB,OAAOD,KAAKwG,GAAIgsB,IACzB,KAAI,GAAI31B,GAAI,EAAGA,EAAI01B,EAAGz1B,SAAUD,EAAG,GAAGoD,OAAOwyB,UAAUC,eAAe3xB,KAAKyF,EAAG+rB,EAAG11B,IAAK21B,EAAGnuB,KAAKkuB,EAAG11B,GACjG,OAAO21B,GAGR,QAASG,IAAUC,EAAKC,GACvB,GAAIrsB,MAAUssB,EAAI9yB,GAAK4yB,EACvB,KAAI,GAAI/1B,GAAI,EAAGA,IAAMi2B,EAAEh2B,SAAUD,EAAG,GAAG2J,EAAEosB,EAAIE,EAAEj2B,IAAIg2B,KAAS,KAAMrsB,EAAEosB,EAAIE,EAAEj2B,IAAIg2B,IAAQC,EAAEj2B,EACxF,OAAO2J,GAGR,QAASusB,IAAMH,GACd,GAAIpsB,MAAUssB,EAAI9yB,GAAK4yB,EACvB,KAAI,GAAI/1B,GAAI,EAAGA,IAAMi2B,EAAEh2B,SAAUD,EAAG2J,EAAEosB,EAAIE,EAAEj2B,KAAOi2B,EAAEj2B,EACrD,OAAO2J,GAGR,QAASwsB,IAAUJ,GAClB,GAAIpsB,MAAUssB,EAAI9yB,GAAK4yB,EACvB,KAAI,GAAI/1B,GAAI,EAAGA,IAAMi2B,EAAEh2B,SAAUD,EAAG2J,EAAEosB,EAAIE,EAAEj2B,KAAOgY,SAASie,EAAEj2B,GAAG,GACjE,OAAO2J,GAGR,QAASysB,IAAUL,GAClB,GAAIpsB,MAAUssB,EAAI9yB,GAAK4yB,EACvB,KAAI,GAAI/1B,GAAI,EAAGA,IAAMi2B,EAAEh2B,SAAUD,EAAG,CACnC,GAAG2J,EAAEosB,EAAIE,EAAEj2B,MAAQ,KAAM2J,EAAEosB,EAAIE,EAAEj2B,OACjC2J,GAAEosB,EAAIE,EAAEj2B,KAAKwH,KAAKyuB,EAAEj2B,IAErB,MAAO2J,GAGR,GAAI0sB,IAAW,GAAI/hB,MAAK,KAAM,GAAI,GAAI,EAAG,EAAG,EAC5C,SAASgiB,IAAQxpB,EAAGuH,GACnB,GAAIa,GAAQpI,EAAEiI,SACd,IAAGV,EAAUa,GAAS,KAAK,GAAG,GAAG,GAAG,GACpC,IAAIqhB,GAAWF,GAASthB,WAAajI,EAAEqI,oBAAsBkhB,GAASlhB,qBAAuB,GAC7F,QAAQD,EAAQqhB,IAAa,GAAK,GAAK,GAAK,KAE7C,GAAIC,IAAU,GAAIliB,KAClB,IAAIiiB,IAAWF,GAASthB,WAAayhB,GAAQrhB,oBAAsBkhB,GAASlhB,qBAAuB,GACnG,IAAIshB,IAAYD,GAAQrhB,mBACxB,SAASuhB,IAAQ5pB,GAChB,GAAIjJ,GAAM,GAAIyQ,KACdzQ,GAAI8yB,QAAQ7pB,EAAI,GAAK,GAAK,GAAK,IAAOypB,GACtC,IAAI1yB,EAAIsR,sBAAwBshB,GAAW,CAC1C5yB,EAAI8yB,QAAQ9yB,EAAIkR,WAAalR,EAAIsR,oBAAsBshB,IAAa,KAErE,MAAO5yB,GAIR,QAAS+yB,IAAarxB,GACrB,GAAIsxB,GAAM,EAAG1V,EAAK,EAAGxN,EAAO,KAC5B,IAAIM,GAAI1O,EAAEsB,MAAM,6EAChB,KAAIoN,EAAG,KAAM,IAAInT,OAAM,IAAMyE,EAAI,+BACjC,KAAI,GAAIvF,GAAI,EAAGA,GAAKiU,EAAEhU,SAAUD,EAAG,CAClC,IAAIiU,EAAEjU,GAAI,QACVmhB,GAAK,CACL,IAAGnhB,EAAI,EAAG2T,EAAO,IACjB,QAAOM,EAAEjU,GAAGgE,MAAMiQ,EAAEjU,GAAGC,OAAO,IAC7B,IAAK,IACJ,KAAM,IAAIa,OAAM,mCAAqCmT,EAAEjU,GAAGgE,MAAMiQ,EAAEjU,GAAGC,OAAO,IAC7E,IAAK,IAAKkhB,GAAM,GAEhB,IAAK,IAAKA,GAAM,GAEhB,IAAK,IACJ,IAAIxN,EAAM,KAAM,IAAI7S,OAAM,yCACrBqgB,IAAM,GAEZ,IAAK,IAAK,OAEX0V,GAAO1V,EAAKnJ,SAAS/D,EAAEjU,GAAI,IAE5B,MAAO62B,GAGR,GAAIC,IAAiB,GAAIxiB,MAAK,2BAC9B,IAAIyiB,IAAensB,MAAMksB,GAAeriB,eAAiB,GAAIH,MAAK,WAAawiB,EAC/E,IAAIE,IAAUD,GAAatiB,eAAiB,IAE5C,SAASwiB,IAAUve,EAAKwe,GACvB,GAAIr3B,GAAI,GAAIyU,MAAKoE,EACjB,IAAGse,GAAS,CACb,GAAGE,EAAU,EAAGr3B,EAAE82B,QAAQ92B,EAAEkV,UAAYlV,EAAEsV,oBAAsB,GAAK,SAC9D,IAAG+hB,EAAU,EAAGr3B,EAAE82B,QAAQ92B,EAAEkV,UAAYlV,EAAEsV,oBAAsB,GAAK,IAC1E,OAAOtV,GAER,GAAG6Y,YAAepE,MAAM,MAAOoE,EAC/B,IAAGqe,GAAatiB,eAAiB,OAAS7J,MAAM/K,EAAE4U,eAAgB,CACjE,GAAIlP,GAAI1F,EAAE4U,aACV,IAAGiE,EAAInS,QAAQ,GAAKhB,IAAM,EAAG,MAAO1F,EACpCA,GAAEwgB,YAAYxgB,EAAE4U,cAAgB,IAAM,OAAO5U,GAE9C,GAAIgD,GAAI6V,EAAI7R,MAAM,UAAU,OAAO,IAAI,KAAK,IAAI,IAAI,IACpD,IAAIhD,GAAM,GAAIyQ,OAAMzR,EAAE,IAAKA,EAAE,GAAK,GAAIA,EAAE,IAAMA,EAAE,IAAI,GAAMA,EAAE,IAAI,GAAMA,EAAE,IAAI,EAC5E,IAAG6V,EAAInS,QAAQ,MAAQ,EAAG1C,EAAM,GAAIyQ,MAAKzQ,EAAIkR,UAAYlR,EAAIsR,oBAAsB,GAAK,IACxF,OAAOtR,GAGR,QAASszB,IAAOC,EAAKC,GACpB,GAAGh1B,GAAWC,OAAOyB,SAASqzB,GAAM,CACnC,GAAGC,GAAWnsB,EAAa,CAE1B,GAAGksB,EAAI,IAAM,KAAQA,EAAI,IAAM,IAAM,MAAOvD,IAAUuD,EAAIpzB,MAAM,GAAGC,SAAS,WAC5E,IAAGmzB,EAAI,IAAM,KAAQA,EAAI,IAAM,IAAM,MAAOvD,IAAUhqB,EAAYutB,EAAIpzB,MAAM,GAAGC,SAAS,YAEzF,MAAOmzB,GAAInzB,SAAS,UAGrB,SAAUqzB,eAAgB,YAAa,IACtC,GAAGD,EAAS,CACX,GAAGD,EAAI,IAAM,KAAQA,EAAI,IAAM,IAAM,MAAOvD,IAAU,GAAIyD,aAAY,YAAY5wB,OAAO0wB,EAAIpzB,MAAM,IACnG,IAAGozB,EAAI,IAAM,KAAQA,EAAI,IAAM,IAAM,MAAOvD,IAAU,GAAIyD,aAAY,YAAY5wB,OAAO0wB,EAAIpzB,MAAM,KAEpG,GAAI8mB,IACHyM,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAE/C,IAAGryB,MAAMgF,QAAQwrB,GAAMA,EAAM,GAAI/rB,YAAW+rB,EAC5C,OAAO,IAAIE,aAAY,UAAU5wB,OAAO0wB,GAAKrsB,QAAQ,iCAAkC,SAASzG,GAAK,MAAOwmB,GAAIxmB,IAAMA,IACrH,MAAMvE,IAER,GAAI4J,KACJ,KAAI,GAAI3J,GAAI,EAAGA,GAAKo3B,EAAIn3B,SAAUD,EAAG2J,EAAEnC,KAAKtF,OAAOC,aAAai1B,EAAIp3B,IACpE,OAAO2J,GAAElD,KAAK,IAGf,QAASyyB,IAAIvvB,GACZ,SAAUwvB,OAAQ,cAAgBvyB,MAAMgF,QAAQjC,GAAI,MAAOwvB,MAAKxX,MAAMwX,KAAKC,UAAUzvB,GACrF,UAAUA,IAAK,UAAYA,GAAK,KAAM,MAAOA,EAC7C,IAAGA,YAAa2K,MAAM,MAAO,IAAIA,MAAK3K,EAAEoL,UACxC,IAAIlR,KACJ,KAAI,GAAIgB,KAAK8E,GAAG,GAAGvG,OAAOwyB,UAAUC,eAAe3xB,KAAKyF,EAAG9E,GAAIhB,EAAIgB,GAAKq0B,GAAIvvB,EAAE9E,GAC9E,OAAOhB,GAGR,QAASmJ,IAAK1I,EAAEiD,GAAK,GAAIoC,GAAI,EAAI,OAAMA,EAAE1J,OAASsH,EAAGoC,GAAGrF,CAAG,OAAOqF,GAGlE,QAAS0vB,IAAS9zB,GACjB,GAAIuH,GAAIwsB,OAAO/zB,EACf,KAAIqF,MAAMkC,GAAI,MAAOysB,UAASzsB,GAAKA,EAAI0sB,GACvC,KAAI,KAAKrH,KAAK5sB,GAAI,MAAOuH,EACzB,IAAI2sB,GAAK,CACT,IAAIjjB,GAAKjR,EAAEwF,QAAQ,iBAAiB,QAAQA,QAAQ,OAAO,IAAIA,QAAQ,OAAQ,WAAa0uB,GAAM,GAAK,OAAO,IAC9G,KAAI7uB,MAAMkC,EAAIwsB,OAAO9iB,IAAM,MAAO1J,GAAI2sB,CACtCjjB,GAAKA,EAAGzL,QAAQ,aAAa,SAASuM,EAAIC,GAAMkiB,GAAMA,CAAI,OAAOliB,IACjE,KAAI3M,MAAMkC,EAAIwsB,OAAO9iB,IAAM,MAAO1J,GAAI2sB,CACtC,OAAO3sB,GAIR,GAAI4sB,IAAQ,4FAEZ,SAASC,IAAWtzB,GAEhB,IAAIA,EAAE,GAAI,MAAO,IAAIiO,MAAK,KAAK,GAAG,IAAKjO,EAAE,GAAG,IAAOA,EAAE,IAAM,IAAM,GAAK,GAAI,EAAG,EAAG,EAChF,IAAGA,EAAE,GAAI,CACL,GAAGA,EAAE,GAAI,MAAO,IAAIiO,MAAK,KAAK,GAAG,IAAKjO,EAAE,GAAG,IAAOA,EAAE,IAAM,IAAM,GAAK,IAAKA,EAAE,IAAKA,EAAE,GAAIgV,WAAWhV,EAAE,IAAI,SACnG,OAAO,IAAIiO,MAAK,KAAK,GAAG,GAAIjO,EAAE,IAAM,IAAM,GAAK,GAAKA,EAAE,IAAKA,EAAE,GAAIgV,WAAWhV,EAAE,IAAI,SAEtF,IAAGA,EAAE,GAAI,MAAO,IAAIiO,MAAK,KAAK,GAAG,IAAMjO,EAAE,GAAG,IAAOA,EAAE,IAAM,IAAM,GAAK,IAAKA,EAAE,IAAKA,EAAE,GAAIA,EAAE,GAAKgV,WAAWhV,EAAE,IAAM,IAAO,OACzH,OAAO,IAAIiO,MAAK,KAAK,GAAG,IAAKjO,EAAE,GAAG,IAAOA,EAAE,IAAM,IAAM,GAAK,IAAKA,EAAE,GAAI,EAAG,GAEnF,GAAIuzB,KAAgB,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,WAClI,SAASC,IAAUt0B,GAClB,GAAIu0B,GAAQv0B,EAAEiV,aACd,IAAIuf,GAAOD,EAAM/uB,QAAQ,OAAQ,KAAKknB,MACtC,IAAI5rB,GAAI0zB,EAAKlzB,MAAM6yB,GACnB,IAAGrzB,EAAG,MAAOszB,IAAWtzB,EAExB,IAAIsD,GAAI,GAAI2K,MAAK/O,GAAI1C,EAAI,GAAIyR,MAAKklB,IAClC,IAAIxlB,GAAIrK,EAAEqwB,UAAW/lB,EAAItK,EAAE+K,WAAY7U,EAAI8J,EAAE6K,SAC7C,IAAG5J,MAAM/K,GAAI,MAAOgD,EACpB,IAAGi3B,EAAMjzB,MAAM,mDAAoD,CAClEizB,EAAQA,EAAM/uB,QAAQ,UAAU,IAAIA,QAAQ,6BAA6B,GACzE,IAAG+uB,EAAM75B,OAAS,GAAK25B,GAAarzB,QAAQuzB,KAAW,EAAG,MAAOj3B,OAC3D,IAAGi3B,EAAM/uB,QAAQ,SAAU,IAAIlE,MAAM,SAAU,MAAOhE,EAC7D,IAAGmR,EAAI,GAAKA,EAAI,MAAQzO,EAAEsB,MAAM,iBAAkB,MAAOhE,EACzD,OAAO8G,GAGR,GAAIswB,IAAc,WACjB,GAAIC,GAAmB,UAAU35B,MAAM,UAAUN,QAAU,CAC3D,OAAO,SAASg6B,GAAYvhB,EAAKyhB,EAAIC,GACpC,GAAGF,SAA2BC,IAAM,SAAU,MAAOzhB,GAAInY,MAAM45B,EAC/D,IAAI1a,GAAI/G,EAAInY,MAAM45B,GAAKxwB,GAAK8V,EAAE,GAC9B,KAAI,GAAIzf,GAAI,EAAGA,EAAIyf,EAAExf,SAAUD,EAAG,CAAE2J,EAAEnC,KAAK4yB,EAAMzwB,GAAEnC,KAAKiY,EAAEzf,IAC1D,MAAO2J,MAGT,SAAS0wB,IAAW12B,GACnB,IAAIA,EAAM,MAAO,KACjB,IAAGA,EAAK2I,SAAW3I,EAAKyS,KAAM,MAAO+gB,IAAOxzB,EAAK2I,QAAS,KAC1D,IAAG3I,EAAKA,KAAM,MAAOmG,GAAMnG,EAAKA,KAChC,IAAGA,EAAK22B,cAAgBj4B,EAAS,MAAOyH,GAAMnG,EAAK22B,eAAer2B,SAAS,UAC3E,IAAGN,EAAK42B,SAAU,MAAOzwB,GAAMnG,EAAK42B,WACpC,IAAG52B,EAAK62B,OAAS72B,EAAK62B,MAAMC,WAAY,MAAO3wB,GAAMqtB,GAAOvwB,MAAMgvB,UAAU5xB,MAAME,KAAKP,EAAK62B,MAAMC,aAAa,IAC/G,OAAO,MAGR,QAASC,IAAW/2B,GACnB,IAAIA,EAAM,MAAO,KACjB,IAAGA,EAAKA,KAAM,MAAO+F,GAAW/F,EAAKA,KACrC,IAAGA,EAAK22B,cAAgBj4B,EAAS,MAAOsB,GAAK22B,cAC7C,IAAG32B,EAAK62B,OAAS72B,EAAK62B,MAAMC,WAAY,CACvC,GAAI9wB,GAAIhG,EAAK62B,MAAMC,YACnB,UAAU9wB,IAAK,SAAU,MAAOD,GAAWC,EAC3C,OAAO/C,OAAMgvB,UAAU5xB,MAAME,KAAKyF,GAEnC,GAAGhG,EAAK2I,SAAW3I,EAAKyS,KAAM,MAAOzS,GAAK2I,OAC1C,OAAO,MAGR,QAASquB,IAAQh3B,GAAQ,MAAQA,IAAQA,EAAKwf,KAAKnf,OAAO,KAAO,OAAU02B,GAAW/2B,GAAQ02B,GAAW12B,GAIzG,QAASi3B,IAAeC,EAAKjZ,GAC5B,GAAI/c,GAAIg2B,EAAIrX,WAAargB,GAAK03B,EAAIxX,MAClC,IAAI3e,GAAIkd,EAAKpH,cAAczP,QAAQ,QAAS,MAAO+vB,EAAIp2B,EAAEqG,QAAQ,MAAM,IACvE,KAAI,GAAI/K,GAAE,EAAGA,EAAE6E,EAAE5E,SAAUD,EAAG,CAC7B,GAAI6C,GAAIgC,EAAE7E,GAAG+K,QAAQ,kBAAkB,IAAIyP,aAC3C,IAAG9V,GAAK7B,GAAKi4B,GAAKj4B,EAAG,MAAOg4B,GAAIxX,MAAQwX,EAAIxX,MAAMxe,EAAE7E,IAAM66B,EAAItX,UAAUvjB,GAEzE,MAAO,MAGR,QAAS+6B,IAAWF,EAAKjZ,GACxB,GAAIjY,GAAIixB,GAAeC,EAAKjZ,EAC5B,IAAGjY,GAAK,KAAM,KAAM,IAAI7I,OAAM,oBAAsB8gB,EAAO,UAC3D,OAAOjY,GAGR,QAASqxB,IAAWH,EAAKjZ,EAAMqZ,GAC9B,IAAIA,EAAM,MAAON,IAAQI,GAAWF,EAAKjZ,GACzC,KAAIA,EAAM,MAAO,KACjB,KAAM,MAAOoZ,IAAWH,EAAKjZ,GAAS,MAAM7hB,GAAK,MAAO,OAGzD,QAASm7B,IAAUL,EAAKjZ,EAAMqZ,GAC7B,IAAIA,EAAM,MAAOZ,IAAWU,GAAWF,EAAKjZ,GAC5C,KAAIA,EAAM,MAAO,KACjB,KAAM,MAAOsZ,IAAUL,EAAKjZ,GAAS,MAAM7hB,GAAK,MAAO,OAGxD,QAASo7B,IAAUN,EAAKjZ,EAAMqZ,GAC7B,IAAIA,EAAM,MAAOP,IAAWK,GAAWF,EAAKjZ,GAC5C,KAAIA,EAAM,MAAO,KACjB,KAAM,MAAOuZ,IAAUN,EAAKjZ,GAAS,MAAM7hB,GAAK,MAAO,OAGxD,QAASq7B,IAAWP,GACnB,GAAIh2B,GAAIg2B,EAAIrX,WAAargB,GAAK03B,EAAIxX,OAAQ1Z,IAC1C,KAAI,GAAI3J,GAAI,EAAGA,EAAI6E,EAAE5E,SAAUD,EAAG,GAAG6E,EAAE7E,GAAGgE,OAAO,IAAM,IAAK2F,EAAEnC,KAAK3C,EAAE7E,GAAG+K,QAAQ,kBAAmB,IACnG,OAAOpB,GAAEyd,OAGV,QAASiU,IAAaR,EAAKlS,EAAMrc,GAChC,GAAGuuB,EAAIrX,UAAW,CACjB,SAAUlX,IAAW,SAAU,CAC9B,GAAIgvB,EACJ,IAAGj5B,EAASi5B,EAAM/4B,EAAY+J,OAGzBgvB,GAAMjvB,EAAWC,EACtB,OAAO6S,IAAIzX,MAAMioB,QAAQkL,EAAKlS,EAAM2S,GAErCnc,GAAIzX,MAAMioB,QAAQkL,EAAKlS,EAAMrc,OAEzBuuB,GAAIjZ,KAAK+G,EAAMrc,GAGrB,QAASivB,MAAY,MAAOpc,IAAIzX,MAAMkrB,UAEtC,QAAS4I,IAAS37B,EAAG8J,GACpB,OAAOA,EAAEyM,MACR,IAAK,SAAU,MAAO+I,IAAIkH,KAAKxmB,GAAKuW,KAAM,WAC1C,IAAK,SAAU,MAAO+I,IAAIkH,KAAKxmB,GAAKuW,KAAM,WAC1C,IAAK,UAAU,IAAK,QAAS,MAAO+I,IAAIkH,KAAKxmB,GAAKuW,KAAM,YAEzD,KAAM,IAAItV,OAAM,qBAAuB6I,EAAEyM,MAG1C,QAASqlB,IAAa9S,EAAMzQ,GAC3B,GAAGyQ,EAAKxoB,OAAO,IAAM,IAAK,MAAOwoB,GAAK3kB,MAAM,EAC5C,IAAI03B,GAASxjB,EAAK3X,MAAM,IACxB,IAAG2X,EAAKlU,OAAO,IAAM,IAAK03B,EAAO3U,KACjC,IAAI4U,GAAShT,EAAKpoB,MAAM,IACxB,OAAOo7B,EAAO17B,SAAW,EAAG,CAC3B,GAAI27B,GAAOD,EAAOhY,OAClB,IAAIiY,IAAS,KAAMF,EAAO3U,UACrB,IAAI6U,IAAS,IAAKF,EAAOl0B,KAAKo0B,GAEpC,MAAOF,GAAOj1B,KAAK,KAEpB,GAAIo1B,IAAa,6DACjB,IAAIC,IAAU,wEACd,IAAIC,IAAU,+FAAgGC,GAAY,UAC1H,IAAIC,IAAWJ,GAAWh1B,MAAMk1B,IAAaA,GAAYC,EACzD,IAAIE,IAAQ,QAASC,GAAW,YAChC,SAASC,IAAYC,EAAKC,EAAWC,GACpC,GAAIC,KACJ,IAAIC,GAAK,EAAGn4B,EAAI,CAChB,MAAMm4B,IAAOJ,EAAIp8B,SAAUw8B,EAAI,IAAIn4B,EAAI+3B,EAAIn8B,WAAWu8B,MAAS,IAAMn4B,IAAM,IAAMA,IAAM,GAAI,KAC3F,KAAIg4B,EAAWE,EAAE,GAAKH,EAAIr4B,MAAM,EAAGy4B,EACnC,IAAGA,IAAOJ,EAAIp8B,OAAQ,MAAOu8B,EAC7B,IAAIvoB,GAAIooB,EAAIx1B,MAAMi1B,IAAYx7B,EAAE,EAAGwM,EAAE,GAAI9M,EAAE,EAAGsT,EAAE,GAAIqF,EAAG,GAAI+jB,EAAO,CAClE,IAAGzoB,EAAG,IAAIjU,EAAI,EAAGA,GAAKiU,EAAEhU,SAAUD,EAAG,CACpC2Y,EAAK1E,EAAEjU,EACP,KAAIsE,EAAE,EAAGA,GAAKqU,EAAG1Y,SAAUqE,EAAG,GAAGqU,EAAGzY,WAAWoE,KAAO,GAAI,KAC1DgP,GAAIqF,EAAG3U,MAAM,EAAEM,GAAG2tB,MAClB,OAAMtZ,EAAGzY,WAAWoE,EAAE,IAAM,KAAMA,CAClCo4B,IAASD,EAAG9jB,EAAGzY,WAAWoE,EAAE,KAAO,IAAMm4B,GAAM,GAAM,EAAI,CACzD3vB,GAAI6L,EAAG3U,MAAMM,EAAE,EAAEo4B,EAAM/jB,EAAG1Y,OAAOy8B,EACjC,KAAIp8B,EAAE,EAAEA,GAAGgT,EAAErT,SAASK,EAAG,GAAGgT,EAAEpT,WAAWI,KAAO,GAAI,KACpD,IAAGA,IAAIgT,EAAErT,OAAQ,CAChB,GAAGqT,EAAE/M,QAAQ,KAAO,EAAG+M,EAAIA,EAAEtP,MAAM,EAAGsP,EAAE/M,QAAQ,KAChDi2B,GAAElpB,GAAKxG,CACP,KAAIyvB,EAASC,EAAElpB,EAAEkH,eAAiB1N,MAE9B,CACJ,GAAIjI,IAAKvE,IAAI,GAAKgT,EAAEtP,MAAM,EAAE,KAAK,QAAQ,QAAQ,IAAIsP,EAAEtP,MAAM1D,EAAE,EAC/D,IAAGk8B,EAAE33B,IAAMyO,EAAEtP,MAAM1D,EAAE,EAAEA,IAAM,MAAO,QACpCk8B,GAAE33B,GAAKiI,CACP,KAAIyvB,EAASC,EAAE33B,EAAE2V,eAAiB1N,GAGpC,MAAO0vB,GAER,QAASG,IAAS16B,GAAK,MAAOA,GAAE8I,QAAQoxB,GAAU,OAElD,GAAIS,KACHC,SAAU,IACVC,SAAU,IACVC,OAAQ,IACRC,OAAQ,IACRC,QAAS,IAEV,IAAIC,IAAYhH,GAAM0G,GAItB,IAAIO,IAAc,WAEjB,GAAIC,GAAW,+CAAgDC,EAAY,sBAC3E,SAASC,GAAgBlM,GACxB,GAAI7rB,GAAI6rB,EAAO,GAAIpxB,EAAIuF,EAAEgB,QAAQ,YACjC,IAAGvG,IAAM,EAAG,MAAOuF,GAAEwF,QAAQqyB,EAAU,SAAS9lB,EAAIC,GAAM,MAAOqlB,IAAUtlB,IAAKpV,OAAOC,aAAa6V,SAAST,EAAGD,EAAG/Q,QAAQ,MAAM,EAAE,GAAG,MAAM+Q,IAAOvM,QAAQsyB,EAAU,SAASppB,EAAE3P,GAAI,MAAOpC,QAAOC,aAAa6V,SAAS1T,EAAE,MAC1N,IAAIhE,GAAIiF,EAAEgB,QAAQ,MAClB,OAAO+2B,GAAgB/3B,EAAEvB,MAAM,EAAGhE,IAAMuF,EAAEvB,MAAMhE,EAAE,EAAEM,GAAKg9B,EAAgB/3B,EAAEvB,MAAM1D,EAAE,IAEpF,MAAO,SAAS68B,GAAY/L,EAAMmM,GACjC,GAAI15B,GAAMy5B,EAAgBlM,EAC1B,OAAOmM,GAAO15B,EAAIkH,QAAQ,QAAS,MAAQlH,KAI7C,IAAI25B,IAAS,WAAYC,GAAW,4CACpC,SAASC,IAAUtM,GAClB,GAAI7rB,GAAI6rB,EAAO,EACf,OAAO7rB,GAAEwF,QAAQyyB,GAAU,SAASxpB,GAAK,MAAOkpB,IAAUlpB,KAAOjJ,QAAQ0yB,GAAS,SAASl4B,GAAK,MAAO,MAAQ,MAAMA,EAAErF,WAAW,GAAG+D,SAAS,KAAKD,OAAO,GAAK,MAEhK,QAAS25B,IAAavM,GAAO,MAAOsM,IAAUtM,GAAMrmB,QAAQ,KAAK,WAEjE,GAAI6yB,IAAe,kBACnB,SAASC,IAAWzM,GACnB,GAAI7rB,GAAI6rB,EAAO,EACf,OAAO7rB,GAAEwF,QAAQyyB,GAAU,SAASxpB,GAAK,MAAOkpB,IAAUlpB,KAAOjJ,QAAQ,MAAO,SAASA,QAAQ6yB,GAAa,SAASr4B,GAAK,MAAO,OAAS,MAAMA,EAAErF,WAAW,GAAG+D,SAAS,KAAKD,OAAO,GAAK,MAG7L,QAAS85B,IAAW1M,GACnB,GAAI7rB,GAAI6rB,EAAO,EACf,OAAO7rB,GAAEwF,QAAQyyB,GAAU,SAASxpB,GAAK,MAAOkpB,IAAUlpB,KAAOjJ,QAAQ6yB,GAAa,SAASr4B,GAAK,MAAO,MAASA,EAAErF,WAAW,GAAG+D,SAAS,IAAK+R,cAAgB,MAInK,GAAI+nB,IAAc,WACjB,GAAIC,GAAW,WACf,SAASC,GAAQ3mB,EAAGC,GAAM,MAAOrV,QAAOC,aAAa6V,SAAST,EAAG,KACjE,MAAO,SAASwmB,GAAYrlB,GAAO,MAAOA,GAAI3N,QAAQizB,EAASC,MAEhE,SAASC,IAAcxlB,GAAO,MAAOA,GAAI3N,QAAQ,iBAAiB,SAGlE,QAASozB,IAAaC,GACrB,OAAOA,GACN,IAAK,IAAG,IAAK,OAAO,IAAK,KAAK,IAAK,OAAS,MAAO,MACnD,IAAK,IAAG,IAAK,QAAO,IAAK,KAAK,IAAK,QAAS,MAAO,QAGpD,MAAO,OAGR,QAASC,IAAUC,GAClB,GAAIz6B,GAAM,GAAI7D,EAAI,EAAGsE,EAAI,EAAGzE,EAAI,EAAGE,EAAI,EAAG2E,EAAI,EAAGZ,EAAI,CACrD,OAAO9D,EAAIs+B,EAAKr+B,OAAQ,CACvBqE,EAAIg6B,EAAKp+B,WAAWF,IACpB,IAAIsE,EAAI,IAAK,CAAET,GAAO3B,OAAOC,aAAamC,EAAI,UAC9CzE,EAAIy+B,EAAKp+B,WAAWF,IACpB,IAAIsE,EAAE,KAAOA,EAAE,IAAK,CAAEI,GAAMJ,EAAI,KAAO,CAAII,IAAM7E,EAAI,EAAKgE,IAAO3B,OAAOC,aAAauC,EAAI,UACzF3E,EAAIu+B,EAAKp+B,WAAWF,IACpB,IAAIsE,EAAI,IAAK,CAAET,GAAO3B,OAAOC,cAAemC,EAAI,KAAO,IAAQzE,EAAI,KAAO,EAAME,EAAI,GAAM,UAC1F2E,EAAI45B,EAAKp+B,WAAWF,IACpB8D,KAAOQ,EAAI,IAAM,IAAQzE,EAAI,KAAO,IAAQE,EAAI,KAAO,EAAM2E,EAAI,IAAK,KACtEb,IAAO3B,OAAOC,aAAa,OAAW2B,IAAI,GAAI,MAC9CD,IAAO3B,OAAOC,aAAa,OAAU2B,EAAE,OAExC,MAAOD,GAGR,QAAS06B,IAAU56B,GAClB,GAAIE,GAAMsH,EAAY,EAAExH,EAAK1D,QAAS6D,EAAG9D,EAAGM,EAAI,EAAGuE,EAAI,EAAGM,EAAG,EAAGb,CAChE,KAAItE,EAAI,EAAGA,EAAI2D,EAAK1D,OAAQD,GAAGM,EAAG,CACjCA,EAAI,CACJ,KAAIgE,EAAEX,EAAKzD,WAAWF,IAAM,IAAK8D,EAAIQ,MAChC,IAAGA,EAAI,IAAK,CAAER,GAAKQ,EAAE,IAAI,IAAIX,EAAKzD,WAAWF,EAAE,GAAG,GAAKM,GAAE,MACzD,IAAGgE,EAAI,IAAK,CAAER,GAAGQ,EAAE,IAAI,MAAMX,EAAKzD,WAAWF,EAAE,GAAG,IAAI,IAAI2D,EAAKzD,WAAWF,EAAE,GAAG,GAAKM,GAAE,MACtF,CAAEA,EAAI,CACVwD,IAAKQ,EAAI,GAAG,QAAQX,EAAKzD,WAAWF,EAAE,GAAG,IAAI,MAAM2D,EAAKzD,WAAWF,EAAE,GAAG,IAAI,IAAI2D,EAAKzD,WAAWF,EAAE,GAAG,GACrG8D,IAAK,KAAOqB,GAAK,OAAWrB,IAAI,GAAI,KAAOA,GAAI,OAAUA,EAAE,MAE5D,GAAGqB,IAAO,EAAG,CAAEtB,EAAIgB,KAAOM,EAAG,GAAKtB,GAAIgB,KAAOM,IAAK,CAAGA,GAAK,EAC1DtB,EAAIgB,KAAOf,EAAE,GAAKD,GAAIgB,KAAOf,IAAI,EAElC,MAAOD,GAAIG,MAAM,EAAEa,GAAGZ,SAAS,QAGhC,QAASu6B,IAAU76B,GAAQ,MAAOpB,GAAYoB,EAAM,UAAUM,SAAS,QAEvE,GAAIw6B,IAAa,oBACjB,IAAIC,IAAWr8B,IAAYm8B,GAAUC,KAAeJ,GAAUI,KAAeD,IAAaD,GAAUE,KAAeJ,GAAUI,KAAeF,KAAcF,EAE1J,IAAIxK,IAAYxxB,EAAU,SAASsB,GAAQ,MAAOpB,GAAYoB,EAAM,QAAQM,SAAS,WAAe,SAASq6B,GAC5G,GAAIz6B,MAAU7D,EAAI,EAAGsE,EAAI,EAAGzE,EAAI,CAChC,OAAMG,EAAIs+B,EAAKr+B,OAAQ,CACtBqE,EAAIg6B,EAAKp+B,WAAWF,IACpB,QAAO,MACN,IAAKsE,GAAI,IAAKT,EAAI2D,KAAKtF,OAAOC,aAAamC,GAAK,OAChD,IAAKA,GAAI,KACRT,EAAI2D,KAAKtF,OAAOC,aAAa,KAAOmC,GAAK,IACzCT,GAAI2D,KAAKtF,OAAOC,aAAa,KAAOmC,EAAI,KACxC,OACD,IAAKA,IAAK,OAASA,EAAI,MACtBA,GAAK,KAAOzE,GAAIy+B,EAAKp+B,WAAWF,KAAO,OAASsE,GAAG,GACnDT,GAAI2D,KAAKtF,OAAOC,aAAa,KAAQtC,GAAI,GAAM,IAC/CgE,GAAI2D,KAAKtF,OAAOC,aAAa,KAAQtC,GAAI,GAAM,KAC/CgE,GAAI2D,KAAKtF,OAAOC,aAAa,KAAQtC,GAAK,EAAK,KAC/CgE,GAAI2D,KAAKtF,OAAOC,aAAa,KAAOtC,EAAI,KACxC,OACD,QACCgE,EAAI2D,KAAKtF,OAAOC,aAAa,KAAOmC,GAAK,KACzCT,GAAI2D,KAAKtF,OAAOC,aAAa,KAAQmC,GAAK,EAAK,KAC/CT,GAAI2D,KAAKtF,OAAOC,aAAa,KAAOmC,EAAI,QAG3C,MAAOT,GAAI4C,KAAK,IAIjB,IAAIk4B,IAAW,WACd,GAAIC,KACJ,OAAO,SAASD,GAASj6B,EAAEo2B,GAC1B,GAAI/tB,GAAIrI,EAAE,KAAKo2B,GAAG,GAClB,IAAG8D,EAAQ7xB,GAAI,MAAO6xB,GAAQ7xB,EAC9B,OAAQ6xB,GAAQ7xB,GAAK,GAAIiQ,QAAO,cAActY,EAAE,+DAA+DA,EAAE,IAAMo2B,GAAG,OAI5H,IAAI+D,IAAa,WAChB,GAAIC,KACF,OAAQ,MAAO,SAAU,MACzB,OAAQ,MAAO,OAAQ,MAAO,KAAQ,MAAO,KAAQ,MAAO,MAAQ,MACpE55B,IAAI,SAASjD,GAAK,OAAQ,GAAI+a,QAAO,IAAM/a,EAAE,GAAK,IAAK,MAAOA,EAAE,KAClE,OAAO,SAAS48B,GAAWnmB,GAC1B,GAAI/O,GAAI+O,EAEL3N,QAAQ,cAAe,IAEvBA,QAAQ,cAAc,IAEtBA,QAAQ,QAAQ,KAAKA,QAAQ,QAAQ,KAErCA,QAAQ,cAAe,KAEvBA,QAAQ,uBAAuB,MAE/BA,QAAQ,WAAW,GACtB,KAAI,GAAI/K,GAAI,EAAGA,EAAI8+B,EAAS7+B,SAAUD,EAAG2J,EAAIA,EAAEoB,QAAQ+zB,EAAS9+B,GAAG,GAAI8+B,EAAS9+B,GAAG,GACnF,OAAO2J,MAIT,IAAIo1B,IAAU,WAAa,GAAIC,KAC9B,OAAO,SAASC,GAASxkB,GACxB,GAAGukB,EAASvkB,KAAQzP,UAAW,MAAOg0B,GAASvkB,EAC/C,OAAQukB,GAASvkB,GAAM,GAAIuC,QAAO,YAAcvC,EAAK,0BAA4BA,EAAK,IAAK,QAE7F,IAAIykB,IAAW,wBAAyBC,GAAW,4BACnD,SAASC,IAAYz7B,EAAM6P,GAC1B,GAAIyX,GAAImR,GAAYz4B,EAEpB,IAAI07B,GAAU17B,EAAKkD,MAAMk4B,GAAQ9T,EAAEqU,cACnC,IAAIhE,KACJ,IAAG+D,EAAQp/B,QAAUgrB,EAAExG,KAAM,CAC5B,GAAGjR,EAAK+rB,IAAK,KAAM,IAAIz+B,OAAM,4BAA8Bu+B,EAAQp/B,OAAS,OAASgrB,EAAExG,KACvF,OAAO6W,GAER+D,EAAQ15B,QAAQ,SAAS1D,GACxB,GAAI6K,GAAI7K,EAAE8I,QAAQm0B,GAAS,IAAIr4B,MAAMs4B,GACrC,IAAGryB,EAAGwuB,EAAI9zB,MAAMsF,EAAE4xB,GAAS5xB,EAAE,IAAKC,EAAED,EAAE,MAEvC,OAAOwuB,GAGR,GAAIkE,IAAU,cACd,SAASC,IAAS/6B,EAAEo2B,GAAK,MAAO,IAAMp2B,GAAKo2B,EAAEj0B,MAAM24B,IAAS,wBAA0B,IAAM,IAAM1E,EAAI,KAAOp2B,EAAI,IAEjH,QAASg7B,IAAWzU,GAAK,MAAO9nB,IAAK8nB,GAAG/lB,IAAI,SAASL,GAAK,MAAO,IAAMA,EAAI,KAAOomB,EAAEpmB,GAAK,MAAO4B,KAAK,IACrG,QAASk5B,IAAUj7B,EAAEo2B,EAAE7P,GAAK,MAAO,IAAMvmB,GAAMumB,GAAK,KAAQyU,GAAWzU,GAAK,KAAQ6P,GAAK,MAASA,EAAEj0B,MAAM24B,IAAS,wBAA0B,IAAM,IAAM1E,EAAI,KAAOp2B,EAAI,KAAO,IAE/K,QAASk7B,IAAa//B,EAAGkN,GAAK,IAAM,MAAOlN,GAAEggC,cAAc90B,QAAQ,QAAQ,IAAO,MAAMhL,GAAK,GAAGgN,EAAG,KAAMhN,GAAK,MAAO,GAErH,QAAS+/B,IAASv6B,EAAGg4B,GACpB,aAAch4B,IACb,IAAK,SACJ,GAAIoE,GAAIg2B,GAAU,YAAajC,GAAUn4B,GACzC,IAAGg4B,EAAM5zB,EAAIA,EAAEoB,QAAQ,UAAW,UAClC,OAAOpB,GACR,IAAK,SAAU,MAAOg2B,KAAWp6B,EAAE,IAAIA,EAAE,QAAQ,QAASm4B,GAAUx7B,OAAOqD,KAC3E,IAAK,UAAW,MAAOo6B,IAAU,UAAUp6B,EAAE,OAAO,UAErD,GAAGA,YAAa+O,MAAM,MAAOqrB,IAAU,cAAeC,GAAar6B,GACnE,MAAM,IAAIzE,OAAM,uBAAyByE,GAG1C,QAASw6B,IAAelgC,GACvB,GAAGwC,GAAWC,OAAOyB,SAASlE,GAAI,MAAOA,GAAEoE,SAAS,OACpD,UAAUpE,KAAM,SAAU,MAAOA,EAEjC,UAAUwL,cAAe,aAAexL,YAAawL,YAAY,MAAOqzB,IAAS/yB,EAAIG,EAAKjM,IAC1F,MAAM,IAAIiB,OAAM,+CAGjB,GAAIk/B,IAAY,2EAGhB,IAAIC,KACHC,WAAY,0EACZC,WAAY,0EACZC,UAAW,4EACXC,GAAI,+DACJC,KAAM,+DACNC,MAAO,0EACPC,GAAM,mCACNC,QAAW,4BACXC,SAAY,+BACZC,GAAM,0DACN/oB,EAAK,sEACLgpB,IAAO,yEACPC,GAAM,uEACNC,IAAO,4CACPC,IAAO,mCAGR,IAAIC,KACH,4DACA,gDACA,sDACA,mDAGD,IAAIC,KACHt3B,EAAQ,0CACR1H,EAAQ,yCACRuU,GAAQ,+CACR8D,GAAQ,4CACRkI,GAAQ,yBACR1V,EAAQ,gCACRo0B,KAAQ,kCAET,SAASC,IAAetW,EAAG3T,GAC1B,GAAI3R,GAAI,EAAI,GAAKslB,EAAE3T,EAAM,KAAO,EAChC,IAAInX,KAAM8qB,EAAE3T,EAAM,GAAK,MAAS,IAAO2T,EAAE3T,EAAM,KAAO,EAAK,GAC3D,IAAIjD,GAAK4W,EAAE3T,EAAI,GAAG,EAClB,KAAI,GAAIlX,GAAI,EAAGA,GAAK,IAAKA,EAAGiU,EAAIA,EAAI,IAAM4W,EAAE3T,EAAMlX,EAClD,IAAGD,GAAK,KAAO,MAAOkU,IAAK,EAAK1O,EAAI67B,SAAY5H,GAChD,IAAGz5B,GAAK,EAAGA,GAAK,SACX,CAAEA,GAAK,IAAMkU,IAAK7G,KAAKI,IAAI,EAAE,IAClC,MAAOjI,GAAI6H,KAAKI,IAAI,EAAGzN,EAAI,IAAMkU,EAGlC,QAASotB,IAAgBxW,EAAG/d,EAAGoK,GAC9B,GAAIoqB,IAASx0B,EAAI,GAAO,EAAEA,IAAMs0B,SAAa,EAAI,IAAM,EAAIrhC,EAAI,EAAGkU,EAAI,CACtE,IAAIstB,GAAKD,GAAOx0B,EAAKA,CACrB,KAAIysB,SAASgI,GAAK,CAAExhC,EAAI,IAAOkU,GAAIrJ,MAAMkC,GAAK,MAAS,MAClD,IAAGy0B,GAAM,EAAGxhC,EAAIkU,EAAI,MACpB,CACJlU,EAAIqN,KAAKiG,MAAMjG,KAAKyI,IAAI0rB,GAAMn0B,KAAKo0B,IACnCvtB,GAAIstB,EAAKn0B,KAAKI,IAAI,EAAG,GAAKzN,EAC1B,IAAIA,IAAM,QAAWw5B,SAAStlB,IAAOA,EAAI7G,KAAKI,IAAI,EAAE,KAAO,CAAEzN,GAAK,SAC7D,CAAEkU,GAAK7G,KAAKI,IAAI,EAAE,GAAKzN,IAAG,MAEhC,IAAI,GAAIC,GAAI,EAAGA,GAAK,IAAKA,EAAGiU,GAAG,IAAK4W,EAAE3T,EAAMlX,GAAKiU,EAAI,GACrD4W,GAAE3T,EAAM,IAAOnX,EAAI,KAAS,EAAMkU,EAAI,EACtC4W,GAAE3T,EAAM,GAAMnX,GAAK,EAAKuhC,EAGzB,GAAIG,IAAc,SAASz1B,GAAQ,GAAI/J,MAAK6B,EAAE,KAAO,KAAI,GAAI9D,GAAE,EAAEA,EAAEgM,EAAK,GAAG/L,SAASD,EAAG,GAAGgM,EAAK,GAAGhM,GAAI,IAAI,GAAIM,GAAE,EAAEkM,EAAER,EAAK,GAAGhM,GAAGC,OAAOK,EAAEkM,EAAElM,GAAGwD,EAAG7B,EAAEuF,KAAK4E,MAAMnK,EAAG+J,EAAK,GAAGhM,GAAGgE,MAAM1D,EAAEA,EAAEwD,GAAK,OAAO7B,GACjM,IAAIojB,IAAahjB,EAAU,SAAS2J,GAAQ,MAAQA,GAAK,GAAG/L,OAAS,GAAKqC,OAAOyB,SAASiI,EAAK,GAAG,IAAO1J,OAAO2J,OAAOD,EAAK,GAAG9G,IAAI,SAASjD,GAAK,MAAOK,QAAOyB,SAAS9B,GAAKA,EAAIM,EAAYN,MAAUw/B,GAAYz1B,IAAUy1B,EAE7N,IAAIC,IAAa,SAAS7W,EAAEtlB,EAAExF,GAAK,GAAIyW,KAAO,KAAI,GAAIxW,GAAEuF,EAAGvF,EAAED,EAAGC,GAAG,EAAGwW,EAAGhP,KAAKtF,OAAOC,aAAaw/B,GAAe9W,EAAE7qB,IAAM,OAAOwW,GAAG/P,KAAK,IAAIsE,QAAQ2B,EAAK,IACzJ,IAAIgZ,IAAYrjB,EAAU,SAASwoB,EAAEtlB,EAAExF,GAAK,IAAIuC,OAAOyB,SAAS8mB,KAAO3f,EAAa,MAAOw2B,IAAW7W,EAAEtlB,EAAExF,EAAI,OAAO8qB,GAAE5mB,SAAS,UAAUsB,EAAExF,GAAGgL,QAAQ2B,EAAK,KAA+Bg1B,EAE3L,IAAIE,IAAa,SAAS/W,EAAEtlB,EAAEgC,GAAK,GAAIiP,KAAO,KAAI,GAAIxW,GAAEuF,EAAGvF,EAAEuF,EAAEgC,IAAKvH,EAAGwW,EAAGhP,MAAM,IAAMqjB,EAAE7qB,GAAGiE,SAAS,KAAKD,OAAO,GAAK,OAAOwS,GAAG/P,KAAK,IACpI,IAAIo7B,IAAYx/B,EAAU,SAASwoB,EAAEtlB,EAAEgC,GAAK,MAAOjF,QAAOyB,SAAS8mB,GAAKA,EAAE5mB,SAAS,MAAMsB,EAAEA,EAAEgC,GAAKq6B,GAAW/W,EAAEtlB,EAAEgC,IAAQq6B,EAEzH,IAAIE,IAAU,SAASjX,EAAEtlB,EAAExF,GAAK,GAAIyW,KAAO,KAAI,GAAIxW,GAAEuF,EAAGvF,EAAED,EAAGC,IAAKwW,EAAGhP,KAAKtF,OAAOC,aAAa4/B,GAAYlX,EAAE7qB,IAAM,OAAOwW,GAAG/P,KAAK,IACjI,IAAIu7B,IAAS3/B,EAAU,QAAS4/B,IAAOpX,EAAGtlB,EAAGxF,GAAK,MAAQuC,QAAOyB,SAAS8mB,GAAMA,EAAE5mB,SAAS,OAAOsB,EAAExF,GAAK+hC,GAAQjX,EAAEtlB,EAAExF,IAAQ+hC,EAE7H,IAAII,IAAW,SAASrX,EAAE7qB,GAAK,GAAIqD,GAAM6iB,GAAe2E,EAAE7qB,EAAI,OAAOqD,GAAM,EAAI2+B,GAAOnX,EAAG7qB,EAAE,EAAEA,EAAE,EAAEqD,EAAI,GAAK,GAC1G,IAAI8+B,IAAUD,EAEd,IAAIE,IAAW,SAASvX,EAAE7qB,GAAK,GAAIqD,GAAM6iB,GAAe2E,EAAE7qB,EAAI,OAAOqD,GAAM,EAAI2+B,GAAOnX,EAAG7qB,EAAE,EAAEA,EAAE,EAAEqD,EAAI,GAAK,GAC1G,IAAIg/B,IAAUD,EAEd,IAAIE,IAAY,SAASzX,EAAE7qB,GAAK,GAAIqD,GAAM,EAAE6iB,GAAe2E,EAAE7qB,EAAI,OAAOqD,GAAM,EAAI2+B,GAAOnX,EAAG7qB,EAAE,EAAEA,EAAE,EAAEqD,EAAI,GAAK,GAC7G,IAAIk/B,IAAWD,EAEf,IAAIE,IAAU,QAASC,IAAM5X,EAAE7qB,GAAK,GAAIqD,GAAM6iB,GAAe2E,EAAE7qB,EAAI,OAAOqD,GAAM,EAAIqiB,GAAUmF,EAAG7qB,EAAE,EAAEA,EAAE,EAAEqD,GAAO,GAChH,IAAIq/B,IAASF,EAEb,IAAIG,IAAW,SAAS9X,EAAE7qB,GAAK,GAAIqD,GAAM6iB,GAAe2E,EAAE7qB,EAAI,OAAOqD,GAAM,EAAI2+B,GAAOnX,EAAG7qB,EAAE,EAAEA,EAAE,EAAEqD,GAAO,GACxG,IAAIu/B,IAAUD,EAEd,IAAIE,IAAY,SAAShY,EAAG3T,GAAO,MAAOiqB,IAAetW,EAAG3T,GAC5D,IAAI4rB,IAAWD,EAEf,IAAIE,IAAS,QAASC,IAASpX,GAAK,MAAOhlB,OAAMgF,QAAQggB,UAAcvgB,cAAe,aAAeugB,YAAavgB,YAElH,IAAGhJ,EAAS,CACX8/B,GAAU,QAASc,IAAQpY,EAAG7qB,GAAK,IAAIsC,OAAOyB,SAAS8mB,GAAI,MAAOqX,IAASrX,EAAG7qB,EAAI,IAAIqD,GAAMwnB,EAAEqY,aAAaljC,EAAI,OAAOqD,GAAM,EAAIwnB,EAAE5mB,SAAS,OAAOjE,EAAE,EAAEA,EAAE,EAAEqD,EAAI,GAAK,GACnKg/B,IAAU,QAASc,IAAQtY,EAAG7qB,GAAK,IAAIsC,OAAOyB,SAAS8mB,GAAI,MAAOuX,IAASvX,EAAG7qB,EAAI,IAAIqD,GAAMwnB,EAAEqY,aAAaljC,EAAI,OAAOqD,GAAM,EAAIwnB,EAAE5mB,SAAS,OAAOjE,EAAE,EAAEA,EAAE,EAAEqD,EAAI,GAAK,GACnKk/B,IAAW,QAASa,IAASvY,EAAG7qB,GAAK,IAAIsC,OAAOyB,SAAS8mB,KAAO3f,EAAa,MAAOo3B,IAAUzX,EAAG7qB,EAAI,IAAIqD,GAAM,EAAEwnB,EAAEqY,aAAaljC,EAAI,OAAO6qB,GAAE5mB,SAAS,UAAUjE,EAAE,EAAEA,EAAE,EAAEqD,EAAI,GAC5Kq/B,IAAS,QAASW,IAAOxY,EAAG7qB,GAAK,IAAIsC,OAAOyB,SAAS8mB,KAAO3f,EAAa,MAAOs3B,IAAQ3X,EAAG7qB,EAAI,IAAIqD,GAAMwnB,EAAEqY,aAAaljC,EAAI,OAAO6qB,GAAE5mB,SAAS,UAAUjE,EAAE,EAAEA,EAAE,EAAEqD,GAChKu/B,IAAU,QAASU,IAAQzY,EAAG7qB,GAAK,IAAIsC,OAAOyB,SAAS8mB,GAAI,MAAO8X,IAAS9X,EAAG7qB,EAAI,IAAIqD,GAAMwnB,EAAEqY,aAAaljC,EAAI,OAAO6qB,GAAE5mB,SAAS,OAAOjE,EAAE,EAAEA,EAAE,EAAEqD,GAChJy/B,IAAW,QAASS,IAAQ1Y,EAAG7qB,GAAK,GAAGsC,OAAOyB,SAAS8mB,GAAI,MAAOA,GAAE2Y,aAAaxjC,EAAI,OAAO6iC,IAAUhY,EAAE7qB,GACxG+iC,IAAS,QAASU,IAAS7X,GAAK,MAAOtpB,QAAOyB,SAAS6nB,IAAMhlB,MAAMgF,QAAQggB,UAAcvgB,cAAe,aAAeugB,YAAavgB,aAIrI,QAASf,MACRob,GAAY,SAASmF,EAAEtlB,EAAExF,GAAK,MAAOgI,GAASL,MAAMhB,OAAO,KAAMmkB,EAAE7mB,MAAMuB,EAAExF,IAAIgL,QAAQ2B,EAAM,IAC7Fs1B,IAAS,SAASnX,EAAEtlB,EAAExF,GAAK,MAAOgI,GAASL,MAAMhB,OAAO,MAAOmkB,EAAE7mB,MAAMuB,EAAExF,IACzEoiC,IAAU,SAAStX,EAAE7qB,GAAK,GAAIqD,GAAM6iB,GAAe2E,EAAE7qB,EAAI,OAAOqD,GAAM,EAAI0E,EAASL,MAAMhB,OAAOoB,EAAc+iB,EAAE7mB,MAAMhE,EAAE,EAAGA,EAAE,EAAEqD,EAAI,IAAM,GACzIg/B,IAAU,SAASxX,EAAE7qB,GAAK,GAAIqD,GAAM6iB,GAAe2E,EAAE7qB,EAAI,OAAOqD,GAAM,EAAI0E,EAASL,MAAMhB,OAAOmB,EAAkBgjB,EAAE7mB,MAAMhE,EAAE,EAAGA,EAAE,EAAEqD,EAAI,IAAM,GAC7Ik/B,IAAW,SAAS1X,EAAE7qB,GAAK,GAAIqD,GAAM,EAAE6iB,GAAe2E,EAAE7qB,EAAI,OAAOqD,GAAM,EAAI0E,EAASL,MAAMhB,OAAO,KAAMmkB,EAAE7mB,MAAMhE,EAAE,EAAEA,EAAE,EAAEqD,EAAI,IAAM,GACnIq/B,IAAS,SAAS7X,EAAE7qB,GAAK,GAAIqD,GAAM6iB,GAAe2E,EAAE7qB,EAAI,OAAOqD,GAAM,EAAI0E,EAASL,MAAMhB,OAAO,KAAMmkB,EAAE7mB,MAAMhE,EAAE,EAAEA,EAAE,EAAEqD,IAAQ,GAC7Hu/B,IAAU,SAAS/X,EAAE7qB,GAAK,GAAIqD,GAAM6iB,GAAe2E,EAAE7qB,EAAI,OAAOqD,GAAM,EAAI0E,EAASL,MAAMhB,OAAO,MAAOmkB,EAAE7mB,MAAMhE,EAAE,EAAEA,EAAE,EAAEqD,IAAQ,IAEhI,SAAU0E,KAAa,YAAauC,IAEpC,IAAIy3B,IAAc,SAASlX,EAAG3T,GAAO,MAAO2T,GAAE3T,GAC9C,IAAIyqB,IAAiB,SAAS9W,EAAG3T,GAAO,MAAQ2T,GAAE3T,EAAI,IAAI,GAAG,GAAI2T,EAAE3T,GACnE,IAAIwsB,IAAgB,SAAS7Y,EAAG3T,GAAO,GAAInD,GAAK8W,EAAE3T,EAAI,IAAI,GAAG,GAAI2T,EAAE3T,EAAM,OAAQnD,GAAI,MAAUA,GAAM,MAASA,EAAI,IAAM,EACxH,IAAImS,IAAiB,SAAS2E,EAAG3T,GAAO,MAAO2T,GAAE3T,EAAI,IAAI,GAAG,KAAK2T,EAAE3T,EAAI,IAAI,KAAK2T,EAAE3T,EAAI,IAAI,GAAG2T,EAAE3T,GAC/F,IAAIyN,IAAgB,SAASkG,EAAG3T,GAAO,MAAQ2T,GAAE3T,EAAI,IAAI,GAAK2T,EAAE3T,EAAI,IAAI,GAAK2T,EAAE3T,EAAI,IAAI,EAAG2T,EAAE3T,GAC5F,IAAIysB,IAAgB,SAAS9Y,EAAG3T,GAAO,MAAQ2T,GAAE3T,IAAM,GAAK2T,EAAE3T,EAAI,IAAI,GAAK2T,EAAE3T,EAAI,IAAI,EAAG2T,EAAE3T,EAAI,GAE9F,SAASmc,IAAU5O,EAAM1X,GACxB,GAAIpD,GAAE,GAAIi6B,EAAIC,EAAIC,KAAOhgC,EAAG8W,EAAI5a,EAAG+jC,CACnC,QAAOh3B,GACN,IAAK,OACJg3B,EAAMhjC,KAAKwG,CACX,IAAGlF,GAAWC,OAAOyB,SAAShD,OAAUmK,EAAavB,EAAI5I,KAAKiD,MAAMjD,KAAKwG,EAAGxG,KAAKwG,EAAE,EAAEkd,GAAMxgB,SAAS,eAC/F,KAAIjE,EAAI,EAAGA,EAAIykB,IAAQzkB,EAAG,CAAE2J,GAAGzH,OAAOC,aAAaw/B,GAAe5gC,KAAMgjC,GAAOA,IAAK,EACzFtf,GAAQ,CACR,OAED,IAAK,OAAQ9a,EAAIq4B,GAAOjhC,KAAMA,KAAKwG,EAAGxG,KAAKwG,EAAIkd,EAAO,OACtD,IAAK,UAAWA,GAAQ,CAAG9a,GAAI+b,GAAU3kB,KAAMA,KAAKwG,EAAGxG,KAAKwG,EAAIkd,EAAO,OAEvE,IAAK,OACJ,SAAU1c,KAAa,YAAa4B,EAAI5B,EAASL,MAAMhB,OAAOmB,EAAkB9G,KAAKiD,MAAMjD,KAAKwG,EAAGxG,KAAKwG,EAAE,EAAEkd,QACvG,OAAO4O,IAAUnvB,KAAKnD,KAAM0jB,EAAM,OACvCA,GAAO,EAAIA,CAAM,OAGlB,IAAK,aAAc9a,EAAIw4B,GAAQphC,KAAMA,KAAKwG,EAAIkd,GAAO,EAAIyB,GAAenlB,KAAMA,KAAKwG,EAAI,OACvF,IAAK,WAAYoC,EAAI04B,GAAQthC,KAAMA,KAAKwG,EAAIkd,GAAO,EAAIyB,GAAenlB,KAAMA,KAAKwG,EAAI,OAErF,IAAK,SAAUoC,EAAI44B,GAASxhC,KAAMA,KAAKwG,EAAIkd,GAAO,EAAI,EAAIyB,GAAenlB,KAAMA,KAAKwG,EAAI,OAExF,IAAK,OAAQkd,EAAO,EAAKyB,GAAenlB,KAAMA,KAAKwG,EAAIoC,GAAI+4B,GAAO3hC,KAAMA,KAAKwG,EAAI,IAAGkd,EAAO,EAAMA,GAAQ,CAAG,OAE5G,IAAK,QAASA,EAAO,EAAKyB,GAAenlB,KAAMA,KAAKwG,EAAIoC,GAAIi5B,GAAQ7hC,KAAMA,KAAKwG,EAAI,IAAGkd,EAAO,EAAMA,GAAQ,GAAKA,EAAO,EAAO,OAE9H,IAAK,OAAQA,EAAO,CAAG9a,GAAI,EAC1B,QAAO7F,EAAEi+B,GAAYhhC,KAAMA,KAAKwG,EAAIkd,QAAW,EAAGqf,EAAGt8B,KAAKuC,EAASjG,GACnE6F,GAAIm6B,EAAGr9B,KAAK,GAAK,OAClB,IAAK,QAASge,EAAO,CAAG9a,GAAI,EAC3B,QAAO7F,EAAE69B,GAAe5gC,KAAKA,KAAKwG,EAAGkd,MAAS,EAAE,CAACqf,EAAGt8B,KAAKuC,EAASjG,GAAI2gB,IAAM,EAC5EA,GAAM,CAAG9a,GAAIm6B,EAAGr9B,KAAK,GAAK,OAG3B,IAAK,YAAakD,EAAI,EAAIo6B,GAAMhjC,KAAKwG,CACpC,KAAIvH,EAAI,EAAGA,EAAIykB,IAAQzkB,EAAG,CACzB,GAAGe,KAAKijC,MAAQjjC,KAAKijC,KAAKz9B,QAAQw9B,MAAU,EAAG,CAC9CjgC,EAAIi+B,GAAYhhC,KAAMgjC,EACtBhjC,MAAKwG,EAAIw8B,EAAM,CACfnpB,GAAKyY,GAAUnvB,KAAKnD,KAAM0jB,EAAKzkB,EAAG8D,EAAI,YAAc,YACpD,OAAOggC,GAAGr9B,KAAK,IAAMmU,EAEtBkpB,EAAGt8B,KAAKuC,EAAS43B,GAAe5gC,KAAMgjC,IACtCA,IAAK,EACJp6B,EAAIm6B,EAAGr9B,KAAK,GAAKge,IAAQ,CAAG,OAE/B,IAAK,QACJ,SAAU1c,KAAa,YAAa,CACnC4B,EAAI5B,EAASL,MAAMhB,OAAOmB,EAAkB9G,KAAKiD,MAAMjD,KAAKwG,EAAGxG,KAAKwG,EAAIkd,GACxE,QAGF,IAAK,YAAa9a,EAAI,EAAIo6B,GAAMhjC,KAAKwG,CACpC,KAAIvH,EAAI,EAAGA,GAAKykB,IAAQzkB,EAAG,CAC1B,GAAGe,KAAKijC,MAAQjjC,KAAKijC,KAAKz9B,QAAQw9B,MAAU,EAAG,CAC9CjgC,EAAIi+B,GAAYhhC,KAAMgjC,EACtBhjC,MAAKwG,EAAIw8B,EAAM,CACfnpB,GAAKyY,GAAUnvB,KAAKnD,KAAM0jB,EAAKzkB,EAAG8D,EAAI,YAAc,YACpD,OAAOggC,GAAGr9B,KAAK,IAAMmU,EAEtBkpB,EAAGt8B,KAAKuC,EAASg4B,GAAYhhC,KAAMgjC,IACnCA,IAAK,EACJp6B,EAAIm6B,EAAGr9B,KAAK,GAAK,OAEpB,QACD,OAAOge,GACN,IAAK,GAAGmf,EAAK7B,GAAYhhC,KAAMA,KAAKwG,EAAIxG,MAAKwG,GAAK,OAAOq8B,GACzD,IAAK,GAAGA,GAAM72B,IAAM,IAAM22B,GAAgB/B,IAAgB5gC,KAAMA,KAAKwG,EAAIxG,MAAKwG,GAAK,CAAG,OAAOq8B,GAC7F,IAAK,IAAG,KAAM,EACb,GAAG72B,IAAM,MAAShM,KAAKA,KAAKwG,EAAE,GAAK,OAAQ,EAAI,CAAEq8B,GAAOnf,EAAO,EAAKE,GAAgBgf,IAAe5iC,KAAMA,KAAKwG,EAAIxG,MAAKwG,GAAK,CAAG,OAAOq8B,OACjI,CAAEC,EAAK3d,GAAenlB,KAAMA,KAAKwG,EAAIxG,MAAKwG,GAAK,EAAK,MAAOs8B,GACjE,IAAK,IAAG,KAAM,EACb,GAAG92B,IAAM,IAAK,CACb,GAAG0X,GAAQ,EAAGof,EAAKf,GAAS/hC,KAAMA,KAAKwG,OAClCs8B,GAAKf,IAAU/hC,KAAKA,KAAKwG,EAAE,GAAGxG,KAAKA,KAAKwG,EAAE,GAAGxG,KAAKA,KAAKwG,EAAE,GAAGxG,KAAKA,KAAKwG,EAAE,GAAGxG,KAAKA,KAAKwG,EAAE,GAAGxG,KAAKA,KAAKwG,EAAE,GAAGxG,KAAKA,KAAKwG,EAAE,GAAGxG,KAAKA,KAAKwG,EAAE,IAAK,EAC9IxG,MAAKwG,GAAK,CAAG,OAAOs8B,OACdpf,GAAO,EAEf,IAAK,IAAI9a,EAAIk4B,GAAU9gC,KAAMA,KAAKwG,EAAGkd,EAAO,UAE7C1jB,KAAKwG,GAAGkd,CAAM,OAAO9a,GAGtB,GAAIs6B,IAAkB,SAASpZ,EAAGvU,EAAKY,GAAO2T,EAAE3T,GAAQZ,EAAM,GAAOuU,GAAE3T,EAAI,GAAOZ,IAAQ,EAAK,GAAOuU,GAAE3T,EAAI,GAAOZ,IAAQ,GAAM,GAAOuU,GAAE3T,EAAI,GAAOZ,IAAQ,GAAM,IACnK,IAAI4tB,IAAkB,SAASrZ,EAAGvU,EAAKY,GAAO2T,EAAE3T,GAAQZ,EAAM,GAAOuU,GAAE3T,EAAI,GAAOZ,GAAO,EAAK,GAAOuU,GAAE3T,EAAI,GAAOZ,GAAO,GAAM,GAAOuU,GAAE3T,EAAI,GAAOZ,GAAO,GAAM,IAChK,IAAI6tB,IAAkB,SAAStZ,EAAGvU,EAAKY,GAAO2T,EAAE3T,GAAQZ,EAAM,GAAOuU,GAAE3T,EAAI,GAAOZ,IAAQ,EAAK,IAE/F,SAAS8tB,IAAWr3B,EAAGuJ,EAAK5R,GAC3B,GAAI+f,GAAO,EAAGzkB,EAAI,CAClB,IAAG0E,IAAM,OAAQ,CAClB,IAAI1E,EAAI,EAAGA,GAAKsW,EAAIrW,SAAUD,EAAGmkC,GAAgBpjC,KAAMuV,EAAIpW,WAAWF,GAAIe,KAAKwG,EAAI,EAAIvH,EACrFykB,GAAO,EAAInO,EAAIrW,WACT,IAAGyE,IAAM,QAAUA,GAAK,QAAS,CACvC,SAAUqD,KAAa,aAAeD,GAAgB,IAAK,CAE7D,IAAI9H,EAAI,EAAGA,GAAKsW,EAAIrW,SAAUD,EAAG,CAC7B,GAAIqkC,GAAMt8B,EAASL,MAAMvB,OAAO2B,EAAcwO,EAAInW,OAAOH,GACzDe,MAAKA,KAAKwG,EAAIvH,GAAKqkC,EAAI,GAExB5f,EAAOnO,EAAIrW,WACL,UAAU8H,KAAa,aAAerD,GAAK,QAAS,CAC1D2/B,EAAMt8B,EAASL,MAAMvB,OAAO0B,EAAkByO,EAE3C,IAAG+tB,EAAIpkC,QAAUqW,EAAIrW,OAAQ,IAAID,EAAI,EAAGA,EAAIsW,EAAIrW,SAAUD,EAAG,GAAGqkC,EAAIrkC,IAAM,GAAKsW,EAAIpW,WAAWF,IAAM,EAAGqkC,EAAIrkC,GAAK,EAChH,IAAGqkC,EAAIpkC,QAAU,EAAIqW,EAAIrW,OAAQ,IAAID,EAAI,EAAGA,EAAIsW,EAAIrW,SAAUD,EAAG,GAAGqkC,EAAI,EAAErkC,IAAM,GAAKqkC,EAAI,EAAErkC,EAAE,IAAM,GAAKsW,EAAIpW,WAAWF,IAAM,EAAGqkC,EAAI,EAAErkC,GAAK,EAC9I,KAAIA,EAAI,EAAGA,EAAIqkC,EAAIpkC,SAAUD,EAAGe,KAAKA,KAAKwG,EAAIvH,GAAKqkC,EAAIrkC,EACvDykB,GAAO4f,EAAIpkC,WACL,CACTqW,EAAMA,EAAIvL,QAAQ,gBAAiB,IACnC,KAAI/K,EAAI,EAAGA,GAAKsW,EAAIrW,SAAUD,EAAGe,KAAKA,KAAKwG,EAAIvH,GAAMsW,EAAIpW,WAAWF,GAAK,GACtEykB,GAAOnO,EAAIrW,YAEN,IAAGyE,IAAM,MAAO,CACtB,KAAM1E,EAAI+M,IAAK/M,EAAG,CACpBe,KAAKA,KAAKwG,KAAQyQ,SAAS1B,EAAItS,MAAM,EAAEhE,EAAG,EAAEA,EAAE,GAAI,KAAK,EACnD,MAAOe,UACH,IAAG2D,IAAM,UAAW,CAC5B,GAAI6sB,GAAMnkB,KAAKkM,IAAIvY,KAAKwG,EAAIwF,EAAGhM,KAAKd,OACjC,KAAID,EAAI,EAAGA,EAAIoN,KAAKkM,IAAIhD,EAAIrW,OAAQ8M,KAAM/M,EAAG,CAC5C,GAAI2Y,GAAKrC,EAAIpW,WAAWF,EACxBe,MAAKA,KAAKwG,KAAQoR,EAAK,GACvB5X,MAAKA,KAAKwG,KAAQoR,GAAM,EAEzB,MAAM5X,KAAKwG,EAAIgqB,EAAKxwB,KAAKA,KAAKwG,KAAO,CACrC,OAAOxG,UACD,QAAOgM,GACd,IAAM,GAAG0X,EAAO,CAAG1jB,MAAKA,KAAKwG,GAAK+O,EAAI,GAAM,OAC5C,IAAM,GAAGmO,EAAO,CAAG1jB,MAAKA,KAAKwG,GAAK+O,EAAI,GAAMA,MAAS,CAAGvV,MAAKA,KAAKwG,EAAE,GAAK+O,EAAI,GAAM,OACnF,IAAM,GAAGmO,EAAO,CAAG1jB,MAAKA,KAAKwG,GAAK+O,EAAI,GAAMA,MAAS,CAAGvV,MAAKA,KAAKwG,EAAE,GAAK+O,EAAI,GAAMA,MAAS,CAAGvV,MAAKA,KAAKwG,EAAE,GAAK+O,EAAI,GAAM,OAC1H,IAAM,GAAGmO,EAAO,CAAGwf,IAAgBljC,KAAMuV,EAAKvV,KAAKwG,EAAI,OACvD,IAAM,GAAGkd,EAAO,CAAG,IAAG/f,IAAM,IAAK,CAAE28B,GAAgBtgC,KAAMuV,EAAKvV,KAAKwG,EAAI,QAEvE,IAAK,IAAI,MACT,KAAM,EAAGkd,EAAO,CAAGyf,IAAenjC,KAAMuV,EAAKvV,KAAKwG,EAAI,QAEvDxG,KAAKwG,GAAKkd;AAAM,MAAO1jB,MAGxB,QAASuyB,IAAWgR,EAAQC,GAC3B,GAAItwB,GAAI4tB,GAAU9gC,KAAKA,KAAKwG,EAAE+8B,EAAOrkC,QAAQ,EAC7C,IAAGgU,IAAMqwB,EAAQ,KAAM,IAAIxjC,OAAMyjC,EAAM,YAAcD,EAAS,QAAUrwB,EACxElT,MAAKwG,GAAK+8B,EAAOrkC,QAAQ,EAG1B,QAAS2gB,IAAUD,EAAM6jB,GACxB7jB,EAAKpZ,EAAIi9B,CACT7jB,GAAKR,WAAakT,EAClB1S,GAAKkC,IAAMyQ,EACX3S,GAAKX,YAAcokB,GAGpB,QAASK,IAAU9jB,EAAM1gB,GAAU0gB,EAAKpZ,GAAKtH,EAE7C,QAAS2kB,IAAQ9D,GAChB,GAAInX,GAAIwB,EAAY2V,EACpBF,IAAUjX,EAAG,EACb,OAAOA,GAIR,QAAS+6B,IAAa/gC,EAAMghC,EAAInxB,GAC/B,IAAI7P,EAAM,MACV,IAAIihC,GAASC,EAAS5kC,CACtB2gB,IAAUjd,EAAMA,EAAK4D,GAAK,EAC1B,IAAIiF,GAAI7I,EAAK1D,OAAQ6kC,EAAK,EAAG/jB,EAAM,CACnC,OAAMpd,EAAK4D,EAAIiF,EAAG,CACjBs4B,EAAKnhC,EAAKwc,WAAW,EACrB,IAAG2kB,EAAK,IAAMA,GAAMA,EAAK,OAAUnhC,EAAKwc,WAAW,GAAK,MAAO,EAC/D,IAAIb,GAAIylB,GAAeD,IAAOC,GAAe,MAC7CH,GAAUjhC,EAAKwc,WAAW,EAC1BlgB,GAAS2kC,EAAU,GACnB,KAAIC,EAAU,EAAGA,EAAS,GAAMD,EAAU,MAASC,EAAS5kC,KAAY2kC,EAAUjhC,EAAKwc,WAAW,IAAM,MAAQ,EAAE0kB,CAClH9jB,GAAMpd,EAAK4D,EAAItH,CACf,IAAIJ,GAAIyf,EAAE5a,GAAK4a,EAAE5a,EAAEf,EAAM1D,EAAQuT,EACjC7P,GAAK4D,EAAIwZ,CACT,IAAG4jB,EAAG9kC,EAAGyf,EAAGwlB,GAAK,QAKnB,QAASE,MACR,GAAIh5B,MAAWi5B,EAAQ5iC,EAAU,IAAM,IACvC,IAAI6iC,GAAS,QAASC,GAAUrkB,GAC/B,GAAInX,GAAKib,GAAQ9D,EACjBF,IAAUjX,EAAG,EACb,OAAOA,GAGR,IAAIy7B,GAASF,EAAOD,EAEpB,IAAII,GAAS,QAASC,KACrB,IAAIF,EAAQ,MAEZ,IAAGA,EAAO79B,EAAG,CACZ,GAAG69B,EAAOnlC,OAASmlC,EAAO79B,EAAG,CAAE69B,EAASA,EAAOphC,MAAM,EAAGohC,EAAO79B,EAAI69B,GAAO79B,EAAI69B,EAAOnlC,OACrF,GAAGmlC,EAAOnlC,OAAS,EAAG+L,EAAKxE,KAAK49B,GAEjCA,EAAS,KAGV,IAAIG,GAAO,QAASC,GAAQ1kB,GAC3B,GAAGskB,GAAWtkB,EAAMskB,EAAOnlC,OAASmlC,EAAO79B,EAAK,MAAO69B,EACvDC,IACA,OAAQD,GAASF,EAAO93B,KAAKmM,IAAIuH,EAAG,EAAGmkB,IAGxC,IAAI1T,GAAM,QAASkU,KAClBJ,GACA,OAAOt5B,GAAQC,GAGhB,IAAIxE,GAAO,QAASk+B,GAAQhjC,GAAO2iC,GAAUD,GAAS1iC,CAAK,IAAG0iC,EAAO79B,GAAK,KAAM69B,EAAO79B,EAAI69B,EAAOnlC,MAAQslC,GAAKN,GAE/G,QAAUM,KAAKA,EAAM/9B,KAAKA,EAAM+pB,IAAIA,EAAKoU,MAAM35B,GAGhD,QAAS45B,IAAaC,EAAIzvB,EAAMkO,EAASrkB,GACxC,GAAI8M,IAAKqJ,EAAM7O,CACf,IAAGqD,MAAMmC,GAAI,MACb,KAAI9M,EAAQA,EAAS8kC,GAAeh4B,GAAG0S,IAAM6E,OAAarkB,QAAU,CACpEsH,GAAI,GAAKwF,GAAK,IAAO,EAAI,GAAK,CAC9B,IAAG9M,GAAU,MAAQsH,CAAG,IAAGtH,GAAU,QAAUsH,CAAG,IAAGtH,GAAU,UAAYsH,CAC3E,IAAIoC,GAAIk8B,EAAGN,KAAKh+B,EAChB,IAAGwF,GAAK,IAAMpD,EAAEqW,YAAY,EAAGjT,OAC1B,CACJpD,EAAEqW,YAAY,GAAIjT,EAAI,KAAQ,IAC9BpD,GAAEqW,YAAY,EAAIjT,GAAK,GAExB,IAAI,GAAI/M,GAAI,EAAGA,GAAK,IAAKA,EAAG,CAC3B,GAAGC,GAAU,IAAM,CAAE0J,EAAEqW,YAAY,GAAI/f,EAAS,KAAM,IAAOA,KAAW,MACnE,CAAE0J,EAAEqW,YAAY,EAAG/f,EAAS,QAElC,GAAGA,EAAS,GAAK8iC,GAAOze,GAAUuhB,EAAGr+B,KAAK8c,GAG3C,QAASwhB,IAAeC,EAAMhlB,EAAKvN,GAClC,GAAI3P,GAAMq1B,GAAI6M,EACd,IAAGhlB,EAAIxb,EAAG,CACT,GAAG1B,EAAImiC,KAAMniC,EAAIS,GAAKyc,EAAIxb,EAAEjB,CAC5B,IAAGT,EAAIoiC,KAAMpiC,EAAI+T,GAAKmJ,EAAIxb,EAAEqS,MACtB,CACN,GAAG/T,EAAImiC,KAAMniC,EAAIS,GAAKyc,EAAIzc,CAC1B,IAAGT,EAAIoiC,KAAMpiC,EAAI+T,GAAKmJ,EAAInJ,EAE3B,IAAIpE,GAAQA,EAAK0yB,KAAO,GAAI,CAC3B,MAAMriC,EAAIS,GAAK,IAAOT,EAAIS,GAAK,GAC/B,OAAMT,EAAI+T,GAAK,MAAS/T,EAAI+T,GAAK,MAElC,MAAO/T,GAGR,QAASsiC,IAAgBJ,EAAMK,EAAO5yB,GACrC,GAAI3P,GAAMq1B,GAAI6M,EACdliC,GAAI0B,EAAIugC,GAAejiC,EAAI0B,EAAG6gC,EAAM7gC,EAAGiO,EACvC3P,GAAI9D,EAAI+lC,GAAejiC,EAAI9D,EAAGqmC,EAAM7gC,EAAGiO,EACvC,OAAO3P,GAGR,QAASwiC,IAAgB/hC,EAAG4hC,GAC3B,GAAG5hC,EAAE0hC,MAAQ1hC,EAAEA,EAAI,EAAG,CAAEA,EAAI40B,GAAI50B,EAAI,OAAMA,EAAEA,EAAI,EAAGA,EAAEA,GAAM4hC,EAAO,EAAK,MAAS,IAChF,GAAG5hC,EAAE2hC,MAAQ3hC,EAAEsT,EAAI,EAAG,CAAEtT,EAAI40B,GAAI50B,EAAI,OAAMA,EAAEsT,EAAI,EAAGtT,EAAEsT,GAAMsuB,EAAO,EAAK,QAAaA,EAAO,EAAK,MAAU,MAC1G,GAAI3gC,GAAI+gC,GAAYhiC,EACpB,KAAIA,EAAE0hC,MAAQ1hC,EAAE0hC,MAAQ,KAAMzgC,EAAIghC,GAAQhhC,EAC1C,KAAIjB,EAAE2hC,MAAQ3hC,EAAE2hC,MAAQ,KAAM1gC,EAAIihC,GAAQjhC,EAC1C,OAAOA,GAGR,QAASkhC,IAAiB7uB,EAAGpE,GAC5B,GAAGoE,EAAErS,EAAEqS,GAAK,IAAMA,EAAErS,EAAE0gC,KAAM,CAC3B,GAAGruB,EAAE7X,EAAE6X,IAAMpE,EAAK0yB,MAAQ,GAAK,QAAW1yB,EAAK0yB,MAAQ,EAAI,MAAU,SAAatuB,EAAE7X,EAAEkmC,KAAM,CAC3F,OAAQruB,EAAErS,EAAEygC,KAAO,GAAK,KAAOU,GAAW9uB,EAAErS,EAAEjB,GAAK,KAAOsT,EAAE7X,EAAEimC,KAAO,GAAK,KAAOU,GAAW9uB,EAAE7X,EAAEuE,IAGlG,GAAGsT,EAAErS,EAAEjB,GAAK,IAAMsT,EAAErS,EAAEygC,KAAM,CAC3B,GAAGpuB,EAAE7X,EAAEuE,IAAMkP,EAAK0yB,MAAQ,GAAK,MAAS,OAAUtuB,EAAE7X,EAAEimC,KAAM,CAC3D,OAAQpuB,EAAErS,EAAE0gC,KAAO,GAAK,KAAOU,GAAW/uB,EAAErS,EAAEqS,GAAK,KAAOA,EAAE7X,EAAEkmC,KAAO,GAAK,KAAOU,GAAW/uB,EAAE7X,EAAE6X,IAGlG,MAAOyuB,IAAgBzuB,EAAErS,EAAGiO,EAAK0yB,MAAQ,IAAMG,GAAgBzuB,EAAE7X,EAAGyT,EAAK0yB,MAE1E,SAAUvmC,WAAY,YAAawK,EAAYxK,aAC1C,UAAUa,UAAW,mBAAsBI,WAAY,YAAa,CACxEuJ,EAAYa,WAEb,QAAS47B,IAAWC,GAAU,MAAO7uB,UAAS8uB,GAAUD,GAAQ,IAAM,EACtE,QAASF,IAAWzU,GAAO,MAAO,IAAMA,EAAM,GAC9C,QAASsU,IAAQhU,GAAQ,MAAOA,GAAKznB,QAAQ,kBAAkB,UAC/D,QAAS+7B,IAAUtU,GAAQ,MAAOA,GAAKznB,QAAQ,WAAW,MAE1D,QAASg8B,IAAWC,GAAU,GAAI1iC,GAAI2iC,GAAUD,GAASnnC,EAAI,EAAGG,EAAI,CAAG,MAAMA,IAAMsE,EAAErE,SAAUD,EAAGH,EAAI,GAAGA,EAAIyE,EAAEpE,WAAWF,GAAK,EAAI,OAAOH,GAAI,EAC9I,QAAS6mC,IAAWQ,GAAO,GAAGA,EAAM,EAAG,KAAM,IAAIpmC,OAAM,kBAAoBomC,EAAM,IAAI3hC,GAAE,EAAI,OAAM2hC,EAAKA,EAAKA,EAAI95B,KAAKiG,OAAO6zB,EAAI,GAAG,IAAK3hC,EAAIrD,OAAOC,cAAe+kC,EAAI,GAAG,GAAM,IAAM3hC,CAAG,OAAOA,GAC9L,QAASghC,IAAQ/T,GAAQ,MAAOA,GAAKznB,QAAQ,WAAW,QACxD,QAASk8B,IAAUzU,GAAQ,MAAOA,GAAKznB,QAAQ,aAAa,MAE5D,QAASo8B,IAAW3U,GAAQ,MAAOA,GAAKznB,QAAQ,sBAAsB,SAASxK,MAAM,KAErF,QAAS6mC,IAAY5U,GACpB,GAAIlT,GAAI,EAAGlZ,EAAI,CACf,KAAI,GAAIpG,GAAI,EAAGA,EAAIwyB,EAAKvyB,SAAUD,EAAG,CACpC,GAAI2Y,GAAK6Z,EAAKtyB,WAAWF,EACzB,IAAG2Y,GAAM,IAAMA,GAAM,GAAI2G,EAAI,GAAKA,GAAK3G,EAAK,QACvC,IAAGA,GAAM,IAAMA,GAAM,GAAIvS,EAAI,GAAKA,GAAKuS,EAAK,IAElD,OAASrU,EAAG8B,EAAI,EAAGwR,EAAE0H,EAAI,GAG1B,QAASgnB,IAAYP,GACpB,GAAImB,GAAMnB,EAAKzhC,EAAI,CACnB,IAAIiB,GAAE,EACN,MAAM2hC,EAAKA,GAAMA,EAAI,GAAG,GAAI,EAAG3hC,EAAIrD,OAAOC,cAAe+kC,EAAI,GAAG,GAAM,IAAM3hC,CAC5E,OAAOA,IAAKwgC,EAAKnuB,EAAI,GAEtB,QAASyvB,IAAajB,GACrB,GAAIlvB,GAAMkvB,EAAM7/B,QAAQ,IACxB,IAAG2Q,IAAQ,EAAG,OAAS3R,EAAG6hC,GAAYhB,GAAQrmC,EAAGqnC,GAAYhB,GAC7D,QAAS7gC,EAAG6hC,GAAYhB,EAAMpiC,MAAM,EAAGkT,IAAOnX,EAAGqnC,GAAYhB,EAAMpiC,MAAMkT,EAAM,KAEhF,QAASowB,IAAaC,EAAGC,GACxB,SAAUA,KAAO,mBAAsBA,KAAO,SAAU,CACzD,MAAOF,IAAaC,EAAGhiC,EAAGgiC,EAAGxnC,GAE7B,SAAUwnC,KAAO,SAAUA,EAAKjB,GAAY,EAC3C,UAAUkB,KAAO,SAAUA,EAAKlB,GAAY,EAC7C,OAAOiB,IAAMC,EAAKD,EAAKA,EAAK,IAAMC,EAElC,QAASC,IAAUC,GAClB,GAAIniC,GAAI8hC,GAAaK,EACrB,OAAO,IAAMhB,GAAWnhC,EAAEA,EAAEjB,GAAK,IAAMqiC,GAAWphC,EAAEA,EAAEqS,GAAK,KAAO8uB,GAAWnhC,EAAExF,EAAEuE,GAAK,IAAMqiC,GAAWphC,EAAExF,EAAE6X,GAI5G,QAAS+vB,IAAyBC,EAAOp0B,GACxC,IAAIo0B,KAAWp0B,GAAQA,EAAK0yB,MAAQ,GAAK1yB,EAAK0yB,MAAQ,GAAI,KAAM,IAAIplC,OAAM,mBAC1E,IAAI,kCAAkCqxB,KAAKyV,GAAQ,MAAO,IAAMA,EAAM78B,QAAQ,KAAM,MAAQ,GAC5F,OAAO68B,GAGR,QAASC,IAAkBzB,GAC1B,GAAIz8B,IAAKpE,GAAGjB,EAAE,EAAEsT,EAAE,GAAG7X,GAAGuE,EAAE,EAAEsT,EAAE,GAC9B,IAAIV,GAAM,EAAGlX,EAAI,EAAG2Y,EAAK,CACzB,IAAItV,GAAM+iC,EAAMnmC,MAChB,KAAIiX,EAAM,EAAGlX,EAAIqD,IAAOrD,EAAG,CAC1B,IAAI2Y,EAAGytB,EAAMlmC,WAAWF,GAAG,IAAM,GAAK2Y,EAAK,GAAI,KAC/CzB,GAAM,GAAGA,EAAMyB,EAEhBhP,EAAEpE,EAAEjB,IAAM4S,CAEV,KAAIA,EAAM,EAAGlX,EAAIqD,IAAOrD,EAAG,CAC1B,IAAI2Y,EAAGytB,EAAMlmC,WAAWF,GAAG,IAAM,GAAK2Y,EAAK,EAAG,KAC9CzB,GAAM,GAAGA,EAAMyB,EAEhBhP,EAAEpE,EAAEqS,IAAMV,CAEV,IAAGlX,IAAMqD,GAAOsV,GAAM,GAAI,CAAEhP,EAAE5J,EAAEuE,EAAEqF,EAAEpE,EAAEjB,CAAGqF,GAAE5J,EAAE6X,EAAEjO,EAAEpE,EAAEqS,CAAG,OAAOjO,KAC3D3J,CAEF,KAAIkX,EAAM,EAAGlX,GAAKqD,IAAOrD,EAAG,CAC3B,IAAI2Y,EAAGytB,EAAMlmC,WAAWF,GAAG,IAAM,GAAK2Y,EAAK,GAAI,KAC/CzB,GAAM,GAAGA,EAAMyB,EAEhBhP,EAAE5J,EAAEuE,IAAM4S,CAEV,KAAIA,EAAM,EAAGlX,GAAKqD,IAAOrD,EAAG,CAC3B,IAAI2Y,EAAGytB,EAAMlmC,WAAWF,GAAG,IAAM,GAAK2Y,EAAK,EAAG,KAC9CzB,GAAM,GAAGA,EAAMyB,EAEhBhP,EAAE5J,EAAE6X,IAAMV,CACV,OAAOvN,GAGR,QAASm+B,IAAiB/B,EAAMj5B,GAC/B,GAAIwG,GAAKyyB,EAAKh5B,GAAK,KAAOD,YAAawH,KACvC,IAAGyxB,EAAKvJ,GAAK,KAAM,IAAM,MAAQuJ,GAAKjiC,EAAIoS,GAAW6vB,EAAKvJ,EAAGlpB,EAAIgjB,GAAQxpB,GAAKA,GAAO,MAAM/M,IAC3F,IAAM,MAAQgmC,GAAKjiC,EAAIoS,IAAY6vB,EAAKgC,QAAQC,WAAW10B,EAAI,GAAK,GAAKA,EAAIgjB,GAAQxpB,GAAKA,GAAO,MAAM/M,GAAK,MAAO,GAAG+M,GAGvH,QAASm7B,IAAYlC,EAAMj5B,EAAGnD,GAC7B,GAAGo8B,GAAQ,MAAQA,EAAKh5B,GAAK,MAAQg5B,EAAKh5B,GAAK,IAAK,MAAO,EAC3D,IAAGg5B,EAAKjiC,IAAMkH,UAAW,MAAO+6B,GAAKjiC,CACrC,IAAGiiC,EAAKh5B,GAAK,MAAQg5B,EAAKvJ,GAAK7yB,GAAKA,EAAE+R,OAAQqqB,EAAKvJ,EAAI7yB,EAAE+R,MACzD,IAAGqqB,EAAKh5B,GAAK,IAAK,MAAOm7B,IAAKnC,EAAKj5B,IAAMi5B,EAAKj5B,CAC9C,IAAGA,GAAK9B,UAAW,MAAO88B,IAAiB/B,EAAMA,EAAKj5B,EACtD,OAAOg7B,IAAiB/B,EAAMj5B,GAG/B,QAASq7B,IAAkBC,EAAO50B,GACjC,GAAI3Q,GAAI2Q,GAAQA,EAAK40B,MAAQ50B,EAAK40B,MAAQ,QAC1C,IAAIC,KAAaA,GAAOxlC,GAAKulC,CAC7B,QAASE,YAAazlC,GAAI0lC,OAAQF,GAGnC,QAASG,IAAcC,EAAK9kC,EAAM6P,GACjC,GAAI7J,GAAI6J,KACR,IAAIk1B,GAAQD,EAAM7hC,MAAMgF,QAAQ68B,GAAO9+B,EAAE++B,KACzC,IAAGn+B,GAAS,MAAQm+B,GAAS,KAAMA,EAAQn+B,CAC3C,IAAIo+B,GAAKF,IAAQC,QACjB,IAAIE,GAAK,EAAGC,EAAK,CACjB,IAAGF,GAAMh/B,EAAEm/B,QAAU,KAAM,CAC1B,SAAUn/B,GAAEm/B,QAAU,SAAUF,EAAKj/B,EAAEm/B,WAClC,CACJ,GAAIC,SAAiBp/B,GAAEm/B,QAAU,SAAW1B,GAAYz9B,EAAEm/B,QAAUn/B,EAAEm/B,MACtEF,GAAKG,EAAQnxB,CAAGixB,GAAKE,EAAQzkC,EAE9B,IAAIqkC,EAAG,QAASA,EAAG,QAAU,QAE9B,GAAIvC,IAAU7gC,GAAIjB,EAAE,IAAUsT,EAAE,KAAW7X,GAAIuE,EAAE,EAAGsT,EAAE,GACtD,IAAG+wB,EAAG,QAAS,CACd,GAAIK,GAASnB,GAAkBc,EAAG,QAClCvC,GAAM7gC,EAAEjB,EAAI0kC,EAAOzjC,EAAEjB,CACrB8hC,GAAM7gC,EAAEqS,EAAIoxB,EAAOzjC,EAAEqS,CACrBwuB,GAAMrmC,EAAEuE,EAAI8I,KAAKmM,IAAI6sB,EAAMrmC,EAAEuE,EAAG0kC,EAAOjpC,EAAEuE,EACzC8hC,GAAMrmC,EAAE6X,EAAIxK,KAAKmM,IAAI6sB,EAAMrmC,EAAE6X,EAAGoxB,EAAOjpC,EAAE6X,EACzC,IAAGgxB,IAAO,EAAGxC,EAAMrmC,EAAE6X,EAAIgxB,EAAKI,EAAOjpC,EAAE6X,EAAI,EAE5C,IAAI,GAAI0H,GAAI,EAAGA,GAAK3b,EAAK1D,SAAUqf,EAAG,CACrC,IAAI3b,EAAK2b,GAAI,QACb,KAAI1Y,MAAMgF,QAAQjI,EAAK2b,IAAK,KAAM,IAAIxe,OAAM,0CAC5C,KAAI,GAAIsF,GAAI,EAAGA,GAAKzC,EAAK2b,GAAGrf,SAAUmG,EAAG,CACxC,SAAUzC,GAAK2b,GAAGlZ,KAAO,YAAa,QACtC,IAAI2/B,IAASj5B,EAAGnJ,EAAK2b,GAAGlZ,GACxB,IAAI6iC,GAAML,EAAKtpB,EAAG4pB,EAAML,EAAKziC,CAC7B,IAAGggC,EAAM7gC,EAAEqS,EAAIqxB,EAAK7C,EAAM7gC,EAAEqS,EAAIqxB,CAChC,IAAG7C,EAAM7gC,EAAEjB,EAAI4kC,EAAK9C,EAAM7gC,EAAEjB,EAAI4kC,CAChC,IAAG9C,EAAMrmC,EAAE6X,EAAIqxB,EAAK7C,EAAMrmC,EAAE6X,EAAIqxB,CAChC,IAAG7C,EAAMrmC,EAAEuE,EAAI4kC,EAAK9C,EAAMrmC,EAAEuE,EAAI4kC,CAChC,IAAGvlC,EAAK2b,GAAGlZ,UAAazC,GAAK2b,GAAGlZ,KAAO,WAAaQ,MAAMgF,QAAQjI,EAAK2b,GAAGlZ,OAASzC,EAAK2b,GAAGlZ,YAAckO,OAAOyxB,EAAOpiC,EAAK2b,GAAGlZ,OAC1H,CACJ,GAAGQ,MAAMgF,QAAQm6B,EAAKj5B,GAAI,CAAEi5B,EAAKrhC,EAAIf,EAAK2b,GAAGlZ,GAAG,EAAI2/B,GAAKj5B,EAAIi5B,EAAKj5B,EAAE,GACpE,GAAGi5B,EAAKj5B,IAAM,KAAM,CACnB,GAAGi5B,EAAKrhC,EAAGqhC,EAAKh5B,EAAI,QACf,IAAGpD,EAAEw/B,UAAW,CAAEpD,EAAKh5B,EAAI,GAAKg5B,GAAKj5B,EAAI,MACzC,KAAInD,EAAEy/B,WAAY,aAClBrD,GAAKh5B,EAAI,QAEV,UAAUg5B,GAAKj5B,IAAM,SAAUi5B,EAAKh5B,EAAI,QACxC,UAAUg5B,GAAKj5B,IAAM,UAAWi5B,EAAKh5B,EAAI,QACzC,IAAGg5B,EAAKj5B,YAAawH,MAAM,CAC/ByxB,EAAKvJ,EAAI7yB,EAAE+R,QAAU5N,EAAU,GAC/B,IAAGnE,EAAE0/B,UAAW,CAAEtD,EAAKh5B,EAAI,GAAKg5B,GAAKjiC,EAAIoS,GAAW6vB,EAAKvJ,EAAGlG,GAAQyP,EAAKj5B,EAAGnD,EAAE0K,eACzE,CAAE0xB,EAAKh5B,EAAI,GAAKg5B,GAAKj5B,EAAIwpB,GAAQyP,EAAKj5B,EAAGnD,EAAE0K,SAAW0xB,GAAKjiC,EAAIoS,GAAW6vB,EAAKvJ,EAAGuJ,EAAKj5B,QAExFi5B,GAAKh5B,EAAI,IAEf,GAAG27B,EAAO,CACT,IAAIC,EAAGM,GAAMN,EAAGM,KAChB,IAAGN,EAAGM,GAAKC,IAAQP,EAAGM,GAAKC,GAAK1M,EAAGuJ,EAAKvJ,EAAImM,EAAGM,GAAKC,GAAK1M,CACzDmM,GAAGM,GAAKC,GAAOnD,MACT,CACN,GAAIuD,GAAWhD,IAAchiC,EAAE4kC,EAAItxB,EAAEqxB,GACrC,IAAGN,EAAGW,IAAaX,EAAGW,GAAU9M,EAAGuJ,EAAKvJ,EAAImM,EAAGW,GAAU9M,CACzDmM,GAAGW,GAAYvD,IAIlB,GAAGK,EAAM7gC,EAAEjB,EAAI,IAAUqkC,EAAG,QAAUrB,GAAalB,EACnD,OAAOuC,GAER,QAASY,IAAa5lC,EAAM6P,GAAQ,MAAOg1B,IAAc,KAAM7kC,EAAM6P,GAErE,QAASg2B,IAAc7lC,GACtB,MAAOA,GAAKwc,WAAW,EAAG,KAE3B,QAASspB,IAAexnC,EAAG0H,GAC1B,IAAKA,EAAGA,EAAIib,GAAQ,EACpBjb,GAAEqW,YAAY,EAAG/d,EACjB,OAAO0H,GAIR,QAAS+/B,IAAmB/lC,GAC3B,GAAIgmC,GAAgBhmC,EAAKwc,WAAW,EACpC,OAAOwpB,KAAkB,EAAI,GAAKhmC,EAAKwc,WAAWwpB,EAAe,QAElE,QAASC,IAAmBjmC,EAAMgG,GACjC,GAAIkgC,GAAQ,KAAO,IAAIlgC,GAAK,KAAM,CAAEkgC,EAAQ,IAAMlgC,GAAIib,GAAQ,EAAI,EAAIjhB,EAAK1D,QAC3E0J,EAAEqW,YAAY,EAAGrc,EAAK1D,OACtB,IAAI0D,EAAK1D,OAAS,EAAG0J,EAAEqW,YAAY,EAAGrc,EAAM,OAC5C,OAAOkmC,GAAQlgC,EAAE3F,MAAM,EAAG2F,EAAEpC,GAAKoC,EAUlC,QAASmgC,IAAanmC,GACrB,OAASomC,IAAKpmC,EAAKwc,WAAW,GAAI6pB,KAAMrmC,EAAKwc,WAAW,IAEzD,QAAS8pB,IAAaC,EAAKvgC,GAC1B,IAAKA,EAAGA,EAAIib,GAAQ,EACpBjb,GAAEqW,YAAY,EAAGkqB,EAAIH,KAAO,EAC5BpgC,GAAEqW,YAAY,EAAGkqB,EAAIF,MAAQ,EAC7B,OAAOrgC,GAIR,QAASwgC,IAAcxmC,EAAM1D,GAC5B,GAAIukB,GAAQ7gB,EAAK4D,CACjB,IAAIsZ,GAAQld,EAAKwc,WAAW,EAC5B,IAAIzH,GAAMgxB,GAAmB/lC,EAC7B,IAAIymC,KACJ,IAAI5N,IAAOzvB,EAAG2L,EAAKuS,EAAGvS,EACtB,KAAKmI,EAAQ,KAAO,EAAG,CAEtB,GAAIwpB,GAAe1mC,EAAKwc,WAAW,EACnC,KAAK,GAAIngB,GAAI,EAAGA,GAAKqqC,IAAgBrqC,EAAGoqC,EAAU5iC,KAAKsiC,GAAanmC,GACpE64B,GAAE5kB,EAAIwyB,MAEF5N,GAAE5kB,IAAOmyB,IAAK,EAAGC,KAAM,GAI5BrmC,GAAK4D,EAAIid,EAAQvkB,CACjB,OAAOu8B,GAER,QAAS8N,IAAc5xB,EAAK/O,GAE3B,GAAIkgC,GAAQ,KAAO,IAAIlgC,GAAK,KAAM,CAAEkgC,EAAQ,IAAMlgC,GAAIib,GAAQ,GAAK,EAAIlM,EAAI3L,EAAE9M,QAC7E0J,EAAEqW,YAAY,EAAG,EACjB4pB,IAAmBlxB,EAAI3L,EAAGpD,EAC1B,OAAOkgC,GAAQlgC,EAAE3F,MAAM,EAAG2F,EAAEpC,GAAKoC,EAGlC,GAAI4gC,IAAuBJ,EAC3B,SAASK,IAAqB9xB,EAAK/O,GAElC,GAAIkgC,GAAQ,KAAO,IAAIlgC,GAAK,KAAM,CAAEkgC,EAAQ,IAAMlgC,GAAIib,GAAQ,GAAK,EAAIlM,EAAI3L,EAAE9M,QAC7E0J,EAAEqW,YAAY,EAAG,EACjB4pB,IAAmBlxB,EAAI3L,EAAGpD,EAC1BA,GAAEqW,YAAY,EAAG,EACjBiqB,KAAeF,IAAK,EAAGC,KAAM,GAAKrgC,EAClC,OAAOkgC,GAAQlgC,EAAE3F,MAAM,EAAG2F,EAAEpC,GAAKoC,EAIlC,QAAS8gC,IAAe9mC,GACvB,GAAIujC,GAAMvjC,EAAKwc,WAAW,EAC1B,IAAIuqB,GAAY/mC,EAAKwc,WAAW,EAChCuqB,IAAa/mC,EAAKwc,WAAW,IAAM,EACnCxc,GAAK4D,GACL,QAASjD,EAAG4iC,EAAKwD,UAAWA,GAE7B,QAASC,IAAe5E,EAAMp8B,GAC7B,GAAIA,GAAK,KAAMA,EAAIib,GAAQ,EAC3Bjb,GAAEqW,aAAa,EAAG+lB,EAAKzhC,EACvBqF,GAAEqW,YAAY,EAAG+lB,EAAK2E,WAAa3E,EAAKxgC,EACxCoE,GAAEqW,YAAY,EAAG,EACjB,OAAOrW,GAIR,QAASihC,IAAoBjnC,GAC5B,GAAI+mC,GAAY/mC,EAAKwc,WAAW,EAChCuqB,IAAa/mC,EAAKwc,WAAW,IAAK,EAClCxc,GAAK4D,GACL,QAASjD,GAAG,EAAGomC,UAAWA,GAE3B,QAASG,IAAoB9E,EAAMp8B,GAClC,GAAGA,GAAK,KAAMA,EAAIib,GAAQ,EAC1Bjb,GAAEqW,YAAY,EAAG+lB,EAAK2E,WAAa3E,EAAKxgC,EACxCoE,GAAEqW,YAAY,EAAG,EACjB,OAAOrW,GAIR,GAAImhC,IAAqBpB,EACzB,IAAIqB,IAAqBnB,EAGzB,SAASoB,IAA2BrnC,GACnC,GAAIgmC,GAAgBhmC,EAAKwc,WAAW,EACpC,OAAOwpB,KAAkB,GAAKA,IAAkB,WAAa,GAAKhmC,EAAKwc,WAAWwpB,EAAe,QAElG,QAASsB,IAA2BtnC,EAAMgG,GACzC,GAAIkgC,GAAQ,KAAO,IAAIlgC,GAAK,KAAM,CAAEkgC,EAAQ,IAAMlgC,GAAIib,GAAQ,KAC9Djb,EAAEqW,YAAY,EAAGrc,EAAK1D,OAAS,EAAI0D,EAAK1D,OAAS,WACjD,IAAI0D,EAAK1D,OAAS,EAAG0J,EAAEqW,YAAY,EAAGrc,EAAM,OAC5C,OAAOkmC,GAAQlgC,EAAE3F,MAAM,EAAG2F,EAAEpC,GAAKoC,EAIlC,GAAIuhC,IAAyBxB,EAI7B,IAAIyB,IAAcH,EAClB,IAAII,IAAcH,EAIlB,SAASI,IAAe1nC,GACvB,GAAIknB,GAAIlnB,EAAKK,MAAML,EAAK4D,EAAG5D,EAAK4D,EAAI,EACpC,IAAI+jC,GAASzgB,EAAE,GAAK,EAAI0gB,EAAQ1gB,EAAE,GAAK,CACvClnB,GAAK4D,GAAK,CACV,IAAIikC,GAAKD,IAAS,EAAIzI,IAAU,EAAG,EAAG,EAAG,EAAIjY,EAAE,GAAK,IAAOA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IAAK,GAAKlG,GAAckG,EAAG,IAAM,CAC1G,OAAOygB,GAASE,EAAK,IAAOA,EAE7B,QAASC,IAAe9nC,EAAMgG,GAC7B,GAAIA,GAAK,KAAMA,EAAIib,GAAQ,EAC3B,IAAI0mB,GAAQ,EAAGC,EAAO,EAAGG,EAAO/nC,EAAO,GACvC,IAAKA,IAASA,EAAO,IAAQA,KAAU,GAAK,KAASA,EAAQ,GAAK,GAAM,CAAE4nC,EAAO,MAC5E,IAAKG,IAASA,EAAO,IAAQA,KAAU,GAAK,KAASA,EAAQ,GAAK,GAAM,CAAEH,EAAO,CAAGD,GAAQ,EACjG,GAAIC,EAAM5hC,EAAEqW,aAAa,IAAKsrB,EAAQI,EAAO/nC,IAAS,IAAM2nC,EAAQ,QAC/D,MAAM,IAAIxqC,OAAM,wBAA0B6C,GAKhD,QAASgoC,IAAUhoC,GAClB,GAAIoiC,IAAUxgC,KAAOxF,KACrBgmC,GAAKxgC,EAAEqS,EAAIjU,EAAKwc,WAAW,EAC3B4lB,GAAKhmC,EAAE6X,EAAIjU,EAAKwc,WAAW,EAC3B4lB,GAAKxgC,EAAEjB,EAAIX,EAAKwc,WAAW,EAC3B4lB,GAAKhmC,EAAEuE,EAAIX,EAAKwc,WAAW,EAC3B,OAAO4lB,GAER,QAAS6F,IAAUh0B,EAAGjO,GACrB,IAAKA,EAAGA,EAAIib,GAAQ,GACpBjb,GAAEqW,YAAY,EAAGpI,EAAErS,EAAEqS,EACrBjO,GAAEqW,YAAY,EAAGpI,EAAE7X,EAAE6X,EACrBjO,GAAEqW,YAAY,EAAGpI,EAAErS,EAAEjB,EACrBqF,GAAEqW,YAAY,EAAGpI,EAAE7X,EAAEuE,EACrB,OAAOqF,GAIR,GAAIkiC,IAAqBF,EACzB,IAAIG,IAAqBF,EAwBzB,SAASG,IAAWpoC,GACnB,GAAGA,EAAK1D,OAAS0D,EAAK4D,EAAI,EAAG,KAAM,2BACnC,OAAO5D,GAAKwc,WAAW,EAAG,KAE3B,QAAS6rB,IAAWroC,EAAMgG,GAAK,OAAQA,GAAKib,GAAQ,IAAI5E,YAAY,EAAGrc,EAAM,KAG7E,QAASsoC,IAAetoC,GACvB,GAAIE,KACJ,IAAIhE,GAAI8D,EAAKwc,WAAW,EAGxB,IAAI+rB,GAAarsC,IAAM,CAEvB,IAAIssC,GAAQxoC,EAAKwc,WAAW,EAC5B,IAAIisB,GAAMzoC,EAAKwc,WAAW,EAAG,IAC7B,IAAIksB,GAAK1oC,EAAKwc,WAAW,EACzB,IAAImsB,GAAK3oC,EAAKwc,WAAW,EACzB,IAAIosB,GAAK5oC,EAAKwc,WAAW,EACzBxc,GAAK4D,GAEL,QAAQ2kC,GACP,IAAK,GAAGroC,EAAI2oC,KAAO,CAAG,OACtB,IAAK,GACJ3oC,EAAIsoC,MAAQA,CACZ,IAAIM,GAAMC,GAAOP,EAEjB,IAAIM,EAAK5oC,EAAI8oC,IAAMC,GAAQH,EAC3B,OACD,IAAK,GAEJ5oC,EAAI8oC,IAAMC,IAASP,EAAIC,EAAIC,GAC3B,OACD,IAAK,GAAG1oC,EAAIgpC,MAAQV,CAAO,QAE5B,GAAIC,GAAO,EAAGvoC,EAAIipC,KAAOV,EAAM,EAAIA,EAAM,MAAQA,EAAM,KAEvD,OAAOvoC,GAER,QAASkpC,IAAepnB,EAAOhc,GAC9B,IAAKA,EAAGA,EAAIib,GAAQ,EACpB,KAAKe,GAASA,EAAM6mB,KAAM,CAAE7iC,EAAEqW,YAAY,EAAG,EAAIrW,GAAEqW,YAAY,EAAG,EAAI,OAAOrW,GAC7E,GAAIgc,EAAMwmB,OAAS,KAAM,CACxBxiC,EAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG2F,EAAMwmB,WACjB,IAAIxmB,EAAMknB,OAAS,KAAM,CAC/BljC,EAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG2F,EAAMknB,WACjB,CACNljC,EAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,GAElB,GAAIosB,GAAMzmB,EAAMmnB,MAAQ,CACxB,IAAIV,EAAM,EAAGA,GAAO,UACf,IAAIA,EAAM,EAAGA,GAAO,KACzBziC,GAAEqW,YAAY,EAAGosB,EACjB,KAAKzmB,EAAMgnB,KAAOhnB,EAAMknB,OAAS,KAAM,CACtCljC,EAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,EACjBrW,GAAEqW,YAAY,EAAG,OACX,CACN,GAAI2sB,GAAOhnB,EAAMgnB,KAAO,QACxB,UAAWA,IAAO,SAAUA,GAAO,SAAWA,EAAI1oC,SAAS,KAAKD,OAAO,EACvE2F,GAAEqW,YAAY,EAAGhI,SAAS20B,EAAI3oC,MAAM,EAAG,GAAI,IAC3C2F,GAAEqW,YAAY,EAAGhI,SAAS20B,EAAI3oC,MAAM,EAAG,GAAI,IAC3C2F,GAAEqW,YAAY,EAAGhI,SAAS20B,EAAI3oC,MAAM,EAAG,GAAI,IAC3C2F,GAAEqW,YAAY,EAAG,KAElB,MAAOrW,GAIR,QAASqjC,IAAgBrpC,GACxB,GAAI9D,GAAI8D,EAAKwc,WAAW,EACxBxc,GAAK4D,GACL,IAAI1D,IACHopC,MAAOptC,EAAI,EACXqtC,QAASrtC,EAAI,EACbstC,WAAYttC,EAAI,EAChButC,WAAYvtC,EAAI,EAChBwtC,SAAUxtC,EAAI,GACdytC,QAASztC,EAAI,GACb0tC,UAAW1tC,EAAI,GACf2tC,QAAS3tC,EAAI,IAEd,OAAOgE,GAER,QAAS4pC,IAAgBC,EAAM/jC,GAC9B,IAAKA,EAAGA,EAAIib,GAAQ,EACpB,IAAI+oB,IACFD,EAAKE,OAAS,EAAO,IACrBF,EAAKG,OAAS,EAAO,IACrBH,EAAKI,QAAU,GAAO,IACtBJ,EAAKK,OAAS,GAAO,IACrBL,EAAKM,SAAW,GAAO,IACvBN,EAAKO,OAAS,IAAO,EACvBtkC,GAAEqW,YAAY,EAAG2tB,EACjBhkC,GAAEqW,YAAY,EAAG,EACjB,OAAOrW,GAIR,QAASukC,IAA8BvkC,EAAG7F,GAEzC,GAAIqqC,IAAY/lC,EAAG,SAAU2F,EAAG,eAAgB8B,EAAG,MAAOvB,GAAI,cAC9D,IAAI2F,GAAItK,EAAEwW,WAAW,EACrB,QAAQlM,GACP,IAAK,GAAY,MAAO,GACxB,IAAK,aAAY,IAAK,YAAY,MAAOk6B,GAAQxkC,EAAEwW,WAAW,KAAO,IAEtE,GAAIlM,EAAI,IAAO,KAAM,IAAInT,OAAM,0BAA4BmT,EAAEhQ,SAAS,IACtE0F,GAAEpC,GAAK,CACP,OAAOoC,GAAEwW,WAAW,EAAGrc,GAAK,EAAI,QAAU,UAE3C,QAASsqC,IAAkCzkC,GAAK,MAAOukC,IAA8BvkC,EAAG,GACxF,QAAS0kC,IAAqC1kC,GAAK,MAAOukC,IAA8BvkC,EAAG,GAM3F,GAAI2kC,IAAc,CAClB,IAAIC,IAAc,CAOlB,IAAIC,IAAc,EAClB,IAAIC,IAAc,EAKlB,IAAIC,IAAc,EAOlB,IAAIC,IAAc,EAClB,IAAIC,IAAc,EAMlB,IAAIC,IAAc,EAIlB,IAAIC,IAAoB,IACxB,IAAIC,IAAoB,IAGxB,IAAIC,IAAc,EAClB,IAAIC,IAAc,EAClB,IAAIC,KAAeF,GAAWC,GAG9B,IAAIE,KACJhnC,GAAQtF,EAAG,WAAYkK,EAAGuhC,IAC1BlmC,GAAQvF,EAAG,WAAYkK,EAAGiiC,IAC1BjhC,GAAQlL,EAAG,qBAAsBkK,EAAGiiC,IACpChhC,GAAQnL,EAAG,YAAakK,EAAGwhC,IAC3B7+B,GAAQ7M,EAAG,YAAakK,EAAGwhC,IAC3B5+B,GAAQ9M,EAAG,iBAAkBkK,EAAGwhC,IAChC3+B,GAAQ/M,EAAG,aAAckK,EAAGwhC,IAC5B1+B,GAAQhN,EAAG,YAAakK,EAAGwhC,IAC3BtgC,GAAQpL,EAAG,cAAekK,EAAGwhC,IAC7BrgC,IAAQrL,EAAG,sBAAuBkK,EAAGwhC,IACrCpgC,IAAQtL,EAAG,YAAakK,EAAGyhC,IAC3BpgC,IAAQvL,EAAG,eAAgBkK,EAAG+hC,IAC9BzgC,IAAQxL,EAAG,gBAAiBkK,EAAGgiC,IAC/BzgC,IAAQzL,EAAG,UAAWkK,EAAGiiC,IACzBzgC,IAAQ1L,EAAG,UAAWkK,EAAGiiC,IACzBxgC,IAAQ3L,EAAG,gBAAiBkK,EAAGyhC,IAC/B//B,IAAQ5L,EAAG,iBAAkBkK,EAAGwhC,IAChC5/B,IAAQ9L,EAAG,YAAakK,EAAGyhC,IAC3B1/B,IAAQjM,EAAG,oBAAqBkK,EAAGyhC,IACnC1+B,IAAQjN,EAAG,aAAckK,EAAGwhC,GAAO9uB,EAAG,WACtC1P,IAAQlN,EAAG,SAAUkK,EAAG6hC,IACxB3+B,IAAQpN,EAAG,cAAekK,EAAGiiC,IAC7B9+B,IAAQrN,EAAG,gBAAiBkK,EAAGiiC,IAC/B7+B,IAAQtN,EAAG,WAAYkK,EAAGiiC,IAC1B5+B,IAAQvN,EAAG,UAAWkK,EAAGiiC,IACzB5lC,OAEAgmC,YAAcvsC,EAAG,SAAUkK,EAAG2hC,IAC9BW,YAAcxsC,EAAG,WAAYkK,EAAG2hC,IAChCY,cAIA,IAAIC,KACJpnC,GAAQtF,EAAG,WAAYkK,EAAGuhC,IAC1BlmC,GAAQvF,EAAG,QAASkK,EAAGiiC,IACvBjhC,GAAQlL,EAAG,UAAWkK,EAAGiiC,IACzBhhC,GAAQnL,EAAG,SAAUkK,EAAGiiC,IACxBt/B,GAAQ7M,EAAG,WAAYkK,EAAGiiC,IAC1Br/B,GAAQ9M,EAAG,WAAYkK,EAAGiiC,IAC1Bp/B,GAAQ/M,EAAG,WAAYkK,EAAGiiC,IAC1Bn/B,GAAQhN,EAAG,aAAckK,EAAGiiC,IAC5B/gC,GAAQpL,EAAG,YAAakK,EAAGiiC,IAC3B9gC,IAAQrL,EAAG,WAAYkK,EAAG4hC,IAC1BxgC,IAAQtL,EAAG,cAAekK,EAAG4hC,IAC7BvgC,IAAQvL,EAAG,cAAekK,EAAG4hC,IAC7BtgC,IAAQxL,EAAG,eAAgBkK,EAAG4hC,IAC9BrgC,IAAQzL,EAAG,YAAakK,EAAGwhC,IAC3BhgC,IAAQ1L,EAAG,YAAakK,EAAGwhC,IAC3B//B,IAAQ3L,EAAG,YAAakK,EAAGwhC,IAC3B9/B,IAAQ5L,EAAG,YAAakK,EAAG8hC,IAC3BngC,IAAQ7L,EAAG,cAAekK,EAAGiiC,IAC7BrgC,IAAQ9L,EAAG,cAAekK,EAAGwhC,IAC7BnlC,OAEAgmC,YAAcvsC,EAAG,SAAUkK,EAAG2hC,IAC9BW,YAAcxsC,EAAG,WAAYkK,EAAG2hC,IAChCY,cAIA,IAAIE,KACJrnC,EAAQ,KACRC,EAAQ,KACR2F,EAAQ,GACR6B,EAAQ,KACRhB,GAAQ,KACRyB,GAAQ,KACRC,GAAQ,KACRmM,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRE,GAAQ,KACR5N,GAAQ,KACRqD,GAAQ,KACRE,GAAQ,KACRC,GAAQ,KACRtD,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRkB,GAAQ,KACRG,GAAQ,KACRK,GAAQ,KACRkB,GAAQ,KACRE,GAAQ,KACRN,GAAQ,KACRC,GAAQ,KACRy9B,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,MAAQ,KAIR,IAAIC,KACH,KACA,QACA,aACA,WACA,YACA,iBACA,eACA,WACA,SACA,WACA,cACA,kBACA,gBACA,YACA,UACA,YACA,eACA,UACA,WAGD,SAASC,IAAO7Z,GAAO,MAAOA,GAAIlyB,IAAI,SAASjD,GAAK,OAASA,GAAG,GAAI,IAAKA,GAAG,EAAG,IAAIA,EAAE,OAIrF,GAAIivC,IAAWD,IAEd,EACA,SACA,SACA,MACA,IACA,SACA,SACA,MAGA,EACA,SACA,SACA,MACA,IACA,SACA,SACA,MAEA,QACA,MACA,IACA,QACA,QACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,MACA,SAEA,IACA,SACA,SACA,MACA,QACA,QACA,MACA,IACA,MACA,SACA,SACA,SACA,SACA,SACA,SACA,SAEA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,QACA,SACA,SACA,QACA,QAGA,EACA,SACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAED,IAAIvE,IAASxT,GAAIgY,GAGjB,IAAIhJ,KACJhgC,EAAM,SACN0H,EAAM,UACNrB,GAAM,UACNuB,GAAM,QACNM,GAAM,SACNyM,GAAM,QACNtK,GAAM,OACNC,GAAM,gBACNpJ,IAAM,QAGN,IAAI+nC,KACHC,SAAiB,EACjBC,UAAiB,EACjBC,UAAiB,GACjBC,QAAiB,GACjBC,SAAiB,GACjBC,QAAiB,GACjBC,OAAiB,GACjBC,gBAAiB,GACjBC,QAAiB,IAGlB,IAAIC,KACH,yBACA,kBACA,mBACA,gBACA,iBACA,iBACA,mBACA,qBACA,iBACA,kBACA,sBACA,wBACA,oBACA,wBAOD,IAAIC,KAEHC,6EAA8E,YAC9EC,uDAAwD,YACxDC,0DAA2D,YAC3DC,uDAAwD,YACxDC,gFAAiF,YAGjFC,4EAA6E,SAC7EC,qCAAsC,SACtCC,sCAAuC,OAGvCC,6EAA8E,SAC9EC,sC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ACAC,KAAyC3nE,EAAEuhD,IAC3Co+C,OACAC,OACAC,KAAyB7/F,EAAEwzD,IAC3BvvD,KAA2BjE,EAAEkzD,IAC7B0U,OACAC,OACAC,OACA1jE,OACAC,OACA27F,OACAC,OACAC,OACAn4B,OACAC,OACA8qB,KAA2B9yF,EAAE0rD,IAC7BqnC,KAA8B/yF,EAAE6rD,IAChCqnC,KAAyBlzF,EAAEmhD,IAC3BkyC,OACAC,OACAC,OACA59B,OACAC,OACAC,KAA4B71D,EAAEs/C,IAC9BwW,OACAvxD,OACA6jE,OACAC,OACAC,OACAC,OACAirB,OACAC,OACAC,OACAvoD,OACA0oD,OACAzoD,OACA0oD,OACAzoD,KAA8BrrC,EAAEuhD,IAChCyyC,OACAoM,KAAqCpgG,EAAEs/C,IACvC96C,OACA0vF,KAAwBl0F,EAAE8tD,IAC1BqmC,KAAkCn0F,EAAE+mD,IACpCqtC,KAAkCp0F,EAAEmhD,IACpCkzC,OACAE,KAAgCv0F,EAAEmxD,IAClCqvC,OACAE,OACAC,OACAC,OACAC,OACArM,OACAsM,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACA1M,OACAE,OACAC,KAAyB70F,EAAE4nD,IAC3BktC,KAA8B90F,EAAE0qD,IAChChmD,KAA4B1E,EAAEioD,IAC9BugB,OACAC,OACAutB,OACAe,OACAC,OACAG,OACA8K,KAA6BjiG,EAAEyhD,IAC/B41C,OACAC,OACAC,OACAO,OACAuK,OACAmlB,OACAjlB,OACAC,OACAzK,OACA0K,OACAzK,OACAC,OACAyK,OACAp3D,OACAgtD,KAA8Bt4F,EAAEs/C,IAChC2jD,KAAyBjjG,EAAEmhD,IAC3B8iD,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACA9J,OACAoK,OACAC,OACAC,OACAC,OACAtK,KAA6B36F,EAAE2uD,IAC/BisC,KAA8B56F,EAAEs/C,IAChCu7C,OACAC,OACAC,OACAG,OACAC,KAAyBn7F,EAAE2xD,IAC3BypC,KAAgCp7F,EAAEs/C,IAClC+7C,KAA2Br7F,EAAEgyD,IAC7BspC,OACAC,KAA8Bv7F,EAAE0iD,IAChC84C,OACAC,KAAkCz7F,EAAEuhD,IACpCm6C,OACAC,OACAE,KAAgC77F,EAAEmhD,IAClC26C,KAA8B97F,EAAE0oD,GAAgBx1C,EAAE,GAClD6oF,KAA6B/7F,EAAEmhD,IAC/BsoB,KAAgCzpE,EAAEqrD,IAClCse,KAA2B3pE,EAAEuzD,IAC7Bo1D,KAA4B3oH,EAAEuuD,IAC9Bqb,KAA2B5pE,EAAE8qD,IAC7B+e,KAA6B7pE,EAAEquD,IAC/BmwC,KAA4Bx+F,EAAEyzD,IAC9BgrC,KAAyBz+F,EAAEooD,IAC3Bw2C,OACAC,KAA2B7+F,EAAEywD,IAC7BwuC,KAAsCj/F,EAAE2oD,IACxCmiE,OACAK,KAA6BnrH,EAAEkqD,IAC/B0kE,KAAwB5uH,EAAEurD,IAC1Bif,OACAknD,QACAM,MAA4BhyH,EAAEirD,IAC9B2oE,QACAkM,MAA6B9/H,EAAEqwD,IAC/Bmb,MAAkCxrE,EAAEoyD,IACpCqZ,QACA2tD,QACAC,QACA3tD,QACA4tD,QACAC,QACAC,QACAC,QACAC,MAAyB15H,EAAE2mD,IAC3BgzE,QACAoG,QACAnG,QACAoG,QACAC,QACAC,QACAC,QACAC,QACAvG,QACA4D,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAkC,QACAC,MAA6BptH,EAAE,IAC/BqtH,QACAC,QACAC,QACAC,MAA6B1gI,EAAEmhD,IAC/Bw/E,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA2BzhI,EAAE4yD,GAAa1/C,EAAE,IAC5CwuH,MAA2B1hI,EAAEs+E,GAAaprE,EAAE,IAC5CyuH,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8BriI,EAAEs/C,GAAWpsC,EAAE,IAC7CovH,QACAC,MAAiCrvH,EAAE,IACnCsvH,QACAC,QACAC,QACAC,QACAC,MAA6B5iI,EAAEiwD,GAAe/8C,EAAE,IAChD2vH,QACAC,MAA2B9iI,EAAE09E,GAAaxqE,EAAE,IAC5C6vH,QACAC,QACAC,QACAC,MAAiCljI,EAAE2wD,GAAmBz9C,EAAE,IACxDiwH,MAAsCnjI,EAAEmhD,IACxCiiF,QACAC,QACAC,QACAC,QACAC,MAA0CxjI,EAAEwoD,IAC5Ci7E,QACAC,QACAC,QACAC,QACAlF,QACAmF,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA2BvlI,EAAEuhD,IAC7BikF,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8BrmI,EAAEozD,IAChCkzE,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAAgChnI,EAAEyyD,IAClCw0E,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QAEAnkI,GAAgCxD,EAAEqrD,IAClC5nD,KACAC,GAA8B1D,EAAEk0D,IAChC7qD,GAA8BrJ,EAAE8zD,IAChCxqD,GAA8BtJ,EAAE6zD,IAChC7oD,GAA6BhL,EAAEquD,IAC/BnjD,GAA4BlL,EAAEo0D,IAC9BjpD,KACA5B,GAAyBvJ,EAAE2mD,IAC3Bl9C,MACAW,IAAiCpK,EAAEuhD,IACnC51C,IAAiC3L,EAAEorD,IACnCx/C,MACAmM,MACAC,IAA2BhY,EAAEywD,IAC7Bt4C,MACA9N,IAAsCrK,EAAE2oD,IAKxC98C,IAAmC7L,EAAEq0D,IAQrC7nD,MAcAT,MACAU,MACAC,IAAkC1M,EAAEuhD,IACpC58C,MACAqmC,MACAuqB,OACA+7B,KAA4BtxF,EAAE0zD,IAC9ByC,OACAnyD,OACA0tF,OAKAM,OAEAE,OACAC,OACA38B,OAIAi9B,OACAE,OACAzqB,OACA8qB,OACAC,OACAE,OACAhrB,OACAyrB,KAA6B5zF,EAAEs0D,IAC/B2/B,OACAwM,OACAl1D,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","file":"dist/xlsx.full.min.js"} \ No newline at end of file +{"version":3,"sources":["misc/suppress_export.js","dist/cpexcel.js","dist/xlsx.js"],"names":["DO_NOT_EXPORT_CODEPAGE","cptable","version","d","D","e","i","length","charCodeAt","charAt","enc","dec","j","split","module","exports","root","factory","require","cpt","Error","this","magic","1200","1201","12000","12001","16969","20127","65000","65001","sbcs_cache","dbcs_cache","magic_cache","magic_decode","magic_encode","cpdcache","cpecache","sfcc","x","String","fromCharCode","cca","has_buf","Buffer","Buffer_from","nbfs","from","buf","bind","allocUnsafe","n","mdl","mdb","make_EE","E","EE","keys","Object","len","ee","sbcs_encode","make_sbcs_encode","cp","sbcs_e","data","ofmt","out","w","isBuffer","slice","toString","call","sbcs_decode","make_sbcs_decode","DD","c","sbcs_d","dbcs_encode","make_dbcs_encode","f","dbcs_e","jj","k","dbcs_decode","make_dbcs_decode","dbcs_d","utf8_d","map","ww","utf8_e","direct","encache","s","null_enc","cp_decache","decache","forEach","last_enc","last_cp","cache","sbcs","dbcs","BM","SetD","encode","C","M","isstr","indexOf","tt","join","decode","F","Array","match","dash","o64","c1","c2","c3","e1","e2","e3","e4","l","push","hascp","utils","XLSX","make_xlsx_lib","current_codepage","current_ansi","$cptable","VALID_ANSI","CS2CP","0","1","2","77","128","129","130","134","136","161","162","163","177","178","186","204","222","238","255","69","set_ansi","reset_ansi","set_cp","reset_cp","char_codes","o","utf16leread","utf16beread","debom","_getchar","_gc1","_getansi","_ga1","set_cptable","_gc2","_ga2","cpdoit","DENSE","DIF_XL","Base64_map","Base64_encode","input","isNaN","Base64_encode_pass","Base64_decode","replace","undefined","node","buf_utf16le","new_raw_buf","alloc","Uint8Array","new_unsafe_buf","s2a","s2ab","ArrayBuffer","view","a2s","isArray","a2u","ab2a","bconcat","bufs","concat","maxlen","set","apply","utf8decode","content","widx","L","ridx","chr0","chr1","_strrev","pad0","v","t","fill","pad_","rpad_","pad0r1","Math","round","pad0r2","p2_32","pow","pad0r","SSF_isgeneral","days","months","SSF_init_table","table_fmt","3","4","9","10","11","12","13","14","15","16","17","18","19","20","21","22","37","38","39","40","45","46","47","48","49","56","SSF_default_map","5","6","7","8","23","24","25","26","27","28","29","30","31","50","51","52","53","54","55","57","58","59","60","61","62","67","68","70","71","72","73","74","75","76","78","79","80","81","82","SSF_default_str","63","64","65","66","41","42","43","44","SSF_frac","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","floor","q","SSF_parse_date_code","opts","b2","date","time","dow","dout","T","u","y","m","H","S","abs","date1904","Date","setDate","getDate","getFullYear","getMonth","getDay","SSF_fix_hijri","SSFbasedate","SSFdnthresh","getTime","SSFbase1904","datenum_local","epoch","getTimezoneOffset","SSF_strip_decimal","SSF_normalize_exp","SSF_small_exp","toFixed","toPrecision","toExponential","SSF_large_exp","SSF_general_num","V","log","LOG10E","substr","toUpperCase","SSF_general","SSF_format","SSF_write_date","type","fmt","val","ss0","ss","outl","outstr","commaify","pct1","write_num_pct","sfmt","mul","write_num","write_num_cm","idx","write_num_exp","period","fakee","$$","$1","$2","$3","frac1","write_num_f1","r","aval","sign","den","parseInt","rr","base","myn","myd","write_num_f2","dec1","closeparen","phone","hashq","str","cc","rnd","dd","_frac","carry","flr","write_num_flt","ffmt","ri","ff","oa","min","max","lres","rres","write_num_cm2","write_num_pct2","write_num_exp2","write_num_int","lastIndexOf","SSF_split_fmt","in_str","SSF_abstime","fmt_is_date","eval_fmt","flen","lst","dt","hr","toLowerCase","bt","ssm","nstr","vv","myv","ostr","decpt","lasti","retval","cfregex2","chkcond","thresh","parseFloat","choose_fmt","lat","m1","m2","dateNF","table","SSF_load","SSF_load_table","tbl","make_ssf","SSF","format","load","_table","load_table","parse_date_code","is_date","get_table","SSFImplicit","32","33","34","35","36","dateNFregex","dateNF_regex","RegExp","dateNF_fix","Y","datestr","timestr","bad_formats","d.m","SSF__load","CRC32","signed_crc_table","Int32Array","T0","slice_by_16_tables","subarray","TT","T1","T2","T3","T4","T5","T6","T7","T8","T9","Ta","Tb","Tc","Td","Te","Tf","crc32_bstr","bstr","seed","crc32_buf","crc32_str","CFB","_CFB","namecmp","R","Z","dirname","p","filename","write_dos_date","hms","getHours","getMinutes","getSeconds","write_shift","ymd","parse_dos_date","read_shift","setMilliseconds","setFullYear","setMonth","setHours","setMinutes","setSeconds","parse_extra_field","blob","prep_blob","flags","sz","tgt","mtime","atime","ctime","mt","sz1","sz2","usz","csz","fs","get_fs","_fs","parse","file","options","parse_zip","parse_mad","mver","ssz","nmfs","difat_sec_cnt","dir_start","minifat_start","difat_start","fat_addrs","mv","check_get_mver","header","check_shifts","dir_cnt","chk","sectors","sectorify","sleuth_fat","sector_list","make_sector_list","name","ENDOFCHAIN","files","Paths","FileIndex","FullPaths","read_directory","build_full_paths","shift","raw","HEADER_SIGNATURE","nsectors","ceil","FI","FP","pl","dad","get_mfat_entry","entry","payload","mini","start","size","MSSZ","__readInt32LE","new_buf","cnt","sector","get_sector_list","chkd","buf_chain","modulus","addr","nodes","__toBuffer","sl","seen","minifat_store","namelen","__utf16le","color","clsid","state","ct","read_date","storage","offset","__readUInt32LE","read_file","readFileSync","read","init_cfb","cfb","CLSID","seed_cfb","nm","find","rebuild_cfb","gc","_file","pop","now","fullPaths","create","HEADER_CLSID","sort","elt","_write","_opts","fileType","write_mad","write_zip","mini_size","fat_size","mini_cnt","mfat_cnt","fat_base","fat_cnt","difat_cnt","HEADER_SIG","chainit","consts","DIFSECT","FATSECT","_nm","console","error","copy","path","UCFullPaths","UCPaths","UCPath","MAXREGSECT","FREESECT","HEADER_MINOR_VERSION","MAXREGSID","NOSTREAM","EntryTypes","write_file","writeFileSync","write","_zlib","use_zlib","zlib","InflateRaw","InflRaw","_processChunk","_finishFlushFlag","bytesRead","message","_inflateRawSync","_inflate","_deflateRawSync","deflateRawSync","_deflate","CLEN_ORDER","LEN_LN","DST_LN","bit_swap_8","use_typed_arrays","bitswap8","bit_swap_n","b","rev","read_bits_2","bl","h","read_bits_3","read_bits_4","read_bits_5","read_bits_7","read_bits_n","write_bits_3","write_bits_1","write_bits_8","write_bits_16","realloc","a","zero_fill_array","build_tree","clens","cmap","MAX","ccode","bl_count","Uint16Array","ctree","cleni","fix_lmap","fix_dmap","dlens","_deflateRaw","_deflateRawIIFE","DST_LN_RE","LEN_LN_RE","write_stored","boff","write_huff_fixed","addrs","hash","mlen","len_eb","dst_eb","off","dyn_lmap","dyn_dmap","dyn_cmap","dyn_len_1","dyn_len_2","dyn","_HLIT","_HDIST","_HCLEN","next_code","hcodes","h1","h2","inflate","outbuf","woff","OL","max_len_1","max_len_2","bits","code","dst","warn_or_throw","wrn","msg","fcnt","start_cd","efsz","fcsz","EF","parse_local_file","meth","crc32","_csz","_usz","ef","cfb_add","unsafe","cdirs","method","compression","desc","fp","fi","crcs","sz_cd","namebuf","ContentTypeMap","htm","xml","gif","jpg","png","mso","thmx","sh33tj5","get_content_type","ctype","ext","write_base64_76","write_quoted_printable","text","encoded","si","end","tmp","parse_quoted_printable","di","line","oi","parse_mime","fname","cte","fdata","trim","row","test","mboundary","boundary","start_di","ca","cstr","dispcnt","csl","qp","cfb_new","fpath","cfb_gc","cfb_del","splice","cfb_mov","old_name","new_name","writeFile","ReadShift","CheckField","_inflateRaw","set_fs","blobify","write_dl","Deno","TextEncoder","utf8write","IE_SaveFile","Blob","navigator","msSaveBlob","saveAs","URL","document","createElement","createObjectURL","url","chrome","downloads","download","revokeObjectURL","setTimeout","href","body","appendChild","click","removeChild","$","File","Folder","open","encoding","close","read_binary","infile","ks","o2","prototype","hasOwnProperty","evert_key","obj","key","K","evert","evert_num","evert_arr","basedate","datenum","dnthresh","refdate","refoffset","numdate","setTime","parse_isodur","sec","good_pd_date_1","good_pd_date","good_pd","parseDate","fixdate","cc2str","arr","debomit","TextDecoder","€","‚","ƒ","„","…","†","‡","ˆ","‰","Š","‹","Œ","Ž","‘","’","“","”","•","–","—","˜","™","š","›","œ","ž","Ÿ","dup","JSON","stringify","fuzzynum","Number","isFinite","NaN","wt","FDRE1","fuzzytime1","lower_months","fuzzydate","lower","lnos","getYear","split_regex","safe_split_regex","re","def","getdatastr","asNodeBuffer","asBinary","_data","getContent","getdatabin","getdata","safegetzipfile","zip","g","getzipfile","getzipdata","safe","getzipstr","getzipbin","zipentries","zip_add_file","res","zip_new","zip_read","resolve_path","result","target","step","XML_HEADER","attregexg","tagregex1","tagregex2","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","skip_LC","z","eq","quot","strip_ns","encodings",""","'",">","<","&","rencoding","unescapexml","encregex","coderegex","raw_unescapexml","xlsx","decregex","charegex","escapexml","escapexmltag","htmlcharegex","escapehtml","escapexlml","xlml_fixstr","entregex","entrepl","xlml_unfixstr","parsexmlbool","value","utf8reada","orig","utf8readb","utf8readc","utf8corpus","utf8read","matchtag","mtcache","htmldecode","entities","vtregex","vt_cache","vt_regex","vtvregex","vtmregex","parseVector","matches","baseType","WTF","wtregex","writetag","wxt_helper","writextag","write_w3cdtf","toISOString","write_vt","xlml_normalize","xlmlregex","XMLNS","CORE_PROPS","CUST_PROPS","EXT_PROPS","CT","RELS","TCMNT","dc","dcterms","dcmitype","mx","sjs","vt","xsi","xsd","XMLNS_main","XLMLNS","html","read_double_le","Infinity","write_double_le","bs","av","LN2","___toBuffer","___utf16le","__readUInt16LE","___hexlify","__hexlify","___utf8","__readUInt8","__utf8","utf8_b","___lpstr","__lpstr","___cpstr","__cpstr","___lpwstr","__lpwstr","___lpp4","lpp4_","__lpp4","___8lpp4","__8lpp4","___double","__double","is_buf","is_buf_a","lpstr_b","readUInt32LE","cpstr_b","lpwstr_b","lpp4_b","lpp4_8b","double_","readDoubleLE","is_buf_b","__readInt16LE","__readInt32BE","oI","oR","oo","loc","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cpp","hexstr","fld","pos","parsenoop","recordhopper","cb","tmpbyte","cntbyte","RT","XLSBRecordEnum","buf_array","blksz","newblk","ba_newblk","curbuf","endbuf","ba_endbuf","next","ba_next","ba_end","ba_push","_bufs","write_record","ba","shift_cell_xls","cell","cRel","rRel","biff","shift_range_xls","range","encode_cell_xls","encode_cell","fix_col","fix_row","encode_range_xls","encode_col","encode_row","decode_row","rowstr","unfix_row","decode_col","colstr","unfix_col","col","split_cell","decode_cell","decode_range","encode_range","cs","ce","fix_range","a1","formula_quote_sheet_name","sname","safe_decode_range","safe_format_cell","XF","numFmtId","format_cell","BErr","sheet_to_workbook","sheet","sheets","SheetNames","Sheets","sheet_add_aoa","_ws","dense","ws","_R","_C","origin","_origin","_range","__R","__Rstr","__C","nullError","sheetStubs","cellDates","cell_ref","aoa_to_sheet","parse_Int32LE","write_UInt32LE","parse_XLWideString","cchCharacters","write_XLWideString","_null","parse_StrRun","ich","ifnt","write_StrRun","run","parse_RichStr","rgsStrRun","dwSizeStrRun","write_RichStr","parse_BrtCommentText","write_BrtCommentText","parse_XLSBCell","iStyleRef","write_XLSBCell","parse_XLSBShortCell","write_XLSBShortCell","parse_XLSBCodeName","write_XLSBCodeName","parse_XLNullableWideString","write_XLNullableWideString","parse_XLNameWideString","parse_RelID","write_RelID","parse_RkNumber","fX100","fInt","RK","write_RkNumber","d100","parse_RfX","write_RfX","parse_UncheckedRfX","write_UncheckedRfX","parse_Xnum","write_Xnum","parse_BrtColor","xColorType","index","nTS","bR","bG","bB","auto","icv","XLSIcv","rgb","rgb2Hex","theme","tint","write_BrtColor","parse_FontFlags","fBold","fItalic","fUnderline","fStrikeout","fOutline","fShadow","fCondense","fExtend","write_FontFlags","font","grbit","italic","strike","outline","shadow","condense","extend","parse_ClipboardFormatOrString","ClipFmt","parse_ClipboardFormatOrAnsiString","parse_ClipboardFormatOrUnicodeString","VT_I2","VT_I4","VT_BOOL","VT_VARIANT","VT_UI4","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR_VARIANT","VT_VECTOR_LPSTR","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","2147483648","2147483651","1919054434","SummaryPIDSI","CountryEnum","84","86","90","105","213","216","218","351","354","358","420","886","961","962","963","964","965","966","971","972","974","981","65535","XLSFillPattern","rgbify","_XLSIcv","RBErr","#NULL!","#DIV/0!","#VALUE!","#REF!","#NAME?","#NUM!","#N/A","#GETTING_DATA","#WTF?","XLSLblBuiltIn","ct2type","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml","application/vnd.ms-excel.sheet.macroEnabled.main+xml","application/vnd.ms-excel.sheet.binary.macroEnabled.main","application/vnd.ms-excel.addin.macroEnabled.main+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml","application/vnd.ms-excel.worksheet","application/vnd.ms-excel.binIndexWs","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml","application/vnd.ms-excel.chartsheet","application/vnd.ms-excel.macrosheet+xml","application/vnd.ms-excel.macrosheet","application/vnd.ms-excel.intlmacrosheet","application/vnd.ms-excel.binIndexMs","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml","application/vnd.ms-excel.dialogsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml","application/vnd.ms-excel.sharedStrings","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml","application/vnd.ms-excel.styles","application/vnd.openxmlformats-package.core-properties+xml","application/vnd.openxmlformats-officedocument.custom-properties+xml","application/vnd.openxmlformats-officedocument.extended-properties+xml","application/vnd.openxmlformats-officedocument.customXmlProperties+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml","application/vnd.ms-excel.comments","application/vnd.ms-excel.threadedcomments+xml","application/vnd.ms-excel.person+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml","application/vnd.ms-excel.sheetMetadata","application/vnd.ms-excel.pivotTable","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml","application/vnd.openxmlformats-officedocument.drawingml.chart+xml","application/vnd.ms-office.chartcolorstyle+xml","application/vnd.ms-office.chartstyle+xml","application/vnd.ms-office.chartex+xml","application/vnd.ms-excel.calcChain","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings","application/vnd.ms-office.activeX","application/vnd.ms-office.activeX+xml","application/vnd.ms-excel.attachedToolbars","application/vnd.ms-excel.connections","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml","application/vnd.ms-excel.externalLink","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml","application/vnd.ms-excel.pivotCacheDefinition","application/vnd.ms-excel.pivotCacheRecords","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml","application/vnd.ms-excel.queryTable","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml","application/vnd.ms-excel.userNames","application/vnd.ms-excel.revisionHeaders","application/vnd.ms-excel.revisionLog","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml","application/vnd.ms-excel.tableSingleCells","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml","application/vnd.ms-excel.slicer","application/vnd.ms-excel.slicerCache","application/vnd.ms-excel.slicer+xml","application/vnd.ms-excel.slicerCache+xml","application/vnd.ms-excel.wsSortMap","application/vnd.ms-excel.table","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml","application/vnd.openxmlformats-officedocument.theme+xml","application/vnd.openxmlformats-officedocument.themeOverride+xml","application/vnd.ms-excel.Timeline+xml","application/vnd.ms-excel.TimelineCache+xml","application/vnd.ms-office.vbaProject","application/vnd.ms-office.vbaProjectSignature","application/vnd.ms-office.volatileDependencies","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml","application/vnd.ms-excel.controlproperties+xml","application/vnd.openxmlformats-officedocument.model+data","application/vnd.ms-excel.Survey+xml","application/vnd.openxmlformats-officedocument.drawing+xml","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml","application/vnd.openxmlformats-officedocument.vmlDrawing","application/vnd.openxmlformats-package.relationships+xml","application/vnd.openxmlformats-officedocument.oleObject","image/png","CT_LIST","workbooks","xlsm","xlsb","xlam","xltx","strs","comments","charts","dialogs","macros","metadata","styles","new_ct","rels","threadedcomments","links","coreprops","extprops","custprops","themes","calcchains","vba","drawings","people","TODO","xmlns","parse_ct","ctext","Extension","ContentType","PartName","calcchain","sst","style","defaults","write_ct","type2ct","xmlns:xsd","xmlns:xsi","f1","bookType","f2","f3","WB","SHEET","HLINK","VML","XPATH","XMISS","XLINK","CXML","CXMLP","CMNT","SST","STY","THEME","CHART","CHARTEX","CS","WS","DS","MS","IMG","DRAW","XLMETA","PEOPLE","CONN","VBA","get_rels_path","parse_rels","currentFilePath","!id","rel","Type","Target","Id","TargetMode","canonictarget","write_rels","rid","add_rels","rId","relobj","targetmode","CT_ODS","parse_manifest","Rn","FEtag","exec","write_manifest","manifest","write_rdf_type","write_rdf_has","write_rdf","rdf","write_meta_ods","CORE_PROPS_REGEX","parse_core_props","cur","cp_doit","write_core_props","xmlns:cp","xmlns:dc","xmlns:dcterms","xmlns:dcmitype","Props","CreatedDate","xsi:type","ModifiedDate","PseudoPropsPairs","load_props_pairs","HP","TOP","props","hp","parts","Worksheets","NamedRanges","DefinedNames","Chartsheets","ChartNames","parse_ext_props","HeadingPairs","TitlesOfParts","write_ext_props","W","Application","xmlns:vt","custregex","parse_cust_props","toks","warn","write_cust_props","pid","custprop","fmtid","XLMLDocPropsMap","Title","Subject","Author","Keywords","Comments","LastAuthor","RevNumber","LastPrinted","Category","Manager","Company","AppVersion","ContentStatus","Identifier","Language","evert_XLMLDPM","xlml_set_prop","xlml_write_docprops","xlml_write_custprops","Custprops","BLACKLIST","dt:dt","parse_FILETIME","dwLowDateTime","dwHighDateTime","write_FILETIME","parse_lpstr","pad","parse_lpwstr","parse_VtStringBase","stringType","parse_VtString","parse_VtUnalignedString","parse_VtVecLpwstrValue","ret","parse_VtVecUnalignedLpstrValue","parse_VtHeadingPair","headingString","parse_TypedPropertyValue","headerParts","parse_VtVecHeadingPairValue","cElements","parse_dictionary","CodePage","dict","parse_BLOB","bytes","parse_ClipboardData","Size","write_TypedPropertyValue","parse_PropertySet","PIDSI","start_addr","NumProps","Dictionary","DictObj","PropID","Offset","PropH","fail","piddsi","oldpos","parsebool","XLSPSSkip","guess_property_type","write_PropertySet","entries","RE","hdr","piao","prop","pr","pio","unshift","pinfo","parse_PropertySetStream","NumSets","FMTID0","FMTID1","Offset0","Offset1","SystemIdentifier","PSet0","rval","FMTID","PSet1","write_PropertySetStream","entries2","clsid2","ps0","ps1","parsenoop2","writezeroes","parslurp","writebool","parseuint16","writeuint16","parseuint16a","parse_Bes","write_Bes","parse_ShortXLUnicodeString","cch","fHighByte","parse_XLUnicodeRichExtendedString","fExtSt","fRichSt","width","cRun","cbExtRst","write_XLUnicodeRichExtendedString","xlstr","nfmts","otext","parse_XLUnicodeStringNoCch","parse_XLUnicodeString","parse_XLUnicodeString2","write_XLUnicodeString","parse_ControlInfo","accel","parse_URLMoniker","extra","parse_FileMoniker","cAnti","preamble","ansiPath","unicodePath","parse_HyperlinkMoniker","parse_HyperlinkString","write_HyperlinkString","parse_Hyperlink","sVer","displayName","targetFrameName","moniker","oleMoniker","Loc","guid","fileTime","Tooltip","write_Hyperlink","hl","hashidx","Pretarget","parse_LongRGBA","parse_LongRGB","parse_XLSCell","rw","ixfe","write_XLSCell","parse_frtHeader","rt","parse_OptXLUnicodeString","parse_XTI","iSupBook","itabFirst","itabLast","parse_RkRec","parse_AddinUdf","udfName","parse_Ref8U","rwFirst","rwLast","colFirst","colLast","write_Ref8U","parse_RefU","parse_Ref","parse_FtCmo","ot","id","parse_FtNts","fSharedNote","parse_FtCf","cf","parse_FtSkip","FtTab","parse_FtArray","fts","ft","parse_BOF","BIFFVer","write_BOF","wb","parse_InterfaceHdr","parse_WriteAccess","UserName","write_WriteAccess","b8","parse_WsBool","fDialog","fBelow","fRight","parse_BoundSheet8","hidden","hs","write_BoundSheet8","parse_SST","ucnt","Count","Unique","write_SST","parse_ExtSST","extsst","dsst","parse_Row","miyRw","level","hpt","parse_ForceFullCalculation","fullcalc","parse_RecalcId","parse_DefaultRowHeight","fl","Unsynced","DyZero","ExAsc","ExDsc","parse_Window1","xWn","yWn","dxWn","dyWn","iTabCur","iTabFirst","ctabSel","wTabRatio","Pos","Dim","Flags","CurTab","FirstTab","Selected","TabRatio","write_Window1","parse_Window2","RTL","write_Window2","parse_Pane","parse_Font","dyHeight","write_Font","b5","parse_LabelSst","isst","write_LabelSst","os","parse_Label","biffguess","write_Label","parse_Format","fmtstr","write_Format","parse_BIFF2Format","parse_Dimensions","write_Dimensions","parse_RK","rkrec","rknum","parse_MulRk","rkrecs","lastcol","parse_MulBlank","ixfes","parse_CellStyleXF","patternType","cellStyles","alc","fWrap","alcV","fJustLast","trot","cIndent","fShrinkToFit","iReadOrder","fAtrNum","fAtrFnt","fAtrAlc","fAtrBdr","fAtrPat","fAtrProt","dgLeft","dgRight","dgTop","dgBottom","icvLeft","icvRight","grbitDiag","icvTop","icvBottom","icvDiag","dgDiag","icvFore","icvBack","fsxButton","parse_XF","fStyle","write_XF","ixfeP","parse_Guts","write_Guts","guts","parse_BoolErr","write_BoolErr","parse_Number","xnum","write_Number","parse_XLHeaderFooter","parse_SupBook","ctab","sbcch","virtPath","rgst","parse_ExternName","fBuiltIn","fWantAdvise","fWantPict","fOle","fOleLink","fIcon","Name","parse_Lbl","chKey","cce","itab","npflen","rgce","parse_NameParsedFormula","parse_ExternSheet","parse_BIFF5ExternSheet","parse_NameCmt","cchName","cchComment","comment","parse_ShrFmla","ref","cUse","parse_SharedParsedFormula","parse_Array","parse_ArrayParsedFormula","parse_MTRSettings","fMTREnabled","fUserSetThreadCount","cUserThreadCount","parse_NoteSh","idObj","stAuthor","parse_Note","parse_MergeCells","merges","cmcs","write_MergeCells","parse_Obj","parse_BIFF5Obj","cmo","parse_BIFF5OT","parse_TxO","texts","lastobj","controlInfo","cchText","parse_HLink","hlink","write_HLink","O","parse_HLinkTooltip","wzTooltip","write_HLinkTooltip","parse_Country","write_Country","parse_ClrtClient","ccv","parse_Palette","parse_XFCRC","cxfs","crc","parse_ColInfo","coldx","write_ColInfo","parse_Setup","footer","parse_ShtProps","area","write_RRTabId","parse_Blank","parse_Scl","parse_String","parse_ImData","env","lcb","parse_BIFF2STR","parse_BIFF2NUM","num","write_BIFF2NUM","write_BIFF2Cell","parse_BIFF2INT","write_BIFF2INT","parse_BIFF2STRING","parse_BIFF2FONTXTRA","parse_RString","DBF_SUPPORTED_VERSIONS","DBF","dbf_codepage_map","100","101","102","103","104","106","107","120","121","122","123","124","125","126","150","151","152","200","201","202","203","87","88","89","108","135","dbf_reverse_map","dbf_to_aoa","memo","vfp","l7","nrow","fpos","rlen","current_cp","codepage","fields","field","hend","sheetRows","dbf_to_sheet","wch","dbf_to_workbook","_RLEN","?","","sheet_to_dbf","old_cp","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_l","_s","to_workbook","to_sheet","from_sheet","SYLK","sylk_escapes","AA","BA","CA","DA","HA","JA","AE","BE","CE","HE","AI","BI","CI","HI","AO","BO","CO","DO","HO","AU","BU","CU","HU","Aa","Ba","Ca","Da","Ha","Ja","Ae","Be","Ce","He","Ai","Bi","Ci","Hi","Ao","Bo","Co","Do","Ho","Au","Bu","Cu","Hu","KC","Kc","DN","Dn","Hy","B ","!","\"","#","(","%","'","H ","+",";","<","=",">","{","sylk_char_regex","sylk_char_fn","_","decode_sylk_char","newcc","sylk_to_aoa","sylk_to_aoa_str","records","rj","formats","next_cell_format","sht","rowinfo","colinfo","cw","Mval","Workbook","WBProps","Names","rstr","record","d1904","nn","Sheet","Ref","rc_to_a1","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","cell_t","cellText","shrbase","shift_formula_str","F_seen","hpx","pt2px","process_col","sylk_to_workbook","aoasht","outwb","write_ws_cell_sylk","a1_to_rc","write_ws_cols_sylk","rec","wpx","width2px","px2char","write_ws_rows_sylk","rows","px2pt","sheet_to_sylk","RS","DIF","dif_to_aoa","dif_to_aoa_str","dif_to_sheet","dif_to_workbook","make_value","make_value_str","sheet_to_dif","_DIF_XL","ETH","eth_to_aoa","eth_to_sheet","eth_to_workbook","sep","meta","sheet_to_eth_data","coord","sheet_to_eth","PRN","set_text_arr","prn_to_aoa_str","lines","guess_seps","guess_sep_weights","guess_sep","instr","dsv_to_sheet_str","FS","sepcc","startcc","_re","finish_cell","fuzzyfmla","cellNF","outer","prn_to_sheet_str","prn_to_sheet","firstbyte","prn_to_workbook","sheet_to_prn","read_wb_ID","OLD_WTF","WK_","lotushopper","Enum","WK1Enum","lotus_to_workbook","lotus_to_workbook_buf","next_n","sidx","snames","realnames","sdata","refguess","qpw_to_workbook_buf","vers","qpro","works","works2","tmpcell","WK3Enum","osheets","rnames","!ref","sheet_to_wk1","write_biff_rec","write_BOF_WK1","write_RANGE","max_R","write_INTEGER","write_NUMBER","write_LABEL","book_to_wk3","write_BOF_WK3","write_XFORMAT_SHEETNAME","wsidx","write_NUMBER_17","write_LABEL_16","wscnt","parse_RANGE","parse_cell","parse_LABEL","parse_STRING","parse_INTEGER","parse_NUMBER","parse_FORMULA","wk1_fmla_to_csf","wk1_parse_rc","FuncTab","83","109","111","BinOpTab","argc","argL","argR","args","parse_cell_3","parse_LABEL_16","parse_NUMBER_18","parse_NUMBER_17","v1","v2","log2","parse_FORMULA_19","parse_NUMBER_25","parse_NUMBER_27","parse_FORMULA_28","parse_SHEETNAMECS","parse_SHEETNAMELP","parse_SHEETINFOQP","parse_XFORMAT","142","147","153","154","155","156","174","175","176","184","185","187","188","195","205","206","207","208","256","259","260","261","262","263","265","266","267","268","270","271","384","389","390","393","396","512","514","513","516","517","640","641","642","643","644","645","646","647","648","658","659","660","661","662","665","666","768","772","1537","1600","1602","1793","1794","1795","1796","1920","2048","2049","2052","2688","10998","12849","28233","28484","formulae","book_append_sheet","CC","delta","parse_rpr","rpr","pass","uval","family","valign","parse_rs","tregex","rpregex","parse_r","rregex","rend","rs","filter","rs_to_html","parse_rs_factory","nlregex","parse_rpr2","intro","outro","align","r_to_html","terms","sitregex","sirregex","sirphregex","parse_si","cellHTML","sstr0","sstr1","sstr2","parse_sst_xml","count","uniqueCount","straywsregex","write_sst_xml","bookSST","sitag","parse_BrtBeginSst","parse_sst_bin","hopper_sst","write_BrtBeginSst","write_BrtSSTItem","write_sst_bin","_JS2ANSI","parse_CRYPTOVersion","Major","Minor","parse_DataSpaceVersionInfo","U","parse_DataSpaceMapEntry","comps","parse_DataSpaceMap","parse_DataSpaceDefinition","parse_TransformInfoHeader","parse_Primary","ename","cmode","parse_EncryptionHeader","AlgID","valid","AlgIDHash","KeySize","ProviderType","CSPName","parse_EncryptionVerifier","Salt","Verifier","VerifierHash","parse_EncryptionInfo","parse_EncInfoStd","parse_EncInfoExt","parse_EncInfoAgl","verifier","KeyData","xml_agile","encryptedHmacKey","encryptedHmacValue","encs","uri","parse_RC4CryptoHeader","EncryptionVersionInfo","EncryptionHeader","EncryptionVerifier","parse_RC4Header","EncryptedVerifier","EncryptedVerifierHash","crypto_CreatePasswordVerifier_Method1","Password","PasswordArray","PasswordDecoded","PasswordByte","Intermediate1","Intermediate2","Intermediate3","crypto_CreateXorArray_Method1","PadArray","InitialCode","XorMatrix","Ror","Byte","XorRor","byte1","byte2","CreateXorKey_Method1","XorKey","CurrentElement","Char","password","Index","ObfuscationArray","Temp","PasswordLastChar","PadIndex","crypto_DecryptData_Method1","Data","XorArrayIndex","XorArray","Value","crypto_MakeXorDecryptor","parse_XORObfuscation","verificationBytes","insitu","parse_FilePassHeader","Info","parse_FilePass","rtf_to_sheet","rtf_to_sheet_str","rowtf","rtfre","last_index","lastIndex","rtf_to_workbook","sheet_to_rtf","hex2RGB","rgb2HSL","G","H6","L2","hsl2RGB","hsl","h6","X","rgb_tint","hex","DEF_MDW","MAX_MDW","MIN_MDW","MDW","px","char2width","chr","cycle_width","collw","find_mdw_colw","_MDW","coll","customWidth","DEF_PPI","PPI","pt","XLMLPatternTypeMap","None","Solid","Gray50","Gray75","Gray25","HorzStripe","VertStripe","ReverseDiagStripe","DiagStripe","DiagCross","ThickDiagCross","ThinHorzStripe","ThinVertStripe","ThinReverseDiagStripe","ThinHorzCross","parse_borders","Borders","border","diagonalUp","diagonalDown","parse_fills","Fills","bgColor","indexed","fgColor","parse_fonts","Fonts","bold","underline","vertAlign","scheme","themeElements","clrScheme","parse_numFmts","NumberFmt","formatCode","write_numFmts","NF","cellXF_uint","cellXF_bool","parse_cellXfs","CellXf","xf","alignment","vertical","horizontal","textRotation","indent","wrapText","write_cellXfs","cellXfs","parse_sty_xml","make_pstyx","numFmtRegex","cellXfRegex","fillsRegex","fontsRegex","bordersRegex","write_sty_xml","parse_BrtFmt","stFmtCode","write_BrtFmt","parse_BrtFont","bls","bCharSet","charset","write_BrtFont","sss","XLSBFillPTNames","rev_XLSBFillPTNames","parse_BrtFill","write_BrtFill","fls","parse_BrtXF","ixfeParent","ifmt","write_BrtXF","flow","write_Blxf","parse_BrtBorder","write_BrtBorder","write_BrtStyle","xfId","builtinId","write_BrtBeginTableStyles","defTableStyle","defPivotStyle","parse_sty_bin","hopper_sty","write_FMTS_bin","write_FONTS_bin","write_FILLS_bin","write_BORDERS_bin","write_CELLSTYLEXFS_bin","fontId","fillId","borderId","write_CELLXFS_bin","write_STYLES_bin","write_DXFS_bin","write_TABLESTYLES_bin","write_COLORPALETTE_bin","write_sty_bin","XLSXThemeClrScheme","parse_clrScheme","lastClr","parse_fontScheme","parse_fmtScheme","clrsregex","fntsregex","fmtsregex","parse_themeElements","themeltregex","parse_theme_xml","write_theme","Themes","themeXLSX","parse_Theme","dwThemeVersion","themeXML","parse_ColorTheme","parse_FullColorExt","xclrType","nTintShade","xclrValue","parse_IcvXF","parse_XFExtGradient","parse_ExtProp","extType","parse_XFExt","cexts","update_xfext","xfext","xfe","parse_BrtMdtinfo","write_BrtMdtinfo","parse_BrtMdb","write_BrtMdb","write_BrtBeginEsfmd","parse_BrtBeginEsmdb","write_BrtBeginEsmdb","cm","parse_xlmeta_bin","Types","Cell","metatype","write_xlmeta_bin","parse_xlmeta_xml","lastmeta","offsets","write_xlmeta_xml","parse_cc_xml","parse_BrtCalcChainItem$","parse_cc_bin","hopper_cc","parse_xlink_xml","parse_xlink_bin","xlink_parse","parse_drawing","write_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","_shapeid","_comments","joinstyle","gradientshapeok","o:connecttype","coordsize","o:spt","write_vml_comment","fillopts","color2","angle","fillparm","fillxml","shadata","on","obscured","fillcolor","strokecolor","sheet_insert_comments","threaded","author","parse_comments_xml","authors","commentList","authtag","cmnttag","authorId","textMatch","write_comments_xml","iauthor","ID","lastauthor","ts","tcnt","parse_tcmnt_xml","tidx","xml_tcmnt","personId","write_tcmnt_xml","carr","rootid","tcopts","tcid","parentId","parse_people_xml","displayname","write_people_xml","person","userId","providerId","parse_BrtBeginComment","rfx","write_BrtBeginComment","parse_BrtCommentAuthor","write_BrtCommentAuthor","parse_comments_bin","hopper_cmnt","write_comments_bin","CT_VBA","make_vba_xls","newcfb","newpath","fill_vba_xls","VBAFMTS","parse_ds_bin","!type","parse_ds_xml","parse_ms_bin","parse_ms_xml","rcregex","rcbase","rcfunc","fstr","crefregex","$0","$4","$5","shift_formula_xlsx","_xlfn","parseread1","parse_ColRelU","parse_RgceArea","parse_RgceArea_BIFF2","parse_RgceAreaRel","parse_RgceLoc","parse_RgceLoc_BIFF2","parse_RgceElfLoc","fQuoted","parse_RgceLocRel","parse_RgceLocRel_BIFF2","cl","rl","parse_PtgArea","parse_PtgArea3d","ixti","parse_PtgAreaErr","parse_PtgAreaErr3d","parse_PtgAreaN","parse_PtgArray","parse_PtgAttrBaxcel","bitSemi","bitBaxcel","parse_PtgAttrChoose","parse_PtgAttrGoto","bitGoto","parse_PtgAttrIf","bitIf","parse_PtgAttrIfError","parse_PtgAttrSemi","parse_PtgAttrSpaceType","parse_PtgAttrSpace","parse_PtgAttrSpaceSemi","parse_PtgRef","parse_PtgRefN","parse_PtgRef3d","parse_PtgFunc","iftab","FtabArgc","Ftab","parse_PtgFuncVar","cparams","tab","parsetab","Cetab","parse_PtgAttrSum","parse_PtgExp","parse_PtgErr","parse_PtgInt","parse_PtgBool","parse_PtgNum","parse_PtgStr","parse_SerAr","parse_PtgExtraMem","parse_PtgExtraArray","parse_PtgName","nameindex","parse_PtgNameX","parse_PtgNameX_BIFF5","parse_PtgMemArea","parse_PtgMemFunc","parse_PtgRefErr","parse_PtgRefErr3d","parse_PtgMemErr","parse_PtgMemNoMem","parse_PtgTbl","parse_PtgElfLoc","parse_PtgElfNoop","parse_PtgElfCol","parse_PtgElfColS","parse_PtgElfColSV","parse_PtgElfColV","parse_PtgElfLel","parse_PtgElfRadical","parse_PtgElfRadicalLel","parse_PtgElfRadicalS","parse_PtgElfRw","parse_PtgElfRwV","PtgListRT","parse_PtgList","coltype","parse_PtgSxName","parse_PtgSheet","parse_PtgEndSheet","parse_PtgMemAreaN","parse_PtgMemNoMemN","parse_PtgAttrNoop","PtgTypes","PtgDupes","96","97","98","99","110","91","92","93","Ptg18","Ptg19","parse_RgbExtra","parse_Rgce","ptgs","stringify_array","PtgBinOp","PtgAdd","PtgConcat","PtgDiv","PtgEq","PtgGe","PtgGt","PtgLe","PtgLt","PtgMul","PtgNe","PtgPower","PtgSub","make_3d_range","get_ixti_raw","supbooks","XTI","SID","get_ixti","ixtiraw","stringify_formula","stack","nameidx","last_sp","sp","fflen","func","lbl","names","xlfn","bookidx","externbook","ixtidata","lp","rp","sharedf","parsedf","fnd","arrayf","PtgNonDisp","_left","rgcb","parse_XLSCellParsedFormula","parse_FormulaValue","write_FormulaValue","parse_Formula","cbf","shared","write_Formula","o1","o3","bf","parse_XLSBParsedFormula","parse_XLSBArrayParsedFormula","parse_XLSBCellParsedFormula","parse_XLSBNameParsedFormula","parse_XLSBSharedParsedFormula","write_XLSBFormulaNum","oint","write_XLSBFormulaErr","write_XLSBFormulaBool","write_XLSBFormulaStr","postamble","write_XLSBFormulaRef","write_XLSBFormulaRef3D","lastbang","write_XLSBFormulaRefErr3D","write_XLSBFormulaRange","_str","write_XLSBFormulaRangeWS","write_XLSBFormulaArea3D","write_XLSBFormula","write_XLSBNameParsedFormula","85","94","95","112","113","114","115","116","117","118","119","127","131","132","133","137","138","139","140","143","144","145","146","148","149","159","164","166","167","168","169","170","171","172","173","189","190","191","192","193","194","196","197","198","199","209","210","211","212","214","215","217","219","220","223","224","225","226","227","228","229","240","243","249","250","251","252","253","254","269","272","273","274","276","277","278","279","280","281","282","283","284","285","288","289","290","291","292","293","295","296","297","298","302","305","306","307","308","309","310","311","312","313","314","315","316","318","319","320","321","322","323","324","325","328","330","336","338","339","342","343","344","350","352","355","356","370","373","374","375","376","377","378","379","380","381","382","383","385","386","388","391","392","394","395","397","398","399","400","412","413","414","415","416","417","421","422","423","424","425","430","431","432","433","434","435","436","437","438","439","440","441","442","443","444","445","446","447","448","449","450","451","452","453","454","455","456","458","459","460","461","462","463","464","465","466","467","468","469","470","471","472","473","474","475","476","477","478","480","481","482","485","489","491","493","494","495","509","510","511","518","519","520","521","522","523","545","546","547","548","549","620","621","653","667","673","753","755","808","141","157","158","160","165","179","180","181","182","183","221","230","231","232","233","234","235","236","237","239","241","242","244","245","246","247","248","257","258","264","275","286","287","294","299","300","301","303","304","317","326","327","329","331","332","334","335","337","340","341","345","346","347","348","349","353","357","359","360","361","362","363","364","365","366","367","368","369","371","372","387","401","402","403","404","405","406","407","408","409","410","411","418","419","426","427","428","429","457","724","479","483","484","ods_to_csf_formula","csf_to_ods_formula","ods_to_csf_3D","csf_to_ods_3D","_ssfopts","browser_has_Map","Map","get_sst_id","has","revarr","get","col_obj_w","outlineLevel","default_margins","margins","mode","defs","left","right","top","bottom","get_cell_style","revssf","ssf","applyNumberFormat","safe_format","fillid","raw_rgb","check_ws","parse_ws_xml_dim","mergecregex","sheetdataregex","hlinkregex","dimregex","colregex","afregex","marginregex","sheetprregex","sheetprregex2","svsregex","parse_ws_xml","data1","data2","mtch","sheetPr","parse_ws_xml_sheetpr","parse_ws_xml_sheetpr2","svs","parse_ws_xml_sheetviews","columns","parse_ws_xml_cols","parse_ws_xml_data","afilter","parse_ws_xml_autofilter","_merge","parse_ws_xml_hlinks","parse_ws_xml_margins","tmpref","write_ws_xml_merges","codeName","CodeName","write_ws_xml_sheetpr","needed","vbaraw","cname","outlineprops","summaryBelow","summaryRight","above","sheetprot_deffalse","sheetprot_deftrue","write_ws_xml_protection","location","Rel","tooltip","rng","margin","write_ws_xml_margins","seencol","coli","colm","colM","write_ws_xml_cols","write_ws_xml_autofilter","sviewregex","Views","zoomScale","zoom","rightToLeft","write_ws_xml_sheetviews","sview","workbookViewId","write_ws_xml_cell","oldt","oldv","Strings","revStrings","display","cellregex","rowregex","isregex","refregex","match_v","match_f","cells","cref","tagr","tagc","sstr","ftag","do_format","rowobj","rowrite","marr","marrlen","xlen","rstarti","outa","ht","rslice","cellFormula","___f","_tag","xlmeta","_r","write_ws_xml_data","params","height","_cell","customHeight","write_ws_xml","xmlns:r","rdata","_drawing","sheetFormat","defaultRowHeight","baseColWidth","outlineLevelRow","relc","ignoreEC","numberStoredAsText","sqref","r:id","parse_BrtRowHdr","write_BrtRowHdr","ncolspan","lcs","caddr","first","last","write_row_header","parse_BrtWsDim","write_BrtWsDim","parse_BrtWsFmtInfo","parse_BrtWsProp","write_BrtWsProp","parse_BrtCellBlank","write_BrtCellBlank","ncell","parse_BrtShortBlank","write_BrtShortBlank","parse_BrtCellBool","fBool","write_BrtCellBool","parse_BrtShortBool","write_BrtShortBool","parse_BrtCellError","bError","write_BrtCellError","parse_BrtShortError","write_BrtShortError","parse_BrtCellIsst","write_BrtCellIsst","parse_BrtShortIsst","write_BrtShortIsst","parse_BrtCellReal","write_BrtCellReal","parse_BrtShortReal","write_BrtShortReal","parse_BrtCellRk","write_BrtCellRk","parse_BrtShortRk","write_BrtShortRk","parse_BrtCellRString","parse_BrtCellSt","write_BrtCellSt","parse_BrtShortSt","write_BrtShortSt","parse_BrtFmlaBool","parse_BrtFmlaError","parse_BrtFmlaNum","parse_BrtFmlaString","parse_BrtMergeCell","write_BrtMergeCell","write_BrtBeginMergeCells","parse_BrtHLink","relId","write_BrtHLink","locidx","parse_BrtPane","parse_BrtArrFmla","fAlwaysCalc","parse_BrtShrFmla","write_BrtColInfo","BrtMarginKeys","parse_BrtMargins","write_BrtMargins","parse_BrtBeginWsView","write_BrtBeginWsView","write_BrtCellIgnoreEC","write_BrtSheetProtection","parse_BrtDVal","parse_BrtDVal14","parse_ws_bin","ai","af","vm","ws_parse","RR","aii","_d","write_ws_bin_cell","last_seen","write_CELLTABLE","cap","write_MERGECELLS","write_COLINFOS","write_IGNOREECS","write_HLINKS","write_LEGACYDRAWING","write_AUTOFILTER","write_WSVIEWS2","write_WSFMTINFO","write_SHEETPROTECT","write_ws_bin","parse_Cache","nf","parse_chart","csheet","nc","parse_cs_xml","!drawel","!rel","parse_BrtCsProp","parse_cs_bin","cs_parse","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","dn","wbnsregex","parse_wb_xml","dname","dnstart","xml_wb","Hidden","Comment","localSheetId","write_wb_xml","write_names","workbookPr","sheetId","parse_BrtBundleSh","iTabID","strRelID","write_BrtBundleSh","parse_BrtWbProp","defaultThemeVersion","strName","autoCompressPictures","backupFile","checkCompatibility","filterPrivacy","hidePivotFieldList","promptedSolutions","publishItems","refreshAllConnections","saveExternalLinkValues","showBorderUnselectedTables","showInkAnnotation","showObjects","showPivotChartFilter","updateLinks","write_BrtWbProp","parse_BrtFRTArchID$","ArchID","parse_BrtName","Ptg","write_BrtName","parse_wb_bin","hopper_wb","write_BUNDLESHS","viz","write_BrtFileVersion","write_BrtBookView","write_BOOKVIEWS","vistab","write_BRTNAMES","write_SELF_EXTERNS_xlsb","write_EXTERNALS_xlsb","write_wb_bin","parse_wb","parse_ws","parse_cs","parse_ms","parse_ds","parse_sty","parse_sst","parse_cmnt","parse_cc","parse_xlink","parse_xlmeta","attregexg2","attregex2","xlml_parsexmltag","words","xlml_parsexmltagobj","XLMLFormatMap","xlml_format","xlml_set_custprop","oval","safe_format_xlml","process_style_xlml","stag","Interior","I","Pattern","parse_xlml_data","csty","sid","StyleID","interiors","Parent","UTC","Formula","ArrayRange","xlml_prefix_dname","xlml_clean_comment","parse_xlml_xml","opening","ishtml","_o","html_to_workbook","General Number","General Date","Long Date","Medium Date","Short Date","Long Time","Medium Time","Short Time","Currency","Fixed","Standard","Percent","Scientific","Yes/No","True/False","On/Off","sheetnames","cursheet","sheetname","dtag","didx","fidx","pidx","cstys","wsprops","raw_Rn3","HRef","HRefScreenTip","MergeAcross","MergeDown","cma","cmd","AutoFitHeight","Height","Format","ssfidx","Width","_col","Span","_NamedRange","_DefinedName","RefersTo","AutoFilter","Range","parse_fods","Margin","pagemargins","Top","Left","Right","Bottom","bookSheets","bookProps","parse_xlml","fix_read_opts","write_props_xlml","write_wb_xlml","write_sty_xlml","ss:Format","ss:ID","write_name_xlml","ss:Name","ss:RefersTo","write_names_xlml","write_ws_xlml_names","write_ws_xlml_wsopts","x:Margin","x:Bottom","x:Left","x:Right","x:Top","objects","scenarios","selectLockedCells","selectUnlockedCells","write_ws_xlml_comment","ss:Author","write_ws_xlml_cell","attr","mi","_v","write_ws_xlml_row","write_ws_xlml_table","ss:Index","skip","write_ws_xlml","write_xlml","General","xmlns:ss","xmlns:dt","xmlns:html","parse_compobj","AnsiUserType","AnsiClipboardFormat","Reserved1","UnicodeClipboardFormat","Reserved2","CONTINUE_RT","slurp","RecordType","nextrt","XLSRecordEnum","ll","safe_format_xf","make_cell","parse_workbook","Directory","last_formula","cur_sheet","Preamble","lastcell","last_cell","cmnt","rngC","rngR","temp_val","country","XFs","palette","get_rgb","getrgb","process_cell_style","pcs","xfd","addcell","file_depth","afi","rrtabid","lastuser","winlocked","wtf","last_RT","BIFF2Fmt","BIFF2FmtTable","FilterDatabases","last_lbl","seen_codepage","Date1904","WriteProtect","cpval","CalcRefMode","FullCalc","ExternCount","tmpri","1033","1024","1280","1536","fakebs8","_fr","_fc","_fe","_arraystart","_j","_ixfe","b4idx","b2idx","TxO","ImData","noteobj","Encryption","Metadata","Country","PSCLSID","SI","DSI","UDI","parse_xls_props","DocSummary","Summary","write_xls_props","DSEntries","SEntries","CEntries","Keys","DocSummaryRE","SummaryRE","CEntries2","parse_xlscfb","CompObj","WorkbookP","bookVBA","bookFiles","write_xlscfb","wbpath","write_biff_buf","333","486","487","488","490","492","496","497","498","499","500","501","502","503","504","505","506","507","508","515","524","525","526","527","528","529","530","531","532","533","534","535","536","537","538","539","540","541","542","550","551","552","553","554","555","556","557","558","559","560","561","562","564","565","566","569","570","572","573","574","577","578","579","580","581","582","583","584","585","586","587","588","589","590","591","592","593","594","595","596","597","598","599","600","601","602","603","604","605","606","607","608","609","610","611","612","613","614","615","616","617","618","619","625","626","627","628","629","630","631","632","633","634","635","636","637","638","639","649","650","651","652","654","655","656","657","663","664","668","669","671","672","674","675","676","677","678","679","680","681","1025","1026","1027","1028","1029","1030","1031","1032","1034","1035","1036","1037","1038","1039","1040","1041","1042","1043","1044","1045","1046","1047","1048","1049","1050","1051","1052","1053","1054","1055","1056","1057","1058","1059","1061","1062","1063","1064","1065","1066","1067","1068","1069","1070","1071","1072","1073","1075","1076","1077","1078","1079","1080","1081","1082","1083","1084","1085","1086","1087","1088","1089","1090","1091","1092","1093","1094","1095","1096","1097","1098","1099","1100","1101","1102","1103","1104","1105","1111","1112","1113","1114","1115","1116","1117","1118","1119","1120","1121","1122","1123","1124","1125","1126","1128","1129","1130","1131","1132","1133","1134","1135","1136","1137","1138","1139","1140","1141","1142","1143","1144","1145","1146","1147","1148","1149","1150","1152","1153","1154","1155","1156","1157","1158","1159","1160","1161","1162","1163","1164","1165","1166","1167","1168","1169","1170","1171","1172","1173","1177","1178","1180","1181","1182","2050","2051","2053","2054","2055","2056","2057","2058","2060","2067","2068","2069","2070","2071","2072","2073","2075","2076","2077","2078","2079","2080","2081","2082","2083","2084","2085","2086","2087","2088","2089","2090","2091","2092","2093","2094","2095","2096","2097","2098","2099","2100","2101","2102","2103","2104","2105","2106","2107","2108","2109","2110","2111","2112","2113","2114","2115","2116","2117","2118","2119","2120","2121","2122","2123","2124","2125","2126","2127","2128","2129","2130","2131","2132","2133","2134","2135","2136","2137","2138","2139","2140","2141","3072","3073","4096","4097","5002","5003","5081","5082","5083","5084","5085","5086","5087","5088","5089","5090","5092","5093","5094","5095","5096","5097","5099","1212","2059","2061","2062","2063","2064","2066","2146","2147","2148","2149","2150","2151","2152","2154","2155","2156","2161","2162","2164","2165","2166","2167","2168","2169","2170","2171","2172","2173","2174","2175","2180","2181","2182","2183","2184","2185","2186","2187","2188","2189","2190","2191","2192","2194","2195","2196","2197","2198","2199","2200","2201","2202","2203","2204","2205","2206","2207","2211","2212","2213","2214","2215","4098","4099","4102","4103","4105","4106","4107","4108","4109","4116","4117","4118","4119","4120","4121","4122","4123","4124","4125","4126","4127","4128","4129","4130","4132","4133","4134","4135","4146","4147","4148","4149","4154","4156","4157","4158","4159","4160","4161","4163","4164","4165","4166","4168","4170","4171","4174","4175","4176","4177","4187","4188","4189","4191","4192","4193","4194","4195","4196","4197","4198","4199","4200","2157","2163","2177","2240","2241","2242","2243","2244","2245","2246","2247","2248","2249","2250","2251","2262","29282","write_biff_continue","write_BIFF2BERR","write_BIFF2LABEL","write_ws_biff2_cell","write_ws_biff2","write_biff2_buf","write_FONTS_biff8","write_FMTS_biff8","write_FEAT","write_CELLXFS_biff8","write_ws_biff8_hlinks","HL","write_ws_cols_biff8","write_ws_biff8_cell","write_ws_biff8","_WB","_sheet","MAX_ROWS","write_biff8_global","_sheets","_wb","blen","write_biff8_buf","fix_write_opts","html_to_sheet","mtch2","hd","midx","colspan","rowspan","_t","make_html_row","editable","HTML_BEGIN","HTML_END","book_new","make_html_preamble","sheet_to_html","sheet_add_dom","tagName","or_R","or_C","is_dom_element_hidden","elts","hasAttribute","getAttribute","innerHTML","Aelts","getElementsByTagName","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","parse_ods_styles","_nfm","number_format_map","NFtag","tNF","etpos","infmt","parse_content_xml","nfidx","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","baddate","rptR","rpt","xlmlidx","styletag","nrange","ptp","parse_ods","Styles","write_styles_ods","master_styles","xmlns:office","xmlns:table","xmlns:style","xmlns:text","xmlns:draw","xmlns:fo","xmlns:xlink","xmlns:number","xmlns:svg","xmlns:of","office:version","wso","write_number_format_ods","nopts","style:name","number:min-integer-digits","number:min-numerator-digits","number:max-denominator-value","number:denominator-value","number:decimal-places","number:min-decimal-places","has_time","np","write_names_ods","scoped","odsref","table:name","table:cell-range-address","table:base-cell-address","write_content_ods","write_text_p","null_cell_xml","covered_cell_xml","write_ws","nfs","ods","ROWS","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","nfi","wcx","xmlns:meta","xmlns:presentation","xmlns:chart","xmlns:dr3d","xmlns:math","xmlns:form","xmlns:script","xmlns:ooo","xmlns:ooow","xmlns:oooc","xmlns:dom","xmlns:xforms","xmlns:sheet","xmlns:rpt","xmlns:xhtml","xmlns:grddl","xmlns:tableooo","xmlns:drawooo","xmlns:calcext","xmlns:loext","xmlns:field","xmlns:formx","xmlns:css3t","fods","xmlns:config","office:mimetype","write_ods","u8_to_dataview","array","DataView","buffer","byteOffset","byteLength","u8str","u8","stru8","u8concat","u8a","popcnt","readDecimal128LE","exp","mantissa","writeDecimal128LE","parse_varint49","ptr","varint","write_varint49","parse_packed_varints","write_packed_varints","nums","varint_to_i32","i32","varint_to_u64","lo","hi","parse_shallow","write_shallow","proto","item","mappa","parse_iwa_file","_a","messages","merge","write_iwa_file","ias","ia","midata","aipayload","mid","parse_snappy_chunk","chunks","clen","u8i","decompress_iwa_file","compress_iwa_file","frame","numbers_lut_new","rsst","nfmt","numbers_format_cell","_b","_c","ver","dur","dstyle","dmin","dmax","autodur","dstr","zstr","parse_old_storage","lut","dv","getUint32","zidx","ieee","doff","getFloat64","parse_new_storage","d128","write_new_storage","setFloat64","setUint32","write_old_storage","parse_cell_storage","parse_TSP_Reference","pb","write_TSP_Reference","numbers_add_oref","iwa","orefs","orefidx","numbers_del_oref","parse_TST_TableDataList","le","rtp","rtpref","mtype","tswpsa","parse_TST_TileRowInfo","_e","_g","_h","_i","_k","_m","wide_offsets","used_storage_u8","used_storage","used_storage_offsets","getUint16","parse_TST_Tile","nrows","reduce","acc","parse_TST_TableModelArchive","dws","store","tile","tl","ref2","mtype2","_tile","pi","parse_TST_TableInfoArchive","tableref","parse_TN_SheetArchive","shapeoffs","parse_TN_DocumentArchive","sheetoffs","root2","parse_numbers_iwa","indices","packets","packet","docroot","iwam","write_TST_TileRowInfo","wide","tri","new_7","new_4","last_offset","cell_storage","_dv","_last_offset","_cell_storage","setUint16","celload","_celload","write_iwam","get_unique_msgid","dep","dependents","build_numbers_deps","deps","mess","write_numbers_iwa","numbers","numbers_iwa_find","sheetrefs","numbers_add_ws","write_numbers_ws","numbers_iwa_doit","ainfo","sheetref","newsheetref","remap","arch","doc","tiaref","sheetroot","sa","drawables","tia","loc2","mlist","parentidx","findIndex","mm","parent","tmaref","tiaroot","da","dap","oldtmaref","tma","tmaroot","uuid","new_uuid","padStart","srrta","hsoa","hsa","hseadata","hsea","_a2","oldref","newref","newloc","_a3","_b2","row_headers","tspref","tiles","tst","oldtileref","newtileref","oldtile","wsname","sheetidx","rootref","write_numbers_tma","USE_WIDE_ROWS","tmafile","trunc","row_header_ref","rowhead","_x","base_bucket","R2","_bucket","col_header_ref","colhead","rbtree","tilestore","tstride","tileref","save_token","mlst","ntiles","newtileid","tiledata","tilerow","newtile","tilecontent","mergeid","sstref","sstroot","sstdata","fix_opts_func","fix_opts","get_sheet_type","safe_parse_wbrels","wbrels","pwbr","safe_parse_sheet","relsPath","sheetRels","stype","dfile","drelsp","draw","chartp","crelsp","tcomments","strip_front_slash","_zip","index_zip","Bun","readSync","dir","binname","link","propdata","pluck","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Deps","bin","parse_xlsxcfb","dsm","seds","einfo","decrypt_agile","decrypt_std76","write_zip_xlsb","foo","vbafmt","_sn","wsrels","_type","need_vml","rId1","write_zip_xlsx","needtc","read_cfb","read_zip","read_plaintext","main","read_plaintext_raw","read_utf16","bstrify","read_prn","ab","vu","write_cfb_ctr","write_zip_type","write_zip_denouement","write_zip_typeXLSX","oopts","ftype","nodebuffer","string","generate","encrypt_agile","write_cfb_type","write_string_type","bom","write_stxt_type","write_binary_type","writeSyncXLSX","writeSync","sheet_to_txt","sheet_to_csv","resolve_book_type","_BT","xls","slk","socialcalc","Sh33tJS","writeFileSyncXLSX","writeFileAsync","_cb","Function","make_json_row","defval","isempty","defineProperty","enumerable","__rowNum__","rawNumbers","outi","counter","header_cnt","skipHidden","blankrows","qreg","make_csv_row","txt","datarow","forceQuotes","endregex","strip","sheet_to_formulae","cmds","sheet_add_json","js","skipHeader","ROW","JS","json_to_sheet","ws_get_cell_stub","RC","wb_sheet_idx","sh","roll","book_set_sheet_visibility","vis","cell_set_number_format","cell_set_hyperlink","cell_set_internal_link","cell_add_comment","sheet_set_array_formula","dynamic","rngstr","wsr","table_to_sheet","sheet_to_row_object_array","sheet_get_cell","SHEET_VISIBLE","SHEET_HIDDEN","SHEET_VERY_HIDDEN","_Readable","set_readable","write_csv_stream","stream","BOM","_read","write_html_stream","write_json_stream","objectMode","__stream","to_json","to_html","to_csv","readFile","writeXLSX","writeFileXLSX","strmod","Readable","define","amd","window"],"mappings":"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,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,MAAQ,KAIR,IAAIC,KACH,KACA,QACA,aACA,WACA,YACA,iBACA,eACA,WACA,SACA,WACA,cACA,kBACA,gBACA,YACA,UACA,YACA,eACA,UACA,WAGD,SAASC,IAAO9Z,GAAO,MAAOA,GAAIlyB,IAAI,SAASjD,GAAK,OAASA,GAAG,GAAI,IAAKA,GAAG,EAAG,IAAIA,EAAE,OAIrF,GAAIkvC,IAAWD,IAEd,EACA,SACA,SACA,MACA,IACA,SACA,SACA,MAGA,EACA,SACA,SACA,MACA,IACA,SACA,SACA,MAEA,QACA,MACA,IACA,QACA,QACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,MACA,SAEA,IACA,SACA,SACA,MACA,QACA,QACA,MACA,IACA,MACA,SACA,SACA,SACA,SACA,SACA,SACA,SAEA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,QACA,SACA,SACA,QACA,QAGA,EACA,SACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAED,IAAIvE,IAASzT,GAAIiY,GAGjB,IAAIjJ,KACJhgC,EAAM,SACN0H,EAAM,UACNrB,GAAM,UACNuB,GAAM,QACNM,GAAM,SACNyM,GAAM,QACNtK,GAAM,OACNC,GAAM,gBACNpJ,IAAM,QAGN,IAAIgoC,KACHC,SAAiB,EACjBC,UAAiB,EACjBC,UAAiB,GACjBC,QAAiB,GACjBC,SAAiB,GACjBC,QAAiB,GACjBC,OAAiB,GACjBC,gBAAiB,GACjBC,QAAiB,IAGlB,IAAIC,KACH,yBACA,kBACA,mBACA,gBACA,iBACA,iBACA,mBACA,qBACA,iBACA,kBACA,sBACA,wBACA,oBACA,wBAOD,IAAIC,KAEHC,6EAA8E,YAC9EC,uDAAwD,YACx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,KAA6B7/F,EAAEwhD,IAC/B0wC,OACAE,KAA6BpyF,EAAE4yD,IAC/B8C,OACAC,OACA+R,OACAC,OACAC,OACAC,KAAyC7nE,EAAEwhD,IAC3Cs+C,OACAC,OACAC,KAAyBhgG,EAAEyzD,IAC3BxvD,KAA2BjE,EAAEmzD,IAC7B2U,OACAC,OACAC,OACA5jE,OACAC,OACA87F,OACAC,OACAC,OACAp4B,OACAC,OACA+qB,KAA2BjzF,EAAE2rD,IAC7BunC,KAA8BlzF,EAAE8rD,IAChCunC,KAAyBrzF,EAAEohD,IAC3BoyC,OACAC,OACAC,OACA99B,OACAC,OACAC,KAA4B91D,EAAEu/C,IAC9BwW,OACAxxD,OACA+jE,OACAC,OACAC,OACAC,OACAkrB,OACAC,OACAC,OACAzoD,OACA4oD,OACA3oD,OACA4oD,OACA3oD,KAA8BtrC,EAAEwhD,IAChC2yC,OACAoM,KAAqCvgG,EAAEu/C,IACvC/6C,OACA6vF,KAAwBr0F,EAAE+tD,IAC1BumC,KAAkCt0F,EAAEgnD,IACpCutC,KAAkCv0F,EAAEohD,IACpCozC,OACAE,KAAgC10F,EAAEoxD,IAClCuvC,OACAE,OACAC,OACAC,OACAC,OACArM,OACAsM,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACA1M,OACAE,OACAC,KAAyBh1F,EAAE6nD,IAC3BotC,KAA8Bj1F,EAAE2qD,IAChCjmD,KAA4B1E,EAAEkoD,IAC9BwgB,OACAC,OACAwtB,OACAe,OACAC,OACAG,OACA8K,KAA6BpiG,EAAE0hD,IAC/B81C,OACAC,OACAC,OACAO,OACAuK,OACAklB,OACAhlB,OACAC,OACAzK,OACA0K,OACAzK,OACAC,OACAyK,OACAt3D,OACAktD,KAA8Bz4F,EAAEu/C,IAChC6jD,KAAyBpjG,EAAEohD,IAC3BgjD,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACA9J,OACAoK,OACAC,OACAC,OACAC,OACAtK,KAA6B96F,EAAE4uD,IAC/BmsC,KAA8B/6F,EAAEu/C,IAChCy7C,OACAC,OACAC,OACAG,OACAC,KAAyBt7F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","file":"dist/xlsx.full.min.js"} \ No newline at end of file diff --git a/dist/xlsx.mini.min.js b/dist/xlsx.mini.min.js index 055b134..f7c344a 100644 --- a/dist/xlsx.mini.min.js +++ b/dist/xlsx.mini.min.js @@ -1,10 +1,10 @@ /*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */ -var XLSX={};function make_xlsx_lib(e){e.version="0.18.12";var r=1200,t=1252;var a;var n=[874,932,936,949,950,1250,1251,1252,1253,1254,1255,1256,1257,1258,1e4];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 i=function(e){if(n.indexOf(e)==-1)return;t=s[0]=e};function l(){i(1252)}var o=function(e){r=e;i(e)};function c(){o(1200);l()}function f(e){var r=[];for(var t=0,a=e.length;t>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t)+(e.charCodeAt(2*t+1)<<8));return r.join("")}function h(e){var r=[];for(var t=0;t>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t+1)+(e.charCodeAt(2*t)<<8));return r.join("")}var d=function(e){var r=e.charCodeAt(0),t=e.charCodeAt(1);if(r==255&&t==254)return u(e.slice(2));if(r==254&&t==255)return h(e.slice(2));if(r==65279)return e.slice(1);return e};var m=function _c(e){return String.fromCharCode(e)};var p=function Ac(e){return String.fromCharCode(e)};function v(e){a=e;o=function(e){r=e;i(e)};d=function(e){if(e.charCodeAt(0)===255&&e.charCodeAt(1)===254){return a.utils.decode(1200,f(e.slice(2)))}return e};m=function n(e){if(r===1200)return String.fromCharCode(e);return a.utils.decode(r,[e&255,e>>8])[0]};p=function s(e){return a.utils.decode(t,[e])[0]};na()}var g=null;var b=true;var w="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function k(e){var r="";var t=0,a=0,n=0,s=0,i=0,l=0,o=0;for(var c=0;c>2;a=e.charCodeAt(c++);i=(t&3)<<4|a>>4;n=e.charCodeAt(c++);l=(a&15)<<2|n>>6;o=n&63;if(isNaN(a)){l=o=64}else if(isNaN(n)){o=64}r+=w.charAt(s)+w.charAt(i)+w.charAt(l)+w.charAt(o)}return r}function y(e){var r="";var t=0,a=0,n=0,s=0,i=0,l=0,o=0;for(var c=0;c255)t=95;s=t>>2;a=e.charCodeAt(c++);if(a>255)a=95;i=(t&3)<<4|a>>4;n=e.charCodeAt(c++);if(n>255)n=95;l=(a&15)<<2|n>>6;o=n&63;if(isNaN(a)){l=o=64}else if(isNaN(n)){o=64}r+=w.charAt(s)+w.charAt(i)+w.charAt(l)+w.charAt(o)}return r}function x(e){var r="";var t=0,a=0,n=0,s=0,i=0,l=0,o=0;e=e.replace(/^data:([^\/]+\/[^\/]+)?;base64\,/,"").replace(/[^\w\+\/\=]/g,"");for(var c=0;c>4;r+=String.fromCharCode(t);l=w.indexOf(e.charAt(c++));a=(i&15)<<4|l>>2;if(l!==64){r+=String.fromCharCode(a)}o=w.indexOf(e.charAt(c++));n=(l&3)<<6|o;if(o!==64){r+=String.fromCharCode(n)}}return r}var S=function(){return typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node}();var C=function(){if(typeof Buffer!=="undefined"){var e=!Buffer.from;if(!e)try{Buffer.from("foo","utf8")}catch(r){e=true}return e?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer)}return function(){}}();var _=function(){if(typeof Buffer==="undefined")return false;var e=C([65,0]);if(!e)return false;var r=e.toString("utf16le");return r.length==1}();function A(e){if(S)return Buffer.alloc?Buffer.alloc(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function F(e){if(S)return Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var E=function Fc(e){if(S)return C(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function T(e){if(typeof ArrayBuffer==="undefined")return E(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 D(e){if(Array.isArray(e))return e.map(function(e){return String.fromCharCode(e)}).join("");var r=[];for(var t=0;t>6&31;n[t++]=128|i&63}else if(i>=55296&&i<57344){i=(i&1023)+64;var l=e.charCodeAt(++s)&1023;n[t++]=240|i>>8&7;n[t++]=128|i>>2&63;n[t++]=128|l>>6&15|(i&3)<<4;n[t++]=128|l&63}else{n[t++]=224|i>>12&15;n[t++]=128|i>>6&63;n[t++]=128|i&63}if(t>a){r.push(n.slice(0,t));t=0;n=A(65535);a=65530}}r.push(n.slice(0,t));return N(r)}var I=/\u0000/g,R=/[\u0001-\u0006]/g;function L(e){var r="",t=e.length-1;while(t>=0)r+=e.charAt(t--);return r}function B(e,r){var t=""+e;return t.length>=r?t:Cr("0",r-t.length)+t}function z(e,r){var t=""+e;return t.length>=r?t:Cr(" ",r-t.length)+t}function W(e,r){var t=""+e;return t.length>=r?t:t+Cr(" ",r-t.length)}function U(e,r){var t=""+Math.round(e);return t.length>=r?t:Cr("0",r-t.length)+t}function j(e,r){var t=""+e;return t.length>=r?t:Cr("0",r-t.length)+t}var H=Math.pow(2,32);function V(e,r){if(e>H||e<-H)return U(e,r);var t=Math.round(e);return j(t,r)}function X(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)===114&&(e.charCodeAt(r+5)|32)===97&&(e.charCodeAt(r+6)|32)===108}var G=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var Y=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function J(e){if(!e)e={};e[0]="General";e[1]="0";e[2]="0.00";e[3]="#,##0";e[4]="#,##0.00";e[9]="0%";e[10]="0.00%";e[11]="0.00E+00";e[12]="# ?/?";e[13]="# ??/??";e[14]="m/d/yy";e[15]="d-mmm-yy";e[16]="d-mmm";e[17]="mmm-yy";e[18]="h:mm AM/PM";e[19]="h:mm:ss AM/PM";e[20]="h:mm";e[21]="h:mm:ss";e[22]="m/d/yy h:mm";e[37]="#,##0 ;(#,##0)";e[38]="#,##0 ;[Red](#,##0)";e[39]="#,##0.00;(#,##0.00)";e[40]="#,##0.00;[Red](#,##0.00)";e[45]="mm:ss";e[46]="[h]:mm:ss";e[47]="mmss.0";e[48]="##0.0E+0";e[49]="@";e[56]='"上午/下午 "hh"時"mm"分"ss"秒 "';return e}var K={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "'};var Z={5:37,6:38,7:39,8:40,23:0,24:0,25:0,26:0,27:14,28:14,29:14,30:14,31:14,50:14,51:14,52:14,53:14,54:14,55:14,56:14,57:14,58:14,59:1,60:2,61:3,62:4,67:9,68:10,69:12,70:13,71:14,72:14,73:15,74:16,75:17,76:20,77:21,78:22,79:45,80:46,81:47,82:0};var q={5:'"$"#,##0_);\\("$"#,##0\\)',63:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',41:'_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)'};function Q(e,r,t){var a=e<0?-1:1;var n=e*a;var s=0,i=1,l=0;var o=1,c=0,f=0;var u=Math.floor(n);while(cr){if(c>r){f=o;l=s}else{f=c;l=i}}if(!t)return[0,a*l,f];var h=Math.floor(a*l/f);return[h,a*l-h*f,f]}function ee(e,r,t){if(e>2958465||e<0)return null;var a=e|0,n=Math.floor(86400*(e-a)),s=0;var i=[];var l={D:a,T:n,u:86400*(e-a)-n,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(l.u)<1e-6)l.u=0;if(r&&r.date1904)a+=1462;if(l.u>.9999){l.u=0;if(++n==86400){l.T=n=0;++a;++l.D}}if(a===60){i=t?[1317,10,29]:[1900,2,29];s=3}else if(a===0){i=t?[1317,8,29]:[1900,1,0];s=6}else{if(a>60)--a;var o=new Date(1900,0,1);o.setDate(o.getDate()+a-1);i=[o.getFullYear(),o.getMonth()+1,o.getDate()];s=o.getDay();if(a<60)s=(s+6)%7;if(t)s=ue(o,i)}l.y=i[0];l.m=i[1];l.d=i[2];l.S=n%60;n=Math.floor(n/60);l.M=n%60;n=Math.floor(n/60);l.H=n;l.q=s;return l}var re=new Date(1899,11,31,0,0,0);var te=re.getTime();var ae=new Date(1900,2,1,0,0,0);function ne(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=ae)t+=24*60*60*1e3;return(t-(te+(e.getTimezoneOffset()-re.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function se(e){return e.indexOf(".")==-1?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function ie(e){if(e.indexOf("E")==-1)return e;return e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}function le(e){var r=e<0?12:11;var t=se(e.toFixed(12));if(t.length<=r)return t;t=e.toPrecision(10);if(t.length<=r)return t;return e.toExponential(5)}function oe(e){var r=se(e.toFixed(11));return r.length>(e<0?12:11)||r==="0"||r==="-0"?e.toPrecision(6):r}function ce(e){var r=Math.floor(Math.log(Math.abs(e))*Math.LOG10E),t;if(r>=-4&&r<=-1)t=e.toPrecision(10+r);else if(Math.abs(r)<=9)t=le(e);else if(r===10)t=e.toFixed(10).substr(0,12);else t=oe(e);return se(ie(t.toUpperCase()))}function fe(e,r){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):ce(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return Ue(14,ne(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}function ue(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function he(e,r,t,a){var n="",s=0,i=0,l=t.y,o,c=0;switch(e){case 98:l=t.y+543;case 121:switch(r.length){case 1:;case 2:o=l%100;c=2;break;default:o=l%1e4;c=4;break;}break;case 109:switch(r.length){case 1:;case 2:o=t.m;c=r.length;break;case 3:return Y[t.m-1][1];case 5:return Y[t.m-1][0];default:return Y[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:o=t.d;c=r.length;break;case 3:return G[t.q][0];default:return G[t.q][1];}break;case 104:switch(r.length){case 1:;case 2:o=1+(t.H+11)%12;c=r.length;break;default:throw"bad hour format: "+r;}break;case 72:switch(r.length){case 1:;case 2:o=t.H;c=r.length;break;default:throw"bad hour format: "+r;}break;case 77:switch(r.length){case 1:;case 2:o=t.M;c=r.length;break;default:throw"bad minute format: "+r;}break;case 115:if(r!="s"&&r!="ss"&&r!=".0"&&r!=".00"&&r!=".000")throw"bad second format: "+r;if(t.u===0&&(r=="s"||r=="ss"))return B(t.S,r.length);if(a>=2)i=a===3?1e3:100;else i=a===1?10:1;s=Math.round(i*(t.S+t.u));if(s>=60*i)s=0;if(r==="s")return s===0?"0":""+s/i;n=B(s,2+a);if(r==="ss")return n.substr(0,2);return"."+n.substr(2,r.length-1);case 90:switch(r){case"[h]":;case"[hh]":o=t.D*24+t.H;break;case"[m]":;case"[mm]":o=(t.D*24+t.H)*60+t.M;break;case"[s]":;case"[ss]":o=((t.D*24+t.H)*60+t.M)*60+Math.round(t.S+t.u);break;default:throw"bad abstime format: "+r;}c=r.length===3?1:2;break;case 101:o=l;c=1;break;}var f=c>0?B(o,c):"";return f}function de(e){var r=3;if(e.length<=r)return e;var t=e.length%r,a=e.substr(0,t);for(;t!=e.length;t+=r)a+=(a.length>0?",":"")+e.substr(t,r);return a}var me=/%/g;function pe(e,r,t){var a=r.replace(me,""),n=r.length-a.length;return Pe(e,a,t*Math.pow(10,2*n))+Cr("%",n)}function ve(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return Pe(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function ge(e,r){var t;var a=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\+0$/)){if(r==0)return"0.0E+0";else if(r<0)return"-"+ge(e,-r);var n=e.indexOf(".");if(n===-1)n=e.indexOf("E");var s=Math.floor(Math.log(r)*Math.LOG10E)%n;if(s<0)s+=n;t=(r/Math.pow(10,s)).toPrecision(a+1+(n+s)%n);if(t.indexOf("e")===-1){var i=Math.floor(Math.log(r)*Math.LOG10E);if(t.indexOf(".")===-1)t=t.charAt(0)+"."+t.substr(1)+"E+"+(i-t.length+s);else t+="E+"+(i-s);while(t.substr(0,2)==="0."){t=t.charAt(0)+t.substr(2,n)+"."+t.substr(2+n);t=t.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}t=t.replace(/\+-/,"-")}t=t.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function(e,r,t,a){return r+t+a.substr(0,(n+s)%n)+"."+a.substr(s)+"E"})}else t=r.toExponential(a);if(e.match(/E\+00$/)&&t.match(/e[+-]\d$/))t=t.substr(0,t.length-1)+"0"+t.charAt(t.length-1);if(e.match(/E\-/)&&t.match(/e\+/))t=t.replace(/e\+/,"e");return t.replace("e","E")}var be=/# (\?+)( ?)\/( ?)(\d+)/;function we(e,r,t){var a=parseInt(e[4],10),n=Math.round(r*a),s=Math.floor(n/a);var i=n-s*a,l=a;return t+(s===0?"":""+s)+" "+(i===0?Cr(" ",e[1].length+1+e[4].length):z(i,e[1].length)+e[2]+"/"+e[3]+B(l,e[4].length))}function ke(e,r,t){return t+(r===0?"":""+r)+Cr(" ",e[1].length+2+e[4].length)}var ye=/^#*0*\.([0#]+)/;var xe=/\).*[0#]/;var Se=/\(###\) ###\\?-####/;function Ce(e){var r="",t;for(var a=0;a!=e.length;++a)switch(t=e.charCodeAt(a)){case 35:break;case 63:r+=" ";break;case 48:r+="0";break;default:r+=String.fromCharCode(t);}return r}function _e(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function Ae(e,r){var t=e-Math.floor(e),a=Math.pow(10,r);if(r<(""+Math.round(t*a)).length)return 0;return Math.round(t*a)}function Fe(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function Ee(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function Te(e,r,t){if(e.charCodeAt(0)===40&&!r.match(xe)){var a=r.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(t>=0)return Te("n",a,t);return"("+Te("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return ve(e,r,t);if(r.indexOf("%")!==-1)return pe(e,r,t);if(r.indexOf("E")!==-1)return ge(r,t);if(r.charCodeAt(0)===36)return"$"+Te(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var s,i,l,o=Math.abs(t),c=t<0?"-":"";if(r.match(/^00+$/))return c+V(o,r.length);if(r.match(/^[#?]+$/)){n=V(t,0);if(n==="0")n="";return n.length>r.length?n:Ce(r.substr(0,r.length-n.length))+n}if(s=r.match(be))return we(s,o,c);if(r.match(/^#+0+$/))return c+V(o,r.length-r.indexOf("0"));if(s=r.match(ye)){n=_e(t,s[1].length).replace(/^([^\.]+)$/,"$1."+Ce(s[1])).replace(/\.$/,"."+Ce(s[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+Cr("0",Ce(s[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(s=r.match(/^(0*)\.(#*)$/)){return c+_e(o,s[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,s[1].length?"0.":".")}if(s=r.match(/^#{1,3},##0(\.?)$/))return c+de(V(o,0));if(s=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Te(e,r,-t):de(""+(Math.floor(t)+Fe(t,s[1].length)))+"."+B(Ae(t,s[1].length),s[1].length)}if(s=r.match(/^#,#*,#0/))return Te(e,r.replace(/^#,#*,/,""),t);if(s=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=L(Te(e,r.replace(/[\\-]/g,""),t));i=0;return L(L(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return i=0)return Ne("n",a,t);return"("+Ne("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return De(e,r,t);if(r.indexOf("%")!==-1)return Oe(e,r,t);if(r.indexOf("E")!==-1)return Me(r,t);if(r.charCodeAt(0)===36)return"$"+Ne(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var s,i,l,o=Math.abs(t),c=t<0?"-":"";if(r.match(/^00+$/))return c+B(o,r.length);if(r.match(/^[#?]+$/)){n=""+t;if(t===0)n="";return n.length>r.length?n:Ce(r.substr(0,r.length-n.length))+n}if(s=r.match(be))return ke(s,o,c);if(r.match(/^#+0+$/))return c+B(o,r.length-r.indexOf("0"));if(s=r.match(ye)){n=(""+t).replace(/^([^\.]+)$/,"$1."+Ce(s[1])).replace(/\.$/,"."+Ce(s[1]));n=n.replace(/\.(\d*)$/,function(e,r){return"."+r+Cr("0",Ce(s[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(s=r.match(/^(0*)\.(#*)$/)){return c+(""+o).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,s[1].length?"0.":".")}if(s=r.match(/^#{1,3},##0(\.?)$/))return c+de(""+o);if(s=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Ne(e,r,-t):de(""+t)+"."+Cr("0",s[1].length)}if(s=r.match(/^#,#*,#0/))return Ne(e,r.replace(/^#,#*,/,""),t);if(s=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=L(Ne(e,r.replace(/[\\-]/g,""),t));i=0;return L(L(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return i-1||t=="\\"&&e.charAt(r+1)=="-"&&"0#".indexOf(e.charAt(r+2))>-1)){}break;case"?":while(e.charAt(++r)===t){}break;case"*":++r;if(e.charAt(r)==" "||e.charAt(r)=="*")++r;break;case"(":;case")":++r;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":while(r-1){}break;case" ":++r;break;default:++r;break;}}return false}function Be(e,r,t,a){var n=[],s="",i=0,l="",o="t",c,f,u;var h="H";while(i=12?e.charAt(i+2):l;p.t="T";h="h";i+=3}else if(e.substr(i,5).toUpperCase()==="AM/PM"){if(c!=null)p.v=c.H>=12?"PM":"AM";p.t="T";i+=5;h="h"}else if(e.substr(i,5).toUpperCase()==="上午/下午"){if(c!=null)p.v=c.H>=12?"下午":"上午";p.t="T";i+=5;h="h"}else{p.t="t";++i}if(c==null&&p.t==="T")return"";n[n.length]=p;o=l;break;case"[":s=l;while(e.charAt(i++)!=="]"&&i-1){s=(s.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!Le(e))n[n.length]={t:"t",v:s}}break;case".":if(c!=null){s=l;while(++i-1)s+=l;n[n.length]={t:"n",v:s};break;case"?":s=l;while(e.charAt(++i)===l)s+=l;n[n.length]={t:l,v:s};o=l;break;case"*":++i;if(e.charAt(i)==" "||e.charAt(i)=="*")++i;break;case"(":;case")":n[n.length]={t:a===1?"t":l,v:l};++i;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":s=l;while(i-1)s+=e.charAt(i);n[n.length]={t:"D",v:s};break;case" ":n[n.length]={t:l,v:l};++i;break;case"$":n[n.length]={t:"t",v:"$"};++i;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxzP".indexOf(l)===-1)throw new Error("unrecognized character "+l+" in "+e);n[n.length]={t:"t",v:l};++i;break;}}var v=0,g=0,b;for(i=n.length-1,o="t";i>=0;--i){switch(n[i].t){case"h":;case"H":n[i].t=h;o="h";if(v<1)v=1;break;case"s":if(b=n[i].v.match(/\.0+$/))g=Math.max(g,b[0].length-1);if(v<3)v=3;case"d":;case"y":;case"M":;case"e":o=n[i].t;break;case"m":if(o==="s"){n[i].t="M";if(v<2)v=2}break;case"X":break;case"Z":if(v<1&&n[i].v.match(/[Hh]/))v=1;if(v<2&&n[i].v.match(/[Mm]/))v=2;if(v<3&&n[i].v.match(/[Ss]/))v=3;}}switch(v){case 0:break;case 1:if(c.u>=.5){c.u=0;++c.S}if(c.S>=60){c.S=0;++c.M}if(c.M>=60){c.M=0;++c.H}break;case 2:if(c.u>=.5){c.u=0;++c.S}if(c.S>=60){c.S=0;++c.M}break;}var w="",k;for(i=0;i0){if(w.charCodeAt(0)==40){x=r<0&&w.charCodeAt(0)===45?-r:r;S=Pe("n",w,x)}else{x=r<0&&a>1?-r:r;S=Pe("n",w,x);if(x<0&&n[0]&&n[0].t=="t"){S=S.substr(1);n[0].v="-"+n[0].v}}k=S.length-1;var C=n.length;for(i=0;i-1){C=i;break}var _=n.length;if(C===n.length&&S.indexOf("E")===-1){for(i=n.length-1;i>=0;--i){if(n[i]==null||"n?".indexOf(n[i].t)===-1)continue;if(k>=n[i].v.length-1){k-=n[i].v.length;n[i].v=S.substr(k+1,n[i].v.length)}else if(k<0)n[i].v="";else{n[i].v=S.substr(0,k+1);k=-1}n[i].t="t";_=i}if(k>=0&&_=0;--i){if(n[i]==null||"n?".indexOf(n[i].t)===-1)continue;f=n[i].v.indexOf(".")>-1&&i===C?n[i].v.indexOf(".")-1:n[i].v.length-1;y=n[i].v.substr(f+1);for(;f>=0;--f){if(k>=0&&(n[i].v.charAt(f)==="0"||n[i].v.charAt(f)==="#"))y=S.charAt(k--)+y}n[i].v=y;n[i].t="t";_=i}if(k>=0&&_-1&&i===C?n[i].v.indexOf(".")+1:0;y=n[i].v.substr(0,f);for(;f-1){x=a>1&&r<0&&i>0&&n[i-1].v==="-"?-r:r;n[i].v=Pe(n[i].t,n[i].v,x);n[i].t="t"}var A="";for(i=0;i!==n.length;++i)if(n[i]!=null)A+=n[i].v;return A}var ze=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function $e(e,r){if(r==null)return false;var t=parseFloat(r[2]);switch(r[1]){case"=":if(e==t)return true;break;case">":if(e>t)return true;break;case"<":if(e":if(e!=t)return true;break;case">=":if(e>=t)return true;break;case"<=":if(e<=t)return true;break;}return false}function We(e,r){var t=Ie(e);var a=t.length,n=t[a-1].indexOf("@");if(a<4&&n>-1)--a;if(t.length>4)throw new Error("cannot find right format for |"+t.join("|")+"|");if(typeof r!=="number")return[4,t.length===4||n>-1?t[t.length-1]:"@"];switch(t.length){case 1:t=n>-1?["General","General","General",t[0]]:[t[0],t[0],t[0],"@"];break;case 2:t=n>-1?[t[0],t[0],t[0],t[1]]:[t[0],t[1],t[0],"@"];break;case 3:t=n>-1?[t[0],t[1],t[0],t[2]]:[t[0],t[1],t[2],"@"];break;case 4:break;}var s=r>0?t[0]:r<0?t[1]:t[2];if(t[0].indexOf("[")===-1&&t[1].indexOf("[")===-1)return[a,s];if(t[0].match(/\[[=<>]/)!=null||t[1].match(/\[[=<>]/)!=null){var i=t[0].match(ze);var l=t[1].match(ze);return $e(r,i)?[a,t[0]]:$e(r,l)?[a,t[1]]:[a,t[i!=null&&l!=null?2:1]]}return[a,s]}function Ue(e,r,t){if(t==null)t={};var a="";switch(typeof e){case"string":if(e=="m/d/yy"&&t.dateNF)a=t.dateNF;else a=e;break;case"number":if(e==14&&t.dateNF)a=t.dateNF;else a=(t.table!=null?t.table:K)[e];if(a==null)a=t.table&&t.table[Z[e]]||K[Z[e]];if(a==null)a=q[e]||"General";break;}if(X(a,0))return fe(r,t);if(r instanceof Date)r=ne(r,t.date1904);var n=We(a,r);if(X(n[1]))return fe(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return Be(n[1],r,t,n[0])}function je(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(K[t]==undefined){if(r<0)r=t;continue}if(K[t]==e){r=t;break}}if(r<0)r=391}K[r]=e;return r}function He(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)je(e[r],r)}function Ve(){K=J()}var Xe={format:Ue,load:je,_table:K,load_table:He,parse_date_code:ee,is_date:Le,get_table:function Ec(){return Xe._table=K}};var Ge={5:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',23:"General",24:"General",25:"General",26:"General",27:"m/d/yy",28:"m/d/yy",29:"m/d/yy",30:"m/d/yy",31:"m/d/yy",32:"h:mm:ss",33:"h:mm:ss",34:"h:mm:ss",35:"h:mm:ss",36:"m/d/yy",41:'_(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* (#,##0);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)',50:"m/d/yy",51:"m/d/yy",52:"m/d/yy",53:"m/d/yy",54:"m/d/yy",55:"m/d/yy",56:"m/d/yy",57:"m/d/yy",58:"m/d/yy",59:"0",60:"0.00",61:"#,##0",62:"#,##0.00",63:'"$"#,##0_);\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',67:"0%",68:"0.00%",69:"# ?/?",70:"# ??/??",71:"m/d/yy",72:"m/d/yy",73:"d-mmm-yy",74:"d-mmm",75:"mmm-yy",76:"h:mm",77:"h:mm:ss",78:"m/d/yy h:mm",79:"mm:ss",80:"[h]:mm:ss",81:"mmss.0"};var Ye=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function Je(e){var r=typeof e=="number"?K[e]:e;r=r.replace(Ye,"(\\d+)");return new RegExp("^"+r+"$")}function Ke(e,r,t){var a=-1,n=-1,s=-1,i=-1,l=-1,o=-1;(r.match(Ye)||[]).forEach(function(e,r){var c=parseInt(t[r+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=c;break;case"d":s=c;break;case"h":i=c;break;case"s":o=c;break;case"m":if(i>=0)l=c;else n=c;break;}});if(o>=0&&l==-1&&n>=0){l=n;n=-1}var c=(""+(a>=0?a:(new Date).getFullYear())).slice(-4)+"-"+("00"+(n>=1?n:1)).slice(-2)+"-"+("00"+(s>=1?s:1)).slice(-2);if(c.length==7)c="0"+c;if(c.length==8)c="20"+c;var f=("00"+(i>=0?i:0)).slice(-2)+":"+("00"+(l>=0?l:0)).slice(-2)+":"+("00"+(o>=0?o:0)).slice(-2);if(i==-1&&l==-1&&o==-1)return c;if(a==-1&&n==-1&&s==-1)return f;return c+"T"+f}var Ze={"d.m":"d\\.m"};function qe(e,r){return je(Ze[e]||e,r)}var Qe=function(){var e={};e.version="1.2.0";function r(){var e=0,r=new Array(256);for(var t=0;t!=256;++t){e=t;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;r[t]=e}return typeof Int32Array!=="undefined"?new Int32Array(r):r; -}var t=r();function a(e){var r=0,t=0,a=0,n=typeof Int32Array!=="undefined"?new Int32Array(4096):new Array(4096);for(a=0;a!=256;++a)n[a]=e[a];for(a=0;a!=256;++a){t=e[a];for(r=256+a;r<4096;r+=256)t=n[r]=t>>>8^e[t&255]}var s=[];for(a=1;a!=16;++a)s[a-1]=typeof Int32Array!=="undefined"?n.subarray(a*256,a*256+256):n.slice(a*256,a*256+256);return s}var n=a(t);var s=n[0],i=n[1],l=n[2],o=n[3],c=n[4];var f=n[5],u=n[6],h=n[7],d=n[8],m=n[9];var p=n[10],v=n[11],g=n[12],b=n[13],w=n[14];function k(e,r){var a=r^-1;for(var n=0,s=e.length;n>>8^t[(a^e.charCodeAt(n++))&255];return~a}function y(e,r){var a=r^-1,n=e.length-15,k=0;for(;k>8&255]^g[e[k++]^a>>16&255]^v[e[k++]^a>>>24]^p[e[k++]]^m[e[k++]]^d[e[k++]]^h[e[k++]]^u[e[k++]]^f[e[k++]]^c[e[k++]]^o[e[k++]]^l[e[k++]]^i[e[k++]]^s[e[k++]]^t[e[k++]];n+=15;while(k>>8^t[(a^e[k++])&255];return~a}function x(e,r){var a=r^-1;for(var n=0,s=e.length,i=0,l=0;n>>8^t[(a^i)&255]}else if(i<2048){a=a>>>8^t[(a^(192|i>>6&31))&255];a=a>>>8^t[(a^(128|i&63))&255]}else if(i>=55296&&i<57344){i=(i&1023)+64;l=e.charCodeAt(n++)&1023;a=a>>>8^t[(a^(240|i>>8&7))&255];a=a>>>8^t[(a^(128|i>>2&63))&255];a=a>>>8^t[(a^(128|l>>6&15|(i&3)<<4))&255];a=a>>>8^t[(a^(128|l&63))&255]}else{a=a>>>8^t[(a^(224|i>>12&15))&255];a=a>>>8^t[(a^(128|i>>6&63))&255];a=a>>>8^t[(a^(128|i&63))&255]}}return~a}e.table=t;e.bstr=k;e.buf=y;e.str=x;return e}();var er=function Tc(){var e={};e.version="1.2.2";function r(e,r){var t=e.split("/"),a=r.split("/");for(var n=0,s=0,i=Math.min(t.length,a.length);n>>1;e._W(2,t);var a=r.getFullYear()-1980;a=a<<4|r.getMonth()+1;a=a<<5|r.getDate();e._W(2,a)}function s(e){var r=e._R(2)&65535;var t=e._R(2)&65535;var a=new Date;var n=t&31;t>>>=5;var s=t&15;t>>>=4;a.setMilliseconds(0);a.setFullYear(t+1980);a.setMonth(s-1);a.setDate(n);var i=r&31;r>>>=5;var l=r&63;r>>>=6;a.setHours(r);a.setMinutes(l);a.setSeconds(i<<1);return a}function i(e){ga(e,0);var r={};var t=0;while(e.l<=e.length-4){var a=e._R(2);var n=e._R(2),s=e.l+n;var i={};switch(a){case 21589:{t=e._R(1);if(t&1)i.mtime=e._R(4);if(n>5){if(t&2)i.atime=e._R(4);if(t&4)i.ctime=e._R(4)}if(i.mtime)i.mt=new Date(i.mtime*1e3)}break;case 1:{var l=e._R(4),o=e._R(4);i.usz=o*Math.pow(2,32)+l;l=e._R(4);o=e._R(4);i.csz=o*Math.pow(2,32)+l}break;}e.l=s;r[a]=i}return r}var l;function o(){return l||(l=rr)}function c(e,r){if(e[0]==80&&e[1]==75)return Oe(e,r);if((e[0]|32)==109&&(e[1]|32)==105)return $e(e,r);if(e.length<512)throw new Error("CFB file size "+e.length+" < 512");var t=3;var a=512;var n=0;var s=0;var i=0;var l=0;var o=0;var c=[];var m=e.slice(0,512);ga(m,0);var v=f(m);t=v[0];switch(t){case 3:a=512;break;case 4:a=4096;break;case 0:if(v[1]==0)return Oe(e,r);default:throw new Error("Major Version: Expected 3 or 4 saw "+t);}if(a!==512){m=e.slice(0,a);ga(m,28)}var w=e.slice(0,a);u(m,t);var k=m._R(4,"i");if(t===3&&k!==0)throw new Error("# Directory Sectors: Expected 0 saw "+k);m.l+=4;i=m._R(4,"i");m.l+=4;m.chk("00100000","Mini Stream Cutoff Size: ");l=m._R(4,"i");n=m._R(4,"i");o=m._R(4,"i");s=m._R(4,"i");for(var y=-1,x=0;x<109;++x){y=m._R(4,"i");if(y<0)break;c[x]=y}var S=h(e,a);p(o,s,S,a,c);var C=g(S,i,c,a);C[i].name="!Directory";if(n>0&&l!==B)C[l].name="!MiniFAT";C[c[0]].name="!FAT";C.fat_addrs=c;C.ssz=a;var _={},A=[],F=[],E=[];b(i,C,S,A,n,_,F,l);d(F,E,A);A.shift();var T={FileIndex:F,FullPaths:E};if(r&&r.raw)T.raw={header:w,sectors:S};return T}function f(e){if(e[e.l]==80&&e[e.l+1]==75)return[0,0];e.chk(z,"Header Signature: ");e.l+=16;var r=e._R(2,"u");return[e._R(2,"u"),r]}function u(e,r){var t=9;e.l+=2;switch(t=e._R(2)){case 9:if(r!=3)throw new Error("Sector Shift: Expected 9 saw "+t);break;case 12:if(r!=4)throw new Error("Sector Shift: Expected 12 saw "+t);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+t);}e.chk("0600","Mini Sector Shift: ");e.chk("000000000000","Reserved: ")}function h(e,r){var t=Math.ceil(e.length/r)-1;var a=[];for(var n=1;n0&&i>=0){s.push(r.slice(i*L,i*L+L));n-=L;i=ca(t,i*4)}if(s.length===0)return wa(0);return N(s).slice(0,e.size)}function p(e,r,t,a,n){var s=B;if(e===B){if(r!==0)throw new Error("DIFAT chain shorter than expected")}else if(e!==-1){var i=t[e],l=(a>>>2)-1;if(!i)return;for(var o=0;o=1)p(ca(i,a-4),r-1,t,a,n)}}function v(e,r,t,a,n){var s=[],i=[];if(!n)n=[];var l=a-1,o=0,c=0;for(o=r;o>=0;){n[o]=true;s[s.length]=o;i.push(e[o]);var f=t[Math.floor(o*4/a)];c=o*4&l;if(a<4+c)throw new Error("FAT boundary crossed: "+o+" 4 "+a);if(!e[f])break;o=ca(e[f],c)}return{nodes:s,data:Bt([i])}}function g(e,r,t,a){var n=e.length,s=[];var i=[],l=[],o=[];var c=a-1,f=0,u=0,h=0,d=0;for(f=0;f=n)h-=n;if(i[h])continue;o=[];var m=[];for(u=h;u>=0;){m[u]=true;i[u]=true;l[l.length]=u;o.push(e[u]);var p=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[p])break;u=ca(e[p],d);if(m[u])break}s[h]={nodes:l,data:Bt([o])}}return s}function b(e,r,t,a,n,s,i,l){var o=0,c=a.length?2:0;var f=r[e].data;var u=0,h=0,d;for(;u0&&o!==B)r[o].name="!StreamData"}else if(g.size>=4096){g.storage="fat";if(r[g.start]===undefined)r[g.start]=v(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(o!==B&&g.start!==B&&r[o]){g.content=m(g,r[o].data,(r[l]||{}).data)}}if(g.content)ga(g.content,0);s[d]=g;i.push(g)}}function w(e,r){return new Date((oa(e,r+4)/1e7*Math.pow(2,32)+oa(e,r)/1e7-11644473600)*1e3)}function y(e,r){o();return c(l.readFileSync(e),r)}function _(e,r){var t=r&&r.type;if(!t){if(S&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return y(e,r);case"base64":return c(E(x(e)),r);case"binary":return c(E(e),r);}return c(e,r)}function T(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;D(e)}function D(e){var r="Sh33tJ5";if(er.find(e,"/"+r))return;var t=wa(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);O(e)}function O(e,n){T(e);var s=false,i=false;for(var l=e.FullPaths.length-1;l>=0;--l){var o=e.FileIndex[l];switch(o.type){case 0:if(i)s=true;else{e.FileIndex.pop();e.FullPaths.pop()}break;case 1:;case 2:;case 5:i=true;if(isNaN(o.R*o.L*o.C))s=true;if(o.R>-1&&o.L>-1&&o.R==o.L)s=true;break;default:s=true;break;}}if(!s&&!n)return;var c=new Date(1987,1,19),f=0;var u=Object.create?Object.create(null):{};var h=[];for(l=0;l1?1:-1;m.size=0;m.type=5}else if(p.slice(-1)=="/"){for(f=l+1;f=h.length?-1:f;for(f=l+1;f=h.length?-1:f;m.type=1}else{if(t(e.FullPaths[l+1]||"")==t(p))m.R=l+1;m.type=2}}}function M(e,r){var t=r||{};if(t.fileType=="mad")return We(e,t);O(e);switch(t.fileType){case"zip":return Ne(e,t);}var a=function(e){var r=0,t=0;for(var a=0;a0){if(s<4096)r+=s+63>>6;else t+=s+511>>9}}var i=e.FullPaths.length+3>>2;var l=r+7>>3;var o=r+127>>7;var c=l+t+i+o;var f=c+127>>7;var u=f<=109?0:Math.ceil((f-109)/127);while(c+f+u+127>>7>f)u=++f<=109?0:Math.ceil((f-109)/127);var h=[1,u,f,o,i,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=wa(a[7]<<9);var s=0,i=0;{for(s=0;s<8;++s)n._W(1,$[s]);for(s=0;s<8;++s)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(s=0;s<3;++s)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:B);n._W(4,a[3]);n._W(-4,a[1]?a[0]-1:B);n._W(4,a[1]);for(s=0;s<109;++s)n._W(-4,s>9)}l(a[6]+7>>3);while(n.l&511)n._W(-4,U.ENDOFCHAIN);i=s=0;for(o=0;o=4096)continue;f.start=i;l(c+63>>6)}while(n.l&511)n._W(-4,U.ENDOFCHAIN);for(s=0;s32){console.error("Name "+h+" will be truncated to "+h.slice(0,32));h=h.slice(0,32)}c=2*(h.length+1);n._W(64,h,"utf16le");n._W(2,c);n._W(1,f.type);n._W(1,f.color);n._W(-4,f.L);n._W(-4,f.R);n._W(-4,f.C);if(!f.clsid)for(o=0;o<4;++o)n._W(4,0);else n._W(16,f.clsid,"hex");n._W(4,f.state||0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,f.start);n._W(4,f.size);n._W(4,0)}for(s=1;s=4096){n.l=f.start+1<<9;if(S&&Buffer.isBuffer(f.content)){f.content.copy(n,n.l,0,f.size);n.l+=f.size+511&-512}else{for(o=0;o0&&f.size<4096){if(S&&Buffer.isBuffer(f.content)){f.content.copy(n,n.l,0,f.size);n.l+=f.size+63&-64}else{for(o=0;o>16|r>>8|r)&255}var ee=typeof Uint8Array!=="undefined";var re=ee?new Uint8Array(1<<8):[];for(var te=0;te<1<<8;++te)re[te]=Q(te);function ae(e,r){var t=re[e&255];if(r<=8)return t>>>8-r;t=t<<8|re[e>>8&255];if(r<=16)return t>>>16-r;t=t<<8|re[e>>16&255];return t>>>24-r}function ne(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=6?0:e[a+1]<<8))>>>t&3}function se(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=5?0:e[a+1]<<8))>>>t&7}function ie(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=4?0:e[a+1]<<8))>>>t&15}function le(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=3?0:e[a+1]<<8))>>>t&31}function oe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=1?0:e[a+1]<<8))>>>t&127}function ce(e,r,t){var a=r&7,n=r>>>3,s=(1<>>a;if(t<8-a)return i&s;i|=e[n+1]<<8-a;if(t<16-a)return i&s;i|=e[n+2]<<16-a;if(t<24-a)return i&s;i|=e[n+3]<<24-a;return i&s}function fe(e,r,t){var a=r&7,n=r>>>3;if(a<=5)e[n]|=(t&7)<>8-a}return r+3}function ue(e,r,t){var a=r&7,n=r>>>3;t=(t&1)<>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t;return r+8}function de(e,r,t){var a=r&7,n=r>>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t&255;e[n+2]=t>>>8;return r+16}function me(e,r){var t=e.length,a=2*t>r?2*t:r+5,n=0;if(t>=r)return e;if(S){var s=F(a);if(e.copy)e.copy(s);else for(;n>a-u;for(i=(1<=0;--i)r[l|i<0)r[r.l++]=e[t++]}return r.l}function s(r,t){var n=0;var s=0;var i=ee?new Uint16Array(32768):[];while(s0)t[t.l++]=r[s++];n=t.l*8;continue}n=fe(t,n,+!!(s+l==r.length)+2);var o=0;while(l-- >0){var c=r[s];o=(o<<5^c)&32767;var f=-1,u=0;if(f=i[o]){f|=s&~32767;if(f>s)f-=32768;if(f2){c=a[u];if(c<=22)n=he(t,n,re[c+1]>>1)-1;else{he(t,n,3);n+=5;he(t,n,re[c-23]>>5);n+=3}var h=c<8?0:c-4>>2;if(h>0){de(t,n,u-Z[c]);n+=h}c=e[s-f];n=he(t,n,re[c]>>3);n-=3;var d=c<4?0:c-2>>1;if(d>0){de(t,n,s-f-q[c]);n+=d}for(var m=0;m>8-m;for(var p=(1<<7-m)-1;p>=0;--p)Ce[d|p<>>=3){case 16:s=3+ne(e,r);r+=2;d=v[v.length-1];while(s-- >0)v.push(d);break;case 17:s=3+se(e,r);r+=3;while(s-- >0)v.push(0);break;case 18:s=11+oe(e,r);r+=7;while(s-- >0)v.push(0);break;default:v.push(d);if(o>>0;var l=0,o=0;while((a&1)==0){a=se(e,t);t+=3;if(a>>>1==0){if(t&7)t+=8-(t&7);var c=e[t>>>3]|e[(t>>>3)+1]<<8;t+=32;if(c>0){if(!r&&i0){n[s++]=e[t>>>3];t+=8}}continue}else if(a>>1==1){l=9;o=5}else{t=Fe(e,t);l=_e;o=Ae}for(;;){if(!r&&i>>1==1?ge[f]:xe[f];t+=u&15;u>>>=4;if((u>>>8&255)===0)n[s++]=u;else if(u==256)break;else{u-=257;var h=u<8?0:u-4>>2;if(h>5)h=0;var d=s+Z[u];if(h>0){d+=ce(e,t,h);t+=h}f=ce(e,t,o);u=a>>>1==1?be[f]:Se[f];t+=u&15;u>>>=4;var m=u<4?0:u-2>>1;var p=q[u];if(m>0){p+=ce(e,t,m);t+=m}if(!r&&i>>3];return[n.slice(0,s),t+7>>>3]}function Te(e,r){var t=e.slice(e.l||0);var a=Ee(t,r);e.l+=a[1];return a[0]}function De(e,r){if(e){if(typeof console!=="undefined")console.error(r)}else throw new Error(r)}function Oe(e,r){var t=e;ga(t,0);var a=[],n=[];var s={FileIndex:a,FullPaths:n};T(s,{root:r.root});var l=t.length-4;while((t[l]!=80||t[l+1]!=75||t[l+2]!=5||t[l+3]!=6)&&l>=0)--l;t.l=l+4;t.l+=4;var o=t._R(2);t.l+=6;var c=t._R(4);t.l=c;for(l=0;l0){t=t.slice(0,t.length-1);t=t.slice(0,t.lastIndexOf("/")+1);if(s.slice(0,t.length)==t)break}}var i=(a[1]||"").match(/boundary="(.*?)"/);if(!i)throw new Error("MAD cannot find boundary");var l="--"+(i[1]||"");var o=[],c=[];var f={FileIndex:o,FullPaths:c};T(f);var u,h=0;for(n=0;n=32&&d<128)++u;var p=u>=h*4/5;n.push(a);n.push("Content-Location: "+(t.root||"file:///C:/SheetJS/")+i);n.push("Content-Transfer-Encoding: "+(p?"quoted-printable":"base64"));n.push("Content-Type: "+Ie(l,i));n.push("");n.push(p?Le(f):Re(f))}n.push(a+"--\r\n");return n.join("\r\n")}function Ue(e){var r={};T(r,e);return r}function je(e,r,t,n){var s=n&&n.unsafe;if(!s)T(e);var i=!s&&er.find(e,r);if(!i){var l=e.FullPaths[0];if(r.slice(0,l.length)==l)l=r;else{if(l.slice(-1)!="/")l+="/";l=(l+r).replace("//","/")}i={name:a(r),type:2};e.FileIndex.push(i);e.FullPaths.push(l);if(!s)er.utils.cfb_gc(e)}i.content=t;i.size=t?t.length:0;if(n){if(n.CLSID)i.clsid=n.CLSID;if(n.mt)i.mt=n.mt;if(n.ct)i.ct=n.ct}return i}function He(e,r){T(e);var t=er.find(e,r);if(t)for(var a=0;a3)a=true;switch(n[s].slice(n[s].length-1)){case"Y":throw new Error("Unsupported ISO Duration Field: "+n[s].slice(n[s].length-1));case"D":t*=24;case"H":t*=60;case"M":if(!a)throw new Error("Unsupported ISO Duration Field: M");else t*=60;case"S":break;}r+=t*parseInt(n[s],10)}return r}var br=new Date("2017-02-19T19:06:09.000Z");var wr=isNaN(br.getFullYear())?new Date("2/19/17"):br;var kr=wr.getFullYear()==2017;function yr(e,r){var t=new Date(e);if(kr){if(r>0)t.setTime(t.getTime()+t.getTimezoneOffset()*60*1e3);else if(r<0)t.setTime(t.getTime()-t.getTimezoneOffset()*60*1e3);return t}if(e instanceof Date)return e;if(wr.getFullYear()==1917&&!isNaN(t.getFullYear())){var a=t.getFullYear();if(e.indexOf(""+a)>-1)return t;t.setFullYear(t.getFullYear()+100);return t}var n=e.match(/\d+/g)||["2017","2","19","0","0","0"];var s=new Date(+n[0],+n[1]-1,+n[2],+n[3]||0,+n[4]||0,+n[5]||0);if(e.indexOf("Z")>-1)s=new Date(s.getTime()-s.getTimezoneOffset()*60*1e3);return s}function xr(e,r){if(S&&Buffer.isBuffer(e)){if(r&&_){if(e[0]==255&&e[1]==254)return gt(e.slice(2).toString("utf16le"));if(e[1]==254&&e[2]==255)return gt(h(e.slice(2).toString("binary")))}return e.toString("binary")}if(typeof TextDecoder!=="undefined")try{if(r){if(e[0]==255&&e[1]==254)return gt(new TextDecoder("utf-16le").decode(e.slice(2)));if(e[0]==254&&e[1]==255)return gt(new TextDecoder("utf-16be").decode(e.slice(2)))}var t={"€":"€","‚":"‚","ƒ":"ƒ","„":"„","…":"…","†":"†","‡":"‡","ˆ":"ˆ","‰":"‰","Š":"Š","‹":"‹","Œ":"Œ","Ž":"Ž","‘":"‘","’":"’","“":"“","”":"”","•":"•","–":"–","—":"—","˜":"˜","™":"™","š":"š","›":"›","œ":"œ","ž":"ž","Ÿ":"Ÿ"};if(Array.isArray(e))e=new Uint8Array(e);return new TextDecoder("latin1").decode(e).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g,function(e){return t[e]||e})}catch(a){}var n=[];for(var s=0;s!=e.length;++s)n.push(String.fromCharCode(e[s]));return n.join("")}function Sr(e){if(typeof JSON!="undefined"&&!Array.isArray(e))return JSON.parse(JSON.stringify(e));if(typeof e!="object"||e==null)return e;if(e instanceof Date)return new Date(e.getTime());var r={};for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))r[t]=Sr(e[t]);return r}function Cr(e,r){var t="";while(t.length3&&Er.indexOf(r)==-1)return s}else if(r.replace(/[ap]m?/,"").match(/[a-z]/))return s;if(i<0||i>8099||e.match(/[^-0-9:,\/\\]/))return s;return n}var Dr=function(){var e="abacaba".split(/(:?b)/i).length==5;return function r(t,a,n){if(e||typeof a=="string")return t.split(a);var s=t.split(a),i=[s[0]];for(var l=1;l\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g;var Xr=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm,Gr=/<[^>]*>/g;var Yr=Hr.match(Xr)?Xr:Gr;var Jr=/<\w*:/,Kr=/<(\/?)\w+:/;function Zr(e,r,t){var a={};var n=0,s=0;for(;n!==e.length;++n)if((s=e.charCodeAt(n))===32||s===10||s===13)break;if(!r)a[0]=e.slice(0,n);if(n===e.length)return a;var i=e.match(Vr),l=0,o="",c=0,f="",u="",h=1;if(i)for(c=0;c!=i.length;++c){u=i[c];for(s=0;s!=u.length;++s)if(u.charCodeAt(s)===61)break;f=u.slice(0,s).trim();while(u.charCodeAt(s+1)==32)++s;h=(n=u.charCodeAt(s+1))==34||n==39?1:0;o=u.slice(s+1+h,u.length-h);for(l=0;l!=f.length;++l)if(f.charCodeAt(l)===58)break;if(l===f.length){if(f.indexOf("_")>0)f=f.slice(0,f.indexOf("_"));a[f]=o;if(!t)a[f.toLowerCase()]=o}else{var d=(l===5&&f.slice(0,5)==="xmlns"?"xmlns":"")+f.slice(l+1);if(a[d]&&f.slice(l-3,l)=="ext")continue;a[d]=o;if(!t)a[d.toLowerCase()]=o}}return a}function qr(e){return e.replace(Kr,"<$1")}var Qr={""":'"',"'":"'",">":">","<":"<","&":"&"};var et=or(Qr);var rt=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;function t(a){var n=a+"",s=n.indexOf("-1?16:10))||e}).replace(r,function(e,r){return String.fromCharCode(parseInt(r,16))});var i=n.indexOf("]]>");return t(n.slice(0,s))+n.slice(s+9,i)+t(n.slice(i+3))}return function a(e,r){var a=t(e);return r?a.replace(/\r\n/g,"\n"):a}}();var tt=/[&<>'"]/g,at=/[\u0000-\u0008\u000b-\u001f\uFFFE-\uFFFF]/g;function nt(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(at,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function st(e){return nt(e).replace(/ /g,"_x0020_")}var it=/[\u0000-\u001f]/g;function lt(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(/\n/g,"
").replace(it,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function ot(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(it,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var ct=function(){var e=/&#(\d+);/g;function r(e,r){return String.fromCharCode(parseInt(r,10))}return function t(a){return a.replace(e,r)}}();function ft(e){return e.replace(/(\r\n|[\r\n])/g," ")}function ut(e){switch(e){case 1:;case true:;case"1":;case"true":return true;case 0:;case false:;case"0":;case"false":return false;}return false}function ht(e){var r="",t=0,a=0,n=0,s=0,i=0,l=0;while(t191&&a<224){i=(a&31)<<6;i|=n&63;r+=String.fromCharCode(i);continue}s=e.charCodeAt(t++);if(a<240){r+=String.fromCharCode((a&15)<<12|(n&63)<<6|s&63);continue}i=e.charCodeAt(t++);l=((a&7)<<18|(n&63)<<12|(s&63)<<6|i&63)-65536;r+=String.fromCharCode(55296+(l>>>10&1023));r+=String.fromCharCode(56320+(l&1023))}return r}function dt(e){var r=A(2*e.length),t,a,n=1,s=0,i=0,l;for(a=0;a>>10&1023);t=56320+(t&1023)}if(i!==0){r[s++]=i&255;r[s++]=i>>>8;i=0}r[s++]=t%256;r[s++]=t>>>8}return r.slice(0,s).toString("ucs2")}function mt(e){return C(e,"binary").toString("utf8")}var pt="foo bar baz☃🍣";var vt=S&&(mt(pt)==ht(pt)&&mt||dt(pt)==ht(pt)&&dt)||ht;var gt=S?function(e){return C(e,"utf8").toString("binary")}:function(e){var r=[],t=0,a=0,n=0;while(t>6)));r.push(String.fromCharCode(128+(a&63)));break;case a>=55296&&a<57344:a-=55296;n=e.charCodeAt(t++)-56320+(a<<10);r.push(String.fromCharCode(240+(n>>18&7)));r.push(String.fromCharCode(144+(n>>12&63)));r.push(String.fromCharCode(128+(n>>6&63)));r.push(String.fromCharCode(128+(n&63)));break;default:r.push(String.fromCharCode(224+(a>>12)));r.push(String.fromCharCode(128+(a>>6&63)));r.push(String.fromCharCode(128+(a&63)));}}return r.join("")};var bt=function(){var e={};return function r(t,a){var n=t+"|"+(a||"");if(e[n])return e[n];return e[n]=new RegExp("<(?:\\w+:)?"+t+'(?: xml:space="preserve")?(?:[^>]*)>([\\s\\S]*?)",a||"")}}();var wt=function(){var e=[["nbsp"," "],["middot","·"],["quot",'"'],["apos","'"],["gt",">"],["lt","<"],["amp","&"]].map(function(e){return[new RegExp("&"+e[0]+";","ig"),e[1]]});return function r(t){var a=t.replace(/^[\t\n\r ]+/,"").replace(/[\t\n\r ]+$/,"").replace(/>\s+/g,">").replace(/\s+/g,"\n").replace(/<[^>]*>/g,"");for(var n=0;n([\\s\\S]*?)","g")}}();var yt=/<\/?(?:vt:)?variant>/g,xt=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function At(e){return ir(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function Ft(e,r,t){return"<"+e+(t!=null?At(t):"")+(r!=null?(r.match(Ct)?' xml:space="preserve"':"")+">"+r+""}function Et(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function Tt(e,r){switch(typeof e){case"string":var t=Ft("vt:lpwstr",nt(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return Ft((e|0)==e?"vt:i4":"vt:r8",nt(String(e)));case"boolean":return Ft("vt:bool",e?"true":"false");}if(e instanceof Date)return Ft("vt:filetime",Et(e));throw new Error("Unable to serialize "+e)}function Dt(e){if(S&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return vt(D(M(e)));throw new Error("Bad input format: expected Buffer or string")}var Ot=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/](?:[^>=]|="[^"]*?")*)?>/gm;var Mt={CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",CT:"http://schemas.openxmlformats.org/package/2006/content-types",RELS:"http://schemas.openxmlformats.org/package/2006/relationships",TCMNT:"http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"};var Nt=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];var Pt={o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel",ss:"urn:schemas-microsoft-com:office:spreadsheet",dt:"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",mv:"http://macVmlSchemaUri",v:"urn:schemas-microsoft-com:vml",html:"http://www.w3.org/TR/REC-html40"};function It(e,r){var t=1-2*(e[r+7]>>>7);var a=((e[r+7]&127)<<4)+(e[r+6]>>>4&15);var n=e[r+6]&15;for(var s=5;s>=0;--s)n=n*256+e[r+s];if(a==2047)return n==0?t*Infinity:NaN;if(a==0)a=-1022;else{a-=1023;n+=Math.pow(2,52)}return t*Math.pow(2,a-52)*n}function Rt(e,r,t){var a=(r<0||1/r==-Infinity?1:0)<<7,n=0,s=0;var i=a?-r:r;if(!isFinite(i)){n=2047;s=isNaN(r)?26985:0}else if(i==0)n=s=0;else{n=Math.floor(Math.log(i)/Math.LN2);s=i*Math.pow(2,52-n);if(n<=-1023&&(!isFinite(s)||s>4|a}var Lt=function(e){var r=[],t=10240;for(var a=0;a0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map(function(e){return Buffer.isBuffer(e)?e:C(e)})):Lt(e)}:Lt;var zt=function(e,r,t){var a=[];for(var n=r;n0?Ht(e,r+4,r+4+t-1):""};var Xt=Vt;var Gt=function(e,r){var t=oa(e,r);return t>0?Ht(e,r+4,r+4+t-1):""};var Yt=Gt;var Jt=function(e,r){var t=2*oa(e,r);return t>0?Ht(e,r+4,r+4+t-1):""};var Kt=Jt;var Zt=function Oc(e,r){var t=oa(e,r);return t>0?$t(e,r+4,r+4+t):""};var qt=Zt;var Qt=function(e,r){var t=oa(e,r);return t>0?Ht(e,r+4,r+4+t):""};var ea=Qt;var ra=function(e,r){return It(e,r)};var ta=ra;var aa=function Mc(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(S){Xt=function Nc(e,r){if(!Buffer.isBuffer(e))return Vt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Yt=function Pc(e,r){if(!Buffer.isBuffer(e))return Gt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Kt=function Ic(e,r){if(!Buffer.isBuffer(e)||!_)return Jt(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};qt=function Rc(e,r){if(!Buffer.isBuffer(e)||!_)return Zt(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};ea=function Lc(e,r){if(!Buffer.isBuffer(e))return Qt(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};ta=function Bc(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return ra(e,r)};aa=function zc(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function na(){$t=function(e,r,t){return a.utils.decode(1200,e.slice(r,t)).replace(I,"")};Ht=function(e,r,t){return a.utils.decode(65001,e.slice(r,t))};Xt=function(e,r){var n=oa(e,r);return n>0?a.utils.decode(t,e.slice(r+4,r+4+n-1)):""};Yt=function(e,t){var n=oa(e,t);return n>0?a.utils.decode(r,e.slice(t+4,t+4+n-1)):""};Kt=function(e,r){var t=2*oa(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};qt=function(e,r){var t=oa(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t)):""};ea=function(e,r){var t=oa(e,r);return t>0?a.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof a!=="undefined")na();var sa=function(e,r){return e[r]};var ia=function(e,r){return e[r+1]*(1<<8)+e[r]};var la=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var oa=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var ca=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var fa=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function ua(e,t){var n="",s,i,l=[],o,c,f,u;switch(t){case"dbcs":u=this.l;if(S&&Buffer.isBuffer(this)&&_)n=this.slice(this.l,this.l+2*e).toString("utf16le");else for(f=0;f0?ca:fa)(this,this.l);this.l+=4;return s}else{i=oa(this,this.l);this.l+=4}return i;case 8:;case-8:if(t==="f"){if(e==8)i=ta(this,this.l);else i=ta([this[this.l+7],this[this.l+6],this[this.l+5],this[this.l+4],this[this.l+3],this[this.l+2],this[this.l+1],this[this.l+0]],0);this.l+=8;return i}else e=8;case 16:n=Ut(this,this.l,e);break;};}this.l+=e;return n}var ha=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255;e[t+2]=r>>>16&255;e[t+3]=r>>>24&255};var da=function(e,r,t){e[t]=r&255;e[t+1]=r>>8&255;e[t+2]=r>>16&255;e[t+3]=r>>24&255};var ma=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function pa(e,n,s){var i=0,l=0;if(s==="dbcs"){for(l=0;l!=n.length;++l)ma(this,n.charCodeAt(l),this.l+2*l);i=2*n.length}else if(s==="sbcs"||s=="cpstr"){if(typeof a!=="undefined"&&t==874){for(l=0;l!=n.length;++l){var o=a.utils.encode(t,n.charAt(l));this[this.l+l]=o[0]}i=n.length}else if(typeof a!=="undefined"&&s=="cpstr"){o=a.utils.encode(r,n);if(o.length==n.length)for(l=0;l>8}while(this.l>>=8;this[this.l+1]=n&255;break;case 3:i=3;this[this.l]=n&255;n>>>=8;this[this.l+1]=n&255;n>>>=8;this[this.l+2]=n&255;break;case 4:i=4;ha(this,n,this.l);break;case 8:i=8;if(s==="f"){Rt(this,n,this.l);break};case 16:break;case-4:i=4;da(this,n,this.l);break;}this.l+=i;return this}function va(e,r){var t=Ut(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function ga(e,r){e.l=r;e._R=ua;e.chk=va;e._W=pa}function ba(e,r){e.l+=r}function wa(e){var r=A(e);ga(r,0);return r}function ka(e,r,t){if(!e)return;var a,n,s;ga(e,e.l||0);var i=e.length,l=0,o=0;while(e.la.l){a=a.slice(0,a.l);a.l=a.length}if(a.length>0)e.push(a)}a=null};var s=function f(e){if(a&&e=128?1:0)+1;if(a>=128)++s;if(a>=16384)++s;if(a>=2097152)++s;var i=e.next(s);if(n<=127)i._W(1,n);else{i._W(1,(n&127)+128);i._W(1,n>>7)}for(var l=0;l!=4;++l){if(a>=128){i._W(1,(a&127)+128);a>>=7}else{i._W(1,a);break}}if(a>0&&aa(t))e.push(t)}function Sa(e,r,t){var a=Sr(e);if(r.s){if(a.cRel)a.c+=r.s.c;if(a.rRel)a.r+=r.s.r}else{if(a.cRel)a.c+=r.c;if(a.rRel)a.r+=r.r}if(!t||t.biff<12){while(a.c>=256)a.c-=256;while(a.r>=65536)a.r-=65536}return a}function Ca(e,r,t){var a=Sr(e);a.s=Sa(a.s,r.s,t);a.e=Sa(a.e,r.s,t);return a}function _a(e,r){if(e.cRel&&e.c<0){e=Sr(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=Sr(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=La(e);if(!e.cRel&&e.cRel!=null)t=Na(t);if(!e.rRel&&e.rRel!=null)t=Ta(t);return t}function Aa(e,r){if(e.s.r==0&&!e.s.rRel){if(e.e.r==(r.biff>=12?1048575:r.biff>=8?65536:16384)&&!e.e.rRel){return(e.s.cRel?"":"$")+Ma(e.s.c)+":"+(e.e.cRel?"":"$")+Ma(e.e.c)}}if(e.s.c==0&&!e.s.cRel){if(e.e.c==(r.biff>=12?16383:255)&&!e.e.cRel){return(e.s.rRel?"":"$")+Ea(e.s.r)+":"+(e.e.rRel?"":"$")+Ea(e.e.r)}}return _a(e.s,r.biff)+":"+_a(e.e,r.biff)}function Fa(e){return parseInt(Da(e),10)-1}function Ea(e){return""+(e+1)}function Ta(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function Da(e){return e.replace(/\$(\d+)$/,"$1")}function Oa(e){var r=Pa(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function Ma(e){if(e<0)throw new Error("invalid column "+e);var r="";for(++e;e;e=Math.floor((e-1)/26))r=String.fromCharCode((e-1)%26+65)+r;return r}function Na(e){return e.replace(/^([A-Z])/,"$$$1")}function Pa(e){return e.replace(/^\$([A-Z])/,"$1")}function Ia(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function Ra(e){var r=0,t=0;for(var a=0;a=48&&n<=57)r=10*r+(n-48);else if(n>=65&&n<=90)t=26*t+(n-64)}return{c:t-1,r:r-1}}function La(e){var r=e.c+1;var t="";for(;r;r=(r-1)/26|0)t=String.fromCharCode((r-1)%26+65)+t;return t+(e.r+1)}function Ba(e){var r=e.indexOf(":");if(r==-1)return{s:Ra(e),e:Ra(e)};return{s:Ra(e.slice(0,r)),e:Ra(e.slice(r+1))}}function za(e,r){if(typeof r==="undefined"||typeof r==="number"){return za(e.s,e.e)}if(typeof e!=="string")e=La(e);if(typeof r!=="string")r=La(r);return e==r?e:e+":"+r}function $a(e){var r=Ba(e);return"$"+Ma(r.s.c)+"$"+Ea(r.s.r)+":$"+Ma(r.e.c)+"$"+Ea(r.e.r)}function Wa(e,r){if(!e&&!(r&&r.biff<=5&&r.biff>=2))throw new Error("empty sheet name");if(/[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(e))return"'"+e.replace(/'/g,"''")+"'";return e}function Ua(e){var r={s:{c:0,r:0},e:{c:0,r:0}};var t=0,a=0,n=0;var s=e.length;for(t=0;a26)break;t=26*t+n}r.s.c=--t;for(t=0;a9)break;t=10*t+n}r.s.r=--t;if(a===s||n!=10){r.e.c=r.s.c;r.e.r=r.s.r;return r}++a;for(t=0;a!=s;++a){if((n=e.charCodeAt(a)-64)<1||n>26)break;t=26*t+n}r.e.c=--t;for(t=0;a!=s;++a){if((n=e.charCodeAt(a)-48)<0||n>9)break;t=10*t+n}r.e.r=--t;return r}function ja(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=Ue(e.z,t?hr(r):r)}catch(a){}try{return e.w=Ue((e.XF||{}).numFmtId||(t?14:0),t?hr(r):r)}catch(a){return""+r}}function Ha(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(e.t=="e")return pn[e.v]||e.v;if(r==undefined)return ja(e,e.v);return ja(e,r)}function Va(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function Xa(e,r,t){var a=t||{};var n=e?Array.isArray(e):a.dense;if(g!=null&&n==null)n=g;var s=e||(n?[]:{});var i=0,l=0;if(s&&a.origin!=null){if(typeof a.origin=="number")i=a.origin;else{var o=typeof a.origin=="string"?Ra(a.origin):a.origin;i=o.r;l=o.c}if(!s["!ref"])s["!ref"]="A1:A1"}var c={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(s["!ref"]){var f=Ua(s["!ref"]);c.s.c=f.s.c;c.s.r=f.s.r;c.e.c=Math.max(c.e.c,f.e.c);c.e.r=Math.max(c.e.r,f.e.r);if(i==-1)c.e.r=i=f.e.r+1}for(var u=0;u!=r.length;++u){if(!r[u])continue;if(!Array.isArray(r[u]))throw new Error("aoa_to_sheet expects an array of arrays");for(var h=0;h!=r[u].length;++h){if(typeof r[u][h]==="undefined")continue;var d={v:r[u][h]};var m=i+u,p=l+h;if(c.s.r>m)c.s.r=m;if(c.s.c>p)c.s.c=p;if(c.e.r>16&255,e>>8&255,e&255]})}var dn=hn([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,0,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var mn=Sr(dn);var pn={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var vn={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255};var gn=["_xlnm.Consolidate_Area","_xlnm.Auto_Open","_xlnm.Auto_Close","_xlnm.Extract","_xlnm.Database","_xlnm.Criteria","_xlnm.Print_Area","_xlnm.Print_Titles","_xlnm.Recorder","_xlnm.Data_Form","_xlnm.Auto_Activate","_xlnm.Auto_Deactivate","_xlnm.Sheet_Title","_xlnm._FilterDatabase"];var bn={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.sheet.macroEnabled.main+xml":"workbooks","application/vnd.ms-excel.sheet.binary.macroEnabled.main":"workbooks","application/vnd.ms-excel.addin.macroEnabled.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets", -"application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"charts","application/vnd.ms-excel.chartsheet":"charts","application/vnd.ms-excel.macrosheet+xml":"macros","application/vnd.ms-excel.macrosheet":"macros","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"dialogs","application/vnd.ms-excel.dialogsheet":"dialogs","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.customXmlProperties+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.ms-excel.threadedcomments+xml":"threadedcomments","application/vnd.ms-excel.person+xml":"people","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"metadata","application/vnd.ms-excel.sheetMetadata":"metadata","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","application/vnd.ms-office.chartcolorstyle+xml":"TODO","application/vnd.ms-office.chartstyle+xml":"TODO","application/vnd.ms-office.chartex+xml":"TODO","application/vnd.ms-excel.calcChain":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings":"TODO","application/vnd.ms-office.activeX":"TODO","application/vnd.ms-office.activeX+xml":"TODO","application/vnd.ms-excel.attachedToolbars":"TODO","application/vnd.ms-excel.connections":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":"TODO","application/vnd.ms-excel.externalLink":"links","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"links","application/vnd.ms-excel.pivotCacheDefinition":"TODO","application/vnd.ms-excel.pivotCacheRecords":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml":"TODO","application/vnd.ms-excel.queryTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml":"TODO","application/vnd.ms-excel.userNames":"TODO","application/vnd.ms-excel.revisionHeaders":"TODO","application/vnd.ms-excel.revisionLog":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml":"TODO","application/vnd.ms-excel.tableSingleCells":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml":"TODO","application/vnd.ms-excel.slicer":"TODO","application/vnd.ms-excel.slicerCache":"TODO","application/vnd.ms-excel.slicer+xml":"TODO","application/vnd.ms-excel.slicerCache+xml":"TODO","application/vnd.ms-excel.wsSortMap":"TODO","application/vnd.ms-excel.table":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":"TODO","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.themeOverride+xml":"TODO","application/vnd.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"TODO","application/vnd.ms-office.volatileDependencies":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml":"TODO","application/vnd.ms-excel.controlproperties+xml":"TODO","application/vnd.openxmlformats-officedocument.model+data":"TODO","application/vnd.ms-excel.Survey+xml":"TODO","application/vnd.openxmlformats-officedocument.drawing+xml":"drawings","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml":"TODO","application/vnd.openxmlformats-officedocument.vmlDrawing":"TODO","application/vnd.openxmlformats-package.relationships+xml":"rels","application/vnd.openxmlformats-officedocument.oleObject":"TODO","image/png":"TODO",sheet:"js"};var wn={workbooks:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",xlsm:"application/vnd.ms-excel.sheet.macroEnabled.main+xml",xlsb:"application/vnd.ms-excel.sheet.binary.macroEnabled.main",xlam:"application/vnd.ms-excel.addin.macroEnabled.main+xml",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},comments:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",xlsb:"application/vnd.ms-excel.comments"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},charts:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml",xlsb:"application/vnd.ms-excel.chartsheet"},dialogs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml",xlsb:"application/vnd.ms-excel.dialogsheet"},macros:{xlsx:"application/vnd.ms-excel.macrosheet+xml",xlsb:"application/vnd.ms-excel.macrosheet"},metadata:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml",xlsb:"application/vnd.ms-excel.sheetMetadata"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};function kn(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function yn(e){var r=kn();if(!e||!e.match)return r;var t={};(e.match(Yr)||[]).forEach(function(e){var a=Zr(e);switch(a[0].replace(Jr,"<")){case"0?r.calcchains[0]:"";r.sst=r.strs.length>0?r.strs[0]:"";r.style=r.styles.length>0?r.styles[0]:"";r.defaults=t;delete r.calcchains;return r}function xn(e,r,t){var a=fr(bn);var n=[],s;if(!t){n[n.length]=Hr;n[n.length]=Ft("Types",null,{xmlns:Mt.CT,"xmlns:xsd":Mt.xsd,"xmlns:xsi":Mt.xsi});n=n.concat([["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["vml","application/vnd.openxmlformats-officedocument.vmlDrawing"],["data","application/vnd.openxmlformats-officedocument.model+data"],["bmp","image/bmp"],["png","image/png"],["gif","image/gif"],["emf","image/x-emf"],["wmf","image/x-wmf"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["tif","image/tiff"],["tiff","image/tiff"],["pdf","application/pdf"],["rels","application/vnd.openxmlformats-package.relationships+xml"]].map(function(e){return Ft("Default",null,{Extension:e[0],ContentType:e[1]})}))}var i=function(t){if(e[t]&&e[t].length>0){s=e[t][0];n[n.length]=Ft("Override",null,{PartName:(s[0]=="/"?"":"/")+s,ContentType:wn[t][r.bookType]||wn[t]["xlsx"]})}};var l=function(t){(e[t]||[]).forEach(function(e){n[n.length]=Ft("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:wn[t][r.bookType]||wn[t]["xlsx"]})})};var o=function(r){(e[r]||[]).forEach(function(e){n[n.length]=Ft("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:a[r][0]})})};i("workbooks");l("sheets");l("charts");o("themes");["strs","styles"].forEach(i);["coreprops","extprops","custprops"].forEach(o);o("vba");o("comments");o("threadedcomments");o("drawings");l("metadata");o("people");if(!t&&n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}var Sn={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument",HLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",VML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",XPATH:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath",XMISS:"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing",XLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink",CXML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml",CXMLP:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps",CMNT:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",SST:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",STY:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",THEME:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",CHART:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart",CHARTEX:"http://schemas.microsoft.com/office/2014/relationships/chartEx",CS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet",WS:["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet","http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"],DS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet",MS:"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet",IMG:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",DRAW:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",XLMETA:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata",TCMNT:"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment",PEOPLE:"http://schemas.microsoft.com/office/2017/10/relationships/person",CONN:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/connections",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function Cn(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function _n(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Yr)||[]).forEach(function(e){var n=Zr(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Fn(e,r,t,a,n,s){if(!n)n={};if(!e["!id"])e["!id"]={};if(!e["!idx"])e["!idx"]=1;if(r<0)for(r=e["!idx"];e["!id"]["rId"+r];++r){}e["!idx"]=r+1;n.Id="rId"+r;n.Type=a;n.Target=t;if(s)n.TargetMode=s;else if([Sn.HLINK,Sn.XPATH,Sn.XMISS].indexOf(n.Type)>-1)n.TargetMode="External";if(e["!id"][n.Id])throw new Error("Cannot rewrite rId "+r);e["!id"][n.Id]=n;e[("/"+n.Target).replace("//","/")]=n;return r}var En="application/vnd.oasis.opendocument.spreadsheet";function Tn(e,r){var t=Dt(e);var a;var n;while(a=Ot.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Zr(a[0],false);if(n.path=="/"&&n.type!==En)throw new Error("This OpenDocument is not a spreadsheet");break;case"encryption-data":;case"algorithm":;case"start-key-generation":;case"key-derivation":throw new Error("Unsupported ODS Encryption");default:if(r&&r.WTF)throw a;}}function Dn(e){var r=[Hr];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function On(e,r,t){return[' \n',' \n'," \n"].join("")}function Mn(e,r){return[' \n',' \n'," \n"].join("")}function Nn(e){var r=[Hr];r.push('\n');for(var t=0;t!=e.length;++t){r.push(On(e[t][0],e[t][1]));r.push(Mn("",e[t][0]))}r.push(On("","Document","pkg"));r.push("");return r.join("")}function Pn(){return'Sheet'+"JS "+e.version+""}var In=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];var Rn=function(){var e=new Array(In.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function Ln(e){var r={};e=vt(e);for(var t=0;t0)r[a[1]]=rt(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=yr(r[a[1]])}return r}function Bn(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=nt(r);a[a.length]=t?Ft(e,r,t):_t(e,r)}function zn(e,r){var t=r||{};var a=[Hr,Ft("cp:coreProperties",null,{"xmlns:cp":Mt.CORE_PROPS,"xmlns:dc":Mt.dc,"xmlns:dcterms":Mt.dcterms,"xmlns:dcmitype":Mt.dcmitype,"xmlns:xsi":Mt.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)Bn("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:Et(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)Bn("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:Et(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var s=0;s!=In.length;++s){var i=In[s];var l=t.Props&&t.Props[i[1]]!=null?t.Props[i[1]]:e?e[i[1]]:null;if(l===true)l="1";else if(l===false)l="0";else if(typeof l=="number")l=String(l);if(l!=null)Bn(i[0],l,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var $n=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]];var Wn=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function Un(e,r,t,a){var n=[];if(typeof e=="string")n=St(e,a);else for(var s=0;s0)for(var c=0;c!==n.length;c+=2){o=+n[c+1].v;switch(n[c].v){case"Worksheets":;case"工作表":;case"Листы":;case"أوراق العمل":;case"ワークシート":;case"גליונות עבודה":;case"Arbeitsblätter":;case"Çalışma Sayfaları":;case"Feuilles de calcul":;case"Fogli di lavoro":;case"Folhas de cálculo":;case"Planilhas":;case"Regneark":;case"Hojas de cálculo":;case"Werkbladen":t.Worksheets=o;t.SheetNames=i.slice(l,l+o);break;case"Named Ranges":;case"Rangos con nombre":;case"名前付き一覧":;case"Benannte Bereiche":;case"Navngivne områder":t.NamedRanges=o;t.DefinedNames=i.slice(l,l+o);break;case"Charts":;case"Diagramme":t.Chartsheets=o;t.ChartNames=i.slice(l,l+o);break;}l+=o}}function jn(e,r,t){var a={};if(!r)r={};e=vt(e);$n.forEach(function(t){var n=(e.match(bt(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=rt(n);break;case"bool":r[t[1]]=n==="true";break;case"raw":var s=e.match(new RegExp("<"+t[0]+"[^>]*>([\\s\\S]*?)"));if(s&&s.length>0)a[t[1]]=s[1];break;}});if(a.HeadingPairs&&a.TitlesOfParts)Un(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function Hn(e){var r=[],t=Ft;if(!e)e={};e.Application="SheetJS";r[r.length]=Hr;r[r.length]=Ft("Properties",null,{xmlns:Mt.EXT_PROPS,"xmlns:vt":Mt.vt});$n.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=nt(String(e[a[1]]));break;case"bool":n=e[a[1]]?"true":"false";break;}if(n!==undefined)r[r.length]=t(a[0],n)});r[r.length]=t("HeadingPairs",t("vt:vector",t("vt:variant","Worksheets")+t("vt:variant",t("vt:i4",String(e.Worksheets))),{size:2,baseType:"variant"}));r[r.length]=t("TitlesOfParts",t("vt:vector",e.SheetNames.map(function(e){return""+nt(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Vn=/<[^>]+>[^<]*/g;function Xn(e,r){var t={},a="";var n=e.match(Vn);if(n)for(var s=0;s!=n.length;++s){var i=n[s],l=Zr(i);switch(qr(l[0])){case"":a=null;break;default:if(i.indexOf("");var c=o[0].slice(4),f=o[1];switch(c){case"lpstr":;case"bstr":;case"lpwstr":t[a]=rt(f);break;case"bool":t[a]=ut(f);break;case"i1":;case"i2":;case"i4":;case"i8":;case"int":;case"uint":t[a]=parseInt(f,10);break;case"r4":;case"r8":;case"decimal":t[a]=parseFloat(f);break;case"filetime":;case"date":t[a]=yr(f);break;case"cy":;case"error":t[a]=rt(f);break;default:if(c.slice(-1)=="/")break;if(r.WTF&&typeof console!=="undefined")console.warn("Unexpected",i,c,o);}}else if(i.slice(0,2)==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Yn=[2,3,48,49,131,139,140,245];var Jn=function(){var e={1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127,8:865,9:437,10:850,11:437,13:437,14:850,15:437,16:850,17:437,18:850,19:932,20:850,21:437,22:850,23:865,24:437,25:437,26:850,27:437,28:863,29:850,31:852,34:852,35:852,36:860,37:850,38:866,55:850,64:852,77:936,78:949,79:950,80:874,87:1252,88:1252,89:1252,108:863,134:737,135:852,136:857,204:1257,255:16969};var n=or({1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127});function s(r,t){var n=[];var s=A(1);switch(t.type){case"base64":s=E(x(r));break;case"binary":s=E(r);break;case"buffer":;case"array":s=r;break;}ga(s,0);var i=s._R(1);var l=!!(i&136);var o=false,c=false;switch(i){case 2:break;case 3:break;case 48:o=true;l=true;break;case 49:o=true;l=true;break;case 131:break;case 139:break;case 140:c=true;break;case 245:break;default:throw new Error("DBF Unsupported Version: "+i.toString(16));}var f=0,u=521;if(i==2)f=s._R(2);s.l+=3;if(i!=2)f=s._R(4);if(f>1048576)f=1e6;if(i!=2)u=s._R(2);var h=s._R(2);var d=t.codepage||1252;if(i!=2){s.l+=16;s._R(1);if(s[s.l]!==0)d=e[s[s.l]];s.l+=1;s.l+=2}if(c)s.l+=36;var m=[],p={};var v=Math.min(s.length,i==2?521:u-10-(o?264:0));var g=c?32:11;while(s.l0){if(s[s.l]===42){s.l+=h;continue}++s.l;n[++b]=[];w=0;for(w=0;w!=m.length;++w){var k=s.slice(s.l,s.l+m[w].len);s.l+=m[w].len;ga(k,0);var y=typeof a!=="undefined"?a.utils.decode(d,k):D(k);switch(m[w].type){case"C":if(y.trim().length)n[b][w]=y.replace(/\s+$/,"");break;case"D":if(y.length===8)n[b][w]=new Date(+y.slice(0,4),+y.slice(4,6)-1,+y.slice(6,8));else n[b][w]=y;break;case"F":n[b][w]=parseFloat(y.trim());break;case"+":;case"I":n[b][w]=c?k._R(-4,"i")^2147483648:k._R(4,"i");break;case"L":switch(y.trim().toUpperCase()){case"Y":;case"T":n[b][w]=true;break;case"N":;case"F":n[b][w]=false;break;case"":;case"?":break;default:throw new Error("DBF Unrecognized L:|"+y+"|");}break;case"M":if(!l)throw new Error("DBF Unexpected MEMO for type "+i.toString(16));n[b][w]="##MEMO##"+(c?parseInt(y.trim(),10):k._R(4));break;case"N":y=y.replace(/\u0000/g,"").trim();if(y&&y!=".")n[b][w]=+y||0;break;case"@":n[b][w]=new Date(k._R(-8,"f")-621356832e5);break;case"T":n[b][w]=new Date((k._R(4)-2440588)*864e5+k._R(4));break;case"Y":n[b][w]=k._R(4,"i")/1e4+k._R(4,"i")/1e4*Math.pow(2,32);break;case"O":n[b][w]=-k._R(-8,"f");break;case"B":if(o&&m[w].len==8){n[b][w]=k._R(8,"f");break};case"G":;case"P":k.l+=m[w].len;break;case"0":if(m[w].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+m[w].type);}}}if(i!=2)if(s.l=0)o(+l.codepage);if(l.type=="string")throw new Error("Cannot write DBF to JS string");var u=ya();var h=nc(s,{header:1,raw:true,cellDates:true});var d=h[0],m=h.slice(1),p=s["!cols"]||[];var v=0,g=0,b=0,w=1;for(v=0;v250)A=250;_=((p[v]||{}).DBF||{}).type;if(_=="C"){if(p[v].DBF.len>A)A=p[v].DBF.len}if(C=="B"&&_=="N"){C="N";S[v]=p[v].DBF.dec;A=p[v].DBF.len}x[v]=C=="C"||_=="N"?A:c[C]||0;w+=x[v];y[v]=C}var E=u.next(32);E._W(4,318902576);E._W(4,m.length);E._W(2,296+32*b);E._W(2,w);for(v=0;v<4;++v)E._W(4,0);var T=+n[r]||3;E._W(4,0|T<<8);if(e[T]!=+l.codepage){console.error("DBF Unsupported codepage "+r+", using 1252");r=1252}for(v=0,g=0;v":190,"?":191,"{":223};var r=new RegExp("N("+ir(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm");var t=function(r,t){var a=e[t];return typeof a=="number"?p(a):a};var n=function(e,r,t){var a=r.charCodeAt(0)-32<<4|t.charCodeAt(0)-48;return a==59?e:p(a)};e["|"]=254;function s(e,r){switch(r.type){case"base64":return i(x(e),r);case"binary":return i(e,r);case"buffer":return i(S&&Buffer.isBuffer(e)?e.toString("binary"):D(e),r);case"array":return i(xr(e),r);}throw new Error("Unrecognized type "+r.type)}function i(e,s){var i=e.split(/[\n\r]+/),l=-1,c=-1,f=0,u=0,h=[];var d=[];var m=null;var p={},v=[],g=[],b=[];var w=0,k;var y={Workbook:{WBProps:{},Names:[]}};if(+s.codepage>=0)o(+s.codepage);for(;f!==i.length;++f){w=0;var x=i[f].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,n).replace(r,t);var S=x.replace(/;;/g,"\0").split(";").map(function(e){return e.replace(/\u0000/g,";")});var C=S[0],_;if(x.length>0)switch(C){case"ID":break;case"E":break;case"B":break;case"O":for(u=1;u=1&&A<=4)y.Workbook.WBProps.date1904=true}break;}break;case"W":break;case"P":switch(S[1].charAt(0)){case"P":d.push(x.slice(3).replace(/;;/g,";"));break;}break;case"NN":{var F={Sheet:0};for(u=1;u-1&&h[M][N];if(!R||!R[1])throw new Error("SYLK shared formula cannot find base");P=Fi(R[1],{r:l-M,c:c-N})}if(P){if(!h[l][c])h[l][c]={t:"n",f:P};else h[l][c].f=P}break;case"F":var L=0;for(u=1;u0){v[l].hpt=w;v[l].hpx=Ms(w)}else if(w===0)v[l].hidden=true;break;default:if(s&&s.WTF)throw new Error("SYLK bad record "+x);}if(L<1)m=null;break;default:if(s&&s.WTF)throw new Error("SYLK bad record "+x);}}if(v.length>0)p["!rows"]=v;if(g.length>0)p["!cols"]=g;g.forEach(function(e){Es(e)});if(s&&s.sheetRows)h=h.slice(0,s.sheetRows); -return[h,p,y]}function l(e,r){var t=s(e,r);var a=t[0],n=t[1],i=t[2];var l=Sr(r);l.date1904=(((i||{}).Workbook||{}).WBProps||{}).date1904;var o=Ga(a,l);ir(n).forEach(function(e){o[e]=n[e]});var c=Va(o,r);ir(i).forEach(function(e){c[e]=i[e]});c.bookType="sylk";return c}function c(e,r,t,a){var n="C;Y"+(t+1)+";X"+(a+1)+";K";switch(e.t){case"n":n+=e.v||0;if(e.f&&!e.F)n+=";E"+Ai(e.f,{r:t,c:a});break;case"b":n+=e.v?"TRUE":"FALSE";break;case"e":n+=e.w||e.v;break;case"d":n+='"'+(e.w||e.v)+'"';break;case"s":n+='"'+e.v.replace(/"/g,"").replace(/;/g,";;")+'"';break;}return n}function f(e,r){r.forEach(function(r,t){var a="F;W"+(t+1)+" "+(t+1)+" ";if(r.hidden)a+="0";else{if(typeof r.width=="number"&&!r.wpx)r.wpx=Ss(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=Cs(r.wpx);if(typeof r.wch=="number")a+=Math.round(r.wch)}if(a.charAt(a.length-1)!=" ")e.push(a)})}function u(e,r){r.forEach(function(r,t){var a="F;";if(r.hidden)a+="M0;";else if(r.hpt)a+="M"+20*r.hpt+";";else if(r.hpx)a+="M"+20*Os(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function h(e,r,t){var a=["ID;PSheetJS;N;E"],n=[];var s=Ua(e["!ref"]),i;var l=Array.isArray(e);var o="\r\n";var h=(((t||{}).Workbook||{}).WBProps||{}).date1904;a.push("P;PGeneral");a.push("F;P0;DG0G8;M255");if(e["!cols"])f(a,e["!cols"]);if(e["!rows"])u(a,e["!rows"]);a.push("B;Y"+(s.e.r-s.s.r+1)+";X"+(s.e.c-s.s.c+1)+";D"+[s.s.c,s.s.r,s.e.c,s.e.r].join(" "));a.push("O;L;D;B"+(h?";V4":"")+";K47;G100 0.001");for(var d=s.s.r;d<=s.e.r;++d){var m=[];for(var p=s.s.c;p<=s.e.c;++p){var v=La({r:d,c:p});i=l?(e[d]||[])[p]:e[v];if(!i||i.v==null&&(!i.f||i.F))continue;m.push(c(i,e,d,p,r))}n.push(m.join(o))}return a.join(o)+o+n.join(o)+o+"E"+o}return{to_workbook:l,from_sheet:h}}();var Zn=function(){function e(e,t){switch(t.type){case"base64":return r(x(e),t);case"binary":return r(e,t);case"buffer":return r(S&&Buffer.isBuffer(e)?e.toString("binary"):D(e),t);case"array":return r(xr(e),t);}throw new Error("Unrecognized type "+t.type)}function r(e,r){var t=e.split("\n"),a=-1,n=-1,s=0,i=[];for(;s!==t.length;++s){if(t[s].trim()==="BOT"){i[++a]=[];n=0;continue}if(a<0)continue;var l=t[s].trim().split(",");var o=l[0],c=l[1];++s;var f=t[s]||"";while((f.match(/["]/g)||[]).length&1&&s=0&&s[i].length===0)--i;var l=10,o=0;var c=0;for(;c<=i;++c){o=s[c].indexOf(" ");if(o==-1)o=s[c].length;else o++;l=Math.max(l,o)}for(c=0;c<=i;++c){n[c]=[];var f=0;e(s[c].slice(0,l).trim(),n,c,f,a);for(f=1;f<=(s[c].length-l)/10+1;++f)e(s[c].slice(l+(f-1)*10,l+f*10).trim(),n,c,f,a)}if(a.sheetRows)n=n.slice(0,a.sheetRows);return n}var t={44:",",9:"\t",59:";",124:"|"};var n={44:3,9:2,59:1,124:0};function s(e){var r={},a=false,s=0,i=0;for(;s0)b();n["!ref"]=za(i);return n}function l(e,t){if(!(t&&t.PRN))return i(e,t);if(t.FS)return i(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 Ga(r(e,t),t)}function o(e,r){var t="",n=r.type=="string"?[0,0,0,0]:Mo(e,r);switch(r.type){case"base64":t=x(e);break;case"binary":t=e;break;case"buffer":if(r.codepage==65001)t=e.toString("utf8");else if(r.codepage&&typeof a!=="undefined")t=a.utils.decode(r.codepage,e);else t=S&&Buffer.isBuffer(e)?e.toString("binary"):D(e);break;case"array":t=xr(e);break;case"string":t=e;break;default:throw new Error("Unrecognized type "+r.type);}if(n[0]==239&&n[1]==187&&n[2]==191)t=vt(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=vt(t);else if(r.type=="binary"&&typeof a!=="undefined"&&r.codepage)t=a.utils.decode(r.codepage,a.utils.encode(28591,t));if(t.slice(0,19)=="socialcalc:version:")return qn.to_sheet(r.type=="string"?t:vt(t),r);return l(t,r)}function c(e,r){return Va(o(e,r),r)}function f(e){var r=[];var t=Ua(e["!ref"]),a;var n=Array.isArray(e);for(var s=t.s.r;s<=t.e.r;++s){var i=[];for(var l=t.s.c;l<=t.e.c;++l){var o=La({r:s,c:l});a=n?(e[s]||[])[l]:e[o];if(!a||a.v==null){i.push(" ");continue}var c=(a.w||(Ha(a),a.w)||"").slice(0,10);while(c.length<10)c+=" ";i.push(c+(l===0?" ":""))}r.push(i.join(""))}return r.join("\n")}return{to_workbook:c,to_sheet:o,from_sheet:f}}();function es(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=Kn.to_workbook(e,t);t.WTF=a;return n}catch(s){t.WTF=a;if(!s.message.match(/SYLK bad record ID/)&&a)throw s;return Qn.to_workbook(e,r)}}function rs(e){var r={},t=e.match(Yr),a=0;var n=false;if(t)for(;a!=t.length;++a){var i=Zr(t[a]);switch(i[0].replace(/\w*:/g,"")){case"":;case"":r.shadow=1;break;case"":break;case"":;case"":r.outline=1;break;case"":break;case"":;case"":r.strike=1;break;case"":break;case"":;case"":r.u=1;break;case"":break;case"":;case"":r.b=1;break;case"":break;case"":;case"":r.i=1;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"
":break;case"":n=false;break;default:if(i[0].charCodeAt(1)!==47&&!n)throw new Error("Unrecognized rich format "+i[0]);}}return r}var ts=function(){var e=bt("t"),r=bt("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:rt(a[1])};var s=t.match(r);if(s)n.s=rs(s[1]);return n}var a=/<(?:\w+:)?r>/g,n=/<\/(?:\w+:)?r>/;return function s(e){return e.replace(a,"").split(n).map(t).filter(function(e){return e.v})}}();var as=function $c(){var e=/(\r\n|\n)/g;function r(e,r,t){var a=[];if(e.u)a.push("text-decoration: underline;");if(e.uval)a.push("text-underline-style:"+e.uval+";");if(e.sz)a.push("font-size:"+e.sz+"pt;");if(e.outline)a.push("text-effect: outline;");if(e.shadow)a.push("text-shadow: auto;");r.push('');if(e.b){r.push("");t.push("")}if(e.i){r.push("");t.push("")}if(e.strike){r.push("");t.push("")}var n=e.valign||"";if(n=="superscript"||n=="super")n="sup";else if(n=="subscript")n="sub";if(n!=""){r.push("<"+n+">");t.push("")}t.push("");return e}function t(t){var a=[[],t.v,[]];if(!t.v)return"";if(t.s)r(t.s,a[0],a[2]);return a[0].join("")+a[1].replace(e,"
")+a[2].join("")}return function a(e){return e.map(t).join("")}}();var ns=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,ss=/<(?:\w+:)?r>/;var is=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function ls(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=rt(vt(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""),true);a.r=vt(e);if(t)a.h=lt(a.t)}else if(e.match(ss)){a.r=vt(e);a.t=rt(vt((e.replace(is,"").match(ns)||[]).join("").replace(Yr,"")),true);if(t)a.h=as(ts(a.r))}return a}var os=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var cs=/<(?:\w+:)?(?:si|sstItem)>/g;var fs=/<\/(?:\w+:)?(?:si|sstItem)>/;function us(e,r){var t=[],a="";if(!e)return t;var n=e.match(os);if(n){a=n[2].replace(cs,"").split(fs);for(var s=0;s!=a.length;++s){var i=ls(a[s].trim(),r);if(i!=null)t[t.length]=i}n=Zr(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var hs=/^\s|\s$|[\t\n\r]/;function ds(e,r){if(!r.bookSST)return"";var t=[Hr];t[t.length]=Ft("sst",null,{xmlns:Nt[0],count:e.Count,uniqueCount:e.Unique});for(var a=0;a!=e.length;++a){if(e[a]==null)continue;var n=e[a];var s="";if(n.r)s+=n.r;else{s+=""}s+="";t[t.length]=s}if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}function ms(e){var r=e.slice(e[0]==="#"?1:0).slice(0,6);return[parseInt(r.slice(0,2),16),parseInt(r.slice(2,4),16),parseInt(r.slice(4,6),16)]}function ps(e){for(var r=0,t=1;r!=3;++r)t=t*256+(e[r]>255?255:e[r]<0?0:e[r]);return t.toString(16).toUpperCase().slice(1)}function vs(e){var r=e[0]/255,t=e[1]/255,a=e[2]/255;var n=Math.max(r,t,a),s=Math.min(r,t,a),i=n-s;if(i===0)return[0,0,r];var l=0,o=0,c=n+s;o=i/(c>1?2-c:c);switch(n){case r:l=((t-a)/i+6)%6;break;case t:l=(a-r)/i+2;break;case a:l=(r-t)/i+4;break;}return[l/6,o,c/2]}function gs(e){var r=e[0],t=e[1],a=e[2];var n=t*2*(a<.5?a:1-a),s=a-n/2;var i=[s,s,s],l=6*r;var o;if(t!==0)switch(l|0){case 0:;case 6:o=n*l;i[0]+=n;i[1]+=o;break;case 1:o=n*(2-l);i[0]+=o;i[1]+=n;break;case 2:o=n*(l-2);i[1]+=n;i[2]+=o;break;case 3:o=n*(4-l);i[1]+=o;i[2]+=n;break;case 4:o=n*(l-4);i[2]+=n;i[0]+=o;break;case 5:o=n*(6-l);i[2]+=o;i[0]+=n;break;}for(var c=0;c!=3;++c)i[c]=Math.round(i[c]*255);return i}function bs(e,r){if(r===0)return e;var t=vs(ms(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return ps(gs(t))}var ws=6,ks=15,ys=1,xs=ws;function Ss(e){return Math.floor((e+Math.round(128/xs)/256)*xs)}function Cs(e){return Math.floor((e-5)/xs*100+.5)/100}function _s(e){return Math.round((e*xs+5)/xs*256)/256}function As(e){return _s(Cs(Ss(e)))}function Fs(e){var r=Math.abs(e-As(e)),t=xs;if(r>.005)for(xs=ys;xs":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=ut(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=ut(t.diagonalDown);r.Borders.push(n);break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":break;case"":s=false;break;default:if(a&&a.WTF){if(!s)throw new Error("unrecognized "+t[0]+" in borders")};}})}function Is(e,r,t,a){r.Fills=[];var n={};var s=false;(e[0].match(Yr)||[]).forEach(function(e){var t=Zr(e);switch(qr(t[0])){case"":;case"":break;case"":;case"":n={};r.Fills.push(n);break;case"":break;case"":break;case"":r.Fills.push(n);n={};break;case"":if(t.patternType)n.patternType=t.patternType;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":s=false;break;default:if(a&&a.WTF){if(!s)throw new Error("unrecognized "+t[0]+" in fills")};}})}function Rs(e,r,t,a){r.Fonts=[];var n={};var i=false;(e[0].match(Yr)||[]).forEach(function(e){var l=Zr(e);switch(qr(l[0])){case"":;case"":break;case"":break;case"
":;case"":r.Fonts.push(n);n={};break;case"":;case"":break;case"":n.bold=1;break;case"":n.italic=1;break;case"":n.underline=1;break;case"":n.strike=1;break;case"":n.outline=1;break;case"":n.shadow=1;break;case"":n.condense=1;break;case"":n.extend=1;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":i=false;break;case"":;case"":break;case"":i=false;break;default:if(a&&a.WTF){if(!i)throw new Error("unrecognized "+l[0]+" in fonts")};}})}function Ls(e,r,t){r.NumberFmt=[];var a=ir(K);for(var n=0;n":;case"":;case"":break;case"0){if(o>392){for(o=392;o>60;--o)if(r.NumberFmt[o]==null)break;r.NumberFmt[o]=l}qe(l,o)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+i[0]+" in numFmts");}}}function Bs(e){var r=[""];[[5,8],[23,26],[41,44],[50,392]].forEach(function(t){for(var a=t[0];a<=t[1];++a)if(e[a]!=null)r[r.length]=Ft("numFmt",null,{numFmtId:a,formatCode:nt(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=Ft("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var zs=["numFmtId","fillId","fontId","borderId","xfId"];var $s=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function Ws(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Yr)||[]).forEach(function(e){var s=Zr(e),i=0;switch(qr(s[0])){case"":;case"":;case"":break;case"":a=s;delete a[0];for(i=0;i392){for(i=392;i>60;--i)if(r.NumberFmt[a.numFmtId]==r.NumberFmt[i]){a.numFmtId=i;break}}r.CellXf.push(a);break;case"":break;case"":var l={};if(s.vertical)l.vertical=s.vertical;if(s.horizontal)l.horizontal=s.horizontal;if(s.textRotation!=null)l.textRotation=s.textRotation;if(s.indent)l.indent=s.indent;if(s.wrapText)l.wrapText=ut(s.wrapText);a.alignment=l;break;case"":break;case"":;case"":break;case"":n=false;break;case"":;case"":break;case"":n=false;break;default:if(t&&t.WTF){if(!n)throw new Error("unrecognized "+s[0]+" in cellXfs")};}})}function Us(e){var r=[];r[r.length]=Ft("cellXfs",null);e.forEach(function(e){r[r.length]=Ft("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=Ft("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var js=function Wc(){var e=/<(?:\w+:)?numFmts([^>]*)>[\S\s]*?<\/(?:\w+:)?numFmts>/;var r=/<(?:\w+:)?cellXfs([^>]*)>[\S\s]*?<\/(?:\w+:)?cellXfs>/;var t=/<(?:\w+:)?fills([^>]*)>[\S\s]*?<\/(?:\w+:)?fills>/;var a=/<(?:\w+:)?fonts([^>]*)>[\S\s]*?<\/(?:\w+:)?fonts>/;var n=/<(?:\w+:)?borders([^>]*)>[\S\s]*?<\/(?:\w+:)?borders>/;return function s(i,l,o){var c={};if(!i)return c;i=i.replace(//gm,"").replace(//gm,"");var f;if(f=i.match(e))Ls(f,c,o);if(f=i.match(a))Rs(f,c,l,o);if(f=i.match(t))Is(f,c,l,o);if(f=i.match(n))Ps(f,c,l,o);if(f=i.match(r))Ws(f,c,o);return c}}();function Hs(e,r){var t=[Hr,Ft("styleSheet",null,{xmlns:Nt[0],"xmlns:vt":Mt.vt})],a;if(e.SSF&&(a=Bs(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=Us(r.cellXfs))t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}var Vs=["","","","","","","","","","","",""];function Xs(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Yr)||[]).forEach(function(e){var n=Zr(e);switch(n[0]){case"":break;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":if(n[0].charAt(1)==="/"){r.themeElements.clrScheme[Vs.indexOf(n[0])]=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 Gs(){}function Ys(){}var Js=/]*)>[\s\S]*<\/a:clrScheme>/;var Ks=/]*)>[\s\S]*<\/a:fontScheme>/;var Zs=/]*)>[\s\S]*<\/a:fmtScheme>/;function qs(e,r,t){r.themeElements={};var a;[["clrScheme",Js,Xs],["fontScheme",Ks,Gs],["fmtScheme",Zs,Ys]].forEach(function(n){if(!(a=e.match(n[1])))throw new Error(n[0]+" not found in themeElements");n[2](a,r,t)})}var Qs=/]*)>[\s\S]*<\/a:themeElements>/;function ei(e,r){if(!e||e.length===0)e=ri();var t;var a={};if(!(t=e.match(Qs)))throw new Error("themeElements not found in theme");qs(t[0],a,r);a.raw=e;return a}function ri(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Hr];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]=''; -t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";return t.join("")}function ti(e,r,t){var a={Types:[],Cell:[],Value:[]};if(!e)return a;var n=false;var s=2;var i;e.replace(Yr,function(e){var r=Zr(e);switch(qr(r[0])){case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":s=2;break;case"":s=2;break;case"":;case"":;case"":break;case"":n=false;break;case"\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n');return e.join("")}function ni(){}function si(e,r,t,a){if(!e)return e;var n=a||{};var s=false,i=false;ka(e,function l(e,r,t){if(i)return;switch(t){case 359:;case 363:;case 364:;case 366:;case 367:;case 368:;case 369:;case 370:;case 371:;case 472:;case 577:;case 578:;case 579:;case 580:;case 581:;case 582:;case 583:;case 584:;case 585:;case 586:;case 587:break;case 35:s=true;break;case 36:s=false;break;default:if(r.T){}else if(!s||n.WTF)throw new Error("Unexpected record 0x"+t.toString(16));}},n)}function ii(e,r){if(!e)return"??";var t=(e.match(/]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}function li(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[Ft("xml",null,{"xmlns:v":Pt.v,"xmlns:o":Pt.o,"xmlns:x":Pt.x,"xmlns:mv":Pt.mv}).replace(/\/>/,">"),Ft("o:shapelayout",Ft("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"})];var s=65536*e;var i=r||[];if(i.length>0)n.push(Ft("v:shapetype",[Ft("v:stroke",null,{joinstyle:"miter"}),Ft("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202",coordsize:t.join(","),"o:spt":202,path:a}));i.forEach(function(e){++s;n.push(oi(e,s))});n.push("");return n.join("")}function oi(e,r){var t=Ra(e[0]);var a={color2:"#BEFF82",type:"gradient"};if(a.type=="gradient")a.angle="-180";var n=a.type=="gradient"?Ft("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null;var s=Ft("v:fill",n,a);var i={on:"t",obscured:"t"};return["",s,Ft("v:shadow",null,i),Ft("v:path",null,{"o:connecttype":"none"}),'
','',"","",_t("x:Anchor",[t.c+1,0,t.r+1,0,t.c+3,20,t.r+5,20].join(",")),_t("x:AutoFill","False"),_t("x:Row",String(t.r)),_t("x:Column",String(t.c)),e[1].hidden?"":"","",""].join("")}function ci(e,r,t,a){var n=Array.isArray(e);var s;r.forEach(function(r){var i=Ra(r.ref);if(n){if(!e[i.r])e[i.r]=[];s=e[i.r][i.c]}else s=e[r.ref];if(!s){s={t:"z"};if(n)e[i.r][i.c]=s;else e[r.ref]=s;var l=Ua(e["!ref"]||"BDWGO1000001:A1");if(l.s.r>i.r)l.s.r=i.r;if(l.e.ri.c)l.s.c=i.c;if(l.e.c=0;--f){if(!t&&s.c[f].T)return;if(t&&!s.c[f].T)s.c.splice(f,1)}if(t&&a)for(f=0;f/))return[];var t=[];var a=[];var n=e.match(/<(?:\w+:)?authors>([\s\S]*)<\/(?:\w+:)?authors>/);if(n&&n[1])n[1].split(/<\/\w*:?author>/).forEach(function(e){if(e===""||e.trim()==="")return;var r=e.match(/<(?:\w+:)?author[^>]*>(.*)/);if(r)t.push(r[1])});var s=e.match(/<(?:\w+:)?commentList>([\s\S]*)<\/(?:\w+:)?commentList>/);if(s&&s[1])s[1].split(/<\/\w*:?comment>/).forEach(function(e){if(e===""||e.trim()==="")return;var n=e.match(/<(?:\w+:)?comment[^>]*>/);if(!n)return;var s=Zr(n[0]);var i={author:s.authorId&&t[s.authorId]||"sheetjsghost",ref:s.ref,guid:s.guid};var l=Ra(s.ref);if(r.sheetRows&&r.sheetRows<=l.r)return;var o=e.match(/<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/);var c=!!o&&!!o[1]&&ls(o[1])||{r:"",t:"",h:""};i.r=c.r;if(c.r=="")c.t=c.h="";i.t=(c.t||"").replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(r.cellHTML)i.h=c.h;a.push(i)});return a}function ui(e){var r=[Hr,Ft("comments",null,{xmlns:Nt[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=nt(e.a);if(t.indexOf(a)==-1){t.push(a);r.push(""+a+"")}if(e.T&&e.ID&&t.indexOf("tc="+e.ID)==-1){t.push("tc="+e.ID);r.push(""+"tc="+e.ID+"")}})});if(t.length==0){t.push("SheetJ5");r.push("SheetJ5")}r.push("");r.push("");e.forEach(function(e){var a=0,n=[],s=0;if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);e[1].forEach(function(e){if(e.a)a=t.indexOf(nt(e.a));if(e.T)++s;n.push(e.t==null?"":nt(e.t))});if(s===0){e[1].forEach(function(a){r.push('');r.push(_t("t",a.t==null?"":nt(a.t)));r.push("")})}else{r.push('');var i="Comment:\n "+n[0]+"\n";for(var l=1;l")}});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function hi(e,r){var t=[];var a=false,n={},s=0;e.replace(Yr,function i(l,o){var c=Zr(l);switch(qr(c[0])){case"":break;case"":if(n.t!=null)t.push(n);break;case"":;case"":n.t=e.slice(s,o).replace(/\r\n/g,"\n").replace(/\r/g,"\n");break;case"":a=true;break;case"":a=false;break;case"":;case"
":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+c[0]+" in threaded comments");}return l});return t}function di(e,r,t){var a=[Hr,Ft("ThreadedComments",null,{xmlns:Mt.TCMNT}).replace(/[\/]>/,">")];e.forEach(function(e){var n="";(e[1]||[]).forEach(function(s,i){if(!s.T){delete s.ID;return}if(s.a&&r.indexOf(s.a)==-1)r.push(s.a);var l={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+t.tcid++).slice(-12)+"}"};if(i==0)n=l.id;else l.parentId=n;s.ID=l.id;if(s.a)l.personId="{54EE7950-7262-4200-6969-"+("000000000000"+r.indexOf(s.a)).slice(-12)+"}";a.push(Ft("threadedComment",_t("text",s.t||""),l))})});a.push("");return a.join("")}function mi(e,r){var t=[];var a=false;e.replace(Yr,function n(e){var n=Zr(e);switch(qr(n[0])){case"":break;case"":break;case"":;case"":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+n[0]+" in threaded comments");}return e});return t}function pi(e){var r=[Hr,Ft("personList",null,{xmlns:Mt.TCMNT,"xmlns:x":Nt[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(Ft("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}var vi="application/vnd.ms-office.vbaProject";function gi(e){var r=er.utils.cfb_new({root:"R"});e.FullPaths.forEach(function(t,a){if(t.slice(-1)==="/"||!t.match(/_VBA_PROJECT_CUR/))return;var n=t.replace(/^[^\/]*/,"R").replace(/\/_VBA_PROJECT_CUR\u0000*/,"");er.utils.cfb_add(r,n,e.FileIndex[a].content)});return er.write(r)}function bi(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")er.utils.cfb_add(e,n,r.FileIndex[a].content)})}var wi=["xlsb","xlsm","xlam","biff8","xla"];function ki(){return{"!type":"dialog"}}function yi(){return{"!type":"dialog"}}function xi(){return{"!type":"macro"}}function Si(){return{"!type":"macro"}}var Ci=function(){var e=/(^|[^A-Za-z_])R(\[?-?\d+\]|[1-9]\d*|)C(\[?-?\d+\]|[1-9]\d*|)(?![A-Za-z0-9_])/g;var r={r:0,c:0};function t(e,t,a,n){var s=false,i=false;if(a.length==0)i=true;else if(a.charAt(0)=="["){i=true;a=a.slice(1,-1)}if(n.length==0)s=true;else if(n.charAt(0)=="["){s=true;n=n.slice(1,-1)}var l=a.length>0?parseInt(a,10)|0:0,o=n.length>0?parseInt(n,10)|0:0;if(s)o+=r.c;else--o;if(i)l+=r.r;else--l;return t+(s?"":"$")+Ma(o)+(i?"":"$")+Ea(l)}return function a(n,s){r=s;return n.replace(e,t)}}();var _i=/(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})(?![_.\(A-Za-z0-9])/g;var Ai=function(){return function e(r,t){return r.replace(_i,function(e,r,a,n,s,i){var l=Oa(n)-(a?0:t.c);var o=Fa(i)-(s?0:t.r);var c=s=="$"?o+1:o==0?"":"["+o+"]";var f=a=="$"?l+1:l==0?"":"["+l+"]";return r+"R"+c+"C"+f})}}();function Fi(e,r){return e.replace(_i,function(e,t,a,n,s,i){return t+(a=="$"?a+n:Ma(Oa(n)+r.c))+(s=="$"?s+i:Ea(Fa(i)+r.r))})}function Ei(e,r,t){var a=Ba(r),n=a.s,s=Ra(t);var i={r:s.r-n.r,c:s.c-n.c};return Fi(e,i)}function Ti(e){if(e.length==1)return false;return true}function Di(e){return e.replace(/_xlfn\./g,"")}function Oi(e){if(e.slice(0,3)=="of:")e=e.slice(3);if(e.charCodeAt(0)==61){e=e.slice(1);if(e.charCodeAt(0)==61)e=e.slice(1)}e=e.replace(/COM\.MICROSOFT\./g,"");e=e.replace(/\[((?:\.[A-Z]+[0-9]+)(?::\.[A-Z]+[0-9]+)?)\]/g,function(e,r){return r.replace(/\./g,"")});e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});e=e.replace(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function Mi(e){var r="of:="+e.replace(_i,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function Ni(e){e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});var r=e.split(":");var t=r[0].split(".")[0];return[t,r[0].split(".")[1]+(r.length>1?":"+(r[1].split(".")[1]||r[1].split(".")[0]):"")]}function Pi(e){return e.replace(/!/,".")}var Ii={};var Ri={};var Li=typeof Map!=="undefined";function Bi(e,r,t){var a=0,n=e.length;if(t){if(Li?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var s=Li?t.get(r):t[r];for(;a-1){t.width=_s(a);t.customWidth=1}else if(r.width!=null)t.width=r.width;if(r.hidden)t.hidden=true;if(r.level!=null){t.outlineLevel=t.level=r.level}return t}function $i(e,r){if(!e)return;var t=[.7,.7,.75,.75,.3,.3];if(r=="xlml")t=[1,1,1,1,.5,.5];if(e.left==null)e.left=t[0];if(e.right==null)e.right=t[1];if(e.top==null)e.top=t[2];if(e.bottom==null)e.bottom=t[3];if(e.header==null)e.header=t[4];if(e.footer==null)e.footer=t[5]}function Wi(e,r,t){var a=t.revssf[r.z!=null?r.z:"General"];var n=60,s=e.length;if(a==null&&t.ssf){for(;n<392;++n)if(t.ssf[n]==null){qe(r.z,n);t.ssf[n]=r.z;t.revssf[r.z]=a=n;break}}for(n=0;n!=s;++n)if(e[n].numFmtId===a)return n;e[s]={numFmtId:a,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1};return s}function Ui(e,r,t,a,n,s){try{if(a.cellNF)e.z=K[r]}catch(i){if(a.WTF)throw i}if(e.t==="z"&&!a.cellStyles)return;if(e.t==="d"&&typeof e.v==="string")e.v=yr(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(K[r]==null)qe(Ge[r]||"General",r);if(e.t==="e")e.w=e.w||pn[e.v];else if(r===0){if(e.t==="n"){if((e.v|0)===e.v)e.w=e.v.toString(10);else e.w=ce(e.v)}else if(e.t==="d"){var l=hr(e.v);if((l|0)===l)e.w=l.toString(10);else e.w=ce(l)}else if(e.v===undefined)return"";else e.w=fe(e.v,Ri)}else if(e.t==="d")e.w=Ue(r,hr(e.v),Ri);else e.w=Ue(r,e.v,Ri)}catch(i){if(a.WTF)throw i}if(!a.cellStyles)return;if(t!=null)try{e.s=s.Fills[t];if(e.s.fgColor&&e.s.fgColor.theme&&!e.s.fgColor.rgb){e.s.fgColor.rgb=bs(n.themeElements.clrScheme[e.s.fgColor.theme].rgb,e.s.fgColor.tint||0);if(a.WTF)e.s.fgColor.raw_rgb=n.themeElements.clrScheme[e.s.fgColor.theme].rgb}if(e.s.bgColor&&e.s.bgColor.theme){e.s.bgColor.rgb=bs(n.themeElements.clrScheme[e.s.bgColor.theme].rgb,e.s.bgColor.tint||0);if(a.WTF)e.s.bgColor.raw_rgb=n.themeElements.clrScheme[e.s.bgColor.theme].rgb}}catch(i){if(a.WTF&&s.Fills)throw i}}function ji(e,r,t){if(e&&e["!ref"]){var a=Ua(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=za(t)}var Vi=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var Xi=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var Gi=/<(?:\w:)?hyperlink [^>]*>/gm;var Yi=/"(\w*:\w*)"/;var Ji=/<(?:\w:)?col\b[^>]*[\/]?>/g;var Ki=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var Zi=/<(?:\w:)?pageMargins[^>]*\/>/g;var qi=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var Qi=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var el=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function rl(e,r,t,a,n,s,i){if(!e)return e;if(!a)a={"!id":{}};if(g!=null&&r.dense==null)r.dense=g;var l=r.dense?[]:{};var o={s:{r:2e6,c:2e6},e:{r:0,c:0}};var c="",f="";var u=e.match(Xi);if(u){c=e.slice(0,u.index);f=e.slice(u.index+u[0].length)}else c=f=e;var h=c.match(qi);if(h)al(h[0],l,n,t);else if(h=c.match(Qi))nl(h[0],h[1]||"",l,n,t,i,s);var d=(c.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(d>0){var m=c.slice(d,d+50).match(Yi);if(m)Hi(l,m[1])}var p=c.match(el);if(p&&p[1])gl(p[1],n);var v=[];if(r.cellStyles){var b=c.match(Ji);if(b)hl(v,b)}if(u)kl(u[1],l,r,o,s,i);var w=f.match(Ki);if(w)l["!autofilter"]=ml(w[0]);var k=[];var y=f.match(Vi);if(y)for(d=0;d!=y.length;++d)k[d]=Ua(y[d].slice(y[d].indexOf('"')+1));var x=f.match(Gi);if(x)cl(l,x,a);var S=f.match(Zi);if(S)l["!margins"]=fl(Zr(S[0]));if(!l["!ref"]&&o.e.c>=o.s.c&&o.e.r>=o.s.r)l["!ref"]=za(o);if(r.sheetRows>0&&l["!ref"]){var C=Ua(l["!ref"]);if(r.sheetRows<=+C.e.r){C.e.r=r.sheetRows-1;if(C.e.r>o.e.r)C.e.r=o.e.r;if(C.e.ro.e.c)C.e.c=o.e.c;if(C.e.c0)l["!cols"]=v;if(k.length>0)l["!merges"]=k;return l}function tl(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function al(e,r,t,a){var n=Zr(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=rt(vt(n.codeName))}function nl(e,r,t,a,n){al(e.slice(0,e.indexOf(">")),t,a,n)}function sl(e,r,t,a,n){var s=false;var i={},l=null;if(a.bookType!=="xlsx"&&r.vbaraw){var o=r.SheetNames[t];try{if(r.Workbook)o=r.Workbook.Sheets[t].CodeName||o}catch(c){}s=true;i.codeName=gt(nt(o))}if(e&&e["!outline"]){var f={summaryBelow:1,summaryRight:1};if(e["!outline"].above)f.summaryBelow=0;if(e["!outline"].left)f.summaryRight=0;l=(l||"")+Ft("outlinePr",null,f)}if(!s&&!l)return;n[n.length]=Ft("sheetPr",l,i)}var il=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var ll=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function ol(e){var r={sheet:1};il.forEach(function(t){if(e[t]!=null&&e[t])r[t]="1"});ll.forEach(function(t){if(e[t]!=null&&!e[t])r[t]="0"});if(e.password)r.password=crypto_CreatePasswordVerifier_Method1(e.password).toString(16).toUpperCase();return Ft("sheetProtection",null,r)}function cl(e,r,t){var a=Array.isArray(e);for(var n=0;n!=r.length;++n){var s=Zr(vt(r[n]),true);if(!s.ref)return;var i=((t||{})["!id"]||[])[s.id];if(i){s.Target=i.Target;if(s.location)s.Target+="#"+rt(s.location)}else{s.Target="#"+rt(s.location);i={Target:s.Target,TargetMode:"Internal"}}s.Rel=i;if(s.tooltip){s.Tooltip=s.tooltip;delete s.tooltip}var l=Ua(s.ref);for(var o=l.s.r;o<=l.e.r;++o)for(var c=l.s.c;c<=l.e.c;++c){var f=La({c:c,r:o});if(a){if(!e[o])e[o]=[];if(!e[o][c])e[o][c]={t:"z",v:undefined};e[o][c].l=s}else{if(!e[f])e[f]={t:"z",v:undefined};e[f].l=s}}}}function fl(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function ul(e){$i(e);return Ft("pageMargins",null,e)}function hl(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Zr(r[a],true);if(n.hidden)n.hidden=ut(n.hidden);var s=parseInt(n.min,10)-1,i=parseInt(n.max,10)-1;if(n.outlineLevel)n.level=+n.outlineLevel||0;delete n.min;delete n.max;n.width=+n.width;if(!t&&n.width){t=true;Fs(n.width)}Es(n);while(s<=i)e[s++]=Sr(n)}}function dl(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=Ft("col",null,zi(n,a))}t[t.length]="";return t.join("")}function ml(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function pl(e,r,t,a){var n=typeof e.ref=="string"?e.ref:za(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var s=t.Workbook.Names;var i=Ba(n);if(i.s.r==i.e.r){i.e.r=Ba(r["!ref"]).e.r;n=za(i)}for(var l=0;la-z][^>]*)?\/?>/g;function gl(e,r){if(!r.Views)r.Views=[{}];(e.match(vl)||[]).forEach(function(e,t){var a=Zr(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(a.rightToLeft&&ut(a.rightToLeft))r.Views[t].RTL=true})}function bl(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return Ft("sheetViews",Ft("sheetView",null,n),{})}function wl(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if((e.v===undefined||e.t==="z"&&!(a||{}).sheetStubs)&&typeof e.f!=="string"&&typeof e.z=="undefined")return"";var n="";var s=e.t,i=e.v;if(e.t!=="z")switch(e.t){case"b":n=e.v?"1":"0";break;case"n":n=""+e.v;break;case"e":n=pn[e.v];break;case"d":if(a&&a.cellDates)n=yr(e.v,-1).toISOString();else{e=Sr(e);e.t="n";n=""+(e.v=hr(yr(e.v)))}if(typeof e.z==="undefined")e.z=K[14];break;default:n=e.v;break;}var l=e.t=="z"||e.v==null?"":_t("v",nt(n)),o={r:r};var c=Wi(a.cellXfs,e,a);if(c!==0)o.s=c;switch(e.t){case"n":break;case"d":o.t="d";break;case"b":o.t="b";break;case"e":o.t="e";break;case"z":break;default:if(e.v==null){delete e.t;break}if(e.v.length>32767)throw new Error("Text length must not exceed 32767 characters");if(a&&a.bookSST){l=_t("v",""+Bi(a.Strings,e.v,a.revStrings));o.t="s";break}else o.t="str";break;}if(e.t!=s){e.t=s;e.v=i}if(typeof e.f=="string"&&e.f){var f=e.F&&e.F.slice(0,r.length)==r?{t:"array",ref:e.F}:null;l=Ft("f",nt(e.f),f)+(e.v!=null?l:"")}if(e.l)t["!links"].push([r,e.l]);if(e.D)o.cm=1;return Ft("c",l,o)}var kl=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var s=bt("v"),i=bt("f");return function l(o,c,f,u,h,d){var m=0,p="",v=[],g=[],b=0,w=0,k=0,y="",x;var S,C=0,_=0;var A,F;var E=0,T=0;var D=Array.isArray(d.CellXf),O;var M=[];var N=[];var P=Array.isArray(c);var I=[],R={},L=false;var B=!!f.sheetStubs;for(var z=o.split(r),$=0,W=z.length;$!=W;++$){p=z[$].trim();var U=p.length;if(U===0)continue;var j=0;e:for(m=0;m":if(p[m-1]!="/"){++m;break e}if(f&&f.cellStyles){S=Zr(p.slice(j,m),true);C=S.r!=null?parseInt(S.r,10):C+1;_=-1;if(f.sheetRows&&f.sheetRows=m)break;S=Zr(p.slice(j,m),true);C=S.r!=null?parseInt(S.r,10):C+1;_=-1;if(f.sheetRows&&f.sheetRowsC-1)u.s.r=C-1;if(u.e.r":"")+p;if(g!=null&&g.length===2){b=0;y=g[1];for(w=0;w!=y.length;++w){if((k=y.charCodeAt(w)-64)<1||k>26)break;b=26*b+k}--b;_=b}else++_;for(w=0;w!=p.length;++w)if(p.charCodeAt(w)===62)break;++w;S=Zr(p.slice(0,w),true);if(!S.r)S.r=La({r:C-1,c:_});y=p.slice(w);x={t:""};if((g=y.match(s))!=null&&g[1]!=="")x.v=rt(g[1]);if(f.cellFormula){if((g=y.match(i))!=null&&g[1]!==""){x.f=rt(vt(g[1]),true);if(!f.xlfn)x.f=Di(x.f);if(g[0].indexOf('t="array"')>-1){x.F=(y.match(n)||[])[1];if(x.F.indexOf(":")>-1)M.push([Ua(x.F),x.F])}else if(g[0].indexOf('t="shared"')>-1){F=Zr(g[0]);var V=rt(vt(g[1]));if(!f.xlfn)V=Di(V);N[parseInt(F.si,10)]=[F,V,S.r]}}else if(g=y.match(/]*\/>/)){F=Zr(g[0]);if(N[F.si])x.f=Ei(N[F.si][1],N[F.si][2],S.r)}var X=Ra(S.r);for(w=0;w=M[w][0].s.r&&X.r<=M[w][0].e.r)if(X.c>=M[w][0].s.c&&X.c<=M[w][0].e.c)x.F=M[w][1]}if(S.t==null&&x.v===undefined){if(x.f||x.F){x.v=0;x.t="n"}else if(!B)continue;else x.t="z"}else x.t=S.t||"n";if(u.s.c>_)u.s.c=_;if(u.e.c<_)u.e.c=_;switch(x.t){case"n":if(x.v==""||x.v==null){if(!B)continue;x.t="z"}else x.v=parseFloat(x.v);break;case"s":if(typeof x.v=="undefined"){if(!B)continue;x.t="z"}else{A=Ii[parseInt(x.v,10)];x.v=A.t;x.r=A.r;if(f.cellHTML)x.h=A.h}break;case"str":x.t="s";x.v=x.v!=null?rt(vt(x.v),true):"";if(f.cellHTML)x.h=lt(x.v);break;case"inlineStr":g=y.match(a);x.t="s";if(g!=null&&(A=ls(g[1]))){x.v=A.t;if(f.cellHTML)x.h=A.h}else x.v="";break;case"b":x.v=ut(x.v);break;case"d":if(f.cellDates)x.v=yr(x.v,1);else{x.v=hr(yr(x.v,1));x.t="n"}break;case"e":if(!f||f.cellText!==false)x.w=x.v;x.v=vn[x.v];break;}E=T=0;O=null;if(D&&S.s!==undefined){O=d.CellXf[S.s];if(O!=null){if(O.numFmtId!=null)E=O.numFmtId;if(f.cellStyles){if(O.fillId!=null)T=O.fillId}}}Ui(x,E,T,f,h,d);if(f.cellDates&&D&&x.t=="n"&&Le(K[E])){x.t="d";x.v=vr(x.v)}if(S.cm&&f.xlmeta){var G=(f.xlmeta.Cell||[])[+S.cm-1];if(G&&G.type=="XLDAPR")x.D=true}if(P){var Y=Ra(S.r);if(!c[Y.r])c[Y.r]=[];c[Y.r][Y.c]=x}else c[S.r]=x}}if(I.length>0)c["!rows"]=I}}();function yl(e,r,t,a){var n=[],s=[],i=Ua(e["!ref"]),l="",o,c="",f=[],u=0,h=0,d=e["!rows"];var m=Array.isArray(e);var p={r:c},v,g=-1;for(h=i.s.c;h<=i.e.c;++h)f[h]=Ma(h);for(u=i.s.r;u<=i.e.r;++u){s=[];c=Ea(u);for(h=i.s.c;h<=i.e.c;++h){o=f[h]+c;var b=m?(e[u]||[])[h]:e[o];if(b===undefined)continue;if((l=wl(b,o,e,r,t,a))!=null)s.push(l)}if(s.length>0||d&&d[u]){p={r:c};if(d&&d[u]){v=d[u];if(v.hidden)p.hidden=1;g=-1;if(v.hpx)g=Os(v.hpx);else if(v.hpt)g=v.hpt;if(g>-1){p.ht=g;p.customHeight=1}if(v.level){p.outlineLevel=v.level}}n[n.length]=Ft("row",s.join(""),p)}}if(d)for(;u-1){p.ht=g;p.customHeight=1}if(v.level){p.outlineLevel=v.level}n[n.length]=Ft("row","",p)}}return n.join("")}function xl(e,r,t,a){var n=[Hr,Ft("worksheet",null,{xmlns:Nt[0],"xmlns:r":Mt.r})];var s=t.SheetNames[e],i=0,l="";var o=t.Sheets[s];if(o==null)o={};var c=o["!ref"]||"A1";var f=Ua(c);if(f.e.c>16383||f.e.r>1048575){if(r.WTF)throw new Error("Range "+c+" exceeds format limit A1:XFD1048576");f.e.c=Math.min(f.e.c,16383);f.e.r=Math.min(f.e.c,1048575);c=za(f)}if(!a)a={};o["!comments"]=[];var u=[];sl(o,t,e,r,n);n[n.length]=Ft("dimension",null,{ref:c});n[n.length]=bl(o,r,e,t);if(r.sheetFormat)n[n.length]=Ft("sheetFormatPr",null,{defaultRowHeight:r.sheetFormat.defaultRowHeight||"16",baseColWidth:r.sheetFormat.baseColWidth||"10",outlineLevelRow:r.sheetFormat.outlineLevelRow||"7"});if(o["!cols"]!=null&&o["!cols"].length>0)n[n.length]=dl(o,o["!cols"]);n[i=n.length]="";o["!links"]=[];if(o["!ref"]!=null){l=yl(o,r,e,t,a);if(l.length>0)n[n.length]=l}if(n.length>i+1){n[n.length]="";n[i]=n[i].replace("/>",">")}if(o["!protect"])n[n.length]=ol(o["!protect"]);if(o["!autofilter"]!=null)n[n.length]=pl(o["!autofilter"],o,t,e);if(o["!merges"]!=null&&o["!merges"].length>0)n[n.length]=tl(o["!merges"]);var h=-1,d,m=-1;if(o["!links"].length>0){n[n.length]="";o["!links"].forEach(function(e){if(!e[1].Target)return;d={ref:e[0]};if(e[1].Target.charAt(0)!="#"){m=Fn(a,-1,nt(e[1].Target).replace(/#.*$/,""),Sn.HLINK);d["r:id"]="rId"+m}if((h=e[1].Target.indexOf("#"))>-1)d.location=nt(e[1].Target.slice(h+1));if(e[1].Tooltip)d.tooltip=nt(e[1].Tooltip);n[n.length]=Ft("hyperlink",null,d)});n[n.length]=""}delete o["!links"];if(o["!margins"]!=null)n[n.length]=ul(o["!margins"]); -if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=_t("ignoredErrors",Ft("ignoredError",null,{numberStoredAsText:1,sqref:c}));if(u.length>0){m=Fn(a,-1,"../drawings/drawing"+(e+1)+".xml",Sn.DRAW);n[n.length]=Ft("drawing",null,{"r:id":"rId"+m});o["!drawing"]=u}if(o["!comments"].length>0){m=Fn(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",Sn.VML);n[n.length]=Ft("legacyDrawing",null,{"r:id":"rId"+m});o["!legacy"]=m}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function Sl(e){var r=[];var t=e.match(/^/);var a;(e.match(/(.*?)<\/c:pt>/gm)||[]).forEach(function(e){var a=e.match(/(.*)<\/c:v><\/c:pt>/);if(!a)return;r[+a[1]]=t?+a[2]:a[2]});var n=rt((e.match(/([\s\S]*?)<\/c:formatCode>/)||["","General"])[1]);(e.match(/(.*?)<\/c:f>/gm)||[]).forEach(function(e){a=e.replace(/<.*?>/g,"")});return[r,n,a]}function Cl(e,r,t,a,n,s){var i=s||{"!type":"chart"};if(!e)return s;var l=0,o=0,c="A";var f={s:{r:2e6,c:2e6},e:{r:0,c:0}};(e.match(/[\s\S]*?<\/c:numCache>/gm)||[]).forEach(function(e){var r=Sl(e);f.s.r=f.s.c=0;f.e.c=l;c=Ma(l);r[0].forEach(function(e,t){i[c+Ea(t)]={t:"n",v:e,z:r[1]};o=t});if(f.e.r0)i["!ref"]=za(f);return i}function _l(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var s={"!type":"chart","!drawel":null,"!rel":""};var i;var l=e.match(qi);if(l)al(l[0],s,n,t);if(i=e.match(/drawing r:id="(.*?)"/))s["!rel"]=i[1];if(a["!id"][s["!rel"]])s["!drawel"]=a["!id"][s["!rel"]];return s}var Al=[["allowRefreshQuery",false,"bool"],["autoCompressPictures",true,"bool"],["backupFile",false,"bool"],["checkCompatibility",false,"bool"],["CodeName",""],["date1904",false,"bool"],["defaultThemeVersion",0,"int"],["filterPrivacy",false,"bool"],["hidePivotFieldList",false,"bool"],["promptedSolutions",false,"bool"],["publishItems",false,"bool"],["refreshAllConnections",false,"bool"],["saveExternalLinkValues",true,"bool"],["showBorderUnselectedTables",true,"bool"],["showInkAnnotation",true,"bool"],["showObjects","all"],["showPivotChartFilter",false,"bool"],["updateLinks","userSet"]];var Fl=[["activeTab",0,"int"],["autoFilterDateGrouping",true,"bool"],["firstSheet",0,"int"],["minimized",false,"bool"],["showHorizontalScroll",true,"bool"],["showSheetTabs",true,"bool"],["showVerticalScroll",true,"bool"],["tabRatio",600,"int"],["visibility","visible"]];var El=[];var Tl=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function Dl(e,r){for(var t=0;t!=e.length;++t){var a=e[t];for(var n=0;n!=r.length;++n){var s=r[n];if(a[s[0]]==null)a[s[0]]=s[1];else switch(s[2]){case"bool":if(typeof a[s[0]]=="string")a[s[0]]=ut(a[s[0]]);break;case"int":if(typeof a[s[0]]=="string")a[s[0]]=parseInt(a[s[0]],10);break;}}}}function Ol(e,r){for(var t=0;t!=r.length;++t){var a=r[t];if(e[a[0]]==null)e[a[0]]=a[1];else switch(a[2]){case"bool":if(typeof e[a[0]]=="string")e[a[0]]=ut(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function Ml(e){Ol(e.WBProps,Al);Ol(e.CalcPr,Tl);Dl(e.WBView,Fl);Dl(e.Sheets,El);Ri.date1904=ut(e.WBProps.date1904)}function Nl(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return ut(e.Workbook.WBProps.date1904)?"true":"false"}var Pl=":][*?/\\".split("");function Il(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;Pl.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function Rl(e,r,t){e.forEach(function(a,n){Il(a);for(var s=0;s22)throw new Error("Bad Code Name: Worksheet"+i)}})}function Ll(e){if(!e||!e.SheetNames||!e.Sheets)throw new Error("Invalid Workbook");if(!e.SheetNames.length)throw new Error("Workbook is empty");var r=e.Workbook&&e.Workbook.Sheets||[];Rl(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":Al.forEach(function(e){if(f[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=ut(f[e[0]]);break;case"int":t.WBProps[e[0]]=parseInt(f[e[0]],10);break;default:t.WBProps[e[0]]=f[e[0]];}});if(f.codeName)t.WBProps.CodeName=vt(f.codeName);break;case"":break;case"":break;case"":;case"":break;case"":delete f[0];t.WBView.push(f);break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":a=false;break;case"":{s.Ref=rt(vt(e.slice(i,c)));t.Names.push(s)}break;case"":break;case"":delete f[0];t.CalcPr=f;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":;case"":break;case"":a=false;break;case"":a=true;break;case"":a=false;break;case"0;var a={codeName:"ThisWorkbook"};if(e.Workbook&&e.Workbook.WBProps){Al.forEach(function(r){if(e.Workbook.WBProps[r[0]]==null)return;if(e.Workbook.WBProps[r[0]]==r[1])return;a[r[0]]=e.Workbook.WBProps[r[0]]});if(e.Workbook.WBProps.CodeName){a.codeName=e.Workbook.WBProps.CodeName;delete a.CodeName}}r[r.length]=Ft("workbookPr",null,a);var n=e.Workbook&&e.Workbook.Sheets||[];var s=0;if(n&&n[0]&&!!n[0].Hidden){r[r.length]="";for(s=0;s!=e.SheetNames.length;++s){if(!n[s])break;if(!n[s].Hidden)break}if(s==e.SheetNames.length)s=0;r[r.length]='';r[r.length]=""}r[r.length]="";for(s=0;s!=e.SheetNames.length;++s){var i={name:nt(e.SheetNames[s].slice(0,31))};i.sheetId=""+(s+1);i["r:id"]="rId"+(s+1);if(n[s])switch(n[s].Hidden){case 1:i.state="hidden";break;case 2:i.state="veryHidden";break;}r[r.length]=Ft("sheet",null,i)}r[r.length]="";if(t){r[r.length]="";if(e.Workbook&&e.Workbook.Names)e.Workbook.Names.forEach(function(e){var t={name:e.Name};if(e.Comment)t.comment=e.Comment;if(e.Sheet!=null)t.localSheetId=""+e.Sheet;if(e.Hidden)t.hidden="1";if(!e.Ref)return;r[r.length]=Ft("definedName",nt(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Wl(e,r,t){if(r.slice(-4)===".bin")return parse_wb_bin(e,t);return zl(e,t)}function Ul(e,r,t,a,n,s,i,l){if(r.slice(-4)===".bin")return parse_ws_bin(e,a,t,n,s,i,l);return rl(e,a,t,n,s,i,l)}function jl(e,r,t,a,n,s,i,l){if(r.slice(-4)===".bin")return parse_cs_bin(e,a,t,n,s,i,l);return _l(e,a,t,n,s,i,l)}function Hl(e,r,t,a,n,s,i,l){if(r.slice(-4)===".bin")return xi(e,a,t,n,s,i,l);return Si(e,a,t,n,s,i,l)}function Vl(e,r,t,a,n,s,i,l){if(r.slice(-4)===".bin")return ki(e,a,t,n,s,i,l);return yi(e,a,t,n,s,i,l)}function Xl(e,r,t,a){if(r.slice(-4)===".bin")return parse_sty_bin(e,t,a);return js(e,t,a)}function Gl(e,r,t){if(r.slice(-4)===".bin")return parse_sst_bin(e,t);return us(e,t)}function Yl(e,r,t){if(r.slice(-4)===".bin")return parse_comments_bin(e,t);return fi(e,t)}function Jl(e,r,t){if(r.slice(-4)===".bin")return parse_cc_bin(e,r,t);return parse_cc_xml(e,r,t)}function Kl(e,r,t,a){if(t.slice(-4)===".bin")return si(e,r,t,a);return ni(e,r,t,a)}function Zl(e,r,t){if(r.slice(-4)===".bin")return parse_xlmeta_bin(e,r,t);return ti(e,r,t)}function ql(e,r){var t=r||{};if(g!=null&&t.dense==null)t.dense=g;var a=t.dense?[]:{};e=e.replace(//g,"");var n=e.match(/");var s=e.match(/<\/table/i);var i=n.index,l=s&&s.index||e.length;var o=Dr(e.slice(i,l),/(:?]*>)/i,"");var c=-1,f=0,u=0,h=0;var d={s:{r:1e7,c:1e7},e:{r:0,c:0}};var m=[];for(i=0;i/i);for(l=0;l"))>-1)k=k.slice(y+1);for(var x=0;x")));h=C.colspan?+C.colspan:1;if((u=+C.rowspan)>1||h>1)m.push({s:{r:c,c:f},e:{r:c+(u||1)-1,c:f+h-1}});var _=C.t||C["data-t"]||"";if(!k.length){f+=h;continue}k=wt(k);if(d.s.r>c)d.s.r=c;if(d.e.rf)d.s.c=f;if(d.e.ct||n[f].s.c>l)continue;if(n[f].e.r1)i.rowspan=o;if(c>1)i.colspan=c;if(a.editable)d=''+d+"";else if(h){i["data-t"]=h&&h.t||"z";if(h.v!=null)i["data-v"]=h.v;if(h.z!=null)i["data-z"]=h.z;if(h.l&&(h.l.Target||"#").charAt(0)!="#")d=''+d+""}i.id=(a.id||"sjs")+"-"+u;s.push(Ft("td",d,i))}var m="";return m+s.join("")+""}var eo='SheetJS Table Export';var ro="";function to(e,r){var t=e.match(/[\s\S]*?<\/table>/gi);if(!t||t.length==0)throw new Error("Invalid HTML: could not find
");if(t.length==1){var a=Va(ql(t[0],r),r);a.bookType="html";return a}var n=mc();t.forEach(function(e,t){pc(n,ql(e,r),"Sheet"+(t+1))});n.bookType="html";return n}function ao(e,r,t){var a=[];return a.join("")+""}function no(e,r){var t=r||{};var a=t.header!=null?t.header:eo;var n=t.footer!=null?t.footer:ro;var s=[a];var i=Ba(e["!ref"]);t.dense=Array.isArray(e);s.push(ao(e,i,t));for(var l=i.s.r;l<=i.e.r;++l)s.push(Ql(e,i,l,t));s.push("
"+n);return s.join("")}function so(e,r,t){var a=r.rows;if(!a){throw"Unsupported origin when "+r.tagName+" is not a TABLE"}var n=t||{};if(g!=null)n.dense=g;var s=0,i=0;if(n.origin!=null){if(typeof n.origin=="number")s=n.origin;else{var l=typeof n.origin=="string"?Ra(n.origin):n.origin;s=l.r;i=l.c}}var o=Math.min(n.sheetRows||1e7,a.length);var c={s:{r:0,c:0},e:{r:s,c:i}};if(e["!ref"]){var f=Ba(e["!ref"]);c.s.r=Math.min(c.s.r,f.s.r);c.s.c=Math.min(c.s.c,f.s.c);c.e.r=Math.max(c.e.r,f.e.r);c.e.c=Math.max(c.e.c,f.e.c);if(s==-1)c.e.r=s=f.e.r+1}var u=[],h=0;var d=e["!rows"]||(e["!rows"]=[]);var m=0,p=0,v=0,b=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;m1||k>1)u.push({s:{r:p+s,c:b+i},e:{r:p+s+(w||1)-1,c:b+i+(k||1)-1}});var F={t:"s",v:C};var E=S.getAttribute("data-t")||S.getAttribute("t")||"";if(C!=null){if(C.length==0)F.t=E||"z";else if(n.raw||C.trim().length==0||E=="s"){}else if(C==="TRUE")F={t:"b",v:true};else if(C==="FALSE")F={t:"b",v:false};else if(!isNaN(_r(C)))F={t:"n",v:_r(C)};else if(!isNaN(Tr(C).getDate())){F={t:"d",v:yr(C)};if(!n.cellDates)F={t:"n",v:hr(F.v)};F.z=n.dateNF||K[14]}}if(F.z===undefined&&_!=null)F.z=_;var T="",D=S.getElementsByTagName("A");if(D&&D.length)for(var O=0;O=o)e["!fullref"]=za((c.e.r=a.length-m+p-1+s,c));return e}function io(e,r){var t=r||{};var a=t.dense?[]:{};return so(a,e,r)}function lo(e,r){var t=Va(io(e,r),r);return t}function oo(e){var r="";var t=co(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function co(e){if(e.ownerDocument.defaultView&&typeof e.ownerDocument.defaultView.getComputedStyle==="function")return e.ownerDocument.defaultView.getComputedStyle;if(typeof getComputedStyle==="function")return getComputedStyle;return null}function fo(e){var r=e.replace(/[\t\r\n]/g," ").trim().replace(/ +/g," ").replace(//g," ").replace(//g,function(e,r){return Array(parseInt(r,10)+1).join(" ")}).replace(/]*\/>/g,"\t").replace(//g,"\n");var t=rt(r.replace(/<[^>]*>/g,""));return[t]}function uo(e,r,t){var a=t||{};var n=Dt(e);Ot.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");var s,i,l="",o="",c,f=0,u=-1,h=false,d="";while(s=Ot.exec(n)){switch(s[3]=s[3].replace(/_.*$/,"")){case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":;case"text-style":if(s[1]==="/"){h=false;if(i["truncate-on-overflow"]=="false"){if(l.match(/h/))l=l.replace(/h+/,"[$&]");else if(l.match(/m/))l=l.replace(/m+/,"[$&]");else if(l.match(/s/))l=l.replace(/s+/,"[$&]")}a[i.name]=l;l=""}else if(s[0].charAt(s[0].length-2)!=="/"){h=true;l="";i=Zr(s[0],false)}break;case"boolean-style":if(s[1]==="/"){h=false;a[i.name]="General";l=""}else if(s[0].charAt(s[0].length-2)!=="/"){h=true;l="";i=Zr(s[0],false)}break;case"boolean":l+="General";break;case"text":if(s[1]==="/"){d=n.slice(u,Ot.lastIndex-s[0].length);if(d=="%"&&i[0]=="=0")l=a[c["apply-style-name"]]+";"+l;else console.error("ODS number format may be incorrect: "+c["condition"]);break;case"number":if(s[1]==="/")break;c=Zr(s[0],false);o="";o+=Cr("0",+c["min-integer-digits"]||1);if(ut(c["grouping"]))o=de(Cr("#",Math.max(0,4-o.length))+o);if(+c["min-decimal-places"]||+c["decimal-places"])o+=".";if(+c["min-decimal-places"])o+=Cr("0",+c["min-decimal-places"]||1);if(+c["decimal-places"]-(+c["min-decimal-places"]||0))o+=Cr("0",+c["decimal-places"]-(+c["min-decimal-places"]||0));l+=o;break;case"embedded-text":if(s[1]==="/"){if(f==0)l+='"'+n.slice(u,Ot.lastIndex-s[0].length).replace(/"/g,'""')+'"';else l=l.slice(0,f)+'"'+n.slice(u,Ot.lastIndex-s[0].length).replace(/"/g,'""')+'"'+l.slice(f)}else if(s[0].charAt(s[0].length-2)!=="/"){u=Ot.lastIndex;f=-+Zr(s[0],false)["position"]||0}break;}}return a}function ho(e,r,t){var a=r||{};if(g!=null&&a.dense==null)a.dense=g;var n=Dt(e);var s=[],i;var l;var o,c="",f=0;var u;var h;var d={},m=[];var p=a.dense?[]:{};var v,b;var w={value:""};var k="",y=0,x;var S=[];var C=-1,_=-1,A={s:{r:1e6,c:1e7},e:{r:0,c:0}};var F=0;var E=t||{},T={};var D=[],O={},M=0,N=0;var P=[],I=1,R=1;var L=[];var B={Names:[],WBProps:{}};var z={};var $=["",""];var W=[],U={};var j="",H=0;var V=false,X=false;var G=0;var Y=0;Ot.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");while(v=Ot.exec(n))switch(v[3]=v[3].replace(/_.*$/,"")){case"table":;case"工作表":if(v[1]==="/"){if(A.e.c>=A.s.c&&A.e.r>=A.s.r)p["!ref"]=za(A);else p["!ref"]="A1:A1";if(a.sheetRows>0&&a.sheetRows<=A.e.r){p["!fullref"]=p["!ref"];A.e.r=a.sheetRows-1;p["!ref"]=za(A)}if(D.length)p["!merges"]=D;if(P.length)p["!rows"]=P;u.name=u["名称"]||u.name;if(typeof JSON!=="undefined")JSON.stringify(u);m.push(u.name);d[u.name]=p;X=false}else if(v[0].charAt(v[0].length-2)!=="/"){u=Zr(v[0],false);C=_=-1;A.s.r=A.s.c=1e7;A.e.r=A.e.c=0;p=a.dense?[]:{};D=[];P=[];X=true}break;case"table-row-group":if(v[1]==="/")--F;else++F;break;case"table-row":;case"行":if(v[1]==="/"){C+=I;I=1;break}h=Zr(v[0],false);if(h["行号"])C=h["行号"]-1;else if(C==-1)C=0;I=+h["number-rows-repeated"]||1;if(I<10)for(G=0;G0)P[C+G]={level:F};_=-1;break;case"covered-table-cell":if(v[1]!=="/")++_;if(a.sheetStubs){if(a.dense){if(!p[C])p[C]=[];p[C][_]={t:"z"}}else p[La({r:C,c:_})]={t:"z"}}k="";S=[];break;case"table-cell":;case"数据":if(v[0].charAt(v[0].length-2)==="/"){++_;w=Zr(v[0],false);R=parseInt(w["number-columns-repeated"]||"1",10);b={t:"z",v:null};if(w.formula&&a.cellFormula!=false)b.f=Oi(rt(w.formula));if(w["style-name"]&&T[w["style-name"]])b.z=T[w["style-name"]];if((w["数据类型"]||w["value-type"])=="string"){b.t="s";b.v=rt(w["string-value"]||"");if(a.dense){if(!p[C])p[C]=[];p[C][_]=b}else{p[La({r:C,c:_})]=b}}_+=R-1}else if(v[1]!=="/"){++_;k="";y=0;S=[];R=1;var J=I?C+I-1:C;if(_>A.e.c)A.e.c=_;if(_A.e.r)A.e.r=J;w=Zr(v[0],false);W=[];U={};b={t:w["数据类型"]||w["value-type"],v:null};if(w["style-name"]&&T[w["style-name"]])b.z=T[w["style-name"]];if(a.cellFormula){if(w.formula)w.formula=rt(w.formula);if(w["number-matrix-columns-spanned"]&&w["number-matrix-rows-spanned"]){M=parseInt(w["number-matrix-rows-spanned"],10)||0;N=parseInt(w["number-matrix-columns-spanned"],10)||0;O={s:{r:C,c:_},e:{r:C+M-1,c:_+N-1}};b.F=za(O);L.push([O,b.F])}if(w.formula)b.f=Oi(w.formula);else for(G=0;G=L[G][0].s.r&&C<=L[G][0].e.r)if(_>=L[G][0].s.c&&_<=L[G][0].e.c)b.F=L[G][1]}if(w["number-columns-spanned"]||w["number-rows-spanned"]){M=parseInt(w["number-rows-spanned"],10)||0;N=parseInt(w["number-columns-spanned"],10)||0;O={s:{r:C,c:_},e:{r:C+M-1,c:_+N-1}};D.push(O)}if(w["number-columns-repeated"])R=parseInt(w["number-columns-repeated"],10);switch(b.t){case"boolean":b.t="b";b.v=ut(w["boolean-value"])||+w["boolean-value"]>=1;break;case"float":b.t="n";b.v=parseFloat(w.value);break;case"percentage":b.t="n";b.v=parseFloat(w.value);break;case"currency":b.t="n";b.v=parseFloat(w.value);break;case"date":b.t="d";b.v=yr(w["date-value"]);if(!a.cellDates){b.t="n";b.v=hr(b.v,B.WBProps.date1904)-Y}if(!b.z)b.z="m/d/yy";break;case"time":b.t="n";b.v=gr(w["time-value"])/86400;if(a.cellDates){b.t="d";b.v=vr(b.v)}if(!b.z)b.z="HH:MM:SS";break;case"number":b.t="n";b.v=parseFloat(w["数据数值"]);break;default:if(b.t==="string"||b.t==="text"||!b.t){b.t="s";if(w["string-value"]!=null){k=rt(w["string-value"]);S=[]}}else throw new Error("Unsupported value type "+b.t);}}else{V=false;if(b.t==="s"){b.v=k||"";if(S.length)b.R=S;V=y==0}if(z.Target)b.l=z;if(W.length>0){b.c=W;W=[]}if(k&&a.cellText!==false)b.w=k;if(V){b.t="z";delete b.v}if(!V||a.sheetStubs){if(!(a.sheetRows&&a.sheetRows<=C)){for(var K=0;K0)p[C+K][_+R]=Sr(b)}else{p[La({r:C+K,c:_})]=b;while(--R>0)p[La({r:C+K,c:_+R})]=Sr(b)}if(A.e.c<=_)A.e.c=_}}}R=parseInt(w["number-columns-repeated"]||"1",10);_+=R-1;R=0;b={};k="";S=[]}z={};break;case"document":;case"document-content":;case"电子表格文档":;case"spreadsheet":;case"主体":;case"scripts":;case"styles":;case"font-face-decls":;case"master-styles":if(v[1]==="/"){if((i=s.pop())[0]!==v[3])throw"Bad state: "+i}else if(v[0].charAt(v[0].length-2)!=="/")s.push([v[3],true]);break;case"annotation":if(v[1]==="/"){if((i=s.pop())[0]!==v[3])throw"Bad state: "+i;U.t=k;if(S.length)U.R=S;U.a=j;W.push(U)}else if(v[0].charAt(v[0].length-2)!=="/"){s.push([v[3],false])}j="";H=0;k="";y=0;S=[];break;case"creator":if(v[1]==="/"){j=n.slice(H,v.index)}else H=v.index+v[0].length;break;case"meta":;case"元数据":;case"settings":;case"config-item-set":;case"config-item-map-indexed":;case"config-item-map-entry":;case"config-item-map-named":;case"shapes":;case"frame":;case"text-box":;case"image":;case"data-pilot-tables":;case"list-style":;case"form":;case"dde-links":;case"event-listeners":;case"chart":if(v[1]==="/"){if((i=s.pop())[0]!==v[3])throw"Bad state: "+i}else if(v[0].charAt(v[0].length-2)!=="/")s.push([v[3],false]);k="";y=0;S=[];break;case"scientific-number":;case"currency-symbol":;case"fill-character":break;case"text-style":;case"boolean-style":;case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":if(v[1]==="/"){var Z=Ot.lastIndex;uo(n.slice(o,Ot.lastIndex),r,E);Ot.lastIndex=Z}else if(v[0].charAt(v[0].length-2)!=="/"){o=Ot.lastIndex-v[0].length}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":{var q=Zr(v[0],false);if(q["family"]=="table-cell"&&E[q["data-style-name"]])T[q["name"]]=E[q["data-style-name"]]}break;case"map":break;case"font-face":break;case"paragraph-properties":break;case"table-properties":break;case"table-column-properties":break;case"table-row-properties":break;case"table-cell-properties":break;case"number":break;case"fraction":break;case"day":;case"month":;case"year":;case"era":;case"day-of-week":;case"week-of-year":;case"quarter":;case"hours":;case"minutes":;case"seconds":;case"am-pm":break;case"boolean":break;case"text":if(v[0].slice(-2)==="/>")break;else if(v[1]==="/")switch(s[s.length-1][0]){case"number-style":;case"date-style":;case"time-style":c+=n.slice(f,v.index);break;}else f=v.index+v[0].length;break;case"named-range":l=Zr(v[0],false);$=Ni(l["cell-range-address"]);var Q={Name:l.name,Ref:$[0]+"!"+$[1]};if(X)Q.Sheet=m.length;B.Names.push(Q);break;case"text-content":break;case"text-properties":break;case"embedded-text":break;case"body":;case"电子表格":break;case"forms":break;case"table-column":break;case"table-header-rows":break;case"table-rows":break;case"table-column-group":break;case"table-header-columns":break;case"table-columns":break;case"null-date":l=Zr(v[0],false);switch(l["date-value"]){case"1904-01-01":B.WBProps.date1904=true;case"1900-01-01":Y=0;}break;case"graphic-properties":break;case"calculation-settings":break;case"named-expressions":break;case"label-range":break;case"label-ranges":break;case"named-expression":break;case"sort":break;case"sort-by":break;case"sort-groups":break;case"tab":break;case"line-break":break;case"span":break;case"p":;case"文本串":if(["master-styles"].indexOf(s[s.length-1][0])>-1)break;if(v[1]==="/"&&(!w||!w["string-value"])){var ee=fo(n.slice(y,v.index),x);k=(k.length>0?k+"\n":"")+ee[0]}else{x=Zr(v[0],false);y=v.index+v[0].length}break;case"s":break;case"database-range":if(v[1]==="/")break;try{$=Ni(Zr(v[0])["target-range-address"]);d[$[0]]["!autofilter"]={ref:$[1]}}catch(re){}break;case"date":break;case"object":break;case"title":;case"标题":break;case"desc":break;case"binary-data":break;case"table-source":break;case"scenario":break;case"iteration":break;case"content-validations":break;case"content-validation":break;case"help-message":break;case"error-message":break;case"database-ranges":break;case"filter":break;case"filter-and":break;case"filter-or":break;case"filter-condition":break;case"list-level-style-bullet":break;case"list-level-style-number":break;case"list-level-properties":break;case"sender-firstname":;case"sender-lastname":;case"sender-initials":;case"sender-title":;case"sender-position":;case"sender-email":;case"sender-phone-private":;case"sender-fax":;case"sender-company":;case"sender-phone-work":;case"sender-street":;case"sender-city":;case"sender-postal-code":;case"sender-country":;case"sender-state-or-province":;case"author-name":;case"author-initials":;case"chapter":;case"file-name":;case"template-name":;case"sheet-name":break;case"event-listener":break;case"initial-creator":;case"creation-date":;case"print-date":;case"generator":;case"document-statistic":;case"user-defined":;case"editing-duration":;case"editing-cycles":break;case"config-item":break;case"page-number":break;case"page-count":break;case"time":break;case"cell-range-source":break;case"detective":break;case"operation":break;case"highlighted-range":break;case"data-pilot-table":;case"source-cell-range":;case"source-service":;case"data-pilot-field":;case"data-pilot-level":;case"data-pilot-subtotals":;case"data-pilot-subtotal":;case"data-pilot-members":;case"data-pilot-member":;case"data-pilot-display-info":;case"data-pilot-sort-info":;case"data-pilot-layout-info":;case"data-pilot-field-reference":;case"data-pilot-groups":;case"data-pilot-group":;case"data-pilot-group-member":break;case"rect":break;case"dde-connection-decls":;case"dde-connection-decl":;case"dde-link":;case"dde-source":break;case"properties":break;case"property":break;case"a":if(v[1]!=="/"){z=Zr(v[0],false);if(!z.href)break;z.Target=rt(z.href);delete z.href;if(z.Target.charAt(0)=="#"&&z.Target.indexOf(".")>-1){$=Ni(z.Target.slice(1));z.Target="#"+$[0]+"!"+$[1]}else if(z.Target.match(/^\.\.[\\\/]/))z.Target=z.Target.slice(3)}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(v[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(a.WTF)throw new Error(v);};}var te={Sheets:d,SheetNames:m,Workbook:B};if(a.bookSheets)delete te.Sheets;return te}function mo(e,r){r=r||{};if(Pr(e,"META-INF/manifest.xml"))Tn(Rr(e,"META-INF/manifest.xml"),r);var t=Lr(e,"styles.xml");var a=t&&uo(vt(t),r);var n=Lr(e,"content.xml");if(!n)throw new Error("Missing content.xml in ODS / UOF file");var s=ho(vt(n),r,a);if(Pr(e,"meta.xml"))s.Props=Ln(Rr(e,"meta.xml"));s.bookType="ods";return s}function po(e,r){var t=ho(e,r);t.bookType="fods";return t}var vo=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return Hr+r}}();function go(e,r){var t="number",a="",n={"style:name":r},s="",i=0;e=e.replace(/"[$]"/g,"$");e:{if(e.indexOf(";")>-1){console.error("Unsupported ODS Style Map exported. Using first branch of "+e);e=e.slice(0,e.indexOf(";"))}if(e=="@"){t="text";a="";break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[i]=='"'){s="";while(e[++i]!='"'||e[++i]=='"')s+=e[i];--i;if(e[i+1]=="*"){i++;a+=""+nt(s.replace(/""/g,'"'))+""}else{a+=""+nt(s.replace(/""/g,'"'))+""}e=e.slice(i+1);i=0}var l=e.match(/# (\?+)\/(\?+)/);if(l){a+=Ft("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":l[1].length,"number:max-denominator-value":Math.max(+l[1].replace(/./g,"9"),+l[2].replace(/./g,"9"))});break e}if(l=e.match(/# (\?+)\/(\d+)/)){a+=Ft("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":l[1].length,"number:denominator-value":+l[2]});break e}if(l=e.match(/(\d+)(|\.\d+)%/)){t="percentage";a+=Ft("number:number",null,{"number:decimal-places":l[2]&&l.length-1||0,"number:min-decimal-places":l[2]&&l.length-1||0,"number:min-integer-digits":l[1].length})+"%";break e}var o=false;if(["y","m","d"].indexOf(e[0])>-1){t="date";r:for(;i";break;case"yyy":;case"yyyy":a+='';break;case"mmmmm":console.error("ODS has no equivalent of format |mmmmm|");case"m":;case"mm":;case"mmm":;case"mmmm":a+='';break;case"d":;case"dd":a+='';break;case"ddd":;case"dddd":a+='';break;}break;case'"':while(e[++i]!='"'||e[++i]=='"')s+=e[i];--i;a+=""+nt(s.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(s)+"";break;default:console.error("unrecognized character "+s+" in ODF format "+e);}if(!o)break e;e=e.slice(i+1);i=0}if(e.match(/^\[?[hms]/)){if(t=="number")t="time";if(e.match(/\[/)){e=e.replace(/[\[\]]/g,"");n["number:truncate-on-overflow"]="false"}for(;i';break;case"m":;case"mm":a+='';break;case"s":;case"ss":if(e[i+1]==".")do{s+=e[i+1];++i}while(e[i+1]=="0");a+='";break;}break;case'"':while(e[++i]!='"'||e[++i]=='"')s+=e[i];--i;a+=""+nt(s.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(s)+"";break;case"a":if(e.slice(i,i+3).toLowerCase()=="a/p"){a+="";i+=2;break}if(e.slice(i,i+5).toLowerCase()=="am/pm"){a+="";i+=4;break};default:console.error("unrecognized character "+s+" in ODF format "+e);}break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[0]=="$"){a+='$';e=e.slice(1);i=0}i=0;if(e[i]=='"'){while(e[++i]!='"'||e[++i]=='"')s+=e[i];--i;if(e[i+1]=="*"){i++;a+=""+nt(s.replace(/""/g,'"'))+""}else{a+=""+nt(s.replace(/""/g,'"'))+""}e=e.slice(i+1);i=0}var f=e.match(/([#0][0#,]*)(\.[0#]*|)(E[+]?0*|)/i);if(!f||!f[0])console.error("Could not find numeric part of "+e);else{var u=f[1].replace(/,/g,"");a+="-1?' number:grouping="true"':"")+(f[2]&&' number:decimal-places="'+(f[2].length-1)+'"'||' number:decimal-places="0"')+(f[3]&&f[3].indexOf("+")>-1?' number:forced-exponent-sign="true"':"")+(f[3]?' number:min-exponent-digits="'+f[3].match(/0+/)[0].length+'"':"")+">"+"";i=f.index+f[0].length}if(e[i]=='"'){s="";while(e[++i]!='"'||e[++i]=='"')s+=e[i];--i;a+=""+nt(s.replace(/""/g,'"'))+""}}if(!a){console.error("Could not generate ODS number format for |"+e+"|");return""}return Ft("number:"+t+"-style",a,n)}function bo(e,r,t){var a=e.filter(function(e){return e.Sheet==(t==-1?null:t)});if(!a.length)return"";return" \n"+a.map(function(e){var r=Pi(e.Ref);return" "+Ft("table:named-range",null,{"table:name":e.Name,"table:cell-range-address":r,"table:base-cell-address":r.replace(/[\.]?[^\.]*$/,".$A$1")})}).join("\n")+"\n \n"}var wo=function(){var e=function(e){return nt(e).replace(/ +/g,function(e){return''}).replace(/\t/g,"").replace(/\n/g,"").replace(/^ /,"").replace(/ $/,"")};var r=" \n";var t=" \n";var a=function(a,n,s,i,l){var o=[];o.push(' \n');var c=0,f=0,u=Ba(a["!ref"]||"A1");var h=a["!merges"]||[],d=0;var m=Array.isArray(a);if(a["!cols"]){for(f=0;f<=u.e.c;++f)o.push(" \n")}var p="",v=a["!rows"]||[];for(c=0;c\n")}for(;c<=u.e.r;++c){p=v[c]?' table:style-name="ro'+v[c].ods+'"':"";o.push(" \n");for(f=0;ff)continue;if(h[d].s.r>c)continue;if(h[d].e.c\n")}if((n.Workbook||{}).Names)o.push(bo(n.Workbook.Names,n.SheetNames,s));o.push(" \n");return o.join("")};var n=function(e,r){e.push(" \n");var t=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!cols"]){for(var a=0;a\n');e.push(' \n');e.push(" \n");++t}}});var a=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!rows"]){for(var t=0;t\n');e.push(' \n');e.push(" \n");++a}}});e.push(' \n');e.push(' \n');e.push(" \n");e.push(' \n');e.push(' \n');e.push(" /\n");e.push(' \n');e.push(" /\n");e.push(" \n");e.push(" \n");var n={};var s=69;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;var t=Ba(r["!ref"]);for(var a=0;a<=t.e.r;++a)for(var i=0;i<=t.e.c;++i){var l=Array.isArray(r)?(r[a]||[])[i]:r[La({r:a,c:i})];if(!l||!l.z||l.z.toLowerCase()=="general")continue;if(!n[l.z]){var o=go(l.z,"N"+s);if(o){n[l.z]="N"+s;++s;e.push(o+"\n")}}}});e.push(' \n');ir(n).forEach(function(r){e.push('\n')});e.push(" \n");return n};return function s(e,r){var t=[Hr];var s=At({"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:meta":"urn:oasis:names:tc:opendocument:xmlns:meta:1.0","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:presentation":"urn:oasis:names:tc:opendocument:xmlns:presentation:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:chart":"urn:oasis:names:tc:opendocument:xmlns:chart:1.0","xmlns:dr3d":"urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0","xmlns:math":"http://www.w3.org/1998/Math/MathML","xmlns:form":"urn:oasis:names:tc:opendocument:xmlns:form:1.0","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 i=At({"xmlns:config":"urn:oasis:names:tc:opendocument:xmlns:config:1.0","office:mimetype":"application/vnd.oasis.opendocument.spreadsheet"});if(r.bookType=="fods"){t.push("\n");t.push(Pn().replace(//,"").replace(/<\/office:document-meta>/,"")+"\n")}else t.push("\n");var l=n(t,e);t.push(" \n");t.push(" \n");if(((e.Workbook||{}).WBProps||{}).date1904)t.push(' \n \n \n');for(var o=0;o!=e.SheetNames.length;++o)t.push(a(e.Sheets[e.SheetNames[o]],e,o,r,l));if((e.Workbook||{}).Names)t.push(bo(e.Workbook.Names,e.SheetNames,-1));t.push(" \n");t.push(" \n");if(r.bookType=="fods")t.push("");else t.push("");return t.join("")}}();function ko(e,r){if(r.bookType=="fods")return wo(e,r);var t=Wr();var a="";var n=[];var s=[];a="mimetype";$r(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";$r(t,a,wo(e,r));n.push([a,"text/xml"]);s.push([a,"ContentFile"]);a="styles.xml";$r(t,a,vo(e,r));n.push([a,"text/xml"]);s.push([a,"StylesFile"]);a="meta.xml";$r(t,a,Hr+Pn());n.push([a,"text/xml"]);s.push([a,"MetadataFile"]);a="manifest.rdf";$r(t,a,Nn(s));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";$r(t,a,Dn(n));return t}function yo(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]])}}}function xo(e){yo([["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]])(e)}function So(e){yo([["cellDates",false],["bookSST",false],["bookType","xlsx"],["compression",false],["WTF",false]])(e)}function Co(e){if(Sn.WS.indexOf(e)>-1)return"sheet";if(Sn.CS&&e==Sn.CS)return"chart";if(Sn.DS&&e==Sn.DS)return"dialog";if(Sn.MS&&e==Sn.MS)return"macro";return e&&e.length?e:"sheet"}function _o(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,Co(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function Ao(e,r,t,a,n,s,i,l,o,c,f,u){try{s[a]=_n(Lr(e,t,true),r);var h=Rr(e,r);var d;switch(l){case"sheet":d=Ul(h,r,n,o,s[a],c,f,u);break;case"chart":d=jl(h,r,n,o,s[a],c,f,u);if(!d||!d["!drawel"])break;var m=jr(d["!drawel"].Target,r);var p=Cn(m);var v=ii(Lr(e,m,true),_n(Lr(e,p,true),m));var g=jr(v,m);var b=Cn(g);d=Cl(Lr(e,g,true),g,o,_n(Lr(e,b,true),g),c,d);break;case"macro":d=Hl(h,r,n,o,s[a],c,f,u);break;case"dialog":d=Vl(h,r,n,o,s[a],c,f,u);break;default:throw new Error("Unrecognized sheet type "+l);}i[a]=d;var w=[],k=[];if(s&&s[a])ir(s[a]).forEach(function(t){var n="";if(s[a][t].Type==Sn.CMNT){n=jr(s[a][t].Target,r);w=Yl(Rr(e,n,true),n,o);if(!w||!w.length)return;ci(d,w,false)}if(s[a][t].Type==Sn.TCMNT){n=jr(s[a][t].Target,r);k=k.concat(hi(Rr(e,n,true),o))}});if(k&&k.length)ci(d,k,true,o.people||[])}catch(y){if(o.WTF)throw y}}function Fo(e){return e.charAt(0)=="/"?e.slice(1):e}function Eo(e,r){Ve();r=r||{};xo(r);if(Pr(e,"META-INF/manifest.xml"))return mo(e,r);if(Pr(e,"objectdata.xml"))return mo(e,r);if(Pr(e,"Index/Document.iwa")){if(typeof Uint8Array=="undefined")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof parse_numbers_iwa!="undefined"){if(e.FileIndex)return parse_numbers_iwa(e,r);var t=er.utils.cfb_new();zr(e).forEach(function(r){$r(t,r,Br(e,r))});return parse_numbers_iwa(t,r)}throw new Error("Unsupported NUMBERS file")}if(!Pr(e,"[Content_Types].xml")){if(Pr(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(Pr(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");var a=er.find(e,"Index.zip");if(a){r=Sr(r);delete r.type;if(typeof a.content=="string")r.type="binary";if(typeof Bun!=="undefined"&&Buffer.isBuffer(a.content))return $o(new Uint8Array(a.content),r);return $o(a.content,r)}throw new Error("Unsupported ZIP file")}var n=zr(e);var s=yn(Lr(e,"[Content_Types].xml"));var i=false;var l,o;if(s.workbooks.length===0){o="xl/workbook.xml";if(Rr(e,o,true))s.workbooks.push(o)}if(s.workbooks.length===0){o="xl/workbook.bin";if(!Rr(e,o,true))throw new Error("Could not find workbook");s.workbooks.push(o);i=true}if(s.workbooks[0].slice(-3)=="bin")i=true;var c={};var f={};if(!r.bookSheets&&!r.bookProps){Ii=[];if(s.sst)try{Ii=Gl(Rr(e,Fo(s.sst)),s.sst,r)}catch(u){if(r.WTF)throw u}if(r.cellStyles&&s.themes.length)c=ei(Lr(e,s.themes[0].replace(/^\//,""),true)||"",r);if(s.style)f=Xl(Rr(e,Fo(s.style)),s.style,c,r)}s.links.map(function(t){try{var a=_n(Lr(e,Cn(Fo(t))),t);return Kl(Rr(e,Fo(t)),a,t,r)}catch(n){}});var h=Wl(Rr(e,Fo(s.workbooks[0])),s.workbooks[0],r);var d={},m="";if(s.coreprops.length){m=Rr(e,Fo(s.coreprops[0]),true);if(m)d=Ln(m);if(s.extprops.length!==0){m=Rr(e,Fo(s.extprops[0]),true);if(m)jn(m,d,r)}}var p={};if(!r.bookSheets||r.bookProps){if(s.custprops.length!==0){m=Lr(e,Fo(s.custprops[0]),true);if(m)p=Xn(m,r)}}var v={};if(r.bookSheets||r.bookProps){if(h.Sheets)l=h.Sheets.map(function M(e){return e.name});else if(d.Worksheets&&d.SheetNames.length>0)l=d.SheetNames;if(r.bookProps){v.Props=d;v.Custprops=p}if(r.bookSheets&&typeof l!=="undefined")v.SheetNames=l;if(r.bookSheets?v.SheetNames:r.bookProps)return v}l={};var g={};if(r.bookDeps&&s.calcchain)g=Jl(Rr(e,Fo(s.calcchain)),s.calcchain,r);var b=0;var w={};var k,y;{var x=h.Sheets;d.Worksheets=x.length;d.SheetNames=[];for(var S=0;S!=x.length;++S){d.SheetNames[S]=x[S].name}}var C=i?"bin":"xml";var _=s.workbooks[0].lastIndexOf("/");var A=(s.workbooks[0].slice(0,_+1)+"_rels/"+s.workbooks[0].slice(_+1)+".rels").replace(/^\//,"");if(!Pr(e,A))A="xl/_rels/workbook."+C+".rels";var F=_n(Lr(e,A,true),A.replace(/_rels.*/,"s5s"));if((s.metadata||[]).length>=1){r.xlmeta=Zl(Rr(e,Fo(s.metadata[0])),s.metadata[0],r)}if((s.people||[]).length>=1){r.people=mi(Rr(e,Fo(s.people[0])),r)}if(F)F=_o(F,h.Sheets);var E=Rr(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(b=0;b!=d.Worksheets;++b){var T="sheet";if(F&&F[b]){k="xl/"+F[b][1].replace(/[\/]?xl\//,"");if(!Pr(e,k))k=F[b][1];if(!Pr(e,k))k=A.replace(/_rels\/.*$/,"")+F[b][1];T=F[b][2]}else{k="xl/worksheets/sheet"+(b+1-E)+"."+C;k=k.replace(/sheet0\./,"sheet.")}y=k.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");if(r&&r.sheets!=null)switch(typeof r.sheets){case"number":if(b!=r.sheets)continue e;break;case"string":if(d.SheetNames[b].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var D=false;for(var O=0;O!=r.sheets.length;++O){if(typeof r.sheets[O]=="number"&&r.sheets[O]==b)D=1;if(typeof r.sheets[O]=="string"&&r.sheets[O].toLowerCase()==d.SheetNames[b].toLowerCase())D=1}if(!D)continue e};}Ao(e,k,y,d.SheetNames[b],b,w,l,T,r,h,c,f)}v={Directory:s,Workbook:h,Props:d,Custprops:p,Deps:g,Sheets:l,SheetNames:d.SheetNames,Strings:Ii,Styles:f,Themes:c,SSF:Sr(K)};if(r&&r.bookFiles){if(e.files){v.keys=n;v.files=e.files}else{v.keys=[];v.files={};e.FullPaths.forEach(function(r,t){r=r.replace(/^Root Entry[\/]/,"");v.keys.push(r);v.files[r]=e.FileIndex[t]})}}if(r&&r.bookVBA){if(s.vba.length>0)v.vbaraw=Rr(e,Fo(s.vba[0]),true);else if(s.defaults&&s.defaults.bin===vi)v.vbaraw=Rr(e,"xl/vbaProject.bin",true)}v.bookType=i?"xlsb":"xlsx";return v}function To(e,r){var t=r||{};var a="Workbook",n=er.find(e,a);try{a="/!DataSpaces/Version";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);parse_DataSpaceVersionInfo(n.content);a="/!DataSpaces/DataSpaceMap";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=parse_DataSpaceMap(n.content);if(s.length!==1||s[0].comps.length!==1||s[0].comps[0].t!==0||s[0].name!=="StrongEncryptionDataSpace"||s[0].comps[0].v!=="EncryptedPackage")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=parse_DataSpaceDefinition(n.content);if(i.length!=1||i[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);parse_Primary(n.content)}catch(l){}a="/EncryptionInfo";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var o=parse_EncryptionInfo(n.content);a="/EncryptedPackage";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);if(o[0]==4&&typeof decrypt_agile!=="undefined")return decrypt_agile(o[1],n.content,t.password||"",t);if(o[0]==2&&typeof decrypt_std76!=="undefined")return decrypt_std76(o[1],n.content,t.password||"",t);throw new Error("File is password-protected")}function Do(e,r){if(e&&!e.SSF){e.SSF=Sr(K)}if(e&&e.SSF){Ve();He(e.SSF);r.revssf=cr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(Li)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="bin";var a=true;var n=kn();So(r=r||{});var s=Wr();var i="",l=0;r.cellXfs=[];Wi(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};i="docProps/core.xml";$r(s,i,zn(e.Props,r));n.coreprops.push(i);Fn(r.rels,2,i,Sn.CORE_PROPS);i="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var o=[];for(var c=0;c0){i="docProps/custom.xml";$r(s,i,Gn(e.Custprops,r));n.custprops.push(i);Fn(r.rels,4,i,Sn.CUST_PROPS)}for(l=1;l<=e.SheetNames.length;++l){var f={"!id":{}};var u=e.Sheets[e.SheetNames[l-1]];var h=(u||{})["!type"]||"sheet";switch(h){case"chart":;default:i="xl/worksheets/sheet"+l+"."+t;$r(s,i,write_ws_bin(l-1,r,e,f));n.sheets.push(i);Fn(r.wbrels,-1,"worksheets/sheet"+l+"."+t,Sn.WS[0]);}if(u){var d=u["!comments"];var m=false;var p="";if(d&&d.length>0){p="xl/comments"+l+"."+t;$r(s,p,write_comments_bin(d,r));n.comments.push(p);Fn(f,-1,"../comments"+l+"."+t,Sn.CMNT);m=true}if(u["!legacy"]){if(m)$r(s,"xl/drawings/vmlDrawing"+l+".vml",li(l,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(f["!id"].rId1)$r(s,Cn(i),An(f))}if(r.Strings!=null&&r.Strings.length>0){i="xl/sharedStrings."+t;$r(s,i,write_sst_bin(r.Strings,r));n.strs.push(i);Fn(r.wbrels,-1,"sharedStrings."+t,Sn.SST)}i="xl/workbook."+t;$r(s,i,write_wb_bin(e,r));n.workbooks.push(i);Fn(r.rels,1,i,Sn.WB);i="xl/theme/theme1.xml";var v=ri(e.Themes,r);$r(s,i,v);n.themes.push(i);Fn(r.wbrels,-1,"theme/theme1.xml",Sn.THEME);i="xl/styles."+t;$r(s,i,write_sty_bin(e,r));n.styles.push(i);Fn(r.wbrels,-1,"styles."+t,Sn.STY);if(e.vbaraw&&a){i="xl/vbaProject.bin";$r(s,i,e.vbaraw);n.vba.push(i);Fn(r.wbrels,-1,"vbaProject.bin",Sn.VBA)}i="xl/metadata."+t;$r(s,i,write_xlmeta_bin());n.metadata.push(i);Fn(r.wbrels,-1,"metadata."+t,Sn.XLMETA);$r(s,"[Content_Types].xml",xn(n,r));$r(s,"_rels/.rels",An(r.rels));$r(s,"xl/_rels/workbook."+t+".rels",An(r.wbrels));delete r.revssf;delete r.ssf;return s}function Oo(e,r){if(e&&!e.SSF){e.SSF=Sr(K)}if(e&&e.SSF){Ve();He(e.SSF);r.revssf=cr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(Li)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=wi.indexOf(r.bookType)>-1;var n=kn();So(r=r||{});var s=Wr();var i="",l=0;r.cellXfs=[];Wi(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};i="docProps/core.xml";$r(s,i,zn(e.Props,r));n.coreprops.push(i);Fn(r.rels,2,i,Sn.CORE_PROPS);i="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var o=[];for(var c=0;c0){i="docProps/custom.xml";$r(s,i,Gn(e.Custprops,r));n.custprops.push(i);Fn(r.rels,4,i,Sn.CUST_PROPS)}var f=["SheetJ5"];r.tcid=0;for(l=1;l<=e.SheetNames.length;++l){var u={"!id":{}};var h=e.Sheets[e.SheetNames[l-1]];var d=(h||{})["!type"]||"sheet";switch(d){case"chart":;default:i="xl/worksheets/sheet"+l+"."+t;$r(s,i,xl(l-1,r,e,u));n.sheets.push(i);Fn(r.wbrels,-1,"worksheets/sheet"+l+"."+t,Sn.WS[0]);}if(h){var m=h["!comments"];var p=false;var v="";if(m&&m.length>0){var g=false;m.forEach(function(e){e[1].forEach(function(e){if(e.T==true)g=true})});if(g){v="xl/threadedComments/threadedComment"+l+".xml";$r(s,v,di(m,f,r));n.threadedcomments.push(v);Fn(u,-1,"../threadedComments/threadedComment"+l+".xml",Sn.TCMNT)}v="xl/comments"+l+"."+t;$r(s,v,ui(m,r));n.comments.push(v);Fn(u,-1,"../comments"+l+"."+t,Sn.CMNT);p=true}if(h["!legacy"]){if(p)$r(s,"xl/drawings/vmlDrawing"+l+".vml",li(l,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(u["!id"].rId1)$r(s,Cn(i),An(u))}if(r.Strings!=null&&r.Strings.length>0){i="xl/sharedStrings."+t;$r(s,i,ds(r.Strings,r));n.strs.push(i);Fn(r.wbrels,-1,"sharedStrings."+t,Sn.SST)}i="xl/workbook."+t;$r(s,i,$l(e,r));n.workbooks.push(i);Fn(r.rels,1,i,Sn.WB);i="xl/theme/theme1.xml";$r(s,i,ri(e.Themes,r));n.themes.push(i);Fn(r.wbrels,-1,"theme/theme1.xml",Sn.THEME);i="xl/styles."+t;$r(s,i,Hs(e,r));n.styles.push(i);Fn(r.wbrels,-1,"styles."+t,Sn.STY);if(e.vbaraw&&a){i="xl/vbaProject.bin";$r(s,i,e.vbaraw);n.vba.push(i);Fn(r.wbrels,-1,"vbaProject.bin",Sn.VBA)}i="xl/metadata."+t;$r(s,i,ai());n.metadata.push(i);Fn(r.wbrels,-1,"metadata."+t,Sn.XLMETA);if(f.length>1){i="xl/persons/person.xml";$r(s,i,pi(f,r));n.people.push(i);Fn(r.wbrels,-1,"persons/person.xml",Sn.PEOPLE)}$r(s,"[Content_Types].xml",xn(n,r));$r(s,"_rels/.rels",An(r.rels));$r(s,"xl/_rels/workbook."+t+".rels",An(r.wbrels));delete r.revssf;delete r.ssf;return s}function Mo(e,r){var t="";switch((r||{}).type||"base64"){case"buffer":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];case"base64":t=x(e.slice(0,12));break;case"binary":t=e;break;case"array":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];default:throw new Error("Unrecognized type "+(r&&r.type||"undefined"));}return[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3),t.charCodeAt(4),t.charCodeAt(5),t.charCodeAt(6),t.charCodeAt(7)]}function No(e,r){if(er.find(e,"EncryptedPackage"))return To(e,r);return parse_xlscfb(e,r)}function Po(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=S&&Buffer.isBuffer(e)?"buffer":"base64";t=Ur(a,n);return Eo(t,n)}function Io(e,r){var t=0;e:while(t=2&&s[3]===0)return WK_.to_workbook(n,t);if(s[2]===0&&(s[3]===8||s[3]===9))return WK_.to_workbook(n,t)}break;case 3:;case 131:;case 139:;case 140:return Jn.to_workbook(n,t);case 123:if(s[1]===92&&s[2]===114&&s[3]===116)return rtf_to_workbook(n,t);break;case 10:;case 13:;case 32:return Ro(n,t);case 137:if(s[1]===80&&s[2]===78&&s[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;case 8:if(s[1]===231)throw new Error("Unsupported Multiplan 1.x file!");break;case 12:if(s[1]===236)throw new Error("Unsupported Multiplan 2.x file!");if(s[1]===237)throw new Error("Unsupported Multiplan 3.x file!");break;}if(Yn.indexOf(s[0])>-1&&s[2]<=12&&s[3]<=31)return Jn.to_workbook(n,t);return zo(e,n,t,i)}function Wo(e,r){var t=r||{};t.type="file";return $o(e,t)}function Uo(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return nr(r.file,er.write(e,{type:S?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return er.write(e,r)}function jo(e,r){switch(r.bookType){case"ods":return ko(e,r);case"numbers":return write_numbers_iwa(e,r);case"xlsb":return Do(e,r);default:return Oo(e,r);}}function Ho(e,r){var t=Sr(r||{});var a=jo(e,t);return Xo(a,t)}function Vo(e,r){var t=Sr(r||{});var a=Oo(e,t);return Xo(a,t)}function Xo(e,r){var t={};var a=S?"nodebuffer":typeof Uint8Array!=="undefined"?"array":"string";if(r.compression)t.compression="DEFLATE";if(r.password)t.type=a;else switch(r.type){case"base64":t.type="base64";break;case"binary":t.type="string";break;case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");case"buffer":;case"file":t.type=a;break;default:throw new Error("Unrecognized type "+r.type);}var n=e.FullPaths?er.write(e,{fileType:"zip",type:{nodebuffer:"buffer", -string:"binary"}[t.type]||t.type,compression:!!r.compression}):e.generate(t);if(typeof Deno!=="undefined"){if(typeof n=="string"){if(r.type=="binary"||r.type=="base64")return n;n=new Uint8Array(T(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return Uo(encrypt_agile(n,r.password),r);if(r.type==="file")return nr(r.file,n);return r.type=="string"?vt(n):n}function Go(e,r){var t=r||{};var a=write_xlscfb(e,t);return Uo(a,t)}function Yo(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return k(gt(a));case"binary":return gt(a);case"string":return e;case"file":return nr(r.file,a,"utf8");case"buffer":{if(S)return C(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return Yo(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Jo(e,r){switch(r.type){case"base64":return y(e);case"binary":return e;case"string":return e;case"file":return nr(r.file,e,"binary");case"buffer":{if(S)return C(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Ko(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var u=Ea(o.s.r);var h=[];var d=[];var m=0,p=0;var v=Array.isArray(e);var g=o.s.r,b=0;var w={};if(v&&!e[g])e[g]=[];var k=c.skipHidden&&e["!cols"]||[];var y=c.skipHidden&&e["!rows"]||[];for(b=o.s.c;b<=o.e.c;++b){if((k[b]||{}).hidden)continue;h[b]=Ma(b);t=v?e[g][b]:e[h[b]+u];switch(a){case 1:s[b]=b-o.s.c;break;case 2:s[b]=h[b];break;case 3:s[b]=c.header[b-o.s.c];break;default:if(t==null)t={w:"__EMPTY",t:"s"};l=i=Ha(t,null,c);p=w[i]||0;if(!p)w[i]=1;else{do{l=i+"_"+p++}while(w[l]);w[i]=p;w[l]=1}s[b]=l;}}for(g=o.s.r+n;g<=o.e.r;++g){if((y[g]||{}).hidden)continue;var x=ac(e,o,g,h,a,s,v,c);if(x.isempty===false||(a===1?c.blankrows!==false:!!c.blankrows))d[m++]=x.row}d.length=m;return d}var sc=/"/g;function ic(e,r,t,a,n,s,i,l){var o=true;var c=[],f="",u=Ea(t);for(var h=r.s.c;h<=r.e.c;++h){if(!a[h])continue;var d=l.dense?(e[t]||[])[h]:e[a[h]+u];if(d==null)f="";else if(d.v!=null){o=false;f=""+(l.rawNumbers&&d.t=="n"?d.v:Ha(d,null,l));for(var m=0,p=0;m!==f.length;++m)if((p=f.charCodeAt(m))===n||p===s||p===34||l.forceQuotes){f='"'+f.replace(sc,'""')+'"';break}if(f=="ID")f='"ID"'}else if(d.f!=null&&!d.F){o=false;f="="+d.f;if(f.indexOf(",")>=0)f='"'+f.replace(sc,'""')+'"'}else f="";c.push(f)}if(l.blankrows===false&&o)return null;return c.join(i)}function lc(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=Ua(e["!ref"]);var s=a.FS!==undefined?a.FS:",",i=s.charCodeAt(0);var l=a.RS!==undefined?a.RS:"\n",o=l.charCodeAt(0);var c=new RegExp((s=="|"?"\\|":s)+"+$");var f="",u=[];a.dense=Array.isArray(e);var h=a.skipHidden&&e["!cols"]||[];var d=a.skipHidden&&e["!rows"]||[];for(var m=n.s.c;m<=n.e.c;++m)if(!(h[m]||{}).hidden)u[m]=Ma(m);var p=0;for(var v=n.s.r;v<=n.e.r;++v){if((d[v]||{}).hidden)continue;f=ic(e,n,v,u,i,o,s,a);if(f==null){continue}if(a.strip)f=f.replace(c,"");if(f||a.blankrows!==false)t.push((p++?l:"")+f)}delete a.dense;return t.join("")}function oc(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=lc(e,r);if(typeof a=="undefined"||r.type=="string")return t;var n=a.utils.encode(1200,t,"str");return String.fromCharCode(255)+String.fromCharCode(254)+n}function cc(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=Ua(e["!ref"]),s="",i=[],l;var o=[];var c=Array.isArray(e);for(l=n.s.c;l<=n.e.c;++l)i[l]=Ma(l);for(var f=n.s.r;f<=n.e.r;++f){s=Ea(f);for(l=n.s.c;l<=n.e.c;++l){r=i[l]+s;t=c?(e[f]||[])[l]:e[r];a="";if(t===undefined)continue;else if(t.F!=null){r=t.F;if(!t.f)continue;a=t.f;if(r.indexOf(":")==-1)r=r+":"+r}if(t.f!=null)a=t.f;else if(t.t=="z")continue;else if(t.t=="n"&&t.v!=null)a=""+t.v;else if(t.t=="b")a=t.v?"TRUE":"FALSE";else if(t.w!==undefined)a="'"+t.w;else if(t.v===undefined)continue;else if(t.t=="s")a="'"+t.v;else a=""+t.v;o[o.length]=r+"="+a}}return o}function fc(e,r,t){var a=t||{};var n=e?Array.isArray(e):a.dense;if(g!=null&&n==null)n=g;var s=+!a.skipHeader;var i=e||(n?[]:{});var l=0,o=0;if(i&&a.origin!=null){if(typeof a.origin=="number")l=a.origin;else{var c=typeof a.origin=="string"?Ra(a.origin):a.origin;l=c.r;o=c.c}}var f={s:{c:0,r:0},e:{c:o,r:l+r.length-1+s}};if(i["!ref"]){var u=Ua(i["!ref"]);f.e.c=Math.max(f.e.c,u.e.c);f.e.r=Math.max(f.e.r,u.e.r);if(l==-1){l=u.e.r+1;f.e.r=l+r.length-1+s}}else{if(l==-1){l=0;f.e.r=r.length-1+s}}var h=a.header||[],d=0;var m=[];r.forEach(function(e,r){if(n&&!i[l+r+s])i[l+r+s]=[];if(n)m=i[l+r+s];ir(e).forEach(function(t){if((d=h.indexOf(t))==-1)h[d=h.length]=t;var c=e[t];var f="z";var u="";var p=n?"":La({c:o+d,r:l+r+s});var v=n?m[o+d]:i[p];if(c&&typeof c==="object"&&!(c instanceof Date)){i[p]=c}else{if(typeof c=="number")f="n";else if(typeof c=="boolean")f="b";else if(typeof c=="string")f="s";else if(c instanceof Date){f="d";if(!a.cellDates){f="n";c=hr(c)}u=v!=null&&v.z&&Le(v.z)?v.z:a.dateNF||K[14]}else if(c===null&&a.nullError){f="e";c=0}if(!v){if(!n)i[p]=v={t:f,v:c};else m[o+d]=v={t:f,v:c}}else{v.t=f;v.v=c;delete v.w;delete v.R;if(u)v.z=u}if(u)v.z=u}})});f.e.c=Math.max(f.e.c,o+h.length-1);var p=Ea(l);if(n&&!i[l])i[l]=[];if(s)for(d=0;d=0&&e.SheetNames.length>r)return r;throw new Error("Cannot find sheet # "+r)}else if(typeof r=="string"){var t=e.SheetNames.indexOf(r);if(t>-1)return t;throw new Error("Cannot find sheet name |"+r+"|")}else throw new Error("Cannot find sheet |"+r+"|")}function mc(){return{SheetNames:[],Sheets:{}}}function pc(e,r,t,a){var n=1;if(!t)for(;n<=65535;++n,t=undefined)if(e.SheetNames.indexOf(t="Sheet"+n)==-1)break;if(!t||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(t)>=0){var s=t.match(/(^.*?)(\d+)$/);n=s&&+s[2]||0;var i=s&&s[1]||t;for(++n;n<=65535;++n)if(e.SheetNames.indexOf(t=i+n)==-1)break}Il(t);if(e.SheetNames.indexOf(t)>=0)throw new Error("Worksheet with name |"+t+"| already exists!");e.SheetNames.push(t);e.Sheets[t]=r;return t}function vc(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=dc(e,r);if(!e.Workbook.Sheets[a])e.Workbook.Sheets[a]={};switch(t){case 0:;case 1:;case 2:break;default:throw new Error("Bad sheet visibility setting "+t);}e.Workbook.Sheets[a].Hidden=t}function gc(e,r){e.z=r;return e}function bc(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function wc(e,r,t){return bc(e,"#"+r,t)}function kc(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function yc(e,r,t,a){var n=typeof r!="string"?r:Ua(r);var s=typeof r=="string"?r:za(r);for(var i=n.s.r;i<=n.e.r;++i)for(var l=n.s.c;l<=n.e.c;++l){var o=hc(e,i,l);o.t="n";o.F=s;delete o.v;if(i==n.s.r&&l==n.s.c){o.f=t;if(a)o.D=true}}var c=Ba(e["!ref"]);if(c.s.r>n.s.r)c.s.r=n.s.r;if(c.s.c>n.s.c)c.s.c=n.s.c;if(c.e.r>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t)+(e.charCodeAt(2*t+1)<<8));return r.join("")}function h(e){var r=[];for(var t=0;t>1;++t)r[t]=String.fromCharCode(e.charCodeAt(2*t+1)+(e.charCodeAt(2*t)<<8));return r.join("")}var d=function(e){var r=e.charCodeAt(0),t=e.charCodeAt(1);if(r==255&&t==254)return u(e.slice(2));if(r==254&&t==255)return h(e.slice(2));if(r==65279)return e.slice(1);return e};var m=function _c(e){return String.fromCharCode(e)};var p=function Ac(e){return String.fromCharCode(e)};function v(e){a=e;o=function(e){r=e;i(e)};d=function(e){if(e.charCodeAt(0)===255&&e.charCodeAt(1)===254){return a.utils.decode(1200,f(e.slice(2)))}return e};m=function n(e){if(r===1200)return String.fromCharCode(e);return a.utils.decode(r,[e&255,e>>8])[0]};p=function s(e){return a.utils.decode(t,[e])[0]};na()}var g=null;var b=true;var w="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function k(e){var r="";var t=0,a=0,n=0,s=0,i=0,l=0,o=0;for(var c=0;c>2;a=e.charCodeAt(c++);i=(t&3)<<4|a>>4;n=e.charCodeAt(c++);l=(a&15)<<2|n>>6;o=n&63;if(isNaN(a)){l=o=64}else if(isNaN(n)){o=64}r+=w.charAt(s)+w.charAt(i)+w.charAt(l)+w.charAt(o)}return r}function y(e){var r="";var t=0,a=0,n=0,s=0,i=0,l=0,o=0;for(var c=0;c255)t=95;s=t>>2;a=e.charCodeAt(c++);if(a>255)a=95;i=(t&3)<<4|a>>4;n=e.charCodeAt(c++);if(n>255)n=95;l=(a&15)<<2|n>>6;o=n&63;if(isNaN(a)){l=o=64}else if(isNaN(n)){o=64}r+=w.charAt(s)+w.charAt(i)+w.charAt(l)+w.charAt(o)}return r}function x(e){var r="";var t=0,a=0,n=0,s=0,i=0,l=0,o=0;e=e.replace(/^data:([^\/]+\/[^\/]+)?;base64\,/,"").replace(/[^\w\+\/\=]/g,"");for(var c=0;c>4;r+=String.fromCharCode(t);l=w.indexOf(e.charAt(c++));a=(i&15)<<4|l>>2;if(l!==64){r+=String.fromCharCode(a)}o=w.indexOf(e.charAt(c++));n=(l&3)<<6|o;if(o!==64){r+=String.fromCharCode(n)}}return r}var S=function(){return typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node}();var C=function(){if(typeof Buffer!=="undefined"){var e=!Buffer.from;if(!e)try{Buffer.from("foo","utf8")}catch(r){e=true}return e?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer)}return function(){}}();var _=function(){if(typeof Buffer==="undefined")return false;var e=C([65,0]);if(!e)return false;var r=e.toString("utf16le");return r.length==1}();function A(e){if(S)return Buffer.alloc?Buffer.alloc(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function F(e){if(S)return Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var E=function Fc(e){if(S)return C(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function T(e){if(typeof ArrayBuffer==="undefined")return E(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 D(e){if(Array.isArray(e))return e.map(function(e){return String.fromCharCode(e)}).join("");var r=[];for(var t=0;t>6&31;n[t++]=128|i&63}else if(i>=55296&&i<57344){i=(i&1023)+64;var l=e.charCodeAt(++s)&1023;n[t++]=240|i>>8&7;n[t++]=128|i>>2&63;n[t++]=128|l>>6&15|(i&3)<<4;n[t++]=128|l&63}else{n[t++]=224|i>>12&15;n[t++]=128|i>>6&63;n[t++]=128|i&63}if(t>a){r.push(n.slice(0,t));t=0;n=A(65535);a=65530}}r.push(n.slice(0,t));return N(r)}var I=/\u0000/g,R=/[\u0001-\u0006]/g;function L(e){var r="",t=e.length-1;while(t>=0)r+=e.charAt(t--);return r}function B(e,r){var t=""+e;return t.length>=r?t:Cr("0",r-t.length)+t}function z(e,r){var t=""+e;return t.length>=r?t:Cr(" ",r-t.length)+t}function W(e,r){var t=""+e;return t.length>=r?t:t+Cr(" ",r-t.length)}function U(e,r){var t=""+Math.round(e);return t.length>=r?t:Cr("0",r-t.length)+t}function j(e,r){var t=""+e;return t.length>=r?t:Cr("0",r-t.length)+t}var H=Math.pow(2,32);function V(e,r){if(e>H||e<-H)return U(e,r);var t=Math.round(e);return j(t,r)}function X(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)===114&&(e.charCodeAt(r+5)|32)===97&&(e.charCodeAt(r+6)|32)===108}var G=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var Y=[["J","Jan","January"],["F","Feb","February"],["M","Mar","March"],["A","Apr","April"],["M","May","May"],["J","Jun","June"],["J","Jul","July"],["A","Aug","August"],["S","Sep","September"],["O","Oct","October"],["N","Nov","November"],["D","Dec","December"]];function J(e){if(!e)e={};e[0]="General";e[1]="0";e[2]="0.00";e[3]="#,##0";e[4]="#,##0.00";e[9]="0%";e[10]="0.00%";e[11]="0.00E+00";e[12]="# ?/?";e[13]="# ??/??";e[14]="m/d/yy";e[15]="d-mmm-yy";e[16]="d-mmm";e[17]="mmm-yy";e[18]="h:mm AM/PM";e[19]="h:mm:ss AM/PM";e[20]="h:mm";e[21]="h:mm:ss";e[22]="m/d/yy h:mm";e[37]="#,##0 ;(#,##0)";e[38]="#,##0 ;[Red](#,##0)";e[39]="#,##0.00;(#,##0.00)";e[40]="#,##0.00;[Red](#,##0.00)";e[45]="mm:ss";e[46]="[h]:mm:ss";e[47]="mmss.0";e[48]="##0.0E+0";e[49]="@";e[56]='"上午/下午 "hh"時"mm"分"ss"秒 "';return e}var K={0:"General",1:"0",2:"0.00",3:"#,##0",4:"#,##0.00",9:"0%",10:"0.00%",11:"0.00E+00",12:"# ?/?",13:"# ??/??",14:"m/d/yy",15:"d-mmm-yy",16:"d-mmm",17:"mmm-yy",18:"h:mm AM/PM",19:"h:mm:ss AM/PM",20:"h:mm",21:"h:mm:ss",22:"m/d/yy h:mm",37:"#,##0 ;(#,##0)",38:"#,##0 ;[Red](#,##0)",39:"#,##0.00;(#,##0.00)",40:"#,##0.00;[Red](#,##0.00)",45:"mm:ss",46:"[h]:mm:ss",47:"mmss.0",48:"##0.0E+0",49:"@",56:'"上午/下午 "hh"時"mm"分"ss"秒 "'};var Z={5:37,6:38,7:39,8:40,23:0,24:0,25:0,26:0,27:14,28:14,29:14,30:14,31:14,50:14,51:14,52:14,53:14,54:14,55:14,56:14,57:14,58:14,59:1,60:2,61:3,62:4,67:9,68:10,69:12,70:13,71:14,72:14,73:15,74:16,75:17,76:20,77:21,78:22,79:45,80:46,81:47,82:0};var q={5:'"$"#,##0_);\\("$"#,##0\\)',63:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',41:'_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)'};function Q(e,r,t){var a=e<0?-1:1;var n=e*a;var s=0,i=1,l=0;var o=1,c=0,f=0;var u=Math.floor(n);while(cr){if(c>r){f=o;l=s}else{f=c;l=i}}if(!t)return[0,a*l,f];var h=Math.floor(a*l/f);return[h,a*l-h*f,f]}function ee(e,r,t){if(e>2958465||e<0)return null;var a=e|0,n=Math.floor(86400*(e-a)),s=0;var i=[];var l={D:a,T:n,u:86400*(e-a)-n,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(l.u)<1e-6)l.u=0;if(r&&r.date1904)a+=1462;if(l.u>.9999){l.u=0;if(++n==86400){l.T=n=0;++a;++l.D}}if(a===60){i=t?[1317,10,29]:[1900,2,29];s=3}else if(a===0){i=t?[1317,8,29]:[1900,1,0];s=6}else{if(a>60)--a;var o=new Date(1900,0,1);o.setDate(o.getDate()+a-1);i=[o.getFullYear(),o.getMonth()+1,o.getDate()];s=o.getDay();if(a<60)s=(s+6)%7;if(t)s=ue(o,i)}l.y=i[0];l.m=i[1];l.d=i[2];l.S=n%60;n=Math.floor(n/60);l.M=n%60;n=Math.floor(n/60);l.H=n;l.q=s;return l}var re=new Date(1899,11,31,0,0,0);var te=re.getTime();var ae=new Date(1900,2,1,0,0,0);function ne(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=ae)t+=24*60*60*1e3;return(t-(te+(e.getTimezoneOffset()-re.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function se(e){return e.indexOf(".")==-1?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function ie(e){if(e.indexOf("E")==-1)return e;return e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}function le(e){var r=e<0?12:11;var t=se(e.toFixed(12));if(t.length<=r)return t;t=e.toPrecision(10);if(t.length<=r)return t;return e.toExponential(5)}function oe(e){var r=se(e.toFixed(11));return r.length>(e<0?12:11)||r==="0"||r==="-0"?e.toPrecision(6):r}function ce(e){var r=Math.floor(Math.log(Math.abs(e))*Math.LOG10E),t;if(r>=-4&&r<=-1)t=e.toPrecision(10+r);else if(Math.abs(r)<=9)t=le(e);else if(r===10)t=e.toFixed(10).substr(0,12);else t=oe(e);return se(ie(t.toUpperCase()))}function fe(e,r){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):ce(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return Ue(14,ne(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}function ue(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function he(e,r,t,a){var n="",s=0,i=0,l=t.y,o,c=0;switch(e){case 98:l=t.y+543;case 121:switch(r.length){case 1:;case 2:o=l%100;c=2;break;default:o=l%1e4;c=4;break;}break;case 109:switch(r.length){case 1:;case 2:o=t.m;c=r.length;break;case 3:return Y[t.m-1][1];case 5:return Y[t.m-1][0];default:return Y[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:o=t.d;c=r.length;break;case 3:return G[t.q][0];default:return G[t.q][1];}break;case 104:switch(r.length){case 1:;case 2:o=1+(t.H+11)%12;c=r.length;break;default:throw"bad hour format: "+r;}break;case 72:switch(r.length){case 1:;case 2:o=t.H;c=r.length;break;default:throw"bad hour format: "+r;}break;case 77:switch(r.length){case 1:;case 2:o=t.M;c=r.length;break;default:throw"bad minute format: "+r;}break;case 115:if(r!="s"&&r!="ss"&&r!=".0"&&r!=".00"&&r!=".000")throw"bad second format: "+r;if(t.u===0&&(r=="s"||r=="ss"))return B(t.S,r.length);if(a>=2)i=a===3?1e3:100;else i=a===1?10:1;s=Math.round(i*(t.S+t.u));if(s>=60*i)s=0;if(r==="s")return s===0?"0":""+s/i;n=B(s,2+a);if(r==="ss")return n.substr(0,2);return"."+n.substr(2,r.length-1);case 90:switch(r){case"[h]":;case"[hh]":o=t.D*24+t.H;break;case"[m]":;case"[mm]":o=(t.D*24+t.H)*60+t.M;break;case"[s]":;case"[ss]":o=((t.D*24+t.H)*60+t.M)*60+Math.round(t.S+t.u);break;default:throw"bad abstime format: "+r;}c=r.length===3?1:2;break;case 101:o=l;c=1;break;}var f=c>0?B(o,c):"";return f}function de(e){var r=3;if(e.length<=r)return e;var t=e.length%r,a=e.substr(0,t);for(;t!=e.length;t+=r)a+=(a.length>0?",":"")+e.substr(t,r);return a}var me=/%/g;function pe(e,r,t){var a=r.replace(me,""),n=r.length-a.length;return Pe(e,a,t*Math.pow(10,2*n))+Cr("%",n)}function ve(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return Pe(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function ge(e,r){var t;var a=e.indexOf("E")-e.indexOf(".")-1;if(e.match(/^#+0.0E\+0$/)){if(r==0)return"0.0E+0";else if(r<0)return"-"+ge(e,-r);var n=e.indexOf(".");if(n===-1)n=e.indexOf("E");var s=Math.floor(Math.log(r)*Math.LOG10E)%n;if(s<0)s+=n;t=(r/Math.pow(10,s)).toPrecision(a+1+(n+s)%n);if(t.indexOf("e")===-1){var i=Math.floor(Math.log(r)*Math.LOG10E);if(t.indexOf(".")===-1)t=t.charAt(0)+"."+t.substr(1)+"E+"+(i-t.length+s);else t+="E+"+(i-s);while(t.substr(0,2)==="0."){t=t.charAt(0)+t.substr(2,n)+"."+t.substr(2+n);t=t.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}t=t.replace(/\+-/,"-")}t=t.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function(e,r,t,a){return r+t+a.substr(0,(n+s)%n)+"."+a.substr(s)+"E"})}else t=r.toExponential(a);if(e.match(/E\+00$/)&&t.match(/e[+-]\d$/))t=t.substr(0,t.length-1)+"0"+t.charAt(t.length-1);if(e.match(/E\-/)&&t.match(/e\+/))t=t.replace(/e\+/,"e");return t.replace("e","E")}var be=/# (\?+)( ?)\/( ?)(\d+)/;function we(e,r,t){var a=parseInt(e[4],10),n=Math.round(r*a),s=Math.floor(n/a);var i=n-s*a,l=a;return t+(s===0?"":""+s)+" "+(i===0?Cr(" ",e[1].length+1+e[4].length):z(i,e[1].length)+e[2]+"/"+e[3]+B(l,e[4].length))}function ke(e,r,t){return t+(r===0?"":""+r)+Cr(" ",e[1].length+2+e[4].length)}var ye=/^#*0*\.([0#]+)/;var xe=/\).*[0#]/;var Se=/\(###\) ###\\?-####/;function Ce(e){var r="",t;for(var a=0;a!=e.length;++a)switch(t=e.charCodeAt(a)){case 35:break;case 63:r+=" ";break;case 48:r+="0";break;default:r+=String.fromCharCode(t);}return r}function _e(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function Ae(e,r){var t=e-Math.floor(e),a=Math.pow(10,r);if(r<(""+Math.round(t*a)).length)return 0;return Math.round(t*a)}function Fe(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function Ee(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function Te(e,r,t){if(e.charCodeAt(0)===40&&!r.match(xe)){var a=r.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(t>=0)return Te("n",a,t);return"("+Te("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return ve(e,r,t);if(r.indexOf("%")!==-1)return pe(e,r,t);if(r.indexOf("E")!==-1)return ge(r,t);if(r.charCodeAt(0)===36)return"$"+Te(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var s,i,l,o=Math.abs(t),c=t<0?"-":"";if(r.match(/^00+$/))return c+V(o,r.length);if(r.match(/^[#?]+$/)){n=V(t,0);if(n==="0")n="";return n.length>r.length?n:Ce(r.substr(0,r.length-n.length))+n}if(s=r.match(be))return we(s,o,c);if(r.match(/^#+0+$/))return c+V(o,r.length-r.indexOf("0"));if(s=r.match(ye)){n=_e(t,s[1].length).replace(/^([^\.]+)$/,"$1."+Ce(s[1])).replace(/\.$/,"."+Ce(s[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+Cr("0",Ce(s[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(s=r.match(/^(0*)\.(#*)$/)){return c+_e(o,s[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,s[1].length?"0.":".")}if(s=r.match(/^#{1,3},##0(\.?)$/))return c+de(V(o,0));if(s=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Te(e,r,-t):de(""+(Math.floor(t)+Fe(t,s[1].length)))+"."+B(Ae(t,s[1].length),s[1].length)}if(s=r.match(/^#,#*,#0/))return Te(e,r.replace(/^#,#*,/,""),t);if(s=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=L(Te(e,r.replace(/[\\-]/g,""),t));i=0;return L(L(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return i=0)return Ne("n",a,t);return"("+Ne("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return De(e,r,t);if(r.indexOf("%")!==-1)return Oe(e,r,t);if(r.indexOf("E")!==-1)return Me(r,t);if(r.charCodeAt(0)===36)return"$"+Ne(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var s,i,l,o=Math.abs(t),c=t<0?"-":"";if(r.match(/^00+$/))return c+B(o,r.length);if(r.match(/^[#?]+$/)){n=""+t;if(t===0)n="";return n.length>r.length?n:Ce(r.substr(0,r.length-n.length))+n}if(s=r.match(be))return ke(s,o,c);if(r.match(/^#+0+$/))return c+B(o,r.length-r.indexOf("0"));if(s=r.match(ye)){n=(""+t).replace(/^([^\.]+)$/,"$1."+Ce(s[1])).replace(/\.$/,"."+Ce(s[1]));n=n.replace(/\.(\d*)$/,function(e,r){return"."+r+Cr("0",Ce(s[1]).length-r.length)});return r.indexOf("0.")!==-1?n:n.replace(/^0\./,".")}r=r.replace(/^#+([0.])/,"$1");if(s=r.match(/^(0*)\.(#*)$/)){return c+(""+o).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,s[1].length?"0.":".")}if(s=r.match(/^#{1,3},##0(\.?)$/))return c+de(""+o);if(s=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Ne(e,r,-t):de(""+t)+"."+Cr("0",s[1].length)}if(s=r.match(/^#,#*,#0/))return Ne(e,r.replace(/^#,#*,/,""),t);if(s=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=L(Ne(e,r.replace(/[\\-]/g,""),t));i=0;return L(L(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return i-1||t=="\\"&&e.charAt(r+1)=="-"&&"0#".indexOf(e.charAt(r+2))>-1)){}break;case"?":while(e.charAt(++r)===t){}break;case"*":++r;if(e.charAt(r)==" "||e.charAt(r)=="*")++r;break;case"(":;case")":++r;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":while(r-1){}break;case" ":++r;break;default:++r;break;}}return false}function Be(e,r,t,a){var n=[],s="",i=0,l="",o="t",c,f,u;var h="H";while(i=12?e.charAt(i+2):l;p.t="T";h="h";i+=3}else if(e.substr(i,5).toUpperCase()==="AM/PM"){if(c!=null)p.v=c.H>=12?"PM":"AM";p.t="T";i+=5;h="h"}else if(e.substr(i,5).toUpperCase()==="上午/下午"){if(c!=null)p.v=c.H>=12?"下午":"上午";p.t="T";i+=5;h="h"}else{p.t="t";++i}if(c==null&&p.t==="T")return"";n[n.length]=p;o=l;break;case"[":s=l;while(e.charAt(i++)!=="]"&&i-1){s=(s.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!Le(e))n[n.length]={t:"t",v:s}}break;case".":if(c!=null){s=l;while(++i-1)s+=l;n[n.length]={t:"n",v:s};break;case"?":s=l;while(e.charAt(++i)===l)s+=l;n[n.length]={t:l,v:s};o=l;break;case"*":++i;if(e.charAt(i)==" "||e.charAt(i)=="*")++i;break;case"(":;case")":n[n.length]={t:a===1?"t":l,v:l};++i;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":s=l;while(i-1)s+=e.charAt(i);n[n.length]={t:"D",v:s};break;case" ":n[n.length]={t:l,v:l};++i;break;case"$":n[n.length]={t:"t",v:"$"};++i;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxzP".indexOf(l)===-1)throw new Error("unrecognized character "+l+" in "+e);n[n.length]={t:"t",v:l};++i;break;}}var v=0,g=0,b;for(i=n.length-1,o="t";i>=0;--i){switch(n[i].t){case"h":;case"H":n[i].t=h;o="h";if(v<1)v=1;break;case"s":if(b=n[i].v.match(/\.0+$/))g=Math.max(g,b[0].length-1);if(v<3)v=3;case"d":;case"y":;case"M":;case"e":o=n[i].t;break;case"m":if(o==="s"){n[i].t="M";if(v<2)v=2}break;case"X":break;case"Z":if(v<1&&n[i].v.match(/[Hh]/))v=1;if(v<2&&n[i].v.match(/[Mm]/))v=2;if(v<3&&n[i].v.match(/[Ss]/))v=3;}}switch(v){case 0:break;case 1:if(c.u>=.5){c.u=0;++c.S}if(c.S>=60){c.S=0;++c.M}if(c.M>=60){c.M=0;++c.H}break;case 2:if(c.u>=.5){c.u=0;++c.S}if(c.S>=60){c.S=0;++c.M}break;}var w="",k;for(i=0;i0){if(w.charCodeAt(0)==40){x=r<0&&w.charCodeAt(0)===45?-r:r;S=Pe("n",w,x)}else{x=r<0&&a>1?-r:r;S=Pe("n",w,x);if(x<0&&n[0]&&n[0].t=="t"){S=S.substr(1);n[0].v="-"+n[0].v}}k=S.length-1;var C=n.length;for(i=0;i-1){C=i;break}var _=n.length;if(C===n.length&&S.indexOf("E")===-1){for(i=n.length-1;i>=0;--i){if(n[i]==null||"n?".indexOf(n[i].t)===-1)continue;if(k>=n[i].v.length-1){k-=n[i].v.length;n[i].v=S.substr(k+1,n[i].v.length)}else if(k<0)n[i].v="";else{n[i].v=S.substr(0,k+1);k=-1}n[i].t="t";_=i}if(k>=0&&_=0;--i){if(n[i]==null||"n?".indexOf(n[i].t)===-1)continue;f=n[i].v.indexOf(".")>-1&&i===C?n[i].v.indexOf(".")-1:n[i].v.length-1;y=n[i].v.substr(f+1);for(;f>=0;--f){if(k>=0&&(n[i].v.charAt(f)==="0"||n[i].v.charAt(f)==="#"))y=S.charAt(k--)+y}n[i].v=y;n[i].t="t";_=i}if(k>=0&&_-1&&i===C?n[i].v.indexOf(".")+1:0;y=n[i].v.substr(0,f);for(;f-1){x=a>1&&r<0&&i>0&&n[i-1].v==="-"?-r:r;n[i].v=Pe(n[i].t,n[i].v,x);n[i].t="t"}var A="";for(i=0;i!==n.length;++i)if(n[i]!=null)A+=n[i].v;return A}var ze=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function $e(e,r){if(r==null)return false;var t=parseFloat(r[2]);switch(r[1]){case"=":if(e==t)return true;break;case">":if(e>t)return true;break;case"<":if(e":if(e!=t)return true;break;case">=":if(e>=t)return true;break;case"<=":if(e<=t)return true;break;}return false}function We(e,r){var t=Ie(e);var a=t.length,n=t[a-1].indexOf("@");if(a<4&&n>-1)--a;if(t.length>4)throw new Error("cannot find right format for |"+t.join("|")+"|");if(typeof r!=="number")return[4,t.length===4||n>-1?t[t.length-1]:"@"];switch(t.length){case 1:t=n>-1?["General","General","General",t[0]]:[t[0],t[0],t[0],"@"];break;case 2:t=n>-1?[t[0],t[0],t[0],t[1]]:[t[0],t[1],t[0],"@"];break;case 3:t=n>-1?[t[0],t[1],t[0],t[2]]:[t[0],t[1],t[2],"@"];break;case 4:break;}var s=r>0?t[0]:r<0?t[1]:t[2];if(t[0].indexOf("[")===-1&&t[1].indexOf("[")===-1)return[a,s];if(t[0].match(/\[[=<>]/)!=null||t[1].match(/\[[=<>]/)!=null){var i=t[0].match(ze);var l=t[1].match(ze);return $e(r,i)?[a,t[0]]:$e(r,l)?[a,t[1]]:[a,t[i!=null&&l!=null?2:1]]}return[a,s]}function Ue(e,r,t){if(t==null)t={};var a="";switch(typeof e){case"string":if(e=="m/d/yy"&&t.dateNF)a=t.dateNF;else a=e;break;case"number":if(e==14&&t.dateNF)a=t.dateNF;else a=(t.table!=null?t.table:K)[e];if(a==null)a=t.table&&t.table[Z[e]]||K[Z[e]];if(a==null)a=q[e]||"General";break;}if(X(a,0))return fe(r,t);if(r instanceof Date)r=ne(r,t.date1904);var n=We(a,r);if(X(n[1]))return fe(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return Be(n[1],r,t,n[0])}function je(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(K[t]==undefined){if(r<0)r=t;continue}if(K[t]==e){r=t;break}}if(r<0)r=391}K[r]=e;return r}function He(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)je(e[r],r)}function Ve(){K=J()}var Xe={format:Ue,load:je,_table:K,load_table:He,parse_date_code:ee,is_date:Le,get_table:function Ec(){return Xe._table=K}};var Ge={5:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',23:"General",24:"General",25:"General",26:"General",27:"m/d/yy",28:"m/d/yy",29:"m/d/yy",30:"m/d/yy",31:"m/d/yy",32:"h:mm:ss",33:"h:mm:ss",34:"h:mm:ss",35:"h:mm:ss",36:"m/d/yy",41:'_(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* (#,##0);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)',50:"m/d/yy",51:"m/d/yy",52:"m/d/yy",53:"m/d/yy",54:"m/d/yy",55:"m/d/yy",56:"m/d/yy",57:"m/d/yy",58:"m/d/yy",59:"0",60:"0.00",61:"#,##0",62:"#,##0.00",63:'"$"#,##0_);\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',67:"0%",68:"0.00%",69:"# ?/?",70:"# ??/??",71:"m/d/yy",72:"m/d/yy",73:"d-mmm-yy",74:"d-mmm",75:"mmm-yy",76:"h:mm",77:"h:mm:ss",78:"m/d/yy h:mm",79:"mm:ss",80:"[h]:mm:ss",81:"mmss.0"};var Ye=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function Je(e){var r=typeof e=="number"?K[e]:e;r=r.replace(Ye,"(\\d+)");return new RegExp("^"+r+"$")}function Ke(e,r,t){var a=-1,n=-1,s=-1,i=-1,l=-1,o=-1;(r.match(Ye)||[]).forEach(function(e,r){var c=parseInt(t[r+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=c;break;case"d":s=c;break;case"h":i=c;break;case"s":o=c;break;case"m":if(i>=0)l=c;else n=c;break;}});if(o>=0&&l==-1&&n>=0){l=n;n=-1}var c=(""+(a>=0?a:(new Date).getFullYear())).slice(-4)+"-"+("00"+(n>=1?n:1)).slice(-2)+"-"+("00"+(s>=1?s:1)).slice(-2);if(c.length==7)c="0"+c;if(c.length==8)c="20"+c;var f=("00"+(i>=0?i:0)).slice(-2)+":"+("00"+(l>=0?l:0)).slice(-2)+":"+("00"+(o>=0?o:0)).slice(-2);if(i==-1&&l==-1&&o==-1)return c;if(a==-1&&n==-1&&s==-1)return f;return c+"T"+f}var Ze={"d.m":"d\\.m"};function qe(e,r){return je(Ze[e]||e,r)}var Qe=function(){var e={};e.version="1.2.0";function r(){var e=0,r=new Array(256);for(var t=0;t!=256;++t){e=t;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;e=e&1?-306674912^e>>>1:e>>>1;r[t]=e}return typeof Int32Array!=="undefined"?new Int32Array(r):r; +}var t=r();function a(e){var r=0,t=0,a=0,n=typeof Int32Array!=="undefined"?new Int32Array(4096):new Array(4096);for(a=0;a!=256;++a)n[a]=e[a];for(a=0;a!=256;++a){t=e[a];for(r=256+a;r<4096;r+=256)t=n[r]=t>>>8^e[t&255]}var s=[];for(a=1;a!=16;++a)s[a-1]=typeof Int32Array!=="undefined"?n.subarray(a*256,a*256+256):n.slice(a*256,a*256+256);return s}var n=a(t);var s=n[0],i=n[1],l=n[2],o=n[3],c=n[4];var f=n[5],u=n[6],h=n[7],d=n[8],m=n[9];var p=n[10],v=n[11],g=n[12],b=n[13],w=n[14];function k(e,r){var a=r^-1;for(var n=0,s=e.length;n>>8^t[(a^e.charCodeAt(n++))&255];return~a}function y(e,r){var a=r^-1,n=e.length-15,k=0;for(;k>8&255]^g[e[k++]^a>>16&255]^v[e[k++]^a>>>24]^p[e[k++]]^m[e[k++]]^d[e[k++]]^h[e[k++]]^u[e[k++]]^f[e[k++]]^c[e[k++]]^o[e[k++]]^l[e[k++]]^i[e[k++]]^s[e[k++]]^t[e[k++]];n+=15;while(k>>8^t[(a^e[k++])&255];return~a}function x(e,r){var a=r^-1;for(var n=0,s=e.length,i=0,l=0;n>>8^t[(a^i)&255]}else if(i<2048){a=a>>>8^t[(a^(192|i>>6&31))&255];a=a>>>8^t[(a^(128|i&63))&255]}else if(i>=55296&&i<57344){i=(i&1023)+64;l=e.charCodeAt(n++)&1023;a=a>>>8^t[(a^(240|i>>8&7))&255];a=a>>>8^t[(a^(128|i>>2&63))&255];a=a>>>8^t[(a^(128|l>>6&15|(i&3)<<4))&255];a=a>>>8^t[(a^(128|l&63))&255]}else{a=a>>>8^t[(a^(224|i>>12&15))&255];a=a>>>8^t[(a^(128|i>>6&63))&255];a=a>>>8^t[(a^(128|i&63))&255]}}return~a}e.table=t;e.bstr=k;e.buf=y;e.str=x;return e}();var er=function Tc(){var e={};e.version="1.2.2";function r(e,r){var t=e.split("/"),a=r.split("/");for(var n=0,s=0,i=Math.min(t.length,a.length);n>>1;e._W(2,t);var a=r.getFullYear()-1980;a=a<<4|r.getMonth()+1;a=a<<5|r.getDate();e._W(2,a)}function s(e){var r=e._R(2)&65535;var t=e._R(2)&65535;var a=new Date;var n=t&31;t>>>=5;var s=t&15;t>>>=4;a.setMilliseconds(0);a.setFullYear(t+1980);a.setMonth(s-1);a.setDate(n);var i=r&31;r>>>=5;var l=r&63;r>>>=6;a.setHours(r);a.setMinutes(l);a.setSeconds(i<<1);return a}function i(e){ga(e,0);var r={};var t=0;while(e.l<=e.length-4){var a=e._R(2);var n=e._R(2),s=e.l+n;var i={};switch(a){case 21589:{t=e._R(1);if(t&1)i.mtime=e._R(4);if(n>5){if(t&2)i.atime=e._R(4);if(t&4)i.ctime=e._R(4)}if(i.mtime)i.mt=new Date(i.mtime*1e3)}break;case 1:{var l=e._R(4),o=e._R(4);i.usz=o*Math.pow(2,32)+l;l=e._R(4);o=e._R(4);i.csz=o*Math.pow(2,32)+l}break;}e.l=s;r[a]=i}return r}var l;function o(){return l||(l=rr)}function c(e,r){if(e[0]==80&&e[1]==75)return Oe(e,r);if((e[0]|32)==109&&(e[1]|32)==105)return $e(e,r);if(e.length<512)throw new Error("CFB file size "+e.length+" < 512");var t=3;var a=512;var n=0;var s=0;var i=0;var l=0;var o=0;var c=[];var m=e.slice(0,512);ga(m,0);var v=f(m);t=v[0];switch(t){case 3:a=512;break;case 4:a=4096;break;case 0:if(v[1]==0)return Oe(e,r);default:throw new Error("Major Version: Expected 3 or 4 saw "+t);}if(a!==512){m=e.slice(0,a);ga(m,28)}var w=e.slice(0,a);u(m,t);var k=m._R(4,"i");if(t===3&&k!==0)throw new Error("# Directory Sectors: Expected 0 saw "+k);m.l+=4;i=m._R(4,"i");m.l+=4;m.chk("00100000","Mini Stream Cutoff Size: ");l=m._R(4,"i");n=m._R(4,"i");o=m._R(4,"i");s=m._R(4,"i");for(var y=-1,x=0;x<109;++x){y=m._R(4,"i");if(y<0)break;c[x]=y}var S=h(e,a);p(o,s,S,a,c);var C=g(S,i,c,a);if(i0&&l!==B)C[l].name="!MiniFAT";C[c[0]].name="!FAT";C.fat_addrs=c;C.ssz=a;var _={},A=[],F=[],E=[];b(i,C,S,A,n,_,F,l);d(F,E,A);A.shift();var T={FileIndex:F,FullPaths:E};if(r&&r.raw)T.raw={header:w,sectors:S};return T}function f(e){if(e[e.l]==80&&e[e.l+1]==75)return[0,0];e.chk(z,"Header Signature: ");e.l+=16;var r=e._R(2,"u");return[e._R(2,"u"),r]}function u(e,r){var t=9;e.l+=2;switch(t=e._R(2)){case 9:if(r!=3)throw new Error("Sector Shift: Expected 9 saw "+t);break;case 12:if(r!=4)throw new Error("Sector Shift: Expected 12 saw "+t);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+t);}e.chk("0600","Mini Sector Shift: ");e.chk("000000000000","Reserved: ")}function h(e,r){var t=Math.ceil(e.length/r)-1;var a=[];for(var n=1;n0&&i>=0){s.push(r.slice(i*L,i*L+L));n-=L;i=ca(t,i*4)}if(s.length===0)return wa(0);return N(s).slice(0,e.size)}function p(e,r,t,a,n){var s=B;if(e===B){if(r!==0)throw new Error("DIFAT chain shorter than expected")}else if(e!==-1){var i=t[e],l=(a>>>2)-1;if(!i)return;for(var o=0;o=1)p(ca(i,a-4),r-1,t,a,n)}}function v(e,r,t,a,n){var s=[],i=[];if(!n)n=[];var l=a-1,o=0,c=0;for(o=r;o>=0;){n[o]=true;s[s.length]=o;i.push(e[o]);var f=t[Math.floor(o*4/a)];c=o*4&l;if(a<4+c)throw new Error("FAT boundary crossed: "+o+" 4 "+a);if(!e[f])break;o=ca(e[f],c)}return{nodes:s,data:Bt([i])}}function g(e,r,t,a){var n=e.length,s=[];var i=[],l=[],o=[];var c=a-1,f=0,u=0,h=0,d=0;for(f=0;f=n)h-=n;if(i[h])continue;o=[];var m=[];for(u=h;u>=0;){m[u]=true;i[u]=true;l[l.length]=u;o.push(e[u]);var p=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[p])break;u=ca(e[p],d);if(m[u])break}s[h]={nodes:l,data:Bt([o])}}return s}function b(e,r,t,a,n,s,i,l){var o=0,c=a.length?2:0;var f=r[e].data;var u=0,h=0,d;for(;u0&&o!==B)r[o].name="!StreamData"}else if(g.size>=4096){g.storage="fat";if(r[g.start]===undefined)r[g.start]=v(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(o!==B&&g.start!==B&&r[o]){g.content=m(g,r[o].data,(r[l]||{}).data)}}if(g.content)ga(g.content,0);s[d]=g;i.push(g)}}function w(e,r){return new Date((oa(e,r+4)/1e7*Math.pow(2,32)+oa(e,r)/1e7-11644473600)*1e3)}function y(e,r){o();return c(l.readFileSync(e),r)}function _(e,r){var t=r&&r.type;if(!t){if(S&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return y(e,r);case"base64":return c(E(x(e)),r);case"binary":return c(E(e),r);}return c(e,r)}function T(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;D(e)}function D(e){var r="Sh33tJ5";if(er.find(e,"/"+r))return;var t=wa(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);O(e)}function O(e,n){T(e);var s=false,i=false;for(var l=e.FullPaths.length-1;l>=0;--l){var o=e.FileIndex[l];switch(o.type){case 0:if(i)s=true;else{e.FileIndex.pop();e.FullPaths.pop()}break;case 1:;case 2:;case 5:i=true;if(isNaN(o.R*o.L*o.C))s=true;if(o.R>-1&&o.L>-1&&o.R==o.L)s=true;break;default:s=true;break;}}if(!s&&!n)return;var c=new Date(1987,1,19),f=0;var u=Object.create?Object.create(null):{};var h=[];for(l=0;l1?1:-1;m.size=0;m.type=5}else if(p.slice(-1)=="/"){for(f=l+1;f=h.length?-1:f;for(f=l+1;f=h.length?-1:f;m.type=1}else{if(t(e.FullPaths[l+1]||"")==t(p))m.R=l+1;m.type=2}}}function M(e,r){var t=r||{};if(t.fileType=="mad")return We(e,t);O(e);switch(t.fileType){case"zip":return Ne(e,t);}var a=function(e){var r=0,t=0;for(var a=0;a0){if(s<4096)r+=s+63>>6;else t+=s+511>>9}}var i=e.FullPaths.length+3>>2;var l=r+7>>3;var o=r+127>>7;var c=l+t+i+o;var f=c+127>>7;var u=f<=109?0:Math.ceil((f-109)/127);while(c+f+u+127>>7>f)u=++f<=109?0:Math.ceil((f-109)/127);var h=[1,u,f,o,i,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=wa(a[7]<<9);var s=0,i=0;{for(s=0;s<8;++s)n._W(1,$[s]);for(s=0;s<8;++s)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(s=0;s<3;++s)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:B);n._W(4,a[3]);n._W(-4,a[1]?a[0]-1:B);n._W(4,a[1]);for(s=0;s<109;++s)n._W(-4,s>9)}l(a[6]+7>>3);while(n.l&511)n._W(-4,U.ENDOFCHAIN);i=s=0;for(o=0;o=4096)continue;f.start=i;l(c+63>>6)}while(n.l&511)n._W(-4,U.ENDOFCHAIN);for(s=0;s32){console.error("Name "+h+" will be truncated to "+h.slice(0,32));h=h.slice(0,32)}c=2*(h.length+1);n._W(64,h,"utf16le");n._W(2,c);n._W(1,f.type);n._W(1,f.color);n._W(-4,f.L);n._W(-4,f.R);n._W(-4,f.C);if(!f.clsid)for(o=0;o<4;++o)n._W(4,0);else n._W(16,f.clsid,"hex");n._W(4,f.state||0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,0);n._W(4,f.start);n._W(4,f.size);n._W(4,0)}for(s=1;s=4096){n.l=f.start+1<<9;if(S&&Buffer.isBuffer(f.content)){f.content.copy(n,n.l,0,f.size);n.l+=f.size+511&-512}else{for(o=0;o0&&f.size<4096){if(S&&Buffer.isBuffer(f.content)){f.content.copy(n,n.l,0,f.size);n.l+=f.size+63&-64}else{for(o=0;o>16|r>>8|r)&255}var ee=typeof Uint8Array!=="undefined";var re=ee?new Uint8Array(1<<8):[];for(var te=0;te<1<<8;++te)re[te]=Q(te);function ae(e,r){var t=re[e&255];if(r<=8)return t>>>8-r;t=t<<8|re[e>>8&255];if(r<=16)return t>>>16-r;t=t<<8|re[e>>16&255];return t>>>24-r}function ne(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=6?0:e[a+1]<<8))>>>t&3}function se(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=5?0:e[a+1]<<8))>>>t&7}function ie(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=4?0:e[a+1]<<8))>>>t&15}function le(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=3?0:e[a+1]<<8))>>>t&31}function oe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=1?0:e[a+1]<<8))>>>t&127}function ce(e,r,t){var a=r&7,n=r>>>3,s=(1<>>a;if(t<8-a)return i&s;i|=e[n+1]<<8-a;if(t<16-a)return i&s;i|=e[n+2]<<16-a;if(t<24-a)return i&s;i|=e[n+3]<<24-a;return i&s}function fe(e,r,t){var a=r&7,n=r>>>3;if(a<=5)e[n]|=(t&7)<>8-a}return r+3}function ue(e,r,t){var a=r&7,n=r>>>3;t=(t&1)<>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t;return r+8}function de(e,r,t){var a=r&7,n=r>>>3;t<<=a;e[n]|=t&255;t>>>=8;e[n+1]=t&255;e[n+2]=t>>>8;return r+16}function me(e,r){var t=e.length,a=2*t>r?2*t:r+5,n=0;if(t>=r)return e;if(S){var s=F(a);if(e.copy)e.copy(s);else for(;n>a-u;for(i=(1<=0;--i)r[l|i<0)r[r.l++]=e[t++]}return r.l}function s(r,t){var n=0;var s=0;var i=ee?new Uint16Array(32768):[];while(s0)t[t.l++]=r[s++];n=t.l*8;continue}n=fe(t,n,+!!(s+l==r.length)+2);var o=0;while(l-- >0){var c=r[s];o=(o<<5^c)&32767;var f=-1,u=0;if(f=i[o]){f|=s&~32767;if(f>s)f-=32768;if(f2){c=a[u];if(c<=22)n=he(t,n,re[c+1]>>1)-1;else{he(t,n,3);n+=5;he(t,n,re[c-23]>>5);n+=3}var h=c<8?0:c-4>>2;if(h>0){de(t,n,u-Z[c]);n+=h}c=e[s-f];n=he(t,n,re[c]>>3);n-=3;var d=c<4?0:c-2>>1;if(d>0){de(t,n,s-f-q[c]);n+=d}for(var m=0;m>8-m;for(var p=(1<<7-m)-1;p>=0;--p)Ce[d|p<>>=3){case 16:s=3+ne(e,r);r+=2;d=v[v.length-1];while(s-- >0)v.push(d);break;case 17:s=3+se(e,r);r+=3;while(s-- >0)v.push(0);break;case 18:s=11+oe(e,r);r+=7;while(s-- >0)v.push(0);break;default:v.push(d);if(o>>0;var l=0,o=0;while((a&1)==0){a=se(e,t);t+=3;if(a>>>1==0){if(t&7)t+=8-(t&7);var c=e[t>>>3]|e[(t>>>3)+1]<<8;t+=32;if(c>0){if(!r&&i0){n[s++]=e[t>>>3];t+=8}}continue}else if(a>>1==1){l=9;o=5}else{t=Fe(e,t);l=_e;o=Ae}for(;;){if(!r&&i>>1==1?ge[f]:xe[f];t+=u&15;u>>>=4;if((u>>>8&255)===0)n[s++]=u;else if(u==256)break;else{u-=257;var h=u<8?0:u-4>>2;if(h>5)h=0;var d=s+Z[u];if(h>0){d+=ce(e,t,h);t+=h}f=ce(e,t,o);u=a>>>1==1?be[f]:Se[f];t+=u&15;u>>>=4;var m=u<4?0:u-2>>1;var p=q[u];if(m>0){p+=ce(e,t,m);t+=m}if(!r&&i>>3];return[n.slice(0,s),t+7>>>3]}function Te(e,r){var t=e.slice(e.l||0);var a=Ee(t,r);e.l+=a[1];return a[0]}function De(e,r){if(e){if(typeof console!=="undefined")console.error(r)}else throw new Error(r)}function Oe(e,r){var t=e;ga(t,0);var a=[],n=[];var s={FileIndex:a,FullPaths:n};T(s,{root:r.root});var l=t.length-4;while((t[l]!=80||t[l+1]!=75||t[l+2]!=5||t[l+3]!=6)&&l>=0)--l;t.l=l+4;t.l+=4;var o=t._R(2);t.l+=6;var c=t._R(4);t.l=c;for(l=0;l0){t=t.slice(0,t.length-1);t=t.slice(0,t.lastIndexOf("/")+1);if(s.slice(0,t.length)==t)break}}var i=(a[1]||"").match(/boundary="(.*?)"/);if(!i)throw new Error("MAD cannot find boundary");var l="--"+(i[1]||"");var o=[],c=[];var f={FileIndex:o,FullPaths:c};T(f);var u,h=0;for(n=0;n=32&&d<128)++u;var p=u>=h*4/5;n.push(a);n.push("Content-Location: "+(t.root||"file:///C:/SheetJS/")+i);n.push("Content-Transfer-Encoding: "+(p?"quoted-printable":"base64"));n.push("Content-Type: "+Ie(l,i));n.push("");n.push(p?Le(f):Re(f))}n.push(a+"--\r\n");return n.join("\r\n")}function Ue(e){var r={};T(r,e);return r}function je(e,r,t,n){var s=n&&n.unsafe;if(!s)T(e);var i=!s&&er.find(e,r);if(!i){var l=e.FullPaths[0];if(r.slice(0,l.length)==l)l=r;else{if(l.slice(-1)!="/")l+="/";l=(l+r).replace("//","/")}i={name:a(r),type:2};e.FileIndex.push(i);e.FullPaths.push(l);if(!s)er.utils.cfb_gc(e)}i.content=t;i.size=t?t.length:0;if(n){if(n.CLSID)i.clsid=n.CLSID;if(n.mt)i.mt=n.mt;if(n.ct)i.ct=n.ct}return i}function He(e,r){T(e);var t=er.find(e,r);if(t)for(var a=0;a3)a=true;switch(n[s].slice(n[s].length-1)){case"Y":throw new Error("Unsupported ISO Duration Field: "+n[s].slice(n[s].length-1));case"D":t*=24;case"H":t*=60;case"M":if(!a)throw new Error("Unsupported ISO Duration Field: M");else t*=60;case"S":break;}r+=t*parseInt(n[s],10)}return r}var br=new Date("2017-02-19T19:06:09.000Z");var wr=isNaN(br.getFullYear())?new Date("2/19/17"):br;var kr=wr.getFullYear()==2017;function yr(e,r){var t=new Date(e);if(kr){if(r>0)t.setTime(t.getTime()+t.getTimezoneOffset()*60*1e3);else if(r<0)t.setTime(t.getTime()-t.getTimezoneOffset()*60*1e3);return t}if(e instanceof Date)return e;if(wr.getFullYear()==1917&&!isNaN(t.getFullYear())){var a=t.getFullYear();if(e.indexOf(""+a)>-1)return t;t.setFullYear(t.getFullYear()+100);return t}var n=e.match(/\d+/g)||["2017","2","19","0","0","0"];var s=new Date(+n[0],+n[1]-1,+n[2],+n[3]||0,+n[4]||0,+n[5]||0);if(e.indexOf("Z")>-1)s=new Date(s.getTime()-s.getTimezoneOffset()*60*1e3);return s}function xr(e,r){if(S&&Buffer.isBuffer(e)){if(r&&_){if(e[0]==255&&e[1]==254)return gt(e.slice(2).toString("utf16le"));if(e[1]==254&&e[2]==255)return gt(h(e.slice(2).toString("binary")))}return e.toString("binary")}if(typeof TextDecoder!=="undefined")try{if(r){if(e[0]==255&&e[1]==254)return gt(new TextDecoder("utf-16le").decode(e.slice(2)));if(e[0]==254&&e[1]==255)return gt(new TextDecoder("utf-16be").decode(e.slice(2)))}var t={"€":"€","‚":"‚","ƒ":"ƒ","„":"„","…":"…","†":"†","‡":"‡","ˆ":"ˆ","‰":"‰","Š":"Š","‹":"‹","Œ":"Œ","Ž":"Ž","‘":"‘","’":"’","“":"“","”":"”","•":"•","–":"–","—":"—","˜":"˜","™":"™","š":"š","›":"›","œ":"œ","ž":"ž","Ÿ":"Ÿ"};if(Array.isArray(e))e=new Uint8Array(e);return new TextDecoder("latin1").decode(e).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g,function(e){return t[e]||e})}catch(a){}var n=[];for(var s=0;s!=e.length;++s)n.push(String.fromCharCode(e[s]));return n.join("")}function Sr(e){if(typeof JSON!="undefined"&&!Array.isArray(e))return JSON.parse(JSON.stringify(e));if(typeof e!="object"||e==null)return e;if(e instanceof Date)return new Date(e.getTime());var r={};for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))r[t]=Sr(e[t]);return r}function Cr(e,r){var t="";while(t.length3&&Er.indexOf(r)==-1)return s}else if(r.replace(/[ap]m?/,"").match(/[a-z]/))return s;if(i<0||i>8099||e.match(/[^-0-9:,\/\\]/))return s;return n}var Dr=function(){var e="abacaba".split(/(:?b)/i).length==5;return function r(t,a,n){if(e||typeof a=="string")return t.split(a);var s=t.split(a),i=[s[0]];for(var l=1;l\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g;var Xr=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm,Gr=/<[^>]*>/g;var Yr=Hr.match(Xr)?Xr:Gr;var Jr=/<\w*:/,Kr=/<(\/?)\w+:/;function Zr(e,r,t){var a={};var n=0,s=0;for(;n!==e.length;++n)if((s=e.charCodeAt(n))===32||s===10||s===13)break;if(!r)a[0]=e.slice(0,n);if(n===e.length)return a;var i=e.match(Vr),l=0,o="",c=0,f="",u="",h=1;if(i)for(c=0;c!=i.length;++c){u=i[c];for(s=0;s!=u.length;++s)if(u.charCodeAt(s)===61)break;f=u.slice(0,s).trim();while(u.charCodeAt(s+1)==32)++s;h=(n=u.charCodeAt(s+1))==34||n==39?1:0;o=u.slice(s+1+h,u.length-h);for(l=0;l!=f.length;++l)if(f.charCodeAt(l)===58)break;if(l===f.length){if(f.indexOf("_")>0)f=f.slice(0,f.indexOf("_"));a[f]=o;if(!t)a[f.toLowerCase()]=o}else{var d=(l===5&&f.slice(0,5)==="xmlns"?"xmlns":"")+f.slice(l+1);if(a[d]&&f.slice(l-3,l)=="ext")continue;a[d]=o;if(!t)a[d.toLowerCase()]=o}}return a}function qr(e){return e.replace(Kr,"<$1")}var Qr={""":'"',"'":"'",">":">","<":"<","&":"&"};var et=or(Qr);var rt=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;function t(a){var n=a+"",s=n.indexOf("-1?16:10))||e}).replace(r,function(e,r){return String.fromCharCode(parseInt(r,16))});var i=n.indexOf("]]>");return t(n.slice(0,s))+n.slice(s+9,i)+t(n.slice(i+3))}return function a(e,r){var a=t(e);return r?a.replace(/\r\n/g,"\n"):a}}();var tt=/[&<>'"]/g,at=/[\u0000-\u0008\u000b-\u001f\uFFFE-\uFFFF]/g;function nt(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(at,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function st(e){return nt(e).replace(/ /g,"_x0020_")}var it=/[\u0000-\u001f]/g;function lt(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(/\n/g,"
").replace(it,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function ot(e){var r=e+"";return r.replace(tt,function(e){return et[e]}).replace(it,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var ct=function(){var e=/&#(\d+);/g;function r(e,r){return String.fromCharCode(parseInt(r,10))}return function t(a){return a.replace(e,r)}}();function ft(e){return e.replace(/(\r\n|[\r\n])/g," ")}function ut(e){switch(e){case 1:;case true:;case"1":;case"true":return true;case 0:;case false:;case"0":;case"false":return false;}return false}function ht(e){var r="",t=0,a=0,n=0,s=0,i=0,l=0;while(t191&&a<224){i=(a&31)<<6;i|=n&63;r+=String.fromCharCode(i);continue}s=e.charCodeAt(t++);if(a<240){r+=String.fromCharCode((a&15)<<12|(n&63)<<6|s&63);continue}i=e.charCodeAt(t++);l=((a&7)<<18|(n&63)<<12|(s&63)<<6|i&63)-65536;r+=String.fromCharCode(55296+(l>>>10&1023));r+=String.fromCharCode(56320+(l&1023))}return r}function dt(e){var r=A(2*e.length),t,a,n=1,s=0,i=0,l;for(a=0;a>>10&1023);t=56320+(t&1023)}if(i!==0){r[s++]=i&255;r[s++]=i>>>8;i=0}r[s++]=t%256;r[s++]=t>>>8}return r.slice(0,s).toString("ucs2")}function mt(e){return C(e,"binary").toString("utf8")}var pt="foo bar baz☃🍣";var vt=S&&(mt(pt)==ht(pt)&&mt||dt(pt)==ht(pt)&&dt)||ht;var gt=S?function(e){return C(e,"utf8").toString("binary")}:function(e){var r=[],t=0,a=0,n=0;while(t>6)));r.push(String.fromCharCode(128+(a&63)));break;case a>=55296&&a<57344:a-=55296;n=e.charCodeAt(t++)-56320+(a<<10);r.push(String.fromCharCode(240+(n>>18&7)));r.push(String.fromCharCode(144+(n>>12&63)));r.push(String.fromCharCode(128+(n>>6&63)));r.push(String.fromCharCode(128+(n&63)));break;default:r.push(String.fromCharCode(224+(a>>12)));r.push(String.fromCharCode(128+(a>>6&63)));r.push(String.fromCharCode(128+(a&63)));}}return r.join("")};var bt=function(){var e={};return function r(t,a){var n=t+"|"+(a||"");if(e[n])return e[n];return e[n]=new RegExp("<(?:\\w+:)?"+t+'(?: xml:space="preserve")?(?:[^>]*)>([\\s\\S]*?)",a||"")}}();var wt=function(){var e=[["nbsp"," "],["middot","·"],["quot",'"'],["apos","'"],["gt",">"],["lt","<"],["amp","&"]].map(function(e){return[new RegExp("&"+e[0]+";","ig"),e[1]]});return function r(t){var a=t.replace(/^[\t\n\r ]+/,"").replace(/[\t\n\r ]+$/,"").replace(/>\s+/g,">").replace(/\s+/g,"\n").replace(/<[^>]*>/g,"");for(var n=0;n([\\s\\S]*?)","g")}}();var yt=/<\/?(?:vt:)?variant>/g,xt=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function At(e){return ir(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function Ft(e,r,t){return"<"+e+(t!=null?At(t):"")+(r!=null?(r.match(Ct)?' xml:space="preserve"':"")+">"+r+""}function Et(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function Tt(e,r){switch(typeof e){case"string":var t=Ft("vt:lpwstr",nt(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return Ft((e|0)==e?"vt:i4":"vt:r8",nt(String(e)));case"boolean":return Ft("vt:bool",e?"true":"false");}if(e instanceof Date)return Ft("vt:filetime",Et(e));throw new Error("Unable to serialize "+e)}function Dt(e){if(S&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return vt(D(M(e)));throw new Error("Bad input format: expected Buffer or string")}var Ot=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/](?:[^>=]|="[^"]*?")*)?>/gm;var Mt={CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",CT:"http://schemas.openxmlformats.org/package/2006/content-types",RELS:"http://schemas.openxmlformats.org/package/2006/relationships",TCMNT:"http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"};var Nt=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];var Pt={o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel",ss:"urn:schemas-microsoft-com:office:spreadsheet",dt:"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",mv:"http://macVmlSchemaUri",v:"urn:schemas-microsoft-com:vml",html:"http://www.w3.org/TR/REC-html40"};function It(e,r){var t=1-2*(e[r+7]>>>7);var a=((e[r+7]&127)<<4)+(e[r+6]>>>4&15);var n=e[r+6]&15;for(var s=5;s>=0;--s)n=n*256+e[r+s];if(a==2047)return n==0?t*Infinity:NaN;if(a==0)a=-1022;else{a-=1023;n+=Math.pow(2,52)}return t*Math.pow(2,a-52)*n}function Rt(e,r,t){var a=(r<0||1/r==-Infinity?1:0)<<7,n=0,s=0;var i=a?-r:r;if(!isFinite(i)){n=2047;s=isNaN(r)?26985:0}else if(i==0)n=s=0;else{n=Math.floor(Math.log(i)/Math.LN2);s=i*Math.pow(2,52-n);if(n<=-1023&&(!isFinite(s)||s>4|a}var Lt=function(e){var r=[],t=10240;for(var a=0;a0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map(function(e){return Buffer.isBuffer(e)?e:C(e)})):Lt(e)}:Lt;var zt=function(e,r,t){var a=[];for(var n=r;n0?Ht(e,r+4,r+4+t-1):""};var Xt=Vt;var Gt=function(e,r){var t=oa(e,r);return t>0?Ht(e,r+4,r+4+t-1):""};var Yt=Gt;var Jt=function(e,r){var t=2*oa(e,r);return t>0?Ht(e,r+4,r+4+t-1):""};var Kt=Jt;var Zt=function Oc(e,r){var t=oa(e,r);return t>0?$t(e,r+4,r+4+t):""};var qt=Zt;var Qt=function(e,r){var t=oa(e,r);return t>0?Ht(e,r+4,r+4+t):""};var ea=Qt;var ra=function(e,r){return It(e,r)};var ta=ra;var aa=function Mc(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(S){Xt=function Nc(e,r){if(!Buffer.isBuffer(e))return Vt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Yt=function Pc(e,r){if(!Buffer.isBuffer(e))return Gt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Kt=function Ic(e,r){if(!Buffer.isBuffer(e)||!_)return Jt(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};qt=function Rc(e,r){if(!Buffer.isBuffer(e)||!_)return Zt(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};ea=function Lc(e,r){if(!Buffer.isBuffer(e))return Qt(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};ta=function Bc(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return ra(e,r)};aa=function zc(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function na(){$t=function(e,r,t){return a.utils.decode(1200,e.slice(r,t)).replace(I,"")};Ht=function(e,r,t){return a.utils.decode(65001,e.slice(r,t))};Xt=function(e,r){var n=oa(e,r);return n>0?a.utils.decode(t,e.slice(r+4,r+4+n-1)):""};Yt=function(e,t){var n=oa(e,t);return n>0?a.utils.decode(r,e.slice(t+4,t+4+n-1)):""};Kt=function(e,r){var t=2*oa(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};qt=function(e,r){var t=oa(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t)):""};ea=function(e,r){var t=oa(e,r);return t>0?a.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof a!=="undefined")na();var sa=function(e,r){return e[r]};var ia=function(e,r){return e[r+1]*(1<<8)+e[r]};var la=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var oa=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var ca=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var fa=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function ua(e,t){var n="",s,i,l=[],o,c,f,u;switch(t){case"dbcs":u=this.l;if(S&&Buffer.isBuffer(this)&&_)n=this.slice(this.l,this.l+2*e).toString("utf16le");else for(f=0;f0?ca:fa)(this,this.l);this.l+=4;return s}else{i=oa(this,this.l);this.l+=4}return i;case 8:;case-8:if(t==="f"){if(e==8)i=ta(this,this.l);else i=ta([this[this.l+7],this[this.l+6],this[this.l+5],this[this.l+4],this[this.l+3],this[this.l+2],this[this.l+1],this[this.l+0]],0);this.l+=8;return i}else e=8;case 16:n=Ut(this,this.l,e);break;};}this.l+=e;return n}var ha=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255;e[t+2]=r>>>16&255;e[t+3]=r>>>24&255};var da=function(e,r,t){e[t]=r&255;e[t+1]=r>>8&255;e[t+2]=r>>16&255;e[t+3]=r>>24&255};var ma=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function pa(e,n,s){var i=0,l=0;if(s==="dbcs"){for(l=0;l!=n.length;++l)ma(this,n.charCodeAt(l),this.l+2*l);i=2*n.length}else if(s==="sbcs"||s=="cpstr"){if(typeof a!=="undefined"&&t==874){for(l=0;l!=n.length;++l){var o=a.utils.encode(t,n.charAt(l));this[this.l+l]=o[0]}i=n.length}else if(typeof a!=="undefined"&&s=="cpstr"){o=a.utils.encode(r,n);if(o.length==n.length)for(l=0;l>8}while(this.l>>=8;this[this.l+1]=n&255;break;case 3:i=3;this[this.l]=n&255;n>>>=8;this[this.l+1]=n&255;n>>>=8;this[this.l+2]=n&255;break;case 4:i=4;ha(this,n,this.l);break;case 8:i=8;if(s==="f"){Rt(this,n,this.l);break};case 16:break;case-4:i=4;da(this,n,this.l);break;}this.l+=i;return this}function va(e,r){var t=Ut(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function ga(e,r){e.l=r;e._R=ua;e.chk=va;e._W=pa}function ba(e,r){e.l+=r}function wa(e){var r=A(e);ga(r,0);return r}function ka(e,r,t){if(!e)return;var a,n,s;ga(e,e.l||0);var i=e.length,l=0,o=0;while(e.la.l){a=a.slice(0,a.l);a.l=a.length}if(a.length>0)e.push(a)}a=null};var s=function f(e){if(a&&e=128?1:0)+1;if(a>=128)++s;if(a>=16384)++s;if(a>=2097152)++s;var i=e.next(s);if(n<=127)i._W(1,n);else{i._W(1,(n&127)+128);i._W(1,n>>7)}for(var l=0;l!=4;++l){if(a>=128){i._W(1,(a&127)+128);a>>=7}else{i._W(1,a);break}}if(a>0&&aa(t))e.push(t)}function Sa(e,r,t){var a=Sr(e);if(r.s){if(a.cRel)a.c+=r.s.c;if(a.rRel)a.r+=r.s.r}else{if(a.cRel)a.c+=r.c;if(a.rRel)a.r+=r.r}if(!t||t.biff<12){while(a.c>=256)a.c-=256;while(a.r>=65536)a.r-=65536}return a}function Ca(e,r,t){var a=Sr(e);a.s=Sa(a.s,r.s,t);a.e=Sa(a.e,r.s,t);return a}function _a(e,r){if(e.cRel&&e.c<0){e=Sr(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=Sr(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=La(e);if(!e.cRel&&e.cRel!=null)t=Na(t);if(!e.rRel&&e.rRel!=null)t=Ta(t);return t}function Aa(e,r){if(e.s.r==0&&!e.s.rRel){if(e.e.r==(r.biff>=12?1048575:r.biff>=8?65536:16384)&&!e.e.rRel){return(e.s.cRel?"":"$")+Ma(e.s.c)+":"+(e.e.cRel?"":"$")+Ma(e.e.c)}}if(e.s.c==0&&!e.s.cRel){if(e.e.c==(r.biff>=12?16383:255)&&!e.e.cRel){return(e.s.rRel?"":"$")+Ea(e.s.r)+":"+(e.e.rRel?"":"$")+Ea(e.e.r)}}return _a(e.s,r.biff)+":"+_a(e.e,r.biff)}function Fa(e){return parseInt(Da(e),10)-1}function Ea(e){return""+(e+1)}function Ta(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function Da(e){return e.replace(/\$(\d+)$/,"$1")}function Oa(e){var r=Pa(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function Ma(e){if(e<0)throw new Error("invalid column "+e);var r="";for(++e;e;e=Math.floor((e-1)/26))r=String.fromCharCode((e-1)%26+65)+r;return r}function Na(e){return e.replace(/^([A-Z])/,"$$$1")}function Pa(e){return e.replace(/^\$([A-Z])/,"$1")}function Ia(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function Ra(e){var r=0,t=0;for(var a=0;a=48&&n<=57)r=10*r+(n-48);else if(n>=65&&n<=90)t=26*t+(n-64)}return{c:t-1,r:r-1}}function La(e){var r=e.c+1;var t="";for(;r;r=(r-1)/26|0)t=String.fromCharCode((r-1)%26+65)+t;return t+(e.r+1)}function Ba(e){var r=e.indexOf(":");if(r==-1)return{s:Ra(e),e:Ra(e)};return{s:Ra(e.slice(0,r)),e:Ra(e.slice(r+1))}}function za(e,r){if(typeof r==="undefined"||typeof r==="number"){return za(e.s,e.e)}if(typeof e!=="string")e=La(e);if(typeof r!=="string")r=La(r);return e==r?e:e+":"+r}function $a(e){var r=Ba(e);return"$"+Ma(r.s.c)+"$"+Ea(r.s.r)+":$"+Ma(r.e.c)+"$"+Ea(r.e.r)}function Wa(e,r){if(!e&&!(r&&r.biff<=5&&r.biff>=2))throw new Error("empty sheet name");if(/[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(e))return"'"+e.replace(/'/g,"''")+"'";return e}function Ua(e){var r={s:{c:0,r:0},e:{c:0,r:0}};var t=0,a=0,n=0;var s=e.length;for(t=0;a26)break;t=26*t+n}r.s.c=--t;for(t=0;a9)break;t=10*t+n}r.s.r=--t;if(a===s||n!=10){r.e.c=r.s.c;r.e.r=r.s.r;return r}++a;for(t=0;a!=s;++a){if((n=e.charCodeAt(a)-64)<1||n>26)break;t=26*t+n}r.e.c=--t;for(t=0;a!=s;++a){if((n=e.charCodeAt(a)-48)<0||n>9)break;t=10*t+n}r.e.r=--t;return r}function ja(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=Ue(e.z,t?hr(r):r)}catch(a){}try{return e.w=Ue((e.XF||{}).numFmtId||(t?14:0),t?hr(r):r)}catch(a){return""+r}}function Ha(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(e.t=="e")return pn[e.v]||e.v;if(r==undefined)return ja(e,e.v);return ja(e,r)}function Va(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function Xa(e,r,t){var a=t||{};var n=e?e["!data"]!=null:a.dense;if(g!=null&&n==null)n=g;var s=e||{};if(n&&!s["!data"])s["!data"]=[];var i=0,l=0;if(s&&a.origin!=null){if(typeof a.origin=="number")i=a.origin;else{var o=typeof a.origin=="string"?Ra(a.origin):a.origin;i=o.r;l=o.c}if(!s["!ref"])s["!ref"]="A1:A1"}var c={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(s["!ref"]){var f=Ua(s["!ref"]);c.s.c=f.s.c;c.s.r=f.s.r;c.e.c=Math.max(c.e.c,f.e.c);c.e.r=Math.max(c.e.r,f.e.r);if(i==-1)c.e.r=i=f.e.r+1}var u=[];for(var h=0;h!=r.length;++h){if(!r[h])continue;if(!Array.isArray(r[h]))throw new Error("aoa_to_sheet expects an array of arrays");var d=i+h,m=""+(d+1);if(n){if(!s["!data"][d])s["!data"][d]=[];u=s["!data"][d]}for(var p=0;p!=r[h].length;++p){if(typeof r[h][p]==="undefined")continue;var v={v:r[h][p]};var b=l+p;if(c.s.r>d)c.s.r=d;if(c.s.c>b)c.s.c=b;if(c.e.r>16&255,e>>8&255,e&255]})}var dn=hn([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,0,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var mn=Sr(dn);var pn={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var vn={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255};var gn=["_xlnm.Consolidate_Area","_xlnm.Auto_Open","_xlnm.Auto_Close","_xlnm.Extract","_xlnm.Database","_xlnm.Criteria","_xlnm.Print_Area","_xlnm.Print_Titles","_xlnm.Recorder","_xlnm.Data_Form","_xlnm.Auto_Activate","_xlnm.Auto_Deactivate","_xlnm.Sheet_Title","_xlnm._FilterDatabase"];var bn={"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":"workbooks","application/vnd.ms-excel.sheet.macroEnabled.main+xml":"workbooks","application/vnd.ms-excel.sheet.binary.macroEnabled.main":"workbooks","application/vnd.ms-excel.addin.macroEnabled.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets", +"application/vnd.ms-excel.worksheet":"sheets","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"charts","application/vnd.ms-excel.chartsheet":"charts","application/vnd.ms-excel.macrosheet+xml":"macros","application/vnd.ms-excel.macrosheet":"macros","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"dialogs","application/vnd.ms-excel.dialogsheet":"dialogs","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.customXmlProperties+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.ms-excel.threadedcomments+xml":"threadedcomments","application/vnd.ms-excel.person+xml":"people","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"metadata","application/vnd.ms-excel.sheetMetadata":"metadata","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","application/vnd.ms-office.chartcolorstyle+xml":"TODO","application/vnd.ms-office.chartstyle+xml":"TODO","application/vnd.ms-office.chartex+xml":"TODO","application/vnd.ms-excel.calcChain":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings":"TODO","application/vnd.ms-office.activeX":"TODO","application/vnd.ms-office.activeX+xml":"TODO","application/vnd.ms-excel.attachedToolbars":"TODO","application/vnd.ms-excel.connections":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":"TODO","application/vnd.ms-excel.externalLink":"links","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"links","application/vnd.ms-excel.pivotCacheDefinition":"TODO","application/vnd.ms-excel.pivotCacheRecords":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml":"TODO","application/vnd.ms-excel.queryTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml":"TODO","application/vnd.ms-excel.userNames":"TODO","application/vnd.ms-excel.revisionHeaders":"TODO","application/vnd.ms-excel.revisionLog":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml":"TODO","application/vnd.ms-excel.tableSingleCells":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml":"TODO","application/vnd.ms-excel.slicer":"TODO","application/vnd.ms-excel.slicerCache":"TODO","application/vnd.ms-excel.slicer+xml":"TODO","application/vnd.ms-excel.slicerCache+xml":"TODO","application/vnd.ms-excel.wsSortMap":"TODO","application/vnd.ms-excel.table":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":"TODO","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.themeOverride+xml":"TODO","application/vnd.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"TODO","application/vnd.ms-office.volatileDependencies":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml":"TODO","application/vnd.ms-excel.controlproperties+xml":"TODO","application/vnd.openxmlformats-officedocument.model+data":"TODO","application/vnd.ms-excel.Survey+xml":"TODO","application/vnd.openxmlformats-officedocument.drawing+xml":"drawings","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml":"TODO","application/vnd.openxmlformats-officedocument.vmlDrawing":"TODO","application/vnd.openxmlformats-package.relationships+xml":"rels","application/vnd.openxmlformats-officedocument.oleObject":"TODO","image/png":"TODO",sheet:"js"};var wn={workbooks:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",xlsm:"application/vnd.ms-excel.sheet.macroEnabled.main+xml",xlsb:"application/vnd.ms-excel.sheet.binary.macroEnabled.main",xlam:"application/vnd.ms-excel.addin.macroEnabled.main+xml",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},comments:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",xlsb:"application/vnd.ms-excel.comments"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},charts:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml",xlsb:"application/vnd.ms-excel.chartsheet"},dialogs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml",xlsb:"application/vnd.ms-excel.dialogsheet"},macros:{xlsx:"application/vnd.ms-excel.macrosheet+xml",xlsb:"application/vnd.ms-excel.macrosheet"},metadata:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml",xlsb:"application/vnd.ms-excel.sheetMetadata"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};function kn(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function yn(e){var r=kn();if(!e||!e.match)return r;var t={};(e.match(Yr)||[]).forEach(function(e){var a=Zr(e);switch(a[0].replace(Jr,"<")){case"0?r.calcchains[0]:"";r.sst=r.strs.length>0?r.strs[0]:"";r.style=r.styles.length>0?r.styles[0]:"";r.defaults=t;delete r.calcchains;return r}function xn(e,r,t){var a=fr(bn);var n=[],s;if(!t){n[n.length]=Hr;n[n.length]=Ft("Types",null,{xmlns:Mt.CT,"xmlns:xsd":Mt.xsd,"xmlns:xsi":Mt.xsi});n=n.concat([["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["vml","application/vnd.openxmlformats-officedocument.vmlDrawing"],["data","application/vnd.openxmlformats-officedocument.model+data"],["bmp","image/bmp"],["png","image/png"],["gif","image/gif"],["emf","image/x-emf"],["wmf","image/x-wmf"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["tif","image/tiff"],["tiff","image/tiff"],["pdf","application/pdf"],["rels","application/vnd.openxmlformats-package.relationships+xml"]].map(function(e){return Ft("Default",null,{Extension:e[0],ContentType:e[1]})}))}var i=function(t){if(e[t]&&e[t].length>0){s=e[t][0];n[n.length]=Ft("Override",null,{PartName:(s[0]=="/"?"":"/")+s,ContentType:wn[t][r.bookType]||wn[t]["xlsx"]})}};var l=function(t){(e[t]||[]).forEach(function(e){n[n.length]=Ft("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:wn[t][r.bookType]||wn[t]["xlsx"]})})};var o=function(r){(e[r]||[]).forEach(function(e){n[n.length]=Ft("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:a[r][0]})})};i("workbooks");l("sheets");l("charts");o("themes");["strs","styles"].forEach(i);["coreprops","extprops","custprops"].forEach(o);o("vba");o("comments");o("threadedcomments");o("drawings");l("metadata");o("people");if(!t&&n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}var Sn={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument",HLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",VML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",XPATH:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath",XMISS:"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing",XLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink",CXML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml",CXMLP:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps",CMNT:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",SST:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",STY:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",THEME:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",CHART:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart",CHARTEX:"http://schemas.microsoft.com/office/2014/relationships/chartEx",CS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet",WS:["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet","http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"],DS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet",MS:"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet",IMG:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",DRAW:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",XLMETA:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata",TCMNT:"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment",PEOPLE:"http://schemas.microsoft.com/office/2017/10/relationships/person",CONN:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/connections",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function Cn(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function _n(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Yr)||[]).forEach(function(e){var n=Zr(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Fn(e,r,t,a,n,s){if(!n)n={};if(!e["!id"])e["!id"]={};if(!e["!idx"])e["!idx"]=1;if(r<0)for(r=e["!idx"];e["!id"]["rId"+r];++r){}e["!idx"]=r+1;n.Id="rId"+r;n.Type=a;n.Target=t;if(s)n.TargetMode=s;else if([Sn.HLINK,Sn.XPATH,Sn.XMISS].indexOf(n.Type)>-1)n.TargetMode="External";if(e["!id"][n.Id])throw new Error("Cannot rewrite rId "+r);e["!id"][n.Id]=n;e[("/"+n.Target).replace("//","/")]=n;return r}var En="application/vnd.oasis.opendocument.spreadsheet";function Tn(e,r){var t=Dt(e);var a;var n;while(a=Ot.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Zr(a[0],false);if(n.path=="/"&&n.type!==En)throw new Error("This OpenDocument is not a spreadsheet");break;case"encryption-data":;case"algorithm":;case"start-key-generation":;case"key-derivation":throw new Error("Unsupported ODS Encryption");default:if(r&&r.WTF)throw a;}}function Dn(e){var r=[Hr];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function On(e,r,t){return[' \n',' \n'," \n"].join("")}function Mn(e,r){return[' \n',' \n'," \n"].join("")}function Nn(e){var r=[Hr];r.push('\n');for(var t=0;t!=e.length;++t){r.push(On(e[t][0],e[t][1]));r.push(Mn("",e[t][0]))}r.push(On("","Document","pkg"));r.push("");return r.join("")}function Pn(){return'Sheet'+"JS "+e.version+""}var In=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];var Rn=function(){var e=new Array(In.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function Ln(e){var r={};e=vt(e);for(var t=0;t0)r[a[1]]=rt(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=yr(r[a[1]])}return r}function Bn(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=nt(r);a[a.length]=t?Ft(e,r,t):_t(e,r)}function zn(e,r){var t=r||{};var a=[Hr,Ft("cp:coreProperties",null,{"xmlns:cp":Mt.CORE_PROPS,"xmlns:dc":Mt.dc,"xmlns:dcterms":Mt.dcterms,"xmlns:dcmitype":Mt.dcmitype,"xmlns:xsi":Mt.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)Bn("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:Et(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)Bn("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:Et(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var s=0;s!=In.length;++s){var i=In[s];var l=t.Props&&t.Props[i[1]]!=null?t.Props[i[1]]:e?e[i[1]]:null;if(l===true)l="1";else if(l===false)l="0";else if(typeof l=="number")l=String(l);if(l!=null)Bn(i[0],l,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var $n=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]];var Wn=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function Un(e,r,t,a){var n=[];if(typeof e=="string")n=St(e,a);else for(var s=0;s0)for(var c=0;c!==n.length;c+=2){o=+n[c+1].v;switch(n[c].v){case"Worksheets":;case"工作表":;case"Листы":;case"أوراق العمل":;case"ワークシート":;case"גליונות עבודה":;case"Arbeitsblätter":;case"Çalışma Sayfaları":;case"Feuilles de calcul":;case"Fogli di lavoro":;case"Folhas de cálculo":;case"Planilhas":;case"Regneark":;case"Hojas de cálculo":;case"Werkbladen":t.Worksheets=o;t.SheetNames=i.slice(l,l+o);break;case"Named Ranges":;case"Rangos con nombre":;case"名前付き一覧":;case"Benannte Bereiche":;case"Navngivne områder":t.NamedRanges=o;t.DefinedNames=i.slice(l,l+o);break;case"Charts":;case"Diagramme":t.Chartsheets=o;t.ChartNames=i.slice(l,l+o);break;}l+=o}}function jn(e,r,t){var a={};if(!r)r={};e=vt(e);$n.forEach(function(t){var n=(e.match(bt(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=rt(n);break;case"bool":r[t[1]]=n==="true";break;case"raw":var s=e.match(new RegExp("<"+t[0]+"[^>]*>([\\s\\S]*?)"));if(s&&s.length>0)a[t[1]]=s[1];break;}});if(a.HeadingPairs&&a.TitlesOfParts)Un(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function Hn(e){var r=[],t=Ft;if(!e)e={};e.Application="SheetJS";r[r.length]=Hr;r[r.length]=Ft("Properties",null,{xmlns:Mt.EXT_PROPS,"xmlns:vt":Mt.vt});$n.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=nt(String(e[a[1]]));break;case"bool":n=e[a[1]]?"true":"false";break;}if(n!==undefined)r[r.length]=t(a[0],n)});r[r.length]=t("HeadingPairs",t("vt:vector",t("vt:variant","Worksheets")+t("vt:variant",t("vt:i4",String(e.Worksheets))),{size:2,baseType:"variant"}));r[r.length]=t("TitlesOfParts",t("vt:vector",e.SheetNames.map(function(e){return""+nt(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Vn=/<[^>]+>[^<]*/g;function Xn(e,r){var t={},a="";var n=e.match(Vn);if(n)for(var s=0;s!=n.length;++s){var i=n[s],l=Zr(i);switch(qr(l[0])){case"":a=null;break;default:if(i.indexOf("");var c=o[0].slice(4),f=o[1];switch(c){case"lpstr":;case"bstr":;case"lpwstr":t[a]=rt(f);break;case"bool":t[a]=ut(f);break;case"i1":;case"i2":;case"i4":;case"i8":;case"int":;case"uint":t[a]=parseInt(f,10);break;case"r4":;case"r8":;case"decimal":t[a]=parseFloat(f);break;case"filetime":;case"date":t[a]=yr(f);break;case"cy":;case"error":t[a]=rt(f);break;default:if(c.slice(-1)=="/")break;if(r.WTF&&typeof console!=="undefined")console.warn("Unexpected",i,c,o);}}else if(i.slice(0,2)==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Yn=[2,3,48,49,131,139,140,245];var Jn=function(){var e={1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127,8:865,9:437,10:850,11:437,13:437,14:850,15:437,16:850,17:437,18:850,19:932,20:850,21:437,22:850,23:865,24:437,25:437,26:850,27:437,28:863,29:850,31:852,34:852,35:852,36:860,37:850,38:866,55:850,64:852,77:936,78:949,79:950,80:874,87:1252,88:1252,89:1252,108:863,134:737,135:852,136:857,204:1257,255:16969};var n=or({1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127});function s(r,t){var n=[];var s=A(1);switch(t.type){case"base64":s=E(x(r));break;case"binary":s=E(r);break;case"buffer":;case"array":s=r;break;}ga(s,0);var i=s._R(1);var l=!!(i&136);var o=false,c=false;switch(i){case 2:break;case 3:break;case 48:o=true;l=true;break;case 49:o=true;l=true;break;case 131:break;case 139:break;case 140:c=true;break;case 245:break;default:throw new Error("DBF Unsupported Version: "+i.toString(16));}var f=0,u=521;if(i==2)f=s._R(2);s.l+=3;if(i!=2)f=s._R(4);if(f>1048576)f=1e6;if(i!=2)u=s._R(2);var h=s._R(2);var d=t.codepage||1252;if(i!=2){s.l+=16;s._R(1);if(s[s.l]!==0)d=e[s[s.l]];s.l+=1;s.l+=2}if(c)s.l+=36;var m=[],p={};var v=Math.min(s.length,i==2?521:u-10-(o?264:0));var g=c?32:11;while(s.l0){if(s[s.l]===42){s.l+=h;continue}++s.l;n[++b]=[];w=0;for(w=0;w!=m.length;++w){var k=s.slice(s.l,s.l+m[w].len);s.l+=m[w].len;ga(k,0);var y=typeof a!=="undefined"?a.utils.decode(d,k):D(k);switch(m[w].type){case"C":if(y.trim().length)n[b][w]=y.replace(/\s+$/,"");break;case"D":if(y.length===8)n[b][w]=new Date(+y.slice(0,4),+y.slice(4,6)-1,+y.slice(6,8));else n[b][w]=y;break;case"F":n[b][w]=parseFloat(y.trim());break;case"+":;case"I":n[b][w]=c?k._R(-4,"i")^2147483648:k._R(4,"i");break;case"L":switch(y.trim().toUpperCase()){case"Y":;case"T":n[b][w]=true;break;case"N":;case"F":n[b][w]=false;break;case"":;case"?":break;default:throw new Error("DBF Unrecognized L:|"+y+"|");}break;case"M":if(!l)throw new Error("DBF Unexpected MEMO for type "+i.toString(16));n[b][w]="##MEMO##"+(c?parseInt(y.trim(),10):k._R(4));break;case"N":y=y.replace(/\u0000/g,"").trim();if(y&&y!=".")n[b][w]=+y||0;break;case"@":n[b][w]=new Date(k._R(-8,"f")-621356832e5);break;case"T":n[b][w]=new Date((k._R(4)-2440588)*864e5+k._R(4));break;case"Y":n[b][w]=k._R(4,"i")/1e4+k._R(4,"i")/1e4*Math.pow(2,32);break;case"O":n[b][w]=-k._R(-8,"f");break;case"B":if(o&&m[w].len==8){n[b][w]=k._R(8,"f");break};case"G":;case"P":k.l+=m[w].len;break;case"0":if(m[w].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+m[w].type);}}}if(i!=2)if(s.l=0)o(+l.codepage);if(l.type=="string")throw new Error("Cannot write DBF to JS string");var u=ya();var h=nc(s,{header:1,raw:true,cellDates:true});var d=h[0],m=h.slice(1),p=s["!cols"]||[];var v=0,g=0,b=0,w=1;for(v=0;v250)A=250;_=((p[v]||{}).DBF||{}).type;if(_=="C"){if(p[v].DBF.len>A)A=p[v].DBF.len}if(C=="B"&&_=="N"){C="N";S[v]=p[v].DBF.dec;A=p[v].DBF.len}x[v]=C=="C"||_=="N"?A:c[C]||0;w+=x[v];y[v]=C}var E=u.next(32);E._W(4,318902576);E._W(4,m.length);E._W(2,296+32*b);E._W(2,w);for(v=0;v<4;++v)E._W(4,0);var T=+n[r]||3;E._W(4,0|T<<8);if(e[T]!=+l.codepage){if(l.codepage)console.error("DBF Unsupported codepage "+r+", using 1252");r=1252}for(v=0,g=0;vx[g])P=P.slice(0,x[g]);for(b=0;b":190,"?":191,"{":223};var r=new RegExp("N("+ir(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm");var t=function(r,t){var a=e[t];return typeof a=="number"?p(a):a};var n=function(e,r,t){var a=r.charCodeAt(0)-32<<4|t.charCodeAt(0)-48;return a==59?e:p(a)};e["|"]=254;function s(e,r){switch(r.type){case"base64":return i(x(e),r);case"binary":return i(e,r);case"buffer":return i(S&&Buffer.isBuffer(e)?e.toString("binary"):D(e),r);case"array":return i(xr(e),r);}throw new Error("Unrecognized type "+r.type)}function i(e,s){var i=e.split(/[\n\r]+/),l=-1,c=-1,f=0,u=0,h=[];var d=[];var m=null;var p={},v=[],g=[],b=[];var w=0,k;var y={Workbook:{WBProps:{},Names:[]}};if(+s.codepage>=0)o(+s.codepage);for(;f!==i.length;++f){w=0;var x=i[f].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,n).replace(r,t);var S=x.replace(/;;/g,"\0").split(";").map(function(e){return e.replace(/\u0000/g,";")});var C=S[0],_;if(x.length>0)switch(C){case"ID":break;case"E":break;case"B":break;case"O":for(u=1;u=1&&A<=4)y.Workbook.WBProps.date1904=true}break;}break;case"W":break;case"P":switch(S[1].charAt(0)){case"P":d.push(x.slice(3).replace(/;;/g,";"));break;}break;case"NN":{var F={Sheet:0};for(u=1;u-1&&h[M][N];if(!R||!R[1])throw new Error("SYLK shared formula cannot find base");P=Fi(R[1],{r:l-M,c:c-N})}if(P){if(!h[l][c])h[l][c]={t:"n",f:P};else h[l][c].f=P}break;case"F":var L=0;for(u=1;u0){v[l].hpt=w;v[l].hpx=Ms(w)}else if(w===0)v[l].hidden=true;break;default:if(s&&s.WTF)throw new Error("SYLK bad record "+x);}if(L<1)m=null;break;default:if(s&&s.WTF)throw new Error("SYLK bad record "+x);}}if(v.length>0)p["!rows"]=v;if(g.length>0)p["!cols"]=g; +g.forEach(function(e){Es(e)});if(s&&s.sheetRows)h=h.slice(0,s.sheetRows);return[h,p,y]}function l(e,r){var t=s(e,r);var a=t[0],n=t[1],i=t[2];var l=Sr(r);l.date1904=(((i||{}).Workbook||{}).WBProps||{}).date1904;var o=Ga(a,l);ir(n).forEach(function(e){o[e]=n[e]});var c=Va(o,r);ir(i).forEach(function(e){c[e]=i[e]});c.bookType="sylk";return c}function c(e,r,t,a){var n="C;Y"+(t+1)+";X"+(a+1)+";K";switch(e.t){case"n":n+=e.v||0;if(e.f&&!e.F)n+=";E"+Ai(e.f,{r:t,c:a});break;case"b":n+=e.v?"TRUE":"FALSE";break;case"e":n+=e.w||e.v;break;case"d":n+='"'+(e.w||e.v)+'"';break;case"s":n+='"'+(e.v==null?"":String(e.v)).replace(/"/g,"").replace(/;/g,";;")+'"';break;}return n}function f(e,r){r.forEach(function(r,t){var a="F;W"+(t+1)+" "+(t+1)+" ";if(r.hidden)a+="0";else{if(typeof r.width=="number"&&!r.wpx)r.wpx=Ss(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=Cs(r.wpx);if(typeof r.wch=="number")a+=Math.round(r.wch)}if(a.charAt(a.length-1)!=" ")e.push(a)})}function u(e,r){r.forEach(function(r,t){var a="F;";if(r.hidden)a+="M0;";else if(r.hpt)a+="M"+20*r.hpt+";";else if(r.hpx)a+="M"+20*Os(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function h(e,r,t){var a=["ID;PSheetJS;N;E"],n=[];var s=Ua(e["!ref"]),i;var l=e["!data"]!=null;var o="\r\n";var h=(((t||{}).Workbook||{}).WBProps||{}).date1904;a.push("P;PGeneral");a.push("F;P0;DG0G8;M255");if(e["!cols"])f(a,e["!cols"]);if(e["!rows"])u(a,e["!rows"]);a.push("B;Y"+(s.e.r-s.s.r+1)+";X"+(s.e.c-s.s.c+1)+";D"+[s.s.c,s.s.r,s.e.c,s.e.r].join(" "));a.push("O;L;D;B"+(h?";V4":"")+";K47;G100 0.001");for(var d=s.s.r;d<=s.e.r;++d){if(l&&!e["!data"][d])continue;var m=[];for(var p=s.s.c;p<=s.e.c;++p){i=l?e["!data"][d][p]:e[Ma(p)+Ea(d)];if(!i||i.v==null&&(!i.f||i.F))continue;m.push(c(i,e,d,p,r))}n.push(m.join(o))}return a.join(o)+o+n.join(o)+o+"E"+o}return{to_workbook:l,from_sheet:h}}();var Zn=function(){function e(e,t){switch(t.type){case"base64":return r(x(e),t);case"binary":return r(e,t);case"buffer":return r(S&&Buffer.isBuffer(e)?e.toString("binary"):D(e),t);case"array":return r(xr(e),t);}throw new Error("Unrecognized type "+t.type)}function r(e,r){var t=e.split("\n"),a=-1,n=-1,s=0,i=[];for(;s!==t.length;++s){if(t[s].trim()==="BOT"){i[++a]=[];n=0;continue}if(a<0)continue;var l=t[s].trim().split(",");var o=l[0],c=l[1];++s;var f=t[s]||"";while((f.match(/["]/g)||[]).length&1&&s=0&&s[i].length===0)--i;var l=10,o=0;var c=0;for(;c<=i;++c){o=s[c].indexOf(" ");if(o==-1)o=s[c].length;else o++;l=Math.max(l,o)}for(c=0;c<=i;++c){n[c]=[];var f=0;e(s[c].slice(0,l).trim(),n,c,f,a);for(f=1;f<=(s[c].length-l)/10+1;++f)e(s[c].slice(l+(f-1)*10,l+f*10).trim(),n,c,f,a)}if(a.sheetRows)n=n.slice(0,a.sheetRows);return n}var t={44:",",9:"\t",59:";",124:"|"};var n={44:3,9:2,59:1,124:0};function s(e){var r={},a=false,s=0,i=0;for(;s0)b();n["!ref"]=za(i);return n}function l(e,t){if(!(t&&t.PRN))return i(e,t);if(t.FS)return i(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 Ga(r(e,t),t)}function o(e,r){var t="",n=r.type=="string"?[0,0,0,0]:Mo(e,r);switch(r.type){case"base64":t=x(e);break;case"binary":t=e;break;case"buffer":if(r.codepage==65001)t=e.toString("utf8");else if(r.codepage&&typeof a!=="undefined")t=a.utils.decode(r.codepage,e);else t=S&&Buffer.isBuffer(e)?e.toString("binary"):D(e);break;case"array":t=xr(e);break;case"string":t=e;break;default:throw new Error("Unrecognized type "+r.type);}if(n[0]==239&&n[1]==187&&n[2]==191)t=vt(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=vt(t);else if(r.type=="binary"&&typeof a!=="undefined"&&r.codepage)t=a.utils.decode(r.codepage,a.utils.encode(28591,t));if(t.slice(0,19)=="socialcalc:version:")return qn.to_sheet(r.type=="string"?t:vt(t),r);return l(t,r)}function c(e,r){return Va(o(e,r),r)}function f(e){var r=[];var t=Ua(e["!ref"]),a;var n=e["!data"]!=null;for(var s=t.s.r;s<=t.e.r;++s){var i=[];for(var l=t.s.c;l<=t.e.c;++l){var o=La({r:s,c:l});a=n?(e["!data"][s]||[])[l]:e[o];if(!a||a.v==null){i.push(" ");continue}var c=(a.w||(Ha(a),a.w)||"").slice(0,10);while(c.length<10)c+=" ";i.push(c+(l===0?" ":""))}r.push(i.join(""))}return r.join("\n")}return{to_workbook:c,to_sheet:o,from_sheet:f}}();function es(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=Kn.to_workbook(e,t);t.WTF=a;return n}catch(s){t.WTF=a;if(!s.message.match(/SYLK bad record ID/)&&a)throw s;return Qn.to_workbook(e,r)}}function rs(e){var r={},t=e.match(Yr),a=0;var n=false;if(t)for(;a!=t.length;++a){var i=Zr(t[a]);switch(i[0].replace(/\w*:/g,"")){case"":;case"":r.shadow=1;break;case"":break;case"":;case"":r.outline=1;break;case"":break;case"":;case"":r.strike=1;break;case"":break;case"":;case"":r.u=1;break;case"":break;case"":;case"":r.b=1;break;case"":break;case"":;case"":r.i=1;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"
":break;case"":n=false;break;default:if(i[0].charCodeAt(1)!==47&&!n)throw new Error("Unrecognized rich format "+i[0]);}}return r}var ts=function(){var e=bt("t"),r=bt("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:rt(a[1])};var s=t.match(r);if(s)n.s=rs(s[1]);return n}var a=/<(?:\w+:)?r>/g,n=/<\/(?:\w+:)?r>/;return function s(e){return e.replace(a,"").split(n).map(t).filter(function(e){return e.v})}}();var as=function $c(){var e=/(\r\n|\n)/g;function r(e,r,t){var a=[];if(e.u)a.push("text-decoration: underline;");if(e.uval)a.push("text-underline-style:"+e.uval+";");if(e.sz)a.push("font-size:"+e.sz+"pt;");if(e.outline)a.push("text-effect: outline;");if(e.shadow)a.push("text-shadow: auto;");r.push('');if(e.b){r.push("");t.push("")}if(e.i){r.push("");t.push("")}if(e.strike){r.push("");t.push("")}var n=e.valign||"";if(n=="superscript"||n=="super")n="sup";else if(n=="subscript")n="sub";if(n!=""){r.push("<"+n+">");t.push("")}t.push("");return e}function t(t){var a=[[],t.v,[]];if(!t.v)return"";if(t.s)r(t.s,a[0],a[2]);return a[0].join("")+a[1].replace(e,"
")+a[2].join("")}return function a(e){return e.map(t).join("")}}();var ns=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,ss=/<(?:\w+:)?r>/;var is=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function ls(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=rt(vt(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""),true);a.r=vt(e);if(t)a.h=lt(a.t)}else if(e.match(ss)){a.r=vt(e);a.t=rt(vt((e.replace(is,"").match(ns)||[]).join("").replace(Yr,"")),true);if(t)a.h=as(ts(a.r))}return a}var os=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var cs=/<(?:\w+:)?(?:si|sstItem)>/g;var fs=/<\/(?:\w+:)?(?:si|sstItem)>/;function us(e,r){var t=[],a="";if(!e)return t;var n=e.match(os);if(n){a=n[2].replace(cs,"").split(fs);for(var s=0;s!=a.length;++s){var i=ls(a[s].trim(),r);if(i!=null)t[t.length]=i}n=Zr(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var hs=/^\s|\s$|[\t\n\r]/;function ds(e,r){if(!r.bookSST)return"";var t=[Hr];t[t.length]=Ft("sst",null,{xmlns:Nt[0],count:e.Count,uniqueCount:e.Unique});for(var a=0;a!=e.length;++a){if(e[a]==null)continue;var n=e[a];var s="";if(n.r)s+=n.r;else{s+=""}s+="";t[t.length]=s}if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}function ms(e){var r=e.slice(e[0]==="#"?1:0).slice(0,6);return[parseInt(r.slice(0,2),16),parseInt(r.slice(2,4),16),parseInt(r.slice(4,6),16)]}function ps(e){for(var r=0,t=1;r!=3;++r)t=t*256+(e[r]>255?255:e[r]<0?0:e[r]);return t.toString(16).toUpperCase().slice(1)}function vs(e){var r=e[0]/255,t=e[1]/255,a=e[2]/255;var n=Math.max(r,t,a),s=Math.min(r,t,a),i=n-s;if(i===0)return[0,0,r];var l=0,o=0,c=n+s;o=i/(c>1?2-c:c);switch(n){case r:l=((t-a)/i+6)%6;break;case t:l=(a-r)/i+2;break;case a:l=(r-t)/i+4;break;}return[l/6,o,c/2]}function gs(e){var r=e[0],t=e[1],a=e[2];var n=t*2*(a<.5?a:1-a),s=a-n/2;var i=[s,s,s],l=6*r;var o;if(t!==0)switch(l|0){case 0:;case 6:o=n*l;i[0]+=n;i[1]+=o;break;case 1:o=n*(2-l);i[0]+=o;i[1]+=n;break;case 2:o=n*(l-2);i[1]+=n;i[2]+=o;break;case 3:o=n*(4-l);i[1]+=o;i[2]+=n;break;case 4:o=n*(l-4);i[2]+=n;i[0]+=o;break;case 5:o=n*(6-l);i[2]+=o;i[0]+=n;break;}for(var c=0;c!=3;++c)i[c]=Math.round(i[c]*255);return i}function bs(e,r){if(r===0)return e;var t=vs(ms(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return ps(gs(t))}var ws=6,ks=15,ys=1,xs=ws;function Ss(e){return Math.floor((e+Math.round(128/xs)/256)*xs)}function Cs(e){return Math.floor((e-5)/xs*100+.5)/100}function _s(e){return Math.round((e*xs+5)/xs*256)/256}function As(e){return _s(Cs(Ss(e)))}function Fs(e){var r=Math.abs(e-As(e)),t=xs;if(r>.005)for(xs=ys;xs":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=ut(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=ut(t.diagonalDown);r.Borders.push(n);break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":break;case"":s=false;break;default:if(a&&a.WTF){if(!s)throw new Error("unrecognized "+t[0]+" in borders")};}})}function Is(e,r,t,a){r.Fills=[];var n={};var s=false;(e[0].match(Yr)||[]).forEach(function(e){var t=Zr(e);switch(qr(t[0])){case"":;case"":break;case"":;case"":n={};r.Fills.push(n);break;case"":break;case"":break;case"":r.Fills.push(n);n={};break;case"":if(t.patternType)n.patternType=t.patternType;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":break;case"":break;case"":;case"":break;case"":s=false;break;default:if(a&&a.WTF){if(!s)throw new Error("unrecognized "+t[0]+" in fills")};}})}function Rs(e,r,t,a){r.Fonts=[];var n={};var i=false;(e[0].match(Yr)||[]).forEach(function(e){var l=Zr(e);switch(qr(l[0])){case"":;case"":break;case"":break;case"
":;case"":r.Fonts.push(n);n={};break;case"":;case"":break;case"":n.bold=1;break;case"":n.italic=1;break;case"":n.underline=1;break;case"":n.strike=1;break;case"":n.outline=1;break;case"":n.shadow=1;break;case"":n.condense=1;break;case"":n.extend=1;break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":;case"":break;case"":i=false;break;case"":;case"":break;case"":i=false;break;default:if(a&&a.WTF){if(!i)throw new Error("unrecognized "+l[0]+" in fonts")};}})}function Ls(e,r,t){r.NumberFmt=[];var a=ir(K);for(var n=0;n":;case"":;case"":break;case"0){if(o>392){for(o=392;o>60;--o)if(r.NumberFmt[o]==null)break;r.NumberFmt[o]=l}qe(l,o)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+i[0]+" in numFmts");}}}function Bs(e){var r=[""];[[5,8],[23,26],[41,44],[50,392]].forEach(function(t){for(var a=t[0];a<=t[1];++a)if(e[a]!=null)r[r.length]=Ft("numFmt",null,{numFmtId:a,formatCode:nt(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=Ft("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var zs=["numFmtId","fillId","fontId","borderId","xfId"];var $s=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function Ws(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Yr)||[]).forEach(function(e){var s=Zr(e),i=0;switch(qr(s[0])){case"":;case"":;case"":break;case"":a=s;delete a[0];for(i=0;i392){for(i=392;i>60;--i)if(r.NumberFmt[a.numFmtId]==r.NumberFmt[i]){a.numFmtId=i;break}}r.CellXf.push(a);break;case"":break;case"":var l={};if(s.vertical)l.vertical=s.vertical;if(s.horizontal)l.horizontal=s.horizontal;if(s.textRotation!=null)l.textRotation=s.textRotation;if(s.indent)l.indent=s.indent;if(s.wrapText)l.wrapText=ut(s.wrapText);a.alignment=l;break;case"":break;case"":;case"":break;case"":n=false;break;case"":;case"":break;case"":n=false;break;default:if(t&&t.WTF){if(!n)throw new Error("unrecognized "+s[0]+" in cellXfs")};}})}function Us(e){var r=[];r[r.length]=Ft("cellXfs",null);e.forEach(function(e){r[r.length]=Ft("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=Ft("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var js=function Wc(){var e=/<(?:\w+:)?numFmts([^>]*)>[\S\s]*?<\/(?:\w+:)?numFmts>/;var r=/<(?:\w+:)?cellXfs([^>]*)>[\S\s]*?<\/(?:\w+:)?cellXfs>/;var t=/<(?:\w+:)?fills([^>]*)>[\S\s]*?<\/(?:\w+:)?fills>/;var a=/<(?:\w+:)?fonts([^>]*)>[\S\s]*?<\/(?:\w+:)?fonts>/;var n=/<(?:\w+:)?borders([^>]*)>[\S\s]*?<\/(?:\w+:)?borders>/;return function s(i,l,o){var c={};if(!i)return c;i=i.replace(//gm,"").replace(//gm,"");var f;if(f=i.match(e))Ls(f,c,o);if(f=i.match(a))Rs(f,c,l,o);if(f=i.match(t))Is(f,c,l,o);if(f=i.match(n))Ps(f,c,l,o);if(f=i.match(r))Ws(f,c,o);return c}}();function Hs(e,r){var t=[Hr,Ft("styleSheet",null,{xmlns:Nt[0],"xmlns:vt":Mt.vt})],a;if(e.SSF&&(a=Bs(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=Us(r.cellXfs))t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';if(t.length>2){t[t.length]="";t[1]=t[1].replace("/>",">")}return t.join("")}var Vs=["","","","","","","","","","","",""];function Xs(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Yr)||[]).forEach(function(e){var n=Zr(e);switch(n[0]){case"":break;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":;case"":if(n[0].charAt(1)==="/"){r.themeElements.clrScheme[Vs.indexOf(n[0])]=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 Gs(){}function Ys(){}var Js=/]*)>[\s\S]*<\/a:clrScheme>/;var Ks=/]*)>[\s\S]*<\/a:fontScheme>/;var Zs=/]*)>[\s\S]*<\/a:fmtScheme>/;function qs(e,r,t){r.themeElements={};var a;[["clrScheme",Js,Xs],["fontScheme",Ks,Gs],["fmtScheme",Zs,Ys]].forEach(function(n){if(!(a=e.match(n[1])))throw new Error(n[0]+" not found in themeElements");n[2](a,r,t)})}var Qs=/]*)>[\s\S]*<\/a:themeElements>/;function ei(e,r){if(!e||e.length===0)e=ri();var t;var a={};if(!(t=e.match(Qs)))throw new Error("themeElements not found in theme");qs(t[0],a,r);a.raw=e;return a}function ri(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Hr];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]=''; +t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";return t.join("")}function ti(e,r,t){var a={Types:[],Cell:[],Value:[]};if(!e)return a;var n=false;var s=2;var i;e.replace(Yr,function(e){var r=Zr(e);switch(qr(r[0])){case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":break;case"":s=2;break;case"":s=2;break;case"":;case"":;case"":break;case"":n=false;break;case"\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n');return e.join("")}function ni(){}function si(e,r,t,a){if(!e)return e;var n=a||{};var s=false,i=false;ka(e,function l(e,r,t){if(i)return;switch(t){case 359:;case 363:;case 364:;case 366:;case 367:;case 368:;case 369:;case 370:;case 371:;case 472:;case 577:;case 578:;case 579:;case 580:;case 581:;case 582:;case 583:;case 584:;case 585:;case 586:;case 587:break;case 35:s=true;break;case 36:s=false;break;default:if(r.T){}else if(!s||n.WTF)throw new Error("Unexpected record 0x"+t.toString(16));}},n)}function ii(e,r){if(!e)return"??";var t=(e.match(/]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}function li(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[Ft("xml",null,{"xmlns:v":Pt.v,"xmlns:o":Pt.o,"xmlns:x":Pt.x,"xmlns:mv":Pt.mv}).replace(/\/>/,">"),Ft("o:shapelayout",Ft("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"})];var s=65536*e;var i=r||[];if(i.length>0)n.push(Ft("v:shapetype",[Ft("v:stroke",null,{joinstyle:"miter"}),Ft("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202",coordsize:t.join(","),"o:spt":202,path:a}));i.forEach(function(e){++s;n.push(oi(e,s))});n.push("");return n.join("")}function oi(e,r){var t=Ra(e[0]);var a={color2:"#BEFF82",type:"gradient"};if(a.type=="gradient")a.angle="-180";var n=a.type=="gradient"?Ft("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null;var s=Ft("v:fill",n,a);var i={on:"t",obscured:"t"};return["",s,Ft("v:shadow",null,i),Ft("v:path",null,{"o:connecttype":"none"}),'
','',"","",_t("x:Anchor",[t.c+1,0,t.r+1,0,t.c+3,20,t.r+5,20].join(",")),_t("x:AutoFill","False"),_t("x:Row",String(t.r)),_t("x:Column",String(t.c)),e[1].hidden?"":"","",""].join("")}function ci(e,r,t,a){var n=e["!data"]!=null;var s;r.forEach(function(r){var i=Ra(r.ref);if(n){if(!e["!data"][i.r])e["!data"][i.r]=[];s=e["!data"][i.r][i.c]}else s=e[r.ref];if(!s){s={t:"z"};if(n)e["!data"][i.r][i.c]=s;else e[r.ref]=s;var l=Ua(e["!ref"]||"BDWGO1000001:A1");if(l.s.r>i.r)l.s.r=i.r;if(l.e.ri.c)l.s.c=i.c;if(l.e.c=0;--f){if(!t&&s.c[f].T)return;if(t&&!s.c[f].T)s.c.splice(f,1)}if(t&&a)for(f=0;f/))return[];var t=[];var a=[];var n=e.match(/<(?:\w+:)?authors>([\s\S]*)<\/(?:\w+:)?authors>/);if(n&&n[1])n[1].split(/<\/\w*:?author>/).forEach(function(e){if(e===""||e.trim()==="")return;var r=e.match(/<(?:\w+:)?author[^>]*>(.*)/);if(r)t.push(r[1])});var s=e.match(/<(?:\w+:)?commentList>([\s\S]*)<\/(?:\w+:)?commentList>/);if(s&&s[1])s[1].split(/<\/\w*:?comment>/).forEach(function(e){if(e===""||e.trim()==="")return;var n=e.match(/<(?:\w+:)?comment[^>]*>/);if(!n)return;var s=Zr(n[0]);var i={author:s.authorId&&t[s.authorId]||"sheetjsghost",ref:s.ref,guid:s.guid};var l=Ra(s.ref);if(r.sheetRows&&r.sheetRows<=l.r)return;var o=e.match(/<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/);var c=!!o&&!!o[1]&&ls(o[1])||{r:"",t:"",h:""};i.r=c.r;if(c.r=="")c.t=c.h="";i.t=(c.t||"").replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(r.cellHTML)i.h=c.h;a.push(i)});return a}function ui(e){var r=[Hr,Ft("comments",null,{xmlns:Nt[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=nt(e.a);if(t.indexOf(a)==-1){t.push(a);r.push(""+a+"")}if(e.T&&e.ID&&t.indexOf("tc="+e.ID)==-1){t.push("tc="+e.ID);r.push(""+"tc="+e.ID+"")}})});if(t.length==0){t.push("SheetJ5");r.push("SheetJ5")}r.push("");r.push("");e.forEach(function(e){var a=0,n=[],s=0;if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);e[1].forEach(function(e){if(e.a)a=t.indexOf(nt(e.a));if(e.T)++s;n.push(e.t==null?"":nt(e.t))});if(s===0){e[1].forEach(function(a){r.push('');r.push(_t("t",a.t==null?"":nt(a.t)));r.push("")})}else{r.push('');var i="Comment:\n "+n[0]+"\n";for(var l=1;l")}});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function hi(e,r){var t=[];var a=false,n={},s=0;e.replace(Yr,function i(l,o){var c=Zr(l);switch(qr(c[0])){case"":break;case"":if(n.t!=null)t.push(n);break;case"":;case"":n.t=e.slice(s,o).replace(/\r\n/g,"\n").replace(/\r/g,"\n");break;case"":a=true;break;case"":a=false;break;case"":;case"
":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+c[0]+" in threaded comments");}return l});return t}function di(e,r,t){var a=[Hr,Ft("ThreadedComments",null,{xmlns:Mt.TCMNT}).replace(/[\/]>/,">")];e.forEach(function(e){var n="";(e[1]||[]).forEach(function(s,i){if(!s.T){delete s.ID;return}if(s.a&&r.indexOf(s.a)==-1)r.push(s.a);var l={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+t.tcid++).slice(-12)+"}"};if(i==0)n=l.id;else l.parentId=n;s.ID=l.id;if(s.a)l.personId="{54EE7950-7262-4200-6969-"+("000000000000"+r.indexOf(s.a)).slice(-12)+"}";a.push(Ft("threadedComment",_t("text",s.t||""),l))})});a.push("");return a.join("")}function mi(e,r){var t=[];var a=false;e.replace(Yr,function n(e){var n=Zr(e);switch(qr(n[0])){case"":break;case"":break;case"":;case"":;case"":break;case"":a=false;break;default:if(!a&&r.WTF)throw new Error("unrecognized "+n[0]+" in threaded comments");}return e});return t}function pi(e){var r=[Hr,Ft("personList",null,{xmlns:Mt.TCMNT,"xmlns:x":Nt[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(Ft("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}var vi="application/vnd.ms-office.vbaProject";function gi(e){var r=er.utils.cfb_new({root:"R"});e.FullPaths.forEach(function(t,a){if(t.slice(-1)==="/"||!t.match(/_VBA_PROJECT_CUR/))return;var n=t.replace(/^[^\/]*/,"R").replace(/\/_VBA_PROJECT_CUR\u0000*/,"");er.utils.cfb_add(r,n,e.FileIndex[a].content)});return er.write(r)}function bi(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")er.utils.cfb_add(e,n,r.FileIndex[a].content)})}var wi=["xlsb","xlsm","xlam","biff8","xla"];function ki(){return{"!type":"dialog"}}function yi(){return{"!type":"dialog"}}function xi(){return{"!type":"macro"}}function Si(){return{"!type":"macro"}}var Ci=function(){var e=/(^|[^A-Za-z_])R(\[?-?\d+\]|[1-9]\d*|)C(\[?-?\d+\]|[1-9]\d*|)(?![A-Za-z0-9_])/g;var r={r:0,c:0};function t(e,t,a,n){var s=false,i=false;if(a.length==0)i=true;else if(a.charAt(0)=="["){i=true;a=a.slice(1,-1)}if(n.length==0)s=true;else if(n.charAt(0)=="["){s=true;n=n.slice(1,-1)}var l=a.length>0?parseInt(a,10)|0:0,o=n.length>0?parseInt(n,10)|0:0;if(s)o+=r.c;else--o;if(i)l+=r.r;else--l;return t+(s?"":"$")+Ma(o)+(i?"":"$")+Ea(l)}return function a(n,s){r=s;return n.replace(e,t)}}();var _i=/(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})(?![_.\(A-Za-z0-9])/g;var Ai=function(){return function e(r,t){return r.replace(_i,function(e,r,a,n,s,i){var l=Oa(n)-(a?0:t.c);var o=Fa(i)-(s?0:t.r);var c=s=="$"?o+1:o==0?"":"["+o+"]";var f=a=="$"?l+1:l==0?"":"["+l+"]";return r+"R"+c+"C"+f})}}();function Fi(e,r){return e.replace(_i,function(e,t,a,n,s,i){return t+(a=="$"?a+n:Ma(Oa(n)+r.c))+(s=="$"?s+i:Ea(Fa(i)+r.r))})}function Ei(e,r,t){var a=Ba(r),n=a.s,s=Ra(t);var i={r:s.r-n.r,c:s.c-n.c};return Fi(e,i)}function Ti(e){if(e.length==1)return false;return true}function Di(e){return e.replace(/_xlfn\./g,"")}function Oi(e){if(e.slice(0,3)=="of:")e=e.slice(3);if(e.charCodeAt(0)==61){e=e.slice(1);if(e.charCodeAt(0)==61)e=e.slice(1)}e=e.replace(/COM\.MICROSOFT\./g,"");e=e.replace(/\[((?:\.[A-Z]+[0-9]+)(?::\.[A-Z]+[0-9]+)?)\]/g,function(e,r){return r.replace(/\./g,"")});e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});e=e.replace(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function Mi(e){var r="of:="+e.replace(_i,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function Ni(e){e=e.replace(/\$'([^']|'')+'/g,function(e){return e.slice(1)});e=e.replace(/\$([^\]\. #$]+)/g,function(e,r){return r.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?e:r});var r=e.split(":");var t=r[0].split(".")[0];return[t,r[0].split(".")[1]+(r.length>1?":"+(r[1].split(".")[1]||r[1].split(".")[0]):"")]}function Pi(e){return e.replace(/!/,".")}var Ii={};var Ri={};var Li=typeof Map!=="undefined";function Bi(e,r,t){var a=0,n=e.length;if(t){if(Li?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var s=Li?t.get(r):t[r];for(;a-1){t.width=_s(a);t.customWidth=1}else if(r.width!=null)t.width=r.width;if(r.hidden)t.hidden=true;if(r.level!=null){t.outlineLevel=t.level=r.level}return t}function $i(e,r){if(!e)return;var t=[.7,.7,.75,.75,.3,.3];if(r=="xlml")t=[1,1,1,1,.5,.5];if(e.left==null)e.left=t[0];if(e.right==null)e.right=t[1];if(e.top==null)e.top=t[2];if(e.bottom==null)e.bottom=t[3];if(e.header==null)e.header=t[4];if(e.footer==null)e.footer=t[5]}function Wi(e,r,t){var a=t.revssf[r.z!=null?r.z:"General"];var n=60,s=e.length;if(a==null&&t.ssf){for(;n<392;++n)if(t.ssf[n]==null){qe(r.z,n);t.ssf[n]=r.z;t.revssf[r.z]=a=n;break}}for(n=0;n!=s;++n)if(e[n].numFmtId===a)return n;e[s]={numFmtId:a,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1};return s}function Ui(e,r,t,a,n,s){try{if(a.cellNF)e.z=K[r]}catch(i){if(a.WTF)throw i}if(e.t==="z"&&!a.cellStyles)return;if(e.t==="d"&&typeof e.v==="string")e.v=yr(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(K[r]==null)qe(Ge[r]||"General",r);if(e.t==="e")e.w=e.w||pn[e.v];else if(r===0){if(e.t==="n"){if((e.v|0)===e.v)e.w=e.v.toString(10);else e.w=ce(e.v)}else if(e.t==="d"){var l=hr(e.v);if((l|0)===l)e.w=l.toString(10);else e.w=ce(l)}else if(e.v===undefined)return"";else e.w=fe(e.v,Ri)}else if(e.t==="d")e.w=Ue(r,hr(e.v),Ri);else e.w=Ue(r,e.v,Ri)}catch(i){if(a.WTF)throw i}if(!a.cellStyles)return;if(t!=null)try{e.s=s.Fills[t];if(e.s.fgColor&&e.s.fgColor.theme&&!e.s.fgColor.rgb){e.s.fgColor.rgb=bs(n.themeElements.clrScheme[e.s.fgColor.theme].rgb,e.s.fgColor.tint||0);if(a.WTF)e.s.fgColor.raw_rgb=n.themeElements.clrScheme[e.s.fgColor.theme].rgb}if(e.s.bgColor&&e.s.bgColor.theme){e.s.bgColor.rgb=bs(n.themeElements.clrScheme[e.s.bgColor.theme].rgb,e.s.bgColor.tint||0);if(a.WTF)e.s.bgColor.raw_rgb=n.themeElements.clrScheme[e.s.bgColor.theme].rgb}}catch(i){if(a.WTF&&s.Fills)throw i}}function ji(e,r,t){if(e&&e["!ref"]){var a=Ua(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=za(t)}var Vi=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var Xi=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var Gi=/<(?:\w:)?hyperlink [^>]*>/gm;var Yi=/"(\w*:\w*)"/;var Ji=/<(?:\w:)?col\b[^>]*[\/]?>/g;var Ki=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var Zi=/<(?:\w:)?pageMargins[^>]*\/>/g;var qi=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var Qi=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var el=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function rl(e,r,t,a,n,s,i){if(!e)return e;if(!a)a={"!id":{}};if(g!=null&&r.dense==null)r.dense=g;var l={};if(r.dense)l["!data"]=[];var o={s:{r:2e6,c:2e6},e:{r:0,c:0}};var c="",f="";var u=e.match(Xi);if(u){c=e.slice(0,u.index);f=e.slice(u.index+u[0].length)}else c=f=e;var h=c.match(qi);if(h)al(h[0],l,n,t);else if(h=c.match(Qi))nl(h[0],h[1]||"",l,n,t,i,s);var d=(c.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(d>0){var m=c.slice(d,d+50).match(Yi);if(m)Hi(l,m[1])}var p=c.match(el);if(p&&p[1])gl(p[1],n);var v=[];if(r.cellStyles){var b=c.match(Ji);if(b)hl(v,b)}if(u)kl(u[1],l,r,o,s,i);var w=f.match(Ki);if(w)l["!autofilter"]=ml(w[0]);var k=[];var y=f.match(Vi);if(y)for(d=0;d!=y.length;++d)k[d]=Ua(y[d].slice(y[d].indexOf('"')+1));var x=f.match(Gi);if(x)cl(l,x,a);var S=f.match(Zi);if(S)l["!margins"]=fl(Zr(S[0]));if(!l["!ref"]&&o.e.c>=o.s.c&&o.e.r>=o.s.r)l["!ref"]=za(o);if(r.sheetRows>0&&l["!ref"]){var C=Ua(l["!ref"]);if(r.sheetRows<=+C.e.r){C.e.r=r.sheetRows-1;if(C.e.r>o.e.r)C.e.r=o.e.r;if(C.e.ro.e.c)C.e.c=o.e.c;if(C.e.c0)l["!cols"]=v;if(k.length>0)l["!merges"]=k;return l}function tl(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function al(e,r,t,a){var n=Zr(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=rt(vt(n.codeName))}function nl(e,r,t,a,n){al(e.slice(0,e.indexOf(">")),t,a,n)}function sl(e,r,t,a,n){var s=false;var i={},l=null;if(a.bookType!=="xlsx"&&r.vbaraw){var o=r.SheetNames[t];try{if(r.Workbook)o=r.Workbook.Sheets[t].CodeName||o}catch(c){}s=true;i.codeName=gt(nt(o))}if(e&&e["!outline"]){var f={summaryBelow:1,summaryRight:1};if(e["!outline"].above)f.summaryBelow=0;if(e["!outline"].left)f.summaryRight=0;l=(l||"")+Ft("outlinePr",null,f)}if(!s&&!l)return;n[n.length]=Ft("sheetPr",l,i)}var il=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var ll=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function ol(e){var r={sheet:1};il.forEach(function(t){if(e[t]!=null&&e[t])r[t]="1"});ll.forEach(function(t){if(e[t]!=null&&!e[t])r[t]="0"});if(e.password)r.password=crypto_CreatePasswordVerifier_Method1(e.password).toString(16).toUpperCase();return Ft("sheetProtection",null,r)}function cl(e,r,t){var a=e["!data"]!=null;for(var n=0;n!=r.length;++n){var s=Zr(vt(r[n]),true);if(!s.ref)return;var i=((t||{})["!id"]||[])[s.id];if(i){s.Target=i.Target;if(s.location)s.Target+="#"+rt(s.location)}else{s.Target="#"+rt(s.location);i={Target:s.Target,TargetMode:"Internal"}}s.Rel=i;if(s.tooltip){s.Tooltip=s.tooltip;delete s.tooltip}var l=Ua(s.ref);for(var o=l.s.r;o<=l.e.r;++o)for(var c=l.s.c;c<=l.e.c;++c){var f=Ma(c)+Ea(o);if(a){if(!e["!data"][o])e["!data"][o]=[];if(!e["!data"][o][c])e["!data"][o][c]={t:"z",v:undefined};e["!data"][o][c].l=s}else{if(!e[f])e[f]={t:"z",v:undefined};e[f].l=s}}}}function fl(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function ul(e){$i(e);return Ft("pageMargins",null,e)}function hl(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Zr(r[a],true);if(n.hidden)n.hidden=ut(n.hidden);var s=parseInt(n.min,10)-1,i=parseInt(n.max,10)-1;if(n.outlineLevel)n.level=+n.outlineLevel||0;delete n.min;delete n.max;n.width=+n.width;if(!t&&n.width){t=true;Fs(n.width)}Es(n);while(s<=i)e[s++]=Sr(n)}}function dl(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=Ft("col",null,zi(n,a))}t[t.length]="";return t.join("")}function ml(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function pl(e,r,t,a){var n=typeof e.ref=="string"?e.ref:za(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var s=t.Workbook.Names;var i=Ba(n);if(i.s.r==i.e.r){i.e.r=Ba(r["!ref"]).e.r;n=za(i)}for(var l=0;la-z][^>]*)?\/?>/g;function gl(e,r){if(!r.Views)r.Views=[{}];(e.match(vl)||[]).forEach(function(e,t){var a=Zr(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(a.rightToLeft&&ut(a.rightToLeft))r.Views[t].RTL=true})}function bl(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return Ft("sheetViews",Ft("sheetView",null,n),{})}function wl(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if((e.v===undefined||e.t==="z"&&!(a||{}).sheetStubs)&&typeof e.f!=="string"&&typeof e.z=="undefined")return"";var n="";var s=e.t,i=e.v;if(e.t!=="z")switch(e.t){case"b":n=e.v?"1":"0";break;case"n":n=""+e.v;break;case"e":n=pn[e.v];break;case"d":if(a&&a.cellDates)n=yr(e.v,-1).toISOString();else{e=Sr(e);e.t="n";n=""+(e.v=hr(yr(e.v)))}if(typeof e.z==="undefined")e.z=K[14];break;default:n=e.v;break;}var l=e.t=="z"||e.v==null?"":_t("v",nt(n)),o={r:r};var c=Wi(a.cellXfs,e,a);if(c!==0)o.s=c;switch(e.t){case"n":break;case"d":o.t="d";break;case"b":o.t="b";break;case"e":o.t="e";break;case"z":break;default:if(e.v==null){delete e.t;break}if(e.v.length>32767)throw new Error("Text length must not exceed 32767 characters");if(a&&a.bookSST){l=_t("v",""+Bi(a.Strings,e.v,a.revStrings));o.t="s";break}else o.t="str";break;}if(e.t!=s){e.t=s;e.v=i}if(typeof e.f=="string"&&e.f){var f=e.F&&e.F.slice(0,r.length)==r?{t:"array",ref:e.F}:null;l=Ft("f",nt(e.f),f)+(e.v!=null?l:"")}if(e.l){e.l.display=nt(n);t["!links"].push([r,e.l])}if(e.D)o.cm=1;return Ft("c",l,o)}var kl=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var s=bt("v"),i=bt("f");return function l(o,c,f,u,h,d){var m=0,p="",v=[],g=[],b=0,w=0,k=0,y="",x;var S,C=0,_=0;var A,F;var E=0,T=0;var D=Array.isArray(d.CellXf),O;var M=[];var N=[];var P=c["!data"]!=null;var I=[],R={},L=false;var B=!!f.sheetStubs;for(var z=o.split(r),$=0,W=z.length;$!=W;++$){p=z[$].trim();var U=p.length;if(U===0)continue;var j=0;e:for(m=0;m":if(p[m-1]!="/"){++m;break e}if(f&&f.cellStyles){S=Zr(p.slice(j,m),true);C=S.r!=null?parseInt(S.r,10):C+1;_=-1;if(f.sheetRows&&f.sheetRows=m)break;S=Zr(p.slice(j,m),true);C=S.r!=null?parseInt(S.r,10):C+1;_=-1;if(f.sheetRows&&f.sheetRowsC-1)u.s.r=C-1;if(u.e.r":"")+p;if(g!=null&&g.length===2){b=0;y=g[1];for(w=0;w!=y.length;++w){if((k=y.charCodeAt(w)-64)<1||k>26)break;b=26*b+k}--b;_=b}else++_;for(w=0;w!=p.length;++w)if(p.charCodeAt(w)===62)break;++w;S=Zr(p.slice(0,w),true);if(!S.r)S.r=La({r:C-1,c:_});y=p.slice(w);x={t:""};if((g=y.match(s))!=null&&g[1]!=="")x.v=rt(g[1]);if(f.cellFormula){if((g=y.match(i))!=null&&g[1]!==""){x.f=rt(vt(g[1]),true);if(!f.xlfn)x.f=Di(x.f);if(g[0].indexOf('t="array"')>-1){x.F=(y.match(n)||[])[1];if(x.F.indexOf(":")>-1)M.push([Ua(x.F),x.F])}else if(g[0].indexOf('t="shared"')>-1){F=Zr(g[0]);var V=rt(vt(g[1]));if(!f.xlfn)V=Di(V);N[parseInt(F.si,10)]=[F,V,S.r]}}else if(g=y.match(/]*\/>/)){F=Zr(g[0]);if(N[F.si])x.f=Ei(N[F.si][1],N[F.si][2],S.r)}var X=Ra(S.r);for(w=0;w=M[w][0].s.r&&X.r<=M[w][0].e.r)if(X.c>=M[w][0].s.c&&X.c<=M[w][0].e.c)x.F=M[w][1]}if(S.t==null&&x.v===undefined){if(x.f||x.F){x.v=0;x.t="n"}else if(!B)continue;else x.t="z"}else x.t=S.t||"n";if(u.s.c>_)u.s.c=_;if(u.e.c<_)u.e.c=_;switch(x.t){case"n":if(x.v==""||x.v==null){if(!B)continue;x.t="z"}else x.v=parseFloat(x.v);break;case"s":if(typeof x.v=="undefined"){if(!B)continue;x.t="z"}else{A=Ii[parseInt(x.v,10)];x.v=A.t;x.r=A.r;if(f.cellHTML)x.h=A.h}break;case"str":x.t="s";x.v=x.v!=null?rt(vt(x.v),true):"";if(f.cellHTML)x.h=lt(x.v);break;case"inlineStr":g=y.match(a);x.t="s";if(g!=null&&(A=ls(g[1]))){x.v=A.t;if(f.cellHTML)x.h=A.h}else x.v="";break;case"b":x.v=ut(x.v);break;case"d":if(f.cellDates)x.v=yr(x.v,1);else{x.v=hr(yr(x.v,1));x.t="n"}break;case"e":if(!f||f.cellText!==false)x.w=x.v;x.v=vn[x.v];break;}E=T=0;O=null;if(D&&S.s!==undefined){O=d.CellXf[S.s];if(O!=null){if(O.numFmtId!=null)E=O.numFmtId;if(f.cellStyles){if(O.fillId!=null)T=O.fillId}}}Ui(x,E,T,f,h,d);if(f.cellDates&&D&&x.t=="n"&&Le(K[E])){x.t="d";x.v=vr(x.v)}if(S.cm&&f.xlmeta){var G=(f.xlmeta.Cell||[])[+S.cm-1];if(G&&G.type=="XLDAPR")x.D=true}if(P){var Y=Ra(S.r);if(!c["!data"][Y.r])c["!data"][Y.r]=[];c["!data"][Y.r][Y.c]=x}else c[S.r]=x}}if(I.length>0)c["!rows"]=I}}();function yl(e,r,t,a){var n=[],s=[],i=Ua(e["!ref"]),l="",o,c="",f=[],u=0,h=0,d=e["!rows"];var m=e["!data"]!=null;var p={r:c},v,g=-1;for(h=i.s.c;h<=i.e.c;++h)f[h]=Ma(h);for(u=i.s.r;u<=i.e.r;++u){s=[];c=Ea(u);for(h=i.s.c;h<=i.e.c;++h){o=f[h]+c;var b=m?(e["!data"][u]||[])[h]:e[o];if(b===undefined)continue;if((l=wl(b,o,e,r,t,a))!=null)s.push(l)}if(s.length>0||d&&d[u]){p={r:c};if(d&&d[u]){v=d[u];if(v.hidden)p.hidden=1;g=-1;if(v.hpx)g=Os(v.hpx);else if(v.hpt)g=v.hpt;if(g>-1){p.ht=g;p.customHeight=1}if(v.level){p.outlineLevel=v.level}}n[n.length]=Ft("row",s.join(""),p)}}if(d)for(;u-1){p.ht=g;p.customHeight=1}if(v.level){p.outlineLevel=v.level}n[n.length]=Ft("row","",p)}}return n.join("")}function xl(e,r,t,a){var n=[Hr,Ft("worksheet",null,{xmlns:Nt[0],"xmlns:r":Mt.r})];var s=t.SheetNames[e],i=0,l="";var o=t.Sheets[s];if(o==null)o={};var c=o["!ref"]||"A1";var f=Ua(c);if(f.e.c>16383||f.e.r>1048575){if(r.WTF)throw new Error("Range "+c+" exceeds format limit A1:XFD1048576");f.e.c=Math.min(f.e.c,16383);f.e.r=Math.min(f.e.c,1048575);c=za(f)}if(!a)a={};o["!comments"]=[];var u=[];sl(o,t,e,r,n);n[n.length]=Ft("dimension",null,{ref:c});n[n.length]=bl(o,r,e,t);if(r.sheetFormat)n[n.length]=Ft("sheetFormatPr",null,{defaultRowHeight:r.sheetFormat.defaultRowHeight||"16",baseColWidth:r.sheetFormat.baseColWidth||"10",outlineLevelRow:r.sheetFormat.outlineLevelRow||"7"});if(o["!cols"]!=null&&o["!cols"].length>0)n[n.length]=dl(o,o["!cols"]);n[i=n.length]="";o["!links"]=[];if(o["!ref"]!=null){l=yl(o,r,e,t,a);if(l.length>0)n[n.length]=l}if(n.length>i+1){n[n.length]="";n[i]=n[i].replace("/>",">")}if(o["!protect"])n[n.length]=ol(o["!protect"]);if(o["!autofilter"]!=null)n[n.length]=pl(o["!autofilter"],o,t,e);if(o["!merges"]!=null&&o["!merges"].length>0)n[n.length]=tl(o["!merges"]);var h=-1,d,m=-1;if(o["!links"].length>0){n[n.length]="";o["!links"].forEach(function(e){if(!e[1].Target)return; +d={ref:e[0]};if(e[1].Target.charAt(0)!="#"){m=Fn(a,-1,nt(e[1].Target).replace(/#.*$/,""),Sn.HLINK);d["r:id"]="rId"+m}if((h=e[1].Target.indexOf("#"))>-1)d.location=nt(e[1].Target.slice(h+1));if(e[1].Tooltip)d.tooltip=nt(e[1].Tooltip);d.display=e[1].display;n[n.length]=Ft("hyperlink",null,d)});n[n.length]=""}delete o["!links"];if(o["!margins"]!=null)n[n.length]=ul(o["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=_t("ignoredErrors",Ft("ignoredError",null,{numberStoredAsText:1,sqref:c}));if(u.length>0){m=Fn(a,-1,"../drawings/drawing"+(e+1)+".xml",Sn.DRAW);n[n.length]=Ft("drawing",null,{"r:id":"rId"+m});o["!drawing"]=u}if(o["!comments"].length>0){m=Fn(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",Sn.VML);n[n.length]=Ft("legacyDrawing",null,{"r:id":"rId"+m});o["!legacy"]=m}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function Sl(e){var r=[];var t=e.match(/^/);var a;(e.match(/(.*?)<\/c:pt>/gm)||[]).forEach(function(e){var a=e.match(/(.*)<\/c:v><\/c:pt>/);if(!a)return;r[+a[1]]=t?+a[2]:a[2]});var n=rt((e.match(/([\s\S]*?)<\/c:formatCode>/)||["","General"])[1]);(e.match(/(.*?)<\/c:f>/gm)||[]).forEach(function(e){a=e.replace(/<.*?>/g,"")});return[r,n,a]}function Cl(e,r,t,a,n,s){var i=s||{"!type":"chart"};if(!e)return s;var l=0,o=0,c="A";var f={s:{r:2e6,c:2e6},e:{r:0,c:0}};(e.match(/[\s\S]*?<\/c:numCache>/gm)||[]).forEach(function(e){var r=Sl(e);f.s.r=f.s.c=0;f.e.c=l;c=Ma(l);r[0].forEach(function(e,t){if(i["!data"]){if(!i["!data"][t])i["!data"][t]=[];i["!data"][t][l]={t:"n",v:e,z:r[1]}}else i[c+Ea(t)]={t:"n",v:e,z:r[1]};o=t});if(f.e.r0)i["!ref"]=za(f);return i}function _l(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var s={"!type":"chart","!drawel":null,"!rel":""};var i;var l=e.match(qi);if(l)al(l[0],s,n,t);if(i=e.match(/drawing r:id="(.*?)"/))s["!rel"]=i[1];if(a["!id"][s["!rel"]])s["!drawel"]=a["!id"][s["!rel"]];return s}var Al=[["allowRefreshQuery",false,"bool"],["autoCompressPictures",true,"bool"],["backupFile",false,"bool"],["checkCompatibility",false,"bool"],["CodeName",""],["date1904",false,"bool"],["defaultThemeVersion",0,"int"],["filterPrivacy",false,"bool"],["hidePivotFieldList",false,"bool"],["promptedSolutions",false,"bool"],["publishItems",false,"bool"],["refreshAllConnections",false,"bool"],["saveExternalLinkValues",true,"bool"],["showBorderUnselectedTables",true,"bool"],["showInkAnnotation",true,"bool"],["showObjects","all"],["showPivotChartFilter",false,"bool"],["updateLinks","userSet"]];var Fl=[["activeTab",0,"int"],["autoFilterDateGrouping",true,"bool"],["firstSheet",0,"int"],["minimized",false,"bool"],["showHorizontalScroll",true,"bool"],["showSheetTabs",true,"bool"],["showVerticalScroll",true,"bool"],["tabRatio",600,"int"],["visibility","visible"]];var El=[];var Tl=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function Dl(e,r){for(var t=0;t!=e.length;++t){var a=e[t];for(var n=0;n!=r.length;++n){var s=r[n];if(a[s[0]]==null)a[s[0]]=s[1];else switch(s[2]){case"bool":if(typeof a[s[0]]=="string")a[s[0]]=ut(a[s[0]]);break;case"int":if(typeof a[s[0]]=="string")a[s[0]]=parseInt(a[s[0]],10);break;}}}}function Ol(e,r){for(var t=0;t!=r.length;++t){var a=r[t];if(e[a[0]]==null)e[a[0]]=a[1];else switch(a[2]){case"bool":if(typeof e[a[0]]=="string")e[a[0]]=ut(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function Ml(e){Ol(e.WBProps,Al);Ol(e.CalcPr,Tl);Dl(e.WBView,Fl);Dl(e.Sheets,El);Ri.date1904=ut(e.WBProps.date1904)}function Nl(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return ut(e.Workbook.WBProps.date1904)?"true":"false"}var Pl=":][*?/\\".split("");function Il(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;Pl.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function Rl(e,r,t){e.forEach(function(a,n){Il(a);for(var s=0;s22)throw new Error("Bad Code Name: Worksheet"+i)}})}function Ll(e){if(!e||!e.SheetNames||!e.Sheets)throw new Error("Invalid Workbook");if(!e.SheetNames.length)throw new Error("Workbook is empty");var r=e.Workbook&&e.Workbook.Sheets||[];Rl(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":Al.forEach(function(e){if(f[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=ut(f[e[0]]);break;case"int":t.WBProps[e[0]]=parseInt(f[e[0]],10);break;default:t.WBProps[e[0]]=f[e[0]];}});if(f.codeName)t.WBProps.CodeName=vt(f.codeName);break;case"":break;case"":break;case"":;case"":break;case"":delete f[0];t.WBView.push(f);break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":a=false;break;case"":{s.Ref=rt(vt(e.slice(i,c)));t.Names.push(s)}break;case"":break;case"":delete f[0];t.CalcPr=f;break;case"":break;case"":;case"":;case"":break;case"":;case"":;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":;case"":;case"":break;case"":a=false;break;case"":a=true;break;case"":a=false;break;case"0;var a={codeName:"ThisWorkbook"};if(e.Workbook&&e.Workbook.WBProps){Al.forEach(function(r){if(e.Workbook.WBProps[r[0]]==null)return;if(e.Workbook.WBProps[r[0]]==r[1])return;a[r[0]]=e.Workbook.WBProps[r[0]]});if(e.Workbook.WBProps.CodeName){a.codeName=e.Workbook.WBProps.CodeName;delete a.CodeName}}r[r.length]=Ft("workbookPr",null,a);var n=e.Workbook&&e.Workbook.Sheets||[];var s=0;if(n&&n[0]&&!!n[0].Hidden){r[r.length]="";for(s=0;s!=e.SheetNames.length;++s){if(!n[s])break;if(!n[s].Hidden)break}if(s==e.SheetNames.length)s=0;r[r.length]='';r[r.length]=""}r[r.length]="";for(s=0;s!=e.SheetNames.length;++s){var i={name:nt(e.SheetNames[s].slice(0,31))};i.sheetId=""+(s+1);i["r:id"]="rId"+(s+1);if(n[s])switch(n[s].Hidden){case 1:i.state="hidden";break;case 2:i.state="veryHidden";break;}r[r.length]=Ft("sheet",null,i)}r[r.length]="";if(t){r[r.length]="";if(e.Workbook&&e.Workbook.Names)e.Workbook.Names.forEach(function(e){var t={name:e.Name};if(e.Comment)t.comment=e.Comment;if(e.Sheet!=null)t.localSheetId=""+e.Sheet;if(e.Hidden)t.hidden="1";if(!e.Ref)return;r[r.length]=Ft("definedName",nt(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Wl(e,r,t){if(r.slice(-4)===".bin")return parse_wb_bin(e,t);return zl(e,t)}function Ul(e,r,t,a,n,s,i,l){if(r.slice(-4)===".bin")return parse_ws_bin(e,a,t,n,s,i,l);return rl(e,a,t,n,s,i,l)}function jl(e,r,t,a,n,s,i,l){if(r.slice(-4)===".bin")return parse_cs_bin(e,a,t,n,s,i,l);return _l(e,a,t,n,s,i,l)}function Hl(e,r,t,a,n,s,i,l){if(r.slice(-4)===".bin")return xi(e,a,t,n,s,i,l);return Si(e,a,t,n,s,i,l)}function Vl(e,r,t,a,n,s,i,l){if(r.slice(-4)===".bin")return ki(e,a,t,n,s,i,l);return yi(e,a,t,n,s,i,l)}function Xl(e,r,t,a){if(r.slice(-4)===".bin")return parse_sty_bin(e,t,a);return js(e,t,a)}function Gl(e,r,t){if(r.slice(-4)===".bin")return parse_sst_bin(e,t);return us(e,t)}function Yl(e,r,t){if(r.slice(-4)===".bin")return parse_comments_bin(e,t);return fi(e,t)}function Jl(e,r,t){if(r.slice(-4)===".bin")return parse_cc_bin(e,r,t);return parse_cc_xml(e,r,t)}function Kl(e,r,t,a){if(t.slice(-4)===".bin")return si(e,r,t,a);return ni(e,r,t,a)}function Zl(e,r,t){if(r.slice(-4)===".bin")return parse_xlmeta_bin(e,r,t);return ti(e,r,t)}function ql(e,r){var t=r||{};var a=t.dense!=null?t.dense:g;var n={};if(a)n["!data"]=[];e=e.replace(//g,"");var s=e.match(/");var i=e.match(/<\/table/i);var l=s.index,o=i&&i.index||e.length;var c=Dr(e.slice(l,o),/(:?]*>)/i,"");var f=-1,u=0,h=0,d=0;var m={s:{r:1e7,c:1e7},e:{r:0,c:0}};var p=[];for(l=0;l/i);for(o=0;o"))>-1)y=y.slice(x+1);for(var S=0;S")));d=_.colspan?+_.colspan:1;if((h=+_.rowspan)>1||d>1)p.push({s:{r:f,c:u},e:{r:f+(h||1)-1,c:u+d-1}});var A=_.t||_["data-t"]||"";if(!y.length){u+=d;continue}y=wt(y);if(m.s.r>f)m.s.r=f;if(m.e.ru)m.s.c=u;if(m.e.ct||n[u].s.c>o)continue;if(n[u].e.r1)i.rowspan=c;if(f>1)i.colspan=f;if(a.editable)m=''+m+"";else if(d){i["data-t"]=d&&d.t||"z";if(d.v!=null)i["data-v"]=d.v;if(d.z!=null)i["data-z"]=d.z;if(d.l&&(d.l.Target||"#").charAt(0)!="#")m=''+m+""}i.id=(a.id||"sjs")+"-"+h;s.push(Ft("td",m,i))}var p="";return p+s.join("")+""}var eo='SheetJS Table Export';var ro="";function to(e,r){var t=e.match(/[\s\S]*?<\/table>/gi);if(!t||t.length==0)throw new Error("Invalid HTML: could not find
");if(t.length==1){var a=Va(ql(t[0],r),r);a.bookType="html";return a}var n=mc();t.forEach(function(e,t){pc(n,ql(e,r),"Sheet"+(t+1))});n.bookType="html";return n}function ao(e,r,t){var a=[];return a.join("")+""}function no(e,r){var t=r||{};var a=t.header!=null?t.header:eo;var n=t.footer!=null?t.footer:ro;var s=[a];var i=Ba(e["!ref"]);s.push(ao(e,i,t));for(var l=i.s.r;l<=i.e.r;++l)s.push(Ql(e,i,l,t));s.push("
"+n);return s.join("")}function so(e,r,t){var a=r.rows;if(!a){throw"Unsupported origin when "+r.tagName+" is not a TABLE"}var n=t||{};var s=e["!data"]!=null;var i=0,l=0;if(n.origin!=null){if(typeof n.origin=="number")i=n.origin;else{var o=typeof n.origin=="string"?Ra(n.origin):n.origin;i=o.r;l=o.c}}var c=Math.min(n.sheetRows||1e7,a.length);var f={s:{r:0,c:0},e:{r:i,c:l}};if(e["!ref"]){var u=Ba(e["!ref"]);f.s.r=Math.min(f.s.r,u.s.r);f.s.c=Math.min(f.s.c,u.s.c);f.e.r=Math.max(f.e.r,u.e.r);f.e.c=Math.max(f.e.c,u.e.c);if(i==-1)f.e.r=i=u.e.r+1}var h=[],d=0;var m=e["!rows"]||(e["!rows"]=[]);var p=0,v=0,g=0,b=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;p1||k>1)h.push({s:{r:v+i,c:b+l},e:{r:v+i+(w||1)-1,c:b+l+(k||1)-1}});var F={t:"s",v:C};var E=S.getAttribute("data-t")||S.getAttribute("t")||"";if(C!=null){if(C.length==0)F.t=E||"z";else if(n.raw||C.trim().length==0||E=="s"){}else if(C==="TRUE")F={t:"b",v:true};else if(C==="FALSE")F={t:"b",v:false};else if(!isNaN(_r(C)))F={t:"n",v:_r(C)};else if(!isNaN(Tr(C).getDate())){F={t:"d",v:yr(C)};if(!n.cellDates)F={t:"n",v:hr(F.v)};F.z=n.dateNF||K[14]}}if(F.z===undefined&&_!=null)F.z=_;var T="",D=S.getElementsByTagName("A");if(D&&D.length)for(var O=0;O=c)e["!fullref"]=za((f.e.r=a.length-p+v-1+i,f));return e}function io(e,r){var t=r||{};var a={};if(t.dense)a["!data"]=[];return so(a,e,r)}function lo(e,r){var t=Va(io(e,r),r);return t}function oo(e){var r="";var t=co(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function co(e){if(e.ownerDocument.defaultView&&typeof e.ownerDocument.defaultView.getComputedStyle==="function")return e.ownerDocument.defaultView.getComputedStyle;if(typeof getComputedStyle==="function")return getComputedStyle;return null}function fo(e){var r=e.replace(/[\t\r\n]/g," ").trim().replace(/ +/g," ").replace(//g," ").replace(//g,function(e,r){return Array(parseInt(r,10)+1).join(" ")}).replace(/]*\/>/g,"\t").replace(//g,"\n");var t=rt(r.replace(/<[^>]*>/g,""));return[t]}function uo(e,r,t){var a=t||{};var n=Dt(e);Ot.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");var s,i,l="",o="",c,f=0,u=-1,h=false,d="";while(s=Ot.exec(n)){switch(s[3]=s[3].replace(/_.*$/,"")){case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":;case"text-style":if(s[1]==="/"){h=false;if(i["truncate-on-overflow"]=="false"){if(l.match(/h/))l=l.replace(/h+/,"[$&]");else if(l.match(/m/))l=l.replace(/m+/,"[$&]");else if(l.match(/s/))l=l.replace(/s+/,"[$&]")}a[i.name]=l;l=""}else if(s[0].charAt(s[0].length-2)!=="/"){h=true;l="";i=Zr(s[0],false)}break;case"boolean-style":if(s[1]==="/"){h=false;a[i.name]="General";l=""}else if(s[0].charAt(s[0].length-2)!=="/"){h=true;l="";i=Zr(s[0],false)}break;case"boolean":l+="General";break;case"text":if(s[1]==="/"){d=n.slice(u,Ot.lastIndex-s[0].length);if(d=="%"&&i[0]=="=0")l=a[c["apply-style-name"]]+";"+l;else console.error("ODS number format may be incorrect: "+c["condition"]);break;case"number":if(s[1]==="/")break;c=Zr(s[0],false);o="";o+=Cr("0",+c["min-integer-digits"]||1);if(ut(c["grouping"]))o=de(Cr("#",Math.max(0,4-o.length))+o);if(+c["min-decimal-places"]||+c["decimal-places"])o+=".";if(+c["min-decimal-places"])o+=Cr("0",+c["min-decimal-places"]||1);if(+c["decimal-places"]-(+c["min-decimal-places"]||0))o+=Cr("0",+c["decimal-places"]-(+c["min-decimal-places"]||0));l+=o;break;case"embedded-text":if(s[1]==="/"){if(f==0)l+='"'+n.slice(u,Ot.lastIndex-s[0].length).replace(/"/g,'""')+'"';else l=l.slice(0,f)+'"'+n.slice(u,Ot.lastIndex-s[0].length).replace(/"/g,'""')+'"'+l.slice(f)}else if(s[0].charAt(s[0].length-2)!=="/"){u=Ot.lastIndex;f=-+Zr(s[0],false)["position"]||0}break;}}return a}function ho(e,r,t){var a=r||{};if(g!=null&&a.dense==null)a.dense=g;var n=Dt(e);var s=[],i;var l;var o,c="",f=0;var u;var h;var d={},m=[];var p={};if(a.dense)p["!data"]=[];var v,b;var w={value:""};var k="",y=0,x;var S=[];var C=-1,_=-1,A={s:{r:1e6,c:1e7},e:{r:0,c:0}};var F=0;var E=t||{},T={};var D=[],O={},M=0,N=0;var P=[],I=1,R=1;var L=[];var B={Names:[],WBProps:{}};var z={};var $=["",""];var W=[],U={};var j="",H=0;var V=false,X=false;var G=0;var Y=0;Ot.lastIndex=0;n=n.replace(//gm,"").replace(//gm,"");while(v=Ot.exec(n))switch(v[3]=v[3].replace(/_.*$/,"")){case"table":;case"工作表":if(v[1]==="/"){if(A.e.c>=A.s.c&&A.e.r>=A.s.r)p["!ref"]=za(A);else p["!ref"]="A1:A1";if(a.sheetRows>0&&a.sheetRows<=A.e.r){p["!fullref"]=p["!ref"];A.e.r=a.sheetRows-1;p["!ref"]=za(A)}if(D.length)p["!merges"]=D;if(P.length)p["!rows"]=P;u.name=u["名称"]||u.name;if(typeof JSON!=="undefined")JSON.stringify(u);m.push(u.name);d[u.name]=p;X=false}else if(v[0].charAt(v[0].length-2)!=="/"){u=Zr(v[0],false);C=_=-1;A.s.r=A.s.c=1e7;A.e.r=A.e.c=0;p={};if(a.dense)p["!data"]=[];D=[];P=[];X=true}break;case"table-row-group":if(v[1]==="/")--F;else++F;break;case"table-row":;case"行":if(v[1]==="/"){C+=I;I=1;break}h=Zr(v[0],false);if(h["行号"])C=h["行号"]-1;else if(C==-1)C=0;I=+h["number-rows-repeated"]||1;if(I<10)for(G=0;G0)P[C+G]={level:F};_=-1;break;case"covered-table-cell":if(v[1]!=="/")++_;if(a.sheetStubs){if(a.dense){if(!p["!data"][C])p["!data"][C]=[];p["!data"][C][_]={t:"z"}}else p[La({r:C,c:_})]={t:"z"}}k="";S=[];break;case"table-cell":;case"数据":if(v[0].charAt(v[0].length-2)==="/"){++_;w=Zr(v[0],false);R=parseInt(w["number-columns-repeated"]||"1",10);b={t:"z",v:null};if(w.formula&&a.cellFormula!=false)b.f=Oi(rt(w.formula));if(w["style-name"]&&T[w["style-name"]])b.z=T[w["style-name"]];if((w["数据类型"]||w["value-type"])=="string"){b.t="s";b.v=rt(w["string-value"]||"");if(a.dense){if(!p["!data"][C])p["!data"][C]=[];p["!data"][C][_]=b}else{p[Ma(_)+Ea(C)]=b}}_+=R-1}else if(v[1]!=="/"){++_;k="";y=0;S=[];R=1;var J=I?C+I-1:C;if(_>A.e.c)A.e.c=_;if(_A.e.r)A.e.r=J;w=Zr(v[0],false);W=[];U={};b={t:w["数据类型"]||w["value-type"],v:null};if(w["style-name"]&&T[w["style-name"]])b.z=T[w["style-name"]];if(a.cellFormula){if(w.formula)w.formula=rt(w.formula);if(w["number-matrix-columns-spanned"]&&w["number-matrix-rows-spanned"]){M=parseInt(w["number-matrix-rows-spanned"],10)||0;N=parseInt(w["number-matrix-columns-spanned"],10)||0;O={s:{r:C,c:_},e:{r:C+M-1,c:_+N-1}};b.F=za(O);L.push([O,b.F])}if(w.formula)b.f=Oi(w.formula);else for(G=0;G=L[G][0].s.r&&C<=L[G][0].e.r)if(_>=L[G][0].s.c&&_<=L[G][0].e.c)b.F=L[G][1]}if(w["number-columns-spanned"]||w["number-rows-spanned"]){M=parseInt(w["number-rows-spanned"],10)||0;N=parseInt(w["number-columns-spanned"],10)||0;O={s:{r:C,c:_},e:{r:C+M-1,c:_+N-1}};D.push(O)}if(w["number-columns-repeated"])R=parseInt(w["number-columns-repeated"],10);switch(b.t){case"boolean":b.t="b";b.v=ut(w["boolean-value"])||+w["boolean-value"]>=1;break;case"float":b.t="n";b.v=parseFloat(w.value);break;case"percentage":b.t="n";b.v=parseFloat(w.value);break;case"currency":b.t="n";b.v=parseFloat(w.value);break;case"date":b.t="d";b.v=yr(w["date-value"]);if(!a.cellDates){b.t="n";b.v=hr(b.v,B.WBProps.date1904)-Y}if(!b.z)b.z="m/d/yy";break;case"time":b.t="n";b.v=gr(w["time-value"])/86400;if(a.cellDates){b.t="d";b.v=vr(b.v)}if(!b.z)b.z="HH:MM:SS";break;case"number":b.t="n";b.v=parseFloat(w["数据数值"]);break;default:if(b.t==="string"||b.t==="text"||!b.t){b.t="s";if(w["string-value"]!=null){k=rt(w["string-value"]);S=[]}}else throw new Error("Unsupported value type "+b.t);}}else{V=false;if(b.t==="s"){b.v=k||"";if(S.length)b.R=S;V=y==0}if(z.Target)b.l=z;if(W.length>0){b.c=W;W=[]}if(k&&a.cellText!==false)b.w=k;if(V){b.t="z";delete b.v}if(!V||a.sheetStubs){if(!(a.sheetRows&&a.sheetRows<=C)){for(var K=0;K0)p["!data"][C+K][_+R]=Sr(b)}else{p[La({r:C+K,c:_})]=b;while(--R>0)p[La({r:C+K,c:_+R})]=Sr(b)}if(A.e.c<=_)A.e.c=_}}}R=parseInt(w["number-columns-repeated"]||"1",10);_+=R-1;R=0;b={};k="";S=[]}z={};break;case"document":;case"document-content":;case"电子表格文档":;case"spreadsheet":;case"主体":;case"scripts":;case"styles":;case"font-face-decls":;case"master-styles":if(v[1]==="/"){if((i=s.pop())[0]!==v[3])throw"Bad state: "+i}else if(v[0].charAt(v[0].length-2)!=="/")s.push([v[3],true]);break;case"annotation":if(v[1]==="/"){if((i=s.pop())[0]!==v[3])throw"Bad state: "+i;U.t=k;if(S.length)U.R=S;U.a=j;W.push(U)}else if(v[0].charAt(v[0].length-2)!=="/"){s.push([v[3],false])}j="";H=0;k="";y=0;S=[];break;case"creator":if(v[1]==="/"){j=n.slice(H,v.index)}else H=v.index+v[0].length;break;case"meta":;case"元数据":;case"settings":;case"config-item-set":;case"config-item-map-indexed":;case"config-item-map-entry":;case"config-item-map-named":;case"shapes":;case"frame":;case"text-box":;case"image":;case"data-pilot-tables":;case"list-style":;case"form":;case"dde-links":;case"event-listeners":;case"chart":if(v[1]==="/"){if((i=s.pop())[0]!==v[3])throw"Bad state: "+i}else if(v[0].charAt(v[0].length-2)!=="/")s.push([v[3],false]);k="";y=0;S=[];break;case"scientific-number":;case"currency-symbol":;case"fill-character":break;case"text-style":;case"boolean-style":;case"number-style":;case"currency-style":;case"percentage-style":;case"date-style":;case"time-style":if(v[1]==="/"){var Z=Ot.lastIndex;uo(n.slice(o,Ot.lastIndex),r,E);Ot.lastIndex=Z}else if(v[0].charAt(v[0].length-2)!=="/"){o=Ot.lastIndex-v[0].length}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":{var q=Zr(v[0],false);if(q["family"]=="table-cell"&&E[q["data-style-name"]])T[q["name"]]=E[q["data-style-name"]]}break;case"map":break;case"font-face":break;case"paragraph-properties":break;case"table-properties":break;case"table-column-properties":break;case"table-row-properties":break;case"table-cell-properties":break;case"number":break;case"fraction":break;case"day":;case"month":;case"year":;case"era":;case"day-of-week":;case"week-of-year":;case"quarter":;case"hours":;case"minutes":;case"seconds":;case"am-pm":break;case"boolean":break;case"text":if(v[0].slice(-2)==="/>")break;else if(v[1]==="/")switch(s[s.length-1][0]){case"number-style":;case"date-style":;case"time-style":c+=n.slice(f,v.index);break;}else f=v.index+v[0].length;break;case"named-range":l=Zr(v[0],false);$=Ni(l["cell-range-address"]);var Q={Name:l.name,Ref:$[0]+"!"+$[1]};if(X)Q.Sheet=m.length;B.Names.push(Q);break;case"text-content":break;case"text-properties":break;case"embedded-text":break;case"body":;case"电子表格":break;case"forms":break;case"table-column":break;case"table-header-rows":break;case"table-rows":break;case"table-column-group":break;case"table-header-columns":break;case"table-columns":break;case"null-date":l=Zr(v[0],false);switch(l["date-value"]){case"1904-01-01":B.WBProps.date1904=true;case"1900-01-01":Y=0;}break;case"graphic-properties":break;case"calculation-settings":break;case"named-expressions":break;case"label-range":break;case"label-ranges":break;case"named-expression":break;case"sort":break;case"sort-by":break;case"sort-groups":break;case"tab":break;case"line-break":break;case"span":break;case"p":;case"文本串":if(["master-styles"].indexOf(s[s.length-1][0])>-1)break;if(v[1]==="/"&&(!w||!w["string-value"])){var ee=fo(n.slice(y,v.index),x);k=(k.length>0?k+"\n":"")+ee[0]}else{x=Zr(v[0],false);y=v.index+v[0].length}break;case"s":break;case"database-range":if(v[1]==="/")break;try{$=Ni(Zr(v[0])["target-range-address"]);d[$[0]]["!autofilter"]={ref:$[1]}}catch(re){}break;case"date":break;case"object":break;case"title":;case"标题":break;case"desc":break;case"binary-data":break;case"table-source":break;case"scenario":break;case"iteration":break;case"content-validations":break;case"content-validation":break;case"help-message":break;case"error-message":break;case"database-ranges":break;case"filter":break;case"filter-and":break;case"filter-or":break;case"filter-condition":break;case"list-level-style-bullet":break;case"list-level-style-number":break;case"list-level-properties":break;case"sender-firstname":;case"sender-lastname":;case"sender-initials":;case"sender-title":;case"sender-position":;case"sender-email":;case"sender-phone-private":;case"sender-fax":;case"sender-company":;case"sender-phone-work":;case"sender-street":;case"sender-city":;case"sender-postal-code":;case"sender-country":;case"sender-state-or-province":;case"author-name":;case"author-initials":;case"chapter":;case"file-name":;case"template-name":;case"sheet-name":break;case"event-listener":break;case"initial-creator":;case"creation-date":;case"print-date":;case"generator":;case"document-statistic":;case"user-defined":;case"editing-duration":;case"editing-cycles":break;case"config-item":break;case"page-number":break;case"page-count":break;case"time":break;case"cell-range-source":break;case"detective":break;case"operation":break;case"highlighted-range":break;case"data-pilot-table":;case"source-cell-range":;case"source-service":;case"data-pilot-field":;case"data-pilot-level":;case"data-pilot-subtotals":;case"data-pilot-subtotal":;case"data-pilot-members":;case"data-pilot-member":;case"data-pilot-display-info":;case"data-pilot-sort-info":;case"data-pilot-layout-info":;case"data-pilot-field-reference":;case"data-pilot-groups":;case"data-pilot-group":;case"data-pilot-group-member":break;case"rect":break;case"dde-connection-decls":;case"dde-connection-decl":;case"dde-link":;case"dde-source":break;case"properties":break;case"property":break;case"a":if(v[1]!=="/"){z=Zr(v[0],false);if(!z.href)break;z.Target=rt(z.href);delete z.href;if(z.Target.charAt(0)=="#"&&z.Target.indexOf(".")>-1){$=Ni(z.Target.slice(1));z.Target="#"+$[0]+"!"+$[1]}else if(z.Target.match(/^\.\.[\\\/]/))z.Target=z.Target.slice(3)}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(v[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(a.WTF)throw new Error(v);};}var te={Sheets:d,SheetNames:m,Workbook:B};if(a.bookSheets)delete te.Sheets;return te}function mo(e,r){r=r||{};if(Pr(e,"META-INF/manifest.xml"))Tn(Rr(e,"META-INF/manifest.xml"),r);var t=Lr(e,"styles.xml");var a=t&&uo(vt(t),r);var n=Lr(e,"content.xml");if(!n)throw new Error("Missing content.xml in ODS / UOF file");var s=ho(vt(n),r,a);if(Pr(e,"meta.xml"))s.Props=Ln(Rr(e,"meta.xml"));s.bookType="ods";return s}function po(e,r){var t=ho(e,r);t.bookType="fods";return t}var vo=function(){var e=["",'',"",'',"",'',"",""].join(""); +var r=""+e+"";return function t(){return Hr+r}}();function go(e,r){var t="number",a="",n={"style:name":r},s="",i=0;e=e.replace(/"[$]"/g,"$");e:{if(e.indexOf(";")>-1){console.error("Unsupported ODS Style Map exported. Using first branch of "+e);e=e.slice(0,e.indexOf(";"))}if(e=="@"){t="text";a="";break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[i]=='"'){s="";while(e[++i]!='"'||e[++i]=='"')s+=e[i];--i;if(e[i+1]=="*"){i++;a+=""+nt(s.replace(/""/g,'"'))+""}else{a+=""+nt(s.replace(/""/g,'"'))+""}e=e.slice(i+1);i=0}var l=e.match(/# (\?+)\/(\?+)/);if(l){a+=Ft("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":l[1].length,"number:max-denominator-value":Math.max(+l[1].replace(/./g,"9"),+l[2].replace(/./g,"9"))});break e}if(l=e.match(/# (\?+)\/(\d+)/)){a+=Ft("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":l[1].length,"number:denominator-value":+l[2]});break e}if(l=e.match(/(\d+)(|\.\d+)%/)){t="percentage";a+=Ft("number:number",null,{"number:decimal-places":l[2]&&l.length-1||0,"number:min-decimal-places":l[2]&&l.length-1||0,"number:min-integer-digits":l[1].length})+"%";break e}var o=false;if(["y","m","d"].indexOf(e[0])>-1){t="date";r:for(;i";break;case"yyy":;case"yyyy":a+='';break;case"mmmmm":console.error("ODS has no equivalent of format |mmmmm|");case"m":;case"mm":;case"mmm":;case"mmmm":a+='';break;case"d":;case"dd":a+='';break;case"ddd":;case"dddd":a+='';break;}break;case'"':while(e[++i]!='"'||e[++i]=='"')s+=e[i];--i;a+=""+nt(s.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(s)+"";break;default:console.error("unrecognized character "+s+" in ODF format "+e);}if(!o)break e;e=e.slice(i+1);i=0}if(e.match(/^\[?[hms]/)){if(t=="number")t="time";if(e.match(/\[/)){e=e.replace(/[\[\]]/g,"");n["number:truncate-on-overflow"]="false"}for(;i';break;case"m":;case"mm":a+='';break;case"s":;case"ss":if(e[i+1]==".")do{s+=e[i+1];++i}while(e[i+1]=="0");a+='";break;}break;case'"':while(e[++i]!='"'||e[++i]=='"')s+=e[i];--i;a+=""+nt(s.slice(1).replace(/""/g,'"'))+"";break;case"/":a+=""+nt(s)+"";break;case"a":if(e.slice(i,i+3).toLowerCase()=="a/p"){a+="";i+=2;break}if(e.slice(i,i+5).toLowerCase()=="am/pm"){a+="";i+=4;break};default:console.error("unrecognized character "+s+" in ODF format "+e);}break e}if(e.indexOf(/\$/)>-1){t="currency"}if(e[0]=="$"){a+='$';e=e.slice(1);i=0}i=0;if(e[i]=='"'){while(e[++i]!='"'||e[++i]=='"')s+=e[i];--i;if(e[i+1]=="*"){i++;a+=""+nt(s.replace(/""/g,'"'))+""}else{a+=""+nt(s.replace(/""/g,'"'))+""}e=e.slice(i+1);i=0}var f=e.match(/([#0][0#,]*)(\.[0#]*|)(E[+]?0*|)/i);if(!f||!f[0])console.error("Could not find numeric part of "+e);else{var u=f[1].replace(/,/g,"");a+="-1?' number:grouping="true"':"")+(f[2]&&' number:decimal-places="'+(f[2].length-1)+'"'||' number:decimal-places="0"')+(f[3]&&f[3].indexOf("+")>-1?' number:forced-exponent-sign="true"':"")+(f[3]?' number:min-exponent-digits="'+f[3].match(/0+/)[0].length+'"':"")+">"+"";i=f.index+f[0].length}if(e[i]=='"'){s="";while(e[++i]!='"'||e[++i]=='"')s+=e[i];--i;a+=""+nt(s.replace(/""/g,'"'))+""}}if(!a){console.error("Could not generate ODS number format for |"+e+"|");return""}return Ft("number:"+t+"-style",a,n)}function bo(e,r,t){var a=e.filter(function(e){return e.Sheet==(t==-1?null:t)});if(!a.length)return"";return" \n"+a.map(function(e){var r=Pi(e.Ref);return" "+Ft("table:named-range",null,{"table:name":e.Name,"table:cell-range-address":r,"table:base-cell-address":r.replace(/[\.]?[^\.]*$/,".$A$1")})}).join("\n")+"\n \n"}var wo=function(){var e=function(e){return nt(e).replace(/ +/g,function(e){return''}).replace(/\t/g,"").replace(/\n/g,"").replace(/^ /,"").replace(/ $/,"")};var r=" \n";var t=" \n";var a=function(a,n,s,i,l){var o=[];o.push(' \n');var c=0,f=0,u=Ba(a["!ref"]||"A1");var h=a["!merges"]||[],d=0;var m=a["!data"]!=null;if(a["!cols"]){for(f=0;f<=u.e.c;++f)o.push(" \n")}var p="",v=a["!rows"]||[];for(c=0;c\n")}for(;c<=u.e.r;++c){p=v[c]?' table:style-name="ro'+v[c].ods+'"':"";o.push(" \n");for(f=0;ff)continue;if(h[d].s.r>c)continue;if(h[d].e.c\n")}if((n.Workbook||{}).Names)o.push(bo(n.Workbook.Names,n.SheetNames,s));o.push(" \n");return o.join("")};var n=function(e,r){e.push(" \n");var t=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!cols"]){for(var a=0;a\n');e.push(' \n');e.push(" \n");++t}}});var a=0;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;if(r["!rows"]){for(var t=0;t\n');e.push(' \n');e.push(" \n");++a}}});e.push(' \n');e.push(' \n');e.push(" \n");e.push(' \n');e.push(' \n');e.push(" /\n");e.push(' \n');e.push(" /\n");e.push(" \n");e.push(" \n");var n={};var s=69;r.SheetNames.map(function(e){return r.Sheets[e]}).forEach(function(r){if(!r)return;var t=r["!data"]!=null;var a=Ba(r["!ref"]);for(var i=0;i<=a.e.r;++i)for(var l=0;l<=a.e.c;++l){var o=t?(r["!data"][i]||[])[l]:r[La({r:i,c:l})];if(!o||!o.z||o.z.toLowerCase()=="general")continue;if(!n[o.z]){var c=go(o.z,"N"+s);if(c){n[o.z]="N"+s;++s;e.push(c+"\n")}}}});e.push(' \n');ir(n).forEach(function(r){e.push('\n')});e.push(" \n");return n};return function s(e,r){var t=[Hr];var s=At({"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:meta":"urn:oasis:names:tc:opendocument:xmlns:meta:1.0","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:presentation":"urn:oasis:names:tc:opendocument:xmlns:presentation:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:chart":"urn:oasis:names:tc:opendocument:xmlns:chart:1.0","xmlns:dr3d":"urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0","xmlns:math":"http://www.w3.org/1998/Math/MathML","xmlns:form":"urn:oasis:names:tc:opendocument:xmlns:form:1.0","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 i=At({"xmlns:config":"urn:oasis:names:tc:opendocument:xmlns:config:1.0","office:mimetype":"application/vnd.oasis.opendocument.spreadsheet"});if(r.bookType=="fods"){t.push("\n");t.push(Pn().replace(//,"").replace(/<\/office:document-meta>/,"")+"\n")}else t.push("\n");var l=n(t,e);t.push(" \n");t.push(" \n");if(((e.Workbook||{}).WBProps||{}).date1904)t.push(' \n \n \n');for(var o=0;o!=e.SheetNames.length;++o)t.push(a(e.Sheets[e.SheetNames[o]],e,o,r,l));if((e.Workbook||{}).Names)t.push(bo(e.Workbook.Names,e.SheetNames,-1));t.push(" \n");t.push(" \n");if(r.bookType=="fods")t.push("");else t.push("");return t.join("")}}();function ko(e,r){if(r.bookType=="fods")return wo(e,r);var t=Wr();var a="";var n=[];var s=[];a="mimetype";$r(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";$r(t,a,wo(e,r));n.push([a,"text/xml"]);s.push([a,"ContentFile"]);a="styles.xml";$r(t,a,vo(e,r));n.push([a,"text/xml"]);s.push([a,"StylesFile"]);a="meta.xml";$r(t,a,Hr+Pn());n.push([a,"text/xml"]);s.push([a,"MetadataFile"]);a="manifest.rdf";$r(t,a,Nn(s));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";$r(t,a,Dn(n));return t}function yo(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]])}}}function xo(e){yo([["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]])(e)}function So(e){yo([["cellDates",false],["bookSST",false],["bookType","xlsx"],["compression",false],["WTF",false]])(e)}function Co(e){if(Sn.WS.indexOf(e)>-1)return"sheet";if(Sn.CS&&e==Sn.CS)return"chart";if(Sn.DS&&e==Sn.DS)return"dialog";if(Sn.MS&&e==Sn.MS)return"macro";return e&&e.length?e:"sheet"}function _o(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,Co(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function Ao(e,r,t,a,n,s,i,l,o,c,f,u){try{s[a]=_n(Lr(e,t,true),r);var h=Rr(e,r);var d;switch(l){case"sheet":d=Ul(h,r,n,o,s[a],c,f,u);break;case"chart":d=jl(h,r,n,o,s[a],c,f,u);if(!d||!d["!drawel"])break;var m=jr(d["!drawel"].Target,r);var p=Cn(m);var v=ii(Lr(e,m,true),_n(Lr(e,p,true),m));var g=jr(v,m);var b=Cn(g);d=Cl(Lr(e,g,true),g,o,_n(Lr(e,b,true),g),c,d);break;case"macro":d=Hl(h,r,n,o,s[a],c,f,u);break;case"dialog":d=Vl(h,r,n,o,s[a],c,f,u);break;default:throw new Error("Unrecognized sheet type "+l);}i[a]=d;var w=[],k=[];if(s&&s[a])ir(s[a]).forEach(function(t){var n="";if(s[a][t].Type==Sn.CMNT){n=jr(s[a][t].Target,r);w=Yl(Rr(e,n,true),n,o);if(!w||!w.length)return;ci(d,w,false)}if(s[a][t].Type==Sn.TCMNT){n=jr(s[a][t].Target,r);k=k.concat(hi(Rr(e,n,true),o))}});if(k&&k.length)ci(d,k,true,o.people||[])}catch(y){if(o.WTF)throw y}}function Fo(e){return e.charAt(0)=="/"?e.slice(1):e}function Eo(e,r){Ve();r=r||{};xo(r);if(Pr(e,"META-INF/manifest.xml"))return mo(e,r);if(Pr(e,"objectdata.xml"))return mo(e,r);if(Pr(e,"Index/Document.iwa")){if(typeof Uint8Array=="undefined")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof parse_numbers_iwa!="undefined"){if(e.FileIndex)return parse_numbers_iwa(e,r);var t=er.utils.cfb_new();zr(e).forEach(function(r){$r(t,r,Br(e,r))});return parse_numbers_iwa(t,r)}throw new Error("Unsupported NUMBERS file")}if(!Pr(e,"[Content_Types].xml")){if(Pr(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(Pr(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");var a=er.find(e,"Index.zip");if(a){r=Sr(r);delete r.type;if(typeof a.content=="string")r.type="binary";if(typeof Bun!=="undefined"&&Buffer.isBuffer(a.content))return $o(new Uint8Array(a.content),r);return $o(a.content,r)}throw new Error("Unsupported ZIP file")}var n=zr(e);var s=yn(Lr(e,"[Content_Types].xml"));var i=false;var l,o;if(s.workbooks.length===0){o="xl/workbook.xml";if(Rr(e,o,true))s.workbooks.push(o)}if(s.workbooks.length===0){o="xl/workbook.bin";if(!Rr(e,o,true))throw new Error("Could not find workbook");s.workbooks.push(o);i=true}if(s.workbooks[0].slice(-3)=="bin")i=true;var c={};var f={};if(!r.bookSheets&&!r.bookProps){Ii=[];if(s.sst)try{Ii=Gl(Rr(e,Fo(s.sst)),s.sst,r)}catch(u){if(r.WTF)throw u}if(r.cellStyles&&s.themes.length)c=ei(Lr(e,s.themes[0].replace(/^\//,""),true)||"",r);if(s.style)f=Xl(Rr(e,Fo(s.style)),s.style,c,r)}s.links.map(function(t){try{var a=_n(Lr(e,Cn(Fo(t))),t);return Kl(Rr(e,Fo(t)),a,t,r)}catch(n){}});var h=Wl(Rr(e,Fo(s.workbooks[0])),s.workbooks[0],r);var d={},m="";if(s.coreprops.length){m=Rr(e,Fo(s.coreprops[0]),true);if(m)d=Ln(m);if(s.extprops.length!==0){m=Rr(e,Fo(s.extprops[0]),true);if(m)jn(m,d,r)}}var p={};if(!r.bookSheets||r.bookProps){if(s.custprops.length!==0){m=Lr(e,Fo(s.custprops[0]),true);if(m)p=Xn(m,r)}}var v={};if(r.bookSheets||r.bookProps){if(h.Sheets)l=h.Sheets.map(function M(e){return e.name});else if(d.Worksheets&&d.SheetNames.length>0)l=d.SheetNames;if(r.bookProps){v.Props=d;v.Custprops=p}if(r.bookSheets&&typeof l!=="undefined")v.SheetNames=l;if(r.bookSheets?v.SheetNames:r.bookProps)return v}l={};var g={};if(r.bookDeps&&s.calcchain)g=Jl(Rr(e,Fo(s.calcchain)),s.calcchain,r);var b=0;var w={};var k,y;{var x=h.Sheets;d.Worksheets=x.length;d.SheetNames=[];for(var S=0;S!=x.length;++S){d.SheetNames[S]=x[S].name}}var C=i?"bin":"xml";var _=s.workbooks[0].lastIndexOf("/");var A=(s.workbooks[0].slice(0,_+1)+"_rels/"+s.workbooks[0].slice(_+1)+".rels").replace(/^\//,"");if(!Pr(e,A))A="xl/_rels/workbook."+C+".rels";var F=_n(Lr(e,A,true),A.replace(/_rels.*/,"s5s"));if((s.metadata||[]).length>=1){r.xlmeta=Zl(Rr(e,Fo(s.metadata[0])),s.metadata[0],r)}if((s.people||[]).length>=1){r.people=mi(Rr(e,Fo(s.people[0])),r)}if(F)F=_o(F,h.Sheets);var E=Rr(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(b=0;b!=d.Worksheets;++b){var T="sheet";if(F&&F[b]){k="xl/"+F[b][1].replace(/[\/]?xl\//,"");if(!Pr(e,k))k=F[b][1];if(!Pr(e,k))k=A.replace(/_rels\/.*$/,"")+F[b][1];T=F[b][2]}else{k="xl/worksheets/sheet"+(b+1-E)+"."+C;k=k.replace(/sheet0\./,"sheet.")}y=k.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");if(r&&r.sheets!=null)switch(typeof r.sheets){case"number":if(b!=r.sheets)continue e;break;case"string":if(d.SheetNames[b].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var D=false;for(var O=0;O!=r.sheets.length;++O){if(typeof r.sheets[O]=="number"&&r.sheets[O]==b)D=1;if(typeof r.sheets[O]=="string"&&r.sheets[O].toLowerCase()==d.SheetNames[b].toLowerCase())D=1}if(!D)continue e};}Ao(e,k,y,d.SheetNames[b],b,w,l,T,r,h,c,f)}v={Directory:s,Workbook:h,Props:d,Custprops:p,Deps:g,Sheets:l,SheetNames:d.SheetNames,Strings:Ii,Styles:f,Themes:c,SSF:Sr(K)};if(r&&r.bookFiles){if(e.files){v.keys=n;v.files=e.files}else{v.keys=[];v.files={};e.FullPaths.forEach(function(r,t){r=r.replace(/^Root Entry[\/]/,"");v.keys.push(r);v.files[r]=e.FileIndex[t]})}}if(r&&r.bookVBA){if(s.vba.length>0)v.vbaraw=Rr(e,Fo(s.vba[0]),true);else if(s.defaults&&s.defaults.bin===vi)v.vbaraw=Rr(e,"xl/vbaProject.bin",true)}v.bookType=i?"xlsb":"xlsx";return v}function To(e,r){var t=r||{};var a="Workbook",n=er.find(e,a);try{a="/!DataSpaces/Version";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);parse_DataSpaceVersionInfo(n.content);a="/!DataSpaces/DataSpaceMap";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=parse_DataSpaceMap(n.content);if(s.length!==1||s[0].comps.length!==1||s[0].comps[0].t!==0||s[0].name!=="StrongEncryptionDataSpace"||s[0].comps[0].v!=="EncryptedPackage")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=parse_DataSpaceDefinition(n.content);if(i.length!=1||i[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);parse_Primary(n.content)}catch(l){}a="/EncryptionInfo";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var o=parse_EncryptionInfo(n.content);a="/EncryptedPackage";n=er.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);if(o[0]==4&&typeof decrypt_agile!=="undefined")return decrypt_agile(o[1],n.content,t.password||"",t);if(o[0]==2&&typeof decrypt_std76!=="undefined")return decrypt_std76(o[1],n.content,t.password||"",t);throw new Error("File is password-protected")}function Do(e,r){if(e&&!e.SSF){e.SSF=Sr(K)}if(e&&e.SSF){Ve();He(e.SSF);r.revssf=cr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(Li)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="bin";var a=true;var n=kn();So(r=r||{});var s=Wr();var i="",l=0;r.cellXfs=[];Wi(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};i="docProps/core.xml";$r(s,i,zn(e.Props,r));n.coreprops.push(i);Fn(r.rels,2,i,Sn.CORE_PROPS);i="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var o=[];for(var c=0;c0){i="docProps/custom.xml";$r(s,i,Gn(e.Custprops,r));n.custprops.push(i);Fn(r.rels,4,i,Sn.CUST_PROPS)}for(l=1;l<=e.SheetNames.length;++l){var f={"!id":{}};var u=e.Sheets[e.SheetNames[l-1]];var h=(u||{})["!type"]||"sheet";switch(h){case"chart":;default:i="xl/worksheets/sheet"+l+"."+t;$r(s,i,write_ws_bin(l-1,r,e,f));n.sheets.push(i);Fn(r.wbrels,-1,"worksheets/sheet"+l+"."+t,Sn.WS[0]);}if(u){var d=u["!comments"];var m=false;var p="";if(d&&d.length>0){p="xl/comments"+l+"."+t;$r(s,p,write_comments_bin(d,r));n.comments.push(p);Fn(f,-1,"../comments"+l+"."+t,Sn.CMNT);m=true}if(u["!legacy"]){if(m)$r(s,"xl/drawings/vmlDrawing"+l+".vml",li(l,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(f["!id"].rId1)$r(s,Cn(i),An(f))}if(r.Strings!=null&&r.Strings.length>0){i="xl/sharedStrings."+t;$r(s,i,write_sst_bin(r.Strings,r));n.strs.push(i);Fn(r.wbrels,-1,"sharedStrings."+t,Sn.SST)}i="xl/workbook."+t;$r(s,i,write_wb_bin(e,r));n.workbooks.push(i);Fn(r.rels,1,i,Sn.WB);i="xl/theme/theme1.xml";var v=ri(e.Themes,r);$r(s,i,v);n.themes.push(i);Fn(r.wbrels,-1,"theme/theme1.xml",Sn.THEME);i="xl/styles."+t;$r(s,i,write_sty_bin(e,r));n.styles.push(i);Fn(r.wbrels,-1,"styles."+t,Sn.STY);if(e.vbaraw&&a){i="xl/vbaProject.bin";$r(s,i,e.vbaraw);n.vba.push(i);Fn(r.wbrels,-1,"vbaProject.bin",Sn.VBA)}i="xl/metadata."+t;$r(s,i,write_xlmeta_bin());n.metadata.push(i);Fn(r.wbrels,-1,"metadata."+t,Sn.XLMETA);$r(s,"[Content_Types].xml",xn(n,r));$r(s,"_rels/.rels",An(r.rels));$r(s,"xl/_rels/workbook."+t+".rels",An(r.wbrels));delete r.revssf;delete r.ssf;return s}function Oo(e,r){if(e&&!e.SSF){e.SSF=Sr(K)}if(e&&e.SSF){Ve();He(e.SSF);r.revssf=cr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF}r.rels={};r.wbrels={};r.Strings=[];r.Strings.Count=0;r.Strings.Unique=0;if(Li)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=wi.indexOf(r.bookType)>-1;var n=kn();So(r=r||{});var s=Wr();var i="",l=0;r.cellXfs=[];Wi(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};i="docProps/core.xml";$r(s,i,zn(e.Props,r));n.coreprops.push(i);Fn(r.rels,2,i,Sn.CORE_PROPS);i="docProps/app.xml";if(e.Props&&e.Props.SheetNames){}else if(!e.Workbook||!e.Workbook.Sheets)e.Props.SheetNames=e.SheetNames;else{var o=[];for(var c=0;c0){i="docProps/custom.xml";$r(s,i,Gn(e.Custprops,r));n.custprops.push(i);Fn(r.rels,4,i,Sn.CUST_PROPS)}var f=["SheetJ5"];r.tcid=0;for(l=1;l<=e.SheetNames.length;++l){var u={"!id":{}};var h=e.Sheets[e.SheetNames[l-1]];var d=(h||{})["!type"]||"sheet";switch(d){case"chart":;default:i="xl/worksheets/sheet"+l+"."+t;$r(s,i,xl(l-1,r,e,u));n.sheets.push(i);Fn(r.wbrels,-1,"worksheets/sheet"+l+"."+t,Sn.WS[0]);}if(h){var m=h["!comments"];var p=false;var v="";if(m&&m.length>0){var g=false;m.forEach(function(e){e[1].forEach(function(e){if(e.T==true)g=true})});if(g){v="xl/threadedComments/threadedComment"+l+".xml";$r(s,v,di(m,f,r));n.threadedcomments.push(v);Fn(u,-1,"../threadedComments/threadedComment"+l+".xml",Sn.TCMNT)}v="xl/comments"+l+"."+t;$r(s,v,ui(m,r));n.comments.push(v);Fn(u,-1,"../comments"+l+"."+t,Sn.CMNT);p=true}if(h["!legacy"]){if(p)$r(s,"xl/drawings/vmlDrawing"+l+".vml",li(l,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(u["!id"].rId1)$r(s,Cn(i),An(u))}if(r.Strings!=null&&r.Strings.length>0){i="xl/sharedStrings."+t;$r(s,i,ds(r.Strings,r));n.strs.push(i);Fn(r.wbrels,-1,"sharedStrings."+t,Sn.SST)}i="xl/workbook."+t;$r(s,i,$l(e,r));n.workbooks.push(i);Fn(r.rels,1,i,Sn.WB);i="xl/theme/theme1.xml";$r(s,i,ri(e.Themes,r));n.themes.push(i);Fn(r.wbrels,-1,"theme/theme1.xml",Sn.THEME);i="xl/styles."+t;$r(s,i,Hs(e,r));n.styles.push(i);Fn(r.wbrels,-1,"styles."+t,Sn.STY);if(e.vbaraw&&a){i="xl/vbaProject.bin";$r(s,i,e.vbaraw);n.vba.push(i);Fn(r.wbrels,-1,"vbaProject.bin",Sn.VBA)}i="xl/metadata."+t;$r(s,i,ai());n.metadata.push(i);Fn(r.wbrels,-1,"metadata."+t,Sn.XLMETA);if(f.length>1){i="xl/persons/person.xml";$r(s,i,pi(f,r));n.people.push(i);Fn(r.wbrels,-1,"persons/person.xml",Sn.PEOPLE)}$r(s,"[Content_Types].xml",xn(n,r));$r(s,"_rels/.rels",An(r.rels));$r(s,"xl/_rels/workbook."+t+".rels",An(r.wbrels));delete r.revssf;delete r.ssf;return s}function Mo(e,r){var t="";switch((r||{}).type||"base64"){case"buffer":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];case"base64":t=x(e.slice(0,12));break;case"binary":t=e;break;case"array":return[e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7]];default:throw new Error("Unrecognized type "+(r&&r.type||"undefined"));}return[t.charCodeAt(0),t.charCodeAt(1),t.charCodeAt(2),t.charCodeAt(3),t.charCodeAt(4),t.charCodeAt(5),t.charCodeAt(6),t.charCodeAt(7)]}function No(e,r){if(er.find(e,"EncryptedPackage"))return To(e,r);return parse_xlscfb(e,r)}function Po(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=S&&Buffer.isBuffer(e)?"buffer":"base64";t=Ur(a,n);return Eo(t,n)}function Io(e,r){var t=0;e:while(t=2&&s[3]===0)return WK_.to_workbook(n,t);if(s[2]===0&&(s[3]===8||s[3]===9))return WK_.to_workbook(n,t)}break;case 3:;case 131:;case 139:;case 140:return Jn.to_workbook(n,t);case 123:if(s[1]===92&&s[2]===114&&s[3]===116)return rtf_to_workbook(n,t);break;case 10:;case 13:;case 32:return Ro(n,t);case 137:if(s[1]===80&&s[2]===78&&s[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;case 8:if(s[1]===231)throw new Error("Unsupported Multiplan 1.x file!");break;case 12:if(s[1]===236)throw new Error("Unsupported Multiplan 2.x file!");if(s[1]===237)throw new Error("Unsupported Multiplan 3.x file!");break;}if(Yn.indexOf(s[0])>-1&&s[2]<=12&&s[3]<=31)return Jn.to_workbook(n,t);return zo(e,n,t,i)}function Wo(e,r){var t=r||{};t.type="file";return $o(e,t)}function Uo(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return nr(r.file,er.write(e,{type:S?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return er.write(e,r)}function jo(e,r){switch(r.bookType){case"ods":return ko(e,r);case"numbers":return write_numbers_iwa(e,r);case"xlsb":return Do(e,r);default:return Oo(e,r);}}function Ho(e,r){ +var t=Sr(r||{});var a=jo(e,t);return Xo(a,t)}function Vo(e,r){var t=Sr(r||{});var a=Oo(e,t);return Xo(a,t)}function Xo(e,r){var t={};var a=S?"nodebuffer":typeof Uint8Array!=="undefined"?"array":"string";if(r.compression)t.compression="DEFLATE";if(r.password)t.type=a;else switch(r.type){case"base64":t.type="base64";break;case"binary":t.type="string";break;case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");case"buffer":;case"file":t.type=a;break;default:throw new Error("Unrecognized type "+r.type);}var n=e.FullPaths?er.write(e,{fileType:"zip",type:{nodebuffer:"buffer",string:"binary"}[t.type]||t.type,compression:!!r.compression}):e.generate(t);if(typeof Deno!=="undefined"){if(typeof n=="string"){if(r.type=="binary"||r.type=="base64")return n;n=new Uint8Array(T(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return Uo(encrypt_agile(n,r.password),r);if(r.type==="file")return nr(r.file,n);return r.type=="string"?vt(n):n}function Go(e,r){var t=r||{};var a=write_xlscfb(e,t);return Uo(a,t)}function Yo(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return k(gt(a));case"binary":return gt(a);case"string":return e;case"file":return nr(r.file,a,"utf8");case"buffer":{if(S)return C(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return Yo(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Jo(e,r){switch(r.type){case"base64":return y(e);case"binary":return e;case"string":return e;case"file":return nr(r.file,e,"binary");case"buffer":{if(S)return C(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Ko(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var u=Ea(o.s.r);var h=[];var d=[];var m=0,p=0;var v=e["!data"]!=null;var g=o.s.r,b=0;var w={};if(v&&!e["!data"][g])e["!data"][g]=[];var k=c.skipHidden&&e["!cols"]||[];var y=c.skipHidden&&e["!rows"]||[];for(b=o.s.c;b<=o.e.c;++b){if((k[b]||{}).hidden)continue;h[b]=Ma(b);t=v?e["!data"][g][b]:e[h[b]+u];switch(a){case 1:s[b]=b-o.s.c;break;case 2:s[b]=h[b];break;case 3:s[b]=c.header[b-o.s.c];break;default:if(t==null)t={w:"__EMPTY",t:"s"};l=i=Ha(t,null,c);p=w[i]||0;if(!p)w[i]=1;else{do{l=i+"_"+p++}while(w[l]);w[i]=p;w[l]=1}s[b]=l;}}for(g=o.s.r+n;g<=o.e.r;++g){if((y[g]||{}).hidden)continue;var x=ac(e,o,g,h,a,s,c);if(x.isempty===false||(a===1?c.blankrows!==false:!!c.blankrows))d[m++]=x.row}d.length=m;return d}var sc=/"/g;function ic(e,r,t,a,n,s,i,l){var o=true;var c=[],f="",u=Ea(t);var h=e["!data"]!=null;var d=h&&e["!data"][t]||[];for(var m=r.s.c;m<=r.e.c;++m){if(!a[m])continue;var p=h?d[m]:e[a[m]+u];if(p==null)f="";else if(p.v!=null){o=false;f=""+(l.rawNumbers&&p.t=="n"?p.v:Ha(p,null,l));for(var v=0,g=0;v!==f.length;++v)if((g=f.charCodeAt(v))===n||g===s||g===34||l.forceQuotes){f='"'+f.replace(sc,'""')+'"';break}if(f=="ID")f='"ID"'}else if(p.f!=null&&!p.F){o=false;f="="+p.f;if(f.indexOf(",")>=0)f='"'+f.replace(sc,'""')+'"'}else f="";c.push(f)}if(l.blankrows===false&&o)return null;return c.join(i)}function lc(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=Ua(e["!ref"]);var s=a.FS!==undefined?a.FS:",",i=s.charCodeAt(0);var l=a.RS!==undefined?a.RS:"\n",o=l.charCodeAt(0);var c=new RegExp((s=="|"?"\\|":s)+"+$");var f="",u=[];var h=a.skipHidden&&e["!cols"]||[];var d=a.skipHidden&&e["!rows"]||[];for(var m=n.s.c;m<=n.e.c;++m)if(!(h[m]||{}).hidden)u[m]=Ma(m);var p=0;for(var v=n.s.r;v<=n.e.r;++v){if((d[v]||{}).hidden)continue;f=ic(e,n,v,u,i,o,s,a);if(f==null){continue}if(a.strip)f=f.replace(c,"");if(f||a.blankrows!==false)t.push((p++?l:"")+f)}return t.join("")}function oc(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=lc(e,r);if(typeof a=="undefined"||r.type=="string")return t;var n=a.utils.encode(1200,t,"str");return String.fromCharCode(255)+String.fromCharCode(254)+n}function cc(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=Ua(e["!ref"]),s="",i=[],l;var o=[];var c=e["!data"]!=null;for(l=n.s.c;l<=n.e.c;++l)i[l]=Ma(l);for(var f=n.s.r;f<=n.e.r;++f){s=Ea(f);for(l=n.s.c;l<=n.e.c;++l){r=i[l]+s;t=c?(e["!data"][f]||[])[l]:e[r];a="";if(t===undefined)continue;else if(t.F!=null){r=t.F;if(!t.f)continue;a=t.f;if(r.indexOf(":")==-1)r=r+":"+r}if(t.f!=null)a=t.f;else if(t.t=="z")continue;else if(t.t=="n"&&t.v!=null)a=""+t.v;else if(t.t=="b")a=t.v?"TRUE":"FALSE";else if(t.w!==undefined)a="'"+t.w;else if(t.v===undefined)continue;else if(t.t=="s")a="'"+t.v;else a=""+t.v;o[o.length]=r+"="+a}}return o}function fc(e,r,t){var a=t||{};var n=e?e["!data"]!=null:a.dense;if(g!=null&&n==null)n=g;var s=+!a.skipHeader;var i=e||{};if(!e&&n)i["!data"]=[];var l=0,o=0;if(i&&a.origin!=null){if(typeof a.origin=="number")l=a.origin;else{var c=typeof a.origin=="string"?Ra(a.origin):a.origin;l=c.r;o=c.c}}var f={s:{c:0,r:0},e:{c:o,r:l+r.length-1+s}};if(i["!ref"]){var u=Ua(i["!ref"]);f.e.c=Math.max(f.e.c,u.e.c);f.e.r=Math.max(f.e.r,u.e.r);if(l==-1){l=u.e.r+1;f.e.r=l+r.length-1+s}}else{if(l==-1){l=0;f.e.r=r.length-1+s}}var h=a.header||[],d=0;var m=[];r.forEach(function(e,r){if(n&&!i["!data"][l+r+s])i["!data"][l+r+s]=[];if(n)m=i["!data"][l+r+s];ir(e).forEach(function(t){if((d=h.indexOf(t))==-1)h[d=h.length]=t;var c=e[t];var f="z";var u="";var p=n?"":Ma(o+d)+Ea(l+r+s);var v=n?m[o+d]:i[p];if(c&&typeof c==="object"&&!(c instanceof Date)){if(n)m[o+d]=c;else i[p]=c}else{if(typeof c=="number")f="n";else if(typeof c=="boolean")f="b";else if(typeof c=="string")f="s";else if(c instanceof Date){f="d";if(!a.cellDates){f="n";c=hr(c)}u=v!=null&&v.z&&Le(v.z)?v.z:a.dateNF||K[14]}else if(c===null&&a.nullError){f="e";c=0}if(!v){if(!n)i[p]=v={t:f,v:c};else m[o+d]=v={t:f,v:c}}else{v.t=f;v.v=c;delete v.w;delete v.R;if(u)v.z=u}if(u)v.z=u}})});f.e.c=Math.max(f.e.c,o+h.length-1);var p=Ea(l);if(n&&!i["!data"][l])i["!data"][l]=[];if(s)for(d=0;d=0&&e.SheetNames.length>r)return r;throw new Error("Cannot find sheet # "+r)}else if(typeof r=="string"){var t=e.SheetNames.indexOf(r);if(t>-1)return t;throw new Error("Cannot find sheet name |"+r+"|")}else throw new Error("Cannot find sheet |"+r+"|")}function mc(){return{SheetNames:[],Sheets:{}}}function pc(e,r,t,a){var n=1;if(!t)for(;n<=65535;++n,t=undefined)if(e.SheetNames.indexOf(t="Sheet"+n)==-1)break;if(!t||e.SheetNames.length>=65535)throw new Error("Too many worksheets");if(a&&e.SheetNames.indexOf(t)>=0){var s=t.match(/(^.*?)(\d+)$/);n=s&&+s[2]||0;var i=s&&s[1]||t;for(++n;n<=65535;++n)if(e.SheetNames.indexOf(t=i+n)==-1)break}Il(t);if(e.SheetNames.indexOf(t)>=0)throw new Error("Worksheet with name |"+t+"| already exists!");e.SheetNames.push(t);e.Sheets[t]=r;return t}function vc(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=dc(e,r);if(!e.Workbook.Sheets[a])e.Workbook.Sheets[a]={};switch(t){case 0:;case 1:;case 2:break;default:throw new Error("Bad sheet visibility setting "+t);}e.Workbook.Sheets[a].Hidden=t}function gc(e,r){e.z=r;return e}function bc(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function wc(e,r,t){return bc(e,"#"+r,t)}function kc(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function yc(e,r,t,a){var n=typeof r!="string"?r:Ua(r);var s=typeof r=="string"?r:za(r);for(var i=n.s.r;i<=n.e.r;++i)for(var l=n.s.c;l<=n.e.c;++l){var o=hc(e,i,l);o.t="n";o.F=s;delete o.v;if(i==n.s.r&&l==n.s.c){o.f=t;if(a)o.D=true}}var c=Ba(e["!ref"]);if(c.s.r>n.s.r)c.s.r=n.s.r;if(c.s.c>n.s.c)c.s.c=n.s.c;if(c.e.r","{","sylk_char_regex","sylk_char_fn","_","decode_sylk_char","newcc","sylk_to_aoa","sylk_to_aoa_str","records","rj","formats","next_cell_format","sht","rowinfo","colinfo","cw","Mval","wb","Workbook","WBProps","Names","rstr","record","d1904","nn","Sheet","Name","Ref","rc_to_a1","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","cell_t","cellText","shrbase","shift_formula_str","F_seen","hidden","hpt","hpx","pt2px","process_col","sylk_to_workbook","aoasht","outwb","write_ws_cell_sylk","F","a1_to_rc","write_ws_cols_sylk","rec","width","wpx","width2px","px2char","write_ws_rows_sylk","rows","px2pt","sheet_to_sylk","preamble","RS","coord","DIF","dif_to_aoa","dif_to_aoa_str","dif_to_sheet","dif_to_workbook","make_value","make_value_str","sheet_to_dif","_DIF_XL","ETH","eth_to_aoa","eth_to_sheet","eth_to_workbook","sep","meta","sheet_to_eth_data","sheet_to_eth","PRN","set_text_arr","prn_to_aoa_str","lines","guess_seps","guess_sep_weights","guess_sep","instr","dsv_to_sheet_str","FS","sepcc","startcc","_re","finish_cell","fuzzyfmla","cellNF","outer","prn_to_sheet_str","prn_to_sheet","bytes","firstbyte","prn_to_workbook","sheet_to_prn","read_wb_ID","OLD_WTF","parse_rpr","rpr","font","pass","shadow","outline","strike","uval","rgb","family","valign","parse_rs","tregex","rpregex","parse_r","rregex","rend","rs","filter","rs_to_html","parse_rs_factory","nlregex","parse_rpr2","intro","outro","align","r_to_html","terms","sitregex","sirregex","sirphregex","parse_si","cellHTML","sstr0","sstr1","sstr2","parse_sst_xml","Count","count","Unique","uniqueCount","straywsregex","write_sst_xml","bookSST","sitag","hex2RGB","rgb2Hex","rgb2HSL","G","H6","L2","hsl2RGB","hsl","h6","X","rgb_tint","hex","tint","DEF_MDW","MAX_MDW","MIN_MDW","MDW","px","char2width","chr","cycle_width","collw","find_mdw_colw","delta","_MDW","coll","customWidth","DEF_PPI","PPI","pt","XLMLPatternTypeMap","None","Solid","Gray50","Gray75","Gray25","HorzStripe","VertStripe","ReverseDiagStripe","DiagStripe","DiagCross","ThickDiagCross","ThinHorzStripe","ThinVertStripe","ThinReverseDiagStripe","ThinHorzCross","parse_borders","Borders","border","diagonalUp","diagonalDown","parse_fills","Fills","patternType","bgColor","indexed","theme","fgColor","parse_fonts","Fonts","bold","italic","underline","condense","extend","vertAlign","scheme","auto","index","icv","themeElements","clrScheme","parse_numFmts","NumberFmt","formatCode","write_numFmts","NF","cellXF_uint","cellXF_bool","parse_cellXfs","CellXf","xf","alignment","vertical","horizontal","textRotation","indent","wrapText","write_cellXfs","cellXfs","parse_sty_xml","make_pstyx","numFmtRegex","cellXfRegex","fillsRegex","fontsRegex","bordersRegex","write_sty_xml","XLSXThemeClrScheme","parse_clrScheme","lastClr","parse_fontScheme","parse_fmtScheme","clrsregex","fntsregex","fmtsregex","parse_themeElements","themeltregex","parse_theme_xml","write_theme","Themes","themeXLSX","parse_xlmeta_xml","Types","Cell","Value","metatype","lastmeta","offsets","write_xlmeta_xml","parse_xlink_xml","parse_xlink_bin","xlink_parse","parse_drawing","id","write_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","_shapeid","_comments","joinstyle","gradientshapeok","o:connecttype","coordsize","o:spt","write_vml_comment","fillopts","color2","angle","fillparm","fillxml","shadata","on","obscured","fillcolor","strokecolor","sheet_insert_comments","threaded","comment","ref","author","parse_comments_xml","authors","commentList","authtag","cmnttag","cm","authorId","guid","textMatch","rt","write_comments_xml","iauthor","ID","lastauthor","ts","tcnt","parse_tcmnt_xml","tidx","xml_tcmnt","personId","write_tcmnt_xml","carr","rootid","tcopts","tcid","parentId","parse_people_xml","displayname","write_people_xml","person","displayName","userId","providerId","CT_VBA","make_vba_xls","newcfb","newpath","fill_vba_xls","VBAFMTS","parse_ds_bin","!type","parse_ds_xml","parse_ms_bin","parse_ms_xml","rcregex","rcbase","rcfunc","fstr","crefregex","$0","$4","$5","shift_formula_xlsx","_xlfn","ods_to_csf_formula","csf_to_ods_formula","ods_to_csf_3D","csf_to_ods_3D","_ssfopts","browser_has_Map","Map","get_sst_id","has","revarr","get","col_obj_w","level","outlineLevel","default_margins","margins","mode","defs","left","right","top","bottom","footer","get_cell_style","revssf","ssf","fontId","fillId","borderId","xfId","applyNumberFormat","safe_format","fillid","cellStyles","raw_rgb","check_ws","parse_ws_xml_dim","mergecregex","sheetdataregex","hlinkregex","dimregex","colregex","afregex","marginregex","sheetprregex","sheetprregex2","svsregex","parse_ws_xml","refguess","data1","data2","mtch","sheetPr","parse_ws_xml_sheetpr","parse_ws_xml_sheetpr2","svs","parse_ws_xml_sheetviews","columns","parse_ws_xml_cols","parse_ws_xml_data","afilter","parse_ws_xml_autofilter","merges","_merge","hlink","parse_ws_xml_hlinks","parse_ws_xml_margins","tmpref","write_ws_xml_merges","codeName","CodeName","write_ws_xml_sheetpr","needed","vbaraw","cname","outlineprops","summaryBelow","summaryRight","above","sheetprot_deffalse","sheetprot_deftrue","write_ws_xml_protection","sp","password","crypto_CreatePasswordVerifier_Method1","location","Rel","tooltip","Tooltip","rng","margin","write_ws_xml_margins","seencol","coli","colm","colM","write_ws_xml_cols","write_ws_xml_autofilter","names","sviewregex","Views","zoomScale","zoom","rightToLeft","RTL","write_ws_xml_sheetviews","sview","workbookViewId","write_ws_xml_cell","oldt","oldv","os","Strings","revStrings","cellregex","rowregex","isregex","refregex","match_v","match_f","sdata","cells","cref","tagr","tagc","sstr","ftag","do_format","cf","arrayf","sharedf","rowobj","rowrite","marr","marrlen","xlen","rstarti","outa","ht","rslice","cellFormula","xlfn","___f","_tag","xlmeta","_r","write_ws_xml_data","params","height","_cell","customHeight","write_ws_xml","xmlns:r","sidx","rdata","_drawing","sheetFormat","defaultRowHeight","baseColWidth","outlineLevelRow","relc","ignoreEC","numberStoredAsText","sqref","r:id","parse_Cache","num","nf","parse_chart","csheet","nc","cache","parse_cs_xml","!drawel","!rel","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","dn","wbnsregex","parse_wb_xml","AppVersion","dname","dnstart","xml_wb","Hidden","Comment","localSheetId","write_wb_xml","write_names","workbookPr","sheetId","parse_wb","parse_wb_bin","parse_ws","parse_ws_bin","parse_cs","parse_cs_bin","parse_ms","parse_ds","parse_sty","parse_sty_bin","parse_sst","parse_sst_bin","parse_cmnt","parse_comments_bin","parse_cc","parse_cc_bin","parse_cc_xml","parse_xlink","parse_xlmeta","parse_xlmeta_bin","html_to_sheet","mtch2","hd","midx","colspan","rowspan","_t","make_html_row","editable","HTML_BEGIN","HTML_END","html_to_workbook","book_new","book_append_sheet","make_html_preamble","sheet_to_html","sheet_add_dom","tagName","or_R","or_C","is_dom_element_hidden","display","elts","hasAttribute","getAttribute","innerHTML","Aelts","getElementsByTagName","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","parse_ods_styles","_nfm","number_format_map","lastIndex","NFtag","tNF","etpos","infmt","parse_content_xml","nfidx","pidx","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","baddate","rptR","rpt","xlmlidx","styletag","nrange","ptp","bookSheets","parse_ods","Styles","parse_fods","write_styles_ods","master_styles","xmlns:office","xmlns:table","xmlns:style","xmlns:text","xmlns:draw","xmlns:fo","xmlns:xlink","xmlns:number","xmlns:svg","xmlns:of","office:version","wso","write_number_format_ods","nopts","style:name","number:min-integer-digits","number:min-numerator-digits","number:max-denominator-value","number:denominator-value","number:decimal-places","number:min-decimal-places","has_time","np","write_names_ods","scoped","odsref","table:name","table:cell-range-address","table:base-cell-address","write_content_ods","write_text_p","null_cell_xml","covered_cell_xml","write_ws","nfs","mi","ods","ROWS","skip","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","nfi","wcx","attr","xmlns:meta","xmlns:presentation","xmlns:chart","xmlns:dr3d","xmlns:math","xmlns:form","xmlns:script","xmlns:ooo","xmlns:ooow","xmlns:oooc","xmlns:dom","xmlns:xforms","xmlns:sheet","xmlns:rpt","xmlns:xhtml","xmlns:grddl","xmlns:tableooo","xmlns:drawooo","xmlns:calcext","xmlns:loext","xmlns:field","xmlns:formx","xmlns:css3t","fods","xmlns:config","office:mimetype","write_ods","fix_opts_func","fix_opts","fix_read_opts","fix_write_opts","get_sheet_type","safe_parse_wbrels","wbrels","pwbr","strRelID","safe_parse_sheet","relsPath","sheetRels","stype","dfile","drelsp","draw","chartp","crelsp","tcomments","strip_front_slash","parse_numbers_iwa","_zip","index_zip","Bun","readSync","entries","dir","binname","bookProps","link","propdata","pluck","Custprops","deps","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Directory","Deps","bookFiles","bookVBA","bin","parse_xlsxcfb","parse_DataSpaceVersionInfo","dsm","parse_DataSpaceMap","comps","seds","parse_DataSpaceDefinition","parse_Primary","einfo","parse_EncryptionInfo","decrypt_agile","decrypt_std76","write_zip_xlsb","foo","vbafmt","General","_sn","_i","wsrels","_type","write_ws_bin","need_vml","write_comments_bin","rId1","write_sst_bin","write_wb_bin","write_sty_bin","write_xlmeta_bin","write_zip_xlsx","needtc","read_cfb","parse_xlscfb","read_zip","read_plaintext","main","parse_xlml","read_plaintext_raw","read_utf16","bstrify","read_prn","ab","vu","WK_","rtf_to_workbook","write_cfb_ctr","write_numbers_iwa","write_zip_type","write_zip_denouement","write_zip_typeXLSX","oopts","ftype","nodebuffer","string","generate","encrypt_agile","write_cfb_type","write_xlscfb","write_string_type","bom","write_stxt_type","write_binary_type","writeSyncXLSX","writeSync","write_xlml","sheet_to_txt","sheet_to_csv","sheet_to_rtf","sheet_to_wk1","book_to_wk3","write_biff_buf","resolve_book_type","_BT","xls","slk","socialcalc","Sh33tJS","writeFileSyncXLSX","writeFileAsync","_cb","Function","make_json_row","hdr","defval","isempty","defineProperty","enumerable","__rowNum__","rawNumbers","outi","counter","header_cnt","skipHidden","blankrows","qreg","make_csv_row","txt","forceQuotes","endregex","strip","sheet_to_formulae","cmds","sheet_add_json","js","skipHeader","ROW","JS","json_to_sheet","ws_get_cell_stub","RC","wb_sheet_idx","sh","roll","book_set_sheet_visibility","vis","cell_set_number_format","cell_set_hyperlink","cell_set_internal_link","cell_add_comment","sheet_set_array_formula","dynamic","rngstr","wsr","table_to_sheet","sheet_to_row_object_array","sheet_get_cell","SHEET_VISIBLE","SHEET_HIDDEN","SHEET_VERY_HIDDEN","readFile","writeXLSX","writeFileXLSX","__stream","stream","require","strmod","Readable","set_readable","module","define","amd","window"],"mappings":";AAIA,GAAIA,QACJ,SAASC,eAAcD,GACvBA,EAAKE,QAAU,SACf,IAAIC,GAAmB,KAAMC,EAAe,IAE5C,IAAIC,EAEJ,IAAIC,IAAe,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,IAElG,IAAIC,IACJC,EAAM,KACNC,EAAK,MACLC,EAAK,MACLC,GAAK,IACLC,IAAO,IACPC,IAAO,IACPC,IAAM,KACNC,IAAO,IACPC,IAAO,IACPC,IAAM,KACNC,IAAM,KACNC,IAAM,KACNC,IAAM,KACNC,IAAM,KACNC,IAAM,KACNC,IAAM,KACNC,IAAO,IACPC,IAAM,KACNC,IAAM,KACNC,GAAM,KAGN,IAAIC,GAAW,SAASC,GAAM,GAAGvB,EAAWwB,QAAQD,KAAQ,EAAG,MAAQzB,GAAeG,EAAM,GAAKsB,EACjG,SAASE,KAAeH,EAAS,MAEjC,GAAII,GAAS,SAASH,GAAM1B,EAAmB0B,CAAID,GAASC,GAC5D,SAASI,KAAaD,EAAO,KAAOD,KAEpC,QAASG,GAAWC,GAAQ,GAAIC,KAAQ,KAAI,GAAIC,GAAI,EAAGC,EAAMH,EAAKI,OAAQF,EAAIC,IAAOD,EAAGD,EAAEC,GAAKF,EAAKK,WAAWH,EAAI,OAAOD,GAE1H,QAASK,GAAYN,GACpB,GAAIC,KACJ,KAAI,GAAIC,GAAI,EAAGA,EAAKF,EAAKI,QAAQ,IAAMF,EAAGD,EAAEC,GAAKK,OAAOC,aAAaR,EAAKK,WAAW,EAAEH,IAAMF,EAAKK,WAAW,EAAEH,EAAE,IAAI,GACrH,OAAOD,GAAEQ,KAAK,IAEf,QAASC,GAAYV,GACpB,GAAIC,KACJ,KAAI,GAAIC,GAAI,EAAGA,EAAKF,EAAKI,QAAQ,IAAMF,EAAGD,EAAEC,GAAKK,OAAOC,aAAaR,EAAKK,WAAW,EAAEH,EAAE,IAAMF,EAAKK,WAAW,EAAEH,IAAI,GACrH,OAAOD,GAAEQ,KAAK,IAGf,GAAIE,GAAQ,SAASX,GACpB,GAAIY,GAAKZ,EAAKK,WAAW,GAAIQ,EAAKb,EAAKK,WAAW,EAClD,IAAGO,GAAM,KAAQC,GAAM,IAAM,MAAOP,GAAYN,EAAKc,MAAM,GAC3D,IAAGF,GAAM,KAAQC,GAAM,IAAM,MAAOH,GAAYV,EAAKc,MAAM,GAC3D,IAAGF,GAAM,MAAQ,MAAOZ,GAAKc,MAAM,EACnC,OAAOd,GAGR,IAAIe,GAAW,QAASC,IAAKC,GAAK,MAAOV,QAAOC,aAAaS,GAC7D,IAAIC,GAAW,QAASC,IAAKF,GAAK,MAAOV,QAAOC,aAAaS,GAE7D,SAASG,GAAYC,GACpBnD,EAAWmD,CACXxB,GAAS,SAASH,GAAM1B,EAAmB0B,CAAID,GAASC,GACxDiB,GAAQ,SAASX,GAChB,GAAGA,EAAKK,WAAW,KAAO,KAAQL,EAAKK,WAAW,KAAO,IAAM,CAAE,MAAOnC,GAASoD,MAAMC,OAAO,KAAMxB,EAAWC,EAAKc,MAAM,KAC1H,MAAOd,GAERe,GAAW,QAASS,GAAKP,GACxB,GAAGjD,IAAqB,KAAM,MAAOuC,QAAOC,aAAaS,EACzD,OAAO/C,GAASoD,MAAMC,OAAOvD,GAAmBiD,EAAE,IAAIA,GAAG,IAAI,GAE9DC,GAAW,QAASO,GAAKR,GACxB,MAAO/C,GAASoD,MAAMC,OAAOtD,GAAegD,IAAI,GAEjDS,MAED,GAAIC,GAAQ,IACZ,IAAIC,GAAS,IACb,IAAIC,GAAa,mEACjB,SAASC,GAAcC,GACrB,GAAI9B,GAAI,EACR,IAAIW,GAAK,EAAGC,EAAK,EAAGmB,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,CACzD,KAAK,GAAIlC,GAAI,EAAGA,EAAI6B,EAAM3B,QAAU,CAClCQ,EAAKmB,EAAM1B,WAAWH,IACtB+B,GAAKrB,GAAM,CACXC,GAAKkB,EAAM1B,WAAWH,IACtBgC,IAAMtB,EAAK,IAAM,EAAIC,GAAM,CAC3BmB,GAAKD,EAAM1B,WAAWH,IACtBiC,IAAMtB,EAAK,KAAO,EAAImB,GAAM,CAC5BI,GAAKJ,EAAK,EACV,IAAIK,MAAMxB,GAAK,CACbsB,EAAKC,EAAK,OACL,IAAIC,MAAML,GAAK,CACpBI,EAAK,GAEPnC,GAAK4B,EAAWS,OAAOL,GAAMJ,EAAWS,OAAOJ,GAAML,EAAWS,OAAOH,GAAMN,EAAWS,OAAOF,GAEjG,MAAOnC,GAET,QAASsC,GAAmBR,GAC1B,GAAI9B,GAAI,EACR,IAAIW,GAAK,EAAGC,EAAK,EAAGmB,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,CACzD,KAAK,GAAIlC,GAAI,EAAGA,EAAI6B,EAAM3B,QAAU,CAClCQ,EAAKmB,EAAM1B,WAAWH,IACtB,IAAIU,EAAK,IACPA,EAAK,EACPqB,GAAKrB,GAAM,CACXC,GAAKkB,EAAM1B,WAAWH,IACtB,IAAIW,EAAK,IACPA,EAAK,EACPqB,IAAMtB,EAAK,IAAM,EAAIC,GAAM,CAC3BmB,GAAKD,EAAM1B,WAAWH,IACtB,IAAI8B,EAAK,IACPA,EAAK,EACPG,IAAMtB,EAAK,KAAO,EAAImB,GAAM,CAC5BI,GAAKJ,EAAK,EACV,IAAIK,MAAMxB,GAAK,CACbsB,EAAKC,EAAK,OACL,IAAIC,MAAML,GAAK,CACpBI,EAAK,GAEPnC,GAAK4B,EAAWS,OAAOL,GAAMJ,EAAWS,OAAOJ,GAAML,EAAWS,OAAOH,GAAMN,EAAWS,OAAOF,GAEjG,MAAOnC,GAET,QAASuC,GAAcT,GACrB,GAAI9B,GAAI,EACR,IAAIW,GAAK,EAAGC,EAAK,EAAGmB,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,CACzDL,GAAQA,EAAMU,QAAQ,mCAAoC,IAAIA,QAAQ,eAAgB,GACtF,KAAK,GAAIvC,GAAI,EAAGA,EAAI6B,EAAM3B,QAAU,CAClC6B,EAAKJ,EAAWlC,QAAQoC,EAAMO,OAAOpC,KACrCgC,GAAKL,EAAWlC,QAAQoC,EAAMO,OAAOpC,KACrCU,GAAKqB,GAAM,EAAIC,GAAM,CACrBjC,IAAKM,OAAOC,aAAaI,EACzBuB,GAAKN,EAAWlC,QAAQoC,EAAMO,OAAOpC,KACrCW,IAAMqB,EAAK,KAAO,EAAIC,GAAM,CAC5B,IAAIA,IAAO,GAAI,CACblC,GAAKM,OAAOC,aAAaK,GAE3BuB,EAAKP,EAAWlC,QAAQoC,EAAMO,OAAOpC,KACrC8B,IAAMG,EAAK,IAAM,EAAIC,CACrB,IAAIA,IAAO,GAAI,CACbnC,GAAKM,OAAOC,aAAawB,IAG7B,MAAO/B,GAET,GAAIyC,GAAU,WAAc,aAAcC,UAAW,mBAAsBC,aAAc,wBAA+B,kBAAsBC,OAE9I,IAAIC,GAAc,WACjB,SAAUH,UAAW,YAAa,CACjC,GAAII,IAAQJ,OAAOK,IACnB,KAAID,EAAM,IAAMJ,OAAOK,KAAK,MAAO,QAAW,MAAMC,GAAKF,EAAO,KAChE,MAAOA,GAAO,SAASG,EAAKC,GAAO,MAAO,GAAQ,GAAIR,QAAOO,EAAKC,GAAO,GAAIR,QAAOO,IAAUP,OAAOK,KAAKI,KAAKT,QAEhH,MAAO,gBAER,IAAIU,GAAc,WACjB,SAAUV,UAAW,YAAa,MAAO,MACzC,IAAI1B,GAAI6B,GAAa,GAAG,GACxB,KAAI7B,EAAG,MAAO,MACd,IAAIhB,GAAIgB,EAAEqC,SAAS,UACnB,OAAOrD,GAAEG,QAAU,IAIpB,SAASmD,GAAYpD,GAEpB,GAAGuC,EAAS,MAAOC,QAAOa,MAAQb,OAAOa,MAAMrD,GAAO,GAAIwC,QAAOxC,EACjE,cAAcsD,aAAc,YAAc,GAAIA,YAAWtD,GAAO,GAAIuD,OAAMvD,GAI3E,QAASwD,GAAexD,GAEvB,GAAGuC,EAAS,MAAOC,QAAOiB,YAAcjB,OAAOiB,YAAYzD,GAAO,GAAIwC,QAAOxC,EAC7E,cAAcsD,aAAc,YAAc,GAAIA,YAAWtD,GAAO,GAAIuD,OAAMvD,GAI3E,GAAI0D,GAAM,QAASA,IAAIC,GACtB,GAAGpB,EAAS,MAAOI,GAAYgB,EAAG,SAClC,OAAOA,GAAEC,MAAM,IAAIC,IAAI,SAAS/C,GAAI,MAAOA,GAAEZ,WAAW,GAAK,MAG9D,SAAS4D,GAAKH,GACb,SAAUI,eAAgB,YAAa,MAAOL,GAAIC,EAClD,IAAIZ,GAAM,GAAIgB,aAAYJ,EAAE1D,QAAS+D,EAAO,GAAIV,YAAWP,EAC3D,KAAK,GAAIhD,GAAE,EAAGA,GAAG4D,EAAE1D,SAAUF,EAAGiE,EAAKjE,GAAK4D,EAAEzD,WAAWH,GAAK,GAC5D,OAAOgD,GAGR,QAASkB,GAAIpE,GACZ,GAAG0D,MAAMW,QAAQrE,GAAO,MAAOA,GAAKgE,IAAI,SAASM,GAAK,MAAO/D,QAAOC,aAAa8D,KAAO7D,KAAK,GAC7F,IAAIR,KAAQ,KAAI,GAAIC,GAAI,EAAGA,EAAIF,EAAKI,SAAUF,EAAGD,EAAEC,GAAKK,OAAOC,aAAaR,EAAKE,GAAK,OAAOD,GAAEQ,KAAK,IAGrG,QAAS8D,GAAIvE,GACZ,SAAUyD,cAAe,YAAa,KAAM,IAAIe,OAAM,cACtD,OAAO,IAAIf,YAAWzD,GAGvB,QAASyE,GAAKzE,GACb,SAAUkE,cAAe,YAAa,KAAM,IAAIM,OAAM,cACtD,IAAGxE,YAAgBkE,aAAa,MAAOO,GAAK,GAAIhB,YAAWzD,GAC5D,IAAIC,GAAI,GAAIyD,OAAM1D,EAAKI,OACtB,KAAI,GAAIF,GAAI,EAAGA,EAAIF,EAAKI,SAAUF,EAAGD,EAAEC,GAAKF,EAAKE,EACjD,OAAOD,GAGR,GAAIyE,GAAUhC,EAAU,SAASiC,GAAQ,MAAOhC,QAAOiC,OAAOD,EAAKX,IAAI,SAASd,GAAO,MAAOP,QAAOkC,SAAS3B,GAAOA,EAAMJ,EAAYI,OAAe,SAASyB,GAC9J,SAAUlB,cAAe,YAAa,CACrC,GAAIvD,GAAI,EAAG4E,EAAS,CACpB,KAAI5E,EAAI,EAAGA,EAAIyE,EAAKvE,SAAUF,EAAG4E,GAAUH,EAAKzE,GAAGE,MACnD,IAAIH,GAAI,GAAIwD,YAAWqB,EACvB,IAAI3E,GAAM,CACV,KAAID,EAAI,EAAG4E,EAAS,EAAG5E,EAAIyE,EAAKvE,OAAQ0E,GAAU3E,IAAOD,EAAG,CAC3DC,EAAMwE,EAAKzE,GAAGE,MACd,IAAGuE,EAAKzE,YAAcuD,YAAYxD,EAAE8E,IAAIJ,EAAKzE,GAAI4E,OAC5C,UAAUH,GAAKzE,IAAM,SAAUD,EAAE8E,IAAI,GAAItB,YAAWI,EAAIc,EAAKzE,KAAM4E,OACnE7E,GAAE8E,IAAI,GAAItB,YAAWkB,EAAKzE,IAAK4E,GAErC,MAAO7E,GAER,SAAU2E,OAAOI,SAAUL,EAAKX,IAAI,SAASd,GAAO,MAAOQ,OAAMW,QAAQnB,GAAOA,KAASpC,MAAMmE,KAAK/B,MAGrG,SAASgC,GAAWC,GACnB,GAAIC,MAAUC,EAAO,EAAGC,EAAIH,EAAQ/E,OAAS,GAC7C,IAAIH,GAAIsD,EAAY4B,EAAQ/E,OAAS,IACrC,KAAI,GAAImF,GAAO,EAAGA,EAAOJ,EAAQ/E,SAAUmF,EAAM,CAChD,GAAIjB,GAAIa,EAAQ9E,WAAWkF,EAC3B,IAAGjB,EAAI,IAAMrE,EAAEoF,KAAUf,MACpB,IAAGA,EAAI,KAAO,CAClBrE,EAAEoF,KAAW,IAAMf,GAAG,EAAG,EACzBrE,GAAEoF,KAAW,IAAKf,EAAE,OACd,IAAGA,GAAK,OAAUA,EAAI,MAAQ,CACpCA,GAAKA,EAAE,MAAM,EACb,IAAIkB,GAAIL,EAAQ9E,aAAakF,GAAM,IACnCtF,GAAEoF,KAAW,IAAMf,GAAG,EAAG,CACzBrE,GAAEoF,KAAW,IAAMf,GAAG,EAAG,EACzBrE,GAAEoF,KAAW,IAAMG,GAAG,EAAG,IAAMlB,EAAE,IAAI,CACrCrE,GAAEoF,KAAW,IAAKG,EAAE,OACd,CACNvF,EAAEoF,KAAW,IAAMf,GAAG,GAAI,EAC1BrE,GAAEoF,KAAW,IAAMf,GAAG,EAAG,EACzBrE,GAAEoF,KAAW,IAAKf,EAAE,GAErB,GAAGe,EAAOC,EAAG,CACZF,EAAIK,KAAKxF,EAAEa,MAAM,EAAGuE,GACpBA,GAAO,CACPpF,GAAIsD,EAAY,MAChB+B,GAAI,OAGNF,EAAIK,KAAKxF,EAAEa,MAAM,EAAGuE,GACpB,OAAOX,GAAQU,GAGhB,GAAIM,GAAO,UAAWC,EAAO,kBAG7B,SAASC,GAAQ3E,GAAK,GAAIhB,GAAI,GAAIC,EAAIe,EAAEb,OAAO,CAAG,OAAMF,GAAG,EAAGD,GAAKgB,EAAEqB,OAAOpC,IAAM,OAAOD,GACzF,QAAS4F,GAAKC,EAAEN,GAAG,GAAIO,GAAE,GAAGD,CAAG,OAAOC,GAAE3F,QAAQoF,EAAEO,EAAEC,GAAK,IAAIR,EAAEO,EAAE3F,QAAQ2F,EACzE,QAASE,GAAKH,EAAEN,GAAG,GAAIO,GAAE,GAAGD,CAAE,OAAOC,GAAE3F,QAAQoF,EAAEO,EAAEC,GAAK,IAAIR,EAAEO,EAAE3F,QAAQ2F,EACxE,QAASG,GAAMJ,EAAEN,GAAG,GAAIO,GAAE,GAAGD,CAAG,OAAOC,GAAE3F,QAAQoF,EAAEO,EAAEA,EAAEC,GAAK,IAAIR,EAAEO,EAAE3F,QACpE,QAAS+F,GAAOL,EAAEN,GAAG,GAAIO,GAAE,GAAGK,KAAKC,MAAMP,EAAI,OAAOC,GAAE3F,QAAQoF,EAAEO,EAAEC,GAAK,IAAIR,EAAEO,EAAE3F,QAAQ2F,EACvF,QAASO,GAAOR,EAAEN,GAAG,GAAIO,GAAE,GAAGD,CAAG,OAAOC,GAAE3F,QAAQoF,EAAEO,EAAEC,GAAK,IAAIR,EAAEO,EAAE3F,QAAQ2F,EAC3E,GAAIQ,GAAQH,KAAKI,IAAI,EAAE,GACvB,SAASC,GAAMX,EAAEN,GAAG,GAAGM,EAAES,GAAOT,GAAGS,EAAO,MAAOJ,GAAOL,EAAEN,EAAI,IAAItF,GAAIkG,KAAKC,MAAMP,EAAI,OAAOQ,GAAOpG,EAAEsF,GAErG,QAASkB,GAAc5C,EAAG5D,GAAKA,EAAIA,GAAK,CAAG,OAAO4D,GAAE1D,QAAU,EAAIF,IAAM4D,EAAEzD,WAAWH,GAAG,MAAQ,MAAQ4D,EAAEzD,WAAWH,EAAE,GAAG,MAAQ,MAAQ4D,EAAEzD,WAAWH,EAAE,GAAG,MAAQ,MAAQ4D,EAAEzD,WAAWH,EAAE,GAAG,MAAQ,MAAQ4D,EAAEzD,WAAWH,EAAE,GAAG,MAAQ,MAAQ4D,EAAEzD,WAAWH,EAAE,GAAG,MAAQ,KAAO4D,EAAEzD,WAAWH,EAAE,GAAG,MAAQ,IAC3S,GAAIyG,KACF,MAAO,WACP,MAAO,WACP,MAAO,YACP,MAAO,cACP,MAAO,aACP,MAAO,WACP,MAAO,YAET,IAAIC,KACF,IAAK,MAAO,YACZ,IAAK,MAAO,aACZ,IAAK,MAAO,UACZ,IAAK,MAAO,UACZ,IAAK,MAAO,QACZ,IAAK,MAAO,SACZ,IAAK,MAAO,SACZ,IAAK,MAAO,WACZ,IAAK,MAAO,cACZ,IAAK,MAAO,YACZ,IAAK,MAAO,aACZ,IAAK,MAAO,YAEd,SAASC,GAAed,GACvB,IAAIA,EAAGA,IACPA,GAAE,GAAK,SACPA,GAAE,GAAK,GACPA,GAAE,GAAK,MACPA,GAAE,GAAK,OACPA,GAAE,GAAK,UACPA,GAAE,GAAK,IACPA,GAAE,IAAK,OACPA,GAAE,IAAK,UACPA,GAAE,IAAK,OACPA,GAAE,IAAK,SACPA,GAAE,IAAK,QACPA,GAAE,IAAK,UACPA,GAAE,IAAK,OACPA,GAAE,IAAK,QACPA,GAAE,IAAK,YACPA,GAAE,IAAK,eACPA,GAAE,IAAK,MACPA,GAAE,IAAK,SACPA,GAAE,IAAK,aACPA,GAAE,IAAK,gBACPA,GAAE,IAAK,qBACPA,GAAE,IAAK,qBACPA,GAAE,IAAK,0BACPA,GAAE,IAAK,OACPA,GAAE,IAAK,WACPA,GAAE,IAAK,QACPA,GAAE,IAAK,UACPA,GAAE,IAAK,GACPA,GAAE,IAAK,0BACP,OAAOA,GAGR,GAAIe,IACHzI,EAAI,UACJC,EAAI,IACJC,EAAI,OACJwI,EAAI,QACJC,EAAI,WACJC,EAAI,KACJC,GAAI,QACJC,GAAI,WACJC,GAAI,QACJC,GAAI,UACJC,GAAI,SACJC,GAAI,WACJC,GAAI,QACJC,GAAI,SACJC,GAAI,aACJC,GAAI,gBACJC,GAAI,OACJC,GAAI,UACJC,GAAI,cACJC,GAAI,iBACJC,GAAI,sBACJC,GAAI,sBACJC,GAAI,2BACJC,GAAI,QACJC,GAAI,YACJC,GAAI,SACJC,GAAI,WACJC,GAAI,IACJC,GAAI,2BAML,IAAIC,IACHC,EAAI,GAAIC,EAAI,GAAIC,EAAI,GAAIC,EAAI,GAE5BC,GAAK,EAAGC,GAAK,EAAGC,GAAK,EAAGC,GAAK,EAE7BC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAEpCC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GACpCC,GAAI,GAAIpB,GAAI,GAAIqB,GAAI,GAAIC,GAAI,GAC5BC,GAAK,EAAGC,GAAK,EAAGC,GAAK,EAAGC,GAAK,EAE7BC,GAAK,EAAGC,GAAI,GACZ5K,GAAI,GAAI6K,GAAI,GAAIC,GAAI,GACpBC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GAC5BC,GAAI,GAAInM,GAAI,GAAIoM,GAAI,GACpBC,GAAI,GAAIC,GAAI,GAAIC,GAAI,GACpBC,GAAI,EAKL,IAAIC,IAEHvC,EAAI,4BACJwC,GAAI,4BAGJvC,EAAI,iCACJwC,GAAI,iCAGJvC,EAAI,kCACJwC,GAAI,kCAGJvC,EAAI,uCACJwC,GAAI,uCAGJC,GAAI,8CAGJC,GAAI,uDAGJC,GAAI,sDAGJC,GAAI,+DAGL,SAASC,GAASzK,EAAG0K,EAAGC,GACvB,GAAIC,GAAM5K,EAAI,GAAK,EAAI,CACvB,IAAI6K,GAAI7K,EAAI4K,CACZ,IAAIE,GAAM,EAAGC,EAAM,EAAGC,EAAI,CAC1B,IAAIC,GAAM,EAAGC,EAAM,EAAGC,EAAI,CAC1B,IAAIC,GAAIjG,KAAKkG,MAAMR,EACnB,OAAMK,EAAMR,EAAG,CACdU,EAAIjG,KAAKkG,MAAMR,EACfG,GAAII,EAAIL,EAAMD,CACdK,GAAIC,EAAIF,EAAMD,CACd,IAAIJ,EAAIO,EAAK,KAAY,KACzBP,GAAI,GAAKA,EAAIO,EACbN,GAAMC,CAAKA,GAAMC,CACjBC,GAAMC,CAAKA,GAAMC,EAElB,GAAGA,EAAIT,EAAG,CAAE,GAAGQ,EAAMR,EAAG,CAAES,EAAIF,CAAKD,GAAIF,MAAY,CAAEK,EAAID,CAAKF,GAAID,GAClE,IAAIJ,EAAO,OAAQ,EAAGC,EAAMI,EAAGG,EAC/B,IAAIG,GAAInG,KAAKkG,MAAMT,EAAMI,EAAEG,EAC3B,QAAQG,EAAGV,EAAII,EAAIM,EAAEH,EAAGA,GAEzB,QAASI,IAAoB1G,EAAE2G,EAAKC,GACnC,GAAG5G,EAAI,SAAWA,EAAI,EAAG,MAAO,KAChC,IAAI6G,GAAQ7G,EAAE,EAAI8G,EAAOxG,KAAKkG,MAAM,OAASxG,EAAI6G,IAAQE,EAAI,CAC7D,IAAIC,KACJ,IAAI1H,IAAKuG,EAAEgB,EAAMI,EAAEH,EAAMI,EAAE,OAAOlH,EAAE6G,GAAMC,EAAKK,EAAE,EAAEC,EAAE,EAAE1H,EAAE,EAAE2H,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEd,EAAE,EACzE,IAAGnG,KAAKkH,IAAIlI,EAAI4H,GAAK,KAAM5H,EAAI4H,EAAI,CACnC,IAAGP,GAAQA,EAAKc,SAAUZ,GAAQ,IAClC,IAAGvH,EAAI4H,EAAI,MAAQ,CAClB5H,EAAI4H,EAAI,CACR,MAAKJ,GAAQ,MAAO,CAAExH,EAAI2H,EAAIH,EAAO,IAAKD,IAAQvH,EAAIuG,GAEvD,GAAGgB,IAAS,GAAI,CAACG,EAAOJ,GAAM,KAAK,GAAG,KAAO,KAAK,EAAE,GAAKG,GAAI,MACxD,IAAGF,IAAS,EAAG,CAACG,EAAOJ,GAAM,KAAK,EAAE,KAAO,KAAK,EAAE,EAAIG,GAAI,MAC1D,CACJ,GAAGF,EAAO,KAAMA,CAEhB,IAAInH,GAAI,GAAIgI,MAAK,KAAM,EAAG,EAC1BhI,GAAEiI,QAAQjI,EAAEkI,UAAYf,EAAO,EAC/BG,IAAQtH,EAAEmI,cAAenI,EAAEoI,WAAW,EAAEpI,EAAEkI,UAC1Cb,GAAMrH,EAAEqI,QACR,IAAGlB,EAAO,GAAIE,GAAOA,EAAM,GAAK,CAChC,IAAGH,EAAIG,EAAMiB,GAActI,EAAGsH,GAE/B1H,EAAI6H,EAAIH,EAAK,EAAI1H,GAAI8H,EAAIJ,EAAK,EAAI1H,GAAII,EAAIsH,EAAK,EAC/C1H,GAAIiI,EAAIT,EAAO,EAAIA,GAAOxG,KAAKkG,MAAMM,EAAO,GAC5CxH,GAAIgI,EAAIR,EAAO,EAAIA,GAAOxG,KAAKkG,MAAMM,EAAO,GAC5CxH,GAAI+H,EAAIP,CACRxH,GAAImH,EAAIM,CACR,OAAOzH,GAER,GAAI2I,IAAc,GAAIP,MAAK,KAAM,GAAI,GAAI,EAAG,EAAG,EAC/C,IAAIQ,IAAcD,GAAYE,SAC9B,IAAIC,IAAc,GAAIV,MAAK,KAAM,EAAG,EAAG,EAAG,EAAG,EAC7C,SAASW,IAAcrI,EAAGyH,GACzB,GAAIa,GAAQtI,EAAEmI,SACd,IAAGV,EAAUa,GAAS,KAAK,GAAG,GAAG,GAAG,QAC/B,IAAGtI,GAAKoI,GAAaE,GAAS,GAAG,GAAG,GAAG,GAC5C,QAAQA,GAASJ,IAAelI,EAAEuI,oBAAsBN,GAAYM,qBAAuB,OAAW,GAAK,GAAK,GAAK,KAKtH,QAASC,IAAkBrO,GAC1B,MAAQA,GAAEN,QAAQ,OAAS,EAAKM,EAAIA,EAAEwC,QAAQ,2BAA4B,MAI3E,QAAS8L,IAAkBtO,GAC1B,GAAGA,EAAEN,QAAQ,OAAS,EAAG,MAAOM,EAChC,OAAOA,GAAEwC,QAAQ,8BAA8B,OAAOA,QAAQ,eAAe,SAI9E,QAAS+L,IAAc1I,GACtB,GAAI2I,GAAK3I,EAAE,EAAE,GAAG,EAChB,IAAI7F,GAAIqO,GAAkBxI,EAAE4I,QAAQ,IAAM,IAAGzO,EAAEG,QAAUqO,EAAG,MAAOxO,EACnEA,GAAI6F,EAAE6I,YAAY,GAAK,IAAG1O,EAAEG,QAAUqO,EAAG,MAAOxO,EAChD,OAAO6F,GAAE8I,cAAc,GAIxB,QAASC,IAAc/I,GACtB,GAAI7F,GAAIqO,GAAkBxI,EAAE4I,QAAQ,IACpC,OAAQzO,GAAEG,QAAU0F,EAAE,EAAE,GAAG,KAAO7F,IAAM,KAAOA,IAAM,KAAQ6F,EAAE6I,YAAY,GAAK1O,EAGjF,QAAS6O,IAAgBhJ,GACxB,GAAIiJ,GAAI3I,KAAKkG,MAAMlG,KAAK4I,IAAI5I,KAAKkH,IAAIxH,IAAIM,KAAK6I,QAAShP,CAEvD,IAAG8O,IAAM,GAAKA,IAAM,EAAG9O,EAAI6F,EAAE6I,YAAY,GAAGI,OACvC,IAAG3I,KAAKkH,IAAIyB,IAAM,EAAG9O,EAAIuO,GAAc1I,OACvC,IAAGiJ,IAAM,GAAI9O,EAAI6F,EAAE4I,QAAQ,IAAIQ,OAAO,EAAE,QACxCjP,GAAI4O,GAAc/I,EAEvB,OAAOwI,IAAkBC,GAAkBtO,EAAEkP,gBAc9C,QAASC,IAAYtJ,EAAG2G,GACvB,aAAc3G,IACb,IAAK,SAAU,MAAOA,GACtB,IAAK,UAAW,MAAOA,GAAI,OAAS,QACpC,IAAK,SAAU,OAAQA,EAAE,KAAOA,EAAIA,EAAExC,SAAS,IAAMwL,GAAgBhJ,GACrE,IAAK,YAAa,MAAO,GACzB,IAAK,SACJ,GAAGA,GAAK,KAAM,MAAO,EACrB,IAAGA,YAAa0H,MAAM,MAAO6B,IAAW,GAAIlB,GAAcrI,EAAG2G,GAAQA,EAAKc,UAAWd,IAEvF,KAAM,IAAIjI,OAAM,wCAA0CsB,GAG3D,QAASgI,IAAcnB,EAAM1M,GAE3BA,EAAE,IAAM,GACR,IAAI4M,GAAMF,EAAKkB,QACf,IAAGlB,EAAO,GAAIE,GAAOA,EAAM,GAAK,CAChC,OAAOA,GAGT,QAASyC,IAAeC,EAAMC,EAAKC,EAAKC,GACvC,GAAIzP,GAAE,GAAI0P,EAAG,EAAGC,EAAG,EAAG3C,EAAIwC,EAAIxC,EAAG7H,EAAKyK,EAAO,CAC7C,QAAON,GACN,IAAK,IACJtC,EAAIwC,EAAIxC,EAAI,IAEb,IAAK,KACL,OAAOuC,EAAIpP,QACV,IAAK,IAAG,IAAK,GAAGgF,EAAM6H,EAAI,GAAK4C,GAAO,CAAG,OACzC,QAASzK,EAAM6H,EAAI,GAAO4C,GAAO,CAAG,QACnC,MACF,IAAK,KACL,OAAOL,EAAIpP,QACV,IAAK,IAAG,IAAK,GAAGgF,EAAMqK,EAAIvC,CAAG2C,GAAOL,EAAIpP,MAAQ,OAChD,IAAK,GAAG,MAAOwG,GAAO6I,EAAIvC,EAAE,GAAG,GAC/B,IAAK,GAAG,MAAOtG,GAAO6I,EAAIvC,EAAE,GAAG,GAC/B,QAAS,MAAOtG,GAAO6I,EAAIvC,EAAE,GAAG,IAC/B,MACF,IAAK,KACL,OAAOsC,EAAIpP,QACV,IAAK,IAAG,IAAK,GAAGgF,EAAMqK,EAAIjK,CAAGqK,GAAOL,EAAIpP,MAAQ,OAChD,IAAK,GAAG,MAAOuG,GAAK8I,EAAIlD,GAAG,GAC3B,QAAS,MAAO5F,GAAK8I,EAAIlD,GAAG,IAC3B,MACF,IAAK,KACL,OAAOiD,EAAIpP,QACV,IAAK,IAAG,IAAK,GAAGgF,EAAM,GAAGqK,EAAItC,EAAE,IAAI,EAAI0C,GAAOL,EAAIpP,MAAQ,OAC1D,QAAS,KAAM,oBAAsBoP,GACpC,MACF,IAAK,IACL,OAAOA,EAAIpP,QACV,IAAK,IAAG,IAAK,GAAGgF,EAAMqK,EAAItC,CAAG0C,GAAOL,EAAIpP,MAAQ,OAChD,QAAS,KAAM,oBAAsBoP,GACpC,MACF,IAAK,IACL,OAAOA,EAAIpP,QACV,IAAK,IAAG,IAAK,GAAGgF,EAAMqK,EAAIrC,CAAGyC,GAAOL,EAAIpP,MAAQ,OAChD,QAAS,KAAM,sBAAwBoP,GACtC,MACF,IAAK,KACJ,GAAGA,GAAO,KAAOA,GAAO,MAAQA,GAAO,MAAQA,GAAO,OAASA,GAAO,OAAQ,KAAM,sBAAwBA,CAC5G,IAAGC,EAAIzC,IAAM,IAAMwC,GAAO,KAAOA,GAAO,MAAO,MAAO3J,GAAK4J,EAAIpC,EAAGmC,EAAIpP,OACzE,IAAGsP,GAAO,EAAGE,EAAKF,IAAQ,EAAI,IAAO,QAC7BE,GAAKF,IAAQ,EAAI,GAAK,CAC3BC,GAAKvJ,KAAKC,MAAM,GAAMoJ,EAAIpC,EAAIoC,EAAIzC,GAClC,IAAG2C,GAAM,GAAGC,EAAID,EAAK,CACrB,IAAGH,IAAQ,IAAK,MAAOG,KAAO,EAAI,IAAM,GAAGA,EAAGC,CAC9C3P,GAAI4F,EAAK8J,EAAG,EAAID,EAChB,IAAGF,IAAQ,KAAM,MAAOvP,GAAEiP,OAAO,EAAE,EACnC,OAAO,IAAMjP,EAAEiP,OAAO,EAAEM,EAAIpP,OAAO,GACpC,IAAK,IACL,OAAOoP,GACN,IAAK,OAAO,IAAK,OAAQpK,EAAMqK,EAAI9D,EAAE,GAAG8D,EAAItC,CAAG,OAC/C,IAAK,OAAO,IAAK,OAAQ/H,GAAOqK,EAAI9D,EAAE,GAAG8D,EAAItC,GAAG,GAAGsC,EAAIrC,CAAG,OAC1D,IAAK,OAAO,IAAK,OAAQhI,IAAQqK,EAAI9D,EAAE,GAAG8D,EAAItC,GAAG,GAAGsC,EAAIrC,GAAG,GAAGhH,KAAKC,MAAMoJ,EAAIpC,EAAEoC,EAAIzC,EAAI,OACvF,QAAS,KAAM,uBAAyBwC,GACvCK,EAAOL,EAAIpP,SAAW,EAAI,EAAI,CAAG,OACnC,IAAK,KACJgF,EAAM6H,CAAG4C,GAAO,CAAG,QAErB,GAAIC,GAASD,EAAO,EAAIhK,EAAKT,EAAKyK,GAAQ,EAC1C,OAAOC,GAMR,QAASC,IAASjM,GACjB,GAAI2K,GAAI,CACR,IAAG3K,EAAE1D,QAAUqO,EAAG,MAAO3K,EACzB,IAAIkM,GAAKlM,EAAE1D,OAASqO,EAAIxO,EAAI6D,EAAEoL,OAAO,EAAEc,EACvC,MAAMA,GAAGlM,EAAE1D,OAAQ4P,GAAGvB,EAAGxO,IAAIA,EAAEG,OAAS,EAAI,IAAM,IAAM0D,EAAEoL,OAAOc,EAAEvB,EACnE,OAAOxO,GAER,GAAIgQ,IAAO,IACX,SAASC,IAAcX,EAAMC,EAAKC,GACjC,GAAIU,GAAOX,EAAI/M,QAAQwN,GAAK,IAAKG,EAAMZ,EAAIpP,OAAS+P,EAAK/P,MACzD,OAAOiQ,IAAUd,EAAMY,EAAMV,EAAMrJ,KAAKI,IAAI,GAAG,EAAE4J,IAAQpK,GAAK,IAAIoK,GAGnE,QAASE,IAAaf,EAAMC,EAAKC,GAChC,GAAIc,GAAMf,EAAIpP,OAAS,CACvB,OAAMoP,EAAInP,WAAWkQ,EAAI,KAAO,KAAMA,CACtC,OAAOF,IAAUd,EAAMC,EAAIN,OAAO,EAAEqB,GAAMd,EAAMrJ,KAAKI,IAAI,GAAG,GAAGgJ,EAAIpP,OAAOmQ,KAG3E,QAASC,IAAchB,EAAKC,GAC3B,GAAIxP,EACJ,IAAIsQ,GAAMf,EAAI7P,QAAQ,KAAO6P,EAAI7P,QAAQ,KAAO,CAChD,IAAG6P,EAAIiB,MAAM,eAAgB,CAC5B,GAAGhB,GAAO,EAAG,MAAO,aACf,IAAGA,EAAM,EAAG,MAAO,IAAMe,GAAchB,GAAMC,EAClD,IAAIiB,GAASlB,EAAI7P,QAAQ,IAAM,IAAG+Q,KAAY,EAAGA,EAAOlB,EAAI7P,QAAQ,IACpE,IAAIgR,GAAKvK,KAAKkG,MAAMlG,KAAK4I,IAAIS,GAAKrJ,KAAK6I,QAAQyB,CAC/C,IAAGC,EAAK,EAAGA,GAAMD,CACjBzQ,IAAKwP,EAAIrJ,KAAKI,IAAI,GAAGmK,IAAKhC,YAAY4B,EAAI,GAAGG,EAAOC,GAAID,EACxD,IAAGzQ,EAAEN,QAAQ,QAAU,EAAG,CACzB,GAAIiR,GAAQxK,KAAKkG,MAAMlG,KAAK4I,IAAIS,GAAKrJ,KAAK6I,OAC1C,IAAGhP,EAAEN,QAAQ,QAAU,EAAGM,EAAIA,EAAEqC,OAAO,GAAK,IAAMrC,EAAEiP,OAAO,GAAK,MAAQ0B,EAAQ3Q,EAAEG,OAAOuQ,OACpF1Q,IAAK,MAAQ2Q,EAAQD,EAC1B,OAAM1Q,EAAEiP,OAAO,EAAE,KAAO,KAAM,CAC7BjP,EAAIA,EAAEqC,OAAO,GAAKrC,EAAEiP,OAAO,EAAEwB,GAAU,IAAMzQ,EAAEiP,OAAO,EAAEwB,EACxDzQ,GAAIA,EAAEwC,QAAQ,aAAa,MAAMA,QAAQ,QAAQ,MAElDxC,EAAIA,EAAEwC,QAAQ,MAAM,KAErBxC,EAAIA,EAAEwC,QAAQ,2BAA2B,SAASoO,EAAGC,EAAGC,EAAGC,GAAM,MAAOF,GAAKC,EAAKC,EAAG9B,OAAO,GAAGwB,EAAOC,GAAID,GAAU,IAAMM,EAAG9B,OAAOyB,GAAM,UACpI1Q,GAAIwP,EAAIb,cAAc2B,EAC7B,IAAGf,EAAIiB,MAAM,WAAaxQ,EAAEwQ,MAAM,YAAaxQ,EAAIA,EAAEiP,OAAO,EAAEjP,EAAEG,OAAO,GAAK,IAAMH,EAAEqC,OAAOrC,EAAEG,OAAO,EACpG,IAAGoP,EAAIiB,MAAM,QAAUxQ,EAAEwQ,MAAM,OAAQxQ,EAAIA,EAAEwC,QAAQ,MAAM,IAC3D,OAAOxC,GAAEwC,QAAQ,IAAI,KAEtB,GAAIwO,IAAQ,wBACZ,SAASC,IAAaC,EAAGC,EAAMC,GAC9B,GAAIC,GAAMC,SAASJ,EAAE,GAAG,IAAKK,EAAKpL,KAAKC,MAAM+K,EAAOE,GAAMG,EAAOrL,KAAKkG,MAAMkF,EAAGF,EAC/E,IAAII,GAAOF,EAAKC,EAAKH,EAAMK,EAAML,CACjC,OAAOD,IAAQI,IAAS,EAAI,GAAK,GAAGA,GAAQ,KAAOC,IAAQ,EAAI1L,GAAK,IAAKmL,EAAE,GAAG/Q,OAAS,EAAI+Q,EAAE,GAAG/Q,QAAU6F,EAAKyL,EAAIP,EAAE,GAAG/Q,QAAU+Q,EAAE,GAAK,IAAMA,EAAE,GAAKtL,EAAK8L,EAAIR,EAAE,GAAG/Q,SAErK,QAASwR,IAAaT,EAAGC,EAAMC,GAC9B,MAAOA,IAAQD,IAAS,EAAI,GAAK,GAAGA,GAAQpL,GAAK,IAAKmL,EAAE,GAAG/Q,OAAS,EAAI+Q,EAAE,GAAG/Q,QAE9E,GAAIyR,IAAO,gBACX,IAAIC,IAAa,UACjB,IAAIC,IAAQ,qBACZ,SAASC,IAAMC,GACd,GAAIhS,GAAI,GAAIiS,CACZ,KAAI,GAAIhS,GAAI,EAAGA,GAAK+R,EAAI7R,SAAUF,EAAG,OAAQgS,EAAGD,EAAI5R,WAAWH,IAC9D,IAAK,IAAI,MACT,IAAK,IAAID,GAAI,GAAK,OAClB,IAAK,IAAIA,GAAI,GAAK,OAClB,QAASA,GAAIM,OAAOC,aAAa0R,IAElC,MAAOjS,GAER,QAASkS,IAAI1C,EAAKjK,GAAK,GAAI4M,GAAKhM,KAAKI,IAAI,GAAGhB,EAAI,OAAO,GAAIY,KAAKC,MAAMoJ,EAAM2C,GAAIA,EAChF,QAASC,IAAI5C,EAAKjK,GACjB,GAAI8M,GAAQ7C,EAAMrJ,KAAKkG,MAAMmD,GAAM2C,EAAKhM,KAAKI,IAAI,GAAGhB,EACpD,IAAIA,GAAK,GAAKY,KAAKC,MAAMiM,EAAQF,IAAKhS,OAAQ,MAAO,EACrD,OAAOgG,MAAKC,MAAMiM,EAAQF,GAE3B,QAASG,IAAM9C,EAAKjK,GACnB,GAAIA,GAAK,GAAKY,KAAKC,OAAOoJ,EAAIrJ,KAAKkG,MAAMmD,IAAMrJ,KAAKI,IAAI,GAAGhB,KAAKpF,OAAQ,CACvE,MAAO,GAER,MAAO,GAER,QAASoS,IAAI/C,GACZ,GAAGA,EAAM,YAAcA,GAAO,WAAY,MAAO,IAAIA,GAAO,EAAKA,EAAI,EAAMA,EAAI,EAAE,EACjF,OAAO,GAAGrJ,KAAKkG,MAAMmD,GAEtB,QAASgD,IAAclD,EAAMC,EAAKC,GACjC,GAAGF,EAAKlP,WAAW,KAAO,KAAOmP,EAAIiB,MAAMqB,IAAa,CACvD,GAAIY,GAAOlD,EAAI/M,QAAQ,OAAO,IAAIA,QAAQ,MAAM,IAAIA,QAAQ,KAAK,GACjE,IAAGgN,GAAO,EAAG,MAAOgD,IAAc,IAAKC,EAAMjD,EAC7C,OAAO,IAAMgD,GAAc,IAAKC,GAAOjD,GAAO,IAE/C,GAAGD,EAAInP,WAAWmP,EAAIpP,OAAS,KAAO,GAAI,MAAOkQ,IAAaf,EAAMC,EAAKC,EACzE,IAAGD,EAAI7P,QAAQ,QAAU,EAAG,MAAOuQ,IAAcX,EAAMC,EAAKC,EAC5D,IAAGD,EAAI7P,QAAQ,QAAU,EAAG,MAAO6Q,IAAchB,EAAKC,EACtD,IAAGD,EAAInP,WAAW,KAAO,GAAI,MAAO,IAAIoS,GAAclD,EAAKC,EAAIN,OAAOM,EAAIlN,OAAO,IAAI,IAAI,EAAE,GAAGmN,EAC9F,IAAIxP,EACJ,IAAIkR,GAAGwB,EAAIC,EAAIxB,EAAOhL,KAAKkH,IAAImC,GAAM4B,EAAO5B,EAAM,EAAI,IAAM,EAC5D,IAAGD,EAAIiB,MAAM,SAAU,MAAOY,GAAO5K,EAAM2K,EAAK5B,EAAIpP,OACpD,IAAGoP,EAAIiB,MAAM,WAAY,CACxBxQ,EAAIwG,EAAMgJ,EAAI,EAAI,IAAGxP,IAAM,IAAKA,EAAI,EACpC,OAAOA,GAAEG,OAASoP,EAAIpP,OAASH,EAAI+R,GAAMxC,EAAIN,OAAO,EAAEM,EAAIpP,OAAOH,EAAEG,SAAWH,EAE/E,GAAIkR,EAAI3B,EAAIiB,MAAMQ,IAAS,MAAOC,IAAaC,EAAGC,EAAMC,EACxD,IAAG7B,EAAIiB,MAAM,UAAW,MAAOY,GAAO5K,EAAM2K,EAAK5B,EAAIpP,OAASoP,EAAI7P,QAAQ,KAC1E,IAAIwR,EAAI3B,EAAIiB,MAAMoB,IAAQ,CACzB5R,EAAIkS,GAAI1C,EAAK0B,EAAE,GAAG/Q,QAAQqC,QAAQ,aAAa,MAAMuP,GAAMb,EAAE,KAAK1O,QAAQ,MAAM,IAAIuP,GAAMb,EAAE,KAAK1O,QAAQ,WAAW,SAASoO,EAAIC,GAAM,MAAO,IAAMA,EAAK9K,GAAK,IAAKgM,GAAMb,EAAE,IAAI/Q,OAAO0Q,EAAG1Q,SACzL,OAAOoP,GAAI7P,QAAQ,SAAW,EAAIM,EAAIA,EAAEwC,QAAQ,OAAO,KAExD+M,EAAMA,EAAI/M,QAAQ,YAAa,KAC/B,IAAI0O,EAAI3B,EAAIiB,MAAM,gBAAkB,CACnC,MAAOY,GAAOc,GAAIf,EAAMD,EAAE,GAAG/Q,QAAQqC,QAAQ,kBAAkB,OAAOA,QAAQ,YAAY,OAAOA,QAAQ,OAAO0O,EAAE,GAAG/Q,OAAO,KAAK,KAElI,GAAI+Q,EAAI3B,EAAIiB,MAAM,qBAAuB,MAAOY,GAAOtB,GAAStJ,EAAM2K,EAAK,GAC3E,IAAID,EAAI3B,EAAIiB,MAAM,qBAAuB,CACxC,MAAOhB,GAAM,EAAI,IAAMgD,GAAclD,EAAMC,GAAMC,GAAOM,GAAS,IAAI3J,KAAKkG,MAAMmD,GAAO8C,GAAM9C,EAAK0B,EAAE,GAAG/Q,UAAY,IAAMyF,EAAKwM,GAAI5C,EAAK0B,EAAE,GAAG/Q,QAAQ+Q,EAAE,GAAG/Q,QAE1J,GAAI+Q,EAAI3B,EAAIiB,MAAM,YAAc,MAAOgC,IAAclD,EAAKC,EAAI/M,QAAQ,SAAS,IAAIgN,EACnF,IAAI0B,EAAI3B,EAAIiB,MAAM,2BAA6B,CAC9CxQ,EAAI2F,EAAQ6M,GAAclD,EAAMC,EAAI/M,QAAQ,SAAS,IAAKgN,GAC1DkD,GAAK,CACL,OAAO/M,GAAQA,EAAQ4J,EAAI/M,QAAQ,MAAM,KAAKA,QAAQ,QAAQ,SAASxB,GAAG,MAAO0R,GAAG1S,EAAEG,OAAOH,EAAEqC,OAAOqQ,KAAM1R,IAAI,IAAI,IAAI,MAEzH,GAAGuO,EAAIiB,MAAMsB,IAAQ,CACpB9R,EAAIwS,GAAclD,EAAM,aAAcE,EACtC,OAAO,IAAMxP,EAAEiP,OAAO,EAAE,GAAK,KAAOjP,EAAEiP,OAAO,EAAG,GAAK,IAAMjP,EAAEiP,OAAO,GAErE,GAAI2D,GAAK,EACT,IAAI1B,EAAI3B,EAAIiB,MAAM,+BAAiC,CAClDkC,EAAKvM,KAAK0M,IAAI3B,EAAE,GAAG/Q,OAAO,EAC1BwS,GAAKlH,EAAS0F,EAAMhL,KAAKI,IAAI,GAAGmM,GAAI,EAAG,MACvC1S,GAAI,GAAKoR,CACTwB,GAAKxC,GAAU,IAAKc,EAAE,GAAIyB,EAAG,GAC7B,IAAGC,EAAGvQ,OAAOuQ,EAAGzS,OAAO,IAAM,IAAKyS,EAAKA,EAAG3D,OAAO,EAAE2D,EAAGzS,OAAO,GAAK,GAClEH,IAAK4S,EAAK1B,EAAE,GAAK,IAAMA,EAAE,EACzB0B,GAAK3M,EAAM0M,EAAG,GAAGD,EACjB,IAAGE,EAAGzS,OAAS+Q,EAAE,GAAG/Q,OAAQyS,EAAKb,GAAMb,EAAE,GAAGjC,OAAOiC,EAAE,GAAG/Q,OAAOyS,EAAGzS,SAAWyS,CAC7E5S,IAAK4S,CACL,OAAO5S,GAER,GAAIkR,EAAI3B,EAAIiB,MAAM,iCAAmC,CACpDkC,EAAKvM,KAAK0M,IAAI1M,KAAK2M,IAAI5B,EAAE,GAAG/Q,OAAQ+Q,EAAE,GAAG/Q,QAAQ,EACjDwS,GAAKlH,EAAS0F,EAAMhL,KAAKI,IAAI,GAAGmM,GAAI,EAAG,KACvC,OAAOtB,IAAQuB,EAAG,KAAKA,EAAG,GAAK,GAAK,MAAQ,KAAOA,EAAG,GAAK3M,EAAK2M,EAAG,GAAGD,GAAMxB,EAAE,GAAK,IAAMA,EAAE,GAAKjL,EAAM0M,EAAG,GAAGD,GAAK3M,GAAK,IAAK,EAAE2M,EAAG,EAAIxB,EAAE,GAAG/Q,OAAS+Q,EAAE,GAAG/Q,SAExJ,GAAI+Q,EAAI3B,EAAIiB,MAAM,YAAc,CAC/BxQ,EAAIwG,EAAMgJ,EAAK,EACf,IAAGD,EAAIpP,QAAUH,EAAEG,OAAQ,MAAOH,EAClC,OAAO+R,IAAMxC,EAAIN,OAAO,EAAEM,EAAIpP,OAAOH,EAAEG,SAAWH,EAEnD,GAAIkR,EAAI3B,EAAIiB,MAAM,uBAAyB,CAC1CxQ,EAAI,GAAKwP,EAAIf,QAAQtI,KAAK0M,IAAI3B,EAAE,GAAG/Q,OAAO,KAAKqC,QAAQ,YAAY,KACnEkQ,GAAK1S,EAAEN,QAAQ,IACf,IAAIqT,GAAOxD,EAAI7P,QAAQ,KAAOgT,EAAIM,EAAOzD,EAAIpP,OAASH,EAAEG,OAAS4S,CACjE,OAAOhB,IAAMxC,EAAIN,OAAO,EAAE8D,GAAQ/S,EAAIuP,EAAIN,OAAOM,EAAIpP,OAAO6S,IAE7D,GAAI9B,EAAI3B,EAAIiB,MAAM,sBAAwB,CACzCkC,EAAKN,GAAI5C,EAAK0B,EAAE,GAAG/Q,OACnB,OAAOqP,GAAM,EAAI,IAAMgD,GAAclD,EAAMC,GAAMC,GAAOM,GAASyC,GAAI/C,IAAMhN,QAAQ,aAAa,OAAOA,QAAQ,QAAQ,SAASoO,GAAM,MAAO,OAASA,EAAGzQ,OAAS,EAAIyF,EAAK,EAAE,EAAEgL,EAAGzQ,QAAU,IAAMyQ,IAAS,IAAMhL,EAAK8M,EAAGxB,EAAE,GAAG/Q,QAE/N,OAAOoP,GACN,IAAK,aAAc,MAAOiD,IAAclD,EAAM,WAAYE,GAC1D,IAAK,WACL,IAAK,UACL,IAAK,QAAS,GAAIxO,GAAI8O,GAAStJ,EAAM2K,EAAK,GAAK,OAAOnQ,KAAM,IAAMoQ,EAAOpQ,EAAI,GAC7E,IAAK,aAAc,MAAOwR,IAAclD,EAAM,aAAaE,GAAKhN,QAAQ,OAAO,KAC/E,IAAK,WAAY,MAAOgQ,IAAclD,EAAM,WAAWE,GAAKhN,QAAQ,OAAO,KAC3E,UAED,KAAM,IAAI+B,OAAM,uBAAyBgL,EAAM,KAEhD,QAAS0D,IAAc3D,EAAMC,EAAKC,GACjC,GAAIc,GAAMf,EAAIpP,OAAS,CACvB,OAAMoP,EAAInP,WAAWkQ,EAAI,KAAO,KAAMA,CACtC,OAAOF,IAAUd,EAAMC,EAAIN,OAAO,EAAEqB,GAAMd,EAAMrJ,KAAKI,IAAI,GAAG,GAAGgJ,EAAIpP,OAAOmQ,KAE3E,QAAS4C,IAAe5D,EAAMC,EAAKC,GAClC,GAAIU,GAAOX,EAAI/M,QAAQwN,GAAK,IAAKG,EAAMZ,EAAIpP,OAAS+P,EAAK/P,MACzD,OAAOiQ,IAAUd,EAAMY,EAAMV,EAAMrJ,KAAKI,IAAI,GAAG,EAAE4J,IAAQpK,GAAK,IAAIoK,GAEnE,QAASgD,IAAe5D,EAAKC,GAC5B,GAAIxP,EACJ,IAAIsQ,GAAMf,EAAI7P,QAAQ,KAAO6P,EAAI7P,QAAQ,KAAO,CAChD,IAAG6P,EAAIiB,MAAM,eAAgB,CAC5B,GAAGhB,GAAO,EAAG,MAAO,aACf,IAAGA,EAAM,EAAG,MAAO,IAAM2D,GAAe5D,GAAMC,EACnD,IAAIiB,GAASlB,EAAI7P,QAAQ,IAAM,IAAG+Q,KAAY,EAAGA,EAAOlB,EAAI7P,QAAQ,IACpE,IAAIgR,GAAKvK,KAAKkG,MAAMlG,KAAK4I,IAAIS,GAAKrJ,KAAK6I,QAAQyB,CAC/C,IAAGC,EAAK,EAAGA,GAAMD,CACjBzQ,IAAKwP,EAAIrJ,KAAKI,IAAI,GAAGmK,IAAKhC,YAAY4B,EAAI,GAAGG,EAAOC,GAAID,EACxD,KAAIzQ,EAAEwQ,MAAM,QAAS,CACpB,GAAIG,GAAQxK,KAAKkG,MAAMlG,KAAK4I,IAAIS,GAAKrJ,KAAK6I,OAC1C,IAAGhP,EAAEN,QAAQ,QAAU,EAAGM,EAAIA,EAAEqC,OAAO,GAAK,IAAMrC,EAAEiP,OAAO,GAAK,MAAQ0B,EAAQ3Q,EAAEG,OAAOuQ,OACpF1Q,IAAK,MAAQ2Q,EAAQD,EAC1B1Q,GAAIA,EAAEwC,QAAQ,MAAM,KAErBxC,EAAIA,EAAEwC,QAAQ,2BAA2B,SAASoO,EAAGC,EAAGC,EAAGC,GAAM,MAAOF,GAAKC,EAAKC,EAAG9B,OAAO,GAAGwB,EAAOC,GAAID,GAAU,IAAMM,EAAG9B,OAAOyB,GAAM,UACpI1Q,GAAIwP,EAAIb,cAAc2B,EAC7B,IAAGf,EAAIiB,MAAM,WAAaxQ,EAAEwQ,MAAM,YAAaxQ,EAAIA,EAAEiP,OAAO,EAAEjP,EAAEG,OAAO,GAAK,IAAMH,EAAEqC,OAAOrC,EAAEG,OAAO,EACpG,IAAGoP,EAAIiB,MAAM,QAAUxQ,EAAEwQ,MAAM,OAAQxQ,EAAIA,EAAEwC,QAAQ,MAAM,IAC3D,OAAOxC,GAAEwC,QAAQ,IAAI,KAEtB,QAAS4Q,IAAc9D,EAAMC,EAAKC,GACjC,GAAGF,EAAKlP,WAAW,KAAO,KAAOmP,EAAIiB,MAAMqB,IAAa,CACvD,GAAIY,GAAOlD,EAAI/M,QAAQ,OAAO,IAAIA,QAAQ,MAAM,IAAIA,QAAQ,KAAK,GACjE,IAAGgN,GAAO,EAAG,MAAO4D,IAAc,IAAKX,EAAMjD,EAC7C,OAAO,IAAM4D,GAAc,IAAKX,GAAOjD,GAAO,IAE/C,GAAGD,EAAInP,WAAWmP,EAAIpP,OAAS,KAAO,GAAI,MAAO8S,IAAc3D,EAAMC,EAAKC,EAC1E,IAAGD,EAAI7P,QAAQ,QAAU,EAAG,MAAOwT,IAAe5D,EAAMC,EAAKC,EAC7D,IAAGD,EAAI7P,QAAQ,QAAU,EAAG,MAAOyT,IAAe5D,EAAKC,EACvD,IAAGD,EAAInP,WAAW,KAAO,GAAI,MAAO,IAAIgT,GAAc9D,EAAKC,EAAIN,OAAOM,EAAIlN,OAAO,IAAI,IAAI,EAAE,GAAGmN,EAC9F,IAAIxP,EACJ,IAAIkR,GAAGwB,EAAIC,EAAIxB,EAAOhL,KAAKkH,IAAImC,GAAM4B,EAAO5B,EAAM,EAAI,IAAM,EAC5D,IAAGD,EAAIiB,MAAM,SAAU,MAAOY,GAAOxL,EAAKuL,EAAK5B,EAAIpP,OACnD,IAAGoP,EAAIiB,MAAM,WAAY,CACxBxQ,EAAK,GAAGwP,CAAM,IAAGA,IAAQ,EAAGxP,EAAI,EAChC,OAAOA,GAAEG,OAASoP,EAAIpP,OAASH,EAAI+R,GAAMxC,EAAIN,OAAO,EAAEM,EAAIpP,OAAOH,EAAEG,SAAWH,EAE/E,GAAIkR,EAAI3B,EAAIiB,MAAMQ,IAAS,MAAOW,IAAaT,EAAGC,EAAMC,EACxD,IAAG7B,EAAIiB,MAAM,UAAW,MAAOY,GAAOxL,EAAKuL,EAAK5B,EAAIpP,OAASoP,EAAI7P,QAAQ,KACzE,IAAIwR,EAAI3B,EAAIiB,MAAMoB,IAAQ,CAC3B5R,GAAK,GAAGwP,GAAKhN,QAAQ,aAAa,MAAMuP,GAAMb,EAAE,KAAK1O,QAAQ,MAAM,IAAIuP,GAAMb,EAAE,IAC7ElR,GAAIA,EAAEwC,QAAQ,WAAW,SAASoO,EAAIC,GACxC,MAAO,IAAMA,EAAK9K,GAAK,IAAKgM,GAAMb,EAAE,IAAI/Q,OAAO0Q,EAAG1Q,SAChD,OAAOoP,GAAI7P,QAAQ,SAAW,EAAIM,EAAIA,EAAEwC,QAAQ,OAAO,KAExD+M,EAAMA,EAAI/M,QAAQ,YAAa,KAC/B,IAAI0O,EAAI3B,EAAIiB,MAAM,gBAAkB,CACnC,MAAOY,IAAQ,GAAGD,GAAM3O,QAAQ,kBAAkB,OAAOA,QAAQ,YAAY,OAAOA,QAAQ,OAAO0O,EAAE,GAAG/Q,OAAO,KAAK,KAErH,GAAI+Q,EAAI3B,EAAIiB,MAAM,qBAAuB,MAAOY,GAAOtB,GAAU,GAAGqB,EACpE,IAAID,EAAI3B,EAAIiB,MAAM,qBAAuB,CACxC,MAAOhB,GAAM,EAAI,IAAM4D,GAAc9D,EAAMC,GAAMC,GAAOM,GAAU,GAAGN,GAAQ,IAAMzJ,GAAK,IAAImL,EAAE,GAAG/Q,QAElG,GAAI+Q,EAAI3B,EAAIiB,MAAM,YAAc,MAAO4C,IAAc9D,EAAKC,EAAI/M,QAAQ,SAAS,IAAIgN,EACnF,IAAI0B,EAAI3B,EAAIiB,MAAM,2BAA6B,CAC9CxQ,EAAI2F,EAAQyN,GAAc9D,EAAMC,EAAI/M,QAAQ,SAAS,IAAKgN,GAC1DkD,GAAK,CACL,OAAO/M,GAAQA,EAAQ4J,EAAI/M,QAAQ,MAAM,KAAKA,QAAQ,QAAQ,SAASxB,GAAG,MAAO0R,GAAG1S,EAAEG,OAAOH,EAAEqC,OAAOqQ,KAAM1R,IAAI,IAAI,IAAI,MAEzH,GAAGuO,EAAIiB,MAAMsB,IAAQ,CACpB9R,EAAIoT,GAAc9D,EAAM,aAAcE,EACtC,OAAO,IAAMxP,EAAEiP,OAAO,EAAE,GAAK,KAAOjP,EAAEiP,OAAO,EAAG,GAAK,IAAMjP,EAAEiP,OAAO,GAErE,GAAI2D,GAAK,EACT,IAAI1B,EAAI3B,EAAIiB,MAAM,+BAAiC,CAClDkC,EAAKvM,KAAK0M,IAAI3B,EAAE,GAAG/Q,OAAO,EAC1BwS,GAAKlH,EAAS0F,EAAMhL,KAAKI,IAAI,GAAGmM,GAAI,EAAG,MACvC1S,GAAI,GAAKoR,CACTwB,GAAKxC,GAAU,IAAKc,EAAE,GAAIyB,EAAG,GAC7B,IAAGC,EAAGvQ,OAAOuQ,EAAGzS,OAAO,IAAM,IAAKyS,EAAKA,EAAG3D,OAAO,EAAE2D,EAAGzS,OAAO,GAAK,GAClEH,IAAK4S,EAAK1B,EAAE,GAAK,IAAMA,EAAE,EACzB0B,GAAK3M,EAAM0M,EAAG,GAAGD,EACjB,IAAGE,EAAGzS,OAAS+Q,EAAE,GAAG/Q,OAAQyS,EAAKb,GAAMb,EAAE,GAAGjC,OAAOiC,EAAE,GAAG/Q,OAAOyS,EAAGzS,SAAWyS,CAC7E5S,IAAK4S,CACL,OAAO5S,GAER,GAAIkR,EAAI3B,EAAIiB,MAAM,iCAAmC,CACpDkC,EAAKvM,KAAK0M,IAAI1M,KAAK2M,IAAI5B,EAAE,GAAG/Q,OAAQ+Q,EAAE,GAAG/Q,QAAQ,EACjDwS,GAAKlH,EAAS0F,EAAMhL,KAAKI,IAAI,GAAGmM,GAAI,EAAG,KACvC,OAAOtB,IAAQuB,EAAG,KAAKA,EAAG,GAAK,GAAK,MAAQ,KAAOA,EAAG,GAAK3M,EAAK2M,EAAG,GAAGD,GAAMxB,EAAE,GAAK,IAAMA,EAAE,GAAKjL,EAAM0M,EAAG,GAAGD,GAAK3M,GAAK,IAAK,EAAE2M,EAAG,EAAIxB,EAAE,GAAG/Q,OAAS+Q,EAAE,GAAG/Q,SAExJ,GAAI+Q,EAAI3B,EAAIiB,MAAM,YAAc,CAC/BxQ,EAAI,GAAKwP,CACT,IAAGD,EAAIpP,QAAUH,EAAEG,OAAQ,MAAOH,EAClC,OAAO+R,IAAMxC,EAAIN,OAAO,EAAEM,EAAIpP,OAAOH,EAAEG,SAAWH,EAEnD,GAAIkR,EAAI3B,EAAIiB,MAAM,sBAAwB,CACzCxQ,EAAI,GAAKwP,EAAIf,QAAQtI,KAAK0M,IAAI3B,EAAE,GAAG/Q,OAAO,KAAKqC,QAAQ,YAAY,KACnEkQ,GAAK1S,EAAEN,QAAQ,IACf,IAAIqT,GAAOxD,EAAI7P,QAAQ,KAAOgT,EAAIM,EAAOzD,EAAIpP,OAASH,EAAEG,OAAS4S,CACjE,OAAOhB,IAAMxC,EAAIN,OAAO,EAAE8D,GAAQ/S,EAAIuP,EAAIN,OAAOM,EAAIpP,OAAO6S,IAE7D,GAAI9B,EAAI3B,EAAIiB,MAAM,sBAAwB,CACzC,MAAOhB,GAAM,EAAI,IAAM4D,GAAc9D,EAAMC,GAAMC,GAAOM,GAAS,GAAGN,GAAKhN,QAAQ,aAAa,OAAOA,QAAQ,QAAQ,SAASoO,GAAM,MAAO,OAASA,EAAGzQ,OAAS,EAAIyF,EAAK,EAAE,EAAEgL,EAAGzQ,QAAU,IAAMyQ,IAAS,IAAMhL,EAAK,EAAEsL,EAAE,GAAG/Q,QAE5N,OAAOoP,GACN,IAAK,WACL,IAAK,UACL,IAAK,QAAS,GAAIvO,GAAI8O,GAAS,GAAGqB,EAAO,OAAOnQ,KAAM,IAAMoQ,EAAOpQ,EAAI,GACvE,QACC,GAAGuO,EAAIiB,MAAM,aAAc,MAAO4C,IAAc9D,EAAMC,EAAI1O,MAAM,EAAE0O,EAAI8D,YAAY,MAAO7D,GAAOuC,GAAMxC,EAAI1O,MAAM0O,EAAI8D,YAAY,QAElI,KAAM,IAAI9O,OAAM,uBAAyBgL,EAAM,KAEhD,QAASa,IAAUd,EAAMC,EAAKC,GAC7B,OAAQA,EAAI,KAAOA,EAAM4D,GAAc9D,EAAMC,EAAKC,GAAOgD,GAAclD,EAAMC,EAAKC,GAEnF,QAAS8D,IAAc/D,GACtB,GAAIpK,KACJ,IAAIoO,GAAS,KACb,KAAI,GAAItT,GAAI,EAAG8P,EAAI,EAAG9P,EAAIsP,EAAIpP,SAAUF,EAAG,OAAesP,EAAInP,WAAWH,IACxE,IAAK,IACJsT,GAAUA,CAAQ,OACnB,IAAK,KAAI,IAAK,KAAI,IAAK,MACpBtT,CAAG,OACN,IAAK,IACJkF,EAAIA,EAAIhF,QAAUoP,EAAIN,OAAOc,EAAE9P,EAAE8P,EACjCA,GAAI9P,EAAE,GAERkF,EAAIA,EAAIhF,QAAUoP,EAAIN,OAAOc,EAC7B,IAAGwD,IAAW,KAAM,KAAM,IAAIhP,OAAM,WAAagL,EAAM,yBACvD,OAAOpK,GAGR,GAAIqO,IAAc,iCAClB,SAASC,IAAYlE,GACpB,GAAItP,GAAI,EAAeoE,EAAI,GAAIrE,EAAI,EACnC,OAAMC,EAAIsP,EAAIpP,OAAQ,CACrB,OAAQkE,EAAIkL,EAAIlN,OAAOpC,IACtB,IAAK,IAAK,GAAGwG,EAAc8I,EAAKtP,GAAIA,GAAI,CAAGA,IAAK,OAChD,IAAK,IAAK,KAAasP,EAAInP,aAAaH,KAAQ,IAAMA,EAAIsP,EAAIpP,QAAQ,IAAcF,CAAG,OACvF,IAAK,KAAMA,GAAG,CAAG,OACjB,IAAK,IAAKA,GAAG,CAAG,OAChB,IAAK,MAAOA,CAAG,OACf,IAAK,KAAK,IAAK,IACd,GAAGsP,EAAIlN,OAAOpC,EAAE,KAAO,KAAOsP,EAAIlN,OAAOpC,EAAE,KAAO,IAAK,MAAO,MAE/D,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAEvD,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAAK,MAAO,MAC7E,IAAK,KAAK,IAAK,KAAK,IAAK,IACxB,GAAGsP,EAAIN,OAAOhP,EAAG,GAAGiP,gBAAkB,MAAO,MAAO,KACpD,IAAGK,EAAIN,OAAOhP,EAAG,GAAGiP,gBAAkB,QAAS,MAAO,KACtD,IAAGK,EAAIN,OAAOhP,EAAG,GAAGiP,gBAAkB,QAAS,MAAO,QACpDjP,CAAG,OACN,IAAK,IACJD,EAAIqE,CACJ,OAAMkL,EAAIlN,OAAOpC,OAAS,KAAOA,EAAIsP,EAAIpP,OAAQH,GAAKuP,EAAIlN,OAAOpC,EACjE,IAAGD,EAAEwQ,MAAMgD,IAAc,MAAO,KAChC,OACD,IAAK,KAEL,IAAK,KAAK,IAAK,IACd,MAAMvT,EAAIsP,EAAIpP,SAAW,YAAYT,QAAQ2E,EAAEkL,EAAIlN,SAASpC,KAAO,GAAMoE,GAAG,MAAQkL,EAAIlN,OAAOpC,EAAE,IAAM,KAAO,KAAKP,QAAQ6P,EAAIlN,OAAOpC,EAAE,KAAK,GAAI,EACjJ,MACD,IAAK,IAAK,MAAMsP,EAAIlN,SAASpC,KAAOoE,EAAE,EAAc,MACpD,IAAK,MAAOpE,CAAG,IAAGsP,EAAIlN,OAAOpC,IAAM,KAAOsP,EAAIlN,OAAOpC,IAAM,MAAOA,CAAG,OACrE,IAAK,KAAK,IAAK,MAAOA,CAAG,OACzB,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IACpF,MAAMA,EAAIsP,EAAIpP,QAAU,aAAaT,QAAQ6P,EAAIlN,SAASpC,KAAO,EAAE,EAAc,MAClF,IAAK,MAAOA,CAAG,OACf,UAAWA,CAAG,SAGhB,MAAO,OAGR,QAASyT,IAASnE,EAAK1J,EAAG2G,EAAMmH,GAC/B,GAAIxO,MAAUnF,EAAI,GAAIC,EAAI,EAAGoE,EAAI,GAAIuP,EAAI,IAAKC,EAAI9D,EAAGkC,CACrD,IAAI6B,GAAG,GAEP,OAAM7T,EAAIsP,EAAIpP,OAAQ,CACrB,OAAQkE,EAAIkL,EAAIlN,OAAOpC,IACtB,IAAK,IACJ,IAAIwG,EAAc8I,EAAKtP,GAAI,KAAM,IAAIsE,OAAM,0BAA4BF,EAAI,OAAQkL,EACnFpK,GAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAE,UAAY5F,IAAG,CAAG,OAC/C,IAAK,IACJ,IAAID,EAAE,IAAIiS,EAAG1C,EAAInP,aAAaH,MAAQ,IAAMA,EAAIsP,EAAIpP,QAASH,GAAKM,OAAOC,aAAa0R,EACtF9M,GAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAE7F,KAAMC,CAAG,OACtC,IAAK,KAAM,GAAIuO,GAAIe,EAAIlN,SAASpC,GAAI6F,EAAK0I,IAAM,KAAOA,IAAM,IAAOA,EAAI,GACtErJ,GAAIA,EAAIhF,SAAW2F,EAAEA,EAAGD,EAAE2I,KAAMvO,CAAG,OACpC,IAAK,IAAKkF,EAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAE,IAAM5F,IAAG,CAAG,OAClD,IAAK,IACJkF,EAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAEA,KAAM5F,CAAG,OACtC,IAAK,KAAK,IAAK,IACd,GAAGsP,EAAIlN,OAAOpC,EAAE,KAAO,KAAOsP,EAAIlN,OAAOpC,EAAE,KAAO,IAAK,CACtD,GAAG4T,GAAI,KAAM,CAAEA,EAAGtH,GAAoB1G,EAAG2G,EAAM+C,EAAIlN,OAAOpC,EAAE,KAAO,IAAM,IAAG4T,GAAI,KAAM,MAAO,GAC7F1O,EAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAE0J,EAAIN,OAAOhP,EAAE,GAAK2T,GAAMvP,CAAGpE,IAAG,CAAG,QAG/D,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IACtDoE,EAAIA,EAAE0P,cAEP,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAChE,GAAGlO,EAAI,EAAG,MAAO,EACjB,IAAGgO,GAAI,KAAM,CAAEA,EAAGtH,GAAoB1G,EAAG2G,EAAO,IAAGqH,GAAI,KAAM,MAAO,GACpE7T,EAAIqE,CAAG,SAAQpE,EAAIsP,EAAIpP,QAAUoP,EAAIlN,OAAOpC,GAAG8T,gBAAkB1P,EAAGrE,GAAGqE,CACvE,IAAGA,IAAM,KAAOuP,EAAIG,gBAAkB,IAAK1P,EAAI,GAC/C,IAAGA,IAAM,IAAKA,EAAIyP,CAClB3O,GAAIA,EAAIhF,SAAW2F,EAAEzB,EAAGwB,EAAE7F,EAAI4T,GAAMvP,CAAG,OACxC,IAAK,KAAK,IAAK,KAAK,IAAK,IACxB,GAAIiI,IAAGxG,EAAEzB,EAAGwB,EAAExB,EACd,IAAGwP,GAAI,KAAMA,EAAGtH,GAAoB1G,EAAG2G,EACvC,IAAG+C,EAAIN,OAAOhP,EAAG,GAAGiP,gBAAkB,MAAO,CAAE,GAAG2E,GAAI,KAAMvH,EAAEzG,EAAIgO,EAAG3G,GAAK,GAAKqC,EAAIlN,OAAOpC,EAAE,GAAKoE,CAAGiI,GAAExG,EAAI,GAAKgO,GAAG,GAAI7T,IAAG,MACpH,IAAGsP,EAAIN,OAAOhP,EAAE,GAAGiP,gBAAkB,QAAS,CAAE,GAAG2E,GAAI,KAAMvH,EAAEzG,EAAIgO,EAAG3G,GAAK,GAAK,KAAO,IAAMZ,GAAExG,EAAI,GAAK7F,IAAG,CAAG6T,GAAG,QACjH,IAAGvE,EAAIN,OAAOhP,EAAE,GAAGiP,gBAAkB,QAAS,CAAE,GAAG2E,GAAI,KAAMvH,EAAEzG,EAAIgO,EAAG3G,GAAK,GAAK,KAAO,IAAMZ,GAAExG,EAAI,GAAK7F,IAAG,CAAG6T,GAAG,QACjH,CAAExH,EAAExG,EAAI,MAAO7F,EACpB,GAAG4T,GAAI,MAAQvH,EAAExG,IAAM,IAAK,MAAO,EACnCX,GAAIA,EAAIhF,QAAUmM,CAAGsH,GAAMvP,CAAG,OAC/B,IAAK,IACJrE,EAAIqE,CACJ,OAAMkL,EAAIlN,OAAOpC,OAAS,KAAOA,EAAIsP,EAAIpP,OAAQH,GAAKuP,EAAIlN,OAAOpC,EACjE,IAAGD,EAAEa,OAAO,KAAO,IAAK,KAAM,4BAA8Bb,EAAI,GAChE,IAAGA,EAAEwQ,MAAMgD,IAAc,CACxB,GAAGK,GAAI,KAAM,CAAEA,EAAGtH,GAAoB1G,EAAG2G,EAAO,IAAGqH,GAAI,KAAM,MAAO,GACpE1O,EAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAE7F,EAAE+T,cAC9BH,GAAM5T,EAAEqC,OAAO,OACT,IAAGrC,EAAEN,QAAQ,MAAQ,EAAG,CAC9BM,GAAKA,EAAEwQ,MAAM,sBAAsB,IAAI,GACvC,KAAIiD,GAAYlE,GAAMpK,EAAIA,EAAIhF,SAAW2F,EAAE,IAAID,EAAE7F,GAElD,MAED,IAAK,IACJ,GAAG6T,GAAM,KAAM,CACd7T,EAAIqE,CAAG,SAAQpE,EAAIsP,EAAIpP,SAAWkE,EAAEkL,EAAIlN,OAAOpC,MAAQ,IAAKD,GAAKqE,CACjEc,GAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAE7F,EAAI,QAGlC,IAAK,KAAK,IAAK,IACdA,EAAIqE,CAAG,SAAQpE,EAAIsP,EAAIpP,QAAU,YAAYT,QAAQ2E,EAAEkL,EAAIlN,OAAOpC,KAAO,EAAGD,GAAKqE,CACjFc,GAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAE7F,EAAI,OACjC,IAAK,IACJA,EAAIqE,CAAG,OAAMkL,EAAIlN,SAASpC,KAAOoE,EAAGrE,GAAGqE,CACvCc,GAAIA,EAAIhF,SAAW2F,EAAEzB,EAAGwB,EAAE7F,EAAI4T,GAAMvP,CAAG,OACxC,IAAK,MAAOpE,CAAG,IAAGsP,EAAIlN,OAAOpC,IAAM,KAAOsP,EAAIlN,OAAOpC,IAAM,MAAOA,CAAG,OACrE,IAAK,KAAK,IAAK,IAAKkF,EAAIA,EAAIhF,SAAW2F,EAAG6N,IAAO,EAAE,IAAItP,EAAIwB,EAAExB,KAAMpE,CAAG,OACtE,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IACpFD,EAAIqE,CAAG,OAAMpE,EAAIsP,EAAIpP,QAAU,aAAaT,QAAQ6P,EAAIlN,SAASpC,KAAO,EAAGD,GAAGuP,EAAIlN,OAAOpC,EACzFkF,GAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAE7F,EAAI,OACjC,IAAK,IAAKmF,EAAIA,EAAIhF,SAAW2F,EAAEzB,EAAGwB,EAAExB,KAAMpE,CAAG,OAC7C,IAAK,IAAKkF,EAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAE,OAAQ5F,CAAG,OACjD,QACC,GAAG,wCAAwCP,QAAQ2E,MAAQ,EAAG,KAAM,IAAIE,OAAM,0BAA4BF,EAAI,OAASkL,EACvHpK,GAAIA,EAAIhF,SAAW2F,EAAE,IAAKD,EAAExB,KAAMpE,CAAG,SAKxC,GAAI+T,GAAK,EAAGvE,EAAM,EAAGwE,CACrB,KAAIhU,EAAEkF,EAAIhF,OAAO,EAAGyT,EAAI,IAAK3T,GAAK,IAAKA,EAAG,CACzC,OAAOkF,EAAIlF,GAAG6F,GACb,IAAK,KAAK,IAAK,IAAKX,EAAIlF,GAAG6F,EAAIgO,CAAIF,GAAI,GAAK,IAAGI,EAAK,EAAGA,EAAK,CAAG,OAC/D,IAAK,IACJ,GAAIC,EAAI9O,EAAIlF,GAAG4F,EAAE2K,MAAM,SAAWf,EAAItJ,KAAK2M,IAAIrD,EAAIwE,EAAI,GAAG9T,OAAO,EACjE,IAAG6T,EAAK,EAAGA,EAAK,EAEjB,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAAKJ,EAAIzO,EAAIlF,GAAG6F,CAAG,OACtD,IAAK,IAAK,GAAG8N,IAAQ,IAAK,CAAEzO,EAAIlF,GAAG6F,EAAI,GAAK,IAAGkO,EAAK,EAAGA,EAAK,EAAK,MACjE,IAAK,IACJ,MACD,IAAK,IACJ,GAAGA,EAAK,GAAK7O,EAAIlF,GAAG4F,EAAE2K,MAAM,QAASwD,EAAK,CAC1C,IAAGA,EAAK,GAAK7O,EAAIlF,GAAG4F,EAAE2K,MAAM,QAASwD,EAAK,CAC1C,IAAGA,EAAK,GAAK7O,EAAIlF,GAAG4F,EAAE2K,MAAM,QAASwD,EAAK,IAI7C,OAAOA,GACN,IAAK,GAAG,MACR,IAAK,GACP,GAAGH,EAAG9G,GAAK,GAAK,CAAE8G,EAAG9G,EAAI,IAAK8G,EAAGzG,EAC9B,GAAGyG,EAAGzG,GAAM,GAAI,CAAEyG,EAAGzG,EAAI,IAAKyG,EAAG1G,EACjC,GAAG0G,EAAG1G,GAAM,GAAI,CAAE0G,EAAG1G,EAAI,IAAK0G,EAAG3G,EACjC,MACD,IAAK,GACP,GAAG2G,EAAG9G,GAAK,GAAK,CAAE8G,EAAG9G,EAAI,IAAK8G,EAAGzG,EAC9B,GAAGyG,EAAGzG,GAAM,GAAI,CAAEyG,EAAGzG,EAAI,IAAKyG,EAAG1G,EACjC,OAIF,GAAI+G,GAAO,GAAIC,CACf,KAAIlU,EAAE,EAAGA,EAAIkF,EAAIhF,SAAUF,EAAG,CAC7B,OAAOkF,EAAIlF,GAAG6F,GACb,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAAK,MACxC,IAAK,IAAKX,EAAIlF,GAAG4F,EAAI,EAAIV,GAAIlF,GAAG6F,EAAI,GAAK,OACzC,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAClGX,EAAIlF,GAAG4F,EAAIwJ,GAAelK,EAAIlF,GAAG6F,EAAE1F,WAAW,GAAI+E,EAAIlF,GAAG4F,EAAGgO,EAAIpE,EAC5DtK,GAAIlF,GAAG6F,EAAI,GAAK,OACjB,IAAK,KAAK,IAAK,IACdqO,EAAKlU,EAAE,CACP,OAAMkF,EAAIgP,IAAO,QACf9P,EAAEc,EAAIgP,GAAIrO,KAAO,KAAOzB,IAAM,MAC7BA,IAAM,KAAOA,IAAM,MAAQc,EAAIgP,EAAG,IAAM,OAAShP,EAAIgP,EAAG,GAAGrO,IAAM,KAAOX,EAAIgP,EAAG,GAAGrO,IAAM,KAAOX,EAAIgP,EAAG,GAAGtO,IAAM,MAChHV,EAAIlF,GAAG6F,IAAM,MAAQzB,IAAM,KAAOA,IAAM,KAAOA,IAAM,MACrDA,IAAM,MAAQc,EAAIgP,GAAItO,IAAM,KAAOV,EAAIgP,GAAItO,IAAM,KAAOV,EAAIgP,EAAG,IAAM,MAAQhP,EAAIgP,EAAG,GAAGrO,GAAK,MAC3F,CACFX,EAAIlF,GAAG4F,GAAKV,EAAIgP,GAAItO,CACpBV,GAAIgP,IAAOtO,EAAE,GAAIC,EAAE,OAAQqO,EAE5BD,GAAQ/O,EAAIlF,GAAG4F,CACf5F,GAAIkU,EAAG,CAAG,OACX,IAAK,IAAKhP,EAAIlF,GAAG6F,EAAI,GAAKX,GAAIlF,GAAG4F,EAAIsJ,GAAYtJ,EAAE2G,EAAO,SAG5D,GAAI4H,GAAK,GAAIC,EAAKC,CAClB,IAAGJ,EAAK/T,OAAS,EAAG,CACnB,GAAG+T,EAAK9T,WAAW,IAAM,GAAc,CACtCiU,EAAOxO,EAAE,GAAGqO,EAAK9T,WAAW,KAAO,IAAMyF,EAAIA,CAC7CyO,GAAOlE,GAAU,IAAK8D,EAAMG,OACtB,CACNA,EAAOxO,EAAE,GAAK8N,EAAO,GAAK9N,EAAIA,CAC9ByO,GAAOlE,GAAU,IAAK8D,EAAMG,EAC5B,IAAGA,EAAM,GAAKlP,EAAI,IAAMA,EAAI,GAAGW,GAAK,IAAK,CACxCwO,EAAOA,EAAKrF,OAAO,EACnB9J,GAAI,GAAGU,EAAI,IAAMV,EAAI,GAAGU,GAG1BsO,EAAGG,EAAKnU,OAAO,CACf,IAAIoU,GAAQpP,EAAIhF,MAChB,KAAIF,EAAE,EAAGA,EAAIkF,EAAIhF,SAAUF,EAAG,GAAGkF,EAAIlF,IAAM,MAAQkF,EAAIlF,GAAG6F,GAAK,KAAOX,EAAIlF,GAAG4F,EAAEnG,QAAQ,MAAQ,EAAG,CAAE6U,EAAQtU,CAAG,OAC/G,GAAIuU,GAAMrP,EAAIhF,MACd,IAAGoU,IAAUpP,EAAIhF,QAAUmU,EAAK5U,QAAQ,QAAU,EAAG,CACpD,IAAIO,EAAEkF,EAAIhF,OAAO,EAAGF,GAAI,IAAIA,EAAG,CAC9B,GAAGkF,EAAIlF,IAAM,MAAQ,KAAKP,QAAQyF,EAAIlF,GAAG6F,MAAQ,EAAG,QACpD,IAAGqO,GAAIhP,EAAIlF,GAAG4F,EAAE1F,OAAO,EAAG,CAAEgU,GAAMhP,EAAIlF,GAAG4F,EAAE1F,MAAQgF,GAAIlF,GAAG4F,EAAIyO,EAAKrF,OAAOkF,EAAG,EAAGhP,EAAIlF,GAAG4F,EAAE1F,YACpF,IAAGgU,EAAK,EAAGhP,EAAIlF,GAAG4F,EAAI,OACtB,CAAEV,EAAIlF,GAAG4F,EAAIyO,EAAKrF,OAAO,EAAGkF,EAAG,EAAIA,IAAM,EAC9ChP,EAAIlF,GAAG6F,EAAI,GACX0O,GAAQvU,EAET,GAAGkU,GAAI,GAAKK,EAAMrP,EAAIhF,OAAQgF,EAAIqP,GAAO3O,EAAIyO,EAAKrF,OAAO,EAAEkF,EAAG,GAAKhP,EAAIqP,GAAO3O,MAE1E,IAAG0O,IAAUpP,EAAIhF,QAAUmU,EAAK5U,QAAQ,QAAU,EAAG,CACzDyU,EAAKG,EAAK5U,QAAQ,KAAK,CACvB,KAAIO,EAAEsU,EAAOtU,GAAI,IAAKA,EAAG,CACxB,GAAGkF,EAAIlF,IAAM,MAAQ,KAAKP,QAAQyF,EAAIlF,GAAG6F,MAAQ,EAAG,QACpDiK,GAAE5K,EAAIlF,GAAG4F,EAAEnG,QAAQ,MAAM,GAAGO,IAAIsU,EAAMpP,EAAIlF,GAAG4F,EAAEnG,QAAQ,KAAK,EAAEyF,EAAIlF,GAAG4F,EAAE1F,OAAO,CAC9EiU,GAAKjP,EAAIlF,GAAG4F,EAAEoJ,OAAOc,EAAE,EACvB,MAAMA,GAAG,IAAKA,EAAG,CAChB,GAAGoE,GAAI,IAAMhP,EAAIlF,GAAG4F,EAAExD,OAAO0N,KAAO,KAAO5K,EAAIlF,GAAG4F,EAAExD,OAAO0N,KAAO,KAAMqE,EAAKE,EAAKjS,OAAO8R,KAAQC,EAElGjP,EAAIlF,GAAG4F,EAAIuO,CACXjP,GAAIlF,GAAG6F,EAAI,GACX0O,GAAQvU,EAET,GAAGkU,GAAI,GAAKK,EAAMrP,EAAIhF,OAAQgF,EAAIqP,GAAO3O,EAAIyO,EAAKrF,OAAO,EAAEkF,EAAG,GAAKhP,EAAIqP,GAAO3O,CAC9EsO,GAAKG,EAAK5U,QAAQ,KAAK,CACvB,KAAIO,EAAEsU,EAAOtU,EAAEkF,EAAIhF,SAAUF,EAAG,CAC/B,GAAGkF,EAAIlF,IAAM,MAAS,MAAMP,QAAQyF,EAAIlF,GAAG6F,MAAQ,GAAK7F,IAAMsU,EAAQ,QACtExE,GAAE5K,EAAIlF,GAAG4F,EAAEnG,QAAQ,MAAM,GAAGO,IAAIsU,EAAMpP,EAAIlF,GAAG4F,EAAEnG,QAAQ,KAAK,EAAE,CAC9D0U,GAAKjP,EAAIlF,GAAG4F,EAAEoJ,OAAO,EAAEc,EACvB,MAAMA,EAAE5K,EAAIlF,GAAG4F,EAAE1F,SAAU4P,EAAG,CAC7B,GAAGoE,EAAGG,EAAKnU,OAAQiU,GAAME,EAAKjS,OAAO8R,KAEtChP,EAAIlF,GAAG4F,EAAIuO,CACXjP,GAAIlF,GAAG6F,EAAI,GACX0O,GAAQvU,IAIX,IAAIA,EAAE,EAAGA,EAAEkF,EAAIhF,SAAUF,EAAG,GAAGkF,EAAIlF,IAAM,MAAQ,KAAKP,QAAQyF,EAAIlF,GAAG6F,IAAI,EAAG,CAC3EuO,EAAOV,EAAM,GAAK9N,EAAI,GAAK5F,EAAE,GAAKkF,EAAIlF,EAAE,GAAG4F,IAAM,KAAOA,EAAEA,CAC1DV,GAAIlF,GAAG4F,EAAIuK,GAAUjL,EAAIlF,GAAG6F,EAAGX,EAAIlF,GAAG4F,EAAGwO,EACzClP,GAAIlF,GAAG6F,EAAI,IAEZ,GAAI2O,GAAS,EACb,KAAIxU,EAAE,EAAGA,IAAMkF,EAAIhF,SAAUF,EAAG,GAAGkF,EAAIlF,IAAM,KAAMwU,GAAUtP,EAAIlF,GAAG4F,CACpE,OAAO4O,GAGR,GAAIC,IAAW,uCACf,SAASC,IAAQ9O,EAAG0L,GACnB,GAAGA,GAAM,KAAM,MAAO,MACtB,IAAIqD,GAASC,WAAWtD,EAAG,GAC3B,QAAOA,EAAG,IACT,IAAK,IAAM,GAAG1L,GAAK+O,EAAQ,MAAO,KAAM,OACxC,IAAK,IAAM,GAAG/O,EAAK+O,EAAQ,MAAO,KAAM,OACxC,IAAK,IAAM,GAAG/O,EAAK+O,EAAQ,MAAO,KAAM,OACxC,IAAK,KAAM,GAAG/O,GAAK+O,EAAQ,MAAO,KAAM,OACxC,IAAK,KAAM,GAAG/O,GAAK+O,EAAQ,MAAO,KAAM,OACxC,IAAK,KAAM,GAAG/O,GAAK+O,EAAQ,MAAO,KAAM,QAEzC,MAAO,OAER,QAASE,IAAWC,EAAGlP,GACtB,GAAI0J,GAAM+D,GAAcyB,EACxB,IAAIC,GAAIzF,EAAIpP,OAAQ8U,EAAM1F,EAAIyF,EAAE,GAAGtV,QAAQ,IAC3C,IAAGsV,EAAE,GAAKC,GAAK,IAAKD,CACpB,IAAGzF,EAAIpP,OAAS,EAAG,KAAM,IAAIoE,OAAM,iCAAmCgL,EAAI/O,KAAK,KAAO,IACtF,UAAUqF,KAAM,SAAU,OAAQ,EAAG0J,EAAIpP,SAAW,GAAK8U,GAAK,EAAE1F,EAAIA,EAAIpP,OAAO,GAAG,IAClF,QAAOoP,EAAIpP,QACV,IAAK,GAAGoP,EAAM0F,GAAK,GAAK,UAAW,UAAW,UAAW1F,EAAI,KAAOA,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAI,IAAM,OAClG,IAAK,GAAGA,EAAM0F,GAAK,GAAK1F,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAIA,EAAI,KAAOA,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAI,IAAM,OACzF,IAAK,GAAGA,EAAM0F,GAAK,GAAK1F,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAIA,EAAI,KAAOA,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAI,IAAM,OACzF,IAAK,GAAG,OAET,GAAIoD,GAAK9M,EAAI,EAAI0J,EAAI,GAAK1J,EAAI,EAAI0J,EAAI,GAAKA,EAAI,EAC/C,IAAGA,EAAI,GAAG7P,QAAQ,QAAU,GAAK6P,EAAI,GAAG7P,QAAQ,QAAU,EAAG,OAAQsV,EAAGrC,EACxE,IAAGpD,EAAI,GAAGiB,MAAM,YAAc,MAAQjB,EAAI,GAAGiB,MAAM,YAAc,KAAM,CACtE,GAAI0E,GAAK3F,EAAI,GAAGiB,MAAMkE,GACtB,IAAIS,GAAK5F,EAAI,GAAGiB,MAAMkE,GACtB,OAAOC,IAAQ9O,EAAGqP,IAAOF,EAAGzF,EAAI,IAAMoF,GAAQ9O,EAAGsP,IAAOH,EAAGzF,EAAI,KAAOyF,EAAGzF,EAAI2F,GAAM,MAAQC,GAAM,KAAO,EAAI,IAE7G,OAAQH,EAAGrC,GAEZ,QAASvD,IAAWG,EAAI1J,EAAE7F,GACzB,GAAGA,GAAK,KAAMA,IACd,IAAIkQ,GAAO,EACX,cAAcX,IACb,IAAK,SACJ,GAAGA,GAAO,UAAYvP,EAAEoV,OAAQlF,EAAOlQ,EAAEoV,WACpClF,GAAOX,CACZ,OACD,IAAK,SACJ,GAAGA,GAAO,IAAMvP,EAAEoV,OAAQlF,EAAOlQ,EAAEoV,WAC9BlF,IAAQlQ,EAAEqV,OAAS,KAAQrV,EAAO,MAAI6G,GAAW0I,EACtD,IAAGW,GAAQ,KAAMA,EAAQlQ,EAAEqV,OAASrV,EAAEqV,MAAM7M,EAAgB+G,KAAU1I,EAAU2B,EAAgB+G,GAChG,IAAGW,GAAQ,KAAMA,EAAOlF,EAAgBuE,IAAQ,SAChD,QAEF,GAAG9I,EAAcyJ,EAAK,GAAI,MAAOf,IAAYtJ,EAAG7F,EAChD,IAAG6F,YAAa0H,MAAM1H,EAAIqI,GAAcrI,EAAG7F,EAAEsN,SAC7C,IAAIyH,GAAID,GAAW5E,EAAMrK,EACzB,IAAGY,EAAcsO,EAAE,IAAK,MAAO5F,IAAYtJ,EAAG7F,EAC9C,IAAG6F,IAAM,KAAMA,EAAI,WAAa,IAAGA,IAAM,MAAOA,EAAI,YAC/C,IAAGA,IAAM,IAAMA,GAAK,KAAM,MAAO,EACtC,OAAO6N,IAASqB,EAAE,GAAIlP,EAAG7F,EAAG+U,EAAE,IAE/B,QAASO,IAAS/F,EAAKe,GACtB,SAAUA,IAAO,SAAU,CAC1BA,GAAOA,IAAQ,CACjB,KAAI,GAAIrQ,GAAI,EAAGA,EAAI,MAAUA,EAAG,CAChC,GAAG4G,EAAU5G,IAAM0C,UAAW,CAAE,GAAG2N,EAAM,EAAGA,EAAMrQ,CAAG,UAClD,GAAG4G,EAAU5G,IAAMsP,EAAK,CAAEe,EAAMrQ,CAAG,QAEtC,GAAGqQ,EAAM,EAAGA,EAAM,IAElBzJ,EAAUyJ,GAAOf,CAChB,OAAOe,GAER,QAASiF,IAAeC,GACvB,IAAI,GAAIvV,GAAE,EAAGA,GAAG,MAAUA,EACzB,GAAGuV,EAAIvV,KAAO0C,UAAW2S,GAASE,EAAIvV,GAAIA,GAG5C,QAASwV,MACR5O,EAAYD,IAGb,GAAI8O,KACHC,OAAQvG,GACRwG,KAAMN,GACNO,OAAQhP,EACRiP,WAAYP,GACZQ,gBAAiBxJ,GACjByJ,QAASvC,GACTwC,UAAW,QAASA,MAAc,MAAOP,IAAIG,OAAShP,GAGvD,IAAIqP,KACHzN,EAAK,4BACLC,EAAK,iCACLC,EAAK,kCACLC,EAAK,uCACLC,GAAM,UAAWC,GAAM,UAAWC,GAAM,UAAWC,GAAM,UACzDC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SACtE8M,GAAM,UAAWC,GAAM,UAAWC,GAAM,UAAWC,GAAM,UACzDC,GAAM,SACNlL,GAAM,0CACNC,GAAM,mDACNC,GAAM,kDACNC,GAAM,2DACNlC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SACtEC,GAAM,SAAUpB,GAAM,SAAUqB,GAAM,SAAUC,GAAM,SACtDC,GAAM,IACNC,GAAM,OACNC,GAAM,QACNC,GAAM,WACNgB,GAAM,4BACNC,GAAM,iCACNC,GAAM,kCACNC,GAAM,uCACNlB,GAAM,KACNC,GAAM,QACN5K,GAAM,QACN6K,GAAM,UACNC,GAAM,SACNC,GAAM,SACNC,GAAM,WACNC,GAAM,QACNC,GAAM,SACNC,GAAM,OACNnM,GAAM,UACNoM,GAAM,cACNC,GAAM,QACNC,GAAM,YACNC,GAAM,SAIP,IAAI0L,IAAc,kCAClB,SAASC,IAAarB,GACrB,GAAI7F,SAAa6F,IAAU,SAAWvO,EAAUuO,GAAUA,CAC1D7F,GAAMA,EAAI/M,QAAQgU,GAAa,SAC/B,OAAO,IAAIE,QAAO,IAAMnH,EAAM,KAE/B,QAASoH,IAAW3E,EAAKoD,EAAQ5E,GAChC,GAAIoG,IAAK,EAAG3J,GAAK,EAAG1H,GAAK,EAAG2H,GAAK,EAAGC,GAAK,EAAGC,GAAK,GAChDgI,EAAO5E,MAAMgG,SAAkBK,QAAQ,SAASC,EAAG7W,GACnD,GAAI4F,GAAIyL,SAASd,EAAMvQ,EAAE,GAAI,GAC7B,QAAO6W,EAAE/C,cAAc1R,OAAO,IAC7B,IAAK,IAAKuU,EAAI/Q,CAAG,OAAO,IAAK,IAAKN,EAAIM,CAAG,OACzC,IAAK,IAAKqH,EAAIrH,CAAG,OAAO,IAAK,IAAKuH,EAAIvH,CAAG,OACzC,IAAK,IAAK,GAAGqH,GAAK,EAAGC,EAAItH,MAAQoH,GAAIpH,CAAG,UAG1C,IAAGuH,GAAK,GAAKD,IAAM,GAAKF,GAAK,EAAG,CAAEE,EAAIF,CAAGA,IAAK,EAC9C,GAAI8J,IAAY,IAAMH,GAAG,EAAEA,GAAG,GAAIrJ,OAAOG,gBAAgB7M,OAAO,GAAK,KAAO,MAAQoM,GAAG,EAAEA,EAAE,IAAIpM,OAAO,GAAK,KAAO,MAAQ0E,GAAG,EAAEA,EAAE,IAAI1E,OAAO,EAC5I,IAAGkW,EAAQ5W,QAAU,EAAG4W,EAAU,IAAMA,CACxC,IAAGA,EAAQ5W,QAAU,EAAG4W,EAAU,KAAOA,CACzC,IAAIC,IAAY,MAAQ9J,GAAG,EAAEA,EAAE,IAAIrM,OAAO,GAAK,KAAO,MAAQsM,GAAG,EAAEA,EAAE,IAAItM,OAAO,GAAK,KAAO,MAAQuM,GAAG,EAAEA,EAAE,IAAIvM,OAAO,EACtH,IAAGqM,IAAM,GAAKC,IAAM,GAAKC,IAAM,EAAG,MAAO2J,EACzC,IAAGH,IAAM,GAAK3J,IAAM,GAAK1H,IAAM,EAAG,MAAOyR,EACzC,OAAOD,GAAU,IAAMC,EAIxB,GAAIC,KACHC,MAAO,QAGR,SAASC,IAAU5H,EAAKe,GACvB,MAAOgF,IAAS2B,GAAY1H,IAAQA,EAAKe,GAY1C,GAAI8G,IAAQ,WACZ,GAAIA,KACJA,GAAMtZ,QAAU,OAGhB,SAASuZ,KACR,GAAIhT,GAAI,EAAGgR,EAAQ,GAAI5R,OAAM,IAE7B,KAAI,GAAIqT,GAAG,EAAGA,GAAK,MAAOA,EAAE,CAC3BzS,EAAIyS,CACJzS,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CA,GAAMA,EAAE,GAAO,UAAaA,IAAM,EAAOA,IAAM,CAC/CgR,GAAMyB,GAAKzS,EAGZ,aAAciT,cAAe,YAAc,GAAIA,YAAWjC,GAASA;CAGpE,GAAIkC,GAAKF,GACT,SAASG,GAAmB1K,GAC3B,GAAIzI,GAAI,EAAGwB,EAAI,EAAGiR,EAAI,EAAGzB,QAAeiC,cAAe,YAAc,GAAIA,YAAW,MAAQ,GAAI7T,OAAM,KAEtG,KAAIqT,EAAI,EAAGA,GAAK,MAAOA,EAAGzB,EAAMyB,GAAKhK,EAAEgK,EACvC,KAAIA,EAAI,EAAGA,GAAK,MAAOA,EAAG,CACzBjR,EAAIiH,EAAEgK,EACN,KAAIzS,EAAI,IAAMyS,EAAGzS,EAAI,KAAMA,GAAK,IAAKwB,EAAIwP,EAAMhR,GAAMwB,IAAM,EAAKiH,EAAEjH,EAAI,KAEvE,GAAIV,KACJ,KAAI2R,EAAI,EAAGA,GAAK,KAAMA,EAAG3R,EAAI2R,EAAI,SAAYQ,cAAe,YAAcjC,EAAMoC,SAASX,EAAI,IAAKA,EAAI,IAAM,KAAOzB,EAAMxU,MAAMiW,EAAI,IAAKA,EAAI,IAAM,IAClJ,OAAO3R,GAER,GAAIuS,GAAKF,EAAmBD,EAC5B,IAAII,GAAKD,EAAG,GAAKE,EAAKF,EAAG,GAAKG,EAAKH,EAAG,GAAKI,EAAKJ,EAAG,GAAKK,EAAKL,EAAG,EAChE,IAAIM,GAAKN,EAAG,GAAKO,EAAKP,EAAG,GAAKQ,EAAKR,EAAG,GAAKS,EAAKT,EAAG,GAAKU,EAAKV,EAAG,EAChE,IAAIW,GAAKX,EAAG,IAAKY,EAAKZ,EAAG,IAAKa,EAAKb,EAAG,IAAKc,EAAKd,EAAG,IAAKe,EAAKf,EAAG,GAChE,SAASgB,GAAWC,EAAMC,GACzB,GAAIC,GAAID,GAAQ,CAChB,KAAI,GAAI3Y,GAAI,EAAGoF,EAAIsT,EAAKxY,OAAQF,EAAIoF,GAAIwT,EAAKA,IAAI,EAAKtB,GAAIsB,EAAEF,EAAKvY,WAAWH,MAAM,IAClF,QAAQ4Y,EAGT,QAASC,GAAUjN,EAAG+M,GACrB,GAAIC,GAAID,GAAQ,EAAGvT,EAAIwG,EAAE1L,OAAS,GAAIF,EAAI,CAC1C,MAAMA,EAAIoF,GAAIwT,EACbJ,EAAG5M,EAAE5L,KAAQ4Y,EAAI,KACjBL,EAAG3M,EAAE5L,KAAS4Y,GAAK,EAAK,KACxBN,EAAG1M,EAAE5L,KAAS4Y,GAAK,GAAM,KACzBP,EAAGzM,EAAE5L,KAAQ4Y,IAAM,IACnBR,EAAGxM,EAAE5L,MAAQmY,EAAGvM,EAAE5L,MAAQkY,EAAGtM,EAAE5L,MAAQiY,EAAGrM,EAAE5L,MAC5CgY,EAAGpM,EAAE5L,MAAQ+X,EAAGnM,EAAE5L,MAAQ8X,EAAGlM,EAAE5L,MAAQ6X,EAAGjM,EAAE5L,MAC5C4X,EAAGhM,EAAE5L,MAAQ2X,EAAG/L,EAAE5L,MAAQ0X,EAAG9L,EAAE5L,MAAQsX,EAAG1L,EAAE5L,KAC7CoF,IAAK,EACL,OAAMpF,EAAIoF,EAAGwT,EAAKA,IAAI,EAAKtB,GAAIsB,EAAEhN,EAAE5L,MAAM,IACzC,QAAQ4Y,EAGT,QAASE,GAAU/G,EAAK4G,GACvB,GAAIC,GAAID,GAAQ,CAChB,KAAI,GAAI3Y,GAAI,EAAGoF,EAAI2M,EAAI7R,OAAQkE,EAAI,EAAGkB,EAAI,EAAGtF,EAAIoF,GAAI,CACpDhB,EAAI2N,EAAI5R,WAAWH,IACnB,IAAGoE,EAAI,IAAM,CACZwU,EAAKA,IAAI,EAAKtB,GAAIsB,EAAExU,GAAG,SACjB,IAAGA,EAAI,KAAO,CACpBwU,EAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMxU,GAAG,EAAG,KAAM,IACzCwU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAKxU,EAAE,KAAM,SAC9B,IAAGA,GAAK,OAAUA,EAAI,MAAQ,CACpCA,GAAKA,EAAE,MAAM,EAAIkB,GAAIyM,EAAI5R,WAAWH,KAAK,IACzC4Y,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMxU,GAAG,EAAG,IAAK,IACxCwU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMxU,GAAG,EAAG,KAAM,IACzCwU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMtT,GAAG,EAAG,IAAMlB,EAAE,IAAI,IAAK,IACpDwU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAKtT,EAAE,KAAM,SAC9B,CACNsT,EAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMxU,GAAG,GAAI,KAAM,IAC1CwU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMxU,GAAG,EAAG,KAAM,IACzCwU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAKxU,EAAE,KAAM,MAGtC,OAAQwU,EAETzB,EAAM/B,MAAQkC,CACdH,GAAMuB,KAAOD,CACbtB,GAAMnU,IAAM6V,CACZ1B,GAAMpF,IAAM+G,CACZ,OAAO3B,KAGP,IAAI4B,IAAM,QAAUC,MACpB,GAAIC,KACJA,GAAQpb,QAAU,OAElB,SAASqb,GAAQnE,EAAG9D,GACnB,GAAI7L,GAAI2P,EAAElR,MAAM,KAAMsV,EAAIlI,EAAEpN,MAAM,IAClC,KAAI,GAAI7D,GAAI,EAAGoE,EAAI,EAAGgV,EAAIlT,KAAK0M,IAAIxN,EAAElF,OAAQiZ,EAAEjZ,QAASF,EAAIoZ,IAAKpZ,EAAG,CACnE,GAAIoE,EAAIgB,EAAEpF,GAAGE,OAASiZ,EAAEnZ,GAAGE,OAAS,MAAOkE,EAC3C,IAAGgB,EAAEpF,IAAMmZ,EAAEnZ,GAAI,MAAOoF,GAAEpF,GAAKmZ,EAAEnZ,IAAM,EAAI,EAE5C,MAAOoF,GAAElF,OAASiZ,EAAEjZ,OAErB,QAASmZ,GAAQC,GAChB,GAAGA,EAAElX,OAAOkX,EAAEpZ,OAAS,IAAM,IAAK,MAAQoZ,GAAE1Y,MAAM,GAAG,GAAGnB,QAAQ,QAAU,EAAK6Z,EAAID,EAAQC,EAAE1Y,MAAM,GAAI,GACvG,IAAIwD,GAAIkV,EAAElG,YAAY,IACtB,OAAQhP,MAAO,EAAKkV,EAAIA,EAAE1Y,MAAM,EAAGwD,EAAE,GAGtC,QAASmV,GAASD,GACjB,GAAGA,EAAElX,OAAOkX,EAAEpZ,OAAS,IAAM,IAAK,MAAOqZ,GAASD,EAAE1Y,MAAM,GAAI,GAC9D,IAAIwD,GAAIkV,EAAElG,YAAY,IACtB,OAAQhP,MAAO,EAAKkV,EAAIA,EAAE1Y,MAAMwD,EAAE,GAUnC,QAASoV,GAAexW,EAAKyJ,GAC5B,SAAUA,KAAS,SAAUA,EAAO,GAAIa,MAAKb,EAC7C,IAAIgN,GAAMhN,EAAKiN,UACfD,GAAMA,GAAO,EAAIhN,EAAKkN,YACtBF,GAAMA,GAAO,EAAKhN,EAAKmN,eAAe,CACtC5W,GAAI6W,YAAY,EAAGJ,EACnB,IAAIK,GAAOrN,EAAKgB,cAAgB,IAChCqM,GAAMA,GAAO,EAAKrN,EAAKiB,WAAW,CAClCoM,GAAMA,GAAO,EAAIrN,EAAKe,SACtBxK,GAAI6W,YAAY,EAAGC,GAIpB,QAASC,GAAe/W,GACvB,GAAIyW,GAAMzW,EAAIgX,WAAW,GAAK,KAC9B,IAAIF,GAAM9W,EAAIgX,WAAW,GAAK,KAC9B,IAAIzK,GAAM,GAAIjC,KACd,IAAIhI,GAAIwU,EAAM,EAAMA,MAAS,CAC7B,IAAI9M,GAAI8M,EAAM,EAAMA,MAAS,CAC7BvK,GAAI0K,gBAAgB,EACpB1K,GAAI2K,YAAYJ,EAAM,KACtBvK,GAAI4K,SAASnN,EAAE,EACfuC,GAAIhC,QAAQjI,EACZ,IAAI6H,GAAIsM,EAAM,EAAMA,MAAS,CAC7B,IAAIvM,GAAIuM,EAAM,EAAMA,MAAS,CAC7BlK,GAAI6K,SAASX,EACblK,GAAI8K,WAAWnN,EACfqC,GAAI+K,WAAWnN,GAAG,EAClB,OAAOoC,GAER,QAASgL,GAAkBC,GAC1BC,GAAUD,EAAM,EAChB,IAAIza,KACJ,IAAI2a,GAAQ,CACZ,OAAMF,EAAKzF,GAAKyF,EAAKta,OAAS,EAAG,CAChC,GAAImP,GAAOmL,EAAKR,WAAW,EAC3B,IAAIW,GAAKH,EAAKR,WAAW,GAAIY,EAAMJ,EAAKzF,EAAI4F,CAC5C,IAAIrB,KACJ,QAAOjK,GAEN,IAAK,OAAQ,CACZqL,EAAQF,EAAKR,WAAW,EACxB,IAAGU,EAAQ,EAAGpB,EAAEuB,MAAQL,EAAKR,WAAW,EAExC,IAAGW,EAAK,EAAG,CACV,GAAGD,EAAQ,EAAGpB,EAAEwB,MAAQN,EAAKR,WAAW,EACxC,IAAGU,EAAQ,EAAGpB,EAAEyB,MAAQP,EAAKR,WAAW,GAEzC,GAAGV,EAAEuB,MAAOvB,EAAE0B,GAAK,GAAI1N,MAAKgM,EAAEuB,MAAM,KACnC,MAEF,IAAK,GAAQ,CACZ,GAAII,GAAMT,EAAKR,WAAW,GAAIkB,EAAMV,EAAKR,WAAW,EACpDV,GAAE6B,IAAOD,EAAMhV,KAAKI,IAAI,EAAE,IAAM2U,CAChCA,GAAMT,EAAKR,WAAW,EAAIkB,GAAMV,EAAKR,WAAW,EAChDV,GAAE8B,IAAOF,EAAMhV,KAAKI,IAAI,EAAE,IAAM2U,EAE/B,OAEHT,EAAKzF,EAAI6F,CACT7a,GAAEsP,GAAQiK,EAEX,MAAOvZ,GAER,GAAIsb,EACJ,SAASC,KAAW,MAAOD,KAAOA,EAAKE,IACvC,QAASC,GAAMC,EAAMC,GACrB,GAAGD,EAAK,IAAM,IAAQA,EAAK,IAAM,GAAM,MAAOE,IAAUF,EAAMC,EAC9D,KAAID,EAAK,GAAK,KAAS,MAASA,EAAK,GAAG,KAAS,IAAM,MAAOG,IAAUH,EAAMC,EAC9E,IAAGD,EAAKvb,OAAS,IAAK,KAAM,IAAIoE,OAAM,iBAAmBmX,EAAKvb,OAAS,SACvE,IAAI2b,GAAO,CACX,IAAIC,GAAM,GACV,IAAIC,GAAO,CACX,IAAIC,GAAgB,CACpB,IAAIC,GAAY,CAChB,IAAIC,GAAgB,CACpB,IAAIC,GAAc,CAElB,IAAIC,KAGJ,IAAI5B,GAAOiB,EAAK7a,MAAM,EAAE,IACxB6Z,IAAUD,EAAM,EAGhB,IAAI6B,GAAKC,EAAe9B,EACxBqB,GAAOQ,EAAG,EACV,QAAOR,GACN,IAAK,GAAGC,EAAM,GAAK,OAAO,IAAK,GAAGA,EAAM,IAAM,OAC9C,IAAK,GAAG,GAAGO,EAAG,IAAM,EAAG,MAAOV,IAAUF,EAAMC,GAE9C,QAAS,KAAM,IAAIpX,OAAM,sCAAwCuX,IAIlE,GAAGC,IAAQ,IAAK,CAAEtB,EAAOiB,EAAK7a,MAAM,EAAEkb,EAAMrB,IAAUD,EAAM,IAE5D,GAAI+B,GAASd,EAAK7a,MAAM,EAAEkb,EAE1BU,GAAahC,EAAMqB,EAGnB,IAAIY,GAAUjC,EAAKR,WAAW,EAAG,IACjC,IAAG6B,IAAS,GAAKY,IAAY,EAAG,KAAM,IAAInY,OAAM,uCAAyCmY,EAGzFjC,GAAKzF,GAAK,CAGVkH,GAAYzB,EAAKR,WAAW,EAAG,IAG/BQ,GAAKzF,GAAK,CAGVyF,GAAKkC,IAAI,WAAY,4BAGrBR,GAAgB1B,EAAKR,WAAW,EAAG,IAGnC+B,GAAOvB,EAAKR,WAAW,EAAG,IAG1BmC,GAAc3B,EAAKR,WAAW,EAAG,IAGjCgC,GAAgBxB,EAAKR,WAAW,EAAG,IAGnC,KAAI,GAAI3N,IAAK,EAAGyD,EAAI,EAAGA,EAAI,MAAOA,EAAG,CACpCzD,EAAImO,EAAKR,WAAW,EAAG,IACvB,IAAG3N,EAAE,EAAG,KACR+P,GAAUtM,GAAKzD,EAIhB,GAAIsQ,GAAUC,EAAUnB,EAAMK,EAE9Be,GAAWV,EAAaH,EAAeW,EAASb,EAAKM,EAGrD,IAAIU,GAAcC,EAAiBJ,EAASV,EAAWG,EAAWN,EAElEgB,GAAYb,GAAWe,KAAO,YAC9B,IAAGjB,EAAO,GAAKG,IAAkBe,EAAYH,EAAYZ,GAAec,KAAO,UAC/EF,GAAYV,EAAU,IAAIY,KAAO,MACjCF,GAAYV,UAAYA,CACxBU,GAAYhB,IAAMA,CAGlB,IAAIoB,MAAYC,KAAYC,KAAgBC,IAC5CC,GAAerB,EAAWa,EAAaH,EAASQ,EAAOpB,EAAMmB,EAAOE,EAAWlB,EAE/EqB,GAAiBH,EAAWC,EAAWF,EACvCA,GAAMK,OAEN,IAAIzd,IACHqd,UAAWA,EACXC,UAAWA,EAIZ,IAAG3B,GAAWA,EAAQ+B,IAAK1d,EAAE0d,KAAOlB,OAAQA,EAAQI,QAASA,EAC7D,OAAO5c,GAIP,QAASuc,GAAe9B,GACvB,GAAGA,EAAKA,EAAKzF,IAAM,IAAQyF,EAAKA,EAAKzF,EAAI,IAAM,GAAM,OAAQ,EAAG,EAEhEyF,GAAKkC,IAAIgB,EAAkB,qBAI3BlD,GAAKzF,GAAK,EAGV,IAAI8G,GAAOrB,EAAKR,WAAW,EAAG,IAE9B,QAAQQ,EAAKR,WAAW,EAAE,KAAM6B,GAEjC,QAASW,GAAahC,EAAMqB,GAC3B,GAAI2B,GAAQ,CAIZhD,GAAKzF,GAAK,CAGV,QAAQyI,EAAQhD,EAAKR,WAAW,IAC/B,IAAK,GAAM,GAAG6B,GAAQ,EAAG,KAAM,IAAIvX,OAAM,gCAAkCkZ,EAAQ,OACnF,IAAK,IAAM,GAAG3B,GAAQ,EAAG,KAAM,IAAIvX,OAAM,iCAAmCkZ,EAAQ,OACpF,QAAS,KAAM,IAAIlZ,OAAM,sCAAwCkZ,IAIlEhD,EAAKkC,IAAI,OAAQ,sBAGjBlC,GAAKkC,IAAI,eAAgB,cAI1B,QAASE,GAAUnB,EAAMK,GACxB,GAAI6B,GAAWzX,KAAK0X,KAAKnC,EAAKvb,OAAO4b,GAAK,CAC1C,IAAIa,KACJ,KAAI,GAAI3c,GAAE,EAAGA,EAAI2d,IAAY3d,EAAG2c,EAAQ3c,EAAE,GAAKyb,EAAK7a,MAAMZ,EAAE8b,GAAK9b,EAAE,GAAG8b,EACtEa,GAAQgB,EAAS,GAAKlC,EAAK7a,MAAM+c,EAAS7B,EAC1C,OAAOa,GAIR,QAASY,GAAiBM,EAAIC,EAAIX,GACjC,GAAInd,GAAI,EAAGoF,EAAI,EAAG+T,EAAI,EAAGP,EAAI,EAAG9I,EAAI,EAAGiO,EAAKZ,EAAMjd,MAClD,IAAI8d,MAAU3R,IAEd,MAAMrM,EAAI+d,IAAM/d,EAAG,CAAEge,EAAIhe,GAAGqM,EAAErM,GAAGA,CAAG8d,GAAG9d,GAAGmd,EAAMnd,GAEhD,KAAM8P,EAAIzD,EAAEnM,SAAU4P,EAAG,CACxB9P,EAAIqM,EAAEyD,EACN1K,GAAIyY,EAAG7d,GAAGoF,CAAG+T,GAAI0E,EAAG7d,GAAGmZ,CAAGP,GAAIiF,EAAG7d,GAAG4Y,CACpC,IAAGoF,EAAIhe,KAAOA,EAAG,CAChB,GAAGoF,KAAO,GAAkB4Y,EAAI5Y,KAAOA,EAAG4Y,EAAIhe,GAAKge,EAAI5Y,EACvD,IAAG+T,KAAO,GAAK6E,EAAI7E,KAAOA,EAAG6E,EAAIhe,GAAKge,EAAI7E,GAE3C,GAAGP,KAAO,EAAgBoF,EAAIpF,GAAK5Y,CACnC,IAAGoF,KAAO,GAAKpF,GAAKge,EAAIhe,GAAI,CAAEge,EAAI5Y,GAAK4Y,EAAIhe,EAAI,IAAGqM,EAAE+G,YAAYhO,GAAK0K,EAAGzD,EAAE9G,KAAKH,GAC/E,GAAG+T,KAAO,GAAKnZ,GAAKge,EAAIhe,GAAI,CAAEge,EAAI7E,GAAK6E,EAAIhe,EAAI,IAAGqM,EAAE+G,YAAY+F,GAAKrJ,EAAGzD,EAAE9G,KAAK4T,IAEhF,IAAInZ,EAAE,EAAGA,EAAI+d,IAAM/d,EAAG,GAAGge,EAAIhe,KAAOA,EAAG,CACtC,GAAGmZ,KAAO,GAAkB6E,EAAI7E,KAAOA,EAAG6E,EAAIhe,GAAKge,EAAI7E,OAClD,IAAG/T,KAAO,GAAK4Y,EAAI5Y,KAAOA,EAAG4Y,EAAIhe,GAAKge,EAAI5Y,GAGhD,IAAIpF,EAAE,EAAGA,EAAI+d,IAAM/d,EAAG,CACrB,GAAG6d,EAAG7d,GAAGqP,OAAS,EAAiB,QACnCS,GAAI9P,CACJ,IAAG8P,GAAKkO,EAAIlO,GAAI,EAAG,CAClBA,EAAIkO,EAAIlO,EACRgO,GAAG9d,GAAK8d,EAAGhO,GAAK,IAAMgO,EAAG9d,SACjB8P,IAAM,IAAM,IAAMkO,EAAIlO,IAAMA,GAAKkO,EAAIlO,GAC9CkO,GAAIhe,IAAM,EAGX8d,EAAG,IAAM,GACT,KAAI9d,EAAE,EAAGA,EAAI+d,IAAM/d,EAAG,CACrB,GAAG6d,EAAG7d,GAAGqP,OAAS,EAAgByO,EAAG9d,IAAM,KAI7C,QAASie,GAAeC,EAAOC,EAASC,GACvC,GAAIC,GAAQH,EAAMG,MAAOC,EAAOJ,EAAMI,IAEtC,IAAIve,KACJ,IAAIsQ,GAAMgO,CACV,OAAMD,GAAQE,EAAO,GAAKjO,GAAO,EAAG,CACnCtQ,EAAEwF,KAAK4Y,EAAQvd,MAAMyP,EAAMkO,EAAMlO,EAAMkO,EAAOA,GAC9CD,IAAQC,CACRlO,GAAMmO,GAAcJ,EAAM/N,EAAM,GAEjC,GAAGtQ,EAAEG,SAAW,EAAG,MAAQue,IAAQ,EACnC,OAAQja,GAAQzE,GAAGa,MAAM,EAAGsd,EAAMI,MAKnC,QAASzB,GAAWxM,EAAKqO,EAAK/B,EAASb,EAAKM,GAC3C,GAAI/P,GAAI4Q,CACR,IAAG5M,IAAQ4M,EAAY,CACtB,GAAGyB,IAAQ,EAAG,KAAM,IAAIpa,OAAM,yCACxB,IAAG+L,KAAS,EAAgB,CAClC,GAAIsO,GAAShC,EAAQtM,GAAMrD,GAAK8O,IAAM,GAAG,CACzC,KAAI6C,EAAQ,MACZ,KAAI,GAAI3e,GAAI,EAAGA,EAAIgN,IAAKhN,EAAG,CAC1B,IAAIqM,EAAImS,GAAcG,EAAO3e,EAAE,MAAQid,EAAY,KACnDb,GAAU7W,KAAK8G,GAEhB,GAAGqS,GAAO,EAAG7B,EAAW2B,GAAcG,EAAO7C,EAAI,GAAG4C,EAAM,EAAG/B,EAASb,EAAKM,IAK7E,QAASwC,GAAgBjC,EAAS0B,EAAOjC,EAAWN,EAAK+C,GACxD,GAAI7b,MAAU8b,IACd,KAAID,EAAMA,IACV,IAAIE,GAAUjD,EAAM,EAAGhM,EAAI,EAAGoE,EAAK,CACnC,KAAIpE,EAAEuO,EAAOvO,GAAG,GAAI,CACnB+O,EAAK/O,GAAK,IACV9M,GAAIA,EAAI9C,QAAU4P,CAClBgP,GAAUvZ,KAAKoX,EAAQ7M,GACvB,IAAIkP,GAAO5C,EAAUlW,KAAKkG,MAAM0D,EAAE,EAAEgM,GACpC5H,GAAOpE,EAAE,EAAKiP,CACd,IAAGjD,EAAM,EAAI5H,EAAI,KAAM,IAAI5P,OAAM,yBAA2BwL,EAAI,MAAMgM,EACtE,KAAIa,EAAQqC,GAAO,KACnBlP,GAAI0O,GAAc7B,EAAQqC,GAAO9K,GAElC,OAAQ+K,MAAOjc,EAAKlD,KAAKof,IAAYJ,KAItC,QAAS/B,GAAiBJ,EAASV,EAAWG,EAAWN,GACxD,GAAIqD,GAAKxC,EAAQzc,OAAQ4c,IACzB,IAAI+B,MAAW7b,KAAU8b,IACzB,IAAIC,GAAUjD,EAAM,EAAG9b,EAAE,EAAG8P,EAAE,EAAGsP,EAAE,EAAGlL,EAAG,CACzC,KAAIlU,EAAE,EAAGA,EAAImf,IAAMnf,EAAG,CACrBgD,IACAoc,GAAKpf,EAAIic,CAAY,IAAGmD,GAAKD,EAAIC,GAAGD,CACpC,IAAGN,EAAKO,GAAI,QACZN,KACA,IAAIO,KACJ,KAAIvP,EAAEsP,EAAGtP,GAAG,GAAI,CACfuP,EAAKvP,GAAK,IACV+O,GAAK/O,GAAK,IACV9M,GAAIA,EAAI9C,QAAU4P,CAClBgP,GAAUvZ,KAAKoX,EAAQ7M,GACvB,IAAIkP,GAAO5C,EAAUlW,KAAKkG,MAAM0D,EAAE,EAAEgM,GACpC5H,GAAOpE,EAAE,EAAKiP,CACd,IAAGjD,EAAM,EAAI5H,EAAI,KAAM,IAAI5P,OAAM,yBAA2BwL,EAAI,MAAMgM,EACtE,KAAIa,EAAQqC,GAAO,KACnBlP,GAAI0O,GAAc7B,EAAQqC,GAAO9K,EACjC,IAAGmL,EAAKvP,GAAI,MAEbgN,EAAYsC,IAAOH,MAAOjc,EAAKlD,KAAKof,IAAYJ,KAEjD,MAAOhC,GAIR,QAASQ,GAAerB,EAAWa,EAAaH,EAASQ,EAAOpB,EAAMmB,EAAOE,EAAWgB,GACvF,GAAIkB,GAAgB,EAAGvB,EAAMZ,EAAMjd,OAAO,EAAE,CAC5C,IAAIye,GAAS7B,EAAYb,GAAWnc,IACpC,IAAIE,GAAI,EAAGuf,EAAU,EAAGvC,CACxB,MAAMhd,EAAI2e,EAAOze,OAAQF,GAAI,IAAK,CACjC,GAAIwa,GAAOmE,EAAO/d,MAAMZ,EAAGA,EAAE,IAC7Bya,IAAUD,EAAM,GAChB+E,GAAU/E,EAAKR,WAAW,EAC1BgD,GAAOwC,GAAUhF,EAAK,EAAE+E,EAAQxB,EAChCZ,GAAM5X,KAAKyX,EACX,IAAIjd,IACHid,KAAOA,EACP3N,KAAOmL,EAAKR,WAAW,GACvByF,MAAOjF,EAAKR,WAAW,GACvB5U,EAAOoV,EAAKR,WAAW,EAAG,KAC1Bb,EAAOqB,EAAKR,WAAW,EAAG,KAC1BpB,EAAO4B,EAAKR,WAAW,EAAG,KAC1B0F,MAAOlF,EAAKR,WAAW,IACvB2F,MAAOnF,EAAKR,WAAW,EAAG,KAC1BqE,MAAO,EACPC,KAAM,EAEP,IAAIvD,GAAQP,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,EAC3F,IAAGe,IAAU,EAAGhb,EAAE6f,GAAKC,EAAUrF,EAAMA,EAAKzF,EAAE,EAC9C,IAAI8F,GAAQL,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,EAC3F,IAAGa,IAAU,EAAG9a,EAAEib,GAAK6E,EAAUrF,EAAMA,EAAKzF,EAAE,EAC9ChV,GAAEse,MAAQ7D,EAAKR,WAAW,EAAG,IAC7Bja,GAAEue,KAAO9D,EAAKR,WAAW,EAAG,IAC5B,IAAGja,EAAEue,KAAO,GAAKve,EAAEse,MAAQ,EAAG,CAAEte,EAAEue,KAAOve,EAAEsP,KAAO,CAAGtP,GAAEse,MAAQpB,CAAYld,GAAEid,KAAO,GACpF,GAAGjd,EAAEsP,OAAS,EAAG,CAChBiQ,EAAgBvf,EAAEse,KAClB,IAAGtC,EAAO,GAAKuD,IAAkBrC,EAAYH,EAAYwC,GAAetC,KAAO,kBAEzE,IAAGjd,EAAEue,MAAQ,KAAkB,CACrCve,EAAE+f,QAAU,KACZ,IAAGhD,EAAY/c,EAAEse,SAAW3b,UAAWoa,EAAY/c,EAAEse,OAASO,EAAgBjC,EAAS5c,EAAEse,MAAOvB,EAAYV,UAAWU,EAAYhB,IACnIgB,GAAY/c,EAAEse,OAAOrB,KAAOjd,EAAEid,IAC9Bjd,GAAEkF,QAAW6X,EAAY/c,EAAEse,OAAOve,KAAKc,MAAM,EAAEb,EAAEue,UAC3C,CACNve,EAAE+f,QAAU,SACZ,IAAG/f,EAAEue,KAAO,EAAGve,EAAEue,KAAO,MACnB,IAAGgB,IAAkBrC,GAAcld,EAAEse,QAAUpB,GAAcH,EAAYwC,GAAgB,CAC7Fvf,EAAEkF,QAAUgZ,EAAele,EAAG+c,EAAYwC,GAAexf,MAAOgd,EAAYsB,QAAWte,OAGzF,GAAGC,EAAEkF,QAASwV,GAAU1a,EAAEkF,QAAS,EACnCiY,GAAMF,GAAQjd,CACdqd,GAAU7X,KAAKxF,IAIjB,QAAS8f,GAAUrF,EAAMuF,GACxB,MAAO,IAAIzS,OAAU0S,GAAexF,EAAKuF,EAAO,GAAG,IAAK7Z,KAAKI,IAAI,EAAE,IAAI0Z,GAAexF,EAAKuF,GAAQ,IAAQ,aAAa,KAGzH,QAASE,GAAU1G,EAAUmC,GAC5BJ,GACA,OAAOE,GAAMH,EAAG6E,aAAa3G,GAAWmC,GAGzC,QAASyE,GAAK3F,EAAMkB,GACnB,GAAIrM,GAAOqM,GAAWA,EAAQrM,IAC9B,KAAIA,EAAM,CACT,GAAG7M,GAAWC,OAAOkC,SAAS6V,GAAOnL,EAAO,SAE7C,OAAOA,GAAQ,UACd,IAAK,OAAQ,MAAO4Q,GAAUzF,EAAMkB,GACpC,IAAK,SAAU,MAAOF,GAAM7X,EAAIrB,EAAckY,IAAQkB,GACtD,IAAK,SAAU,MAAOF,GAAM7X,EAAI6W,GAAOkB,IAExC,MAAOF,GAAMhB,EAAMkB,GAGpB,QAAS0E,GAASC,EAAK9T,GACtB,GAAIxM,GAAIwM,MAAY+T,EAAOvgB,EAAEugB,MAAQ,YACrC,KAAID,EAAIhD,UAAWgD,EAAIhD,YACvB,KAAIgD,EAAIjD,UAAWiD,EAAIjD,YACvB,IAAGiD,EAAIhD,UAAUnd,SAAWmgB,EAAIjD,UAAUld,OAAQ,KAAM,IAAIoE,OAAM,6BAClE,IAAG+b,EAAIhD,UAAUnd,SAAW,EAAG,CAC9BmgB,EAAIhD,UAAU,GAAKiD,EAAO,GAC1BD,GAAIjD,UAAU,IAAQJ,KAAMsD,EAAMjR,KAAM,GAEzC,GAAGtP,EAAEwgB,MAAOF,EAAIjD,UAAU,GAAGsC,MAAQ3f,EAAEwgB,KACvCC,GAASH,GAEV,QAASG,GAASH,GACjB,GAAII,GAAK,UACT,IAAG1H,GAAI2H,KAAKL,EAAK,IAAMI,GAAK,MAC5B,IAAInH,GAAImF,GAAQ,EAAInF,GAAE,GAAK,EAAIA,GAAE,GAAKA,EAAE,GAAK,EAAIA,GAAE,GAAK,EACxD+G,GAAIjD,UAAU7X,MAAQyX,KAAMyD,EAAIpR,KAAM,EAAGpK,QAAQqU,EAAGgF,KAAK,EAAGlZ,EAAE,GAAI+T,EAAE,GAAIP,EAAE,IAC1EyH,GAAIhD,UAAU9X,KAAK8a,EAAIhD,UAAU,GAAKoD,EACtCE,GAAYN,GAEb,QAASM,GAAYN,EAAKvL,GACzBsL,EAASC,EACT,IAAIO,GAAK,MAAOhd,EAAI,KACpB,KAAI,GAAI5D,GAAIqgB,EAAIhD,UAAUnd,OAAS,EAAGF,GAAK,IAAKA,EAAG,CAClD,GAAI6gB,GAAQR,EAAIjD,UAAUpd,EAC1B,QAAO6gB,EAAMxR,MACZ,IAAK,GACJ,GAAGzL,EAAGgd,EAAK,SACN,CAAEP,EAAIjD,UAAU0D,KAAOT,GAAIhD,UAAUyD,MAC1C,MACD,IAAK,IAAG,IAAK,IAAG,IAAK,GACpBld,EAAI,IACJ,IAAGzB,MAAM0e,EAAM1H,EAAI0H,EAAMzb,EAAIyb,EAAMjI,GAAIgI,EAAK,IAC5C,IAAGC,EAAM1H,GAAK,GAAK0H,EAAMzb,GAAK,GAAKyb,EAAM1H,GAAK0H,EAAMzb,EAAGwb,EAAK,IAC5D,OACD,QAASA,EAAK,IAAM,SAGtB,IAAIA,IAAO9L,EAAG,MAEd,IAAIiM,GAAM,GAAIzT,MAAK,KAAM,EAAG,IAAKwC,EAAI,CAErC,IAAIkR,GAAYC,OAAOC,OAASD,OAAOC,OAAO,QAC9C,IAAIphB,KACJ,KAAIE,EAAI,EAAGA,EAAIqgB,EAAIhD,UAAUnd,SAAUF,EAAG,CACzCghB,EAAUX,EAAIhD,UAAUrd,IAAM,IAC9B,IAAGqgB,EAAIjD,UAAUpd,GAAGqP,OAAS,EAAG,QAChCvP,GAAKyF,MAAM8a,EAAIhD,UAAUrd,GAAIqgB,EAAIjD,UAAUpd,KAE5C,IAAIA,EAAI,EAAGA,EAAIF,EAAKI,SAAUF,EAAG,CAChC,GAAIge,GAAM3E,EAAQvZ,EAAKE,GAAG,GAC1B4D,GAAIod,EAAUhD,EACd,QAAOpa,EAAG,CACT,MAAMyV,EAAQ2E,KAASgD,EAAU3H,EAAQ2E,IAAOA,EAAM3E,EAAQ2E,EAE9Dle,GAAKyF,MAAMyY,GACVhB,KAAMzD,EAASyE,GAAKzb,QAAQ,IAAI,IAChC8M,KAAM,EACNqQ,MAAOyB,EACPvB,GAAImB,EAAK/F,GAAI+F,EACb9b,QAAS,OAIV+b,GAAUhD,GAAO,IAEjBA,GAAM3E,EAAQvZ,EAAKE,GAAG,GACtB4D,GAAIod,EAAUhD,IAIhBle,EAAKshB,KAAK,SAASrgB,EAAEgM,GAAK,MAAOmM,GAAQnY,EAAE,GAAIgM,EAAE,KACjDsT,GAAIhD,YAAgBgD,GAAIjD,YACxB,KAAIpd,EAAI,EAAGA,EAAIF,EAAKI,SAAUF,EAAG,CAAEqgB,EAAIhD,UAAUrd,GAAKF,EAAKE,GAAG,EAAIqgB,GAAIjD,UAAUpd,GAAKF,EAAKE,GAAG,GAC7F,IAAIA,EAAI,EAAGA,EAAIF,EAAKI,SAAUF,EAAG,CAChC,GAAIqhB,GAAMhB,EAAIjD,UAAUpd,EACxB,IAAIygB,GAAKJ,EAAIhD,UAAUrd,EAEvBqhB,GAAIrE,KAAQzD,EAASkH,GAAIle,QAAQ,IAAI,GACrC8e,GAAIjc,EAAIic,EAAIlI,EAAIkI,EAAIzI,IAAMyI,EAAI5B,MAAQ,EACtC4B,GAAI/C,KAAO+C,EAAIpc,QAAUoc,EAAIpc,QAAQ/E,OAAS,CAC9CmhB,GAAIhD,MAAQ,CACZgD,GAAI3B,MAAS2B,EAAI3B,OAASyB,CAC1B,IAAGnhB,IAAM,EAAG,CACXqhB,EAAIzI,EAAI9Y,EAAKI,OAAS,EAAI,GAAK,CAC/BmhB,GAAI/C,KAAO,CACX+C,GAAIhS,KAAO,MACL,IAAGoR,EAAG7f,OAAO,IAAM,IAAK,CAC9B,IAAIkP,EAAE9P,EAAE,EAAE8P,EAAIhQ,EAAKI,SAAU4P,EAAG,GAAGuJ,EAAQgH,EAAIhD,UAAUvN,KAAK2Q,EAAI,KAClEY,GAAIzI,EAAI9I,GAAKhQ,EAAKI,QAAU,EAAI4P,CAChC,KAAIA,EAAE9P,EAAE,EAAE8P,EAAIhQ,EAAKI,SAAU4P,EAAG,GAAGuJ,EAAQgH,EAAIhD,UAAUvN,KAAKuJ,EAAQoH,GAAK,KAC3EY,GAAIlI,EAAIrJ,GAAKhQ,EAAKI,QAAU,EAAI4P,CAChCuR,GAAIhS,KAAO,MACL,CACN,GAAGgK,EAAQgH,EAAIhD,UAAUrd,EAAE,IAAI,KAAOqZ,EAAQoH,GAAKY,EAAIlI,EAAInZ,EAAI,CAC/DqhB,GAAIhS,KAAO,IAMd,QAASiS,GAAOjB,EAAK3E,GACpB,GAAI6F,GAAQ7F,KAEZ,IAAG6F,EAAMC,UAAY,MAAO,MAAOC,IAAUpB,EAAKkB,EAClDZ,GAAYN,EACZ,QAAOkB,EAAMC,UACZ,IAAK,MAAO,MAAOE,IAAUrB,EAAKkB,IAGnC,GAAInc,GAAI,SAAUib,GACjB,GAAIsB,GAAY,EAAGC,EAAW,CAC9B,KAAI,GAAI5hB,GAAI,EAAGA,EAAIqgB,EAAIjD,UAAUld,SAAUF,EAAG,CAC7C,GAAIyb,GAAO4E,EAAIjD,UAAUpd,EACzB,KAAIyb,EAAKxW,QAAS,QAClB,IAAIyO,GAAO+H,EAAKxW,QAAQ/E,MACxB,IAAGwT,EAAO,EAAE,CACX,GAAGA,EAAO,KAAQiO,GAAcjO,EAAO,IAAS,MAC3CkO,IAAalO,EAAO,KAAW,GAGtC,GAAI+I,GAAW4D,EAAIhD,UAAUnd,OAAQ,GAAM,CAC3C,IAAI2hB,GAAYF,EAAY,GAAM,CAClC,IAAIG,GAAYH,EAAY,KAAS,CACrC,IAAII,GAAWF,EAAWD,EAAWnF,EAAUqF,CAC/C,IAAIE,GAAWD,EAAW,KAAS,CACnC,IAAIE,GAAYD,GAAW,IAAM,EAAI9b,KAAK0X,MAAMoE,EAAQ,KAAK,IAC7D,OAAQD,EAAWC,EAAUC,EAAY,KAAS,EAAKD,EAASC,IAAcD,GAAW,IAAM,EAAI9b,KAAK0X,MAAMoE,EAAQ,KAAK,IAC3H,IAAI5c,IAAM,EAAG6c,EAAWD,EAASF,EAAUrF,EAASmF,EAAUD,EAAW,EACzEtB,GAAIjD,UAAU,GAAGkB,KAAOqD,GAAa,CACrCvc,GAAE,IAAMib,EAAIjD,UAAU,GAAGiB,MAAMjZ,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,KAAMA,EAAE,GAAG,GAAM,EAC3E,OAAOA,IACLib,EACH,IAAItgB,GAAI0e,GAAQrZ,EAAE,IAAM,EACxB,IAAIpF,GAAI,EAAG6M,EAAI,CACf,EACC,IAAI7M,EAAI,EAAGA,EAAI,IAAKA,EAAGD,EAAE8Z,YAAY,EAAGqI,EAAWliB,GACnD,KAAIA,EAAI,EAAGA,EAAI,IAAKA,EAAGD,EAAE8Z,YAAY,EAAG,EACxC9Z,GAAE8Z,YAAY,EAAG,GACjB9Z,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAG,MACjB9Z,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAG,EACjB,KAAI7Z,EAAI,EAAGA,EAAI,IAAKA,EAAGD,EAAE8Z,YAAY,EAAG,EACxC9Z,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAGzU,EAAE,GACnBrF,GAAE8Z,YAAY,EAAGzU,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAC7CrF,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAG,GAAG,GACpB9Z,GAAE8Z,YAAY,EAAGzU,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAG6X,EAChDld,GAAE8Z,YAAY,EAAGzU,EAAE,GACnBrF,GAAE8Z,aAAa,EAAGzU,EAAE,GAAKA,EAAE,GAAK,EAAG6X,EACnCld,GAAE8Z,YAAY,EAAGzU,EAAE,GACnB,KAAIpF,EAAI,EAAGA,EAAI,MAAOA,EAAGD,EAAE8Z,aAAa,EAAG7Z,EAAIoF,EAAE,GAAKA,EAAE,GAAKpF,GAAK,GAEnE,GAAGoF,EAAE,GAAI,CACR,IAAIyH,EAAI,EAAGA,EAAIzH,EAAE,KAAMyH,EAAG,CACzB,KAAM7M,EAAI,IAAM6M,EAAI,MAAO7M,EAAGD,EAAE8Z,aAAa,EAAG7Z,EAAIoF,EAAE,GAAKA,EAAE,GAAKpF,GAAK,EACvED,GAAE8Z,aAAa,EAAGhN,IAAMzH,EAAE,GAAK,EAAI6X,EAAapQ,EAAI,IAGtD,GAAIsV,GAAU,SAAS5T,GACtB,IAAI1B,GAAK0B,EAAGvO,EAAE6M,EAAE,IAAK7M,EAAGD,EAAE8Z,aAAa,EAAG7Z,EAAE,EAC5C,IAAGuO,EAAG,GAAIvO,CAAGD,GAAE8Z,aAAa,EAAGoD,IAEhCpQ,GAAI7M,EAAI,CACR,KAAI6M,GAAGzH,EAAE,GAAIpF,EAAE6M,IAAK7M,EAAGD,EAAE8Z,aAAa,EAAGuI,EAAOC,QAChD,KAAIxV,GAAGzH,EAAE,GAAIpF,EAAE6M,IAAK7M,EAAGD,EAAE8Z,aAAa,EAAGuI,EAAOE,QAChDH,GAAQ/c,EAAE,GACV+c,GAAQ/c,EAAE,GACV,IAAI0K,GAAI,EAAG4D,EAAO,CAClB,IAAI+H,GAAO4E,EAAIjD,UAAU,EACzB,MAAMtN,EAAIuQ,EAAIjD,UAAUld,SAAU4P,EAAG,CACpC2L,EAAO4E,EAAIjD,UAAUtN,EACrB,KAAI2L,EAAKxW,QAAS,QACpByO,GAAO+H,EAAKxW,QAAQ/E,MAClB,IAAGwT,EAAO,KAAQ,QAClB+H,GAAK4C,MAAQxR,CACbsV,GAASzO,EAAO,KAAW,GAE5ByO,EAAS/c,EAAE,GAAK,GAAM,EACtB,OAAMrF,EAAEgV,EAAI,IAAOhV,EAAE8Z,aAAa,EAAGuI,EAAOnF,WAC5CpQ,GAAI7M,EAAI,CACR,KAAI8P,EAAI,EAAGA,EAAIuQ,EAAIjD,UAAUld,SAAU4P,EAAG,CACzC2L,EAAO4E,EAAIjD,UAAUtN,EACrB,KAAI2L,EAAKxW,QAAS,QACpByO,GAAO+H,EAAKxW,QAAQ/E,MAClB,KAAIwT,GAAQA,GAAQ,KAAQ,QAC5B+H,GAAK4C,MAAQxR,CACbsV,GAASzO,EAAO,IAAS,GAE1B,MAAM3T,EAAEgV,EAAI,IAAOhV,EAAE8Z,aAAa,EAAGuI,EAAOnF,WAC5C,KAAIjd,EAAI,EAAGA,EAAIoF,EAAE,IAAI,IAAKpF,EAAG,CAC5B,GAAIygB,GAAKJ,EAAIhD,UAAUrd,EACvB,KAAIygB,GAAMA,EAAGvgB,SAAW,EAAG,CAC1B,IAAI4P,EAAI,EAAGA,EAAI,KAAMA,EAAG/P,EAAE8Z,YAAY,EAAG,EACzC,KAAI/J,EAAI,EAAGA,EAAI,IAAKA,EAAG/P,EAAE8Z,YAAY,GAAI,EACzC,KAAI/J,EAAI,EAAGA,EAAI,KAAMA,EAAG/P,EAAE8Z,YAAY,EAAG,EACzC,UAED4B,EAAO4E,EAAIjD,UAAUpd,EACrB,IAAGA,IAAM,EAAGyb,EAAK4C,MAAQ5C,EAAK6C,KAAO7C,EAAK4C,MAAQ,EAAIpB,CACtD,IAAIsF,GAAOviB,IAAM,GAAKuhB,EAAMjB,MAAS7E,EAAKuB,IAC1C,IAAGuF,EAAIriB,OAAS,GAAI,CACnBsiB,QAAQC,MAAM,QAAUF,EAAM,yBAA2BA,EAAI3hB,MAAM,EAAE,IACrE2hB,GAAMA,EAAI3hB,MAAM,EAAG,IAEpB8S,EAAO,GAAG6O,EAAIriB,OAAO,EACrBH,GAAE8Z,YAAY,GAAI0I,EAAK,UACvBxiB,GAAE8Z,YAAY,EAAGnG,EACjB3T,GAAE8Z,YAAY,EAAG4B,EAAKpM,KACtBtP,GAAE8Z,YAAY,EAAG4B,EAAKgE,MACtB1f,GAAE8Z,aAAa,EAAG4B,EAAKrW,EACvBrF,GAAE8Z,aAAa,EAAG4B,EAAKtC,EACvBpZ,GAAE8Z,aAAa,EAAG4B,EAAK7C,EACvB,KAAI6C,EAAKiE,MAAO,IAAI5P,EAAI,EAAGA,EAAI,IAAKA,EAAG/P,EAAE8Z,YAAY,EAAG,OACnD9Z,GAAE8Z,YAAY,GAAI4B,EAAKiE,MAAO,MACnC3f,GAAE8Z,YAAY,EAAG4B,EAAKkE,OAAS,EAC/B5f,GAAE8Z,YAAY,EAAG,EAAI9Z,GAAE8Z,YAAY,EAAG,EACtC9Z,GAAE8Z,YAAY,EAAG,EAAI9Z,GAAE8Z,YAAY,EAAG,EACtC9Z,GAAE8Z,YAAY,EAAG4B,EAAK4C,MACtBte,GAAE8Z,YAAY,EAAG4B,EAAK6C,KAAOve,GAAE8Z,YAAY,EAAG,GAE/C,IAAI7Z,EAAI,EAAGA,EAAIqgB,EAAIjD,UAAUld,SAAUF,EAAG,CACzCyb,EAAO4E,EAAIjD,UAAUpd,EACvB,IAAGyb,EAAK6C,MAAQ,KAAQ,CACrBve,EAAEgV,EAAK0G,EAAK4C,MAAM,GAAM,CACxB,IAAI7b,GAAWC,OAAOkC,SAAS8W,EAAKxW,SAAU,CAC7CwW,EAAKxW,QAAQyd,KAAK3iB,EAAGA,EAAEgV,EAAG,EAAG0G,EAAK6C,KAElCve,GAAEgV,GAAM0G,EAAK6C,KAAO,KAAQ,QACtB,CACN,IAAIxO,EAAI,EAAGA,EAAI2L,EAAK6C,OAAQxO,EAAG/P,EAAE8Z,YAAY,EAAG4B,EAAKxW,QAAQ6K,GAC7D,MAAMA,EAAI,MAASA,EAAG/P,EAAE8Z,YAAY,EAAG,KAI1C,IAAI7Z,EAAI,EAAGA,EAAIqgB,EAAIjD,UAAUld,SAAUF,EAAG,CACzCyb,EAAO4E,EAAIjD,UAAUpd,EACvB,IAAGyb,EAAK6C,KAAO,GAAK7C,EAAK6C,KAAO,KAAQ,CACrC,GAAI9b,GAAWC,OAAOkC,SAAS8W,EAAKxW,SAAU,CAC7CwW,EAAKxW,QAAQyd,KAAK3iB,EAAGA,EAAEgV,EAAG,EAAG0G,EAAK6C,KAElCve,GAAEgV,GAAM0G,EAAK6C,KAAO,IAAO,OACrB,CACN,IAAIxO,EAAI,EAAGA,EAAI2L,EAAK6C,OAAQxO,EAAG/P,EAAE8Z,YAAY,EAAG4B,EAAKxW,QAAQ6K,GAC7D,MAAMA,EAAI,KAAQA,EAAG/P,EAAE8Z,YAAY,EAAG,KAIzC,GAAIrX,EAAS,CACZzC,EAAEgV,EAAIhV,EAAEG,WACF,CAEN,MAAMH,EAAEgV,EAAIhV,EAAEG,OAAQH,EAAE8Z,YAAY,EAAG,GAExC,MAAO9Z,GAGR,QAAS2gB,GAAKL,EAAKsC,GAClB,GAAIC,GAAcvC,EAAIhD,UAAUvZ,IAAI,SAAS/C,GAAK,MAAOA,GAAEkO,eAC3D,IAAI4T,GAAUD,EAAY9e,IAAI,SAAS/C,GAAK,GAAIgM,GAAIhM,EAAE8C,MAAM,IAAM,OAAOkJ,GAAEA,EAAE7M,QAAUa,EAAEH,OAAO,IAAM,IAAM,EAAI,KAChH,IAAIwe,GAAI,KACR,IAAGuD,EAAKxiB,WAAW,KAAO,GAAc,CAAEif,EAAI,IAAMuD,GAAOC,EAAY,GAAGhiB,MAAM,GAAI,GAAK+hB,MACpFvD,GAAIuD,EAAKljB,QAAQ,QAAU,CAChC,IAAIqjB,GAASH,EAAK1T,aAClB,IAAIV,GAAI6Q,IAAM,KAAOwD,EAAYnjB,QAAQqjB,GAAUD,EAAQpjB,QAAQqjB,EACnE,IAAGvU,KAAO,EAAG,MAAO8R,GAAIjD,UAAU7O,EAElC,IAAIvB,IAAK8V,EAAOvS,MAAM9K,EACtBqd,GAASA,EAAOvgB,QAAQiD,EAAK,GAC7B,IAAGwH,EAAG8V,EAASA,EAAOvgB,QAAQkD,EAAK,IACnC,KAAI8I,EAAI,EAAGA,EAAIqU,EAAY1iB,SAAUqO,EAAG,CACvC,IAAIvB,EAAI4V,EAAYrU,GAAGhM,QAAQkD,EAAK,KAAOmd,EAAYrU,IAAIhM,QAAQiD,EAAK,KAAOsd,EAAQ,MAAOzC,GAAIjD,UAAU7O,EAC5G,KAAIvB,EAAI6V,EAAQtU,GAAGhM,QAAQkD,EAAK,KAAOod,EAAQtU,IAAIhM,QAAQiD,EAAK,KAAOsd,EAAQ,MAAOzC,GAAIjD,UAAU7O,GAErG,MAAO,MAGR,GAAIgQ,GAAO,EAGX,IAAItB,IAAc,CAElB,IAAIS,GAAmB,kBACvB,IAAIwE,IAAc,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAC5D,IAAIf,GAAe,kCACnB,IAAIiB,IAEHW,YAAa,EACbV,SAAU,EACVC,SAAU,EACVrF,WAAYA,EACZ+F,UAAW,EAEXtF,iBAAkBA,EAClBuF,qBAAsB,OACtBC,WAAY,EACZC,UAAW,EACXhC,aAAcA,EAEdiC,YAAa,UAAU,UAAU,SAAS,YAAY,WAAW,QAGlE,SAASC,GAAWhD,EAAK9G,EAAUmC,GAClCJ,GACA,IAAIvb,GAAIuhB,EAAOjB,EAAK3E,EACrBL,GAAGiI,cAAc/J,EAAUxZ,GAG3B,QAASmE,GAAInE,GACZ,GAAImF,GAAM,GAAI1B,OAAMzD,EAAEG,OACtB,KAAI,GAAIF,GAAI,EAAGA,EAAID,EAAEG,SAAUF,EAAGkF,EAAIlF,GAAKK,OAAOC,aAAaP,EAAEC,GACjE,OAAOkF,GAAI3E,KAAK,IAGjB,QAASgjB,GAAMlD,EAAK3E,GACnB,GAAI3b,GAAIuhB,EAAOjB,EAAK3E,EACpB,QAAOA,GAAWA,EAAQrM,MAAQ,UACjC,IAAK,OAAQiM,GAAUD,GAAGiI,cAAc5H,EAAQnC,SAAU,EAAM,OAAOxZ,GACvE,IAAK,SAAU,aAAcA,IAAK,SAAWA,EAAImE,EAAInE,GACrD,IAAK,SAAU,MAAO6B,SAAqB7B,IAAK,SAAWA,EAAImE,EAAInE,IACnE,IAAK,SAAU,GAAGyC,EAAS,MAAOC,QAAOkC,SAAS5E,GAAKA,EAAI6C,EAAY7C,GAEvE,IAAK,QAAS,aAAcA,IAAK,SAAW4D,EAAI5D,GAAKA,GAEtD,MAAOA,GAGR,GAAIyjB,EACJ,SAASC,GAASC,GAAQ,IACzB,GAAIC,GAAaD,EAAKC,UACtB,IAAIC,GAAU,GAAID,EAClBC,GAAQC,cAAc,GAAItgB,aAAY,EAAG,IAAKqgB,EAAQE,iBACtD,IAAGF,EAAQG,UAAWP,EAAQE,MACzB,MAAM,IAAIpf,OAAM,kCACpB,MAAMvB,GAAIyf,QAAQC,MAAM,4BAA8B1f,EAAEihB,SAAWjhB,KAErE,QAASkhB,GAAgB9F,EAAShD,GACjC,IAAIqI,EAAO,MAAOU,IAAS/F,EAAShD,EACpC,IAAIwI,GAAaH,EAAMG,UACvB,IAAIC,GAAU,GAAID,EAClB,IAAIze,GAAM0e,EAAQC,cAAc1F,EAAQvd,MAAMud,EAAQpJ,GAAI6O,EAAQE,iBAClE3F,GAAQpJ,GAAK6O,EAAQG,SACrB,OAAO7e,GAGR,QAASif,GAAgBhG,GACxB,MAAOqF,GAAQA,EAAMY,eAAejG,GAAWkG,GAASlG,GAEzD,GAAImG,IAAe,GAAI,GAAI,GAAI,EAAG,EAAG,EAAG,EAAG,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAAI,EAAG,GAGjF,IAAIC,IAAa,EAAK,EAAK,EAAK,EAAK,EAAK,EAAK,EAAI,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAK,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAG3J,IAAIC,IAAY,EAAI,EAAI,EAAI,EAAI,EAAI,EAAI,EAAG,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,GAAI,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAAO,MAAO,MAE7J,SAASC,GAAW5N,GAAK,GAAIhR,IAASgR,GAAG,EAAIA,GAAG,IAAO,QAAcA,GAAG,EAAIA,GAAG,IAAO,MAAY,QAAShR,GAAG,GAAOA,GAAG,EAAIA,GAAG,IAE/H,GAAI6e,UAA0BnhB,cAAe,WAE7C,IAAIohB,IAAWD,GAAmB,GAAInhB,YAAW,GAAG,KACpD,KAAI,GAAI8I,IAAI,EAAGA,GAAK,GAAG,IAAMA,GAAGsY,GAAStY,IAAKoY,EAAWpY,GAEzD,SAASuY,IAAW/N,EAAGgO,GACtB,GAAIC,GAAMH,GAAS9N,EAAI,IACvB,IAAGgO,GAAK,EAAG,MAAOC,KAAS,EAAED,CAC7BC,GAAOA,GAAO,EAAKH,GAAU9N,GAAG,EAAG,IACnC,IAAGgO,GAAK,GAAI,MAAOC,KAAS,GAAGD,CAC/BC,GAAOA,GAAO,EAAKH,GAAU9N,GAAG,GAAI,IACpC,OAAOiO,KAAS,GAAGD,EAIpB,QAASE,IAAY/hB,EAAKgiB,GAAM,GAAIzW,GAAKyW,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAAShiB,EAAIiiB,IAAI1W,GAAK,EAAI,EAAIvL,EAAIiiB,EAAE,IAAI,MAAM1W,EAAI,EAChH,QAAS2W,IAAYliB,EAAKgiB,GAAM,GAAIzW,GAAKyW,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAAShiB,EAAIiiB,IAAI1W,GAAK,EAAI,EAAIvL,EAAIiiB,EAAE,IAAI,MAAM1W,EAAI,EAChH,QAAS4W,IAAYniB,EAAKgiB,GAAM,GAAIzW,GAAKyW,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAAShiB,EAAIiiB,IAAI1W,GAAK,EAAI,EAAIvL,EAAIiiB,EAAE,IAAI,MAAM1W,EAAI,GAChH,QAAS6W,IAAYpiB,EAAKgiB,GAAM,GAAIzW,GAAKyW,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAAShiB,EAAIiiB,IAAI1W,GAAK,EAAI,EAAIvL,EAAIiiB,EAAE,IAAI,MAAM1W,EAAI,GAChH,QAAS8W,IAAYriB,EAAKgiB,GAAM,GAAIzW,GAAKyW,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAAShiB,EAAIiiB,IAAI1W,GAAK,EAAI,EAAIvL,EAAIiiB,EAAE,IAAI,MAAM1W,EAAI,IAGhH,QAAS+W,IAAYtiB,EAAKgiB,EAAInO,GAC7B,GAAItI,GAAKyW,EAAG,EAAIC,EAAKD,IAAK,EAAIlQ,GAAM,GAAG+B,GAAG,CAC1C,IAAIjR,GAAI5C,EAAIiiB,KAAO1W,CACnB,IAAGsI,EAAI,EAAItI,EAAG,MAAO3I,GAAIkP,CACzBlP,IAAK5C,EAAIiiB,EAAE,IAAK,EAAE1W,CAClB,IAAGsI,EAAI,GAAKtI,EAAG,MAAO3I,GAAIkP,CAC1BlP,IAAK5C,EAAIiiB,EAAE,IAAK,GAAG1W,CACnB,IAAGsI,EAAI,GAAKtI,EAAG,MAAO3I,GAAIkP,CAC1BlP,IAAK5C,EAAIiiB,EAAE,IAAK,GAAG1W,CACnB,OAAO3I,GAAIkP,EAIZ,QAASyQ,IAAaviB,EAAKgiB,EAAIpf,GAAK,GAAI2I,GAAIyW,EAAK,EAAGC,EAAID,IAAO,CAC9D,IAAGzW,GAAK,EAAGvL,EAAIiiB,KAAOrf,EAAI,IAAM2I,MAC3B,CACJvL,EAAIiiB,IAAOrf,GAAK2I,EAAK,GACrBvL,GAAIiiB,EAAE,IAAMrf,EAAE,IAAO,EAAE2I,EAExB,MAAOyW,GAAK,EAGb,QAASQ,IAAaxiB,EAAKgiB,EAAIpf,GAC9B,GAAI2I,GAAIyW,EAAK,EAAGC,EAAID,IAAO,CAC3Bpf,IAAKA,EAAE,IAAM2I,CACbvL,GAAIiiB,IAAMrf,CACV,OAAOof,GAAK,EAEb,QAASS,IAAaziB,EAAKgiB,EAAIpf,GAC9B,GAAI2I,GAAIyW,EAAK,EAAGC,EAAID,IAAO,CAC3Bpf,KAAM2I,CACNvL,GAAIiiB,IAAOrf,EAAI,GAAMA,MAAO,CAC5B5C,GAAIiiB,EAAE,GAAKrf,CACX,OAAOof,GAAK,EAEb,QAASU,IAAc1iB,EAAKgiB,EAAIpf,GAC/B,GAAI2I,GAAIyW,EAAK,EAAGC,EAAID,IAAO,CAC3Bpf,KAAM2I,CACNvL,GAAIiiB,IAAOrf,EAAI,GAAMA,MAAO,CAC5B5C,GAAIiiB,EAAE,GAAKrf,EAAI,GACf5C,GAAIiiB,EAAE,GAAKrf,IAAM,CACjB,OAAOof,GAAK,GAIb,QAASW,IAAQd,EAAGlK,GACnB,GAAIvV,GAAIyf,EAAE3kB,OAAQgN,EAAI,EAAE9H,EAAIuV,EAAK,EAAEvV,EAAIuV,EAAK,EAAG3a,EAAI,CACnD,IAAGoF,GAAKuV,EAAI,MAAOkK,EACnB,IAAGriB,EAAS,CACX,GAAIzC,GAAI0D,EAAeyJ,EAEvB,IAAG2X,EAAEnC,KAAMmC,EAAEnC,KAAK3iB,OACb,MAAMC,EAAI6kB,EAAE3kB,SAAUF,EAAGD,EAAEC,GAAK6kB,EAAE7kB,EACvC,OAAOD,OACD,IAAG2kB,GAAkB,CAC3B,GAAIkB,GAAI,GAAIriB,YAAW2J,EACvB,IAAG0Y,EAAE/gB,IAAK+gB,EAAE/gB,IAAIggB,OACX,MAAM7kB,EAAIoF,IAAKpF,EAAG4lB,EAAE5lB,GAAK6kB,EAAE7kB,EAChC,OAAO4lB,GAERf,EAAE3kB,OAASgN,CACX,OAAO2X,GAIR,QAASgB,IAAgBhP,GACxB,GAAI9W,GAAI,GAAIyD,OAAMqT,EAClB,KAAI,GAAI7W,GAAI,EAAGA,EAAI6W,IAAK7W,EAAGD,EAAEC,GAAK,CAClC,OAAOD,GAIR,QAAS+lB,IAAWC,EAAOC,EAAMC,GAChC,GAAIrhB,GAAS,EAAG2J,EAAI,EAAGvO,EAAI,EAAG8P,EAAI,EAAGoW,EAAQ,EAAG9gB,EAAI2gB,EAAM7lB,MAE1D,IAAIimB,GAAYzB,GAAmB,GAAI0B,aAAY,IAAMP,GAAgB,GACzE,KAAI7lB,EAAI,EAAGA,EAAI,KAAMA,EAAGmmB,EAASnmB,GAAK,CAEtC,KAAIA,EAAIoF,EAAGpF,EAAIimB,IAAOjmB,EAAG+lB,EAAM/lB,GAAK,CACpCoF,GAAI2gB,EAAM7lB,MAEV,IAAImmB,GAAQ3B,GAAmB,GAAI0B,aAAYhhB,GAAKygB,GAAgBzgB,EAGpE,KAAIpF,EAAI,EAAGA,EAAIoF,IAAKpF,EAAG,CACtBmmB,EAAU5X,EAAIwX,EAAM/lB,KACpB,IAAG4E,EAAS2J,EAAG3J,EAAS2J,CACxB8X,GAAMrmB,GAAK,EAEZmmB,EAAS,GAAK,CACd,KAAInmB,EAAI,EAAGA,GAAK4E,IAAU5E,EAAGmmB,EAASnmB,EAAE,IAAOkmB,EAASA,EAAQC,EAASnmB,EAAE,IAAK,CAChF,KAAIA,EAAI,EAAGA,EAAIoF,IAAKpF,EAAG,CACtBkmB,EAAQH,EAAM/lB,EACd,IAAGkmB,GAAS,EAAGG,EAAMrmB,GAAKmmB,EAASD,EAAM,MAI1C,GAAII,GAAQ,CACZ,KAAItmB,EAAI,EAAGA,EAAIoF,IAAKpF,EAAG,CACtBsmB,EAAQP,EAAM/lB,EACd,IAAGsmB,GAAS,EAAG,CACdJ,EAAQtB,GAAWyB,EAAMrmB,GAAI4E,IAAUA,EAAO0hB,CAC9C,KAAIxW,GAAK,GAAIlL,EAAS,EAAI0hB,GAAU,EAAGxW,GAAG,IAAKA,EAC9CkW,EAAKE,EAAOpW,GAAGwW,GAAWA,EAAM,GAAOtmB,GAAG,GAG7C,MAAO4E,GAIR,GAAI2hB,IAAW7B,GAAmB,GAAI0B,aAAY,KAAOP,GAAgB,IACzE,IAAIW,IAAW9B,GAAmB,GAAI0B,aAAY,IAAOP,GAAgB,GACzE,KAAInB,GAAkB,CACrB,IAAI,GAAI1kB,IAAI,EAAGA,GAAI,MAAOA,GAAGumB,GAASvmB,IAAK,CAC3C,KAAIA,GAAI,EAAGA,GAAI,KAAMA,GAAGwmB,GAASxmB,IAAK,GAEvC,WACC,GAAIymB,KACJ,IAAIzmB,GAAI,CACR,MAAKA,EAAE,GAAIA,IAAKymB,EAAMlhB,KAAK,EAC3BugB,IAAWW,EAAOD,GAAU,GAE5B,IAAIT,KACJ/lB,GAAI,CACJ,MAAMA,GAAG,IAAKA,IAAK+lB,EAAMxgB,KAAK,EAC9B,MAAMvF,GAAG,IAAKA,IAAK+lB,EAAMxgB,KAAK,EAC9B,MAAMvF,GAAG,IAAKA,IAAK+lB,EAAMxgB,KAAK,EAC9B,MAAMvF,GAAG,IAAKA,IAAK+lB,EAAMxgB,KAAK,EAC9BugB,IAAWC,EAAOQ,GAAU,QACxB,IAAIG,IAAc,QAAUC,MAChC,GAAIC,GAAYlC,GAAmB,GAAInhB,YAAW,SAClD,IAAIuM,GAAI,EAAGsP,EAAI,CACf,MAAMtP,EAAI0U,EAAOtkB,OAAS,IAAK4P,EAAG,CACjC,KAAMsP,EAAIoF,EAAO1U,EAAE,KAAMsP,EAAGwH,EAAUxH,GAAKtP,EAE5C,KAAKsP,EAAI,QAASA,EAAGwH,EAAUxH,GAAK,EAEpC,IAAIyH,GAAYnC,GAAmB,GAAInhB,YAAW,OAClD,KAAIuM,EAAI,EAAGsP,EAAI,EAAGtP,EAAIyU,EAAOrkB,OAAS,IAAK4P,EAAG,CAC7C,KAAMsP,EAAImF,EAAOzU,EAAE,KAAMsP,EAAGyH,EAAUzH,GAAKtP,EAG5C,QAASgX,GAAahnB,EAAMoF,GAC3B,GAAI6hB,GAAO,CACX,OAAMA,EAAOjnB,EAAKI,OAAQ,CACzB,GAAIkF,GAAIc,KAAK0M,IAAI,MAAQ9S,EAAKI,OAAS6mB,EACvC,IAAI9B,GAAI8B,EAAO3hB,GAAKtF,EAAKI,MACzBgF,GAAI2U,YAAY,GAAIoL,EACpB/f,GAAI2U,YAAY,EAAGzU,EACnBF,GAAI2U,YAAY,GAAKzU,EAAK,MAC1B,OAAMA,KAAM,EAAGF,EAAIA,EAAI6P,KAAOjV,EAAKinB,KAEpC,MAAO7hB,GAAI6P,EAIZ,QAASiS,GAAiBlnB,EAAMoF,GAC/B,GAAI8f,GAAK,CACT,IAAI+B,GAAO,CACX,IAAIE,GAAQvC,GAAmB,GAAI0B,aAAY,SAC/C,OAAMW,EAAOjnB,EAAKI,OAAQ,CACzB,GAAIkF,GAA8Bc,KAAK0M,IAAI,MAAQ9S,EAAKI,OAAS6mB,EAGjE,IAAG3hB,EAAI,GAAI,CACV4f,EAAKO,GAAargB,EAAK8f,MAAQ+B,EAAO3hB,GAAKtF,EAAKI,QAChD,IAAG8kB,EAAK,EAAGA,GAAM,GAAKA,EAAK,EAC3B9f,GAAI6P,EAAKiQ,EAAK,EAAK,CACnB9f,GAAI2U,YAAY,EAAGzU,EACnBF,GAAI2U,YAAY,GAAKzU,EAAK,MAC1B,OAAMA,KAAM,EAAGF,EAAIA,EAAI6P,KAAOjV,EAAKinB,IACnC/B,GAAK9f,EAAI6P,EAAI,CACb,UAGDiQ,EAAKO,GAAargB,EAAK8f,MAAQ+B,EAAO3hB,GAAKtF,EAAKI,QAAU,EAC1D,IAAIgnB,GAAO,CACX,OAAM9hB,KAAM,EAAG,CACd,GAAIE,GAAIxF,EAAKinB,EACbG,IAASA,GAAQ,EAAK5hB,GAAK,KAE3B,IAAIiL,IAAS,EAAG4W,EAAO,CAEvB,IAAI5W,EAAQ0W,EAAMC,GAAQ,CACzB3W,GAASwW,GAAQ,KACjB,IAAGxW,EAAQwW,EAAMxW,GAAS,KAC1B,IAAGA,EAAQwW,EAAM,MAAMjnB,EAAKyQ,EAAQ4W,IAASrnB,EAAKinB,EAAOI,IAASA,EAAO,MAAOA,EAGjF,GAAGA,EAAO,EAAG,CAEZ7hB,EAAIuhB,EAAUM,EACd,IAAG7hB,GAAK,GAAI0f,EAAKS,GAAavgB,EAAK8f,EAAIL,GAASrf,EAAE,IAAI,GAAK,MACtD,CACJmgB,GAAavgB,EAAK8f,EAAI,EACtBA,IAAM,CACNS,IAAavgB,EAAK8f,EAAIL,GAASrf,EAAE,KAAK,EACtC0f,IAAM,EAEP,GAAIoC,GAAU9hB,EAAI,EAAK,EAAMA,EAAI,GAAI,CACrC,IAAG8hB,EAAS,EAAG,CACd1B,GAAcxgB,EAAK8f,EAAImC,EAAO5C,EAAOjf,GACrC0f,IAAMoC,EAGP9hB,EAAIshB,EAAUG,EAAOxW,EACrByU,GAAKS,GAAavgB,EAAK8f,EAAIL,GAASrf,IAAI,EACxC0f,IAAM,CAEN,IAAIqC,GAAS/hB,EAAI,EAAI,EAAKA,EAAE,GAAI,CAChC,IAAG+hB,EAAS,EAAG,CACd3B,GAAcxgB,EAAK8f,EAAI+B,EAAOxW,EAAQiU,EAAOlf,GAC7C0f,IAAMqC,EAEP,IAAI,GAAIhb,GAAI,EAAGA,EAAI8a,IAAQ9a,EAAG,CAC7B4a,EAAMC,GAAQH,EAAO,KACrBG,IAASA,GAAQ,EAAKpnB,EAAKinB,IAAS,QAClCA,EAEH3hB,GAAI+hB,EAAO,MACL,CAEN,GAAG7hB,GAAK,IAAKA,EAAIA,EAAI,OAChB0f,GAAKQ,GAAatgB,EAAK8f,EAAI,EAChCA,GAAKS,GAAavgB,EAAK8f,EAAIL,GAASrf,GACpC2hB,GAAMC,GAAQH,EAAO,QACnBA,GAIJ/B,EAAKS,GAAavgB,EAAK8f,EAAI,GAAK,EAEjC9f,EAAI6P,GAAMiQ,EAAK,GAAG,EAAG,CACrB,OAAO9f,GAAI6P,EAEZ,MAAO,SAAS2R,GAAY5mB,EAAMoF,GACjC,GAAGpF,EAAKI,OAAS,EAAG,MAAO4mB,GAAahnB,EAAMoF,EAC9C,OAAO8hB,GAAiBlnB,EAAMoF,MAIhC,SAASmf,IAASvkB,GACjB,GAAIkD,GAAMyb,GAAQ,GAAGvY,KAAKkG,MAAMtM,EAAKI,OAAO,KAC5C,IAAIonB,GAAMZ,GAAY5mB,EAAMkD,EAC5B,OAAOA,GAAIpC,MAAM,EAAG0mB,GAIrB,GAAIC,IAAW7C,GAAmB,GAAI0B,aAAY,OAASP,GAAgB,MAC3E,IAAI2B,IAAW9C,GAAmB,GAAI0B,aAAY,OAASP,GAAgB,MAC3E,IAAI4B,IAAW/C,GAAmB,GAAI0B,aAAY,KAASP,GAAgB,IAC3E,IAAI6B,IAAY,EAAGC,GAAY,CAG/B,SAASC,IAAI9nB,EAAMinB,GAElB,GAAIc,GAAQzC,GAAYtlB,EAAMinB,GAAQ,GAAKA,IAAQ,CACnD,IAAIe,GAAS1C,GAAYtlB,EAAMinB,GAAQ,CAAGA,IAAQ,CAClD,IAAIgB,GAAS5C,GAAYrlB,EAAMinB,GAAQ,CAAGA,IAAQ,CAClD,IAAIxY,GAAI,CAGR,IAAIwX,GAAQrB,GAAmB,GAAInhB,YAAW,IAAMsiB,GAAgB,GACpE,IAAIQ,IAAU,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EACpE,IAAIzhB,GAAS,CACb,IAAIuhB,GAAYzB,GAAmB,GAAInhB,YAAW,GAAKsiB,GAAgB,EACvE,IAAImC,GAAYtD,GAAmB,GAAInhB,YAAW,GAAKsiB,GAAgB,EACvE,IAAIzgB,GAAI2gB,EAAM7lB,MACd,KAAI,GAAIF,GAAI,EAAGA,EAAI+nB,IAAU/nB,EAAG,CAC/B+lB,EAAMzB,EAAWtkB,IAAMuO,EAAI2W,GAAYplB,EAAMinB,EAC7C,IAAGniB,EAAS2J,EAAG3J,EAAS2J,CACxB4X,GAAS5X,IACTwY,IAAQ,EAIT,GAAIb,GAAQ,CACZC,GAAS,GAAK,CACd,KAAInmB,EAAI,EAAGA,GAAK4E,IAAU5E,EAAGgoB,EAAUhoB,GAAKkmB,EAASA,EAAQC,EAASnmB,EAAE,IAAK,CAC7E,KAAIA,EAAI,EAAGA,EAAIoF,IAAKpF,EAAG,IAAIkmB,EAAQH,EAAM/lB,KAAO,EAAGqmB,EAAMrmB,GAAKgoB,EAAU9B,IAExE,IAAII,GAAQ,CACZ,KAAItmB,EAAI,EAAGA,EAAIoF,IAAKpF,EAAG,CACtBsmB,EAAQP,EAAM/lB,EACd,IAAGsmB,GAAS,EAAG,CACdJ,EAAQvB,GAAS0B,EAAMrmB,KAAM,EAAEsmB,CAC/B,KAAI,GAAIxW,IAAK,GAAI,EAAEwW,GAAQ,EAAGxW,GAAG,IAAKA,EAAG2X,GAASvB,EAAOpW,GAAGwW,GAAWA,EAAM,EAAMtmB,GAAG,GAKxF,GAAIioB,KACJrjB,GAAS,CACT,MAAMqjB,EAAO/nB,OAAS2nB,EAAQC,GAAS,CACtC5B,EAAQuB,GAASpC,GAAYvlB,EAAMinB,GACnCA,IAAQb,EAAQ,CAChB,QAAQA,KAAW,GAClB,IAAK,IACJ3X,EAAI,EAAIwW,GAAYjlB,EAAMinB,EAAOA,IAAQ,CACzCb,GAAQ+B,EAAOA,EAAO/nB,OAAS,EAC/B,OAAMqO,KAAM,EAAG0Z,EAAO1iB,KAAK2gB,EAC3B,OACD,IAAK,IACJ3X,EAAI,EAAI2W,GAAYplB,EAAMinB,EAAOA,IAAQ,CACzC,OAAMxY,KAAM,EAAG0Z,EAAO1iB,KAAK,EAC3B,OACD,IAAK,IACJgJ,EAAI,GAAK8W,GAAYvlB,EAAMinB,EAAOA,IAAQ,CAC1C,OAAMxY,KAAO,EAAG0Z,EAAO1iB,KAAK,EAC5B,OACD,QACC0iB,EAAO1iB,KAAK2gB,EACZ,IAAGthB,EAASshB,EAAOthB,EAASshB,CAC5B,SAKH,GAAIgC,GAAKD,EAAOrnB,MAAM,EAAGinB,GAAQM,EAAKF,EAAOrnB,MAAMinB,EACnD,KAAI7nB,EAAI6nB,EAAO7nB,EAAI,MAAOA,EAAGkoB,EAAGloB,GAAK,CACrC,KAAIA,EAAI8nB,EAAQ9nB,EAAI,KAAMA,EAAGmoB,EAAGnoB,GAAK,CACrC0nB,IAAY5B,GAAWoC,EAAIX,GAAU,IACrCI,IAAY7B,GAAWqC,EAAIX,GAAU,GACrC,OAAOT,GAIR,QAASqB,IAAQtoB,EAAMqb,GAEtB,GAAGrb,EAAK,IAAM,KAAOA,EAAK,GAAK,GAAM,CAAE,OAAQuD,EAAY8X,GAAM,GAGjE,GAAI4L,GAAO,CAGX,IAAIxK,GAAS,CAEb,IAAI8L,GAAS5kB,EAAe0X,EAAMA,EAAO,GAAG,GAC5C,IAAImN,GAAO,CACX,IAAIC,GAAKF,EAAOnoB,SAAS,CACzB,IAAIsoB,GAAY,EAAGC,EAAY,CAE/B,QAAOlM,EAAO,IAAM,EAAG,CACtBA,EAAS2I,GAAYplB,EAAMinB,EAAOA,IAAQ,CAC1C,IAAIxK,IAAW,GAAM,EAAG,CAEvB,GAAGwK,EAAO,EAAGA,GAAQ,GAAKA,EAAK,EAE/B,IAAIpM,GAAK7a,EAAKinB,IAAO,GAAKjnB,GAAMinB,IAAO,GAAG,IAAI,CAC9CA,IAAQ,EAER,IAAGpM,EAAK,EAAG,CACV,IAAIQ,GAAOoN,EAAKD,EAAO3N,EAAI,CAAE0N,EAAS1C,GAAQ0C,EAAQC,EAAO3N,EAAK4N,GAAKF,EAAOnoB,OAC9E,MAAMya,KAAO,EAAG,CAAE0N,EAAOC,KAAUxoB,EAAKinB,IAAO,EAAIA,IAAQ,GAE5D,aACM,IAAIxK,GAAU,GAAM,EAAG,CAE7BiM,EAAY,CAAGC,GAAY,MACrB,CAEN1B,EAAOa,GAAI9nB,EAAMinB,EACjByB,GAAYd,EAAWe,GAAYd,GAEpC,OAAQ,CACP,IAAIxM,GAAQoN,EAAKD,EAAO,MAAQ,CAAED,EAAS1C,GAAQ0C,EAAQC,EAAO,MAAQC,GAAKF,EAAOnoB,OAEtF,GAAIwoB,GAAOpD,GAAYxlB,EAAMinB,EAAMyB,EACnC,IAAIG,GAAQpM,IAAS,GAAM,EAAIgK,GAASmC,GAAQnB,GAASmB,EACzD3B,IAAQ4B,EAAO,EAAIA,MAAU,CAE7B,KAAKA,IAAO,EAAG,OAAU,EAAGN,EAAOC,KAAUK,MACxC,IAAGA,GAAQ,IAAK,UAChB,CACJA,GAAQ,GACR,IAAIvB,GAAUuB,EAAO,EAAK,EAAMA,EAAK,GAAI,CAAI,IAAGvB,EAAS,EAAGA,EAAS,CACrE,IAAIxM,GAAM0N,EAAO/D,EAAOoE,EAExB,IAAGvB,EAAS,EAAG,CACdxM,GAAO0K,GAAYxlB,EAAMinB,EAAMK,EAC/BL,IAAQK,EAITsB,EAAOpD,GAAYxlB,EAAMinB,EAAM0B,EAC/BE,GAAQpM,IAAS,GAAM,EAAIiK,GAASkC,GAAQlB,GAASkB,EACrD3B,IAAQ4B,EAAO,EAAIA,MAAU,CAC7B,IAAItB,GAAUsB,EAAO,EAAI,EAAKA,EAAK,GAAI,CACvC,IAAIC,GAAMpE,EAAOmE,EAEjB,IAAGtB,EAAS,EAAG,CACduB,GAAOtD,GAAYxlB,EAAMinB,EAAMM,EAC/BN,IAAQM,EAIT,IAAIlM,GAAOoN,EAAK3N,EAAK,CAAEyN,EAAS1C,GAAQ0C,EAAQzN,EAAM,IAAM2N,GAAKF,EAAOnoB,OACxE,MAAMooB,EAAO1N,EAAK,CAAEyN,EAAOC,GAAQD,EAAOC,EAAOM,KAAQN,KAI5D,GAAGnN,EAAK,OAAQkN,EAAStB,EAAK,IAAK,EACnC,QAAQsB,EAAOznB,MAAM,EAAG0nB,GAAQvB,EAAK,IAAK,GAG3C,QAAS7C,IAAS/F,EAAShD,GAC1B,GAAIrb,GAAOqe,EAAQvd,MAAMud,EAAQpJ,GAAG,EACpC,IAAI7P,GAAMkjB,GAAQtoB,EAAMqb,EACxBgD,GAAQpJ,GAAK7P,EAAI,EACjB,OAAOA,GAAI,GAGZ,QAAS2jB,IAAcC,EAAKC,GAC3B,GAAGD,EAAK,CAAE,SAAUtG,WAAY,YAAaA,QAAQC,MAAMsG,OACtD,MAAM,IAAIzkB,OAAMykB,GAGtB,QAASpN,IAAUF,EAAMC,GACxB,GAAIlB,GAAOiB,CACXhB,IAAUD,EAAM,EAEhB,IAAI4C,MAAgBC,IACpB,IAAItd,IACHqd,UAAWA,EACXC,UAAWA,EAEZ+C,GAASrgB,GAAKugB,KAAM5E,EAAQ4E,MAG5B,IAAItgB,GAAIwa,EAAKta,OAAS,CACtB,QAAOsa,EAAKxa,IAAM,IAAQwa,EAAKxa,EAAE,IAAM,IAAQwa,EAAKxa,EAAE,IAAM,GAAQwa,EAAKxa,EAAE,IAAM,IAASA,GAAK,IAAKA,CACpGwa,GAAKzF,EAAI/U,EAAI,CAGbwa,GAAKzF,GAAK,CACV,IAAIiU,GAAOxO,EAAKR,WAAW,EAC3BQ,GAAKzF,GAAK,CACV,IAAIkU,GAAWzO,EAAKR,WAAW,EAG/BQ,GAAKzF,EAAIkU,CAET,KAAIjpB,EAAI,EAAGA,EAAIgpB,IAAQhpB,EAAG,CAEzBwa,EAAKzF,GAAK,EACV,IAAIqG,GAAMZ,EAAKR,WAAW,EAC1B,IAAImB,GAAMX,EAAKR,WAAW,EAC1B,IAAIuF,GAAU/E,EAAKR,WAAW,EAC9B,IAAIkP,GAAO1O,EAAKR,WAAW,EAC3B,IAAImP,GAAO3O,EAAKR,WAAW,EAC3BQ,GAAKzF,GAAK,CACV,IAAIgL,GAASvF,EAAKR,WAAW,EAC7B,IAAIoP,GAAK7O,EAAkBC,EAAK5Z,MAAM4Z,EAAKzF,EAAEwK,EAAS/E,EAAKzF,EAAEwK,EAAQ2J,GACrE1O,GAAKzF,GAAKwK,EAAU2J,EAAOC,CAE3B,IAAI/jB,GAAIoV,EAAKzF,CACbyF,GAAKzF,EAAIgL,EAAS,CAElB,IAAGqJ,GAAMA,EAAG,GAAS,CACpB,IAAIA,EAAG,QAAajO,IAAKA,EAAMiO,EAAG,GAAQjO,GAC1C,KAAIiO,EAAG,QAAahO,IAAKA,EAAMgO,EAAG,GAAQhO,IAE3CiO,GAAiB7O,EAAMY,EAAKD,EAAKpb,EAAGqpB,EACpC5O,GAAKzF,EAAI3P,EAGV,MAAOrF,GAKR,QAASspB,IAAiB7O,EAAMY,EAAKD,EAAKpb,EAAGqpB,GAE5C5O,EAAKzF,GAAK,CACV,IAAI2F,GAAQF,EAAKR,WAAW,EAC5B,IAAIsP,GAAO9O,EAAKR,WAAW,EAC3B,IAAIvN,GAAOsN,EAAeS,EAE1B,IAAGE,EAAQ,KAAQ,KAAM,IAAIpW,OAAM,6BACnC,IAAIilB,GAAQ/O,EAAKR,WAAW,EAC5B,IAAIwP,GAAOhP,EAAKR,WAAW,EAC3B,IAAIyP,GAAOjP,EAAKR,WAAW,EAE3B,IAAIuF,GAAU/E,EAAKR,WAAW,EAC9B,IAAIkP,GAAO1O,EAAKR,WAAW,EAG3B,IAAIgD,GAAO,EAAI,KAAI,GAAIhd,GAAI,EAAGA,EAAIuf,IAAWvf,EAAGgd,GAAQ3c,OAAOC,aAAaka,EAAKA,EAAKzF,KACtF,IAAGmU,EAAM,CACR,GAAIQ,GAAKnP,EAAkBC,EAAK5Z,MAAM4Z,EAAKzF,EAAGyF,EAAKzF,EAAImU,GACvD,KAAIQ,EAAG,YAAa1O,GAAIvO,EAAOid,EAAG,OAAQ1O,EAC1C,KAAI0O,EAAG,QAAavO,IAAKsO,EAAOC,EAAG,GAAQvO,GAC3C,KAAIuO,EAAG,QAAatO,IAAKoO,EAAOE,EAAG,GAAQtO,GAC3C,IAAGgO,EAAI,CACN,IAAIA,EAAG,YAAapO,GAAIvO,EAAO2c,EAAG,OAAQpO,EAC1C,KAAIoO,EAAG,QAAajO,IAAKsO,EAAOC,EAAG,GAAQvO,GAC3C,KAAIiO,EAAG,QAAahO,IAAKoO,EAAOE,EAAG,GAAQtO,KAG7CZ,EAAKzF,GAAKmU,CAKV,IAAIppB,GAAO0a,EAAK5Z,MAAM4Z,EAAKzF,EAAGyF,EAAKzF,EAAIyU,EACvC,QAAOF,GACN,IAAK,GAAGxpB,EAAOmkB,EAAgBzJ,EAAMiP,EAAO,OAC5C,IAAK,GAAG,MACR,QAAS,KAAM,IAAInlB,OAAM,sCAAwCglB,IAIlE,GAAIR,GAAM,KACV,IAAGpO,EAAQ,EAAG,CACb6O,EAAQ/O,EAAKR,WAAW,EACxB,IAAGuP,GAAS,UAAY,CAAEA,EAAQ/O,EAAKR,WAAW,EAAI8O,GAAM,KAC5DU,EAAOhP,EAAKR,WAAW,EACvByP,GAAOjP,EAAKR,WAAW,GAGxB,GAAGwP,GAAQpO,EAAKyN,GAAcC,EAAK,wBAA0B1N,EAAM,OAASoO,EAC5E,IAAGC,GAAQtO,EAAK0N,GAAcC,EAAK,0BAA4B3N,EAAM,OAASsO,EAG9EE,IAAQ5pB,EAAGid,EAAMld,GAAO8pB,OAAQ,KAAM5O,GAAIvO,IAE3C,QAASiV,IAAUrB,EAAK3E,GACvB,GAAI6F,GAAQ7F,KACZ,IAAIxW,MAAU2kB,IACd,IAAI9pB,GAAI0e,GAAQ,EAChB,IAAIqL,GAAUvI,EAAMwI,YAAc,EAAI,EAAIrP,EAAQ,CAClD,IAAIsP,GAAO,KACX,IAAGA,EAAMtP,GAAS,CAClB,IAAI1a,GAAI,EAAG8P,EAAI,CAEf,IAAImZ,GAAW,EAAGD,EAAO,CACzB,IAAI1I,GAAOD,EAAIhD,UAAU,GAAI4M,EAAK3J,EAAM4J,EAAK7J,EAAIjD,UAAU,EAC3D,IAAI+M,KACJ,IAAIC,GAAQ,CAEZ,KAAIpqB,EAAI,EAAGA,EAAIqgB,EAAIhD,UAAUnd,SAAUF,EAAG,CACzCiqB,EAAK5J,EAAIhD,UAAUrd,GAAGY,MAAM0f,EAAKpgB,OAASgqB,GAAK7J,EAAIjD,UAAUpd,EAC7D,KAAIkqB,EAAG5L,OAAS4L,EAAGjlB,SAAWglB,GAAM,WAAiB,QACrD,IAAI5L,GAAQ4K,CAGZ,IAAIoB,GAAU5L,GAAQwL,EAAG/pB,OACzB,KAAI4P,EAAI,EAAGA,EAAIma,EAAG/pB,SAAU4P,EAAGua,EAAQxQ,YAAY,EAAGoQ,EAAG9pB,WAAW2P,GAAK,IACzEua,GAAUA,EAAQzpB,MAAM,EAAGypB,EAAQtV,EACnCoV,GAAKnB,SAAekB,GAAGjlB,SAAW,SAAWkS,GAAMuB,KAAKwR,EAAGjlB,QAAS,GAAKkS,GAAMnU,IAAIknB,EAAGjlB,QAAS,EAE/F,IAAIojB,SAAgB6B,GAAGjlB,SAAW,SAAWtB,EAAIumB,EAAGjlB,SAAWilB,EAAGjlB,OAClE,IAAG6kB,GAAU,EAAGzB,EAASlE,EAAgBkE,EAGzCtoB,GAAI0e,GAAQ,GACZ1e,GAAE8Z,YAAY,EAAG,SACjB9Z,GAAE8Z,YAAY,EAAG,GACjB9Z,GAAE8Z,YAAY,EAAGa,EACjB3a,GAAE8Z,YAAY,EAAGiQ,EAEjB,IAAGI,EAAGlP,GAAIxB,EAAezZ,EAAGmqB,EAAGlP,QAC1Bjb,GAAE8Z,YAAY,EAAG,EACtB9Z,GAAE8Z,aAAa,EAAIa,EAAQ,EAAK,EAAIyP,EAAKnB,GACzCjpB,GAAE8Z,YAAY,EAAKa,EAAQ,EAAK,EAAI2N,EAAOnoB,OAC3CH,GAAE8Z,YAAY,EAAKa,EAAQ,EAAK,EAAIwP,EAAGjlB,QAAQ/E,OAC/CH,GAAE8Z,YAAY,EAAGwQ,EAAQnqB,OACzBH,GAAE8Z,YAAY,EAAG,EAEjBoP,IAAYlpB,EAAEG,MACdgF,GAAIK,KAAKxF,EACTkpB,IAAYoB,EAAQnqB,MACpBgF,GAAIK,KAAK8kB,EAMTpB,IAAYZ,EAAOnoB,MACnBgF,GAAIK,KAAK8iB,EAGT,IAAG3N,EAAQ,EAAG,CACb3a,EAAI0e,GAAQ,GACZ1e,GAAE8Z,aAAa,EAAGsQ,EAAKnB,GACvBjpB,GAAE8Z,YAAY,EAAGwO,EAAOnoB,OACxBH,GAAE8Z,YAAY,EAAGqQ,EAAGjlB,QAAQ/E,OAC5B+oB,IAAYlpB,EAAEgV,CACd7P,GAAIK,KAAKxF,GAIVA,EAAI0e,GAAQ,GACZ1e,GAAE8Z,YAAY,EAAG,SACjB9Z,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAG,GACjB9Z,GAAE8Z,YAAY,EAAGa,EACjB3a,GAAE8Z,YAAY,EAAGiQ,EACjB/pB,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,aAAa,EAAGsQ,EAAKnB,GAEvBjpB,GAAE8Z,YAAY,EAAGwO,EAAOnoB,OACxBH,GAAE8Z,YAAY,EAAGqQ,EAAGjlB,QAAQ/E,OAC5BH,GAAE8Z,YAAY,EAAGwQ,EAAQnqB,OACzBH,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAGwE,EAEjB+L,IAASrqB,EAAEgV,CACX8U,GAAMtkB,KAAKxF,EACXqqB,IAASC,EAAQnqB,MACjB2pB,GAAMtkB,KAAK8kB,KACTrB,EAIHjpB,EAAI0e,GAAQ,GACZ1e,GAAE8Z,YAAY,EAAG,UACjB9Z,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAG,EACjB9Z,GAAE8Z,YAAY,EAAGmP,EACjBjpB,GAAE8Z,YAAY,EAAGmP,EACjBjpB,GAAE8Z,YAAY,EAAGuQ,EACjBrqB,GAAE8Z,YAAY,EAAGoP,EACjBlpB,GAAE8Z,YAAY,EAAG,EAEjB,OAAOrV,IAAUA,EAAQ,GAAQA,EAAQqlB,GAAQ9pB,IAElD,GAAIuqB,KACHC,IAAO,YACPC,IAAO,WAEPC,IAAO,YACPC,IAAO,aACPC,IAAO,YAEPC,IAAO,oBACPC,KAAQ,iCACRC,QAAW,2BAGZ,SAASC,IAAiBb,EAAID,GAC7B,GAAGC,EAAGc,MAAO,MAAOd,GAAGc,KAEvB,IAAIC,GAAMf,EAAGlN,MAAQ,GAAIhQ,EAAIie,EAAI1a,MAAM,cACvC,IAAGvD,GAAKsd,GAAetd,EAAE,IAAK,MAAOsd,IAAetd,EAAE,GAEtD,IAAGid,EAAI,CACNjd,GAAKie,EAAMhB,GAAI1Z,MAAM,oBACrB,IAAGvD,GAAKsd,GAAetd,EAAE,IAAK,MAAOsd,IAAetd,EAAE,IAGvD,MAAO,2BAIR,QAASke,IAAgBxS,GACxB,GAAI5Y,GAAO8B,EAAc8W,EACzB,IAAI3Y,KACJ,KAAI,GAAIC,GAAI,EAAGA,EAAIF,EAAKI,OAAQF,GAAI,GAAID,EAAEwF,KAAKzF,EAAKc,MAAMZ,EAAGA,EAAE,IAC/D,OAAOD,GAAEQ,KAAK,QAAU,OAiBzB,QAAS4qB,IAAuBC,GAC/B,GAAIC,GAAUD,EAAK7oB,QAAQ,0CAA2C,SAAS6B,GAC9E,GAAImK,GAAInK,EAAEjE,WAAW,GAAGiD,SAAS,IAAI6L,aACrC,OAAO,KAAOV,EAAErO,QAAU,EAAI,IAAMqO,EAAIA,IAGzC8c,GAAUA,EAAQ9oB,QAAQ,OAAQ,OAAOA,QAAQ,QAAS,MAE1D,IAAG8oB,EAAQjpB,OAAO,IAAM,KAAMipB,EAAU,MAAQA,EAAQzqB,MAAM,EAC9DyqB,GAAUA,EAAQ9oB,QAAQ,aAAc,OAAOA,QAAQ,SAAU,SAASA,QAAQ,gBAAiB,QAEnG,IAAIxC,MAAQ8D,EAAQwnB,EAAQxnB,MAAM,OAClC,KAAI,GAAIynB,GAAK,EAAGA,EAAKznB,EAAM3D,SAAUorB,EAAI,CACxC,GAAIvZ,GAAMlO,EAAMynB,EAChB,IAAGvZ,EAAI7R,QAAU,EAAG,CAAEH,EAAEwF,KAAK,GAAK,UAClC,IAAI,GAAIvF,GAAI,EAAGA,EAAI+R,EAAI7R,QAAS,CAC/B,GAAIqrB,GAAM,EACV,IAAIC,GAAMzZ,EAAInR,MAAMZ,EAAGA,EAAIurB,EAC3B,IAAGC,EAAIppB,OAAOmpB,EAAM,IAAM,IAAKA,QAC1B,IAAGC,EAAIppB,OAAOmpB,EAAM,IAAM,IAAKA,GAAO,MACtC,IAAGC,EAAIppB,OAAOmpB,EAAM,IAAM,IAAKA,GAAO,CAC3CC,GAAMzZ,EAAInR,MAAMZ,EAAGA,EAAIurB,EACvBvrB,IAAKurB,CACL,IAAGvrB,EAAI+R,EAAI7R,OAAQsrB,GAAO,GAC1BzrB,GAAEwF,KAAKimB,IAIT,MAAOzrB,GAAEQ,KAAK,QAEf,QAASkrB,IAAuB3rB,GAC/B,GAAIC,KAGJ,KAAI,GAAI2rB,GAAK,EAAGA,EAAK5rB,EAAKI,SAAUwrB,EAAI,CACvC,GAAIC,GAAO7rB,EAAK4rB,EAChB,OAAMA,GAAM5rB,EAAKI,QAAUyrB,EAAKvpB,OAAOupB,EAAKzrB,OAAS,IAAM,IAAKyrB,EAAOA,EAAK/qB,MAAM,EAAG+qB,EAAKzrB,OAAS,GAAKJ,IAAO4rB,EAC/G3rB,GAAEwF,KAAKomB,GAIR,IAAI,GAAIC,GAAK,EAAGA,EAAK7rB,EAAEG,SAAU0rB,EAAI7rB,EAAE6rB,GAAM7rB,EAAE6rB,GAAIrpB,QAAQ,qBAAsB,SAASoO,GAAM,MAAOtQ,QAAOC,aAAa+Q,SAASV,EAAG/P,MAAM,GAAI,MACjJ,OAAO+C,GAAI5D,EAAEQ,KAAK,SAInB,QAASsrB,IAAWxL,EAAKvgB,EAAMwgB,GAC9B,GAAIwL,GAAQ,GAAIC,EAAM,GAAIf,EAAQ,GAAIgB,CACtC,IAAIN,GAAK,CACT,MAAKA,EAAK,KAAMA,EAAI,CACnB,GAAIC,GAAO7rB,EAAK4rB,EAChB,KAAIC,GAAQA,EAAKpb,MAAM,SAAU,KACjC,IAAIvD,GAAI2e,EAAKpb,MAAM,uBACnB,IAAGvD,EAAG,OAAOA,EAAE,GAAG8G,eACjB,IAAK,mBAAoBgY,EAAQ9e,EAAE,GAAGif,MAAQ,OAC9C,IAAK,eAAgBjB,EAAQhe,EAAE,GAAGif,MAAQ,OAC1C,IAAK,4BAA6BF,EAAM/e,EAAE,GAAGif,MAAQ,WAGrDP,CACF,QAAOK,EAAIjY,eACV,IAAK,SAAUkY,EAAQroB,EAAIrB,EAAcxC,EAAKc,MAAM8qB,GAAInrB,KAAK,KAAO,OACpE,IAAK,mBAAoByrB,EAAQP,GAAuB3rB,EAAKc,MAAM8qB,GAAM,OACzE,QAAS,KAAM,IAAIpnB,OAAM,yCAA2CynB,IAErE,GAAItQ,GAAOkO,GAAQtJ,EAAKyL,EAAMlrB,MAAM0f,EAAKpgB,QAAS8rB,GAAQpC,OAAQ,MAClE,IAAGoB,EAAOvP,EAAKuP,MAAQA,EAGxB,QAASpP,IAAUH,EAAMC,GACxB,GAAGxX,EAAIuX,EAAK7a,MAAM,EAAE,KAAKkT,eAAiB,gBAAiB,KAAM,IAAIxP,OAAM,yBAC3E,IAAIgc,GAAQ5E,GAAWA,EAAQ4E,MAAQ,EAEvC,IAAIxgB,IAAQ0C,GAAWC,OAAOkC,SAAS8W,GAAQA,EAAKrY,SAAS,UAAYc,EAAIuX,IAAO5X,MAAM,OAC1F,IAAI6nB,GAAK,EAAGQ,EAAM,EAGlB,KAAIR,EAAK,EAAGA,EAAK5rB,EAAKI,SAAUwrB,EAAI,CACnCQ,EAAMpsB,EAAK4rB,EACX,KAAI,sBAAsBS,KAAKD,GAAM,QACrCA,GAAMA,EAAItrB,MAAMsrB,EAAIzsB,QAAQ,QAC5B,KAAI6gB,EAAMA,EAAO4L,EAAItrB,MAAM,EAAGsrB,EAAI9Y,YAAY,KAAO,EACrD,IAAG8Y,EAAItrB,MAAM,EAAG0f,EAAKpgB,SAAWogB,EAAM,QACtC,OAAMA,EAAKpgB,OAAS,EAAG,CACtBogB,EAAOA,EAAK1f,MAAM,EAAG0f,EAAKpgB,OAAS,EACnCogB,GAAOA,EAAK1f,MAAM,EAAG0f,EAAKlN,YAAY,KAAO,EAC7C,IAAG8Y,EAAItrB,MAAM,EAAE0f,EAAKpgB,SAAWogB,EAAM,OAIvC,GAAI8L,IAAatsB,EAAK,IAAM,IAAIyQ,MAAM,mBACtC,KAAI6b,EAAW,KAAM,IAAI9nB,OAAM,2BAC/B,IAAI+nB,GAAW,MAAQD,EAAU,IAAM,GAEvC,IAAIhP,MAAgBC,IACpB,IAAItd,IACHqd,UAAWA,EACXC,UAAWA,EAEZ+C,GAASrgB,EACT,IAAIusB,GAAUtD,EAAO,CACrB,KAAI0C,EAAK,EAAGA,EAAK5rB,EAAKI,SAAUwrB,EAAI,CACnC,GAAIC,GAAO7rB,EAAK4rB,EAChB,IAAGC,IAASU,GAAYV,IAASU,EAAW,KAAM,QAClD,IAAGrD,IAAQ6C,GAAW9rB,EAAGD,EAAKc,MAAM0rB,EAAUZ,GAAKpL,EACnDgM,GAAWZ,EAEZ,MAAO3rB,GAGR,QAAS0hB,IAAUpB,EAAK3E,GACvB,GAAInP,GAAOmP,KACX,IAAI2Q,GAAW9f,EAAK8f,UAAY,SAChCA,GAAW,UAAYA,CAEvB,IAAInnB,IACH,oBACA,8CAAgDmnB,EAASzrB,MAAM,GAAK,IACpE,GACA,GACA,GAGD,IAAI0f,GAAOD,EAAIhD,UAAU,GAAI4M,EAAK3J,EAAM4J,EAAK7J,EAAIjD,UAAU,EAC3D,KAAI,GAAIpd,GAAI,EAAGA,EAAIqgB,EAAIhD,UAAUnd,SAAUF,EAAG,CAC7CiqB,EAAK5J,EAAIhD,UAAUrd,GAAGY,MAAM0f,EAAKpgB,OACjCgqB,GAAK7J,EAAIjD,UAAUpd,EACnB,KAAIkqB,EAAG5L,OAAS4L,EAAGjlB,SAAWglB,GAAM,WAAiB,QAGrDA,GAAKA,EAAG1nB,QAAQ,yCAA0C,SAAS6B,GAClE,MAAO,KAAOA,EAAEjE,WAAW,GAAGiD,SAAS,IAAM,MAC3Cb,QAAQ,mBAAoB,SAASuK,GACvC,MAAO,KAAOA,EAAE3M,WAAW,GAAGiD,SAAS,IAAM,KAI9C,IAAImpB,GAAKrC,EAAGjlB,OAEZ,IAAIunB,GAAOhqB,GAAWC,OAAOkC,SAAS4nB,GAAMA,EAAGnpB,SAAS,UAAYc,EAAIqoB,EAGxE,IAAIE,GAAU,EAAGrnB,EAAIc,KAAK0M,IAAI,KAAM4Z,EAAKtsB,QAAS8R,EAAK,CACvD,KAAI,GAAI0a,GAAM,EAAGA,GAAOtnB,IAAKsnB,EAAK,IAAI1a,EAAGwa,EAAKrsB,WAAWusB,KAAS,IAAQ1a,EAAK,MAAQya,CACvF,IAAIE,GAAKF,GAAWrnB,EAAI,EAAI,CAE5BF,GAAIK,KAAK8mB,EACTnnB,GAAIK,KAAK,sBAAwBgH,EAAK+T,MAAQ,uBAAyB2J,EACvE/kB,GAAIK,KAAK,+BAAiConB,EAAK,mBAAqB,UACpEznB,GAAIK,KAAK,iBAAmBwlB,GAAiBb,EAAID,GACjD/kB,GAAIK,KAAK,GAETL,GAAIK,KAAKonB,EAAKxB,GAAuBqB,GAAQtB,GAAgBsB,IAE9DtnB,EAAIK,KAAK8mB,EAAW,SACpB,OAAOnnB,GAAI3E,KAAK,QAEjB,QAASqsB,IAAQrgB,GAChB,GAAIxM,KACJqgB,GAASrgB,EAAGwM,EACZ,OAAOxM,GAGR,QAAS4pB,IAAQtJ,EAAKrD,EAAM/X,EAASsH,GACpC,GAAIqd,GAASrd,GAAQA,EAAKqd,MAC1B,KAAIA,EAAQxJ,EAASC,EACrB,IAAI5E,IAAQmO,GAAU7Q,GAAI2H,KAAKL,EAAKrD,EACpC,KAAIvB,EAAM,CACT,GAAIoR,GAAQxM,EAAIhD,UAAU,EAC1B,IAAGL,EAAKpc,MAAM,EAAGisB,EAAM3sB,SAAW2sB,EAAOA,EAAQ7P,MAC5C,CACJ,GAAG6P,EAAMjsB,OAAO,IAAM,IAAKisB,GAAS,GACpCA,IAASA,EAAQ7P,GAAMza,QAAQ,KAAK,KAErCkZ,GAASuB,KAAMzD,EAASyD,GAAO3N,KAAM,EACrCgR,GAAIjD,UAAU7X,KAAKkW,EACnB4E,GAAIhD,UAAU9X,KAAKsnB,EACnB,KAAIjD,EAAQ7Q,GAAI3X,MAAM0rB,OAAOzM,GAE/B5E,EAAKxW,QAAU,CACdwW,GAAK6C,KAAOrZ,EAAUA,EAAQ/E,OAAS,CACvC,IAAGqM,EAAM,CACR,GAAGA,EAAKgU,MAAO9E,EAAKiE,MAAQnT,EAAKgU,KACjC,IAAGhU,EAAKyO,GAAIS,EAAKT,GAAKzO,EAAKyO,EAC3B,IAAGzO,EAAKqT,GAAInE,EAAKmE,GAAKrT,EAAKqT,GAE5B,MAAOnE,GAGR,QAASsR,IAAQ1M,EAAKrD,GACrBoD,EAASC,EACT,IAAI5E,GAAO1C,GAAI2H,KAAKL,EAAKrD,EACzB,IAAGvB,EAAM,IAAI,GAAI3L,GAAI,EAAGA,EAAIuQ,EAAIjD,UAAUld,SAAU4P,EAAG,GAAGuQ,EAAIjD,UAAUtN,IAAM2L,EAAM,CACnF4E,EAAIjD,UAAU4P,OAAOld,EAAG,EACxBuQ,GAAIhD,UAAU2P,OAAOld,EAAG,EACxB,OAAO,MAER,MAAO,OAGR,QAASmd,IAAQ5M,EAAK6M,EAAUC,GAC/B/M,EAASC,EACT,IAAI5E,GAAO1C,GAAI2H,KAAKL,EAAK6M,EACzB,IAAGzR,EAAM,IAAI,GAAI3L,GAAI,EAAGA,EAAIuQ,EAAIjD,UAAUld,SAAU4P,EAAG,GAAGuQ,EAAIjD,UAAUtN,IAAM2L,EAAM,CACnF4E,EAAIjD,UAAUtN,GAAGkN,KAAOzD,EAAS4T,EACjC9M,GAAIhD,UAAUvN,GAAKqd,CACnB,OAAO,MAER,MAAO,OAGR,QAASL,IAAOzM,GAAOM,EAAYN,EAAK,MAExCpH,EAAQyH,KAAOA,CACfzH,GAAQkH,KAAOA,CACflH,GAAQuC,MAAQA,CAChBvC,GAAQsK,MAAQA,CAChBtK,GAAQmU,UAAY/J,CACpBpK,GAAQ7X,OACPwrB,QAASA,GACTjD,QAASA,GACToD,QAASA,GACTE,QAASA,GACTH,OAAQA,GACRO,UAAWA,GACXC,WAAYA,GACZ7S,UAAWA,GACXjW,QAASA,EACTif,SAAUA,EACViD,YAAarC,GACbkJ,YAAarJ,GACb9B,OAAQA,EAGT,OAAOnJ,KAGP,IAAIsC,GACJ,SAASiS,IAAOnS,GAAME,GAAMF,EAG5B,QAASoS,IAAQ3tB,GAChB,SAAUA,KAAS,SAAU,MAAOiE,GAAKjE,EACzC,IAAG0D,MAAMW,QAAQrE,GAAO,MAAOuE,GAAIvE,EACnC,OAAOA,GAGR,QAAS4tB,IAAS5B,EAAO3N,EAASlb,GAEjC,SAAUsY,MAAQ,aAAeA,GAAI+H,cAAe,MAAOrgB,GAAMsY,GAAI+H,cAAcwI,EAAO3N,EAASlb,GAAOsY,GAAI+H,cAAcwI,EAAO3N,EACnI,UAAUwP,QAAS,YAAa,CAE/B,GAAG1qB,SAAckb,IAAW,SAAU,OAAOlb,GAC5C,IAAK,OAAQkb,EAAU,GAAIyP,aAAY3qB,GAAK4qB,OAAO1P,EAAU,OAC7D,IAAK,SAAUA,EAAUpa,EAAKoa,EAAU,OAExC,QAAS,KAAM,IAAI7Z,OAAM,wBAA0BrB,IAEpD,MAAO0qB,MAAKrK,cAAcwI,EAAO3N,GAElC,GAAIre,GAAQmD,GAAO,OAAU6qB,GAAU3P,GAAWA,CACnD,UAAU4P,eAAgB,YAAa,MAAOA,aAAYjuB,EAAMgsB,EAC/D,UAAUkC,QAAS,YAAa,CAC/B,GAAIxT,GAAO,GAAIwT,OAAMP,GAAQ3tB,KAASuP,KAAK,4BAC7C,UAAU4e,aAAc,aAAeA,UAAUC,WAAY,MAAOD,WAAUC,WAAW1T,EAAMsR,EAC/F,UAAUqC,UAAW,YAAa,MAAOA,QAAO3T,EAAMsR,EACpD,UAAUsC,OAAQ,mBAAsBC,YAAa,aAAeA,SAASC,eAAiBF,IAAIG,gBAAiB,CAClH,GAAIC,GAAMJ,IAAIG,gBAAgB/T,EACjC,UAAUiU,UAAW,iBAAoBA,OAAOC,eAAeC,UAAY,WAAY,CACnF,GAAGP,IAAIQ,uBAA0BC,cAAe,YAAaA,WAAW,WAAaT,IAAIQ,gBAAgBJ,IAAS,IAClH,OAAOC,QAAOC,UAAUC,UAAWH,IAAKA,EAAKjV,SAAUuS,EAAOqC,OAAQ,OAEvE,GAAIvI,GAAIyI,SAASC,cAAc,IAC/B,IAAG1I,EAAE+I,UAAY,KAAM,CAC1B/I,EAAE+I,SAAW7C,CAAOlG,GAAEkJ,KAAON,CAAKH,UAASU,KAAKC,YAAYpJ,EAAIA,GAAEqJ,OAClEZ,UAASU,KAAKG,YAAYtJ,EACtB,IAAGwI,IAAIQ,uBAA0BC,cAAe,YAAaA,WAAW,WAAaT,IAAIQ,gBAAgBJ,IAAS,IAClH,OAAOA,KAKV,SAAUW,KAAM,mBAAsBC,QAAS,mBAAsBC,UAAW,YAAa,IAE5F,GAAInqB,GAAMkqB,KAAKtD,EAAQ5mB,GAAIoqB,KAAK,IAAMpqB,GAAIqqB,SAAW,QACrD,IAAG/rB,MAAMW,QAAQga,GAAUA,EAAUja,EAAIia,EACzCjZ,GAAIqe,MAAMpF,EAAUjZ,GAAIsqB,OAAS,OAAOrR,GACvC,MAAMpb,GAAK,IAAIA,EAAEihB,UAAYjhB,EAAEihB,QAAQzT,MAAM,YAAa,KAAMxN,GAClE,KAAM,IAAIuB,OAAM,oBAAsBwnB,GAIvC,QAAS2D,IAAY9M,GACpB,SAAUpH,MAAQ,YAAa,MAAOA,IAAI2E,aAAayC,EACvD,UAAUgL,QAAS,YAAa,MAAOA,MAAKzN,aAAayC,EAEzD,UAAUwM,KAAM,mBAAsBC,QAAS,mBAAsBC,UAAW,YAAa,IAE5F,GAAIK,GAASN,KAAKzM,EAAO+M,GAAOJ,KAAK,IAAMI,GAAOH,SAAW,QAC7D,IAAIzvB,GAAO4vB,EAAOvP,MAAQuP,GAAOF,OACjC,OAAO1vB,GACN,MAAMiD,GAAK,IAAIA,EAAEihB,UAAYjhB,EAAEihB,QAAQzT,MAAM,YAAa,KAAMxN,GAClE,KAAM,IAAIuB,OAAM,sBAAwBqe,GAEzC,QAASgN,IAAK5vB,GACb,GAAI6vB,GAAK3O,OAAO0O,KAAK5vB,GAAI8vB,IACzB,KAAI,GAAI7vB,GAAI,EAAGA,EAAI4vB,EAAG1vB,SAAUF,EAAG,GAAGihB,OAAO6O,UAAUC,eAAehrB,KAAKhF,EAAG6vB,EAAG5vB,IAAK6vB,EAAGtqB,KAAKqqB,EAAG5vB,GACjG,OAAO6vB,GAGR,QAASG,IAAUC,EAAKC,GACvB,GAAInwB,MAAUowB,EAAIR,GAAKM,EACvB,KAAI,GAAIjwB,GAAI,EAAGA,IAAMmwB,EAAEjwB,SAAUF,EAAG,GAAGD,EAAEkwB,EAAIE,EAAEnwB,IAAIkwB,KAAS,KAAMnwB,EAAEkwB,EAAIE,EAAEnwB,IAAIkwB,IAAQC,EAAEnwB,EACxF,OAAOD,GAGR,QAASqwB,IAAMH,GACd,GAAIlwB,MAAUowB,EAAIR,GAAKM,EACvB,KAAI,GAAIjwB,GAAI,EAAGA,IAAMmwB,EAAEjwB,SAAUF,EAAGD,EAAEkwB,EAAIE,EAAEnwB,KAAOmwB,EAAEnwB,EACrD,OAAOD,GAGR,QAASswB,IAAUJ,GAClB,GAAIlwB,MAAUowB,EAAIR,GAAKM,EACvB,KAAI,GAAIjwB,GAAI,EAAGA,IAAMmwB,EAAEjwB,SAAUF,EAAGD,EAAEkwB,EAAIE,EAAEnwB,KAAOqR,SAAS8e,EAAEnwB,GAAG,GACjE,OAAOD,GAGR,QAASuwB,IAAUL,GAClB,GAAIlwB,MAAUowB,EAAIR,GAAKM,EACvB,KAAI,GAAIjwB,GAAI,EAAGA,IAAMmwB,EAAEjwB,SAAUF,EAAG,CACnC,GAAGD,EAAEkwB,EAAIE,EAAEnwB,MAAQ,KAAMD,EAAEkwB,EAAIE,EAAEnwB,OACjCD,GAAEkwB,EAAIE,EAAEnwB,KAAKuF,KAAK4qB,EAAEnwB,IAErB,MAAOD,GAGR,GAAIwwB,IAAW,GAAIjjB,MAAK,KAAM,GAAI,GAAI,EAAG,EAAG,EAC5C,SAASkjB,IAAQ5qB,EAAGyH,GACnB,GAAIa,GAAQtI,EAAEmI,SACd,IAAGV,EAAUa,GAAS,KAAK,GAAG,GAAG,GAAG,GACpC,IAAIuiB,GAAWF,GAASxiB,WAAanI,EAAEuI,oBAAsBoiB,GAASpiB,qBAAuB,GAC7F,QAAQD,EAAQuiB,IAAa,GAAK,GAAK,GAAK,KAE7C,GAAIC,IAAU,GAAIpjB,KAClB,IAAImjB,IAAWF,GAASxiB,WAAa2iB,GAAQviB,oBAAsBoiB,GAASpiB,qBAAuB,GACnG,IAAIwiB,IAAYD,GAAQviB,mBACxB,SAASyiB,IAAQhrB,GAChB,GAAIV,GAAM,GAAIoI;AACdpI,EAAI2rB,QAAQjrB,EAAI,GAAK,GAAK,GAAK,IAAO6qB,GACtC,IAAIvrB,EAAIiJ,sBAAwBwiB,GAAW,CAC1CzrB,EAAI2rB,QAAQ3rB,EAAI6I,WAAa7I,EAAIiJ,oBAAsBwiB,IAAa,KAErE,MAAOzrB,GAIR,QAAS4rB,IAAaltB,GACrB,GAAImtB,GAAM,EAAG/V,EAAK,EAAGtO,EAAO,KAC5B,IAAIM,GAAIpJ,EAAE2M,MAAM,6EAChB,KAAIvD,EAAG,KAAM,IAAI1I,OAAM,IAAMV,EAAI,+BACjC,KAAI,GAAI5D,GAAI,EAAGA,GAAKgN,EAAE9M,SAAUF,EAAG,CAClC,IAAIgN,EAAEhN,GAAI,QACVgb,GAAK,CACL,IAAGhb,EAAI,EAAG0M,EAAO,IACjB,QAAOM,EAAEhN,GAAGY,MAAMoM,EAAEhN,GAAGE,OAAO,IAC7B,IAAK,IACJ,KAAM,IAAIoE,OAAM,mCAAqC0I,EAAEhN,GAAGY,MAAMoM,EAAEhN,GAAGE,OAAO,IAC7E,IAAK,IAAK8a,GAAM,GAEhB,IAAK,IAAKA,GAAM,GAEhB,IAAK,IACJ,IAAItO,EAAM,KAAM,IAAIpI,OAAM,yCACrB0W,IAAM,GAEZ,IAAK,IAAK,OAEX+V,GAAO/V,EAAK3J,SAASrE,EAAEhN,GAAI,IAE5B,MAAO+wB,GAGR,GAAIC,IAAiB,GAAI1jB,MAAK,2BAC9B,IAAI2jB,IAAe9uB,MAAM6uB,GAAevjB,eAAiB,GAAIH,MAAK,WAAa0jB,EAC/E,IAAIE,IAAUD,GAAaxjB,eAAiB,IAE5C,SAAS0jB,IAAUpf,EAAKqf,GACvB,GAAI9rB,GAAI,GAAIgI,MAAKyE,EACjB,IAAGmf,GAAS,CACb,GAAGE,EAAU,EAAG9rB,EAAEurB,QAAQvrB,EAAEyI,UAAYzI,EAAE6I,oBAAsB,GAAK,SAC9D,IAAGijB,EAAU,EAAG9rB,EAAEurB,QAAQvrB,EAAEyI,UAAYzI,EAAE6I,oBAAsB,GAAK,IAC1E,OAAO7I,GAER,GAAGyM,YAAezE,MAAM,MAAOyE,EAC/B,IAAGkf,GAAaxjB,eAAiB,OAAStL,MAAMmD,EAAEmI,eAAgB,CACjE,GAAI7J,GAAI0B,EAAEmI,aACV,IAAGsE,EAAItS,QAAQ,GAAKmE,IAAM,EAAG,MAAO0B,EACpCA,GAAE4U,YAAY5U,EAAEmI,cAAgB,IAAM,OAAOnI,GAE9C,GAAIuR,GAAI9E,EAAIxB,MAAM,UAAU,OAAO,IAAI,KAAK,IAAI,IAAI,IACpD,IAAIrL,GAAM,GAAIoI,OAAMuJ,EAAE,IAAKA,EAAE,GAAK,GAAIA,EAAE,IAAMA,EAAE,IAAI,GAAMA,EAAE,IAAI,GAAMA,EAAE,IAAI,EAC5E,IAAG9E,EAAItS,QAAQ,MAAQ,EAAGyF,EAAM,GAAIoI,MAAKpI,EAAI6I,UAAY7I,EAAIiJ,oBAAsB,GAAK,IACxF,OAAOjJ,GAGR,QAASmsB,IAAOC,EAAKC,GACpB,GAAG/uB,GAAWC,OAAOkC,SAAS2sB,GAAM,CACnC,GAAGC,GAAWpuB,EAAa,CAE1B,GAAGmuB,EAAI,IAAM,KAAQA,EAAI,IAAM,IAAM,MAAOxD,IAAUwD,EAAI1wB,MAAM,GAAGwC,SAAS,WAC5E,IAAGkuB,EAAI,IAAM,KAAQA,EAAI,IAAM,IAAM,MAAOxD,IAAUttB,EAAY8wB,EAAI1wB,MAAM,GAAGwC,SAAS,YAEzF,MAAOkuB,GAAIluB,SAAS,UAGrB,SAAUouB,eAAgB,YAAa,IACtC,GAAGD,EAAS,CACX,GAAGD,EAAI,IAAM,KAAQA,EAAI,IAAM,IAAM,MAAOxD,IAAU,GAAI0D,aAAY,YAAYnwB,OAAOiwB,EAAI1wB,MAAM,IACnG,IAAG0wB,EAAI,IAAM,KAAQA,EAAI,IAAM,IAAM,MAAOxD,IAAU,GAAI0D,aAAY,YAAYnwB,OAAOiwB,EAAI1wB,MAAM,KAEpG,GAAIkkB,IACH2M,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAChEC,IAAU,IAAQC,IAAU,IAAQC,IAAU,IAE/C,IAAG3vB,MAAMW,QAAQmtB,GAAMA,EAAM,GAAI/tB,YAAW+tB,EAC5C,OAAO,IAAIE,aAAY,UAAUnwB,OAAOiwB,GAAK/uB,QAAQ,iCAAkC,SAAS6B,GAAK,MAAO0gB,GAAI1gB,IAAMA,IACrH,MAAMrB,IAER,GAAIhD,KACJ,KAAI,GAAIC,GAAI,EAAGA,GAAKsxB,EAAIpxB,SAAUF,EAAGD,EAAEwF,KAAKlF,OAAOC,aAAagxB,EAAItxB,IACpE,OAAOD,GAAEQ,KAAK,IAGf,QAAS6yB,IAAIrzB,GACZ,SAAUszB,OAAQ,cAAgB7vB,MAAMW,QAAQpE,GAAI,MAAOszB,MAAK7X,MAAM6X,KAAKC,UAAUvzB,GACrF,UAAUA,IAAK,UAAYA,GAAK,KAAM,MAAOA,EAC7C,IAAGA,YAAauN,MAAM,MAAO,IAAIA,MAAKvN,EAAEgO,UACxC,IAAI7I,KACJ,KAAI,GAAIka,KAAKrf,GAAG,GAAGkhB,OAAO6O,UAAUC,eAAehrB,KAAKhF,EAAGqf,GAAIla,EAAIka,GAAKgU,GAAIrzB,EAAEqf,GAC9E,OAAOla,GAGR,QAASY,IAAK1B,EAAE2Q,GAAK,GAAIhV,GAAI,EAAI,OAAMA,EAAEG,OAAS6U,EAAGhV,GAAGqE,CAAG,OAAOrE,GAGlE,QAASwzB,IAAS3vB,GACjB,GAAIgC,GAAI4tB,OAAO5vB,EACf,KAAIzB,MAAMyD,GAAI,MAAO6tB,UAAS7tB,GAAKA,EAAI8tB,GACvC,KAAI,KAAKvH,KAAKvoB,GAAI,MAAOgC,EACzB,IAAI+tB,GAAK,CACT,IAAIlkB,GAAK7L,EAAErB,QAAQ,iBAAiB,QAAQA,QAAQ,OAAO,IAAIA,QAAQ,OAAQ,WAAaoxB,GAAM,GAAK,OAAO,IAC9G,KAAIxxB,MAAMyD,EAAI4tB,OAAO/jB,IAAM,MAAO7J,GAAI+tB,CACtClkB,GAAKA,EAAGlN,QAAQ,aAAa,SAASoO,EAAIC,GAAM+iB,GAAMA,CAAI,OAAO/iB,IACjE,KAAIzO,MAAMyD,EAAI4tB,OAAO/jB,IAAM,MAAO7J,GAAI+tB,CACtC,OAAO/tB,GAIR,GAAIguB,IAAQ,4FAEZ,SAASC,IAAW3mB,GAEhB,IAAIA,EAAE,GAAI,MAAO,IAAII,MAAK,KAAK,GAAG,IAAKJ,EAAE,GAAG,IAAOA,EAAE,IAAM,IAAM,GAAK,GAAI,EAAG,EAAG,EAChF,IAAGA,EAAE,GAAI,CACL,GAAGA,EAAE,GAAI,MAAO,IAAII,MAAK,KAAK,GAAG,IAAKJ,EAAE,GAAG,IAAOA,EAAE,IAAM,IAAM,GAAK,IAAKA,EAAE,IAAKA,EAAE,GAAI0H,WAAW1H,EAAE,IAAI,SACnG,OAAO,IAAII,MAAK,KAAK,GAAG,GAAIJ,EAAE,IAAM,IAAM,GAAK,GAAKA,EAAE,IAAKA,EAAE,GAAI0H,WAAW1H,EAAE,IAAI,SAEtF,IAAGA,EAAE,GAAI,MAAO,IAAII,MAAK,KAAK,GAAG,IAAMJ,EAAE,GAAG,IAAOA,EAAE,IAAM,IAAM,GAAK,IAAKA,EAAE,IAAKA,EAAE,GAAIA,EAAE,GAAK0H,WAAW1H,EAAE,IAAM,IAAO,OACzH,OAAO,IAAII,MAAK,KAAK,GAAG,IAAKJ,EAAE,GAAG,IAAOA,EAAE,IAAM,IAAM,GAAK,IAAKA,EAAE,GAAI,EAAG,GAEnF,GAAI4mB,KAAgB,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,WAClI,SAASC,IAAUnwB,GAClB,GAAIowB,GAAQpwB,EAAEkQ,aACd,IAAImgB,GAAOD,EAAMzxB,QAAQ,OAAQ,KAAK0pB,MACtC,IAAI/e,GAAI+mB,EAAK1jB,MAAMqjB,GACnB,IAAG1mB,EAAG,MAAO2mB,IAAW3mB,EAExB,IAAInN,GAAI,GAAIuN,MAAK1J,GAAIiT,EAAI,GAAIvJ,MAAKomB,IAClC,IAAI3mB,GAAIhN,EAAEm0B,UAAWlnB,EAAIjN,EAAE2N,WAAYpI,EAAIvF,EAAEyN,SAC7C,IAAGrL,MAAMmD,GAAI,MAAOuR,EACpB,IAAGmd,EAAMzjB,MAAM,mDAAoD,CAClEyjB,EAAQA,EAAMzxB,QAAQ,UAAU,IAAIA,QAAQ,6BAA6B,GACzE,IAAGyxB,EAAM9zB,OAAS,GAAK4zB,GAAar0B,QAAQu0B,KAAW,EAAG,MAAOnd,OAC3D,IAAGmd,EAAMzxB,QAAQ,SAAU,IAAIgO,MAAM,SAAU,MAAOsG,EAC7D,IAAG9J,EAAI,GAAKA,EAAI,MAAQnJ,EAAE2M,MAAM,iBAAkB,MAAOsG,EACzD,OAAO9W,GAGR,GAAIo0B,IAAc,WACjB,GAAIC,GAAmB,UAAUvwB,MAAM,UAAU3D,QAAU,CAC3D,OAAO,SAASi0B,GAAYpiB,EAAKsiB,EAAIC,GACpC,GAAGF,SAA2BC,IAAM,SAAU,MAAOtiB,GAAIlO,MAAMwwB,EAC/D,IAAI/a,GAAIvH,EAAIlO,MAAMwwB,GAAKt0B,GAAKuZ,EAAE,GAC9B,KAAI,GAAItZ,GAAI,EAAGA,EAAIsZ,EAAEpZ,SAAUF,EAAG,CAAED,EAAEwF,KAAK+uB,EAAMv0B,GAAEwF,KAAK+T,EAAEtZ,IAC1D,MAAOD,MAGT,SAASw0B,IAAWz0B,GACnB,IAAIA,EAAM,MAAO,KACjB,IAAGA,EAAKmF,SAAWnF,EAAKuP,KAAM,MAAOgiB,IAAOvxB,EAAKmF,QAAS,KAC1D,IAAGnF,EAAKA,KAAM,MAAOW,GAAMX,EAAKA,KAChC,IAAGA,EAAK00B,cAAgBhyB,EAAS,MAAO/B,GAAMX,EAAK00B,eAAepxB,SAAS,UAC3E,IAAGtD,EAAK20B,SAAU,MAAOh0B,GAAMX,EAAK20B,WACpC,IAAG30B,EAAK40B,OAAS50B,EAAK40B,MAAMC,WAAY,MAAOl0B,GAAM4wB,GAAO7tB,MAAMssB,UAAUlvB,MAAMmE,KAAKjF,EAAK40B,MAAMC,aAAa,IAC/G,OAAO,MAGR,QAASC,IAAW90B,GACnB,IAAIA,EAAM,MAAO,KACjB,IAAGA,EAAKA,KAAM,MAAOD,GAAWC,EAAKA,KACrC,IAAGA,EAAK00B,cAAgBhyB,EAAS,MAAO1C,GAAK00B,cAC7C,IAAG10B,EAAK40B,OAAS50B,EAAK40B,MAAMC,WAAY,CACvC,GAAI50B,GAAID,EAAK40B,MAAMC,YACnB,UAAU50B,IAAK,SAAU,MAAOF,GAAWE,EAC3C,OAAOyD,OAAMssB,UAAUlvB,MAAMmE,KAAKhF,GAEnC,GAAGD,EAAKmF,SAAWnF,EAAKuP,KAAM,MAAOvP,GAAKmF,OAC1C,OAAO,MAGR,QAAS4vB,IAAQ/0B,GAAQ,MAAQA,IAAQA,EAAKkd,KAAKpc,OAAO,KAAO,OAAUg0B,GAAW90B,GAAQy0B,GAAWz0B,GAIzG,QAASg1B,IAAeC,EAAKtZ,GAC5B,GAAI2D,GAAI2V,EAAI1X,WAAasS,GAAKoF,EAAI7X,MAClC,IAAIpI,GAAI2G,EAAK3H,cAAcvR,QAAQ,QAAS,MAAOyyB,EAAIlgB,EAAEvS,QAAQ,MAAM,IACvE,KAAI,GAAIvC,GAAE,EAAGA,EAAEof,EAAElf,SAAUF,EAAG,CAC7B,GAAI6W,GAAIuI,EAAEpf,GAAGuC,QAAQ,kBAAkB,IAAIuR,aAC3C,IAAGgB,GAAK+B,GAAKme,GAAKne,EAAG,MAAOke,GAAI7X,MAAQ6X,EAAI7X,MAAMkC,EAAEpf,IAAM+0B,EAAI3X,UAAUpd,GAEzE,MAAO,MAGR,QAASi1B,IAAWF,EAAKtZ,GACxB,GAAI1b,GAAI+0B,GAAeC,EAAKtZ,EAC5B,IAAG1b,GAAK,KAAM,KAAM,IAAIuE,OAAM,oBAAsBmX,EAAO,UAC3D,OAAO1b,GAGR,QAASm1B,IAAWH,EAAKtZ,EAAM0Z,GAC9B,IAAIA,EAAM,MAAON,IAAQI,GAAWF,EAAKtZ,GACzC,KAAIA,EAAM,MAAO,KACjB,KAAM,MAAOyZ,IAAWH,EAAKtZ,GAAS,MAAM1Y,GAAK,MAAO,OAGzD,QAASqyB,IAAUL,EAAKtZ,EAAM0Z,GAC7B,IAAIA,EAAM,MAAOZ,IAAWU,GAAWF,EAAKtZ,GAC5C,KAAIA,EAAM,MAAO,KACjB,KAAM,MAAO2Z,IAAUL,EAAKtZ,GAAS,MAAM1Y,GAAK,MAAO,OAGxD,QAASsyB,IAAUN,EAAKtZ,EAAM0Z,GAC7B,IAAIA,EAAM,MAAOP,IAAWK,GAAWF,EAAKtZ,GAC5C,KAAIA,EAAM,MAAO,KACjB,KAAM,MAAO4Z,IAAUN,EAAKtZ,GAAS,MAAM1Y,GAAK,MAAO,OAGxD,QAASuyB,IAAWP,GACnB,GAAI3V,GAAI2V,EAAI1X,WAAasS,GAAKoF,EAAI7X,OAAQnd,IAC1C,KAAI,GAAIC,GAAI,EAAGA,EAAIof,EAAElf,SAAUF,EAAG,GAAGof,EAAEpf,GAAGY,OAAO,IAAM,IAAKb,EAAEwF,KAAK6Z,EAAEpf,GAAGuC,QAAQ,kBAAmB,IACnG,OAAOxC,GAAEqhB,OAGV,QAASmU,IAAaR,EAAKpS,EAAM1d,GAChC,GAAG8vB,EAAI1X,UAAW,CACjB,SAAUpY,IAAW,SAAU,CAC9B,GAAIuwB,EACJ,IAAGhzB,EAASgzB,EAAM5yB,EAAYqC,OAGzBuwB,GAAMxwB,EAAWC,EACtB,OAAO8T,IAAI3X,MAAMuoB,QAAQoL,EAAKpS,EAAM6S,GAErCzc,GAAI3X,MAAMuoB,QAAQoL,EAAKpS,EAAM1d,OAEzB8vB,GAAItZ,KAAKkH,EAAM1d,GAGrB,QAASwwB,MAAY,MAAO1c,IAAI3X,MAAMwrB,UAEtC,QAAS8I,IAASpwB,EAAGvF,GACpB,OAAOA,EAAEsP,MACR,IAAK,SAAU,MAAO0J,IAAIoH,KAAK7a,GAAK+J,KAAM,WAC1C,IAAK,SAAU,MAAO0J,IAAIoH,KAAK7a,GAAK+J,KAAM,WAC1C,IAAK,UAAU,IAAK,QAAS,MAAO0J,IAAIoH,KAAK7a,GAAK+J,KAAM,YAEzD,KAAM,IAAI/K,OAAM,qBAAuBvE,EAAEsP,MAG1C,QAASsmB,IAAahT,EAAMpR,GAC3B,GAAGoR,EAAKvgB,OAAO,IAAM,IAAK,MAAOugB,GAAK/hB,MAAM,EAC5C,IAAIg1B,GAASrkB,EAAK1N,MAAM,IACxB,IAAG0N,EAAK3Q,OAAO,IAAM,IAAKg1B,EAAO9U,KACjC,IAAI+U,GAASlT,EAAK9e,MAAM,IACxB,OAAOgyB,EAAO31B,SAAW,EAAG,CAC3B,GAAI41B,GAAOD,EAAOrY,OAClB,IAAIsY,IAAS,KAAMF,EAAO9U,UACrB,IAAIgV,IAAS,IAAKF,EAAOrwB,KAAKuwB,GAEpC,MAAOF,GAAOr1B,KAAK,KAEpB,GAAIw1B,IAAa,6DACjB,IAAIC,IAAU,wEACd,IAAIC,IAAU,+FAAgGC,GAAY,UAC1H,IAAIC,IAAWJ,GAAWxlB,MAAM0lB,IAAaA,GAAYC,EACzD,IAAIE,IAAQ,QAASC,GAAW,YAChC,SAASC,IAAYC,EAAKC,EAAWC,GACpC,GAAIC,KACJ,IAAIC,GAAK,EAAGvyB,EAAI,CAChB,MAAMuyB,IAAOJ,EAAIr2B,SAAUy2B,EAAI,IAAIvyB,EAAImyB,EAAIp2B,WAAWw2B,MAAS,IAAMvyB,IAAM,IAAMA,IAAM,GAAI,KAC3F,KAAIoyB,EAAWE,EAAE,GAAKH,EAAI31B,MAAM,EAAG+1B,EACnC,IAAGA,IAAOJ,EAAIr2B,OAAQ,MAAOw2B,EAC7B,IAAI1pB,GAAIupB,EAAIhmB,MAAMylB,IAAYlmB,EAAE,EAAGlK,EAAE,GAAI5F,EAAE,EAAGqM,EAAE,GAAI2F,EAAG,GAAI4kB,EAAO,CAClE,IAAG5pB,EAAG,IAAIhN,EAAI,EAAGA,GAAKgN,EAAE9M,SAAUF,EAAG,CACpCgS,EAAKhF,EAAEhN,EACP,KAAIoE,EAAE,EAAGA,GAAK4N,EAAG9R,SAAUkE,EAAG,GAAG4N,EAAG7R,WAAWiE,KAAO,GAAI,KAC1DiI,GAAI2F,EAAGpR,MAAM,EAAEwD,GAAG6nB,MAClB,OAAMja,EAAG7R,WAAWiE,EAAE,IAAM,KAAMA,CAClCwyB,IAASD,EAAG3kB,EAAG7R,WAAWiE,EAAE,KAAO,IAAMuyB,GAAM,GAAM,EAAI,CACzD/wB,GAAIoM,EAAGpR,MAAMwD,EAAE,EAAEwyB,EAAM5kB,EAAG9R,OAAO02B,EACjC,KAAI9mB,EAAE,EAAEA,GAAGzD,EAAEnM,SAAS4P,EAAG,GAAGzD,EAAElM,WAAW2P,KAAO,GAAI,KACpD,IAAGA,IAAIzD,EAAEnM,OAAQ,CAChB,GAAGmM,EAAE5M,QAAQ,KAAO,EAAG4M,EAAIA,EAAEzL,MAAM,EAAGyL,EAAE5M,QAAQ,KAChDi3B,GAAErqB,GAAKzG,CACP,KAAI6wB,EAASC,EAAErqB,EAAEyH,eAAiBlO,MAE9B,CACJ,GAAIwZ,IAAKtP,IAAI,GAAKzD,EAAEzL,MAAM,EAAE,KAAK,QAAQ,QAAQ,IAAIyL,EAAEzL,MAAMkP,EAAE,EAC/D,IAAG4mB,EAAEtX,IAAM/S,EAAEzL,MAAMkP,EAAE,EAAEA,IAAM,MAAO,QACpC4mB,GAAEtX,GAAKxZ,CACP,KAAI6wB,EAASC,EAAEtX,EAAEtL,eAAiBlO,GAGpC,MAAO8wB,GAER,QAASG,IAAS91B,GAAK,MAAOA,GAAEwB,QAAQ8zB,GAAU,OAElD,GAAIS,KACHC,SAAU,IACVC,SAAU,IACVC,OAAQ,IACRC,OAAQ,IACRC,QAAS,IAEV,IAAIC,IAAYhH,GAAM0G,GAItB,IAAIO,IAAc,WAEjB,GAAIC,GAAW,+CAAgDC,EAAY,sBAC3E,SAASC,GAAgBpM,GACxB,GAAIxnB,GAAIwnB,EAAO,GAAIprB,EAAI4D,EAAEnE,QAAQ,YACjC,IAAGO,IAAM,EAAG,MAAO4D,GAAErB,QAAQ+0B,EAAU,SAAS3mB,EAAIC,GAAM,MAAOkmB,IAAUnmB,IAAKtQ,OAAOC,aAAa+Q,SAAST,EAAGD,EAAGlR,QAAQ,MAAM,EAAE,GAAG,MAAMkR,IAAOpO,QAAQg1B,EAAU,SAASvqB,EAAE5I,GAAI,MAAO/D,QAAOC,aAAa+Q,SAASjN,EAAE,MAC1N,IAAI0L,GAAIlM,EAAEnE,QAAQ,MAClB,OAAO+3B,GAAgB5zB,EAAEhD,MAAM,EAAGZ,IAAM4D,EAAEhD,MAAMZ,EAAE,EAAE8P,GAAK0nB,EAAgB5zB,EAAEhD,MAAMkP,EAAE,IAEpF,MAAO,SAASunB,GAAYjM,EAAMqM,GACjC,GAAIvyB,GAAMsyB,EAAgBpM,EAC1B,OAAOqM,GAAOvyB,EAAI3C,QAAQ,QAAS,MAAQ2C,KAI7C,IAAIwyB,IAAS,WAAYC,GAAW,4CACpC,SAASC,IAAUxM,GAClB,GAAIxnB,GAAIwnB,EAAO,EACf,OAAOxnB,GAAErB,QAAQm1B,GAAU,SAAS3qB,GAAK,MAAOqqB,IAAUrqB,KAAOxK,QAAQo1B,GAAS,SAAS/zB,GAAK,MAAO,MAAQ,MAAMA,EAAEzD,WAAW,GAAGiD,SAAS,KAAKxC,OAAO,GAAK,MAEhK,QAASi3B,IAAazM,GAAO,MAAOwM,IAAUxM,GAAM7oB,QAAQ,KAAK,WAEjE,GAAIu1B,IAAe,kBACnB,SAASC,IAAW3M,GACnB,GAAIxnB,GAAIwnB,EAAO,EACf,OAAOxnB,GAAErB,QAAQm1B,GAAU,SAAS3qB,GAAK,MAAOqqB,IAAUrqB,KAAOxK,QAAQ,MAAO,SAASA,QAAQu1B,GAAa,SAASl0B,GAAK,MAAO,OAAS,MAAMA,EAAEzD,WAAW,GAAGiD,SAAS,KAAKxC,OAAO,GAAK,MAG7L,QAASo3B,IAAW5M,GACnB,GAAIxnB,GAAIwnB,EAAO,EACf,OAAOxnB,GAAErB,QAAQm1B,GAAU,SAAS3qB,GAAK,MAAOqqB,IAAUrqB,KAAOxK,QAAQu1B,GAAa,SAASl0B,GAAK,MAAO,MAASA,EAAEzD,WAAW,GAAGiD,SAAS,IAAK6L,cAAgB,MAInK,GAAIgpB,IAAc,WACjB,GAAIC,GAAW,WACf,SAASC,GAAQxnB,EAAGC,GAAM,MAAOvQ,QAAOC,aAAa+Q,SAAST,EAAG,KACjE,MAAO,SAASqnB,GAAYlmB,GAAO,MAAOA,GAAIxP,QAAQ21B,EAASC,MAEhE,SAASC,IAAcrmB,GAAO,MAAOA,GAAIxP,QAAQ,iBAAiB,SAGlE,QAAS81B,IAAaC,GACrB,OAAOA,GACN,IAAK,IAAG,IAAK,OAAO,IAAK,KAAK,IAAK,OAAS,MAAO,MACnD,IAAK,IAAG,IAAK,QAAO,IAAK,KAAK,IAAK,QAAS,MAAO,QAGpD,MAAO,OAGR,QAASC,IAAUC,GAClB,GAAItzB,GAAM,GAAIlF,EAAI,EAAGoE,EAAI,EAAGkB,EAAI,EAAGvC,EAAI,EAAG+R,EAAI,EAAGvG,EAAI,CACrD,OAAOvO,EAAIw4B,EAAKt4B,OAAQ,CACvBkE,EAAIo0B,EAAKr4B,WAAWH,IACpB,IAAIoE,EAAI,IAAK,CAAEc,GAAO7E,OAAOC,aAAa8D,EAAI,UAC9CkB,EAAIkzB,EAAKr4B,WAAWH,IACpB,IAAIoE,EAAE,KAAOA,EAAE,IAAK,CAAE0Q,GAAM1Q,EAAI,KAAO,CAAI0Q,IAAMxP,EAAI,EAAKJ,IAAO7E,OAAOC,aAAawU,EAAI,UACzF/R,EAAIy1B,EAAKr4B,WAAWH,IACpB,IAAIoE,EAAI,IAAK,CAAEc,GAAO7E,OAAOC,cAAe8D,EAAI,KAAO,IAAQkB,EAAI,KAAO,EAAMvC,EAAI,GAAM,UAC1F+R,EAAI0jB,EAAKr4B,WAAWH,IACpBuO,KAAOnK,EAAI,IAAM,IAAQkB,EAAI,KAAO,IAAQvC,EAAI,KAAO,EAAM+R,EAAI,IAAK,KACtE5P,IAAO7E,OAAOC,aAAa,OAAWiO,IAAI,GAAI,MAC9CrJ,IAAO7E,OAAOC,aAAa,OAAUiO,EAAE,OAExC,MAAOrJ,GAGR,QAASuzB,IAAU34B,GAClB,GAAIoF,GAAM7B,EAAY,EAAEvD,EAAKI,QAASqO,EAAGvO,EAAG8P,EAAI,EAAGsP,EAAI,EAAGsZ,EAAG,EAAGt0B,CAChE,KAAIpE,EAAI,EAAGA,EAAIF,EAAKI,OAAQF,GAAG8P,EAAG,CACjCA,EAAI,CACJ,KAAI1L,EAAEtE,EAAKK,WAAWH,IAAM,IAAKuO,EAAInK,MAChC,IAAGA,EAAI,IAAK,CAAEmK,GAAKnK,EAAE,IAAI,IAAItE,EAAKK,WAAWH,EAAE,GAAG,GAAK8P,GAAE,MACzD,IAAG1L,EAAI,IAAK,CAAEmK,GAAGnK,EAAE,IAAI,MAAMtE,EAAKK,WAAWH,EAAE,GAAG,IAAI,IAAIF,EAAKK,WAAWH,EAAE,GAAG,GAAK8P,GAAE,MACtF,CAAEA,EAAI,CACVvB,IAAKnK,EAAI,GAAG,QAAQtE,EAAKK,WAAWH,EAAE,GAAG,IAAI,MAAMF,EAAKK,WAAWH,EAAE,GAAG,IAAI,IAAIF,EAAKK,WAAWH,EAAE,GAAG,GACrGuO,IAAK,KAAOmqB,GAAK,OAAWnqB,IAAI,GAAI,KAAOA,GAAI,OAAUA,EAAE,MAE5D,GAAGmqB,IAAO,EAAG,CAAExzB,EAAIka,KAAOsZ,EAAG,GAAKxzB,GAAIka,KAAOsZ,IAAK,CAAGA,GAAK,EAC1DxzB,EAAIka,KAAO7Q,EAAE,GAAKrJ,GAAIka,KAAO7Q,IAAI,EAElC,MAAOrJ,GAAItE,MAAM,EAAEwe,GAAGhc,SAAS,QAGhC,QAASu1B,IAAU74B,GAAQ,MAAO8C,GAAY9C,EAAM,UAAUsD,SAAS,QAEvE,GAAIw1B,IAAa,oBACjB,IAAIC,IAAWr2B,IAAYm2B,GAAUC,KAAeL,GAAUK,KAAeD,IAAaF,GAAUG,KAAeL,GAAUK,KAAeH,KAAcF,EAE1J,IAAIzK,IAAYtrB,EAAU,SAAS1C,GAAQ,MAAO8C,GAAY9C,EAAM,QAAQsD,SAAS,WAAe,SAASo1B,GAC5G,GAAItzB,MAAUlF,EAAI,EAAGoE,EAAI,EAAGkB,EAAI,CAChC,OAAMtF,EAAIw4B,EAAKt4B,OAAQ,CACtBkE,EAAIo0B,EAAKr4B,WAAWH,IACpB,QAAO,MACN,IAAKoE,GAAI,IAAKc,EAAIK,KAAKlF,OAAOC,aAAa8D,GAAK,OAChD,IAAKA,GAAI,KACRc,EAAIK,KAAKlF,OAAOC,aAAa,KAAO8D,GAAK,IACzCc,GAAIK,KAAKlF,OAAOC,aAAa,KAAO8D,EAAI,KACxC,OACD,IAAKA,IAAK,OAASA,EAAI,MACtBA,GAAK,KAAOkB,GAAIkzB,EAAKr4B,WAAWH,KAAO,OAASoE,GAAG,GACnDc,GAAIK,KAAKlF,OAAOC,aAAa,KAAQgF,GAAI,GAAM,IAC/CJ,GAAIK,KAAKlF,OAAOC,aAAa,KAAQgF,GAAI,GAAM,KAC/CJ,GAAIK,KAAKlF,OAAOC,aAAa,KAAQgF,GAAK,EAAK,KAC/CJ,GAAIK,KAAKlF,OAAOC,aAAa,KAAOgF,EAAI,KACxC,OACD,QACCJ,EAAIK,KAAKlF,OAAOC,aAAa,KAAO8D,GAAK,KACzCc,GAAIK,KAAKlF,OAAOC,aAAa,KAAQ8D,GAAK,EAAK,KAC/Cc,GAAIK,KAAKlF,OAAOC,aAAa,KAAO8D,EAAI,QAG3C,MAAOc,GAAI3E,KAAK,IAIjB,IAAIu4B,IAAW,WACd,GAAIC,KACJ,OAAO,SAASD,GAAShkB,EAAEkgB,GAC1B,GAAInvB,GAAIiP,EAAE,KAAKkgB,GAAG,GAClB,IAAG+D,EAAQlzB,GAAI,MAAOkzB,GAAQlzB,EAC9B,OAAQkzB,GAAQlzB,GAAK,GAAI4Q,QAAO,cAAc3B,EAAE,+DAA+DA,EAAE,IAAMkgB,GAAG,OAI5H,IAAIgE,IAAa,WAChB,GAAIC,KACF,OAAQ,MAAO,SAAU,MACzB,OAAQ,MAAO,OAAQ,MAAO,KAAQ,MAAO,KAAQ,MAAO,MAAQ,MACpEn1B,IAAI,SAAS/C,GAAK,OAAQ,GAAI0V,QAAO,IAAM1V,EAAE,GAAK,IAAK,MAAOA,EAAE,KAClE,OAAO,SAASi4B,GAAWjnB,GAC1B,GAAIhS,GAAIgS,EAELxP,QAAQ,cAAe,IAEvBA,QAAQ,cAAc,IAEtBA,QAAQ,QAAQ,KAAKA,QAAQ,QAAQ,KAErCA,QAAQ,cAAe,KAEvBA,QAAQ,uBAAuB,MAE/BA,QAAQ,WAAW,GACtB,KAAI,GAAIvC,GAAI,EAAGA,EAAIi5B,EAAS/4B,SAAUF,EAAGD,EAAIA,EAAEwC,QAAQ02B,EAASj5B,GAAG,GAAIi5B,EAASj5B,GAAG,GACnF,OAAOD,MAIT,IAAIm5B,IAAU,WAAa,GAAIC,KAC9B,OAAO,SAASC,GAASrlB,GACxB,GAAGolB,EAASplB,KAAQrR,UAAW,MAAOy2B,GAASplB,EAC/C,OAAQolB,GAASplB,GAAM,GAAI0C,QAAO,YAAc1C,EAAK,0BAA4BA,EAAK,IAAK,QAE7F,IAAIslB,IAAW,wBAAyBC,GAAW,4BACnD,SAASC,IAAYz5B,EAAMyM,GAC1B,GAAI0Y,GAAIqR,GAAYx2B,EAEpB,IAAI05B,GAAU15B,EAAKyQ,MAAM2oB,GAAQjU,EAAEwU,cACnC,IAAIjE,KACJ,IAAGgE,EAAQt5B,QAAU+kB,EAAE3G,KAAM,CAC5B,GAAG/R,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,4BAA8Bk1B,EAAQt5B,OAAS,OAAS+kB,EAAE3G,KACvF,OAAOkX,GAERgE,EAAQ5iB,QAAQ,SAAS7V,GACxB,GAAI6E,GAAI7E,EAAEwB,QAAQ82B,GAAS,IAAI9oB,MAAM+oB,GACrC,IAAG1zB,EAAG4vB,EAAIjwB,MAAMK,EAAEizB,GAASjzB,EAAE,IAAKC,EAAED,EAAE,MAEvC,OAAO4vB,GAGR,GAAImE,IAAU,cACd,SAASC,IAAS9kB,EAAEkgB,GAAK,MAAO,IAAMlgB,GAAKkgB,EAAEzkB,MAAMopB,IAAS,wBAA0B,IAAM,IAAM3E,EAAI,KAAOlgB,EAAI,IAEjH,QAAS+kB,IAAW5U,GAAK,MAAO0K,IAAK1K,GAAGnhB,IAAI,SAASsb,GAAK,MAAO,IAAMA,EAAI,KAAO6F,EAAE7F,GAAK,MAAO7e,KAAK,IACrG,QAASu5B,IAAUhlB,EAAEkgB,EAAE/P,GAAK,MAAO,IAAMnQ,GAAMmQ,GAAK,KAAQ4U,GAAW5U,GAAK,KAAQ+P,GAAK,MAASA,EAAEzkB,MAAMopB,IAAS,wBAA0B,IAAM,IAAM3E,EAAI,KAAOlgB,EAAI,KAAO,IAE/K,QAASilB,IAAaz0B,EAAGO,GAAK,IAAM,MAAOP,GAAE00B,cAAcz3B,QAAQ,QAAQ,IAAO,MAAMQ,GAAK,GAAG8C,EAAG,KAAM9C,GAAK,MAAO,GAErH,QAASk3B,IAASr2B,EAAG6zB,GACpB,aAAc7zB,IACb,IAAK,SACJ,GAAI7D,GAAI+5B,GAAU,YAAalC,GAAUh0B,GACzC,IAAG6zB,EAAM13B,EAAIA,EAAEwC,QAAQ,UAAW,UAClC,OAAOxC,GACR,IAAK,SAAU,MAAO+5B,KAAWl2B,EAAE,IAAIA,EAAE,QAAQ,QAASg0B,GAAUv3B,OAAOuD,KAC3E,IAAK,UAAW,MAAOk2B,IAAU,UAAUl2B,EAAE,OAAO,UAErD,GAAGA,YAAa0J,MAAM,MAAOwsB,IAAU,cAAeC,GAAan2B,GACnE,MAAM,IAAIU,OAAM,uBAAyBV,GAG1C,QAASs2B,IAAe50B,GACvB,GAAG9C,GAAWC,OAAOkC,SAASW,GAAI,MAAOA,GAAElC,SAAS,OACpD,UAAUkC,KAAM,SAAU,MAAOA,EAEjC,UAAU/B,cAAe,aAAe+B,YAAa/B,YAAY,MAAOs1B,IAAS30B,EAAIK,EAAKe,IAC1F,MAAM,IAAIhB,OAAM,+CAGjB,GAAI61B,IAAY,2EAGhB,IAAIC,KACHC,WAAY,0EACZC,WAAY,0EACZC,UAAW,4EACXC,GAAI,+DACJC,KAAM,+DACNC,MAAO,0EACPC,GAAM,mCACNC,QAAW,4BACXC,SAAY,+BACZC,GAAM,0DACN7pB,EAAK,sEACL8pB,IAAO,yEACPC,GAAM,uEACNC,IAAO,4CACPC,IAAO,mCAGR,IAAIC,KACH,4DACA,gDACA,sDACA,mDAGD,IAAIC,KACHr7B,EAAQ,0CACRgB,EAAQ,yCACR0O,GAAQ,+CACRmE,GAAQ,4CACRyI,GAAQ,yBACRzW,EAAQ,gCACRy1B,KAAQ,kCAET,SAASC,IAAezW,EAAGxU,GAC1B,GAAIzM,GAAI,EAAI,GAAKihB,EAAExU,EAAM,KAAO,EAChC,IAAItN,KAAM8hB,EAAExU,EAAM,GAAK,MAAS,IAAOwU,EAAExU,EAAM,KAAO,EAAK,GAC3D,IAAIrD,GAAK6X,EAAExU,EAAI,GAAG,EAClB,KAAI,GAAIrQ,GAAI,EAAGA,GAAK,IAAKA,EAAGgN,EAAIA,EAAI,IAAM6X,EAAExU,EAAMrQ,EAClD,IAAG+C,GAAK,KAAO,MAAOiK,IAAK,EAAKpJ,EAAI23B,SAAY7H,GAChD,IAAG3wB,GAAK,EAAGA,GAAK,SACX,CAAEA,GAAK,IAAMiK,IAAK9G,KAAKI,IAAI,EAAE,IAClC,MAAO1C,GAAIsC,KAAKI,IAAI,EAAGvD,EAAI,IAAMiK,EAGlC,QAASwuB,IAAgB3W,EAAGjf,EAAGyK,GAC9B,GAAIorB,IAAS71B,EAAI,GAAO,EAAEA,IAAM21B,SAAa,EAAI,IAAM,EAAIx4B,EAAI,EAAGiK,EAAI,CACtE,IAAI0uB,GAAKD,GAAO71B,EAAKA,CACrB,KAAI6tB,SAASiI,GAAK,CAAE34B,EAAI,IAAOiK,GAAI7K,MAAMyD,GAAK,MAAS,MAClD,IAAG81B,GAAM,EAAG34B,EAAIiK,EAAI,MACpB,CACJjK,EAAImD,KAAKkG,MAAMlG,KAAK4I,IAAI4sB,GAAMx1B,KAAKy1B,IACnC3uB,GAAI0uB,EAAKx1B,KAAKI,IAAI,EAAG,GAAKvD,EAC1B,IAAIA,IAAM,QAAW0wB,SAASzmB,IAAOA,EAAI9G,KAAKI,IAAI,EAAE,KAAO,CAAEvD,GAAK,SAC7D,CAAEiK,GAAK9G,KAAKI,IAAI,EAAE,GAAKvD,IAAG,MAEhC,IAAI,GAAI/C,GAAI,EAAGA,GAAK,IAAKA,EAAGgN,GAAG,IAAK6X,EAAExU,EAAMrQ,GAAKgN,EAAI,GACrD6X,GAAExU,EAAM,IAAOtN,EAAI,KAAS,EAAMiK,EAAI,EACtC6X,GAAExU,EAAM,GAAMtN,GAAK,EAAK04B,EAGzB,GAAIG,IAAc,SAASn3B,GAAQ,GAAI1D,MAAKwN,EAAE,KAAO,KAAI,GAAIvO,GAAE,EAAEA,EAAEyE,EAAK,GAAGvE,SAASF,EAAG,GAAGyE,EAAK,GAAGzE,GAAI,IAAI,GAAI8P,GAAE,EAAE1K,EAAEX,EAAK,GAAGzE,GAAGE,OAAO4P,EAAE1K,EAAE0K,GAAGvB,EAAGxN,EAAEwE,KAAKT,MAAM/D,EAAG0D,EAAK,GAAGzE,GAAGY,MAAMkP,EAAEA,EAAEvB,GAAK,OAAOxN,GACjM,IAAIme,IAAa1c,EAAU,SAASiC,GAAQ,MAAQA,GAAK,GAAGvE,OAAS,GAAKuC,OAAOkC,SAASF,EAAK,GAAG,IAAOhC,OAAOiC,OAAOD,EAAK,GAAGX,IAAI,SAAS/C,GAAK,MAAO0B,QAAOkC,SAAS5D,GAAKA,EAAI6B,EAAY7B,MAAU66B,GAAYn3B,IAAUm3B,EAE7N,IAAIC,IAAa,SAAShX,EAAEjhB,EAAEb,GAAK,GAAI0M,KAAO,KAAI,GAAIzP,GAAE4D,EAAG5D,EAAE+C,EAAG/C,GAAG,EAAGyP,EAAGlK,KAAKlF,OAAOC,aAAaw7B,GAAejX,EAAE7kB,IAAM,OAAOyP,GAAGlP,KAAK,IAAIgC,QAAQiD,EAAK,IACzJ,IAAIga,IAAYhd,EAAU,SAASqiB,EAAEjhB,EAAEb,GAAK,IAAIN,OAAOkC,SAASkgB,KAAO1hB,EAAa,MAAO04B,IAAWhX,EAAEjhB,EAAEb,EAAI,OAAO8hB,GAAEzhB,SAAS,UAAUQ,EAAEb,GAAGR,QAAQiD,EAAK,KAA+Bq2B,EAE3L,IAAIE,IAAa,SAASlX,EAAEjhB,EAAEmR,GAAK,GAAItF,KAAO,KAAI,GAAIzP,GAAE4D,EAAG5D,EAAE4D,EAAEmR,IAAK/U,EAAGyP,EAAGlK,MAAM,IAAMsf,EAAE7kB,GAAGoD,SAAS,KAAKxC,OAAO,GAAK,OAAO6O,GAAGlP,KAAK,IACpI,IAAIy7B,IAAYx5B,EAAU,SAASqiB,EAAEjhB,EAAEmR,GAAK,MAAOtS,QAAOkC,SAASkgB,GAAKA,EAAEzhB,SAAS,MAAMQ,EAAEA,EAAEmR,GAAKgnB,GAAWlX,EAAEjhB,EAAEmR,IAAQgnB,EAEzH,IAAIE,IAAU,SAASpX,EAAEjhB,EAAEb,GAAK,GAAI0M,KAAO,KAAI,GAAIzP,GAAE4D,EAAG5D,EAAE+C,EAAG/C,IAAKyP,EAAGlK,KAAKlF,OAAOC,aAAa47B,GAAYrX,EAAE7kB,IAAM,OAAOyP,GAAGlP,KAAK,IACjI,IAAI47B,IAAS35B,EAAU,QAAS45B,IAAOvX,EAAGjhB,EAAGb,GAAK,MAAQN,QAAOkC,SAASkgB,GAAMA,EAAEzhB,SAAS,OAAOQ,EAAEb,GAAKk5B,GAAQpX,EAAEjhB,EAAEb,IAAQk5B,EAE7H,IAAII,IAAW,SAASxX,EAAE7kB,GAAK,GAAIC,GAAM+f,GAAe6E,EAAE7kB,EAAI,OAAOC,GAAM,EAAIk8B,GAAOtX,EAAG7kB,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAAK,GAC1G,IAAIq8B,IAAUD,EAEd,IAAIE,IAAW,SAAS1X,EAAE7kB,GAAK,GAAIC,GAAM+f,GAAe6E,EAAE7kB,EAAI,OAAOC,GAAM,EAAIk8B,GAAOtX,EAAG7kB,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAAK,GAC1G,IAAIu8B,IAAUD,EAEd,IAAIE,IAAY,SAAS5X,EAAE7kB,GAAK,GAAIC,GAAM,EAAE+f,GAAe6E,EAAE7kB,EAAI,OAAOC,GAAM,EAAIk8B,GAAOtX,EAAG7kB,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAAK,GAC7G,IAAIy8B,IAAWD,EAEf,IAAIE,IAAU,QAASC,IAAM/X,EAAE7kB,GAAK,GAAIC,GAAM+f,GAAe6E,EAAE7kB,EAAI,OAAOC,GAAM,EAAIuf,GAAUqF,EAAG7kB,EAAE,EAAEA,EAAE,EAAEC,GAAO,GAChH,IAAI48B,IAASF,EAEb,IAAIG,IAAW,SAASjY,EAAE7kB,GAAK,GAAIC,GAAM+f,GAAe6E,EAAE7kB,EAAI,OAAOC,GAAM,EAAIk8B,GAAOtX,EAAG7kB,EAAE,EAAEA,EAAE,EAAEC,GAAO,GACxG,IAAI88B,IAAUD,EAEd,IAAIE,IAAY,SAASnY,EAAGxU,GAAO,MAAOirB,IAAezW,EAAGxU,GAC5D,IAAI4sB,IAAWD,EAEf,IAAIE,IAAS,QAASC,IAASvX,GAAK,MAAOpiB,OAAMW,QAAQyhB,UAAcriB,cAAe,aAAeqiB,YAAariB,YAElH,IAAGf,EAAS,CACX85B,GAAU,QAASc,IAAQvY,EAAG7kB,GAAK,IAAIyC,OAAOkC,SAASkgB,GAAI,MAAOwX,IAASxX,EAAG7kB,EAAI,IAAIC,GAAM4kB,EAAEwY,aAAar9B,EAAI,OAAOC,GAAM,EAAI4kB,EAAEzhB,SAAS,OAAOpD,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAAK,GACnKu8B,IAAU,QAASc,IAAQzY,EAAG7kB,GAAK,IAAIyC,OAAOkC,SAASkgB,GAAI,MAAO0X,IAAS1X,EAAG7kB,EAAI,IAAIC,GAAM4kB,EAAEwY,aAAar9B,EAAI,OAAOC,GAAM,EAAI4kB,EAAEzhB,SAAS,OAAOpD,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAAK,GACnKy8B,IAAW,QAASa,IAAS1Y,EAAG7kB,GAAK,IAAIyC,OAAOkC,SAASkgB,KAAO1hB,EAAa,MAAOs5B,IAAU5X,EAAG7kB,EAAI,IAAIC,GAAM,EAAE4kB,EAAEwY,aAAar9B,EAAI,OAAO6kB,GAAEzhB,SAAS,UAAUpD,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAC5K48B,IAAS,QAASW,IAAO3Y,EAAG7kB,GAAK,IAAIyC,OAAOkC,SAASkgB,KAAO1hB,EAAa,MAAOw5B,IAAQ9X,EAAG7kB,EAAI,IAAIC,GAAM4kB,EAAEwY,aAAar9B,EAAI,OAAO6kB,GAAEzhB,SAAS,UAAUpD,EAAE,EAAEA,EAAE,EAAEC,GAChK88B,IAAU,QAASU,IAAQ5Y,EAAG7kB,GAAK,IAAIyC,OAAOkC,SAASkgB,GAAI,MAAOiY,IAASjY,EAAG7kB,EAAI,IAAIC,GAAM4kB,EAAEwY,aAAar9B,EAAI,OAAO6kB,GAAEzhB,SAAS,OAAOpD,EAAE,EAAEA,EAAE,EAAEC,GAChJg9B,IAAW,QAASS,IAAQ7Y,EAAG7kB,GAAK,GAAGyC,OAAOkC,SAASkgB,GAAI,MAAOA,GAAE8Y,aAAa39B,EAAI,OAAOg9B,IAAUnY,EAAE7kB,GACxGk9B,IAAS,QAASU,IAAShY,GAAK,MAAOnjB,QAAOkC,SAASihB,IAAMpiB,MAAMW,QAAQyhB,UAAcriB,cAAe,aAAeqiB,YAAariB,aAIrI,QAAS/B,MACRge,GAAY,SAASqF,EAAEjhB,EAAEb,GAAK,MAAO/E,GAASoD,MAAMC,OAAO,KAAMwjB,EAAEjkB,MAAMgD,EAAEb,IAAIR,QAAQiD,EAAM,IAC7F22B,IAAS,SAAStX,EAAEjhB,EAAEb,GAAK,MAAO/E,GAASoD,MAAMC,OAAO,MAAOwjB,EAAEjkB,MAAMgD,EAAEb,IACzEu5B,IAAU,SAASzX,EAAE7kB,GAAK,GAAIC,GAAM+f,GAAe6E,EAAE7kB,EAAI,OAAOC,GAAM,EAAIjC,EAASoD,MAAMC,OAAOtD,EAAc8mB,EAAEjkB,MAAMZ,EAAE,EAAGA,EAAE,EAAEC,EAAI,IAAM,GACzIu8B,IAAU,SAAS3X,EAAE7kB,GAAK,GAAIC,GAAM+f,GAAe6E,EAAE7kB,EAAI,OAAOC,GAAM,EAAIjC,EAASoD,MAAMC,OAAOvD,EAAkB+mB,EAAEjkB,MAAMZ,EAAE,EAAGA,EAAE,EAAEC,EAAI,IAAM,GAC7Iy8B,IAAW,SAAS7X,EAAE7kB,GAAK,GAAIC,GAAM,EAAE+f,GAAe6E,EAAE7kB,EAAI,OAAOC,GAAM,EAAIjC,EAASoD,MAAMC,OAAO,KAAMwjB,EAAEjkB,MAAMZ,EAAE,EAAEA,EAAE,EAAEC,EAAI,IAAM,GACnI48B,IAAS,SAAShY,EAAE7kB,GAAK,GAAIC,GAAM+f,GAAe6E,EAAE7kB,EAAI,OAAOC,GAAM,EAAIjC,EAASoD,MAAMC,OAAO,KAAMwjB,EAAEjkB,MAAMZ,EAAE,EAAEA,EAAE,EAAEC,IAAQ,GAC7H88B,IAAU,SAASlY,EAAE7kB,GAAK,GAAIC,GAAM+f,GAAe6E,EAAE7kB,EAAI,OAAOC,GAAM,EAAIjC,EAASoD,MAAMC,OAAO,MAAOwjB,EAAEjkB,MAAMZ,EAAE,EAAEA,EAAE,EAAEC,IAAQ,IAEhI,SAAUjC,KAAa,YAAawD,IAEpC,IAAI06B,IAAc,SAASrX,EAAGxU,GAAO,MAAOwU,GAAExU,GAC9C,IAAIyrB,IAAiB,SAASjX,EAAGxU,GAAO,MAAQwU,GAAExU,EAAI,IAAI,GAAG,GAAIwU,EAAExU,GACnE,IAAIwtB,IAAgB,SAAShZ,EAAGxU,GAAO,GAAIvD,GAAK+X,EAAExU,EAAI,IAAI,GAAG,GAAIwU,EAAExU,EAAM,OAAQvD,GAAI,MAAUA,GAAM,MAASA,EAAI,IAAM,EACxH,IAAIkT,IAAiB,SAAS6E,EAAGxU,GAAO,MAAOwU,GAAExU,EAAI,IAAI,GAAG,KAAKwU,EAAExU,EAAI,IAAI,KAAKwU,EAAExU,EAAI,IAAI,GAAGwU,EAAExU,GAC/F,IAAImO,IAAgB,SAASqG,EAAGxU,GAAO,MAAQwU,GAAExU,EAAI,IAAI,GAAKwU,EAAExU,EAAI,IAAI,GAAKwU,EAAExU,EAAI,IAAI,EAAGwU,EAAExU,GAC5F,IAAIytB,IAAgB,SAASjZ,EAAGxU,GAAO,MAAQwU,GAAExU,IAAM,GAAKwU,EAAExU,EAAI,IAAI,GAAKwU,EAAExU,EAAI,IAAI,EAAGwU,EAAExU,EAAI,GAE9F,SAASgd,IAAU/O,EAAMzY,GACxB,GAAI9F,GAAE,GAAIg+B,EAAIC,EAAIC,KAAO1vB,EAAG4F,EAAInU,EAAGk+B,CACnC,QAAOr4B,GACN,IAAK,OACJq4B,EAAMC,KAAKppB,CACX,IAAGvS,GAAWC,OAAOkC,SAASw5B,OAAUh7B,EAAapD,EAAIo+B,KAAKv9B,MAAMu9B,KAAKppB,EAAGopB,KAAKppB,EAAE,EAAEuJ,GAAMlb,SAAS,eAC/F,KAAIpD,EAAI,EAAGA,EAAIse,IAAQte,EAAG,CAAED,GAAGM,OAAOC,aAAaw7B,GAAeqC,KAAMD,GAAOA,IAAK,EACzF5f,GAAQ,CACR,OAED,IAAK,OAAQve,EAAIo8B,GAAOgC,KAAMA,KAAKppB,EAAGopB,KAAKppB,EAAIuJ,EAAO,OACtD,IAAK,UAAWA,GAAQ,CAAGve,GAAIyf,GAAU2e,KAAMA,KAAKppB,EAAGopB,KAAKppB,EAAIuJ,EAAO,OAEvE,IAAK,OACJ,SAAUtgB,KAAa,YAAa+B,EAAI/B,EAASoD,MAAMC,OAAOvD,EAAkBqgC,KAAKv9B,MAAMu9B,KAAKppB,EAAGopB,KAAKppB,EAAE,EAAEuJ,QACvG,OAAO+O,IAAUtoB,KAAKo5B,KAAM7f,EAAM,OACvCA,GAAO,EAAIA,CAAM,OAGlB,IAAK,aAAcve,EAAIu8B,GAAQ6B,KAAMA,KAAKppB,EAAIuJ,GAAO,EAAI0B,GAAeme,KAAMA,KAAKppB,EAAI,OACvF,IAAK,WAAYhV,EAAIy8B,GAAQ2B,KAAMA,KAAKppB,EAAIuJ,GAAO,EAAI0B,GAAeme,KAAMA,KAAKppB,EAAI,OAErF,IAAK,SAAUhV,EAAI28B,GAASyB,KAAMA,KAAKppB,EAAIuJ,GAAO,EAAI,EAAI0B,GAAeme,KAAMA,KAAKppB,EAAI,OAExF,IAAK,OAAQuJ,EAAO,EAAK0B,GAAeme,KAAMA,KAAKppB,EAAIhV,GAAI88B,GAAOsB,KAAMA,KAAKppB,EAAI,IAAGuJ,EAAO,EAAMA,GAAQ,CAAG,OAE5G,IAAK,QAASA,EAAO,EAAK0B,GAAeme,KAAMA,KAAKppB,EAAIhV,GAAIg9B,GAAQoB,KAAMA,KAAKppB,EAAI,IAAGuJ,EAAO,EAAMA,GAAQ,GAAKA,EAAO,EAAO,OAE9H,IAAK,OAAQA,EAAO,CAAGve,GAAI,EAC1B,QAAOwO,EAAE2tB,GAAYiC,KAAMA,KAAKppB,EAAIuJ,QAAW,EAAG2f,EAAG14B,KAAK1E,EAAS0N,GACnExO,GAAIk+B,EAAG19B,KAAK,GAAK,OAClB,IAAK,QAAS+d,EAAO,CAAGve,GAAI,EAC3B,QAAOwO,EAAEutB,GAAeqC,KAAKA,KAAKppB,EAAGuJ,MAAS,EAAE,CAAC2f,EAAG14B,KAAK1E,EAAS0N,GAAI+P,IAAM,EAC5EA,GAAM,CAAGve,GAAIk+B,EAAG19B,KAAK,GAAK,OAG3B,IAAK,YAAaR,EAAI,EAAIm+B,GAAMC,KAAKppB,CACpC,KAAI/U,EAAI,EAAGA,EAAIse,IAAQte,EAAG,CACzB,GAAGm+B,KAAKC,MAAQD,KAAKC,KAAK3+B,QAAQy+B,MAAU,EAAG,CAC9C3vB,EAAI2tB,GAAYiC,KAAMD,EACtBC,MAAKppB,EAAImpB,EAAM,CACf/pB,GAAKkZ,GAAUtoB,KAAKo5B,KAAM7f,EAAKte,EAAGuO,EAAI,YAAc,YACpD,OAAO0vB,GAAG19B,KAAK,IAAM4T,EAEtB8pB,EAAG14B,KAAK1E,EAASi7B,GAAeqC,KAAMD,IACtCA,IAAK,EACJn+B,EAAIk+B,EAAG19B,KAAK,GAAK+d,IAAQ,CAAG,OAE/B,IAAK,QACJ,SAAUtgB,KAAa,YAAa,CACnC+B,EAAI/B,EAASoD,MAAMC,OAAOvD,EAAkBqgC,KAAKv9B,MAAMu9B,KAAKppB,EAAGopB,KAAKppB,EAAIuJ,GACxE,QAGF,IAAK,YAAave,EAAI,EAAIm+B,GAAMC,KAAKppB,CACpC,KAAI/U,EAAI,EAAGA,GAAKse,IAAQte,EAAG,CAC1B,GAAGm+B,KAAKC,MAAQD,KAAKC,KAAK3+B,QAAQy+B,MAAU,EAAG,CAC9C3vB,EAAI2tB,GAAYiC,KAAMD,EACtBC,MAAKppB,EAAImpB,EAAM,CACf/pB,GAAKkZ,GAAUtoB,KAAKo5B,KAAM7f,EAAKte,EAAGuO,EAAI,YAAc,YACpD,OAAO0vB,GAAG19B,KAAK,IAAM4T,EAEtB8pB,EAAG14B,KAAK1E,EAASq7B,GAAYiC,KAAMD,IACnCA,IAAK,EACJn+B,EAAIk+B,EAAG19B,KAAK,GAAK,OAEpB,QACD,OAAO+d,GACN,IAAK,GAAGyf,EAAK7B,GAAYiC,KAAMA,KAAKppB,EAAIopB,MAAKppB,GAAK,OAAOgpB,GACzD,IAAK,GAAGA,GAAMl4B,IAAM,IAAMg4B,GAAgB/B,IAAgBqC,KAAMA,KAAKppB,EAAIopB,MAAKppB,GAAK,CAAG,OAAOgpB,GAC7F,IAAK,IAAG,KAAM,EACb,GAAGl4B,IAAM,MAASs4B,KAAKA,KAAKppB,EAAE,GAAK,OAAQ,EAAI,CAAEgpB,GAAOzf,EAAO,EAAKE,GAAgBsf,IAAeK,KAAMA,KAAKppB,EAAIopB,MAAKppB,GAAK,CAAG,OAAOgpB,OACjI,CAAEC,EAAKhe,GAAeme,KAAMA,KAAKppB,EAAIopB,MAAKppB,GAAK,EAAK,MAAOipB,GACjE,IAAK,IAAG,KAAM,EACb,GAAGn4B,IAAM,IAAK,CACb,GAAGyY,GAAQ,EAAG0f,EAAKf,GAASkB,KAAMA,KAAKppB,OAClCipB,GAAKf,IAAUkB,KAAKA,KAAKppB,EAAE,GAAGopB,KAAKA,KAAKppB,EAAE,GAAGopB,KAAKA,KAAKppB,EAAE,GAAGopB,KAAKA,KAAKppB,EAAE,GAAGopB,KAAKA,KAAKppB,EAAE,GAAGopB,KAAKA,KAAKppB,EAAE,GAAGopB,KAAKA,KAAKppB,EAAE,GAAGopB,KAAKA,KAAKppB,EAAE,IAAK,EAC9IopB,MAAKppB,GAAK,CAAG,OAAOipB,OACd1f,GAAO,EAEf,IAAK,IAAIve,EAAIi8B,GAAUmC,KAAMA,KAAKppB,EAAGuJ,EAAO,UAE7C6f,KAAKppB,GAAGuJ,CAAM,OAAOve,GAGtB,GAAIs+B,IAAkB,SAASxZ,EAAGtV,EAAKc,GAAOwU,EAAExU,GAAQd,EAAM,GAAOsV,GAAExU,EAAI,GAAOd,IAAQ,EAAK,GAAOsV,GAAExU,EAAI,GAAOd,IAAQ,GAAM,GAAOsV,GAAExU,EAAI,GAAOd,IAAQ,GAAM,IACnK,IAAI+uB,IAAkB,SAASzZ,EAAGtV,EAAKc,GAAOwU,EAAExU,GAAQd,EAAM,GAAOsV,GAAExU,EAAI,GAAOd,GAAO,EAAK,GAAOsV,GAAExU,EAAI,GAAOd,GAAO,GAAM,GAAOsV,GAAExU,EAAI,GAAOd,GAAO,GAAM,IAChK,IAAIgvB,IAAkB,SAAS1Z,EAAGtV,EAAKc,GAAOwU,EAAExU,GAAQd,EAAM,GAAOsV,GAAExU,EAAI,GAAOd,IAAQ,EAAK,IAE/F,SAASivB,IAAW34B,EAAG0J,EAAKuF,GAC3B,GAAIwJ,GAAO,EAAGte,EAAI,CAClB,IAAG8U,IAAM,OAAQ,CAClB,IAAI9U,EAAI,EAAGA,GAAKuP,EAAIrP,SAAUF,EAAGu+B,GAAgBJ,KAAM5uB,EAAIpP,WAAWH,GAAIm+B,KAAKppB,EAAI,EAAI/U,EACrFse,GAAO,EAAI/O,EAAIrP,WACT,IAAG4U,IAAM,QAAUA,GAAK,QAAS,CACvC,SAAU9W,KAAa,aAAeD,GAAgB,IAAK,CAE7D,IAAIiC,EAAI,EAAGA,GAAKuP,EAAIrP,SAAUF,EAAG,CAC7B,GAAIy+B,GAAMzgC,EAASoD,MAAMysB,OAAO9vB,EAAcwR,EAAInN,OAAOpC,GACzDm+B,MAAKA,KAAKppB,EAAI/U,GAAKy+B,EAAI,GAExBngB,EAAO/O,EAAIrP,WACL,UAAUlC,KAAa,aAAe8W,GAAK,QAAS,CAC1D2pB,EAAMzgC,EAASoD,MAAMysB,OAAO/vB,EAAkByR,EAE3C,IAAGkvB,EAAIv+B,QAAUqP,EAAIrP,OAAQ,IAAIF,EAAI,EAAGA,EAAIuP,EAAIrP,SAAUF,EAAG,GAAGy+B,EAAIz+B,IAAM,GAAKuP,EAAIpP,WAAWH,IAAM,EAAGy+B,EAAIz+B,GAAK,EAChH,IAAGy+B,EAAIv+B,QAAU,EAAIqP,EAAIrP,OAAQ,IAAIF,EAAI,EAAGA,EAAIuP,EAAIrP,SAAUF,EAAG,GAAGy+B,EAAI,EAAEz+B,IAAM,GAAKy+B,EAAI,EAAEz+B,EAAE,IAAM,GAAKuP,EAAIpP,WAAWH,IAAM,EAAGy+B,EAAI,EAAEz+B,GAAK,EAC9I,KAAIA,EAAI,EAAGA,EAAIy+B,EAAIv+B,SAAUF,EAAGm+B,KAAKA,KAAKppB,EAAI/U,GAAKy+B,EAAIz+B,EACvDse,GAAOmgB,EAAIv+B,WACL,CACTqP,EAAMA,EAAIhN,QAAQ,gBAAiB,IACnC,KAAIvC,EAAI,EAAGA,GAAKuP,EAAIrP,SAAUF,EAAGm+B,KAAKA,KAAKppB,EAAI/U,GAAMuP,EAAIpP,WAAWH,GAAK,GACtEse,GAAO/O,EAAIrP,YAEN,IAAG4U,IAAM,MAAO,CACtB,KAAM9U,EAAI6F,IAAK7F,EAAG,CACpBm+B,KAAKA,KAAKppB,KAAQ1D,SAAS9B,EAAI3O,MAAM,EAAEZ,EAAG,EAAEA,EAAE,GAAI,KAAK,EACnD,MAAOm+B,UACH,IAAGrpB,IAAM,UAAW,CAC5B,GAAIyW,GAAMrlB,KAAK0M,IAAIurB,KAAKppB,EAAIlP,EAAGs4B,KAAKj+B,OACjC,KAAIF,EAAI,EAAGA,EAAIkG,KAAK0M,IAAIrD,EAAIrP,OAAQ2F,KAAM7F,EAAG,CAC5C,GAAIgS,GAAKzC,EAAIpP,WAAWH,EACxBm+B,MAAKA,KAAKppB,KAAQ/C,EAAK,GACvBmsB,MAAKA,KAAKppB,KAAQ/C,GAAM,EAEzB,MAAMmsB,KAAKppB,EAAIwW,EAAK4S,KAAKA,KAAKppB,KAAO,CACrC,OAAOopB,UACD,QAAOt4B,GACd,IAAM,GAAGyY,EAAO,CAAG6f,MAAKA,KAAKppB,GAAKxF,EAAI,GAAM,OAC5C,IAAM,GAAG+O,EAAO,CAAG6f,MAAKA,KAAKppB,GAAKxF,EAAI,GAAMA,MAAS,CAAG4uB,MAAKA,KAAKppB,EAAE,GAAKxF,EAAI,GAAM,OACnF,IAAM,GAAG+O,EAAO,CAAG6f,MAAKA,KAAKppB,GAAKxF,EAAI,GAAMA,MAAS,CAAG4uB,MAAKA,KAAKppB,EAAE,GAAKxF,EAAI,GAAMA,MAAS,CAAG4uB,MAAKA,KAAKppB,EAAE,GAAKxF,EAAI,GAAM,OAC1H,IAAM,GAAG+O,EAAO,CAAG+f,IAAgBF,KAAM5uB,EAAK4uB,KAAKppB,EAAI,OACvD,IAAM,GAAGuJ,EAAO,CAAG,IAAGxJ,IAAM,IAAK,CAAE0mB,GAAgB2C,KAAM5uB,EAAK4uB,KAAKppB,EAAI,QAEvE,IAAK,IAAI,MACT,KAAM,EAAGuJ,EAAO,CAAGggB,IAAeH,KAAM5uB,EAAK4uB,KAAKppB,EAAI,QAEvDopB,KAAKppB,GAAKuJ,CAAM,OAAO6f,MAGxB,QAAS7Q,IAAWoR,EAAQC,GAC3B,GAAI3xB,GAAIgvB,GAAUmC,KAAKA,KAAKppB,EAAE2pB,EAAOx+B,QAAQ,EAC7C,IAAG8M,IAAM0xB,EAAQ,KAAM,IAAIp6B,OAAMq6B,EAAM,YAAcD,EAAS,QAAU1xB,EACxEmxB,MAAKppB,GAAK2pB,EAAOx+B,QAAQ,EAG1B,QAASua,IAAUD,EAAMokB,GACxBpkB,EAAKzF,EAAI6pB,CACTpkB,GAAKR,WAAaqT,EAClB7S,GAAKkC,IAAM4Q,EACX9S,GAAKX,YAAc2kB,GAGpB,QAASK,IAAUrkB,EAAMta,GAAUsa,EAAKzF,GAAK7U,EAE7C,QAASue,IAAQ9D,GAChB,GAAI5a,GAAIsD,EAAYsX,EACpBF,IAAU1a,EAAG,EACb,OAAOA,GAIR,QAAS++B,IAAah/B,EAAMi/B,EAAIxyB,GAC/B,IAAIzM,EAAM,MACV,IAAIk/B,GAASC,EAAS/+B,CACtBua,IAAU3a,EAAMA,EAAKiV,GAAK,EAC1B,IAAI3P,GAAItF,EAAKI,OAAQg/B,EAAK,EAAGtkB,EAAM,CACnC,OAAM9a,EAAKiV,EAAI3P,EAAG,CACjB85B,EAAKp/B,EAAKka,WAAW,EACrB,IAAGklB,EAAK,IAAMA,GAAMA,EAAK,OAAUp/B,EAAKka,WAAW,GAAK,MAAO,EAC/D,IAAIb,GAAIgmB,eAAeD,IAAOC,eAAe,MAC7CH,GAAUl/B,EAAKka,WAAW,EAC1B9Z,GAAS8+B,EAAU,GACnB,KAAIC,EAAU,EAAGA,EAAS,GAAMD,EAAU,MAASC,EAAS/+B,KAAY8+B,EAAUl/B,EAAKka,WAAW,IAAM,MAAQ,EAAEilB,CAClHrkB,GAAM9a,EAAKiV,EAAI7U,CACf,IAAIoF,GAAI6T,EAAErE,GAAKqE,EAAErE,EAAEhV,EAAMI,EAAQqM,EACjCzM,GAAKiV,EAAI6F,CACT,IAAGmkB,EAAGz5B,EAAG6T,EAAG+lB,GAAK,QAKnB,QAASE,MACR,GAAI36B,MAAW46B,EAAQ78B,EAAU,IAAM,IACvC,IAAI88B,GAAS,QAASC,GAAU5kB,GAC/B,GAAI5a,GAAK0e,GAAQ9D,EACjBF,IAAU1a,EAAG,EACb,OAAOA,GAGR,IAAIy/B,GAASF,EAAOD,EAEpB,IAAII,GAAS,QAASC,KACrB,IAAIF,EAAQ,MAEZ,IAAGA,EAAOzqB,EAAG,CACZ,GAAGyqB,EAAOt/B,OAASs/B,EAAOzqB,EAAG,CAAEyqB,EAASA,EAAO5+B,MAAM,EAAG4+B,EAAOzqB,EAAIyqB,GAAOzqB,EAAIyqB,EAAOt/B,OACrF,GAAGs/B,EAAOt/B,OAAS,EAAGuE,EAAKc,KAAKi6B,GAEjCA,EAAS,KAGV,IAAIG,GAAO,QAASC,GAAQjlB,GAC3B,GAAG6kB,GAAW7kB,EAAM6kB,EAAOt/B,OAASs/B,EAAOzqB,EAAK,MAAOyqB,EACvDC,IACA,OAAQD,GAASF,EAAOp5B,KAAK2M,IAAI8H,EAAG,EAAG0kB,IAGxC,IAAI9T,GAAM,QAASsU,KAClBJ,GACA,OAAOj7B,GAAQC,GAGhB,IAAIc,GAAO,QAASu6B,GAAQ98B,GAAOy8B,GAAUD,GAASx8B,CAAK,IAAGw8B,EAAOzqB,GAAK,KAAMyqB,EAAOzqB,EAAIyqB,EAAOt/B,MAAQy/B,GAAKN,GAE/G,QAAUM,KAAKA,EAAMp6B,KAAKA,EAAMgmB,IAAIA,EAAKwU,MAAMt7B,GAGhD,QAASu7B,IAAaC,EAAI5wB,EAAM8O,EAASje,GACxC,GAAI2F,IAAKwJ,EAAM0F,CACf,IAAG5S,MAAM0D,GAAI,MACb,KAAI3F,EAAQA,EAASi/B,eAAet5B,GAAGyT,IAAM6E,OAAaje,QAAU,CACpE6U,GAAI,GAAKlP,GAAK,IAAO,EAAI,GAAK,CAC9B,IAAG3F,GAAU,MAAQ6U,CAAG,IAAG7U,GAAU,QAAU6U,CAAG,IAAG7U,GAAU,UAAY6U,CAC3E,IAAIhV,GAAIkgC,EAAGN,KAAK5qB,EAChB,IAAGlP,GAAK,IAAM9F,EAAE8Z,YAAY,EAAGhU,OAC1B,CACJ9F,EAAE8Z,YAAY,GAAIhU,EAAI,KAAQ,IAC9B9F,GAAE8Z,YAAY,EAAIhU,GAAK,GAExB,IAAI,GAAI7F,GAAI,EAAGA,GAAK,IAAKA,EAAG,CAC3B,GAAGE,GAAU,IAAM,CAAEH,EAAE8Z,YAAY,GAAI3Z,EAAS,KAAM,IAAOA,KAAW,MACnE,CAAEH,EAAE8Z,YAAY,EAAG3Z,EAAS,QAElC,GAAGA,EAAS,GAAKg9B,GAAO/e,GAAU8hB,EAAG16B,KAAK4Y,GAG3C,QAAS+hB,IAAeC,EAAMvlB,EAAKrO,GAClC,GAAIrH,GAAMkuB,GAAI+M,EACd,IAAGvlB,EAAIhX,EAAG,CACT,GAAGsB,EAAIk7B,KAAMl7B,EAAId,GAAKwW,EAAIhX,EAAEQ,CAC5B,IAAGc,EAAIm7B,KAAMn7B,EAAI+L,GAAK2J,EAAIhX,EAAEqN,MACtB,CACN,GAAG/L,EAAIk7B,KAAMl7B,EAAId,GAAKwW,EAAIxW,CAC1B,IAAGc,EAAIm7B,KAAMn7B,EAAI+L,GAAK2J,EAAI3J,EAE3B,IAAI1E,GAAQA,EAAK+zB,KAAO,GAAI,CAC3B,MAAMp7B,EAAId,GAAK,IAAOc,EAAId,GAAK,GAC/B,OAAMc,EAAI+L,GAAK,MAAS/L,EAAI+L,GAAK,MAElC,MAAO/L,GAGR,QAASq7B,IAAgBJ,EAAMK,EAAOj0B,GACrC,GAAIrH,GAAMkuB,GAAI+M,EACdj7B,GAAItB,EAAIs8B,GAAeh7B,EAAItB,EAAG48B,EAAM58B,EAAG2I,EACvCrH,GAAInC,EAAIm9B,GAAeh7B,EAAInC,EAAGy9B,EAAM58B,EAAG2I,EACvC,OAAOrH,GAGR,QAASu7B,IAAgBr8B,EAAGk8B,GAC3B,GAAGl8B,EAAEg8B,MAAQh8B,EAAEA,EAAI,EAAG,CAAEA,EAAIgvB,GAAIhvB,EAAI,OAAMA,EAAEA,EAAI,EAAGA,EAAEA,GAAMk8B,EAAO,EAAK,MAAS,IAChF,GAAGl8B,EAAEi8B,MAAQj8B,EAAE6M,EAAI,EAAG,CAAE7M,EAAIgvB,GAAIhvB,EAAI,OAAMA,EAAE6M,EAAI,EAAG7M,EAAE6M,GAAMqvB,EAAO,EAAK,QAAaA,EAAO,EAAK,MAAU,MAC1G,GAAI18B,GAAI88B,GAAYt8B,EACpB,KAAIA,EAAEg8B,MAAQh8B,EAAEg8B,MAAQ,KAAMx8B,EAAI+8B,GAAQ/8B,EAC1C,KAAIQ,EAAEi8B,MAAQj8B,EAAEi8B,MAAQ,KAAMz8B,EAAIg9B,GAAQh9B,EAC1C,OAAOA,GAGR,QAASi9B,IAAiB5vB,EAAG1E,GAC5B,GAAG0E,EAAErN,EAAEqN,GAAK,IAAMA,EAAErN,EAAEy8B,KAAM,CAC3B,GAAGpvB,EAAElO,EAAEkO,IAAM1E,EAAK+zB,MAAQ,GAAK,QAAW/zB,EAAK+zB,MAAQ,EAAI,MAAU,SAAarvB,EAAElO,EAAEs9B,KAAM,CAC3F,OAAQpvB,EAAErN,EAAEw8B,KAAO,GAAK,KAAOU,GAAW7vB,EAAErN,EAAEQ,GAAK,KAAO6M,EAAElO,EAAEq9B,KAAO,GAAK,KAAOU,GAAW7vB,EAAElO,EAAEqB,IAGlG,GAAG6M,EAAErN,EAAEQ,GAAK,IAAM6M,EAAErN,EAAEw8B,KAAM,CAC3B,GAAGnvB,EAAElO,EAAEqB,IAAMmI,EAAK+zB,MAAQ,GAAK,MAAS,OAAUrvB,EAAElO,EAAEq9B,KAAM,CAC3D,OAAQnvB,EAAErN,EAAEy8B,KAAO,GAAK,KAAOU,GAAW9vB,EAAErN,EAAEqN,GAAK,KAAOA,EAAElO,EAAEs9B,KAAO,GAAK,KAAOU,GAAW9vB,EAAElO,EAAEkO,IAGlG,MAAOwvB,IAAgBxvB,EAAErN,EAAG2I,EAAK+zB,MAAQ,IAAMG,GAAgBxvB,EAAElO,EAAGwJ,EAAK+zB,MAE1E,QAASU,IAAWC,GAAU,MAAO5vB,UAAS6vB,GAAUD,GAAQ,IAAM,EACtE,QAASF,IAAW7U,GAAO,MAAO,IAAMA,EAAM,GAC9C,QAAS0U,IAAQpU,GAAQ,MAAOA,GAAKjqB,QAAQ,kBAAkB,UAC/D,QAAS2+B,IAAU1U,GAAQ,MAAOA,GAAKjqB,QAAQ,WAAW,MAE1D,QAAS4+B,IAAWC,GAAU,GAAIh9B,GAAIi9B,GAAUD,GAAS97B,EAAI,EAAGtF,EAAI,CAAG,MAAMA,IAAMoE,EAAElE,SAAUF,EAAGsF,EAAI,GAAGA,EAAIlB,EAAEjE,WAAWH,GAAK,EAAI,OAAOsF,GAAI,EAC9I,QAASw7B,IAAWQ,GAAO,GAAGA,EAAM,EAAG,KAAM,IAAIh9B,OAAM,kBAAoBg9B,EAAM,IAAI19B,GAAE,EAAI,OAAM09B,EAAKA,EAAKA,EAAIp7B,KAAKkG,OAAOk1B,EAAI,GAAG,IAAK19B,EAAIvD,OAAOC,cAAeghC,EAAI,GAAG,GAAM,IAAM19B,CAAG,OAAOA,GAC9L,QAAS+8B,IAAQnU,GAAQ,MAAOA,GAAKjqB,QAAQ,WAAW,QACxD,QAAS8+B,IAAU7U,GAAQ,MAAOA,GAAKjqB,QAAQ,aAAa,MAE5D,QAASg/B,IAAW/U,GAAQ,MAAOA,GAAKjqB,QAAQ,sBAAsB,SAASsB,MAAM,KAErF,QAAS29B,IAAYhV,GACpB,GAAIrT,GAAI,EAAGP,EAAI,CACf,KAAI,GAAI5Y,GAAI,EAAGA,EAAIwsB,EAAKtsB,SAAUF,EAAG,CACpC,GAAIgS,GAAKwa,EAAKrsB,WAAWH,EACzB,IAAGgS,GAAM,IAAMA,GAAM,GAAImH,EAAI,GAAKA,GAAKnH,EAAK,QACvC,IAAGA,GAAM,IAAMA,GAAM,GAAI4G,EAAI,GAAKA,GAAK5G,EAAK,IAElD,OAAS5N,EAAGwU,EAAI,EAAG3H,EAAEkI,EAAI,GAG1B,QAASunB,IAAYP,GACpB,GAAImB,GAAMnB,EAAK/7B,EAAI,CACnB,IAAIR,GAAE,EACN,MAAM09B,EAAKA,GAAMA,EAAI,GAAG,GAAI,EAAG19B,EAAIvD,OAAOC,cAAeghC,EAAI,GAAG,GAAM,IAAM19B,CAC5E,OAAOA,IAAKu8B,EAAKlvB,EAAI,GAEtB,QAASwwB,IAAajB,GACrB,GAAInwB,GAAMmwB,EAAM/gC,QAAQ,IACxB,IAAG4Q,IAAQ,EAAG,OAASzM,EAAG49B,GAAYhB,GAAQz9B,EAAGy+B,GAAYhB,GAC7D,QAAS58B,EAAG49B,GAAYhB,EAAM5/B,MAAM,EAAGyP,IAAOtN,EAAGy+B,GAAYhB,EAAM5/B,MAAMyP,EAAM,KAEhF,QAASqxB,IAAaC,EAAGC,GACxB,SAAUA,KAAO,mBAAsBA,KAAO,SAAU,CACzD,MAAOF,IAAaC,EAAG/9B,EAAG+9B,EAAG5+B,GAE7B,SAAU4+B,KAAO,SAAUA,EAAKjB,GAAY,EAC3C,UAAUkB,KAAO,SAAUA,EAAKlB,GAAY,EAC7C,OAAOiB,IAAMC,EAAKD,EAAKA,EAAK,IAAMC,EAElC,QAASC,IAAUC,GAClB,GAAIl+B,GAAI69B,GAAaK,EACrB,OAAO,IAAMhB,GAAWl9B,EAAEA,EAAEQ,GAAK,IAAM28B,GAAWn9B,EAAEA,EAAEqN,GAAK,KAAO6vB,GAAWl9B,EAAEb,EAAEqB,GAAK,IAAM28B,GAAWn9B,EAAEb,EAAEkO,GAI5G,QAAS8wB,IAAyBC,EAAOz1B,GACxC,IAAIy1B,KAAWz1B,GAAQA,EAAK+zB,MAAQ,GAAK/zB,EAAK+zB,MAAQ,GAAI,KAAM,IAAIh8B,OAAM,mBAC1E,IAAI,kCAAkC6nB,KAAK6V,GAAQ,MAAO,IAAMA,EAAMz/B,QAAQ,KAAM,MAAQ,GAC5F,OAAOy/B,GAGR,QAASC,IAAkBzB,GAC1B,GAAIzgC,IAAK6D,GAAGQ,EAAE,EAAE6M,EAAE,GAAGlO,GAAGqB,EAAE,EAAE6M,EAAE,GAC9B,IAAIZ,GAAM,EAAGrQ,EAAI,EAAGgS,EAAK,CACzB,IAAI/R,GAAMugC,EAAMtgC,MAChB,KAAImQ,EAAM,EAAGrQ,EAAIC,IAAOD,EAAG,CAC1B,IAAIgS,EAAGwuB,EAAMrgC,WAAWH,GAAG,IAAM,GAAKgS,EAAK,GAAI,KAC/C3B,GAAM,GAAGA,EAAM2B,EAEhBjS,EAAE6D,EAAEQ,IAAMiM,CAEV,KAAIA,EAAM,EAAGrQ,EAAIC,IAAOD,EAAG,CAC1B,IAAIgS,EAAGwuB,EAAMrgC,WAAWH,GAAG,IAAM,GAAKgS,EAAK,EAAG,KAC9C3B,GAAM,GAAGA,EAAM2B,EAEhBjS,EAAE6D,EAAEqN,IAAMZ,CAEV,IAAGrQ,IAAMC,GAAO+R,GAAM,GAAI,CAAEjS,EAAEgD,EAAEqB,EAAErE,EAAE6D,EAAEQ,CAAGrE,GAAEgD,EAAEkO,EAAElR,EAAE6D,EAAEqN,CAAG,OAAOlR,KAC3DC,CAEF,KAAIqQ,EAAM,EAAGrQ,GAAKC,IAAOD,EAAG,CAC3B,IAAIgS,EAAGwuB,EAAMrgC,WAAWH,GAAG,IAAM,GAAKgS,EAAK,GAAI,KAC/C3B,GAAM,GAAGA,EAAM2B,EAEhBjS,EAAEgD,EAAEqB,IAAMiM,CAEV,KAAIA,EAAM,EAAGrQ,GAAKC,IAAOD,EAAG,CAC3B,IAAIgS,EAAGwuB,EAAMrgC,WAAWH,GAAG,IAAM,GAAKgS,EAAK,EAAG,KAC9C3B,GAAM,GAAGA,EAAM2B,EAEhBjS,EAAEgD,EAAEkO,IAAMZ,CACV,OAAOtQ,GAGR,QAASmiC,IAAiB/B,EAAMv6B,GAC/B,GAAIyG,GAAK8zB,EAAKt6B,GAAK,KAAOD,YAAa0H,KACvC,IAAG6yB,EAAKzJ,GAAK,KAAM,IAAM,MAAQyJ,GAAK5xB,EAAIY,GAAWgxB,EAAKzJ,EAAGrqB,EAAImkB,GAAQ5qB,GAAKA,GAAO,MAAM7C,IAC3F,IAAM,MAAQo9B,GAAK5xB,EAAIY,IAAYgxB,EAAKgC,QAAQC,WAAW/1B,EAAI,GAAK,GAAKA,EAAImkB,GAAQ5qB,GAAKA,GAAO,MAAM7C,GAAK,MAAO,GAAG6C,GAGvH,QAASy8B,IAAYlC,EAAMv6B,EAAG7F,GAC7B,GAAGogC,GAAQ,MAAQA,EAAKt6B,GAAK,MAAQs6B,EAAKt6B,GAAK,IAAK,MAAO,EAC3D,IAAGs6B,EAAK5xB,IAAM7L,UAAW,MAAOy9B,GAAK5xB,CACrC,IAAG4xB,EAAKt6B,GAAK,MAAQs6B,EAAKzJ,GAAK32B,GAAKA,EAAEoV,OAAQgrB,EAAKzJ,EAAI32B,EAAEoV,MACzD,IAAGgrB,EAAKt6B,GAAK,IAAK,MAAOy8B,IAAKnC,EAAKv6B,IAAMu6B,EAAKv6B,CAC9C,IAAGA,GAAKlD,UAAW,MAAOw/B,IAAiB/B,EAAMA,EAAKv6B,EACtD,OAAOs8B,IAAiB/B,EAAMv6B,GAG/B,QAAS28B,IAAkBC,EAAOj2B,GACjC,GAAIsK,GAAItK,GAAQA,EAAKi2B,MAAQj2B,EAAKi2B,MAAQ,QAC1C,IAAIC,KAAaA,GAAO5rB,GAAK2rB,CAC7B,QAASE,YAAa7rB,GAAI8rB,OAAQF,GAGnC,QAASG,IAAcC,EAAK/iC,EAAMyM,GACjC,GAAIxM,GAAIwM,KACR,IAAIu2B,GAAQD,EAAMr/B,MAAMW,QAAQ0+B,GAAO9iC,EAAE+iC,KACzC,IAAGrhC,GAAS,MAAQqhC,GAAS,KAAMA,EAAQrhC,CAC3C,IAAIshC,GAAKF,IAAQC,QACjB,IAAIE,GAAK,EAAGC,EAAK,CACjB,IAAGF,GAAMhjC,EAAEmjC,QAAU,KAAM,CAC1B,SAAUnjC,GAAEmjC,QAAU,SAAUF,EAAKjjC,EAAEmjC,WAClC,CACJ,GAAIC,SAAiBpjC,GAAEmjC,QAAU,SAAW1B,GAAYzhC,EAAEmjC,QAAUnjC,EAAEmjC,MACtEF,GAAKG,EAAQlyB,CAAGgyB,GAAKE,EAAQ/+B,EAE9B,IAAI2+B,EAAG,QAASA,EAAG,QAAU,QAE9B,GAAIvC,IAAU58B,GAAIQ,EAAE,IAAU6M,EAAE,KAAWlO,GAAIqB,EAAE,EAAG6M,EAAE,GACtD,IAAG8xB,EAAG,QAAS,CACd,GAAIK,GAASnB,GAAkBc,EAAG,QAClCvC,GAAM58B,EAAEQ,EAAIg/B,EAAOx/B,EAAEQ,CACrBo8B,GAAM58B,EAAEqN,EAAImyB,EAAOx/B,EAAEqN,CACrBuvB,GAAMz9B,EAAEqB,EAAI8B,KAAK2M,IAAI2tB,EAAMz9B,EAAEqB,EAAGg/B,EAAOrgC,EAAEqB,EACzCo8B,GAAMz9B,EAAEkO,EAAI/K,KAAK2M,IAAI2tB,EAAMz9B,EAAEkO,EAAGmyB,EAAOrgC,EAAEkO,EACzC,IAAG+xB,IAAO,EAAGxC,EAAMz9B,EAAEkO,EAAI+xB,EAAKI,EAAOrgC,EAAEkO,EAAI,EAE5C,IAAI,GAAIkI,GAAI,EAAGA,GAAKrZ,EAAKI,SAAUiZ,EAAG,CACrC,IAAIrZ,EAAKqZ,GAAI,QACb,KAAI3V,MAAMW,QAAQrE,EAAKqZ,IAAK,KAAM,IAAI7U,OAAM,0CAC5C,KAAI,GAAIsU,GAAI,EAAGA,GAAK9Y,EAAKqZ,GAAGjZ,SAAU0Y,EAAG,CACxC,SAAU9Y,GAAKqZ,GAAGP,KAAO,YAAa,QACtC,IAAIunB,IAASv6B,EAAG9F,EAAKqZ,GAAGP,GACxB,IAAIyqB,GAAML,EAAK7pB,EAAGmqB,EAAML,EAAKrqB,CAC7B,IAAG4nB,EAAM58B,EAAEqN,EAAIoyB,EAAK7C,EAAM58B,EAAEqN,EAAIoyB,CAChC,IAAG7C,EAAM58B,EAAEQ,EAAIk/B,EAAK9C,EAAM58B,EAAEQ,EAAIk/B,CAChC,IAAG9C,EAAMz9B,EAAEkO,EAAIoyB,EAAK7C,EAAMz9B,EAAEkO,EAAIoyB,CAChC,IAAG7C,EAAMz9B,EAAEqB,EAAIk/B,EAAK9C,EAAMz9B,EAAEqB,EAAIk/B,CAChC,IAAGxjC,EAAKqZ,GAAGP,UAAa9Y,GAAKqZ,GAAGP,KAAO,WAAapV,MAAMW,QAAQrE,EAAKqZ,GAAGP,OAAS9Y,EAAKqZ,GAAGP,YAActL,OAAO6yB,EAAOrgC,EAAKqZ,GAAGP,OAC1H,CACJ,GAAGpV,MAAMW,QAAQg8B,EAAKv6B,GAAI,CAAEu6B,EAAKrrB,EAAIhV,EAAKqZ,GAAGP,GAAG,EAAIunB,GAAKv6B,EAAIu6B,EAAKv6B,EAAE,GACpE,GAAGu6B,EAAKv6B,IAAM,KAAM,CACnB,GAAGu6B,EAAKrrB,EAAGqrB,EAAKt6B,EAAI,QACf,IAAG9F,EAAEwjC,UAAW,CAAEpD,EAAKt6B,EAAI,GAAKs6B,GAAKv6B,EAAI,MACzC,KAAI7F,EAAEyjC,WAAY,aAClBrD,GAAKt6B,EAAI,QAEV,UAAUs6B,GAAKv6B,IAAM,SAAUu6B,EAAKt6B,EAAI,QACxC,UAAUs6B,GAAKv6B,IAAM,UAAWu6B,EAAKt6B,EAAI,QACzC,IAAGs6B,EAAKv6B,YAAa0H,MAAM,CAC/B6yB,EAAKzJ,EAAI32B,EAAEoV,QAAUvO,EAAU,GAC/B,IAAG7G,EAAE0jC,UAAW,CAAEtD,EAAKt6B,EAAI,GAAKs6B,GAAK5xB,EAAIY,GAAWgxB,EAAKzJ,EAAGlG,GAAQ2P,EAAKv6B,EAAG7F,EAAEsN,eACzE,CAAE8yB,EAAKt6B,EAAI,GAAKs6B,GAAKv6B,EAAI4qB,GAAQ2P,EAAKv6B,EAAG7F,EAAEsN,SAAW8yB,GAAK5xB,EAAIY,GAAWgxB,EAAKzJ,EAAGyJ,EAAKv6B,QAExFu6B,GAAKt6B,EAAI,IAEf,GAAGi9B,EAAO,CACT,IAAIC,EAAGM,GAAMN,EAAGM,KAChB,IAAGN,EAAGM,GAAKC,IAAQP,EAAGM,GAAKC,GAAK5M,EAAGyJ,EAAKzJ,EAAIqM,EAAGM,GAAKC,GAAK5M,CACzDqM,GAAGM,GAAKC,GAAOnD,MACT,CACN,GAAIuD,GAAWhD,IAAct8B,EAAEk/B,EAAIryB,EAAEoyB,GACrC,IAAGN,EAAGW,IAAaX,EAAGW,GAAUhN,EAAGyJ,EAAKzJ,EAAIqM,EAAGW,GAAUhN,CACzDqM,GAAGW,GAAYvD,IAIlB,GAAGK,EAAM58B,EAAEQ,EAAI,IAAU2+B,EAAG,QAAUrB,GAAalB,EACnD,OAAOuC,GAER,QAASY,IAAa7jC,EAAMyM,GAAQ,MAAOq2B,IAAc,KAAM9iC,EAAMyM,GAMrE,GAAIq3B,IAAc,CAClB,IAAIC,IAAc,CAOlB,IAAIC,IAAc,EAClB,IAAIC,IAAc,EAKlB,IAAIC,IAAc,EAOlB,IAAIC,IAAc,EAClB,IAAIC,IAAc,EAMlB,IAAIC,IAAc,EAIlB,IAAIC,IAAoB,IACxB,IAAIC,IAAoB,IAGxB,IAAIC,IAAc,EAClB,IAAIC,IAAc,EAClB,IAAIC,KAAeF,GAAWC,GAG9B,IAAIE,KACJrmC,GAAQyY,EAAG,WAAYhR,EAAG+9B,IAC1BvlC,GAAQwY,EAAG,WAAYhR,EAAGy+B,IAC1Bz9B,GAAQgQ,EAAG,qBAAsBhR,EAAGy+B,IACpCx9B,GAAQ+P,EAAG,YAAahR,EAAGg+B,IAC3Br7B,GAAQqO,EAAG,YAAahR,EAAGg+B,IAC3Bp7B,GAAQoO,EAAG,iBAAkBhR,EAAGg+B,IAChCn7B,GAAQmO,EAAG,aAAchR,EAAGg+B,IAC5Bl7B,GAAQkO,EAAG,YAAahR,EAAGg+B,IAC3B98B,GAAQ8P,EAAG,cAAehR,EAAGg+B,IAC7B78B,IAAQ6P,EAAG,sBAAuBhR,EAAGg+B,IACrC58B,IAAQ4P,EAAG,YAAahR,EAAGi+B,IAC3B58B,IAAQ2P,EAAG,eAAgBhR,EAAGu+B,IAC9Bj9B,IAAQ0P,EAAG,gBAAiBhR,EAAGw+B,IAC/Bj9B,IAAQyP,EAAG,UAAWhR,EAAGy+B,IACzBj9B,IAAQwP,EAAG,UAAWhR,EAAGy+B,IACzBh9B,IAAQuP,EAAG,gBAAiBhR,EAAGi+B,IAC/Bv8B,IAAQsP,EAAG,iBAAkBhR,EAAGg+B,IAChCp8B,IAAQoP,EAAG,YAAahR,EAAGi+B,IAC3Bl8B,IAAQiP,EAAG,oBAAqBhR,EAAGi+B,IACnCl7B,IAAQiO,EAAG,aAAchR,EAAGg+B,GAAOvqB,EAAG,WACtCzQ,IAAQgO,EAAG,SAAUhR,EAAGq+B,IACxBn7B,IAAQ8N,EAAG,cAAehR,EAAGy+B,IAC7Bt7B,IAAQ6N,EAAG,gBAAiBhR,EAAGy+B,IAC/Br7B,IAAQ4N,EAAG,WAAYhR,EAAGy+B,IAC1Bp7B,IAAQ2N,EAAG,UAAWhR,EAAGy+B,IACzBjlC,OAEAqlC,YAAc7tB,EAAG,SAAUhR,EAAGm+B,IAC9BW,YAAc9tB,EAAG,WAAYhR,EAAGm+B,IAChCY,cAIA,IAAIC,KACJzmC,GAAQyY,EAAG,WAAYhR,EAAG+9B,IAC1BvlC,GAAQwY,EAAG,QAAShR,EAAGy+B,IACvBz9B,GAAQgQ,EAAG,UAAWhR,EAAGy+B,IACzBx9B,GAAQ+P,EAAG,SAAUhR,EAAGy+B,IACxB97B,GAAQqO,EAAG,WAAYhR,EAAGy+B,IAC1B77B,GAAQoO,EAAG,WAAYhR,EAAGy+B,IAC1B57B,GAAQmO,EAAG,WAAYhR,EAAGy+B,IAC1B37B,GAAQkO,EAAG,aAAchR,EAAGy+B,IAC5Bv9B,GAAQ8P,EAAG,YAAahR,EAAGy+B,IAC3Bt9B,IAAQ6P,EAAG,WAAYhR,EAAGo+B,IAC1Bh9B,IAAQ4P,EAAG,cAAehR,EAAGo+B,IAC7B/8B,IAAQ2P,EAAG,cAAehR,EAAGo+B,IAC7B98B,IAAQ0P,EAAG,eAAgBhR,EAAGo+B,IAC9B78B,IAAQyP,EAAG,YAAahR,EAAGg+B,IAC3Bx8B,IAAQwP,EAAG,YAAahR,EAAGg+B,IAC3Bv8B,IAAQuP,EAAG,YAAahR,EAAGg+B,IAC3Bt8B,IAAQsP,EAAG,YAAahR,EAAGs+B,IAC3B38B,IAAQqP,EAAG,cAAehR,EAAGy+B,IAC7B78B,IAAQoP,EAAG,cAAehR,EAAGg+B,IAC7BxkC,OAEAqlC,YAAc7tB,EAAG,SAAUhR,EAAGm+B,IAC9BW,YAAc9tB,EAAG,WAAYhR,EAAGm+B,IAChCY,cAIA,IAAIE,KACJ1mC,EAAQ,KACRC,EAAQ,KACRwI,EAAQ,GACR6B,EAAQ,KACRhB,GAAQ,KACRyB,GAAQ,KACRC,GAAQ,KACR8M,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRE,GAAQ,KACRvO,GAAQ,KACRqD,GAAQ,KACRE,GAAQ,KACRC,GAAQ,KACRtD,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRkB,GAAQ,KACRG,GAAQ,KACRK,GAAQ,KACRkB,GAAQ,KACRE,GAAQ,KACRN,GAAQ,KACRC,GAAQ,KACRi6B,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,IAAQ,KACRC,MAAQ,KAIR,IAAIC,KACH,KACA,QACA,aACA,WACA,YACA,iBACA,eACA,WACA,SACA,WACA,cACA,kBACA,gBACA,YACA,UACA,YACA,eACA,UACA,WAGD,SAASC,IAAOjV,GAAO,MAAOA,GAAIxtB,IAAI,SAAS/C,GAAK,OAASA,GAAG,GAAI,IAAKA,GAAG,EAAG,IAAIA,EAAE,OAIrF,GAAIylC,IAAWD,IAEd,EACA,SACA,SACA,MACA,IACA,SACA,SACA,MAGA,EACA,SACA,SACA,MACA,IACA,SACA,SACA,MAEA,QACA,MACA,IACA,QACA,QACA,MACA,SACA,QACA,SACA,SACA,SACA,SACA,QACA,SACA,MACA,SAEA,IACA,SACA,SACA,MACA,QACA,QACA,MACA,IACA,MACA,SACA,SACA,SACA,SACA,SACA,SACA,SAEA,QACA,QACA,SACA,SACA,SACA,SACA,QACA,QACA,MACA,QACA,MACA,QACA,SACA,SACA,QACA,QAGA,EACA,SACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAED,IAAIE,IAASrT,GAAIoT,GAGjB,IAAIlE,KACJnkC,EAAM,SACNuK,EAAM,UACNrB,GAAM,UACNuB,GAAM,QACNM,GAAM,SACNoN,GAAM,QACNjL,GAAM,OACNC,GAAM,gBACNjM,IAAM,QAGN,IAAIqnC,KACHC,SAAiB,EACjBC,UAAiB,EACjBC,UAAiB,GACjBC,QAAiB,GACjBC,SAAiB,GACjBC,QAAiB,GACjBC,OAAiB,GACjBC,gBAAiB,GACjBC,QAAiB,IAGlB,IAAIC,KACH,yBACA,kBACA,mBACA,gBACA,iBACA,iBACA,mBACA,qBACA,iBACA,kBACA,sBACA,wBACA,oBACA,wBAOD,IAAIC,KAEHC,6EAA8E,YAC9EC,uDAAwD,YACxDC,0DAA2D,YAC3DC,uDAAwD,YACxDC,gFAAiF,YAGjFC,4EAA6E,SAC7EC,qCAAsC;AACtCC,sCAAuC,OAGvCC,6EAA8E,SAC9EC,sCAAuC,SAGvCC,0CAA2C,SAC3CC,sCAAuC,SACvCC,0CAA2C,OAC3CC,sCAAuC,OAGvCC,8EAA+E,UAC/EC,uCAAwC,UAGxCC,gFAAiF,OACjFC,yCAA0C,OAG1CC,yEAA0E,SAC1EC,kCAAmC,SAGnCC,6DAA8D,YAC9DC,sEAAuE,YACvEC,wEAAyE,WAGzEC,wEAAyE,OACzEC,6EAA8E,OAG9EC,2EAA4E,WAC5EC,oCAAqC,WACrCC,gDAAiD,mBACjDC,sCAAuC,SAGvCC,gFAAiF,WACjFC,yCAA0C,WAG1CC,sCAAuC,OACvCC,6EAA8E,OAG9EC,oEAAqE,OAGrEC,gDAAiD,OAGjDC,2CAA4C,OAG5CC,wCAAyC,OAGzCC,qCAAsC,aACtCC,4EAA6E,aAG7EC,8EAA+E,OAG/EC,oCAAqC,OACrCC,wCAAyC,OAGzCC,4CAA6C,OAG7CC,uCAAwC,OACxCC,8EAA+E,OAG/EC,wCAAyC,QACzCC,+EAAgF,QAGhFC,gDAAiD,OACjDC,6CAA8C,OAC9CC,uFAAwF,OACxFC,oFAAqF,OAGrFC,sCAAuC,OACvCC,6EAA8E,OAG9EC,qCAAsC,OACtCC,2CAA4C,OAC5CC,uCAAwC,OACxCC,kFAAmF,OACnFC,8EAA+E,OAC/EC,4EAA6E,OAG7EC,4CAA6C,OAC7CC,mFAAoF,OAGpFC,kCAAmC,OACnCC,uCAAwC,OACxCC,sCAAuC,OACvCC,2CAA4C,OAG5CC,qCAAsC,OAGtCC,iCAAkC,OAClCC,wEAAyE,OAGzEC,0DAA2D,SAG3DC,kEAAmE,OAGnEC,wCAAyC,OACzCC,6CAA8C,OAG9CC,uCAAwC,MACxCC,gDAAiD,OAGjDC,iDAAkD,OAClDC,uFAAwF,OAGxFC,iDAAkD,OAGlDC,2DAA4D,OAG5DC,sCAAuC,OAGvCC,4DAA6D,WAC7DC,0EAA2E,OAC3EC,4EAA6E,OAC7EC,0EAA2E,OAC3EC,4EAA6E,OAC7EC,2EAA4E,OAG5EC,2DAA4D,OAE5DC,2DAA4D,OAC5DC,0DAA2D,OAG3DC,YAAa,OAEbtK,MAAS,KAGV,IAAIuK,KACHC,WACCvV,KAAM,6EACNwV,KAAM,uDACNC,KAAM,0DACNC,KAAM,uDACNC,KAAM,iFAEPC,MACC5V,KAAM,gFACNyV,KAAM,0CAEPI,UACC7V,KAAM,2EACNyV,KAAM,qCAEPzK,QACChL,KAAM,4EACNyV,KAAM,sCAEPK,QACC9V,KAAM,6EACNyV,KAAM,uCAEPM,SACC/V,KAAM,8EACNyV,KAAM,wCAEPO,QACChW,KAAM,0CACNyV,KAAM,uCAEPQ,UACCjW,KAAM,gFACNyV,KAAM,0CAEPS,QACClW,KAAM,yEACNyV,KAAM,mCAIR,SAASU,MACR,OACCZ,aAAcvK,UAAW8K,UAAWC,WAAYC,UAChDI,QAASR,QAASC,YAAaQ,oBAAqBC,SACpDC,aAAcC,YAAaC,aAAcC,UAAWR,UACpDS,cAAeC,OAASC,YAAcZ,YAAca,UACpDC,QAASC,MAAO,IAGlB,QAASC,IAAS5uC,GACjB,GAAI8f,GAAKguB,IACT,KAAI9tC,IAASA,EAAKyQ,MAAO,MAAOqP,EAChC,IAAI+uB,OACH7uC,EAAKyQ,MAAM4lB,SAAevf,QAAQ,SAAS7V,GAC3C,GAAIgM,GAAIupB,GAAYv1B,EACpB,QAAOgM,EAAE,GAAGxK,QAAQ6zB,GAAQ,MAC3B,IAAK,QAAS,MACd,IAAK,SAAUxW,EAAG6uB,MAAQ1hC,EAAE,SAAWA,EAAE,GAAGwD,MAAM,aAAa,GAAG,KAAK,GAAM,OAC7E,IAAK,WAAYo+B,EAAM5hC,EAAE6hC,UAAU96B,eAAiB/G,EAAE8hC,WAAa,OACnE,IAAK,YACJ,GAAGjvB,EAAGynB,GAAQt6B,EAAE8hC,gBAAkBnsC,UAAWkd,EAAGynB,GAAQt6B,EAAE8hC,cAActpC,KAAKwH,EAAE+hC,SAC/E,UAGH,IAAGlvB,EAAG6uB,QAAUrU,GAAMI,GAAI,KAAM,IAAIl2B,OAAM,sBAAwBsb,EAAG6uB,MACrE7uB,GAAGmvB,UAAYnvB,EAAGwuB,WAAWluC,OAAS,EAAI0f,EAAGwuB,WAAW,GAAK,EAC7DxuB,GAAGovB,IAAMpvB,EAAGytB,KAAKntC,OAAS,EAAI0f,EAAGytB,KAAK,GAAK,EAC3CztB,GAAGqvB,MAAQrvB,EAAG+tB,OAAOztC,OAAS,EAAI0f,EAAG+tB,OAAO,GAAK,EACjD/tB,GAAGsvB,SAAWP,QACP/uB,GAAGwuB,UACV,OAAOxuB,GAGR,QAASuvB,IAASvvB,EAAIrT,EAAMkR,GAC3B,GAAI2xB,GAAsC9e,GAAU+W,GAEpD,IAAItnC,MAAQ6F,CAEZ,KAAI6X,EAAK,CACR1d,EAAEA,EAAEG,QAAU,EACdH,GAAEA,EAAEG,QAAU45B,GAAU,QAAS,MAChC2U,MAASrU,GAAMI,GACf6U,YAAajV,GAAMc,IACnBoU,YAAalV,GAAMa,KAEpBl7B,GAAIA,EAAE2E,SACJ,MAAO,oBACP,MAAO,4DACP,MAAO,6DACP,OAAQ,6DAER,MAAO,cACP,MAAO,cACP,MAAO,cACP,MAAO,gBACP,MAAO,gBACP,MAAO,eAAgB,OAAQ,eAC/B,MAAO,eAAgB,OAAQ,eAC/B,MAAO,oBACP,OAAQ,6DACRZ,IAAI,SAAS/C,GACd,MAAO+4B,IAAU,UAAW,MAAO8U,UAAY7tC,EAAE,GAAI8tC,YAAe9tC,EAAE,QAKxE,GAAIwuC,GAAK,SAAShhC,GACjB,GAAGqR,EAAGrR,IAAMqR,EAAGrR,GAAGrO,OAAS,EAAG,CAC7B0F,EAAIga,EAAGrR,GAAG,EACVxO,GAAEA,EAAEG,QAAW45B,GAAU,WAAY,MACpCgV,UAAalpC,EAAE,IAAM,IAAM,GAAG,KAAOA,EACrCipC,YAAe9B,GAAQx+B,GAAGhC,EAAKijC,WAAazC,GAAQx+B,GAAG,WAM1D,IAAIkhC,GAAK,SAASlhC,IAChBqR,EAAGrR,QAAQqI,QAAQ,SAAShR,GAC5B7F,EAAEA,EAAEG,QAAW45B,GAAU,WAAY,MACpCgV,UAAalpC,EAAE,IAAM,IAAM,GAAG,KAAOA,EACrCipC,YAAe9B,GAAQx+B,GAAGhC,EAAKijC,WAAazC,GAAQx+B,GAAG,YAM1D,IAAImhC,GAAK,SAAS7pC,IAChB+Z,EAAG/Z,QAAQ+Q,QAAQ,SAAShR,GAC5B7F,EAAEA,EAAEG,QAAW45B,GAAU,WAAY,MACpCgV,UAAalpC,EAAE,IAAM,IAAM,GAAG,KAAOA,EACrCipC,YAAeO,EAAQvpC,GAAG,OAK7B0pC,GAAG,YACHE,GAAG,SACHA,GAAG,SACHC,GAAG,WACF,OAAQ,UAAU94B,QAAQ24B,IAC1B,YAAa,WAAY,aAAa34B,QAAQ84B,EAC/CA,GAAG,MACHA,GAAG,WACHA,GAAG,mBACHA,GAAG,WACHD,GAAG,WACHC,GAAG,SACH,KAAIjyB,GAAO1d,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,UAAcH,GAAE,GAAGA,EAAE,GAAGwC,QAAQ,KAAK,KAC3E,MAAOxC,GAAEQ,KAAK,IAGf,GAAIk6B,KACHkV,GAAI,qFACJC,MAAO,qFACPC,MAAO,gFACPC,IAAK,iFACLC,MAAO,uFACPC,MAAO,0FACPC,MAAO,mFACPC,KAAM,gFACNC,MAAO,qFACPC,KAAM,+EACN/V,WAAY,wFACZE,UAAW,0FACXD,WAAY,wFACZ+V,IAAK,oFACLC,IAAK,6EACLC,MAAO,4EACPC,MAAO,4EACPC,QAAS,iEACTC,GAAI,iFACJC,IACC,gFACA,qEAEDC,GAAI,kFACJC,GAAI,sEACJC,IAAK,4EACLC,KAAM,8EACNC,OAAQ,oFACRtW,MAAO,4EACPuW,OAAQ,mEACRC,KAAM,kFACNC,IAAK,oEAIN,SAASC,IAAc31B,GACtB,GAAI5E,GAAI4E,EAAKrI,YAAY,IACzB,OAAOqI,GAAK7a,MAAM,EAAEiW,EAAE,GAAK,SAAW4E,EAAK7a,MAAMiW,EAAE,GAAK,QAGzD,QAASw6B,IAAWvxC,EAAMwxC,GACzB,GAAIzD,IAAQ0D,SACZ,KAAKzxC,EAAM,MAAO+tC,EAClB,IAAIyD,EAAgBlvC,OAAO,KAAO,IAAK,CACtCkvC,EAAkB,IAAIA,EAEvB,GAAIpqB,OAEHpnB,EAAKyQ,MAAM4lB,SAAevf,QAAQ,SAAS7V,GAC3C,GAAIgM,GAAIupB,GAAYv1B,EAEpB,IAAIgM,EAAE,KAAO,gBAAiB,CAC7B,GAAIykC,KAAUA,GAAIC,KAAO1kC,EAAE0kC,IAAMD,GAAIE,OAAS3kC,EAAE2kC,MAAQF,GAAIG,GAAK5kC,EAAE4kC,EAAI,IAAG5kC,EAAE6kC,WAAYJ,EAAII,WAAa7kC,EAAE6kC,UAC3G,IAAIC,GAAgB9kC,EAAE6kC,aAAe,WAAa7kC,EAAE2kC,OAAS/b,GAAa5oB,EAAE2kC,OAAQJ,EACpFzD,GAAKgE,GAAiBL,CACtBtqB,GAAKna,EAAE4kC,IAAMH,IAGf3D,GAAK,OAAS3mB,CACd,OAAO2mB,GAKR,QAASiE,IAAWjE,GACnB,GAAI9tC,IAAKg2B,GAAY+D,GAAU,gBAAiB,MAE/C2U,MAASrU,GAAMK,OAEhB9K,IAAKke,EAAK,QAAQj3B,QAAQ,SAASm7B,GAClChyC,EAAEA,EAAEG,QAAW45B,GAAU,eAAgB,KAAM+T,EAAK,OAAOkE,KAE5D,IAAGhyC,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,kBAAsBH,GAAE,GAAGA,EAAE,GAAGwC,QAAQ,KAAK,KAC3E,MAAOxC,GAAEQ,KAAK,IAGf,QAASyxC,IAASnE,EAAMoE,EAAKn9B,EAAGzF,EAAM6iC,EAAQC,GAC7C,IAAID,EAAQA,IACZ,KAAIrE,EAAK,OAAQA,EAAK,SACtB,KAAIA,EAAK,QAASA,EAAK,QAAU,CACjC,IAAGoE,EAAM,EAAG,IAAIA,EAAMpE,EAAK,QAASA,EAAK,OAAO,MAAQoE,KAAQA,EAAI,EACpEpE,EAAK,QAAUoE,EAAM,CACrBC,GAAOP,GAAK,MAAQM,CACpBC,GAAOT,KAAOpiC,CACd6iC,GAAOR,OAAS58B,CAChB,IAAGq9B,EAAYD,EAAON,WAAaO,MAC9B,KAAI1X,GAAKoV,MAAOpV,GAAKsV,MAAOtV,GAAKuV,OAAOvwC,QAAQyyC,EAAOT,OAAS,EAAGS,EAAON,WAAa,UAC5F,IAAG/D,EAAK,OAAOqE,EAAOP,IAAK,KAAM,IAAIrtC,OAAM,sBAAwB2tC,EACnEpE,GAAK,OAAOqE,EAAOP,IAAMO,CACzBrE,IAAM,IAAMqE,EAAOR,QAAQnvC,QAAQ,KAAK,MAAQ2vC,CAChD,OAAOD,GAIR,GAAIG,IAAS,gDACb,SAASC,IAAe/sC,EAAGiH,GAC1B,GAAIwF,GAAMmoB,GAAe50B,EACzB,IAAIgtC,EACJ,IAAIC,EACJ,OAAOD,EAAKnY,GAAUqY,KAAKzgC,GAAO,OAAOugC,EAAG,IAC3C,IAAK,WAAY,MACjB,IAAK,aACJC,EAAQjc,GAAYgc,EAAG,GAAI,MAC3B,IAAGC,EAAM5vB,MAAQ,KAAO4vB,EAAMljC,OAAS+iC,GAAQ,KAAM,IAAI9tC,OAAM,yCAC/D,OACD,IAAK,mBACL,IAAK,aACL,IAAK,wBACL,IAAK,iBACJ,KAAM,IAAIA,OAAM,8BACjB,QAAS,GAAGiI,GAAQA,EAAKmtB,IAAK,KAAM4Y,KAItC,QAASG,IAAeC,GACvB,GAAI3yC,IAAKg2B,GACTh2B,GAAEwF,KAAK,mHACPxF,GAAEwF,KAAK,gJACP,KAAI,GAAIvF,GAAI,EAAGA,EAAI0yC,EAASxyC,SAAUF,EAAGD,EAAEwF,KAAK,8CAAgDmtC,EAAS1yC,GAAG,GAAK,0BAA4B0yC,EAAS1yC,GAAG,GAAK,QAC9JD,GAAEwF,KAAK,uBACP,OAAOxF,GAAEQ,KAAK,IAIf,QAASoyC,IAAel3B,EAAM+Z,EAAKe,GAClC,OACC,iCAAmC9a,EAAO,OAC1C,8EAAgF8a,GAAO,OAAS,IAAMf,EAAM,QAC5G,0BACCj1B,KAAK,IAER,QAASqyC,IAAcrhC,EAAMkK,GAC5B,OACC,iCAAmClK,EAAO,OAC1C,iGAAmGkK,EAAO,QAC1G,0BACClb,KAAK,IAER,QAASsyC,IAAUC,GAClB,GAAI/yC,IAAKg2B,GACTh2B,GAAEwF,KAAK,sEACP,KAAI,GAAIvF,GAAI,EAAGA,GAAK8yC,EAAI5yC,SAAUF,EAAG,CACpCD,EAAEwF,KAAKotC,GAAeG,EAAI9yC,GAAG,GAAI8yC,EAAI9yC,GAAG,IACxCD,GAAEwF,KAAKqtC,GAAc,GAAGE,EAAI9yC,GAAG,KAEhCD,EAAEwF,KAAKotC,GAAe,GAAG,WAAY,OACrC5yC,GAAEwF,KAAK,aACP,OAAOxF,GAAEQ,KAAK,IAGf,QAASwyC,MACR,MAAO,mSAAqS,MAAQp1C,EAAKE,QAAU,yDAKpU,GAAIw8B,MACF,cAAe,aACf,mBAAoB,kBACpB,cAAe,aACf,oBAAqB,eACrB,iBAAkB,gBAClB,cAAe,cACf,aAAc,YACd,aAAc,WACd,iBAAkB,aAClB,gBAAiB,eACjB,cAAe,aACf,aAAc,YACd,WAAY,UACZ,kBAAmB,cAAe,SAClC,mBAAoB,eAAgB,QAGtC,IAAI2Y,IAAmB,WACtB,GAAI/hC,GAAI,GAAIzN,OAAM62B,GAAWn6B,OAC7B,KAAI,GAAIF,GAAI,EAAGA,EAAIq6B,GAAWn6B,SAAUF,EAAG,CAC1C,GAAI8U,GAAIulB,GAAWr6B,EACnB,IAAIg1B,GAAI,MAAOlgB,EAAE,GAAGlU,MAAM,EAAEkU,EAAE,GAAGrV,QAAQ,MAAO,KAAMqV,EAAE,GAAGlU,MAAMkU,EAAE,GAAGrV,QAAQ,KAAK,EACnFwR,GAAEjR,GAAK,GAAIyW,QAAO,IAAMue,EAAI,uBAA0BA,EAAI,KAE3D,MAAO/jB,KAGR,SAASgiC,IAAiBnzC,GACzB,GAAIwZ,KACJxZ,GAAO+4B,GAAS/4B,EAEhB,KAAI,GAAIE,GAAI,EAAGA,EAAIq6B,GAAWn6B,SAAUF,EAAG,CAC1C,GAAI8U,GAAIulB,GAAWr6B,GAAIkzC,EAAMpzC,EAAKyQ,MAAMyiC,GAAiBhzC,GACzD,IAAGkzC,GAAO,MAAQA,EAAIhzC,OAAS,EAAGoZ,EAAExE,EAAE,IAAMuiB,GAAY6b,EAAI,GAC5D,IAAGp+B,EAAE,KAAO,QAAUwE,EAAExE,EAAE,IAAKwE,EAAExE,EAAE,IAAMqc,GAAU7X,EAAExE,EAAE,KAGxD,MAAOwE,GAGR,QAAS65B,IAAQr+B,EAAGkgB,EAAG/P,EAAGllB,EAAGuZ,GAC5B,GAAGA,EAAExE,IAAM,MAAQkgB,GAAK,MAAQA,IAAM,GAAI,MAC1C1b,GAAExE,GAAKkgB,CACPA,GAAI4C,GAAU5C,EACdj1B,GAAEA,EAAEG,QAAW+kB,EAAI6U,GAAUhlB,EAAEkgB,EAAE/P,GAAK2U,GAAS9kB,EAAEkgB,GAGlD,QAASoe,IAAiB5zC,EAAI+hB,GAC7B,GAAIhV,GAAOgV,KACX,IAAIxhB,IAAKg2B,GAAY+D,GAAU,oBAAqB,MAEnDuZ,WAAYjZ,GAAMC,WAClBiZ,WAAYlZ,GAAMO,GAClB4Y,gBAAiBnZ,GAAMQ,QACvB4Y,iBAAkBpZ,GAAMS,SACxByU,YAAalV,GAAMa,OACf3hB,IACL,KAAI9Z,IAAO+M,EAAKknC,MAAO,MAAO1zC,GAAEQ,KAAK,GAErC,IAAGf,EAAI,CACN,GAAGA,EAAGk0C,aAAe,KAAMP,GAAQ,wBAA0B3zC,GAAGk0C,cAAgB,SAAWl0C,EAAGk0C,YAAc3Z,GAAav6B,EAAGk0C,YAAannC,EAAKmtB,MAAOia,WAAW,kBAAmB5zC,EAAGuZ,EACtL,IAAG9Z,EAAGo0C,cAAgB,KAAMT,GAAQ,yBAA2B3zC,GAAGo0C,eAAiB,SAAWp0C,EAAGo0C,aAAe7Z,GAAav6B,EAAGo0C,aAAcrnC,EAAKmtB,MAAOia,WAAW,kBAAmB5zC,EAAGuZ,GAG5L,IAAI,GAAItZ,GAAI,EAAGA,GAAKq6B,GAAWn6B,SAAUF,EAAG,CAC3C,GAAI8U,GAAIulB,GAAWr6B,EACnB,IAAI4F,GAAI2G,EAAKknC,OAASlnC,EAAKknC,MAAM3+B,EAAE,KAAO,KAAOvI,EAAKknC,MAAM3+B,EAAE,IAAMtV,EAAKA,EAAGsV,EAAE,IAAM,IACpF,IAAGlP,IAAM,KAAMA,EAAI,QACd,IAAGA,IAAM,MAAOA,EAAI,QACpB,UAAUA,IAAK,SAAUA,EAAIvF,OAAOuF,EACzC,IAAGA,GAAK,KAAMutC,GAAQr+B,EAAE,GAAIlP,EAAG,KAAM7F,EAAGuZ,GAEzC,GAAGvZ,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,sBAA0BH,GAAE,GAAGA,EAAE,GAAGwC,QAAQ,KAAK,KAC/E,MAAOxC,GAAEQ,KAAK,IAIf,GAAIg6B,MACF,cAAe,cAAe,WAC9B,aAAc,aAAc,WAC5B,UAAW,UAAW,WACtB,cAAe,cAAe,WAC9B,UAAW,UAAW,WACtB,oBAAqB,oBAAqB,SAC1C,YAAa,YAAa,SAC1B,gBAAiB,gBAAiB,SAClC,YAAa,YAAa,SAC1B,eAAgB,eAAgB,QAChC,gBAAiB,gBAAiB,OAGpC,IAAIsZ,KACH,aAAe,aACf,cAAe,eACf,cAAe,aAEhB,SAASC,IAAiBC,EAAIC,EAAKC,EAAO1nC,GACzC,GAAI3G,KACJ,UAAUmuC,IAAM,SAAUnuC,EAAI2zB,GAAYwa,EAAIxnC,OACzC,KAAI,GAAIuD,GAAI,EAAGA,EAAIikC,EAAG7zC,SAAU4P,EAAGlK,EAAIA,EAAElB,OAAOqvC,EAAGjkC,GAAGhM,IAAI,SAASowC,GAAM,OAAQtuC,EAAEsuC,KACxF,IAAIC,SAAgBH,IAAO,SAAYza,GAAYya,EAAKznC,GAAMzI,IAAI,SAAU/C,GAAK,MAAOA,GAAE6E,IAAQouC,CAClG,IAAI3jC,GAAM,EAAGpQ,EAAM,CACnB,IAAGk0C,EAAMj0C,OAAS,EAAG,IAAI,GAAIF,GAAI,EAAGA,IAAM4F,EAAE1F,OAAQF,GAAK,EAAG,CAC3DC,GAAQ2F,EAAE5F,EAAE,GAAI,CAChB,QAAO4F,EAAE5F,GAAG4F,GACX,IAAK,cACL,IAAK,OACL,IAAK,SACL,IAAK,eACL,IAAK,UACL,IAAK,iBACL,IAAK,kBACL,IAAK,qBACL,IAAK,sBACL,IAAK,mBACL,IAAK,qBACL,IAAK,aACL,IAAK,YACL,IAAK,oBACL,IAAK,aACJquC,EAAMG,WAAan0C,CACnBg0C,GAAMvR,WAAayR,EAAMvzC,MAAMyP,EAAKA,EAAMpQ,EAC1C,OAED,IAAK,gBACL,IAAK,qBACL,IAAK,UACL,IAAK,qBACL,IAAK,oBACJg0C,EAAMI,YAAcp0C,CACpBg0C,GAAMK,aAAeH,EAAMvzC,MAAMyP,EAAKA,EAAMpQ,EAC5C,OAED,IAAK,UACL,IAAK,YACJg0C,EAAMM,YAAct0C,CACpBg0C,GAAMO,WAAaL,EAAMvzC,MAAMyP,EAAKA,EAAMpQ,EAC1C,QAEFoQ,GAAOpQ,GAIT,QAASw0C,IAAgB30C,EAAMwZ,EAAG/M,GACjC,GAAIF,KAAQ,KAAIiN,EAAGA,IACnBxZ,GAAO+4B,GAAS/4B,EAEhBy6B,IAAU3jB,QAAQ,SAAS9B,GAC1B,GAAI0V,IAAO1qB,EAAKyQ,MAAMuoB,GAAShkB,EAAE,UAAU,EAC3C,QAAOA,EAAE,IACR,IAAK,SAAU,GAAG0V,EAAKlR,EAAExE,EAAE,IAAMuiB,GAAY7M,EAAM,OACnD,IAAK,OAAQlR,EAAExE,EAAE,IAAM0V,IAAQ,MAAQ,OACvC,IAAK,MACJ,GAAI0oB,GAAMpzC,EAAKyQ,MAAM,GAAIkG,QAAO,IAAM3B,EAAE,GAAK,uBAA0BA,EAAE,GAAK,KAC9E,IAAGo+B,GAAOA,EAAIhzC,OAAS,EAAGmM,EAAEyI,EAAE,IAAMo+B,EAAI,EACxC,UAIH,IAAG7mC,EAAEqoC,cAAgBroC,EAAEsoC,cAAeb,GAAiBznC,EAAEqoC,aAAcroC,EAAEsoC,cAAer7B,EAAG/M,EAE3F,OAAO+M,GAGR,QAASs7B,IAAgBp1C,GACxB,GAAIO,MAAQ80C,EAAI/a,EAChB,KAAIt6B,EAAIA,IACRA,GAAGs1C,YAAc,SACjB/0C,GAAEA,EAAEG,QAAU,EACdH,GAAEA,EAAEG,QAAW45B,GAAU,aAAc,MACtC2U,MAASrU,GAAMG,UACfwa,WAAY3a,GAAMY,IAGnBT,IAAU3jB,QAAQ,SAAS9B,GAC1B,GAAGtV,EAAGsV,EAAE,MAAQpS,UAAW,MAC3B,IAAIkD,EACJ,QAAOkP,EAAE,IACR,IAAK,SAAUlP,EAAIgyB,GAAUv3B,OAAOb,EAAGsV,EAAE,KAAO,OAChD,IAAK,OAAQlP,EAAIpG,EAAGsV,EAAE,IAAM,OAAS,OAAS,QAE/C,GAAGlP,IAAMlD,UAAW3C,EAAEA,EAAEG,QAAW20C,EAAE//B,EAAE,GAAIlP,IAI5C7F,GAAEA,EAAEG,QAAW20C,EAAE,eAAgBA,EAAE,YAAaA,EAAE,aAAc,mCAAmCA,EAAE,aAAcA,EAAE,QAASx0C,OAAOb,EAAG40C,eAAgB91B,KAAK,EAAGmb,SAAS,YACzK15B,GAAEA,EAAEG,QAAW20C,EAAE,gBAAiBA,EAAE,YAAar1C,EAAGkjC,WAAW5+B,IAAI,SAASF,GAAK,MAAO,aAAeg0B,GAAUh0B,GAAK,gBAAkBrD,KAAK,KAAM+d,KAAM9e,EAAG40C,WAAY3a,SAAS,UACjL,IAAG15B,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,eAAmBH,GAAE,GAAGA,EAAE,GAAGwC,QAAQ,KAAK,KACxE,MAAOxC,GAAEQ,KAAK,IAGf,GAAIy0C,IAAY,eAChB,SAASC,IAAiBn1C,EAAMyM,GAC/B,GAAI+M,MAAQ0D,EAAO,EACnB,IAAIhQ,GAAIlN,EAAKyQ,MAAMykC,GACnB,IAAGhoC,EAAG,IAAI,GAAIhN,GAAI,EAAGA,GAAKgN,EAAE9M,SAAUF,EAAG,CACxC,GAAIe,GAAIiM,EAAEhN,GAAI+M,EAAIupB,GAAYv1B,EAC9B,QAAO81B,GAAS9pB,EAAE,KACjB,IAAK,QAAS,MACd,IAAK,cAAe,MACpB,IAAK,YAAaiQ,EAAOqa,GAAYtqB,EAAEiQ,KAAO,OAC9C,IAAK,cAAeA,EAAO,IAAM,OACjC,QAAS,GAAIjc,EAAEtB,QAAQ,UAAY,EAAG,CACrC,GAAIy1C,GAAOn0C,EAAE8C,MAAM,IACnB,IAAIwL,GAAO6lC,EAAK,GAAGt0C,MAAM,GAAIwqB,EAAO8pB,EAAK,EAEzC,QAAO7lC,GACN,IAAK,SAAS,IAAK,QAAQ,IAAK,SAC/BiK,EAAE0D,GAAQqa,GAAYjM,EACtB,OACD,IAAK,OACJ9R,EAAE0D,GAAQqb,GAAajN,EACvB,OACD,IAAK,MAAM,IAAK,MAAM,IAAK,MAAM,IAAK,MAAM,IAAK,OAAO,IAAK,OAC5D9R,EAAE0D,GAAQ3L,SAAS+Z,EAAM,GACzB,OACD,IAAK,MAAM,IAAK,MAAM,IAAK,UAC1B9R,EAAE0D,GAAQpI,WAAWwW,EACrB,OACD,IAAK,YAAY,IAAK,OACrB9R,EAAE0D,GAAQmU,GAAU/F,EACpB,OACD,IAAK,MAAM,IAAK,QACf9R,EAAE0D,GAAQqa,GAAYjM,EACtB,OACD,QACC,GAAG/b,EAAKzO,OAAO,IAAM,IAAK,KAC1B,IAAG2L,EAAKmtB,WAAclX,WAAY,YAAaA,QAAQ2yB,KAAK,aAAcp0C,EAAGsO,EAAM6lC,SAE/E,IAAGn0C,EAAEH,MAAM,EAAE,KAAO,KAAM,MAC1B,IAAG2L,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAMvD,KAGtC,MAAOuY,GAGR,QAAS87B,IAAiB51C,GACzB,GAAIO,IAAKg2B,GAAY+D,GAAU,aAAc,MAC5C2U,MAASrU,GAAME,WACfya,WAAY3a,GAAMY,KAEnB,KAAIx7B,EAAI,MAAOO,GAAEQ,KAAK,GACtB,IAAI80C,GAAM,CACV1lB,IAAKnwB,GAAIoX,QAAQ,QAAS0+B,GAASl2B,KAAOi2B,CACzCt1C,GAAEA,EAAEG,QAAW45B,GAAU,WAAYG,GAASz6B,EAAG4f,GAAI,OACpDm2B,MAAS,yCACTF,IAAOA,EACPr4B,KAAQ4a,GAAUxY,MAGpB,IAAGrf,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,eAAiBH,GAAE,GAAGA,EAAE,GAAGwC,QAAQ,KAAK,KACtE,MAAOxC,GAAEQ,KAAK,IAEf,GAAIi1C,KAA0B,EAAM,EAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IACxE,IAAIC,IAAM,WACV,GAAIC,IAEJt3C,EAAQ,IAAeC,EAAQ,IAC/BwI,EAAO,KAAgBC,EAAM,IAC7B6uC,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAe7Q,IAAQ,IAC/B8Q,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAeC,IAAO,KAC9BC,IAAO,KAAgBC,IAAM,MAC7BC,IAAM,MAAiBC,IAAM,MAC7BC,IAAO,KAAgBC,IAAO,KAC9BC,IAAO,KAAgBC,IAAO,KAG9B54C,EAAM,MAAiBwK,EAAQ,IAC/B5B,EAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAeE,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAegB,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BE,GAAQ,IAAegN,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BzO,GAAQ,IAAeC,GAAQ,IAC/B4B,GAAQ,IAAeuB,GAAQ,IAC/B3M,GAAQ,IAAeoM,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BosC,GAAO,KAAgBC,GAAO,KAC9BC,GAAO,KAAgBC,IAAQ,IAC/Bz4C,IAAQ,IAAe04C,IAAQ,IAC/Bz4C,IAAQ,IAAeO,IAAO,KAE9BG,IAAM,MAEN,IAAIg4C,GAAkBjnB,IACtBhyB,EAAQ,IAAeC,EAAQ,IAC/BwI,EAAO,KAAgBC,EAAM,IAC7B6uC,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAe7Q,IAAQ,IAC/B8Q,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAeC,IAAO,KAC9BC,IAAO,KAAgBC,IAAM,MAC7BC,IAAM,MAAiBC,IAAM,MAC7BC,IAAO,KAAgBC,IAAO,KAC9BC,IAAO,KAAgBC,IAAO,KAC9B54C,EAAM,OAGN,SAASm5C,GAAWt0C,EAAKuJ,GACxB,GAAIrH,KACJ,IAAII,GAAKjC,EAAY,EACrB,QAAOkJ,EAAK8C,MACX,IAAK,SAAU/J,EAAI3B,EAAIrB,EAAcU,GAAO,OAC5C,IAAK,SAAUsC,EAAI3B,EAAIX,EAAM,OAC7B,IAAK,UACL,IAAK,QAASsC,EAAItC,CAAK,QAExByX,GAAUnV,EAAG,EAGb,IAAIiyC,GAAKjyC,EAAE0U,WAAW,EACtB,IAAIw9B,MAAUD,EAAK,IACnB,IAAIE,GAAM,MAAOC,EAAK,KACtB,QAAOH,GACN,IAAK,GAAM,MACX,IAAK,GAAM,MACX,IAAK,IAAME,EAAM,IAAMD,GAAO,IAAM,OACpC,IAAK,IAAMC,EAAM,IAAMD,GAAO,IAAM,OAGpC,IAAK,KAAM,MACX,IAAK,KAAM,MACX,IAAK,KAAME,EAAK,IAAM,OAEtB,IAAK,KAAM,MAEX,QAAS,KAAM,IAAIpzC,OAAM,4BAA8BizC,EAAGn0C,SAAS,MAGpE,GAAIu0C,GAAO,EAAGC,EAAO,GACrB,IAAGL,GAAM,EAAMI,EAAOryC,EAAE0U,WAAW,EACnC1U,GAAEyP,GAAK,CACP,IAAGwiC,GAAM,EAAMI,EAAOryC,EAAE0U,WAAW,EACnC,IAAG29B,EAAO,QAASA,EAAO,GAE1B,IAAGJ,GAAM,EAAMK,EAAOtyC,EAAE0U,WAAW,EACnC,IAAI69B,GAAOvyC,EAAE0U,WAAW,EAExB,IAAmB89B,GAAavrC,EAAKwrC,UAAY,IACjD,IAAGR,GAAM,EAAM,CACdjyC,EAAEyP,GAAG,EACOzP,GAAE0U,WAAW,EAIzB,IAAG1U,EAAEA,EAAEyP,KAAO,EAAG+iC,EAAapC,EAAiBpwC,EAAEA,EAAEyP,GACnDzP,GAAEyP,GAAG,CAELzP,GAAEyP,GAAG,EAEN,GAAG2iC,EAAIpyC,EAAEyP,GAAK,EAEf,IAAIijC,MAAaC,IAChB,IAAIC,GAAOhyC,KAAK0M,IAAItN,EAAEpF,OAASq3C,GAAM,EAAO,IAASK,EAAO,IAAMH,EAAM,IAAM,GAC9E,IAAI/e,GAAKgf,EAAK,GAAK,EACnB,OAAMpyC,EAAEyP,EAAImjC,GAAQ5yC,EAAEA,EAAEyP,IAAM,GAAM,CACnCkjC,IACAA,GAAMj7B,YAAehf,KAAa,YAAcA,EAASoD,MAAMC,OAAOy2C,EAAYxyC,EAAE1E,MAAM0E,EAAEyP,EAAGzP,EAAEyP,EAAE2jB,IAAOx0B,EAAIoB,EAAE1E,MAAM0E,EAAEyP,EAAGzP,EAAEyP,EAAI2jB,KAAMn2B,QAAQ,mBAAmB,GAClK+C,GAAEyP,GAAK2jB,CACPuf,GAAM5oC,KAAOhP,OAAOC,aAAagF,EAAE0U,WAAW,GAC9C,IAAGu9B,GAAM,IAASG,EAAIO,EAAMl4B,OAASza,EAAE0U,WAAW,EAClDi+B,GAAMh4C,IAAMqF,EAAE0U,WAAW,EACzB,IAAGu9B,GAAM,EAAMU,EAAMl4B,OAASza,EAAE0U,WAAW,EAC3Ci+B,GAAM9lC,IAAM7M,EAAE0U,WAAW,EACzB,IAAGi+B,EAAMj7B,KAAK9c,OAAQ83C,EAAOzyC,KAAK0yC,EAClC,IAAGV,GAAM,EAAMjyC,EAAEyP,GAAK2iC,EAAK,GAAK,EAChC,QAAOO,EAAM5oC,MACZ,IAAK,IACJ,KAAKooC,GAAOQ,EAAMh4C,KAAO,IAAMsM,EAAKmtB,IAAKlX,QAAQ1T,IAAI,YAAcmpC,EAAMj7B,KAAO,IAAMi7B,EAAM5oC,KAC5F,OACD,IAAK,KACL,IAAK,IACJ,GAAG9C,EAAKmtB,IAAKlX,QAAQ1T,IAAI,YAAcmpC,EAAMj7B,KAAO,IAAMi7B,EAAM5oC,KAChE,OACD,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,IACJ,MACD,QAAS,KAAM,IAAI/K,OAAM,uBAAyB2zC,EAAM5oC,QAI1D,GAAG/J,EAAEA,EAAEyP,KAAO,GAAMzP,EAAEyP,EAAI6iC,EAAK,CAC/B,IAAGtyC,EAAE0U,WAAW,KAAO,GAAM,KAAM,IAAI1V,OAAM,4BAA8BgB,EAAEyP,EAAI,IAAMzP,EAAEA,EAAEyP,GAC3FzP,GAAEyP,EAAI6iC,CAGN,IAAIz+B,GAAI,EAAGP,EAAI,CACf1T,GAAI,KACJ,KAAI0T,EAAI,EAAGA,GAAKo/B,EAAO93C,SAAU0Y,EAAG1T,EAAI,GAAG0T,GAAKo/B,EAAOp/B,GAAGoE,IAC1D,OAAM26B,KAAS,EAAG,CACjB,GAAGryC,EAAEA,EAAEyP,KAAO,GAAM,CAEnBzP,EAAEyP,GAAG8iC,CACL,YAECvyC,EAAEyP,CACJ7P,KAAMiU,KAASP,GAAI,CACnB,KAAIA,EAAI,EAAGA,GAAKo/B,EAAO93C,SAAU0Y,EAAG,CACnC,GAAI1G,GAAK5M,EAAE1E,MAAM0E,EAAEyP,EAAGzP,EAAEyP,EAAEijC,EAAOp/B,GAAG3Y,IAAMqF,GAAEyP,GAAGijC,EAAOp/B,GAAG3Y,GACzDwa,IAAUvI,EAAI,EACd,IAAItO,SAAW5F,KAAa,YAAcA,EAASoD,MAAMC,OAAOy2C,EAAY5lC,GAAMhO,EAAIgO,EACtF,QAAO8lC,EAAOp/B,GAAGvJ,MAChB,IAAK,IAEJ,GAAGzL,EAAEqoB,OAAO/rB,OAAQgF,EAAIiU,GAAGP,GAAKhV,EAAErB,QAAQ,OAAO,GACjD,OACD,IAAK,IACJ,GAAGqB,EAAE1D,SAAW,EAAGgF,EAAIiU,GAAGP,GAAK,GAAItL,OAAM1J,EAAEhD,MAAM,EAAE,IAAKgD,EAAEhD,MAAM,EAAE,GAAG,GAAIgD,EAAEhD,MAAM,EAAE,QAC9EsE,GAAIiU,GAAGP,GAAKhV,CACjB,OACD,IAAK,IAAKsB,EAAIiU,GAAGP,GAAKhE,WAAWhR,EAAEqoB,OAAS,OAC5C,IAAK,KAAK,IAAK,IAAK/mB,EAAIiU,GAAGP,GAAK8+B,EAAKxlC,EAAG8H,YAAY,EAAG,KAAO,WAAa9H,EAAG8H,WAAW,EAAG,IAAM,OAClG,IAAK,IAAK,OAAOpW,EAAEqoB,OAAOhd,eACzB,IAAK,KAAK,IAAK,IAAK/J,EAAIiU,GAAGP,GAAK,IAAM,OACtC,IAAK,KAAK,IAAK,IAAK1T,EAAIiU,GAAGP,GAAK,KAAO,OACvC,IAAK,IAAI,IAAK,IAAK,MACnB,QAAS,KAAM,IAAItU,OAAM,uBAAyBV,EAAI,MACpD,MACH,IAAK,IACJ,IAAI4zC,EAAM,KAAM,IAAIlzC,OAAM,gCAAkCizC,EAAGn0C,SAAS,IACxE8B,GAAIiU,GAAGP,GAAK,YAAc8+B,EAAKrmC,SAASzN,EAAEqoB,OAAQ,IAAK/Z,EAAG8H,WAAW,GACrE,OACD,IAAK,IACJpW,EAAIA,EAAErB,QAAQ,UAAU,IAAI0pB,MAE5B,IAAGroB,GAAKA,GAAK,IAAKsB,EAAIiU,GAAGP,IAAMhV,GAAK,CAAG,OACxC,IAAK,IAEJsB,EAAIiU,GAAGP,GAAK,GAAItL,MAAK4E,EAAG8H,YAAY,EAAG,KAAO,YAC9C,OACD,IAAK,IAAK9U,EAAIiU,GAAGP,GAAK,GAAItL,OAAM4E,EAAG8H,WAAW,GAAK,SAAY,MAAY9H,EAAG8H,WAAW,GAAK,OAC9F,IAAK,IAAK9U,EAAIiU,GAAGP,GAAK1G,EAAG8H,WAAW,EAAE,KAAK,IAAO9H,EAAG8H,WAAW,EAAG,KAAK,IAAK9T,KAAKI,IAAI,EAAE,GAAK,OAC7F,IAAK,IAAKpB,EAAIiU,GAAGP,IAAM1G,EAAG8H,YAAY,EAAG,IAAM,OAC/C,IAAK,IAAK,GAAGy9B,GAAOO,EAAOp/B,GAAG3Y,KAAO,EAAG,CAAEiF,EAAIiU,GAAGP,GAAK1G,EAAG8H,WAAW,EAAE,IAAM,QAE5E,IAAK,KAAK,IAAK,IAAK9H,EAAG6C,GAAKijC,EAAOp/B,GAAG3Y,GAAK,OAC3C,IAAK,IACJ,GAAG+3C,EAAOp/B,GAAGoE,OAAS,aAAc,MAErC,QAAS,KAAM,IAAI1Y,OAAM,6BAA+B0zC,EAAOp/B,GAAGvJ,SAIrE,GAAGkoC,GAAM,EAAM,GAAGjyC,EAAEyP,EAAIzP,EAAEpF,QAAUoF,EAAEA,EAAEyP,MAAQ,GAAM,KAAM,IAAIzQ,OAAM,2BAA6BgB,EAAEyP,EAAE,GAAK,OAASzP,EAAEpF,OAAS,IAAMoF,EAAEA,EAAEyP,EAAE,GAAG3R,SAAS,IACxJ,IAAGmJ,GAAQA,EAAK4rC,UAAWjzC,EAAMA,EAAItE,MAAM,EAAG2L,EAAK4rC,UACnD5rC,GAAKkpC,IAAMuC,CACX,OAAO9yC,GAGR,QAASkzC,GAAap1C,EAAKuJ,GAC1B,GAAIxM,GAAIwM,KACR,KAAIxM,EAAEoV,OAAQpV,EAAEoV,OAAS,UACzB,IAAI4tB,GAAKY,GAAa2T,EAAWt0C,EAAKjD,GAAIA,EAC1CgjC,GAAG,SAAWhjC,EAAE01C,IAAI3xC,IAAI,SAASm0C,GAAS,OACzCI,IAAKJ,EAAMh4C,IACXw1C,IAAKwC,WAECl4C,GAAE01C,GACT,OAAO1S,GAGR,QAASuV,GAAgBt1C,EAAKuJ,GAC7B,IACC,GAAIxM,GAAIwiC,GAAkB6V,EAAap1C,EAAKuJ,GAAOA,EACnDxM,GAAEyvC,SAAW,KACb,OAAOzvC,GACN,MAAMgD,GAAK,GAAGwJ,GAAQA,EAAKmtB,IAAK,KAAM32B,GACxC,OAAS2/B,cAAcC,WAGxB,GAAI4V,IAAU3sC,EAAK,EAAGgN,EAAK,IAAKxT,EAAK,EAAGqG,EAAK,EAAG+sC,IAAK,EAAGC,GAAI,EAC5D,SAASC,GAAa3V,EAAIx2B,GACzB,GAAIxM,GAAIwM,KACR,IAAIosC,GAAS76C,CACb,KAAIiC,EAAEg4C,UAAY,EAAGp4C,GAAQI,EAAEg4C,SAC/B,IAAGh4C,EAAEsP,MAAQ,SAAU,KAAM,IAAI/K,OAAM,gCACvC,IAAI27B,GAAKb,IACT,IAAIwZ,GAAMC,GAAc9V,GAAKxmB,OAAO,EAAGkB,IAAI,KAAMgmB,UAAU,MAC3D,IAAIqV,GAAUF,EAAI,GAAI94C,EAAO84C,EAAIh4C,MAAM,GAAIm4C,EAAOhW,EAAG,YACrD,IAAI/iC,GAAI,EAAG8P,EAAI,EAAGkpC,EAAO,EAAGnB,EAAO,CACnC,KAAI73C,EAAI,EAAGA,EAAI84C,EAAQ54C,SAAUF,EAAG,CACnC,KAAK+4C,EAAK/4C,QAAQy1C,SAASz4B,KAAM,CAAE87B,EAAQ94C,GAAK+4C,EAAK/4C,GAAGy1C,IAAIz4B,OAAQg8B,CAAM,UAC1E,GAAGF,EAAQ94C,IAAM,KAAM,WACrBg5C,CACF,UAAUF,GAAQ94C,KAAO,SAAU84C,EAAQ94C,GAAK84C,EAAQ94C,GAAGoD,SAAS,GACpE,UAAU01C,GAAQ94C,KAAO,SAAU,KAAM,IAAIsE,OAAM,2BAA6Bw0C,EAAQ94C,GAAK,WAAe84C,GAAQ94C,GAAM,IAC1H,IAAG84C,EAAQr5C,QAAQq5C,EAAQ94C,MAAQA,EAAG,IAAI8P,EAAE,EAAGA,EAAE,OAAOA,EACvD,GAAGgpC,EAAQr5C,QAAQq5C,EAAQ94C,GAAK,IAAM8P,KAAO,EAAG,CAAEgpC,EAAQ94C,IAAM,IAAM8P,CAAG,QAE3E,GAAI0wB,GAAQyB,GAAkBc,EAAG,QACjC,IAAIkW,KACJ,IAAIC,KACJ,IAAIC,KACJ,KAAIn5C,EAAI,EAAGA,GAAKwgC,EAAMz9B,EAAEqB,EAAIo8B,EAAM58B,EAAEQ,IAAKpE,EAAG,CAC3C,GAAIo5C,GAAQ,GAAIC,EAAS,GAAIz0C,EAAS,CACtC,IAAI08B,KACJ,KAAIxxB,EAAE,EAAGA,EAAIhQ,EAAKI,SAAU4P,EAAG,CAC9B,GAAGhQ,EAAKgQ,GAAG9P,IAAM,KAAMshC,EAAI/7B,KAAKzF,EAAKgQ,GAAG9P,IAEzC,GAAGshC,EAAIphC,QAAU,GAAK44C,EAAQ94C,IAAM,KAAM,CAAEi5C,EAASj5C,GAAK,GAAK,UAC/D,IAAI8P,EAAI,EAAGA,EAAIwxB,EAAIphC,SAAU4P,EAAG,CAC/B,aAAcwxB,GAAIxxB,IAEjB,IAAK,SAAUupC,EAAS,GAAK,OAC7B,IAAK,SAAUA,EAAS,GAAK,OAC7B,IAAK,UAAWA,EAAS,GAAK,OAC9B,IAAK,SAAUA,EAAS/X,EAAIxxB,YAAcxC,MAAO,IAAM,GAAK,OAC5D,QAAS+rC,EAAS,KAGnBz0C,EAASsB,KAAK2M,IAAIjO,SAAgB5G,KAAa,mBAAsBsjC,GAAIxxB,IAAM,SAAW9R,EAASoD,MAAMysB,OAAO9vB,EAAcujC,EAAIxxB,IAAKzP,OAAOihC,EAAIxxB,KAAK5P,OACvJk5C,GAAQA,GAASA,GAASC,EAAS,IAAMA,EAG1C,GAAGz0C,EAAS,IAAKA,EAAS,GAC1By0C,KAAWN,EAAK/4C,QAAQy1C,SAASpmC,IAEjC,IAAGgqC,GAAU,IAAK,CACjB,GAAGN,EAAK/4C,GAAGy1C,IAAIx1C,IAAM2E,EAAQA,EAASm0C,EAAK/4C,GAAGy1C,IAAIx1C,IAEnD,GAAGm5C,GAAS,KAAOC,GAAU,IAAK,CACjCD,EAAQ,GACRD,GAAYn5C,GAAK+4C,EAAK/4C,GAAGy1C,IAAItjC,GAC7BvN,GAASm0C,EAAK/4C,GAAGy1C,IAAIx1C,IAEtBi5C,EAAUl5C,GAAKo5C,GAAS,KAAOC,GAAU,IAAMz0C,EAAU2zC,EAAMa,IAAU,CACzEvB,IAAQqB,EAAUl5C,EAClBi5C,GAASj5C,GAAKo5C,EAGf,GAAIn0B,GAAIgb,EAAGN,KAAK,GAChB1a,GAAEpL,YAAY,EAAG,UACjBoL,GAAEpL,YAAY,EAAG/Z,EAAKI,OACtB+kB,GAAEpL,YAAY,EAAG,IAAM,GAAKm/B,EAC5B/zB,GAAEpL,YAAY,EAAGg+B,EACjB,KAAI73C,EAAE,EAAGA,EAAI,IAAKA,EAAGilB,EAAEpL,YAAY,EAAG,EACtC,IAAIra,IAAM63C,EAAgBv5C,IAAqB,CAC/CmnB,GAAEpL,YAAY,EAAG,EAAcra,GAAI,EACnC,IAAGk2C,EAAiBl2C,KAAQO,EAAEg4C,SAAU,CACvCv1B,QAAQC,MAAM,4BAA8B3kB,EAAmB,eAC/DA,GAAmB,KAGpB,IAAIkC,EAAI,EAAG8P,EAAI,EAAG9P,EAAI84C,EAAQ54C,SAAUF,EAAG,CAC1C,GAAG84C,EAAQ94C,IAAM,KAAM,QACvB,IAAIs5C,GAAKrZ,EAAGN,KAAK,GAEjB,IAAI4Z,IAAMT,EAAQ94C,GAAGY,OAAO,IAAM,0BAAgDA,MAAM,EAAG,GAC3F04C,GAAGz/B,YAAY,EAAG0/B,EAAI,OACtBD,GAAGz/B,YAAY,EAAGo/B,EAASj5C,IAAM,IAAM,IAAMi5C,EAASj5C,GAAI,OAC1Ds5C,GAAGz/B,YAAY,EAAG/J,EAClBwpC,GAAGz/B,YAAY,EAAGq/B,EAAUl5C,IAAMu4C,EAAMU,EAASj5C,KAAO,EACxDs5C,GAAGz/B,YAAY,EAAGs/B,EAAYn5C,IAAM,EACpCs5C,GAAGz/B,YAAY,EAAG,EAClBy/B,GAAGz/B,YAAY,EAAG,EAClBy/B,GAAGz/B,YAAY,EAAG,EAClBy/B,GAAGz/B,YAAY,EAAG,EAClBy/B,GAAGz/B,YAAY,EAAG,EAClB/J,IAAMopC,EAAUl5C,IAAMu4C,EAAMU,EAASj5C,KAAO,EAG7C,GAAIw5C,GAAKvZ,EAAGN,KAAK,IACjB6Z,GAAG3/B,YAAY,EAAG,GAClB,KAAI7Z,EAAE,EAAGA,EAAI,KAAKA,EAAGw5C,EAAG3/B,YAAY,EAAG,EACvC,KAAI7Z,EAAE,EAAGA,EAAIF,EAAKI,SAAUF,EAAG,CAC9B,GAAIy5C,GAAOxZ,EAAGN,KAAKkY,EACnB4B,GAAK5/B,YAAY,EAAG,EACpB,KAAI/J,EAAE,EAAGA,EAAEgpC,EAAQ54C,SAAU4P,EAAG,CAC/B,GAAGgpC,EAAQhpC,IAAM,KAAM,QACvB,QAAOmpC,EAASnpC,IACf,IAAK,IAAK2pC,EAAK5/B,YAAY,EAAG/Z,EAAKE,GAAG8P,IAAM,KAAO,GAAOhQ,EAAKE,GAAG8P,GAAK,GAAO,GAAO,OACrF,IAAK,IAAK2pC,EAAK5/B,YAAY,EAAG/Z,EAAKE,GAAG8P,IAAI,EAAG,IAAM,OACnD,IAAK,IACJ,GAAI4pC,GAAK,GACT,UAAU55C,GAAKE,GAAG8P,IAAM,SAAU4pC,EAAK55C,EAAKE,GAAG8P,GAAGtB,QAAQ2qC,EAAYrpC,IAAI,EAC1E,KAAIkpC,EAAK,EAAGA,EAAOE,EAAUppC,GAAG4pC,EAAGx5C,SAAU84C,EAAMS,EAAK5/B,YAAY,EAAG,GACvE4/B,GAAK5/B,YAAY,EAAG6/B,EAAI,OACxB,OACD,IAAK,IACJ,IAAI55C,EAAKE,GAAG8P,GAAI2pC,EAAK5/B,YAAY,EAAG,WAAY,YAC3C,CACJ4/B,EAAK5/B,YAAY,GAAI,OAAO/Z,EAAKE,GAAG8P,GAAGrC,eAAe7M,OAAO,GAAI,OACjE64C,GAAK5/B,YAAY,GAAI,MAAM/Z,EAAKE,GAAG8P,GAAGpC,WAAW,IAAI9M,OAAO,GAAI,OAChE64C,GAAK5/B,YAAY,GAAI,KAAK/Z,EAAKE,GAAG8P,GAAGtC,WAAW5M,OAAO,GAAI,QAC1D,MACH,IAAK,IACJ,GAAI+4C,GAAKF,EAAK1kC,CACd,IAAI6kC,GAAKv5C,OAAOP,EAAKE,GAAG8P,IAAM,KAAOhQ,EAAKE,GAAG8P,GAAK,IAAIlP,MAAM,EAAGs4C,EAAUppC,GACzE2pC,GAAK5/B,YAAY,EAAG+/B,EAAI,QACxBD,IAAMT,EAAUppC,GAAK2pC,EAAK1kC,CAC1B,KAAIikC,EAAK,EAAGA,EAAOW,IAAMX,EAAMS,EAAK5/B,YAAY,EAAG,GAAO,UAK9D/b,EAAmB66C,CACnB1Y,GAAGN,KAAK,GAAG9lB,YAAY,EAAG,GAC1B,OAAOomB,GAAG1U,MAEV,OACCsuB,YAAavB,EACbwB,SAAU1B,EACV2B,WAAYrB,KAId,IAAIsB,IAAO,WAEV,GAAIC,IACHC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAC3CC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAaC,GAAG,IACnCC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAaC,GAAG,IACnCC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IACnCC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAaC,GAAG,IACnCC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAC3CC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAaC,GAAG,IACnCC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAaC,GAAG,IACnCC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IACnCC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IAAaC,GAAG,IACnCC,GAAG,IAAKC,GAAG,IAAK5wC,EAAE,IAAMqqB,EAAE,IAAM9Q,EAAE,IAAM9V,EAAE,IAC1CotC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IACnBjwC,EAAE,IAAM/I,EAAE,IAAM+U,EAAE,IAAMkkC,KAAK,IAC/Bl/C,EAAE,IAAQC,EAAE,IAAMC,EAAE,IACpBwI,EAAE,IAAQ2B,EAAE,IAAMC,EAAE,IACpBC,EAAE,IAAQwD,EAAE,IAAMkT,EAAE,IAAMyF,EAAE,IAAM7kB,EAAE,IAAM+U,EAAE,IAAMnR,EAAE,IAAMmJ,EAAE,IAC1DuwC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,KAAK,IAC3DC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKzF,IAAI,IAAK0F,IAAI,IAE3D,IAAIC,GAAkB,GAAI1nC,QAAO,MAAakZ,GAAKsqB,GAAc15C,KAAK,KAAKgC,QAAQ,SAAU,SAASA,QAAQ,YAAY,QAAU,QAAS,KAC7I,IAAI67C,GAAe,SAASC,EAAGztC,GAAK,GAAI7Q,GAAIk6C,EAAarpC,EAAK,cAAc7Q,IAAK,SAAWiB,EAASjB,GAAKA,EAC1G,IAAIu+C,GAAmB,SAAS3tC,EAAIC,EAAIC,GAAM,GAAI0tC,GAAU3tC,EAAGzQ,WAAW,GAAK,IAAO,EAAM0Q,EAAG1Q,WAAW,GAAK,EAAO,OAAOo+C,IAAS,GAAK5tC,EAAK3P,EAASu9C,GACzJtE,GAAa,KAAO,GAEpB,SAASuE,GAAYl5C,EAAGiH,GACvB,OAAOA,EAAK8C,MACX,IAAK,SAAU,MAAOovC,GAAgBn8C,EAAcgD,GAAIiH,GACxD,IAAK,SAAU,MAAOkyC,GAAgBn5C,EAAGiH,GACzC,IAAK,SAAU,MAAOkyC,GAAgBj8C,GAAWC,OAAOkC,SAASW,GAAKA,EAAElC,SAAS,UAAYc,EAAIoB,GAAIiH,GACrG,IAAK,QAAS,MAAOkyC,GAAgBptB,GAAO/rB,GAAIiH,IAEjD,KAAM,IAAIjI,OAAM,qBAAuBiI,EAAK8C,MAE7C,QAASovC,GAAgB1sC,EAAKxF,GAC7B,GAAImyC,GAAU3sC,EAAIlO,MAAM,WAAYsV,GAAK,EAAGP,GAAK,EAAGnG,EAAK,EAAGksC,EAAK,EAAGrtB,IACpE,IAAIstB,KACJ,IAAIC,GAAmB,IACvB,IAAIC,MAAUC,KAAcC,KAAcC,IAC1C,IAAIC,GAAO,EAAGpvC,CACd,IAAIqvC,IAAOC,UAAYC,WAAaC,UACpC,KAAI/yC,EAAKwrC,UAAY,EAAGp4C,GAAQ4M,EAAKwrC,SACrC,MAAOtlC,IAAOisC,EAAQx+C,SAAUuS,EAAI,CACnCysC,EAAO,CACP,IAAIK,GAAKb,EAAQjsC,GAAIwZ,OAAO1pB,QAAQ,kCAAmC+7C,GAAkB/7C,QAAQ47C,EAAiBC,EAClH,IAAIoB,GAAOD,EAAKh9C,QAAQ,MAAO,MAAUsB,MAAM,KAAKC,IAAI,SAAS/C,GAAK,MAAOA,GAAEwB,QAAQ,UAAW,MAClG,IAAI28B,GAAGsgB,EAAO,GAAIjwC,CAClB,IAAGgwC,EAAKr/C,OAAS,EAAG,OAAOg/B,GAC3B,IAAK,KAAM,MACX,IAAK,IAAK,MACV,IAAK,IAAK,MACV,IAAK,IACL,IAAIyf,EAAG,EAAGA,EAAGa,EAAOt/C,SAAUy+C,EAAI,OAAOa,EAAOb,GAAIv8C,OAAO,IAC1D,IAAK,IAAK,CACT,GAAIq9C,GAAQpuC,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,GAE1C,IAAG6+C,GAAS,GAAKA,GAAS,EAAGN,EAAGC,SAASC,QAAQhyC,SAAW,KAC3D,OACD,MACF,IAAK,IAAK,MACV,IAAK,IACJ,OAAOmyC,EAAO,GAAGp9C,OAAO,IACvB,IAAK,IAAKw8C,EAAQr5C,KAAKg6C,EAAK3+C,MAAM,GAAG2B,QAAQ,MAAO,KAAO,QAC1D,MACH,IAAK,KAAM,CACV,GAAIm9C,IAAMC,MAAO,EACjB,KAAIhB,EAAG,EAAGA,EAAGa,EAAOt/C,SAAUy+C,EAAI,OAAOa,EAAOb,GAAIv8C,OAAO,IAC1D,IAAK,IAAKs9C,EAAGE,KAAOJ,EAAOb,GAAI/9C,MAAM,EAAI,OACzC,IAAK,IAAK8+C,EAAGG,KAAOtzC,GAAQA,EAAKi2B,OAAS,UAAY,IAAMsd,GAASN,EAAOb,GAAI/9C,MAAM,GAAK,QAE5Fu+C,EAAGC,SAASE,MAAM/5C,KAAKm6C,GACtB,MAGF,IAAK,IACL,GAAIK,GAAW,MAAOC,EAAW,MAAOC,EAAW,MAAOC,EAAW,MAAOld,GAAM,EAAGC,GAAM,EAAGkd,EAAU,GAAIC,EAAS,GACrH,KAAIzB,EAAG,EAAGA,EAAGa,EAAOt/C,SAAUy+C,EAAI,OAAOa,EAAOb,GAAIv8C,OAAO,IAC1D,IAAK,IAAK,MACV,IAAK,IAAKwW,EAAIvH,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,IAAI,CAAGo/C,GAAW,IAAM,OACpE,IAAK,IACJ7mC,EAAI9H,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,IAAI,CAAG,KAAIo/C,EAAUpnC,EAAI,CAC3D,KAAI9I,EAAIwhB,EAAIpxB,OAAQ4P,GAAKqJ,IAAKrJ,EAAGwhB,EAAIxhB,KACrC,OACD,IAAK,IACJP,EAAMiwC,EAAOb,GAAI/9C,MAAM,EACvB,IAAG2O,EAAInN,OAAO,KAAO,IAAK,CAAEmN,EAAMA,EAAI3O,MAAM,EAAE2O,EAAIrP,OAAS,EAAIkgD,GAAS,QACnE,IAAG7wC,IAAQ,QAAUA,IAAQ,QAAS,CAAEA,EAAMA,IAAQ,MAAQ6wC,GAAS,QACvE,KAAIj+C,MAAMoxB,GAAShkB,IAAO,CAC9BA,EAAMgkB,GAAShkB,EAAM6wC,GAAS,GAC9B,IAAGvB,IAAqB,MAAQrrC,GAAYqrC,IAAqBtyC,EAAKk3B,UAAW,CAAEl0B,EAAMqhB,GAAQuuB,EAAGC,SAASC,QAAQhyC,SAAWkC,EAAM,KAAOA,EAAM6wC,GAAS,SACtJ,KAAIj+C,MAAM4xB,GAAUxkB,GAAK/B,WAAY,CAC3C+B,EAAM4hB,GAAU5hB,EAAM6wC,GAAS,GAC/B,KAAI7zC,EAAKk3B,UAAW,CAAE2c,EAAS,GAAK7wC,GAAMihB,GAAQjhB,EAAK4vC,EAAGC,SAASC,QAAQhyC,WAE5E,SAAUrP,KAAa,mBAAsBuR,IAAO,WAAchD,OAAU8C,MAAQ,WAAc9C,OAAUwrC,SAAUxoC,EAAMvR,EAASoD,MAAMC,OAAOkL,EAAKwrC,SAAUxoC,EACjKwwC,GAAW,IACX,OACD,IAAK,IACJG,EAAW,IACXC,GAAUL,GAASN,EAAOb,GAAI/9C,MAAM,IAAKqQ,EAAEkI,EAAE/U,EAAEwU,GAC/C,OACD,IAAK,IACJqnC,EAAW,IACX,OACD,IAAK,IAAK,MACV,IAAK,IAAKjd,EAAK3xB,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,IAAI,CAAG,OACpD,IAAK,IAAKqiC,EAAK5xB,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,IAAI,CAAG,OAGpD,QAAS,GAAG2L,GAAQA,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,mBAAqBi7C,IAEpE,GAAGQ,EAAU,CACZ,IAAIzuB,EAAInY,GAAGP,GAAI0Y,EAAInY,GAAGP,IAAO/S,EAAGu6C,EAAQx6C,EAAG2J,OACtC,CAAE+hB,EAAInY,GAAGP,GAAG/S,EAAIu6C,CAAQ9uB,GAAInY,GAAGP,GAAGhT,EAAI2J,EAC3C,GAAGsvC,EAAkBvtB,EAAInY,GAAGP,GAAG8d,EAAImoB,CACnC,IAAGtyC,EAAK8zC,WAAa,OAASxB,EAAkBvtB,EAAInY,GAAGP,GAAGrK,EAAIY,GAAWmiB,EAAInY,GAAGP,GAAG8d,EAAGpF,EAAInY,GAAGP,GAAGhT,GAAKyH,SAAU8xC,EAAGC,SAASC,QAAQhyC,UACnIwxC,GAAmB,KAEpB,GAAGoB,EAAU,CACZ,GAAGC,EAAU,KAAM,IAAI57C,OAAM,8CAC7B,IAAIg8C,GAAUtd,GAAM,GAAK1R,EAAI0R,GAAIC,EACjC,KAAIqd,IAAYA,EAAQ,GAAI,KAAM,IAAIh8C,OAAM,uCAC5C67C,GAAUI,GAAkBD,EAAQ,IAAKrvC,EAAGkI,EAAI6pB,EAAI5+B,EAAGwU,EAAIqqB,IAE5D,GAAGkd,EAAS,CACX,IAAI7uB,EAAInY,GAAGP,GAAI0Y,EAAInY,GAAGP,IAAO/S,EAAG,IAAKiP,EAAGqrC,OACnC7uB,GAAInY,GAAGP,GAAG9D,EAAIqrC,EAEpB,MACA,IAAK,IACL,GAAIK,GAAS,CACb,KAAI7B,EAAG,EAAGA,EAAGa,EAAOt/C,SAAUy+C,EAAI,OAAOa,EAAOb,GAAIv8C,OAAO,IAC1D,IAAK,IAAKwW,EAAIvH,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,IAAI,IAAK4/C,CAAQ,OAC7D,IAAK,IACJrnC,EAAI9H,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,IAAI,CACtC,KAAIkP,EAAIwhB,EAAIpxB,OAAQ4P,GAAKqJ,IAAKrJ,EAAGwhB,EAAIxhB,KACrC,OACD,IAAK,IAAKovC,EAAO7tC,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,IAAM,EAAI,OACzD,IAAK,IAAK,MACV,IAAK,IAAK,MACV,IAAK,IACJi+C,EAAmBD,EAAQvtC,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,IACzD,OACD,IAAK,IAAK,MACV,IAAK,IAAK,MACV,IAAK,IAAK,MACV,IAAK,IACJq+C,EAAKO,EAAOb,GAAI/9C,MAAM,GAAGiD,MAAM,IAC/B,KAAIiM,EAAIuB,SAAS4tC,EAAG,GAAI,IAAKnvC,GAAKuB,SAAS4tC,EAAG,GAAI,MAAOnvC,EAAG,CAC3DovC,EAAO7tC,SAAS4tC,EAAG,GAAI,GACvBD,GAAQlvC,EAAE,GAAKovC,IAAS,GAAKuB,OAAO,OAAQpI,IAAI6G,GAC/C,MACH,IAAK,IACJtmC,EAAIvH,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,IAAI,CACtC,KAAIo+C,EAAQpmC,GAAIomC,EAAQpmC,KACxB,OACD,IAAK,IACJO,EAAI9H,SAASmuC,EAAOb,GAAI/9C,MAAM,GAAI,IAAI,CACtC,KAAIm+C,EAAQ5lC,GAAI4lC,EAAQ5lC,KACxB,IAAG+lC,EAAO,EAAG,CAAEH,EAAQ5lC,GAAGunC,IAAMxB,CAAMH,GAAQ5lC,GAAGwnC,IAAMC,GAAM1B,OACxD,IAAGA,IAAS,EAAGH,EAAQ5lC,GAAGsnC,OAAS,IACxC,OAGD,QAAS,GAAGl0C,GAAQA,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,mBAAqBi7C,IAEpE,GAAGiB,EAAS,EAAG3B,EAAmB,IAAM,OACxC,QAAS,GAAGtyC,GAAQA,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,mBAAqBi7C,KAGpE,GAAGR,EAAQ7+C,OAAS,EAAG4+C,EAAI,SAAWC,CACtC,IAAGC,EAAQ9+C,OAAS,EAAG4+C,EAAI,SAAWE,CACtCA,GAAQpoC,QAAQ,SAAS0qB,GAAOuf,GAAYvf,IAC5C,IAAG/0B,GAAQA,EAAK4rC,UAAW7mB,EAAMA,EAAI1wB,MAAM,EAAG2L,EAAK4rC;AACnD,OAAQ7mB,EAAKwtB,EAAKK,GAGnB,QAAS2B,GAAiBx7C,EAAGiH,GAC5B,GAAIw0C,GAASvC,EAAYl5C,EAAGiH,EAC5B,IAAIqsC,GAAMmI,EAAO,GAAIhe,EAAKge,EAAO,GAAI5B,EAAK4B,EAAO,EACjD,IAAIx/B,GAAQ6R,GAAI7mB,EAAOgV,GAAMlU,YAAc8xC,OAAQC,cAAgBC,aAAehyC,QAClF,IAAItN,GAAI4jC,GAAaiV,EAAKr3B,EAC1BoO,IAAKoT,GAAInsB,QAAQ,SAASwI,GAAKrf,EAAEqf,GAAK2jB,EAAG3jB,IACzC,IAAI4hC,GAAQze,GAAkBxiC,EAAGwM,EACjCojB,IAAKwvB,GAAIvoC,QAAQ,SAASwI,GAAK4hC,EAAM5hC,GAAK+/B,EAAG//B,IAC7C4hC,GAAMxR,SAAW,MACjB,OAAOwR,GAGR,QAASC,GAAmB9gB,EAAM4C,EAAI5pB,EAAGP,GACxC,GAAI7Y,GAAI,OAASoZ,EAAE,GAAK,MAAQP,EAAE,GAAK,IACvC,QAAOunB,EAAKt6B,GACX,IAAK,IACJ9F,GAAMogC,EAAKv6B,GAAG,CACd,IAAGu6B,EAAKrrB,IAAMqrB,EAAK+gB,EAAGnhD,GAAK,KAAOohD,GAAShhB,EAAKrrB,GAAI7D,EAAEkI,EAAG/U,EAAEwU,GAAK,OACjE,IAAK,IAAK7Y,GAAKogC,EAAKv6B,EAAI,OAAS,OAAS,OAC1C,IAAK,IAAK7F,GAAKogC,EAAK5xB,GAAK4xB,EAAKv6B,CAAG,OACjC,IAAK,IAAK7F,GAAK,KAAOogC,EAAK5xB,GAAK4xB,EAAKv6B,GAAK,GAAK,OAC/C,IAAK,IAAK7F,GAAK,IAAMogC,EAAKv6B,EAAErD,QAAQ,KAAK,IAAIA,QAAQ,KAAM,MAAQ,GAAK,QAEzE,MAAOxC,GAGR,QAASqhD,GAAmBl8C,EAAK6zC,GAChCA,EAAKniC,QAAQ,SAAS0qB,EAAKthC,GAC1B,GAAIqhD,GAAM,OAASrhD,EAAE,GAAK,KAAOA,EAAE,GAAK,GACxC,IAAGshC,EAAImf,OAAQY,GAAO,QACjB,CACJ,SAAU/f,GAAIggB,OAAS,WAAahgB,EAAIigB,IAAKjgB,EAAIigB,IAAMC,GAASlgB,EAAIggB,MACpE,UAAUhgB,GAAIigB,KAAO,WAAajgB,EAAI+W,IAAK/W,EAAI+W,IAAMoJ,GAAQngB,EAAIigB,IACjE,UAAUjgB,GAAI+W,KAAO,SAAUgJ,GAAOn7C,KAAKC,MAAMm7B,EAAI+W,KAEtD,GAAGgJ,EAAIj/C,OAAOi/C,EAAInhD,OAAS,IAAM,IAAKgF,EAAIK,KAAK87C,KAIjD,QAASK,GAAmBx8C,EAAKy8C,GAChCA,EAAK/qC,QAAQ,SAASsV,EAAKlsB,GAC1B,GAAIqhD,GAAM,IACV,IAAGn1B,EAAIu0B,OAAQY,GAAO,UACjB,IAAGn1B,EAAIw0B,IAAKW,GAAO,IAAM,GAAKn1B,EAAIw0B,IAAM,QACxC,IAAGx0B,EAAIy0B,IAAKU,GAAO,IAAM,GAAKO,GAAM11B,EAAIy0B,KAAO,GACpD,IAAGU,EAAInhD,OAAS,EAAGgF,EAAIK,KAAK87C,EAAM,KAAOrhD,EAAE,MAI7C,QAAS6hD,GAAc9e,EAAIx2B,EAAM4yC,GAEhC,GAAI2C,IAAY,mBAAoB/hD,IACpC,IAAIkR,GAAIgxB,GAAkBc,EAAG,SAAU5C,CACvC,IAAI2C,GAAQt/B,MAAMW,QAAQ4+B,EAC1B,IAAIgf,GAAK,MACT,IAAItC,MAAWN,OAAQC,cAAcC,aAAahyC,QAElDy0C,GAASv8C,KAAK,aACdu8C,GAASv8C,KAAK,kBACd,IAAGw9B,EAAG,SAAUqe,EAAmBU,EAAU/e,EAAG,SAChD,IAAGA,EAAG,SAAU2e,EAAmBI,EAAU/e,EAAG,SAEhD+e,GAASv8C,KAAK,OAAS0L,EAAElO,EAAEkO,EAAIA,EAAErN,EAAEqN,EAAI,GAAK,MAAQA,EAAElO,EAAEqB,EAAI6M,EAAErN,EAAEQ,EAAI,GAAK,MAAQ6M,EAAErN,EAAEQ,EAAE6M,EAAErN,EAAEqN,EAAEA,EAAElO,EAAEqB,EAAE6M,EAAElO,EAAEkO,GAAG1Q,KAAK,KAC/GuhD,GAASv8C,KAAK,WAAak6C,EAAQ,MAAQ,IAAM,kBACjD,KAAI,GAAItmC,GAAIlI,EAAErN,EAAEqN,EAAGkI,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAG,CACnC,GAAIG,KACJ,KAAI,GAAIV,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CACnC,GAAIopC,GAAQthB,IAAazvB,EAAEkI,EAAE/U,EAAEwU,GAC/BunB,GAAO2C,GAASC,EAAG5pB,QAAQP,GAAImqB,EAAGif,EAClC,KAAI7hB,GAASA,EAAKv6B,GAAK,QAAUu6B,EAAKrrB,GAAKqrB,EAAK+gB,GAAK,QACrD5nC,GAAE/T,KAAK07C,EAAmB9gB,EAAM4C,EAAI5pB,EAAGP,EAAGrM,IAE3CxM,EAAEwF,KAAK+T,EAAE/Y,KAAKwhD,IAEf,MAAOD,GAASvhD,KAAKwhD,GAAMA,EAAKhiD,EAAEQ,KAAKwhD,GAAMA,EAAK,IAAMA,EAGzD,OACClI,YAAaiH,EACb/G,WAAY8H,KAId,IAAII,IAAM,WACT,QAASC,GAAW58C,EAAGiH,GACtB,OAAOA,EAAK8C,MACX,IAAK,SAAU,MAAO8yC,GAAe7/C,EAAcgD,GAAIiH,GACvD,IAAK,SAAU,MAAO41C,GAAe78C,EAAGiH,GACxC,IAAK,SAAU,MAAO41C,GAAe3/C,GAAWC,OAAOkC,SAASW,GAAKA,EAAElC,SAAS,UAAYc,EAAIoB,GAAIiH,GACpG,IAAK,QAAS,MAAO41C,GAAe9wB,GAAO/rB,GAAIiH,IAEhD,KAAM,IAAIjI,OAAM,qBAAuBiI,EAAK8C,MAE7C,QAAS8yC,GAAepwC,EAAKxF,GAC5B,GAAImyC,GAAU3sC,EAAIlO,MAAM,MAAOsV,GAAK,EAAGP,GAAK,EAAGnG,EAAK,EAAG6e,IACvD,MAAO7e,IAAOisC,EAAQx+C,SAAUuS,EAAI,CACnC,GAAIisC,EAAQjsC,GAAIwZ,SAAW,MAAO,CAAEqF,IAAMnY,KAASP,GAAI,CAAG,UAC1D,GAAIO,EAAI,EAAG,QACX,IAAIu0B,GAAWgR,EAAQjsC,GAAIwZ,OAAOpoB,MAAM,IACxC,IAAIwL,GAAOq+B,EAAS,GAAIpV,EAAQoV,EAAS,KACvCj7B,CACF,IAAI3S,GAAO4+C,EAAQjsC,IAAO,EAC1B,QAAQ3S,EAAKyQ,MAAM,aAAarQ,OAAS,GAAMuS,EAAKisC,EAAQx+C,OAAS,EAAGJ,GAAQ,KAAO4+C,IAAUjsC,EACjG3S,GAAOA,EAAKmsB,MACZ,SAAS5c,GACR,KAAM,EACL,GAAIvP,IAAS,MAAO,CAAEwxB,IAAMnY,KAASP,GAAI,CAAG,cACvC,IAAI9Y,IAAS,MAAO,KAAM,IAAIwE,OAAM,oCAAsCxE,EAC/E,OACD,IAAK,GACJ,GAAGA,IAAS,OAAQwxB,EAAInY,GAAGP,GAAK,SAC3B,IAAG9Y,IAAS,QAASwxB,EAAInY,GAAGP,GAAK,UACjC,KAAIzW,MAAMoxB,GAAS+E,IAAShH,EAAInY,GAAGP,GAAK2a,GAAS+E,OACjD,KAAIn2B,MAAM4xB,GAAUuE,GAAO9qB,WAAY8jB,EAAInY,GAAGP,GAAKuY,GAAUmH,OAC7DhH,GAAInY,GAAGP,GAAK0f,IACf1f,CAAG,OACN,IAAK,GACJ9Y,EAAOA,EAAKc,MAAM,EAAEd,EAAKI,OAAO,EAChCJ,GAAOA,EAAKyC,QAAQ,MAAO,IAC3B,IAAGb,GAAU5B,GAAQA,EAAKyQ,MAAM,WAAYzQ,EAAOA,EAAKc,MAAM,GAAI,EAClE0wB,GAAInY,GAAGP,KAAO9Y,IAAS,GAAKA,EAAO,IACnC,QAEF,GAAIA,IAAS,MAAO,MAErB,GAAGyM,GAAQA,EAAK4rC,UAAW7mB,EAAMA,EAAI1wB,MAAM,EAAG2L,EAAK4rC,UACnD,OAAO7mB,GAGR,QAAS8wB,GAAarwC,EAAKxF,GAAQ,MAAOo3B,IAAaue,EAAWnwC,EAAKxF,GAAOA,GAC9E,QAAS81C,GAAgBtwC,EAAKxF,GAC7B,GAAIxM,GAAIwiC,GAAkB6f,EAAarwC,EAAKxF,GAAOA,EACnDxM,GAAEyvC,SAAW,KACb,OAAOzvC,GAGR,QAASuiD,GAAW18C,EAAGhC,GAAK,MAAO,KAAOvD,OAAOuF,GAAK,OAAShC,EAC/D,QAAS2+C,GAAe3+C,GAAK,MAAO,WAAcA,EAAErB,QAAQ,KAAK,MAAQ,IACzE,QAASigD,GAAazf,GACrB,GAAI0f,GAAU/gD,CACd,IAAIuP,GAAIgxB,GAAkBc,EAAG,QAC7B,IAAID,GAAQt/B,MAAMW,QAAQ4+B,EAC1B,IAAIhjC,IACH,gCACA,iBAAmBkR,EAAElO,EAAEkO,EAAIA,EAAErN,EAAEqN,EAAI,GAAK,aACxC,gBAAkBA,EAAElO,EAAEqB,EAAI6M,EAAErN,EAAEQ,EAAI,GAAK,aACvC,wBAED,KAAI,GAAI+U,GAAIlI,EAAErN,EAAEqN,EAAGkI,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAG,CACnC,GAAIG,GAAI,iBACR,KAAI,GAAIV,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CACnC,GAAIunB,GAAO2C,EAASC,EAAG5pB,IAAM4pB,EAAG5pB,GAAGP,GAAMmqB,EAAGrC,IAAazvB,EAAEkI,EAAE/U,EAAEwU,IAC/D,IAAGunB,GAAQ,KAAM,CAAE7mB,GAAI,eAAqB,UAC5C,OAAO6mB,EAAKt6B,GACX,IAAK,IACJ,GAAG48C,EAAS,CACX,GAAGtiB,EAAK5xB,GAAK,KAAM+K,GAAK,KAAO6mB,EAAK5xB,EAAI,YACnC,IAAG4xB,EAAKv6B,GAAK,KAAM0T,GAAKgpC,EAAWniB,EAAKv6B,EAAG,SAC3C,IAAGu6B,EAAKrrB,GAAK,OAASqrB,EAAK+gB,EAAG5nC,GAAKipC,EAAe,IAAMpiB,EAAKrrB,OAC7DwE,IAAI,gBACH,CACN,GAAG6mB,EAAKv6B,GAAK,KAAM0T,GAAI,gBAClBA,IAAKgpC,EAAWniB,EAAKv6B,EAAG,KAE9B,MACD,IAAK,IACJ0T,GAAK6mB,EAAKv6B,EAAI08C,EAAW,EAAG,QAAUA,EAAW,EAAG,QACpD,OACD,IAAK,IACJhpC,GAAKipC,GAAiBE,GAAWtgD,OAAOg+B,EAAKv6B,GAAMu6B,EAAKv6B,EAAI,KAAOu6B,EAAKv6B,EAAI,IAC5E,OACD,IAAK,IACJ,IAAIu6B,EAAK5xB,EAAG4xB,EAAK5xB,EAAIY,GAAWgxB,EAAKzJ,GAAK9vB,EAAU,IAAK4pB,GAAQW,GAAUgP,EAAKv6B,IAChF,IAAG68C,EAASnpC,GAAKgpC,EAAWniB,EAAK5xB,EAAG,SAC/B+K,IAAKipC,EAAepiB,EAAK5xB,EAC9B,OACD,QAAS+K,GAAI,aAEdA,GAAK,OAENvZ,EAAEwF,KAAK+T,GAER,MAAOvZ,GAAEQ,KAAK,IAAM,cAErB,OACCs5C,YAAawI,EACbvI,SAAUsI,EACVrI,WAAYyI,KAId,IAAIE,IAAM,WACT,QAASrhD,GAAOuC,GAAK,MAAOA,GAAErB,QAAQ,OAAO,MAAMA,QAAQ,OAAO,KAAKA,QAAQ,OAAO,MACtF,QAASsrB,GAAOjqB,GAAK,MAAOA,GAAErB,QAAQ,MAAO,OAAOA,QAAQ,KAAM,OAAOA,QAAQ,MAAM,OAEvF,QAASogD,GAAW5wC,EAAKxF,GACxB,GAAImyC,GAAU3sC,EAAIlO,MAAM,MAAOsV,GAAK,EAAGP,GAAK,EAAGnG,EAAK,EAAG6e,IACvD,MAAO7e,IAAOisC,EAAQx+C,SAAUuS,EAAI,CACnC,GAAI+sC,GAASd,EAAQjsC,GAAIwZ,OAAOpoB,MAAM,IACtC,IAAG27C,EAAO,KAAO,OAAQ,QACzB,IAAIxgC,GAAOwiB,GAAYge,EAAO,GAC9B,IAAGluB,EAAIpxB,QAAU8e,EAAK/N,EAAG,IAAIkI,EAAImY,EAAIpxB,OAAQiZ,GAAK6F,EAAK/N,IAAKkI,EAAG,IAAImY,EAAInY,GAAImY,EAAInY,KAC/EA,GAAI6F,EAAK/N,CAAG2H,GAAIoG,EAAK5a,CACrB,QAAOo7C,EAAO,IACb,IAAK,IAAKluB,EAAInY,GAAGP,GAAKvX,EAAOm+C,EAAO,GAAK,OACzC,IAAK,IAAKluB,EAAInY,GAAGP,IAAM4mC,EAAO,EAAI,OAClC,IAAK,MAAO,GAAIjG,GAAKiG,EAAOA,EAAOt/C,OAAS,GAE5C,IAAK,MACJ,OAAOs/C,EAAO,IACb,IAAK,KAAMluB,EAAInY,GAAGP,IAAM4mC,EAAO,GAAK,KAAO,KAAO,OAClD,QAASluB,EAAInY,GAAGP,IAAM4mC,EAAO,EAAI,QAElC,GAAGA,EAAO,IAAM,MAAOluB,EAAInY,GAAGP,IAAM0Y,EAAInY,GAAGP,GAAI2gC,KAGlD,GAAGhtC,GAAQA,EAAK4rC,UAAW7mB,EAAMA,EAAI1wB,MAAM,EAAG2L,EAAK4rC,UACnD,OAAO7mB,GAGR,QAASsxB,GAAat9C,EAAGiH,GAAQ,MAAOo3B,IAAagf,EAAWr9C,EAAGiH,GAAOA,GAC1E,QAASs2C,GAAgBv9C,EAAGiH,GAAQ,MAAOg2B,IAAkBqgB,EAAat9C,EAAGiH,GAAOA,GAEpF,GAAIgQ,IACH,yBACA,oBACA,4EACChc,KAAK,KAEP,IAAIuiD,IACH,qCACA,2CACCviD,KAAK,MAAQ,IAGf,IAAIwiD,IACH,wCACA,cACCxiD,KAAK,KAEP,IAAIgrB,GAAM,sCAEV,SAASy3B,GAAkBjgB,GAC1B,IAAIA,IAAOA,EAAG,QAAS,MAAO,EAC9B,IAAIhjC,MAAQk+B,KAASkC,EAAM6hB,EAAQ,EACnC,IAAI/wC,GAAIwwB,GAAasB,EAAG,QACxB,IAAID,GAAQt/B,MAAMW,QAAQ4+B,EAC1B,KAAI,GAAI5pB,GAAIlI,EAAErN,EAAEqN,EAAGkI,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAG,CACnC,IAAI,GAAIP,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CACnCopC,EAAQthB,IAAazvB,EAAEkI,EAAE/U,EAAEwU,GAC3BunB,GAAO2C,GAASC,EAAG5pB,QAAQP,GAAKmqB,EAAGif,EACnC,KAAI7hB,GAAQA,EAAKv6B,GAAK,MAAQu6B,EAAKt6B,IAAM,IAAK,QAC9Co4B,IAAM,OAAQ+jB,EAAO,IACrB,QAAO7hB,EAAKt6B,GACX,IAAK,KAAK,IAAK,MAAOo4B,EAAG14B,KAAKsoB,EAAOsS,EAAKv6B,GAAK,OAC/C,IAAK,IACJ,IAAIu6B,EAAKrrB,EAAG,CAAEmpB,EAAG,GAAG,GAAKA,GAAG,GAAGkC,EAAKv6B,MAC/B,CAAEq4B,EAAG,GAAG,KAAOA,GAAG,GAAG,GAAKA,GAAG,GAAGkC,EAAKv6B,CAAGq4B,GAAG,GAAGpQ,EAAOsS,EAAKrrB,GAC/D,MACD,IAAK,IACJmpB,EAAG,GAAK,MAAMkC,EAAKrrB,EAAE,IAAI,IAAMmpB,GAAG,GAAG,IAAMA,GAAG,GAAGkC,EAAKv6B,EAAE,IAAI,GAC5Dq4B,GAAG,GAAKpQ,EAAOsS,EAAKrrB,IAAIqrB,EAAKv6B,EAAE,OAAO,SACtC,OACD,IAAK,IACJ,GAAIC,GAAI2qB,GAAQW,GAAUgP,EAAKv6B,GAC/Bq4B,GAAG,GAAK,KAAOA,GAAG,GAAK,IAAMA,GAAG,GAAK,GAAGp4B,CACxCo4B,GAAG,GAAKkC,EAAK5xB,GAAKY,GAAWgxB,EAAKzJ,GAAK9vB,EAAU,IAAKf,EACtD,OACD,IAAK,IAAK,UAEX9F,EAAEwF,KAAK04B,EAAG19B,KAAK,OAGjBR,EAAEwF,KAAK,YAAc0L,EAAElO,EAAEqB,EAAE6M,EAAErN,EAAEQ,EAAE,GAAK,OAAS6M,EAAElO,EAAEkO,EAAEA,EAAErN,EAAEqN,EAAE,GAAK,SAChElR,GAAEwF,KAAK,0BAEP,OAAOxF,GAAEQ,KAAK,MAGf,QAAS0iD,GAAalgB,GACrB,OAAQxmB,EAAQumC,EAAKC,EAAMD,EAAKE,EAAkBjgB,GAAKxX,GAAKhrB,KAAK,MAIlE,OACCs5C,YAAagJ,EACb/I,SAAU8I,EACV7I,WAAYkJ,KAId,IAAIC,IAAM,WACT,QAASC,GAAarjD,EAAMwxB,EAAKnY,EAAGP,EAAG7Y,GACtC,GAAGA,EAAE0d,IAAK6T,EAAInY,GAAGP,GAAK9Y,MACjB,IAAGA,IAAS,GAAG,MACf,IAAGA,IAAS,OAAQwxB,EAAInY,GAAGP,GAAK,SAChC,IAAG9Y,IAAS,QAASwxB,EAAInY,GAAGP,GAAK,UACjC,KAAIzW,MAAMoxB,GAASzzB,IAAQwxB,EAAInY,GAAGP,GAAK2a,GAASzzB,OAChD,KAAIqC,MAAM4xB,GAAUj0B,GAAM0N,WAAY8jB,EAAInY,GAAGP,GAAKuY,GAAUrxB,OAC5DwxB,GAAInY,GAAGP,GAAK9Y,EAGlB,QAASsjD,GAAetuC,EAAGvI,GAC1B,GAAIxM,GAAIwM,KACR,IAAI+kB,KACJ,KAAIxc,GAAKA,EAAE5U,SAAW,EAAG,MAAOoxB,EAChC,IAAI+xB,GAAQvuC,EAAEjR,MAAM,SACpB,IAAIuB,GAAIi+C,EAAMnjD,OAAS,CACvB,OAAMkF,GAAK,GAAKi+C,EAAMj+C,GAAGlF,SAAW,IAAKkF,CACzC,IAAIiZ,GAAQ,GAAIhO,EAAM,CACtB,IAAI8I,GAAI,CACR,MAAMA,GAAK/T,IAAK+T,EAAG,CAClB9I,EAAMgzC,EAAMlqC,GAAG1Z,QAAQ,IACvB,IAAG4Q,IAAQ,EAAGA,EAAMgzC,EAAMlqC,GAAGjZ,WAAamQ,IAC1CgO,GAAQnY,KAAK2M,IAAIwL,EAAOhO,GAEzB,IAAI8I,EAAI,EAAGA,GAAK/T,IAAK+T,EAAG,CACvBmY,EAAInY,KAEJ,IAAIP,GAAI,CACRuqC,GAAaE,EAAMlqC,GAAGvY,MAAM,EAAGyd,GAAO4N,OAAQqF,EAAKnY,EAAGP,EAAG7Y,EACzD,KAAI6Y,EAAI,EAAGA,IAAMyqC,EAAMlqC,GAAGjZ,OAASme,GAAO,GAAK,IAAKzF,EACnDuqC,EAAaE,EAAMlqC,GAAGvY,MAAMyd,GAAOzF,EAAE,GAAG,GAAGyF,EAAMzF,EAAE,IAAIqT,OAAOqF,EAAInY,EAAEP,EAAE7Y,GAExE,GAAGA,EAAEo4C,UAAW7mB,EAAMA,EAAI1wB,MAAM,EAAGb,EAAEo4C,UACrC,OAAO7mB,GAIR,GAAIgyB,IACL/3C,GAAM,IACNxE,EAAM,KACN8C,GAAM,IACNysC,IAAM,IAIL,IAAIiN,IACLh4C,GAAM,EACNxE,EAAM,EACN8C,GAAM,EACNysC,IAAM,EAGL,SAASkN,GAAUzxC,GAClB,GAAI2M,MAAU+kC,EAAQ,MAAOl4B,EAAM,EAAGvZ,EAAK,CAC3C,MAAKuZ,EAAMxZ,EAAI7R,SAASqrB,EAAK,CAC5B,IAAIvZ,EAAGD,EAAI5R,WAAWorB,KAAS,GAAMk4B,GAASA,MACzC,KAAIA,GAASzxC,IAAMsxC,GAAY5kC,EAAI1M,IAAO0M,EAAI1M,IAAK,GAAG,EAG5DA,IACA,KAAIuZ,IAAO7M,GAAK,GAAKuC,OAAO6O,UAAUC,eAAehrB,KAAK2Z,EAAK6M,GAAO,CACrEvZ,EAAGzM,MAAOmZ,EAAI6M,GAAMA,IAGrB,IAAMvZ,EAAG9R,OAAS,CACjBwe,EAAM6kC,CACN,KAAIh4B,IAAO7M,GAAK,GAAKuC,OAAO6O,UAAUC,eAAehrB,KAAK2Z,EAAK6M,GAAO,CACrEvZ,EAAGzM,MAAOmZ,EAAI6M,GAAMA,KAItBvZ,EAAGoP,KAAK,SAASwE,EAAGf,GAAK,MAAOe,GAAE,GAAKf,EAAE,IAAM0+B,EAAkB39B,EAAE,IAAM29B,EAAkB1+B,EAAE,KAE7F,OAAOy+B,GAAWtxC,EAAG8O,MAAM,KAAO,GAGnC,QAAS4iC,GAAiB3xC,EAAKxF,GAC9B,GAAIxM,GAAIwM,KACR,IAAIu2C,GAAM,EACV,IAAGrhD,GAAS,MAAQ1B,EAAE+iC,OAAS,KAAM/iC,EAAE+iC,MAAQrhC,CAC/C,IAAIshC,GAAKhjC,EAAE+iC,WACX,IAAItC,IAAU58B,GAAIQ,EAAE,EAAG6M,EAAE,GAAIlO,GAAIqB,EAAE,EAAG6M,EAAE,GAExC,IAAGc,EAAInR,MAAM,EAAE,IAAM,OAAQ,CAE5B,GAAGmR,EAAI5R,WAAW,IAAM,IAAM4R,EAAI5R,WAAW,IAAM,GAAK,CACvD2iD,EAAM/wC,EAAI3P,OAAO,EAAI2P,GAAMA,EAAInR,MAAM,OAGjC,IAAGmR,EAAI5R,WAAW,IAAM,IAAM4R,EAAI5R,WAAW,IAAM,GAAK,CAC5D2iD,EAAM/wC,EAAI3P,OAAO,EAAI2P,GAAMA,EAAInR,MAAM,OAEjCkiD,GAAMU,EAAUzxC,EAAInR,MAAM,EAAE,WAE7B,IAAGb,GAAKA,EAAE4jD,GAAIb,EAAM/iD,EAAE4jD,OACtBb,GAAMU,EAAUzxC,EAAInR,MAAM,EAAE,MACjC,IAAIuY,GAAI,EAAGP,EAAI,EAAGhT,EAAI,CACtB,IAAIyY,GAAQ,EAAGkN,EAAM,EAAGq4B,EAAQd,EAAI3iD,WAAW,GAAIsjD,EAAQ,MAAOzxC,EAAG,EAAG6xC,EAAQ9xC,EAAI5R,WAAW,EAC/F,IAAI2jD,GAAM/jD,EAAEoV,QAAU,KAAOqB,GAAazW,EAAEoV,QAAU,IACtD,SAAS4uC,KACR,GAAIngD,GAAImO,EAAInR,MAAMyd,EAAOkN,EAAM,IAAG3nB,EAAEhD,OAAO,IAAM,KAAMgD,EAAIA,EAAEhD,MAAM,GAAI,EACvE,IAAIu/B,KACJ,IAAGv8B,EAAExB,OAAO,IAAM,KAAOwB,EAAExB,OAAOwB,EAAE1D,OAAS,IAAM,IAAK0D,EAAIA,EAAEhD,MAAM,GAAG,GAAG2B,QAAQ,MAAM,IACxF,IAAGqB,EAAE1D,SAAW,EAAGigC,EAAKt6B,EAAI,QACvB,IAAG9F,EAAE0d,IAAK,CAAE0iB,EAAKt6B,EAAI,GAAKs6B,GAAKv6B,EAAIhC,MACnC,IAAGA,EAAEqoB,OAAO/rB,SAAW,EAAG,CAAEigC,EAAKt6B,EAAI,GAAKs6B,GAAKv6B,EAAIhC,MACnD,IAAGA,EAAEzD,WAAW,IAAM,GAAM,CAChC,GAAGyD,EAAEzD,WAAW,IAAM,IAAQyD,EAAEzD,WAAWyD,EAAE1D,OAAS,IAAM,GAAM,CAAEigC,EAAKt6B,EAAI,GAAKs6B,GAAKv6B,EAAIhC,EAAEhD,MAAM,GAAG,GAAG2B,QAAQ,MAAM,SAClH,IAAGyhD,GAAUpgD,GAAI,CAAEu8B,EAAKt6B,EAAI,GAAKs6B,GAAKrrB,EAAIlR,EAAEhD,MAAM,OAClD,CAAEu/B,EAAKt6B,EAAI,GAAKs6B,GAAKv6B,EAAIhC,OAC1B,IAAGA,GAAK,OAAQ,CAAEu8B,EAAKt6B,EAAI,GAAKs6B,GAAKv6B,EAAI,SACzC,IAAGhC,GAAK,QAAS,CAAEu8B,EAAKt6B,EAAI,GAAKs6B,GAAKv6B,EAAI,UAC1C,KAAIzD,MAAMyD,EAAI2tB,GAAS3vB,IAAK,CAAEu8B,EAAKt6B,EAAI,GAAK,IAAG9F,EAAEsgD,WAAa,MAAOlgB,EAAK5xB,EAAI3K,CAAGu8B,GAAKv6B,EAAIA,MAC1F,KAAIzD,OAAOyD,EAAImuB,GAAUnwB,IAAI4J,YAAcs2C,GAAOlgD,EAAE2M,MAAMuzC,GAAM,CACpE3jB,EAAKzJ,EAAI32B,EAAEoV,QAAUvO,EAAU,GAC/B,IAAIwY,GAAI,CACR,IAAG0kC,GAAOlgD,EAAE2M,MAAMuzC,GAAK,CAAElgD,EAAE8S,GAAW9S,EAAG7D,EAAEoV,OAASvR,EAAE2M,MAAMuzC,OAAY1kC,GAAE,CAAGxZ,GAAIurB,GAAUvtB,EAAGwb,GAC9F,GAAGrf,EAAE0jC,UAAW,CAAEtD,EAAKt6B,EAAI,GAAKs6B,GAAKv6B,EAAIA,MACpC,CAAEu6B,EAAKt6B,EAAI,GAAKs6B,GAAKv6B,EAAI4qB,GAAQ5qB,GACtC,GAAG7F,EAAEsgD,WAAa,MAAOlgB,EAAK5xB,EAAIY,GAAWgxB,EAAKzJ,EAAGyJ,EAAKv6B,YAAa0H,MAAOkjB,GAAQ2P,EAAKv6B,GAAGu6B,EAAKv6B,EACnG,KAAI7F,EAAEkkD,aAAe9jB,GAAKzJ,MACpB,CACNyJ,EAAKt6B,EAAI,GACTs6B,GAAKv6B,EAAIhC,EAEV,GAAGu8B,EAAKt6B,GAAK,IAAI,MACZ,IAAG9F,EAAE+iC,MAAO,CAAE,IAAIC,EAAG5pB,GAAI4pB,EAAG5pB,KAAS4pB,GAAG5pB,GAAGP,GAAKunB,MAChD4C,GAAGrC,IAAat8B,EAAEwU,EAAE3H,EAAEkI,KAAOgnB,CAClC9hB,GAAQkN,EAAI,CAAGs4B,GAAU9xC,EAAI5R,WAAWke,EACxC,IAAGmiB,EAAMz9B,EAAEqB,EAAIwU,EAAG4nB,EAAMz9B,EAAEqB,EAAIwU,CAC9B,IAAG4nB,EAAMz9B,EAAEkO,EAAIkI,EAAGqnB,EAAMz9B,EAAEkO,EAAIkI,CAC9B,IAAGnH,GAAM4xC,IAAShrC,MAAQ,CAAEA,EAAI,IAAKO,CAAG,IAAGpZ,EAAEo4C,WAAap4C,EAAEo4C,WAAah/B,EAAG,MAAO,OAEpF+qC,EAAO,KAAK34B,EAAMxZ,EAAI7R,SAASqrB,EAAK,OAAQvZ,EAAGD,EAAI5R,WAAWorB,IAC7D,IAAK,IAAM,GAAGs4B,IAAY,GAAMJ,GAASA,CAAO,OAChD,IAAK,IACJ,GAAGA,EAAO,KACV,IAAG1xC,EAAI5R,WAAWorB,EAAI,IAAM,KAAQA,EAErC,IAAKq4B,IAAO,IAAK,IAAM,IAAIH,GAASM,IAAe,KAAMG,EAAO,OAChE,QAAS,OAEV,GAAG34B,EAAMlN,EAAQ,EAAG0lC,GAEpBhhB,GAAG,QAAUrB,GAAalB,EAC1B,OAAOuC,GAGR,QAASohB,GAAiBpyC,EAAKxF,GAC9B,KAAKA,GAAQA,EAAK22C,KAAM,MAAOQ,GAAiB3xC,EAAKxF,EACrD,IAAGA,EAAKo3C,GAAI,MAAOD,GAAiB3xC,EAAKxF,EACzC,IAAGwF,EAAInR,MAAM,EAAE,IAAM,OAAQ,MAAO8iD,GAAiB3xC,EAAKxF,EAC1D,IAAGwF,EAAItS,QAAQ,OAAS,GAAKsS,EAAItS,QAAQ,MAAQ,GAAKsS,EAAItS,QAAQ,MAAQ,EAAG,MAAOikD,GAAiB3xC,EAAKxF,EAC1G,OAAOo3B,IAAayf,EAAerxC,EAAKxF,GAAOA,GAGhD,QAAS63C,GAAa9+C,EAAGiH,GACxB,GAAIwF,GAAM,GAAIsyC,EAAQ93C,EAAK8C,MAAQ,UAAY,EAAE,EAAE,EAAE,GAAKi1C,GAAUh/C,EAAGiH,EACvE,QAAOA,EAAK8C,MACX,IAAK,SAAU0C,EAAMzP,EAAcgD,EAAI,OACvC,IAAK,SAAUyM,EAAMzM,CAAG,OACxB,IAAK,SACJ,GAAGiH,EAAKwrC,UAAY,MAAOhmC,EAAMzM,EAAElC,SAAS,YACvC,IAAGmJ,EAAKwrC,gBAAmB/5C,KAAa,YAAa+T,EAAM/T,EAASoD,MAAMC,OAAOkL,EAAKwrC,SAAUzyC,OAChGyM,GAAMvP,GAAWC,OAAOkC,SAASW,GAAKA,EAAElC,SAAS,UAAYc,EAAIoB,EACtE,OACD,IAAK,QAASyM,EAAMsf,GAAO/rB,EAAI,OAC/B,IAAK,SAAUyM,EAAMzM,CAAG,OACxB,QAAS,KAAM,IAAIhB,OAAM,qBAAuBiI,EAAK8C,OAEtD,GAAGg1C,EAAM,IAAM,KAAQA,EAAM,IAAM,KAAQA,EAAM,IAAM,IAAMtyC,EAAM8mB,GAAS9mB,EAAInR,MAAM,QACjF,IAAG2L,EAAK8C,MAAQ,UAAY9C,EAAK8C,MAAQ,UAAY9C,EAAKwrC,UAAY,MAAOhmC,EAAM8mB,GAAS9mB,OAC5F,IAAIxF,EAAK8C,MAAQ,gBAAoBrR,KAAa,aAAeuO,EAAKwrC,SAAWhmC,EAAM/T,EAASoD,MAAMC,OAAOkL,EAAKwrC,SAAU/5C,EAASoD,MAAMysB,OAAO,MAAM9b,GAC7J,IAAGA,EAAInR,MAAM,EAAE,KAAO,sBAAuB,MAAO8hD,IAAI5I,SAASvtC,EAAK8C,MAAQ,SAAW0C,EAAM8mB,GAAS9mB,GAAMxF,EAC9G,OAAO43C,GAAiBpyC,EAAKxF,GAG9B,QAASg4C,GAAgBj/C,EAAGiH,GAAQ,MAAOg2B,IAAkB6hB,EAAa9+C,EAAGiH,GAAOA,GAEpF,QAASi4C,GAAazhB,GACrB,GAAIhjC,KACJ,IAAIkR,GAAIgxB,GAAkBc,EAAG,SAAU5C,CACvC,IAAI2C,GAAQt/B,MAAMW,QAAQ4+B,EAC1B,KAAI,GAAI5pB,GAAIlI,EAAErN,EAAEqN,EAAGkI,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAG,CACnC,GAAI8kB,KACJ,KAAI,GAAIrlB,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CACnC,GAAIopC,GAAQthB,IAAazvB,EAAEkI,EAAE/U,EAAEwU,GAC/BunB,GAAO2C,GAASC,EAAG5pB,QAAQP,GAAKmqB,EAAGif,EACnC,KAAI7hB,GAAQA,EAAKv6B,GAAK,KAAM,CAAEq4B,EAAG14B,KAAK,aAAe,UACrD,GAAIgJ,IAAK4xB,EAAK5xB,IAAM8zB,GAAYlC,GAAOA,EAAK5xB,IAAM,IAAI3N,MAAM,EAAE,GAC9D,OAAM2N,EAAErO,OAAS,GAAIqO,GAAK,GAC1B0vB,GAAG14B,KAAKgJ,GAAKqK,IAAM,EAAI,IAAM,KAE9B7Y,EAAEwF,KAAK04B,EAAG19B,KAAK,KAEhB,MAAOR,GAAEQ,KAAK,MAGf,OACCs5C,YAAa0K,EACbzK,SAAUsK,EACVrK,WAAYyK,KAKd,SAASC,IAAWn/C,EAAGiH,GACtB,GAAIxM,GAAIwM,MAAYm4C,IAAY3kD,EAAE25B,GAAK35B,GAAE25B,IAAM,IAC/C,KACC,GAAIx0B,GAAM80C,GAAKH,YAAYv0C,EAAGvF,EAC9BA,GAAE25B,IAAMgrB,CACR,OAAOx/C,GACN,MAAMnC,GACPhD,EAAE25B,IAAMgrB,CACR,KAAI3hD,EAAEihB,QAAQzT,MAAM,uBAAyBm0C,EAAS,KAAM3hD,EAC5D,OAAOmgD,IAAIrJ,YAAYv0C,EAAGiH,IAK5B,QAASo4C,IAAUC,GAClB,GAAIC,MAAW73C,EAAI43C,EAAIr0C,MAAM4lB,IAAWn2B,EAAI,CAC5C,IAAI8kD,GAAO,KACX,IAAG93C,EAAG,KAAKhN,GAAGgN,EAAE9M,SAAUF,EAAG,CAC5B,GAAI+M,GAAIupB,GAAYtpB,EAAEhN,GACtB,QAAO+M,EAAE,GAAGxK,QAAQ,QAAQ,KAG3B,IAAK,YAAa,MAGlB,IAAK,UAAW,MAGhB,IAAK,UACJ,IAAIwK,EAAEwC,IAAK,MAEZ,IAAK,YACL,IAAK,YAAas1C,EAAKE,OAAS,CAAG,OACnC,IAAK,YAAa,MAGlB,IAAK,WACJ,GAAGh4C,EAAEwC,KAAO,IAAK,KACjBs1C,GAAKrlD,GAAKtB,EAAMmT,SAAStE,EAAEwC,IAAK,IAChC,OAGD,IAAK,WACJ,IAAIxC,EAAEwC,IAAK,MAEZ,IAAK,aACL,IAAK,aAAcs1C,EAAKG,QAAU,CAAG,OACrC,IAAK,aAAc,MAGnB,IAAK,SAAUH,EAAK7nC,KAAOjQ,EAAEwC,GAAK,OAGlC,IAAK,MAAOs1C,EAAKlqC,GAAK5N,EAAEwC,GAAK,OAG7B,IAAK,UACJ,IAAIxC,EAAEwC,IAAK,MAEZ,IAAK,YACL,IAAK,YAAas1C,EAAKI,OAAS,CAAG,OACnC,IAAK,YAAa,MAGlB,IAAK,KACJ,IAAIl4C,EAAEwC,IAAK,KACX,QAAOxC,EAAEwC,KACR,IAAK,SAAUs1C,EAAKK,KAAO,QAAU,OACrC,IAAK,mBAAoBL,EAAKK,KAAO,mBAAqB,OAC1D,IAAK,mBAAoBL,EAAKK,KAAO,mBAAqB,SAG5D,IAAK,OACL,IAAK,OAAQL,EAAK/3C,EAAI,CAAG,OACzB,IAAK,OAAQ,MAGb,IAAK,KACJ,GAAGC,EAAEwC,KAAO,IAAK,MAElB,IAAK,OACL,IAAK,OAAQs1C,EAAKhgC,EAAI,CAAG,OACzB,IAAK,OAAQ,MAGb,IAAK,KACJ,GAAG9X,EAAEwC,KAAO,IAAK,MAElB,IAAK,OACL,IAAK,OAAQs1C,EAAK7kD,EAAI,CAAG,OACzB,IAAK,OAAQ,MAGb,IAAK,SACJ,GAAG+M,EAAEo4C,IAAKN,EAAKplC,MAAQ1S,EAAEo4C,IAAIvkD,MAAM,EAAE,EACrC,OACD,IAAK,WAAW,IAAK,YAAY,IAAK,WAAY,MAGlD,IAAK,UAAWikD,EAAKO,OAASr4C,EAAEwC,GAAK,OACrC,IAAK,YAAY,IAAK,aAAa,IAAK,YAAa,MAGrD,IAAK,aAAcs1C,EAAKQ,OAASt4C,EAAEwC,GAAK,OACxC,IAAK,eAAe,IAAK,gBAAgB,IAAK,eAAgB,MAG9D,IAAK,UAAW,MAChB,IAAK,YAAY,IAAK,aAAa,IAAK,YAAa,MAGrD,IAAK,WAAW,IAAK,YAAY,IAAK,YAAa,MACnD,IAAK,OAAQu1C,EAAO,IAAM,OAC1B,IAAK,SAAUA,EAAO,KAAO,OAC7B,QACC,GAAG/3C,EAAE,GAAG5M,WAAW,KAAO,KAAO2kD,EAAM,KAAM,IAAIxgD,OAAM,4BAA8ByI,EAAE,MAG1F,MAAO83C,GAGR,GAAIS,IAAW,WACd,GAAIC,GAASzsB,GAAS,KAAM0sB,EAAU1sB,GAAS,MAE/C,SAAS2sB,GAAQx0C,GAEhB,GAAIpL,GAAIoL,EAAEV,MAAMg1C,EAChB,KAAI1/C,EAAG,OAAQA,EAAE,IAAKD,EAAE,GAExB,IAAI7F,IAAM8F,EAAE,IAAKD,EAAEyxB,GAAYxxB,EAAE,IACjC,IAAI++C,GAAM3zC,EAAEV,MAAMi1C,EAClB,IAAGZ,EAAK7kD,EAAE6D,EAAI+gD,GAAUC,EAAI,GAC5B,OAAO7kD,GAER,GAAI2lD,GAAS,gBAAiBC,EAAO,gBACrC,OAAO,SAASL,GAASM,GACxB,MAAOA,GAAGrjD,QAAQmjD,EAAO,IAAI7hD,MAAM8hD,GAAM7hD,IAAI2hD,GAASI,OAAO,SAAS50C,GAAK,MAAOA,GAAErL,OAMtF,IAAIkgD,IAAa,QAAUC,MAC1B,GAAIC,GAAU,YACd,SAASC,GAAWpB,EAAMqB,EAAOC,GAChC,GAAIlX,KAEJ,IAAG4V,EAAK/3C,EAAGmiC,EAAM1pC,KAAK,8BACtB,IAAGs/C,EAAKK,KAAMjW,EAAM1pC,KAAK,wBAA0Bs/C,EAAKK,KAAO,IAC/D,IAAGL,EAAKlqC,GAAIs0B,EAAM1pC,KAAK,aAAes/C,EAAKlqC,GAAK,MAChD,IAAGkqC,EAAKG,QAAS/V,EAAM1pC,KAAK,wBAC5B,IAAGs/C,EAAKE,OAAQ9V,EAAM1pC,KAAK,qBAC3B2gD,GAAM3gD,KAAK,gBAAkB0pC,EAAM1uC,KAAK,IAAM,KAE9C,IAAGskD,EAAKhgC,EAAG,CAAEqhC,EAAM3gD,KAAK,MAAQ4gD,GAAM5gD,KAAK,QAC3C,GAAGs/C,EAAK7kD,EAAG,CAAEkmD,EAAM3gD,KAAK,MAAQ4gD,GAAM5gD,KAAK,QAC3C,GAAGs/C,EAAKI,OAAQ,CAAEiB,EAAM3gD,KAAK,MAAQ4gD,GAAM5gD,KAAK,QAEhD,GAAI6gD,GAAQvB,EAAKQ,QAAU,EAC3B,IAAGe,GAAS,eAAiBA,GAAS,QAASA,EAAQ,UAClD,IAAGA,GAAS,YAAaA,EAAQ,KACtC,IAAGA,GAAS,GAAI,CAAEF,EAAM3gD,KAAK,IAAM6gD,EAAQ,IAAMD,GAAM5gD,KAAK,KAAO6gD,EAAQ,KAE3ED,EAAM5gD,KAAK,UACX,OAAOs/C,GAIR,QAASwB,GAAUp1C,GAClB,GAAIq1C,OAAYr1C,EAAErL,KAClB,KAAIqL,EAAErL,EAAG,MAAO,EAEhB,IAAGqL,EAAErN,EAAGqiD,EAAWh1C,EAAErN,EAAG0iD,EAAM,GAAIA,EAAM,GAExC,OAAOA,GAAM,GAAG/lD,KAAK,IAAM+lD,EAAM,GAAG/jD,QAAQyjD,EAAQ,SAAWM,EAAM,GAAG/lD,KAAK,IAG9E,MAAO,SAAS+kD,GAASM,GACxB,MAAOA,GAAG9hD,IAAIuiD,GAAW9lD,KAAK,OAKhC,IAAIgmD,IAAW,0CAA2CC,GAAW,cACrE,IAAIC,IAAa,8CACjB,SAASC,IAAS3lD,EAAGwL,GACpB,GAAI8uB,GAAO9uB,EAAOA,EAAKo6C,SAAW,IAClC,IAAIjwB,KACJ,KAAI31B,EAAG,OAAS8E,EAAG,GAInB,IAAG9E,EAAEwP,MAAM,yBAA0B,CACpCmmB,EAAE7wB,EAAIwxB,GAAYwB,GAAS93B,EAAEH,MAAMG,EAAEtB,QAAQ,KAAK,GAAGoE,MAAM,kBAAkB,IAAI,IAAK,KACtF6yB,GAAEzlB,EAAI4nB,GAAS93B,EACf,IAAGs6B,EAAM3E,EAAEzR,EAAI8S,GAAWrB,EAAE7wB,OAGxB,IAAY9E,EAAEwP,MAAMi2C,IAAY,CACpC9vB,EAAEzlB,EAAI4nB,GAAS93B,EACf21B,GAAE7wB,EAAIwxB,GAAYwB,IAAU93B,EAAEwB,QAAQkkD,GAAY,IAAIl2C,MAAMg2C,SAAehmD,KAAK,IAAIgC,QAAQ4zB,GAAS,KAAM,KAC3G,IAAGkF,EAAM3E,EAAEzR,EAAI6gC,GAAWR,GAAS5uB,EAAEzlB,IAItC,MAAOylB,GAIR,GAAIkwB,IAAQ,gDACZ,IAAIC,IAAQ,4BACZ,IAAIC,IAAQ,6BACZ,SAASC,IAAcjnD,EAAMyM,GAC5B,GAAI3I,MAAU6L,EAAK,EACnB,KAAI3P,EAAM,MAAO8D,EAEjB,IAAIorC,GAAMlvC,EAAKyQ,MAAMq2C,GACrB,IAAG5X,EAAK,CACPv/B,EAAKu/B,EAAI,GAAGzsC,QAAQskD,GAAM,IAAIhjD,MAAMijD,GACpC,KAAI,GAAI9mD,GAAI,EAAGA,GAAKyP,EAAGvP,SAAUF,EAAG,CACnC,GAAID,GAAI2mD,GAASj3C,EAAGzP,GAAGisB,OAAQ1f,EAC/B,IAAGxM,GAAK,KAAM6D,EAAEA,EAAE1D,QAAUH,EAE7BivC,EAAM1Y,GAAY0Y,EAAI,GAAKprC,GAAEojD,MAAQhY,EAAIiY,KAAOrjD,GAAEsjD,OAASlY,EAAImY,YAEhE,MAAOvjD,GAGR,GAAIwjD,IAAe,kBACnB,SAASC,IAAcrY,EAAKziC,GAC3B,IAAIA,EAAK+6C,QAAS,MAAO,EACzB,IAAIvnD,IAAKg2B,GACTh2B,GAAEA,EAAEG,QAAW45B,GAAU,MAAO,MAC/B2U,MAAOtT,GAAW,GAClB8rB,MAAOjY,EAAIgY,MACXG,YAAanY,EAAIkY,QAElB,KAAI,GAAIlnD,GAAI,EAAGA,GAAKgvC,EAAI9uC,SAAUF,EAAG,CAAE,GAAGgvC,EAAIhvC,IAAM,KAAM,QACzD,IAAI4D,GAAIorC,EAAIhvC,EACZ,IAAIunD,GAAQ,MACZ,IAAG3jD,EAAEqN,EAAGs2C,GAAS3jD,EAAEqN,MACd,CACJs2C,GAAS,IACT,KAAI3jD,EAAEiC,EAAGjC,EAAEiC,EAAI,EACf,IAAGjC,EAAEiC,EAAE0K,MAAM62C,IAAeG,GAAS,uBACrCA,IAAS,IAAM3vB,GAAUh0B,EAAEiC,GAAK,OAEjC0hD,GAAS,OACTxnD,GAAEA,EAAEG,QAAU,EAEf,GAAGH,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,QAAYH,GAAE,GAAGA,EAAE,GAAGwC,QAAQ,KAAK,KACjE,MAAOxC,GAAEQ,KAAK,IAEf,QAASinD,IAAQviC,GAChB,GAAIllB,GAAIklB,EAAErkB,MAAMqkB,EAAE,KAAK,IAAI,EAAE,GAAGrkB,MAAM,EAAE,EACxC,QAAQyQ,SAAStR,EAAEa,MAAM,EAAE,GAAG,IAAIyQ,SAAStR,EAAEa,MAAM,EAAE,GAAG,IAAIyQ,SAAStR,EAAEa,MAAM,EAAE,GAAG,KAEnF,QAAS6mD,IAAQtC,GAChB,IAAI,GAAInlD,GAAE,EAAED,EAAE,EAAGC,GAAG,IAAKA,EAAGD,EAAIA,EAAE,KAAOolD,EAAInlD,GAAG,IAAI,IAAImlD,EAAInlD,GAAG,EAAE,EAAEmlD,EAAInlD,GACvE,OAAOD,GAAEqD,SAAS,IAAI6L,cAAcrO,MAAM,GAG3C,QAAS8mD,IAAQvC,GAChB,GAAIhsC,GAAIgsC,EAAI,GAAG,IAAKwC,EAAIxC,EAAI,GAAG,IAAKv5C,EAAEu5C,EAAI,GAAG,GAC7C,IAAIj4C,GAAIhH,KAAK2M,IAAIsG,EAAGwuC,EAAG/7C,GAAIoB,EAAI9G,KAAK0M,IAAIuG,EAAGwuC,EAAG/7C,GAAIgN,EAAI1L,EAAIF,CAC1D,IAAG4L,IAAM,EAAG,OAAQ,EAAG,EAAGO,EAE1B,IAAIyuC,GAAK,EAAGz6C,EAAI,EAAG06C,EAAM36C,EAAIF,CAC7BG,GAAIyL,GAAKivC,EAAK,EAAI,EAAIA,EAAKA,EAC3B,QAAO36C,GACN,IAAKiM,GAAGyuC,IAAOD,EAAI/7C,GAAKgN,EAAI,GAAG,CAAG,OAClC,IAAK+uC,GAAGC,GAAOh8C,EAAIuN,GAAKP,EAAI,CAAI,OAChC,IAAKhN,GAAGg8C,GAAOzuC,EAAIwuC,GAAK/uC,EAAI,CAAI,QAEjC,OAAQgvC,EAAK,EAAGz6C,EAAG06C,EAAK,GAGzB,QAASC,IAAQC,GAChB,GAAI96C,GAAI86C,EAAI,GAAI56C,EAAI46C,EAAI,GAAI3iD,EAAI2iD,EAAI,EACpC,IAAInvC,GAAIzL,EAAI,GAAK/H,EAAI,GAAMA,EAAI,EAAIA,GAAI4H,EAAI5H,EAAIwT,EAAE,CACjD,IAAIusC,IAAOn4C,EAAEA,EAAEA,GAAIg7C,EAAK,EAAE/6C,CAE1B,IAAIg7C,EACJ,IAAG96C,IAAM,EAAG,OAAO66C,EAAG,GACrB,IAAK,IAAG,IAAK,GAAGC,EAAIrvC,EAAIovC,CAAI7C,GAAI,IAAMvsC,CAAGusC,GAAI,IAAM8C,CAAG,OACtD,IAAK,GAAGA,EAAIrvC,GAAK,EAAIovC,EAAO7C,GAAI,IAAM8C,CAAG9C,GAAI,IAAMvsC,CAAG,OACtD,IAAK,GAAGqvC,EAAIrvC,GAAKovC,EAAK,EAAM7C,GAAI,IAAMvsC,CAAGusC,GAAI,IAAM8C,CAAG,OACtD,IAAK,GAAGA,EAAIrvC,GAAK,EAAIovC,EAAO7C,GAAI,IAAM8C,CAAG9C,GAAI,IAAMvsC,CAAG,OACtD,IAAK,GAAGqvC,EAAIrvC,GAAKovC,EAAK,EAAM7C,GAAI,IAAMvsC,CAAGusC,GAAI,IAAM8C,CAAG,OACtD,IAAK,GAAGA,EAAIrvC,GAAK,EAAIovC,EAAO7C,GAAI,IAAM8C,CAAG9C,GAAI,IAAMvsC,CAAG,QAEvD,IAAI,GAAI5Y,GAAI,EAAGA,GAAK,IAAKA,EAAGmlD,EAAInlD,GAAKkG,KAAKC,MAAMg/C,EAAInlD,GAAG,IACvD,OAAOmlD,GAIR,QAAS+C,IAASC,EAAKC,GACtB,GAAGA,IAAS,EAAG,MAAOD,EACtB,IAAIJ,GAAML,GAAQF,GAAQW,GAC1B,IAAIC,EAAO,EAAGL,EAAI,GAAKA,EAAI,IAAM,EAAIK,OAChCL,GAAI,GAAK,GAAK,EAAIA,EAAI,KAAO,EAAIK,EACtC,OAAOX,IAAQK,GAAQC,IAKxB,GAAIM,IAAU,EAAGC,GAAU,GAAIC,GAAU,EAAGC,GAAMH,EAClD,SAAS7G,IAASF,GAAS,MAAOp7C,MAAKkG,OAAQk1C,EAASp7C,KAAKC,MAAM,IAAIqiD,IAAM,KAAOA,IACpF,QAAS/G,IAAQgH,GAAM,MAAQviD,MAAKkG,OAAOq8C,EAAK,GAAGD,GAAM,IAAM,IAAM,IACrE,QAASE,IAAWC,GAAO,MAAQziD,MAAKC,OAAOwiD,EAAMH,GAAM,GAAGA,GAAI,KAAM,IAGxE,QAASI,IAAYC,GAAS,MAAOH,IAAWjH,GAAQD,GAASqH,KAEjE,QAASC,IAAcD,GACtB,GAAIE,GAAQ7iD,KAAKkH,IAAIy7C,EAAQD,GAAYC,IAASG,EAAOR,EACzD,IAAGO,EAAQ,KAAO,IAAIP,GAAID,GAASC,GAAIF,KAAWE,GAAK,GAAGtiD,KAAKkH,IAAIy7C,EAAQD,GAAYC,KAAWE,EAAO,CAAEA,EAAQ7iD,KAAKkH,IAAIy7C,EAAQD,GAAYC,GAASG,GAAOR,GAChKA,GAAMQ,EAcP,QAASnI,IAAYoI,GACpB,GAAGA,EAAK3H,MAAO,CACd2H,EAAK1H,IAAMC,GAASyH,EAAK3H,MACzB2H,GAAK5Q,IAAMoJ,GAAQwH,EAAK1H,IACxB0H,GAAKT,IAAMA,OACL,IAAGS,EAAK1H,IAAK,CACnB0H,EAAK5Q,IAAMoJ,GAAQwH,EAAK1H,IACxB0H,GAAK3H,MAAQoH,GAAWO,EAAK5Q,IAC7B4Q,GAAKT,IAAMA,OACL,UAAUS,GAAK5Q,KAAO,SAAU,CACtC4Q,EAAK3H,MAAQoH,GAAWO,EAAK5Q,IAC7B4Q,GAAK1H,IAAMC,GAASyH,EAAK3H,MACzB2H,GAAKT,IAAMA,GAEZ,GAAGS,EAAKC,kBAAoBD,GAAKC,YAGlC,GAAIC,IAAU,GAAIC,GAAMD,EACxB,SAASvH,IAAM6G,GAAM,MAAOA,GAAK,GAAKW,GACtC,QAASxI,IAAMyI,GAAM,MAAOA,GAAKD,GAAM,GAGvC,GAAIE,KACHC,KAAQ,OACRC,MAAS,QACTC,OAAU,aACVC,OAAU,WACVC,OAAU,YACVC,WAAc,iBACdC,WAAc,eACdC,kBAAqB,WACrBC,WAAc,SACdC,UAAa,WACbC,eAAkB,cAClBC,eAAkB,kBAClBC,eAAkB,gBAClBC,sBAAyB,YACzBC,cAAiB,YAIlB,SAASC,IAAczkD,EAAG8nC,EAAQQ,EAAQ5hC,GACzCohC,EAAO4c,UACP,IAAIC,KACJ,IAAI1F,GAAO,OACVj/C,EAAE,GAAG0K,MAAM4lB,SAAevf,QAAQ,SAAS7V,GAC3C,GAAIgM,GAAIupB,GAAYv1B,EACpB,QAAO81B,GAAS9pB,EAAE,KACjB,IAAK,YAAY,IAAK,aAAa,IAAK,aAAc,MAGtD,IAAK,WAAW,IAAK,YAAY,IAAK,YACrCy9C,IACA,IAAGz9C,EAAE09C,WAAYD,EAAOC,WAAapyB,GAAatrB,EAAE09C,WACpD,IAAG19C,EAAE29C,aAAcF,EAAOE,aAAeryB,GAAatrB,EAAE29C,aACxD/c,GAAO4c,QAAQhlD,KAAKilD,EACpB,OACD,IAAK,YAAa,MAGlB,IAAK,UAAW,MAChB,IAAK,SAAS,IAAK,SAAU,MAC7B,IAAK,UAAW,MAGhB,IAAK,WAAY,MACjB,IAAK,UAAU,IAAK,UAAW,MAC/B,IAAK,WAAY,MAGjB,IAAK,SAAU,MACf,IAAK,QAAQ,IAAK,QAAS,MAC3B,IAAK,SAAU,MAGf,IAAK,YAAa,MAClB,IAAK,WAAW,IAAK,WAAY,MACjC,IAAK,YAAa,MAGlB,IAAK,aAAa,IAAK,cAAc,IAAK,cAAe,MACzD,IAAK,cAAe,MAGpB,IAAK,eAAe,IAAK,gBAAgB,IAAK,gBAAiB,MAC/D,IAAK,gBAAiB,MAGtB,IAAK,aAAa,IAAK,cAAc,IAAK,cAAe,MACzD,IAAK,cAAe,MAGpB,IAAK,UAAU,IAAK,WAAW,IAAK,WAAY,MAChD,IAAK,WAAY,MAGjB,IAAK,QAAQ,IAAK,SAAS,IAAK,SAAU,MAC1C,IAAK,SAAU,MAGf,IAAK,UAAU,IAAK,UACnB,MACD,IAAK,YAAY,IAAK,WAAY,MAGlC,IAAK,WAAW,IAAK,YAAY,IAAK,YAAa,MACnD,IAAK,OAAQ1F,EAAO,IAAM,OAC1B,IAAK,SAAUA,EAAO,KAAO,OAC7B,QAAS,GAAGv4C,GAAQA,EAAKmtB,IAAK,CAC7B,IAAIorB,EAAM,KAAM,IAAIxgD,OAAM,gBAAkByI,EAAE,GAAK,oBAOvD,QAAS49C,IAAY9kD,EAAG8nC,EAAQQ,EAAQ5hC,GACvCohC,EAAOid,QACP,IAAI9kD,KACJ,IAAIg/C,GAAO,OACVj/C,EAAE,GAAG0K,MAAM4lB,SAAevf,QAAQ,SAAS7V,GAC3C,GAAIgM,GAAIupB,GAAYv1B,EACpB,QAAO81B,GAAS9pB,EAAE,KACjB,IAAK,UAAU,IAAK,WAAW,IAAK,WAAY,MAGhD,IAAK,UAAU,IAAK,SAAS,IAAK,UACjCjH,IAAW6nC,GAAOid,MAAMrlD,KAAKO,EAAO,OACrC,IAAK,UAAW,MAGhB,IAAK,iBAAkB,MACvB,IAAK,iBACL,IAAK,kBAAmB6nC,EAAOid,MAAMrlD,KAAKO,EAAOA,KAAW,OAG5D,IAAK,gBAAgB,IAAK,gBACzB,GAAGiH,EAAE89C,YAAa/kD,EAAK+kD,YAAc99C,EAAE89C,WACvC,OACD,IAAK,kBAAkB,IAAK,iBAAkB,MAG9C,IAAK,WACJ,IAAI/kD,EAAKglD,QAAShlD,EAAKglD,UACvB,IAAG/9C,EAAEg+C,QAASjlD,EAAKglD,QAAQC,QAAU15C,SAAStE,EAAEg+C,QAAS,GACzD,IAAGh+C,EAAEi+C,MAAOllD,EAAKglD,QAAQE,MAAQ35C,SAAStE,EAAEi+C,MAAO,GACnD,IAAGj+C,EAAEq7C,KAAMtiD,EAAKglD,QAAQ1C,KAAOxzC,WAAW7H,EAAEq7C,KAE5C,IAAGr7C,EAAEo4C,IAAKr/C,EAAKglD,QAAQ3F,IAAMp4C,EAAEo4C,IAAIvkD,OAAO,EAC1C,OACD,IAAK,cAAc,IAAK,aAAc,MAGtC,IAAK,WACJ,IAAIkF,EAAKmlD,QAASnlD,EAAKmlD,UACvB,IAAGl+C,EAAEi+C,MAAOllD,EAAKmlD,QAAQD,MAAQ35C,SAAStE,EAAEi+C,MAAO,GACnD,IAAGj+C,EAAEq7C,KAAMtiD,EAAKmlD,QAAQ7C,KAAOxzC,WAAW7H,EAAEq7C,KAE5C,IAAGr7C,EAAEo4C,KAAO,KAAMr/C,EAAKmlD,QAAQ9F,IAAMp4C,EAAEo4C,IAAIvkD,OAAO,EAClD,OACD,IAAK,cAAc,IAAK,aAAc,MAGtC,IAAK,SAAS,IAAK,UAAW,MAC9B,IAAK,UAAW,MAGhB,IAAK,UAAU,IAAK,WAAY,MAChC,IAAK,WAAY,MAGjB,IAAK,WAAW,IAAK,YAAY,IAAK,YAAa,MACnD,IAAK,OAAQkkD,EAAO,IAAM,OAC1B,IAAK,SAAUA,EAAO,KAAO,OAC7B,QAAS,GAAGv4C,GAAQA,EAAKmtB,IAAK,CAC7B,IAAIorB,EAAM,KAAM,IAAIxgD,OAAM,gBAAkByI,EAAE,GAAK,kBAOvD,QAASm+C,IAAYrlD,EAAG8nC,EAAQQ,EAAQ5hC,GACvCohC,EAAOwd,QACP,IAAItG,KACJ,IAAIC,GAAO,OACVj/C,EAAE,GAAG0K,MAAM4lB,SAAevf,QAAQ,SAAS7V,GAC3C,GAAIgM,GAAIupB,GAAYv1B,EACpB,QAAO81B,GAAS9pB,EAAE,KACjB,IAAK,UAAU,IAAK,WAAW,IAAK,WAAY,MAGhD,IAAK,SAAS,IAAK,SAAU,MAC7B,IAAK,WAAW,IAAK,UACpB4gC,EAAOwd,MAAM5lD,KAAKs/C,EAClBA,KACA,OAGD,IAAK,QAAS,GAAG93C,EAAEwC,IAAKs1C,EAAK7nC,KAAO6b,GAAS9rB,EAAEwC,IAAM,OACrD,IAAK,WAAW,IAAK,UAAW,MAGhC,IAAK,KAAMs1C,EAAKuG,KAAOr+C,EAAEwC,IAAM8oB,GAAatrB,EAAEwC,KAAO,CAAG,OACxD,IAAK,OAAQs1C,EAAKuG,KAAO,CAAG,OAG5B,IAAK,KAAMvG,EAAKwG,OAASt+C,EAAEwC,IAAM8oB,GAAatrB,EAAEwC,KAAO,CAAG,OAC1D,IAAK,OAAQs1C,EAAKwG,OAAS,CAAG,OAG9B,IAAK,KACJ,OAAOt+C,EAAEwC,KACR,IAAK,OAAQs1C,EAAKyG,UAAY,CAAM,OACpC,IAAK,SAAUzG,EAAKyG,UAAY,CAAM,OACtC,IAAK,SAAUzG,EAAKyG,UAAY,CAAM,OACtC,IAAK,mBAAoBzG,EAAKyG,UAAY,EAAM,OAChD,IAAK,mBAAoBzG,EAAKyG,UAAY,EAAM,QAC/C,MACH,IAAK,OAAQzG,EAAKyG,UAAY,CAAG,OAGjC,IAAK,UAAWzG,EAAKI,OAASl4C,EAAEwC,IAAM8oB,GAAatrB,EAAEwC,KAAO,CAAG,OAC/D,IAAK,YAAas1C,EAAKI,OAAS,CAAG,OAGnC,IAAK,WAAYJ,EAAKG,QAAUj4C,EAAEwC,IAAM8oB,GAAatrB,EAAEwC,KAAO,CAAG,OACjE,IAAK,aAAcs1C,EAAKG,QAAU,CAAG,OAGrC,IAAK,UAAWH,EAAKE,OAASh4C,EAAEwC,IAAM8oB,GAAatrB,EAAEwC,KAAO,CAAG,OAC/D,IAAK,YAAas1C,EAAKE,OAAS,CAAG,OAGnC,IAAK,YAAaF,EAAK0G,SAAWx+C,EAAEwC,IAAM8oB,GAAatrB,EAAEwC,KAAO,CAAG,OACnE,IAAK,cAAes1C,EAAK0G,SAAW,CAAG,OAGvC,IAAK,UAAW1G,EAAK2G,OAASz+C,EAAEwC,IAAM8oB,GAAatrB,EAAEwC,KAAO,CAAG,OAC/D,IAAK,YAAas1C,EAAK2G,OAAS,CAAG,OAGnC,IAAK,MAAO,GAAGz+C,EAAEwC,IAAKs1C,EAAKlqC,IAAM5N,EAAEwC,GAAK,OACxC,IAAK,SAAS,IAAK,QAAS,MAG5B,IAAK,aAAc,GAAGxC,EAAEwC,IAAKs1C,EAAK4G,UAAY1+C,EAAEwC,GAAK,OACrD,IAAK,gBAAgB,IAAK,eAAgB,MAG1C,IAAK,UAAW,GAAGxC,EAAEwC,IAAKs1C,EAAKO,OAAS/zC,SAAStE,EAAEwC,IAAI,GAAK,OAC5D,IAAK,aAAa,IAAK,YAAa,MAGpC,IAAK,UAAW,GAAGxC,EAAEwC,IAAKs1C,EAAK6G,OAAS3+C,EAAEwC,GAAK,OAC/C,IAAK,aAAa,IAAK,YAAa,MAGpC,IAAK,WACJ,GAAGxC,EAAEwC,KAAO,IAAK,KACjBxC,GAAEgrC,SAAW75C,EAAMmT,SAAStE,EAAEwC,IAAK,IACnC,OAGD,IAAK,SACJ,IAAIs1C,EAAKplC,MAAOolC,EAAKplC,QACrB,IAAG1S,EAAE4+C,KAAM9G,EAAKplC,MAAMksC,KAAOtzB,GAAatrB,EAAE4+C,KAE5C,IAAG5+C,EAAEo4C,IAAKN,EAAKplC,MAAM0lC,IAAMp4C,EAAEo4C,IAAIvkD,OAAO,OACnC,IAAGmM,EAAEg+C,QAAS,CAClBlG,EAAKplC,MAAMmsC,MAAQv6C,SAAStE,EAAEg+C,QAAS,GACvC,IAAIc,GAAMplB,GAAOoe,EAAKplC,MAAMmsC,MAC5B,IAAG/G,EAAKplC,MAAMmsC,OAAS,GAAIC,EAAMplB,GAAO,EACxC,KAAIolB,EAAKA,EAAMplB,GAAO,EACtBoe,GAAKplC,MAAM0lC,IAAM0G,EAAI,GAAGzoD,SAAS,IAAMyoD,EAAI,GAAGzoD,SAAS,IAAMyoD,EAAI,GAAGzoD,SAAS,QACvE,IAAG2J,EAAEi+C,MAAO,CAClBnG,EAAKplC,MAAMurC,MAAQ35C,SAAStE,EAAEi+C,MAAO,GACrC,IAAGj+C,EAAEq7C,KAAMvD,EAAKplC,MAAM2oC,KAAOxzC,WAAW7H,EAAEq7C,KAC1C,IAAGr7C,EAAEi+C,OAAS7c,EAAO2d,eAAiB3d,EAAO2d,cAAcC,UAAW,CACrElH,EAAKplC,MAAM0lC,IAAM+C,GAAS/Z,EAAO2d,cAAcC,UAAUlH,EAAKplC,MAAMurC,OAAO7F,IAAKN,EAAKplC,MAAM2oC,MAAQ,IAIrG,MACD,IAAK,YAAY,IAAK,WAAY,MAGlC,IAAK,oBAAqBtD,EAAO,IAAM,OACvC,IAAK,sBAAuBA,EAAO,KAAO,OAG1C,IAAK,WAAW,IAAK,YAAY,IAAK,YAAa,MACnD,IAAK,OAAQA,EAAO,IAAM,OAC1B,IAAK,SAAUA,EAAO,KAAO,OAC7B,QAAS,GAAGv4C,GAAQA,EAAKmtB,IAAK,CAC7B,IAAIorB,EAAM,KAAM,IAAIxgD,OAAM,gBAAkByI,EAAE,GAAK,kBAOvD,QAASi/C,IAAcnmD,EAAG8nC,EAAQphC,GACjCohC,EAAOse,YACP,IAAI7sC,GAAsBuQ,GAAK/oB,EAC/B,KAAI,GAAI5G,GAAE,EAAGA,EAAIof,EAAElf,SAAUF,EAAG2tC,EAAOse,UAAU7sC,EAAEpf,IAAM4G,EAAUwY,EAAEpf,GACrE,IAAIgN,GAAInH,EAAE,GAAG0K,MAAM4lB,GACnB,KAAInpB,EAAG,MACP,KAAIhN,EAAE,EAAGA,EAAIgN,EAAE9M,SAAUF,EAAG,CAC3B,GAAI+M,GAAIupB,GAAYtpB,EAAEhN,GACtB,QAAO62B,GAAS9pB,EAAE,KACjB,IAAK,YAAY,IAAK,cAAc,IAAK,cAAc,IAAK,YAAa,MACzE,IAAK,UAAW,CACf,GAAI+H,GAAEuiB,GAAYwB,GAAS9rB,EAAEm/C,aAAcp8C,EAAEuB,SAAStE,EAAEq1B,SAAS,GACjEuL,GAAOse,UAAUn8C,GAAKgF,CACtB,IAAGhF,EAAE,EAAG,CACP,GAAGA,EAAI,IAAO,CACb,IAAIA,EAAI,IAAOA,EAAI,KAAQA,EAAG,GAAG69B,EAAOse,UAAUn8C,IAAM,KAAM,KAC9D69B,GAAOse,UAAUn8C,GAAKgF,EAEvBoC,GAAUpC,EAAEhF,IAEZ,MACF,IAAK,YAAa,MAClB,QAAS,GAAGvD,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,gBAAkByI,EAAE,GAAK,kBAKlE,QAASo/C,IAAcC,GACtB,GAAIrsD,IAAK,eACP,EAAE,IAAI,GAAG,KAAK,GAAG,KAAW,GAAgB,MAAM6W,QAAQ,SAAS3F,GACpE,IAAI,GAAIjR,GAAIiR,EAAE,GAAIjR,GAAKiR,EAAE,KAAMjR,EAAG,GAAGosD,EAAGpsD,IAAM,KAAMD,EAAEA,EAAEG,QAAW45B,GAAU,SAAS,MAAMsI,SAASpiC,EAAEksD,WAAWt0B,GAAUw0B,EAAGpsD,OAEhI,IAAGD,EAAEG,SAAW,EAAG,MAAO,EAC1BH,GAAEA,EAAEG,QAAU,YACdH,GAAE,GAAK+5B,GAAU,UAAW,MAAQmtB,MAAMlnD,EAAEG,OAAO,IAAKqC,QAAQ,KAAM,IACtE,OAAOxC,GAAEQ,KAAK,IAIf,GAAI8rD,KAAgB,WAAY,SAAU,SAAU,WAAY,OAChE,IAAIC,KAAgB,iBAAkB,cAAe,YAAa,YAAa,oBAAqB,kBAAmB,cAAe,cACtI,SAASC,IAAc1mD,EAAG8nC,EAAQphC,GACjCohC,EAAO6e,SACP,IAAIC,EACJ,IAAI3H,GAAO,OACVj/C,EAAE,GAAG0K,MAAM4lB,SAAevf,QAAQ,SAAS7V,GAC3C,GAAIgM,GAAIupB,GAAYv1B,GAAIf,EAAI,CAC5B,QAAO62B,GAAS9pB,EAAE,KACjB,IAAK,YAAY,IAAK,aAAa,IAAK,cAAc,IAAK,aAAc,MAGzE,IAAK,OAAO,IAAK,QAChB0/C,EAAK1/C,QACE0/C,GAAG,EACV,KAAIzsD,EAAI,EAAGA,EAAIqsD,GAAYnsD,SAAUF,EAAG,GAAGysD,EAAGJ,GAAYrsD,IACzDysD,EAAGJ,GAAYrsD,IAAMqR,SAASo7C,EAAGJ,GAAYrsD,IAAK,GACnD,KAAIA,EAAI,EAAGA,EAAIssD,GAAYpsD,SAAUF,EAAG,GAAGysD,EAAGH,GAAYtsD,IACzDysD,EAAGH,GAAYtsD,IAAMq4B,GAAao0B,EAAGH,GAAYtsD,IAClD,IAAG2tC,EAAOse,WAAaQ,EAAGrqB,SAAW,IAAO,CAC3C,IAAIpiC,EAAI,IAAOA,EAAI,KAAQA,EAAG,GAAG2tC,EAAOse,UAAUQ,EAAGrqB,WAAauL,EAAOse,UAAUjsD,GAAI,CAAEysD,EAAGrqB,SAAWpiC,CAAG,QAE3G2tC,EAAO6e,OAAOjnD,KAAKknD,EAAK,OACzB,IAAK,QAAS,MAGd,IAAK,cAAc,IAAK,eACvB,GAAIC,KACJ,IAAG3/C,EAAE4/C,SAAUD,EAAUC,SAAW5/C,EAAE4/C,QACtC,IAAG5/C,EAAE6/C,WAAYF,EAAUE,WAAa7/C,EAAE6/C,UAC1C,IAAG7/C,EAAE8/C,cAAgB,KAAMH,EAAUG,aAAe9/C,EAAE8/C,YACtD,IAAG9/C,EAAE+/C,OAAQJ,EAAUI,OAAS//C,EAAE+/C,MAClC,IAAG//C,EAAEggD,SAAUL,EAAUK,SAAW10B,GAAatrB,EAAEggD,SACnDN,GAAGC,UAAYA,CACf,OACD,IAAK,eAAgB,MAGrB,IAAK,cACJ,MACD,IAAK,iBAAiB,IAAK,gBAAiB,MAG5C,IAAK,oBAAqB5H,EAAO,IAAM,OACvC,IAAK,sBAAuBA,EAAO,KAAO,OAG1C,IAAK,WAAW,IAAK,YAAY,IAAK,YAAa,MACnD,IAAK,OAAQA,EAAO,IAAM,OAC1B,IAAK,SAAUA,EAAO,KAAO,OAC7B,QAAS,GAAGv4C,GAAQA,EAAKmtB,IAAK,CAC7B,IAAIorB,EAAM,KAAM,IAAIxgD,OAAM,gBAAkByI,EAAE,GAAK,oBAMvD,QAASigD,IAAcC,GACtB,GAAIltD,KACJA,GAAEA,EAAEG,QAAW45B,GAAU,UAAU,KACnCmzB,GAAQr2C,QAAQ,SAASxS,GACxBrE,EAAEA,EAAEG,QAAW45B,GAAU,KAAM,KAAM11B,IAEtCrE,GAAEA,EAAEG,QAAU,YACd,IAAGH,EAAEG,SAAW,EAAG,MAAO,EAC1BH,GAAE,GAAK+5B,GAAU,UAAU,MAAOmtB,MAAMlnD,EAAEG,OAAO,IAAIqC,QAAQ,KAAK,IAClE,OAAOxC,GAAEQ,KAAK,IAIf,GAAI2sD,IAAe,QAAUC,MAC7B,GAAIC,GAAc,uDAClB,IAAIC,GAAc,uDAClB,IAAIC,GAAa,mDACjB,IAAIC,GAAa,mDACjB,IAAIC,GAAe,uDAEnB,OAAO,SAASN,GAAcptD,EAAMquC,EAAQ5hC,GAC3C,GAAIohC,KACJ,KAAI7tC,EAAM,MAAO6tC,EACjB7tC,GAAOA,EAAKyC,QAAQ,sBAAsB,IAAIA,QAAQ,+BAA+B,GAErF,IAAIsD,EAGJ,IAAIA,EAAE/F,EAAKyQ,MAAM68C,GAAepB,GAAcnmD,EAAG8nC,EAAQphC,EAGzD,IAAI1G,EAAE/F,EAAKyQ,MAAMg9C,GAAcrC,GAAYrlD,EAAG8nC,EAAQQ,EAAQ5hC,EAG9D,IAAI1G,EAAE/F,EAAKyQ,MAAM+8C,GAAc3C,GAAY9kD,EAAG8nC,EAAQQ,EAAQ5hC,EAG9D,IAAI1G,EAAE/F,EAAKyQ,MAAMi9C,GAAgBlD,GAAczkD,EAAG8nC,EAAQQ,EAAQ5hC,EAMlE,IAAI1G,EAAE/F,EAAKyQ,MAAM88C,GAAed,GAAc1mD,EAAG8nC,EAAQphC,EAOzD,OAAOohC,MAIR,SAAS8f,IAActO,EAAI5yC,GAC1B,GAAIxM,IAAKg2B,GAAY+D,GAAU,aAAc,MAC5C2U,MAAStT,GAAW,GACpB4Z,WAAY3a,GAAMY,MACdzsB,CACL,IAAG4wC,EAAG1pC,MAAQlH,EAAI49C,GAAchN,EAAG1pC,OAAS,KAAM1V,EAAEA,EAAEG,QAAUqO,CAChExO,GAAEA,EAAEG,QAAU,mIACdH,GAAEA,EAAEG,QAAU,0HACdH,GAAEA,EAAEG,QAAU,yFACdH,GAAEA,EAAEG,QAAU,8FACd,IAAIqO,EAAIy+C,GAAczgD,EAAK0gD,SAAWltD,EAAEA,EAAEG,QAAU,CACpDH,GAAEA,EAAEG,QAAU,sFACdH,GAAEA,EAAEG,QAAU,mBACdH,GAAEA,EAAEG,QAAU,sGAEd,IAAGH,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,eAAmBH,GAAE,GAAGA,EAAE,GAAGwC,QAAQ,KAAK,KACxE,MAAOxC,GAAEQ,KAAK,IAGf,GAAImtD,KACH,WAAY,WAAY,WAAY,WACpC,eAAgB,eAAgB,eAChC,eAAgB,eAAgB,eAChC,aAAc,gBAGf,SAASC,IAAgB9nD,EAAGsoC,EAAQ5hC,GACnC4hC,EAAO2d,cAAcC,YACrB,IAAItsC,OACH5Z,EAAE,GAAG0K,MAAM4lB,SAAevf,QAAQ,SAAS7V,GAC3C,GAAIgM,GAAIupB,GAAYv1B,EACpB,QAAOgM,EAAE,IAER,IAAK,gBAAgB,IAAK,iBAAkB,MAG5C,IAAK,aACJ0S,EAAM0lC,IAAMp4C,EAAEwC,GAAK,OAGpB,IAAK,YACJkQ,EAAM0lC,IAAMp4C,EAAE6gD,OAAS,OAcxB,IAAK,WAAW,IAAK,YACrB,IAAK,WAAW,IAAK,YACrB,IAAK,WAAW,IAAK,YACrB,IAAK,WAAW,IAAK,YACrB,IAAK,eAAe,IAAK,gBACzB,IAAK,eAAe,IAAK,gBACzB,IAAK,eAAe,IAAK,gBACzB,IAAK,eAAe,IAAK,gBACzB,IAAK,eAAe,IAAK,gBACzB,IAAK,eAAe,IAAK,gBACzB,IAAK,aAAa,IAAK,cACvB,IAAK,gBAAgB,IAAK,gBACzB,GAAI7gD,EAAE,GAAG3K,OAAO,KAAO,IAAK,CAC3B+rC,EAAO2d,cAAcC,UAAU2B,GAAmBjuD,QAAQsN,EAAE,KAAO0S,CACnEA,UACM,CACNA,EAAMzC,KAAOjQ,EAAE,GAAGnM,MAAM,EAAGmM,EAAE,GAAG7M,OAAS,GAE1C,MAED,QAAS,GAAGqM,GAAQA,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,gBAAkByI,EAAE,GAAK,qBAM1E,QAAS8gD,OAGT,QAASC,OAET,GAAIC,IAAY,4CAChB,IAAIC,IAAY,8CAChB,IAAIC,IAAY,4CAGhB,SAASC,IAAoBpuD,EAAMquC,EAAQ5hC,GAC1C4hC,EAAO2d,gBAEP,IAAIjmD,KAIF,YAAakoD,GAAWJ,KAExB,aAAcK,GAAWH,KAEzB,YAAaI,GAAWH,KACxBl3C,QAAQ,SAAS5J,GAClB,KAAKnH,EAAE/F,EAAKyQ,MAAMvD,EAAE,KAAM,KAAM,IAAI1I,OAAM0I,EAAE,GAAK,8BACjDA,GAAE,GAAGnH,EAAGsoC,EAAQ5hC,KAIlB,GAAI4hD,IAAe,oDAGnB,SAASC,IAAgBtuD,EAAMyM,GAE9B,IAAIzM,GAAQA,EAAKI,SAAW,EAAGJ,EAAOuuD,IAEtC,IAAIxoD,EACJ,IAAIsoC,KAGJ,MAAKtoC,EAAE/F,EAAKyQ,MAAM49C,KAAgB,KAAM,IAAI7pD,OAAM,mCAClD4pD,IAAoBroD,EAAE,GAAIsoC,EAAQ5hC,EAClC4hC,GAAO1wB,IAAM3d,CACb,OAAOquC,GAGR,QAASkgB,IAAYC,EAAQ/hD,GAC5B,GAAGA,GAAQA,EAAKgiD,UAAW,MAAOhiD,GAAKgiD,SACvC,IAAGD,SAAiBA,GAAO7wC,KAAO,SAAU,MAAO6wC,GAAO7wC,GAC1D,IAAI1d,IAAKg2B,GACTh2B,GAAEA,EAAEG,QAAU,+FACdH,GAAEA,EAAEG,QAAW,mBAEfH,GAAEA,EAAEG,QAAY,6BAChBH,GAAEA,EAAEG,QAAa,8DACjBH,GAAEA,EAAEG,QAAa,0DACjBH,GAAEA,EAAEG,QAAa,0CACjBH,GAAEA,EAAEG,QAAa,0CACjBH,GAAEA,EAAEG,QAAa,kDACjBH,GAAEA,EAAEG,QAAa,kDACjBH,GAAEA,EAAEG,QAAa,kDACjBH,GAAEA,EAAEG,QAAa,kDACjBH,GAAEA,EAAEG,QAAa,kDACjBH,GAAEA,EAAEG,QAAa,kDACjBH,GAAEA,EAAEG,QAAa,8CACjBH,GAAEA,EAAEG,QAAa,oDACjBH,GAAEA,EAAEG,QAAY,gBAEhBH,GAAEA,EAAEG,QAAY,8BAChBH,GAAEA,EAAEG,QAAa,eACjBH,GAAEA,EAAEG,QAAc,+BAClBH,GAAEA,EAAEG,QAAc,qBAClBH,GAAEA,EAAEG,QAAc,qBAClBH,GAAEA,EAAEG,QAAc,6CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,uCAClBH,GAAEA,EAAEG,QAAc,yCAClBH,GAAEA,EAAEG,QAAc,oDAClBH,GAAEA,EAAEG,QAAc,oDAClBH,GAAEA,EAAEG,QAAc,2CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,2CAClBH,GAAEA,EAAEG,QAAc,2CAClBH,GAAEA,EAAEG,QAAc,8CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,6CAClBH,GAAEA,EAAEG,QAAc,yDAClBH,GAAEA,EAAEG,QAAc,uDAClBH,GAAEA,EAAEG,QAAc,uDAClBH,GAAEA,EAAEG,QAAc,4CAClBH,GAAEA,EAAEG,QAAc,2CAClBH,GAAEA,EAAEG,QAAc,4CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,sDAClBH,GAAEA,EAAEG,QAAc,4CAClBH,GAAEA,EAAEG,QAAc,4CAClBH,GAAEA,EAAEG,QAAc,8CAClBH,GAAEA,EAAEG,QAAc,iDAClBH,GAAEA,EAAEG,QAAc,oDAClBH,GAAEA,EAAEG,QAAc,oDAClBH,GAAEA,EAAEG,QAAc,qDAClBH,GAAEA,EAAEG,QAAc,4CAClBH,GAAEA,EAAEG,QAAa,gBACjBH,GAAEA,EAAEG,QAAa,eACjBH,GAAEA,EAAEG,QAAc,+BAClBH,GAAEA,EAAEG,QAAc,qBAClBH,GAAEA,EAAEG,QAAc,qBAClBH,GAAEA,EAAEG,QAAc,6CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,uCAClBH,GAAEA,EAAEG,QAAc,yCAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,2CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,2CAClBH,GAAEA,EAAEG,QAAc,2CAClBH,GAAEA,EAAEG,QAAc,6CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,6CAClBH,GAAEA,EAAEG,QAAc,yDAClBH,GAAEA,EAAEG,QAAc,uDAClBH,GAAEA,EAAEG,QAAc,uDAClBH,GAAEA,EAAEG,QAAc,4CAClBH,GAAEA,EAAEG,QAAc,2CAClBH,GAAEA,EAAEG,QAAc,4CAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc,sDAClBH,GAAEA,EAAEG,QAAc,4CAClBH,GAAEA,EAAEG,QAAc,4CAClBH,GAAEA,EAAEG,QAAc,8CAClBH,GAAEA,EAAEG,QAAc,iDAClBH,GAAEA,EAAEG,QAAc,oDAClBH,GAAEA,EAAEG,QAAc,0CAClBH,GAAEA,EAAEG,QAAc;AAClBH,EAAEA,EAAEG,QAAc,4CAClBH,GAAEA,EAAEG,QAAa,gBACjBH,GAAEA,EAAEG,QAAY,iBAEhBH,GAAEA,EAAEG,QAAY,6BAChBH,GAAEA,EAAEG,QAAa,kBACjBH,GAAEA,EAAEG,QAAc,uDAClBH,GAAEA,EAAEG,QAAc,+BAClBH,GAAEA,EAAEG,QAAe,WACnBH,GAAEA,EAAEG,QAAgB,2GACpBH,GAAEA,EAAEG,QAAgB,+GACpBH,GAAEA,EAAEG,QAAgB,gHACpBH,GAAEA,EAAEG,QAAe,YACnBH,GAAEA,EAAEG,QAAe,oCACnBH,GAAEA,EAAEG,QAAc,eAClBH,GAAEA,EAAEG,QAAc,+BAClBH,GAAEA,EAAEG,QAAe,WACnBH,GAAEA,EAAEG,QAAgB,mIACpBH,GAAEA,EAAEG,QAAgB,uIACpBH,GAAEA,EAAEG,QAAe,YACnBH,GAAEA,EAAEG,QAAe,oCACnBH,GAAEA,EAAEG,QAAc,eAClBH,GAAEA,EAAEG,QAAa,mBACjBH,GAAEA,EAAEG,QAAa,gBACjBH,GAAEA,EAAEG,QAAc,kMAClBH,GAAEA,EAAEG,QAAc,wIAClBH,GAAEA,EAAEG,QAAc,wIAClBH,GAAEA,EAAEG,QAAa,iBACjBH,GAAEA,EAAEG,QAAa,oBACjBH,GAAEA,EAAEG,QAAc,iBAClBH,GAAEA,EAAEG,QAAe,eACnBH,GAAEA,EAAEG,QAAgB,mJACpBH,GAAEA,EAAEG,QAAe,gBACnBH,GAAEA,EAAEG,QAAc,kBAClBH,GAAEA,EAAEG,QAAc,iBAClBH,GAAEA,EAAEG,QAAe,eACnBH,GAAEA,EAAEG,QAAgB,mJACpBH,GAAEA,EAAEG,QAAe,gBACnBH,GAAEA,EAAEG,QAAc,kBAClBH,GAAEA,EAAEG,QAAc,iBAClBH,GAAEA,EAAEG,QAAe,eACnBH,GAAEA,EAAEG,QAAgB,mJACpBH,GAAEA,EAAEG,QAAe,gBACnBH,GAAEA,EAAEG,QAAe,4LACnBH,GAAEA,EAAEG,QAAe,kDACnBH,GAAEA,EAAEG,QAAc,kBAClBH,GAAEA,EAAEG,QAAa,qBACjBH,GAAEA,EAAEG,QAAa,oBACjBH,GAAEA,EAAEG,QAAc,uDAClBH,GAAEA,EAAEG,QAAc,+BAClBH,GAAEA,EAAEG,QAAe,WACnBH,GAAEA,EAAEG,QAAgB,2GACpBH,GAAEA,EAAEG,QAAgB,qIACpBH,GAAEA,EAAEG,QAAgB,iHACpBH,GAAEA,EAAEG,QAAe,YACnBH,GAAEA,EAAEG,QAAe,0FACnBH,GAAEA,EAAEG,QAAc,eAClBH,GAAEA,EAAEG,QAAc,+BAClBH,GAAEA,EAAEG,QAAe,WACnBH,GAAEA,EAAEG,QAAgB,2GACpBH,GAAEA,EAAEG,QAAgB,iHACpBH,GAAEA,EAAEG,QAAe,YACnBH,GAAEA,EAAEG,QAAe,wFACnBH,GAAEA,EAAEG,QAAc,eAClBH,GAAEA,EAAEG,QAAa,qBACjBH,GAAEA,EAAEG,QAAY,gBAChBH,GAAEA,EAAEG,QAAW,oBAEfH,GAAEA,EAAEG,QAAW,oBACfH,GAAEA,EAAEG,QAAY,WAChBH,GAAEA,EAAEG,QAAa,kSACjBH,GAAEA,EAAEG,QAAY,YAChBH,GAAEA,EAAEG,QAAY,WAChBH,GAAEA,EAAEG,QAAa,kSACjBH,GAAEA,EAAEG,QAAY,YAChBH,GAAEA,EAAEG,QAAW,qBACfH,GAAEA,EAAEG,QAAW,wBACfH,GAAEA,EAAEG,QAAU,YACd,OAAOH,GAAEQ,KAAK,IAEf,QAASiuD,IAAiB1uD,EAAMkd,EAAMzQ,GACpC,GAAIrH,IAAQupD,SAAWC,QAAUC,SACjC,KAAK7uD,EACH,MAAOoF,EACT,IAAI4/C,GAAO,KACX,IAAI8J,GAAW,CACf,IAAIC,EACJ/uD,GAAKyC,QAAQ4zB,GAAU,SAASp1B,GAC9B,GAAIgM,GAAIupB,GAAYv1B,EACpB,QAAQ81B,GAAS9pB,EAAE,KACjB,IAAK,QACH,MACF,IAAK,aACL,IAAK,cACH,MACF,IAAK,kBACL,IAAK,mBACH,MACF,IAAK,gBACH7H,EAAIupD,MAAMlpD,MAAOyX,KAAMjQ,EAAEiQ,MACzB,OACF,IAAK,kBACH,MACF,IAAK,kBACH,IAAK,GAAIlN,GAAI,EAAGA,EAAI5K,EAAIupD,MAAMvuD,SAAU4P,EACtC,GAAI5K,EAAIupD,MAAM3+C,GAAGkN,MAAQjQ,EAAEiQ,KACzB6xC,EAAW3pD,EAAIupD,MAAM3+C,EACzB,OACF,IAAK,oBACH,MACF,IAAK,OACH,MACF,IAAK,QACH,MACF,IAAK,MACH,GAAI8+C,GAAY,EACd1pD,EAAIwpD,KAAKnpD,MAAO8J,KAAMnK,EAAIupD,MAAM1hD,EAAElH,EAAI,GAAGmX,KAAM4uC,OAAQ7+C,EAAEnH,QACtD,IAAIgpD,GAAY,EACnB1pD,EAAIypD,MAAMppD,MAAO8J,KAAMnK,EAAIupD,MAAM1hD,EAAElH,EAAI,GAAGmX,KAAM4uC,OAAQ7+C,EAAEnH,GAC5D,OACF,IAAK,QACH,MACF,IAAK,gBACHgpD,EAAW,CACX,OACF,IAAK,kBACHA,EAAW,CACX,OACF,IAAK,iBACHA,EAAW,CACX,OACF,IAAK,mBACHA,EAAW,CACX,OACF,IAAK,WACL,IAAK,YACL,IAAK,aACL,IAAK,YACH,MACF,IAAK,OACH9J,EAAO,IACP,OACF,IAAK,SACHA,EAAO,KACP,OACF,IAAK,OACH,IAAK+J,EACH,KACF,KAAKA,EAASC,QACZD,EAASC,UACXD,GAASC,QAAQvpD,MAAMwH,EAAE/M,EACzB,OACF,QACE,IAAK8kD,IAASv4C,GAAQ,SAAY,GAAIA,EAAKmtB,KACzC,KAAM,IAAIp1B,OAAM,gBAAkByI,EAAE,GAAK,iBAE/C,MAAOhM,IAET,OAAOmE,GAET,QAAS6pD,MACP,GAAIhvD,IAAKg2B,GACTh2B,GAAEwF,KAAK,o2BACP,OAAOxF,GAAEQ,KAAK,IAGhB,QAASyuD,OAMT,QAASC,IAAgBnvD,EAAM0xC,EAAKx0B,EAAMuE,GACzC,IAAIzhB,EAAM,MAAOA,EACjB,IAAIyM,GAAOgV,KAEX,IAAIujC,GAAO,MAAOv5B,EAAM,KAExBuT,IAAah/B,EAAM,QAASovD,GAAY3/C,EAAK4J,EAAG+lB,GAC/C,GAAG3T,EAAK,MACR,QAAO2T,GACN,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,KACJ,MAED,IAAK,IACJ4lB,EAAO,IAAM,OACd,IAAK,IACJA,EAAO,KAAO,OAEf,QACC,GAAG3rC,EAAEtM,EAAE,MACF,KAAIi4C,GAAQv4C,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,uBAAyB46B,EAAG97B,SAAS,QAEhFmJ,GAIJ,QAAS4iD,IAAcrvD,EAAM+tC,GAC5B,IAAI/tC,EAAM,MAAO,IAYjB,IAAIsvD,IAAMtvD,EAAKyQ,MAAM,kCAAkC,GAAG,KAAK,EAE/D,OAAOs9B,GAAK,OAAOuhB,GAAI1d,OAIxB,QAAS2d,IAAUpd,EAAK3E,GACvB,GAAIgiB,IAAS,MAAO,MAEpB,IAAIC,IAAQ,SAASD,EAAM,GAAGA,EAAM,GAAGA,EAAM,GAAGA,EAAM,GAAG,OAAO/uD,KAAK,IACrE,IAAIR,IACH+5B,GAAU,MAAO,MAAQ01B,UAAWp0B,GAAOx1B,EAAG6pD,UAAWr0B,GAAOr7B,EAAG2vD,UAAWt0B,GAAOr6B,EAAG4uD,WAAYv0B,GAAO/e,KAAM9Z,QAAQ,MAAM,KAC/Hu3B,GAAU,gBAAiBA,GAAU,UAAW,MAAO81B,QAAQ,OAAQ9vD,KAAOmyC,KAAQ2d,QAAQ,SAG/F,IAAIC,GAAW,MAAQ5d,CAEvB,IAAI6d,GAAYxiB,KAChB,IAAGwiB,EAAU5vD,OAAS,EAAGH,EAAEwF,KAAKu0B,GAAU,eACzCA,GAAU,WAAY,MAAOi2B,UAAU,UACvCj2B,GAAU,SAAU,MAAOk2B,gBAAgB,IAAKC,gBAAgB,UAC/D1vD,KAAK,KAAM6uD,GAAG,cAAec,UAAUZ,EAAM/uD,KAAK,KAAM4vD,QAAQ,IAAKxtC,KAAK4sC,IAE5EO,GAAUl5C,QAAQ,SAAS7V,KAAO8uD,CAAU9vD,GAAEwF,KAAK6qD,GAAkBrvD,EAAG8uD,KACxE9vD,GAAEwF,KAAK,SACP,OAAOxF,GAAEQ,KAAK,IAGf,QAAS6vD,IAAkBrvD,EAAG8uD,GAC7B,GAAIzrD,GAAIo9B,GAAYzgC,EAAE,GACtB,IAAIsvD,IAAYC,OAAS,UAAWjhD,KAAO,WAC3C,IAAGghD,EAAShhD,MAAQ,WAAYghD,EAASE,MAAQ,MACjD,IAAIC,GAAWH,EAAShhD,MAAQ,WAAayqB,GAAU,SAAU,MAAOzqB,KAAK,mBAAoBugD,QAAQ,SAAW,IACpH,IAAIa,GAAU32B,GAAU,SAAU02B,EAAUH,EAE5C,IAAIK,IAAYC,GAAG,IAAKC,SAAW,IAEnC,QACA,WAAa/2B,IACZu1B,GAAG,WAAaS,EAChBxgD,KAAK,eACL4/B,MAAM,yFAA2FluC,EAAE,GAAG0/C,OAAS,qBAAuB,IACtIoQ,UAAU,UACVC,YAAY,YACR,IACJL,EACA32B,GAAU,WAAY,KAAM42B,GAC5B52B,GAAU,SAAU,MAAOm2B,gBAAgB,SAC3C,6DACA,mCACC,qBACA,qBAEAr2B,GAAS,YAAax1B,EAAEA,EAAE,EAAG,EAAGA,EAAE6M,EAAE,EAAG,EAAG7M,EAAEA,EAAE,EAAG,GAAIA,EAAE6M,EAAE,EAAG,IAAI1Q,KAAK,MACrEq5B,GAAS,aAAc,SACvBA,GAAS,QAASv5B,OAAO+D,EAAE6M,IAC3B2oB,GAAS,WAAYv5B,OAAO+D,EAAEA,IAC9BrD,EAAE,GAAG0/C,OAAS,GAAK,eACpB,kBACD,cACElgD,KAAK,IAER,QAASwwD,IAAsBvuB,EAAO8K,EAAU0jB,EAAUziB,GACzD,GAAIzL,GAAQt/B,MAAMW,QAAQq+B,EAC1B,IAAIrC,EACJmN,GAAS12B,QAAQ,SAASq6C,GACzB,GAAIhgD,GAAIuwB,GAAYyvB,EAAQC,IAC5B,IAAGpuB,EAAO,CACT,IAAIN,EAAMvxB,EAAEA,GAAIuxB,EAAMvxB,EAAEA,KACxBkvB,GAAOqC,EAAMvxB,EAAEA,GAAGA,EAAE7M,OACd+7B,GAAOqC,EAAMyuB,EAAQC,IAC5B,KAAK/wB,EAAM,CACVA,GAASt6B,EAAE,IACX,IAAGi9B,EAAON,EAAMvxB,EAAEA,GAAGA,EAAE7M,GAAK+7B,MACvBqC,GAAMyuB,EAAQC,KAAO/wB,CAC1B,IAAIK,GAAQyB,GAAkBO,EAAM,SAAS,kBAC7C,IAAGhC,EAAM58B,EAAEqN,EAAIA,EAAEA,EAAGuvB,EAAM58B,EAAEqN,EAAIA,EAAEA,CAClC,IAAGuvB,EAAMz9B,EAAEkO,EAAIA,EAAEA,EAAGuvB,EAAMz9B,EAAEkO,EAAIA,EAAEA,CAClC,IAAGuvB,EAAM58B,EAAEQ,EAAI6M,EAAE7M,EAAGo8B,EAAM58B,EAAEQ,EAAI6M,EAAE7M,CAClC,IAAGo8B,EAAMz9B,EAAEqB,EAAI6M,EAAE7M,EAAGo8B,EAAMz9B,EAAEqB,EAAI6M,EAAE7M,CAClC,IAAIinB,GAAUqW,GAAalB,EAC3B,IAAInV,IAAYmX,EAAM,QAASA,EAAM,QAAUnX,EAGhD,IAAK8U,EAAK/7B,EAAG+7B,EAAK/7B,IAClB,IAAIrE,IAAM6lB,EAAGqrC,EAAQE,OAAQtrD,EAAGorD,EAAQprD,EAAGoL,EAAGggD,EAAQhgD,EAAGpE,EAAGmkD,EAC5D,IAAGC,EAAQhsC,EAAGllB,EAAEklB,EAAIgsC,EAAQhsC,CAG5B,KAAI,GAAIjlB,GAAImgC,EAAK/7B,EAAElE,OAAS,EAAGF,GAAK,IAAKA,EAAG,CAC3C,IAAIgxD,GAAY7wB,EAAK/7B,EAAEpE,GAAG6M,EAAG,MAC7B,IAAGmkD,IAAa7wB,EAAK/7B,EAAEpE,GAAG6M,EAAGszB,EAAK/7B,EAAE4oB,OAAOhtB,EAAG,GAE/C,GAAGgxD,GAAYziB,EAAQ,IAAIvuC,EAAI,EAAGA,EAAIuuC,EAAOruC,SAAUF,EAAG,CACzD,GAAGD,EAAE6lB,GAAK2oB,EAAOvuC,GAAGovD,GAAI,CAAErvD,EAAE6lB,EAAI2oB,EAAOvuC,GAAGgd,MAAQjd,EAAE6lB,CAAG,QAExDua,EAAK/7B,EAAEmB,KAAKxF,KAKd,QAASqxD,IAAmBtxD,EAAMyM,GAEjC,GAAGzM,EAAKyQ,MAAM,2BAA4B,QAC1C,IAAI8gD,KACJ,IAAIC,KACJ,IAAIC,GAAUzxD,EAAKyQ,MAAM,kDACzB,IAAGghD,GAAWA,EAAQ,GAAIA,EAAQ,GAAG1tD,MAAM,mBAAmB+S,QAAQ,SAAS7V,GAC9E,GAAGA,IAAM,IAAMA,EAAEkrB,SAAW,GAAI,MAChC,IAAIrG,GAAI7kB,EAAEwP,MAAM,6BAChB,IAAGqV,EAAGyrC,EAAQ9rD,KAAKqgB,EAAE,KAEtB,IAAI4rC,GAAU1xD,EAAKyQ,MAAM,0DACzB,IAAGihD,GAAWA,EAAQ,GAAIA,EAAQ,GAAG3tD,MAAM,oBAAoB+S,QAAQ,SAAS7V,GAC/E,GAAGA,IAAM,IAAMA,EAAEkrB,SAAW,GAAI,MAChC,IAAIwlC,GAAK1wD,EAAEwP,MAAM,0BACjB,KAAIkhD,EAAI,MACR,IAAI1kD,GAAIupB,GAAYm7B,EAAG,GACvB,IAAIR,IAAaE,OAAQpkD,EAAE2kD,UAAYL,EAAQtkD,EAAE2kD,WAAa,eAAgBR,IAAKnkD,EAAEmkD,IAAKS,KAAM5kD,EAAE4kD,KAClG,IAAIxxB,GAAOqB,GAAYz0B,EAAEmkD,IACzB,IAAG3kD,EAAK4rC,WAAa5rC,EAAK4rC,WAAahY,EAAKlvB,EAAG,MAC/C,IAAI2gD,GAAY7wD,EAAEwP,MAAM,4CACxB,IAAIshD,KAAOD,KAAeA,EAAU,IAAMlL,GAASkL,EAAU,MAAQ3gD,EAAE,GAAGpL,EAAE,GAAGof,EAAE,GACjFgsC,GAAQhgD,EAAI4gD,EAAG5gD,CACf,IAAG4gD,EAAG5gD,GAAK,UAAW4gD,EAAGhsD,EAAIgsD,EAAG5sC,EAAI,EACpCgsC,GAAQprD,GAAKgsD,EAAGhsD,GAAG,IAAItD,QAAQ,QAAQ,MAAMA,QAAQ,MAAM,KAC3D,IAAGgK,EAAKo6C,SAAUsK,EAAQhsC,EAAI4sC,EAAG5sC,CACjCqsC,GAAY/rD,KAAK0rD,IAElB,OAAOK,GAGR,QAASQ,IAAmBhyD,GAC3B,GAAIC,IAAKg2B,GAAY+D,GAAU,WAAY,MAAQ2U,MAAStT,GAAW,KAEvE,IAAI42B,KACJhyD,GAAEwF,KAAK,YACPzF,GAAK8W,QAAQ,SAAS7V,GAAKA,EAAE,GAAG6V,QAAQ,SAASrI,GAAK,GAAIqX,GAAIgS,GAAUrpB,EAAEqX,EACzE,IAAGmsC,EAAQtyD,QAAQmmB,KAAO,EAAG,CAC5BmsC,EAAQxsD,KAAKqgB,EACb7lB,GAAEwF,KAAK,WAAaqgB,EAAI,aAEzB,GAAGrX,EAAE1B,GAAK0B,EAAEyjD,IAAMD,EAAQtyD,QAAQ,MAAQ8O,EAAEyjD,MAAQ,EAAG,CACtDD,EAAQxsD,KAAK,MAAQgJ,EAAEyjD,GACvBjyD,GAAEwF,KAAK,WAAa,MAAQgJ,EAAEyjD,GAAK,iBAGrC,IAAGD,EAAQ7xD,QAAU,EAAG,CAAE6xD,EAAQxsD,KAAK,UAAYxF,GAAEwF,KAAK,4BAC1DxF,EAAEwF,KAAK,aACPxF,GAAEwF,KAAK,gBACPzF,GAAK8W,QAAQ,SAAStR,GAErB,GAAI2sD,GAAa,EAAGC,KAASC,EAAO,CACpC,IAAG7sD,EAAE,GAAG,IAAMA,EAAE,GAAG,GAAGuH,GAAKvH,EAAE,GAAG,GAAG0sD,GAAIC,EAAaF,EAAQtyD,QAAQ,MAAQ6F,EAAE,GAAG,GAAG0sD,GACpF1sD,GAAE,GAAGsR,QAAQ,SAASxS,GACrB,GAAGA,EAAEwhB,EAAGqsC,EAAaF,EAAQtyD,QAAQm4B,GAAUxzB,EAAEwhB,GACjD,IAAGxhB,EAAEyI,IAAKslD,CACVD,GAAG3sD,KAAKnB,EAAEyB,GAAK,KAAO,GAAK+xB,GAAUxzB,EAAEyB,KAExC,IAAGssD,IAAS,EAAG,CACd7sD,EAAE,GAAGsR,QAAQ,SAASxS,GACrBrE,EAAEwF,KAAK,iBAAmBD,EAAE,GAAK,eAAiBysD,EAAQtyD,QAAQm4B,GAAUxzB,EAAEwhB,IAAM,WACpF7lB,GAAEwF,KAAKq0B,GAAS,IAAKx1B,EAAEyB,GAAK,KAAO,GAAK+xB,GAAUxzB,EAAEyB,IACpD9F,GAAEwF,KAAK,2BAEF,CAENxF,EAAEwF,KAAK,iBAAmBD,EAAE,GAAK,eAAiB2sD,EAAa,WAC/D,IAAIpsD,GAAI,iBAAoBqsD,EAAG,GAAM,IACrC,KAAI,GAAIlyD,GAAI,EAAGA,EAAIkyD,EAAGhyD,SAAUF,EAAG6F,GAAK,eAAiBqsD,EAAGlyD,GAAK,IACjED,GAAEwF,KAAKq0B,GAAS,IAAKhC,GAAU/xB,IAC/B9F,GAAEwF,KAAK,uBAGTxF,GAAEwF,KAAK,iBACP,IAAGxF,EAAEG,OAAO,EAAG,CAAEH,EAAEA,EAAEG,QAAU,aAAiBH,GAAE,GAAGA,EAAE,GAAGwC,QAAQ,KAAK,KACvE,MAAOxC,GAAEQ,KAAK,IAIf,QAAS6xD,IAAgBtyD,EAAMyM,GAC9B,GAAIrH,KACJ,IAAI4/C,GAAO,MAAOmM,KAAcoB,EAAO,CACvCvyD,GAAKyC,QAAQ4zB,GAAU,QAASm8B,GAAUvxD,EAAGsP,GAC5C,GAAItD,GAAIupB,GAAYv1B,EACpB,QAAO81B,GAAS9pB,EAAE,KACjB,IAAK,QAAS,MAGd,IAAK,oBAAqB,MAC1B,IAAK,sBAAuB,MAG5B,IAAK,mBAAoBkkD,GAAWE,OAAQpkD,EAAEwlD,SAAUZ,KAAM5kD,EAAEqiD,GAAI8B,IAAKnkD,EAAEmkD,IAAKrkD,EAAG,EAAI,OACvF,IAAK,qBAAsB,GAAGokD,EAAQprD,GAAK,KAAMX,EAAIK,KAAK0rD,EAAU,OAEpE,IAAK,UAAU,IAAK,QAASoB,EAAOhiD,EAAMtP,EAAEb,MAAQ,OACpD,IAAK,UAAW+wD,EAAQprD,EAAI/F,EAAKc,MAAMyxD,EAAMhiD,GAAK9N,QAAQ,QAAS,MAAMA,QAAQ,MAAO,KAAO,OAG/F,IAAK,aAAa,IAAK,aAAcuiD,EAAO,IAAM,OAClD,IAAK,cAAeA,EAAO,KAAO,OAKlC,IAAK,WAAW,IAAK,YAAY,IAAK,aAAa,IAAK,YAAa,MAErE,IAAK,OAAQA,EAAK,IAAM,OACxB,IAAK,SAAUA,EAAK,KAAO,OAE3B,QAAS,IAAIA,GAAQv4C,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,gBAAkByI,EAAE,GAAK,0BAEzE,MAAOhM,IAER,OAAOmE,GAGR,QAASstD,IAAgBllB,EAAUiB,EAAQhiC,GAC1C,GAAIxM,IAAKg2B,GAAY+D,GAAU,mBAAoB,MAAQ2U,MAASrU,GAAMM,QAASn4B,QAAQ,QAAS,KACpG+qC,GAAS12B,QAAQ,SAAS67C,GACzB,GAAIC,GAAS,IACZD,EAAK,QAAU77C,QAAQ,SAASxS,EAAGiM,GACnC,IAAIjM,EAAEyI,EAAG,OAASzI,GAAE4tD,EAAI,QACxB,GAAG5tD,EAAEwhB,GAAK2oB,EAAO9uC,QAAQ2E,EAAEwhB,KAAO,EAAG2oB,EAAOhpC,KAAKnB,EAAEwhB,EACnD,IAAI+sC,IACHzB,IAAKuB,EAAK,GACVrD,GAAI,6BAA+B,eAAiB7iD,EAAKqmD,QAAQhyD,OAAO,IAAM,IAE/E,IAAGyP,GAAO,EAAGqiD,EAASC,EAAOvD,OACxBuD,GAAOE,SAAWH,CACvBtuD,GAAE4tD,GAAKW,EAAOvD,EACd,IAAGhrD,EAAEwhB,EAAG+sC,EAAOJ,SAAW,6BAA+B,eAAiBhkB,EAAO9uC,QAAQ2E,EAAEwhB,IAAIhlB,OAAO,IAAM,GAC5Gb,GAAEwF,KAAKu0B,GAAU,kBAAmBF,GAAS,OAAQx1B,EAAEyB,GAAG,IAAK8sD,OAGjE5yD,GAAEwF,KAAK,sBACP,OAAOxF,GAAEQ,KAAK,IAIf,QAASuyD,IAAiBhzD,EAAMyM,GAC/B,GAAIrH,KACJ,IAAI4/C,GAAO,KACXhlD,GAAKyC,QAAQ4zB,GAAU,QAASm8B,GAAUvxD,GACzC,GAAIgM,GAAIupB,GAAYv1B,EACpB,QAAO81B,GAAS9pB,EAAE,KACjB,IAAK,QAAS,MAGd,IAAK,cAAe,MACpB,IAAK,gBAAiB,MAGtB,IAAK,UAAW7H,EAAIK,MAAMyX,KAAMjQ,EAAEgmD,YAAa3D,GAAIriD,EAAEqiD,IAAO,OAC5D,IAAK,YAAa,MAGlB,IAAK,WAAW,IAAK,YAAY,IAAK,aAAa,IAAK,YAAa,MAErE,IAAK,OAAQtK,EAAK,IAAM,OACxB,IAAK,SAAUA,EAAK,KAAO,OAE3B,QAAS,IAAIA,GAAQv4C,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,gBAAkByI,EAAE,GAAK,0BAEzE,MAAOhM,IAER,OAAOmE,GAER,QAAS8tD,IAAiBzkB,GACzB,GAAIxuC,IAAKg2B,GAAY+D,GAAU,aAAc,MAC5C2U,MAASrU,GAAMM,MACfg1B,UAAWv0B,GAAW,KACpB54B,QAAQ,QAAS,KACpBgsC,GAAO33B,QAAQ,SAASq8C,EAAQ5iD,GAC/BtQ,EAAEwF,KAAKu0B,GAAU,SAAU,MAC1Bo5B,YAAaD,EACb7D,GAAI,6BAA+B,eAAiB/+C,GAAKzP,OAAO,IAAM,IACtEuyD,OAAQF,EACRG,WAAY,WAGdrzD,GAAEwF,KAAK,gBACP,OAAOxF,GAAEQ,KAAK,IAEf,GAAI8yD,IAAS,sCACb,SAASC,IAAajzC,GACpB,GAAIkzC,GAASx6C,GAAI3X,MAAMwrB,SAAUtM,KAAM,KACvCD,GAAIhD,UAAUzG,QAAQ,SAAS0C,EAAGtZ,GAChC,GAAIsZ,EAAE1Y,OAAO,KAAO,MAAQ0Y,EAAE/I,MAAM,oBAClC,MACF,IAAIijD,GAAUl6C,EAAE/W,QAAQ,UAAW,KAAKA,QAAQ,4BAA6B,GAC7EwW,IAAI3X,MAAMuoB,QAAQ4pC,EAAQC,EAASnzC,EAAIjD,UAAUpd,GAAGiF,UAEtD,OAAO8T,IAAIwK,MAAMgwC,GAEnB,QAASE,IAAapzC,EAAKguB,GACzBA,EAAIhxB,UAAUzG,QAAQ,SAAS0C,EAAGtZ,GAChC,GAAIA,GAAK,EACP,MACF,IAAIwzD,GAAUl6C,EAAE/W,QAAQ,aAAc,qBACtC,IAAIixD,EAAQ5yD,OAAO,KAAO,IACxBmY,GAAI3X,MAAMuoB,QAAQtJ,EAAKmzC,EAASnlB,EAAIjxB,UAAUpd,GAAGiF,WAGvD,GAAIyuD,KAAW,OAAQ,OAAQ,OAAQ,QAAS,MAEhD,SAASC,MAAiB,OAAQC,QAAQ,UAC1C,QAASC,MAAiB,OAAQD,QAAQ,UAC1C,QAASE,MAAiB,OAAQF,QAAQ,SAC1C,QAASG,MAAiB,OAAQH,QAAQ,SAE1C,GAAI9T,IAAW,WACd,GAAIkU,GAAU,+EACd,IAAIC,IAAWhjD,EAAE,EAAE7M,EAAE,EACrB,SAAS8vD,GAAOvjD,EAAGC,EAAGC,EAAGC,GACxB,GAAIsvB,GAAO,MAAOC,EAAO,KAEzB,IAAGxvB,EAAG3Q,QAAU,EAAGmgC,EAAO,SACrB,IAAGxvB,EAAGzO,OAAO,IAAM,IAAK,CAAEi+B,EAAO,IAAMxvB,GAAKA,EAAGjQ,MAAM,GAAI,GAE9D,GAAGkQ,EAAG5Q,QAAU,EAAGkgC,EAAO,SACrB,IAAGtvB,EAAG1O,OAAO,IAAM,IAAK,CAAEg+B,EAAO,IAAMtvB,GAAKA,EAAGlQ,MAAM,GAAI,GAE9D,GAAIuY,GAAItI,EAAG3Q,OAAO,EAAEmR,SAASR,EAAG,IAAI,EAAE,EAAG+H,EAAI9H,EAAG5Q,OAAO,EAAEmR,SAASP,EAAG,IAAI,EAAE,CAE3E,IAAGsvB,EAAMxnB,GAAKq7C,EAAO7vD,QAAUwU,CAC/B,IAAGynB,EAAMlnB,GAAK86C,EAAOhjD,QAAUkI,CAC/B,OAAOvI,IAAMwvB,EAAO,GAAK,KAAOU,GAAWloB,IAAMynB,EAAO,GAAK,KAAOU,GAAW5nB,GAEhF,MAAO,SAAS2mC,GAASqU,EAAM5iD,GAC9B0iD,EAAS1iD,CACT,OAAO4iD,GAAK5xD,QAAQyxD,EAASE,MAI/B,IAAIE,IAAY,gLAChB,IAAIjT,IAAW,WACd,MAAO,SAASA,GAASgT,EAAM5iD,GAC9B,MAAO4iD,GAAK5xD,QAAQ6xD,GAAW,SAASC,EAAIzjD,EAAIC,EAAIC,EAAIwjD,EAAIC,GAC3D,GAAInwD,GAAI+8B,GAAWrwB,IAAOD,EAAK,EAAIU,EAAKnN,EACxC,IAAI6M,GAAI+vB,GAAWuzB,IAAOD,EAAK,EAAI/iD,EAAKN,EACxC,IAAIkI,GAAIm7C,GAAM,IAAOrjD,EAAE,EAAMA,GAAK,EAAI,GAAK,IAAMA,EAAI,GACrD,IAAI2H,GAAI/H,GAAM,IAAOzM,EAAE,EAAMA,GAAK,EAAI,GAAK,IAAMA,EAAI,GACrD,OAAOwM,GAAK,IAAMuI,EAAI,IAAMP,OAM/B,SAAS2nC,IAAkBzrC,EAAGi0C,GAC7B,MAAOj0C,GAAEvS,QAAQ6xD,GAAW,SAASC,EAAIzjD,EAAIC,EAAIC,EAAIwjD,EAAIC,GACxD,MAAO3jD,IAAIC,GAAI,IAAMA,EAAGC,EAAKgwB,GAAWK,GAAWrwB,GAAIi4C,EAAM3kD,KAAKkwD,GAAI,IAAMA,EAAGC,EAAKxzB,GAAWC,GAAWuzB,GAAMxL,EAAM93C,MAIxH,QAASujD,IAAmB1/C,EAAG0rB,EAAOL,GACrC,GAAIlvB,GAAIwwB,GAAajB,GAAQ58B,EAAIqN,EAAErN,EAAGQ,EAAIo9B,GAAYrB,EACtD,IAAI4oB,IAAS93C,EAAE7M,EAAE6M,EAAIrN,EAAEqN,EAAG7M,EAAEA,EAAEA,EAAIR,EAAEQ,EACpC,OAAOm8C,IAAkBzrC,EAAGi0C,GAI7B,QAAS/E,IAAUlvC,GAClB,GAAGA,EAAE5U,QAAU,EAAG,MAAO,MACzB,OAAO,MAGR,QAASu0D,IAAM3/C,GACd,MAAOA,GAAEvS,QAAQ,WAAW,IAG7B,QAASmyD,IAAmB5/C,GAC3B,GAAGA,EAAElU,MAAM,EAAE,IAAM,MAAOkU,EAAIA,EAAElU,MAAM,EAEtC,IAAGkU,EAAE3U,WAAW,IAAM,GAAI,CACzB2U,EAAIA,EAAElU,MAAM,EACZ,IAAGkU,EAAE3U,WAAW,IAAM,GAAI2U,EAAIA,EAAElU,MAAM,GAEvCkU,EAAIA,EAAEvS,QAAQ,oBAAqB,GAEnCuS,GAAIA,EAAEvS,QAAQ,gDAAiD,SAASoO,EAAIC,GAAM,MAAOA,GAAGrO,QAAQ,MAAM,KAC1GuS,GAAIA,EAAEvS,QAAQ,kBAAmB,SAASoO,GAAM,MAAOA,GAAG/P,MAAM,IAChEkU,GAAIA,EAAEvS,QAAQ,mBAAoB,SAASoO,EAAIC,GAAM,MAAO,GAAKL,MAAM,uIAAyII,EAAKC,GAErNkE,GAAIA,EAAEvS,QAAQ,sBAAuB,KACrC,OAAOuS,GAAEvS,QAAQ,QAAQ,KAAKA,QAAQ,MAAM,KAG7C,QAASoyD,IAAmB7/C,GAC3B,GAAI/U,GAAI,OAAS+U,EAAEvS,QAAQ6xD,GAAW,iBAAiB7xD,QAAQ,SAAS,IAExE,OAAOxC,GAAEwC,QAAQ,KAAM,KAAKA,QAAQ,KAAK,KAG1C,QAASqyD,IAAc3jD,GACtBA,EAAIA,EAAE1O,QAAQ,kBAAmB,SAASoO,GAAM,MAAOA,GAAG/P,MAAM,IAChEqQ,GAAIA,EAAE1O,QAAQ,mBAAoB,SAASoO,EAAIC,GAAM,MAAO,GAAKL,MAAM,uIAAyII,EAAKC,GACrN,IAAIgV,GAAI3U,EAAEpN,MAAM,IAChB,IAAID,GAAIgiB,EAAE,GAAG/hB,MAAM,KAAK,EACxB,QAAQD,EAAGgiB,EAAE,GAAG/hB,MAAM,KAAK,IAAM+hB,EAAE1lB,OAAS,EAAK,KAAO0lB,EAAE,GAAG/hB,MAAM,KAAK,IAAM+hB,EAAE,GAAG/hB,MAAM,KAAK,IAAO,KAGtG,QAASgxD,IAAc5jD,GACtB,MAAOA,GAAE1O,QAAQ,IAAI,KAGtB,GAAI8qC,MACJ,IAAIynB,MAIJ,IAAIC,UAAyBC,OAAQ,WAErC,SAASC,IAAWjmB,EAAKj9B,EAAK+S,GAC7B,GAAI9kB,GAAI,EAAGC,EAAM+uC,EAAI9uC,MACrB,IAAG4kB,EAAK,CACP,GAAGiwC,GAAkBjwC,EAAIowC,IAAInjD,GAAOkP,OAAO6O,UAAUC,eAAehrB,KAAK+f,EAAK/S,GAAM,CACnF,GAAIojD,GAASJ,GAAkBjwC,EAAIswC,IAAIrjD,GAAO+S,EAAI/S,EAClD,MAAM/R,EAAIm1D,EAAOj1D,SAAUF,EAAG,CAC7B,GAAGgvC,EAAImmB,EAAOn1D,IAAI6F,IAAMkM,EAAK,CAAEi9B,EAAIgY,OAAU,OAAOmO,GAAOn1D,UAGvD,MAAMA,EAAIC,IAAOD,EAAG,CAC1B,GAAGgvC,EAAIhvC,GAAG6F,IAAMkM,EAAK,CAAEi9B,EAAIgY,OAAU,OAAOhnD,IAE7CgvC,EAAI/uC,IAAS4F,EAAEkM,EAAOi9B,GAAIgY,OAAUhY,GAAIkY,QACxC,IAAGpiC,EAAK,CACP,GAAGiwC,GAAiB,CACnB,IAAIjwC,EAAIowC,IAAInjD,GAAM+S,EAAIjgB,IAAIkN,KAC1B+S,GAAIswC,IAAIrjD,GAAKxM,KAAKtF,OACZ,CACN,IAAIghB,OAAO6O,UAAUC,eAAehrB,KAAK+f,EAAK/S,GAAM+S,EAAI/S,KACxD+S,GAAI/S,GAAKxM,KAAKtF,IAGhB,MAAOA,GAGR,QAASo1D,IAAUz8C,EAAG0oB,GACrB,GAAIhoB,IAAM1G,IAAIgG,EAAE,EAAE/F,IAAI+F,EAAE,EAExB,IAAIy/B,IAAO,CACX,IAAG/W,EAAIknB,IAAKA,GAAMlnB,EAAIknB,GACtB,IAAGlnB,EAAIggB,OAAS,KAAMhoC,EAAE4vC,YAAc,MACjC,IAAG5nB,EAAIigB,KAAO,KAAMlJ,EAAMoJ,GAAQngB,EAAIigB,SACtC,IAAGjgB,EAAI+W,KAAO,KAAMA,EAAM/W,EAAI+W,GACnC,IAAGA,GAAO,EAAG,CAAE/+B,EAAEgoC,MAAQoH,GAAWrQ,EAAM/+B,GAAE4vC,YAAc,MACrD,IAAG5nB,EAAIggB,OAAS,KAAMhoC,EAAEgoC,MAAQhgB,EAAIggB,KACzC,IAAGhgB,EAAImf,OAAQnnC,EAAEmnC,OAAS,IAC1B,IAAGnf,EAAIg0B,OAAS,KAAM,CAAEh8C,EAAEi8C,aAAej8C,EAAEg8C,MAAQh0B,EAAIg0B,MACvD,MAAOh8C,GAGR,QAASk8C,IAAgBC,EAASC,GACjC,IAAID,EAAS,MACb,IAAIE,IAAQ,GAAK,GAAK,IAAM,IAAM,GAAK,GACvC,IAAGD,GAAQ,OAAQC,GAAQ,EAAG,EAAG,EAAG,EAAG,GAAK,GAC5C,IAAGF,EAAQG,MAAU,KAAMH,EAAQG,KAASD,EAAK,EACjD,IAAGF,EAAQI,OAAU,KAAMJ,EAAQI,MAASF,EAAK,EACjD,IAAGF,EAAQK,KAAU,KAAML,EAAQK,IAASH,EAAK,EACjD,IAAGF,EAAQM,QAAU,KAAMN,EAAQM,OAASJ,EAAK,EACjD,IAAGF,EAAQl5C,QAAU,KAAMk5C,EAAQl5C,OAASo5C,EAAK,EACjD,IAAGF,EAAQO,QAAU,KAAMP,EAAQO,OAASL,EAAK,GAGlD,QAASM,IAAetoB,EAAQxN,EAAM5zB,GACrC,GAAImqB,GAAInqB,EAAK2pD,OAAO/1B,EAAKzJ,GAAK,KAAOyJ,EAAKzJ,EAAI,UAC9C,IAAI12B,GAAI,GAAMC,EAAM0tC,EAAOztC,MAC3B,IAAGw2B,GAAK,MAAQnqB,EAAK4pD,IAAK,CACzB,KAAMn2D,EAAI,MAASA,EAAG,GAAGuM,EAAK4pD,IAAIn2D,IAAM,KAAM,CAC7CkX,GAAUipB,EAAKzJ,EAAG12B,EAElBuM,GAAK4pD,IAAIn2D,GAAKmgC,EAAKzJ,CACnBnqB,GAAK2pD,OAAO/1B,EAAKzJ,GAAKA,EAAI12B,CAC1B,QAGF,IAAIA,EAAI,EAAGA,GAAKC,IAAOD,EAAG,GAAG2tC,EAAO3tC,GAAGoiC,WAAa1L,EAAG,MAAO12B,EAC9D2tC,GAAO1tC,IACNmiC,SAAS1L,EACT0/B,OAAO,EACPC,OAAO,EACPC,SAAS,EACTC,KAAK,EACLC,kBAAkB,EAEnB,OAAOv2D,GAGR,QAASw2D,IAAYn9C,EAAGi8B,EAAOmhB,EAAQnqD,EAAM4hC,EAAQR,GACpD,IACC,GAAGphC,EAAK03C,OAAQ3qC,EAAEod,EAAI9vB,EAAU2uC,GAC/B,MAAMxyC,GAAK,GAAGwJ,EAAKmtB,IAAK,KAAM32B,GAChC,GAAGuW,EAAEzT,IAAM,MAAQ0G,EAAKoqD,WAAY,MACpC,IAAGr9C,EAAEzT,IAAM,WAAcyT,GAAE1T,IAAM,SAAU0T,EAAE1T,EAAIurB,GAAU7X,EAAE1T,EAC7D,MAAK2G,GAAQA,EAAK8zC,WAAa,QAAU/mC,EAAEzT,IAAM,IAAK,IACrD,GAAGe,EAAU2uC,IAAU,KAAMr+B,GAAUjB,GAAYs/B,IAAU,UAAWA,EACxE,IAAGj8B,EAAEzT,IAAM,IAAKyT,EAAE/K,EAAI+K,EAAE/K,GAAK+zB,GAAKhpB,EAAE1T,OAC/B,IAAG2vC,IAAU,EAAG,CACpB,GAAGj8B,EAAEzT,IAAM,IAAK,CACf,IAAIyT,EAAE1T,EAAE,KAAO0T,EAAE1T,EAAG0T,EAAE/K,EAAI+K,EAAE1T,EAAExC,SAAS,QAClCkW,GAAE/K,EAAIK,GAAgB0K,EAAE1T,OAEzB,IAAG0T,EAAEzT,IAAM,IAAK,CACpB,GAAIqM,GAAKse,GAAQlX,EAAE1T,EACnB,KAAIsM,EAAG,KAAOA,EAAIoH,EAAE/K,EAAI2D,EAAG9O,SAAS,QAC/BkW,GAAE/K,EAAIK,GAAgBsD,OAEvB,IAAGoH,EAAE1T,IAAMlD,UAAW,MAAO,OAC7B4W,GAAE/K,EAAIW,GAAYoK,EAAE1T,EAAEkvD,QAEvB,IAAGx7C,EAAEzT,IAAM,IAAKyT,EAAE/K,EAAIY,GAAWomC,EAAM/kB,GAAQlX,EAAE1T,GAAGkvD,QACpDx7C,GAAE/K,EAAIY,GAAWomC,EAAMj8B,EAAE1T,EAAEkvD,IAC/B,MAAM/xD,GAAK,GAAGwJ,EAAKmtB,IAAK,KAAM32B,GAChC,IAAIwJ,EAAKoqD,WAAY,MACrB,IAAGD,GAAU,KAAM,IAClBp9C,EAAE1V,EAAI+pC,EAAOid,MAAM8L,EACnB,IAAIp9C,EAAE1V,EAAEqnD,SAAW3xC,EAAE1V,EAAEqnD,QAAQD,QAAU1xC,EAAE1V,EAAEqnD,QAAQ9F,IAAK,CACzD7rC,EAAE1V,EAAEqnD,QAAQ9F,IAAM+C,GAAS/Z,EAAO2d,cAAcC,UAAUzyC,EAAE1V,EAAEqnD,QAAQD,OAAO7F,IAAK7rC,EAAE1V,EAAEqnD,QAAQ7C,MAAQ,EACtG,IAAG77C,EAAKmtB,IAAKpgB,EAAE1V,EAAEqnD,QAAQ2L,QAAUzoB,EAAO2d,cAAcC,UAAUzyC,EAAE1V,EAAEqnD,QAAQD,OAAO7F,IAEtF,GAAI7rC,EAAE1V,EAAEknD,SAAWxxC,EAAE1V,EAAEknD,QAAQE,MAAO,CACrC1xC,EAAE1V,EAAEknD,QAAQ3F,IAAM+C,GAAS/Z,EAAO2d,cAAcC,UAAUzyC,EAAE1V,EAAEknD,QAAQE,OAAO7F,IAAK7rC,EAAE1V,EAAEknD,QAAQ1C,MAAQ,EACtG,IAAG77C,EAAKmtB,IAAKpgB,EAAE1V,EAAEknD,QAAQ8L,QAAUzoB,EAAO2d,cAAcC,UAAUzyC,EAAE1V,EAAEknD,QAAQE,OAAO7F,KAErF,MAAMpiD,GAAK,GAAGwJ,EAAKmtB,KAAOiU,EAAOid,MAAO,KAAM7nD,IAGjD,QAAS8zD,IAAS9zB,EAAIf,EAAOhiC,GAC5B,GAAG+iC,GAAMA,EAAG,QAAS,CACpB,GAAIvC,GAAQyB,GAAkBc,EAAG,QACjC,IAAGvC,EAAMz9B,EAAEqB,EAAIo8B,EAAM58B,EAAEQ,GAAKo8B,EAAMz9B,EAAEkO,EAAIuvB,EAAM58B,EAAEqN,EAAG,KAAM,IAAI3M,OAAM,cAAgBtE,EAAI,MAAQ+iC,EAAG,UAGpG,QAAS+zB,IAAiB/zB,EAAIn/B,GAC7B,GAAI0B,GAAI28B,GAAkBr+B,EAC1B,IAAG0B,EAAE1B,EAAEqN,GAAG3L,EAAEvC,EAAEkO,GAAK3L,EAAE1B,EAAEQ,GAAGkB,EAAEvC,EAAEqB,GAAKkB,EAAE1B,EAAEqN,GAAG,GAAK3L,EAAE1B,EAAEQ,GAAG,EAAG2+B,EAAG,QAAUrB,GAAap8B,GAEpF,GAAIyxD,IAAc,+CAClB,IAAIC,IAAiB,0DACrB,IAAIC,IAAa,6BACjB,IAAIC,IAAW,aACf,IAAIC,IAAW,4BACf,IAAIC,IAAU,kEACd,IAAIC,IAAa,+BACjB,IAAIC,IAAe,wCACnB,IAAIC,IAAe,6DACnB,IAAIC,IAAW,mEAGf,SAASC,IAAa33D,EAAMyM,EAAM8D,EAAKw9B,EAAMsR,EAAIhR,EAAQR,GACxD,IAAI7tC,EAAM,MAAOA,EACjB,KAAI+tC,EAAMA,GAAQ0D,SAClB,IAAG9vC,GAAS,MAAQ8K,EAAKu2B,OAAS,KAAMv2B,EAAKu2B,MAAQrhC,CAGrD,IAAImC,GAAI2I,EAAKu2B,WACb,IAAI40B,IAAa9zD,GAAIqN,EAAE,IAAS7M,EAAE,KAAUrB,GAAIkO,EAAE,EAAG7M,EAAE,GAEvD,IAAIuzD,GAAQ,GAAIC,EAAQ,EACxB,IAAIC,GAAO/3D,EAAKyQ,MAAMymD,GACtB,IAAGa,EAAM,CACRF,EAAQ73D,EAAKc,MAAM,EAAGi3D,EAAKjM,MAC3BgM,GAAQ93D,EAAKc,MAAMi3D,EAAKjM,MAAQiM,EAAK,GAAG33D,YAClCy3D,GAAQC,EAAQ93D,CAGvB,IAAIg4D,GAAUH,EAAMpnD,MAAM+mD,GAC1B,IAAGQ,EAASC,GAAqBD,EAAQ,GAAIl0D,EAAGu7C,EAAI9uC,OAC/C,IAAIynD,EAAUH,EAAMpnD,MAAMgnD,IAAiBS,GAAsBF,EAAQ,GAAIA,EAAQ,IAAI,GAAIl0D,EAAGu7C,EAAI9uC,EAAKs9B,EAAQQ,EAGtH,IAAI9oC,IAAQsyD,EAAMpnD,MAAM,yBAAyBq7C,OAAO,IAAIA,KAC5D,IAAGvmD,EAAO,EAAG,CACZ,GAAI6rD,GAAMyG,EAAM/2D,MAAMyE,EAAKA,EAAK,IAAIkL,MAAM2mD,GAC1C,IAAGhG,EAAK4F,GAAiBlzD,EAAGstD,EAAI,IAIjC,GAAI+G,GAAMN,EAAMpnD,MAAMinD,GACtB,IAAGS,GAAOA,EAAI,GAAIC,GAAwBD,EAAI,GAAI9Y,EAGlD,IAAIgZ,KACJ,IAAG5rD,EAAKoqD,WAAY,CAEnB,GAAI5d,GAAO4e,EAAMpnD,MAAM4mD,GACvB,IAAGpe,EAAMqf,GAAkBD,EAASpf,GAIrC,GAAG8e,EAAMQ,GAAkBR,EAAK,GAAIj0D,EAAG2I,EAAMmrD,EAAUvpB,EAAQR,EAG/D,IAAI2qB,GAAUV,EAAMrnD,MAAM6mD,GAC1B,IAAGkB,EAAS10D,EAAE,eAAiB20D,GAAwBD,EAAQ,GAG/D,IAAIE,KACJ,IAAIC,GAASb,EAAMrnD,MAAMwmD,GACzB,IAAG0B,EAAQ,IAAIpzD,EAAO,EAAGA,GAAQozD,EAAOv4D,SAAUmF,EACjDmzD,EAAOnzD,GAAQ48B,GAAkBw2B,EAAOpzD,GAAMzE,MAAM63D,EAAOpzD,GAAM5F,QAAQ,KAAM,GAGhF,IAAIi5D,GAAQd,EAAMrnD,MAAM0mD,GACxB,IAAGyB,EAAOC,GAAoB/0D,EAAG80D,EAAO7qB,EAGxC,IAAI4nB,GAAUmC,EAAMrnD,MAAM8mD,GAC1B,IAAG5B,EAAS7xD,EAAE,YAAcg1D,GAAqBtiC,GAAYm/B,EAAQ,IAErE,KAAI7xD,EAAE,SAAW8zD,EAAS30D,EAAEqB,GAAKszD,EAAS9zD,EAAEQ,GAAKszD,EAAS30D,EAAEkO,GAAKymD,EAAS9zD,EAAEqN,EAAGrN,EAAE,QAAU89B,GAAag2B,EACxG,IAAGnrD,EAAK4rC,UAAY,GAAKv0C,EAAE,QAAS,CACnC,GAAIi1D,GAAS52B,GAAkBr+B,EAAE,QACjC,IAAG2I,EAAK4rC,YAAc0gB,EAAO91D,EAAEkO,EAAG,CACjC4nD,EAAO91D,EAAEkO,EAAI1E,EAAK4rC,UAAY,CAC9B,IAAG0gB,EAAO91D,EAAEkO,EAAIymD,EAAS30D,EAAEkO,EAAG4nD,EAAO91D,EAAEkO,EAAIymD,EAAS30D,EAAEkO,CACtD,IAAG4nD,EAAO91D,EAAEkO,EAAI4nD,EAAOj1D,EAAEqN,EAAG4nD,EAAOj1D,EAAEqN,EAAI4nD,EAAO91D,EAAEkO,CAClD,IAAG4nD,EAAO91D,EAAEqB,EAAIszD,EAAS30D,EAAEqB,EAAGy0D,EAAO91D,EAAEqB,EAAIszD,EAAS30D,EAAEqB,CACtD,IAAGy0D,EAAO91D,EAAEqB,EAAIy0D,EAAOj1D,EAAEQ,EAAGy0D,EAAOj1D,EAAEQ,EAAIy0D,EAAO91D,EAAEqB,CAClDR,GAAE,YAAcA,EAAE,OAClBA,GAAE,QAAU89B,GAAam3B,IAG3B,GAAGV,EAAQj4D,OAAS,EAAG0D,EAAE,SAAWu0D,CACpC,IAAGK,EAAOt4D,OAAS,EAAG0D,EAAE,WAAa40D,CACrC,OAAO50D,GAGR,QAASk1D,IAAoBN,GAC5B,GAAGA,EAAOt4D,SAAW,EAAG,MAAO,EAC/B,IAAIH,GAAI,sBAAwBy4D,EAAOt4D,OAAS,IAChD,KAAI,GAAIF,GAAI,EAAGA,GAAKw4D,EAAOt4D,SAAUF,EAAGD,GAAK,mBAAqB2hC,GAAa82B,EAAOx4D,IAAM,KAC5F,OAAOD,GAAI,gBAIZ,QAASg4D,IAAqBD,EAASl0D,EAAGu7C,EAAI9uC,GAC7C,GAAIvQ,GAAOw2B,GAAYwhC,EACvB,KAAI3Y,EAAGxc,OAAOtyB,GAAM8uC,EAAGxc,OAAOtyB,KAC9B,IAAGvQ,EAAKi5D,SAAU5Z,EAAGxc,OAAOtyB,GAAK2oD,SAAW3hC,GAAYwB,GAAS/4B,EAAKi5D,WAEvE,QAASf,IAAsBF,EAAS/oC,EAAMnrB,EAAGu7C,EAAI9uC,GACpD0nD,GAAqBD,EAAQl3D,MAAM,EAAGk3D,EAAQr4D,QAAQ,MAAOmE,EAAGu7C,EAAI9uC,GAErE,QAAS4oD,IAAqBl2B,EAAIoc,EAAI9uC,EAAK9D,EAAMxM,GAChD,GAAIm5D,GAAS,KACb,IAAIjlB,MAAY91B,EAAU,IAC1B,IAAG5R,EAAKijC,WAAa,QAAU2P,EAAGga,OAAQ,CACzC,GAAIC,GAAQja,EAAGzc,WAAWryB,EAC1B,KAAM,GAAG8uC,EAAGC,SAAUga,EAAQja,EAAGC,SAASzc,OAAOtyB,GAAK2oD,UAAYI,EAAS,MAAMr2D,IACjFm2D,EAAS,IACTjlB,GAAM8kB,SAAWjrC,GAAU8J,GAAUwhC,IAGtC,GAAGr2B,GAAMA,EAAG,YAAa,CACxB,GAAIs2B,IAAgBC,aAAa,EAAGC,aAAa,EACjD,IAAGx2B,EAAG,YAAYy2B,MAAOH,EAAaC,aAAe,CACrD,IAAGv2B,EAAG,YAAY6yB,KAAMyD,EAAaE,aAAe,CACpDp7C,IAAWA,GAAS,IAAM2b,GAAU,YAAa,KAAMu/B,GAGxD,IAAIH,IAAW/6C,EAAS,MACxBpe,GAAEA,EAAEG,QAAW45B,GAAU,UAAW3b,EAAS81B,GAI9C,GAAIwlB,KAAsB,UAAW,YAAa,oBAAqB,sBACvE,IAAIC,KACH,gBAAiB,aAAc,cAC/B,gBAAiB,aAAc,mBAC/B,gBAAiB,aACjB,OAAQ,aAAc,cAEvB,SAASC,IAAwBC,GAEhC,GAAI75D,IAAMyiC,MAAM,EAChBi3B,IAAmB7iD,QAAQ,SAASC,GAAK,GAAG+iD,EAAG/iD,IAAM,MAAQ+iD,EAAG/iD,GAAI9W,EAAE8W,GAAK,KAC3E6iD,IAAkB9iD,QAAQ,SAASC,GAAK,GAAG+iD,EAAG/iD,IAAM,OAAS+iD,EAAG/iD,GAAI9W,EAAE8W,GAAK,KAE3E,IAAG+iD,EAAGC,SAAU95D,EAAE85D,SAAWC,sCAAsCF,EAAGC,UAAUz2D,SAAS,IAAI6L,aAC7F,OAAO6qB,IAAU,kBAAmB,KAAM/5B,GAG3C,QAAS44D,IAAoB/0D,EAAG9D,EAAM+tC,GACrC,GAAI/K,GAAQt/B,MAAMW,QAAQP,EAC1B,KAAI,GAAI5D,GAAI,EAAGA,GAAKF,EAAKI,SAAUF,EAAG,CACrC,GAAIuP,GAAM+mB,GAAYuC,GAAS/4B,EAAKE,IAAK,KACzC,KAAIuP,EAAI2hD,IAAK,MACb,IAAI1f,KAAQ3D,OAAY,YAAYt+B,EAAI6/C,GACxC,IAAG5d,EAAK,CACPjiC,EAAImiC,OAASF,EAAIE,MACjB,IAAGniC,EAAIwqD,SAAUxqD,EAAImiC,QAAU,IAAIra,GAAY9nB,EAAIwqD,cAC7C,CACNxqD,EAAImiC,OAAS,IAAMra,GAAY9nB,EAAIwqD,SACnCvoB,IAAOE,OAAQniC,EAAImiC,OAAQE,WAAY,YAExCriC,EAAIyqD,IAAMxoB,CACV,IAAGjiC,EAAI0qD,QAAS,CAAE1qD,EAAI2qD,QAAU3qD,EAAI0qD,cAAgB1qD,GAAI0qD,QACxD,GAAIE,GAAMl4B,GAAkB1yB,EAAI2hD,IAChC,KAAI,GAAI/3C,GAAEghD,EAAIv2D,EAAEqN,EAAEkI,GAAGghD,EAAIp3D,EAAEkO,IAAIkI,EAAG,IAAI,GAAIP,GAAEuhD,EAAIv2D,EAAEQ,EAAEwU,GAAGuhD,EAAIp3D,EAAEqB,IAAIwU,EAAG,CACnE,GAAIoG,GAAO0hB,IAAat8B,EAAEwU,EAAE3H,EAAEkI,GAC9B,IAAG2pB,EAAO,CACT,IAAIl/B,EAAEuV,GAAIvV,EAAEuV,KACZ,KAAIvV,EAAEuV,GAAGP,GAAIhV,EAAEuV,GAAGP,IAAM/S,EAAE,IAAID,EAAElD,UAChCkB,GAAEuV,GAAGP,GAAG7D,EAAIxF,MACN,CACN,IAAI3L,EAAEob,GAAOpb,EAAEob,IAASnZ,EAAE,IAAID,EAAElD,UAChCkB,GAAEob,GAAMjK,EAAIxF,KAMhB,QAASqpD,IAAqBwB,GAC7B,GAAIr6D,OACH,OAAQ,QAAS,MAAO,SAAU,SAAU,UAAU6W,QAAQ,SAASwI,GACvE,GAAGg7C,EAAOh7C,GAAIrf,EAAEqf,GAAKxK,WAAWwlD,EAAOh7C,KAExC,OAAOrf,GAER,QAASs6D,IAAqBD,GAC7B5E,GAAgB4E,EAChB,OAAOtgC,IAAU,cAAe,KAAMsgC,GAGvC,QAAShC,IAAkBD,EAASpf,GACnC,GAAIuhB,GAAU,KACd,KAAI,GAAIC,GAAO,EAAGA,GAAQxhB,EAAK74C,SAAUq6D,EAAM,CAC9C,GAAItR,GAAO3yB,GAAYyiB,EAAKwhB,GAAO,KACnC,IAAGtR,EAAKxI,OAAQwI,EAAKxI,OAASpoB,GAAa4wB,EAAKxI,OAChD,IAAI+Z,GAAKnpD,SAAS43C,EAAKr2C,IAAK,IAAI,EAAG6nD,EAAKppD,SAAS43C,EAAKp2C,IAAI,IAAI,CAC9D,IAAGo2C,EAAKsM,aAActM,EAAKqM,OAAUrM,EAAKsM,cAAgB,QACnDtM,GAAKr2C,UAAYq2C,GAAKp2C,GAAKo2C,GAAK3H,OAAS2H,EAAK3H,KACrD,KAAIgZ,GAAWrR,EAAK3H,MAAO,CAAEgZ,EAAU,IAAMxR,IAAcG,EAAK3H,OAChET,GAAYoI,EACZ,OAAMuR,GAAQC,EAAMtC,EAAQqC,KAAUpnC,GAAI61B,IAG5C,QAASyR,IAAkB33B,EAAIgW,GAC9B,GAAIh5C,IAAK,UAAWuhC,CACpB,KAAI,GAAIthC,GAAI,EAAGA,GAAK+4C,EAAK74C,SAAUF,EAAG,CACrC,KAAKshC,EAAMyX,EAAK/4C,IAAK,QACrBD,GAAEA,EAAEG,QAAW45B,GAAU,MAAO,KAAMu7B,GAAUr1D,EAAGshC,IAEpDvhC,EAAEA,EAAEG,QAAU,SACd,OAAOH,GAAEQ,KAAK,IAGf,QAASg4D,IAAwBz4D,GAChC,GAAIC,IAAMmxD,KAAMpxD,EAAKyQ,MAAM,sBAAsB,GACjD,OAAOxQ,GAER,QAAS46D,IAAwB76D,EAAMijC,EAAIoc,EAAI9uC,GAC9C,GAAI6gD,SAAapxD,GAAKoxD,KAAO,SAAWpxD,EAAKoxD,IAAMxvB,GAAa5hC,EAAKoxD,IACrE,KAAI/R,EAAGC,SAAUD,EAAGC,UAAazc,UACjC,KAAIwc,EAAGC,SAASE,MAAOH,EAAGC,SAASE,QACnC,IAAIsb,GAAQzb,EAAGC,SAASE,KACxB,IAAI9e,GAAQiB,GAAayvB,EACzB,IAAG1wB,EAAM58B,EAAEqN,GAAKuvB,EAAMz9B,EAAEkO,EAAG,CAAEuvB,EAAMz9B,EAAEkO,EAAIwwB,GAAasB,EAAG,SAAShgC,EAAEkO,CAAGigD,GAAMxvB,GAAalB,GAC1F,IAAI,GAAIxgC,GAAI,EAAGA,EAAI46D,EAAM16D,SAAUF,EAAG,CACrC,GAAIgd,GAAO49C,EAAM56D,EACjB,IAAGgd,EAAK4iC,MAAQ,wBAAyB,QACzC,IAAG5iC,EAAK2iC,OAAStvC,EAAK,QACtB2M,GAAK6iC,IAAM9d,GAAyBod,EAAGzc,WAAWryB,IAAQ,IAAMwxB,GAAUqvB,EAAM,OAEjF,GAAGlxD,GAAK46D,EAAM16D,OAAQ06D,EAAMr1D,MAAOq6C,KAAM,wBAAyBD,MAAOtvC,EAAKwvC,IAAK,IAAMV,EAAGzc,WAAWryB,GAAO,KAAO6gD,GACrH,OAAOp3B,IAAU,aAAc,MAAOo3B,IAAIA,IAK3C,GAAI2J,IAAa,0CACjB,SAAS3C,IAAwBp4D,EAAMq/C,GACtC,IAAIA,EAAG2b,MAAO3b,EAAG2b,YAChBh7D,EAAKyQ,MAAMsqD,SAAiBjkD,QAAQ,SAAS3F,EAAGjR,GAChD,GAAIu2B,GAAMD,GAAYrlB,EAEtB,KAAIkuC,EAAG2b,MAAM96D,GAAIm/C,EAAG2b,MAAM96D,KAE1B,KAAIu2B,EAAIwkC,UAAW5b,EAAG2b,MAAM96D,GAAGg7D,MAAQzkC,EAAIwkC,SAE3C,IAAGxkC,EAAI0kC,aAAe5iC,GAAa9B,EAAI0kC,aAAc9b,EAAG2b,MAAM96D,GAAGk7D,IAAM,OAGzE,QAASC,IAAwBp4B,EAAIx2B,EAAM8D,EAAK8uC,GAC/C,GAAIic,IAAUC,eAAe,IAE7B,OAAMlc,OAAQC,cAAc0b,WAAW,GAAIM,EAAMH,YAAc9b,EAAGC,SAAS0b,MAAM,GAAGI,IAAM,IAAM,GAChG,OAAOphC,IAAU,aAAcA,GAAU,YAAa,KAAMshC,OAG7D,QAASE,IAAkBn7B,EAAM+wB,EAAKnuB,EAAIx2B,GACzC,GAAG4zB,EAAK/7B,EAAG2+B,EAAG,aAAax9B,MAAM2rD,EAAK/wB,EAAK/7B,GAC3C,KAAI+7B,EAAKv6B,IAAMlD,WAAay9B,EAAKt6B,IAAM,OAAS0G,OAAUi3B,mBAAsBrD,GAAKrrB,IAAM,gBAAmBqrB,GAAKzJ,GAAK,YAAa,MAAO,EAC5I,IAAIviB,GAAK,EACT,IAAIonD,GAAOp7B,EAAKt6B,EAAG21D,EAAOr7B,EAAKv6B,CAC/B,IAAGu6B,EAAKt6B,IAAM,IAAK,OAAOs6B,EAAKt6B,GAC9B,IAAK,IAAKsO,EAAKgsB,EAAKv6B,EAAI,IAAM,GAAK,OACnC,IAAK,IAAKuO,EAAK,GAAGgsB,EAAKv6B,CAAG,OAC1B,IAAK,IAAKuO,EAAKmuB,GAAKnC,EAAKv6B,EAAI,OAC7B,IAAK,IACJ,GAAG2G,GAAQA,EAAKk3B,UAAWtvB,EAAKgd,GAAUgP,EAAKv6B,GAAI,GAAGo0B,kBACjD,CACJmG,EAAO/M,GAAI+M,EACXA,GAAKt6B,EAAI,GACTsO,GAAK,IAAIgsB,EAAKv6B,EAAI4qB,GAAQW,GAAUgP,EAAKv6B,KAE1C,SAAUu6B,GAAKzJ,IAAM,YAAayJ,EAAKzJ,EAAI9vB,EAAU,GACrD,OACD,QAASuN,EAAKgsB,EAAKv6B,CAAG,QAEvB,GAAIA,GAAKu6B,EAAKt6B,GAAK,KAAOs6B,EAAKv6B,GAAK,KAAO,GAAKg0B,GAAS,IAAKhC,GAAUzjB,IAAMpU,GAAMkR,EAAEigD,EAEtF,IAAIuK,GAAKxF,GAAe1pD,EAAK0gD,QAAS9sB,EAAM5zB,EAC5C,IAAGkvD,IAAO,EAAG17D,EAAE6D,EAAI63D,CACnB,QAAOt7B,EAAKt6B,GACX,IAAK,IAAK,MACV,IAAK,IAAK9F,EAAE8F,EAAI,GAAK,OACrB,IAAK,IAAK9F,EAAE8F,EAAI,GAAK,OACrB,IAAK,IAAK9F,EAAE8F,EAAI,GAAK,OACrB,IAAK,IAAK,MACV,QAAS,GAAGs6B,EAAKv6B,GAAK,KAAM,OAASu6B,GAAKt6B,CAAG,OAC5C,GAAGs6B,EAAKv6B,EAAE1F,OAAS,MAAO,KAAM,IAAIoE,OAAM,+CAC1C,IAAGiI,GAAQA,EAAK+6C,QAAS,CACxB1hD,EAAIg0B,GAAS,IAAK,GAAGq7B,GAAW1oD,EAAKmvD,QAASv7B,EAAKv6B,EAAG2G,EAAKovD,YAC3D57D,GAAE8F,EAAI,GAAK,WAEP9F,GAAE8F,EAAI,KAAO,QAEpB,GAAGs6B,EAAKt6B,GAAK01D,EAAM,CAAEp7B,EAAKt6B,EAAI01D,CAAMp7B,GAAKv6B,EAAI41D,EAC7C,SAAUr7B,GAAKrrB,GAAK,UAAYqrB,EAAKrrB,EAAG,CACvC,GAAIpC,GAAKytB,EAAK+gB,GAAK/gB,EAAK+gB,EAAEtgD,MAAM,EAAGswD,EAAIhxD,SAAWgxD,GAAOrrD,EAAE,QAASqrD,IAAI/wB,EAAK+gB,GAAK,IAClFt7C,GAAIk0B,GAAU,IAAKlC,GAAUuI,EAAKrrB,GAAIpC,IAAOytB,EAAKv6B,GAAK,KAAOA,EAAI,IAEnE,GAAGu6B,EAAKprB,EAAGguB,EAAG,UAAUx9B,MAAM2rD,EAAK/wB,EAAKprB,GACxC,IAAGorB,EAAK10B,EAAG1L,EAAE0xD,GAAK,CAClB,OAAO33B,IAAU,IAAKl0B,EAAG7F,GAG1B,GAAIs4D,IAAoB,WACvB,GAAIuD,GAAY,oBAAqBC,EAAW,kBAChD,IAAInW,GAAS,qBAAsBoW,EAAU,wCAC7C,IAAIC,GAAW,sBACf,IAAIC,GAAUljC,GAAS,KAAMmjC,EAAUnjC,GAAS,IAEjD,OAAO,SAASu/B,GAAkB6D,EAAOt4D,EAAG2I,EAAM6sC,EAAOjL,EAAQR,GAChE,GAAIl7B,GAAK,EAAG1R,EAAI,GAAIo7D,KAAYC,KAAW/rD,EAAI,EAAGrQ,EAAE,EAAGgS,EAAG,EAAG1M,EAAE,GAAIgU,CACnE,IAAIid,GAAK8lC,EAAO,EAAGC,EAAO,CAC1B,IAAIC,GAAMC,CACV,IAAIjnB,GAAQ,EAAGmhB,EAAS,CACxB,IAAI+F,GAAYj5D,MAAMW,QAAQwpC,EAAO6e,QAASkQ,CAC9C,IAAIC,KACJ,IAAIC,KACJ,IAAI95B,GAAQt/B,MAAMW,QAAQP,EAC1B,IAAI+9C,MAAWkb,KAAaC,EAAU,KACtC,IAAIt5B,KAAej3B,EAAKi3B,UACxB,KAAI,GAAIu5B,GAAOb,EAAMr4D,MAAMg4D,GAAW7gD,EAAK,EAAGgiD,EAAUD,EAAK78D,OAAQ8a,GAAMgiD,IAAWhiD,EAAI,CACzFja,EAAIg8D,EAAK/hD,GAAIiR,MACb,IAAIgxC,GAAOl8D,EAAEb,MACb,IAAG+8D,IAAS,EAAG,QAGf,IAAIC,GAAU,CACdC,GAAM,IAAI1qD,EAAK,EAAGA,EAAKwqD,IAAQxqD,EAAI,OAA2B1R,EAAE0R,IAC/D,IAAK,IACJ,GAA+B1R,EAAE0R,EAAG,IAAM,IAAK,GAAIA,CAAI,MAAM0qD,GAC7D,GAAG5wD,GAAQA,EAAKoqD,WAAY,CAE3BpgC,EAAMD,GAAYv1B,EAAEH,MAAMs8D,EAAQzqD,GAAK,KACvC4pD,GAAO9lC,EAAItlB,GAAK,KAAOI,SAASklB,EAAItlB,EAAG,IAAMorD,EAAK,CAAGC,IAAQ,CAC7D,IAAG/vD,EAAK4rC,WAAa5rC,EAAK4rC,UAAYkkB,EAAM,QAC5CQ,KAAaC,GAAU,KACvB,IAAGvmC,EAAI6mC,GAAI,CAAEN,EAAU,IAAMD,GAAOnc,IAAM9rC,WAAW2hB,EAAI6mC,GAAKP,GAAOlc,IAAMC,GAAMic,EAAOnc,KACxF,GAAGnqB,EAAIkqB,QAAUpoB,GAAa9B,EAAIkqB,QAAS,CAAEqc,EAAU,IAAMD,GAAOpc,OAAS,KAC7E,GAAGlqB,EAAIg/B,cAAgB,KAAM,CAAEuH,EAAU,IAAMD,GAAOvH,OAAS/+B,EAAIg/B,aACnE,GAAGuH,EAASnb,EAAK0a,EAAK,GAAKQ,EAE5B,MACD,IAAK,IAAYK,EAAUzqD,CAAI,QAEhC,GAAGyqD,GAAWzqD,EAAI,KAClB8jB,GAAMD,GAAYv1B,EAAEH,MAAMs8D,EAAQzqD,GAAK,KACvC4pD,GAAO9lC,EAAItlB,GAAK,KAAOI,SAASklB,EAAItlB,EAAG,IAAMorD,EAAK,CAAGC,IAAQ,CAC7D,IAAG/vD,EAAK4rC,WAAa5rC,EAAK4rC,UAAYkkB,EAAM,QAC5C,IAAGjjB,EAAMx1C,EAAEqN,EAAIorD,EAAO,EAAGjjB,EAAMx1C,EAAEqN,EAAIorD,EAAO,CAC5C,IAAGjjB,EAAMr2C,EAAEkO,EAAIorD,EAAO,EAAGjjB,EAAMr2C,EAAEkO,EAAIorD,EAAO,CAE5C,IAAG9vD,GAAQA,EAAKoqD,WAAY,CAC3BkG,IAAaC,GAAU,KACvB,IAAGvmC,EAAI6mC,GAAI,CAAEN,EAAU,IAAMD,GAAOnc,IAAM9rC,WAAW2hB,EAAI6mC,GAAKP,GAAOlc,IAAMC,GAAMic,EAAOnc,KACxF,GAAGnqB,EAAIkqB,QAAUpoB,GAAa9B,EAAIkqB,QAAS,CAAEqc,EAAU,IAAMD,GAAOpc,OAAS,KAC7E,GAAGlqB,EAAIg/B,cAAgB,KAAM,CAAEuH,EAAU,IAAMD,GAAOvH,OAAS/+B,EAAIg/B,aACnE,GAAGuH,EAASnb,EAAK0a,EAAK,GAAKQ,EAI5BV,EAAQp7D,EAAEH,MAAM6R,GAAI5O,MAAM+3D,EAC1B,KAAI,GAAIyB,GAAS,EAAGA,GAAUlB,EAAMj8D,SAAUm9D,EAAQ,GAAGlB,EAAMkB,GAAQpxC,OAAO7pB,OAAO,IAAM,IAAK,KAChG+5D,GAAQA,EAAMv7D,MAAMy8D,EACpB,KAAI5qD,EAAK,EAAGA,GAAM0pD,EAAMj8D,SAAUuS,EAAI,CACrC1R,EAAIo7D,EAAM1pD,GAAIwZ,MACd,IAAGlrB,EAAEb,SAAW,EAAG,QACnBk8D,GAAOr7D,EAAEwP,MAAMm1C,EAASr1C,GAAMoC,CAAIzS,GAAE,CAAGgS,GAAG,CAC1CjR,GAAI,OAASA,EAAEH,MAAM,EAAE,IAAI,IAAI,IAAI,IAAMG,CACzC,IAAGq7D,GAAQ,MAAQA,EAAKl8D,SAAW,EAAG,CACrCmQ,EAAM,CAAG/K,GAAE82D,EAAK,EAChB,KAAIp8D,EAAE,EAAGA,GAAKsF,EAAEpF,SAAUF,EAAG,CAC5B,IAAIgS,EAAG1M,EAAEnF,WAAWH,GAAG,IAAM,GAAKgS,EAAK,GAAI,KAC3C3B,GAAM,GAAGA,EAAM2B,IAEd3B,CACFisD,GAAOjsD,QACCisD,CACT,KAAIt8D,EAAI,EAAGA,GAAKe,EAAEb,SAAUF,EAAG,GAAGe,EAAEZ,WAAWH,KAAO,GAAI,QAASA,CACnEu2B,GAAMD,GAAYv1B,EAAEH,MAAM,EAAEZ,GAAI,KAChC,KAAIu2B,EAAItlB,EAAGslB,EAAItlB,EAAIyvB,IAAazvB,EAAEorD,EAAK,EAAGj4D,EAAEk4D,GAC5Ch3D,GAAIvE,EAAEH,MAAMZ,EACZsZ,IAAMzT,EAAE,GAER,KAAIu2D,EAAK92D,EAAEiL,MAAMyrD,KAAY,MAAQI,EAAK,KAAO,GAAI9iD,EAAE1T,EAAEyxB,GAAY+kC,EAAK,GAC1E,IAAG7vD,EAAK+wD,YAAa,CACpB,IAAIlB,EAAK92D,EAAEiL,MAAM0rD,KAAY,MAAQG,EAAK,KAAO,GAAI,CAEpD9iD,EAAExE,EAAEuiB,GAAYwB,GAASujC,EAAK,IAAK,KACnC,KAAI7vD,EAAKgxD,KAAMjkD,EAAExE,EAAI2/C,GAAMn7C,EAAExE,EAC7B,IAAGsnD,EAAK,GAAG38D,QAAQ,cAAgB,EAAG,CACrC6Z,EAAE4nC,GAAK57C,EAAEiL,MAAMwrD,QAAe,EAC9B,IAAGziD,EAAE4nC,EAAEzhD,QAAQ,MAAQ,EAAGk9D,EAAOp3D,MAAM08B,GAAkB3oB,EAAE4nC,GAAI5nC,EAAE4nC,QAC3D,IAAGkb,EAAK,GAAG38D,QAAQ,eAAiB,EAAG,CAE7C+8D,EAAOlmC,GAAY8lC,EAAK,GACxB,IAAIoB,GAAOnmC,GAAYwB,GAASujC,EAAK,IACrC,KAAI7vD,EAAKgxD,KAAMC,EAAO/I,GAAM+I,EAC5BZ,GAAQvrD,SAASmrD,EAAKlxC,GAAI,MAAQkxC,EAAMgB,EAAMjnC,EAAItlB,QAE7C,IAAImrD,EAAK92D,EAAEiL,MAAM,cAAgB,CACvCisD,EAAOlmC,GAAY8lC,EAAK,GACxB,IAAGQ,EAAQJ,EAAKlxC,IAAKhS,EAAExE,EAAI0/C,GAAmBoI,EAAQJ,EAAKlxC,IAAI,GAAIsxC,EAAQJ,EAAKlxC,IAAI,GAAeiL,EAAItlB,GAGxG,GAAIwsD,GAAOj8B,GAAYjL,EAAItlB,EAC3B,KAAIjR,EAAI,EAAGA,EAAI28D,EAAOz8D,SAAUF,EAC/B,GAAGy9D,EAAKxsD,GAAK0rD,EAAO38D,GAAG,GAAG4D,EAAEqN,GAAKwsD,EAAKxsD,GAAK0rD,EAAO38D,GAAG,GAAG+C,EAAEkO,EACzD,GAAGwsD,EAAKr5D,GAAKu4D,EAAO38D,GAAG,GAAG4D,EAAEQ,GAAKq5D,EAAKr5D,GAAKu4D,EAAO38D,GAAG,GAAG+C,EAAEqB,EACzDkV,EAAE4nC,EAAIyb,EAAO38D,GAAG,GAGpB,GAAGu2B,EAAI1wB,GAAK,MAAQyT,EAAE1T,IAAMlD,UAAW,CACtC,GAAG4W,EAAExE,GAAKwE,EAAE4nC,EAAG,CACd5nC,EAAE1T,EAAI,CAAG0T,GAAEzT,EAAI,QACT,KAAI29B,EAAY,aAClBlqB,GAAEzT,EAAI,QAEPyT,GAAEzT,EAAI0wB,EAAI1wB,GAAK,GACpB,IAAGuzC,EAAMx1C,EAAEQ,EAAIk4D,EAAMljB,EAAMx1C,EAAEQ,EAAIk4D,CACjC,IAAGljB,EAAMr2C,EAAEqB,EAAIk4D,EAAMljB,EAAMr2C,EAAEqB,EAAIk4D,CAEjC,QAAOhjD,EAAEzT,GACR,IAAK,IACJ,GAAGyT,EAAE1T,GAAK,IAAM0T,EAAE1T,GAAK,KAAM,CAC5B,IAAI49B,EAAY,QAChBlqB,GAAEzT,EAAI,QACAyT,GAAE1T,EAAIgP,WAAW0E,EAAE1T,EAC1B,OACD,IAAK,IACJ,SAAU0T,GAAE1T,GAAK,YAAa,CAC7B,IAAI49B,EAAY,QAChBlqB,GAAEzT,EAAI,QACA,CACN02D,EAAOlvB,GAAKh8B,SAASiI,EAAE1T,EAAG,IAC1B0T,GAAE1T,EAAI22D,EAAK12D,CACXyT,GAAErI,EAAIsrD,EAAKtrD,CACX,IAAG1E,EAAKo6C,SAAUrtC,EAAE2L,EAAIs3C,EAAKt3C,EAE9B,MACD,IAAK,MACJ3L,EAAEzT,EAAI,GACNyT,GAAE1T,EAAK0T,EAAE1T,GAAG,KAAQyxB,GAAYwB,GAASvf,EAAE1T,GAAI,MAAQ,EACvD,IAAG2G,EAAKo6C,SAAUrtC,EAAE2L,EAAI8S,GAAWze,EAAE1T,EACrC,OACD,IAAK,YACJw2D,EAAO92D,EAAEiL,MAAMurD,EACfxiD,GAAEzT,EAAI,GACN,IAAGu2D,GAAQ,OAASG,EAAO7V,GAAS0V,EAAK,KAAM,CAC9C9iD,EAAE1T,EAAI22D,EAAK12D,CACX,IAAG0G,EAAKo6C,SAAUrtC,EAAE2L,EAAIs3C,EAAKt3C,MACvB3L,GAAE1T,EAAI,EACb,OACD,IAAK,IAAK0T,EAAE1T,EAAIyyB,GAAa/e,EAAE1T,EAAI,OACnC,IAAK,IACJ,GAAG2G,EAAKk3B,UAAWnqB,EAAE1T,EAAIurB,GAAU7X,EAAE1T,EAAG,OACnC,CAAE0T,EAAE1T,EAAI4qB,GAAQW,GAAU7X,EAAE1T,EAAG,GAAK0T,GAAEzT,EAAI,IAC/C,MAED,IAAK,IACJ,IAAI0G,GAAQA,EAAK8zC,WAAa,MAAO/mC,EAAE/K,EAAI+K,EAAE1T,CAC7C0T,GAAE1T,EAAI8gC,GAAMptB,EAAE1T,EAAI,QAGpB2vC,EAAQmhB,EAAS,CACjBgG,GAAK,IACL,IAAGD,GAAalmC,EAAI3yB,IAAMlB,UAAW,CACpCg6D,EAAK/uB,EAAO6e,OAAOj2B,EAAI3yB,EACvB,IAAG84D,GAAM,KAAM,CACd,GAAGA,EAAGt6B,UAAY,KAAMmT,EAAQmnB,EAAGt6B,QACnC,IAAG71B,EAAKoqD,WAAY,CACnB,GAAG+F,EAAGrG,QAAU,KAAMK,EAASgG,EAAGrG,SAIrCI,GAAYn9C,EAAGi8B,EAAOmhB,EAAQnqD,EAAM4hC,EAAQR,EAC5C,IAAGphC,EAAKk3B,WAAag5B,GAAanjD,EAAEzT,GAAK,KAAO2N,GAAY5M,EAAU2uC,IAAS,CAAEj8B,EAAEzT,EAAI,GAAKyT,GAAE1T,EAAIgrB,GAAQtX,EAAE1T,GAC5G,GAAG2wB,EAAIk7B,IAAMllD,EAAKmxD,OAAQ,CACzB,GAAIjM,IAAMllD,EAAKmxD,OAAOhP,WAAWn4B,EAAIk7B,GAAG,EACxC,IAAGA,GAAMA,EAAGpiD,MAAQ,SAAUiK,EAAE7N,EAAI,KAErC,GAAGq3B,EAAO,CACT,GAAI66B,GAAKn8B,GAAYjL,EAAItlB,EACzB,KAAIrN,EAAE+5D,EAAG1sD,GAAIrN,EAAE+5D,EAAG1sD,KAClBrN,GAAE+5D,EAAG1sD,GAAG0sD,EAAGv5D,GAAKkV,MACV1V,GAAE2yB,EAAItlB,GAAKqI,GAGpB,GAAGqoC,EAAKzhD,OAAS,EAAG0D,EAAE,SAAW+9C,KAGlC,SAASic,IAAkB76B,EAAIx2B,EAAM8D,EAAK8uC,GACzC,GAAIp/C,MAAQkR,KAAQuvB,EAAQyB,GAAkBc,EAAG,SAAU5C,EAAK,GAAI+wB,EAAK5/C,EAAK,GAAIynC,KAAW5/B,EAAE,EAAGP,EAAE,EAAG+oC,EAAO5e,EAAG,QACjH,IAAID,GAAQt/B,MAAMW,QAAQ4+B,EAC1B,IAAI86B,IAAW5sD,EAAEK,GAAM4a,EAAK4xC,GAAU,CACtC,KAAIllD,EAAI4nB,EAAM58B,EAAEQ,EAAGwU,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAGmgC,EAAKngC,GAAKkoB,GAAWloB,EAC7D,KAAIO,EAAIqnB,EAAM58B,EAAEqN,EAAGkI,GAAKqnB,EAAMz9B,EAAEkO,IAAKkI,EAAG,CACvClI,IACAK,GAAKyvB,GAAW5nB,EAChB,KAAIP,EAAI4nB,EAAM58B,EAAEQ,EAAGwU,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAG,CACvCs4C,EAAMnY,EAAKngC,GAAKtH,CAChB,IAAIysD,GAAQj7B,GAASC,EAAG5pB,QAAQP,GAAImqB,EAAGmuB,EACvC,IAAG6M,IAAUr7D,UAAW,QACxB,KAAIy9B,EAAOm7B,GAAkByC,EAAO7M,EAAKnuB,EAAIx2B,EAAM8D,EAAK8uC,KAAQ,KAAMluC,EAAE1L,KAAK46B,GAE9E,GAAGlvB,EAAE/Q,OAAS,GAAMyhD,GAAQA,EAAKxoC,GAAK,CACrC0kD,GAAW5sD,EAAEK,EACb,IAAGqwC,GAAQA,EAAKxoC,GAAI,CACnB+S,EAAMy1B,EAAKxoC,EACX,IAAG+S,EAAIu0B,OAAQod,EAAOpd,OAAS,CAC/Bqd,IAAU,CACV,IAAG5xC,EAAIy0B,IAAKmd,EAASlc,GAAM11B,EAAIy0B,SAC1B,IAAGz0B,EAAIw0B,IAAKod,EAAS5xC,EAAIw0B,GAC9B,IAAGod,GAAU,EAAG,CAAED,EAAOT,GAAKU,CAAQD,GAAOG,aAAe,EAC5D,GAAG9xC,EAAIopC,MAAO,CAAEuI,EAAOtI,aAAerpC,EAAIopC,OAE3Cv1D,EAAEA,EAAEG,QAAW45B,GAAU,MAAO7oB,EAAE1Q,KAAK,IAAKs9D,IAG9C,GAAGlc,EAAM,KAAMxoC,EAAIwoC,EAAKzhD,SAAUiZ,EAAG,CACpC,GAAGwoC,GAAQA,EAAKxoC,GAAI,CACnB0kD,GAAW5sD,EAAEkI,EAAE,EACf+S,GAAMy1B,EAAKxoC,EACX,IAAG+S,EAAIu0B,OAAQod,EAAOpd,OAAS,CAC/Bqd,IAAU,CACV,IAAI5xC,EAAIy0B,IAAKmd,EAASlc,GAAM11B,EAAIy0B,SAC3B,IAAIz0B,EAAIw0B,IAAKod,EAAS5xC,EAAIw0B,GAC/B,IAAIod,GAAU,EAAG,CAAED,EAAOT,GAAKU,CAAQD,GAAOG,aAAe,EAC7D,GAAI9xC,EAAIopC,MAAO,CAAEuI,EAAOtI,aAAerpC,EAAIopC,MAC3Cv1D,EAAEA,EAAEG,QAAW45B,GAAU,MAAO,GAAI+jC,IAGtC,MAAO99D,GAAEQ,KAAK,IAGf,QAAS09D,IAAa5tD,EAAK9D,EAAM4yC,EAAItR,GACpC,GAAI9tC,IAAKg2B,GAAY+D,GAAU,YAAa,MAC3C2U,MAAStT,GAAW,GACpB+iC,UAAW9jC,GAAMnpB,IAElB,IAAIrN,GAAIu7C,EAAGzc,WAAWryB,GAAM8tD,EAAO,EAAGC,EAAQ,EAC9C,IAAIr7B,GAAKoc,EAAGxc,OAAO/+B,EACnB,IAAGm/B,GAAM,KAAMA,IACf,IAAImuB,GAAMnuB,EAAG,SAAW,IACxB,IAAIvC,GAAQyB,GAAkBivB,EAC9B,IAAG1wB,EAAMz9B,EAAEqB,EAAI,OAAUo8B,EAAMz9B,EAAEkO,EAAI,QAAS,CAC7C,GAAG1E,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,SAAW4sD,EAAM,sCAC9C1wB,GAAMz9B,EAAEqB,EAAI8B,KAAK0M,IAAI4tB,EAAMz9B,EAAEqB,EAAG,MAChCo8B,GAAMz9B,EAAEkO,EAAI/K,KAAK0M,IAAI4tB,EAAMz9B,EAAEqB,EAAG,QAChC8sD,GAAMxvB,GAAalB,GAEpB,IAAIqN,EAAMA,IACV9K,GAAG,eACH,IAAIs7B,KAEJpF,IAAqBl2B,EAAIoc,EAAI9uC,EAAK9D,EAAMxM,EAExCA,GAAEA,EAAEG,QAAW45B,GAAU,YAAa,MAAOo3B,IAAOA,GAEpDnxD,GAAEA,EAAEG,QAAUi7D,GAAwBp4B,EAAIx2B,EAAM8D,EAAK8uC,EAGrD,IAAG5yC,EAAK+xD,YAAav+D,EAAEA,EAAEG,QAAW45B,GAAU,gBAAiB,MAC9DykC,iBAAiBhyD,EAAK+xD,YAAYC,kBAAkB,KACpDC,aAAajyD,EAAK+xD,YAAYE,cAAc,KAC5CC,gBAAgBlyD,EAAK+xD,YAAYG,iBAAiB,KAGnD,IAAG17B,EAAG,UAAY,MAAQA,EAAG,SAAS7iC,OAAS,EAAGH,EAAEA,EAAEG,QAAWw6D,GAAkB33B,EAAIA,EAAG,SAE1FhjC,GAAEo+D,EAAOp+D,EAAEG,QAAU,cACrB6iC,GAAG,YACH,IAAGA,EAAG,SAAW,KAAM,CACtBq7B,EAAQR,GAAkB76B,EAAIx2B,EAAM8D,EAAK8uC,EAAItR,EAC7C,IAAGuwB,EAAMl+D,OAAS,EAAGH,EAAEA,EAAEG,QAAU,EAEpC,GAAGH,EAAEG,OAAOi+D,EAAK,EAAG,CAAEp+D,EAAEA,EAAEG,QAAU,cAAkBH,GAAEo+D,GAAMp+D,EAAEo+D,GAAM57D,QAAQ,KAAK,KAInF,GAAGwgC,EAAG,YAAahjC,EAAEA,EAAEG,QAAUy5D,GAAwB52B,EAAG,YAK5D,IAAGA,EAAG,gBAAkB,KAAMhjC,EAAEA,EAAEG,QAAUy6D,GAAwB53B,EAAG,eAAgBA,EAAIoc,EAAI9uC,EAM/F,IAAG0yB,EAAG,YAAc,MAAQA,EAAG,WAAW7iC,OAAS,EAAGH,EAAEA,EAAEG,QAAW44D,GAAoB/1B,EAAG,WAM5F,IAAI27B,IAAQ,EAAGltB,EAAKS,GAAO,CAC3B,IAAGlP,EAAG,UAAU7iC,OAAS,EAAG,CAC3BH,EAAEA,EAAEG,QAAU,cAChB6iC,GAAG,UAAUnsB,QAAQ,SAAS7B,GAC3B,IAAIA,EAAE,GAAG28B,OAAQ,MACjBF,IAAQ0f,IAAMn8C,EAAE,GAChB,IAAGA,EAAE,GAAG28B,OAAOtvC,OAAO,IAAM,IAAK,CAChC6vC,EAAMD,GAASnE,GAAO,EAAGjW,GAAU7iB,EAAE,GAAG28B,QAAQnvC,QAAQ,OAAQ,IAAKk4B,GAAKoV,MAC1E2B,GAAI,QAAU,MAAMS,EAErB,IAAIysB,EAAO3pD,EAAE,GAAG28B,OAAOjyC,QAAQ,OAAS,EAAG+xC,EAAIuoB,SAAWniC,GAAU7iB,EAAE,GAAG28B,OAAO9wC,MAAM89D,EAAK,GAC3F,IAAG3pD,EAAE,GAAGmlD,QAAS1oB,EAAIyoB,QAAUriC,GAAU7iB,EAAE,GAAGmlD,QAC9Cn6D,GAAEA,EAAEG,QAAU45B,GAAU,YAAY,KAAK0X,IAE1CzxC,GAAEA,EAAEG,QAAU,sBAER6iC,GAAG,SAIV,IAAGA,EAAG,aAAe,KAAMhjC,EAAEA,EAAEG,QAAWm6D,GAAqBt3B,EAAG;AASlE,IAAIx2B,GAAQA,EAAKoyD,UAAapyD,EAAKoyD,cAAkB,GAAK5+D,EAAEA,EAAEG,QAAU05B,GAAS,gBAAiBE,GAAU,eAAgB,MAAO8kC,mBAAmB,EAAGC,MAAM3N,IAI/J,IAAGmN,EAASn+D,OAAS,EAAG,CACvB+xC,EAAMD,GAASnE,GAAO,EAAG,uBAAyBx9B,EAAI,GAAK,OAAQoqB,GAAKsW,KACxEhxC,GAAEA,EAAEG,QAAU45B,GAAU,UAAW,MAAOglC,OAAO,MAAQ7sB,GACzDlP,GAAG,YAAcs7B,EAGlB,GAAGt7B,EAAG,aAAa7iC,OAAS,EAAG,CAC9B+xC,EAAMD,GAASnE,GAAO,EAAG,0BAA4Bx9B,EAAI,GAAK,OAAQoqB,GAAKqV,IAC3E/vC,GAAEA,EAAEG,QAAU45B,GAAU,gBAAiB,MAAOglC,OAAO,MAAQ7sB,GAC/DlP,GAAG,WAAakP,EAWjB,GAAGlyC,EAAEG,OAAO,EAAG,CAAEH,EAAEA,EAAEG,QAAU,cAAkBH,GAAE,GAAGA,EAAE,GAAGwC,QAAQ,KAAK,KACxE,MAAOxC,GAAEQ,KAAK,IAEf,QAASw+D,IAAYj/D,GACpB,GAAIwhC,KACJ,IAAI09B,GAAMl/D,EAAKyQ,MAAM,gBACrB,IAAIuE,IAGHhV,EAAKyQ,MAAM,0CAA0CqG,QAAQ,SAASyyC,GACtE,GAAIh9C,GAAIg9C,EAAG94C,MAAM,8CACjB,KAAIlE,EAAG,MACPi1B,IAAKj1B,EAAE,IAAM2yD,GAAO3yD,EAAE,GAAKA,EAAE,IAI9B,IAAI4yD,GAAK5nC,IAAav3B,EAAKyQ,MAAM,8CAAgD,GAAG,YAAY,KAE/FzQ,EAAKyQ,MAAM,4BAA4BqG,QAAQ,SAASsqC,GAAKpsC,EAAIosC,EAAE3+C,QAAQ,SAAS,KAErF,QAAQ++B,EAAK29B,EAAInqD,GAIlB,QAASoqD,IAAYp/D,EAAMkd,EAAMzQ,EAAMshC,EAAMsR,EAAIggB,GAChD,GAAIx9B,GAAOw9B,IAAWvL,QAAQ,QAC9B,KAAI9zD,EAAM,MAAOq/D,EAGjB,IAAIvmD,GAAI,EAAGO,EAAI,EAAGmoB,EAAM,GACxB,IAAIo2B,IAAY9zD,GAAIqN,EAAE,IAAS7M,EAAE,KAAUrB,GAAIkO,EAAE,EAAG7M,EAAE,KAGrDtE,EAAKyQ,MAAM,6CAA6CqG,QAAQ,SAASwoD,GACzE,GAAIC,GAAQN,GAAYK,EACxB1H,GAAS9zD,EAAEqN,EAAIymD,EAAS9zD,EAAEQ,EAAI,CAC9BszD,GAAS30D,EAAEqB,EAAIwU,CACf0oB,GAAMR,GAAWloB,EACjBymD,GAAM,GAAGzoD,QAAQ,SAASC,EAAE7W,GAC3B2hC,EAAGL,EAAMP,GAAW/gC,KAAO6F,EAAE,IAAKD,EAAEiR,EAAG6f,EAAE2oC,EAAM,GAC/ClmD,GAAInZ,GAEL,IAAG03D,EAAS30D,EAAEkO,EAAIkI,EAAGu+C,EAAS30D,EAAEkO,EAAIkI,IAClCP,GAEH,IAAGA,EAAI,EAAG+oB,EAAG,QAAUD,GAAag2B,EACpC,OAAO/1B,GAGR,QAAS29B,IAAax/D,EAAMyM,EAAM8D,EAAKw9B,EAAMsR,GAC5C,IAAIr/C,EAAM,MAAOA,EAEjB,KAAI+tC,EAAMA,GAAQ0D,SAClB,IAAI3tC,IAAMgwD,QAAQ,QAAS2L,UAAU,KAAMC,OAAO,GAClD,IAAIxyD,EAGJ,IAAI8qD,GAAUh4D,EAAKyQ,MAAM+mD,GACzB,IAAGQ,EAASC,GAAqBD,EAAQ,GAAIl0D,EAAGu7C,EAAI9uC,EAGpD,IAAIrD,EAAIlN,EAAKyQ,MAAM,wBAA0B3M,EAAE,QAAUoJ,EAAE,EAE3D,IAAG6gC,EAAK,OAAOjqC,EAAE,SAAUA,EAAE,WAAaiqC,EAAK,OAAOjqC,EAAE,QACxD,OAAOA,GAaR,GAAI67D,MACF,oBAA+B,MAAO,SACtC,uBAA+B,KAAO,SACtC,aAA+B,MAAO,SACtC,qBAA+B,MAAO,SACtC,WAA+B,KAC/B,WAA+B,MAAO,SACtC,sBAA+B,EAAQ,QACvC,gBAA+B,MAAO,SACtC,qBAA+B,MAAO,SACtC,oBAA+B,MAAO,SACtC,eAA+B,MAAO,SACtC,wBAA+B,MAAO,SACtC,yBAA+B,KAAO,SACtC,6BAA+B,KAAO,SACtC,oBAA+B,KAAO,SACtC,cAA+B,QAC/B,uBAA+B,MAAO,SACtC,cAAe,WAIjB,IAAIC,MACF,YAA+B,EAAQ,QACvC,yBAA+B,KAAO,SACtC,aAA+B,EAAQ,QACvC,YAA+B,MAAO,SACtC,uBAA+B,KAAO,SACtC,gBAA+B,KAAO,SACtC,qBAA+B,KAAO,SACtC,WAA+B,IAAQ,QACvC,aAA+B,WAKjC,IAAIC,MAKJ,IAAIC,MACF,gBAAiB,SACjB,WAAY,SACZ,aAAc,SACd,iBAAkB,SAClB,iBAAkB,UAClB,gBAAiB,SACjB,UAAW,UACX,eAAgB,QAChB,eAAgB,UAChB,UAAW,MAyBb,SAASC,IAAoBhqC,EAAQqZ,GACpC,IAAI,GAAIp/B,GAAI,EAAGA,GAAK+lB,EAAO31B,SAAU4P,EAAG,CAAE,GAAIvB,GAAIsnB,EAAO/lB,EACxD,KAAI,GAAI9P,GAAE,EAAGA,GAAKkvC,EAAShvC,SAAUF,EAAG,CAAE,GAAI02B,GAAIwY,EAASlvC,EAC1D,IAAGuO,EAAEmoB,EAAE,KAAO,KAAMnoB,EAAEmoB,EAAE,IAAMA,EAAE,OAC3B,QAAOA,EAAE,IACd,IAAK,OAAQ,SAAUnoB,GAAEmoB,EAAE,KAAO,SAAUnoB,EAAEmoB,EAAE,IAAM2B,GAAa9pB,EAAEmoB,EAAE,IAAM,OAC7E,IAAK,MAAO,SAAUnoB,GAAEmoB,EAAE,KAAO,SAAUnoB,EAAEmoB,EAAE,IAAMrlB,SAAS9C,EAAEmoB,EAAE,IAAK,GAAK,WAK/E,QAASopC,IAAcjqC,EAAQqZ,GAC9B,IAAI,GAAIlvC,GAAI,EAAGA,GAAKkvC,EAAShvC,SAAUF,EAAG,CAAE,GAAI02B,GAAIwY,EAASlvC,EAC5D,IAAG61B,EAAOa,EAAE,KAAO,KAAMb,EAAOa,EAAE,IAAMA,EAAE,OACrC,QAAOA,EAAE,IACb,IAAK,OAAQ,SAAUb,GAAOa,EAAE,KAAO,SAAUb,EAAOa,EAAE,IAAM2B,GAAaxC,EAAOa,EAAE,IAAM,OAC5F,IAAK,MAAO,SAAUb,GAAOa,EAAE,KAAO,SAAUb,EAAOa,EAAE,IAAMrlB,SAASwkB,EAAOa,EAAE,IAAK,GAAK,UAK9F,QAASqpC,IAAkB5gB,GAC1B2gB,GAAc3gB,EAAGE,QAASogB,GAC1BK,IAAc3gB,EAAG6gB,OAAQJ,GAEzBC,IAAoB1gB,EAAG8gB,OAAQP,GAC/BG,IAAoB1gB,EAAGxc,OAAQg9B,GAE/B7K,IAASznD,SAAWgrB,GAAa8mB,EAAGE,QAAQhyC,UAG7C,QAAS6yD,IAAS/gB,GAEjB,IAAIA,EAAGC,SAAU,MAAO,OACxB,KAAID,EAAGC,SAASC,QAAS,MAAO,OAChC,OAAOhnB,IAAa8mB,EAAGC,SAASC,QAAQhyC,UAAY,OAAS,QAG9D,GAAI8yD,IAAW,WAAYt8D,MAAM,GACjC,SAASu8D,IAAcvpD,EAAGse,GACzB,GAAGte,EAAE3W,OAAS,GAAI,CAAE,GAAGi1B,EAAM,MAAO,MAAO,MAAM,IAAI7wB,OAAM,sCAC3D,GAAI+7D,GAAQ,IACZF,IAASvpD,QAAQ,SAASxS,GACzB,GAAGyS,EAAEpX,QAAQ2E,KAAO,EAAG,MACvB,KAAI+wB,EAAM,KAAM,IAAI7wB,OAAM,2CAC1B+7D,GAAQ,OAET,OAAOA,GAER,QAASC,IAAeC,EAAGpzD,EAAGqzD,GAC7BD,EAAE3pD,QAAQ,SAASC,EAAE7W,GACpBogE,GAAcvpD,EACd,KAAI,GAAI/G,GAAI,EAAGA,EAAI9P,IAAK8P,EAAG,GAAG+G,GAAK0pD,EAAEzwD,GAAI,KAAM,IAAIxL,OAAM,yBAA2BuS,EACpF,IAAG2pD,EAAO,CACT,GAAIC,GAAMtzD,GAAKA,EAAEnN,IAAMmN,EAAEnN,GAAGg5D,UAAaniD,CACzC,IAAG4pD,EAAGtgE,WAAW,IAAM,IAAMsgE,EAAGvgE,OAAS,GAAI,KAAM,IAAIoE,OAAM,2BAA6Bm8D,MAI7F,QAASC,IAASvhB,GACjB,IAAIA,IAAOA,EAAGzc,aAAeyc,EAAGxc,OAAQ,KAAM,IAAIr+B,OAAM,mBACxD,KAAI66C,EAAGzc,WAAWxiC,OAAQ,KAAM,IAAIoE,OAAM,oBAC1C,IAAIq+B,GAAUwc,EAAGC,UAAYD,EAAGC,SAASzc,UACzC29B,IAAenhB,EAAGzc,WAAYC,IAAUwc,EAAGga,OAC3C,KAAI,GAAIn5D,GAAI,EAAGA,EAAIm/C,EAAGzc,WAAWxiC,SAAUF,EAAG62D,GAAS1X,EAAGxc,OAAOwc,EAAGzc,WAAW1iC,IAAKm/C,EAAGzc,WAAW1iC,GAAIA,EACtGm/C,GAAGzc,WAAW9rB,QAAQ,SAASC,EAAG7W,GACjC,GAAI+iC,GAAKoc,EAAGxc,OAAO9rB,EACnB,KAAIksB,IAAOA,EAAG,eAAgB,MAC9B,IAAIma,EACJ,KAAIiC,EAAGC,SAAUD,EAAGC,WACpB,KAAID,EAAGC,SAASE,MAAOH,EAAGC,SAASE,QACnCH,GAAGC,SAASE,MAAM1oC,QAAQ,SAAS+pD,GAAM,GAAGA,EAAG/gB,MAAQ,yBAA2B+gB,EAAGhhB,OAAS3/C,EAAGk9C,EAAKyjB,GACtG,IAAIjhB,GAAK3d,GAAyBlrB,GAAK,IAAMgrB,GAAUkB,EAAG,eAAemuB,IACzE,IAAGhU,EAAIA,EAAG2C,IAAMH,MACXP,GAAGC,SAASE,MAAM/5C,MAAMq6C,KAAM,wBAAyBD,MAAO3/C,EAAG6/C,IAAKH,MAK7E,GAAIkhB,IAAY,eAChB,SAASC,IAAa/gE,EAAMyM,GAC3B,IAAIzM,EAAM,KAAM,IAAIwE,OAAM,sBAC1B,IAAI66C,IAAO2hB,cAAezhB,WAAY4gB,UAAWt9B,UAAWq9B,UAAW1gB,SAAU7Q,MAAO,GACxF,IAAIqW,GAAO,MAAOrW,EAAQ,OAC1B,IAAIsyB,MAAYC,EAAU,CAC1BlhE,GAAKyC,QAAQ4zB,GAAU,QAAS8qC,GAAOlgE,EAAGsP,GACzC,GAAItD,GAAIupB,GAAYv1B,EACpB,QAAO81B,GAAS9pB,EAAE,KACjB,IAAK,QAAS,MAGd,IAAK,YACJ,GAAGhM,EAAEwP,MAAMqwD,IAAYnyB,EAAQ,QAAU1tC,EAAEwP,MAAM,WAAW,EAC5D4uC,GAAG1Q,MAAQ1hC,EAAE0hC,EACb,OACD,IAAK,cAAe,MAGpB,IAAK,qBAAuB1hC,GAAE,EAAIoyC,GAAG2hB,WAAa/zD,CAAG,OACrD,IAAK,kBAAkB,IAAK,iBAAkB,MAG9C,IAAK,eACJ,MACD,IAAK,iBAAkB,MAGvB,IAAK,eACL,IAAK,gBACJ0yD,GAAW7oD,QAAQ,SAASrI,GAC3B,GAAGxB,EAAEwB,EAAE,KAAO,KAAM,MACpB,QAAOA,EAAE,IACR,IAAK,OAAQ4wC,EAAGE,QAAQ9wC,EAAE,IAAM8pB,GAAatrB,EAAEwB,EAAE,IAAM,OACvD,IAAK,MAAO4wC,EAAGE,QAAQ9wC,EAAE,IAAM8C,SAAStE,EAAEwB,EAAE,IAAK,GAAK,OACtD,QAAS4wC,EAAGE,QAAQ9wC,EAAE,IAAMxB,EAAEwB,EAAE,OAGlC,IAAGxB,EAAEgsD,SAAU5Z,EAAGE,QAAQ2Z,SAAWngC,GAAS9rB,EAAEgsD,SAChD,OACD,IAAK,gBAAiB,MAGtB,IAAK,sBACJ,MACD,IAAK,wBAAyB,MAG9B,IAAK,cAAc,IAAK,eAAe,IAAK,eAAgB,MAE5D,IAAK,iBAAiB,IAAK,wBAA0BhsD,GAAE,EAAIoyC,GAAG8gB,OAAO16D,KAAKwH,EAAI,OAC9E,IAAK,kBAAmB,MAGxB,IAAK,WAAW,IAAK,YAAY,IAAK,YAAa,MAEnD,IAAK,SACJ,OAAOA,EAAE4S,OACR,IAAK,SAAU5S,EAAEm0D,OAAS,CAAG,OAC7B,IAAK,aAAcn0D,EAAEm0D,OAAS,CAAG,OACjC,QAASn0D,EAAEm0D,OAAS,SAEdn0D,GAAE4S,KACT5S,GAAEiQ,KAAOqa,GAAYwB,GAAS9rB,EAAEiQ,aACzBjQ,GAAE,EAAIoyC,GAAGxc,OAAOp9B,KAAKwH,EAAI,OACjC,IAAK,WAAY,MAGjB,IAAK,mBAAmB,IAAK,oBAAqB,MAElD,IAAK,iBAAkB,MAGvB,IAAK,uBAAuB,IAAK,yBAAyB,IAAK,uBAAwB,MAEvF,IAAK,qBAAsB,MAG3B,IAAK,kBAAmB,MACxB,IAAK,kBAAkB,IAAK,gBAAiB+3C,EAAK,IAAM,OACxD,IAAK,kBAAmBA,EAAK,KAAO,OAEpC,IAAK,eAAgB,CACpBic,IACAA,GAAMnhB,KAAO/mB,GAAS9rB,EAAEiQ,KACxB,IAAGjQ,EAAEkkD,QAAS8P,EAAMI,QAAUp0D,EAAEkkD,OAChC,IAAGlkD,EAAEq0D,aAAcL,EAAMphB,OAAS5yC,EAAEq0D,YACpC,IAAG/oC,GAAatrB,EAAE0zC,QAAQ,KAAMsgB,EAAMG,OAAS,IAC/CF,GAAU3wD,EAAMtP,EAAEb,OACjB,MACF,IAAK,iBAAkB,CACtB6gE,EAAMlhB,IAAMxoB,GAAYwB,GAAS/4B,EAAKc,MAAMogE,EAAS3wD,IACrD8uC,GAAGG,MAAM/5C,KAAKw7D,GACb,MACF,IAAK,iBAAkB,MAGvB,IAAK,gBAAkBh0D,GAAE,EAAIoyC,GAAG6gB,OAASjzD,CAAG,OAC5C,IAAK,kBAAoBA,GAAE,EAAIoyC,GAAG6gB,OAASjzD,CAAG,OAC9C,IAAK,YAAa,MAGlB,IAAK,WAAY,MAGjB,IAAK,yBAAyB,IAAK,0BAA0B,IAAK,uBAAwB,MAE1F,IAAK,uBAAuB,IAAK,wBAAyB,MAG1D,IAAK,iBAAiB,IAAK,kBAAkB,IAAK,eAAgB,MAElE,IAAK,cAAe,MAGpB,IAAK,eAAe,IAAK,gBAAiB,MAG1C,IAAK,kBAAkB,IAAK,mBAAmB,IAAK,mBAAoB,MAExE,IAAK,gBAAiB,MAGtB,IAAK,kBAAkB,IAAK,mBAAoB,MAGhD,IAAK,mBAAmB,IAAK,oBAAqB,MAGlD,IAAK,uBAAuB,IAAK,sBAAsB,IAAK,uBAAwB,MAEpF,IAAK,oBAAqB,MAG1B,IAAK,WAAW,IAAK,YAAY,IAAK,aAAa,IAAK,YAAa,MAErE,IAAK,OAAQ+3C,EAAK,IAAM,OACxB,IAAK,SAAUA,EAAK,KAAO,OAG3B,IAAK,UAAW,MAChB,IAAK,qBACL,IAAK,qBAAsBA,EAAK,IAAM,OACtC,IAAK,sBAAuBA,EAAK,KAAO,OAGxC,IAAK,eAAgB,MAErB,QAAS,IAAIA,GAAQv4C,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAM,gBAAkByI,EAAE,GAAK,iBAEzE,MAAOhM,IAER,IAAGo6B,GAAW17B,QAAQ0/C,EAAG1Q,UAAY,EAAG,KAAM,IAAInqC,OAAM,sBAAwB66C,EAAG1Q,MAEnFsxB,IAAkB5gB,EAElB,OAAOA,GAGR,QAASkiB,IAAaliB,GACrB,GAAIp/C,IAAKg2B,GACTh2B,GAAEA,EAAEG,QAAU45B,GAAU,WAAY,MACnC2U,MAAStT,GAAW,GAGpB+iC,UAAW9jC,GAAMnpB,GAGlB,IAAIqwD,GAAeniB,EAAGC,WAAaD,EAAGC,SAASE,WAAWp/C,OAAS,CAKnE,IAAIqhE,IAAexI,SAAS,eAC5B,IAAG5Z,EAAGC,UAAYD,EAAGC,SAASC,QAAS,CACtCogB,GAAW7oD,QAAQ,SAAS7V,GAC9B,GAAIo+C,EAAGC,SAASC,QAAQt+C,EAAE,KAAQ,KAAM,MACrC,IAAIo+C,EAAGC,SAASC,QAAQt+C,EAAE,KAAQA,EAAE,GAAI,MACxCwgE,GAAWxgE,EAAE,IAAOo+C,EAAGC,SAASC,QAAQt+C,EAAE,KAE7C,IAAGo+C,EAAGC,SAASC,QAAQ2Z,SAAU,CAAEuI,EAAWxI,SAAW5Z,EAAGC,SAASC,QAAQ2Z,eAAiBuI,GAAWvI,UAExGj5D,EAAEA,EAAEG,QAAW45B,GAAU,aAAc,KAAMynC,EAI7C,IAAI9+B,GAAS0c,EAAGC,UAAYD,EAAGC,SAASzc,UACxC,IAAI3iC,GAAI,CAGR,IAAGyiC,GAAUA,EAAO,MAAQA,EAAO,GAAGy+B,OAAQ,CAC7CnhE,EAAEA,EAAEG,QAAU,aACd,KAAIF,EAAI,EAAGA,GAAKm/C,EAAGzc,WAAWxiC,SAAUF,EAAG,CAC1C,IAAIyiC,EAAOziC,GAAI,KACf,KAAIyiC,EAAOziC,GAAGkhE,OAAQ,MAEvB,GAAGlhE,GAAKm/C,EAAGzc,WAAWxiC,OAAQF,EAAI,CAClCD,GAAEA,EAAEG,QAAU,6BAA+BF,EAAI,gBAAkBA,EAAI,KACvED,GAAEA,EAAEG,QAAU,eAGfH,EAAEA,EAAEG,QAAU,UACd,KAAIF,EAAI,EAAGA,GAAKm/C,EAAGzc,WAAWxiC,SAAUF,EAAG,CAC1C,GAAI8+C,IAAQ9hC,KAAK4a,GAAUunB,EAAGzc,WAAW1iC,GAAGY,MAAM,EAAE,KACpDk+C,GAAI0iB,QAAU,IAAIxhE,EAAE,EACpB8+C,GAAI,QAAU,OAAO9+C,EAAE,EACvB,IAAGyiC,EAAOziC,GAAI,OAAOyiC,EAAOziC,GAAGkhE,QAC9B,IAAK,GAAGpiB,EAAIn/B,MAAQ,QAAU,OAC9B,IAAK,GAAGm/B,EAAIn/B,MAAQ,YAAc,QAEnC5f,EAAEA,EAAEG,QAAW45B,GAAU,QAAQ,KAAKglB,GAEvC/+C,EAAEA,EAAEG,QAAU,WAKd,IAAGohE,EAAa,CACfvhE,EAAEA,EAAEG,QAAU,gBACd,IAAGi/C,EAAGC,UAAYD,EAAGC,SAASE,MAAOH,EAAGC,SAASE,MAAM1oC,QAAQ,SAASC,GACvE,GAAIvR,IAAK0X,KAAKnG,EAAE+oC,KAChB,IAAG/oC,EAAEsqD,QAAS77D,EAAE2rD,QAAUp6C,EAAEsqD,OAC5B,IAAGtqD,EAAE8oC,OAAS,KAAMr6C,EAAE87D,aAAe,GAAGvqD,EAAE8oC,KAC1C,IAAG9oC,EAAEqqD,OAAQ57D,EAAEm7C,OAAS,GACxB,KAAI5pC,EAAEgpC,IAAK,MACX9/C,GAAEA,EAAEG,QAAU45B,GAAU,cAAelC,GAAU/gB,EAAEgpC,KAAMv6C,IAE1DvF,GAAEA,EAAEG,QAAU,kBAcf,GAAGH,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,aAAeH,GAAE,GAAGA,EAAE,GAAGwC,QAAQ,KAAK,KACpE,MAAOxC,GAAEQ,KAAK,IAEf,QAASkhE,IAAS3hE,EAAMkd,EAAMzQ,GAC7B,GAAGyQ,EAAKpc,OAAO,KAAK,OAAQ,MAAO8gE,cAAa,EAAQn1D,EACxD,OAAOs0D,IAAa,EAAQt0D,GAG7B,QAASo1D,IAAS7hE,EAAMkd,EAAM3M,EAAK9D,EAAMshC,EAAMsR,EAAIhR,EAAQR,GAC1D,GAAG3wB,EAAKpc,OAAO,KAAK,OAAQ,MAAOghE,cAAa,EAAQr1D,EAAM8D,EAAKw9B,EAAMsR,EAAIhR,EAAQR,EACrF,OAAO8pB,IAAa,EAAQlrD,EAAM8D,EAAKw9B,EAAMsR,EAAIhR,EAAQR,GAG1D,QAASk0B,IAAS/hE,EAAMkd,EAAM3M,EAAK9D,EAAMshC,EAAMsR,EAAIhR,EAAQR,GAC1D,GAAG3wB,EAAKpc,OAAO,KAAK,OAAQ,MAAOkhE,cAAa,EAAQv1D,EAAM8D,EAAKw9B,EAAMsR,EAAIhR,EAAQR,EACrF,OAAO2xB,IAAa,EAAQ/yD,EAAM8D,EAAKw9B,EAAMsR,EAAIhR,EAAQR,GAG1D,QAASo0B,IAASjiE,EAAMkd,EAAM3M,EAAK9D,EAAMshC,EAAMsR,EAAIhR,EAAQR,GAC1D,GAAG3wB,EAAKpc,OAAO,KAAK,OAAQ,MAAOkzD,IAAa,EAAQvnD,EAAM8D,EAAKw9B,EAAMsR,EAAIhR,EAAQR,EACrF,OAAOomB,IAAa,EAAQxnD,EAAM8D,EAAKw9B,EAAMsR,EAAIhR,EAAQR,GAG1D,QAASq0B,IAASliE,EAAMkd,EAAM3M,EAAK9D,EAAMshC,EAAMsR,EAAIhR,EAAQR,GAC1D,GAAG3wB,EAAKpc,OAAO,KAAK,OAAQ,MAAO+yD,IAAa,EAAQpnD,EAAM8D,EAAKw9B,EAAMsR,EAAIhR,EAAQR,EACrF,OAAOkmB,IAAa,EAAQtnD,EAAM8D,EAAKw9B,EAAMsR,EAAIhR,EAAQR,GAG1D,QAASs0B,IAAUniE,EAAMkd,EAAMmxB,EAAQ5hC,GACtC,GAAGyQ,EAAKpc,OAAO,KAAK,OAAQ,MAAOshE,eAAc,EAAQ/zB,EAAQ5hC,EACjE,OAAO2gD,IAAc,EAAQ/e,EAAQ5hC,GAGtC,QAAS41D,IAAUriE,EAAMkd,EAAMzQ,GAC9B,GAAGyQ,EAAKpc,OAAO,KAAK,OAAQ,MAAOwhE,eAAc,EAAQ71D,EACzD,OAAOw6C,IAAc,EAAQx6C,GAG9B,QAAS81D,IAAWviE,EAAMkd,EAAMzQ,GAC/B,GAAGyQ,EAAKpc,OAAO,KAAK,OAAQ,MAAO0hE,oBAAmB,EAAQ/1D,EAC9D,OAAO6kD,IAAmB,EAAQ7kD,GAGnC,QAASg2D,IAASziE,EAAMkd,EAAMzQ,GAC7B,GAAGyQ,EAAKpc,OAAO,KAAK,OAAQ,MAAO4hE,cAAa,EAAQxlD,EAAMzQ,EAC9D,OAAOk2D,cAAa,EAAQzlD,EAAMzQ,GAGnC,QAASm2D,IAAY5iE,EAAM0xC,EAAKx0B,EAAMzQ,GACrC,GAAGyQ,EAAKpc,OAAO,KAAK,OAAQ,MAAOquD,IAAgB,EAAQzd,EAAKx0B,EAAMzQ,EACtE,OAAOyiD,IAAgB,EAAQxd,EAAKx0B,EAAMzQ,GAG3C,QAASo2D,IAAa7iE,EAAMkd,EAAMzQ,GACjC,GAAGyQ,EAAKpc,OAAO,KAAK,OAAQ,MAAOgiE,kBAAiB,EAAQ5lD,EAAMzQ,EAClE,OAAOiiD,IAAiB,EAAQxxC,EAAMzQ,GAGvC,QAASs2D,IAAc9wD,EAAKwP,GAC3B,GAAIhV,GAAOgV,KACX,IAAG9f,GAAS,MAAQ8K,EAAKu2B,OAAS,KAAMv2B,EAAKu2B,MAAQrhC,CACrD,IAAIshC,GAAKx2B,EAAKu2B,WACd/wB,GAAMA,EAAIxP,QAAQ,cAAe,GACjC,IAAIs1D,GAAO9lD,EAAIxB,MAAM,UACrB,KAAIsnD,EAAM,KAAM,IAAIvzD,OAAM,uCAC1B,IAAIw+D,GAAQ/wD,EAAIxB,MAAM,YACtB,IAAIvQ,GAAI63D,EAAKjM,MAAO97C,EAAIgzD,GAASA,EAAMlX,OAAS75C,EAAI7R,MACpD,IAAIyhD,GAAOxtB,GAAYpiB,EAAInR,MAAMZ,EAAG8P,GAAI,iBAAkB,OAC1D,IAAIqJ,IAAK,EAAGP,EAAI,EAAGmpC,EAAK,EAAGrR,EAAK,CAChC,IAAIlQ,IAAS58B,GAAGqN,EAAE,IAAU7M,EAAE,KAAUrB,GAAGkO,EAAE,EAAE7M,EAAE,GACjD,IAAIo0D,KACJ,KAAIx4D,EAAI,EAAGA,EAAI2hD,EAAKzhD,SAAUF,EAAG,CAChC,GAAIksB,GAAMy1B,EAAK3hD,GAAGisB,MAClB,IAAI82C,GAAK72C,EAAItrB,MAAM,EAAE,GAAGkT,aACxB,IAAGivD,GAAM,MAAO,GAAI5pD,CAAG,IAAG5M,EAAK4rC,WAAa5rC,EAAK4rC,WAAah/B,EAAG,GAAIA,CAAG,OAASP,EAAI,CAAG,UACxF,GAAGmqD,GAAM,OAASA,GAAM,MAAO,QAC/B,IAAI5G,GAAQjwC,EAAIroB,MAAM,aACtB,KAAIiM,EAAI,EAAGA,EAAIqsD,EAAMj8D,SAAU4P,EAAG,CACjC,GAAIqwB,GAAOg8B,EAAMrsD,GAAGmc,MACpB,KAAIkU,EAAK5vB,MAAM,WAAY,QAC3B,IAAIvD,GAAImzB,EAAMnuB,EAAK,CAEnB,OAAMhF,EAAE5K,OAAO,IAAM,MAAQ4P,EAAKhF,EAAEvN,QAAQ,OAAS,EAAGuN,EAAIA,EAAEpM,MAAMoR,EAAG,EACvE,KAAI,GAAIgxD,GAAO,EAAGA,EAAOxK,EAAOt4D,SAAU8iE,EAAM,CAC/C,GAAIvK,GAASD,EAAOwK,EACpB,IAAGvK,EAAO70D,EAAEQ,GAAKwU,GAAK6/C,EAAO70D,EAAEqN,EAAIkI,GAAKA,GAAKs/C,EAAO11D,EAAEkO,EAAG,CAAE2H,EAAI6/C,EAAO11D,EAAEqB,EAAI,CAAG4+D,IAAQ,GAExF,GAAIzsC,GAAMD,GAAY6J,EAAKv/B,MAAM,EAAGu/B,EAAK1gC,QAAQ,MACjDixC,GAAKna,EAAI0sC,SAAW1sC,EAAI0sC,QAAU,CAClC,KAAIlhB,GAAMxrB,EAAI2sC,SAAS,GAAKxyB,EAAG,EAAG8nB,EAAOjzD,MAAM3B,GAAGqN,EAAEkI,EAAE/U,EAAEwU,GAAG7V,GAAGkO,EAAEkI,GAAK4oC,GAAI,GAAK,EAAG39C,EAAEwU,EAAI83B,EAAK,IAC5F,IAAIyyB,GAAK5sC,EAAI1wB,GAAK0wB,EAAI,WAAa,EAEnC,KAAIvpB,EAAE9M,OAAQ,CAAE0Y,GAAK83B,CAAI,UACzB1jC,EAAIgsB,GAAWhsB,EACf,IAAGwzB,EAAM58B,EAAEqN,EAAIkI,EAAGqnB,EAAM58B,EAAEqN,EAAIkI,CAAG,IAAGqnB,EAAMz9B,EAAEkO,EAAIkI,EAAGqnB,EAAMz9B,EAAEkO,EAAIkI,CAC/D,IAAGqnB,EAAM58B,EAAEQ,EAAIwU,EAAG4nB,EAAM58B,EAAEQ,EAAIwU,CAAG,IAAG4nB,EAAMz9B,EAAEqB,EAAIwU,EAAG4nB,EAAMz9B,EAAEqB,EAAIwU,CAC/D,KAAI5L,EAAE9M,OAAQ,CAAE0Y,GAAK83B,CAAI,UACzB,GAAI3wC,IAAK8F,EAAE,IAAKD,EAAEoH,EAClB,IAAGT,EAAKkR,MAAQzQ,EAAEif,OAAO/rB,QAAUijE,GAAM,IAAI,MACxC,IAAGn2D,IAAM,OAAQjN,GAAK8F,EAAE,IAAKD,EAAE,UAC/B,IAAGoH,IAAM,QAASjN,GAAK8F,EAAE,IAAKD,EAAE,WAChC,KAAIzD,MAAMoxB,GAASvmB,IAAKjN,GAAK8F,EAAE,IAAKD,EAAE2tB,GAASvmB,QAC/C,KAAI7K,MAAM4xB,GAAU/mB,GAAGQ,WAAY,CACvCzN,GAAM8F,EAAE,IAAKD,EAAEurB,GAAUnkB,GACzB,KAAIT,EAAKk3B,UAAW1jC,GAAM8F,EAAE,IAAKD,EAAE4qB,GAAQzwB,EAAE6F,GAC7C7F,GAAE22B,EAAInqB,EAAK4I,QAAUvO,EAAU,IAEhC,GAAG2F,EAAKu2B,MAAO,CAAE,IAAIC,EAAG5pB,GAAI4pB,EAAG5pB,KAAS4pB,GAAG5pB,GAAGP,GAAK7Y,MAC9CgjC,GAAGrC,IAAazvB,EAAEkI,EAAG/U,EAAEwU,KAAO7Y,CACnC6Y,IAAK83B,GAGP3N,EAAG,QAAUrB,GAAalB,EAC1B,IAAGg4B,EAAOt4D,OAAQ6iC,EAAG,WAAay1B,CAClC,OAAOz1B,GAER,QAASqgC,IAAcrgC,EAAI9xB,EAAGkI,EAAGpZ,GAChC,GAAImN,GAAK61B,EAAG,cACZ,IAAI9E,KACJ,IAAI27B,KACJ,KAAI,GAAIhhD,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CACnC,GAAImpC,GAAK,EAAGrR,EAAK,CACjB,KAAI,GAAI5gC,GAAI,EAAGA,EAAI5C,EAAEhN,SAAU4P,EAAG,CACjC,GAAG5C,EAAE4C,GAAGlM,EAAEqN,EAAIkI,GAAKjM,EAAE4C,GAAGlM,EAAEQ,EAAIwU,EAAG,QACjC,IAAG1L,EAAE4C,GAAG/M,EAAEkO,EAAIkI,GAAKjM,EAAE4C,GAAG/M,EAAEqB,EAAIwU,EAAG,QACjC,IAAG1L,EAAE4C,GAAGlM,EAAEqN,EAAIkI,GAAKjM,EAAE4C,GAAGlM,EAAEQ,EAAIwU,EAAG,CAAEmpC,GAAM,CAAG,OAC5CA,EAAK70C,EAAE4C,GAAG/M,EAAEkO,EAAI/D,EAAE4C,GAAGlM,EAAEqN,EAAI,CAAGy/B,GAAKxjC,EAAE4C,GAAG/M,EAAEqB,EAAI8I,EAAE4C,GAAGlM,EAAEQ,EAAI,CAAG,OAE7D,GAAG29C,EAAK,EAAG,QACX,IAAIC,GAAQthB,IAAazvB,EAAEkI,EAAE/U,EAAEwU,GAC/B,IAAIunB,GAAOpgC,EAAE+iC,OAASC,EAAG5pB,QAAQP,GAAKmqB,EAAGif,EAEzC,IAAIzzC,GAAK4xB,GAAQA,EAAKv6B,GAAK,OAAUu6B,EAAKlb,GAAK8S,GAAWoI,EAAK5xB,IAAM8zB,GAAYlC,GAAOA,EAAK5xB,IAAM,MAAQ,EAC3GqrD,KACA,IAAG7X,EAAK,EAAG6X,EAAGsJ,QAAUnhB,CACxB,IAAGrR,EAAK,EAAGkpB,EAAGqJ,QAAUvyB,CACxB,IAAG3wC,EAAEsjE,SAAU90D,EAAI,gCAAkCA,EAAI,cACpD,IAAG4xB,EAAM,CACby5B,EAAG,UAAYz5B,GAAQA,EAAKt6B,GAAK,GACjC,IAAGs6B,EAAKv6B,GAAK,KAAMg0D,EAAG,UAAYz5B,EAAKv6B,CACvC,IAAGu6B,EAAKzJ,GAAK,KAAMkjC,EAAG,UAAYz5B,EAAKzJ,CACvC,IAAGyJ,EAAKprB,IAAMorB,EAAKprB,EAAE28B,QAAU,KAAKtvC,OAAO,IAAM,IAAKmM,EAAI,YAAc4xB,EAAKprB,EAAE28B,OAAQ,KAAOnjC,EAAI,OAEnGqrD,EAAGxK,IAAMrvD,EAAEqvD,IAAM,OAAS,IAAMpN,CAChC/jB,GAAG14B,KAAKu0B,GAAU,KAAMvrB,EAAGqrD,IAE5B,GAAI9X,GAAW,MACf,OAAOA,GAAW7jB,EAAG19B,KAAK,IAAM,QAGjC,GAAI+iE,IAAa,qFACjB,IAAIC,IAAW,gBAEf,SAASC,IAAiBzxD,EAAKxF,GAC9B,GAAIsrD,GAAO9lD,EAAIxB,MAAM,qCACrB,KAAIsnD,GAAQA,EAAK33D,QAAU,EAAG,KAAM,IAAIoE,OAAM,uCAC9C,IAAGuzD,EAAK33D,QAAU,EAAG,CACpB,GAAIqO,GAAIg0B,GAAkBsgC,GAAchL,EAAK,GAAItrD,GAAOA,EACxDgC,GAAEihC,SAAW,MACb,OAAOjhC,GAER,GAAI4wC,GAAKskB,IACT5L,GAAKjhD,QAAQ,SAAShT,EAAGyM,GAAOqzD,GAAkBvkB,EAAI0jB,GAAcj/D,EAAG2I,GAAO,SAAW8D,EAAI,KAC7F8uC,GAAG3P,SAAW,MACd,OAAO2P,GAGR,QAASwkB,IAAmB5gC,EAAI5pB,EAAGpZ,GAClC,GAAImF,KACJ,OAAOA,GAAI3E,KAAK,IAAM,UAAYR,GAAKA,EAAEqvD,GAAK,QAAUrvD,EAAEqvD,GAAK,IAAM,IAAM,IAG5E,QAASwU,IAAc7gC,EAAIx2B,GAC1B,GAAIxM,GAAIwM,KACR,IAAIgQ,GAASxc,EAAEwc,QAAU,KAAOxc,EAAEwc,OAAS+mD,EAC3C,IAAItN,GAASj2D,EAAEi2D,QAAU,KAAOj2D,EAAEi2D,OAASuN,EAC3C,IAAIr+D,IAAOqX,EACX,IAAItL,GAAIwwB,GAAasB,EAAG,QACxBhjC,GAAE+iC,MAAQt/B,MAAMW,QAAQ4+B,EACxB79B,GAAIK,KAAKo+D,GAAmB5gC,EAAI9xB,EAAGlR,GACnC,KAAI,GAAIoZ,GAAIlI,EAAErN,EAAEqN,EAAGkI,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAGjU,EAAIK,KAAK69D,GAAcrgC,EAAI9xB,EAAGkI,EAAGpZ,GACrEmF,GAAIK,KAAK,WAAaywD,EACtB,OAAO9wD,GAAI3E,KAAK,IAGjB,QAASsjE,IAAc9gC,EAAI3tB,EAAOmM,GACjC,GAAIogC,GAAOvsC,EAAMusC,IACjB,KAAIA,EAAM,CAET,KAAM,2BAA6BvsC,EAAM0uD,QAAU,kBAGpD,GAAIv3D,GAAOgV,KACX,IAAG9f,GAAS,KAAM8K,EAAKu2B,MAAQrhC,CAC/B,IAAIsiE,GAAO,EAAGC,EAAO,CACrB,IAAGz3D,EAAK22B,QAAU,KAAM,CACvB,SAAU32B,GAAK22B,QAAU,SAAU6gC,EAAOx3D,EAAK22B,WAC1C,CACJ,GAAIC,SAAiB52B,GAAK22B,QAAU,SAAW1B,GAAYj1B,EAAK22B,QAAU32B,EAAK22B,MAC/E6gC,GAAO5gC,EAAQlyB,CAAG+yD,GAAO7gC,EAAQ/+B,GAInC,GAAI+zC,GAAYjyC,KAAK0M,IAAIrG,EAAK4rC,WAAW,IAAUwJ,EAAKzhD,OACxD,IAAIsgC,IAAS58B,GAAGqN,EAAE,EAAE7M,EAAE,GAAGrB,GAAGkO,EAAE8yD,EAAK3/D,EAAE4/D,GACrC,IAAGjhC,EAAG,QAAS,CACd,GAAIK,GAAS3B,GAAasB,EAAG,QAC7BvC,GAAM58B,EAAEqN,EAAI/K,KAAK0M,IAAI4tB,EAAM58B,EAAEqN,EAAGmyB,EAAOx/B,EAAEqN,EACzCuvB,GAAM58B,EAAEQ,EAAI8B,KAAK0M,IAAI4tB,EAAM58B,EAAEQ,EAAGg/B,EAAOx/B,EAAEQ,EACzCo8B,GAAMz9B,EAAEkO,EAAI/K,KAAK2M,IAAI2tB,EAAMz9B,EAAEkO,EAAGmyB,EAAOrgC,EAAEkO,EACzCuvB,GAAMz9B,EAAEqB,EAAI8B,KAAK2M,IAAI2tB,EAAMz9B,EAAEqB,EAAGg/B,EAAOrgC,EAAEqB,EACzC,IAAG2/D,IAAS,EAAGvjC,EAAMz9B,EAAEkO,EAAI8yD,EAAO3gC,EAAOrgC,EAAEkO,EAAI,EAEhD,GAAIunD,MAAawK,EAAO,CACxB,IAAIjkB,GAAUhc,EAAG,WAAaA,EAAG,YACjC,IAAIC,GAAK,EAAG7pB,EAAI,EAAG8pB,EAAK,EAAGrqB,EAAI,EAAGmpC,EAAK,EAAGrR,EAAK,CAC/C,KAAI3N,EAAG,SAAUA,EAAG,WACpB,MAAMC,EAAK2e,EAAKzhD,QAAUiZ,EAAIg/B,IAAanV,EAAI,CAC9C,GAAI9W,GAAMy1B,EAAK3e,EACf,IAAIihC,GAAsB/3C,GAAM,CAC/B,GAAI3f,EAAK23D,QAAS,QAClBnlB,GAAQ5lC,IAAMsnC,OAAQ,MAEvB,GAAI0jB,GAAQj4C,EAAS,KACrB,KAAI+W,EAAKrqB,EAAI,EAAGqqB,EAAKkhC,EAAKjkE,SAAU+iC,EAAI,CACvC,GAAI5hB,GAAM8iD,EAAKlhC,EACf,IAAI12B,EAAK23D,SAAWD,GAAsB5iD,GAAM,QAChD,IAAIzb,GAAIyb,EAAI+iD,aAAa,UAAY/iD,EAAIgjD,aAAa,UAAYhjD,EAAI+iD,aAAa,KAAO/iD,EAAIgjD,aAAa,KAAOrrC,GAAW3X,EAAIijD,UACjI,IAAI5tC,GAAIrV,EAAIgjD,aAAa,WAAahjD,EAAIgjD,aAAa,IACvD,KAAIrB,EAAO,EAAGA,EAAOxK,EAAOt4D,SAAU8iE,EAAM,CAC3C,GAAIh2D,GAAIwrD,EAAOwK,EACf,IAAGh2D,EAAEpJ,EAAEQ,GAAKwU,EAAIorD,GAAQh3D,EAAEpJ,EAAEqN,EAAIkI,EAAI4qD,GAAQ5qD,EAAI4qD,GAAQ/2D,EAAEjK,EAAEkO,EAAG,CAAE2H,EAAI5L,EAAEjK,EAAEqB,EAAE,EAAI4/D,CAAMhB,IAAQ,GAG9FtyB,GAAMrvB,EAAIgjD,aAAa,YAAc,CACrC,KAAMtiB,GAAO1gC,EAAIgjD,aAAa,YAAc,GAAK,GAAK3zB,EAAG,EAAG8nB,EAAOjzD,MAAM3B,GAAGqN,EAAEkI,EAAI4qD,EAAK3/D,EAAEwU,EAAIorD,GAAMjhE,GAAGkO,EAAEkI,EAAI4qD,GAAQhiB,GAAI,GAAK,EAAG39C,EAAEwU,EAAIorD,GAAQtzB,GAAI,GAAK,IACvJ,IAAI3wC,IAAK8F,EAAE,IAAKD,EAAEA,EAClB,IAAIu9D,GAAK9hD,EAAIgjD,aAAa,WAAahjD,EAAIgjD,aAAa,MAAQ,EAChE,IAAGz+D,GAAK,KAAM,CACb,GAAGA,EAAE1F,QAAU,EAAGH,EAAE8F,EAAIs9D,GAAM,QACzB,IAAG52D,EAAKkR,KAAO7X,EAAEqmB,OAAO/rB,QAAU,GAAKijE,GAAM,IAAI,MACjD,IAAGv9D,IAAM,OAAQ7F,GAAK8F,EAAE,IAAKD,EAAE,UAC/B,IAAGA,IAAM,QAAS7F,GAAK8F,EAAE,IAAKD,EAAE,WAChC,KAAIzD,MAAMoxB,GAAS3tB,IAAK7F,GAAK8F,EAAE,IAAKD,EAAE2tB,GAAS3tB,QAC/C,KAAIzD,MAAM4xB,GAAUnuB,GAAG4H,WAAY,CACvCzN,GAAM8F,EAAE,IAAKD,EAAEurB,GAAUvrB,GACzB,KAAI2G,EAAKk3B,UAAW1jC,GAAM8F,EAAE,IAAKD,EAAE4qB,GAAQzwB,EAAE6F,GAC7C7F,GAAE22B,EAAInqB,EAAK4I,QAAUvO,EAAU,KAGjC,GAAG7G,EAAE22B,IAAMh0B,WAAag0B,GAAK,KAAM32B,EAAE22B,EAAIA,CAGzC,IAAI3hB,GAAI,GAAIwvD,EAAQljD,EAAImjD,qBAAqB,IAC7C,IAAGD,GAASA,EAAMrkE,OAAQ,IAAI,GAAIukE,GAAQ,EAAGA,EAAQF,EAAMrkE,SAAUukE,EAAO,GAAGF,EAAME,GAAOL,aAAa,QAAS,CACjHrvD,EAAIwvD,EAAME,GAAOJ,aAAa,OAAS,IAAGtvD,EAAE3S,OAAO,IAAM,IAAK,MAE/D,GAAG2S,GAAKA,EAAE3S,OAAO,IAAM,KAAO2S,EAAEnU,MAAM,EAAG,IAAIkT,eAAiB,cAAe/T,EAAEgV,GAAO28B,OAAQ38B,EAC9F,IAAGxI,EAAKu2B,MAAO,CAAE,IAAIC,EAAG5pB,EAAI4qD,GAAOhhC,EAAG5pB,EAAI4qD,KAAYhhC,GAAG5pB,EAAI4qD,GAAMnrD,EAAIorD,GAAQjkE,MAC1EgjC,GAAGrC,IAAat8B,EAAEwU,EAAIorD,EAAM/yD,EAAEkI,EAAI4qD,KAAUhkE,CACjD,IAAGygC,EAAMz9B,EAAEqB,EAAIwU,EAAIorD,EAAMxjC,EAAMz9B,EAAEqB,EAAIwU,EAAIorD,CACzCprD,IAAK83B,IAEJv3B,EAEH,GAAGq/C,EAAOt4D,OAAQ6iC,EAAG,YAAcA,EAAG,gBAAkBr+B,OAAO8zD,EAC/Dh4B,GAAMz9B,EAAEkO,EAAI/K,KAAK2M,IAAI2tB,EAAMz9B,EAAEkO,EAAGkI,EAAI,EAAI4qD,EACxChhC,GAAG,QAAUrB,GAAalB,EAC1B,IAAGrnB,GAAKg/B,EAAWpV,EAAG,YAAcrB,IAAclB,EAAMz9B,EAAEkO,EAAI0wC,EAAKzhD,OAAO8iC,EAAG7pB,EAAE,EAAI4qD,EAAKvjC,GACxF,OAAOuC,GAGR,QAAS2hC,IAAgBtvD,EAAOmM,GAC/B,GAAIhV,GAAOgV,KACX,IAAIwhB,GAAKx2B,EAAKu2B,WACd,OAAO+gC,IAAc9gC,EAAI3tB,EAAOmM,GAGjC,QAASojD,IAAcvvD,EAAO7I,GAC7B,GAAIxM,GAAIwiC,GAAkBmiC,GAAgBtvD,EAAO7I,GAAOA,EAExD,OAAOxM,GAGR,QAASkkE,IAAsBW,GAC9B,GAAIV,GAAU,EACd,IAAIW,GAAqBC,GAAgCF,EACzD,IAAGC,EAAoBX,EAAUW,EAAmBD,GAASG,iBAAiB,UAC9E,KAAIb,EAASA,EAAUU,EAAQ31B,OAAS21B,EAAQ31B,MAAMi1B,OACtD,OAAOA,KAAY,OAIpB,QAASY,IAAgCF,GAExC,GAAGA,EAAQI,cAAcC,mBAAsBL,GAAQI,cAAcC,YAAYC,mBAAqB,WAAY,MAAON,GAAQI,cAAcC,YAAYC,gBAE3J,UAAUA,oBAAqB,WAAY,MAAOA,iBAClD,OAAO,MAGR,QAASC,IAAa/5C,GAErB,GAAIg6C,GAAQh6C,EACV7oB,QAAQ,YAAa,KAAK0pB,OAAO1pB,QAAQ,MAAO,KAChDA,QAAQ,cAAc,KACtBA,QAAQ,6BAA8B,SAASoO,EAAGC,GAAM,MAAOpN,OAAM6N,SAAST,EAAG,IAAI,GAAGrQ,KAAK,OAC7FgC,QAAQ,qBAAqB,MAC7BA,QAAQ,uBAAuB,KACjC,IAAIqD,GAAIyxB,GAAY+tC,EAAM7iE,QAAQ,WAAW,IAE7C,QAAQqD,GAIT,QAASy/D,IAAiB//D,EAAGic,EAAO+jD,GACnC,GAAIC,GAAoBD,KACxB,IAAIvzD,GAAMmoB,GAAe50B,EACzB60B,IAAUqrC,UAAY,CACtBzzD,GAAMA,EAAIxP,QAAQ,sBAAsB,IAAIA,QAAQ,+BAA+B,GACnF,IAAI+vC,GAAImzB,EAAOrZ,EAAK,GAAIsZ,EAAM,GAAI34D,EAAG44D,EAAQ,EAAGtT,GAAQ,EAAGuT,EAAQ,MAAOznD,EAAU,EACpF,OAAOm0B,EAAKnY,GAAUqY,KAAKzgC,GAAO,CACjC,OAAQugC,EAAG,GAAGA,EAAG,GAAG/vC,QAAQ,OAAO,KAEnC,IAAK,gBACL,IAAK,kBACL,IAAK,oBACL,IAAK,cACL,IAAK,cACL,IAAK,aACJ,GAAG+vC,EAAG,KAAK,IAAK,CACfszB,EAAQ,KACR,IAAGH,EAAM,yBAA2B,QAAS,CAC5C,GAAGrZ,EAAG77C,MAAM,KAAM67C,EAAKA,EAAG7pD,QAAQ,KAAM,YACnC,IAAG6pD,EAAG77C,MAAM,KAAM67C,EAAKA,EAAG7pD,QAAQ,KAAM,YACxC,IAAG6pD,EAAG77C,MAAM,KAAM67C,EAAKA,EAAG7pD,QAAQ,KAAM,QAE9CgjE,EAAkBE,EAAMzoD,MAAQovC,CAChCA,GAAK,OACC,IAAG9Z,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAK,CAC/C0lE,EAAQ,IACRxZ,GAAK,EACLqZ,GAAQnvC,GAAYgc,EAAG,GAAI,OAC1B,MAGH,IAAK,gBACJ,GAAGA,EAAG,KAAK,IAAK,CACfszB,EAAQ,KACRL,GAAkBE,EAAMzoD,MAAQ,SAChCovC,GAAK,OACC,IAAG9Z,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAK,CAC/C0lE,EAAQ,IACRxZ,GAAK,EACLqZ,GAAQnvC,GAAYgc,EAAG,GAAI,OAC1B,MAGH,IAAK,UACJ8Z,GAAM,SACN,OAED,IAAK,OACJ,GAAG9Z,EAAG,KAAK,IAAK,CACfn0B,EAAUpM,EAAInR,MAAMyxD,EAAMl4B,GAAUqrC,UAAYlzB,EAAG,GAAGpyC,OAEtD,IAAGie,GAAW,KAAOsnD,EAAM,IAAM,2BAA4BrZ,GAAM,QAC9DA,IAAM,IAAMjuC,EAAQ5b,QAAQ,KAAM,MAAQ,QACzC,IAAG+vC,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAK,CAC/CmyD,EAAOl4B,GAAUqrC,UAChB,MAGH,IAAK,MAAO,CACXz4D,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,QAAOvlC,EAAE,UACR,IAAK,QAASq/C,GAAM,GAAK,OACzB,IAAK,OAAQA,GAAM,IAAM,OACzB,QAASA,GAAM,IAAM,SAErB,MAEF,IAAK,cAAe,CACnBr/C,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,QAAOvlC,EAAE,UACR,IAAK,QAASq/C,GAAM,KAAO,OAC3B,IAAK,OAAQA,GAAM,MAAQ,OAC3B,QAASA,GAAM,KAAO,SAEtB,MAEF,IAAK,MAAO,CACXr/C,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,QAAOvlC,EAAE,UACR,IAAK,QAASq/C,GAAM,IAAM,OAC1B,IAAK,OAAQA,GAAM,MAAQ,OAC3B,QAASA,GAAM,MAAQ,SAEvB,MAEF,IAAK,QAAS,CACbr/C,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,QAAOvlC,EAAE,UACR,IAAK,QAASq/C,GAAM,GAAK,OACzB,IAAK,OAAQA,GAAM,IAAM,OACzB,QAASA,GAAM,IAAM,SAErB,MAEF,IAAK,UAAW,CACfr/C,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,QAAOvlC,EAAE,UACR,IAAK,QAASq/C,GAAM,GAAK,OACzB,IAAK,OAAQA,GAAM,IAAM,OACzB,QAASA,GAAM,IAAM,SAErB,MAEF,IAAK,QAAS,CACbr/C,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,IAAGvlC,EAAE,WAAYq/C,GAAM,IACvB,QAAOr/C,EAAE,UACR,IAAK,QAASq/C,GAAM,GAAK,OACzB,IAAK,OAAQA,GAAM,IAAM,OACzB,QAASA,GAAM,GAAK,SAEpB,MAEF,IAAK,UAAW,CACfr/C,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,QAAOvlC,EAAE,UACR,IAAK,QAASq/C,GAAM,GAAK,OACzB,IAAK,OAAQA,GAAM,IAAM,OACzB,QAASA,GAAM,IAAM,QAEtB,GAAGr/C,EAAE,kBAAmBq/C,GAAM,IAAMtmD,GAAK,KAAMiH,EAAE,mBAChD,MAEF,IAAK,OAAQ,CACZA,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,QAAOvlC,EAAE,UACR,IAAK,QAASq/C,GAAM,IAAM,OAC1B,IAAK,OAAQA,GAAM,MAAQ,OAC3B,QAASA,GAAM,IAAM,SAErB,MAEF,IAAK,QACJA,GAAM,OACN,OAED,IAAK,gBACL,IAAK,UACJ5pC,QAAQC,MAAM,2CAA6C6vB,EAAG,GAC9D,OAED,IAAK,iBACJ,GAAGA,EAAG,KAAK,IAAK,CACfn0B,EAAUpM,EAAInR,MAAMyxD,EAAMl4B,GAAUqrC,UAAYlzB,EAAG,GAAGpyC,OAEtDksD,IAAM,IAAMjuC,EAAQ5b,QAAQ,KAAM,MAAQ,SACpC,IAAG+vC,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAK,CAC/CmyD,EAAOl4B,GAAUqrC,UAChB,MAEH,IAAK,oBAEJz4D,EAAIupB,GAAYgc,EAAG,GAAI,MACvB8Z,IAAM,KAAOtmD,GAAK,KAAMiH,EAAE,wBAA0BA,EAAE,mBAAqB,GAAKjH,GAAK,KAAMiH,EAAE,mBAAqBA,EAAE,uBAAyB,GAAK,KAAOsrB,GAAatrB,EAAE,yBAA2B,IAAM,IAAMjH,GAAK,KAAMiH,EAAE,wBAA0B,EACtP,OAED,IAAK,WAEJA,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,MAAKvlC,EAAE,sBAAuBq/C,GAAM,QAC/BA,IAAMtmD,GAAK,KAAMiH,EAAE,sBACxBq/C,IAAM,GACNA,IAAMtmD,GAAK,KAAMiH,EAAE,yBAA2B,EAC9Cq/C,IAAM,GACN,KAAIr/C,EAAE,qBAAsBq/C,GAAMr/C,EAAE,yBAC/Bq/C,IAAMtmD,GAAK,KAAMiH,EAAE,2BAA6B,EACrD,OAED,IAAK,kBAEJ,GAAGulC,EAAG,KAAK,IAAK,CACf8Z,GAAM,IAAMr6C,EAAInR,MAAMyxD,EAAMl4B,GAAUqrC,UAAYlzB,EAAG,GAAGpyC,QAAQqC,QAAQ,KAAM,MAAQ,QAChF,IAAG+vC,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAK,CAC/CmyD,EAAOl4B,GAAUqrC,cACXpZ,IAAM,GACb,OAED,IAAK,kBACJr/C,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,SAAQvlC,EAAE,UAAU,IAAI+G,cAAcvR,QAAQ,IAAK,KAClD,IAAK,UAAU,IAAK,MAAO6pD,EAAK,QAAUA,CAAI,QAE/C,MAED,IAAK,eACJA,GAAM,GACN,OAED,IAAK,MAEJr/C,EAAIupB,GAAYgc,EAAG,GAAI,MACvB,IAAGjb,GAAYtqB,EAAE,eAAiB,aAAcq/C,EAAKmZ,EAAkBx4D,EAAE,qBAAuB,IAAMq/C,MACjG5pC,SAAQC,MAAM,uCAAyC1V,EAAE,aAC9D,OAED,IAAK,SAEJ,GAAGulC,EAAG,KAAK,IAAK,KAChBvlC,GAAIupB,GAAYgc,EAAG,GAAI,MACvBozB,GAAM,EACNA,IAAO5/D,GAAK,KAAMiH,EAAE,uBAAyB,EAC7C,IAAGsrB,GAAatrB,EAAE,aAAc24D,EAAM71D,GAAS/J,GAAK,IAAKI,KAAK2M,IAAI,EAAG,EAAI6yD,EAAIxlE,SAAWwlE,EACxF,KAAI34D,EAAE,wBAA0BA,EAAE,kBAAmB24D,GAAO,GAC5D,KAAI34D,EAAE,sBAAuB24D,GAAO5/D,GAAK,KAAMiH,EAAE,uBAAyB,EAC1E,KAAIA,EAAE,oBAAsBA,EAAE,uBAAuB,GAAI24D,GAAO5/D,GAAK,KAAMiH,EAAE,oBAAsBA,EAAE,uBAAuB,GAC5Hq/C,IAAMsZ,CACN,OAED,IAAK,gBAEJ,GAAGpzB,EAAG,KAAK,IAAK,CACf,GAAGqzB,GAAS,EAAGvZ,GAAM,IAAMr6C,EAAInR,MAAMyxD,EAAMl4B,GAAUqrC,UAAYlzB,EAAG,GAAGpyC,QAAQqC,QAAQ,KAAM,MAAQ,QAChG6pD,GAAKA,EAAGxrD,MAAM,EAAG+kE,GAAS,IAAM5zD,EAAInR,MAAMyxD,EAAMl4B,GAAUqrC,UAAYlzB,EAAG,GAAGpyC,QAAQqC,QAAQ,KAAM,MAAQ,IAAM6pD,EAAGxrD,MAAM+kE,OACxH,IAAGrzB,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAK,CAC/CmyD,EAAOl4B,GAAUqrC,SACjBG,KAAUrvC,GAAYgc,EAAG,GAAI,OAAO,aAAe,EAClD,QAGJ,MAAOizB,GAGR,QAASM,IAAkBvgE,EAAGic,EAAO+jD,GACnC,GAAI/4D,GAAOgV,KACX,IAAG9f,GAAS,MAAQ8K,EAAKu2B,OAAS,KAAMv2B,EAAKu2B,MAAQrhC,CACrD,IAAIsQ,GAAMmoB,GAAe50B,EACzB,IAAIqa,MAAY6L,CAChB,IAAI+K,EACJ,IAAIuvC,GAAO1Z,EAAK,GAAI2Z,EAAO,CAC3B,IAAIC,EACJ,IAAIC,EACJ,IAAItjC,MAAaD,IACjB,IAAIK,GAAKx2B,EAAKu2B,WACd,IAAIwP,GAAIjmC,CACR,IAAI65D,IAAS5tC,MAAM,GACnB,IAAI6tC,GAAQ,GAAIC,EAAW,EAAGC,CAC9B,IAAIC,KACJ,IAAIntD,IAAK,EAAGP,GAAK,EAAG4nB,GAAS58B,GAAIqN,EAAE,IAAQ7M,EAAE,KAAWrB,GAAIkO,EAAE,EAAG7M,EAAE,GACnE,IAAImiE,GAAS,CACb,IAAIhB,GAAoBD,MAAY33B,IACpC,IAAI6qB,MAAagO,KAAaC,EAAK,EAAGC,EAAK,CAC3C,IAAI3nB,MAAc4nB,EAAU,EAAGC,EAAU,CACzC,IAAIjK,KACJ,IAAIhtB,IAAM2P,SAAUD,WACpB,IAAIwnB,KACJ,IAAIC,IAAQ,GAAI,GAChB,IAAIx5B,MAAe2jB,IACnB,IAAI8V,GAAU,GAAIC,EAAa,CAC/B,IAAIC,GAAS,MAAOC,EAAU,KAC9B,IAAIlnE,GAAI,CACR,IAAImnE,GAAU,CACdhtC,IAAUqrC,UAAY,CACtBzzD,GAAMA,EAAIxP,QAAQ,sBAAsB,IAAIA,QAAQ,+BAA+B,GACnF,OAAO+vC,EAAKnY,GAAUqY,KAAKzgC,GAAO,OAAQugC,EAAG,GAAGA,EAAG,GAAG/vC,QAAQ,OAAO,KAEpE,IAAK,SAAS,IAAK,MAClB,GAAG+vC,EAAG,KAAK,IAAK,CACf,GAAG9R,EAAMz9B,EAAEqB,GAAKo8B,EAAM58B,EAAEQ,GAAKo8B,EAAMz9B,EAAEkO,GAAKuvB,EAAM58B,EAAEqN,EAAG8xB,EAAG,QAAUrB,GAAalB,OAC1EuC,GAAG,QAAU,OAClB,IAAGx2B,EAAK4rC,UAAY,GAAK5rC,EAAK4rC,WAAa3X,EAAMz9B,EAAEkO,EAAG,CACrD8xB,EAAG,YAAcA,EAAG,OACpBvC,GAAMz9B,EAAEkO,EAAI1E,EAAK4rC,UAAY,CAC7BpV,GAAG,QAAUrB,GAAalB,GAE3B,GAAGg4B,EAAOt4D,OAAQ6iC,EAAG,WAAay1B,CAClC,IAAGzZ,EAAQ7+C,OAAQ6iC,EAAG,SAAWgc,CACjCinB,GAAQhpD,KAAOgpD,EAAQ,OAASA,EAAQhpD,IACxC,UAAUqW,QAAS,YAAaA,KAAKC,UAAU0yC,EAC/CtjC,GAAWn9B,KAAKygE,EAAQhpD,KACxB2lB,GAAOqjC,EAAQhpD,MAAQ+lB,CACvBmkC,GAAU,UAEN,IAAG50B,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAK,CAC7C8lE,EAAU1vC,GAAYgc,EAAG,GAAI,MAC7Bn5B,GAAIP,GAAK,CACT4nB,GAAM58B,EAAEqN,EAAIuvB,EAAM58B,EAAEQ,EAAI,GAAUo8B,GAAMz9B,EAAEkO,EAAIuvB,EAAMz9B,EAAEqB,EAAI,CAC1D2+B,GAAKx2B,EAAKu2B,WAAqB01B,KAC/BzZ,KACAmoB,GAAU,KAEX,MAED,IAAK,kBACJ,GAAG50B,EAAG,KAAO,MAAOi0B,QAAeA,CACnC,OACD,IAAK,aAAa,IAAK,IACtB,GAAGj0B,EAAG,KAAO,IAAK,CAAEn5B,GAAGwtD,CAASA,GAAU,CAAG,OAC7CV,EAAS3vC,GAAYgc,EAAG,GAAI,MAC5B,IAAG2zB,EAAO,MAAO9sD,EAAI8sD,EAAO,MAAQ,MAAQ,IAAG9sD,IAAM,EAAGA,EAAI,CAC5DwtD,IAAWV,EAAO,yBAA2B,CAE7C,IAAGU,EAAU,GAAI,IAAI3mE,EAAI,EAAGA,EAAI2mE,IAAW3mE,EAAG,GAAGumE,EAAS,EAAGxnB,EAAQ5lC,EAAInZ,IAAMs1D,MAAOiR,EACtF3tD,IAAK,CAAG,OACT,IAAK,qBACJ,GAAG05B,EAAG,KAAO,MAAO15B,CACpB,IAAGrM,EAAKi3B,WAAY,CACnB,GAAGj3B,EAAKu2B,MAAO,CAAE,IAAIC,EAAG5pB,GAAI4pB,EAAG5pB,KAAS4pB,GAAG5pB,GAAGP,IAAM/S,EAAE,SACjDk9B,GAAGrC,IAAazvB,EAAEkI,EAAE/U,EAAEwU,MAAQ/S,EAAE,KAEtCsgE,EAAQ,EAAIG,KACZ,OACD,IAAK,cAAc,IAAK,KACvB,GAAGh0B,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAK,GACtC0Y,CACFstD,GAAO5vC,GAAYgc,EAAG,GAAI,MAC1Bs0B,GAAUv1D,SAAS60D,EAAK,4BAA4B,IAAK,GACzD75D,IAAMxG,EAAE,IAAKD,EAAE,KACf,IAAGsgE,EAAK/lB,SAAW5zC,EAAK+wD,aAAe,MAAOjxD,EAAEyI,EAAI4/C,GAAmBr9B,GAAY6uC,EAAK/lB,SACxF,IAAG+lB,EAAK,eAAiBv4B,EAAOu4B,EAAK,eAAgB75D,EAAEqqB,EAAIiX,EAAOu4B,EAAK,cACvE,KAAIA,EAAK,SAAWA,EAAK,gBAAkB,SAAU,CACpD75D,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIyxB,GAAY6uC,EAAK,iBAAmB,GACrD,IAAG35D,EAAKu2B,MAAO,CACd,IAAIC,EAAG5pB,GAAI4pB,EAAG5pB,KACd4pB,GAAG5pB,GAAGP,GAAKvM,MACL,CACN02B,EAAGrC,IAAazvB,EAAEkI,EAAE/U,EAAEwU,KAAOvM,GAG/BuM,GAAIguD,EAAQ,MACN,IAAGt0B,EAAG,KAAK,IAAK,GACpB15B,CACFutD,GAAQ,EAAIC,GAAW,CAAGE,KAC1BM,GAAU,CACV,IAAIQ,GAAOT,EAAUxtD,EAAIwtD,EAAU,EAAIxtD,CACvC,IAAGP,EAAI4nB,EAAMz9B,EAAEqB,EAAGo8B,EAAMz9B,EAAEqB,EAAIwU,CAC9B,IAAGA,EAAI4nB,EAAM58B,EAAEQ,EAAGo8B,EAAM58B,EAAEQ,EAAIwU,CAC9B,IAAGO,EAAIqnB,EAAM58B,EAAEqN,EAAGuvB,EAAM58B,EAAEqN,EAAIkI,CAC9B,IAAGiuD,EAAO5mC,EAAMz9B,EAAEkO,EAAGuvB,EAAMz9B,EAAEkO,EAAIm2D,CACjClB,GAAO5vC,GAAYgc,EAAG,GAAI,MAC1BhF,KAAe2jB,KACf5kD,IAAMxG,EAAEqgE,EAAK,SAAWA,EAAK,cAAetgE,EAAE,KAC9C,IAAGsgE,EAAK,eAAiBv4B,EAAOu4B,EAAK,eAAgB75D,EAAEqqB,EAAIiX,EAAOu4B,EAAK,cACvE,IAAG35D,EAAK+wD,YAAa,CACpB,GAAG4I,EAAK/lB,QAAS+lB,EAAK/lB,QAAU9oB,GAAY6uC,EAAK/lB,QACjD,IAAG+lB,EAAK,kCAAoCA,EAAK,8BAA+B,CAC/EO,EAAKp1D,SAAS60D,EAAK,8BAA8B,KAAO,CACxDQ,GAAKr1D,SAAS60D,EAAK,iCAAiC,KAAO,CAC3DM,IAAU5iE,GAAIqN,EAAEkI,EAAE/U,EAAEwU,GAAI7V,GAAGkO,EAAEkI,EAAIstD,EAAG,EAAEriE,EAAEwU,EAAI8tD,EAAG,GAC/Cr6D,GAAE60C,EAAIxf,GAAa8kC,EACnB7J,GAAOp3D,MAAMihE,EAAQn6D,EAAE60C,IAExB,GAAGglB,EAAK/lB,QAAS9zC,EAAEyI,EAAI4/C,GAAmBwR,EAAK/lB,aAC1C,KAAIngD,EAAI,EAAGA,EAAI28D,EAAOz8D,SAAUF,EACpC,GAAGmZ,GAAKwjD,EAAO38D,GAAG,GAAG4D,EAAEqN,GAAKkI,GAAKwjD,EAAO38D,GAAG,GAAG+C,EAAEkO,EAC/C,GAAG2H,GAAK+jD,EAAO38D,GAAG,GAAG4D,EAAEQ,GAAKwU,GAAK+jD,EAAO38D,GAAG,GAAG+C,EAAEqB,EAC/CiI,EAAE60C,EAAIyb,EAAO38D,GAAG,GAEpB,GAAGkmE,EAAK,2BAA6BA,EAAK,uBAAwB,CACjEO,EAAKp1D,SAAS60D,EAAK,uBAAuB,KAAO,CACjDQ,GAAKr1D,SAAS60D,EAAK,0BAA0B,KAAO,CACpDM,IAAU5iE,GAAIqN,EAAEkI,EAAE/U,EAAEwU,GAAI7V,GAAGkO,EAAEkI,EAAIstD,EAAG,EAAEriE,EAAEwU,EAAI8tD,EAAG,GAC/ClO,GAAOjzD,KAAKihE,GAIb,GAAGN,EAAK,2BAA4BU,EAAUv1D,SAAS60D,EAAK,2BAA4B,GAGxF,QAAO75D,EAAExG,GACR,IAAK,UAAWwG,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIyyB,GAAa6tC,EAAK,oBAAuBA,EAAK,kBAAoB,CAAI,OACvG,IAAK,QAAS75D,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIgP,WAAWsxD,EAAK5tC,MAAQ,OACvD,IAAK,aAAcjsB,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIgP,WAAWsxD,EAAK5tC,MAAQ,OAC5D,IAAK,WAAYjsB,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIgP,WAAWsxD,EAAK5tC,MAAQ,OAC1D,IAAK,OAAQjsB,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIurB,GAAU+0C,EAAK,cAC5C,KAAI35D,EAAKk3B,UAAW,CAAEp3B,EAAExG,EAAI,GAAKwG,GAAEzG,EAAI4qB,GAAQnkB,EAAEzG,EAAG+pC,EAAG0P,QAAQhyC,UAAY85D,EAC3E,IAAI96D,EAAEqqB,EAAGrqB,EAAEqqB,EAAI,QAAU,OAC1B,IAAK,OAAQrqB,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIkrB,GAAao1C,EAAK,eAAe,KAC9D,IAAG35D,EAAKk3B,UAAW,CAAEp3B,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIgrB,GAAQvkB,EAAEzG,GAChD,IAAIyG,EAAEqqB,EAAGrqB,EAAEqqB,EAAI,UAAY,OAC5B,IAAK,SAAUrqB,EAAExG,EAAI,GAAKwG,GAAEzG,EAAIgP,WAAWsxD,EAAK,QAAU,OAC1D,QACC,GAAG75D,EAAExG,IAAM,UAAYwG,EAAExG,IAAM,SAAWwG,EAAExG,EAAG,CAC9CwG,EAAExG,EAAI,GACN,IAAGqgE,EAAK,iBAAmB,KAAM,CAAEC,EAAQ9uC,GAAY6uC,EAAK,gBAAkBI,WACxE,MAAM,IAAIhiE,OAAM,0BAA4B+H,EAAExG,SAEjD,CACNohE,EAAS,KACT,IAAG56D,EAAExG,IAAM,IAAK,CACfwG,EAAEzG,EAAIugE,GAAS,EACf,IAAGG,EAAMpmE,OAAQmM,EAAE8M,EAAImtD,CACvBW,GAASb,GAAY,EAEtB,GAAGS,EAAKn1B,OAAQrlC,EAAE0I,EAAI8xD,CACtB,IAAGv5B,EAASptC,OAAS,EAAG,CAAEmM,EAAEjI,EAAIkpC,CAAUA,MAC1C,GAAG64B,GAAS55D,EAAK8zC,WAAa,MAAOh0C,EAAEkC,EAAI43D,CAC3C,IAAGc,EAAQ,CAAE56D,EAAExG,EAAI,UAAYwG,GAAEzG,EACjC,IAAIqhE,GAAU16D,EAAKi3B,WAAY,CAC9B,KAAKj3B,EAAK4rC,WAAa5rC,EAAK4rC,WAAah/B,GAAI,CAC5C,IAAI,GAAIkuD,GAAM,EAAGA,EAAMV,IAAWU,EAAK,CACtCT,EAAUv1D,SAAS60D,EAAK,4BAA4B,IAAK,GACzD,IAAG35D,EAAKu2B,MAAO,CACd,IAAIC,EAAG5pB,EAAIkuD,GAAMtkC,EAAG5pB,EAAIkuD,KACxBtkC,GAAG5pB,EAAIkuD,GAAKzuD,GAAKyuD,GAAO,EAAIh7D,EAAI+mB,GAAI/mB,EACpC,SAAQu6D,EAAU,EAAG7jC,EAAG5pB,EAAIkuD,GAAKzuD,EAAIguD,GAAWxzC,GAAI/mB,OAC9C,CACN02B,EAAGrC,IAAazvB,EAAEkI,EAAIkuD,EAAIjjE,EAAEwU,KAAOvM,CACnC,SAAQu6D,EAAU,EAAG7jC,EAAGrC,IAAazvB,EAAEkI,EAAIkuD,EAAIjjE,EAAEwU,EAAIguD,KAAaxzC,GAAI/mB,GAEvE,GAAGm0B,EAAMz9B,EAAEqB,GAAKwU,EAAG4nB,EAAMz9B,EAAEqB,EAAIwU,IAIlCguD,EAAUv1D,SAAS60D,EAAK,4BAA4B,IAAK,GACzDttD,IAAKguD,EAAQ,CAAGA,GAAU,CAC1Bv6D,KACA85D,GAAQ,EAAIG,MAEbO,IACA,OAGD,IAAK,YACL,IAAK,oBAAoB,IAAK,UAC9B,IAAK,eAAe,IAAK,MACzB,IAAK,WACL,IAAK,UACL,IAAK,mBACL,IAAK,gBACJ,GAAGv0B,EAAG,KAAK,IAAI,CAAC,IAAI9mB,EAAI7L,EAAMmB,OAAO,KAAKwxB,EAAG,GAAI,KAAM,cAAc9mB,MAChE,IAAG8mB,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAKyf,EAAMpa,MAAM+sC,EAAG,GAAI,MACjE,OAED,IAAK,aACJ,GAAGA,EAAG,KAAK,IAAI,CACd,IAAI9mB,EAAI7L,EAAMmB,OAAO,KAAKwxB,EAAG,GAAI,KAAM,cAAc9mB,CACrDylC,GAAQprD,EAAIsgE,CACZ,IAAGG,EAAMpmE,OAAQ+wD,EAAQ93C,EAAImtD,CAC7BrV,GAAQrrC,EAAImhD,CACZz5B,GAAS/nC,KAAK0rD,OAEV,IAAG3e,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAK,CAACyf,EAAMpa,MAAM+sC,EAAG,GAAI,QAClEy0B,EAAU,EAAIC,GAAa,CAC3Bb,GAAQ,EAAIC,GAAW,CAAGE,KAC1B,OAED,IAAK,UACJ,GAAGh0B,EAAG,KAAK,IAAK,CAAEy0B,EAAUh1D,EAAInR,MAAMomE,EAAW10B,EAAGsZ,WAC/Cob,GAAa10B,EAAGsZ,MAAQtZ,EAAG,GAAGpyC,MACnC,OAGD,IAAK,QAAQ,IAAK,OAClB,IAAK,YACL,IAAK,mBACL,IAAK,2BACL,IAAK,yBACL,IAAK,yBACL,IAAK,UACL,IAAK,SACL,IAAK,YACL,IAAK,SACL,IAAK,qBACL,IAAK,cACL,IAAK,QACL,IAAK,aACL,IAAK,mBACL,IAAK,QACJ,GAAGoyC,EAAG,KAAK,IAAI,CAAC,IAAI9mB,EAAI7L,EAAMmB,OAAO,KAAKwxB,EAAG,GAAI,KAAM,cAAc9mB,MAChE,IAAG8mB,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAKyf,EAAMpa,MAAM+sC,EAAG,GAAI,OACjE6zB,GAAQ,EAAIC,GAAW,CAAGE,KAC1B,OAED,IAAK,qBACL,IAAK,mBACL,IAAK,iBACJ,MAED,IAAK,cACL,IAAK,iBACL,IAAK,gBACL,IAAK,kBACL,IAAK,oBACL,IAAK,cACL,IAAK,aACJ,GAAGh0B,EAAG,KAAK,IAAI,CACd,GAAIg1B,GAAUntC,GAAUqrC,SACxBH,IAAiBtzD,EAAInR,MAAMklE,EAAO3rC,GAAUqrC,WAAYjkD,EAAOgkD,EAC/DprC,IAAUqrC,UAAY8B,MAChB,IAAGh1B,EAAG,GAAGlwC,OAAOkwC,EAAG,GAAGpyC,OAAO,KAAO,IAAK,CAC/C4lE,EAAQ3rC,GAAUqrC,UAAYlzB,EAAG,GAAGpyC,OACnC,MAEH,IAAK,SAAU,MACf,IAAK,YAAa,MAClB,IAAK,mBAAoB,MAEzB,IAAK,iBACL,IAAK,cAAe,MACpB,IAAK,QAAS,CACb,GAAIqnE,GAAWjxC,GAAYgc,EAAG,GAAI,MAClC,IAAGi1B,EAAS,WAAa,cAAgBhC,EAAkBgC,EAAS,oBAAqB55B,EAAO45B,EAAS,SAAWhC,EAAkBgC,EAAS,oBAC9I,MACF,IAAK,MAAO,MACZ,IAAK,YAAa,MAElB,IAAK,uBAAwB,MAC7B,IAAK,mBAAoB,MACzB,IAAK,0BAA2B,MAChC,IAAK,uBAAwB,MAC7B,IAAK,wBAAyB,MAE9B,IAAK,SACJ,MAED,IAAK,WAAY,MAEjB,IAAK,OACL,IAAK,SACL,IAAK,QACL,IAAK,OACL,IAAK,eACL,IAAK,gBACL,IAAK,WACL,IAAK,SACL,IAAK,WACL,IAAK,WACL,IAAK,QACJ,MAED,IAAK,UAAW,MAChB,IAAK,OACJ,GAAGj1B,EAAG,GAAG1xC,OAAO,KAAO,KAAM,UACxB,IAAG0xC,EAAG,KAAK,IAAK,OAAO3yB,EAAMA,EAAMzf,OAAO,GAAG,IACjD,IAAK,gBACL,IAAK,cACL,IAAK,aACJksD,GAAMr6C,EAAInR,MAAMmlE,EAAMzzB,EAAGsZ,MACzB,YAEGma,GAAOzzB,EAAGsZ,MAAQtZ,EAAG,GAAGpyC,MAC7B,OAED,IAAK,cACJq2B,EAAMD,GAAYgc,EAAG,GAAI,MACzBw0B,GAAOlS,GAAcr+B,EAAI,sBACzB,IAAIixC,IAAW5nB,KAAKrpB,EAAIvZ,KAAM6iC,IAAIinB,EAAK,GAAK,IAAMA,EAAK,GACvD,IAAGI,EAASM,EAAO7nB,MAAQjd,EAAWxiC,MACtCyvC,GAAG2P,MAAM/5C,KAAKiiE,EACd,OAED,IAAK,eAAgB,MACrB,IAAK,kBAAmB,MACxB,IAAK,gBAAiB,MAEtB,IAAK,QAAQ,IAAK,OAAQ,MAE1B,IAAK,QAAS,MACd,IAAK,eAAgB,MACrB,IAAK,oBAAqB,MAC1B,IAAK,aAAc,MAEnB,IAAK,qBAAsB,MAC3B,IAAK,uBAAwB,MAC7B,IAAK,gBAAiB,MAEtB,IAAK,YACJjxC,EAAMD,GAAYgc,EAAG,GAAI,MACzB,QAAO/b,EAAI,eACV,IAAK,aAAcoZ,EAAG0P,QAAQhyC,SAAW,KAEzC,IAAK,aAAc85D,EAAU,GAE9B,MAED,IAAK,qBAAsB,MAC3B,IAAK,uBAAwB,MAC7B,IAAK,oBAAqB,MAC1B,IAAK,cAAe,MACpB,IAAK,eAAgB,MACrB,IAAK,mBAAoB,MACzB,IAAK,OAAQ,MACb,IAAK,UAAW,MAChB,IAAK,cAAe,MAEpB,IAAK,MAAO,MACZ,IAAK,aAAc,MACnB,IAAK,OAAQ,MACb,IAAK,KAAK,IAAK,MACd,IAAI,iBAAiB1nE,QAAQkgB,EAAMA,EAAMzf,OAAO,GAAG,KAAO,EAAG,KAC7D,IAAGoyC,EAAG,KAAK,OAAS4zB,IAASA,EAAK,iBAAkB,CACnD,GAAIuB,IAAMtC,GAAapzD,EAAInR,MAAMwlE,EAAS9zB,EAAGsZ,OAAQya,EACrDF,IAASA,EAAMjmE,OAAS,EAAIimE,EAAQ,KAAO,IAAMsB,GAAI,OAC/C,CAAEpB,EAAW/vC,GAAYgc,EAAG,GAAI,MAAQ8zB,GAAW9zB,EAAGsZ,MAAQtZ,EAAG,GAAGpyC,OAC3E,MACD,IAAK,IAAK,MAEV,IAAK,iBACJ,GAAGoyC,EAAG,KAAK,IAAK,KAChB,KACCw0B,EAAOlS,GAAct+B,GAAYgc,EAAG,IAAI,wBACxC3P,GAAOmkC,EAAK,IAAI,gBAAmB5V,IAAI4V,EAAK,IAC3C,MAAM/jE,KACR,MAED,IAAK,OAAQ,MAEb,IAAK,SAAU,MACf,IAAK,SAAS,IAAK,KAAM,MACzB,IAAK,OAAQ,MACb,IAAK,cAAe,MAGpB,IAAK,eAAgB,MACrB,IAAK,WAAY,MAEjB,IAAK,YAAa,MAClB,IAAK,sBAAuB,MAC5B,IAAK,qBAAsB,MAC3B,IAAK,eAAgB,MACrB,IAAK,gBAAiB,MACtB,IAAK,kBAAmB,MACxB,IAAK,SAAU,MACf,IAAK,aAAc,MACnB,IAAK,YAAa,MAClB,IAAK,mBAAoB,MAEzB,IAAK,0BAA2B,MAChC,IAAK,0BAA2B,MAChC,IAAK,wBAAyB,MAG9B,IAAK,oBACL,IAAK,mBACL,IAAK,mBACL,IAAK,gBACL,IAAK,mBACL,IAAK,gBACL,IAAK,wBACL,IAAK,cACL,IAAK,kBACL,IAAK,qBACL,IAAK,iBACL,IAAK,eACL,IAAK,sBACL,IAAK,kBACL,IAAK,4BACL,IAAK,eACL,IAAK,mBACL,IAAK,WACL,IAAK,aACL,IAAK,iBACL,IAAK,aACJ,MAED,IAAK,iBACJ,MAED,IAAK,mBACL,IAAK,iBACL,IAAK,cACL,IAAK,aACL,IAAK,sBACL,IAAK,gBACL,IAAK,oBACL,IAAK,iBACJ,MAGD,IAAK,cACJ,MAGD,IAAK,cAAe,MACpB,IAAK,aAAc,MACnB,IAAK,OAAQ,MAGb,IAAK,oBAAqB,MAC1B,IAAK,YAAa,MAClB,IAAK,YAAa,MAClB,IAAK,oBAAqB,MAG1B,IAAK,oBACL,IAAK,qBACL,IAAK,kBACL,IAAK,oBACL,IAAK,oBACL,IAAK,wBACL,IAAK,uBACL,IAAK,sBACL,IAAK,qBACL,IAAK,2BACL,IAAK,wBACL,IAAK,0BACL,IAAK,8BACL,IAAK,qBACL,IAAK,oBACL,IAAK,0BACJ,MAGD,IAAK,OACJ,MAGD,IAAK,wBACL,IAAK,uBACL,IAAK,YACL,IAAK,aACJ,MAED,IAAK,aAAc,MACnB,IAAK,WAAY,MAEjB,IAAK,IACJ,GAAGuvC,EAAG,KAAM,IAAK,CAChBu0B,EAAOvwC,GAAYgc,EAAG,GAAI,MAC1B,KAAIu0B,EAAK/3C,KAAM,KACf+3C,GAAKn1B,OAASra,GAAYwvC,EAAK/3C,YAAc+3C,GAAK/3C,IAClD,IAAG+3C,EAAKn1B,OAAOtvC,OAAO,IAAM,KAAOykE,EAAKn1B,OAAOjyC,QAAQ,MAAQ,EAAG,CACjEqnE,EAAOlS,GAAciS,EAAKn1B,OAAO9wC,MAAM,GACvCimE,GAAKn1B,OAAS,IAAMo1B,EAAK,GAAK,IAAMA,EAAK,OACnC,IAAGD,EAAKn1B,OAAOnhC,MAAM,eAAgBs2D,EAAKn1B,OAASm1B,EAAKn1B,OAAO9wC,MAAM,GAE7E,MAGD,IAAK,mBAAoB,MACzB,IAAK,yBAA0B,MAC/B,IAAK,+BAAgC,MACrC,QAAS,OAAO0xC,EAAG,IAClB,IAAK,OACL,IAAK,YACL,IAAK,UACL,IAAK,QACL,IAAK,aACL,IAAK,SACL,IAAK,UACL,IAAK,UACL,IAAK,SACL,IAAK,QACL,IAAK,MACL,IAAK,KACJ,MACD,QAAS,GAAG/lC,EAAKmtB,IAAK,KAAM,IAAIp1B,OAAMguC,MAGxC,GAAIptC,KACHy9B,OAAQA,EACRD,WAAYA,EACZ0c,SAAUzP,EAEX,IAAGpjC,EAAKm7D,iBAAmBxiE,IAAIy9B,MAC/B,OAAOz9B,IAGT,QAASyiE,IAAU5yC,EAAKxoB,GACvBA,EAAOA,KACP,IAAGuoB,GAAeC,EAAK,yBAA0Bsd,GAAend,GAAWH,EAAK,yBAA0BxoB,EAC1G,IAAIohC,GAASvY,GAAUL,EAAK,aAC5B,IAAI6yC,GAASj6B,GAAU03B,GAAiBxsC,GAAS8U,GAASphC,EAC1D,IAAItH,GAAUmwB,GAAUL,EAAK,cAC7B,KAAI9vB,EAAS,KAAM,IAAIX,OAAM,wCAC7B,IAAI66C,GAAK0mB,GAAkBhtC,GAAS5zB,GAAUsH,EAAMq7D,EACpD,IAAG9yC,GAAeC,EAAK,YAAaoqB,EAAG1L,MAAQR,GAAiB/d,GAAWH,EAAK,YAChFoqB,GAAG3P,SAAW,KACd,OAAO2P,GAER,QAAS0oB,IAAW/nE,EAAMyM,GACzB,GAAI4yC,GAAK0mB,GAAkB/lE,EAAMyM,EACjC4yC,GAAG3P,SAAW,MACd,OAAO2P,GAIR,GAAI2oB,IAAkC,WACrC,GAAIC,IACH,yBACC,oEACC,kBACA,6CACA,kBACA,6CACD,uBACD,2BACCxnE,KAAK,GAEP,IAAI4d,GAAU,2BAA6B0b,IAC1CmuC,eAAkB,mDAClBC,cAAkB,kDAClBC,cAAkB,kDAClBC,aAAkB,iDAClBC,aAAkB,oDAClBC,WAAkB,8DAClBC,cAAkB,+BAClBh1B,WAAkB,mCAClBi1B,eAAkB;AAClBC,YAAkB,2DAClBC,WAAkB,+CAClBC,iBAAkB,QACd,IAAMX,EAAgB,2BAE3B,OAAO,SAASY,KACf,MAAO5yC,IAAa5X,KAKtB,SAASyqD,IAAwB3J,EAAI6G,GACpC,GAAIz2D,GAAO,SAAU8O,EAAU,GAAI0qD,GAAUC,aAAchD,GAAS1hE,EAAI,GAAIpE,EAAI,CAChFi/D,GAAKA,EAAG18D,QAAQ,SAAU,IAE1BuN,GAAG,CAEF,GAAGmvD,EAAGx/D,QAAQ,MAAQ,EAAG,CACxB+iB,QAAQC,MAAM,8DAAgEw8C,EAC9EA,GAAKA,EAAGr+D,MAAM,EAAGq+D,EAAGx/D,QAAQ,MAG7B,GAAGw/D,GAAM,IAAK,CAAE5vD,EAAO,MAAQ8O,GAAU,wBAA0B,MAAMrO,GAGzE,GAAGmvD,EAAGx/D,QAAQ,OAAS,EAAG,CAAE4P,EAAO,WAGnC,GAAG4vD,EAAGj/D,IAAM,IAAK,CAChBoE,EAAI,EACJ,OAAM66D,IAAKj/D,IAAM,KAAOi/D,IAAKj/D,IAAM,IAAKoE,GAAK66D,EAAGj/D,KAAMA,CACtD,IAAGi/D,EAAGj/D,EAAE,IAAM,IAAK,CAClBA,GACAme,IAAW,0BAA4ByZ,GAAUxzB,EAAE7B,QAAQ,MAAO,MAAQ,+BACpE,CACN4b,GAAW,gBAAkByZ,GAAUxzB,EAAE7B,QAAQ,MAAO,MAAQ,iBAEjE08D,EAAKA,EAAGr+D,MAAMZ,EAAE,EAAIA,GAAI,EAIzB,GAAI6F,GAAIo5D,EAAG1uD,MAAM,iBACjB,IAAG1K,EAAG,CAAEsY,GAAW2b,GAAU,kBAAmB,MAAOivC,4BAA4B,EAAGC,8BAA+BnjE,EAAE,GAAG3F,OAAQ+oE,+BAAgC/iE,KAAK2M,KAAMhN,EAAE,GAAGtD,QAAQ,KAAM,MAASsD,EAAE,GAAGtD,QAAQ,KAAM,OAAW,MAAMuN,GAC7O,GAAIjK,EAAEo5D,EAAG1uD,MAAM,kBAAoB,CAAE4N,GAAW2b,GAAU,kBAAmB,MAAOivC,4BAA4B,EAAGC,8BAA+BnjE,EAAE,GAAG3F,OAAQgpE,4BAA6BrjE,EAAE,IAAM,MAAMiK,GAG1M,GAAIjK,EAAEo5D,EAAG1uD,MAAM,kBAAoB,CAAElB,EAAO,YAAc8O,IAAW2b,GAAU,gBAAiB,MAAOqvC,wBAAyBtjE,EAAE,IAAMA,EAAE3F,OAAS,GAAK,EAAGkpE,4BAA6BvjE,EAAE,IAAMA,EAAE3F,OAAS,GAAK,EAAG6oE,4BAA6BljE,EAAE,GAAG3F,SAAY,8BAAgC,MAAM4P,GAGvS,GAAIu5D,GAAW,KACf,KAAI,IAAI,IAAI,KAAK5pE,QAAQw/D,EAAG,KAAO,EAAG,CACrC5vD,EAAO,MACP+P,GAAG,KAAMpf,EAAIi/D,EAAG/+D,SAAUF,EAAG,OAAQoE,EAAI66D,EAAGj/D,GAAG8T,eAC9C,IAAK,KAAK,IAAK,IAAKu1D,EAAW,OAAQrpE,CAAG,MAAMof,GAChD,IAAK,IACJrK,EAAG,IAAI,GAAIkQ,GAAIjlB,EAAE,EAAGilB,EAAIg6C,EAAG/+D,SAAU+kB,EAAG,OAAOg6C,EAAGh6C,IACjD,IAAK,KAAK,IAAK,IAAK,KAAMlQ,GAC1B,IAAK,KAAK,IAAK,IAAKs0D,EAAW,OAAQrpE,CAAG,MAAMof,KAGlD,IAAK,KAAK,IAAK,IACd,OAAO6/C,IAAKj/D,IAAI,IAAI8T,eAAiB1P,EAAE,GAAIA,GAAKA,EAAE,KAAMpE,CACxD,QAAOoE,GACN,IAAK,KAAK,IAAK,KAAM+Z,GAAW,gBAAkB,OAClD,IAAK,OAAO,IAAK,OAAQA,GAAW,oCAAsC,OAC1E,IAAK,QAASqE,QAAQC,MAAM,2CAE5B,IAAK,KAAK,IAAK,MAAM,IAAK,OAAO,IAAK,OACrCtE,GAAW,gCAAkC/Z,EAAElE,OAAS,EAAI,QAAU,QAAU,sBAAwBkE,EAAElE,QAAU,EAAI,OAAS,SAAW,KAC5I,OACD,IAAK,KAAK,IAAK,KAAMie,GAAW,8BAAgC/Z,EAAElE,OAAS,EAAI,QAAU,QAAU,KAAO,OAC1G,IAAK,OAAO,IAAK,OAAQie,GAAW,sCAAwC/Z,EAAElE,OAAS,EAAI,QAAU,QAAU,KAAO,QAEvH,MACD,IAAK,IACJ,MAAM++D,IAAKj/D,IAAM,KAAOi/D,IAAKj/D,IAAM,IAAKoE,GAAK66D,EAAGj/D,KAAMA,CACtDme,IAAW,gBAAkByZ,GAAUxzB,EAAExD,MAAM,GAAG2B,QAAQ,MAAO,MAAQ,gBACzE,OACD,IAAK,IAAK4b,GAAW,gBAAkByZ,GAAUxzB,GAAK,gBAAkB,OACxE,QAASoe,QAAQC,MAAM,0BAA4Bre,EAAI,kBAAoB66D,IAE5E,IAAIoK,EAAU,KAAMv5D,EACpBmvD,GAAKA,EAAGr+D,MAAMZ,EAAE,EAAIA,GAAI,EAEzB,GAAGi/D,EAAG1uD,MAAM,aAAc,CACzB,GAAGlB,GAAQ,SAAUA,EAAO,MAC5B,IAAG4vD,EAAG1uD,MAAM,MAAO,CAClB0uD,EAAKA,EAAG18D,QAAQ,UAAW,GAC3BsmE,GAAM,+BAAiC,QAExC,KAAM7oE,EAAIi/D,EAAG/+D,SAAUF,EAAG,OAAQoE,EAAI66D,EAAGj/D,GAAG8T,eAC3C,IAAK,KAAK,IAAK,KAAK,IAAK,IACxB,OAAOmrD,IAAKj/D,IAAI,IAAI8T,eAAiB1P,EAAE,GAAIA,GAAKA,EAAE,KAAMpE,CACxD,QAAOoE,GACN,IAAK,KAAK,IAAK,KAAM+Z,GAAW,gCAAkC/Z,EAAElE,OAAS,EAAI,QAAU,QAAU,KAAO,OAC5G,IAAK,KAAK,IAAK,KAAMie,GAAW,kCAAoC/Z,EAAElE,OAAS,EAAI,QAAU,QAAU,KAAO,OAC9G,IAAK,KAAK,IAAK,KACd,GAAG++D,EAAGj/D,EAAE,IAAM,IAAK,EAAG,CAAEoE,GAAK66D,EAAGj/D,EAAE,KAAMA,QAAWi/D,EAAGj/D,EAAE,IAAM,IAC9Dme,IAAW,kCAAoC/Z,EAAEmM,MAAM,MAAQ,OAAS,SAAW,KAAOnM,EAAEmM,MAAM,MAAQ,4BAA8BnM,EAAEmM,MAAM,QAAQ,KAAK,GAAGrQ,OAAS,IAAM,IAAK,IAAM,QAE5L,MACD,IAAK,IACJ,MAAM++D,IAAKj/D,IAAM,KAAOi/D,IAAKj/D,IAAM,IAAKoE,GAAK66D,EAAGj/D,KAAMA,CACtDme,IAAW,gBAAkByZ,GAAUxzB,EAAExD,MAAM,GAAG2B,QAAQ,MAAO,MAAQ,gBACzE,OACD,IAAK,IAAK4b,GAAW,gBAAkByZ,GAAUxzB,GAAK,gBAAkB,OACxE,IAAK,IACJ,GAAG66D,EAAGr+D,MAAMZ,EAAGA,EAAE,GAAG8T,eAAiB,MAAO,CAAEqK,GAAW,iBAAmBne,IAAK,CAAG,OACpF,GAAGi/D,EAAGr+D,MAAMZ,EAAGA,EAAE,GAAG8T,eAAiB,QAAU,CAAEqK,GAAW,iBAAmBne,IAAK,CAAG,QAExF,QAASwiB,QAAQC,MAAM,0BAA4Bre,EAAI,kBAAoB66D,IAE5E,KAAMnvD,GAIP,GAAGmvD,EAAGx/D,QAAQ,OAAS,EAAG,CAAE4P,EAAO,WAGnC,GAAG4vD,EAAG,IAAM,IAAK,CAAE9gD,GAAW,6FAA+F8gD,GAAKA,EAAGr+D,MAAM,EAAIZ,GAAI,EACnJA,EAAI,CAAG,IAAGi/D,EAAGj/D,IAAM,IAAK,CACvB,MAAMi/D,IAAKj/D,IAAM,KAAOi/D,IAAKj/D,IAAM,IAAKoE,GAAK66D,EAAGj/D,KAAMA,CACtD,IAAGi/D,EAAGj/D,EAAE,IAAM,IAAK,CAClBA,GACAme,IAAW,0BAA4ByZ,GAAUxzB,EAAE7B,QAAQ,MAAO,MAAQ,+BACpE,CACN4b,GAAW,gBAAkByZ,GAAUxzB,EAAE7B,QAAQ,MAAO,MAAQ,iBAEjE08D,EAAKA,EAAGr+D,MAAMZ,EAAE,EAAIA,GAAI,EAIzB,GAAIspE,GAAKrK,EAAG1uD,MAAM,oCAClB,KAAI+4D,IAAOA,EAAG,GAAI9mD,QAAQC,MAAM,kCAAoCw8C,OAC/D,CACJ,GAAI1tD,GAAO+3D,EAAG,GAAG/mE,QAAQ,KAAM,GAC/B4b,IAAW,YAAcmrD,EAAG,GAAK,cAAgB,IAAK,SACrD,gCAAkC/3D,EAAK9R,QAAQ,OAAS,EAAI,IAAM8R,EAAKrR,OAASqR,EAAK9R,QAAQ,MAAQ,KACpG6pE,EAAG,GAAG7pE,QAAQ,MAAQ,EAAI,0BAA4B,KACtD6pE,EAAG,IAAM,4BAA8BA,EAAG,GAAGppE,OAAS,GAAK,KAAO,+BAClEopE,EAAG,IAAMA,EAAG,GAAG7pE,QAAQ,MAAQ,EAAI,sCAAwC,KAC3E6pE,EAAG,GAAK,gCAAkCA,EAAG,GAAG/4D,MAAM,MAAM,GAAGrQ,OAAS,IAAM,IAC/E,IAEA,aAAeopE,EAAG,GAAK,cAAgB,IAAM,SAC9CtpE,GAAIspE,EAAG1d,MAAQ0d,EAAG,GAAGppE,OAItB,GAAG++D,EAAGj/D,IAAM,IAAK,CAChBoE,EAAI,EACJ,OAAM66D,IAAKj/D,IAAM,KAAOi/D,IAAKj/D,IAAM,IAAKoE,GAAK66D,EAAGj/D,KAAMA,CACtDme,IAAW,gBAAkByZ,GAAUxzB,EAAE7B,QAAQ,MAAO,MAAQ,kBAIlE,IAAI4b,EAAS,CAAEqE,QAAQC,MAAM,6CAA+Cw8C,EAAK,IAAM,OAAO,GAC9F,MAAOnlC,IAAU,UAAYzqB,EAAO,SAAU8O,EAAS0qD,GAGxD,QAASU,IAAgBjqB,EAAO5c,EAAYryB,GAC3C,GAAIm5D,GAASlqB,EAAMuG,OAAO,SAAS7oC,GAAQ,MAAOA,GAAK2iC,QAAUtvC,IAAQ,EAAI,KAAOA,IACpF,KAAIm5D,EAAOtpE,OAAQ,MAAO,EAC1B,OAAO,oCAAsCspE,EAAO1lE,IAAI,SAASkZ,GAChE,GAAIysD,GAAU5U,GAAc73C,EAAK6iC,IACjC,OAAO,WAAa/lB,GAAU,oBAAqB,MAClD4vC,aAAc1sD,EAAK4iC,KACnB+pB,2BAA4BF,EAC5BG,0BAA2BH,EAAOlnE,QAAQ,eAAgB,aAEzDhC,KAAK,MAAQ,uCAEjB,GAAIspE,IAAmC,WAEtC,GAAIC,GAAe,SAAS1+C,GAC3B,MAAOwM,IAAUxM,GACf7oB,QAAQ,OAAQ,SAASoO,GAAI,MAAO,mBAAmBA,EAAGzQ,OAAO,QACjEqC,QAAQ,MAAO,eACfA,QAAQ,MAAO,qBACfA,QAAQ,KAAM,aAAaA,QAAQ,KAAM,aAG5C,IAAIwnE,GAAgB,kCACpB,IAAIC,GAAmB,yCACvB,IAAIC,GAAW,SAASlnC,EAAIoc,EAAIn/C,EAAGuM,EAAM29D,GAExC,GAAInqE,KACJA,GAAEwF,KAAK,kCAAoCqyB,GAAUunB,EAAGzc,WAAW1iC,IAAM,8BACzE,IAAImZ,GAAE,EAAEP,EAAE,EAAG4nB,EAAQiB,GAAasB,EAAG,SAAS,KAC9C,IAAIg6B,GAAOh6B,EAAG,eAAkBonC,EAAK,CACrC,IAAIrnC,GAAQt/B,MAAMW,QAAQ4+B,EAC1B,IAAGA,EAAG,SAAU,CACf,IAAInqB,EAAI,EAAGA,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAG7Y,EAAEwF,KAAK,+BAAiCw9B,EAAG,SAASnqB,GAAK,wBAA0BmqB,EAAG,SAASnqB,GAAGwxD,IAAM,IAAM,IAAM,4BAErJ,GAAIn9D,GAAI,GAAIo9D,EAAOtnC,EAAG,YACtB,KAAI5pB,EAAI,EAAGA,EAAIqnB,EAAM58B,EAAEqN,IAAKkI,EAAG,CAC9BlM,EAAIo9D,EAAKlxD,GAAK,wBAA0BkxD,EAAKlxD,GAAGixD,IAAM,IAAM,EAC5DrqE,GAAEwF,KAAK,2BAA6B0H,EAAI,yBAEzC,KAAMkM,GAAKqnB,EAAMz9B,EAAEkO,IAAKkI,EAAG,CAC1BlM,EAAIo9D,EAAKlxD,GAAK,wBAA0BkxD,EAAKlxD,GAAGixD,IAAM,IAAM,EAC5DrqE,GAAEwF,KAAK,2BAA6B0H,EAAI,MACxC,KAAI2L,EAAE,EAAGA,EAAI4nB,EAAM58B,EAAEQ,IAAKwU,EAAG7Y,EAAEwF,KAAKwkE,EACpC,MAAMnxD,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAG,CAC1B,GAAI0xD,GAAO,MAAO1qD,KAASumD,EAAQ,EACnC,KAAIgE,EAAK,EAAGA,GAAMpN,EAAK78D,SAAUiqE,EAAI,CACpC,GAAGpN,EAAKoN,GAAIvmE,EAAEQ,EAAIwU,EAAG,QACrB,IAAGmkD,EAAKoN,GAAIvmE,EAAEqN,EAAIkI,EAAG,QACrB,IAAG4jD,EAAKoN,GAAIpnE,EAAEqB,EAAIwU,EAAG,QACrB,IAAGmkD,EAAKoN,GAAIpnE,EAAEkO,EAAIkI,EAAG,QACrB,IAAG4jD,EAAKoN,GAAIvmE,EAAEQ,GAAKwU,GAAKmkD,EAAKoN,GAAIvmE,EAAEqN,GAAKkI,EAAGmxD,EAAO,IAClD1qD,GAAG,gCAAmCm9C,EAAKoN,GAAIpnE,EAAEqB,EAAI24D,EAAKoN,GAAIvmE,EAAEQ,EAAI,CACpEwb,GAAG,6BAAmCm9C,EAAKoN,GAAIpnE,EAAEkO,EAAI8rD,EAAKoN,GAAIvmE,EAAEqN,EAAI,CACpE,OAED,GAAGq5D,EAAM,CAAEvqE,EAAEwF,KAAKykE,EAAmB,UACrC,GAAI9Y,GAAMxwB,IAAazvB,EAAEkI,EAAG/U,EAAEwU,IAAKunB,EAAO2C,GAASC,EAAG5pB,QAAQP,GAAImqB,EAAGmuB,EACrE,IAAG/wB,GAAQA,EAAKrrB,EAAG,CAClB8K,EAAG,iBAAmBgY,GAAU+8B,GAAmBx0B,EAAKrrB,GACxD,IAAGqrB,EAAK+gB,EAAG,CACV,GAAG/gB,EAAK+gB,EAAEtgD,MAAM,EAAGswD,EAAIhxD,SAAWgxD,EAAK,CACtC,GAAIqZ,GAAQ9oC,GAAatB,EAAK+gB,EAC9BthC,GAAG,uCAA0C2qD,EAAMxnE,EAAEqB,EAAImmE,EAAM3mE,EAAEQ,EAAI,CACrEwb,GAAG,oCAA0C2qD,EAAMxnE,EAAEkO,EAAIs5D,EAAM3mE,EAAEqN,EAAI,IAIxE,IAAIkvB,EAAM,CAAEpgC,EAAEwF,KAAKwkE,EAAgB,UACnC,OAAO5pC,EAAKt6B,GACX,IAAK,IACJsgE,EAAShmC,EAAKv6B,EAAI,OAAS,OAC3Bga,GAAG,qBAAuB,SAC1BA,GAAG,wBAA2BugB,EAAKv6B,EAAI,OAAS,OAChD,OACD,IAAK,IACJugE,EAAShmC,EAAK5xB,GAAGlO,OAAO8/B,EAAKv6B,GAAG,EAChCga,GAAG,qBAAuB,OAC1BA,GAAG,gBAAmBugB,EAAKv6B,GAAG,CAC9B,OACD,IAAK,KAAK,IAAK,MACdugE,EAAQhmC,EAAKv6B,GAAK,KAAO,GAAKu6B,EAAKv6B,CACnCga,GAAG,qBAAuB,QAC1B,OACD,IAAK,IACJumD,EAAShmC,EAAK5xB,GAAI4iB,GAAUgP,EAAKv6B,GAAGo0B,aACpCpa,GAAG,qBAAuB,MAC1BA,GAAG,qBAAwBuR,GAAUgP,EAAKv6B,GAAGo0B,aAC7Cpa,GAAG,oBAAsB,KACzB,OAED,QAAS7f,EAAEwF,KAAKwkE,EAAgB,WAEjC,GAAIS,GAASV,EAAa3D,EAC1B,IAAGhmC,EAAKprB,GAAKorB,EAAKprB,EAAE28B,OAAQ,CAC3B,GAAI+4B,GAAOtqC,EAAKprB,EAAE28B,MAClB+4B,GAAOA,EAAKroE,OAAO,IAAM,IAAM,IAAMyyD,GAAc4V,EAAK7pE,MAAM,IAAM6pE,CAEpE,IAAGA,EAAKroE,OAAO,IAAM,MAAQqoE,EAAKl6D,MAAM,SAAUk6D,EAAO,MAAQA,CACjED,GAAS1wC,GAAU,SAAU0wC,GAASE,aAAcD,EAAKloE,QAAQ,KAAM,WAExE,GAAG2nE,EAAI/pC,EAAKzJ,GAAI9W,EAAG,oBAAsB,KAAOsqD,EAAI/pC,EAAKzJ,GAAG91B,MAAM,EAClEb,GAAEwF,KAAK,aAAeu0B,GAAU,mBAAoBA,GAAU,SAAU0wC,MAAa5qD,GAAM,MAE5F7f,EAAEwF,KAAK,gCAER,IAAI45C,EAAGC,cAAcE,MAAOv/C,EAAEwF,KAAKgkE,GAAgBpqB,EAAGC,SAASE,MAAOH,EAAGzc,WAAY1iC,GACrFD,GAAEwF,KAAK,yBACP,OAAOxF,GAAEQ,KAAK,IAGf,IAAIoqE,GAA6B,SAAS5qE,EAAGo/C,GAC5Cp/C,EAAEwF,KAAK,+BAGP,IAAIqlE,GAAO,CACXzrB,GAAGzc,WAAW5+B,IAAI,SAAS+S,GAAK,MAAOsoC,GAAGxc,OAAO9rB,KAAOD,QAAQ,SAASmsB,GACxE,IAAIA,EAAI,MACR,IAAGA,EAAG,SAAU,CACf,IAAI,GAAInqB,GAAI,EAAGA,EAAImqB,EAAG,SAAS7iC,SAAU0Y,EAAG,GAAGmqB,EAAG,SAASnqB,GAAI,CAC9D,GAAIiyD,GAAS9nC,EAAG,SAASnqB,EACzB,IAAGiyD,EAAOvpB,OAAS,MAAQupB,EAAOtpB,KAAO,MAAQspB,EAAOxyB,KAAO,KAAM,QACrEwI,IAAYgqB,EACZA,GAAOT,IAAMQ,CACb,IAAIr8D,GAAIw0B,EAAG,SAASnqB,GAAG2oC,IAAM,IAC7BxhD,GAAEwF,KAAK,gCAAkCqlE,EAAO,mCAChD7qE,GAAEwF,KAAK,gFAAkFgJ,EAAI,QAC7FxO,GAAEwF,KAAK,wBACLqlE,KAML,IAAIvlE,GAAO,CACX85C,GAAGzc,WAAW5+B,IAAI,SAAS+S,GAAK,MAAOsoC,GAAGxc,OAAO9rB,KAAOD,QAAQ,SAASmsB,GACxE,IAAIA,EAAI,MACR,IAAGA,EAAG,SAAU,CACf,IAAI,GAAI5pB,GAAI,EAAGA,EAAI4pB,EAAG,SAAS7iC,SAAUiZ,EAAG,GAAG4pB,EAAG,SAAS5pB,GAAI,CAC9D4pB,EAAG,SAAS5pB,GAAGixD,IAAM/kE,CACrB,IAAI4f,GAAI8d,EAAG,SAAS5pB,GAAGwnC,IAAM,IAC7B5gD,GAAEwF,KAAK,gCAAkCF,EAAO,gCAChDtF,GAAEwF,KAAK,2EAA6E0f,EAAI,QACxFllB,GAAEwF,KAAK,wBACLF,KAMLtF,GAAEwF,KAAK,uFACPxF,GAAEwF,KAAK,iFACPxF,GAAEwF,KAAK,qBAEPxF,GAAEwF,KAAK,yEACPxF,GAAEwF,KAAK,2CACPxF,GAAEwF,KAAK,oCACPxF,GAAEwF,KAAK,yCACPxF,GAAEwF,KAAK,oCACPxF,GAAEwF,KAAK,sBACPxF,GAAEwF,KAAK,2BAGP,IAAI2kE,KACJ,IAAIY,GAAM,EACV3rB,GAAGzc,WAAW5+B,IAAI,SAAS+S,GAAK,MAAOsoC,GAAGxc,OAAO9rB,KAAOD,QAAQ,SAASmsB,GACxE,IAAIA,EAAI,MACR,IAAIvC,GAAQiB,GAAasB,EAAG,QAC5B,KAAI,GAAI5pB,GAAI,EAAGA,GAAKqnB,EAAMz9B,EAAEkO,IAAKkI,EAAG,IAAI,GAAIP,GAAI,EAAGA,GAAK4nB,EAAMz9B,EAAEqB,IAAKwU,EAAG,CACvE,GAAIxU,GAAIZ,MAAMW,QAAQ4+B,IAAOA,EAAG5pB,QAAQP,GAAKmqB,EAAGrC,IAAazvB,EAAEkI,EAAE/U,EAAEwU,IACnE,KAAIxU,IAAMA,EAAEsyB,GAAKtyB,EAAEsyB,EAAE5iB,eAAiB,UAAW,QACjD,KAAIo2D,EAAI9lE,EAAEsyB,GAAI,CACb,GAAIxxB,GAAM0jE,GAAwBxkE,EAAEsyB,EAAG,IAAMo0C,EAC7C,IAAG5lE,EAAK,CAAEglE,EAAI9lE,EAAEsyB,GAAK,IAAMo0C,IAAOA,CAAK/qE,GAAEwF,KAAKL,EAAM,UAIvDnF,GAAEwF,KAAK,8HACPoqB,IAAKu6C,GAAKtzD,QAAQ,SAASqoD,GAC1Bl/D,EAAEwF,KAAK,8BAAgC2kE,EAAIjL,GAAIr+D,MAAM,GAAK,wFAA0FspE,EAAIjL,GAAM,UAK/Jl/D,GAAEwF,KAAK,gCACP,OAAO2kE,GAGR,OAAO,SAASa,GAAI5rB,EAAI5yC,GACvB,GAAIxM,IAAKg2B,GAET,IAAIi1C,GAAOnxC,IACVmuC,eAAsB,mDACtBC,cAAsB,kDACtBC,cAAsB,kDACtBC,aAAsB,iDACtBC,aAAsB,oDACtBC,WAAsB,8DACtBC,cAAsB,+BACtBh1B,WAAsB,mCACtB23B,aAAsB,iDACtB1C,eAAsB,sDACtB2C,qBAAsB,yDACtB1C,YAAsB,2DACtB2C,cAAsB,kDACtBC,aAAsB,iDACtBC,aAAsB,qCACtBC,aAAsB,iDACtBC,eAAsB,mDACtBC,YAAsB,oCACtBC,aAAsB,oCACtBC,aAAsB,kCACtBC,YAAsB,oCACtBC,eAAsB,gCACtBv8B,YAAsB,mCACtBC,YAAsB,4CACtBu8B,cAAsB,8CACtBC,YAAsB,oCACtBrD,WAAsB,+CACtBsD,cAAsB,+BACtBC,cAAsB,sCACtBC,iBAAsB,mCACtBC,gBAAsB,kCACtBC,gBAAsB,uEACtBC,cAAsB,uEACtBC,cAAsB,mEACtBC,cAAsB,qEACtBC,cAAsB,kCACtB7D,iBAAsB,OAGvB,IAAI8D,GAAO3yC,IACV4yC,eAAmB,mDACnBC,kBAAmB,kDAGpB,IAAGngE,EAAKijC,UAAY,OAAQ,CAC3BzvC,EAAEwF,KAAK,mBAAqBylE,EAAOwB,EAAO,MAC1CzsE,GAAEwF,KAAKwtC,KAAiBxwC,QAAQ,4BAA6B,IAAIA,QAAQ,2BAA4B,IAAM,UAErGxC,GAAEwF,KAAK,2BAA6BylE,EAAQ,MAEnD,IAAId,GAAMS,EAA2B5qE,EAAGo/C,EACxCp/C,GAAEwF,KAAK,oBACPxF,GAAEwF,KAAK,6BACP,MAAK45C,EAAGC,cAAcC,aAAahyC,SAAUtN,EAAEwF,KAAK,8TACpD,KAAI,GAAIvF,GAAI,EAAGA,GAAKm/C,EAAGzc,WAAWxiC,SAAUF,EAAGD,EAAEwF,KAAK0kE,EAAS9qB,EAAGxc,OAAOwc,EAAGzc,WAAW1iC,IAAKm/C,EAAIn/C,EAAGuM,EAAM29D,GACzG,KAAI/qB,EAAGC,cAAcE,MAAOv/C,EAAEwF,KAAKgkE,GAAgBpqB,EAAGC,SAASE,MAAOH,EAAGzc,YAAa,GACtF3iC,GAAEwF,KAAK,8BACPxF,GAAEwF,KAAK,qBACP,IAAGgH,EAAKijC,UAAY,OAAQzvC,EAAEwF,KAAK,0BAC9BxF,GAAEwF,KAAK,6BACZ,OAAOxF,GAAEQ,KAAK,OAIhB,SAASosE,IAAUxtB,EAAI5yC,GACtB,GAAGA,EAAKijC,UAAY,OAAQ,MAAOq6B,IAAkB1qB,EAAI5yC,EAEzD,IAAIwoB,GAAMU,IACV,IAAI3gB,GAAI,EAER,IAAI49B,KACJ,IAAII,KAGJh+B,GAAI,UACJygB,IAAaR,EAAKjgB,EAAG,iDAGrBA,GAAI,aACJygB,IAAaR,EAAKjgB,EAAG+0D,GAAkB1qB,EAAI5yC,GAC3CmmC,GAASntC,MAAMuP,EAAG,YAClBg+B,GAAIvtC,MAAMuP,EAAG,eAGbA,GAAI,YACJygB,IAAaR,EAAKjgB,EAAGgzD,GAAiB3oB,EAAI5yC,GAC1CmmC,GAASntC,MAAMuP,EAAG,YAClBg+B,GAAIvtC,MAAMuP,EAAG,cAGbA,GAAI,UACJygB,IAAaR,EAAKjgB,EAAGihB,GAAagd,KAClCL,GAASntC,MAAMuP,EAAG,YAClBg+B,GAAIvtC,MAAMuP,EAAG,gBAGbA,GAAI,cACJygB,IAAaR,EAAKjgB,EAAG+9B,GAAUC,GAC/BJ,GAASntC,MAAMuP,EAAG,uBAGlBA,GAAI,uBACJygB,IAAaR,EAAKjgB,EAAG29B,GAAeC,GAEpC,OAAO3d,GAGR,QAAS63C,IAAc19B,GACtB,MAAO,SAAS29B,GAAStgE,GACxB,IAAI,GAAIvM,GAAI,EAAGA,GAAKkvC,EAAShvC,SAAUF,EAAG,CACzC,GAAIsF,GAAI4pC,EAASlvC,EACjB,IAAGuM,EAAKjH,EAAE,MAAQ5C,UAAW6J,EAAKjH,EAAE,IAAMA,EAAE,EAC5C,IAAGA,EAAE,KAAO,IAAKiH,EAAKjH,EAAE,IAAMkuB,OAAOjnB,EAAKjH,EAAE,OAK/C,QAASwnE,IAAcvgE,GACvBqgE,KACE,SAAU,QACV,WAAY,OACZ,cAAe,OACf,aAAc,QACd,WAAY,OACZ,YAAa,QAEb,aAAc,QACd,YAAa,EAAG,MAEhB,WAAY,QACZ,aAAc,QACd,YAAa,QACb,YAAa,QACb,UAAW,QAEX,WAAW,KACX,MAAO,SACNrgE,GAGH,QAASwgE,IAAexgE,GACxBqgE,KACE,YAAa,QAEb,UAAW,QAEX,WAAY,SAEZ,cAAe,QAEf,MAAO,SACNrgE,GAEH,QAASygE,IAAen2D,GACvB,GAAG4jB,GAAKkW,GAAGlxC,QAAQoX,IAAM,EAAG,MAAO,OACnC,IAAG4jB,GAAKiW,IAAM75B,GAAK4jB,GAAKiW,GAAI,MAAO,OACnC,IAAGjW,GAAKmW,IAAM/5B,GAAK4jB,GAAKmW,GAAI,MAAO,QACnC,IAAGnW,GAAKoW,IAAMh6B,GAAK4jB,GAAKoW,GAAI,MAAO,OACnC,OAAQh6B,IAAKA,EAAE3W,OAAU2W,EAAI,QAE9B,QAASo2D,IAAkBC,EAAQzqC,GAClC,IAAIyqC,EAAQ,MAAO,EACnB,KACCA,EAASzqC,EAAO3+B,IAAI,QAASqpE,GAAK5+D,GAAK,IAAIA,EAAE6gD,GAAI7gD,EAAE6gD,GAAK7gD,EAAE6+D,QAAU,QAAQ7+D,EAAEyO,KAAMkwD,EAAO,OAAO3+D,EAAE6gD,IAAI1d,OAAQs7B,GAAeE,EAAO,OAAO3+D,EAAE6gD,IAAI3d,SAClJ,MAAM1uC,GAAK,MAAO,MACpB,OAAQmqE,GAAUA,EAAOhtE,SAAW,EAAI,KAAOgtE,EAGhD,QAASG,IAAiBt4C,EAAKpS,EAAM2qD,EAAU9qC,EAAOnyB,EAAKk9D,EAAW9qC,EAAQ+qC,EAAOjhE,EAAM4yC,EAAIhR,EAAQR,GACtG,IACC4/B,EAAU/qC,GAAO6O,GAAWjc,GAAUL,EAAKu4C,EAAU,MAAO3qD,EAC5D,IAAI7iB,GAAOo1B,GAAWH,EAAKpS,EAC3B,IAAIkgB,EACJ,QAAO2qC,GACN,IAAK,QAAU3qC,EAAM8+B,GAAS7hE,EAAM6iB,EAAMtS,EAAK9D,EAAMghE,EAAU/qC,GAAQ2c,EAAIhR,EAAQR,EAAS,OAC5F,IAAK,QAAU9K,EAAMg/B,GAAS/hE,EAAM6iB,EAAMtS,EAAK9D,EAAMghE,EAAU/qC,GAAQ2c,EAAIhR,EAAQR,EAClF,KAAI9K,IAAQA,EAAI,WAAY,KAC5B,IAAI4qC,GAAQ93C,GAAakN,EAAI,WAAW6O,OAAQ/uB,EAChD,IAAI+qD,GAASt8B,GAAcq8B,EAC3B,IAAIE,GAAOxe,GAAc/5B,GAAUL,EAAK04C,EAAO,MAAOp8B,GAAWjc,GAAUL,EAAK24C,EAAQ,MAAOD,GAC/F,IAAIG,GAASj4C,GAAag4C,EAAMF,EAChC,IAAII,GAASz8B,GAAcw8B,EAC3B/qC,GAAMq8B,GAAY9pC,GAAUL,EAAK64C,EAAQ,MAAOA,EAAQrhE,EAAM8kC,GAAWjc,GAAUL,EAAK84C,EAAQ,MAAOD,GAASzuB,EAAItc,EACpH,OACD,IAAK,QAAUA,EAAMk/B,GAASjiE,EAAM6iB,EAAMtS,EAAK9D,EAAMghE,EAAU/qC,GAAQ2c,EAAIhR,EAAQR,EAAS,OAC5F,IAAK,SAAU9K,EAAMm/B,GAASliE,EAAM6iB,EAAMtS,EAAK9D,EAAMghE,EAAU/qC,GAAQ2c,EAAIhR,EAAQR,EAAS,OAC5F,QAAS,KAAM,IAAIrpC,OAAM,2BAA6BkpE,IAEvD/qC,EAAOD,GAASK,CAGhB,IAAIyK,MAAewgC,IACnB,IAAGP,GAAaA,EAAU/qC,GAAQ7S,GAAK49C,EAAU/qC,IAAQ5rB,QAAQ,SAASC,GACzE,GAAI42D,GAAQ,EACZ,IAAGF,EAAU/qC,GAAO3rB,GAAG46B,MAAQhX,GAAK2V,KAAM,CACzCq9B,EAAQ93C,GAAa43C,EAAU/qC,GAAO3rB,GAAG66B,OAAQ/uB,EACjD2qB,GAAW+0B,GAAWntC,GAAWH,EAAK04C,EAAO,MAAOA,EAAOlhE,EAC3D,KAAI+gC,IAAaA,EAASptC,OAAQ,MAClC6wD,IAAsBluB,EAAKyK,EAAU,OAEtC,GAAGigC,EAAU/qC,GAAO3rB,GAAG46B,MAAQhX,GAAKC,MAAO,CAC1C+yC,EAAQ93C,GAAa43C,EAAU/qC,GAAO3rB,GAAG66B,OAAQ/uB,EACjDmrD,GAAYA,EAAUppE,OAAO0tD,GAAgBl9B,GAAWH,EAAK04C,EAAO,MAAOlhE,MAG7E,IAAGuhE,GAAaA,EAAU5tE,OAAQ6wD,GAAsBluB,EAAKirC,EAAW,KAAMvhE,EAAKgiC,YAClF,MAAMxrC,GAAK,GAAGwJ,EAAKmtB,IAAK,KAAM32B,IAGjC,QAASgrE,IAAkBhtE,GAAK,MAAOA,GAAEqB,OAAO,IAAM,IAAMrB,EAAEH,MAAM,GAAKG,EAEzE,QAAS4a,IAAUoZ,EAAKxoB,GACvBiJ,IACAjJ,GAAOA,KACPugE,IAAcvgE,EAGd,IAAGuoB,GAAeC,EAAK,yBAA0B,MAAO4yC,IAAU5yC,EAAKxoB,EAEvE,IAAGuoB,GAAeC,EAAK,kBAAmB,MAAO4yC,IAAU5yC,EAAKxoB,EAEhE,IAAGuoB,GAAeC,EAAK,sBAAuB,CAC7C,SAAUxxB,aAAc,YAAa,KAAM,IAAIe,OAAM,mDACrD,UAAU0pE,oBAAqB,YAAa,CAC3C,GAAGj5C,EAAI3X,UAAW,MAAO4wD,mBAAkBj5C,EAAKxoB,EAChD,IAAI0hE,GAAOl1D,GAAI3X,MAAMwrB,SACrB0I,IAAWP,GAAKne,QAAQ,SAAS7T,GAAKwyB,GAAa04C,EAAMlrE,EAAGsyB,GAAUN,EAAKhyB,KAC3E,OAAOirE,mBAAkBC,EAAM1hE,GAEhC,KAAM,IAAIjI,OAAM,4BAEjB,IAAIwwB,GAAeC,EAAK,uBAAwB,CAC/C,GAAGD,GAAeC,EAAK,gBAAiB,KAAM,IAAIzwB,OAAM,8BACxD,IAAGwwB,GAAeC,EAAK,aAAc,KAAM,IAAIzwB,OAAM,8BACrD,IAAI4pE,GAAYn1D,GAAI2H,KAAKqU,EAAK,YAC9B,IAAGm5C,EAAW,CACb3hE,EAAO6mB,GAAI7mB,SACJA,GAAK8C,IACZ,UAAU6+D,GAAUjpE,SAAW,SAAUsH,EAAK8C,KAAO,QAErD,UAAU8+D,OAAQ,aAAe1rE,OAAOkC,SAASupE,EAAUjpE,SAAU,MAAOmpE,IAAS,GAAI7qE,YAAW2qE,EAAUjpE,SAAUsH,EACxH,OAAO6hE,IAASF,EAAUjpE,QAASsH,GAEpC,KAAM,IAAIjI,OAAM,wBAGjB,GAAI+pE,GAAU/4C,GAAWP,EACzB,IAAIu5C,GAAM5/B,GAAUtZ,GAAUL,EAAK,uBACnC,IAAImY,GAAO,KACX,IAAIzK,GAAQ8rC,CACZ,IAAGD,EAAIthC,UAAU9sC,SAAW,EAAG,CAC9BquE,EAAU,iBACV,IAAGr5C,GAAWH,EAAIw5C,EAAS,MAAOD,EAAIthC,UAAUznC,KAAKgpE,GAEtD,GAAGD,EAAIthC,UAAU9sC,SAAW,EAAG,CAC9BquE,EAAU,iBACV,KAAIr5C,GAAWH,EAAIw5C,EAAQ,MAAO,KAAM,IAAIjqE,OAAM,0BAClDgqE,GAAIthC,UAAUznC,KAAKgpE,EACnBrhC,GAAO,KAER,GAAGohC,EAAIthC,UAAU,GAAGpsC,OAAO,IAAM,MAAOssC,EAAO,IAE/C,IAAIiB,KACJ,IAAIR,KACJ,KAAIphC,EAAKm7D,aAAen7D,EAAKiiE,UAAW,CACvCnhC,KACA,IAAGihC,EAAIt/B,IAAK,IAAM3B,GAAK80B,GAAUjtC,GAAWH,EAAKg5C,GAAkBO,EAAIt/B,MAAOs/B,EAAIt/B,IAAKziC,GAAS,MAAMxJ,GAAK,GAAGwJ,EAAKmtB,IAAK,KAAM32B,GAE9H,GAAGwJ,EAAKoqD,YAAc2X,EAAIngC,OAAOjuC,OAAQiuC,EAASigB,GAAgBh5B,GAAUL,EAAKu5C,EAAIngC,OAAO,GAAG5rC,QAAQ,MAAM,IAAK,OAAO,GAAIgK,EAE7H,IAAG+hE,EAAIr/B,MAAOtB,EAASs0B,GAAU/sC,GAAWH,EAAKg5C,GAAkBO,EAAIr/B,QAASq/B,EAAIr/B,MAAOd,EAAQ5hC,GAG9E+hE,EAAIvgC,MAAMjqC,IAAI,SAAS2qE,GAC5C,IACC,GAAI5gC,GAAOwD,GAAWjc,GAAUL,EAAKqc,GAAc28B,GAAkBU,KAASA,EAC9E,OAAO/L,IAAYxtC,GAAWH,EAAKg5C,GAAkBU,IAAQ5gC,EAAM4gC,EAAMliE,GACxE,MAAMxJ,MAGT,IAAIo8C,GAAKsiB,GAASvsC,GAAWH,EAAKg5C,GAAkBO,EAAIthC,UAAU,KAAMshC,EAAIthC,UAAU,GAAIzgC,EAE1F,IAAI0nC,MAAYy6B,EAAW,EAE3B,IAAGJ,EAAItgC,UAAU9tC,OAAQ,CACxBwuE,EAAWx5C,GAAWH,EAAKg5C,GAAkBO,EAAItgC,UAAU,IAAK,KAChE,IAAG0gC,EAAUz6B,EAAQhB,GAAiBy7B,EACtC,IAAGJ,EAAIrgC,SAAS/tC,SAAW,EAAG,CAC7BwuE,EAAWx5C,GAAWH,EAAKg5C,GAAkBO,EAAIrgC,SAAS,IAAK,KAC/D,IAAGygC,EAAUj6B,GAAgBi6B,EAAUz6B,EAAO1nC,IAIhD,GAAI2hC,KACJ,KAAI3hC,EAAKm7D,YAAcn7D,EAAKiiE,UAAW,CACtC,GAAIF,EAAIpgC,UAAUhuC,SAAW,EAAG,CAC/BwuE,EAAWt5C,GAAUL,EAAKg5C,GAAkBO,EAAIpgC,UAAU,IAAK,KAC/D,IAAGwgC,EAAUxgC,EAAY+G,GAAiBy5B,EAAUniE,IAItD,GAAIrH,KACJ,IAAGqH,EAAKm7D,YAAcn7D,EAAKiiE,UAAW,CACrC,GAAGrvB,EAAGxc,OAAQF,EAAS0c,EAAGxc,OAAO7+B,IAAI,QAAS6qE,GAAM5tE,GAAI,MAAOA,GAAEic,WAC5D,IAAGi3B,EAAMG,YAAcH,EAAMvR,WAAWxiC,OAAS,EAAGuiC,EAAOwR,EAAMvR,UACtE,IAAGn2B,EAAKiiE,UAAW,CAAEtpE,EAAIuuC,MAAQQ,CAAO/uC,GAAI0pE,UAAY1gC,EACxD,GAAG3hC,EAAKm7D,kBAAqBjlC,KAAW,YAAav9B,EAAIw9B,WAAaD,CACtE,IAAGl2B,EAAKm7D,WAAaxiE,EAAIw9B,WAAan2B,EAAKiiE,UAAW,MAAOtpE,GAE9Du9B,IAEA,IAAIosC,KACJ,IAAGtiE,EAAKuiE,UAAYR,EAAIv/B,UAAW8/B,EAAKtM,GAASrtC,GAAWH,EAAKg5C,GAAkBO,EAAIv/B,YAAYu/B,EAAIv/B,UAAUxiC,EAEjH,IAAIvM,GAAE,CACN,IAAIutE,KACJ,IAAI5qD,GAAM2qD,CAEV,EACC,GAAIyB,GAAW5vB,EAAGxc,MAClBsR,GAAMG,WAAa26B,EAAS7uE,MAC5B+zC,GAAMvR,aACN,KAAI,GAAI5yB,GAAI,EAAGA,GAAKi/D,EAAS7uE,SAAU4P,EAAG,CACzCmkC,EAAMvR,WAAW5yB,GAAKi/D,EAASj/D,GAAGkN,MAIpC,GAAIgyD,GAAQ9hC,EAAO,MAAQ,KAC3B,IAAI+hC,GAAUX,EAAIthC,UAAU,GAAG55B,YAAY,IAC3C,IAAI87D,IAAcZ,EAAIthC,UAAU,GAAGpsC,MAAM,EAAGquE,EAAQ,GAAK,SAAWX,EAAIthC,UAAU,GAAGpsC,MAAMquE,EAAQ,GAAK,SAAS1sE,QAAQ,MAAM,GAC/H,KAAIuyB,GAAeC,EAAKm6C,GAAaA,EAAa,qBAAuBF,EAAQ,OACjF,IAAI9B,GAAS77B,GAAWjc,GAAUL,EAAKm6C,EAAY,MAAOA,EAAW3sE,QAAQ,UAAW,OAExF,KAAI+rE,EAAI5gC,cAAgBxtC,QAAU,EAAG,CAEpCqM,EAAKmxD,OAASiF,GAAaztC,GAAWH,EAAKg5C,GAAkBO,EAAI5gC,SAAS,KAAK4gC,EAAI5gC,SAAS,GAAGnhC,GAGhG,IAAI+hE,EAAI//B,YAAcruC,QAAU,EAAG,CAClCqM,EAAKgiC,OAASukB,GAAiB59B,GAAWH,EAAKg5C,GAAkBO,EAAI//B,OAAO,KAAKhiC,GAGlF,GAAG2gE,EAAQA,EAASD,GAAkBC,EAAQ/tB,EAAGxc,OAGjD,IAAIwsC,GAASj6C,GAAWH,EAAI,0BAA0B,MAAO,EAAE,CAC/Dq6C,GAAQ,IAAIpvE,EAAI,EAAGA,GAAKi0C,EAAMG,aAAcp0C,EAAG,CAC9C,GAAIwtE,GAAQ,OACZ,IAAGN,GAAUA,EAAOltE,GAAI,CACvB2iB,EAAO,MAASuqD,EAAOltE,GAAG,GAAIuC,QAAQ,YAAa,GACnD,KAAIuyB,GAAeC,EAAKpS,GAAOA,EAAOuqD,EAAOltE,GAAG,EAChD,KAAI80B,GAAeC,EAAKpS,GAAOA,EAAOusD,EAAW3sE,QAAQ,aAAa,IAAM2qE,EAAOltE,GAAG,EACtFwtE,GAAQN,EAAOltE,GAAG,OACZ,CACN2iB,EAAO,uBAAuB3iB,EAAE,EAAEmvE,GAAO,IAAMH,CAC/CrsD,GAAOA,EAAKpgB,QAAQ,WAAW,UAEhC+qE,EAAW3qD,EAAKpgB,QAAQ,qBAAsB,mBAC9C,IAAGgK,GAAQA,EAAKk2B,QAAU,KAAM,aAAcl2B,GAAKk2B,QAClD,IAAK,SAAU,GAAGziC,GAAKuM,EAAKk2B,OAAQ,QAAS2sC,EAAQ,OACrD,IAAK,SAAU,GAAGn7B,EAAMvR,WAAW1iC,GAAG8T,eAAiBvH,EAAKk2B,OAAO3uB,cAAe,QAASs7D,EAAQ,OACnG,QAAS,GAAG5rE,MAAMW,SAAWX,MAAMW,QAAQoI,EAAKk2B,QAAS,CACxD,GAAI4sC,GAAU,KACd,KAAI,GAAIC,GAAM,EAAGA,GAAO/iE,EAAKk2B,OAAOviC,SAAUovE,EAAK,CAClD,SAAU/iE,GAAKk2B,OAAO6sC,IAAQ,UAAY/iE,EAAKk2B,OAAO6sC,IAAQtvE,EAAGqvE,EAAQ,CACzE,UAAU9iE,GAAKk2B,OAAO6sC,IAAQ,UAAY/iE,EAAKk2B,OAAO6sC,GAAKx7D,eAAiBmgC,EAAMvR,WAAW1iC,GAAG8T,cAAeu7D,EAAU,EAE1H,IAAIA,EAAS,QAASD,KAGxB/B,GAAiBt4C,EAAKpS,EAAM2qD,EAAUr5B,EAAMvR,WAAW1iC,GAAIA,EAAGutE,EAAW9qC,EAAQ+qC,EAAOjhE,EAAM4yC,EAAIhR,EAAQR,GAG3GzoC,GACCqqE,UAAWjB,EACXlvB,SAAUD,EACV1L,MAAOQ,EACP26B,UAAW1gC,EACXshC,KAAMX,EACNlsC,OAAQF,EACRC,WAAYuR,EAAMvR,WAClBg5B,QAASruB,GACTu6B,OAAQj6B,EACR2gB,OAAQngB,EACR14B,IAAK2d,GAAIxsB,GAEV,IAAG2F,GAAQA,EAAKkjE,UAAW,CAC1B,GAAG16C,EAAI7X,MAAO,CACbhY,EAAIyqB,KAAO0+C,CACXnpE,GAAIgY,MAAQ6X,EAAI7X,UACV,CACNhY,EAAIyqB,OACJzqB,GAAIgY,QACJ6X,GAAI1X,UAAUzG,QAAQ,SAAS0C,EAAGjJ,GACjCiJ,EAAIA,EAAE/W,QAAQ,kBAAmB,GACjC2C,GAAIyqB,KAAKpqB,KAAK+T,EACdpU,GAAIgY,MAAM5D,GAAKyb,EAAI3X,UAAU/M,MAIhC,GAAG9D,GAAQA,EAAKmjE,QAAS,CACxB,GAAGpB,EAAIjgC,IAAInuC,OAAS,EAAGgF,EAAIi0D,OAASjkC,GAAWH,EAAIg5C,GAAkBO,EAAIjgC,IAAI,IAAI,UAC5E,IAAGigC,EAAIp/B,UAAYo/B,EAAIp/B,SAASygC,MAAQtc,GAAQnuD,EAAIi0D,OAASjkC,GAAWH,EAAK,oBAAoB,MAGvG7vB,EAAIsqC,SAAWtC,EAAO,OAAS,MAC/B,OAAOhoC,GAIR,QAAS0qE,IAAcvvD,EAAKkB,GAC3B,GAAIhV,GAAOgV,KACX,IAAIzM,GAAI,WAAYhV,EAAOiZ,GAAI2H,KAAKL,EAAKvL,EACzC,KACAA,EAAI,sBACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EACvF+6D,4BAA2B/vE,EAAKmF,QAGlD6P,GAAI,2BACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EACzG,IAAIg7D,GAAMC,mBAAmBjwE,EAAKmF,QAClC,IAAG6qE,EAAI5vE,SAAW,GAAK4vE,EAAI,GAAGE,MAAM9vE,SAAW,GAAK4vE,EAAI,GAAGE,MAAM,GAAGnqE,IAAM,GAAKiqE,EAAI,GAAG9yD,OAAS,6BAA+B8yD,EAAI,GAAGE,MAAM,GAAGpqE,IAAM,mBACnJ,KAAM,IAAItB,OAAM,+BAAiCwQ,EAGlDA,GAAI,sDACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EACzG,IAAIm7D,GAAOC,0BAA0BpwE,EAAKmF,QAC1C,IAAGgrE,EAAK/vE,QAAU,GAAK+vE,EAAK,IAAM,4BACjC,KAAM,IAAI3rE,OAAM,+BAAiCwQ,EAGlDA,GAAI,+DACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EAC3Fq7D,eAAcrwE,EAAKmF,SAC/B,MAAMlC,IAER+R,EAAI,iBACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EACzG,IAAIs7D,GAAQC,qBAAqBvwE,EAAKmF,QAGtC6P,GAAI,mBACJhV,GAAOiZ,GAAI2H,KAAKL,EAAKvL,EAAI,KAAIhV,IAASA,EAAKmF,QAAS,KAAM,IAAIX,OAAM,mCAAqCwQ,EAG1G,IAAGs7D,EAAM,IAAM,SAAeE,iBAAkB,YAAa,MAAOA,eAAcF,EAAM,GAAItwE,EAAKmF,QAASsH,EAAKstD,UAAY,GAAIttD,EAE/H,IAAG6jE,EAAM,IAAM,SAAeG,iBAAkB,YAAa,MAAOA,eAAcH,EAAM,GAAItwE,EAAKmF,QAASsH,EAAKstD,UAAY,GAAIttD,EAC9H,MAAM,IAAIjI,OAAM,8BAGjB,QAASksE,IAAerxB,EAAI5yC,GAC3B,GAAG4yC,IAAOA,EAAG1pC,IAAK,CACjB0pC,EAAG1pC,IAAM2d,GAAIxsB,GAEd,GAAGu4C,GAAMA,EAAG1pC,IAAK,CAChBD,IAAYF,IAAe6pC,EAAG1pC,IAE9BlJ,GAAK2pD,OAAS7lC,GAAU8uB,EAAG1pC,IAAMlJ,GAAK2pD,OAAO/W,EAAG1pC,IAAI,QAAU,CAC9DlJ,GAAK4pD,IAAMhX,EAAG1pC,IAEflJ,EAAKshC,OAAWthC,GAAK2gE,SACrB3gE,GAAKmvD,UAAcnvD,GAAKmvD,QAAQ1U,MAAQ,CAAGz6C,GAAKmvD,QAAQxU,OAAS,CACjE,IAAG6N,GAAiBxoD,EAAKovD,WAAa,GAAI3G,SACrC,CAAEzoD,EAAKovD,aAAiBpvD,GAAKovD,WAAW8U,aAAiBlkE,GAAKovD,WAAW8U,IAC9E,GAAIzB,GAAQ,KACZ,IAAI0B,GAAS,IACb,IAAI9wD,GAAKguB,IACTm/B,IAAexgE,EAAOA,MACtB,IAAIwoB,GAAMU,IACV,IAAI3gB,GAAI,GAAIm9B,EAAM,CAElB1lC,GAAK0gD,UACLgJ,IAAe1pD,EAAK0gD,YAAciJ,QAAQya,QAAU,IAEpD,KAAIxxB,EAAG1L,MAAO0L,EAAG1L,QAEjB3+B,GAAI,mBACJygB,IAAaR,EAAKjgB,EAAGs+B,GAAiB+L,EAAG1L,MAAOlnC,GAChDqT,GAAGouB,UAAUzoC,KAAKuP,EAClBk9B,IAASzlC,EAAKshC,KAAM,EAAG/4B,EAAG2lB,GAAKJ,WAEhCvlB,GAAI,kBACH,IAAGqqC,EAAG1L,OAAS0L,EAAG1L,MAAM/Q,WAAW,MAC9B,KAAIyc,EAAGC,WAAaD,EAAGC,SAASzc,OAAQwc,EAAG1L,MAAM/Q,WAAayc,EAAGzc,eACjE,CACJ,GAAIkuC,KACJ,KAAI,GAAIC,GAAK,EAAGA,EAAK1xB,EAAGzc,WAAWxiC,SAAU2wE,EAC5C,IAAI1xB,EAAGC,SAASzc,OAAOkuC,QAAS3P,QAAU,EAAG0P,EAAIrrE,KAAK45C,EAAGzc,WAAWmuC,GACrE1xB,GAAG1L,MAAM/Q,WAAakuC,EAEvBzxB,EAAG1L,MAAMW,WAAa+K,EAAG1L,MAAM/Q,WAAWxiC,MAC1Cq1B,IAAaR,EAAKjgB,EAAG8/B,GAAgBuK,EAAG1L,MAAOlnC,GAC/CqT,GAAGquB,SAAS1oC,KAAKuP,EACjBk9B,IAASzlC,EAAKshC,KAAM,EAAG/4B,EAAG2lB,GAAKF,UAE/B,IAAG4kB,EAAGyvB,YAAczvB,EAAG1L,OAAS9jB,GAAKwvB,EAAGyvB,eAAe1uE,OAAS,EAAG,CAClE4U,EAAI,qBACJygB,IAAaR,EAAKjgB,EAAGsgC,GAAiB+J,EAAGyvB,UAAWriE,GACpDqT,GAAGsuB,UAAU3oC,KAAKuP,EAClBk9B,IAASzlC,EAAKshC,KAAM,EAAG/4B,EAAG2lB,GAAKH,YAGhC,IAAI2X,EAAI,EAAEA,GAAOkN,EAAGzc,WAAWxiC,SAAU+xC,EAAK,CAC7C,GAAI6+B,IAAUv/B,SACd,IAAIxO,GAAKoc,EAAGxc,OAAOwc,EAAGzc,WAAWuP,EAAI,GACrC,IAAI8+B,IAAShuC,OAAU,UAAY,OACnC,QAAOguC,GACP,IAAK,SAEL,QACCj8D,EAAI,sBAAwBm9B,EAAM,IAAM+8B,CACxCz5C,IAAaR,EAAKjgB,EAAGk8D,aAAa/+B,EAAI,EAAG1lC,EAAM4yC,EAAI2xB,GACnDlxD,GAAG6iB,OAAOl9B,KAAKuP,EACfk9B,IAASzlC,EAAK2gE,QAAS,EAAG,mBAAqBj7B,EAAM,IAAM+8B,EAAOv0C,GAAKkW,GAAG,KAG3E,GAAG5N,EAAI,CACN,GAAIuK,GAAWvK,EAAG,YAClB,IAAIkuC,GAAW,KACf,IAAIvU,GAAK,EACT,IAAGpvB,GAAYA,EAASptC,OAAS,EAAG,CACnCw8D,EAAK,cAAgBzqB,EAAM,IAAM+8B,CACjCz5C,IAAaR,EAAK2nC,EAAIwU,mBAAmB5jC,EAAU/gC,GACnDqT,GAAG0tB,SAAS/nC,KAAKm3D,EACjB1qB,IAAS8+B,GAAS,EAAG,cAAgB7+B,EAAM,IAAM+8B,EAAOv0C,GAAK2V,KAC7D6gC,GAAW,KAEZ,GAAGluC,EAAG,WAAY,CACjB,GAAGkuC,EAAU17C,GAAaR,EAAK,yBAA2B,EAAQ,OAAQs6B,GAAUpd,EAAKlP,EAAG,qBAEtFA,GAAG,mBACHA,GAAG,WAGX,GAAG+tC,EAAO,OAAOK,KAAM57C,GAAaR,EAAKqc,GAAct8B,GAAIg9B,GAAWg/B,IAGvE,GAAGvkE,EAAKmvD,SAAW,MAAQnvD,EAAKmvD,QAAQx7D,OAAS,EAAG,CACnD4U,EAAI,oBAAsBk6D,CAC1Bz5C,IAAaR,EAAKjgB,EAAGs8D,cAAc7kE,EAAKmvD,QAASnvD,GACjDqT,GAAGytB,KAAK9nC,KAAKuP,EACbk9B,IAASzlC,EAAK2gE,QAAS,EAAG,iBAAmB8B,EAAOv0C,GAAK4V,KAG1Dv7B,EAAI,eAAiBk6D,CACrBz5C,IAAaR,EAAKjgB,EAAGu8D,aAAalyB,EAAI5yC,GACtCqT,GAAGotB,UAAUznC,KAAKuP,EAClBk9B,IAASzlC,EAAKshC,KAAM,EAAG/4B,EAAG2lB,GAAKkV,GAI/B76B,GAAI,qBACJ,IAAI4jB,GAAK21B,GAAYlP,EAAGmP,OAAQ/hD,EAChCgpB,IAAaR,EAAKjgB,EAAG4jB,EACrB9Y,GAAGuuB,OAAO5oC,KAAKuP,EACfk9B,IAASzlC,EAAK2gE,QAAS,EAAG,mBAAoBzyC,GAAK8V,MAInDz7B,GAAI,aAAek6D,CACnBz5C,IAAaR,EAAKjgB,EAAGw8D,cAAcnyB,EAAI5yC,GACvCqT,GAAG+tB,OAAOpoC,KAAKuP,EACfk9B,IAASzlC,EAAK2gE,QAAS,EAAG,UAAY8B,EAAOv0C,GAAK6V,IAElD,IAAG6O,EAAGga,QAAUuX,EAAQ,CACvB57D,EAAI,mBACJygB,IAAaR,EAAKjgB,EAAGqqC,EAAGga,OACxBv5C,GAAGyuB,IAAI9oC,KAAKuP,EACZk9B,IAASzlC,EAAK2gE,QAAS,EAAG,iBAAkBzyC,GAAK0W,KAGlDr8B,EAAI,eAAiBk6D,CACrBz5C,IAAaR,EAAKjgB,EAAGy8D,mBACrB3xD,GAAG8tB,SAASnoC,KAAKuP,EACjBk9B,IAASzlC,EAAK2gE,QAAS,EAAG,YAAc8B,EAAOv0C,GAAKuW,OAEpDzb,IAAaR,EAAK,sBAAuBoa,GAASvvB,EAAIrT,GACtDgpB,IAAaR,EAAK,cAAe+c,GAAWvlC,EAAKshC,MACjDtY,IAAaR,EAAK,qBAAuBi6C,EAAQ,QAASl9B,GAAWvlC,EAAK2gE,eAEnE3gE,GAAK2pD,aAAe3pD,GAAK4pD,GAChC,OAAOphC,GAGR,QAASy8C,IAAeryB,EAAI5yC,GAC3B,GAAG4yC,IAAOA,EAAG1pC,IAAK,CACjB0pC,EAAG1pC,IAAM2d,GAAIxsB,GAEd,GAAGu4C,GAAMA,EAAG1pC,IAAK,CAChBD,IAAYF,IAAe6pC,EAAG1pC,IAE9BlJ,GAAK2pD,OAAS7lC,GAAU8uB,EAAG1pC,IAAMlJ,GAAK2pD,OAAO/W,EAAG1pC,IAAI,QAAU,CAC9DlJ,GAAK4pD,IAAMhX,EAAG1pC,IAEflJ,EAAKshC,OAAWthC,GAAK2gE,SACrB3gE,GAAKmvD,UAAcnvD,GAAKmvD,QAAQ1U,MAAQ,CAAGz6C,GAAKmvD,QAAQxU,OAAS,CACjE,IAAG6N,GAAiBxoD,EAAKovD,WAAa,GAAI3G,SACrC,CAAEzoD,EAAKovD,aAAiBpvD,GAAKovD,WAAW8U,aAAiBlkE,GAAKovD,WAAW8U,IAC9E,GAAIzB,GAAQ,KACZ,IAAI0B,GAAShd,GAAQj0D,QAAQ8M,EAAKijC,WAAa,CAC/C,IAAI5vB,GAAKguB,IACTm/B,IAAexgE,EAAOA,MACtB,IAAIwoB,GAAMU,IACV,IAAI3gB,GAAI,GAAIm9B,EAAM,CAElB1lC,GAAK0gD,UACLgJ,IAAe1pD,EAAK0gD,YAAciJ,QAAQya,QAAU,IAEpD,KAAIxxB,EAAG1L,MAAO0L,EAAG1L,QAEjB3+B,GAAI,mBACJygB,IAAaR,EAAKjgB,EAAGs+B,GAAiB+L,EAAG1L,MAAOlnC,GAChDqT,GAAGouB,UAAUzoC,KAAKuP,EAClBk9B,IAASzlC,EAAKshC,KAAM,EAAG/4B,EAAG2lB,GAAKJ,WAEhCvlB,GAAI,kBACH,IAAGqqC,EAAG1L,OAAS0L,EAAG1L,MAAM/Q,WAAW,MAC9B,KAAIyc,EAAGC,WAAaD,EAAGC,SAASzc,OAAQwc,EAAG1L,MAAM/Q,WAAayc,EAAGzc,eACjE,CACJ,GAAIkuC,KACJ,KAAI,GAAIC,GAAK,EAAGA,EAAK1xB,EAAGzc,WAAWxiC,SAAU2wE,EAC5C,IAAI1xB,EAAGC,SAASzc,OAAOkuC,QAAS3P,QAAU,EAAG0P,EAAIrrE,KAAK45C,EAAGzc,WAAWmuC,GACrE1xB,GAAG1L,MAAM/Q,WAAakuC,EAEvBzxB,EAAG1L,MAAMW,WAAa+K,EAAG1L,MAAM/Q,WAAWxiC,MAC1Cq1B,IAAaR,EAAKjgB,EAAG8/B,GAAgBuK,EAAG1L,MAAOlnC,GAC/CqT,GAAGquB,SAAS1oC,KAAKuP,EACjBk9B,IAASzlC,EAAKshC,KAAM,EAAG/4B,EAAG2lB,GAAKF,UAE/B,IAAG4kB,EAAGyvB,YAAczvB,EAAG1L,OAAS9jB,GAAKwvB,EAAGyvB,eAAe1uE,OAAS,EAAG,CAClE4U,EAAI,qBACJygB,IAAaR,EAAKjgB,EAAGsgC,GAAiB+J,EAAGyvB,UAAWriE,GACpDqT,GAAGsuB,UAAU3oC,KAAKuP,EAClBk9B,IAASzlC,EAAKshC,KAAM,EAAG/4B,EAAG2lB,GAAKH,YAGhC,GAAIiU,IAAU,UACdhiC,GAAKqmD,KAAO,CAEZ,KAAI3gB,EAAI,EAAEA,GAAOkN,EAAGzc,WAAWxiC,SAAU+xC,EAAK,CAC7C,GAAI6+B,IAAUv/B,SACd,IAAIxO,GAAKoc,EAAGxc,OAAOwc,EAAGzc,WAAWuP,EAAI,GACrC,IAAI8+B,IAAShuC,OAAU,UAAY,OACnC,QAAOguC,GACP,IAAK,SAEL,QACCj8D,EAAI,sBAAwBm9B,EAAM,IAAM+8B,CACxCz5C,IAAaR,EAAKjgB,EAAGmpD,GAAahsB,EAAI,EAAG1lC,EAAM4yC,EAAI2xB,GACnDlxD,GAAG6iB,OAAOl9B,KAAKuP,EACfk9B,IAASzlC,EAAK2gE,QAAS,EAAG,mBAAqBj7B,EAAM,IAAM+8B,EAAOv0C,GAAKkW,GAAG,KAG3E,GAAG5N,EAAI,CACN,GAAIuK,GAAWvK,EAAG,YAClB,IAAIkuC,GAAW,KACf,IAAIvU,GAAK,EACT,IAAGpvB,GAAYA,EAASptC,OAAS,EAAG,CACnC,GAAIuxE,GAAS,KACbnkC,GAAS12B,QAAQ,SAAS67C,GACzBA,EAAK,GAAG77C,QAAQ,SAASxS,GAAK,GAAGA,EAAEyI,GAAK,KAAM4kE,EAAS,QAExD,IAAGA,EAAQ,CACV/U,EAAK,sCAAwCzqB,EAAM,MACnD1c,IAAaR,EAAK2nC,EAAIlK,GAAgBllB,EAAUiB,EAAQhiC,GACxDqT,GAAGkuB,iBAAiBvoC,KAAKm3D,EACzB1qB,IAAS8+B,GAAS,EAAG,sCAAwC7+B,EAAM,OAAQxX,GAAKC,OAGjFgiC,EAAK,cAAgBzqB,EAAM,IAAM+8B,CACjCz5C,IAAaR,EAAK2nC,EAAI5K,GAAmBxkB,EAAU/gC,GACnDqT,GAAG0tB,SAAS/nC,KAAKm3D,EACjB1qB,IAAS8+B,GAAS,EAAG,cAAgB7+B,EAAM,IAAM+8B,EAAOv0C,GAAK2V,KAC7D6gC,GAAW,KAEZ,GAAGluC,EAAG,WAAY,CACjB,GAAGkuC,EAAU17C,GAAaR,EAAK,yBAA2B,EAAQ,OAAQs6B,GAAUpd,EAAKlP,EAAG,qBAEtFA,GAAG,mBACHA,GAAG,WAGX,GAAG+tC,EAAO,OAAOK,KAAM57C,GAAaR,EAAKqc,GAAct8B,GAAIg9B,GAAWg/B,IAGvE,GAAGvkE,EAAKmvD,SAAW,MAAQnvD,EAAKmvD,QAAQx7D,OAAS,EAAG,CACnD4U,EAAI,oBAAsBk6D,CAC1Bz5C,IAAaR,EAAKjgB,EAAGuyC,GAAc96C,EAAKmvD,QAASnvD,GACjDqT,GAAGytB,KAAK9nC,KAAKuP,EACbk9B,IAASzlC,EAAK2gE,QAAS,EAAG,iBAAmB8B,EAAOv0C,GAAK4V,KAG1Dv7B,EAAI,eAAiBk6D,CACrBz5C,IAAaR,EAAKjgB,EAAGusD,GAAaliB,EAAI5yC,GACtCqT,GAAGotB,UAAUznC,KAAKuP,EAClBk9B,IAASzlC,EAAKshC,KAAM,EAAG/4B,EAAG2lB,GAAKkV,GAI/B76B,GAAI,qBACJygB,IAAaR,EAAKjgB,EAAGu5C,GAAYlP,EAAGmP,OAAQ/hD,GAC5CqT,GAAGuuB,OAAO5oC,KAAKuP,EACfk9B,IAASzlC,EAAK2gE,QAAS,EAAG,mBAAoBzyC,GAAK8V,MAInDz7B,GAAI,aAAek6D,CACnBz5C,IAAaR,EAAKjgB,EAAG24C,GAActO,EAAI5yC,GACvCqT,GAAG+tB,OAAOpoC,KAAKuP,EACfk9B,IAASzlC,EAAK2gE,QAAS,EAAG,UAAY8B,EAAOv0C,GAAK6V,IAElD,IAAG6O,EAAGga,QAAUuX,EAAQ,CACvB57D,EAAI,mBACJygB,IAAaR,EAAKjgB,EAAGqqC,EAAGga,OACxBv5C,GAAGyuB,IAAI9oC,KAAKuP,EACZk9B,IAASzlC,EAAK2gE,QAAS,EAAG,iBAAkBzyC,GAAK0W,KAGlDr8B,EAAI,eAAiBk6D,CACrBz5C,IAAaR,EAAKjgB,EAAGi6C,KACrBnvC,GAAG8tB,SAASnoC,KAAKuP,EACjBk9B,IAASzlC,EAAK2gE,QAAS,EAAG,YAAc8B,EAAOv0C,GAAKuW,OAEpD,IAAGzC,EAAOruC,OAAS,EAAG,CACrB4U,EAAI,uBACJygB,IAAaR,EAAKjgB,EAAGk+C,GAAiBzkB,EAAQhiC,GAC9CqT,GAAG2uB,OAAOhpC,KAAKuP,EACfk9B,IAASzlC,EAAK2gE,QAAS,EAAG,qBAAsBzyC,GAAKwW,QAGtD1b,GAAaR,EAAK,sBAAuBoa,GAASvvB,EAAIrT,GACtDgpB,IAAaR,EAAK,cAAe+c,GAAWvlC,EAAKshC,MACjDtY,IAAaR,EAAK,qBAAuBi6C,EAAQ,QAASl9B,GAAWvlC,EAAK2gE,eAEnE3gE,GAAK2pD,aAAe3pD,GAAK4pD,GAChC,OAAOphC,GAGR,QAASuvB,IAAUxvC,EAAE/U,GACpB,GAAIgB,GAAI,EACR,SAAQhB,OAAOsP,MAAQ,UACtB,IAAK,SAAU,OAAQyF,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IACnE,IAAK,SAAU/T,EAAIuB,EAAcwS,EAAElU,MAAM,EAAE,IAAM,OACjD,IAAK,SAAUG,EAAI+T,CAAG,OACtB,IAAK,QAAU,OAAQA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IACnE,QAAS,KAAM,IAAIxQ,OAAM,sBAAwBvE,GAAKA,EAAEsP,MAAQ,eAEjE,OAAQtO,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,IAG7I,QAASuxE,IAASrxD,EAAK9T,GACtB,GAAGwM,GAAI2H,KAAKL,EAAK,oBAAqB,MAAOuvD,IAAcvvD,EAAK9T,EAChE,OAAOolE,cAAatxD,EAAK9T,GAG1B,QAASqlE,IAAS9xE,EAAMyM,GACvB,GAAIwoB,GAAKzvB,EAAIxF,CACb,IAAIC,GAAIwM,KACR,KAAIxM,EAAEsP,KAAMtP,EAAEsP,KAAQ7M,GAAWC,OAAOkC,SAAS7E,GAAS,SAAW,QACrEi1B,GAAMW,GAASpwB,EAAGvF,EAClB,OAAO4b,IAAUoZ,EAAKh1B,GAGvB,QAAS8xE,IAAe/xE,EAAMC,GAC7B,GAAIC,GAAI,CACR8xE,GAAM,MAAM9xE,EAAIF,EAAKI,OAAQ,OAAOJ,EAAKK,WAAWH,IACnD,IAAK,KAAM,IAAK,KAAM,IAAK,MAAQA,CAAG,OACtC,IAAK,IAAM,MAAO+xE,YAAWjyE,EAAKc,MAAMZ,GAAGD,GAC3C,QAAS,KAAM+xE,IAEhB,MAAO5uB,IAAIrJ,YAAY/5C,EAAMC,GAG9B,QAASiyE,IAAmBlyE,EAAMC,GACjC,GAAIgS,GAAM,GAAIsyC,EAAQC,GAAUxkD,EAAMC,EACtC,QAAOA,EAAEsP,MACR,IAAK,SAAU0C,EAAMzP,EAAcxC,EAAO,OAC1C,IAAK,SAAUiS,EAAMjS,CAAM,OAC3B,IAAK,SAAUiS,EAAMjS,EAAKsD,SAAS,SAAW,OAC9C,IAAK,QAAS2O,EAAMsf,GAAOvxB,EAAO,OAClC,QAAS,KAAM,IAAIwE,OAAM,qBAAuBvE,EAAEsP,OAEnD,GAAGg1C,EAAM,IAAM,KAAQA,EAAM,IAAM,KAAQA,EAAM,IAAM,IAAMtyC,EAAM8mB,GAAS9mB,EAC5EhS,GAAEsP,KAAO,QACT,OAAOwiE,IAAe9/D,EAAKhS,GAG5B,QAASkyE,IAAWnyE,EAAMC,GACzB,GAAIuF,GAAIxF,CACR,IAAGC,EAAEsP,MAAQ,SAAU/J,EAAIhD,EAAcgD,EACzCA,SAAWtH,KAAa,YAAcA,EAASoD,MAAMC,OAAO,KAAMiE,EAAE1E,MAAM,GAAI,OAASR,EAAYkF,EAAE1E,MAAM,GAC3Gb,GAAEsP,KAAO,QACT,OAAOwiE,IAAevsE,EAAGvF,GAG1B,QAASmyE,IAAQpyE,GAChB,OAAQA,EAAKyQ,MAAM,gBAAkBzQ,EAAOguB,GAAUhuB,GAGvD,QAASqyE,IAASryE,EAAMwF,EAAGvF,EAAGgS,GAC7B,GAAGA,EAAK,CAAEhS,EAAEsP,KAAO,QAAU,OAAO6zC,IAAIrJ,YAAY/5C,EAAMC,GAC1D,MAAOmjD,IAAIrJ,YAAYv0C,EAAGvF,GAG3B,QAASquE,IAAStuE,EAAMyM,GACvB3M,GACA,IAAIG,GAAIwM,KACR,IAAGxM,EAAEg4C,gBAAmB/5C,KAAa,YAAawkB,QAAQC,MAAM,sFAChE,UAAUze,eAAgB,aAAelE,YAAgBkE,aAAa,MAAOoqE,IAAS,GAAI7qE,YAAWzD,IAAQC,EAAIqzB,GAAIrzB,GAAIA,EAAEsP,KAAO,QAAStP,GAC3I,UAAUwD,cAAe,aAAezD,YAAgByD,cAAexD,EAAEsP,KAAMtP,EAAEsP,WAAcse,QAAS,YAAc,SAAW,OACjI,IAAIroB,GAAIxF,EAAM+W,GAAK,EAAE,EAAE,EAAE,GAAI9E,EAAM,KACnC,IAAGhS,EAAE42D,WAAY,CAAE52D,EAAEkkD,OAAS,IAAMlkD,GAAEyjC,WAAa,KACnDsxB,KACA,IAAG/0D,EAAEoV,OAAQ2/C,GAAS3/C,OAASpV,EAAEoV,MACjC,KAAIpV,EAAEsP,KAAMtP,EAAEsP,KAAQ7M,GAAWC,OAAOkC,SAAS7E,GAAS,SAAW,QACrE,IAAGC,EAAEsP,MAAQ,OAAQ,CAAEtP,EAAEsP,KAAO7M,EAAU,SAAW,QAAU8C,GAAImqB,GAAY3vB,EAAO,UAAUyD,cAAe,cAAgBf,EAASzC,EAAEsP,KAAO,QACjJ,GAAGtP,EAAEsP,MAAQ,SAAU,CAAE0C,EAAM,IAAMhS,GAAEsP,KAAO,QAAUtP,GAAEg4C,SAAW,KAAOzyC,GAAI4sE,GAAQpyE,GACxF,GAAGC,EAAEsP,MAAQ,eAAkB9L,cAAe,aAAezD,YAAgByD,mBAAqBS,eAAgB,YAAa,CAE9H,GAAIouE,GAAG,GAAIpuE,aAAY,GAAIquE,EAAG,GAAI9uE,YAAW6uE,EAAKC,GAAG5B,IAAI,KAEzD,KAAI4B,EAAG5B,IAAK,CAAC1wE,EAAEqzB,GAAIrzB,EAAIA,GAAEsP,KAAK,OAAS,OAAO++D,IAAS7pE,EAAKe,GAAIvF,IAEjE,QAAQ8W,EAAIytC,GAAUh/C,EAAGvF,IAAI,IAC5B,IAAK,KAAM,GAAG8W,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAM,MAAO66D,IAAS34D,GAAIoH,KAAK7a,EAAGvF,GAAIA,EAAI,OACvK,IAAK,GAAM,GAAG8W,EAAE,IAAM,EAAM,MAAO86D,cAAarsE,EAAGvF,EAAI,OACvD,IAAK,IAAM,MAAOgyE,YAAWzsE,EAAGvF,GAChC,IAAK,IACJ,GAAG8W,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,EAAM,KAAM,IAAIvS,OAAM,uCACpE,IAAGuS,EAAE,KAAO,GAAM,MAAO4tC,IAAWn/C,EAAGvF,EACvC,OACD,IAAK,IAAM,GAAG8W,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,GAAM,MAAOorC,IAAIpI,YAAYv0C,EAAGvF,EAAI,OAC7F,IAAK,IAAM,MAAQ8W,GAAE,KAAO,IAAQA,EAAE,GAAK,GAAQA,EAAE,GAAK,EAAQ+6D,GAAStsE,EAAGvF,GAAKoyE,GAASryE,EAAMwF,EAAGvF,EAAGgS,GACxG,IAAK,KAAM,MAAO8E,GAAE,KAAO,GAAOk7D,WAAWzsE,EAAGvF,GAAKoyE,GAASryE,EAAMwF,EAAGvF,EAAGgS,GAC1E,IAAK,KACJ,GAAG8E,EAAE,KAAO,IAAM,CAAE,MAAOo7D,IAAW3sE,EAAGvF,OACpC,IAAG8W,EAAE,KAAO,GAAQA,EAAE,KAAO,GAAQA,EAAE,KAAO,EAAM,MAAOy7D,KAAIz4B,YAAYv0C,EAAGvF,EACnF,OACD,IAAK,GACJ,GAAG8W,EAAE,KAAO,EAAM,CACjB,GAAGA,EAAE,IAAM,GAAQA,EAAE,KAAO,EAAM,MAAOy7D,KAAIz4B,YAAYv0C,EAAGvF,EAC5D,IAAG8W,EAAE,KAAO,IAASA,EAAE,KAAO,GAAQA,EAAE,KAAO,GAAO,MAAOy7D,KAAIz4B,YAAYv0C,EAAGvF,GAEjF,MACD,IAAK,IAAM,IAAK,MAAM,IAAK,MAAM,IAAK,KAAM,MAAO01C,IAAIoE,YAAYv0C,EAAGvF,GACtE,IAAK,KAAM,GAAG8W,EAAE,KAAO,IAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAM,MAAO07D,iBAAgBjtE,EAAGvF,EAAI,OAC7F,IAAK,KAAM,IAAK,KAAM,IAAK,IAAM,MAAOiyE,IAAmB1sE,EAAGvF,GAC9D,IAAK,KAAM,GAAG8W,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,GAAM,KAAM,IAAIvS,OAAM,sCAAwC,OACvH,IAAK,GAAM,GAAGuS,EAAE,KAAO,IAAM,KAAM,IAAIvS,OAAM,kCAAoC,OACjF,IAAK,IACJ,GAAGuS,EAAE,KAAO,IAAM,KAAM,IAAIvS,OAAM,kCAClC,IAAGuS,EAAE,KAAO,IAAM,KAAM,IAAIvS,OAAM,kCAClC,QAEF,GAAGkxC,GAAuB/1C,QAAQoX,EAAE,KAAO,GAAKA,EAAE,IAAM,IAAMA,EAAE,IAAM,GAAI,MAAO4+B,IAAIoE,YAAYv0C,EAAGvF,EACpG,OAAOoyE,IAASryE,EAAMwF,EAAGvF,EAAGgS,GAG7B,QAASmO,IAAa3G,EAAUhN,GAC/B,GAAIxM,GAAIwM,KAAUxM,GAAEsP,KAAO,MAC3B,OAAO++D,IAAS70D,EAAUxZ,GAE3B,QAASyyE,IAAcnyD,EAAKtgB,GAC3B,OAAOA,EAAEsP,MACR,IAAK,UAAU,IAAK,SAAU,MAC9B,IAAK,UAAU,IAAK,QAAStP,EAAEsP,KAAO,EAAI,OAC1C,IAAK,OAAQ,MAAOqe,IAAS3tB,EAAE0b,KAAM1C,GAAIwK,MAAMlD,GAAMhR,KAAK7M,EAAU,SAAW,MAC/E,IAAK,SAAU,KAAM,IAAI8B,OAAM,qCAAuCvE,EAAEyvC,SAAW,WACnF,QAAS,KAAM,IAAIlrC,OAAM,qBAAuBvE,EAAEsP,OAEnD,MAAO0J,IAAIwK,MAAMlD,EAAKtgB,GAGvB,QAAS2hB,IAAUy9B,EAAI5yC,GACtB,OAAOA,EAAKijC,UACX,IAAK,MAAO,MAAOm9B,IAAUxtB,EAAI5yC,GACjC,IAAK,UAAW,MAAOkmE,mBAAkBtzB,EAAI5yC,GAC7C,IAAK,OAAQ,MAAOikE,IAAerxB,EAAI5yC,GACvC,QAAS,MAAOilE,IAAeryB,EAAI5yC,KAIrC,QAASmmE,IAAevzB,EAAI5yC,GAC3B,GAAIxM,GAAIqzB,GAAI7mB,MACZ,IAAImqB,GAAIhV,GAAUy9B,EAAIp/C,EACtB,OAAO4yE,IAAqBj8C,EAAG32B,GAEhC,QAAS6yE,IAAmBzzB,EAAI5yC,GAC/B,GAAIxM,GAAIqzB,GAAI7mB,MACZ,IAAImqB,GAAI86C,GAAeryB,EAAIp/C,EAC3B,OAAO4yE,IAAqBj8C,EAAG32B,GAEhC,QAAS4yE,IAAqBj8C,EAAG32B,GAChC,GAAI8yE,KACJ,IAAIC,GAAQtwE,EAAU,mBAAuBe,cAAe,YAAc,QAAU,QACpF,IAAGxD,EAAEgqB,YAAa8oD,EAAM9oD,YAAc,SACtC,IAAGhqB,EAAE85D,SAAUgZ,EAAMxjE,KAAOyjE,MACvB,QAAO/yE,EAAEsP,MACb,IAAK,SAAUwjE,EAAMxjE,KAAO,QAAU,OACtC,IAAK,SAAUwjE,EAAMxjE,KAAO,QAAU,OACtC,IAAK,SAAU,KAAM,IAAI/K,OAAM,qCAAuCvE,EAAEyvC,SAAW,WACnF,IAAK,UACL,IAAK,OAAQqjC,EAAMxjE,KAAOyjE,CAAO,OACjC,QAAS,KAAM,IAAIxuE,OAAM,qBAAuBvE,EAAEsP,OAEnD,GAAInK,GAAMwxB,EAAErZ,UAAYtE,GAAIwK,MAAMmT,GAAIlV,SAAS,MAAOnS,MAAO0jE,WAAc;AAAUC,OAAU,UAAUH,EAAMxjE,OAASwjE,EAAMxjE,KAAM0a,cAAehqB,EAAEgqB,cAAgB2M,EAAEu8C,SAASJ,EAChL,UAAUllD,QAAS,YAAa,CAC/B,SAAUzoB,IAAO,SAAU,CAC1B,GAAGnF,EAAEsP,MAAQ,UAAYtP,EAAEsP,MAAQ,SAAU,MAAOnK,EACpDA,GAAM,GAAI3B,YAAWQ,EAAKmB,KAI5B,GAAGnF,EAAE85D,gBAAmBqZ,iBAAkB,YAAa,MAAOV,IAAcU,cAAchuE,EAAKnF,EAAE85D,UAAW95D,EAE5G,IAAGA,EAAEsP,OAAS,OAAQ,MAAOqe,IAAS3tB,EAAE0b,KAAMvW,EAC9C,OAAOnF,GAAEsP,MAAQ,SAAWwpB,GAAS3zB,GAAOA,EAG7C,QAASiuE,IAAeh0B,EAAI5yC,GAC3B,GAAIxM,GAAIwM,KACR,IAAI8T,GAAM+yD,aAAaj0B,EAAIp/C,EAC3B,OAAOyyE,IAAcnyD,EAAKtgB,GAG3B,QAASszE,IAAkBnuE,EAAKqH,EAAM+mE,GACrC,IAAIA,EAAKA,EAAM,EACf,IAAIvzE,GAAIuzE,EAAMpuE,CACd,QAAOqH,EAAK8C,MACX,IAAK,SAAU,MAAOzN,GAAcksB,GAAU/tB,IAC9C,IAAK,SAAU,MAAO+tB,IAAU/tB,GAChC,IAAK,SAAU,MAAOmF,GACtB,IAAK,OAAQ,MAAOwoB,IAASnhB,EAAKkP,KAAM1b,EAAG,QAC3C,IAAK,SAAU,CACd,GAAGyC,EAAS,MAAOI,GAAY7C,EAAG,YAC7B,UAAU6tB,eAAgB,YAAa,OAAO,GAAIA,cAAcC,OAAO9tB,OACvE,OAAOszE,IAAkBtzE,GAAIsP,KAAK,WAAWxL,MAAM,IAAIC,IAAI,SAASM,GAAK,MAAOA,GAAEjE,WAAW,OAGpG,KAAM,IAAImE,OAAM,qBAAuBiI,EAAK8C,MAG7C,QAASkkE,IAAgBruE,EAAKqH,GAC7B,OAAOA,EAAK8C,MACX,IAAK,SAAU,MAAOhN,GAAmB6C,GACzC,IAAK,SAAU,MAAOA,GACtB,IAAK,SAAU,MAAOA,GACtB,IAAK,OAAQ,MAAOwoB,IAASnhB,EAAKkP,KAAMvW,EAAK,UAC7C,IAAK,SAAU,CACd,GAAG1C,EAAS,MAAOI,GAAYsC,EAAK,cAC/B,OAAOA,GAAIrB,MAAM,IAAIC,IAAI,SAASM,GAAK,MAAOA,GAAEjE,WAAW,OAGlE,KAAM,IAAImE,OAAM,qBAAuBiI,EAAK8C,MAI7C,QAASmkE,IAAkBtuE,EAAKqH,GAC/B,OAAOA,EAAK8C,MACX,IAAK,UACL,IAAK,UACL,IAAK,SACJ,GAAIqJ,GAAO,EAEX,KAAI,GAAI1Y,GAAI,EAAGA,EAAIkF,EAAIhF,SAAUF,EAAG0Y,GAAQrY,OAAOC,aAAa4E,EAAIlF,GACpE,OAAOuM,GAAK8C,MAAQ,SAAWzN,EAAc8W,GAAQnM,EAAK8C,MAAQ,SAAWwpB,GAASngB,GAAQA,EAC/F,IAAK,OAAQ,MAAOgV,IAASnhB,EAAKkP,KAAMvW,GACxC,IAAK,SAAU,MAAOA,GACtB,QAAS,KAAM,IAAIZ,OAAM,qBAAuBiI,EAAK8C,QAIvD,QAASokE,IAAct0B,EAAI5yC,GAC1B3M,GACA8gE,IAASvhB,EACT,IAAIp/C,GAAIqzB,GAAI7mB,MACZ,IAAGxM,EAAE42D,WAAY,CAAE52D,EAAEkkD,OAAS,IAAMlkD,GAAEyjC,WAAa,KACnD,GAAGzjC,EAAEsP,MAAQ,QAAS,CAAEtP,EAAEsP,KAAO,QAAU,IAAInK,GAAOuuE,GAAct0B,EAAIp/C,EAAKA,GAAEsP,KAAO,OAAS,OAAOtL,GAAKmB,GAC3G,MAAO0tE,IAAmBzzB,EAAIp/C,GAG/B,QAAS2zE,IAAUv0B,EAAI5yC,GACtB3M,GACA8gE,IAASvhB,EACT,IAAIp/C,GAAIqzB,GAAI7mB,MACZ,IAAGxM,EAAE42D,WAAY,CAAE52D,EAAEkkD,OAAS,IAAMlkD,GAAEyjC,WAAa,KACnD,GAAGzjC,EAAEsP,MAAQ,QAAS,CAAEtP,EAAEsP,KAAO,QAAU,IAAInK,GAAOwuE,GAAUv0B,EAAIp/C,EAAKA,GAAEsP,KAAO,OAAS,OAAOtL,GAAKmB,GACvG,GAAImL,GAAM,CACV,IAAGtQ,EAAEyiC,MAAO,CACX,SAAUziC,GAAEyiC,OAAS,SAAUnyB,EAAMtQ,EAAEyiC,UAClCnyB,GAAM8uC,EAAGzc,WAAWjjC,QAAQM,EAAEyiC,MACnC,KAAI2c,EAAGzc,WAAWryB,GAAM,KAAM,IAAI/L,OAAM,oBAAsBvE,EAAEyiC,MAAQ,YAAgBziC,GAAEyiC,OAE3F,OAAOziC,EAAEyvC,UAAY,QACpB,IAAK,OACL,IAAK,OAAQ,MAAO6jC,IAAkBM,WAAWx0B,EAAIp/C,GAAIA,GACzD,IAAK,OACL,IAAK,OAAQ,MAAOszE,IAAkBr5B,GAAKD,WAAWoF,EAAGxc,OAAOwc,EAAGzc,WAAWryB,IAAOtQ,EAAGo/C,GAAKp/C,GAC7F,IAAK,OACL,IAAK,OAAQ,MAAOszE,IAAkBzP,GAAczkB,EAAGxc,OAAOwc,EAAGzc,WAAWryB,IAAOtQ,GAAIA,GACvF,IAAK,MAAO,MAAOwzE,IAAgBK,GAAaz0B,EAAGxc,OAAOwc,EAAGzc,WAAWryB,IAAOtQ,GAAIA,GACnF,IAAK,MAAO,MAAOszE,IAAkBQ,GAAa10B,EAAGxc,OAAOwc,EAAGzc,WAAWryB,IAAOtQ,GAAIA,EAAG,UACxF,IAAK,MAAO,MAAOszE,IAAkBpxB,GAAIlI,WAAWoF,EAAGxc,OAAOwc,EAAGzc,WAAWryB,IAAOtQ,GAAIA,GACvF,IAAK,MAAO,MAAOyzE,IAAkB/9B,GAAIsE,WAAWoF,EAAGxc,OAAOwc,EAAGzc,WAAWryB,IAAOtQ,GAAIA,GACvF,IAAK,MAAO,MAAOszE,IAAkBnwB,GAAInJ,WAAWoF,EAAGxc,OAAOwc,EAAGzc,WAAWryB,IAAOtQ,GAAIA,GACvF,IAAK,MAAO,MAAOszE,IAAkBS,aAAa30B,EAAGxc,OAAOwc,EAAGzc,WAAWryB,IAAOtQ,GAAIA,GACrF,IAAK,MAAO,MAAOszE,IAAkB3wB,GAAI3I,WAAWoF,EAAGxc,OAAOwc,EAAGzc,WAAWryB,IAAOtQ,GAAIA,GACvF,IAAK,OAAQ,MAAOszE,IAAkB1G,GAAUxtB,EAAIp/C,GAAIA,GACxD,IAAK,MAAO,MAAOyzE,IAAkBlB,IAAIyB,aAAa50B,EAAGxc,OAAOwc,EAAGzc,WAAWryB,IAAOtQ,GAAIA,GACzF,IAAK,MAAO,MAAOyzE,IAAkBlB,IAAI0B,YAAY70B,EAAIp/C,GAAIA,GAC7D,IAAK,QAAS,IAAIA,EAAEugC,KAAMvgC,EAAEugC,KAAO,EACnC,IAAK,QAAS,IAAIvgC,EAAEugC,KAAMvgC,EAAEugC,KAAO,EACnC,IAAK,QAAS,IAAIvgC,EAAEugC,KAAMvgC,EAAEugC,KAAO,CAAG,OAAOkzC,IAAkBS,eAAe90B,EAAIp/C,GAAIA,GACtF,IAAK,QAAS,IAAIA,EAAEugC,KAAMvgC,EAAEugC,KAAO,EACnC,IAAK,SACL,IAAK,OACL,IAAK,MAAO,IAAIvgC,EAAEugC,KAAMvgC,EAAEugC,KAAO,CAAG,OAAO6yC,IAAeh0B,EAAIp/C,GAC9D,IAAK,QACL,IAAK,QACL,IAAK,QACL,IAAK,QACL,IAAK,WACL,IAAK,MAAO,MAAO2yE,IAAevzB,EAAIp/C,GACtC,QAAS,KAAM,IAAIuE,OAAO,0BAA4BvE,EAAEyvC,SAAW,OAIrE,QAAS0kC,IAAkBn0E,GAC1B,GAAGA,EAAEyvC,SAAU,MACf,IAAI2kC,IACHC,IAAO,QACP7pD,IAAO,OACP8pD,IAAO,OACPC,WAAc,MACdC,QAAW,MAEZ,IAAItpD,GAAMlrB,EAAE0b,KAAK7a,MAAMb,EAAE0b,KAAKrI,YAAY,MAAMU,aAChD,IAAGmX,EAAI1a,MAAM,cAAexQ,EAAEyvC,SAAWvkB,EAAIrqB,MAAM,EACnDb,GAAEyvC,SAAW2kC,EAAIp0E,EAAEyvC,WAAazvC,EAAEyvC,SAGnC,QAASlsB,IAAc67B,EAAI5lC,EAAUhN,GACpC,GAAIxM,GAAIwM,KAAUxM,GAAEsP,KAAO,MAC3BtP,GAAE0b,KAAOlC,CACT26D,IAAkBn0E,EAClB,OAAO2zE,IAAUv0B,EAAIp/C,GAGtB,QAASy0E,IAAkBr1B,EAAI5lC,EAAUhN,GACxC,GAAIxM,GAAIwM,KAAUxM,GAAEsP,KAAO,MAC3BtP,GAAE0b,KAAOlC,CACT26D,IAAkBn0E,EAClB,OAAO0zE,IAAct0B,EAAIp/C,GAI1B,QAAS00E,IAAel7D,EAAU4lC,EAAI5yC,EAAMwyB,GAC3C,GAAIh/B,GAAIwM,KAAUxM,GAAEsP,KAAO,MAC3BtP,GAAE0b,KAAOlC,CACT26D,IAAkBn0E,EAClBA,GAAEsP,KAAO,QACT,IAAIqlE,GAAM31C,CAAI,MAAK21C,YAAeC,WAAWD,EAAM,CACnD,OAAOn5D,IAAI6R,UAAU7T,EAAUm6D,GAAUv0B,EAAIp/C,GAAI20E,GAElD,QAASE,IAAcpyC,EAAOvxB,EAAGkI,EAAG4/B,EAAMx8B,EAAQs4D,EAAK/xC,EAAO/iC,GAC7D,GAAIuR,GAAKyvB,GAAW5nB,EACpB,IAAI27D,GAAS/0E,EAAE+0E,OAAQr3D,EAAM1d,EAAE0d,MAAQwD,OAAO6O,UAAUC,eAAehrB,KAAKhF,EAAG,MAC/E,IAAIg1E,GAAU,IACd,IAAI7oD,GAAO3P,IAAW,OACtB,IAAGA,IAAW,EAAG,CAChB,GAAG0E,OAAO+zD,eAAgB,IAAM/zD,OAAO+zD,eAAe9oD,EAAK,cAAeoM,MAAMnf,EAAG87D,WAAW,QAAW,MAAMlyE,GAAKmpB,EAAIgpD,WAAa/7D,MAChI+S,GAAIgpD,WAAa/7D,EAEvB,IAAI2pB,GAASN,EAAMrpB,GAAI,IAAK,GAAIP,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CAC3D,GAAIrJ,GAAMuzB,EAAQN,EAAMrpB,GAAGP,GAAK4pB,EAAMuW,EAAKngC,GAAKtH,EAChD,IAAG/B,IAAQ7M,WAAa6M,EAAI1J,IAAMnD,UAAW,CAC5C,GAAGoyE,IAAWpyE,UAAW,QACzB,IAAGmyE,EAAIj8D,IAAM,KAAM,CAAEsT,EAAI2oD,EAAIj8D,IAAMk8D,EACnC,SAED,GAAIlvE,GAAI2J,EAAI3J,CACZ,QAAO2J,EAAI1J,GACV,IAAK,IAAK,GAAGD,GAAK,KAAM,KAAO,UAC/B,IAAK,IAAKA,EAAKA,GAAK,EAAI,SAAY,EAAI,OACxC,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAAK,MACxC,QAAS,KAAM,IAAItB,OAAM,qBAAuBiL,EAAI1J,IAErD,GAAGgvE,EAAIj8D,IAAM,KAAM,CAClB,GAAGhT,GAAK,KAAM,CACb,GAAG2J,EAAI1J,GAAK,KAAOD,IAAM,KAAMsmB,EAAI2oD,EAAIj8D,IAAM,SACxC,IAAGk8D,IAAWpyE,UAAWwpB,EAAI2oD,EAAIj8D,IAAMk8D,MACvC,IAAGr3D,GAAO7X,IAAM,KAAMsmB,EAAI2oD,EAAIj8D,IAAM,SACpC,cACC,CACNsT,EAAI2oD,EAAIj8D,IAAM6E,IAAQlO,EAAI1J,IAAM,KAAQ0J,EAAI1J,IAAM,KAAO9F,EAAEo1E,aAAe,OAAUvvE,EAAIy8B,GAAY9yB,EAAI3J,EAAE7F,GAE3G,GAAG6F,GAAK,KAAMmvE,EAAU,OAG1B,OAAS7oD,IAAKA,EAAK6oD,QAASA,GAI7B,QAASl8B,IAAcrW,EAAOj2B,GAC7B,GAAGi2B,GAAS,MAAQA,EAAM,SAAW,KAAM,QAC3C,IAAIjzB,IAAO1J,EAAE,IAAID,EAAE,GAAI2W,EAAS,EAAGwD,EAAS,EAAG80D,KAAUjvE,EAAE,EAAGuO,EAAG,EACjE,IAAIlD,IAAKrN,GAAGqN,EAAE,EAAE7M,EAAE,GAAGrB,GAAGkO,EAAE,EAAE7M,EAAE,GAC9B,IAAIrE,GAAIwM,KACR,IAAIi0B,GAAQzgC,EAAEygC,OAAS,KAAOzgC,EAAEygC,MAAQgC,EAAM,OAC9C,IAAGziC,EAAEwc,SAAW,EAAGA,EAAS,MACvB,IAAGxc,EAAEwc,SAAW,IAAKA,EAAS,MAC9B,IAAG/Y,MAAMW,QAAQpE,EAAEwc,QAASA,EAAS,MACrC,IAAGxc,EAAEwc,QAAU,KAAMA,EAAS,CACnC,cAAcikB,IACb,IAAK,SAAUvvB,EAAIgxB,GAAkBzB,EAAQ,OAC7C,IAAK,SAAUvvB,EAAIgxB,GAAkBO,EAAM,QAAUvxB,GAAErN,EAAEqN,EAAIuvB,CAAO,OACpE,QAASvvB,EAAIuvB,GAEd,GAAGjkB,EAAS,EAAGwD,EAAS,CACxB,IAAIzO,GAAKyvB,GAAW9vB,EAAErN,EAAEqN,EACxB,IAAI8nC,KACJ,IAAI7zC,KACJ,IAAIkwE,GAAO,EAAGC,EAAU,CACxB,IAAIvyC,GAAQt/B,MAAMW,QAAQq+B,EAC1B,IAAIrpB,GAAIlI,EAAErN,EAAEqN,EAAG2H,EAAI,CACnB,IAAI08D,KACJ,IAAGxyC,IAAUN,EAAMrpB,GAAIqpB,EAAMrpB,KAC7B,IAAI6lC,GAAUj/C,EAAEw1E,YAAc/yC,EAAM,YACpC,IAAIuc,GAAUh/C,EAAEw1E,YAAc/yC,EAAM,YACpC,KAAI5pB,EAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CAC/B,IAAKomC,EAAQpmC,QAAc,OAAG,QAC9BmgC,GAAKngC,GAAKkoB,GAAWloB,EACrBrJ,GAAMuzB,EAAQN,EAAMrpB,GAAGP,GAAK4pB,EAAMuW,EAAKngC,GAAKtH,EAC5C,QAAOiL,GACN,IAAK,GAAGs4D,EAAIj8D,GAAKA,EAAI3H,EAAErN,EAAEQ,CAAG,OAC5B,IAAK,GAAGywE,EAAIj8D,GAAKmgC,EAAKngC,EAAI,OAC1B,IAAK,GAAGi8D,EAAIj8D,GAAK7Y,EAAEwc,OAAO3D,EAAI3H,EAAErN,EAAEQ,EAAI,OACtC,QACC,GAAGmL,GAAO,KAAMA,GAAOhB,EAAG,UAAW1I,EAAG,IACxCsO,GAAKvO,EAAIy8B,GAAY9yB,EAAK,KAAMxP,EAChCs1E,GAAUC,EAAW1vE,IAAM,CAC3B,KAAIyvE,EAASC,EAAW1vE,GAAK,MACxB,CACJ,EAAG,CAAEuO,EAAKvO,EAAI,IAAOyvE,UAAoBC,EAAWnhE,GAAMmhE,GAAW1vE,GAAKyvE,CAC1EC,GAAWnhE,GAAM,EAElB0gE,EAAIj8D,GAAKzE,IAGZ,IAAKgF,EAAIlI,EAAErN,EAAEqN,EAAI8O,EAAQ5G,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAG,CACzC,IAAK4lC,EAAQ5lC,QAAQsnC,OAAQ,QAC7B,IAAIv0B,GAAM0oD,GAAcpyC,EAAOvxB,EAAGkI,EAAG4/B,EAAMx8B,EAAQs4D,EAAK/xC,EAAO/iC,EAC/D,IAAImsB,EAAI6oD,UAAY,QAAWx4D,IAAW,EAAIxc,EAAEy1E,YAAc,QAAUz1E,EAAEy1E,WAAYtwE,EAAIkwE,KAAUlpD,EAAIA,IAEzGhnB,EAAIhF,OAASk1E,CACb,OAAOlwE,GAGR,GAAIuwE,IAAO,IACX,SAASC,IAAalzC,EAAOvxB,EAAGkI,EAAG4/B,EAAM19B,EAAIuqC,EAAIjC,EAAI5jD,GACpD,GAAIg1E,GAAU,IACd,IAAI7oD,MAAUypD,EAAM,GAAIrkE,EAAKyvB,GAAW5nB,EACxC,KAAI,GAAIP,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CACnC,IAAKmgC,EAAKngC,GAAI,QACd,IAAIrJ,GAAMxP,EAAE+iC,OAASN,EAAMrpB,QAAQP,GAAI4pB,EAAMuW,EAAKngC,GAAKtH,EACvD,IAAG/B,GAAO,KAAMomE,EAAM,OACjB,IAAGpmE,EAAI3J,GAAK,KAAM,CACtBmvE,EAAU,KACVY,GAAM,IAAI51E,EAAEo1E,YAAc5lE,EAAI1J,GAAK,IAAM0J,EAAI3J,EAAIy8B,GAAY9yB,EAAK,KAAMxP,GACxE,KAAI,GAAIC,GAAI,EAAGgS,EAAK,EAAGhS,IAAM21E,EAAIz1E,SAAUF,EAAG,IAAIgS,EAAK2jE,EAAIx1E,WAAWH,MAAQqb,GAAMrJ,IAAO4zC,GAAM5zC,IAAO,IAAMjS,EAAE61E,YAAa,CAACD,EAAM,IAAOA,EAAIpzE,QAAQkzE,GAAM,MAAQ,GAAM,OAC3K,GAAGE,GAAO,KAAMA,EAAM,WAChB,IAAGpmE,EAAIuF,GAAK,OAASvF,EAAI2xC,EAAG,CAClC6zB,EAAU,KACVY,GAAM,IAAMpmE,EAAIuF,CAAG,IAAG6gE,EAAIl2E,QAAQ,MAAQ,EAAGk2E,EAAM,IAAMA,EAAIpzE,QAAQkzE,GAAM,MAAQ,QAC7EE,GAAM,EAEbzpD,GAAI3mB,KAAKowE,GAEV,GAAG51E,EAAEy1E,YAAc,OAAST,EAAS,MAAO,KAC5C,OAAO7oD,GAAI3rB,KAAKojD,GAGjB,QAASkwB,IAAarxC,EAAOj2B,GAC5B,GAAIrH,KACJ,IAAInF,GAAIwM,GAAQ,QAAYA,CAC5B,IAAGi2B,GAAS,MAAQA,EAAM,SAAW,KAAM,MAAO,EAClD,IAAIvxB,GAAIgxB,GAAkBO,EAAM,QAChC,IAAImhB,GAAK5jD,EAAE4jD,KAAOjhD,UAAY3C,EAAE4jD,GAAK,IAAKtoC,EAAKsoC,EAAGxjD,WAAW,EAC7D,IAAI4hD,GAAKhiD,EAAEgiD,KAAOr/C,UAAY3C,EAAEgiD,GAAK,KAAM6D,EAAK7D,EAAG5hD,WAAW,EAC9D,IAAI01E,GAAW,GAAIp/D,SAAQktC,GAAI,IAAM,MAAQA,GAAI,KACjD,IAAIz3B,GAAM,GAAI6sB,IACdh5C,GAAE+iC,MAAQt/B,MAAMW,QAAQq+B,EACxB,IAAIwc,GAAUj/C,EAAEw1E,YAAc/yC,EAAM,YACpC,IAAIuc,GAAUh/C,EAAEw1E,YAAc/yC,EAAM,YACpC,KAAI,GAAI5pB,GAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,KAAOomC,EAAQpmC,QAAc,OAAGmgC,EAAKngC,GAAKkoB,GAAWloB,EACzF,IAAIrK,GAAI,CACR,KAAI,GAAI4K,GAAIlI,EAAErN,EAAEqN,EAAGkI,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAG,CACnC,IAAK4lC,EAAQ5lC,QAAQsnC,OAAQ,QAC7Bv0B,GAAMwpD,GAAalzC,EAAOvxB,EAAGkI,EAAG4/B,EAAM19B,EAAIuqC,EAAIjC,EAAI5jD,EAClD,IAAGmsB,GAAO,KAAM,CAAE,SAClB,GAAGnsB,EAAE+1E,MAAO5pD,EAAMA,EAAI3pB,QAAQszE,EAAS,GACvC,IAAG3pD,GAAQnsB,EAAEy1E,YAAc,MAAQtwE,EAAIK,MAAMgJ,IAAMwzC,EAAK,IAAM71B,SAExDnsB,GAAE+iC,KACT,OAAO59B,GAAI3E,KAAK,IAGjB,QAASqzE,IAAapxC,EAAOj2B,GAC5B,IAAIA,EAAMA,IAAWA,GAAKo3C,GAAK,IAAMp3C,GAAKw1C,GAAK,IAC/C,IAAIn+C,GAAIiwE,GAAarxC,EAAOj2B,EAC5B,UAAUvO,IAAY,aAAeuO,EAAK8C,MAAQ,SAAU,MAAOzL,EACnE,IAAI7D,GAAI/B,EAASoD,MAAMysB,OAAO,KAAMjqB,EAAG,MACvC,OAAOvD,QAAOC,aAAa,KAAOD,OAAOC,aAAa,KAAOP,EAG9D,QAASg2E,IAAkBvzC,GAC1B,GAAIz1B,GAAI,GAAIhM,EAAGwO,EAAI,EACnB,IAAGizB,GAAS,MAAQA,EAAM,SAAW,KAAM,QAC3C,IAAIvxB,GAAIgxB,GAAkBO,EAAM,SAAUlxB,EAAK,GAAIynC,KAAWngC,CAC9D,IAAIo9D,KACJ,IAAIlzC,GAAQt/B,MAAMW,QAAQq+B,EAC1B,KAAI5pB,EAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAGmgC,EAAKngC,GAAKkoB,GAAWloB,EACrD,KAAI,GAAIO,GAAIlI,EAAErN,EAAEqN,EAAGkI,GAAKlI,EAAElO,EAAEkO,IAAKkI,EAAG,CACnC7H,EAAKyvB,GAAW5nB,EAChB,KAAIP,EAAI3H,EAAErN,EAAEQ,EAAGwU,GAAK3H,EAAElO,EAAEqB,IAAKwU,EAAG,CAC/B7L,EAAIgsC,EAAKngC,GAAKtH,CACdvQ,GAAI+hC,GAASN,EAAMrpB,QAAQP,GAAK4pB,EAAMz1B,EACtCwC,GAAM,EACN,IAAGxO,IAAM2B,UAAW,aACf,IAAG3B,EAAEmgD,GAAK,KAAM,CACpBn0C,EAAIhM,EAAEmgD,CACN,KAAIngD,EAAE+T,EAAG,QACTvF,GAAMxO,EAAE+T,CACR,IAAG/H,EAAEtN,QAAQ,OAAS,EAAGsN,EAAIA,EAAI,IAAMA,EAExC,GAAGhM,EAAE+T,GAAK,KAAMvF,EAAMxO,EAAE+T,MACnB,IAAG/T,EAAE8E,GAAK,IAAK,aACf,IAAG9E,EAAE8E,GAAK,KAAO9E,EAAE6E,GAAK,KAAM2J,EAAM,GAAKxO,EAAE6E,MAC3C,IAAG7E,EAAE8E,GAAK,IAAK0J,EAAMxO,EAAE6E,EAAI,OAAS,YACpC,IAAG7E,EAAEwN,IAAM7L,UAAW6M,EAAM,IAAMxO,EAAEwN,MACpC,IAAGxN,EAAE6E,IAAMlD,UAAW,aACtB,IAAG3B,EAAE8E,GAAK,IAAK0J,EAAM,IAAMxO,EAAE6E,MAC7B2J,GAAM,GAAGxO,EAAE6E,CAChBowE,GAAKA,EAAK91E,QAAU6M,EAAI,IAAMwC,GAGhC,MAAOymE,GAGR,QAASC,IAAepzC,EAAKqzC,EAAI3pE,GAChC,GAAIxM,GAAIwM,KACR,IAAIu2B,GAAQD,EAAMr/B,MAAMW,QAAQ0+B,GAAO9iC,EAAE+iC,KACzC,IAAGrhC,GAAS,MAAQqhC,GAAS,KAAMA,EAAQrhC,CAC3C,IAAIse,KAAWhgB,EAAEo2E,UACjB,IAAIpzC,GAAKF,IAAQC,QACjB,IAAIE,GAAK,EAAGC,EAAK,CACjB,IAAGF,GAAMhjC,EAAEmjC,QAAU,KAAM,CAC1B,SAAUnjC,GAAEmjC,QAAU,SAAUF,EAAKjjC,EAAEmjC,WAClC,CACJ,GAAIC,SAAiBpjC,GAAEmjC,QAAU,SAAW1B,GAAYzhC,EAAEmjC,QAAUnjC,EAAEmjC,MACtEF,GAAKG,EAAQlyB,CAAGgyB,GAAKE,EAAQ/+B,GAG/B,GAAIo8B,IAAU58B,GAAIQ,EAAE,EAAG6M,EAAE,GAAIlO,GAAIqB,EAAE6+B,EAAIhyB,EAAE+xB,EAAKkzC,EAAGh2E,OAAS,EAAI6f,GAC9D,IAAGgjB,EAAG,QAAS,CACd,GAAIK,GAASnB,GAAkBc,EAAG,QAClCvC,GAAMz9B,EAAEqB,EAAI8B,KAAK2M,IAAI2tB,EAAMz9B,EAAEqB,EAAGg/B,EAAOrgC,EAAEqB,EACzCo8B,GAAMz9B,EAAEkO,EAAI/K,KAAK2M,IAAI2tB,EAAMz9B,EAAEkO,EAAGmyB,EAAOrgC,EAAEkO,EACzC,IAAG+xB,IAAO,EAAG,CAAEA,EAAKI,EAAOrgC,EAAEkO,EAAI,CAAGuvB,GAAMz9B,EAAEkO,EAAI+xB,EAAKkzC,EAAGh2E,OAAS,EAAI6f,OAC/D,CACN,GAAGijB,IAAO,EAAG,CAAEA,EAAK,CAAGxC,GAAMz9B,EAAEkO,EAAIilE,EAAGh2E,OAAS,EAAI6f,GAEpD,GAAI80D,GAAM90E,EAAEwc,WAAc3D,EAAI,CAC9B,IAAIw9D,KACJF,GAAGt/D,QAAQ,SAAUy/D,EAAIl9D,GACxB,GAAG2pB,IAAUC,EAAGC,EAAK7pB,EAAI4G,GAASgjB,EAAGC,EAAK7pB,EAAI4G,KAC9C,IAAG+iB,EAAOszC,EAAMrzC,EAAGC,EAAK7pB,EAAI4G,EAC5B4P,IAAK0mD,GAAIz/D,QAAQ,SAASwI,GACzB,IAAIxG,EAAEi8D,EAAIp1E,QAAQ2f,MAAQ,EAAGy1D,EAAIj8D,EAAEi8D,EAAI30E,QAAUkf,CACjD,IAAIxZ,GAAIywE,EAAGj3D,EACX,IAAIvZ,GAAI,GACR,IAAI6wB,GAAI,EACR,IAAIw6B,GAAMpuB,EAAQ,GAAKpC,IAAat8B,EAAE6+B,EAAKrqB,EAAE3H,EAAE+xB,EAAK7pB,EAAI4G,GACxD,IAAIogB,GAAO2C,EAAQszC,EAAInzC,EAAKrqB,GAAKmqB,EAAGmuB,EACpC,IAAGtrD,SAAYA,KAAM,YAAcA,YAAa0H,OAAM,CACrDy1B,EAAGmuB,GAAOtrD,MACJ,CACN,SAAUA,IAAK,SAAUC,EAAI,QACxB,UAAUD,IAAK,UAAWC,EAAI,QAC9B,UAAUD,IAAK,SAAUC,EAAI,QAC7B,IAAGD,YAAa0H,MAAM,CAC1BzH,EAAI,GACJ,KAAI9F,EAAE0jC,UAAW,CAAE59B,EAAI,GAAKD,GAAI4qB,GAAQ5qB,GACxC8wB,EAAKyJ,GAAQ,MAAQA,EAAKzJ,GAAKljB,GAAY2sB,EAAKzJ,GAAMyJ,EAAKzJ,EAAK32B,EAAEoV,QAAUvO,EAAU,QAElF,IAAGhB,IAAM,MAAQ7F,EAAEwjC,UAAW,CAAE19B,EAAI,GAAKD,GAAI,EAClD,IAAIu6B,EAAM,CACT,IAAI2C,EAAOC,EAAGmuB,GAAO/wB,GAASt6B,EAAEA,EAAGD,EAAEA,OAChCwwE,GAAInzC,EAAKrqB,GAAKunB,GAASt6B,EAAEA,EAAGD,EAAEA,OAC7B,CACNu6B,EAAKt6B,EAAIA,CAAGs6B,GAAKv6B,EAAIA,QACdu6B,GAAK5xB,QAAU4xB,GAAKhnB,CAC3B,IAAGud,EAAGyJ,EAAKzJ,EAAIA,EAEhB,GAAGA,EAAGyJ,EAAKzJ,EAAIA,MAIlB8J,GAAMz9B,EAAEqB,EAAI8B,KAAK2M,IAAI2tB,EAAMz9B,EAAEqB,EAAG6+B,EAAK4xC,EAAI30E,OAAS,EAClD,IAAImjC,GAAMtC,GAAWiC,EACrB,IAAGF,IAAUC,EAAGC,GAAKD,EAAGC,KACxB,IAAGjjB,EAAQ,IAAInH,EAAI,EAAGA,EAAIi8D,EAAI30E,SAAU0Y,EAAG,CAC1C,GAAGkqB,EAAOC,EAAGC,GAAIpqB,EAAIqqB,IAAOp9B,EAAE,IAAKD,EAAEivE,EAAIj8D,QACpCmqB,GAAGjC,GAAWloB,EAAIqqB,GAAMI,IAAQx9B,EAAE,IAAKD,EAAEivE,EAAIj8D,IAEnDmqB,EAAG,QAAUrB,GAAalB,EAC1B,OAAOuC,GAER,QAASuzC,IAAcJ,EAAI3pE,GAAQ,MAAO0pE,IAAe,KAAMC,EAAI3pE,GAGnE,QAASgqE,IAAiBxzC,EAAI5pB,EAAGP,GAEhC,SAAUO,IAAK,SAAU,CAExB,GAAG3V,MAAMW,QAAQ4+B,GAAK,CACrB,GAAIyzC,GAAKh1C,GAAYroB,EACrB,KAAI4pB,EAAGyzC,EAAGvlE,GAAI8xB,EAAGyzC,EAAGvlE,KACpB,OAAO8xB,GAAGyzC,EAAGvlE,GAAGulE,EAAGpyE,KAAO2+B,EAAGyzC,EAAGvlE,GAAGulE,EAAGpyE,IAAMyB,EAAE,MAE/C,MAAOk9B,GAAG5pB,KAAO4pB,EAAG5pB,IAAMtT,EAAE,MAG7B,SAAUsT,IAAK,SAAU,MAAOo9D,IAAiBxzC,EAAIrC,GAAYvnB,GAEjE,OAAOo9D,IAAiBxzC,EAAIrC,IAAazvB,EAAEkI,EAAE/U,EAAEwU,GAAG,KAInD,QAAS69D,IAAat3B,EAAIu3B,GACzB,SAAUA,IAAM,SAAU,CACzB,GAAGA,GAAM,GAAKv3B,EAAGzc,WAAWxiC,OAASw2E,EAAI,MAAOA,EAChD,MAAM,IAAIpyE,OAAM,uBAAyBoyE,OACnC,UAAUA,IAAM,SAAU,CAChC,GAAIrmE,GAAM8uC,EAAGzc,WAAWjjC,QAAQi3E,EAChC,IAAGrmE,GAAO,EAAG,MAAOA,EACpB,MAAM,IAAI/L,OAAM,2BAA6BoyE,EAAK,SAC5C,MAAM,IAAIpyE,OAAM,sBAAwBoyE,EAAK,KAIrD,QAASjT,MACR,OAAS/gC,cAAgBC,WAI1B,QAAS+gC,IAAkBvkB,EAAIpc,EAAI/lB,EAAM25D,GACxC,GAAI32E,GAAI,CACR,KAAIgd,EAAM,KAAMhd,GAAK,QAAUA,EAAGgd,EAAOta,UAAW,GAAGy8C,EAAGzc,WAAWjjC,QAAQud,EAAO,QAAUhd,KAAO,EAAG,KACxG,KAAIgd,GAAQmiC,EAAGzc,WAAWxiC,QAAU,MAAQ,KAAM,IAAIoE,OAAM,sBAC5D,IAAGqyE,GAAQx3B,EAAGzc,WAAWjjC,QAAQud,IAAS,EAAG,CAC5C,GAAIhQ,GAAIgQ,EAAKzM,MAAM,eACnBvQ,GAAIgN,IAAMA,EAAE,IAAM,CAClB,IAAIsT,GAAOtT,GAAKA,EAAE,IAAMgQ,CACxB,OAAMhd,EAAGA,GAAK,QAAUA,EAAG,GAAGm/C,EAAGzc,WAAWjjC,QAAQud,EAAOsD,EAAOtgB,KAAO,EAAG,MAE7EogE,GAAcpjD,EACd,IAAGmiC,EAAGzc,WAAWjjC,QAAQud,IAAS,EAAG,KAAM,IAAI1Y,OAAM,wBAA0B0Y,EAAO,oBAEtFmiC,GAAGzc,WAAWn9B,KAAKyX,EACnBmiC,GAAGxc,OAAO3lB,GAAQ+lB,CAClB,OAAO/lB,GAIR,QAAS45D,IAA0Bz3B,EAAIu3B,EAAIG,GAC1C,IAAI13B,EAAGC,SAAUD,EAAGC,WACpB,KAAID,EAAGC,SAASzc,OAAQwc,EAAGC,SAASzc,SAEpC,IAAItyB,GAAMomE,GAAat3B,EAAIu3B,EAE3B,KAAIv3B,EAAGC,SAASzc,OAAOtyB,GAAM8uC,EAAGC,SAASzc,OAAOtyB,KAEhD,QAAOwmE,GACN,IAAK,IAAG,IAAK,IAAG,IAAK,GAAG,MACxB,QAAS,KAAM,IAAIvyE,OAAM,gCAAkCuyE,IAG5D13B,EAAGC,SAASzc,OAAOtyB,GAAK6wD,OAAS2V,EAIlC,QAASC,IAAuB32C,EAAM7wB,GACrC6wB,EAAKzJ,EAAIpnB,CACT,OAAO6wB,GAIR,QAAS42C,IAAmB52C,EAAMtK,EAAQokC,GACzC,IAAIpkC,EAAQ,OACJsK,GAAKprB,MACN,CACNorB,EAAKprB,GAAO28B,OAAQ7b,EACpB,IAAGokC,EAAS95B,EAAKprB,EAAEmlD,QAAUD,EAE9B,MAAO95B,GAER,QAAS62C,IAAuB72C,EAAMK,EAAOy5B,GAAW,MAAO8c,IAAmB52C,EAAM,IAAMK,EAAOy5B,GAGrG,QAASgd,IAAiB92C,EAAM/U,EAAM+lC,GACrC,IAAIhxB,EAAK/7B,EAAG+7B,EAAK/7B,IACjB+7B,GAAK/7B,EAAEmB,MAAMM,EAAEulB,EAAMxF,EAAEurC,GAAQ,YAIhC,QAAS+lB,IAAwBn0C,EAAIvC,EAAO2f,EAASg3B,GACpD,GAAIhd,SAAa35B,IAAS,SAAWA,EAAQyB,GAAkBzB,EAC/D,IAAI42C,SAAgB52C,IAAS,SAAWA,EAAQkB,GAAalB,EAC7D,KAAI,GAAIrnB,GAAIghD,EAAIv2D,EAAEqN,EAAGkI,GAAKghD,EAAIp3D,EAAEkO,IAAKkI,EAAG,IAAI,GAAIP,GAAIuhD,EAAIv2D,EAAEQ,EAAGwU,GAAKuhD,EAAIp3D,EAAEqB,IAAKwU,EAAG,CAC/E,GAAIunB,GAAOo2C,GAAiBxzC,EAAI5pB,EAAGP,EACnCunB,GAAKt6B,EAAI,GACTs6B,GAAK+gB,EAAIk2B,QACFj3C,GAAKv6B,CACZ,IAAGuT,GAAKghD,EAAIv2D,EAAEqN,GAAK2H,GAAKuhD,EAAIv2D,EAAEQ,EAAG,CAChC+7B,EAAKrrB,EAAIqrC,CACT,IAAGg3B,EAASh3C,EAAK10B,EAAI,MAGvB,GAAI4rE,GAAM51C,GAAasB,EAAG,QAC1B,IAAGs0C,EAAIzzE,EAAEqN,EAAIkpD,EAAIv2D,EAAEqN,EAAGomE,EAAIzzE,EAAEqN,EAAIkpD,EAAIv2D,EAAEqN,CACtC,IAAGomE,EAAIzzE,EAAEQ,EAAI+1D,EAAIv2D,EAAEQ,EAAGizE,EAAIzzE,EAAEQ,EAAI+1D,EAAIv2D,EAAEQ,CACtC,IAAGizE,EAAIt0E,EAAEkO,EAAIkpD,EAAIp3D,EAAEkO,EAAGomE,EAAIt0E,EAAEkO,EAAIkpD,EAAIp3D,EAAEkO,CACtC,IAAGomE,EAAIt0E,EAAEqB,EAAI+1D,EAAIp3D,EAAEqB,EAAGizE,EAAIt0E,EAAEqB,EAAI+1D,EAAIp3D,EAAEqB,CACtC2+B,GAAG,QAAUrB,GAAa21C,EAC1B,OAAOt0C,GAGR,GAAI3hC,KACH0/B,WAAYA,GACZC,WAAYA,GACZL,YAAaA,GACbgB,aAAcA,GACdP,WAAYA,GACZH,WAAYA,GACZO,WAAYA,GACZC,YAAaA,GACbC,aAAcA,GACdY,YAAaA,GACbO,cAAeA,GACfqzC,eAAgBA,GAChBpS,cAAeA,GACflgC,aAAcA,GACd2yC,cAAeA,GACfgB,eAAgB5S,GAChBC,cAAeA,GACfkP,aAAcA,GACdD,aAAcA,GACd/6B,cAAeA,GACf+qB,cAAeA,GACfmS,kBAAmBA,GACnBwB,0BAA2B1+B,GAC3B2+B,eAAgBjB,GAChB9S,SAAUA,GACVC,kBAAmBA,GACnBkT,0BAA2BA,GAC3BE,uBAAwBA,GACxBC,mBAAoBA,GACpBC,uBAAwBA,GACxBC,iBAAkBA,GAClBC,wBAAyBA,GACzB90D,QACCq1D,cAAe,EACfC,aAAc,EACdC,kBAAmB,GAIrB,UAAUhG,gBAAiB,YAAah0E,EAAKg0E,aAAeA,YAC5Dh0E,GAAKge,UAAYA,EACjBhe,GAAKwiB,KAAOiuD,EACZzwE,GAAKi6E,SAAW13D,EAChBviB,GAAKuiB,aAAeA,EACpBviB,GAAK4lB,MAAQmwD,EACb/1E,GAAKyvB,UAAY9J,EACjB3lB,GAAK2lB,cAAgBA,EACrB3lB,GAAK82E,eAAiBA,EACtB92E,GAAKyD,MAAQA,EACbzD,GAAKk6E,UAAYpE,EACjB91E,GAAKm6E,cAAgBtD,EACrB72E,GAAK8X,IAAMA,EACX,UAAUsiE,YAAa,YAAap6E,EAAKq6E,OAASD,QAClD,UAAUh/D,MAAQ,YAAapb,EAAKob,IAAMA,EAC1C,UAAUk/D,WAAY,YAAa,CACjC,GAAIC,IAASx1E,SACb,KAAIw1E,QAAYC,SAAUC,aAAaF,GAAOC,SAC/C,KAAM58D,GAAM7Y,UAAa,MAAMK,OAIhC,SAAUkW,WAAY,YAAarb,cAAcqb,aAC5C,UAAUo/D,UAAW,aAAeA,OAAOp/D,QAASrb,cAAcy6E,OAAOp/D,aACzE,UAAUq/D,UAAW,YAAcA,OAAOC,IAAKD,OAAO,OAAQ,WAAa,IAAI36E,KAAKE,QAASD,cAAcD,KAAO,OAAOA,YACzHC,eAAcD,KAEnB,UAAU66E,UAAW,cAAgBA,OAAO76E,KAAM,IAAM66E,OAAO76E,KAAOA,KAAQ,MAAMoF","file":"dist/xlsx.mini.min.js"} \ No newline at end of file +{"version":3,"sources":["dist/xlsx.mini.js"],"names":["XLSX","make_xlsx_lib","version","current_codepage","current_ansi","$cptable","VALID_ANSI","CS2CP","0","1","2","77","128","129","130","134","136","161","162","163","177","178","186","204","222","238","255","69","set_ansi","cp","indexOf","reset_ansi","set_cp","reset_cp","char_codes","data","o","i","len","length","charCodeAt","utf16leread","String","fromCharCode","join","utf16beread","debom","c1","c2","slice","_getchar","_gc1","x","_getansi","_ga1","set_cptable","cptable","utils","decode","_gc2","_ga2","cpdoit","DENSE","DIF_XL","Base64_map","Base64_encode","input","c3","e1","e2","e3","e4","isNaN","charAt","Base64_encode_pass","Base64_decode","replace","has_buf","Buffer","undefined","node","Buffer_from","nbfs","from","e","buf","enc","bind","buf_utf16le","toString","new_raw_buf","alloc","Uint8Array","Array","new_unsafe_buf","allocUnsafe","s2a","s","split","map","s2ab","ArrayBuffer","view","a2s","isArray","c","a2u","Error","ab2a","bconcat","bufs","concat","isBuffer","maxlen","set","apply","call","utf8decode","content","out","widx","L","ridx","d","push","chr0","chr1","_strrev","pad0","v","t","fill","pad_","rpad_","pad0r1","Math","round","pad0r2","p2_32","pow","pad0r","SSF_isgeneral","days","months","SSF_init_table","table_fmt","3","4","9","10","11","12","13","14","15","16","17","18","19","20","21","22","37","38","39","40","45","46","47","48","49","56","SSF_default_map","5","6","7","8","23","24","25","26","27","28","29","30","31","50","51","52","53","54","55","57","58","59","60","61","62","67","68","70","71","72","73","74","75","76","78","79","80","81","82","SSF_default_str","63","64","65","66","41","42","43","44","SSF_frac","D","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","floor","q","SSF_parse_date_code","opts","b2","date","time","dow","dout","T","u","y","m","H","M","S","abs","date1904","Date","setDate","getDate","getFullYear","getMonth","getDay","SSF_fix_hijri","SSFbasedate","SSFdnthresh","getTime","SSFbase1904","datenum_local","epoch","getTimezoneOffset","SSF_strip_decimal","SSF_normalize_exp","SSF_small_exp","w","toFixed","toPrecision","toExponential","SSF_large_exp","SSF_general_num","V","log","LOG10E","substr","toUpperCase","SSF_general","SSF_format","SSF_write_date","type","fmt","val","ss0","ss","tt","outl","outstr","commaify","j","pct1","write_num_pct","sfmt","mul","write_num","write_num_cm","idx","write_num_exp","match","period","ee","fakee","$$","$1","$2","$3","frac1","write_num_f1","r","aval","sign","den","parseInt","rr","base","myn","myd","write_num_f2","dec1","closeparen","phone","hashq","str","cc","rnd","dd","dec","_frac","carry","flr","write_num_flt","ffmt","ri","ff","oa","min","max","lres","rres","write_num_cm2","write_num_pct2","write_num_exp2","write_num_int","lastIndexOf","SSF_split_fmt","in_str","SSF_abstime","fmt_is_date","eval_fmt","flen","lst","dt","hr","toLowerCase","bt","ssm","nstr","jj","vv","myv","ostr","decpt","lasti","retval","cfregex2","chkcond","thresh","parseFloat","choose_fmt","f","l","lat","m1","m2","dateNF","table","SSF_load","SSF_load_table","tbl","make_ssf","SSF","format","load","_table","load_table","parse_date_code","is_date","get_table","SSFImplicit","32","33","34","35","36","dateNFregex","dateNF_regex","RegExp","dateNF_fix","Y","forEach","n","datestr","timestr","bad_formats","d.m","SSF__load","CRC32","signed_crc_table","Int32Array","T0","slice_by_16_tables","subarray","TT","T1","T2","T3","T4","T5","T6","T7","T8","T9","Ta","Tb","Tc","Td","Te","Tf","crc32_bstr","bstr","seed","C","crc32_buf","crc32_str","CFB","_CFB","exports","namecmp","R","Z","dirname","p","filename","write_dos_date","hms","getHours","getMinutes","getSeconds","write_shift","ymd","parse_dos_date","read_shift","setMilliseconds","setFullYear","setMonth","setHours","setMinutes","setSeconds","parse_extra_field","blob","prep_blob","flags","sz","tgt","mtime","atime","ctime","mt","sz1","sz2","usz","csz","fs","get_fs","_fs","parse","file","options","parse_zip","parse_mad","mver","ssz","nmfs","difat_sec_cnt","dir_start","minifat_start","difat_start","fat_addrs","mv","check_get_mver","header","check_shifts","dir_cnt","chk","sectors","sectorify","sleuth_fat","sector_list","make_sector_list","name","ENDOFCHAIN","files","Paths","FileIndex","FullPaths","read_directory","build_full_paths","shift","raw","HEADER_SIGNATURE","nsectors","ceil","FI","FP","pl","dad","get_mfat_entry","entry","payload","mini","start","size","MSSZ","__readInt32LE","new_buf","cnt","sector","get_sector_list","chkd","buf_chain","modulus","addr","nodes","__toBuffer","sl","k","seen","minifat_store","namelen","__utf16le","color","clsid","state","ct","read_date","storage","offset","__readUInt32LE","read_file","readFileSync","read","init_cfb","cfb","root","CLSID","seed_cfb","nm","find","rebuild_cfb","gc","_file","pop","now","fullPaths","Object","create","HEADER_CLSID","sort","elt","_write","_opts","fileType","write_mad","write_zip","mini_size","fat_size","mini_cnt","mfat_cnt","fat_base","fat_cnt","difat_cnt","HEADER_SIG","chainit","consts","DIFSECT","FATSECT","_nm","console","error","copy","path","UCFullPaths","UCPaths","UCPath","MAXREGSECT","FREESECT","HEADER_MINOR_VERSION","MAXREGSID","NOSTREAM","EntryTypes","write_file","writeFileSync","write","_zlib","use_zlib","zlib","InflateRaw","InflRaw","_processChunk","_finishFlushFlag","bytesRead","message","_inflateRawSync","_inflate","_deflateRawSync","deflateRawSync","_deflate","CLEN_ORDER","LEN_LN","DST_LN","bit_swap_8","use_typed_arrays","bitswap8","bit_swap_n","b","rev","read_bits_2","bl","h","read_bits_3","read_bits_4","read_bits_5","read_bits_7","read_bits_n","write_bits_3","write_bits_1","write_bits_8","write_bits_16","realloc","a","zero_fill_array","build_tree","clens","cmap","MAX","ccode","bl_count","Uint16Array","ctree","cleni","fix_lmap","fix_dmap","dlens","_deflateRaw","_deflateRawIIFE","DST_LN_RE","LEN_LN_RE","write_stored","boff","write_huff_fixed","addrs","hash","mlen","len_eb","dst_eb","off","dyn_lmap","dyn_dmap","dyn_cmap","dyn_len_1","dyn_len_2","dyn","_HLIT","_HDIST","_HCLEN","next_code","hcodes","h1","h2","inflate","outbuf","woff","OL","max_len_1","max_len_2","bits","code","dst","warn_or_throw","wrn","msg","fcnt","start_cd","efsz","fcsz","EF","parse_local_file","meth","crc32","_csz","_usz","ef","cfb_add","unsafe","cdirs","method","compression","desc","fp","fi","crcs","sz_cd","namebuf","ContentTypeMap","htm","xml","gif","jpg","png","mso","thmx","sh33tj5","get_content_type","ctype","ext","write_base64_76","write_quoted_printable","text","encoded","si","end","tmp","parse_quoted_printable","di","line","oi","parse_mime","fname","cte","fdata","trim","row","test","mboundary","boundary","start_di","ca","cstr","dispcnt","csl","qp","cfb_new","fpath","cfb_gc","cfb_del","splice","cfb_mov","old_name","new_name","writeFile","ReadShift","CheckField","_inflateRaw","set_fs","blobify","write_dl","Deno","TextEncoder","encode","utf8write","IE_SaveFile","Blob","navigator","msSaveBlob","saveAs","URL","document","createElement","createObjectURL","url","chrome","downloads","download","revokeObjectURL","setTimeout","href","body","appendChild","click","removeChild","$","File","Folder","open","encoding","close","read_binary","infile","keys","ks","o2","prototype","hasOwnProperty","evert_key","obj","key","K","evert","evert_num","evert_arr","basedate","datenum","dnthresh","refdate","refoffset","numdate","setTime","parse_isodur","sec","good_pd_date_1","good_pd_date","good_pd","parseDate","fixdate","cc2str","arr","debomit","TextDecoder","€","‚","ƒ","„","…","†","‡","ˆ","‰","Š","‹","Œ","Ž","‘","’","“","”","•","–","—","˜","™","š","›","œ","ž","Ÿ","dup","JSON","stringify","fuzzynum","Number","isFinite","NaN","wt","FDRE1","fuzzytime1","lower_months","fuzzydate","lower","lnos","getYear","split_regex","safe_split_regex","re","def","getdatastr","asNodeBuffer","asBinary","_data","getContent","getdatabin","getdata","safegetzipfile","zip","g","getzipfile","getzipdata","safe","getzipstr","getzipbin","zipentries","zip_add_file","res","zip_new","zip_read","resolve_path","result","target","step","XML_HEADER","attregexg","tagregex1","tagregex2","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","skip_LC","z","eq","quot","strip_ns","encodings",""","'",">","<","&","rencoding","unescapexml","encregex","coderegex","raw_unescapexml","xlsx","decregex","charegex","escapexml","escapexmltag","htmlcharegex","escapehtml","escapexlml","xlml_fixstr","entregex","entrepl","xlml_unfixstr","parsexmlbool","value","utf8reada","orig","utf8readb","ww","utf8readc","utf8corpus","utf8read","matchtag","mtcache","htmldecode","entities","vtregex","vt_cache","vt_regex","vtvregex","vtmregex","parseVector","matches","baseType","WTF","wtregex","writetag","wxt_helper","writextag","write_w3cdtf","toISOString","write_vt","xlml_normalize","xlmlregex","XMLNS","CORE_PROPS","CUST_PROPS","EXT_PROPS","CT","RELS","TCMNT","dc","dcterms","dcmitype","mx","sjs","vt","xsi","xsd","XMLNS_main","XLMLNS","html","read_double_le","Infinity","write_double_le","bs","av","LN2","___toBuffer","___utf16le","__readUInt16LE","___hexlify","__hexlify","___utf8","__readUInt8","__utf8","utf8_b","___lpstr","__lpstr","___cpstr","__cpstr","___lpwstr","__lpwstr","___lpp4","lpp4_","__lpp4","___8lpp4","__8lpp4","___double","__double","is_buf","is_buf_a","lpstr_b","readUInt32LE","cpstr_b","lpwstr_b","lpp4_b","lpp4_8b","double_","readDoubleLE","is_buf_b","__readInt16LE","__readInt32BE","oI","oR","oo","loc","this","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cpp","hexstr","fld","pos","parsenoop","recordhopper","cb","tmpbyte","cntbyte","RT","XLSBRecordEnum","buf_array","blksz","newblk","ba_newblk","curbuf","endbuf","ba_endbuf","next","ba_next","ba_end","ba_push","_bufs","write_record","ba","shift_cell_xls","cell","cRel","rRel","biff","shift_range_xls","range","encode_cell_xls","encode_cell","fix_col","fix_row","encode_range_xls","encode_col","encode_row","decode_row","rowstr","unfix_row","decode_col","colstr","unfix_col","col","split_cell","decode_cell","decode_range","encode_range","cs","ce","fix_range","a1","formula_quote_sheet_name","sname","safe_decode_range","safe_format_cell","XF","numFmtId","format_cell","BErr","sheet_to_workbook","sheet","sheets","SheetNames","Sheets","sheet_add_aoa","_ws","dense","ws","_R","_C","origin","_origin","_range","__R","__Rstr","__C","nullError","sheetStubs","cellDates","cell_ref","aoa_to_sheet","VT_I2","VT_I4","VT_BOOL","VT_VARIANT","VT_UI4","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR_VARIANT","VT_VECTOR_LPSTR","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","2147483648","2147483651","1919054434","SummaryPIDSI","CountryEnum","84","86","90","105","213","216","218","351","354","358","420","886","961","962","963","964","965","966","971","972","974","981","65535","XLSFillPattern","rgbify","_XLSIcv","XLSIcv","RBErr","#NULL!","#DIV/0!","#VALUE!","#REF!","#NAME?","#NUM!","#N/A","#GETTING_DATA","#WTF?","XLSLblBuiltIn","ct2type","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml","application/vnd.ms-excel.sheet.macroEnabled.main+xml","application/vnd.ms-excel.sheet.binary.macroEnabled.main","application/vnd.ms-excel.addin.macroEnabled.main+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml","application/vnd.ms-excel.worksheet","application/vnd.ms-excel.binIndexWs","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml","application/vnd.ms-excel.chartsheet","application/vnd.ms-excel.macrosheet+xml","application/vnd.ms-excel.macrosheet","application/vnd.ms-excel.intlmacrosheet","application/vnd.ms-excel.binIndexMs","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml","application/vnd.ms-excel.dialogsheet","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml","application/vnd.ms-excel.sharedStrings","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml","application/vnd.ms-excel.styles","application/vnd.openxmlformats-package.core-properties+xml","application/vnd.openxmlformats-officedocument.custom-properties+xml","application/vnd.openxmlformats-officedocument.extended-properties+xml","application/vnd.openxmlformats-officedocument.customXmlProperties+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml","application/vnd.ms-excel.comments","application/vnd.ms-excel.threadedcomments+xml","application/vnd.ms-excel.person+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml","application/vnd.ms-excel.sheetMetadata","application/vnd.ms-excel.pivotTable","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml","application/vnd.openxmlformats-officedocument.drawingml.chart+xml","application/vnd.ms-office.chartcolorstyle+xml","application/vnd.ms-office.chartstyle+xml","application/vnd.ms-office.chartex+xml","application/vnd.ms-excel.calcChain","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings","application/vnd.ms-office.activeX","application/vnd.ms-office.activeX+xml","application/vnd.ms-excel.attachedToolbars","application/vnd.ms-excel.connections","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml","application/vnd.ms-excel.externalLink","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml","application/vnd.ms-excel.pivotCacheDefinition","application/vnd.ms-excel.pivotCacheRecords","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml","application/vnd.ms-excel.queryTable","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml","application/vnd.ms-excel.userNames","application/vnd.ms-excel.revisionHeaders","application/vnd.ms-excel.revisionLog","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml","application/vnd.ms-excel.tableSingleCells","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml","application/vnd.ms-excel.slicer","application/vnd.ms-excel.slicerCache","application/vnd.ms-excel.slicer+xml","application/vnd.ms-excel.slicerCache+xml","application/vnd.ms-excel.wsSortMap","application/vnd.ms-excel.table","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml","application/vnd.openxmlformats-officedocument.theme+xml","application/vnd.openxmlformats-officedocument.themeOverride+xml","application/vnd.ms-excel.Timeline+xml","application/vnd.ms-excel.TimelineCache+xml","application/vnd.ms-office.vbaProject","application/vnd.ms-office.vbaProjectSignature","application/vnd.ms-office.volatileDependencies","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml","application/vnd.ms-excel.controlproperties+xml","application/vnd.openxmlformats-officedocument.model+data","application/vnd.ms-excel.Survey+xml","application/vnd.openxmlformats-officedocument.drawing+xml","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml","application/vnd.openxmlformats-officedocument.vmlDrawing","application/vnd.openxmlformats-package.relationships+xml","application/vnd.openxmlformats-officedocument.oleObject","image/png","CT_LIST","workbooks","xlsm","xlsb","xlam","xltx","strs","comments","charts","dialogs","macros","metadata","styles","new_ct","rels","threadedcomments","links","coreprops","extprops","custprops","themes","calcchains","vba","drawings","people","TODO","xmlns","parse_ct","ctext","Extension","ContentType","PartName","calcchain","sst","style","defaults","write_ct","type2ct","xmlns:xsd","xmlns:xsi","f1","bookType","f2","f3","WB","SHEET","HLINK","VML","XPATH","XMISS","XLINK","CXML","CXMLP","CMNT","SST","STY","THEME","CHART","CHARTEX","CS","WS","DS","MS","IMG","DRAW","XLMETA","PEOPLE","CONN","VBA","get_rels_path","parse_rels","currentFilePath","!id","rel","Type","Target","Id","TargetMode","canonictarget","write_rels","rid","add_rels","rId","relobj","targetmode","CT_ODS","parse_manifest","Rn","FEtag","exec","write_manifest","manifest","write_rdf_type","write_rdf_has","write_rdf","rdf","write_meta_ods","CORE_PROPS_REGEX","parse_core_props","cur","cp_doit","write_core_props","xmlns:cp","xmlns:dc","xmlns:dcterms","xmlns:dcmitype","Props","CreatedDate","xsi:type","ModifiedDate","PseudoPropsPairs","load_props_pairs","HP","TOP","props","hp","parts","Worksheets","NamedRanges","DefinedNames","Chartsheets","ChartNames","parse_ext_props","HeadingPairs","TitlesOfParts","write_ext_props","W","Application","xmlns:vt","custregex","parse_cust_props","toks","warn","write_cust_props","pid","custprop","fmtid","DBF_SUPPORTED_VERSIONS","DBF","dbf_codepage_map","100","101","102","103","104","106","107","120","121","122","123","124","125","126","150","151","152","200","201","202","203","87","88","89","108","135","dbf_reverse_map","dbf_to_aoa","ft","memo","vfp","l7","nrow","fpos","rlen","current_cp","codepage","fields","field","hend","sheetRows","dbf_to_sheet","wch","dbf_to_workbook","_RLEN","?","","sheet_to_dbf","old_cp","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_l","_s","to_workbook","to_sheet","from_sheet","SYLK","sylk_escapes","AA","BA","CA","DA","HA","JA","AE","BE","CE","HE","AI","BI","CI","HI","AO","BO","CO","DO","HO","AU","BU","CU","HU","Aa","Ba","Ca","Da","Ha","Ja","Ae","Be","Ce","He","Ai","Bi","Ci","Hi","Ao","Bo","Co","Do","Ho","Au","Bu","Cu","Hu","KC","Kc","DN","Dn","Hy","B ","!","\"","#","(","%","'","H ","+",";","<","=",">","{","sylk_char_regex","sylk_char_fn","_","decode_sylk_char","newcc","sylk_to_aoa","sylk_to_aoa_str","records","rj","formats","next_cell_format","sht","rowinfo","colinfo","cw","Mval","wb","Workbook","WBProps","Names","rstr","record","d1904","nn","Sheet","Name","Ref","rc_to_a1","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","cell_t","cellText","shrbase","shift_formula_str","F_seen","hidden","hpt","hpx","pt2px","process_col","sylk_to_workbook","aoasht","outwb","write_ws_cell_sylk","F","a1_to_rc","write_ws_cols_sylk","rec","width","wpx","width2px","px2char","write_ws_rows_sylk","rows","px2pt","sheet_to_sylk","preamble","RS","DIF","dif_to_aoa","dif_to_aoa_str","dif_to_sheet","dif_to_workbook","make_value","make_value_str","sheet_to_dif","_DIF_XL","ETH","eth_to_aoa","eth_to_sheet","eth_to_workbook","sep","meta","sheet_to_eth_data","coord","sheet_to_eth","PRN","set_text_arr","prn_to_aoa_str","lines","guess_seps","guess_sep_weights","guess_sep","instr","dsv_to_sheet_str","FS","sepcc","startcc","_re","finish_cell","fuzzyfmla","cellNF","outer","prn_to_sheet_str","prn_to_sheet","bytes","firstbyte","prn_to_workbook","sheet_to_prn","read_wb_ID","OLD_WTF","parse_rpr","rpr","font","pass","shadow","outline","strike","uval","rgb","family","valign","parse_rs","tregex","rpregex","parse_r","rregex","rend","rs","filter","rs_to_html","parse_rs_factory","nlregex","parse_rpr2","intro","outro","align","r_to_html","terms","sitregex","sirregex","sirphregex","parse_si","cellHTML","sstr0","sstr1","sstr2","parse_sst_xml","Count","count","Unique","uniqueCount","straywsregex","write_sst_xml","bookSST","sitag","hex2RGB","rgb2Hex","rgb2HSL","G","H6","L2","hsl2RGB","hsl","h6","X","rgb_tint","hex","tint","DEF_MDW","MAX_MDW","MIN_MDW","MDW","px","char2width","chr","cycle_width","collw","find_mdw_colw","delta","_MDW","coll","customWidth","DEF_PPI","PPI","pt","XLMLPatternTypeMap","None","Solid","Gray50","Gray75","Gray25","HorzStripe","VertStripe","ReverseDiagStripe","DiagStripe","DiagCross","ThickDiagCross","ThinHorzStripe","ThinVertStripe","ThinReverseDiagStripe","ThinHorzCross","parse_borders","Borders","border","diagonalUp","diagonalDown","parse_fills","Fills","patternType","bgColor","indexed","theme","fgColor","parse_fonts","Fonts","bold","italic","underline","condense","extend","vertAlign","scheme","auto","index","icv","themeElements","clrScheme","parse_numFmts","NumberFmt","formatCode","write_numFmts","NF","cellXF_uint","cellXF_bool","parse_cellXfs","CellXf","xf","alignment","vertical","horizontal","textRotation","indent","wrapText","write_cellXfs","cellXfs","parse_sty_xml","make_pstyx","numFmtRegex","cellXfRegex","fillsRegex","fontsRegex","bordersRegex","write_sty_xml","XLSXThemeClrScheme","parse_clrScheme","lastClr","parse_fontScheme","parse_fmtScheme","clrsregex","fntsregex","fmtsregex","parse_themeElements","themeltregex","parse_theme_xml","write_theme","Themes","themeXLSX","parse_xlmeta_xml","Types","Cell","Value","metatype","lastmeta","offsets","write_xlmeta_xml","parse_xlink_xml","parse_xlink_bin","xlink_parse","parse_drawing","id","write_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","_shapeid","_comments","joinstyle","gradientshapeok","o:connecttype","coordsize","o:spt","write_vml_comment","fillopts","color2","angle","fillparm","fillxml","shadata","on","obscured","fillcolor","strokecolor","sheet_insert_comments","threaded","comment","ref","author","parse_comments_xml","authors","commentList","authtag","cmnttag","cm","authorId","guid","textMatch","rt","write_comments_xml","iauthor","ID","lastauthor","ts","tcnt","parse_tcmnt_xml","tidx","xml_tcmnt","personId","write_tcmnt_xml","carr","rootid","tcopts","tcid","parentId","parse_people_xml","displayname","write_people_xml","person","displayName","userId","providerId","CT_VBA","make_vba_xls","newcfb","newpath","fill_vba_xls","VBAFMTS","parse_ds_bin","!type","parse_ds_xml","parse_ms_bin","parse_ms_xml","rcregex","rcbase","rcfunc","fstr","crefregex","$0","$4","$5","shift_formula_xlsx","_xlfn","ods_to_csf_formula","csf_to_ods_formula","ods_to_csf_3D","csf_to_ods_3D","_ssfopts","browser_has_Map","Map","get_sst_id","has","revarr","get","col_obj_w","level","outlineLevel","default_margins","margins","mode","defs","left","right","top","bottom","footer","get_cell_style","revssf","ssf","fontId","fillId","borderId","xfId","applyNumberFormat","safe_format","fillid","cellStyles","raw_rgb","check_ws","parse_ws_xml_dim","mergecregex","sheetdataregex","hlinkregex","dimregex","colregex","afregex","marginregex","sheetprregex","sheetprregex2","svsregex","parse_ws_xml","refguess","data1","data2","mtch","sheetPr","parse_ws_xml_sheetpr","parse_ws_xml_sheetpr2","svs","parse_ws_xml_sheetviews","columns","parse_ws_xml_cols","parse_ws_xml_data","afilter","parse_ws_xml_autofilter","merges","_merge","hlink","parse_ws_xml_hlinks","parse_ws_xml_margins","tmpref","write_ws_xml_merges","codeName","CodeName","write_ws_xml_sheetpr","needed","vbaraw","cname","outlineprops","summaryBelow","summaryRight","above","sheetprot_deffalse","sheetprot_deftrue","write_ws_xml_protection","sp","password","crypto_CreatePasswordVerifier_Method1","location","Rel","tooltip","Tooltip","rng","margin","write_ws_xml_margins","seencol","coli","colm","colM","write_ws_xml_cols","write_ws_xml_autofilter","names","sviewregex","Views","zoomScale","zoom","rightToLeft","RTL","write_ws_xml_sheetviews","sview","workbookViewId","write_ws_xml_cell","oldt","oldv","os","Strings","revStrings","display","cellregex","rowregex","isregex","refregex","match_v","match_f","sdata","cells","cref","tagr","tagc","sstr","ftag","do_format","cf","arrayf","sharedf","rowobj","rowrite","marr","marrlen","xlen","rstarti","outa","ht","rslice","cellFormula","xlfn","___f","_tag","xlmeta","_r","write_ws_xml_data","params","height","_cell","customHeight","write_ws_xml","xmlns:r","sidx","rdata","_drawing","sheetFormat","defaultRowHeight","baseColWidth","outlineLevelRow","relc","ignoreEC","numberStoredAsText","sqref","r:id","parse_Cache","num","nf","parse_chart","csheet","nc","cache","parse_cs_xml","!drawel","!rel","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","dn","wbnsregex","parse_wb_xml","AppVersion","dname","dnstart","xml_wb","Hidden","Comment","localSheetId","write_wb_xml","write_names","workbookPr","sheetId","parse_wb","parse_wb_bin","parse_ws","parse_ws_bin","parse_cs","parse_cs_bin","parse_ms","parse_ds","parse_sty","parse_sty_bin","parse_sst","parse_sst_bin","parse_cmnt","parse_comments_bin","parse_cc","parse_cc_bin","parse_cc_xml","parse_xlink","parse_xlmeta","parse_xlmeta_bin","html_to_sheet","mtch2","hd","midx","colspan","rowspan","_t","make_html_row","editable","HTML_BEGIN","HTML_END","html_to_workbook","book_new","book_append_sheet","make_html_preamble","sheet_to_html","sheet_add_dom","tagName","or_R","or_C","is_dom_element_hidden","elts","hasAttribute","getAttribute","innerHTML","Aelts","getElementsByTagName","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","parse_ods_styles","_nfm","number_format_map","lastIndex","NFtag","tNF","etpos","infmt","parse_content_xml","nfidx","pidx","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","baddate","rptR","rpt","xlmlidx","styletag","nrange","ptp","bookSheets","parse_ods","Styles","parse_fods","write_styles_ods","master_styles","xmlns:office","xmlns:table","xmlns:style","xmlns:text","xmlns:draw","xmlns:fo","xmlns:xlink","xmlns:number","xmlns:svg","xmlns:of","office:version","wso","write_number_format_ods","nopts","style:name","number:min-integer-digits","number:min-numerator-digits","number:max-denominator-value","number:denominator-value","number:decimal-places","number:min-decimal-places","has_time","np","write_names_ods","scoped","odsref","table:name","table:cell-range-address","table:base-cell-address","write_content_ods","write_text_p","null_cell_xml","covered_cell_xml","write_ws","nfs","mi","ods","ROWS","skip","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","nfi","wcx","attr","xmlns:meta","xmlns:presentation","xmlns:chart","xmlns:dr3d","xmlns:math","xmlns:form","xmlns:script","xmlns:ooo","xmlns:ooow","xmlns:oooc","xmlns:dom","xmlns:xforms","xmlns:sheet","xmlns:rpt","xmlns:xhtml","xmlns:grddl","xmlns:tableooo","xmlns:drawooo","xmlns:calcext","xmlns:loext","xmlns:field","xmlns:formx","xmlns:css3t","fods","xmlns:config","office:mimetype","write_ods","fix_opts_func","fix_opts","fix_read_opts","fix_write_opts","get_sheet_type","safe_parse_wbrels","wbrels","pwbr","strRelID","safe_parse_sheet","relsPath","sheetRels","stype","dfile","drelsp","draw","chartp","crelsp","tcomments","strip_front_slash","parse_numbers_iwa","_zip","index_zip","Bun","readSync","entries","dir","binname","bookProps","link","propdata","pluck","Custprops","deps","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Directory","Deps","bookFiles","bookVBA","bin","parse_xlsxcfb","parse_DataSpaceVersionInfo","dsm","parse_DataSpaceMap","comps","seds","parse_DataSpaceDefinition","parse_Primary","einfo","parse_EncryptionInfo","decrypt_agile","decrypt_std76","write_zip_xlsb","foo","vbafmt","General","_sn","_i","wsrels","_type","write_ws_bin","need_vml","write_comments_bin","rId1","write_sst_bin","write_wb_bin","write_sty_bin","write_xlmeta_bin","write_zip_xlsx","needtc","read_cfb","parse_xlscfb","read_zip","read_plaintext","main","parse_xlml","read_plaintext_raw","read_utf16","bstrify","read_prn","ab","vu","WK_","rtf_to_workbook","write_cfb_ctr","write_numbers_iwa","write_zip_type","write_zip_denouement","write_zip_typeXLSX","oopts","ftype","nodebuffer","string","generate","encrypt_agile","write_cfb_type","write_xlscfb","write_string_type","bom","write_stxt_type","write_binary_type","writeSyncXLSX","writeSync","write_xlml","sheet_to_txt","sheet_to_csv","sheet_to_rtf","sheet_to_wk1","book_to_wk3","write_biff_buf","resolve_book_type","_BT","xls","slk","socialcalc","Sh33tJS","writeFileSyncXLSX","writeFileAsync","_cb","Function","make_json_row","hdr","defval","isempty","defineProperty","enumerable","__rowNum__","rawNumbers","outi","counter","header_cnt","skipHidden","blankrows","qreg","make_csv_row","txt","datarow","forceQuotes","endregex","strip","sheet_to_formulae","cmds","sheet_add_json","js","skipHeader","ROW","JS","json_to_sheet","ws_get_cell_stub","RC","wb_sheet_idx","sh","roll","book_set_sheet_visibility","vis","cell_set_number_format","cell_set_hyperlink","cell_set_internal_link","cell_add_comment","sheet_set_array_formula","dynamic","rngstr","wsr","table_to_sheet","sheet_to_row_object_array","sheet_get_cell","SHEET_VISIBLE","SHEET_HIDDEN","SHEET_VERY_HIDDEN","readFile","writeXLSX","writeFileXLSX","__stream","stream","require","strmod","Readable","set_readable","module","define","amd","window"],"mappings":"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","file":"dist/xlsx.mini.min.js"} \ No newline at end of file diff --git a/formats.png b/formats.png deleted file mode 100644 index dd478aa..0000000 Binary files a/formats.png and /dev/null differ diff --git a/legend.png b/legend.png deleted file mode 100644 index 686a751..0000000 Binary files a/legend.png and /dev/null differ diff --git a/modules/45_rtf.js b/modules/45_rtf.js index dd4b42f..e4c323f 100644 --- a/modules/45_rtf.js +++ b/modules/45_rtf.js @@ -13,14 +13,18 @@ function rtf_to_sheet(d, opts) { } function rtf_to_sheet_str(str, opts) { var o = opts || {}; - var ws = o.dense ? [] : {}; + var ws = {}; + var dense = o.dense; + if (dense) + ws["!data"] = []; var rows = str.match(/\\trowd[\s\S]*?\\row\b/g); if (!rows) throw new Error("RTF missing table"); var range = { s: { c: 0, r: 0 }, e: { c: 0, r: rows.length - 1 } }; + var row = []; rows.forEach(function(rowtf, R) { - if (Array.isArray(ws)) - ws[R] = []; + if (dense) + row = ws["!data"][R] = []; var rtfre = /\\[\w\-]+\b/g; var last_index = 0; var res; @@ -46,8 +50,8 @@ function rtf_to_sheet_str(str, opts) { cell.w = cell.v; cell.v = fuzzynum(cell.v); } - if (Array.isArray(ws)) - ws[R][C] = cell; + if (dense) + row[C] = cell; else ws[encode_cell({ r: R, c: C })] = cell; } @@ -75,15 +79,17 @@ function sheet_to_rtf(ws, opts) { if (!ws["!ref"]) return o[0] + "}"; var r = safe_decode_range(ws["!ref"]), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, row = []; for (var R = r.s.r; R <= r.e.r; ++R) { o.push("\\trowd\\trautofit1"); for (var C = r.s.c; C <= r.e.c; ++C) o.push("\\cellx" + (C + 1)); o.push("\\pard\\intbl"); + if (dense) + row = ws["!data"][R] || []; for (C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({ r: R, c: C }); - cell = dense ? (ws[R] || [])[C] : ws[coord]; + cell = dense ? row[C] : ws[coord]; if (!cell || cell.v == null && (!cell.f || cell.F)) { o.push(" \\cell"); continue; diff --git a/modules/45_rtf.ts b/modules/45_rtf.ts index 8b206a5..71ee5c7 100644 --- a/modules/45_rtf.ts +++ b/modules/45_rtf.ts @@ -1,4 +1,4 @@ -import { WorkBook, WorkSheet, Range, CellObject } from '../'; +import { WorkBook, WorkSheet, Range, CellObject, DenseSheet, SparseSheet } from '../'; import type { utils } from "../"; declare var encode_cell: typeof utils.encode_cell; @@ -26,13 +26,16 @@ function rtf_to_sheet(d/*:RawData*/, opts)/*:Worksheet*/ { function rtf_to_sheet_str(str: string, opts)/*:Worksheet*/ { var o = opts || {}; // ESBuild issue 2375 - var ws: WorkSheet = o.dense ? [] : ({}/*:any*/); + var ws: WorkSheet = {} as WorkSheet; + var dense = o.dense; + if(dense) ws["!data"] = []; var rows = str.match(/\\trowd[\s\S]*?\\row\b/g); if(!rows) throw new Error("RTF missing table"); var range: Range = {s: {c:0, r:0}, e: {c:0, r:rows.length - 1}}; + var row: CellObject[] = []; rows.forEach(function(rowtf, R) { - if(Array.isArray(ws)) ws[R] = []; + if(dense) row = (ws as DenseSheet)["!data"][R] = [] as CellObject[]; var rtfre = /\\[\w\-]+\b/g; var last_index = 0; var res; @@ -51,8 +54,8 @@ function rtf_to_sheet_str(str: string, opts)/*:Worksheet*/ { if(cell.v == "TRUE" || cell.v == "FALSE") { cell.v = cell.v == "TRUE"; cell.t = "b"; } else if(!isNaN(fuzzynum(cell.v as string))) { cell.t = 'n'; if(o.cellText !== false) cell.w = cell.v as string; cell.v = fuzzynum(cell.v as string); } - if(Array.isArray(ws)) ws[R][C] = cell; - else ws[encode_cell({r:R, c:C})] = cell; + if(dense) row[C] = cell; + else (ws as SparseSheet)[encode_cell({r:R, c:C})] = cell; } payload = []; break; @@ -79,14 +82,15 @@ function sheet_to_rtf(ws: WorkSheet, opts): string { var o: string[] = ["{\\rtf1\\ansi"]; if(!ws["!ref"]) return o[0] + "}"; var r = safe_decode_range(ws['!ref']), cell: CellObject; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, row: CellObject[] = []; for(var R = r.s.r; R <= r.e.r; ++R) { o.push("\\trowd\\trautofit1"); for(var C = r.s.c; C <= r.e.c; ++C) o.push("\\cellx" + (C+1)); o.push("\\pard\\intbl"); + if(dense) row = (ws as DenseSheet)["!data"][R] || ([] as CellObject[]) for(C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C]: ws[coord]; + cell = dense ? row[C] : (ws as SparseSheet)[coord]; if(!cell || cell.v == null && (!cell.f || cell.F)) { o.push(" \\cell"); continue; } o.push(" " + (cell.w || (format_cell(cell), cell.w) || "").replace(/[\r\n]/g, "\\par ")); o.push("\\cell"); @@ -95,4 +99,3 @@ function sheet_to_rtf(ws: WorkSheet, opts): string { } return o.join("") + "}"; } - diff --git a/modules/51_xlsbmeta.ts b/modules/51_xlsbmeta.ts index c713f4e..2f5932b 100644 --- a/modules/51_xlsbmeta.ts +++ b/modules/51_xlsbmeta.ts @@ -61,7 +61,7 @@ function write_BrtBeginEsmdb(cnt: number, cm: boolean): RawData { } /* [MS-XLSB] 2.1.7.34 Metadata */ -function parse_xlmeta_bin(data, name: string, _opts?: ParseXLMetaOptions): XLMeta { +function parse_xlmeta_bin(data: RawData, name: string, _opts?: ParseXLMetaOptions): XLMeta { var out: XLMeta = { Types: [], Cell: [], Value: [] }; var opts = _opts || {}; var state: number[] = []; diff --git a/modules/83_numbers.js b/modules/83_numbers.js index a7e59a1..037ac62 100644 --- a/modules/83_numbers.js +++ b/modules/83_numbers.js @@ -26,29 +26,22 @@ function u8str(u8) { function stru8(str) { return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); } -function u8contains(body, search) { - var L = body.indexOf(search[0]); - if (L == -1) - return false; - outer: - for (; L <= body.length - search.length; ++L) { - for (var j = 0; j < search.length; ++j) - if (body[L + j] != search[j]) - continue outer; - return true; - } - return false; -} function u8concat(u8a) { - var len = u8a.reduce(function(acc, x) { - return acc + x.length; - }, 0); + var len = 0; + for (var i = 0; i < u8a.length; ++i) + len += u8a[i].length; var out = new Uint8Array(len); var off = 0; - u8a.forEach(function(u8) { - out.set(u8, off); - off += u8.length; - }); + for (i = 0; i < u8a.length; ++i) { + var u8 = u8a[i], L = u8.length; + if (L < 250) { + for (var j = 0; j < L; ++j) + out[off++] = u8[j]; + } else { + out.set(u8, off); + off += L; + } + } return out; } function popcnt(x) { @@ -73,7 +66,7 @@ function writeDecimal128LE(buf, offset, value) { buf[offset + 15] |= value >= 0 ? 0 : 128; } function parse_varint49(buf, ptr) { - var l = ptr ? ptr[0] : 0; + var l = ptr.l; var usz = buf[l] & 127; varint: if (buf[l++] >= 128) { @@ -99,8 +92,7 @@ function parse_varint49(buf, ptr) { if (buf[l++] < 128) break varint; } - if (ptr) - ptr[0] = l; + ptr.l = l; return usz; } function write_varint49(v) { @@ -141,9 +133,9 @@ function write_varint49(v) { return usz[subarray](0, L); } function parse_packed_varints(buf) { - var ptr = [0]; + var ptr = { l: 0 }; var out = []; - while (ptr[0] < buf.length) + while (ptr.l < buf.length) out.push(parse_varint49(buf, ptr)); return out; } @@ -203,50 +195,49 @@ function varint_to_u64(buf) { return [lo >>> 0, hi >>> 0]; } function parse_shallow(buf) { - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { - var off = ptr[0]; + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { + var off = ptr.l; var num = parse_varint49(buf, ptr); var type = num & 7; - num = Math.floor(num / 8); - var len = 0; - var res; - if (num == 0) - break; + num = num / 8 | 0; + var data; + var l = ptr.l; switch (type) { case 0: { - var l = ptr[0]; - while (buf[ptr[0]++] >= 128) + while (buf[l++] >= 128) ; - res = buf[subarray](l, ptr[0]); + data = buf[subarray](ptr.l, l); + ptr.l = l; + } + break; + case 1: + { + data = buf[subarray](l, l + 8); + ptr.l = l + 8; + } + break; + case 2: + { + var len = parse_varint49(buf, ptr); + data = buf[subarray](ptr.l, ptr.l + len); + ptr.l += len; } break; case 5: - len = 4; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; + { + data = buf[subarray](l, l + 4); + ptr.l = l + 4; + } break; - case 1: - len = 8; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 2: - len = parse_varint49(buf, ptr); - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 3: - case 4: default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { data: res, type: type }; + var v = { data: data, type: type }; if (out[num] == null) - out[num] = [v]; - else - out[num].push(v); + out[num] = []; + out[num].push(v); } return out; } @@ -273,11 +264,11 @@ function mappa(data, cb) { } function parse_iwa_file(buf) { var _a; - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { var len = parse_varint49(buf, ptr); - var ai = parse_shallow(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + var ai = parse_shallow(buf[subarray](ptr.l, ptr.l + len)); + ptr.l += len; var res = { id: varint_to_i32(ai[1][0].data), messages: [] @@ -287,9 +278,9 @@ function parse_iwa_file(buf) { var fl = varint_to_i32(mi[3][0].data); res.messages.push({ meta: mi, - data: buf[subarray](ptr[0], ptr[0] + fl) + data: buf[subarray](ptr.l, ptr.l + fl) }); - ptr[0] += fl; + ptr.l += fl; }); if ((_a = ai[3]) == null ? void 0 : _a[0]) res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; @@ -325,45 +316,46 @@ function write_iwa_file(ias) { function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); - var ptr = [0]; + var ptr = { l: 0 }; var usz = parse_varint49(buf, ptr); var chunks = []; - while (ptr[0] < buf.length) { - var tag = buf[ptr[0]] & 3; + var l = ptr.l; + while (l < buf.length) { + var tag = buf[l] & 3; if (tag == 0) { - var len = buf[ptr[0]++] >> 2; + var len = buf[l++] >> 2; if (len < 60) ++len; else { var c = len - 59; - len = buf[ptr[0]]; + len = buf[l]; if (c > 1) - len |= buf[ptr[0] + 1] << 8; + len |= buf[l + 1] << 8; if (c > 2) - len |= buf[ptr[0] + 2] << 16; + len |= buf[l + 2] << 16; if (c > 3) - len |= buf[ptr[0] + 3] << 24; + len |= buf[l + 3] << 24; len >>>= 0; len++; - ptr[0] += c; + l += c; } - chunks.push(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + chunks.push(buf[subarray](l, l + len)); + l += len; continue; } else { var offset = 0, length = 0; if (tag == 1) { - length = (buf[ptr[0]] >> 2 & 7) + 4; - offset = (buf[ptr[0]++] & 224) << 3; - offset |= buf[ptr[0]++]; + length = (buf[l] >> 2 & 7) + 4; + offset = (buf[l++] & 224) << 3; + offset |= buf[l++]; } else { - length = (buf[ptr[0]++] >> 2) + 1; + length = (buf[l++] >> 2) + 1; if (tag == 2) { - offset = buf[ptr[0]] | buf[ptr[0] + 1] << 8; - ptr[0] += 2; + offset = buf[l] | buf[l + 1] << 8; + l += 2; } else { - offset = (buf[ptr[0]] | buf[ptr[0] + 1] << 8 | buf[ptr[0] + 2] << 16 | buf[ptr[0] + 3] << 24) >>> 0; - ptr[0] += 4; + offset = (buf[l] | buf[l + 1] << 8 | buf[l + 2] << 16 | buf[l + 3] << 24) >>> 0; + l += 4; } } if (offset == 0) @@ -395,16 +387,15 @@ function parse_snappy_chunk(type, buf) { if (length) chunks.push(chunks[j][subarray](0, length)); } - if (chunks.length > 100) + if (chunks.length > 25) chunks = [u8concat(chunks)]; } } - if (chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0) != usz) - throw new Error("Unexpected length: ".concat(chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0), " != ").concat(usz)); + var clen = 0; + for (var u8i = 0; u8i < chunks.length; ++u8i) + clen += chunks[u8i].length; + if (clen != usz) + throw new Error("Unexpected length: ".concat(clen, " != ").concat(usz)); return chunks; } function decompress_iwa_file(buf) { @@ -421,7 +412,7 @@ function decompress_iwa_file(buf) { } if (l !== buf.length) throw new Error("data is not a valid framed stream!"); - return u8concat(out); + return out.length == 1 ? out[0] : u8concat(out); } function compress_iwa_file(buf) { var out = []; @@ -468,12 +459,12 @@ function numbers_format_cell(cell, t, flags, ofmt, nfmt) { var fmt = ver >= 5 ? nfmt : ofmt; dur: if (flags & (ver > 4 ? 8 : 4) && cell.t == "n" && ctype == 7) { - var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? parse_varint49(fmt[7][0].data) : -1; + var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? varint_to_i32(fmt[7][0].data) : -1; if (dstyle == -1) break dur; - var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? parse_varint49(fmt[15][0].data) : -1; - var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? parse_varint49(fmt[16][0].data) : -1; - var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? parse_varint49(fmt[40][0].data) : -1; + var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? varint_to_i32(fmt[15][0].data) : -1; + var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? varint_to_i32(fmt[16][0].data) : -1; + var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? varint_to_i32(fmt[40][0].data) : -1; var d = cell.v, dd = d; autodur: if (auto) { @@ -801,7 +792,7 @@ function parse_cell_storage(buf, lut) { } function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); - return parse_varint49(pb[1][0].data); + return varint_to_i32(pb[1][0].data); } function write_TSP_Reference(idx) { return write_shallow([ @@ -932,7 +923,7 @@ function parse_TST_TableModelArchive(M, root, ws) { if (range.e.c < 0) throw new Error("Invalid col varint ".concat(pb[7][0].data)); ws["!ref"] = encode_range(range); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, dws = ws; var store = parse_shallow(pb[4][0].data); var lut = numbers_lut_new(); if ((_a = store[4]) == null ? void 0 : _a[0]) @@ -957,12 +948,11 @@ function parse_TST_TableModelArchive(M, root, ws) { var res = parse_cell_storage(buf, lut); if (res) { if (dense) { - if (!ws[_R + R]) - ws[_R + R] = []; - ws[_R + R][C] = res; + if (!dws["!data"][_R + R]) + dws["!data"][_R + R] = []; + dws["!data"][_R + R][C] = res; } else { - var addr = encode_cell({ r: _R + R, c: C }); - ws[addr] = res; + ws[encode_col(C) + encode_row(_R + R)] = res; } } }); @@ -989,12 +979,9 @@ function parse_TST_TableModelArchive(M, root, ws) { } function parse_TST_TableInfoArchive(M, root, opts) { var pb = parse_shallow(root.data); - var out; - if (!(opts == null ? void 0 : opts.dense)) - out = { "!ref": "A1" }; - else - out = []; - out["!ref"] = "A1"; + var out = { "!ref": "A1" }; + if (opts == null ? void 0 : opts.dense) + out["!data"] = []; var tableref = M[parse_TSP_Reference(pb[2][0].data)]; var mtype = varint_to_i32(tableref[0].meta[1][0].data); if (mtype != 6001) @@ -1211,26 +1198,20 @@ function build_numbers_deps(cfb) { dependents[packet.id] = { deps: [], location: fp, type: varint_to_i32(packet.messages[0].meta[1][0].data) }; }); }); - indices.sort(function(x, y) { - return x - y; - }); - var indices_varint = indices.filter(function(x) { - return x > 1; - }).map(function(x) { - return [x, write_varint49(x)]; - }); cfb.FileIndex.forEach(function(fi) { if (!fi.name.match(/\.iwa/)) return; if (fi.name.match(/OperationStorage/)) return; parse_iwa_file(decompress_iwa_file(fi.content)).forEach(function(ia) { - indices_varint.forEach(function(ivi) { - if (ia.messages.some(function(mess) { - return varint_to_i32(mess.meta[1][0].data) != 11006 && u8contains(mess.data, ivi[1]); - })) { - dependents[ivi[0]].deps.push(ia.id); - } + ia.messages.forEach(function(mess) { + [5, 6].forEach(function(f) { + if (!mess.meta[f]) + return; + mess.meta[f].forEach(function(x) { + dependents[ia.id].deps.push(varint_to_i32(x.data)); + }); + }); }); }); }); @@ -1479,7 +1460,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a3, _b2; var mm = parse_shallow(m.data); @@ -1542,7 +1523,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a2, _b2; var mm = parse_shallow(m.data); @@ -1602,7 +1583,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a2, _b2; var mm = parse_shallow(m.data); @@ -1714,16 +1695,16 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { var metadata = numbers_iwa_find(cfb, deps, 2); var mlist = parse_shallow(metadata.messages[0].data); var mlst = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) == tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) == tileref; }); - return (mlst == null ? void 0 : mlst.length) ? parse_varint49(parse_shallow(mlst[0].data)[12][0].data) : 0; + return (mlst == null ? void 0 : mlst.length) ? varint_to_i32(parse_shallow(mlst[0].data)[12][0].data) : 0; }(); { CFB.utils.cfb_del(cfb, deps[tileref].location); numbers_iwa_doit(cfb, deps, 2, function(ai) { var mlist = parse_shallow(ai.messages[0].data); mlist[3] = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); var parentidx = mlist[3].findIndex(function(m) { var _a, _b; @@ -1738,7 +1719,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { if (!parent[6]) parent[6] = []; parent[6] = parent[6].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); mlist[3][parentidx].data = write_shallow(parent); ai.messages[0].data = write_shallow(mlist); @@ -1798,7 +1779,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { [], [{ type: 0, data: write_varint49(save_token) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a, _b; var mm = parse_shallow(m.data); diff --git a/modules/83_numbers.ts b/modules/83_numbers.ts index aa50f24..8a55742 100644 --- a/modules/83_numbers.ts +++ b/modules/83_numbers.ts @@ -3,10 +3,11 @@ /* these are type imports and do not show up in the generated JS */ import { CFB$Container, CFB$Entry } from 'cfb'; -import { WorkBook, WorkSheet, Range, CellObject, ParsingOptions, WritingOptions } from '../'; +import { WorkBook, WorkSheet, Range, CellObject, ParsingOptions, WritingOptions, DenseWorkSheet } from '../'; import type { utils } from "../"; -declare var encode_cell: typeof utils.encode_cell; +declare var encode_col: typeof utils.encode_col; +declare var encode_row: typeof utils.encode_row; declare var encode_range: typeof utils.encode_range; declare var book_new: typeof utils.book_new; declare var book_append_sheet: typeof utils.book_append_sheet; @@ -15,21 +16,21 @@ declare var decode_range: typeof utils.decode_range; import * as _CFB from 'cfb'; declare var CFB: typeof _CFB; //< { try { - if(typeof Uint8Array == "undefined") return "slice"; - if(typeof Uint8Array.prototype.subarray == "undefined") return "slice"; - // NOTE: feature tests are for node < 6.x - if(typeof Buffer !== "undefined") { - if(typeof Buffer.prototype.subarray == "undefined") return "slice"; - if((typeof Buffer.from == "function" ? Buffer.from([72,62]) : new Buffer([72,62])) instanceof Uint8Array) return "subarray"; - return "slice"; - } - return "subarray"; + if(typeof Uint8Array == "undefined") return "slice"; + if(typeof Uint8Array.prototype.subarray == "undefined") return "slice"; + // NOTE: feature tests are for node < 6.x + if(typeof Buffer !== "undefined") { + if(typeof Buffer.prototype.subarray == "undefined") return "slice"; + if((typeof Buffer.from == "function" ? Buffer.from([72,62]) : new Buffer([72,62])) instanceof Uint8Array) return "subarray"; + return "slice"; + } + return "subarray"; } catch(e) { return "slice"; } })(); @@ -40,23 +41,17 @@ function u8str(u8: Uint8Array): string { return /* Buffer.isBuffer(u8) ? u8.toSt function stru8(str: string): Uint8Array { return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)) as Uint8Array; } //< acc + x.length, 0); + var len = 0; + for(var i = 0; i < u8a.length; ++i) len += u8a[i].length; var out = new Uint8Array(len); var off = 0; - u8a.forEach(u8 => { out.set(u8, off); off += u8.length; }); + for(i = 0; i < u8a.length; ++i) { + var u8 = u8a[i], L = u8.length; + if(L < 250) { for(var j = 0; j < L; ++j) out[off++] = u8[j]; } + else { out.set(u8, off); off += L; } + } return out; } //<= 0x80) { usz |= (buf[l] & 0x7F) << 7; if(buf[l++] < 0x80) break varint; @@ -101,7 +96,7 @@ function parse_varint49(buf: Uint8Array, ptr?: Ptr): number { usz += (buf[l] & 0x7F) * Math.pow(2, 35); ++l; if(buf[l++] < 0x80) break varint; usz += (buf[l] & 0x7F) * Math.pow(2, 42); ++l; if(buf[l++] < 0x80) break varint; } - if(ptr) ptr[0] = l; + ptr.l = l; return usz; } /** Write a varint up to 7 bytes / 49 bits */ @@ -126,9 +121,9 @@ function write_varint49(v: number): Uint8Array { } /** Parse a repeated varint [packed = true] field */ function parse_packed_varints(buf: Uint8Array): number[] { - var ptr: Ptr = [0]; + var ptr: Ptr = {l: 0}; var out: number[] = []; - while(ptr[0] < buf.length) out.push(parse_varint49(buf, ptr)); + while(ptr.l < buf.length) out.push(parse_varint49(buf, ptr)); return out; } /** Write a repeated varint [packed = true] field */ @@ -174,30 +169,31 @@ type ProtoField = Array type ProtoMessage = Array; /** Shallow parse of a Protobuf message */ function parse_shallow(buf: Uint8Array): ProtoMessage { - var out: ProtoMessage = [], ptr: Ptr = [0]; - while(ptr[0] < buf.length) { - var off = ptr[0]; + var out: ProtoMessage = [], ptr: Ptr = {l: 0}; + while(ptr.l < buf.length) { + var off = ptr.l; var num = parse_varint49(buf, ptr); - var type = num & 0x07; num = Math.floor(num / 8); - var len = 0; - var res: Uint8Array; - if(num == 0) break; + var type = num & 0x07; num = (num / 8)|0; + var data: Uint8Array; + var l = ptr.l; switch(type) { case 0: { - var l = ptr[0]; - while(buf[ptr[0]++] >= 0x80); - res = buf[subarray](l, ptr[0]); + while(buf[l++] >= 0x80); + data = buf[subarray](ptr.l, l); + ptr.l = l; } break; - case 5: len = 4; res = buf[subarray](ptr[0], ptr[0] + len); ptr[0] += len; break; - case 1: len = 8; res = buf[subarray](ptr[0], ptr[0] + len); ptr[0] += len; break; - case 2: len = parse_varint49(buf, ptr); res = buf[subarray](ptr[0], ptr[0] + len); ptr[0] += len; break; - case 3: // Start group - case 4: // End group + case 1: { data = buf[subarray](l, l + 8); ptr.l = l + 8; } break; + case 2: { + var len = parse_varint49(buf, ptr); + data = buf[subarray](ptr.l, ptr.l + len); + ptr.l += len; + } break; + case 5: { data = buf[subarray](l, l + 4); ptr.l = l + 4; } break; default: throw new Error(`PB Type ${type} for Field ${num} at offset ${off}`); } - var v: ProtoItem = { data: res, type }; - if(out[num] == null) out[num] = [v]; - else out[num].push(v); + var v: ProtoItem = { data, type }; + if(out[num] == null) out[num] = []; + out[num].push(v); } return out; } @@ -235,12 +231,12 @@ interface IWAArchiveInfo { } /** Extract all messages from a IWA file */ function parse_iwa_file(buf: Uint8Array): IWAArchiveInfo[] { - var out: IWAArchiveInfo[] = [], ptr: Ptr = [0]; - while(ptr[0] < buf.length) { + var out: IWAArchiveInfo[] = [], ptr: Ptr = {l: 0}; + while(ptr.l < buf.length) { /* .TSP.ArchiveInfo */ var len = parse_varint49(buf, ptr); - var ai = parse_shallow(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + var ai = parse_shallow(buf[subarray](ptr.l, ptr.l + len)); + ptr.l += len; var res: IWAArchiveInfo = { /* TODO: technically ID is optional */ @@ -252,9 +248,9 @@ function parse_iwa_file(buf: Uint8Array): IWAArchiveInfo[] { var fl = varint_to_i32(mi[3][0].data); res.messages.push({ meta: mi, - data: buf[subarray](ptr[0], ptr[0] + fl) + data: buf[subarray](ptr.l, ptr.l + fl) }); - ptr[0] += fl; + ptr.l += fl; }); if(ai[3]?.[0]) res.merge = (varint_to_i32(ai[3][0].data) >>> 0) > 0; out.push(res); @@ -290,35 +286,36 @@ function write_iwa_file(ias: IWAArchiveInfo[]): Uint8Array { /** Decompress a snappy chunk */ function parse_snappy_chunk(type: number, buf: Uint8Array): Uint8Array[] { if(type != 0) throw new Error(`Unexpected Snappy chunk type ${type}`); - var ptr: Ptr = [0]; + var ptr: Ptr = {l: 0}; var usz = parse_varint49(buf, ptr); var chunks: Uint8Array[] = []; - while(ptr[0] < buf.length) { - var tag = buf[ptr[0]] & 0x3; + var l = ptr.l; + while(l < buf.length) { + var tag = buf[l] & 0x3; if(tag == 0) { - var len = buf[ptr[0]++] >> 2; + var len = buf[l++] >> 2; if(len < 60) ++len; else { var c = len - 59; - len = buf[ptr[0]]; - if(c > 1) len |= (buf[ptr[0]+1]<<8); - if(c > 2) len |= (buf[ptr[0]+2]<<16); - if(c > 3) len |= (buf[ptr[0]+3]<<24); + len = buf[l]; + if(c > 1) len |= (buf[l+1]<<8); + if(c > 2) len |= (buf[l+2]<<16); + if(c > 3) len |= (buf[l+3]<<24); len >>>=0; len++; - ptr[0] += c; + l += c; } - chunks.push(buf[subarray](ptr[0], ptr[0] + len)); ptr[0] += len; continue; + chunks.push(buf[subarray](l, l + len)); l += len; continue; } else { var offset = 0, length = 0; if(tag == 1) { - length = ((buf[ptr[0]] >> 2) & 0x7) + 4; - offset = (buf[ptr[0]++] & 0xE0) << 3; - offset |= buf[ptr[0]++]; + length = ((buf[l] >> 2) & 0x7) + 4; + offset = (buf[l++] & 0xE0) << 3; + offset |= buf[l++]; } else { - length = (buf[ptr[0]++] >> 2) + 1; - if(tag == 2) { offset = buf[ptr[0]] | (buf[ptr[0]+1]<<8); ptr[0] += 2; } - else { offset = (buf[ptr[0]] | (buf[ptr[0]+1]<<8) | (buf[ptr[0]+2]<<16) | (buf[ptr[0]+3]<<24))>>>0; ptr[0] += 4; } + length = (buf[l++] >> 2) + 1; + if(tag == 2) { offset = buf[l] | (buf[l+1]<<8); l += 2; } + else { offset = (buf[l] | (buf[l+1]<<8) | (buf[l+2]<<16) | (buf[l+3]<<24))>>>0; l += 4; } } if(offset == 0) throw new Error("Invalid offset 0"); var j = chunks.length - 1, off = offset; @@ -334,14 +331,12 @@ function parse_snappy_chunk(type: number, buf: Uint8Array): Uint8Array[] { while(length >= chunks[j].length) { chunks.push(chunks[j]); length -= chunks[j].length; ++j; } if(length) chunks.push(chunks[j][subarray](0, length)); } - if(chunks.length > 100) chunks = [u8concat(chunks)]; + if(chunks.length > 25) chunks = [u8concat(chunks)]; } } - if(chunks.reduce((acc, u8) => acc + u8.length, 0) != usz) throw new Error(`Unexpected length: ${chunks.reduce((acc, u8) => acc + u8.length, 0)} != ${usz}`); + var clen = 0; for(var u8i = 0; u8i < chunks.length; ++u8i) clen += chunks[u8i].length; + if(clen != usz) throw new Error(`Unexpected length: ${clen} != ${usz}`); return chunks; - //var o = u8concat(chunks); - //if(o.length != usz) throw new Error(`Unexpected length: ${o.length} != ${usz}`); - //return o; } /** Decompress IWA file */ @@ -356,7 +351,7 @@ function decompress_iwa_file(buf: Uint8Array): Uint8Array { l += len; } if(l !== buf.length) throw new Error("data is not a valid framed stream!"); - return u8concat(out); + return out.length == 1 ? out[0] : u8concat(out); } /** Compress IWA file */ @@ -404,11 +399,11 @@ function numbers_format_cell(cell: CellObject, t: number, flags: number, ofmt: P var ctype = t & 0xFF, ver = t >> 8; var fmt = ver >= 5 ? nfmt : ofmt; dur: if((flags & (ver > 4 ? 8: 4)) && cell.t == "n" && ctype == 7) { - var dstyle = (fmt[7]?.[0]) ? parse_varint49(fmt[7][0].data) : -1; + var dstyle = (fmt[7]?.[0]) ? varint_to_i32(fmt[7][0].data) : -1; if(dstyle == -1) break dur; - var dmin = (fmt[15]?.[0]) ? parse_varint49(fmt[15][0].data) : -1; - var dmax = (fmt[16]?.[0]) ? parse_varint49(fmt[16][0].data) : -1; - var auto = (fmt[40]?.[0]) ? parse_varint49(fmt[40][0].data) : -1; + var dmin = (fmt[15]?.[0]) ? varint_to_i32(fmt[15][0].data) : -1; + var dmax = (fmt[16]?.[0]) ? varint_to_i32(fmt[16][0].data) : -1; + var auto = (fmt[40]?.[0]) ? varint_to_i32(fmt[40][0].data) : -1; var d: number = cell.v as number, dd = d; autodur: if(auto) { // TODO: check if numbers reformats on load if(d == 0) { dmin = dmax = 2; break autodur; } @@ -617,7 +612,7 @@ function parse_cell_storage(buf: Uint8Array, lut: DataLUT): CellObject | void { /** Parse .TSP.Reference */ function parse_TSP_Reference(buf: Uint8Array): number { var pb = parse_shallow(buf); - return parse_varint49(pb[1][0].data); + return varint_to_i32(pb[1][0].data); } /** Write .TSP.Reference */ function write_TSP_Reference(idx: number): Uint8Array { @@ -751,7 +746,7 @@ function parse_TST_TableModelArchive(M: MessageSpace, root: IWAMessage, ws: Work range.e.c = (varint_to_i32(pb[7][0].data) >>> 0) - 1; if(range.e.c < 0) throw new Error(`Invalid col varint ${pb[7][0].data}`); ws["!ref"] = encode_range(range); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, dws = (ws as DenseWorkSheet); // .TST.DataStore var store = parse_shallow(pb[4][0].data); var lut: DataLUT = numbers_lut_new(); @@ -776,11 +771,10 @@ function parse_TST_TableModelArchive(M: MessageSpace, root: IWAMessage, ws: Work var res = parse_cell_storage(buf, lut); if(res) { if(dense) { - if(!ws[_R + R]) ws[_R + R] = []; - ws[_R + R][C] = res; + if(!dws["!data"][_R + R]) dws["!data"][_R + R] = []; + dws["!data"][_R + R][C] = res; } else { - var addr = encode_cell({r:_R + R,c:C}); - ws[addr] = res; + ws[encode_col(C) + encode_row(_R + R)] = res; } } }); @@ -810,10 +804,8 @@ function parse_TST_TableModelArchive(M: MessageSpace, root: IWAMessage, ws: Work function parse_TST_TableInfoArchive(M: MessageSpace, root: IWAMessage, opts?: ParsingOptions): WorkSheet { var pb = parse_shallow(root.data); // ESBuild #2375 - var out: WorkSheet; - if(!opts?.dense) out = ({ "!ref": "A1" }); - else out = ([] as any); - out["!ref"] = "A1"; + var out: WorkSheet = { "!ref": "A1" }; + if(opts?.dense) (out as DenseWorkSheet)["!data"] = []; var tableref = M[parse_TSP_Reference(pb[2][0].data)]; var mtype = varint_to_i32(tableref[0].meta[1][0].data); if(mtype != 6001) throw new Error(`6000 unexpected reference to ${mtype}`); @@ -1026,21 +1018,18 @@ function build_numbers_deps(cfb: CFB$Container): Dependents { }); }); - /* precompute a varint for each id */ - indices.sort((x,y) => x-y); - var indices_varint: Array<[number, Uint8Array]> = indices.filter(x => x > 1).map(x => [x, write_varint49(x)] ); - /* build dependent tree */ cfb.FileIndex.forEach(fi => { if(!fi.name.match(/\.iwa/)) return; if(fi.name.match(/OperationStorage/)) return; parse_iwa_file(decompress_iwa_file(fi.content as Uint8Array)).forEach(ia => { - // this is a huge hack based on the observation that most messages of interest have id > 900000 - // TODO: use the actual references - indices_varint.forEach(ivi => { - if(ia.messages.some(mess => varint_to_i32(mess.meta[1][0].data) != 11006 && u8contains(mess.data, ivi[1]))) { - dependents[ivi[0]].deps.push(ia.id); - } + ia.messages.forEach(mess => { + [5,6].forEach(f => { + if(!mess.meta[f]) return; + mess.meta[f].forEach(x => { + dependents[ia.id].deps.push(varint_to_i32(x.data)); + }) + }); }); }); }); @@ -1298,7 +1287,7 @@ function numbers_add_ws(cfb: CFB$Container, deps: Dependents, wsidx: number) { [], [{type: 0, data: write_varint49(0 /* TODO: save_token */)}], ])}); - mlist[1] = [{type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data) ))}]; + mlist[1] = [{type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data) ))}]; /* add reference from TableModelArchive file to Tile */ var parentidx = mlist[3].findIndex(m => { @@ -1363,7 +1352,7 @@ function numbers_add_ws(cfb: CFB$Container, deps: Dependents, wsidx: number) { [], [{type: 0, data: write_varint49(0 /* TODO: save_token */)}], ])}); - mlist[1] = [{type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data) ))}]; + mlist[1] = [{type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data) ))}]; /* add reference from TableModelArchive file to Tile */ var parentidx = mlist[3].findIndex(m => { @@ -1427,7 +1416,7 @@ function numbers_add_ws(cfb: CFB$Container, deps: Dependents, wsidx: number) { [], [{type: 0, data: write_varint49(0 /* TODO: save_token */)}], ])}); - mlist[1] = [{type: 0, data: write_varint49(Math.max(newtileref + 1, parse_varint49(mlist[1][0].data) ))}]; + mlist[1] = [{type: 0, data: write_varint49(Math.max(newtileref + 1, varint_to_i32(mlist[1][0].data) ))}]; /* add reference from TableModelArchive file to Tile */ var parentidx = mlist[3].findIndex(m => { @@ -1565,8 +1554,8 @@ function write_numbers_tma(cfb: CFB$Container, deps: Dependents, ws: WorkSheet, var metadata = numbers_iwa_find(cfb, deps, 2); var mlist = parse_shallow(metadata.messages[0].data); /* .TSP.ComponentInfo field 1 is the id, field 12 is the save token */ - var mlst = mlist[3].filter(m => parse_varint49(parse_shallow(m.data)[1][0].data) == tileref); - return (mlst?.length) ? parse_varint49(parse_shallow(mlst[0].data)[12][0].data) : 0; + var mlst = mlist[3].filter(m => varint_to_i32(parse_shallow(m.data)[1][0].data) == tileref); + return (mlst?.length) ? varint_to_i32(parse_shallow(mlst[0].data)[12][0].data) : 0; })(); /* remove existing tile */ @@ -1577,7 +1566,7 @@ function write_numbers_tma(cfb: CFB$Container, deps: Dependents, ws: WorkSheet, numbers_iwa_doit(cfb, deps, 2, (ai => { var mlist = parse_shallow(ai.messages[0].data); - mlist[3] = mlist[3].filter(m => parse_varint49(parse_shallow(m.data)[1][0].data) != tileref); + mlist[3] = mlist[3].filter(m => varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref); /* remove reference from TableModelArchive file to Tile */ var parentidx = mlist[3].findIndex(m => { @@ -1588,7 +1577,7 @@ function write_numbers_tma(cfb: CFB$Container, deps: Dependents, ws: WorkSheet, }); var parent = parse_shallow(mlist[3][parentidx].data); if(!parent[6]) parent[6] = []; - parent[6] = parent[6].filter(m => parse_varint49(parse_shallow(m.data)[1][0].data) != tileref); + parent[6] = parent[6].filter(m => varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref); mlist[3][parentidx].data = write_shallow(parent); ai.messages[0].data = write_shallow(mlist); @@ -1660,7 +1649,7 @@ function write_numbers_tma(cfb: CFB$Container, deps: Dependents, ws: WorkSheet, [], [{type: 0, data: write_varint49(save_token)}], ])}); - mlist[1] = [{type: 0, data: write_varint49(Math.max(newtileid + 1, parse_varint49(mlist[1][0].data) ))}]; + mlist[1] = [{type: 0, data: write_varint49(Math.max(newtileid + 1, varint_to_i32(mlist[1][0].data) ))}]; /* add reference from TableModelArchive file to Tile */ var parentidx = mlist[3].findIndex(m => { diff --git a/package.json b/package.json index 3ea1d45..e60066c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "xlsx", - "version": "0.18.12", + "version": "0.19.0", "author": "sheetjs", "description": "SheetJS Spreadsheet data parser and writer", "keywords": [ @@ -109,7 +109,7 @@ }, "repository": { "type": "git", - "url": "git://github.com/SheetJS/sheetjs.git" + "url": "https://git.sheetjs.com/SheetJS/sheetjs" }, "scripts": { "pretest": "npm run lint", @@ -138,7 +138,7 @@ }, "homepage": "https://sheetjs.com/", "bugs": { - "url": "https://github.com/SheetJS/sheetjs/issues" + "url": "https://git.sheetjs.com/SheetJS/sheetjs/issues" }, "license": "Apache-2.0", "engines": { diff --git a/test.js b/test.js index 8cf0fcc..919d0c2 100644 --- a/test.js +++ b/test.js @@ -54,7 +54,7 @@ if(!browser) { for(var _fileAi = 0; _fileAi < _fileA.length; ++_fileAi) if(test_file(_fileA[_fileAi])) fileA.push(_fileA[_fileAi]); } -var can_write_numbers = typeof Set !== "undefined" && typeof Array.prototype.findIndex == "function" && typeof Uint8Array !== "undefined" && typeof Uint8Array.prototype.indexOf == "function"; +var can_write_numbers = typeof Array.prototype.findIndex == "function" && typeof Uint8Array !== "undefined" && typeof Uint8Array.prototype.indexOf == "function"; /* Excel enforces 31 character sheet limit, although technical file limit is 255 */ function fixsheetname(x/*:string*/)/*:string*/ { return x.substr(0,31); } @@ -1549,6 +1549,7 @@ describe('write features', function() { it('should handle non-string values for "s" cells', function() {[ "xlsx", "xlsb", "xls", "biff5", "biff2", "xlml", "numbers", "ods", "fods", "wk3", "csv", "txt", "sylk", "html", "dif", "dbf", "wk1", "rtf", "prn" ].forEach(function(fmt) { + if(fmt == "numbers" && !can_write_numbers) return; var ws = X.utils.aoa_to_sheet([ ["String", "123"], ["Number", 123], diff --git a/test_files b/test_files index 787cc72..1ea05a3 160000 --- a/test_files +++ b/test_files @@ -1 +1 @@ -Subproject commit 787cc72932acf77ac58018d60d934b65847b16a3 +Subproject commit 1ea05a3eee0a746c102dea42e729b31e4ebfca35 diff --git a/tests/core.js b/tests/core.js index 8cf0fcc..919d0c2 100644 --- a/tests/core.js +++ b/tests/core.js @@ -54,7 +54,7 @@ if(!browser) { for(var _fileAi = 0; _fileAi < _fileA.length; ++_fileAi) if(test_file(_fileA[_fileAi])) fileA.push(_fileA[_fileAi]); } -var can_write_numbers = typeof Set !== "undefined" && typeof Array.prototype.findIndex == "function" && typeof Uint8Array !== "undefined" && typeof Uint8Array.prototype.indexOf == "function"; +var can_write_numbers = typeof Array.prototype.findIndex == "function" && typeof Uint8Array !== "undefined" && typeof Uint8Array.prototype.indexOf == "function"; /* Excel enforces 31 character sheet limit, although technical file limit is 255 */ function fixsheetname(x/*:string*/)/*:string*/ { return x.substr(0,31); } @@ -1549,6 +1549,7 @@ describe('write features', function() { it('should handle non-string values for "s" cells', function() {[ "xlsx", "xlsb", "xls", "biff5", "biff2", "xlml", "numbers", "ods", "fods", "wk3", "csv", "txt", "sylk", "html", "dif", "dbf", "wk1", "rtf", "prn" ].forEach(function(fmt) { + if(fmt == "numbers" && !can_write_numbers) return; var ws = X.utils.aoa_to_sheet([ ["String", "123"], ["Number", 123], diff --git a/types/index.d.ts b/types/index.d.ts index 75423ac..12be899 100644 --- a/types/index.d.ts +++ b/types/index.d.ts @@ -536,20 +536,52 @@ export type SheetKeys = string | MarginInfo | SheetType; /** General object representing a Sheet (worksheet or chartsheet) */ export interface Sheet { /** - * Indexing with a cell address string maps to a cell object + * Sparse-mode store cells with keys corresponding to A1-style address + * Dense-mode store cells in the '!data' key * Special keys start with '!' */ - [cell: string]: CellObject | SheetKeys | any; + [cell: string]: CellObject | CellObject[][] | SheetKeys | any; + + /** + * Dense-mode worksheets store data in an array of arrays + * + * Cells are accessed with sheet['!data'][R][C] (where R and C are 0-indexed) + */ + '!data'?: CellObject[][]; /** Sheet type */ '!type'?: SheetType; - /** Sheet Range */ + /** Sheet Range (A1-style) */ '!ref'?: string; /** Page Margins */ '!margins'?: MarginInfo; } +/** General object representing a dense Sheet (worksheet or chartsheet) */ +export interface DenseSheet extends Sheet { + /** + * Special keys start with '!' + * Dense-mode worksheets store data in the '!data' key + */ + [cell: string]: CellObject[][] | SheetKeys; + + /** + * Dense-mode worksheets store data in an array of arrays + * + * Cells are accessed with sheet['!data'][R][C] (where R and C are 0-indexed) + */ + '!data': CellObject[][]; +} +/** General object representing a sparse Sheet (worksheet or chartsheet) */ +export interface SparseSheet extends Sheet { + /** + * Sparse-mode store cells with keys corresponding to A1-style address + * Cells are accessed with sheet[addr] + */ + '!data': never; +} + /** AutoFilter properties */ export interface AutoFilterInfo { @@ -582,6 +614,15 @@ export interface WorkSheet extends Sheet { /** AutoFilter info */ '!autofilter'?: AutoFilterInfo; } +/** Dense Worksheet Object */ +export interface DenseWorkSheet extends DenseSheet { + /** + * Dense-mode worksheets store data in an array of arrays + * + * Cells are accessed with sheet['!data'][R][C] (where R and C are 0-indexed) + */ + '!data': CellObject[][]; +} /** * Worksheet Object with CellObject type diff --git a/xlsx.flow.js b/xlsx.flow.js index 6d41115..5bbd07c 100644 --- a/xlsx.flow.js +++ b/xlsx.flow.js @@ -1,10 +1,10 @@ /*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */ /* vim: set ts=2: */ /*exported XLSX */ -/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false, Set:false */ +/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false */ var XLSX = {}; function make_xlsx_lib(XLSX){ -XLSX.version = '0.18.12'; +XLSX.version = '0.19.0'; var current_codepage = 1200, current_ansi = 1252; /*:: declare var cptable:any; */ /*global cptable:true, window */ @@ -1669,7 +1669,7 @@ sleuth_fat(difat_start, difat_sec_cnt, sectors, ssz, fat_addrs); /** Chains */ var sector_list/*:SectorList*/ = make_sector_list(sectors, dir_start, fat_addrs, ssz); -sector_list[dir_start].name = "!Directory"; +if(dir_start < sector_list.length) sector_list[dir_start].name = "!Directory"; if(nmfs > 0 && minifat_start !== ENDOFCHAIN) sector_list[minifat_start].name = "!MiniFAT"; sector_list[fat_addrs[0]].name = "!FAT"; sector_list.fat_addrs = fat_addrs; @@ -4285,7 +4285,6 @@ function fix_col(cstr/*:string*/)/*:string*/ { return cstr.replace(/^([A-Z])/,"$ function unfix_col(cstr/*:string*/)/*:string*/ { return cstr.replace(/^\$([A-Z])/,"$1"); } function split_cell(cstr/*:string*/)/*:Array*/ { return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(","); } -//function decode_cell(cstr/*:string*/)/*:CellAddress*/ { var splt = split_cell(cstr); return { c:decode_col(splt[0]), r:decode_row(splt[1]) }; } function decode_cell(cstr/*:string*/)/*:CellAddress*/ { var R = 0, C = 0; for(var i = 0; i < cstr.length; ++i) { @@ -4295,7 +4294,6 @@ function decode_cell(cstr/*:string*/)/*:CellAddress*/ { } return { c: C - 1, r:R - 1 }; } -//function encode_cell(cell/*:CellAddress*/)/*:string*/ { return encode_col(cell.c) + encode_row(cell.r); } function encode_cell(cell/*:CellAddress*/)/*:string*/ { var col = cell.c + 1; var s=""; @@ -4388,9 +4386,10 @@ function sheet_to_workbook(sheet/*:Worksheet*/, opts)/*:Workbook*/ { function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksheet*/ { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; - var ws/*:Worksheet*/ = _ws || (dense ? ([]/*:any*/) : ({}/*:any*/)); + var ws/*:Worksheet*/ = _ws || ({}/*:any*/); + if(dense && !ws["!data"]) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -4409,13 +4408,19 @@ function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksh range.e.r = Math.max(range.e.r, _range.e.r); if(_R == -1) range.e.r = _R = _range.e.r + 1; } + var row = []; for(var R = 0; R != data.length; ++R) { if(!data[R]) continue; if(!Array.isArray(data[R])) throw new Error("aoa_to_sheet expects an array of arrays"); + var __R = _R + R, __Rstr = "" + (__R + 1); + if(dense) { + if(!ws["!data"][__R]) ws["!data"][__R] = []; + row = ws["!data"][__R]; + } for(var C = 0; C != data[R].length; ++C) { if(typeof data[R][C] === 'undefined') continue; var cell/*:Cell*/ = ({v: data[R][C] }/*:any*/); - var __R = _R + R, __C = _C + C; + var __C = _C + C; if(range.s.r > __R) range.s.r = __R; if(range.s.c > __C) range.s.c = __C; if(range.e.r < __R) range.e.r = __R; @@ -4439,11 +4444,10 @@ function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksh else cell.t = 's'; } if(dense) { - if(!ws[__R]) ws[__R] = []; - if(ws[__R][__C] && ws[__R][__C].z) cell.z = ws[__R][__C].z; - ws[__R][__C] = cell; + if(row[__C] && row[__C].z) cell.z = row[__C].z; + row[__C] = cell; } else { - var cell_ref = encode_cell(({c:__C,r:__R}/*:any*/)); + var cell_ref = encode_col(__C) + __Rstr/*:any*/; if(ws[cell_ref] && ws[cell_ref].z) cell.z = ws[cell_ref].z; ws[cell_ref] = cell; } @@ -7994,6 +7998,7 @@ function sheet_to_dbf(ws/*:Worksheet*/, opts/*:WriteOpts*/) { case 'N': var _n = "0"; if(typeof data[i][j] == "number") _n = data[i][j].toFixed(coldecimals[j]||0); + if(_n.length > colwidths[j]) _n = _n.slice(0, colwidths[j]); // addresses decimal > width for(hcnt=0; hcnt < colwidths[j]-_n.length; ++hcnt) rout.write_shift(1, 0x20); rout.write_shift(1, _n, "sbcs"); break; @@ -8257,7 +8262,7 @@ var SYLK = /*#__PURE__*/(function() { /* TODO: codepage */ var preamble/*:Array*/ = ["ID;PSheetJS;N;E"], o/*:Array*/ = []; var r = safe_decode_range(ws['!ref']), cell/*:Cell*/; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var RS = "\r\n"; var d1904 = (((wb||{}).Workbook||{}).WBProps||{}).date1904; @@ -8269,10 +8274,10 @@ var SYLK = /*#__PURE__*/(function() { preamble.push("B;Y" + (r.e.r - r.s.r + 1) + ";X" + (r.e.c - r.s.c + 1) + ";D" + [r.s.c,r.s.r,r.e.c,r.e.r].join(" ")); preamble.push("O;L;D;B" + (d1904 ? ";V4" : "") + ";K47;G100 0.001"); for(var R = r.s.r; R <= r.e.r; ++R) { + if(dense && !ws["!data"][R]) continue; var p = []; for(var C = r.s.c; C <= r.e.c; ++C) { - var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C]: ws[coord]; + cell = dense ? ws["!data"][R][C] : ws[encode_col(C) + encode_row(R)]; if(!cell || (cell.v == null && (!cell.f || cell.F))) continue; p.push(write_ws_cell_sylk(cell, ws, R, C, opts)); // TODO: pass date1904 info } @@ -8345,7 +8350,7 @@ var DIF = /*#__PURE__*/(function() { function sheet_to_dif(ws/*:Worksheet*//*::, opts:?any*/)/*:string*/ { var _DIF_XL = DIF_XL; var r = safe_decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var o/*:Array*/ = [ "TABLE\r\n0,1\r\n\"sheetjs\"\r\n", "VECTORS\r\n0," + (r.e.r - r.s.r + 1) + "\r\n\"\"\r\n", @@ -8353,9 +8358,10 @@ var DIF = /*#__PURE__*/(function() { "DATA\r\n0,0\r\n\"\"\r\n" ]; for(var R = r.s.r; R <= r.e.r; ++R) { + var row = dense ? ws["!data"][R] : []; var p = "-1,0\r\nBOT\r\n"; for(var C = r.s.c; C <= r.e.c; ++C) { - var cell/*:Cell*/ = dense ? (ws[R] && ws[R][C]) : ws[encode_cell({r:R,c:C})]; + var cell/*:Cell*/ = dense ? (row && row[C]) : ws[encode_cell({r:R,c:C})]; if(cell == null) { p +=("1,0\r\n\"\"\r\n"); continue;} switch(cell.t) { case 'n': @@ -8450,11 +8456,11 @@ var ETH = /*#__PURE__*/(function() { if(!ws || !ws['!ref']) return ""; var o/*:Array*/ = [], oo/*:Array*/ = [], cell, coord = ""; var r = decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { for(var C = r.s.c; C <= r.e.c; ++C) { coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null || cell.t === 'z') continue; oo = ["cell", coord, 't']; switch(cell.t) { @@ -8576,7 +8582,8 @@ var PRN = /*#__PURE__*/(function() { var o = opts || {}; var sep = ""; if(DENSE != null && o.dense == null) o.dense = DENSE; - var ws/*:Worksheet*/ = o.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws/*:Worksheet*/ = ({}/*:any*/); + if(o.dense) ws["!data"] = []; var range/*:Range*/ = ({s: {c:0, r:0}, e: {c:0, r:0}}/*:any*/); if(str.slice(0,4) == "sep=") { @@ -8622,7 +8629,7 @@ var PRN = /*#__PURE__*/(function() { cell.v = s; } if(cell.t == 'z'){} - else if(o.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = cell; } + else if(o.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = cell; } else ws[encode_cell({c:C,r:R})] = cell; start = end+1; startcc = str.charCodeAt(start); if(range.e.c < C) range.e.c = C; @@ -8678,12 +8685,12 @@ var PRN = /*#__PURE__*/(function() { function sheet_to_prn(ws/*:Worksheet*//*::, opts:?any*/)/*:string*/ { var o/*:Array*/ = []; var r = safe_decode_range(ws['!ref']), cell/*:Cell*/; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { var oo/*:Array*/ = []; for(var C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null) { oo.push(" "); continue; } var w = (cell.w || (format_cell(cell), cell.w) || "").slice(0,10); while(w.length < 10) w += " "; @@ -8745,8 +8752,9 @@ var WK_ = /*#__PURE__*/(function() { if(!d) return d; var o = opts || {}; if(DENSE != null && o.dense == null) o.dense = DENSE; - var s/*:Worksheet*/ = ((o.dense ? [] : {})/*:any*/), n = "Sheet1", next_n = "", sidx = 0; - var sheets = {}, snames = [], realnames = []; + var s/*:Worksheet*/ = ({}/*:any*/), n = "Sheet1", next_n = "", sidx = 0; + var sheets = {}, snames = [], realnames = [], sdata = []; + if(o.dense) sdata = s["!data"] = []; var refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; var sheetRows = o.sheetRows || 0; @@ -8791,13 +8799,13 @@ var WK_ = /*#__PURE__*/(function() { s["!ref"] = encode_range(refguess); sheets[n] = s; snames.push(n); - s = (o.dense ? [] : {}); + s = ({}/*:any*/); if(o.dense) sdata = s["!data"] = []; refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; sidx = val[3]; n = next_n || "Sheet" + (sidx + 1); next_n = ""; } } - var tmpcell = o.dense ? (s[val[0].r]||[])[val[0].c] : s[encode_cell(val[0])]; + var tmpcell = o.dense ? (sdata[val[0].r]||[])[val[0].c] : s[encode_cell(val[0])]; if(tmpcell) { tmpcell.t = val[1].t; tmpcell.v = val[1].v; if(val[1].z != null) tmpcell.z = val[1].z; @@ -8805,8 +8813,8 @@ var WK_ = /*#__PURE__*/(function() { break; } if(o.dense) { - if(!s[val[0].r]) s[val[0].r] = []; - s[val[0].r][val[0].c] = val[1]; + if(!sdata[val[0].r]) sdata[val[0].r] = []; + sdata[val[0].r][val[0].c] = val[1]; } else s[encode_cell(val[0])] = val[1]; break; case 0x5405: o.works2 = true; break; @@ -8832,14 +8840,14 @@ var WK_ = /*#__PURE__*/(function() { s["!ref"] = encode_range(refguess); sheets[n] = s; snames.push(n); - s = (o.dense ? [] : {}); + s = ({}/*:any*/); if(o.dense) sdata = s["!data"] = []; refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; sidx = val[3]; n = "Sheet" + (sidx + 1); } if(sheetRows > 0 && val[0].r >= sheetRows) break; if(o.dense) { - if(!s[val[0].r]) s[val[0].r] = []; - s[val[0].r][val[0].c] = val[1]; + if(!sdata[val[0].r]) sdata[val[0].r] = []; + sdata[val[0].r][val[0].c] = val[1]; } else s[encode_cell(val[0])] = val[1]; if(refguess.e.c < val[0].c) refguess.e.c = val[0].c; if(refguess.e.r < val[0].r) refguess.e.r = val[0].r; @@ -8874,18 +8882,17 @@ var WK_ = /*#__PURE__*/(function() { if(o.type == "string") throw new Error("Cannot write WK1 to JS string"); var ba = buf_array(); var range = safe_decode_range(ws["!ref"]); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cols = []; write_biff_rec(ba, 0x00, write_BOF_WK1(0x0406)); write_biff_rec(ba, 0x06, write_RANGE(range)); var max_R = Math.min(range.e.r, 8191); + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= max_R; ++R) { var rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); - var ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + for(C = range.s.c; C <= range.e.c; ++C) { + var cell = dense ? (ws["!data"][R]||[])[C] : ws[cols[C] + rr]; if(!cell || cell.t == "z") continue; /* TODO: formula records */ if(cell.t == "n") { @@ -8917,7 +8924,7 @@ var WK_ = /*#__PURE__*/(function() { var ws = wb.Sheets[wb.SheetNames[i]]; if(!ws || !ws["!ref"]) continue; var range = safe_decode_range(ws["!ref"]); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cols = []; var max_R = Math.min(range.e.r, 8191); for(var R = range.s.r; R <= max_R; ++R) { @@ -8925,7 +8932,7 @@ var WK_ = /*#__PURE__*/(function() { for(var C = range.s.c; C <= range.e.c; ++C) { if(R === range.s.r) cols[C] = encode_col(C); var ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; if(!cell || cell.t == "z") continue; /* TODO: FORMULA19 NUMBER18 records */ if(cell.t == "n") { @@ -9636,7 +9643,7 @@ var WK_ = /*#__PURE__*/(function() { prep_blob(d, 0); var o = opts || {}; if(DENSE != null && o.dense == null) o.dense = DENSE; - var s/*:Worksheet*/ = ((o.dense ? [] : {})/*:any*/); + var s/*:Worksheet*/ = ({}/*:any*/); if(o.dense) s["!data"] = []; var SST = [], sname = "", formulae = []; var range = {s:{r:-1,c:-1}, e:{r:-1,c:-1}}; var cnt = 0, type = 0, C = 0, R = 0; @@ -9673,7 +9680,7 @@ var WK_ = /*#__PURE__*/(function() { case 0x0601: { /* BOS */ var sidx = p.read_shift(2); - s = ((o.dense ? [] : {})/*:any*/); + s = ({}/*:any*/); if(o.dense) s["!data"] = []; range.s.c = p.read_shift(2); range.e.c = p.read_shift(2); range.s.r = p.read_shift(4); @@ -9710,6 +9717,7 @@ var WK_ = /*#__PURE__*/(function() { R = p.read_shift(4), cnt = p.read_shift(4); if(range.s.r > R) range.s.r = R; if(range.e.r < R + cnt - 1) range.e.r = R + cnt - 1; + var CC = encode_col(C); while(p.l < p.length) { var cell = { t: "z" }; var flags = p.read_shift(1); @@ -9732,10 +9740,10 @@ var WK_ = /*#__PURE__*/(function() { default: throw "Unsupported delta for QPW cell type " + (flags & 0x1F); } if(!(!o.sheetStubs && cell.t == "z")) { - if(Array.isArray(s)) { - if(!s[R]) s[R] = []; - s[R][C] = cell; - } else s[encode_cell({r:R, c:C})] = cell; + if(s["!data"] != null) { + if(!s["!data"][R]) s["!data"][R] = []; + s["!data"][R][C] = cell; + } else s[CC + encode_row(R)] = cell; } ++R; --cnt; while(mul-- > 0 && cnt >= 0) { @@ -9751,10 +9759,10 @@ var WK_ = /*#__PURE__*/(function() { default: throw "Cannot apply repeat for QPW cell type " + (flags & 0x1F); } if(!(!o.sheetStubs && cell.t == "z")) { - if(Array.isArray(s)) { - if(!s[R]) s[R] = []; - s[R][C] = cell; - } else s[encode_cell({r:R, c:C})] = cell; + if(s["!data"] != null) { + if(!s["!data"][R]) s["!data"][R] = []; + s["!data"][R][C] = cell; + } else s[CC + encode_row(R)] = cell; } ++R; --cnt; } @@ -10394,14 +10402,18 @@ function rtf_to_sheet(d, opts) { } function rtf_to_sheet_str(str, opts) { var o = opts || {}; - var ws = o.dense ? [] : {}; + var ws = {}; + var dense = o.dense; + if (dense) + ws["!data"] = []; var rows = str.match(/\\trowd[\s\S]*?\\row\b/g); if (!rows) throw new Error("RTF missing table"); var range = { s: { c: 0, r: 0 }, e: { c: 0, r: rows.length - 1 } }; + var row = []; rows.forEach(function(rowtf, R) { - if (Array.isArray(ws)) - ws[R] = []; + if (dense) + row = ws["!data"][R] = []; var rtfre = /\\[\w\-]+\b/g; var last_index = 0; var res; @@ -10427,8 +10439,8 @@ function rtf_to_sheet_str(str, opts) { cell.w = cell.v; cell.v = fuzzynum(cell.v); } - if (Array.isArray(ws)) - ws[R][C] = cell; + if (dense) + row[C] = cell; else ws[encode_cell({ r: R, c: C })] = cell; } @@ -10456,15 +10468,17 @@ function sheet_to_rtf(ws, opts) { if (!ws["!ref"]) return o[0] + "}"; var r = safe_decode_range(ws["!ref"]), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, row = []; for (var R = r.s.r; R <= r.e.r; ++R) { o.push("\\trowd\\trautofit1"); for (var C = r.s.c; C <= r.e.c; ++C) o.push("\\cellx" + (C + 1)); o.push("\\pard\\intbl"); + if (dense) + row = ws["!data"][R] || []; for (C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({ r: R, c: C }); - cell = dense ? (ws[R] || [])[C] : ws[coord]; + cell = dense ? row[C] : ws[coord]; if (!cell || cell.v == null && (!cell.f || cell.F)) { o.push(" \\cell"); continue; @@ -12162,18 +12176,18 @@ function write_vml_comment(x, _shapeid)/*:string*/ { '' ].join(""); } -function sheet_insert_comments(sheet, comments/*:Array*/, threaded/*:boolean*/, people/*:?Array*/) { - var dense = Array.isArray(sheet); +function sheet_insert_comments(sheet/*:WorkSheet*/, comments/*:Array*/, threaded/*:boolean*/, people/*:?Array*/) { + var dense = sheet["!data"] != null; var cell/*:Cell*/; comments.forEach(function(comment) { var r = decode_cell(comment.ref); if(dense) { - if(!sheet[r.r]) sheet[r.r] = []; - cell = sheet[r.r][r.c]; + if(!sheet["!data"][r.r]) sheet["!data"][r.r] = []; + cell = sheet["!data"][r.r][r.c]; } else cell = sheet[comment.ref]; if (!cell) { cell = ({t:"z"}/*:any*/); - if(dense) sheet[r.r][r.c] = cell; + if(dense) sheet["!data"][r.r][r.c] = cell; else sheet[comment.ref] = cell; var range = safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1"); if(range.s.r > r.r) range.s.r = r.r; @@ -12181,7 +12195,7 @@ function sheet_insert_comments(sheet, comments/*:Array*/, threaded/* if(range.s.c > r.c) range.s.c = r.c; if(range.e.c < r.c) range.e.c = r.c; var encoded = encode_range(range); - if (encoded !== sheet["!ref"]) sheet["!ref"] = encoded; + sheet["!ref"] = encoded; } if (!cell.c) cell.c = []; @@ -12199,7 +12213,6 @@ function sheet_insert_comments(sheet, comments/*:Array*/, threaded/* cell.c.push(o); }); } - /* 18.7 Comments */ function parse_comments_xml(data/*:string*/, opts)/*:Array*/ { /* 18.7.6 CT_Comments */ @@ -15265,7 +15278,7 @@ function parse_ws_xml(data/*:?string*/, opts, idx/*:number*/, rels, wb/*:WBWBPro if(DENSE != null && opts.dense == null) opts.dense = DENSE; /* 18.3.1.99 worksheet CT_Worksheet */ - var s = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var s = ({}/*:any*/); if(opts.dense) s["!data"] = []; var refguess/*:Range*/ = ({s: {r:2000000, c:2000000}, e: {r:0, c:0} }/*:any*/); var data1 = "", data2 = ""; @@ -15394,7 +15407,7 @@ function write_ws_xml_protection(sp)/*:string*/ { } function parse_ws_xml_hlinks(s, data/*:Array*/, rels) { - var dense = Array.isArray(s); + var dense = s["!data"] != null; for(var i = 0; i != data.length; ++i) { var val = parsexmltag(utf8read(data[i]), true); if(!val.ref) return; @@ -15410,11 +15423,11 @@ function parse_ws_xml_hlinks(s, data/*:Array*/, rels) { if(val.tooltip) { val.Tooltip = val.tooltip; delete val.tooltip; } var rng = safe_decode_range(val.ref); for(var R=rng.s.r;R<=rng.e.r;++R) for(var C=rng.s.c;C<=rng.e.c;++C) { - var addr = encode_cell({c:C,r:R}); + var addr = encode_col(C) + encode_row(R); if(dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:"z",v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:"z",v:undefined}; + s["!data"][R][C].l = val; } else { if(!s[addr]) s[addr] = {t:"z",v:undefined}; s[addr].l = val; @@ -15566,7 +15579,7 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th var do_format = Array.isArray(styles.CellXf), cf; var arrayf/*:Array<[Range, string]>*/ = []; var sharedf = []; - var dense = Array.isArray(s); + var dense = s["!data"] != null; var rows/*:Array*/ = [], rowobj = {}, rowrite = false; var sheetStubs = !!opts.sheetStubs; for(var marr = sdata.split(rowregex), mt = 0, marrlen = marr.length; mt != marrlen; ++mt) { @@ -15731,8 +15744,8 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th } if(dense) { var _r = decode_cell(tag.r); - if(!s[_r.r]) s[_r.r] = []; - s[_r.r][_r.c] = p; + if(!s["!data"][_r.r]) s["!data"][_r.r] = []; + s["!data"][_r.r][_r.c] = p; } else s[tag.r] = p; } } @@ -15741,7 +15754,7 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th function write_ws_xml_data(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbook*//*::, rels*/)/*:string*/ { var o/*:Array*/ = [], r/*:Array*/ = [], range = safe_decode_range(ws['!ref']), cell="", ref, rr = "", cols/*:Array*/ = [], R=0, C=0, rows = ws['!rows']; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var params = ({r:rr}/*:any*/), row/*:RowInfo*/, height = -1; for(C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(R = range.s.r; R <= range.e.r; ++R) { @@ -15749,7 +15762,7 @@ function write_ws_xml_data(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbook rr = encode_row(R); for(C = range.s.c; C <= range.e.c; ++C) { ref = cols[C] + rr; - var _cell = dense ? (ws[R]||[])[C]: ws[ref]; + var _cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(_cell === undefined) continue; if((cell = write_ws_xml_cell(_cell, ref, ws, opts, idx, wb)) != null) r.push(cell); } @@ -15945,12 +15958,13 @@ function write_BrtRowHdr(R/*:number*/, range, ws) { o.l += 4; var caddr = {r:R, c:0}; + var dense = ws["!data"] != null; for(var i = 0; i < 16; ++i) { if((range.s.c > ((i+1) << 10)) || (range.e.c < (i << 10))) continue; var first = -1, last = -1; for(var j = (i<<10); j < ((i+1)<<10); ++j) { caddr.c = j; - var cell = Array.isArray(ws) ? (ws[caddr.r]||[])[caddr.c] : ws[encode_cell(caddr)]; + var cell = dense ? (ws["!data"][caddr.r]||[])[caddr.c] : ws[encode_cell(caddr)]; if(cell) { if(first < 0) first = j; last = j; } } if(first < 0) continue; @@ -16414,7 +16428,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ var opts = _opts || {}; if(!rels) rels = {'!id':{}}; if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var s/*:Worksheet*/ = (opts.dense ? [] : {}); + var s/*:Worksheet*/ = ({}); if(opts.dense) s["!data"] = []; var ref; var refguess = {s: {r:2000000, c:2000000}, e: {r:0, c:0} }; @@ -16490,7 +16504,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ } if((cf = styles.CellXf[val[0].iStyleRef])) safe_format(p,cf.numFmtId,null,opts, themes, styles); C = val[0].c == -1 ? C + 1 : val[0].c; - if(opts.dense) { if(!s[R]) s[R] = []; s[R][C] = p; } + if(opts.dense) { if(!s["!data"][R]) s["!data"][R] = []; s["!data"][R][C] = p; } else s[encode_col(C) + rr] = p; if(opts.cellFormula) { af = false; @@ -16523,7 +16537,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ if(!opts.sheetStubs || pass) break; p = ({t:'z',v:void 0}/*:any*/); C = val[0].c == -1 ? C + 1 : val[0].c; - if(opts.dense) { if(!s[R]) s[R] = []; s[R][C] = p; } + if(opts.dense) { if(!s["!data"][R]) s["!data"][R] = []; s["!data"][R][C] = p; } else s[encode_col(C) + rr] = p; if(refguess.s.r > row.r) refguess.s.r = row.r; if(refguess.s.c > C) refguess.s.c = C; @@ -16554,11 +16568,11 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ } for(R=val.rfx.s.r;R<=val.rfx.e.r;++R) for(C=val.rfx.s.c;C<=val.rfx.e.c;++C) { if(opts.dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:'z',v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:'z',v:undefined}; + s["!data"][R][C].l = val; } else { - addr = encode_cell({c:C,r:R}); + addr = encode_col(C) + encode_row(R); if(!s[addr]) s[addr] = {t:'z',v:undefined}; s[addr].l = val; } @@ -16568,14 +16582,14 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ case 0x01AA: /* 'BrtArrFmla' */ if(!opts.cellFormula) break; arrayf.push(val); - cell = ((opts.dense ? s[R][C] : s[encode_col(C) + rr])/*:any*/); + cell = ((opts.dense ? s["!data"][R][C] : s[encode_col(C) + rr])/*:any*/); cell.f = stringify_formula(val[1], refguess, {r:row.r, c:C}, supbooks, opts); cell.F = encode_range(val[0]); break; case 0x01AB: /* 'BrtShrFmla' */ if(!opts.cellFormula) break; sharedf[encode_cell(val[0].s)] = val[1]; - cell = (opts.dense ? s[R][C] : s[encode_col(C) + rr]); + cell = (opts.dense ? s["!data"][R][C] : s[encode_col(C) + rr]); cell.f = stringify_formula(val[1], refguess, {r:row.r, c:C}, supbooks, opts); break; @@ -16768,7 +16782,7 @@ function write_ws_bin_cell(ba/*:BufArray*/, cell/*:Cell*/, R/*:number*/, C/*:num function write_CELLTABLE(ba, ws/*:Worksheet*/, idx/*:number*/, opts/*::, wb:Workbook*/) { var range = safe_decode_range(ws['!ref'] || "A1"), ref, rr = "", cols/*:Array*/ = []; write_record(ba, 0x0091 /* BrtBeginSheetData */); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cap = range.e.r; if(ws['!rows']) cap = Math.max(range.e.r, ws['!rows'].length - 1); for(var R = range.s.r; R <= cap; ++R) { @@ -16781,7 +16795,7 @@ function write_CELLTABLE(ba, ws/*:Worksheet*/, idx/*:number*/, opts/*::, wb:Work /* *16384CELL */ if(R === range.s.r) cols[C] = encode_col(C); ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; if(!cell) { last_seen = false; continue; } /* write cell */ last_seen = write_ws_bin_cell(ba, cell, R, C, opts, ws, last_seen); @@ -16972,7 +16986,10 @@ function parse_chart(data/*:?string*/, name/*:string*/, opts, rels, wb, csheet) refguess.e.c = C; col = encode_col(C); cache[0].forEach(function(n,i) { - cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; + if(cs["!data"]) { + if(!cs["!data"][i]) cs["!data"][i] = []; + cs["!data"][i][C] = {t:'n', v:n, z:cache[1] }; + } else cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; R = i; }); if(refguess.e.r < R) refguess.e.r = R; @@ -18104,7 +18121,7 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { var Rn; var state = [], tmp; if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var sheets = {}, sheetnames/*:Array*/ = [], cursheet/*:Worksheet*/ = (opts.dense ? [] : {}), sheetname = ""; + var sheets = {}, sheetnames/*:Array*/ = [], cursheet/*:Worksheet*/ = ({}), sheetname = ""; if(opts.dense) cursheet["!data"] = []; var cell = ({}/*:any*/), row = {};// eslint-disable-line no-unused-vars var dtag = xlml_parsexmltag(''), didx = 0; var c = 0, r = 0; @@ -18137,8 +18154,8 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { if(comments.length > 0) cell.c = comments; if((!opts.sheetRows || opts.sheetRows > r) && cell.v !== void 0) { if(opts.dense) { - if(!cursheet[r]) cursheet[r] = []; - cursheet[r][c] = cell; + if(!cursheet["!data"][r]) cursheet["!data"][r] = []; + cursheet["!data"][r][c] = cell; } else cursheet[encode_col(c) + encode_row(r)] = cell; } if(cell.HRef) { @@ -18158,8 +18175,8 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { for(var cmd = r; cmd <= rr; ++cmd) { if(cma > c || cmd > r) { if(opts.dense) { - if(!cursheet[cmd]) cursheet[cmd] = []; - cursheet[cmd][cma] = {t:'z'}; + if(!cursheet["!data"][cmd]) cursheet["!data"][cmd] = []; + cursheet["!data"][cmd][cma] = {t:'z'}; } else cursheet[encode_col(cma) + encode_row(cmd)] = {t:'z'}; } } @@ -18218,7 +18235,7 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { state.push([Rn[3], false]); tmp = xlml_parsexmltag(Rn[0]); sheetname = unescapexml(tmp.Name); - cursheet = (opts.dense ? [] : {}); + cursheet = ({}); if(opts.dense) cursheet["!data"] = []; merges = []; arrayf = []; rowinfo = []; @@ -19074,7 +19091,7 @@ function write_ws_xlml_table(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbo if(n.hidden) k['ss:Hidden']="1"; o.push(writextag("Column",null,k)); }); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = range.s.r; R <= range.e.r; ++R) { var row = [write_ws_xlml_row(R, (ws['!rows']||[])[R])]; for(var C = range.s.c; C <= range.e.c; ++C) { @@ -19089,7 +19106,7 @@ function write_ws_xlml_table(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbo } if(skip) continue; var addr = {r:R,c:C}; - var ref = encode_cell(addr), cell = dense ? (ws[R]||[])[C] : ws[ref]; + var ref = encode_col(C) + encode_row(R), cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; row.push(write_ws_xlml_cell(cell, ref, ws, opts, idx, wb, addr)); } row.push(""); @@ -19251,7 +19268,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { var wb = ({opts:{}}/*:any*/); var Sheets = {}; if(DENSE != null && options.dense == null) options.dense = DENSE; - var out/*:Worksheet*/ = ((options.dense ? [] : {})/*:any*/); + var out/*:Worksheet*/ = ({}/*:any*/); if(options.dense) out["!data"] = []; var Directory = {}; var range/*:Range*/ = ({}/*:any*/); var last_formula = null; @@ -19304,8 +19321,8 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { } { if(options.dense) { - if(!out[cell.r]) out[cell.r] = []; - out[cell.r][cell.c] = line; + if(!out["!data"][cell.r]) out["!data"][cell.r] = []; + out["!data"][cell.r][cell.c] = line; } else out[last_cell] = line; } }; @@ -19471,7 +19488,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { Workbook.Sheets.push(wsprops); } if(cur_sheet === "") Preamble = out; else Sheets[cur_sheet] = out; - out = ((options.dense ? [] : {})/*:any*/); + out = ({}/*:any*/); if(options.dense) out["!data"] = []; } break; case 0x0009: case 0x0209: case 0x0409: case 0x0809 /* BOF */: { if(opts.biff === 8) opts.biff = { @@ -19491,7 +19508,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { if(val.BIFFVer == 0 && val.dt == 0x1000) { opts.biff = 5; seen_codepage = true; set_cp(opts.codepage = 28591); } if(opts.biff == 8 && val.BIFFVer == 0 && val.dt == 16) opts.biff = 2; if(file_depth++) break; - out = ((options.dense ? [] : {})/*:any*/); + out = ({}/*:any*/); if(options.dense) out["!data"] = []; if(opts.biff < 8 && !seen_codepage) { seen_codepage = true; set_cp(opts.codepage = options.codepage || 1252); } @@ -19514,7 +19531,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { wsprops = {Hidden:(Directory[s]||{hs:0}).hs, name:cur_sheet }; } break; case 0x0203 /* Number */: case 0x0003 /* BIFF2NUM */: case 0x0002 /* BIFF2INT */: { - if(out["!type"] == "chart") if(options.dense ? (out[val.r]||[])[val.c]: out[encode_cell({c:val.c, r:val.r})]) ++val.c; + if(out["!type"] == "chart") if(options.dense ? (out["!data"][val.r]||[])[val.c]: out[encode_col(val.c) + encode_row(val.r)]) ++val.c; temp_val = ({ixfe: val.ixfe, XF: XFs[val.ixfe]||{}, v:val.val, t:'n'}/*:any*/); if(BIFF2Fmt > 0) temp_val.z = BIFF2FmtTable[(temp_val.ixfe>>8) & 0x3F]; safe_format_xf(temp_val, options, wb.opts.Date1904); @@ -19551,7 +19568,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { var _fr = _f[0][0][1][0], _fc = _f[0][0][1][1]; var _fe = encode_cell({r:_fr, c:_fc}); if(sharedf[_fe]) temp_val.f = ""+stringify_formula(val.formula,range,val.cell,supbooks, opts); - else temp_val.F = ((options.dense ? (out[_fr]||[])[_fc]: out[_fe]) || {}).F; + else temp_val.F = ((options.dense ? (out["!data"][_fr]||[])[_fc]: out[_fe]) || {}).F; } else temp_val.f = ""+stringify_formula(val.formula,range,val.cell,supbooks, opts); } if(BIFF2Fmt > 0) temp_val.z = BIFF2FmtTable[(temp_val.ixfe>>8) & 0x3F]; @@ -19576,7 +19593,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { case 0x0021: case 0x0221 /* Array */: { arrayf.push(val); var _arraystart = encode_cell(val[0].s); - cc = options.dense ? (out[val[0].s.r]||[])[val[0].s.c] : out[_arraystart]; + cc = options.dense ? (out["!data"][val[0].s.r]||[])[val[0].s.c] : out[_arraystart]; if(options.cellFormula && cc) { if(!last_formula) break; /* technically unreachable */ if(!_arraystart || !cc) break; @@ -19590,7 +19607,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { /* TODO: capture range */ if(!last_formula) break; /* technically unreachable */ sharedf[encode_cell(last_formula.cell)]= val[0]; - cc = options.dense ? (out[last_formula.cell.r]||[])[last_formula.cell.c] : out[encode_cell(last_formula.cell)]; + cc = options.dense ? (out["!data"][last_formula.cell.r]||[])[last_formula.cell.c] : out[encode_cell(last_formula.cell)]; (cc||{}).f = ""+stringify_formula(val[0], range, lastcell, supbooks, opts); } } break; @@ -19655,25 +19672,25 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { case 0x01b8 /* HLink */: { for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR) for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC) { - cc = options.dense ? (out[rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; + cc = options.dense ? (out["!data"][rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; if(cc) cc.l = val[1]; } } break; case 0x0800 /* HLinkTooltip */: { for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR) for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC) { - cc = options.dense ? (out[rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; + cc = options.dense ? (out["!data"][rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; if(cc && cc.l) cc.l.Tooltip = val[1]; } } break; case 0x001c /* Note */: { if(opts.biff <= 5 && opts.biff >= 2) break; /* TODO: BIFF5 */ - cc = options.dense ? (out[val[0].r]||[])[val[0].c] : out[encode_cell(val[0])]; + cc = options.dense ? (out["!data"][val[0].r]||[])[val[0].c] : out[encode_cell(val[0])]; var noteobj = objects[val[2]]; if(!cc) { if(options.dense) { - if(!out[val[0].r]) out[val[0].r] = []; - cc = out[val[0].r][val[0].c] = ({t:"z"}/*:any*/); + if(!out["!data"][val[0].r]) out["!data"][val[0].r] = []; + cc = out["!data"][val[0].r][val[0].c] = ({t:"z"}/*:any*/); } else { cc = out[encode_cell(val[0])] = ({t:"z"}/*:any*/); } @@ -21283,20 +21300,20 @@ function write_ws_biff2_cell(ba/*:BufArray*/, cell/*:Cell*/, R/*:number*/, C/*:n } function write_ws_biff2(ba/*:BufArray*/, ws/*:Worksheet*/, idx/*:number*/, opts/*::, wb:Workbook*/) { - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var range = safe_decode_range(ws['!ref'] || "A1"), ref/*:string*/, rr = "", cols/*:Array*/ = []; if(range.e.c > 0xFF || range.e.r > 0x3FFF) { if(opts.WTF) throw new Error("Range " + (ws['!ref'] || "A1") + " exceeds format limit A1:IV16384"); range.e.c = Math.min(range.e.c, 0xFF); range.e.r = Math.min(range.e.c, 0x3FFF); - ref = encode_range(range); } + var row = []; + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= range.e.r; ++R) { + if(dense) row = ws["!data"][R] || []; rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); - ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + for(C = range.s.c; C <= range.e.c; ++C) { + var cell = dense ? row[C] : ws[cols[C] + rr]; if(!cell) continue; /* write cell */ write_ws_biff2_cell(ba, cell, R, C, opts); @@ -21307,7 +21324,6 @@ function write_ws_biff2(ba/*:BufArray*/, ws/*:Worksheet*/, idx/*:number*/, opts/ /* Based on test files */ function write_biff2_buf(wb/*:Workbook*/, opts/*:WriteOpts*/) { var o = opts || {}; - if(DENSE != null && o.dense == null) o.dense = DENSE; var ba = buf_array(); var idx = 0; for(var i=0;i*/ = []; var range = safe_decode_range(ws['!ref'] || "A1"); @@ -21451,12 +21467,14 @@ function write_ws_biff8(idx/*:number*/, opts, wb/*:Workbook*/) { if(b8) ws['!links'] = []; var comments = []; + var row = []; + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= range.e.r; ++R) { + if(dense) row = ws["!data"][R] || []; rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); + for(C = range.s.c; C <= range.e.c; ++C) { ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? row[C] : ws[ref]; if(!cell) continue; /* write cell */ write_ws_biff8_cell(ba, cell, R, C, opts); @@ -21613,8 +21631,8 @@ function write_biff_buf(wb/*:Workbook*/, opts/*:WriteOpts*/) { /* note: browser DOM element cannot see mso- style attrs, must parse */ function html_to_sheet(str/*:string*/, _opts)/*:Workbook*/ { var opts = _opts || {}; - if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var ws/*:Worksheet*/ = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var dense = (opts.dense != null) ? opts.dense : DENSE; + var ws/*:Worksheet*/ = ({}/*:any*/); if(dense) ws["!data"] = []; str = str.replace(//g, ""); var mtch/*:any*/ = str.match(/"); @@ -21660,7 +21678,7 @@ function html_to_sheet(str/*:string*/, _opts)/*:Workbook*/ { if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}/*:any*/); o.z = opts.dateNF || table_fmt[14]; } - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = o; } + if(dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = o; } else ws[encode_cell({r:R, c:C})] = o; C += CS; } @@ -21673,6 +21691,7 @@ function make_html_row(ws/*:Worksheet*/, r/*:Range*/, R/*:number*/, o/*:Sheet2HT var M/*:Array*/ = (ws['!merges'] ||[]); var oo/*:Array*/ = []; var sp = ({}/*:any*/); + var dense = ws["!data"] != null; for(var C = r.s.c; C <= r.e.c; ++C) { var RS = 0, CS = 0; for(var j = 0; j < M.length; ++j) { @@ -21682,8 +21701,8 @@ function make_html_row(ws/*:Worksheet*/, r/*:Range*/, R/*:number*/, o/*:Sheet2HT RS = M[j].e.r - M[j].s.r + 1; CS = M[j].e.c - M[j].s.c + 1; break; } if(RS < 0) continue; - var coord = encode_cell({r:R,c:C}); - var cell = o.dense ? (ws[R]||[])[C] : ws[coord]; + var coord = encode_col(C) + encode_row(R); + var cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; /* TODO: html entities */ var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; sp = ({}/*:any*/); @@ -21731,7 +21750,6 @@ function sheet_to_html(ws/*:Worksheet*/, opts/*:?Sheet2HTMLOpts*//*, wb:?Workboo var footer = o.footer != null ? o.footer : HTML_END; var out/*:Array*/ = [header]; var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); out.push(make_html_preamble(ws, r, o)); for(var R = r.s.r; R <= r.e.r; ++R) out.push(make_html_row(ws, r, R, o)); out.push("
" + footer); @@ -21746,7 +21764,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ } var opts = _opts || {}; - if(DENSE != null) opts.dense = DENSE; + var dense = ws["!data"] != null; var or_R = 0, or_C = 0; if(opts.origin != null) { if(typeof opts.origin == 'number') or_R = opts.origin; @@ -21811,7 +21829,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ l = Aelts[Aelti].getAttribute("href"); if(l.charAt(0) != "#") break; } if(l && l.charAt(0) != "#" && l.slice(0, 11).toLowerCase() != 'javascript:') o.l = ({ Target: l }); - if(opts.dense) { if(!ws[R + or_R]) ws[R + or_R] = []; ws[R + or_R][C + or_C] = o; } + if(dense) { if(!ws["!data"][R + or_R]) ws["!data"][R + or_R] = []; ws["!data"][R + or_R][C + or_C] = o; } else ws[encode_cell({c:C + or_C, r:R + or_R})] = o; if(range.e.c < C + or_C) range.e.c = C + or_C; C += CS; @@ -21827,7 +21845,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ function parse_dom_table(table/*:HTMLElement*/, _opts/*:?any*/)/*:Worksheet*/ { var opts = _opts || {}; - var ws/*:Worksheet*/ = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws/*:Worksheet*/ = ({}/*:any*/); if(opts.dense) ws["!data"] = []; return sheet_add_dom(ws, table, _opts); } @@ -22100,7 +22118,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { var sheetag/*:: = {name:"", '名称':""}*/; var rowtag/*:: = {'行号':""}*/; var Sheets = {}, SheetNames/*:Array*/ = []; - var ws = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws = ({}/*:any*/); if(opts.dense) ws["!data"] = []; var Rn, q/*:: :any = ({t:"", v:null, z:null, w:"",c:[],}:any)*/; var ctag = ({value:""}/*:any*/); var textp = "", textpidx = 0, textptag/*:: = {}*/; @@ -22144,7 +22162,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { sheetag = parsexmltag(Rn[0], false); R = C = -1; range.s.r = range.s.c = 10000000; range.e.r = range.e.c = 0; - ws = opts.dense ? ([]/*:any*/) : ({}/*:any*/); merges = []; + ws = ({}/*:any*/); if(opts.dense) ws["!data"] = []; merges = []; rowinfo = []; intable = true; } @@ -22164,7 +22182,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { case 'covered-table-cell': // 9.1.5 if(Rn[1] !== '/') ++C; if(opts.sheetStubs) { - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = {t:'z'}; } + if(opts.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = {t:'z'}; } else ws[encode_cell({r:R,c:C})] = {t:'z'}; } textp = ""; textR = []; @@ -22180,10 +22198,10 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { if((ctag['数据类型'] || ctag['value-type']) == "string") { q.t = "s"; q.v = unescapexml(ctag['string-value'] || ""); if(opts.dense) { - if(!ws[R]) ws[R] = []; - ws[R][C] = q; + if(!ws["!data"][R]) ws["!data"][R] = []; + ws["!data"][R][C] = q; } else { - ws[encode_cell({r:R,c:C})] = q; + ws[encode_col(C) + encode_row(R)] = q; } } C+= colpeat-1; @@ -22260,9 +22278,9 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { for(var rpt = 0; rpt < rowpeat; ++rpt) { colpeat = parseInt(ctag['number-columns-repeated']||"1", 10); if(opts.dense) { - if(!ws[R + rpt]) ws[R + rpt] = []; - ws[R + rpt][C] = rpt == 0 ? q : dup(q); - while(--colpeat > 0) ws[R + rpt][C + colpeat] = dup(q); + if(!ws["!data"][R + rpt]) ws["!data"][R + rpt] = []; + ws["!data"][R + rpt][C] = rpt == 0 ? q : dup(q); + while(--colpeat > 0) ws["!data"][R + rpt][C + colpeat] = dup(q); } else { ws[encode_cell({r:R + rpt,c:C})] = q; while(--colpeat > 0) ws[encode_cell({r:R + rpt,c:C + colpeat})] = dup(q); @@ -22847,7 +22865,7 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function o.push(' \n'); var R=0,C=0, range = decode_range(ws['!ref']||"A1"); var marr/*:Array*/ = ws['!merges'] || [], mi = 0; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; if(ws["!cols"]) { for(C = 0; C <= range.e.c; ++C) o.push(' \n'); } @@ -22873,7 +22891,7 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function break; } if(skip) { o.push(covered_cell_xml); continue; } - var ref = encode_cell({r:R, c:C}), cell = dense ? (ws[R]||[])[C]: ws[ref]; + var ref = encode_cell({r:R, c:C}), cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(cell && cell.f) { ct['table:formula'] = escapexml(csf_to_ods_formula(cell.f)); if(cell.F) { @@ -22983,9 +23001,10 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function var nfi = 69; wb.SheetNames.map(function(n) { return wb.Sheets[n]; }).forEach(function(ws) { if(!ws) return; + var dense = (ws["!data"] != null); var range = decode_range(ws["!ref"]); for(var R = 0; R <= range.e.r; ++R) for(var C = 0; C <= range.e.c; ++C) { - var c = Array.isArray(ws) ? (ws[R]||[])[C] : ws[encode_cell({r:R,c:C})]; + var c = dense ? (ws["!data"][R]||[])[C] : ws[encode_cell({r:R,c:C})]; if(!c || !c.z || c.z.toLowerCase() == "general") continue; if(!nfs[c.z]) { var out = write_number_format_ods(c.z, "N" + nfi); @@ -23143,29 +23162,22 @@ function u8str(u8) { function stru8(str) { return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); } -function u8contains(body, search) { - var L = body.indexOf(search[0]); - if (L == -1) - return false; - outer: - for (; L <= body.length - search.length; ++L) { - for (var j = 0; j < search.length; ++j) - if (body[L + j] != search[j]) - continue outer; - return true; - } - return false; -} function u8concat(u8a) { - var len = u8a.reduce(function(acc, x) { - return acc + x.length; - }, 0); + var len = 0; + for (var i = 0; i < u8a.length; ++i) + len += u8a[i].length; var out = new Uint8Array(len); var off = 0; - u8a.forEach(function(u8) { - out.set(u8, off); - off += u8.length; - }); + for (i = 0; i < u8a.length; ++i) { + var u8 = u8a[i], L = u8.length; + if (L < 250) { + for (var j = 0; j < L; ++j) + out[off++] = u8[j]; + } else { + out.set(u8, off); + off += L; + } + } return out; } function popcnt(x) { @@ -23190,7 +23202,7 @@ function writeDecimal128LE(buf, offset, value) { buf[offset + 15] |= value >= 0 ? 0 : 128; } function parse_varint49(buf, ptr) { - var l = ptr ? ptr[0] : 0; + var l = ptr.l; var usz = buf[l] & 127; varint: if (buf[l++] >= 128) { @@ -23216,8 +23228,7 @@ function parse_varint49(buf, ptr) { if (buf[l++] < 128) break varint; } - if (ptr) - ptr[0] = l; + ptr.l = l; return usz; } function write_varint49(v) { @@ -23258,9 +23269,9 @@ function write_varint49(v) { return usz[subarray](0, L); } function parse_packed_varints(buf) { - var ptr = [0]; + var ptr = { l: 0 }; var out = []; - while (ptr[0] < buf.length) + while (ptr.l < buf.length) out.push(parse_varint49(buf, ptr)); return out; } @@ -23320,50 +23331,49 @@ function varint_to_u64(buf) { return [lo >>> 0, hi >>> 0]; } function parse_shallow(buf) { - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { - var off = ptr[0]; + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { + var off = ptr.l; var num = parse_varint49(buf, ptr); var type = num & 7; - num = Math.floor(num / 8); - var len = 0; - var res; - if (num == 0) - break; + num = num / 8 | 0; + var data; + var l = ptr.l; switch (type) { case 0: { - var l = ptr[0]; - while (buf[ptr[0]++] >= 128) + while (buf[l++] >= 128) ; - res = buf[subarray](l, ptr[0]); + data = buf[subarray](ptr.l, l); + ptr.l = l; + } + break; + case 1: + { + data = buf[subarray](l, l + 8); + ptr.l = l + 8; + } + break; + case 2: + { + var len = parse_varint49(buf, ptr); + data = buf[subarray](ptr.l, ptr.l + len); + ptr.l += len; } break; case 5: - len = 4; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; + { + data = buf[subarray](l, l + 4); + ptr.l = l + 4; + } break; - case 1: - len = 8; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 2: - len = parse_varint49(buf, ptr); - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 3: - case 4: default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { data: res, type: type }; + var v = { data: data, type: type }; if (out[num] == null) - out[num] = [v]; - else - out[num].push(v); + out[num] = []; + out[num].push(v); } return out; } @@ -23390,11 +23400,11 @@ function mappa(data, cb) { } function parse_iwa_file(buf) { var _a; - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { var len = parse_varint49(buf, ptr); - var ai = parse_shallow(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + var ai = parse_shallow(buf[subarray](ptr.l, ptr.l + len)); + ptr.l += len; var res = { id: varint_to_i32(ai[1][0].data), messages: [] @@ -23404,9 +23414,9 @@ function parse_iwa_file(buf) { var fl = varint_to_i32(mi[3][0].data); res.messages.push({ meta: mi, - data: buf[subarray](ptr[0], ptr[0] + fl) + data: buf[subarray](ptr.l, ptr.l + fl) }); - ptr[0] += fl; + ptr.l += fl; }); if ((_a = ai[3]) == null ? void 0 : _a[0]) res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; @@ -23442,45 +23452,46 @@ function write_iwa_file(ias) { function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); - var ptr = [0]; + var ptr = { l: 0 }; var usz = parse_varint49(buf, ptr); var chunks = []; - while (ptr[0] < buf.length) { - var tag = buf[ptr[0]] & 3; + var l = ptr.l; + while (l < buf.length) { + var tag = buf[l] & 3; if (tag == 0) { - var len = buf[ptr[0]++] >> 2; + var len = buf[l++] >> 2; if (len < 60) ++len; else { var c = len - 59; - len = buf[ptr[0]]; + len = buf[l]; if (c > 1) - len |= buf[ptr[0] + 1] << 8; + len |= buf[l + 1] << 8; if (c > 2) - len |= buf[ptr[0] + 2] << 16; + len |= buf[l + 2] << 16; if (c > 3) - len |= buf[ptr[0] + 3] << 24; + len |= buf[l + 3] << 24; len >>>= 0; len++; - ptr[0] += c; + l += c; } - chunks.push(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + chunks.push(buf[subarray](l, l + len)); + l += len; continue; } else { var offset = 0, length = 0; if (tag == 1) { - length = (buf[ptr[0]] >> 2 & 7) + 4; - offset = (buf[ptr[0]++] & 224) << 3; - offset |= buf[ptr[0]++]; + length = (buf[l] >> 2 & 7) + 4; + offset = (buf[l++] & 224) << 3; + offset |= buf[l++]; } else { - length = (buf[ptr[0]++] >> 2) + 1; + length = (buf[l++] >> 2) + 1; if (tag == 2) { - offset = buf[ptr[0]] | buf[ptr[0] + 1] << 8; - ptr[0] += 2; + offset = buf[l] | buf[l + 1] << 8; + l += 2; } else { - offset = (buf[ptr[0]] | buf[ptr[0] + 1] << 8 | buf[ptr[0] + 2] << 16 | buf[ptr[0] + 3] << 24) >>> 0; - ptr[0] += 4; + offset = (buf[l] | buf[l + 1] << 8 | buf[l + 2] << 16 | buf[l + 3] << 24) >>> 0; + l += 4; } } if (offset == 0) @@ -23512,16 +23523,15 @@ function parse_snappy_chunk(type, buf) { if (length) chunks.push(chunks[j][subarray](0, length)); } - if (chunks.length > 100) + if (chunks.length > 25) chunks = [u8concat(chunks)]; } } - if (chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0) != usz) - throw new Error("Unexpected length: ".concat(chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0), " != ").concat(usz)); + var clen = 0; + for (var u8i = 0; u8i < chunks.length; ++u8i) + clen += chunks[u8i].length; + if (clen != usz) + throw new Error("Unexpected length: ".concat(clen, " != ").concat(usz)); return chunks; } function decompress_iwa_file(buf) { @@ -23538,7 +23548,7 @@ function decompress_iwa_file(buf) { } if (l !== buf.length) throw new Error("data is not a valid framed stream!"); - return u8concat(out); + return out.length == 1 ? out[0] : u8concat(out); } function compress_iwa_file(buf) { var out = []; @@ -23585,12 +23595,12 @@ function numbers_format_cell(cell, t, flags, ofmt, nfmt) { var fmt = ver >= 5 ? nfmt : ofmt; dur: if (flags & (ver > 4 ? 8 : 4) && cell.t == "n" && ctype == 7) { - var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? parse_varint49(fmt[7][0].data) : -1; + var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? varint_to_i32(fmt[7][0].data) : -1; if (dstyle == -1) break dur; - var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? parse_varint49(fmt[15][0].data) : -1; - var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? parse_varint49(fmt[16][0].data) : -1; - var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? parse_varint49(fmt[40][0].data) : -1; + var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? varint_to_i32(fmt[15][0].data) : -1; + var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? varint_to_i32(fmt[16][0].data) : -1; + var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? varint_to_i32(fmt[40][0].data) : -1; var d = cell.v, dd = d; autodur: if (auto) { @@ -23918,7 +23928,7 @@ function parse_cell_storage(buf, lut) { } function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); - return parse_varint49(pb[1][0].data); + return varint_to_i32(pb[1][0].data); } function write_TSP_Reference(idx) { return write_shallow([ @@ -24049,7 +24059,7 @@ function parse_TST_TableModelArchive(M, root, ws) { if (range.e.c < 0) throw new Error("Invalid col varint ".concat(pb[7][0].data)); ws["!ref"] = encode_range(range); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, dws = ws; var store = parse_shallow(pb[4][0].data); var lut = numbers_lut_new(); if ((_a = store[4]) == null ? void 0 : _a[0]) @@ -24074,12 +24084,11 @@ function parse_TST_TableModelArchive(M, root, ws) { var res = parse_cell_storage(buf, lut); if (res) { if (dense) { - if (!ws[_R + R]) - ws[_R + R] = []; - ws[_R + R][C] = res; + if (!dws["!data"][_R + R]) + dws["!data"][_R + R] = []; + dws["!data"][_R + R][C] = res; } else { - var addr = encode_cell({ r: _R + R, c: C }); - ws[addr] = res; + ws[encode_col(C) + encode_row(_R + R)] = res; } } }); @@ -24106,12 +24115,9 @@ function parse_TST_TableModelArchive(M, root, ws) { } function parse_TST_TableInfoArchive(M, root, opts) { var pb = parse_shallow(root.data); - var out; - if (!(opts == null ? void 0 : opts.dense)) - out = { "!ref": "A1" }; - else - out = []; - out["!ref"] = "A1"; + var out = { "!ref": "A1" }; + if (opts == null ? void 0 : opts.dense) + out["!data"] = []; var tableref = M[parse_TSP_Reference(pb[2][0].data)]; var mtype = varint_to_i32(tableref[0].meta[1][0].data); if (mtype != 6001) @@ -24328,26 +24334,20 @@ function build_numbers_deps(cfb) { dependents[packet.id] = { deps: [], location: fp, type: varint_to_i32(packet.messages[0].meta[1][0].data) }; }); }); - indices.sort(function(x, y) { - return x - y; - }); - var indices_varint = indices.filter(function(x) { - return x > 1; - }).map(function(x) { - return [x, write_varint49(x)]; - }); cfb.FileIndex.forEach(function(fi) { if (!fi.name.match(/\.iwa/)) return; if (fi.name.match(/OperationStorage/)) return; parse_iwa_file(decompress_iwa_file(fi.content)).forEach(function(ia) { - indices_varint.forEach(function(ivi) { - if (ia.messages.some(function(mess) { - return varint_to_i32(mess.meta[1][0].data) != 11006 && u8contains(mess.data, ivi[1]); - })) { - dependents[ivi[0]].deps.push(ia.id); - } + ia.messages.forEach(function(mess) { + [5, 6].forEach(function(f) { + if (!mess.meta[f]) + return; + mess.meta[f].forEach(function(x) { + dependents[ia.id].deps.push(varint_to_i32(x.data)); + }); + }); }); }); }); @@ -24596,7 +24596,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a3, _b2; var mm = parse_shallow(m.data); @@ -24659,7 +24659,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a2, _b2; var mm = parse_shallow(m.data); @@ -24719,7 +24719,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a2, _b2; var mm = parse_shallow(m.data); @@ -24831,16 +24831,16 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { var metadata = numbers_iwa_find(cfb, deps, 2); var mlist = parse_shallow(metadata.messages[0].data); var mlst = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) == tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) == tileref; }); - return (mlst == null ? void 0 : mlst.length) ? parse_varint49(parse_shallow(mlst[0].data)[12][0].data) : 0; + return (mlst == null ? void 0 : mlst.length) ? varint_to_i32(parse_shallow(mlst[0].data)[12][0].data) : 0; }(); { CFB.utils.cfb_del(cfb, deps[tileref].location); numbers_iwa_doit(cfb, deps, 2, function(ai) { var mlist = parse_shallow(ai.messages[0].data); mlist[3] = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); var parentidx = mlist[3].findIndex(function(m) { var _a, _b; @@ -24855,7 +24855,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { if (!parent[6]) parent[6] = []; parent[6] = parent[6].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); mlist[3][parentidx].data = write_shallow(parent); ai.messages[0].data = write_shallow(mlist); @@ -24915,7 +24915,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { [], [{ type: 0, data: write_varint49(save_token) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a, _b; var mm = parse_shallow(m.data); @@ -25996,17 +25996,17 @@ type MJRObject = { isempty: boolean; }; */ -function make_json_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, header/*:number*/, hdr/*:Array*/, dense/*:boolean*/, o/*:Sheet2JSONOpts*/)/*:MJRObject*/ { +function make_json_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, header/*:number*/, hdr/*:Array*/, o/*:Sheet2JSONOpts*/)/*:MJRObject*/ { var rr = encode_row(R); var defval = o.defval, raw = o.raw || !Object.prototype.hasOwnProperty.call(o, "raw"); - var isempty = true; + var isempty = true, dense = (sheet["!data"] != null); var row/*:any*/ = (header === 1) ? [] : {}; if(header !== 1) { if(Object.defineProperty) try { Object.defineProperty(row, '__rowNum__', {value:R, enumerable:false}); } catch(e) { row.__rowNum__ = R; } else row.__rowNum__ = R; } - if(!dense || sheet[R]) for (var C = r.s.c; C <= r.e.c; ++C) { - var val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + if(!dense || sheet["!data"][R]) for (var C = r.s.c; C <= r.e.c; ++C) { + var val = dense ? (sheet["!data"][R]||[])[C] : sheet[cols[C] + rr]; if(val === undefined || val.t === undefined) { if(defval === undefined) continue; if(hdr[C] != null) { row[hdr[C]] = defval; } @@ -26055,16 +26055,16 @@ function sheet_to_json(sheet/*:Worksheet*/, opts/*:?Sheet2JSONOpts*/) { var cols/*:Array*/ = []; var out/*:Array*/ = []; var outi = 0, counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -26083,7 +26083,7 @@ function sheet_to_json(sheet/*:Worksheet*/, opts/*:?Sheet2JSONOpts*/) { } for (R = r.s.r + offset; R <= r.e.r; ++R) { if ((rowinfo[R]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) out[outi++] = row.row; } out.length = outi; @@ -26094,9 +26094,11 @@ var qreg = /"/g; function make_csv_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, fs/*:number*/, rs/*:number*/, FS/*:string*/, o/*:Sheet2CSVOpts*/)/*:?string*/ { var isempty = true; var row/*:Array*/ = [], txt = "", rr = encode_row(R); + var dense = sheet["!data"] != null; + var datarow = dense && sheet["!data"][R] || []; for(var C = r.s.c; C <= r.e.c; ++C) { if (!cols[C]) continue; - var val = o.dense ? (sheet[R]||[])[C]: sheet[cols[C] + rr]; + var val = dense ? datarow[C]: sheet[cols[C] + rr]; if(val == null) txt = ""; else if(val.v != null) { isempty = false; @@ -26123,7 +26125,6 @@ function sheet_to_csv(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/)/*:string*/ { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row = "", cols/*:Array*/ = []; - o.dense = Array.isArray(sheet); var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -26135,7 +26136,6 @@ function sheet_to_csv(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/)/*:string*/ { if(o.strip) row = row.replace(endregex,""); if(row || (o.blankrows !== false)) out.push((w++ ? RS : "") + row); } - delete o.dense; return out.join(""); } @@ -26152,13 +26152,13 @@ function sheet_to_formulae(sheet/*:Worksheet*/)/*:Array*/ { if(sheet == null || sheet["!ref"] == null) return []; var r = safe_decode_range(sheet['!ref']), rr = "", cols/*:Array*/ = [], C; var cmds/*:Array*/ = []; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; for(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C); for(var R = r.s.r; R <= r.e.r; ++R) { rr = encode_row(R); for(C = r.s.c; C <= r.e.c; ++C) { y = cols[C] + rr; - x = dense ? (sheet[R]||[])[C] : sheet[y]; + x = dense ? (sheet["!data"][R]||[])[C] : sheet[y]; val = ""; if(x === undefined) continue; else if(x.F != null) { @@ -26183,10 +26183,11 @@ function sheet_to_formulae(sheet/*:Worksheet*/)/*:Array*/ { function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet*/ { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; var offset = +!o.skipHeader; - var ws/*:Worksheet*/ = _ws || (dense ? ([]/*:any*/) : ({}/*:any*/)); + var ws/*:Worksheet*/ = _ws || ({}); + if(!_ws && dense) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -26207,17 +26208,18 @@ function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet var hdr/*:Array*/ = o.header || [], C = 0; var ROW = []; js.forEach(function (JS, R/*:number*/) { - if(dense && !ws[_R + R + offset]) ws[_R + R + offset] = []; - if(dense) ROW = ws[_R + R + offset]; + if(dense && !ws["!data"][_R + R + offset]) ws["!data"][_R + R + offset] = []; + if(dense) ROW = ws["!data"][_R + R + offset]; keys(JS).forEach(function(k) { if((C=hdr.indexOf(k)) == -1) hdr[C=hdr.length] = k; var v = JS[k]; var t = 'z'; var z = ""; - var ref = dense ? "" : encode_cell({c:_C + C,r:_R + R + offset}); + var ref = dense ? "" : (encode_col(_C + C) + encode_row(_R + R + offset)); var cell/*:Cell*/ = dense ? ROW[_C + C] : ws[ref]; if(v && typeof v === 'object' && !(v instanceof Date)){ - ws[ref] = v; + if(dense) ROW[_C + C] = v; + else ws[ref] = v; } else { if(typeof v == 'number') t = 'n'; else if(typeof v == 'boolean') t = 'b'; @@ -26242,9 +26244,9 @@ function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet }); range.e.c = Math.max(range.e.c, _C + hdr.length - 1); var __R = encode_row(_R); - if(dense && !ws[_R]) ws[_R] = []; + if(dense && !ws["!data"][_R]) ws["!data"][_R] = []; if(offset) for(C = 0; C < hdr.length; ++C) { - if(dense) ws[_R][C + _C] = {t:'s', v:hdr[C]}; + if(dense) ws["!data"][_R][C + _C] = {t:'s', v:hdr[C]}; else ws[encode_col(C + _C) + __R] = {t:'s', v:hdr[C]}; } ws['!ref'] = encode_range(range); @@ -26256,18 +26258,17 @@ function json_to_sheet(js/*:Array*/, opts)/*:Worksheet*/ { return sheet_add function ws_get_cell_stub(ws/*:Worksheet*/, R, C/*:?number*/)/*:Cell*/ { /* A1 cell address */ if(typeof R == "string") { - /* dense */ - if(Array.isArray(ws)) { + if(ws["!data"] != null) { var RC = decode_cell(R); - if(!ws[RC.r]) ws[RC.r] = []; - return ws[RC.r][RC.c] || (ws[RC.r][RC.c] = {t:'z'}); + if(!ws["!data"][RC.r]) ws["!data"][RC.r] = []; + return ws["!data"][RC.r][RC.c] || (ws["!data"][RC.r][RC.c] = {t:'z'}); } return ws[R] || (ws[R] = {t:'z'}); } /* cell address object */ if(typeof R != "number") return ws_get_cell_stub(ws, encode_cell(R)); /* R and C are 0-based indices */ - return ws_get_cell_stub(ws, encode_cell({r:R,c:C||0})); + return ws_get_cell_stub(ws, encode_col(C||0) + encode_row(R)); } /* find sheet index for given name / validate index */ @@ -26422,7 +26423,6 @@ function write_csv_stream(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/) { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row/*:?string*/ = "", cols/*:Array*/ = []; - o.dense = Array.isArray(sheet); var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -26452,7 +26452,6 @@ function write_html_stream(ws/*:Worksheet*/, opts/*:?Sheet2HTMLOpts*/) { var footer = o.footer != null ? o.footer : HTML_END; stream.push(header); var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); stream.push(make_html_preamble(ws, r, o)); var R = r.s.r; var end = false; @@ -26490,16 +26489,16 @@ function write_json_stream(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/) { var rr = encode_row(r.s.r); var cols/*:Array*/ = []; var counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -26520,7 +26519,7 @@ function write_json_stream(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/) { stream._read = function() { while(R <= r.e.r) { if ((rowinfo[R-1]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); ++R; if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) { stream.push(row.row); diff --git a/xlsx.js b/xlsx.js index ac0394d..3176197 100644 --- a/xlsx.js +++ b/xlsx.js @@ -1,10 +1,10 @@ /*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */ /* vim: set ts=2: */ /*exported XLSX */ -/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false, Set:false */ +/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false */ var XLSX = {}; function make_xlsx_lib(XLSX){ -XLSX.version = '0.18.12'; +XLSX.version = '0.19.0'; var current_codepage = 1200, current_ansi = 1252; /*global cptable:true, window */ var $cptable; @@ -1607,7 +1607,7 @@ sleuth_fat(difat_start, difat_sec_cnt, sectors, ssz, fat_addrs); /** Chains */ var sector_list = make_sector_list(sectors, dir_start, fat_addrs, ssz); -sector_list[dir_start].name = "!Directory"; +if(dir_start < sector_list.length) sector_list[dir_start].name = "!Directory"; if(nmfs > 0 && minifat_start !== ENDOFCHAIN) sector_list[minifat_start].name = "!MiniFAT"; sector_list[fat_addrs[0]].name = "!FAT"; sector_list.fat_addrs = fat_addrs; @@ -4205,7 +4205,6 @@ function fix_col(cstr) { return cstr.replace(/^([A-Z])/,"$$$1"); } function unfix_col(cstr) { return cstr.replace(/^\$([A-Z])/,"$1"); } function split_cell(cstr) { return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(","); } -//function decode_cell(cstr) { var splt = split_cell(cstr); return { c:decode_col(splt[0]), r:decode_row(splt[1]) }; } function decode_cell(cstr) { var R = 0, C = 0; for(var i = 0; i < cstr.length; ++i) { @@ -4215,7 +4214,6 @@ function decode_cell(cstr) { } return { c: C - 1, r:R - 1 }; } -//function encode_cell(cell) { return encode_col(cell.c) + encode_row(cell.r); } function encode_cell(cell) { var col = cell.c + 1; var s=""; @@ -4303,9 +4301,10 @@ function sheet_to_workbook(sheet, opts) { function sheet_add_aoa(_ws, data, opts) { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; - var ws = _ws || (dense ? ([]) : ({})); + var ws = _ws || ({}); + if(dense && !ws["!data"]) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -4324,13 +4323,19 @@ function sheet_add_aoa(_ws, data, opts) { range.e.r = Math.max(range.e.r, _range.e.r); if(_R == -1) range.e.r = _R = _range.e.r + 1; } + var row = []; for(var R = 0; R != data.length; ++R) { if(!data[R]) continue; if(!Array.isArray(data[R])) throw new Error("aoa_to_sheet expects an array of arrays"); + var __R = _R + R, __Rstr = "" + (__R + 1); + if(dense) { + if(!ws["!data"][__R]) ws["!data"][__R] = []; + row = ws["!data"][__R]; + } for(var C = 0; C != data[R].length; ++C) { if(typeof data[R][C] === 'undefined') continue; var cell = ({v: data[R][C] }); - var __R = _R + R, __C = _C + C; + var __C = _C + C; if(range.s.r > __R) range.s.r = __R; if(range.s.c > __C) range.s.c = __C; if(range.e.r < __R) range.e.r = __R; @@ -4354,11 +4359,10 @@ function sheet_add_aoa(_ws, data, opts) { else cell.t = 's'; } if(dense) { - if(!ws[__R]) ws[__R] = []; - if(ws[__R][__C] && ws[__R][__C].z) cell.z = ws[__R][__C].z; - ws[__R][__C] = cell; + if(row[__C] && row[__C].z) cell.z = row[__C].z; + row[__C] = cell; } else { - var cell_ref = encode_cell(({c:__C,r:__R})); + var cell_ref = encode_col(__C) + __Rstr; if(ws[cell_ref] && ws[cell_ref].z) cell.z = ws[cell_ref].z; ws[cell_ref] = cell; } @@ -7904,6 +7908,7 @@ function sheet_to_dbf(ws, opts) { case 'N': var _n = "0"; if(typeof data[i][j] == "number") _n = data[i][j].toFixed(coldecimals[j]||0); + if(_n.length > colwidths[j]) _n = _n.slice(0, colwidths[j]); // addresses decimal > width for(hcnt=0; hcnt < colwidths[j]-_n.length; ++hcnt) rout.write_shift(1, 0x20); rout.write_shift(1, _n, "sbcs"); break; @@ -8167,7 +8172,7 @@ var SYLK = (function() { /* TODO: codepage */ var preamble = ["ID;PSheetJS;N;E"], o = []; var r = safe_decode_range(ws['!ref']), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var RS = "\r\n"; var d1904 = (((wb||{}).Workbook||{}).WBProps||{}).date1904; @@ -8179,10 +8184,10 @@ var SYLK = (function() { preamble.push("B;Y" + (r.e.r - r.s.r + 1) + ";X" + (r.e.c - r.s.c + 1) + ";D" + [r.s.c,r.s.r,r.e.c,r.e.r].join(" ")); preamble.push("O;L;D;B" + (d1904 ? ";V4" : "") + ";K47;G100 0.001"); for(var R = r.s.r; R <= r.e.r; ++R) { + if(dense && !ws["!data"][R]) continue; var p = []; for(var C = r.s.c; C <= r.e.c; ++C) { - var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C]: ws[coord]; + cell = dense ? ws["!data"][R][C] : ws[encode_col(C) + encode_row(R)]; if(!cell || (cell.v == null && (!cell.f || cell.F))) continue; p.push(write_ws_cell_sylk(cell, ws, R, C, opts)); // TODO: pass date1904 info } @@ -8255,7 +8260,7 @@ var DIF = (function() { function sheet_to_dif(ws) { var _DIF_XL = DIF_XL; var r = safe_decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var o = [ "TABLE\r\n0,1\r\n\"sheetjs\"\r\n", "VECTORS\r\n0," + (r.e.r - r.s.r + 1) + "\r\n\"\"\r\n", @@ -8263,9 +8268,10 @@ var DIF = (function() { "DATA\r\n0,0\r\n\"\"\r\n" ]; for(var R = r.s.r; R <= r.e.r; ++R) { + var row = dense ? ws["!data"][R] : []; var p = "-1,0\r\nBOT\r\n"; for(var C = r.s.c; C <= r.e.c; ++C) { - var cell = dense ? (ws[R] && ws[R][C]) : ws[encode_cell({r:R,c:C})]; + var cell = dense ? (row && row[C]) : ws[encode_cell({r:R,c:C})]; if(cell == null) { p +=("1,0\r\n\"\"\r\n"); continue;} switch(cell.t) { case 'n': @@ -8360,11 +8366,11 @@ var ETH = (function() { if(!ws || !ws['!ref']) return ""; var o = [], oo = [], cell, coord = ""; var r = decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { for(var C = r.s.c; C <= r.e.c; ++C) { coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null || cell.t === 'z') continue; oo = ["cell", coord, 't']; switch(cell.t) { @@ -8486,7 +8492,8 @@ var PRN = (function() { var o = opts || {}; var sep = ""; if(DENSE != null && o.dense == null) o.dense = DENSE; - var ws = o.dense ? ([]) : ({}); + var ws = ({}); + if(o.dense) ws["!data"] = []; var range = ({s: {c:0, r:0}, e: {c:0, r:0}}); if(str.slice(0,4) == "sep=") { @@ -8532,7 +8539,7 @@ var PRN = (function() { cell.v = s; } if(cell.t == 'z'){} - else if(o.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = cell; } + else if(o.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = cell; } else ws[encode_cell({c:C,r:R})] = cell; start = end+1; startcc = str.charCodeAt(start); if(range.e.c < C) range.e.c = C; @@ -8588,12 +8595,12 @@ var PRN = (function() { function sheet_to_prn(ws) { var o = []; var r = safe_decode_range(ws['!ref']), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { var oo = []; for(var C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null) { oo.push(" "); continue; } var w = (cell.w || (format_cell(cell), cell.w) || "").slice(0,10); while(w.length < 10) w += " "; @@ -8655,8 +8662,9 @@ var WK_ = (function() { if(!d) return d; var o = opts || {}; if(DENSE != null && o.dense == null) o.dense = DENSE; - var s = ((o.dense ? [] : {})), n = "Sheet1", next_n = "", sidx = 0; - var sheets = {}, snames = [], realnames = []; + var s = ({}), n = "Sheet1", next_n = "", sidx = 0; + var sheets = {}, snames = [], realnames = [], sdata = []; + if(o.dense) sdata = s["!data"] = []; var refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; var sheetRows = o.sheetRows || 0; @@ -8701,13 +8709,13 @@ var WK_ = (function() { s["!ref"] = encode_range(refguess); sheets[n] = s; snames.push(n); - s = (o.dense ? [] : {}); + s = ({}); if(o.dense) sdata = s["!data"] = []; refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; sidx = val[3]; n = next_n || "Sheet" + (sidx + 1); next_n = ""; } } - var tmpcell = o.dense ? (s[val[0].r]||[])[val[0].c] : s[encode_cell(val[0])]; + var tmpcell = o.dense ? (sdata[val[0].r]||[])[val[0].c] : s[encode_cell(val[0])]; if(tmpcell) { tmpcell.t = val[1].t; tmpcell.v = val[1].v; if(val[1].z != null) tmpcell.z = val[1].z; @@ -8715,8 +8723,8 @@ var WK_ = (function() { break; } if(o.dense) { - if(!s[val[0].r]) s[val[0].r] = []; - s[val[0].r][val[0].c] = val[1]; + if(!sdata[val[0].r]) sdata[val[0].r] = []; + sdata[val[0].r][val[0].c] = val[1]; } else s[encode_cell(val[0])] = val[1]; break; case 0x5405: o.works2 = true; break; @@ -8742,14 +8750,14 @@ var WK_ = (function() { s["!ref"] = encode_range(refguess); sheets[n] = s; snames.push(n); - s = (o.dense ? [] : {}); + s = ({}); if(o.dense) sdata = s["!data"] = []; refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; sidx = val[3]; n = "Sheet" + (sidx + 1); } if(sheetRows > 0 && val[0].r >= sheetRows) break; if(o.dense) { - if(!s[val[0].r]) s[val[0].r] = []; - s[val[0].r][val[0].c] = val[1]; + if(!sdata[val[0].r]) sdata[val[0].r] = []; + sdata[val[0].r][val[0].c] = val[1]; } else s[encode_cell(val[0])] = val[1]; if(refguess.e.c < val[0].c) refguess.e.c = val[0].c; if(refguess.e.r < val[0].r) refguess.e.r = val[0].r; @@ -8784,18 +8792,17 @@ var WK_ = (function() { if(o.type == "string") throw new Error("Cannot write WK1 to JS string"); var ba = buf_array(); var range = safe_decode_range(ws["!ref"]); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cols = []; write_biff_rec(ba, 0x00, write_BOF_WK1(0x0406)); write_biff_rec(ba, 0x06, write_RANGE(range)); var max_R = Math.min(range.e.r, 8191); + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= max_R; ++R) { var rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); - var ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + for(C = range.s.c; C <= range.e.c; ++C) { + var cell = dense ? (ws["!data"][R]||[])[C] : ws[cols[C] + rr]; if(!cell || cell.t == "z") continue; /* TODO: formula records */ if(cell.t == "n") { @@ -8827,7 +8834,7 @@ var WK_ = (function() { var ws = wb.Sheets[wb.SheetNames[i]]; if(!ws || !ws["!ref"]) continue; var range = safe_decode_range(ws["!ref"]); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cols = []; var max_R = Math.min(range.e.r, 8191); for(var R = range.s.r; R <= max_R; ++R) { @@ -8835,7 +8842,7 @@ var WK_ = (function() { for(var C = range.s.c; C <= range.e.c; ++C) { if(R === range.s.r) cols[C] = encode_col(C); var ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; if(!cell || cell.t == "z") continue; /* TODO: FORMULA19 NUMBER18 records */ if(cell.t == "n") { @@ -9546,7 +9553,7 @@ var WK_ = (function() { prep_blob(d, 0); var o = opts || {}; if(DENSE != null && o.dense == null) o.dense = DENSE; - var s = ((o.dense ? [] : {})); + var s = ({}); if(o.dense) s["!data"] = []; var SST = [], sname = "", formulae = []; var range = {s:{r:-1,c:-1}, e:{r:-1,c:-1}}; var cnt = 0, type = 0, C = 0, R = 0; @@ -9583,7 +9590,7 @@ var WK_ = (function() { case 0x0601: { /* BOS */ var sidx = p.read_shift(2); - s = ((o.dense ? [] : {})); + s = ({}); if(o.dense) s["!data"] = []; range.s.c = p.read_shift(2); range.e.c = p.read_shift(2); range.s.r = p.read_shift(4); @@ -9620,6 +9627,7 @@ var WK_ = (function() { R = p.read_shift(4), cnt = p.read_shift(4); if(range.s.r > R) range.s.r = R; if(range.e.r < R + cnt - 1) range.e.r = R + cnt - 1; + var CC = encode_col(C); while(p.l < p.length) { var cell = { t: "z" }; var flags = p.read_shift(1); @@ -9642,10 +9650,10 @@ var WK_ = (function() { default: throw "Unsupported delta for QPW cell type " + (flags & 0x1F); } if(!(!o.sheetStubs && cell.t == "z")) { - if(Array.isArray(s)) { - if(!s[R]) s[R] = []; - s[R][C] = cell; - } else s[encode_cell({r:R, c:C})] = cell; + if(s["!data"] != null) { + if(!s["!data"][R]) s["!data"][R] = []; + s["!data"][R][C] = cell; + } else s[CC + encode_row(R)] = cell; } ++R; --cnt; while(mul-- > 0 && cnt >= 0) { @@ -9661,10 +9669,10 @@ var WK_ = (function() { default: throw "Cannot apply repeat for QPW cell type " + (flags & 0x1F); } if(!(!o.sheetStubs && cell.t == "z")) { - if(Array.isArray(s)) { - if(!s[R]) s[R] = []; - s[R][C] = cell; - } else s[encode_cell({r:R, c:C})] = cell; + if(s["!data"] != null) { + if(!s["!data"][R]) s["!data"][R] = []; + s["!data"][R][C] = cell; + } else s[CC + encode_row(R)] = cell; } ++R; --cnt; } @@ -10303,14 +10311,18 @@ function rtf_to_sheet(d, opts) { } function rtf_to_sheet_str(str, opts) { var o = opts || {}; - var ws = o.dense ? [] : {}; + var ws = {}; + var dense = o.dense; + if (dense) + ws["!data"] = []; var rows = str.match(/\\trowd[\s\S]*?\\row\b/g); if (!rows) throw new Error("RTF missing table"); var range = { s: { c: 0, r: 0 }, e: { c: 0, r: rows.length - 1 } }; + var row = []; rows.forEach(function(rowtf, R) { - if (Array.isArray(ws)) - ws[R] = []; + if (dense) + row = ws["!data"][R] = []; var rtfre = /\\[\w\-]+\b/g; var last_index = 0; var res; @@ -10336,8 +10348,8 @@ function rtf_to_sheet_str(str, opts) { cell.w = cell.v; cell.v = fuzzynum(cell.v); } - if (Array.isArray(ws)) - ws[R][C] = cell; + if (dense) + row[C] = cell; else ws[encode_cell({ r: R, c: C })] = cell; } @@ -10365,15 +10377,17 @@ function sheet_to_rtf(ws, opts) { if (!ws["!ref"]) return o[0] + "}"; var r = safe_decode_range(ws["!ref"]), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, row = []; for (var R = r.s.r; R <= r.e.r; ++R) { o.push("\\trowd\\trautofit1"); for (var C = r.s.c; C <= r.e.c; ++C) o.push("\\cellx" + (C + 1)); o.push("\\pard\\intbl"); + if (dense) + row = ws["!data"][R] || []; for (C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({ r: R, c: C }); - cell = dense ? (ws[R] || [])[C] : ws[coord]; + cell = dense ? row[C] : ws[coord]; if (!cell || cell.v == null && (!cell.f || cell.F)) { o.push(" \\cell"); continue; @@ -12070,17 +12084,17 @@ function write_vml_comment(x, _shapeid) { ].join(""); } function sheet_insert_comments(sheet, comments, threaded, people) { - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var cell; comments.forEach(function(comment) { var r = decode_cell(comment.ref); if(dense) { - if(!sheet[r.r]) sheet[r.r] = []; - cell = sheet[r.r][r.c]; + if(!sheet["!data"][r.r]) sheet["!data"][r.r] = []; + cell = sheet["!data"][r.r][r.c]; } else cell = sheet[comment.ref]; if (!cell) { cell = ({t:"z"}); - if(dense) sheet[r.r][r.c] = cell; + if(dense) sheet["!data"][r.r][r.c] = cell; else sheet[comment.ref] = cell; var range = safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1"); if(range.s.r > r.r) range.s.r = r.r; @@ -12088,7 +12102,7 @@ function sheet_insert_comments(sheet, comments, threaded, people) { if(range.s.c > r.c) range.s.c = r.c; if(range.e.c < r.c) range.e.c = r.c; var encoded = encode_range(range); - if (encoded !== sheet["!ref"]) sheet["!ref"] = encoded; + sheet["!ref"] = encoded; } if (!cell.c) cell.c = []; @@ -12106,7 +12120,6 @@ function sheet_insert_comments(sheet, comments, threaded, people) { cell.c.push(o); }); } - /* 18.7 Comments */ function parse_comments_xml(data, opts) { /* 18.7.6 CT_Comments */ @@ -15171,7 +15184,7 @@ function parse_ws_xml(data, opts, idx, rels, wb, themes, styles) { if(DENSE != null && opts.dense == null) opts.dense = DENSE; /* 18.3.1.99 worksheet CT_Worksheet */ - var s = opts.dense ? ([]) : ({}); + var s = ({}); if(opts.dense) s["!data"] = []; var refguess = ({s: {r:2000000, c:2000000}, e: {r:0, c:0} }); var data1 = "", data2 = ""; @@ -15300,7 +15313,7 @@ function write_ws_xml_protection(sp) { } function parse_ws_xml_hlinks(s, data, rels) { - var dense = Array.isArray(s); + var dense = s["!data"] != null; for(var i = 0; i != data.length; ++i) { var val = parsexmltag(utf8read(data[i]), true); if(!val.ref) return; @@ -15316,11 +15329,11 @@ function parse_ws_xml_hlinks(s, data, rels) { if(val.tooltip) { val.Tooltip = val.tooltip; delete val.tooltip; } var rng = safe_decode_range(val.ref); for(var R=rng.s.r;R<=rng.e.r;++R) for(var C=rng.s.c;C<=rng.e.c;++C) { - var addr = encode_cell({c:C,r:R}); + var addr = encode_col(C) + encode_row(R); if(dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:"z",v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:"z",v:undefined}; + s["!data"][R][C].l = val; } else { if(!s[addr]) s[addr] = {t:"z",v:undefined}; s[addr].l = val; @@ -15472,7 +15485,7 @@ return function parse_ws_xml_data(sdata, s, opts, guess, themes, styles) { var do_format = Array.isArray(styles.CellXf), cf; var arrayf = []; var sharedf = []; - var dense = Array.isArray(s); + var dense = s["!data"] != null; var rows = [], rowobj = {}, rowrite = false; var sheetStubs = !!opts.sheetStubs; for(var marr = sdata.split(rowregex), mt = 0, marrlen = marr.length; mt != marrlen; ++mt) { @@ -15637,8 +15650,8 @@ return function parse_ws_xml_data(sdata, s, opts, guess, themes, styles) { } if(dense) { var _r = decode_cell(tag.r); - if(!s[_r.r]) s[_r.r] = []; - s[_r.r][_r.c] = p; + if(!s["!data"][_r.r]) s["!data"][_r.r] = []; + s["!data"][_r.r][_r.c] = p; } else s[tag.r] = p; } } @@ -15647,7 +15660,7 @@ return function parse_ws_xml_data(sdata, s, opts, guess, themes, styles) { function write_ws_xml_data(ws, opts, idx, wb) { var o = [], r = [], range = safe_decode_range(ws['!ref']), cell="", ref, rr = "", cols = [], R=0, C=0, rows = ws['!rows']; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var params = ({r:rr}), row, height = -1; for(C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(R = range.s.r; R <= range.e.r; ++R) { @@ -15655,7 +15668,7 @@ function write_ws_xml_data(ws, opts, idx, wb) { rr = encode_row(R); for(C = range.s.c; C <= range.e.c; ++C) { ref = cols[C] + rr; - var _cell = dense ? (ws[R]||[])[C]: ws[ref]; + var _cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(_cell === undefined) continue; if((cell = write_ws_xml_cell(_cell, ref, ws, opts, idx, wb)) != null) r.push(cell); } @@ -15851,12 +15864,13 @@ function write_BrtRowHdr(R, range, ws) { o.l += 4; var caddr = {r:R, c:0}; + var dense = ws["!data"] != null; for(var i = 0; i < 16; ++i) { if((range.s.c > ((i+1) << 10)) || (range.e.c < (i << 10))) continue; var first = -1, last = -1; for(var j = (i<<10); j < ((i+1)<<10); ++j) { caddr.c = j; - var cell = Array.isArray(ws) ? (ws[caddr.r]||[])[caddr.c] : ws[encode_cell(caddr)]; + var cell = dense ? (ws["!data"][caddr.r]||[])[caddr.c] : ws[encode_cell(caddr)]; if(cell) { if(first < 0) first = j; last = j; } } if(first < 0) continue; @@ -16319,7 +16333,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { var opts = _opts || {}; if(!rels) rels = {'!id':{}}; if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var s = (opts.dense ? [] : {}); + var s = ({}); if(opts.dense) s["!data"] = []; var ref; var refguess = {s: {r:2000000, c:2000000}, e: {r:0, c:0} }; @@ -16395,7 +16409,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { } if((cf = styles.CellXf[val[0].iStyleRef])) safe_format(p,cf.numFmtId,null,opts, themes, styles); C = val[0].c == -1 ? C + 1 : val[0].c; - if(opts.dense) { if(!s[R]) s[R] = []; s[R][C] = p; } + if(opts.dense) { if(!s["!data"][R]) s["!data"][R] = []; s["!data"][R][C] = p; } else s[encode_col(C) + rr] = p; if(opts.cellFormula) { af = false; @@ -16428,7 +16442,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { if(!opts.sheetStubs || pass) break; p = ({t:'z',v:void 0}); C = val[0].c == -1 ? C + 1 : val[0].c; - if(opts.dense) { if(!s[R]) s[R] = []; s[R][C] = p; } + if(opts.dense) { if(!s["!data"][R]) s["!data"][R] = []; s["!data"][R][C] = p; } else s[encode_col(C) + rr] = p; if(refguess.s.r > row.r) refguess.s.r = row.r; if(refguess.s.c > C) refguess.s.c = C; @@ -16459,11 +16473,11 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { } for(R=val.rfx.s.r;R<=val.rfx.e.r;++R) for(C=val.rfx.s.c;C<=val.rfx.e.c;++C) { if(opts.dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:'z',v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:'z',v:undefined}; + s["!data"][R][C].l = val; } else { - addr = encode_cell({c:C,r:R}); + addr = encode_col(C) + encode_row(R); if(!s[addr]) s[addr] = {t:'z',v:undefined}; s[addr].l = val; } @@ -16473,14 +16487,14 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { case 0x01AA: /* 'BrtArrFmla' */ if(!opts.cellFormula) break; arrayf.push(val); - cell = ((opts.dense ? s[R][C] : s[encode_col(C) + rr])); + cell = ((opts.dense ? s["!data"][R][C] : s[encode_col(C) + rr])); cell.f = stringify_formula(val[1], refguess, {r:row.r, c:C}, supbooks, opts); cell.F = encode_range(val[0]); break; case 0x01AB: /* 'BrtShrFmla' */ if(!opts.cellFormula) break; sharedf[encode_cell(val[0].s)] = val[1]; - cell = (opts.dense ? s[R][C] : s[encode_col(C) + rr]); + cell = (opts.dense ? s["!data"][R][C] : s[encode_col(C) + rr]); cell.f = stringify_formula(val[1], refguess, {r:row.r, c:C}, supbooks, opts); break; @@ -16673,7 +16687,7 @@ function write_ws_bin_cell(ba, cell, R, C, opts, ws, last_seen) { function write_CELLTABLE(ba, ws, idx, opts) { var range = safe_decode_range(ws['!ref'] || "A1"), ref, rr = "", cols = []; write_record(ba, 0x0091 /* BrtBeginSheetData */); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cap = range.e.r; if(ws['!rows']) cap = Math.max(range.e.r, ws['!rows'].length - 1); for(var R = range.s.r; R <= cap; ++R) { @@ -16686,7 +16700,7 @@ function write_CELLTABLE(ba, ws, idx, opts) { /* *16384CELL */ if(R === range.s.r) cols[C] = encode_col(C); ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; if(!cell) { last_seen = false; continue; } /* write cell */ last_seen = write_ws_bin_cell(ba, cell, R, C, opts, ws, last_seen); @@ -16877,7 +16891,10 @@ function parse_chart(data, name, opts, rels, wb, csheet) { refguess.e.c = C; col = encode_col(C); cache[0].forEach(function(n,i) { - cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; + if(cs["!data"]) { + if(!cs["!data"][i]) cs["!data"][i] = []; + cs["!data"][i][C] = {t:'n', v:n, z:cache[1] }; + } else cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; R = i; }); if(refguess.e.r < R) refguess.e.r = R; @@ -18005,7 +18022,7 @@ function parse_xlml_xml(d, _opts) { var Rn; var state = [], tmp; if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var sheets = {}, sheetnames = [], cursheet = (opts.dense ? [] : {}), sheetname = ""; + var sheets = {}, sheetnames = [], cursheet = ({}), sheetname = ""; if(opts.dense) cursheet["!data"] = []; var cell = ({}), row = {};// eslint-disable-line no-unused-vars var dtag = xlml_parsexmltag(''), didx = 0; var c = 0, r = 0; @@ -18038,8 +18055,8 @@ function parse_xlml_xml(d, _opts) { if(comments.length > 0) cell.c = comments; if((!opts.sheetRows || opts.sheetRows > r) && cell.v !== void 0) { if(opts.dense) { - if(!cursheet[r]) cursheet[r] = []; - cursheet[r][c] = cell; + if(!cursheet["!data"][r]) cursheet["!data"][r] = []; + cursheet["!data"][r][c] = cell; } else cursheet[encode_col(c) + encode_row(r)] = cell; } if(cell.HRef) { @@ -18058,8 +18075,8 @@ for(var cma = c; cma <= cc; ++cma) { for(var cmd = r; cmd <= rr; ++cmd) { if(cma > c || cmd > r) { if(opts.dense) { - if(!cursheet[cmd]) cursheet[cmd] = []; - cursheet[cmd][cma] = {t:'z'}; + if(!cursheet["!data"][cmd]) cursheet["!data"][cmd] = []; + cursheet["!data"][cmd][cma] = {t:'z'}; } else cursheet[encode_col(cma) + encode_row(cmd)] = {t:'z'}; } } @@ -18118,7 +18135,7 @@ for(var cma = c; cma <= cc; ++cma) { state.push([Rn[3], false]); tmp = xlml_parsexmltag(Rn[0]); sheetname = unescapexml(tmp.Name); - cursheet = (opts.dense ? [] : {}); + cursheet = ({}); if(opts.dense) cursheet["!data"] = []; merges = []; arrayf = []; rowinfo = []; @@ -18970,7 +18987,7 @@ function write_ws_xlml_table(ws, opts, idx, wb) { if(n.hidden) k['ss:Hidden']="1"; o.push(writextag("Column",null,k)); }); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = range.s.r; R <= range.e.r; ++R) { var row = [write_ws_xlml_row(R, (ws['!rows']||[])[R])]; for(var C = range.s.c; C <= range.e.c; ++C) { @@ -18985,7 +19002,7 @@ function write_ws_xlml_table(ws, opts, idx, wb) { } if(skip) continue; var addr = {r:R,c:C}; - var ref = encode_cell(addr), cell = dense ? (ws[R]||[])[C] : ws[ref]; + var ref = encode_col(C) + encode_row(R), cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; row.push(write_ws_xlml_cell(cell, ref, ws, opts, idx, wb, addr)); } row.push(""); @@ -19145,7 +19162,7 @@ function parse_workbook(blob, options) { var wb = ({opts:{}}); var Sheets = {}; if(DENSE != null && options.dense == null) options.dense = DENSE; - var out = ((options.dense ? [] : {})); + var out = ({}); if(options.dense) out["!data"] = []; var Directory = {}; var range = ({}); var last_formula = null; @@ -19198,8 +19215,8 @@ function parse_workbook(blob, options) { } { if(options.dense) { - if(!out[cell.r]) out[cell.r] = []; - out[cell.r][cell.c] = line; + if(!out["!data"][cell.r]) out["!data"][cell.r] = []; + out["!data"][cell.r][cell.c] = line; } else out[last_cell] = line; } }; @@ -19363,7 +19380,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; Workbook.Sheets.push(wsprops); } if(cur_sheet === "") Preamble = out; else Sheets[cur_sheet] = out; - out = ((options.dense ? [] : {})); + out = ({}); if(options.dense) out["!data"] = []; } break; case 0x0009: case 0x0209: case 0x0409: case 0x0809 /* BOF */: { if(opts.biff === 8) opts.biff = { @@ -19383,7 +19400,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; if(val.BIFFVer == 0 && val.dt == 0x1000) { opts.biff = 5; seen_codepage = true; set_cp(opts.codepage = 28591); } if(opts.biff == 8 && val.BIFFVer == 0 && val.dt == 16) opts.biff = 2; if(file_depth++) break; - out = ((options.dense ? [] : {})); + out = ({}); if(options.dense) out["!data"] = []; if(opts.biff < 8 && !seen_codepage) { seen_codepage = true; set_cp(opts.codepage = options.codepage || 1252); } @@ -19406,7 +19423,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; wsprops = {Hidden:(Directory[s]||{hs:0}).hs, name:cur_sheet }; } break; case 0x0203 /* Number */: case 0x0003 /* BIFF2NUM */: case 0x0002 /* BIFF2INT */: { - if(out["!type"] == "chart") if(options.dense ? (out[val.r]||[])[val.c]: out[encode_cell({c:val.c, r:val.r})]) ++val.c; + if(out["!type"] == "chart") if(options.dense ? (out["!data"][val.r]||[])[val.c]: out[encode_col(val.c) + encode_row(val.r)]) ++val.c; temp_val = ({ixfe: val.ixfe, XF: XFs[val.ixfe]||{}, v:val.val, t:'n'}); if(BIFF2Fmt > 0) temp_val.z = BIFF2FmtTable[(temp_val.ixfe>>8) & 0x3F]; safe_format_xf(temp_val, options, wb.opts.Date1904); @@ -19443,7 +19460,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; var _fr = _f[0][0][1][0], _fc = _f[0][0][1][1]; var _fe = encode_cell({r:_fr, c:_fc}); if(sharedf[_fe]) temp_val.f = ""+stringify_formula(val.formula,range,val.cell,supbooks, opts); - else temp_val.F = ((options.dense ? (out[_fr]||[])[_fc]: out[_fe]) || {}).F; + else temp_val.F = ((options.dense ? (out["!data"][_fr]||[])[_fc]: out[_fe]) || {}).F; } else temp_val.f = ""+stringify_formula(val.formula,range,val.cell,supbooks, opts); } if(BIFF2Fmt > 0) temp_val.z = BIFF2FmtTable[(temp_val.ixfe>>8) & 0x3F]; @@ -19468,7 +19485,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; case 0x0021: case 0x0221 /* Array */: { arrayf.push(val); var _arraystart = encode_cell(val[0].s); - cc = options.dense ? (out[val[0].s.r]||[])[val[0].s.c] : out[_arraystart]; + cc = options.dense ? (out["!data"][val[0].s.r]||[])[val[0].s.c] : out[_arraystart]; if(options.cellFormula && cc) { if(!last_formula) break; /* technically unreachable */ if(!_arraystart || !cc) break; @@ -19482,7 +19499,7 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; /* TODO: capture range */ if(!last_formula) break; /* technically unreachable */ sharedf[encode_cell(last_formula.cell)]= val[0]; - cc = options.dense ? (out[last_formula.cell.r]||[])[last_formula.cell.c] : out[encode_cell(last_formula.cell)]; + cc = options.dense ? (out["!data"][last_formula.cell.r]||[])[last_formula.cell.c] : out[encode_cell(last_formula.cell)]; (cc||{}).f = ""+stringify_formula(val[0], range, lastcell, supbooks, opts); } } break; @@ -19547,25 +19564,25 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; case 0x01b8 /* HLink */: { for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR) for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC) { - cc = options.dense ? (out[rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; + cc = options.dense ? (out["!data"][rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; if(cc) cc.l = val[1]; } } break; case 0x0800 /* HLinkTooltip */: { for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR) for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC) { - cc = options.dense ? (out[rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; + cc = options.dense ? (out["!data"][rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; if(cc && cc.l) cc.l.Tooltip = val[1]; } } break; case 0x001c /* Note */: { if(opts.biff <= 5 && opts.biff >= 2) break; /* TODO: BIFF5 */ - cc = options.dense ? (out[val[0].r]||[])[val[0].c] : out[encode_cell(val[0])]; + cc = options.dense ? (out["!data"][val[0].r]||[])[val[0].c] : out[encode_cell(val[0])]; var noteobj = objects[val[2]]; if(!cc) { if(options.dense) { - if(!out[val[0].r]) out[val[0].r] = []; - cc = out[val[0].r][val[0].c] = ({t:"z"}); + if(!out["!data"][val[0].r]) out["!data"][val[0].r] = []; + cc = out["!data"][val[0].r][val[0].c] = ({t:"z"}); } else { cc = out[encode_cell(val[0])] = ({t:"z"}); } @@ -21174,20 +21191,20 @@ function write_ws_biff2_cell(ba, cell, R, C) { } function write_ws_biff2(ba, ws, idx, opts) { - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var range = safe_decode_range(ws['!ref'] || "A1"), ref, rr = "", cols = []; if(range.e.c > 0xFF || range.e.r > 0x3FFF) { if(opts.WTF) throw new Error("Range " + (ws['!ref'] || "A1") + " exceeds format limit A1:IV16384"); range.e.c = Math.min(range.e.c, 0xFF); range.e.r = Math.min(range.e.c, 0x3FFF); - ref = encode_range(range); } + var row = []; + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= range.e.r; ++R) { + if(dense) row = ws["!data"][R] || []; rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); - ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + for(C = range.s.c; C <= range.e.c; ++C) { + var cell = dense ? row[C] : ws[cols[C] + rr]; if(!cell) continue; /* write cell */ write_ws_biff2_cell(ba, cell, R, C, opts); @@ -21198,7 +21215,6 @@ function write_ws_biff2(ba, ws, idx, opts) { /* Based on test files */ function write_biff2_buf(wb, opts) { var o = opts || {}; - if(DENSE != null && o.dense == null) o.dense = DENSE; var ba = buf_array(); var idx = 0; for(var i=0;i/g, ""); var mtch = str.match(/"); @@ -21550,7 +21568,7 @@ function html_to_sheet(str, _opts) { if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}); o.z = opts.dateNF || table_fmt[14]; } - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = o; } + if(dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = o; } else ws[encode_cell({r:R, c:C})] = o; C += CS; } @@ -21563,6 +21581,7 @@ function make_html_row(ws, r, R, o) { var M = (ws['!merges'] ||[]); var oo = []; var sp = ({}); + var dense = ws["!data"] != null; for(var C = r.s.c; C <= r.e.c; ++C) { var RS = 0, CS = 0; for(var j = 0; j < M.length; ++j) { @@ -21572,8 +21591,8 @@ function make_html_row(ws, r, R, o) { RS = M[j].e.r - M[j].s.r + 1; CS = M[j].e.c - M[j].s.c + 1; break; } if(RS < 0) continue; - var coord = encode_cell({r:R,c:C}); - var cell = o.dense ? (ws[R]||[])[C] : ws[coord]; + var coord = encode_col(C) + encode_row(R); + var cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; /* TODO: html entities */ var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; sp = ({}); @@ -21621,7 +21640,6 @@ function sheet_to_html(ws, opts/*, wb:?Workbook*/) { var footer = o.footer != null ? o.footer : HTML_END; var out = [header]; var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); out.push(make_html_preamble(ws, r, o)); for(var R = r.s.r; R <= r.e.r; ++R) out.push(make_html_row(ws, r, R, o)); out.push("
" + footer); @@ -21636,7 +21654,7 @@ function sheet_add_dom(ws, table, _opts) { } var opts = _opts || {}; - if(DENSE != null) opts.dense = DENSE; + var dense = ws["!data"] != null; var or_R = 0, or_C = 0; if(opts.origin != null) { if(typeof opts.origin == 'number') or_R = opts.origin; @@ -21701,7 +21719,7 @@ function sheet_add_dom(ws, table, _opts) { l = Aelts[Aelti].getAttribute("href"); if(l.charAt(0) != "#") break; } if(l && l.charAt(0) != "#" && l.slice(0, 11).toLowerCase() != 'javascript:') o.l = ({ Target: l }); - if(opts.dense) { if(!ws[R + or_R]) ws[R + or_R] = []; ws[R + or_R][C + or_C] = o; } + if(dense) { if(!ws["!data"][R + or_R]) ws["!data"][R + or_R] = []; ws["!data"][R + or_R][C + or_C] = o; } else ws[encode_cell({c:C + or_C, r:R + or_R})] = o; if(range.e.c < C + or_C) range.e.c = C + or_C; C += CS; @@ -21717,7 +21735,7 @@ function sheet_add_dom(ws, table, _opts) { function parse_dom_table(table, _opts) { var opts = _opts || {}; - var ws = opts.dense ? ([]) : ({}); + var ws = ({}); if(opts.dense) ws["!data"] = []; return sheet_add_dom(ws, table, _opts); } @@ -21990,7 +22008,7 @@ function parse_content_xml(d, _opts, _nfm) { var sheetag; var rowtag; var Sheets = {}, SheetNames = []; - var ws = opts.dense ? ([]) : ({}); + var ws = ({}); if(opts.dense) ws["!data"] = []; var Rn, q; var ctag = ({value:""}); var textp = "", textpidx = 0, textptag; @@ -22034,7 +22052,7 @@ function parse_content_xml(d, _opts, _nfm) { sheetag = parsexmltag(Rn[0], false); R = C = -1; range.s.r = range.s.c = 10000000; range.e.r = range.e.c = 0; - ws = opts.dense ? ([]) : ({}); merges = []; + ws = ({}); if(opts.dense) ws["!data"] = []; merges = []; rowinfo = []; intable = true; } @@ -22054,7 +22072,7 @@ function parse_content_xml(d, _opts, _nfm) { case 'covered-table-cell': // 9.1.5 if(Rn[1] !== '/') ++C; if(opts.sheetStubs) { - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = {t:'z'}; } + if(opts.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = {t:'z'}; } else ws[encode_cell({r:R,c:C})] = {t:'z'}; } textp = ""; textR = []; @@ -22070,10 +22088,10 @@ function parse_content_xml(d, _opts, _nfm) { if((ctag['数据类型'] || ctag['value-type']) == "string") { q.t = "s"; q.v = unescapexml(ctag['string-value'] || ""); if(opts.dense) { - if(!ws[R]) ws[R] = []; - ws[R][C] = q; + if(!ws["!data"][R]) ws["!data"][R] = []; + ws["!data"][R][C] = q; } else { - ws[encode_cell({r:R,c:C})] = q; + ws[encode_col(C) + encode_row(R)] = q; } } C+= colpeat-1; @@ -22150,9 +22168,9 @@ function parse_content_xml(d, _opts, _nfm) { for(var rpt = 0; rpt < rowpeat; ++rpt) { colpeat = parseInt(ctag['number-columns-repeated']||"1", 10); if(opts.dense) { - if(!ws[R + rpt]) ws[R + rpt] = []; - ws[R + rpt][C] = rpt == 0 ? q : dup(q); - while(--colpeat > 0) ws[R + rpt][C + colpeat] = dup(q); + if(!ws["!data"][R + rpt]) ws["!data"][R + rpt] = []; + ws["!data"][R + rpt][C] = rpt == 0 ? q : dup(q); + while(--colpeat > 0) ws["!data"][R + rpt][C + colpeat] = dup(q); } else { ws[encode_cell({r:R + rpt,c:C})] = q; while(--colpeat > 0) ws[encode_cell({r:R + rpt,c:C + colpeat})] = dup(q); @@ -22737,7 +22755,7 @@ var write_content_ods = /* @__PURE__ */(function() { o.push(' \n'); var R=0,C=0, range = decode_range(ws['!ref']||"A1"); var marr = ws['!merges'] || [], mi = 0; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; if(ws["!cols"]) { for(C = 0; C <= range.e.c; ++C) o.push(' \n'); } @@ -22763,7 +22781,7 @@ var write_content_ods = /* @__PURE__ */(function() { break; } if(skip) { o.push(covered_cell_xml); continue; } - var ref = encode_cell({r:R, c:C}), cell = dense ? (ws[R]||[])[C]: ws[ref]; + var ref = encode_cell({r:R, c:C}), cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(cell && cell.f) { ct['table:formula'] = escapexml(csf_to_ods_formula(cell.f)); if(cell.F) { @@ -22873,9 +22891,10 @@ var write_content_ods = /* @__PURE__ */(function() { var nfi = 69; wb.SheetNames.map(function(n) { return wb.Sheets[n]; }).forEach(function(ws) { if(!ws) return; + var dense = (ws["!data"] != null); var range = decode_range(ws["!ref"]); for(var R = 0; R <= range.e.r; ++R) for(var C = 0; C <= range.e.c; ++C) { - var c = Array.isArray(ws) ? (ws[R]||[])[C] : ws[encode_cell({r:R,c:C})]; + var c = dense ? (ws["!data"][R]||[])[C] : ws[encode_cell({r:R,c:C})]; if(!c || !c.z || c.z.toLowerCase() == "general") continue; if(!nfs[c.z]) { var out = write_number_format_ods(c.z, "N" + nfi); @@ -23033,29 +23052,22 @@ function u8str(u8) { function stru8(str) { return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); } -function u8contains(body, search) { - var L = body.indexOf(search[0]); - if (L == -1) - return false; - outer: - for (; L <= body.length - search.length; ++L) { - for (var j = 0; j < search.length; ++j) - if (body[L + j] != search[j]) - continue outer; - return true; - } - return false; -} function u8concat(u8a) { - var len = u8a.reduce(function(acc, x) { - return acc + x.length; - }, 0); + var len = 0; + for (var i = 0; i < u8a.length; ++i) + len += u8a[i].length; var out = new Uint8Array(len); var off = 0; - u8a.forEach(function(u8) { - out.set(u8, off); - off += u8.length; - }); + for (i = 0; i < u8a.length; ++i) { + var u8 = u8a[i], L = u8.length; + if (L < 250) { + for (var j = 0; j < L; ++j) + out[off++] = u8[j]; + } else { + out.set(u8, off); + off += L; + } + } return out; } function popcnt(x) { @@ -23080,7 +23092,7 @@ function writeDecimal128LE(buf, offset, value) { buf[offset + 15] |= value >= 0 ? 0 : 128; } function parse_varint49(buf, ptr) { - var l = ptr ? ptr[0] : 0; + var l = ptr.l; var usz = buf[l] & 127; varint: if (buf[l++] >= 128) { @@ -23106,8 +23118,7 @@ function parse_varint49(buf, ptr) { if (buf[l++] < 128) break varint; } - if (ptr) - ptr[0] = l; + ptr.l = l; return usz; } function write_varint49(v) { @@ -23148,9 +23159,9 @@ function write_varint49(v) { return usz[subarray](0, L); } function parse_packed_varints(buf) { - var ptr = [0]; + var ptr = { l: 0 }; var out = []; - while (ptr[0] < buf.length) + while (ptr.l < buf.length) out.push(parse_varint49(buf, ptr)); return out; } @@ -23210,50 +23221,49 @@ function varint_to_u64(buf) { return [lo >>> 0, hi >>> 0]; } function parse_shallow(buf) { - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { - var off = ptr[0]; + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { + var off = ptr.l; var num = parse_varint49(buf, ptr); var type = num & 7; - num = Math.floor(num / 8); - var len = 0; - var res; - if (num == 0) - break; + num = num / 8 | 0; + var data; + var l = ptr.l; switch (type) { case 0: { - var l = ptr[0]; - while (buf[ptr[0]++] >= 128) + while (buf[l++] >= 128) ; - res = buf[subarray](l, ptr[0]); + data = buf[subarray](ptr.l, l); + ptr.l = l; + } + break; + case 1: + { + data = buf[subarray](l, l + 8); + ptr.l = l + 8; + } + break; + case 2: + { + var len = parse_varint49(buf, ptr); + data = buf[subarray](ptr.l, ptr.l + len); + ptr.l += len; } break; case 5: - len = 4; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; + { + data = buf[subarray](l, l + 4); + ptr.l = l + 4; + } break; - case 1: - len = 8; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 2: - len = parse_varint49(buf, ptr); - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 3: - case 4: default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { data: res, type: type }; + var v = { data: data, type: type }; if (out[num] == null) - out[num] = [v]; - else - out[num].push(v); + out[num] = []; + out[num].push(v); } return out; } @@ -23280,11 +23290,11 @@ function mappa(data, cb) { } function parse_iwa_file(buf) { var _a; - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { var len = parse_varint49(buf, ptr); - var ai = parse_shallow(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + var ai = parse_shallow(buf[subarray](ptr.l, ptr.l + len)); + ptr.l += len; var res = { id: varint_to_i32(ai[1][0].data), messages: [] @@ -23294,9 +23304,9 @@ function parse_iwa_file(buf) { var fl = varint_to_i32(mi[3][0].data); res.messages.push({ meta: mi, - data: buf[subarray](ptr[0], ptr[0] + fl) + data: buf[subarray](ptr.l, ptr.l + fl) }); - ptr[0] += fl; + ptr.l += fl; }); if ((_a = ai[3]) == null ? void 0 : _a[0]) res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; @@ -23332,45 +23342,46 @@ function write_iwa_file(ias) { function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); - var ptr = [0]; + var ptr = { l: 0 }; var usz = parse_varint49(buf, ptr); var chunks = []; - while (ptr[0] < buf.length) { - var tag = buf[ptr[0]] & 3; + var l = ptr.l; + while (l < buf.length) { + var tag = buf[l] & 3; if (tag == 0) { - var len = buf[ptr[0]++] >> 2; + var len = buf[l++] >> 2; if (len < 60) ++len; else { var c = len - 59; - len = buf[ptr[0]]; + len = buf[l]; if (c > 1) - len |= buf[ptr[0] + 1] << 8; + len |= buf[l + 1] << 8; if (c > 2) - len |= buf[ptr[0] + 2] << 16; + len |= buf[l + 2] << 16; if (c > 3) - len |= buf[ptr[0] + 3] << 24; + len |= buf[l + 3] << 24; len >>>= 0; len++; - ptr[0] += c; + l += c; } - chunks.push(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + chunks.push(buf[subarray](l, l + len)); + l += len; continue; } else { var offset = 0, length = 0; if (tag == 1) { - length = (buf[ptr[0]] >> 2 & 7) + 4; - offset = (buf[ptr[0]++] & 224) << 3; - offset |= buf[ptr[0]++]; + length = (buf[l] >> 2 & 7) + 4; + offset = (buf[l++] & 224) << 3; + offset |= buf[l++]; } else { - length = (buf[ptr[0]++] >> 2) + 1; + length = (buf[l++] >> 2) + 1; if (tag == 2) { - offset = buf[ptr[0]] | buf[ptr[0] + 1] << 8; - ptr[0] += 2; + offset = buf[l] | buf[l + 1] << 8; + l += 2; } else { - offset = (buf[ptr[0]] | buf[ptr[0] + 1] << 8 | buf[ptr[0] + 2] << 16 | buf[ptr[0] + 3] << 24) >>> 0; - ptr[0] += 4; + offset = (buf[l] | buf[l + 1] << 8 | buf[l + 2] << 16 | buf[l + 3] << 24) >>> 0; + l += 4; } } if (offset == 0) @@ -23402,16 +23413,15 @@ function parse_snappy_chunk(type, buf) { if (length) chunks.push(chunks[j][subarray](0, length)); } - if (chunks.length > 100) + if (chunks.length > 25) chunks = [u8concat(chunks)]; } } - if (chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0) != usz) - throw new Error("Unexpected length: ".concat(chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0), " != ").concat(usz)); + var clen = 0; + for (var u8i = 0; u8i < chunks.length; ++u8i) + clen += chunks[u8i].length; + if (clen != usz) + throw new Error("Unexpected length: ".concat(clen, " != ").concat(usz)); return chunks; } function decompress_iwa_file(buf) { @@ -23428,7 +23438,7 @@ function decompress_iwa_file(buf) { } if (l !== buf.length) throw new Error("data is not a valid framed stream!"); - return u8concat(out); + return out.length == 1 ? out[0] : u8concat(out); } function compress_iwa_file(buf) { var out = []; @@ -23475,12 +23485,12 @@ function numbers_format_cell(cell, t, flags, ofmt, nfmt) { var fmt = ver >= 5 ? nfmt : ofmt; dur: if (flags & (ver > 4 ? 8 : 4) && cell.t == "n" && ctype == 7) { - var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? parse_varint49(fmt[7][0].data) : -1; + var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? varint_to_i32(fmt[7][0].data) : -1; if (dstyle == -1) break dur; - var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? parse_varint49(fmt[15][0].data) : -1; - var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? parse_varint49(fmt[16][0].data) : -1; - var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? parse_varint49(fmt[40][0].data) : -1; + var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? varint_to_i32(fmt[15][0].data) : -1; + var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? varint_to_i32(fmt[16][0].data) : -1; + var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? varint_to_i32(fmt[40][0].data) : -1; var d = cell.v, dd = d; autodur: if (auto) { @@ -23808,7 +23818,7 @@ function parse_cell_storage(buf, lut) { } function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); - return parse_varint49(pb[1][0].data); + return varint_to_i32(pb[1][0].data); } function write_TSP_Reference(idx) { return write_shallow([ @@ -23939,7 +23949,7 @@ function parse_TST_TableModelArchive(M, root, ws) { if (range.e.c < 0) throw new Error("Invalid col varint ".concat(pb[7][0].data)); ws["!ref"] = encode_range(range); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, dws = ws; var store = parse_shallow(pb[4][0].data); var lut = numbers_lut_new(); if ((_a = store[4]) == null ? void 0 : _a[0]) @@ -23964,12 +23974,11 @@ function parse_TST_TableModelArchive(M, root, ws) { var res = parse_cell_storage(buf, lut); if (res) { if (dense) { - if (!ws[_R + R]) - ws[_R + R] = []; - ws[_R + R][C] = res; + if (!dws["!data"][_R + R]) + dws["!data"][_R + R] = []; + dws["!data"][_R + R][C] = res; } else { - var addr = encode_cell({ r: _R + R, c: C }); - ws[addr] = res; + ws[encode_col(C) + encode_row(_R + R)] = res; } } }); @@ -23996,12 +24005,9 @@ function parse_TST_TableModelArchive(M, root, ws) { } function parse_TST_TableInfoArchive(M, root, opts) { var pb = parse_shallow(root.data); - var out; - if (!(opts == null ? void 0 : opts.dense)) - out = { "!ref": "A1" }; - else - out = []; - out["!ref"] = "A1"; + var out = { "!ref": "A1" }; + if (opts == null ? void 0 : opts.dense) + out["!data"] = []; var tableref = M[parse_TSP_Reference(pb[2][0].data)]; var mtype = varint_to_i32(tableref[0].meta[1][0].data); if (mtype != 6001) @@ -24218,26 +24224,20 @@ function build_numbers_deps(cfb) { dependents[packet.id] = { deps: [], location: fp, type: varint_to_i32(packet.messages[0].meta[1][0].data) }; }); }); - indices.sort(function(x, y) { - return x - y; - }); - var indices_varint = indices.filter(function(x) { - return x > 1; - }).map(function(x) { - return [x, write_varint49(x)]; - }); cfb.FileIndex.forEach(function(fi) { if (!fi.name.match(/\.iwa/)) return; if (fi.name.match(/OperationStorage/)) return; parse_iwa_file(decompress_iwa_file(fi.content)).forEach(function(ia) { - indices_varint.forEach(function(ivi) { - if (ia.messages.some(function(mess) { - return varint_to_i32(mess.meta[1][0].data) != 11006 && u8contains(mess.data, ivi[1]); - })) { - dependents[ivi[0]].deps.push(ia.id); - } + ia.messages.forEach(function(mess) { + [5, 6].forEach(function(f) { + if (!mess.meta[f]) + return; + mess.meta[f].forEach(function(x) { + dependents[ia.id].deps.push(varint_to_i32(x.data)); + }); + }); }); }); }); @@ -24486,7 +24486,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a3, _b2; var mm = parse_shallow(m.data); @@ -24549,7 +24549,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a2, _b2; var mm = parse_shallow(m.data); @@ -24609,7 +24609,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a2, _b2; var mm = parse_shallow(m.data); @@ -24721,16 +24721,16 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { var metadata = numbers_iwa_find(cfb, deps, 2); var mlist = parse_shallow(metadata.messages[0].data); var mlst = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) == tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) == tileref; }); - return (mlst == null ? void 0 : mlst.length) ? parse_varint49(parse_shallow(mlst[0].data)[12][0].data) : 0; + return (mlst == null ? void 0 : mlst.length) ? varint_to_i32(parse_shallow(mlst[0].data)[12][0].data) : 0; }(); { CFB.utils.cfb_del(cfb, deps[tileref].location); numbers_iwa_doit(cfb, deps, 2, function(ai) { var mlist = parse_shallow(ai.messages[0].data); mlist[3] = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); var parentidx = mlist[3].findIndex(function(m) { var _a, _b; @@ -24745,7 +24745,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { if (!parent[6]) parent[6] = []; parent[6] = parent[6].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); mlist[3][parentidx].data = write_shallow(parent); ai.messages[0].data = write_shallow(mlist); @@ -24805,7 +24805,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { [], [{ type: 0, data: write_varint49(save_token) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a, _b; var mm = parse_shallow(m.data); @@ -25875,17 +25875,17 @@ function writeFileAsync(filename, wb, opts, cb) { var _cb = cb; if(!(_cb instanceof Function)) _cb = (opts); return _fs.writeFile(filename, writeSync(wb, o), _cb); } -function make_json_row(sheet, r, R, cols, header, hdr, dense, o) { +function make_json_row(sheet, r, R, cols, header, hdr, o) { var rr = encode_row(R); var defval = o.defval, raw = o.raw || !Object.prototype.hasOwnProperty.call(o, "raw"); - var isempty = true; + var isempty = true, dense = (sheet["!data"] != null); var row = (header === 1) ? [] : {}; if(header !== 1) { if(Object.defineProperty) try { Object.defineProperty(row, '__rowNum__', {value:R, enumerable:false}); } catch(e) { row.__rowNum__ = R; } else row.__rowNum__ = R; } - if(!dense || sheet[R]) for (var C = r.s.c; C <= r.e.c; ++C) { - var val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + if(!dense || sheet["!data"][R]) for (var C = r.s.c; C <= r.e.c; ++C) { + var val = dense ? (sheet["!data"][R]||[])[C] : sheet[cols[C] + rr]; if(val === undefined || val.t === undefined) { if(defval === undefined) continue; if(hdr[C] != null) { row[hdr[C]] = defval; } @@ -25934,16 +25934,16 @@ function sheet_to_json(sheet, opts) { var cols = []; var out = []; var outi = 0, counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo = o.skipHidden && sheet["!cols"] || []; var rowinfo = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -25962,7 +25962,7 @@ function sheet_to_json(sheet, opts) { } for (R = r.s.r + offset; R <= r.e.r; ++R) { if ((rowinfo[R]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) out[outi++] = row.row; } out.length = outi; @@ -25973,9 +25973,11 @@ var qreg = /"/g; function make_csv_row(sheet, r, R, cols, fs, rs, FS, o) { var isempty = true; var row = [], txt = "", rr = encode_row(R); + var dense = sheet["!data"] != null; + var datarow = dense && sheet["!data"][R] || []; for(var C = r.s.c; C <= r.e.c; ++C) { if (!cols[C]) continue; - var val = o.dense ? (sheet[R]||[])[C]: sheet[cols[C] + rr]; + var val = dense ? datarow[C]: sheet[cols[C] + rr]; if(val == null) txt = ""; else if(val.v != null) { isempty = false; @@ -26002,7 +26004,6 @@ function sheet_to_csv(sheet, opts) { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row = "", cols = []; - o.dense = Array.isArray(sheet); var colinfo = o.skipHidden && sheet["!cols"] || []; var rowinfo = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -26014,7 +26015,6 @@ function sheet_to_csv(sheet, opts) { if(o.strip) row = row.replace(endregex,""); if(row || (o.blankrows !== false)) out.push((w++ ? RS : "") + row); } - delete o.dense; return out.join(""); } @@ -26031,13 +26031,13 @@ function sheet_to_formulae(sheet) { if(sheet == null || sheet["!ref"] == null) return []; var r = safe_decode_range(sheet['!ref']), rr = "", cols = [], C; var cmds = []; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; for(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C); for(var R = r.s.r; R <= r.e.r; ++R) { rr = encode_row(R); for(C = r.s.c; C <= r.e.c; ++C) { y = cols[C] + rr; - x = dense ? (sheet[R]||[])[C] : sheet[y]; + x = dense ? (sheet["!data"][R]||[])[C] : sheet[y]; val = ""; if(x === undefined) continue; else if(x.F != null) { @@ -26062,10 +26062,11 @@ function sheet_to_formulae(sheet) { function sheet_add_json(_ws, js, opts) { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; var offset = +!o.skipHeader; - var ws = _ws || (dense ? ([]) : ({})); + var ws = _ws || ({}); + if(!_ws && dense) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -26086,17 +26087,18 @@ function sheet_add_json(_ws, js, opts) { var hdr = o.header || [], C = 0; var ROW = []; js.forEach(function (JS, R) { - if(dense && !ws[_R + R + offset]) ws[_R + R + offset] = []; - if(dense) ROW = ws[_R + R + offset]; + if(dense && !ws["!data"][_R + R + offset]) ws["!data"][_R + R + offset] = []; + if(dense) ROW = ws["!data"][_R + R + offset]; keys(JS).forEach(function(k) { if((C=hdr.indexOf(k)) == -1) hdr[C=hdr.length] = k; var v = JS[k]; var t = 'z'; var z = ""; - var ref = dense ? "" : encode_cell({c:_C + C,r:_R + R + offset}); + var ref = dense ? "" : (encode_col(_C + C) + encode_row(_R + R + offset)); var cell = dense ? ROW[_C + C] : ws[ref]; if(v && typeof v === 'object' && !(v instanceof Date)){ - ws[ref] = v; + if(dense) ROW[_C + C] = v; + else ws[ref] = v; } else { if(typeof v == 'number') t = 'n'; else if(typeof v == 'boolean') t = 'b'; @@ -26121,9 +26123,9 @@ function sheet_add_json(_ws, js, opts) { }); range.e.c = Math.max(range.e.c, _C + hdr.length - 1); var __R = encode_row(_R); - if(dense && !ws[_R]) ws[_R] = []; + if(dense && !ws["!data"][_R]) ws["!data"][_R] = []; if(offset) for(C = 0; C < hdr.length; ++C) { - if(dense) ws[_R][C + _C] = {t:'s', v:hdr[C]}; + if(dense) ws["!data"][_R][C + _C] = {t:'s', v:hdr[C]}; else ws[encode_col(C + _C) + __R] = {t:'s', v:hdr[C]}; } ws['!ref'] = encode_range(range); @@ -26135,18 +26137,17 @@ function json_to_sheet(js, opts) { return sheet_add_json(null, js, opts); } function ws_get_cell_stub(ws, R, C) { /* A1 cell address */ if(typeof R == "string") { - /* dense */ - if(Array.isArray(ws)) { + if(ws["!data"] != null) { var RC = decode_cell(R); - if(!ws[RC.r]) ws[RC.r] = []; - return ws[RC.r][RC.c] || (ws[RC.r][RC.c] = {t:'z'}); + if(!ws["!data"][RC.r]) ws["!data"][RC.r] = []; + return ws["!data"][RC.r][RC.c] || (ws["!data"][RC.r][RC.c] = {t:'z'}); } return ws[R] || (ws[R] = {t:'z'}); } /* cell address object */ if(typeof R != "number") return ws_get_cell_stub(ws, encode_cell(R)); /* R and C are 0-based indices */ - return ws_get_cell_stub(ws, encode_cell({r:R,c:C||0})); + return ws_get_cell_stub(ws, encode_col(C||0) + encode_row(R)); } /* find sheet index for given name / validate index */ @@ -26301,7 +26302,6 @@ function write_csv_stream(sheet, opts) { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row = "", cols = []; - o.dense = Array.isArray(sheet); var colinfo = o.skipHidden && sheet["!cols"] || []; var rowinfo = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -26331,7 +26331,6 @@ function write_html_stream(ws, opts) { var footer = o.footer != null ? o.footer : HTML_END; stream.push(header); var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); stream.push(make_html_preamble(ws, r, o)); var R = r.s.r; var end = false; @@ -26369,16 +26368,16 @@ function write_json_stream(sheet, opts) { var rr = encode_row(r.s.r); var cols = []; var counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo = o.skipHidden && sheet["!cols"] || []; var rowinfo = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -26399,7 +26398,7 @@ function write_json_stream(sheet, opts) { stream._read = function() { while(R <= r.e.r) { if ((rowinfo[R-1]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); ++R; if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) { stream.push(row.row); diff --git a/xlsx.mini.flow.js b/xlsx.mini.flow.js index d5e06ef..582481c 100644 --- a/xlsx.mini.flow.js +++ b/xlsx.mini.flow.js @@ -1,10 +1,10 @@ /*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */ /* vim: set ts=2: */ /*exported XLSX */ -/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false, Set:false */ +/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false */ var XLSX = {}; function make_xlsx_lib(XLSX){ -XLSX.version = '0.18.12'; +XLSX.version = '0.19.0'; var current_codepage = 1200, current_ansi = 1252; /*:: declare var cptable:any; */ /*global cptable:true, window */ @@ -1669,7 +1669,7 @@ sleuth_fat(difat_start, difat_sec_cnt, sectors, ssz, fat_addrs); /** Chains */ var sector_list/*:SectorList*/ = make_sector_list(sectors, dir_start, fat_addrs, ssz); -sector_list[dir_start].name = "!Directory"; +if(dir_start < sector_list.length) sector_list[dir_start].name = "!Directory"; if(nmfs > 0 && minifat_start !== ENDOFCHAIN) sector_list[minifat_start].name = "!MiniFAT"; sector_list[fat_addrs[0]].name = "!FAT"; sector_list.fat_addrs = fat_addrs; @@ -4281,7 +4281,6 @@ function fix_col(cstr/*:string*/)/*:string*/ { return cstr.replace(/^([A-Z])/,"$ function unfix_col(cstr/*:string*/)/*:string*/ { return cstr.replace(/^\$([A-Z])/,"$1"); } function split_cell(cstr/*:string*/)/*:Array*/ { return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(","); } -//function decode_cell(cstr/*:string*/)/*:CellAddress*/ { var splt = split_cell(cstr); return { c:decode_col(splt[0]), r:decode_row(splt[1]) }; } function decode_cell(cstr/*:string*/)/*:CellAddress*/ { var R = 0, C = 0; for(var i = 0; i < cstr.length; ++i) { @@ -4291,7 +4290,6 @@ function decode_cell(cstr/*:string*/)/*:CellAddress*/ { } return { c: C - 1, r:R - 1 }; } -//function encode_cell(cell/*:CellAddress*/)/*:string*/ { return encode_col(cell.c) + encode_row(cell.r); } function encode_cell(cell/*:CellAddress*/)/*:string*/ { var col = cell.c + 1; var s=""; @@ -4384,9 +4382,10 @@ function sheet_to_workbook(sheet/*:Worksheet*/, opts)/*:Workbook*/ { function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksheet*/ { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; - var ws/*:Worksheet*/ = _ws || (dense ? ([]/*:any*/) : ({}/*:any*/)); + var ws/*:Worksheet*/ = _ws || ({}/*:any*/); + if(dense && !ws["!data"]) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -4405,13 +4404,19 @@ function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksh range.e.r = Math.max(range.e.r, _range.e.r); if(_R == -1) range.e.r = _R = _range.e.r + 1; } + var row = []; for(var R = 0; R != data.length; ++R) { if(!data[R]) continue; if(!Array.isArray(data[R])) throw new Error("aoa_to_sheet expects an array of arrays"); + var __R = _R + R, __Rstr = "" + (__R + 1); + if(dense) { + if(!ws["!data"][__R]) ws["!data"][__R] = []; + row = ws["!data"][__R]; + } for(var C = 0; C != data[R].length; ++C) { if(typeof data[R][C] === 'undefined') continue; var cell/*:Cell*/ = ({v: data[R][C] }/*:any*/); - var __R = _R + R, __C = _C + C; + var __C = _C + C; if(range.s.r > __R) range.s.r = __R; if(range.s.c > __C) range.s.c = __C; if(range.e.r < __R) range.e.r = __R; @@ -4435,11 +4440,10 @@ function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksh else cell.t = 's'; } if(dense) { - if(!ws[__R]) ws[__R] = []; - if(ws[__R][__C] && ws[__R][__C].z) cell.z = ws[__R][__C].z; - ws[__R][__C] = cell; + if(row[__C] && row[__C].z) cell.z = row[__C].z; + row[__C] = cell; } else { - var cell_ref = encode_cell(({c:__C,r:__R}/*:any*/)); + var cell_ref = encode_col(__C) + __Rstr/*:any*/; if(ws[cell_ref] && ws[cell_ref].z) cell.z = ws[cell_ref].z; ws[cell_ref] = cell; } @@ -5865,6 +5869,7 @@ function sheet_to_dbf(ws/*:Worksheet*/, opts/*:WriteOpts*/) { case 'N': var _n = "0"; if(typeof data[i][j] == "number") _n = data[i][j].toFixed(coldecimals[j]||0); + if(_n.length > colwidths[j]) _n = _n.slice(0, colwidths[j]); // addresses decimal > width for(hcnt=0; hcnt < colwidths[j]-_n.length; ++hcnt) rout.write_shift(1, 0x20); rout.write_shift(1, _n, "sbcs"); break; @@ -6128,7 +6133,7 @@ var SYLK = /*#__PURE__*/(function() { /* TODO: codepage */ var preamble/*:Array*/ = ["ID;PSheetJS;N;E"], o/*:Array*/ = []; var r = safe_decode_range(ws['!ref']), cell/*:Cell*/; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var RS = "\r\n"; var d1904 = (((wb||{}).Workbook||{}).WBProps||{}).date1904; @@ -6140,10 +6145,10 @@ var SYLK = /*#__PURE__*/(function() { preamble.push("B;Y" + (r.e.r - r.s.r + 1) + ";X" + (r.e.c - r.s.c + 1) + ";D" + [r.s.c,r.s.r,r.e.c,r.e.r].join(" ")); preamble.push("O;L;D;B" + (d1904 ? ";V4" : "") + ";K47;G100 0.001"); for(var R = r.s.r; R <= r.e.r; ++R) { + if(dense && !ws["!data"][R]) continue; var p = []; for(var C = r.s.c; C <= r.e.c; ++C) { - var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C]: ws[coord]; + cell = dense ? ws["!data"][R][C] : ws[encode_col(C) + encode_row(R)]; if(!cell || (cell.v == null && (!cell.f || cell.F))) continue; p.push(write_ws_cell_sylk(cell, ws, R, C, opts)); // TODO: pass date1904 info } @@ -6216,7 +6221,7 @@ var DIF = /*#__PURE__*/(function() { function sheet_to_dif(ws/*:Worksheet*//*::, opts:?any*/)/*:string*/ { var _DIF_XL = DIF_XL; var r = safe_decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var o/*:Array*/ = [ "TABLE\r\n0,1\r\n\"sheetjs\"\r\n", "VECTORS\r\n0," + (r.e.r - r.s.r + 1) + "\r\n\"\"\r\n", @@ -6224,9 +6229,10 @@ var DIF = /*#__PURE__*/(function() { "DATA\r\n0,0\r\n\"\"\r\n" ]; for(var R = r.s.r; R <= r.e.r; ++R) { + var row = dense ? ws["!data"][R] : []; var p = "-1,0\r\nBOT\r\n"; for(var C = r.s.c; C <= r.e.c; ++C) { - var cell/*:Cell*/ = dense ? (ws[R] && ws[R][C]) : ws[encode_cell({r:R,c:C})]; + var cell/*:Cell*/ = dense ? (row && row[C]) : ws[encode_cell({r:R,c:C})]; if(cell == null) { p +=("1,0\r\n\"\"\r\n"); continue;} switch(cell.t) { case 'n': @@ -6321,11 +6327,11 @@ var ETH = /*#__PURE__*/(function() { if(!ws || !ws['!ref']) return ""; var o/*:Array*/ = [], oo/*:Array*/ = [], cell, coord = ""; var r = decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { for(var C = r.s.c; C <= r.e.c; ++C) { coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null || cell.t === 'z') continue; oo = ["cell", coord, 't']; switch(cell.t) { @@ -6447,7 +6453,8 @@ var PRN = /*#__PURE__*/(function() { var o = opts || {}; var sep = ""; if(DENSE != null && o.dense == null) o.dense = DENSE; - var ws/*:Worksheet*/ = o.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws/*:Worksheet*/ = ({}/*:any*/); + if(o.dense) ws["!data"] = []; var range/*:Range*/ = ({s: {c:0, r:0}, e: {c:0, r:0}}/*:any*/); if(str.slice(0,4) == "sep=") { @@ -6493,7 +6500,7 @@ var PRN = /*#__PURE__*/(function() { cell.v = s; } if(cell.t == 'z'){} - else if(o.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = cell; } + else if(o.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = cell; } else ws[encode_cell({c:C,r:R})] = cell; start = end+1; startcc = str.charCodeAt(start); if(range.e.c < C) range.e.c = C; @@ -6549,12 +6556,12 @@ var PRN = /*#__PURE__*/(function() { function sheet_to_prn(ws/*:Worksheet*//*::, opts:?any*/)/*:string*/ { var o/*:Array*/ = []; var r = safe_decode_range(ws['!ref']), cell/*:Cell*/; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { var oo/*:Array*/ = []; for(var C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null) { oo.push(" "); continue; } var w = (cell.w || (format_cell(cell), cell.w) || "").slice(0,10); while(w.length < 10) w += " "; @@ -7866,18 +7873,18 @@ function write_vml_comment(x, _shapeid)/*:string*/ { '' ].join(""); } -function sheet_insert_comments(sheet, comments/*:Array*/, threaded/*:boolean*/, people/*:?Array*/) { - var dense = Array.isArray(sheet); +function sheet_insert_comments(sheet/*:WorkSheet*/, comments/*:Array*/, threaded/*:boolean*/, people/*:?Array*/) { + var dense = sheet["!data"] != null; var cell/*:Cell*/; comments.forEach(function(comment) { var r = decode_cell(comment.ref); if(dense) { - if(!sheet[r.r]) sheet[r.r] = []; - cell = sheet[r.r][r.c]; + if(!sheet["!data"][r.r]) sheet["!data"][r.r] = []; + cell = sheet["!data"][r.r][r.c]; } else cell = sheet[comment.ref]; if (!cell) { cell = ({t:"z"}/*:any*/); - if(dense) sheet[r.r][r.c] = cell; + if(dense) sheet["!data"][r.r][r.c] = cell; else sheet[comment.ref] = cell; var range = safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1"); if(range.s.r > r.r) range.s.r = r.r; @@ -7885,7 +7892,7 @@ function sheet_insert_comments(sheet, comments/*:Array*/, threaded/* if(range.s.c > r.c) range.s.c = r.c; if(range.e.c < r.c) range.e.c = r.c; var encoded = encode_range(range); - if (encoded !== sheet["!ref"]) sheet["!ref"] = encoded; + sheet["!ref"] = encoded; } if (!cell.c) cell.c = []; @@ -7903,7 +7910,6 @@ function sheet_insert_comments(sheet, comments/*:Array*/, threaded/* cell.c.push(o); }); } - /* 18.7 Comments */ function parse_comments_xml(data/*:string*/, opts)/*:Array*/ { /* 18.7.6 CT_Comments */ @@ -8361,7 +8367,7 @@ function parse_ws_xml(data/*:?string*/, opts, idx/*:number*/, rels, wb/*:WBWBPro if(DENSE != null && opts.dense == null) opts.dense = DENSE; /* 18.3.1.99 worksheet CT_Worksheet */ - var s = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var s = ({}/*:any*/); if(opts.dense) s["!data"] = []; var refguess/*:Range*/ = ({s: {r:2000000, c:2000000}, e: {r:0, c:0} }/*:any*/); var data1 = "", data2 = ""; @@ -8490,7 +8496,7 @@ function write_ws_xml_protection(sp)/*:string*/ { } function parse_ws_xml_hlinks(s, data/*:Array*/, rels) { - var dense = Array.isArray(s); + var dense = s["!data"] != null; for(var i = 0; i != data.length; ++i) { var val = parsexmltag(utf8read(data[i]), true); if(!val.ref) return; @@ -8506,11 +8512,11 @@ function parse_ws_xml_hlinks(s, data/*:Array*/, rels) { if(val.tooltip) { val.Tooltip = val.tooltip; delete val.tooltip; } var rng = safe_decode_range(val.ref); for(var R=rng.s.r;R<=rng.e.r;++R) for(var C=rng.s.c;C<=rng.e.c;++C) { - var addr = encode_cell({c:C,r:R}); + var addr = encode_col(C) + encode_row(R); if(dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:"z",v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:"z",v:undefined}; + s["!data"][R][C].l = val; } else { if(!s[addr]) s[addr] = {t:"z",v:undefined}; s[addr].l = val; @@ -8662,7 +8668,7 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th var do_format = Array.isArray(styles.CellXf), cf; var arrayf/*:Array<[Range, string]>*/ = []; var sharedf = []; - var dense = Array.isArray(s); + var dense = s["!data"] != null; var rows/*:Array*/ = [], rowobj = {}, rowrite = false; var sheetStubs = !!opts.sheetStubs; for(var marr = sdata.split(rowregex), mt = 0, marrlen = marr.length; mt != marrlen; ++mt) { @@ -8827,8 +8833,8 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th } if(dense) { var _r = decode_cell(tag.r); - if(!s[_r.r]) s[_r.r] = []; - s[_r.r][_r.c] = p; + if(!s["!data"][_r.r]) s["!data"][_r.r] = []; + s["!data"][_r.r][_r.c] = p; } else s[tag.r] = p; } } @@ -8837,7 +8843,7 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th function write_ws_xml_data(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbook*//*::, rels*/)/*:string*/ { var o/*:Array*/ = [], r/*:Array*/ = [], range = safe_decode_range(ws['!ref']), cell="", ref, rr = "", cols/*:Array*/ = [], R=0, C=0, rows = ws['!rows']; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var params = ({r:rr}/*:any*/), row/*:RowInfo*/, height = -1; for(C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(R = range.s.r; R <= range.e.r; ++R) { @@ -8845,7 +8851,7 @@ function write_ws_xml_data(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbook rr = encode_row(R); for(C = range.s.c; C <= range.e.c; ++C) { ref = cols[C] + rr; - var _cell = dense ? (ws[R]||[])[C]: ws[ref]; + var _cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(_cell === undefined) continue; if((cell = write_ws_xml_cell(_cell, ref, ws, opts, idx, wb)) != null) r.push(cell); } @@ -9034,7 +9040,10 @@ function parse_chart(data/*:?string*/, name/*:string*/, opts, rels, wb, csheet) refguess.e.c = C; col = encode_col(C); cache[0].forEach(function(n,i) { - cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; + if(cs["!data"]) { + if(!cs["!data"][i]) cs["!data"][i] = []; + cs["!data"][i][C] = {t:'n', v:n, z:cache[1] }; + } else cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; R = i; }); if(refguess.e.r < R) refguess.e.r = R; @@ -9530,8 +9539,8 @@ function parse_xlmeta(data, name/*:string*/, opts) { /* note: browser DOM element cannot see mso- style attrs, must parse */ function html_to_sheet(str/*:string*/, _opts)/*:Workbook*/ { var opts = _opts || {}; - if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var ws/*:Worksheet*/ = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var dense = (opts.dense != null) ? opts.dense : DENSE; + var ws/*:Worksheet*/ = ({}/*:any*/); if(dense) ws["!data"] = []; str = str.replace(//g, ""); var mtch/*:any*/ = str.match(/"); @@ -9577,7 +9586,7 @@ function html_to_sheet(str/*:string*/, _opts)/*:Workbook*/ { if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}/*:any*/); o.z = opts.dateNF || table_fmt[14]; } - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = o; } + if(dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = o; } else ws[encode_cell({r:R, c:C})] = o; C += CS; } @@ -9590,6 +9599,7 @@ function make_html_row(ws/*:Worksheet*/, r/*:Range*/, R/*:number*/, o/*:Sheet2HT var M/*:Array*/ = (ws['!merges'] ||[]); var oo/*:Array*/ = []; var sp = ({}/*:any*/); + var dense = ws["!data"] != null; for(var C = r.s.c; C <= r.e.c; ++C) { var RS = 0, CS = 0; for(var j = 0; j < M.length; ++j) { @@ -9599,8 +9609,8 @@ function make_html_row(ws/*:Worksheet*/, r/*:Range*/, R/*:number*/, o/*:Sheet2HT RS = M[j].e.r - M[j].s.r + 1; CS = M[j].e.c - M[j].s.c + 1; break; } if(RS < 0) continue; - var coord = encode_cell({r:R,c:C}); - var cell = o.dense ? (ws[R]||[])[C] : ws[coord]; + var coord = encode_col(C) + encode_row(R); + var cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; /* TODO: html entities */ var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; sp = ({}/*:any*/); @@ -9648,7 +9658,6 @@ function sheet_to_html(ws/*:Worksheet*/, opts/*:?Sheet2HTMLOpts*//*, wb:?Workboo var footer = o.footer != null ? o.footer : HTML_END; var out/*:Array*/ = [header]; var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); out.push(make_html_preamble(ws, r, o)); for(var R = r.s.r; R <= r.e.r; ++R) out.push(make_html_row(ws, r, R, o)); out.push("
" + footer); @@ -9663,7 +9672,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ } var opts = _opts || {}; - if(DENSE != null) opts.dense = DENSE; + var dense = ws["!data"] != null; var or_R = 0, or_C = 0; if(opts.origin != null) { if(typeof opts.origin == 'number') or_R = opts.origin; @@ -9728,7 +9737,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ l = Aelts[Aelti].getAttribute("href"); if(l.charAt(0) != "#") break; } if(l && l.charAt(0) != "#" && l.slice(0, 11).toLowerCase() != 'javascript:') o.l = ({ Target: l }); - if(opts.dense) { if(!ws[R + or_R]) ws[R + or_R] = []; ws[R + or_R][C + or_C] = o; } + if(dense) { if(!ws["!data"][R + or_R]) ws["!data"][R + or_R] = []; ws["!data"][R + or_R][C + or_C] = o; } else ws[encode_cell({c:C + or_C, r:R + or_R})] = o; if(range.e.c < C + or_C) range.e.c = C + or_C; C += CS; @@ -9744,7 +9753,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ function parse_dom_table(table/*:HTMLElement*/, _opts/*:?any*/)/*:Worksheet*/ { var opts = _opts || {}; - var ws/*:Worksheet*/ = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws/*:Worksheet*/ = ({}/*:any*/); if(opts.dense) ws["!data"] = []; return sheet_add_dom(ws, table, _opts); } @@ -10017,7 +10026,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { var sheetag/*:: = {name:"", '名称':""}*/; var rowtag/*:: = {'行号':""}*/; var Sheets = {}, SheetNames/*:Array*/ = []; - var ws = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws = ({}/*:any*/); if(opts.dense) ws["!data"] = []; var Rn, q/*:: :any = ({t:"", v:null, z:null, w:"",c:[],}:any)*/; var ctag = ({value:""}/*:any*/); var textp = "", textpidx = 0, textptag/*:: = {}*/; @@ -10061,7 +10070,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { sheetag = parsexmltag(Rn[0], false); R = C = -1; range.s.r = range.s.c = 10000000; range.e.r = range.e.c = 0; - ws = opts.dense ? ([]/*:any*/) : ({}/*:any*/); merges = []; + ws = ({}/*:any*/); if(opts.dense) ws["!data"] = []; merges = []; rowinfo = []; intable = true; } @@ -10081,7 +10090,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { case 'covered-table-cell': // 9.1.5 if(Rn[1] !== '/') ++C; if(opts.sheetStubs) { - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = {t:'z'}; } + if(opts.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = {t:'z'}; } else ws[encode_cell({r:R,c:C})] = {t:'z'}; } textp = ""; textR = []; @@ -10097,10 +10106,10 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { if((ctag['数据类型'] || ctag['value-type']) == "string") { q.t = "s"; q.v = unescapexml(ctag['string-value'] || ""); if(opts.dense) { - if(!ws[R]) ws[R] = []; - ws[R][C] = q; + if(!ws["!data"][R]) ws["!data"][R] = []; + ws["!data"][R][C] = q; } else { - ws[encode_cell({r:R,c:C})] = q; + ws[encode_col(C) + encode_row(R)] = q; } } C+= colpeat-1; @@ -10177,9 +10186,9 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { for(var rpt = 0; rpt < rowpeat; ++rpt) { colpeat = parseInt(ctag['number-columns-repeated']||"1", 10); if(opts.dense) { - if(!ws[R + rpt]) ws[R + rpt] = []; - ws[R + rpt][C] = rpt == 0 ? q : dup(q); - while(--colpeat > 0) ws[R + rpt][C + colpeat] = dup(q); + if(!ws["!data"][R + rpt]) ws["!data"][R + rpt] = []; + ws["!data"][R + rpt][C] = rpt == 0 ? q : dup(q); + while(--colpeat > 0) ws["!data"][R + rpt][C + colpeat] = dup(q); } else { ws[encode_cell({r:R + rpt,c:C})] = q; while(--colpeat > 0) ws[encode_cell({r:R + rpt,c:C + colpeat})] = dup(q); @@ -10764,7 +10773,7 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function o.push(' \n'); var R=0,C=0, range = decode_range(ws['!ref']||"A1"); var marr/*:Array*/ = ws['!merges'] || [], mi = 0; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; if(ws["!cols"]) { for(C = 0; C <= range.e.c; ++C) o.push(' \n'); } @@ -10790,7 +10799,7 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function break; } if(skip) { o.push(covered_cell_xml); continue; } - var ref = encode_cell({r:R, c:C}), cell = dense ? (ws[R]||[])[C]: ws[ref]; + var ref = encode_cell({r:R, c:C}), cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(cell && cell.f) { ct['table:formula'] = escapexml(csf_to_ods_formula(cell.f)); if(cell.F) { @@ -10900,9 +10909,10 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function var nfi = 69; wb.SheetNames.map(function(n) { return wb.Sheets[n]; }).forEach(function(ws) { if(!ws) return; + var dense = (ws["!data"] != null); var range = decode_range(ws["!ref"]); for(var R = 0; R <= range.e.r; ++R) for(var C = 0; C <= range.e.c; ++C) { - var c = Array.isArray(ws) ? (ws[R]||[])[C] : ws[encode_cell({r:R,c:C})]; + var c = dense ? (ws["!data"][R]||[])[C] : ws[encode_cell({r:R,c:C})]; if(!c || !c.z || c.z.toLowerCase() == "general") continue; if(!nfs[c.z]) { var out = write_number_format_ods(c.z, "N" + nfi); @@ -12003,17 +12013,17 @@ type MJRObject = { isempty: boolean; }; */ -function make_json_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, header/*:number*/, hdr/*:Array*/, dense/*:boolean*/, o/*:Sheet2JSONOpts*/)/*:MJRObject*/ { +function make_json_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, header/*:number*/, hdr/*:Array*/, o/*:Sheet2JSONOpts*/)/*:MJRObject*/ { var rr = encode_row(R); var defval = o.defval, raw = o.raw || !Object.prototype.hasOwnProperty.call(o, "raw"); - var isempty = true; + var isempty = true, dense = (sheet["!data"] != null); var row/*:any*/ = (header === 1) ? [] : {}; if(header !== 1) { if(Object.defineProperty) try { Object.defineProperty(row, '__rowNum__', {value:R, enumerable:false}); } catch(e) { row.__rowNum__ = R; } else row.__rowNum__ = R; } - if(!dense || sheet[R]) for (var C = r.s.c; C <= r.e.c; ++C) { - var val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + if(!dense || sheet["!data"][R]) for (var C = r.s.c; C <= r.e.c; ++C) { + var val = dense ? (sheet["!data"][R]||[])[C] : sheet[cols[C] + rr]; if(val === undefined || val.t === undefined) { if(defval === undefined) continue; if(hdr[C] != null) { row[hdr[C]] = defval; } @@ -12062,16 +12072,16 @@ function sheet_to_json(sheet/*:Worksheet*/, opts/*:?Sheet2JSONOpts*/) { var cols/*:Array*/ = []; var out/*:Array*/ = []; var outi = 0, counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -12090,7 +12100,7 @@ function sheet_to_json(sheet/*:Worksheet*/, opts/*:?Sheet2JSONOpts*/) { } for (R = r.s.r + offset; R <= r.e.r; ++R) { if ((rowinfo[R]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) out[outi++] = row.row; } out.length = outi; @@ -12101,9 +12111,11 @@ var qreg = /"/g; function make_csv_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, fs/*:number*/, rs/*:number*/, FS/*:string*/, o/*:Sheet2CSVOpts*/)/*:?string*/ { var isempty = true; var row/*:Array*/ = [], txt = "", rr = encode_row(R); + var dense = sheet["!data"] != null; + var datarow = dense && sheet["!data"][R] || []; for(var C = r.s.c; C <= r.e.c; ++C) { if (!cols[C]) continue; - var val = o.dense ? (sheet[R]||[])[C]: sheet[cols[C] + rr]; + var val = dense ? datarow[C]: sheet[cols[C] + rr]; if(val == null) txt = ""; else if(val.v != null) { isempty = false; @@ -12130,7 +12142,6 @@ function sheet_to_csv(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/)/*:string*/ { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row = "", cols/*:Array*/ = []; - o.dense = Array.isArray(sheet); var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -12142,7 +12153,6 @@ function sheet_to_csv(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/)/*:string*/ { if(o.strip) row = row.replace(endregex,""); if(row || (o.blankrows !== false)) out.push((w++ ? RS : "") + row); } - delete o.dense; return out.join(""); } @@ -12159,13 +12169,13 @@ function sheet_to_formulae(sheet/*:Worksheet*/)/*:Array*/ { if(sheet == null || sheet["!ref"] == null) return []; var r = safe_decode_range(sheet['!ref']), rr = "", cols/*:Array*/ = [], C; var cmds/*:Array*/ = []; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; for(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C); for(var R = r.s.r; R <= r.e.r; ++R) { rr = encode_row(R); for(C = r.s.c; C <= r.e.c; ++C) { y = cols[C] + rr; - x = dense ? (sheet[R]||[])[C] : sheet[y]; + x = dense ? (sheet["!data"][R]||[])[C] : sheet[y]; val = ""; if(x === undefined) continue; else if(x.F != null) { @@ -12190,10 +12200,11 @@ function sheet_to_formulae(sheet/*:Worksheet*/)/*:Array*/ { function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet*/ { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; var offset = +!o.skipHeader; - var ws/*:Worksheet*/ = _ws || (dense ? ([]/*:any*/) : ({}/*:any*/)); + var ws/*:Worksheet*/ = _ws || ({}); + if(!_ws && dense) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -12214,17 +12225,18 @@ function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet var hdr/*:Array*/ = o.header || [], C = 0; var ROW = []; js.forEach(function (JS, R/*:number*/) { - if(dense && !ws[_R + R + offset]) ws[_R + R + offset] = []; - if(dense) ROW = ws[_R + R + offset]; + if(dense && !ws["!data"][_R + R + offset]) ws["!data"][_R + R + offset] = []; + if(dense) ROW = ws["!data"][_R + R + offset]; keys(JS).forEach(function(k) { if((C=hdr.indexOf(k)) == -1) hdr[C=hdr.length] = k; var v = JS[k]; var t = 'z'; var z = ""; - var ref = dense ? "" : encode_cell({c:_C + C,r:_R + R + offset}); + var ref = dense ? "" : (encode_col(_C + C) + encode_row(_R + R + offset)); var cell/*:Cell*/ = dense ? ROW[_C + C] : ws[ref]; if(v && typeof v === 'object' && !(v instanceof Date)){ - ws[ref] = v; + if(dense) ROW[_C + C] = v; + else ws[ref] = v; } else { if(typeof v == 'number') t = 'n'; else if(typeof v == 'boolean') t = 'b'; @@ -12249,9 +12261,9 @@ function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet }); range.e.c = Math.max(range.e.c, _C + hdr.length - 1); var __R = encode_row(_R); - if(dense && !ws[_R]) ws[_R] = []; + if(dense && !ws["!data"][_R]) ws["!data"][_R] = []; if(offset) for(C = 0; C < hdr.length; ++C) { - if(dense) ws[_R][C + _C] = {t:'s', v:hdr[C]}; + if(dense) ws["!data"][_R][C + _C] = {t:'s', v:hdr[C]}; else ws[encode_col(C + _C) + __R] = {t:'s', v:hdr[C]}; } ws['!ref'] = encode_range(range); @@ -12263,18 +12275,17 @@ function json_to_sheet(js/*:Array*/, opts)/*:Worksheet*/ { return sheet_add function ws_get_cell_stub(ws/*:Worksheet*/, R, C/*:?number*/)/*:Cell*/ { /* A1 cell address */ if(typeof R == "string") { - /* dense */ - if(Array.isArray(ws)) { + if(ws["!data"] != null) { var RC = decode_cell(R); - if(!ws[RC.r]) ws[RC.r] = []; - return ws[RC.r][RC.c] || (ws[RC.r][RC.c] = {t:'z'}); + if(!ws["!data"][RC.r]) ws["!data"][RC.r] = []; + return ws["!data"][RC.r][RC.c] || (ws["!data"][RC.r][RC.c] = {t:'z'}); } return ws[R] || (ws[R] = {t:'z'}); } /* cell address object */ if(typeof R != "number") return ws_get_cell_stub(ws, encode_cell(R)); /* R and C are 0-based indices */ - return ws_get_cell_stub(ws, encode_cell({r:R,c:C||0})); + return ws_get_cell_stub(ws, encode_col(C||0) + encode_row(R)); } /* find sheet index for given name / validate index */ diff --git a/xlsx.mini.js b/xlsx.mini.js index 55162b2..06ab402 100644 --- a/xlsx.mini.js +++ b/xlsx.mini.js @@ -1,10 +1,10 @@ /*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */ /* vim: set ts=2: */ /*exported XLSX */ -/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false, Set:false */ +/*global global, exports, module, require:false, process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false */ var XLSX = {}; function make_xlsx_lib(XLSX){ -XLSX.version = '0.18.12'; +XLSX.version = '0.19.0'; var current_codepage = 1200, current_ansi = 1252; /*global cptable:true, window */ var $cptable; @@ -1607,7 +1607,7 @@ sleuth_fat(difat_start, difat_sec_cnt, sectors, ssz, fat_addrs); /** Chains */ var sector_list = make_sector_list(sectors, dir_start, fat_addrs, ssz); -sector_list[dir_start].name = "!Directory"; +if(dir_start < sector_list.length) sector_list[dir_start].name = "!Directory"; if(nmfs > 0 && minifat_start !== ENDOFCHAIN) sector_list[minifat_start].name = "!MiniFAT"; sector_list[fat_addrs[0]].name = "!FAT"; sector_list.fat_addrs = fat_addrs; @@ -4201,7 +4201,6 @@ function fix_col(cstr) { return cstr.replace(/^([A-Z])/,"$$$1"); } function unfix_col(cstr) { return cstr.replace(/^\$([A-Z])/,"$1"); } function split_cell(cstr) { return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(","); } -//function decode_cell(cstr) { var splt = split_cell(cstr); return { c:decode_col(splt[0]), r:decode_row(splt[1]) }; } function decode_cell(cstr) { var R = 0, C = 0; for(var i = 0; i < cstr.length; ++i) { @@ -4211,7 +4210,6 @@ function decode_cell(cstr) { } return { c: C - 1, r:R - 1 }; } -//function encode_cell(cell) { return encode_col(cell.c) + encode_row(cell.r); } function encode_cell(cell) { var col = cell.c + 1; var s=""; @@ -4299,9 +4297,10 @@ function sheet_to_workbook(sheet, opts) { function sheet_add_aoa(_ws, data, opts) { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; - var ws = _ws || (dense ? ([]) : ({})); + var ws = _ws || ({}); + if(dense && !ws["!data"]) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -4320,13 +4319,19 @@ function sheet_add_aoa(_ws, data, opts) { range.e.r = Math.max(range.e.r, _range.e.r); if(_R == -1) range.e.r = _R = _range.e.r + 1; } + var row = []; for(var R = 0; R != data.length; ++R) { if(!data[R]) continue; if(!Array.isArray(data[R])) throw new Error("aoa_to_sheet expects an array of arrays"); + var __R = _R + R, __Rstr = "" + (__R + 1); + if(dense) { + if(!ws["!data"][__R]) ws["!data"][__R] = []; + row = ws["!data"][__R]; + } for(var C = 0; C != data[R].length; ++C) { if(typeof data[R][C] === 'undefined') continue; var cell = ({v: data[R][C] }); - var __R = _R + R, __C = _C + C; + var __C = _C + C; if(range.s.r > __R) range.s.r = __R; if(range.s.c > __C) range.s.c = __C; if(range.e.r < __R) range.e.r = __R; @@ -4350,11 +4355,10 @@ function sheet_add_aoa(_ws, data, opts) { else cell.t = 's'; } if(dense) { - if(!ws[__R]) ws[__R] = []; - if(ws[__R][__C] && ws[__R][__C].z) cell.z = ws[__R][__C].z; - ws[__R][__C] = cell; + if(row[__C] && row[__C].z) cell.z = row[__C].z; + row[__C] = cell; } else { - var cell_ref = encode_cell(({c:__C,r:__R})); + var cell_ref = encode_col(__C) + __Rstr; if(ws[cell_ref] && ws[cell_ref].z) cell.z = ws[cell_ref].z; ws[cell_ref] = cell; } @@ -5779,6 +5783,7 @@ function sheet_to_dbf(ws, opts) { case 'N': var _n = "0"; if(typeof data[i][j] == "number") _n = data[i][j].toFixed(coldecimals[j]||0); + if(_n.length > colwidths[j]) _n = _n.slice(0, colwidths[j]); // addresses decimal > width for(hcnt=0; hcnt < colwidths[j]-_n.length; ++hcnt) rout.write_shift(1, 0x20); rout.write_shift(1, _n, "sbcs"); break; @@ -6042,7 +6047,7 @@ var SYLK = (function() { /* TODO: codepage */ var preamble = ["ID;PSheetJS;N;E"], o = []; var r = safe_decode_range(ws['!ref']), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var RS = "\r\n"; var d1904 = (((wb||{}).Workbook||{}).WBProps||{}).date1904; @@ -6054,10 +6059,10 @@ var SYLK = (function() { preamble.push("B;Y" + (r.e.r - r.s.r + 1) + ";X" + (r.e.c - r.s.c + 1) + ";D" + [r.s.c,r.s.r,r.e.c,r.e.r].join(" ")); preamble.push("O;L;D;B" + (d1904 ? ";V4" : "") + ";K47;G100 0.001"); for(var R = r.s.r; R <= r.e.r; ++R) { + if(dense && !ws["!data"][R]) continue; var p = []; for(var C = r.s.c; C <= r.e.c; ++C) { - var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C]: ws[coord]; + cell = dense ? ws["!data"][R][C] : ws[encode_col(C) + encode_row(R)]; if(!cell || (cell.v == null && (!cell.f || cell.F))) continue; p.push(write_ws_cell_sylk(cell, ws, R, C, opts)); // TODO: pass date1904 info } @@ -6130,7 +6135,7 @@ var DIF = (function() { function sheet_to_dif(ws) { var _DIF_XL = DIF_XL; var r = safe_decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var o = [ "TABLE\r\n0,1\r\n\"sheetjs\"\r\n", "VECTORS\r\n0," + (r.e.r - r.s.r + 1) + "\r\n\"\"\r\n", @@ -6138,9 +6143,10 @@ var DIF = (function() { "DATA\r\n0,0\r\n\"\"\r\n" ]; for(var R = r.s.r; R <= r.e.r; ++R) { + var row = dense ? ws["!data"][R] : []; var p = "-1,0\r\nBOT\r\n"; for(var C = r.s.c; C <= r.e.c; ++C) { - var cell = dense ? (ws[R] && ws[R][C]) : ws[encode_cell({r:R,c:C})]; + var cell = dense ? (row && row[C]) : ws[encode_cell({r:R,c:C})]; if(cell == null) { p +=("1,0\r\n\"\"\r\n"); continue;} switch(cell.t) { case 'n': @@ -6235,11 +6241,11 @@ var ETH = (function() { if(!ws || !ws['!ref']) return ""; var o = [], oo = [], cell, coord = ""; var r = decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { for(var C = r.s.c; C <= r.e.c; ++C) { coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null || cell.t === 'z') continue; oo = ["cell", coord, 't']; switch(cell.t) { @@ -6361,7 +6367,8 @@ var PRN = (function() { var o = opts || {}; var sep = ""; if(DENSE != null && o.dense == null) o.dense = DENSE; - var ws = o.dense ? ([]) : ({}); + var ws = ({}); + if(o.dense) ws["!data"] = []; var range = ({s: {c:0, r:0}, e: {c:0, r:0}}); if(str.slice(0,4) == "sep=") { @@ -6407,7 +6414,7 @@ var PRN = (function() { cell.v = s; } if(cell.t == 'z'){} - else if(o.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = cell; } + else if(o.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = cell; } else ws[encode_cell({c:C,r:R})] = cell; start = end+1; startcc = str.charCodeAt(start); if(range.e.c < C) range.e.c = C; @@ -6463,12 +6470,12 @@ var PRN = (function() { function sheet_to_prn(ws) { var o = []; var r = safe_decode_range(ws['!ref']), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { var oo = []; for(var C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null) { oo.push(" "); continue; } var w = (cell.w || (format_cell(cell), cell.w) || "").slice(0,10); while(w.length < 10) w += " "; @@ -7781,17 +7788,17 @@ function write_vml_comment(x, _shapeid) { ].join(""); } function sheet_insert_comments(sheet, comments, threaded, people) { - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var cell; comments.forEach(function(comment) { var r = decode_cell(comment.ref); if(dense) { - if(!sheet[r.r]) sheet[r.r] = []; - cell = sheet[r.r][r.c]; + if(!sheet["!data"][r.r]) sheet["!data"][r.r] = []; + cell = sheet["!data"][r.r][r.c]; } else cell = sheet[comment.ref]; if (!cell) { cell = ({t:"z"}); - if(dense) sheet[r.r][r.c] = cell; + if(dense) sheet["!data"][r.r][r.c] = cell; else sheet[comment.ref] = cell; var range = safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1"); if(range.s.r > r.r) range.s.r = r.r; @@ -7799,7 +7806,7 @@ function sheet_insert_comments(sheet, comments, threaded, people) { if(range.s.c > r.c) range.s.c = r.c; if(range.e.c < r.c) range.e.c = r.c; var encoded = encode_range(range); - if (encoded !== sheet["!ref"]) sheet["!ref"] = encoded; + sheet["!ref"] = encoded; } if (!cell.c) cell.c = []; @@ -7817,7 +7824,6 @@ function sheet_insert_comments(sheet, comments, threaded, people) { cell.c.push(o); }); } - /* 18.7 Comments */ function parse_comments_xml(data, opts) { /* 18.7.6 CT_Comments */ @@ -8275,7 +8281,7 @@ function parse_ws_xml(data, opts, idx, rels, wb, themes, styles) { if(DENSE != null && opts.dense == null) opts.dense = DENSE; /* 18.3.1.99 worksheet CT_Worksheet */ - var s = opts.dense ? ([]) : ({}); + var s = ({}); if(opts.dense) s["!data"] = []; var refguess = ({s: {r:2000000, c:2000000}, e: {r:0, c:0} }); var data1 = "", data2 = ""; @@ -8404,7 +8410,7 @@ function write_ws_xml_protection(sp) { } function parse_ws_xml_hlinks(s, data, rels) { - var dense = Array.isArray(s); + var dense = s["!data"] != null; for(var i = 0; i != data.length; ++i) { var val = parsexmltag(utf8read(data[i]), true); if(!val.ref) return; @@ -8420,11 +8426,11 @@ function parse_ws_xml_hlinks(s, data, rels) { if(val.tooltip) { val.Tooltip = val.tooltip; delete val.tooltip; } var rng = safe_decode_range(val.ref); for(var R=rng.s.r;R<=rng.e.r;++R) for(var C=rng.s.c;C<=rng.e.c;++C) { - var addr = encode_cell({c:C,r:R}); + var addr = encode_col(C) + encode_row(R); if(dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:"z",v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:"z",v:undefined}; + s["!data"][R][C].l = val; } else { if(!s[addr]) s[addr] = {t:"z",v:undefined}; s[addr].l = val; @@ -8576,7 +8582,7 @@ return function parse_ws_xml_data(sdata, s, opts, guess, themes, styles) { var do_format = Array.isArray(styles.CellXf), cf; var arrayf = []; var sharedf = []; - var dense = Array.isArray(s); + var dense = s["!data"] != null; var rows = [], rowobj = {}, rowrite = false; var sheetStubs = !!opts.sheetStubs; for(var marr = sdata.split(rowregex), mt = 0, marrlen = marr.length; mt != marrlen; ++mt) { @@ -8741,8 +8747,8 @@ return function parse_ws_xml_data(sdata, s, opts, guess, themes, styles) { } if(dense) { var _r = decode_cell(tag.r); - if(!s[_r.r]) s[_r.r] = []; - s[_r.r][_r.c] = p; + if(!s["!data"][_r.r]) s["!data"][_r.r] = []; + s["!data"][_r.r][_r.c] = p; } else s[tag.r] = p; } } @@ -8751,7 +8757,7 @@ return function parse_ws_xml_data(sdata, s, opts, guess, themes, styles) { function write_ws_xml_data(ws, opts, idx, wb) { var o = [], r = [], range = safe_decode_range(ws['!ref']), cell="", ref, rr = "", cols = [], R=0, C=0, rows = ws['!rows']; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var params = ({r:rr}), row, height = -1; for(C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(R = range.s.r; R <= range.e.r; ++R) { @@ -8759,7 +8765,7 @@ function write_ws_xml_data(ws, opts, idx, wb) { rr = encode_row(R); for(C = range.s.c; C <= range.e.c; ++C) { ref = cols[C] + rr; - var _cell = dense ? (ws[R]||[])[C]: ws[ref]; + var _cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(_cell === undefined) continue; if((cell = write_ws_xml_cell(_cell, ref, ws, opts, idx, wb)) != null) r.push(cell); } @@ -8948,7 +8954,10 @@ function parse_chart(data, name, opts, rels, wb, csheet) { refguess.e.c = C; col = encode_col(C); cache[0].forEach(function(n,i) { - cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; + if(cs["!data"]) { + if(!cs["!data"][i]) cs["!data"][i] = []; + cs["!data"][i][C] = {t:'n', v:n, z:cache[1] }; + } else cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; R = i; }); if(refguess.e.r < R) refguess.e.r = R; @@ -9442,8 +9451,8 @@ function parse_xlmeta(data, name, opts) { /* note: browser DOM element cannot see mso- style attrs, must parse */ function html_to_sheet(str, _opts) { var opts = _opts || {}; - if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var ws = opts.dense ? ([]) : ({}); + var dense = (opts.dense != null) ? opts.dense : DENSE; + var ws = ({}); if(dense) ws["!data"] = []; str = str.replace(//g, ""); var mtch = str.match(/"); @@ -9489,7 +9498,7 @@ function html_to_sheet(str, _opts) { if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}); o.z = opts.dateNF || table_fmt[14]; } - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = o; } + if(dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = o; } else ws[encode_cell({r:R, c:C})] = o; C += CS; } @@ -9502,6 +9511,7 @@ function make_html_row(ws, r, R, o) { var M = (ws['!merges'] ||[]); var oo = []; var sp = ({}); + var dense = ws["!data"] != null; for(var C = r.s.c; C <= r.e.c; ++C) { var RS = 0, CS = 0; for(var j = 0; j < M.length; ++j) { @@ -9511,8 +9521,8 @@ function make_html_row(ws, r, R, o) { RS = M[j].e.r - M[j].s.r + 1; CS = M[j].e.c - M[j].s.c + 1; break; } if(RS < 0) continue; - var coord = encode_cell({r:R,c:C}); - var cell = o.dense ? (ws[R]||[])[C] : ws[coord]; + var coord = encode_col(C) + encode_row(R); + var cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; /* TODO: html entities */ var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; sp = ({}); @@ -9560,7 +9570,6 @@ function sheet_to_html(ws, opts/*, wb:?Workbook*/) { var footer = o.footer != null ? o.footer : HTML_END; var out = [header]; var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); out.push(make_html_preamble(ws, r, o)); for(var R = r.s.r; R <= r.e.r; ++R) out.push(make_html_row(ws, r, R, o)); out.push("
" + footer); @@ -9575,7 +9584,7 @@ function sheet_add_dom(ws, table, _opts) { } var opts = _opts || {}; - if(DENSE != null) opts.dense = DENSE; + var dense = ws["!data"] != null; var or_R = 0, or_C = 0; if(opts.origin != null) { if(typeof opts.origin == 'number') or_R = opts.origin; @@ -9640,7 +9649,7 @@ function sheet_add_dom(ws, table, _opts) { l = Aelts[Aelti].getAttribute("href"); if(l.charAt(0) != "#") break; } if(l && l.charAt(0) != "#" && l.slice(0, 11).toLowerCase() != 'javascript:') o.l = ({ Target: l }); - if(opts.dense) { if(!ws[R + or_R]) ws[R + or_R] = []; ws[R + or_R][C + or_C] = o; } + if(dense) { if(!ws["!data"][R + or_R]) ws["!data"][R + or_R] = []; ws["!data"][R + or_R][C + or_C] = o; } else ws[encode_cell({c:C + or_C, r:R + or_R})] = o; if(range.e.c < C + or_C) range.e.c = C + or_C; C += CS; @@ -9656,7 +9665,7 @@ function sheet_add_dom(ws, table, _opts) { function parse_dom_table(table, _opts) { var opts = _opts || {}; - var ws = opts.dense ? ([]) : ({}); + var ws = ({}); if(opts.dense) ws["!data"] = []; return sheet_add_dom(ws, table, _opts); } @@ -9929,7 +9938,7 @@ function parse_content_xml(d, _opts, _nfm) { var sheetag; var rowtag; var Sheets = {}, SheetNames = []; - var ws = opts.dense ? ([]) : ({}); + var ws = ({}); if(opts.dense) ws["!data"] = []; var Rn, q; var ctag = ({value:""}); var textp = "", textpidx = 0, textptag; @@ -9973,7 +9982,7 @@ function parse_content_xml(d, _opts, _nfm) { sheetag = parsexmltag(Rn[0], false); R = C = -1; range.s.r = range.s.c = 10000000; range.e.r = range.e.c = 0; - ws = opts.dense ? ([]) : ({}); merges = []; + ws = ({}); if(opts.dense) ws["!data"] = []; merges = []; rowinfo = []; intable = true; } @@ -9993,7 +10002,7 @@ function parse_content_xml(d, _opts, _nfm) { case 'covered-table-cell': // 9.1.5 if(Rn[1] !== '/') ++C; if(opts.sheetStubs) { - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = {t:'z'}; } + if(opts.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = {t:'z'}; } else ws[encode_cell({r:R,c:C})] = {t:'z'}; } textp = ""; textR = []; @@ -10009,10 +10018,10 @@ function parse_content_xml(d, _opts, _nfm) { if((ctag['数据类型'] || ctag['value-type']) == "string") { q.t = "s"; q.v = unescapexml(ctag['string-value'] || ""); if(opts.dense) { - if(!ws[R]) ws[R] = []; - ws[R][C] = q; + if(!ws["!data"][R]) ws["!data"][R] = []; + ws["!data"][R][C] = q; } else { - ws[encode_cell({r:R,c:C})] = q; + ws[encode_col(C) + encode_row(R)] = q; } } C+= colpeat-1; @@ -10089,9 +10098,9 @@ function parse_content_xml(d, _opts, _nfm) { for(var rpt = 0; rpt < rowpeat; ++rpt) { colpeat = parseInt(ctag['number-columns-repeated']||"1", 10); if(opts.dense) { - if(!ws[R + rpt]) ws[R + rpt] = []; - ws[R + rpt][C] = rpt == 0 ? q : dup(q); - while(--colpeat > 0) ws[R + rpt][C + colpeat] = dup(q); + if(!ws["!data"][R + rpt]) ws["!data"][R + rpt] = []; + ws["!data"][R + rpt][C] = rpt == 0 ? q : dup(q); + while(--colpeat > 0) ws["!data"][R + rpt][C + colpeat] = dup(q); } else { ws[encode_cell({r:R + rpt,c:C})] = q; while(--colpeat > 0) ws[encode_cell({r:R + rpt,c:C + colpeat})] = dup(q); @@ -10676,7 +10685,7 @@ var write_content_ods = /* @__PURE__ */(function() { o.push(' \n'); var R=0,C=0, range = decode_range(ws['!ref']||"A1"); var marr = ws['!merges'] || [], mi = 0; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; if(ws["!cols"]) { for(C = 0; C <= range.e.c; ++C) o.push(' \n'); } @@ -10702,7 +10711,7 @@ var write_content_ods = /* @__PURE__ */(function() { break; } if(skip) { o.push(covered_cell_xml); continue; } - var ref = encode_cell({r:R, c:C}), cell = dense ? (ws[R]||[])[C]: ws[ref]; + var ref = encode_cell({r:R, c:C}), cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(cell && cell.f) { ct['table:formula'] = escapexml(csf_to_ods_formula(cell.f)); if(cell.F) { @@ -10812,9 +10821,10 @@ var write_content_ods = /* @__PURE__ */(function() { var nfi = 69; wb.SheetNames.map(function(n) { return wb.Sheets[n]; }).forEach(function(ws) { if(!ws) return; + var dense = (ws["!data"] != null); var range = decode_range(ws["!ref"]); for(var R = 0; R <= range.e.r; ++R) for(var C = 0; C <= range.e.c; ++C) { - var c = Array.isArray(ws) ? (ws[R]||[])[C] : ws[encode_cell({r:R,c:C})]; + var c = dense ? (ws["!data"][R]||[])[C] : ws[encode_cell({r:R,c:C})]; if(!c || !c.z || c.z.toLowerCase() == "general") continue; if(!nfs[c.z]) { var out = write_number_format_ods(c.z, "N" + nfi); @@ -11904,17 +11914,17 @@ function writeFileAsync(filename, wb, opts, cb) { var _cb = cb; if(!(_cb instanceof Function)) _cb = (opts); return _fs.writeFile(filename, writeSync(wb, o), _cb); } -function make_json_row(sheet, r, R, cols, header, hdr, dense, o) { +function make_json_row(sheet, r, R, cols, header, hdr, o) { var rr = encode_row(R); var defval = o.defval, raw = o.raw || !Object.prototype.hasOwnProperty.call(o, "raw"); - var isempty = true; + var isempty = true, dense = (sheet["!data"] != null); var row = (header === 1) ? [] : {}; if(header !== 1) { if(Object.defineProperty) try { Object.defineProperty(row, '__rowNum__', {value:R, enumerable:false}); } catch(e) { row.__rowNum__ = R; } else row.__rowNum__ = R; } - if(!dense || sheet[R]) for (var C = r.s.c; C <= r.e.c; ++C) { - var val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + if(!dense || sheet["!data"][R]) for (var C = r.s.c; C <= r.e.c; ++C) { + var val = dense ? (sheet["!data"][R]||[])[C] : sheet[cols[C] + rr]; if(val === undefined || val.t === undefined) { if(defval === undefined) continue; if(hdr[C] != null) { row[hdr[C]] = defval; } @@ -11963,16 +11973,16 @@ function sheet_to_json(sheet, opts) { var cols = []; var out = []; var outi = 0, counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo = o.skipHidden && sheet["!cols"] || []; var rowinfo = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -11991,7 +12001,7 @@ function sheet_to_json(sheet, opts) { } for (R = r.s.r + offset; R <= r.e.r; ++R) { if ((rowinfo[R]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) out[outi++] = row.row; } out.length = outi; @@ -12002,9 +12012,11 @@ var qreg = /"/g; function make_csv_row(sheet, r, R, cols, fs, rs, FS, o) { var isempty = true; var row = [], txt = "", rr = encode_row(R); + var dense = sheet["!data"] != null; + var datarow = dense && sheet["!data"][R] || []; for(var C = r.s.c; C <= r.e.c; ++C) { if (!cols[C]) continue; - var val = o.dense ? (sheet[R]||[])[C]: sheet[cols[C] + rr]; + var val = dense ? datarow[C]: sheet[cols[C] + rr]; if(val == null) txt = ""; else if(val.v != null) { isempty = false; @@ -12031,7 +12043,6 @@ function sheet_to_csv(sheet, opts) { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row = "", cols = []; - o.dense = Array.isArray(sheet); var colinfo = o.skipHidden && sheet["!cols"] || []; var rowinfo = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -12043,7 +12054,6 @@ function sheet_to_csv(sheet, opts) { if(o.strip) row = row.replace(endregex,""); if(row || (o.blankrows !== false)) out.push((w++ ? RS : "") + row); } - delete o.dense; return out.join(""); } @@ -12060,13 +12070,13 @@ function sheet_to_formulae(sheet) { if(sheet == null || sheet["!ref"] == null) return []; var r = safe_decode_range(sheet['!ref']), rr = "", cols = [], C; var cmds = []; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; for(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C); for(var R = r.s.r; R <= r.e.r; ++R) { rr = encode_row(R); for(C = r.s.c; C <= r.e.c; ++C) { y = cols[C] + rr; - x = dense ? (sheet[R]||[])[C] : sheet[y]; + x = dense ? (sheet["!data"][R]||[])[C] : sheet[y]; val = ""; if(x === undefined) continue; else if(x.F != null) { @@ -12091,10 +12101,11 @@ function sheet_to_formulae(sheet) { function sheet_add_json(_ws, js, opts) { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; var offset = +!o.skipHeader; - var ws = _ws || (dense ? ([]) : ({})); + var ws = _ws || ({}); + if(!_ws && dense) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -12115,17 +12126,18 @@ function sheet_add_json(_ws, js, opts) { var hdr = o.header || [], C = 0; var ROW = []; js.forEach(function (JS, R) { - if(dense && !ws[_R + R + offset]) ws[_R + R + offset] = []; - if(dense) ROW = ws[_R + R + offset]; + if(dense && !ws["!data"][_R + R + offset]) ws["!data"][_R + R + offset] = []; + if(dense) ROW = ws["!data"][_R + R + offset]; keys(JS).forEach(function(k) { if((C=hdr.indexOf(k)) == -1) hdr[C=hdr.length] = k; var v = JS[k]; var t = 'z'; var z = ""; - var ref = dense ? "" : encode_cell({c:_C + C,r:_R + R + offset}); + var ref = dense ? "" : (encode_col(_C + C) + encode_row(_R + R + offset)); var cell = dense ? ROW[_C + C] : ws[ref]; if(v && typeof v === 'object' && !(v instanceof Date)){ - ws[ref] = v; + if(dense) ROW[_C + C] = v; + else ws[ref] = v; } else { if(typeof v == 'number') t = 'n'; else if(typeof v == 'boolean') t = 'b'; @@ -12150,9 +12162,9 @@ function sheet_add_json(_ws, js, opts) { }); range.e.c = Math.max(range.e.c, _C + hdr.length - 1); var __R = encode_row(_R); - if(dense && !ws[_R]) ws[_R] = []; + if(dense && !ws["!data"][_R]) ws["!data"][_R] = []; if(offset) for(C = 0; C < hdr.length; ++C) { - if(dense) ws[_R][C + _C] = {t:'s', v:hdr[C]}; + if(dense) ws["!data"][_R][C + _C] = {t:'s', v:hdr[C]}; else ws[encode_col(C + _C) + __R] = {t:'s', v:hdr[C]}; } ws['!ref'] = encode_range(range); @@ -12164,18 +12176,17 @@ function json_to_sheet(js, opts) { return sheet_add_json(null, js, opts); } function ws_get_cell_stub(ws, R, C) { /* A1 cell address */ if(typeof R == "string") { - /* dense */ - if(Array.isArray(ws)) { + if(ws["!data"] != null) { var RC = decode_cell(R); - if(!ws[RC.r]) ws[RC.r] = []; - return ws[RC.r][RC.c] || (ws[RC.r][RC.c] = {t:'z'}); + if(!ws["!data"][RC.r]) ws["!data"][RC.r] = []; + return ws["!data"][RC.r][RC.c] || (ws["!data"][RC.r][RC.c] = {t:'z'}); } return ws[R] || (ws[R] = {t:'z'}); } /* cell address object */ if(typeof R != "number") return ws_get_cell_stub(ws, encode_cell(R)); /* R and C are 0-based indices */ - return ws_get_cell_stub(ws, encode_cell({r:R,c:C||0})); + return ws_get_cell_stub(ws, encode_col(C||0) + encode_row(R)); } /* find sheet index for given name / validate index */ diff --git a/xlsx.mjs b/xlsx.mjs index dd52fd4..073c94f 100644 --- a/xlsx.mjs +++ b/xlsx.mjs @@ -3,7 +3,7 @@ /*exported XLSX */ /*global process:false, Buffer:false, ArrayBuffer:false, DataView:false, Deno:false */ var XLSX = {}; -XLSX.version = '0.18.12'; +XLSX.version = '0.19.0'; var current_codepage = 1200, current_ansi = 1252; /*:: declare var cptable:any; */ /*global cptable:true, window */ @@ -1668,7 +1668,7 @@ sleuth_fat(difat_start, difat_sec_cnt, sectors, ssz, fat_addrs); /** Chains */ var sector_list/*:SectorList*/ = make_sector_list(sectors, dir_start, fat_addrs, ssz); -sector_list[dir_start].name = "!Directory"; +if(dir_start < sector_list.length) sector_list[dir_start].name = "!Directory"; if(nmfs > 0 && minifat_start !== ENDOFCHAIN) sector_list[minifat_start].name = "!MiniFAT"; sector_list[fat_addrs[0]].name = "!FAT"; sector_list.fat_addrs = fat_addrs; @@ -4280,7 +4280,6 @@ function fix_col(cstr/*:string*/)/*:string*/ { return cstr.replace(/^([A-Z])/,"$ function unfix_col(cstr/*:string*/)/*:string*/ { return cstr.replace(/^\$([A-Z])/,"$1"); } function split_cell(cstr/*:string*/)/*:Array*/ { return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(","); } -//function decode_cell(cstr/*:string*/)/*:CellAddress*/ { var splt = split_cell(cstr); return { c:decode_col(splt[0]), r:decode_row(splt[1]) }; } function decode_cell(cstr/*:string*/)/*:CellAddress*/ { var R = 0, C = 0; for(var i = 0; i < cstr.length; ++i) { @@ -4290,7 +4289,6 @@ function decode_cell(cstr/*:string*/)/*:CellAddress*/ { } return { c: C - 1, r:R - 1 }; } -//function encode_cell(cell/*:CellAddress*/)/*:string*/ { return encode_col(cell.c) + encode_row(cell.r); } function encode_cell(cell/*:CellAddress*/)/*:string*/ { var col = cell.c + 1; var s=""; @@ -4383,9 +4381,10 @@ function sheet_to_workbook(sheet/*:Worksheet*/, opts)/*:Workbook*/ { function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksheet*/ { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; - var ws/*:Worksheet*/ = _ws || (dense ? ([]/*:any*/) : ({}/*:any*/)); + var ws/*:Worksheet*/ = _ws || ({}/*:any*/); + if(dense && !ws["!data"]) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -4404,13 +4403,19 @@ function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksh range.e.r = Math.max(range.e.r, _range.e.r); if(_R == -1) range.e.r = _R = _range.e.r + 1; } + var row = []; for(var R = 0; R != data.length; ++R) { if(!data[R]) continue; if(!Array.isArray(data[R])) throw new Error("aoa_to_sheet expects an array of arrays"); + var __R = _R + R, __Rstr = "" + (__R + 1); + if(dense) { + if(!ws["!data"][__R]) ws["!data"][__R] = []; + row = ws["!data"][__R]; + } for(var C = 0; C != data[R].length; ++C) { if(typeof data[R][C] === 'undefined') continue; var cell/*:Cell*/ = ({v: data[R][C] }/*:any*/); - var __R = _R + R, __C = _C + C; + var __C = _C + C; if(range.s.r > __R) range.s.r = __R; if(range.s.c > __C) range.s.c = __C; if(range.e.r < __R) range.e.r = __R; @@ -4434,11 +4439,10 @@ function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksh else cell.t = 's'; } if(dense) { - if(!ws[__R]) ws[__R] = []; - if(ws[__R][__C] && ws[__R][__C].z) cell.z = ws[__R][__C].z; - ws[__R][__C] = cell; + if(row[__C] && row[__C].z) cell.z = row[__C].z; + row[__C] = cell; } else { - var cell_ref = encode_cell(({c:__C,r:__R}/*:any*/)); + var cell_ref = encode_col(__C) + __Rstr/*:any*/; if(ws[cell_ref] && ws[cell_ref].z) cell.z = ws[cell_ref].z; ws[cell_ref] = cell; } @@ -7989,6 +7993,7 @@ function sheet_to_dbf(ws/*:Worksheet*/, opts/*:WriteOpts*/) { case 'N': var _n = "0"; if(typeof data[i][j] == "number") _n = data[i][j].toFixed(coldecimals[j]||0); + if(_n.length > colwidths[j]) _n = _n.slice(0, colwidths[j]); // addresses decimal > width for(hcnt=0; hcnt < colwidths[j]-_n.length; ++hcnt) rout.write_shift(1, 0x20); rout.write_shift(1, _n, "sbcs"); break; @@ -8252,7 +8257,7 @@ var SYLK = /*#__PURE__*/(function() { /* TODO: codepage */ var preamble/*:Array*/ = ["ID;PSheetJS;N;E"], o/*:Array*/ = []; var r = safe_decode_range(ws['!ref']), cell/*:Cell*/; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var RS = "\r\n"; var d1904 = (((wb||{}).Workbook||{}).WBProps||{}).date1904; @@ -8264,10 +8269,10 @@ var SYLK = /*#__PURE__*/(function() { preamble.push("B;Y" + (r.e.r - r.s.r + 1) + ";X" + (r.e.c - r.s.c + 1) + ";D" + [r.s.c,r.s.r,r.e.c,r.e.r].join(" ")); preamble.push("O;L;D;B" + (d1904 ? ";V4" : "") + ";K47;G100 0.001"); for(var R = r.s.r; R <= r.e.r; ++R) { + if(dense && !ws["!data"][R]) continue; var p = []; for(var C = r.s.c; C <= r.e.c; ++C) { - var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C]: ws[coord]; + cell = dense ? ws["!data"][R][C] : ws[encode_col(C) + encode_row(R)]; if(!cell || (cell.v == null && (!cell.f || cell.F))) continue; p.push(write_ws_cell_sylk(cell, ws, R, C, opts)); // TODO: pass date1904 info } @@ -8340,7 +8345,7 @@ var DIF = /*#__PURE__*/(function() { function sheet_to_dif(ws/*:Worksheet*//*::, opts:?any*/)/*:string*/ { var _DIF_XL = DIF_XL; var r = safe_decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var o/*:Array*/ = [ "TABLE\r\n0,1\r\n\"sheetjs\"\r\n", "VECTORS\r\n0," + (r.e.r - r.s.r + 1) + "\r\n\"\"\r\n", @@ -8348,9 +8353,10 @@ var DIF = /*#__PURE__*/(function() { "DATA\r\n0,0\r\n\"\"\r\n" ]; for(var R = r.s.r; R <= r.e.r; ++R) { + var row = dense ? ws["!data"][R] : []; var p = "-1,0\r\nBOT\r\n"; for(var C = r.s.c; C <= r.e.c; ++C) { - var cell/*:Cell*/ = dense ? (ws[R] && ws[R][C]) : ws[encode_cell({r:R,c:C})]; + var cell/*:Cell*/ = dense ? (row && row[C]) : ws[encode_cell({r:R,c:C})]; if(cell == null) { p +=("1,0\r\n\"\"\r\n"); continue;} switch(cell.t) { case 'n': @@ -8445,11 +8451,11 @@ var ETH = /*#__PURE__*/(function() { if(!ws || !ws['!ref']) return ""; var o/*:Array*/ = [], oo/*:Array*/ = [], cell, coord = ""; var r = decode_range(ws['!ref']); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { for(var C = r.s.c; C <= r.e.c; ++C) { coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null || cell.t === 'z') continue; oo = ["cell", coord, 't']; switch(cell.t) { @@ -8571,7 +8577,8 @@ var PRN = /*#__PURE__*/(function() { var o = opts || {}; var sep = ""; if(DENSE != null && o.dense == null) o.dense = DENSE; - var ws/*:Worksheet*/ = o.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws/*:Worksheet*/ = ({}/*:any*/); + if(o.dense) ws["!data"] = []; var range/*:Range*/ = ({s: {c:0, r:0}, e: {c:0, r:0}}/*:any*/); if(str.slice(0,4) == "sep=") { @@ -8617,7 +8624,7 @@ var PRN = /*#__PURE__*/(function() { cell.v = s; } if(cell.t == 'z'){} - else if(o.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = cell; } + else if(o.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = cell; } else ws[encode_cell({c:C,r:R})] = cell; start = end+1; startcc = str.charCodeAt(start); if(range.e.c < C) range.e.c = C; @@ -8673,12 +8680,12 @@ var PRN = /*#__PURE__*/(function() { function sheet_to_prn(ws/*:Worksheet*//*::, opts:?any*/)/*:string*/ { var o/*:Array*/ = []; var r = safe_decode_range(ws['!ref']), cell/*:Cell*/; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = r.s.r; R <= r.e.r; ++R) { var oo/*:Array*/ = []; for(var C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({r:R,c:C}); - cell = dense ? (ws[R]||[])[C] : ws[coord]; + cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; if(!cell || cell.v == null) { oo.push(" "); continue; } var w = (cell.w || (format_cell(cell), cell.w) || "").slice(0,10); while(w.length < 10) w += " "; @@ -8740,8 +8747,9 @@ var WK_ = /*#__PURE__*/(function() { if(!d) return d; var o = opts || {}; if(DENSE != null && o.dense == null) o.dense = DENSE; - var s/*:Worksheet*/ = ((o.dense ? [] : {})/*:any*/), n = "Sheet1", next_n = "", sidx = 0; - var sheets = {}, snames = [], realnames = []; + var s/*:Worksheet*/ = ({}/*:any*/), n = "Sheet1", next_n = "", sidx = 0; + var sheets = {}, snames = [], realnames = [], sdata = []; + if(o.dense) sdata = s["!data"] = []; var refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; var sheetRows = o.sheetRows || 0; @@ -8786,13 +8794,13 @@ var WK_ = /*#__PURE__*/(function() { s["!ref"] = encode_range(refguess); sheets[n] = s; snames.push(n); - s = (o.dense ? [] : {}); + s = ({}/*:any*/); if(o.dense) sdata = s["!data"] = []; refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; sidx = val[3]; n = next_n || "Sheet" + (sidx + 1); next_n = ""; } } - var tmpcell = o.dense ? (s[val[0].r]||[])[val[0].c] : s[encode_cell(val[0])]; + var tmpcell = o.dense ? (sdata[val[0].r]||[])[val[0].c] : s[encode_cell(val[0])]; if(tmpcell) { tmpcell.t = val[1].t; tmpcell.v = val[1].v; if(val[1].z != null) tmpcell.z = val[1].z; @@ -8800,8 +8808,8 @@ var WK_ = /*#__PURE__*/(function() { break; } if(o.dense) { - if(!s[val[0].r]) s[val[0].r] = []; - s[val[0].r][val[0].c] = val[1]; + if(!sdata[val[0].r]) sdata[val[0].r] = []; + sdata[val[0].r][val[0].c] = val[1]; } else s[encode_cell(val[0])] = val[1]; break; case 0x5405: o.works2 = true; break; @@ -8827,14 +8835,14 @@ var WK_ = /*#__PURE__*/(function() { s["!ref"] = encode_range(refguess); sheets[n] = s; snames.push(n); - s = (o.dense ? [] : {}); + s = ({}/*:any*/); if(o.dense) sdata = s["!data"] = []; refguess = {s: {r:0, c:0}, e: {r:0, c:0} }; sidx = val[3]; n = "Sheet" + (sidx + 1); } if(sheetRows > 0 && val[0].r >= sheetRows) break; if(o.dense) { - if(!s[val[0].r]) s[val[0].r] = []; - s[val[0].r][val[0].c] = val[1]; + if(!sdata[val[0].r]) sdata[val[0].r] = []; + sdata[val[0].r][val[0].c] = val[1]; } else s[encode_cell(val[0])] = val[1]; if(refguess.e.c < val[0].c) refguess.e.c = val[0].c; if(refguess.e.r < val[0].r) refguess.e.r = val[0].r; @@ -8869,18 +8877,17 @@ var WK_ = /*#__PURE__*/(function() { if(o.type == "string") throw new Error("Cannot write WK1 to JS string"); var ba = buf_array(); var range = safe_decode_range(ws["!ref"]); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cols = []; write_biff_rec(ba, 0x00, write_BOF_WK1(0x0406)); write_biff_rec(ba, 0x06, write_RANGE(range)); var max_R = Math.min(range.e.r, 8191); + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= max_R; ++R) { var rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); - var ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + for(C = range.s.c; C <= range.e.c; ++C) { + var cell = dense ? (ws["!data"][R]||[])[C] : ws[cols[C] + rr]; if(!cell || cell.t == "z") continue; /* TODO: formula records */ if(cell.t == "n") { @@ -8912,7 +8919,7 @@ var WK_ = /*#__PURE__*/(function() { var ws = wb.Sheets[wb.SheetNames[i]]; if(!ws || !ws["!ref"]) continue; var range = safe_decode_range(ws["!ref"]); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cols = []; var max_R = Math.min(range.e.r, 8191); for(var R = range.s.r; R <= max_R; ++R) { @@ -8920,7 +8927,7 @@ var WK_ = /*#__PURE__*/(function() { for(var C = range.s.c; C <= range.e.c; ++C) { if(R === range.s.r) cols[C] = encode_col(C); var ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; if(!cell || cell.t == "z") continue; /* TODO: FORMULA19 NUMBER18 records */ if(cell.t == "n") { @@ -9631,7 +9638,7 @@ var WK_ = /*#__PURE__*/(function() { prep_blob(d, 0); var o = opts || {}; if(DENSE != null && o.dense == null) o.dense = DENSE; - var s/*:Worksheet*/ = ((o.dense ? [] : {})/*:any*/); + var s/*:Worksheet*/ = ({}/*:any*/); if(o.dense) s["!data"] = []; var SST = [], sname = "", formulae = []; var range = {s:{r:-1,c:-1}, e:{r:-1,c:-1}}; var cnt = 0, type = 0, C = 0, R = 0; @@ -9668,7 +9675,7 @@ var WK_ = /*#__PURE__*/(function() { case 0x0601: { /* BOS */ var sidx = p.read_shift(2); - s = ((o.dense ? [] : {})/*:any*/); + s = ({}/*:any*/); if(o.dense) s["!data"] = []; range.s.c = p.read_shift(2); range.e.c = p.read_shift(2); range.s.r = p.read_shift(4); @@ -9705,6 +9712,7 @@ var WK_ = /*#__PURE__*/(function() { R = p.read_shift(4), cnt = p.read_shift(4); if(range.s.r > R) range.s.r = R; if(range.e.r < R + cnt - 1) range.e.r = R + cnt - 1; + var CC = encode_col(C); while(p.l < p.length) { var cell = { t: "z" }; var flags = p.read_shift(1); @@ -9727,10 +9735,10 @@ var WK_ = /*#__PURE__*/(function() { default: throw "Unsupported delta for QPW cell type " + (flags & 0x1F); } if(!(!o.sheetStubs && cell.t == "z")) { - if(Array.isArray(s)) { - if(!s[R]) s[R] = []; - s[R][C] = cell; - } else s[encode_cell({r:R, c:C})] = cell; + if(s["!data"] != null) { + if(!s["!data"][R]) s["!data"][R] = []; + s["!data"][R][C] = cell; + } else s[CC + encode_row(R)] = cell; } ++R; --cnt; while(mul-- > 0 && cnt >= 0) { @@ -9746,10 +9754,10 @@ var WK_ = /*#__PURE__*/(function() { default: throw "Cannot apply repeat for QPW cell type " + (flags & 0x1F); } if(!(!o.sheetStubs && cell.t == "z")) { - if(Array.isArray(s)) { - if(!s[R]) s[R] = []; - s[R][C] = cell; - } else s[encode_cell({r:R, c:C})] = cell; + if(s["!data"] != null) { + if(!s["!data"][R]) s["!data"][R] = []; + s["!data"][R][C] = cell; + } else s[CC + encode_row(R)] = cell; } ++R; --cnt; } @@ -10389,14 +10397,18 @@ function rtf_to_sheet(d, opts) { } function rtf_to_sheet_str(str, opts) { var o = opts || {}; - var ws = o.dense ? [] : {}; + var ws = {}; + var dense = o.dense; + if (dense) + ws["!data"] = []; var rows = str.match(/\\trowd[\s\S]*?\\row\b/g); if (!rows) throw new Error("RTF missing table"); var range = { s: { c: 0, r: 0 }, e: { c: 0, r: rows.length - 1 } }; + var row = []; rows.forEach(function(rowtf, R) { - if (Array.isArray(ws)) - ws[R] = []; + if (dense) + row = ws["!data"][R] = []; var rtfre = /\\[\w\-]+\b/g; var last_index = 0; var res; @@ -10422,8 +10434,8 @@ function rtf_to_sheet_str(str, opts) { cell.w = cell.v; cell.v = fuzzynum(cell.v); } - if (Array.isArray(ws)) - ws[R][C] = cell; + if (dense) + row[C] = cell; else ws[encode_cell({ r: R, c: C })] = cell; } @@ -10451,15 +10463,17 @@ function sheet_to_rtf(ws, opts) { if (!ws["!ref"]) return o[0] + "}"; var r = safe_decode_range(ws["!ref"]), cell; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, row = []; for (var R = r.s.r; R <= r.e.r; ++R) { o.push("\\trowd\\trautofit1"); for (var C = r.s.c; C <= r.e.c; ++C) o.push("\\cellx" + (C + 1)); o.push("\\pard\\intbl"); + if (dense) + row = ws["!data"][R] || []; for (C = r.s.c; C <= r.e.c; ++C) { var coord = encode_cell({ r: R, c: C }); - cell = dense ? (ws[R] || [])[C] : ws[coord]; + cell = dense ? row[C] : ws[coord]; if (!cell || cell.v == null && (!cell.f || cell.F)) { o.push(" \\cell"); continue; @@ -12157,18 +12171,18 @@ function write_vml_comment(x, _shapeid)/*:string*/ { '' ].join(""); } -function sheet_insert_comments(sheet, comments/*:Array*/, threaded/*:boolean*/, people/*:?Array*/) { - var dense = Array.isArray(sheet); +function sheet_insert_comments(sheet/*:WorkSheet*/, comments/*:Array*/, threaded/*:boolean*/, people/*:?Array*/) { + var dense = sheet["!data"] != null; var cell/*:Cell*/; comments.forEach(function(comment) { var r = decode_cell(comment.ref); if(dense) { - if(!sheet[r.r]) sheet[r.r] = []; - cell = sheet[r.r][r.c]; + if(!sheet["!data"][r.r]) sheet["!data"][r.r] = []; + cell = sheet["!data"][r.r][r.c]; } else cell = sheet[comment.ref]; if (!cell) { cell = ({t:"z"}/*:any*/); - if(dense) sheet[r.r][r.c] = cell; + if(dense) sheet["!data"][r.r][r.c] = cell; else sheet[comment.ref] = cell; var range = safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1"); if(range.s.r > r.r) range.s.r = r.r; @@ -12176,7 +12190,7 @@ function sheet_insert_comments(sheet, comments/*:Array*/, threaded/* if(range.s.c > r.c) range.s.c = r.c; if(range.e.c < r.c) range.e.c = r.c; var encoded = encode_range(range); - if (encoded !== sheet["!ref"]) sheet["!ref"] = encoded; + sheet["!ref"] = encoded; } if (!cell.c) cell.c = []; @@ -12194,7 +12208,6 @@ function sheet_insert_comments(sheet, comments/*:Array*/, threaded/* cell.c.push(o); }); } - /* 18.7 Comments */ function parse_comments_xml(data/*:string*/, opts)/*:Array*/ { /* 18.7.6 CT_Comments */ @@ -15260,7 +15273,7 @@ function parse_ws_xml(data/*:?string*/, opts, idx/*:number*/, rels, wb/*:WBWBPro if(DENSE != null && opts.dense == null) opts.dense = DENSE; /* 18.3.1.99 worksheet CT_Worksheet */ - var s = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var s = ({}/*:any*/); if(opts.dense) s["!data"] = []; var refguess/*:Range*/ = ({s: {r:2000000, c:2000000}, e: {r:0, c:0} }/*:any*/); var data1 = "", data2 = ""; @@ -15389,7 +15402,7 @@ function write_ws_xml_protection(sp)/*:string*/ { } function parse_ws_xml_hlinks(s, data/*:Array*/, rels) { - var dense = Array.isArray(s); + var dense = s["!data"] != null; for(var i = 0; i != data.length; ++i) { var val = parsexmltag(utf8read(data[i]), true); if(!val.ref) return; @@ -15405,11 +15418,11 @@ function parse_ws_xml_hlinks(s, data/*:Array*/, rels) { if(val.tooltip) { val.Tooltip = val.tooltip; delete val.tooltip; } var rng = safe_decode_range(val.ref); for(var R=rng.s.r;R<=rng.e.r;++R) for(var C=rng.s.c;C<=rng.e.c;++C) { - var addr = encode_cell({c:C,r:R}); + var addr = encode_col(C) + encode_row(R); if(dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:"z",v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:"z",v:undefined}; + s["!data"][R][C].l = val; } else { if(!s[addr]) s[addr] = {t:"z",v:undefined}; s[addr].l = val; @@ -15561,7 +15574,7 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th var do_format = Array.isArray(styles.CellXf), cf; var arrayf/*:Array<[Range, string]>*/ = []; var sharedf = []; - var dense = Array.isArray(s); + var dense = s["!data"] != null; var rows/*:Array*/ = [], rowobj = {}, rowrite = false; var sheetStubs = !!opts.sheetStubs; for(var marr = sdata.split(rowregex), mt = 0, marrlen = marr.length; mt != marrlen; ++mt) { @@ -15726,8 +15739,8 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th } if(dense) { var _r = decode_cell(tag.r); - if(!s[_r.r]) s[_r.r] = []; - s[_r.r][_r.c] = p; + if(!s["!data"][_r.r]) s["!data"][_r.r] = []; + s["!data"][_r.r][_r.c] = p; } else s[tag.r] = p; } } @@ -15736,7 +15749,7 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th function write_ws_xml_data(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbook*//*::, rels*/)/*:string*/ { var o/*:Array*/ = [], r/*:Array*/ = [], range = safe_decode_range(ws['!ref']), cell="", ref, rr = "", cols/*:Array*/ = [], R=0, C=0, rows = ws['!rows']; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var params = ({r:rr}/*:any*/), row/*:RowInfo*/, height = -1; for(C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(R = range.s.r; R <= range.e.r; ++R) { @@ -15744,7 +15757,7 @@ function write_ws_xml_data(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbook rr = encode_row(R); for(C = range.s.c; C <= range.e.c; ++C) { ref = cols[C] + rr; - var _cell = dense ? (ws[R]||[])[C]: ws[ref]; + var _cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(_cell === undefined) continue; if((cell = write_ws_xml_cell(_cell, ref, ws, opts, idx, wb)) != null) r.push(cell); } @@ -15940,12 +15953,13 @@ function write_BrtRowHdr(R/*:number*/, range, ws) { o.l += 4; var caddr = {r:R, c:0}; + var dense = ws["!data"] != null; for(var i = 0; i < 16; ++i) { if((range.s.c > ((i+1) << 10)) || (range.e.c < (i << 10))) continue; var first = -1, last = -1; for(var j = (i<<10); j < ((i+1)<<10); ++j) { caddr.c = j; - var cell = Array.isArray(ws) ? (ws[caddr.r]||[])[caddr.c] : ws[encode_cell(caddr)]; + var cell = dense ? (ws["!data"][caddr.r]||[])[caddr.c] : ws[encode_cell(caddr)]; if(cell) { if(first < 0) first = j; last = j; } } if(first < 0) continue; @@ -16409,7 +16423,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ var opts = _opts || {}; if(!rels) rels = {'!id':{}}; if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var s/*:Worksheet*/ = (opts.dense ? [] : {}); + var s/*:Worksheet*/ = ({}); if(opts.dense) s["!data"] = []; var ref; var refguess = {s: {r:2000000, c:2000000}, e: {r:0, c:0} }; @@ -16485,7 +16499,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ } if((cf = styles.CellXf[val[0].iStyleRef])) safe_format(p,cf.numFmtId,null,opts, themes, styles); C = val[0].c == -1 ? C + 1 : val[0].c; - if(opts.dense) { if(!s[R]) s[R] = []; s[R][C] = p; } + if(opts.dense) { if(!s["!data"][R]) s["!data"][R] = []; s["!data"][R][C] = p; } else s[encode_col(C) + rr] = p; if(opts.cellFormula) { af = false; @@ -16518,7 +16532,7 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ if(!opts.sheetStubs || pass) break; p = ({t:'z',v:void 0}/*:any*/); C = val[0].c == -1 ? C + 1 : val[0].c; - if(opts.dense) { if(!s[R]) s[R] = []; s[R][C] = p; } + if(opts.dense) { if(!s["!data"][R]) s["!data"][R] = []; s["!data"][R][C] = p; } else s[encode_col(C) + rr] = p; if(refguess.s.r > row.r) refguess.s.r = row.r; if(refguess.s.c > C) refguess.s.c = C; @@ -16549,11 +16563,11 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ } for(R=val.rfx.s.r;R<=val.rfx.e.r;++R) for(C=val.rfx.s.c;C<=val.rfx.e.c;++C) { if(opts.dense) { - if(!s[R]) s[R] = []; - if(!s[R][C]) s[R][C] = {t:'z',v:undefined}; - s[R][C].l = val; + if(!s["!data"][R]) s["!data"][R] = []; + if(!s["!data"][R][C]) s["!data"][R][C] = {t:'z',v:undefined}; + s["!data"][R][C].l = val; } else { - addr = encode_cell({c:C,r:R}); + addr = encode_col(C) + encode_row(R); if(!s[addr]) s[addr] = {t:'z',v:undefined}; s[addr].l = val; } @@ -16563,14 +16577,14 @@ function parse_ws_bin(data, _opts, idx, rels, wb/*:WBWBProps*/, themes, styles)/ case 0x01AA: /* 'BrtArrFmla' */ if(!opts.cellFormula) break; arrayf.push(val); - cell = ((opts.dense ? s[R][C] : s[encode_col(C) + rr])/*:any*/); + cell = ((opts.dense ? s["!data"][R][C] : s[encode_col(C) + rr])/*:any*/); cell.f = stringify_formula(val[1], refguess, {r:row.r, c:C}, supbooks, opts); cell.F = encode_range(val[0]); break; case 0x01AB: /* 'BrtShrFmla' */ if(!opts.cellFormula) break; sharedf[encode_cell(val[0].s)] = val[1]; - cell = (opts.dense ? s[R][C] : s[encode_col(C) + rr]); + cell = (opts.dense ? s["!data"][R][C] : s[encode_col(C) + rr]); cell.f = stringify_formula(val[1], refguess, {r:row.r, c:C}, supbooks, opts); break; @@ -16763,7 +16777,7 @@ function write_ws_bin_cell(ba/*:BufArray*/, cell/*:Cell*/, R/*:number*/, C/*:num function write_CELLTABLE(ba, ws/*:Worksheet*/, idx/*:number*/, opts/*::, wb:Workbook*/) { var range = safe_decode_range(ws['!ref'] || "A1"), ref, rr = "", cols/*:Array*/ = []; write_record(ba, 0x0091 /* BrtBeginSheetData */); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var cap = range.e.r; if(ws['!rows']) cap = Math.max(range.e.r, ws['!rows'].length - 1); for(var R = range.s.r; R <= cap; ++R) { @@ -16776,7 +16790,7 @@ function write_CELLTABLE(ba, ws/*:Worksheet*/, idx/*:number*/, opts/*::, wb:Work /* *16384CELL */ if(R === range.s.r) cols[C] = encode_col(C); ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; if(!cell) { last_seen = false; continue; } /* write cell */ last_seen = write_ws_bin_cell(ba, cell, R, C, opts, ws, last_seen); @@ -16967,7 +16981,10 @@ function parse_chart(data/*:?string*/, name/*:string*/, opts, rels, wb, csheet) refguess.e.c = C; col = encode_col(C); cache[0].forEach(function(n,i) { - cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; + if(cs["!data"]) { + if(!cs["!data"][i]) cs["!data"][i] = []; + cs["!data"][i][C] = {t:'n', v:n, z:cache[1] }; + } else cs[col + encode_row(i)] = {t:'n', v:n, z:cache[1] }; R = i; }); if(refguess.e.r < R) refguess.e.r = R; @@ -18099,7 +18116,7 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { var Rn; var state = [], tmp; if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var sheets = {}, sheetnames/*:Array*/ = [], cursheet/*:Worksheet*/ = (opts.dense ? [] : {}), sheetname = ""; + var sheets = {}, sheetnames/*:Array*/ = [], cursheet/*:Worksheet*/ = ({}), sheetname = ""; if(opts.dense) cursheet["!data"] = []; var cell = ({}/*:any*/), row = {};// eslint-disable-line no-unused-vars var dtag = xlml_parsexmltag(''), didx = 0; var c = 0, r = 0; @@ -18132,8 +18149,8 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { if(comments.length > 0) cell.c = comments; if((!opts.sheetRows || opts.sheetRows > r) && cell.v !== void 0) { if(opts.dense) { - if(!cursheet[r]) cursheet[r] = []; - cursheet[r][c] = cell; + if(!cursheet["!data"][r]) cursheet["!data"][r] = []; + cursheet["!data"][r][c] = cell; } else cursheet[encode_col(c) + encode_row(r)] = cell; } if(cell.HRef) { @@ -18153,8 +18170,8 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { for(var cmd = r; cmd <= rr; ++cmd) { if(cma > c || cmd > r) { if(opts.dense) { - if(!cursheet[cmd]) cursheet[cmd] = []; - cursheet[cmd][cma] = {t:'z'}; + if(!cursheet["!data"][cmd]) cursheet["!data"][cmd] = []; + cursheet["!data"][cmd][cma] = {t:'z'}; } else cursheet[encode_col(cma) + encode_row(cmd)] = {t:'z'}; } } @@ -18213,7 +18230,7 @@ function parse_xlml_xml(d, _opts)/*:Workbook*/ { state.push([Rn[3], false]); tmp = xlml_parsexmltag(Rn[0]); sheetname = unescapexml(tmp.Name); - cursheet = (opts.dense ? [] : {}); + cursheet = ({}); if(opts.dense) cursheet["!data"] = []; merges = []; arrayf = []; rowinfo = []; @@ -19069,7 +19086,7 @@ function write_ws_xlml_table(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbo if(n.hidden) k['ss:Hidden']="1"; o.push(writextag("Column",null,k)); }); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; for(var R = range.s.r; R <= range.e.r; ++R) { var row = [write_ws_xlml_row(R, (ws['!rows']||[])[R])]; for(var C = range.s.c; C <= range.e.c; ++C) { @@ -19084,7 +19101,7 @@ function write_ws_xlml_table(ws/*:Worksheet*/, opts, idx/*:number*/, wb/*:Workbo } if(skip) continue; var addr = {r:R,c:C}; - var ref = encode_cell(addr), cell = dense ? (ws[R]||[])[C] : ws[ref]; + var ref = encode_col(C) + encode_row(R), cell = dense ? (ws["!data"][R]||[])[C] : ws[ref]; row.push(write_ws_xlml_cell(cell, ref, ws, opts, idx, wb, addr)); } row.push(""); @@ -19246,7 +19263,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { var wb = ({opts:{}}/*:any*/); var Sheets = {}; if(DENSE != null && options.dense == null) options.dense = DENSE; - var out/*:Worksheet*/ = ((options.dense ? [] : {})/*:any*/); + var out/*:Worksheet*/ = ({}/*:any*/); if(options.dense) out["!data"] = []; var Directory = {}; var range/*:Range*/ = ({}/*:any*/); var last_formula = null; @@ -19299,8 +19316,8 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { } { if(options.dense) { - if(!out[cell.r]) out[cell.r] = []; - out[cell.r][cell.c] = line; + if(!out["!data"][cell.r]) out["!data"][cell.r] = []; + out["!data"][cell.r][cell.c] = line; } else out[last_cell] = line; } }; @@ -19466,7 +19483,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { Workbook.Sheets.push(wsprops); } if(cur_sheet === "") Preamble = out; else Sheets[cur_sheet] = out; - out = ((options.dense ? [] : {})/*:any*/); + out = ({}/*:any*/); if(options.dense) out["!data"] = []; } break; case 0x0009: case 0x0209: case 0x0409: case 0x0809 /* BOF */: { if(opts.biff === 8) opts.biff = { @@ -19486,7 +19503,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { if(val.BIFFVer == 0 && val.dt == 0x1000) { opts.biff = 5; seen_codepage = true; set_cp(opts.codepage = 28591); } if(opts.biff == 8 && val.BIFFVer == 0 && val.dt == 16) opts.biff = 2; if(file_depth++) break; - out = ((options.dense ? [] : {})/*:any*/); + out = ({}/*:any*/); if(options.dense) out["!data"] = []; if(opts.biff < 8 && !seen_codepage) { seen_codepage = true; set_cp(opts.codepage = options.codepage || 1252); } @@ -19509,7 +19526,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { wsprops = {Hidden:(Directory[s]||{hs:0}).hs, name:cur_sheet }; } break; case 0x0203 /* Number */: case 0x0003 /* BIFF2NUM */: case 0x0002 /* BIFF2INT */: { - if(out["!type"] == "chart") if(options.dense ? (out[val.r]||[])[val.c]: out[encode_cell({c:val.c, r:val.r})]) ++val.c; + if(out["!type"] == "chart") if(options.dense ? (out["!data"][val.r]||[])[val.c]: out[encode_col(val.c) + encode_row(val.r)]) ++val.c; temp_val = ({ixfe: val.ixfe, XF: XFs[val.ixfe]||{}, v:val.val, t:'n'}/*:any*/); if(BIFF2Fmt > 0) temp_val.z = BIFF2FmtTable[(temp_val.ixfe>>8) & 0x3F]; safe_format_xf(temp_val, options, wb.opts.Date1904); @@ -19546,7 +19563,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { var _fr = _f[0][0][1][0], _fc = _f[0][0][1][1]; var _fe = encode_cell({r:_fr, c:_fc}); if(sharedf[_fe]) temp_val.f = ""+stringify_formula(val.formula,range,val.cell,supbooks, opts); - else temp_val.F = ((options.dense ? (out[_fr]||[])[_fc]: out[_fe]) || {}).F; + else temp_val.F = ((options.dense ? (out["!data"][_fr]||[])[_fc]: out[_fe]) || {}).F; } else temp_val.f = ""+stringify_formula(val.formula,range,val.cell,supbooks, opts); } if(BIFF2Fmt > 0) temp_val.z = BIFF2FmtTable[(temp_val.ixfe>>8) & 0x3F]; @@ -19571,7 +19588,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { case 0x0021: case 0x0221 /* Array */: { arrayf.push(val); var _arraystart = encode_cell(val[0].s); - cc = options.dense ? (out[val[0].s.r]||[])[val[0].s.c] : out[_arraystart]; + cc = options.dense ? (out["!data"][val[0].s.r]||[])[val[0].s.c] : out[_arraystart]; if(options.cellFormula && cc) { if(!last_formula) break; /* technically unreachable */ if(!_arraystart || !cc) break; @@ -19585,7 +19602,7 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { /* TODO: capture range */ if(!last_formula) break; /* technically unreachable */ sharedf[encode_cell(last_formula.cell)]= val[0]; - cc = options.dense ? (out[last_formula.cell.r]||[])[last_formula.cell.c] : out[encode_cell(last_formula.cell)]; + cc = options.dense ? (out["!data"][last_formula.cell.r]||[])[last_formula.cell.c] : out[encode_cell(last_formula.cell)]; (cc||{}).f = ""+stringify_formula(val[0], range, lastcell, supbooks, opts); } } break; @@ -19650,25 +19667,25 @@ function parse_workbook(blob, options/*:ParseOpts*/)/*:Workbook*/ { case 0x01b8 /* HLink */: { for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR) for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC) { - cc = options.dense ? (out[rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; + cc = options.dense ? (out["!data"][rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; if(cc) cc.l = val[1]; } } break; case 0x0800 /* HLinkTooltip */: { for(rngR = val[0].s.r; rngR <= val[0].e.r; ++rngR) for(rngC = val[0].s.c; rngC <= val[0].e.c; ++rngC) { - cc = options.dense ? (out[rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; + cc = options.dense ? (out["!data"][rngR]||[])[rngC] : out[encode_cell({c:rngC,r:rngR})]; if(cc && cc.l) cc.l.Tooltip = val[1]; } } break; case 0x001c /* Note */: { if(opts.biff <= 5 && opts.biff >= 2) break; /* TODO: BIFF5 */ - cc = options.dense ? (out[val[0].r]||[])[val[0].c] : out[encode_cell(val[0])]; + cc = options.dense ? (out["!data"][val[0].r]||[])[val[0].c] : out[encode_cell(val[0])]; var noteobj = objects[val[2]]; if(!cc) { if(options.dense) { - if(!out[val[0].r]) out[val[0].r] = []; - cc = out[val[0].r][val[0].c] = ({t:"z"}/*:any*/); + if(!out["!data"][val[0].r]) out["!data"][val[0].r] = []; + cc = out["!data"][val[0].r][val[0].c] = ({t:"z"}/*:any*/); } else { cc = out[encode_cell(val[0])] = ({t:"z"}/*:any*/); } @@ -21278,20 +21295,20 @@ function write_ws_biff2_cell(ba/*:BufArray*/, cell/*:Cell*/, R/*:number*/, C/*:n } function write_ws_biff2(ba/*:BufArray*/, ws/*:Worksheet*/, idx/*:number*/, opts/*::, wb:Workbook*/) { - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; var range = safe_decode_range(ws['!ref'] || "A1"), ref/*:string*/, rr = "", cols/*:Array*/ = []; if(range.e.c > 0xFF || range.e.r > 0x3FFF) { if(opts.WTF) throw new Error("Range " + (ws['!ref'] || "A1") + " exceeds format limit A1:IV16384"); range.e.c = Math.min(range.e.c, 0xFF); range.e.r = Math.min(range.e.c, 0x3FFF); - ref = encode_range(range); } + var row = []; + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= range.e.r; ++R) { + if(dense) row = ws["!data"][R] || []; rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); - ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + for(C = range.s.c; C <= range.e.c; ++C) { + var cell = dense ? row[C] : ws[cols[C] + rr]; if(!cell) continue; /* write cell */ write_ws_biff2_cell(ba, cell, R, C, opts); @@ -21302,7 +21319,6 @@ function write_ws_biff2(ba/*:BufArray*/, ws/*:Worksheet*/, idx/*:number*/, opts/ /* Based on test files */ function write_biff2_buf(wb/*:Workbook*/, opts/*:WriteOpts*/) { var o = opts || {}; - if(DENSE != null && o.dense == null) o.dense = DENSE; var ba = buf_array(); var idx = 0; for(var i=0;i*/ = []; var range = safe_decode_range(ws['!ref'] || "A1"); @@ -21446,12 +21462,14 @@ function write_ws_biff8(idx/*:number*/, opts, wb/*:Workbook*/) { if(b8) ws['!links'] = []; var comments = []; + var row = []; + for(var C = range.s.c; C <= range.e.c; ++C) cols[C] = encode_col(C); for(var R = range.s.r; R <= range.e.r; ++R) { + if(dense) row = ws["!data"][R] || []; rr = encode_row(R); - for(var C = range.s.c; C <= range.e.c; ++C) { - if(R === range.s.r) cols[C] = encode_col(C); + for(C = range.s.c; C <= range.e.c; ++C) { ref = cols[C] + rr; - var cell = dense ? (ws[R]||[])[C] : ws[ref]; + var cell = dense ? row[C] : ws[ref]; if(!cell) continue; /* write cell */ write_ws_biff8_cell(ba, cell, R, C, opts); @@ -21608,8 +21626,8 @@ function write_biff_buf(wb/*:Workbook*/, opts/*:WriteOpts*/) { /* note: browser DOM element cannot see mso- style attrs, must parse */ function html_to_sheet(str/*:string*/, _opts)/*:Workbook*/ { var opts = _opts || {}; - if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var ws/*:Worksheet*/ = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var dense = (opts.dense != null) ? opts.dense : DENSE; + var ws/*:Worksheet*/ = ({}/*:any*/); if(dense) ws["!data"] = []; str = str.replace(//g, ""); var mtch/*:any*/ = str.match(/"); @@ -21655,7 +21673,7 @@ function html_to_sheet(str/*:string*/, _opts)/*:Workbook*/ { if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}/*:any*/); o.z = opts.dateNF || table_fmt[14]; } - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = o; } + if(dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = o; } else ws[encode_cell({r:R, c:C})] = o; C += CS; } @@ -21668,6 +21686,7 @@ function make_html_row(ws/*:Worksheet*/, r/*:Range*/, R/*:number*/, o/*:Sheet2HT var M/*:Array*/ = (ws['!merges'] ||[]); var oo/*:Array*/ = []; var sp = ({}/*:any*/); + var dense = ws["!data"] != null; for(var C = r.s.c; C <= r.e.c; ++C) { var RS = 0, CS = 0; for(var j = 0; j < M.length; ++j) { @@ -21677,8 +21696,8 @@ function make_html_row(ws/*:Worksheet*/, r/*:Range*/, R/*:number*/, o/*:Sheet2HT RS = M[j].e.r - M[j].s.r + 1; CS = M[j].e.c - M[j].s.c + 1; break; } if(RS < 0) continue; - var coord = encode_cell({r:R,c:C}); - var cell = o.dense ? (ws[R]||[])[C] : ws[coord]; + var coord = encode_col(C) + encode_row(R); + var cell = dense ? (ws["!data"][R]||[])[C] : ws[coord]; /* TODO: html entities */ var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; sp = ({}/*:any*/); @@ -21726,7 +21745,6 @@ function sheet_to_html(ws/*:Worksheet*/, opts/*:?Sheet2HTMLOpts*//*, wb:?Workboo var footer = o.footer != null ? o.footer : HTML_END; var out/*:Array*/ = [header]; var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); out.push(make_html_preamble(ws, r, o)); for(var R = r.s.r; R <= r.e.r; ++R) out.push(make_html_row(ws, r, R, o)); out.push("
" + footer); @@ -21741,7 +21759,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ } var opts = _opts || {}; - if(DENSE != null) opts.dense = DENSE; + var dense = ws["!data"] != null; var or_R = 0, or_C = 0; if(opts.origin != null) { if(typeof opts.origin == 'number') or_R = opts.origin; @@ -21806,7 +21824,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ l = Aelts[Aelti].getAttribute("href"); if(l.charAt(0) != "#") break; } if(l && l.charAt(0) != "#" && l.slice(0, 11).toLowerCase() != 'javascript:') o.l = ({ Target: l }); - if(opts.dense) { if(!ws[R + or_R]) ws[R + or_R] = []; ws[R + or_R][C + or_C] = o; } + if(dense) { if(!ws["!data"][R + or_R]) ws["!data"][R + or_R] = []; ws["!data"][R + or_R][C + or_C] = o; } else ws[encode_cell({c:C + or_C, r:R + or_R})] = o; if(range.e.c < C + or_C) range.e.c = C + or_C; C += CS; @@ -21822,7 +21840,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ function parse_dom_table(table/*:HTMLElement*/, _opts/*:?any*/)/*:Worksheet*/ { var opts = _opts || {}; - var ws/*:Worksheet*/ = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws/*:Worksheet*/ = ({}/*:any*/); if(opts.dense) ws["!data"] = []; return sheet_add_dom(ws, table, _opts); } @@ -22095,7 +22113,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { var sheetag/*:: = {name:"", '名称':""}*/; var rowtag/*:: = {'行号':""}*/; var Sheets = {}, SheetNames/*:Array*/ = []; - var ws = opts.dense ? ([]/*:any*/) : ({}/*:any*/); + var ws = ({}/*:any*/); if(opts.dense) ws["!data"] = []; var Rn, q/*:: :any = ({t:"", v:null, z:null, w:"",c:[],}:any)*/; var ctag = ({value:""}/*:any*/); var textp = "", textpidx = 0, textptag/*:: = {}*/; @@ -22139,7 +22157,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { sheetag = parsexmltag(Rn[0], false); R = C = -1; range.s.r = range.s.c = 10000000; range.e.r = range.e.c = 0; - ws = opts.dense ? ([]/*:any*/) : ({}/*:any*/); merges = []; + ws = ({}/*:any*/); if(opts.dense) ws["!data"] = []; merges = []; rowinfo = []; intable = true; } @@ -22159,7 +22177,7 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { case 'covered-table-cell': // 9.1.5 if(Rn[1] !== '/') ++C; if(opts.sheetStubs) { - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = {t:'z'}; } + if(opts.dense) { if(!ws["!data"][R]) ws["!data"][R] = []; ws["!data"][R][C] = {t:'z'}; } else ws[encode_cell({r:R,c:C})] = {t:'z'}; } textp = ""; textR = []; @@ -22175,10 +22193,10 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { if((ctag['数据类型'] || ctag['value-type']) == "string") { q.t = "s"; q.v = unescapexml(ctag['string-value'] || ""); if(opts.dense) { - if(!ws[R]) ws[R] = []; - ws[R][C] = q; + if(!ws["!data"][R]) ws["!data"][R] = []; + ws["!data"][R][C] = q; } else { - ws[encode_cell({r:R,c:C})] = q; + ws[encode_col(C) + encode_row(R)] = q; } } C+= colpeat-1; @@ -22255,9 +22273,9 @@ function parse_content_xml(d/*:string*/, _opts, _nfm)/*:Workbook*/ { for(var rpt = 0; rpt < rowpeat; ++rpt) { colpeat = parseInt(ctag['number-columns-repeated']||"1", 10); if(opts.dense) { - if(!ws[R + rpt]) ws[R + rpt] = []; - ws[R + rpt][C] = rpt == 0 ? q : dup(q); - while(--colpeat > 0) ws[R + rpt][C + colpeat] = dup(q); + if(!ws["!data"][R + rpt]) ws["!data"][R + rpt] = []; + ws["!data"][R + rpt][C] = rpt == 0 ? q : dup(q); + while(--colpeat > 0) ws["!data"][R + rpt][C + colpeat] = dup(q); } else { ws[encode_cell({r:R + rpt,c:C})] = q; while(--colpeat > 0) ws[encode_cell({r:R + rpt,c:C + colpeat})] = dup(q); @@ -22842,7 +22860,7 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function o.push(' \n'); var R=0,C=0, range = decode_range(ws['!ref']||"A1"); var marr/*:Array*/ = ws['!merges'] || [], mi = 0; - var dense = Array.isArray(ws); + var dense = ws["!data"] != null; if(ws["!cols"]) { for(C = 0; C <= range.e.c; ++C) o.push(' \n'); } @@ -22868,7 +22886,7 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function break; } if(skip) { o.push(covered_cell_xml); continue; } - var ref = encode_cell({r:R, c:C}), cell = dense ? (ws[R]||[])[C]: ws[ref]; + var ref = encode_cell({r:R, c:C}), cell = dense ? (ws["!data"][R]||[])[C]: ws[ref]; if(cell && cell.f) { ct['table:formula'] = escapexml(csf_to_ods_formula(cell.f)); if(cell.F) { @@ -22978,9 +22996,10 @@ var write_content_ods/*:{(wb:any, opts:any):string}*/ = /* @__PURE__ */(function var nfi = 69; wb.SheetNames.map(function(n) { return wb.Sheets[n]; }).forEach(function(ws) { if(!ws) return; + var dense = (ws["!data"] != null); var range = decode_range(ws["!ref"]); for(var R = 0; R <= range.e.r; ++R) for(var C = 0; C <= range.e.c; ++C) { - var c = Array.isArray(ws) ? (ws[R]||[])[C] : ws[encode_cell({r:R,c:C})]; + var c = dense ? (ws["!data"][R]||[])[C] : ws[encode_cell({r:R,c:C})]; if(!c || !c.z || c.z.toLowerCase() == "general") continue; if(!nfs[c.z]) { var out = write_number_format_ods(c.z, "N" + nfi); @@ -23138,29 +23157,22 @@ function u8str(u8) { function stru8(str) { return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); } -function u8contains(body, search) { - var L = body.indexOf(search[0]); - if (L == -1) - return false; - outer: - for (; L <= body.length - search.length; ++L) { - for (var j = 0; j < search.length; ++j) - if (body[L + j] != search[j]) - continue outer; - return true; - } - return false; -} function u8concat(u8a) { - var len = u8a.reduce(function(acc, x) { - return acc + x.length; - }, 0); + var len = 0; + for (var i = 0; i < u8a.length; ++i) + len += u8a[i].length; var out = new Uint8Array(len); var off = 0; - u8a.forEach(function(u8) { - out.set(u8, off); - off += u8.length; - }); + for (i = 0; i < u8a.length; ++i) { + var u8 = u8a[i], L = u8.length; + if (L < 250) { + for (var j = 0; j < L; ++j) + out[off++] = u8[j]; + } else { + out.set(u8, off); + off += L; + } + } return out; } function popcnt(x) { @@ -23185,7 +23197,7 @@ function writeDecimal128LE(buf, offset, value) { buf[offset + 15] |= value >= 0 ? 0 : 128; } function parse_varint49(buf, ptr) { - var l = ptr ? ptr[0] : 0; + var l = ptr.l; var usz = buf[l] & 127; varint: if (buf[l++] >= 128) { @@ -23211,8 +23223,7 @@ function parse_varint49(buf, ptr) { if (buf[l++] < 128) break varint; } - if (ptr) - ptr[0] = l; + ptr.l = l; return usz; } function write_varint49(v) { @@ -23253,9 +23264,9 @@ function write_varint49(v) { return usz[subarray](0, L); } function parse_packed_varints(buf) { - var ptr = [0]; + var ptr = { l: 0 }; var out = []; - while (ptr[0] < buf.length) + while (ptr.l < buf.length) out.push(parse_varint49(buf, ptr)); return out; } @@ -23315,50 +23326,49 @@ function varint_to_u64(buf) { return [lo >>> 0, hi >>> 0]; } function parse_shallow(buf) { - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { - var off = ptr[0]; + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { + var off = ptr.l; var num = parse_varint49(buf, ptr); var type = num & 7; - num = Math.floor(num / 8); - var len = 0; - var res; - if (num == 0) - break; + num = num / 8 | 0; + var data; + var l = ptr.l; switch (type) { case 0: { - var l = ptr[0]; - while (buf[ptr[0]++] >= 128) + while (buf[l++] >= 128) ; - res = buf[subarray](l, ptr[0]); + data = buf[subarray](ptr.l, l); + ptr.l = l; + } + break; + case 1: + { + data = buf[subarray](l, l + 8); + ptr.l = l + 8; + } + break; + case 2: + { + var len = parse_varint49(buf, ptr); + data = buf[subarray](ptr.l, ptr.l + len); + ptr.l += len; } break; case 5: - len = 4; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; + { + data = buf[subarray](l, l + 4); + ptr.l = l + 4; + } break; - case 1: - len = 8; - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 2: - len = parse_varint49(buf, ptr); - res = buf[subarray](ptr[0], ptr[0] + len); - ptr[0] += len; - break; - case 3: - case 4: default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { data: res, type: type }; + var v = { data: data, type: type }; if (out[num] == null) - out[num] = [v]; - else - out[num].push(v); + out[num] = []; + out[num].push(v); } return out; } @@ -23385,11 +23395,11 @@ function mappa(data, cb) { } function parse_iwa_file(buf) { var _a; - var out = [], ptr = [0]; - while (ptr[0] < buf.length) { + var out = [], ptr = { l: 0 }; + while (ptr.l < buf.length) { var len = parse_varint49(buf, ptr); - var ai = parse_shallow(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + var ai = parse_shallow(buf[subarray](ptr.l, ptr.l + len)); + ptr.l += len; var res = { id: varint_to_i32(ai[1][0].data), messages: [] @@ -23399,9 +23409,9 @@ function parse_iwa_file(buf) { var fl = varint_to_i32(mi[3][0].data); res.messages.push({ meta: mi, - data: buf[subarray](ptr[0], ptr[0] + fl) + data: buf[subarray](ptr.l, ptr.l + fl) }); - ptr[0] += fl; + ptr.l += fl; }); if ((_a = ai[3]) == null ? void 0 : _a[0]) res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; @@ -23437,45 +23447,46 @@ function write_iwa_file(ias) { function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); - var ptr = [0]; + var ptr = { l: 0 }; var usz = parse_varint49(buf, ptr); var chunks = []; - while (ptr[0] < buf.length) { - var tag = buf[ptr[0]] & 3; + var l = ptr.l; + while (l < buf.length) { + var tag = buf[l] & 3; if (tag == 0) { - var len = buf[ptr[0]++] >> 2; + var len = buf[l++] >> 2; if (len < 60) ++len; else { var c = len - 59; - len = buf[ptr[0]]; + len = buf[l]; if (c > 1) - len |= buf[ptr[0] + 1] << 8; + len |= buf[l + 1] << 8; if (c > 2) - len |= buf[ptr[0] + 2] << 16; + len |= buf[l + 2] << 16; if (c > 3) - len |= buf[ptr[0] + 3] << 24; + len |= buf[l + 3] << 24; len >>>= 0; len++; - ptr[0] += c; + l += c; } - chunks.push(buf[subarray](ptr[0], ptr[0] + len)); - ptr[0] += len; + chunks.push(buf[subarray](l, l + len)); + l += len; continue; } else { var offset = 0, length = 0; if (tag == 1) { - length = (buf[ptr[0]] >> 2 & 7) + 4; - offset = (buf[ptr[0]++] & 224) << 3; - offset |= buf[ptr[0]++]; + length = (buf[l] >> 2 & 7) + 4; + offset = (buf[l++] & 224) << 3; + offset |= buf[l++]; } else { - length = (buf[ptr[0]++] >> 2) + 1; + length = (buf[l++] >> 2) + 1; if (tag == 2) { - offset = buf[ptr[0]] | buf[ptr[0] + 1] << 8; - ptr[0] += 2; + offset = buf[l] | buf[l + 1] << 8; + l += 2; } else { - offset = (buf[ptr[0]] | buf[ptr[0] + 1] << 8 | buf[ptr[0] + 2] << 16 | buf[ptr[0] + 3] << 24) >>> 0; - ptr[0] += 4; + offset = (buf[l] | buf[l + 1] << 8 | buf[l + 2] << 16 | buf[l + 3] << 24) >>> 0; + l += 4; } } if (offset == 0) @@ -23507,16 +23518,15 @@ function parse_snappy_chunk(type, buf) { if (length) chunks.push(chunks[j][subarray](0, length)); } - if (chunks.length > 100) + if (chunks.length > 25) chunks = [u8concat(chunks)]; } } - if (chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0) != usz) - throw new Error("Unexpected length: ".concat(chunks.reduce(function(acc, u8) { - return acc + u8.length; - }, 0), " != ").concat(usz)); + var clen = 0; + for (var u8i = 0; u8i < chunks.length; ++u8i) + clen += chunks[u8i].length; + if (clen != usz) + throw new Error("Unexpected length: ".concat(clen, " != ").concat(usz)); return chunks; } function decompress_iwa_file(buf) { @@ -23533,7 +23543,7 @@ function decompress_iwa_file(buf) { } if (l !== buf.length) throw new Error("data is not a valid framed stream!"); - return u8concat(out); + return out.length == 1 ? out[0] : u8concat(out); } function compress_iwa_file(buf) { var out = []; @@ -23580,12 +23590,12 @@ function numbers_format_cell(cell, t, flags, ofmt, nfmt) { var fmt = ver >= 5 ? nfmt : ofmt; dur: if (flags & (ver > 4 ? 8 : 4) && cell.t == "n" && ctype == 7) { - var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? parse_varint49(fmt[7][0].data) : -1; + var dstyle = ((_a = fmt[7]) == null ? void 0 : _a[0]) ? varint_to_i32(fmt[7][0].data) : -1; if (dstyle == -1) break dur; - var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? parse_varint49(fmt[15][0].data) : -1; - var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? parse_varint49(fmt[16][0].data) : -1; - var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? parse_varint49(fmt[40][0].data) : -1; + var dmin = ((_b = fmt[15]) == null ? void 0 : _b[0]) ? varint_to_i32(fmt[15][0].data) : -1; + var dmax = ((_c = fmt[16]) == null ? void 0 : _c[0]) ? varint_to_i32(fmt[16][0].data) : -1; + var auto = ((_d = fmt[40]) == null ? void 0 : _d[0]) ? varint_to_i32(fmt[40][0].data) : -1; var d = cell.v, dd = d; autodur: if (auto) { @@ -23913,7 +23923,7 @@ function parse_cell_storage(buf, lut) { } function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); - return parse_varint49(pb[1][0].data); + return varint_to_i32(pb[1][0].data); } function write_TSP_Reference(idx) { return write_shallow([ @@ -24044,7 +24054,7 @@ function parse_TST_TableModelArchive(M, root, ws) { if (range.e.c < 0) throw new Error("Invalid col varint ".concat(pb[7][0].data)); ws["!ref"] = encode_range(range); - var dense = Array.isArray(ws); + var dense = ws["!data"] != null, dws = ws; var store = parse_shallow(pb[4][0].data); var lut = numbers_lut_new(); if ((_a = store[4]) == null ? void 0 : _a[0]) @@ -24069,12 +24079,11 @@ function parse_TST_TableModelArchive(M, root, ws) { var res = parse_cell_storage(buf, lut); if (res) { if (dense) { - if (!ws[_R + R]) - ws[_R + R] = []; - ws[_R + R][C] = res; + if (!dws["!data"][_R + R]) + dws["!data"][_R + R] = []; + dws["!data"][_R + R][C] = res; } else { - var addr = encode_cell({ r: _R + R, c: C }); - ws[addr] = res; + ws[encode_col(C) + encode_row(_R + R)] = res; } } }); @@ -24101,12 +24110,9 @@ function parse_TST_TableModelArchive(M, root, ws) { } function parse_TST_TableInfoArchive(M, root, opts) { var pb = parse_shallow(root.data); - var out; - if (!(opts == null ? void 0 : opts.dense)) - out = { "!ref": "A1" }; - else - out = []; - out["!ref"] = "A1"; + var out = { "!ref": "A1" }; + if (opts == null ? void 0 : opts.dense) + out["!data"] = []; var tableref = M[parse_TSP_Reference(pb[2][0].data)]; var mtype = varint_to_i32(tableref[0].meta[1][0].data); if (mtype != 6001) @@ -24323,26 +24329,20 @@ function build_numbers_deps(cfb) { dependents[packet.id] = { deps: [], location: fp, type: varint_to_i32(packet.messages[0].meta[1][0].data) }; }); }); - indices.sort(function(x, y) { - return x - y; - }); - var indices_varint = indices.filter(function(x) { - return x > 1; - }).map(function(x) { - return [x, write_varint49(x)]; - }); cfb.FileIndex.forEach(function(fi) { if (!fi.name.match(/\.iwa/)) return; if (fi.name.match(/OperationStorage/)) return; parse_iwa_file(decompress_iwa_file(fi.content)).forEach(function(ia) { - indices_varint.forEach(function(ivi) { - if (ia.messages.some(function(mess) { - return varint_to_i32(mess.meta[1][0].data) != 11006 && u8contains(mess.data, ivi[1]); - })) { - dependents[ivi[0]].deps.push(ia.id); - } + ia.messages.forEach(function(mess) { + [5, 6].forEach(function(f) { + if (!mess.meta[f]) + return; + mess.meta[f].forEach(function(x) { + dependents[ia.id].deps.push(varint_to_i32(x.data)); + }); + }); }); }); }); @@ -24591,7 +24591,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a3, _b2; var mm = parse_shallow(m.data); @@ -24654,7 +24654,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a2, _b2; var mm = parse_shallow(m.data); @@ -24714,7 +24714,7 @@ function numbers_add_ws(cfb, deps, wsidx) { [], [{ type: 0, data: write_varint49(0) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileref + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a2, _b2; var mm = parse_shallow(m.data); @@ -24826,16 +24826,16 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { var metadata = numbers_iwa_find(cfb, deps, 2); var mlist = parse_shallow(metadata.messages[0].data); var mlst = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) == tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) == tileref; }); - return (mlst == null ? void 0 : mlst.length) ? parse_varint49(parse_shallow(mlst[0].data)[12][0].data) : 0; + return (mlst == null ? void 0 : mlst.length) ? varint_to_i32(parse_shallow(mlst[0].data)[12][0].data) : 0; }(); { CFB.utils.cfb_del(cfb, deps[tileref].location); numbers_iwa_doit(cfb, deps, 2, function(ai) { var mlist = parse_shallow(ai.messages[0].data); mlist[3] = mlist[3].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); var parentidx = mlist[3].findIndex(function(m) { var _a, _b; @@ -24850,7 +24850,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { if (!parent[6]) parent[6] = []; parent[6] = parent[6].filter(function(m) { - return parse_varint49(parse_shallow(m.data)[1][0].data) != tileref; + return varint_to_i32(parse_shallow(m.data)[1][0].data) != tileref; }); mlist[3][parentidx].data = write_shallow(parent); ai.messages[0].data = write_shallow(mlist); @@ -24910,7 +24910,7 @@ function write_numbers_tma(cfb, deps, ws, tmaroot, tmafile, tmaref) { [], [{ type: 0, data: write_varint49(save_token) }] ]) }); - mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, parse_varint49(mlist[1][0].data))) }]; + mlist[1] = [{ type: 0, data: write_varint49(Math.max(newtileid + 1, varint_to_i32(mlist[1][0].data))) }]; var parentidx = mlist[3].findIndex(function(m) { var _a, _b; var mm = parse_shallow(m.data); @@ -25991,17 +25991,17 @@ type MJRObject = { isempty: boolean; }; */ -function make_json_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, header/*:number*/, hdr/*:Array*/, dense/*:boolean*/, o/*:Sheet2JSONOpts*/)/*:MJRObject*/ { +function make_json_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, header/*:number*/, hdr/*:Array*/, o/*:Sheet2JSONOpts*/)/*:MJRObject*/ { var rr = encode_row(R); var defval = o.defval, raw = o.raw || !Object.prototype.hasOwnProperty.call(o, "raw"); - var isempty = true; + var isempty = true, dense = (sheet["!data"] != null); var row/*:any*/ = (header === 1) ? [] : {}; if(header !== 1) { if(Object.defineProperty) try { Object.defineProperty(row, '__rowNum__', {value:R, enumerable:false}); } catch(e) { row.__rowNum__ = R; } else row.__rowNum__ = R; } - if(!dense || sheet[R]) for (var C = r.s.c; C <= r.e.c; ++C) { - var val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + if(!dense || sheet["!data"][R]) for (var C = r.s.c; C <= r.e.c; ++C) { + var val = dense ? (sheet["!data"][R]||[])[C] : sheet[cols[C] + rr]; if(val === undefined || val.t === undefined) { if(defval === undefined) continue; if(hdr[C] != null) { row[hdr[C]] = defval; } @@ -26050,16 +26050,16 @@ function sheet_to_json(sheet/*:Worksheet*/, opts/*:?Sheet2JSONOpts*/) { var cols/*:Array*/ = []; var out/*:Array*/ = []; var outi = 0, counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -26078,7 +26078,7 @@ function sheet_to_json(sheet/*:Worksheet*/, opts/*:?Sheet2JSONOpts*/) { } for (R = r.s.r + offset; R <= r.e.r; ++R) { if ((rowinfo[R]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) out[outi++] = row.row; } out.length = outi; @@ -26089,9 +26089,11 @@ var qreg = /"/g; function make_csv_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Array*/, fs/*:number*/, rs/*:number*/, FS/*:string*/, o/*:Sheet2CSVOpts*/)/*:?string*/ { var isempty = true; var row/*:Array*/ = [], txt = "", rr = encode_row(R); + var dense = sheet["!data"] != null; + var datarow = dense && sheet["!data"][R] || []; for(var C = r.s.c; C <= r.e.c; ++C) { if (!cols[C]) continue; - var val = o.dense ? (sheet[R]||[])[C]: sheet[cols[C] + rr]; + var val = dense ? datarow[C]: sheet[cols[C] + rr]; if(val == null) txt = ""; else if(val.v != null) { isempty = false; @@ -26118,7 +26120,6 @@ function sheet_to_csv(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/)/*:string*/ { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row = "", cols/*:Array*/ = []; - o.dense = Array.isArray(sheet); var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -26130,7 +26131,6 @@ function sheet_to_csv(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/)/*:string*/ { if(o.strip) row = row.replace(endregex,""); if(row || (o.blankrows !== false)) out.push((w++ ? RS : "") + row); } - delete o.dense; return out.join(""); } @@ -26147,13 +26147,13 @@ function sheet_to_formulae(sheet/*:Worksheet*/)/*:Array*/ { if(sheet == null || sheet["!ref"] == null) return []; var r = safe_decode_range(sheet['!ref']), rr = "", cols/*:Array*/ = [], C; var cmds/*:Array*/ = []; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; for(C = r.s.c; C <= r.e.c; ++C) cols[C] = encode_col(C); for(var R = r.s.r; R <= r.e.r; ++R) { rr = encode_row(R); for(C = r.s.c; C <= r.e.c; ++C) { y = cols[C] + rr; - x = dense ? (sheet[R]||[])[C] : sheet[y]; + x = dense ? (sheet["!data"][R]||[])[C] : sheet[y]; val = ""; if(x === undefined) continue; else if(x.F != null) { @@ -26178,10 +26178,11 @@ function sheet_to_formulae(sheet/*:Worksheet*/)/*:Array*/ { function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet*/ { var o = opts || {}; - var dense = _ws ? Array.isArray(_ws) : o.dense; + var dense = _ws ? (_ws["!data"] != null) : o.dense; if(DENSE != null && dense == null) dense = DENSE; var offset = +!o.skipHeader; - var ws/*:Worksheet*/ = _ws || (dense ? ([]/*:any*/) : ({}/*:any*/)); + var ws/*:Worksheet*/ = _ws || ({}); + if(!_ws && dense) ws["!data"] = []; var _R = 0, _C = 0; if(ws && o.origin != null) { if(typeof o.origin == 'number') _R = o.origin; @@ -26202,17 +26203,18 @@ function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet var hdr/*:Array*/ = o.header || [], C = 0; var ROW = []; js.forEach(function (JS, R/*:number*/) { - if(dense && !ws[_R + R + offset]) ws[_R + R + offset] = []; - if(dense) ROW = ws[_R + R + offset]; + if(dense && !ws["!data"][_R + R + offset]) ws["!data"][_R + R + offset] = []; + if(dense) ROW = ws["!data"][_R + R + offset]; keys(JS).forEach(function(k) { if((C=hdr.indexOf(k)) == -1) hdr[C=hdr.length] = k; var v = JS[k]; var t = 'z'; var z = ""; - var ref = dense ? "" : encode_cell({c:_C + C,r:_R + R + offset}); + var ref = dense ? "" : (encode_col(_C + C) + encode_row(_R + R + offset)); var cell/*:Cell*/ = dense ? ROW[_C + C] : ws[ref]; if(v && typeof v === 'object' && !(v instanceof Date)){ - ws[ref] = v; + if(dense) ROW[_C + C] = v; + else ws[ref] = v; } else { if(typeof v == 'number') t = 'n'; else if(typeof v == 'boolean') t = 'b'; @@ -26237,9 +26239,9 @@ function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet }); range.e.c = Math.max(range.e.c, _C + hdr.length - 1); var __R = encode_row(_R); - if(dense && !ws[_R]) ws[_R] = []; + if(dense && !ws["!data"][_R]) ws["!data"][_R] = []; if(offset) for(C = 0; C < hdr.length; ++C) { - if(dense) ws[_R][C + _C] = {t:'s', v:hdr[C]}; + if(dense) ws["!data"][_R][C + _C] = {t:'s', v:hdr[C]}; else ws[encode_col(C + _C) + __R] = {t:'s', v:hdr[C]}; } ws['!ref'] = encode_range(range); @@ -26251,18 +26253,17 @@ function json_to_sheet(js/*:Array*/, opts)/*:Worksheet*/ { return sheet_add function ws_get_cell_stub(ws/*:Worksheet*/, R, C/*:?number*/)/*:Cell*/ { /* A1 cell address */ if(typeof R == "string") { - /* dense */ - if(Array.isArray(ws)) { + if(ws["!data"] != null) { var RC = decode_cell(R); - if(!ws[RC.r]) ws[RC.r] = []; - return ws[RC.r][RC.c] || (ws[RC.r][RC.c] = {t:'z'}); + if(!ws["!data"][RC.r]) ws["!data"][RC.r] = []; + return ws["!data"][RC.r][RC.c] || (ws["!data"][RC.r][RC.c] = {t:'z'}); } return ws[R] || (ws[R] = {t:'z'}); } /* cell address object */ if(typeof R != "number") return ws_get_cell_stub(ws, encode_cell(R)); /* R and C are 0-based indices */ - return ws_get_cell_stub(ws, encode_cell({r:R,c:C||0})); + return ws_get_cell_stub(ws, encode_col(C||0) + encode_row(R)); } /* find sheet index for given name / validate index */ @@ -26417,7 +26418,6 @@ function write_csv_stream(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/) { var RS = o.RS !== undefined ? o.RS : "\n", rs = RS.charCodeAt(0); var endregex = new RegExp((FS=="|" ? "\\|" : FS)+"+$"); var row/*:?string*/ = "", cols/*:Array*/ = []; - o.dense = Array.isArray(sheet); var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(var C = r.s.c; C <= r.e.c; ++C) if (!((colinfo[C]||{}).hidden)) cols[C] = encode_col(C); @@ -26447,7 +26447,6 @@ function write_html_stream(ws/*:Worksheet*/, opts/*:?Sheet2HTMLOpts*/) { var footer = o.footer != null ? o.footer : HTML_END; stream.push(header); var r = decode_range(ws['!ref']); - o.dense = Array.isArray(ws); stream.push(make_html_preamble(ws, r, o)); var R = r.s.r; var end = false; @@ -26485,16 +26484,16 @@ function write_json_stream(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/) { var rr = encode_row(r.s.r); var cols/*:Array*/ = []; var counter = 0; - var dense = Array.isArray(sheet); + var dense = sheet["!data"] != null; var R = r.s.r, C = 0; var header_cnt = {}; - if(dense && !sheet[R]) sheet[R] = []; + if(dense && !sheet["!data"][R]) sheet["!data"][R] = []; var colinfo/*:Array*/ = o.skipHidden && sheet["!cols"] || []; var rowinfo/*:Array*/ = o.skipHidden && sheet["!rows"] || []; for(C = r.s.c; C <= r.e.c; ++C) { if(((colinfo[C]||{}).hidden)) continue; cols[C] = encode_col(C); - val = dense ? sheet[R][C] : sheet[cols[C] + rr]; + val = dense ? sheet["!data"][R][C] : sheet[cols[C] + rr]; switch(header) { case 1: hdr[C] = C - r.s.c; break; case 2: hdr[C] = cols[C]; break; @@ -26515,7 +26514,7 @@ function write_json_stream(sheet/*:Worksheet*/, opts/*:?Sheet2CSVOpts*/) { stream._read = function() { while(R <= r.e.r) { if ((rowinfo[R-1]||{}).hidden) continue; - var row = make_json_row(sheet, r, R, cols, header, hdr, dense, o); + var row = make_json_row(sheet, r, R, cols, header, hdr, o); ++R; if((row.isempty === false) || (header === 1 ? o.blankrows !== false : !!o.blankrows)) { stream.push(row.row);