diff --git a/CHANGELOG.md b/CHANGELOG.md index cde25af..b339e1e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,7 +4,20 @@ 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.18.5 + +* Enabled `sideEffects: false` in package.json +* Basic NUMBERS write support + +## v0.18.4 + * CSV output omits trailing record separator +* Properly terminate NodeJS Streams +* DBF preserve column types on import and use when applicable on export + +## v0.18.3 + +* Removed references to `require` and `process` in browser builds ## v0.18.2 diff --git a/Makefile b/Makefile index 9c6f62d..d89cb3e 100644 --- a/Makefile +++ b/Makefile @@ -95,6 +95,8 @@ dist: dist-deps $(TARGET) bower.json ## Prepare JS files for distribution misc/strip_sourcemap.sh dist/$(LIB).mini.min.js @# extendscript cat <(head -n 1 bits/00_header.js) shim.js $(DISTHDR) $(REQS) dist/$(TARGET) > dist/$(LIB).extendscript.js + @# zahl + cp modules/xlsx.zahl.js modules/xlsx.zahl.mjs dist/ @# rm dist/$(TARGET) dist/$(MINITGT) diff --git a/README.md b/README.md index 011b499..7714ade 100644 --- a/README.md +++ b/README.md @@ -1764,6 +1764,61 @@ stream.pipe(conv); conv.pipe(process.stdout); +
+ Exporting NUMBERS files (click to show) + +The NUMBERS writer requires a fairly large base. The supplementary `xlsx.zahl` +scripts provide support. `xlsx.zahl.js` is designed for standalone and NodeJS +use, while `xlsx.zahl.mjs` is suitable for ESM. + +_Browser_ + +```html + + + + +``` + +_Node_ + +```js +var XLSX = require("./xlsx.flow"); +var XLSX_ZAHL = require("./dist/xlsx.zahl"); +var wb = XLSX.utils.book_new(); var ws = XLSX.utils.aoa_to_sheet([ + ["SheetJS", "<3","விரிதாள்"], + [72,,"Arbeitsblätter"], + [,62,"数据"], + [true,false,], +]); XLSX.utils.book_append_sheet(wb, ws, "Sheet1"); +XLSX.writeFile(wb, "textport.numbers", {numbers: XLSX_ZAHL, compression: true}); +``` + +_Deno_ + +```ts +import * as XLSX from './xlsx.mjs'; +import XLSX_ZAHL from './dist/xlsx.zahl.mjs'; + +var wb = XLSX.utils.book_new(); var ws = XLSX.utils.aoa_to_sheet([ + ["SheetJS", "<3","விரிதாள்"], + [72,,"Arbeitsblätter"], + [,62,"数据"], + [true,false,], +]); XLSX.utils.book_append_sheet(wb, ws, "Sheet1"); +XLSX.writeFile(wb, "textports.numbers", {numbers: XLSX_ZAHL, compression: true}); +``` + +
+ pipes write streams to nodejs response. ### Generating JSON and JS Data @@ -3366,6 +3421,7 @@ The exported `write` and `writeFile` functions accept an options argument: |`Props` | | Override workbook properties when writing ** | |`themeXLSX` | | Override theme XML when writing XLSX/XLSB/XLSM ** | |`ignoreEC` | `true` | Suppress "number as text" errors ** | +|`numbers` | | Payload for NUMBERS export ** | - `bookSST` is slower and more memory intensive, but has better compatibility with older versions of iOS Numbers @@ -3381,6 +3437,8 @@ The exported `write` and `writeFile` functions accept an options argument: - Due to a bug in the program, some features like "Text to Columns" will crash Excel on worksheets where error conditions are ignored. The writer will mark files to ignore the error by default. Set `ignoreEC` to `false` to suppress. +- Due to the size of the data, the NUMBERS data is not included by default. The + included `xlsx.zahl.js` and `xlsx.zahl.mjs` scripts include the data. ### Supported Output Formats @@ -3398,6 +3456,7 @@ output formats. The specific file type is controlled with `bookType` option: | `biff3` | `.xls` | none | single | Excel 3.0 Worksheet Format | | `biff2` | `.xls` | none | single | Excel 2.0 Worksheet Format | | `xlml` | `.xls` | none | multi | Excel 2003-2004 (SpreadsheetML) | +| `numbers` |`.numbers`| ZIP | single | Numbers 3.0+ Spreadsheet | | `ods` | `.ods` | ZIP | multi | OpenDocument Spreadsheet | | `fods` | `.fods` | none | multi | Flat OpenDocument Spreadsheet | | `wk3` | `.wk3` | none | multi | Lotus Workbook (WK3) | @@ -3950,7 +4009,7 @@ Despite the library name `xlsx`, it supports numerous spreadsheet file formats: | Lotus Formatted Text (PRN) | ✔ | ✔ | | UTF-16 Unicode Text (TXT) | ✔ | ✔ | | **Other Workbook/Worksheet Formats** |:-----:|:-----:| -| Numbers 3.0+ / iWork 2013+ Spreadsheet (NUMBERS) | ✔ | | +| Numbers 3.0+ / iWork 2013+ Spreadsheet (NUMBERS) | ✔ | ✔ | | OpenDocument Spreadsheet (ODS) | ✔ | ✔ | | Flat XML ODF Spreadsheet (FODS) | ✔ | ✔ | | Uniform Office Format Spreadsheet (标文通 UOS1/UOS2) | ✔ | | @@ -4099,6 +4158,8 @@ The parser focuses on extracting raw data from tables. Numbers technically supports multiple tables in a logical worksheet, including custom titles. This parser will generate one worksheet per Numbers table. +The writer currently exports a small range from the first worksheet. + - **OpenDocument Spreadsheet (ODS/FODS)** ODS is an XML-in-ZIP format akin to XLSX while FODS is an XML format akin to diff --git a/bin/xlsx.njs b/bin/xlsx.njs index cf1471d..e467337 100755 --- a/bin/xlsx.njs +++ b/bin/xlsx.njs @@ -44,6 +44,7 @@ program .option('-6, --xlml', 'emit SSML to or .xls (2003 XML)') .option('-T, --fods', 'emit FODS to or .fods (Flat ODS)') .option('--wk3', 'emit WK3 to or .txt (Lotus WK3)') + .option('--numbers', 'emit NUMBERS to or .numbers') .option('-S, --formulae', 'emit list of values and formulae') .option('-j, --json', 'emit formatted JSON (all fields text)') @@ -90,6 +91,7 @@ var workbook_formats = [ ['xls', 'xls', 'xls'], ['xla', 'xla', 'xla'], ['biff5', 'biff5', 'xls'], + ['numbers', 'numbers', 'numbers'], ['ods', 'ods', 'ods'], ['fods', 'fods', 'fods'], ['wk3', 'wk3', 'wk3'] @@ -192,6 +194,10 @@ if(program.props) { /* full workbook formats */ workbook_formats.forEach(function(m) { if(program[m[0]] || isfmt(m[0])) { wopts.bookType = m[1]; + if(wopts.bookType == "numbers") try { + var XLSX_ZAHL = require("../dist/xlsx.zahl"); + wopts.numbers = XLSX_ZAHL; + } catch(e) {} if(wb) X.writeFile(wb, program.output || sheetname || ((filename || "") + "." + m[2]), wopts); process.exit(0); } }); diff --git a/bits/01_version.js b/bits/01_version.js index 4219de1..bb23d5c 100644 --- a/bits/01_version.js +++ b/bits/01_version.js @@ -1 +1 @@ -XLSX.version = '0.18.4'; +XLSX.version = '0.18.5'; diff --git a/bits/83_numbers.js b/bits/83_numbers.js index bd7c4d0..f78d937 100644 --- a/bits/83_numbers.js +++ b/bits/83_numbers.js @@ -5,6 +5,19 @@ function u8_to_dataview(array) { function u8str(u8) { return typeof TextDecoder != "undefined" ? new TextDecoder().decode(u8) : utf8read(a2s(u8)); } +function stru8(str) { + return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); +} +function u8contains(body, search) { + outer: + for (var L = 0; 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; @@ -29,6 +42,15 @@ function readDecimal128LE(buf, offset) { mantissa = mantissa * 256 + buf[j]; return (buf[offset + 15] & 128 ? -mantissa : mantissa) * Math.pow(10, exp - 6176); } +function writeDecimal128LE(buf, offset, value) { + var exp = Math.floor(value == 0 ? 0 : Math.LOG10E * Math.log(Math.abs(value))) + 6176 - 20; + var mantissa = value / Math.pow(10, exp - 6176); + buf[offset + 15] |= exp >> 7; + buf[offset + 14] |= (exp & 127) << 1; + for (var i = 0; mantissa >= 1; ++i, mantissa /= 256) + buf[offset + i] = mantissa & 255; + buf[offset + 15] |= value >= 0 ? 0 : 128; +} function parse_varint49(buf, ptr) { var l = ptr ? ptr[0] : 0; var usz = buf[l] & 127; @@ -154,7 +176,7 @@ function parse_shallow(buf) { default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { offset: off, data: res, type: type }; + var v = { data: res, type: type }; if (out[num] == null) out[num] = [v]; else @@ -166,6 +188,8 @@ function write_shallow(proto) { var out = []; proto.forEach(function(field, idx) { field.forEach(function(item) { + if (!item.data) + return; out.push(write_varint49(idx * 8 + item.type)); if (item.type == 2) out.push(write_varint49(item.data.length)); @@ -175,21 +199,12 @@ function write_shallow(proto) { return u8concat(out); } function mappa(data, cb) { - if (!data) - return []; - return data.map(function(d) { - var _a; - try { - return cb(d.data); - } catch (e) { - var m = (_a = e.message) == null ? void 0 : _a.match(/at offset (\d+)/); - if (m) - e.message = e.message.replace(/at offset (\d+)/, "at offset " + (+m[1] + d.offset)); - throw e; - } - }); + return (data == null ? void 0 : data.map(function(d) { + return cb(d.data); + })) || []; } function parse_iwa_file(buf) { + var _a; var out = [], ptr = [0]; while (ptr[0] < buf.length) { var len = parse_varint49(buf, ptr); @@ -208,10 +223,35 @@ function parse_iwa_file(buf) { }); ptr[0] += fl; }); + if ((_a = ai[3]) == null ? void 0 : _a[0]) + res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; out.push(res); } return out; } +function write_iwa_file(ias) { + var bufs = []; + ias.forEach(function(ia) { + var ai = []; + ai[1] = [{ data: write_varint49(ia.id), type: 0 }]; + ai[2] = []; + if (ia.merge != null) + ai[3] = [{ data: write_varint49(+!!ia.merge), type: 0 }]; + var midata = []; + ia.messages.forEach(function(mi) { + midata.push(mi.data); + mi.meta[3] = [{ type: 0, data: write_varint49(mi.data.length) }]; + ai[2].push({ data: write_shallow(mi.meta), type: 2 }); + }); + var aipayload = write_shallow(ai); + bufs.push(write_varint49(aipayload.length)); + bufs.push(aipayload); + midata.forEach(function(mid) { + return bufs.push(mid); + }); + }); + return u8concat(bufs); +} function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); @@ -366,7 +406,7 @@ function parse_old_storage(buf, sst, rsst, v) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -388,7 +428,7 @@ function parse_old_storage(buf, sst, rsst, v) { } return ret; } -function parse_storage(buf, sst, rsst) { +function parse_new_storage(buf, sst, rsst) { var dv = u8_to_dataview(buf); var flags = dv.getUint32(8, true); var data_offset = 12; @@ -430,7 +470,7 @@ function parse_storage(buf, sst, rsst) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -451,6 +491,66 @@ function parse_storage(buf, sst, rsst) { } return ret; } +function write_new_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 5; + switch (cell.t) { + case "n": + out[1] = 2; + writeDecimal128LE(out, l, cell.v); + flags |= 1; + l += 16; + break; + case "b": + out[1] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 2; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[1] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 8; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(8, flags, true); + return out.slice(0, l); +} +function write_old_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 3; + switch (cell.t) { + case "n": + out[2] = 2; + dv.setFloat64(l, cell.v, true); + flags |= 32; + l += 8; + break; + case "b": + out[2] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 32; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[2] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 16; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(4, flags, true); + return out.slice(0, l); +} function parse_cell_storage(buf, sst, rsst) { switch (buf[0]) { case 0: @@ -459,7 +559,7 @@ function parse_cell_storage(buf, sst, rsst) { case 3: return parse_old_storage(buf, sst, rsst, buf[0]); case 5: - return parse_storage(buf, sst, rsst); + return parse_new_storage(buf, sst, rsst); default: throw new Error("Unsupported payload version ".concat(buf[0])); } @@ -468,6 +568,11 @@ function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); return parse_varint49(pb[1][0].data); } +function write_TSP_Reference(idx) { + var out = []; + out[1] = [{ type: 0, data: write_varint49(idx) }]; + return write_shallow(out); +} function parse_TST_TableDataList(M, root) { var pb = parse_shallow(root.data); var type = varint_to_i32(pb[1][0].data); @@ -526,7 +631,8 @@ function parse_TST_TileRowInfo(u8, type) { var cells = []; for (C = 0; C < offsets.length - 1; ++C) cells[offsets[C][0]] = used_storage.subarray(offsets[C][1] * width, offsets[C + 1][1] * width); - cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); + if (offsets.length >= 1) + cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); return { R: R, cells: cells }; } function parse_TST_Tile(M, root) { @@ -632,7 +738,7 @@ function parse_TN_DocumentArchive(M, root) { } function parse_numbers_iwa(cfb) { var _a, _b, _c, _d; - var out = {}, indices = []; + var M = {}, indices = []; cfb.FullPaths.forEach(function(p) { if (p.match(/\.iwpv2/)) throw new Error("Unsupported password protection"); @@ -653,16 +759,16 @@ function parse_numbers_iwa(cfb) { return console.log("## " + (e.message || e)); } packets.forEach(function(packet) { - out[packet.id] = packet.messages; + M[packet.id] = packet.messages; indices.push(packet.id); }); }); if (!indices.length) throw new Error("File has no messages"); - var docroot = ((_d = (_c = (_b = (_a = out == null ? void 0 : out[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(out[1][0].meta[1][0].data) == 1 && out[1][0]; + var docroot = ((_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) == 1 && M[1][0]; if (!docroot) indices.forEach(function(idx) { - out[idx].forEach(function(iwam) { + M[idx].forEach(function(iwam) { var mtype = varint_to_i32(iwam.meta[1][0].data) >>> 0; if (mtype == 1) { if (!docroot) @@ -674,5 +780,323 @@ function parse_numbers_iwa(cfb) { }); if (!docroot) throw new Error("Cannot find Document root"); - return parse_TN_DocumentArchive(out, docroot); + return parse_TN_DocumentArchive(M, docroot); +} +function write_tile_row(tri, data, SST) { + var _a, _b, _c, _d; + 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 wide_offsets = ((_d = (_c = tri[8]) == null ? void 0 : _c[0]) == null ? void 0 : _d.data) && varint_to_i32(tri[8][0].data) > 0 || false; + if (wide_offsets) + throw "Math only works with normal offsets"; + var cnt = 0; + var dv = u8_to_dataview(tri[7][0].data), last_offset = 0, cell_storage = []; + var _dv = u8_to_dataview(tri[4][0].data), _last_offset = 0, _cell_storage = []; + for (var C = 0; C < data.length; ++C) { + if (data[C] == null) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535); + continue; + } + dv.setUint16(C * 2, last_offset, true); + _dv.setUint16(C * 2, _last_offset, true); + var celload, _celload; + switch (typeof data[C]) { + case "string": + celload = write_new_storage({ t: "s", v: data[C] }, SST); + _celload = write_old_storage({ t: "s", v: data[C] }, SST); + break; + case "number": + celload = write_new_storage({ t: "n", v: data[C] }, SST); + _celload = write_old_storage({ t: "n", v: data[C] }, SST); + break; + case "boolean": + celload = write_new_storage({ t: "b", v: data[C] }, SST); + _celload = write_old_storage({ t: "b", v: data[C] }, SST); + break; + default: + throw new Error("Unsupported value " + data[C]); + } + cell_storage.push(celload); + last_offset += celload.length; + _cell_storage.push(_celload); + _last_offset += _celload.length; + ++cnt; + } + tri[2][0].data = write_varint49(cnt); + for (; C < tri[7][0].data.length / 2; ++C) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535, true); + } + tri[6][0].data = u8concat(cell_storage); + tri[3][0].data = u8concat(_cell_storage); + return cnt; +} +function write_numbers_iwa(wb, opts) { + if (!opts || !opts.numbers) + throw new Error("Must pass a `numbers` option -- check the README"); + var ws = wb.Sheets[wb.SheetNames[0]]; + if (wb.SheetNames.length > 1) + console.error("The Numbers writer currently writes only the first table"); + var range = decode_range(ws["!ref"]); + range.s.r = range.s.c = 0; + var trunc = false; + if (range.e.c > 9) { + trunc = true; + range.e.c = 9; + } + if (range.e.r > 49) { + trunc = true; + range.e.r = 49; + } + if (trunc) + console.error("The Numbers writer is currently limited to ".concat(encode_range(range))); + var data = sheet_to_json(ws, { range: range, header: 1 }); + var SST = ["~Sh33tJ5~"]; + data.forEach(function(row) { + return row.forEach(function(cell) { + if (typeof cell == "string") + SST.push(cell); + }); + }); + var dependents = {}; + var indices = []; + var cfb = CFB.read(opts.numbers, { type: "base64" }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (fi.type != 2) + return; + if (!fi.name.match(/\.iwa/)) + return; + var old_content = fi.content; + var raw1 = decompress_iwa_file(old_content); + var x2 = parse_iwa_file(raw1); + x2.forEach(function(packet2) { + indices.push(packet2.id); + dependents[packet2.id] = { deps: [], location: fp, type: varint_to_i32(packet2.messages[0].meta[1][0].data) }; + }); + }); + indices.sort(function(x2, y2) { + return x2 - y2; + }); + var indices_varint = indices.filter(function(x2) { + return x2 > 1; + }).map(function(x2) { + return [x2, write_varint49(x2)]; + }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (!fi.name.match(/\.iwa/)) + return; + var x2 = parse_iwa_file(decompress_iwa_file(fi.content)); + x2.forEach(function(ia) { + ia.messages.forEach(function(m) { + 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); + } + }); + }); + }); + }); + function get_unique_msgid() { + for (var i = 927262; i < 2e6; ++i) + if (!dependents[i]) + return i; + throw new Error("Too many messages"); + } + var entry = CFB.find(cfb, dependents[1].location); + var x = parse_iwa_file(decompress_iwa_file(entry.content)); + var docroot; + for (var xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if (packet.id == 1) + docroot = packet; + } + var sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[1][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + var pb = parse_shallow(docroot.messages[0].data); + { + pb[6][0].data = write_varint49(range.e.r + 1); + pb[7][0].data = write_varint49(range.e.c + 1); + var cruidsref = parse_TSP_Reference(pb[46][0].data); + var oldbucket = CFB.find(cfb, dependents[cruidsref].location); + var _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + for (var j = 0; j < _x.length; ++j) { + if (_x[j].id == cruidsref) + break; + } + if (_x[j].id != cruidsref) + throw "Bad ColumnRowUIDMapArchive"; + var cruids = parse_shallow(_x[j].messages[0].data); + cruids[1] = []; + cruids[2] = [], cruids[3] = []; + for (var C = 0; C <= range.e.c; ++C) { + var uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(C + 420690) }]; + cruids[1].push({ type: 2, data: write_shallow(uuid) }); + cruids[2].push({ type: 0, data: write_varint49(C) }); + cruids[3].push({ type: 0, data: write_varint49(C) }); + } + cruids[4] = []; + cruids[5] = [], cruids[6] = []; + for (var R = 0; R <= range.e.r; ++R) { + uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(R + 726270) }]; + cruids[4].push({ type: 2, data: write_shallow(uuid) }); + cruids[5].push({ type: 0, data: write_varint49(R) }); + cruids[6].push({ type: 0, data: write_varint49(R) }); + } + _x[j].messages[0].data = write_shallow(cruids); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + delete pb[46]; + var store = parse_shallow(pb[4][0].data); + { + store[7][0].data = write_varint49(range.e.r + 1); + var row_headers = parse_shallow(store[1][0].data); + var row_header_ref = parse_TSP_Reference(row_headers[2][0].data); + oldbucket = CFB.find(cfb, dependents[row_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != row_header_ref) + throw "Bad HeaderStorageBucket"; + var base_bucket = parse_shallow(_x[0].messages[0].data); + for (R = 0; R < data.length; ++R) { + var _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(R); + _bucket[4][0].data = write_varint49(data[R].length); + base_bucket[2][R] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var col_header_ref = parse_TSP_Reference(store[2][0].data); + oldbucket = CFB.find(cfb, dependents[col_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != col_header_ref) + throw "Bad HeaderStorageBucket"; + base_bucket = parse_shallow(_x[0].messages[0].data); + for (C = 0; C <= range.e.c; ++C) { + _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(C); + _bucket[4][0].data = write_varint49(range.e.r + 1); + base_bucket[2][C] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var sstref = parse_TSP_Reference(store[4][0].data); + (function() { + var sentry = CFB.find(cfb, dependents[sstref].location); + var sx = parse_iwa_file(decompress_iwa_file(sentry.content)); + var sstroot; + for (var sxi = 0; sxi < sx.length; ++sxi) { + var packet2 = sx[sxi]; + if (packet2.id == sstref) + sstroot = packet2; + } + var sstdata = parse_shallow(sstroot.messages[0].data); + { + sstdata[3] = []; + var newsst = []; + SST.forEach(function(str, i) { + newsst[1] = [{ type: 0, data: write_varint49(i) }]; + newsst[2] = [{ type: 0, data: write_varint49(1) }]; + newsst[3] = [{ type: 2, data: stru8(str) }]; + sstdata[3].push({ type: 2, data: write_shallow(newsst) }); + }); + } + sstroot.messages[0].data = write_shallow(sstdata); + var sy = write_iwa_file(sx); + var raw32 = compress_iwa_file(sy); + sentry.content = raw32; + sentry.size = sentry.content.length; + })(); + var tile = parse_shallow(store[3][0].data); + { + var t = tile[1][0]; + delete tile[2]; + var tl = parse_shallow(t.data); + { + var tileref = parse_TSP_Reference(tl[2][0].data); + (function() { + var tentry = CFB.find(cfb, dependents[tileref].location); + var tx = parse_iwa_file(decompress_iwa_file(tentry.content)); + var tileroot; + for (var sxi = 0; sxi < tx.length; ++sxi) { + var packet2 = tx[sxi]; + if (packet2.id == tileref) + tileroot = packet2; + } + var tiledata = parse_shallow(tileroot.messages[0].data); + { + delete tiledata[6]; + delete tile[7]; + var rowload = new Uint8Array(tiledata[5][0].data); + tiledata[5] = []; + var cnt = 0; + for (var R2 = 0; R2 <= range.e.r; ++R2) { + var tilerow = parse_shallow(rowload); + cnt += write_tile_row(tilerow, data[R2], SST); + tilerow[1][0].data = write_varint49(R2); + tiledata[5].push({ data: write_shallow(tilerow), type: 2 }); + } + tiledata[1] = [{ type: 0, data: write_varint49(range.e.c + 1) }]; + tiledata[2] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + tiledata[3] = [{ type: 0, data: write_varint49(cnt) }]; + tiledata[4] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + } + tileroot.messages[0].data = write_shallow(tiledata); + var ty = write_iwa_file(tx); + var raw32 = compress_iwa_file(ty); + tentry.content = raw32; + tentry.size = tentry.content.length; + })(); + } + t.data = write_shallow(tl); + } + store[3][0].data = write_shallow(tile); + } + pb[4][0].data = write_shallow(store); + } + docroot.messages[0].data = write_shallow(pb); + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + entry.content = raw3; + entry.size = entry.content.length; + return cfb; } diff --git a/bits/86_writezip.js b/bits/86_writezip.js index fff829d..e1ff88c 100644 --- a/bits/86_writezip.js +++ b/bits/86_writezip.js @@ -1,5 +1,6 @@ function write_zip(wb/*:Workbook*/, opts/*:WriteOpts*/)/*:ZIP*/ { if(opts.bookType == "ods") return write_ods(wb, opts); + if(opts.bookType == "numbers") return write_numbers_iwa(wb, opts); if(opts.bookType == "xlsb") return write_zip_xlsxb(wb, opts); return write_zip_xlsx(wb, opts); } diff --git a/bits/88_write.js b/bits/88_write.js index 9409b8e..d2ae266 100644 --- a/bits/88_write.js +++ b/bits/88_write.js @@ -149,6 +149,7 @@ function writeSync(wb/*:Workbook*/, opts/*:?WriteOpts*/) { case 'xlsm': case 'xlam': case 'xlsb': + case 'numbers': case 'ods': return write_zip_type(wb, o); default: throw new Error ("Unrecognized bookType |" + o.bookType + "|"); } diff --git a/dist/xlsx.core.min.js b/dist/xlsx.core.min.js index 1f10aeb..f452d44 100644 --- a/dist/xlsx.core.min.js +++ b/dist/xlsx.core.min.js @@ -1,15 +1,15 @@ /*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */ -var XLSX={};function make_xlsx_lib(e){e.version="0.18.4";var r=1200,t=1252;var a;if(typeof cptable!=="undefined")a=cptable;else if(typeof module!=="undefined"&&typeof require!=="undefined"){a=undefined}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 c=function(e){r=e;s(e)};function l(){c(1200);f()}function o(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 Tg(e){return String.fromCharCode(e)};var p=function Eg(e){return String.fromCharCode(e)};if(typeof a!=="undefined"){c=function(e){r=e;s(e)};d=function(e){if(e.charCodeAt(0)===255&&e.charCodeAt(1)===254){return a.utils.decode(1200,o(e.slice(2)))}return e};v=function Sg(e){if(r===1200)return String.fromCharCode(e);return a.utils.decode(r,[e&255,e>>8])[0]};p=function yg(e){return a.utils.decode(t,[e])[0]}}var m=null;var b=true;var g=function(){var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return{encode:function(r){var t="";var a=0,n=0,i=0,s=0,f=0,c=0,l=0;for(var o=0;o>2;n=r.charCodeAt(o++);f=(a&3)<<4|n>>4;i=r.charCodeAt(o++);c=(n&15)<<2|i>>6;l=i&63;if(isNaN(n)){c=l=64}else if(isNaN(i)){l=64}t+=e.charAt(s)+e.charAt(f)+e.charAt(c)+e.charAt(l)}return t},decode:function(r){var t="";var a=0,n=0,i=0,s=0,f=0,c=0,l=0;r=r.replace(/[^\w\+\/\=]/g,"");for(var o=0;o>4;t+=String.fromCharCode(a);c=e.indexOf(r.charAt(o++));n=(f&15)<<4|c>>2;if(c!==64){t+=String.fromCharCode(n)}l=e.indexOf(r.charAt(o++));i=(c&3)<<6|l;if(l!==64){t+=String.fromCharCode(i)}}return t}}}();var w=typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node;var k=function(){};if(typeof Buffer!=="undefined"){var T=!Buffer.from;if(!T)try{Buffer.from("foo","utf8")}catch(E){T=true}k=T?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer);if(!Buffer.alloc)Buffer.alloc=function(e){return new Buffer(e)};if(!Buffer.allocUnsafe)Buffer.allocUnsafe=function(e){return new Buffer(e)}}function S(e){return w?Buffer.alloc(e):typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function y(e){return w?Buffer.allocUnsafe(e):typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var _=function _g(e){if(w)return k(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function x(e){if(typeof ArrayBuffer==="undefined")return _(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 A(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 I(r)}var I=function(e){if(typeof Uint8Array!=="undefined"){var r=0,t=0;for(r=0;r=0)r+=e.charAt(t--);return r}function t(e,r){var t="";while(t.length=r?a:t("0",r-a.length)+a}function n(e,r){var a=""+e;return a.length>=r?a:t(" ",r-a.length)+a}function i(e,r){var a=""+e;return a.length>=r?a:a+t(" ",r-a.length)}function s(e,r){var a=""+Math.round(e);return a.length>=r?a:t("0",r-a.length)+a}function f(e,r){var a=""+e;return a.length>=r?a:t("0",r-a.length)+a}var c=Math.pow(2,32);function l(e,r){if(e>c||e<-c)return s(e,r);var t=Math.round(e);return f(t,r)}function o(e,r){r=r||0;return e.length>=7+r&&(e.charCodeAt(r)|32)===103&&(e.charCodeAt(r+1)|32)===101&&(e.charCodeAt(r+2)|32)===110&&(e.charCodeAt(r+3)|32)===101&&(e.charCodeAt(r+4)|32)===114&&(e.charCodeAt(r+5)|32)===97&&(e.charCodeAt(r+6)|32)===108}var u=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var h=[["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 d(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"秒 "'}var v={};d(v);var p=[];var m=0;for(m=5;m<=8;++m)p[m]=32+m;for(m=23;m<=26;++m)p[m]=0;for(m=27;m<=31;++m)p[m]=14;for(m=50;m<=58;++m)p[m]=14;for(m=59;m<=62;++m)p[m]=m-58;for(m=67;m<=68;++m)p[m]=m-58;for(m=72;m<=75;++m)p[m]=m-58;for(m=67;m<=68;++m)p[m]=m-57;for(m=76;m<=78;++m)p[m]=m-56;for(m=79;m<=81;++m)p[m]=m-34;var b={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 g(e,r,t){var a=e<0?-1:1;var n=e*a;var i=0,s=1,f=0;var c=1,l=0,o=0;var u=Math.floor(n);while(lr){if(l>r){o=c;f=i}else{o=l;f=s}}if(!t)return[0,a*f,o];var h=Math.floor(a*f/o);return[h,a*f-h*o,o]}function w(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 c=new Date(1900,0,1);c.setDate(c.getDate()+a-1);s=[c.getFullYear(),c.getMonth()+1,c.getDate()];i=c.getDay();if(a<60)i=(i+6)%7;if(t)i=A(c,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}e.parse_date_code=w;var k=new Date(1899,11,31,0,0,0);var T=k.getTime();var E=new Date(1900,2,1,0,0,0);function S(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=E)t+=24*60*60*1e3;return(t-(T+(e.getTimezoneOffset()-k.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function y(e){return e.toString(10)}e._general_int=y;var _=function H(){var e=/(?:\.0*|(\.\d*[1-9])0+)$/;function r(r){return r.indexOf(".")==-1?r:r.replace(e,"$1")}var t=/(?:\.0*|(\.\d*[1-9])0+)[Ee]/;var a=/(E[+-])(\d)$/;function n(e){if(e.indexOf("E")==-1)return e;return e.replace(t,"$1E").replace(a,"$10$2")}function i(e){var t=e<0?12:11;var a=r(e.toFixed(12));if(a.length<=t)return a;a=e.toPrecision(10);if(a.length<=t)return a;return e.toExponential(5)}function s(e){var t=r(e.toFixed(11));return t.length>(e<0?12:11)||t==="0"||t==="-0"?e.toPrecision(6):t}function f(e){var t=Math.floor(Math.log(Math.abs(e))*Math.LOG10E),a;if(t>=-4&&t<=-1)a=e.toPrecision(10+t);else if(Math.abs(t)<=9)a=i(e);else if(t===10)a=e.toFixed(10).substr(0,12);else a=s(e);return r(n(a.toUpperCase()))}return f}();e._general_num=_;function x(e,r){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):_(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return B(14,S(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}e._general=x;function A(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function C(e,r,t,n){var i="",s=0,f=0,c=t.y,l,o=0;switch(e){case 98:c=t.y+543;case 121:switch(r.length){case 1:;case 2:l=c%100;o=2;break;default:l=c%1e4;o=4;break;}break;case 109:switch(r.length){case 1:;case 2:l=t.m;o=r.length;break;case 3:return h[t.m-1][1];case 5:return h[t.m-1][0];default:return h[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:l=t.d;o=r.length;break;case 3:return u[t.q][0];default:return u[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 a(t.S,r.length);if(n>=2)f=n===3?1e3:100;else f=n===1?10:1;s=Math.round(f*(t.S+t.u));if(s>=60*f)s=0;if(r==="s")return s===0?"0":""+s/f;i=a(s,2+n);if(r==="ss")return i.substr(0,2);return"."+i.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=c;o=1;break;}var d=o>0?a(l,o):"";return d}function R(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 O=function z(){var e=/%/g;function s(r,a,n){var i=a.replace(e,""),s=a.length-i.length;return O(r,i,n*Math.pow(10,2*s))+t("%",s)}function f(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return O(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function c(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"-"+c(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 o=/# (\?+)( ?)\/( ?)(\d+)/;function u(e,r,i){var s=parseInt(e[4],10),f=Math.round(r*s),c=Math.floor(f/s);var l=f-c*s,o=s;return i+(c===0?"":""+c)+" "+(l===0?t(" ",e[1].length+1+e[4].length):n(l,e[1].length)+e[2]+"/"+e[3]+a(o,e[4].length))}function h(e,r,a){return a+(r===0?"":""+r)+t(" ",e[1].length+2+e[4].length)}var d=/^#*0*\.([0#]+)/;var v=/\).*[0#]/;var p=/\(###\) ###\\?-####/;function m(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 b(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function w(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 k(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function T(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function E(e,h,S){if(e.charCodeAt(0)===40&&!h.match(v)){var y=h.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(S>=0)return E("n",y,S);return"("+E("n",y,-S)+")"}if(h.charCodeAt(h.length-1)===44)return f(e,h,S);if(h.indexOf("%")!==-1)return s(e,h,S);if(h.indexOf("E")!==-1)return c(h,S);if(h.charCodeAt(0)===36)return"$"+E(e,h.substr(h.charAt(1)==" "?2:1),S);var _;var x,A,C,I=Math.abs(S),N=S<0?"-":"";if(h.match(/^00+$/))return N+l(I,h.length);if(h.match(/^[#?]+$/)){_=l(S,0);if(_==="0")_="";return _.length>h.length?_:m(h.substr(0,h.length-_.length))+_}if(x=h.match(o))return u(x,I,N);if(h.match(/^#+0+$/))return N+l(I,h.length-h.indexOf("0"));if(x=h.match(d)){_=b(S,x[1].length).replace(/^([^\.]+)$/,"$1."+m(x[1])).replace(/\.$/,"."+m(x[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+t("0",m(x[1]).length-r.length)});return h.indexOf("0.")!==-1?_:_.replace(/^0\./,".")}h=h.replace(/^#+([0.])/,"$1");if(x=h.match(/^(0*)\.(#*)$/)){return N+b(I,x[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,x[1].length?"0.":".")}if(x=h.match(/^#{1,3},##0(\.?)$/))return N+R(l(I,0));if(x=h.match(/^#,##0\.([#0]*0)$/)){return S<0?"-"+E(e,h,-S):R(""+(Math.floor(S)+k(S,x[1].length)))+"."+a(w(S,x[1].length),x[1].length)}if(x=h.match(/^#,#*,#0/))return E(e,h.replace(/^#,#*,/,""),S);if(x=h.match(/^([0#]+)(\\?-([0#]+))+$/)){_=r(E(e,h.replace(/[\\-]/g,""),S));A=0;return r(r(h.replace(/\\/g,"")).replace(/[0#]/g,function(e){return A<_.length?_.charAt(A++):e==="0"?"0":""}))}if(h.match(p)){_=E(e,"##########",S);return"("+_.substr(0,3)+") "+_.substr(3,3)+"-"+_.substr(6)}var F="";if(x=h.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/)){A=Math.min(x[4].length,7);C=g(I,Math.pow(10,A)-1,false);_=""+N;F=O("n",x[1],C[1]);if(F.charAt(F.length-1)==" ")F=F.substr(0,F.length-1)+"0";_+=F+x[2]+"/"+x[3];F=i(C[2],A);if(F.length=0)return x("n",c,f);return"("+x("n",c,-f)+")"}if(s.charCodeAt(s.length-1)===44)return S(e,s,f);if(s.indexOf("%")!==-1)return y(e,s,f);if(s.indexOf("E")!==-1)return _(s,f);if(s.charCodeAt(0)===36)return"$"+x(e,s.substr(s.charAt(1)==" "?2:1),f);var l;var u,b,w,k=Math.abs(f),T=f<0?"-":"";if(s.match(/^00+$/))return T+a(k,s.length);if(s.match(/^[#?]+$/)){l=""+f;if(f===0)l="";return l.length>s.length?l:m(s.substr(0,s.length-l.length))+l}if(u=s.match(o))return h(u,k,T);if(s.match(/^#+0+$/))return T+a(k,s.length-s.indexOf("0"));if(u=s.match(d)){l=(""+f).replace(/^([^\.]+)$/,"$1."+m(u[1])).replace(/\.$/,"."+m(u[1]));l=l.replace(/\.(\d*)$/,function(e,r){return"."+r+t("0",m(u[1]).length-r.length)});return s.indexOf("0.")!==-1?l:l.replace(/^0\./,".")}s=s.replace(/^#+([0.])/,"$1");if(u=s.match(/^(0*)\.(#*)$/)){return T+(""+k).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,u[1].length?"0.":".")}if(u=s.match(/^#{1,3},##0(\.?)$/))return T+R(""+k);if(u=s.match(/^#,##0\.([#0]*0)$/)){return f<0?"-"+x(e,s,-f):R(""+f)+"."+t("0",u[1].length)}if(u=s.match(/^#,#*,#0/))return x(e,s.replace(/^#,#*,/,""),f);if(u=s.match(/^([0#]+)(\\?-([0#]+))+$/)){l=r(x(e,s.replace(/[\\-]/g,""),f));b=0;return r(r(s.replace(/\\/g,"")).replace(/[0#]/g,function(e){return b-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}e.is_date=F;function D(e,r,t,a){var n=[],i="",s=0,f="",c="t",l,u,h;var d="H";while(s=12?"P":"A";m.t="T";d="h";s+=3}else if(e.substr(s,5).toUpperCase()==="AM/PM"){if(l!=null)m.v=l.H>=12?"PM":"AM";m.t="T";s+=5;d="h"}else if(e.substr(s,5).toUpperCase()==="上午/下午"){if(l!=null)m.v=l.H>=12?"下午":"上午";m.t="T";s+=5;d="h"}else{m.t="t";++s}if(l==null&&m.t==="T")return"";n[n.length]=m;c=f;break;case"[":i=f;while(e.charAt(s++)!=="]"&&s-1){i=(i.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!F(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};c=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 b=0,g=0,k;for(s=n.length-1,c="t";s>=0;--s){switch(n[s].t){case"h":;case"H":n[s].t=d;c="h";if(b<1)b=1;break;case"s":if(k=n[s].v.match(/\.0+$/))g=Math.max(g,k[0].length-1);if(b<3)b=3;case"d":;case"y":;case"M":;case"e":c=n[s].t;break;case"m":if(c==="s"){n[s].t="M";if(b<2)b=2}break;case"X":break;case"Z":if(b<1&&n[s].v.match(/[Hh]/))b=1;if(b<2&&n[s].v.match(/[Mm]/))b=2;if(b<3&&n[s].v.match(/[Ss]/))b=3;}}switch(b){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 T="",E;for(s=0;s0){if(T.charCodeAt(0)==40){y=r<0&&T.charCodeAt(0)===45?-r:r;_=O("n",T,y)}else{y=r<0&&a>1?-r:r;_=O("n",T,y);if(y<0&&n[0]&&n[0].t=="t"){_=_.substr(1);n[0].v="-"+n[0].v}}E=_.length-1;var A=n.length;for(s=0;s-1){A=s;break}var R=n.length;if(A===n.length&&_.indexOf("E")===-1){for(s=n.length-1;s>=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;if(E>=n[s].v.length-1){E-=n[s].v.length;n[s].v=_.substr(E+1,n[s].v.length)}else if(E<0)n[s].v="";else{n[s].v=_.substr(0,E+1);E=-1}n[s].t="t";R=s}if(E>=0&&R=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;u=n[s].v.indexOf(".")>-1&&s===A?n[s].v.indexOf(".")-1:n[s].v.length-1;S=n[s].v.substr(u+1);for(;u>=0;--u){if(E>=0&&(n[s].v.charAt(u)==="0"||n[s].v.charAt(u)==="#"))S=_.charAt(E--)+S}n[s].v=S;n[s].t="t";R=s}if(E>=0&&R-1&&s===A?n[s].v.indexOf(".")+1:0;S=n[s].v.substr(0,u);for(;u-1){y=a>1&&r<0&&s>0&&n[s-1].v==="-"?-r:r;n[s].v=O(n[s].t,n[s].v,y);n[s].t="t"}var I="";for(s=0;s!==n.length;++s)if(n[s]!=null)I+=n[s].v;return I}e._eval=D;var P=/\[[=<>]/;var L=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function M(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 U(e,r){var t=I(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(P)!=null||t[1].match(P)!=null){var s=t[0].match(L);var f=t[1].match(L);return M(r,s)?[a,t[0]]:M(r,f)?[a,t[1]]:[a,t[s!=null&&f!=null?2:1]]}return[a,i]}function B(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:v)[e];if(a==null)a=t.table&&t.table[p[e]]||v[p[e]];if(a==null)a=b[e]||"General";break;}if(o(a,0))return x(r,t);if(r instanceof Date)r=S(r,t.date1904);var n=U(a,r);if(o(n[1]))return x(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return D(n[1],r,t,n[0])}function W(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(v[t]==undefined){if(r<0)r=t;continue}if(v[t]==e){r=t;break}}if(r<0)r=391}v[r]=e;return r}e.load=W;e._table=v;e.get_table=function V(){return v};e.load_table=function G(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)W(e[r],r)};e.init_table=d;e.format=B}P(D);var L={"General Number":"General","General Date":D._table[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":D._table[15],"Short Date":D._table[14],"Long Time":D._table[19],"Medium Time":D._table[18],"Short Time":D._table[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:D._table[2],Standard:D._table[4],Percent:D._table[10],Scientific:D._table[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var M={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 U=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function B(e){var r=typeof e=="number"?D._table[e]:e;r=r.replace(U,"(\\d+)");return new RegExp("^"+r+"$")}function W(e,r,t){var a=-1,n=-1,i=-1,s=-1,f=-1,c=-1;(r.match(U)||[]).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":c=l;break;case"m":if(s>=0)f=l;else n=l;break;}});if(c>=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 o=("00"+(s>=0?s:0)).slice(-2)+":"+("00"+(f>=0?f:0)).slice(-2)+":"+("00"+(c>=0?c:0)).slice(-2);if(s==-1&&f==-1&&c==-1)return l;if(a==-1&&n==-1&&i==-1)return o;return l+"T"+o}var H=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],c=n[3],l=n[4];var o=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++]]^o[e[k++]]^l[e[k++]]^c[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 z=function xg(){var e={};e.version="1.2.1";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){et(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;}e.l=i;r[a]=s}return r}var f;function c(){return f||(f=undefined)}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 He(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 c=0;var l=[];var v=e.slice(0,512);et(v,0);var m=o(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);et(v,28)}var g=e.slice(0,a);u(v,t);var w=v._R(4,"i");if(t===3&&w!==0)throw new Error("# Directory Sectors: Expected 0 saw "+w);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");c=v._R(4,"i");i=v._R(4,"i");for(var k=-1,E=0;E<109;++E){k=v._R(4,"i");if(k<0)break;l[E]=k}var S=h(e,a);p(c,i,S,a,l);var y=b(S,s,l,a);y[s].name="!Directory";if(n>0&&f!==M)y[f].name="!MiniFAT";y[l[0]].name="!FAT";y.fat_addrs=l;y.ssz=a;var _={},x=[],A=[],C=[];T(s,y,S,x,n,_,A,f);d(A,C,x);x.shift();var R={FileIndex:A,FullPaths:C};if(r&&r.raw)R.raw={header:g,sectors:S};return R}function o(e){if(e[e.l]==80&&e[e.l+1]==75)return[0,0];e.chk(U,"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*L,s*L+L));n-=L;s=Xr(t,s*4)}if(i.length===0)return tt(0);return I(i).slice(0,e.size)}function p(e,r,t,a,n){var i=M;if(e===M){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 c=0;c=0;){n[c]=true;i[i.length]=c;s.push(e[c]);var o=t[Math.floor(c*4/a)];l=c*4&f;if(a<4+l)throw new Error("FAT boundary crossed: "+c+" 4 "+a);if(!e[o])break;c=Xr(e[o],l)}return{nodes:i,data:kr([s])}}function b(e,r,t,a){var n=e.length,i=[];var s=[],f=[],c=[];var l=a-1,o=0,u=0,h=0,d=0;for(o=0;o=n)h-=n;if(s[h])continue;c=[];var v=[];for(u=h;u>=0;){v[u]=true;s[u]=true;f[f.length]=u;c.push(e[u]);var p=t[Math.floor(u*4/a)];d=u*4&l;if(a<4+d)throw new Error("FAT boundary crossed: "+u+" 4 "+a);if(!e[p])break;u=Xr(e[p],d);if(v[u])break}i[h]={nodes:f,data:kr([c])}}return i}function T(e,r,t,a,n,i,s,f){var c=0,l=a.length?2:0;var o=r[e].data;var u=0,h=0,d;for(;u0&&c!==M)r[c].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(c!==M&&b.start!==M&&r[c]){b.content=v(b,r[c].data,(r[f]||{}).data)}}if(b.content)et(b.content,0);i[d]=b;s.push(b)}}function E(e,r){return new Date((jr(e,r+4)/1e7*Math.pow(2,32)+jr(e,r)/1e7-11644473600)*1e3)}function x(e,r){c();return l(f.readFileSync(e),r)}function A(e,r){var t=r&&r.type;if(!t){if(w&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return x(e,r);case"base64":return l(_(g.decode(e)),r);case"binary":return l(_(e),r);}return l(e,r)}function C(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(z.find(e,"/"+r))return;var t=tt(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){C(e);var i=false,s=false;for(var f=e.FullPaths.length-1;f>=0;--f){var c=e.FileIndex[f];switch(c.type){case 0:if(s)i=true;else{e.FileIndex.pop();e.FullPaths.pop()}break;case 1:;case 2:;case 5:s=true;if(isNaN(c.R*c.L*c.C))i=true;if(c.R>-1&&c.L>-1&&c.R==c.L)i=true;break;default:i=true;break;}}if(!i&&!n)return;var l=new Date(1987,1,19),o=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(o=f+1;o=h.length?-1:o;for(o=f+1;o=h.length?-1:o;v.type=1}else{if(t(e.FullPaths[f+1]||"")==t(p))v.R=f+1;v.type=2}}}function D(e,r){var t=r||{};if(t.fileType=="mad")return ze(e,t);O(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 c=r+127>>7;var l=f+t+s+c;var o=l+127>>7;var u=o<=109?0:Math.ceil((o-109)/127);while(l+o+u+127>>7>o)u=++o<=109?0:Math.ceil((o-109)/127);var h=[1,u,o,c,s,t,r,0];e.FileIndex[0].size=r<<6;h[7]=(e.FileIndex[0].start=h[0]+h[1]+h[2]+h[3]+h[4]+h[5])+(h[6]+7>>3);return h}(e);var n=tt(a[7]<<9);var i=0,s=0;{for(i=0;i<8;++i)n._W(1,B[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:M);n._W(4,a[3]);n._W(-4,a[1]?a[0]-1:M);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,V.ENDOFCHAIN);s=i=0;for(c=0;c=4096)continue;o.start=s;f(l+63>>6)}while(n.l&511)n._W(-4,V.ENDOFCHAIN);for(i=0;i=4096){n.l=o.start+1<<9;if(w&&Buffer.isBuffer(o.content)){o.content.copy(n,n.l,0,o.size);n.l+=o.size+511&-512}else{for(c=0;c0&&o.size<4096){if(w&&Buffer.isBuffer(o.content)){o.content.copy(n,n.l,0,o.size);n.l+=o.size+63&-64}else{for(c=0;c>16|r>>8|r)&255}var re=typeof Uint8Array!=="undefined";var te=re?new Uint8Array(1<<8):[];for(var ae=0;ae<1<<8;++ae)te[ae]=ee(ae);function ne(e,r){var t=te[e&255];if(r<=8)return t>>>8-r;t=t<<8|te[e>>8&255];if(r<=16)return t>>>16-r;t=t<<8|te[e>>16&255];return t>>>24-r}function ie(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 fe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=4?0:e[a+1]<<8))>>>t&15}function ce(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 ue(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 ve(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(w){var i=y(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=re?new Uint16Array(32768):[];while(i0)t[t.l++]=r[i++];n=t.l*8;continue}n=ue(t,n,+!!(i+f==r.length)+2);var c=0;while(f-- >0){var l=r[i];c=(c<<5^l)&32767;var o=-1,u=0;if(o=s[c]){o|=i&~32767;if(o>i)o-=32768;if(o2){l=a[u];if(l<=22)n=de(t,n,te[l+1]>>1)-1;else{de(t,n,3);n+=5;de(t,n,te[l-23]>>5);n+=3}var h=l<8?0:l-4>>2;if(h>0){ve(t,n,u-Z[l]);n+=h}l=e[i-o];n=de(t,n,te[l]>>3);n-=3;var d=l<4?0:l-2>>1;if(d>0){ve(t,n,i-o-Q[l]);n+=d}for(var v=0;v>8-v;for(var p=(1<<7-v)-1;p>=0;--p)_e[d|p<>>=3){case 16:i=3+ie(e,r);r+=2;d=m[m.length-1];while(i-- >0)m.push(d);break;case 17:i=3+se(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(c>>0;var f=0,c=0;while((a&1)==0){a=se(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;c=5}else{t=Ce(e,t);f=xe;c=Ae}for(;;){if(!r&&s>>1==1?ge[o]:Se[o];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+Z[u];if(h>0){d+=oe(e,t,h);t+=h}o=oe(e,t,c);u=a>>>1==1?we[o]:ye[o];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=Re(t,r);e.l+=a[1];return a[0]}function Ie(e,r){if(e){if(typeof console!=="undefined")console.error(r)}else throw new Error(r)}function Ne(e,r){var t=e;et(t,0);var a=[],n=[];var i={FileIndex:a,FullPaths:n};C(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 c=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 c=[],l=[];var o={FileIndex:c,FullPaths:l};C(o);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: "+Le(f,s));n.push("");n.push(p?Ue(o):Me(o))}n.push(a+"--\r\n");return n.join("\r\n")}function Ve(e){var r={};C(r,e);return r}function Ge(e,r,t,n){var i=n&&n.unsafe;if(!i)C(e);var s=!i&&z.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)z.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 je(e,r){C(e);var t=z.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 se=new Date("2017-02-19T19:06:09.000Z");if(isNaN(se.getFullYear()))se=new Date("2/19/17");var fe=se.getFullYear()==2017;function ce(e,r){var t=new Date(e);if(fe){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(se.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 le(e,r){if(w&&Buffer.isBuffer(e)){if(r){if(e[0]==255&&e[1]==254)return e.slice(2).toString("utf16le");if(e[1]==254&&e[2]==255)return h(e.slice(2).toString("binary"))}return e.toString("binary")}var t=[];for(var a=0;a!=e.length;++a)t.push(String.fromCharCode(e[a]));return t.join("")}function oe(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]=oe(e[t]);return r}function ue(e,r){var t="";while(t.length3&&de.indexOf(s)==-1)return t}else if(s.match(/[a-z]/))return t;if(a<0||a>8099)return t;if((n>0||i>1)&&a!=101)return r;if(e.match(/[^-0-9:,\/\\]/))return t;return r}var pe="abacaba".split(/(:?b)/i).length==5;function me(e,r,t){if(pe||typeof r=="string")return e.split(r);var a=e.split(r),n=[a[0]];for(var i=1;i\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g;var Ne=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm;if(!Oe.match(Ne))Ne=/<[^>]*>/g;var Fe=/<\w*:/,De=/<(\/?)\w+:/;function Pe(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(Ie),f=0,c="",l=0,o="",u="",h=1;if(s)for(l=0;l!=s.length;++l){u=s[l];for(i=0;i!=u.length;++i)if(u.charCodeAt(i)===61)break;o=u.slice(0,i).trim();while(u.charCodeAt(i+1)==32)++i;h=(n=u.charCodeAt(i+1))==34||n==39?1:0;c=u.slice(i+1+h,u.length-h);for(f=0;f!=o.length;++f)if(o.charCodeAt(f)===58)break;if(f===o.length){if(o.indexOf("_")>0)o=o.slice(0,o.indexOf("_"));a[o]=c;if(!t)a[o.toLowerCase()]=c}else{var d=(f===5&&o.slice(0,5)==="xmlns"?"xmlns":"")+o.slice(f+1);if(a[d]&&o.slice(f-3,f)=="ext")continue;a[d]=c;if(!t)a[d.toLowerCase()]=c}}return a}function Le(e){return e.replace(De,"<$1")}var Me={""":'"',"'":"'",">":">","<":"<","&":"&"};var Ue=J(Me);var Be=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;return 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))}}();var We=/[&<>'"]/g,He=/[\u0000-\u0008\u000b-\u001f]/g;function ze(e){var r=e+"";return r.replace(We,function(e){return Ue[e]}).replace(He,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function Ve(e){return ze(e).replace(/ /g,"_x0020_")}var Ge=/[\u0000-\u001f]/g;function je(e){var r=e+"";return r.replace(We,function(e){return Ue[e]}).replace(/\n/g,"
").replace(Ge,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function Xe(e){var r=e+"";return r.replace(We,function(e){return Ue[e]}).replace(Ge,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var $e=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 Ye(e){return e.replace(/(\r\n|[\r\n])/g," ")}function Ke(e){switch(e){case 1:;case true:;case"1":;case"true":;case"TRUE":return true;default:return false;}}var Je=function Ag(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};var qe=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("")};if(w){var Ze=function Cg(e){var r=Buffer.alloc(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")};var Qe="foo bar baz☃🍣";if(Je(Qe)==Ze(Qe))Je=Ze;var er=function Rg(e){return k(e,"binary").toString("utf8")};if(Je(Qe)==er(Qe))Je=er;qe=function(e){return k(e,"utf8").toString("binary")}}var rr=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 tr=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 nr=/<\/?(?:vt:)?variant>/g,ir=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function lr(e){return Y(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function or(e,r,t){return"<"+e+(t!=null?lr(t):"")+(r!=null?(r.match(fr)?' xml:space="preserve"':"")+">"+r+""}function ur(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function hr(e,r){switch(typeof e){case"string":var t=or("vt:lpwstr",ze(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return or((e|0)==e?"vt:i4":"vt:r8",ze(String(e)));case"boolean":return or("vt:bool",e?"true":"false");}if(e instanceof Date)return or("vt:filetime",ur(e));throw new Error("Unable to serialize "+e)}function dr(e){if(w&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return Je(A(R(e)));throw new Error("Bad input format: expected Buffer or string")}var vr=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/][^>]*)?>/gm;var pr={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 mr=["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 br={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 gr(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 wr(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 kr=function(e){var r=[],t=10240;for(var a=0;a0?xr(e,r+4,r+4+t-1):""};var Rr=Cr;var Or=function(e,r){var t=jr(e,r);return t>0?xr(e,r+4,r+4+t-1):""};var Ir=Or;var Nr=function(e,r){var t=2*jr(e,r);return t>0?xr(e,r+4,r+4+t-1):""};var Fr=Nr;var Dr,Pr;Dr=Pr=function Og(e,r){var t=jr(e,r);return t>0?Er(e,r+4,r+4+t):""};var Lr=function(e,r){var t=jr(e,r);return t>0?xr(e,r+4,r+4+t):""};var Mr=Lr;var Ur,Br;Ur=Br=function(e,r){return gr(e,r)};var Wr=function Ig(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(w){Er=function(e,r,t){if(!Buffer.isBuffer(e))return Sr(e,r,t);return e.toString("utf16le",r,t).replace(N,"")};yr=function(e,r,t){return Buffer.isBuffer(e)?e.toString("hex",r,r+t):_r(e,r,t)};Cr=function Ng(e,r){if(!Buffer.isBuffer(e))return Rr(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Or=function Fg(e,r){if(!Buffer.isBuffer(e))return Ir(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Nr=function Dg(e,r){if(!Buffer.isBuffer(e))return Fr(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};Dr=function Pg(e,r){if(!Buffer.isBuffer(e))return Pr(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};Lr=function Lg(e,r){if(!Buffer.isBuffer(e))return Mr(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};xr=function Mg(e,r,t){return Buffer.isBuffer(e)?e.toString("utf8",r,t):Ar(e,r,t)};kr=function(e){return e[0].length>0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map(function(e){return Buffer.isBuffer(e)?e:k(e)})):Tr(e)};I=function(e){return Buffer.concat(e.map(function(e){return Buffer.isBuffer(e)?e:k(e)}))};Ur=function Ug(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return Br(e,r)};Wr=function Bg(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function Hr(){Er=function(e,r,t){return a.utils.decode(1200,e.slice(r,t)).replace(N,"")};xr=function(e,r,t){return a.utils.decode(65001,e.slice(r,t))};Cr=function(e,r){var n=jr(e,r);return n>0?a.utils.decode(t,e.slice(r+4,r+4+n-1)):""};Or=function(e,t){var n=jr(e,t);return n>0?a.utils.decode(r,e.slice(t+4,t+4+n-1)):""};Nr=function(e,r){var t=2*jr(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};Dr=function(e,r){var t=jr(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t)):""};Lr=function(e,r){var t=jr(e,r);return t>0?a.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof a!=="undefined")Hr();var zr=function(e,r){return e[r]};var Vr=function(e,r){return e[r+1]*(1<<8)+e[r]};var Gr=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var jr=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var Xr=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var $r=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function Yr(e,t){var n="",i,s,f=[],c,l,o,u;switch(t){case"dbcs":u=this.l;if(w&&Buffer.isBuffer(this))n=this.slice(this.l,this.l+2*e).toString("utf16le");else for(o=0;o0?Xr:$r)(this,this.l);this.l+=4;return i}else{s=jr(this,this.l);this.l+=4}return s;case 8:;case-8:if(t==="f"){if(e==8)s=Ur(this,this.l);else s=Ur([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=yr(this,this.l,e);break;};}this.l+=e;return n}var Kr=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 Jr=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 qr=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function Zr(e,r,n){var i=0,s=0;if(n==="dbcs"){for(s=0;s!=r.length;++s)qr(this,r.charCodeAt(s),this.l+2*s);i=2*r.length}else if(n==="sbcs"){if(typeof a!=="undefined"&&t==874){for(s=0;s!=r.length;++s){var f=a.utils.encode(t,r.charAt(s));this[this.l+s]=f[0]}}else{r=r.replace(/[^\x00-\x7F]/g,"_");for(s=0;s!=r.length;++s)this[this.l+s]=r.charCodeAt(s)&255}i=r.length}else if(n==="hex"){for(;s>8}while(this.l>>=8;this[this.l+1]=r&255;break;case 3:i=3;this[this.l]=r&255;r>>>=8;this[this.l+1]=r&255;r>>>=8;this[this.l+2]=r&255;break;case 4:i=4;Kr(this,r,this.l);break;case 8:i=8;if(n==="f"){wr(this,r,this.l);break};case 16:break;case-4:i=4;Jr(this,r,this.l);break;}this.l+=i;return this}function Qr(e,r){var t=yr(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function et(e,r){e.l=r;e._R=Yr;e.chk=Qr;e._W=Zr}function rt(e,r){e.l+=r}function tt(e){var r=S(e);et(r,0);return r}function at(e,r,t){if(!e)return;var a,n,i;et(e,e.l||0);var s=e.length,f=0,c=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 o(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&&Wr(t))e.push(t)}function st(e,r,t){var a=oe(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 ft(e,r,t){var a=oe(e);a.s=st(a.s,r.s,t);a.e=st(a.e,r.s,t);return a}function ct(e,r){if(e.cRel&&e.c<0){e=oe(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=oe(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=kt(e);if(!e.cRel&&e.cRel!=null)t=mt(t);if(!e.rRel&&e.rRel!=null)t=ht(t);return t}function lt(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?"":"$")+pt(e.s.c)+":"+(e.e.cRel?"":"$")+pt(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?"":"$")+ut(e.s.r)+":"+(e.e.rRel?"":"$")+ut(e.e.r)}}return ct(e.s,r.biff)+":"+ct(e.e,r.biff)}function ot(e){return parseInt(dt(e),10)-1}function ut(e){return""+(e+1)}function ht(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function dt(e){return e.replace(/\$(\d+)$/,"$1")}function vt(e){var r=bt(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function pt(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 mt(e){return e.replace(/^([A-Z])/,"$$$1")}function bt(e){return e.replace(/^\$([A-Z])/,"$1")}function gt(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function wt(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 kt(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 Tt(e){var r=e.indexOf(":");if(r==-1)return{s:wt(e),e:wt(e)};return{s:wt(e.slice(0,r)),e:wt(e.slice(r+1))}}function Et(e,r){if(typeof r==="undefined"||typeof r==="number"){return Et(e.s,e.e)}if(typeof e!=="string")e=kt(e);if(typeof r!=="string")r=kt(r);return e==r?e:e+":"+r}function St(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 yt(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=D.format(e.z,t?ee(r):r)}catch(a){}try{return e.w=D.format((e.XF||{}).numFmtId||(t?14:0),t?ee(r):r)}catch(a){return""+r}}function _t(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 Ia[e.v]||e.v;if(r==undefined)return yt(e,e.v);return yt(e,r)}function xt(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function At(e,r,t){var a=t||{};var n=e?Array.isArray(e):a.dense;if(m!=null&&n==null)n=m;var i=e||(n?[]:{});var s=0,f=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var c=typeof a.origin=="string"?wt(a.origin):a.origin;s=c.r;f=c.c}if(!i["!ref"])i["!ref"]="A1:A1"}var l={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(i["!ref"]){var o=St(i["!ref"]);l.s.c=o.s.c;l.s.r=o.s.r;l.e.c=Math.max(l.e.c,o.e.c);l.e.r=Math.max(l.e.r,o.e.r);if(s==-1)l.e.r=s=o.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(l.s.r>v)l.s.r=v;if(l.s.c>p)l.s.c=p;if(l.e.r0)r._W(0,e,"dbcs");return t?r.slice(0,r.l):r}function Ft(e){return{ich:e._R(2),ifnt:e._R(2)}}function Dt(e,r){if(!r)r=tt(4);r._W(2,e.ich||0);r._W(2,e.ifnt||0);return r}function Pt(e,r){var t=e.l;var a=e._R(1);var n=It(e);var i=[];var s={t:n,h:n};if((a&1)!==0){var f=e._R(4);for(var c=0;c!=f;++c)i.push(Ft(e));s.r=i}else s.r=[{ich:0,ifnt:0}];e.l=t+r;return s}function Lt(e,r){var t=false;if(r==null){t=true;r=tt(15+4*e.t.length)}r._W(1,0);Nt(e.t,r);return t?r.slice(0,r.l):r}var Mt=Pt;function Ut(e,r){var t=false;if(r==null){t=true;r=tt(23+4*e.t.length)}r._W(1,1);Nt(e.t,r);r._W(4,1);Dt({ich:0,ifnt:0},r);return t?r.slice(0,r.l):r}function Bt(e){var r=e._R(4);var t=e._R(2);t+=e._R(1)<<16;e.l++;return{c:r,iStyleRef:t}}function Wt(e,r){if(r==null)r=tt(8);r._W(-4,e.c);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}function Ht(e){var r=e._R(2);r+=e._R(1)<<16;e.l++;return{c:-1,iStyleRef:r}}function zt(e,r){if(r==null)r=tt(4);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}var Vt=It;var Gt=Nt;function jt(e){var r=e._R(4);return r===0||r===4294967295?"":e._R(r,"dbcs")}function Xt(e,r){var t=false;if(r==null){t=true;r=tt(127)}r._W(4,e.length>0?e.length:4294967295);if(e.length>0)r._W(0,e,"dbcs");return t?r.slice(0,r.l):r}var $t=It;var Yt=jt;var Kt=Xt;function Jt(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?Ur([0,0,0,0,r[0]&252,r[1],r[2],r[3]],0):Xr(r,0)>>2;return t?n/100:n}function qt(e,r){if(r==null)r=tt(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 Zt(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 Qt(e,r){if(!r)r=tt(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 ea=Zt;var ra=Qt;function ta(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e._R(8,"f")}function aa(e,r){return(r||tt(8))._W(8,e,"f")}function na(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 c=e._R(1);e.l++;switch(a){case 0:r.auto=1;break;case 1:r.index=n;var l=Oa[n];if(l)r.rgb=cc(l);break;case 2:r.rgb=cc([s,f,c]);break;case 3:r.theme=n;break;}if(i!=0)r.tint=i>0?i/32767:i/32768;return r}function ia(e,r){if(!r)r=tt(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 sa(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 fa(e,r){if(!r)r=tt(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 ca(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 la(e){return ca(e,1)}function oa(e){return ca(e,2)}var ua=2;var ha=3;var da=11;var va=12;var pa=19;var ma=30;var ba=64;var ga=65;var wa=71;var ka=4096;var Ta=80;var Ea=81;var Sa=[Ta,Ea];var ya={1:{n:"CodePage",t:ua},2:{n:"Category",t:Ta},3:{n:"PresentationFormat",t:Ta},4:{n:"ByteCount",t:ha},5:{n:"LineCount",t:ha},6:{n:"ParagraphCount",t:ha},7:{n:"SlideCount",t:ha},8:{n:"NoteCount",t:ha},9:{n:"HiddenCount",t:ha},10:{n:"MultimediaClipCount",t:ha},11:{n:"ScaleCrop",t:da},12:{n:"HeadingPairs",t:ka|va},13:{n:"TitlesOfParts",t:ka|ma},14:{n:"Manager",t:Ta},15:{n:"Company",t:Ta},16:{n:"LinksUpToDate",t:da},17:{n:"CharacterCount",t:ha},19:{n:"SharedDoc",t:da},22:{n:"HyperlinksChanged",t:da},23:{n:"AppVersion",t:ha,p:"version"},24:{n:"DigSig",t:ga},26:{n:"ContentType",t:Ta},27:{n:"ContentStatus",t:Ta},28:{n:"Language",t:Ta},29:{n:"Version",t:Ta},255:{},2147483648:{n:"Locale",t:pa},2147483651:{n:"Behavior",t:pa},1919054434:{}};var _a={1:{n:"CodePage",t:ua},2:{n:"Title",t:Ta},3:{n:"Subject",t:Ta},4:{n:"Author",t:Ta},5:{n:"Keywords",t:Ta},6:{n:"Comments",t:Ta},7:{n:"Template",t:Ta},8:{n:"LastAuthor",t:Ta},9:{n:"RevNumber",t:Ta},10:{n:"EditTime",t:ba},11:{n:"LastPrinted",t:ba},12:{n:"CreatedDate",t:ba},13:{n:"ModifiedDate",t:ba},14:{n:"PageCount",t:ha},15:{n:"WordCount",t:ha},16:{n:"CharCount",t:ha},17:{n:"Thumbnail",t:wa},18:{n:"Application",t:Ta},19:{n:"DocSecurity",t:ha},255:{},2147483648:{n:"Locale",t:pa},2147483651:{n:"Behavior",t:pa},1919054434:{}};var xa={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 Aa=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function Ca(e){return e.map(function(e){return[e>>16&255,e>>8&255,e&255]})}var Ra=Ca([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,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]); -var Oa=oe(Ra);var Ia={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var Na=q(Ia);var Fa={"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 Da={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 Pa(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function La(e){var r=Pa();if(!e||!e.match)return r;var t={};(e.match(Ne)||[]).forEach(function(e){var a=Pe(e);switch(a[0].replace(Fe,"<")){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}var Ma=or("Types",null,{xmlns:pr.CT,"xmlns:xsd":pr.xsd,"xmlns:xsi":pr.xsi});function Ua(e,r){var t=Z(Fa);var a=[],n;a[a.length]=Oe;a[a.length]=Ma;a=a.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 or("Default",null,{Extension:e[0],ContentType:e[1]})}));var i=function(t){if(e[t]&&e[t].length>0){n=e[t][0];a[a.length]=or("Override",null,{PartName:(n[0]=="/"?"":"/")+n,ContentType:Da[t][r.bookType]||Da[t]["xlsx"]})}};var s=function(t){(e[t]||[]).forEach(function(e){a[a.length]=or("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:Da[t][r.bookType]||Da[t]["xlsx"]})})};var f=function(r){(e[r]||[]).forEach(function(e){a[a.length]=or("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:t[r][0]})})};i("workbooks");s("sheets");s("charts");f("themes");["strs","styles"].forEach(i);["coreprops","extprops","custprops"].forEach(f);f("vba");f("comments");f("threadedcomments");f("drawings");s("metadata");f("people");if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var Ba={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",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function Wa(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function Ha(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Ne)||[]).forEach(function(e){var n=Pe(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Ga=[Ba.HLINK,Ba.XPATH,Ba.XMISS];function ja(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(Ga.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 Xa="application/vnd.oasis.opendocument.spreadsheet";function $a(e,r){var t=dr(e);var a;var n;while(a=vr.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Pe(a[0],false);if(n.path=="/"&&n.type!==Xa)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 Ya(e){var r=[Oe];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function Ka(e,r,t){return[' \n',' \n'," \n"].join("")}function Ja(e,r){return[' \n',' \n'," \n"].join("")}function qa(e){var r=[Oe];r.push('\n');for(var t=0;t!=e.length;++t){r.push(Ka(e[t][0],e[t][1]));r.push(Ja("",e[t][0]))}r.push(Ka("","Document","pkg"));r.push("");return r.join("")}function Za(){return'Sheet'+"JS "+e.version+""}var Qa=[["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 en=function(){var e=new Array(Qa.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function rn(e){var r={};e=Je(e);for(var t=0;t0)r[a[1]]=Be(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=ce(r[a[1]])}return r}function tn(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=ze(r);a[a.length]=t?or(e,r,t):cr(e,r)}function an(e,r){var t=r||{};var a=[Oe,or("cp:coreProperties",null,{"xmlns:cp":pr.CORE_PROPS,"xmlns:dc":pr.dc,"xmlns:dcterms":pr.dcterms,"xmlns:dcmitype":pr.dcmitype,"xmlns:xsi":pr.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)tn("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:ur(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)tn("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:ur(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var i=0;i!=Qa.length;++i){var s=Qa[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)tn(s[0],f,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var nn=[["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 sn=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function fn(e,r,t,a){var n=[];if(typeof e=="string")n=sr(e,a);else for(var i=0;i0)for(var l=0;l!==n.length;l+=2){c=+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=c;t.SheetNames=s.slice(f,f+c);break;case"Named Ranges":;case"Rangos con nombre":;case"名前付き一覧":;case"Benannte Bereiche":;case"Navngivne områder":t.NamedRanges=c;t.DefinedNames=s.slice(f,f+c);break;case"Charts":;case"Diagramme":t.Chartsheets=c;t.ChartNames=s.slice(f,f+c);break;}f+=c}}function cn(e,r,t){var a={};if(!r)r={};e=Je(e);nn.forEach(function(t){var n=(e.match(rr(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=Be(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)fn(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function ln(e){var r=[],t=or;if(!e)e={};e.Application="SheetJS";r[r.length]=Oe;r[r.length]=or("Properties",null,{xmlns:pr.EXT_PROPS,"xmlns:vt":pr.vt});nn.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=ze(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""+ze(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var on=/<[^>]+>[^<]*/g;function un(e,r){var t={},a="";var n=e.match(on);if(n)for(var i=0;i!=n.length;++i){var s=n[i],f=Pe(s);switch(f[0]){case"":a=null;break;default:if(s.indexOf("");var l=c[0].slice(4),o=c[1];switch(l){case"lpstr":;case"bstr":;case"lpwstr":t[a]=Be(o);break;case"bool":t[a]=Ke(o);break;case"i1":;case"i2":;case"i4":;case"i8":;case"int":;case"uint":t[a]=parseInt(o,10);break;case"r4":;case"r8":;case"decimal":t[a]=parseFloat(o);break;case"filetime":;case"date":t[a]=ce(o);break;case"cy":;case"error":t[a]=Be(o);break;default:if(l.slice(-1)=="/")break;if(r.WTF&&typeof console!=="undefined")console.warn("Unexpected",s,l,c);}}else if(s.slice(0,2)==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var dn={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 vn;function pn(e,r,t){if(!vn)vn=J(dn);r=vn[r]||r;e[r]=t}function mn(e,r){var t=[];Y(dn).map(function(e){for(var r=0;r'+n.join("")+""}function gn(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 wn(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=tt(8);s._W(4,a);s._W(4,n);return s}function kn(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 Tn(e,r,t){var a=e._R(0,"lpwstr");if(t)e.l+=4-(a.length+1&3)&3;return a}function En(e,r,t){if(r===31)return Tn(e);return kn(e,r,t)}function Sn(e,r,t){return En(e,r,t===false?0:4)}function yn(e,r){if(!r)throw new Error("VtUnalignedString must have positive length");return En(e,r,0)}function _n(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(N,"");if(e.l-n&2)e.l+=2}return t}function xn(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a)t[a]=e._R(0,"lpstr-cp").replace(N,"");return t}function An(e){var r=e.l;var t=Nn(e,Ea);if(e[e.l]==0&&e[e.l+1]==0&&e.l-r&2)e.l+=2;var a=Nn(e,ha);return[t,a]}function Cn(e){var r=e._R(4);var t=[];for(var a=0;a>2+1<<2;return a}function On(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 In(e){var r={};r.Size=e._R(4);e.l+=r.Size+3-(r.Size-1)%4;return r}function Nn(e,r,t){var a=e._R(2),n,i=t||{};e.l+=2;if(r!==va)if(a!==r&&Sa.indexOf(r)===-1&&!((r&65534)==4126&&(a&65534)==4126))throw new Error("Expected type "+r+" saw "+a);switch(r===va?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 kn(e,a,4).replace(N,"");case 31:return Tn(e);case 64:return gn(e);case 65:return On(e);case 71:return In(e);case 80:return Sn(e,a,!i.raw).replace(N,"");case 81:return yn(e,a).replace(N,"");case 4108:return Cn(e);case 4126:;case 4127:return a==4127?_n(e):xn(e);default:throw new Error("TypedPropertyValue unrecognized type "+r+" "+a);}}function Fn(e,r){var t=tt(4),a=tt(4);t._W(4,e==80?31:e);switch(e){case 3:a._W(-4,r);break;case 5:a=tt(8);a._W(8,r,"f");break;case 11:a._W(4,r?1:0);break;case 64:a=wn(r);break;case 31:;case 80:a=tt(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 I([t,a])}function Dn(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,o={};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){var p=r[i[s][0]];d[p.n]=Nn(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:c(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=Nn(e,ua);c(f);if(l!==-1){var m=e.l;e.l=i[l][1];o=Rn(e,f);e.l=m}}else if(i[s][0]===0){if(f===0){l=s;e.l=i[s+1][1];continue}o=Rn(e,f)}else{var b=o[i[s][0]];var g;switch(e[e.l]){case 65:e.l+=4;g=On(e);break;case 30:e.l+=4;g=Sn(e,e[e.l-4]).replace(/\u0000+$/,"");break;case 31:e.l+=4;g=Sn(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=Vn(e,4);break;case 64:e.l+=4;g=ce(gn(e));break;default:throw new Error("unparsed value: "+e[e.l]);}d[b]=g}}}e.l=t+a;return d}var Pn=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function Ln(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 Mn(e,r,t){var a=tt(8),n=[],i=[];var s=8,f=0;var c=tt(8),l=tt(8);c._W(4,2);c._W(4,1200);l._W(4,1);i.push(c);n.push(l);s+=8+c.length;if(!r){l=tt(8);l._W(4,0);n.unshift(l);var o=[tt(4)];o[0]._W(4,e.length);for(f=0;f-1||sn.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)}c=Fn(v.t,h)}else{var m=Ln(h);if(m==-1){m=31;h=String(h)}c=Fn(m,h)}i.push(c);l=tt(8);l._W(4,!r?2+f:d);n.push(l);s+=8+c.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 c=n?e._R(n,i):"";r=s;return c}function qn(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 c=0,l;var o={};if(s)c=e._R(2);if(i)l=e._R(4);var u=f==2?"dbcs-cont":"sbcs-cont";var h=a===0?"":e._R(a,u);if(s)e.l+=4*c;if(i)e.l+=l;o.t=h;if(!s){o.raw=""+o.t+"";o.r=o.t}r=t;return o}function Zn(e){var r=e.t||"",t=1;var a=tt(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=tt(2*r.length);n._W(2*r.length,r,"utf16le");var i=[a,n];return I(i)}function Qn(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 ei(e,r,t){var a=e._R(t&&t.biff==2?1:2);if(a===0){e.l++;return""}return Qn(e,a,t)}function ri(e,r,t){if(t.biff>5)return ei(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 ti(e,r,t){if(!t)t=tt(3+2*e.length);t._W(2,e.length);t._W(1,1);t._W(31,e,"utf16le");return t}function ai(e){var r=e._R(1);e.l++;var t=e._R(2);e.l+=2;return[r,t]}function ni(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(N,"");if(a)e.l+=24;return n}function ii(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(N,"");return t+s}function si(e,r){var t=e._R(16);r-=16;switch(t){case"e0c9ea79f9bace118c8200aa004ba90b":return ni(e,r);case"0303000000000000c000000000000046":return ii(e,r);default:throw new Error("Unsupported Moniker "+t);}}function fi(e){var r=e._R(4);var t=r>0?e._R(r,"utf16le").replace(N,""):"";return t}function ci(e,r){if(!r)r=tt(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 gi(e){var r=e._R(2);var t=Jt(e);return[r,t]}function wi(e,r,t){e.l+=4;r-=4;var a=e.l+r;var n=Jn(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 ki(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 Ti(e,r){if(!r)r=tt(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 Ei(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 Si=Ei;function yi(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 _i(e){var r={};e.l+=4;e.l+=16;r.fSharedNote=e._R(2);e.l+=4;return r}function xi(e){var r={};e.l+=4;e.cf=e._R(2);return r}function Ai(e){e.l+=2;e.l+=e._R(2)}var Ci={0:Ai,4:Ai,5:Ai,6:Ai,7:xi,8:Ai,9:Ai,10:Ai,11:Ai,12:Ai,13:_i,14:Ai,15:Ai,16:Ai,17:Ai,18:Ai,19:Ai,20:Ai,21:yi};function Ri(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 Ii(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=tt(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 Ni(e,r){if(r===0)return 1200;if(e._R(2)!==1200){}return 1200}function Fi(e,r,t){if(t.enc){e.l+=r;return""}var a=e.l;var n=ri(e,0,t);e._R(r+a-e.l);return n}function Di(e,r){var t=!r||r.biff==8;var a=tt(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=tt(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 Ui(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 ji(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 c=e._R(2),l=e._R(2);return{Pos:[r,t],Dim:[a,n],Flags:i,CurTab:s,FirstTab:f,Selected:c,TabRatio:l}}function Xi(){var e=tt(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 $i(e,r,t){if(t&&t.biff>=2&&t.biff<5)return{};var a=e._R(2);return{RTL:a&64}}function Yi(e){var r=tt(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 Ki(){}function Ji(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=Jn(e,0,t);return a}function qi(e,r){var t=e.name||"Arial";var a=r&&r.biff==5,n=a?15+t.length:16+2*t.length;var i=tt(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 Zi(e){var r=di(e);r.isst=e._R(4);return r}function Qi(e,r,t,a){var n=tt(10);vi(e,r,a,n);n._W(4,t);return n}function es(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=e.l+r;var n=di(e,6);if(t.biff==2)e.l++;var i=ei(e,a-e.l,t);n.val=i;return n}function rs(e,r,t,a,n){var i=!n||n.biff==8;var s=tt(6+2+ +i+(1+i)*t.length);vi(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 ts(e,r,t){var a=e._R(2);var n=ri(e,0,t);return[a,n]}function as(e,r,t,a){var n=t&&t.biff==5;if(!a)a=tt(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 ns=ri;function is(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),c=e._R(2);e.l=a;return{s:{r:i,c:f},e:{r:s,c:c}}}function ss(e,r){var t=r.biff==8||!r.biff?4:2;var a=tt(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 fs(e){var r=e._R(2),t=e._R(2);var a=gi(e);return{r:r,c:t,ixfe:a[0],rknum:a[1]}}function cs(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=c&127;n.icvBack=c>>7&127;n.fsxButton=c>>14&1;return n}function us(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=os(e,r,a.fStyle,t);return a}function hs(e,r,t,a){var n=t&&t.biff==5;if(!a)a=tt(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 ds(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 vs(e){var r=tt(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 ps(e,r,t){var a=di(e,6);if(t.biff==2||r==9)++e.l;var n=Yn(e,2);a.val=n;a.t=n===true||n===false?"b":"e";return a}function ms(e,r,t,a,n,i){var s=tt(8);vi(e,r,a,s);Kn(t,i,s);return s}function bs(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=di(e,6);var n=ta(e,8);a.val=n;return a}function gs(e,r,t,a){var n=tt(14);vi(e,r,a,n);aa(t,n);return n}var ws=mi;function ks(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=Qn(e,i);var f=[];while(a>e.l)f.push(ei(e));return[i,n,s,f]}function Ts(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=wi(e,r-2,t);i.body=n||e._R(r-2);if(typeof n==="string")i.Name=n;return i}var Es=["_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"];function Ss(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 c=0;if(!t||t.biff>=5){if(t.biff!=5)e.l+=2;c=e._R(2);if(t.biff==5)e.l+=2;e.l+=4}var l=Qn(e,s,t);if(n&32)l=Es[l.charCodeAt(0)];var o=a-e.l;if(t&&t.biff==2)--o;var u=a==e.l||f===0||!(o>0)?[]:th(e,o,t,f);return{chKey:i,Name:l,itab:c,rgce:u}}function ys(e,r,t){if(t.biff<8)return _s(e,r,t);var a=[],n=e.l+r,i=e._R(t.biff>8?4:2);while(i--!==0)a.push(bi(e,t.biff>8?12:6,t));if(e.l!=n)throw new Error("Bad ExternSheet: "+e.l+" != "+n);return a}function _s(e,r,t){if(e[e.l+1]==3)e[e.l]++;var a=Jn(e,r,t);return a.charCodeAt(0)==3?a.slice(1):a}function xs(e,r,t){if(t.biff<8){e.l+=r;return}var a=e._R(2);var n=e._R(2);var i=Qn(e,a,t);var s=Qn(e,n,t);return[i,s]}function As(e,r,t){var a=Ei(e,6);e.l++;var n=e._R(1);r-=8;return[ah(e,r,t),n,a]}function Cs(e,r,t){var a=Si(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,eh(e,r,t,a)]}function Rs(e){var r=e._R(4)!==0;var t=e._R(4)!==0;var a=e._R(4);return[r,t,a]}function Os(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=ri(e,0,t);if(t.biff<8)e._R(1);return[{r:a,c:n},f,s,i]}function Is(e,r,t){return Os(e,r,t)}function Ns(e,r){var t=[];var a=e._R(2);while(a--)t.push(ki(e,r));return t}function Fs(e){var r=tt(2+e.length*8);r._W(2,e.length);for(var t=0;t=(o?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 Us(e,r){var t=ki(e,8);e.l+=16;var a=li(e,r-24);return[t,a]}function Bs(e){var r=tt(24);var t=wt(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 I([r,oi(e[1])])}function Ws(e,r){e._R(2);var t=ki(e,8);var a=e._R((r-10)/2,"dbcs-cont");a=a.replace(N,"");return[t,a]}function Hs(e){var r=e[1].Tooltip;var t=tt(10+2*(r.length+1));t._W(2,2048);var a=wt(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(hi(e,8));return t}function js(e){var r=e._R(2);var t=[];while(r-- >0)t.push(hi(e,8));return t}function Xs(e){e.l+=2;var r={cxfs:0,crc:0};r.cxfs=e._R(2);r.crc=e._R(4);return r}function $s(e,r,t){if(!t.cellStyles)return rt(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 c=e._R(2);if(a==2)e.l+=2;var l={s:n,e:i,w:s,ixfe:f,flags:c};if(t.biff>=5||!t.biff)l.level=c>>8&7;return l}function Ys(e,r){var t=tt(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 Ks(e,r){var t={};if(r<32)return t;e.l+=16;t.header=ta(e,8);t.footer=ta(e,8);e.l+=2;return t}function Js(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 qs(e){var r=tt(2*e);for(var t=0;t1048576)o=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(l)i.l+=36;var v=[],p={};var m=Math.min(i.length,s==2?521:u-10-(c?264:0));var b=l?32:11;while(i.l0){if(i[i.l]===42){i.l+=h;continue}++i.l;n[++w]=[];k=0;for(k=0;k!=v.length;++k){var T=i.slice(i.l,i.l+v[k].len);i.l+=v[k].len;et(T,0);var E=a.utils.decode(d,T);switch(v[k].type){case"C":if(E.trim().length)n[w][k]=E.replace(/\s+$/,"");break;case"D":if(E.length===8)n[w][k]=new Date(+E.slice(0,4),+E.slice(4,6)-1,+E.slice(6,8));else n[w][k]=E;break;case"F":n[w][k]=parseFloat(E.trim());break;case"+":;case"I":n[w][k]=l?T._R(-4,"i")^2147483648:T._R(4,"i");break;case"L":switch(E.trim().toUpperCase()){case"Y":;case"T":n[w][k]=true;break;case"N":;case"F":n[w][k]=false;break;case"":;case"?":break;default:throw new Error("DBF Unrecognized L:|"+E+"|");}break;case"M":if(!f)throw new Error("DBF Unexpected MEMO for type "+s.toString(16));n[w][k]="##MEMO##"+(l?parseInt(E.trim(),10):T._R(4));break;case"N":E=E.replace(/\u0000/g,"").trim();if(E&&E!=".")n[w][k]=+E||0;break;case"@":n[w][k]=new Date(T._R(-8,"f")-621356832e5);break;case"T":n[w][k]=new Date((T._R(4)-2440588)*864e5+T._R(4));break;case"Y":n[w][k]=T._R(4,"i")/1e4+T._R(4,"i")/1e4*Math.pow(2,32);break;case"O":n[w][k]=-T._R(-8,"f");break;case"B":if(c&&v[k].len==8){n[w][k]=T._R(8,"f");break};case"G":;case"P":T.l+=v[k].len;break;case"0":if(v[k].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+v[k].type);}}}if(s!=2)if(i.l=0)c(+n.codepage);if(n.type=="string")throw new Error("Cannot write DBF to JS string");var i=nt();var s=Kb(e,{header:1,raw:true,cellDates:true});var l=s[0],o=s.slice(1),u=e["!cols"]||[];var h=0,d=0,v=0,p=1;for(h=0;h250)E=250;T=((u[h]||{}).DBF||{}).type;if(T=="C"){if(u[h].DBF.len>E)E=u[h].DBF.len}if(k=="B"&&T=="N"){k="N";w[h]=u[h].DBF.dec;E=u[h].DBF.len}g[h]=k=="C"||T=="N"?E:f[k]||0;p+=g[h];b[h]=k}var y=i.next(32);y._W(4,318902576);y._W(4,o.length);y._W(2,296+32*v);y._W(2,p);for(h=0;h<4;++h)y._W(4,0);y._W(4,0|(+r[t]||3)<<8);for(h=0,d=0;h":190,"?":191,"{":223};var r=new RegExp("N("+Y(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(g.decode(e),r);case"binary":return s(e,r);case"buffer":return s(w&&Buffer.isBuffer(e)?e.toString("binary"):A(e),r);case"array":return s(le(e),r);}throw new Error("Unrecognized type "+r.type)}function s(e,i){var s=e.split(/[\n\r]+/),f=-1,l=-1,o=0,u=0,h=[];var d=[];var v=null;var p={},m=[],b=[],g=[];var w=0,k;if(+i.codepage>=0)c(+i.codepage);for(;o!==s.length;++o){w=0;var T=s[o].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 S=E[0],y;if(T.length>0)switch(S){case"ID":break;case"E":break;case"B":break;case"O":break;case"W":break;case"P":if(E[1].charAt(0)=="P")d.push(T.slice(3).replace(/;;/g,";"));break;case"C":var _=false,x=false,A=false,C=false,R=-1,O=-1;for(u=1;u-1&&h[R][O];if(!N||!N[1])throw new Error("SYLK shared formula cannot find base");h[f][l][1]=ko(N[1],{r:f-R,c:l-O})}break;case"F":var F=0;for(u=1;u0){m[f].hpt=w;m[f].hpx=_c(w)}else if(w===0)m[f].hidden=true;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+T);}if(F<1)v=null;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+T);}}if(m.length>0)p["!rows"]=m;if(b.length>0)p["!cols"]=b;if(i&&i.sheetRows)h=h.slice(0,i.sheetRows);return[h,p]}function f(e,r){var t=i(e,r);var a=t[0],n=t[1];var s=Ct(a,r);Y(n).forEach(function(e){s[e]=n[e]});return s}function l(e,r){return xt(f(e,r),r)}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"+wo(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 u(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=mc(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=bc(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*yc(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function d(e,r){var t=["ID;PWXL;N;E"],a=[];var n=St(e["!ref"]),i;var s=Array.isArray(e);var f="\r\n";t.push("P;PGeneral");t.push("F;P0;DG0G8;M255");if(e["!cols"])u(t,e["!cols"]);if(e["!rows"])h(t,e["!rows"]);t.push("B;Y"+(n.e.r-n.s.r+1)+";X"+(n.e.c-n.s.c+1)+";D"+[n.s.c,n.s.r,n.e.c,n.e.r].join(" "));for(var c=n.s.r;c<=n.e.r;++c){for(var l=n.s.c;l<=n.e.c;++l){var d=kt({r:c,c:l});i=s?(e[c]||[])[l]:e[d];if(!i||i.v==null&&(!i.f||i.F))continue;a.push(o(i,e,c,l,r))}}return t.join(f)+f+a.join(f)+f+"E"+f}return{to_workbook:l,to_sheet:f,from_sheet:d}}();var vf=function(){function e(e,t){switch(t.type){case"base64":return r(g.decode(e),t);case"binary":return r(e,t);case"buffer":return r(w&&Buffer.isBuffer(e)?e.toString("binary"):A(e),t);case"array":return r(le(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 c=f[0],l=f[1];++i;var o=t[i]||"";while((o.match(/["]/g)||[]).length&1&&i=0&&i[s].length===0)--s;var f=10,c=0;var l=0;for(;l<=s;++l){c=i[l].indexOf(" ");if(c==-1)c=i[l].length;else c++;f=Math.max(f,c)}for(l=0;l<=s;++l){n[l]=[];var o=0;e(i[l].slice(0,f).trim(),n,l,o,a);for(o=1;o<=(i[l].length-f)/10+1;++o)e(i[l].slice(f+(o-1)*10,f+o*10).trim(),n,l,o,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"]=Et(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 Ct(r(e,t),t)}function c(e,r){var t="",n=r.type=="string"?[0,0,0,0]:yb(e,r);switch(r.type){case"base64":t=g.decode(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=w&&Buffer.isBuffer(e)?e.toString("binary"):A(e);break;case"array":t=le(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=Je(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=Je(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 pf.to_sheet(r.type=="string"?t:Je(t),r);return f(t,r)}function l(e,r){return xt(c(e,r),r)}function o(e){var r=[];var t=St(e["!ref"]),a;var n=Array.isArray(e);for(var i=t.s.r;i<=t.e.r;++i){var s=[];for(var f=t.s.c;f<=t.e.c;++f){var c=kt({r:i,c:f});a=n?(e[i]||[])[f]:e[c];if(!a||a.v==null){s.push(" ");continue}var l=(a.w||(_t(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:c,from_sheet:o}}();function bf(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=df.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 mf.to_workbook(e,r)}}var gf=function(){function e(e,r,t){if(!e)return;et(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 6:u=e;break;case 204:if(e)s=e;break;case 222:s=e;break;case 15:;case 51:if(!a.qpro)e[1].v=e[1].v.slice(1);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||D._table[14];if(a.cellDates){e[1].t="d";e[1].v=ne(e[1].v)}}if(a.qpro){if(e[3]>f){n["!ref"]=Et(u);c[i]=n;l.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 o=a.dense?(n[e[0].r]||[])[e[0].c]:n[kt(e[0])];if(o){o.t=e[1].t;o.v=e[1].v;if(e[1].z!=null)o.z=e[1].z;if(e[1].f!=null)o.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[kt(e[0])]=e[1];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:e[1].v=e[1].v.slice(1);case 23:;case 24:;case 25:;case 37:;case 39:;case 40:if(e[3]>f){n["!ref"]=Et(u);c[i]=n;l.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[kt(e[0])]=e[1];if(u.e.c=0)c(+t.codepage);if(t.type=="string")throw new Error("Cannot write WK1 to JS string");var a=nt();var n=St(e["!ref"]);var s=Array.isArray(e);var f=[];lm(a,0,i(1030));lm(a,6,l(n));var o=Math.min(n.e.r,8191);for(var u=n.s.r;u<=o;++u){var d=ut(u);for(var p=n.s.c;p<=n.e.c;++p){if(u===n.s.r)f[p]=pt(p);var m=f[p]+d;var g=s?(e[u]||[])[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)lm(a,13,v(u,p,g.v));else lm(a,14,b(u,p,g.v))}else{var w=_t(g);lm(a,15,h(u,p,w.slice(0,239)))}}}lm(a,1);return a.end()}function n(e,r){var t=r||{};if(+t.codepage>=0)c(+t.codepage);if(t.type=="string")throw new Error("Cannot write WK3 to JS string");var a=nt();lm(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=tt(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 o(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{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=o(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=tt(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=o(e,r,t);a[1].v=e._R(2,"i");return a}function v(e,r,t){var a=tt(7);a._W(1,255);a._W(2,r);a._W(2,e);a._W(2,t,"i");return a}function p(e,r,t){var a=o(e,r,t);a[1].v=e._R(8,"f");return a}function b(e,r,t){var a=tt(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=o(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?pt(r):ut(r))}var T={51:["FALSE",0],52:["TRUE",0],70:["LEN",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],111:["T",1]};var E=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function S(e,r){et(e,0);var t=[],a=0,n="",i="",s="",f="";while(e.lt.length){console.error("WK1 bad formula parse 0x"+c.toString(16)+":|"+t.join("|")+"|");return}var h=t.slice(-a);t.length-=a;t.push(T[c][0]+"("+h.join(",")+")")}else if(c<=7)return console.error("WK1 invalid opcode "+c.toString(16));else if(c<=24)return console.error("WK1 unsupported op "+c.toString(16));else if(c<=30)return console.error("WK1 invalid opcode "+c.toString(16));else if(c<=115)return console.error("WK1 unsupported function opcode "+c.toString(16));else return console.error("WK1 unrecognized opcode "+c.toString(16));}}if(t.length==1)r[1].f=""+t[0];else console.error("WK1 bad formula parse |"+t.join("|")+"|")}function y(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=y(e,r);t[1].t="s";t[1].v=e._R(r-4,"cstr");return t}function A(e,r,t,a){var n=tt(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 C(e,r){var t=y(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=y(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 O(e,r,t,a){var n=tt(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,c=0;if(a<0){i=1;a=-a}s=Math.log2(a)|0;a/=Math.pow(2,s-31);c=a>>>0;if((c&2147483648)==0){a/=2;++s;c=a>>>0}a-=c;c|=2147483648;c>>>=0;a*=Math.pow(2,32);f=a>>>0;n._W(4,f);n._W(4,c);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 N(e,r){var t=y(e,r);var a=e._R(4);t[1].v=a>>6;return t}function F(e,r){var t=y(e,r);var a=e._R(8,"f");t[1].v=a;return t}function P(e,r){var t=F(e,14);e.l+=r-10;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:jn},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:d},14:{n:"NUMBER",f:p},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:u},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},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:C},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:N},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:""}};return{sheet_to_wk1:a,book_to_wk3:n,to_workbook:r}}();function wf(e){var r={},t=e.match(Ne),a=0;var n=false;if(t)for(;a!=t.length;++a){var s=Pe(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 kf=function(){var e=rr("t"),r=rr("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:Be(a[1])};var i=t.match(r);if(i)n.s=wf(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 Tf=function Wg(){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 Ef=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,Sf=/<(?:\w+:)?r>/;var yf=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function _f(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=Be(Je(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""));a.r=Je(e);if(t)a.h=je(a.t)}else if(e.match(Sf)){a.r=Je(e);a.t=Be(Je((e.replace(yf,"").match(Ef)||[]).join("").replace(Ne,"")));if(t)a.h=Tf(kf(a.r))}return a}var xf=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var Af=/<(?:\w+:)?(?:si|sstItem)>/g;var Cf=/<\/(?:\w+:)?(?:si|sstItem)>/;function Rf(e,r){var t=[],a="";if(!e)return t;var n=e.match(xf);if(n){a=n[2].replace(Af,"").split(Cf);for(var i=0;i!=a.length;++i){var s=_f(a[i].trim(),r);if(s!=null)t[t.length]=s}n=Pe(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var Of=/^\s|\s$|[\t\n\r]/;function If(e,r){if(!r.bookSST)return"";var t=[Oe];t[t.length]=or("sst",null,{xmlns:mr[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 Nf(e){return[e._R(4),e._R(4)]}function Ff(e,r){var t=[];var a=false;at(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 Df(e,r){if(!r)r=tt(8);r._W(4,e.Count);r._W(4,e.Unique);return r}var Pf=Lt;function Lf(e){var r=nt();it(r,159,Df(e));for(var t=0;t=4)e.l+=r-4;return t}function Bf(e){var r={};r.id=e._R(0,"lpp4");r.R=Uf(e,4);r.U=Uf(e,4);r.W=Uf(e,4);return r}function Wf(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 Hf(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(Wf(e));return r}function zf(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(e._R(0,"lpp4"));return r}function Vf(e){var r={};e._R(4);e.l+=4;r.id=e._R(0,"lpp4");r.name=e._R(0,"lpp4");r.R=Uf(e,4);r.U=Uf(e,4);r.W=Uf(e,4);return r}function Gf(e){var r=Vf(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 jf(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 Xf(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 $f(e){var r=Uf(e);switch(r.Minor){case 2:return[r.Minor,Yf(e,r)];case 3:return[r.Minor,Kf(e,r)];case 4:return[r.Minor,Jf(e,r)];}throw new Error("ECMA-376 Encrypted file unrecognized Version: "+r.Minor)}function Yf(e){var r=e._R(4);if((r&63)!=36)throw new Error("EncryptionInfo mismatch");var t=e._R(4);var a=jf(e,t);var n=Xf(e,e.length-e.l);return{t:"Std",h:a,v:n}}function Kf(){throw new Error("File is password-protected: ECMA-376 Extensible")}function Jf(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(Ne,function n(e){var t=Pe(e);switch(Le(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=jf(e,n);r-=n;t.EncryptionVerifier=Xf(e,r);return t}function Zf(e){var r={};var t=r.EncryptionVersionInfo=Uf(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 Qf(e){var r=0,t;var a=Mf(e);var n=a.length+1,i,s;var f,c,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;c=r<<1&32767;l=f|c;r=l^s}return r^52811}var ec=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=Mf(r);var a=i(t);var s=t.length;var f=S(16);for(var c=0;c!=16;++c)f[c]=0;var l,o,u;if((s&1)===1){l=a>>8;f[s]=n(e[0],l);--s;l=a&255;o=t[t.length-1];f[s]=n(o,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;u=15-t.length;while(u>0){l=a>>8;f[s]=n(e[u],l);--s;--u;l=a&255;f[s]=n(t[s],l);--s;--u}return f}}();var rc=function(e,r,t,a,n){if(!n)n=r;if(!a)a=ec(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 tc=function(e){var r=0,t=ec(e);return function(e){var a=rc("",e,r,t);r=a[1];return a[0]}};function ac(e,r,t,a){var n={key:jn(e),verificationBytes:jn(e)};if(t.password)n.verifier=Qf(t.password);a.valid=n.verificationBytes===n.verifier;if(a.valid)a.insitu=tc(t.password);return n}function nc(e,r,t){var a=t||{};a.Info=e._R(2);e.l-=2;if(a.Info===1)a.Data=Zf(e,r);else a.Data=qf(e,r);return a}function ic(e,r,t){var a={Type:t.biff>=8?e._R(2):0};if(a.Type)nc(e,r-2,a);else ac(e,t.biff>=8?r:r-2,t,a);return a}var sc=function(){function e(e,t){switch(t.type){case"base64":return r(g.decode(e),t);case"binary":return r(e,t);case"buffer":return r(w&&Buffer.isBuffer(e)?e.toString("binary"):A(e),t);case"array":return r(le(e),t);}throw new Error("Unrecognized type "+t.type)}function r(e,r){var t=r||{};var a=t.dense?[]:{};var n=e.match(/\\trowd.*?\\row\b/g);if(!n.length)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 t=/\\\w+\b/g;var n=0;var s;var f=-1;while(s=t.exec(e)){switch(s[0]){case"\\cell":var c=e.slice(n,t.lastIndex-s[0].length);if(c[0]==" ")c=c.slice(1);++f;if(c.length){var l={v:c,t:"s"};if(Array.isArray(a))a[r][f]=l;else a[kt({r:r,c:f})]=l}break;}n=t.lastIndex}if(f>i.e.c)i.e.c=f});a["!ref"]=Et(i);return a}function t(r,t){return xt(e(r,t),t)}function a(e){var r=["{\\rtf1\\ansi"];var t=St(e["!ref"]),a;var n=Array.isArray(e);for(var i=t.s.r;i<=t.e.r;++i){r.push("\\trowd\\trautofit1"); -for(var s=t.s.c;s<=t.e.c;++s)r.push("\\cellx"+(s+1));r.push("\\pard\\intbl");for(s=t.s.c;s<=t.e.c;++s){var f=kt({r:i,c:s});a=n?(e[i]||[])[s]:e[f];if(!a||a.v==null&&(!a.f||a.F))continue;r.push(" "+(a.w||(_t(a),a.w)));r.push("\\cell")}r.push("\\pard\\intbl\\row")}return r.join("")+"}"}return{to_workbook:t,to_sheet:e,from_sheet:a}}();function fc(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 cc(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 lc(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,c=0,l=n+i;c=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,c,l/2]}function oc(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 c;if(t!==0)switch(f|0){case 0:;case 6:c=n*f;s[0]+=n;s[1]+=c;break;case 1:c=n*(2-f);s[0]+=c;s[1]+=n;break;case 2:c=n*(f-2);s[1]+=n;s[2]+=c;break;case 3:c=n*(4-f);s[1]+=c;s[2]+=n;break;case 4:c=n*(f-4);s[2]+=n;s[0]+=c;break;case 5:c=n*(6-f);s[2]+=c;s[0]+=n;break;}for(var l=0;l!=3;++l)s[l]=Math.round(s[l]*255);return s}function uc(e,r){if(r===0)return e;var t=lc(fc(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return cc(oc(t))}var hc=6,dc=15,vc=1,pc=hc;function mc(e){return Math.floor((e+Math.round(128/pc)/256)*pc)}function bc(e){return Math.floor((e-5)/pc*100+.5)/100}function gc(e){return Math.round((e*pc+5)/pc*256)/256}function wc(e){return gc(bc(mc(e)))}function kc(e){var r=Math.abs(e-wc(e)),t=pc;if(r>.005)for(pc=vc;pc":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=Ke(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=Ke(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 Cc(e,r,t,a){r.Fills=[];var n={};var i=false;(e[0].match(Ne)||[]).forEach(function(e){var t=Pe(e);switch(Le(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 Rc(e,r,t,a){r.Fonts=[];var n={};var s=false;(e[0].match(Ne)||[]).forEach(function(e){var f=Pe(e);switch(Le(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 Oc(e,r,t){r.NumberFmt=[];var a=Y(D._table);for(var n=0;n":;case"":;case"":break;case"0){if(c>392){for(c=392;c>60;--c)if(r.NumberFmt[c]==null)break;r.NumberFmt[c]=f}D.load(f,c)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+s[0]+" in numFmts");}}}function Ic(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]=or("numFmt",null,{numFmtId:a,formatCode:ze(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=or("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var Nc=["numFmtId","fillId","fontId","borderId","xfId"];var Fc=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function Dc(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Ne)||[]).forEach(function(e){var i=Pe(e),s=0;switch(Le(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=Ke(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 Pc(e){var r=[];r[r.length]=or("cellXfs",null);e.forEach(function(e){r[r.length]=or("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=or("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var Lc=function Hg(){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,c){var l={};if(!s)return l;s=s.replace(//gm,"").replace(//gm,"");var o;if(o=s.match(e))Oc(o,l,c);if(o=s.match(a))Rc(o,l,f,c);if(o=s.match(t))Cc(o,l,f,c);if(o=s.match(n))Ac(o,l,f,c);if(o=s.match(r))Dc(o,l,c);return l}}();function Mc(e,r){var t=[Oe,or("styleSheet",null,{xmlns:mr[0],"xmlns:vt":pr.vt})],a;if(e.SSF&&(a=Ic(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=Pc(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 Uc(e,r){var t=e._R(2);var a=It(e,r-2);return[t,a]}function Bc(e,r,t){if(!t)t=tt(6+4*r.length);t._W(2,e);Nt(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 Wc(e,r,t){var a={};a.sz=e._R(2)/20;var n=sa(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 c=e._R(1);if(c>0)a.charset=c;e.l++;a.color=na(e,8);switch(e._R(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor";break;}a.name=It(e,r-21);return a}function Hc(e,r){if(!r)r=tt(25+4*32);r._W(2,e.sz*20);fa(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);ia(e.color,r);var a=0;if(e.scheme=="major")a=1;if(e.scheme=="minor")a=2;r._W(1,a);Nt(e.name,r);return r.length>r.l?r.slice(0,r.l):r}var zc=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];var Vc;var Gc=rt;function jc(e,r){if(!r)r=tt(4*3+8*7+16*1);if(!Vc)Vc=J(zc);var t=Vc[e.patternType];if(t==null)t=40;r._W(4,t);var a=0;if(t!=40){ia({auto:1},r);ia({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 Xc(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 $c(e,r,t){if(!t)t=tt(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 Yc(e,r){if(!r)r=tt(10);r._W(1,0);r._W(1,0);r._W(4,0);r._W(4,0);return r}var Kc=rt;function Jc(e,r){if(!r)r=tt(51);r._W(1,0);Yc(null,r);Yc(null,r);Yc(null,r);Yc(null,r);Yc(null,r);return r.length>r.l?r.slice(0,r.l):r}function qc(e,r){if(!r)r=tt(12+4*10);r._W(4,e.xfId);r._W(2,1);r._W(1,+e.builtinId);r._W(1,0);Xt(e.name||"",r);return r.length>r.l?r.slice(0,r.l):r}function Zc(e,r,t){var a=tt(4+256*2*4);a._W(4,e);Xt(r,a);Xt(t,a);return a.length>a.l?a.slice(0,a.l):a}function Qc(e,r,t){var a={};a.NumberFmt=[];for(var n in D._table)a.NumberFmt[n]=D._table[n];a.CellXf=[];a.Fonts=[];var i=[];var s=false;at(e,function f(e,n,c){switch(c){case 44:a.NumberFmt[e[0]]=e[1];D.load(e[1],e[0]);break;case 43:a.Fonts.push(e);if(e.color.theme!=null&&r&&r.themeElements&&r.themeElements.clrScheme){e.color.rgb=uc(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(c);s=true;break;case 38:i.pop();s=false;break;default:if(n.T>0)i.push(c);else if(n.T<0)i.pop();else if(!s||t.WTF&&i[i.length-1]!=37)throw new Error("Unexpected record 0x"+c.toString(16));}});return a}function el(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;it(e,615,Ot(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)it(e,44,Bc(a,r[a]))});it(e,616)}function rl(e){var r=1;if(r==0)return;it(e,611,Ot(r));it(e,43,Hc({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}));it(e,612)}function tl(e){var r=2;if(r==0)return;it(e,603,Ot(r));it(e,45,jc({patternType:"none"}));it(e,45,jc({patternType:"gray125"}));it(e,604)}function al(e){var r=1;if(r==0)return;it(e,613,Ot(r));it(e,46,Jc({}));it(e,614)}function nl(e){var r=1;it(e,626,Ot(r));it(e,47,$c({numFmtId:0,fontId:0,fillId:0,borderId:0},65535));it(e,627)}function il(e,r){it(e,617,Ot(r.length));r.forEach(function(r){it(e,47,$c(r,0))});it(e,618)}function sl(e){var r=1;it(e,619,Ot(r));it(e,48,qc({xfId:0,builtinId:0,name:"Normal"}));it(e,620)}function fl(e){var r=0;it(e,505,Ot(r));it(e,506)}function cl(e){var r=0;it(e,508,Zc(r,"TableStyleMedium9","PivotStyleMedium4"));it(e,509)}function ll(){return}function ol(e,r){var t=nt();it(t,278);el(t,e.SSF);rl(t,e);tl(t,e);al(t,e);nl(t,e);il(t,r.cellXfs);sl(t,e);fl(t,e);cl(t,e);ll(t,e);it(t,279);return t.end()}var ul=["","","","","","","","","","","",""];function hl(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Ne)||[]).forEach(function(e){var n=Pe(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[ul.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 dl(){}function vl(){}var pl=/]*)>[\s\S]*<\/a:clrScheme>/;var ml=/]*)>[\s\S]*<\/a:fontScheme>/;var bl=/]*)>[\s\S]*<\/a:fmtScheme>/;function gl(e,r,t){r.themeElements={};var a;[["clrScheme",pl,hl],["fontScheme",ml,dl],["fmtScheme",bl,vl]].forEach(function(n){if(!(a=e.match(n[1])))throw new Error(n[0]+" not found in themeElements");n[2](a,r,t)})}var wl=/]*)>[\s\S]*<\/a:themeElements>/;function kl(e,r){if(!e||e.length===0)e=Tl();var t;var a={};if(!(t=e.match(wl)))throw new Error("themeElements not found in theme");gl(t[0],a,r);a.raw=e;return a}function Tl(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Oe];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";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 El(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=Ce(i,{type:"array"})}catch(f){return}var c=Se(s,"theme/theme/theme1.xml",true);if(!c)return;return kl(c,t)}function Sl(e){return e._R(4)}function yl(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=_l(e,4);break;case 2:r.xclrValue=ui(e,4);break;case 3:r.xclrValue=Sl(e,4);break;case 4:e.l+=4;break;}e.l+=8;return r}function _l(e,r){return rt(e,r)}function xl(e,r){return rt(e,r)}function Al(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]=yl(e,t);break;case 6:a[1]=xl(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 Cl(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(Al(e,t-e.l));return{ixfe:a,ext:i}}function Rl(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 Ol(e,r){return{flags:e._R(4),version:e._R(4),name:It(e,r-8)}}function Il(e){var r=tt(12+2*e.name.length);r._W(4,e.flags);r._W(4,e.version);Nt(e.name,r);return r.slice(0,r.l)}function Nl(e){var r=[];var t=e._R(4);while(t-- >0)r.push([e._R(4),e._R(4)]);return r}function Fl(e){var r=tt(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;default:if(!n&&t.WTF)throw new Error("unrecognized "+r[0]+" in metadata");}return e});return a}function Wl(){var e=[Oe];e.push('\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n'); -return e.join("")}function Hl(e){var r=[];if(!e)return r;var t=1;(e.match(Ne)||[]).forEach(function(e){var a=Pe(e);switch(a[0]){case"":;case"":break;case"]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}var $l=1024;function Yl(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[or("xml",null,{"xmlns:v":br.v,"xmlns:o":br.o,"xmlns:x":br.x,"xmlns:mv":br.mv}).replace(/\/>/,">"),or("o:shapelayout",or("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"}),or("v:shapetype",[or("v:stroke",null,{joinstyle:"miter"}),or("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202","o:spt":202,coordsize:t.join(","),path:a})];while($l",i,or("v:shadow",null,s),or("v:path",null,{"o:connecttype":"none"}),'
','',"","",cr("x:Anchor",[r.c+1,0,r.r+1,0,r.c+3,20,r.r+5,20].join(",")),cr("x:AutoFill","False"),cr("x:Row",String(r.r)),cr("x:Column",String(r.c)),e[1].hidden?"":"","",""])});n.push("");return n.join("")}function Kl(e,r,t,a){var n=Array.isArray(e);var i;r.forEach(function(r){var s=wt(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=St(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;--o){if(!t&&i.c[o].T)return;if(t&&!i.c[o].T)i.c.splice(o,1)}if(t&&a)for(o=0;o/))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=Pe(n[0]);var s={author:i.authorId&&t[i.authorId]||"sheetjsghost",ref:i.ref,guid:i.guid};var f=wt(i.ref);if(r.sheetRows&&r.sheetRows<=f.r)return;var c=e.match(/<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/);var l=!!c&&!!c[1]&&_f(c[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 ql(e){var r=[Oe,or("comments",null,{xmlns:mr[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=ze(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=[];if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);else e[1].forEach(function(e){if(e.a)a=t.indexOf(ze(e.a));n.push(e.t||"")});r.push('');if(n.length<=1)r.push(cr("t",ze(n[0]||"")));else{var i="Comment:\n "+n[0]+"\n";for(var s=1;s")});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Zl(e,r){var t=[];var a=false,n={},i=0;e.replace(Ne,function s(f,c){var l=Pe(f);switch(Le(l[0])){case"":break;case"":if(n.t!=null)t.push(n);break;case"":;case"":n.t=e.slice(i,c).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 Ql(e,r,t){var a=[Oe,or("ThreadedComments",null,{xmlns:pr.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(or("threadedComment",cr("text",i.t||""),f))})});a.push("");return a.join("")}function eo(e,r){var t=[];var a=false;e.replace(Ne,function n(e){var n=Pe(e);switch(Le(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 ro(e){var r=[Oe,or("personList",null,{xmlns:pr.TCMNT,"xmlns:x":mr[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(or("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}function to(e){var r={};r.iauthor=e._R(4);var t=ea(e,16);r.rfx=t.s;r.ref=kt(t.s);e.l+=16;return r}function ao(e,r){if(r==null)r=tt(36);r._W(4,e[1].iauthor);ra(e[0],r);r._W(4,0);r._W(4,0);r._W(4,0);r._W(4,0);return r}var no=It;function io(e){return Nt(e.slice(0,54))}function so(e,r){var t=[];var a=[];var n={};var i=false;at(e,function s(e,f,c){switch(c){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"+c.toString(16));}});return t}function fo(e){var r=nt();var t=[];it(r,628);it(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));it(r,632,io(e.a))})});it(r,631);it(r,633);e.forEach(function(e){e[1].forEach(function(a){a.iauthor=t.indexOf(a.a);var n={s:wt(e[0]),e:wt(e[0])};it(r,635,ao([n,a]));if(a.t&&a.t.length>0)it(r,637,Ut(a));it(r,636);delete a.iauthor})});it(r,634);it(r,629);return r.end()}var co="application/vnd.ms-office.vbaProject";function lo(e){var r=z.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*/,"");z.utils.cfb_add(r,n,e.FileIndex[a].content)});return z.write(r)}function oo(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")z.utils.cfb_add(e,n,r.FileIndex[a].content)})}var uo=["xlsb","xlsm","xlam","biff8","xla"];function ho(){return{"!type":"dialog"}}function vo(){return{"!type":"dialog"}}function po(){return{"!type":"macro"}}function mo(){return{"!type":"macro"}}var bo=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,c=n.length>0?parseInt(n,10)|0:0;if(i)c+=r.c;else--c;if(s)f+=r.r;else--f;return t+(i?"":"$")+pt(c)+(s?"":"$")+ut(f)}return function a(n,i){r=i;return n.replace(e,t)}}();var go=/(^|[^._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 wo=function(){return function e(r,t){return r.replace(go,function(e,r,a,n,i,s){var f=vt(n)-(a?0:t.c);var c=ot(s)-(i?0:t.r);var l=c==0?"":!i?"["+c+"]":c+1;var o=f==0?"":!a?"["+f+"]":f+1;return r+"R"+l+"C"+o})}}();function ko(e,r){return e.replace(go,function(e,t,a,n,i,s){return t+(a=="$"?a+n:pt(vt(n)+r.c))+(i=="$"?i+s:ut(ot(s)+r.r))})}function To(e,r,t){var a=Tt(r),n=a.s,i=wt(t);var s={r:i.r-n.r,c:i.c-n.c};return ko(e,s)}function Eo(e){if(e.length==1)return false;return true}function So(e){return e.replace(/_xlfn\./g,"")}function yo(e){e.l+=1;return}function _o(e,r){var t=e._R(r==1?1:2);return[t&16383,t>>14&1,t>>15&1]}function xo(e,r,t){var a=2;if(t){if(t.biff>=2&&t.biff<=5)return Ao(e,r,t);else if(t.biff==12)a=4}var n=e._R(a),i=e._R(a);var s=_o(e,2);var f=_o(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 Ao(e){var r=_o(e,2),t=_o(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 Co(e,r,t){if(t.biff<8)return Ao(e,r,t);var a=e._R(t.biff==12?4:2),n=e._R(t.biff==12?4:2);var i=_o(e,2);var s=_o(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 Ro(e,r,t){if(t&&t.biff>=2&&t.biff<=5)return Oo(e,r,t);var a=e._R(t&&t.biff==12?4:2);var n=_o(e,2);return{r:a,c:n[0],cRel:n[1],rRel:n[2]}}function Oo(e){var r=_o(e,2);var t=e._R(1);return{r:r[0],c:t,cRel:r[1],rRel:r[2]}}function Io(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 No(e,r,t){var a=t&&t.biff?t.biff:8;if(a>=2&&a<=5)return Fo(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 Fo(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 Do(e,r,t){var a=(e[e.l++]&96)>>5;var n=xo(e,t.biff>=2&&t.biff<=5?6:8,t);return[a,n]}function Po(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=xo(e,i,t);return[a,n,s]}function Lo(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 Mo(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 Uo(e,r,t){var a=(e[e.l++]&96)>>5;var n=Co(e,r-1,t);return[a,n]}function Bo(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t.biff==2?6:t.biff==12?14:7;return[a]}function Wo(e){var r=e[e.l+1]&1;var t=1;e.l+=4;return[r,t]}function Ho(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 zo(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 Vo(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 Go(e){var r=e[e.l+1]&255?1:0;e.l+=2;return[r,e._R(2)]}function jo(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=t&&t.biff==2?3:4;return[a]}function Xo(e){var r=e._R(1),t=e._R(1);return[r,t]}function $o(e){e._R(2);return Xo(e,2)}function Yo(e){e._R(2);return Xo(e,2)}function Ko(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Ro(e,0,t);return[a,n]}function Jo(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=No(e,0,t);return[a,n]}function qo(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=Ro(e,0,t);return[a,n,i]}function Zo(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(t&&t.biff<=3?1:2);return[ph[n],vh[n],a]}function Qo(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)]:eu(e);return[n,(i[0]===0?vh:dh)[i[1]]]}function eu(e){return[e[e.l+1]>>7,e._R(2)&32767]}function ru(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 Ia[e._R(1)]}function nu(e){e.l++;return e._R(2)}function iu(e){e.l++;return e._R(1)!==0}function su(e){e.l++;return ta(e,8)}function fu(e,r,t){e.l++;return Jn(e,r-1,t)}function cu(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]=Vn(e,1)?"TRUE":"FALSE";if(r!=12)e.l+=7;break;case 37:;case 16:t[1]=Ia[e[e.l]];e.l+=r==12?4:8;break;case 0:e.l+=8;break;case 1:t[1]=ta(e,8);break;case 2:t[1]=ri(e,0,{biff:r>0&&r<8?2:r});break;default:throw new Error("Bad SerAr: "+t[0]);}return t}function lu(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?ea:ki)(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]=cu(e,t.biff);return s}function uu(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 hu(e,r,t){if(t.biff==5)return du(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 du(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 vu(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 pu(e,r,t){var a=e._R(1)>>>5&3;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function mu(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 bu(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 gu=rt;var wu=rt;var ku=rt;function Tu(e,r,t){e.l+=2;return[Io(e,4,t)]}function Eu(e){e.l+=6;return[]}var Su=Tu;var yu=Eu;var _u=Eu;var xu=Tu;function Au(e){e.l+=2;return[jn(e),e._R(2)&1]}var Cu=Tu;var Ru=Au;var Ou=Eu;var Iu=Tu;var Nu=Tu;var Fu=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];function Du(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=Fu[t>>2&31];return{ixti:r,coltype:t&3,rt:s,idx:a,c:n,C:i}}function Pu(e){e.l+=2;return[e._R(4)]}function Lu(e,r,t){e.l+=5;e.l+=2;e.l+=t.biff==2?1:4;return["PTGSHEET"]}function Mu(e,r,t){e.l+=t.biff==2?4:5;return["PTGENDSHEET"]}function Uu(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function Bu(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function Wu(e){e.l+=4;return[0,0]}var Hu={1:{n:"PtgExp",f:tu},2:{n:"PtgTbl",f:ku},3:{n:"PtgAdd",f:yo},4:{n:"PtgSub",f:yo},5:{n:"PtgMul",f:yo},6:{n:"PtgDiv",f:yo},7:{n:"PtgPower",f:yo},8:{n:"PtgConcat",f:yo},9:{n:"PtgLt",f:yo},10:{n:"PtgLe",f:yo},11:{n:"PtgEq",f:yo},12:{n:"PtgGe",f:yo},13:{n:"PtgGt",f:yo},14:{n:"PtgNe",f:yo},15:{n:"PtgIsect",f:yo},16:{n:"PtgUnion",f:yo},17:{n:"PtgRange",f:yo},18:{n:"PtgUplus",f:yo},19:{n:"PtgUminus",f:yo},20:{n:"PtgPercent",f:yo},21:{n:"PtgParen",f:yo},22:{n:"PtgMissArg",f:yo},23:{n:"PtgStr",f:fu},26:{n:"PtgSheet",f:Lu},27:{n:"PtgEndSheet",f:Mu},28:{n:"PtgErr",f:au},29:{n:"PtgBool",f:iu},30:{n:"PtgInt",f:nu},31:{n:"PtgNum",f:su},32:{n:"PtgArray",f:Bo},33:{n:"PtgFunc",f:Zo},34:{n:"PtgFuncVar",f:Qo},35:{n:"PtgName",f:uu},36:{n:"PtgRef",f:Ko},37:{n:"PtgArea",f:Do},38:{n:"PtgMemArea",f:vu},39:{n:"PtgMemErr",f:gu},40:{n:"PtgMemNoMem",f:wu},41:{n:"PtgMemFunc",f:pu},42:{n:"PtgRefErr",f:mu},43:{n:"PtgAreaErr",f:Lo},44:{n:"PtgRefN",f:Jo},45:{n:"PtgAreaN",f:Uo},46:{n:"PtgMemAreaN",f:Uu},47:{n:"PtgMemNoMemN",f:Bu},57:{n:"PtgNameX",f:hu},58:{n:"PtgRef3d",f:qo},59:{n:"PtgArea3d",f:Po},60:{n:"PtgRefErr3d",f:bu},61:{n:"PtgAreaErr3d",f:Mo},255:{}};var zu={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 Vu={1:{n:"PtgElfLel",f:Au},2:{n:"PtgElfRw",f:Iu},3:{n:"PtgElfCol",f:Su},6:{n:"PtgElfRwV",f:Nu},7:{n:"PtgElfColV",f:xu},10:{n:"PtgElfRadical",f:Cu},11:{n:"PtgElfRadicalS",f:Ou},13:{n:"PtgElfColS",f:yu},15:{n:"PtgElfColSV",f:_u},16:{n:"PtgElfRadicalLel",f:Ru},25:{n:"PtgList",f:Du},29:{n:"PtgSxName",f:Pu},255:{}};var Gu={0:{n:"PtgAttrNoop",f:Wu},1:{n:"PtgAttrSemi",f:jo},2:{n:"PtgAttrIf",f:Vo},4:{n:"PtgAttrChoose",f:Ho},8:{n:"PtgAttrGoto",f:zo},16:{n:"PtgAttrSum",f:ru},32:{n:"PtgAttrBaxcel",f:Wo},33:{n:"PtgAttrBaxcel",f:Wo},64:{n:"PtgAttrSpace",f:$o},65:{n:"PtgAttrSpaceSemi",f:Yo},128:{n:"PtgAttrIfError",f:Go},255:{}};function ju(e,r,t,a){if(a.biff<8)return rt(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]=lu(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(rt(e,r));return i}function Xu(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=Hu[i]||Hu[zu[i]];if(i===24||i===25)n=(i===24?Vu:Gu)[e[e.l+1]];if(!n||!n.f){rt(e,r)}else{s.push([n.n,n.f(e,r,t)])}}return s}function $u(e){var r=[];for(var t=0;t=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};var Ku=new RegExp(/[^\w\u4E00-\u9FFF\u3040-\u30FF]/);function Ju(e,r){if(!e&&!(r&&r.biff<=5&&r.biff>=2))throw new Error("empty sheet name");if(Ku.test(e))return"'"+e+"'";return e}function qu(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 Zu(e,r,t){var a=qu(e,r,t);return a=="#REF"?a:Ju(a,t)}function Qu(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=[],c,l,o,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=ue(" ",e[0][p][1][1]);break;case 1:m=ue("\r",e[0][p][1][1]);break;default:m="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][p][1][0]);}l=l+m;p=-1}f.push(l+Yu[w[0]]+c);break;case"PtgIsect":c=f.pop();l=f.pop();f.push(l+" "+c);break;case"PtgUnion":c=f.pop();l=f.pop();f.push(l+","+c);break;case"PtgRange":c=f.pop();l=f.pop();f.push(l+":"+c);break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgAttrIfError":break;case"PtgRef":o=st(w[1][1],s,n);f.push(ct(o,i));break;case"PtgRefN":o=t?st(w[1][1],t,n):w[1][1];f.push(ct(o,i));break;case"PtgRef3d":u=w[1][1];o=st(w[1][2],s,n);v=Zu(a,u,n);var k=v;f.push(v+"!"+ct(o,i));break;case"PtgFunc":;case"PtgFuncVar":var T=w[1][0],E=w[1][1];if(!T)T=0;T&=127;var S=T==0?[]:f.slice(-T);f.length-=T;if(E==="User")E=S.shift();f.push(E+"("+S.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=ft(w[1][1],t?{s:t}:s,n);f.push(lt(d,n));break;case"PtgArea":d=ft(w[1][1],s,n);f.push(lt(d,n));break;case"PtgArea3d":u=w[1][1];d=w[1][2];v=Zu(a,u,n);f.push(v+"!"+lt(d,n));break;case"PtgAttrSum":f.push("SUM("+f.pop()+")");break;case"PtgAttrBaxcel":;case"PtgAttrSemi":break;case"PtgName":h=w[1][2];var y=(a.names||[])[h-1]||(a[0]||[])[h];var _=y?y.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 R=(qu(a,x,n)||"").split(";;");if(R[h-1])C=R[h-1];else C+="SH33TJSERRX"}f.push(C);break}if(!A)A={Name:"SH33TJSERRY"};f.push(A.Name);break;case"PtgParen":var O="(",I=")";if(p>=0){m="";switch(e[0][p][1][0]){case 2:O=ue(" ",e[0][p][1][1])+O;break;case 3:O=ue("\r",e[0][p][1][1])+O;break;case 4:I=ue(" ",e[0][p][1][1])+I;break;case 5:I=ue("\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(O+f.pop()+I);break;case"PtgRefErr":f.push("#REF!");break;case"PtgRefErr3d":f.push("#REF!");break;case"PtgExp":o={c:w[1][1],r:w[1][0]};var N={c:t.c,r:t.r};if(a.sharedf[kt(o)]){var F=a.sharedf[kt(o)];f.push(Qu(F,s,N,a,n))}else{var D=false;for(c=0;c!=a.arrayf.length;++c){l=a.arrayf[c];if(o.cl[0].e.c)continue;if(o.rl[0].e.r)continue;f.push(Qu(l[1],s,N,a,n));D=true;break}if(!D)f.push(w[1])}break;case"PtgArray":f.push("{"+$u(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=ue(" ",w[1][1]);break;case 5:L=false;case 1:m=ue("\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");return f[0]}function eh(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],rt(e,r-2)];var f=Xu(e,s,t);if(r!==s+n)i=ju(e,r-s-n,f,t);e.l=a;return[f,i]}function rh(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],rt(e,r-2)];var f=Xu(e,s,t);if(r!==s+n)i=ju(e,r-s-n,f,t);e.l=a;return[f,i]}function th(e,r,t,a){var n=e.l+r;var i=Xu(e,a,t);var s;if(n!==e.l)s=ju(e,n-e.l,i,t);return[i,s]}function ah(e,r,t){var a=e.l+r;var n,i=e._R(2);var s=Xu(e,i,t);if(i==65535)return[[],rt(e,r-2)];if(r!==i+2)n=ju(e,a-i-2,s,t);return[s,n]}function nh(e){var r;if(Vr(e,e.l+6)!==65535)return[ta(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 ih(e){if(e==null){var r=tt(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 aa(e);return aa(0)}function sh(e,r,t){var a=e.l+r;var n=di(e,6);if(t.biff==2)++e.l;var i=nh(e,8);var s=e._R(1);if(t.biff!=2){e._R(1);if(t.biff>=5){e._R(4)}}var f=rh(e,a-e.l,t);return{cell:n,val:i[0],formula:f,shared:s>>3&1,tt:i[1]}}function fh(e,r,t,a,n){var i=vi(r,t,n);var s=ih(e.v);var f=tt(6);var c=1|32;f._W(2,c);f._W(4,0);var l=tt(e.bf.length);for(var o=0;o0?ju(e,i,n,t):null;return[n,s]}var lh=ch;var oh=ch;var uh=ch;var hh=ch;var dh={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 vh={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 ph={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 mh(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(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function bh(e){var r="of:="+e.replace(go,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function gh(e){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 wh(e){return e.replace(/\./,"!")}var kh={};var Th={};var Eh=typeof Map!=="undefined";function Sh(e,r,t){var a=0,n=e.length;if(t){if(Eh?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var i=Eh?t.get(r):t[r];for(;a-1){t.width=gc(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 _h(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 xh(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){D.load(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 Ah(e,r,t,a,n,i){try{if(a.cellNF)e.z=D._table[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=ce(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(D._table[r]==null)D.load(M[r]||"General",r);if(e.t==="e")e.w=e.w||Ia[e.v];else if(r===0){if(e.t==="n"){if((e.v|0)===e.v)e.w=D._general_int(e.v);else e.w=D._general_num(e.v)}else if(e.t==="d"){var f=ee(e.v);if((f|0)===f)e.w=D._general_int(f);else e.w=D._general_num(f)}else if(e.v===undefined)return"";else e.w=D._general(e.v,Th)}else if(e.t==="d")e.w=D.format(r,ee(e.v),Th);else e.w=D.format(r,e.v,Th)}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=uc(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=uc(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 Ch(e,r,t){if(e&&e["!ref"]){var a=St(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=Et(t)}var Oh=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var Ih=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var Nh=/<(?:\w:)?hyperlink [^>]*>/gm;var Fh=/"(\w*:\w*)"/;var Dh=/<(?:\w:)?col\b[^>]*[\/]?>/g;var Ph=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var Lh=/<(?:\w:)?pageMargins[^>]*\/>/g;var Mh=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var Uh=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var Bh=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function Wh(e,r,t,a,n,i,s){if(!e)return e;if(!a)a={"!id":{}};if(m!=null&&r.dense==null)r.dense=m;var f=r.dense?[]:{};var c={s:{r:2e6,c:2e6},e:{r:0,c:0}};var l="",o="";var u=e.match(Ih);if(u){l=e.slice(0,u.index);o=e.slice(u.index+u[0].length)}else l=o=e;var h=l.match(Mh);if(h)zh(h[0],f,n,t);else if(h=l.match(Uh))Vh(h[0],h[1]||"",f,n,t,s,i);var d=(l.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(d>0){var v=l.slice(d,d+50).match(Fh);if(v)Rh(f,v[1])}var p=l.match(Bh);if(p&&p[1])td(p[1],n);var b=[];if(r.cellStyles){var g=l.match(Dh);if(g)qh(b,g)}if(u)id(u[1],f,r,c,i,s);var w=o.match(Ph);if(w)f["!autofilter"]=Qh(w[0]);var k=[];var T=o.match(Oh);if(T)for(d=0;d!=T.length;++d)k[d]=St(T[d].slice(T[d].indexOf('"')+1));var E=o.match(Nh);if(E)Yh(f,E,a);var S=o.match(Lh);if(S)f["!margins"]=Kh(Pe(S[0]));if(!f["!ref"]&&c.e.c>=c.s.c&&c.e.r>=c.s.r)f["!ref"]=Et(c);if(r.sheetRows>0&&f["!ref"]){var y=St(f["!ref"]);if(r.sheetRows<=+y.e.r){y.e.r=r.sheetRows-1;if(y.e.r>c.e.r)y.e.r=c.e.r;if(y.e.rc.e.c)y.e.c=c.e.c;if(y.e.c0)f["!cols"]=b;if(k.length>0)f["!merges"]=k;return f}function Hh(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function zh(e,r,t,a){var n=Pe(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=Be(Je(n.codeName))}function Vh(e,r,t,a,n){zh(e.slice(0,e.indexOf(">")),t,a,n)}function Gh(e,r,t,a,n){var i=false;var s={},f=null;if(a.bookType!=="xlsx"&&r.vbaraw){var c=r.SheetNames[t];try{if(r.Workbook)c=r.Workbook.Sheets[t].CodeName||c}catch(l){}i=true;s.codeName=qe(ze(c))}if(e&&e["!outline"]){var o={summaryBelow:1,summaryRight:1};if(e["!outline"].above)o.summaryBelow=0;if(e["!outline"].left)o.summaryRight=0;f=(f||"")+or("outlinePr",null,o)}if(!i&&!f)return;n[n.length]=or("sheetPr",f,s)}var jh=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var Xh=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function $h(e){var r={sheet:1};jh.forEach(function(t){if(e[t]!=null&&e[t])r[t]="1"});Xh.forEach(function(t){if(e[t]!=null&&!e[t])r[t]="0"});if(e.password)r.password=Qf(e.password).toString(16).toUpperCase();return or("sheetProtection",null,r)}function Yh(e,r,t){var a=Array.isArray(e);for(var n=0;n!=r.length;++n){var i=Pe(Je(r[n]),true);if(!i.ref)return;var s=((t||{})["!id"]||[])[i.id];if(s){i.Target=s.Target;if(i.location)i.Target+="#"+Be(i.location)}else{i.Target="#"+Be(i.location);s={Target:i.Target,TargetMode:"Internal"}}i.Rel=s;if(i.tooltip){i.Tooltip=i.tooltip;delete i.tooltip}var f=St(i.ref);for(var c=f.s.r;c<=f.e.r;++c)for(var l=f.s.c;l<=f.e.c;++l){var o=kt({c:l,r:c});if(a){if(!e[c])e[c]=[];if(!e[c][l])e[c][l]={t:"z",v:undefined};e[c][l].l=i}else{if(!e[o])e[o]={t:"z",v:undefined};e[o].l=i}}}}function Kh(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function Jh(e){_h(e);return or("pageMargins",null,e)}function qh(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Pe(r[a],true);if(n.hidden)n.hidden=Ke(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;kc(n.width)}Tc(n);while(i<=s)e[i++]=oe(n)}}function Zh(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=or("col",null,yh(n,a))}t[t.length]="";return t.join("")}function Qh(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function ed(e,r,t,a){var n=typeof e.ref=="string"?e.ref:Et(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var i=t.Workbook.Names;var s=Tt(n);if(s.s.r==s.e.r){s.e.r=Tt(r["!ref"]).e.r;n=Et(s)}for(var f=0;fa-z][^>]*)?\/?>/;function td(e,r){if(!r.Views)r.Views=[{}];(e.match(rd)||[]).forEach(function(e,t){var a=Pe(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(Ke(a.rightToLeft))r.Views[t].RTL=true})}function ad(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return or("sheetViews",or("sheetView",null,n),{})}function nd(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if(e.v===undefined&&typeof e.f!=="string"||e.t==="z"&&!e.f)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=Ia[e.v];break;case"d":if(a&&a.cellDates)n=ce(e.v,-1).toISOString();else{e=oe(e);e.t="n";n=""+(e.v=ee(ce(e.v)))}if(typeof e.z==="undefined")e.z=D._table[14];break;default:n=e.v;break;}var f=cr("v",ze(n)),c={r:r};var l=xh(a.cellXfs,e,a);if(l!==0)c.s=l;switch(e.t){case"n":break;case"d":c.t="d";break;case"b":c.t="b";break;case"e":c.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=cr("v",""+Sh(a.Strings,e.v,a.revStrings));c.t="s";break}c.t="str";break;}if(e.t!=i){e.t=i;e.v=s}if(typeof e.f=="string"&&e.f){var o=e.F&&e.F.slice(0,r.length)==r?{t:"array",ref:e.F}:null;f=or("f",ze(e.f),o)+(e.v!=null?f:"")}if(e.l)t["!links"].push([r,e.l]);if(e.D)c.cm=1;return or("c",f,c)}var id=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var i=rr("v"),s=rr("f");return function f(c,l,o,u,h,d){var v=0,p="",m=[],b=[],g=0,w=0,k=0,T="",E;var S,y=0,_=0;var x,A;var C=0,R=0;var O=Array.isArray(d.CellXf),I;var N=[];var F=[];var P=Array.isArray(l);var L=[],M={},U=false;var B=!!o.sheetStubs;for(var W=c.split(r),H=0,z=W.length;H!=z;++H){p=W[H].trim();var V=p.length;if(V===0)continue;var G=0;e:for(v=0;v":if(p[v-1]!="/"){++v;break e}if(o&&o.cellStyles){S=Pe(p.slice(G,v),true);y=S.r!=null?parseInt(S.r,10):y+1;_=-1;if(o.sheetRows&&o.sheetRows=v)break;S=Pe(p.slice(G,v),true);y=S.r!=null?parseInt(S.r,10):y+1;_=-1;if(o.sheetRows&&o.sheetRowsy-1)u.s.r=y-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;S=Pe(p.slice(0,w),true);if(!S.r)S.r=kt({r:y-1,c:_});T=p.slice(w);E={t:""};if((b=T.match(i))!=null&&b[1]!=="")E.v=Be(b[1]);if(o.cellFormula){if((b=T.match(s))!=null&&b[1]!==""){E.f=Be(Je(b[1])).replace(/\r\n/g,"\n");if(!o.xlfn)E.f=So(E.f);if(b[0].indexOf('t="array"')>-1){E.F=(T.match(n)||[])[1];if(E.F.indexOf(":")>-1)N.push([St(E.F),E.F])}else if(b[0].indexOf('t="shared"')>-1){A=Pe(b[0]);var X=Be(Je(b[1]));if(!o.xlfn)X=So(X);F[parseInt(A.si,10)]=[A,X,S.r]}}else if(b=T.match(/]*\/>/)){A=Pe(b[0]);if(F[A.si])E.f=To(F[A.si][1],F[A.si][2],S.r)}var $=wt(S.r);for(w=0;w=N[w][0].s.r&&$.r<=N[w][0].e.r)if($.c>=N[w][0].s.c&&$.c<=N[w][0].e.c)E.F=N[w][1]}if(S.t==null&&E.v===undefined){if(E.f||E.F){E.v=0;E.t="n"}else if(!B)continue;else E.t="z"}else E.t=S.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(!B)continue;E.t="z"}else E.v=parseFloat(E.v);break;case"s":if(typeof E.v=="undefined"){if(!B)continue;E.t="z"}else{x=kh[parseInt(E.v,10)];E.v=x.t;E.r=x.r;if(o.cellHTML)E.h=x.h}break;case"str":E.t="s";E.v=E.v!=null?Je(E.v):"";if(o.cellHTML)E.h=je(E.v);break;case"inlineStr":b=T.match(a);E.t="s";if(b!=null&&(x=_f(b[1]))){E.v=x.t;if(o.cellHTML)E.h=x.h}else E.v="";break;case"b":E.v=Ke(E.v);break;case"d":if(o.cellDates)E.v=ce(E.v,1);else{E.v=ee(ce(E.v,1));E.t="n"}break;case"e":if(!o||o.cellText!==false)E.w=E.v;E.v=Na[E.v];break;}C=R=0;I=null;if(O&&S.s!==undefined){I=d.CellXf[S.s];if(I!=null){if(I.numFmtId!=null)C=I.numFmtId;if(o.cellStyles){if(I.fillId!=null)R=I.fillId}}}Ah(E,C,R,o,h,d);if(o.cellDates&&O&&E.t=="n"&&D.is_date(D._table[C])){E.t="d";E.v=ne(E.v)}if(S.cm&&o.xlmeta){var Y=(o.xlmeta.Cell||[])[+S.cm-1];if(Y&&Y.type=="XLDAPR")E.D=true}if(P){var K=wt(S.r);if(!l[K.r])l[K.r]=[];l[K.r][K.c]=E}else l[S.r]=E}}if(L.length>0)l["!rows"]=L}}();function sd(e,r,t,a){var n=[],i=[],s=St(e["!ref"]),f="",c,l="",o=[],u=0,h=0,d=e["!rows"];var v=Array.isArray(e);var p={r:l},m,b=-1;for(h=s.s.c;h<=s.e.c;++h)o[h]=pt(h);for(u=s.s.r;u<=s.e.r;++u){i=[];l=ut(u);for(h=s.s.c;h<=s.e.c;++h){c=o[h]+l;var g=v?(e[u]||[])[h]:e[c];if(g===undefined)continue;if((f=nd(g,c,e,r,t,a))!=null)i.push(f)}if(i.length>0||d&&d[u]){p={r:l};if(d&&d[u]){m=d[u];if(m.hidden)p.hidden=1;b=-1;if(m.hpx)b=yc(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]=or("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]=or("row","",p)}}return n.join("")}function fd(e,r,t,a){var n=[Oe,or("worksheet",null,{xmlns:mr[0],"xmlns:r":pr.r})];var i=t.SheetNames[e],s=0,f="";var c=t.Sheets[i];if(c==null)c={};var l=c["!ref"]||"A1";var o=St(l);if(o.e.c>16383||o.e.r>1048575){if(r.WTF)throw new Error("Range "+l+" exceeds format limit A1:XFD1048576");o.e.c=Math.min(o.e.c,16383);o.e.r=Math.min(o.e.c,1048575);l=Et(o)}if(!a)a={};c["!comments"]=[];var u=[];Gh(c,t,e,r,n);n[n.length]=or("dimension",null,{ref:l});n[n.length]=ad(c,r,e,t);if(r.sheetFormat)n[n.length]=or("sheetFormatPr",null,{defaultRowHeight:r.sheetFormat.defaultRowHeight||"16",baseColWidth:r.sheetFormat.baseColWidth||"10",outlineLevelRow:r.sheetFormat.outlineLevelRow||"7"});if(c["!cols"]!=null&&c["!cols"].length>0)n[n.length]=Zh(c,c["!cols"]);n[s=n.length]="";c["!links"]=[];if(c["!ref"]!=null){f=sd(c,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(c["!protect"])n[n.length]=$h(c["!protect"]);if(c["!autofilter"]!=null)n[n.length]=ed(c["!autofilter"],c,t,e);if(c["!merges"]!=null&&c["!merges"].length>0)n[n.length]=Hh(c["!merges"]);var h=-1,d,v=-1;if(c["!links"].length>0){n[n.length]="";c["!links"].forEach(function(e){if(!e[1].Target)return;d={ref:e[0]};if(e[1].Target.charAt(0)!="#"){v=ja(a,-1,ze(e[1].Target).replace(/#.*$/,""),Ba.HLINK);d["r:id"]="rId"+v}if((h=e[1].Target.indexOf("#"))>-1)d.location=ze(e[1].Target.slice(h+1));if(e[1].Tooltip)d.tooltip=ze(e[1].Tooltip);n[n.length]=or("hyperlink",null,d)});n[n.length]=""}delete c["!links"];if(c["!margins"]!=null)n[n.length]=Jh(c["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=cr("ignoredErrors",or("ignoredError",null,{numberStoredAsText:1,sqref:l}));if(u.length>0){v=ja(a,-1,"../drawings/drawing"+(e+1)+".xml",Ba.DRAW);n[n.length]=or("drawing",null,{"r:id":"rId"+v});c["!drawing"]=u}if(c["!comments"].length>0){v=ja(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",Ba.VML);n[n.length]=or("legacyDrawing",null,{"r:id":"rId"+v});c["!legacy"]=v}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function cd(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 ld(e,r,t){var a=tt(17+8*16);var n=(t["!rows"]||[])[e]||{};a._W(4,e);a._W(4,0);var i=320;if(n.hpx)i=yc(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,c=a.l;a.l+=4;var l={r:e,c:0};for(var o=0;o<16;++o){if(r.s.c>o+1<<10||r.e.ca.l?a.slice(0,a.l):a}function od(e,r,t,a){var n=ld(a,t,r);if(n.length>17||(r["!rows"]||[])[a])it(e,0,n)}var ud=ea;var hd=ra;function dd(){}function vd(e,r){var t={};var a=e[e.l];++e.l;t.above=!(a&64);t.left=!(a&128);e.l+=18;t.name=Vt(e,r-19);return t}function pd(e,r,t){if(t==null)t=tt(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);ia({auto:1},t);t._W(-4,-1);t._W(-4,-1);Gt(e,t);return t.slice(0,t.l)}function md(e){var r=Bt(e);return[r]}function bd(e,r,t){if(t==null)t=tt(8);return Wt(r,t)}function gd(e){var r=Ht(e);return[r]}function wd(e,r,t){if(t==null)t=tt(4);return zt(r,t)}function kd(e){var r=Bt(e);var t=e._R(1);return[r,t,"b"]}function Td(e,r,t){if(t==null)t=tt(9);Wt(r,t);t._W(1,e.v?1:0);return t}function Ed(e){var r=Ht(e);var t=e._R(1);return[r,t,"b"]}function Sd(e,r,t){if(t==null)t=tt(5);zt(r,t);t._W(1,e.v?1:0);return t}function yd(e){var r=Bt(e);var t=e._R(1);return[r,t,"e"]}function _d(e,r,t){if(t==null)t=tt(9);Wt(r,t);t._W(1,e.v);return t}function xd(e){var r=Ht(e);var t=e._R(1);return[r,t,"e"]}function Ad(e,r,t){if(t==null)t=tt(8);zt(r,t);t._W(1,e.v);t._W(2,0);t._W(1,0);return t}function Cd(e){var r=Bt(e);var t=e._R(4);return[r,t,"s"]}function Rd(e,r,t){if(t==null)t=tt(12);Wt(r,t);t._W(4,r.v);return t}function Od(e){var r=Ht(e);var t=e._R(4);return[r,t,"s"]}function Id(e,r,t){if(t==null)t=tt(8);zt(r,t);t._W(4,r.v);return t}function Nd(e){var r=Bt(e);var t=ta(e);return[r,t,"n"]}function Fd(e,r,t){if(t==null)t=tt(16);Wt(r,t);aa(e.v,t);return t}function Dd(e){var r=Ht(e);var t=ta(e);return[r,t,"n"]}function Pd(e,r,t){if(t==null)t=tt(12);zt(r,t);aa(e.v,t);return t}function Ld(e){var r=Bt(e);var t=Jt(e);return[r,t,"n"]}function Md(e,r,t){if(t==null)t=tt(12);Wt(r,t);qt(e.v,t);return t}function Ud(e){var r=Ht(e);var t=Jt(e);return[r,t,"n"]}function Bd(e,r,t){if(t==null)t=tt(8);zt(r,t);qt(e.v,t);return t}function Wd(e){var r=Bt(e);var t=Pt(e);return[r,t,"is"]}function Hd(e){var r=Bt(e);var t=It(e);return[r,t,"str"]}function zd(e,r,t){if(t==null)t=tt(12+4*e.v.length);Wt(r,t);Nt(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function Vd(e){var r=Ht(e);var t=It(e);return[r,t,"str"]}function Gd(e,r,t){if(t==null)t=tt(8+4*e.v.length);zt(r,t);Nt(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function jd(e,r,t){var a=e.l+r;var n=Bt(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"b"];if(t.cellFormula){e.l+=2;var f=oh(e,a-e.l,t);s[3]=Qu(f,null,n,t.supbooks,t)}else e.l=a;return s}function Xd(e,r,t){var a=e.l+r;var n=Bt(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"e"];if(t.cellFormula){e.l+=2;var f=oh(e,a-e.l,t);s[3]=Qu(f,null,n,t.supbooks,t)}else e.l=a;return s}function $d(e,r,t){var a=e.l+r;var n=Bt(e);n.r=t["!row"];var i=ta(e);var s=[n,i,"n"];if(t.cellFormula){e.l+=2;var f=oh(e,a-e.l,t);s[3]=Qu(f,null,n,t.supbooks,t)}else e.l=a;return s}function Yd(e,r,t){var a=e.l+r;var n=Bt(e);n.r=t["!row"];var i=It(e);var s=[n,i,"str"];if(t.cellFormula){e.l+=2;var f=oh(e,a-e.l,t);s[3]=Qu(f,null,n,t.supbooks,t)}else e.l=a;return s}var Kd=ea;var Jd=ra;function qd(e,r){if(r==null)r=tt(4);r._W(4,e);return r}function Zd(e,r){var t=e.l+r;var a=ea(e,16);var n=jt(e);var i=It(e);var s=It(e);var f=It(e);e.l=t;var c={rfx:a,relId:n,loc:i,display:f};if(s)c.Tooltip=s;return c}function Qd(e,r){var t=tt(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));ra({s:wt(e[0]),e:wt(e[0])},t);Kt("rId"+r,t);var a=e[1].Target.indexOf("#");var n=a==-1?"":e[1].Target.slice(a+1);Nt(n||"",t);Nt(e[1].Tooltip||"",t);Nt("",t);return t.slice(0,t.l)}function ev(){}function rv(e,r,t){var a=e.l+r;var n=Zt(e,16);var i=e._R(1);var s=[n];s[2]=i;if(t.cellFormula){var f=lh(e,a-e.l,t);s[1]=f}else e.l=a;return s}function tv(e,r,t){var a=e.l+r;var n=ea(e,16);var i=[n];if(t.cellFormula){var s=hh(e,a-e.l,t);i[1]=s;e.l=a}else e.l=a;return i}function av(e,r,t){if(t==null)t=tt(18);var a=yh(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 nv=["left","right","top","bottom","header","footer"];function iv(e){var r={};nv.forEach(function(t){r[t]=ta(e,8)});return r}function sv(e,r){if(r==null)r=tt(6*8); -_h(e);nv.forEach(function(t){aa(e[t],r)});return r}function fv(e){var r=e._R(2);e.l+=28;return{RTL:r&32}}function cv(e,r,t){if(t==null)t=tt(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 lv(e){var r=tt(24);r._W(4,4);r._W(4,1);ra(e,r);return r}function ov(e,r){if(r==null)r=tt(16*4+2);r._W(2,e.password?Qf(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 uv(){}function hv(){}function dv(e,r,t,a,n,i,s){if(!e)return e;var f=r||{};if(!a)a={"!id":{}};if(m!=null&&f.dense==null)f.dense=m;var c=f.dense?[]:{};var l;var o={s:{r:2e6,c:2e6},e:{r:0,c:0}};var u=[];var h=false,d=false;var v,p,b,g,w,k,T,E,S;var y=[];f.biff=12;f["!row"]=0;var _=0,x=false;var A=[];var C={};var R=f.supbooks||n.supbooks||[[]];R.sharedf=C;R.arrayf=A;R.SheetNames=n.SheetNames||n.Sheets.map(function(e){return e.name});if(!f.supbooks){f.supbooks=R;if(n.Names)for(var O=0;O=O[0].s.r&&v.r<=O[0].e.r)if(w>=O[0].s.c&&w<=O[0].e.c){p.F=Et(O[0]);x=true}}if(!x&&e.length>3)p.f=e[3]}if(o.s.r>v.r)o.s.r=v.r;if(o.s.c>w)o.s.c=w;if(o.e.rv.r)o.s.r=v.r;if(o.s.c>w)o.s.c=w;if(o.e.r=e.s){I[e.e--]={width:e.w/256,hidden:!!(e.flags&1),level:e.level};if(!F){F=true;kc(e.w/256)}Tc(I[e.e+1])}break;case 161:c["!autofilter"]={ref:Et(e)};break;case 476:c["!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)c["!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(m);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"+m.toString(16));}},f);delete f.supbooks;delete f["!row"];if(!c["!ref"]&&(o.s.r<2e6||l&&(l.e.r>0||l.e.c>0||l.s.r>0||l.s.c>0)))c["!ref"]=Et(l||o);if(f.sheetRows&&c["!ref"]){var M=St(c["!ref"]);if(f.sheetRows<=+M.e.r){M.e.r=f.sheetRows-1;if(M.e.r>o.e.r)M.e.r=o.e.r;if(M.e.ro.e.c)M.e.c=o.e.c;if(M.e.c0)c["!merges"]=y;if(I.length>0)c["!cols"]=I;if(N.length>0)c["!rows"]=N;return c}function vv(e,r,t,a,n,i,s){if(r.v===undefined)return false;var f="";switch(r.t){case"b":f=r.v?"1":"0";break;case"d":r=oe(r);r.z=r.z||D._table[14];r.v=ee(ce(r.v));r.t="n";break;case"n":;case"e":f=""+r.v;break;default:f=r.v;break;}var c={r:t,c:a};c.s=xh(n.cellXfs,r,n);if(r.l)i["!links"].push([kt(c),r.l]);if(r.c)i["!comments"].push([kt(c),r.c]);switch(r.t){case"s":;case"str":if(n.bookSST){f=Sh(n.Strings,r.v,n.revStrings);c.t="s";c.v=f;if(s)it(e,18,Id(r,c));else it(e,7,Rd(r,c))}else{c.t="str";if(s)it(e,17,Gd(r,c));else it(e,6,zd(r,c))}return true;case"n":if(r.v==(r.v|0)&&r.v>-1e3&&r.v<1e3){if(s)it(e,13,Bd(r,c));else it(e,2,Md(r,c))}else{if(s)it(e,16,Pd(r,c));else it(e,5,Fd(r,c))}return true;case"b":c.t="b";if(s)it(e,15,Sd(r,c));else it(e,4,Td(r,c));return true;case"e":c.t="e";if(s)it(e,14,Ad(r,c));else it(e,3,_d(r,c));return true;}if(s)it(e,12,wd(r,c));else it(e,1,bd(r,c));return true}function pv(e,r,t,a){var n=St(r["!ref"]||"A1"),i,s="",f=[];it(e,145);var c=Array.isArray(r);var l=n.e.r;if(r["!rows"])l=Math.max(n.e.r,r["!rows"].length-1);for(var o=n.s.r;o<=l;++o){s=ut(o);od(e,r,n,o);var u=false;if(o<=n.e.r)for(var h=n.s.c;h<=n.e.c;++h){if(o===n.s.r)f[h]=pt(h);i=f[h]+s;var d=c?(r[o]||[])[h]:r[i];if(!d){u=false;continue}u=vv(e,d,o,h,a,r,u)}}it(e,146)}function mv(e,r){if(!r||!r["!merges"])return;it(e,177,qd(r["!merges"].length));r["!merges"].forEach(function(r){it(e,176,Jd(r))});it(e,178)}function bv(e,r){if(!r||!r["!cols"])return;it(e,390);r["!cols"].forEach(function(r,t){if(r)it(e,60,av(t,r))});it(e,391)}function gv(e,r){if(!r||!r["!ref"])return;it(e,648);it(e,649,lv(St(r["!ref"])));it(e,650)}function wv(e,r,t){r["!links"].forEach(function(r){if(!r[1].Target)return;var a=ja(t,-1,r[1].Target.replace(/#.*$/,""),Ba.HLINK);it(e,494,Qd(r,a))});delete r["!links"]}function kv(e,r,t,a){if(r["!comments"].length>0){var n=ja(a,-1,"../drawings/vmlDrawing"+(t+1)+".vml",Ba.VML);it(e,551,Kt("rId"+n));r["!legacy"]=n}}function Tv(e,r,t,a){if(!r["!autofilter"])return;var n=r["!autofilter"];var i=typeof n.ref==="string"?n.ref:Et(n.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var s=t.Workbook.Names;var f=Tt(i);if(f.s.r==f.e.r){f.e.r=Tt(r["!ref"]).e.r;i=Et(f)}for(var c=0;c16383||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"]=[];it(n,129);if(t.vbaraw||s["!outline"])it(n,147,pd(f,s["!outline"]));it(n,148,hd(l));Ev(n,s,t.Workbook);Sv(n,s);bv(n,s,e,r,t);pv(n,s,e,r,t);yv(n,s);Tv(n,s,t,e);mv(n,s);wv(n,s,a);if(s["!margins"])it(n,476,sv(s["!margins"]));if(!r||r.ignoreEC||r.ignoreEC==void 0)gv(n,s);kv(n,s,e,a);it(n,130);return n.end()}function xv(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=Be((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 Av(e,r,t,a,n,i){var s=i||{"!type":"chart"};if(!e)return i;var f=0,c=0,l="A";var o={s:{r:2e6,c:2e6},e:{r:0,c:0}};(e.match(/[\s\S]*?<\/c:numCache>/gm)||[]).forEach(function(e){var r=xv(e);o.s.r=o.s.c=0;o.e.c=f;l=pt(f);r[0].forEach(function(e,t){s[l+ut(t)]={t:"n",v:e,z:r[1]};c=t});if(o.e.r0)s["!ref"]=Et(o);return s}function Cv(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(Mh);if(f)zh(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 Rv(e,r,t,a){var n=[Oe,or("chartsheet",null,{xmlns:mr[0],"xmlns:r":pr.r})];n[n.length]=or("drawing",null,{"r:id":"rId1"});ja(a,-1,"../drawings/drawing"+(e+1)+".xml",Ba.DRAW);if(n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function Ov(e,r){e.l+=10;var t=It(e,r-10);return{name:t}}function Iv(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;at(e,function c(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}function Nv(){var e=nt();it(e,129);it(e,130);return e.end()}var Fv=[["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 Dv=[["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 Pv=[];var Lv=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function Mv(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]]=Ke(a[i[0]]);break;case"int":if(typeof a[i[0]]=="string")a[i[0]]=parseInt(a[i[0]],10);break;}}}}function Uv(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]]=Ke(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function Bv(e){Uv(e.WBProps,Fv);Uv(e.CalcPr,Lv);Mv(e.WBView,Dv);Mv(e.Sheets,Pv);Th.date1904=Ke(e.WBProps.date1904)}function Wv(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return Ke(e.Workbook.WBProps.date1904)?"true":"false"}var Hv="][*?/\\".split("");function zv(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;Hv.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function Vv(e,r,t){e.forEach(function(a,n){zv(a);for(var i=0;i22)throw new Error("Bad Code Name: Worksheet"+s)}})}function Gv(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||[];Vv(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":Fv.forEach(function(e){if(o[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=Ke(o[e[0]]);break;case"int":t.WBProps[e[0]]=parseInt(o[e[0]],10);break;default:t.WBProps[e[0]]=o[e[0]];}});if(o.codeName)t.WBProps.CodeName=Je(o.codeName);break;case"":break;case"":break;case"":;case"":break;case"":delete o[0];t.WBView.push(o);break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":a=false;break;case"":{i.Ref=Be(Je(e.slice(s,l)));t.Names.push(i)}break;case"":break;case"":delete o[0];t.CalcPr=o;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){Fv.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]=or("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:ze(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]=or("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]=or("definedName",ze(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Yv(e,r){var t={};t.Hidden=e._R(4);t.iTabID=e._R(4);t.strRelID=Yt(e,r-8);t.name=It(e);return t}function Kv(e,r){if(!r)r=tt(127);r._W(4,e.Hidden);r._W(4,e.iTabID);Kt(e.strRelID,r);Nt(e.name.slice(0,31),r);return r.length>r.l?r.slice(0,r.l):r}function Jv(e,r){var t={};var a=e._R(4);t.defaultThemeVersion=e._R(4);var n=r>8?It(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 qv(e,r){if(!r)r=tt(72);var t=0;if(e){if(e.filterPrivacy)t|=8}r._W(4,t);r._W(4,0);Gt(e&&e.CodeName||"ThisWorkbook",r);return r.slice(0,r.l)}function Zv(e,r){var t={};e._R(4);t.ArchID=e._R(4);e.l+=r-8;return t}function Qv(e,r,t){var a=e.l+r;e.l+=4;e.l+=1;var n=e._R(4);var i=$t(e);var s=uh(e,0,t);var f=jt(e);e.l=a;var c={Name:i,Ptg:s};if(n<268435455)c.Sheet=n;if(f)c.Comment=f;return c}function ep(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=[];fm[16]={n:"BrtFRTArchID$",f:Zv};at(e,function f(e,c,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=Qu(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(c.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);Bv(t);t.Names=i;t.supbooks=s;return t}function rp(e,r){it(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]};it(e,156,Kv(n))}it(e,144)}function tp(r,t){if(!t)t=tt(127);for(var a=0;a!=4;++a)t._W(4,0);Nt("SheetJS",t);Nt(e.version,t);Nt(e.version,t);Nt("7262",t);return t.length>t.l?t.slice(0,t.l):t}function ap(e,r){if(!r)r=tt(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 np(e,r){if(!r.Workbook||!r.Workbook.Sheets)return;var t=r.Workbook.Sheets;var a=0,n=-1,i=-1;for(;an)return;it(e,135);it(e,158,ap(n));it(e,136)}function ip(e,r){var t=nt();it(t,131);it(t,128,tp());it(t,153,qv(e.Workbook&&e.Workbook.WBProps||null));np(t,e,r);rp(t,e,r);it(t,132);return t.end()}function sp(e,r,t){if(r.slice(-4)===".bin")return ep(e,t);return Xv(e,t)}function fp(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return dv(e,a,t,n,i,s,f);return Wh(e,a,t,n,i,s,f)}function cp(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return Iv(e,a,t,n,i,s,f);return Cv(e,a,t,n,i,s,f)}function lp(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return po(e,a,t,n,i,s,f);return mo(e,a,t,n,i,s,f)}function op(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return ho(e,a,t,n,i,s,f);return vo(e,a,t,n,i,s,f)}function up(e,r,t,a){if(r.slice(-4)===".bin")return Qc(e,t,a);return Lc(e,t,a)}function hp(e,r,t){return kl(e,t)}function dp(e,r,t){if(r.slice(-4)===".bin")return Ff(e,t);return Rf(e,t)}function vp(e,r,t){if(r.slice(-4)===".bin")return so(e,t);return Jl(e,t)}function pp(e,r,t){if(r.slice(-4)===".bin")return Vl(e,r,t);return Hl(e,r,t)}function mp(e,r,t,a){if(t.slice(-4)===".bin")return jl(e,r,t,a);return Gl(e,r,t,a)}function bp(e,r,t){if(r.slice(-4)===".bin")return Ml(e,r,t);return Bl(e,r,t)}function gp(e,r,t){return(r.slice(-4)===".bin"?ip:$v)(e,t)}function wp(e,r,t,a,n){return(r.slice(-4)===".bin"?_v:fd)(e,t,a,n)}function kp(e,r,t,a,n){return(r.slice(-4)===".bin"?Nv:Rv)(e,t,a,n)}function Tp(e,r,t){return(r.slice(-4)===".bin"?ol:Mc)(e,t)}function Ep(e,r,t){return(r.slice(-4)===".bin"?Lf:If)(e,t)}function Sp(e,r,t){return(r.slice(-4)===".bin"?fo:ql)(e,t)}function yp(e){return(e.slice(-4)===".bin"?Ul:Wl)()}var _p=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var xp=/([\w:]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;function Ap(e,r){var t=e.split(/\s+/);var a=[];if(!r)a[0]=t[0];if(t.length===1)return a;var n=e.match(_p),i,s,f,c;if(n)for(c=0;c!=n.length;++c){i=n[c].match(xp);if((s=i[1].indexOf(":"))===-1)a[i[1]]=i[2].slice(1,i[2].length-1);else{if(i[1].slice(0,6)==="xmlns:")f="xmlns"+i[1].slice(6);else f=i[1].slice(s+1);a[f]=i[2].slice(1,i[2].length-1)}}return a}function Cp(e){var r=e.split(/\s+/);var t={};if(r.length===1)return t;var a=e.match(_p),n,i,s,f;if(a)for(f=0;f!=a.length;++f){n=a[f].match(xp);if((i=n[1].indexOf(":"))===-1)t[n[1]]=n[2].slice(1,n[2].length-1);else{if(n[1].slice(0,6)==="xmlns:")s="xmlns"+n[1].slice(6);else s=n[1].slice(i+1);t[s]=n[2].slice(1,n[2].length-1)}}return t}function Rp(e,r){var t=L[e]||Be(e);if(t==="General")return D._general(r);return D.format(t,r)}function Op(e,r,t,a){var n=a;switch((t[0].match(/dt:dt="([\w.]+)"/)||["",""])[1]){case"boolean":n=Ke(a);break;case"i2":;case"int":n=parseInt(a,10);break;case"r4":;case"float":n=parseFloat(a);break;case"date":;case"dateTime.tz":n=ce(a);break;case"i8":;case"string":;case"fixed":;case"uuid":;case"bin.base64":break;default:throw new Error("bad custprop:"+t[0]);}e[Be(r)]=n}function Ip(e,r,t){if(e.t==="z")return;if(!t||t.cellText!==false)try{if(e.t==="e"){e.w=e.w||Ia[e.v]}else if(r==="General"){if(e.t==="n"){if((e.v|0)===e.v)e.w=D._general_int(e.v);else e.w=D._general_num(e.v)}else e.w=D._general(e.v)}else e.w=Rp(r||"General",e.v)}catch(a){if(t.WTF)throw a}try{var n=L[r]||r||"General";if(t.cellNF)e.z=n;if(t.cellDates&&e.t=="n"&&D.is_date(n)){var i=D.parse_date_code(e.v);if(i){e.t="d";e.v=new Date(i.y,i.m-1,i.d,i.H,i.M,i.S,i.u)}}}catch(a){if(t.WTF)throw a}}function Np(e,r,t){if(t.cellStyles){if(r.Interior){var a=r.Interior;if(a.Pattern)a.patternType=xc[a.Pattern]||a.Pattern}}e[r.ID]=r}function Fp(e,r,t,a,n,i,s,f,c,l){var o="General",u=a.StyleID,h={};l=l||{};var d=[];var v=0;if(u===undefined&&f)u=f.StyleID;if(u===undefined&&s)u=s.StyleID;while(i[u]!==undefined){if(i[u].nf)o=i[u].nf;if(i[u].Interior)d.push(i[u].Interior);if(!i[u].Parent)break;u=i[u].Parent}switch(t.Type){case"Boolean":a.t="b";a.v=Ke(e);break;case"String":a.t="s";a.r=$e(Be(e));a.v=e.indexOf("<")>-1?Be(r||e).replace(/<.*?>/g,""):a.r;break;case"DateTime":if(e.slice(-1)!="Z")e+="Z";a.v=(ce(e)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(a.v!==a.v)a.v=Be(e);else if(a.v<60)a.v=a.v-1;if(!o||o=="General")o="yyyy-mm-dd";case"Number":if(a.v===undefined)a.v=+e;if(!a.t)a.t="n";break;case"Error":a.t="e";a.v=Na[e];if(l.cellText!==false)a.w=e;break;default:if(e==""&&r==""){a.t="z"}else{a.t="s";a.v=$e(r||e)}break;}Ip(a,o,l);if(l.cellFormula!==false){if(a.Formula){var p=Be(a.Formula);if(p.charCodeAt(0)==61)p=p.slice(1);a.f=bo(p,n);delete a.Formula;if(a.ArrayRange=="RC")a.F=bo("RC:RC",n);else if(a.ArrayRange){a.F=bo(a.ArrayRange,n);c.push([St(a.F),a.F])}}else{for(v=0;v=c[v][0].s.r&&n.r<=c[v][0].e.r)if(n.c>=c[v][0].s.c&&n.c<=c[v][0].e.c)a.F=c[v][1]}}if(l.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 Dp(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 Pp(e,r){var t=r||{};P(D);var n=d(dr(e));if(t.type=="binary"||t.type=="array"||t.type=="base64"){if(typeof a!=="undefined")n=a.utils.decode(65001,o(n));else n=Je(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=oe(t);f.type="string";return mf.to_workbook(n,f)}if(i.indexOf("=0)s=true});if(s)return Cm.to_workbook(n,t);var c;var l=[],u;if(m!=null&&t.dense==null)t.dense=m;var h={},v=[],p=t.dense?[]:{},b="";var g={},w={};var k=Ap(''),T=0;var E=0,S=0;var y={s:{r:2e6,c:2e6},e:{r:0,c:0}};var _={},x={};var A="",C=0;var R=[];var O={},I={},N=0,F=[];var M=[],U={};var B=[],W,H=false;var z=[];var V=[],G={},j=0,X=0;var $={Sheets:[],WBProps:{date1904:false}},Y={};vr.lastIndex=0;n=n.replace(//gm,"");var K="";while(c=vr.exec(n))switch(c[3]=(K=c[3]).toLowerCase()){case"data":if(K=="data"){if(c[1]==="/"){if((u=l.pop())[0]!==c[3])throw new Error("Bad state: "+u.join("|"))}else if(c[0].charAt(c[0].length-2)!=="/")l.push([c[3],true]);break}if(l[l.length-1][1])break;if(c[1]==="/")Fp(n.slice(T,c.index),A,k,l[l.length-1][0]=="comment"?U:g,{c:E,r:S},_,B[E],w,z,t);else{A="";k=Ap(c[0]);T=c.index+c[0].length}break;case"cell":if(c[1]==="/"){if(M.length>0)g.c=M;if((!t.sheetRows||t.sheetRows>S)&&g.v!==undefined){if(t.dense){if(!p[S])p[S]=[];p[S][E]=g}else p[pt(E)+ut(S)]=g}if(g.HRef){g.l={Target:Be(g.HRef)};if(g.HRefScreenTip)g.l.Tooltip=g.HRefScreenTip;delete g.HRef;delete g.HRefScreenTip}if(g.MergeAcross||g.MergeDown){j=E+(parseInt(g.MergeAcross,10)|0);X=S+(parseInt(g.MergeDown,10)|0);R.push({s:{c:E,r:S},e:{c:j,r:X}})}if(!t.sheetStubs){if(g.MergeAcross)E=j+1;else++E}else if(g.MergeAcross||g.MergeDown){for(var J=E;J<=j;++J){for(var q=S;q<=X;++q){if(J>E||q>S){if(t.dense){if(!p[q])p[q]=[];p[q][J]={t:"z"}}else p[pt(J)+ut(q)]={t:"z"}}}}E=j+1}else++E}else{g=Cp(c[0]);if(g.Index)E=+g.Index-1;if(Ey.e.c)y.e.c=E;if(c[0].slice(-2)==="/>")++E;M=[]}break;case"row":if(c[1]==="/"||c[0].slice(-2)==="/>"){if(Sy.e.r)y.e.r=S;if(c[0].slice(-2)==="/>"){w=Ap(c[0]);if(w.Index)S=+w.Index-1}E=0;++S}else{w=Ap(c[0]);if(w.Index)S=+w.Index-1;G={};if(w.AutoFitHeight=="0"||w.Height){G.hpx=parseInt(w.Height,10);G.hpt=yc(G.hpx);V[S]=G}if(w.Hidden=="1"){G.hidden=true;V[S]=G}}break;case"worksheet":if(c[1]==="/"){if((u=l.pop())[0]!==c[3])throw new Error("Bad state: "+u.join("|"));v.push(b);if(y.s.r<=y.e.r&&y.s.c<=y.e.c){p["!ref"]=Et(y);if(t.sheetRows&&t.sheetRows<=y.e.r){p["!fullref"]=p["!ref"];y.e.r=t.sheetRows-1;p["!ref"]=Et(y)}}if(R.length)p["!merges"]=R;if(B.length>0)p["!cols"]=B;if(V.length>0)p["!rows"]=V;h[b]=p}else{y={s:{r:2e6,c:2e6},e:{r:0,c:0}};S=E=0;l.push([c[3],false]);u=Ap(c[0]);b=Be(u.Name);p=t.dense?[]:{};R=[];z=[];V=[];Y={name:b,Hidden:0};$.Sheets.push(Y)}break;case"table":if(c[1]==="/"){if((u=l.pop())[0]!==c[3])throw new Error("Bad state: "+u.join("|"))}else if(c[0].slice(-2)=="/>")break;else{l.push([c[3],false]);B=[];H=false}break;case"style":if(c[1]==="/")Np(_,x,t);else x=Ap(c[0]);break;case"numberformat":x.nf=Be(Ap(c[0]).Format||"General");if(L[x.nf])x.nf=L[x.nf];for(var Z=0;Z!=392;++Z)if(D._table[Z]==x.nf)break;if(Z==392)for(Z=57;Z!=392;++Z)if(D._table[Z]==null){D.load(x.nf,Z);break}break;case"column":if(l[l.length-1][0]!=="table")break;W=Ap(c[0]);if(W.Hidden){W.hidden=true;delete W.Hidden}if(W.Width)W.wpx=parseInt(W.Width,10);if(!H&&W.wpx>10){H=true;pc=hc;for(var Q=0;Q0)te.Sheet=$.Sheets.length-1;$.Names.push(te);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(c[0].slice(-2)==="/>")break;else if(c[1]==="/")A+=n.slice(C,c.index);else C=c.index+c[0].length;break;case"interior":if(!t.cellStyles)break;x.Interior=Ap(c[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(c[0].slice(-2)==="/>")break;else if(c[1]==="/")pn(O,K,n.slice(N,c.index));else N=c.index+c[0].length;break;case"paragraphs":break;case"styles":;case"workbook":if(c[1]==="/"){if((u=l.pop())[0]!==c[3])throw new Error("Bad state: "+u.join("|"))}else l.push([c[3],false]);break;case"comment":if(c[1]==="/"){if((u=l.pop())[0]!==c[3])throw new Error("Bad state: "+u.join("|"));Dp(U);M.push(U)}else{l.push([c[3],false]);u=Ap(c[0]);U={a:u.Author}}break;case"autofilter":if(c[1]==="/"){if((u=l.pop())[0]!==c[3])throw new Error("Bad state: "+u.join("|"))}else if(c[0].charAt(c[0].length-2)!=="/"){var ae=Ap(c[0]);p["!autofilter"]={ref:bo(ae.Range).replace(/\$/g,"") -};l.push([c[3],true])}break;case"name":break;case"datavalidation":if(c[1]==="/"){if((u=l.pop())[0]!==c[3])throw new Error("Bad state: "+u.join("|"))}else{if(c[0].charAt(c[0].length-2)!=="/")l.push([c[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(c[1]==="/"){if((u=l.pop())[0]!==c[3])throw new Error("Bad state: "+u.join("|"))}else if(c[0].charAt(c[0].length-2)!=="/")l.push([c[3],true]);break;case"null":break;default:if(l.length==0&&c[3]=="document")return Um(n,t);if(l.length==0&&c[3]=="uof")return Um(n,t);var ne=true;switch(l[l.length-1][0]){case"officedocumentsettings":switch(c[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:ne=false;}break;case"componentoptions":switch(c[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:ne=false;}break;case"excelworkbook":switch(c[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:ne=false;}break;case"workbookoptions":switch(c[3]){case"owcversion":break;case"height":break;case"width":break;default:ne=false;}break;case"worksheetoptions":switch(c[3]){case"visible":if(c[0].slice(-2)==="/>"){}else if(c[1]==="/")switch(n.slice(N,c.index)){case"SheetHidden":Y.Hidden=1;break;case"SheetVeryHidden":Y.Hidden=2;break;}else N=c.index+c[0].length;break;case"header":if(!p["!margins"])_h(p["!margins"]={},"xlml");if(!isNaN(+Pe(c[0]).Margin))p["!margins"].header=+Pe(c[0]).Margin;break;case"footer":if(!p["!margins"])_h(p["!margins"]={},"xlml");if(!isNaN(+Pe(c[0]).Margin))p["!margins"].footer=+Pe(c[0]).Margin;break;case"pagemargins":var ie=Pe(c[0]);if(!p["!margins"])_h(p["!margins"]={},"xlml");if(!isNaN(+ie.Top))p["!margins"].top=+ie.Top;if(!isNaN(+ie.Left))p["!margins"].left=+ie.Left;if(!isNaN(+ie.Right))p["!margins"].right=+ie.Right;if(!isNaN(+ie.Bottom))p["!margins"].bottom=+ie.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:ne=false;}break;case"pivottable":;case"pivotcache":switch(c[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:ne=false;}break;case"pagebreaks":switch(c[3]){case"colbreaks":break;case"colbreak":break;case"rowbreaks":break;case"rowbreak":break;case"colstart":break;case"colend":break;case"rowend":break;default:ne=false;}break;case"autofilter":switch(c[3]){case"autofiltercolumn":break;case"autofiltercondition":break;case"autofilterand":break;case"autofilteror":break;default:ne=false;}break;case"querytable":switch(c[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:ne=false;}break;case"datavalidation":switch(c[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:ne=false;}break;case"sorting":;case"conditionalformatting":switch(c[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:ne=false;}break;case"mapinfo":;case"schema":;case"data":switch(c[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:ne=false;}break;case"smarttags":break;default:ne=false;break;}if(ne)break;if(c[3].match(/!\[CDATA/))break;if(!l[l.length-1][1])throw"Unrecognized tag: "+c[3]+"|"+l.join("|");if(l[l.length-1][0]==="customdocumentproperties"){if(c[0].slice(-2)==="/>")break;else if(c[1]==="/")Op(I,K,F,n.slice(N,c.index));else{F=c;N=c.index+c[0].length}break}if(t.WTF)throw"Unrecognized tag: "+c[3]+"|"+l.join("|");}var se={};if(!t.bookSheets&&!t.bookProps)se.Sheets=h;se.SheetNames=v;se.Workbook=$;se.SSF=D.get_table();se.Props=O;se.Custprops=I;return se}function Lp(e,r){db(r=r||{});switch(r.type||"base64"){case"base64":return Pp(g.decode(e),r);case"binary":;case"buffer":;case"file":return Pp(e,r);case"array":return Pp(A(e),r);}}function Mp(e,r){var t=[];if(e.Props)t.push(mn(e.Props,r));if(e.Custprops)t.push(bn(e.Props,e.Custprops,r));return t.join("")}function Up(){return""}function Bp(e,r){var t=[''];r.cellXfs.forEach(function(e,r){var a=[];a.push(or("NumberFormat",null,{"ss:Format":ze(D._table[e.numFmtId])}));var n={"ss:ID":"s"+(21+r)};t.push(or("Style",a.join(""),n))});return or("Styles",t.join(""))}function Wp(e){return or("NamedRange",null,{"ss:Name":e.Name,"ss:RefersTo":"="+wo(e.Ref,{r:0,c:0})})}function Hp(e){if(!((e||{}).Workbook||{}).Names)return"";var r=e.Workbook.Names;var t=[];for(var a=0;a");if(e["!margins"].header)n.push(or("Header",null,{"x:Margin":e["!margins"].header}));if(e["!margins"].footer)n.push(or("Footer",null,{"x:Margin":e["!margins"].footer}));n.push(or("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(or("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(cr("ProtectContents","True"));if(e["!protect"].objects)n.push(cr("ProtectObjects","True"));if(e["!protect"].scenarios)n.push(cr("ProtectScenarios","True"));if(e["!protect"].selectLockedCells!=null&&!e["!protect"].selectLockedCells)n.push(cr("EnableSelection","NoSelection"));else if(e["!protect"].selectUnlockedCells!=null&&!e["!protect"].selectUnlockedCells)n.push(cr("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 or("WorksheetOptions",n.join(""),{xmlns:br.x})}function Gp(e){return e.map(function(e){var r=Ye(e.t||"");var t=or("ss:Data",r,{xmlns:"http://www.w3.org/TR/REC-html40"});return or("Comment",t,{"ss:Author":e.a})}).join("")}function jp(e,r,t,a,n,i,s){if(!e||e.v==undefined&&e.f==undefined)return"";var f={};if(e.f)f["ss:Formula"]="="+ze(wo(e.f,s));if(e.F&&e.F.slice(0,r.length)==r){var c=wt(e.F.slice(r.length+1));f["ss:ArrayRange"]="RC:R"+(c.r==s.r?"":"["+(c.r-s.r)+"]")+"C"+(c.c==s.c?"":"["+(c.c-s.c)+"]")}if(e.l&&e.l.Target){f["ss:HRef"]=ze(e.l.Target);if(e.l.Tooltip)f["x:HRefScreenTip"]=ze(e.l.Tooltip)}if(t["!merges"]){var l=t["!merges"];for(var o=0;o!=l.length;++o){if(l[o].s.c!=s.c||l[o].s.r!=s.r)continue;if(l[o].e.c>l[o].s.c)f["ss:MergeAcross"]=l[o].e.c-l[o].s.c;if(l[o].e.r>l[o].s.r)f["ss:MergeDown"]=l[o].e.r-l[o].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=Ia[e.v];break;case"d":u="DateTime";h=new Date(e.v).toISOString();if(e.z==null)e.z=e.z||D._table[14];break;case"s":u="String";h=Xe(e.v||"");break;}var d=xh(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+=Gp(e.c);return or("Cell",p,f)}function Xp(e,r){var t='"}function $p(e,r,t,a){if(!e["!ref"])return"";var n=St(e["!ref"]);var i=e["!merges"]||[],s=0;var f=[];if(e["!cols"])e["!cols"].forEach(function(e,r){Tc(e);var t=!!e.width;var a=yh(r,e);var n={"ss:Index":r+1};if(t)n["ss:Width"]=mc(a.width);if(e.hidden)n["ss:Hidden"]="1";f.push(or("Column",null,n))});var c=Array.isArray(e);for(var l=n.s.r;l<=n.e.r;++l){var o=[Xp(l,(e["!rows"]||[])[l])];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>l)continue;if(i[s].e.c");if(o.length>2)f.push(o.join(""))}return f.join("")}function Yp(e,r,t){var a=[];var n=t.SheetNames[e];var i=t.Sheets[n];var s=i?zp(i,r,e,t):"";if(s.length>0)a.push(""+s+"");s=i?$p(i,r,e,t):"";if(s.length>0)a.push(""+s+"
");a.push(Vp(i,r,e,t));return a.join("")}function Kp(e,r){if(!r)r={};if(!e.SSF)e.SSF=D.get_table();if(e.SSF){P(D);D.load_table(e.SSF);r.revssf=q(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF;r.cellXfs=[];xh(r.cellXfs,{},{revssf:{General:0}})}var t=[];t.push(Mp(e,r));t.push(Up(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=oa(t);a=t._R(4);if(a==0||a>40)return r;t.l-=4;r.Reserved2=t._R(0,"lpwstr")}var qp=[60,1084,2066,2165,2175];function Zp(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 c=Vr(t,t.l),l=cm[c];var o=0;while(l!=null&&qp.indexOf(c)>-1){i=Vr(t,t.l+2);o=t.l+4;if(c==2066)o+=4;else if(c==2165||c==2175){o+=12}f=t.slice(o,t.l+4+i);s.push(f);t.l+=4+i;l=cm[c=Vr(t,t.l)]}var u=I(s);et(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=kt(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)!==$)throw new Error("rt mismatch: "+q+"!="+$);if(J.r==12){e.l+=10;K-=10}}var Z={};if($===10)Z=J.f(e,K,O);else Z=Zp($,J,e,K,O);if(W==0&&[9,521,1033,2057].indexOf(B)===-1)continue;switch($){case 34:t.opts.Date1904=_.WBProps.date1904=Z;break;case 134:t.opts.WriteProtect=true;break;case 47:if(!O.enc)e.l=0;O.enc=Z;if(!r.password)throw new Error("File is password-protected");if(Z.valid==null)throw new Error("Encryption scheme unsupported");if(!Z.valid)throw new Error("Password is incorrect");break;case 92:O.lastuser=Z;break;case 66:var Q=Number(Z);switch(Q){case 21010:Q=1200;break;case 32768:Q=1e4;break;case 32769:Q=1252;break;}c(O.codepage=Q);j=true;break;case 317:O.rrtabid=Z;break;case 25:O.winlocked=Z;break;case 439:t.opts["RefreshAll"]=Z;break;case 12:t.opts["CalcCount"]=Z;break;case 16:t.opts["CalcDelta"]=Z;break;case 17:t.opts["CalcIter"]=Z;break;case 13:t.opts["CalcMode"]=Z;break;case 14:t.opts["CalcPrecision"]=Z;break;case 95:t.opts["CalcSaveRecalc"]=Z;break;case 15:O.CalcRefMode=Z;break;case 2211:t.opts.FullCalc=Z;break;case 129:if(Z.fDialog)n["!type"]="dialog";if(!Z.fBelow)(n["!outline"]||(n["!outline"]={})).above=true;if(!Z.fRight)(n["!outline"]||(n["!outline"]={})).left=true;break;case 224:S.push(Z);break;case 430:U.push([Z]);U[U.length-1].XTI=[];break;case 35:;case 547:U[U.length-1].push(Z);break;case 24:;case 536:G={Name:Z.Name,Ref:Qu(Z.rgce,s,null,U,O)};if(Z.itab>0)G.Sheet=Z.itab-1;U.names.push(G);if(!U[0]){U[0]=[];U[0].XTI=[]}U[U.length-1].push(Z);if(Z.Name=="_xlnm._FilterDatabase"&&Z.itab>0)if(Z.rgce&&Z.rgce[0]&&Z.rgce[0][0]&&Z.rgce[0][0][0]=="PtgArea3d")V[Z.itab-1]={ref:Et(Z.rgce[0][0][1][2])};break;case 22:O.ExternCount=Z;break;case 23:if(U.length==0){U[0]=[];U[0].XTI=[]}U[U.length-1].XTI=U[U.length-1].XTI.concat(Z);U.XTI=U.XTI.concat(Z);break;case 2196:if(O.biff<8)break;if(G!=null)G.Comment=Z[1];break;case 18:n["!protect"]=Z;break;case 19:if(Z!==0&&O.WTF)console.error("Password verifier: "+Z);break;case 133:{i[Z.pos]=Z;O.snames.push(Z.name)}break;case 10:{if(--W)break;if(s.e){if(s.e.r>0&&s.e.c>0){s.e.r--;s.e.c--;n["!ref"]=Et(s);if(r.sheetRows&&r.sheetRows<=s.e.r){var ee=s.e.r;s.e.r=r.sheetRows-1;n["!fullref"]=n["!ref"];n["!ref"]=Et(s);s.e.r=ee}s.e.r++;s.e.c++}if(N.length>0)n["!merges"]=N;if(F.length>0)n["!objects"]=F;if(P.length>0)n["!cols"]=P;if(L.length>0)n["!rows"]=L;_.Sheets.push(x)}if(o==="")u=n;else a[o]=n;n=r.dense?[]:{}}break;case 9:;case 521:;case 1033:;case 2057:{if(O.biff===8)O.biff={9:2,521:3,1033:4}[$]||{512:2,768:3,1024:4,1280:5,1536:8,2:2,7:2}[Z.BIFFVer]||8;O.biffguess=Z.BIFFVer==0;if(Z.BIFFVer==0&&Z.dt==4096){O.biff=5;j=true;c(O.codepage=28591)}if(O.biff==8&&Z.BIFFVer==0&&Z.dt==16)O.biff=2;if(W++)break;n=r.dense?[]:{};if(O.biff<8&&!j){j=true;c(O.codepage=r.codepage||1252)}if(O.biff<5||Z.BIFFVer==0&&Z.dt==4096){if(o==="")o="Sheet1";s={s:{r:0,c:0},e:{r:0,c:0}};var re={pos:e.l-K,name:o};i[re.pos]=re;O.snames.push(o)}else o=(i[X]||{name:""}).name;if(Z.dt==32)n["!type"]="chart";if(Z.dt==64)n["!type"]="macro";N=[];F=[];O.arrayf=k=[];P=[];L=[];M=false;x={Hidden:(i[X]||{hs:0}).hs,name:o}}break;case 515:;case 3:;case 2:{if(n["!type"]=="chart")if(r.dense?(n[Z.r]||[])[Z.c]:n[kt({c:Z.c,r:Z.r})])++Z.c;T={ixfe:Z.ixfe,XF:S[Z.ixfe]||{},v:Z.val,t:"n"};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);R({c:Z.c,r:Z.r},T,r)}break;case 5:;case 517:{T={ixfe:Z.ixfe,XF:S[Z.ixfe],v:Z.val,t:Z.t};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);R({c:Z.c,r:Z.r},T,r)}break;case 638:{T={ixfe:Z.ixfe,XF:S[Z.ixfe],v:Z.rknum,t:"n"};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);R({c:Z.c,r:Z.r},T,r)}break;case 189:{for(var te=Z.c;te<=Z.C;++te){var ae=Z.rkrec[te-Z.c][0];T={ixfe:ae,XF:S[ae],v:Z.rkrec[te-Z.c][1],t:"n"};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);R({c:te,r:Z.r},T,r)}}break;case 6:;case 518:;case 1030:{if(Z.val=="String"){f=Z;break}T=em(Z.val,Z.cell.ixfe,Z.tt);T.XF=S[T.ixfe];if(r.cellFormula){var ne=Z.formula;if(ne&&ne[0]&&ne[0][0]&&ne[0][0][0]=="PtgExp"){var ie=ne[0][0][1][0],se=ne[0][0][1][1];var fe=kt({r:ie,c:se});if(w[fe])T.f=""+Qu(Z.formula,s,Z.cell,U,O);else T.F=((r.dense?(n[ie]||[])[se]:n[fe])||{}).F}else T.f=""+Qu(Z.formula,s,Z.cell,U,O)}if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);R(Z.cell,T,r);f=Z}break;case 7:;case 519:{if(f){f.val=Z;T=em(Z,f.cell.ixfe,"s");T.XF=S[T.ixfe];if(r.cellFormula){T.f=""+Qu(f.formula,s,f.cell,U,O)}if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);R(f.cell,T,r);f=null}else throw new Error("String record expects Formula")}break;case 33:;case 545:{k.push(Z);var ce=kt(Z[0].s);v=r.dense?(n[Z[0].s.r]||[])[Z[0].s.c]:n[ce];if(r.cellFormula&&v){if(!f)break;if(!ce||!v)break;v.f=""+Qu(Z[1],s,Z[0],U,O);v.F=Et(Z[0])}}break;case 1212:{if(!r.cellFormula)break;if(d){if(!f)break;w[kt(f.cell)]=Z[0];v=r.dense?(n[f.cell.r]||[])[f.cell.c]:n[kt(f.cell)];(v||{}).f=""+Qu(Z[0],s,h,U,O)}}break;case 253:T=em(l[Z.isst].t,Z.ixfe,"s");if(l[Z.isst].h)T.h=l[Z.isst].h;T.XF=S[T.ixfe];if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);R({c:Z.c,r:Z.r},T,r);break;case 513:if(r.sheetStubs){T={ixfe:Z.ixfe,XF:S[Z.ixfe],t:"z"};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);R({c:Z.c,r:Z.r},T,r)}break;case 190:if(r.sheetStubs){for(var le=Z.c;le<=Z.C;++le){var oe=Z.ixfe[le-Z.c];T={ixfe:oe,XF:S[oe],t:"z"};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);R({c:le,r:Z.r},T,r)}}break;case 214:;case 516:;case 4:T=em(Z.val,Z.ixfe,"s");T.XF=S[T.ixfe];if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);R({c:Z.c,r:Z.r},T,r);break;case 0:;case 512:{if(W===1)s=Z}break;case 252:{l=Z}break;case 1054:{if(O.biff==4){z[H++]=Z[1];for(var ue=0;ue=163)D.load(Z[1],H+163)}else D.load(Z[1],Z[0])}break;case 30:{z[H++]=Z;for(var he=0;he=163)D.load(Z,H+163)}break;case 229:N=N.concat(Z);break;case 93:F[Z.cmo[0]]=O.lastobj=Z;break;case 438:O.lastobj.TxO=Z;break;case 127:O.lastobj.ImData=Z;break;case 440:{for(g=Z[0].s.r;g<=Z[0].e.r;++g)for(b=Z[0].s.c;b<=Z[0].e.c;++b){v=r.dense?(n[g]||[])[b]:n[kt({c:b,r:g})];if(v)v.l=Z[1]}}break;case 2048:{for(g=Z[0].s.r;g<=Z[0].e.r;++g)for(b=Z[0].s.c;b<=Z[0].e.c;++b){v=r.dense?(n[g]||[])[b]:n[kt({c:b,r:g})];if(v&&v.l)v.l.Tooltip=Z[1]}}break;case 28:{if(O.biff<=5&&O.biff>=2)break;v=r.dense?(n[Z[0].r]||[])[Z[0].c]:n[kt(Z[0])];var de=F[Z[2]];if(!v){if(r.dense){if(!n[Z[0].r])n[Z[0].r]=[];v=n[Z[0].r][Z[0].c]={t:"z"}}else{v=n[kt(Z[0])]={t:"z"}}s.e.r=Math.max(s.e.r,Z[0].r);s.s.r=Math.min(s.s.r,Z[0].r);s.e.c=Math.max(s.e.c,Z[0].c);s.s.c=Math.min(s.s.c,Z[0].c)}if(!v.c)v.c=[];p={a:Z[1],t:de.TxO.t};v.c.push(p)}break;case 2173:Rl(S[Z.ixfe],Z.ext);break;case 125:{if(!O.cellStyles)break;while(Z.e>=Z.s){P[Z.e--]={width:Z.w/256,level:Z.level||0,hidden:!!(Z.flags&1)};if(!M){M=true;kc(Z.w/256)}Tc(P[Z.e+1])}}break;case 520:{var ve={};if(Z.level!=null){L[Z.r]=ve;ve.level=Z.level}if(Z.hidden){L[Z.r]=ve;ve.hidden=true}if(Z.hpt){L[Z.r]=ve;ve.hpt=Z.hpt;ve.hpx=_c(Z.hpt)}}break;case 38:;case 39:;case 40:;case 41:if(!n["!margins"])_h(n["!margins"]={});n["!margins"][{38:"left",39:"right",40:"top",41:"bottom"}[$]]=Z;break;case 161:if(!n["!margins"])_h(n["!margins"]={});n["!margins"].header=Z.header;n["!margins"].footer=Z.footer;break;case 574:if(Z.RTL)_.Views[0].RTL=true;break;case 146:y=Z;break;case 2198:I=Z;break;case 140:E=Z;break;case 442:{if(!o)_.WBProps.CodeName=Z||"ThisWorkbook";else x.CodeName=Z||x.name}break;case 85:;case 549:;case 94:;case 431:;case 444:;case 91:;case 255:;case 2147:;case 2214:;case 233:;case 96:;case 218:;case 352:;case 2202:;case 11:;case 523:;case 4188:;case 29:;case 20:;case 21:;case 131:;case 132:;case 77:;case 171:;case 148:;case 215:;case 450:;case 176:;case 177:;case 178:;case 256:;case 180:;case 205:;case 151:;case 135:;case 197:;case 181:;case 241:;case 2050:;case 2152:;case 2151:;case 2161:;case 2162:;case 2168:;case 2167:;case 449:;case 153:;case 4192:;case 4200:;case 4198:;case 49:;case 2172:;case 659:;case 2194:;case 221:;case 99:;case 2169:;case 566:;case 2190:;case 2191:;case 2192:;case 213:;case 227:;case 81:;case 2148:;case 437:;case 82:;case 182:;case 251:;case 247:;case 240:;case 242:;case 245:;case 244:;case 174:;case 80:;case 2156:;case 42:;case 43:;case 51:;case 89:;case 90:;case 160:;case 2146:;case 445:;case 211:;case 2199:;case 2059:;case 239:;case 222:;case 2189:;case 446:;case 434:;case 4177:;case 4099:;case 4109:;case 2166:;case 220:;case 2051:;case 2058:;case 2052:;case 4174:;case 432:;case 433:;case 2170:;case 2171:;case 448:;case 4097:;case 225:;case 193:;case 226:;case 353:;case 156:break;case 61:;case 141:;case 130:;case 128:;case 425:;case 426:;case 427:;case 65:;case 4195:;case 4147:;case 4148:;case 2130:;case 2131:;case 4146:;case 4122:;case 4125:;case 4129:;case 4126:;case 4166:;case 2205:;case 2215:;case 4130:;case 4124:;case 2206:;case 2207:;case 4103:;case 4106:;case 4098:;case 4154:;case 4191:;case 4116:;case 2128:;case 4149:;case 4196:;case 4118:;case 4170:;case 4171:;case 4102:;case 4165:;case 4134:;case 4128:;case 4194:;case 4189:;case 4164:;case 4132:;case 4133:;case 2134:;case 2155:;case 4117:;case 4163:;case 4121:;case 4123:;case 4107:;case 4105:;case 2132:;case 2133:;case 4176:;case 4135:;case 4197:;case 4108:;case 2135:;case 4120:;case 4119:;case 4159:;case 4161:;case 4175:;case 4127:;case 2064:;case 2136:;case 2137:;case 4168:;case 2213:;case 2249:;case 2250:;case 2251:;case 429:;case 2055:;case 2054:;case 2053:;case 155:;case 158:;case 157:;case 2174:;case 2164:;case 144:;case 2197:;case 2212:;case 236:;case 235:;case 237:;case 2049:;case 2240:;case 2204:;case 2150:;case 2187:;case 27:;case 26:;case 64:;case 2203:;case 2188:;case 60:;case 2175:;case 2138:;case 2129:;case 234:;case 4158:;case 4160:;case 4157:;case"Intl":;case"CoordList":;case"SerAuxErrBar":;case 69:;case 31:;case 50:;case 67:;case 579:;case 1091:;case 68:;case 86:;case 8:;case 62:;case 175:;case 4156:;case 2154:;case 441:;case 4193:;case 4199:;case 2067:;case 149:;case 154:;case 194:;case 152:;case 2241:;case 2242:;case 319:;case 1048:;case 191:;case 192:;case 52:;case 2262:break;default:if(r.WTF)throw"Unrecognized Record 0x"+$.toString(16);}}else e.l+=K}t.SheetNames=Y(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)V.forEach(function(e,r){t.Sheets[t.SheetNames[r]]["!autofilter"]=e});t.Strings=l;t.SSF=D.get_table();if(O.enc)t.Encryption=O.enc;if(I)t.Themes=I;t.Metadata={};if(E!==undefined)t.Metadata.Country=E;if(U.names.length>0)_.Names=U.names;t.Workbook=_;return t}var tm={SI:"e0859ff2f94f6810ab9108002b27b3d9",DSI:"02d5cdd59c2e1b10939708002b2cf9ae",UDI:"05d5cdd59c2e1b10939708002b2cf9ae"};function am(e,r,t){var a=z.find(e,"/!DocumentSummaryInformation");if(a&&a.size>0)try{var n=Un(a,ya,tm.DSI);for(var i in n)r[i]=n[i]}catch(s){if(t.WTF)throw s}var f=z.find(e,"/!SummaryInformation");if(f&&f.size>0)try{var c=Un(f,_a,tm.SI);for(var l in c)if(r[l]==null)r[l]=c[l]}catch(s){if(t.WTF)throw s}if(r.HeadingPairs&&r.TitlesOfParts){fn(r.HeadingPairs,r.TitlesOfParts,r,t);delete r.HeadingPairs;delete r.TitlesOfParts}}function nm(e,r){var t=[],a=[],n=[];var i=0,s;var f=K(ya,"n");var c=K(_a,"n");if(e.Props){s=Y(e.Props);for(i=0;i-1||sn.indexOf(n[i][0])>-1)continue;if(n[i][1]==null)continue;l.push(n[i])}if(a.length)z.utils.cfb_add(r,"/SummaryInformation",Bn(a,tm.SI,c,_a));if(t.length||l.length)z.utils.cfb_add(r,"/DocumentSummaryInformation",Bn(t,tm.DSI,f,ya,l.length?l:null,tm.UDI))}function im(e,r){if(!r)r={};db(r);l();if(r.codepage)s(r.codepage);var t,a;if(e.FullPaths){if(z.find(e,"/encryption"))throw new Error("File is password-protected");t=z.find(e,"!CompObj");a=z.find(e,"/Workbook")||z.find(e,"/Book")}else{switch(r.type){case"base64":e=_(g.decode(e));break;case"binary":e=_(e);break;case"buffer":break;case"array":if(!Array.isArray(e))e=Array.prototype.slice.call(e);break;}et(e,0);a={content:e}}var n;var i;if(t)Jp(t);if(r.bookProps&&!r.bookSheets)n={};else{ -var f=w?"buffer":"array";if(a&&a.content)n=rm(a.content,r);else if((i=z.find(e,"PerfectOffice_MAIN"))&&i.content)n=gf.to_workbook(i.content,(r.type=f,r));else if((i=z.find(e,"NativeContent_MAIN"))&&i.content)n=gf.to_workbook(i.content,(r.type=f,r));else if((i=z.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&&z.find(e,"/_VBA_PROJECT_CUR/VBA/dir"))n.vbaraw=lo(e)}var c={};if(e.FullPaths)am(e,c,r);n.Props=n.Custprops=c;if(r.bookFiles)n.cfb=e;return n}function sm(e,r){var t=r||{};var a=z.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");}z.utils.cfb_add(a,n,Am(e,t));if(t.biff==8&&(e.Props||e.Custprops))nm(e,a);if(t.biff==8&&e.vbaraw)oo(a,z.read(e.vbaraw,{type:typeof e.vbaraw=="string"?"binary":"buffer"}));return a}var fm={0:{f:cd},1:{f:md},2:{f:Ld},3:{f:yd},4:{f:kd},5:{f:Nd},6:{f:Hd},7:{f:Cd},8:{f:Yd},9:{f:$d},10:{f:jd},11:{f:Xd},12:{f:gd},13:{f:Ud},14:{f:xd},15:{f:Ed},16:{f:Dd},17:{f:Vd},18:{f:Od},19:{f:Pt},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:Qv},40:{},42:{},43:{f:Wc},44:{f:Uc},45:{f:Gc},46:{f:Kc},47:{f:Xc},48:{},49:{f:Rt},50:{},51:{f:Nl},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:$s},62:{f:Wd},63:{f:zl},64:{f:uv},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:rt,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:fv},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:vd},148:{f:ud,p:16},151:{f:ev},152:{},153:{f:Jv},154:{},155:{},156:{f:Yv},157:{},158:{},159:{T:1,f:Nf},160:{T:-1},161:{T:1,f:ea},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:Kd},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:Ol},336:{T:-1},337:{f:Pl,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:Yt},357:{},358:{},359:{},360:{T:1},361:{},362:{f:ys},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:rv},427:{f:tv},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:iv},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:dd},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:Zd},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:Yt},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:no},633:{T:1},634:{T:-1},635:{T:1,f:to},636:{T:-1},637:{f:Mt},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:Ov},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:hv},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 cm={6:{f:sh},10:{f:Wn},12:{f:jn},13:{f:jn},14:{f:Vn},15:{f:Vn},16:{f:ta},17:{f:Vn},18:{f:Vn},19:{f:jn},20:{f:ws},21:{f:ws},23:{f:ys},24:{f:Ss},25:{f:Vn},26:{},27:{},28:{f:Is},29:{},34:{f:Vn},35:{f:Ts},38:{f:ta},39:{f:ta},40:{f:ta},41:{f:ta},42:{f:Vn},43:{f:Vn},47:{f:ic},49:{f:Ji},51:{f:jn},60:{},61:{f:ji},64:{f:Vn},65:{f:Ki},66:{f:jn},77:{},80:{},81:{},82:{},85:{f:jn},89:{},90:{},91:{},92:{f:Fi},93:{f:Ds},94:{},95:{f:Vn},96:{},97:{},99:{f:Vn},125:{f:$s},128:{f:ds},129:{f:Pi},130:{f:jn},131:{f:Vn},132:{f:Vn},133:{f:Li},134:{},140:{f:zs},141:{f:jn},144:{},146:{f:js},151:{},152:{},153:{},154:{},155:{},156:{f:jn},157:{},158:{},160:{f:Qs},161:{f:Ks},174:{},175:{},176:{},177:{},178:{},180:{},181:{},182:{},184:{},185:{},189:{f:cs},190:{f:ls},193:{f:Wn},197:{},198:{},199:{},200:{},201:{},202:{f:Vn},203:{},204:{},205:{},206:{},207:{},208:{},209:{},210:{},211:{},213:{},215:{},216:{},217:{},218:{f:jn},220:{},221:{f:Vn},222:{},224:{f:us},225:{f:Ni},226:{f:Wn},227:{},229:{f:Ns},233:{},235:{},236:{},237:{},239:{},240:{},241:{},242:{},244:{},245:{},246:{},247:{},248:{},249:{},251:{},252:{f:Ui},253:{f:Zi},255:{f:Wi},256:{},259:{},290:{},311:{},312:{},315:{},317:{f:$n},318:{},319:{},320:{},330:{},331:{},333:{},334:{},335:{},336:{},337:{},338:{},339:{},340:{},351:{},352:{f:Vn},353:{f:Wn},401:{},402:{},403:{},404:{},405:{},406:{},407:{},408:{},425:{},426:{},427:{},428:{},429:{},430:{f:ks},431:{f:Vn},432:{},433:{},434:{},437:{},438:{f:Ms},439:{f:Vn},440:{f:Us},441:{},442:{f:ei},443:{},444:{f:jn},445:{},446:{},448:{f:Wn},449:{f:Vi,r:2},450:{f:Wn},512:{f:is},513:{f:Zs},515:{f:bs},516:{f:es},517:{f:ps},519:{f:ef},520:{f:Hi},523:{},545:{f:Cs},549:{f:Gi},566:{},574:{f:$i},638:{f:fs},659:{},1048:{},1054:{f:ts},1084:{},1212:{f:As},2048:{f:Ws},2049:{},2050:{},2051:{},2052:{},2053:{},2054:{},2055:{},2056:{},2057:{f:Oi},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:Wn},2152:{},2154:{},2155:{},2156:{},2161:{},2162:{},2164:{},2165:{},2166:{},2167:{},2168:{},2169:{},2170:{},2171:{},2172:{f:Xs,r:12},2173:{f:Cl,r:12},2174:{},2175:{},2180:{},2181:{},2182:{},2183:{},2184:{},2185:{},2186:{},2187:{},2188:{f:Vn,r:12},2189:{},2190:{r:12},2191:{},2192:{},2194:{},2195:{},2196:{f:xs,r:12},2197:{},2198:{f:El,r:12},2199:{},2200:{},2201:{},2202:{f:Rs,r:12},2203:{f:Wn},2204:{},2205:{},2206:{},2207:{},2211:{f:zi},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:jn},4135:{},4146:{},4147:{},4148:{},4149:{},4154:{},4156:{},4157:{},4158:{},4159:{},4160:{},4161:{},4163:{},4164:{f:Js},4165:{},4166:{},4168:{},4170:{},4171:{},4174:{},4175:{},4176:{},4177:{},4187:{},4188:{f:Gs},4189:{},4191:{},4192:{},4193:{},4194:{},4195:{},4196:{},4197:{},4198:{},4199:{},4200:{},0:{f:is},1:{},2:{f:sf},3:{f:af},4:{f:tf},5:{f:ps},7:{f:cf},8:{},9:{f:Oi},11:{},22:{f:jn},30:{f:ns},31:{},32:{},33:{f:Cs},36:{},37:{f:Gi},50:{f:lf},62:{},52:{},67:{},68:{f:jn},69:{},86:{},126:{},127:{f:rf},135:{},136:{},137:{},145:{},148:{},149:{},150:{},169:{},171:{},188:{},191:{},192:{},194:{},195:{},214:{f:of},223:{},234:{},354:{},421:{},518:{f:sh},521:{f:Oi},536:{f:Ss},547:{f:Ts},561:{},579:{},1030:{f:sh},1033:{f:Oi},1091:{},2157:{},2163:{},2177:{},2240:{},2241:{},2242:{},2243:{},2244:{},2245:{},2246:{},2247:{},2248:{},2249:{},2250:{},2251:{},2262:{r:12},29282:{}};function lm(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&&Wr(t))e.push(t)}function om(e,r,t,a){var n=a||(t||[]).length||0;if(n<=8224)return lm(e,r,t,n);var i=r;if(isNaN(i))return;var s=t.parts||[],f=0;var c=0,l=0;while(l+(s[f]||8224)<=8224){l+=s[f]||8224;f++}var o=e.next(4);o._W(2,i);o._W(2,l);e.push(t.slice(c,c+l));c+=l;while(c=0&&n<65536)lm(e,2,ff(t,a,n));else lm(e,3,nf(t,a,n));return;case"b":;case"e":lm(e,5,hm(t,a,r.v,r.t));return;case"s":;case"str":lm(e,4,dm(t,a,(r.v||"").slice(0,255)));return;}lm(e,1,um(null,t,a))}function pm(e,r,t,a){var n=Array.isArray(r);var i=St(r["!ref"]||"A1"),s,f="",c=[];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=Et(i)}for(var l=i.s.r;l<=i.e.r;++l){f=ut(l);for(var o=i.s.c;o<=i.e.c;++o){if(l===i.s.r)c[o]=pt(o);s=c[o]+f;var u=n?(r[l]||[])[o]:r[s];if(!u)continue;vm(e,u,l,o,a)}}}function mm(e,r){var t=r||{};if(m!=null&&t.dense==null)t.dense=m;var a=nt();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)}lm(a,2057,Ii(t,16,r));lm(a,13,Xn(1));lm(a,12,Xn(100));lm(a,15,Gn(true));lm(a,17,Gn(false));lm(a,16,aa(.001));lm(a,95,Gn(true));lm(a,42,Gn(false));lm(a,43,Gn(false));lm(a,130,Xn(1));lm(a,128,vs([0,0]));lm(a,131,Gn(false));lm(a,132,Gn(false));if(l)Em(a,i["!cols"]);lm(a,512,ss(d,r));if(l)i["!links"]=[];for(var p=d.s.r;p<=d.e.r;++p){u=ut(p);for(var m=d.s.c;m<=d.e.c;++m){if(p===d.s.r)h[m]=pt(m);o=h[m]+u;var b=c?(i[p]||[])[m]:i[o];if(!b)continue;Sm(a,b,p,m,r);if(l&&b.l)i["!links"].push([o,b.l])}}var g=f.CodeName||f.name||n;if(l)lm(a,574,Yi((s.Views||[])[0]));if(l&&(i["!merges"]||[]).length)lm(a,229,Fs(i["!merges"]));if(l)Tm(a,i);lm(a,442,ti(g,r));if(l)wm(a,i);lm(a,10);return a.end()}function _m(e,r,t){var a=nt();var n=(e||{}).Workbook||{};var i=n.Sheets||[];var s=n.WBProps||{};var f=t.biff==8,c=t.biff==5;lm(a,2057,Ii(e,5,t));if(t.bookType=="xla")lm(a,135);lm(a,225,f?Xn(1200):null);lm(a,193,Hn(2));if(c)lm(a,191);if(c)lm(a,192);lm(a,226);lm(a,92,Di("SheetJS",t));lm(a,66,Xn(f?1200:1252));if(f)lm(a,353,Xn(0));if(f)lm(a,448);lm(a,317,qs(e.SheetNames.length));if(f&&e.vbaraw)lm(a,211);if(f&&e.vbaraw){var l=s.CodeName||"ThisWorkbook";lm(a,442,ti(l,t))}lm(a,156,Xn(17));lm(a,25,Gn(false));lm(a,18,Gn(false));lm(a,19,Xn(0));if(f)lm(a,431,Gn(false));if(f)lm(a,444,Xn(0));lm(a,61,Xi(t));lm(a,64,Gn(false));lm(a,141,Xn(0));lm(a,34,Gn(Wv(e)=="true"));lm(a,14,Gn(true));if(f)lm(a,439,Gn(false));lm(a,218,Xn(0));bm(a,e,t);gm(a,e.SSF,t);km(a,t);if(f)lm(a,352,Gn(false));var o=a.end();var u=nt();if(f)lm(u,140,Vs());if(f&&t.Strings)om(u,252,Bi(t.Strings,t));lm(u,10);var h=u.end();var d=nt();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 xm(e,r);case 4:;case 3:;case 2:return mm(e,r);}throw new Error("invalid type "+i.bookType+" for BIFF")}var Cm=function(){function e(e,r){var t=r||{};if(m!=null&&t.dense==null)t.dense=m;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 c=me(e.slice(s,f),/(:?]*>)/i,"");var l=-1,o=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=y.colspan?+y.colspan:1;if((u=+y.rowspan)>1||h>1)v.push({s:{r:l,c:o},e:{r:l+(u||1)-1,c:o+h-1}});var _=y.t||y["data-t"]||"";if(!k.length){o+=h;continue}k=tr(k);if(d.s.r>l)d.s.r=l;if(d.e.ro)d.s.c=o;if(d.e.c[\s\S]*?<\/table>/gi);if(!a||a.length==0)throw new Error("Invalid HTML: could not find
");if(a.length==1)return xt(e(a[0],t),t);var n=ig();a.forEach(function(r,a){sg(n,e(r,t),"Sheet"+(a+1))});return n}function t(e,r,t,a){var n=e["!merges"]||[];var i=[];for(var s=r.s.c;s<=r.e.c;++s){var f=0,c=0;for(var l=0;lt||n[l].s.c>s)continue;if(n[l].e.r1)d.rowspan=f;if(c>1)d.colspan=c;if(a.editable)h=''+h+"";else if(u){d["data-t"]=u&&u.t||"z";if(u.v!=null)d["data-v"]=u.v;if(u.z!=null)d["data-z"]=u.z;if(u.l&&(u.l.Target||"#").charAt(0)!="#")h=''+h+""}d.id=(a.id||"sjs")+"-"+o;i.push(or("td",h,d))}var v="";return v+i.join("")+""}function a(e,r,t){var a=[];return a.join("")+""}var n='SheetJS Table Export';var i="";function s(e,r){var s=r||{};var f=s.header!=null?s.header:n;var c=s.footer!=null?s.footer:i;var l=[f];var o=Tt(e["!ref"]);s.dense=Array.isArray(e);l.push(a(e,o,s));for(var u=o.s.r;u<=o.e.r;++u)l.push(t(e,o,u,s));l.push("
"+c);return l.join("")}return{to_workbook:r,to_sheet:e,_row:t,BEGIN:n,END:i,_preamble:a,from_sheet:s}}();function Rm(e,r,t){var a=t||{};if(m!=null)a.dense=m;var n=0,i=0;if(a.origin!=null){if(typeof a.origin=="number")n=a.origin;else{var s=typeof a.origin=="string"?wt(a.origin):a.origin;n=s.r;i=s.c}}var f=r.getElementsByTagName("tr");var c=Math.min(a.sheetRows||1e7,f.length);var l={s:{r:0,c:0},e:{r:n,c:i}};if(e["!ref"]){var o=Tt(e["!ref"]);l.s.r=Math.min(l.s.r,o.s.r);l.s.c=Math.min(l.s.c,o.s.c);l.e.r=Math.max(l.e.r,o.e.r);l.e.c=Math.max(l.e.c,o.e.c);if(n==-1)l.e.r=n=o.e.r+1}var u=[],h=0;var d=e["!rows"]||(e["!rows"]=[]);var v=0,p=0,b=0,g=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;v1||k>1)u.push({s:{r:p+n,c:g+i},e:{r:p+n+(w||1)-1,c:g+i+(k||1)-1}});var A={t:"s",v:y};var C=S.getAttribute("data-t")||S.getAttribute("t")||"";if(y!=null){if(y.length==0)A.t=C||"z";else if(a.raw||y.trim().length==0||C=="s"){}else if(y==="TRUE")A={t:"b",v:true};else if(y==="FALSE")A={t:"b",v:false};else if(!isNaN(he(y)))A={t:"n",v:he(y)};else if(!isNaN(ve(y).getDate())){A={t:"d",v:ce(y)};if(!a.cellDates)A={t:"n",v:ee(A.v)};A.z=a.dateNF||D._table[14]}}if(A.z===undefined&&_!=null)A.z=_;var R="",O=S.getElementsByTagName("A");if(O&&O.length)for(var I=0;I=c)e["!fullref"]=Et((l.e.r=f.length-v+p-1+n,l));return e}function Om(e,r){var t=r||{};var a=t.dense?[]:{};return Rm(a,e,r)}function Im(e,r){return xt(Om(e,r),r)}function Nm(e){var r="";var t=Fm(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function Fm(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 Dm(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=Be(r.replace(/<[^>]*>/g,""));return[t]}var Pm={day:["d","dd"],month:["m","mm"],year:["y","yy"],hours:["h","hh"],minutes:["m","mm"],seconds:["s","ss"],"am-pm":["A/P","AM/PM"],"day-of-week":["ddd","dddd"],era:["e","ee"],quarter:["\\Qm",'m\\"th quarter"']};function Lm(e,r){var t=r||{};if(m!=null&&t.dense==null)t.dense=m;var a=dr(e);var n=[],i;var s;var f={name:""},c="",l=0;var o;var u;var h={},d=[];var v=t.dense?[]:{};var p,b;var g={value:""};var w="",k=0,T;var E=[];var S=-1,y=-1,_={s:{r:1e6,c:1e7},e:{r:0,c:0}};var x=0;var A={};var C=[],R={},O=0,I=0;var N=[],F=1,D=1;var P=[];var L={Names:[]};var M={};var U=["",""];var B=[],W={};var H="",z=0;var V=false,G=false;var j=0;vr.lastIndex=0;a=a.replace(//gm,"").replace(//gm,"");while(p=vr.exec(a))switch(p[3]=p[3].replace(/_.*$/,"")){case"table":;case"工作表":if(p[1]==="/"){if(_.e.c>=_.s.c&&_.e.r>=_.s.r)v["!ref"]=Et(_);else v["!ref"]="A1:A1";if(t.sheetRows>0&&t.sheetRows<=_.e.r){v["!fullref"]=v["!ref"];_.e.r=t.sheetRows-1;v["!ref"]=Et(_)}if(C.length)v["!merges"]=C;if(N.length)v["!rows"]=N;o.name=o["名称"]||o.name;if(typeof JSON!=="undefined")JSON.stringify(o);d.push(o.name);h[o.name]=v;G=false}else if(p[0].charAt(p[0].length-2)!=="/"){o=Pe(p[0],false);S=y=-1;_.s.r=_.s.c=1e7;_.e.r=_.e.c=0;v=t.dense?[]:{};C=[];N=[];G=true}break;case"table-row-group":if(p[1]==="/")--x;else++x;break;case"table-row":;case"行":if(p[1]==="/"){S+=F;F=1;break}u=Pe(p[0],false);if(u["行号"])S=u["行号"]-1;else if(S==-1)S=0;F=+u["number-rows-repeated"]||1;if(F<10)for(j=0;j0)N[S+j]={level:x};y=-1;break;case"covered-table-cell":if(p[1]!=="/")++y;if(t.sheetStubs){if(t.dense){if(!v[S])v[S]=[];v[S][y]={t:"z"}}else v[kt({r:S,c:y})]={t:"z"}}w="";E=[];break;case"table-cell":;case"数据":if(p[0].charAt(p[0].length-2)==="/"){++y;g=Pe(p[0],false);D=parseInt(g["number-columns-repeated"]||"1",10);b={t:"z",v:null};if(g.formula&&t.cellFormula!=false)b.f=mh(Be(g.formula));if((g["数据类型"]||g["value-type"])=="string"){b.t="s";b.v=Be(g["string-value"]||"");if(t.dense){if(!v[S])v[S]=[];v[S][y]=b}else{v[kt({r:S,c:y})]=b}}y+=D-1}else if(p[1]!=="/"){++y;w="";k=0;E=[];D=1;var X=F?S+F-1:S;if(y>_.e.c)_.e.c=y;if(y<_.s.c)_.s.c=y;if(S<_.s.r)_.s.r=S;if(X>_.e.r)_.e.r=X;g=Pe(p[0],false);B=[];W={};b={t:g["数据类型"]||g["value-type"],v:null};if(t.cellFormula){if(g.formula)g.formula=Be(g.formula);if(g["number-matrix-columns-spanned"]&&g["number-matrix-rows-spanned"]){O=parseInt(g["number-matrix-rows-spanned"],10)||0;I=parseInt(g["number-matrix-columns-spanned"],10)||0;R={s:{r:S,c:y},e:{r:S+O-1,c:y+I-1}};b.F=Et(R);P.push([R,b.F])}if(g.formula)b.f=mh(g.formula);else for(j=0;j=P[j][0].s.r&&S<=P[j][0].e.r)if(y>=P[j][0].s.c&&y<=P[j][0].e.c)b.F=P[j][1]}if(g["number-columns-spanned"]||g["number-rows-spanned"]){O=parseInt(g["number-rows-spanned"],10)||0;I=parseInt(g["number-columns-spanned"],10)||0;R={s:{r:S,c:y},e:{r:S+O-1,c:y+I-1}};C.push(R)}if(g["number-columns-repeated"])D=parseInt(g["number-columns-repeated"],10);switch(b.t){case"boolean":b.t="b";b.v=Ke(g["boolean-value"]);break;case"float":b.t="n";b.v=parseFloat(g.value);break;case"percentage":b.t="n";b.v=parseFloat(g.value);break;case"currency":b.t="n";b.v=parseFloat(g.value);break;case"date":b.t="d";b.v=ce(g["date-value"]);if(!t.cellDates){b.t="n";b.v=ee(b.v)}b.z="m/d/yy";break;case"time":b.t="n";b.v=ie(g["time-value"])/86400;if(t.cellDates){b.t="d";b.v=ne(b.v)}b.z="HH:MM:SS";break;case"number":b.t="n";b.v=parseFloat(g["数据数值"]);break;default:if(b.t==="string"||b.t==="text"||!b.t){b.t="s";if(g["string-value"]!=null){w=Be(g["string-value"]);E=[]}}else throw new Error("Unsupported value type "+b.t);}}else{V=false;if(b.t==="s"){b.v=w||"";if(E.length)b.R=E;V=k==0}if(M.Target)b.l=M;if(B.length>0){b.c=B;B=[]}if(w&&t.cellText!==false)b.w=w;if(V){b.t="z";delete b.v}if(!V||t.sheetStubs){if(!(t.sheetRows&&t.sheetRows<=S)){for(var $=0;$0)v[S+$][y+D]=oe(b)}else{v[kt({r:S+$,c:y})]=b;while(--D>0)v[kt({r:S+$,c:y+D})]=oe(b)}if(_.e.c<=y)_.e.c=y}}}D=parseInt(g["number-columns-repeated"]||"1",10);y+=D-1;D=0;b={};w="";E=[]}M={};break;case"document":;case"document-content":;case"电子表格文档":;case"spreadsheet":;case"主体":;case"scripts":;case"styles":;case"font-face-decls":;case"master-styles":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/")n.push([p[3],true]);break;case"annotation":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i;W.t=w;if(E.length)W.R=E;W.a=H;B.push(W)}else if(p[0].charAt(p[0].length-2)!=="/"){n.push([p[3],false])}H="";z=0;w="";k=0;E=[];break;case"creator":if(p[1]==="/"){H=a.slice(z,p.index)}else z=p.index+p[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(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/")n.push([p[3],false]);w="";k=0;E=[];break;case"scientific-number":break;case"currency-symbol":break;case"currency-style":break;case"number-style":;case"percentage-style":;case"date-style":;case"time-style":if(p[1]==="/"){A[f.name]=c;if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/"){c="";f=Pe(p[0],false);n.push([p[3],true])}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=Pe(p[0],false);c+=Pm[p[3]][s.style==="long"?1:0];break;}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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=Pe(p[0],false); -c+=Pm[p[3]][s.style==="long"?1:0];break;}break;case"boolean-style":break;case"boolean":break;case"text-style":break;case"text":if(p[0].slice(-2)==="/>")break;else if(p[1]==="/")switch(n[n.length-1][0]){case"number-style":;case"date-style":;case"time-style":c+=a.slice(l,p.index);break;}else l=p.index+p[0].length;break;case"named-range":s=Pe(p[0],false);U=gh(s["cell-range-address"]);var Y={Name:s.name,Ref:U[0]+"!"+U[1]};if(G)Y.Sheet=d.length;L.Names.push(Y);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":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(n[n.length-1][0])>-1)break;if(p[1]==="/"&&(!g||!g["string-value"])){var K=Dm(a.slice(k,p.index),T);w=(w.length>0?w+"\n":"")+K[0]}else{T=Pe(p[0],false);k=p.index+p[0].length}break;case"s":break;case"database-range":if(p[1]==="/")break;try{U=gh(Pe(p[0])["target-range-address"]);h[U[0]]["!autofilter"]={ref:U[1]}}catch(J){}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(p[1]!=="/"){M=Pe(p[0],false);if(!M.href)break;M.Target=Be(M.href);delete M.href;if(M.Target.charAt(0)=="#"&&M.Target.indexOf(".")>-1){U=gh(M.Target.slice(1));M.Target="#"+U[0]+"!"+U[1]}else if(M.Target.match(/^\.\.[\\\/]/))M.Target=M.Target.slice(3)}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(p[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(t.WTF)throw new Error(p);};}var q={Sheets:h,SheetNames:d,Workbook:L};if(t.bookSheets)delete q.Sheets;return q}function Mm(e,r){r=r||{};if(ke(e,"META-INF/manifest.xml"))$a(Ee(e,"META-INF/manifest.xml"),r);var t=Se(e,"content.xml");if(!t)throw new Error("Missing content.xml in ODS / UOF file");var a=Lm(Je(t),r);if(ke(e,"meta.xml"))a.Props=rn(Ee(e,"meta.xml"));return a}function Um(e,r){return Lm(e,r)}var Bm=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return Oe+r}}();var Wm=function(){var e=function(e){return ze(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){var s=[];s.push(' \n');var f=0,c=0,l=Tt(a["!ref"]||"A1");var o=a["!merges"]||[],u=0;var h=Array.isArray(a);if(a["!cols"]){for(c=0;c<=l.e.c;++c)s.push(" \n")}var d="",v=a["!rows"]||[];for(f=0;f\n")}for(;f<=l.e.r;++f){d=v[f]?' table:style-name="ro'+v[f].ods+'"':"";s.push(" \n");for(c=0;cc)continue;if(o[u].s.r>f)continue;if(o[u].e.c\n")}s.push(" \n");return s.join("")};var n=function(e,r){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 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")};return function i(e,r){var t=[Oe];var i=lr({"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=lr({"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(Za().replace(/office:document-meta/g,"office:meta"))}else t.push("\n");n(t,e);t.push(" \n");t.push(" \n");for(var f=0;f!=e.SheetNames.length;++f)t.push(a(e.Sheets[e.SheetNames[f]],e,f,r));t.push(" \n");t.push(" \n");if(r.bookType=="fods")t.push("");else t.push("");return t.join("")}}();function Hm(e,r){if(r.bookType=="fods")return Wm(e,r);var t=Ae();var a="";var n=[];var i=[];a="mimetype";xe(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";xe(t,a,Wm(e,r));n.push([a,"text/xml"]);i.push([a,"ContentFile"]);a="styles.xml";xe(t,a,Bm(e,r));n.push([a,"text/xml"]);i.push([a,"StylesFile"]);a="meta.xml";xe(t,a,Oe+Za());n.push([a,"text/xml"]);i.push([a,"MetadataFile"]);a="manifest.rdf";xe(t,a,qa(i));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";xe(t,a,Ya(n));return t}var zm=function(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)};var Vm=function(e){return typeof TextDecoder!="undefined"?(new TextDecoder).decode(e):Je(A(e))};var Gm=function(e){var r=e.reduce(function(e,r){return e+r.length},0);var t=new Uint8Array(r);var a=0;e.forEach(function(e){t.set(e,a);a+=e.length});return t};var jm=function(e){e-=e>>1&1431655765;e=(e&858993459)+(e>>2&858993459);return(e+(e>>4)&252645135)*16843009>>>24};var Xm=function(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 $m(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 Ym(e){var r=0,t=e[r]&127;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}return t}function Km(e){var r=[],t=[0];while(t[0]=128);f=e.slice(c,t[0])}break;case 5:s=4;f=e.slice(t[0],t[0]+s);t[0]+=s;break;case 1:s=8;f=e.slice(t[0],t[0]+s);t[0]+=s;break;case 2:s=$m(e,t);f=e.slice(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={offset:a,data:f,type:i};if(r[n]==null)r[n]=[l];else r[n].push(l)}return r}function Jm(e,r){if(!e)return[];return e.map(function(e){var t;try{return r(e.data)}catch(a){var n=(t=a.message)==null?void 0:t.match(/at offset (\d+)/);if(n)a.message=a.message.replace(/at offset (\d+)/,"at offset "+(+n[1]+e.offset));throw a}})}function qm(e){var r=[],t=[0];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.slice(t[0],t[0]+s));t[0]+=s;continue}else{var c=0,l=0;if(i==1){l=(r[t[0]]>>2&7)+4;c=(r[t[0]++]&224)<<3;c|=r[t[0]++]}else{l=(r[t[0]++]>>2)+1;if(i==2){c=r[t[0]]|r[t[0]+1]<<8;t[0]+=2}else{c=(r[t[0]]|r[t[0]+1]<<8|r[t[0]+2]<<16|r[t[0]+3]<<24)>>>0;t[0]+=4}}n=[Gm(n)];if(c==0)throw new Error("Invalid offset 0");if(c>n[0].length)throw new Error("Invalid offset beyond length");if(l>=c){n.push(n[0].slice(-c));l-=c;while(l>=n[n.length-1].length){n.push(n[n.length-1]);l-=n[n.length-1].length}}n.push(n[0].slice(-c,-c+l))}}var o=Gm(n);if(o.length!=a)throw new Error("Unexpected length: ".concat(o.length," != ").concat(a));return o}function Qm(e){var r=[];var t=0;while(t0};break;case 7:u={t:"n",v:l};break;case 8:u={t:"e",v:0};break;case 9:{if(f>-1)u={t:"s",v:t[f]};else if(c>-1)u={t:"s",v:r[c]};else if(!isNaN(l))u={t:"n",v:l};else throw new Error("Unsupported cell type ".concat(e.slice(0,4)))}break;default:throw new Error("Unsupported cell type ".concat(e.slice(0,4)));}return u}function rb(e,r,t){var a=zm(e);var n=e[1];var i=a.getUint32(8,true);var s=12;var f=-1,c=-1,l=NaN,o=NaN,u=new Date(2001,0,1);if(i&1){l=Xm(e,s);s+=16}if(i&2){o=a.getFloat64(s,true);s+=8}if(i&4){u.setTime(u.getTime()+a.getFloat64(s,true)*1e3);s+=8}if(i&8){c=a.getUint32(s,true);s+=4}if(i&16){f=a.getUint32(s,true);s+=4}var h;switch(n){case 0:break;case 2:h={t:"n",v:l};break;case 3:h={t:"s",v:r[c]};break;case 5:h={t:"d",v:u};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(f>-1)h={t:"s",v:t[f]};else throw new Error("Unsupported cell type ".concat(n," : ").concat(i&31," : ").concat(e.slice(0,4)))}break;case 10:h={t:"n",v:l};break;default:throw new Error("Unsupported cell type ".concat(n," : ").concat(i&31," : ").concat(e.slice(0,4)));}return h}function tb(e,r,t){switch(e[0]){case 3:;case 4:return eb(e,r,t);case 5:return rb(e,r,t);default:throw new Error("Unsupported payload version ".concat(e[0]));}}function ab(e){var r=Km(e);return $m(r[1][0].data)}function nb(e,r){var t=Km(r.data);var a=Ym(t[1][0].data);var n=t[3];var i=[];(n||[]).forEach(function(r){var t=Km(r.data);var n=Ym(t[1][0].data)>>>0;switch(a){case 1:i[n]=Vm(t[3][0].data);break;case 8:{var s=e[ab(t[9][0].data)][0];var f=Km(s.data);var c=e[ab(f[1][0].data)][0];var l=Ym(c.meta[1][0].data);if(l!=2001)throw new Error("2000 unexpected reference to ".concat(l));var o=Km(c.data);i[n]=o[3].map(function(e){return Vm(e.data)}).join("")}break;}});return i}function ib(e){var r,t,a,n,i,s,f,c,l,o;var u=Km(e);var h=Ym(u[1][0].data)>>>0;var d=(t=(r=u[3])==null?void 0:r[0])==null?void 0:t.data;var v=((n=(a=u[4])==null?void 0:a[0])==null?void 0:n.data)&&zm(u[4][0].data);var p=(s=(i=u[6])==null?void 0:i[0])==null?void 0:s.data;var m=((c=(f=u[7])==null?void 0:f[0])==null?void 0:c.data)&&zm(u[7][0].data);var b=((o=(l=u[8])==null?void 0:l[0])==null?void 0:o.data)&&Ym(u[8][0].data)>0||false;var g=b?4:1;var w=[];var k=0;for(var T=0;T>>0)-1;if(i.e.c<0)throw new Error("Invalid col varint ".concat(n[7][0].data));t["!ref"]=Et(i);{var s=Km(n[4][0].data);var f=nb(e,e[ab(s[4][0].data)][0]);var c=((a=s[17])==null?void 0:a[0])?nb(e,e[ab(s[17][0].data)][0]):[];{var l=Km(s[3][0].data);var o=[];l[1].forEach(function(r){var t=Km(r.data);var a=e[ab(t[2][0].data)][0];var n=Ym(a.meta[1][0].data);if(n!=6002)throw new Error("6001 unexpected reference to ".concat(n));o.push({id:Ym(t[1][0].data),ref:sb(e,a)})});o.forEach(function(e){e.ref.forEach(function(e,r){e.forEach(function(e,a){var n=kt({r:r,c:a});var i=tb(e,f,c);if(i)t[n]=i})})})}}}function cb(e,r){var t=Km(r.data);var a={"!ref":"A1"};var n=e[ab(t[2][0].data)];var i=Ym(n[0].meta[1][0].data);if(i!=6001)throw new Error("6000 unexpected reference to ".concat(i));fb(e,n[0],a);return a}function lb(e,r){var t;var a=Km(r.data);var n={name:((t=a[1])==null?void 0:t[0])?Vm(a[1][0].data):"",sheets:[]};var i=Jm(a[2],ab);i.forEach(function(r){e[r].forEach(function(r){var t=Ym(r.meta[1][0].data);if(t==6e3)n.sheets.push(cb(e,r))})});return n}function ob(e,r){var t=ig();var a=Km(r.data);var n=Jm(a[1],ab);n.forEach(function(r){e[r].forEach(function(r){var a=Ym(r.meta[1][0].data);if(a==2){var n=lb(e,r);n.sheets.forEach(function(e){sg(t,e,n.name)})}})});if(t.SheetNames.length==0)throw new Error("Empty NUMBERS file");return t}function ub(e){var r=[];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;var t;try{t=Qm(e.content)}catch(a){return console.log("?? "+e.content.length+" "+(a.message||a))}var n;try{n=qm(t)}catch(a){return console.log("## "+(a.message||a))}n.forEach(function(e){r[+e.id]=e.messages})});if(!r.length)throw new Error("File has no messages");var t;r.forEach(function(e){e.forEach(function(e){var r=Ym(e.meta[1][0].data)>>>0;if(r==1){if(!t)t=e;else throw new Error("Document has multiple roots")}})});if(!t)throw new Error("Cannot find Document root");return ob(r,t)}function hb(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 db(e){hb([["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 vb(e){hb([["cellDates",false],["bookSST",false],["bookType","xlsx"],["compression",false],["WTF",false]])(e)}function pb(e){if(Ba.WS.indexOf(e)>-1)return"sheet";if(Ba.CS&&e==Ba.CS)return"chart";if(Ba.DS&&e==Ba.DS)return"dialog";if(Ba.MS&&e==Ba.MS)return"macro";return e&&e.length?e:"sheet"}function mb(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,pb(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function bb(e,r,t,a,n,i,s,f,c,l,o,u){try{i[a]=Ha(Se(e,t,true),r);var h=Ee(e,r);var d;switch(f){case"sheet":d=fp(h,r,n,c,i[a],l,o,u);break;case"chart":d=cp(h,r,n,c,i[a],l,o,u);if(!d||!d["!drawel"])break;var v=Re(d["!drawel"].Target,r);var p=Wa(v);var m=Xl(Se(e,v,true),Ha(Se(e,p,true),v));var b=Re(m,v);var g=Wa(b);d=Av(Se(e,b,true),b,c,Ha(Se(e,g,true),b),l,d);break;case"macro":d=lp(h,r,n,c,i[a],l,o,u);break;case"dialog":d=op(h,r,n,c,i[a],l,o,u);break;default:throw new Error("Unrecognized sheet type "+f);}s[a]=d;var w=[];if(i&&i[a])Y(i[a]).forEach(function(t){var n="";if(i[a][t].Type==Ba.CMNT){n=Re(i[a][t].Target,r);var s=vp(Ee(e,n,true),n,c);if(!s||!s.length)return;Kl(d,s,false)}if(i[a][t].Type==Ba.TCMNT){n=Re(i[a][t].Target,r);w=w.concat(Zl(Ee(e,n,true),c))}});if(w&&w.length)Kl(d,w,true,c.people||[])}catch(k){if(c.WTF)throw k}}function gb(e){return e.charAt(0)=="/"?e.slice(1):e}function wb(e,r){P(D);r=r||{};db(r);if(ke(e,"META-INF/manifest.xml"))return Mm(e,r);if(ke(e,"objectdata.xml"))return Mm(e,r);if(ke(e,"Index/Document.iwa")){if(typeof Uint8Array=="undefined")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof ub!="undefined"){if(e.FileIndex)return ub(e);var t=z.utils.cfb_new();_e(e).forEach(function(r){xe(t,r,ye(e,r))});return ub(t)}throw new Error("Unsupported NUMBERS file")}if(!ke(e,"[Content_Types].xml")){if(ke(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(ke(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");throw new Error("Unsupported ZIP file")}var a=_e(e);var n=La(Se(e,"[Content_Types].xml"));var i=false;var s,f;if(n.workbooks.length===0){f="xl/workbook.xml";if(Ee(e,f,true))n.workbooks.push(f)}if(n.workbooks.length===0){f="xl/workbook.bin";if(!Ee(e,f,true))throw new Error("Could not find workbook");n.workbooks.push(f);i=true}if(n.workbooks[0].slice(-3)=="bin")i=true;var c={};var l={};if(!r.bookSheets&&!r.bookProps){kh=[];if(n.sst)try{kh=dp(Ee(e,gb(n.sst)),n.sst,r)}catch(o){if(r.WTF)throw o}if(r.cellStyles&&n.themes.length)c=hp(Se(e,n.themes[0].replace(/^\//,""),true)||"",n.themes[0],r);if(n.style)l=up(Ee(e,gb(n.style)),n.style,c,r)}n.links.map(function(t){try{var a=Ha(Se(e,Wa(gb(t))),t);return mp(Ee(e,gb(t)),a,t,r)}catch(n){}});var u=sp(Ee(e,gb(n.workbooks[0])),n.workbooks[0],r);var h={},d="";if(n.coreprops.length){d=Ee(e,gb(n.coreprops[0]),true);if(d)h=rn(d);if(n.extprops.length!==0){d=Ee(e,gb(n.extprops[0]),true);if(d)cn(d,h,r)}}var v={};if(!r.bookSheets||r.bookProps){if(n.custprops.length!==0){d=Se(e,gb(n.custprops[0]),true);if(d)v=un(d,r)}}var p={};if(r.bookSheets||r.bookProps){if(u.Sheets)s=u.Sheets.map(function I(e){return e.name});else if(h.Worksheets&&h.SheetNames.length>0)s=h.SheetNames;if(r.bookProps){p.Props=h;p.Custprops=v}if(r.bookSheets&&typeof s!=="undefined")p.SheetNames=s;if(r.bookSheets?p.SheetNames:r.bookProps)return p}s={};var m={};if(r.bookDeps&&n.calcchain)m=pp(Ee(e,gb(n.calcchain)),n.calcchain,r);var b=0;var g={};var w,k;{var T=u.Sheets;h.Worksheets=T.length;h.SheetNames=[];for(var E=0;E!=T.length;++E){h.SheetNames[E]=T[E].name}}var S=i?"bin":"xml";var y=n.workbooks[0].lastIndexOf("/");var _=(n.workbooks[0].slice(0,y+1)+"_rels/"+n.workbooks[0].slice(y+1)+".rels").replace(/^\//,"");if(!ke(e,_))_="xl/_rels/workbook."+S+".rels";var x=Ha(Se(e,_,true),_.replace(/_rels.*/,"s5s"));if((n.metadata||[]).length>=1){r.xlmeta=bp(Ee(e,gb(n.metadata[0])),n.metadata[0],r)}if((n.people||[]).length>=1){r.people=eo(Ee(e,gb(n.people[0])),r)}if(x)x=mb(x,u.Sheets);var A=Ee(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(b=0;b!=h.Worksheets;++b){var C="sheet";if(x&&x[b]){w="xl/"+x[b][1].replace(/[\/]?xl\//,"");if(!ke(e,w))w=x[b][1];if(!ke(e,w))w=_.replace(/_rels\/.*$/,"")+x[b][1];C=x[b][2]}else{w="xl/worksheets/sheet"+(b+1-A)+"."+S;w=w.replace(/sheet0\./,"sheet.")}k=w.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(h.SheetNames[b].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var R=false;for(var O=0;O!=r.sheets.length;++O){if(typeof r.sheets[O]=="number"&&r.sheets[O]==b)R=1;if(typeof r.sheets[O]=="string"&&r.sheets[O].toLowerCase()==h.SheetNames[b].toLowerCase())R=1}if(!R)continue e};}bb(e,w,k,h.SheetNames[b],b,g,s,C,r,u,c,l)}p={Directory:n,Workbook:u,Props:h,Custprops:v,Deps:m,Sheets:s,SheetNames:h.SheetNames,Strings:kh,Styles:l,Themes:c,SSF:D.get_table()};if(r&&r.bookFiles){if(e.files){p.keys=a;p.files=e.files}else{p.keys=[];p.files={};e.FullPaths.forEach(function(r,t){r=r.replace(/^Root Entry[\/]/,"");p.keys.push(r);p.files[r]=e.FileIndex[t]})}}if(r&&r.bookVBA){if(n.vba.length>0)p.vbaraw=Ee(e,gb(n.vba[0]),true);else if(n.defaults&&n.defaults.bin===co)p.vbaraw=Ee(e,"xl/vbaProject.bin",true)}return p}function kb(e,r){var t=r||{};var a="Workbook",n=z.find(e,a);try{a="/!DataSpaces/Version";n=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);Bf(n.content);a="/!DataSpaces/DataSpaceMap";n=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=Hf(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=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=zf(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);Gf(n.content)}catch(f){}a="/EncryptionInfo";n=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var c=$f(n.content);a="/EncryptedPackage";n=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);if(c[0]==4&&typeof decrypt_agile!=="undefined")return decrypt_agile(c[1],n.content,t.password||"",t);if(c[0]==2&&typeof decrypt_std76!=="undefined")return decrypt_std76(c[1],n.content,t.password||"",t);throw new Error("File is password-protected")}function Tb(e,r){if(r.bookType=="ods")return Hm(e,r);if(r.bookType=="xlsb")return Eb(e,r);return Sb(e,r)}function Eb(e,r){$l=1024;if(e&&!e.SSF){e.SSF=D.get_table()}if(e&&e.SSF){P(D);D.load_table(e.SSF);r.revssf=q(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(Eh)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t=r.bookType=="xlsb"?"bin":"xml";var a=uo.indexOf(r.bookType)>-1;var n=Pa();vb(r=r||{});var i=Ae();var s="",f=0;r.cellXfs=[];xh(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";xe(i,s,an(e.Props,r));n.coreprops.push(s);ja(r.rels,2,s,Ba.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 c=[];for(var l=0;l0){s="docProps/custom.xml";xe(i,s,hn(e.Custprops,r));n.custprops.push(s);ja(r.rels,4,s,Ba.CUST_PROPS)}for(f=1;f<=e.SheetNames.length;++f){var o={"!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;xe(i,s,wp(f-1,s,r,e,o));n.sheets.push(s);ja(r.wbrels,-1,"worksheets/sheet"+f+"."+t,Ba.WS[0]);}if(u){var d=u["!comments"];var v=false;var p="";if(d&&d.length>0){p="xl/comments"+f+"."+t;xe(i,p,Sp(d,p,r));n.comments.push(p);ja(o,-1,"../comments"+f+"."+t,Ba.CMNT);v=true}if(u["!legacy"]){if(v)xe(i,"xl/drawings/vmlDrawing"+f+".vml",Yl(f,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(o["!id"].rId1)xe(i,Wa(s),Va(o))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;xe(i,s,Ep(r.Strings,s,r));n.strs.push(s);ja(r.wbrels,-1,"sharedStrings."+t,Ba.SST)}s="xl/workbook."+t;xe(i,s,gp(e,s,r));n.workbooks.push(s);ja(r.rels,1,s,Ba.WB);s="xl/theme/theme1.xml";xe(i,s,Tl(e.Themes,r));n.themes.push(s);ja(r.wbrels,-1,"theme/theme1.xml",Ba.THEME);s="xl/styles."+t;xe(i,s,Tp(e,s,r));n.styles.push(s);ja(r.wbrels,-1,"styles."+t,Ba.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";xe(i,s,e.vbaraw);n.vba.push(s);ja(r.wbrels,-1,"vbaProject.bin",Ba.VBA)}s="xl/metadata."+t;xe(i,s,yp(s));n.metadata.push(s);ja(r.wbrels,-1,"metadata."+t,Ba.XLMETA);xe(i,"[Content_Types].xml",Ua(n,r));xe(i,"_rels/.rels",Va(r.rels));xe(i,"xl/_rels/workbook."+t+".rels",Va(r.wbrels));delete r.revssf;delete r.ssf;return i}function Sb(e,r){$l=1024;if(e&&!e.SSF){e.SSF=D.get_table()}if(e&&e.SSF){P(D);D.load_table(e.SSF);r.revssf=q(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(Eh)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=uo.indexOf(r.bookType)>-1; -var n=Pa();vb(r=r||{});var i=Ae();var s="",f=0;r.cellXfs=[];xh(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";xe(i,s,an(e.Props,r));n.coreprops.push(s);ja(r.rels,2,s,Ba.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 c=[];for(var l=0;l0){s="docProps/custom.xml";xe(i,s,hn(e.Custprops,r));n.custprops.push(s);ja(r.rels,4,s,Ba.CUST_PROPS)}var o=["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;xe(i,s,fd(f-1,r,e,u));n.sheets.push(s);ja(r.wbrels,-1,"worksheets/sheet"+f+"."+t,Ba.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+"."+t;xe(i,m,Ql(v,o,r));n.threadedcomments.push(m);ja(u,-1,"../threadedComments/threadedComment"+f+"."+t,Ba.TCMNT)}m="xl/comments"+f+"."+t;xe(i,m,ql(v,r));n.comments.push(m);ja(u,-1,"../comments"+f+"."+t,Ba.CMNT);p=true}if(h["!legacy"]){if(p)xe(i,"xl/drawings/vmlDrawing"+f+".vml",Yl(f,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(u["!id"].rId1)xe(i,Wa(s),Va(u))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;xe(i,s,If(r.Strings,r));n.strs.push(s);ja(r.wbrels,-1,"sharedStrings."+t,Ba.SST)}s="xl/workbook."+t;xe(i,s,$v(e,r));n.workbooks.push(s);ja(r.rels,1,s,Ba.WB);s="xl/theme/theme1.xml";xe(i,s,Tl(e.Themes,r));n.themes.push(s);ja(r.wbrels,-1,"theme/theme1.xml",Ba.THEME);s="xl/styles."+t;xe(i,s,Mc(e,r));n.styles.push(s);ja(r.wbrels,-1,"styles."+t,Ba.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";xe(i,s,e.vbaraw);n.vba.push(s);ja(r.wbrels,-1,"vbaProject.bin",Ba.VBA)}s="xl/metadata."+t;xe(i,s,Wl());n.metadata.push(s);ja(r.wbrels,-1,"metadata."+t,Ba.XLMETA);if(o.length>1){s="xl/persons/person.xml";xe(i,s,ro(o,r));n.people.push(s);ja(r.wbrels,-1,"persons/person.xml",Ba.PEOPLE)}xe(i,"[Content_Types].xml",Ua(n,r));xe(i,"_rels/.rels",Va(r.rels));xe(i,"xl/_rels/workbook."+t+".rels",Va(r.wbrels));delete r.revssf;delete r.ssf;return i}function yb(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=g.decode(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 _b(e,r){if(z.find(e,"EncryptedPackage"))return kb(e,r);return im(e,r)}function xb(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=w&&Buffer.isBuffer(e)?"buffer":"base64";t=Ce(a,n);return wb(t,n)}function Ab(e,r){var t=0;e:while(t=2&&n[3]===0)return gf.to_workbook(a,t);if(n[2]===0&&(n[3]===8||n[3]===9))return gf.to_workbook(a,t)}break;case 3:;case 131:;case 139:;case 140:return hf.to_workbook(a,t);case 123:if(n[1]===92&&n[2]===114&&n[3]===116)return sc.to_workbook(a,t);break;case 10:;case 13:;case 32:return Cb(a,t);case 137:if(n[1]===80&&n[2]===78&&n[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;}if(uf.indexOf(n[0])>-1&&n[2]<=12&&n[3]<=31)return hf.to_workbook(a,t);return Ib(e,a,t,i)}function Fb(e,r){var t=r||{};t.type="file";return Nb(e,t)}function Db(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return j(r.file,z.write(e,{type:w?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return z.write(e,r)}function Pb(e,r){var t=oe(r||{});var a=Tb(e,t);return Mb(a,t)}function Lb(e,r){var t=oe(r||{});var a=Sb(e,t);return Mb(a,t)}function Mb(e,r){var t={};var a=w?"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?z.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(x(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return Db(encrypt_agile(n,r.password),r);if(r.type==="file")return j(r.file,n);return r.type=="string"?Je(n):n}function Ub(e,r){var t=r||{};var a=sm(e,t);return Db(a,t)}function Bb(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return g.encode(qe(a));case"binary":return qe(a);case"string":return e;case"file":return j(r.file,a,"utf8");case"buffer":{if(w)return k(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return Bb(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Wb(e,r){switch(r.type){case"base64":return g.encode(e);case"binary":return e;case"string":return e;case"file":return j(r.file,e,"binary");case"buffer":{if(w)return k(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Hb(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var u=ut(c.s.r);var h=[];var d=[];var v=0,p=0;var m=Array.isArray(e);var b=c.s.r,g=0;var w={};if(m&&!e[b])e[b]=[];var k=l.skipHidden&&e["!cols"]||[];var T=l.skipHidden&&e["!rows"]||[];for(g=c.s.c;g<=c.e.c;++g){if((k[g]||{}).hidden)continue;h[g]=pt(g);t=m?e[b][g]:e[h[g]+u];switch(a){case 1:i[g]=g-c.s.c;break;case 2:i[g]=h[g];break;case 3:i[g]=l.header[g-c.s.c];break;default:if(t==null)t={w:"__EMPTY",t:"s"};f=s=_t(t,null,l);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=c.s.r+n;b<=c.e.r;++b){if((T[b]||{}).hidden)continue;var E=Yb(e,c,b,h,a,i,m,l);if(E.isempty===false||(a===1?l.blankrows!==false:!!l.blankrows))d[v++]=E.row}d.length=v;return d}var Jb=/"/g;function qb(e,r,t,a,n,i,s,f){var c=true;var l=[],o="",u=ut(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)o="";else if(d.v!=null){c=false;o=""+(f.rawNumbers&&d.t=="n"?d.v:_t(d,null,f));for(var v=0,p=0;v!==o.length;++v)if((p=o.charCodeAt(v))===n||p===i||p===34||f.forceQuotes){o='"'+o.replace(Jb,'""')+'"';break}if(o=="ID")o='"ID"'}else if(d.f!=null&&!d.F){c=false;o="="+d.f;if(o.indexOf(",")>=0)o='"'+o.replace(Jb,'""')+'"'}else o="";l.push(o)}if(f.blankrows===false&&c)return null;return l.join(s)}function Zb(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=St(e["!ref"]);var i=a.FS!==undefined?a.FS:",",s=i.charCodeAt(0);var f=a.RS!==undefined?a.RS:"\n",c=f.charCodeAt(0);var l=new RegExp((i=="|"?"\\|":i)+"+$");var o="",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]=pt(v);var p=0;for(var m=n.s.r;m<=n.e.r;++m){if((d[m]||{}).hidden)continue;o=qb(e,n,m,u,s,c,i,a);if(o==null){continue}if(a.strip)o=o.replace(l,"");if(o||a.blankrows!==false)t.push((p++?f:"")+o)}delete a.dense;return t.join("")}function Qb(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=Zb(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 eg(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=St(e["!ref"]),i="",s=[],f;var c=[];var l=Array.isArray(e);for(f=n.s.c;f<=n.e.c;++f)s[f]=pt(f);for(var o=n.s.r;o<=n.e.r;++o){i=ut(o);for(f=n.s.c;f<=n.e.c;++f){r=s[f]+i;t=l?(e[o]||[])[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;c[c.length]=r+"="+a}}return c}function rg(e,r,t){var a=t||{};var n=+!a.skipHeader;var i=e||{};var s=0,f=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var c=typeof a.origin=="string"?wt(a.origin):a.origin;s=c.r;f=c.c}}var l;var o={s:{c:0,r:0},e:{c:f,r:s+r.length-1+n}};if(i["!ref"]){var u=St(i["!ref"]);o.e.c=Math.max(o.e.c,u.e.c);o.e.r=Math.max(o.e.r,u.e.r);if(s==-1){s=u.e.r+1;o.e.r=s+r.length-1+n}}else{if(s==-1){s=0;o.e.r=r.length-1+n}}var h=a.header||[],d=0;r.forEach(function(e,r){Y(e).forEach(function(t){if((d=h.indexOf(t))==-1)h[d=h.length]=t;var c=e[t];var o="z";var u="";var v=kt({c:f+d,r:s+r+n});l=ag(i,v);if(c&&typeof c==="object"&&!(c instanceof Date)){i[v]=c}else{if(typeof c=="number")o="n";else if(typeof c=="boolean")o="b";else if(typeof c=="string")o="s";else if(c instanceof Date){o="d";if(!a.cellDates){o="n";c=ee(c)}u=a.dateNF||D._table[14]}else if(c===null&&a.nullError){o="e";c=0}if(!l)i[v]=l={t:o,v:c};else{l.t=o;l.v=c;delete l.w;delete l.R;if(u)l.z=u}if(u)l.z=u}})});o.e.c=Math.max(o.e.c,f+h.length-1);var v=ut(s);if(n)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 ig(){return{SheetNames:[],Sheets:{}}}function sg(e,r,t){if(!t)for(var a=1;a<=65535;++a,t=undefined)if(e.SheetNames.indexOf(t="Sheet"+a)==-1)break;if(!t||e.SheetNames.length>=65535)throw new Error("Too many worksheets");zv(t);if(e.SheetNames.indexOf(t)>=0)throw new Error("Worksheet with name |"+t+"| already exists!");e.SheetNames.push(t);e.Sheets[t]=r}function fg(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=ng(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 cg(e,r){e.z=r;return e}function lg(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function og(e,r,t){return lg(e,"#"+r,t)}function ug(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function hg(e,r,t,a){var n=typeof r!="string"?r:St(r);var i=typeof r=="string"?r:Et(r);for(var s=n.s.r;s<=n.e.r;++s)for(var f=n.s.c;f<=n.e.c;++f){var c=ag(e,s,f);c.t="n";c.F=i;delete c.v;if(s==n.s.r&&f==n.s.c){c.f=t;if(a)c.D=true}}return e}var dg={encode_col:pt,encode_row:ut,encode_cell:kt,encode_range:Et,decode_col:vt,decode_row:ot,split_cell:gt,decode_cell:wt,decode_range:Tt,format_cell:_t,sheet_add_aoa:At,sheet_add_json:rg,sheet_add_dom:Rm,aoa_to_sheet:Ct,json_to_sheet:tg,table_to_sheet:Om,table_to_book:Im,sheet_to_csv:Zb,sheet_to_txt:Qb,sheet_to_json:Kb,sheet_to_html:Cm.from_sheet,sheet_to_formulae:eg,sheet_to_row_object_array:Kb,sheet_get_cell:ag,book_new:ig,book_append_sheet:sg,book_set_sheet_visibility:fg,cell_set_number_format:cg,cell_set_hyperlink:lg,cell_set_internal_link:og,cell_add_comment:ug,sheet_set_array_formula:hg,consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};var vg;function pg(e){vg=e}function mg(e,r){var t=vg();var a=r==null?{}:r;if(e==null||e["!ref"]==null){t.push(null);return t}var n=St(e["!ref"]);var i=a.FS!==undefined?a.FS:",",s=i.charCodeAt(0);var f=a.RS!==undefined?a.RS:"\n",c=f.charCodeAt(0);var l=new RegExp((i=="|"?"\\|":i)+"+$");var o="",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]=pt(v);var p=n.s.r;var m=false,b=0;t._read=function(){if(!m){m=true;return t.push("\ufeff")}while(p<=n.e.r){++p;if((d[p-1]||{}).hidden)continue;o=qb(e,n,p-1,u,s,c,i,a);if(o!=null){if(a.strip)o=o.replace(l,"");if(o||a.blankrows!==false)return t.push((b++?f:"")+o)}}return t.push(null)};return t}function bg(e,r){var t=vg();var a=r||{};var n=a.header!=null?a.header:Cm.BEGIN;var i=a.footer!=null?a.footer:Cm.END;t.push(n);var s=Tt(e["!ref"]);a.dense=Array.isArray(e);t.push(Cm._preamble(e,s,a));var f=s.s.r;var c=false;t._read=function(){if(f>s.e.r){if(!c){c=true;t.push(""+i)}return t.push(null)}while(f<=s.e.r){t.push(Cm._row(e,s,f,a));++f;break}};return t}function gg(e,r){var t=vg({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,c="";var l={s:{r:0,c:0},e:{r:0,c:0}};var o=r||{};var u=o.range!=null?o.range:e["!ref"];if(o.header===1)n=1;else if(o.header==="A")n=2;else if(Array.isArray(o.header))n=3;switch(typeof u){case"string":l=St(u);break;case"number":l=St(e["!ref"]);l.s.r=u;break;default:l=u;}if(n>0)i=0;var h=ut(l.s.r);var d=[];var v=0;var p=Array.isArray(e);var m=l.s.r,b=0;var g={};if(p&&!e[m])e[m]=[];var w=o.skipHidden&&e["!cols"]||[];var k=o.skipHidden&&e["!rows"]||[];for(b=l.s.c;b<=l.e.c;++b){if((w[b]||{}).hidden)continue;d[b]=pt(b);a=p?e[m][b]:e[d[b]+h];switch(n){case 1:s[b]=b-l.s.c;break;case 2:s[b]=d[b];break;case 3:s[b]=o.header[b-l.s.c];break;default:if(a==null)a={w:"__EMPTY",t:"s"};c=f=_t(a,null,o);v=g[f]||0;if(!v)g[f]=1;else{do{c=f+"_"+v++}while(g[c]);g[f]=v;g[c]=1}s[b]=c;}}m=l.s.r+i;t._read=function(){while(m<=l.e.r){if((k[m-1]||{}).hidden)continue;var r=Yb(e,l,m,d,n,s,p,o);++m;if(r.isempty===false||(n===1?o.blankrows!==false:!!o.blankrows)){t.push(r.row);return}}return t.push(null)};return t}var wg={to_json:gg,to_html:bg,to_csv:mg,set_readable:pg};if(typeof im!=="undefined")e.parse_xlscfb=im;e.parse_zip=wb;e.read=Nb;e.readFile=Fb;e.readFileSync=Fb;e.write=Vb;e.writeFile=jb;e.writeFileSync=jb;e.writeFileAsync=$b;e.utils=dg;e.writeXLSX=zb;e.writeFileXLSX=Xb;e.SSF=D;if(typeof wg!=="undefined")e.stream=wg;if(typeof z!=="undefined")e.CFB=z;if(typeof require!=="undefined"){var kg=undefined;if((kg||{}).Readable)pg(kg.Readable)}}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.18.5";var r=1200,t=1252;var a;if(typeof cptable!=="undefined")a=cptable;else if(typeof module!=="undefined"&&typeof require!=="undefined"){a=undefined}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 o=function(e){r=e;s(e)};function c(){o(1200);f()}function l(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 Yw(e){return String.fromCharCode(e)};var p=function Kw(e){return String.fromCharCode(e)};if(typeof a!=="undefined"){o=function(e){r=e;s(e)};d=function(e){if(e.charCodeAt(0)===255&&e.charCodeAt(1)===254){return a.utils.decode(1200,l(e.slice(2)))}return e};v=function Jw(e){if(r===1200)return String.fromCharCode(e);return a.utils.decode(r,[e&255,e>>8])[0]};p=function qw(e){return a.utils.decode(t,[e])[0]}}var m=null;var b=true;var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function w(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,o=0;for(var c=0;c>2;a=e.charCodeAt(c++);s=(t&3)<<4|a>>4;n=e.charCodeAt(c++);f=(a&15)<<2|n>>6;o=n&63;if(isNaN(a)){f=o=64}else if(isNaN(n)){o=64}r+=g.charAt(i)+g.charAt(s)+g.charAt(f)+g.charAt(o)}return r}function k(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,o=0;e=e.replace(/[^\w\+\/\=]/g,"");for(var c=0;c>4;r+=String.fromCharCode(t);f=g.indexOf(e.charAt(c++));a=(s&15)<<4|f>>2;if(f!==64){r+=String.fromCharCode(a)}o=g.indexOf(e.charAt(c++));n=(f&3)<<6|o;if(o!==64){r+=String.fromCharCode(n)}}return r}var T=function(){return typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node}();var E=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(){}}();function y(e){if(T)return Buffer.alloc?Buffer.alloc(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function S(e){if(T)return Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var _=function Zw(e){if(T)return E(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function A(e){if(typeof ArrayBuffer==="undefined")return _(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 x(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=y(65535);a=65530}}r.push(n.slice(0,t));return O(r)}var N=/\u0000/g,F=/[\u0001-\u0006]/g;function D(e){var r="",t=e.length-1;while(t>=0)r+=e.charAt(t--);return r}function P(e,r){var t=""+e;return t.length>=r?t:wr("0",r-t.length)+t}function L(e,r){var t=""+e;return t.length>=r?t:wr(" ",r-t.length)+t}function M(e,r){var t=""+e;return t.length>=r?t:t+wr(" ",r-t.length)}function U(e,r){var t=""+Math.round(e);return t.length>=r?t:wr("0",r-t.length)+t}function B(e,r){var t=""+e;return t.length>=r?t:wr("0",r-t.length)+t}var W=Math.pow(2,32);function H(e,r){if(e>W||e<-W)return U(e,r);var t=Math.round(e);return B(t,r)}function z(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 V=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var G=[["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 X={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 Y={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 K={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 J(e,r,t){var a=e<0?-1:1;var n=e*a;var i=0,s=1,f=0;var o=1,c=0,l=0;var u=Math.floor(n);while(cr){if(c>r){l=o;f=i}else{l=c;f=s}}if(!t)return[0,a*f,l];var h=Math.floor(a*f/l);return[h,a*f-h*l,l]}function q(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=oe(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 Z=new Date(1899,11,31,0,0,0);var Q=Z.getTime();var ee=new Date(1900,2,1,0,0,0);function re(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=ee)t+=24*60*60*1e3;return(t-(Q+(e.getTimezoneOffset()-Z.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function te(e){return e.indexOf(".")==-1?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function ae(e){if(e.indexOf("E")==-1)return e;return e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}function ne(e){var r=e<0?12:11;var t=te(e.toFixed(12));if(t.length<=r)return t;t=e.toPrecision(10);if(t.length<=r)return t;return e.toExponential(5)}function ie(e){var r=te(e.toFixed(11));return r.length>(e<0?12:11)||r==="0"||r==="-0"?e.toPrecision(6):r}function se(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=ne(e);else if(r===10)t=e.toFixed(10).substr(0,12);else t=ie(e);return te(ae(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):se(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return Be(14,re(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}function oe(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function ce(e,r,t,a){var n="",i=0,s=0,f=t.y,o,c=0;switch(e){case 98:f=t.y+543;case 121:switch(r.length){case 1:;case 2:o=f%100;c=2;break;default:o=f%1e4;c=4;break;}break;case 109:switch(r.length){case 1:;case 2:o=t.m;c=r.length;break;case 3:return G[t.m-1][1];case 5:return G[t.m-1][0];default:return G[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:o=t.d;c=r.length;break;case 3:return V[t.q][0];default:return V[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 P(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=P(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;}c=r.length===3?1:2;break;case 101:o=f;c=1;break;}var l=c>0?P(o,c):"";return l}function le(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 ue=/%/g;function he(e,r,t){var a=r.replace(ue,""),n=r.length-a.length;return Ie(e,a,t*Math.pow(10,2*n))+wr("%",n)}function de(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return Ie(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function ve(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"-"+ve(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 pe=/# (\?+)( ?)\/( ?)(\d+)/;function me(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?wr(" ",e[1].length+1+e[4].length):L(s,e[1].length)+e[2]+"/"+e[3]+P(f,e[4].length))}function be(e,r,t){return t+(r===0?"":""+r)+wr(" ",e[1].length+2+e[4].length)}var ge=/^#*0*\.([0#]+)/;var we=/\).*[0#]/;var ke=/\(###\) ###\\?-####/;function Te(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 Ee(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function ye(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 Se(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function _e(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function Ae(e,r,t){if(e.charCodeAt(0)===40&&!r.match(we)){var a=r.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(t>=0)return Ae("n",a,t);return"("+Ae("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return de(e,r,t);if(r.indexOf("%")!==-1)return he(e,r,t);if(r.indexOf("E")!==-1)return ve(r,t);if(r.charCodeAt(0)===36)return"$"+Ae(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,f,o=Math.abs(t),c=t<0?"-":"";if(r.match(/^00+$/))return c+H(o,r.length);if(r.match(/^[#?]+$/)){n=H(t,0);if(n==="0")n="";return n.length>r.length?n:Te(r.substr(0,r.length-n.length))+n}if(i=r.match(pe))return me(i,o,c);if(r.match(/^#+0+$/))return c+H(o,r.length-r.indexOf("0"));if(i=r.match(ge)){n=Ee(t,i[1].length).replace(/^([^\.]+)$/,"$1."+Te(i[1])).replace(/\.$/,"."+Te(i[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+wr("0",Te(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 c+Ee(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 c+le(H(o,0));if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Ae(e,r,-t):le(""+(Math.floor(t)+Se(t,i[1].length)))+"."+P(ye(t,i[1].length),i[1].length)}if(i=r.match(/^#,#*,#0/))return Ae(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=D(Ae(e,r.replace(/[\\-]/g,""),t));s=0;return D(D(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return s=0)return Oe("n",a,t);return"("+Oe("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return xe(e,r,t);if(r.indexOf("%")!==-1)return Ce(e,r,t);if(r.indexOf("E")!==-1)return Re(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),c=t<0?"-":"";if(r.match(/^00+$/))return c+P(o,r.length);if(r.match(/^[#?]+$/)){n=""+t;if(t===0)n="";return n.length>r.length?n:Te(r.substr(0,r.length-n.length))+n}if(i=r.match(pe))return be(i,o,c);if(r.match(/^#+0+$/))return c+P(o,r.length-r.indexOf("0"));if(i=r.match(ge)){n=(""+t).replace(/^([^\.]+)$/,"$1."+Te(i[1])).replace(/\.$/,"."+Te(i[1]));n=n.replace(/\.(\d*)$/,function(e,r){return"."+r+wr("0",Te(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 c+(""+o).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".")}if(i=r.match(/^#{1,3},##0(\.?)$/))return c+le(""+o);if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Oe(e,r,-t):le(""+t)+"."+wr("0",i[1].length)}if(i=r.match(/^#,#*,#0/))return Oe(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=D(Oe(e,r.replace(/[\\-]/g,""),t));s=0;return D(D(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 Pe(e,r,t,a){var n=[],i="",s=0,f="",o="t",c,l,u;var h="H";while(s=12?"P":"A";p.t="T";h="h";s+=3}else if(e.substr(s,5).toUpperCase()==="AM/PM"){if(c!=null)p.v=c.H>=12?"PM":"AM";p.t="T";s+=5;h="h"}else if(e.substr(s,5).toUpperCase()==="上午/下午"){if(c!=null)p.v=c.H>=12?"下午":"上午";p.t="T";s+=5;h="h"}else{p.t="t";++s}if(c==null&&p.t==="T")return"";n[n.length]=p;o=f;break;case"[":i=f;while(e.charAt(s++)!=="]"&&s-1){i=(i.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!De(e))n[n.length]={t:"t",v:i}}break;case".":if(c!=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,b=0,g;for(s=n.length-1,o="t";s>=0;--s){switch(n[s].t){case"h":;case"H":n[s].t=h;o="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":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(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(s=0;s0){if(w.charCodeAt(0)==40){E=r<0&&w.charCodeAt(0)===45?-r:r;y=Ie("n",w,E)}else{E=r<0&&a>1?-r:r;y=Ie("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;l=n[s].v.indexOf(".")>-1&&s===S?n[s].v.indexOf(".")-1:n[s].v.length-1;T=n[s].v.substr(l+1);for(;l>=0;--l){if(k>=0&&(n[s].v.charAt(l)==="0"||n[s].v.charAt(l)==="#"))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,l);for(;l-1){E=a>1&&r<0&&s>0&&n[s-1].v==="-"?-r:r;n[s].v=Ie(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 Le=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function Me(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 Ue(e,r){var t=Ne(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(Le);var f=t[1].match(Le);return Me(r,s)?[a,t[0]]:Me(r,f)?[a,t[1]]:[a,t[s!=null&&f!=null?2:1]]}return[a,i]}function Be(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:X)[e];if(a==null)a=t.table&&t.table[Y[e]]||X[Y[e]];if(a==null)a=K[e]||"General";break;}if(z(a,0))return fe(r,t);if(r instanceof Date)r=re(r,t.date1904);var n=Ue(a,r);if(z(n[1]))return fe(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return Pe(n[1],r,t,n[0])}function We(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(X[t]==undefined){if(r<0)r=t;continue}if(X[t]==e){r=t;break}}if(r<0)r=391}X[r]=e;return r}function He(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)We(e[r],r)}function ze(){X=j()}var Ve={format:Be,load:We,_table:X,load_table:He,parse_date_code:q,is_date:De,get_table:function Qw(){return Ve._table=X}};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 je=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function Xe(e){var r=typeof e=="number"?X[e]:e;r=r.replace(je,"(\\d+)");return new RegExp("^"+r+"$")}function $e(e,r,t){var a=-1,n=-1,i=-1,s=-1,f=-1,o=-1;(r.match(je)||[]).forEach(function(e,r){var c=parseInt(t[r+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=c;break;case"d":i=c;break;case"h":s=c;break;case"s":o=c;break;case"m":if(s>=0)f=c;else n=c;break;}});if(o>=0&&f==-1&&n>=0){f=n;n=-1}var c=(""+(a>=0?a:(new Date).getFullYear())).slice(-4)+"-"+("00"+(n>=1?n:1)).slice(-2)+"-"+("00"+(i>=1?i:1)).slice(-2);if(c.length==7)c="0"+c;if(c.length==8)c="20"+c;var l=("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 c;if(a==-1&&n==-1&&i==-1)return l;return c+"T"+l}var Ye=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],c=n[4];var l=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++]]^l[e[k++]]^c[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 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 Ke=function ek(){var e={};e.version="1.2.1";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){la(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;}e.l=i;r[a]=s}return r}var f;function o(){return f||(f=undefined)}function c(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 c=[];var v=e.slice(0,512);la(v,0);var m=l(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);la(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");o=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;c[E]=T}var y=h(e,a);p(o,i,y,a,c);var S=b(y,s,c,a);S[s].name="!Directory";if(n>0&&f!==U)S[f].name="!MiniFAT";S[c[0]].name="!FAT";S.fat_addrs=c;S.ssz=a;var _={},A=[],x=[],C=[];g(s,S,y,A,n,_,x,f);d(x,C,A);A.shift();var R={FileIndex:x,FullPaths:C};if(r&&r.raw)R.raw={header:w,sectors:y};return R}function l(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=ta(t,s*4)}if(i.length===0)return ha(0);return O(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 o=0;o=0;){n[o]=true;i[i.length]=o;s.push(e[o]);var l=t[Math.floor(o*4/a)];c=o*4&f;if(a<4+c)throw new Error("FAT boundary crossed: "+o+" 4 "+a);if(!e[l])break;o=ta(e[l],c)}return{nodes:i,data:It([s])}}function b(e,r,t,a){var n=e.length,i=[];var s=[],f=[],o=[];var c=a-1,l=0,u=0,h=0,d=0;for(l=0;l=n)h-=n;if(s[h])continue;o=[];var v=[];for(u=h;u>=0;){v[u]=true;s[u]=true;f[f.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=ta(e[p],d);if(v[u])break}i[h]={nodes:f,data:It([o])}}return i}function g(e,r,t,a,n,i,s,f){var o=0,c=a.length?2:0;var l=r[e].data;var u=0,h=0,d;for(;u0&&o!==U)r[o].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(o!==U&&b.start!==U&&r[o]){b.content=v(b,r[o].data,(r[f]||{}).data)}}if(b.content)la(b.content,0);i[d]=b;s.push(b)}}function A(e,r){return new Date((ra(e,r+4)/1e7*Math.pow(2,32)+ra(e,r)/1e7-11644473600)*1e3)}function x(e,r){o();return c(f.readFileSync(e),r)}function C(e,r){var t=r&&r.type;if(!t){if(T&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return x(e,r);case"base64":return c(_(k(e)),r);case"binary":return c(_(e),r);}return c(e,r)}function R(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;I(e)}function I(e){var r="Sh33tJ5";if(Ke.find(e,"/"+r))return;var t=ha(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);D(e)}function D(e,n){R(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 c=new Date(1987,1,19),l=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(l=f+1;l=h.length?-1:l;for(l=f+1;l=h.length?-1:l;v.type=1}else{if(t(e.FullPaths[f+1]||"")==t(p))v.R=f+1;v.type=2}}}function P(e,r){var t=r||{};if(t.fileType=="mad")return He(e,t);D(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 c=f+t+s+o;var l=c+127>>7;var u=l<=109?0:Math.ceil((l-109)/127);while(c+l+u+127>>7>l)u=++l<=109?0:Math.ceil((l-109)/127);var h=[1,u,l,o,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=ha(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;l.start=s;f(c+63>>6)}while(n.l&511)n._W(-4,z.ENDOFCHAIN);for(i=0;i=4096){n.l=l.start+1<<9;if(T&&Buffer.isBuffer(l.content)){l.content.copy(n,n.l,0,l.size);n.l+=l.size+511&-512}else{for(o=0;o0&&l.size<4096){if(T&&Buffer.isBuffer(l.content)){l.content.copy(n,n.l,0,l.size);n.l+=l.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 ce(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 le(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(T){var i=S(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=le(t,n,+!!(i+f==r.length)+2);var o=0;while(f-- >0){var c=r[i];o=(o<<5^c)&32767;var l=-1,u=0;if(l=s[o]){l|=i&~32767;if(l>i)l-=32768;if(l2){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-q[c]);n+=h}c=e[i-l];n=he(t,n,re[c]>>3);n-=3;var d=c<4?0:c-2>>1;if(d>0){de(t,n,i-l-Z[c]);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+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 c=e[t>>>3]|e[(t>>>3)+1]<<8;t+=32;if(c>0){if(!r&&s0){n[i++]=e[t>>>3];t+=8}}continue}else if(a>>1==1){f=9;o=5}else{t=xe(e,t);f=_e;o=Ae}for(;;){if(!r&&s>>1==1?be[l]:Ee[l];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+q[u];if(h>0){d+=ce(e,t,h);t+=h}l=ce(e,t,o);u=a>>>1==1?ge[l]:ye[l];t+=u&15;u>>>=4;var v=u<4?0:u-2>>1;var p=Z[u];if(v>0){p+=ce(e,t,v);t+=v}if(!r&&s>>3];return[n.slice(0,i),t+7>>>3]}function Re(e,r){var t=e.slice(e.l||0);var a=Ce(t,r);e.l+=a[1];return a[0]}function Oe(e,r){if(e){if(typeof console!=="undefined")console.error(r)}else throw new Error(r)}function Ie(e,r){var t=e;la(t,0);var a=[],n=[];var i={FileIndex:a,FullPaths:n};R(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 c=t._R(4);t.l=c;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=[],c=[];var l={FileIndex:o,FullPaths:c};R(l);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(l):Le(l))}n.push(a+"--\r\n");return n.join("\r\n")}function ze(e){var r={};R(r,e);return r}function Ve(e,r,t,n){var i=n&&n.unsafe;if(!i)R(e);var s=!i&&Ke.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)Ke.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){R(e);var t=Ke.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 dr=new Date("2017-02-19T19:06:09.000Z");var vr=isNaN(dr.getFullYear())?new Date("2/19/17"):dr;var pr=vr.getFullYear()==2017;function mr(e,r){var t=new Date(e);if(pr){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(vr.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 br(e,r){if(T&&Buffer.isBuffer(e)){if(r){if(e[0]==255&&e[1]==254)return lt(e.slice(2).toString("utf16le"));if(e[1]==254&&e[2]==255)return lt(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 lt(new TextDecoder("utf-16le").decode(e.slice(2)));if(e[0]==254&&e[1]==255)return lt(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 gr(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]=gr(e[t]);return r}function wr(e,r){var t="";while(t.length3&&Tr.indexOf(s)==-1)return t}else if(s.match(/[a-z]/))return t;if(a<0||a>8099)return t;if((n>0||i>1)&&a!=101)return r;if(e.match(/[^-0-9:,\/\\]/))return t;return r}var yr=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 Br=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm,Wr=/<[^>]*>/g;var Hr=Mr.match(Br)?Br:Wr;var zr=/<\w*:/,Vr=/<(\/?)\w+:/;function Gr(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(Ur),f=0,o="",c=0,l="",u="",h=1;if(s)for(c=0;c!=s.length;++c){u=s[c];for(i=0;i!=u.length;++i)if(u.charCodeAt(i)===61)break;l=u.slice(0,i).trim();while(u.charCodeAt(i+1)==32)++i;h=(n=u.charCodeAt(i+1))==34||n==39?1:0;o=u.slice(i+1+h,u.length-h);for(f=0;f!=l.length;++f)if(l.charCodeAt(f)===58)break;if(f===l.length){if(l.indexOf("_")>0)l=l.slice(0,l.indexOf("_"));a[l]=o;if(!t)a[l.toLowerCase()]=o}else{var d=(f===5&&l.slice(0,5)==="xmlns"?"xmlns":"")+l.slice(f+1);if(a[d]&&l.slice(f-3,f)=="ext")continue;a[d]=o;if(!t)a[d.toLowerCase()]=o}}return a}function jr(e){return e.replace(Vr,"<$1")}var Xr={""":'"',"'":"'",">":">","<":"<","&":"&"};var $r=ar(Xr);var Yr=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;return 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))}}();var Kr=/[&<>'"]/g,Jr=/[\u0000-\u0008\u000b-\u001f]/g;function qr(e){var r=e+"";return r.replace(Kr,function(e){return $r[e]}).replace(Jr,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function Zr(e){return qr(e).replace(/ /g,"_x0020_")}var Qr=/[\u0000-\u001f]/g;function et(e){var r=e+"";return r.replace(Kr,function(e){return $r[e]}).replace(/\n/g,"
").replace(Qr,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function rt(e){var r=e+"";return r.replace(Kr,function(e){return $r[e]}).replace(Qr,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var tt=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 at(e){return e.replace(/(\r\n|[\r\n])/g," ")}function nt(e){switch(e){case 1:;case true:;case"1":;case"true":;case"TRUE":return true;default:return false;}}function it(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 st(e){var r=y(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 ft(e){return E(e,"binary").toString("utf8")}var ot="foo bar baz☃🍣";var ct=T&&(ft(ot)==it(ot)&&ft||st(ot)==it(ot)&&st)||it;var lt=T?function(e){return E(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 ut=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 ht=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 vt=/<\/?(?:vt:)?variant>/g,pt=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function wt(e){return rr(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function kt(e,r,t){return"<"+e+(t!=null?wt(t):"")+(r!=null?(r.match(bt)?' xml:space="preserve"':"")+">"+r+""}function Tt(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function Et(e,r){switch(typeof e){case"string":var t=kt("vt:lpwstr",qr(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return kt((e|0)==e?"vt:i4":"vt:r8",qr(String(e)));case"boolean":return kt("vt:bool",e?"true":"false");}if(e instanceof Date)return kt("vt:filetime",Tt(e));throw new Error("Unable to serialize "+e)}function yt(e){if(T&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return ct(x(R(e)));throw new Error("Bad input format: expected Buffer or string")}var St=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/][^>]*)?>/gm;var _t={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 At=["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 xt={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 Ct(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 Rt(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 Ot=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:E(e)})):Ot(e)}:Ot;var Nt=function(e,r,t){var a=[];for(var n=r;n0?Mt(e,r+4,r+4+t-1):""};var Bt=Ut;var Wt=function(e,r){var t=ra(e,r);return t>0?Mt(e,r+4,r+4+t-1):""};var Ht=Wt;var zt=function(e,r){var t=2*ra(e,r);return t>0?Mt(e,r+4,r+4+t-1):""};var Vt=zt;var Gt=function tk(e,r){var t=ra(e,r);return t>0?Ft(e,r+4,r+4+t):""};var jt=Gt;var Xt=function(e,r){var t=ra(e,r);return t>0?Mt(e,r+4,r+4+t):""};var $t=Xt;var Yt=function(e,r){return Ct(e,r)};var Kt=Yt;var Jt=function ak(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(T){Bt=function nk(e,r){if(!Buffer.isBuffer(e))return Ut(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Ht=function ik(e,r){if(!Buffer.isBuffer(e))return Wt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Vt=function sk(e,r){if(!Buffer.isBuffer(e))return zt(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};jt=function fk(e,r){if(!Buffer.isBuffer(e))return Gt(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};$t=function ok(e,r){if(!Buffer.isBuffer(e))return Xt(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};Kt=function ck(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return Yt(e,r)};Jt=function lk(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function qt(){Ft=function(e,r,t){return a.utils.decode(1200,e.slice(r,t)).replace(N,"")};Mt=function(e,r,t){return a.utils.decode(65001,e.slice(r,t))};Bt=function(e,r){var n=ra(e,r);return n>0?a.utils.decode(t,e.slice(r+4,r+4+n-1)):""};Ht=function(e,t){var n=ra(e,t);return n>0?a.utils.decode(r,e.slice(t+4,t+4+n-1)):""};Vt=function(e,r){var t=2*ra(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};jt=function(e,r){var t=ra(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t)):""};$t=function(e,r){var t=ra(e,r);return t>0?a.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof a!=="undefined")qt();var Zt=function(e,r){return e[r]};var Qt=function(e,r){return e[r+1]*(1<<8)+e[r]};var ea=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var ra=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var ta=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var aa=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function na(e,t){var n="",i,s,f=[],o,c,l,u;switch(t){case"dbcs":u=this.l;if(T&&Buffer.isBuffer(this))n=this.slice(this.l,this.l+2*e).toString("utf16le");else for(l=0;l0?ta:aa)(this,this.l);this.l+=4;return i}else{s=ra(this,this.l);this.l+=4}return s;case 8:;case-8:if(t==="f"){if(e==8)s=Kt(this,this.l);else s=Kt([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=Pt(this,this.l,e);break;};}this.l+=e;return n}var ia=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 sa=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 fa=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function oa(e,r,n){var i=0,s=0;if(n==="dbcs"){for(s=0;s!=r.length;++s)fa(this,r.charCodeAt(s),this.l+2*s);i=2*r.length}else if(n==="sbcs"){if(typeof a!=="undefined"&&t==874){for(s=0;s!=r.length;++s){var f=a.utils.encode(t,r.charAt(s));this[this.l+s]=f[0]}}else{r=r.replace(/[^\x00-\x7F]/g,"_");for(s=0;s!=r.length;++s)this[this.l+s]=r.charCodeAt(s)&255}i=r.length}else if(n==="hex"){for(;s>8}while(this.l>>=8;this[this.l+1]=r&255;break;case 3:i=3;this[this.l]=r&255;r>>>=8;this[this.l+1]=r&255;r>>>=8;this[this.l+2]=r&255;break;case 4:i=4;ia(this,r,this.l);break;case 8:i=8;if(n==="f"){Rt(this,r,this.l);break};case 16:break;case-4:i=4;sa(this,r,this.l);break;}this.l+=i;return this}function ca(e,r){var t=Pt(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function la(e,r){e.l=r;e._R=na;e.chk=ca;e._W=oa}function ua(e,r){e.l+=r}function ha(e){var r=y(e);la(r,0);return r}function da(e,r,t){if(!e)return;var a,n,i;la(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 l(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&&Jt(t))e.push(t)}function ma(e,r,t){var a=gr(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 ba(e,r,t){var a=gr(e);a.s=ma(a.s,r.s,t);a.e=ma(a.e,r.s,t);return a}function ga(e,r){if(e.cRel&&e.c<0){e=gr(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=gr(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=Oa(e);if(!e.cRel&&e.cRel!=null)t=Aa(t);if(!e.rRel&&e.rRel!=null)t=Ea(t);return t}function wa(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?"":"$")+_a(e.s.c)+":"+(e.e.cRel?"":"$")+_a(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?"":"$")+Ta(e.s.r)+":"+(e.e.rRel?"":"$")+Ta(e.e.r)}}return ga(e.s,r.biff)+":"+ga(e.e,r.biff)}function ka(e){return parseInt(ya(e),10)-1}function Ta(e){return""+(e+1)}function Ea(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function ya(e){return e.replace(/\$(\d+)$/,"$1")}function Sa(e){var r=xa(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function _a(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 Aa(e){return e.replace(/^([A-Z])/,"$$$1")}function xa(e){return e.replace(/^\$([A-Z])/,"$1")}function Ca(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 Oa(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 Ia(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 Na(e,r){if(typeof r==="undefined"||typeof r==="number"){return Na(e.s,e.e)}if(typeof e!=="string")e=Oa(e);if(typeof r!=="string")r=Oa(r);return e==r?e:e+":"+r}function Fa(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 Da(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=Be(e.z,t?fr(r):r)}catch(a){}try{return e.w=Be((e.XF||{}).numFmtId||(t?14:0),t?fr(r):r)}catch(a){return""+r}}function Pa(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 Gn[e.v]||e.v;if(r==undefined)return Da(e,e.v);return Da(e,r)}function La(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function Ma(e,r,t){var a=t||{};var n=e?Array.isArray(e):a.dense;if(m!=null&&n==null)n=m;var i=e||(n?[]:{});var s=0,f=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var o=typeof a.origin=="string"?Ra(a.origin):a.origin;s=o.r;f=o.c}if(!i["!ref"])i["!ref"]="A1:A1"}var c={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(i["!ref"]){var l=Fa(i["!ref"]);c.s.c=l.s.c;c.s.r=l.s.r;c.e.c=Math.max(c.e.c,l.e.c);c.e.r=Math.max(c.e.r,l.e.r);if(s==-1)c.e.r=s=l.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(c.s.r>v)c.s.r=v;if(c.s.c>p)c.s.c=p;if(c.e.r0)r._W(0,e,"dbcs");return t?r.slice(0,r.l):r}function Va(e){return{ich:e._R(2),ifnt:e._R(2)}}function Ga(e,r){if(!r)r=ha(4);r._W(2,e.ich||0);r._W(2,e.ifnt||0);return r}function ja(e,r){var t=e.l;var a=e._R(1);var n=Ha(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(Va(e));s.r=i}else s.r=[{ich:0,ifnt:0}];e.l=t+r;return s}function Xa(e,r){var t=false;if(r==null){t=true;r=ha(15+4*e.t.length)}r._W(1,0);za(e.t,r);return t?r.slice(0,r.l):r}var $a=ja;function Ya(e,r){var t=false;if(r==null){t=true;r=ha(23+4*e.t.length)}r._W(1,1);za(e.t,r);r._W(4,1);Ga({ich:0,ifnt:0},r);return t?r.slice(0,r.l):r}function Ka(e){var r=e._R(4);var t=e._R(2);t+=e._R(1)<<16;e.l++;return{c:r,iStyleRef:t}}function Ja(e,r){if(r==null)r=ha(8);r._W(-4,e.c);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}function qa(e){var r=e._R(2);r+=e._R(1)<<16;e.l++;return{c:-1,iStyleRef:r}}function Za(e,r){if(r==null)r=ha(4);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}var Qa=Ha;var en=za;function rn(e){var r=e._R(4);return r===0||r===4294967295?"":e._R(r,"dbcs")}function tn(e,r){var t=false;if(r==null){t=true;r=ha(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 an=Ha;var nn=rn;var sn=tn;function fn(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?Kt([0,0,0,0,r[0]&252,r[1],r[2],r[3]],0):ta(r,0)>>2;return t?n/100:n}function on(e,r){if(r==null)r=ha(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 cn(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 ln(e,r){if(!r)r=ha(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 un=cn;var hn=ln;function dn(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e._R(8,"f")}function vn(e,r){return(r||ha(8))._W(8,e,"f")}function pn(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 c=Vn[n];if(c)r.rgb=gc(c);break;case 2:r.rgb=gc([s,f,o]);break;case 3:r.theme=n;break;}if(i!=0)r.tint=i>0?i/32767:i/32768;return r}function mn(e,r){if(!r)r=ha(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 bn(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 gn(e,r){if(!r)r=ha(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 wn(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 kn(e){return wn(e,1)}function Tn(e){return wn(e,2)}var En=2;var yn=3;var Sn=11;var _n=12;var An=19;var xn=30;var Cn=64;var Rn=65;var On=71;var In=4096;var Nn=4108;var Fn=4126;var Dn=80;var Pn=81;var Ln=[Dn,Pn];var Mn={1:{n:"CodePage",t:En},2:{n:"Category",t:Dn},3:{n:"PresentationFormat",t:Dn},4:{n:"ByteCount",t:yn},5:{n:"LineCount",t:yn},6:{n:"ParagraphCount",t:yn},7:{n:"SlideCount",t:yn},8:{n:"NoteCount",t:yn},9:{n:"HiddenCount",t:yn},10:{n:"MultimediaClipCount",t:yn},11:{n:"ScaleCrop",t:Sn},12:{n:"HeadingPairs",t:Nn},13:{n:"TitlesOfParts",t:Fn},14:{n:"Manager",t:Dn},15:{n:"Company",t:Dn},16:{n:"LinksUpToDate",t:Sn},17:{n:"CharacterCount",t:yn},19:{n:"SharedDoc",t:Sn},22:{n:"HyperlinksChanged",t:Sn},23:{n:"AppVersion",t:yn,p:"version"},24:{n:"DigSig",t:Rn},26:{n:"ContentType",t:Dn},27:{n:"ContentStatus",t:Dn},28:{n:"Language",t:Dn},29:{n:"Version",t:Dn},255:{},2147483648:{n:"Locale",t:An},2147483651:{n:"Behavior",t:An},1919054434:{}};var Un={1:{n:"CodePage",t:En},2:{n:"Title",t:Dn},3:{n:"Subject",t:Dn},4:{n:"Author",t:Dn},5:{n:"Keywords",t:Dn},6:{n:"Comments",t:Dn},7:{n:"Template",t:Dn},8:{n:"LastAuthor",t:Dn},9:{n:"RevNumber",t:Dn},10:{n:"EditTime",t:Cn},11:{n:"LastPrinted",t:Cn},12:{n:"CreatedDate",t:Cn},13:{n:"ModifiedDate",t:Cn},14:{n:"PageCount",t:yn},15:{n:"WordCount",t:yn},16:{n:"CharCount",t:yn},17:{n:"Thumbnail",t:On},18:{n:"Application",t:Dn},19:{n:"DocSecurity",t:yn},255:{},2147483648:{n:"Locale",t:An},2147483651:{n:"Behavior",t:An},1919054434:{}};var Bn={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 Wn=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"]; +function Hn(e){return e.map(function(e){return[e>>16&255,e>>8&255,e&255]})}var zn=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,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var Vn=gr(zn);var Gn={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var jn={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255};var Xn={"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 $n={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 Yn(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function Kn(e){var r=Yn();if(!e||!e.match)return r;var t={};(e.match(Hr)||[]).forEach(function(e){var a=Gr(e);switch(a[0].replace(zr,"<")){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 Jn(e,r){var t=ir(Xn);var a=[],n;a[a.length]=Mr;a[a.length]=kt("Types",null,{xmlns:_t.CT,"xmlns:xsd":_t.xsd,"xmlns:xsi":_t.xsi});a=a.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 kt("Default",null,{Extension:e[0],ContentType:e[1]})}));var i=function(t){if(e[t]&&e[t].length>0){n=e[t][0];a[a.length]=kt("Override",null,{PartName:(n[0]=="/"?"":"/")+n,ContentType:$n[t][r.bookType]||$n[t]["xlsx"]})}};var s=function(t){(e[t]||[]).forEach(function(e){a[a.length]=kt("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:$n[t][r.bookType]||$n[t]["xlsx"]})})};var f=function(r){(e[r]||[]).forEach(function(e){a[a.length]=kt("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:t[r][0]})})};i("workbooks");s("sheets");s("charts");f("themes");["strs","styles"].forEach(i);["coreprops","extprops","custprops"].forEach(f);f("vba");f("comments");f("threadedcomments");f("drawings");s("metadata");f("people");if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var qn={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",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function Zn(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function Qn(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Hr)||[]).forEach(function(e){var n=Gr(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function ri(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([qn.HLINK,qn.XPATH,qn.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 ti="application/vnd.oasis.opendocument.spreadsheet";function ai(e,r){var t=yt(e);var a;var n;while(a=St.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Gr(a[0],false);if(n.path=="/"&&n.type!==ti)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 ni(e){var r=[Mr];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function ii(e,r,t){return[' \n',' \n'," \n"].join("")}function si(e,r){return[' \n',' \n'," \n"].join("")}function fi(e){var r=[Mr];r.push('\n');for(var t=0;t!=e.length;++t){r.push(ii(e[t][0],e[t][1]));r.push(si("",e[t][0]))}r.push(ii("","Document","pkg"));r.push("");return r.join("")}function oi(){return'Sheet'+"JS "+e.version+""}var ci=[["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 li=function(){var e=new Array(ci.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function ui(e){var r={};e=ct(e);for(var t=0;t0)r[a[1]]=Yr(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=mr(r[a[1]])}return r}function hi(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=qr(r);a[a.length]=t?kt(e,r,t):gt(e,r)}function di(e,r){var t=r||{};var a=[Mr,kt("cp:coreProperties",null,{"xmlns:cp":_t.CORE_PROPS,"xmlns:dc":_t.dc,"xmlns:dcterms":_t.dcterms,"xmlns:dcmitype":_t.dcmitype,"xmlns:xsi":_t.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)hi("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:Tt(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)hi("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:Tt(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var i=0;i!=ci.length;++i){var s=ci[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)hi(s[0],f,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var vi=[["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 pi=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function mi(e,r,t,a){var n=[];if(typeof e=="string")n=mt(e,a);else for(var i=0;i0)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=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 bi(e,r,t){var a={};if(!r)r={};e=ct(e);vi.forEach(function(t){var n=(e.match(ut(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=Yr(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)mi(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function gi(e){var r=[],t=kt;if(!e)e={};e.Application="SheetJS";r[r.length]=Mr;r[r.length]=kt("Properties",null,{xmlns:_t.EXT_PROPS,"xmlns:vt":_t.vt});vi.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=qr(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""+qr(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var wi=/<[^>]+>[^<]*/g;function ki(e,r){var t={},a="";var n=e.match(wi);if(n)for(var i=0;i!=n.length;++i){var s=n[i],f=Gr(s);switch(f[0]){case"":a=null;break;default:if(s.indexOf("");var c=o[0].slice(4),l=o[1];switch(c){case"lpstr":;case"bstr":;case"lpwstr":t[a]=Yr(l);break;case"bool":t[a]=nt(l);break;case"i1":;case"i2":;case"i4":;case"i8":;case"int":;case"uint":t[a]=parseInt(l,10);break;case"r4":;case"r8":;case"decimal":t[a]=parseFloat(l);break;case"filetime":;case"date":t[a]=mr(l);break;case"cy":;case"error":t[a]=Yr(l);break;default:if(c.slice(-1)=="/")break;if(r.WTF&&typeof console!=="undefined")console.warn("Unexpected",s,c,o);}}else if(s.slice(0,2)==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Ei={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 yi;function Si(e,r,t){if(!yi)yi=ar(Ei);r=yi[r]||r;e[r]=t}function _i(e,r){var t=[];rr(Ei).map(function(e){for(var r=0;r'+n.join("")+""}function xi(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 Ci(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=ha(8);s._W(4,a);s._W(4,n);return s}function Ri(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 Oi(e,r,t){var a=e._R(0,"lpwstr");if(t)e.l+=4-(a.length+1&3)&3;return a}function Ii(e,r,t){if(r===31)return Oi(e);return Ri(e,r,t)}function Ni(e,r,t){return Ii(e,r,t===false?0:4)}function Fi(e,r){if(!r)throw new Error("VtUnalignedString must have positive length");return Ii(e,r,0)}function Di(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(N,"");if(e.l-n&2)e.l+=2}return t}function Pi(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a)t[a]=e._R(0,"lpstr-cp").replace(N,"");return t}function Li(e){var r=e.l;var t=Hi(e,Pn);if(e[e.l]==0&&e[e.l+1]==0&&e.l-r&2)e.l+=2;var a=Hi(e,yn);return[t,a]}function Mi(e){var r=e._R(4);var t=[];for(var a=0;a>2+1<<2;return a}function Bi(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 Wi(e){var r={};r.Size=e._R(4);e.l+=r.Size+3-(r.Size-1)%4;return r}function Hi(e,r,t){var a=e._R(2),n,i=t||{};e.l+=2;if(r!==_n)if(a!==r&&Ln.indexOf(r)===-1&&!((r&65534)==4126&&(a&65534)==4126))throw new Error("Expected type "+r+" saw "+a);switch(r===_n?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 Ri(e,a,4).replace(N,"");case 31:return Oi(e);case 64:return xi(e);case 65:return Bi(e);case 71:return Wi(e);case 80:return Ni(e,a,!i.raw).replace(N,"");case 81:return Fi(e,a).replace(N,"");case 4108:return Mi(e);case 4126:;case 4127:return a==4127?Di(e):Pi(e);default:throw new Error("TypedPropertyValue unrecognized type "+r+" "+a);}}function zi(e,r){var t=ha(4),a=ha(4);t._W(4,e==80?31:e);switch(e){case 3:a._W(-4,r);break;case 5:a=ha(8);a._W(8,r,"f");break;case 11:a._W(4,r?1:0);break;case 64:a=Ci(r);break;case 31:;case 80:a=ha(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 O([t,a])}function Vi(e,r){var t=e.l;var a=e._R(4);var n=e._R(4);var i=[],s=0;var f=0;var c=-1,l={};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){var p=r[i[s][0]];d[p.n]=Hi(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:o(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=Hi(e,En);o(f);if(c!==-1){var m=e.l;e.l=i[c][1];l=Ui(e,f);e.l=m}}else if(i[s][0]===0){if(f===0){c=s;e.l=i[s+1][1];continue}l=Ui(e,f)}else{var b=l[i[s][0]];var g;switch(e[e.l]){case 65:e.l+=4;g=Bi(e);break;case 30:e.l+=4;g=Ni(e,e[e.l-4]).replace(/\u0000+$/,"");break;case 31:e.l+=4;g=Ni(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=Zi(e,4);break;case 64:e.l+=4;g=mr(xi(e));break;default:throw new Error("unparsed value: "+e[e.l]);}d[b]=g}}}e.l=t+a;return d}var Gi=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function ji(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 Xi(e,r,t){var a=ha(8),n=[],i=[];var s=8,f=0;var o=ha(8),c=ha(8);o._W(4,2);o._W(4,1200);c._W(4,1);i.push(o);n.push(c);s+=8+o.length;if(!r){c=ha(8);c._W(4,0);n.unshift(c);var l=[ha(4)];l[0]._W(4,e.length);for(f=0;f-1||pi.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)}o=zi(v.t,h)}else{var m=ji(h);if(m==-1){m=31;h=String(h)}o=zi(m,h)}i.push(o);c=ha(8);c._W(4,!r?2+f:d);n.push(c);s+=8+o.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 o=n?e._R(n,i):"";r=s;return o}function ss(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,c;var l={};if(s)o=e._R(2);if(i)c=e._R(4);var u=f==2?"dbcs-cont":"sbcs-cont";var h=a===0?"":e._R(a,u);if(s)e.l+=4*o;if(i)e.l+=c;l.t=h;if(!s){l.raw=""+l.t+"";l.r=l.t}r=t;return l}function fs(e){var r=e.t||"",t=1;var a=ha(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=ha(2*r.length);n._W(2*r.length,r,"utf16le");var i=[a,n];return O(i)}function os(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 cs(e,r,t){var a=e._R(t&&t.biff==2?1:2);if(a===0){e.l++;return""}return os(e,a,t)}function ls(e,r,t){if(t.biff>5)return cs(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 us(e,r,t){if(!t)t=ha(3+2*e.length);t._W(2,e.length);t._W(1,1);t._W(31,e,"utf16le");return t}function hs(e){var r=e._R(1);e.l++;var t=e._R(2);e.l+=2;return[r,t]}function ds(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(N,"");if(a)e.l+=24;return n}function vs(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(N,"");return t+s}function ps(e,r){var t=e._R(16);r-=16;switch(t){case"e0c9ea79f9bace118c8200aa004ba90b":return ds(e,r);case"0303000000000000c000000000000046":return vs(e,r);default:throw new Error("Unsupported Moniker "+t);}}function ms(e){var r=e._R(4);var t=r>0?e._R(r,"utf16le").replace(N,""):"";return t}function bs(e,r){if(!r)r=ha(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 xs(e){var r=e._R(2);var t=fn(e);return[r,t]}function Cs(e,r,t){e.l+=4;r-=4;var a=e.l+r;var n=is(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 Rs(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 Os(e,r){if(!r)r=ha(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 Is(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 Ns=Is;function Fs(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 Ds(e){var r={};e.l+=4;e.l+=16;r.fSharedNote=e._R(2);e.l+=4;return r}function Ps(e){var r={};e.l+=4;e.cf=e._R(2);return r}function Ls(e){e.l+=2;e.l+=e._R(2)}var Ms={0:Ls,4:Ls,5:Ls,6:Ls,7:Ps,8:Ls,9:Ls,10:Ls,11:Ls,12:Ls,13:Ds,14:Ls,15:Ls,16:Ls,17:Ls,18:Ls,19:Ls,20:Ls,21:Fs};function Us(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 Ws(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=ha(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 Hs(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=ls(e,0,t);e._R(r+a-e.l);return n}function Vs(e,r){var t=!r||r.biff==8;var a=ha(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=ha(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 $s(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 ef(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),c=e._R(2);return{Pos:[r,t],Dim:[a,n],Flags:i,CurTab:s,FirstTab:f,Selected:o,TabRatio:c}}function rf(){var e=ha(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 tf(e,r,t){if(t&&t.biff>=2&&t.biff<5)return{};var a=e._R(2);return{RTL:a&64}}function af(e){var r=ha(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 nf(){}function sf(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=is(e,0,t);return a}function ff(e,r){var t=e.name||"Arial";var a=r&&r.biff==5,n=a?15+t.length:16+2*t.length;var i=ha(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 of(e){var r=Es(e);r.isst=e._R(4);return r}function cf(e,r,t,a){var n=ha(10);ys(e,r,a,n);n._W(4,t);return n}function lf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=e.l+r;var n=Es(e,6);if(t.biff==2)e.l++;var i=cs(e,a-e.l,t);n.val=i;return n}function uf(e,r,t,a,n){var i=!n||n.biff==8;var s=ha(6+2+ +i+(1+i)*t.length);ys(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 hf(e,r,t){var a=e._R(2);var n=ls(e,0,t);return[a,n]}function df(e,r,t,a){var n=t&&t.biff==5;if(!a)a=ha(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 vf=ls;function pf(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 mf(e,r){var t=r.biff==8||!r.biff?4:2;var a=ha(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 bf(e){var r=e._R(2),t=e._R(2);var a=xs(e);return{r:r,c:t,ixfe:a[0],rknum:a[1]}}function gf(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 Tf(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=kf(e,r,a.fStyle,t);return a}function Ef(e,r,t,a){var n=t&&t.biff==5;if(!a)a=ha(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 yf(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 Sf(e){var r=ha(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 _f(e,r,t){var a=Es(e,6);if(t.biff==2||r==9)++e.l;var n=as(e,2);a.val=n;a.t=n===true||n===false?"b":"e";return a}function Af(e,r,t,a,n,i){var s=ha(8);ys(e,r,a,s);ns(t,i,s);return s}function xf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=Es(e,6);var n=dn(e,8);a.val=n;return a}function Cf(e,r,t,a){var n=ha(14);ys(e,r,a,n);vn(t,n);return n}var Rf=_s;function Of(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=os(e,i);var f=[];while(a>e.l)f.push(cs(e));return[i,n,s,f]}function If(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=Cs(e,r-2,t);i.body=n||e._R(r-2);if(typeof n==="string")i.Name=n;return i}var Nf=["_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"];function Ff(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 c=os(e,s,t);if(n&32)c=Nf[c.charCodeAt(0)];var l=a-e.l;if(t&&t.biff==2)--l;var u=a==e.l||f===0||!(l>0)?[]:ld(e,l,t,f);return{chKey:i,Name:c,itab:o,rgce:u}}function Df(e,r,t){if(t.biff<8)return Pf(e,r,t);var a=[],n=e.l+r,i=e._R(t.biff>8?4:2);while(i--!==0)a.push(As(e,t.biff>8?12:6,t));if(e.l!=n)throw new Error("Bad ExternSheet: "+e.l+" != "+n);return a}function Pf(e,r,t){if(e[e.l+1]==3)e[e.l]++;var a=is(e,r,t);return a.charCodeAt(0)==3?a.slice(1):a}function Lf(e,r,t){if(t.biff<8){e.l+=r;return}var a=e._R(2);var n=e._R(2);var i=os(e,a,t);var s=os(e,n,t);return[i,s]}function Mf(e,r,t){var a=Is(e,6);e.l++;var n=e._R(1);r-=8;return[ud(e,r,t),n,a]}function Uf(e,r,t){var a=Ns(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,od(e,r,t,a)]}function Bf(e){var r=e._R(4)!==0;var t=e._R(4)!==0;var a=e._R(4);return[r,t,a]}function Wf(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=ls(e,0,t);if(t.biff<8)e._R(1);return[{r:a,c:n},f,s,i]}function Hf(e,r,t){return Wf(e,r,t)}function zf(e,r){var t=[];var a=e._R(2);while(a--)t.push(Rs(e,r));return t}function Vf(e){var r=ha(2+e.length*8);r._W(2,e.length);for(var t=0;t=(l?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 Yf(e,r){var t=Rs(e,8);e.l+=16;var a=gs(e,r-24);return[t,a]}function Kf(e){var r=ha(24);var t=Ra(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 O([r,ws(e[1])])}function Jf(e,r){e._R(2);var t=Rs(e,8);var a=e._R((r-10)/2,"dbcs-cont");a=a.replace(N,"");return[t,a]}function qf(e){var r=e[1].Tooltip;var t=ha(10+2*(r.length+1));t._W(2,2048);var a=Ra(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(Ts(e,8));return t}function ro(e){var r=e._R(2);var t=[];while(r-- >0)t.push(Ts(e,8));return t}function to(e){e.l+=2;var r={cxfs:0,crc:0};r.cxfs=e._R(2);r.crc=e._R(4);return r}function ao(e,r,t){if(!t.cellStyles)return ua(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 c={s:n,e:i,w:s,ixfe:f,flags:o};if(t.biff>=5||!t.biff)c.level=o>>8&7;return c}function no(e,r){var t=ha(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 io(e,r){var t={};if(r<32)return t;e.l+=16;t.header=dn(e,8);t.footer=dn(e,8);e.l+=2;return t}function so(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 fo(e){var r=ha(2*e);for(var t=0;t1048576)l=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(c)i.l+=36;var v=[],p={};var m=Math.min(i.length,s==2?521:u-10-(o?264:0));var b=c?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 T=i.slice(i.l,i.l+v[w].len);i.l+=v[w].len;la(T,0);var E=a.utils.decode(d,T);switch(v[w].type){case"C":if(E.trim().length)n[g][w]=E.replace(/\s+$/,"");break;case"D":if(E.length===8)n[g][w]=new Date(+E.slice(0,4),+E.slice(4,6)-1,+E.slice(6,8));else n[g][w]=E;break;case"F":n[g][w]=parseFloat(E.trim());break;case"+":;case"I":n[g][w]=c?T._R(-4,"i")^2147483648:T._R(4,"i");break;case"L":switch(E.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:|"+E+"|");}break;case"M":if(!f)throw new Error("DBF Unexpected MEMO for type "+s.toString(16));n[g][w]="##MEMO##"+(c?parseInt(E.trim(),10):T._R(4));break;case"N":E=E.replace(/\u0000/g,"").trim();if(E&&E!=".")n[g][w]=+E||0;break;case"@":n[g][w]=new Date(T._R(-8,"f")-621356832e5);break;case"T":n[g][w]=new Date((T._R(4)-2440588)*864e5+T._R(4));break;case"Y":n[g][w]=T._R(4,"i")/1e4+T._R(4,"i")/1e4*Math.pow(2,32);break;case"O":n[g][w]=-T._R(-8,"f");break;case"B":if(o&&v[w].len==8){n[g][w]=T._R(8,"f");break};case"G":;case"P":T.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)o(+n.codepage);if(n.type=="string")throw new Error("Cannot write DBF to JS string");var i=va();var s=Ew(e,{header:1,raw:true,cellDates:true});var c=s[0],l=s.slice(1),u=e["!cols"]||[];var h=0,d=0,v=0,p=1;for(h=0;h250)E=250;T=((u[h]||{}).DBF||{}).type;if(T=="C"){if(u[h].DBF.len>E)E=u[h].DBF.len}if(k=="B"&&T=="N"){k="N";w[h]=u[h].DBF.dec;E=u[h].DBF.len}g[h]=k=="C"||T=="N"?E:f[k]||0;p+=g[h];b[h]=k}var S=i.next(32);S._W(4,318902576);S._W(4,l.length);S._W(2,296+32*v);S._W(2,p);for(h=0;h<4;++h)S._W(4,0);S._W(4,0|(+r[t]||3)<<8);for(h=0,d=0;h":190,"?":191,"{":223};var r=new RegExp("N("+rr(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(k(e),r);case"binary":return s(e,r);case"buffer":return s(T&&Buffer.isBuffer(e)?e.toString("binary"):x(e),r);case"array":return s(br(e),r);}throw new Error("Unrecognized type "+r.type)}function s(e,i){var s=e.split(/[\n\r]+/),f=-1,c=-1,l=0,u=0,h=[];var d=[];var v=null;var p={},m=[],b=[],g=[];var w=0,k;if(+i.codepage>=0)o(+i.codepage);for(;l!==s.length;++l){w=0;var T=s[l].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],S;if(T.length>0)switch(y){case"ID":break;case"E":break;case"B":break;case"O":break;case"W":break;case"P":if(E[1].charAt(0)=="P")d.push(T.slice(3).replace(/;;/g,";"));break;case"C":var _=false,A=false,x=false,C=false,R=-1,O=-1;for(u=1;u-1&&h[R][O];if(!N||!N[1])throw new Error("SYLK shared formula cannot find base");h[f][c][1]=Ru(N[1],{r:f-R,c:c-O})}break;case"F":var F=0;for(u=1;u0){m[f].hpt=w;m[f].hpx=Pc(w)}else if(w===0)m[f].hidden=true;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+T);}if(F<1)v=null;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+T);}}if(m.length>0)p["!rows"]=m;if(b.length>0)p["!cols"]=b;if(i&&i.sheetRows)h=h.slice(0,i.sheetRows);return[h,p]}function f(e,r){var t=i(e,r);var a=t[0],n=t[1];var s=Ua(a,r);rr(n).forEach(function(e){s[e]=n[e]});return s}function c(e,r){return La(f(e,r),r)}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"+Cu(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 u(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=Ac(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=xc(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*Dc(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function d(e,r){var t=["ID;PWXL;N;E"],a=[];var n=Fa(e["!ref"]),i;var s=Array.isArray(e);var f="\r\n";t.push("P;PGeneral");t.push("F;P0;DG0G8;M255");if(e["!cols"])u(t,e["!cols"]);if(e["!rows"])h(t,e["!rows"]);t.push("B;Y"+(n.e.r-n.s.r+1)+";X"+(n.e.c-n.s.c+1)+";D"+[n.s.c,n.s.r,n.e.c,n.e.r].join(" "));for(var o=n.s.r;o<=n.e.r;++o){for(var c=n.s.c;c<=n.e.c;++c){var d=Oa({r:o,c:c});i=s?(e[o]||[])[c]:e[d];if(!i||i.v==null&&(!i.f||i.F))continue;a.push(l(i,e,o,c,r))}}return t.join(f)+f+a.join(f)+f+"E"+f}return{to_workbook:c,to_sheet:f,from_sheet:d}}();var So=function(){function e(e,t){switch(t.type){case"base64":return r(k(e),t);case"binary":return r(e,t);case"buffer":return r(T&&Buffer.isBuffer(e)?e.toString("binary"):x(e),t);case"array":return r(br(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],c=f[1];++i;var l=t[i]||"";while((l.match(/["]/g)||[]).length&1&&i=0&&i[s].length===0)--s;var f=10,o=0;var c=0;for(;c<=s;++c){o=i[c].indexOf(" ");if(o==-1)o=i[c].length;else o++;f=Math.max(f,o)}for(c=0;c<=s;++c){n[c]=[];var l=0;e(i[c].slice(0,f).trim(),n,c,l,a);for(l=1;l<=(i[c].length-f)/10+1;++l)e(i[c].slice(f+(l-1)*10,f+l*10).trim(),n,c,l,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"]=Na(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 Ua(r(e,t),t)}function o(e,r){var t="",n=r.type=="string"?[0,0,0,0]:qg(e,r);switch(r.type){case"base64":t=k(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=T&&Buffer.isBuffer(e)?e.toString("binary"):x(e);break;case"array":t=br(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=ct(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=ct(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 _o.to_sheet(r.type=="string"?t:ct(t),r);return f(t,r)}function c(e,r){return La(o(e,r),r)}function l(e){var r=[];var t=Fa(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=Oa({r:i,c:f});a=n?(e[i]||[])[f]:e[o];if(!a||a.v==null){s.push(" ");continue}var c=(a.w||(Pa(a),a.w)||"").slice(0,10);while(c.length<10)c+=" ";s.push(c+(f===0?" ":""))}r.push(s.join(""))}return r.join("\n")}return{to_workbook:c,to_sheet:o,from_sheet:l}}();function xo(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=yo.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 Ao.to_workbook(e,r)}}var Co=function(){function e(e,r,t){if(!e)return;la(e,e.l||0);var a=t.Enum||W;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=W;e(r,function(e,r,t){switch(t){case 0:a.vers=e;if(e>=4096)a.qpro=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)e[1].v=e[1].v.slice(1);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||X[14];if(a.cellDates){e[1].t="d";e[1].v=ur(e[1].v)}}if(a.qpro){if(e[3]>f){n["!ref"]=Na(u);o[i]=n;c.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 l=a.dense?(n[e[0].r]||[])[e[0].c]:n[Oa(e[0])];if(l){l.t=e[1].t;l.v=e[1].v;if(e[1].z!=null)l.z=e[1].z;if(e[1].f!=null)l.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[Oa(e[0])]=e[1];break;default:;}},a)}else if(r[2]==26||r[2]==14){a.Enum=H;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:e[1].v=e[1].v.slice(1);case 23:;case 24:;case 25:;case 37:;case 39:;case 40:if(e[3]>f){n["!ref"]=Na(u);o[i]=n;c.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[Oa(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=va();var n=Fa(e["!ref"]);var s=Array.isArray(e);var f=[];gb(a,0,i(1030));gb(a,6,c(n));var l=Math.min(n.e.r,8191);for(var u=n.s.r;u<=l;++u){var d=Ta(u);for(var p=n.s.c;p<=n.e.c;++p){if(u===n.s.r)f[p]=_a(p);var m=f[p]+d;var g=s?(e[u]||[])[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)gb(a,13,v(u,p,g.v));else gb(a,14,b(u,p,g.v))}else{var w=Pa(g);gb(a,15,h(u,p,w.slice(0,239)))}}}gb(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=va();gb(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 c(e){var r=ha(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 l(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{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=l(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=ha(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=l(e,r,t);a[1].v=e._R(2,"i");return a}function v(e,r,t){var a=ha(7);a._W(1,255);a._W(2,r);a._W(2,e);a._W(2,t,"i");return a}function p(e,r,t){var a=l(e,r,t);a[1].v=e._R(8,"f");return a}function b(e,r,t){var a=ha(13);a._W(1,255);a._W(2,r);a._W(2,e);a._W(8,t,"f");return a}function g(e,r,t){var a=e.l+r;var n=l(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 w(e,r,t){var a=r&32768;r&=~32768;r=(a?e:0)+(r>=8192?r-16384:r);return(a?"":"$")+(t?_a(r):Ta(r))}var T={51:["FALSE",0],52:["TRUE",0],70:["LEN",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],111:["T",1]};var E=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function y(e,r){la(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 h=t.slice(-a);t.length-=a;t.push(T[o][0]+"("+h.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 S(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=S(e,r);t[1].t="s";t[1].v=e._R(r-4,"cstr");return t}function x(e,r,t,a){var n=ha(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 C(e,r){var t=S(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=S(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 O(e,r,t,a){var n=ha(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 N(e,r){var t=S(e,r);var a=e._R(4);t[1].v=a>>6;return t}function F(e,r){var t=S(e,r);var a=e._R(8,"f");t[1].v=a;return t}function D(e,r){var t=F(e,14);e.l+=r-10;return t}function P(e,r){return e[e.l+r-1]==0?e._R(r,"cstr"):""}function L(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 W={0:{n:"BOF",f:es},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:d},14:{n:"NUMBER",f:p},15:{n:"LABEL",f:u},16:{n:"FORMULA",f:g},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:u},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:P},222:{n:"SHEETNAMELP",f:L},65535:{n:""}};var H={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:C},25:{n:"FORMULA19",f:I},26:{n:"FORMULA1A"},27:{n:"XFORMAT",f:U},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:N},38:{n:"??"},39:{n:"NUMBER27",f:F},40:{n:"FORMULA28",f:D},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:P},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:M},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:""}};return{sheet_to_wk1:a,book_to_wk3:n,to_workbook:r}}();function Ro(e){var r={},t=e.match(Hr),a=0;var n=false;if(t)for(;a!=t.length;++a){var s=Gr(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 Oo=function(){var e=ut("t"),r=ut("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:Yr(a[1])};var i=t.match(r);if(i)n.s=Ro(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 Io=function uk(){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 No=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,Fo=/<(?:\w+:)?r>/;var Do=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function Po(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=Yr(ct(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""));a.r=ct(e);if(t)a.h=et(a.t)}else if(e.match(Fo)){a.r=ct(e);a.t=Yr(ct((e.replace(Do,"").match(No)||[]).join("").replace(Hr,"")));if(t)a.h=Io(Oo(a.r))}return a}var Lo=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var Mo=/<(?:\w+:)?(?:si|sstItem)>/g;var Uo=/<\/(?:\w+:)?(?:si|sstItem)>/;function Bo(e,r){var t=[],a="";if(!e)return t;var n=e.match(Lo);if(n){a=n[2].replace(Mo,"").split(Uo);for(var i=0;i!=a.length;++i){var s=Po(a[i].trim(),r);if(s!=null)t[t.length]=s}n=Gr(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var Wo=/^\s|\s$|[\t\n\r]/;function Ho(e,r){if(!r.bookSST)return"";var t=[Mr];t[t.length]=kt("sst",null,{xmlns:At[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 zo(e){return[e._R(4),e._R(4)]}function Vo(e,r){var t=[];var a=false;da(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 Go(e,r){if(!r)r=ha(8);r._W(4,e.Count);r._W(4,e.Unique);return r}var jo=Xa;function Xo(e){var r=va();pa(r,159,Go(e));for(var t=0;t=4)e.l+=r-4;return t}function Ko(e){var r={};r.id=e._R(0,"lpp4");r.R=Yo(e,4);r.U=Yo(e,4);r.W=Yo(e,4);return r}function Jo(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 qo(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(Jo(e));return r}function Zo(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(e._R(0,"lpp4"));return r}function Qo(e){var r={};e._R(4);e.l+=4;r.id=e._R(0,"lpp4");r.name=e._R(0,"lpp4");r.R=Yo(e,4);r.U=Yo(e,4);r.W=Yo(e,4);return r}function ec(e){var r=Qo(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 rc(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 tc(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 ac(e){var r=Yo(e);switch(r.Minor){case 2:return[r.Minor,nc(e,r)];case 3:return[r.Minor,ic(e,r)];case 4:return[r.Minor,sc(e,r)];}throw new Error("ECMA-376 Encrypted file unrecognized Version: "+r.Minor)}function nc(e){var r=e._R(4);if((r&63)!=36)throw new Error("EncryptionInfo mismatch");var t=e._R(4);var a=rc(e,t);var n=tc(e,e.length-e.l);return{t:"Std",h:a,v:n}}function ic(){throw new Error("File is password-protected: ECMA-376 Extensible")}function sc(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(Hr,function n(e){var t=Gr(e);switch(jr(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=rc(e,n);r-=n;t.EncryptionVerifier=tc(e,r);return t}function oc(e){var r={};var t=r.EncryptionVersionInfo=Yo(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 cc(e){var r=0,t;var a=$o(e);var n=a.length+1,i,s;var f,o,c;t=y(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;c=f|o;r=c^s}return r^52811}var lc=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=$o(r);var a=i(t);var s=t.length;var f=y(16);for(var o=0;o!=16;++o)f[o]=0;var c,l,u;if((s&1)===1){c=a>>8;f[s]=n(e[0],c);--s;c=a&255;l=t[t.length-1];f[s]=n(l,c)}while(s>0){--s;c=a>>8;f[s]=n(t[s],c);--s;c=a&255;f[s]=n(t[s],c)}s=15;u=15-t.length;while(u>0){c=a>>8;f[s]=n(e[u],c);--s;--u;c=a&255;f[s]=n(t[s],c);--s;--u}return f}}();var uc=function(e,r,t,a,n){if(!n)n=r;if(!a)a=lc(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 hc=function(e){var r=0,t=lc(e);return function(e){var a=uc("",e,r,t);r=a[1];return a[0]}};function dc(e,r,t,a){var n={key:es(e),verificationBytes:es(e)};if(t.password)n.verifier=cc(t.password);a.valid=n.verificationBytes===n.verifier;if(a.valid)a.insitu=hc(t.password);return n}function vc(e,r,t){var a=t||{};a.Info=e._R(2);e.l-=2;if(a.Info===1)a.Data=oc(e,r);else a.Data=fc(e,r);return a}function pc(e,r,t){var a={Type:t.biff>=8?e._R(2):0};if(a.Type)vc(e,r-2,a);else dc(e,t.biff>=8?r:r-2,t,a);return a}var mc=function(){function e(e,t){switch(t.type){case"base64":return r(k(e),t);case"binary":return r(e,t);case"buffer":return r(T&&Buffer.isBuffer(e)?e.toString("binary"):x(e),t);case"array":return r(br(e),t);}throw new Error("Unrecognized type "+t.type)}function r(e,r){var t=r||{};var a=t.dense?[]:{};var n=e.match(/\\trowd.*?\\row\b/g);if(!n.length)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 t=/\\\w+\b/g;var n=0;var s;var f=-1;while(s=t.exec(e)){switch(s[0]){case"\\cell":var o=e.slice(n,t.lastIndex-s[0].length);if(o[0]==" ")o=o.slice(1);++f;if(o.length){var c={v:o,t:"s"};if(Array.isArray(a))a[r][f]=c;else a[Oa({r:r,c:f})]=c}break;}n=t.lastIndex}if(f>i.e.c)i.e.c=f});a["!ref"]=Na(i);return a}function t(r,t){return La(e(r,t),t)}function a(e){var r=["{\\rtf1\\ansi"];var t=Fa(e["!ref"]),a;var n=Array.isArray(e);for(var i=t.s.r;i<=t.e.r;++i){r.push("\\trowd\\trautofit1");for(var s=t.s.c;s<=t.e.c;++s)r.push("\\cellx"+(s+1));r.push("\\pard\\intbl");for(s=t.s.c;s<=t.e.c;++s){var f=Oa({r:i,c:s});a=n?(e[i]||[])[s]:e[f];if(!a||a.v==null&&(!a.f||a.F))continue;r.push(" "+(a.w||(Pa(a),a.w)));r.push("\\cell")}r.push("\\pard\\intbl\\row")}return r.join("")+"}"}return{to_workbook:t,to_sheet:e,from_sheet:a}}();function bc(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 gc(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 wc(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,c=n+i;o=s/(c>1?2-c:c);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,c/2]}function kc(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 c=0;c!=3;++c)s[c]=Math.round(s[c]*255);return s}function Tc(e,r){if(r===0)return e;var t=wc(bc(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return gc(kc(t))}var Ec=6,yc=15,Sc=1,_c=Ec;function Ac(e){return Math.floor((e+Math.round(128/_c)/256)*_c)}function xc(e){return Math.floor((e-5)/_c*100+.5)/100}function Cc(e){return Math.round((e*_c+5)/_c*256)/256}function Rc(e){return Cc(xc(Ac(e)))}function Oc(e){var r=Math.abs(e-Rc(e)),t=_c;if(r>.005)for(_c=Sc;_c":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=nt(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=nt(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 Uc(e,r,t,a){r.Fills=[];var n={};var i=false;(e[0].match(Hr)||[]).forEach(function(e){var t=Gr(e);switch(jr(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 Bc(e,r,t,a){r.Fonts=[];var n={};var s=false;(e[0].match(Hr)||[]).forEach(function(e){var f=Gr(e);switch(jr(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 Wc(e,r,t){r.NumberFmt=[];var a=rr(X);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}We(f,o)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+s[0]+" in numFmts");}}}function Hc(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]=kt("numFmt",null,{numFmtId:a,formatCode:qr(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=kt("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var zc=["numFmtId","fillId","fontId","borderId","xfId"];var Vc=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function Gc(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Hr)||[]).forEach(function(e){var i=Gr(e),s=0;switch(jr(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=nt(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 jc(e){var r=[];r[r.length]=kt("cellXfs",null);e.forEach(function(e){r[r.length]=kt("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=kt("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var Xc=function hk(){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 c={};if(!s)return c;s=s.replace(//gm,"").replace(//gm,"");var l;if(l=s.match(e))Wc(l,c,o);if(l=s.match(a))Bc(l,c,f,o);if(l=s.match(t))Uc(l,c,f,o);if(l=s.match(n))Mc(l,c,f,o);if(l=s.match(r))Gc(l,c,o);return c}}();function $c(e,r){var t=[Mr,kt("styleSheet",null,{xmlns:At[0],"xmlns:vt":_t.vt})],a;if(e.SSF&&(a=Hc(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=jc(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 Yc(e,r){var t=e._R(2);var a=Ha(e,r-2);return[t,a]}function Kc(e,r,t){if(!t)t=ha(6+4*r.length);t._W(2,e);za(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 Jc(e,r,t){var a={};a.sz=e._R(2)/20;var n=bn(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=pn(e,8);switch(e._R(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor";break;}a.name=Ha(e,r-21);return a}function qc(e,r){if(!r)r=ha(25+4*32);r._W(2,e.sz*20);gn(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);mn(e.color,r);var a=0;if(e.scheme=="major")a=1;if(e.scheme=="minor")a=2;r._W(1,a);za(e.name,r);return r.length>r.l?r.slice(0,r.l):r}var Zc=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];var Qc;var el=ua;function rl(e,r){if(!r)r=ha(4*3+8*7+16*1);if(!Qc)Qc=ar(Zc);var t=Qc[e.patternType];if(t==null)t=40;r._W(4,t);var a=0;if(t!=40){mn({auto:1},r);mn({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 tl(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 al(e,r,t){if(!t)t=ha(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 nl(e,r){if(!r)r=ha(10);r._W(1,0);r._W(1,0);r._W(4,0);r._W(4,0);return r}var il=ua;function sl(e,r){if(!r)r=ha(51);r._W(1,0);nl(null,r);nl(null,r);nl(null,r);nl(null,r);nl(null,r);return r.length>r.l?r.slice(0,r.l):r}function fl(e,r){if(!r)r=ha(12+4*10);r._W(4,e.xfId);r._W(2,1);r._W(1,+e.builtinId);r._W(1,0);tn(e.name||"",r);return r.length>r.l?r.slice(0,r.l):r}function ol(e,r,t){var a=ha(4+256*2*4);a._W(4,e);tn(r,a);tn(t,a);return a.length>a.l?a.slice(0,a.l):a}function cl(e,r,t){var a={};a.NumberFmt=[];for(var n in X)a.NumberFmt[n]=X[n];a.CellXf=[];a.Fonts=[];var i=[];var s=false;da(e,function f(e,n,o){switch(o){case 44:a.NumberFmt[e[0]]=e[1];We(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=Tc(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 ll(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;pa(e,615,Wa(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)pa(e,44,Kc(a,r[a]))});pa(e,616)}function ul(e){var r=1;if(r==0)return;pa(e,611,Wa(r));pa(e,43,qc({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}));pa(e,612)}function hl(e){var r=2;if(r==0)return;pa(e,603,Wa(r));pa(e,45,rl({patternType:"none"}));pa(e,45,rl({patternType:"gray125"}));pa(e,604)}function dl(e){var r=1;if(r==0)return;pa(e,613,Wa(r));pa(e,46,sl({}));pa(e,614)}function vl(e){var r=1;pa(e,626,Wa(r));pa(e,47,al({numFmtId:0,fontId:0,fillId:0,borderId:0},65535));pa(e,627)}function pl(e,r){pa(e,617,Wa(r.length));r.forEach(function(r){pa(e,47,al(r,0))});pa(e,618)}function ml(e){var r=1;pa(e,619,Wa(r));pa(e,48,fl({xfId:0,builtinId:0,name:"Normal"}));pa(e,620)}function bl(e){var r=0;pa(e,505,Wa(r));pa(e,506)}function gl(e){var r=0;pa(e,508,ol(r,"TableStyleMedium9","PivotStyleMedium4"));pa(e,509)}function wl(){return}function kl(e,r){var t=va();pa(t,278);ll(t,e.SSF);ul(t,e);hl(t,e);dl(t,e);vl(t,e);pl(t,r.cellXfs);ml(t,e);bl(t,e);gl(t,e);wl(t,e);pa(t,279);return t.end()}var Tl=["","","","","","","","","","","",""];function El(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Hr)||[]).forEach(function(e){var n=Gr(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[Tl.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 yl(){}function Sl(){}var _l=/]*)>[\s\S]*<\/a:clrScheme>/;var Al=/]*)>[\s\S]*<\/a:fontScheme>/;var xl=/]*)>[\s\S]*<\/a:fmtScheme>/;function Cl(e,r,t){r.themeElements={};var a;[["clrScheme",_l,El],["fontScheme",Al,yl],["fmtScheme",xl,Sl]].forEach(function(n){if(!(a=e.match(n[1])))throw new Error(n[0]+" not found in themeElements");n[2](a,r,t)})}var Rl=/]*)>[\s\S]*<\/a:themeElements>/;function Ol(e,r){if(!e||e.length===0)e=Il();var t;var a={};if(!(t=e.match(Rl)))throw new Error("themeElements not found in theme");Cl(t[0],a,r);a.raw=e;return a}function Il(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Mr];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";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 Nl(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=Pr(i,{type:"array"})}catch(f){return}var o=Or(s,"theme/theme/theme1.xml",true);if(!o)return;return Ol(o,t)}function Fl(e){return e._R(4)}function Dl(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=Pl(e,4);break;case 2:r.xclrValue=ks(e,4);break;case 3:r.xclrValue=Fl(e,4);break;case 4:e.l+=4;break;}e.l+=8;return r}function Pl(e,r){return ua(e,r)}function Ll(e,r){return ua(e,r)}function Ml(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]=Dl(e,t);break;case 6:a[1]=Ll(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 Ul(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(Ml(e,t-e.l));return{ixfe:a,ext:i}}function Bl(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 Wl(e,r){return{flags:e._R(4),version:e._R(4),name:Ha(e,r-8)}}function Hl(e){var r=ha(12+2*e.name.length);r._W(4,e.flags);r._W(4,e.version);za(e.name,r);return r.slice(0,r.l)}function zl(e){var r=[];var t=e._R(4);while(t-- >0)r.push([e._R(4),e._R(4)]);return r}function Vl(e){var r=ha(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 ql(e){var r=[];if(!e)return r;var t=1;(e.match(Hr)||[]).forEach(function(e){var a=Gr(e);switch(a[0]){case"":;case"":break;case"]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}var au=1024;function nu(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[kt("xml",null,{"xmlns:v":xt.v,"xmlns:o":xt.o,"xmlns:x":xt.x,"xmlns:mv":xt.mv}).replace(/\/>/,">"),kt("o:shapelayout",kt("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"}),kt("v:shapetype",[kt("v:stroke",null,{joinstyle:"miter"}),kt("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202","o:spt":202,coordsize:t.join(","),path:a})];while(au",i,kt("v:shadow",null,s),kt("v:path",null,{"o:connecttype":"none"}),'
','',"","",gt("x:Anchor",[r.c+1,0,r.r+1,0,r.c+3,20,r.r+5,20].join(",")),gt("x:AutoFill","False"),gt("x:Row",String(r.r)),gt("x:Column",String(r.c)),e[1].hidden?"":"","",""])});n.push("");return n.join("")}function iu(e,r,t,a){var n=Array.isArray(e);var i;r.forEach(function(r){var s=Ra(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=Fa(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;--l){if(!t&&i.c[l].T)return;if(t&&!i.c[l].T)i.c.splice(l,1)}if(t&&a)for(l=0;l/))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=Gr(n[0]);var s={author:i.authorId&&t[i.authorId]||"sheetjsghost",ref:i.ref,guid:i.guid};var f=Ra(i.ref);if(r.sheetRows&&r.sheetRows<=f.r)return;var o=e.match(/<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/);var c=!!o&&!!o[1]&&Po(o[1])||{r:"",t:"",h:""};s.r=c.r;if(c.r=="")c.t=c.h="";s.t=(c.t||"").replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(r.cellHTML)s.h=c.h;a.push(s)});return a}function fu(e){var r=[Mr,kt("comments",null,{xmlns:At[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=qr(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=[];if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);else e[1].forEach(function(e){if(e.a)a=t.indexOf(qr(e.a));n.push(e.t||"")});r.push('');if(n.length<=1)r.push(gt("t",qr(n[0]||"")));else{var i="Comment:\n "+n[0]+"\n";for(var s=1;s")});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function ou(e,r){var t=[];var a=false,n={},i=0;e.replace(Hr,function s(f,o){var c=Gr(f);switch(jr(c[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 "+c[0]+" in threaded comments");}return f});return t}function cu(e,r,t){var a=[Mr,kt("ThreadedComments",null,{xmlns:_t.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(kt("threadedComment",gt("text",i.t||""),f))})});a.push("");return a.join("")}function lu(e,r){var t=[];var a=false;e.replace(Hr,function n(e){var n=Gr(e);switch(jr(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 uu(e){var r=[Mr,kt("personList",null,{xmlns:_t.TCMNT,"xmlns:x":At[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(kt("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}function hu(e){var r={};r.iauthor=e._R(4);var t=un(e,16);r.rfx=t.s;r.ref=Oa(t.s);e.l+=16;return r}function du(e,r){if(r==null)r=ha(36);r._W(4,e[1].iauthor);hn(e[0],r);r._W(4,0);r._W(4,0);r._W(4,0);r._W(4,0);return r}var vu=Ha;function pu(e){return za(e.slice(0,54))}function mu(e,r){var t=[];var a=[];var n={};var i=false;da(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 bu(e){var r=va();var t=[];pa(r,628);pa(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));pa(r,632,pu(e.a))})});pa(r,631);pa(r,633);e.forEach(function(e){e[1].forEach(function(a){a.iauthor=t.indexOf(a.a);var n={s:Ra(e[0]),e:Ra(e[0])};pa(r,635,du([n,a]));if(a.t&&a.t.length>0)pa(r,637,Ya(a));pa(r,636);delete a.iauthor})});pa(r,634);pa(r,629);return r.end()}var gu="application/vnd.ms-office.vbaProject";function wu(e){var r=Ke.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*/,"");Ke.utils.cfb_add(r,n,e.FileIndex[a].content)});return Ke.write(r)}function ku(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")Ke.utils.cfb_add(e,n,r.FileIndex[a].content)})}var Tu=["xlsb","xlsm","xlam","biff8","xla"];function Eu(){return{"!type":"dialog"}}function yu(){return{"!type":"dialog"}}function Su(){return{"!type":"macro"}}function _u(){return{"!type":"macro"}}var Au=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?"":"$")+_a(o)+(s?"":"$")+Ta(f)}return function a(n,i){r=i;return n.replace(e,t)}}();var xu=/(^|[^._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 Cu=function(){return function e(r,t){return r.replace(xu,function(e,r,a,n,i,s){var f=Sa(n)-(a?0:t.c);var o=ka(s)-(i?0:t.r);var c=o==0?"":!i?"["+o+"]":o+1;var l=f==0?"":!a?"["+f+"]":f+1;return r+"R"+c+"C"+l})}}();function Ru(e,r){return e.replace(xu,function(e,t,a,n,i,s){return t+(a=="$"?a+n:_a(Sa(n)+r.c))+(i=="$"?i+s:Ta(ka(s)+r.r))})}function Ou(e,r,t){var a=Ia(r),n=a.s,i=Ra(t);var s={r:i.r-n.r,c:i.c-n.c};return Ru(e,s)}function Iu(e){if(e.length==1)return false;return true}function Nu(e){return e.replace(/_xlfn\./g,"")}function Fu(e){e.l+=1;return}function Du(e,r){var t=e._R(r==1?1:2);return[t&16383,t>>14&1,t>>15&1]}function Pu(e,r,t){var a=2;if(t){if(t.biff>=2&&t.biff<=5)return Lu(e,r,t);else if(t.biff==12)a=4}var n=e._R(a),i=e._R(a);var s=Du(e,2);var f=Du(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 Lu(e){var r=Du(e,2),t=Du(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 Mu(e,r,t){if(t.biff<8)return Lu(e,r,t);var a=e._R(t.biff==12?4:2),n=e._R(t.biff==12?4:2);var i=Du(e,2);var s=Du(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 Uu(e,r,t){if(t&&t.biff>=2&&t.biff<=5)return Bu(e,r,t);var a=e._R(t&&t.biff==12?4:2);var n=Du(e,2);return{r:a,c:n[0],cRel:n[1],rRel:n[2]}}function Bu(e){var r=Du(e,2);var t=e._R(1);return{r:r[0],c:t,cRel:r[1],rRel:r[2]}}function Wu(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 Hu(e,r,t){var a=t&&t.biff?t.biff:8;if(a>=2&&a<=5)return zu(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 zu(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 Vu(e,r,t){var a=(e[e.l++]&96)>>5;var n=Pu(e,t.biff>=2&&t.biff<=5?6:8,t);return[a,n]}function Gu(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=Pu(e,i,t);return[a,n,s]}function ju(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 Xu(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 $u(e,r,t){var a=(e[e.l++]&96)>>5;var n=Mu(e,r-1,t);return[a,n]}function Yu(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t.biff==2?6:t.biff==12?14:7;return[a]}function Ku(e){var r=e[e.l+1]&1;var t=1;e.l+=4;return[r,t]}function Ju(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 qu(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 Zu(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 Qu(e){var r=e[e.l+1]&255?1:0;e.l+=2;return[r,e._R(2)]}function eh(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=t&&t.biff==2?3:4;return[a]}function rh(e){var r=e._R(1),t=e._R(1);return[r,t]}function th(e){e._R(2);return rh(e,2)}function ah(e){e._R(2);return rh(e,2)}function nh(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Uu(e,0,t);return[a,n]}function ih(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Hu(e,0,t);return[a,n]}function sh(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=Uu(e,0,t);return[a,n,i]}function fh(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(t&&t.biff<=3?1:2);return[yd[n],Ed[n],a]}function oh(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)]:ch(e);return[n,(i[0]===0?Ed:Td)[i[1]]]}function ch(e){return[e[e.l+1]>>7,e._R(2)&32767]}function lh(e,r,t){e.l+=t&&t.biff==2?3:4;return}function uh(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 hh(e){e.l++;return Gn[e._R(1)]}function dh(e){e.l++;return e._R(2)}function vh(e){e.l++;return e._R(1)!==0}function ph(e){e.l++;return dn(e,8)}function mh(e,r,t){e.l++;return is(e,r-1,t)}function bh(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]=Zi(e,1)?"TRUE":"FALSE";if(r!=12)e.l+=7;break;case 37:;case 16:t[1]=Gn[e[e.l]];e.l+=r==12?4:8;break;case 0:e.l+=8;break;case 1:t[1]=dn(e,8);break;case 2:t[1]=ls(e,0,{biff:r>0&&r<8?2:r});break;default:throw new Error("Bad SerAr: "+t[0]);}return t}function gh(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?un:Rs)(e,8));return n}function wh(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]=bh(e,t.biff);return s}function kh(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 Th(e,r,t){if(t.biff==5)return Eh(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 Eh(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 yh(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 Sh(e,r,t){var a=e._R(1)>>>5&3;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function _h(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 Ah(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 xh=ua;var Ch=ua;var Rh=ua;function Oh(e,r,t){e.l+=2;return[Wu(e,4,t)]}function Ih(e){e.l+=6;return[]}var Nh=Oh;var Fh=Ih;var Dh=Ih;var Ph=Oh;function Lh(e){e.l+=2;return[es(e),e._R(2)&1]}var Mh=Oh;var Uh=Lh;var Bh=Ih;var Wh=Oh;var Hh=Oh;var zh=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];function Vh(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=zh[t>>2&31];return{ixti:r,coltype:t&3,rt:s,idx:a,c:n,C:i}}function Gh(e){e.l+=2;return[e._R(4)]}function jh(e,r,t){e.l+=5;e.l+=2;e.l+=t.biff==2?1:4;return["PTGSHEET"]}function Xh(e,r,t){e.l+=t.biff==2?4:5;return["PTGENDSHEET"]}function $h(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function Yh(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function Kh(e){e.l+=4;return[0,0]}var Jh={1:{n:"PtgExp",f:uh},2:{n:"PtgTbl",f:Rh},3:{n:"PtgAdd",f:Fu},4:{n:"PtgSub",f:Fu},5:{n:"PtgMul",f:Fu},6:{n:"PtgDiv",f:Fu},7:{n:"PtgPower",f:Fu},8:{n:"PtgConcat",f:Fu},9:{n:"PtgLt",f:Fu},10:{n:"PtgLe",f:Fu},11:{n:"PtgEq",f:Fu},12:{n:"PtgGe",f:Fu},13:{n:"PtgGt",f:Fu},14:{n:"PtgNe",f:Fu},15:{n:"PtgIsect",f:Fu},16:{n:"PtgUnion",f:Fu},17:{n:"PtgRange",f:Fu},18:{n:"PtgUplus",f:Fu},19:{n:"PtgUminus",f:Fu},20:{n:"PtgPercent",f:Fu},21:{n:"PtgParen",f:Fu},22:{n:"PtgMissArg",f:Fu},23:{n:"PtgStr",f:mh},26:{n:"PtgSheet",f:jh},27:{n:"PtgEndSheet",f:Xh},28:{n:"PtgErr",f:hh},29:{n:"PtgBool",f:vh},30:{n:"PtgInt",f:dh},31:{n:"PtgNum",f:ph},32:{n:"PtgArray",f:Yu},33:{n:"PtgFunc",f:fh},34:{n:"PtgFuncVar",f:oh},35:{n:"PtgName",f:kh},36:{n:"PtgRef",f:nh},37:{n:"PtgArea",f:Vu},38:{n:"PtgMemArea",f:yh},39:{n:"PtgMemErr",f:xh},40:{n:"PtgMemNoMem",f:Ch},41:{n:"PtgMemFunc",f:Sh},42:{n:"PtgRefErr",f:_h},43:{n:"PtgAreaErr",f:ju},44:{n:"PtgRefN",f:ih},45:{n:"PtgAreaN",f:$u},46:{n:"PtgMemAreaN",f:$h},47:{n:"PtgMemNoMemN",f:Yh},57:{n:"PtgNameX",f:Th},58:{n:"PtgRef3d",f:sh},59:{n:"PtgArea3d",f:Gu},60:{n:"PtgRefErr3d",f:Ah},61:{n:"PtgAreaErr3d",f:Xu},255:{}};var qh={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 Zh={1:{n:"PtgElfLel",f:Lh},2:{n:"PtgElfRw",f:Wh},3:{n:"PtgElfCol",f:Nh},6:{n:"PtgElfRwV",f:Hh},7:{n:"PtgElfColV",f:Ph},10:{n:"PtgElfRadical",f:Mh},11:{n:"PtgElfRadicalS",f:Bh},13:{n:"PtgElfColS",f:Fh},15:{n:"PtgElfColSV",f:Dh},16:{n:"PtgElfRadicalLel",f:Uh},25:{n:"PtgList",f:Vh},29:{n:"PtgSxName",f:Gh},255:{}};var Qh={0:{n:"PtgAttrNoop",f:Kh},1:{n:"PtgAttrSemi",f:eh},2:{n:"PtgAttrIf",f:Zu},4:{n:"PtgAttrChoose",f:Ju},8:{n:"PtgAttrGoto",f:qu},16:{n:"PtgAttrSum",f:lh},32:{n:"PtgAttrBaxcel",f:Ku},33:{n:"PtgAttrBaxcel",f:Ku},64:{n:"PtgAttrSpace",f:th},65:{n:"PtgAttrSpaceSemi",f:ah},128:{n:"PtgAttrIfError",f:Qu},255:{}};function ed(e,r,t,a){if(a.biff<8)return ua(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]=wh(e,0,a);i.push(t[s][1]);break;case"PtgMemArea":t[s][2]=gh(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(ua(e,r));return i}function rd(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=Jh[i]||Jh[qh[i]];if(i===24||i===25)n=(i===24?Zh:Qh)[e[e.l+1]];if(!n||!n.f){ua(e,r)}else{s.push([n.n,n.f(e,r,t)])}}return s}function td(e){var r=[];for(var t=0;t=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};function nd(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+"'";return e}function id(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 sd(e,r,t){var a=id(e,r,t);return a=="#REF"?a:nd(a,t)}function fd(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,c,l,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=wr(" ",e[0][p][1][1]);break;case 1:m=wr("\r",e[0][p][1][1]);break;default:m="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][p][1][0]);}c=c+m;p=-1}f.push(c+ad[w[0]]+o);break;case"PtgIsect":o=f.pop();c=f.pop();f.push(c+" "+o);break;case"PtgUnion":o=f.pop();c=f.pop();f.push(c+","+o);break;case"PtgRange":o=f.pop();c=f.pop();f.push(c+":"+o);break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgAttrIfError":break;case"PtgRef":l=ma(w[1][1],s,n);f.push(ga(l,i));break;case"PtgRefN":l=t?ma(w[1][1],t,n):w[1][1];f.push(ga(l,i));break;case"PtgRef3d":u=w[1][1];l=ma(w[1][2],s,n);v=sd(a,u,n);var k=v;f.push(v+"!"+ga(l,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=ba(w[1][1],t?{s:t}:s,n);f.push(wa(d,n));break;case"PtgArea":d=ba(w[1][1],s,n);f.push(wa(d,n));break;case"PtgArea3d":u=w[1][1];d=w[1][2];v=sd(a,u,n);f.push(v+"!"+wa(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 R=(id(a,A,n)||"").split(";;");if(R[h-1])C=R[h-1];else C+="SH33TJSERRX"}f.push(C);break}if(!x)x={Name:"SH33TJSERRY"};f.push(x.Name);break;case"PtgParen":var O="(",I=")";if(p>=0){m="";switch(e[0][p][1][0]){case 2:O=wr(" ",e[0][p][1][1])+O;break;case 3:O=wr("\r",e[0][p][1][1])+O;break;case 4:I=wr(" ",e[0][p][1][1])+I;break;case 5:I=wr("\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(O+f.pop()+I);break;case"PtgRefErr":f.push("#REF!");break;case"PtgRefErr3d":f.push("#REF!");break;case"PtgExp":l={c:w[1][1],r:w[1][0]};var N={c:t.c,r:t.r};if(a.sharedf[Oa(l)]){var F=a.sharedf[Oa(l)];f.push(fd(F,s,N,a,n))}else{var D=false;for(o=0;o!=a.arrayf.length;++o){c=a.arrayf[o];if(l.cc[0].e.c)continue;if(l.rc[0].e.r)continue;f.push(fd(c[1],s,N,a,n));D=true;break}if(!D)f.push(w[1])}break;case"PtgArray":f.push("{"+td(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=wr(" ",w[1][1]);break;case 5:L=false;case 1:m=wr("\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");return f[0]}function od(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ua(e,r-2)];var f=rd(e,s,t);if(r!==s+n)i=ed(e,r-s-n,f,t);e.l=a;return[f,i]}function cd(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ua(e,r-2)];var f=rd(e,s,t);if(r!==s+n)i=ed(e,r-s-n,f,t);e.l=a;return[f,i]}function ld(e,r,t,a){var n=e.l+r;var i=rd(e,a,t);var s;if(n!==e.l)s=ed(e,n-e.l,i,t);return[i,s]}function ud(e,r,t){var a=e.l+r;var n,i=e._R(2);var s=rd(e,i,t);if(i==65535)return[[],ua(e,r-2)];if(r!==i+2)n=ed(e,a-i-2,s,t);return[s,n]}function hd(e){var r;if(Qt(e,e.l+6)!==65535)return[dn(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 dd(e){if(e==null){var r=ha(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 vn(e);return vn(0)}function vd(e,r,t){var a=e.l+r;var n=Es(e,6);if(t.biff==2)++e.l;var i=hd(e,8);var s=e._R(1);if(t.biff!=2){e._R(1);if(t.biff>=5){e._R(4)}}var f=cd(e,a-e.l,t);return{cell:n,val:i[0],formula:f,shared:s>>3&1,tt:i[1]}}function pd(e,r,t,a,n){var i=ys(r,t,n);var s=dd(e.v);var f=ha(6);var o=1|32;f._W(2,o);f._W(4,0);var c=ha(e.bf.length);for(var l=0;l0?ed(e,i,n,t):null;return[n,s]}var bd=md;var gd=md;var wd=md;var kd=md;var Td={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 Ed={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 yd={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 Sd(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(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function _d(e){var r="of:="+e.replace(xu,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function Ad(e){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 xd(e){return e.replace(/\./,"!")}var Cd={};var Rd={};var Od=typeof Map!=="undefined";function Id(e,r,t){var a=0,n=e.length;if(t){if(Od?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var i=Od?t.get(r):t[r];for(;a-1){t.width=Cc(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 Fd(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 Dd(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){We(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 Pd(e,r,t,a,n,i){try{if(a.cellNF)e.z=X[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=mr(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(X[r]==null)We(Ge[r]||"General",r);if(e.t==="e")e.w=e.w||Gn[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=se(e.v)}else if(e.t==="d"){var f=fr(e.v);if((f|0)===f)e.w=f.toString(10);else e.w=se(f)}else if(e.v===undefined)return"";else e.w=fe(e.v,Rd)}else if(e.t==="d")e.w=Be(r,fr(e.v),Rd);else e.w=Be(r,e.v,Rd)}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=Tc(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=Tc(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 Ld(e,r,t){if(e&&e["!ref"]){var a=Fa(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=Na(t)}var Ud=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var Bd=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var Wd=/<(?:\w:)?hyperlink [^>]*>/gm;var Hd=/"(\w*:\w*)"/;var zd=/<(?:\w:)?col\b[^>]*[\/]?>/g;var Vd=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var Gd=/<(?:\w:)?pageMargins[^>]*\/>/g;var jd=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var Xd=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var $d=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function Yd(e,r,t,a,n,i,s){if(!e)return e;if(!a)a={"!id":{}};if(m!=null&&r.dense==null)r.dense=m;var f=r.dense?[]:{};var o={s:{r:2e6,c:2e6},e:{r:0,c:0}};var c="",l="";var u=e.match(Bd);if(u){c=e.slice(0,u.index);l=e.slice(u.index+u[0].length)}else c=l=e;var h=c.match(jd);if(h)Jd(h[0],f,n,t);else if(h=c.match(Xd))qd(h[0],h[1]||"",f,n,t,s,i);var d=(c.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(d>0){var v=c.slice(d,d+50).match(Hd);if(v)Md(f,v[1])}var p=c.match($d);if(p&&p[1])lv(p[1],n);var b=[];if(r.cellStyles){var g=c.match(zd);if(g)iv(b,g)}if(u)dv(u[1],f,r,o,i,s);var w=l.match(Vd);if(w)f["!autofilter"]=fv(w[0]);var k=[];var T=l.match(Ud);if(T)for(d=0;d!=T.length;++d)k[d]=Fa(T[d].slice(T[d].indexOf('"')+1));var E=l.match(Wd);if(E)tv(f,E,a);var y=l.match(Gd);if(y)f["!margins"]=av(Gr(y[0]));if(!f["!ref"]&&o.e.c>=o.s.c&&o.e.r>=o.s.r)f["!ref"]=Na(o);if(r.sheetRows>0&&f["!ref"]){var S=Fa(f["!ref"]);if(r.sheetRows<=+S.e.r){S.e.r=r.sheetRows-1;if(S.e.r>o.e.r)S.e.r=o.e.r;if(S.e.ro.e.c)S.e.c=o.e.c;if(S.e.c0)f["!cols"]=b;if(k.length>0)f["!merges"]=k;return f}function Kd(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function Jd(e,r,t,a){var n=Gr(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=Yr(ct(n.codeName))}function qd(e,r,t,a,n){Jd(e.slice(0,e.indexOf(">")),t,a,n)}function Zd(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(c){}i=true;s.codeName=lt(qr(o))}if(e&&e["!outline"]){var l={summaryBelow:1,summaryRight:1};if(e["!outline"].above)l.summaryBelow=0;if(e["!outline"].left)l.summaryRight=0;f=(f||"")+kt("outlinePr",null,l)}if(!i&&!f)return;n[n.length]=kt("sheetPr",f,s)}var Qd=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var ev=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function rv(e){var r={sheet:1};Qd.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=cc(e.password).toString(16).toUpperCase();return kt("sheetProtection",null,r)}function tv(e,r,t){var a=Array.isArray(e);for(var n=0;n!=r.length;++n){var i=Gr(ct(r[n]),true);if(!i.ref)return;var s=((t||{})["!id"]||[])[i.id];if(s){i.Target=s.Target;if(i.location)i.Target+="#"+Yr(i.location)}else{i.Target="#"+Yr(i.location);s={Target:i.Target,TargetMode:"Internal"}}i.Rel=s;if(i.tooltip){i.Tooltip=i.tooltip;delete i.tooltip}var f=Fa(i.ref);for(var o=f.s.r;o<=f.e.r;++o)for(var c=f.s.c;c<=f.e.c;++c){var l=Oa({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=i}else{if(!e[l])e[l]={t:"z",v:undefined};e[l].l=i}}}}function av(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function nv(e){Fd(e);return kt("pageMargins",null,e)}function iv(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Gr(r[a],true);if(n.hidden)n.hidden=nt(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;Oc(n.width)}Ic(n);while(i<=s)e[i++]=gr(n)}}function sv(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=kt("col",null,Nd(n,a))}t[t.length]="";return t.join("")}function fv(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function ov(e,r,t,a){var n=typeof e.ref=="string"?e.ref:Na(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var i=t.Workbook.Names;var s=Ia(n);if(s.s.r==s.e.r){s.e.r=Ia(r["!ref"]).e.r;n=Na(s)}for(var f=0;fa-z][^>]*)?\/?>/;function lv(e,r){if(!r.Views)r.Views=[{}];(e.match(cv)||[]).forEach(function(e,t){var a=Gr(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(nt(a.rightToLeft))r.Views[t].RTL=true})}function uv(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return kt("sheetViews",kt("sheetView",null,n),{})}function hv(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if(e.v===undefined&&typeof e.f!=="string"||e.t==="z"&&!e.f)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=Gn[e.v];break;case"d":if(a&&a.cellDates)n=mr(e.v,-1).toISOString();else{e=gr(e);e.t="n";n=""+(e.v=fr(mr(e.v)))}if(typeof e.z==="undefined")e.z=X[14];break;default:n=e.v;break;}var f=gt("v",qr(n)),o={r:r};var c=Dd(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){f=gt("v",""+Id(a.Strings,e.v,a.revStrings));o.t="s";break}o.t="str";break;}if(e.t!=i){e.t=i;e.v=s}if(typeof e.f=="string"&&e.f){var l=e.F&&e.F.slice(0,r.length)==r?{t:"array",ref:e.F}:null;f=kt("f",qr(e.f),l)+(e.v!=null?f:"")}if(e.l)t["!links"].push([r,e.l]);if(e.D)o.cm=1;return kt("c",f,o)}var dv=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var i=ut("v"),s=ut("f");return function f(o,c,l,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,R=0;var O=Array.isArray(d.CellXf),I;var N=[];var F=[];var D=Array.isArray(c);var P=[],L={},M=false;var U=!!l.sheetStubs;for(var B=o.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(l&&l.cellStyles){y=Gr(p.slice(V,v),true);S=y.r!=null?parseInt(y.r,10):S+1;_=-1;if(l.sheetRows&&l.sheetRows=v)break;y=Gr(p.slice(V,v),true);S=y.r!=null?parseInt(y.r,10):S+1;_=-1;if(l.sheetRows&&l.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=Gr(p.slice(0,w),true);if(!y.r)y.r=Oa({r:S-1,c:_});T=p.slice(w);E={t:""};if((b=T.match(i))!=null&&b[1]!=="")E.v=Yr(b[1]);if(l.cellFormula){if((b=T.match(s))!=null&&b[1]!==""){E.f=Yr(ct(b[1])).replace(/\r\n/g,"\n");if(!l.xlfn)E.f=Nu(E.f);if(b[0].indexOf('t="array"')>-1){E.F=(T.match(n)||[])[1];if(E.F.indexOf(":")>-1)N.push([Fa(E.F),E.F])}else if(b[0].indexOf('t="shared"')>-1){x=Gr(b[0]);var j=Yr(ct(b[1]));if(!l.xlfn)j=Nu(j);F[parseInt(x.si,10)]=[x,j,y.r]}}else if(b=T.match(/]*\/>/)){x=Gr(b[0]);if(F[x.si])E.f=Ou(F[x.si][1],F[x.si][2],y.r)}var $=Ra(y.r);for(w=0;w=N[w][0].s.r&&$.r<=N[w][0].e.r)if($.c>=N[w][0].s.c&&$.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{A=Cd[parseInt(E.v,10)];E.v=A.t;E.r=A.r;if(l.cellHTML)E.h=A.h}break;case"str":E.t="s";E.v=E.v!=null?ct(E.v):"";if(l.cellHTML)E.h=et(E.v);break;case"inlineStr":b=T.match(a);E.t="s";if(b!=null&&(A=Po(b[1]))){E.v=A.t;if(l.cellHTML)E.h=A.h}else E.v="";break;case"b":E.v=nt(E.v);break;case"d":if(l.cellDates)E.v=mr(E.v,1);else{E.v=fr(mr(E.v,1));E.t="n"}break;case"e":if(!l||l.cellText!==false)E.w=E.v;E.v=jn[E.v];break;}C=R=0;I=null;if(O&&y.s!==undefined){I=d.CellXf[y.s];if(I!=null){if(I.numFmtId!=null)C=I.numFmtId;if(l.cellStyles){if(I.fillId!=null)R=I.fillId}}}Pd(E,C,R,l,h,d);if(l.cellDates&&O&&E.t=="n"&&De(X[C])){E.t="d";E.v=ur(E.v)}if(y.cm&&l.xlmeta){var Y=(l.xlmeta.Cell||[])[+y.cm-1];if(Y&&Y.type=="XLDAPR")E.D=true}if(D){var K=Ra(y.r);if(!c[K.r])c[K.r]=[];c[K.r][K.c]=E}else c[y.r]=E}}if(P.length>0)c["!rows"]=P}}();function vv(e,r,t,a){var n=[],i=[],s=Fa(e["!ref"]),f="",o,c="",l=[],u=0,h=0,d=e["!rows"];var v=Array.isArray(e);var p={r:c},m,b=-1;for(h=s.s.c;h<=s.e.c;++h)l[h]=_a(h);for(u=s.s.r;u<=s.e.r;++u){i=[];c=Ta(u);for(h=s.s.c;h<=s.e.c;++h){o=l[h]+c;var g=v?(e[u]||[])[h]:e[o];if(g===undefined)continue;if((f=hv(g,o,e,r,t,a))!=null)i.push(f)}if(i.length>0||d&&d[u]){p={r:c};if(d&&d[u]){m=d[u];if(m.hidden)p.hidden=1;b=-1;if(m.hpx)b=Dc(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]=kt("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]=kt("row","",p)}}return n.join("")}function pv(e,r,t,a){var n=[Mr,kt("worksheet",null,{xmlns:At[0],"xmlns:r":_t.r})];var i=t.SheetNames[e],s=0,f="";var o=t.Sheets[i];if(o==null)o={};var c=o["!ref"]||"A1";var l=Fa(c);if(l.e.c>16383||l.e.r>1048575){if(r.WTF)throw new Error("Range "+c+" exceeds format limit A1:XFD1048576");l.e.c=Math.min(l.e.c,16383);l.e.r=Math.min(l.e.c,1048575);c=Na(l)}if(!a)a={};o["!comments"]=[];var u=[];Zd(o,t,e,r,n);n[n.length]=kt("dimension",null,{ref:c});n[n.length]=uv(o,r,e,t);if(r.sheetFormat)n[n.length]=kt("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]=sv(o,o["!cols"]);n[s=n.length]="";o["!links"]=[];if(o["!ref"]!=null){f=vv(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]=rv(o["!protect"]);if(o["!autofilter"]!=null)n[n.length]=ov(o["!autofilter"],o,t,e);if(o["!merges"]!=null&&o["!merges"].length>0)n[n.length]=Kd(o["!merges"]);var h=-1,d,v=-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)!="#"){v=ri(a,-1,qr(e[1].Target).replace(/#.*$/,""),qn.HLINK);d["r:id"]="rId"+v}if((h=e[1].Target.indexOf("#"))>-1)d.location=qr(e[1].Target.slice(h+1));if(e[1].Tooltip)d.tooltip=qr(e[1].Tooltip);n[n.length]=kt("hyperlink",null,d)});n[n.length]=""}delete o["!links"];if(o["!margins"]!=null)n[n.length]=nv(o["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=gt("ignoredErrors",kt("ignoredError",null,{numberStoredAsText:1,sqref:c}));if(u.length>0){v=ri(a,-1,"../drawings/drawing"+(e+1)+".xml",qn.DRAW);n[n.length]=kt("drawing",null,{"r:id":"rId"+v});o["!drawing"]=u}if(o["!comments"].length>0){v=ri(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",qn.VML);n[n.length]=kt("legacyDrawing",null,{"r:id":"rId"+v});o["!legacy"]=v}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function mv(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=ha(17+8*16);var n=(t["!rows"]||[])[e]||{};a._W(4,e);a._W(4,0);var i=320;if(n.hpx)i=Dc(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 c={r:e,c:0};for(var l=0;l<16;++l){if(r.s.c>l+1<<10||r.e.ca.l?a.slice(0,a.l):a}function gv(e,r,t,a){var n=bv(a,t,r);if(n.length>17||(r["!rows"]||[])[a])pa(e,0,n)}var wv=un;var kv=hn;function Tv(){}function Ev(e,r){var t={};var a=e[e.l];++e.l;t.above=!(a&64);t.left=!(a&128);e.l+=18;t.name=Qa(e,r-19);return t}function yv(e,r,t){if(t==null)t=ha(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);mn({auto:1},t);t._W(-4,-1);t._W(-4,-1);en(e,t);return t.slice(0,t.l)}function Sv(e){var r=Ka(e);return[r]}function _v(e,r,t){if(t==null)t=ha(8);return Ja(r,t)}function Av(e){var r=qa(e);return[r]}function xv(e,r,t){if(t==null)t=ha(4);return Za(r,t)}function Cv(e){var r=Ka(e);var t=e._R(1);return[r,t,"b"]}function Rv(e,r,t){if(t==null)t=ha(9);Ja(r,t);t._W(1,e.v?1:0);return t}function Ov(e){var r=qa(e);var t=e._R(1);return[r,t,"b"]}function Iv(e,r,t){if(t==null)t=ha(5);Za(r,t);t._W(1,e.v?1:0);return t}function Nv(e){var r=Ka(e);var t=e._R(1);return[r,t,"e"]}function Fv(e,r,t){if(t==null)t=ha(9);Ja(r,t);t._W(1,e.v);return t}function Dv(e){var r=qa(e);var t=e._R(1);return[r,t,"e"]}function Pv(e,r,t){if(t==null)t=ha(8);Za(r,t);t._W(1,e.v);t._W(2,0);t._W(1,0);return t}function Lv(e){var r=Ka(e);var t=e._R(4);return[r,t,"s"]}function Mv(e,r,t){if(t==null)t=ha(12);Ja(r,t);t._W(4,r.v);return t}function Uv(e){var r=qa(e);var t=e._R(4);return[r,t,"s"]}function Bv(e,r,t){if(t==null)t=ha(8);Za(r,t);t._W(4,r.v);return t}function Wv(e){var r=Ka(e);var t=dn(e);return[r,t,"n"]}function Hv(e,r,t){if(t==null)t=ha(16);Ja(r,t);vn(e.v,t);return t}function zv(e){var r=qa(e);var t=dn(e);return[r,t,"n"]}function Vv(e,r,t){if(t==null)t=ha(12);Za(r,t);vn(e.v,t);return t}function Gv(e){var r=Ka(e);var t=fn(e);return[r,t,"n"]}function jv(e,r,t){if(t==null)t=ha(12);Ja(r,t);on(e.v,t);return t}function Xv(e){var r=qa(e);var t=fn(e);return[r,t,"n"]}function $v(e,r,t){if(t==null)t=ha(8);Za(r,t);on(e.v,t);return t}function Yv(e){var r=Ka(e);var t=ja(e);return[r,t,"is"]}function Kv(e){var r=Ka(e);var t=Ha(e);return[r,t,"str"]}function Jv(e,r,t){if(t==null)t=ha(12+4*e.v.length);Ja(r,t);za(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function qv(e){var r=qa(e);var t=Ha(e);return[r,t,"str"]}function Zv(e,r,t){if(t==null)t=ha(8+4*e.v.length);Za(r,t);za(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function Qv(e,r,t){var a=e.l+r;var n=Ka(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"b"];if(t.cellFormula){e.l+=2;var f=gd(e,a-e.l,t);s[3]=fd(f,null,n,t.supbooks,t)}else e.l=a;return s}function ep(e,r,t){var a=e.l+r;var n=Ka(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"e"];if(t.cellFormula){e.l+=2;var f=gd(e,a-e.l,t);s[3]=fd(f,null,n,t.supbooks,t)}else e.l=a;return s}function rp(e,r,t){var a=e.l+r;var n=Ka(e);n.r=t["!row"];var i=dn(e);var s=[n,i,"n"];if(t.cellFormula){e.l+=2;var f=gd(e,a-e.l,t);s[3]=fd(f,null,n,t.supbooks,t)}else e.l=a;return s}function tp(e,r,t){ +var a=e.l+r;var n=Ka(e);n.r=t["!row"];var i=Ha(e);var s=[n,i,"str"];if(t.cellFormula){e.l+=2;var f=gd(e,a-e.l,t);s[3]=fd(f,null,n,t.supbooks,t)}else e.l=a;return s}var ap=un;var np=hn;function ip(e,r){if(r==null)r=ha(4);r._W(4,e);return r}function sp(e,r){var t=e.l+r;var a=un(e,16);var n=rn(e);var i=Ha(e);var s=Ha(e);var f=Ha(e);e.l=t;var o={rfx:a,relId:n,loc:i,display:f};if(s)o.Tooltip=s;return o}function fp(e,r){var t=ha(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));hn({s:Ra(e[0]),e:Ra(e[0])},t);sn("rId"+r,t);var a=e[1].Target.indexOf("#");var n=a==-1?"":e[1].Target.slice(a+1);za(n||"",t);za(e[1].Tooltip||"",t);za("",t);return t.slice(0,t.l)}function op(){}function cp(e,r,t){var a=e.l+r;var n=cn(e,16);var i=e._R(1);var s=[n];s[2]=i;if(t.cellFormula){var f=bd(e,a-e.l,t);s[1]=f}else e.l=a;return s}function lp(e,r,t){var a=e.l+r;var n=un(e,16);var i=[n];if(t.cellFormula){var s=kd(e,a-e.l,t);i[1]=s;e.l=a}else e.l=a;return i}function up(e,r,t){if(t==null)t=ha(18);var a=Nd(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 hp=["left","right","top","bottom","header","footer"];function dp(e){var r={};hp.forEach(function(t){r[t]=dn(e,8)});return r}function vp(e,r){if(r==null)r=ha(6*8);Fd(e);hp.forEach(function(t){vn(e[t],r)});return r}function pp(e){var r=e._R(2);e.l+=28;return{RTL:r&32}}function mp(e,r,t){if(t==null)t=ha(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=ha(24);r._W(4,4);r._W(4,1);hn(e,r);return r}function gp(e,r){if(r==null)r=ha(16*4+2);r._W(2,e.password?cc(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 wp(){}function kp(){}function Tp(e,r,t,a,n,i,s){if(!e)return e;var f=r||{};if(!a)a={"!id":{}};if(m!=null&&f.dense==null)f.dense=m;var o=f.dense?[]:{};var c;var l={s:{r:2e6,c:2e6},e:{r:0,c:0}};var u=[];var h=false,d=false;var v,p,b,g,w,k,T,E,y;var S=[];f.biff=12;f["!row"]=0;var _=0,A=false;var x=[];var C={};var R=f.supbooks||n.supbooks||[[]];R.sharedf=C;R.arrayf=x;R.SheetNames=n.SheetNames||n.Sheets.map(function(e){return e.name});if(!f.supbooks){f.supbooks=R;if(n.Names)for(var O=0;O=O[0].s.r&&v.r<=O[0].e.r)if(w>=O[0].s.c&&w<=O[0].e.c){p.F=Na(O[0]);A=true}}if(!A&&e.length>3)p.f=e[3]}if(l.s.r>v.r)l.s.r=v.r;if(l.s.c>w)l.s.c=w;if(l.e.rv.r)l.s.r=v.r;if(l.s.c>w)l.s.c=w;if(l.e.r=e.s){I[e.e--]={width:e.w/256,hidden:!!(e.flags&1),level:e.level};if(!F){F=true;Oc(e.w/256)}Ic(I[e.e+1])}break;case 161:o["!autofilter"]={ref:Na(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:h=true;break;case 36:h=false;break;case 37:u.push(m);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"+m.toString(16));}},f);delete f.supbooks;delete f["!row"];if(!o["!ref"]&&(l.s.r<2e6||c&&(c.e.r>0||c.e.c>0||c.s.r>0||c.s.c>0)))o["!ref"]=Na(c||l);if(f.sheetRows&&o["!ref"]){var L=Fa(o["!ref"]);if(f.sheetRows<=+L.e.r){L.e.r=f.sheetRows-1;if(L.e.r>l.e.r)L.e.r=l.e.r;if(L.e.rl.e.c)L.e.c=l.e.c;if(L.e.c0)o["!merges"]=S;if(I.length>0)o["!cols"]=I;if(N.length>0)o["!rows"]=N;return o}function Ep(e,r,t,a,n,i,s){if(r.v===undefined)return false;var f="";switch(r.t){case"b":f=r.v?"1":"0";break;case"d":r=gr(r);r.z=r.z||X[14];r.v=fr(mr(r.v));r.t="n";break;case"n":;case"e":f=""+r.v;break;default:f=r.v;break;}var o={r:t,c:a};o.s=Dd(n.cellXfs,r,n);if(r.l)i["!links"].push([Oa(o),r.l]);if(r.c)i["!comments"].push([Oa(o),r.c]);switch(r.t){case"s":;case"str":if(n.bookSST){f=Id(n.Strings,r.v,n.revStrings);o.t="s";o.v=f;if(s)pa(e,18,Bv(r,o));else pa(e,7,Mv(r,o))}else{o.t="str";if(s)pa(e,17,Zv(r,o));else pa(e,6,Jv(r,o))}return true;case"n":if(r.v==(r.v|0)&&r.v>-1e3&&r.v<1e3){if(s)pa(e,13,$v(r,o));else pa(e,2,jv(r,o))}else{if(s)pa(e,16,Vv(r,o));else pa(e,5,Hv(r,o))}return true;case"b":o.t="b";if(s)pa(e,15,Iv(r,o));else pa(e,4,Rv(r,o));return true;case"e":o.t="e";if(s)pa(e,14,Pv(r,o));else pa(e,3,Fv(r,o));return true;}if(s)pa(e,12,xv(r,o));else pa(e,1,_v(r,o));return true}function yp(e,r,t,a){var n=Fa(r["!ref"]||"A1"),i,s="",f=[];pa(e,145);var o=Array.isArray(r);var c=n.e.r;if(r["!rows"])c=Math.max(n.e.r,r["!rows"].length-1);for(var l=n.s.r;l<=c;++l){s=Ta(l);gv(e,r,n,l);var u=false;if(l<=n.e.r)for(var h=n.s.c;h<=n.e.c;++h){if(l===n.s.r)f[h]=_a(h);i=f[h]+s;var d=o?(r[l]||[])[h]:r[i];if(!d){u=false;continue}u=Ep(e,d,l,h,a,r,u)}}pa(e,146)}function Sp(e,r){if(!r||!r["!merges"])return;pa(e,177,ip(r["!merges"].length));r["!merges"].forEach(function(r){pa(e,176,np(r))});pa(e,178)}function _p(e,r){if(!r||!r["!cols"])return;pa(e,390);r["!cols"].forEach(function(r,t){if(r)pa(e,60,up(t,r))});pa(e,391)}function Ap(e,r){if(!r||!r["!ref"])return;pa(e,648);pa(e,649,bp(Fa(r["!ref"])));pa(e,650)}function xp(e,r,t){r["!links"].forEach(function(r){if(!r[1].Target)return;var a=ri(t,-1,r[1].Target.replace(/#.*$/,""),qn.HLINK);pa(e,494,fp(r,a))});delete r["!links"]}function Cp(e,r,t,a){if(r["!comments"].length>0){var n=ri(a,-1,"../drawings/vmlDrawing"+(t+1)+".vml",qn.VML);pa(e,551,sn("rId"+n));r["!legacy"]=n}}function Rp(e,r,t,a){if(!r["!autofilter"])return;var n=r["!autofilter"];var i=typeof n.ref==="string"?n.ref:Na(n.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var s=t.Workbook.Names;var f=Ia(i);if(f.s.r==f.e.r){f.e.r=Ia(r["!ref"]).e.r;i=Na(f)}for(var o=0;o16383||c.e.r>1048575){if(r.WTF)throw new Error("Range "+(s["!ref"]||"A1")+" exceeds format limit A1:XFD1048576");c.e.c=Math.min(c.e.c,16383);c.e.r=Math.min(c.e.c,1048575)}s["!links"]=[];s["!comments"]=[];pa(n,129);if(t.vbaraw||s["!outline"])pa(n,147,yv(f,s["!outline"]));pa(n,148,kv(c));Op(n,s,t.Workbook);Ip(n,s);_p(n,s,e,r,t);yp(n,s,e,r,t);Np(n,s);Rp(n,s,t,e);Sp(n,s);xp(n,s,a);if(s["!margins"])pa(n,476,vp(s["!margins"]));if(!r||r.ignoreEC||r.ignoreEC==void 0)Ap(n,s);Cp(n,s,e,a);pa(n,130);return n.end()}function Dp(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=Yr((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 Pp(e,r,t,a,n,i){var s=i||{"!type":"chart"};if(!e)return i;var f=0,o=0,c="A";var l={s:{r:2e6,c:2e6},e:{r:0,c:0}};(e.match(/[\s\S]*?<\/c:numCache>/gm)||[]).forEach(function(e){var r=Dp(e);l.s.r=l.s.c=0;l.e.c=f;c=_a(f);r[0].forEach(function(e,t){s[c+Ta(t)]={t:"n",v:e,z:r[1]};o=t});if(l.e.r0)s["!ref"]=Na(l);return s}function Lp(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(jd);if(f)Jd(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 Mp(e,r,t,a){var n=[Mr,kt("chartsheet",null,{xmlns:At[0],"xmlns:r":_t.r})];n[n.length]=kt("drawing",null,{"r:id":"rId1"});ri(a,-1,"../drawings/drawing"+(e+1)+".xml",qn.DRAW);if(n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function Up(e,r){e.l+=10;var t=Ha(e,r-10);return{name:t}}function Bp(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;da(e,function o(e,a,c){switch(c){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(c);break;case 38:s.pop();break;default:if(a.T>0)s.push(c);else if(a.T<0)s.pop();else if(!f||r.WTF)throw new Error("Unexpected record 0x"+c.toString(16));}},r);if(a["!id"][i["!rel"]])i["!drawel"]=a["!id"][i["!rel"]];return i}function Wp(){var e=va();pa(e,129);pa(e,130);return e.end()}var Hp=[["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 zp=[["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 Vp=[];var Gp=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function jp(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]]=nt(a[i[0]]);break;case"int":if(typeof a[i[0]]=="string")a[i[0]]=parseInt(a[i[0]],10);break;}}}}function Xp(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]]=nt(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function $p(e){Xp(e.WBProps,Hp);Xp(e.CalcPr,Gp);jp(e.WBView,zp);jp(e.Sheets,Vp);Rd.date1904=nt(e.WBProps.date1904)}function Yp(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return nt(e.Workbook.WBProps.date1904)?"true":"false"}var Kp="][*?/\\".split("");function Jp(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;Kp.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function qp(e,r,t){e.forEach(function(a,n){Jp(a);for(var i=0;i22)throw new Error("Bad Code Name: Worksheet"+s)}})}function Zp(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||[];qp(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":Hp.forEach(function(e){if(l[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=nt(l[e[0]]);break;case"int":t.WBProps[e[0]]=parseInt(l[e[0]],10);break;default:t.WBProps[e[0]]=l[e[0]];}});if(l.codeName)t.WBProps.CodeName=ct(l.codeName);break;case"":break;case"":break;case"":;case"":break;case"":delete l[0];t.WBView.push(l);break;case"":break;case"":;case"":break;case"":break;case"":break;case"":;case"":break;case"":break;case"":;case"":a=false;break;case"":{i.Ref=Yr(ct(e.slice(s,c)));t.Names.push(i)}break;case"":break;case"":delete l[0];t.CalcPr=l;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){Hp.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]=kt("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:qr(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]=kt("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]=kt("definedName",qr(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=nn(e,r-8);t.name=Ha(e);return t}function am(e,r){if(!r)r=ha(127);r._W(4,e.Hidden);r._W(4,e.iTabID);sn(e.strRelID,r);za(e.name.slice(0,31),r);return r.length>r.l?r.slice(0,r.l):r}function nm(e,r){var t={};var a=e._R(4);t.defaultThemeVersion=e._R(4);var n=r>8?Ha(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 im(e,r){if(!r)r=ha(72);var t=0;if(e){if(e.filterPrivacy)t|=8}r._W(4,t);r._W(4,0);en(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 fm(e,r,t){var a=e.l+r;e.l+=4;e.l+=1;var n=e._R(4);var i=an(e);var s=wd(e,0,t);var f=rn(e);e.l=a;var o={Name:i,Ptg:s};if(n<268435455)o.Sheet=n;if(f)o.Comment=f;return o}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=[];mb[16]={n:"BrtFRTArchID$",f:sm};da(e,function f(e,o,c){switch(c){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=fd(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]=[c,e];else s.push([c,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(c);n=true;break;case 36:a.pop();n=false;break;case 37:a.push(c);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"+c.toString(16));}},r);$p(t);t.Names=i;t.supbooks=s;return t}function cm(e,r){pa(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]};pa(e,156,am(n))}pa(e,144)}function lm(r,t){if(!t)t=ha(127);for(var a=0;a!=4;++a)t._W(4,0);za("SheetJS",t);za(e.version,t);za(e.version,t);za("7262",t);return t.length>t.l?t.slice(0,t.l):t}function um(e,r){if(!r)r=ha(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 hm(e,r){if(!r.Workbook||!r.Workbook.Sheets)return;var t=r.Workbook.Sheets;var a=0,n=-1,i=-1;for(;an)return;pa(e,135);pa(e,158,um(n));pa(e,136)}function dm(e,r){var t=va();pa(t,131);pa(t,128,lm());pa(t,153,im(e.Workbook&&e.Workbook.WBProps||null));hm(t,e,r);cm(t,e,r);pa(t,132);return t.end()}function vm(e,r,t){if(r.slice(-4)===".bin")return om(e,t);return em(e,t)}function pm(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return Tp(e,a,t,n,i,s,f);return Yd(e,a,t,n,i,s,f)}function mm(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return Bp(e,a,t,n,i,s,f);return Lp(e,a,t,n,i,s,f)}function bm(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return Su(e,a,t,n,i,s,f);return _u(e,a,t,n,i,s,f)}function gm(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return Eu(e,a,t,n,i,s,f);return yu(e,a,t,n,i,s,f)}function wm(e,r,t,a){if(r.slice(-4)===".bin")return cl(e,t,a);return Xc(e,t,a)}function km(e,r,t){return Ol(e,t)}function Tm(e,r,t){if(r.slice(-4)===".bin")return Vo(e,t);return Bo(e,t)}function Em(e,r,t){if(r.slice(-4)===".bin")return mu(e,t);return su(e,t)}function ym(e,r,t){if(r.slice(-4)===".bin")return Ql(e,r,t);return ql(e,r,t)}function Sm(e,r,t,a){if(t.slice(-4)===".bin")return ru(e,r,t,a);return eu(e,r,t,a)}function _m(e,r,t){if(r.slice(-4)===".bin")return $l(e,r,t);return Kl(e,r,t)}function Am(e,r,t){return(r.slice(-4)===".bin"?dm:rm)(e,t)}function xm(e,r,t,a,n){return(r.slice(-4)===".bin"?Fp:pv)(e,t,a,n)}function Cm(e,r,t,a,n){return(r.slice(-4)===".bin"?Wp:Mp)(e,t,a,n)}function Rm(e,r,t){return(r.slice(-4)===".bin"?kl:$c)(e,t)}function Om(e,r,t){return(r.slice(-4)===".bin"?Xo:Ho)(e,t)}function Im(e,r,t){return(r.slice(-4)===".bin"?bu:fu)(e,t)}function Nm(e){return(e.slice(-4)===".bin"?Yl:Jl)()}var Fm=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var Dm=/([\w:]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;function Pm(e,r){var t=e.split(/\s+/);var a=[];if(!r)a[0]=t[0];if(t.length===1)return a;var n=e.match(Fm),i,s,f,o;if(n)for(o=0;o!=n.length;++o){i=n[o].match(Dm);if((s=i[1].indexOf(":"))===-1)a[i[1]]=i[2].slice(1,i[2].length-1);else{if(i[1].slice(0,6)==="xmlns:")f="xmlns"+i[1].slice(6);else f=i[1].slice(s+1);a[f]=i[2].slice(1,i[2].length-1)}}return a}function Lm(e){var r=e.split(/\s+/);var t={};if(r.length===1)return t;var a=e.match(Fm),n,i,s,f;if(a)for(f=0;f!=a.length;++f){n=a[f].match(Dm);if((i=n[1].indexOf(":"))===-1)t[n[1]]=n[2].slice(1,n[2].length-1);else{if(n[1].slice(0,6)==="xmlns:")s="xmlns"+n[1].slice(6);else s=n[1].slice(i+1);t[s]=n[2].slice(1,n[2].length-1)}}return t}var Mm;function Um(e,r){var t=Mm[e]||Yr(e);if(t==="General")return fe(r);return Be(t,r)}function Bm(e,r,t,a){var n=a;switch((t[0].match(/dt:dt="([\w.]+)"/)||["",""])[1]){case"boolean":n=nt(a);break;case"i2":;case"int":n=parseInt(a,10);break;case"r4":;case"float":n=parseFloat(a);break;case"date":;case"dateTime.tz":n=mr(a);break;case"i8":;case"string":;case"fixed":;case"uuid":;case"bin.base64":break;default:throw new Error("bad custprop:"+t[0]);}e[Yr(r)]=n}function Wm(e,r,t){if(e.t==="z")return;if(!t||t.cellText!==false)try{if(e.t==="e"){e.w=e.w||Gn[e.v]}else if(r==="General"){if(e.t==="n"){if((e.v|0)===e.v)e.w=e.v.toString(10);else e.w=se(e.v)}else e.w=fe(e.v)}else e.w=Um(r||"General",e.v)}catch(a){if(t.WTF)throw a}try{var n=Mm[r]||r||"General";if(t.cellNF)e.z=n;if(t.cellDates&&e.t=="n"&&De(n)){var i=q(e.v);if(i){e.t="d";e.v=new Date(i.y,i.m-1,i.d,i.H,i.M,i.S,i.u)}}}catch(a){if(t.WTF)throw a}}function Hm(e,r,t){if(t.cellStyles){if(r.Interior){var a=r.Interior;if(a.Pattern)a.patternType=Lc[a.Pattern]||a.Pattern}}e[r.ID]=r}function zm(e,r,t,a,n,i,s,f,o,c){var l="General",u=a.StyleID,h={};c=c||{};var d=[];var v=0;if(u===undefined&&f)u=f.StyleID;if(u===undefined&&s)u=s.StyleID;while(i[u]!==undefined){if(i[u].nf)l=i[u].nf;if(i[u].Interior)d.push(i[u].Interior);if(!i[u].Parent)break;u=i[u].Parent}switch(t.Type){case"Boolean":a.t="b";a.v=nt(e);break;case"String":a.t="s";a.r=tt(Yr(e));a.v=e.indexOf("<")>-1?Yr(r||e).replace(/<.*?>/g,""):a.r;break;case"DateTime":if(e.slice(-1)!="Z")e+="Z";a.v=(mr(e)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(a.v!==a.v)a.v=Yr(e);else if(a.v<60)a.v=a.v-1;if(!l||l=="General")l="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=jn[e];if(c.cellText!==false)a.w=e;break;default:if(e==""&&r==""){a.t="z"}else{a.t="s";a.v=tt(r||e)}break;}Wm(a,l,c);if(c.cellFormula!==false){if(a.Formula){var p=Yr(a.Formula);if(p.charCodeAt(0)==61)p=p.slice(1);a.f=Au(p,n);delete a.Formula;if(a.ArrayRange=="RC")a.F=Au("RC:RC",n);else if(a.ArrayRange){a.F=Au(a.ArrayRange,n);o.push([Fa(a.F),a.F])}}else{for(v=0;v=o[v][0].s.r&&n.r<=o[v][0].e.r)if(n.c>=o[v][0].s.c&&n.c<=o[v][0].e.c)a.F=o[v][1]}}if(c.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 Vm(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 Gm(e,r){var t=r||{};ze();var n=d(yt(e));if(t.type=="binary"||t.type=="array"||t.type=="base64"){if(typeof a!=="undefined")n=a.utils.decode(65001,l(n));else n=ct(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=gr(t);f.type="string";return Ao.to_workbook(n,f)}if(i.indexOf("=0)s=true});if(s)return Hb(n,t);Mm={"General Number":"General","General Date":X[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":X[15],"Short Date":X[14],"Long Time":X[19],"Medium Time":X[18],"Short Time":X[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:X[2],Standard:X[4],Percent:X[10],Scientific:X[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var o;var c=[],u;if(m!=null&&t.dense==null)t.dense=m;var h={},v=[],p=t.dense?[]:{},b="";var g={},w={};var k=Pm(''),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 R=[];var O={},I={},N=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}},j={};St.lastIndex=0;n=n.replace(//gm,"");var $="";while(o=St.exec(n))switch(o[3]=($=o[3]).toLowerCase()){case"data":if($=="data"){if(o[1]==="/"){if((u=c.pop())[0]!==o[3])throw new Error("Bad state: "+u.join("|"))}else if(o[0].charAt(o[0].length-2)!=="/")c.push([o[3],true]);break}if(c[c.length-1][1])break;if(o[1]==="/")zm(n.slice(T,o.index),x,k,c[c.length-1][0]=="comment"?P:g,{c:E,r:y},_,L[E],w,B,t);else{x="";k=Pm(o[0]);T=o.index+o[0].length}break;case"cell":if(o[1]==="/"){if(D.length>0)g.c=D;if((!t.sheetRows||t.sheetRows>y)&&g.v!==undefined){if(t.dense){if(!p[y])p[y]=[];p[y][E]=g}else p[_a(E)+Ta(y)]=g}if(g.HRef){g.l={Target:Yr(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);R.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 Y=E;Y<=z;++Y){for(var K=y;K<=V;++K){if(Y>E||K>y){if(t.dense){if(!p[K])p[K]=[];p[K][Y]={t:"z"}}else p[_a(Y)+Ta(K)]={t:"z"}}}}E=z+1}else++E}else{g=Lm(o[0]);if(g.Index)E=+g.Index-1;if(ES.e.c)S.e.c=E;if(o[0].slice(-2)==="/>")++E;D=[]}break;case"row":if(o[1]==="/"||o[0].slice(-2)==="/>"){if(yS.e.r)S.e.r=y;if(o[0].slice(-2)==="/>"){w=Pm(o[0]);if(w.Index)y=+w.Index-1}E=0;++y}else{w=Pm(o[0]);if(w.Index)y=+w.Index-1;H={};if(w.AutoFitHeight=="0"||w.Height){H.hpx=parseInt(w.Height,10);H.hpt=Dc(H.hpx);W[y]=H}if(w.Hidden=="1"){H.hidden=true;W[y]=H}}break;case"worksheet":if(o[1]==="/"){if((u=c.pop())[0]!==o[3])throw new Error("Bad state: "+u.join("|"));v.push(b);if(S.s.r<=S.e.r&&S.s.c<=S.e.c){p["!ref"]=Na(S);if(t.sheetRows&&t.sheetRows<=S.e.r){p["!fullref"]=p["!ref"];S.e.r=t.sheetRows-1;p["!ref"]=Na(S)}}if(R.length)p["!merges"]=R;if(L.length>0)p["!cols"]=L;if(W.length>0)p["!rows"]=W;h[b]=p}else{S={s:{r:2e6,c:2e6},e:{r:0,c:0}};y=E=0;c.push([o[3],false]);u=Pm(o[0]);b=Yr(u.Name);p=t.dense?[]:{};R=[];B=[];W=[];j={name:b,Hidden:0};G.Sheets.push(j)}break;case"table":if(o[1]==="/"){if((u=c.pop())[0]!==o[3])throw new Error("Bad state: "+u.join("|"))}else if(o[0].slice(-2)=="/>")break;else{c.push([o[3],false]);L=[];U=false}break;case"style":if(o[1]==="/")Hm(_,A,t);else A=Pm(o[0]);break;case"numberformat":A.nf=Yr(Pm(o[0]).Format||"General");if(Mm[A.nf])A.nf=Mm[A.nf];for(var J=0;J!=392;++J)if(X[J]==A.nf)break;if(J==392)for(J=57;J!=392;++J)if(X[J]==null){We(A.nf,J);break}break;case"column":if(c[c.length-1][0]!=="table")break;M=Pm(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;_c=Ec;for(var q=0;q0)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]==="/")x+=n.slice(C,o.index);else C=o.index+o[0].length;break;case"interior":if(!t.cellStyles)break;A.Interior=Pm(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]==="/")Si(O,$,n.slice(N,o.index));else N=o.index+o[0].length;break;case"paragraphs":break;case"styles":;case"workbook":if(o[1]==="/"){if((u=c.pop())[0]!==o[3])throw new Error("Bad state: "+u.join("|"))}else c.push([o[3],false]);break;case"comment":if(o[1]==="/"){if((u=c.pop())[0]!==o[3])throw new Error("Bad state: "+u.join("|"));Vm(P);D.push(P)}else{c.push([o[3],false]);u=Pm(o[0]);P={a:u.Author}}break;case"autofilter":if(o[1]==="/"){if((u=c.pop())[0]!==o[3])throw new Error("Bad state: "+u.join("|"))}else if(o[0].charAt(o[0].length-2)!=="/"){var re=Pm(o[0]);p["!autofilter"]={ref:Au(re.Range).replace(/\$/g,"")};c.push([o[3],true])}break;case"name":break;case"datavalidation":if(o[1]==="/"){if((u=c.pop())[0]!==o[3])throw new Error("Bad state: "+u.join("|"))}else{if(o[0].charAt(o[0].length-2)!=="/")c.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((u=c.pop())[0]!==o[3])throw new Error("Bad state: "+u.join("|"))}else if(o[0].charAt(o[0].length-2)!=="/")c.push([o[3],true]);break;case"null":break;default:if(c.length==0&&o[3]=="document")return Qb(n,t);if(c.length==0&&o[3]=="uof")return Qb(n,t);var te=true;switch(c[c.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":j.Hidden=1;break;case"SheetVeryHidden":j.Hidden=2;break;}else N=o.index+o[0].length;break;case"header":if(!p["!margins"])Fd(p["!margins"]={},"xlml");if(!isNaN(+Gr(o[0]).Margin))p["!margins"].header=+Gr(o[0]).Margin;break;case"footer":if(!p["!margins"])Fd(p["!margins"]={},"xlml");if(!isNaN(+Gr(o[0]).Margin))p["!margins"].footer=+Gr(o[0]).Margin;break;case"pagemargins":var ae=Gr(o[0]);if(!p["!margins"])Fd(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(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(!c[c.length-1][1])throw"Unrecognized tag: "+o[3]+"|"+c.join("|");if(c[c.length-1][0]==="customdocumentproperties"){if(o[0].slice(-2)==="/>")break;else if(o[1]==="/")Bm(I,$,F,n.slice(N,o.index));else{F=o;N=o.index+o[0].length}break}if(t.WTF)throw"Unrecognized tag: "+o[3]+"|"+c.join("|");}var ne={};if(!t.bookSheets&&!t.bookProps)ne.Sheets=h;ne.SheetNames=v;ne.Workbook=G;ne.SSF=gr(X);ne.Props=O;ne.Custprops=I;return ne}function jm(e,r){Wg(r=r||{});switch(r.type||"base64"){case"base64":return Gm(k(e),r);case"binary":;case"buffer":;case"file":return Gm(e,r);case"array":return Gm(x(e),r);}}function Xm(e,r){var t=[];if(e.Props)t.push(_i(e.Props,r));if(e.Custprops)t.push(Ai(e.Props,e.Custprops,r));return t.join("")}function $m(){return""}function Ym(e,r){var t=[''];r.cellXfs.forEach(function(e,r){var a=[];a.push(kt("NumberFormat",null,{"ss:Format":qr(X[e.numFmtId])}));var n={"ss:ID":"s"+(21+r)};t.push(kt("Style",a.join(""),n))});return kt("Styles",t.join(""))}function Km(e){return kt("NamedRange",null,{"ss:Name":e.Name,"ss:RefersTo":"="+Cu(e.Ref,{r:0,c:0})})}function Jm(e){if(!((e||{}).Workbook||{}).Names)return"";var r=e.Workbook.Names;var t=[];for(var a=0;a");if(e["!margins"].header)n.push(kt("Header",null,{"x:Margin":e["!margins"].header}));if(e["!margins"].footer)n.push(kt("Footer",null,{"x:Margin":e["!margins"].footer}));n.push(kt("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(kt("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(gt("ProtectContents","True"));if(e["!protect"].objects)n.push(gt("ProtectObjects","True"));if(e["!protect"].scenarios)n.push(gt("ProtectScenarios","True"));if(e["!protect"].selectLockedCells!=null&&!e["!protect"].selectLockedCells)n.push(gt("EnableSelection","NoSelection"));else if(e["!protect"].selectUnlockedCells!=null&&!e["!protect"].selectUnlockedCells)n.push(gt("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 kt("WorksheetOptions",n.join(""),{xmlns:xt.x})}function Qm(e){return e.map(function(e){var r=at(e.t||"");var t=kt("ss:Data",r,{xmlns:"http://www.w3.org/TR/REC-html40"});return kt("Comment",t,{"ss:Author":e.a})}).join("")}function eb(e,r,t,a,n,i,s){if(!e||e.v==undefined&&e.f==undefined)return"";var f={};if(e.f)f["ss:Formula"]="="+qr(Cu(e.f,s));if(e.F&&e.F.slice(0,r.length)==r){var o=Ra(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"]=qr(e.l.Target);if(e.l.Tooltip)f["x:HRefScreenTip"]=qr(e.l.Tooltip)}if(t["!merges"]){var c=t["!merges"];for(var l=0;l!=c.length;++l){if(c[l].s.c!=s.c||c[l].s.r!=s.r)continue;if(c[l].e.c>c[l].s.c)f["ss:MergeAcross"]=c[l].e.c-c[l].s.c;if(c[l].e.r>c[l].s.r)f["ss:MergeDown"]=c[l].e.r-c[l].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=Gn[e.v];break;case"d":u="DateTime";h=new Date(e.v).toISOString();if(e.z==null)e.z=e.z||X[14];break;case"s":u="String";h=rt(e.v||"");break;}var d=Dd(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+=Qm(e.c);return kt("Cell",p,f)}function rb(e,r){var t='"}function tb(e,r,t,a){if(!e["!ref"])return"";var n=Fa(e["!ref"]);var i=e["!merges"]||[],s=0;var f=[];if(e["!cols"])e["!cols"].forEach(function(e,r){Ic(e);var t=!!e.width;var a=Nd(r,e);var n={"ss:Index":r+1};if(t)n["ss:Width"]=Ac(a.width);if(e.hidden)n["ss:Hidden"]="1";f.push(kt("Column",null,n))});var o=Array.isArray(e);for(var c=n.s.r;c<=n.e.r;++c){var l=[rb(c,(e["!rows"]||[])[c])];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>c)continue;if(i[s].e.c");if(l.length>2)f.push(l.join(""))}return f.join("")}function ab(e,r,t){var a=[];var n=t.SheetNames[e];var i=t.Sheets[n];var s=i?qm(i,r,e,t):"";if(s.length>0)a.push(""+s+"");s=i?tb(i,r,e,t):"";if(s.length>0)a.push(""+s+"
");a.push(Zm(i,r,e,t));return a.join("")}function nb(e,r){if(!r)r={};if(!e.SSF)e.SSF=gr(X);if(e.SSF){ze();He(e.SSF);r.revssf=nr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF;r.cellXfs=[];Dd(r.cellXfs,{},{revssf:{General:0}})}var t=[];t.push(Xm(e,r));t.push($m(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=Tn(t);a=t._R(4);if(a==0||a>40)return r;t.l-=4;r.Reserved2=t._R(0,"lpwstr")}var sb=[60,1084,2066,2165,2175];function fb(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=Qt(t,t.l),c=bb[o];var l=0;while(c!=null&&sb.indexOf(o)>-1){i=Qt(t,t.l+2);l=t.l+4;if(o==2066)l+=4;else if(o==2165||o==2175){l+=12}f=t.slice(l,t.l+4+i);s.push(f);t.l+=4+i;c=bb[o=Qt(t,t.l)]}var u=O(s);la(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=Oa(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)!==$)throw new Error("rt mismatch: "+J+"!="+$);if(K.r==12){e.l+=10;Y-=10}}var q={};if($===10)q=K.f(e,Y,O);else q=fb($,K,e,Y,O);if(B==0&&[9,521,1033,2057].indexOf(U)===-1)continue;switch($){case 34:t.opts.Date1904=_.WBProps.date1904=q;break;case 134:t.opts.WriteProtect=true;break;case 47:if(!O.enc)e.l=0;O.enc=q;if(!r.password)throw new Error("File is password-protected");if(q.valid==null)throw new Error("Encryption scheme unsupported");if(!q.valid)throw new Error("Password is incorrect");break;case 92:O.lastuser=q;break;case 66:var Z=Number(q);switch(Z){case 21010:Z=1200;break;case 32768:Z=1e4;break;case 32769:Z=1252;break;}o(O.codepage=Z);G=true;break;case 317:O.rrtabid=q;break;case 25:O.winlocked=q;break;case 439:t.opts["RefreshAll"]=q;break;case 12:t.opts["CalcCount"]=q;break;case 16:t.opts["CalcDelta"]=q;break;case 17:t.opts["CalcIter"]=q;break;case 13:t.opts["CalcMode"]=q;break;case 14:t.opts["CalcPrecision"]=q;break;case 95:t.opts["CalcSaveRecalc"]=q;break;case 15:O.CalcRefMode=q;break;case 2211:t.opts.FullCalc=q;break;case 129:if(q.fDialog)n["!type"]="dialog";if(!q.fBelow)(n["!outline"]||(n["!outline"]={})).above=true;if(!q.fRight)(n["!outline"]||(n["!outline"]={})).left=true;break;case 224:y.push(q);break;case 430:M.push([q]);M[M.length-1].XTI=[];break;case 35:;case 547:M[M.length-1].push(q);break;case 24:;case 536:V={Name:q.Name,Ref:fd(q.rgce,s,null,M,O)};if(q.itab>0)V.Sheet=q.itab-1;M.names.push(V);if(!M[0]){M[0]=[];M[0].XTI=[]}M[M.length-1].push(q);if(q.Name=="_xlnm._FilterDatabase"&&q.itab>0)if(q.rgce&&q.rgce[0]&&q.rgce[0][0]&&q.rgce[0][0][0]=="PtgArea3d")z[q.itab-1]={ref:Na(q.rgce[0][0][1][2])};break;case 22:O.ExternCount=q;break;case 23:if(M.length==0){M[0]=[];M[0].XTI=[]}M[M.length-1].XTI=M[M.length-1].XTI.concat(q);M.XTI=M.XTI.concat(q);break;case 2196:if(O.biff<8)break;if(V!=null)V.Comment=q[1];break;case 18:n["!protect"]=q;break;case 19:if(q!==0&&O.WTF)console.error("Password verifier: "+q);break;case 133:{i[q.pos]=q;O.snames.push(q.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"]=Na(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"]=Na(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(A)}if(l==="")u=n;else a[l]=n;n=r.dense?[]:{}}break;case 9:;case 521:;case 1033:;case 2057:{if(O.biff===8)O.biff={9:2,521:3,1033:4}[$]||{512:2,768:3,1024:4,1280:5,1536:8,2:2,7:2}[q.BIFFVer]||8;O.biffguess=q.BIFFVer==0;if(q.BIFFVer==0&&q.dt==4096){O.biff=5;G=true;o(O.codepage=28591)}if(O.biff==8&&q.BIFFVer==0&&q.dt==16)O.biff=2;if(B++)break;n=r.dense?[]:{};if(O.biff<8&&!G){G=true;o(O.codepage=r.codepage||1252)}if(O.biff<5||q.BIFFVer==0&&q.dt==4096){if(l==="")l="Sheet1";s={s:{r:0,c:0},e:{r:0,c:0}};var ee={pos:e.l-Y,name:l};i[ee.pos]=ee;O.snames.push(l)}else l=(i[j]||{name:""}).name;if(q.dt==32)n["!type"]="chart";if(q.dt==64)n["!type"]="macro";N=[];F=[];O.arrayf=k=[];D=[];P=[];L=false;A={Hidden:(i[j]||{hs:0}).hs,name:l}}break;case 515:;case 3:;case 2:{if(n["!type"]=="chart")if(r.dense?(n[q.r]||[])[q.c]:n[Oa({c:q.c,r:q.r})])++q.c;T={ixfe:q.ixfe,XF:y[q.ixfe]||{},v:q.val,t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];ob(T,r,t.opts.Date1904);R({c:q.c,r:q.r},T,r)}break;case 5:;case 517:{T={ixfe:q.ixfe,XF:y[q.ixfe],v:q.val,t:q.t};if(W>0)T.z=H[T.ixfe>>8&63];ob(T,r,t.opts.Date1904);R({c:q.c,r:q.r},T,r)}break;case 638:{T={ixfe:q.ixfe,XF:y[q.ixfe],v:q.rknum,t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];ob(T,r,t.opts.Date1904);R({c:q.c,r:q.r},T,r)}break;case 189:{for(var re=q.c;re<=q.C;++re){var te=q.rkrec[re-q.c][0];T={ixfe:te,XF:y[te],v:q.rkrec[re-q.c][1],t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];ob(T,r,t.opts.Date1904);R({c:re,r:q.r},T,r)}}break;case 6:;case 518:;case 1030:{if(q.val=="String"){f=q;break}T=cb(q.val,q.cell.ixfe,q.tt);T.XF=y[T.ixfe];if(r.cellFormula){var ae=q.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=Oa({r:ne,c:ie});if(w[se])T.f=""+fd(q.formula,s,q.cell,M,O);else T.F=((r.dense?(n[ne]||[])[ie]:n[se])||{}).F}else T.f=""+fd(q.formula,s,q.cell,M,O)}if(W>0)T.z=H[T.ixfe>>8&63];ob(T,r,t.opts.Date1904);R(q.cell,T,r);f=q}break;case 7:;case 519:{if(f){f.val=q;T=cb(q,f.cell.ixfe,"s");T.XF=y[T.ixfe];if(r.cellFormula){T.f=""+fd(f.formula,s,f.cell,M,O)}if(W>0)T.z=H[T.ixfe>>8&63];ob(T,r,t.opts.Date1904);R(f.cell,T,r);f=null}else throw new Error("String record expects Formula")}break;case 33:;case 545:{k.push(q);var fe=Oa(q[0].s);v=r.dense?(n[q[0].s.r]||[])[q[0].s.c]:n[fe];if(r.cellFormula&&v){if(!f)break;if(!fe||!v)break;v.f=""+fd(q[1],s,q[0],M,O);v.F=Na(q[0])}}break;case 1212:{if(!r.cellFormula)break;if(d){if(!f)break;w[Oa(f.cell)]=q[0];v=r.dense?(n[f.cell.r]||[])[f.cell.c]:n[Oa(f.cell)];(v||{}).f=""+fd(q[0],s,h,M,O)}}break;case 253:T=cb(c[q.isst].t,q.ixfe,"s");if(c[q.isst].h)T.h=c[q.isst].h;T.XF=y[T.ixfe];if(W>0)T.z=H[T.ixfe>>8&63];ob(T,r,t.opts.Date1904);R({c:q.c,r:q.r},T,r);break;case 513:if(r.sheetStubs){T={ixfe:q.ixfe,XF:y[q.ixfe],t:"z"};if(W>0)T.z=H[T.ixfe>>8&63];ob(T,r,t.opts.Date1904);R({c:q.c,r:q.r},T,r)}break;case 190:if(r.sheetStubs){for(var oe=q.c;oe<=q.C;++oe){var ce=q.ixfe[oe-q.c];T={ixfe:ce,XF:y[ce],t:"z"};if(W>0)T.z=H[T.ixfe>>8&63];ob(T,r,t.opts.Date1904);R({c:oe,r:q.r},T,r)}}break;case 214:;case 516:;case 4:T=cb(q.val,q.ixfe,"s");T.XF=y[T.ixfe];if(W>0)T.z=H[T.ixfe>>8&63];ob(T,r,t.opts.Date1904);R({c:q.c,r:q.r},T,r);break;case 0:;case 512:{if(B===1)s=q}break;case 252:{c=q}break;case 1054:{if(O.biff==4){H[W++]=q[1];for(var le=0;le=163)We(q[1],W+163)}else We(q[1],q[0])}break;case 30:{H[W++]=q;for(var ue=0;ue=163)We(q,W+163)}break;case 229:N=N.concat(q);break;case 93:F[q.cmo[0]]=O.lastobj=q;break;case 438:O.lastobj.TxO=q;break;case 127:O.lastobj.ImData=q;break;case 440:{for(g=q[0].s.r;g<=q[0].e.r;++g)for(b=q[0].s.c;b<=q[0].e.c;++b){v=r.dense?(n[g]||[])[b]:n[Oa({c:b,r:g})];if(v)v.l=q[1]}}break;case 2048:{for(g=q[0].s.r;g<=q[0].e.r;++g)for(b=q[0].s.c;b<=q[0].e.c;++b){v=r.dense?(n[g]||[])[b]:n[Oa({c:b,r:g})];if(v&&v.l)v.l.Tooltip=q[1]}}break;case 28:{if(O.biff<=5&&O.biff>=2)break;v=r.dense?(n[q[0].r]||[])[q[0].c]:n[Oa(q[0])];var he=F[q[2]];if(!v){if(r.dense){if(!n[q[0].r])n[q[0].r]=[];v=n[q[0].r][q[0].c]={t:"z"}}else{v=n[Oa(q[0])]={t:"z"}}s.e.r=Math.max(s.e.r,q[0].r);s.s.r=Math.min(s.s.r,q[0].r);s.e.c=Math.max(s.e.c,q[0].c);s.s.c=Math.min(s.s.c,q[0].c)}if(!v.c)v.c=[];p={a:q[1],t:he.TxO.t};v.c.push(p)}break;case 2173:Bl(y[q.ixfe],q.ext);break;case 125:{if(!O.cellStyles)break;while(q.e>=q.s){D[q.e--]={width:q.w/256,level:q.level||0,hidden:!!(q.flags&1)};if(!L){L=true;Oc(q.w/256)}Ic(D[q.e+1])}}break;case 520:{var de={};if(q.level!=null){P[q.r]=de;de.level=q.level}if(q.hidden){P[q.r]=de;de.hidden=true}if(q.hpt){P[q.r]=de;de.hpt=q.hpt;de.hpx=Pc(q.hpt)}}break;case 38:;case 39:;case 40:;case 41:if(!n["!margins"])Fd(n["!margins"]={});n["!margins"][{38:"left",39:"right",40:"top",41:"bottom"}[$]]=q;break;case 161:if(!n["!margins"])Fd(n["!margins"]={});n["!margins"].header=q.header;n["!margins"].footer=q.footer;break;case 574:if(q.RTL)_.Views[0].RTL=true;break;case 146:S=q;break;case 2198:I=q;break;case 140:E=q;break;case 442:{if(!l)_.WBProps.CodeName=q||"ThisWorkbook";else A.CodeName=q||A.name}break;}}else{if(!K)console.error("Missing Info for XLS Record 0x"+$.toString(16));e.l+=Y}}t.SheetNames=rr(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=c;t.SSF=gr(X);if(O.enc)t.Encryption=O.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 ub={SI:"e0859ff2f94f6810ab9108002b27b3d9",DSI:"02d5cdd59c2e1b10939708002b2cf9ae",UDI:"05d5cdd59c2e1b10939708002b2cf9ae"};function hb(e,r,t){var a=Ke.find(e,"/!DocumentSummaryInformation");if(a&&a.size>0)try{var n=$i(a,Mn,ub.DSI);for(var i in n)r[i]=n[i]}catch(s){if(t.WTF)throw s}var f=Ke.find(e,"/!SummaryInformation");if(f&&f.size>0)try{var o=$i(f,Un,ub.SI);for(var c in o)if(r[c]==null)r[c]=o[c]}catch(s){if(t.WTF)throw s}if(r.HeadingPairs&&r.TitlesOfParts){mi(r.HeadingPairs,r.TitlesOfParts,r,t);delete r.HeadingPairs;delete r.TitlesOfParts}}function db(e,r){var t=[],a=[],n=[];var i=0,s;var f=tr(Mn,"n");var o=tr(Un,"n");if(e.Props){s=rr(e.Props);for(i=0;i-1||pi.indexOf(n[i][0])>-1)continue;if(n[i][1]==null)continue;c.push(n[i])}if(a.length)Ke.utils.cfb_add(r,"/SummaryInformation",Yi(a,ub.SI,o,Un));if(t.length||c.length)Ke.utils.cfb_add(r,"/DocumentSummaryInformation",Yi(t,ub.DSI,f,Mn,c.length?c:null,ub.UDI))}function vb(e,r){if(!r)r={};Wg(r);c();if(r.codepage)s(r.codepage);var t,a;if(e.FullPaths){if(Ke.find(e,"/encryption"))throw new Error("File is password-protected");t=Ke.find(e,"!CompObj");a=Ke.find(e,"/Workbook")||Ke.find(e,"/Book")}else{switch(r.type){case"base64":e=_(k(e));break;case"binary":e=_(e);break;case"buffer":break;case"array":if(!Array.isArray(e))e=Array.prototype.slice.call(e);break;}la(e,0);a={content:e}}var n;var i;if(t)ib(t);if(r.bookProps&&!r.bookSheets)n={};else{var f=T?"buffer":"array";if(a&&a.content)n=lb(a.content,r);else if((i=Ke.find(e,"PerfectOffice_MAIN"))&&i.content)n=Co.to_workbook(i.content,(r.type=f,r));else if((i=Ke.find(e,"NativeContent_MAIN"))&&i.content)n=Co.to_workbook(i.content,(r.type=f,r));else if((i=Ke.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&&Ke.find(e,"/_VBA_PROJECT_CUR/VBA/dir"))n.vbaraw=wu(e)}var o={};if(e.FullPaths)hb(e,o,r);n.Props=n.Custprops=o;if(r.bookFiles)n.cfb=e;return n}function pb(e,r){var t=r||{};var a=Ke.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");}Ke.utils.cfb_add(a,n,Lb(e,t));if(t.biff==8&&(e.Props||e.Custprops))db(e,a);if(t.biff==8&&e.vbaraw)ku(a,Ke.read(e.vbaraw,{type:typeof e.vbaraw=="string"?"binary":"buffer"}));return a}var mb={0:{f:mv},1:{f:Sv},2:{f:Gv},3:{f:Nv},4:{f:Cv},5:{f:Wv},6:{f:Kv},7:{f:Lv +},8:{f:tp},9:{f:rp},10:{f:Qv},11:{f:ep},12:{f:Av},13:{f:Xv},14:{f:Dv},15:{f:Ov},16:{f:zv},17:{f:qv},18:{f:Uv},19:{f:ja},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:fm},40:{},42:{},43:{f:Jc},44:{f:Yc},45:{f:el},46:{f:il},47:{f:tl},48:{},49:{f:Ba},50:{},51:{f:zl},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:ao},62:{f:Yv},63:{f:Zl},64:{f:wp},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:ua,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:pp},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:Ev},148:{f:wv,p:16},151:{f:op},152:{},153:{f:nm},154:{},155:{},156:{f:tm},157:{},158:{},159:{T:1,f:zo},160:{T:-1},161:{T:1,f:un},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:ap},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:Wl},336:{T:-1},337:{f:jl,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:nn},357:{},358:{},359:{},360:{T:1},361:{},362:{f:Df},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:cp},427:{f:lp},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:dp},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:Tv},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:sp},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:nn},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:vu},633:{T:1},634:{T:-1},635:{T:1,f:hu},636:{T:-1},637:{f:$a},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:Up},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:kp},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 bb={6:{f:vd},10:{f:Ki},12:{f:es},13:{f:es},14:{f:Zi},15:{f:Zi},16:{f:dn},17:{f:Zi},18:{f:Zi},19:{f:es},20:{f:Rf},21:{f:Rf},23:{f:Df},24:{f:Ff},25:{f:Zi},26:{},27:{},28:{f:Hf},29:{},34:{f:Zi},35:{f:If},38:{f:dn},39:{f:dn},40:{f:dn},41:{f:dn},42:{f:Zi},43:{f:Zi},47:{f:pc},49:{f:sf},51:{f:es},60:{},61:{f:ef},64:{f:Zi},65:{f:nf},66:{f:es},77:{},80:{},81:{},82:{},85:{f:es},89:{},90:{},91:{},92:{f:zs},93:{f:Gf},94:{},95:{f:Zi},96:{},97:{},99:{f:Zi},125:{f:ao},128:{f:yf},129:{f:Gs},130:{f:es},131:{f:Zi},132:{f:Zi},133:{f:js},134:{},140:{f:Zf},141:{f:es},144:{},146:{f:ro},151:{},152:{},153:{},154:{},155:{},156:{f:es},157:{},158:{},160:{f:co},161:{f:io},174:{},175:{},176:{},177:{},178:{},180:{},181:{},182:{},184:{},185:{},189:{f:gf},190:{f:wf},193:{f:Ki},197:{},198:{},199:{},200:{},201:{},202:{f:Zi},203:{},204:{},205:{},206:{},207:{},208:{},209:{},210:{},211:{},213:{},215:{},216:{},217:{},218:{f:es},220:{},221:{f:Zi},222:{},224:{f:Tf},225:{f:Hs},226:{f:Ki},227:{},229:{f:zf},233:{},235:{},236:{},237:{},239:{},240:{},241:{},242:{},244:{},245:{},246:{},247:{},248:{},249:{},251:{},252:{f:$s},253:{f:of},255:{f:Ks},256:{},259:{},290:{},311:{},312:{},315:{},317:{f:ts},318:{},319:{},320:{},330:{},331:{},333:{},334:{},335:{},336:{},337:{},338:{},339:{},340:{},351:{},352:{f:Zi},353:{f:Ki},401:{},402:{},403:{},404:{},405:{},406:{},407:{},408:{},425:{},426:{},427:{},428:{},429:{},430:{f:Of},431:{f:Zi},432:{},433:{},434:{},437:{},438:{f:$f},439:{f:Zi},440:{f:Yf},441:{},442:{f:cs},443:{},444:{f:es},445:{},446:{},448:{f:Ki},449:{f:Zs,r:2},450:{f:Ki},512:{f:pf},513:{f:oo},515:{f:xf},516:{f:lf},517:{f:_f},519:{f:lo},520:{f:Js},523:{},545:{f:Uf},549:{f:Qs},566:{},574:{f:tf},638:{f:bf},659:{},1048:{},1054:{f:hf},1084:{},1212:{f:Mf},2048:{f:Jf},2049:{},2050:{},2051:{},2052:{},2053:{},2054:{},2055:{},2056:{},2057:{f:Bs},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:Ki},2152:{},2154:{},2155:{},2156:{},2161:{},2162:{},2164:{},2165:{},2166:{},2167:{},2168:{},2169:{},2170:{},2171:{},2172:{f:to,r:12},2173:{f:Ul,r:12},2174:{},2175:{},2180:{},2181:{},2182:{},2183:{},2184:{},2185:{},2186:{},2187:{},2188:{f:Zi,r:12},2189:{},2190:{r:12},2191:{},2192:{},2194:{},2195:{},2196:{f:Lf,r:12},2197:{},2198:{f:Nl,r:12},2199:{},2200:{},2201:{},2202:{f:Bf,r:12},2203:{f:Ki},2204:{},2205:{},2206:{},2207:{},2211:{f:qs},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:es},4135:{},4146:{},4147:{},4148:{},4149:{},4154:{},4156:{},4157:{},4158:{},4159:{},4160:{},4161:{},4163:{},4164:{f:so},4165:{},4166:{},4168:{},4170:{},4171:{},4174:{},4175:{},4176:{},4177:{},4187:{},4188:{f:eo},4189:{},4191:{},4192:{},4193:{},4194:{},4195:{},4196:{},4197:{},4198:{},4199:{},4200:{},0:{f:pf},1:{},2:{f:mo},3:{f:vo},4:{f:ho},5:{f:_f},7:{f:go},8:{},9:{f:Bs},11:{},22:{f:es},30:{f:vf},31:{},32:{},33:{f:Uf},36:{},37:{f:Qs},50:{f:wo},62:{},52:{},67:{},68:{f:es},69:{},86:{},126:{},127:{f:uo},135:{},136:{},137:{},145:{},148:{},149:{},150:{},169:{},171:{},188:{},191:{},192:{},194:{},195:{},214:{f:ko},223:{},234:{},354:{},421:{},518:{f:vd},521:{f:Bs},536:{f:Ff},547:{f:If},561:{},579:{},1030:{f:vd},1033:{f:Bs},1091:{},2157:{},2163:{},2177:{},2240:{},2241:{},2242:{},2243:{},2244:{},2245:{},2246:{},2247:{},2248:{},2249:{},2250:{},2251:{},2262:{r:12},29282:{}};function gb(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&&Jt(t))e.push(t)}function wb(e,r,t,a){var n=a||(t||[]).length||0;if(n<=8224)return gb(e,r,t,n);var i=r;if(isNaN(i))return;var s=t.parts||[],f=0;var o=0,c=0;while(c+(s[f]||8224)<=8224){c+=s[f]||8224;f++}var l=e.next(4);l._W(2,i);l._W(2,c);e.push(t.slice(o,o+c));o+=c;while(o=0&&n<65536)gb(e,2,bo(t,a,n));else gb(e,3,po(t,a,n));return;case"b":;case"e":gb(e,5,Tb(t,a,r.v,r.t));return;case"s":;case"str":gb(e,4,Eb(t,a,(r.v||"").slice(0,255)));return;}gb(e,1,kb(null,t,a))}function Sb(e,r,t,a){var n=Array.isArray(r);var i=Fa(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=Na(i)}for(var c=i.s.r;c<=i.e.r;++c){f=Ta(c);for(var l=i.s.c;l<=i.e.c;++l){if(c===i.s.r)o[l]=_a(l);s=o[l]+f;var u=n?(r[c]||[])[l]:r[s];if(!u)continue;yb(e,u,c,l,a)}}}function _b(e,r){var t=r||{};if(m!=null&&t.dense==null)t.dense=m;var a=va();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)}gb(a,2057,Ws(t,16,r));gb(a,13,rs(1));gb(a,12,rs(100));gb(a,15,Qi(true));gb(a,17,Qi(false));gb(a,16,vn(.001));gb(a,95,Qi(true));gb(a,42,Qi(false));gb(a,43,Qi(false));gb(a,130,rs(1));gb(a,128,Sf([0,0]));gb(a,131,Qi(false));gb(a,132,Qi(false));if(c)Ib(a,i["!cols"]);gb(a,512,mf(d,r));if(c)i["!links"]=[];for(var p=d.s.r;p<=d.e.r;++p){u=Ta(p);for(var m=d.s.c;m<=d.e.c;++m){if(p===d.s.r)h[m]=_a(m);l=h[m]+u;var b=o?(i[p]||[])[m]:i[l];if(!b)continue;Nb(a,b,p,m,r);if(c&&b.l)i["!links"].push([l,b.l])}}var g=f.CodeName||f.name||n;if(c)gb(a,574,af((s.Views||[])[0]));if(c&&(i["!merges"]||[]).length)gb(a,229,Vf(i["!merges"]));if(c)Ob(a,i);gb(a,442,us(g,r));if(c)Cb(a,i);gb(a,10);return a.end()}function Db(e,r,t){var a=va();var n=(e||{}).Workbook||{};var i=n.Sheets||[];var s=n.WBProps||{};var f=t.biff==8,o=t.biff==5;gb(a,2057,Ws(e,5,t));if(t.bookType=="xla")gb(a,135);gb(a,225,f?rs(1200):null);gb(a,193,Ji(2));if(o)gb(a,191);if(o)gb(a,192);gb(a,226);gb(a,92,Vs("SheetJS",t));gb(a,66,rs(f?1200:1252));if(f)gb(a,353,rs(0));if(f)gb(a,448);gb(a,317,fo(e.SheetNames.length));if(f&&e.vbaraw)gb(a,211);if(f&&e.vbaraw){var c=s.CodeName||"ThisWorkbook";gb(a,442,us(c,t))}gb(a,156,rs(17));gb(a,25,Qi(false));gb(a,18,Qi(false));gb(a,19,rs(0));if(f)gb(a,431,Qi(false));if(f)gb(a,444,rs(0));gb(a,61,rf(t));gb(a,64,Qi(false));gb(a,141,rs(0));gb(a,34,Qi(Yp(e)=="true"));gb(a,14,Qi(true));if(f)gb(a,439,Qi(false));gb(a,218,rs(0));Ab(a,e,t);xb(a,e.SSF,t);Rb(a,t);if(f)gb(a,352,Qi(false));var l=a.end();var u=va();if(f)gb(u,140,Qf());if(f&&t.Strings)wb(u,252,Ys(t.Strings,t));gb(u,10);var h=u.end();var d=va();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 Pb(e,r);case 4:;case 3:;case 2:return _b(e,r);}throw new Error("invalid type "+i.bookType+" for BIFF")}function Mb(e,r){var t=r||{};if(m!=null&&t.dense==null)t.dense=m;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=yr(e.slice(s,f),/(:?]*>)/i,"");var c=-1,l=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:c,c:l},e:{r:c+(u||1)-1,c:l+h-1}});var _=S.t||S["data-t"]||"";if(!k.length){l+=h;continue}k=ht(k);if(d.s.r>c)d.s.r=c;if(d.e.rl)d.s.c=l;if(d.e.ct||n[c].s.c>s)continue;if(n[c].e.r1)d.rowspan=f;if(o>1)d.colspan=o;if(a.editable)h=''+h+"";else if(u){d["data-t"]=u&&u.t||"z";if(u.v!=null)d["data-v"]=u.v;if(u.z!=null)d["data-z"]=u.z;if(u.l&&(u.l.Target||"#").charAt(0)!="#")h=''+h+""}d.id=(a.id||"sjs")+"-"+l;i.push(kt("td",h,d))}var v="";return v+i.join("")+""}var Bb='SheetJS Table Export';var Wb="";function Hb(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)return La(Mb(t[0],r),r);var a=Nw();t.forEach(function(e,t){Fw(a,Mb(e,r),"Sheet"+(t+1))});return a}function zb(e,r,t){var a=[];return a.join("")+""}function Vb(e,r){var t=r||{};var a=t.header!=null?t.header:Bb;var n=t.footer!=null?t.footer:Wb;var i=[a];var s=Ia(e["!ref"]);t.dense=Array.isArray(e);i.push(zb(e,s,t));for(var f=s.s.r;f<=s.e.r;++f)i.push(Ub(e,s,f,t));i.push("
"+n);return i.join("")}function Gb(e,r,t){var a=t||{};if(m!=null)a.dense=m;var n=0,i=0;if(a.origin!=null){if(typeof a.origin=="number")n=a.origin;else{var s=typeof a.origin=="string"?Ra(a.origin):a.origin;n=s.r;i=s.c}}var f=r.getElementsByTagName("tr");var o=Math.min(a.sheetRows||1e7,f.length);var c={s:{r:0,c:0},e:{r:n,c:i}};if(e["!ref"]){var l=Ia(e["!ref"]);c.s.r=Math.min(c.s.r,l.s.r);c.s.c=Math.min(c.s.c,l.s.c);c.e.r=Math.max(c.e.r,l.e.r);c.e.c=Math.max(c.e.c,l.e.c);if(n==-1)c.e.r=n=l.e.r+1}var u=[],h=0;var d=e["!rows"]||(e["!rows"]=[]);var v=0,p=0,b=0,g=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;v1||k>1)u.push({s:{r:p+n,c:g+i},e:{r:p+n+(w||1)-1,c:g+i+(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(a.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(kr(S)))x={t:"n",v:kr(S)};else if(!isNaN(Er(S).getDate())){x={t:"d",v:mr(S)};if(!a.cellDates)x={t:"n",v:fr(x.v)};x.z=a.dateNF||X[14]}}if(x.z===undefined&&_!=null)x.z=_;var R="",O=y.getElementsByTagName("A");if(O&&O.length)for(var I=0;I=o)e["!fullref"]=Na((c.e.r=f.length-v+p-1+n,c));return e}function jb(e,r){var t=r||{};var a=t.dense?[]:{};return Gb(a,e,r)}function Xb(e,r){return La(jb(e,r),r)}function $b(e){var r="";var t=Yb(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function Yb(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 Kb(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=Yr(r.replace(/<[^>]*>/g,""));return[t]}var Jb={day:["d","dd"],month:["m","mm"],year:["y","yy"],hours:["h","hh"],minutes:["m","mm"],seconds:["s","ss"],"am-pm":["A/P","AM/PM"],"day-of-week":["ddd","dddd"],era:["e","ee"],quarter:["\\Qm",'m\\"th quarter"']};function qb(e,r){var t=r||{};if(m!=null&&t.dense==null)t.dense=m;var a=yt(e);var n=[],i;var s;var f={name:""},o="",c=0;var l;var u;var h={},d=[];var v=t.dense?[]:{};var p,b;var g={value:""};var w="",k=0,T;var E=[];var y=-1,S=-1,_={s:{r:1e6,c:1e7},e:{r:0,c:0}};var A=0;var x={};var C=[],R={},O=0,I=0;var N=[],F=1,D=1;var P=[];var L={Names:[]};var M={};var U=["",""];var B=[],W={};var H="",z=0;var V=false,G=false;var j=0;St.lastIndex=0;a=a.replace(//gm,"").replace(//gm,"");while(p=St.exec(a))switch(p[3]=p[3].replace(/_.*$/,"")){case"table":;case"工作表":if(p[1]==="/"){if(_.e.c>=_.s.c&&_.e.r>=_.s.r)v["!ref"]=Na(_);else v["!ref"]="A1:A1";if(t.sheetRows>0&&t.sheetRows<=_.e.r){v["!fullref"]=v["!ref"];_.e.r=t.sheetRows-1;v["!ref"]=Na(_)}if(C.length)v["!merges"]=C;if(N.length)v["!rows"]=N;l.name=l["名称"]||l.name;if(typeof JSON!=="undefined")JSON.stringify(l);d.push(l.name);h[l.name]=v;G=false}else if(p[0].charAt(p[0].length-2)!=="/"){l=Gr(p[0],false);y=S=-1;_.s.r=_.s.c=1e7;_.e.r=_.e.c=0;v=t.dense?[]:{};C=[];N=[];G=true}break;case"table-row-group":if(p[1]==="/")--A;else++A;break;case"table-row":;case"行":if(p[1]==="/"){y+=F;F=1;break}u=Gr(p[0],false);if(u["行号"])y=u["行号"]-1;else if(y==-1)y=0;F=+u["number-rows-repeated"]||1;if(F<10)for(j=0;j0)N[y+j]={level:A};S=-1;break;case"covered-table-cell":if(p[1]!=="/")++S;if(t.sheetStubs){if(t.dense){if(!v[y])v[y]=[];v[y][S]={t:"z"}}else v[Oa({r:y,c:S})]={t:"z"}}w="";E=[];break;case"table-cell":;case"数据":if(p[0].charAt(p[0].length-2)==="/"){++S;g=Gr(p[0],false);D=parseInt(g["number-columns-repeated"]||"1",10);b={t:"z",v:null};if(g.formula&&t.cellFormula!=false)b.f=Sd(Yr(g.formula));if((g["数据类型"]||g["value-type"])=="string"){b.t="s";b.v=Yr(g["string-value"]||"");if(t.dense){if(!v[y])v[y]=[];v[y][S]=b}else{v[Oa({r:y,c:S})]=b}}S+=D-1}else if(p[1]!=="/"){++S;w="";k=0;E=[];D=1;var X=F?y+F-1:y;if(S>_.e.c)_.e.c=S;if(S<_.s.c)_.s.c=S;if(y<_.s.r)_.s.r=y;if(X>_.e.r)_.e.r=X;g=Gr(p[0],false);B=[];W={};b={t:g["数据类型"]||g["value-type"],v:null};if(t.cellFormula){if(g.formula)g.formula=Yr(g.formula);if(g["number-matrix-columns-spanned"]&&g["number-matrix-rows-spanned"]){O=parseInt(g["number-matrix-rows-spanned"],10)||0;I=parseInt(g["number-matrix-columns-spanned"],10)||0;R={s:{r:y,c:S},e:{r:y+O-1,c:S+I-1}};b.F=Na(R);P.push([R,b.F])}if(g.formula)b.f=Sd(g.formula);else for(j=0;j=P[j][0].s.r&&y<=P[j][0].e.r)if(S>=P[j][0].s.c&&S<=P[j][0].e.c)b.F=P[j][1]}if(g["number-columns-spanned"]||g["number-rows-spanned"]){O=parseInt(g["number-rows-spanned"],10)||0;I=parseInt(g["number-columns-spanned"],10)||0;R={s:{r:y,c:S},e:{r:y+O-1,c:S+I-1}};C.push(R)}if(g["number-columns-repeated"])D=parseInt(g["number-columns-repeated"],10);switch(b.t){case"boolean":b.t="b";b.v=nt(g["boolean-value"]);break;case"float":b.t="n";b.v=parseFloat(g.value);break;case"percentage":b.t="n";b.v=parseFloat(g.value);break;case"currency":b.t="n";b.v=parseFloat(g.value);break;case"date":b.t="d";b.v=mr(g["date-value"]);if(!t.cellDates){b.t="n";b.v=fr(b.v)}b.z="m/d/yy";break;case"time":b.t="n";b.v=hr(g["time-value"])/86400;if(t.cellDates){b.t="d";b.v=ur(b.v)}b.z="HH:MM:SS";break;case"number":b.t="n";b.v=parseFloat(g["数据数值"]);break;default:if(b.t==="string"||b.t==="text"||!b.t){b.t="s";if(g["string-value"]!=null){w=Yr(g["string-value"]);E=[]}}else throw new Error("Unsupported value type "+b.t);}}else{V=false;if(b.t==="s"){b.v=w||"";if(E.length)b.R=E;V=k==0}if(M.Target)b.l=M;if(B.length>0){b.c=B;B=[]}if(w&&t.cellText!==false)b.w=w;if(V){b.t="z";delete b.v}if(!V||t.sheetStubs){if(!(t.sheetRows&&t.sheetRows<=y)){for(var $=0;$0)v[y+$][S+D]=gr(b)}else{v[Oa({r:y+$,c:S})]=b;while(--D>0)v[Oa({r:y+$,c:S+D})]=gr(b)}if(_.e.c<=S)_.e.c=S}}}D=parseInt(g["number-columns-repeated"]||"1",10);S+=D-1;D=0;b={};w="";E=[]}M={};break;case"document":;case"document-content":;case"电子表格文档":;case"spreadsheet":;case"主体":;case"scripts":;case"styles":;case"font-face-decls":;case"master-styles":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/")n.push([p[3],true]);break;case"annotation":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i;W.t=w;if(E.length)W.R=E;W.a=H;B.push(W)}else if(p[0].charAt(p[0].length-2)!=="/"){n.push([p[3],false])}H="";z=0;w="";k=0;E=[];break;case"creator":if(p[1]==="/"){H=a.slice(z,p.index)}else z=p.index+p[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(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/")n.push([p[3],false]);w="";k=0;E=[];break;case"scientific-number":break;case"currency-symbol":break;case"currency-style":break;case"number-style":;case"percentage-style":;case"date-style":;case"time-style":if(p[1]==="/"){x[f.name]=o;if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/"){o="";f=Gr(p[0],false);n.push([p[3],true])}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=Gr(p[0],false);o+=Jb[p[3]][s.style==="long"?1:0];break;}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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=Gr(p[0],false);o+=Jb[p[3]][s.style==="long"?1:0];break;}break;case"boolean-style":break;case"boolean":break;case"text-style":break;case"text":if(p[0].slice(-2)==="/>")break;else if(p[1]==="/")switch(n[n.length-1][0]){case"number-style":;case"date-style":;case"time-style":o+=a.slice(c,p.index);break;}else c=p.index+p[0].length;break;case"named-range":s=Gr(p[0],false);U=Ad(s["cell-range-address"]);var Y={Name:s.name,Ref:U[0]+"!"+U[1]};if(G)Y.Sheet=d.length;L.Names.push(Y);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":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(n[n.length-1][0])>-1)break;if(p[1]==="/"&&(!g||!g["string-value"])){var K=Kb(a.slice(k,p.index),T);w=(w.length>0?w+"\n":"")+K[0]}else{ +T=Gr(p[0],false);k=p.index+p[0].length}break;case"s":break;case"database-range":if(p[1]==="/")break;try{U=Ad(Gr(p[0])["target-range-address"]);h[U[0]]["!autofilter"]={ref:U[1]}}catch(J){}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(p[1]!=="/"){M=Gr(p[0],false);if(!M.href)break;M.Target=Yr(M.href);delete M.href;if(M.Target.charAt(0)=="#"&&M.Target.indexOf(".")>-1){U=Ad(M.Target.slice(1));M.Target="#"+U[0]+"!"+U[1]}else if(M.Target.match(/^\.\.[\\\/]/))M.Target=M.Target.slice(3)}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(p[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(t.WTF)throw new Error(p);};}var q={Sheets:h,SheetNames:d,Workbook:L};if(t.bookSheets)delete q.Sheets;return q}function Zb(e,r){r=r||{};if(xr(e,"META-INF/manifest.xml"))ai(Rr(e,"META-INF/manifest.xml"),r);var t=Or(e,"content.xml");if(!t)throw new Error("Missing content.xml in ODS / UOF file");var a=qb(ct(t),r);if(xr(e,"meta.xml"))a.Props=ui(Rr(e,"meta.xml"));return a}function Qb(e,r){return qb(e,r)}var eg=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return Mr+r}}();var rg=function(){var e=function(e){return qr(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){var s=[];s.push(' \n');var f=0,o=0,c=Ia(a["!ref"]||"A1");var l=a["!merges"]||[],u=0;var h=Array.isArray(a);if(a["!cols"]){for(o=0;o<=c.e.c;++o)s.push(" \n")}var d="",v=a["!rows"]||[];for(f=0;f\n")}for(;f<=c.e.r;++f){d=v[f]?' table:style-name="ro'+v[f].ods+'"':"";s.push(" \n");for(o=0;oo)continue;if(l[u].s.r>f)continue;if(l[u].e.c\n")}s.push(" \n");return s.join("")};var n=function(e,r){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 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")};return function i(e,r){var t=[Mr];var i=wt({"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=wt({"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(oi().replace(/office:document-meta/g,"office:meta"))}else t.push("\n");n(t,e);t.push(" \n");t.push(" \n");for(var f=0;f!=e.SheetNames.length;++f)t.push(a(e.Sheets[e.SheetNames[f]],e,f,r));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 rg(e,r);var t=Dr();var a="";var n=[];var i=[];a="mimetype";Fr(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";Fr(t,a,rg(e,r));n.push([a,"text/xml"]);i.push([a,"ContentFile"]);a="styles.xml";Fr(t,a,eg(e,r));n.push([a,"text/xml"]);i.push([a,"StylesFile"]);a="meta.xml";Fr(t,a,Mr+oi());n.push([a,"text/xml"]);i.push([a,"MetadataFile"]);a="manifest.rdf";Fr(t,a,fi(i));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";Fr(t,a,ni(n));return t}function ag(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function ng(e){return typeof TextDecoder!="undefined"?(new TextDecoder).decode(e):ct(x(e))}function ig(e){return typeof TextEncoder!="undefined"?(new TextEncoder).encode(e):_(lt(e))}function sg(e,r){e:for(var t=0;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 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 lg(e,r,t){var a=Math.floor(t==0?0:Math.LOG10E*Math.log(Math.abs(t)))+6176-20;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 ug(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 hg(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.slice(0,t)}function dg(e){var r=0,t=e[r]&127;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}return t}function vg(e){var r=[],t=[0];while(t[0]=128);f=e.slice(o,t[0])}break;case 5:s=4;f=e.slice(t[0],t[0]+s);t[0]+=s;break;case 1:s=8;f=e.slice(t[0],t[0]+s);t[0]+=s;break;case 2:s=ug(e,t);f=e.slice(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 c={data:f,type:i};if(r[n]==null)r[n]=[c];else r[n].push(c)}return r}function pg(e){var r=[];e.forEach(function(e,t){e.forEach(function(e){if(!e.data)return;r.push(hg(t*8+e.type));if(e.type==2)r.push(hg(e.data.length));r.push(e.data)})});return fg(r)}function mg(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 gg(e){var r=[];e.forEach(function(e){var t=[];t[1]=[{data:hg(e.id),type:0}];t[2]=[];if(e.merge!=null)t[3]=[{data:hg(+!!e.merge),type:0}];var a=[];e.messages.forEach(function(e){a.push(e.data);e.meta[3]=[{type:0,data:hg(e.data.length)}];t[2].push({data:pg(e.meta),type:2})});var n=pg(t);r.push(hg(n.length));r.push(n);a.forEach(function(e){return r.push(e)})});return fg(r)}function wg(e,r){if(e!=0)throw new Error("Unexpected Snappy chunk type ".concat(e));var t=[0];var a=ug(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.slice(t[0],t[0]+s));t[0]+=s;continue}else{var o=0,c=0;if(i==1){c=(r[t[0]]>>2&7)+4;o=(r[t[0]++]&224)<<3;o|=r[t[0]++]}else{c=(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}}n=[fg(n)];if(o==0)throw new Error("Invalid offset 0");if(o>n[0].length)throw new Error("Invalid offset beyond length");if(c>=o){n.push(n[0].slice(-o));c-=o;while(c>=n[n.length-1].length){n.push(n[n.length-1]);c-=n[n.length-1].length}}n.push(n[0].slice(-o,-o+c))}}var l=fg(n);if(l.length!=a)throw new Error("Unexpected length: ".concat(l.length," != ").concat(a));return l}function kg(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.slice(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 fg(r)}function Eg(e,r,t,a){var n=ag(e);var i=n.getUint32(4,true);var s=(a>1?12:8)+og(i&(a>1?3470:398))*4;var f=-1,o=-1,c=NaN,l=new Date(2001,0,1);if(i&512){f=n.getUint32(s,true);s+=4}s+=og(i&(a>1?12288:4096))*4;if(i&16){o=n.getUint32(s,true);s+=4}if(i&32){c=n.getFloat64(s,true);s+=8}if(i&64){l.setTime(l.getTime()+n.getFloat64(s,true)*1e3);s+=8}var u;switch(e[2]){case 0:break;case 2:u={t:"n",v:c};break;case 3:u={t:"s",v:r[o]};break;case 5:u={t:"d",v:l};break;case 6:u={t:"b",v:c>0};break;case 7:u={t:"n",v:c/86400};break;case 8:u={t:"e",v:0};break;case 9:{if(f>-1)u={t:"s",v:t[f]};else if(o>-1)u={t:"s",v:r[o]};else if(!isNaN(c))u={t:"n",v:c};else throw new Error("Unsupported cell type ".concat(e.slice(0,4)))}break;default:throw new Error("Unsupported cell type ".concat(e.slice(0,4)));}return u}function yg(e,r,t){var a=ag(e);var n=a.getUint32(8,true);var i=12;var s=-1,f=-1,o=NaN,c=NaN,l=new Date(2001,0,1);if(n&1){o=cg(e,i);i+=16}if(n&2){c=a.getFloat64(i,true);i+=8}if(n&4){l.setTime(l.getTime()+a.getFloat64(i,true)*1e3);i+=8}if(n&8){f=a.getUint32(i,true);i+=4}if(n&16){s=a.getUint32(i,true);i+=4}var u;switch(e[1]){case 0:break;case 2:u={t:"n",v:o};break;case 3:u={t:"s",v:r[f]};break;case 5:u={t:"d",v:l};break;case 6:u={t:"b",v:c>0};break;case 7:u={t:"n",v:c/86400};break;case 8:u={t:"e",v:0};break;case 9:{if(s>-1)u={t:"s",v:t[s]};else throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(n&31," : ").concat(e.slice(0,4)))}break;case 10:u={t:"n",v:o};break;default:throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(n&31," : ").concat(e.slice(0,4)));}return u}function Sg(e,r){var t=new Uint8Array(32),a=ag(t),n=12,i=0;t[0]=5;switch(e.t){case"n":t[1]=2;lg(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.slice(0,n)}function _g(e,r){var t=new Uint8Array(32),a=ag(t),n=12,i=0;t[0]=3;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(4,i,true);return t.slice(0,n)}function Ag(e,r,t){switch(e[0]){case 0:;case 1:;case 2:;case 3:return Eg(e,r,t,e[0]);case 5:return yg(e,r,t);default:throw new Error("Unsupported payload version ".concat(e[0]));}}function xg(e){var r=vg(e);return ug(r[1][0].data)}function Cg(e){var r=[];r[1]=[{type:0,data:hg(e)}];return pg(r)}function Rg(e,r){var t=vg(r.data);var a=dg(t[1][0].data);var n=t[3];var i=[];(n||[]).forEach(function(r){var t=vg(r.data);var n=dg(t[1][0].data)>>>0;switch(a){case 1:i[n]=ng(t[3][0].data);break;case 8:{var s=e[xg(t[9][0].data)][0];var f=vg(s.data);var o=e[xg(f[1][0].data)][0];var c=dg(o.meta[1][0].data);if(c!=2001)throw new Error("2000 unexpected reference to ".concat(c));var l=vg(o.data);i[n]=l[3].map(function(e){return ng(e.data)}).join("")}break;}});return i}function Og(e,r){var t,a,n,i,s,f,o,c,l,u,h,d,v,p;var m=vg(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=(c=(o=m[6])==null?void 0:o[0])==null?void 0:c.data}else if(((u=(l=m[4])==null?void 0:l[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=ag(k);var S=[];for(var _=0;_=1)x[S[S.length-1][0]]=T.subarray(S[S.length-1][1]*E);return{R:b,cells:x}}function Ig(e,r){var t;var a=vg(r.data);var n=((t=a==null?void 0:a[7])==null?void 0:t[0])?dg(a[7][0].data)>>>0>0?1:0:-1;var i=mg(a[5],function(e){return Og(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 Ng(e,r,t){var a;var n=vg(r.data);var i={s:{r:0,c:0},e:{r:0,c:0}};i.e.r=(dg(n[6][0].data)>>>0)-1;if(i.e.r<0)throw new Error("Invalid row varint ".concat(n[6][0].data));i.e.c=(dg(n[7][0].data)>>>0)-1;if(i.e.c<0)throw new Error("Invalid col varint ".concat(n[7][0].data));t["!ref"]=Na(i);var s=vg(n[4][0].data);var f=Rg(e,e[xg(s[4][0].data)][0]);var o=((a=s[17])==null?void 0:a[0])?Rg(e,e[xg(s[17][0].data)][0]):[];var c=vg(s[3][0].data);var l=0;c[1].forEach(function(r){var a=vg(r.data);var n=e[xg(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=Ig(e,n);s.data.forEach(function(e,r){e.forEach(function(e,a){var n=Oa({r:l+r,c:a});var i=Ag(e,f,o);if(i)t[n]=i})});l+=s.nrows})}function Fg(e,r){var t=vg(r.data);var a={"!ref":"A1"};var n=e[xg(t[2][0].data)];var i=dg(n[0].meta[1][0].data);if(i!=6001)throw new Error("6000 unexpected reference to ".concat(i));Ng(e,n[0],a);return a}function Dg(e,r){var t;var a=vg(r.data);var n={name:((t=a[1])==null?void 0:t[0])?ng(a[1][0].data):"",sheets:[]};var i=mg(a[2],xg);i.forEach(function(r){e[r].forEach(function(r){var t=dg(r.meta[1][0].data);if(t==6e3)n.sheets.push(Fg(e,r))})});return n}function Pg(e,r){var t=Nw();var a=vg(r.data);var n=mg(a[1],xg);n.forEach(function(r){e[r].forEach(function(r){var a=dg(r.meta[1][0].data);if(a==2){var n=Dg(e,r);n.sheets.forEach(function(e,r){Fw(t,e,r==0?n.name:n.name+"_"+r,true)})}})});if(t.SheetNames.length==0)throw new Error("Empty NUMBERS file");return t}function Lg(e){var r,t,a,n;var i={},s=[];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;var r;try{r=kg(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){i[e.id]=e.messages;s.push(e.id)})});if(!s.length)throw new Error("File has no messages");var f=((n=(a=(t=(r=i==null?void 0:i[1])==null?void 0:r[0])==null?void 0:t.meta)==null?void 0:a[1])==null?void 0:n[0].data)&&dg(i[1][0].meta[1][0].data)==1&&i[1][0];if(!f)s.forEach(function(e){i[e].forEach(function(e){var r=dg(e.meta[1][0].data)>>>0;if(r==1){if(!f)f=e;else throw new Error("Document has multiple roots")}})});if(!f)throw new Error("Cannot find Document root");return Pg(i,f)}function Mg(e,r,t){var a,n,i,s;if(!((a=e[6])==null?void 0:a[0])||!((n=e[7])==null?void 0:n[0]))throw"Mutation only works on post-BNC storages!";var f=((s=(i=e[8])==null?void 0:i[0])==null?void 0:s.data)&&dg(e[8][0].data)>0||false;if(f)throw"Math only works with normal offsets";var o=0;var c=ag(e[7][0].data),l=0,u=[];var h=ag(e[4][0].data),d=0,v=[];for(var p=0;p1)console.error("The Numbers writer currently writes only the first table");var a=Ia(t["!ref"]);a.s.r=a.s.c=0;var n=false;if(a.e.c>9){n=true;a.e.c=9}if(a.e.r>49){n=true;a.e.r=49}if(n)console.error("The Numbers writer is currently limited to ".concat(Na(a)));var i=Ew(t,{range:a,header:1});var s=["~Sh33tJ5~"];i.forEach(function(e){return e.forEach(function(e){if(typeof e=="string")s.push(e)})});var f={};var o=[];var c=Ke.read(r.numbers,{type:"base64"});c.FileIndex.map(function(e,r){return[e,c.FullPaths[r]]}).forEach(function(e){var r=e[0],t=e[1];if(r.type!=2)return;if(!r.name.match(/\.iwa/))return;var a=r.content;var n=kg(a);var i=bg(n);i.forEach(function(e){o.push(e.id);f[e.id]={deps:[],location:t,type:dg(e.messages[0].meta[1][0].data)}})});o.sort(function(e,r){return e-r});var l=o.filter(function(e){return e>1}).map(function(e){return[e,hg(e)]});c.FileIndex.map(function(e,r){return[e,c.FullPaths[r]]}).forEach(function(e){var r=e[0],t=e[1];if(!r.name.match(/\.iwa/))return;var a=bg(kg(r.content));a.forEach(function(e){e.messages.forEach(function(r){l.forEach(function(r){if(e.messages.some(function(e){return dg(e.meta[1][0].data)!=11006&&sg(e.data,r[1])})){f[r[0]].deps.push(e.id)}})})})});function u(){for(var e=927262;e<2e6;++e)if(!f[e])return e;throw new Error("Too many messages")}var h=Ke.find(c,f[1].location);var d=bg(kg(h.content));var v;for(var p=0;p-1)return"sheet";if(qn.CS&&e==qn.CS)return"chart";if(qn.DS&&e==qn.DS)return"dialog";if(qn.MS&&e==qn.MS)return"macro";return e&&e.length?e:"sheet"}function Vg(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,zg(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function Gg(e,r,t,a,n,i,s,f,o,c,l,u){try{i[a]=Qn(Or(e,t,true),r);var h=Rr(e,r);var d;switch(f){case"sheet":d=pm(h,r,n,o,i[a],c,l,u);break;case"chart":d=mm(h,r,n,o,i[a],c,l,u);if(!d||!d["!drawel"])break;var v=Lr(d["!drawel"].Target,r);var p=Zn(v);var m=tu(Or(e,v,true),Qn(Or(e,p,true),v));var b=Lr(m,v);var g=Zn(b);d=Pp(Or(e,b,true),b,o,Qn(Or(e,g,true),b),c,d);break;case"macro":d=bm(h,r,n,o,i[a],c,l,u);break;case"dialog":d=gm(h,r,n,o,i[a],c,l,u);break;default:throw new Error("Unrecognized sheet type "+f);}s[a]=d;var w=[];if(i&&i[a])rr(i[a]).forEach(function(t){var n="";if(i[a][t].Type==qn.CMNT){n=Lr(i[a][t].Target,r);var s=Em(Rr(e,n,true),n,o);if(!s||!s.length)return;iu(d,s,false)}if(i[a][t].Type==qn.TCMNT){n=Lr(i[a][t].Target,r);w=w.concat(ou(Rr(e,n,true),o))}});if(w&&w.length)iu(d,w,true,o.people||[])}catch(k){if(o.WTF)throw k}}function jg(e){return e.charAt(0)=="/"?e.slice(1):e}function Xg(e,r){ze();r=r||{};Wg(r);if(xr(e,"META-INF/manifest.xml"))return Zb(e,r);if(xr(e,"objectdata.xml"))return Zb(e,r);if(xr(e,"Index/Document.iwa")){if(typeof Uint8Array=="undefined")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof Lg!="undefined"){if(e.FileIndex)return Lg(e);var t=Ke.utils.cfb_new();Nr(e).forEach(function(r){Fr(t,r,Ir(e,r))});return Lg(t)}throw new Error("Unsupported NUMBERS file")}if(!xr(e,"[Content_Types].xml")){if(xr(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file"); +if(xr(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");throw new Error("Unsupported ZIP file")}var a=Nr(e);var n=Kn(Or(e,"[Content_Types].xml"));var i=false;var s,f;if(n.workbooks.length===0){f="xl/workbook.xml";if(Rr(e,f,true))n.workbooks.push(f)}if(n.workbooks.length===0){f="xl/workbook.bin";if(!Rr(e,f,true))throw new Error("Could not find workbook");n.workbooks.push(f);i=true}if(n.workbooks[0].slice(-3)=="bin")i=true;var o={};var c={};if(!r.bookSheets&&!r.bookProps){Cd=[];if(n.sst)try{Cd=Tm(Rr(e,jg(n.sst)),n.sst,r)}catch(l){if(r.WTF)throw l}if(r.cellStyles&&n.themes.length)o=km(Or(e,n.themes[0].replace(/^\//,""),true)||"",n.themes[0],r);if(n.style)c=wm(Rr(e,jg(n.style)),n.style,o,r)}n.links.map(function(t){try{var a=Qn(Or(e,Zn(jg(t))),t);return Sm(Rr(e,jg(t)),a,t,r)}catch(n){}});var u=vm(Rr(e,jg(n.workbooks[0])),n.workbooks[0],r);var h={},d="";if(n.coreprops.length){d=Rr(e,jg(n.coreprops[0]),true);if(d)h=ui(d);if(n.extprops.length!==0){d=Rr(e,jg(n.extprops[0]),true);if(d)bi(d,h,r)}}var v={};if(!r.bookSheets||r.bookProps){if(n.custprops.length!==0){d=Or(e,jg(n.custprops[0]),true);if(d)v=ki(d,r)}}var p={};if(r.bookSheets||r.bookProps){if(u.Sheets)s=u.Sheets.map(function I(e){return e.name});else if(h.Worksheets&&h.SheetNames.length>0)s=h.SheetNames;if(r.bookProps){p.Props=h;p.Custprops=v}if(r.bookSheets&&typeof s!=="undefined")p.SheetNames=s;if(r.bookSheets?p.SheetNames:r.bookProps)return p}s={};var m={};if(r.bookDeps&&n.calcchain)m=ym(Rr(e,jg(n.calcchain)),n.calcchain,r);var b=0;var g={};var w,k;{var T=u.Sheets;h.Worksheets=T.length;h.SheetNames=[];for(var E=0;E!=T.length;++E){h.SheetNames[E]=T[E].name}}var y=i?"bin":"xml";var S=n.workbooks[0].lastIndexOf("/");var _=(n.workbooks[0].slice(0,S+1)+"_rels/"+n.workbooks[0].slice(S+1)+".rels").replace(/^\//,"");if(!xr(e,_))_="xl/_rels/workbook."+y+".rels";var A=Qn(Or(e,_,true),_.replace(/_rels.*/,"s5s"));if((n.metadata||[]).length>=1){r.xlmeta=_m(Rr(e,jg(n.metadata[0])),n.metadata[0],r)}if((n.people||[]).length>=1){r.people=lu(Rr(e,jg(n.people[0])),r)}if(A)A=Vg(A,u.Sheets);var x=Rr(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(b=0;b!=h.Worksheets;++b){var C="sheet";if(A&&A[b]){w="xl/"+A[b][1].replace(/[\/]?xl\//,"");if(!xr(e,w))w=A[b][1];if(!xr(e,w))w=_.replace(/_rels\/.*$/,"")+A[b][1];C=A[b][2]}else{w="xl/worksheets/sheet"+(b+1-x)+"."+y;w=w.replace(/sheet0\./,"sheet.")}k=w.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(h.SheetNames[b].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var R=false;for(var O=0;O!=r.sheets.length;++O){if(typeof r.sheets[O]=="number"&&r.sheets[O]==b)R=1;if(typeof r.sheets[O]=="string"&&r.sheets[O].toLowerCase()==h.SheetNames[b].toLowerCase())R=1}if(!R)continue e};}Gg(e,w,k,h.SheetNames[b],b,g,s,C,r,u,o,c)}p={Directory:n,Workbook:u,Props:h,Custprops:v,Deps:m,Sheets:s,SheetNames:h.SheetNames,Strings:Cd,Styles:c,Themes:o,SSF:gr(X)};if(r&&r.bookFiles){if(e.files){p.keys=a;p.files=e.files}else{p.keys=[];p.files={};e.FullPaths.forEach(function(r,t){r=r.replace(/^Root Entry[\/]/,"");p.keys.push(r);p.files[r]=e.FileIndex[t]})}}if(r&&r.bookVBA){if(n.vba.length>0)p.vbaraw=Rr(e,jg(n.vba[0]),true);else if(n.defaults&&n.defaults.bin===gu)p.vbaraw=Rr(e,"xl/vbaProject.bin",true)}return p}function $g(e,r){var t=r||{};var a="Workbook",n=Ke.find(e,a);try{a="/!DataSpaces/Version";n=Ke.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);Ko(n.content);a="/!DataSpaces/DataSpaceMap";n=Ke.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=qo(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=Ke.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=Zo(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=Ke.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);ec(n.content)}catch(f){}a="/EncryptionInfo";n=Ke.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var o=ac(n.content);a="/EncryptedPackage";n=Ke.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 Yg(e,r){if(r.bookType=="ods")return tg(e,r);if(r.bookType=="numbers")return Ug(e,r);if(r.bookType=="xlsb")return Kg(e,r);return Jg(e,r)}function Kg(e,r){au=1024;if(e&&!e.SSF){e.SSF=gr(X)}if(e&&e.SSF){ze();He(e.SSF);r.revssf=nr(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(Od)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t=r.bookType=="xlsb"?"bin":"xml";var a=Tu.indexOf(r.bookType)>-1;var n=Yn();Hg(r=r||{});var i=Dr();var s="",f=0;r.cellXfs=[];Dd(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Fr(i,s,di(e.Props,r));n.coreprops.push(s);ri(r.rels,2,s,qn.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 c=0;c0){s="docProps/custom.xml";Fr(i,s,Ti(e.Custprops,r));n.custprops.push(s);ri(r.rels,4,s,qn.CUST_PROPS)}for(f=1;f<=e.SheetNames.length;++f){var l={"!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;Fr(i,s,xm(f-1,s,r,e,l));n.sheets.push(s);ri(r.wbrels,-1,"worksheets/sheet"+f+"."+t,qn.WS[0]);}if(u){var d=u["!comments"];var v=false;var p="";if(d&&d.length>0){p="xl/comments"+f+"."+t;Fr(i,p,Im(d,p,r));n.comments.push(p);ri(l,-1,"../comments"+f+"."+t,qn.CMNT);v=true}if(u["!legacy"]){if(v)Fr(i,"xl/drawings/vmlDrawing"+f+".vml",nu(f,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(l["!id"].rId1)Fr(i,Zn(s),ei(l))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Fr(i,s,Om(r.Strings,s,r));n.strs.push(s);ri(r.wbrels,-1,"sharedStrings."+t,qn.SST)}s="xl/workbook."+t;Fr(i,s,Am(e,s,r));n.workbooks.push(s);ri(r.rels,1,s,qn.WB);s="xl/theme/theme1.xml";Fr(i,s,Il(e.Themes,r));n.themes.push(s);ri(r.wbrels,-1,"theme/theme1.xml",qn.THEME);s="xl/styles."+t;Fr(i,s,Rm(e,s,r));n.styles.push(s);ri(r.wbrels,-1,"styles."+t,qn.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Fr(i,s,e.vbaraw);n.vba.push(s);ri(r.wbrels,-1,"vbaProject.bin",qn.VBA)}s="xl/metadata."+t;Fr(i,s,Nm(s));n.metadata.push(s);ri(r.wbrels,-1,"metadata."+t,qn.XLMETA);Fr(i,"[Content_Types].xml",Jn(n,r));Fr(i,"_rels/.rels",ei(r.rels));Fr(i,"xl/_rels/workbook."+t+".rels",ei(r.wbrels));delete r.revssf;delete r.ssf;return i}function Jg(e,r){au=1024;if(e&&!e.SSF){e.SSF=gr(X)}if(e&&e.SSF){ze();He(e.SSF);r.revssf=nr(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(Od)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=Tu.indexOf(r.bookType)>-1;var n=Yn();Hg(r=r||{});var i=Dr();var s="",f=0;r.cellXfs=[];Dd(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Fr(i,s,di(e.Props,r));n.coreprops.push(s);ri(r.rels,2,s,qn.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 c=0;c0){s="docProps/custom.xml";Fr(i,s,Ti(e.Custprops,r));n.custprops.push(s);ri(r.rels,4,s,qn.CUST_PROPS)}var l=["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;Fr(i,s,pv(f-1,r,e,u));n.sheets.push(s);ri(r.wbrels,-1,"worksheets/sheet"+f+"."+t,qn.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+"."+t;Fr(i,m,cu(v,l,r));n.threadedcomments.push(m);ri(u,-1,"../threadedComments/threadedComment"+f+"."+t,qn.TCMNT)}m="xl/comments"+f+"."+t;Fr(i,m,fu(v,r));n.comments.push(m);ri(u,-1,"../comments"+f+"."+t,qn.CMNT);p=true}if(h["!legacy"]){if(p)Fr(i,"xl/drawings/vmlDrawing"+f+".vml",nu(f,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(u["!id"].rId1)Fr(i,Zn(s),ei(u))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Fr(i,s,Ho(r.Strings,r));n.strs.push(s);ri(r.wbrels,-1,"sharedStrings."+t,qn.SST)}s="xl/workbook."+t;Fr(i,s,rm(e,r));n.workbooks.push(s);ri(r.rels,1,s,qn.WB);s="xl/theme/theme1.xml";Fr(i,s,Il(e.Themes,r));n.themes.push(s);ri(r.wbrels,-1,"theme/theme1.xml",qn.THEME);s="xl/styles."+t;Fr(i,s,$c(e,r));n.styles.push(s);ri(r.wbrels,-1,"styles."+t,qn.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Fr(i,s,e.vbaraw);n.vba.push(s);ri(r.wbrels,-1,"vbaProject.bin",qn.VBA)}s="xl/metadata."+t;Fr(i,s,Jl());n.metadata.push(s);ri(r.wbrels,-1,"metadata."+t,qn.XLMETA);if(l.length>1){s="xl/persons/person.xml";Fr(i,s,uu(l,r));n.people.push(s);ri(r.wbrels,-1,"persons/person.xml",qn.PEOPLE)}Fr(i,"[Content_Types].xml",Jn(n,r));Fr(i,"_rels/.rels",ei(r.rels));Fr(i,"xl/_rels/workbook."+t+".rels",ei(r.wbrels));delete r.revssf;delete r.ssf;return i}function qg(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=k(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 Zg(e,r){if(Ke.find(e,"EncryptedPackage"))return $g(e,r);return vb(e,r)}function Qg(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=T&&Buffer.isBuffer(e)?"buffer":"base64";t=Pr(a,n);return Xg(t,n)}function ew(e,r){var t=0;e:while(t=2&&n[3]===0)return Co.to_workbook(a,t);if(n[2]===0&&(n[3]===8||n[3]===9))return Co.to_workbook(a,t)}break;case 3:;case 131:;case 139:;case 140:return Eo.to_workbook(a,t);case 123:if(n[1]===92&&n[2]===114&&n[3]===116)return mc.to_workbook(a,t);break;case 10:;case 13:;case 32:return rw(a,t);case 137:if(n[1]===80&&n[2]===78&&n[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;}if(To.indexOf(n[0])>-1&&n[2]<=12&&n[3]<=31)return Eo.to_workbook(a,t);return nw(e,a,t,i)}function sw(e,r){var t=r||{};t.type="file";return iw(e,t)}function fw(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return Qe(r.file,Ke.write(e,{type:T?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return Ke.write(e,r)}function ow(e,r){var t=gr(r||{});var a=Yg(e,t);return lw(a,t)}function cw(e,r){var t=gr(r||{});var a=Jg(e,t);return lw(a,t)}function lw(e,r){var t={};var a=T?"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?Ke.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(A(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return fw(encrypt_agile(n,r.password),r);if(r.type==="file")return Qe(r.file,n);return r.type=="string"?ct(n):n}function uw(e,r){var t=r||{};var a=pb(e,t);return fw(a,t)}function hw(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return w(lt(a));case"binary":return lt(a);case"string":return e;case"file":return Qe(r.file,a,"utf8");case"buffer":{if(T)return E(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return hw(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function dw(e,r){switch(r.type){case"base64":return w(e);case"binary":return e;case"string":return e;case"file":return Qe(r.file,e,"binary");case"buffer":{if(T)return E(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function vw(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var u=Ta(o.s.r);var h=[];var d=[];var v=0,p=0;var m=Array.isArray(e);var b=o.s.r,g=0;var w={};if(m&&!e[b])e[b]=[];var k=c.skipHidden&&e["!cols"]||[];var T=c.skipHidden&&e["!rows"]||[];for(g=o.s.c;g<=o.e.c;++g){if((k[g]||{}).hidden)continue;h[g]=_a(g);t=m?e[b][g]:e[h[g]+u];switch(a){case 1:i[g]=g-o.s.c;break;case 2:i[g]=h[g];break;case 3:i[g]=c.header[g-o.s.c];break;default:if(t==null)t={w:"__EMPTY",t:"s"};f=s=Pa(t,null,c);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=o.s.r+n;b<=o.e.r;++b){if((T[b]||{}).hidden)continue;var E=Tw(e,o,b,h,a,i,m,c);if(E.isempty===false||(a===1?c.blankrows!==false:!!c.blankrows))d[v++]=E.row}d.length=v;return d}var yw=/"/g;function Sw(e,r,t,a,n,i,s,f){var o=true;var c=[],l="",u=Ta(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)l="";else if(d.v!=null){o=false;l=""+(f.rawNumbers&&d.t=="n"?d.v:Pa(d,null,f));for(var v=0,p=0;v!==l.length;++v)if((p=l.charCodeAt(v))===n||p===i||p===34||f.forceQuotes){l='"'+l.replace(yw,'""')+'"';break}if(l=="ID")l='"ID"'}else if(d.f!=null&&!d.F){o=false;l="="+d.f;if(l.indexOf(",")>=0)l='"'+l.replace(yw,'""')+'"'}else l="";c.push(l)}if(f.blankrows===false&&o)return null;return c.join(s)}function _w(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=Fa(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 c=new RegExp((i=="|"?"\\|":i)+"+$");var l="",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]=_a(v);var p=0;for(var m=n.s.r;m<=n.e.r;++m){if((d[m]||{}).hidden)continue;l=Sw(e,n,m,u,s,o,i,a);if(l==null){continue}if(a.strip)l=l.replace(c,"");if(l||a.blankrows!==false)t.push((p++?f:"")+l)}delete a.dense;return t.join("")}function Aw(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=_w(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 xw(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=Fa(e["!ref"]),i="",s=[],f;var o=[];var c=Array.isArray(e);for(f=n.s.c;f<=n.e.c;++f)s[f]=_a(f);for(var l=n.s.r;l<=n.e.r;++l){i=Ta(l);for(f=n.s.c;f<=n.e.c;++f){r=s[f]+i;t=c?(e[l]||[])[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 Cw(e,r,t){var a=t||{};var n=+!a.skipHeader;var i=e||{};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"?Ra(a.origin):a.origin;s=o.r;f=o.c}}var c;var l={s:{c:0,r:0},e:{c:f,r:s+r.length-1+n}};if(i["!ref"]){var u=Fa(i["!ref"]);l.e.c=Math.max(l.e.c,u.e.c);l.e.r=Math.max(l.e.r,u.e.r);if(s==-1){s=u.e.r+1;l.e.r=s+r.length-1+n}}else{if(s==-1){s=0;l.e.r=r.length-1+n}}var h=a.header||[],d=0;r.forEach(function(e,r){rr(e).forEach(function(t){if((d=h.indexOf(t))==-1)h[d=h.length]=t;var o=e[t];var l="z";var u="";var v=Oa({c:f+d,r:s+r+n});c=Ow(i,v);if(o&&typeof o==="object"&&!(o instanceof Date)){i[v]=o}else{if(typeof o=="number")l="n";else if(typeof o=="boolean")l="b";else if(typeof o=="string")l="s";else if(o instanceof Date){l="d";if(!a.cellDates){l="n";o=fr(o)}u=a.dateNF||X[14]}else if(o===null&&a.nullError){l="e";o=0}if(!c)i[v]=c={t:l,v:o};else{c.t=l;c.v=o;delete c.w;delete c.R;if(u)c.z=u}if(u)c.z=u}})});l.e.c=Math.max(l.e.c,f+h.length-1);var v=Ta(s);if(n)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 Nw(){return{SheetNames:[],Sheets:{}}}function Fw(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}Jp(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 Dw(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=Iw(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 Pw(e,r){e.z=r;return e}function Lw(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function Mw(e,r,t){return Lw(e,"#"+r,t)}function Uw(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function Bw(e,r,t,a){var n=typeof r!="string"?r:Fa(r);var i=typeof r=="string"?r:Na(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=Ow(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}}return e}var Ww={encode_col:_a,encode_row:Ta,encode_cell:Oa,encode_range:Na,decode_col:Sa,decode_row:ka,split_cell:Ca,decode_cell:Ra,decode_range:Ia,format_cell:Pa,sheet_add_aoa:Ma,sheet_add_json:Cw,sheet_add_dom:Gb,aoa_to_sheet:Ua,json_to_sheet:Rw,table_to_sheet:jb,table_to_book:Xb,sheet_to_csv:_w,sheet_to_txt:Aw,sheet_to_json:Ew,sheet_to_html:Vb,sheet_to_formulae:xw,sheet_to_row_object_array:Ew,sheet_get_cell:Ow,book_new:Nw,book_append_sheet:Fw,book_set_sheet_visibility:Dw,cell_set_number_format:Pw,cell_set_hyperlink:Lw,cell_set_internal_link:Mw,cell_add_comment:Uw,sheet_set_array_formula:Bw,consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};var Hw;function zw(e){Hw=e}function Vw(e,r){var t=Hw();var a=r==null?{}:r;if(e==null||e["!ref"]==null){t.push(null);return t}var n=Fa(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 c=new RegExp((i=="|"?"\\|":i)+"+$");var l="",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]=_a(v);var p=n.s.r;var m=false,b=0;t._read=function(){if(!m){m=true;return t.push("\ufeff")}while(p<=n.e.r){++p;if((d[p-1]||{}).hidden)continue;l=Sw(e,n,p-1,u,s,o,i,a);if(l!=null){if(a.strip)l=l.replace(c,"");if(l||a.blankrows!==false)return t.push((b++?f:"")+l)}}return t.push(null)};return t}function Gw(e,r){var t=Hw();var a=r||{};var n=a.header!=null?a.header:Bb;var i=a.footer!=null?a.footer:Wb;t.push(n);var s=Ia(e["!ref"]);a.dense=Array.isArray(e);t.push(zb(e,s,a));var f=s.s.r;var o=false;t._read=function(){if(f>s.e.r){if(!o){o=true;t.push(""+i)}return t.push(null)}while(f<=s.e.r){t.push(Ub(e,s,f,a));++f;break}};return t}function jw(e,r){var t=Hw({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 c={s:{r:0,c:0},e:{r:0,c:0}};var l=r||{};var u=l.range!=null?l.range:e["!ref"];if(l.header===1)n=1;else if(l.header==="A")n=2;else if(Array.isArray(l.header))n=3;switch(typeof u){case"string":c=Fa(u);break;case"number":c=Fa(e["!ref"]);c.s.r=u;break;default:c=u;}if(n>0)i=0;var h=Ta(c.s.r);var d=[];var v=0;var p=Array.isArray(e);var m=c.s.r,b=0;var g={};if(p&&!e[m])e[m]=[];var w=l.skipHidden&&e["!cols"]||[];var k=l.skipHidden&&e["!rows"]||[];for(b=c.s.c;b<=c.e.c;++b){if((w[b]||{}).hidden)continue;d[b]=_a(b);a=p?e[m][b]:e[d[b]+h];switch(n){case 1:s[b]=b-c.s.c;break;case 2:s[b]=d[b];break;case 3:s[b]=l.header[b-c.s.c];break;default:if(a==null)a={w:"__EMPTY",t:"s"};o=f=Pa(a,null,l);v=g[f]||0;if(!v)g[f]=1;else{do{o=f+"_"+v++}while(g[o]);g[f]=v;g[o]=1}s[b]=o;}}m=c.s.r+i;t._read=function(){while(m<=c.e.r){if((k[m-1]||{}).hidden)continue;var r=Tw(e,c,m,d,n,s,p,l);++m;if(r.isempty===false||(n===1?l.blankrows!==false:!!l.blankrows)){t.push(r.row);return}}return t.push(null)};return t}var Xw={to_json:jw,to_html:Gw,to_csv:Vw,set_readable:zw};if(typeof vb!=="undefined")e.parse_xlscfb=vb;e.parse_zip=Xg;e.read=iw;e.readFile=sw;e.readFileSync=sw;e.write=mw;e.writeFile=gw;e.writeFileSync=gw;e.writeFileAsync=kw;e.utils=Ww;e.writeXLSX=pw;e.writeFileXLSX=ww;e.SSF=Ve;if(typeof Xw!=="undefined")e.stream=Xw;if(typeof Ke!=="undefined")e.CFB=Ke;if(typeof require!=="undefined"){var $w=undefined;if(($w||{}).Readable)zw($w.Readable)}}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 508ae5d..819af21 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","cptable","module","require","undefined","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","utils","decode","_gc2","_ga2","DENSE","DIF_XL","Base64","map","encode","input","c3","e1","e2","e3","e4","isNaN","charAt","replace","has_buf","Buffer","node","Buffer_from","nbfs","from","e","buf","enc","bind","alloc","n","allocUnsafe","new_raw_buf","Uint8Array","Array","new_unsafe_buf","s2a","s","split","s2ab","ArrayBuffer","view","a2s","isArray","c","a2u","Error","ab2a","utf8decode","content","out","widx","L","ridx","d","push","bconcat","bufs","maxlen","set","concat","apply","call","chr0","chr1","SSF","make_ssf","_strrev","fill","l","pad0","v","t","pad_","rpad_","pad0r1","Math","round","pad0r2","p2_32","pow","pad0r","isgeneral","days","months","init_table","table_fmt","default_map","defi","default_str","5","63","6","64","7","65","8","66","41","42","43","44","frac","D","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","floor","q","parse_date_code","opts","b2","date","time","dow","dout","T","u","y","m","H","M","S","abs","date1904","Date","setDate","getDate","getFullYear","getMonth","getDay","fix_hijri","basedate","dnthresh","getTime","base1904","datenum_local","epoch","getTimezoneOffset","general_fmt_int","toString","_general_int","general_fmt_num","make_general_fmt_num","trailing_zeroes_and_decimal","strip_decimal","mantissa_zeroes_and_decimal","exp_with_single_digit","normalize_exp","small_exp","w","toFixed","toPrecision","toExponential","large_exp","general_fmt_num_base","V","log","LOG10E","substr","toUpperCase","_general_num","general_fmt","format","_general","write_date","type","fmt","val","ss0","ss","tt","outl","outstr","commaify","j","write_num","make_write_num","pct1","write_num_pct","sfmt","mul","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","split_fmt","in_str","_split","abstime","fmt_is_date","is_date","eval_fmt","flen","lst","dt","hr","toLowerCase","bt","ssm","nstr","jj","vv","myv","ostr","decpt","lasti","retval","_eval","cfregex","cfregex2","chkcond","thresh","parseFloat","choose_fmt","f","lat","m1","m2","dateNF","table","load_entry","load","_table","get_table","load_table","tbl","XLMLFormatMap","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","SSFImplicit","23","24","25","26","27","28","29","30","31","32","33","34","35","36","50","51","52","53","54","55","56","57","58","59","60","61","62","67","68","70","71","72","73","74","75","76","78","79","80","81","dateNFregex","dateNF_regex","RegExp","dateNF_fix","Y","forEach","datestr","timestr","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","fs","get_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","isBuffer","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","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","console","error","message","_inflateRawSync","usz","_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","csz","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","_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","keys","ks","o2","prototype","hasOwnProperty","evert_key","obj","key","K","evert","evert_num","evert_arr","datenum","refdate","refoffset","numdate","setTime","parse_isodur","sec","good_pd_date","good_pd","parseDate","fixdate","cc2str","arr","debomit","dup","JSON","stringify","fuzzynum","Number","isFinite","NaN","wt","lower_months","fuzzydate","getYear","lower","safe_split_regex","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","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","skip_LC","z","eq","quot","strip_ns","encodings",""","'",">","<","&","rencoding","unescapexml","encregex","coderegex","decregex","charegex","escapexml","escapexmltag","htmlcharegex","escapehtml","escapexlml","xlml_fixstr","entregex","entrepl","xlml_unfixstr","parsexmlbool","value","utf8read","utf8reada","orig","utf8readb","ww","corpus","utf8readc","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","xlsx","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","__readUInt16LE","___utf16le","__hexlify","___hexlify","__utf8","__readUInt8","___utf8","__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","utf8_b","double_","readDoubleLE","is_buf_b","cpdoit","__readInt16LE","__readInt32BE","oI","oR","oo","loc","this","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cppayload","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","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","3","14","parse_ClipboardFormatOrAnsiString","parse_ClipboardFormatOrUnicodeString","VT_I2","VT_I4","VT_BOOL","VT_VARIANT","VT_UI4","VT_LPSTR","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","4","9","10","11","12","13","15","16","17","19","22","2147483648","2147483651","1919054434","SummaryPIDSI","18","CountryEnum","20","39","45","46","47","48","49","82","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","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","CTYPE_XML_ROOT","xmlns:xsd","xmlns:xsi","write_ct","type2ct","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","VBA","get_rels_path","parse_rels","currentFilePath","!id","rel","Type","Target","Id","TargetMode","canonictarget","RELS_ROOT","write_rels","rid","RELS_EXTERN","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","21","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","XLSLblBuiltIn","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","37","38","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","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_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","rstr","record","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","rc_to_a1","shrbase","shift_formula_str","F_seen","process_col","hpx","pt2px","sylk_to_sheet","aoasht","sylk_to_workbook","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","sheet_to_dif","push_field","pf","topic","push_value","po","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","cellText","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","vers","qpro","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_INTEGER","parse_NUMBER","parse_FORMULA","wk1_fmla_to_csf","wk1_parse_rc","FuncTab","83","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","40","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","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","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","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","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","write_xlmeta_xml","parse_cc_xml","parse_BrtCalcChainItem$","parse_cc_bin","hopper_cc","parse_xlink_xml","parse_xlink_bin","xlink_parse","parse_drawing","_shapeid","write_comments_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","joinstyle","gradientshapeok","o:connecttype","o:spt","coordsize","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","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","109","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","quoteCharacters","formula_quote_sheet_name","sname","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","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","Workbook","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","Names","Sheet","Ref","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","write_cs_xml","parse_BrtCsProp","parse_cs_bin","cs_parse","write_cs_bin","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","WBProps","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","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","parse_wb_bin","hopper_wb","write_BUNDLESHS","viz","write_BrtFileVersion","write_BrtBookView","write_BOOKVIEWS","vistab","write_wb_bin","parse_wb","parse_ws","parse_cs","parse_ms","parse_ds","parse_sty","parse_theme","parse_sst","parse_cmnt","parse_cc","parse_xlink","parse_xlmeta","write_wb","write_ws","write_cs","write_sty","write_sst","write_cmnt","write_xlmeta","attregexg2","attregex2","xlml_parsexmltag","words","xlml_parsexmltagobj","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_clean_comment","parse_xlml_xml","opening","ishtml","_o","HTML_","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","html_to_book","book_new","book_append_sheet","make_html_row","editable","make_html_preamble","_BEGIN","_END","sheet_to_html","_row","BEGIN","END","_preamble","sheet_add_dom","or_R","or_C","getElementsByTagName","is_dom_element_hidden","elts","hasAttribute","getAttribute","innerHTML","Aelts","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","number_formats_ods","day","month","year","hours","minutes","seconds","am-pm","day-of-week","era","quarter","parse_content_xml","NFtag","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","number_format_map","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","rptR","rpt","nrange","ptp","parse_ods","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_content_ods","write_text_p","null_cell_xml","covered_cell_xml","ods","ROWS","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","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","TextDecoder","u8concat","u8a","reduce","acc","popcnt","readDecimal128LE","exp","mantissa","parse_varint49","ptr","varint","varint_to_i32","i32","parse_shallow","mappa","_a","parse_iwa_file","messages","parse_snappy_chunk","chunks","deframe","parse_old_storage","rsst","dv","getUint32","data_offset","ieee","getFloat64","parse_storage","d128","parse_cell_storage","parse_TSP_Reference","pb","parse_TST_TableDataList","le","rtp","rtpref","mtype","tswpsa","parse_TST_TileRowInfo","_b","_c","_e","_g","_h","_i","pre_bnc","pre_bnc_offsets","storage_offsets","wide_offsets","getUint16","parse_TST_Tile","parse_TST_TableModelArchive","store","tile","tiles","tl","tile2","parse_TST_TableInfoArchive","tableref","parse_TN_SheetArchive","shapeoffs","parse_TN_DocumentArchive","sheetoffs","root2","parse_numbers_iwa","packets","packet","docroot","iwams","iwam","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","dir","binname","link","propdata","pluck","deps","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Deps","Styles","bin","parse_xlsxcfb","dsm","seds","einfo","decrypt_agile","decrypt_std76","write_zip_xlsxb","write_zip_xlsx","foo","vbafmt","_sn","wsrels","_type","need_vml","rId1","needtc","read_cfb","read_zip","read_plaintext","main","read_plaintext_raw","read_utf16","bstrify","read_prn","readSync","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","JS","ws_get_cell_stub","json_to_sheet","RC","wb_sheet_idx","sh","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","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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","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","cptable","module","require","undefined","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","utils","decode","_gc2","_ga2","DENSE","DIF_XL","Base64_map","Base64_encode","input","c3","e1","e2","e3","e4","isNaN","charAt","Base64_decode","replace","has_buf","Buffer","node","Buffer_from","nbfs","from","e","buf","enc","bind","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","toString","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","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","fs","get_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","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","console","error","message","_inflateRawSync","usz","_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","csz","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","_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","lower_months","fuzzydate","getYear","lower","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","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","xlsx","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","cpdoit","__readInt16LE","__readInt32BE","oI","oR","oo","loc","this","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cppayload","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","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_LPSTR","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR","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?","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","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","XLSLblBuiltIn","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","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_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","rstr","record","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","rc_to_a1","shrbase","shift_formula_str","F_seen","process_col","hpx","pt2px","sylk_to_sheet","aoasht","sylk_to_workbook","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","sheet_to_dif","push_field","pf","topic","push_value","po","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","cellText","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","vers","qpro","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_INTEGER","parse_NUMBER","parse_FORMULA","wk1_fmla_to_csf","wk1_parse_rc","FuncTab","83","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","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","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","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","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","_shapeid","write_comments_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","joinstyle","gradientshapeok","o:connecttype","o:spt","coordsize","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","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","109","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","formula_quote_sheet_name","sname","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","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","Workbook","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","Names","Sheet","Ref","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","write_cs_xml","parse_BrtCsProp","parse_cs_bin","cs_parse","write_cs_bin","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","WBProps","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","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","parse_wb_bin","hopper_wb","write_BUNDLESHS","viz","write_BrtFileVersion","write_BrtBookView","write_BOOKVIEWS","vistab","write_wb_bin","parse_wb","parse_ws","parse_cs","parse_ms","parse_ds","parse_sty","parse_theme","parse_sst","parse_cmnt","parse_cc","parse_xlink","parse_xlmeta","write_wb","write_ws","write_cs","write_sty","write_sst","write_cmnt","write_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_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","book_append_sheet","make_html_preamble","sheet_to_html","sheet_add_dom","or_R","or_C","getElementsByTagName","is_dom_element_hidden","elts","hasAttribute","getAttribute","innerHTML","Aelts","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","number_formats_ods","day","month","year","hours","minutes","seconds","am-pm","day-of-week","era","quarter","parse_content_xml","NFtag","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","number_format_map","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","rptR","rpt","nrange","ptp","parse_ods","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_content_ods","write_text_p","null_cell_xml","covered_cell_xml","ods","ROWS","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","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","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","parse_old_storage","rsst","dv","getUint32","data_offset","ieee","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","_b","_c","_e","_g","_h","_i","_k","_l","_m","wide_offsets","used_storage_u8","used_storage","used_storage_offsets","getUint16","parse_TST_Tile","nrows","parse_TST_TableModelArchive","store","tile","tl","_tile","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","last_offset","cell_storage","_dv","_last_offset","_cell_storage","setUint16","celload","_celload","write_numbers_iwa","numbers","trunc","dependents","old_content","raw1","x2","packet2","deps","y2","indices_varint","ivi","some","mess","get_unique_msgid","xi","sheetrootref","cruidsref","oldbucket","_x","cruids","uuid","row_headers","row_header_ref","base_bucket","_bucket","col_header_ref","sstref","sentry","sx","sstroot","sxi","sstdata","newsst","sy","raw32","tileref","tentry","tx","tileroot","tiledata","rowload","R2","tilerow","ty","raw3","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","dir","binname","link","propdata","pluck","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Deps","Styles","bin","parse_xlsxcfb","dsm","seds","einfo","decrypt_agile","decrypt_std76","write_zip_xlsxb","write_zip_xlsx","foo","vbafmt","_sn","wsrels","_type","need_vml","rId1","needtc","read_cfb","read_zip","read_plaintext","main","read_plaintext_raw","read_utf16","bstrify","read_prn","readSync","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","JS","ws_get_cell_stub","json_to_sheet","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","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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Ey7C,IACpCwY,QACAotD,QACAC,QACAptD,QACAqtD,QACAC,QACAC,QACAC,QACAC,MAAyB3hH,EAAE+vC,IAC3B6xE,QACAoG,QACAnG,QACAoG,QACAC,QACAC,QACAC,QACAC,QACAvG,QACA4D,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAkC,QACAC,MAA6BpsH,EAAE,IAC/BqsH,QACAC,QACAC,QACAC,MAA6B3oH,EAAEsqC,IAC/Bs+E,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA2B1pH,EAAEi8C,GAAa9/C,EAAE,IAC5CwtH,MAA2B3pH,EAAE6mE,GAAa1qE,EAAE,IAC5CytH,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8BtqH,EAAEyoC,GAAWtsC,EAAE,IAC7CouH,QACAC,MAAiCruH,EAAE,IACnCsuH,QACAC,QACAC,QACAC,QACAC,MAA6B7qH,EAAEs5C,GAAen9C,EAAE,IAChD2uH,QACAC,MAA2B/qH,EAAEimE,GAAa9pE,EAAE,IAC5C6uH,QACAC,QACAC,QACAC,MAAiCnrH,EAAEg6C,GAAmB79C,EAAE,IACxDivH,MAAsCprH,EAAEsqC,IACxC+gF,QACAC,QACAC,QACAC,QACAC,MAA0CzrH,EAAE4xC,IAC5C85E,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,MAA2BxtH,EAAE0qC,IAC7B+iF,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8BtuH,EAAEy8C,IAChC8xE,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 16c699d..3a99f3a 100644 --- a/dist/xlsx.extendscript.js +++ b/dist/xlsx.extendscript.js @@ -160,7 +160,7 @@ var DO_NOT_EXPORT_CODEPAGE = true; /*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.4'; +XLSX.version = '0.18.5'; var current_codepage = 1200, current_ansi = 1252; /*global cptable:true, window */ var $cptable; @@ -239,76 +239,72 @@ if(typeof $cptable !== 'undefined') { } var DENSE = null; var DIF_XL = true; -var Base64 = function() { - var map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; - return { - encode: function(input) { - var o = ""; - var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; - for (var i = 0; i < input.length; ) { - c1 = input.charCodeAt(i++); - e1 = c1 >> 2; - c2 = input.charCodeAt(i++); - e2 = (c1 & 3) << 4 | c2 >> 4; - c3 = input.charCodeAt(i++); - e3 = (c2 & 15) << 2 | c3 >> 6; - e4 = c3 & 63; - if (isNaN(c2)) { - e3 = e4 = 64; - } else if (isNaN(c3)) { - e4 = 64; - } - o += map.charAt(e1) + map.charAt(e2) + map.charAt(e3) + map.charAt(e4); - } - return o; - }, - decode: function(input) { - var o = ""; - var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; - input = input.replace(/[^\w\+\/\=]/g, ""); - for (var i = 0; i < input.length; ) { - e1 = map.indexOf(input.charAt(i++)); - e2 = map.indexOf(input.charAt(i++)); - c1 = e1 << 2 | e2 >> 4; - o += String.fromCharCode(c1); - e3 = map.indexOf(input.charAt(i++)); - c2 = (e2 & 15) << 4 | e3 >> 2; - if (e3 !== 64) { - o += String.fromCharCode(c2); - } - e4 = map.indexOf(input.charAt(i++)); - c3 = (e3 & 3) << 6 | e4; - if (e4 !== 64) { - o += String.fromCharCode(c3); - } - } - return o; +var Base64_map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; +function Base64_encode(input) { + var o = ""; + var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; + for (var i = 0; i < input.length; ) { + c1 = input.charCodeAt(i++); + e1 = c1 >> 2; + c2 = input.charCodeAt(i++); + e2 = (c1 & 3) << 4 | c2 >> 4; + c3 = input.charCodeAt(i++); + e3 = (c2 & 15) << 2 | c3 >> 6; + e4 = c3 & 63; + if (isNaN(c2)) { + e3 = e4 = 64; + } else if (isNaN(c3)) { + e4 = 64; } - }; -}(); -var has_buf = (typeof Buffer !== 'undefined' && typeof undefined !== 'undefined' && typeof ({}) !== 'undefined' && !!({}).node); - -var Buffer_from = function(){}; - -if(typeof Buffer !== 'undefined') { - var nbfs = !Buffer.from; - if(!nbfs) try { Buffer.from("foo", "utf8"); } catch(e) { nbfs = true; } - Buffer_from = nbfs ? function(buf, enc) { return (enc) ? new Buffer(buf, enc) : new Buffer(buf); } : Buffer.from.bind(Buffer); - // $FlowIgnore - if(!Buffer.alloc) Buffer.alloc = function(n) { return new Buffer(n); }; - // $FlowIgnore - if(!Buffer.allocUnsafe) Buffer.allocUnsafe = function(n) { return new Buffer(n); }; + o += Base64_map.charAt(e1) + Base64_map.charAt(e2) + Base64_map.charAt(e3) + Base64_map.charAt(e4); + } + return o; } +function Base64_decode(input) { + var o = ""; + var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; + input = input.replace(/[^\w\+\/\=]/g, ""); + for (var i = 0; i < input.length; ) { + e1 = Base64_map.indexOf(input.charAt(i++)); + e2 = Base64_map.indexOf(input.charAt(i++)); + c1 = e1 << 2 | e2 >> 4; + o += String.fromCharCode(c1); + e3 = Base64_map.indexOf(input.charAt(i++)); + c2 = (e2 & 15) << 4 | e3 >> 2; + if (e3 !== 64) { + o += String.fromCharCode(c2); + } + e4 = Base64_map.indexOf(input.charAt(i++)); + c3 = (e3 & 3) << 6 | e4; + if (e4 !== 64) { + o += String.fromCharCode(c3); + } + } + return o; +} +var has_buf = (function() { return typeof Buffer !== 'undefined' && typeof undefined !== 'undefined' && typeof ({}) !== 'undefined' && !!({}).node; })(); + +var Buffer_from = (function() { + if(typeof Buffer !== 'undefined') { + var nbfs = !Buffer.from; + if(!nbfs) try { Buffer.from("foo", "utf8"); } catch(e) { nbfs = true; } + return nbfs ? function(buf, enc) { return (enc) ? new Buffer(buf, enc) : new Buffer(buf); } : Buffer.from.bind(Buffer); + } + return function() {}; +})(); + function new_raw_buf(len) { /* jshint -W056 */ - return has_buf ? Buffer.alloc(len) : typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); + if(has_buf) return Buffer.alloc ? Buffer.alloc(len) : new Buffer(len); + return typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); /* jshint +W056 */ } function new_unsafe_buf(len) { /* jshint -W056 */ - return has_buf ? Buffer.allocUnsafe(len) : typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); + if(has_buf) return Buffer.allocUnsafe ? Buffer.allocUnsafe(len) : new Buffer(len); + return typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); /* jshint +W056 */ } @@ -342,6 +338,23 @@ var o = new Array(data.length); return o; } +var bconcat = has_buf ? function(bufs) { return Buffer.concat(bufs.map(function(buf) { return Buffer.isBuffer(buf) ? buf : Buffer_from(buf); })); } : function(bufs) { + if(typeof Uint8Array !== "undefined") { + var i = 0, maxlen = 0; + for(i = 0; i < bufs.length; ++i) maxlen += bufs[i].length; + var o = new Uint8Array(maxlen); + var len = 0; + for(i = 0, maxlen = 0; i < bufs.length; maxlen += len, ++i) { + len = bufs[i].length; + if(bufs[i] instanceof Uint8Array) o.set(bufs[i], maxlen); + else if(typeof bufs[i] == "string") { throw "wtf"; } + else o.set(new Uint8Array(bufs[i]), maxlen); + } + return o; + } + return [].concat.apply([], bufs.map(function(buf) { return Array.isArray(buf) ? buf : [].slice.call(buf); })); +}; + function utf8decode(content) { var out = [], widx = 0, L = content.length + 250; var o = new_raw_buf(content.length + 255); @@ -374,31 +387,10 @@ function utf8decode(content) { return bconcat(out); } -var bconcat = function(bufs) { - if(typeof Uint8Array !== "undefined") { - var i = 0, maxlen = 0; - for(i = 0; i < bufs.length; ++i) maxlen += bufs[i].length; - var o = new Uint8Array(maxlen); - var len = 0; - for(i = 0, maxlen = 0; i < bufs.length; maxlen += len, ++i) { - len = bufs[i].length; - if(bufs[i] instanceof Uint8Array) o.set(bufs[i], maxlen); - else if(typeof bufs[i] == "string") { throw "wtf"; } - else o.set(new Uint8Array(bufs[i]), maxlen); - } - return o; - } - return [].concat.apply([], bufs.map(function(buf) { return Array.isArray(buf) ? buf : [].slice.call(buf); })); -}; - var chr0 = /\u0000/g, chr1 = /[\u0001-\u0006]/g; /* ssf.js (C) 2013-present SheetJS -- http://sheetjs.com */ /*jshint -W041 */ -var SSF = ({}); -function make_ssf(SSF){ -SSF.version = '0.11.2'; function _strrev(x) { var o = "", i = x.length-1; while(i>=0) o += x.charAt(i--); return o; } -function fill(c,l) { var o = ""; while(o.length < l) o+=c; return o; } function pad0(v,d){var t=""+v; return t.length>=d?t:fill('0',d-t.length)+t;} function pad_(v,d){var t=""+v;return t.length>=d?t:fill(' ',d-t.length)+t;} function rpad_(v,d){var t=""+v; return t.length>=d?t:t+fill(' ',d-t.length);} @@ -406,7 +398,8 @@ function pad0r1(v,d){var t=""+Math.round(v); return t.length>=d?t:fill('0',d-t.l function pad0r2(v,d){var t=""+v; return t.length>=d?t:fill('0',d-t.length)+t;} var p2_32 = Math.pow(2,32); function pad0r(v,d){if(v>p2_32||v<-p2_32) return pad0r1(v,d); var i = Math.round(v); return pad0r2(i,d); } -function isgeneral(s, i) { i = i || 0; return s.length >= 7 + i && (s.charCodeAt(i)|32) === 103 && (s.charCodeAt(i+1)|32) === 101 && (s.charCodeAt(i+2)|32) === 110 && (s.charCodeAt(i+3)|32) === 101 && (s.charCodeAt(i+4)|32) === 114 && (s.charCodeAt(i+5)|32) === 97 && (s.charCodeAt(i+6)|32) === 108; } +/* yes, in 2022 this is still faster than string compare */ +function SSF_isgeneral(s, i) { i = i || 0; return s.length >= 7 + i && (s.charCodeAt(i)|32) === 103 && (s.charCodeAt(i+1)|32) === 101 && (s.charCodeAt(i+2)|32) === 110 && (s.charCodeAt(i+3)|32) === 101 && (s.charCodeAt(i+4)|32) === 114 && (s.charCodeAt(i+5)|32) === 97 && (s.charCodeAt(i+6)|32) === 108; } var days = [ ['Sun', 'Sunday'], ['Mon', 'Monday'], @@ -430,7 +423,8 @@ var months = [ ['N', 'Nov', 'November'], ['D', 'Dec', 'December'] ]; -function init_table(t) { +function SSF_init_table(t) { + if(!t) t = {}; t[0]= 'General'; t[1]= '0'; t[2]= '0.00'; @@ -460,47 +454,66 @@ function init_table(t) { t[48]= '##0.0E+0'; t[49]= '@'; t[56]= '"上午/下午 "hh"時"mm"分"ss"秒 "'; + return t; } +/* repeated to satiate webpack */ +var table_fmt = { + 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 table_fmt = {}; -init_table(table_fmt); /* Defaults determined by systematically testing in Excel 2019 */ /* These formats appear to default to other formats in the table */ -var default_map = []; -var defi = 0; +var SSF_default_map = { + 5: 37, 6: 38, 7: 39, 8: 40, // 5 -> 37 ... 8 -> 40 -// 5 -> 37 ... 8 -> 40 -for(defi = 5; defi <= 8; ++defi) default_map[defi] = 32 + defi; + 23: 0, 24: 0, 25: 0, 26: 0, // 23 -> 0 ... 26 -> 0 -// 23 -> 0 ... 26 -> 0 -for(defi = 23; defi <= 26; ++defi) default_map[defi] = 0; + 27: 14, 28: 14, 29: 14, 30: 14, 31: 14, // 27 -> 14 ... 31 -> 14 -// 27 -> 14 ... 31 -> 14 -for(defi = 27; defi <= 31; ++defi) default_map[defi] = 14; -// 50 -> 14 ... 58 -> 14 -for(defi = 50; defi <= 58; ++defi) default_map[defi] = 14; + 50: 14, 51: 14, 52: 14, 53: 14, 54: 14, // 50 -> 14 ... 58 -> 14 + 55: 14, 56: 14, 57: 14, 58: 14, + 59: 1, 60: 2, 61: 3, 62: 4, // 59 -> 1 ... 62 -> 4 -// 59 -> 1 ... 62 -> 4 -for(defi = 59; defi <= 62; ++defi) default_map[defi] = defi - 58; -// 67 -> 9 ... 68 -> 10 -for(defi = 67; defi <= 68; ++defi) default_map[defi] = defi - 58; -// 72 -> 14 ... 75 -> 17 -for(defi = 72; defi <= 75; ++defi) default_map[defi] = defi - 58; + 67: 9, 68: 10, // 67 -> 9 ... 68 -> 10 + 69: 12, 70: 13, 71: 14, // 69 -> 12 ... 71 -> 14 + 72: 14, 73: 15, 74: 16, 75: 17, // 72 -> 14 ... 75 -> 17 + 76: 20, 77: 21, 78: 22, // 76 -> 20 ... 78 -> 22 + 79: 45, 80: 46, 81: 47, // 79 -> 45 ... 81 -> 47 + 82: 0 // 82 -> 0 ... 65536 -> 0 (omitted) +}; -// 69 -> 12 ... 71 -> 14 -for(defi = 67; defi <= 68; ++defi) default_map[defi] = defi - 57; - -// 76 -> 20 ... 78 -> 22 -for(defi = 76; defi <= 78; ++defi) default_map[defi] = defi - 56; - -// 79 -> 45 ... 81 -> 47 -for(defi = 79; defi <= 81; ++defi) default_map[defi] = defi - 34; - -// 82 -> 0 ... 65536 -> 0 (omitted) /* These formats technically refer to Accounting formats with no equivalent */ -var default_str = { +var SSF_default_str = { // 5 -- Currency, 0 decimal, black negative 5: '"$"#,##0_);\\("$"#,##0\\)', 63: '"$"#,##0_);\\("$"#,##0\\)', @@ -530,7 +543,7 @@ var default_str = { 44: '_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)' }; -function frac(x, D, mixed) { +function SSF_frac(x, D, mixed) { var sgn = x < 0 ? -1 : 1; var B = x * sgn; var P_2 = 0, P_1 = 1, P = 0; @@ -550,7 +563,7 @@ function frac(x, D, mixed) { var q = Math.floor(sgn * P/Q); return [q, sgn*P - q*Q, Q]; } -function parse_date_code(v,opts,b2) { +function SSF_parse_date_code(v,opts,b2) { if(v > 2958465 || v < 0) return null; var date = (v|0), time = Math.floor(86400 * (v - date)), dow=0; var dout=[]; @@ -571,7 +584,7 @@ function parse_date_code(v,opts,b2) { dout = [d.getFullYear(), d.getMonth()+1,d.getDate()]; dow = d.getDay(); if(date < 60) dow = (dow + 6) % 7; - if(b2) dow = fix_hijri(d, dout); + if(b2) dow = SSF_fix_hijri(d, dout); } out.y = dout[0]; out.m = dout[1]; out.d = dout[2]; out.S = time % 60; time = Math.floor(time / 60); @@ -580,64 +593,53 @@ function parse_date_code(v,opts,b2) { out.q = dow; return out; } -SSF.parse_date_code = parse_date_code; -var basedate = new Date(1899, 11, 31, 0, 0, 0); -var dnthresh = basedate.getTime(); -var base1904 = new Date(1900, 2, 1, 0, 0, 0); +var SSFbasedate = new Date(1899, 11, 31, 0, 0, 0); +var SSFdnthresh = SSFbasedate.getTime(); +var SSFbase1904 = new Date(1900, 2, 1, 0, 0, 0); function datenum_local(v, date1904) { var epoch = v.getTime(); if(date1904) epoch -= 1461*24*60*60*1000; - else if(v >= base1904) epoch += 24*60*60*1000; - return (epoch - (dnthresh + (v.getTimezoneOffset() - basedate.getTimezoneOffset()) * 60000)) / (24 * 60 * 60 * 1000); + else if(v >= SSFbase1904) epoch += 24*60*60*1000; + return (epoch - (SSFdnthresh + (v.getTimezoneOffset() - SSFbasedate.getTimezoneOffset()) * 60000)) / (24 * 60 * 60 * 1000); } -/* The longest 32-bit integer text is "-4294967296", exactly 11 chars */ -function general_fmt_int(v) { return v.toString(10); } -SSF._general_int = general_fmt_int; - /* ECMA-376 18.8.30 numFmt*/ /* Note: `toPrecision` uses standard form when prec > E and E >= -6 */ -var general_fmt_num = (function make_general_fmt_num() { - var trailing_zeroes_and_decimal = /(?:\.0*|(\.\d*[1-9])0+)$/; - function strip_decimal(o) { - return (o.indexOf(".") == -1) ? o : o.replace(trailing_zeroes_and_decimal, "$1"); - } +/* exponent >= -9 and <= 9 */ +function SSF_strip_decimal(o) { + return (o.indexOf(".") == -1) ? o : o.replace(/(?:\.0*|(\.\d*[1-9])0+)$/, "$1"); +} - /* General Exponential always shows 2 digits exp and trims the mantissa */ - var mantissa_zeroes_and_decimal = /(?:\.0*|(\.\d*[1-9])0+)[Ee]/; - var exp_with_single_digit = /(E[+-])(\d)$/; - function normalize_exp(o) { - if(o.indexOf("E") == -1) return o; - return o.replace(mantissa_zeroes_and_decimal,"$1E").replace(exp_with_single_digit,"$10$2"); - } +/* General Exponential always shows 2 digits exp and trims the mantissa */ +function SSF_normalize_exp(o) { + if(o.indexOf("E") == -1) return o; + return o.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2"); +} - /* exponent >= -9 and <= 9 */ - function small_exp(v) { - var w = (v<0?12:11); - var o = strip_decimal(v.toFixed(12)); if(o.length <= w) return o; - o = v.toPrecision(10); if(o.length <= w) return o; - return v.toExponential(5); - } +/* exponent >= -9 and <= 9 */ +function SSF_small_exp(v) { + var w = (v<0?12:11); + var o = SSF_strip_decimal(v.toFixed(12)); if(o.length <= w) return o; + o = v.toPrecision(10); if(o.length <= w) return o; + return v.toExponential(5); +} - /* exponent >= 11 or <= -10 likely exponential */ - function large_exp(v) { - var o = strip_decimal(v.toFixed(11)); - return (o.length > (v<0?12:11) || o === "0" || o === "-0") ? v.toPrecision(6) : o; - } +/* exponent >= 11 or <= -10 likely exponential */ +function SSF_large_exp(v) { + var o = SSF_strip_decimal(v.toFixed(11)); + return (o.length > (v<0?12:11) || o === "0" || o === "-0") ? v.toPrecision(6) : o; +} - function general_fmt_num_base(v) { - var V = Math.floor(Math.log(Math.abs(v))*Math.LOG10E), o; +function SSF_general_num(v) { + var V = Math.floor(Math.log(Math.abs(v))*Math.LOG10E), o; - if(V >= -4 && V <= -1) o = v.toPrecision(10+V); - else if(Math.abs(V) <= 9) o = small_exp(v); - else if(V === 10) o = v.toFixed(10).substr(0,12); - else o = large_exp(v); + if(V >= -4 && V <= -1) o = v.toPrecision(10+V); + else if(Math.abs(V) <= 9) o = SSF_small_exp(v); + else if(V === 10) o = v.toFixed(10).substr(0,12); + else o = SSF_large_exp(v); - return strip_decimal(normalize_exp(o.toUpperCase())); - } + return SSF_strip_decimal(SSF_normalize_exp(o.toUpperCase())); +} - return general_fmt_num_base; -})(); -SSF._general_num = general_fmt_num; /* "General" rules: @@ -646,22 +648,23 @@ SSF._general_num = general_fmt_num; - "up to 11 characters" displayed for numbers - Default date format (code 14) used for Dates + The longest 32-bit integer text is "-2147483648", exactly 11 chars TODO: technically the display depends on the width of the cell */ -function general_fmt(v, opts) { +function SSF_general(v, opts) { switch(typeof v) { case 'string': return v; case 'boolean': return v ? "TRUE" : "FALSE"; - case 'number': return (v|0) === v ? v.toString(10) : general_fmt_num(v); + case 'number': return (v|0) === v ? v.toString(10) : SSF_general_num(v); case 'undefined': return ""; case 'object': if(v == null) return ""; - if(v instanceof Date) return format(14, datenum_local(v, opts && opts.date1904), opts); + if(v instanceof Date) return SSF_format(14, datenum_local(v, opts && opts.date1904), opts); } throw new Error("unsupported value in General format: " + v); } -SSF._general = general_fmt; -function fix_hijri(date, o) { + +function SSF_fix_hijri(date, o) { /* TODO: properly adjust y/m/d and */ o[0] -= 581; var dow = date.getDay(); @@ -669,8 +672,7 @@ function fix_hijri(date, o) { return dow; } //var THAI_DIGITS = "\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59".split(""); -/*jshint -W086 */ -function write_date(type, fmt, val, ss0) { +function SSF_write_date(type, fmt, val, ss0) { var o="", ss=0, tt=0, y = val.y, out, outl = 0; switch(type) { case 98: /* 'b' buddhist year */ @@ -733,6 +735,9 @@ if(ss0 >= 2) tt = ss0 === 3 ? 1000 : 100; var outstr = outl > 0 ? pad0(out, outl) : ""; return outstr; } + + +/*jshint -W086 */ /*jshint +W086 */ function commaify(s) { var w = 3; @@ -741,17 +746,18 @@ function commaify(s) { for(; j!=s.length; j+=w) o+=(o.length > 0 ? "," : "") + s.substr(j,w); return o; } -var write_num = (function make_write_num(){ var pct1 = /%/g; function write_num_pct(type, fmt, val){ var sfmt = fmt.replace(pct1,""), mul = fmt.length - sfmt.length; return write_num(type, sfmt, val * Math.pow(10,2*mul)) + fill("%",mul); } + function write_num_cm(type, fmt, val){ var idx = fmt.length - 1; while(fmt.charCodeAt(idx-1) === 44) --idx; return write_num(type, fmt.substr(0,idx), val / Math.pow(10,3*(fmt.length-idx))); } + function write_num_exp(fmt, val){ var o; var idx = fmt.indexOf("E") - fmt.indexOf(".") - 1; @@ -860,7 +866,7 @@ function write_num_flt(type, fmt, val) { var oa = ""; if((r = fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(r[4].length,7); - ff = frac(aval, Math.pow(10,ri)-1, false); + ff = SSF_frac(aval, Math.pow(10,ri)-1, false); o = "" + sign; oa = write_num("n", r[1], ff[1]); if(oa.charAt(oa.length-1) == " ") oa = oa.substr(0,oa.length-1) + "0"; @@ -872,7 +878,7 @@ function write_num_flt(type, fmt, val) { } if((r = fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(Math.max(r[1].length, r[4].length),7); - ff = frac(aval, Math.pow(10,ri)-1, true); + ff = SSF_frac(aval, Math.pow(10,ri)-1, true); return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad_(ff[1],ri) + r[2] + "/" + r[3] + rpad_(ff[2],ri): fill(" ", 2*ri+1 + r[2].length + r[3].length)); } if((r = fmt.match(/^[#0?]+$/))) { @@ -978,7 +984,7 @@ return "." + $1 + fill("0", hashq(r[1]).length-$1.length); }); var oa = ""; if((r = fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(r[4].length,7); - ff = frac(aval, Math.pow(10,ri)-1, false); + ff = SSF_frac(aval, Math.pow(10,ri)-1, false); o = "" + sign; oa = write_num("n", r[1], ff[1]); if(oa.charAt(oa.length-1) == " ") oa = oa.substr(0,oa.length-1) + "0"; @@ -990,7 +996,7 @@ return "." + $1 + fill("0", hashq(r[1]).length-$1.length); }); } if((r = fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(Math.max(r[1].length, r[4].length),7); - ff = frac(aval, Math.pow(10,ri)-1, true); + ff = SSF_frac(aval, Math.pow(10,ri)-1, true); return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad_(ff[1],ri) + r[2] + "/" + r[3] + rpad_(ff[2],ri): fill(" ", 2*ri+1 + r[2].length + r[3].length)); } if((r = fmt.match(/^[#0?]+$/))) { @@ -1016,10 +1022,10 @@ return "." + $1 + fill("0", hashq(r[1]).length-$1.length); }); } throw new Error("unsupported format |" + fmt + "|"); } -return function write_num(type, fmt, val) { +function write_num(type, fmt, val) { return (val|0) === val ? write_num_int(type, fmt, val) : write_num_flt(type, fmt, val); -};})(); -function split_fmt(fmt) { +} +function SSF_split_fmt(fmt) { var out = []; var in_str = false/*, cc*/; for(var i = 0, j = 0; i < fmt.length; ++i) switch((/*cc=*/fmt.charCodeAt(i))) { @@ -1035,13 +1041,13 @@ function split_fmt(fmt) { if(in_str === true) throw new Error("Format |" + fmt + "| unterminated string "); return out; } -SSF._split = split_fmt; -var abstime = /\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/; + +var SSF_abstime = /\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/; function fmt_is_date(fmt) { var i = 0, /*cc = 0,*/ c = "", o = ""; while(i < fmt.length) { switch((c = fmt.charAt(i))) { - case 'G': if(isgeneral(fmt, i)) i+= 6; i++; break; + case 'G': if(SSF_isgeneral(fmt, i)) i+= 6; i++; break; case '"': for(;(/*cc=*/fmt.charCodeAt(++i)) !== 34 && i < fmt.length;){/*empty*/} ++i; break; case '\\': i+=2; break; case '_': i+=2; break; @@ -1060,7 +1066,7 @@ function fmt_is_date(fmt) { case '[': o = c; while(fmt.charAt(i++) !== ']' && i < fmt.length) o += fmt.charAt(i); - if(o.match(abstime)) return true; + if(o.match(SSF_abstime)) return true; break; case '.': /* falls through */ @@ -1078,7 +1084,7 @@ function fmt_is_date(fmt) { } return false; } -SSF.is_date = fmt_is_date; + function eval_fmt(fmt, v, opts, flen) { var out = [], o = "", i = 0, c = "", lst='t', dt, j, cc; var hr='H'; @@ -1086,7 +1092,7 @@ function eval_fmt(fmt, v, opts, flen) { while(i < fmt.length) { switch((c = fmt.charAt(i))) { case 'G': /* General */ - if(!isgeneral(fmt, i)) throw new Error('unrecognized character ' + c + ' in ' +fmt); + if(!SSF_isgeneral(fmt, i)) throw new Error('unrecognized character ' + c + ' in ' +fmt); out[out.length] = {t:'G', v:'General'}; i+=7; break; case '"': /* Literal text */ for(o="";(cc=fmt.charCodeAt(++i)) !== 34 && i < fmt.length;) o += String.fromCharCode(cc); @@ -1098,7 +1104,7 @@ function eval_fmt(fmt, v, opts, flen) { out[out.length] = {t:'T', v:v}; ++i; break; case 'B': case 'b': if(fmt.charAt(i+1) === "1" || fmt.charAt(i+1) === "2") { - if(dt==null) { dt=parse_date_code(v, opts, fmt.charAt(i+1) === "2"); if(dt==null) return ""; } + if(dt==null) { dt=SSF_parse_date_code(v, opts, fmt.charAt(i+1) === "2"); if(dt==null) return ""; } out[out.length] = {t:'X', v:fmt.substr(i,2)}; lst = c; i+=2; break; } /* falls through */ @@ -1107,14 +1113,14 @@ function eval_fmt(fmt, v, opts, flen) { /* falls through */ case 'm': case 'd': case 'y': case 'h': case 's': case 'e': case 'g': if(v < 0) return ""; - if(dt==null) { dt=parse_date_code(v, opts); if(dt==null) return ""; } + if(dt==null) { dt=SSF_parse_date_code(v, opts); if(dt==null) return ""; } o = c; while(++i < fmt.length && fmt.charAt(i).toLowerCase() === c) o+=c; if(c === 'm' && lst.toLowerCase() === 'h') c = 'M'; if(c === 'h') c = hr; out[out.length] = {t:c, v:o}; lst = c; break; case 'A': case 'a': case '上': var q={t:c, v:c}; - if(dt==null) dt=parse_date_code(v, opts); + if(dt==null) dt=SSF_parse_date_code(v, opts); if(fmt.substr(i, 3).toUpperCase() === "A/P") { if(dt!=null) q.v = dt.H >= 12 ? "P" : "A"; q.t = 'T'; hr='h';i+=3;} else if(fmt.substr(i,5).toUpperCase() === "AM/PM") { if(dt!=null) q.v = dt.H >= 12 ? "PM" : "AM"; q.t = 'T'; i+=5; hr='h'; } else if(fmt.substr(i,5).toUpperCase() === "上午/下午") { if(dt!=null) q.v = dt.H >= 12 ? "下午" : "上午"; q.t = 'T'; i+=5; hr='h'; } @@ -1125,8 +1131,8 @@ function eval_fmt(fmt, v, opts, flen) { o = c; while(fmt.charAt(i++) !== ']' && i < fmt.length) o += fmt.charAt(i); if(o.slice(-1) !== ']') throw 'unterminated "[" block: |' + o + '|'; - if(o.match(abstime)) { - if(dt==null) { dt=parse_date_code(v, opts); if(dt==null) return ""; } + if(o.match(SSF_abstime)) { + if(dt==null) { dt=SSF_parse_date_code(v, opts); if(dt==null) return ""; } out[out.length] = {t:'Z', v:o.toLowerCase()}; lst = o.charAt(1); } else if(o.indexOf("$") > -1) { @@ -1200,7 +1206,7 @@ if(dt.u >= 0.5) { dt.u = 0; ++dt.S; } case 't': case 'T': case ' ': case 'D': break; case 'X': out[i].v = ""; out[i].t = ";"; break; case 'd': case 'm': case 'y': case 'h': case 'H': case 'M': case 's': case 'e': case 'b': case 'Z': -out[i].v = write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0); +out[i].v = SSF_write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0); out[i].t = 't'; break; case 'n': case '?': jj = i+1; @@ -1215,7 +1221,7 @@ out[i].v = write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0); } nstr += out[i].v; i = jj-1; break; - case 'G': out[i].t = 't'; out[i].v = general_fmt(v,opts); break; + case 'G': out[i].t = 't'; out[i].v = SSF_general(v,opts); break; } } var vv = "", myv, ostr; @@ -1283,8 +1289,7 @@ out[i].v = write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0); for(i=0; i !== out.length; ++i) if(out[i] != null) retval += out[i].v; return retval; } -SSF._eval = eval_fmt; -var cfregex = /\[[=<>]/; + var cfregex2 = /\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/; function chkcond(v, rr) { if(rr == null) return false; @@ -1300,7 +1305,7 @@ function chkcond(v, rr) { return false; } function choose_fmt(f, v) { - var fmt = split_fmt(f); + var fmt = SSF_split_fmt(f); var l = fmt.length, lat = fmt[l-1].indexOf("@"); if(l<4 && lat>-1) --l; if(fmt.length > 4) throw new Error("cannot find right format for |" + fmt.join("|") + "|"); @@ -1313,14 +1318,14 @@ function choose_fmt(f, v) { } var ff = v > 0 ? fmt[0] : v < 0 ? fmt[1] : fmt[2]; if(fmt[0].indexOf("[") === -1 && fmt[1].indexOf("[") === -1) return [l, ff]; - if(fmt[0].match(cfregex) != null || fmt[1].match(cfregex) != null) { + if(fmt[0].match(/\[[=<>]/) != null || fmt[1].match(/\[[=<>]/) != null) { var m1 = fmt[0].match(cfregex2); var m2 = fmt[1].match(cfregex2); return chkcond(v, m1) ? [l, fmt[0]] : chkcond(v, m2) ? [l, fmt[1]] : [l, fmt[m1 != null && m2 != null ? 2 : 1]]; } return [l, ff]; } -function format(fmt,v,o) { +function SSF_format(fmt,v,o) { if(o == null) o = {}; var sfmt = ""; switch(typeof fmt) { @@ -1331,19 +1336,19 @@ function format(fmt,v,o) { case "number": if(fmt == 14 && o.dateNF) sfmt = o.dateNF; else sfmt = (o.table != null ? (o.table) : table_fmt)[fmt]; - if(sfmt == null) sfmt = (o.table && o.table[default_map[fmt]]) || table_fmt[default_map[fmt]]; - if(sfmt == null) sfmt = default_str[fmt] || "General"; + if(sfmt == null) sfmt = (o.table && o.table[SSF_default_map[fmt]]) || table_fmt[SSF_default_map[fmt]]; + if(sfmt == null) sfmt = SSF_default_str[fmt] || "General"; break; } - if(isgeneral(sfmt,0)) return general_fmt(v, o); + if(SSF_isgeneral(sfmt,0)) return SSF_general(v, o); if(v instanceof Date) v = datenum_local(v, o.date1904); var f = choose_fmt(sfmt, v); - if(isgeneral(f[1])) return general_fmt(v, o); + if(SSF_isgeneral(f[1])) return SSF_general(v, o); if(v === true) v = "TRUE"; else if(v === false) v = "FALSE"; else if(v === "" || v == null) return ""; return eval_fmt(f[1], v, o, f[0]); } -function load_entry(fmt, idx) { +function SSF_load(fmt, idx) { if(typeof idx != 'number') { idx = +idx || -1; for(var i = 0; i < 0x0188; ++i) { @@ -1355,36 +1360,24 @@ if(idx < 0) idx = 0x187; table_fmt[idx] = fmt; return idx; } -SSF.load = load_entry; -SSF._table = table_fmt; -SSF.get_table = function get_table() { return table_fmt; }; -SSF.load_table = function load_table(tbl) { +function SSF_load_table(tbl) { for(var i=0; i!=0x0188; ++i) - if(tbl[i] !== undefined) load_entry(tbl[i], i); -}; -SSF.init_table = init_table; -SSF.format = format; + if(tbl[i] !== undefined) SSF_load(tbl[i], i); } -make_ssf(SSF); -/* map from xlml named formats to SSF TODO: localize */ -var XLMLFormatMap/*{[string]:string}*/ = ({ - "General Number": "General", - "General Date": SSF._table[22], - "Long Date": "dddd, mmmm dd, yyyy", - "Medium Date": SSF._table[15], - "Short Date": SSF._table[14], - "Long Time": SSF._table[19], - "Medium Time": SSF._table[18], - "Short Time": SSF._table[20], - "Currency": '"$"#,##0.00_);[Red]\\("$"#,##0.00\\)', - "Fixed": SSF._table[2], - "Standard": SSF._table[4], - "Percent": SSF._table[10], - "Scientific": SSF._table[11], - "Yes/No": '"Yes";"Yes";"No";@', - "True/False": '"True";"True";"False";@', - "On/Off": '"Yes";"Yes";"No";@' -}); + +function make_ssf() { + table_fmt = SSF_init_table(); +} + +var SSF = { + format: SSF_format, + load: SSF_load, + _table: table_fmt, + load_table: SSF_load_table, + parse_date_code: SSF_parse_date_code, + is_date: fmt_is_date, + get_table: function get_table() { return SSF._table = table_fmt; } +}; var SSFImplicit/*{[number]:string}*/ = ({ "5": '"$"#,##0_);\\("$"#,##0\\)', @@ -1429,7 +1422,7 @@ var SSFImplicit/*{[number]:string}*/ = ({ /* dateNF parse TODO: move to SSF */ var dateNFregex = /[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g; function dateNF_regex(dateNF) { - var fmt = typeof dateNF == "number" ? SSF._table[dateNF] : dateNF; + var fmt = typeof dateNF == "number" ? table_fmt[dateNF] : dateNF; fmt = fmt.replace(dateNFregex, "(\\d+)"); return new RegExp("^" + fmt + "$"); } @@ -1974,7 +1967,7 @@ function read(blob, options) { } switch(type || "base64") { case "file": return read_file(blob, options); - case "base64": return parse(s2a(Base64.decode(blob)), options); + case "base64": return parse(s2a(Base64_decode(blob)), options); case "binary": return parse(s2a(blob), options); } return parse(blob, options); @@ -2291,7 +2284,7 @@ function write(cfb, options) { switch(options && options.type || "buffer") { case "file": get_fs(); fs.writeFileSync(options.filename, (o)); return o; case "binary": return typeof o == "string" ? o : a2s(o); - case "base64": return Base64.encode(typeof o == "string" ? o : a2s(o)); + case "base64": return Base64_encode(typeof o == "string" ? o : a2s(o)); case "buffer": if(has_buf) return Buffer.isBuffer(o) ? o : Buffer_from(o); /* falls through */ case "array": return typeof o == "string" ? s2a(o) : o; @@ -3000,7 +2993,7 @@ function get_content_type(fi, fp) { /* 76 character chunks TODO: intertwine encoding */ function write_base64_76(bstr) { - var data = Base64.encode(bstr); + var data = Base64_encode(bstr); var o = []; for(var i = 0; i < data.length; i+= 76) o.push(data.slice(i, i+76)); return o.join("\r\n") + "\r\n"; @@ -3081,7 +3074,7 @@ function parse_mime(cfb, data, root) { } ++di; switch(cte.toLowerCase()) { - case 'base64': fdata = s2a(Base64.decode(data.slice(di).join(""))); break; + case 'base64': fdata = s2a(Base64_decode(data.slice(di).join(""))); break; case 'quoted-printable': fdata = parse_quoted_printable(data.slice(di)); break; default: throw new Error("Unsupported Content-Transfer-Encoding " + cte); } @@ -3403,8 +3396,8 @@ function parse_isodur(s) { return sec; } -var good_pd_date = new Date('2017-02-19T19:06:09.000Z'); -if(isNaN(good_pd_date.getFullYear())) good_pd_date = new Date('2/19/17'); +var good_pd_date_1 = new Date('2017-02-19T19:06:09.000Z'); +var good_pd_date = isNaN(good_pd_date_1.getFullYear()) ? new Date('2/19/17') : good_pd_date_1; var good_pd = good_pd_date.getFullYear() == 2017; /* parses a date as a local date */ function parseDate(str, fixdate) { @@ -3429,12 +3422,30 @@ if(fixdate > 0) d.setTime(d.getTime() + d.getTimezoneOffset() * 60 * 1000); function cc2str(arr, debomit) { if(has_buf && Buffer.isBuffer(arr)) { if(debomit) { - if(arr[0] == 0xFF && arr[1] == 0xFE) return arr.slice(2).toString("utf16le"); - if(arr[1] == 0xFE && arr[2] == 0xFF) return utf16beread(arr.slice(2).toString("binary")); + if(arr[0] == 0xFF && arr[1] == 0xFE) return utf8write(arr.slice(2).toString("utf16le")); + if(arr[1] == 0xFE && arr[2] == 0xFF) return utf8write(utf16beread(arr.slice(2).toString("binary"))); } return arr.toString("binary"); } - /* TODO: investigate performance degradation of TextEncoder in Edge 13 */ + + if(typeof TextDecoder !== "undefined") try { + if(debomit) { + if(arr[0] == 0xFF && arr[1] == 0xFE) return utf8write(new TextDecoder("utf-16le").decode(arr.slice(2))); + if(arr[0] == 0xFE && arr[1] == 0xFF) return utf8write(new TextDecoder("utf-16be").decode(arr.slice(2))); + } + var rev = { + "\u20ac": "\x80", "\u201a": "\x82", "\u0192": "\x83", "\u201e": "\x84", + "\u2026": "\x85", "\u2020": "\x86", "\u2021": "\x87", "\u02c6": "\x88", + "\u2030": "\x89", "\u0160": "\x8a", "\u2039": "\x8b", "\u0152": "\x8c", + "\u017d": "\x8e", "\u2018": "\x91", "\u2019": "\x92", "\u201c": "\x93", + "\u201d": "\x94", "\u2022": "\x95", "\u2013": "\x96", "\u2014": "\x97", + "\u02dc": "\x98", "\u2122": "\x99", "\u0161": "\x9a", "\u203a": "\x9b", + "\u0153": "\x9c", "\u017e": "\x9e", "\u0178": "\x9f" + }; + if(Array.isArray(arr)) arr = new Uint8Array(arr); + return new TextDecoder("latin1").decode(arr).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g, function(c) { return rev[c] || c; }); + } catch(e) {} + var o = []; for(var i = 0; i != arr.length; ++i) o.push(String.fromCharCode(arr[i])); return o.join(""); @@ -3479,13 +3490,15 @@ function fuzzydate(s) { return o; } -var safe_split_regex = "abacaba".split(/(:?b)/i).length == 5; -function split_regex(str, re, def) { - if(safe_split_regex || typeof re == "string") return str.split(re); - var p = str.split(re), o = [p[0]]; - for(var i = 1; i < p.length; ++i) { o.push(def); o.push(p[i]); } - return o; -} +var split_regex = (function() { + var safe_split_regex = "abacaba".split(/(:?b)/i).length == 5; + return function split_regex(str, re, def) { + if(safe_split_regex || typeof re == "string") return str.split(re); + var p = str.split(re), o = [p[0]]; + for(var i = 1; i < p.length; ++i) { o.push(def); o.push(p[i]); } + return o; + }; +})(); function getdatastr(data) { if(!data) return null; if(data.content && data.type) return cc2str(data.content, true); @@ -3593,9 +3606,8 @@ function resolve_path(path, base) { } var XML_HEADER = '\r\n'; var attregexg=/([^"\s?>\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g; -var tagregex=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/mg; - -if(!(XML_HEADER.match(tagregex))) tagregex = /<[^>]*>/g; +var tagregex1=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/mg, tagregex2 = /<[^>]*>/g; +var tagregex = XML_HEADER.match(tagregex1) ? tagregex1 : tagregex2; var nsregex=/<\w*:/, nsregex2 = /<(\/?)\w+:/; function parsexmltag(tag, skip_root, skip_LC) { var z = ({}); @@ -3684,7 +3696,7 @@ function parsexmlbool(value) { } } -var utf8read = function utf8reada(orig) { +function utf8reada(orig) { var out = "", i = 0, c = 0, d = 0, e = 0, f = 0, w = 0; while (i < orig.length) { c = orig.charCodeAt(i++); @@ -3699,9 +3711,31 @@ var utf8read = function utf8reada(orig) { out += String.fromCharCode(0xDC00 + (w&1023)); } return out; -}; +} -var utf8write = function(orig) { +function utf8readb(data) { + var out = new_raw_buf(2*data.length), w, i, j = 1, k = 0, ww=0, c; + for(i = 0; i < data.length; i+=j) { + j = 1; + if((c=data.charCodeAt(i)) < 128) w = c; + else if(c < 224) { w = (c&31)*64+(data.charCodeAt(i+1)&63); j=2; } + else if(c < 240) { w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63); j=3; } + else { j = 4; + w = (c & 7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63); + w -= 65536; ww = 0xD800 + ((w>>>10)&1023); w = 0xDC00 + (w&1023); + } + if(ww !== 0) { out[k++] = ww&255; out[k++] = ww>>>8; ww = 0; } + out[k++] = w%256; out[k++] = w>>>8; + } + return out.slice(0,k).toString('ucs2'); +} + +function utf8readc(data) { return Buffer_from(data, 'binary').toString('utf8'); } + +var utf8corpus = "foo bar baz\u00e2\u0098\u0083\u00f0\u009f\u008d\u00a3"; +var utf8read = has_buf && (utf8readc(utf8corpus) == utf8reada(utf8corpus) && utf8readc || utf8readb(utf8corpus) == utf8reada(utf8corpus) && utf8readb) || utf8reada; + +var utf8write = has_buf ? function(data) { return Buffer_from(data, 'utf8').toString("binary"); } : function(orig) { var out = [], i = 0, c = 0, d = 0; while(i < orig.length) { c = orig.charCodeAt(i++); @@ -3727,31 +3761,6 @@ var utf8write = function(orig) { return out.join(""); }; -if(has_buf) { - var utf8readb = function utf8readb(data) { - var out = Buffer.alloc(2*data.length), w, i, j = 1, k = 0, ww=0, c; - for(i = 0; i < data.length; i+=j) { - j = 1; - if((c=data.charCodeAt(i)) < 128) w = c; - else if(c < 224) { w = (c&31)*64+(data.charCodeAt(i+1)&63); j=2; } - else if(c < 240) { w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63); j=3; } - else { j = 4; - w = (c & 7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63); - w -= 65536; ww = 0xD800 + ((w>>>10)&1023); w = 0xDC00 + (w&1023); - } - if(ww !== 0) { out[k++] = ww&255; out[k++] = ww>>>8; ww = 0; } - out[k++] = w%256; out[k++] = w>>>8; - } - return out.slice(0,k).toString('ucs2'); - }; - var corpus = "foo bar baz\u00e2\u0098\u0083\u00f0\u009f\u008d\u00a3"; - if(utf8read(corpus) == utf8readb(corpus)) utf8read = utf8readb; - var utf8readc = function utf8readc(data) { return Buffer_from(data, 'binary').toString('utf8'); }; - if(utf8read(corpus) == utf8readc(corpus)) utf8read = utf8readc; - - utf8write = function(data) { return Buffer_from(data, 'utf8').toString("binary"); }; -} - // matches ... extracts content var matchtag = (function() { var mtcache = ({}); @@ -3901,39 +3910,44 @@ function write_double_le(b, v, idx) { b[idx + 7] = (e >> 4) | bs; } -var __toBuffer = function(bufs) { var x=[],w=10240; for(var i=0;i 0 ? __utf8(b, i+4,i+4+len-1) : "";}; -var ___lpstr = __lpstr; -var __cpstr = function(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; -var ___cpstr = __cpstr; -var __lpwstr = function(b,i) { var len = 2*__readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; -var ___lpwstr = __lpwstr; -var __lpp4, ___lpp4; -__lpp4 = ___lpp4 = function lpp4_(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf16le(b, i+4,i+4+len) : "";}; -var __8lpp4 = function(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len) : "";}; -var ___8lpp4 = __8lpp4; -var __double, ___double; -__double = ___double = function(b, idx) { return read_double_le(b, idx);}; +var ___toBuffer = function(bufs) { var x=[],w=10240; for(var i=0;i 0 && Buffer.isBuffer(bufs[0][0])) ? Buffer.concat(bufs[0].map(function(x) { return Buffer.isBuffer(x) ? x : Buffer_from(x); })) : ___toBuffer(bufs);} : ___toBuffer; + +var ___utf16le = function(b,s,e) { var ss=[]; for(var i=s; i 0 ? __utf8(b, i+4,i+4+len-1) : "";}; +var __lpstr = ___lpstr; + +var ___cpstr = function(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; +var __cpstr = ___cpstr; + +var ___lpwstr = function(b,i) { var len = 2*__readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; +var __lpwstr = ___lpwstr; + +var ___lpp4 = function lpp4_(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf16le(b, i+4,i+4+len) : "";}; +var __lpp4 = ___lpp4; + +var ___8lpp4 = function(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len) : "";}; +var __8lpp4 = ___8lpp4; + +var ___double = function(b, idx) { return read_double_le(b, idx);}; +var __double = ___double; + var is_buf = function is_buf_a(a) { return Array.isArray(a) || (typeof Uint8Array !== "undefined" && a instanceof Uint8Array); }; if(has_buf) { - __utf16le = function(b,s,e) { if(!Buffer.isBuffer(b)) return ___utf16le(b,s,e); return b.toString('utf16le',s,e).replace(chr0,'')/*.replace(chr1,'!')*/; }; - __hexlify = function(b,s,l) { return Buffer.isBuffer(b) ? b.toString('hex',s,s+l) : ___hexlify(b,s,l); }; __lpstr = function lpstr_b(b, i) { if(!Buffer.isBuffer(b)) return ___lpstr(b, i); var len = b.readUInt32LE(i); return len > 0 ? b.toString('utf8',i+4,i+4+len-1) : "";}; __cpstr = function cpstr_b(b, i) { if(!Buffer.isBuffer(b)) return ___cpstr(b, i); var len = b.readUInt32LE(i); return len > 0 ? b.toString('utf8',i+4,i+4+len-1) : "";}; __lpwstr = function lpwstr_b(b, i) { if(!Buffer.isBuffer(b)) return ___lpwstr(b, i); var len = 2*b.readUInt32LE(i); return b.toString('utf16le',i+4,i+4+len-1);}; __lpp4 = function lpp4_b(b, i) { if(!Buffer.isBuffer(b)) return ___lpp4(b, i); var len = b.readUInt32LE(i); return b.toString('utf16le',i+4,i+4+len);}; __8lpp4 = function lpp4_8b(b, i) { if(!Buffer.isBuffer(b)) return ___8lpp4(b, i); var len = b.readUInt32LE(i); return b.toString('utf8',i+4,i+4+len);}; - __utf8 = function utf8_b(b, s, e) { return (Buffer.isBuffer(b)) ? b.toString('utf8',s,e) : ___utf8(b,s,e); }; - __toBuffer = function(bufs) { return (bufs[0].length > 0 && Buffer.isBuffer(bufs[0][0])) ? Buffer.concat(bufs[0].map(function(x) { return Buffer.isBuffer(x) ? x : Buffer_from(x); })) : ___toBuffer(bufs);}; - bconcat = function(bufs) { return Buffer.concat(bufs.map(function(buf) { return Buffer.isBuffer(buf) ? buf : Buffer_from(buf); })); }; __double = function double_(b, i) { if(Buffer.isBuffer(b)) return b.readDoubleLE(i); return ___double(b,i); }; is_buf = function is_buf_b(a) { return Buffer.isBuffer(a) || Array.isArray(a) || (typeof Uint8Array !== "undefined" && a instanceof Uint8Array); }; } @@ -4305,8 +4319,8 @@ function safe_decode_range(range) { function safe_format_cell(cell, v) { var q = (cell.t == 'd' && v instanceof Date); - if(cell.z != null) try { return (cell.w = SSF.format(cell.z, q ? datenum(v) : v)); } catch(e) { } - try { return (cell.w = SSF.format((cell.XF||{}).numFmtId||(q ? 14 : 0), q ? datenum(v) : v)); } catch(e) { return ''+v; } + if(cell.z != null) try { return (cell.w = SSF_format(cell.z, q ? datenum(v) : v)); } catch(e) { } + try { return (cell.w = SSF_format((cell.XF||{}).numFmtId||(q ? 14 : 0), q ? datenum(v) : v)); } catch(e) { return ''+v; } } function format_cell(cell, v, o) { @@ -4370,9 +4384,9 @@ function sheet_add_aoa(_ws, data, opts) { else if(typeof cell.v === 'number') cell.t = 'n'; else if(typeof cell.v === 'boolean') cell.t = 'b'; else if(cell.v instanceof Date) { - cell.z = o.dateNF || SSF._table[14]; - if(o.cellDates) { cell.t = 'd'; cell.w = SSF.format(cell.z, datenum(cell.v)); } - else { cell.t = 'n'; cell.v = datenum(cell.v); cell.w = SSF.format(cell.z, cell.v); } + cell.z = o.dateNF || table_fmt[14]; + if(o.cellDates) { cell.t = 'd'; cell.w = SSF_format(cell.z, datenum(cell.v)); } + else { cell.t = 'n'; cell.v = datenum(cell.v); cell.w = SSF_format(cell.z, cell.v); } } else cell.t = 's'; } @@ -4704,6 +4718,7 @@ function parse_ClipboardFormatOrAnsiString(o) { return parse_ClipboardFormatOrSt function parse_ClipboardFormatOrUnicodeString(o) { return parse_ClipboardFormatOrString(o, 2); } /* [MS-OLEPS] 2.2 PropertyType */ +// Note: some tree shakers cannot handle VT_VECTOR | $CONST, hence extra vars //var VT_EMPTY = 0x0000; //var VT_NULL = 0x0001; var VT_I2 = 0x0002; @@ -4738,6 +4753,8 @@ var VT_CF = 0x0047; //var VT_CLSID = 0x0048; //var VT_VERSIONED_STREAM = 0x0049; var VT_VECTOR = 0x1000; +var VT_VECTOR_VARIANT = 0x100C; +var VT_VECTOR_LPSTR = 0x101E; //var VT_ARRAY = 0x2000; var VT_STRING = 0x0050; // 2.3.3.1.11 VtString @@ -4757,8 +4774,8 @@ var DocSummaryPIDDSI = { 0x09: { n: 'HiddenCount', t: VT_I4 }, 0x0a: { n: 'MultimediaClipCount', t: VT_I4 }, 0x0b: { n: 'ScaleCrop', t: VT_BOOL }, -0x0c: { n: 'HeadingPairs', t: VT_VECTOR | VT_VARIANT }, -0x0d: { n: 'TitlesOfParts', t: VT_VECTOR | VT_LPSTR }, +0x0c: { n: 'HeadingPairs', t: VT_VECTOR_VARIANT /* VT_VECTOR | VT_VARIANT */ }, +0x0d: { n: 'TitlesOfParts', t: VT_VECTOR_LPSTR /* VT_VECTOR | VT_LPSTR */ }, 0x0e: { n: 'Manager', t: VT_STRING }, 0x0f: { n: 'Company', t: VT_STRING }, 0x10: { n: 'LinksUpToDate', t: VT_BOOL }, @@ -4887,7 +4904,7 @@ function rgbify(arr) { return arr.map(function(x) { return [(x>>16)&255,(x>>8)&2 /* [MS-XLS] 2.5.161 */ /* [MS-XLSB] 2.5.75 Icv */ -var _XLSIcv = rgbify([ +var _XLSIcv = rgbify([ /* Color Constants */ 0x000000, 0xFFFFFF, @@ -4993,7 +5010,19 @@ var BErr = { 0x2B: "#GETTING_DATA", 0xFF: "#WTF?" }; -var RBErr = evert_num(BErr); +//var RBErr = evert_num(BErr); +var RBErr = { + "#NULL!": 0x00, + "#DIV/0!": 0x07, + "#VALUE!": 0x0F, + "#REF!": 0x17, + "#NAME?": 0x1D, + "#NUM!": 0x24, + "#N/A": 0x2A, + "#GETTING_DATA": 0x2B, + "#WTF?": 0xFF +}; + /* Parts enumerated in OPC spec, MS-XLSB and MS-XLSX */ /* 12.3 Part Summary */ /* 14.2 Part Summary */ @@ -5247,18 +5276,17 @@ function parse_ct(data) { return ct; } -var CTYPE_XML_ROOT = writextag('Types', null, { - 'xmlns': XMLNS.CT, - 'xmlns:xsd': XMLNS.xsd, - 'xmlns:xsi': XMLNS.xsi -}); - function write_ct(ct, opts) { var type2ct/*{[string]:Array}*/ = evert_arr(ct2type); var o = [], v; o[o.length] = (XML_HEADER); - o[o.length] = (CTYPE_XML_ROOT); + o[o.length] = writextag('Types', null, { + 'xmlns': XMLNS.CT, + 'xmlns:xsd': XMLNS.xsd, + 'xmlns:xsi': XMLNS.xsi + }); + o = o.concat([ ['xml', 'application/xml'], ['bin', 'application/vnd.ms-excel.sheet.binary.macroEnabled.main'], @@ -5389,14 +5417,12 @@ function parse_rels(data, currentFilePath) { } -var RELS_ROOT = writextag('Relationships', null, { - //'xmlns:ns0': XMLNS.RELS, - 'xmlns': XMLNS.RELS -}); - /* TODO */ function write_rels(rels) { - var o = [XML_HEADER, RELS_ROOT]; + var o = [XML_HEADER, writextag('Relationships', null, { + //'xmlns:ns0': XMLNS.RELS, + 'xmlns': XMLNS.RELS + })]; keys(rels['!id']).forEach(function(rid) { o[o.length] = (writextag('Relationship', null, rels['!id'][rid])); }); @@ -5404,7 +5430,6 @@ function write_rels(rels) { return o.join(""); } -var RELS_EXTERN = [RELS.HLINK, RELS.XPATH, RELS.XMISS]; function add_rels(rels, rId, f, type, relobj, targetmode) { if(!relobj) relobj = {}; if(!rels['!id']) rels['!id'] = {}; @@ -5415,7 +5440,7 @@ function add_rels(rels, rId, f, type, relobj, targetmode) { relobj.Type = type; relobj.Target = f; if(targetmode) relobj.TargetMode = targetmode; - else if(RELS_EXTERN.indexOf(relobj.Type) > -1) relobj.TargetMode = "External"; + else if([RELS.HLINK, RELS.XPATH, RELS.XMISS].indexOf(relobj.Type) > -1) relobj.TargetMode = "External"; if(rels['!id'][relobj.Id]) throw new Error("Cannot rewrite rId " + rId); rels['!id'][relobj.Id] = relobj; rels[('/' + relobj.Target).replace("//","/")] = relobj; @@ -7629,7 +7654,7 @@ function dbf_to_aoa(buf, opts) { var out = []; var d = (new_raw_buf(1)); switch(opts.type) { - case 'base64': d = s2a(Base64.decode(buf)); break; + case 'base64': d = s2a(Base64_decode(buf)); break; case 'binary': d = s2a(buf); break; case 'buffer': case 'array': d = buf; break; @@ -7959,7 +7984,7 @@ var SYLK = (function() { /* TODO: find an actual specification */ function sylk_to_aoa(d, opts) { switch(opts.type) { - case 'base64': return sylk_to_aoa_str(Base64.decode(d), opts); + case 'base64': return sylk_to_aoa_str(Base64_decode(d), opts); case 'binary': return sylk_to_aoa_str(d, opts); case 'buffer': return sylk_to_aoa_str(has_buf && Buffer.isBuffer(d) ? d.toString('binary') : a2s(d), opts); case 'array': return sylk_to_aoa_str(cc2str(d), opts); @@ -8004,7 +8029,7 @@ var SYLK = (function() { else if(val === 'FALSE') val = false; else if(!isNaN(fuzzynum(val))) { val = fuzzynum(val); - if(next_cell_format !== null && SSF.is_date(next_cell_format)) val = numdate(val); + if(next_cell_format !== null && fmt_is_date(next_cell_format)) val = numdate(val); } else if(!isNaN(fuzzydate(val).getDate())) { val = parseDate(val); } @@ -8162,7 +8187,7 @@ var SYLK = (function() { var DIF = (function() { function dif_to_aoa(d, opts) { switch(opts.type) { - case 'base64': return dif_to_aoa_str(Base64.decode(d), opts); + case 'base64': return dif_to_aoa_str(Base64_decode(d), opts); case 'binary': return dif_to_aoa_str(d, opts); case 'buffer': return dif_to_aoa_str(has_buf && Buffer.isBuffer(d) ? d.toString('binary') : a2s(d), opts); case 'array': return dif_to_aoa_str(cc2str(d), opts); @@ -8249,7 +8274,7 @@ var DIF = (function() { push_value(o, 1, 0, (!DIF_XL || isNaN(cell.v)) ? cell.v : '="' + cell.v + '"'); break; case 'd': - if(!cell.w) cell.w = SSF.format(cell.z || SSF._table[14], datenum(parseDate(cell.v))); + if(!cell.w) cell.w = SSF_format(cell.z || table_fmt[14], datenum(parseDate(cell.v))); if(DIF_XL) push_value(o, 0, cell.w, "V"); else push_value(o, 1, 0, cell.w); break; @@ -8346,7 +8371,7 @@ var ETH = (function() { case 'd': var t = datenum(parseDate(cell.v)); oo[2] = 'vtc'; oo[3] = 'nd'; oo[4] = ""+t; - oo[5] = cell.w || SSF.format(cell.z || SSF._table[14], t); + oo[5] = cell.w || SSF_format(cell.z || table_fmt[14], t); break; case 'e': continue; } @@ -8487,12 +8512,12 @@ var PRN = (function() { else if(s == "FALSE") { cell.t = 'b'; cell.v = false; } else if(!isNaN(v = fuzzynum(s))) { cell.t = 'n'; if(o.cellText !== false) cell.w = s; cell.v = v; } else if(!isNaN(fuzzydate(s).getDate()) || _re && s.match(_re)) { - cell.z = o.dateNF || SSF._table[14]; + cell.z = o.dateNF || table_fmt[14]; var k = 0; if(_re && s.match(_re)){ s=dateNF_fix(s, o.dateNF, (s.match(_re)||[])); k=1; } if(o.cellDates) { cell.t = 'd'; cell.v = parseDate(s, k); } else { cell.t = 'n'; cell.v = datenum(parseDate(s, k)); } - if(o.cellText !== false) cell.w = SSF.format(cell.z, cell.v instanceof Date ? datenum(cell.v):cell.v); + if(o.cellText !== false) cell.w = SSF_format(cell.z, cell.v instanceof Date ? datenum(cell.v):cell.v); if(!o.cellNF) delete cell.z; } else { cell.t = 's'; @@ -8528,7 +8553,7 @@ var PRN = (function() { function prn_to_sheet(d, opts) { var str = "", bytes = opts.type == 'string' ? [0,0,0,0] : firstbyte(d, opts); switch(opts.type) { - case 'base64': str = Base64.decode(d); break; + case 'base64': str = Base64_decode(d); break; case 'binary': str = d; break; case 'buffer': if(opts.codepage == 65001) str = d.toString('utf8'); // TODO: test if buf @@ -8606,7 +8631,7 @@ var WK_ = (function() { function lotus_to_workbook(d, opts) { switch(opts.type) { - case 'base64': return lotus_to_workbook_buf(s2a(Base64.decode(d)), opts); + case 'base64': return lotus_to_workbook_buf(s2a(Base64_decode(d)), opts); case 'binary': return lotus_to_workbook_buf(s2a(d), opts); case 'buffer': case 'array': return lotus_to_workbook_buf(d, opts); @@ -8649,7 +8674,7 @@ var WK_ = (function() { case 0x10: /* FORMULA */ /* TODO: actual translation of the format code */ if(RT == 0x0E && (val[2] & 0x70) == 0x70 && (val[2] & 0x0F) > 1 && (val[2] & 0x0F) < 15) { - val[1].z = o.dateNF || SSF._table[14]; + val[1].z = o.dateNF || table_fmt[14]; if(o.cellDates) { val[1].t = 'd'; val[1].v = numdate(val[1].v); } } @@ -10017,7 +10042,7 @@ function parse_FilePass(blob, length, opts) { var RTF = (function() { function rtf_to_sheet(d, opts) { switch(opts.type) { - case 'base64': return rtf_to_sheet_str(Base64.decode(d), opts); + case 'base64': return rtf_to_sheet_str(Base64_decode(d), opts); case 'binary': return rtf_to_sheet_str(d, opts); case 'buffer': return rtf_to_sheet_str(has_buf && Buffer.isBuffer(d) ? d.toString('binary') : a2s(d), opts); case 'array': return rtf_to_sheet_str(cc2str(d), opts); @@ -10472,8 +10497,8 @@ function parse_fonts(t, styles, themes, opts) { /* 18.8.31 numFmts CT_NumFmts */ function parse_numFmts(t, styles, opts) { styles.NumberFmt = []; - var k/*Array*/ = (keys(SSF._table)); - for(var i=0; i < k.length; ++i) styles.NumberFmt[k[i]] = SSF._table[k[i]]; + var k/*Array*/ = (keys(table_fmt)); + for(var i=0; i < k.length; ++i) styles.NumberFmt[k[i]] = table_fmt[k[i]]; var m = t[0].match(tagregex); if(!m) return; for(i=0; i < m.length; ++i) { @@ -10488,7 +10513,7 @@ function parse_numFmts(t, styles, opts) { for(j = 0x188; j > 0x3c; --j) if(styles.NumberFmt[j] == null) break; styles.NumberFmt[j] = f; } - SSF.load(f,j); + SSF_load(f,j); } } break; case '': break; @@ -10846,7 +10871,7 @@ function write_BrtBeginTableStyles(cnt, defTableStyle, defPivotStyle) { function parse_sty_bin(data, themes, opts) { var styles = {}; styles.NumberFmt = ([]); - for(var y in SSF._table) styles.NumberFmt[y] = SSF._table[y]; + for(var y in table_fmt) styles.NumberFmt[y] = table_fmt[y]; styles.CellXf = []; styles.Fonts = []; @@ -10855,7 +10880,7 @@ function parse_sty_bin(data, themes, opts) { recordhopper(data, function hopper_sty(val, R, RT) { switch(RT) { case 0x002C: /* BrtFmt */ - styles.NumberFmt[val[0]] = val[1]; SSF.load(val[1], val[0]); + styles.NumberFmt[val[0]] = val[1]; SSF_load(val[1], val[0]); break; case 0x002B: /* BrtFont */ styles.Fonts.push(val); @@ -11516,6 +11541,7 @@ function parse_xlmeta_xml(data, name, opts) { return out; var pass = false; var metatype = 2; + var lastmeta; data.replace(tagregex, function(x) { var y = parsexmltag(x); switch (strip_ns(y[0])) { @@ -11533,6 +11559,9 @@ function parse_xlmeta_xml(data, name, opts) { case "": break; case "": break; @@ -11571,6 +11600,13 @@ function parse_xlmeta_xml(data, name, opts) { case "": pass = false; break; + case "= 2)) throw new Error("empty sheet name"); - if (quoteCharacters.test(sname)) return "'" + sname + "'"; + if (/[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(sname)) return "'" + sname + "'"; return sname; } function get_ixti_raw(supbooks, ixti, opts) { @@ -14556,7 +14591,7 @@ function get_cell_style(styles, cell, opts) { var i = 0x3c, len = styles.length; if(z == null && opts.ssf) { for(; i < 0x188; ++i) if(opts.ssf[i] == null) { - SSF.load(cell.z, i); + SSF_load(cell.z, i); // $FlowIgnore opts.ssf[i] = cell.z; opts.revssf[cell.z] = z = i; @@ -14577,28 +14612,28 @@ function get_cell_style(styles, cell, opts) { function safe_format(p, fmtid, fillid, opts, themes, styles) { try { - if(opts.cellNF) p.z = SSF._table[fmtid]; + if(opts.cellNF) p.z = table_fmt[fmtid]; } catch(e) { if(opts.WTF) throw e; } if(p.t === 'z' && !opts.cellStyles) return; if(p.t === 'd' && typeof p.v === 'string') p.v = parseDate(p.v); if((!opts || opts.cellText !== false) && p.t !== 'z') try { - if(SSF._table[fmtid] == null) SSF.load(SSFImplicit[fmtid] || "General", fmtid); + if(table_fmt[fmtid] == null) SSF_load(SSFImplicit[fmtid] || "General", fmtid); if(p.t === 'e') p.w = p.w || BErr[p.v]; else if(fmtid === 0) { if(p.t === 'n') { - if((p.v|0) === p.v) p.w = SSF._general_int(p.v); - else p.w = SSF._general_num(p.v); + if((p.v|0) === p.v) p.w = p.v.toString(10); + else p.w = SSF_general_num(p.v); } else if(p.t === 'd') { var dd = datenum(p.v); - if((dd|0) === dd) p.w = SSF._general_int(dd); - else p.w = SSF._general_num(dd); + if((dd|0) === dd) p.w = dd.toString(10); + else p.w = SSF_general_num(dd); } else if(p.v === undefined) return ""; - else p.w = SSF._general(p.v,_ssfopts); + else p.w = SSF_general(p.v,_ssfopts); } - else if(p.t === 'd') p.w = SSF.format(fmtid,datenum(p.v),_ssfopts); - else p.w = SSF.format(fmtid,p.v,_ssfopts); + else if(p.t === 'd') p.w = SSF_format(fmtid,datenum(p.v),_ssfopts); + else p.w = SSF_format(fmtid,p.v,_ssfopts); } catch(e) { if(opts.WTF) throw e; } if(!opts.cellStyles) return; if(fillid != null) try { @@ -14894,7 +14929,7 @@ function write_ws_xml_cell(cell, ref, ws, opts) { cell.t = 'n'; vv = ''+(cell.v = datenum(parseDate(cell.v))); } - if(typeof cell.z === 'undefined') cell.z = SSF._table[14]; + if(typeof cell.z === 'undefined') cell.z = table_fmt[14]; break; default: vv = cell.v; break; } @@ -15098,7 +15133,7 @@ return function parse_ws_xml_data(sdata, s, opts, guess, themes, styles) { } } safe_format(p, fmtid, fillid, opts, themes, styles); - if(opts.cellDates && do_format && p.t == 'n' && SSF.is_date(SSF._table[fmtid])) { p.t = 'd'; p.v = numdate(p.v); } + if(opts.cellDates && do_format && p.t == 'n' && fmt_is_date(table_fmt[fmtid])) { p.t = 'd'; p.v = numdate(p.v); } if(tag.cm && opts.xlmeta) { var cm = (opts.xlmeta.Cell||[])[+tag.cm-1]; if(cm && cm.type == 'XLDAPR') p.D = true; @@ -15878,8 +15913,8 @@ function parse_ws_bin(data, _opts, idx, rels, wb, themes, styles) { if(refguess.s.c > C) refguess.s.c = C; if(refguess.e.r < row.r) refguess.e.r = row.r; if(refguess.e.c < C) refguess.e.c = C; - if(opts.cellDates && cf && p.t == 'n' && SSF.is_date(SSF._table[cf.numFmtId])) { - var _d = SSF.parse_date_code(p.v); if(_d) { p.t = 'd'; p.v = new Date(_d.y, _d.m-1,_d.d,_d.H,_d.M,_d.S,_d.u); } + if(opts.cellDates && cf && p.t == 'n' && fmt_is_date(table_fmt[cf.numFmtId])) { + var _d = SSF_parse_date_code(p.v); if(_d) { p.t = 'd'; p.v = new Date(_d.y, _d.m-1,_d.d,_d.H,_d.M,_d.S,_d.u); } } if(cm) { if(cm.type == 'XLDAPR') p.D = true; @@ -16085,7 +16120,7 @@ function write_ws_bin_cell(ba, cell, R, C, opts, ws, last_seen) { case 'b': vv = cell.v ? "1" : "0"; break; case 'd': // no BrtCellDate :( cell = dup(cell); - cell.z = cell.z || SSF._table[14]; + cell.z = cell.z || table_fmt[14]; cell.v = datenum(parseDate(cell.v)); cell.t = 'n'; break; /* falls through */ @@ -17268,10 +17303,13 @@ if((j=y[1].indexOf(":")) === -1) z[y[1]] = y[2].slice(1,y[2].length-1); // ---- +/* map from xlml named formats to SSF TODO: localize */ +var XLMLFormatMap; + function xlml_format(format, value) { var fmt = XLMLFormatMap[format] || unescapexml(format); - if(fmt === "General") return SSF._general(value); - return SSF.format(fmt, value); + if(fmt === "General") return SSF_general(value); + return SSF_format(fmt, value); } function xlml_set_custprop(Custprops, key, cp, val) { @@ -17293,18 +17331,18 @@ function safe_format_xlml(cell, nf, o) { if(cell.t === 'e') { cell.w = cell.w || BErr[cell.v]; } else if(nf === "General") { if(cell.t === 'n') { - if((cell.v|0) === cell.v) cell.w = SSF._general_int(cell.v); - else cell.w = SSF._general_num(cell.v); + if((cell.v|0) === cell.v) cell.w = cell.v.toString(10); + else cell.w = SSF_general_num(cell.v); } - else cell.w = SSF._general(cell.v); + else cell.w = SSF_general(cell.v); } else cell.w = xlml_format(nf||"General", cell.v); } catch(e) { if(o.WTF) throw e; } try { var z = XLMLFormatMap[nf]||nf||"General"; if(o.cellNF) cell.z = z; - if(o.cellDates && cell.t == 'n' && SSF.is_date(z)) { - var _d = SSF.parse_date_code(cell.v); if(_d) { cell.t = 'd'; cell.v = new Date(_d.y, _d.m-1,_d.d,_d.H,_d.M,_d.S,_d.u); } + if(o.cellDates && cell.t == 'n' && fmt_is_date(z)) { + var _d = SSF_parse_date_code(cell.v); if(_d) { cell.t = 'd'; cell.v = new Date(_d.y, _d.m-1,_d.d,_d.H,_d.M,_d.S,_d.u); } } } catch(e) { if(o.WTF) throw e; } } @@ -17396,7 +17434,7 @@ function xlml_clean_comment(comment) { /* TODO: Everything */ function parse_xlml_xml(d, _opts) { var opts = _opts || {}; - make_ssf(SSF); + make_ssf(); var str = debom(xlml_normalize(d)); if(opts.type == 'binary' || opts.type == 'array' || opts.type == 'base64') { if(typeof $cptable !== 'undefined') str = $cptable.utils.decode(65001, char_codes(str)); @@ -17406,7 +17444,28 @@ function parse_xlml_xml(d, _opts) { opening = opening.replace(/".*?"/g, ""); if((opening.indexOf(">") & 1023) > Math.min((opening.indexOf(",") & 1023), (opening.indexOf(";")&1023))) { var _o = dup(opts); _o.type = "string"; return PRN.to_workbook(str, _o); } if(opening.indexOf("= 0) ishtml = true; }); - if(ishtml) return HTML_.to_workbook(str, opts); + if(ishtml) return html_to_workbook(str, opts); + + XLMLFormatMap = ({ + "General Number": "General", + "General Date": table_fmt[22], + "Long Date": "dddd, mmmm dd, yyyy", + "Medium Date": table_fmt[15], + "Short Date": table_fmt[14], + "Long Time": table_fmt[19], + "Medium Time": table_fmt[18], + "Short Time": table_fmt[20], + "Currency": '"$"#,##0.00_);[Red]\\("$"#,##0.00\\)', + "Fixed": table_fmt[2], + "Standard": table_fmt[4], + "Percent": table_fmt[10], + "Scientific": table_fmt[11], + "Yes/No": '"Yes";"Yes";"No";@', + "True/False": '"True";"True";"False";@', + "On/Off": '"Yes";"Yes";"No";@' + }); + + var Rn; var state = [], tmp; if(DENSE != null && opts.dense == null) opts.dense = DENSE; @@ -17548,8 +17607,8 @@ for(var cma = c; cma <= cc; ++cma) { case 'numberformat' /*case 'NumberFormat'*/: stag.nf = unescapexml(xlml_parsexmltag(Rn[0]).Format || "General"); if(XLMLFormatMap[stag.nf]) stag.nf = XLMLFormatMap[stag.nf]; - for(var ssfidx = 0; ssfidx != 0x188; ++ssfidx) if(SSF._table[ssfidx] == stag.nf) break; - if(ssfidx == 0x188) for(ssfidx = 0x39; ssfidx != 0x188; ++ssfidx) if(SSF._table[ssfidx] == null) { SSF.load(stag.nf, ssfidx); break; } + for(var ssfidx = 0; ssfidx != 0x188; ++ssfidx) if(table_fmt[ssfidx] == stag.nf) break; + if(ssfidx == 0x188) for(ssfidx = 0x39; ssfidx != 0x188; ++ssfidx) if(table_fmt[ssfidx] == null) { SSF_load(stag.nf, ssfidx); break; } break; case 'column' /*case 'Column'*/: @@ -18116,7 +18175,7 @@ Workbook.WBProps.date1904 = true; if(!opts.bookSheets && !opts.bookProps) out.Sheets = sheets; out.SheetNames = sheetnames; out.Workbook = Workbook; - out.SSF = SSF.get_table(); + out.SSF = dup(table_fmt); out.Props = Props; out.Custprops = Custprops; return out; @@ -18125,7 +18184,7 @@ Workbook.WBProps.date1904 = true; function parse_xlml(data, opts) { fix_read_opts(opts=opts||{}); switch(opts.type||"base64") { - case "base64": return parse_xlml_xml(Base64.decode(data), opts); + case "base64": return parse_xlml_xml(Base64_decode(data), opts); case "binary": case "buffer": case "file": return parse_xlml_xml(data, opts); case "array": return parse_xlml_xml(a2s(data), opts); } @@ -18152,7 +18211,7 @@ function write_sty_xlml(wb, opts) { var styles = ['']; opts.cellXfs.forEach(function(xf, id) { var payload = []; - payload.push(writextag('NumberFormat', null, {"ss:Format": escapexml(SSF._table[xf.numFmtId])})); + payload.push(writextag('NumberFormat', null, {"ss:Format": escapexml(table_fmt[xf.numFmtId])})); var o = {"ss:ID": "s" + (21+id)}; styles.push(writextag('Style', payload.join(""), o)); @@ -18334,7 +18393,7 @@ function write_ws_xlml_cell(cell, ref, ws, opts, idx, wb, addr){ case 'n': t = 'Number'; p = String(cell.v); break; case 'b': t = 'Boolean'; p = (cell.v ? "1" : "0"); break; case 'e': t = 'Error'; p = BErr[cell.v]; break; - case 'd': t = 'DateTime'; p = new Date(cell.v).toISOString(); if(cell.z == null) cell.z = cell.z || SSF._table[14]; break; + case 'd': t = 'DateTime'; p = new Date(cell.v).toISOString(); if(cell.z == null) cell.z = cell.z || table_fmt[14]; break; case 's': t = 'String'; p = escapexlml(cell.v||""); break; } /* TODO: cell style */ @@ -18414,9 +18473,9 @@ function write_ws_xlml(idx, opts, wb) { } function write_xlml(wb, opts) { if(!opts) opts = {}; - if(!wb.SSF) wb.SSF = SSF.get_table(); + if(!wb.SSF) wb.SSF = dup(table_fmt); if(wb.SSF) { - make_ssf(SSF); SSF.load_table(wb.SSF); + make_ssf(); SSF_load_table(wb.SSF); // $FlowIgnore opts.revssf = evert_num(wb.SSF); opts.revssf[wb.SSF[65535]] = 0; opts.ssf = wb.SSF; @@ -18518,21 +18577,21 @@ function safe_format_xf(p, opts, date1904) { var fmtid = 0; try { fmtid = p.z || p.XF.numFmtId || 0; - if(opts.cellNF) p.z = SSF._table[fmtid]; + if(opts.cellNF) p.z = table_fmt[fmtid]; } catch(e) { if(opts.WTF) throw e; } if(!opts || opts.cellText !== false) try { if(p.t === 'e') { p.w = p.w || BErr[p.v]; } else if(fmtid === 0 || fmtid == "General") { if(p.t === 'n') { - if((p.v|0) === p.v) p.w = SSF._general_int(p.v); - else p.w = SSF._general_num(p.v); + if((p.v|0) === p.v) p.w = p.v.toString(10); + else p.w = SSF_general_num(p.v); } - else p.w = SSF._general(p.v); + else p.w = SSF_general(p.v); } - else p.w = SSF.format(fmtid,p.v, {date1904:!!date1904, dateNF: opts && opts.dateNF}); + else p.w = SSF_format(fmtid,p.v, {date1904:!!date1904, dateNF: opts && opts.dateNF}); } catch(e) { if(opts.WTF) throw e; } - if(opts.cellDates && fmtid && p.t == 'n' && SSF.is_date(SSF._table[fmtid] || String(fmtid))) { - var _d = SSF.parse_date_code(p.v); if(_d) { p.t = 'd'; p.v = new Date(_d.y, _d.m-1,_d.d,_d.H,_d.M,_d.S,_d.u); } + if(opts.cellDates && fmtid && p.t == 'n' && fmt_is_date(table_fmt[fmtid] || String(fmtid))) { + var _d = SSF_parse_date_code(p.v); if(_d) { p.t = 'd'; p.v = new Date(_d.y, _d.m-1,_d.d,_d.H,_d.M,_d.S,_d.u); } } } @@ -18926,15 +18985,15 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; case 0x041e /* Format */: { /* val = [id, fmt] */ if(opts.biff == 4) { BIFF2FmtTable[BIFF2Fmt++] = val[1]; - for(var b4idx = 0; b4idx < BIFF2Fmt + 163; ++b4idx) if(SSF._table[b4idx] == val[1]) break; - if(b4idx >= 163) SSF.load(val[1], BIFF2Fmt + 163); + for(var b4idx = 0; b4idx < BIFF2Fmt + 163; ++b4idx) if(table_fmt[b4idx] == val[1]) break; + if(b4idx >= 163) SSF_load(val[1], BIFF2Fmt + 163); } - else SSF.load(val[1], val[0]); + else SSF_load(val[1], val[0]); } break; case 0x001e /* BIFF2FORMAT */: { BIFF2FmtTable[BIFF2Fmt++] = val; - for(var b2idx = 0; b2idx < BIFF2Fmt + 163; ++b2idx) if(SSF._table[b2idx] == val) break; - if(b2idx >= 163) SSF.load(val, BIFF2Fmt + 163); + for(var b2idx = 0; b2idx < BIFF2Fmt + 163; ++b2idx) if(table_fmt[b2idx] == val) break; + if(b2idx >= 163) SSF_load(val, BIFF2Fmt + 163); } break; case 0x00e5 /* MergeCells */: merges = merges.concat(val); break; @@ -19018,175 +19077,11 @@ wb.opts.Date1904 = Workbook.WBProps.date1904 = val; break; if(!cur_sheet) Workbook.WBProps.CodeName = val || "ThisWorkbook"; else wsprops.CodeName = val || wsprops.name; } break; - case 0x0055 /* DefColWidth */: - case 0x0225 /* DefaultRowHeight */: - case 0x005e /* Uncalced */: - case 0x01af /* Prot4Rev */: case 0x01bc /* Prot4RevPass */: /*TODO: Revision Control*/ - case 0x005b /* FileSharing */: - case 0x00ff /* ExtSST */: - case 0x0863 /* BookExt */: - case 0x08a6 /* RichTextStream */: - case 0x00e9 /* BkHim */: - case 0x0060 /* Template */: - case 0x00da /* BookBool */: - case 0x0160 /* UsesELFs */: - case 0x089a /* MTRSettings */: - case 0x000b: case 0x020b /* Index */: - case 0x105c /* ClrtClient */: - case 0x001d /* Selection */: - case 0x0014 /* Header */: - case 0x0015 /* Footer */: - case 0x0083 /* HCenter */: - case 0x0084 /* VCenter */: - case 0x004d /* Pls */: - case 0x00ab /* GCW */: - case 0x0094 /* LHRecord */: - case 0x00d7 /* DBCell */: - case 0x01c2 /* EntExU2 */: - case 0x00b0 /* SxView */: - case 0x00b1 /* Sxvd */: - case 0x00b2 /* SXVI */: - case 0x0100 /* SXVDEx */: - case 0x00b4 /* SxIvd */: - case 0x00cd /* SXString */: - case 0x0097 /* Sync */: - case 0x0087 /* Addin */: - case 0x00c5 /* SXDI */: - case 0x00b5 /* SXLI */: - case 0x00f1 /* SXEx */: - case 0x0802 /* QsiSXTag */: - case 0x0868 /* Feat */: - case 0x0867 /* FeatHdr */: case 0x0871 /* FeatHdr11 */: - case 0x0872 /* Feature11 */: case 0x0878 /* Feature12 */: case 0x0877 /* List12 */: - case 0x01c1 /* RecalcId */: - case 0x0099 /* DxGCol */: - case 0x1060 /* Fbi */: case 0x1068 /* Fbi2 */: case 0x1066 /* GelFrame */: - case 0x0031 /* Font */: - case 0x087c /* XFCRC */: - case 0x0293 /* Style */: - case 0x0892 /* StyleExt */: - case 0x00dd /* ScenarioProtect */: - case 0x0063 /* ObjProtect */: - case 0x0879 /* CondFmt12 */: - case 0x0236 /* Table */: - case 0x088e /* TableStyles */: - case 0x088f /* TableStyle */: - case 0x0890 /* TableStyleElement */: - case 0x00d5 /* SXStreamID */: - case 0x00e3 /* SXVS */: - case 0x0051 /* DConRef */: - case 0x0864 /* SXAddl */: - case 0x01b5 /* DConBin */: - case 0x0052 /* DConName */: - case 0x00b6 /* SXPI */: - case 0x00fb /* SxFormat */: - case 0x00f7 /* SxSelect */: - case 0x00f0 /* SxRule */: - case 0x00f2 /* SxFilt */: - case 0x00f5 /* SxItm */: - case 0x00f4 /* SxDXF */: - case 0x00ae /* ScenMan */: - case 0x0050 /* DCon */: - case 0x086c /* CellWatch */: - case 0x002a /* PrintRowCol */: - case 0x002b /* PrintGrid */: - case 0x0033 /* PrintSize */: - case 0x0059 /* XCT */: - case 0x005a /* CRN */: - case 0x00a0 /* Scl */: - case 0x0862 /* SheetExt */: - case 0x01bd /* ObNoMacros */: - case 0x00d3 /* ObProj */: - case 0x0897 /* GUIDTypeLib */: - case 0x080b /* WOpt */: - case 0x00ef /* PhoneticInfo */: - case 0x00de /* OleObjectSize */: - case 0x088d /* DXF */: - case 0x01be /* Dv */: case 0x01b2 /* DVal */: - case 0x1051 /* BRAI */: case 0x1003 /* Series */: case 0x100d /* SeriesText */: - case 0x0876 /* DConn */: - case 0x00dc /* DbOrParamQry */: - case 0x0803 /* DBQueryExt */: - case 0x080a /* OleDbConn */: - case 0x0804 /* ExtString */: - case 0x104e /* IFmtRecord */: - case 0x01b0 /* CondFmt */: case 0x01b1 /* CF */: case 0x087a /* CF12 */: case 0x087b /* CFEx */: - case 0x01c0 /* Excel9File */: - case 0x1001 /* Units */: - case 0x00e1 /* InterfaceHdr' */: case 0x00c1 /* Mms */: case 0x00e2 /* InterfaceEnd */: case 0x0161 /* DSF */: - case 0x009c /* BuiltInFnGroupCount */: /* 2.4.30 0x0E or 0x10 but excel 2011 generates 0x11? */ break; - case 0x003d /* Window1 */: case 0x008d /* HideObj */: case 0x0082 /* GridSet */: case 0x0080 /* Guts */: - case 0x01a9 /* UserBView */: case 0x01aa /* UserSViewBegin */: case 0x01ab /* UserSViewEnd */: - case 0x0041 /* Pane */: - case 0x1063 /* Dat */: - case 0x1033 /* Begin */: case 0x1034 /* End */: - case 0x0852 /* StartBlock */: case 0x0853 /* EndBlock */: - case 0x1032 /* Frame */: case 0x101a /* Area */: - case 0x101d /* Axis */: case 0x1021 /* AxisLine */: case 0x101e /* Tick */: - case 0x1046 /* AxesUsed */: - case 0x089d /* CrtLayout12 */: case 0x08a7 /* CrtLayout12A */: case 0x1022 /* CrtLink */: case 0x101c /* CrtLine */: case 0x089e /* CrtMlFrt */: case 0x089f /* CrtMlFrtContinue */: - case 0x1007 /* LineFormat */: case 0x100a /* AreaFormat */: - case 0x1002 /* Chart */: case 0x103a /* Chart3d */: case 0x105f /* Chart3DBarShape */: case 0x1014 /* ChartFormat */: case 0x0850 /* ChartFrtInfo */: - case 0x1035 /* PlotArea */: case 0x1064 /* PlotGrowth */: - case 0x1016 /* SeriesList */: case 0x104a /* SerParent */: case 0x104b /* SerAuxTrend */: - case 0x1006 /* DataFormat */: case 0x1045 /* SerToCrt */: case 0x1026 /* FontX */: - case 0x1020 /* CatSerRange */: case 0x1062 /* AxcExt */: case 0x105d /* SerFmt */: - case 0x1044 /* ShtProps */: - case 0x1024 /* DefaultText */: case 0x1025 /* Text */: case 0x0856 /* CatLab */: - case 0x086b /* DataLabExtContents */: - case 0x1015 /* Legend */: case 0x1043 /* LegendException */: - case 0x1019 /* Pie */: case 0x101b /* Scatter */: - case 0x100b /* PieFormat */: case 0x1009 /* MarkerFormat */: - case 0x0854 /* StartObject */: case 0x0855 /* EndObject */: - case 0x1050 /* AlRuns */: case 0x1027 /* ObjectLink */: - case 0x1065 /* SIIndex */: - case 0x100c /* AttachedLabel */: case 0x0857 /* YMult */: - case 0x1018 /* Line */: case 0x1017 /* Bar */: - case 0x103f /* Surf */: - case 0x1041 /* AxisParent */: - case 0x104f /* Pos */: - case 0x101f /* ValueRange */: - case 0x0810 /* SXViewEx9 */: - case 0x0858 /* SXViewLink */: - case 0x0859 /* PivotChartBits */: - case 0x1048 /* SBaseRef */: - case 0x08a5 /* TextPropsStream */: - case 0x08c9 /* LnExt */: - case 0x08ca /* MkrExt */: - case 0x08cb /* CrtCoopt */: - case 0x01ad /* Qsi */: case 0x0807 /* Qsif */: case 0x0806 /* Qsir */: - case 0x0805 /* TxtQry */: - case 0x009b /* FilterMode */: - case 0x009e /* AutoFilter */: case 0x009d /* AutoFilterInfo */: - case 0x087e /* AutoFilter12 */: - case 0x0874 /* DropDownObjIds */: - case 0x0090 /* Sort */: - case 0x0895 /* SortData */: - case 0x08a4 /* ShapePropsStream */: - case 0x00ec /* MsoDrawing */: case 0x00eb /* MsoDrawingGroup*/: case 0x00ed /* MsoDrawingSelection */: - case 0x0801 /* WebPub */: case 0x08c0 /* AutoWebPub */: - case 0x089c /* HeaderFooter */: case 0x0866 /* HFPicture */: case 0x088b /* PLV */: - case 0x001b /* HorizontalPageBreaks */: case 0x001a /* VerticalPageBreaks */: - case 0x0040 /* Backup */: case 0x089b /* CompressPictures */: case 0x088c /* Compat12 */: - case 0x003c /* 'Continue' */: case 0x087f /* 'ContinueFrt12' */: - case 0x085a /* FrtFontList */: case 0x0851 /* 'FrtWrapper' */: - case 0x00ea /* TabIdConf */: case 0x103e /* Radar */: case 0x1040 /* RadarArea */: case 0x103d /* DropBar */: case 'Intl': case 'CoordList': case 'SerAuxErrBar': - case 0x0045 /* BIFF2FONTCLR */: case 0x001f /* BIFF2FMTCNT */: case 0x0032 /* BIFF2FONTXTRA */: - case 0x0043 /* BIFF2XF */: case 0x0243 /* BIFF3XF */: case 0x0443 /* BIFF4XF */: - case 0x0044 /* BIFF2XFINDEX */: - case 0x0056 /* BIFF4FMTCNT */: case 0x0008 /* BIFF2ROW */: case 0x003e /* BIFF2WINDOW2 */: - case 0x00af /* SCENARIO */: case 0x103c /* PicF */: case 0x086a /* DataLabExt */: - case 0x01b9 /* Lel */: case 0x1061 /* BopPop */: case 0x1067 /* BopPopCustom */: case 0x0813 /* RealTimeData */: - case 0x0095 /* LHNGraph */: case 0x009a /* FnGroupName */: case 0x00c2 /* AddMenu */: case 0x0098 /* LPr */: - case 0x08c1 /* ListObj */: case 0x08c2 /* ListField */: - case 0x013f /* RRSort */: - case 0x0418 /* BigName */: - case 0x00bf /* ToolbarHdr */: case 0x00c0/* ToolbarEnd */: - case 0x0034 /* DDEObjName */: - case 0x08d6 /* FRTArchId$ */: break; - default: if(options.WTF) throw 'Unrecognized Record 0x' + RecordType.toString(16); } - } else blob.l += length; + } else { + if(!R) console.error("Missing Info for XLS Record 0x" + RecordType.toString(16)); + blob.l += length; + } } wb.SheetNames=keys(Directory).sort(function(a,b) { return Number(a) - Number(b); }).map(function(x){return Directory[x].name;}); if(!options.bookSheets) wb.Sheets=Sheets; @@ -19198,7 +19093,7 @@ if(!cur_sheet) Workbook.WBProps.CodeName = val || "ThisWorkbook"; } else wb.Preamble=Preamble; if(wb.Sheets) FilterDatabases.forEach(function(r,i) { wb.Sheets[wb.SheetNames[i]]['!autofilter'] = r; }); wb.Strings = sst; - wb.SSF = SSF.get_table(); + wb.SSF = dup(table_fmt); if(opts.enc) wb.Encryption = opts.enc; if(themes) wb.Themes = themes; wb.Metadata = {}; @@ -19271,7 +19166,7 @@ if(cfb.FullPaths) { WB = CFB.find(cfb, '/Workbook') || CFB.find(cfb, '/Book'); } else { switch(options.type) { - case 'base64': cfb = s2a(Base64.decode(cfb)); break; + case 'base64': cfb = s2a(Base64_decode(cfb)); break; case 'binary': cfb = s2a(cfb); break; case 'buffer': break; case 'array': if(!Array.isArray(cfb)) cfb = Array.prototype.slice.call(cfb); break; @@ -21010,10 +20905,10 @@ function write_biff8_buf(wb, opts) { var bufs = []; if(wb && !wb.SSF) { - wb.SSF = SSF.get_table(); + wb.SSF = dup(table_fmt); } if(wb && wb.SSF) { - make_ssf(SSF); SSF.load_table(wb.SSF); + make_ssf(); SSF_load_table(wb.SSF); // $FlowIgnore o.revssf = evert_num(wb.SSF); o.revssf[wb.SSF[65535]] = 0; o.ssf = wb.SSF; @@ -21050,134 +20945,126 @@ function write_biff_buf(wb, opts) { throw new Error("invalid type " + o.bookType + " for BIFF"); } /* note: browser DOM element cannot see mso- style attrs, must parse */ -var HTML_ = (function() { - function html_to_sheet(str, _opts) { - var opts = _opts || {}; - if(DENSE != null && opts.dense == null) opts.dense = DENSE; - var ws = opts.dense ? ([]) : ({}); - str = str.replace(//g, ""); - var mtch = str.match(/"); - var mtch2 = str.match(/<\/table/i); - var i = mtch.index, j = mtch2 && mtch2.index || str.length; - var rows = split_regex(str.slice(i, j), /(:?]*>)/i, ""); - var R = -1, C = 0, RS = 0, CS = 0; - var range = {s:{r:10000000, c:10000000},e:{r:0,c:0}}; - var merges = []; - for(i = 0; i < rows.length; ++i) { - var row = rows[i].trim(); - var hd = row.slice(0,3).toLowerCase(); - if(hd == "/i); - for(j = 0; j < cells.length; ++j) { - var cell = cells[j].trim(); - if(!cell.match(/")) > -1) m = m.slice(cc+1); - for(var midx = 0; midx < merges.length; ++midx) { - var _merge = merges[midx]; - if(_merge.s.c == C && _merge.s.r < R && R <= _merge.e.r) { C = _merge.e.c + 1; midx = -1; } - } - var tag = parsexmltag(cell.slice(0, cell.indexOf(">"))); - CS = tag.colspan ? +tag.colspan : 1; - if((RS = +tag.rowspan)>1 || CS>1) merges.push({s:{r:R,c:C},e:{r:R + (RS||1) - 1, c:C + CS - 1}}); - var _t = tag.t || tag["data-t"] || ""; - /* TODO: generate stub cells */ - if(!m.length) { C += CS; continue; } - m = htmldecode(m); - if(range.s.r > R) range.s.r = R; if(range.e.r < R) range.e.r = R; - if(range.s.c > C) range.s.c = C; if(range.e.c < C) range.e.c = C; - if(!m.length) { C += CS; continue; } - var o = {t:'s', v:m}; - if(opts.raw || !m.trim().length || _t == 's'){} - else if(m === 'TRUE') o = {t:'b', v:true}; - else if(m === 'FALSE') o = {t:'b', v:false}; - else if(!isNaN(fuzzynum(m))) o = {t:'n', v:fuzzynum(m)}; - else if(!isNaN(fuzzydate(m).getDate())) { - o = ({t:'d', v:parseDate(m)}); - if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}); - o.z = opts.dateNF || SSF._table[14]; - } - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = o; } - else ws[encode_cell({r:R, c:C})] = o; - C += CS; +function html_to_sheet(str, _opts) { + var opts = _opts || {}; + if(DENSE != null && opts.dense == null) opts.dense = DENSE; + var ws = opts.dense ? ([]) : ({}); + str = str.replace(//g, ""); + var mtch = str.match(/
"); + var mtch2 = str.match(/<\/table/i); + var i = mtch.index, j = mtch2 && mtch2.index || str.length; + var rows = split_regex(str.slice(i, j), /(:?]*>)/i, ""); + var R = -1, C = 0, RS = 0, CS = 0; + var range = {s:{r:10000000, c:10000000},e:{r:0,c:0}}; + var merges = []; + for(i = 0; i < rows.length; ++i) { + var row = rows[i].trim(); + var hd = row.slice(0,3).toLowerCase(); + if(hd == "/i); + for(j = 0; j < cells.length; ++j) { + var cell = cells[j].trim(); + if(!cell.match(/")) > -1) m = m.slice(cc+1); + for(var midx = 0; midx < merges.length; ++midx) { + var _merge = merges[midx]; + if(_merge.s.c == C && _merge.s.r < R && R <= _merge.e.r) { C = _merge.e.c + 1; midx = -1; } } + var tag = parsexmltag(cell.slice(0, cell.indexOf(">"))); + CS = tag.colspan ? +tag.colspan : 1; + if((RS = +tag.rowspan)>1 || CS>1) merges.push({s:{r:R,c:C},e:{r:R + (RS||1) - 1, c:C + CS - 1}}); + var _t = tag.t || tag["data-t"] || ""; + /* TODO: generate stub cells */ + if(!m.length) { C += CS; continue; } + m = htmldecode(m); + if(range.s.r > R) range.s.r = R; if(range.e.r < R) range.e.r = R; + if(range.s.c > C) range.s.c = C; if(range.e.c < C) range.e.c = C; + if(!m.length) { C += CS; continue; } + var o = {t:'s', v:m}; + if(opts.raw || !m.trim().length || _t == 's'){} + else if(m === 'TRUE') o = {t:'b', v:true}; + else if(m === 'FALSE') o = {t:'b', v:false}; + else if(!isNaN(fuzzynum(m))) o = {t:'n', v:fuzzynum(m)}; + else if(!isNaN(fuzzydate(m).getDate())) { + o = ({t:'d', v:parseDate(m)}); + 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; } + else ws[encode_cell({r:R, c:C})] = o; + C += CS; } - ws['!ref'] = encode_range(range); - if(merges.length) ws["!merges"] = merges; - return ws; } - function html_to_book(str, opts) { - var mtch = str.match(/[\s\S]*?<\/table>/gi); - if(!mtch || mtch.length == 0) throw new Error("Invalid HTML: could not find
"); - if(mtch.length == 1) return sheet_to_workbook(html_to_sheet(mtch[0], opts), opts); - var wb = book_new(); - mtch.forEach(function(s, idx) { book_append_sheet(wb, html_to_sheet(s, opts), "Sheet" + (idx+1)); }); - return wb; - } - function make_html_row(ws, r, R, o) { - var M = (ws['!merges'] ||[]); - var oo = []; - for(var C = r.s.c; C <= r.e.c; ++C) { - var RS = 0, CS = 0; - for(var j = 0; j < M.length; ++j) { - if(M[j].s.r > R || M[j].s.c > C) continue; - if(M[j].e.r < R || M[j].e.c < C) continue; - if(M[j].s.r < R || M[j].s.c < C) { RS = -1; break; } - 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]; - /* TODO: html entities */ - var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; - var sp = ({}); - if(RS > 1) sp.rowspan = RS; - if(CS > 1) sp.colspan = CS; - if(o.editable) w = '' + w + ''; - else if(cell) { - sp["data-t"] = cell && cell.t || 'z'; - if(cell.v != null) sp["data-v"] = cell.v; - if(cell.z != null) sp["data-z"] = cell.z; - if(cell.l && (cell.l.Target || "#").charAt(0) != "#") w = '' + w + ''; - } - sp.id = (o.id || "sjs") + "-" + coord; - oo.push(writextag('td', w, sp)); + ws['!ref'] = encode_range(range); + if(merges.length) ws["!merges"] = merges; + return ws; +} +function make_html_row(ws, r, R, o) { + var M = (ws['!merges'] ||[]); + var oo = []; + for(var C = r.s.c; C <= r.e.c; ++C) { + var RS = 0, CS = 0; + for(var j = 0; j < M.length; ++j) { + if(M[j].s.r > R || M[j].s.c > C) continue; + if(M[j].e.r < R || M[j].e.c < C) continue; + if(M[j].s.r < R || M[j].s.c < C) { RS = -1; break; } + RS = M[j].e.r - M[j].s.r + 1; CS = M[j].e.c - M[j].s.c + 1; break; } - var preamble = ""; - return preamble + oo.join("") + ""; + if(RS < 0) continue; + var coord = encode_cell({r:R,c:C}); + var cell = o.dense ? (ws[R]||[])[C] : ws[coord]; + /* TODO: html entities */ + var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; + var sp = ({}); + if(RS > 1) sp.rowspan = RS; + if(CS > 1) sp.colspan = CS; + if(o.editable) w = '' + w + ''; + else if(cell) { + sp["data-t"] = cell && cell.t || 'z'; + if(cell.v != null) sp["data-v"] = cell.v; + if(cell.z != null) sp["data-z"] = cell.z; + if(cell.l && (cell.l.Target || "#").charAt(0) != "#") w = '' + w + ''; + } + sp.id = (o.id || "sjs") + "-" + coord; + oo.push(writextag('td', w, sp)); } - function make_html_preamble(ws, R, o) { - var out = []; - return out.join("") + ''; - } - var _BEGIN = 'SheetJS Table Export'; - var _END = ''; - function sheet_to_html(ws, opts/*, wb:?Workbook*/) { - var o = opts || {}; - var header = o.header != null ? o.header : _BEGIN; - var footer = o.footer != null ? o.footer : _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); - return out.join(""); + var preamble = ""; + return preamble + oo.join("") + ""; +} - } - return { - to_workbook: html_to_book, - to_sheet: html_to_sheet, - _row: make_html_row, - BEGIN: _BEGIN, - END: _END, - _preamble: make_html_preamble, - from_sheet: sheet_to_html - }; -})(); +var HTML_BEGIN = 'SheetJS Table Export'; +var HTML_END = ''; + +function html_to_workbook(str, opts) { + var mtch = str.match(/[\s\S]*?<\/table>/gi); + if(!mtch || mtch.length == 0) throw new Error("Invalid HTML: could not find "); + if(mtch.length == 1) return sheet_to_workbook(html_to_sheet(mtch[0], opts), opts); + var wb = book_new(); + mtch.forEach(function(s, idx) { book_append_sheet(wb, html_to_sheet(s, opts), "Sheet" + (idx+1)); }); + return wb; +} + +function make_html_preamble(ws, R, o) { + var out = []; + return out.join("") + ''; +} + +function sheet_to_html(ws, opts/*, wb:?Workbook*/) { + var o = opts || {}; + var header = o.header != null ? o.header : HTML_BEGIN; + 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); + return out.join(""); +} function sheet_add_dom(ws, table, _opts) { var opts = _opts || {}; @@ -21236,7 +21123,7 @@ function sheet_add_dom(ws, table, _opts) { else if(!isNaN(fuzzydate(v).getDate())) { o = ({t:'d', v:parseDate(v)}); if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}); - o.z = opts.dateNF || SSF._table[14]; + o.z = opts.dateNF || table_fmt[14]; } } if(o.z === undefined && z != null) o.z = z; @@ -22152,13 +22039,26 @@ function write_ods(wb, opts) { } /*! sheetjs (C) 2013-present SheetJS -- http://sheetjs.com */ -var u8_to_dataview = function(array) { +function u8_to_dataview(array) { return new DataView(array.buffer, array.byteOffset, array.byteLength); -}; -var u8str = function(u8) { +} +function u8str(u8) { return typeof TextDecoder != "undefined" ? new TextDecoder().decode(u8) : utf8read(a2s(u8)); -}; -var u8concat = function(u8a) { +} +function stru8(str) { + return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); +} +function u8contains(body, search) { + outer: + for (var L = 0; 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); @@ -22169,19 +22069,28 @@ var u8concat = function(u8a) { off += u8.length; }); return out; -}; -var popcnt = function(x) { +} +function popcnt(x) { x -= x >> 1 & 1431655765; x = (x & 858993459) + (x >> 2 & 858993459); return (x + (x >> 4) & 252645135) * 16843009 >>> 24; -}; -var readDecimal128LE = function(buf, offset) { +} +function readDecimal128LE(buf, offset) { var exp = (buf[offset + 15] & 127) << 7 | buf[offset + 14] >> 1; var mantissa = buf[offset + 14] & 1; for (var j = offset + 13; j >= offset; --j) mantissa = mantissa * 256 + buf[j]; return (buf[offset + 15] & 128 ? -mantissa : mantissa) * Math.pow(10, exp - 6176); -}; +} +function writeDecimal128LE(buf, offset, value) { + var exp = Math.floor(value == 0 ? 0 : Math.LOG10E * Math.log(Math.abs(value))) + 6176 - 20; + var mantissa = value / Math.pow(10, exp - 6176); + buf[offset + 15] |= exp >> 7; + buf[offset + 14] |= (exp & 127) << 1; + for (var i = 0; mantissa >= 1; ++i, mantissa /= 256) + buf[offset + i] = mantissa & 255; + buf[offset + 15] |= value >= 0 ? 0 : 128; +} function parse_varint49(buf, ptr) { var l = ptr ? ptr[0] : 0; var usz = buf[l] & 127; @@ -22213,6 +22122,43 @@ function parse_varint49(buf, ptr) { ptr[0] = l; return usz; } +function write_varint49(v) { + var usz = new Uint8Array(7); + usz[0] = v & 127; + var L = 1; + sz: + if (v > 127) { + usz[L - 1] |= 128; + usz[L] = v >> 7 & 127; + ++L; + if (v <= 16383) + break sz; + usz[L - 1] |= 128; + usz[L] = v >> 14 & 127; + ++L; + if (v <= 2097151) + break sz; + usz[L - 1] |= 128; + usz[L] = v >> 21 & 127; + ++L; + if (v <= 268435455) + break sz; + usz[L - 1] |= 128; + usz[L] = v / 256 >>> 21 & 127; + ++L; + if (v <= 34359738367) + break sz; + usz[L - 1] |= 128; + usz[L] = v / 65536 >>> 21 & 127; + ++L; + if (v <= 4398046511103) + break sz; + usz[L - 1] |= 128; + usz[L] = v / 16777216 >>> 21 & 127; + ++L; + } + return usz.slice(0, L); +} function varint_to_i32(buf) { var l = 0, i32 = buf[l] & 127; varint: @@ -22270,7 +22216,7 @@ function parse_shallow(buf) { default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { offset: off, data: res, type: type }; + var v = { data: res, type: type }; if (out[num] == null) out[num] = [v]; else @@ -22278,22 +22224,27 @@ function parse_shallow(buf) { } return out; } -function mappa(data, cb) { - if (!data) - return []; - return data.map(function(d) { - var _a; - try { - return cb(d.data); - } catch (e) { - var m = (_a = e.message) == null ? void 0 : _a.match(/at offset (\d+)/); - if (m) - e.message = e.message.replace(/at offset (\d+)/, "at offset " + (+m[1] + d.offset)); - throw e; - } +function write_shallow(proto) { + var out = []; + proto.forEach(function(field, idx) { + field.forEach(function(item) { + if (!item.data) + return; + out.push(write_varint49(idx * 8 + item.type)); + if (item.type == 2) + out.push(write_varint49(item.data.length)); + out.push(item.data); + }); }); + return u8concat(out); +} +function mappa(data, cb) { + return (data == null ? void 0 : data.map(function(d) { + return cb(d.data); + })) || []; } function parse_iwa_file(buf) { + var _a; var out = [], ptr = [0]; while (ptr[0] < buf.length) { var len = parse_varint49(buf, ptr); @@ -22312,10 +22263,35 @@ function parse_iwa_file(buf) { }); ptr[0] += fl; }); + if ((_a = ai[3]) == null ? void 0 : _a[0]) + res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; out.push(res); } return out; } +function write_iwa_file(ias) { + var bufs = []; + ias.forEach(function(ia) { + var ai = []; + ai[1] = [{ data: write_varint49(ia.id), type: 0 }]; + ai[2] = []; + if (ia.merge != null) + ai[3] = [{ data: write_varint49(+!!ia.merge), type: 0 }]; + var midata = []; + ia.messages.forEach(function(mi) { + midata.push(mi.data); + mi.meta[3] = [{ type: 0, data: write_varint49(mi.data.length) }]; + ai[2].push({ data: write_shallow(mi.meta), type: 2 }); + }); + var aipayload = write_shallow(ai); + bufs.push(write_varint49(aipayload.length)); + bufs.push(aipayload); + midata.forEach(function(mid) { + return bufs.push(mid); + }); + }); + return u8concat(bufs); +} function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); @@ -22381,7 +22357,7 @@ function parse_snappy_chunk(type, buf) { throw new Error("Unexpected length: ".concat(o.length, " != ").concat(usz)); return o; } -function deframe(buf) { +function decompress_iwa_file(buf) { var out = []; var l = 0; while (l < buf.length) { @@ -22395,17 +22371,52 @@ function deframe(buf) { throw new Error("data is not a valid framed stream!"); return u8concat(out); } -function parse_old_storage(buf, sst, rsst) { +function compress_iwa_file(buf) { + var out = []; + var l = 0; + while (l < buf.length) { + var c = Math.min(buf.length - l, 268435455); + var frame = new Uint8Array(4); + out.push(frame); + var usz = write_varint49(c); + var L = usz.length; + out.push(usz); + if (c <= 60) { + L++; + out.push(new Uint8Array([c - 1 << 2])); + } else if (c <= 256) { + L += 2; + out.push(new Uint8Array([240, c - 1 & 255])); + } else if (c <= 65536) { + L += 3; + out.push(new Uint8Array([244, c - 1 & 255, c - 1 >> 8 & 255])); + } else if (c <= 16777216) { + L += 4; + out.push(new Uint8Array([248, c - 1 & 255, c - 1 >> 8 & 255, c - 1 >> 16 & 255])); + } else if (c <= 4294967296) { + L += 5; + out.push(new Uint8Array([252, c - 1 & 255, c - 1 >> 8 & 255, c - 1 >> 16 & 255, c - 1 >>> 24 & 255])); + } + out.push(buf.slice(l, l + c)); + L += c; + frame[0] = 0; + frame[1] = L & 255; + frame[2] = L >> 8 & 255; + frame[3] = L >> 16 & 255; + l += c; + } + return u8concat(out); +} +function parse_old_storage(buf, sst, rsst, v) { var dv = u8_to_dataview(buf); - var ctype = buf[buf[0] == 4 ? 1 : 2]; var flags = dv.getUint32(4, true); - var data_offset = 12 + popcnt(flags & 3470) * 4; + var data_offset = (v > 1 ? 12 : 8) + popcnt(flags & (v > 1 ? 3470 : 398)) * 4; var ridx = -1, sidx = -1, ieee = NaN, dt = new Date(2001, 0, 1); if (flags & 512) { ridx = dv.getUint32(data_offset, true); data_offset += 4; } - data_offset += popcnt(flags & 12288) * 4; + data_offset += popcnt(flags & (v > 1 ? 12288 : 4096)) * 4; if (flags & 16) { sidx = dv.getUint32(data_offset, true); data_offset += 4; @@ -22419,7 +22430,7 @@ function parse_old_storage(buf, sst, rsst) { data_offset += 8; } var ret; - switch (ctype) { + switch (buf[2]) { case 0: break; case 2: @@ -22435,7 +22446,7 @@ function parse_old_storage(buf, sst, rsst) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -22457,9 +22468,8 @@ function parse_old_storage(buf, sst, rsst) { } return ret; } -function parse_storage(buf, sst, rsst) { +function parse_new_storage(buf, sst, rsst) { var dv = u8_to_dataview(buf); - var ctype = buf[1]; var flags = dv.getUint32(8, true); var data_offset = 12; var ridx = -1, sidx = -1, d128 = NaN, ieee = NaN, dt = new Date(2001, 0, 1); @@ -22484,7 +22494,7 @@ function parse_storage(buf, sst, rsst) { data_offset += 4; } var ret; - switch (ctype) { + switch (buf[1]) { case 0: break; case 2: @@ -22500,7 +22510,7 @@ function parse_storage(buf, sst, rsst) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -22510,24 +22520,86 @@ function parse_storage(buf, sst, rsst) { if (ridx > -1) ret = { t: "s", v: rsst[ridx] }; else - throw new Error("Unsupported cell type ".concat(ctype, " : ").concat(flags & 31, " : ").concat(buf.slice(0, 4))); + throw new Error("Unsupported cell type ".concat(buf[1], " : ").concat(flags & 31, " : ").concat(buf.slice(0, 4))); } break; case 10: ret = { t: "n", v: d128 }; break; default: - throw new Error("Unsupported cell type ".concat(ctype, " : ").concat(flags & 31, " : ").concat(buf.slice(0, 4))); + throw new Error("Unsupported cell type ".concat(buf[1], " : ").concat(flags & 31, " : ").concat(buf.slice(0, 4))); } return ret; } +function write_new_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 5; + switch (cell.t) { + case "n": + out[1] = 2; + writeDecimal128LE(out, l, cell.v); + flags |= 1; + l += 16; + break; + case "b": + out[1] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 2; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[1] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 8; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(8, flags, true); + return out.slice(0, l); +} +function write_old_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 3; + switch (cell.t) { + case "n": + out[2] = 2; + dv.setFloat64(l, cell.v, true); + flags |= 32; + l += 8; + break; + case "b": + out[2] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 32; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[2] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 16; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(4, flags, true); + return out.slice(0, l); +} function parse_cell_storage(buf, sst, rsst) { switch (buf[0]) { + case 0: + case 1: + case 2: case 3: - case 4: - return parse_old_storage(buf, sst, rsst); + return parse_old_storage(buf, sst, rsst, buf[0]); case 5: - return parse_storage(buf, sst, rsst); + return parse_new_storage(buf, sst, rsst); default: throw new Error("Unsupported payload version ".concat(buf[0])); } @@ -22536,6 +22608,11 @@ function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); return parse_varint49(pb[1][0].data); } +function write_TSP_Reference(idx) { + var out = []; + out[1] = [{ type: 0, data: write_varint49(idx) }]; + return write_shallow(out); +} function parse_TST_TableDataList(M, root) { var pb = parse_shallow(root.data); var type = varint_to_i32(pb[1][0].data); @@ -22566,47 +22643,58 @@ function parse_TST_TableDataList(M, root) { }); return data; } -function parse_TST_TileRowInfo(u8) { - var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j; +function parse_TST_TileRowInfo(u8, type) { + var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n; var pb = parse_shallow(u8); var R = varint_to_i32(pb[1][0].data) >>> 0; - var pre_bnc = (_b = (_a = pb[3]) == null ? void 0 : _a[0]) == null ? void 0 : _b.data; - var pre_bnc_offsets = ((_d = (_c = pb[4]) == null ? void 0 : _c[0]) == null ? void 0 : _d.data) && u8_to_dataview(pb[4][0].data); - var storage = (_f = (_e = pb[6]) == null ? void 0 : _e[0]) == null ? void 0 : _f.data; - var storage_offsets = ((_h = (_g = pb[7]) == null ? void 0 : _g[0]) == null ? void 0 : _h.data) && u8_to_dataview(pb[7][0].data); - var wide_offsets = ((_j = (_i = pb[8]) == null ? void 0 : _i[0]) == null ? void 0 : _j.data) && varint_to_i32(pb[8][0].data) > 0 || false; + var cnt = varint_to_i32(pb[2][0].data) >>> 0; + var wide_offsets = ((_b = (_a = pb[8]) == null ? void 0 : _a[0]) == null ? void 0 : _b.data) && varint_to_i32(pb[8][0].data) > 0 || false; + var used_storage_u8, used_storage; + if (((_d = (_c = pb[7]) == null ? void 0 : _c[0]) == null ? void 0 : _d.data) && type != 0) { + used_storage_u8 = (_f = (_e = pb[7]) == null ? void 0 : _e[0]) == null ? void 0 : _f.data; + used_storage = (_h = (_g = pb[6]) == null ? void 0 : _g[0]) == null ? void 0 : _h.data; + } else if (((_j = (_i = pb[4]) == null ? void 0 : _i[0]) == null ? void 0 : _j.data) && type != 1) { + used_storage_u8 = (_l = (_k = pb[4]) == null ? void 0 : _k[0]) == null ? void 0 : _l.data; + used_storage = (_n = (_m = pb[3]) == null ? void 0 : _m[0]) == null ? void 0 : _n.data; + } else + throw "NUMBERS Tile missing ".concat(type, " cell storage"); var width = wide_offsets ? 4 : 1; - var cells = []; - var off = 0; - for (var C = 0; C < pre_bnc_offsets.byteLength / 2; ++C) { - if (storage && storage_offsets) { - off = storage_offsets.getUint16(C * 2, true) * width; - if (off < storage.length) { - cells[C] = storage.subarray(off, storage_offsets.getUint16(C * 2 + 2, true) * width); - continue; - } - } - if (pre_bnc && pre_bnc_offsets) { - off = pre_bnc_offsets.getUint16(C * 2, true) * width; - if (off < pre_bnc.length) - cells[C] = pre_bnc.subarray(off, pre_bnc_offsets.getUint16(C * 2 + 2, true) * width); - } + var used_storage_offsets = u8_to_dataview(used_storage_u8); + var offsets = []; + for (var C = 0; C < used_storage_u8.length / 2; ++C) { + var off = used_storage_offsets.getUint16(C * 2, true); + if (off < 65535) + offsets.push([C, off]); } + if (offsets.length != cnt) + throw "Expected ".concat(cnt, " cells, found ").concat(offsets.length); + var cells = []; + for (C = 0; C < offsets.length - 1; ++C) + cells[offsets[C][0]] = used_storage.subarray(offsets[C][1] * width, offsets[C + 1][1] * width); + if (offsets.length >= 1) + cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); return { R: R, cells: cells }; } function parse_TST_Tile(M, root) { + var _a; var pb = parse_shallow(root.data); - var ri = mappa(pb[5], parse_TST_TileRowInfo); - return ri.reduce(function(acc, x) { - if (!acc[x.R]) - acc[x.R] = []; - x.cells.forEach(function(cell, C) { - if (acc[x.R][C]) - throw new Error("Duplicate cell r=".concat(x.R, " c=").concat(C)); - acc[x.R][C] = cell; - }); - return acc; - }, []); + var storage = ((_a = pb == null ? void 0 : pb[7]) == null ? void 0 : _a[0]) ? varint_to_i32(pb[7][0].data) >>> 0 > 0 ? 1 : 0 : -1; + var ri = mappa(pb[5], function(u8) { + return parse_TST_TileRowInfo(u8, storage); + }); + return { + nrows: varint_to_i32(pb[4][0].data) >>> 0, + data: ri.reduce(function(acc, x) { + if (!acc[x.R]) + acc[x.R] = []; + x.cells.forEach(function(cell, C) { + if (acc[x.R][C]) + throw new Error("Duplicate cell r=".concat(x.R, " c=").concat(C)); + acc[x.R][C] = cell; + }); + return acc; + }, []) + }; } function parse_TST_TableModelArchive(M, root, ws) { var _a; @@ -22619,33 +22707,28 @@ 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 store = parse_shallow(pb[4][0].data); - var sst = parse_TST_TableDataList(M, M[parse_TSP_Reference(store[4][0].data)][0]); - var rsst = ((_a = store[17]) == null ? void 0 : _a[0]) ? parse_TST_TableDataList(M, M[parse_TSP_Reference(store[17][0].data)][0]) : []; - { - var tile = parse_shallow(store[3][0].data); - var tiles = []; - tile[1].forEach(function(t) { - var tl = parse_shallow(t.data); - var ref = M[parse_TSP_Reference(tl[2][0].data)][0]; - var mtype = varint_to_i32(ref.meta[1][0].data); - if (mtype != 6002) - throw new Error("6001 unexpected reference to ".concat(mtype)); - tiles.push({ id: varint_to_i32(tl[1][0].data), ref: parse_TST_Tile(M, ref) }); + var store = parse_shallow(pb[4][0].data); + var sst = parse_TST_TableDataList(M, M[parse_TSP_Reference(store[4][0].data)][0]); + var rsst = ((_a = store[17]) == null ? void 0 : _a[0]) ? parse_TST_TableDataList(M, M[parse_TSP_Reference(store[17][0].data)][0]) : []; + var tile = parse_shallow(store[3][0].data); + var _R = 0; + tile[1].forEach(function(t) { + var tl = parse_shallow(t.data); + var ref = M[parse_TSP_Reference(tl[2][0].data)][0]; + var mtype = varint_to_i32(ref.meta[1][0].data); + if (mtype != 6002) + throw new Error("6001 unexpected reference to ".concat(mtype)); + var _tile = parse_TST_Tile(M, ref); + _tile.data.forEach(function(row, R) { + row.forEach(function(buf, C) { + var addr = encode_cell({ r: _R + R, c: C }); + var res = parse_cell_storage(buf, sst, rsst); + if (res) + ws[addr] = res; }); - tiles.forEach(function(tile2) { - tile2.ref.forEach(function(row, R) { - row.forEach(function(buf, C) { - var addr = encode_cell({ r: R, c: C }); - var res = parse_cell_storage(buf, sst, rsst); - if (res) - ws[addr] = res; - }); - }); - }); - } - } + }); + _R += _tile.nrows; + }); } function parse_TST_TableInfoArchive(M, root) { var pb = parse_shallow(root.data); @@ -22683,8 +22766,8 @@ function parse_TN_DocumentArchive(M, root) { var mtype = varint_to_i32(m.meta[1][0].data); if (mtype == 2) { var root2 = parse_TN_SheetArchive(M, m); - root2.sheets.forEach(function(sheet) { - book_append_sheet(out, sheet, root2.name); + root2.sheets.forEach(function(sheet, idx) { + book_append_sheet(out, sheet, idx == 0 ? root2.name : root2.name + "_" + idx, true); }); } }); @@ -22694,7 +22777,8 @@ function parse_TN_DocumentArchive(M, root) { return out; } function parse_numbers_iwa(cfb) { - var out = []; + var _a, _b, _c, _d; + var M = {}, indices = []; cfb.FullPaths.forEach(function(p) { if (p.match(/\.iwpv2/)) throw new Error("Unsupported password protection"); @@ -22704,7 +22788,7 @@ function parse_numbers_iwa(cfb) { return; var o; try { - o = deframe(s.content); + o = decompress_iwa_file(s.content); } catch (e) { return console.log("?? " + s.content.length + " " + (e.message || e)); } @@ -22715,26 +22799,346 @@ function parse_numbers_iwa(cfb) { return console.log("## " + (e.message || e)); } packets.forEach(function(packet) { - out[+packet.id] = packet.messages; + M[packet.id] = packet.messages; + indices.push(packet.id); }); }); - if (!out.length) + if (!indices.length) throw new Error("File has no messages"); - var docroot; - out.forEach(function(iwams) { - iwams.forEach(function(iwam) { - var mtype = varint_to_i32(iwam.meta[1][0].data) >>> 0; - if (mtype == 1) { - if (!docroot) - docroot = iwam; - else - throw new Error("Document has multiple roots"); - } + var docroot = ((_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) == 1 && M[1][0]; + if (!docroot) + indices.forEach(function(idx) { + M[idx].forEach(function(iwam) { + var mtype = varint_to_i32(iwam.meta[1][0].data) >>> 0; + if (mtype == 1) { + if (!docroot) + docroot = iwam; + else + throw new Error("Document has multiple roots"); + } + }); }); - }); if (!docroot) throw new Error("Cannot find Document root"); - return parse_TN_DocumentArchive(out, docroot); + return parse_TN_DocumentArchive(M, docroot); +} +function write_tile_row(tri, data, SST) { + var _a, _b, _c, _d; + 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 wide_offsets = ((_d = (_c = tri[8]) == null ? void 0 : _c[0]) == null ? void 0 : _d.data) && varint_to_i32(tri[8][0].data) > 0 || false; + if (wide_offsets) + throw "Math only works with normal offsets"; + var cnt = 0; + var dv = u8_to_dataview(tri[7][0].data), last_offset = 0, cell_storage = []; + var _dv = u8_to_dataview(tri[4][0].data), _last_offset = 0, _cell_storage = []; + for (var C = 0; C < data.length; ++C) { + if (data[C] == null) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535); + continue; + } + dv.setUint16(C * 2, last_offset, true); + _dv.setUint16(C * 2, _last_offset, true); + var celload, _celload; + switch (typeof data[C]) { + case "string": + celload = write_new_storage({ t: "s", v: data[C] }, SST); + _celload = write_old_storage({ t: "s", v: data[C] }, SST); + break; + case "number": + celload = write_new_storage({ t: "n", v: data[C] }, SST); + _celload = write_old_storage({ t: "n", v: data[C] }, SST); + break; + case "boolean": + celload = write_new_storage({ t: "b", v: data[C] }, SST); + _celload = write_old_storage({ t: "b", v: data[C] }, SST); + break; + default: + throw new Error("Unsupported value " + data[C]); + } + cell_storage.push(celload); + last_offset += celload.length; + _cell_storage.push(_celload); + _last_offset += _celload.length; + ++cnt; + } + tri[2][0].data = write_varint49(cnt); + for (; C < tri[7][0].data.length / 2; ++C) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535, true); + } + tri[6][0].data = u8concat(cell_storage); + tri[3][0].data = u8concat(_cell_storage); + return cnt; +} +function write_numbers_iwa(wb, opts) { + if (!opts || !opts.numbers) + throw new Error("Must pass a `numbers` option -- check the README"); + var ws = wb.Sheets[wb.SheetNames[0]]; + if (wb.SheetNames.length > 1) + console.error("The Numbers writer currently writes only the first table"); + var range = decode_range(ws["!ref"]); + range.s.r = range.s.c = 0; + var trunc = false; + if (range.e.c > 9) { + trunc = true; + range.e.c = 9; + } + if (range.e.r > 49) { + trunc = true; + range.e.r = 49; + } + if (trunc) + console.error("The Numbers writer is currently limited to ".concat(encode_range(range))); + var data = sheet_to_json(ws, { range: range, header: 1 }); + var SST = ["~Sh33tJ5~"]; + data.forEach(function(row) { + return row.forEach(function(cell) { + if (typeof cell == "string") + SST.push(cell); + }); + }); + var dependents = {}; + var indices = []; + var cfb = CFB.read(opts.numbers, { type: "base64" }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (fi.type != 2) + return; + if (!fi.name.match(/\.iwa/)) + return; + var old_content = fi.content; + var raw1 = decompress_iwa_file(old_content); + var x2 = parse_iwa_file(raw1); + x2.forEach(function(packet2) { + indices.push(packet2.id); + dependents[packet2.id] = { deps: [], location: fp, type: varint_to_i32(packet2.messages[0].meta[1][0].data) }; + }); + }); + indices.sort(function(x2, y2) { + return x2 - y2; + }); + var indices_varint = indices.filter(function(x2) { + return x2 > 1; + }).map(function(x2) { + return [x2, write_varint49(x2)]; + }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (!fi.name.match(/\.iwa/)) + return; + var x2 = parse_iwa_file(decompress_iwa_file(fi.content)); + x2.forEach(function(ia) { + ia.messages.forEach(function(m) { + 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); + } + }); + }); + }); + }); + function get_unique_msgid() { + for (var i = 927262; i < 2e6; ++i) + if (!dependents[i]) + return i; + throw new Error("Too many messages"); + } + var entry = CFB.find(cfb, dependents[1].location); + var x = parse_iwa_file(decompress_iwa_file(entry.content)); + var docroot; + for (var xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if (packet.id == 1) + docroot = packet; + } + var sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[1][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + var pb = parse_shallow(docroot.messages[0].data); + { + pb[6][0].data = write_varint49(range.e.r + 1); + pb[7][0].data = write_varint49(range.e.c + 1); + var cruidsref = parse_TSP_Reference(pb[46][0].data); + var oldbucket = CFB.find(cfb, dependents[cruidsref].location); + var _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + for (var j = 0; j < _x.length; ++j) { + if (_x[j].id == cruidsref) + break; + } + if (_x[j].id != cruidsref) + throw "Bad ColumnRowUIDMapArchive"; + var cruids = parse_shallow(_x[j].messages[0].data); + cruids[1] = []; + cruids[2] = [], cruids[3] = []; + for (var C = 0; C <= range.e.c; ++C) { + var uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(C + 420690) }]; + cruids[1].push({ type: 2, data: write_shallow(uuid) }); + cruids[2].push({ type: 0, data: write_varint49(C) }); + cruids[3].push({ type: 0, data: write_varint49(C) }); + } + cruids[4] = []; + cruids[5] = [], cruids[6] = []; + for (var R = 0; R <= range.e.r; ++R) { + uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(R + 726270) }]; + cruids[4].push({ type: 2, data: write_shallow(uuid) }); + cruids[5].push({ type: 0, data: write_varint49(R) }); + cruids[6].push({ type: 0, data: write_varint49(R) }); + } + _x[j].messages[0].data = write_shallow(cruids); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + delete pb[46]; + var store = parse_shallow(pb[4][0].data); + { + store[7][0].data = write_varint49(range.e.r + 1); + var row_headers = parse_shallow(store[1][0].data); + var row_header_ref = parse_TSP_Reference(row_headers[2][0].data); + oldbucket = CFB.find(cfb, dependents[row_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != row_header_ref) + throw "Bad HeaderStorageBucket"; + var base_bucket = parse_shallow(_x[0].messages[0].data); + for (R = 0; R < data.length; ++R) { + var _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(R); + _bucket[4][0].data = write_varint49(data[R].length); + base_bucket[2][R] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var col_header_ref = parse_TSP_Reference(store[2][0].data); + oldbucket = CFB.find(cfb, dependents[col_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != col_header_ref) + throw "Bad HeaderStorageBucket"; + base_bucket = parse_shallow(_x[0].messages[0].data); + for (C = 0; C <= range.e.c; ++C) { + _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(C); + _bucket[4][0].data = write_varint49(range.e.r + 1); + base_bucket[2][C] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var sstref = parse_TSP_Reference(store[4][0].data); + (function() { + var sentry = CFB.find(cfb, dependents[sstref].location); + var sx = parse_iwa_file(decompress_iwa_file(sentry.content)); + var sstroot; + for (var sxi = 0; sxi < sx.length; ++sxi) { + var packet2 = sx[sxi]; + if (packet2.id == sstref) + sstroot = packet2; + } + var sstdata = parse_shallow(sstroot.messages[0].data); + { + sstdata[3] = []; + var newsst = []; + SST.forEach(function(str, i) { + newsst[1] = [{ type: 0, data: write_varint49(i) }]; + newsst[2] = [{ type: 0, data: write_varint49(1) }]; + newsst[3] = [{ type: 2, data: stru8(str) }]; + sstdata[3].push({ type: 2, data: write_shallow(newsst) }); + }); + } + sstroot.messages[0].data = write_shallow(sstdata); + var sy = write_iwa_file(sx); + var raw32 = compress_iwa_file(sy); + sentry.content = raw32; + sentry.size = sentry.content.length; + })(); + var tile = parse_shallow(store[3][0].data); + { + var t = tile[1][0]; + delete tile[2]; + var tl = parse_shallow(t.data); + { + var tileref = parse_TSP_Reference(tl[2][0].data); + (function() { + var tentry = CFB.find(cfb, dependents[tileref].location); + var tx = parse_iwa_file(decompress_iwa_file(tentry.content)); + var tileroot; + for (var sxi = 0; sxi < tx.length; ++sxi) { + var packet2 = tx[sxi]; + if (packet2.id == tileref) + tileroot = packet2; + } + var tiledata = parse_shallow(tileroot.messages[0].data); + { + delete tiledata[6]; + delete tile[7]; + var rowload = new Uint8Array(tiledata[5][0].data); + tiledata[5] = []; + var cnt = 0; + for (var R2 = 0; R2 <= range.e.r; ++R2) { + var tilerow = parse_shallow(rowload); + cnt += write_tile_row(tilerow, data[R2], SST); + tilerow[1][0].data = write_varint49(R2); + tiledata[5].push({ data: write_shallow(tilerow), type: 2 }); + } + tiledata[1] = [{ type: 0, data: write_varint49(range.e.c + 1) }]; + tiledata[2] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + tiledata[3] = [{ type: 0, data: write_varint49(cnt) }]; + tiledata[4] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + } + tileroot.messages[0].data = write_shallow(tiledata); + var ty = write_iwa_file(tx); + var raw32 = compress_iwa_file(ty); + tentry.content = raw32; + tentry.size = tentry.content.length; + })(); + } + t.data = write_shallow(tl); + } + store[3][0].data = write_shallow(tile); + } + pb[4][0].data = write_shallow(store); + } + docroot.messages[0].data = write_shallow(pb); + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + entry.content = raw3; + entry.size = entry.content.length; + return cfb; } function fix_opts_func(defaults) { return function fix_opts(opts) { @@ -22841,7 +23245,7 @@ function safe_parse_sheet(zip, path, relsPath, sheet, idx, sheetRels, sheets, st function strip_front_slash(x) { return x.charAt(0) == '/' ? x.slice(1) : x; } function parse_zip(zip, opts) { - make_ssf(SSF); + make_ssf(); opts = opts || {}; fix_read_opts(opts); @@ -23004,7 +23408,7 @@ function parse_zip(zip, opts) { Strings: strs, Styles: styles, Themes: themes, - SSF: SSF.get_table() + SSF: dup(table_fmt) }); if(opts && opts.bookFiles) { if(zip.files) { @@ -23073,6 +23477,7 @@ if(einfo[0] == 0x02 && typeof decrypt_std76 !== 'undefined') return decrypt_std7 function write_zip(wb, opts) { if(opts.bookType == "ods") return write_ods(wb, opts); + if(opts.bookType == "numbers") return write_numbers_iwa(wb, opts); if(opts.bookType == "xlsb") return write_zip_xlsxb(wb, opts); return write_zip_xlsx(wb, opts); } @@ -23084,10 +23489,10 @@ function write_zip(wb, opts) { function write_zip_xlsxb(wb, opts) { _shapeid = 1024; if(wb && !wb.SSF) { - wb.SSF = SSF.get_table(); + wb.SSF = dup(table_fmt); } if(wb && wb.SSF) { - make_ssf(SSF); SSF.load_table(wb.SSF); + make_ssf(); SSF_load_table(wb.SSF); // $FlowIgnore opts.revssf = evert_num(wb.SSF); opts.revssf[wb.SSF[65535]] = 0; opts.ssf = wb.SSF; @@ -23218,10 +23623,10 @@ f = "docProps/app.xml"; function write_zip_xlsx(wb, opts) { _shapeid = 1024; if(wb && !wb.SSF) { - wb.SSF = SSF.get_table(); + wb.SSF = dup(table_fmt); } if(wb && wb.SSF) { - make_ssf(SSF); SSF.load_table(wb.SSF); + make_ssf(); SSF_load_table(wb.SSF); // $FlowIgnore opts.revssf = evert_num(wb.SSF); opts.revssf[wb.SSF[65535]] = 0; opts.ssf = wb.SSF; @@ -23374,7 +23779,7 @@ function firstbyte(f,o) { var x = ""; switch((o||{}).type || "base64") { case 'buffer': return [f[0], f[1], f[2], f[3], f[4], f[5], f[6], f[7]]; - case 'base64': x = Base64.decode(f.slice(0,12)); break; + case 'base64': x = Base64_decode(f.slice(0,12)); break; case 'binary': x = f; break; case 'array': return [f[0], f[1], f[2], f[3], f[4], f[5], f[6], f[7]]; default: throw new Error("Unrecognized type " + (o && o.type || "undefined")); @@ -23408,7 +23813,7 @@ function read_plaintext(data, o) { function read_plaintext_raw(data, o) { var str = "", bytes = firstbyte(data, o); switch(o.type) { - case 'base64': str = Base64.decode(data); break; + case 'base64': str = Base64_decode(data); break; case 'binary': str = data; break; case 'buffer': str = data.toString('binary'); break; case 'array': str = cc2str(data); break; @@ -23421,7 +23826,7 @@ function read_plaintext_raw(data, o) { function read_utf16(data, o) { var d = data; - if(o.type == 'base64') d = Base64.decode(d); + if(o.type == 'base64') d = Base64_decode(d); d = $cptable.utils.decode(1200, d.slice(2), 'str'); o.type = "binary"; return read_plaintext(d, o); @@ -23546,7 +23951,7 @@ function write_string_type(out, opts, bom) { if(!bom) bom = ""; var o = bom + out; switch(opts.type) { - case "base64": return Base64.encode(utf8write(o)); + case "base64": return Base64_encode(utf8write(o)); case "binary": return utf8write(o); case "string": return out; case "file": return write_dl(opts.file, o, 'utf8'); @@ -23561,7 +23966,7 @@ function write_string_type(out, opts, bom) { function write_stxt_type(out, opts) { switch(opts.type) { - case "base64": return Base64.encode(out); + case "base64": return Base64_encode(out); case "binary": return out; case "string": return out; /* override in sheet_to_txt */ case "file": return write_dl(opts.file, out, 'binary'); @@ -23582,7 +23987,7 @@ function write_binary_type(out, opts) { var bstr = ""; // $FlowIgnore for(var i = 0; i < out.length; ++i) bstr += String.fromCharCode(out[i]); - return opts.type == 'base64' ? Base64.encode(bstr) : opts.type == 'string' ? utf8read(bstr) : bstr; + return opts.type == 'base64' ? Base64_encode(bstr) : opts.type == 'string' ? utf8read(bstr) : bstr; case "file": return write_dl(opts.file, out); case "buffer": return out; default: throw new Error("Unrecognized type " + opts.type); @@ -23616,7 +24021,7 @@ function writeSync(wb, opts) { case 'slk': case 'sylk': return write_string_type(SYLK.from_sheet(wb.Sheets[wb.SheetNames[idx]], o), o); case 'htm': - case 'html': return write_string_type(HTML_.from_sheet(wb.Sheets[wb.SheetNames[idx]], o), o); + case 'html': return write_string_type(sheet_to_html(wb.Sheets[wb.SheetNames[idx]], o), o); case 'txt': return write_stxt_type(sheet_to_txt(wb.Sheets[wb.SheetNames[idx]], o), o); case 'csv': return write_string_type(sheet_to_csv(wb.Sheets[wb.SheetNames[idx]], o), o, "\ufeff"); case 'dif': return write_string_type(DIF.from_sheet(wb.Sheets[wb.SheetNames[idx]], o), o); @@ -23638,6 +24043,7 @@ function writeSync(wb, opts) { case 'xlsm': case 'xlam': case 'xlsb': + case 'numbers': case 'ods': return write_zip_type(wb, o); default: throw new Error ("Unrecognized bookType |" + o.bookType + "|"); } @@ -23710,7 +24116,7 @@ function make_json_row(sheet, r, R, cols, header, hdr, dense, o) { else if(raw && v === null) row[hdr[C]] = null; else continue; } else { - row[hdr[C]] = raw || (o.rawNumbers && val.t == "n") ? v : format_cell(val,v,o); + row[hdr[C]] = raw && (val.t !== "n" || (val.t === "n" && o.rawNumbers !== false)) ? v : format_cell(val,v,o); } if(v != null) isempty = false; } @@ -23906,7 +24312,7 @@ function sheet_add_json(_ws, js, opts) { else if(v instanceof Date) { t = 'd'; if(!o.cellDates) { t = 'n'; v = datenum(v); } - z = (o.dateNF || SSF._table[14]); + z = (o.dateNF || table_fmt[14]); } else if(v === null && o.nullError) { t = 'e'; v = 0; } if(!cell) ws[ref] = cell = ({t:t, v:v}); @@ -23963,14 +24369,22 @@ function book_new() { } /* add a worksheet to the end of a given workbook */ -function book_append_sheet(wb, ws, name) { - if(!name) for(var i = 1; i <= 0xFFFF; ++i, name = undefined) if(wb.SheetNames.indexOf(name = "Sheet" + i) == -1) break; +function book_append_sheet(wb, ws, name, roll) { + var i = 1; + if(!name) for(; i <= 0xFFFF; ++i, name = undefined) if(wb.SheetNames.indexOf(name = "Sheet" + i) == -1) break; if(!name || wb.SheetNames.length >= 0xFFFF) throw new Error("Too many worksheets"); + if(roll && wb.SheetNames.indexOf(name) >= 0) { + var m = name.match(/(^.*?)(\d+)$/); + i = m && +m[2] || 0; + var root = m && m[1] || name; + for(++i; i <= 0xFFFF; ++i) if(wb.SheetNames.indexOf(name = root + i) == -1) break; + } check_ws_name(name); if(wb.SheetNames.indexOf(name) >= 0) throw new Error("Worksheet with name |" + name + "| already exists!"); wb.SheetNames.push(name); wb.Sheets[name] = ws; + return name; } /* set sheet visibility (visible/hidden/very hidden) */ @@ -24052,7 +24466,7 @@ var utils = { sheet_to_csv: sheet_to_csv, sheet_to_txt: sheet_to_txt, sheet_to_json: sheet_to_json, - sheet_to_html: HTML_.from_sheet, + sheet_to_html: sheet_to_html, sheet_to_formulae: sheet_to_formulae, sheet_to_row_object_array: sheet_to_json, sheet_get_cell: ws_get_cell_stub, @@ -24109,12 +24523,12 @@ function write_html_stream(ws, opts) { var stream = _Readable(); var o = opts || {}; - var header = o.header != null ? o.header : HTML_.BEGIN; - var footer = o.footer != null ? o.footer : HTML_.END; + var header = o.header != null ? o.header : HTML_BEGIN; + 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(HTML_._preamble(ws, r, o)); + stream.push(make_html_preamble(ws, r, o)); var R = r.s.r; var end = false; stream._read = function() { @@ -24123,7 +24537,7 @@ function write_html_stream(ws, opts) { return stream.push(null); } while(R <= r.e.r) { - stream.push(HTML_._row(ws, r, R, o)); + stream.push(make_html_row(ws, r, R, o)); ++R; break; } diff --git a/dist/xlsx.full.min.js b/dist/xlsx.full.min.js index 1a986e4..16e013f 100644 --- a/dist/xlsx.full.min.js +++ b/dist/xlsx.full.min.js @@ -5,18 +5,18 @@ for(a=0;a!=t[236].length;++a)if(t[236][a].charCodeAt(0)!==65533){r[t[236][a]]=60 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 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(v){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 p=1024,g=Buffer.allocUnsafe(p);var m=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>p){p=2*r;g=Buffer.allocUnsafe(p)}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;np){p=4*r;g=Buffer.allocUnsafe(p)}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);g[s++]=a&255;g[s++]=a>>>8;g[s++]=t&255;g[s++]=t>>>8&255}}return g.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>p){p=4*t;g=Buffer.allocUnsafe(p)}for(var f=0;f>6);g[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);g[i++]=240+(n>>>18&7);g[i++]=144+(n>>>12&63);g[i++]=128+(n>>>6&63);g[i++]=128+(n&63)}else{g[i++]=224+(a>>12);g[i++]=128+(a>>6&63);g[i++]=128+(a&63)}}if(!r||r==="buf")return g.slice(0,i);if(r!=="arr")return g.slice(0,i).toString("binary");return[].slice.call(g,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(m=r[t])switch(m){case"utf8":if(h&&b){s=u(a,m);d=s.length;break}for(c=0;c>6);s[++d]=128+(f&63)}else if(f>=55296&&f<=57343){f-=55296;v=(b?a.charCodeAt(++c):a[++c].charCodeAt(0))-56320+(f<<10);s[d]=240+(v>>>18&7);s[++d]=144+(v>>>12&63);s[++d]=128+(v>>>6&63);s[++d]=128+(v&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,m);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=X(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 $(t,a){var n;if(n=f[t])return n(a);if(typeof a==="string")return $(t,a.split("").map(c));var i=a.length,s=new Array(i),o="",l=0,u=0,d=1,v=0,p=0;var g=e[t],m,b="";if(g&&(m=g.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[v++]=String.fromCharCode(p);s[v++]=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[v++]=String.fromCharCode(55296+(l>>10&1023));s[v++]=String.fromCharCode(56320+(l&1023))}else s[v++]=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[v++]=String.fromCharCode(55296+(l>>10&1023));s[v++]=String.fromCharCode(56320+(l&1023))}else s[v++]=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=(y&15)<<4|x>>2;k.push(E);O=_.indexOf(String.fromCharCode(a[u+R++]));if(O===-1)break;C=(x&3)<<6|O;if(O<64)k.push(C)}T=$(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 v=function Tb(e){return String.fromCharCode(e)};var p=function Ab(e){return String.fromCharCode(e)};if(typeof a!=="undefined"){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};v=function Eb(e){if(r===1200)return String.fromCharCode(e);return a.utils.decode(r,[e&255,e>>8])[0]};p=function Cb(e){return a.utils.decode(t,[e])[0]}}var g=null;var m=true;var b=function(){var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return{encode:function(r){var t="";var a=0,n=0,i=0,s=0,f=0,o=0,l=0;for(var c=0;c>2;n=r.charCodeAt(c++);f=(a&3)<<4|n>>4;i=r.charCodeAt(c++);o=(n&15)<<2|i>>6;l=i&63;if(isNaN(n)){o=l=64}else if(isNaN(i)){l=64}t+=e.charAt(s)+e.charAt(f)+e.charAt(o)+e.charAt(l)}return t},decode:function(r){var t="";var a=0,n=0,i=0,s=0,f=0,o=0,l=0;r=r.replace(/[^\w\+\/\=]/g,"");for(var c=0;c>4;t+=String.fromCharCode(a);o=e.indexOf(r.charAt(c++));n=(f&15)<<4|o>>2;if(o!==64){t+=String.fromCharCode(n)}l=e.indexOf(r.charAt(c++));i=(o&3)<<6|l;if(l!==64){t+=String.fromCharCode(i)}}return t}}}();var w=typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node;var k=function(){};if(typeof Buffer!=="undefined"){var T=!Buffer.from;if(!T)try{Buffer.from("foo","utf8")}catch(A){T=true}k=T?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer);if(!Buffer.alloc)Buffer.alloc=function(e){return new Buffer(e)};if(!Buffer.allocUnsafe)Buffer.allocUnsafe=function(e){return new Buffer(e)}}function E(e){return w?Buffer.alloc(e):typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function C(e){return w?Buffer.allocUnsafe(e):typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var S=function Sb(e){if(w)return k(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function y(e){if(typeof ArrayBuffer==="undefined")return S(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 _(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=E(65535);a=65530}}r.push(n.slice(0,t));return I(r)}var I=function(e){if(typeof Uint8Array!=="undefined"){var r=0,t=0;for(r=0;r=0)r+=e.charAt(t--);return r}function t(e,r){var t="";while(t.length=r?a:t("0",r-a.length)+a}function n(e,r){var a=""+e;return a.length>=r?a:t(" ",r-a.length)+a}function i(e,r){var a=""+e;return a.length>=r?a:a+t(" ",r-a.length)}function s(e,r){var a=""+Math.round(e);return a.length>=r?a:t("0",r-a.length)+a}function f(e,r){var a=""+e;return a.length>=r?a:t("0",r-a.length)+a}var o=Math.pow(2,32);function l(e,r){if(e>o||e<-o)return s(e,r);var t=Math.round(e);return f(t,r)}function c(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 h=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var u=[["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 d(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"秒 "'}var v={};d(v);var p=[];var g=0;for(g=5;g<=8;++g)p[g]=32+g;for(g=23;g<=26;++g)p[g]=0;for(g=27;g<=31;++g)p[g]=14;for(g=50;g<=58;++g)p[g]=14;for(g=59;g<=62;++g)p[g]=g-58;for(g=67;g<=68;++g)p[g]=g-58;for(g=72;g<=75;++g)p[g]=g-58;for(g=67;g<=68;++g)p[g]=g-57;for(g=76;g<=78;++g)p[g]=g-56;for(g=79;g<=81;++g)p[g]=g-34;var m={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 b(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 w(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=_(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}e.parse_date_code=w;var k=new Date(1899,11,31,0,0,0);var T=k.getTime();var A=new Date(1900,2,1,0,0,0);function E(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=A)t+=24*60*60*1e3;return(t-(T+(e.getTimezoneOffset()-k.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function C(e){return e.toString(10)}e._general_int=C;var S=function H(){var e=/(?:\.0*|(\.\d*[1-9])0+)$/;function r(r){return r.indexOf(".")==-1?r:r.replace(e,"$1")}var t=/(?:\.0*|(\.\d*[1-9])0+)[Ee]/;var a=/(E[+-])(\d)$/;function n(e){if(e.indexOf("E")==-1)return e;return e.replace(t,"$1E").replace(a,"$10$2")}function i(e){var t=e<0?12:11;var a=r(e.toFixed(12));if(a.length<=t)return a;a=e.toPrecision(10);if(a.length<=t)return a;return e.toExponential(5)}function s(e){var t=r(e.toFixed(11));return t.length>(e<0?12:11)||t==="0"||t==="-0"?e.toPrecision(6):t}function f(e){var t=Math.floor(Math.log(Math.abs(e))*Math.LOG10E),a;if(t>=-4&&t<=-1)a=e.toPrecision(10+t);else if(Math.abs(t)<=9)a=i(e);else if(t===10)a=e.toFixed(10).substr(0,12);else a=s(e);return r(n(a.toUpperCase()))}return f}();e._general_num=S;function y(e,r){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):S(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return B(14,E(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}e._general=y;function _(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function x(e,r,t,n){var i="",s=0,f=0,o=t.y,l,c=0;switch(e){case 98:o=t.y+543;case 121:switch(r.length){case 1:;case 2:l=o%100;c=2;break;default:l=o%1e4;c=4;break;}break;case 109:switch(r.length){case 1:;case 2:l=t.m;c=r.length;break;case 3:return u[t.m-1][1];case 5:return u[t.m-1][0];default:return u[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:l=t.d;c=r.length;break;case 3:return h[t.q][0];default:return h[t.q][1];}break;case 104:switch(r.length){case 1:;case 2:l=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:l=t.H;c=r.length;break;default:throw"bad hour format: "+r;}break;case 77:switch(r.length){case 1:;case 2:l=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 a(t.S,r.length);if(n>=2)f=n===3?1e3:100;else f=n===1?10:1;s=Math.round(f*(t.S+t.u));if(s>=60*f)s=0;if(r==="s")return s===0?"0":""+s/f;i=a(s,2+n);if(r==="ss")return i.substr(0,2);return"."+i.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;}c=r.length===3?1:2;break;case 101:l=o;c=1;break;}var d=c>0?a(l,c):"";return d}function O(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 R=function z(){var e=/%/g;function s(r,a,n){var i=a.replace(e,""),s=a.length-i.length;return R(r,i,n*Math.pow(10,2*s))+t("%",s)}function f(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return R(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function o(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"-"+o(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 c=/# (\?+)( ?)\/( ?)(\d+)/;function h(e,r,i){var s=parseInt(e[4],10),f=Math.round(r*s),o=Math.floor(f/s);var l=f-o*s,c=s;return i+(o===0?"":""+o)+" "+(l===0?t(" ",e[1].length+1+e[4].length):n(l,e[1].length)+e[2]+"/"+e[3]+a(c,e[4].length))}function u(e,r,a){return a+(r===0?"":""+r)+t(" ",e[1].length+2+e[4].length)}var d=/^#*0*\.([0#]+)/;var v=/\).*[0#]/;var p=/\(###\) ###\\?-####/;function g(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 m(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function w(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 k(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function T(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function A(e,u,E){if(e.charCodeAt(0)===40&&!u.match(v)){var C=u.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(E>=0)return A("n",C,E);return"("+A("n",C,-E)+")"}if(u.charCodeAt(u.length-1)===44)return f(e,u,E);if(u.indexOf("%")!==-1)return s(e,u,E);if(u.indexOf("E")!==-1)return o(u,E);if(u.charCodeAt(0)===36)return"$"+A(e,u.substr(u.charAt(1)==" "?2:1),E);var S;var y,_,x,I=Math.abs(E),N=E<0?"-":"";if(u.match(/^00+$/))return N+l(I,u.length);if(u.match(/^[#?]+$/)){S=l(E,0);if(S==="0")S="";return S.length>u.length?S:g(u.substr(0,u.length-S.length))+S}if(y=u.match(c))return h(y,I,N);if(u.match(/^#+0+$/))return N+l(I,u.length-u.indexOf("0"));if(y=u.match(d)){S=m(E,y[1].length).replace(/^([^\.]+)$/,"$1."+g(y[1])).replace(/\.$/,"."+g(y[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+t("0",g(y[1]).length-r.length)});return u.indexOf("0.")!==-1?S:S.replace(/^0\./,".")}u=u.replace(/^#+([0.])/,"$1");if(y=u.match(/^(0*)\.(#*)$/)){return N+m(I,y[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,y[1].length?"0.":".")}if(y=u.match(/^#{1,3},##0(\.?)$/))return N+O(l(I,0));if(y=u.match(/^#,##0\.([#0]*0)$/)){return E<0?"-"+A(e,u,-E):O(""+(Math.floor(E)+k(E,y[1].length)))+"."+a(w(E,y[1].length),y[1].length)}if(y=u.match(/^#,#*,#0/))return A(e,u.replace(/^#,#*,/,""),E);if(y=u.match(/^([0#]+)(\\?-([0#]+))+$/)){S=r(A(e,u.replace(/[\\-]/g,""),E));_=0;return r(r(u.replace(/\\/g,"")).replace(/[0#]/g,function(e){return _=0)return y("n",o,f);return"("+y("n",o,-f)+")"}if(s.charCodeAt(s.length-1)===44)return E(e,s,f);if(s.indexOf("%")!==-1)return C(e,s,f);if(s.indexOf("E")!==-1)return S(s,f);if(s.charCodeAt(0)===36)return"$"+y(e,s.substr(s.charAt(1)==" "?2:1),f);var l;var h,m,w,k=Math.abs(f),T=f<0?"-":"";if(s.match(/^00+$/))return T+a(k,s.length);if(s.match(/^[#?]+$/)){l=""+f;if(f===0)l="";return l.length>s.length?l:g(s.substr(0,s.length-l.length))+l}if(h=s.match(c))return u(h,k,T);if(s.match(/^#+0+$/))return T+a(k,s.length-s.indexOf("0"));if(h=s.match(d)){l=(""+f).replace(/^([^\.]+)$/,"$1."+g(h[1])).replace(/\.$/,"."+g(h[1]));l=l.replace(/\.(\d*)$/,function(e,r){return"."+r+t("0",g(h[1]).length-r.length)});return s.indexOf("0.")!==-1?l:l.replace(/^0\./,".")}s=s.replace(/^#+([0.])/,"$1");if(h=s.match(/^(0*)\.(#*)$/)){return T+(""+k).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,h[1].length?"0.":".")}if(h=s.match(/^#{1,3},##0(\.?)$/))return T+O(""+k);if(h=s.match(/^#,##0\.([#0]*0)$/)){return f<0?"-"+y(e,s,-f):O(""+f)+"."+t("0",h[1].length)}if(h=s.match(/^#,#*,#0/))return y(e,s.replace(/^#,#*,/,""),f);if(h=s.match(/^([0#]+)(\\?-([0#]+))+$/)){l=r(y(e,s.replace(/[\\-]/g,""),f));m=0;return r(r(s.replace(/\\/g,"")).replace(/[0#]/g,function(e){return m-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}e.is_date=D;function F(e,r,t,a){var n=[],i="",s=0,f="",o="t",l,h,u;var d="H";while(s=12?"P":"A";g.t="T";d="h";s+=3}else if(e.substr(s,5).toUpperCase()==="AM/PM"){if(l!=null)g.v=l.H>=12?"PM":"AM";g.t="T";s+=5;d="h"}else if(e.substr(s,5).toUpperCase()==="上午/下午"){if(l!=null)g.v=l.H>=12?"下午":"上午";g.t="T";s+=5;d="h"}else{g.t="t";++s}if(l==null&&g.t==="T")return"";n[n.length]=g;o=f;break;case"[":i=f;while(e.charAt(s++)!=="]"&&s-1){i=(i.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!D(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,b=0,k;for(s=n.length-1,o="t";s>=0;--s){switch(n[s].t){case"h":;case"H":n[s].t=d;o="h";if(m<1)m=1;break;case"s":if(k=n[s].v.match(/\.0+$/))b=Math.max(b,k[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 T="",A;for(s=0;s0){if(T.charCodeAt(0)==40){C=r<0&&T.charCodeAt(0)===45?-r:r;S=R("n",T,C)}else{C=r<0&&a>1?-r:r;S=R("n",T,C);if(C<0&&n[0]&&n[0].t=="t"){S=S.substr(1);n[0].v="-"+n[0].v}}A=S.length-1;var _=n.length;for(s=0;s-1){_=s;break}var O=n.length;if(_===n.length&&S.indexOf("E")===-1){for(s=n.length-1;s>=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;if(A>=n[s].v.length-1){A-=n[s].v.length;n[s].v=S.substr(A+1,n[s].v.length)}else if(A<0)n[s].v="";else{n[s].v=S.substr(0,A+1);A=-1}n[s].t="t";O=s}if(A>=0&&O=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;h=n[s].v.indexOf(".")>-1&&s===_?n[s].v.indexOf(".")-1:n[s].v.length-1;E=n[s].v.substr(h+1);for(;h>=0;--h){if(A>=0&&(n[s].v.charAt(h)==="0"||n[s].v.charAt(h)==="#"))E=S.charAt(A--)+E}n[s].v=E;n[s].t="t";O=s}if(A>=0&&O-1&&s===_?n[s].v.indexOf(".")+1:0;E=n[s].v.substr(0,h);for(;h-1){C=a>1&&r<0&&s>0&&n[s-1].v==="-"?-r:r;n[s].v=R(n[s].t,n[s].v,C);n[s].t="t"}var I="";for(s=0;s!==n.length;++s)if(n[s]!=null)I+=n[s].v;return I}e._eval=F;var P=/\[[=<>]/;var L=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function M(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 U(e,r){var t=I(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(P)!=null||t[1].match(P)!=null){var s=t[0].match(L);var f=t[1].match(L);return M(r,s)?[a,t[0]]:M(r,f)?[a,t[1]]:[a,t[s!=null&&f!=null?2:1]]}return[a,i]}function B(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:v)[e];if(a==null)a=t.table&&t.table[p[e]]||v[p[e]];if(a==null)a=m[e]||"General";break;}if(c(a,0))return y(r,t);if(r instanceof Date)r=E(r,t.date1904);var n=U(a,r);if(c(n[1]))return y(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return F(n[1],r,t,n[0])}function W(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(v[t]==undefined){if(r<0)r=t;continue}if(v[t]==e){r=t;break}}if(r<0)r=391}v[r]=e;return r}e.load=W;e._table=v;e.get_table=function V(){return v};e.load_table=function G(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)W(e[r],r)};e.init_table=d;e.format=B}P(F);var L={"General Number":"General","General Date":F._table[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":F._table[15],"Short Date":F._table[14],"Long Time":F._table[19],"Medium Time":F._table[18],"Short Time":F._table[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:F._table[2],Standard:F._table[4],Percent:F._table[10],Scientific:F._table[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var M={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 U=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function B(e){var r=typeof e=="number"?F._table[e]:e;r=r.replace(U,"(\\d+)");return new RegExp("^"+r+"$")}function W(e,r,t){var a=-1,n=-1,i=-1,s=-1,f=-1,o=-1;(r.match(U)||[]).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 H=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],v=n[9];var p=n[10],g=n[11],m=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]^m[e[k++]^a>>16&255]^g[e[k++]^a>>>24]^p[e[k++]]^v[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 z=function yb(){var e={};e.version="1.2.1";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){et(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;}e.l=i;r[a]=s}return r}var f;function o(){return f||(f=undefined)}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 He(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 v=e.slice(0,512);et(v,0);var g=c(v);t=g[0];switch(t){case 3:a=512;break;case 4:a=4096;break;case 0:if(g[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);et(v,28)}var b=e.slice(0,a);h(v,t);var w=v._R(4,"i");if(t===3&&w!==0)throw new Error("# Directory Sectors: Expected 0 saw "+w);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");o=v._R(4,"i");i=v._R(4,"i");for(var k=-1,A=0;A<109;++A){k=v._R(4,"i");if(k<0)break;l[A]=k}var E=u(e,a);p(o,i,E,a,l);var C=m(E,s,l,a);C[s].name="!Directory";if(n>0&&f!==M)C[f].name="!MiniFAT";C[l[0]].name="!FAT";C.fat_addrs=l;C.ssz=a;var S={},y=[],_=[],x=[];T(s,C,E,y,n,S,_,f);d(_,x,y);y.shift();var O={FileIndex:_,FullPaths:x};if(r&&r.raw)O.raw={header:b,sectors:E};return O}function c(e){if(e[e.l]==80&&e[e.l+1]==75)return[0,0];e.chk(U,"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*L,s*L+L));n-=L;s=Xr(t,s*4)}if(i.length===0)return tt(0);return I(i).slice(0,e.size)}function p(e,r,t,a,n){var i=M;if(e===M){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=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=Xr(e[c],l)}return{nodes:i,data:kr([s])}}function m(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 v=[];for(h=u;h>=0;){v[h]=true;s[h]=true;f[f.length]=h;o.push(e[h]);var p=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[p])break;h=Xr(e[p],d);if(v[h])break}i[u]={nodes:f,data:kr([o])}}return i}function T(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!==M)r[o].name="!StreamData"}else if(m.size>=4096){m.storage="fat";if(r[m.start]===undefined)r[m.start]=g(t,m.start,r.fat_addrs,r.ssz);r[m.start].name=m.name;m.content=r[m.start].data.slice(0,m.size)}else{m.storage="minifat";if(m.size<0)m.size=0;else if(o!==M&&m.start!==M&&r[o]){m.content=v(m,r[o].data,(r[f]||{}).data)}}if(m.content)et(m.content,0);i[d]=m;s.push(m)}}function A(e,r){return new Date((jr(e,r+4)/1e7*Math.pow(2,32)+jr(e,r)/1e7-11644473600)*1e3)}function y(e,r){o();return l(f.readFileSync(e),r)}function _(e,r){var t=r&&r.type;if(!t){if(w&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return y(e,r);case"base64":return l(S(b.decode(e)),r);case"binary":return l(S(e),r);}return l(e,r)}function x(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;O(e)}function O(e){var r="Sh33tJ5";if(z.find(e,"/"+r))return;var t=tt(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);R(e)}function R(e,n){x(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;v.size=0;v.type=5}else if(p.slice(-1)=="/"){for(c=f+1;c=u.length?-1:c;for(c=f+1;c=u.length?-1:c;v.type=1}else{if(t(e.FullPaths[f+1]||"")==t(p))v.R=f+1;v.type=2}}}function F(e,r){var t=r||{};if(t.fileType=="mad")return ze(e,t);R(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=tt(a[7]<<9);var i=0,s=0;{for(i=0;i<8;++i)n._W(1,B[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:M);n._W(4,a[3]);n._W(-4,a[1]?a[0]-1:M);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,V.ENDOFCHAIN);s=i=0;for(o=0;o=4096)continue;c.start=s;f(l+63>>6)}while(n.l&511)n._W(-4,V.ENDOFCHAIN);for(i=0;i=4096){n.l=c.start+1<<9;if(w&&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(w&&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 re=typeof Uint8Array!=="undefined";var te=re?new Uint8Array(1<<8):[];for(var ae=0;ae<1<<8;++ae)te[ae]=ee(ae);function ne(e,r){var t=te[e&255];if(r<=8)return t>>>8-r;t=t<<8|te[e>>8&255];if(r<=16)return t>>>16-r;t=t<<8|te[e>>16&255];return t>>>24-r}function ie(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 fe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=4?0:e[a+1]<<8))>>>t&15}function oe(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 ce(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 he(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 ve(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(w){var i=C(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=re?new Uint16Array(32768):[];while(i0)t[t.l++]=r[i++];n=t.l*8;continue}n=he(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=de(t,n,te[l+1]>>1)-1;else{de(t,n,3);n+=5;de(t,n,te[l-23]>>5);n+=3}var u=l<8?0:l-4>>2;if(u>0){ve(t,n,h-Z[l]);n+=u}l=e[i-c];n=de(t,n,te[l]>>3);n-=3;var d=l<4?0:l-2>>1;if(d>0){ve(t,n,i-c-Q[l]);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+ie(e,r);r+=2;d=g[g.length-1];while(i-- >0)g.push(d);break;case 17:i=3+se(e,r);r+=3;while(i-- >0)g.push(0);break;case 18:i=11+le(e,r);r+=7;while(i-- >0)g.push(0);break;default:g.push(d);if(o>>0;var f=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 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=xe(e,t);f=ye;o=_e}for(;;){if(!r&&s>>1==1?be[c]:Ee[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+Z[h];if(u>0){d+=ce(e,t,u);t+=u}c=ce(e,t,o);h=a>>>1==1?we[c]:Ce[c];t+=h&15;h>>>=4;var v=h<4?0:h-2>>1;var p=Q[h];if(v>0){p+=ce(e,t,v);t+=v}if(!r&&s>>3];return[n.slice(0,i),t+7>>>3]}function Re(e,r){var t=e.slice(e.l||0);var a=Oe(t,r);e.l+=a[1];return a[0]}function Ie(e,r){if(e){if(typeof console!=="undefined")console.error(r)}else throw new Error(r)}function Ne(e,r){var t=e;et(t,0);var a=[],n=[];var i={FileIndex:a,FullPaths:n};x(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};x(c);var h,u=0;for(n=0;n=32&&d<128)++h;var p=h>=u*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: "+Le(f,s));n.push("");n.push(p?Ue(c):Me(c))}n.push(a+"--\r\n");return n.join("\r\n")}function Ve(e){var r={};x(r,e);return r}function Ge(e,r,t,n){var i=n&&n.unsafe;if(!i)x(e);var s=!i&&z.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)z.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 je(e,r){x(e);var t=z.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 se=new Date("2017-02-19T19:06:09.000Z");if(isNaN(se.getFullYear()))se=new Date("2/19/17");var fe=se.getFullYear()==2017;function oe(e,r){var t=new Date(e);if(fe){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(se.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 le(e,r){if(w&&Buffer.isBuffer(e)){if(r){if(e[0]==255&&e[1]==254)return e.slice(2).toString("utf16le");if(e[1]==254&&e[2]==255)return u(e.slice(2).toString("binary"))}return e.toString("binary")}var t=[];for(var a=0;a!=e.length;++a)t.push(String.fromCharCode(e[a]));return t.join("")}function ce(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]=ce(e[t]);return r}function he(e,r){var t="";while(t.length3&&de.indexOf(s)==-1)return t}else if(s.match(/[a-z]/))return t;if(a<0||a>8099)return t;if((n>0||i>1)&&a!=101)return r;if(e.match(/[^-0-9:,\/\\]/))return t;return r}var pe="abacaba".split(/(:?b)/i).length==5;function ge(e,r,t){if(pe||typeof r=="string")return e.split(r);var a=e.split(r),n=[a[0]];for(var i=1;i\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g;var Ne=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm;if(!Re.match(Ne))Ne=/<[^>]*>/g;var De=/<\w*:/,Fe=/<(\/?)\w+:/;function Pe(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(Ie),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 Le(e){return e.replace(Fe,"<$1")}var Me={""":'"',"'":"'",">":">","<":"<","&":"&"};var Ue=J(Me);var Be=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;return 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))}}();var We=/[&<>'"]/g,He=/[\u0000-\u0008\u000b-\u001f]/g;function ze(e){var r=e+"";return r.replace(We,function(e){return Ue[e]}).replace(He,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function Ve(e){return ze(e).replace(/ /g,"_x0020_")}var Ge=/[\u0000-\u001f]/g;function je(e){var r=e+"";return r.replace(We,function(e){return Ue[e]}).replace(/\n/g,"
").replace(Ge,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function Xe(e){var r=e+"";return r.replace(We,function(e){return Ue[e]}).replace(Ge,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var $e=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 Ye(e){return e.replace(/(\r\n|[\r\n])/g," ")}function Ke(e){switch(e){case 1:;case true:;case"1":;case"true":;case"TRUE":return true;default:return false;}}var Je=function _b(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};var qe=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("")};if(w){var Ze=function xb(e){var r=Buffer.alloc(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")};var Qe="foo bar baz☃🍣";if(Je(Qe)==Ze(Qe))Je=Ze;var er=function Ob(e){return k(e,"binary").toString("utf8")};if(Je(Qe)==er(Qe))Je=er;qe=function(e){return k(e,"utf8").toString("binary")}}var rr=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 tr=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 nr=/<\/?(?:vt:)?variant>/g,ir=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function lr(e){return Y(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function cr(e,r,t){return"<"+e+(t!=null?lr(t):"")+(r!=null?(r.match(fr)?' xml:space="preserve"':"")+">"+r+""}function hr(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function ur(e,r){switch(typeof e){case"string":var t=cr("vt:lpwstr",ze(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return cr((e|0)==e?"vt:i4":"vt:r8",ze(String(e)));case"boolean":return cr("vt:bool",e?"true":"false");}if(e instanceof Date)return cr("vt:filetime",hr(e));throw new Error("Unable to serialize "+e)}function dr(e){if(w&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return Je(_(O(e)));throw new Error("Bad input format: expected Buffer or string")}var vr=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/][^>]*)?>/gm;var pr={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 gr=["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 mr={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 br(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 wr(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 kr=function(e){var r=[],t=10240;for(var a=0;a0?yr(e,r+4,r+4+t-1):""};var Or=xr;var Rr=function(e,r){var t=jr(e,r);return t>0?yr(e,r+4,r+4+t-1):""};var Ir=Rr;var Nr=function(e,r){var t=2*jr(e,r);return t>0?yr(e,r+4,r+4+t-1):""};var Dr=Nr;var Fr,Pr;Fr=Pr=function Rb(e,r){var t=jr(e,r);return t>0?Ar(e,r+4,r+4+t):""};var Lr=function(e,r){var t=jr(e,r);return t>0?yr(e,r+4,r+4+t):""};var Mr=Lr;var Ur,Br;Ur=Br=function(e,r){return br(e,r)};var Wr=function Ib(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(w){Ar=function(e,r,t){if(!Buffer.isBuffer(e))return Er(e,r,t);return e.toString("utf16le",r,t).replace(N,"")};Cr=function(e,r,t){return Buffer.isBuffer(e)?e.toString("hex",r,r+t):Sr(e,r,t)};xr=function Nb(e,r){if(!Buffer.isBuffer(e))return Or(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Rr=function Db(e,r){if(!Buffer.isBuffer(e))return Ir(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Nr=function Fb(e,r){if(!Buffer.isBuffer(e))return Dr(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};Fr=function Pb(e,r){if(!Buffer.isBuffer(e))return Pr(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};Lr=function Lb(e,r){if(!Buffer.isBuffer(e))return Mr(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};yr=function Mb(e,r,t){return Buffer.isBuffer(e)?e.toString("utf8",r,t):_r(e,r,t)};kr=function(e){return e[0].length>0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map(function(e){return Buffer.isBuffer(e)?e:k(e)})):Tr(e)};I=function(e){return Buffer.concat(e.map(function(e){return Buffer.isBuffer(e)?e:k(e)}))};Ur=function Ub(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return Br(e,r)};Wr=function Bb(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function Hr(){Ar=function(e,r,t){return a.utils.decode(1200,e.slice(r,t)).replace(N,"")};yr=function(e,r,t){return a.utils.decode(65001,e.slice(r,t))};xr=function(e,r){var n=jr(e,r);return n>0?a.utils.decode(t,e.slice(r+4,r+4+n-1)):""};Rr=function(e,t){var n=jr(e,t);return n>0?a.utils.decode(r,e.slice(t+4,t+4+n-1)):""};Nr=function(e,r){var t=2*jr(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};Fr=function(e,r){var t=jr(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t)):""};Lr=function(e,r){var t=jr(e,r);return t>0?a.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof a!=="undefined")Hr();var zr=function(e,r){return e[r]};var Vr=function(e,r){return e[r+1]*(1<<8)+e[r]};var Gr=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var jr=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var Xr=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var $r=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function Yr(e,t){var n="",i,s,f=[],o,l,c,h;switch(t){case"dbcs":h=this.l;if(w&&Buffer.isBuffer(this))n=this.slice(this.l,this.l+2*e).toString("utf16le");else for(c=0;c0?Xr:$r)(this,this.l);this.l+=4;return i}else{s=jr(this,this.l);this.l+=4}return s;case 8:;case-8:if(t==="f"){if(e==8)s=Ur(this,this.l);else s=Ur([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=Cr(this,this.l,e);break;};}this.l+=e;return n}var Kr=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 Jr=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 qr=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function Zr(e,r,n){var i=0,s=0;if(n==="dbcs"){for(s=0;s!=r.length;++s)qr(this,r.charCodeAt(s),this.l+2*s);i=2*r.length}else if(n==="sbcs"){if(typeof a!=="undefined"&&t==874){for(s=0;s!=r.length;++s){var f=a.utils.encode(t,r.charAt(s));this[this.l+s]=f[0]}}else{r=r.replace(/[^\x00-\x7F]/g,"_");for(s=0;s!=r.length;++s)this[this.l+s]=r.charCodeAt(s)&255}i=r.length}else if(n==="hex"){for(;s>8}while(this.l>>=8;this[this.l+1]=r&255;break;case 3:i=3;this[this.l]=r&255;r>>>=8;this[this.l+1]=r&255;r>>>=8;this[this.l+2]=r&255;break;case 4:i=4;Kr(this,r,this.l);break;case 8:i=8;if(n==="f"){wr(this,r,this.l);break};case 16:break;case-4:i=4;Jr(this,r,this.l);break;}this.l+=i;return this}function Qr(e,r){var t=Cr(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function et(e,r){e.l=r;e._R=Yr;e.chk=Qr;e._W=Zr}function rt(e,r){e.l+=r}function tt(e){var r=E(e);et(r,0);return r}function at(e,r,t){if(!e)return;var a,n,i;et(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&&Wr(t))e.push(t)}function st(e,r,t){var a=ce(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 ft(e,r,t){var a=ce(e);a.s=st(a.s,r.s,t);a.e=st(a.e,r.s,t);return a}function ot(e,r){if(e.cRel&&e.c<0){e=ce(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=ce(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=kt(e);if(!e.cRel&&e.cRel!=null)t=gt(t);if(!e.rRel&&e.rRel!=null)t=ut(t);return t}function lt(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?"":"$")+pt(e.s.c)+":"+(e.e.cRel?"":"$")+pt(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?"":"$")+ht(e.s.r)+":"+(e.e.rRel?"":"$")+ht(e.e.r)}}return ot(e.s,r.biff)+":"+ot(e.e,r.biff)}function ct(e){return parseInt(dt(e),10)-1}function ht(e){return""+(e+1)}function ut(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function dt(e){return e.replace(/\$(\d+)$/,"$1"); -}function vt(e){var r=mt(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function pt(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 gt(e){return e.replace(/^([A-Z])/,"$$$1")}function mt(e){return e.replace(/^\$([A-Z])/,"$1")}function bt(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function wt(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 kt(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 Tt(e){var r=e.indexOf(":");if(r==-1)return{s:wt(e),e:wt(e)};return{s:wt(e.slice(0,r)),e:wt(e.slice(r+1))}}function At(e,r){if(typeof r==="undefined"||typeof r==="number"){return At(e.s,e.e)}if(typeof e!=="string")e=kt(e);if(typeof r!=="string")r=kt(r);return e==r?e:e+":"+r}function Et(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 Ct(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=F.format(e.z,t?ee(r):r)}catch(a){}try{return e.w=F.format((e.XF||{}).numFmtId||(t?14:0),t?ee(r):r)}catch(a){return""+r}}function St(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 Ia[e.v]||e.v;if(r==undefined)return Ct(e,e.v);return Ct(e,r)}function yt(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function _t(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"?wt(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=Et(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 v=s+h,p=f+u;if(l.s.r>v)l.s.r=v;if(l.s.c>p)l.s.c=p;if(l.e.r0)r._W(0,e,"dbcs");return t?r.slice(0,r.l):r}function Dt(e){return{ich:e._R(2),ifnt:e._R(2)}}function Ft(e,r){if(!r)r=tt(4);r._W(2,e.ich||0);r._W(2,e.ifnt||0);return r}function Pt(e,r){var t=e.l;var a=e._R(1);var n=It(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(Dt(e));s.r=i}else s.r=[{ich:0,ifnt:0}];e.l=t+r;return s}function Lt(e,r){var t=false;if(r==null){t=true;r=tt(15+4*e.t.length)}r._W(1,0);Nt(e.t,r);return t?r.slice(0,r.l):r}var Mt=Pt;function Ut(e,r){var t=false;if(r==null){t=true;r=tt(23+4*e.t.length)}r._W(1,1);Nt(e.t,r);r._W(4,1);Ft({ich:0,ifnt:0},r);return t?r.slice(0,r.l):r}function Bt(e){var r=e._R(4);var t=e._R(2);t+=e._R(1)<<16;e.l++;return{c:r,iStyleRef:t}}function Wt(e,r){if(r==null)r=tt(8);r._W(-4,e.c);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}function Ht(e){var r=e._R(2);r+=e._R(1)<<16;e.l++;return{c:-1,iStyleRef:r}}function zt(e,r){if(r==null)r=tt(4);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}var Vt=It;var Gt=Nt;function jt(e){var r=e._R(4);return r===0||r===4294967295?"":e._R(r,"dbcs")}function Xt(e,r){var t=false;if(r==null){t=true;r=tt(127)}r._W(4,e.length>0?e.length:4294967295);if(e.length>0)r._W(0,e,"dbcs");return t?r.slice(0,r.l):r}var $t=It;var Yt=jt;var Kt=Xt;function Jt(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?Ur([0,0,0,0,r[0]&252,r[1],r[2],r[3]],0):Xr(r,0)>>2;return t?n/100:n}function qt(e,r){if(r==null)r=tt(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 Zt(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 Qt(e,r){if(!r)r=tt(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 ea=Zt;var ra=Qt;function ta(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e._R(8,"f")}function aa(e,r){return(r||tt(8))._W(8,e,"f")}function na(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=Ra[n];if(l)r.rgb=oo(l);break;case 2:r.rgb=oo([s,f,o]);break;case 3:r.theme=n;break;}if(i!=0)r.tint=i>0?i/32767:i/32768;return r}function ia(e,r){if(!r)r=tt(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 sa(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 fa(e,r){if(!r)r=tt(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 oa(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 la(e){return oa(e,1)}function ca(e){return oa(e,2)}var ha=2;var ua=3;var da=11;var va=12;var pa=19;var ga=30;var ma=64;var ba=65;var wa=71;var ka=4096;var Ta=80;var Aa=81;var Ea=[Ta,Aa];var Ca={1:{n:"CodePage",t:ha},2:{n:"Category",t:Ta},3:{n:"PresentationFormat",t:Ta},4:{n:"ByteCount",t:ua},5:{n:"LineCount",t:ua},6:{n:"ParagraphCount",t:ua},7:{n:"SlideCount",t:ua},8:{n:"NoteCount",t:ua},9:{n:"HiddenCount",t:ua},10:{n:"MultimediaClipCount",t:ua},11:{n:"ScaleCrop",t:da},12:{n:"HeadingPairs",t:ka|va},13:{n:"TitlesOfParts",t:ka|ga},14:{n:"Manager",t:Ta},15:{n:"Company",t:Ta},16:{n:"LinksUpToDate",t:da},17:{n:"CharacterCount",t:ua},19:{n:"SharedDoc",t:da},22:{n:"HyperlinksChanged",t:da},23:{n:"AppVersion",t:ua,p:"version"},24:{n:"DigSig",t:ba},26:{n:"ContentType",t:Ta},27:{n:"ContentStatus",t:Ta},28:{n:"Language",t:Ta},29:{n:"Version",t:Ta},255:{},2147483648:{n:"Locale",t:pa},2147483651:{n:"Behavior",t:pa},1919054434:{}};var Sa={1:{n:"CodePage",t:ha},2:{n:"Title",t:Ta},3:{n:"Subject",t:Ta},4:{n:"Author",t:Ta},5:{n:"Keywords",t:Ta},6:{n:"Comments",t:Ta},7:{n:"Template",t:Ta},8:{n:"LastAuthor",t:Ta},9:{n:"RevNumber",t:Ta},10:{n:"EditTime",t:ma},11:{n:"LastPrinted",t:ma},12:{n:"CreatedDate",t:ma},13:{n:"ModifiedDate",t:ma},14:{n:"PageCount",t:ua},15:{n:"WordCount",t:ua},16:{n:"CharCount",t:ua},17:{n:"Thumbnail",t:wa},18:{n:"Application",t:Ta},19:{n:"DocSecurity",t:ua},255:{},2147483648:{n:"Locale",t:pa},2147483651:{n:"Behavior",t:pa},1919054434:{}};var ya={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 _a=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function xa(e){return e.map(function(e){return[e>>16&255,e>>8&255,e&255]})}var Oa=xa([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,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var Ra=ce(Oa);var Ia={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var Na=q(Ia);var Da={"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 Fa={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 Pa(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function La(e){var r=Pa();if(!e||!e.match)return r;var t={};(e.match(Ne)||[]).forEach(function(e){var a=Pe(e);switch(a[0].replace(De,"<")){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}var Ma=cr("Types",null,{xmlns:pr.CT,"xmlns:xsd":pr.xsd,"xmlns:xsi":pr.xsi});function Ua(e,r){var t=Z(Da);var a=[],n;a[a.length]=Re;a[a.length]=Ma;a=a.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 cr("Default",null,{Extension:e[0],ContentType:e[1]})}));var i=function(t){if(e[t]&&e[t].length>0){n=e[t][0];a[a.length]=cr("Override",null,{PartName:(n[0]=="/"?"":"/")+n,ContentType:Fa[t][r.bookType]||Fa[t]["xlsx"]})}};var s=function(t){(e[t]||[]).forEach(function(e){a[a.length]=cr("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:Fa[t][r.bookType]||Fa[t]["xlsx"]})})};var f=function(r){(e[r]||[]).forEach(function(e){a[a.length]=cr("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:t[r][0]})})};i("workbooks");s("sheets");s("charts");f("themes");["strs","styles"].forEach(i);["coreprops","extprops","custprops"].forEach(f);f("vba");f("comments");f("threadedcomments");f("drawings");s("metadata");f("people");if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var Ba={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",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function Wa(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function Ha(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Ne)||[]).forEach(function(e){var n=Pe(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Ga=[Ba.HLINK,Ba.XPATH,Ba.XMISS];function ja(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(Ga.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 Xa="application/vnd.oasis.opendocument.spreadsheet";function $a(e,r){var t=dr(e);var a;var n;while(a=vr.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Pe(a[0],false);if(n.path=="/"&&n.type!==Xa)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 Ya(e){var r=[Re];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function Ka(e,r,t){return[' \n',' \n'," \n"].join("")}function Ja(e,r){return[' \n',' \n'," \n"].join("")}function qa(e){var r=[Re];r.push('\n');for(var t=0;t!=e.length;++t){r.push(Ka(e[t][0],e[t][1]));r.push(Ja("",e[t][0]))}r.push(Ka("","Document","pkg"));r.push("");return r.join("")}function Za(){return'Sheet'+"JS "+e.version+""}var Qa=[["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 en=function(){var e=new Array(Qa.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function rn(e){var r={};e=Je(e);for(var t=0;t0)r[a[1]]=Be(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=oe(r[a[1]])}return r}function tn(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=ze(r);a[a.length]=t?cr(e,r,t):or(e,r)}function an(e,r){var t=r||{};var a=[Re,cr("cp:coreProperties",null,{"xmlns:cp":pr.CORE_PROPS,"xmlns:dc":pr.dc,"xmlns:dcterms":pr.dcterms,"xmlns:dcmitype":pr.dcmitype,"xmlns:xsi":pr.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)tn("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:hr(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)tn("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:hr(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var i=0;i!=Qa.length;++i){var s=Qa[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)tn(s[0],f,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var nn=[["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 sn=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function fn(e,r,t,a){var n=[];if(typeof e=="string")n=sr(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 on(e,r,t){var a={};if(!r)r={};e=Je(e);nn.forEach(function(t){var n=(e.match(rr(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=Be(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)fn(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function ln(e){var r=[],t=cr;if(!e)e={};e.Application="SheetJS";r[r.length]=Re;r[r.length]=cr("Properties",null,{xmlns:pr.EXT_PROPS,"xmlns:vt":pr.vt});nn.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=ze(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""+ze(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var cn=/<[^>]+>[^<]*/g;function hn(e,r){var t={},a="";var n=e.match(cn);if(n)for(var i=0;i!=n.length;++i){var s=n[i],f=Pe(s);switch(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]=Be(c);break;case"bool":t[a]=Ke(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]=oe(c);break;case"cy":;case"error":t[a]=Be(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 dn={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 vn;function pn(e,r,t){if(!vn)vn=J(dn);r=vn[r]||r;e[r]=t}function gn(e,r){var t=[];Y(dn).map(function(e){for(var r=0;r'+n.join("")+""}function bn(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 wn(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=tt(8);s._W(4,a);s._W(4,n);return s}function kn(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 Tn(e,r,t){var a=e._R(0,"lpwstr");if(t)e.l+=4-(a.length+1&3)&3;return a}function An(e,r,t){if(r===31)return Tn(e);return kn(e,r,t)}function En(e,r,t){return An(e,r,t===false?0:4)}function Cn(e,r){if(!r)throw new Error("VtUnalignedString must have positive length");return An(e,r,0)}function Sn(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(N,"");if(e.l-n&2)e.l+=2}return t}function yn(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a)t[a]=e._R(0,"lpstr-cp").replace(N,"");return t}function _n(e){var r=e.l;var t=Nn(e,Aa);if(e[e.l]==0&&e[e.l+1]==0&&e.l-r&2)e.l+=2;var a=Nn(e,ua);return[t,a]}function xn(e){var r=e._R(4);var t=[];for(var a=0;a>2+1<<2;return a}function Rn(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 In(e){var r={};r.Size=e._R(4);e.l+=r.Size+3-(r.Size-1)%4;return r}function Nn(e,r,t){var a=e._R(2),n,i=t||{};e.l+=2;if(r!==va)if(a!==r&&Ea.indexOf(r)===-1&&!((r&65534)==4126&&(a&65534)==4126))throw new Error("Expected type "+r+" saw "+a);switch(r===va?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 kn(e,a,4).replace(N,"");case 31:return Tn(e);case 64:return bn(e);case 65:return Rn(e);case 71:return In(e);case 80:return En(e,a,!i.raw).replace(N,"");case 81:return Cn(e,a).replace(N,"");case 4108:return xn(e);case 4126:;case 4127:return a==4127?Sn(e):yn(e);default:throw new Error("TypedPropertyValue unrecognized type "+r+" "+a);}}function Dn(e,r){var t=tt(4),a=tt(4);t._W(4,e==80?31:e);switch(e){case 3:a._W(-4,r);break;case 5:a=tt(8);a._W(8,r,"f");break;case 11:a._W(4,r?1:0);break;case 64:a=wn(r);break;case 31:;case 80:a=tt(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 I([t,a])}function Fn(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 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){var p=r[i[s][0]];d[p.n]=Nn(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:o(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=Nn(e,ha);o(f);if(l!==-1){var g=e.l;e.l=i[l][1];c=On(e,f);e.l=g}}else if(i[s][0]===0){if(f===0){l=s;e.l=i[s+1][1];continue}c=On(e,f)}else{var m=c[i[s][0]];var b;switch(e[e.l]){case 65:e.l+=4;b=Rn(e);break;case 30:e.l+=4;b=En(e,e[e.l-4]).replace(/\u0000+$/,"");break;case 31:e.l+=4;b=En(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=Vn(e,4);break;case 64:e.l+=4;b=oe(bn(e));break;default:throw new Error("unparsed value: "+e[e.l]);}d[m]=b}}}e.l=t+a;return d}var Pn=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function Ln(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 Mn(e,r,t){var a=tt(8),n=[],i=[];var s=8,f=0;var o=tt(8),l=tt(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=tt(8);l._W(4,0);n.unshift(l);var c=[tt(4)];c[0]._W(4,e.length);for(f=0;f-1||sn.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 v=t[d];if(v.p=="version"&&typeof u=="string"){var p=u.split(".");u=(+p[0]<<16)+(+p[1]||0)}o=Dn(v.t,u)}else{var g=Ln(u);if(g==-1){g=31;u=String(u)}o=Dn(g,u)}i.push(o);l=tt(8);l._W(4,!r?2+f:d);n.push(l);s+=8+o.length}var m=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 qn(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 Zn(e){var r=e.t||"",t=1;var a=tt(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=tt(2*r.length);n._W(2*r.length,r,"utf16le");var i=[a,n];return I(i)}function Qn(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 ei(e,r,t){var a=e._R(t&&t.biff==2?1:2);if(a===0){e.l++;return""}return Qn(e,a,t)}function ri(e,r,t){if(t.biff>5)return ei(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 ti(e,r,t){if(!t)t=tt(3+2*e.length);t._W(2,e.length);t._W(1,1);t._W(31,e,"utf16le");return t}function ai(e){var r=e._R(1);e.l++;var t=e._R(2);e.l+=2;return[r,t]}function ni(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(N,"");if(a)e.l+=24;return n}function ii(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(N,"");return t+s}function si(e,r){var t=e._R(16);r-=16;switch(t){case"e0c9ea79f9bace118c8200aa004ba90b":return ni(e,r);case"0303000000000000c000000000000046":return ii(e,r);default:throw new Error("Unsupported Moniker "+t);}}function fi(e){var r=e._R(4);var t=r>0?e._R(r,"utf16le").replace(N,""):"";return t}function oi(e,r){if(!r)r=tt(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 bi(e){var r=e._R(2);var t=Jt(e);return[r,t]}function wi(e,r,t){e.l+=4;r-=4;var a=e.l+r;var n=Jn(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 ki(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 Ti(e,r){if(!r)r=tt(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 Ai(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 Ei=Ai;function Ci(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 Si(e){var r={};e.l+=4;e.l+=16;r.fSharedNote=e._R(2);e.l+=4;return r}function yi(e){var r={};e.l+=4;e.cf=e._R(2);return r}function _i(e){e.l+=2;e.l+=e._R(2)}var xi={0:_i,4:_i,5:_i,6:_i,7:yi,8:_i,9:_i,10:_i,11:_i,12:_i,13:Si,14:_i,15:_i,16:_i,17:_i,18:_i,19:_i,20:_i,21:Ci};function Oi(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 Ii(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=tt(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 Ni(e,r){if(r===0)return 1200;if(e._R(2)!==1200){}return 1200}function Di(e,r,t){if(t.enc){e.l+=r;return""}var a=e.l;var n=ri(e,0,t);e._R(r+a-e.l);return n}function Fi(e,r){var t=!r||r.biff==8;var a=tt(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=tt(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 Ui(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 ji(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 Xi(){var e=tt(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 $i(e,r,t){if(t&&t.biff>=2&&t.biff<5)return{};var a=e._R(2);return{RTL:a&64}}function Yi(e){var r=tt(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 Ki(){}function Ji(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=Jn(e,0,t);return a}function qi(e,r){var t=e.name||"Arial";var a=r&&r.biff==5,n=a?15+t.length:16+2*t.length;var i=tt(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 Zi(e){var r=di(e);r.isst=e._R(4);return r}function Qi(e,r,t,a){var n=tt(10);vi(e,r,a,n);n._W(4,t);return n}function es(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=e.l+r;var n=di(e,6);if(t.biff==2)e.l++;var i=ei(e,a-e.l,t);n.val=i;return n}function rs(e,r,t,a,n){var i=!n||n.biff==8;var s=tt(6+2+ +i+(1+i)*t.length);vi(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 ts(e,r,t){var a=e._R(2);var n=ri(e,0,t);return[a,n]}function as(e,r,t,a){var n=t&&t.biff==5;if(!a)a=tt(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 ns=ri;function is(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 ss(e,r){var t=r.biff==8||!r.biff?4:2;var a=tt(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 fs(e){var r=e._R(2),t=e._R(2);var a=bi(e);return{r:r,c:t,ixfe:a[0],rknum:a[1]}}function os(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 hs(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=cs(e,r,a.fStyle,t);return a}function us(e,r,t,a){var n=t&&t.biff==5;if(!a)a=tt(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 ds(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 vs(e){var r=tt(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 ps(e,r,t){var a=di(e,6);if(t.biff==2||r==9)++e.l;var n=Yn(e,2);a.val=n;a.t=n===true||n===false?"b":"e";return a}function gs(e,r,t,a,n,i){var s=tt(8);vi(e,r,a,s);Kn(t,i,s);return s}function ms(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=di(e,6);var n=ta(e,8);a.val=n;return a}function bs(e,r,t,a){var n=tt(14);vi(e,r,a,n);aa(t,n);return n}var ws=gi;function ks(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=Qn(e,i);var f=[];while(a>e.l)f.push(ei(e));return[i,n,s,f]}function Ts(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=wi(e,r-2,t);i.body=n||e._R(r-2);if(typeof n==="string")i.Name=n;return i}var As=["_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"];function Es(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=Qn(e,s,t);if(n&32)l=As[l.charCodeAt(0)];var c=a-e.l;if(t&&t.biff==2)--c;var h=a==e.l||f===0||!(c>0)?[]:tu(e,c,t,f);return{chKey:i,Name:l,itab:o,rgce:h}}function Cs(e,r,t){if(t.biff<8)return Ss(e,r,t);var a=[],n=e.l+r,i=e._R(t.biff>8?4:2);while(i--!==0)a.push(mi(e,t.biff>8?12:6,t));if(e.l!=n)throw new Error("Bad ExternSheet: "+e.l+" != "+n);return a}function Ss(e,r,t){if(e[e.l+1]==3)e[e.l]++;var a=Jn(e,r,t);return a.charCodeAt(0)==3?a.slice(1):a}function ys(e,r,t){if(t.biff<8){e.l+=r;return}var a=e._R(2);var n=e._R(2);var i=Qn(e,a,t);var s=Qn(e,n,t);return[i,s]}function _s(e,r,t){var a=Ai(e,6);e.l++;var n=e._R(1);r-=8;return[au(e,r,t),n,a]}function xs(e,r,t){var a=Ei(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,eu(e,r,t,a)]}function Os(e){var r=e._R(4)!==0;var t=e._R(4)!==0;var a=e._R(4);return[r,t,a]}function Rs(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=ri(e,0,t);if(t.biff<8)e._R(1);return[{r:a,c:n},f,s,i]}function Is(e,r,t){return Rs(e,r,t)}function Ns(e,r){var t=[];var a=e._R(2);while(a--)t.push(ki(e,r));return t}function Ds(e){var r=tt(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 Us(e,r){var t=ki(e,8);e.l+=16;var a=li(e,r-24);return[t,a]}function Bs(e){var r=tt(24);var t=wt(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 I([r,ci(e[1])])}function Ws(e,r){e._R(2);var t=ki(e,8);var a=e._R((r-10)/2,"dbcs-cont");a=a.replace(N,"");return[t,a]}function Hs(e){var r=e[1].Tooltip;var t=tt(10+2*(r.length+1));t._W(2,2048);var a=wt(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(ui(e,8));return t}function js(e){var r=e._R(2);var t=[];while(r-- >0)t.push(ui(e,8));return t}function Xs(e){e.l+=2;var r={cxfs:0,crc:0};r.cxfs=e._R(2);r.crc=e._R(4);return r}function $s(e,r,t){if(!t.cellStyles)return rt(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 Ys(e,r){var t=tt(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 Ks(e,r){var t={};if(r<32)return t;e.l+=16;t.header=ta(e,8);t.footer=ta(e,8);e.l+=2;return t}function Js(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 qs(e){var r=tt(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 v=[],p={};var g=Math.min(i.length,s==2?521:h-10-(o?264:0));var m=l?32:11;while(i.l0){if(i[i.l]===42){i.l+=u;continue}++i.l;n[++w]=[];k=0;for(k=0;k!=v.length;++k){var T=i.slice(i.l,i.l+v[k].len);i.l+=v[k].len;et(T,0);var A=a.utils.decode(d,T);switch(v[k].type){case"C":if(A.trim().length)n[w][k]=A.replace(/\s+$/,"");break;case"D":if(A.length===8)n[w][k]=new Date(+A.slice(0,4),+A.slice(4,6)-1,+A.slice(6,8));else n[w][k]=A;break;case"F":n[w][k]=parseFloat(A.trim());break;case"+":;case"I":n[w][k]=l?T._R(-4,"i")^2147483648:T._R(4,"i");break;case"L":switch(A.trim().toUpperCase()){case"Y":;case"T":n[w][k]=true;break;case"N":;case"F":n[w][k]=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[w][k]="##MEMO##"+(l?parseInt(A.trim(),10):T._R(4));break;case"N":A=A.replace(/\u0000/g,"").trim();if(A&&A!=".")n[w][k]=+A||0;break;case"@":n[w][k]=new Date(T._R(-8,"f")-621356832e5);break;case"T":n[w][k]=new Date((T._R(4)-2440588)*864e5+T._R(4));break;case"Y":n[w][k]=T._R(4,"i")/1e4+T._R(4,"i")/1e4*Math.pow(2,32);break;case"O":n[w][k]=-T._R(-8,"f");break;case"B":if(o&&v[k].len==8){n[w][k]=T._R(8,"f");break};case"G":;case"P":T.l+=v[k].len;break;case"0":if(v[k].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+v[k].type);}}}if(s!=2)if(i.l=0)o(+n.codepage);if(n.type=="string")throw new Error("Cannot write DBF to JS string");var i=nt();var s=Km(e,{header:1,raw:true,cellDates:true});var l=s[0],c=s.slice(1),h=e["!cols"]||[];var u=0,d=0,v=0,p=1;for(u=0;u250)A=250;T=((h[u]||{}).DBF||{}).type;if(T=="C"){if(h[u].DBF.len>A)A=h[u].DBF.len}if(k=="B"&&T=="N"){k="N";w[u]=h[u].DBF.dec;A=h[u].DBF.len}b[u]=k=="C"||T=="N"?A:f[k]||0;p+=b[u];m[u]=k}var C=i.next(32);C._W(4,318902576);C._W(4,c.length);C._W(2,296+32*v);C._W(2,p);for(u=0;u<4;++u)C._W(4,0);C._W(4,0|(+r[t]||3)<<8);for(u=0,d=0;u":190,"?":191,"{":223};var r=new RegExp("N("+Y(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(b.decode(e),r);case"binary":return s(e,r);case"buffer":return s(w&&Buffer.isBuffer(e)?e.toString("binary"):_(e),r);case"array":return s(le(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 v=null;var p={},g=[],m=[],b=[];var w=0,k;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 A=T.replace(/;;/g,"\0").split(";").map(function(e){return e.replace(/\u0000/g,";")});var E=A[0],C;if(T.length>0)switch(E){case"ID":break;case"E":break;case"B":break;case"O":break;case"W":break;case"P":if(A[1].charAt(0)=="P")d.push(T.slice(3).replace(/;;/g,";"));break;case"C":var S=false,y=false,_=false,x=false,O=-1,R=-1;for(h=1;h-1&&u[O][R];if(!N||!N[1])throw new Error("SYLK shared formula cannot find base");u[f][l][1]=kc(N[1],{r:f-O,c:l-R})}break;case"F":var D=0;for(h=1;h0){g[f].hpt=w;g[f].hpx=yo(w)}else if(w===0)g[f].hidden=true;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+T);}if(D<1)v=null;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+T);}}if(g.length>0)p["!rows"]=g;if(m.length>0)p["!cols"]=m;if(i&&i.sheetRows)u=u.slice(0,i.sheetRows);return[u,p]}function f(e,r){var t=i(e,r);var a=t[0],n=t[1];var s=xt(a,r);Y(n).forEach(function(e){s[e]=n[e]});return s}function l(e,r){return yt(f(e,r),r)}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"+wc(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 h(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=mo(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=bo(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*So(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function d(e,r){var t=["ID;PWXL;N;E"],a=[];var n=Et(e["!ref"]),i;var s=Array.isArray(e);var f="\r\n";t.push("P;PGeneral");t.push("F;P0;DG0G8;M255");if(e["!cols"])h(t,e["!cols"]);if(e["!rows"])u(t,e["!rows"]);t.push("B;Y"+(n.e.r-n.s.r+1)+";X"+(n.e.c-n.s.c+1)+";D"+[n.s.c,n.s.r,n.e.c,n.e.r].join(" "));for(var o=n.s.r;o<=n.e.r;++o){for(var l=n.s.c;l<=n.e.c;++l){var d=kt({r:o,c:l});i=s?(e[o]||[])[l]:e[d];if(!i||i.v==null&&(!i.f||i.F))continue;a.push(c(i,e,o,l,r))}}return t.join(f)+f+a.join(f)+f+"E"+f}return{to_workbook:l,to_sheet:f,from_sheet:d}}();var vf=function(){function e(e,t){switch(t.type){case"base64":return r(b.decode(e),t);case"binary":return r(e,t);case"buffer":return r(w&&Buffer.isBuffer(e)?e.toString("binary"):_(e),t);case"array":return r(le(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"]=At(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 xt(r(e,t),t)}function o(e,r){var t="",n=r.type=="string"?[0,0,0,0]:Cm(e,r);switch(r.type){case"base64":t=b.decode(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=w&&Buffer.isBuffer(e)?e.toString("binary"):_(e);break;case"array":t=le(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=Je(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=Je(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 pf.to_sheet(r.type=="string"?t:Je(t),r);return f(t,r)}function l(e,r){return yt(o(e,r),r)}function c(e){var r=[];var t=Et(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=kt({r:i,c:f});a=n?(e[i]||[])[f]:e[o];if(!a||a.v==null){s.push(" ");continue}var l=(a.w||(St(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 mf(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=df.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 gf.to_workbook(e,r)}}var bf=function(){function e(e,r,t){if(!e)return;et(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 6:h=e;break;case 204:if(e)s=e;break;case 222:s=e;break;case 15:;case 51:if(!a.qpro)e[1].v=e[1].v.slice(1);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||F._table[14];if(a.cellDates){e[1].t="d";e[1].v=ne(e[1].v)}}if(a.qpro){if(e[3]>f){n["!ref"]=At(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[kt(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[kt(e[0])]=e[1];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:e[1].v=e[1].v.slice(1);case 23:;case 24:;case 25:;case 37:;case 39:;case 40:if(e[3]>f){n["!ref"]=At(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[kt(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=nt();var n=Et(e["!ref"]);var s=Array.isArray(e);var f=[];lg(a,0,i(1030));lg(a,6,l(n));var c=Math.min(n.e.r,8191);for(var h=n.s.r;h<=c;++h){var d=ht(h);for(var p=n.s.c;p<=n.e.c;++p){if(h===n.s.r)f[p]=pt(p);var g=f[p]+d;var b=s?(e[h]||[])[p]:e[g];if(!b||b.t=="z")continue;if(b.t=="n"){if((b.v|0)==b.v&&b.v>=-32768&&b.v<=32767)lg(a,13,v(h,p,b.v));else lg(a,14,m(h,p,b.v))}else{var w=St(b);lg(a,15,u(h,p,w.slice(0,239)))}}}lg(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=nt();lg(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=tt(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{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=tt(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=c(e,r,t);a[1].v=e._R(2,"i");return a}function v(e,r,t){var a=tt(7);a._W(1,255);a._W(2,r);a._W(2,e);a._W(2,t,"i");return a}function p(e,r,t){var a=c(e,r,t);a[1].v=e._R(8,"f");return a}function m(e,r,t){var a=tt(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);E(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?pt(r):ht(r))}var T={51:["FALSE",0],52:["TRUE",0],70:["LEN",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],111:["T",1]};var A=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function E(e,r){et(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 y(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=tt(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 x(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 O(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 R(e,r,t,a){var n=tt(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=O(e,14);e.l+=r-14;return t}function N(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,14);e.l+=r-10;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:jn},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:d},14:{n:"NUMBER",f:p},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:h},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},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:y},23:{n:"NUMBER17",f:O},24:{n:"NUMBER18",f:x},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:N},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:""}};return{sheet_to_wk1:a,book_to_wk3:n,to_workbook:r}}();function wf(e){var r={},t=e.match(Ne),a=0;var n=false;if(t)for(;a!=t.length;++a){var s=Pe(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 kf=function(){var e=rr("t"),r=rr("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:Be(a[1])};var i=t.match(r);if(i)n.s=wf(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 Tf=function Wb(){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 Af=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,Ef=/<(?:\w+:)?r>/;var Cf=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function Sf(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=Be(Je(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""));a.r=Je(e);if(t)a.h=je(a.t)}else if(e.match(Ef)){a.r=Je(e);a.t=Be(Je((e.replace(Cf,"").match(Af)||[]).join("").replace(Ne,"")));if(t)a.h=Tf(kf(a.r))}return a}var yf=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var _f=/<(?:\w+:)?(?:si|sstItem)>/g;var xf=/<\/(?:\w+:)?(?:si|sstItem)>/;function Of(e,r){var t=[],a="";if(!e)return t;var n=e.match(yf);if(n){a=n[2].replace(_f,"").split(xf);for(var i=0;i!=a.length;++i){var s=Sf(a[i].trim(),r);if(s!=null)t[t.length]=s}n=Pe(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var Rf=/^\s|\s$|[\t\n\r]/;function If(e,r){if(!r.bookSST)return"";var t=[Re];t[t.length]=cr("sst",null,{xmlns:gr[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 Nf(e){return[e._R(4),e._R(4)]}function Df(e,r){var t=[];var a=false;at(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 Ff(e,r){if(!r)r=tt(8);r._W(4,e.Count);r._W(4,e.Unique);return r}var Pf=Lt;function Lf(e){var r=nt();it(r,159,Ff(e));for(var t=0;t=4)e.l+=r-4;return t}function Bf(e){var r={};r.id=e._R(0,"lpp4");r.R=Uf(e,4);r.U=Uf(e,4);r.W=Uf(e,4);return r}function Wf(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 Hf(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(Wf(e));return r}function zf(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(e._R(0,"lpp4"));return r}function Vf(e){var r={};e._R(4);e.l+=4;r.id=e._R(0,"lpp4");r.name=e._R(0,"lpp4");r.R=Uf(e,4);r.U=Uf(e,4);r.W=Uf(e,4);return r}function Gf(e){var r=Vf(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 jf(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 Xf(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 $f(e){var r=Uf(e);switch(r.Minor){case 2:return[r.Minor,Yf(e,r)];case 3:return[r.Minor,Kf(e,r)];case 4:return[r.Minor,Jf(e,r)];}throw new Error("ECMA-376 Encrypted file unrecognized Version: "+r.Minor)}function Yf(e){var r=e._R(4);if((r&63)!=36)throw new Error("EncryptionInfo mismatch");var t=e._R(4);var a=jf(e,t);var n=Xf(e,e.length-e.l);return{t:"Std",h:a,v:n}}function Kf(){throw new Error("File is password-protected: ECMA-376 Extensible")}function Jf(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(Ne,function n(e){var t=Pe(e);switch(Le(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=jf(e,n);r-=n;t.EncryptionVerifier=Xf(e,r);return t}function Zf(e){var r={};var t=r.EncryptionVersionInfo=Uf(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 Qf(e){var r=0,t;var a=Mf(e);var n=a.length+1,i,s;var f,o,l;t=E(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 eo=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=Mf(r);var a=i(t);var s=t.length;var f=E(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 ro=function(e,r,t,a,n){if(!n)n=r;if(!a)a=eo(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 to=function(e){var r=0,t=eo(e);return function(e){var a=ro("",e,r,t);r=a[1];return a[0]}};function ao(e,r,t,a){var n={key:jn(e),verificationBytes:jn(e)};if(t.password)n.verifier=Qf(t.password);a.valid=n.verificationBytes===n.verifier;if(a.valid)a.insitu=to(t.password);return n}function no(e,r,t){var a=t||{};a.Info=e._R(2);e.l-=2;if(a.Info===1)a.Data=Zf(e,r);else a.Data=qf(e,r);return a}function io(e,r,t){var a={Type:t.biff>=8?e._R(2):0};if(a.Type)no(e,r-2,a);else ao(e,t.biff>=8?r:r-2,t,a);return a}var so=function(){function e(e,t){switch(t.type){case"base64":return r(b.decode(e),t);case"binary":return r(e,t);case"buffer":return r(w&&Buffer.isBuffer(e)?e.toString("binary"):_(e),t);case"array":return r(le(e),t);}throw new Error("Unrecognized type "+t.type)}function r(e,r){var t=r||{};var a=t.dense?[]:{};var n=e.match(/\\trowd.*?\\row\b/g);if(!n.length)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 t=/\\\w+\b/g;var n=0;var s;var f=-1;while(s=t.exec(e)){switch(s[0]){case"\\cell":var o=e.slice(n,t.lastIndex-s[0].length);if(o[0]==" ")o=o.slice(1);++f;if(o.length){var l={v:o,t:"s"};if(Array.isArray(a))a[r][f]=l;else a[kt({r:r,c:f})]=l}break;}n=t.lastIndex}if(f>i.e.c)i.e.c=f});a["!ref"]=At(i);return a}function t(r,t){return yt(e(r,t),t)}function a(e){var r=["{\\rtf1\\ansi"];var t=Et(e["!ref"]),a;var n=Array.isArray(e);for(var i=t.s.r;i<=t.e.r;++i){r.push("\\trowd\\trautofit1");for(var s=t.s.c;s<=t.e.c;++s)r.push("\\cellx"+(s+1));r.push("\\pard\\intbl");for(s=t.s.c;s<=t.e.c;++s){var f=kt({r:i,c:s});a=n?(e[i]||[])[s]:e[f];if(!a||a.v==null&&(!a.f||a.F))continue;r.push(" "+(a.w||(St(a),a.w)));r.push("\\cell")}r.push("\\pard\\intbl\\row")}return r.join("")+"}"}return{to_workbook:t,to_sheet:e,from_sheet:a}}();function fo(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 oo(e){for(var r=0,t=1;r!=3;++r)t=t*256+(e[r]>255?255:e[r]<0?0:e[r]);return t.toString(16).toUpperCase().slice(1)}function lo(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 co(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 ho(e,r){if(r===0)return e;var t=lo(fo(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return oo(co(t))}var uo=6,vo=15,po=1,go=uo;function mo(e){return Math.floor((e+Math.round(128/go)/256)*go)}function bo(e){return Math.floor((e-5)/go*100+.5)/100}function wo(e){return Math.round((e*go+5)/go*256)/256}function ko(e){return wo(bo(mo(e)))}function To(e){var r=Math.abs(e-ko(e)),t=go;if(r>.005)for(go=po;go":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=Ke(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=Ke(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 Oo(e,r,t,a){r.Fills=[];var n={};var i=false;(e[0].match(Ne)||[]).forEach(function(e){var t=Pe(e);switch(Le(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 Ro(e,r,t,a){r.Fonts=[];var n={};var s=false;(e[0].match(Ne)||[]).forEach(function(e){var f=Pe(e);switch(Le(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 Io(e,r,t){r.NumberFmt=[];var a=Y(F._table);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}F.load(f,o)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+s[0]+" in numFmts");}}}function No(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]=cr("numFmt",null,{numFmtId:a,formatCode:ze(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=cr("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var Do=["numFmtId","fillId","fontId","borderId","xfId"];var Fo=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function Po(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Ne)||[]).forEach(function(e){var i=Pe(e),s=0;switch(Le(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=Ke(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 Lo(e){var r=[];r[r.length]=cr("cellXfs",null);e.forEach(function(e){r[r.length]=cr("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=cr("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var Mo=function Hb(){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))Io(c,l,o);if(c=s.match(a))Ro(c,l,f,o);if(c=s.match(t))Oo(c,l,f,o);if(c=s.match(n))xo(c,l,f,o);if(c=s.match(r))Po(c,l,o);return l}}();function Uo(e,r){var t=[Re,cr("styleSheet",null,{xmlns:gr[0],"xmlns:vt":pr.vt})],a;if(e.SSF&&(a=No(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=Lo(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 Bo(e,r){var t=e._R(2);var a=It(e,r-2);return[t,a]}function Wo(e,r,t){if(!t)t=tt(6+4*r.length);t._W(2,e);Nt(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 Ho(e,r,t){var a={};a.sz=e._R(2)/20;var n=sa(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=na(e,8);switch(e._R(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor";break;}a.name=It(e,r-21);return a}function zo(e,r){if(!r)r=tt(25+4*32);r._W(2,e.sz*20);fa(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);ia(e.color,r);var a=0;if(e.scheme=="major")a=1;if(e.scheme=="minor")a=2;r._W(1,a);Nt(e.name,r);return r.length>r.l?r.slice(0,r.l):r}var Vo=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];var Go;var jo=rt;function Xo(e,r){if(!r)r=tt(4*3+8*7+16*1);if(!Go)Go=J(Vo);var t=Go[e.patternType];if(t==null)t=40;r._W(4,t);var a=0;if(t!=40){ia({auto:1},r);ia({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 $o(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 Yo(e,r,t){if(!t)t=tt(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 Ko(e,r){if(!r)r=tt(10);r._W(1,0);r._W(1,0);r._W(4,0);r._W(4,0);return r}var Jo=rt;function qo(e,r){if(!r)r=tt(51);r._W(1,0);Ko(null,r);Ko(null,r);Ko(null,r);Ko(null,r);Ko(null,r);return r.length>r.l?r.slice(0,r.l):r}function Zo(e,r){if(!r)r=tt(12+4*10);r._W(4,e.xfId);r._W(2,1);r._W(1,+e.builtinId);r._W(1,0);Xt(e.name||"",r);return r.length>r.l?r.slice(0,r.l):r}function Qo(e,r,t){var a=tt(4+256*2*4);a._W(4,e);Xt(r,a);Xt(t,a);return a.length>a.l?a.slice(0,a.l):a}function el(e,r,t){var a={};a.NumberFmt=[];for(var n in F._table)a.NumberFmt[n]=F._table[n];a.CellXf=[];a.Fonts=[];var i=[];var s=false;at(e,function f(e,n,o){switch(o){case 44:a.NumberFmt[e[0]]=e[1];F.load(e[1],e[0]);break;case 43:a.Fonts.push(e);if(e.color.theme!=null&&r&&r.themeElements&&r.themeElements.clrScheme){e.color.rgb=ho(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 rl(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;it(e,615,Rt(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)it(e,44,Wo(a,r[a]))});it(e,616)}function tl(e){var r=1;if(r==0)return;it(e,611,Rt(r));it(e,43,zo({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}));it(e,612)}function al(e){var r=2;if(r==0)return;it(e,603,Rt(r));it(e,45,Xo({patternType:"none"}));it(e,45,Xo({patternType:"gray125"}));it(e,604)}function nl(e){var r=1;if(r==0)return;it(e,613,Rt(r));it(e,46,qo({}));it(e,614)}function il(e){var r=1;it(e,626,Rt(r));it(e,47,Yo({numFmtId:0,fontId:0,fillId:0,borderId:0},65535));it(e,627)}function sl(e,r){it(e,617,Rt(r.length));r.forEach(function(r){it(e,47,Yo(r,0))});it(e,618)}function fl(e){var r=1;it(e,619,Rt(r));it(e,48,Zo({xfId:0,builtinId:0,name:"Normal"}));it(e,620)}function ol(e){var r=0;it(e,505,Rt(r));it(e,506)}function ll(e){var r=0;it(e,508,Qo(r,"TableStyleMedium9","PivotStyleMedium4"));it(e,509)}function cl(){return}function hl(e,r){var t=nt();it(t,278);rl(t,e.SSF);tl(t,e);al(t,e);nl(t,e);il(t,e);sl(t,r.cellXfs);fl(t,e);ol(t,e);ll(t,e);cl(t,e);it(t,279);return t.end()}var ul=["","","","","","","","","","","",""];function dl(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Ne)||[]).forEach(function(e){var n=Pe(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[ul.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 vl(){}function pl(){}var gl=/]*)>[\s\S]*<\/a:clrScheme>/;var ml=/]*)>[\s\S]*<\/a:fontScheme>/;var bl=/]*)>[\s\S]*<\/a:fmtScheme>/;function wl(e,r,t){r.themeElements={};var a;[["clrScheme",gl,dl],["fontScheme",ml,vl],["fmtScheme",bl,pl]].forEach(function(n){if(!(a=e.match(n[1])))throw new Error(n[0]+" not found in themeElements");n[2](a,r,t)})}var kl=/]*)>[\s\S]*<\/a:themeElements>/;function Tl(e,r){if(!e||e.length===0)e=Al();var t;var a={};if(!(t=e.match(kl)))throw new Error("themeElements not found in theme");wl(t[0],a,r);a.raw=e;return a}function Al(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Re];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]=''; -t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";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 El(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=xe(i,{type:"array"})}catch(f){return}var o=Ee(s,"theme/theme/theme1.xml",true);if(!o)return;return Tl(o,t)}function Cl(e){return e._R(4)}function Sl(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=yl(e,4);break;case 2:r.xclrValue=hi(e,4);break;case 3:r.xclrValue=Cl(e,4);break;case 4:e.l+=4;break;}e.l+=8;return r}function yl(e,r){return rt(e,r)}function _l(e,r){return rt(e,r)}function xl(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]=Sl(e,t);break;case 6:a[1]=_l(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 Ol(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(xl(e,t-e.l));return{ixfe:a,ext:i}}function Rl(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 Il(e,r){return{flags:e._R(4),version:e._R(4),name:It(e,r-8)}}function Nl(e){var r=tt(12+2*e.name.length);r._W(4,e.flags);r._W(4,e.version);Nt(e.name,r);return r.slice(0,r.l)}function Dl(e){var r=[];var t=e._R(4);while(t-- >0)r.push([e._R(4),e._R(4)]);return r}function Fl(e){var r=tt(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;default:if(!n&&t.WTF)throw new Error("unrecognized "+r[0]+" in metadata");}return e});return a}function Hl(){var e=[Re];e.push('\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n');return e.join("")}function zl(e){var r=[];if(!e)return r;var t=1;(e.match(Ne)||[]).forEach(function(e){var a=Pe(e);switch(a[0]){case"":;case"":break;case"]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}var Yl=1024;function Kl(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[cr("xml",null,{"xmlns:v":mr.v,"xmlns:o":mr.o,"xmlns:x":mr.x,"xmlns:mv":mr.mv}).replace(/\/>/,">"),cr("o:shapelayout",cr("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"}),cr("v:shapetype",[cr("v:stroke",null,{joinstyle:"miter"}),cr("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202","o:spt":202,coordsize:t.join(","),path:a})];while(Yl",i,cr("v:shadow",null,s),cr("v:path",null,{"o:connecttype":"none"}),'
','',"","",or("x:Anchor",[r.c+1,0,r.r+1,0,r.c+3,20,r.r+5,20].join(",")),or("x:AutoFill","False"),or("x:Row",String(r.r)),or("x:Column",String(r.c)),e[1].hidden?"":"","",""])});n.push("");return n.join("")}function Jl(e,r,t,a){var n=Array.isArray(e);var i;r.forEach(function(r){var s=wt(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=Et(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=Pe(n[0]);var s={author:i.authorId&&t[i.authorId]||"sheetjsghost",ref:i.ref,guid:i.guid};var f=wt(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]&&Sf(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 Zl(e){var r=[Re,cr("comments",null,{xmlns:gr[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=ze(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=[];if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);else e[1].forEach(function(e){if(e.a)a=t.indexOf(ze(e.a));n.push(e.t||"")});r.push('');if(n.length<=1)r.push(or("t",ze(n[0]||"")));else{var i="Comment:\n "+n[0]+"\n";for(var s=1;s")});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Ql(e,r){var t=[];var a=false,n={},i=0;e.replace(Ne,function s(f,o){var l=Pe(f);switch(Le(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 ec(e,r,t){var a=[Re,cr("ThreadedComments",null,{xmlns:pr.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(cr("threadedComment",or("text",i.t||""),f))})});a.push("");return a.join("")}function rc(e,r){var t=[];var a=false;e.replace(Ne,function n(e){var n=Pe(e);switch(Le(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 tc(e){var r=[Re,cr("personList",null,{xmlns:pr.TCMNT,"xmlns:x":gr[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(cr("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}function ac(e){var r={};r.iauthor=e._R(4);var t=ea(e,16);r.rfx=t.s;r.ref=kt(t.s);e.l+=16;return r}function nc(e,r){if(r==null)r=tt(36);r._W(4,e[1].iauthor);ra(e[0],r);r._W(4,0);r._W(4,0);r._W(4,0);r._W(4,0);return r}var ic=It;function sc(e){return Nt(e.slice(0,54))}function fc(e,r){var t=[];var a=[];var n={};var i=false;at(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 oc(e){var r=nt();var t=[];it(r,628);it(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));it(r,632,sc(e.a))})});it(r,631);it(r,633);e.forEach(function(e){e[1].forEach(function(a){a.iauthor=t.indexOf(a.a);var n={s:wt(e[0]),e:wt(e[0])};it(r,635,nc([n,a]));if(a.t&&a.t.length>0)it(r,637,Ut(a));it(r,636);delete a.iauthor})});it(r,634);it(r,629);return r.end()}var lc="application/vnd.ms-office.vbaProject";function cc(e){var r=z.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*/,"");z.utils.cfb_add(r,n,e.FileIndex[a].content)});return z.write(r)}function hc(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")z.utils.cfb_add(e,n,r.FileIndex[a].content)})}var uc=["xlsb","xlsm","xlam","biff8","xla"];function dc(){return{"!type":"dialog"}}function vc(){return{"!type":"dialog"}}function pc(){return{"!type":"macro"}}function gc(){return{"!type":"macro"}}var mc=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?"":"$")+pt(o)+(s?"":"$")+ht(f)}return function a(n,i){r=i;return n.replace(e,t)}}();var bc=/(^|[^._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 wc=function(){return function e(r,t){return r.replace(bc,function(e,r,a,n,i,s){var f=vt(n)-(a?0:t.c);var o=ct(s)-(i?0:t.r);var l=o==0?"":!i?"["+o+"]":o+1;var c=f==0?"":!a?"["+f+"]":f+1;return r+"R"+l+"C"+c})}}();function kc(e,r){return e.replace(bc,function(e,t,a,n,i,s){return t+(a=="$"?a+n:pt(vt(n)+r.c))+(i=="$"?i+s:ht(ct(s)+r.r))})}function Tc(e,r,t){var a=Tt(r),n=a.s,i=wt(t);var s={r:i.r-n.r,c:i.c-n.c};return kc(e,s)}function Ac(e){if(e.length==1)return false;return true}function Ec(e){return e.replace(/_xlfn\./g,"")}function Cc(e){e.l+=1;return}function Sc(e,r){var t=e._R(r==1?1:2);return[t&16383,t>>14&1,t>>15&1]}function yc(e,r,t){var a=2;if(t){if(t.biff>=2&&t.biff<=5)return _c(e,r,t);else if(t.biff==12)a=4}var n=e._R(a),i=e._R(a);var s=Sc(e,2);var f=Sc(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 _c(e){var r=Sc(e,2),t=Sc(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 xc(e,r,t){if(t.biff<8)return _c(e,r,t);var a=e._R(t.biff==12?4:2),n=e._R(t.biff==12?4:2);var i=Sc(e,2);var s=Sc(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 Oc(e,r,t){if(t&&t.biff>=2&&t.biff<=5)return Rc(e,r,t);var a=e._R(t&&t.biff==12?4:2);var n=Sc(e,2);return{r:a,c:n[0],cRel:n[1],rRel:n[2]}}function Rc(e){var r=Sc(e,2);var t=e._R(1);return{r:r[0],c:t,cRel:r[1],rRel:r[2]}}function Ic(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 Nc(e,r,t){var a=t&&t.biff?t.biff:8;if(a>=2&&a<=5)return Dc(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 Dc(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 Fc(e,r,t){var a=(e[e.l++]&96)>>5;var n=yc(e,t.biff>=2&&t.biff<=5?6:8,t);return[a,n]}function Pc(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=yc(e,i,t);return[a,n,s]}function Lc(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 Mc(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 Uc(e,r,t){var a=(e[e.l++]&96)>>5;var n=xc(e,r-1,t);return[a,n]}function Bc(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t.biff==2?6:t.biff==12?14:7;return[a]}function Wc(e){var r=e[e.l+1]&1;var t=1;e.l+=4;return[r,t]}function Hc(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 zc(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 Vc(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 Gc(e){var r=e[e.l+1]&255?1:0;e.l+=2;return[r,e._R(2)]}function jc(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=t&&t.biff==2?3:4;return[a]}function Xc(e){var r=e._R(1),t=e._R(1);return[r,t]}function $c(e){e._R(2);return Xc(e,2)}function Yc(e){e._R(2);return Xc(e,2)}function Kc(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Oc(e,0,t);return[a,n]}function Jc(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Nc(e,0,t);return[a,n]}function qc(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=Oc(e,0,t);return[a,n,i]}function Zc(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(t&&t.biff<=3?1:2);return[pu[n],vu[n],a]}function Qc(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)]:eh(e);return[n,(i[0]===0?vu:du)[i[1]]]}function eh(e){return[e[e.l+1]>>7,e._R(2)&32767]}function rh(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 ah(e){e.l++;return Ia[e._R(1)]}function nh(e){e.l++;return e._R(2)}function ih(e){e.l++;return e._R(1)!==0}function sh(e){e.l++;return ta(e,8)}function fh(e,r,t){e.l++;return Jn(e,r-1,t)}function oh(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]=Vn(e,1)?"TRUE":"FALSE";if(r!=12)e.l+=7;break;case 37:;case 16:t[1]=Ia[e[e.l]];e.l+=r==12?4:8;break;case 0:e.l+=8;break;case 1:t[1]=ta(e,8);break;case 2:t[1]=ri(e,0,{biff:r>0&&r<8?2:r});break;default:throw new Error("Bad SerAr: "+t[0]);}return t}function lh(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?ea:ki)(e,8));return n}function ch(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]=oh(e,t.biff);return s}function hh(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 uh(e,r,t){if(t.biff==5)return dh(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 dh(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 vh(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 ph(e,r,t){var a=e._R(1)>>>5&3;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function gh(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 mh(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 bh=rt;var wh=rt;var kh=rt;function Th(e,r,t){e.l+=2;return[Ic(e,4,t)]}function Ah(e){e.l+=6;return[]}var Eh=Th;var Ch=Ah;var Sh=Ah;var yh=Th;function _h(e){e.l+=2;return[jn(e),e._R(2)&1]}var xh=Th;var Oh=_h;var Rh=Ah;var Ih=Th;var Nh=Th;var Dh=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];function Fh(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=Dh[t>>2&31];return{ixti:r,coltype:t&3,rt:s,idx:a,c:n,C:i}}function Ph(e){e.l+=2;return[e._R(4)]}function Lh(e,r,t){e.l+=5;e.l+=2;e.l+=t.biff==2?1:4;return["PTGSHEET"]}function Mh(e,r,t){e.l+=t.biff==2?4:5;return["PTGENDSHEET"]}function Uh(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function Bh(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function Wh(e){e.l+=4;return[0,0]}var Hh={1:{n:"PtgExp",f:th},2:{n:"PtgTbl",f:kh},3:{n:"PtgAdd",f:Cc},4:{n:"PtgSub",f:Cc},5:{n:"PtgMul",f:Cc},6:{n:"PtgDiv",f:Cc},7:{n:"PtgPower",f:Cc},8:{n:"PtgConcat",f:Cc},9:{n:"PtgLt",f:Cc},10:{n:"PtgLe",f:Cc},11:{n:"PtgEq",f:Cc},12:{n:"PtgGe",f:Cc},13:{n:"PtgGt",f:Cc},14:{n:"PtgNe",f:Cc},15:{n:"PtgIsect",f:Cc},16:{n:"PtgUnion",f:Cc},17:{n:"PtgRange",f:Cc},18:{n:"PtgUplus",f:Cc},19:{n:"PtgUminus",f:Cc},20:{n:"PtgPercent",f:Cc},21:{n:"PtgParen",f:Cc},22:{n:"PtgMissArg",f:Cc},23:{n:"PtgStr",f:fh},26:{n:"PtgSheet",f:Lh},27:{n:"PtgEndSheet",f:Mh},28:{n:"PtgErr",f:ah},29:{n:"PtgBool",f:ih},30:{n:"PtgInt",f:nh},31:{n:"PtgNum",f:sh},32:{n:"PtgArray",f:Bc},33:{n:"PtgFunc",f:Zc},34:{n:"PtgFuncVar",f:Qc},35:{n:"PtgName",f:hh},36:{n:"PtgRef",f:Kc},37:{n:"PtgArea",f:Fc},38:{n:"PtgMemArea",f:vh},39:{n:"PtgMemErr",f:bh},40:{n:"PtgMemNoMem",f:wh},41:{n:"PtgMemFunc",f:ph},42:{n:"PtgRefErr",f:gh},43:{n:"PtgAreaErr",f:Lc},44:{n:"PtgRefN",f:Jc},45:{n:"PtgAreaN",f:Uc},46:{n:"PtgMemAreaN",f:Uh},47:{n:"PtgMemNoMemN",f:Bh},57:{n:"PtgNameX",f:uh},58:{n:"PtgRef3d",f:qc},59:{n:"PtgArea3d",f:Pc},60:{n:"PtgRefErr3d",f:mh},61:{n:"PtgAreaErr3d",f:Mc},255:{}};var zh={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 Vh={1:{n:"PtgElfLel",f:_h},2:{n:"PtgElfRw",f:Ih},3:{n:"PtgElfCol",f:Eh},6:{n:"PtgElfRwV",f:Nh},7:{n:"PtgElfColV",f:yh},10:{n:"PtgElfRadical",f:xh},11:{n:"PtgElfRadicalS",f:Rh},13:{n:"PtgElfColS",f:Ch},15:{n:"PtgElfColSV",f:Sh},16:{n:"PtgElfRadicalLel",f:Oh},25:{n:"PtgList",f:Fh},29:{n:"PtgSxName",f:Ph},255:{}};var Gh={0:{n:"PtgAttrNoop",f:Wh},1:{n:"PtgAttrSemi",f:jc},2:{n:"PtgAttrIf",f:Vc},4:{n:"PtgAttrChoose",f:Hc},8:{n:"PtgAttrGoto",f:zc},16:{n:"PtgAttrSum",f:rh},32:{n:"PtgAttrBaxcel",f:Wc},33:{n:"PtgAttrBaxcel",f:Wc},64:{n:"PtgAttrSpace",f:$c},65:{n:"PtgAttrSpaceSemi",f:Yc},128:{n:"PtgAttrIfError",f:Gc},255:{}};function jh(e,r,t,a){if(a.biff<8)return rt(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]=ch(e,0,a);i.push(t[s][1]);break;case"PtgMemArea":t[s][2]=lh(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(rt(e,r));return i}function Xh(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=Hh[i]||Hh[zh[i]];if(i===24||i===25)n=(i===24?Vh:Gh)[e[e.l+1]];if(!n||!n.f){rt(e,r)}else{s.push([n.n,n.f(e,r,t)])}}return s}function $h(e){var r=[];for(var t=0;t=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};var Kh=new RegExp(/[^\w\u4E00-\u9FFF\u3040-\u30FF]/);function Jh(e,r){if(!e&&!(r&&r.biff<=5&&r.biff>=2))throw new Error("empty sheet name");if(Kh.test(e))return"'"+e+"'";return e}function qh(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 Zh(e,r,t){var a=qh(e,r,t);return a=="#REF"?a:Jh(a,t)}function Qh(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,v="";if(!e[0]||!e[0][0])return"";var p=-1,g="";for(var m=0,b=e[0].length;m=0){switch(e[0][p][1][0]){case 0:g=he(" ",e[0][p][1][1]);break;case 1:g=he("\r",e[0][p][1][1]);break;default:g="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][p][1][0]);}l=l+g;p=-1}f.push(l+Yh[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(l+":"+o);break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgAttrIfError":break;case"PtgRef":c=st(w[1][1],s,n);f.push(ot(c,i));break;case"PtgRefN":c=t?st(w[1][1],t,n):w[1][1];f.push(ot(c,i));break;case"PtgRef3d":h=w[1][1];c=st(w[1][2],s,n);v=Zh(a,h,n);var k=v;f.push(v+"!"+ot(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=ft(w[1][1],t?{s:t}:s,n);f.push(lt(d,n));break;case"PtgArea":d=ft(w[1][1],s,n);f.push(lt(d,n));break;case"PtgArea3d":h=w[1][1];d=w[1][2];v=Zh(a,h,n);f.push(v+"!"+lt(d,n));break;case"PtgAttrSum":f.push("SUM("+f.pop()+")");break;case"PtgAttrBaxcel":;case"PtgAttrSemi":break;case"PtgName":u=w[1][2];var C=(a.names||[])[u-1]||(a[0]||[])[u];var S=C?C.Name:"SH33TJSNAME"+String(u);if(S&&S.slice(0,6)=="_xlfn."&&!n.xlfn)S=S.slice(6);f.push(S);break;case"PtgNameX":var y=w[1][1];u=w[1][2];var _;if(n.biff<=5){if(y<0)y=-y;if(a[y])_=a[y][u]}else{var x="";if(((a[y]||[])[0]||[])[0]==14849){}else if(((a[y]||[])[0]||[])[0]==1025){if(a[y][u]&&a[y][u].itab>0){x=a.SheetNames[a[y][u].itab-1]+"!"}}else x=a.SheetNames[u-1]+"!";if(a[y]&&a[y][u])x+=a[y][u].Name;else if(a[0]&&a[0][u])x+=a[0][u].Name;else{var O=(qh(a,y,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(p>=0){g="";switch(e[0][p][1][0]){case 2:R=he(" ",e[0][p][1][1])+R;break;case 3:R=he("\r",e[0][p][1][1])+R;break;case 4:I=he(" ",e[0][p][1][1])+I;break;case 5:I=he("\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[kt(c)]){var D=a.sharedf[kt(c)];f.push(Qh(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(Qh(l[1],s,N,a,n));F=true;break}if(!F)f.push(w[1])}break;case"PtgArray":f.push("{"+$h(w[1])+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":;case"PtgAttrSpaceSemi":p=m;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][m][0])==-1){w=e[0][p];var L=true;switch(w[1][0]){case 4:L=false;case 0:g=he(" ",w[1][1]);break;case 5:L=false;case 1:g=he("\r",w[1][1]);break;default:g="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+w[1][0]);}f.push((L?g:"")+f.pop()+(L?"":g));p=-1}}if(f.length>1&&n.WTF)throw new Error("bad formula stack");return f[0]}function eu(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],rt(e,r-2)];var f=Xh(e,s,t);if(r!==s+n)i=jh(e,r-s-n,f,t);e.l=a;return[f,i]}function ru(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],rt(e,r-2)];var f=Xh(e,s,t);if(r!==s+n)i=jh(e,r-s-n,f,t);e.l=a;return[f,i]}function tu(e,r,t,a){var n=e.l+r;var i=Xh(e,a,t);var s;if(n!==e.l)s=jh(e,n-e.l,i,t);return[i,s]}function au(e,r,t){var a=e.l+r;var n,i=e._R(2);var s=Xh(e,i,t);if(i==65535)return[[],rt(e,r-2)];if(r!==i+2)n=jh(e,a-i-2,s,t);return[s,n]}function nu(e){var r;if(Vr(e,e.l+6)!==65535)return[ta(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 iu(e){if(e==null){var r=tt(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 aa(e);return aa(0)}function su(e,r,t){var a=e.l+r;var n=di(e,6);if(t.biff==2)++e.l;var i=nu(e,8);var s=e._R(1);if(t.biff!=2){e._R(1);if(t.biff>=5){e._R(4)}}var f=ru(e,a-e.l,t);return{cell:n,val:i[0],formula:f,shared:s>>3&1,tt:i[1]}}function fu(e,r,t,a,n){var i=vi(r,t,n);var s=iu(e.v);var f=tt(6);var o=1|32;f._W(2,o);f._W(4,0);var l=tt(e.bf.length);for(var c=0;c0?jh(e,i,n,t):null;return[n,s]}var lu=ou;var cu=ou;var hu=ou;var uu=ou;var du={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 vu={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 pu={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 gu(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(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function mu(e){var r="of:="+e.replace(bc,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function bu(e){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 wu(e){return e.replace(/\./,"!")}var ku={};var Tu={};var Au=typeof Map!=="undefined";function Eu(e,r,t){var a=0,n=e.length;if(t){if(Au?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var i=Au?t.get(r):t[r];for(;a-1){t.width=wo(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 Su(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 yu(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){F.load(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 _u(e,r,t,a,n,i){try{if(a.cellNF)e.z=F._table[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=oe(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(F._table[r]==null)F.load(M[r]||"General",r);if(e.t==="e")e.w=e.w||Ia[e.v];else if(r===0){if(e.t==="n"){if((e.v|0)===e.v)e.w=F._general_int(e.v);else e.w=F._general_num(e.v)}else if(e.t==="d"){var f=ee(e.v);if((f|0)===f)e.w=F._general_int(f);else e.w=F._general_num(f)}else if(e.v===undefined)return"";else e.w=F._general(e.v,Tu)}else if(e.t==="d")e.w=F.format(r,ee(e.v),Tu);else e.w=F.format(r,e.v,Tu)}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=ho(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=ho(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 xu(e,r,t){if(e&&e["!ref"]){var a=Et(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=At(t)}var Ru=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var Iu=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var Nu=/<(?:\w:)?hyperlink [^>]*>/gm;var Du=/"(\w*:\w*)"/;var Fu=/<(?:\w:)?col\b[^>]*[\/]?>/g;var Pu=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var Lu=/<(?:\w:)?pageMargins[^>]*\/>/g;var Mu=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var Uu=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var Bu=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function Wu(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(Iu);if(h){l=e.slice(0,h.index);c=e.slice(h.index+h[0].length)}else l=c=e;var u=l.match(Mu);if(u)zu(u[0],f,n,t);else if(u=l.match(Uu))Vu(u[0],u[1]||"",f,n,t,s,i);var d=(l.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(d>0){var v=l.slice(d,d+50).match(Du);if(v)Ou(f,v[1])}var p=l.match(Bu);if(p&&p[1])td(p[1],n);var m=[];if(r.cellStyles){var b=l.match(Fu);if(b)qu(m,b)}if(h)id(h[1],f,r,o,i,s);var w=c.match(Pu);if(w)f["!autofilter"]=Qu(w[0]);var k=[];var T=c.match(Ru);if(T)for(d=0;d!=T.length;++d)k[d]=Et(T[d].slice(T[d].indexOf('"')+1));var A=c.match(Nu);if(A)Yu(f,A,a);var E=c.match(Lu);if(E)f["!margins"]=Ku(Pe(E[0]));if(!f["!ref"]&&o.e.c>=o.s.c&&o.e.r>=o.s.r)f["!ref"]=At(o);if(r.sheetRows>0&&f["!ref"]){var C=Et(f["!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)f["!cols"]=m;if(k.length>0)f["!merges"]=k;return f}function Hu(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function zu(e,r,t,a){var n=Pe(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=Be(Je(n.codeName))}function Vu(e,r,t,a,n){zu(e.slice(0,e.indexOf(">")),t,a,n)}function Gu(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=qe(ze(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||"")+cr("outlinePr",null,c)}if(!i&&!f)return;n[n.length]=cr("sheetPr",f,s)}var ju=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var Xu=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function $u(e){var r={sheet:1};ju.forEach(function(t){if(e[t]!=null&&e[t])r[t]="1"});Xu.forEach(function(t){if(e[t]!=null&&!e[t])r[t]="0"});if(e.password)r.password=Qf(e.password).toString(16).toUpperCase();return cr("sheetProtection",null,r)}function Yu(e,r,t){var a=Array.isArray(e);for(var n=0;n!=r.length;++n){var i=Pe(Je(r[n]),true);if(!i.ref)return;var s=((t||{})["!id"]||[])[i.id];if(s){i.Target=s.Target;if(i.location)i.Target+="#"+Be(i.location)}else{i.Target="#"+Be(i.location);s={Target:i.Target,TargetMode:"Internal"}}i.Rel=s;if(i.tooltip){i.Tooltip=i.tooltip;delete i.tooltip}var f=Et(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=kt({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 Ku(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function Ju(e){Su(e);return cr("pageMargins",null,e)}function qu(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Pe(r[a],true);if(n.hidden)n.hidden=Ke(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;To(n.width)}Ao(n);while(i<=s)e[i++]=ce(n)}}function Zu(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=cr("col",null,Cu(n,a))}t[t.length]="";return t.join("")}function Qu(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function ed(e,r,t,a){var n=typeof e.ref=="string"?e.ref:At(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var i=t.Workbook.Names;var s=Tt(n);if(s.s.r==s.e.r){s.e.r=Tt(r["!ref"]).e.r;n=At(s)}for(var f=0;fa-z][^>]*)?\/?>/;function td(e,r){if(!r.Views)r.Views=[{}];(e.match(rd)||[]).forEach(function(e,t){var a=Pe(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(Ke(a.rightToLeft))r.Views[t].RTL=true})}function ad(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return cr("sheetViews",cr("sheetView",null,n),{})}function nd(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if(e.v===undefined&&typeof e.f!=="string"||e.t==="z"&&!e.f)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=Ia[e.v];break;case"d":if(a&&a.cellDates)n=oe(e.v,-1).toISOString();else{e=ce(e);e.t="n";n=""+(e.v=ee(oe(e.v)))}if(typeof e.z==="undefined")e.z=F._table[14];break;default:n=e.v;break;}var f=or("v",ze(n)),o={r:r};var l=yu(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=or("v",""+Eu(a.Strings,e.v,a.revStrings));o.t="s";break}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=cr("f",ze(e.f),c)+(e.v!=null?f:"")}if(e.l)t["!links"].push([r,e.l]);if(e.D)o.cm=1;return cr("c",f,o)}var id=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var i=rr("v"),s=rr("f");return function f(o,l,c,h,u,d){var v=0,p="",g=[],m=[],b=0,w=0,k=0,T="",A;var E,C=0,S=0;var y,_;var x=0,O=0;var R=Array.isArray(d.CellXf),I;var N=[];var D=[];var P=Array.isArray(l);var L=[],M={},U=false;var B=!!c.sheetStubs;for(var W=o.split(r),H=0,z=W.length;H!=z;++H){ -p=W[H].trim();var V=p.length;if(V===0)continue;var G=0;e:for(v=0;v":if(p[v-1]!="/"){++v;break e}if(c&&c.cellStyles){E=Pe(p.slice(G,v),true);C=E.r!=null?parseInt(E.r,10):C+1;S=-1;if(c.sheetRows&&c.sheetRows=v)break;E=Pe(p.slice(G,v),true);C=E.r!=null?parseInt(E.r,10):C+1;S=-1;if(c.sheetRows&&c.sheetRowsC-1)h.s.r=C-1;if(h.e.r":"")+p;if(m!=null&&m.length===2){b=0;T=m[1];for(w=0;w!=T.length;++w){if((k=T.charCodeAt(w)-64)<1||k>26)break;b=26*b+k}--b;S=b}else++S;for(w=0;w!=p.length;++w)if(p.charCodeAt(w)===62)break;++w;E=Pe(p.slice(0,w),true);if(!E.r)E.r=kt({r:C-1,c:S});T=p.slice(w);A={t:""};if((m=T.match(i))!=null&&m[1]!=="")A.v=Be(m[1]);if(c.cellFormula){if((m=T.match(s))!=null&&m[1]!==""){A.f=Be(Je(m[1])).replace(/\r\n/g,"\n");if(!c.xlfn)A.f=Ec(A.f);if(m[0].indexOf('t="array"')>-1){A.F=(T.match(n)||[])[1];if(A.F.indexOf(":")>-1)N.push([Et(A.F),A.F])}else if(m[0].indexOf('t="shared"')>-1){_=Pe(m[0]);var X=Be(Je(m[1]));if(!c.xlfn)X=Ec(X);D[parseInt(_.si,10)]=[_,X,E.r]}}else if(m=T.match(/]*\/>/)){_=Pe(m[0]);if(D[_.si])A.f=Tc(D[_.si][1],D[_.si][2],E.r)}var $=wt(E.r);for(w=0;w=N[w][0].s.r&&$.r<=N[w][0].e.r)if($.c>=N[w][0].s.c&&$.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(!B)continue;else A.t="z"}else A.t=E.t||"n";if(h.s.c>S)h.s.c=S;if(h.e.c0)l["!rows"]=L}}();function sd(e,r,t,a){var n=[],i=[],s=Et(e["!ref"]),f="",o,l="",c=[],h=0,u=0,d=e["!rows"];var v=Array.isArray(e);var p={r:l},g,m=-1;for(u=s.s.c;u<=s.e.c;++u)c[u]=pt(u);for(h=s.s.r;h<=s.e.r;++h){i=[];l=ht(h);for(u=s.s.c;u<=s.e.c;++u){o=c[u]+l;var b=v?(e[h]||[])[u]:e[o];if(b===undefined)continue;if((f=nd(b,o,e,r,t,a))!=null)i.push(f)}if(i.length>0||d&&d[h]){p={r:l};if(d&&d[h]){g=d[h];if(g.hidden)p.hidden=1;m=-1;if(g.hpx)m=So(g.hpx);else if(g.hpt)m=g.hpt;if(m>-1){p.ht=m;p.customHeight=1}if(g.level){p.outlineLevel=g.level}}n[n.length]=cr("row",i.join(""),p)}}if(d)for(;h-1){p.ht=m;p.customHeight=1}if(g.level){p.outlineLevel=g.level}n[n.length]=cr("row","",p)}}return n.join("")}function fd(e,r,t,a){var n=[Re,cr("worksheet",null,{xmlns:gr[0],"xmlns:r":pr.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=Et(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=At(c)}if(!a)a={};o["!comments"]=[];var h=[];Gu(o,t,e,r,n);n[n.length]=cr("dimension",null,{ref:l});n[n.length]=ad(o,r,e,t);if(r.sheetFormat)n[n.length]=cr("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]=Zu(o,o["!cols"]);n[s=n.length]="";o["!links"]=[];if(o["!ref"]!=null){f=sd(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]=$u(o["!protect"]);if(o["!autofilter"]!=null)n[n.length]=ed(o["!autofilter"],o,t,e);if(o["!merges"]!=null&&o["!merges"].length>0)n[n.length]=Hu(o["!merges"]);var u=-1,d,v=-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)!="#"){v=ja(a,-1,ze(e[1].Target).replace(/#.*$/,""),Ba.HLINK);d["r:id"]="rId"+v}if((u=e[1].Target.indexOf("#"))>-1)d.location=ze(e[1].Target.slice(u+1));if(e[1].Tooltip)d.tooltip=ze(e[1].Tooltip);n[n.length]=cr("hyperlink",null,d)});n[n.length]=""}delete o["!links"];if(o["!margins"]!=null)n[n.length]=Ju(o["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=or("ignoredErrors",cr("ignoredError",null,{numberStoredAsText:1,sqref:l}));if(h.length>0){v=ja(a,-1,"../drawings/drawing"+(e+1)+".xml",Ba.DRAW);n[n.length]=cr("drawing",null,{"r:id":"rId"+v});o["!drawing"]=h}if(o["!comments"].length>0){v=ja(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",Ba.VML);n[n.length]=cr("legacyDrawing",null,{"r:id":"rId"+v});o["!legacy"]=v}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function od(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 ld(e,r,t){var a=tt(17+8*16);var n=(t["!rows"]||[])[e]||{};a._W(4,e);a._W(4,0);var i=320;if(n.hpx)i=So(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 cd(e,r,t,a){var n=ld(a,t,r);if(n.length>17||(r["!rows"]||[])[a])it(e,0,n)}var hd=ea;var ud=ra;function dd(){}function vd(e,r){var t={};var a=e[e.l];++e.l;t.above=!(a&64);t.left=!(a&128);e.l+=18;t.name=Vt(e,r-19);return t}function pd(e,r,t){if(t==null)t=tt(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);ia({auto:1},t);t._W(-4,-1);t._W(-4,-1);Gt(e,t);return t.slice(0,t.l)}function gd(e){var r=Bt(e);return[r]}function md(e,r,t){if(t==null)t=tt(8);return Wt(r,t)}function bd(e){var r=Ht(e);return[r]}function wd(e,r,t){if(t==null)t=tt(4);return zt(r,t)}function kd(e){var r=Bt(e);var t=e._R(1);return[r,t,"b"]}function Td(e,r,t){if(t==null)t=tt(9);Wt(r,t);t._W(1,e.v?1:0);return t}function Ad(e){var r=Ht(e);var t=e._R(1);return[r,t,"b"]}function Ed(e,r,t){if(t==null)t=tt(5);zt(r,t);t._W(1,e.v?1:0);return t}function Cd(e){var r=Bt(e);var t=e._R(1);return[r,t,"e"]}function Sd(e,r,t){if(t==null)t=tt(9);Wt(r,t);t._W(1,e.v);return t}function yd(e){var r=Ht(e);var t=e._R(1);return[r,t,"e"]}function _d(e,r,t){if(t==null)t=tt(8);zt(r,t);t._W(1,e.v);t._W(2,0);t._W(1,0);return t}function xd(e){var r=Bt(e);var t=e._R(4);return[r,t,"s"]}function Od(e,r,t){if(t==null)t=tt(12);Wt(r,t);t._W(4,r.v);return t}function Rd(e){var r=Ht(e);var t=e._R(4);return[r,t,"s"]}function Id(e,r,t){if(t==null)t=tt(8);zt(r,t);t._W(4,r.v);return t}function Nd(e){var r=Bt(e);var t=ta(e);return[r,t,"n"]}function Dd(e,r,t){if(t==null)t=tt(16);Wt(r,t);aa(e.v,t);return t}function Fd(e){var r=Ht(e);var t=ta(e);return[r,t,"n"]}function Pd(e,r,t){if(t==null)t=tt(12);zt(r,t);aa(e.v,t);return t}function Ld(e){var r=Bt(e);var t=Jt(e);return[r,t,"n"]}function Md(e,r,t){if(t==null)t=tt(12);Wt(r,t);qt(e.v,t);return t}function Ud(e){var r=Ht(e);var t=Jt(e);return[r,t,"n"]}function Bd(e,r,t){if(t==null)t=tt(8);zt(r,t);qt(e.v,t);return t}function Wd(e){var r=Bt(e);var t=Pt(e);return[r,t,"is"]}function Hd(e){var r=Bt(e);var t=It(e);return[r,t,"str"]}function zd(e,r,t){if(t==null)t=tt(12+4*e.v.length);Wt(r,t);Nt(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function Vd(e){var r=Ht(e);var t=It(e);return[r,t,"str"]}function Gd(e,r,t){if(t==null)t=tt(8+4*e.v.length);zt(r,t);Nt(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function jd(e,r,t){var a=e.l+r;var n=Bt(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"b"];if(t.cellFormula){e.l+=2;var f=cu(e,a-e.l,t);s[3]=Qh(f,null,n,t.supbooks,t)}else e.l=a;return s}function Xd(e,r,t){var a=e.l+r;var n=Bt(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"e"];if(t.cellFormula){e.l+=2;var f=cu(e,a-e.l,t);s[3]=Qh(f,null,n,t.supbooks,t)}else e.l=a;return s}function $d(e,r,t){var a=e.l+r;var n=Bt(e);n.r=t["!row"];var i=ta(e);var s=[n,i,"n"];if(t.cellFormula){e.l+=2;var f=cu(e,a-e.l,t);s[3]=Qh(f,null,n,t.supbooks,t)}else e.l=a;return s}function Yd(e,r,t){var a=e.l+r;var n=Bt(e);n.r=t["!row"];var i=It(e);var s=[n,i,"str"];if(t.cellFormula){e.l+=2;var f=cu(e,a-e.l,t);s[3]=Qh(f,null,n,t.supbooks,t)}else e.l=a;return s}var Kd=ea;var Jd=ra;function qd(e,r){if(r==null)r=tt(4);r._W(4,e);return r}function Zd(e,r){var t=e.l+r;var a=ea(e,16);var n=jt(e);var i=It(e);var s=It(e);var f=It(e);e.l=t;var o={rfx:a,relId:n,loc:i,display:f};if(s)o.Tooltip=s;return o}function Qd(e,r){var t=tt(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));ra({s:wt(e[0]),e:wt(e[0])},t);Kt("rId"+r,t);var a=e[1].Target.indexOf("#");var n=a==-1?"":e[1].Target.slice(a+1);Nt(n||"",t);Nt(e[1].Tooltip||"",t);Nt("",t);return t.slice(0,t.l)}function ev(){}function rv(e,r,t){var a=e.l+r;var n=Zt(e,16);var i=e._R(1);var s=[n];s[2]=i;if(t.cellFormula){var f=lu(e,a-e.l,t);s[1]=f}else e.l=a;return s}function tv(e,r,t){var a=e.l+r;var n=ea(e,16);var i=[n];if(t.cellFormula){var s=uu(e,a-e.l,t);i[1]=s;e.l=a}else e.l=a;return i}function av(e,r,t){if(t==null)t=tt(18);var a=Cu(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 nv=["left","right","top","bottom","header","footer"];function iv(e){var r={};nv.forEach(function(t){r[t]=ta(e,8)});return r}function sv(e,r){if(r==null)r=tt(6*8);Su(e);nv.forEach(function(t){aa(e[t],r)});return r}function fv(e){var r=e._R(2);e.l+=28;return{RTL:r&32}}function ov(e,r,t){if(t==null)t=tt(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 lv(e){var r=tt(24);r._W(4,4);r._W(4,1);ra(e,r);return r}function cv(e,r){if(r==null)r=tt(16*4+2);r._W(2,e.password?Qf(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 uv(){}function dv(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 v,p,m,b,w,k,T,A,E;var C=[];f.biff=12;f["!row"]=0;var S=0,y=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&&v.r<=R[0].e.r)if(w>=R[0].s.c&&w<=R[0].e.c){p.F=At(R[0]);y=true}}if(!y&&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(!D){D=true;To(e.w/256)}Ao(I[e.e+1])}break;case 161:o["!autofilter"]={ref:At(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"]=At(l||c);if(f.sheetRows&&o["!ref"]){var M=Et(o["!ref"]);if(f.sheetRows<=+M.e.r){M.e.r=f.sheetRows-1;if(M.e.r>c.e.r)M.e.r=c.e.r;if(M.e.rc.e.c)M.e.c=c.e.c;if(M.e.c0)o["!merges"]=C;if(I.length>0)o["!cols"]=I;if(N.length>0)o["!rows"]=N;return o}function vv(e,r,t,a,n,i,s){if(r.v===undefined)return false;var f="";switch(r.t){case"b":f=r.v?"1":"0";break;case"d":r=ce(r);r.z=r.z||F._table[14];r.v=ee(oe(r.v));r.t="n";break;case"n":;case"e":f=""+r.v;break;default:f=r.v;break;}var o={r:t,c:a};o.s=yu(n.cellXfs,r,n);if(r.l)i["!links"].push([kt(o),r.l]);if(r.c)i["!comments"].push([kt(o),r.c]);switch(r.t){case"s":;case"str":if(n.bookSST){f=Eu(n.Strings,r.v,n.revStrings);o.t="s";o.v=f;if(s)it(e,18,Id(r,o));else it(e,7,Od(r,o))}else{o.t="str";if(s)it(e,17,Gd(r,o));else it(e,6,zd(r,o))}return true;case"n":if(r.v==(r.v|0)&&r.v>-1e3&&r.v<1e3){if(s)it(e,13,Bd(r,o));else it(e,2,Md(r,o))}else{if(s)it(e,16,Pd(r,o));else it(e,5,Dd(r,o))}return true;case"b":o.t="b";if(s)it(e,15,Ed(r,o));else it(e,4,Td(r,o));return true;case"e":o.t="e";if(s)it(e,14,_d(r,o));else it(e,3,Sd(r,o));return true;}if(s)it(e,12,wd(r,o));else it(e,1,md(r,o));return true}function pv(e,r,t,a){var n=Et(r["!ref"]||"A1"),i,s="",f=[];it(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=ht(c);cd(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]=pt(u);i=f[u]+s;var d=o?(r[c]||[])[u]:r[i];if(!d){h=false;continue}h=vv(e,d,c,u,a,r,h)}}it(e,146)}function gv(e,r){if(!r||!r["!merges"])return;it(e,177,qd(r["!merges"].length));r["!merges"].forEach(function(r){it(e,176,Jd(r))});it(e,178)}function mv(e,r){if(!r||!r["!cols"])return;it(e,390);r["!cols"].forEach(function(r,t){if(r)it(e,60,av(t,r))});it(e,391)}function bv(e,r){if(!r||!r["!ref"])return;it(e,648);it(e,649,lv(Et(r["!ref"])));it(e,650)}function wv(e,r,t){r["!links"].forEach(function(r){if(!r[1].Target)return;var a=ja(t,-1,r[1].Target.replace(/#.*$/,""),Ba.HLINK);it(e,494,Qd(r,a))});delete r["!links"]}function kv(e,r,t,a){if(r["!comments"].length>0){var n=ja(a,-1,"../drawings/vmlDrawing"+(t+1)+".vml",Ba.VML);it(e,551,Kt("rId"+n));r["!legacy"]=n}}function Tv(e,r,t,a){if(!r["!autofilter"])return;var n=r["!autofilter"];var i=typeof n.ref==="string"?n.ref:At(n.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var s=t.Workbook.Names;var f=Tt(i);if(f.s.r==f.e.r){f.e.r=Tt(r["!ref"]).e.r;i=At(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"]=[];it(n,129);if(t.vbaraw||s["!outline"])it(n,147,pd(f,s["!outline"]));it(n,148,ud(l));Av(n,s,t.Workbook);Ev(n,s);mv(n,s,e,r,t);pv(n,s,e,r,t);Cv(n,s);Tv(n,s,t,e);gv(n,s);wv(n,s,a);if(s["!margins"])it(n,476,sv(s["!margins"]));if(!r||r.ignoreEC||r.ignoreEC==void 0)bv(n,s);kv(n,s,e,a);it(n,130);return n.end()}function yv(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=Be((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 _v(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=yv(e);c.s.r=c.s.c=0;c.e.c=f;l=pt(f);r[0].forEach(function(e,t){s[l+ht(t)]={t:"n",v:e,z:r[1]};o=t});if(c.e.r0)s["!ref"]=At(c);return s}function xv(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(Mu);if(f)zu(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 Ov(e,r,t,a){var n=[Re,cr("chartsheet",null,{xmlns:gr[0],"xmlns:r":pr.r})];n[n.length]=cr("drawing",null,{"r:id":"rId1"});ja(a,-1,"../drawings/drawing"+(e+1)+".xml",Ba.DRAW);if(n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function Rv(e,r){e.l+=10;var t=It(e,r-10);return{name:t}}function Iv(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;at(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}function Nv(){var e=nt();it(e,129);it(e,130);return e.end()}var Dv=[["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 Fv=[["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 Pv=[];var Lv=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function Mv(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]]=Ke(a[i[0]]);break;case"int":if(typeof a[i[0]]=="string")a[i[0]]=parseInt(a[i[0]],10);break;}}}}function Uv(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]]=Ke(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function Bv(e){Uv(e.WBProps,Dv);Uv(e.CalcPr,Lv);Mv(e.WBView,Fv);Mv(e.Sheets,Pv);Tu.date1904=Ke(e.WBProps.date1904)}function Wv(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return Ke(e.Workbook.WBProps.date1904)?"true":"false"}var Hv="][*?/\\".split("");function zv(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;Hv.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function Vv(e,r,t){e.forEach(function(a,n){zv(a);for(var i=0;i22)throw new Error("Bad Code Name: Worksheet"+s)}})}function Gv(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||[];Vv(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":Dv.forEach(function(e){if(c[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=Ke(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=Je(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=Be(Je(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){Dv.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]=cr("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:ze(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]=cr("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]=cr("definedName",ze(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Yv(e,r){var t={};t.Hidden=e._R(4);t.iTabID=e._R(4);t.strRelID=Yt(e,r-8);t.name=It(e);return t}function Kv(e,r){if(!r)r=tt(127);r._W(4,e.Hidden);r._W(4,e.iTabID);Kt(e.strRelID,r);Nt(e.name.slice(0,31),r);return r.length>r.l?r.slice(0,r.l):r}function Jv(e,r){var t={};var a=e._R(4);t.defaultThemeVersion=e._R(4);var n=r>8?It(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 qv(e,r){if(!r)r=tt(72);var t=0;if(e){if(e.filterPrivacy)t|=8}r._W(4,t);r._W(4,0);Gt(e&&e.CodeName||"ThisWorkbook",r);return r.slice(0,r.l)}function Zv(e,r){var t={};e._R(4);t.ArchID=e._R(4);e.l+=r-8;return t}function Qv(e,r,t){var a=e.l+r;e.l+=4;e.l+=1;var n=e._R(4);var i=$t(e);var s=hu(e,0,t);var f=jt(e);e.l=a;var o={Name:i,Ptg:s};if(n<268435455)o.Sheet=n;if(f)o.Comment=f;return o}function ep(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:Zv};at(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=Qh(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);Bv(t);t.Names=i;t.supbooks=s;return t}function rp(e,r){it(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]};it(e,156,Kv(n))}it(e,144)}function tp(r,t){if(!t)t=tt(127);for(var a=0;a!=4;++a)t._W(4,0);Nt("SheetJS",t);Nt(e.version,t);Nt(e.version,t);Nt("7262",t);return t.length>t.l?t.slice(0,t.l):t}function ap(e,r){if(!r)r=tt(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 np(e,r){if(!r.Workbook||!r.Workbook.Sheets)return;var t=r.Workbook.Sheets;var a=0,n=-1,i=-1;for(;an)return;it(e,135);it(e,158,ap(n));it(e,136)}function ip(e,r){var t=nt();it(t,131);it(t,128,tp());it(t,153,qv(e.Workbook&&e.Workbook.WBProps||null));np(t,e,r);rp(t,e,r);it(t,132);return t.end()}function sp(e,r,t){if(r.slice(-4)===".bin")return ep(e,t);return Xv(e,t)}function fp(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return dv(e,a,t,n,i,s,f);return Wu(e,a,t,n,i,s,f)}function op(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return Iv(e,a,t,n,i,s,f);return xv(e,a,t,n,i,s,f)}function lp(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return pc(e,a,t,n,i,s,f);return gc(e,a,t,n,i,s,f)}function cp(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return dc(e,a,t,n,i,s,f);return vc(e,a,t,n,i,s,f)}function hp(e,r,t,a){if(r.slice(-4)===".bin")return el(e,t,a);return Mo(e,t,a)}function up(e,r,t){return Tl(e,t)}function dp(e,r,t){if(r.slice(-4)===".bin")return Df(e,t);return Of(e,t)}function vp(e,r,t){if(r.slice(-4)===".bin")return fc(e,t);return ql(e,t)}function pp(e,r,t){if(r.slice(-4)===".bin")return Gl(e,r,t);return zl(e,r,t)}function gp(e,r,t,a){if(t.slice(-4)===".bin")return Xl(e,r,t,a);return jl(e,r,t,a)}function mp(e,r,t){if(r.slice(-4)===".bin")return Ul(e,r,t);return Wl(e,r,t)}function bp(e,r,t){return(r.slice(-4)===".bin"?ip:$v)(e,t)}function wp(e,r,t,a,n){return(r.slice(-4)===".bin"?Sv:fd)(e,t,a,n)}function kp(e,r,t,a,n){return(r.slice(-4)===".bin"?Nv:Ov)(e,t,a,n)}function Tp(e,r,t){return(r.slice(-4)===".bin"?hl:Uo)(e,t)}function Ap(e,r,t){return(r.slice(-4)===".bin"?Lf:If)(e,t)}function Ep(e,r,t){return(r.slice(-4)===".bin"?oc:Zl)(e,t)}function Cp(e){return(e.slice(-4)===".bin"?Bl:Hl)()}var Sp=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var yp=/([\w:]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;function _p(e,r){var t=e.split(/\s+/);var a=[];if(!r)a[0]=t[0];if(t.length===1)return a;var n=e.match(Sp),i,s,f,o;if(n)for(o=0;o!=n.length;++o){i=n[o].match(yp);if((s=i[1].indexOf(":"))===-1)a[i[1]]=i[2].slice(1,i[2].length-1);else{if(i[1].slice(0,6)==="xmlns:")f="xmlns"+i[1].slice(6);else f=i[1].slice(s+1);a[f]=i[2].slice(1,i[2].length-1)}}return a}function xp(e){var r=e.split(/\s+/);var t={};if(r.length===1)return t;var a=e.match(Sp),n,i,s,f;if(a)for(f=0;f!=a.length;++f){n=a[f].match(yp);if((i=n[1].indexOf(":"))===-1)t[n[1]]=n[2].slice(1,n[2].length-1);else{if(n[1].slice(0,6)==="xmlns:")s="xmlns"+n[1].slice(6);else s=n[1].slice(i+1);t[s]=n[2].slice(1,n[2].length-1)}}return t}function Op(e,r){var t=L[e]||Be(e);if(t==="General")return F._general(r);return F.format(t,r)}function Rp(e,r,t,a){var n=a;switch((t[0].match(/dt:dt="([\w.]+)"/)||["",""])[1]){case"boolean":n=Ke(a);break;case"i2":;case"int":n=parseInt(a,10);break;case"r4":;case"float":n=parseFloat(a);break;case"date":;case"dateTime.tz":n=oe(a);break;case"i8":;case"string":;case"fixed":;case"uuid":;case"bin.base64":break;default:throw new Error("bad custprop:"+t[0]);}e[Be(r)]=n}function Ip(e,r,t){if(e.t==="z")return;if(!t||t.cellText!==false)try{if(e.t==="e"){e.w=e.w||Ia[e.v]}else if(r==="General"){if(e.t==="n"){if((e.v|0)===e.v)e.w=F._general_int(e.v);else e.w=F._general_num(e.v)}else e.w=F._general(e.v)}else e.w=Op(r||"General",e.v)}catch(a){if(t.WTF)throw a}try{var n=L[r]||r||"General";if(t.cellNF)e.z=n;if(t.cellDates&&e.t=="n"&&F.is_date(n)){var i=F.parse_date_code(e.v);if(i){e.t="d";e.v=new Date(i.y,i.m-1,i.d,i.H,i.M,i.S,i.u)}}}catch(a){if(t.WTF)throw a}}function Np(e,r,t){if(t.cellStyles){if(r.Interior){var a=r.Interior;if(a.Pattern)a.patternType=_o[a.Pattern]||a.Pattern}}e[r.ID]=r}function Dp(e,r,t,a,n,i,s,f,o,l){var c="General",h=a.StyleID,u={};l=l||{};var d=[];var v=0;if(h===undefined&&f)h=f.StyleID;if(h===undefined&&s)h=s.StyleID;while(i[h]!==undefined){if(i[h].nf)c=i[h].nf;if(i[h].Interior)d.push(i[h].Interior);if(!i[h].Parent)break;h=i[h].Parent}switch(t.Type){case"Boolean":a.t="b";a.v=Ke(e);break;case"String":a.t="s";a.r=$e(Be(e));a.v=e.indexOf("<")>-1?Be(r||e).replace(/<.*?>/g,""):a.r;break;case"DateTime":if(e.slice(-1)!="Z")e+="Z";a.v=(oe(e)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(a.v!==a.v)a.v=Be(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=Na[e];if(l.cellText!==false)a.w=e;break;default:if(e==""&&r==""){a.t="z"}else{a.t="s";a.v=$e(r||e)}break;}Ip(a,c,l);if(l.cellFormula!==false){if(a.Formula){var p=Be(a.Formula);if(p.charCodeAt(0)==61)p=p.slice(1);a.f=mc(p,n);delete a.Formula;if(a.ArrayRange=="RC")a.F=mc("RC:RC",n);else if(a.ArrayRange){a.F=mc(a.ArrayRange,n);o.push([Et(a.F),a.F])}}else{for(v=0;v=o[v][0].s.r&&n.r<=o[v][0].e.r)if(n.c>=o[v][0].s.c&&n.c<=o[v][0].e.c)a.F=o[v][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 Fp(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 Pp(e,r){var t=r||{};P(F);var n=d(dr(e));if(t.type=="binary"||t.type=="array"||t.type=="base64"){if(typeof a!=="undefined")n=a.utils.decode(65001,c(n));else n=Je(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=ce(t);f.type="string";return gf.to_workbook(n,f)}if(i.indexOf("=0)s=true});if(s)return xg.to_workbook(n,t);var o;var l=[],h;if(g!=null&&t.dense==null)t.dense=g;var u={},v=[],p=t.dense?[]:{},m="";var b={},w={};var k=_p(''),T=0;var A=0,E=0;var C={s:{r:2e6,c:2e6},e:{r:0,c:0}};var S={},y={};var _="",x=0;var O=[];var R={},I={},N=0,D=[];var M=[],U={};var B=[],W,H=false;var z=[];var V=[],G={},j=0,X=0;var $={Sheets:[],WBProps:{date1904:false}},Y={};vr.lastIndex=0;n=n.replace(//gm,"");var K="";while(o=vr.exec(n))switch(o[3]=(K=o[3]).toLowerCase()){case"data":if(K=="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]==="/")Dp(n.slice(T,o.index),_,k,l[l.length-1][0]=="comment"?U:b,{c:A,r:E},S,B[A],w,z,t);else{_="";k=_p(o[0]);T=o.index+o[0].length}break;case"cell":if(o[1]==="/"){if(M.length>0)b.c=M;if((!t.sheetRows||t.sheetRows>E)&&b.v!==undefined){if(t.dense){if(!p[E])p[E]=[];p[E][A]=b}else p[pt(A)+ht(E)]=b}if(b.HRef){b.l={Target:Be(b.HRef)};if(b.HRefScreenTip)b.l.Tooltip=b.HRefScreenTip;delete b.HRef;delete b.HRefScreenTip}if(b.MergeAcross||b.MergeDown){j=A+(parseInt(b.MergeAcross,10)|0);X=E+(parseInt(b.MergeDown,10)|0);O.push({s:{c:A,r:E},e:{c:j,r:X}})}if(!t.sheetStubs){if(b.MergeAcross)A=j+1;else++A}else if(b.MergeAcross||b.MergeDown){for(var J=A;J<=j;++J){for(var q=E;q<=X;++q){if(J>A||q>E){if(t.dense){if(!p[q])p[q]=[];p[q][J]={t:"z"}}else p[pt(J)+ht(q)]={t:"z"}}}}A=j+1}else++A}else{b=xp(o[0]);if(b.Index)A=+b.Index-1;if(AC.e.c)C.e.c=A;if(o[0].slice(-2)==="/>")++A;M=[]}break;case"row":if(o[1]==="/"||o[0].slice(-2)==="/>"){if(EC.e.r)C.e.r=E;if(o[0].slice(-2)==="/>"){w=_p(o[0]);if(w.Index)E=+w.Index-1}A=0;++E}else{w=_p(o[0]);if(w.Index)E=+w.Index-1;G={};if(w.AutoFitHeight=="0"||w.Height){G.hpx=parseInt(w.Height,10);G.hpt=So(G.hpx);V[E]=G}if(w.Hidden=="1"){G.hidden=true;V[E]=G}}break;case"worksheet":if(o[1]==="/"){if((h=l.pop())[0]!==o[3])throw new Error("Bad state: "+h.join("|"));v.push(m);if(C.s.r<=C.e.r&&C.s.c<=C.e.c){p["!ref"]=At(C);if(t.sheetRows&&t.sheetRows<=C.e.r){p["!fullref"]=p["!ref"];C.e.r=t.sheetRows-1;p["!ref"]=At(C)}}if(O.length)p["!merges"]=O;if(B.length>0)p["!cols"]=B;if(V.length>0)p["!rows"]=V;u[m]=p}else{C={s:{r:2e6,c:2e6},e:{r:0,c:0}};E=A=0;l.push([o[3],false]);h=_p(o[0]);m=Be(h.Name);p=t.dense?[]:{};O=[];z=[];V=[];Y={name:m,Hidden:0};$.Sheets.push(Y)}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]);B=[];H=false}break;case"style":if(o[1]==="/")Np(S,y,t);else y=_p(o[0]);break;case"numberformat":y.nf=Be(_p(o[0]).Format||"General");if(L[y.nf])y.nf=L[y.nf];for(var Z=0;Z!=392;++Z)if(F._table[Z]==y.nf)break;if(Z==392)for(Z=57;Z!=392;++Z)if(F._table[Z]==null){F.load(y.nf,Z);break}break;case"column":if(l[l.length-1][0]!=="table")break;W=_p(o[0]);if(W.Hidden){W.hidden=true;delete W.Hidden}if(W.Width)W.wpx=parseInt(W.Width,10);if(!H&&W.wpx>10){H=true;go=uo;for(var Q=0;Q0)te.Sheet=$.Sheets.length-1;$.Names.push(te);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;y.Interior=_p(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]==="/")pn(R,K,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("|"));Fp(U);M.push(U)}else{l.push([o[3],false]);h=_p(o[0]);U={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 ae=_p(o[0]);p["!autofilter"]={ref:mc(ae.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 Ug(n,t);if(l.length==0&&o[3]=="uof")return Ug(n,t);var ne=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:ne=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:ne=false;}break;case"excelworkbook":switch(o[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:ne=false;}break;case"workbookoptions":switch(o[3]){case"owcversion":break;case"height":break;case"width":break;default:ne=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":Y.Hidden=1;break;case"SheetVeryHidden":Y.Hidden=2;break;}else N=o.index+o[0].length;break;case"header":if(!p["!margins"])Su(p["!margins"]={},"xlml");if(!isNaN(+Pe(o[0]).Margin))p["!margins"].header=+Pe(o[0]).Margin;break;case"footer":if(!p["!margins"])Su(p["!margins"]={},"xlml");if(!isNaN(+Pe(o[0]).Margin))p["!margins"].footer=+Pe(o[0]).Margin;break;case"pagemargins":var ie=Pe(o[0]);if(!p["!margins"])Su(p["!margins"]={},"xlml");if(!isNaN(+ie.Top))p["!margins"].top=+ie.Top;if(!isNaN(+ie.Left))p["!margins"].left=+ie.Left;if(!isNaN(+ie.Right))p["!margins"].right=+ie.Right;if(!isNaN(+ie.Bottom))p["!margins"].bottom=+ie.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:ne=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:ne=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:ne=false;}break;case"autofilter":switch(o[3]){case"autofiltercolumn":break;case"autofiltercondition":break;case"autofilterand":break;case"autofilteror":break;default:ne=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:ne=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:ne=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:ne=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:ne=false;}break;case"smarttags":break;default:ne=false;break;}if(ne)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]==="/")Rp(I,K,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 se={};if(!t.bookSheets&&!t.bookProps)se.Sheets=u;se.SheetNames=v;se.Workbook=$;se.SSF=F.get_table();se.Props=R;se.Custprops=I;return se}function Lp(e,r){dm(r=r||{});switch(r.type||"base64"){case"base64":return Pp(b.decode(e),r);case"binary":;case"buffer":;case"file":return Pp(e,r);case"array":return Pp(_(e),r);}}function Mp(e,r){var t=[];if(e.Props)t.push(gn(e.Props,r));if(e.Custprops)t.push(mn(e.Props,e.Custprops,r));return t.join("")}function Up(){return""}function Bp(e,r){var t=[''];r.cellXfs.forEach(function(e,r){var a=[];a.push(cr("NumberFormat",null,{"ss:Format":ze(F._table[e.numFmtId])}));var n={"ss:ID":"s"+(21+r)};t.push(cr("Style",a.join(""),n))});return cr("Styles",t.join(""))}function Wp(e){return cr("NamedRange",null,{"ss:Name":e.Name,"ss:RefersTo":"="+wc(e.Ref,{r:0,c:0})})}function Hp(e){if(!((e||{}).Workbook||{}).Names)return"";var r=e.Workbook.Names;var t=[];for(var a=0;a");if(e["!margins"].header)n.push(cr("Header",null,{"x:Margin":e["!margins"].header}));if(e["!margins"].footer)n.push(cr("Footer",null,{"x:Margin":e["!margins"].footer}));n.push(cr("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(cr("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(or("ProtectContents","True"));if(e["!protect"].objects)n.push(or("ProtectObjects","True"));if(e["!protect"].scenarios)n.push(or("ProtectScenarios","True"));if(e["!protect"].selectLockedCells!=null&&!e["!protect"].selectLockedCells)n.push(or("EnableSelection","NoSelection"));else if(e["!protect"].selectUnlockedCells!=null&&!e["!protect"].selectUnlockedCells)n.push(or("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 cr("WorksheetOptions",n.join(""),{xmlns:mr.x})}function Gp(e){return e.map(function(e){var r=Ye(e.t||"");var t=cr("ss:Data",r,{xmlns:"http://www.w3.org/TR/REC-html40"});return cr("Comment",t,{"ss:Author":e.a})}).join("")}function jp(e,r,t,a,n,i,s){if(!e||e.v==undefined&&e.f==undefined)return"";var f={};if(e.f)f["ss:Formula"]="="+ze(wc(e.f,s));if(e.F&&e.F.slice(0,r.length)==r){var o=wt(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"]=ze(e.l.Target);if(e.l.Tooltip)f["x:HRefScreenTip"]=ze(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=Ia[e.v];break;case"d":h="DateTime";u=new Date(e.v).toISOString();if(e.z==null)e.z=e.z||F._table[14];break;case"s":h="String";u=Xe(e.v||"");break;}var d=yu(a.cellXfs,e,a);f["ss:StyleID"]="s"+(21+d);f["ss:Index"]=s.c+1;var v=e.v!=null?u:"";var p=e.t=="z"?"":''+v+"";if((e.c||[]).length>0)p+=Gp(e.c);return cr("Cell",p,f)}function Xp(e,r){var t='"}function $p(e,r,t,a){if(!e["!ref"])return"";var n=Et(e["!ref"]);var i=e["!merges"]||[],s=0;var f=[];if(e["!cols"])e["!cols"].forEach(function(e,r){Ao(e);var t=!!e.width;var a=Cu(r,e);var n={"ss:Index":r+1};if(t)n["ss:Width"]=mo(a.width);if(e.hidden)n["ss:Hidden"]="1";f.push(cr("Column",null,n))});var o=Array.isArray(e);for(var l=n.s.r;l<=n.e.r;++l){var c=[Xp(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 Yp(e,r,t){var a=[];var n=t.SheetNames[e];var i=t.Sheets[n];var s=i?zp(i,r,e,t):"";if(s.length>0)a.push(""+s+"");s=i?$p(i,r,e,t):"";if(s.length>0)a.push(""+s+"
");a.push(Vp(i,r,e,t));return a.join("")}function Kp(e,r){if(!r)r={};if(!e.SSF)e.SSF=F.get_table();if(e.SSF){P(F);F.load_table(e.SSF);r.revssf=q(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF;r.cellXfs=[];yu(r.cellXfs,{},{revssf:{General:0}})}var t=[];t.push(Mp(e,r));t.push(Up(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=ca(t);a=t._R(4);if(a==0||a>40)return r;t.l-=4;r.Reserved2=t._R(0,"lpwstr")}var qp=[60,1084,2066,2165,2175];function Zp(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=Vr(t,t.l),l=og[o];var c=0;while(l!=null&&qp.indexOf(o)>-1){i=Vr(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=og[o=Vr(t,t.l)]}var h=I(s);et(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=kt(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)!==$)throw new Error("rt mismatch: "+q+"!="+$);if(J.r==12){e.l+=10;K-=10}}var Z={};if($===10)Z=J.f(e,K,R);else Z=Zp($,J,e,K,R);if(W==0&&[9,521,1033,2057].indexOf(B)===-1)continue;switch($){case 34:t.opts.Date1904=S.WBProps.date1904=Z;break;case 134:t.opts.WriteProtect=true;break;case 47:if(!R.enc)e.l=0;R.enc=Z;if(!r.password)throw new Error("File is password-protected");if(Z.valid==null)throw new Error("Encryption scheme unsupported");if(!Z.valid)throw new Error("Password is incorrect");break;case 92:R.lastuser=Z;break;case 66:var Q=Number(Z);switch(Q){case 21010:Q=1200;break;case 32768:Q=1e4;break;case 32769:Q=1252;break;}o(R.codepage=Q);j=true;break;case 317:R.rrtabid=Z;break;case 25:R.winlocked=Z;break;case 439:t.opts["RefreshAll"]=Z;break;case 12:t.opts["CalcCount"]=Z;break;case 16:t.opts["CalcDelta"]=Z;break;case 17:t.opts["CalcIter"]=Z;break;case 13:t.opts["CalcMode"]=Z;break;case 14:t.opts["CalcPrecision"]=Z;break;case 95:t.opts["CalcSaveRecalc"]=Z;break;case 15:R.CalcRefMode=Z;break;case 2211:t.opts.FullCalc=Z;break;case 129:if(Z.fDialog)n["!type"]="dialog";if(!Z.fBelow)(n["!outline"]||(n["!outline"]={})).above=true;if(!Z.fRight)(n["!outline"]||(n["!outline"]={})).left=true;break;case 224:E.push(Z);break;case 430:U.push([Z]);U[U.length-1].XTI=[];break;case 35:;case 547: -U[U.length-1].push(Z);break;case 24:;case 536:G={Name:Z.Name,Ref:Qh(Z.rgce,s,null,U,R)};if(Z.itab>0)G.Sheet=Z.itab-1;U.names.push(G);if(!U[0]){U[0]=[];U[0].XTI=[]}U[U.length-1].push(Z);if(Z.Name=="_xlnm._FilterDatabase"&&Z.itab>0)if(Z.rgce&&Z.rgce[0]&&Z.rgce[0][0]&&Z.rgce[0][0][0]=="PtgArea3d")V[Z.itab-1]={ref:At(Z.rgce[0][0][1][2])};break;case 22:R.ExternCount=Z;break;case 23:if(U.length==0){U[0]=[];U[0].XTI=[]}U[U.length-1].XTI=U[U.length-1].XTI.concat(Z);U.XTI=U.XTI.concat(Z);break;case 2196:if(R.biff<8)break;if(G!=null)G.Comment=Z[1];break;case 18:n["!protect"]=Z;break;case 19:if(Z!==0&&R.WTF)console.error("Password verifier: "+Z);break;case 133:{i[Z.pos]=Z;R.snames.push(Z.name)}break;case 10:{if(--W)break;if(s.e){if(s.e.r>0&&s.e.c>0){s.e.r--;s.e.c--;n["!ref"]=At(s);if(r.sheetRows&&r.sheetRows<=s.e.r){var ee=s.e.r;s.e.r=r.sheetRows-1;n["!fullref"]=n["!ref"];n["!ref"]=At(s);s.e.r=ee}s.e.r++;s.e.c++}if(N.length>0)n["!merges"]=N;if(D.length>0)n["!objects"]=D;if(P.length>0)n["!cols"]=P;if(L.length>0)n["!rows"]=L;S.Sheets.push(y)}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}[$]||{512:2,768:3,1024:4,1280:5,1536:8,2:2,7:2}[Z.BIFFVer]||8;R.biffguess=Z.BIFFVer==0;if(Z.BIFFVer==0&&Z.dt==4096){R.biff=5;j=true;o(R.codepage=28591)}if(R.biff==8&&Z.BIFFVer==0&&Z.dt==16)R.biff=2;if(W++)break;n=r.dense?[]:{};if(R.biff<8&&!j){j=true;o(R.codepage=r.codepage||1252)}if(R.biff<5||Z.BIFFVer==0&&Z.dt==4096){if(c==="")c="Sheet1";s={s:{r:0,c:0},e:{r:0,c:0}};var re={pos:e.l-K,name:c};i[re.pos]=re;R.snames.push(c)}else c=(i[X]||{name:""}).name;if(Z.dt==32)n["!type"]="chart";if(Z.dt==64)n["!type"]="macro";N=[];D=[];R.arrayf=k=[];P=[];L=[];M=false;y={Hidden:(i[X]||{hs:0}).hs,name:c}}break;case 515:;case 3:;case 2:{if(n["!type"]=="chart")if(r.dense?(n[Z.r]||[])[Z.c]:n[kt({c:Z.c,r:Z.r})])++Z.c;T={ixfe:Z.ixfe,XF:E[Z.ixfe]||{},v:Z.val,t:"n"};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);O({c:Z.c,r:Z.r},T,r)}break;case 5:;case 517:{T={ixfe:Z.ixfe,XF:E[Z.ixfe],v:Z.val,t:Z.t};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);O({c:Z.c,r:Z.r},T,r)}break;case 638:{T={ixfe:Z.ixfe,XF:E[Z.ixfe],v:Z.rknum,t:"n"};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);O({c:Z.c,r:Z.r},T,r)}break;case 189:{for(var te=Z.c;te<=Z.C;++te){var ae=Z.rkrec[te-Z.c][0];T={ixfe:ae,XF:E[ae],v:Z.rkrec[te-Z.c][1],t:"n"};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);O({c:te,r:Z.r},T,r)}}break;case 6:;case 518:;case 1030:{if(Z.val=="String"){f=Z;break}T=eg(Z.val,Z.cell.ixfe,Z.tt);T.XF=E[T.ixfe];if(r.cellFormula){var ne=Z.formula;if(ne&&ne[0]&&ne[0][0]&&ne[0][0][0]=="PtgExp"){var ie=ne[0][0][1][0],se=ne[0][0][1][1];var fe=kt({r:ie,c:se});if(w[fe])T.f=""+Qh(Z.formula,s,Z.cell,U,R);else T.F=((r.dense?(n[ie]||[])[se]:n[fe])||{}).F}else T.f=""+Qh(Z.formula,s,Z.cell,U,R)}if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);O(Z.cell,T,r);f=Z}break;case 7:;case 519:{if(f){f.val=Z;T=eg(Z,f.cell.ixfe,"s");T.XF=E[T.ixfe];if(r.cellFormula){T.f=""+Qh(f.formula,s,f.cell,U,R)}if(H>0)T.z=z[T.ixfe>>8&63];Qp(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(Z);var oe=kt(Z[0].s);v=r.dense?(n[Z[0].s.r]||[])[Z[0].s.c]:n[oe];if(r.cellFormula&&v){if(!f)break;if(!oe||!v)break;v.f=""+Qh(Z[1],s,Z[0],U,R);v.F=At(Z[0])}}break;case 1212:{if(!r.cellFormula)break;if(d){if(!f)break;w[kt(f.cell)]=Z[0];v=r.dense?(n[f.cell.r]||[])[f.cell.c]:n[kt(f.cell)];(v||{}).f=""+Qh(Z[0],s,u,U,R)}}break;case 253:T=eg(l[Z.isst].t,Z.ixfe,"s");if(l[Z.isst].h)T.h=l[Z.isst].h;T.XF=E[T.ixfe];if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);O({c:Z.c,r:Z.r},T,r);break;case 513:if(r.sheetStubs){T={ixfe:Z.ixfe,XF:E[Z.ixfe],t:"z"};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);O({c:Z.c,r:Z.r},T,r)}break;case 190:if(r.sheetStubs){for(var le=Z.c;le<=Z.C;++le){var ce=Z.ixfe[le-Z.c];T={ixfe:ce,XF:E[ce],t:"z"};if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);O({c:le,r:Z.r},T,r)}}break;case 214:;case 516:;case 4:T=eg(Z.val,Z.ixfe,"s");T.XF=E[T.ixfe];if(H>0)T.z=z[T.ixfe>>8&63];Qp(T,r,t.opts.Date1904);O({c:Z.c,r:Z.r},T,r);break;case 0:;case 512:{if(W===1)s=Z}break;case 252:{l=Z}break;case 1054:{if(R.biff==4){z[H++]=Z[1];for(var he=0;he=163)F.load(Z[1],H+163)}else F.load(Z[1],Z[0])}break;case 30:{z[H++]=Z;for(var ue=0;ue=163)F.load(Z,H+163)}break;case 229:N=N.concat(Z);break;case 93:D[Z.cmo[0]]=R.lastobj=Z;break;case 438:R.lastobj.TxO=Z;break;case 127:R.lastobj.ImData=Z;break;case 440:{for(b=Z[0].s.r;b<=Z[0].e.r;++b)for(m=Z[0].s.c;m<=Z[0].e.c;++m){v=r.dense?(n[b]||[])[m]:n[kt({c:m,r:b})];if(v)v.l=Z[1]}}break;case 2048:{for(b=Z[0].s.r;b<=Z[0].e.r;++b)for(m=Z[0].s.c;m<=Z[0].e.c;++m){v=r.dense?(n[b]||[])[m]:n[kt({c:m,r:b})];if(v&&v.l)v.l.Tooltip=Z[1]}}break;case 28:{if(R.biff<=5&&R.biff>=2)break;v=r.dense?(n[Z[0].r]||[])[Z[0].c]:n[kt(Z[0])];var de=D[Z[2]];if(!v){if(r.dense){if(!n[Z[0].r])n[Z[0].r]=[];v=n[Z[0].r][Z[0].c]={t:"z"}}else{v=n[kt(Z[0])]={t:"z"}}s.e.r=Math.max(s.e.r,Z[0].r);s.s.r=Math.min(s.s.r,Z[0].r);s.e.c=Math.max(s.e.c,Z[0].c);s.s.c=Math.min(s.s.c,Z[0].c)}if(!v.c)v.c=[];p={a:Z[1],t:de.TxO.t};v.c.push(p)}break;case 2173:Rl(E[Z.ixfe],Z.ext);break;case 125:{if(!R.cellStyles)break;while(Z.e>=Z.s){P[Z.e--]={width:Z.w/256,level:Z.level||0,hidden:!!(Z.flags&1)};if(!M){M=true;To(Z.w/256)}Ao(P[Z.e+1])}}break;case 520:{var ve={};if(Z.level!=null){L[Z.r]=ve;ve.level=Z.level}if(Z.hidden){L[Z.r]=ve;ve.hidden=true}if(Z.hpt){L[Z.r]=ve;ve.hpt=Z.hpt;ve.hpx=yo(Z.hpt)}}break;case 38:;case 39:;case 40:;case 41:if(!n["!margins"])Su(n["!margins"]={});n["!margins"][{38:"left",39:"right",40:"top",41:"bottom"}[$]]=Z;break;case 161:if(!n["!margins"])Su(n["!margins"]={});n["!margins"].header=Z.header;n["!margins"].footer=Z.footer;break;case 574:if(Z.RTL)S.Views[0].RTL=true;break;case 146:C=Z;break;case 2198:I=Z;break;case 140:A=Z;break;case 442:{if(!c)S.WBProps.CodeName=Z||"ThisWorkbook";else y.CodeName=Z||y.name}break;case 85:;case 549:;case 94:;case 431:;case 444:;case 91:;case 255:;case 2147:;case 2214:;case 233:;case 96:;case 218:;case 352:;case 2202:;case 11:;case 523:;case 4188:;case 29:;case 20:;case 21:;case 131:;case 132:;case 77:;case 171:;case 148:;case 215:;case 450:;case 176:;case 177:;case 178:;case 256:;case 180:;case 205:;case 151:;case 135:;case 197:;case 181:;case 241:;case 2050:;case 2152:;case 2151:;case 2161:;case 2162:;case 2168:;case 2167:;case 449:;case 153:;case 4192:;case 4200:;case 4198:;case 49:;case 2172:;case 659:;case 2194:;case 221:;case 99:;case 2169:;case 566:;case 2190:;case 2191:;case 2192:;case 213:;case 227:;case 81:;case 2148:;case 437:;case 82:;case 182:;case 251:;case 247:;case 240:;case 242:;case 245:;case 244:;case 174:;case 80:;case 2156:;case 42:;case 43:;case 51:;case 89:;case 90:;case 160:;case 2146:;case 445:;case 211:;case 2199:;case 2059:;case 239:;case 222:;case 2189:;case 446:;case 434:;case 4177:;case 4099:;case 4109:;case 2166:;case 220:;case 2051:;case 2058:;case 2052:;case 4174:;case 432:;case 433:;case 2170:;case 2171:;case 448:;case 4097:;case 225:;case 193:;case 226:;case 353:;case 156:break;case 61:;case 141:;case 130:;case 128:;case 425:;case 426:;case 427:;case 65:;case 4195:;case 4147:;case 4148:;case 2130:;case 2131:;case 4146:;case 4122:;case 4125:;case 4129:;case 4126:;case 4166:;case 2205:;case 2215:;case 4130:;case 4124:;case 2206:;case 2207:;case 4103:;case 4106:;case 4098:;case 4154:;case 4191:;case 4116:;case 2128:;case 4149:;case 4196:;case 4118:;case 4170:;case 4171:;case 4102:;case 4165:;case 4134:;case 4128:;case 4194:;case 4189:;case 4164:;case 4132:;case 4133:;case 2134:;case 2155:;case 4117:;case 4163:;case 4121:;case 4123:;case 4107:;case 4105:;case 2132:;case 2133:;case 4176:;case 4135:;case 4197:;case 4108:;case 2135:;case 4120:;case 4119:;case 4159:;case 4161:;case 4175:;case 4127:;case 2064:;case 2136:;case 2137:;case 4168:;case 2213:;case 2249:;case 2250:;case 2251:;case 429:;case 2055:;case 2054:;case 2053:;case 155:;case 158:;case 157:;case 2174:;case 2164:;case 144:;case 2197:;case 2212:;case 236:;case 235:;case 237:;case 2049:;case 2240:;case 2204:;case 2150:;case 2187:;case 27:;case 26:;case 64:;case 2203:;case 2188:;case 60:;case 2175:;case 2138:;case 2129:;case 234:;case 4158:;case 4160:;case 4157:;case"Intl":;case"CoordList":;case"SerAuxErrBar":;case 69:;case 31:;case 50:;case 67:;case 579:;case 1091:;case 68:;case 86:;case 8:;case 62:;case 175:;case 4156:;case 2154:;case 441:;case 4193:;case 4199:;case 2067:;case 149:;case 154:;case 194:;case 152:;case 2241:;case 2242:;case 319:;case 1048:;case 191:;case 192:;case 52:;case 2262:break;default:if(r.WTF)throw"Unrecognized Record 0x"+$.toString(16);}}else e.l+=K}t.SheetNames=Y(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)V.forEach(function(e,r){t.Sheets[t.SheetNames[r]]["!autofilter"]=e});t.Strings=l;t.SSF=F.get_table();if(R.enc)t.Encryption=R.enc;if(I)t.Themes=I;t.Metadata={};if(A!==undefined)t.Metadata.Country=A;if(U.names.length>0)S.Names=U.names;t.Workbook=S;return t}var tg={SI:"e0859ff2f94f6810ab9108002b27b3d9",DSI:"02d5cdd59c2e1b10939708002b2cf9ae",UDI:"05d5cdd59c2e1b10939708002b2cf9ae"};function ag(e,r,t){var a=z.find(e,"/!DocumentSummaryInformation");if(a&&a.size>0)try{var n=Un(a,Ca,tg.DSI);for(var i in n)r[i]=n[i]}catch(s){if(t.WTF)throw s}var f=z.find(e,"/!SummaryInformation");if(f&&f.size>0)try{var o=Un(f,Sa,tg.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){fn(r.HeadingPairs,r.TitlesOfParts,r,t);delete r.HeadingPairs;delete r.TitlesOfParts}}function ng(e,r){var t=[],a=[],n=[];var i=0,s;var f=K(Ca,"n");var o=K(Sa,"n");if(e.Props){s=Y(e.Props);for(i=0;i-1||sn.indexOf(n[i][0])>-1)continue;if(n[i][1]==null)continue;l.push(n[i])}if(a.length)z.utils.cfb_add(r,"/SummaryInformation",Bn(a,tg.SI,o,Sa));if(t.length||l.length)z.utils.cfb_add(r,"/DocumentSummaryInformation",Bn(t,tg.DSI,f,Ca,l.length?l:null,tg.UDI))}function ig(e,r){if(!r)r={};dm(r);l();if(r.codepage)s(r.codepage);var t,a;if(e.FullPaths){if(z.find(e,"/encryption"))throw new Error("File is password-protected");t=z.find(e,"!CompObj");a=z.find(e,"/Workbook")||z.find(e,"/Book")}else{switch(r.type){case"base64":e=S(b.decode(e));break;case"binary":e=S(e);break;case"buffer":break;case"array":if(!Array.isArray(e))e=Array.prototype.slice.call(e);break;}et(e,0);a={content:e}}var n;var i;if(t)Jp(t);if(r.bookProps&&!r.bookSheets)n={};else{var f=w?"buffer":"array";if(a&&a.content)n=rg(a.content,r);else if((i=z.find(e,"PerfectOffice_MAIN"))&&i.content)n=bf.to_workbook(i.content,(r.type=f,r));else if((i=z.find(e,"NativeContent_MAIN"))&&i.content)n=bf.to_workbook(i.content,(r.type=f,r));else if((i=z.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&&z.find(e,"/_VBA_PROJECT_CUR/VBA/dir"))n.vbaraw=cc(e)}var o={};if(e.FullPaths)ag(e,o,r);n.Props=n.Custprops=o;if(r.bookFiles)n.cfb=e;return n}function sg(e,r){var t=r||{};var a=z.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");}z.utils.cfb_add(a,n,_g(e,t));if(t.biff==8&&(e.Props||e.Custprops))ng(e,a);if(t.biff==8&&e.vbaraw)hc(a,z.read(e.vbaraw,{type:typeof e.vbaraw=="string"?"binary":"buffer"}));return a}var fg={0:{f:od},1:{f:gd},2:{f:Ld},3:{f:Cd},4:{f:kd},5:{f:Nd},6:{f:Hd},7:{f:xd},8:{f:Yd},9:{f:$d},10:{f:jd},11:{f:Xd},12:{f:bd},13:{f:Ud},14:{f:yd},15:{f:Ad},16:{f:Fd},17:{f:Vd},18:{f:Rd},19:{f:Pt},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:Qv},40:{},42:{},43:{f:Ho},44:{f:Bo},45:{f:jo},46:{f:Jo},47:{f:$o},48:{},49:{f:Ot},50:{},51:{f:Dl},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:$s},62:{f:Wd},63:{f:Vl},64:{f:hv},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:rt,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:fv},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:vd},148:{f:hd,p:16},151:{f:ev},152:{},153:{f:Jv},154:{},155:{},156:{f:Yv},157:{},158:{},159:{T:1,f:Nf},160:{T:-1},161:{T:1,f:ea},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:Kd},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:Il},336:{T:-1},337:{f:Ll,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:Yt},357:{},358:{},359:{},360:{T:1},361:{},362:{f:Cs},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:rv},427:{f:tv},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:iv},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:dd},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:Zd},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:Yt},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:ic},633:{T:1},634:{T:-1},635:{T:1,f:ac},636:{T:-1},637:{f:Mt},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:Rv},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:uv},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 og={6:{f:su},10:{f:Wn},12:{f:jn},13:{f:jn},14:{f:Vn},15:{f:Vn},16:{f:ta},17:{f:Vn},18:{f:Vn},19:{f:jn},20:{f:ws},21:{f:ws},23:{f:Cs},24:{f:Es},25:{f:Vn},26:{},27:{},28:{f:Is},29:{},34:{f:Vn},35:{f:Ts},38:{f:ta},39:{f:ta},40:{f:ta},41:{f:ta},42:{f:Vn},43:{f:Vn},47:{f:io},49:{f:Ji},51:{f:jn},60:{},61:{f:ji},64:{f:Vn},65:{f:Ki},66:{f:jn},77:{},80:{},81:{},82:{},85:{f:jn},89:{},90:{},91:{},92:{f:Di},93:{f:Fs},94:{},95:{f:Vn},96:{},97:{},99:{f:Vn},125:{f:$s},128:{f:ds},129:{f:Pi},130:{f:jn},131:{f:Vn},132:{f:Vn},133:{f:Li},134:{},140:{f:zs},141:{f:jn},144:{},146:{f:js},151:{},152:{},153:{},154:{},155:{},156:{f:jn},157:{},158:{},160:{f:Qs},161:{f:Ks},174:{},175:{},176:{},177:{},178:{},180:{},181:{},182:{},184:{},185:{},189:{f:os},190:{f:ls},193:{f:Wn},197:{},198:{},199:{},200:{},201:{},202:{f:Vn},203:{},204:{},205:{},206:{},207:{},208:{},209:{},210:{},211:{},213:{},215:{},216:{},217:{},218:{f:jn},220:{},221:{f:Vn},222:{},224:{f:hs},225:{f:Ni},226:{f:Wn},227:{},229:{f:Ns},233:{},235:{},236:{},237:{},239:{},240:{},241:{},242:{},244:{},245:{},246:{},247:{},248:{},249:{},251:{},252:{f:Ui},253:{f:Zi},255:{f:Wi},256:{},259:{},290:{},311:{},312:{},315:{},317:{f:$n},318:{},319:{},320:{},330:{},331:{},333:{},334:{},335:{},336:{},337:{},338:{},339:{},340:{},351:{},352:{f:Vn},353:{f:Wn},401:{},402:{},403:{},404:{},405:{},406:{},407:{},408:{},425:{},426:{},427:{},428:{},429:{},430:{f:ks},431:{f:Vn},432:{},433:{},434:{},437:{},438:{f:Ms},439:{f:Vn},440:{f:Us},441:{},442:{f:ei},443:{},444:{f:jn},445:{},446:{},448:{f:Wn},449:{f:Vi,r:2},450:{f:Wn},512:{f:is},513:{f:Zs},515:{f:ms},516:{f:es},517:{f:ps},519:{f:ef},520:{f:Hi},523:{},545:{f:xs},549:{f:Gi},566:{},574:{f:$i},638:{f:fs},659:{},1048:{},1054:{f:ts},1084:{},1212:{f:_s},2048:{f:Ws},2049:{},2050:{},2051:{},2052:{},2053:{},2054:{},2055:{},2056:{},2057:{f:Ri},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:Wn},2152:{},2154:{},2155:{},2156:{},2161:{},2162:{},2164:{},2165:{},2166:{},2167:{},2168:{},2169:{},2170:{},2171:{},2172:{f:Xs,r:12},2173:{f:Ol,r:12},2174:{},2175:{},2180:{},2181:{},2182:{},2183:{},2184:{},2185:{},2186:{},2187:{},2188:{f:Vn,r:12},2189:{},2190:{r:12},2191:{},2192:{},2194:{},2195:{},2196:{f:ys,r:12},2197:{},2198:{f:El,r:12},2199:{},2200:{},2201:{},2202:{f:Os,r:12},2203:{f:Wn},2204:{},2205:{},2206:{},2207:{},2211:{f:zi},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:jn},4135:{},4146:{},4147:{},4148:{},4149:{},4154:{},4156:{},4157:{},4158:{},4159:{},4160:{},4161:{},4163:{},4164:{f:Js},4165:{},4166:{},4168:{},4170:{},4171:{},4174:{},4175:{},4176:{},4177:{},4187:{},4188:{f:Gs},4189:{},4191:{},4192:{},4193:{},4194:{},4195:{},4196:{},4197:{},4198:{},4199:{},4200:{},0:{f:is},1:{},2:{f:sf},3:{f:af},4:{f:tf},5:{f:ps},7:{f:of},8:{},9:{f:Ri},11:{},22:{f:jn},30:{f:ns},31:{},32:{},33:{f:xs},36:{},37:{f:Gi},50:{f:lf},62:{},52:{},67:{},68:{f:jn},69:{},86:{},126:{},127:{f:rf},135:{},136:{},137:{},145:{},148:{},149:{},150:{},169:{},171:{},188:{},191:{},192:{},194:{},195:{},214:{f:cf},223:{},234:{},354:{},421:{},518:{f:su},521:{f:Ri},536:{f:Es},547:{f:Ts},561:{},579:{},1030:{f:su},1033:{f:Ri},1091:{},2157:{},2163:{},2177:{},2240:{},2241:{},2242:{},2243:{},2244:{},2245:{},2246:{},2247:{},2248:{},2249:{},2250:{},2251:{},2262:{r:12},29282:{}};function lg(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&&Wr(t))e.push(t)}function cg(e,r,t,a){var n=a||(t||[]).length||0;if(n<=8224)return lg(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)lg(e,2,ff(t,a,n));else lg(e,3,nf(t,a,n));return;case"b":;case"e":lg(e,5,ug(t,a,r.v,r.t));return;case"s":;case"str":lg(e,4,dg(t,a,(r.v||"").slice(0,255)));return;}lg(e,1,hg(null,t,a))}function pg(e,r,t,a){var n=Array.isArray(r);var i=Et(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=At(i)}for(var l=i.s.r;l<=i.e.r;++l){f=ht(l);for(var c=i.s.c;c<=i.e.c;++c){if(l===i.s.r)o[c]=pt(c);s=o[c]+f;var h=n?(r[l]||[])[c]:r[s];if(!h)continue;vg(e,h,l,c,a)}}}function gg(e,r){var t=r||{};if(g!=null&&t.dense==null)t.dense=g;var a=nt();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)}lg(a,2057,Ii(t,16,r));lg(a,13,Xn(1));lg(a,12,Xn(100));lg(a,15,Gn(true));lg(a,17,Gn(false));lg(a,16,aa(.001));lg(a,95,Gn(true));lg(a,42,Gn(false));lg(a,43,Gn(false));lg(a,130,Xn(1));lg(a,128,vs([0,0]));lg(a,131,Gn(false));lg(a,132,Gn(false));if(l)Ag(a,i["!cols"]);lg(a,512,ss(d,r));if(l)i["!links"]=[];for(var p=d.s.r;p<=d.e.r;++p){h=ht(p);for(var g=d.s.c;g<=d.e.c;++g){if(p===d.s.r)u[g]=pt(g);c=u[g]+h;var m=o?(i[p]||[])[g]:i[c];if(!m)continue;Eg(a,m,p,g,r);if(l&&m.l)i["!links"].push([c,m.l])}}var b=f.CodeName||f.name||n;if(l)lg(a,574,Yi((s.Views||[])[0]));if(l&&(i["!merges"]||[]).length)lg(a,229,Ds(i["!merges"]));if(l)Tg(a,i);lg(a,442,ti(b,r));if(l)wg(a,i);lg(a,10);return a.end()}function Sg(e,r,t){var a=nt();var n=(e||{}).Workbook||{};var i=n.Sheets||[];var s=n.WBProps||{};var f=t.biff==8,o=t.biff==5;lg(a,2057,Ii(e,5,t));if(t.bookType=="xla")lg(a,135);lg(a,225,f?Xn(1200):null);lg(a,193,Hn(2));if(o)lg(a,191);if(o)lg(a,192);lg(a,226);lg(a,92,Fi("SheetJS",t));lg(a,66,Xn(f?1200:1252));if(f)lg(a,353,Xn(0));if(f)lg(a,448);lg(a,317,qs(e.SheetNames.length));if(f&&e.vbaraw)lg(a,211);if(f&&e.vbaraw){var l=s.CodeName||"ThisWorkbook";lg(a,442,ti(l,t))}lg(a,156,Xn(17));lg(a,25,Gn(false));lg(a,18,Gn(false));lg(a,19,Xn(0));if(f)lg(a,431,Gn(false));if(f)lg(a,444,Xn(0));lg(a,61,Xi(t));lg(a,64,Gn(false));lg(a,141,Xn(0));lg(a,34,Gn(Wv(e)=="true"));lg(a,14,Gn(true));if(f)lg(a,439,Gn(false));lg(a,218,Xn(0));mg(a,e,t);bg(a,e.SSF,t);kg(a,t);if(f)lg(a,352,Gn(false));var c=a.end();var h=nt();if(f)lg(h,140,Vs());if(f&&t.Strings)cg(h,252,Bi(t.Strings,t));lg(h,10);var u=h.end();var d=nt();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 yg(e,r);case 4:;case 3:;case 2:return gg(e,r);}throw new Error("invalid type "+i.bookType+" for BIFF")}var xg=function(){function e(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=ge(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 v=[];for(s=0;s/i);for(f=0;f"))>-1)k=k.slice(T+1);for(var A=0;A")));u=C.colspan?+C.colspan:1;if((h=+C.rowspan)>1||u>1)v.push({s:{r:l,c:c},e:{r:l+(h||1)-1,c:c+u-1}});var S=C.t||C["data-t"]||"";if(!k.length){ -c+=u;continue}k=tr(k);if(d.s.r>l)d.s.r=l;if(d.e.rc)d.s.c=c;if(d.e.c[\s\S]*?<\/table>/gi);if(!a||a.length==0)throw new Error("Invalid HTML: could not find
");if(a.length==1)return yt(e(a[0],t),t);var n=ib();a.forEach(function(r,a){sb(n,e(r,t),"Sheet"+(a+1))});return n}function t(e,r,t,a){var n=e["!merges"]||[];var i=[];for(var s=r.s.c;s<=r.e.c;++s){var f=0,o=0;for(var l=0;lt||n[l].s.c>s)continue;if(n[l].e.r1)d.rowspan=f;if(o>1)d.colspan=o;if(a.editable)u=''+u+"";else if(h){d["data-t"]=h&&h.t||"z";if(h.v!=null)d["data-v"]=h.v;if(h.z!=null)d["data-z"]=h.z;if(h.l&&(h.l.Target||"#").charAt(0)!="#")u=''+u+""}d.id=(a.id||"sjs")+"-"+c;i.push(cr("td",u,d))}var v="";return v+i.join("")+""}function a(e,r,t){var a=[];return a.join("")+""}var n='SheetJS Table Export';var i="";function s(e,r){var s=r||{};var f=s.header!=null?s.header:n;var o=s.footer!=null?s.footer:i;var l=[f];var c=Tt(e["!ref"]);s.dense=Array.isArray(e);l.push(a(e,c,s));for(var h=c.s.r;h<=c.e.r;++h)l.push(t(e,c,h,s));l.push("
"+o);return l.join("")}return{to_workbook:r,to_sheet:e,_row:t,BEGIN:n,END:i,_preamble:a,from_sheet:s}}();function Og(e,r,t){var a=t||{};if(g!=null)a.dense=g;var n=0,i=0;if(a.origin!=null){if(typeof a.origin=="number")n=a.origin;else{var s=typeof a.origin=="string"?wt(a.origin):a.origin;n=s.r;i=s.c}}var f=r.getElementsByTagName("tr");var o=Math.min(a.sheetRows||1e7,f.length);var l={s:{r:0,c:0},e:{r:n,c:i}};if(e["!ref"]){var c=Tt(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(n==-1)l.e.r=n=c.e.r+1}var h=[],u=0;var d=e["!rows"]||(e["!rows"]=[]);var v=0,p=0,m=0,b=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;v1||k>1)h.push({s:{r:p+n,c:b+i},e:{r:p+n+(w||1)-1,c:b+i+(k||1)-1}});var _={t:"s",v:C};var x=E.getAttribute("data-t")||E.getAttribute("t")||"";if(C!=null){if(C.length==0)_.t=x||"z";else if(a.raw||C.trim().length==0||x=="s"){}else if(C==="TRUE")_={t:"b",v:true};else if(C==="FALSE")_={t:"b",v:false};else if(!isNaN(ue(C)))_={t:"n",v:ue(C)};else if(!isNaN(ve(C).getDate())){_={t:"d",v:oe(C)};if(!a.cellDates)_={t:"n",v:ee(_.v)};_.z=a.dateNF||F._table[14]}}if(_.z===undefined&&S!=null)_.z=S;var O="",R=E.getElementsByTagName("A");if(R&&R.length)for(var I=0;I=o)e["!fullref"]=At((l.e.r=f.length-v+p-1+n,l));return e}function Rg(e,r){var t=r||{};var a=t.dense?[]:{};return Og(a,e,r)}function Ig(e,r){return yt(Rg(e,r),r)}function Ng(e){var r="";var t=Dg(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function Dg(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 Fg(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=Be(r.replace(/<[^>]*>/g,""));return[t]}var Pg={day:["d","dd"],month:["m","mm"],year:["y","yy"],hours:["h","hh"],minutes:["m","mm"],seconds:["s","ss"],"am-pm":["A/P","AM/PM"],"day-of-week":["ddd","dddd"],era:["e","ee"],quarter:["\\Qm",'m\\"th quarter"']};function Lg(e,r){var t=r||{};if(g!=null&&t.dense==null)t.dense=g;var a=dr(e);var n=[],i;var s;var f={name:""},o="",l=0;var c;var h;var u={},d=[];var v=t.dense?[]:{};var p,m;var b={value:""};var w="",k=0,T;var A=[];var E=-1,C=-1,S={s:{r:1e6,c:1e7},e:{r:0,c:0}};var y=0;var _={};var x=[],O={},R=0,I=0;var N=[],D=1,F=1;var P=[];var L={Names:[]};var M={};var U=["",""];var B=[],W={};var H="",z=0;var V=false,G=false;var j=0;vr.lastIndex=0;a=a.replace(//gm,"").replace(//gm,"");while(p=vr.exec(a))switch(p[3]=p[3].replace(/_.*$/,"")){case"table":;case"工作表":if(p[1]==="/"){if(S.e.c>=S.s.c&&S.e.r>=S.s.r)v["!ref"]=At(S);else v["!ref"]="A1:A1";if(t.sheetRows>0&&t.sheetRows<=S.e.r){v["!fullref"]=v["!ref"];S.e.r=t.sheetRows-1;v["!ref"]=At(S)}if(x.length)v["!merges"]=x;if(N.length)v["!rows"]=N;c.name=c["名称"]||c.name;if(typeof JSON!=="undefined")JSON.stringify(c);d.push(c.name);u[c.name]=v;G=false}else if(p[0].charAt(p[0].length-2)!=="/"){c=Pe(p[0],false);E=C=-1;S.s.r=S.s.c=1e7;S.e.r=S.e.c=0;v=t.dense?[]:{};x=[];N=[];G=true}break;case"table-row-group":if(p[1]==="/")--y;else++y;break;case"table-row":;case"行":if(p[1]==="/"){E+=D;D=1;break}h=Pe(p[0],false);if(h["行号"])E=h["行号"]-1;else if(E==-1)E=0;D=+h["number-rows-repeated"]||1;if(D<10)for(j=0;j0)N[E+j]={level:y};C=-1;break;case"covered-table-cell":if(p[1]!=="/")++C;if(t.sheetStubs){if(t.dense){if(!v[E])v[E]=[];v[E][C]={t:"z"}}else v[kt({r:E,c:C})]={t:"z"}}w="";A=[];break;case"table-cell":;case"数据":if(p[0].charAt(p[0].length-2)==="/"){++C;b=Pe(p[0],false);F=parseInt(b["number-columns-repeated"]||"1",10);m={t:"z",v:null};if(b.formula&&t.cellFormula!=false)m.f=gu(Be(b.formula));if((b["数据类型"]||b["value-type"])=="string"){m.t="s";m.v=Be(b["string-value"]||"");if(t.dense){if(!v[E])v[E]=[];v[E][C]=m}else{v[kt({r:E,c:C})]=m}}C+=F-1}else if(p[1]!=="/"){++C;w="";k=0;A=[];F=1;var X=D?E+D-1:E;if(C>S.e.c)S.e.c=C;if(CS.e.r)S.e.r=X;b=Pe(p[0],false);B=[];W={};m={t:b["数据类型"]||b["value-type"],v:null};if(t.cellFormula){if(b.formula)b.formula=Be(b.formula);if(b["number-matrix-columns-spanned"]&&b["number-matrix-rows-spanned"]){R=parseInt(b["number-matrix-rows-spanned"],10)||0;I=parseInt(b["number-matrix-columns-spanned"],10)||0;O={s:{r:E,c:C},e:{r:E+R-1,c:C+I-1}};m.F=At(O);P.push([O,m.F])}if(b.formula)m.f=gu(b.formula);else for(j=0;j=P[j][0].s.r&&E<=P[j][0].e.r)if(C>=P[j][0].s.c&&C<=P[j][0].e.c)m.F=P[j][1]}if(b["number-columns-spanned"]||b["number-rows-spanned"]){R=parseInt(b["number-rows-spanned"],10)||0;I=parseInt(b["number-columns-spanned"],10)||0;O={s:{r:E,c:C},e:{r:E+R-1,c:C+I-1}};x.push(O)}if(b["number-columns-repeated"])F=parseInt(b["number-columns-repeated"],10);switch(m.t){case"boolean":m.t="b";m.v=Ke(b["boolean-value"]);break;case"float":m.t="n";m.v=parseFloat(b.value);break;case"percentage":m.t="n";m.v=parseFloat(b.value);break;case"currency":m.t="n";m.v=parseFloat(b.value);break;case"date":m.t="d";m.v=oe(b["date-value"]);if(!t.cellDates){m.t="n";m.v=ee(m.v)}m.z="m/d/yy";break;case"time":m.t="n";m.v=ie(b["time-value"])/86400;if(t.cellDates){m.t="d";m.v=ne(m.v)}m.z="HH:MM:SS";break;case"number":m.t="n";m.v=parseFloat(b["数据数值"]);break;default:if(m.t==="string"||m.t==="text"||!m.t){m.t="s";if(b["string-value"]!=null){w=Be(b["string-value"]);A=[]}}else throw new Error("Unsupported value type "+m.t);}}else{V=false;if(m.t==="s"){m.v=w||"";if(A.length)m.R=A;V=k==0}if(M.Target)m.l=M;if(B.length>0){m.c=B;B=[]}if(w&&t.cellText!==false)m.w=w;if(V){m.t="z";delete m.v}if(!V||t.sheetStubs){if(!(t.sheetRows&&t.sheetRows<=E)){for(var $=0;$0)v[E+$][C+F]=ce(m)}else{v[kt({r:E+$,c:C})]=m;while(--F>0)v[kt({r:E+$,c:C+F})]=ce(m)}if(S.e.c<=C)S.e.c=C}}}F=parseInt(b["number-columns-repeated"]||"1",10);C+=F-1;F=0;m={};w="";A=[]}M={};break;case"document":;case"document-content":;case"电子表格文档":;case"spreadsheet":;case"主体":;case"scripts":;case"styles":;case"font-face-decls":;case"master-styles":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/")n.push([p[3],true]);break;case"annotation":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i;W.t=w;if(A.length)W.R=A;W.a=H;B.push(W)}else if(p[0].charAt(p[0].length-2)!=="/"){n.push([p[3],false])}H="";z=0;w="";k=0;A=[];break;case"creator":if(p[1]==="/"){H=a.slice(z,p.index)}else z=p.index+p[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(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/")n.push([p[3],false]);w="";k=0;A=[];break;case"scientific-number":break;case"currency-symbol":break;case"currency-style":break;case"number-style":;case"percentage-style":;case"date-style":;case"time-style":if(p[1]==="/"){_[f.name]=o;if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/"){o="";f=Pe(p[0],false);n.push([p[3],true])}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=Pe(p[0],false);o+=Pg[p[3]][s.style==="long"?1:0];break;}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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=Pe(p[0],false);o+=Pg[p[3]][s.style==="long"?1:0];break;}break;case"boolean-style":break;case"boolean":break;case"text-style":break;case"text":if(p[0].slice(-2)==="/>")break;else if(p[1]==="/")switch(n[n.length-1][0]){case"number-style":;case"date-style":;case"time-style":o+=a.slice(l,p.index);break;}else l=p.index+p[0].length;break;case"named-range":s=Pe(p[0],false);U=bu(s["cell-range-address"]);var Y={Name:s.name,Ref:U[0]+"!"+U[1]};if(G)Y.Sheet=d.length;L.Names.push(Y);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":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(n[n.length-1][0])>-1)break;if(p[1]==="/"&&(!b||!b["string-value"])){var K=Fg(a.slice(k,p.index),T);w=(w.length>0?w+"\n":"")+K[0]}else{T=Pe(p[0],false);k=p.index+p[0].length}break;case"s":break;case"database-range":if(p[1]==="/")break;try{U=bu(Pe(p[0])["target-range-address"]);u[U[0]]["!autofilter"]={ref:U[1]}}catch(J){}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(p[1]!=="/"){M=Pe(p[0],false);if(!M.href)break;M.Target=Be(M.href);delete M.href;if(M.Target.charAt(0)=="#"&&M.Target.indexOf(".")>-1){U=bu(M.Target.slice(1));M.Target="#"+U[0]+"!"+U[1]}else if(M.Target.match(/^\.\.[\\\/]/))M.Target=M.Target.slice(3)}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(p[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(t.WTF)throw new Error(p);};}var q={Sheets:u,SheetNames:d,Workbook:L};if(t.bookSheets)delete q.Sheets;return q}function Mg(e,r){r=r||{};if(ke(e,"META-INF/manifest.xml"))$a(Ae(e,"META-INF/manifest.xml"),r);var t=Ee(e,"content.xml");if(!t)throw new Error("Missing content.xml in ODS / UOF file");var a=Lg(Je(t),r);if(ke(e,"meta.xml"))a.Props=rn(Ae(e,"meta.xml"));return a}function Ug(e,r){return Lg(e,r)}var Bg=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return Re+r}}();var Wg=function(){var e=function(e){return ze(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){var s=[];s.push(' \n');var f=0,o=0,l=Tt(a["!ref"]||"A1");var c=a["!merges"]||[],h=0;var u=Array.isArray(a);if(a["!cols"]){for(o=0;o<=l.e.c;++o)s.push(" \n")}var d="",v=a["!rows"]||[];for(f=0;f\n")}for(;f<=l.e.r;++f){d=v[f]?' table:style-name="ro'+v[f].ods+'"':"";s.push(" \n");for(o=0;oo)continue;if(c[h].s.r>f)continue;if(c[h].e.c\n")}s.push(" \n");return s.join("")};var n=function(e,r){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 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")};return function i(e,r){var t=[Re];var i=lr({"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=lr({"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(Za().replace(/office:document-meta/g,"office:meta"))}else t.push("\n");n(t,e);t.push(" \n");t.push(" \n");for(var f=0;f!=e.SheetNames.length;++f)t.push(a(e.Sheets[e.SheetNames[f]],e,f,r));t.push(" \n");t.push(" \n");if(r.bookType=="fods")t.push("");else t.push("");return t.join("")}}();function Hg(e,r){if(r.bookType=="fods")return Wg(e,r);var t=_e();var a="";var n=[];var i=[];a="mimetype";ye(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";ye(t,a,Wg(e,r));n.push([a,"text/xml"]);i.push([a,"ContentFile"]);a="styles.xml";ye(t,a,Bg(e,r));n.push([a,"text/xml"]);i.push([a,"StylesFile"]);a="meta.xml";ye(t,a,Re+Za());n.push([a,"text/xml"]);i.push([a,"MetadataFile"]);a="manifest.rdf";ye(t,a,qa(i));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";ye(t,a,Ya(n));return t}var zg=function(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)};var Vg=function(e){return typeof TextDecoder!="undefined"?(new TextDecoder).decode(e):Je(_(e))};var Gg=function(e){var r=e.reduce(function(e,r){return e+r.length},0);var t=new Uint8Array(r);var a=0;e.forEach(function(e){t.set(e,a);a+=e.length});return t};var jg=function(e){e-=e>>1&1431655765;e=(e&858993459)+(e>>2&858993459);return(e+(e>>4)&252645135)*16843009>>>24};var Xg=function(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 $g(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 Yg(e){var r=0,t=e[r]&127;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}return t}function Kg(e){var r=[],t=[0];while(t[0]=128);f=e.slice(o,t[0])}break;case 5:s=4;f=e.slice(t[0],t[0]+s);t[0]+=s;break;case 1:s=8;f=e.slice(t[0],t[0]+s);t[0]+=s;break;case 2:s=$g(e,t);f=e.slice(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={offset:a,data:f,type:i};if(r[n]==null)r[n]=[l];else r[n].push(l)}return r}function Jg(e,r){if(!e)return[];return e.map(function(e){var t;try{return r(e.data)}catch(a){var n=(t=a.message)==null?void 0:t.match(/at offset (\d+)/);if(n)a.message=a.message.replace(/at offset (\d+)/,"at offset "+(+n[1]+e.offset));throw a}})}function qg(e){var r=[],t=[0];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.slice(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}}n=[Gg(n)];if(o==0)throw new Error("Invalid offset 0");if(o>n[0].length)throw new Error("Invalid offset beyond length");if(l>=o){n.push(n[0].slice(-o));l-=o;while(l>=n[n.length-1].length){n.push(n[n.length-1]);l-=n[n.length-1].length}}n.push(n[0].slice(-o,-o+l))}}var c=Gg(n);if(c.length!=a)throw new Error("Unexpected length: ".concat(c.length," != ").concat(a));return c}function Qg(e){var r=[];var t=0;while(t0};break;case 7:h={t:"n",v:l};break;case 8:h={t:"e",v:0};break;case 9:{if(f>-1)h={t:"s",v:t[f]};else if(o>-1)h={t:"s",v:r[o]};else if(!isNaN(l))h={t:"n",v:l};else throw new Error("Unsupported cell type ".concat(e.slice(0,4)))}break;default:throw new Error("Unsupported cell type ".concat(e.slice(0,4)));}return h}function rm(e,r,t){var a=zg(e);var n=e[1];var i=a.getUint32(8,true);var s=12;var f=-1,o=-1,l=NaN,c=NaN,h=new Date(2001,0,1);if(i&1){l=Xg(e,s);s+=16}if(i&2){c=a.getFloat64(s,true);s+=8}if(i&4){h.setTime(h.getTime()+a.getFloat64(s,true)*1e3);s+=8}if(i&8){o=a.getUint32(s,true);s+=4}if(i&16){f=a.getUint32(s,true);s+=4}var u;switch(n){case 0:break;case 2:u={t:"n",v:l};break;case 3:u={t:"s",v:r[o]};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:{if(f>-1)u={t:"s",v:t[f]};else throw new Error("Unsupported cell type ".concat(n," : ").concat(i&31," : ").concat(e.slice(0,4)))}break;case 10:u={t:"n",v:l};break;default:throw new Error("Unsupported cell type ".concat(n," : ").concat(i&31," : ").concat(e.slice(0,4)));}return u}function tm(e,r,t){switch(e[0]){case 3:;case 4:return em(e,r,t);case 5:return rm(e,r,t);default:throw new Error("Unsupported payload version ".concat(e[0]));}}function am(e){var r=Kg(e);return $g(r[1][0].data)}function nm(e,r){var t=Kg(r.data);var a=Yg(t[1][0].data);var n=t[3];var i=[];(n||[]).forEach(function(r){var t=Kg(r.data);var n=Yg(t[1][0].data)>>>0;switch(a){case 1:i[n]=Vg(t[3][0].data);break;case 8:{var s=e[am(t[9][0].data)][0];var f=Kg(s.data);var o=e[am(f[1][0].data)][0];var l=Yg(o.meta[1][0].data);if(l!=2001)throw new Error("2000 unexpected reference to ".concat(l));var c=Kg(o.data);i[n]=c[3].map(function(e){return Vg(e.data)}).join("")}break;}});return i}function im(e){var r,t,a,n,i,s,f,o,l,c;var h=Kg(e);var u=Yg(h[1][0].data)>>>0;var d=(t=(r=h[3])==null?void 0:r[0])==null?void 0:t.data;var v=((n=(a=h[4])==null?void 0:a[0])==null?void 0:n.data)&&zg(h[4][0].data);var p=(s=(i=h[6])==null?void 0:i[0])==null?void 0:s.data;var g=((o=(f=h[7])==null?void 0:f[0])==null?void 0:o.data)&&zg(h[7][0].data);var m=((c=(l=h[8])==null?void 0:l[0])==null?void 0:c.data)&&Yg(h[8][0].data)>0||false;var b=m?4:1;var w=[];var k=0;for(var T=0;T>>0)-1;if(i.e.c<0)throw new Error("Invalid col varint ".concat(n[7][0].data));t["!ref"]=At(i);{var s=Kg(n[4][0].data);var f=nm(e,e[am(s[4][0].data)][0]);var o=((a=s[17])==null?void 0:a[0])?nm(e,e[am(s[17][0].data)][0]):[];{var l=Kg(s[3][0].data);var c=[];l[1].forEach(function(r){var t=Kg(r.data);var a=e[am(t[2][0].data)][0];var n=Yg(a.meta[1][0].data);if(n!=6002)throw new Error("6001 unexpected reference to ".concat(n));c.push({id:Yg(t[1][0].data),ref:sm(e,a)})});c.forEach(function(e){e.ref.forEach(function(e,r){e.forEach(function(e,a){var n=kt({r:r,c:a});var i=tm(e,f,o);if(i)t[n]=i})})})}}}function om(e,r){var t=Kg(r.data);var a={"!ref":"A1"};var n=e[am(t[2][0].data)];var i=Yg(n[0].meta[1][0].data);if(i!=6001)throw new Error("6000 unexpected reference to ".concat(i));fm(e,n[0],a);return a}function lm(e,r){var t;var a=Kg(r.data);var n={name:((t=a[1])==null?void 0:t[0])?Vg(a[1][0].data):"",sheets:[]};var i=Jg(a[2],am);i.forEach(function(r){e[r].forEach(function(r){var t=Yg(r.meta[1][0].data);if(t==6e3)n.sheets.push(om(e,r))})});return n}function cm(e,r){ -var t=ib();var a=Kg(r.data);var n=Jg(a[1],am);n.forEach(function(r){e[r].forEach(function(r){var a=Yg(r.meta[1][0].data);if(a==2){var n=lm(e,r);n.sheets.forEach(function(e){sb(t,e,n.name)})}})});if(t.SheetNames.length==0)throw new Error("Empty NUMBERS file");return t}function hm(e){var r=[];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;var t;try{t=Qg(e.content)}catch(a){return console.log("?? "+e.content.length+" "+(a.message||a))}var n;try{n=qg(t)}catch(a){return console.log("## "+(a.message||a))}n.forEach(function(e){r[+e.id]=e.messages})});if(!r.length)throw new Error("File has no messages");var t;r.forEach(function(e){e.forEach(function(e){var r=Yg(e.meta[1][0].data)>>>0;if(r==1){if(!t)t=e;else throw new Error("Document has multiple roots")}})});if(!t)throw new Error("Cannot find Document root");return cm(r,t)}function um(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 dm(e){um([["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 vm(e){um([["cellDates",false],["bookSST",false],["bookType","xlsx"],["compression",false],["WTF",false]])(e)}function pm(e){if(Ba.WS.indexOf(e)>-1)return"sheet";if(Ba.CS&&e==Ba.CS)return"chart";if(Ba.DS&&e==Ba.DS)return"dialog";if(Ba.MS&&e==Ba.MS)return"macro";return e&&e.length?e:"sheet"}function gm(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,pm(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function mm(e,r,t,a,n,i,s,f,o,l,c,h){try{i[a]=Ha(Ee(e,t,true),r);var u=Ae(e,r);var d;switch(f){case"sheet":d=fp(u,r,n,o,i[a],l,c,h);break;case"chart":d=op(u,r,n,o,i[a],l,c,h);if(!d||!d["!drawel"])break;var v=Oe(d["!drawel"].Target,r);var p=Wa(v);var g=$l(Ee(e,v,true),Ha(Ee(e,p,true),v));var m=Oe(g,v);var b=Wa(m);d=_v(Ee(e,m,true),m,o,Ha(Ee(e,b,true),m),l,d);break;case"macro":d=lp(u,r,n,o,i[a],l,c,h);break;case"dialog":d=cp(u,r,n,o,i[a],l,c,h);break;default:throw new Error("Unrecognized sheet type "+f);}s[a]=d;var w=[];if(i&&i[a])Y(i[a]).forEach(function(t){var n="";if(i[a][t].Type==Ba.CMNT){n=Oe(i[a][t].Target,r);var s=vp(Ae(e,n,true),n,o);if(!s||!s.length)return;Jl(d,s,false)}if(i[a][t].Type==Ba.TCMNT){n=Oe(i[a][t].Target,r);w=w.concat(Ql(Ae(e,n,true),o))}});if(w&&w.length)Jl(d,w,true,o.people||[])}catch(k){if(o.WTF)throw k}}function bm(e){return e.charAt(0)=="/"?e.slice(1):e}function wm(e,r){P(F);r=r||{};dm(r);if(ke(e,"META-INF/manifest.xml"))return Mg(e,r);if(ke(e,"objectdata.xml"))return Mg(e,r);if(ke(e,"Index/Document.iwa")){if(typeof Uint8Array=="undefined")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof hm!="undefined"){if(e.FileIndex)return hm(e);var t=z.utils.cfb_new();Se(e).forEach(function(r){ye(t,r,Ce(e,r))});return hm(t)}throw new Error("Unsupported NUMBERS file")}if(!ke(e,"[Content_Types].xml")){if(ke(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(ke(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");throw new Error("Unsupported ZIP file")}var a=Se(e);var n=La(Ee(e,"[Content_Types].xml"));var i=false;var s,f;if(n.workbooks.length===0){f="xl/workbook.xml";if(Ae(e,f,true))n.workbooks.push(f)}if(n.workbooks.length===0){f="xl/workbook.bin";if(!Ae(e,f,true))throw new Error("Could not find workbook");n.workbooks.push(f);i=true}if(n.workbooks[0].slice(-3)=="bin")i=true;var o={};var l={};if(!r.bookSheets&&!r.bookProps){ku=[];if(n.sst)try{ku=dp(Ae(e,bm(n.sst)),n.sst,r)}catch(c){if(r.WTF)throw c}if(r.cellStyles&&n.themes.length)o=up(Ee(e,n.themes[0].replace(/^\//,""),true)||"",n.themes[0],r);if(n.style)l=hp(Ae(e,bm(n.style)),n.style,o,r)}n.links.map(function(t){try{var a=Ha(Ee(e,Wa(bm(t))),t);return gp(Ae(e,bm(t)),a,t,r)}catch(n){}});var h=sp(Ae(e,bm(n.workbooks[0])),n.workbooks[0],r);var u={},d="";if(n.coreprops.length){d=Ae(e,bm(n.coreprops[0]),true);if(d)u=rn(d);if(n.extprops.length!==0){d=Ae(e,bm(n.extprops[0]),true);if(d)on(d,u,r)}}var v={};if(!r.bookSheets||r.bookProps){if(n.custprops.length!==0){d=Ee(e,bm(n.custprops[0]),true);if(d)v=hn(d,r)}}var p={};if(r.bookSheets||r.bookProps){if(h.Sheets)s=h.Sheets.map(function I(e){return e.name});else if(u.Worksheets&&u.SheetNames.length>0)s=u.SheetNames;if(r.bookProps){p.Props=u;p.Custprops=v}if(r.bookSheets&&typeof s!=="undefined")p.SheetNames=s;if(r.bookSheets?p.SheetNames:r.bookProps)return p}s={};var g={};if(r.bookDeps&&n.calcchain)g=pp(Ae(e,bm(n.calcchain)),n.calcchain,r);var m=0;var b={};var w,k;{var T=h.Sheets;u.Worksheets=T.length;u.SheetNames=[];for(var A=0;A!=T.length;++A){u.SheetNames[A]=T[A].name}}var E=i?"bin":"xml";var C=n.workbooks[0].lastIndexOf("/");var S=(n.workbooks[0].slice(0,C+1)+"_rels/"+n.workbooks[0].slice(C+1)+".rels").replace(/^\//,"");if(!ke(e,S))S="xl/_rels/workbook."+E+".rels";var y=Ha(Ee(e,S,true),S.replace(/_rels.*/,"s5s"));if((n.metadata||[]).length>=1){r.xlmeta=mp(Ae(e,bm(n.metadata[0])),n.metadata[0],r)}if((n.people||[]).length>=1){r.people=rc(Ae(e,bm(n.people[0])),r)}if(y)y=gm(y,h.Sheets);var _=Ae(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(m=0;m!=u.Worksheets;++m){var x="sheet";if(y&&y[m]){w="xl/"+y[m][1].replace(/[\/]?xl\//,"");if(!ke(e,w))w=y[m][1];if(!ke(e,w))w=S.replace(/_rels\/.*$/,"")+y[m][1];x=y[m][2]}else{w="xl/worksheets/sheet"+(m+1-_)+"."+E;w=w.replace(/sheet0\./,"sheet.")}k=w.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");if(r&&r.sheets!=null)switch(typeof r.sheets){case"number":if(m!=r.sheets)continue e;break;case"string":if(u.SheetNames[m].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var O=false;for(var R=0;R!=r.sheets.length;++R){if(typeof r.sheets[R]=="number"&&r.sheets[R]==m)O=1;if(typeof r.sheets[R]=="string"&&r.sheets[R].toLowerCase()==u.SheetNames[m].toLowerCase())O=1}if(!O)continue e};}mm(e,w,k,u.SheetNames[m],m,b,s,x,r,h,o,l)}p={Directory:n,Workbook:h,Props:u,Custprops:v,Deps:g,Sheets:s,SheetNames:u.SheetNames,Strings:ku,Styles:l,Themes:o,SSF:F.get_table()};if(r&&r.bookFiles){if(e.files){p.keys=a;p.files=e.files}else{p.keys=[];p.files={};e.FullPaths.forEach(function(r,t){r=r.replace(/^Root Entry[\/]/,"");p.keys.push(r);p.files[r]=e.FileIndex[t]})}}if(r&&r.bookVBA){if(n.vba.length>0)p.vbaraw=Ae(e,bm(n.vba[0]),true);else if(n.defaults&&n.defaults.bin===lc)p.vbaraw=Ae(e,"xl/vbaProject.bin",true)}return p}function km(e,r){var t=r||{};var a="Workbook",n=z.find(e,a);try{a="/!DataSpaces/Version";n=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);Bf(n.content);a="/!DataSpaces/DataSpaceMap";n=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=Hf(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=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=zf(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);Gf(n.content)}catch(f){}a="/EncryptionInfo";n=z.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var o=$f(n.content);a="/EncryptedPackage";n=z.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 Tm(e,r){if(r.bookType=="ods")return Hg(e,r);if(r.bookType=="xlsb")return Am(e,r);return Em(e,r)}function Am(e,r){Yl=1024;if(e&&!e.SSF){e.SSF=F.get_table()}if(e&&e.SSF){P(F);F.load_table(e.SSF);r.revssf=q(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(Au)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t=r.bookType=="xlsb"?"bin":"xml";var a=uc.indexOf(r.bookType)>-1;var n=Pa();vm(r=r||{});var i=_e();var s="",f=0;r.cellXfs=[];yu(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";ye(i,s,an(e.Props,r));n.coreprops.push(s);ja(r.rels,2,s,Ba.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";ye(i,s,un(e.Custprops,r));n.custprops.push(s);ja(r.rels,4,s,Ba.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;ye(i,s,wp(f-1,s,r,e,c));n.sheets.push(s);ja(r.wbrels,-1,"worksheets/sheet"+f+"."+t,Ba.WS[0]);}if(h){var d=h["!comments"];var v=false;var p="";if(d&&d.length>0){p="xl/comments"+f+"."+t;ye(i,p,Ep(d,p,r));n.comments.push(p);ja(c,-1,"../comments"+f+"."+t,Ba.CMNT);v=true}if(h["!legacy"]){if(v)ye(i,"xl/drawings/vmlDrawing"+f+".vml",Kl(f,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(c["!id"].rId1)ye(i,Wa(s),Va(c))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;ye(i,s,Ap(r.Strings,s,r));n.strs.push(s);ja(r.wbrels,-1,"sharedStrings."+t,Ba.SST)}s="xl/workbook."+t;ye(i,s,bp(e,s,r));n.workbooks.push(s);ja(r.rels,1,s,Ba.WB);s="xl/theme/theme1.xml";ye(i,s,Al(e.Themes,r));n.themes.push(s);ja(r.wbrels,-1,"theme/theme1.xml",Ba.THEME);s="xl/styles."+t;ye(i,s,Tp(e,s,r));n.styles.push(s);ja(r.wbrels,-1,"styles."+t,Ba.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";ye(i,s,e.vbaraw);n.vba.push(s);ja(r.wbrels,-1,"vbaProject.bin",Ba.VBA)}s="xl/metadata."+t;ye(i,s,Cp(s));n.metadata.push(s);ja(r.wbrels,-1,"metadata."+t,Ba.XLMETA);ye(i,"[Content_Types].xml",Ua(n,r));ye(i,"_rels/.rels",Va(r.rels));ye(i,"xl/_rels/workbook."+t+".rels",Va(r.wbrels));delete r.revssf;delete r.ssf;return i}function Em(e,r){Yl=1024;if(e&&!e.SSF){e.SSF=F.get_table()}if(e&&e.SSF){P(F);F.load_table(e.SSF);r.revssf=q(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(Au)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=uc.indexOf(r.bookType)>-1;var n=Pa();vm(r=r||{});var i=_e();var s="",f=0;r.cellXfs=[];yu(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";ye(i,s,an(e.Props,r));n.coreprops.push(s);ja(r.rels,2,s,Ba.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";ye(i,s,un(e.Custprops,r));n.custprops.push(s);ja(r.rels,4,s,Ba.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;ye(i,s,fd(f-1,r,e,h));n.sheets.push(s);ja(r.wbrels,-1,"worksheets/sheet"+f+"."+t,Ba.WS[0]);}if(u){var v=u["!comments"];var p=false;var g="";if(v&&v.length>0){var m=false;v.forEach(function(e){e[1].forEach(function(e){if(e.T==true)m=true})});if(m){g="xl/threadedComments/threadedComment"+f+"."+t;ye(i,g,ec(v,c,r));n.threadedcomments.push(g);ja(h,-1,"../threadedComments/threadedComment"+f+"."+t,Ba.TCMNT)}g="xl/comments"+f+"."+t;ye(i,g,Zl(v,r));n.comments.push(g);ja(h,-1,"../comments"+f+"."+t,Ba.CMNT);p=true}if(u["!legacy"]){if(p)ye(i,"xl/drawings/vmlDrawing"+f+".vml",Kl(f,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(h["!id"].rId1)ye(i,Wa(s),Va(h))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;ye(i,s,If(r.Strings,r));n.strs.push(s);ja(r.wbrels,-1,"sharedStrings."+t,Ba.SST)}s="xl/workbook."+t;ye(i,s,$v(e,r));n.workbooks.push(s);ja(r.rels,1,s,Ba.WB);s="xl/theme/theme1.xml";ye(i,s,Al(e.Themes,r));n.themes.push(s);ja(r.wbrels,-1,"theme/theme1.xml",Ba.THEME);s="xl/styles."+t;ye(i,s,Uo(e,r));n.styles.push(s);ja(r.wbrels,-1,"styles."+t,Ba.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";ye(i,s,e.vbaraw);n.vba.push(s);ja(r.wbrels,-1,"vbaProject.bin",Ba.VBA)}s="xl/metadata."+t;ye(i,s,Hl());n.metadata.push(s);ja(r.wbrels,-1,"metadata."+t,Ba.XLMETA);if(c.length>1){s="xl/persons/person.xml";ye(i,s,tc(c,r));n.people.push(s);ja(r.wbrels,-1,"persons/person.xml",Ba.PEOPLE)}ye(i,"[Content_Types].xml",Ua(n,r));ye(i,"_rels/.rels",Va(r.rels));ye(i,"xl/_rels/workbook."+t+".rels",Va(r.wbrels));delete r.revssf;delete r.ssf;return i}function Cm(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=b.decode(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 Sm(e,r){if(z.find(e,"EncryptedPackage"))return km(e,r);return ig(e,r)}function ym(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=w&&Buffer.isBuffer(e)?"buffer":"base64";t=xe(a,n);return wm(t,n)}function _m(e,r){var t=0;e:while(t=2&&n[3]===0)return bf.to_workbook(a,t);if(n[2]===0&&(n[3]===8||n[3]===9))return bf.to_workbook(a,t)}break;case 3:;case 131:;case 139:;case 140:return uf.to_workbook(a,t);case 123:if(n[1]===92&&n[2]===114&&n[3]===116)return so.to_workbook(a,t);break;case 10:;case 13:;case 32:return xm(a,t);case 137:if(n[1]===80&&n[2]===78&&n[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;}if(hf.indexOf(n[0])>-1&&n[2]<=12&&n[3]<=31)return uf.to_workbook(a,t);return Im(e,a,t,i)}function Dm(e,r){var t=r||{};t.type="file";return Nm(e,t)}function Fm(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return j(r.file,z.write(e,{type:w?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return z.write(e,r)}function Pm(e,r){var t=ce(r||{});var a=Tm(e,t);return Mm(a,t)}function Lm(e,r){var t=ce(r||{});var a=Em(e,t);return Mm(a,t)}function Mm(e,r){var t={};var a=w?"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?z.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(y(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return Fm(encrypt_agile(n,r.password),r);if(r.type==="file")return j(r.file,n);return r.type=="string"?Je(n):n}function Um(e,r){var t=r||{};var a=sg(e,t);return Fm(a,t)}function Bm(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return b.encode(qe(a));case"binary":return qe(a);case"string":return e;case"file":return j(r.file,a,"utf8");case"buffer":{if(w)return k(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return Bm(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Wm(e,r){switch(r.type){case"base64":return b.encode(e);case"binary":return e;case"string":return e;case"file":return j(r.file,e,"binary");case"buffer":{if(w)return k(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Hm(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var h=ht(o.s.r);var u=[];var d=[];var v=0,p=0;var g=Array.isArray(e);var m=o.s.r,b=0;var w={};if(g&&!e[m])e[m]=[];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]=pt(b);t=g?e[m][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=St(t,null,l);p=w[s]||0;if(!p)w[s]=1;else{do{f=s+"_"+p++}while(w[f]);w[s]=p;w[f]=1}i[b]=f;}}for(m=o.s.r+n;m<=o.e.r;++m){if((T[m]||{}).hidden)continue;var A=Ym(e,o,m,u,a,i,g,l);if(A.isempty===false||(a===1?l.blankrows!==false:!!l.blankrows))d[v++]=A.row}d.length=v;return d}var Jm=/"/g;function qm(e,r,t,a,n,i,s,f){var o=true;var l=[],c="",h=ht(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:St(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(Jm,'""')+'"';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(Jm,'""')+'"'}else c="";l.push(c)}if(f.blankrows===false&&o)return null;return l.join(s)}function Zm(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=Et(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 v=n.s.c;v<=n.e.c;++v)if(!(u[v]||{}).hidden)h[v]=pt(v);var p=0;for(var g=n.s.r;g<=n.e.r;++g){if((d[g]||{}).hidden)continue;c=qm(e,n,g,h,s,o,i,a);if(c==null){continue}if(a.strip)c=c.replace(l,"");if(c||a.blankrows!==false)t.push((p++?f:"")+c)}delete a.dense;return t.join("")}function Qm(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=Zm(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 eb(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=Et(e["!ref"]),i="",s=[],f;var o=[];var l=Array.isArray(e);for(f=n.s.c;f<=n.e.c;++f)s[f]=pt(f);for(var c=n.s.r;c<=n.e.r;++c){i=ht(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 rb(e,r,t){var a=t||{};var n=+!a.skipHeader;var i=e||{};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"?wt(a.origin):a.origin;s=o.r;f=o.c}}var l;var c={s:{c:0,r:0},e:{c:f,r:s+r.length-1+n}};if(i["!ref"]){var h=Et(i["!ref"]);c.e.c=Math.max(c.e.c,h.e.c);c.e.r=Math.max(c.e.r,h.e.r);if(s==-1){s=h.e.r+1;c.e.r=s+r.length-1+n}}else{if(s==-1){s=0;c.e.r=r.length-1+n}}var u=a.header||[],d=0;r.forEach(function(e,r){Y(e).forEach(function(t){if((d=u.indexOf(t))==-1)u[d=u.length]=t;var o=e[t];var c="z";var h="";var v=kt({c:f+d,r:s+r+n});l=ab(i,v);if(o&&typeof o==="object"&&!(o instanceof Date)){i[v]=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=ee(o)}h=a.dateNF||F._table[14]}else if(o===null&&a.nullError){c="e";o=0}if(!l)i[v]=l={t:c,v:o};else{l.t=c;l.v=o;delete l.w;delete l.R;if(h)l.z=h}if(h)l.z=h}})});c.e.c=Math.max(c.e.c,f+u.length-1);var v=ht(s);if(n)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 ib(){return{SheetNames:[],Sheets:{}}}function sb(e,r,t){if(!t)for(var a=1;a<=65535;++a,t=undefined)if(e.SheetNames.indexOf(t="Sheet"+a)==-1)break;if(!t||e.SheetNames.length>=65535)throw new Error("Too many worksheets");zv(t);if(e.SheetNames.indexOf(t)>=0)throw new Error("Worksheet with name |"+t+"| already exists!");e.SheetNames.push(t);e.Sheets[t]=r}function fb(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=nb(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 ob(e,r){e.z=r;return e}function lb(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function cb(e,r,t){return lb(e,"#"+r,t)}function hb(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function ub(e,r,t,a){var n=typeof r!="string"?r:Et(r);var i=typeof r=="string"?r:At(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=ab(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}}return e}var db={encode_col:pt,encode_row:ht,encode_cell:kt,encode_range:At,decode_col:vt,decode_row:ct,split_cell:bt,decode_cell:wt,decode_range:Tt,format_cell:St,sheet_add_aoa:_t,sheet_add_json:rb,sheet_add_dom:Og,aoa_to_sheet:xt,json_to_sheet:tb,table_to_sheet:Rg,table_to_book:Ig,sheet_to_csv:Zm,sheet_to_txt:Qm,sheet_to_json:Km,sheet_to_html:xg.from_sheet,sheet_to_formulae:eb,sheet_to_row_object_array:Km,sheet_get_cell:ab,book_new:ib,book_append_sheet:sb,book_set_sheet_visibility:fb,cell_set_number_format:ob,cell_set_hyperlink:lb,cell_set_internal_link:cb,cell_add_comment:hb,sheet_set_array_formula:ub,consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};var vb;function pb(e){vb=e}function gb(e,r){var t=vb();var a=r==null?{}:r;if(e==null||e["!ref"]==null){t.push(null);return t}var n=Et(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 v=n.s.c;v<=n.e.c;++v)if(!(u[v]||{}).hidden)h[v]=pt(v);var p=n.s.r;var g=false,m=0;t._read=function(){if(!g){g=true;return t.push("\ufeff")}while(p<=n.e.r){++p;if((d[p-1]||{}).hidden)continue;c=qm(e,n,p-1,h,s,o,i,a);if(c!=null){if(a.strip)c=c.replace(l,"");if(c||a.blankrows!==false)return t.push((m++?f:"")+c)}}return t.push(null)};return t}function mb(e,r){var t=vb();var a=r||{};var n=a.header!=null?a.header:xg.BEGIN;var i=a.footer!=null?a.footer:xg.END;t.push(n);var s=Tt(e["!ref"]);a.dense=Array.isArray(e);t.push(xg._preamble(e,s,a));var f=s.s.r;var o=false;t._read=function(){if(f>s.e.r){if(!o){o=true;t.push(""+i)}return t.push(null)}while(f<=s.e.r){t.push(xg._row(e,s,f,a));++f;break}};return t}function bb(e,r){var t=vb({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=Et(h);break;case"number":l=Et(e["!ref"]);l.s.r=h;break;default:l=h;}if(n>0)i=0;var u=ht(l.s.r);var d=[];var v=0;var p=Array.isArray(e);var g=l.s.r,m=0;var b={};if(p&&!e[g])e[g]=[];var w=c.skipHidden&&e["!cols"]||[];var k=c.skipHidden&&e["!rows"]||[];for(m=l.s.c;m<=l.e.c;++m){if((w[m]||{}).hidden)continue;d[m]=pt(m);a=p?e[g][m]:e[d[m]+u];switch(n){case 1:s[m]=m-l.s.c;break;case 2:s[m]=d[m];break;case 3:s[m]=c.header[m-l.s.c];break;default:if(a==null)a={w:"__EMPTY",t:"s"};o=f=St(a,null,c);v=b[f]||0;if(!v)b[f]=1;else{do{o=f+"_"+v++}while(b[o]);b[f]=v;b[o]=1}s[m]=o;}}g=l.s.r+i;t._read=function(){while(g<=l.e.r){if((k[g-1]||{}).hidden)continue;var r=Ym(e,l,g,d,n,s,p,c);++g;if(r.isempty===false||(n===1?c.blankrows!==false:!!c.blankrows)){t.push(r.row);return}}return t.push(null)};return t}var wb={to_json:bb,to_html:mb,to_csv:gb,set_readable:pb};if(typeof ig!=="undefined")e.parse_xlscfb=ig;e.parse_zip=wm;e.read=Nm;e.readFile=Dm;e.readFileSync=Dm;e.write=Vm;e.writeFile=jm;e.writeFileSync=jm;e.writeFileAsync=$m;e.utils=db;e.writeXLSX=zm;e.writeFileXLSX=Xm;e.SSF=F;if(typeof wb!=="undefined")e.stream=wb;if(typeof z!=="undefined")e.CFB=z;if(typeof require!=="undefined"){var kb=undefined;if((kb||{}).Readable)pb(kb.Readable)}}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){} +n=Buffer.allocUnsafe(2*a);s=0;for(i=0;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>p){p=2*r;g=Buffer.allocUnsafe(p)}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;np){p=4*r;g=Buffer.allocUnsafe(p)}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);g[s++]=a&255;g[s++]=a>>>8;g[s++]=t&255;g[s++]=t>>>8&255}}return g.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>p){p=4*t;g=Buffer.allocUnsafe(p)}for(var f=0;f>6);g[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);g[i++]=240+(n>>>18&7);g[i++]=144+(n>>>12&63);g[i++]=128+(n>>>6&63);g[i++]=128+(n&63)}else{g[i++]=224+(a>>12);g[i++]=128+(a>>6&63);g[i++]=128+(a&63)}}if(!r||r==="buf")return g.slice(0,i);if(r!=="arr")return g.slice(0,i).toString("binary");return[].slice.call(g,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(m=r[t])switch(m){case"utf8":if(h&&b){s=u(a,m);d=s.length;break}for(c=0;c>6);s[++d]=128+(f&63)}else if(f>=55296&&f<=57343){f-=55296;v=(b?a.charCodeAt(++c):a[++c].charCodeAt(0))-56320+(f<<10);s[d]=240+(v>>>18&7);s[++d]=144+(v>>>12&63);s[++d]=128+(v>>>6&63);s[++d]=128+(v&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,m);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=X(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 $(t,a){var n;if(n=f[t])return n(a);if(typeof a==="string")return $(t,a.split("").map(c));var i=a.length,s=new Array(i),o="",l=0,u=0,d=1,v=0,p=0;var g=e[t],m,b="";if(g&&(m=g.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[v++]=String.fromCharCode(p);s[v++]=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[v++]=String.fromCharCode(55296+(l>>10&1023));s[v++]=String.fromCharCode(56320+(l&1023))}else s[v++]=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[v++]=String.fromCharCode(55296+(l>>10&1023));s[v++]=String.fromCharCode(56320+(l&1023))}else s[v++]=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;C=(x&3)<<6|O;if(O<64)k.push(C)}T=$(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 v=function Yw(e){return String.fromCharCode(e)};var p=function Kw(e){return String.fromCharCode(e)};if(typeof a!=="undefined"){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};v=function Jw(e){if(r===1200)return String.fromCharCode(e);return a.utils.decode(r,[e&255,e>>8])[0]};p=function qw(e){return a.utils.decode(t,[e])[0]}}var g=null;var m=true;var b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function w(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+=b.charAt(i)+b.charAt(s)+b.charAt(f)+b.charAt(o)}return r}function k(e){var r="";var t=0,a=0,n=0,i=0,s=0,f=0,o=0;e=e.replace(/[^\w\+\/\=]/g,"");for(var l=0;l>4;r+=String.fromCharCode(t);f=b.indexOf(e.charAt(l++));a=(s&15)<<4|f>>2;if(f!==64){r+=String.fromCharCode(a)}o=b.indexOf(e.charAt(l++));n=(f&3)<<6|o;if(o!==64){r+=String.fromCharCode(n)}}return r}var T=function(){return typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node}();var A=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(){}}();function E(e){if(T)return Buffer.alloc?Buffer.alloc(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function C(e){if(T)return Buffer.allocUnsafe?Buffer.allocUnsafe(e):new Buffer(e);return typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var y=function Zw(e){if(T)return A(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function S(e){if(typeof ArrayBuffer==="undefined")return y(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 _(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=E(65535);a=65530}}r.push(n.slice(0,t));return R(r)}var N=/\u0000/g,D=/[\u0001-\u0006]/g;function F(e){var r="",t=e.length-1;while(t>=0)r+=e.charAt(t--);return r}function P(e,r){var t=""+e;return t.length>=r?t:wr("0",r-t.length)+t}function L(e,r){var t=""+e;return t.length>=r?t:wr(" ",r-t.length)+t}function M(e,r){var t=""+e;return t.length>=r?t:t+wr(" ",r-t.length)}function U(e,r){var t=""+Math.round(e);return t.length>=r?t:wr("0",r-t.length)+t}function B(e,r){var t=""+e;return t.length>=r?t:wr("0",r-t.length)+t}var W=Math.pow(2,32);function H(e,r){if(e>W||e<-W)return U(e,r);var t=Math.round(e);return B(t,r)}function z(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 V=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var G=[["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 X={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 Y={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 K={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 J(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 q(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=oe(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 Z=new Date(1899,11,31,0,0,0);var Q=Z.getTime();var ee=new Date(1900,2,1,0,0,0);function re(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=ee)t+=24*60*60*1e3;return(t-(Q+(e.getTimezoneOffset()-Z.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function te(e){return e.indexOf(".")==-1?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function ae(e){if(e.indexOf("E")==-1)return e;return e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}function ne(e){var r=e<0?12:11;var t=te(e.toFixed(12));if(t.length<=r)return t;t=e.toPrecision(10);if(t.length<=r)return t;return e.toExponential(5)}function ie(e){var r=te(e.toFixed(11));return r.length>(e<0?12:11)||r==="0"||r==="-0"?e.toPrecision(6):r}function se(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=ne(e);else if(r===10)t=e.toFixed(10).substr(0,12);else t=ie(e);return te(ae(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):se(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return Be(14,re(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}function oe(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function le(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 G[t.m-1][1];case 5:return G[t.m-1][0];default:return G[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:o=t.d;l=r.length;break;case 3:return V[t.q][0];default:return V[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 P(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=P(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?P(o,l):"";return c}function ce(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 he=/%/g;function ue(e,r,t){var a=r.replace(he,""),n=r.length-a.length;return Ie(e,a,t*Math.pow(10,2*n))+wr("%",n)}function de(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return Ie(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function ve(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"-"+ve(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 pe=/# (\?+)( ?)\/( ?)(\d+)/;function ge(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?wr(" ",e[1].length+1+e[4].length):L(s,e[1].length)+e[2]+"/"+e[3]+P(f,e[4].length))}function me(e,r,t){return t+(r===0?"":""+r)+wr(" ",e[1].length+2+e[4].length)}var be=/^#*0*\.([0#]+)/;var we=/\).*[0#]/;var ke=/\(###\) ###\\?-####/;function Te(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 Ae(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function Ee(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 Ce(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function ye(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function Se(e,r,t){if(e.charCodeAt(0)===40&&!r.match(we)){var a=r.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(t>=0)return Se("n",a,t);return"("+Se("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return de(e,r,t);if(r.indexOf("%")!==-1)return ue(e,r,t);if(r.indexOf("E")!==-1)return ve(r,t);if(r.charCodeAt(0)===36)return"$"+Se(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+H(o,r.length);if(r.match(/^[#?]+$/)){n=H(t,0);if(n==="0")n="";return n.length>r.length?n:Te(r.substr(0,r.length-n.length))+n}if(i=r.match(pe))return ge(i,o,l);if(r.match(/^#+0+$/))return l+H(o,r.length-r.indexOf("0"));if(i=r.match(be)){n=Ae(t,i[1].length).replace(/^([^\.]+)$/,"$1."+Te(i[1])).replace(/\.$/,"."+Te(i[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+wr("0",Te(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+Ae(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+ce(H(o,0));if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Se(e,r,-t):ce(""+(Math.floor(t)+Ce(t,i[1].length)))+"."+P(Ee(t,i[1].length),i[1].length)}if(i=r.match(/^#,#*,#0/))return Se(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=F(Se(e,r.replace(/[\\-]/g,""),t));s=0;return F(F(r.replace(/\\/g,"")).replace(/[0#]/g,function(e){return s=0)return Re("n",a,t);return"("+Re("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return _e(e,r,t);if(r.indexOf("%")!==-1)return xe(e,r,t);if(r.indexOf("E")!==-1)return Oe(r,t);if(r.charCodeAt(0)===36)return"$"+Re(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+P(o,r.length);if(r.match(/^[#?]+$/)){n=""+t;if(t===0)n="";return n.length>r.length?n:Te(r.substr(0,r.length-n.length))+n}if(i=r.match(pe))return me(i,o,l);if(r.match(/^#+0+$/))return l+P(o,r.length-r.indexOf("0"));if(i=r.match(be)){n=(""+t).replace(/^([^\.]+)$/,"$1."+Te(i[1])).replace(/\.$/,"."+Te(i[1]));n=n.replace(/\.(\d*)$/,function(e,r){return"."+r+wr("0",Te(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+ce(""+o);if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Re(e,r,-t):ce(""+t)+"."+wr("0",i[1].length)}if(i=r.match(/^#,#*,#0/))return Re(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=F(Re(e,r.replace(/[\\-]/g,""),t));s=0;return F(F(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 Pe(e,r,t,a){ +var n=[],i="",s=0,f="",o="t",l,c,h;var u="H";while(s=12?"P":"A";p.t="T";u="h";s+=3}else if(e.substr(s,5).toUpperCase()==="AM/PM"){if(l!=null)p.v=l.H>=12?"PM":"AM";p.t="T";s+=5;u="h"}else if(e.substr(s,5).toUpperCase()==="上午/下午"){if(l!=null)p.v=l.H>=12?"下午":"上午";p.t="T";s+=5;u="h"}else{p.t="t";++s}if(l==null&&p.t==="T")return"";n[n.length]=p;o=f;break;case"[":i=f;while(e.charAt(s++)!=="]"&&s-1){i=(i.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!Fe(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 g=0,m=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(g<1)g=1;break;case"s":if(b=n[s].v.match(/\.0+$/))m=Math.max(m,b[0].length-1);if(g<3)g=3;case"d":;case"y":;case"M":;case"e":o=n[s].t;break;case"m":if(o==="s"){n[s].t="M";if(g<2)g=2}break;case"X":break;case"Z":if(g<1&&n[s].v.match(/[Hh]/))g=1;if(g<2&&n[s].v.match(/[Mm]/))g=2;if(g<3&&n[s].v.match(/[Ss]/))g=3;}}switch(g){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=Ie("n",w,A)}else{A=r<0&&a>1?-r:r;E=Ie("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 C=n.length;for(s=0;s-1){C=s;break}var y=n.length;if(C===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";y=s}if(k>=0&&y=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;c=n[s].v.indexOf(".")>-1&&s===C?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";y=s}if(k>=0&&y-1&&s===C?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=Ie(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 Le=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function Me(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 Ue(e,r){var t=Ne(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(Le);var f=t[1].match(Le);return Me(r,s)?[a,t[0]]:Me(r,f)?[a,t[1]]:[a,t[s!=null&&f!=null?2:1]]}return[a,i]}function Be(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:X)[e];if(a==null)a=t.table&&t.table[Y[e]]||X[Y[e]];if(a==null)a=K[e]||"General";break;}if(z(a,0))return fe(r,t);if(r instanceof Date)r=re(r,t.date1904);var n=Ue(a,r);if(z(n[1]))return fe(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return Pe(n[1],r,t,n[0])}function We(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(X[t]==undefined){if(r<0)r=t;continue}if(X[t]==e){r=t;break}}if(r<0)r=391}X[r]=e;return r}function He(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)We(e[r],r)}function ze(){X=j()}var Ve={format:Be,load:We,_table:X,load_table:He,parse_date_code:q,is_date:Fe,get_table:function Qw(){return Ve._table=X}};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 je=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function Xe(e){var r=typeof e=="number"?X[e]:e;r=r.replace(je,"(\\d+)");return new RegExp("^"+r+"$")}function $e(e,r,t){var a=-1,n=-1,i=-1,s=-1,f=-1,o=-1;(r.match(je)||[]).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 Ye=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],v=n[9];var p=n[10],g=n[11],m=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]^m[e[k++]^a>>16&255]^g[e[k++]^a>>>24]^p[e[k++]]^v[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 Ke=function ek(){var e={};e.version="1.2.1";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){ca(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;}e.l=i;r[a]=s}return r}var f;function o(){return f||(f=undefined)}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 v=e.slice(0,512);ca(v,0);var g=c(v);t=g[0];switch(t){case 3:a=512;break;case 4:a=4096;break;case 0:if(g[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);ca(v,28)}var w=e.slice(0,a);h(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");o=v._R(4,"i");i=v._R(4,"i");for(var T=-1,A=0;A<109;++A){T=v._R(4,"i");if(T<0)break;l[A]=T}var E=u(e,a);p(o,i,E,a,l);var C=m(E,s,l,a);C[s].name="!Directory";if(n>0&&f!==U)C[f].name="!MiniFAT";C[l[0]].name="!FAT";C.fat_addrs=l;C.ssz=a;var y={},S=[],_=[],x=[];b(s,C,E,S,n,y,_,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=ta(t,s*4)}if(i.length===0)return ua(0);return R(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 o=0;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=ta(e[c],l)}return{nodes:i,data:It([s])}}function m(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 v=[];for(h=u;h>=0;){v[h]=true;s[h]=true;f[f.length]=h;o.push(e[h]);var p=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[p])break;h=ta(e[p],d);if(v[h])break}i[u]={nodes:f,data:It([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(m.size>=4096){m.storage="fat";if(r[m.start]===undefined)r[m.start]=g(t,m.start,r.fat_addrs,r.ssz);r[m.start].name=m.name;m.content=r[m.start].data.slice(0,m.size)}else{m.storage="minifat";if(m.size<0)m.size=0;else if(o!==U&&m.start!==U&&r[o]){m.content=v(m,r[o].data,(r[f]||{}).data)}}if(m.content)ca(m.content,0);i[d]=m;s.push(m)}}function S(e,r){return new Date((ra(e,r+4)/1e7*Math.pow(2,32)+ra(e,r)/1e7-11644473600)*1e3)}function _(e,r){o();return l(f.readFileSync(e),r)}function x(e,r){var t=r&&r.type;if(!t){if(T&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return _(e,r);case"base64":return l(y(k(e)),r);case"binary":return l(y(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;I(e)}function I(e){var r="Sh33tJ5";if(Ke.find(e,"/"+r))return;var t=ua(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);F(e)}function F(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;v.size=0;v.type=5}else if(p.slice(-1)=="/"){for(c=f+1;c=u.length?-1:c;for(c=f+1;c=u.length?-1:c;v.type=1}else{if(t(e.FullPaths[f+1]||"")==t(p))v.R=f+1;v.type=2}}}function P(e,r){var t=r||{};if(t.fileType=="mad")return He(e,t);F(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=ua(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;i=4096){n.l=c.start+1<<9;if(T&&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(T&&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 ve(e,r){var t=e.length,a=2*t>r?2*t:r+5,n=0;if(t>=r)return e;if(T){var i=C(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-q[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-Z[l]);n+=d}for(var v=0;v>8-v;for(var p=(1<<7-v)-1;p>=0;--p)Ce[d|p<>>=3){case 16:i=3+ne(e,r);r+=2;d=g[g.length-1];while(i-- >0)g.push(d);break;case 17:i=3+ie(e,r);r+=3;while(i-- >0)g.push(0);break;case 18:i=11+oe(e,r);r+=7;while(i-- >0)g.push(0);break;default:g.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=ye;o=Se}for(;;){if(!r&&s>>1==1?me[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+q[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 v=h<4?0:h-2>>1;var p=Z[h];if(v>0){p+=le(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=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;ca(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 p=h>=u*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&&Ke.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)Ke.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=Ke.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 dr=new Date("2017-02-19T19:06:09.000Z");var vr=isNaN(dr.getFullYear())?new Date("2/19/17"):dr;var pr=vr.getFullYear()==2017;function gr(e,r){var t=new Date(e);if(pr){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(vr.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 mr(e,r){if(T&&Buffer.isBuffer(e)){if(r){if(e[0]==255&&e[1]==254)return ct(e.slice(2).toString("utf16le"));if(e[1]==254&&e[2]==255)return ct(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 ct(new TextDecoder("utf-16le").decode(e.slice(2)));if(e[0]==254&&e[1]==255)return ct(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 br(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]=br(e[t]);return r}function wr(e,r){var t="";while(t.length3&&Tr.indexOf(s)==-1)return t}else if(s.match(/[a-z]/))return t;if(a<0||a>8099)return t;if((n>0||i>1)&&a!=101)return r;if(e.match(/[^-0-9:,\/\\]/))return t;return r}var Er=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 Br=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm,Wr=/<[^>]*>/g;var Hr=Mr.match(Br)?Br:Wr;var zr=/<\w*:/,Vr=/<(\/?)\w+:/;function Gr(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(Ur),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 jr(e){return e.replace(Vr,"<$1")}var Xr={""":'"',"'":"'",">":">","<":"<","&":"&"};var $r=ar(Xr);var Yr=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;return 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))}}();var Kr=/[&<>'"]/g,Jr=/[\u0000-\u0008\u000b-\u001f]/g;function qr(e){var r=e+"";return r.replace(Kr,function(e){return $r[e]}).replace(Jr,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function Zr(e){return qr(e).replace(/ /g,"_x0020_")}var Qr=/[\u0000-\u001f]/g;function et(e){var r=e+"";return r.replace(Kr,function(e){return $r[e]}).replace(/\n/g,"
").replace(Qr,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function rt(e){var r=e+"";return r.replace(Kr,function(e){return $r[e]}).replace(Qr,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var tt=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 at(e){return e.replace(/(\r\n|[\r\n])/g," ")}function nt(e){switch(e){case 1:;case true:;case"1":;case"true":;case"TRUE":return true;default:return false;}}function it(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 st(e){var r=E(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 ft(e){return A(e,"binary").toString("utf8")}var ot="foo bar baz☃🍣";var lt=T&&(ft(ot)==it(ot)&&ft||st(ot)==it(ot)&&st)||it;var ct=T?function(e){return A(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 ht=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 ut=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 vt=/<\/?(?:vt:)?variant>/g,pt=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function wt(e){return rr(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function kt(e,r,t){return"<"+e+(t!=null?wt(t):"")+(r!=null?(r.match(mt)?' xml:space="preserve"':"")+">"+r+""}function Tt(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function At(e,r){switch(typeof e){case"string":var t=kt("vt:lpwstr",qr(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return kt((e|0)==e?"vt:i4":"vt:r8",qr(String(e)));case"boolean":return kt("vt:bool",e?"true":"false");}if(e instanceof Date)return kt("vt:filetime",Tt(e));throw new Error("Unable to serialize "+e)}function Et(e){if(T&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return lt(_(O(e)));throw new Error("Bad input format: expected Buffer or string")}var Ct=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/][^>]*)?>/gm;var yt={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 St=["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 _t={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 xt(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 Ot(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 Rt=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:A(e)})):Rt(e)}:Rt;var Nt=function(e,r,t){var a=[];for(var n=r;n0?Mt(e,r+4,r+4+t-1):""};var Bt=Ut;var Wt=function(e,r){var t=ra(e,r);return t>0?Mt(e,r+4,r+4+t-1):""};var Ht=Wt;var zt=function(e,r){var t=2*ra(e,r);return t>0?Mt(e,r+4,r+4+t-1):""};var Vt=zt;var Gt=function tk(e,r){var t=ra(e,r);return t>0?Dt(e,r+4,r+4+t):""};var jt=Gt;var Xt=function(e,r){var t=ra(e,r);return t>0?Mt(e,r+4,r+4+t):""};var $t=Xt;var Yt=function(e,r){return xt(e,r)};var Kt=Yt;var Jt=function ak(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(T){Bt=function nk(e,r){if(!Buffer.isBuffer(e))return Ut(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Ht=function ik(e,r){if(!Buffer.isBuffer(e))return Wt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Vt=function sk(e,r){if(!Buffer.isBuffer(e))return zt(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};jt=function fk(e,r){if(!Buffer.isBuffer(e))return Gt(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};$t=function ok(e,r){if(!Buffer.isBuffer(e))return Xt(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};Kt=function lk(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return Yt(e,r)};Jt=function ck(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function qt(){Dt=function(e,r,t){return a.utils.decode(1200,e.slice(r,t)).replace(N,"")};Mt=function(e,r,t){return a.utils.decode(65001,e.slice(r,t))};Bt=function(e,r){var n=ra(e,r);return n>0?a.utils.decode(t,e.slice(r+4,r+4+n-1)):""};Ht=function(e,t){var n=ra(e,t);return n>0?a.utils.decode(r,e.slice(t+4,t+4+n-1)):""};Vt=function(e,r){var t=2*ra(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};jt=function(e,r){var t=ra(e,r);return t>0?a.utils.decode(1200,e.slice(r+4,r+4+t)):""};$t=function(e,r){var t=ra(e,r);return t>0?a.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof a!=="undefined")qt();var Zt=function(e,r){return e[r]};var Qt=function(e,r){return e[r+1]*(1<<8)+e[r]};var ea=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var ra=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var ta=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var aa=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function na(e,t){var n="",i,s,f=[],o,l,c,h;switch(t){case"dbcs":h=this.l;if(T&&Buffer.isBuffer(this))n=this.slice(this.l,this.l+2*e).toString("utf16le");else for(c=0;c0?ta:aa)(this,this.l);this.l+=4;return i}else{s=ra(this,this.l);this.l+=4}return s;case 8:;case-8:if(t==="f"){if(e==8)s=Kt(this,this.l);else s=Kt([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=Pt(this,this.l,e);break;};}this.l+=e;return n}var ia=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 sa=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 fa=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function oa(e,r,n){var i=0,s=0;if(n==="dbcs"){for(s=0;s!=r.length;++s)fa(this,r.charCodeAt(s),this.l+2*s);i=2*r.length}else if(n==="sbcs"){if(typeof a!=="undefined"&&t==874){for(s=0;s!=r.length;++s){var f=a.utils.encode(t,r.charAt(s));this[this.l+s]=f[0]}}else{r=r.replace(/[^\x00-\x7F]/g,"_");for(s=0;s!=r.length;++s)this[this.l+s]=r.charCodeAt(s)&255}i=r.length}else if(n==="hex"){for(;s>8}while(this.l>>=8;this[this.l+1]=r&255;break;case 3:i=3;this[this.l]=r&255;r>>>=8;this[this.l+1]=r&255;r>>>=8;this[this.l+2]=r&255;break;case 4:i=4;ia(this,r,this.l);break;case 8:i=8;if(n==="f"){Ot(this,r,this.l);break};case 16:break;case-4:i=4;sa(this,r,this.l);break;}this.l+=i;return this}function la(e,r){var t=Pt(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function ca(e,r){e.l=r;e._R=na;e.chk=la;e._W=oa}function ha(e,r){e.l+=r}function ua(e){var r=E(e);ca(r,0);return r}function da(e,r,t){if(!e)return;var a,n,i;ca(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&&Jt(t))e.push(t)}function ga(e,r,t){var a=br(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 ma(e,r,t){var a=br(e);a.s=ga(a.s,r.s,t);a.e=ga(a.e,r.s,t);return a}function ba(e,r){if(e.cRel&&e.c<0){e=br(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=br(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=Ra(e);if(!e.cRel&&e.cRel!=null)t=Sa(t);if(!e.rRel&&e.rRel!=null)t=Aa(t);return t}function wa(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?"":"$")+ya(e.s.c)+":"+(e.e.cRel?"":"$")+ya(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?"":"$")+Ta(e.s.r)+":"+(e.e.rRel?"":"$")+Ta(e.e.r)}}return ba(e.s,r.biff)+":"+ba(e.e,r.biff)}function ka(e){return parseInt(Ea(e),10)-1}function Ta(e){return""+(e+1)}function Aa(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function Ea(e){return e.replace(/\$(\d+)$/,"$1")}function Ca(e){var r=_a(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function ya(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 Sa(e){return e.replace(/^([A-Z])/,"$$$1")}function _a(e){return e.replace(/^\$([A-Z])/,"$1")}function xa(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function Oa(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 Ra(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 Ia(e){var r=e.indexOf(":");if(r==-1)return{s:Oa(e),e:Oa(e)};return{s:Oa(e.slice(0,r)),e:Oa(e.slice(r+1))}}function Na(e,r){if(typeof r==="undefined"||typeof r==="number"){return Na(e.s,e.e)}if(typeof e!=="string")e=Ra(e);if(typeof r!=="string")r=Ra(r);return e==r?e:e+":"+r}function Da(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 Fa(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=Be(e.z,t?fr(r):r)}catch(a){}try{return e.w=Be((e.XF||{}).numFmtId||(t?14:0),t?fr(r):r)}catch(a){return""+r}}function Pa(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 Gn[e.v]||e.v;if(r==undefined)return Fa(e,e.v);return Fa(e,r)}function La(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function Ma(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"?Oa(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=Da(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 v=s+h,p=f+u;if(l.s.r>v)l.s.r=v;if(l.s.c>p)l.s.c=p;if(l.e.r0)r._W(0,e,"dbcs");return t?r.slice(0,r.l):r}function Va(e){return{ich:e._R(2),ifnt:e._R(2)}}function Ga(e,r){if(!r)r=ua(4);r._W(2,e.ich||0);r._W(2,e.ifnt||0);return r}function ja(e,r){var t=e.l;var a=e._R(1);var n=Ha(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(Va(e));s.r=i}else s.r=[{ich:0,ifnt:0}];e.l=t+r;return s}function Xa(e,r){var t=false;if(r==null){t=true;r=ua(15+4*e.t.length)}r._W(1,0);za(e.t,r);return t?r.slice(0,r.l):r}var $a=ja;function Ya(e,r){var t=false;if(r==null){t=true;r=ua(23+4*e.t.length)}r._W(1,1);za(e.t,r);r._W(4,1);Ga({ich:0,ifnt:0},r);return t?r.slice(0,r.l):r}function Ka(e){var r=e._R(4);var t=e._R(2);t+=e._R(1)<<16;e.l++;return{c:r,iStyleRef:t}}function Ja(e,r){if(r==null)r=ua(8);r._W(-4,e.c);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}function qa(e){var r=e._R(2);r+=e._R(1)<<16;e.l++;return{c:-1,iStyleRef:r}}function Za(e,r){if(r==null)r=ua(4);r._W(3,e.iStyleRef||e.s);r._W(1,0);return r}var Qa=Ha;var en=za;function rn(e){var r=e._R(4);return r===0||r===4294967295?"":e._R(r,"dbcs")}function tn(e,r){var t=false;if(r==null){t=true;r=ua(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 an=Ha;var nn=rn;var sn=tn;function fn(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?Kt([0,0,0,0,r[0]&252,r[1],r[2],r[3]],0):ta(r,0)>>2;return t?n/100:n}function on(e,r){if(r==null)r=ua(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 ln(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 cn(e,r){if(!r)r=ua(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 hn=ln;var un=cn;function dn(e){if(e.length-e.l<8)throw"XLS Xnum Buffer underflow";return e._R(8,"f")}function vn(e,r){return(r||ua(8))._W(8,e,"f")}function pn(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=Vn[n];if(l)r.rgb=bl(l);break;case 2:r.rgb=bl([s,f,o]);break;case 3:r.theme=n;break;}if(i!=0)r.tint=i>0?i/32767:i/32768;return r}function gn(e,r){if(!r)r=ua(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 mn(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 bn(e,r){if(!r)r=ua(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 wn(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 kn(e){return wn(e,1)}function Tn(e){return wn(e,2)}var An=2;var En=3;var Cn=11;var yn=12;var Sn=19;var _n=30;var xn=64;var On=65;var Rn=71;var In=4096;var Nn=4108;var Dn=4126;var Fn=80;var Pn=81;var Ln=[Fn,Pn];var Mn={1:{n:"CodePage",t:An},2:{n:"Category",t:Fn},3:{n:"PresentationFormat",t:Fn},4:{n:"ByteCount",t:En},5:{n:"LineCount",t:En},6:{n:"ParagraphCount",t:En},7:{n:"SlideCount",t:En},8:{n:"NoteCount",t:En},9:{n:"HiddenCount",t:En},10:{n:"MultimediaClipCount",t:En},11:{n:"ScaleCrop",t:Cn},12:{n:"HeadingPairs",t:Nn},13:{n:"TitlesOfParts",t:Dn},14:{n:"Manager",t:Fn},15:{n:"Company",t:Fn},16:{n:"LinksUpToDate",t:Cn},17:{n:"CharacterCount",t:En},19:{n:"SharedDoc",t:Cn},22:{n:"HyperlinksChanged",t:Cn},23:{n:"AppVersion",t:En,p:"version"},24:{n:"DigSig",t:On},26:{n:"ContentType",t:Fn},27:{n:"ContentStatus",t:Fn},28:{n:"Language",t:Fn},29:{n:"Version",t:Fn},255:{},2147483648:{n:"Locale",t:Sn},2147483651:{n:"Behavior",t:Sn},1919054434:{}};var Un={1:{n:"CodePage",t:An},2:{n:"Title",t:Fn},3:{n:"Subject",t:Fn},4:{n:"Author",t:Fn},5:{n:"Keywords",t:Fn},6:{n:"Comments",t:Fn},7:{n:"Template",t:Fn},8:{n:"LastAuthor",t:Fn},9:{n:"RevNumber",t:Fn},10:{n:"EditTime",t:xn},11:{n:"LastPrinted",t:xn},12:{n:"CreatedDate",t:xn},13:{n:"ModifiedDate",t:xn},14:{n:"PageCount",t:En},15:{n:"WordCount",t:En},16:{n:"CharCount",t:En},17:{n:"Thumbnail",t:Rn},18:{n:"Application",t:Fn},19:{n:"DocSecurity",t:En},255:{},2147483648:{n:"Locale",t:Sn},2147483651:{n:"Behavior",t:Sn},1919054434:{}};var Bn={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 Wn=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];function Hn(e){return e.map(function(e){return[e>>16&255,e>>8&255,e&255]})}var zn=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,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var Vn=br(zn);var Gn={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var jn={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255};var Xn={"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 $n={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 Yn(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function Kn(e){var r=Yn();if(!e||!e.match)return r;var t={};(e.match(Hr)||[]).forEach(function(e){var a=Gr(e);switch(a[0].replace(zr,"<")){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 Jn(e,r){var t=ir(Xn);var a=[],n;a[a.length]=Mr;a[a.length]=kt("Types",null,{xmlns:yt.CT,"xmlns:xsd":yt.xsd,"xmlns:xsi":yt.xsi});a=a.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 kt("Default",null,{Extension:e[0],ContentType:e[1]})}));var i=function(t){if(e[t]&&e[t].length>0){n=e[t][0];a[a.length]=kt("Override",null,{PartName:(n[0]=="/"?"":"/")+n,ContentType:$n[t][r.bookType]||$n[t]["xlsx"]})}};var s=function(t){(e[t]||[]).forEach(function(e){a[a.length]=kt("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:$n[t][r.bookType]||$n[t]["xlsx"]})})};var f=function(r){(e[r]||[]).forEach(function(e){a[a.length]=kt("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:t[r][0]})})};i("workbooks");s("sheets");s("charts");f("themes");["strs","styles"].forEach(i);["coreprops","extprops","custprops"].forEach(f);f("vba");f("comments");f("threadedcomments");f("drawings");s("metadata");f("people");if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var qn={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",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function Zn(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function Qn(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Hr)||[]).forEach(function(e){var n=Gr(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function ri(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([qn.HLINK,qn.XPATH,qn.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 ti="application/vnd.oasis.opendocument.spreadsheet";function ai(e,r){var t=Et(e);var a;var n;while(a=Ct.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Gr(a[0],false);if(n.path=="/"&&n.type!==ti)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 ni(e){var r=[Mr];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function ii(e,r,t){return[' \n',' \n'," \n"].join("")}function si(e,r){return[' \n',' \n'," \n"].join("")}function fi(e){var r=[Mr];r.push('\n');for(var t=0;t!=e.length;++t){r.push(ii(e[t][0],e[t][1]));r.push(si("",e[t][0]))}r.push(ii("","Document","pkg"));r.push("");return r.join("")}function oi(){return'Sheet'+"JS "+e.version+""}var li=[["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 ci=function(){var e=new Array(li.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function hi(e){var r={};e=lt(e);for(var t=0;t0)r[a[1]]=Yr(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=gr(r[a[1]])}return r}function ui(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=qr(r);a[a.length]=t?kt(e,r,t):bt(e,r)}function di(e,r){var t=r||{};var a=[Mr,kt("cp:coreProperties",null,{"xmlns:cp":yt.CORE_PROPS,"xmlns:dc":yt.dc,"xmlns:dcterms":yt.dcterms,"xmlns:dcmitype":yt.dcmitype,"xmlns:xsi":yt.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)ui("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:Tt(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)ui("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:Tt(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var i=0;i!=li.length;++i){var s=li[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)ui(s[0],f,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var vi=[["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 pi=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function gi(e,r,t,a){var n=[];if(typeof e=="string")n=gt(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 mi(e,r,t){var a={};if(!r)r={};e=lt(e);vi.forEach(function(t){var n=(e.match(ht(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=Yr(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)gi(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function bi(e){var r=[],t=kt;if(!e)e={};e.Application="SheetJS";r[r.length]=Mr;r[r.length]=kt("Properties",null,{xmlns:yt.EXT_PROPS,"xmlns:vt":yt.vt});vi.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=qr(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""+qr(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var wi=/<[^>]+>[^<]*/g;function ki(e,r){var t={},a="";var n=e.match(wi);if(n)for(var i=0;i!=n.length;++i){var s=n[i],f=Gr(s);switch(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]=Yr(c);break;case"bool":t[a]=nt(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]=gr(c);break;case"cy":;case"error":t[a]=Yr(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 Ai={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 Ei;function Ci(e,r,t){if(!Ei)Ei=ar(Ai);r=Ei[r]||r;e[r]=t}function yi(e,r){var t=[];rr(Ai).map(function(e){for(var r=0;r'+n.join("")+""}function _i(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 xi(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=ua(8);s._W(4,a);s._W(4,n);return s}function Oi(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 Ri(e,r,t){var a=e._R(0,"lpwstr");if(t)e.l+=4-(a.length+1&3)&3;return a}function Ii(e,r,t){if(r===31)return Ri(e);return Oi(e,r,t)}function Ni(e,r,t){return Ii(e,r,t===false?0:4)}function Di(e,r){if(!r)throw new Error("VtUnalignedString must have positive length");return Ii(e,r,0)}function Fi(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(N,"");if(e.l-n&2)e.l+=2}return t}function Pi(e){var r=e._R(4);var t=[];for(var a=0;a!=r;++a)t[a]=e._R(0,"lpstr-cp").replace(N,"");return t}function Li(e){var r=e.l;var t=Hi(e,Pn);if(e[e.l]==0&&e[e.l+1]==0&&e.l-r&2)e.l+=2;var a=Hi(e,En);return[t,a]}function Mi(e){var r=e._R(4);var t=[];for(var a=0;a>2+1<<2;return a}function Bi(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 Wi(e){var r={};r.Size=e._R(4);e.l+=r.Size+3-(r.Size-1)%4;return r}function Hi(e,r,t){var a=e._R(2),n,i=t||{};e.l+=2;if(r!==yn)if(a!==r&&Ln.indexOf(r)===-1&&!((r&65534)==4126&&(a&65534)==4126))throw new Error("Expected type "+r+" saw "+a);switch(r===yn?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 Oi(e,a,4).replace(N,"");case 31:return Ri(e);case 64:return _i(e);case 65:return Bi(e);case 71:return Wi(e);case 80:return Ni(e,a,!i.raw).replace(N,"");case 81:return Di(e,a).replace(N,"");case 4108:return Mi(e);case 4126:;case 4127:return a==4127?Fi(e):Pi(e);default:throw new Error("TypedPropertyValue unrecognized type "+r+" "+a);}}function zi(e,r){var t=ua(4),a=ua(4);t._W(4,e==80?31:e);switch(e){case 3:a._W(-4,r);break;case 5:a=ua(8);a._W(8,r,"f");break;case 11:a._W(4,r?1:0);break;case 64:a=xi(r);break;case 31:;case 80:a=ua(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 R([t,a])}function Vi(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 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){var p=r[i[s][0]];d[p.n]=Hi(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:o(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=Hi(e,An);o(f);if(l!==-1){var g=e.l;e.l=i[l][1];c=Ui(e,f);e.l=g}}else if(i[s][0]===0){if(f===0){l=s;e.l=i[s+1][1];continue}c=Ui(e,f)}else{var m=c[i[s][0]];var b;switch(e[e.l]){case 65:e.l+=4;b=Bi(e);break;case 30:e.l+=4;b=Ni(e,e[e.l-4]).replace(/\u0000+$/,"");break;case 31:e.l+=4;b=Ni(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=Zi(e,4);break;case 64:e.l+=4;b=gr(_i(e));break;default:throw new Error("unparsed value: "+e[e.l]);}d[m]=b}}}e.l=t+a;return d}var Gi=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];function ji(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 Xi(e,r,t){var a=ua(8),n=[],i=[];var s=8,f=0;var o=ua(8),l=ua(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=ua(8);l._W(4,0);n.unshift(l);var c=[ua(4)];c[0]._W(4,e.length);for(f=0;f-1||pi.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 v=t[d];if(v.p=="version"&&typeof u=="string"){var p=u.split(".");u=(+p[0]<<16)+(+p[1]||0)}o=zi(v.t,u)}else{var g=ji(u);if(g==-1){g=31;u=String(u)}o=zi(g,u)}i.push(o);l=ua(8);l._W(4,!r?2+f:d);n.push(l);s+=8+o.length}var m=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 ss(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 fs(e){var r=e.t||"",t=1;var a=ua(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=ua(2*r.length);n._W(2*r.length,r,"utf16le");var i=[a,n];return R(i)}function os(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 ls(e,r,t){var a=e._R(t&&t.biff==2?1:2);if(a===0){e.l++;return""}return os(e,a,t)}function cs(e,r,t){if(t.biff>5)return ls(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 hs(e,r,t){if(!t)t=ua(3+2*e.length);t._W(2,e.length);t._W(1,1);t._W(31,e,"utf16le");return t}function us(e){var r=e._R(1);e.l++;var t=e._R(2);e.l+=2;return[r,t]}function ds(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(N,"");if(a)e.l+=24;return n}function vs(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(N,"");return t+s}function ps(e,r){var t=e._R(16);r-=16;switch(t){case"e0c9ea79f9bace118c8200aa004ba90b":return ds(e,r);case"0303000000000000c000000000000046":return vs(e,r);default:throw new Error("Unsupported Moniker "+t);}}function gs(e){var r=e._R(4);var t=r>0?e._R(r,"utf16le").replace(N,""):"";return t}function ms(e,r){if(!r)r=ua(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 _s(e){var r=e._R(2);var t=fn(e);return[r,t]}function xs(e,r,t){e.l+=4;r-=4;var a=e.l+r;var n=is(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 Os(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 Rs(e,r){if(!r)r=ua(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 Is(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 Ns=Is;function Ds(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 Fs(e){var r={};e.l+=4;e.l+=16;r.fSharedNote=e._R(2);e.l+=4;return r}function Ps(e){var r={};e.l+=4;e.cf=e._R(2);return r}function Ls(e){e.l+=2;e.l+=e._R(2)}var Ms={0:Ls,4:Ls,5:Ls,6:Ls,7:Ps,8:Ls,9:Ls,10:Ls,11:Ls,12:Ls,13:Fs,14:Ls,15:Ls,16:Ls,17:Ls,18:Ls,19:Ls,20:Ls,21:Ds};function Us(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 Ws(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=ua(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 Hs(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=cs(e,0,t);e._R(r+a-e.l);return n}function Vs(e,r){var t=!r||r.biff==8;var a=ua(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=ua(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 $s(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 ef(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 rf(){var e=ua(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 tf(e,r,t){if(t&&t.biff>=2&&t.biff<5)return{};var a=e._R(2);return{RTL:a&64}}function af(e){var r=ua(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 nf(){}function sf(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=is(e,0,t);return a}function ff(e,r){var t=e.name||"Arial";var a=r&&r.biff==5,n=a?15+t.length:16+2*t.length;var i=ua(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 of(e){var r=As(e);r.isst=e._R(4);return r}function lf(e,r,t,a){var n=ua(10);Es(e,r,a,n);n._W(4,t);return n}function cf(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=e.l+r;var n=As(e,6);if(t.biff==2)e.l++;var i=ls(e,a-e.l,t);n.val=i;return n}function hf(e,r,t,a,n){var i=!n||n.biff==8;var s=ua(6+2+ +i+(1+i)*t.length);Es(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 uf(e,r,t){var a=e._R(2);var n=cs(e,0,t);return[a,n]}function df(e,r,t,a){var n=t&&t.biff==5;if(!a)a=ua(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 vf=cs;function pf(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 gf(e,r){var t=r.biff==8||!r.biff?4:2;var a=ua(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 mf(e){var r=e._R(2),t=e._R(2);var a=_s(e);return{r:r,c:t,ixfe:a[0],rknum:a[1]}}function bf(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 Tf(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=kf(e,r,a.fStyle,t);return a}function Af(e,r,t,a){var n=t&&t.biff==5;if(!a)a=ua(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 Ef(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 Cf(e){var r=ua(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 yf(e,r,t){var a=As(e,6);if(t.biff==2||r==9)++e.l;var n=as(e,2);a.val=n;a.t=n===true||n===false?"b":"e";return a}function Sf(e,r,t,a,n,i){var s=ua(8);Es(e,r,a,s);ns(t,i,s);return s}function _f(e,r,t){if(t.biffguess&&t.biff==2)t.biff=5;var a=As(e,6);var n=dn(e,8);a.val=n;return a}function xf(e,r,t,a){var n=ua(14);Es(e,r,a,n);vn(t,n);return n}var Of=ys;function Rf(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=os(e,i);var f=[];while(a>e.l)f.push(ls(e));return[i,n,s,f]}function If(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=xs(e,r-2,t);i.body=n||e._R(r-2);if(typeof n==="string")i.Name=n;return i}var Nf=["_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"];function Df(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=os(e,s,t);if(n&32)l=Nf[l.charCodeAt(0)];var c=a-e.l;if(t&&t.biff==2)--c;var h=a==e.l||f===0||!(c>0)?[]:cd(e,c,t,f);return{chKey:i,Name:l,itab:o,rgce:h}}function Ff(e,r,t){if(t.biff<8)return Pf(e,r,t);var a=[],n=e.l+r,i=e._R(t.biff>8?4:2);while(i--!==0)a.push(Ss(e,t.biff>8?12:6,t));if(e.l!=n)throw new Error("Bad ExternSheet: "+e.l+" != "+n);return a}function Pf(e,r,t){if(e[e.l+1]==3)e[e.l]++;var a=is(e,r,t);return a.charCodeAt(0)==3?a.slice(1):a}function Lf(e,r,t){if(t.biff<8){e.l+=r;return}var a=e._R(2);var n=e._R(2);var i=os(e,a,t);var s=os(e,n,t);return[i,s]}function Mf(e,r,t){var a=Is(e,6);e.l++;var n=e._R(1);r-=8;return[hd(e,r,t),n,a]}function Uf(e,r,t){var a=Ns(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,od(e,r,t,a)]}function Bf(e){var r=e._R(4)!==0;var t=e._R(4)!==0;var a=e._R(4);return[r,t,a]}function Wf(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=cs(e,0,t);if(t.biff<8)e._R(1);return[{r:a,c:n},f,s,i]}function Hf(e,r,t){return Wf(e,r,t)}function zf(e,r){var t=[];var a=e._R(2);while(a--)t.push(Os(e,r));return t}function Vf(e){var r=ua(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 Yf(e,r){var t=Os(e,8);e.l+=16;var a=bs(e,r-24);return[t,a]}function Kf(e){var r=ua(24);var t=Oa(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 R([r,ws(e[1])])}function Jf(e,r){e._R(2);var t=Os(e,8);var a=e._R((r-10)/2,"dbcs-cont");a=a.replace(N,"");return[t,a]}function qf(e){var r=e[1].Tooltip;var t=ua(10+2*(r.length+1));t._W(2,2048);var a=Oa(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(Ts(e,8));return t}function ro(e){var r=e._R(2);var t=[];while(r-- >0)t.push(Ts(e,8));return t}function to(e){e.l+=2;var r={cxfs:0,crc:0};r.cxfs=e._R(2);r.crc=e._R(4);return r}function ao(e,r,t){if(!t.cellStyles)return ha(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 no(e,r){var t=ua(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 io(e,r){var t={};if(r<32)return t;e.l+=16;t.header=dn(e,8);t.footer=dn(e,8);e.l+=2;return t}function so(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 fo(e){var r=ua(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 v=[],p={};var g=Math.min(i.length,s==2?521:h-10-(o?264:0));var m=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!=v.length;++w){var T=i.slice(i.l,i.l+v[w].len);i.l+=v[w].len;ca(T,0);var A=a.utils.decode(d,T);switch(v[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?T._R(-4,"i")^2147483648:T._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):T._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(T._R(-8,"f")-621356832e5);break;case"T":n[b][w]=new Date((T._R(4)-2440588)*864e5+T._R(4));break;case"Y":n[b][w]=T._R(4,"i")/1e4+T._R(4,"i")/1e4*Math.pow(2,32);break;case"O":n[b][w]=-T._R(-8,"f");break;case"B":if(o&&v[w].len==8){n[b][w]=T._R(8,"f");break};case"G":;case"P":T.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)o(+n.codepage);if(n.type=="string")throw new Error("Cannot write DBF to JS string");var i=va();var s=Aw(e,{header:1,raw:true,cellDates:true});var l=s[0],c=s.slice(1),h=e["!cols"]||[];var u=0,d=0,v=0,p=1;for(u=0;u250)A=250;T=((h[u]||{}).DBF||{}).type;if(T=="C"){if(h[u].DBF.len>A)A=h[u].DBF.len}if(k=="B"&&T=="N"){k="N";w[u]=h[u].DBF.dec;A=h[u].DBF.len}b[u]=k=="C"||T=="N"?A:f[k]||0;p+=b[u];m[u]=k}var C=i.next(32);C._W(4,318902576);C._W(4,c.length);C._W(2,296+32*v);C._W(2,p);for(u=0;u<4;++u)C._W(4,0);C._W(4,0|(+r[t]||3)<<8);for(u=0,d=0;u":190,"?":191,"{":223};var r=new RegExp("N("+rr(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(k(e),r);case"binary":return s(e,r);case"buffer":return s(T&&Buffer.isBuffer(e)?e.toString("binary"):_(e),r);case"array":return s(mr(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 v=null;var p={},g=[],m=[],b=[];var w=0,k;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 A=T.replace(/;;/g,"\0").split(";").map(function(e){return e.replace(/\u0000/g,";")});var E=A[0],C;if(T.length>0)switch(E){case"ID":break;case"E":break;case"B":break;case"O":break;case"W":break;case"P":if(A[1].charAt(0)=="P")d.push(T.slice(3).replace(/;;/g,";"));break;case"C":var y=false,S=false,_=false,x=false,O=-1,R=-1;for(h=1;h-1&&u[O][R];if(!N||!N[1])throw new Error("SYLK shared formula cannot find base");u[f][l][1]=Oh(N[1],{r:f-O,c:l-R})}break;case"F":var D=0;for(h=1;h0){g[f].hpt=w;g[f].hpx=Pl(w)}else if(w===0)g[f].hidden=true;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+T);}if(D<1)v=null;break;default:if(i&&i.WTF)throw new Error("SYLK bad record "+T);}}if(g.length>0)p["!rows"]=g;if(m.length>0)p["!cols"]=m;if(i&&i.sheetRows)u=u.slice(0,i.sheetRows);return[u,p]}function f(e,r){var t=i(e,r);var a=t[0],n=t[1];var s=Ua(a,r);rr(n).forEach(function(e){s[e]=n[e]});return s}function l(e,r){return La(f(e,r),r)}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"+xh(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 h(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=Sl(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=_l(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*Fl(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function d(e,r){var t=["ID;PWXL;N;E"],a=[];var n=Da(e["!ref"]),i;var s=Array.isArray(e);var f="\r\n";t.push("P;PGeneral");t.push("F;P0;DG0G8;M255");if(e["!cols"])h(t,e["!cols"]);if(e["!rows"])u(t,e["!rows"]);t.push("B;Y"+(n.e.r-n.s.r+1)+";X"+(n.e.c-n.s.c+1)+";D"+[n.s.c,n.s.r,n.e.c,n.e.r].join(" "));for(var o=n.s.r;o<=n.e.r;++o){for(var l=n.s.c;l<=n.e.c;++l){var d=Ra({r:o,c:l});i=s?(e[o]||[])[l]:e[d];if(!i||i.v==null&&(!i.f||i.F))continue;a.push(c(i,e,o,l,r))}}return t.join(f)+f+a.join(f)+f+"E"+f}return{to_workbook:l,to_sheet:f,from_sheet:d}}();var Co=function(){function e(e,t){switch(t.type){case"base64":return r(k(e),t);case"binary":return r(e,t);case"buffer":return r(T&&Buffer.isBuffer(e)?e.toString("binary"):_(e),t);case"array":return r(mr(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"]=Na(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 Ua(r(e,t),t)}function o(e,r){var t="",n=r.type=="string"?[0,0,0,0]:qb(e,r);switch(r.type){case"base64":t=k(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=T&&Buffer.isBuffer(e)?e.toString("binary"):_(e);break;case"array":t=mr(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=lt(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=lt(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 yo.to_sheet(r.type=="string"?t:lt(t),r);return f(t,r)}function l(e,r){return La(o(e,r),r)}function c(e){var r=[];var t=Da(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=Ra({r:i,c:f});a=n?(e[i]||[])[f]:e[o];if(!a||a.v==null){s.push(" ");continue}var l=(a.w||(Pa(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 _o(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=Eo.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 So.to_workbook(e,r)}}var xo=function(){function e(e,r,t){if(!e)return;ca(e,e.l||0);var a=t.Enum||W;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=W;e(r,function(e,r,t){switch(t){case 0:a.vers=e;if(e>=4096)a.qpro=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)e[1].v=e[1].v.slice(1);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||X[14];if(a.cellDates){e[1].t="d";e[1].v=hr(e[1].v)}}if(a.qpro){if(e[3]>f){n["!ref"]=Na(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[Ra(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[Ra(e[0])]=e[1];break;default:;}},a)}else if(r[2]==26||r[2]==14){a.Enum=H;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:e[1].v=e[1].v.slice(1);case 23:;case 24:;case 25:;case 37:;case 39:;case 40:if(e[3]>f){n["!ref"]=Na(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[Ra(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=va();var n=Da(e["!ref"]);var s=Array.isArray(e);var f=[];bm(a,0,i(1030));bm(a,6,l(n));var c=Math.min(n.e.r,8191);for(var h=n.s.r;h<=c;++h){var d=Ta(h);for(var p=n.s.c;p<=n.e.c;++p){if(h===n.s.r)f[p]=ya(p);var g=f[p]+d;var b=s?(e[h]||[])[p]:e[g];if(!b||b.t=="z")continue;if(b.t=="n"){if((b.v|0)==b.v&&b.v>=-32768&&b.v<=32767)bm(a,13,v(h,p,b.v));else bm(a,14,m(h,p,b.v))}else{var w=Pa(b);bm(a,15,u(h,p,w.slice(0,239)))}}}bm(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=va();bm(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=ua(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{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=ua(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=c(e,r,t);a[1].v=e._R(2,"i");return a}function v(e,r,t){var a=ua(7);a._W(1,255);a._W(2,r);a._W(2,e);a._W(2,t,"i");return a}function p(e,r,t){var a=c(e,r,t);a[1].v=e._R(8,"f");return a}function m(e,r,t){var a=ua(13);a._W(1,255);a._W(2,r);a._W(2,e);a._W(8,t,"f");return a}function b(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);E(e.slice(e.l,e.l+i),n);e.l+=i}return n}function w(e,r,t){var a=r&32768;r&=~32768;r=(a?e:0)+(r>=8192?r-16384:r);return(a?"":"$")+(t?ya(r):Ta(r))}var T={51:["FALSE",0],52:["TRUE",0],70:["LEN",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],111:["T",1]};var A=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function E(e,r){ca(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=ua(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 x(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 O(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 R(e,r,t,a){var n=ua(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=O(e,14);e.l+=r-14;return t}function N(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 F(e,r){var t=D(e,14);e.l+=r-10;return t}function P(e,r){return e[e.l+r-1]==0?e._R(r,"cstr"):""}function L(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 W={0:{n:"BOF",f:es},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:d},14:{n:"NUMBER",f:p},15:{n:"LABEL",f:h},16:{n:"FORMULA",f:b},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:h},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:P},222:{n:"SHEETNAMELP",f:L},65535:{n:""}};var H={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:O},24:{n:"NUMBER18",f:x},25:{n:"FORMULA19",f:I},26:{n:"FORMULA1A"},27:{n:"XFORMAT",f:U},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:N},38:{n:"??"},39:{n:"NUMBER27",f:D},40:{n:"FORMULA28",f:F},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:P},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:M},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:""}};return{sheet_to_wk1:a,book_to_wk3:n,to_workbook:r}}();function Oo(e){var r={},t=e.match(Hr),a=0;var n=false;if(t)for(;a!=t.length;++a){var s=Gr(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 Ro=function(){var e=ht("t"),r=ht("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:Yr(a[1])};var i=t.match(r);if(i)n.s=Oo(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 Io=function hk(){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 No=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,Do=/<(?:\w+:)?r>/;var Fo=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function Po(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=Yr(lt(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""));a.r=lt(e);if(t)a.h=et(a.t)}else if(e.match(Do)){a.r=lt(e);a.t=Yr(lt((e.replace(Fo,"").match(No)||[]).join("").replace(Hr,"")));if(t)a.h=Io(Ro(a.r))}return a}var Lo=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var Mo=/<(?:\w+:)?(?:si|sstItem)>/g;var Uo=/<\/(?:\w+:)?(?:si|sstItem)>/;function Bo(e,r){var t=[],a="";if(!e)return t;var n=e.match(Lo);if(n){a=n[2].replace(Mo,"").split(Uo);for(var i=0;i!=a.length;++i){var s=Po(a[i].trim(),r);if(s!=null)t[t.length]=s}n=Gr(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var Wo=/^\s|\s$|[\t\n\r]/;function Ho(e,r){if(!r.bookSST)return"";var t=[Mr];t[t.length]=kt("sst",null,{xmlns:St[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 zo(e){return[e._R(4),e._R(4)]}function Vo(e,r){var t=[];var a=false;da(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 Go(e,r){if(!r)r=ua(8);r._W(4,e.Count);r._W(4,e.Unique);return r}var jo=Xa;function Xo(e){var r=va();pa(r,159,Go(e));for(var t=0;t=4)e.l+=r-4;return t}function Ko(e){var r={};r.id=e._R(0,"lpp4");r.R=Yo(e,4);r.U=Yo(e,4);r.W=Yo(e,4);return r}function Jo(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 qo(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(Jo(e));return r}function Zo(e){var r=[];e.l+=4;var t=e._R(4);while(t-- >0)r.push(e._R(0,"lpp4"));return r}function Qo(e){var r={};e._R(4);e.l+=4;r.id=e._R(0,"lpp4");r.name=e._R(0,"lpp4");r.R=Yo(e,4);r.U=Yo(e,4);r.W=Yo(e,4);return r}function el(e){var r=Qo(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 rl(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 tl(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 al(e){var r=Yo(e);switch(r.Minor){case 2:return[r.Minor,nl(e,r)];case 3:return[r.Minor,il(e,r)];case 4:return[r.Minor,sl(e,r)];}throw new Error("ECMA-376 Encrypted file unrecognized Version: "+r.Minor)}function nl(e){var r=e._R(4);if((r&63)!=36)throw new Error("EncryptionInfo mismatch");var t=e._R(4);var a=rl(e,t);var n=tl(e,e.length-e.l);return{t:"Std",h:a,v:n}}function il(){throw new Error("File is password-protected: ECMA-376 Extensible")}function sl(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(Hr,function n(e){var t=Gr(e);switch(jr(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=rl(e,n);r-=n;t.EncryptionVerifier=tl(e,r);return t}function ol(e){var r={};var t=r.EncryptionVersionInfo=Yo(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 ll(e){var r=0,t;var a=$o(e);var n=a.length+1,i,s;var f,o,l;t=E(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 cl=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=$o(r);var a=i(t);var s=t.length;var f=E(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 hl=function(e,r,t,a,n){if(!n)n=r;if(!a)a=cl(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 ul=function(e){var r=0,t=cl(e);return function(e){var a=hl("",e,r,t);r=a[1];return a[0]}};function dl(e,r,t,a){var n={key:es(e),verificationBytes:es(e)};if(t.password)n.verifier=ll(t.password);a.valid=n.verificationBytes===n.verifier;if(a.valid)a.insitu=ul(t.password);return n}function vl(e,r,t){var a=t||{};a.Info=e._R(2);e.l-=2;if(a.Info===1)a.Data=ol(e,r);else a.Data=fl(e,r);return a}function pl(e,r,t){var a={Type:t.biff>=8?e._R(2):0};if(a.Type)vl(e,r-2,a);else dl(e,t.biff>=8?r:r-2,t,a);return a}var gl=function(){function e(e,t){switch(t.type){case"base64":return r(k(e),t);case"binary":return r(e,t);case"buffer":return r(T&&Buffer.isBuffer(e)?e.toString("binary"):_(e),t);case"array":return r(mr(e),t);}throw new Error("Unrecognized type "+t.type)}function r(e,r){var t=r||{};var a=t.dense?[]:{};var n=e.match(/\\trowd.*?\\row\b/g);if(!n.length)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 t=/\\\w+\b/g;var n=0;var s;var f=-1;while(s=t.exec(e)){switch(s[0]){case"\\cell":var o=e.slice(n,t.lastIndex-s[0].length);if(o[0]==" ")o=o.slice(1);++f;if(o.length){var l={v:o,t:"s"};if(Array.isArray(a))a[r][f]=l;else a[Ra({r:r,c:f})]=l}break;}n=t.lastIndex}if(f>i.e.c)i.e.c=f});a["!ref"]=Na(i);return a}function t(r,t){return La(e(r,t),t)}function a(e){var r=["{\\rtf1\\ansi"];var t=Da(e["!ref"]),a;var n=Array.isArray(e);for(var i=t.s.r;i<=t.e.r;++i){r.push("\\trowd\\trautofit1");for(var s=t.s.c;s<=t.e.c;++s)r.push("\\cellx"+(s+1));r.push("\\pard\\intbl");for(s=t.s.c;s<=t.e.c;++s){var f=Ra({r:i,c:s});a=n?(e[i]||[])[s]:e[f];if(!a||a.v==null&&(!a.f||a.F))continue;r.push(" "+(a.w||(Pa(a),a.w)));r.push("\\cell")}r.push("\\pard\\intbl\\row")}return r.join("")+"}"}return{to_workbook:t,to_sheet:e,from_sheet:a}}();function ml(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 bl(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 wl(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 kl(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 Tl(e,r){if(r===0)return e;var t=wl(ml(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return bl(kl(t))}var Al=6,El=15,Cl=1,yl=Al;function Sl(e){return Math.floor((e+Math.round(128/yl)/256)*yl)}function _l(e){return Math.floor((e-5)/yl*100+.5)/100}function xl(e){return Math.round((e*yl+5)/yl*256)/256}function Ol(e){return xl(_l(Sl(e)))}function Rl(e){var r=Math.abs(e-Ol(e)),t=yl;if(r>.005)for(yl=Cl;yl":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=nt(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=nt(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 Ul(e,r,t,a){r.Fills=[];var n={};var i=false;(e[0].match(Hr)||[]).forEach(function(e){var t=Gr(e);switch(jr(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 Bl(e,r,t,a){r.Fonts=[];var n={};var s=false;(e[0].match(Hr)||[]).forEach(function(e){var f=Gr(e);switch(jr(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 Wl(e,r,t){r.NumberFmt=[];var a=rr(X);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}We(f,o)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+s[0]+" in numFmts");}}}function Hl(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]=kt("numFmt",null,{numFmtId:a,formatCode:qr(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=kt("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var zl=["numFmtId","fillId","fontId","borderId","xfId"];var Vl=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function Gl(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Hr)||[]).forEach(function(e){var i=Gr(e),s=0;switch(jr(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=nt(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 jl(e){var r=[];r[r.length]=kt("cellXfs",null);e.forEach(function(e){r[r.length]=kt("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=kt("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var Xl=function uk(){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))Wl(c,l,o);if(c=s.match(a))Bl(c,l,f,o);if(c=s.match(t))Ul(c,l,f,o);if(c=s.match(n))Ml(c,l,f,o);if(c=s.match(r))Gl(c,l,o);return l}}();function $l(e,r){var t=[Mr,kt("styleSheet",null,{xmlns:St[0],"xmlns:vt":yt.vt})],a;if(e.SSF&&(a=Hl(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=jl(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 Yl(e,r){var t=e._R(2);var a=Ha(e,r-2);return[t,a]}function Kl(e,r,t){if(!t)t=ua(6+4*r.length);t._W(2,e);za(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 Jl(e,r,t){var a={};a.sz=e._R(2)/20;var n=mn(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=pn(e,8);switch(e._R(1)){case 1:a.scheme="major";break;case 2:a.scheme="minor";break;}a.name=Ha(e,r-21);return a}function ql(e,r){if(!r)r=ua(25+4*32);r._W(2,e.sz*20);bn(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);gn(e.color,r);var a=0;if(e.scheme=="major")a=1;if(e.scheme=="minor")a=2;r._W(1,a);za(e.name,r);return r.length>r.l?r.slice(0,r.l):r}var Zl=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];var Ql;var ec=ha;function rc(e,r){if(!r)r=ua(4*3+8*7+16*1);if(!Ql)Ql=ar(Zl);var t=Ql[e.patternType];if(t==null)t=40;r._W(4,t);var a=0;if(t!=40){gn({auto:1},r);gn({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 tc(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 ac(e,r,t){if(!t)t=ua(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 nc(e,r){if(!r)r=ua(10);r._W(1,0);r._W(1,0);r._W(4,0);r._W(4,0);return r}var ic=ha;function sc(e,r){if(!r)r=ua(51);r._W(1,0);nc(null,r);nc(null,r);nc(null,r);nc(null,r);nc(null,r);return r.length>r.l?r.slice(0,r.l):r}function fc(e,r){if(!r)r=ua(12+4*10);r._W(4,e.xfId);r._W(2,1);r._W(1,+e.builtinId);r._W(1,0);tn(e.name||"",r);return r.length>r.l?r.slice(0,r.l):r}function oc(e,r,t){var a=ua(4+256*2*4);a._W(4,e);tn(r,a);tn(t,a);return a.length>a.l?a.slice(0,a.l):a}function lc(e,r,t){var a={};a.NumberFmt=[];for(var n in X)a.NumberFmt[n]=X[n];a.CellXf=[];a.Fonts=[];var i=[];var s=false;da(e,function f(e,n,o){switch(o){case 44:a.NumberFmt[e[0]]=e[1];We(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=Tl(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 cc(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;pa(e,615,Wa(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)pa(e,44,Kl(a,r[a]))});pa(e,616)}function hc(e){var r=1;if(r==0)return;pa(e,611,Wa(r));pa(e,43,ql({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"}));pa(e,612)}function uc(e){var r=2;if(r==0)return;pa(e,603,Wa(r));pa(e,45,rc({patternType:"none"}));pa(e,45,rc({patternType:"gray125"}));pa(e,604)}function dc(e){var r=1;if(r==0)return;pa(e,613,Wa(r));pa(e,46,sc({}));pa(e,614)}function vc(e){var r=1;pa(e,626,Wa(r));pa(e,47,ac({numFmtId:0,fontId:0,fillId:0,borderId:0},65535));pa(e,627)}function pc(e,r){pa(e,617,Wa(r.length));r.forEach(function(r){pa(e,47,ac(r,0))});pa(e,618)}function gc(e){var r=1;pa(e,619,Wa(r));pa(e,48,fc({xfId:0,builtinId:0,name:"Normal"}));pa(e,620)}function mc(e){var r=0;pa(e,505,Wa(r));pa(e,506)}function bc(e){var r=0;pa(e,508,oc(r,"TableStyleMedium9","PivotStyleMedium4"));pa(e,509)}function wc(){return}function kc(e,r){var t=va();pa(t,278);cc(t,e.SSF);hc(t,e);uc(t,e);dc(t,e);vc(t,e);pc(t,r.cellXfs);gc(t,e);mc(t,e);bc(t,e);wc(t,e);pa(t,279);return t.end()}var Tc=["","","","","","","","","","","",""];function Ac(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Hr)||[]).forEach(function(e){var n=Gr(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[Tc.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 Ec(){}function Cc(){}var yc=/]*)>[\s\S]*<\/a:clrScheme>/;var Sc=/]*)>[\s\S]*<\/a:fontScheme>/;var _c=/]*)>[\s\S]*<\/a:fmtScheme>/;function xc(e,r,t){r.themeElements={};var a;[["clrScheme",yc,Ac],["fontScheme",Sc,Ec],["fmtScheme",_c,Cc]].forEach(function(n){if(!(a=e.match(n[1])))throw new Error(n[0]+" not found in themeElements");n[2](a,r,t)})}var Oc=/]*)>[\s\S]*<\/a:themeElements>/;function Rc(e,r){if(!e||e.length===0)e=Ic();var t;var a={};if(!(t=e.match(Oc)))throw new Error("themeElements not found in theme");xc(t[0],a,r);a.raw=e;return a}function Ic(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Mr];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]=''; +t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";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 Nc(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=Pr(i,{type:"array"})}catch(f){return}var o=Rr(s,"theme/theme/theme1.xml",true);if(!o)return;return Rc(o,t)}function Dc(e){return e._R(4)}function Fc(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=Pc(e,4);break;case 2:r.xclrValue=ks(e,4);break;case 3:r.xclrValue=Dc(e,4);break;case 4:e.l+=4;break;}e.l+=8;return r}function Pc(e,r){return ha(e,r)}function Lc(e,r){return ha(e,r)}function Mc(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]=Fc(e,t);break;case 6:a[1]=Lc(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 Uc(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(Mc(e,t-e.l));return{ixfe:a,ext:i}}function Bc(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 Wc(e,r){return{flags:e._R(4),version:e._R(4),name:Ha(e,r-8)}}function Hc(e){var r=ua(12+2*e.name.length);r._W(4,e.flags);r._W(4,e.version);za(e.name,r);return r.slice(0,r.l)}function zc(e){var r=[];var t=e._R(4);while(t-- >0)r.push([e._R(4),e._R(4)]);return r}function Vc(e){var r=ua(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 qc(e){var r=[];if(!e)return r;var t=1;(e.match(Hr)||[]).forEach(function(e){var a=Gr(e);switch(a[0]){case"":;case"":break;case"]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}var ah=1024;function nh(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[kt("xml",null,{"xmlns:v":_t.v,"xmlns:o":_t.o,"xmlns:x":_t.x,"xmlns:mv":_t.mv}).replace(/\/>/,">"),kt("o:shapelayout",kt("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"}),kt("v:shapetype",[kt("v:stroke",null,{joinstyle:"miter"}),kt("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202","o:spt":202,coordsize:t.join(","),path:a})];while(ah",i,kt("v:shadow",null,s),kt("v:path",null,{"o:connecttype":"none"}),'
','',"","",bt("x:Anchor",[r.c+1,0,r.r+1,0,r.c+3,20,r.r+5,20].join(",")),bt("x:AutoFill","False"),bt("x:Row",String(r.r)),bt("x:Column",String(r.c)),e[1].hidden?"":"","",""])});n.push("");return n.join("")}function ih(e,r,t,a){var n=Array.isArray(e);var i;r.forEach(function(r){var s=Oa(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=Da(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=Gr(n[0]);var s={author:i.authorId&&t[i.authorId]||"sheetjsghost",ref:i.ref,guid:i.guid};var f=Oa(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]&&Po(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 fh(e){var r=[Mr,kt("comments",null,{xmlns:St[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=qr(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=[];if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);else e[1].forEach(function(e){if(e.a)a=t.indexOf(qr(e.a));n.push(e.t||"")});r.push('');if(n.length<=1)r.push(bt("t",qr(n[0]||"")));else{var i="Comment:\n "+n[0]+"\n";for(var s=1;s")});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function oh(e,r){var t=[];var a=false,n={},i=0;e.replace(Hr,function s(f,o){var l=Gr(f);switch(jr(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 lh(e,r,t){var a=[Mr,kt("ThreadedComments",null,{xmlns:yt.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(kt("threadedComment",bt("text",i.t||""),f))})});a.push("");return a.join("")}function ch(e,r){var t=[];var a=false;e.replace(Hr,function n(e){var n=Gr(e);switch(jr(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 hh(e){var r=[Mr,kt("personList",null,{xmlns:yt.TCMNT,"xmlns:x":St[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(kt("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}function uh(e){var r={};r.iauthor=e._R(4);var t=hn(e,16);r.rfx=t.s;r.ref=Ra(t.s);e.l+=16;return r}function dh(e,r){if(r==null)r=ua(36);r._W(4,e[1].iauthor);un(e[0],r);r._W(4,0);r._W(4,0);r._W(4,0);r._W(4,0);return r}var vh=Ha;function ph(e){return za(e.slice(0,54))}function gh(e,r){var t=[];var a=[];var n={};var i=false;da(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 mh(e){var r=va();var t=[];pa(r,628);pa(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));pa(r,632,ph(e.a))})});pa(r,631);pa(r,633);e.forEach(function(e){e[1].forEach(function(a){a.iauthor=t.indexOf(a.a);var n={s:Oa(e[0]),e:Oa(e[0])};pa(r,635,dh([n,a]));if(a.t&&a.t.length>0)pa(r,637,Ya(a));pa(r,636);delete a.iauthor})});pa(r,634);pa(r,629);return r.end()}var bh="application/vnd.ms-office.vbaProject";function wh(e){var r=Ke.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*/,"");Ke.utils.cfb_add(r,n,e.FileIndex[a].content)});return Ke.write(r)}function kh(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")Ke.utils.cfb_add(e,n,r.FileIndex[a].content)})}var Th=["xlsb","xlsm","xlam","biff8","xla"];function Ah(){return{"!type":"dialog"}}function Eh(){return{"!type":"dialog"}}function Ch(){return{"!type":"macro"}}function yh(){return{"!type":"macro"}}var Sh=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?"":"$")+ya(o)+(s?"":"$")+Ta(f)}return function a(n,i){r=i;return n.replace(e,t)}}();var _h=/(^|[^._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 xh=function(){return function e(r,t){return r.replace(_h,function(e,r,a,n,i,s){var f=Ca(n)-(a?0:t.c);var o=ka(s)-(i?0:t.r);var l=o==0?"":!i?"["+o+"]":o+1;var c=f==0?"":!a?"["+f+"]":f+1;return r+"R"+l+"C"+c})}}();function Oh(e,r){return e.replace(_h,function(e,t,a,n,i,s){return t+(a=="$"?a+n:ya(Ca(n)+r.c))+(i=="$"?i+s:Ta(ka(s)+r.r))})}function Rh(e,r,t){var a=Ia(r),n=a.s,i=Oa(t);var s={r:i.r-n.r,c:i.c-n.c};return Oh(e,s)}function Ih(e){if(e.length==1)return false;return true}function Nh(e){return e.replace(/_xlfn\./g,"")}function Dh(e){e.l+=1;return}function Fh(e,r){var t=e._R(r==1?1:2);return[t&16383,t>>14&1,t>>15&1]}function Ph(e,r,t){var a=2;if(t){if(t.biff>=2&&t.biff<=5)return Lh(e,r,t);else if(t.biff==12)a=4}var n=e._R(a),i=e._R(a);var s=Fh(e,2);var f=Fh(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 Lh(e){var r=Fh(e,2),t=Fh(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 Mh(e,r,t){if(t.biff<8)return Lh(e,r,t);var a=e._R(t.biff==12?4:2),n=e._R(t.biff==12?4:2);var i=Fh(e,2);var s=Fh(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 Uh(e,r,t){if(t&&t.biff>=2&&t.biff<=5)return Bh(e,r,t);var a=e._R(t&&t.biff==12?4:2);var n=Fh(e,2);return{r:a,c:n[0],cRel:n[1],rRel:n[2]}}function Bh(e){var r=Fh(e,2);var t=e._R(1);return{r:r[0],c:t,cRel:r[1],rRel:r[2]}}function Wh(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 Hh(e,r,t){var a=t&&t.biff?t.biff:8;if(a>=2&&a<=5)return zh(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 zh(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 Vh(e,r,t){var a=(e[e.l++]&96)>>5;var n=Ph(e,t.biff>=2&&t.biff<=5?6:8,t);return[a,n]}function Gh(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=Ph(e,i,t);return[a,n,s]}function jh(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 Xh(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 $h(e,r,t){var a=(e[e.l++]&96)>>5;var n=Mh(e,r-1,t);return[a,n]}function Yh(e,r,t){var a=(e[e.l++]&96)>>5;e.l+=t.biff==2?6:t.biff==12?14:7;return[a]}function Kh(e){var r=e[e.l+1]&1;var t=1;e.l+=4;return[r,t]}function Jh(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 qh(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 Zh(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 Qh(e){var r=e[e.l+1]&255?1:0;e.l+=2;return[r,e._R(2)]}function eu(e,r,t){var a=e[e.l+1]&255?1:0;e.l+=t&&t.biff==2?3:4;return[a]}function ru(e){var r=e._R(1),t=e._R(1);return[r,t]}function tu(e){e._R(2);return ru(e,2)}function au(e){e._R(2);return ru(e,2)}function nu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Uh(e,0,t);return[a,n]}function iu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=Hh(e,0,t);return[a,n]}function su(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=Uh(e,0,t);return[a,n,i]}function fu(e,r,t){var a=(e[e.l]&96)>>5;e.l+=1;var n=e._R(t&&t.biff<=3?1:2);return[Ed[n],Ad[n],a]}function ou(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)]:lu(e);return[n,(i[0]===0?Ad:Td)[i[1]]]}function lu(e){return[e[e.l+1]>>7,e._R(2)&32767]}function cu(e,r,t){e.l+=t&&t.biff==2?3:4;return}function hu(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 uu(e){e.l++;return Gn[e._R(1)]}function du(e){e.l++;return e._R(2)}function vu(e){e.l++;return e._R(1)!==0}function pu(e){e.l++;return dn(e,8)}function gu(e,r,t){e.l++;return is(e,r-1,t)}function mu(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]=Zi(e,1)?"TRUE":"FALSE";if(r!=12)e.l+=7;break;case 37:;case 16:t[1]=Gn[e[e.l]];e.l+=r==12?4:8;break;case 0:e.l+=8;break;case 1:t[1]=dn(e,8);break;case 2:t[1]=cs(e,0,{biff:r>0&&r<8?2:r});break;default:throw new Error("Bad SerAr: "+t[0]);}return t}function bu(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?hn:Os)(e,8));return n}function wu(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]=mu(e,t.biff);return s}function ku(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 Tu(e,r,t){if(t.biff==5)return Au(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 Au(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 Eu(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 Cu(e,r,t){var a=e._R(1)>>>5&3;var n=e._R(t&&t.biff==2?1:2);return[a,n]}function yu(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 Su(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 _u=ha;var xu=ha;var Ou=ha;function Ru(e,r,t){e.l+=2;return[Wh(e,4,t)]}function Iu(e){e.l+=6;return[]}var Nu=Ru;var Du=Iu;var Fu=Iu;var Pu=Ru;function Lu(e){e.l+=2;return[es(e),e._R(2)&1]}var Mu=Ru;var Uu=Lu;var Bu=Iu;var Wu=Ru;var Hu=Ru;var zu=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];function Vu(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=zu[t>>2&31];return{ixti:r,coltype:t&3,rt:s,idx:a,c:n,C:i}}function Gu(e){e.l+=2;return[e._R(4)]}function ju(e,r,t){e.l+=5;e.l+=2;e.l+=t.biff==2?1:4;return["PTGSHEET"]}function Xu(e,r,t){e.l+=t.biff==2?4:5;return["PTGENDSHEET"]}function $u(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function Yu(e){var r=e._R(1)>>>5&3;var t=e._R(2);return[r,t]}function Ku(e){e.l+=4;return[0,0]}var Ju={1:{n:"PtgExp",f:hu},2:{n:"PtgTbl",f:Ou},3:{n:"PtgAdd",f:Dh},4:{n:"PtgSub",f:Dh},5:{n:"PtgMul",f:Dh},6:{n:"PtgDiv",f:Dh},7:{n:"PtgPower",f:Dh},8:{n:"PtgConcat",f:Dh},9:{n:"PtgLt",f:Dh},10:{n:"PtgLe",f:Dh},11:{n:"PtgEq",f:Dh},12:{n:"PtgGe",f:Dh},13:{n:"PtgGt",f:Dh},14:{n:"PtgNe",f:Dh},15:{n:"PtgIsect",f:Dh},16:{n:"PtgUnion",f:Dh},17:{n:"PtgRange",f:Dh},18:{n:"PtgUplus",f:Dh},19:{n:"PtgUminus",f:Dh},20:{n:"PtgPercent",f:Dh},21:{n:"PtgParen",f:Dh},22:{n:"PtgMissArg",f:Dh},23:{n:"PtgStr",f:gu},26:{n:"PtgSheet",f:ju},27:{n:"PtgEndSheet",f:Xu},28:{n:"PtgErr",f:uu},29:{n:"PtgBool",f:vu},30:{n:"PtgInt",f:du},31:{n:"PtgNum",f:pu},32:{n:"PtgArray",f:Yh},33:{n:"PtgFunc",f:fu},34:{n:"PtgFuncVar",f:ou},35:{n:"PtgName",f:ku},36:{n:"PtgRef",f:nu},37:{n:"PtgArea",f:Vh},38:{n:"PtgMemArea",f:Eu},39:{n:"PtgMemErr",f:_u},40:{n:"PtgMemNoMem",f:xu},41:{n:"PtgMemFunc",f:Cu},42:{n:"PtgRefErr",f:yu},43:{n:"PtgAreaErr",f:jh},44:{n:"PtgRefN",f:iu},45:{n:"PtgAreaN",f:$h},46:{n:"PtgMemAreaN",f:$u},47:{n:"PtgMemNoMemN",f:Yu},57:{n:"PtgNameX",f:Tu},58:{n:"PtgRef3d",f:su},59:{n:"PtgArea3d",f:Gh},60:{n:"PtgRefErr3d",f:Su},61:{n:"PtgAreaErr3d",f:Xh},255:{}};var qu={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 Zu={1:{n:"PtgElfLel",f:Lu},2:{n:"PtgElfRw",f:Wu},3:{n:"PtgElfCol",f:Nu},6:{n:"PtgElfRwV",f:Hu},7:{n:"PtgElfColV",f:Pu},10:{n:"PtgElfRadical",f:Mu},11:{n:"PtgElfRadicalS",f:Bu},13:{n:"PtgElfColS",f:Du},15:{n:"PtgElfColSV",f:Fu},16:{n:"PtgElfRadicalLel",f:Uu},25:{n:"PtgList",f:Vu},29:{n:"PtgSxName",f:Gu},255:{}};var Qu={0:{n:"PtgAttrNoop",f:Ku},1:{n:"PtgAttrSemi",f:eu},2:{n:"PtgAttrIf",f:Zh},4:{n:"PtgAttrChoose",f:Jh},8:{n:"PtgAttrGoto",f:qh},16:{n:"PtgAttrSum",f:cu},32:{n:"PtgAttrBaxcel",f:Kh},33:{n:"PtgAttrBaxcel",f:Kh},64:{n:"PtgAttrSpace",f:tu},65:{n:"PtgAttrSpaceSemi",f:au},128:{n:"PtgAttrIfError",f:Qh},255:{}};function ed(e,r,t,a){if(a.biff<8)return ha(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]=wu(e,0,a);i.push(t[s][1]);break;case"PtgMemArea":t[s][2]=bu(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(ha(e,r));return i}function rd(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=Ju[i]||Ju[qu[i]];if(i===24||i===25)n=(i===24?Zu:Qu)[e[e.l+1]];if(!n||!n.f){ha(e,r)}else{s.push([n.n,n.f(e,r,t)])}}return s}function td(e){var r=[];for(var t=0;t=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};function nd(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+"'";return e}function id(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 sd(e,r,t){var a=id(e,r,t);return a=="#REF"?a:nd(a,t)}function fd(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,v="";if(!e[0]||!e[0][0])return"";var p=-1,g="";for(var m=0,b=e[0].length;m=0){switch(e[0][p][1][0]){case 0:g=wr(" ",e[0][p][1][1]);break;case 1:g=wr("\r",e[0][p][1][1]);break;default:g="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+e[0][p][1][0]);}l=l+g;p=-1}f.push(l+ad[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(l+":"+o);break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgAttrIfError":break;case"PtgRef":c=ga(w[1][1],s,n);f.push(ba(c,i));break;case"PtgRefN":c=t?ga(w[1][1],t,n):w[1][1];f.push(ba(c,i));break;case"PtgRef3d":h=w[1][1];c=ga(w[1][2],s,n);v=sd(a,h,n);var k=v;f.push(v+"!"+ba(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=ma(w[1][1],t?{s:t}:s,n);f.push(wa(d,n));break;case"PtgArea":d=ma(w[1][1],s,n);f.push(wa(d,n));break;case"PtgArea3d":h=w[1][1];d=w[1][2];v=sd(a,h,n);f.push(v+"!"+wa(d,n));break;case"PtgAttrSum":f.push("SUM("+f.pop()+")");break;case"PtgAttrBaxcel":;case"PtgAttrSemi":break;case"PtgName":u=w[1][2];var C=(a.names||[])[u-1]||(a[0]||[])[u];var y=C?C.Name:"SH33TJSNAME"+String(u);if(y&&y.slice(0,6)=="_xlfn."&&!n.xlfn)y=y.slice(6);f.push(y);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=(id(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(p>=0){g="";switch(e[0][p][1][0]){case 2:R=wr(" ",e[0][p][1][1])+R;break;case 3:R=wr("\r",e[0][p][1][1])+R;break;case 4:I=wr(" ",e[0][p][1][1])+I;break;case 5:I=wr("\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[Ra(c)]){var D=a.sharedf[Ra(c)];f.push(fd(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(fd(l[1],s,N,a,n));F=true;break}if(!F)f.push(w[1])}break;case"PtgArray":f.push("{"+td(w[1])+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":;case"PtgAttrSpaceSemi":p=m;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][m][0])==-1){w=e[0][p];var L=true;switch(w[1][0]){case 4:L=false;case 0:g=wr(" ",w[1][1]);break;case 5:L=false;case 1:g=wr("\r",w[1][1]);break;default:g="";if(n.WTF)throw new Error("Unexpected PtgAttrSpaceType "+w[1][0]);}f.push((L?g:"")+f.pop()+(L?"":g));p=-1}}if(f.length>1&&n.WTF)throw new Error("bad formula stack");return f[0]}function od(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ha(e,r-2)];var f=rd(e,s,t);if(r!==s+n)i=ed(e,r-s-n,f,t);e.l=a;return[f,i]}function ld(e,r,t){var a=e.l+r,n=t.biff==2?1:2;var i,s=e._R(n);if(s==65535)return[[],ha(e,r-2)];var f=rd(e,s,t);if(r!==s+n)i=ed(e,r-s-n,f,t);e.l=a;return[f,i]}function cd(e,r,t,a){var n=e.l+r;var i=rd(e,a,t);var s;if(n!==e.l)s=ed(e,n-e.l,i,t);return[i,s]}function hd(e,r,t){var a=e.l+r;var n,i=e._R(2);var s=rd(e,i,t);if(i==65535)return[[],ha(e,r-2)];if(r!==i+2)n=ed(e,a-i-2,s,t);return[s,n]}function ud(e){var r;if(Qt(e,e.l+6)!==65535)return[dn(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 dd(e){if(e==null){var r=ua(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 vn(e);return vn(0)}function vd(e,r,t){var a=e.l+r;var n=As(e,6);if(t.biff==2)++e.l;var i=ud(e,8);var s=e._R(1);if(t.biff!=2){e._R(1);if(t.biff>=5){e._R(4)}}var f=ld(e,a-e.l,t);return{cell:n,val:i[0],formula:f,shared:s>>3&1,tt:i[1]}}function pd(e,r,t,a,n){var i=Es(r,t,n);var s=dd(e.v);var f=ua(6);var o=1|32;f._W(2,o);f._W(4,0);var l=ua(e.bf.length);for(var c=0;c0?ed(e,i,n,t):null;return[n,s]}var md=gd;var bd=gd;var wd=gd;var kd=gd;var Td={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 Ad={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 Ed={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 Cd(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(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function yd(e){var r="of:="+e.replace(_h,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function Sd(e){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 _d(e){return e.replace(/\./,"!")}var xd={};var Od={};var Rd=typeof Map!=="undefined";function Id(e,r,t){var a=0,n=e.length;if(t){if(Rd?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var i=Rd?t.get(r):t[r];for(;a-1){t.width=xl(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 Dd(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 Fd(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){We(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 Pd(e,r,t,a,n,i){try{if(a.cellNF)e.z=X[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=gr(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(X[r]==null)We(Ge[r]||"General",r);if(e.t==="e")e.w=e.w||Gn[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=se(e.v)}else if(e.t==="d"){var f=fr(e.v);if((f|0)===f)e.w=f.toString(10);else e.w=se(f)}else if(e.v===undefined)return"";else e.w=fe(e.v,Od)}else if(e.t==="d")e.w=Be(r,fr(e.v),Od);else e.w=Be(r,e.v,Od)}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=Tl(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=Tl(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 Ld(e,r,t){if(e&&e["!ref"]){var a=Da(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=Na(t)}var Ud=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var Bd=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var Wd=/<(?:\w:)?hyperlink [^>]*>/gm;var Hd=/"(\w*:\w*)"/;var zd=/<(?:\w:)?col\b[^>]*[\/]?>/g;var Vd=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var Gd=/<(?:\w:)?pageMargins[^>]*\/>/g;var jd=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var Xd=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var $d=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function Yd(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(Bd);if(h){l=e.slice(0,h.index);c=e.slice(h.index+h[0].length)}else l=c=e;var u=l.match(jd);if(u)Jd(u[0],f,n,t);else if(u=l.match(Xd))qd(u[0],u[1]||"",f,n,t,s,i);var d=(l.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(d>0){var v=l.slice(d,d+50).match(Hd);if(v)Md(f,v[1])}var p=l.match($d);if(p&&p[1])cv(p[1],n);var m=[];if(r.cellStyles){var b=l.match(zd);if(b)iv(m,b)}if(h)dv(h[1],f,r,o,i,s);var w=c.match(Vd);if(w)f["!autofilter"]=fv(w[0]);var k=[];var T=c.match(Ud);if(T)for(d=0;d!=T.length;++d)k[d]=Da(T[d].slice(T[d].indexOf('"')+1));var A=c.match(Wd);if(A)tv(f,A,a);var E=c.match(Gd);if(E)f["!margins"]=av(Gr(E[0]));if(!f["!ref"]&&o.e.c>=o.s.c&&o.e.r>=o.s.r)f["!ref"]=Na(o);if(r.sheetRows>0&&f["!ref"]){var C=Da(f["!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)f["!cols"]=m;if(k.length>0)f["!merges"]=k;return f}function Kd(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function Jd(e,r,t,a){var n=Gr(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=Yr(lt(n.codeName))}function qd(e,r,t,a,n){Jd(e.slice(0,e.indexOf(">")),t,a,n)}function Zd(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=ct(qr(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||"")+kt("outlinePr",null,c)}if(!i&&!f)return;n[n.length]=kt("sheetPr",f,s)}var Qd=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var ev=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function rv(e){var r={sheet:1};Qd.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=ll(e.password).toString(16).toUpperCase();return kt("sheetProtection",null,r)}function tv(e,r,t){var a=Array.isArray(e);for(var n=0;n!=r.length;++n){var i=Gr(lt(r[n]),true);if(!i.ref)return;var s=((t||{})["!id"]||[])[i.id];if(s){i.Target=s.Target;if(i.location)i.Target+="#"+Yr(i.location)}else{i.Target="#"+Yr(i.location);s={Target:i.Target,TargetMode:"Internal"}}i.Rel=s;if(i.tooltip){i.Tooltip=i.tooltip;delete i.tooltip}var f=Da(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=Ra({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 av(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function nv(e){Dd(e);return kt("pageMargins",null,e)}function iv(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Gr(r[a],true);if(n.hidden)n.hidden=nt(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;Rl(n.width)}Il(n);while(i<=s)e[i++]=br(n)}}function sv(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=kt("col",null,Nd(n,a))}t[t.length]="";return t.join("")}function fv(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function ov(e,r,t,a){var n=typeof e.ref=="string"?e.ref:Na(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var i=t.Workbook.Names;var s=Ia(n);if(s.s.r==s.e.r){s.e.r=Ia(r["!ref"]).e.r;n=Na(s)}for(var f=0;fa-z][^>]*)?\/?>/;function cv(e,r){if(!r.Views)r.Views=[{}];(e.match(lv)||[]).forEach(function(e,t){var a=Gr(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(nt(a.rightToLeft))r.Views[t].RTL=true})}function hv(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return kt("sheetViews",kt("sheetView",null,n),{})}function uv(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if(e.v===undefined&&typeof e.f!=="string"||e.t==="z"&&!e.f)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=Gn[e.v];break;case"d":if(a&&a.cellDates)n=gr(e.v,-1).toISOString();else{e=br(e);e.t="n";n=""+(e.v=fr(gr(e.v)))}if(typeof e.z==="undefined")e.z=X[14];break;default:n=e.v;break;}var f=bt("v",qr(n)),o={r:r};var l=Fd(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=bt("v",""+Id(a.Strings,e.v,a.revStrings));o.t="s";break}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=kt("f",qr(e.f),c)+(e.v!=null?f:"")}if(e.l)t["!links"].push([r,e.l]);if(e.D)o.cm=1;return kt("c",f,o)}var dv=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/; +var n=/ref=["']([^"']*)["']/;var i=ht("v"),s=ht("f");return function f(o,l,c,h,u,d){var v=0,p="",g=[],m=[],b=0,w=0,k=0,T="",A;var E,C=0,y=0;var S,_;var x=0,O=0;var R=Array.isArray(d.CellXf),I;var N=[];var D=[];var F=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){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){E=Gr(p.slice(V,v),true);C=E.r!=null?parseInt(E.r,10):C+1;y=-1;if(c.sheetRows&&c.sheetRows=v)break;E=Gr(p.slice(V,v),true);C=E.r!=null?parseInt(E.r,10):C+1;y=-1;if(c.sheetRows&&c.sheetRowsC-1)h.s.r=C-1;if(h.e.r":"")+p;if(m!=null&&m.length===2){b=0;T=m[1];for(w=0;w!=T.length;++w){if((k=T.charCodeAt(w)-64)<1||k>26)break;b=26*b+k}--b;y=b}else++y;for(w=0;w!=p.length;++w)if(p.charCodeAt(w)===62)break;++w;E=Gr(p.slice(0,w),true);if(!E.r)E.r=Ra({r:C-1,c:y});T=p.slice(w);A={t:""};if((m=T.match(i))!=null&&m[1]!=="")A.v=Yr(m[1]);if(c.cellFormula){if((m=T.match(s))!=null&&m[1]!==""){A.f=Yr(lt(m[1])).replace(/\r\n/g,"\n");if(!c.xlfn)A.f=Nh(A.f);if(m[0].indexOf('t="array"')>-1){A.F=(T.match(n)||[])[1];if(A.F.indexOf(":")>-1)N.push([Da(A.F),A.F])}else if(m[0].indexOf('t="shared"')>-1){_=Gr(m[0]);var j=Yr(lt(m[1]));if(!c.xlfn)j=Nh(j);D[parseInt(_.si,10)]=[_,j,E.r]}}else if(m=T.match(/]*\/>/)){_=Gr(m[0]);if(D[_.si])A.f=Rh(D[_.si][1],D[_.si][2],E.r)}var $=Oa(E.r);for(w=0;w=N[w][0].s.r&&$.r<=N[w][0].e.r)if($.c>=N[w][0].s.c&&$.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>y)h.s.c=y;if(h.e.c0)l["!rows"]=P}}();function vv(e,r,t,a){var n=[],i=[],s=Da(e["!ref"]),f="",o,l="",c=[],h=0,u=0,d=e["!rows"];var v=Array.isArray(e);var p={r:l},g,m=-1;for(u=s.s.c;u<=s.e.c;++u)c[u]=ya(u);for(h=s.s.r;h<=s.e.r;++h){i=[];l=Ta(h);for(u=s.s.c;u<=s.e.c;++u){o=c[u]+l;var b=v?(e[h]||[])[u]:e[o];if(b===undefined)continue;if((f=uv(b,o,e,r,t,a))!=null)i.push(f)}if(i.length>0||d&&d[h]){p={r:l};if(d&&d[h]){g=d[h];if(g.hidden)p.hidden=1;m=-1;if(g.hpx)m=Fl(g.hpx);else if(g.hpt)m=g.hpt;if(m>-1){p.ht=m;p.customHeight=1}if(g.level){p.outlineLevel=g.level}}n[n.length]=kt("row",i.join(""),p)}}if(d)for(;h-1){p.ht=m;p.customHeight=1}if(g.level){p.outlineLevel=g.level}n[n.length]=kt("row","",p)}}return n.join("")}function pv(e,r,t,a){var n=[Mr,kt("worksheet",null,{xmlns:St[0],"xmlns:r":yt.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=Da(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=Na(c)}if(!a)a={};o["!comments"]=[];var h=[];Zd(o,t,e,r,n);n[n.length]=kt("dimension",null,{ref:l});n[n.length]=hv(o,r,e,t);if(r.sheetFormat)n[n.length]=kt("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]=sv(o,o["!cols"]);n[s=n.length]="";o["!links"]=[];if(o["!ref"]!=null){f=vv(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]=rv(o["!protect"]);if(o["!autofilter"]!=null)n[n.length]=ov(o["!autofilter"],o,t,e);if(o["!merges"]!=null&&o["!merges"].length>0)n[n.length]=Kd(o["!merges"]);var u=-1,d,v=-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)!="#"){v=ri(a,-1,qr(e[1].Target).replace(/#.*$/,""),qn.HLINK);d["r:id"]="rId"+v}if((u=e[1].Target.indexOf("#"))>-1)d.location=qr(e[1].Target.slice(u+1));if(e[1].Tooltip)d.tooltip=qr(e[1].Tooltip);n[n.length]=kt("hyperlink",null,d)});n[n.length]=""}delete o["!links"];if(o["!margins"]!=null)n[n.length]=nv(o["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=bt("ignoredErrors",kt("ignoredError",null,{numberStoredAsText:1,sqref:l}));if(h.length>0){v=ri(a,-1,"../drawings/drawing"+(e+1)+".xml",qn.DRAW);n[n.length]=kt("drawing",null,{"r:id":"rId"+v});o["!drawing"]=h}if(o["!comments"].length>0){v=ri(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",qn.VML);n[n.length]=kt("legacyDrawing",null,{"r:id":"rId"+v});o["!legacy"]=v}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function gv(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 mv(e,r,t){var a=ua(17+8*16);var n=(t["!rows"]||[])[e]||{};a._W(4,e);a._W(4,0);var i=320;if(n.hpx)i=Fl(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 bv(e,r,t,a){var n=mv(a,t,r);if(n.length>17||(r["!rows"]||[])[a])pa(e,0,n)}var wv=hn;var kv=un;function Tv(){}function Av(e,r){var t={};var a=e[e.l];++e.l;t.above=!(a&64);t.left=!(a&128);e.l+=18;t.name=Qa(e,r-19);return t}function Ev(e,r,t){if(t==null)t=ua(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);gn({auto:1},t);t._W(-4,-1);t._W(-4,-1);en(e,t);return t.slice(0,t.l)}function Cv(e){var r=Ka(e);return[r]}function yv(e,r,t){if(t==null)t=ua(8);return Ja(r,t)}function Sv(e){var r=qa(e);return[r]}function _v(e,r,t){if(t==null)t=ua(4);return Za(r,t)}function xv(e){var r=Ka(e);var t=e._R(1);return[r,t,"b"]}function Ov(e,r,t){if(t==null)t=ua(9);Ja(r,t);t._W(1,e.v?1:0);return t}function Rv(e){var r=qa(e);var t=e._R(1);return[r,t,"b"]}function Iv(e,r,t){if(t==null)t=ua(5);Za(r,t);t._W(1,e.v?1:0);return t}function Nv(e){var r=Ka(e);var t=e._R(1);return[r,t,"e"]}function Dv(e,r,t){if(t==null)t=ua(9);Ja(r,t);t._W(1,e.v);return t}function Fv(e){var r=qa(e);var t=e._R(1);return[r,t,"e"]}function Pv(e,r,t){if(t==null)t=ua(8);Za(r,t);t._W(1,e.v);t._W(2,0);t._W(1,0);return t}function Lv(e){var r=Ka(e);var t=e._R(4);return[r,t,"s"]}function Mv(e,r,t){if(t==null)t=ua(12);Ja(r,t);t._W(4,r.v);return t}function Uv(e){var r=qa(e);var t=e._R(4);return[r,t,"s"]}function Bv(e,r,t){if(t==null)t=ua(8);Za(r,t);t._W(4,r.v);return t}function Wv(e){var r=Ka(e);var t=dn(e);return[r,t,"n"]}function Hv(e,r,t){if(t==null)t=ua(16);Ja(r,t);vn(e.v,t);return t}function zv(e){var r=qa(e);var t=dn(e);return[r,t,"n"]}function Vv(e,r,t){if(t==null)t=ua(12);Za(r,t);vn(e.v,t);return t}function Gv(e){var r=Ka(e);var t=fn(e);return[r,t,"n"]}function jv(e,r,t){if(t==null)t=ua(12);Ja(r,t);on(e.v,t);return t}function Xv(e){var r=qa(e);var t=fn(e);return[r,t,"n"]}function $v(e,r,t){if(t==null)t=ua(8);Za(r,t);on(e.v,t);return t}function Yv(e){var r=Ka(e);var t=ja(e);return[r,t,"is"]}function Kv(e){var r=Ka(e);var t=Ha(e);return[r,t,"str"]}function Jv(e,r,t){if(t==null)t=ua(12+4*e.v.length);Ja(r,t);za(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function qv(e){var r=qa(e);var t=Ha(e);return[r,t,"str"]}function Zv(e,r,t){if(t==null)t=ua(8+4*e.v.length);Za(r,t);za(e.v,t);return t.length>t.l?t.slice(0,t.l):t}function Qv(e,r,t){var a=e.l+r;var n=Ka(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"b"];if(t.cellFormula){e.l+=2;var f=bd(e,a-e.l,t);s[3]=fd(f,null,n,t.supbooks,t)}else e.l=a;return s}function ep(e,r,t){var a=e.l+r;var n=Ka(e);n.r=t["!row"];var i=e._R(1);var s=[n,i,"e"];if(t.cellFormula){e.l+=2;var f=bd(e,a-e.l,t);s[3]=fd(f,null,n,t.supbooks,t)}else e.l=a;return s}function rp(e,r,t){var a=e.l+r;var n=Ka(e);n.r=t["!row"];var i=dn(e);var s=[n,i,"n"];if(t.cellFormula){e.l+=2;var f=bd(e,a-e.l,t);s[3]=fd(f,null,n,t.supbooks,t)}else e.l=a;return s}function tp(e,r,t){var a=e.l+r;var n=Ka(e);n.r=t["!row"];var i=Ha(e);var s=[n,i,"str"];if(t.cellFormula){e.l+=2;var f=bd(e,a-e.l,t);s[3]=fd(f,null,n,t.supbooks,t)}else e.l=a;return s}var ap=hn;var np=un;function ip(e,r){if(r==null)r=ua(4);r._W(4,e);return r}function sp(e,r){var t=e.l+r;var a=hn(e,16);var n=rn(e);var i=Ha(e);var s=Ha(e);var f=Ha(e);e.l=t;var o={rfx:a,relId:n,loc:i,display:f};if(s)o.Tooltip=s;return o}function fp(e,r){var t=ua(50+4*(e[1].Target.length+(e[1].Tooltip||"").length));un({s:Oa(e[0]),e:Oa(e[0])},t);sn("rId"+r,t);var a=e[1].Target.indexOf("#");var n=a==-1?"":e[1].Target.slice(a+1);za(n||"",t);za(e[1].Tooltip||"",t);za("",t);return t.slice(0,t.l)}function op(){}function lp(e,r,t){var a=e.l+r;var n=ln(e,16);var i=e._R(1);var s=[n];s[2]=i;if(t.cellFormula){var f=md(e,a-e.l,t);s[1]=f}else e.l=a;return s}function cp(e,r,t){var a=e.l+r;var n=hn(e,16);var i=[n];if(t.cellFormula){var s=kd(e,a-e.l,t);i[1]=s;e.l=a}else e.l=a;return i}function hp(e,r,t){if(t==null)t=ua(18);var a=Nd(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 up=["left","right","top","bottom","header","footer"];function dp(e){var r={};up.forEach(function(t){r[t]=dn(e,8)});return r}function vp(e,r){if(r==null)r=ua(6*8);Dd(e);up.forEach(function(t){vn(e[t],r)});return r}function pp(e){var r=e._R(2);e.l+=28;return{RTL:r&32}}function gp(e,r,t){if(t==null)t=ua(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 mp(e){var r=ua(24);r._W(4,4);r._W(4,1);un(e,r);return r}function bp(e,r){if(r==null)r=ua(16*4+2);r._W(2,e.password?ll(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 wp(){}function kp(){}function Tp(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 v,p,m,b,w,k,T,A,E;var C=[];f.biff=12;f["!row"]=0;var y=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&&v.r<=R[0].e.r)if(w>=R[0].s.c&&w<=R[0].e.c){p.F=Na(R[0]);S=true}}if(!S&&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(!D){D=true;Rl(e.w/256)}Il(I[e.e+1])}break;case 161:o["!autofilter"]={ref:Na(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"]=Na(l||c);if(f.sheetRows&&o["!ref"]){var L=Da(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"]=C;if(I.length>0)o["!cols"]=I;if(N.length>0)o["!rows"]=N;return o}function Ap(e,r,t,a,n,i,s){if(r.v===undefined)return false;var f="";switch(r.t){case"b":f=r.v?"1":"0";break;case"d":r=br(r);r.z=r.z||X[14];r.v=fr(gr(r.v));r.t="n";break;case"n":;case"e":f=""+r.v;break;default:f=r.v;break;}var o={r:t,c:a};o.s=Fd(n.cellXfs,r,n);if(r.l)i["!links"].push([Ra(o),r.l]);if(r.c)i["!comments"].push([Ra(o),r.c]);switch(r.t){case"s":;case"str":if(n.bookSST){f=Id(n.Strings,r.v,n.revStrings);o.t="s";o.v=f;if(s)pa(e,18,Bv(r,o));else pa(e,7,Mv(r,o))}else{o.t="str";if(s)pa(e,17,Zv(r,o));else pa(e,6,Jv(r,o))}return true;case"n":if(r.v==(r.v|0)&&r.v>-1e3&&r.v<1e3){if(s)pa(e,13,$v(r,o));else pa(e,2,jv(r,o))}else{if(s)pa(e,16,Vv(r,o));else pa(e,5,Hv(r,o))}return true;case"b":o.t="b";if(s)pa(e,15,Iv(r,o));else pa(e,4,Ov(r,o));return true;case"e":o.t="e";if(s)pa(e,14,Pv(r,o));else pa(e,3,Dv(r,o));return true;}if(s)pa(e,12,_v(r,o));else pa(e,1,yv(r,o));return true}function Ep(e,r,t,a){var n=Da(r["!ref"]||"A1"),i,s="",f=[];pa(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=Ta(c);bv(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]=ya(u);i=f[u]+s;var d=o?(r[c]||[])[u]:r[i];if(!d){h=false;continue}h=Ap(e,d,c,u,a,r,h)}}pa(e,146)}function Cp(e,r){if(!r||!r["!merges"])return;pa(e,177,ip(r["!merges"].length));r["!merges"].forEach(function(r){pa(e,176,np(r))});pa(e,178)}function yp(e,r){if(!r||!r["!cols"])return;pa(e,390);r["!cols"].forEach(function(r,t){if(r)pa(e,60,hp(t,r))});pa(e,391)}function Sp(e,r){if(!r||!r["!ref"])return;pa(e,648);pa(e,649,mp(Da(r["!ref"])));pa(e,650)}function _p(e,r,t){r["!links"].forEach(function(r){if(!r[1].Target)return;var a=ri(t,-1,r[1].Target.replace(/#.*$/,""),qn.HLINK);pa(e,494,fp(r,a))});delete r["!links"]}function xp(e,r,t,a){if(r["!comments"].length>0){var n=ri(a,-1,"../drawings/vmlDrawing"+(t+1)+".vml",qn.VML);pa(e,551,sn("rId"+n));r["!legacy"]=n}}function Op(e,r,t,a){if(!r["!autofilter"])return;var n=r["!autofilter"];var i=typeof n.ref==="string"?n.ref:Na(n.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var s=t.Workbook.Names;var f=Ia(i);if(f.s.r==f.e.r){f.e.r=Ia(r["!ref"]).e.r;i=Na(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"]=[];pa(n,129);if(t.vbaraw||s["!outline"])pa(n,147,Ev(f,s["!outline"]));pa(n,148,kv(l));Rp(n,s,t.Workbook);Ip(n,s);yp(n,s,e,r,t);Ep(n,s,e,r,t);Np(n,s);Op(n,s,t,e);Cp(n,s);_p(n,s,a);if(s["!margins"])pa(n,476,vp(s["!margins"]));if(!r||r.ignoreEC||r.ignoreEC==void 0)Sp(n,s);xp(n,s,e,a);pa(n,130);return n.end()}function Fp(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=Yr((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 Pp(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=Fp(e);c.s.r=c.s.c=0;c.e.c=f;l=ya(f);r[0].forEach(function(e,t){s[l+Ta(t)]={t:"n",v:e,z:r[1]};o=t});if(c.e.r0)s["!ref"]=Na(c);return s}function Lp(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(jd);if(f)Jd(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 Mp(e,r,t,a){var n=[Mr,kt("chartsheet",null,{xmlns:St[0],"xmlns:r":yt.r})];n[n.length]=kt("drawing",null,{"r:id":"rId1"});ri(a,-1,"../drawings/drawing"+(e+1)+".xml",qn.DRAW);if(n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function Up(e,r){e.l+=10;var t=Ha(e,r-10);return{name:t}}function Bp(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;da(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}function Wp(){var e=va();pa(e,129);pa(e,130);return e.end()}var Hp=[["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 zp=[["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 Vp=[];var Gp=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function jp(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]]=nt(a[i[0]]);break;case"int":if(typeof a[i[0]]=="string")a[i[0]]=parseInt(a[i[0]],10);break;}}}}function Xp(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]]=nt(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function $p(e){Xp(e.WBProps,Hp);Xp(e.CalcPr,Gp);jp(e.WBView,zp);jp(e.Sheets,Vp);Od.date1904=nt(e.WBProps.date1904)}function Yp(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return nt(e.Workbook.WBProps.date1904)?"true":"false"}var Kp="][*?/\\".split("");function Jp(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;Kp.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function qp(e,r,t){e.forEach(function(a,n){Jp(a);for(var i=0;i22)throw new Error("Bad Code Name: Worksheet"+s)}})}function Zp(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||[];qp(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":Hp.forEach(function(e){if(c[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=nt(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=lt(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=Yr(lt(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){Hp.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]=kt("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:qr(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]=kt("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]=kt("definedName",qr(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function tg(e,r){var t={};t.Hidden=e._R(4);t.iTabID=e._R(4);t.strRelID=nn(e,r-8);t.name=Ha(e);return t}function ag(e,r){if(!r)r=ua(127);r._W(4,e.Hidden);r._W(4,e.iTabID);sn(e.strRelID,r);za(e.name.slice(0,31),r);return r.length>r.l?r.slice(0,r.l):r}function ng(e,r){var t={};var a=e._R(4);t.defaultThemeVersion=e._R(4);var n=r>8?Ha(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 ig(e,r){if(!r)r=ua(72);var t=0;if(e){if(e.filterPrivacy)t|=8}r._W(4,t);r._W(4,0);en(e&&e.CodeName||"ThisWorkbook",r);return r.slice(0,r.l)}function sg(e,r){var t={};e._R(4);t.ArchID=e._R(4);e.l+=r-8;return t}function fg(e,r,t){var a=e.l+r;e.l+=4;e.l+=1;var n=e._R(4);var i=an(e);var s=wd(e,0,t);var f=rn(e);e.l=a;var o={Name:i,Ptg:s};if(n<268435455)o.Sheet=n;if(f)o.Comment=f;return o}function og(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=[];gm[16]={n:"BrtFRTArchID$",f:sg};da(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=fd(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);$p(t);t.Names=i;t.supbooks=s;return t}function lg(e,r){pa(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]};pa(e,156,ag(n))}pa(e,144)}function cg(r,t){if(!t)t=ua(127);for(var a=0;a!=4;++a)t._W(4,0);za("SheetJS",t);za(e.version,t);za(e.version,t);za("7262",t);return t.length>t.l?t.slice(0,t.l):t}function hg(e,r){if(!r)r=ua(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 ug(e,r){if(!r.Workbook||!r.Workbook.Sheets)return;var t=r.Workbook.Sheets;var a=0,n=-1,i=-1;for(;an)return;pa(e,135);pa(e,158,hg(n));pa(e,136)}function dg(e,r){var t=va();pa(t,131);pa(t,128,cg());pa(t,153,ig(e.Workbook&&e.Workbook.WBProps||null));ug(t,e,r);lg(t,e,r);pa(t,132);return t.end()}function vg(e,r,t){if(r.slice(-4)===".bin")return og(e,t);return eg(e,t)}function pg(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return Tp(e,a,t,n,i,s,f);return Yd(e,a,t,n,i,s,f)}function gg(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return Bp(e,a,t,n,i,s,f);return Lp(e,a,t,n,i,s,f)}function mg(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return Ch(e,a,t,n,i,s,f);return yh(e,a,t,n,i,s,f)}function bg(e,r,t,a,n,i,s,f){if(r.slice(-4)===".bin")return Ah(e,a,t,n,i,s,f);return Eh(e,a,t,n,i,s,f)}function wg(e,r,t,a){if(r.slice(-4)===".bin")return lc(e,t,a);return Xl(e,t,a)}function kg(e,r,t){return Rc(e,t)}function Tg(e,r,t){if(r.slice(-4)===".bin")return Vo(e,t);return Bo(e,t)}function Ag(e,r,t){if(r.slice(-4)===".bin")return gh(e,t);return sh(e,t)}function Eg(e,r,t){if(r.slice(-4)===".bin")return Qc(e,r,t);return qc(e,r,t)}function Cg(e,r,t,a){if(t.slice(-4)===".bin")return rh(e,r,t,a);return eh(e,r,t,a)}function yg(e,r,t){if(r.slice(-4)===".bin")return $c(e,r,t);return Kc(e,r,t)}function Sg(e,r,t){return(r.slice(-4)===".bin"?dg:rg)(e,t)}function _g(e,r,t,a,n){return(r.slice(-4)===".bin"?Dp:pv)(e,t,a,n)}function xg(e,r,t,a,n){return(r.slice(-4)===".bin"?Wp:Mp)(e,t,a,n)}function Og(e,r,t){return(r.slice(-4)===".bin"?kc:$l)(e,t)}function Rg(e,r,t){return(r.slice(-4)===".bin"?Xo:Ho)(e,t)}function Ig(e,r,t){return(r.slice(-4)===".bin"?mh:fh)(e,t)}function Ng(e){return(e.slice(-4)===".bin"?Yc:Jc)()}var Dg=/([\w:]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var Fg=/([\w:]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;function Pg(e,r){var t=e.split(/\s+/);var a=[];if(!r)a[0]=t[0];if(t.length===1)return a;var n=e.match(Dg),i,s,f,o;if(n)for(o=0;o!=n.length;++o){i=n[o].match(Fg);if((s=i[1].indexOf(":"))===-1)a[i[1]]=i[2].slice(1,i[2].length-1);else{if(i[1].slice(0,6)==="xmlns:")f="xmlns"+i[1].slice(6);else f=i[1].slice(s+1);a[f]=i[2].slice(1,i[2].length-1)}}return a}function Lg(e){var r=e.split(/\s+/);var t={};if(r.length===1)return t;var a=e.match(Dg),n,i,s,f;if(a)for(f=0;f!=a.length;++f){n=a[f].match(Fg);if((i=n[1].indexOf(":"))===-1)t[n[1]]=n[2].slice(1,n[2].length-1);else{if(n[1].slice(0,6)==="xmlns:")s="xmlns"+n[1].slice(6);else s=n[1].slice(i+1);t[s]=n[2].slice(1,n[2].length-1)}}return t}var Mg;function Ug(e,r){var t=Mg[e]||Yr(e);if(t==="General")return fe(r);return Be(t,r)}function Bg(e,r,t,a){var n=a;switch((t[0].match(/dt:dt="([\w.]+)"/)||["",""])[1]){case"boolean":n=nt(a);break;case"i2":;case"int":n=parseInt(a,10);break;case"r4":;case"float":n=parseFloat(a);break;case"date":;case"dateTime.tz":n=gr(a);break;case"i8":;case"string":;case"fixed":;case"uuid":;case"bin.base64":break;default:throw new Error("bad custprop:"+t[0]);}e[Yr(r)]=n}function Wg(e,r,t){if(e.t==="z")return;if(!t||t.cellText!==false)try{if(e.t==="e"){e.w=e.w||Gn[e.v]}else if(r==="General"){if(e.t==="n"){if((e.v|0)===e.v)e.w=e.v.toString(10);else e.w=se(e.v)}else e.w=fe(e.v)}else e.w=Ug(r||"General",e.v)}catch(a){if(t.WTF)throw a}try{var n=Mg[r]||r||"General";if(t.cellNF)e.z=n;if(t.cellDates&&e.t=="n"&&Fe(n)){var i=q(e.v);if(i){e.t="d";e.v=new Date(i.y,i.m-1,i.d,i.H,i.M,i.S,i.u)}}}catch(a){if(t.WTF)throw a}}function Hg(e,r,t){if(t.cellStyles){if(r.Interior){var a=r.Interior;if(a.Pattern)a.patternType=Ll[a.Pattern]||a.Pattern}}e[r.ID]=r}function zg(e,r,t,a,n,i,s,f,o,l){var c="General",h=a.StyleID,u={};l=l||{};var d=[];var v=0;if(h===undefined&&f)h=f.StyleID;if(h===undefined&&s)h=s.StyleID;while(i[h]!==undefined){if(i[h].nf)c=i[h].nf;if(i[h].Interior)d.push(i[h].Interior);if(!i[h].Parent)break;h=i[h].Parent}switch(t.Type){case"Boolean":a.t="b";a.v=nt(e);break;case"String":a.t="s";a.r=tt(Yr(e));a.v=e.indexOf("<")>-1?Yr(r||e).replace(/<.*?>/g,""):a.r;break;case"DateTime":if(e.slice(-1)!="Z")e+="Z";a.v=(gr(e)-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);if(a.v!==a.v)a.v=Yr(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=jn[e];if(l.cellText!==false)a.w=e;break;default:if(e==""&&r==""){a.t="z"}else{a.t="s";a.v=tt(r||e)}break;}Wg(a,c,l);if(l.cellFormula!==false){if(a.Formula){var p=Yr(a.Formula);if(p.charCodeAt(0)==61)p=p.slice(1);a.f=Sh(p,n);delete a.Formula;if(a.ArrayRange=="RC")a.F=Sh("RC:RC",n);else if(a.ArrayRange){a.F=Sh(a.ArrayRange,n);o.push([Da(a.F),a.F])}}else{for(v=0;v=o[v][0].s.r&&n.r<=o[v][0].e.r)if(n.c>=o[v][0].s.c&&n.c<=o[v][0].e.c)a.F=o[v][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 Vg(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 Gg(e,r){var t=r||{};ze();var n=d(Et(e));if(t.type=="binary"||t.type=="array"||t.type=="base64"){if(typeof a!=="undefined")n=a.utils.decode(65001,c(n));else n=lt(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=br(t);f.type="string";return So.to_workbook(n,f)}if(i.indexOf("=0)s=true});if(s)return Hm(n,t);Mg={"General Number":"General","General Date":X[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":X[15],"Short Date":X[14],"Long Time":X[19],"Medium Time":X[18],"Short Time":X[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:X[2],Standard:X[4],Percent:X[10],Scientific:X[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={},v=[],p=t.dense?[]:{},m="";var b={},w={};var k=Pg(''),T=0;var A=0,E=0;var C={s:{r:2e6,c:2e6},e:{r:0,c:0}};var y={},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}},j={};Ct.lastIndex=0;n=n.replace(//gm,"");var $="";while(o=Ct.exec(n))switch(o[3]=($=o[3]).toLowerCase()){case"data":if($=="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]==="/")zg(n.slice(T,o.index),_,k,l[l.length-1][0]=="comment"?P:b,{c:A,r:E},y,L[A],w,B,t);else{_="";k=Pg(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!==undefined){if(t.dense){if(!p[E])p[E]=[];p[E][A]=b}else p[ya(A)+Ta(E)]=b}if(b.HRef){b.l={Target:Yr(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);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 Y=A;Y<=z;++Y){for(var K=E;K<=V;++K){if(Y>A||K>E){if(t.dense){if(!p[K])p[K]=[];p[K][Y]={t:"z"}}else p[ya(Y)+Ta(K)]={t:"z"}}}}A=z+1}else++A}else{b=Lg(o[0]);if(b.Index)A=+b.Index-1;if(AC.e.c)C.e.c=A;if(o[0].slice(-2)==="/>")++A;F=[]}break;case"row":if(o[1]==="/"||o[0].slice(-2)==="/>"){if(EC.e.r)C.e.r=E;if(o[0].slice(-2)==="/>"){w=Pg(o[0]);if(w.Index)E=+w.Index-1}A=0;++E}else{w=Pg(o[0]);if(w.Index)E=+w.Index-1;H={};if(w.AutoFitHeight=="0"||w.Height){H.hpx=parseInt(w.Height,10);H.hpt=Fl(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("|"));v.push(m);if(C.s.r<=C.e.r&&C.s.c<=C.e.c){p["!ref"]=Na(C);if(t.sheetRows&&t.sheetRows<=C.e.r){p["!fullref"]=p["!ref"];C.e.r=t.sheetRows-1;p["!ref"]=Na(C)}}if(O.length)p["!merges"]=O;if(L.length>0)p["!cols"]=L;if(W.length>0)p["!rows"]=W;u[m]=p}else{C={s:{r:2e6,c:2e6},e:{r:0,c:0}};E=A=0;l.push([o[3],false]);h=Pg(o[0]);m=Yr(h.Name);p=t.dense?[]:{};O=[];B=[];W=[];j={name:m,Hidden:0};G.Sheets.push(j)}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]==="/")Hg(y,S,t);else S=Pg(o[0]);break;case"numberformat":S.nf=Yr(Pg(o[0]).Format||"General");if(Mg[S.nf])S.nf=Mg[S.nf];for(var J=0;J!=392;++J)if(X[J]==S.nf)break;if(J==392)for(J=57;J!=392;++J)if(X[J]==null){We(S.nf,J);break}break;case"column":if(l[l.length-1][0]!=="table")break;M=Pg(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;yl=Al;for(var q=0;q0)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=Pg(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]==="/")Ci(R,$,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("|"));Vg(P);F.push(P)}else{l.push([o[3],false]);h=Pg(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=Pg(o[0]);p["!autofilter"]={ref:Sh(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 Qm(n,t);if(l.length==0&&o[3]=="uof")return Qm(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":j.Hidden=1;break;case"SheetVeryHidden":j.Hidden=2;break;}else N=o.index+o[0].length;break;case"header":if(!p["!margins"])Dd(p["!margins"]={},"xlml");if(!isNaN(+Gr(o[0]).Margin))p["!margins"].header=+Gr(o[0]).Margin;break;case"footer":if(!p["!margins"])Dd(p["!margins"]={},"xlml");if(!isNaN(+Gr(o[0]).Margin))p["!margins"].footer=+Gr(o[0]).Margin;break;case"pagemargins":var ae=Gr(o[0]);if(!p["!margins"])Dd(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(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]==="/")Bg(I,$,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=v;ne.Workbook=G;ne.SSF=br(X);ne.Props=R;ne.Custprops=I;return ne}function jg(e,r){Wb(r=r||{});switch(r.type||"base64"){case"base64":return Gg(k(e),r);case"binary":;case"buffer":;case"file":return Gg(e,r);case"array":return Gg(_(e),r);}}function Xg(e,r){var t=[];if(e.Props)t.push(yi(e.Props,r));if(e.Custprops)t.push(Si(e.Props,e.Custprops,r));return t.join("")}function $g(){return""}function Yg(e,r){var t=[''];r.cellXfs.forEach(function(e,r){var a=[];a.push(kt("NumberFormat",null,{"ss:Format":qr(X[e.numFmtId])}));var n={"ss:ID":"s"+(21+r)};t.push(kt("Style",a.join(""),n))});return kt("Styles",t.join(""))}function Kg(e){return kt("NamedRange",null,{"ss:Name":e.Name,"ss:RefersTo":"="+xh(e.Ref,{r:0,c:0})})}function Jg(e){if(!((e||{}).Workbook||{}).Names)return"";var r=e.Workbook.Names;var t=[];for(var a=0;a");if(e["!margins"].header)n.push(kt("Header",null,{"x:Margin":e["!margins"].header}));if(e["!margins"].footer)n.push(kt("Footer",null,{"x:Margin":e["!margins"].footer}));n.push(kt("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(kt("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(bt("ProtectContents","True"));if(e["!protect"].objects)n.push(bt("ProtectObjects","True"));if(e["!protect"].scenarios)n.push(bt("ProtectScenarios","True"));if(e["!protect"].selectLockedCells!=null&&!e["!protect"].selectLockedCells)n.push(bt("EnableSelection","NoSelection"));else if(e["!protect"].selectUnlockedCells!=null&&!e["!protect"].selectUnlockedCells)n.push(bt("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 kt("WorksheetOptions",n.join(""),{xmlns:_t.x})}function Qg(e){return e.map(function(e){var r=at(e.t||"");var t=kt("ss:Data",r,{xmlns:"http://www.w3.org/TR/REC-html40"});return kt("Comment",t,{"ss:Author":e.a})}).join("")}function em(e,r,t,a,n,i,s){if(!e||e.v==undefined&&e.f==undefined)return"";var f={};if(e.f)f["ss:Formula"]="="+qr(xh(e.f,s));if(e.F&&e.F.slice(0,r.length)==r){var o=Oa(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"]=qr(e.l.Target);if(e.l.Tooltip)f["x:HRefScreenTip"]=qr(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=Gn[e.v];break;case"d":h="DateTime";u=new Date(e.v).toISOString();if(e.z==null)e.z=e.z||X[14];break;case"s":h="String";u=rt(e.v||"");break;}var d=Fd(a.cellXfs,e,a);f["ss:StyleID"]="s"+(21+d);f["ss:Index"]=s.c+1;var v=e.v!=null?u:"";var p=e.t=="z"?"":''+v+"";if((e.c||[]).length>0)p+=Qg(e.c);return kt("Cell",p,f)}function rm(e,r){var t='"}function tm(e,r,t,a){if(!e["!ref"])return"";var n=Da(e["!ref"]);var i=e["!merges"]||[],s=0;var f=[];if(e["!cols"])e["!cols"].forEach(function(e,r){Il(e);var t=!!e.width;var a=Nd(r,e);var n={"ss:Index":r+1};if(t)n["ss:Width"]=Sl(a.width);if(e.hidden)n["ss:Hidden"]="1";f.push(kt("Column",null,n))});var o=Array.isArray(e);for(var l=n.s.r;l<=n.e.r;++l){var c=[rm(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 am(e,r,t){var a=[];var n=t.SheetNames[e];var i=t.Sheets[n];var s=i?qg(i,r,e,t):"";if(s.length>0)a.push(""+s+"");s=i?tm(i,r,e,t):"";if(s.length>0)a.push(""+s+"
");a.push(Zg(i,r,e,t));return a.join("")}function nm(e,r){if(!r)r={};if(!e.SSF)e.SSF=br(X);if(e.SSF){ze();He(e.SSF);r.revssf=nr(e.SSF);r.revssf[e.SSF[65535]]=0;r.ssf=e.SSF;r.cellXfs=[];Fd(r.cellXfs,{},{revssf:{General:0}})}var t=[];t.push(Xg(e,r));t.push($g(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=Tn(t);a=t._R(4);if(a==0||a>40)return r;t.l-=4;r.Reserved2=t._R(0,"lpwstr")}var sm=[60,1084,2066,2165,2175];function fm(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=Qt(t,t.l),l=mm[o];var c=0;while(l!=null&&sm.indexOf(o)>-1){i=Qt(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=mm[o=Qt(t,t.l)]}var h=R(s);ca(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=Ra(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)!==$)throw new Error("rt mismatch: "+J+"!="+$);if(K.r==12){e.l+=10;Y-=10}}var q={};if($===10)q=K.f(e,Y,R);else q=fm($,K,e,Y,R);if(B==0&&[9,521,1033,2057].indexOf(U)===-1)continue;switch($){case 34:t.opts.Date1904=y.WBProps.date1904=q;break;case 134:t.opts.WriteProtect=true;break;case 47:if(!R.enc)e.l=0;R.enc=q;if(!r.password)throw new Error("File is password-protected");if(q.valid==null)throw new Error("Encryption scheme unsupported");if(!q.valid)throw new Error("Password is incorrect");break;case 92:R.lastuser=q;break;case 66:var Z=Number(q);switch(Z){case 21010:Z=1200;break;case 32768:Z=1e4;break;case 32769:Z=1252;break;}o(R.codepage=Z);G=true;break;case 317:R.rrtabid=q;break;case 25:R.winlocked=q;break;case 439:t.opts["RefreshAll"]=q;break;case 12:t.opts["CalcCount"]=q;break;case 16:t.opts["CalcDelta"]=q;break;case 17: +t.opts["CalcIter"]=q;break;case 13:t.opts["CalcMode"]=q;break;case 14:t.opts["CalcPrecision"]=q;break;case 95:t.opts["CalcSaveRecalc"]=q;break;case 15:R.CalcRefMode=q;break;case 2211:t.opts.FullCalc=q;break;case 129:if(q.fDialog)n["!type"]="dialog";if(!q.fBelow)(n["!outline"]||(n["!outline"]={})).above=true;if(!q.fRight)(n["!outline"]||(n["!outline"]={})).left=true;break;case 224:E.push(q);break;case 430:M.push([q]);M[M.length-1].XTI=[];break;case 35:;case 547:M[M.length-1].push(q);break;case 24:;case 536:V={Name:q.Name,Ref:fd(q.rgce,s,null,M,R)};if(q.itab>0)V.Sheet=q.itab-1;M.names.push(V);if(!M[0]){M[0]=[];M[0].XTI=[]}M[M.length-1].push(q);if(q.Name=="_xlnm._FilterDatabase"&&q.itab>0)if(q.rgce&&q.rgce[0]&&q.rgce[0][0]&&q.rgce[0][0][0]=="PtgArea3d")z[q.itab-1]={ref:Na(q.rgce[0][0][1][2])};break;case 22:R.ExternCount=q;break;case 23:if(M.length==0){M[0]=[];M[0].XTI=[]}M[M.length-1].XTI=M[M.length-1].XTI.concat(q);M.XTI=M.XTI.concat(q);break;case 2196:if(R.biff<8)break;if(V!=null)V.Comment=q[1];break;case 18:n["!protect"]=q;break;case 19:if(q!==0&&R.WTF)console.error("Password verifier: "+q);break;case 133:{i[q.pos]=q;R.snames.push(q.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"]=Na(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"]=Na(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;y.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}[$]||{512:2,768:3,1024:4,1280:5,1536:8,2:2,7:2}[q.BIFFVer]||8;R.biffguess=q.BIFFVer==0;if(q.BIFFVer==0&&q.dt==4096){R.biff=5;G=true;o(R.codepage=28591)}if(R.biff==8&&q.BIFFVer==0&&q.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||q.BIFFVer==0&&q.dt==4096){if(c==="")c="Sheet1";s={s:{r:0,c:0},e:{r:0,c:0}};var ee={pos:e.l-Y,name:c};i[ee.pos]=ee;R.snames.push(c)}else c=(i[j]||{name:""}).name;if(q.dt==32)n["!type"]="chart";if(q.dt==64)n["!type"]="macro";N=[];D=[];R.arrayf=k=[];F=[];P=[];L=false;S={Hidden:(i[j]||{hs:0}).hs,name:c}}break;case 515:;case 3:;case 2:{if(n["!type"]=="chart")if(r.dense?(n[q.r]||[])[q.c]:n[Ra({c:q.c,r:q.r})])++q.c;T={ixfe:q.ixfe,XF:E[q.ixfe]||{},v:q.val,t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];om(T,r,t.opts.Date1904);O({c:q.c,r:q.r},T,r)}break;case 5:;case 517:{T={ixfe:q.ixfe,XF:E[q.ixfe],v:q.val,t:q.t};if(W>0)T.z=H[T.ixfe>>8&63];om(T,r,t.opts.Date1904);O({c:q.c,r:q.r},T,r)}break;case 638:{T={ixfe:q.ixfe,XF:E[q.ixfe],v:q.rknum,t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];om(T,r,t.opts.Date1904);O({c:q.c,r:q.r},T,r)}break;case 189:{for(var re=q.c;re<=q.C;++re){var te=q.rkrec[re-q.c][0];T={ixfe:te,XF:E[te],v:q.rkrec[re-q.c][1],t:"n"};if(W>0)T.z=H[T.ixfe>>8&63];om(T,r,t.opts.Date1904);O({c:re,r:q.r},T,r)}}break;case 6:;case 518:;case 1030:{if(q.val=="String"){f=q;break}T=lm(q.val,q.cell.ixfe,q.tt);T.XF=E[T.ixfe];if(r.cellFormula){var ae=q.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=Ra({r:ne,c:ie});if(w[se])T.f=""+fd(q.formula,s,q.cell,M,R);else T.F=((r.dense?(n[ne]||[])[ie]:n[se])||{}).F}else T.f=""+fd(q.formula,s,q.cell,M,R)}if(W>0)T.z=H[T.ixfe>>8&63];om(T,r,t.opts.Date1904);O(q.cell,T,r);f=q}break;case 7:;case 519:{if(f){f.val=q;T=lm(q,f.cell.ixfe,"s");T.XF=E[T.ixfe];if(r.cellFormula){T.f=""+fd(f.formula,s,f.cell,M,R)}if(W>0)T.z=H[T.ixfe>>8&63];om(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(q);var fe=Ra(q[0].s);v=r.dense?(n[q[0].s.r]||[])[q[0].s.c]:n[fe];if(r.cellFormula&&v){if(!f)break;if(!fe||!v)break;v.f=""+fd(q[1],s,q[0],M,R);v.F=Na(q[0])}}break;case 1212:{if(!r.cellFormula)break;if(d){if(!f)break;w[Ra(f.cell)]=q[0];v=r.dense?(n[f.cell.r]||[])[f.cell.c]:n[Ra(f.cell)];(v||{}).f=""+fd(q[0],s,u,M,R)}}break;case 253:T=lm(l[q.isst].t,q.ixfe,"s");if(l[q.isst].h)T.h=l[q.isst].h;T.XF=E[T.ixfe];if(W>0)T.z=H[T.ixfe>>8&63];om(T,r,t.opts.Date1904);O({c:q.c,r:q.r},T,r);break;case 513:if(r.sheetStubs){T={ixfe:q.ixfe,XF:E[q.ixfe],t:"z"};if(W>0)T.z=H[T.ixfe>>8&63];om(T,r,t.opts.Date1904);O({c:q.c,r:q.r},T,r)}break;case 190:if(r.sheetStubs){for(var oe=q.c;oe<=q.C;++oe){var le=q.ixfe[oe-q.c];T={ixfe:le,XF:E[le],t:"z"};if(W>0)T.z=H[T.ixfe>>8&63];om(T,r,t.opts.Date1904);O({c:oe,r:q.r},T,r)}}break;case 214:;case 516:;case 4:T=lm(q.val,q.ixfe,"s");T.XF=E[T.ixfe];if(W>0)T.z=H[T.ixfe>>8&63];om(T,r,t.opts.Date1904);O({c:q.c,r:q.r},T,r);break;case 0:;case 512:{if(B===1)s=q}break;case 252:{l=q}break;case 1054:{if(R.biff==4){H[W++]=q[1];for(var ce=0;ce=163)We(q[1],W+163)}else We(q[1],q[0])}break;case 30:{H[W++]=q;for(var he=0;he=163)We(q,W+163)}break;case 229:N=N.concat(q);break;case 93:D[q.cmo[0]]=R.lastobj=q;break;case 438:R.lastobj.TxO=q;break;case 127:R.lastobj.ImData=q;break;case 440:{for(b=q[0].s.r;b<=q[0].e.r;++b)for(m=q[0].s.c;m<=q[0].e.c;++m){v=r.dense?(n[b]||[])[m]:n[Ra({c:m,r:b})];if(v)v.l=q[1]}}break;case 2048:{for(b=q[0].s.r;b<=q[0].e.r;++b)for(m=q[0].s.c;m<=q[0].e.c;++m){v=r.dense?(n[b]||[])[m]:n[Ra({c:m,r:b})];if(v&&v.l)v.l.Tooltip=q[1]}}break;case 28:{if(R.biff<=5&&R.biff>=2)break;v=r.dense?(n[q[0].r]||[])[q[0].c]:n[Ra(q[0])];var ue=D[q[2]];if(!v){if(r.dense){if(!n[q[0].r])n[q[0].r]=[];v=n[q[0].r][q[0].c]={t:"z"}}else{v=n[Ra(q[0])]={t:"z"}}s.e.r=Math.max(s.e.r,q[0].r);s.s.r=Math.min(s.s.r,q[0].r);s.e.c=Math.max(s.e.c,q[0].c);s.s.c=Math.min(s.s.c,q[0].c)}if(!v.c)v.c=[];p={a:q[1],t:ue.TxO.t};v.c.push(p)}break;case 2173:Bc(E[q.ixfe],q.ext);break;case 125:{if(!R.cellStyles)break;while(q.e>=q.s){F[q.e--]={width:q.w/256,level:q.level||0,hidden:!!(q.flags&1)};if(!L){L=true;Rl(q.w/256)}Il(F[q.e+1])}}break;case 520:{var de={};if(q.level!=null){P[q.r]=de;de.level=q.level}if(q.hidden){P[q.r]=de;de.hidden=true}if(q.hpt){P[q.r]=de;de.hpt=q.hpt;de.hpx=Pl(q.hpt)}}break;case 38:;case 39:;case 40:;case 41:if(!n["!margins"])Dd(n["!margins"]={});n["!margins"][{38:"left",39:"right",40:"top",41:"bottom"}[$]]=q;break;case 161:if(!n["!margins"])Dd(n["!margins"]={});n["!margins"].header=q.header;n["!margins"].footer=q.footer;break;case 574:if(q.RTL)y.Views[0].RTL=true;break;case 146:C=q;break;case 2198:I=q;break;case 140:A=q;break;case 442:{if(!c)y.WBProps.CodeName=q||"ThisWorkbook";else S.CodeName=q||S.name}break;}}else{if(!K)console.error("Missing Info for XLS Record 0x"+$.toString(16));e.l+=Y}}t.SheetNames=rr(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=br(X);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)y.Names=M.names;t.Workbook=y;return t}var hm={SI:"e0859ff2f94f6810ab9108002b27b3d9",DSI:"02d5cdd59c2e1b10939708002b2cf9ae",UDI:"05d5cdd59c2e1b10939708002b2cf9ae"};function um(e,r,t){var a=Ke.find(e,"/!DocumentSummaryInformation");if(a&&a.size>0)try{var n=$i(a,Mn,hm.DSI);for(var i in n)r[i]=n[i]}catch(s){if(t.WTF)throw s}var f=Ke.find(e,"/!SummaryInformation");if(f&&f.size>0)try{var o=$i(f,Un,hm.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){gi(r.HeadingPairs,r.TitlesOfParts,r,t);delete r.HeadingPairs;delete r.TitlesOfParts}}function dm(e,r){var t=[],a=[],n=[];var i=0,s;var f=tr(Mn,"n");var o=tr(Un,"n");if(e.Props){s=rr(e.Props);for(i=0;i-1||pi.indexOf(n[i][0])>-1)continue;if(n[i][1]==null)continue;l.push(n[i])}if(a.length)Ke.utils.cfb_add(r,"/SummaryInformation",Yi(a,hm.SI,o,Un));if(t.length||l.length)Ke.utils.cfb_add(r,"/DocumentSummaryInformation",Yi(t,hm.DSI,f,Mn,l.length?l:null,hm.UDI))}function vm(e,r){if(!r)r={};Wb(r);l();if(r.codepage)s(r.codepage);var t,a;if(e.FullPaths){if(Ke.find(e,"/encryption"))throw new Error("File is password-protected");t=Ke.find(e,"!CompObj");a=Ke.find(e,"/Workbook")||Ke.find(e,"/Book")}else{switch(r.type){case"base64":e=y(k(e));break;case"binary":e=y(e);break;case"buffer":break;case"array":if(!Array.isArray(e))e=Array.prototype.slice.call(e);break;}ca(e,0);a={content:e}}var n;var i;if(t)im(t);if(r.bookProps&&!r.bookSheets)n={};else{var f=T?"buffer":"array";if(a&&a.content)n=cm(a.content,r);else if((i=Ke.find(e,"PerfectOffice_MAIN"))&&i.content)n=xo.to_workbook(i.content,(r.type=f,r));else if((i=Ke.find(e,"NativeContent_MAIN"))&&i.content)n=xo.to_workbook(i.content,(r.type=f,r));else if((i=Ke.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&&Ke.find(e,"/_VBA_PROJECT_CUR/VBA/dir"))n.vbaraw=wh(e)}var o={};if(e.FullPaths)um(e,o,r);n.Props=n.Custprops=o;if(r.bookFiles)n.cfb=e;return n}function pm(e,r){var t=r||{};var a=Ke.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");}Ke.utils.cfb_add(a,n,Lm(e,t));if(t.biff==8&&(e.Props||e.Custprops))dm(e,a);if(t.biff==8&&e.vbaraw)kh(a,Ke.read(e.vbaraw,{type:typeof e.vbaraw=="string"?"binary":"buffer"}));return a}var gm={0:{f:gv},1:{f:Cv},2:{f:Gv},3:{f:Nv},4:{f:xv},5:{f:Wv},6:{f:Kv},7:{f:Lv},8:{f:tp},9:{f:rp},10:{f:Qv},11:{f:ep},12:{f:Sv},13:{f:Xv},14:{f:Fv},15:{f:Rv},16:{f:zv},17:{f:qv},18:{f:Uv},19:{f:ja},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:fg},40:{},42:{},43:{f:Jl},44:{f:Yl},45:{f:ec},46:{f:ic},47:{f:tc},48:{},49:{f:Ba},50:{},51:{f:zc},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:ao},62:{f:Yv},63:{f:Zc},64:{f:wp},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:ha,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:pp},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:Av},148:{f:wv,p:16},151:{f:op},152:{},153:{f:ng},154:{},155:{},156:{f:tg},157:{},158:{},159:{T:1,f:zo},160:{T:-1},161:{T:1,f:hn},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:ap},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:Wc},336:{T:-1},337:{f:jc,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:nn},357:{},358:{},359:{},360:{T:1},361:{},362:{f:Ff},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:lp},427:{f:cp},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:dp},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:Tv},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:sp},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:nn},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:vh},633:{T:1},634:{T:-1},635:{T:1,f:uh},636:{T:-1},637:{f:$a},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:Up},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:kp},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 mm={6:{f:vd},10:{f:Ki},12:{f:es},13:{f:es},14:{f:Zi},15:{f:Zi},16:{f:dn},17:{f:Zi},18:{f:Zi},19:{f:es},20:{f:Of},21:{f:Of},23:{f:Ff},24:{f:Df},25:{f:Zi},26:{},27:{},28:{f:Hf},29:{},34:{f:Zi},35:{f:If},38:{f:dn},39:{f:dn},40:{f:dn},41:{f:dn},42:{f:Zi},43:{f:Zi},47:{f:pl},49:{f:sf},51:{f:es},60:{},61:{f:ef},64:{f:Zi},65:{f:nf},66:{f:es},77:{},80:{},81:{},82:{},85:{f:es},89:{},90:{},91:{},92:{f:zs},93:{f:Gf},94:{},95:{f:Zi},96:{},97:{},99:{f:Zi},125:{f:ao},128:{f:Ef},129:{f:Gs},130:{f:es},131:{f:Zi},132:{f:Zi},133:{f:js},134:{},140:{f:Zf},141:{f:es},144:{},146:{f:ro},151:{},152:{},153:{},154:{},155:{},156:{f:es},157:{},158:{},160:{f:lo},161:{f:io},174:{},175:{},176:{},177:{},178:{},180:{},181:{},182:{},184:{},185:{},189:{f:bf},190:{f:wf},193:{f:Ki},197:{},198:{},199:{},200:{},201:{},202:{f:Zi},203:{},204:{},205:{},206:{},207:{},208:{},209:{},210:{},211:{},213:{},215:{},216:{},217:{},218:{f:es},220:{},221:{f:Zi},222:{},224:{f:Tf},225:{f:Hs},226:{f:Ki},227:{},229:{f:zf},233:{},235:{},236:{},237:{},239:{},240:{},241:{},242:{},244:{},245:{},246:{},247:{},248:{},249:{},251:{},252:{f:$s},253:{f:of},255:{f:Ks},256:{},259:{},290:{},311:{},312:{},315:{},317:{f:ts},318:{},319:{},320:{},330:{},331:{},333:{},334:{},335:{},336:{},337:{},338:{},339:{},340:{},351:{},352:{f:Zi},353:{f:Ki},401:{},402:{},403:{},404:{},405:{},406:{},407:{},408:{},425:{},426:{},427:{},428:{},429:{},430:{f:Rf},431:{f:Zi},432:{},433:{},434:{},437:{},438:{f:$f},439:{f:Zi},440:{f:Yf},441:{},442:{f:ls},443:{},444:{f:es},445:{},446:{},448:{f:Ki},449:{f:Zs,r:2},450:{f:Ki},512:{f:pf},513:{f:oo},515:{f:_f},516:{f:cf},517:{f:yf},519:{f:co},520:{f:Js},523:{},545:{f:Uf},549:{f:Qs},566:{},574:{f:tf},638:{f:mf},659:{},1048:{},1054:{f:uf},1084:{},1212:{f:Mf},2048:{f:Jf},2049:{},2050:{},2051:{},2052:{},2053:{},2054:{},2055:{},2056:{},2057:{f:Bs},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:Ki},2152:{},2154:{},2155:{},2156:{},2161:{},2162:{},2164:{},2165:{},2166:{},2167:{},2168:{},2169:{},2170:{},2171:{},2172:{f:to,r:12},2173:{f:Uc,r:12},2174:{},2175:{},2180:{},2181:{},2182:{},2183:{},2184:{},2185:{},2186:{},2187:{},2188:{f:Zi,r:12},2189:{},2190:{r:12},2191:{},2192:{},2194:{},2195:{},2196:{f:Lf,r:12},2197:{},2198:{f:Nc,r:12},2199:{},2200:{},2201:{},2202:{f:Bf,r:12},2203:{f:Ki},2204:{},2205:{},2206:{},2207:{},2211:{f:qs},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:es},4135:{},4146:{},4147:{},4148:{},4149:{},4154:{},4156:{},4157:{},4158:{},4159:{},4160:{},4161:{},4163:{},4164:{f:so},4165:{},4166:{},4168:{},4170:{},4171:{},4174:{},4175:{},4176:{},4177:{},4187:{},4188:{f:eo},4189:{},4191:{},4192:{},4193:{},4194:{},4195:{},4196:{},4197:{},4198:{},4199:{},4200:{},0:{f:pf},1:{},2:{f:go},3:{f:vo},4:{f:uo},5:{f:yf},7:{f:bo},8:{},9:{f:Bs},11:{},22:{f:es},30:{f:vf},31:{},32:{},33:{f:Uf},36:{},37:{f:Qs},50:{f:wo},62:{},52:{},67:{},68:{f:es},69:{},86:{},126:{},127:{f:ho},135:{},136:{},137:{},145:{},148:{},149:{},150:{},169:{},171:{},188:{},191:{},192:{},194:{},195:{},214:{f:ko},223:{},234:{},354:{},421:{},518:{f:vd},521:{f:Bs},536:{f:Df},547:{f:If},561:{},579:{},1030:{f:vd},1033:{f:Bs},1091:{},2157:{},2163:{},2177:{},2240:{},2241:{},2242:{},2243:{},2244:{},2245:{},2246:{},2247:{},2248:{},2249:{},2250:{},2251:{},2262:{r:12},29282:{}};function bm(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&&Jt(t))e.push(t)}function wm(e,r,t,a){var n=a||(t||[]).length||0;if(n<=8224)return bm(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)bm(e,2,mo(t,a,n));else bm(e,3,po(t,a,n));return;case"b":;case"e":bm(e,5,Tm(t,a,r.v,r.t));return;case"s":;case"str":bm(e,4,Am(t,a,(r.v||"").slice(0,255)));return;}bm(e,1,km(null,t,a))}function Cm(e,r,t,a){var n=Array.isArray(r);var i=Da(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=Na(i)}for(var l=i.s.r;l<=i.e.r;++l){f=Ta(l);for(var c=i.s.c;c<=i.e.c;++c){if(l===i.s.r)o[c]=ya(c);s=o[c]+f;var h=n?(r[l]||[])[c]:r[s];if(!h)continue;Em(e,h,l,c,a)}}}function ym(e,r){var t=r||{};if(g!=null&&t.dense==null)t.dense=g;var a=va();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)}bm(a,2057,Ws(t,16,r));bm(a,13,rs(1));bm(a,12,rs(100));bm(a,15,Qi(true));bm(a,17,Qi(false));bm(a,16,vn(.001));bm(a,95,Qi(true));bm(a,42,Qi(false));bm(a,43,Qi(false));bm(a,130,rs(1));bm(a,128,Cf([0,0]));bm(a,131,Qi(false));bm(a,132,Qi(false));if(l)Im(a,i["!cols"]);bm(a,512,gf(d,r));if(l)i["!links"]=[];for(var p=d.s.r;p<=d.e.r;++p){h=Ta(p);for(var g=d.s.c;g<=d.e.c;++g){if(p===d.s.r)u[g]=ya(g);c=u[g]+h;var m=o?(i[p]||[])[g]:i[c];if(!m)continue;Nm(a,m,p,g,r);if(l&&m.l)i["!links"].push([c,m.l])}}var b=f.CodeName||f.name||n;if(l)bm(a,574,af((s.Views||[])[0]));if(l&&(i["!merges"]||[]).length)bm(a,229,Vf(i["!merges"]));if(l)Rm(a,i);bm(a,442,hs(b,r));if(l)xm(a,i);bm(a,10);return a.end()}function Fm(e,r,t){var a=va();var n=(e||{}).Workbook||{};var i=n.Sheets||[];var s=n.WBProps||{};var f=t.biff==8,o=t.biff==5;bm(a,2057,Ws(e,5,t));if(t.bookType=="xla")bm(a,135);bm(a,225,f?rs(1200):null);bm(a,193,Ji(2));if(o)bm(a,191);if(o)bm(a,192);bm(a,226);bm(a,92,Vs("SheetJS",t));bm(a,66,rs(f?1200:1252));if(f)bm(a,353,rs(0));if(f)bm(a,448);bm(a,317,fo(e.SheetNames.length));if(f&&e.vbaraw)bm(a,211);if(f&&e.vbaraw){var l=s.CodeName||"ThisWorkbook";bm(a,442,hs(l,t))}bm(a,156,rs(17));bm(a,25,Qi(false));bm(a,18,Qi(false));bm(a,19,rs(0));if(f)bm(a,431,Qi(false));if(f)bm(a,444,rs(0));bm(a,61,rf(t));bm(a,64,Qi(false));bm(a,141,rs(0));bm(a,34,Qi(Yp(e)=="true"));bm(a,14,Qi(true));if(f)bm(a,439,Qi(false));bm(a,218,rs(0));Sm(a,e,t);_m(a,e.SSF,t);Om(a,t);if(f)bm(a,352,Qi(false));var c=a.end();var h=va();if(f)bm(h,140,Qf());if(f&&t.Strings)wm(h,252,Ys(t.Strings,t));bm(h,10);var u=h.end();var d=va();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 Pm(e,r);case 4:;case 3:;case 2:return ym(e,r);}throw new Error("invalid type "+i.bookType+" for BIFF")}function Mm(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=Er(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 v=[];for(s=0;s/i);for(f=0;f"))>-1)k=k.slice(T+1);for(var A=0;A")));u=C.colspan?+C.colspan:1;if((h=+C.rowspan)>1||u>1)v.push({s:{r:l,c:c},e:{r:l+(h||1)-1,c:c+u-1}});var y=C.t||C["data-t"]||"";if(!k.length){c+=u;continue}k=ut(k);if(d.s.r>l)d.s.r=l;if(d.e.rc)d.s.c=c;if(d.e.ct||n[l].s.c>s)continue;if(n[l].e.r1)d.rowspan=f;if(o>1)d.colspan=o;if(a.editable)u=''+u+"";else if(h){d["data-t"]=h&&h.t||"z";if(h.v!=null)d["data-v"]=h.v;if(h.z!=null)d["data-z"]=h.z;if(h.l&&(h.l.Target||"#").charAt(0)!="#")u=''+u+""}d.id=(a.id||"sjs")+"-"+c;i.push(kt("td",u,d))}var v="";return v+i.join("")+""}var Bm='SheetJS Table Export';var Wm="";function Hm(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)return La(Mm(t[0],r),r);var a=Nw();t.forEach(function(e,t){Dw(a,Mm(e,r),"Sheet"+(t+1))});return a}function zm(e,r,t){var a=[];return a.join("")+""}function Vm(e,r){var t=r||{};var a=t.header!=null?t.header:Bm;var n=t.footer!=null?t.footer:Wm;var i=[a];var s=Ia(e["!ref"]);t.dense=Array.isArray(e);i.push(zm(e,s,t));for(var f=s.s.r;f<=s.e.r;++f)i.push(Um(e,s,f,t));i.push("
"+n);return i.join("")}function Gm(e,r,t){var a=t||{};if(g!=null)a.dense=g;var n=0,i=0;if(a.origin!=null){if(typeof a.origin=="number")n=a.origin;else{var s=typeof a.origin=="string"?Oa(a.origin):a.origin;n=s.r;i=s.c}}var f=r.getElementsByTagName("tr"); +var o=Math.min(a.sheetRows||1e7,f.length);var l={s:{r:0,c:0},e:{r:n,c:i}};if(e["!ref"]){var c=Ia(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(n==-1)l.e.r=n=c.e.r+1}var h=[],u=0;var d=e["!rows"]||(e["!rows"]=[]);var v=0,p=0,m=0,b=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;v1||k>1)h.push({s:{r:p+n,c:b+i},e:{r:p+n+(w||1)-1,c:b+i+(k||1)-1}});var _={t:"s",v:C};var x=E.getAttribute("data-t")||E.getAttribute("t")||"";if(C!=null){if(C.length==0)_.t=x||"z";else if(a.raw||C.trim().length==0||x=="s"){}else if(C==="TRUE")_={t:"b",v:true};else if(C==="FALSE")_={t:"b",v:false};else if(!isNaN(kr(C)))_={t:"n",v:kr(C)};else if(!isNaN(Ar(C).getDate())){_={t:"d",v:gr(C)};if(!a.cellDates)_={t:"n",v:fr(_.v)};_.z=a.dateNF||X[14]}}if(_.z===undefined&&y!=null)_.z=y;var O="",R=E.getElementsByTagName("A");if(R&&R.length)for(var I=0;I=o)e["!fullref"]=Na((l.e.r=f.length-v+p-1+n,l));return e}function jm(e,r){var t=r||{};var a=t.dense?[]:{};return Gm(a,e,r)}function Xm(e,r){return La(jm(e,r),r)}function $m(e){var r="";var t=Ym(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function Ym(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 Km(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=Yr(r.replace(/<[^>]*>/g,""));return[t]}var Jm={day:["d","dd"],month:["m","mm"],year:["y","yy"],hours:["h","hh"],minutes:["m","mm"],seconds:["s","ss"],"am-pm":["A/P","AM/PM"],"day-of-week":["ddd","dddd"],era:["e","ee"],quarter:["\\Qm",'m\\"th quarter"']};function qm(e,r){var t=r||{};if(g!=null&&t.dense==null)t.dense=g;var a=Et(e);var n=[],i;var s;var f={name:""},o="",l=0;var c;var h;var u={},d=[];var v=t.dense?[]:{};var p,m;var b={value:""};var w="",k=0,T;var A=[];var E=-1,C=-1,y={s:{r:1e6,c:1e7},e:{r:0,c:0}};var S=0;var _={};var x=[],O={},R=0,I=0;var N=[],D=1,F=1;var P=[];var L={Names:[]};var M={};var U=["",""];var B=[],W={};var H="",z=0;var V=false,G=false;var j=0;Ct.lastIndex=0;a=a.replace(//gm,"").replace(//gm,"");while(p=Ct.exec(a))switch(p[3]=p[3].replace(/_.*$/,"")){case"table":;case"工作表":if(p[1]==="/"){if(y.e.c>=y.s.c&&y.e.r>=y.s.r)v["!ref"]=Na(y);else v["!ref"]="A1:A1";if(t.sheetRows>0&&t.sheetRows<=y.e.r){v["!fullref"]=v["!ref"];y.e.r=t.sheetRows-1;v["!ref"]=Na(y)}if(x.length)v["!merges"]=x;if(N.length)v["!rows"]=N;c.name=c["名称"]||c.name;if(typeof JSON!=="undefined")JSON.stringify(c);d.push(c.name);u[c.name]=v;G=false}else if(p[0].charAt(p[0].length-2)!=="/"){c=Gr(p[0],false);E=C=-1;y.s.r=y.s.c=1e7;y.e.r=y.e.c=0;v=t.dense?[]:{};x=[];N=[];G=true}break;case"table-row-group":if(p[1]==="/")--S;else++S;break;case"table-row":;case"行":if(p[1]==="/"){E+=D;D=1;break}h=Gr(p[0],false);if(h["行号"])E=h["行号"]-1;else if(E==-1)E=0;D=+h["number-rows-repeated"]||1;if(D<10)for(j=0;j0)N[E+j]={level:S};C=-1;break;case"covered-table-cell":if(p[1]!=="/")++C;if(t.sheetStubs){if(t.dense){if(!v[E])v[E]=[];v[E][C]={t:"z"}}else v[Ra({r:E,c:C})]={t:"z"}}w="";A=[];break;case"table-cell":;case"数据":if(p[0].charAt(p[0].length-2)==="/"){++C;b=Gr(p[0],false);F=parseInt(b["number-columns-repeated"]||"1",10);m={t:"z",v:null};if(b.formula&&t.cellFormula!=false)m.f=Cd(Yr(b.formula));if((b["数据类型"]||b["value-type"])=="string"){m.t="s";m.v=Yr(b["string-value"]||"");if(t.dense){if(!v[E])v[E]=[];v[E][C]=m}else{v[Ra({r:E,c:C})]=m}}C+=F-1}else if(p[1]!=="/"){++C;w="";k=0;A=[];F=1;var X=D?E+D-1:E;if(C>y.e.c)y.e.c=C;if(Cy.e.r)y.e.r=X;b=Gr(p[0],false);B=[];W={};m={t:b["数据类型"]||b["value-type"],v:null};if(t.cellFormula){if(b.formula)b.formula=Yr(b.formula);if(b["number-matrix-columns-spanned"]&&b["number-matrix-rows-spanned"]){R=parseInt(b["number-matrix-rows-spanned"],10)||0;I=parseInt(b["number-matrix-columns-spanned"],10)||0;O={s:{r:E,c:C},e:{r:E+R-1,c:C+I-1}};m.F=Na(O);P.push([O,m.F])}if(b.formula)m.f=Cd(b.formula);else for(j=0;j=P[j][0].s.r&&E<=P[j][0].e.r)if(C>=P[j][0].s.c&&C<=P[j][0].e.c)m.F=P[j][1]}if(b["number-columns-spanned"]||b["number-rows-spanned"]){R=parseInt(b["number-rows-spanned"],10)||0;I=parseInt(b["number-columns-spanned"],10)||0;O={s:{r:E,c:C},e:{r:E+R-1,c:C+I-1}};x.push(O)}if(b["number-columns-repeated"])F=parseInt(b["number-columns-repeated"],10);switch(m.t){case"boolean":m.t="b";m.v=nt(b["boolean-value"]);break;case"float":m.t="n";m.v=parseFloat(b.value);break;case"percentage":m.t="n";m.v=parseFloat(b.value);break;case"currency":m.t="n";m.v=parseFloat(b.value);break;case"date":m.t="d";m.v=gr(b["date-value"]);if(!t.cellDates){m.t="n";m.v=fr(m.v)}m.z="m/d/yy";break;case"time":m.t="n";m.v=ur(b["time-value"])/86400;if(t.cellDates){m.t="d";m.v=hr(m.v)}m.z="HH:MM:SS";break;case"number":m.t="n";m.v=parseFloat(b["数据数值"]);break;default:if(m.t==="string"||m.t==="text"||!m.t){m.t="s";if(b["string-value"]!=null){w=Yr(b["string-value"]);A=[]}}else throw new Error("Unsupported value type "+m.t);}}else{V=false;if(m.t==="s"){m.v=w||"";if(A.length)m.R=A;V=k==0}if(M.Target)m.l=M;if(B.length>0){m.c=B;B=[]}if(w&&t.cellText!==false)m.w=w;if(V){m.t="z";delete m.v}if(!V||t.sheetStubs){if(!(t.sheetRows&&t.sheetRows<=E)){for(var $=0;$0)v[E+$][C+F]=br(m)}else{v[Ra({r:E+$,c:C})]=m;while(--F>0)v[Ra({r:E+$,c:C+F})]=br(m)}if(y.e.c<=C)y.e.c=C}}}F=parseInt(b["number-columns-repeated"]||"1",10);C+=F-1;F=0;m={};w="";A=[]}M={};break;case"document":;case"document-content":;case"电子表格文档":;case"spreadsheet":;case"主体":;case"scripts":;case"styles":;case"font-face-decls":;case"master-styles":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/")n.push([p[3],true]);break;case"annotation":if(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i;W.t=w;if(A.length)W.R=A;W.a=H;B.push(W)}else if(p[0].charAt(p[0].length-2)!=="/"){n.push([p[3],false])}H="";z=0;w="";k=0;A=[];break;case"creator":if(p[1]==="/"){H=a.slice(z,p.index)}else z=p.index+p[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(p[1]==="/"){if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/")n.push([p[3],false]);w="";k=0;A=[];break;case"scientific-number":break;case"currency-symbol":break;case"currency-style":break;case"number-style":;case"percentage-style":;case"date-style":;case"time-style":if(p[1]==="/"){_[f.name]=o;if((i=n.pop())[0]!==p[3])throw"Bad state: "+i}else if(p[0].charAt(p[0].length-2)!=="/"){o="";f=Gr(p[0],false);n.push([p[3],true])}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=Gr(p[0],false);o+=Jm[p[3]][s.style==="long"?1:0];break;}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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=Gr(p[0],false);o+=Jm[p[3]][s.style==="long"?1:0];break;}break;case"boolean-style":break;case"boolean":break;case"text-style":break;case"text":if(p[0].slice(-2)==="/>")break;else if(p[1]==="/")switch(n[n.length-1][0]){case"number-style":;case"date-style":;case"time-style":o+=a.slice(l,p.index);break;}else l=p.index+p[0].length;break;case"named-range":s=Gr(p[0],false);U=Sd(s["cell-range-address"]);var Y={Name:s.name,Ref:U[0]+"!"+U[1]};if(G)Y.Sheet=d.length;L.Names.push(Y);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":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(n[n.length-1][0])>-1)break;if(p[1]==="/"&&(!b||!b["string-value"])){var K=Km(a.slice(k,p.index),T);w=(w.length>0?w+"\n":"")+K[0]}else{T=Gr(p[0],false);k=p.index+p[0].length}break;case"s":break;case"database-range":if(p[1]==="/")break;try{U=Sd(Gr(p[0])["target-range-address"]);u[U[0]]["!autofilter"]={ref:U[1]}}catch(J){}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(p[1]!=="/"){M=Gr(p[0],false);if(!M.href)break;M.Target=Yr(M.href);delete M.href;if(M.Target.charAt(0)=="#"&&M.Target.indexOf(".")>-1){U=Sd(M.Target.slice(1));M.Target="#"+U[0]+"!"+U[1]}else if(M.Target.match(/^\.\.[\\\/]/))M.Target=M.Target.slice(3)}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(p[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(t.WTF)throw new Error(p);};}var q={Sheets:u,SheetNames:d,Workbook:L};if(t.bookSheets)delete q.Sheets;return q}function Zm(e,r){r=r||{};if(_r(e,"META-INF/manifest.xml"))ai(Or(e,"META-INF/manifest.xml"),r);var t=Rr(e,"content.xml");if(!t)throw new Error("Missing content.xml in ODS / UOF file");var a=qm(lt(t),r);if(_r(e,"meta.xml"))a.Props=hi(Or(e,"meta.xml"));return a}function Qm(e,r){return qm(e,r)}var eb=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return Mr+r}}();var rb=function(){var e=function(e){return qr(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){var s=[];s.push(' \n');var f=0,o=0,l=Ia(a["!ref"]||"A1");var c=a["!merges"]||[],h=0;var u=Array.isArray(a);if(a["!cols"]){for(o=0;o<=l.e.c;++o)s.push(" \n")}var d="",v=a["!rows"]||[];for(f=0;f\n")}for(;f<=l.e.r;++f){d=v[f]?' table:style-name="ro'+v[f].ods+'"':"";s.push(" \n");for(o=0;oo)continue;if(c[h].s.r>f)continue;if(c[h].e.c\n")}s.push(" \n");return s.join("")};var n=function(e,r){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 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")};return function i(e,r){var t=[Mr];var i=wt({"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=wt({"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(oi().replace(/office:document-meta/g,"office:meta"))}else t.push("\n");n(t,e);t.push(" \n");t.push(" \n");for(var f=0;f!=e.SheetNames.length;++f)t.push(a(e.Sheets[e.SheetNames[f]],e,f,r));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 rb(e,r);var t=Fr();var a="";var n=[];var i=[];a="mimetype";Dr(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";Dr(t,a,rb(e,r));n.push([a,"text/xml"]);i.push([a,"ContentFile"]);a="styles.xml";Dr(t,a,eb(e,r));n.push([a,"text/xml"]);i.push([a,"StylesFile"]);a="meta.xml";Dr(t,a,Mr+oi());n.push([a,"text/xml"]);i.push([a,"MetadataFile"]);a="manifest.rdf";Dr(t,a,fi(i));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";Dr(t,a,ni(n));return t}function ab(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function nb(e){return typeof TextDecoder!="undefined"?(new TextDecoder).decode(e):lt(_(e))}function ib(e){return typeof TextEncoder!="undefined"?(new TextEncoder).encode(e):y(ct(e))}function sb(e,r){e:for(var t=0;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 lb(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 cb(e,r,t){var a=Math.floor(t==0?0:Math.LOG10E*Math.log(Math.abs(t)))+6176-20;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 hb(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 ub(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.slice(0,t)}function db(e){var r=0,t=e[r]&127;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}return t}function vb(e){var r=[],t=[0];while(t[0]=128);f=e.slice(o,t[0])}break;case 5:s=4;f=e.slice(t[0],t[0]+s);t[0]+=s;break;case 1:s=8;f=e.slice(t[0],t[0]+s);t[0]+=s;break;case 2:s=hb(e,t);f=e.slice(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 pb(e){var r=[];e.forEach(function(e,t){e.forEach(function(e){if(!e.data)return;r.push(ub(t*8+e.type));if(e.type==2)r.push(ub(e.data.length));r.push(e.data)})});return fb(r)}function gb(e,r){return(e==null?void 0:e.map(function(e){return r(e.data)}))||[]}function mb(e){var r;var t=[],a=[0];while(a[0]>>0>0;t.push(s)}return t}function bb(e){var r=[];e.forEach(function(e){var t=[];t[1]=[{data:ub(e.id),type:0}];t[2]=[];if(e.merge!=null)t[3]=[{data:ub(+!!e.merge),type:0}];var a=[];e.messages.forEach(function(e){a.push(e.data);e.meta[3]=[{type:0,data:ub(e.data.length)}];t[2].push({data:pb(e.meta),type:2})});var n=pb(t);r.push(ub(n.length));r.push(n);a.forEach(function(e){return r.push(e)})});return fb(r)}function wb(e,r){if(e!=0)throw new Error("Unexpected Snappy chunk type ".concat(e));var t=[0];var a=hb(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.slice(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}}n=[fb(n)];if(o==0)throw new Error("Invalid offset 0");if(o>n[0].length)throw new Error("Invalid offset beyond length");if(l>=o){n.push(n[0].slice(-o));l-=o;while(l>=n[n.length-1].length){n.push(n[n.length-1]);l-=n[n.length-1].length}}n.push(n[0].slice(-o,-o+l))}}var c=fb(n);if(c.length!=a)throw new Error("Unexpected length: ".concat(c.length," != ").concat(a));return c}function kb(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.slice(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 fb(r)}function Ab(e,r,t,a){var n=ab(e);var i=n.getUint32(4,true);var s=(a>1?12:8)+ob(i&(a>1?3470:398))*4;var f=-1,o=-1,l=NaN,c=new Date(2001,0,1);if(i&512){f=n.getUint32(s,true);s+=4}s+=ob(i&(a>1?12288:4096))*4;if(i&16){o=n.getUint32(s,true);s+=4}if(i&32){l=n.getFloat64(s,true);s+=8}if(i&64){c.setTime(c.getTime()+n.getFloat64(s,true)*1e3);s+=8}var h;switch(e[2]){case 0:break;case 2:h={t:"n",v:l};break;case 3:h={t:"s",v:r[o]};break;case 5:h={t:"d",v:c};break;case 6:h={t:"b",v:l>0};break;case 7:h={t:"n",v:l/86400};break;case 8:h={t:"e",v:0};break;case 9:{if(f>-1)h={t:"s",v:t[f]};else if(o>-1)h={t:"s",v:r[o]};else if(!isNaN(l))h={t:"n",v:l};else throw new Error("Unsupported cell type ".concat(e.slice(0,4)))}break;default:throw new Error("Unsupported cell type ".concat(e.slice(0,4)));}return h}function Eb(e,r,t){var a=ab(e);var n=a.getUint32(8,true);var i=12;var s=-1,f=-1,o=NaN,l=NaN,c=new Date(2001,0,1);if(n&1){o=lb(e,i);i+=16}if(n&2){l=a.getFloat64(i,true);i+=8}if(n&4){c.setTime(c.getTime()+a.getFloat64(i,true)*1e3);i+=8}if(n&8){f=a.getUint32(i,true);i+=4}if(n&16){s=a.getUint32(i,true);i+=4}var h;switch(e[1]){case 0:break;case 2:h={t:"n",v:o};break;case 3:h={t:"s",v:r[f]};break;case 5:h={t:"d",v:c};break;case 6:h={t:"b",v:l>0};break;case 7:h={t:"n",v:l/86400};break;case 8:h={t:"e",v:0};break;case 9:{if(s>-1)h={t:"s",v:t[s]};else throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(n&31," : ").concat(e.slice(0,4)))}break;case 10:h={t:"n",v:o};break;default:throw new Error("Unsupported cell type ".concat(e[1]," : ").concat(n&31," : ").concat(e.slice(0,4)));}return h}function Cb(e,r){var t=new Uint8Array(32),a=ab(t),n=12,i=0;t[0]=5;switch(e.t){case"n":t[1]=2;cb(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.slice(0,n)}function yb(e,r){var t=new Uint8Array(32),a=ab(t),n=12,i=0;t[0]=3;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(4,i,true);return t.slice(0,n)}function Sb(e,r,t){switch(e[0]){case 0:;case 1:;case 2:;case 3:return Ab(e,r,t,e[0]);case 5:return Eb(e,r,t);default:throw new Error("Unsupported payload version ".concat(e[0]));}}function _b(e){var r=vb(e);return hb(r[1][0].data)}function xb(e){var r=[];r[1]=[{type:0,data:ub(e)}];return pb(r)}function Ob(e,r){var t=vb(r.data);var a=db(t[1][0].data);var n=t[3];var i=[];(n||[]).forEach(function(r){var t=vb(r.data);var n=db(t[1][0].data)>>>0;switch(a){case 1:i[n]=nb(t[3][0].data);break;case 8:{var s=e[_b(t[9][0].data)][0];var f=vb(s.data);var o=e[_b(f[1][0].data)][0];var l=db(o.meta[1][0].data);if(l!=2001)throw new Error("2000 unexpected reference to ".concat(l));var c=vb(o.data);i[n]=c[3].map(function(e){return nb(e.data)}).join("")}break;}});return i}function Rb(e,r){var t,a,n,i,s,f,o,l,c,h,u,d,v,p;var g=vb(e);var m=db(g[1][0].data)>>>0;var b=db(g[2][0].data)>>>0;var w=((a=(t=g[8])==null?void 0:t[0])==null?void 0:a.data)&&db(g[8][0].data)>0||false;var k,T;if(((i=(n=g[7])==null?void 0:n[0])==null?void 0:i.data)&&r!=0){k=(f=(s=g[7])==null?void 0:s[0])==null?void 0:f.data;T=(l=(o=g[6])==null?void 0:o[0])==null?void 0:l.data}else if(((h=(c=g[4])==null?void 0:c[0])==null?void 0:h.data)&&r!=1){k=(d=(u=g[4])==null?void 0:u[0])==null?void 0:d.data;T=(p=(v=g[3])==null?void 0:v[0])==null?void 0:p.data}else throw"NUMBERS Tile missing ".concat(r," cell storage");var A=w?4:1;var E=ab(k);var C=[];for(var y=0;y=1)_[C[C.length-1][0]]=T.subarray(C[C.length-1][1]*A);return{R:m,cells:_}}function Ib(e,r){var t;var a=vb(r.data);var n=((t=a==null?void 0:a[7])==null?void 0:t[0])?db(a[7][0].data)>>>0>0?1:0:-1;var i=gb(a[5],function(e){return Rb(e,n)});return{nrows:db(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 Nb(e,r,t){var a;var n=vb(r.data);var i={s:{r:0,c:0},e:{r:0,c:0}};i.e.r=(db(n[6][0].data)>>>0)-1;if(i.e.r<0)throw new Error("Invalid row varint ".concat(n[6][0].data));i.e.c=(db(n[7][0].data)>>>0)-1;if(i.e.c<0)throw new Error("Invalid col varint ".concat(n[7][0].data));t["!ref"]=Na(i);var s=vb(n[4][0].data);var f=Ob(e,e[_b(s[4][0].data)][0]); +var o=((a=s[17])==null?void 0:a[0])?Ob(e,e[_b(s[17][0].data)][0]):[];var l=vb(s[3][0].data);var c=0;l[1].forEach(function(r){var a=vb(r.data);var n=e[_b(a[2][0].data)][0];var i=db(n.meta[1][0].data);if(i!=6002)throw new Error("6001 unexpected reference to ".concat(i));var s=Ib(e,n);s.data.forEach(function(e,r){e.forEach(function(e,a){var n=Ra({r:c+r,c:a});var i=Sb(e,f,o);if(i)t[n]=i})});c+=s.nrows})}function Db(e,r){var t=vb(r.data);var a={"!ref":"A1"};var n=e[_b(t[2][0].data)];var i=db(n[0].meta[1][0].data);if(i!=6001)throw new Error("6000 unexpected reference to ".concat(i));Nb(e,n[0],a);return a}function Fb(e,r){var t;var a=vb(r.data);var n={name:((t=a[1])==null?void 0:t[0])?nb(a[1][0].data):"",sheets:[]};var i=gb(a[2],_b);i.forEach(function(r){e[r].forEach(function(r){var t=db(r.meta[1][0].data);if(t==6e3)n.sheets.push(Db(e,r))})});return n}function Pb(e,r){var t=Nw();var a=vb(r.data);var n=gb(a[1],_b);n.forEach(function(r){e[r].forEach(function(r){var a=db(r.meta[1][0].data);if(a==2){var n=Fb(e,r);n.sheets.forEach(function(e,r){Dw(t,e,r==0?n.name:n.name+"_"+r,true)})}})});if(t.SheetNames.length==0)throw new Error("Empty NUMBERS file");return t}function Lb(e){var r,t,a,n;var i={},s=[];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;var r;try{r=kb(e.content)}catch(t){return console.log("?? "+e.content.length+" "+(t.message||t))}var a;try{a=mb(r)}catch(t){return console.log("## "+(t.message||t))}a.forEach(function(e){i[e.id]=e.messages;s.push(e.id)})});if(!s.length)throw new Error("File has no messages");var f=((n=(a=(t=(r=i==null?void 0:i[1])==null?void 0:r[0])==null?void 0:t.meta)==null?void 0:a[1])==null?void 0:n[0].data)&&db(i[1][0].meta[1][0].data)==1&&i[1][0];if(!f)s.forEach(function(e){i[e].forEach(function(e){var r=db(e.meta[1][0].data)>>>0;if(r==1){if(!f)f=e;else throw new Error("Document has multiple roots")}})});if(!f)throw new Error("Cannot find Document root");return Pb(i,f)}function Mb(e,r,t){var a,n,i,s;if(!((a=e[6])==null?void 0:a[0])||!((n=e[7])==null?void 0:n[0]))throw"Mutation only works on post-BNC storages!";var f=((s=(i=e[8])==null?void 0:i[0])==null?void 0:s.data)&&db(e[8][0].data)>0||false;if(f)throw"Math only works with normal offsets";var o=0;var l=ab(e[7][0].data),c=0,h=[];var u=ab(e[4][0].data),d=0,v=[];for(var p=0;p1)console.error("The Numbers writer currently writes only the first table");var a=Ia(t["!ref"]);a.s.r=a.s.c=0;var n=false;if(a.e.c>9){n=true;a.e.c=9}if(a.e.r>49){n=true;a.e.r=49}if(n)console.error("The Numbers writer is currently limited to ".concat(Na(a)));var i=Aw(t,{range:a,header:1});var s=["~Sh33tJ5~"];i.forEach(function(e){return e.forEach(function(e){if(typeof e=="string")s.push(e)})});var f={};var o=[];var l=Ke.read(r.numbers,{type:"base64"});l.FileIndex.map(function(e,r){return[e,l.FullPaths[r]]}).forEach(function(e){var r=e[0],t=e[1];if(r.type!=2)return;if(!r.name.match(/\.iwa/))return;var a=r.content;var n=kb(a);var i=mb(n);i.forEach(function(e){o.push(e.id);f[e.id]={deps:[],location:t,type:db(e.messages[0].meta[1][0].data)}})});o.sort(function(e,r){return e-r});var c=o.filter(function(e){return e>1}).map(function(e){return[e,ub(e)]});l.FileIndex.map(function(e,r){return[e,l.FullPaths[r]]}).forEach(function(e){var r=e[0],t=e[1];if(!r.name.match(/\.iwa/))return;var a=mb(kb(r.content));a.forEach(function(e){e.messages.forEach(function(r){c.forEach(function(r){if(e.messages.some(function(e){return db(e.meta[1][0].data)!=11006&&sb(e.data,r[1])})){f[r[0]].deps.push(e.id)}})})})});function h(){for(var e=927262;e<2e6;++e)if(!f[e])return e;throw new Error("Too many messages")}var u=Ke.find(l,f[1].location);var d=mb(kb(u.content));var v;for(var p=0;p-1)return"sheet";if(qn.CS&&e==qn.CS)return"chart";if(qn.DS&&e==qn.DS)return"dialog";if(qn.MS&&e==qn.MS)return"macro";return e&&e.length?e:"sheet"}function Vb(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,zb(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function Gb(e,r,t,a,n,i,s,f,o,l,c,h){try{i[a]=Qn(Rr(e,t,true),r);var u=Or(e,r);var d;switch(f){case"sheet":d=pg(u,r,n,o,i[a],l,c,h);break;case"chart":d=gg(u,r,n,o,i[a],l,c,h);if(!d||!d["!drawel"])break;var v=Lr(d["!drawel"].Target,r);var p=Zn(v);var g=th(Rr(e,v,true),Qn(Rr(e,p,true),v));var m=Lr(g,v);var b=Zn(m);d=Pp(Rr(e,m,true),m,o,Qn(Rr(e,b,true),m),l,d);break;case"macro":d=mg(u,r,n,o,i[a],l,c,h);break;case"dialog":d=bg(u,r,n,o,i[a],l,c,h);break;default:throw new Error("Unrecognized sheet type "+f);}s[a]=d;var w=[];if(i&&i[a])rr(i[a]).forEach(function(t){var n="";if(i[a][t].Type==qn.CMNT){n=Lr(i[a][t].Target,r);var s=Ag(Or(e,n,true),n,o);if(!s||!s.length)return;ih(d,s,false)}if(i[a][t].Type==qn.TCMNT){n=Lr(i[a][t].Target,r);w=w.concat(oh(Or(e,n,true),o))}});if(w&&w.length)ih(d,w,true,o.people||[])}catch(k){if(o.WTF)throw k}}function jb(e){return e.charAt(0)=="/"?e.slice(1):e}function Xb(e,r){ze();r=r||{};Wb(r);if(_r(e,"META-INF/manifest.xml"))return Zm(e,r);if(_r(e,"objectdata.xml"))return Zm(e,r);if(_r(e,"Index/Document.iwa")){if(typeof Uint8Array=="undefined")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof Lb!="undefined"){if(e.FileIndex)return Lb(e);var t=Ke.utils.cfb_new();Nr(e).forEach(function(r){Dr(t,r,Ir(e,r))});return Lb(t)}throw new Error("Unsupported NUMBERS file")}if(!_r(e,"[Content_Types].xml")){if(_r(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(_r(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");throw new Error("Unsupported ZIP file")}var a=Nr(e);var n=Kn(Rr(e,"[Content_Types].xml"));var i=false;var s,f;if(n.workbooks.length===0){f="xl/workbook.xml";if(Or(e,f,true))n.workbooks.push(f)}if(n.workbooks.length===0){f="xl/workbook.bin";if(!Or(e,f,true))throw new Error("Could not find workbook");n.workbooks.push(f);i=true}if(n.workbooks[0].slice(-3)=="bin")i=true;var o={};var l={};if(!r.bookSheets&&!r.bookProps){xd=[];if(n.sst)try{xd=Tg(Or(e,jb(n.sst)),n.sst,r)}catch(c){if(r.WTF)throw c}if(r.cellStyles&&n.themes.length)o=kg(Rr(e,n.themes[0].replace(/^\//,""),true)||"",n.themes[0],r);if(n.style)l=wg(Or(e,jb(n.style)),n.style,o,r)}n.links.map(function(t){try{var a=Qn(Rr(e,Zn(jb(t))),t);return Cg(Or(e,jb(t)),a,t,r)}catch(n){}});var h=vg(Or(e,jb(n.workbooks[0])),n.workbooks[0],r);var u={},d="";if(n.coreprops.length){d=Or(e,jb(n.coreprops[0]),true);if(d)u=hi(d);if(n.extprops.length!==0){d=Or(e,jb(n.extprops[0]),true);if(d)mi(d,u,r)}}var v={};if(!r.bookSheets||r.bookProps){if(n.custprops.length!==0){d=Rr(e,jb(n.custprops[0]),true);if(d)v=ki(d,r)}}var p={};if(r.bookSheets||r.bookProps){if(h.Sheets)s=h.Sheets.map(function I(e){return e.name});else if(u.Worksheets&&u.SheetNames.length>0)s=u.SheetNames;if(r.bookProps){p.Props=u;p.Custprops=v}if(r.bookSheets&&typeof s!=="undefined")p.SheetNames=s;if(r.bookSheets?p.SheetNames:r.bookProps)return p}s={};var g={};if(r.bookDeps&&n.calcchain)g=Eg(Or(e,jb(n.calcchain)),n.calcchain,r);var m=0;var b={};var w,k;{var T=h.Sheets;u.Worksheets=T.length;u.SheetNames=[];for(var A=0;A!=T.length;++A){u.SheetNames[A]=T[A].name}}var E=i?"bin":"xml";var C=n.workbooks[0].lastIndexOf("/");var y=(n.workbooks[0].slice(0,C+1)+"_rels/"+n.workbooks[0].slice(C+1)+".rels").replace(/^\//,"");if(!_r(e,y))y="xl/_rels/workbook."+E+".rels";var S=Qn(Rr(e,y,true),y.replace(/_rels.*/,"s5s"));if((n.metadata||[]).length>=1){r.xlmeta=yg(Or(e,jb(n.metadata[0])),n.metadata[0],r)}if((n.people||[]).length>=1){r.people=ch(Or(e,jb(n.people[0])),r)}if(S)S=Vb(S,h.Sheets);var _=Or(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(m=0;m!=u.Worksheets;++m){var x="sheet";if(S&&S[m]){w="xl/"+S[m][1].replace(/[\/]?xl\//,"");if(!_r(e,w))w=S[m][1];if(!_r(e,w))w=y.replace(/_rels\/.*$/,"")+S[m][1];x=S[m][2]}else{w="xl/worksheets/sheet"+(m+1-_)+"."+E;w=w.replace(/sheet0\./,"sheet.")}k=w.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");if(r&&r.sheets!=null)switch(typeof r.sheets){case"number":if(m!=r.sheets)continue e;break;case"string":if(u.SheetNames[m].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var O=false;for(var R=0;R!=r.sheets.length;++R){if(typeof r.sheets[R]=="number"&&r.sheets[R]==m)O=1;if(typeof r.sheets[R]=="string"&&r.sheets[R].toLowerCase()==u.SheetNames[m].toLowerCase())O=1}if(!O)continue e};}Gb(e,w,k,u.SheetNames[m],m,b,s,x,r,h,o,l)}p={Directory:n,Workbook:h,Props:u,Custprops:v,Deps:g,Sheets:s,SheetNames:u.SheetNames,Strings:xd,Styles:l,Themes:o,SSF:br(X)};if(r&&r.bookFiles){if(e.files){p.keys=a;p.files=e.files}else{p.keys=[];p.files={};e.FullPaths.forEach(function(r,t){r=r.replace(/^Root Entry[\/]/,"");p.keys.push(r);p.files[r]=e.FileIndex[t]})}}if(r&&r.bookVBA){if(n.vba.length>0)p.vbaraw=Or(e,jb(n.vba[0]),true);else if(n.defaults&&n.defaults.bin===bh)p.vbaraw=Or(e,"xl/vbaProject.bin",true)}return p}function $b(e,r){var t=r||{};var a="Workbook",n=Ke.find(e,a);try{a="/!DataSpaces/Version";n=Ke.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);Ko(n.content);a="/!DataSpaces/DataSpaceMap";n=Ke.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=qo(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=Ke.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=Zo(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=Ke.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);el(n.content)}catch(f){}a="/EncryptionInfo";n=Ke.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var o=al(n.content);a="/EncryptedPackage";n=Ke.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 Yb(e,r){if(r.bookType=="ods")return tb(e,r);if(r.bookType=="numbers")return Ub(e,r);if(r.bookType=="xlsb")return Kb(e,r);return Jb(e,r)}function Kb(e,r){ah=1024;if(e&&!e.SSF){e.SSF=br(X)}if(e&&e.SSF){ze();He(e.SSF);r.revssf=nr(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(Rd)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t=r.bookType=="xlsb"?"bin":"xml";var a=Th.indexOf(r.bookType)>-1;var n=Yn();Hb(r=r||{});var i=Fr();var s="",f=0;r.cellXfs=[];Fd(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Dr(i,s,di(e.Props,r));n.coreprops.push(s);ri(r.rels,2,s,qn.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";Dr(i,s,Ti(e.Custprops,r));n.custprops.push(s);ri(r.rels,4,s,qn.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;Dr(i,s,_g(f-1,s,r,e,c));n.sheets.push(s);ri(r.wbrels,-1,"worksheets/sheet"+f+"."+t,qn.WS[0]);}if(h){var d=h["!comments"];var v=false;var p="";if(d&&d.length>0){p="xl/comments"+f+"."+t;Dr(i,p,Ig(d,p,r));n.comments.push(p);ri(c,-1,"../comments"+f+"."+t,qn.CMNT);v=true}if(h["!legacy"]){if(v)Dr(i,"xl/drawings/vmlDrawing"+f+".vml",nh(f,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(c["!id"].rId1)Dr(i,Zn(s),ei(c))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Dr(i,s,Rg(r.Strings,s,r));n.strs.push(s);ri(r.wbrels,-1,"sharedStrings."+t,qn.SST)}s="xl/workbook."+t;Dr(i,s,Sg(e,s,r));n.workbooks.push(s);ri(r.rels,1,s,qn.WB);s="xl/theme/theme1.xml";Dr(i,s,Ic(e.Themes,r));n.themes.push(s);ri(r.wbrels,-1,"theme/theme1.xml",qn.THEME);s="xl/styles."+t;Dr(i,s,Og(e,s,r));n.styles.push(s);ri(r.wbrels,-1,"styles."+t,qn.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Dr(i,s,e.vbaraw);n.vba.push(s);ri(r.wbrels,-1,"vbaProject.bin",qn.VBA)}s="xl/metadata."+t;Dr(i,s,Ng(s));n.metadata.push(s);ri(r.wbrels,-1,"metadata."+t,qn.XLMETA);Dr(i,"[Content_Types].xml",Jn(n,r));Dr(i,"_rels/.rels",ei(r.rels));Dr(i,"xl/_rels/workbook."+t+".rels",ei(r.wbrels));delete r.revssf;delete r.ssf;return i}function Jb(e,r){ah=1024;if(e&&!e.SSF){e.SSF=br(X)}if(e&&e.SSF){ze();He(e.SSF);r.revssf=nr(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(Rd)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=Th.indexOf(r.bookType)>-1;var n=Yn();Hb(r=r||{});var i=Fr();var s="",f=0;r.cellXfs=[];Fd(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Dr(i,s,di(e.Props,r));n.coreprops.push(s);ri(r.rels,2,s,qn.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";Dr(i,s,Ti(e.Custprops,r));n.custprops.push(s);ri(r.rels,4,s,qn.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;Dr(i,s,pv(f-1,r,e,h));n.sheets.push(s);ri(r.wbrels,-1,"worksheets/sheet"+f+"."+t,qn.WS[0]);}if(u){var v=u["!comments"];var p=false;var g="";if(v&&v.length>0){var m=false;v.forEach(function(e){e[1].forEach(function(e){if(e.T==true)m=true})});if(m){g="xl/threadedComments/threadedComment"+f+"."+t;Dr(i,g,lh(v,c,r));n.threadedcomments.push(g);ri(h,-1,"../threadedComments/threadedComment"+f+"."+t,qn.TCMNT)}g="xl/comments"+f+"."+t;Dr(i,g,fh(v,r));n.comments.push(g);ri(h,-1,"../comments"+f+"."+t,qn.CMNT);p=true}if(u["!legacy"]){if(p)Dr(i,"xl/drawings/vmlDrawing"+f+".vml",nh(f,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(h["!id"].rId1)Dr(i,Zn(s),ei(h))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Dr(i,s,Ho(r.Strings,r));n.strs.push(s);ri(r.wbrels,-1,"sharedStrings."+t,qn.SST)}s="xl/workbook."+t;Dr(i,s,rg(e,r));n.workbooks.push(s);ri(r.rels,1,s,qn.WB);s="xl/theme/theme1.xml";Dr(i,s,Ic(e.Themes,r));n.themes.push(s);ri(r.wbrels,-1,"theme/theme1.xml",qn.THEME);s="xl/styles."+t;Dr(i,s,$l(e,r));n.styles.push(s);ri(r.wbrels,-1,"styles."+t,qn.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Dr(i,s,e.vbaraw);n.vba.push(s);ri(r.wbrels,-1,"vbaProject.bin",qn.VBA)}s="xl/metadata."+t;Dr(i,s,Jc());n.metadata.push(s);ri(r.wbrels,-1,"metadata."+t,qn.XLMETA);if(c.length>1){s="xl/persons/person.xml";Dr(i,s,hh(c,r));n.people.push(s);ri(r.wbrels,-1,"persons/person.xml",qn.PEOPLE)}Dr(i,"[Content_Types].xml",Jn(n,r));Dr(i,"_rels/.rels",ei(r.rels));Dr(i,"xl/_rels/workbook."+t+".rels",ei(r.wbrels));delete r.revssf;delete r.ssf;return i}function qb(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=k(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 Zb(e,r){if(Ke.find(e,"EncryptedPackage"))return $b(e,r);return vm(e,r)}function Qb(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=T&&Buffer.isBuffer(e)?"buffer":"base64";t=Pr(a,n);return Xb(t,n)}function ew(e,r){var t=0;e:while(t=2&&n[3]===0)return xo.to_workbook(a,t);if(n[2]===0&&(n[3]===8||n[3]===9))return xo.to_workbook(a,t)}break;case 3:;case 131:;case 139:;case 140:return Ao.to_workbook(a,t);case 123:if(n[1]===92&&n[2]===114&&n[3]===116)return gl.to_workbook(a,t);break;case 10:;case 13:;case 32:return rw(a,t);case 137:if(n[1]===80&&n[2]===78&&n[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;}if(To.indexOf(n[0])>-1&&n[2]<=12&&n[3]<=31)return Ao.to_workbook(a,t);return nw(e,a,t,i)}function sw(e,r){var t=r||{};t.type="file";return iw(e,t)}function fw(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return Qe(r.file,Ke.write(e,{type:T?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return Ke.write(e,r)}function ow(e,r){var t=br(r||{});var a=Yb(e,t);return cw(a,t)}function lw(e,r){var t=br(r||{});var a=Jb(e,t);return cw(a,t)}function cw(e,r){var t={};var a=T?"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?Ke.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(S(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return fw(encrypt_agile(n,r.password),r);if(r.type==="file")return Qe(r.file,n);return r.type=="string"?lt(n):n}function hw(e,r){var t=r||{};var a=pm(e,t);return fw(a,t)}function uw(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return w(ct(a));case"binary":return ct(a);case"string":return e;case"file":return Qe(r.file,a,"utf8");case"buffer":{if(T)return A(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return uw(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function dw(e,r){switch(r.type){case"base64":return w(e);case"binary":return e;case"string":return e;case"file":return Qe(r.file,e,"binary");case"buffer":{if(T)return A(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function vw(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var h=Ta(o.s.r);var u=[];var d=[];var v=0,p=0;var g=Array.isArray(e);var m=o.s.r,b=0;var w={};if(g&&!e[m])e[m]=[];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]=ya(b);t=g?e[m][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=Pa(t,null,l);p=w[s]||0;if(!p)w[s]=1;else{do{f=s+"_"+p++}while(w[f]);w[s]=p;w[f]=1}i[b]=f;}}for(m=o.s.r+n;m<=o.e.r;++m){if((T[m]||{}).hidden)continue;var A=Tw(e,o,m,u,a,i,g,l);if(A.isempty===false||(a===1?l.blankrows!==false:!!l.blankrows))d[v++]=A.row}d.length=v;return d}var Ew=/"/g;function Cw(e,r,t,a,n,i,s,f){var o=true;var l=[],c="",h=Ta(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:Pa(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(Ew,'""')+'"';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(Ew,'""')+'"'}else c="";l.push(c)}if(f.blankrows===false&&o)return null;return l.join(s)}function yw(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=Da(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 v=n.s.c;v<=n.e.c;++v)if(!(u[v]||{}).hidden)h[v]=ya(v);var p=0;for(var g=n.s.r;g<=n.e.r;++g){if((d[g]||{}).hidden)continue;c=Cw(e,n,g,h,s,o,i,a);if(c==null){continue}if(a.strip)c=c.replace(l,"");if(c||a.blankrows!==false)t.push((p++?f:"")+c)}delete a.dense;return t.join("")}function Sw(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=yw(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 _w(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=Da(e["!ref"]),i="",s=[],f; +var o=[];var l=Array.isArray(e);for(f=n.s.c;f<=n.e.c;++f)s[f]=ya(f);for(var c=n.s.r;c<=n.e.r;++c){i=Ta(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 xw(e,r,t){var a=t||{};var n=+!a.skipHeader;var i=e||{};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"?Oa(a.origin):a.origin;s=o.r;f=o.c}}var l;var c={s:{c:0,r:0},e:{c:f,r:s+r.length-1+n}};if(i["!ref"]){var h=Da(i["!ref"]);c.e.c=Math.max(c.e.c,h.e.c);c.e.r=Math.max(c.e.r,h.e.r);if(s==-1){s=h.e.r+1;c.e.r=s+r.length-1+n}}else{if(s==-1){s=0;c.e.r=r.length-1+n}}var u=a.header||[],d=0;r.forEach(function(e,r){rr(e).forEach(function(t){if((d=u.indexOf(t))==-1)u[d=u.length]=t;var o=e[t];var c="z";var h="";var v=Ra({c:f+d,r:s+r+n});l=Rw(i,v);if(o&&typeof o==="object"&&!(o instanceof Date)){i[v]=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=fr(o)}h=a.dateNF||X[14]}else if(o===null&&a.nullError){c="e";o=0}if(!l)i[v]=l={t:c,v:o};else{l.t=c;l.v=o;delete l.w;delete l.R;if(h)l.z=h}if(h)l.z=h}})});c.e.c=Math.max(c.e.c,f+u.length-1);var v=Ta(s);if(n)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 Nw(){return{SheetNames:[],Sheets:{}}}function Dw(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}Jp(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 Fw(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=Iw(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 Pw(e,r){e.z=r;return e}function Lw(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function Mw(e,r,t){return Lw(e,"#"+r,t)}function Uw(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function Bw(e,r,t,a){var n=typeof r!="string"?r:Da(r);var i=typeof r=="string"?r:Na(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=Rw(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}}return e}var Ww={encode_col:ya,encode_row:Ta,encode_cell:Ra,encode_range:Na,decode_col:Ca,decode_row:ka,split_cell:xa,decode_cell:Oa,decode_range:Ia,format_cell:Pa,sheet_add_aoa:Ma,sheet_add_json:xw,sheet_add_dom:Gm,aoa_to_sheet:Ua,json_to_sheet:Ow,table_to_sheet:jm,table_to_book:Xm,sheet_to_csv:yw,sheet_to_txt:Sw,sheet_to_json:Aw,sheet_to_html:Vm,sheet_to_formulae:_w,sheet_to_row_object_array:Aw,sheet_get_cell:Rw,book_new:Nw,book_append_sheet:Dw,book_set_sheet_visibility:Fw,cell_set_number_format:Pw,cell_set_hyperlink:Lw,cell_set_internal_link:Mw,cell_add_comment:Uw,sheet_set_array_formula:Bw,consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};var Hw;function zw(e){Hw=e}function Vw(e,r){var t=Hw();var a=r==null?{}:r;if(e==null||e["!ref"]==null){t.push(null);return t}var n=Da(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 v=n.s.c;v<=n.e.c;++v)if(!(u[v]||{}).hidden)h[v]=ya(v);var p=n.s.r;var g=false,m=0;t._read=function(){if(!g){g=true;return t.push("\ufeff")}while(p<=n.e.r){++p;if((d[p-1]||{}).hidden)continue;c=Cw(e,n,p-1,h,s,o,i,a);if(c!=null){if(a.strip)c=c.replace(l,"");if(c||a.blankrows!==false)return t.push((m++?f:"")+c)}}return t.push(null)};return t}function Gw(e,r){var t=Hw();var a=r||{};var n=a.header!=null?a.header:Bm;var i=a.footer!=null?a.footer:Wm;t.push(n);var s=Ia(e["!ref"]);a.dense=Array.isArray(e);t.push(zm(e,s,a));var f=s.s.r;var o=false;t._read=function(){if(f>s.e.r){if(!o){o=true;t.push(""+i)}return t.push(null)}while(f<=s.e.r){t.push(Um(e,s,f,a));++f;break}};return t}function jw(e,r){var t=Hw({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=Da(h);break;case"number":l=Da(e["!ref"]);l.s.r=h;break;default:l=h;}if(n>0)i=0;var u=Ta(l.s.r);var d=[];var v=0;var p=Array.isArray(e);var g=l.s.r,m=0;var b={};if(p&&!e[g])e[g]=[];var w=c.skipHidden&&e["!cols"]||[];var k=c.skipHidden&&e["!rows"]||[];for(m=l.s.c;m<=l.e.c;++m){if((w[m]||{}).hidden)continue;d[m]=ya(m);a=p?e[g][m]:e[d[m]+u];switch(n){case 1:s[m]=m-l.s.c;break;case 2:s[m]=d[m];break;case 3:s[m]=c.header[m-l.s.c];break;default:if(a==null)a={w:"__EMPTY",t:"s"};o=f=Pa(a,null,c);v=b[f]||0;if(!v)b[f]=1;else{do{o=f+"_"+v++}while(b[o]);b[f]=v;b[o]=1}s[m]=o;}}g=l.s.r+i;t._read=function(){while(g<=l.e.r){if((k[g-1]||{}).hidden)continue;var r=Tw(e,l,g,d,n,s,p,c);++g;if(r.isempty===false||(n===1?c.blankrows!==false:!!c.blankrows)){t.push(r.row);return}}return t.push(null)};return t}var Xw={to_json:jw,to_html:Gw,to_csv:Vw,set_readable:zw};if(typeof vm!=="undefined")e.parse_xlscfb=vm;e.parse_zip=Xb;e.read=iw;e.readFile=sw;e.readFileSync=sw;e.write=gw;e.writeFile=bw;e.writeFileSync=bw;e.writeFileAsync=kw;e.utils=Ww;e.writeXLSX=pw;e.writeFileXLSX=ww;e.SSF=Ve;if(typeof Xw!=="undefined")e.stream=Xw;if(typeof Ke!=="undefined")e.CFB=Ke;if(typeof require!=="undefined"){var $w=undefined;if(($w||{}).Readable)zw($w.Readable)}}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 2dc3ed9..b74172f 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","undefined","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","_gc2","_ga2","DENSE","DIF_XL","Base64","input","isNaN","replace","node","alloc","new_raw_buf","Uint8Array","new_unsafe_buf","s2a","s2ab","ArrayBuffer","view","a2s","isArray","a2u","ab2a","utf8decode","content","widx","L","ridx","bconcat","bufs","maxlen","set","concat","apply","chr0","chr1","SSF","make_ssf","_strrev","fill","pad0","v","t","pad_","rpad_","pad0r1","Math","round","pad0r2","p2_32","pow","pad0r","isgeneral","days","months","init_table","table_fmt","default_map","defi","default_str","5","63","6","64","7","65","8","66","41","42","43","44","frac","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","floor","q","parse_date_code","opts","b2","date","time","dow","dout","T","u","y","m","H","S","abs","date1904","Date","setDate","getDate","getFullYear","getMonth","getDay","fix_hijri","basedate","dnthresh","getTime","base1904","datenum_local","epoch","getTimezoneOffset","general_fmt_int","_general_int","general_fmt_num","make_general_fmt_num","trailing_zeroes_and_decimal","strip_decimal","mantissa_zeroes_and_decimal","exp_with_single_digit","normalize_exp","small_exp","toFixed","toPrecision","toExponential","large_exp","general_fmt_num_base","V","log","LOG10E","substr","toUpperCase","_general_num","general_fmt","format","_general","write_date","type","fmt","val","ss0","ss","outl","outstr","commaify","write_num","make_write_num","pct1","write_num_pct","sfmt","mul","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","split_fmt","in_str","_split","abstime","fmt_is_date","is_date","eval_fmt","flen","lst","dt","hr","toLowerCase","bt","ssm","nstr","vv","myv","ostr","decpt","lasti","retval","_eval","cfregex","cfregex2","chkcond","thresh","parseFloat","choose_fmt","lat","m1","m2","dateNF","table","load_entry","load","_table","get_table","load_table","tbl","XLMLFormatMap","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","SSFImplicit","23","24","25","26","27","28","29","30","31","32","33","34","35","36","50","51","52","53","54","55","56","57","58","59","60","61","62","67","68","70","71","72","73","74","75","76","78","79","80","81","dateNFregex","dateNF_regex","RegExp","dateNF_fix","Y","datestr","timestr","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","fs","get_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","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","console","error","message","_inflateRawSync","usz","_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","csz","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","_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","datenum","refdate","refoffset","numdate","setTime","parse_isodur","sec","good_pd_date","good_pd","parseDate","fixdate","cc2str","arr","debomit","dup","JSON","stringify","fuzzynum","Number","isFinite","NaN","wt","lower_months","fuzzydate","getYear","lower","safe_split_regex","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","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","skip_LC","z","eq","quot","strip_ns","encodings",""","'",">","<","&","rencoding","unescapexml","encregex","coderegex","decregex","charegex","escapexml","escapexmltag","htmlcharegex","escapehtml","escapexlml","xlml_fixstr","entregex","entrepl","xlml_unfixstr","parsexmlbool","value","utf8read","utf8reada","orig","utf8readb","corpus","utf8readc","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","xlsx","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","__readUInt16LE","___utf16le","__hexlify","___hexlify","__utf8","__readUInt8","___utf8","__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","utf8_b","double_","readDoubleLE","is_buf_b","cpdoit","__readInt16LE","__readInt32BE","oI","oR","oo","loc","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cppayload","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","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","3","14","parse_ClipboardFormatOrAnsiString","parse_ClipboardFormatOrUnicodeString","VT_I2","VT_I4","VT_BOOL","VT_VARIANT","VT_UI4","VT_LPSTR","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","4","9","10","11","12","13","15","16","17","19","22","2147483648","2147483651","1919054434","SummaryPIDSI","18","CountryEnum","20","39","45","46","47","48","49","82","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","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","CTYPE_XML_ROOT","xmlns:xsd","xmlns:xsi","write_ct","type2ct","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","VBA","get_rels_path","parse_rels","currentFilePath","!id","rel","Type","Target","Id","TargetMode","canonictarget","RELS_ROOT","write_rels","rid","RELS_EXTERN","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","21","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","XLSLblBuiltIn","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","37","38","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","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_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","rstr","record","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","rc_to_a1","shrbase","shift_formula_str","F_seen","process_col","hpx","pt2px","sylk_to_sheet","aoasht","sylk_to_workbook","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","sheet_to_dif","push_field","pf","topic","push_value","po","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","cellText","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","vers","qpro","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_INTEGER","parse_NUMBER","parse_FORMULA","wk1_fmla_to_csf","wk1_parse_rc","FuncTab","83","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","40","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","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","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","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","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","write_xlmeta_xml","parse_cc_xml","parse_BrtCalcChainItem$","parse_cc_bin","hopper_cc","parse_xlink_xml","parse_xlink_bin","xlink_parse","parse_drawing","_shapeid","write_comments_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","joinstyle","gradientshapeok","o:connecttype","o:spt","coordsize","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","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","109","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","quoteCharacters","formula_quote_sheet_name","sname","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","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","Workbook","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","Names","Sheet","Ref","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","write_cs_xml","parse_BrtCsProp","parse_cs_bin","cs_parse","write_cs_bin","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","WBProps","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","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","parse_wb_bin","hopper_wb","write_BUNDLESHS","viz","write_BrtFileVersion","write_BrtBookView","write_BOOKVIEWS","vistab","write_wb_bin","parse_wb","parse_ws","parse_cs","parse_ms","parse_ds","parse_sty","parse_theme","parse_sst","parse_cmnt","parse_cc","parse_xlink","parse_xlmeta","write_wb","write_ws","write_cs","write_sty","write_sst","write_cmnt","write_xlmeta","attregexg2","attregex2","xlml_parsexmltag","words","xlml_parsexmltagobj","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_clean_comment","parse_xlml_xml","opening","ishtml","_o","HTML_","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","html_to_book","book_new","book_append_sheet","make_html_row","editable","make_html_preamble","_BEGIN","_END","sheet_to_html","_row","BEGIN","END","_preamble","sheet_add_dom","or_R","or_C","getElementsByTagName","is_dom_element_hidden","elts","hasAttribute","getAttribute","innerHTML","Aelts","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","number_formats_ods","day","month","year","hours","minutes","seconds","am-pm","day-of-week","era","quarter","parse_content_xml","NFtag","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","number_format_map","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","rptR","rpt","nrange","ptp","parse_ods","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_content_ods","write_text_p","null_cell_xml","covered_cell_xml","ods","ROWS","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","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","TextDecoder","u8concat","u8a","reduce","acc","popcnt","readDecimal128LE","exp","mantissa","parse_varint49","ptr","varint","varint_to_i32","i32","parse_shallow","mappa","_a","parse_iwa_file","messages","parse_snappy_chunk","chunks","deframe","parse_old_storage","rsst","dv","getUint32","data_offset","ieee","getFloat64","parse_storage","d128","parse_cell_storage","parse_TSP_Reference","pb","parse_TST_TableDataList","le","rtp","rtpref","mtype","tswpsa","parse_TST_TileRowInfo","_b","_c","_e","_g","_h","_i","pre_bnc","pre_bnc_offsets","storage_offsets","wide_offsets","getUint16","parse_TST_Tile","parse_TST_TableModelArchive","store","tile","tiles","tl","tile2","parse_TST_TableInfoArchive","tableref","parse_TN_SheetArchive","shapeoffs","parse_TN_DocumentArchive","sheetoffs","root2","parse_numbers_iwa","packets","packet","docroot","iwams","iwam","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","dir","binname","link","propdata","pluck","deps","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Deps","Styles","bin","parse_xlsxcfb","dsm","seds","einfo","decrypt_agile","decrypt_std76","write_zip_xlsxb","write_zip_xlsx","foo","vbafmt","_sn","wsrels","_type","need_vml","rId1","needtc","read_cfb","read_zip","read_plaintext","main","read_plaintext_raw","read_utf16","bstrify","read_prn","readSync","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","JS","ws_get_cell_stub","json_to_sheet","RC","wb_sheet_idx","sh","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","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,IAAK,IACLypF,IAAK,IACLC,IAAK,QACLC,IAAK,SACL1pF,IAAK,QACLmwD,IAAK,UACLlwD,IAAK,QACL0pF,IAAK,WACLC,IAAK,SACLC,IAAK,OACLC,IAAK,YACL6N,IAAK,YACLj3B,IAAK,MACLqpB,IAAK,MACLC,IAAK,MACLC,IAAK,UACLC,IAAK,UACLvpB,IAAK,UACLwpB,IAAK,WACLC,IAAK,WACL96B,IAAK,OACLC,IAAK,UACLC,IAAK,WACLoR,IAAK,cACLC,IAAK,iBACLC,IAAK,gBACLC,IAAK,iBACL62B,IAAK,WACLC,IAAK,cACLxN,IAAK,iBACLyN,IAAK,iBACL53F,IAAK,aACLC,IAAK,QACLC,IAAK,UACLkqF,IAAK,WACLyN,IAAK,QACLxN,IAAK,QACLC,IAAK,OACLC,IAAK,OACLC,IAAK,SACLC,IAAK,aACLC,IAAK,MACLC,IAAK,QACLC,IAAK,QACL9pB,IAAK,OACLC,IAAK,WACLC,IAAK,UACL7gE,IAAK,OACLC,IAAK,UACL03F,IAAK,YACLC,IAAK,UACLC,IAAK,OACLC,IAAK,UACLC,IAAK,UACLj3B,IAAK,OACLC,IAAK,WACL7gE,IAAK,gBACL8gE,IAAK,aACLC,IAAK,eACLypB,IAAK,WACLC,IAAK,YACLC,IAAK,WACLC,IAAK,OACLC,IAAK,SACLC,IAAK,OACL7pB,IAAK,UACL8pB,IAAK,QACLC,IAAK,QACLC,IAAK,YACLC,IAAK,UACL/7B,IAAK,aACLC,IAAK,aACLlvD,IAAK,WACLghE,IAAK,QACLC,IAAK,UACLC,IAAK,WACLC,IAAK,QACL8pB,IAAK,SACLC,IAAK,OACLC,IAAK,OACLC,IAAK,UACLrmD,IAAK,YACLsmD,IAAK,MACLC,IAAK,OACLtmD,IAAK,OACLwmD,IAAK,UACLC,IAAK,UACLoM,IAAK,QACL53F,IAAK,MACLyrF,IAAK,OACLC,IAAK,UACLC,IAAK,SACLC,IAAK,WACLC,IAAK,SACLC,IAAK,aACLC,IAAK,OACL8L,IAAK,OACLC,IAAK,OACLC,IAAK,QACLC,IAAK,QACLC,IAAK,QACLC,IAAK,OACL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C,OACAC,KAAyB97F,EAAEsxD,IAC3BptD,KAA2BlE,EAAEgxD,IAC7BgU,OACAC,OACAC,OACA7gE,OACAC,OACA23F,OACAC,OACAC,OACAh3B,OACAC,OACA2pB,KAA2B/uF,EAAEupD,IAC7BylC,KAA8BhvF,EAAE0pD,IAChCylC,KAAyBnvF,EAAE++C,IAC3BuwC,OACAC,OACAC,OACA/7B,OACAC,OACAC,KAA4B3zD,EAAEk9C,IAC9B0W,OACApvD,OACAghE,OACAC,OACAC,OACAC,OACA8pB,OACAC,OACAC,OACApmD,OACAumD,OACAtmD,OACAumD,OACAtmD,KAA8BzpC,EAAEm/C,IAChC8wC,OACAoM,KAAqCr8F,EAAEk9C,IACvCz4C,OACA0rF,KAAwBnwF,EAAE2rD,IAC1BykC,KAAkCpwF,EAAE4kD,IACpCyrC,KAAkCrwF,EAAE++C,IACpCuxC,OACAE,KAAgCxwF,EAAEivD,IAClCwtC,OACAE,OACAC,OACAC,OACAC,OACArM,OACAsM,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACA1M,OACAE,OACAC,KAAyB9wF,EAAEylD,IAC3BsrC,KAA8B/wF,EAAEuoD,IAChC5jD,KAA4B3E,EAAE8lD,IAC9B8f,OACAC,OACAosB,OACAe,OACAC,OACAG,OACA8K,KAA6Bl+F,EAAEq/C,IAC/Bi0C,OACAC,OACAC,OACAO,OACAuK,OACA2kB,OACAzkB,OACAC,OACAzK,OACA0K,OACAzK,OACAC,OACAyK,OACAj1D,OACA6qD,KAA8Bv0F,EAAEk9C,IAChCgiD,KAAyBl/F,EAAE++C,IAC3BmhD,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACA9J,OACAoK,OACAC,OACAC,OACAC,OACAtK,KAA6B52F,EAAEwsD,IAC/BqqC,KAA8B72F,EAAEk9C,IAChC45C,OACAC,OACAC,OACAG,OACAC,KAAyBp3F,EAAEyvD,IAC3B4nC,KAAgCr3F,EAAEk9C,IAClCo6C,KAA2Bt3F,EAAE8vD,IAC7BynC,OACAC,KAA8Bx3F,EAAEsgD,IAChCm3C,OACAC,KAAkC13F,EAAEm/C,IACpCw4C,OACAC,OACAE,KAAgC93F,EAAE++C,IAClCg5C,KAA8B/3F,EAAEumD,GAAgB32C,EAAE,GAClDooF,KAA6Bh4F,EAAE++C,IAC/B8nB,KAAgC7mE,EAAEkpD,IAClC6d,KAA2B/mE,EAAEqxD,IAC7B+yD,KAA4BpkH,EAAEosD,IAC9B4a,KAA2BhnE,EAAE2oD,IAC7Bse,KAA6BjnE,EAAEksD,IAC/BuuC,KAA4Bz6F,EAAEuxD,IAC9BmpC,KAAyB16F,EAAEimD,IAC3B40C,OACAC,KAA2B96F,EAAEuuD,IAC7B2sC,KAAsCl7F,EAAEwmD,IACxC+/D,OACAK,KAA6B5mH,EAAE+nD,IAC/BsiE,KAAwBrqH,EAAEopD,IAC1Bwe,OACAulD,QACAM,MAA4BztH,EAAE8oD,IAC9BumE,QACAkM,MAA6Bv7H,EAAEmuD,IAC/Bya,MAAkC5oE,EAAEkwD,IACpC2Y,QACAgsD,QACAC,QACAhsD,QACAisD,QACAC,QACAC,QACAC,QACAC,MAAyBn1H,EAAEwkD,IAC3B4wE,QACAoG,QACAnG,QACAoG,QACAC,QACAC,QACAC,QACAC,QACAvG,QACA4D,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAkC,QACAC,MAA6BnsH,EAAE,IAC/BosH,QACAC,QACAC,QACAC,MAA6Bn8H,EAAE++C,IAC/Bq9E,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA2Bl9H,EAAE0wD,GAAa9gD,EAAE,IAC5CutH,MAA2Bn9H,EAAEy7E,GAAa7rE,EAAE,IAC5CwtH,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8B99H,EAAEk9C,GAAWttC,EAAE,IAC7CmuH,QACAC,MAAiCpuH,EAAE,IACnCquH,QACAC,QACAC,QACAC,QACAC,MAA6Br+H,EAAE+tD,GAAen+C,EAAE,IAChD0uH,QACAC,MAA2Bv+H,EAAE66E,GAAajrE,EAAE,IAC5C4uH,QACAC,QACAC,QACAC,MAAiC3+H,EAAEyuD,GAAmB7+C,EAAE,IACxDgvH,MAAsC5+H,EAAE++C,IACxC8/E,QACAC,QACAC,QACAC,QACAC,MAA0Cj/H,EAAEqmD,IAC5C64E,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,MAA2BhhI,EAAEm/C,IAC7B8hF,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8B9hI,EAAEkxD,IAChC6wE,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAAgCziI,EAAEuwD,IAClCmyE,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QAEA3/H,GAAgCzD,EAAEkpD,IAClCxlD,KACAC,GAA8B3D,EAAEgyD,IAChCxrB,GAA8BxmC,EAAE4xD,IAChClqB,GAA8B1nC,EAAE2xD,IAChCvoD,GAA6BpJ,EAAEksD,IAC/B1iD,GAA4BxJ,EAAEkyD,IAC9BxoD,KACAi+B,GAAyB3nC,EAAEwkD,IAC3B3c,MACAO,IAAiCpoC,EAAEm/C,IACnCppC,IAAiC/V,EAAEipD,IACnCjzC,MACAC,MACAC,IAA2BlW,EAAEuuD,IAC7Bl4C,MACAw9C,IAAsC7zD,EAAEwmD,IAKxClwC,IAAmCtW,EAAEmyD,IAQrCj7C,MAcAV,MACAW,MACAC,IAAkCpX,EAAEm/C,IACpCv6C,MACAwkC,MACAiqB,OACAk6B,KAA4BvtF,EAAEwxD,IAC9B2C,OACAlwD,OACA0pF,OAKAM,OAEAE,OACAC,OACA96B,OAIAo7B,OACAE,OACAtpB,OACA2pB,OACAC,OACAE,OACA7pB,OACAsqB,KAA6B7vF,EAAEoyD,IAC/B89B,OACAwM,OACA/yD,OACA4sD,OACAiE,KAA6Bx6F,EAAEgsF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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","undefined","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","_gc2","_ga2","DENSE","DIF_XL","Base64_map","Base64_encode","input","isNaN","Base64_decode","replace","node","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","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","fs","get_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","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","console","error","message","_inflateRawSync","usz","_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","csz","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","_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","lower_months","fuzzydate","getYear","lower","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","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","xlsx","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","cpdoit","__readInt16LE","__readInt32BE","oI","oR","oo","loc","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cppayload","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","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_LPSTR","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR","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?","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","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","XLSLblBuiltIn","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","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_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","rstr","record","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","rc_to_a1","shrbase","shift_formula_str","F_seen","process_col","hpx","pt2px","sylk_to_sheet","aoasht","sylk_to_workbook","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","sheet_to_dif","push_field","pf","topic","push_value","po","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","cellText","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","vers","qpro","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_INTEGER","parse_NUMBER","parse_FORMULA","wk1_fmla_to_csf","wk1_parse_rc","FuncTab","83","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","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","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","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","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","_shapeid","write_comments_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","joinstyle","gradientshapeok","o:connecttype","o:spt","coordsize","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","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","109","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","formula_quote_sheet_name","sname","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","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","Workbook","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","Names","Sheet","Ref","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","write_cs_xml","parse_BrtCsProp","parse_cs_bin","cs_parse","write_cs_bin","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","WBProps","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","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","parse_wb_bin","hopper_wb","write_BUNDLESHS","viz","write_BrtFileVersion","write_BrtBookView","write_BOOKVIEWS","vistab","write_wb_bin","parse_wb","parse_ws","parse_cs","parse_ms","parse_ds","parse_sty","parse_theme","parse_sst","parse_cmnt","parse_cc","parse_xlink","parse_xlmeta","write_wb","write_ws","write_cs","write_sty","write_sst","write_cmnt","write_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_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","book_append_sheet","make_html_preamble","sheet_to_html","sheet_add_dom","or_R","or_C","getElementsByTagName","is_dom_element_hidden","elts","hasAttribute","getAttribute","innerHTML","Aelts","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","number_formats_ods","day","month","year","hours","minutes","seconds","am-pm","day-of-week","era","quarter","parse_content_xml","NFtag","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","number_format_map","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","rptR","rpt","nrange","ptp","parse_ods","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_content_ods","write_text_p","null_cell_xml","covered_cell_xml","ods","ROWS","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","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","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","parse_old_storage","rsst","dv","getUint32","data_offset","ieee","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","_b","_c","_e","_g","_h","_i","_k","_l","_m","wide_offsets","used_storage_u8","used_storage","used_storage_offsets","getUint16","parse_TST_Tile","nrows","parse_TST_TableModelArchive","store","tile","tl","_tile","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","last_offset","cell_storage","_dv","_last_offset","_cell_storage","setUint16","celload","_celload","write_numbers_iwa","numbers","trunc","dependents","old_content","raw1","x2","packet2","deps","y2","indices_varint","ivi","some","mess","get_unique_msgid","xi","sheetrootref","cruidsref","oldbucket","_x","cruids","uuid","row_headers","row_header_ref","base_bucket","_bucket","col_header_ref","sstref","sentry","sx","sstroot","sxi","sstdata","newsst","sy","raw32","tileref","tentry","tx","tileroot","tiledata","rowload","R2","tilerow","ty","raw3","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","dir","binname","link","propdata","pluck","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Deps","Styles","bin","parse_xlsxcfb","dsm","seds","einfo","decrypt_agile","decrypt_std76","write_zip_xlsxb","write_zip_xlsx","foo","vbafmt","_sn","wsrels","_type","need_vml","rId1","needtc","read_cfb","read_zip","read_plaintext","main","read_plaintext_raw","read_utf16","bstrify","read_prn","readSync","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","JS","ws_get_cell_stub","json_to_sheet","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","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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,OACLC,IAAK,UACLr6B,IAAK,aACLC,IAAK,OACLC,IAAK,QACLC,IAAK,YACLC,IAAK,OACLC,IAAK,OACLC,IAAK,QACLg6B,IAAK,SACL1qF,IAAK,WACLC,IAAK,UACLC,IAAK,IACLyqF,IAAK,IACLC,IAAK,QACLC,IAAK,SACL1qF,IAAK,QACLmxD,IAAK,UACLlxD,IAAK,QACL0qF,IAAK,WACLC,IAAK,SACLC,IAAK,OACLC,IAAK,YACL6N,IAAK,YACLl3B,IAAK,MACLspB,IAAK,MACLC,IAAK,MACLC,IAAK,UACLC,IAAK,UACLxpB,IAAK,UACLypB,IAAK,WACLC,IAAK,WACL56B,IAAK,OACLC,IAAK,UACLC,IAAK,WACLiR,IAAK,cACLC,IAAK,iBACLC,IAAK,gBACLC,IAAK,iBACL82B,IAAK,WACLC,IAAK,cACLxN,IAAK,iBACLyN,IAAK,iBACL54F,IAAK,aACLC,IAAK,QACLC,IAAK,UACLkrF,IAAK,WACLyN,IAAK,QACLxN,IAAK,QACLC,IAAK,OACLC,IAAK,OACLC,IAAK,SACLC,IAAK,aACLC,IAAK,MACLC,IAAK,QACLC,IAAK,QACL/pB,IAAK,OACLC,IAAK,WACLC,IAAK,UACL5hE,IAAK,OACLC,IAAK,UACL04F,IAAK,YACLC,IAAK,UACLC,IAAK,OACLC,IAAK,UACLC,IAAK,UACLl3B,IAAK,OACLC,IAAK,WACL5hE,IAAK,gBACL6hE,IAAK,aACLC,IAAK,eACL0pB,IAAK,WACLC,IAAK,YACLC,IAAK,WACLC,IAAK,OACLC,IAAK,SACLC,IAAK,OACL9pB,IAAK,UACL+pB,IAAK,QACLC,IAAK,QACLC,IAAK,YACLC,IAAK,UACL77B,IAAK,aACLC,IAAK,aACLpwD,IAAK,WACL+hE,IAAK,QACLC,IAAK,UACLC,IAAK,WACLC,IAAK,QACL+pB,IAAK,SACLC,IAAK,OACLC,IAAK,OACLC,IAAK,UACLxmD,IAAK,YACLymD,IAAK,MACLC,IAAK,OACLzmD,IAAK,OACL2mD,IAAK,UACLC,IAAK,UACLoM,IAAK,QACL54F,IAAK,MACLysF,IAAK,OACLC,IAAK,UACLC,IAAK,SACLC,IAAK,WACLC,IAAK,SACLC,IAAK,aACLC,IAAK,OACL8L,IAAK,OACLC,IAAK,OACLC,IAAK,QACLC,IAAK,QACLC,IAAK,QACLC,IAAK,OACLC,IAAK,gBACLC,IAAK,WACLn5F,IAAK,aACLo5F,IAAK,cACLrM,IAAK,gBACLsM,IAAK,kBACLC,IAAK,gBACLtM,IAAK,WACLuM,IAAK,OACLC,IAAK,QACLC,IAAK,aACLC,IAAK,KACLC,IAAK,QACLxM,IAAK,SACLC,IAAK,YACLC,IAAK,cACLC,IAAK,iBACLrtF,IAAK,OACLgiE,IAAK,gBACL23B,IAAK,WACLC,IAAK,cACL33B,IAAK,WACLC,IAAK,iBACLC,IAAK,aACLC,IAAK,YACLC,IAAK,eACLw3B,IAAK,eACLv3B,IAAK,cACLC,IAAK,aACLC,IAAK,cACLC,IAAK,eACL6qB,IAAK,SACL5qB,IAAK,WACLC,IAAK,UACL4qB,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,QACL/qD,IAAK,UACLgrD,IAAK,aACL2K,IAAK,eACL11D,IAAK,QACLgrD,IAAK,cACLC,IAAK,cACL0K,IAAK,WACL11D,IAAK,eACL21D,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,mBACL9uB,IAAK,UACL+uB,IAAK,UACLC,IAAK,UACL0K,IAAK,UACLzK,IAAK,UACLhvB,IAAK,UACLC,IAAK,UACLgvB,IAAK,UACLC,IAAK,UACLhvB,IAAK,UACLivB,IAAK,UACLC,IAAK,UACLjvB,IAAK,QACLkvB,IAAK,QACLC,IAAK,UACLC,IAAK,QACLC,IAAK,SACLkK,IAAK,OACLC,IAAK,SACLC,IAAK,UACLC,IAAK,QACLC,IAAK,QACLC,IAAK,QACLC,IAAK,aACLC,IAAK,cACLC,IAAK,YACLC,IAAK,SACLC,IAAK,UACL3K,IAAK,QACLC,IAAK,YACLC,IAAK,YACLC,IAAK,aACLC,IAAK,SACLC,IAAK,WACLuK,IAAK,QACLC,IAAK,SACLp3D,IAAK,SACL6sD,IAAK,QACLC,IAAK,SACLC,IAAK,MACLC,IAAK,OACLC,IAAK,UACLoK,IAAK,UACLC,IAAK,UACLC,IAAK,UACLC,IAAK,OACLtK,IAAK,OACLC,IAAK,WACLC,IAAK,WACLC,IAAK,UACLC,IAAK,WACLC,IAAK,OACLC,IAAK,YACLC,IAAK,YACLC,IAAK,UACLC,IAAK,aACLC,IAAK,aACLC,IAAK,QACLC,IAAK,QACLC,IAAK,WACLC,IAAK,WACLC,IAAK,UACLC,IAAK,SACLC,IAAK,WACLC,IAAK,UACLC,IAAK,QACLC,IAAK,UACLC,IAAK,WACLC,IAAK,YACLC,IAAK,WACLC,IAAK,aACLC,IAAK,UACLC,IAAK,UACL6I,IAAK,UACL5I,IAAK,WACLC,IAAK,YACLC,IAAK,YACLC,IAAK,YACLC,IAAK,YACLC,IAAK,YACLC,IAAK,cACLC,IAAK,UACLC,IAAK,YACLC,IAAK,WACLC,IAAK,UACLmI,IAAK,UACLlI,IAAK,UACLC,IAAK,WACLC,IAAK,UACLC,IAAK,cACLC,IAAK,MACLC,IAAK,cACLC,IAAK,MACLC,IAAK,aACLC,IAAK,gBACLC,IAAK,UACL0H,IAAK,eACLzH,IAAK,UACLC,IAAK,WACLC,IAAK,SACLwH,IAAK,YACLC,IAAK,aAEP,IAAIvc,KACFriF,EAAG,EACHsF,EAAG,EACHG,GAAI,EACJK,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJgB,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJG,GAAI,EACJC,GAAI,EACJmM,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJ5N,GAAI,EACJC,GAAI,EACJC,GAAI,EACJoD,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJtD,GAAI,EACJE,GAAI,EACJC,GAAI,EACJoB,GAAI,EACJO,GAAI,EACJiB,GAAI,EACJE,GAAI,EACJC,GAAI,EACJlB,GAAI,EACJC,GAAI,EACJ1H,GAAI,EACJ2H,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJC,GAAI,EACJjJ,GAAI,EACJmJ,GAAI,EACJC,GAAI,EACJm3D,GAAI,EACJypB,GAAI,EACJ3jD,GAAI,EACJgrB,GAAI,EACJ/qB,GAAI,EACJ2jD,GAAI,EACJC,GAAI,EACJ1E,GAAI,EACJC,GAAI,EACJC,GAAI,EACJ31B,IAAK,EACLC,IAAK,EACLzpB,IAAK,EACL4pB,IAAK,EACLmB,IAAK,EACLkP,IAAK,EACL2pB,IAAK,EACLC,IAAK,EACLC,IAAK,EACLG,IAAK,EACLC,IAAK,EACLC,IAAK,EACLp6B,IAAK,EACLK,IAAK,EACLg6B,IAAK,EACL1qF,IAAK,EACLC,IAAK,EACLC,IAAK,EACLyqF,IAAK,EACLE,IAAK,EACL1qF,IAAK,EACLmxD,IAAK,EACLlxD,IAAK,EACL0qF,IAAK,EACLC,IAAK,EACLE,IAAK,EACL6N,IAAK,EACLl3B,IAAK,EACLspB,IAAK,EACLC,IAAK,EACL9qF,IAAK,EACLC,IAAK,EACLC,IAAK,EACLkrF,IAAK,EACLyN,IAAK,EACLlN,IAAK,EACL7pB,IAAK,EACLC,IAAK,EACL5hE,IAAK,EACLC,IAAK,EACL04F,IAAK,EACL92B,IAAK,EACL3hE,IAAK,EACLwrF,IAAK,EACLC,IAAK,EACL1pB,IAAK,EACL+pB,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACL57B,IAAK,EACL6R,IAAK,EACLiqB,IAAK,EACLC,IAAK,EACLC,IAAK,EACLxmD,IAAK,EACLymD,IAAK,EACLC,IAAK,EACLM,IAAK,EACLI,IAAK,EACL8L,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLM,IAAK,EACLG,IAAK,EACLtM,IAAK,EACLwM,IAAK,EACLx3B,IAAK,EACLQ,IAAK,EACL6qB,IAAK,EACLC,IAAK,EACLqM,IAAK,EACLpM,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACL4L,IAAK,EACLC,IAAK,EACL5L,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLwL,IAAK,EACLvL,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLqL,IAAK,EACLC,IAAK,EACLC,IAAK,EACLtL,IAAK,EACLuL,IAAK,EACLC,IAAK,EACLvL,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLQ,IAAK,EACLsK,IAAK,EACLC,IAAK,EACLtK,IAAK,EACLwK,IAAK,EACLC,IAAK,EACLG,IAAK,EACLvK,IAAK,EACLC,IAAK,EACL0K,IAAK,EACLC,IAAK,EACLzK,IAAK,EACL/qD,IAAK,EACLgrD,IAAK,EACL2K,IAAK,EACLG,IAAK,EACLQ,IAAK,EACLC,IAAK,EACLpL,IAAK,EACLqL,IAAK,EACLC,IAAK,EACLrL,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLI,IAAK,EACLE,IAAK,EACLI,IAAK,EACLhvB,IAAK,EACLC,IAAK,EACLkvB,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLkK,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLxK,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACL5sD,IAAK,EACL6sD,IAAK,EACLC,IAAK,EACLE,IAAK,EACLC,IAAK,EACLoK,IAAK,EACLC,IAAK,EACLC,IAAK,EACLrK,IAAK,EACLQ,IAAK,EACLC,IAAK,EACLC,IAAK,EACLG,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLC,IAAK,EACLa,IAAK,EACLI,IAAK,EACLQ,IAAK,EACL4H,IAAK,EACLzH,IAAK,EACLtvD,MAAO,EAGT,SAASk3D,IAAmBxiG,GAC3B,GAAGA,EAAEV,MAAM,EAAE,IAAM,MAAOU,EAAIA,EAAEV,MAAM,EAEtC,IAAGU,EAAExE,WAAW,IAAM,GAAI,CACzBwE,EAAIA,EAAEV,MAAM,EACZ,IAAGU,EAAExE,WAAW,IAAM,GAAIwE,EAAIA,EAAEV,MAAM,GAEvCU,EAAIA,EAAEmG,QAAQ,oBAAqB,GAEnCnG,GAAIA,EAAEmG,QAAQ,gDAAiD,SAASqM,EAAIC,GAAM,MAAOA,GAAGtM,QAAQ,MAAM,KAE1GnG,GAAIA,EAAEmG,QAAQ,sBAAuB,KACrC,OAAOnG,GAAEmG,QAAQ,QAAQ,KAAKA,QAAQ,MAAM,KAG7C,QAASs8F,IAAmBziG,GAC3B,GAAIkF,GAAI,OAASlF,EAAEmG,QAAQi9E,GAAW,iBAAiBj9E,QAAQ,SAAS,IAExE,OAAOjB,GAAEiB,QAAQ,KAAM,KAAKA,QAAQ,KAAK,KAG1C,QAASu8F,IAAc5vF,GACtB,GAAIyT,GAAIzT,EAAEjX,MAAM,IAChB,IAAIgF,GAAI0lB,EAAE,GAAG1qB,MAAM,KAAK,EACxB,QAAQgF,EAAG0lB,EAAE,GAAG1qB,MAAM,KAAK,IAAM0qB,EAAEhrB,OAAS,EAAK,KAAOgrB,EAAE,GAAG1qB,MAAM,KAAK,IAAM0qB,EAAE,GAAG1qB,MAAM,KAAK,IAAO,KAGtG,QAAS8mG,IAAc7vF,GACtB,MAAOA,GAAE3M,QAAQ,KAAK,KAGvB,GAAIisC,MACJ,IAAIwwD,MAIJ,IAAIC,UAAyBC,OAAQ,WAErC,SAASC,IAAWhvD,EAAKngC,EAAK6R,GAC7B,GAAInqB,GAAI,EAAGqD,EAAMo1C,EAAIx4C,MACrB,IAAGkqB,EAAK,CACP,GAAGo9E,GAAkBp9E,EAAIu9E,IAAIpvF,GAAOlV,OAAO8xB,UAAUC,eAAejxB,KAAKimB,EAAK7R,GAAM,CACnF,GAAIqvF,GAASJ,GAAkBp9E,EAAIy9E,IAAItvF,GAAO6R,EAAI7R,EAClD,MAAMtY,EAAI2nG,EAAO1nG,SAAUD,EAAG,CAC7B,GAAGy4C,EAAIkvD,EAAO3nG,IAAI2M,IAAM2L,EAAK,CAAEmgC,EAAI8S,OAAU,OAAOo8C,GAAO3nG,UAGvD,MAAMA,EAAIqD,IAAOrD,EAAG,CAC1B,GAAGy4C,EAAIz4C,GAAG2M,IAAM2L,EAAK,CAAEmgC,EAAI8S,OAAU,OAAOvrD,IAE7Cy4C,EAAIp1C,IAASsJ,EAAE2L,EAAOmgC,GAAI8S,OAAU9S,GAAI+S,QACxC,IAAGrhC,EAAK,CACP,GAAGo9E,GAAiB,CACnB,IAAIp9E,EAAIu9E,IAAIpvF,GAAM6R,EAAIpe,IAAIuM,KAC1B6R,GAAIy9E,IAAItvF,GAAK9Q,KAAKnE,OACZ,CACN,IAAID,OAAO8xB,UAAUC,eAAejxB,KAAKimB,EAAK7R,GAAM6R,EAAI7R,KACxD6R,GAAI7R,GAAK9Q,KAAKnE,IAGhB,MAAOA,GAGR,QAASwkG,IAAUzhG,EAAGigC,GACrB,GAAInnB,IAAMhG,IAAI9S,EAAE,EAAE+S,IAAI/S,EAAE,EAExB,IAAIy0D,IAAO,CACX,IAAGx0B,EAAI6xC,IAAKA,GAAM7xC,EAAI6xC,GACtB,IAAG7xC,EAAIsf,OAAS,KAAMzmC,EAAE05D,YAAc,MACjC,IAAGvyC,EAAIy8B,KAAO,KAAMjI,EAAMmI,GAAQ38B,EAAIy8B,SACtC,IAAGz8B,EAAIw0B,KAAO,KAAMA,EAAMx0B,EAAIw0B,GACnC,IAAGA,GAAO,EAAG,CAAE37C,EAAEymC,MAAQyyB,GAAWvd,EAAM37C,GAAE05D,YAAc,MACrD,IAAGvyC,EAAIsf,OAAS,KAAMzmC,EAAEymC,MAAQtf,EAAIsf,KACzC,IAAGtf,EAAI6kB,OAAQhsC,EAAEgsC,OAAS,IAC1B,IAAG7kB,EAAI0lB,OAAS,KAAM,CAAE7sC,EAAE4oF,aAAe5oF,EAAE6sC,MAAQ1lB,EAAI0lB,MACvD,MAAO7sC,GAGR,QAAS6oF,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,EAAQlmF,QAAU,KAAMkmF,EAAQlmF,OAASomF,EAAK,EACjD,IAAGF,EAAQnxC,QAAU,KAAMmxC,EAAQnxC,OAASqxC,EAAK,GAGlD,QAASK,IAAenxD,EAAQlS,EAAM9xB,GACrC,GAAIuoB,GAAIvoB,EAAKo1F,OAAOtjE,EAAKvJ,GAAK,KAAOuJ,EAAKvJ,EAAI,UAC9C,IAAI37B,GAAI,GAAMqD,EAAM+zC,EAAOn3C,MAC3B,IAAG07B,GAAK,MAAQvoB,EAAKq1F,IAAK,CACzB,KAAMzoG,EAAI,MAASA,EAAG,GAAGoT,EAAKq1F,IAAIzoG,IAAM,KAAM,CAC7Cwb,GAAS0pB,EAAKvJ,EAAG37B,EAEjBoT,GAAKq1F,IAAIzoG,GAAKklC,EAAKvJ,CACnBvoB,GAAKo1F,OAAOtjE,EAAKvJ,GAAKA,EAAI37B,CAC1B,QAGF,IAAIA,EAAI,EAAGA,GAAKqD,IAAOrD,EAAG,GAAGo3C,EAAOp3C,GAAG+mC,WAAapL,EAAG,MAAO37B,EAC9Do3C,GAAO/zC,IACN0jC,SAASpL,EACTojD,OAAO,EACPC,OAAO,EACPC,SAAS,EACTd,KAAK,EACLuqB,kBAAkB,EAEnB,OAAOrlG,GAGR,QAASslG,IAAYzpF,EAAG6/B,EAAO6pD,EAAQx1F,EAAMwkC,EAAQR,GACpD,IACC,GAAGhkC,EAAKsyD,OAAQxmD,EAAEyc,EAAIjuB,EAAUqxC,GAC/B,MAAMh/C,GAAK,GAAGqT,EAAKorB,IAAK,KAAMz+B,GAChC,GAAGmf,EAAEvS,IAAM,MAAQyG,EAAKs8C,WAAY,MACpC,IAAGxwC,EAAEvS,IAAM,WAAcuS,GAAExS,IAAM,SAAUwS,EAAExS,EAAI6pB,GAAUrX,EAAExS,EAC7D,MAAK0G,GAAQA,EAAKqyD,WAAa,QAAUvmD,EAAEvS,IAAM,IAAK,IACrD,GAAGe,EAAUqxC,IAAU,KAAMvjC,GAASY,GAAY2iC,IAAU,UAAWA,EACvE,IAAG7/B,EAAEvS,IAAM,IAAKuS,EAAEpb,EAAIob,EAAEpb,GAAKmjC,GAAK/nB,EAAExS,OAC/B,IAAGqyC,IAAU,EAAG,CACpB,GAAG7/B,EAAEvS,IAAM,IAAK,CACf,IAAIuS,EAAExS,EAAE,KAAOwS,EAAExS,EAAGwS,EAAEpb,EAAIob,EAAExS,EAAEzI,SAAS,QAClCib,GAAEpb,EAAIyR,GAAgB2J,EAAExS,OAEzB,IAAGwS,EAAEvS,IAAM,IAAK,CACpB,GAAI8L,GAAKmd,GAAQ1W,EAAExS,EACnB,KAAI+L,EAAG,KAAOA,EAAIyG,EAAEpb,EAAI2U,EAAGxU,SAAS,QAC/Bib,GAAEpb,EAAIyR,GAAgBkD,OAEvB,IAAGyG,EAAExS,IAAM1E,UAAW,MAAO,OAC7BkX,GAAEpb,EAAI+R,GAAYqJ,EAAExS,EAAE46F,QAEvB,IAAGpoF,EAAEvS,IAAM,IAAKuS,EAAEpb,EAAIgS,GAAWipC,EAAMnpB,GAAQ1W,EAAExS,GAAG46F,QACpDpoF,GAAEpb,EAAIgS,GAAWipC,EAAM7/B,EAAExS,EAAE46F,IAC/B,MAAMvnG,GAAK,GAAGqT,EAAKorB,IAAK,KAAMz+B,GAChC,IAAIqT,EAAKs8C,WAAY,MACrB,IAAGk5C,GAAU,KAAM,IAClB1pF,EAAE3Z,EAAI6xC,EAAOkjC,MAAMsuB,EACnB,IAAI1pF,EAAE3Z,EAAEk1E,SAAWv7D,EAAE3Z,EAAEk1E,QAAQ7uC,QAAU1sB,EAAE3Z,EAAEk1E,QAAQ/uC,IAAK,CACzDxsB,EAAE3Z,EAAEk1E,QAAQ/uC,IAAMmsC,GAASjgC,EAAOojC,cAAcC,UAAU/7D,EAAE3Z,EAAEk1E,QAAQ7uC,OAAOF,IAAKxsB,EAAE3Z,EAAEk1E,QAAQ5uC,MAAQ,EACtG,IAAGz4B,EAAKorB,IAAKtf,EAAE3Z,EAAEk1E,QAAQouB,QAAUjxD,EAAOojC,cAAcC,UAAU/7D,EAAE3Z,EAAEk1E,QAAQ7uC,OAAOF,IAEtF,GAAIxsB,EAAE3Z,EAAEg1E,SAAWr7D,EAAE3Z,EAAEg1E,QAAQ3uC,MAAO,CACrC1sB,EAAE3Z,EAAEg1E,QAAQ7uC,IAAMmsC,GAASjgC,EAAOojC,cAAcC,UAAU/7D,EAAE3Z,EAAEg1E,QAAQ3uC,OAAOF,IAAKxsB,EAAE3Z,EAAEg1E,QAAQ1uC,MAAQ,EACtG,IAAGz4B,EAAKorB,IAAKtf,EAAE3Z,EAAEg1E,QAAQsuB,QAAUjxD,EAAOojC,cAAcC,UAAU/7D,EAAE3Z,EAAEg1E,QAAQ3uC,OAAOF,KAErF,MAAM3rC,GAAK,GAAGqT,EAAKorB,KAAO4Y,EAAOkjC,MAAO,KAAMv6E,IAGjD,QAAS+oG,IAASphE,EAAIgoD,EAAO1vF,GAC5B,GAAG0nC,GAAMA,EAAG,QAAS,CACpB,GAAInC,GAAQqB,GAAkBc,EAAG,QACjC,IAAGnC,EAAMxlC,EAAEuE,EAAIihC,EAAMhgC,EAAEjB,GAAKihC,EAAMxlC,EAAEyX,EAAI+tB,EAAMhgC,EAAEiS,EAAG,KAAM,IAAI1W,OAAM,cAAgBd,EAAI,MAAQ0nC,EAAG,UAGpG,QAASqhE,IAAiBrhE,EAAIniC,GAC7B,GAAI1F,GAAI+mC,GAAkBrhC,EAC1B,IAAG1F,EAAE0F,EAAEiS,GAAG3X,EAAEE,EAAEyX,GAAK3X,EAAE0F,EAAEjB,GAAGzE,EAAEE,EAAEuE,GAAKzE,EAAE0F,EAAEiS,GAAG,GAAK3X,EAAE0F,EAAEjB,GAAG,EAAGojC,EAAG,QAAUjB,GAAa5mC,GAEpF,GAAImpG,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,IAAa/lG,EAAMyP,EAAM0D,EAAKwgC,EAAMiT,EAAI3S,EAAQR,GACxD,IAAIzzC,EAAM,MAAOA,EACjB,KAAI2zC,EAAMA,GAAQyD,SAClB,IAAGzwC,GAAS,MAAQ8I,EAAKq0B,OAAS,KAAMr0B,EAAKq0B,MAAQn9B,CAGrD,IAAI/E,GAAI6N,EAAKq0B,WACb,IAAIo/B,IAAathE,GAAIiS,EAAE,IAASlT,EAAE,KAAUvE,GAAIyX,EAAE,EAAGlT,EAAE,GAEvD,IAAIqlG,GAAQ,GAAIC,EAAQ,EACxB,IAAIC,GAAOlmG,EAAKkD,MAAMoiG,GACtB,IAAGY,EAAM,CACRF,EAAQhmG,EAAKK,MAAM,EAAG6lG,EAAK3+D,MAC3B0+D,GAAQjmG,EAAKK,MAAM6lG,EAAK3+D,MAAQ2+D,EAAK,GAAG5pG,YAClC0pG,GAAQC,EAAQjmG,CAGvB,IAAImmG,GAAUH,EAAM9iG,MAAM0iG,GAC1B,IAAGO,EAASC,GAAqBD,EAAQ,GAAIvkG,EAAGglD,EAAIzzC,OAC/C,IAAIgzF,EAAUH,EAAM9iG,MAAM2iG,IAAiBQ,GAAsBF,EAAQ,GAAIA,EAAQ,IAAI,GAAIvkG,EAAGglD,EAAIzzC,EAAKsgC,EAAQQ,EAGtH,IAAIvrC,IAAQs9F,EAAM9iG,MAAM,yBAAyBqkC,OAAO,IAAIA,KAC5D,IAAG7+B,EAAO,EAAG,CACZ,GAAI2nD,GAAM21C,EAAM3lG,MAAMqI,EAAKA,EAAK,IAAIxF,MAAMsiG,GAC1C,IAAGn1C,EAAK+0C,GAAiBxjG,EAAGyuD,EAAI,IAIjC,GAAIi2C,GAAMN,EAAM9iG,MAAM4iG,GACtB,IAAGQ,GAAOA,EAAI,GAAIC,GAAwBD,EAAI,GAAI1/C,EAGlD,IAAI4/C,KACJ,IAAG/2F,EAAKs8C,WAAY,CAEnB,GAAI4L,GAAOquC,EAAM9iG,MAAMuiG,GACvB,IAAG9tC,EAAM8uC,GAAkBD,EAAS7uC,GAIrC,GAAGuuC,EAAMQ,GAAkBR,EAAK,GAAItkG,EAAG6N,EAAMyzD,EAAUjvB,EAAQR,EAG/D,IAAIkzD,GAAUV,EAAM/iG,MAAMwiG,GAC1B,IAAGiB,EAAS/kG,EAAE,eAAiBglG,GAAwBD,EAAQ,GAG/D,IAAIx1C,KACJ,IAAI01C,GAASZ,EAAM/iG,MAAMmiG,GACzB,IAAGwB,EAAQ,IAAIn+F,EAAO,EAAGA,GAAQm+F,EAAOvqG,SAAUoM,EACjDyoD,EAAOzoD,GAAQu6B,GAAkB4jE,EAAOn+F,GAAMrI,MAAMwmG,EAAOn+F,GAAM9F,QAAQ,KAAM,GAGhF,IAAIovD,GAAQi0C,EAAM/iG,MAAMqiG,GACxB,IAAGvzC,EAAO80C,GAAoBllG,EAAGowD,EAAOre,EAGxC,IAAI0wD,GAAU4B,EAAM/iG,MAAMyiG,GAC1B,IAAGtB,EAASziG,EAAE,YAAcmlG,GAAqBnvE,GAAYysE,EAAQ,IAErE,KAAIziG,EAAE,SAAWshE,EAAS9mE,EAAEuE,GAAKuiE,EAASthE,EAAEjB,GAAKuiE,EAAS9mE,EAAEyX,GAAKqvD,EAASthE,EAAEiS,EAAGjS,EAAE,QAAUkhC,GAAaogC,EACxG,IAAGzzD,EAAKunD,UAAY,GAAKp1D,EAAE,QAAS,CACnC,GAAIolG,GAAS/jE,GAAkBrhC,EAAE,QACjC,IAAG6N,EAAKunD,YAAcgwC,EAAO5qG,EAAEyX,EAAG,CACjCmzF,EAAO5qG,EAAEyX,EAAIpE,EAAKunD,UAAY,CAC9B,IAAGgwC,EAAO5qG,EAAEyX,EAAIqvD,EAAS9mE,EAAEyX,EAAGmzF,EAAO5qG,EAAEyX,EAAIqvD,EAAS9mE,EAAEyX,CACtD,IAAGmzF,EAAO5qG,EAAEyX,EAAImzF,EAAOplG,EAAEiS,EAAGmzF,EAAOplG,EAAEiS,EAAImzF,EAAO5qG,EAAEyX,CAClD,IAAGmzF,EAAO5qG,EAAEuE,EAAIuiE,EAAS9mE,EAAEuE,EAAGqmG,EAAO5qG,EAAEuE,EAAIuiE,EAAS9mE,EAAEuE,CACtD,IAAGqmG,EAAO5qG,EAAEuE,EAAIqmG,EAAOplG,EAAEjB,EAAGqmG,EAAOplG,EAAEjB,EAAIqmG,EAAO5qG,EAAEuE,CAClDiB,GAAE,YAAcA,EAAE,OAClBA,GAAE,QAAUkhC,GAAakkE,IAG3B,GAAGR,EAAQlqG,OAAS,EAAGsF,EAAE,SAAW4kG,CACpC,IAAGr1C,EAAO70D,OAAS,EAAGsF,EAAE,WAAauvD,CACrC,OAAOvvD,GAGR,QAASqlG,IAAoB91C,GAC5B,GAAGA,EAAO70D,SAAW,EAAG,MAAO,EAC/B,IAAI2J,GAAI,sBAAwBkrD,EAAO70D,OAAS,IAChD,KAAI,GAAID,GAAI,EAAGA,GAAK80D,EAAO70D,SAAUD,EAAG4J,GAAK,mBAAqB68B,GAAaquB,EAAO90D,IAAM,KAC5F,OAAO4J,GAAI,gBAIZ,QAASmgG,IAAqBD,EAASvkG,EAAGglD,EAAIzzC,GAC7C,GAAInT,GAAO43B,GAAYuuE,EACvB,KAAIv/C,EAAGjjB,OAAOxwB,GAAMyzC,EAAGjjB,OAAOxwB,KAC9B,IAAGnT,EAAKknG,SAAUtgD,EAAGjjB,OAAOxwB,GAAKg0F,SAAWxuE,GAAYqB,GAASh6B,EAAKknG,WAEvE,QAASb,IAAsBF,EAAS11E,EAAM7uB,EAAGglD,EAAIzzC,GACpDizF,GAAqBD,EAAQ9lG,MAAM,EAAG8lG,EAAQvjG,QAAQ,MAAOhB,EAAGglD,EAAIzzC,GAErE,QAASi0F,IAAqBrjE,EAAI6iB,EAAIzzC,EAAK1D,EAAMxJ,GAChD,GAAIohG,GAAS,KACb,IAAIvtD,MAAY/5B,EAAU,IAC1B,IAAGtQ,EAAK6lC,WAAa,QAAUsR,EAAG0gD,OAAQ,CACzC,GAAIC,GAAQ3gD,EAAGljB,WAAWvwB,EAC1B,KAAM,GAAGyzC,EAAG4gD,SAAUD,EAAQ3gD,EAAG4gD,SAAS7jE,OAAOxwB,GAAKg0F,UAAYI,EAAS,MAAMnrG,IACjFirG,EAAS,IACTvtD,GAAMotD,SAAW13E,GAAUwJ,GAAUuuE,IAGtC,GAAGxjE,GAAMA,EAAG,YAAa,CACxB,GAAI0jE,IAAgBC,aAAa,EAAGC,aAAa,EACjD,IAAG5jE,EAAG,YAAY6jE,MAAOH,EAAaC,aAAe,CACrD,IAAG3jE,EAAG,YAAYygE,KAAMiD,EAAaE,aAAe,CACpD5nF,IAAWA,GAAS,IAAMkb,GAAU,YAAa,KAAMwsE,GAGxD,IAAIJ,IAAWtnF,EAAS,MACxB9Z,GAAEA,EAAE3J,QAAW2+B,GAAU,UAAWlb,EAAS+5B,GAI9C,GAAI+tD,KAAsB,UAAW,YAAa,oBAAqB,sBACvE,IAAIC,KACH,gBAAiB,aAAc,cAC/B,gBAAiB,aAAc,mBAC/B,gBAAiB,aACjB,OAAQ,aAAc,cAEvB,SAASC,IAAwBrb,GAEhC,GAAIzmF,IAAMu9B,MAAM,EAChBqkE,IAAmB7lG,QAAQ,SAAS9C,GAAK,GAAGwtF,EAAGxtF,IAAM,MAAQwtF,EAAGxtF,GAAI+G,EAAE/G,GAAK,KAC3E4oG,IAAkB9lG,QAAQ,SAAS9C,GAAK,GAAGwtF,EAAGxtF,IAAM,OAASwtF,EAAGxtF,GAAI+G,EAAE/G,GAAK,KAE3E,IAAGwtF,EAAG5a,SAAU7rE,EAAE6rE,SAAWrB,GAAsCic,EAAG5a,UAAUxxE,SAAS,IAAI2R,aAC7F,OAAOgpB,IAAU,kBAAmB,KAAMh1B,GAG3C,QAAS6gG,IAAoBllG,EAAG5B,EAAM2zC,GACrC,GAAI7P,GAAQ7gC,MAAM4E,QAAQjG,EAC1B,KAAI,GAAIvF,GAAI,EAAGA,GAAK2D,EAAK1D,SAAUD,EAAG,CACrC,GAAIkW,GAAMqlB,GAAYoC,GAASh6B,EAAK3D,IAAK,KACzC,KAAIkW,EAAI89C,IAAK,MACb,IAAIhZ,KAAQ1D,OAAY,YAAYphC,EAAIwzC,GACxC,IAAG1O,EAAK,CACP9kC,EAAIglC,OAASF,EAAIE,MACjB,IAAGhlC,EAAIy1F,SAAUz1F,EAAIglC,QAAU,IAAI5e,GAAYpmB,EAAIy1F,cAC7C,CACNz1F,EAAIglC,OAAS,IAAM5e,GAAYpmB,EAAIy1F,SACnC3wD,IAAOE,OAAQhlC,EAAIglC,OAAQE,WAAY,YAExCllC,EAAI01F,IAAM5wD,CACV,IAAG9kC,EAAI21F,QAAS,CAAE31F,EAAIyxC,QAAUzxC,EAAI21F,cAAgB31F,GAAI21F,QACxD,GAAIC,GAAMllE,GAAkB1wB,EAAI89C,IAChC,KAAI,GAAIj1C,GAAE+sF,EAAIvmG,EAAEiS,EAAEuH,GAAG+sF,EAAI/rG,EAAEyX,IAAIuH,EAAG,IAAI,GAAI3Y,GAAE0lG,EAAIvmG,EAAEjB,EAAE8B,GAAG0lG,EAAI/rG,EAAEuE,IAAI8B,EAAG,CACnE,GAAIme,GAAOkhB,IAAanhC,EAAE8B,EAAEoR,EAAEuH,GAC9B,IAAG0oB,EAAO,CACT,IAAIliC,EAAEwZ,GAAIxZ,EAAEwZ,KACZ,KAAIxZ,EAAEwZ,GAAG3Y,GAAIb,EAAEwZ,GAAG3Y,IAAMuG,EAAE,IAAID,EAAE1E,UAChCzC,GAAEwZ,GAAG3Y,GAAGmB,EAAI2O,MACN,CACN,IAAI3Q,EAAEgf,GAAOhf,EAAEgf,IAAS5X,EAAE,IAAID,EAAE1E,UAChCzC,GAAEgf,GAAMhd,EAAI2O,KAMhB,QAASw0F,IAAqBqB,GAC7B,GAAIniG,OACH,OAAQ,QAAS,MAAO,SAAU,SAAU,UAAUjE,QAAQ,SAASd,GACvE,GAAGknG,EAAOlnG,GAAI+E,EAAE/E,GAAKoW,WAAW8wF,EAAOlnG,KAExC,OAAO+E,GAER,QAASoiG,IAAqBD,GAC7BhE,GAAgBgE,EAChB,OAAOntE,IAAU,cAAe,KAAMmtE,GAGvC,QAAS3B,IAAkBD,EAAS7uC,GACnC,GAAI2wC,GAAU,KACd,KAAI,GAAIC,GAAO,EAAGA,GAAQ5wC,EAAKr7D,SAAUisG,EAAM,CAC9C,GAAIvzB,GAAOp9C,GAAY+/B,EAAK4wC,GAAO,KACnC,IAAGvzB,EAAKztB,OAAQytB,EAAKztB,OAAS9tB,GAAau7C,EAAKztB,OAChD,IAAIihD,GAAKv0F,SAAS+gE,EAAKz/D,IAAK,IAAI,EAAGkzF,EAAKx0F,SAAS+gE,EAAKx/D,IAAI,IAAI,CAC9D,IAAGw/D,EAAKmvB,aAAcnvB,EAAK5sB,OAAU4sB,EAAKmvB,cAAgB,QACnDnvB,GAAKz/D,UAAYy/D,GAAKx/D,GAAKw/D,GAAKhzB,OAASgzB,EAAKhzB,KACrD,KAAIsmD,GAAWtzB,EAAKhzB,MAAO,CAAEsmD,EAAU,IAAMzzB,IAAcG,EAAKhzB,OAChEyc,GAAYuW,EACZ,OAAMwzB,GAAQC,EAAMjC,EAAQgC,KAAU3zE,GAAImgD,IAG5C,QAAS0zB,IAAkB3kE,EAAI4zB,GAC9B,GAAI1xD,IAAK,UAAWy8B,CACpB,KAAI,GAAIrmC,GAAI,EAAGA,GAAKs7D,EAAKr7D,SAAUD,EAAG,CACrC,KAAKqmC,EAAMi1B,EAAKt7D,IAAK,QACrB4J,GAAEA,EAAE3J,QAAW2+B,GAAU,MAAO,KAAMipE,GAAU7nG,EAAGqmC,IAEpDz8B,EAAEA,EAAE3J,QAAU,SACd,OAAO2J,GAAEnD,KAAK,IAGf,QAAS8jG,IAAwB5mG,GAChC,GAAIiG,IAAMoqD,KAAMrwD,EAAKkD,MAAM,sBAAsB,GACjD,OAAO+C,GAER,QAAS0iG,IAAwB3oG,EAAM+jC,EAAI6iB,EAAIzzC,GAC9C,GAAIk9C,SAAarwD,GAAKqwD,KAAO,SAAWrwD,EAAKqwD,IAAMvtB,GAAa9iC,EAAKqwD,IACrE,KAAIzJ,EAAG4gD,SAAU5gD,EAAG4gD,UAAa7jE,UACjC,KAAIijB,EAAG4gD,SAASoB,MAAOhiD,EAAG4gD,SAASoB,QACnC,IAAI9b,GAAQlmC,EAAG4gD,SAASoB,KACxB,IAAIhnE,GAAQiB,GAAawtB,EACzB,IAAGzuB,EAAMhgC,EAAEiS,GAAK+tB,EAAMxlC,EAAEyX,EAAG,CAAE+tB,EAAMxlC,EAAEyX,EAAIgvB,GAAakB,EAAG,SAAS3nC,EAAEyX,CAAGw8C,GAAMvtB,GAAalB,GAC1F,IAAI,GAAIvlC,GAAI,EAAGA,EAAIywF,EAAMxwF,SAAUD,EAAG,CACrC,GAAIuiB,GAAOkuE,EAAMzwF,EACjB,IAAGuiB,EAAKywC,MAAQ,wBAAyB,QACzC,IAAGzwC,EAAKiqF,OAAS11F,EAAK,QACtByL,GAAKkqF,IAAM,IAAMliD,EAAGljB,WAAWvwB,GAAO,KAAOk9C,CAAK,OAEnD,GAAGh0D,GAAKywF,EAAMxwF,OAAQwwF,EAAMjpF,MAAOwrD,KAAM,wBAAyBw5C,MAAO11F,EAAK21F,IAAK,IAAMliD,EAAGljB,WAAWvwB,GAAO,KAAOk9C,GACrH,OAAOp1B,IAAU,aAAc,MAAOo1B,IAAIA,IAK3C,GAAI04C,IAAa,yCACjB,SAASxC,IAAwBvmG,EAAM4mD,GACtC,IAAIA,EAAGoiD,MAAOpiD,EAAGoiD,YAChBhpG,EAAKkD,MAAM6lG,SAAiB/mG,QAAQ,SAAS6R,EAAGxX,GAChD,GAAIw7B,GAAMD,GAAY/jB,EAEtB,KAAI+yC,EAAGoiD,MAAM3sG,GAAIuqD,EAAGoiD,MAAM3sG,KAE1B,KAAIw7B,EAAIoxE,UAAWriD,EAAGoiD,MAAM3sG,GAAG6sG,MAAQrxE,EAAIoxE,SAE3C,IAAGxvE,GAAa5B,EAAIsxE,aAAcviD,EAAGoiD,MAAM3sG,GAAG4tD,IAAM,OAGtD,QAASm/C,IAAwBrlE,EAAIt0B,EAAM0D,EAAKyzC,GAC/C,GAAIyiD,IAAUC,eAAe,IAE7B,OAAM1iD,OAAQ4gD,cAAcwB,WAAW,GAAIK,EAAMF,YAAcviD,EAAG4gD,SAASwB,MAAM,GAAG/+C,IAAM,IAAM,GAChG,OAAOhvB,IAAU,aAAcA,GAAU,YAAa,KAAMouE,OAG7D,QAASE,IAAkBhoE,EAAM8uB,EAAKtsB,EAAIt0B,GACzC,GAAG8xB,EAAK5gC,EAAGojC,EAAG,aAAalgC,MAAMwsD,EAAK9uB,EAAK5gC,GAC3C,IAAG4gC,EAAKx4B,IAAM1E,iBAAoBk9B,GAAKxgC,IAAM,UAAYwgC,EAAKv4B,IAAM,MAAQu4B,EAAKxgC,EAAG,MAAO,EAC3F,IAAI8V,GAAK,EACT,IAAI2yF,GAAOjoE,EAAKv4B,EAAGygG,EAAOloE,EAAKx4B,CAC/B,IAAGw4B,EAAKv4B,IAAM,IAAK,OAAOu4B,EAAKv4B,GAC9B,IAAK,IAAK6N,EAAK0qB,EAAKx4B,EAAI,IAAM,GAAK,OACnC,IAAK,IAAK8N,EAAK,GAAG0qB,EAAKx4B,CAAG,OAC1B,IAAK,IAAK8N,EAAKysB,GAAK/B,EAAKx4B,EAAI,OAC7B,IAAK,IACJ,GAAG0G,GAAQA,EAAKg1B,UAAW5tB,EAAK+b,GAAU2O,EAAKx4B,GAAI,GAAGoyB,kBACjD,CACJoG,EAAO1M,GAAI0M,EACXA,GAAKv4B,EAAI,GACT6N,GAAK,IAAI0qB,EAAKx4B,EAAIkpB,GAAQW,GAAU2O,EAAKx4B,KAE1C,SAAUw4B,GAAKvJ,IAAM,YAAauJ,EAAKvJ,EAAIjuB,EAAU,GACrD,OACD,QAAS8M,EAAK0qB,EAAKx4B,CAAG,QAEvB,GAAIA,GAAIgyB,GAAS,IAAK/B,GAAUniB,IAAM5Q,GAAM4N,EAAEw8C,EAE9C,IAAI1F,GAAKi6C,GAAen1F,EAAK+oE,QAASj3C,EAAM9xB,EAC5C,IAAGk7C,IAAO,EAAG1kD,EAAErE,EAAI+oD,CACnB,QAAOppB,EAAKv4B,GACX,IAAK,IAAK,MACV,IAAK,IAAK/C,EAAE+C,EAAI,GAAK,OACrB,IAAK,IAAK/C,EAAE+C,EAAI,GAAK,OACrB,IAAK,IAAK/C,EAAE+C,EAAI,GAAK,OACrB,IAAK,IAAK,MACV,QAAS,GAAGu4B,EAAKx4B,GAAK,KAAM,OAASw4B,GAAKv4B,CAAG,OAC5C,GAAGu4B,EAAKx4B,EAAEzM,OAAS,MAAO,KAAM,IAAIa,OAAM,+CAC1C,IAAGsS,GAAQA,EAAK69D,QAAS,CACxBvkE,EAAIgyB,GAAS,IAAK,GAAG+oE,GAAWr0F,EAAKi6F,QAASnoE,EAAKx4B,EAAG0G,EAAKk6F,YAC3D1jG,GAAE+C,EAAI,GAAK,OAEZ/C,EAAE+C,EAAI,KAAO,QAEf,GAAGu4B,EAAKv4B,GAAKwgG,EAAM,CAAEjoE,EAAKv4B,EAAIwgG,CAAMjoE,GAAKx4B,EAAI0gG,EAC7C,SAAUloE,GAAKxgC,GAAK,UAAYwgC,EAAKxgC,EAAG,CACvC,GAAIsU,GAAKksB,EAAKv+B,GAAKu+B,EAAKv+B,EAAE3C,MAAM,EAAGgwD,EAAI/zD,SAAW+zD,GAAOrnD,EAAE,QAASqnD,IAAI9uB,EAAKv+B,GAAK,IAClF+F,GAAIkyB,GAAU,IAAKjC,GAAUuI,EAAKxgC,GAAIsU,IAAOksB,EAAKx4B,GAAK,KAAOA,EAAI,IAEnE,GAAGw4B,EAAK39B,EAAGmgC,EAAG,UAAUlgC,MAAMwsD,EAAK9uB,EAAK39B,GACxC,IAAG29B,EAAKplC,EAAG8J,EAAEk4E,GAAK,CAClB,OAAOljD,IAAU,IAAKlyB,EAAG9C,GAG1B,GAAIygG,IAAoB,WACvB,GAAIkD,GAAY,oBAAqBC,EAAW,kBAChD,IAAIj+B,GAAS,qBAAsBk+B,EAAU;AAC7C,GAAIC,GAAW,sBACf,IAAIC,GAAU/vE,GAAS,KAAMgwE,EAAUhwE,GAAS,IAEjD,OAAO,SAASysE,GAAkBwD,EAAOtoG,EAAG6N,EAAMuoD,EAAO/jB,EAAQR,GAChE,GAAIr+B,GAAK,EAAG9W,EAAI,GAAI6rG,KAAYC,KAAWj3F,EAAI,EAAG9W,EAAE,EAAGuY,EAAG,EAAG1Y,EAAE,GAAIqf,CACnE,IAAIsc,GAAKwyE,EAAO,EAAGC,EAAO,CAC1B,IAAIC,GAAMC,CACV,IAAIpvD,GAAQ,EAAG6pD,EAAS,CACxB,IAAIwF,GAAYxnG,MAAM4E,QAAQ4rC,EAAOskC,QAAS5xB,CAC9C,IAAIqnC,KACJ,IAAIH,KACJ,IAAIvpD,GAAQ7gC,MAAM4E,QAAQjG,EAC1B,IAAI29D,MAAWmrC,KAAaC,EAAU,KACtC,IAAInmE,KAAe/0B,EAAK+0B,UACxB,KAAI,GAAIomE,GAAOV,EAAMttG,MAAMitG,GAAW5sF,EAAK,EAAG4tF,EAAUD,EAAKtuG,OAAQ2gB,GAAM4tF,IAAW5tF,EAAI,CACzF3e,EAAIssG,EAAK3tF,GAAI2Q,MACb,IAAIk9E,GAAOxsG,EAAEhC,MACb,IAAGwuG,IAAS,EAAG,QAGf,IAAIC,GAAU,CACdC,GAAM,IAAI51F,EAAK,EAAGA,EAAK01F,IAAQ11F,EAAI,OAA2B9W,EAAE8W,IAC/D,IAAK,IACJ,GAA+B9W,EAAE8W,EAAG,IAAM,IAAK,GAAIA,CAAI,MAAM41F,GAC7D,GAAGv7F,GAAQA,EAAKs8C,WAAY,CAE3Bl0B,EAAMD,GAAYt5B,EAAE+B,MAAM0qG,EAAQ31F,GAAK,KACvCi1F,GAAOxyE,EAAIhkB,GAAK,KAAOI,SAAS4jB,EAAIhkB,EAAG,IAAMw2F,EAAK,CAAGC,IAAQ,CAC7D,IAAG76F,EAAKunD,WAAavnD,EAAKunD,UAAYqzC,EAAM,QAC5CK,KAAaC,GAAU,KACvB,IAAG9yE,EAAIozE,GAAI,CAAEN,EAAU,IAAMD,GAAOriD,IAAM/wC,WAAWugB,EAAIozE,GAAKP,GAAOhsC,IAAMC,GAAM+rC,EAAOriD,KACxF,GAAGxwB,EAAI0vB,QAAU,IAAK,CAAEojD,EAAU,IAAMD,GAAOnjD,OAAS,KACxD,GAAG1vB,EAAIssE,cAAgB,KAAM,CAAEwG,EAAU,IAAMD,GAAOtiD,OAASvwB,EAAIssE,aACnE,GAAGwG,EAASprC,EAAK8qC,EAAK,GAAKK,EAE5B,MACD,IAAK,IAAYK,EAAU31F,CAAI,QAEhC,GAAG21F,GAAW31F,EAAI,KAClByiB,GAAMD,GAAYt5B,EAAE+B,MAAM0qG,EAAQ31F,GAAK,KACvCi1F,GAAOxyE,EAAIhkB,GAAK,KAAOI,SAAS4jB,EAAIhkB,EAAG,IAAMw2F,EAAK,CAAGC,IAAQ,CAC7D,IAAG76F,EAAKunD,WAAavnD,EAAKunD,UAAYqzC,EAAM,QAC5C,IAAGryC,EAAMp2D,EAAEiS,EAAIw2F,EAAO,EAAGryC,EAAMp2D,EAAEiS,EAAIw2F,EAAO,CAC5C,IAAGryC,EAAM57D,EAAEyX,EAAIw2F,EAAO,EAAGryC,EAAM57D,EAAEyX,EAAIw2F,EAAO,CAE5C,IAAG56F,GAAQA,EAAKs8C,WAAY,CAC3B2+C,IAAaC,GAAU,KACvB,IAAG9yE,EAAIozE,GAAI,CAAEN,EAAU,IAAMD,GAAOriD,IAAM/wC,WAAWugB,EAAIozE,GAAKP,GAAOhsC,IAAMC,GAAM+rC,EAAOriD,KACxF,GAAGxwB,EAAI0vB,QAAU,IAAK,CAAEojD,EAAU,IAAMD,GAAOnjD,OAAS,KACxD,GAAG1vB,EAAIssE,cAAgB,KAAM,CAAEwG,EAAU,IAAMD,GAAOtiD,OAASvwB,EAAIssE,aACnE,GAAGwG,EAASprC,EAAK8qC,EAAK,GAAKK,EAI5BP,EAAQ7rG,EAAE+B,MAAM+U,GAAIxY,MAAMgtG,EAC1B,KAAI,GAAIsB,GAAS,EAAGA,GAAUf,EAAM7tG,SAAU4uG,EAAQ,GAAGf,EAAMe,GAAQt9E,OAAOpxB,OAAO,IAAM,IAAK,KAChG2tG,GAAQA,EAAM9pG,MAAM6qG,EACpB,KAAI91F,EAAK,EAAGA,GAAM+0F,EAAM7tG,SAAU8Y,EAAI,CACrC9W,EAAI6rG,EAAM/0F,GAAIwY,MACd,IAAGtvB,EAAEhC,SAAW,EAAG,QACnB8tG,GAAO9rG,EAAE4E,MAAM0oE,EAASz4D,GAAMiC,CAAI/Y,GAAE,CAAGuY,GAAG,CAC1CtW,GAAI,OAASA,EAAE+B,MAAM,EAAE,IAAI,IAAI,IAAI,IAAM/B,CACzC,IAAG8rG,GAAQ,MAAQA,EAAK9tG,SAAW,EAAG,CACrC6W,EAAM,CAAGjX,GAAEkuG,EAAK,EAChB,KAAI/tG,EAAE,EAAGA,GAAKH,EAAEI,SAAUD,EAAG,CAC5B,IAAIuY,EAAG1Y,EAAEK,WAAWF,GAAG,IAAM,GAAKuY,EAAK,GAAI,KAC3CzB,GAAM,GAAGA,EAAMyB,IAEdzB,CACFm3F,GAAOn3F,QACCm3F,CACT,KAAIjuG,EAAI,EAAGA,GAAKiC,EAAEhC,SAAUD,EAAG,GAAGiC,EAAE/B,WAAWF,KAAO,GAAI,QAASA,CACnEw7B,GAAMD,GAAYt5B,EAAE+B,MAAM,EAAEhE,GAAI,KAChC,KAAIw7B,EAAIhkB,EAAGgkB,EAAIhkB,EAAIiuB,IAAajuB,EAAEw2F,EAAK,EAAG1pG,EAAE2pG,GAC5CpuG,GAAIoC,EAAE+B,MAAMhE,EACZkf,IAAMvS,EAAE,GAER,KAAIohG,EAAKluG,EAAEgH,MAAM8mG,KAAY,MAAQI,EAAK,KAAO,GAAI7uF,EAAExS,EAAE4vB,GAAYyxE,EAAK,GAC1E,IAAG36F,EAAK07F,YAAa,CACpB,IAAIf,EAAKluG,EAAEgH,MAAM+mG,KAAY,MAAQG,EAAK,KAAO,GAAI,CAEpD7uF,EAAExa,EAAE43B,GAAYqB,GAASowE,EAAK,KAAKljG,QAAQ,QAAS,KACpD,KAAIuI,EAAKs9E,KAAMxxE,EAAExa,EAAIyjF,GAAMjpE,EAAExa,EAC7B,IAAGqpG,EAAK,GAAGxnG,QAAQ,cAAgB,EAAG,CACrC2Y,EAAEvY,GAAK9G,EAAEgH,MAAM6mG,QAAe,EAC9B,IAAGxuF,EAAEvY,EAAEJ,QAAQ,MAAQ,EAAG4qF,EAAO3pF,MAAMo/B,GAAkB1nB,EAAEvY,GAAIuY,EAAEvY,QAC3D,IAAGonG,EAAK,GAAGxnG,QAAQ,eAAiB,EAAG,CAE7C4nG,EAAO5yE,GAAYwyE,EAAK,GACxB,IAAIgB,GAAOzyE,GAAYqB,GAASowE,EAAK,IACrC,KAAI36F,EAAKs9E,KAAMqe,EAAO5mB,GAAM4mB,EAC5B/d,GAAQp5E,SAASu2F,EAAKv9E,GAAI,MAAQu9E,EAAMY,EAAMvzE,EAAIhkB,QAE7C,IAAIu2F,EAAKluG,EAAEgH,MAAM,cAAgB,CACvCsnG,EAAO5yE,GAAYwyE,EAAK,GACxB,IAAG/c,EAAQmd,EAAKv9E,IAAK1R,EAAExa,EAAIwjF,GAAmB8I,EAAQmd,EAAKv9E,IAAI,GAAIogE,EAAQmd,EAAKv9E,IAAI,GAAe4K,EAAIhkB,GAGxG,GAAIw3F,GAAOzoE,GAAY/K,EAAIhkB,EAC3B,KAAIxX,EAAI,EAAGA,EAAImxF,EAAOlxF,SAAUD,EAC/B,GAAGgvG,EAAKx3F,GAAK25E,EAAOnxF,GAAG,GAAGuF,EAAEiS,GAAKw3F,EAAKx3F,GAAK25E,EAAOnxF,GAAG,GAAGD,EAAEyX,EACzD,GAAGw3F,EAAK1qG,GAAK6sF,EAAOnxF,GAAG,GAAGuF,EAAEjB,GAAK0qG,EAAK1qG,GAAK6sF,EAAOnxF,GAAG,GAAGD,EAAEuE,EACzD4a,EAAEvY,EAAIwqF,EAAOnxF,GAAG,GAGpB,GAAGw7B,EAAI7uB,GAAK,MAAQuS,EAAExS,IAAM1E,UAAW,CACtC,GAAGkX,EAAExa,GAAKwa,EAAEvY,EAAG,CACduY,EAAExS,EAAI,CAAGwS,GAAEvS,EAAI,QACT,KAAIw7B,EAAY,aAClBjpB,GAAEvS,EAAI,QAEPuS,GAAEvS,EAAI6uB,EAAI7uB,GAAK,GACpB,IAAGgvD,EAAMp2D,EAAEjB,EAAI2pG,EAAMtyC,EAAMp2D,EAAEjB,EAAI2pG,CACjC,IAAGtyC,EAAM57D,EAAEuE,EAAI2pG,EAAMtyC,EAAM57D,EAAEuE,EAAI2pG,CAEjC,QAAO/uF,EAAEvS,GACR,IAAK,IACJ,GAAGuS,EAAExS,GAAK,IAAMwS,EAAExS,GAAK,KAAM,CAC5B,IAAIy7B,EAAY,QAChBjpB,GAAEvS,EAAI,QACAuS,GAAExS,EAAIuO,WAAWiE,EAAExS,EAC1B,OACD,IAAK,IACJ,SAAUwS,GAAExS,GAAK,YAAa,CAC7B,IAAIy7B,EAAY,QAChBjpB,GAAEvS,EAAI,QACA,CACNuhG,EAAOp3D,GAAKl/B,SAASsH,EAAExS,EAAG,IAC1BwS,GAAExS,EAAIwhG,EAAKvhG,CACXuS,GAAE1H,EAAI02F,EAAK12F,CACX,IAAGpE,EAAKo9D,SAAUtxD,EAAEoL,EAAI4jF,EAAK5jF,EAE9B,MACD,IAAK,MACJpL,EAAEvS,EAAI,GACNuS,GAAExS,EAAKwS,EAAExS,GAAG,KAAQixB,GAASze,EAAExS,GAAK,EACpC,IAAG0G,EAAKo9D,SAAUtxD,EAAEoL,EAAIwS,GAAW5d,EAAExS,EACrC,OACD,IAAK,YACJqhG,EAAOluG,EAAEgH,MAAM4mG,EACfvuF,GAAEvS,EAAI,GACN,IAAGohG,GAAQ,OAASG,EAAO39B,GAASw9B,EAAK,KAAM,CAC9C7uF,EAAExS,EAAIwhG,EAAKvhG,CACX,IAAGyG,EAAKo9D,SAAUtxD,EAAEoL,EAAI4jF,EAAK5jF,MACvBpL,GAAExS,EAAI,EACb,OACD,IAAK,IAAKwS,EAAExS,EAAI0wB,GAAale,EAAExS,EAAI,OACnC,IAAK,IACJ,GAAG0G,EAAKg1B,UAAWlpB,EAAExS,EAAI6pB,GAAUrX,EAAExS,EAAG,OACnC,CAAEwS,EAAExS,EAAIkpB,GAAQW,GAAUrX,EAAExS,EAAG,GAAKwS,GAAEvS,EAAI,IAC/C,MAED,IAAK,IACJ,IAAIyG,GAAQA,EAAKqyD,WAAa,MAAOvmD,EAAEpb,EAAIob,EAAExS,CAC7CwS,GAAExS,EAAI0jC,GAAMlxB,EAAExS,EAAI,QAGpBqyC,EAAQ6pD,EAAS,CACjB9+C,GAAK,IACL,IAAGskD,GAAa5yE,EAAIj2B,IAAMyC,UAAW,CACpC8hD,EAAK1S,EAAOskC,OAAOlgD,EAAIj2B,EACvB,IAAGukD,GAAM,KAAM,CACd,GAAGA,EAAG/iB,UAAY,KAAMgY,EAAQ+K,EAAG/iB,QACnC,IAAG3zB,EAAKs8C,WAAY,CACnB,GAAG5F,EAAGk1B,QAAU,KAAM4pB,EAAS9+C,EAAGk1B,SAIrC2pB,GAAYzpF,EAAG6/B,EAAO6pD,EAAQx1F,EAAMwkC,EAAQR,EAC5C,IAAGhkC,EAAKg1B,WAAagmE,GAAalvF,EAAEvS,GAAK,KAAOmN,GAAYpM,EAAUqxC,IAAS,CAAE7/B,EAAEvS,EAAI,GAAKuS,GAAExS,EAAIspB,GAAQ9W,EAAExS,GAC5G,GAAG8uB,EAAIsmD,IAAM1uE,EAAK67F,OAAQ,CACzB,GAAIntB,IAAM1uE,EAAK67F,OAAOhtB,WAAWzmD,EAAIsmD,GAAG,EACxC,IAAGA,GAAMA,EAAG9rE,MAAQ,SAAUkJ,EAAEpf,EAAI,KAErC,GAAG2nC,EAAO,CACT,GAAIynE,GAAK3oE,GAAY/K,EAAIhkB,EACzB,KAAIjS,EAAE2pG,EAAG13F,GAAIjS,EAAE2pG,EAAG13F,KAClBjS,GAAE2pG,EAAG13F,GAAG03F,EAAG5qG,GAAK4a,MACV3Z,GAAEi2B,EAAIhkB,GAAK0H,GAGpB,GAAGgkD,EAAKjjE,OAAS,EAAGsF,EAAE,SAAW29D,KAGlC,SAASisC,IAAkBznE,EAAIt0B,EAAM0D,EAAKyzC,GACzC,GAAI3gD,MAAQ4N,KAAQ+tB,EAAQqB,GAAkBc,EAAG,SAAUxC,EAAK,GAAI8uB,EAAKn8C,EAAK,GAAIyjD,KAAWv8C,EAAE,EAAG3Y,EAAE,EAAG88D,EAAOx7B,EAAG,QACjH,IAAID,GAAQ7gC,MAAM4E,QAAQk8B,EAC1B,IAAI0nE,IAAW53F,EAAEK,GAAM2Z,EAAK69E,GAAU,CACtC,KAAIjpG,EAAIm/B,EAAMhgC,EAAEjB,EAAG8B,GAAKm/B,EAAMxlC,EAAEuE,IAAK8B,EAAGk1D,EAAKl1D,GAAKy/B,GAAWz/B,EAC7D,KAAI2Y,EAAIwmB,EAAMhgC,EAAEiS,EAAGuH,GAAKwmB,EAAMxlC,EAAEyX,IAAKuH,EAAG,CACvCvH,IACAK,GAAKiuB,GAAW/mB,EAChB,KAAI3Y,EAAIm/B,EAAMhgC,EAAEjB,EAAG8B,GAAKm/B,EAAMxlC,EAAEuE,IAAK8B,EAAG,CACvC4tD,EAAMsH,EAAKl1D,GAAKyR,CAChB,IAAIy3F,GAAQ7nE,GAASC,EAAG3oB,QAAQ3Y,GAAIshC,EAAGssB,EACvC,IAAGs7C,IAAUtnG,UAAW,QACxB,KAAIk9B,EAAOgoE,GAAkBoC,EAAOt7C,EAAKtsB,EAAIt0B,EAAM0D,EAAKyzC,KAAQ,KAAM/yC,EAAEhQ,KAAK09B,GAE9E,GAAG1tB,EAAEvX,OAAS,GAAMijE,GAAQA,EAAKnkD,GAAK,CACrCqwF,GAAW53F,EAAEK,EACb,IAAGqrD,GAAQA,EAAKnkD,GAAI,CACnByS,EAAM0xC,EAAKnkD,EACX,IAAGyS,EAAI05B,OAAQkkD,EAAOlkD,OAAS,CAC/BmkD,IAAU,CACV,IAAG79E,EAAI6wC,IAAKgtC,EAASlsC,GAAM3xC,EAAI6wC,SAC1B,IAAG7wC,EAAIw6B,IAAKqjD,EAAS79E,EAAIw6B,GAC9B,IAAGqjD,GAAU,EAAG,CAAED,EAAOR,GAAKS,CAAQD,GAAOG,aAAe,EAC5D,GAAG/9E,EAAIu6B,MAAO,CAAEqjD,EAAOtH,aAAet2E,EAAIu6B,OAE3CniD,EAAEA,EAAE3J,QAAW2+B,GAAU,MAAOpnB,EAAE/Q,KAAK,IAAK2oG,IAG9C,GAAGlsC,EAAM,KAAMnkD,EAAImkD,EAAKjjE,SAAU8e,EAAG,CACpC,GAAGmkD,GAAQA,EAAKnkD,GAAI,CACnBqwF,GAAW53F,EAAEuH,EAAE,EACfyS,GAAM0xC,EAAKnkD,EACX,IAAGyS,EAAI05B,OAAQkkD,EAAOlkD,OAAS,CAC/BmkD,IAAU,CACV,IAAI79E,EAAI6wC,IAAKgtC,EAASlsC,GAAM3xC,EAAI6wC,SAC3B,IAAI7wC,EAAIw6B,IAAKqjD,EAAS79E,EAAIw6B,GAC/B,IAAIqjD,GAAU,EAAG,CAAED,EAAOR,GAAKS,CAAQD,GAAOG,aAAe,EAC7D,GAAI/9E,EAAIu6B,MAAO,CAAEqjD,EAAOtH,aAAet2E,EAAIu6B,MAC3CniD,EAAEA,EAAE3J,QAAW2+B,GAAU,MAAO,GAAIwwE,IAGtC,MAAOxlG,GAAEnD,KAAK,IAGf,QAAS+oG,IAAa14F,EAAK1D,EAAMm3C,EAAIjT,GACpC,GAAI1tC,IAAKoxB,GAAY4D,GAAU,YAAa,MAC3CsZ,MAAShY,GAAW,GACpBuvE,UAAWtwE,GAAM3nB,IAElB,IAAIjS,GAAIglD,EAAGljB,WAAWvwB,GAAM4vD,EAAO,EAAGgpC,EAAQ,EAC9C,IAAIhoE,GAAK6iB,EAAGjjB,OAAO/hC,EACnB,IAAGmiC,GAAM,KAAMA,IACf,IAAIssB,GAAMtsB,EAAG,SAAW,IACxB,IAAInC,GAAQqB,GAAkBotB,EAC9B,IAAGzuB,EAAMxlC,EAAEuE,EAAI,OAAUihC,EAAMxlC,EAAEyX,EAAI,QAAS,CAC7C,GAAGpE,EAAKorB,IAAK,KAAM,IAAI19B,OAAM,SAAWkzD,EAAM,sCAC9CzuB,GAAMxlC,EAAEuE,EAAI0I,KAAKkM,IAAIqsB,EAAMxlC,EAAEuE,EAAG,MAChCihC,GAAMxlC,EAAEyX,EAAIxK,KAAKkM,IAAIqsB,EAAMxlC,EAAEuE,EAAG,QAChC0vD,GAAMvtB,GAAalB,GAEpB,IAAI+R,EAAMA,IACV5P,GAAG,eACH,IAAIioE,KAEJ5E,IAAqBrjE,EAAI6iB,EAAIzzC,EAAK1D,EAAMxJ,EAExCA,GAAEA,EAAE3J,QAAW2+B,GAAU,YAAa,MAAOo1B,IAAOA,GAEpDpqD,GAAEA,EAAE3J,QAAU8sG,GAAwBrlE,EAAIt0B,EAAM0D,EAAKyzC,EAGrD,IAAGn3C,EAAKw8F,YAAahmG,EAAEA,EAAE3J,QAAW2+B,GAAU,gBAAiB,MAC9DixE,iBAAiBz8F,EAAKw8F,YAAYC,kBAAkB,KACpDC,aAAa18F,EAAKw8F,YAAYE,cAAc,KAC5CC,gBAAgB38F,EAAKw8F,YAAYG,iBAAiB,KAGnD,IAAGroE,EAAG,UAAY,MAAQA,EAAG,SAASznC,OAAS,EAAG2J,EAAEA,EAAE3J,QAAWosG,GAAkB3kE,EAAIA,EAAG,SAE1F99B,GAAE88D,EAAO98D,EAAE3J,QAAU,cACrBynC,GAAG,YACH,IAAGA,EAAG,SAAW,KAAM,CACtBgoE,EAAQP,GAAkBznE,EAAIt0B,EAAM0D,EAAKyzC,EAAIjT,EAC7C,IAAGo4D,EAAMzvG,OAAS,EAAG2J,EAAEA,EAAE3J,QAAU,EAEpC,GAAG2J,EAAE3J,OAAOymE,EAAK,EAAG,CAAE98D,EAAEA,EAAE3J,QAAU,cAAkB2J,GAAE88D,GAAM98D,EAAE88D,GAAM77D,QAAQ,KAAK,KAInF,GAAG68B,EAAG,YAAa99B,EAAEA,EAAE3J,QAAUyrG,GAAwBhkE,EAAG,YAK5D,IAAGA,EAAG,gBAAkB,KAAM99B,EAAEA,EAAE3J,QAAUqsG,GAAwB5kE,EAAG,eAAgBA,EAAI6iB,EAAIzzC,EAM/F,IAAG4wB,EAAG,YAAc,MAAQA,EAAG,WAAWznC,OAAS,EAAG2J,EAAEA,EAAE3J,QAAW2qG,GAAoBljE,EAAG,WAM5F,IAAIsoE,IAAQ,EAAGh1D,EAAKS,GAAO,CAC3B,IAAG/T,EAAG,UAAUznC,OAAS,EAAG,CAC3B2J,EAAEA,EAAE3J,QAAU,cAChBynC,GAAG,UAAU/hC,QAAQ,SAAS4B,GAC3B,IAAIA,EAAE,GAAG2zC,OAAQ,MACjBF,IAAQgZ,IAAMzsD,EAAE,GAChB,IAAGA,EAAE,GAAG2zC,OAAO/6C,OAAO,IAAM,IAAK,CAChCs7C,EAAMD,GAASlE,GAAO,EAAG3a,GAAUp1B,EAAE,GAAG2zC,QAAQrwC,QAAQ,OAAQ,IAAK20B,GAAK8Z,MAC1E0B,GAAI,QAAU,MAAMS,EAErB,IAAIu0D,EAAOzoG,EAAE,GAAG2zC,OAAO30C,QAAQ,OAAS,EAAGy0C,EAAI2wD,SAAWhvE,GAAUp1B,EAAE,GAAG2zC,OAAOl3C,MAAMgsG,EAAK,GAC3F,IAAGzoG,EAAE,GAAGogD,QAAS3M,EAAI6wD,QAAUlvE,GAAUp1B,EAAE,GAAGogD,QAC9C/9C,GAAEA,EAAE3J,QAAU2+B,GAAU,YAAY,KAAKoc,IAE1CpxC,GAAEA,EAAE3J,QAAU,sBAERynC,GAAG,SAIV,IAAGA,EAAG,aAAe,KAAM99B,EAAEA,EAAE3J,QAAW+rG,GAAqBtkE,EAAG,YASlE,KAAIt0B,GAAQA,EAAK68F,UAAa78F,EAAK68F,cAAkB,GAAKrmG,EAAEA,EAAE3J,QAAUy+B,GAAS,gBAAiBE,GAAU,eAAgB,MAAOsxE,mBAAmB,EAAGC,MAAMn8C,IAI/J,IAAG27C,EAAS1vG,OAAS,EAAG,CACvBw7C,EAAMD,GAASlE,GAAO,EAAG,uBAAyBxgC,EAAI,GAAK,OAAQ0oB,GAAKgb,KACxE5wC,GAAEA,EAAE3J,QAAU2+B,GAAU,UAAW,MAAOwxE,OAAO,MAAQ30D,GACzD/T,GAAG,YAAcioE,EAGlB,GAAGjoE,EAAG,aAAaznC,OAAS,EAAG,CAC9Bw7C,EAAMD,GAASlE,GAAO,EAAG,0BAA4BxgC,EAAI,GAAK,OAAQ0oB,GAAK+Z,IAC3E3vC,GAAEA,EAAE3J,QAAU2+B,GAAU,gBAAiB,MAAOwxE,OAAO,MAAQ30D,GAC/D/T,GAAG,WAAa+T,EAWjB,GAAG7xC,EAAE3J,OAAO,EAAG,CAAE2J,EAAEA,EAAE3J,QAAU,cAAkB2J,GAAE,GAAGA,EAAE,GAAGiB,QAAQ,KAAK,KACxE,MAAOjB,GAAEnD,KAAK,IAIf,QAAS4pG,IAAgB1sG,EAAM1D,GAC9B,GAAI07B,KACJ,IAAInb,GAAM7c,EAAK4D,EAAItH,CACnB07B,GAAEnkB,EAAI7T,EAAKic,WAAW,EACtBjc,GAAK4D,GAAK,CACV,IAAIukD,GAAQnoD,EAAKic,WAAW,EAC5Bjc,GAAK4D,GAAK,CACV,IAAI+Y,GAAQ3c,EAAKic,WAAW,EAC5Bjc,GAAK4D,EAAIiZ,CACT,IAAGF,EAAQ,EAAMqb,EAAEowB,MAAQzrC,EAAQ,CACnC,IAAGA,EAAQ,GAAMqb,EAAEuvB,OAAS,IAC5B,IAAG5qC,EAAQ,GAAMqb,EAAEqwB,IAAMF,EAAQ,EACjC,OAAOnwB,GAER,QAAS20E,IAAgBvxF,EAAGwmB,EAAOmC,GAClC,GAAI99B,GAAIoa,GAAQ,GAAG,EAAE,GACrB,IAAIwN,IAAOkW,EAAG,cAAc3oB,MAC5BnV,GAAE6V,YAAY,EAAGV,EAEjBnV,GAAE6V,YAAY,EAAG,EAEjB,IAAIqsC,GAAQ,GACZ,IAAGt6B,EAAI6wC,IAAKvW,EAAQqX,GAAM3xC,EAAI6wC,KAAO,OAChC,IAAG7wC,EAAIw6B,IAAKF,EAAQt6B,EAAIw6B,IAAM,EACnCpiD,GAAE6V,YAAY,EAAGqsC,EAEjBliD,GAAE6V,YAAY,EAAG,EAEjB,IAAIa,GAAQ,CACZ,IAAGkR,EAAIu6B,MAAOzrC,GAASkR,EAAIu6B,KAC3B,IAAGv6B,EAAI05B,OAAQ5qC,GAAS,EACxB,IAAGkR,EAAI6wC,KAAO7wC,EAAIw6B,IAAK1rC,GAAS,EAChC1W,GAAE6V,YAAY,EAAGa,EAEjB1W,GAAE6V,YAAY,EAAG,EAGjB,IAAI8wF,GAAW,EAAGC,EAAM5mG,EAAErC,CAC1BqC,GAAErC,GAAK,CAEP,IAAIkpG,IAASj5F,EAAEuH,EAAGza,EAAE,EACpB,KAAI,GAAItE,GAAI,EAAGA,EAAI,KAAMA,EAAG,CAC3B,GAAIulC,EAAMhgC,EAAEjB,EAAMtE,EAAE,GAAM,IAASulC,EAAMxlC,EAAEuE,EAAKtE,GAAK,GAAM,QAC3D,IAAI0wG,IAAS,EAAGC,GAAQ,CACxB,KAAI,GAAIrwG,GAAKN,GAAG,GAAKM,EAAMN,EAAE,GAAI,KAAOM,EAAG,CAC1CmwG,EAAMnsG,EAAIhE,CACV,IAAI4kC,GAAOt+B,MAAM4E,QAAQk8B,IAAOA,EAAG+oE,EAAMj5F,QAAQi5F,EAAMnsG,GAAKojC,EAAGjC,GAAYgrE,GAC3E,IAAGvrE,EAAM,CAAE,GAAGwrE,EAAQ,EAAGA,EAAQpwG,CAAGqwG,GAAOrwG,GAE5C,GAAGowG,EAAQ,EAAG,WACZH,CACF3mG,GAAE6V,YAAY,EAAGixF,EACjB9mG,GAAE6V,YAAY,EAAGkxF,GAGlB,GAAIppG,GAAIqC,EAAErC,CACVqC,GAAErC,EAAIipG,CACN5mG,GAAE6V,YAAY,EAAG8wF,EACjB3mG,GAAErC,EAAIA,CAEN,OAAOqC,GAAE3J,OAAS2J,EAAErC,EAAIqC,EAAE5F,MAAM,EAAG4F,EAAErC,GAAKqC,EAE3C,QAASgnG,IAAiB5rE,EAAI0C,EAAInC,EAAOxmB,GACxC,GAAInV,GAAI0mG,GAAgBvxF,EAAGwmB,EAAOmC,EAClC,IAAI99B,EAAE3J,OAAS,KAAQynC,EAAG,cAAc3oB,GAAIgmB,GAAaC,EAAI,EAAwBp7B,GAItF,GAAIinG,IAAiBjmE,EACrB,IAAIkmE,IAAiBjmE,EAGrB,SAASkmE,OAKT,QAASC,IAAgBrtG,EAAM1D,GAC9B,GAAI07B,KACJ,IAAIj3B,GAAIf,EAAKA,EAAK4D,KAAM5D,EAAK4D,CAC7Bo0B,GAAE4vE,QAAU7mG,EAAI,GAChBi3B,GAAEwsE,OAAUzjG,EAAI,IAEhBf,GAAK4D,GAAK,EACVo0B,GAAEpZ,KAAOsnB,GAAmBlmC,EAAM1D,EAAS,GAC3C,OAAO07B,GAER,QAASs1E,IAAgB34F,EAAKjC,EAAMzM,GACnC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,GAAG,EAAE1L,EAAIrY,OACnC,IAAIyE,GAAI,GACR,IAAG2R,EAAM,CACR,GAAGA,EAAKk1F,MAAO7mG,IAAM,EACrB,IAAG2R,EAAK8xF,KAAOzjG,IAAM,IAEtBkF,EAAE6V,YAAY,EAAG/a,EACjB,KAAI,GAAI1E,GAAI,EAAGA,EAAI,IAAKA,EAAG4J,EAAE6V,YAAY,EAAE,EAC3CqsB,KAAgBP,KAAK,GAAI3hC,EACzBA,GAAE6V,aAAa,GAAG,EAClB7V,GAAE6V,aAAa,GAAG,EAClBqqB,IAAmBxxB,EAAK1O,EACxB,OAAOA,GAAE5F,MAAM,EAAG4F,EAAErC,GAIrB,QAAS2pG,IAAmBvtG,GAC3B,GAAIuhC,GAAOsE,GAAe7lC,EAC1B,QAAQuhC,GAET,QAASisE,IAAmBjsE,EAAMksE,EAAOxnG,GACxC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAC1B,OAAO0lB,IAAe0nE,EAAOxnG,GAE9B,QAASynG,IAAoB1tG,GAC5B,GAAIuhC,GAAOyE,GAAoBhmC,EAC/B,QAAQuhC,GAET,QAASosE,IAAoBpsE,EAAMksE,EAAOxnG,GACzC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAC1B,OAAO4lB,IAAoBwnE,EAAOxnG,GAInC,QAAS2nG,IAAkB5tG,GAC1B,GAAIuhC,GAAOsE,GAAe7lC,EAC1B,IAAI6tG,GAAQ7tG,EAAKic,WAAW,EAC5B,QAAQslB,EAAMssE,EAAO,KAEtB,QAASC,IAAkBvsE,EAAMksE,EAAOxnG,GACvC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAC1B0lB,IAAe0nE,EAAOxnG,EACtBA,GAAE6V,YAAY,EAAGylB,EAAKx4B,EAAI,EAAI,EAC9B,OAAO9C,GAER,QAAS8nG,IAAmB/tG,GAC3B,GAAIuhC,GAAOyE,GAAoBhmC,EAC/B,IAAI6tG,GAAQ7tG,EAAKic,WAAW,EAC5B,QAAQslB,EAAMssE,EAAO,KAEtB,QAASG,IAAmBzsE,EAAMksE,EAAOxnG,GACxC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAC1B4lB,IAAoBwnE,EAAOxnG,EAC3BA,GAAE6V,YAAY,EAAGylB,EAAKx4B,EAAI,EAAI,EAC9B,OAAO9C,GAIR,QAASgoG,IAAmBjuG,GAC3B,GAAIuhC,GAAOsE,GAAe7lC,EAC1B,IAAIkuG,GAASluG,EAAKic,WAAW,EAC7B,QAAQslB,EAAM2sE,EAAQ,KAEvB,QAASC,IAAmB5sE,EAAMksE,EAAOxnG,GACxC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAC1B0lB,IAAe0nE,EAAOxnG,EACtBA,GAAE6V,YAAY,EAAGylB,EAAKx4B,EACtB,OAAO9C,GAER,QAASmoG,IAAoBpuG,GAC5B,GAAIuhC,GAAOyE,GAAoBhmC,EAC/B,IAAIkuG,GAASluG,EAAKic,WAAW,EAC7B,QAAQslB,EAAM2sE,EAAQ,KAEvB,QAASG,IAAoB9sE,EAAMksE,EAAOxnG,GACzC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAC1B4lB,IAAoBwnE,EAAOxnG,EAC3BA,GAAE6V,YAAY,EAAGylB,EAAKx4B,EACtB9C,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,EACjB,OAAO7V,GAKR,QAASqoG,IAAkBtuG,GAC1B,GAAIuhC,GAAOsE,GAAe7lC,EAC1B,IAAIyqD,GAAOzqD,EAAKic,WAAW,EAC3B,QAAQslB,EAAMkpB,EAAM,KAErB,QAAS8jD,IAAkBhtE,EAAMksE,EAAOxnG,GACvC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,GAC1B0lB,IAAe0nE,EAAOxnG,EACtBA,GAAE6V,YAAY,EAAG2xF,EAAM1kG,EACvB,OAAO9C,GAER,QAASuoG,IAAmBxuG,GAC3B,GAAIuhC,GAAOyE,GAAoBhmC,EAC/B,IAAIyqD,GAAOzqD,EAAKic,WAAW,EAC3B,QAAQslB,EAAMkpB,EAAM,KAErB,QAASgkD,IAAmBltE,EAAMksE,EAAOxnG,GACxC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAC1B4lB,IAAoBwnE,EAAOxnG,EAC3BA,GAAE6V,YAAY,EAAG2xF,EAAM1kG,EACvB,OAAO9C,GAIR,QAASyoG,IAAkB1uG,GAC1B,GAAIuhC,GAAOsE,GAAe7lC,EAC1B,IAAI05B,GAAQyN,GAAWnnC,EACvB,QAAQuhC,EAAM7H,EAAO,KAEtB,QAASi1E,IAAkBptE,EAAMksE,EAAOxnG,GACvC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,GAC1B0lB,IAAe0nE,EAAOxnG,EACtBmhC,IAAW7F,EAAKx4B,EAAG9C,EACnB,OAAOA,GAER,QAAS2oG,IAAmB5uG,GAC3B,GAAIuhC,GAAOyE,GAAoBhmC,EAC/B,IAAI05B,GAAQyN,GAAWnnC,EACvB,QAAQuhC,EAAM7H,EAAO,KAEtB,QAASm1E,IAAmBttE,EAAMksE,EAAOxnG,GACxC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,GAC1B4lB,IAAoBwnE,EAAOxnG,EAC3BmhC,IAAW7F,EAAKx4B,EAAG9C,EACnB,OAAOA,GAIR,QAAS6oG,IAAgB9uG,GACxB,GAAIuhC,GAAOsE,GAAe7lC,EAC1B,IAAI05B,GAAQ+M,GAAezmC,EAC3B,QAAQuhC,EAAM7H,EAAO,KAEtB,QAASq1E,IAAgBxtE,EAAMksE,EAAOxnG,GACrC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,GAC1B0lB,IAAe0nE,EAAOxnG,EACtB4gC,IAAetF,EAAKx4B,EAAG9C,EACvB,OAAOA,GAER,QAAS+oG,IAAiBhvG,GACzB,GAAIuhC,GAAOyE,GAAoBhmC,EAC/B,IAAI05B,GAAQ+M,GAAezmC,EAC3B,QAAQuhC,EAAM7H,EAAO,KAEtB,QAASu1E,IAAiB1tE,EAAMksE,EAAOxnG,GACtC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAC1B4lB,IAAoBwnE,EAAOxnG,EAC3B4gC,IAAetF,EAAKx4B,EAAG9C,EACvB,OAAOA,GAIR,QAASipG,IAAqBlvG,GAC7B,GAAIuhC,GAAOsE,GAAe7lC,EAC1B,IAAI05B,GAAQ6L,GAAcvlC,EAC1B,QAAQuhC,EAAM7H,EAAO,MAItB,QAASy1E,IAAgBnvG,GACxB,GAAIuhC,GAAOsE,GAAe7lC,EAC1B,IAAI05B,GAAQoL,GAAmB9kC,EAC/B,QAAQuhC,EAAM7H,EAAO,OAEtB,QAAS01E,IAAgB7tE,EAAMksE,EAAOxnG,GACrC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,GAAK,EAAIkhB,EAAKx4B,EAAEzM,OAC1CypC,IAAe0nE,EAAOxnG,EACtB++B,IAAmBzD,EAAKx4B,EAAG9C,EAC3B,OAAOA,GAAE3J,OAAS2J,EAAErC,EAAIqC,EAAE5F,MAAM,EAAG4F,EAAErC,GAAKqC,EAE3C,QAASopG,IAAiBrvG,GACzB,GAAIuhC,GAAOyE,GAAoBhmC,EAC/B,IAAI05B,GAAQoL,GAAmB9kC,EAC/B,QAAQuhC,EAAM7H,EAAO,OAEtB,QAAS41E,IAAiB/tE,EAAMksE,EAAOxnG,GACtC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAAI,EAAIkhB,EAAKx4B,EAAEzM,OACzC2pC,IAAoBwnE,EAAOxnG,EAC3B++B,IAAmBzD,EAAKx4B,EAAG9C,EAC3B,OAAOA,GAAE3J,OAAS2J,EAAErC,EAAIqC,EAAE5F,MAAM,EAAG4F,EAAErC,GAAKqC,EAI3C,QAASspG,IAAkBvvG,EAAM1D,EAAQmT,GACxC,GAAIyd,GAAMltB,EAAK4D,EAAItH,CACnB,IAAIilC,GAAOsE,GAAe7lC,EAC1BuhC,GAAK1tB,EAAIpE,EAAK,OACd,IAAIiqB,GAAQ15B,EAAKic,WAAW,EAC5B,IAAIhW,IAAKs7B,EAAM7H,EAAO,IACtB,IAAGjqB,EAAK07F,YAAa,CACpBnrG,EAAK4D,GAAK,CACV,IAAIw6D,GAAUowB,GAA4BxuF,EAAMktB,EAAMltB,EAAK4D,EAAG6L,EAC9DxJ,GAAE,GAAKqmF,GAAkBluB,EAAS,KAAe78B,EAAM9xB,EAAKw8E,SAAUx8E,OAElEzP,GAAK4D,EAAIspB,CACd,OAAOjnB,GAIR,QAASupG,IAAmBxvG,EAAM1D,EAAQmT,GACzC,GAAIyd,GAAMltB,EAAK4D,EAAItH,CACnB,IAAIilC,GAAOsE,GAAe7lC,EAC1BuhC,GAAK1tB,EAAIpE,EAAK,OACd,IAAIiqB,GAAQ15B,EAAKic,WAAW,EAC5B,IAAIhW,IAAKs7B,EAAM7H,EAAO,IACtB,IAAGjqB,EAAK07F,YAAa,CACpBnrG,EAAK4D,GAAK,CACV,IAAIw6D,GAAUowB,GAA4BxuF,EAAMktB,EAAMltB,EAAK4D,EAAG6L,EAC9DxJ,GAAE,GAAKqmF,GAAkBluB,EAAS,KAAe78B,EAAM9xB,EAAKw8E,SAAUx8E,OAElEzP,GAAK4D,EAAIspB,CACd,OAAOjnB,GAIR,QAASwpG,IAAiBzvG,EAAM1D,EAAQmT,GACvC,GAAIyd,GAAMltB,EAAK4D,EAAItH,CACnB,IAAIilC,GAAOsE,GAAe7lC,EAC1BuhC,GAAK1tB,EAAIpE,EAAK,OACd,IAAIiqB,GAAQyN,GAAWnnC,EACvB,IAAIiG,IAAKs7B,EAAM7H,EAAO,IACtB,IAAGjqB,EAAK07F,YAAa,CACpBnrG,EAAK4D,GAAK,CACV,IAAIw6D,GAAUowB,GAA4BxuF,EAAMktB,EAAMltB,EAAK4D,EAAG6L,EAC9DxJ,GAAE,GAAKqmF,GAAkBluB,EAAS,KAAe78B,EAAM9xB,EAAKw8E,SAAUx8E,OAElEzP,GAAK4D,EAAIspB,CACd,OAAOjnB,GAIR,QAASypG,IAAoB1vG,EAAM1D,EAAQmT,GAC1C,GAAIyd,GAAMltB,EAAK4D,EAAItH,CACnB,IAAIilC,GAAOsE,GAAe7lC,EAC1BuhC,GAAK1tB,EAAIpE,EAAK,OACd,IAAIiqB,GAAQoL,GAAmB9kC,EAC/B,IAAIiG,IAAKs7B,EAAM7H,EAAO,MACtB,IAAGjqB,EAAK07F,YAAa,CACpBnrG,EAAK4D,GAAK,CACV,IAAIw6D,GAAUowB,GAA4BxuF,EAAMktB,EAAMltB,EAAK4D,EAAG6L,EAC9DxJ,GAAE,GAAKqmF,GAAkBluB,EAAS,KAAe78B,EAAM9xB,EAAKw8E,SAAUx8E,OAElEzP,GAAK4D,EAAIspB,CACd,OAAOjnB,GAIR,GAAI0pG,IAAqB1oE,EACzB,IAAI2oE,IAAqB1oE,EAEzB,SAAS2oE,IAAyBvvF,EAAKra,GACtC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAC1Bpa,GAAE6V,YAAY,EAAGwE,EACjB,OAAOra,GAIR,QAAS6pG,IAAe9vG,EAAM1D,GAC7B,GAAI4wB,GAAMltB,EAAK4D,EAAItH,CACnB,IAAIumF,GAAM57C,GAAmBjnC,EAAM,GACnC,IAAI+vG,GAAQ3pE,GAA2BpmC,EACvC,IAAIu/B,GAAMuF,GAAmB9kC,EAC7B,IAAIkoG,GAAUpjE,GAAmB9kC,EACjC,IAAIgwG,GAAUlrE,GAAmB9kC,EACjCA,GAAK4D,EAAIspB,CACT,IAAIjnB,IAAM48E,IAAIA,EAAKktB,MAAMA,EAAOxwE,IAAIA,EAAKywE,QAAQA,EACjD,IAAG9H,EAASjiG,EAAE+9C,QAAUkkD,CACxB,OAAOjiG,GAER,QAASgqG,IAAersG,EAAGk0C,GAC1B,GAAI7xC,GAAIoa,GAAQ,GAAG,GAAGzc,EAAE,GAAG2zC,OAAOj7C,QAAUsH,EAAE,GAAGogD,SAAW,IAAI1nD,QAChE4qC,KAAoBtlC,EAAEghC,GAAYh/B,EAAE,IAAKxH,EAAEwmC,GAAYh/B,EAAE,KAAMqC,EAC/DugC,IAAY,MAAQsR,EAAK7xC,EACzB,IAAIiqG,GAAStsG,EAAE,GAAG2zC,OAAO30C,QAAQ,IACjC,IAAI28B,GAAM2wE,IAAW,EAAI,GAAKtsG,EAAE,GAAG2zC,OAAOl3C,MAAM6vG,EAAO,EACvDlrE,IAAmBzF,GAAO,GAAIt5B,EAC9B++B,IAAmBphC,EAAE,GAAGogD,SAAW,GAAI/9C,EACvC++B,IAAmB,GAAI/+B,EACvB,OAAOA,GAAE5F,MAAM,EAAG4F,EAAErC,GAIrB,QAASusG,OAIT,QAASC,IAAiBpwG,EAAM1D,EAAQmT,GACvC,GAAIyd,GAAMltB,EAAK4D,EAAItH,CACnB,IAAIumF,GAAM97C,GAAU/mC,EAAM,GAC1B,IAAIqwG,GAAcrwG,EAAKic,WAAW,EAClC,IAAIhW,IAAK48E,EAAM58E,GAAE,GAAKoqG,CACtB,IAAG5gG,EAAK07F,YAAa,CACpB,GAAI/sC,GAAUmwB,GAA6BvuF,EAAMktB,EAAMltB,EAAK4D,EAAG6L,EAC/DxJ,GAAE,GAAKm4D,MACDp+D,GAAK4D,EAAIspB,CAChB,OAAOjnB,GAIR,QAASqqG,IAAiBtwG,EAAM1D,EAAQmT,GACvC,GAAIyd,GAAMltB,EAAK4D,EAAItH,CACnB,IAAIumF,GAAM57C,GAAmBjnC,EAAM,GACnC,IAAIiG,IAAK48E,EACT,IAAGpzE,EAAK07F,YAAa,CACpB,GAAI/sC,GAAUswB,GAA8B1uF,EAAMktB,EAAMltB,EAAK4D,EAAG6L,EAChExJ,GAAE,GAAKm4D,CACPp+D,GAAK4D,EAAIspB,MACHltB,GAAK4D,EAAIspB,CAChB,OAAOjnB,GAKR,QAASsqG,IAAiB9tG,EAAGigC,EAAKz8B,GACjC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,GAC1B,IAAI9E,GAAI2oF,GAAUzhG,EAAGigC,EACrBz8B,GAAE6V,aAAa,EAAGrZ,EAClBwD,GAAE6V,aAAa,EAAGrZ,EAClBwD,GAAE6V,YAAY,GAAIP,EAAEymC,OAAS,IAAM,IACnC/7C,GAAE6V,YAAY,EAAG,EACjB,IAAIa,GAAQ,CACZ,IAAG+lB,EAAI6kB,OAAQ5qC,GAAS,CACxB,UAAUpB,GAAEymC,OAAS,SAAUrlC,GAAS,CACxC,IAAG+lB,EAAI0lB,MAAOzrC,GAAU+lB,EAAI0lB,OAAS,CACrCniD,GAAE6V,YAAY,EAAGa,EACjB,OAAO1W,GAIR,GAAIuqG,KAAiB,OAAO,QAAQ,MAAM,SAAS,SAAS,SAC5D,SAASC,IAAiBzwG,GACzB,GAAIqkG,KACJmM,IAAcxuG,QAAQ,SAASd,GAAKmjG,EAAQnjG,GAAKimC,GAAWnnC,EAAM,IAClE,OAAOqkG,GAER,QAASqM,IAAiBrM,EAASp+F,GAClC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,EAAE,EAC5B+jF,IAAgBC,EAChBmM,IAAcxuG,QAAQ,SAASd,GAAKkmC,GAAW,EAAUlmC,GAAI+E,IAC7D,OAAOA,GAIR,QAAS0qG,IAAqB3wG,GAC7B,GAAIe,GAAIf,EAAKic,WAAW,EACxBjc,GAAK4D,GAAK,EACV,QAASqmD,IAAKlpD,EAAI,IAEnB,QAAS6vG,IAAqB7sE,EAAIyjE,EAAUvhG,GAC3C,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,GAC1B,IAAItf,GAAI,GACR,OAAMymG,OAAcwB,WAAW,QAAQ/+C,IAAKlpD,GAAK,EACjDkF,GAAE6V,YAAY,EAAG/a,EACjBkF,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,IACjB7V,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,EACjB,OAAO7V,GAIR,QAAS4qG,IAAsBxgD,GAC9B,GAAIpqD,GAAIoa,GAAQ,GAChBpa,GAAE6V,YAAY,EAAG,EACjB7V,GAAE6V,YAAY,EAAG,EACjBorB,IAAmBmpB,EAAKpqD,EACxB,OAAOA,GAIR,QAAS6qG,IAAyBpkB,EAAIzmF,GACrC,GAAGA,GAAK,KAAMA,EAAIoa,GAAQ,GAAG,EAAE,EAC/Bpa,GAAE6V,YAAY,EAAG4wE,EAAG5a,SAAWrB,GAAsCic,EAAG5a,UAAY,EACpF7rE,GAAE6V,YAAY,EAAG,KAEf,UAAuB,QACvB,YAAuB,QACvB,cAAwB,OACxB,gBAAwB,OACxB,aAAwB,OACxB,gBAAwB,OACxB,aAAwB,OACxB,mBAAwB,OACxB,gBAAwB,OACxB,aAAwB,OACxB,oBAAuB,QACvB,OAAwB,OACxB,aAAwB,OACxB,cAAwB,OACxB,sBAAuB,QACvB9Z,QAAQ,SAAS9C,GACpB,GAAGA,EAAE,GAAI+G,EAAE6V,YAAY,EAAG4wE,EAAGxtF,EAAE,KAAO,OAASwtF,EAAGxtF,EAAE,IAAM,EAAI,OAClD+G,GAAE6V,YAAY,EAAG4wE,EAAGxtF,EAAE,KAAO,MAAQwtF,EAAGxtF,EAAE,IAAM,EAAI,IAE/D,OAAO+G,GAGR,QAAS8qG,OAET,QAASC,OAGT,QAASC,IAAajxG,EAAMgjB,EAAO7P,EAAKwgC,EAAMiT,EAAI3S,EAAQR,GACzD,IAAIzzC,EAAM,MAAOA,EACjB,IAAIyP,GAAOuT,KACX,KAAI2wB,EAAMA,GAAQyD,SAClB,IAAGzwC,GAAS,MAAQ8I,EAAKq0B,OAAS,KAAMr0B,EAAKq0B,MAAQn9B,CACrD,IAAI/E,GAAK6N,EAAKq0B,WAEd,IAAIusB,EACJ,IAAI6S,IAAYthE,GAAIiS,EAAE,IAASlT,EAAE,KAAUvE,GAAIyX,EAAE,EAAGlT,EAAE,GAEtD,IAAI2gB,KACJ,IAAI8pD,GAAO,MAAOl+C,EAAM,KACxB,IAAIW,GAAKtS,EAAG4qC,EAAI/qC,EAAG3Y,EAAGme,EAAM2pF,EAAMr2F,EAAIqtB,CACtC,IAAI4vB,KACJ1hD,GAAKiyB,KAAO,EACZjyB,GAAK,QAAU,CAEf,IAAIyhG,GAAK,EAAGC,EAAK,KAEjB,IAAI3jB,KACJ,IAAIH,KACJ,IAAIpB,GAAWx8E,EAAKw8E,UAAYrlC,EAAGqlC,cACnCA,GAASoB,QAAUA,CACnBpB,GAASuB,OAASA,CAClBvB,GAASvoD,WAAakjB,EAAGljB,YAAckjB,EAAGjjB,OAAOpiC,IAAI,SAASjD,GAAK,MAAOA,GAAEsgB,MAC5E,KAAInP,EAAKw8E,SAAU,CAClBx8E,EAAKw8E,SAAWA,CAChB,IAAGrlC,EAAGgiD,MAAO,IAAI,GAAIvsG,GAAI,EAAGA,EAAIuqD,EAAGgiD,MAAMtsG,SAAUD,EAAG4vF,EAAS,GAAG5vF,EAAE,GAAKuqD,EAAGgiD,MAAMvsG,GAGnF,GAAIshE,MAAcD,IAClB,IAAI4qC,GAAU,KAEd/nE,IAAe,KAAYrhC,EAAE,eAAgB6B,EAAE6tG,GAE/C,IAAIzwB,GAAIizB,CAERlxE,IAAalgC,EAAM,QAASqxG,GAAS9+F,EAAK++F,EAAIhxE,GAC7C,GAAGpT,EAAK,MACR,QAAOoT,GACN,IAAK,KACJ+vB,EAAM99C,CAAK,OACZ,IAAK,GACJsb,EAAMtb,CACN,IAAG9C,EAAKunD,WAAavnD,EAAKunD,WAAanpC,EAAIha,EAAGqZ,EAAI,IAClDhZ,GAAKiuB,GAAW/mB,EAAIyS,EAAIha,EACxBpE,GAAK,QAAUoe,EAAIha,CACnB,IAAGtB,EAAIg1C,QAAUh1C,EAAI81C,KAAO91C,EAAI61C,OAAS,KAAM,CAC9C,GAAG71C,EAAI81C,IAAK91C,EAAImsD,IAAMC,GAAMpsD,EAAI81C,IAChCqV,GAAQnrD,EAAIsB,GAAKtB,EAElB,MAED,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,IACJgJ,GAAMvS,EAAEuJ,EAAI,GACZ,QAAOA,EAAI,IACV,IAAK,IAAKgJ,EAAExS,EAAIwJ,EAAI,EAAI,OACxB,IAAK,IAAKg4F,EAAOp3D,GAAK5gC,EAAI,GAAKgJ,GAAExS,EAAIwhG,EAAKvhG,CAAGuS,GAAE1H,EAAI02F,EAAK12F,CAAG,OAC3D,IAAK,IAAK0H,EAAExS,EAAIwJ,EAAI,GAAK,KAAO,KAAO,OACvC,IAAK,IAAKgJ,EAAExS,EAAIwJ,EAAI,EAAI,IAAG9C,EAAKqyD,WAAa,MAAOvmD,EAAEpb,EAAImjC,GAAK/nB,EAAExS,EAAI,OACrE,IAAK,MAAOwS,EAAEvS,EAAI,GAAKuS,GAAExS,EAAIwJ,EAAI,EAAI,OACrC,IAAK,KAAMgJ,EAAEvS,EAAI,GAAKuS,GAAExS,EAAIwJ,EAAI,GAAGvJ,CAAG,QAEvC,GAAIm9C,EAAK1S,EAAOskC,OAAOxlE,EAAI,GAAGuzB,WAAak/D,GAAYzpF,EAAE4qC,EAAG/iB,SAAS,KAAK3zB,EAAMwkC,EAAQR,EACxFhxC,GAAI8P,EAAI,GAAG5R,IAAM,EAAI8B,EAAI,EAAI8P,EAAI,GAAG5R,CACpC,IAAG8O,EAAKq0B,MAAO,CAAE,IAAIliC,EAAEwZ,GAAIxZ,EAAEwZ,KAASxZ,GAAEwZ,GAAG3Y,GAAK8Y,MAC3C3Z,GAAEsgC,GAAWz/B,GAAKyR,GAAMqH,CAC7B,IAAG9L,EAAK07F,YAAa,CACpBgG,EAAK,KACL,KAAID,EAAK,EAAGA,EAAK1jB,EAAOlxF,SAAU40G,EAAI,CACrC,GAAIK,GAAM/jB,EAAO0jB,EACjB,IAAGrjF,EAAIha,GAAK09F,EAAI,GAAG3vG,EAAEiS,GAAKga,EAAIha,GAAK09F,EAAI,GAAGn1G,EAAEyX,EAC3C,GAAGpR,GAAK8uG,EAAI,GAAG3vG,EAAEjB,GAAK8B,GAAK8uG,EAAI,GAAGn1G,EAAEuE,EAAG,CACtC4a,EAAEvY,EAAI8/B,GAAayuE,EAAI,GAAKJ,GAAK,MAGpC,IAAIA,GAAM5+F,EAAIjW,OAAS,EAAGif,EAAExa,EAAIwR,EAAI,GAGrC,GAAG2wD,EAASthE,EAAEiS,EAAIga,EAAIha,EAAGqvD,EAASthE,EAAEiS,EAAIga,EAAIha,CAC5C,IAAGqvD,EAASthE,EAAEjB,EAAI8B,EAAGygE,EAASthE,EAAEjB,EAAI8B,CACpC,IAAGygE,EAAS9mE,EAAEyX,EAAIga,EAAIha,EAAGqvD,EAAS9mE,EAAEyX,EAAIga,EAAIha,CAC5C,IAAGqvD,EAAS9mE,EAAEuE,EAAI8B,EAAGygE,EAAS9mE,EAAEuE,EAAI8B,CACpC,IAAGgN,EAAKg1B,WAAa0hB,GAAM5qC,EAAEvS,GAAK,KAAOmN,GAAYpM,EAAUo8C,EAAG/iB,WAAY,CAC7E,GAAIouE,GAAKhiG,EAAoB+L,EAAExS,EAAI,IAAGyoG,EAAI,CAAEj2F,EAAEvS,EAAI,GAAKuS,GAAExS,EAAI,GAAIwH,MAAKihG,EAAGvhG,EAAGuhG,EAAGthG,EAAE,EAAEshG,EAAGt1G,EAAEs1G,EAAGrhG,EAAEqhG,EAAG9uG,EAAE8uG,EAAGphG,EAAEohG,EAAGxhG,IAE3G,GAAGmuE,EAAI,CACN,GAAGA,EAAG9rE,MAAQ,SAAUkJ,EAAEpf,EAAI,IAC9BgiF,OAAU,GAEX,GAAGizB,EAAIA,MAAU,EACjB,OAED,IAAK,IACL,IAAK,IACJ,IAAI3hG,EAAK+0B,YAAc4mC,EAAM,KAC7B7vD,IAAMvS,EAAE,IAAID,MAAO,GACnBtG,GAAI8P,EAAI,GAAG5R,IAAM,EAAI8B,EAAI,EAAI8P,EAAI,GAAG5R,CACpC,IAAG8O,EAAKq0B,MAAO,CAAE,IAAIliC,EAAEwZ,GAAIxZ,EAAEwZ,KAASxZ,GAAEwZ,GAAG3Y,GAAK8Y,MAC3C3Z,GAAEsgC,GAAWz/B,GAAKyR,GAAMqH,CAC7B,IAAG2nD,EAASthE,EAAEiS,EAAIga,EAAIha,EAAGqvD,EAASthE,EAAEiS,EAAIga,EAAIha,CAC5C,IAAGqvD,EAASthE,EAAEjB,EAAI8B,EAAGygE,EAASthE,EAAEjB,EAAI8B,CACpC,IAAGygE,EAAS9mE,EAAEyX,EAAIga,EAAIha,EAAGqvD,EAAS9mE,EAAEyX,EAAIga,EAAIha,CAC5C,IAAGqvD,EAAS9mE,EAAEuE,EAAI8B,EAAGygE,EAAS9mE,EAAEuE,EAAI8B,CACpC,IAAG07E,EAAI,CACN,GAAGA,EAAG9rE,MAAQ,SAAUkJ,EAAEpf,EAAI,IAC9BgiF,OAAU,GAEX,GAAGizB,EAAIA,MAAU,EACjB,OAED,IAAK,KACJjgD,EAAOttD,KAAK0O,EAAM,OAEnB,IAAK,IAAQ,CACZ4rE,IAAO1uE,EAAK67F,YAAYhtB,UAAU/rE,EAAI,GACrC,MAEF,IAAK,KACJ,GAAI8kC,GAAM1D,EAAK,OAAOphC,EAAIw9F,MAC1B,IAAG14D,EAAK,CACP9kC,EAAIglC,OAASF,EAAIE,MACjB,IAAGhlC,EAAIgtB,IAAKhtB,EAAIglC,QAAU,IAAIhlC,EAAIgtB,GAClChtB,GAAI01F,IAAM5wD,MACJ,IAAG9kC,EAAIw9F,OAAS,GAAI,CAC1Bx9F,EAAIglC,OAAS,IAAMhlC,EAAIgtB,IAExB,IAAInkB,EAAE7I,EAAIswE,IAAIjhF,EAAEiS,EAAEuH,GAAG7I,EAAIswE,IAAIzmF,EAAEyX,IAAIuH,EAAG,IAAI3Y,EAAE8P,EAAIswE,IAAIjhF,EAAEjB,EAAE8B,GAAG8P,EAAIswE,IAAIzmF,EAAEuE,IAAI8B,EAAG,CAC3E,GAAGgN,EAAKq0B,MAAO,CACd,IAAIliC,EAAEwZ,GAAIxZ,EAAEwZ,KACZ,KAAIxZ,EAAEwZ,GAAG3Y,GAAIb,EAAEwZ,GAAG3Y,IAAMuG,EAAE,IAAID,EAAE1E,UAChCzC,GAAEwZ,GAAG3Y,GAAGmB,EAAI2O,MACN,CACNqO,EAAOkhB,IAAanhC,EAAE8B,EAAEoR,EAAEuH,GAC1B,KAAIxZ,EAAEgf,GAAOhf,EAAEgf,IAAS5X,EAAE,IAAID,EAAE1E,UAChCzC,GAAEgf,GAAMhd,EAAI2O,GAGd,MAED,IAAK,KACJ,IAAI9C,EAAK07F,YAAa,KACtB3d,GAAO3pF,KAAK0O,EACZgvB,GAAS9xB,EAAKq0B,MAAQliC,EAAEwZ,GAAG3Y,GAAKb,EAAEsgC,GAAWz/B,GAAKyR,EAClDqtB,GAAKxgC,EAAIurF,GAAkB/5E,EAAI,GAAI2wD,GAAWrvD,EAAEga,EAAIha,EAAGlT,EAAE8B,GAAIwpF,EAAUx8E,EACvE8xB,GAAKv+B,EAAI8/B,GAAavwB,EAAI,GAC1B,OACD,IAAK,KACJ,IAAI9C,EAAK07F,YAAa,KACtB9d,GAAQvrD,GAAYvvB,EAAI,GAAG3Q,IAAM2Q,EAAI,EACrCgvB,GAAQ9xB,EAAKq0B,MAAQliC,EAAEwZ,GAAG3Y,GAAKb,EAAEsgC,GAAWz/B,GAAKyR,EACjDqtB,GAAKxgC,EAAIurF,GAAkB/5E,EAAI,GAAI2wD,GAAWrvD,EAAEga,EAAIha,EAAGlT,EAAE8B,GAAIwpF,EAAUx8E,EACvE,OAGD,IAAK,IACJ,IAAIA,EAAKs8C,WAAY,KACrB,OAAMx5C,EAAInW,GAAKmW,EAAI3Q,EAAG,CACrB+7D,EAAQprD,EAAInW,MAAS4lD,MAAOzvC,EAAIpS,EAAE,IAAKonD,UAAWh1C,EAAIoK,MAAQ,GAAOyrC,MAAO71C,EAAI61C,MAChF,KAAIkgD,EAAS,CAAEA,EAAU,IAAMzzB,IAActiE,EAAIpS,EAAE,KACnDs+D,GAAYd,EAAQprD,EAAInW,EAAE,IAE3B,MAED,IAAK,KACJwF,EAAE,gBAAmByuD,IAAIvtB,GAAavwB,GACtC,OAED,IAAK,KACJ3Q,EAAE,YAAc2Q,CAChB,OAED,IAAK,KACJ,IAAIq0C,EAAGjjB,OAAOxwB,GAAMyzC,EAAGjjB,OAAOxwB,KAC9B,IAAGZ,EAAIqM,KAAMgoC,EAAGjjB,OAAOxwB,GAAKg0F,SAAW50F,EAAIqM,IAC3C,IAAGrM,EAAIq1F,OAASr1F,EAAIiyF,KAAM5iG,EAAE,aAAgBgmG,MAAOr1F,EAAIq1F,MAAOpD,KAAMjyF,EAAIiyF,KACxE,OAED,IAAK,KACJ,IAAI59C,EAAGoiD,MAAOpiD,EAAGoiD,UACjB,KAAIpiD,EAAGoiD,MAAM,GAAIpiD,EAAGoiD,MAAM,KAC1B,IAAGz2F,EAAI03C,IAAKrD,EAAGoiD,MAAM,GAAG/+C,IAAM,IAC9B,OAED,IAAK,KACJ,MAED,IAAK,KACL,IAAK,MACJ,MAED,IAAK,KACJ,MACD,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,OACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,OACL,IAAK,OACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,KACL,IAAK,OACL,IAAK,MACJ,MAED,IAAK,IACJmhB,EAAO,IAAM,OACd,IAAK,IACJA,EAAO,KAAO,OACf,IAAK,IACJ9pD,EAAMzd,KAAKy8B,EAAK8qC,GAAO,IAAM,OAC9B,IAAK,IACJ9pD,EAAMkB,KAAO4oD,GAAO,KAAO,OAE5B,QACC,GAAGkmC,EAAGvhG,EAAE,MACH,KAAIq7D,GAAQ37D,EAAKorB,IAAK,KAAM,IAAI19B,OAAM,uBAAyBmjC,EAAGhgC,SAAS,QAEhFmP,SAEIA,GAAKw8E,eACLx8E,GAAK,OAEZ,KAAI7N,EAAE,UAAYshE,EAASthE,EAAEiS,EAAI,KAAWw8C,IAAQA,EAAIj0D,EAAEyX,EAAI,GAAKw8C,EAAIj0D,EAAEuE,EAAI,GAAK0vD,EAAIzuD,EAAEiS,EAAI,GAAKw8C,EAAIzuD,EAAEjB,EAAI,IAAKiB,EAAE,QAAUkhC,GAAautB,GAAO6S,EAChJ,IAAGzzD,EAAKunD,WAAap1D,EAAE,QAAS,CAC/B,GAAIolG,GAAS/jE,GAAkBrhC,EAAE,QACjC,IAAG6N,EAAKunD,YAAcgwC,EAAO5qG,EAAEyX,EAAG,CACjCmzF,EAAO5qG,EAAEyX,EAAIpE,EAAKunD,UAAY,CAC9B,IAAGgwC,EAAO5qG,EAAEyX,EAAIqvD,EAAS9mE,EAAEyX,EAAGmzF,EAAO5qG,EAAEyX,EAAIqvD,EAAS9mE,EAAEyX,CACtD,IAAGmzF,EAAO5qG,EAAEyX,EAAImzF,EAAOplG,EAAEiS,EAAGmzF,EAAOplG,EAAEiS,EAAImzF,EAAO5qG,EAAEyX,CAClD,IAAGmzF,EAAO5qG,EAAEuE,EAAIuiE,EAAS9mE,EAAEuE,EAAGqmG,EAAO5qG,EAAEuE,EAAIuiE,EAAS9mE,EAAEuE,CACtD,IAAGqmG,EAAO5qG,EAAEuE,EAAIqmG,EAAOplG,EAAEjB,EAAGqmG,EAAOplG,EAAEjB,EAAIqmG,EAAO5qG,EAAEuE,CAClDiB,GAAE,YAAcA,EAAE,OAClBA,GAAE,QAAUkhC,GAAakkE,IAG3B,GAAG71C,EAAO70D,OAAS,EAAGsF,EAAE,WAAauvD,CACrC,IAAGwM,EAAQrhE,OAAS,EAAGsF,EAAE,SAAW+7D,CACpC,IAAGD,EAAQphE,OAAS,EAAGsF,EAAE,SAAW87D,CACpC,OAAO97D,GAIR,QAAS6vG,IAAkBpwE,EAAIE,EAAMnmB,EAAG3Y,EAAGgN,EAAMs0B,EAAI2tE,GACpD,GAAGnwE,EAAKx4B,IAAM1E,UAAW,MAAO,MAChC,IAAIwS,GAAK,EACT,QAAO0qB,EAAKv4B,GACX,IAAK,IAAK6N,EAAK0qB,EAAKx4B,EAAI,IAAM,GAAK,OACnC,IAAK,IACJw4B,EAAO1M,GAAI0M,EACXA,GAAKvJ,EAAIuJ,EAAKvJ,GAAKjuB,EAAU,GAC7Bw3B,GAAKx4B,EAAIkpB,GAAQW,GAAU2O,EAAKx4B,GAAKw4B,GAAKv4B,EAAI,GAC9C,OAED,IAAK,KAAK,IAAK,IAAK6N,EAAK,GAAG0qB,EAAKx4B,CAAG,OACpC,QAAS8N,EAAK0qB,EAAKx4B,CAAG,QAEvB,GAAI9C,IAAM4N,EAAEuH,EAAGza,EAAE8B,EAEjBwD,GAAErE,EAAIgjG,GAAen1F,EAAK+oE,QAASj3C,EAAM9xB,EACzC,IAAG8xB,EAAK39B,EAAGmgC,EAAG,UAAUlgC,MAAMi+B,GAAY77B,GAAIs7B,EAAK39B,GACnD,IAAG29B,EAAK5gC,EAAGojC,EAAG,aAAalgC,MAAMi+B,GAAY77B,GAAIs7B,EAAK5gC,GACtD,QAAO4gC,EAAKv4B,GACX,IAAK,KAAK,IAAK,MACd,GAAGyG,EAAK69D,QAAS,CAChBz2D,EAAKitF,GAAWr0F,EAAKi6F,QAAUnoE,EAAM,EAAG9xB,EAAKk6F,WAC7C1jG,GAAE+C,EAAI,GAAK/C,GAAE8C,EAAI8N,CACjB,IAAG66F,EAAWtwE,GAAaC,EAAI,GAA2BotE,GAAmBltE,EAAMt7B,QAC9Em7B,IAAaC,EAAI,EAA0BktE,GAAkBhtE,EAAMt7B,QAClE,CACNA,EAAE+C,EAAI,KACN,IAAG0oG,EAAWtwE,GAAaC,EAAI,GAAyBiuE,GAAiB/tE,EAAMt7B,QAC1Em7B,IAAaC,EAAI,EAAwB+tE,GAAgB7tE,EAAMt7B,IAErE,MAAO,MACR,IAAK,IAEJ,GAAGs7B,EAAKx4B,IAAMw4B,EAAKx4B,EAAI,IAAMw4B,EAAKx4B,GAAK,KAAQw4B,EAAKx4B,EAAI,IAAM,CAC7D,GAAG2oG,EAAWtwE,GAAaC,EAAI,GAAyB4tE,GAAiB1tE,EAAMt7B,QAC1Em7B,IAAaC,EAAI,EAAwB0tE,GAAgBxtE,EAAMt7B,QAC9D,CACN,GAAGyrG,EAAWtwE,GAAaC,EAAI,GAA2BwtE,GAAmBttE,EAAMt7B,QAC9Em7B,IAAaC,EAAI,EAA0BstE,GAAkBptE,EAAMt7B,IACvE,MAAO,MACV,IAAK,IACJA,EAAE+C,EAAI,GACN,IAAG0oG,EAAWtwE,GAAaC,EAAI,GAA2B2sE,GAAmBzsE,EAAMt7B,QAC9Em7B,IAAaC,EAAI,EAA0BysE,GAAkBvsE,EAAMt7B,GACxE,OAAO,MACR,IAAK,IACJA,EAAE+C,EAAI,GACN,IAAG0oG,EAAWtwE,GAAaC,EAAI,GAA4BgtE,GAAoB9sE,EAAMt7B,QAChFm7B,IAAaC,EAAI,EAA2B8sE,GAAmB5sE,EAAMt7B,GAC1E,OAAO,OAET,GAAGyrG,EAAWtwE,GAAaC,EAAI,GAA4BssE,GAAoBpsE,EAAMt7B,QAChFm7B,IAAaC,EAAI,EAA2BmsE,GAAmBjsE,EAAMt7B,GAC1E,OAAO,MAGR,QAAS0rG,IAAgBtwE,EAAI0C,EAAI5wB,EAAK1D,GACrC,GAAImyB,GAAQqB,GAAkBc,EAAG,SAAW,MAAOssB,EAAKn8C,EAAK,GAAIyjD,IACjEv2B,IAAaC,EAAI,IACjB,IAAIyC,GAAQ7gC,MAAM4E,QAAQk8B,EAC1B,IAAI6tE,GAAMhwE,EAAMxlC,EAAEyX,CAClB,IAAGkwB,EAAG,SAAU6tE,EAAMvoG,KAAKmM,IAAIosB,EAAMxlC,EAAEyX,EAAGkwB,EAAG,SAASznC,OAAS,EAC/D,KAAI,GAAI8e,GAAIwmB,EAAMhgC,EAAEiS,EAAGuH,GAAKw2F,IAAOx2F,EAAG,CACrClH,EAAKiuB,GAAW/mB,EAGhB6xF,IAAiB5rE,EAAI0C,EAAInC,EAAOxmB,EAChC,IAAIs2F,GAAY,KAChB,IAAGt2F,GAAKwmB,EAAMxlC,EAAEyX,EAAG,IAAI,GAAIpR,GAAIm/B,EAAMhgC,EAAEjB,EAAG8B,GAAKm/B,EAAMxlC,EAAEuE,IAAK8B,EAAG,CAE9D,GAAG2Y,IAAMwmB,EAAMhgC,EAAEiS,EAAG8jD,EAAKl1D,GAAKy/B,GAAWz/B,EACzC4tD,GAAMsH,EAAKl1D,GAAKyR,CAChB,IAAIqtB,GAAOuC,GAASC,EAAG3oB,QAAQ3Y,GAAKshC,EAAGssB,EACvC,KAAI9uB,EAAM,CAAEmwE,EAAY,KAAO,UAE/BA,EAAYD,GAAkBpwE,EAAIE,EAAMnmB,EAAG3Y,EAAGgN,EAAMs0B,EAAI2tE,IAG1DtwE,GAAaC,EAAI,KAGlB,QAASwwE,IAAiBxwE,EAAI0C,GAC7B,IAAIA,IAAOA,EAAG,WAAY,MAC1B3C,IAAaC,EAAI,IAAiCwuE,GAAyB9rE,EAAG,WAAWznC,QACzFynC,GAAG,WAAW/hC,QAAQ,SAASkO,GAAKkxB,GAAaC,EAAI,IAA2BuuE,GAAmB1/F,KACnGkxB,IAAaC,EAAI,KAGlB,QAASywE,IAAezwE,EAAI0C,GAC3B,IAAIA,IAAOA,EAAG,SAAU,MACxB3C,IAAaC,EAAI,IACjB0C,GAAG,SAAS/hC,QAAQ,SAASkO,EAAG7T,GAAK,GAAG6T,EAAGkxB,GAAaC,EAAI,GAA2BkvE,GAAiBl0G,EAAG6T,KAC3GkxB,IAAaC,EAAI,KAGlB,QAAS0wE,IAAgB1wE,EAAI0C,GAC5B,IAAIA,IAAOA,EAAG,QAAS,MACvB3C,IAAaC,EAAI,IACjBD,IAAaC,EAAI,IAA8BwvE,GAAsB5tE,GAAkBc,EAAG,UAC1F3C,IAAaC,EAAI,KAGlB,QAAS2wE,IAAa3wE,EAAI0C,EAAI4P,GAE7B5P,EAAG,UAAU/hC,QAAQ,SAAS4B,GAC7B,IAAIA,EAAE,GAAG2zC,OAAQ,MACjB,IAAIO,GAAMD,GAASlE,GAAO,EAAG/vC,EAAE,GAAG2zC,OAAOrwC,QAAQ,OAAQ,IAAK20B,GAAK8Z,MACnEvU,IAAaC,EAAI,IAAuB4uE,GAAersG,EAAGk0C,YAEpD/T,GAAG,UAEX,QAASkuE,IAAoB5wE,EAAI0C,EAAI5wB,EAAKwgC,GAEzC,GAAG5P,EAAG,aAAaznC,OAAS,EAAG,CAC9B,GAAIw7C,GAAMD,GAASlE,GAAO,EAAG,0BAA4BxgC,EAAI,GAAK,OAAQ0oB,GAAK+Z,IAC/ExU,IAAaC,EAAI,IAA+BmF,GAAY,MAAQsR,GACpE/T,GAAG,WAAa+T,GAIlB,QAASo6D,IAAiB7wE,EAAI0C,EAAI6iB,EAAIzzC,GACrC,IAAI4wB,EAAG,eAAgB,MACvB,IAAI/jC,GAAO+jC,EAAG,cACd,IAAIssB,SAAarwD,GAAKqwD,MAAQ,SAAWrwD,EAAKqwD,IAAMvtB,GAAa9iC,EAAKqwD,IAGtE,KAAIzJ,EAAG4gD,SAAU5gD,EAAG4gD,UAAa7jE,UACjC,KAAIijB,EAAG4gD,SAASoB,MAAOhiD,EAAG4gD,SAASoB,QACnC,IAAI9b,GAAQlmC,EAAG4gD,SAASoB,KACxB,IAAIhnE,GAAQiB,GAAawtB,EACzB,IAAGzuB,EAAMhgC,EAAEiS,GAAK+tB,EAAMxlC,EAAEyX,EAAG,CAAE+tB,EAAMxlC,EAAEyX,EAAIgvB,GAAakB,EAAG,SAAS3nC,EAAEyX,CAAGw8C,GAAMvtB,GAAalB,GAC1F,IAAI,GAAIvlC,GAAI,EAAGA,EAAIywF,EAAMxwF,SAAUD,EAAG,CACrC,GAAIuiB,GAAOkuE,EAAMzwF,EACjB,IAAGuiB,EAAKywC,MAAQ,wBAAyB,QACzC,IAAGzwC,EAAKiqF,OAAS11F,EAAK,QACtByL,GAAKkqF,IAAM,IAAMliD,EAAGljB,WAAWvwB,GAAO,KAAOk9C,CAAK,OAEnD,GAAGh0D,GAAKywF,EAAMxwF,OAAQwwF,EAAMjpF,MAAOwrD,KAAM,wBAAyBw5C,MAAO11F,EAAK21F,IAAK,IAAMliD,EAAGljB,WAAWvwB,GAAO,KAAOk9C,GAErHjvB,IAAaC,EAAI,IAA8B6F,GAAmBjE,GAAkBotB,IAIpFjvB,IAAaC,EAAI,KAGlB,QAAS8wE,IAAe9wE,EAAI0C,EAAIyjE,GAC/BpmE,GAAaC,EAAI,IACjB,EAECD,GAAaC,EAAI,IAA6BuvE,GAAqB7sE,EAAIyjE,GAKvEpmE,IAAaC,EAAI,KAGlBD,GAAaC,EAAI,KAGlB,QAAS+wE,OAKT,QAASC,IAAmBhxE,EAAI0C,GAC/B,IAAIA,EAAG,YAAa,MAEpB3C,IAAaC,EAAI,IAAiCyvE,GAAyB/sE,EAAG,cAG/E,QAASuuE,IAAan/F,EAAK1D,EAAMm3C,EAAIjT,GACpC,GAAItS,GAAKb,IACT,IAAI5+B,GAAIglD,EAAGljB,WAAWvwB,GAAM4wB,EAAK6iB,EAAGjjB,OAAO/hC,MAC3C,IAAIjB,GAAIiB,CAAG,KAAM,GAAGglD,GAAMA,EAAG4gD,SAAU7mG,EAAIimD,EAAG4gD,SAAS7jE,OAAOxwB,GAAKg0F,UAAYxmG,EAAK,MAAMvE,IAC1F,GAAIyX,GAAIovB,GAAkBc,EAAG,SAAW,KACxC,IAAGlwB,EAAEzX,EAAEuE,EAAI,OAAUkT,EAAEzX,EAAEyX,EAAI,QAAS,CACrC,GAAGpE,EAAKorB,IAAK,KAAM,IAAI19B,OAAM,UAAY4mC,EAAG,SAAW,MAAQ,sCAC/DlwB,GAAEzX,EAAEuE,EAAI0I,KAAKkM,IAAI1B,EAAEzX,EAAEuE,EAAG,MACxBkT,GAAEzX,EAAEyX,EAAIxK,KAAKkM,IAAI1B,EAAEzX,EAAEuE,EAAG,SAEzBojC,EAAG,YAEHA,GAAG,eACH3C,IAAaC,EAAI,IACjB,IAAGulB,EAAG0gD,QAAUvjE,EAAG,YAAa3C,GAAaC,EAAI,IAAwBisE,GAAgB3sG,EAAGojC,EAAG,aAC/F3C,IAAaC,EAAI,IAAuB8rE,GAAet5F,GACvDs+F,IAAe9wE,EAAI0C,EAAI6iB,EAAG4gD,SAC1B4K,IAAgB/wE,EAAI0C,EACpB+tE,IAAezwE,EAAI0C,EAAI5wB,EAAK1D,EAAMm3C,EAClC+qD,IAAgBtwE,EAAI0C,EAAI5wB,EAAK1D,EAAMm3C,EAEnCyrD,IAAmBhxE,EAAI0C,EAGvBmuE,IAAiB7wE,EAAI0C,EAAI6iB,EAAIzzC,EAI7B0+F,IAAiBxwE,EAAI0C,EAIrBiuE,IAAa3wE,EAAI0C,EAAI4P,EAErB,IAAG5P,EAAG,YAAa3C,GAAaC,EAAI,IAAyBqvE,GAAiB3sE,EAAG,aAOjF,KAAIt0B,GAAQA,EAAK68F,UAAa78F,EAAK68F,cAAkB,GAAKyF,GAAgB1wE,EAAI0C,EAG9EkuE,IAAoB5wE,EAAI0C,EAAI5wB,EAAKwgC,EAQjCvS,IAAaC,EAAI,IACjB,OAAOA,GAAGnU,MAEX,QAASqlF,IAAYvyG,GACpB,GAAI0iC,KACJ,IAAIoxB,GAAM9zD,EAAKkD,MAAM,gBACrB,IAAInC,IAGHf,EAAKkD,MAAM,0CAA0ClB,QAAQ,SAASozE,GACtE,GAAI7lE,GAAI6lE,EAAGlyE,MAAM,8CACjB,KAAIqM,EAAG,MACPmzB,IAAKnzB,EAAE,IAAMukD,GAAOvkD,EAAE,GAAKA,EAAE,IAI9B,IAAIijG,GAAK75E,IAAa34B,EAAKkD,MAAM,8CAAgD,GAAG,YAAY,KAE/FlD,EAAKkD,MAAM,4BAA4BlB,QAAQ,SAASgB,GAAKjC,EAAIiC,EAAEkE,QAAQ,SAAS,KAErF,QAAQw7B,EAAK8vE,EAAIzxG,GAIlB,QAAS0xG,IAAYzyG,EAAM4e,EAAMnP,EAAMkkC,EAAMiT,EAAI8rD,GAChD,GAAI3vE,GAAO2vE,IAAW/uB,QAAQ,QAC9B,KAAI3jF,EAAM,MAAO0yG,EAGjB,IAAIjwG,GAAI,EAAG2Y,EAAI,EAAGsnB,EAAM,GACxB,IAAIwgC,IAAYthE,GAAIiS,EAAE,IAASlT,EAAE,KAAUvE,GAAIyX,EAAE,EAAGlT,EAAE,KAGrDX,EAAKkD,MAAM,6CAA6ClB,QAAQ,SAAS2wG,GACzE,GAAIxwG,GAAQowG,GAAYI,EACxBzvC,GAASthE,EAAEiS,EAAIqvD,EAASthE,EAAEjB,EAAI,CAC9BuiE,GAAS9mE,EAAEuE,EAAI8B,CACfigC,GAAMR,GAAWz/B,EACjBN,GAAM,GAAGH,QAAQ,SAAS9C,EAAE7C,GAC3B0mC,EAAGL,EAAMP,GAAW9lC,KAAO2M,EAAE,IAAKD,EAAE7J,EAAG84B,EAAE71B,EAAM,GAC/CiZ,GAAI/e,GAEL,IAAG6mE,EAAS9mE,EAAEyX,EAAIuH,EAAG8nD,EAAS9mE,EAAEyX,EAAIuH,IAClC3Y,GAEH,IAAGA,EAAI,EAAGsgC,EAAG,QAAUD,GAAaogC,EACpC,OAAOngC,GAGR,QAAS6vE,IAAa5yG,EAAMyP,EAAM0D,EAAKwgC,EAAMiT,GAC5C,IAAI5mD,EAAM,MAAOA,EAEjB,KAAI2zC,EAAMA,GAAQyD,SAClB,IAAIx1C,IAAM+hF,QAAQ,QAASkvB,UAAU,KAAMC,OAAO,GAClD,IAAI5iG,EAGJ,IAAIi2F,GAAUnmG,EAAKkD,MAAM0iG,GACzB,IAAGO,EAASC,GAAqBD,EAAQ,GAAIvkG,EAAGglD,EAAIzzC,EAGpD,IAAIjD,EAAIlQ,EAAKkD,MAAM,wBAA0BtB,EAAE,QAAUsO,EAAE,EAE3D,IAAGyjC,EAAK,OAAO/xC,EAAE,SAAUA,EAAE,WAAa+xC,EAAK,OAAO/xC,EAAE,QACxD,OAAOA,GAER,QAASmxG,IAAa5/F,EAAK1D,EAAMm3C,EAAIjT,GACpC,GAAI1tC,IAAKoxB,GAAY4D,GAAU,aAAc,MAC5CsZ,MAAShY,GAAW,GACpBuvE,UAAWtwE,GAAM3nB,IAElB5N,GAAEA,EAAE3J,QAAU2+B,GAAU,UAAW,MAAOwxE,OAAQ,QAClD50D,IAASlE,GAAO,EAAG,uBAAyBxgC,EAAI,GAAK,OAAQ0oB,GAAKgb,KAClE,IAAG5wC,EAAE3J,OAAO,EAAG,CAAE2J,EAAEA,EAAE3J,QAAU,eAAmB2J,GAAE,GAAGA,EAAE,GAAGiB,QAAQ,KAAK,KACzE,MAAOjB,GAAEnD,KAAK,IAIf,QAASkwG,IAAgBhzG,EAAM1D,GAC9B0D,EAAK4D,GAAK,EACV,IAAIgb,GAAOkmB,GAAmB9kC,EAAM1D,EAAS,GAC7C,QAASsiB,KAAMA,GAIhB,QAASq0F,IAAajzG,EAAMyP,EAAM0D,EAAKwgC,EAAMiT,GAC5C,IAAI5mD,EAAM,MAAOA,EACjB,KAAI2zC,EAAMA,GAAQyD,SAClB,IAAIx1C,IAAK+hF,QAAQ,QAASkvB,UAAU,KAAMC,OAAO,GACjD,IAAIxxF,KACJ,IAAI8pD,GAAO,KACXlrC,IAAalgC,EAAM,QAASkzG,GAAS3gG,EAAK6I,EAAGklB,GAC5C,OAAOA,GAEN,IAAK,KACJ1+B,EAAE,QAAU2Q,CAAK,OAElB,IAAK,KACJ,IAAIq0C,EAAGjjB,OAAOxwB,GAAMyzC,EAAGjjB,OAAOxwB,KAC9B,IAAGZ,EAAIqM,KAAMgoC,EAAGjjB,OAAOxwB,GAAKg0F,SAAW50F,EAAIqM,IAC3C,OAED,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACJ,MAED,IAAK,IACJwsD,EAAO,IAAM,OACd,IAAK,IACJA,EAAO,KAAO,OACf,IAAK,IACJ9pD,EAAMzd,KAAKy8B,EAAK,OACjB,IAAK,IACJhf,EAAMkB,KAAO,OAEd,QACC,GAAGpH,EAAErL,EAAI,EAAGuR,EAAMzd,KAAKy8B,OAClB,IAAGllB,EAAErL,EAAI,EAAGuR,EAAMkB,UAClB,KAAI4oD,GAAQ37D,EAAKorB,IAAK,KAAM,IAAI19B,OAAM,uBAAyBmjC,EAAGhgC,SAAS,QAEhFmP,EAEH,IAAGkkC,EAAK,OAAO/xC,EAAE,SAAUA,EAAE,WAAa+xC,EAAK,OAAO/xC,EAAE,QACxD,OAAOA,GAER,QAASuxG,MACR,GAAI9xE,GAAKb,IACTY,IAAaC,EAAI,IAcjBD,IAAaC,EAAI,IACjB,OAAOA,GAAGnU,MAGX,GAAIkmF,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,IAAoBr8E,EAAQ6d,GACpC,IAAI,GAAIr4C,GAAI,EAAGA,GAAKw6B,EAAO76B,SAAUK,EAAG,CAAE,GAAIwD,GAAIg3B,EAAOx6B,EACxD,KAAI,GAAIN,GAAE,EAAGA,GAAK24C,EAAS14C,SAAUD,EAAG,CAAE,GAAI27B,GAAIgd,EAAS34C,EAC1D,IAAG8D,EAAE63B,EAAE,KAAO,KAAM73B,EAAE63B,EAAE,IAAMA,EAAE,OAC3B,QAAOA,EAAE,IACd,IAAK,OAAQ,SAAU73B,GAAE63B,EAAE,KAAO,SAAU73B,EAAE63B,EAAE,IAAMyB,GAAat5B,EAAE63B,EAAE,IAAM,OAC7E,IAAK,MAAO,SAAU73B,GAAE63B,EAAE,KAAO,SAAU73B,EAAE63B,EAAE,IAAM/jB,SAAS9T,EAAE63B,EAAE,IAAK,GAAK,WAK/E,QAASy7E,IAAct8E,EAAQ6d,GAC9B,IAAI,GAAI34C,GAAI,EAAGA,GAAK24C,EAAS14C,SAAUD,EAAG,CAAE,GAAI27B,GAAIgd,EAAS34C,EAC5D,IAAG86B,EAAOa,EAAE,KAAO,KAAMb,EAAOa,EAAE,IAAMA,EAAE,OACrC,QAAOA,EAAE,IACb,IAAK,OAAQ,SAAUb,GAAOa,EAAE,KAAO,SAAUb,EAAOa,EAAE,IAAMyB,GAAatC,EAAOa,EAAE,IAAM,OAC5F,IAAK,MAAO,SAAUb,GAAOa,EAAE,KAAO,SAAUb,EAAOa,EAAE,IAAM/jB,SAASkjB,EAAOa,EAAE,IAAK,GAAK,UAK9F,QAAS07E,IAAkB9sD,GAC1B6sD,GAAc7sD,EAAG+sD,QAASP,GAC1BK,IAAc7sD,EAAGgtD,OAAQL,GAEzBC,IAAoB5sD,EAAGitD,OAAQR,GAC/BG,IAAoB5sD,EAAGjjB,OAAQ2vE,GAE/B3P,IAASrzF,SAAWmpB,GAAamtB,EAAG+sD,QAAQrjG,UAG7C,QAASwjG,IAASltD,GAEjB,IAAIA,EAAG4gD,SAAU,MAAO,OACxB,KAAI5gD,EAAG4gD,SAASmM,QAAS,MAAO,OAChC,OAAOl6E,IAAamtB,EAAG4gD,SAASmM,QAAQrjG,UAAY,OAAS,QAG9D,GAAIyjG,IAAW,UAAWn3G,MAAM,GAChC,SAASo3G,IAAc90G,EAAGu3B,GACzB,GAAGv3B,EAAE5C,OAAS,GAAI,CAAE,GAAGm6B,EAAM,MAAO,MAAO,MAAM,IAAIt5B,OAAM,sCAC3D,GAAI82G,GAAQ,IACZF,IAAS/xG,QAAQ,SAASrB,GACzB,GAAGzB,EAAE0D,QAAQjC,KAAO,EAAG,MACvB,KAAI81B,EAAM,KAAM,IAAIt5B,OAAM,2CAC1B82G,GAAQ,OAET,OAAOA,GAER,QAASC,IAAeC,EAAG/jG,EAAGgkG,GAC7BD,EAAEnyG,QAAQ,SAAS9C,EAAE7C,GACpB23G,GAAc90G,EACd,KAAI,GAAIvC,GAAI,EAAGA,EAAIN,IAAKM,EAAG,GAAGuC,GAAKi1G,EAAEx3G,GAAI,KAAM,IAAIQ,OAAM,yBAA2B+B,EACpF,IAAGk1G,EAAO,CACT,GAAIC,GAAMjkG,GAAKA,EAAE/T,IAAM+T,EAAE/T,GAAG8qG,UAAajoG,CACzC,IAAGm1G,EAAG93G,WAAW,IAAM,IAAM83G,EAAG/3G,OAAS,GAAI,KAAM,IAAIa,OAAM,2BAA6Bk3G,MAI7F,QAASC,IAAS1tD,GACjB,IAAIA,IAAOA,EAAGljB,aAAekjB,EAAGjjB,OAAQ,KAAM,IAAIxmC,OAAM,mBACxD,KAAIypD,EAAGljB,WAAWpnC,OAAQ,KAAM,IAAIa,OAAM,oBAC1C,IAAIwmC,GAAUijB,EAAG4gD,UAAY5gD,EAAG4gD,SAAS7jE,UACzCuwE,IAAettD,EAAGljB,WAAYC,IAAUijB,EAAG0gD,OAC3C,KAAI,GAAIjrG,GAAI,EAAGA,EAAIuqD,EAAGljB,WAAWpnC,SAAUD,EAAG8oG,GAASv+C,EAAGjjB,OAAOijB,EAAGljB,WAAWrnC,IAAKuqD,EAAGljB,WAAWrnC,GAAIA,GAIvG,GAAIk4G,IAAY,eAChB,SAASC,IAAax0G,EAAMyP,GAC3B,IAAIzP,EAAM,KAAM,IAAI7C,OAAM,sBAC1B,IAAIypD,IAAO3K,cAAe03D,WAAYE,UAAWlwE,UAAWiwE,UAAWhL,SAAUr0D,MAAO,GACxF,IAAI62B,GAAO,MAAO72B,EAAQ,OAC1B,IAAIkgE,MAAYC,EAAU,CAC1B10G,GAAKkH,QAAQuwB,GAAU,QAASk9E,GAAOr2G,EAAG6U,GACzC,GAAIlD,GAAI2nB,GAAYt5B,EACpB,QAAO65B,GAASloB,EAAE,KACjB,IAAK,QAAS,MAGd,IAAK,YACJ,GAAG3R,EAAE4E,MAAMqxG,IAAYhgE,EAAQ,QAAUj2C,EAAE4E,MAAM,WAAW,EAC5D0jD,GAAGrS,MAAQtkC,EAAEskC,EACb,OACD,IAAK,cAAe,MAGpB,IAAK,qBAAuBtkC,GAAE,EAAI22C,GAAG3K,WAAahsC,CAAG,OACrD,IAAK,kBAAkB,IAAK,iBAAkB,MAG9C,IAAK,eACJ,MACD,IAAK,iBAAkB,MAGvB,IAAK,eACL,IAAK,gBACJmjG,GAAWpxG,QAAQ,SAAS7B,GAC3B,GAAG8P,EAAE9P,EAAE,KAAO,KAAM,MACpB,QAAOA,EAAE,IACR,IAAK,OAAQymD,EAAG+sD,QAAQxzG,EAAE,IAAMs5B,GAAaxpB,EAAE9P,EAAE,IAAM,OACvD,IAAK,MAAOymD,EAAG+sD,QAAQxzG,EAAE,IAAM8T,SAAShE,EAAE9P,EAAE,IAAK,GAAK,OACtD,QAASymD,EAAG+sD,QAAQxzG,EAAE,IAAM8P,EAAE9P,EAAE,OAGlC,IAAG8P,EAAEi3F,SAAUtgD,EAAG+sD,QAAQxM,SAAWntE,GAAS/pB,EAAEi3F,SAChD,OACD,IAAK,gBAAiB,MAGtB,IAAK,sBACJ,MACD,IAAK,wBAAyB,MAG9B,IAAK,cAAc,IAAK,eAAe,IAAK,eAAgB,MAE5D,IAAK,iBAAiB,IAAK,wBAA0Bj3F,GAAE,EAAI22C,GAAGitD,OAAOhwG,KAAKoM,EAAI,OAC9E,IAAK,kBAAmB,MAGxB,IAAK,WAAW,IAAK,YAAY,IAAK,YAAa,MAEnD,IAAK,SACJ,OAAOA,EAAEqR,OACR,IAAK,SAAUrR,EAAE2kG,OAAS,CAAG,OAC7B,IAAK,aAAc3kG,EAAE2kG,OAAS,CAAG,OACjC,QAAS3kG,EAAE2kG,OAAS,SAEd3kG,GAAEqR,KACTrR,GAAE2O,KAAO+Z,GAAYqB,GAAS/pB,EAAE2O,aACzB3O,GAAE,EAAI22C,GAAGjjB,OAAO9/B,KAAKoM,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,gBAAiBm7D,EAAK,IAAM,OACxD,IAAK,kBAAmBA,EAAK,KAAO,OAEpC,IAAK,eAAgB,CACpBqpC,IACAA,GAAMplD,KAAOr1B,GAAS/pB,EAAE2O,KACxB,IAAG3O,EAAEkgD,QAASskD,EAAMI,QAAU5kG,EAAEkgD,OAChC,IAAGlgD,EAAE6kG,aAAcL,EAAM5L,OAAS54F,EAAE6kG,YACpC,IAAGr7E,GAAaxpB,EAAEs3C,QAAQ,KAAMktD,EAAMG,OAAS,IAC/CF,GAAUvhG,EAAM7U,EAAEhC,OACjB,MACF,IAAK,iBAAkB,CACtBm4G,EAAM3L,IAAMnwE,GAAYqB,GAASh6B,EAAKK,MAAMq0G,EAASvhG,IACrDyzC,GAAGgiD,MAAM/kG,KAAK4wG,GACb,MACF,IAAK,iBAAkB,MAGvB,IAAK,gBAAkBxkG,GAAE,EAAI22C,GAAGgtD,OAAS3jG,CAAG,OAC5C,IAAK,kBAAoBA,GAAE,EAAI22C,GAAGgtD,OAAS3jG,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,OAAQm7D,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,GAAQ37D,EAAKorB,IAAK,KAAM,IAAI19B,OAAM,gBAAkB8S,EAAE,GAAK,iBAEzE,MAAO3R,IAER,IAAGi+B,GAAW35B,QAAQgkD,EAAGrS,UAAY,EAAG,KAAM,IAAIp3C,OAAM,sBAAwBypD,EAAGrS,MAEnFm/D,IAAkB9sD,EAElB,OAAOA,GAGR,QAASmuD,IAAanuD,GACrB,GAAI3gD,IAAKoxB,GACTpxB,GAAEA,EAAE3J,QAAU2+B,GAAU,WAAY,MACnCsZ,MAAShY,GAAW,GAGpBuvE,UAAWtwE,GAAM3nB,GAGlB,IAAImhG,GAAepuD,EAAG4gD,WAAa5gD,EAAG4gD,SAASoB,WAAWtsG,OAAS,CAKnE,IAAI24G,IAAe/N,SAAS,eAC5B,IAAGtgD,EAAG4gD,UAAY5gD,EAAG4gD,SAASmM,QAAS,CACtCP,GAAWpxG,QAAQ,SAAS1D,GAC9B,GAAIsoD,EAAG4gD,SAASmM,QAAQr1G,EAAE,KAAQ,KAAM,MACrC,IAAIsoD,EAAG4gD,SAASmM,QAAQr1G,EAAE,KAAQA,EAAE,GAAI,MACxC22G,GAAW32G,EAAE,IAAOsoD,EAAG4gD,SAASmM,QAAQr1G,EAAE,KAE7C,IAAGsoD,EAAG4gD,SAASmM,QAAQxM,SAAU,CAAE8N,EAAW/N,SAAWtgD,EAAG4gD,SAASmM,QAAQxM,eAAiB8N,GAAW9N,UAExGlhG,EAAEA,EAAE3J,QAAW2+B,GAAU,aAAc,KAAMg6E,EAI7C,IAAIxxE,GAASmjB,EAAG4gD,UAAY5gD,EAAG4gD,SAAS7jE,UACxC,IAAItnC,GAAI,CAGR,IAAGonC,GAAUA,EAAO,MAAQA,EAAO,GAAGmxE,OAAQ,CAC7C3uG,EAAEA,EAAE3J,QAAU,aACd,KAAID,EAAI,EAAGA,GAAKuqD,EAAGljB,WAAWpnC,SAAUD,EAAG,CAC1C,IAAIonC,EAAOpnC,GAAI,KACf,KAAIonC,EAAOpnC,GAAGu4G,OAAQ,MAEvB,GAAGv4G,GAAKuqD,EAAGljB,WAAWpnC,OAAQD,EAAI,CAClC4J,GAAEA,EAAE3J,QAAU,6BAA+BD,EAAI,gBAAkBA,EAAI,KACvE4J,GAAEA,EAAE3J,QAAU,eAGf2J,EAAEA,EAAE3J,QAAU,UACd,KAAID,EAAI,EAAGA,GAAKuqD,EAAGljB,WAAWpnC,SAAUD,EAAG,CAC1C,GAAIohE,IAAQ7+C,KAAKoa,GAAU4tB,EAAGljB,WAAWrnC,GAAGgE,MAAM,EAAE,KACpDo9D,GAAIy3C,QAAU,IAAI74G,EAAE,EACpBohE,GAAI,QAAU,OAAOphE,EAAE,EACvB,IAAGonC,EAAOpnC,GAAI,OAAOonC,EAAOpnC,GAAGu4G,QAC9B,IAAK,GAAGn3C,EAAIn8C,MAAQ,QAAU,OAC9B,IAAK,GAAGm8C,EAAIn8C,MAAQ,YAAc,QAEnCrb,EAAEA,EAAE3J,QAAW2+B,GAAU,QAAQ,KAAKwiC,GAEvCx3D,EAAEA,EAAE3J,QAAU,WAKd,IAAG04G,EAAa,CACf/uG,EAAEA,EAAE3J,QAAU,gBACd,IAAGsqD,EAAG4gD,UAAY5gD,EAAG4gD,SAASoB,MAAOhiD,EAAG4gD,SAASoB,MAAM5mG,QAAQ,SAAS9C,GACvE,GAAIhD,IAAK0iB,KAAK1f,EAAEmwD,KAChB,IAAGnwD,EAAE21G,QAAS34G,EAAEi0D,QAAUjxD,EAAE21G,OAC5B,IAAG31G,EAAE2pG,OAAS,KAAM3sG,EAAE44G,aAAe,GAAG51G,EAAE2pG,KAC1C,IAAG3pG,EAAE01G,OAAQ14G,EAAEqrD,OAAS,GACxB,KAAIroD,EAAE4pG,IAAK,MACX7iG,GAAEA,EAAE3J,QAAU2+B,GAAU,cAAejC,GAAU95B,EAAE4pG,KAAM5sG,IAE1D+J,GAAEA,EAAE3J,QAAU,kBAcf,GAAG2J,EAAE3J,OAAO,EAAE,CAAE2J,EAAEA,EAAE3J,QAAU,aAAe2J,GAAE,GAAGA,EAAE,GAAGiB,QAAQ,KAAK,KACpE,MAAOjB,GAAEnD,KAAK,IAGf,QAASqyG,IAAkBn1G,EAAM1D,GAChC,GAAI07B,KACJA,GAAE48E,OAAS50G,EAAKic,WAAW,EAC3B+b,GAAEo9E,OAASp1G,EAAKic,WAAW,EAC3B+b,GAAEq9E,SAAW9uE,GAAYvmC,EAAK1D,EAAO,EACrC07B,GAAEpZ,KAAOkmB,GAAmB9kC,EAC5B,OAAOg4B,GAER,QAASs9E,IAAkBt1G,EAAMiG,GAChC,IAAIA,EAAGA,EAAIoa,GAAQ,IACnBpa,GAAE6V,YAAY,EAAG9b,EAAK40G,OACtB3uG,GAAE6V,YAAY,EAAG9b,EAAKo1G,OACtB5uE,IAAYxmC,EAAKq1G,SAAUpvG,EAC3B++B,IAAmBhlC,EAAK4e,KAAKve,MAAM,EAAE,IAAK4F,EAC1C,OAAOA,GAAE3J,OAAS2J,EAAErC,EAAIqC,EAAE5F,MAAM,EAAG4F,EAAErC,GAAKqC,EAI3C,QAASsvG,IAAgBv1G,EAAM1D,GAC9B,GAAI2J,KACJ,IAAI0W,GAAQ3c,EAAKic,WAAW,EAC5BhW,GAAEuvG,oBAAsBx1G,EAAKic,WAAW,EACxC,IAAIw5F,GAAWn5G,EAAS,EAAKwoC,GAAmB9kC,GAAQ,EACxD,IAAGy1G,EAAQn5G,OAAS,EAAG2J,EAAEkhG,SAAWsO,CACpCxvG,GAAEyvG,wBAA0B/4F,EAAQ,MACpC1W,GAAE0vG,cAAgBh5F,EAAQ,GAC1B1W,GAAE2vG,sBAAwBj5F,EAAQ,KAClC1W,GAAEqK,YAAcqM,EAAQ,EACxB1W,GAAE4vG,iBAAmBl5F,EAAQ,EAC7B1W,GAAE6vG,sBAAwBn5F,EAAQ,KAClC1W,GAAE8vG,qBAAuBp5F,EAAQ,GACjC1W,GAAE+vG,gBAAkBr5F,EAAQ,KAC5B1W,GAAEgwG,yBAA2Bt5F,EAAQ,OACrC1W,GAAEiwG,0BAA4Bv5F,EAAQ,IACtC1W,GAAEkwG,8BAAgCx5F,EAAQ,EAC1C1W,GAAEmwG,qBAAuBz5F,EAAQ,GACjC1W,GAAEowG,aAAe,MAAO,eAAgB,QAAS15F,GAAS,GAAM,EAChE1W,GAAEqwG,wBAA0B35F,EAAQ,MACpC1W,GAAEswG,aAAe,UAAW,QAAS,UAAW55F,GAAS,EAAK,EAC9D,OAAO1W,GAER,QAASuwG,IAAgBx2G,EAAMiG,GAC9B,IAAIA,EAAGA,EAAIoa,GAAQ,GACnB,IAAI1D,GAAQ,CACZ,IAAG3c,EAAM,CAER,GAAGA,EAAK61G,cAAel5F,GAAS,EAEjC1W,EAAE6V,YAAY,EAAGa,EACjB1W,GAAE6V,YAAY,EAAG,EACjBqqB,IAAmBnmC,GAAQA,EAAKmnG,UAAY,eAAgBlhG,EAC5D,OAAOA,GAAE5F,MAAM,EAAG4F,EAAErC,GAGrB,QAAS6yG,IAAoBz2G,EAAM1D,GAClC,GAAI2J,KACJjG,GAAKic,WAAW,EAChBhW,GAAEywG,OAAS12G,EAAKic,WAAW,EAC3Bjc,GAAK4D,GAAKtH,EAAS,CACnB,OAAO2J,GAIR,QAAS0wG,IAAc32G,EAAM1D,EAAQmT,GACpC,GAAIyd,GAAMltB,EAAK4D,EAAItH,CACnB0D,GAAK4D,GAAK,CACV5D,GAAK4D,GAAK,CACV,IAAI8rD,GAAO1vD,EAAKic,WAAW,EAC3B,IAAI2C,GAAO0nB,GAAuBtmC,EAClC,IAAIo+D,GAAUqwB,GAA4BzuF,EAAM,EAAGyP,EACnD,IAAI0gD,GAAU/pB,GAA2BpmC,EAOzCA,GAAK4D,EAAIspB,CACT,IAAIhtB,IAAQmvD,KAAKzwC,EAAMg4F,IAAIx4C,EAC3B,IAAG1O,EAAO,UAAWxvD,EAAI2oG,MAAQn5C,CACjC,IAAGS,EAASjwD,EAAI20G,QAAU1kD,CAC1B,OAAOjwD,GAIR,QAAS22G,IAAa72G,EAAMyP,GAC3B,GAAIm3C,IAAO3K,cAAe03D,WAAYE,UAAWlwE,UAAWiwE,UAAWr/D,MAAO,GAC9E,IAAIjzB,KACJ,IAAI8pD,GAAO,KAEX,KAAI37D,EAAMA,IACVA,GAAKiyB,KAAO,EAEZ,IAAIknE,KACJ,IAAI3c,OACJA,GAASvoD,aACTuoD,GAASC,MAET3rD,IAAe,KAAYrhC,EAAE,gBAAiB6B,EAAE01G,GAEhDv2E,IAAalgC,EAAM,QAAS82G,GAAUvkG,EAAK6I,EAAGklB,GAC7C,OAAOA,GACN,IAAK,KACJ2rD,EAASvoD,WAAW7/B,KAAK0O,EAAIqM,KAC7BgoC,GAAGjjB,OAAO9/B,KAAK0O,EAAM,OAEtB,IAAK,KACJq0C,EAAG+sD,QAAUphG,CAAK,OAEnB,IAAK,IACJ,GAAGA,EAAIs2F,OAAS,KAAMp5F,EAAK08E,IAAM55E,EAAIs2F,KACrCt2F,GAAIu2F,IAAMxc,GAAkB/5E,EAAIqkG,IAAK,KAAM,KAAM3qB,EAAUx8E,SACpDA,GAAK08E,UACL55E,GAAIqkG,GACXhO,GAAM/kG,KAAK0O,EACX,OACD,IAAK,MAA2B,MAEhC,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,KACJ,IAAI05E,EAAS,GAAG3vF,OAAQ2vF,EAAS,IAAM3rD,EAAI/tB,OACtC05E,GAASpoF,MAAMy8B,EAAI/tB,GACxB05E,GAASA,EAAS3vF,OAAS,GAAG4vF,MAC9B,OACD,IAAK,KACJ,GAAGD,EAAS3vF,SAAW,EAAG,CAAE2vF,EAAS,KAASA,GAAS,GAAGC,OAC1DD,EAASA,EAAS3vF,OAAS,GAAG4vF,IAAMD,EAASA,EAAS3vF,OAAS,GAAG4vF,IAAIhkF,OAAOqK,EAC7E05E,GAASC,IAAMD,EAASC,IAAIhkF,OAAOqK,EACnC,OACD,IAAK,KACJ,MAED,IAAK,OACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,KACJ,MAGD,IAAK,OACL,IAAK,OACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,OACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK,OACL,IAAK,OACL,IAAK,OACL,IAAK,MACL,IAAK,MACL,IAAK,OACL,IAAK,MACL,IAAK;AACJ,MAED,IAAK,IACJ+O,EAAMzd,KAAKy8B,EAAK8qC,GAAO,IAAM,OAC9B,IAAK,IACJ9pD,EAAMkB,KAAO4oD,GAAO,KAAO,OAC5B,IAAK,IACJ9pD,EAAMzd,KAAKy8B,EAAK8qC,GAAO,IAAM,OAC9B,IAAK,IACJ9pD,EAAMkB,KAAO4oD,GAAO,KAAO,OAE5B,IAAK,IAA8B,MAEnC,QACC,GAAGhwD,EAAErL,EAAE,MACF,KAAIq7D,GAAS37D,EAAKorB,KAAOvZ,EAAMA,EAAMhlB,OAAO,IAAM,IAA2BglB,EAAMA,EAAMhlB,OAAO,IAAM,GAA2B,KAAM,IAAIa,OAAM,uBAAyBmjC,EAAGhgC,SAAS,QAE3LmP,EAEHikG,IAAkB9sD,EAGlBA,GAAGgiD,MAAQA,CAEX,GAAK3c,SAAWA,CAChB,OAAOrlC,GAGR,QAASmwD,IAAgB11E,EAAIulB,GAC5BxlB,GAAaC,EAAI,IACjB,KAAI,GAAIluB,GAAM,EAAGA,GAAOyzC,EAAGljB,WAAWpnC,SAAU6W,EAAK,CACpD,GAAI6jG,GAAMpwD,EAAG4gD,UAAY5gD,EAAG4gD,SAAS7jE,QAAUijB,EAAG4gD,SAAS7jE,OAAOxwB,IAAQyzC,EAAG4gD,SAAS7jE,OAAOxwB,GAAKyhG,QAAU,CAC5G,IAAI14G,IAAM04G,OAAQoC,EAAK5B,OAAQjiG,EAAI,EAAGkiG,SAAU,OAASliG,EAAI,GAAIyL,KAAMgoC,EAAGljB,WAAWvwB,GACrFiuB,IAAaC,EAAI,IAA0Bi0E,GAAkBp5G,IAE9DklC,GAAaC,EAAI,KAIlB,QAAS41E,IAAqBj3G,EAAMiG,GACnC,IAAIA,EAAGA,EAAIoa,GAAQ,IACnB,KAAI,GAAIhkB,GAAI,EAAGA,GAAK,IAAKA,EAAG4J,EAAE6V,YAAY,EAAG,EAC7CkpB,IAAmB,UAAW/+B,EAC9B++B,IAAmBhhC,EAAK/H,QAASgK,EACjC++B,IAAmBhhC,EAAK/H,QAASgK,EACjC++B,IAAmB,OAAQ/+B,EAC3B,OAAOA,GAAE3J,OAAS2J,EAAErC,EAAIqC,EAAE5F,MAAM,EAAG4F,EAAErC,GAAKqC,EAI3C,QAASixG,IAAkB/jG,EAAKlN,GAC/B,IAAIA,EAAGA,EAAIoa,GAAQ,GACnBpa,GAAE6V,aAAa,EAAG,EAClB7V,GAAE6V,aAAa,EAAG,IAClB7V,GAAE6V,YAAY,EAAI,MAClB7V,GAAE6V,YAAY,EAAI,MAClB7V,GAAE6V,YAAY,EAAI,IAClB7V,GAAE6V,YAAY,EAAI3I,EAClBlN,GAAE6V,YAAY,EAAI3I,EAClB,IAAIwJ,GAAQ,GACZ1W,GAAE6V,YAAY,EAAIa,EAClB,OAAO1W,GAAE3J,OAAS2J,EAAErC,EAAIqC,EAAE5F,MAAM,EAAG4F,EAAErC,GAAKqC,EAG3C,QAASkxG,IAAgB91E,EAAIulB,GAE5B,IAAIA,EAAG4gD,WAAa5gD,EAAG4gD,SAAS7jE,OAAQ,MACxC,IAAIF,GAASmjB,EAAG4gD,SAAS7jE,MACzB,IAAItnC,GAAI,EAAG+6G,GAAU,EAAG7vD,GAAU,CAClC,MAAMlrD,EAAIonC,EAAOnnC,SAAUD,EAAG,CAC7B,IAAIonC,EAAOpnC,KAAOonC,EAAOpnC,GAAGu4G,QAAUwC,IAAW,EAAGA,EAAS/6G,MACxD,IAAGonC,EAAOpnC,GAAGu4G,QAAU,GAAKrtD,IAAW,EAAGA,EAASlrD,EAEzD,GAAGkrD,EAAS6vD,EAAQ,MACpBh2E,IAAaC,EAAI,IACjBD,IAAaC,EAAI,IAA0B61E,GAAkBE,GAE7Dh2E,IAAaC,EAAI,KAwBlB,QAASg2E,IAAazwD,EAAIn3C,GACzB,GAAI4xB,GAAKb,IACTY,IAAaC,EAAI,IACjBD,IAAaC,EAAI,IAA6B41E,KAE9C71E,IAAaC,EAAI,IAAwBm1E,GAAgB5vD,EAAG4gD,UAAY5gD,EAAG4gD,SAASmM,SAAW,MAG/FwD,IAAgB91E,EAAIulB,EAAIn3C,EACxBsnG,IAAgB11E,EAAIulB,EAAIn3C,EAexB2xB,IAAaC,EAAI,IAEjB,OAAOA,GAAGnU,MAEX,QAASoqF,IAASt3G,EAAM4e,EAAMnP,GAC7B,GAAGmP,EAAKve,OAAO,KAAK,OAAQ,MAAOw2G,IAAa,EAAQpnG,EACxD,OAAO+kG,IAAa,EAAQ/kG,GAG7B,QAAS8nG,IAASv3G,EAAM4e,EAAMzL,EAAK1D,EAAMkkC,EAAMiT,EAAI3S,EAAQR,GAC1D,GAAG70B,EAAKve,OAAO,KAAK,OAAQ,MAAO4wG,IAAa,EAAQxhG,EAAM0D,EAAKwgC,EAAMiT,EAAI3S,EAAQR,EACrF,OAAOsyD,IAAa,EAAQt2F,EAAM0D,EAAKwgC,EAAMiT,EAAI3S,EAAQR,GAG1D,QAAS+jE,IAASx3G,EAAM4e,EAAMzL,EAAK1D,EAAMkkC,EAAMiT,EAAI3S,EAAQR,GAC1D,GAAG70B,EAAKve,OAAO,KAAK,OAAQ,MAAO4yG,IAAa,EAAQxjG,EAAM0D,EAAKwgC,EAAMiT,EAAI3S,EAAQR,EACrF,OAAOm/D,IAAa,EAAQnjG,EAAM0D,EAAKwgC,EAAMiT,EAAI3S,EAAQR,GAG1D,QAASgkE,IAASz3G,EAAM4e,EAAMzL,EAAK1D,EAAMkkC,EAAMiT,EAAI3S,EAAQR,GAC1D,GAAG70B,EAAKve,OAAO,KAAK,OAAQ,MAAOwjF,IAAa,EAAQp0E,EAAM0D,EAAKwgC,EAAMiT,EAAI3S,EAAQR,EACrF,OAAOqwC,IAAa,EAAQr0E,EAAM0D,EAAKwgC,EAAMiT,EAAI3S,EAAQR,GAG1D,QAASikE,IAAS13G,EAAM4e,EAAMzL,EAAK1D,EAAMkkC,EAAMiT,EAAI3S,EAAQR,GAC1D,GAAG70B,EAAKve,OAAO,KAAK,OAAQ,MAAOqjF,IAAa,EAAQj0E,EAAM0D,EAAKwgC,EAAMiT,EAAI3S,EAAQR,EACrF,OAAOmwC,IAAa,EAAQn0E,EAAM0D,EAAKwgC,EAAMiT,EAAI3S,EAAQR,GAG1D,QAASkkE,IAAU33G,EAAM4e,EAAMq1B,EAAQxkC,GACtC,GAAGmP,EAAKve,OAAO,KAAK,OAAQ,MAAOw6E,IAAc,EAAQ5mC,EAAQxkC,EACjE,OAAOgpE,IAAc,EAAQxkC,EAAQxkC,GAGtC,QAASmoG,IAAY53G,EAAM4e,EAAMnP,GAChC,MAAO8sE,IAAgBv8E,EAAMyP,GAG9B,QAASooG,IAAU73G,EAAM4e,EAAMnP,GAC9B,GAAGmP,EAAKve,OAAO,KAAK,OAAQ,MAAOotE,IAAc,EAAQh+D,EACzD,OAAOw9D,IAAc,EAAQx9D,GAG9B,QAASqoG,IAAW93G,EAAM4e,EAAMnP,GAC/B,GAAGmP,EAAKve,OAAO,KAAK,OAAQ,MAAO4iF,IAAmB,EAAQxzE,EAC9D,OAAOuxE,IAAmB,EAAQvxE,GAGnC,QAASsoG,IAAS/3G,EAAM4e,EAAMnP,GAC7B,GAAGmP,EAAKve,OAAO,KAAK,OAAQ,MAAO0+E,IAAa,EAAQngE,EAAMnP,EAC9D,OAAOovE,IAAa,EAAQjgE,EAAMnP,GAGnC,QAASuoG,IAAYh4G,EAAMq3C,EAAKz4B,EAAMnP,GACrC,GAAGmP,EAAKve,OAAO,KAAK,OAAQ,MAAO6+E,IAAgB,EAAQ7nC,EAAKz4B,EAAMnP,EACtE,OAAOwvE,IAAgB,EAAQ5nC,EAAKz4B,EAAMnP,GAG3C,QAASwoG,IAAaj4G,EAAM4e,EAAMnP,GACjC,GAAGmP,EAAKve,OAAO,KAAK,OAAQ,MAAO+9E,IAAiB,EAAQx/D,EAAMnP,EAClE,OAAOgvE,IAAiB,EAAQ7/D,EAAMnP,GAGvC,QAASyoG,IAAStxD,EAAIhoC,EAAMnP,GAC3B,OAAQmP,EAAKve,OAAO,KAAK,OAASg3G,GAAetC,IAAcnuD,EAAIn3C,GAGpE,QAAS0oG,IAASn4G,EAAM4e,EAAMnP,EAAMm3C,EAAIjT,GACvC,OAAQ/0B,EAAKve,OAAO,KAAK,OAASiyG,GAAezG,IAAc7rG,EAAMyP,EAAMm3C,EAAIjT,GAIhF,QAASykE,IAASp4G,EAAM4e,EAAMnP,EAAMm3C,EAAIjT,GACvC,OAAQ/0B,EAAKve,OAAO,KAAK,OAAS8yG,GAAeJ,IAAc/yG,EAAMyP,EAAMm3C,EAAIjT,GAGhF,QAAS0kE,IAAUr4G,EAAM4e,EAAMnP,GAC9B,OAAQmP,EAAKve,OAAO,KAAK,OAASu7E,GAAgB5C,IAAeh5E,EAAMyP,GAGxE,QAAS6oG,IAAUt4G,EAAM4e,EAAMnP,GAC9B,OAAQmP,EAAKve,OAAO,KAAK,OAASwtE,GAAgBR,IAAertE,EAAMyP,GAGxE,QAAS8oG,IAAWv4G,EAAM4e,EAAMnP,GAC/B,OAAQmP,EAAKve,OAAO,KAAK,OAAS8iF,GAAqB5B,IAAoBvhF,EAAMyP,GAQlF,QAAS+oG,IAAa55F,GACrB,OAAQA,EAAKve,OAAO,KAAK,OAASm+E,GAAmBI,MAEtD,GAAI65B,IAAW,iDACf,IAAIC,IAAU,oDACd,SAASC,IAAiB9gF,EAAKC,GAC9B,GAAI8gF,GAAQ/gF,EAAIj7B,MAAM,MACtB,IAAIo7B,KAAU,KAAIF,EAAWE,EAAE,GAAK4gF,EAAM,EAC1C,IAAGA,EAAMt8G,SAAW,EAAG,MAAO07B,EAC9B,IAAI9nB,GAAI2nB,EAAI30B,MAAMu1G,IAAaxoG,EAAGtT,EAAGwD,EAAG9D,CACxC,IAAG6T,EAAG,IAAI7T,EAAI,EAAGA,GAAK6T,EAAE5T,SAAUD,EAAG,CACpC4T,EAAIC,EAAE7T,GAAG6G,MAAMw1G,GACjB,KAAI/7G,EAAEsT,EAAE,GAAGrN,QAAQ,SAAW,EAAGo1B,EAAE/nB,EAAE,IAAMA,EAAE,GAAG5P,MAAM,EAAE4P,EAAE,GAAG3T,OAAO,OAC7D,CACJ,GAAG2T,EAAE,GAAG5P,MAAM,EAAE,KAAO,SAAUF,EAAI,QAAQ8P,EAAE,GAAG5P,MAAM,OACnDF,GAAI8P,EAAE,GAAG5P,MAAM1D,EAAE,EACtBq7B,GAAE73B,GAAK8P,EAAE,GAAG5P,MAAM,EAAE4P,EAAE,GAAG3T,OAAO,IAGlC,MAAO07B,GAER,QAAS6gF,IAAoBhhF,GAC5B,GAAI+gF,GAAQ/gF,EAAIj7B,MAAM,MACtB,IAAIo7B,KACJ,IAAG4gF,EAAMt8G,SAAW,EAAG,MAAO07B,EAC9B,IAAI9nB,GAAI2nB,EAAI30B,MAAMu1G,IAAaxoG,EAAGtT,EAAGwD,EAAG9D,CACxC,IAAG6T,EAAG,IAAI7T,EAAI,EAAGA,GAAK6T,EAAE5T,SAAUD,EAAG,CACpC4T,EAAIC,EAAE7T,GAAG6G,MAAMw1G,GACjB,KAAI/7G,EAAEsT,EAAE,GAAGrN,QAAQ,SAAW,EAAGo1B,EAAE/nB,EAAE,IAAMA,EAAE,GAAG5P,MAAM,EAAE4P,EAAE,GAAG3T,OAAO,OAC7D,CACJ,GAAG2T,EAAE,GAAG5P,MAAM,EAAE,KAAO,SAAUF,EAAI,QAAQ8P,EAAE,GAAG5P,MAAM,OACnDF,GAAI8P,EAAE,GAAG5P,MAAM1D,EAAE,EACtBq7B,GAAE73B,GAAK8P,EAAE,GAAG5P,MAAM,EAAE4P,EAAE,GAAG3T,OAAO,IAGlC,MAAO07B,GAMR,GAAI8gF,GAEJ,SAASC,IAAY7gG,EAAQwhB,GAC5B,GAAIpnB,GAAMwmG,GAAc5gG,IAAWygB,GAAYzgB,EAC/C,IAAG5F,IAAQ,UAAW,MAAOJ,IAAYwnB,EACzC,OAAOvnB,IAAWG,EAAKonB,GAGxB,QAASs/E,IAAkBv8D,EAAW9qB,EAAK7xB,EAAIyS,GAC9C,GAAI0mG,GAAO1mG,CACX,SAAQzS,EAAG,GAAGoD,MAAM,sBAAsB,GAAG,KAAK,IACjD,IAAK,UAAW+1G,EAAOx/E,GAAalnB,EAAM,OAC1C,IAAK,MAAM,IAAK,MAAO0mG,EAAOhlG,SAAS1B,EAAK,GAAK,OACjD,IAAK,MAAM,IAAK,QAAS0mG,EAAO3hG,WAAW/E,EAAM,OACjD,IAAK,QAAQ,IAAK,cAAe0mG,EAAOrmF,GAAUrgB,EAAM,OACxD,IAAK,MAAM,IAAK,UAAU,IAAK,SAAS,IAAK,QAAQ,IAAK,aAAc,MACxE,QAAS,KAAM,IAAIpV,OAAM,gBAAkB2C,EAAG,KAE/C28C,EAAU9jB,GAAYhH,IAAQsnF,EAG/B,QAASC,IAAiB33E,EAAMixE,EAAIvsG,GACnC,GAAGs7B,EAAKv4B,IAAM,IAAK,MACnB,KAAI/C,GAAKA,EAAE67D,WAAa,MAAO,IAC9B,GAAGvgC,EAAKv4B,IAAM,IAAK,CAAEu4B,EAAKphC,EAAIohC,EAAKphC,GAAKmjC,GAAK/B,EAAKx4B,OAC7C,IAAGypG,IAAO,UAAW,CACzB,GAAGjxE,EAAKv4B,IAAM,IAAK,CAClB,IAAIu4B,EAAKx4B,EAAE,KAAOw4B,EAAKx4B,EAAGw4B,EAAKphC,EAAIohC,EAAKx4B,EAAEzI,SAAS,QAC9CihC,GAAKphC,EAAIyR,GAAgB2vB,EAAKx4B,OAE/Bw4B,GAAKphC,EAAI+R,GAAYqvB,EAAKx4B,OAE3Bw4B,GAAKphC,EAAI44G,GAAYvG,GAAI,UAAWjxE,EAAKx4B,GAC7C,MAAM3M,GAAK,GAAG6J,EAAE40B,IAAK,KAAMz+B,GAC7B,IACC,GAAI47B,GAAI8gF,GAActG,IAAKA,GAAI,SAC/B,IAAGvsG,EAAE87D,OAAQxgC,EAAKvJ,EAAIA,CACtB,IAAG/xB,EAAEw+B,WAAalD,EAAKv4B,GAAK,KAAOmN,GAAY6hB,GAAI,CAClD,GAAIw5E,GAAKhiG,EAAoB+xB,EAAKx4B,EAAI,IAAGyoG,EAAI,CAAEjwE,EAAKv4B,EAAI,GAAKu4B,GAAKx4B,EAAI,GAAIwH,MAAKihG,EAAGvhG,EAAGuhG,EAAGthG,EAAE,EAAEshG,EAAGt1G,EAAEs1G,EAAGrhG,EAAEqhG,EAAG9uG,EAAE8uG,EAAGphG,EAAEohG,EAAGxhG,KAEnH,MAAM5T,GAAK,GAAG6J,EAAE40B,IAAK,KAAMz+B,IAG9B,QAAS+8G,IAAmB1lE,EAAQ2lE,EAAM3pG,GACzC,GAAGA,EAAKs8C,WAAY,CACnB,GAAGqtD,EAAKC,SAAU,CACjB,GAAIC,GAAIF,EAAKC,QACb,IAAGC,EAAEC,QAASD,EAAExtD,YAAcupB,GAAmBikC,EAAEC,UAAYD,EAAEC,SAGnE9lE,EAAO2lE,EAAK33B,IAAM23B,EAInB,QAASI,IAAgBrtF,EAAK1Z,EAAIzS,EAAMuhC,EAAMptB,EAAMs/B,EAAQgmE,EAAM5rF,EAAK2/D,EAAQvnF,GAC9E,GAAIusG,GAAK,UAAWkH,EAAMn4E,EAAKo4E,QAASvpG,IAAQnK,GAAIA,KACpD,IAAI2zG,KACJ,IAAIv9G,GAAI,CACR,IAAGq9G,IAAQr1G,WAAawpB,EAAK6rF,EAAM7rF,EAAI8rF,OACvC,IAAGD,IAAQr1G,WAAao1G,EAAMC,EAAMD,EAAKE,OACzC,OAAMlmE,EAAOimE,KAASr1G,UAAW,CAChC,GAAGovC,EAAOimE,GAAKlH,GAAIA,EAAK/+D,EAAOimE,GAAKlH,EACpC,IAAG/+D,EAAOimE,GAAKL,SAAUO,EAAU/1G,KAAK4vC,EAAOimE,GAAKL,SACpD,KAAI5lE,EAAOimE,GAAKG,OAAQ,KACxBH,GAAMjmE,EAAOimE,GAAKG,OAEnB,OAAO75G,EAAKs3C,MACX,IAAK,UACJ/V,EAAKv4B,EAAI,GACTu4B,GAAKx4B,EAAI0wB,GAAatN,EACtB,OACD,IAAK,SACJoV,EAAKv4B,EAAI,GAAKu4B,GAAK1tB,EAAIwlB,GAAYV,GAAYxM,GAC/CoV,GAAKx4B,EAAKojB,EAAIvpB,QAAQ,MAAQ,EAAI+1B,GAAYlmB,GAAI0Z,GAAKjlB,QAAQ,SAAU,IAAMq6B,EAAK1tB,CACpF,OACD,IAAK,WACJ,GAAGsY,EAAI9rB,OAAO,IAAM,IAAK8rB,GAAO,GAChCoV,GAAKx4B,GAAK6pB,GAAUzG,GAAO,GAAI5b,MAAKA,KAAKupG,IAAI,KAAM,GAAI,OAAS,GAAK,GAAK,GAAK,IAC/E,IAAGv4E,EAAKx4B,IAAMw4B,EAAKx4B,EAAGw4B,EAAKx4B,EAAI4vB,GAAYxM,OACtC,IAAGoV,EAAKx4B,EAAE,GAAIw4B,EAAKx4B,EAAIw4B,EAAKx4B,EAAG,CACpC,KAAIypG,GAAMA,GAAM,UAAWA,EAAK,aAEjC,IAAK,SACJ,GAAGjxE,EAAKx4B,IAAM1E,UAAWk9B,EAAKx4B,GAAGojB,CACjC,KAAIoV,EAAKv4B,EAAGu4B,EAAKv4B,EAAI,GACrB,OACD,IAAK,QAASu4B,EAAKv4B,EAAI,GAAKu4B,GAAKx4B,EAAI0jC,GAAMtgB,EAAM,IAAGlmB,EAAE67D,WAAa,MAAOvgC,EAAKphC,EAAIgsB,CAAK,OACxF,QACC,GAAGA,GAAO,IAAM1Z,GAAM,GAAI,CAAE8uB,EAAKv4B,EAAI,QAChC,CAAEu4B,EAAKv4B,EAAI,GAAKu4B,GAAKx4B,EAAIswB,GAAY5mB,GAAI0Z,GAC9C,OAEF+sF,GAAiB33E,EAAMixE,EAAIvsG,EAC3B,IAAGA,EAAEklG,cAAgB,MAAO,CAC3B,GAAG5pE,EAAKw4E,QAAS,CAChB,GAAI71B,GAAOvrD,GAAY4I,EAAKw4E,QAE5B,IAAG71B,EAAK3nF,WAAW,IAAM,GAAY2nF,EAAOA,EAAK7jF,MAAM,EACvDkhC,GAAKxgC,EAAIs9D,GAAS6lB,EAAM/vE,SACjBotB,GAAKw4E,OACZ,IAAGx4E,EAAKy4E,YAAc,KAAMz4E,EAAKv+B,EAAIq7D,GAAS,QAASlqD,OAClD,IAAGotB,EAAKy4E,WAAY,CACxBz4E,EAAKv+B,EAAIq7D,GAAS98B,EAAKy4E,WAAY7lG,EACnCq5E,GAAO3pF,MAAMo/B,GAAkB1B,EAAKv+B,GAAIu+B,EAAKv+B,SAExC,CACN,IAAI3G,EAAI,EAAGA,EAAImxF,EAAOlxF,SAAUD,EAC/B,GAAG8X,EAAKN,GAAK25E,EAAOnxF,GAAG,GAAGuF,EAAEiS,GAAKM,EAAKN,GAAK25E,EAAOnxF,GAAG,GAAGD,EAAEyX,EACzD,GAAGM,EAAKxT,GAAK6sF,EAAOnxF,GAAG,GAAGuF,EAAEjB,GAAKwT,EAAKxT,GAAK6sF,EAAOnxF,GAAG,GAAGD,EAAEuE,EACzD4gC,EAAKv+B,EAAIwqF,EAAOnxF,GAAG,IAGxB,GAAG4J,EAAE8lD,WAAY,CAChB6tD,EAAU53G,QAAQ,SAAS1D,GAC1B,IAAI8R,EAAE07C,aAAextD,EAAEwtD,YAAa17C,EAAE07C,YAAcxtD,EAAEwtD,aAEvDvqB,GAAK3/B,EAAIwO,EAEV,GAAGmxB,EAAKo4E,UAAYt1G,UAAWk9B,EAAKkjB,KAAOljB,EAAKo4E,QAGjD,QAASM,IAAmB9pD,GAC3BA,EAAQnnD,EAAImnD,EAAQpnD,GAAK,EACzBonD,GAAQnnD,EAAImnD,EAAQnnD,EAAE9B,QAAQ,QAAQ,MAAMA,QAAQ,MAAM,KAC1DipD,GAAQpnD,EAAIonD,EAAQhwD,EAAIgwD,EAAQ1L,KAAOpgD,UAIxC,QAAS61G,IAAeh+G,EAAG8mB,GAC1B,GAAIvT,GAAOuT,KACXhL,KACA,IAAIrD,GAAMvO,EAAMk1B,GAAep/B,GAC/B,IAAGuT,EAAK4C,MAAQ,UAAY5C,EAAK4C,MAAQ,SAAW5C,EAAK4C,MAAQ,SAAU,CAC1E,SAAUjO,KAAa,YAAauQ,EAAMvQ,EAASL,MAAMhB,OAAO,MAAOiD,EAAW2O,QAC7EA,GAAMqlB,GAASrlB,GAErB,GAAIwlG,GAAUxlG,EAAItU,MAAM,EAAG,MAAMoW,cAAe2jG,EAAS,KACzDD,GAAUA,EAAQjzG,QAAQ,SAAU,GACpC,KAAIizG,EAAQv3G,QAAQ,KAAO,MAAQyG,KAAKkM,IAAK4kG,EAAQv3G,QAAQ,KAAO,KAAQu3G,EAAQv3G,QAAQ,KAAK,MAAQ,CAAE,GAAIy3G,GAAKxlF,GAAIplB,EAAO4qG,GAAGhoG,KAAO,QAAU,OAAO0uD,IAAIvI,YAAY7jD,EAAK0lG,GAC/K,GAAGF,EAAQv3G,QAAQ,WAAa,GAAI,OAAQ,QAAS,OAAQ,OAAQ,SAAU,QAAS,OAAOZ,QAAQ,SAAS61B,GAAO,GAAGsiF,EAAQv3G,QAAQ,IAAMi1B,IAAQ,EAAGuiF,EAAS,MACpK,IAAGA,EAAQ,MAAOE,IAAiB3lG,EAAKlF,EAExCqpG,KACCyB,iBAAkB,UAClBC,eAAgBzwG,EAAU,IAC1B0wG,YAAa,sBACbC,cAAe3wG,EAAU,IACzB4wG,aAAc5wG,EAAU,IACxB6wG,YAAa7wG,EAAU,IACvB8wG,cAAe9wG,EAAU,IACzB+wG,aAAc/wG,EAAU,IACxBgxG,SAAY,uCACZC,MAASjxG,EAAU,GACnBkxG,SAAYlxG,EAAU,GACtBmxG,QAAWnxG,EAAU,IACrBoxG,WAAcpxG,EAAU,IACxBqxG,SAAU,qBACVC,aAAc,0BACdC,SAAU,qBAIX,IAAInjE,EACJ,IAAI72B,MAAY6L,CAChB,IAAGxmB,GAAS,MAAQ8I,EAAKq0B,OAAS,KAAMr0B,EAAKq0B,MAAQn9B,CACrD,IAAI88B,MAAa83E,KAAiBC,EAAY/rG,EAAKq0B,YAAkB23E,EAAY,EACjF,IAAIl6E,MAAa1T,IACjB,IAAI6tF,GAAO/C,GAAiB,2BAA4BgD,EAAO,CAC/D,IAAIh7G,GAAI,EAAGkT,EAAI,CACf,IAAIqvD,IAAYthE,GAAIiS,EAAE,IAASlT,EAAE,KAAUvE,GAAIyX,EAAE,EAAGlT,EAAE,GACtD,IAAI8yC,MAAa2lE,IACjB,IAAI3mG,GAAK,GAAImpG,EAAO,CACpB,IAAIzqD,KACJ,IAAI7X,MAAYmD,KAAgBo/D,EAAO,EAAG/7G,IAC1C,IAAIszC,MAAe+c,IACnB,IAAI2rD,MAAYrC,EAAMnR,EAAU,KAChC,IAAI9a,KACJ,IAAI9vB,MAAcgtC,KAAa91F,EAAK,EAAGV,EAAK,CAC5C,IAAIszF,IAAc7jE,UAAWgwE,SAASrjG,SAAS,QAAWyrG,IAC1DxgF,IAAU+3C,UAAY,CACtB3+D,GAAMA,EAAIzN,QAAQ,sBAAsB,GACxC,IAAI80G,GAAU,EACd,OAAO7jE,EAAK5c,GAAU8c,KAAK1jC,GAAO,OAAQwjC,EAAG,IAAM6jE,EAAU7jE,EAAG,IAAI1hC,eACnE,IAAK,OACJ,GAAGulG,GAAW,OAAQ,CACrB,GAAG7jE,EAAG,KAAK,IAAI,CAAC,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,IAAIh7C,OAAM,cAAcgwB,EAAIrqB,KAAK,UACnF,IAAGq1C,EAAG,GAAG37C,OAAO27C,EAAG,GAAG77C,OAAO,KAAO,IAAKglB,EAAMzd,MAAMs0C,EAAG,GAAI,MACjE,OAED,GAAG72B,EAAMA,EAAMhlB,OAAO,GAAG,GAAI,KAC7B,IAAG67C,EAAG,KAAK,IAAKqhE,GAAgB7kG,EAAItU,MAAMs7G,EAAMxjE,EAAG5Q,OAAQ90B,EAAIipG,EAAMp6F,EAAMA,EAAMhlB,OAAO,GAAG,IAAiB,UAAU6zD,EAAQ5uB,GAAO5gC,EAAEA,EAAEkT,EAAEA,GAAI4/B,EAAQqoE,EAAMn7G,GAAIktB,EAAK2/D,EAAQ/9E,OACzK,CAAEgD,EAAK,EAAIipG,GAAO/C,GAAiBxgE,EAAG,GAAKwjE,GAAOxjE,EAAG5Q,MAAQ4Q,EAAG,GAAG77C,OACxE,MACD,IAAK,OACJ,GAAG67C,EAAG,KAAK,IAAI,CACd,GAAG/E,EAAS92C,OAAS,EAAGilC,EAAK5gC,EAAIyyC,CACjC,MAAK3jC,EAAKunD,WAAavnD,EAAKunD,UAAYnjD,IAAM0tB,EAAKx4B,IAAM1E,UAAW,CACnE,GAAGoL,EAAKq0B,MAAO,CACd,IAAI03E,EAAS3nG,GAAI2nG,EAAS3nG,KAC1B2nG,GAAS3nG,GAAGlT,GAAK4gC,MACXi6E,GAASt5E,GAAWvhC,GAAKwhC,GAAWtuB,IAAM0tB,EAElD,GAAGA,EAAK06E,KAAM,CACb16E,EAAK39B,GAAM2zC,OAAO5e,GAAY4I,EAAK06E,MACnC,IAAG16E,EAAK26E,cAAe36E,EAAK39B,EAAEogD,QAAUziB,EAAK26E,oBACtC36E,GAAK06E,WAAa16E,GAAK26E,cAE/B,GAAG36E,EAAK46E,aAAe56E,EAAK66E,UAAW,CACtCxnG,EAAKjU,GAAKsT,SAASstB,EAAK46E,YAAY,IAAI,EACxCjoG,GAAKL,GAAKI,SAASstB,EAAK66E,UAAU,IAAI,EACtCjrD,GAAOttD,MAAMjC,GAAGjB,EAAEA,EAAEkT,EAAEA,GAAGzX,GAAGuE,EAAEiU,EAAGf,EAAEK,KAEpC,IAAIzE,EAAK+0B,WAAY,CAAE,GAAGjD,EAAK46E,YAAax7G,EAAIiU,EAAK,QAAUjU,MAC1D,IAAG4gC,EAAK46E,aAAe56E,EAAK66E,UAAW,CAChD,IAAI,GAAIC,GAAM17G,EAAG07G,GAAOznG,IAAMynG,EAAK,CAC7B,IAAI,GAAIC,GAAMzoG,EAAGyoG,GAAOpoG,IAAMooG,EAAK,CAClC,GAAGD,EAAM17G,GAAK27G,EAAMzoG,EAAG,CACtB,GAAGpE,EAAKq0B,MAAO,CACd,IAAI03E,EAASc,GAAMd,EAASc,KAC5Bd,GAASc,GAAKD,IAAQrzG,EAAE,SAClBwyG,GAASt5E,GAAWm6E,GAAOl6E,GAAWm6E,KAAStzG,EAAE,OAI3DrI,EAAIiU,EAAK,QAEHjU,MACD,CACN4gC,EAAOs3E,GAAoB1gE,EAAG,GAC9B,IAAG5W,EAAKwwC,MAAOpxE,GAAK4gC,EAAKwwC,MAAQ,CACjC,IAAGpxE,EAAIuiE,EAASthE,EAAEjB,EAAGuiE,EAASthE,EAAEjB,EAAIA,CACpC,IAAGA,EAAIuiE,EAAS9mE,EAAEuE,EAAGuiE,EAAS9mE,EAAEuE,EAAIA,CACpC,IAAGw3C,EAAG,GAAG93C,OAAO,KAAO,OAAQM,CAC/ByyC,MAED,MACD,IAAK,MACJ,GAAG+E,EAAG,KAAK,KAAOA,EAAG,GAAG93C,OAAO,KAAO,KAAM,CAC3C,GAAGwT,EAAIqvD,EAASthE,EAAEiS,EAAGqvD,EAASthE,EAAEiS,EAAIA,CACpC,IAAGA,EAAIqvD,EAAS9mE,EAAEyX,EAAGqvD,EAAS9mE,EAAEyX,EAAIA,CACpC,IAAGskC,EAAG,GAAG93C,OAAO,KAAO,KAAM,CAC5BwtB,EAAM8qF,GAAiBxgE,EAAG,GAC1B,IAAGtqB,EAAIkkD,MAAOl+D,GAAKga,EAAIkkD,MAAQ,EAEhCpxE,EAAI,IAAKkT,MACH,CACNga,EAAM8qF,GAAiBxgE,EAAG,GAC1B,IAAGtqB,EAAIkkD,MAAOl+D,GAAKga,EAAIkkD,MAAQ,CAC/B24B,KACA,IAAG78E,EAAI0uF,eAAiB,KAAO1uF,EAAI2uF,OAAQ,CAC1C9R,EAAOhsC,IAAMzqD,SAAS4Z,EAAI2uF,OAAQ,GAAK9R,GAAOriD,IAAMmX,GAAMkrC,EAAOhsC,IACjEhB,GAAQ7pD,GAAK62F,EAEd,GAAG78E,EAAI+mF,QAAU,IAAK,CAAElK,EAAOnjD,OAAS,IAAMmW,GAAQ7pD,GAAK62F,GAE5D,MACD,IAAK,YACJ,GAAGvyD,EAAG,KAAK,IAAI,CACd,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,IAAIh7C,OAAM,cAAcgwB,EAAIrqB,KAAK,KACxEy4G,GAAW13G,KAAK43G,EAChB,IAAGv4C,EAASthE,EAAEiS,GAAKqvD,EAAS9mE,EAAEyX,GAAKqvD,EAASthE,EAAEjB,GAAKuiE,EAAS9mE,EAAEuE,EAAG,CAChE66G,EAAS,QAAU14E,GAAaogC,EAChC,IAAGzzD,EAAKunD,WAAavnD,EAAKunD,WAAakM,EAAS9mE,EAAEyX,EAAG,CACpD2nG,EAAS,YAAcA,EAAS,OAChCt4C,GAAS9mE,EAAEyX,EAAIpE,EAAKunD,UAAY,CAChCwkD,GAAS,QAAU14E,GAAaogC,IAGlC,GAAG/R,EAAO70D,OAAQk/G,EAAS,WAAarqD,CACxC,IAAG2qD,EAAMx/G,OAAS,EAAGk/G,EAAS,SAAWM,CACzC,IAAGp+C,EAAQphE,OAAS,EAAGk/G,EAAS,SAAW99C,CAC3Cj6B,GAAOg4E,GAAaD,MACd,CACNt4C,GAAYthE,GAAIiS,EAAE,IAASlT,EAAE,KAAUvE,GAAIyX,EAAE,EAAGlT,EAAE,GAClDkT,GAAIlT,EAAI,CACR2gB,GAAMzd,MAAMs0C,EAAG,GAAI,OACnBhrB,GAAMwrF,GAAiBxgE,EAAG,GAC1BsjE,GAAY9iF,GAAYxL,EAAIkiC,KAC5BmsD,GAAY/rG,EAAKq0B,WACjBqtB,KACAq8B,KACA9vB,KACAq+C,IAAWn9F,KAAK68F,EAAW7G,OAAO,EAClCpN,GAAS7jE,OAAO9/B,KAAKk4G,GAEtB,MACD,IAAK,QACJ,GAAG5jE,EAAG,KAAK,IAAI,CAAC,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,IAAIh7C,OAAM,cAAcgwB,EAAIrqB,KAAK,UACnF,IAAGq1C,EAAG,GAAG93C,OAAO,IAAM,KAAM,UAC5B,CACJihB,EAAMzd,MAAMs0C,EAAG,GAAI,OACnB2jE,KAAYxT,GAAU,MAEvB,MAED,IAAK,QACJ,GAAGnwD,EAAG,KAAK,IAAKghE,GAAmB1lE,EAAQ2lE,EAAM3pG,OAC5C2pG,GAAOT,GAAiBxgE,EAAG,GAChC,OAED,IAAK,eACJihE,EAAK5G,GAAK75E,GAAYggF,GAAiBxgE,EAAG,IAAIskE,QAAU,UACxD,IAAG3D,GAAcM,EAAK5G,IAAK4G,EAAK5G,GAAKsG,GAAcM,EAAK5G,GACxD,KAAI,GAAIkK,GAAS,EAAGA,GAAU,MAASA,EAAQ,GAAG3yG,EAAU2yG,IAAWtD,EAAK5G,GAAI,KAChF,IAAGkK,GAAU,IAAO,IAAIA,EAAS,GAAMA,GAAU,MAASA,EAAQ,GAAG3yG,EAAU2yG,IAAW,KAAM,CAAE7kG,GAASuhG,EAAK5G,GAAIkK,EAAS,OAC7H,MAED,IAAK,SACJ,GAAGp7F,EAAMA,EAAMhlB,OAAO,GAAG,KAAkB,QAAS,KACpDm9G,GAAOd,GAAiBxgE,EAAG,GAC3B,IAAGshE,EAAK7E,OAAQ,CAAE6E,EAAKlyD,OAAS,WAAakyD,GAAK7E,OAClD,GAAG6E,EAAKkD,MAAOlD,EAAKt6C,IAAMlrD,SAASwlG,EAAKkD,MAAO,GAC/C,KAAIrU,GAAWmR,EAAKt6C,IAAM,GAAI,CAC7BmpC,EAAU,IAAM/zB,IAAMH,EACtB,KAAI,GAAIwoC,GAAO,EAAGA,EAAOd,EAAMx/G,SAAUsgH,EAAM,GAAGd,EAAMc,GAAOn+C,GAAYq9C,EAAMc,IAElF,GAAGtU,EAAS7pC,GAAYg7C,EACxBqC,GAAOrC,EAAK1nC,MAAM,GAAG+pC,EAAMx/G,QAAWm9G,CACtC,KAAI,GAAIp9G,GAAI,EAAGA,GAAKo9G,EAAKoD,OAAQxgH,EAAGy/G,EAAMA,EAAMx/G,QAAUu4B,GAAI4kF,EAC9D,OAED,IAAK,aACJ,GAAGthE,EAAG,KAAK,IAAK,KAChB,KAAIqvD,EAASoB,MAAOpB,EAASoB,QAC7B,IAAIkU,GAAcllF,GAAYugB,EAAG,GACjC,IAAI4kE,KACH1tD,KAAMytD,EAAYztD,KAClBy5C,IAAKzqC,GAASy+C,EAAYE,SAAS38G,MAAM,IAAKwT,EAAE,EAAGlT,EAAE,IAEtD,IAAG6mG,EAAS7jE,OAAOrnC,OAAO,EAAGygH,GAAalU,MAAMrB,EAAS7jE,OAAOrnC,OAAO,CAC1EkrG,GAASoB,MAAM/kG,KAAKk5G,GACjB,OAED,IAAK,YAAkC,MACvC,IAAK,IAAkB,MACvB,IAAK,IAAkB,MACvB,IAAK,IAAkB,MACvB,IAAK,IAAkB,MACvB,IAAK,KAAoB,MACzB,IAAK,KAAoB,MACzB,IAAK,KAAoB,MACzB,IAAK,MAAsB,MAC3B,IAAK,MAAsB,MAC3B,IAAK,OAAwB,MAC7B,IAAK,YACJ,MACD,IAAK,UAA8B,MACnC,IAAK,SAA4B,MACjC,IAAK,OACJ,GAAG5kE,EAAG,GAAG93C,OAAO,KAAO,KAAM,UACxB,IAAG83C,EAAG,KAAK,IAAK1lC,GAAMkC,EAAItU,MAAMu7G,EAAMzjE,EAAG5Q,WACzCq0E,GAAOzjE,EAAG5Q,MAAQ4Q,EAAG,GAAG77C,MAC7B,OACD,IAAK,WACJ,IAAImT,EAAKs8C,WAAY,KACrBqtD,GAAKC,SAAWV,GAAiBxgE,EAAG,GACpC,OACD,IAAK,aAAoC,MAEzC,IAAK,UACL,IAAK,SACL,IAAK,eACL,IAAK,WACL,IAAK,YACL,IAAK,WACL,IAAK,YACL,IAAK,WACL,IAAK,cACL,IAAK,aACL,IAAK,eACL,IAAK,WACL,IAAK,YACL,IAAK,aACL,IAAK,iBACL,IAAK,WACL,IAAK,iBACL,IAAK,cACL,IAAK,YACL,IAAK,UACJ,GAAGA,EAAG,GAAG93C,OAAO,KAAO,KAAM,UACxB,IAAG83C,EAAG,KAAK,IAAKmE,GAAchD,EAAO0iE,EAASrnG,EAAItU,MAAMw7G,EAAM1jE,EAAG5Q,YACjEs0E,GAAO1jE,EAAG5Q,MAAQ4Q,EAAG,GAAG77C,MAC7B,OACD,IAAK,aAAoC,MAEzC,IAAK,UACL,IAAK,WACJ,GAAG67C,EAAG,KAAK,IAAI,CAAC,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,IAAIh7C,OAAM,cAAcgwB,EAAIrqB,KAAK,UACnFwe,GAAMzd,MAAMs0C,EAAG,GAAI,OACxB,OAED,IAAK,UACJ,GAAGA,EAAG,KAAK,IAAI,CACd,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,IAAIh7C,OAAM,cAAcgwB,EAAIrqB,KAAK,KACxEm3G,IAAmB9pD,EACnB/c,GAASvvC,KAAKssD,OACR,CACN7uC,EAAMzd,MAAMs0C,EAAG,GAAI,OACnBhrB,GAAMwrF,GAAiBxgE,EAAG,GAC1BgY,IAAY7oC,EAAE6F,EAAIquB,QAEnB,MAED,IAAK,aACJ,GAAGrD,EAAG,KAAK,IAAI,CAAC,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,IAAIh7C,OAAM,cAAcgwB,EAAIrqB,KAAK,UACnF,IAAGq1C,EAAG,GAAG37C,OAAO27C,EAAG,GAAG77C,OAAO,KAAO,IAAK,CAC7C,GAAI2gH,IAAatE,GAAiBxgE,EAAG,GACrCqjE,GAAS,gBAAmBnrD,IAAIgO,GAAS4+C,GAAWC,OAAOh2G,QAAQ,MAAM,IACzEoa,GAAMzd,MAAMs0C,EAAG,GAAI,OAEpB,MAED,IAAK,OAAwB,MAE7B,IAAK,iBACJ,GAAGA,EAAG,KAAK,IAAI,CACd,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,IAAIh7C,OAAM,cAAcgwB,EAAIrqB,KAAK,UAClE,CACN,GAAGq1C,EAAG,GAAG37C,OAAO27C,EAAG,GAAG77C,OAAO,KAAO,IAAKglB,EAAMzd,MAAMs0C,EAAG,GAAI,OAE7D,MAED,IAAK,gBACJ,MACD,IAAK,oBACL,IAAK,sBACL,IAAK,4BACL,IAAK,0BACL,IAAK,cACL,IAAK,cACL,IAAK,SACL,IAAK,WACL,IAAK,cACL,IAAK,cACL,IAAK,WACL,IAAK,UACL,IAAK,yBACL,IAAK,gBACL,IAAK,aACL,IAAK,iBACL,IAAK,mBACL,IAAK,mBACJ,GAAGA,EAAG,KAAK,IAAI,CAAC,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,IAAIh7C,OAAM,cAAcgwB,EAAIrqB,KAAK,UACnF,IAAGq1C,EAAG,GAAG37C,OAAO27C,EAAG,GAAG77C,OAAO,KAAO,IAAKglB,EAAMzd,MAAMs0C,EAAG,GAAI,MACjE,OAED,IAAK,OAAwB,MAE7B,QAEC,GAAG72B,EAAMhlB,QAAU,GAAK67C,EAAG,IAAM,WAAY,MAAOglE,IAAWxoG,EAAKlF,EAEpE,IAAG6R,EAAMhlB,QAAU,GAAK67C,EAAG,IAAM,MAAgB,MAAOglE,IAAWxoG,EAAKlF,EAExE,IAAIuR,IAAO,IACX,QAAOM,EAAMA,EAAMhlB,OAAO,GAAG,IAE5B,IAAK,yBAA4D,OAAO67C,EAAG,IAC1E,IAAK,WAAgC,MACrC,IAAK,4BAAkE,MACvE,IAAK,qBAAoD,MACzD,IAAK,uBAAwD,MAC7D,IAAK,SAA4B,MACjC,IAAK,QAA0B,MAC/B,IAAK,QAA0B,MAC/B,IAAK,MAAsB,MAC3B,IAAK,mBAAgD,MACrD,IAAK,sBAAsD,MAC3D,QAASn3B,GAAO,OACf,MAGF,IAAK,mBAAgD,OAAOm3B,EAAG,IAC9D,IAAK,UAA8B,MACnC,IAAK,iBAA4C,MACjD,IAAK,qBAAoD,MACzD,IAAK,QAA0B,MAC/B,IAAK,UAA8B,MACnC,IAAK,YAAkC,MACvC,IAAK,WAAgC,MACrC,IAAK,kBAA8C,MACnD,QAASn3B,GAAO,OACf,MAGF,IAAK,gBAA0C,OAAOm3B,EAAG,IACxD,IAAK,WACVqvD,EAASmM,QAAQrjG,SAAW,IACtB,OACD,IAAK,eAAwC,MAC7C,IAAK,cAAsC,MAC3C,IAAK,aAAoC,MACzC,IAAK,aAAoC,MACzC,IAAK,WAAgC,MACrC,IAAK,mBAAgD,MACrD,IAAK,gBAA0C,MAC/C,IAAK,iBAA4C,MACjD,IAAK,cAAsC,MAC3C,IAAK,kBAA8C,MACnD,IAAK,oBAAkD,MACvD,IAAK,UAA8B,MACnC,IAAK,YAAkC,MACvC,IAAK,aAAoC,MACzC,IAAK,kBAA8C,MACnD,IAAK,iBAA4C,MACjD,IAAK,MAAsB,MAC3B,IAAK,yBAA4D,MACjE,IAAK,sBAAsD,MAC3D,IAAK,YAAkC,MACvC,IAAK,gBAA0C,MAC/C,IAAK,YAAkC,MACvC,IAAK,OAAwB,MAC7B,IAAK,MAAsB,MAC3B,IAAK,QAA0B,MAC/B,IAAK,iBAA4C,MACjD,IAAK,cAAsC,MAC3C,IAAK,WAAgC,MACrC,IAAK,gBAA0C,MAC/C,IAAK,MAAsB,MAC3B,IAAK,aAAoC,MACzC,IAAK,UAA8B,MACnC,IAAK,WAAgC,MACrC,IAAK,UAA8B,MACnC,IAAK,aAAoC,MACzC,IAAK,UAA8B,MACnC,IAAK,QAA0B,MAC/B,IAAK,OAAwB,MAC7B,IAAK,MAAsB,MAC3B,IAAK,gBAA0C,MAC/C,IAAK,iBAA4C,MACjD,IAAK,2BAAgE,MACrE,IAAK,SAA4B,MACjC,IAAK,cAAsC,MAC3C,IAAK,qBAAoD,MACzD,QAAS0Q,GAAO,OACf,MAGF,IAAK,kBAA8C,OAAOm3B,EAAG,IAC5D,IAAK,aAAoC,MACzC,IAAK,SAA4B,MACjC,IAAK,QAA0B,MAC/B,QAASn3B,GAAO,OACf,MAGF,IAAK,mBAAgD,OAAOm3B,EAAG,IAC9D,IAAK,UACJ,GAAGA,EAAG,GAAG93C,OAAO,KAAO,KAAK,MACvB,IAAG83C,EAAG,KAAK,IAAK,OAAOxjC,EAAItU,MAAMw7G,EAAM1jE,EAAG5Q,QAC9C,IAAK,cAAew0E,EAAQnH,OAAS,CAAG,OACxC,IAAK,kBAAmBmH,EAAQnH,OAAS,CAAG,YAExCiH,GAAO1jE,EAAG5Q,MAAQ4Q,EAAG,GAAG77C,MAC7B,OACD,IAAK,SACJ,IAAIk/G,EAAS,YAAapX,GAAgBoX,EAAS,eAAgB,OACnE,KAAIx0G,OAAO4wB,GAAYugB,EAAG,IAAIilE,QAAS5B,EAAS,YAAYr9F,QAAUyZ,GAAYugB,EAAG,IAAIilE,MACzF,OACD,IAAK,SACJ,IAAI5B,EAAS,YAAapX,GAAgBoX,EAAS,eAAgB,OACnE,KAAIx0G,OAAO4wB,GAAYugB,EAAG,IAAIilE,QAAS5B,EAAS,YAAYtoD,QAAUt7B,GAAYugB,EAAG,IAAIilE,MACzF,OACD,IAAK,cACJ,GAAIC,IAAczlF,GAAYugB,EAAG,GACjC,KAAIqjE,EAAS,YAAapX,GAAgBoX,EAAS,eAAe,OAClE,KAAIx0G,OAAOq2G,GAAYC,KAAM9B,EAAS,YAAY9W,KAAO2Y,GAAYC,GACrE,KAAIt2G,OAAOq2G,GAAYE,MAAO/B,EAAS,YAAYhX,MAAQ6Y,GAAYE,IACvE,KAAIv2G,OAAOq2G,GAAYG,OAAQhC,EAAS,YAAY/W,OAAS4Y,GAAYG,KACzE,KAAIx2G,OAAOq2G,GAAYI,QAASjC,EAAS,YAAY7W,QAAU0Y,GAAYI,MAC3E,OACD,IAAK,qBACJ,IAAIjW,EAASwB,MAAOxB,EAASwB,QAC7B,KAAIxB,EAASwB,MAAM,GAAIxB,EAASwB,MAAM,KACtCxB,GAASwB,MAAM,GAAG/+C,IAAM,IACxB,OAED,IAAK,cAAsC,MAC3C,IAAK,gBAA0C,MAE/C,IAAK,mBACL,IAAK,gBACJ,MAED,IAAK,wBACJ,MAED,IAAK,YAAkC,MACvC,IAAK,YAAkC,MACvC,IAAK,mBAAgD,MACrD,IAAK,sBAAsD,MAE3D,IAAK,WAAgC,MACrC,IAAK,QAA0B,MAC/B,IAAK,cAAsC,MAC3C,IAAK,QAA0B,MAC/B,IAAK,QAA0B,MAC/B,IAAK,OAAwB,MAC7B,IAAK,SAA4B,MACjC,IAAK,SAA4B,MACjC,IAAK,YAAkC,MACvC,IAAK,WAAgC,MACrC,IAAK,iBAA4C,MACjD,IAAK,kBAA8C,MACnD,IAAK,mBAAgD,MACrD,IAAK,mBAAgD,MACrD,IAAK,uBAAwD,MAC7D,IAAK,qBAAoD,MACzD,IAAK,iBAA4C,MACjD,IAAK,aAAoC,MACzC,IAAK,gBAA0C,MAC/C,IAAK,oBAAkD,MACvD,IAAK,YAAkC,MACvC,IAAK,iBAA4C,MACjD,IAAK,iBAA4C,MACjD,IAAK,iBAA4C,MACjD,IAAK,gBAA0C,MAC/C,IAAK,WAAgC,MACrC,IAAK,WAAgC,MACrC,IAAK,YAAkC,MACvC,IAAK,iBAA4C,MACjD,IAAK,OAAwB,MAC7B,IAAK,cAAsC,MAC3C,IAAK,YAAkC,MACvC,IAAK,YAAkC,MACvC,IAAK,cAAsC,MAC3C,IAAK,kBAA8C,MACnD,IAAK,kBAA8C,MACnD,IAAK,kBAA8C,MACnD,IAAK,kBAA8C,MACnD,IAAK,wBAA0D,MAC/D,IAAK,mBAAgD,MACrD,IAAK,gBAA0C,MAC/C,IAAK,gBAA0C,MAC/C,IAAK,2BACJ,IAAIuxD,EAAS,YAAaA,EAAS,cACnCA,GAAS,YAAY5T,MAAQ,IAC7B,OACD,IAAK,gBAA0C,MAC/C,IAAK,uBAAwD,MAC7D,IAAK,qBAAoD,MACzD,IAAK,8BACJ,IAAI4T,EAAS,YAAaA,EAAS,cACnCA,GAAS,YAAYhX,KAAO,IAC5B,OACD,IAAK,gBAA0C,MAC/C,IAAK,oBAAkD,MACvD,IAAK,mBAAgD,MACrD,IAAK,iBAA4C,MACjD,IAAK,sBAAsD,MAC3D,IAAK,gBAA0C,MAC/C,IAAK,sBAAsD,MAC3D,IAAK,aAAoC,MACzC,IAAK,gBAA0C,MAC/C,IAAK,YAAkC,MACvC,IAAK,kBAA8C,MACnD,QAASxjF,GAAO,OACf,MAGF,IAAK,cAAoC,IAAK,aAAoC,OAAOm3B,EAAG,IAC3F,IAAK,uBAAwD,MAC7D,IAAK,4BAAkE,MACvE,IAAK,mBAAgD,MACrD,IAAK,WAAgC,MACrC,IAAK,aAAoC,MACzC,IAAK,cAAsC,MAC3C,IAAK,aAAoC,MACzC,IAAK,yBAA4D,MACjE,IAAK,mBAAgD,MACrD,IAAK,WAAgC,MACrC,IAAK,YAAkC,MACvC,IAAK,WAAgC,MACrC,IAAK,YAAkC,MACvC,IAAK,aAAoC,MACzC,IAAK,cAAsC,MAC3C,IAAK,cAAsC,MAC3C,IAAK,aAAoC,MACzC,IAAK,mBAAgD,MACrD,IAAK,OAAwB,MAC7B,IAAK,WAAgC,MACrC,IAAK,WAAgC,MACrC,IAAK,aAAoC,MACzC,IAAK,yBAA4D,MACjE,IAAK,WAAgC,MACrC,IAAK,YAAkC,MACvC,IAAK,gBAA0C,MAC/C,IAAK,aAAoC,MACzC,IAAK,sBAAsD,MAC3D,IAAK,SAA4B,MACjC,IAAK,WAAgC,MACrC,IAAK,YAAkC,MACvC,IAAK,gBAA0C,MAC/C,IAAK,WAAgC,MACrC,IAAK,oBAAkD,MACvD,IAAK,iBAA4C,MACjD,IAAK,cAAsC,MAC3C,IAAK,iBAA4C,MACjD,IAAK,cAAsC,MAC3C,IAAK,cAAsC,MAC3C,IAAK,kBAA8C,MACnD,IAAK,qBAAoD,MACzD,IAAK,oBAAkD,MACvD,IAAK,uBAAwD,MAC7D,IAAK,wBAA0D,MAC/D,IAAK,cAAsC,MAC3C,QAASn3B,GAAO,OACf,MAGF,IAAK,aAAoC,OAAOm3B,EAAG,IAClD,IAAK,YAAkC,MACvC,IAAK,WAAgC,MACrC,IAAK,YAAkC,MACvC,IAAK,WAAgC,MACrC,IAAK,WAAgC,MACrC,IAAK,SAA4B,MACjC,IAAK,SAA4B,MACjC,QAASn3B,GAAO,OACf,MAGF,IAAK,aAAoC,OAAOm3B,EAAG,IAClD,IAAK,mBAAgD,MACrD,IAAK,sBAAsD,MAC3D,IAAK,gBAA0C,MAC/C,IAAK,eAAwC,MAC7C,QAASn3B,GAAO,OACf,MAGF,IAAK,aAAoC,OAAOm3B,EAAG,IAClD,IAAK,KAAoB,MACzB,IAAK,iBAA4C,MACjD,IAAK,oBAAkD,MACvD,IAAK,cAAsC,MAC3C,IAAK,YAAkC,MACvC,IAAK,qBAAoD,MACzD,IAAK,iBAA4C,MACjD,IAAK,YAAkC,MACvC,IAAK,aAAoC,MACzC,IAAK,aAAoC,MACzC,IAAK,cAAsC,MAC3C,IAAK,cAAsC,MAC3C,IAAK,WAAgC,MACrC,IAAK,SAA4B,MACjC,IAAK,aAAoC,MACzC,IAAK,iBAA4C,MACjD,IAAK,qBAAoD,MACzD,IAAK,qBAAoD,MACzD,IAAK,SAA4B,MACjC,IAAK,SAA4B,MACjC,IAAK,UAA8B,MACnC,IAAK,oBAAkD,MACvD,IAAK,uBAAwD,MAC7D,IAAK,iBAA4C,MACjD,IAAK,YAAkC,MACvC,IAAK,aAAoC,MACzC,IAAK,MAAsB,MAC3B,IAAK,QAA0B,MAC/B,IAAK,iBAA4C,MACjD,IAAK,kBAA8C,MACnD,IAAK,qBAAoD,MACzD,QAASn3B,GAAO,OACf,MAEF,IAAK,iBACL,OAAOm3B,EAAG,IACT,IAAK,QAA0B,MAE/B,IAAK,OAAwB,MAC7B,IAAK,MAAsB,MAC3B,IAAK,MAAsB,MAC3B,IAAK,OAAwB,MAC7B,IAAK,aAAoC,MACzC,IAAK,QAA0B,MAC/B,IAAK,gBAA0C,MAC/C,IAAK,QAA0B,MAC/B,IAAK,aAAoC,MACzC,IAAK,eAAwC,MAC7C,IAAK,aAAoC,MACzC,IAAK,eAAwC,MAC7C,IAAK,aAAoC,MACzC,IAAK,YAAkC,MACvC,IAAK,YAAkC,MACvC,IAAK,YAAkC,MACvC,IAAK,YAAkC,MACvC,IAAK,WAAgC,MACrC,IAAK,SAA4B,MACjC,IAAK,SAA4B,MACjC,IAAK,SAA4B,MAEjC,IAAK,gBAA0C,MAC/C,QAASn3B,GAAO,OACf,MAEF,IAAK,WACL,IAAK,wBACL,OAAOm3B,EAAG,IACT,IAAK,QAA0B,MAC/B,IAAK,OAAwB,MAC7B,IAAK,MAAsB,MAC3B,IAAK,MAAsB,MAC3B,IAAK,OAAwB,MAC7B,IAAK,aAAoC,MACzC,IAAK,QAA0B,MAC/B,IAAK,gBAA0C,MAC/C,IAAK,QAA0B,MAC/B,IAAK,aAAoC,MACzC,IAAK,eAAwC,MAC7C,IAAK,aAAoC,MACzC,IAAK,gBAA0C,MAC/C,IAAK,eAAwC,MAC7C,IAAK,aAAoC,MACzC,IAAK,YAAkC,MACvC,IAAK,YAAkC,MACvC,IAAK,YAAkC,MACvC,IAAK,YAAkC,MACvC,IAAK,WAAgC,MACrC,IAAK,SAA4B,MACjC,IAAK,SAA4B,MACjC,IAAK,SAA4B,MACjC,QAASn3B,GAAO,OACf,MAGF,IAAK,WAA8B,IAAK,UAA4B,IAAK,OAAwB,OAAOm3B,EAAG,IAC1G,IAAK,MAAsB,MAC3B,IAAK,QAA0B,MAC/B,IAAK,QAA0B,MAC/B,IAAK,QAA0B,MAC/B,IAAK,QAA0B,MAC/B,IAAK,UAA8B,MACnC,IAAK,WAAgC,MACrC,IAAK,YAAkC,MACvC,IAAK,cAAsC,MAC3C,IAAK,gBAA0C,MAE/C,IAAK,UACL,IAAK,WACL,IAAK,eACL,IAAK,YACL,IAAK,OACL,IAAK,aACL,IAAK,UAA8B,MAEnC,IAAK,MAAsB,MAC3B,QAASn3B,GAAO,OACf,MAGF,IAAK,YAAkC,MAEvC,QAASA,GAAO,KAAO,QAExB,GAAGA,GAAM,KAET,IAAGm3B,EAAG,GAAGj1C,MAAM,YAAa,KAC5B,KAAIoe,EAAMA,EAAMhlB,OAAO,GAAG,GAAI,KAAM,qBAAuB67C,EAAG,GAAK,IAAM72B,EAAMxe,KAAK,IACpF,IAAGwe,EAAMA,EAAMhlB,OAAO,GAAG,KAAmC,2BAA4B,CACvF,GAAG67C,EAAG,GAAG93C,OAAO,KAAO,KAAM,UACxB,IAAG83C,EAAG,KAAK,IAAK6gE,GAAkBv8D,EAAWu/D,EAASl8G,EAAI6U,EAAItU,MAAMw7G,EAAM1jE,EAAG5Q,YAC7E,CAAEznC,EAAKq4C,CAAI0jE,GAAO1jE,EAAG5Q,MAAQ4Q,EAAG,GAAG77C,OACxC,MAED,GAAGmT,EAAKorB,IAAK,KAAM,qBAAuBsd,EAAG,GAAK,IAAM72B,EAAMxe,KAAK,MAErE,GAAI5C,MACJ,KAAIuP,EAAKiuG,aAAejuG,EAAKkuG,UAAWz9G,GAAIyjC,OAASF,CACrDvjC,IAAIwjC,WAAa63E,CACjBr7G,IAAIsnG,SAAWA,CACftnG,IAAI+X,IAAM4c,GAAI9qB,EACd7J,IAAIo5C,MAAQA,CACZp5C,IAAIu8C,UAAYA,CAChB,OAAOv8C,IAGR,QAAS09G,IAAW59G,EAAMyP,GACzBouG,GAAcpuG,EAAKA,MACnB,QAAOA,EAAK4C,MAAM,UACjB,IAAK,SAAU,MAAO6nG,IAAejzG,EAAcjH,GAAOyP,GAC1D,IAAK,UAAU,IAAK,UAAU,IAAK,OAAQ,MAAOyqG,IAAel6G,EAAMyP,GACvE,IAAK,QAAS,MAAOyqG,IAAetyG,EAAI5H,GAAOyP,KAKjD,QAASquG,IAAiBl3D,EAAIn3C,GAC7B,GAAIxJ,KAEJ,IAAG2gD,EAAGtN,MAAOrzC,EAAEpC,KAAK04C,GAAoBqK,EAAGtN,MAAO7pC,GAElD,IAAGm3C,EAAGnK,UAAWx2C,EAAEpC,KAAK24C,GAAqBoK,EAAGtN,MAAOsN,EAAGnK,UAAWhtC,GACrE,OAAOxJ,GAAEnD,KAAK,IAGf,QAASi7G,MAGR,MAAO,GAGR,QAASC,IAAep3D,EAAIn3C,GAE3B,GAAIgkC,IAAU,kEACdhkC,GAAK+oE,QAAQx2E,QAAQ,SAASg2E,EAAIjyB,GACjC,GAAIhmC,KACJA,GAAQlc,KAAKo3B,GAAU,eAAgB,MAAOgjF,YAAajlF,GAAUjvB,EAAUiuE,EAAG50C,aAElF,IAAIn9B,IAAKi4G,QAAS,KAAO,GAAGn4D,GAC5BtS,GAAO5vC,KAAKo3B,GAAU,QAASlb,EAAQjd,KAAK,IAAKmD,KAElD,OAAOg1B,IAAU,SAAUwY,EAAO3wC,KAAK,KAExC,QAASq7G,IAAgBj/G,GAAK,MAAO+7B,IAAU,aAAc,MAAOmjF,UAAWl/G,EAAEmwD,KAAMgvD,cAAc,IAAMr/C,GAAS9/D,EAAE4pG,KAAMj1F,EAAE,EAAElT,EAAE,MAClI,QAAS29G,IAAiB13D,GACzB,MAAMA,OAAQ4gD,cAAcoB,MAAO,MAAO,EAC3C,IAAI9b,GAAQlmC,EAAG4gD,SAASoB,KACvB,IAAI1oG,KACJ,KAAI,GAAI7D,GAAI,EAAGA,EAAIywF,EAAMxwF,SAAUD,EAAG,CACrC,GAAI6C,GAAI4tF,EAAMzwF,EACd,IAAG6C,EAAE2pG,OAAS,KAAM,QACpB,IAAG3pG,EAAEmwD,KAAKnsD,MAAM,YAAa,QAC7BhD,GAAI2D,KAAKs6G,GAAgBj/G,IAE1B,MAAO+7B,IAAU,QAAS/6B,EAAI4C,KAAK,KAEpC,QAASy7G,IAAoBx6E,EAAIt0B,EAAM0D,EAAKyzC,GAC3C,IAAI7iB,EAAI,MAAO,EACf,OAAM6iB,OAAQ4gD,cAAcoB,MAAO,MAAO,EAC3C,IAAI9b,GAAQlmC,EAAG4gD,SAASoB,KACvB,IAAI1oG,KACJ,KAAI,GAAI7D,GAAI,EAAGA,EAAIywF,EAAMxwF,SAAUD,EAAG,CACrC,GAAI6C,GAAI4tF,EAAMzwF,EACd,IAAG6C,EAAE2pG,OAAS11F,EAAK,QAInB,IAAGjU,EAAEmwD,KAAKnsD,MAAM,YAAa,QAC7BhD,GAAI2D,KAAKs6G,GAAgBj/G,IAE1B,MAAOgB,GAAI4C,KAAK,IAGjB,QAAS07G,IAAqBz6E,EAAIt0B,EAAM0D,EAAKyzC,GAC5C,IAAI7iB,EAAI,MAAO,EACf,IAAI99B,KAgBJ,IAAG89B,EAAG,YAAa,CAClB99B,EAAEpC,KAAK,cACP,IAAGkgC,EAAG,YAAY5lB,OAAQlY,EAAEpC,KAAKo3B,GAAU,SAAU,MAAOwjF,WAAW16E,EAAG,YAAY5lB,SACtF,IAAG4lB,EAAG,YAAYmvB,OAAQjtD,EAAEpC,KAAKo3B,GAAU,SAAU,MAAOwjF,WAAW16E,EAAG,YAAYmvB,SACtFjtD,GAAEpC,KAAKo3B,GAAU,cAAe,MAC/ByjF,WAAY36E,EAAG,YAAY4gE,QAAU,OACrCga,SAAU56E,EAAG,YAAYygE,MAAQ,MACjCoa,UAAW76E,EAAG,YAAY0gE,OAAS,MACnCoa,QAAS96E,EAAG,YAAY2gE,KAAO,SAEhCz+F,GAAEpC,KAAK,gBAgBR,GAAG+iD,GAAMA,EAAG4gD,UAAY5gD,EAAG4gD,SAAS7jE,QAAUijB,EAAG4gD,SAAS7jE,OAAOxwB,GAAM,CAEtE,GAAGyzC,EAAG4gD,SAAS7jE,OAAOxwB,GAAKyhG,OAAQ3uG,EAAEpC,KAAKo3B,GAAU,UAAY2rB,EAAG4gD,SAAS7jE,OAAOxwB,GAAKyhG,QAAU,EAAI,cAAgB,2BACjH,CAEJ,IAAI,GAAIv4G,GAAI,EAAGA,EAAI8W,IAAO9W,EAAG,GAAGuqD,EAAG4gD,SAAS7jE,OAAOtnC,KAAOuqD,EAAG4gD,SAAS7jE,OAAOtnC,GAAGu4G,OAAQ,KACxF,IAAGv4G,GAAK8W,EAAKlN,EAAEpC,KAAK,gBAMtB,OAAO+iD,OAAQ4gD,cAAcwB,WAAW,QAAQ/+C,IAAKhkD,EAAEpC,KAAK,wBA2B5D,IAAGkgC,EAAG,YAAa,CAClB99B,EAAEpC,KAAKk3B,GAAS,kBAAmB,QACnC,IAAGgJ,EAAG,YAAY+6E,QAAS74G,EAAEpC,KAAKk3B,GAAS,iBAAkB,QAC7D,IAAGgJ,EAAG,YAAYg7E,UAAW94G,EAAEpC,KAAKk3B,GAAS,mBAAoB,QACjE,IAAGgJ,EAAG,YAAYi7E,mBAAqB,OAASj7E,EAAG,YAAYi7E,kBAAmB/4G,EAAEpC,KAAKk3B,GAAS,kBAAmB,oBAChH,IAAGgJ,EAAG,YAAYk7E,qBAAuB,OAASl7E,EAAG,YAAYk7E,oBAAqBh5G,EAAEpC,KAAKk3B,GAAS,kBAAmB,oBAE5H,cAAe,qBACf,gBAAiB,kBACjB,aAAc,kBACd,gBAAiB,oBACjB,aAAc,oBACd,mBAAoB,0BACpB,gBAAiB,oBACjB,aAAc,oBACd,OAAQ,cACR,aAAc,gBACd,cAAe,wBAChB/4B,QAAQ,SAAS1D,GAAK,GAAGylC,EAAG,YAAYzlC,EAAE,IAAK2H,EAAEpC,KAAK,IAAIvF,EAAE,GAAG,QAGjE,GAAG2H,EAAE3J,QAAU,EAAG,MAAO,EACzB,OAAO2+B,IAAU,mBAAoBh1B,EAAEnD,KAAK,KAAMyxC,MAAM/X,GAAOl+B,IAEhE,QAAS4gH,IAAsB9rE,GAC9B,MAAOA,GAAS7xC,IAAI,SAASZ,GAE5B,GAAIqI,GAAIwwB,GAAc74B,EAAEqI,GAAG,GAC3B,IAAI9M,GAAG++B,GAAU,UAAWjyB,GAAIurC,MAAQ,mCACxC,OAAOtZ,IAAU,UAAW/+B,GAAIijH,YAAYx+G,EAAE2mB,MAC5CxkB,KAAK,IAET,QAASs8G,IAAmB79E,EAAM8uB,EAAKtsB,EAAIt0B,EAAM0D,EAAKyzC,EAAIhmC,GACzD,IAAI2gB,GAASA,EAAKx4B,GAAK1E,WAAak9B,EAAKxgC,GAAKsD,UAAY,MAAO,EAEjE,IAAIg7G,KACJ,IAAG99E,EAAKxgC,EAAGs+G,EAAK,cAAgB,IAAMrmF,GAAUgmC,GAASz9B,EAAKxgC,EAAG6f,GACjE,IAAG2gB,EAAKv+B,GAAKu+B,EAAKv+B,EAAE3C,MAAM,EAAGgwD,EAAI/zD,SAAW+zD,EAAK,CAChD,GAAInjC,GAAM0V,GAAYrB,EAAKv+B,EAAE3C,MAAMgwD,EAAI/zD,OAAS,GAChD+iH,GAAK,iBAAmB,QAAUnyF,EAAIrZ,GAAK+M,EAAK/M,EAAI,GAAK,KAAOqZ,EAAIrZ,EAAI+M,EAAK/M,GAAK,KAAO,KAAOqZ,EAAIvsB,GAAKigB,EAAKjgB,EAAI,GAAK,KAAOusB,EAAIvsB,EAAIigB,EAAKjgB,GAAK,KAGjJ,GAAG4gC,EAAK39B,GAAK29B,EAAK39B,EAAE2zC,OAAQ,CAC3B8nE,EAAK,WAAarmF,GAAUuI,EAAK39B,EAAE2zC,OACnC,IAAGhW,EAAK39B,EAAEogD,QAASq7D,EAAK,mBAAqBrmF,GAAUuI,EAAK39B,EAAEogD,SAG/D,GAAGjgB,EAAG,WAAY,CACjB,GAAI6mE,GAAO7mE,EAAG,UACd,KAAI,GAAIu7E,GAAK,EAAGA,GAAM1U,EAAKtuG,SAAUgjH,EAAI,CACxC,GAAG1U,EAAK0U,GAAI19G,EAAEjB,GAAKigB,EAAKjgB,GAAKiqG,EAAK0U,GAAI19G,EAAEiS,GAAK+M,EAAK/M,EAAG,QACrD,IAAG+2F,EAAK0U,GAAIljH,EAAEuE,EAAIiqG,EAAK0U,GAAI19G,EAAEjB,EAAG0+G,EAAK,kBAAoBzU,EAAK0U,GAAIljH,EAAEuE,EAAIiqG,EAAK0U,GAAI19G,EAAEjB,CACnF,IAAGiqG,EAAK0U,GAAIljH,EAAEyX,EAAI+2F,EAAK0U,GAAI19G,EAAEiS,EAAGwrG,EAAK,gBAAkBzU,EAAK0U,GAAIljH,EAAEyX,EAAI+2F,EAAK0U,GAAI19G,EAAEiS,GAInF,GAAI7K,GAAI,GAAIuS,EAAI,EAChB,QAAOgmB,EAAKv4B,GACX,IAAK,IAAK,IAAIyG,EAAK+0B,WAAY,MAAO,EAAI,OAC1C,IAAK,IAAKx7B,EAAI,QAAUuS,GAAIhd,OAAOgjC,EAAKx4B,EAAI,OAC5C,IAAK,IAAKC,EAAI,SAAWuS,GAAKgmB,EAAKx4B,EAAI,IAAM,GAAM,OACnD,IAAK,IAAKC,EAAI,OAASuS,GAAI+nB,GAAK/B,EAAKx4B,EAAI,OACzC,IAAK,IAAKC,EAAI,UAAYuS,GAAI,GAAIhL,MAAKgxB,EAAKx4B,GAAGoyB,aAAe,IAAGoG,EAAKvJ,GAAK,KAAMuJ,EAAKvJ,EAAIuJ,EAAKvJ,GAAKjuB,EAAU,GAAK,OACnH,IAAK,IAAKf,EAAI,QAAUuS,GAAI6d,GAAWmI,EAAKx4B,GAAG,GAAK,QAGrD,GAAI4hD,GAAKi6C,GAAen1F,EAAK+oE,QAASj3C,EAAM9xB,EAC5C4vG,GAAK,cAAgB,KAAO,GAAG10D,EAC/B00D,GAAK,YAAcz+F,EAAKjgB,EAAI,CAC5B,IAAI4+G,GAAMh+E,EAAKx4B,GAAK,KAAOwS,EAAI,EAC/B,IAAIrL,GAAIqxB,EAAKv4B,GAAK,IAAM,GAAM,kBAAoBA,EAAI,KAAOu2G,EAAK,SAElE,KAAIh+E,EAAK5gC,OAAOrE,OAAS,EAAG4T,GAAKgvG,GAAsB39E,EAAK5gC,EAE5D,OAAOs6B,IAAU,OAAQ/qB,EAAGmvG,GAE7B,QAASG,IAAkBpkG,EAAGyS,GAC7B,GAAI5nB,GAAI,mBAAqBmV,EAAE,GAAK,GACpC,IAAGyS,EAAK,CACP,GAAGA,EAAIw6B,MAAQx6B,EAAI6wC,IAAK7wC,EAAI6wC,IAAMC,GAAM9wC,EAAIw6B,IAC5C,IAAGx6B,EAAI6wC,IAAKz4D,GAAK,oCAAsC4nB,EAAI6wC,IAAM,GACjE,IAAG7wC,EAAI05B,OAAQthD,GAAK,iBAErB,MAAOA,GAAI,IAGZ,QAASw5G,IAAoB17E,EAAIt0B,EAAM0D,EAAKyzC,GAC3C,IAAI7iB,EAAG,QAAS,MAAO,EACvB,IAAInC,GAAQqB,GAAkBc,EAAG,QACjC,IAAI6mE,GAAO7mE,EAAG,eAAkBu7E,EAAK,CACrC,IAAIr5G,KACJ,IAAG89B,EAAG,SAAUA,EAAG,SAAS/hC,QAAQ,SAAS9C,EAAG7C,GAC/CoiE,GAAYv/D,EACZ,IAAIiB,KAAMjB,EAAE8iD,KACZ,IAAIzmC,GAAI2oF,GAAU7nG,EAAG6C,EACrB,IAAIgC,IAAKw+G,WAAWrjH,EAAE,EACtB,IAAG8D,EAAGe,EAAE,YAAck+D,GAAS7jD,EAAEymC,MACjC,IAAG9iD,EAAEqoD,OAAQrmD,EAAE,aAAa,GAC5B+E,GAAEpC,KAAKo3B,GAAU,SAAS,KAAK/5B,KAEhC,IAAI4iC,GAAQ7gC,MAAM4E,QAAQk8B,EAC1B,KAAI,GAAI3oB,GAAIwmB,EAAMhgC,EAAEiS,EAAGuH,GAAKwmB,EAAMxlC,EAAEyX,IAAKuH,EAAG,CAC3C,GAAIyS,IAAO2xF,GAAkBpkG,GAAI2oB,EAAG,cAAc3oB,IAClD,KAAI,GAAI3Y,GAAIm/B,EAAMhgC,EAAEjB,EAAG8B,GAAKm/B,EAAMxlC,EAAEuE,IAAK8B,EAAG,CAC3C,GAAIk9G,GAAO,KACX,KAAIL,EAAK,EAAGA,GAAM1U,EAAKtuG,SAAUgjH,EAAI,CACpC,GAAG1U,EAAK0U,GAAI19G,EAAEjB,EAAI8B,EAAG,QACrB,IAAGmoG,EAAK0U,GAAI19G,EAAEiS,EAAIuH,EAAG,QACrB,IAAGwvF,EAAK0U,GAAIljH,EAAEuE,EAAI8B,EAAG,QACrB,IAAGmoG,EAAK0U,GAAIljH,EAAEyX,EAAIuH,EAAG,QACrB,IAAGwvF,EAAK0U,GAAI19G,EAAEjB,GAAK8B,GAAKmoG,EAAK0U,GAAI19G,EAAEiS,GAAKuH,EAAGukG,EAAO,IAClD,OAED,GAAGA,EAAM,QACT,IAAI/+F,IAAQ/M,EAAEuH,EAAEza,EAAE8B,EAClB,IAAI4tD,GAAMvuB,GAAYlhB,GAAO2gB,EAAOuC,GAASC,EAAG3oB,QAAQ3Y,GAAKshC,EAAGssB,EAChExiC,GAAIhqB,KAAKu7G,GAAmB79E,EAAM8uB,EAAKtsB,EAAIt0B,EAAM0D,EAAKyzC,EAAIhmC,IAE3DiN,EAAIhqB,KAAK,SACT,IAAGgqB,EAAIvxB,OAAS,EAAG2J,EAAEpC,KAAKgqB,EAAI/qB,KAAK,KAEpC,MAAOmD,GAAEnD,KAAK,IAEf,QAAS88G,IAAczsG,EAAK1D,EAAMm3C,GACjC,GAAI3gD,KACJ,IAAIrE,GAAIglD,EAAGljB,WAAWvwB,EACtB,IAAI4wB,GAAK6iB,EAAGjjB,OAAO/hC,EAEnB,IAAIoH,GAAI+6B,EAAKw6E,GAAoBx6E,EAAIt0B,EAAM0D,EAAKyzC,GAAM,EACtD,IAAG59C,EAAE1M,OAAS,EAAG2J,EAAEpC,KAAK,UAAYmF,EAAI,WAGxCA,GAAI+6B,EAAK07E,GAAoB17E,EAAIt0B,EAAM0D,EAAKyzC,GAAM,EAClD,IAAG59C,EAAE1M,OAAS,EAAG2J,EAAEpC,KAAK,UAAYmF,EAAI,WAGxC/C,GAAEpC,KAAK26G,GAAqBz6E,EAAIt0B,EAAM0D,EAAKyzC,GAE3C,OAAO3gD,GAAEnD,KAAK,IAEf,QAAS+8G,IAAWj5D,EAAIn3C,GACvB,IAAIA,EAAMA,IACV,KAAIm3C,EAAG3uC,IAAK2uC,EAAG3uC,IAAM4c,GAAI9qB,EACzB,IAAG68C,EAAG3uC,IAAK,CACVD,IAAYF,IAAe8uC,EAAG3uC,IAE9BxI,GAAKo1F,OAAS/yE,GAAU80B,EAAG3uC,IAAMxI,GAAKo1F,OAAOj+C,EAAG3uC,IAAI,QAAU,CAC9DxI,GAAKq1F,IAAMl+C,EAAG3uC,GACdxI,GAAK+oE,UACLosB,IAAen1F,EAAK+oE,YAAcqsB,QAAQib,QAAU,KAErD,GAAI5jH,KACJA,GAAE2H,KAAKi6G,GAAiBl3D,EAAIn3C,GAC5BvT,GAAE2H,KAAKk6G,GAAcn3D,EAAIn3C,GACzBvT,GAAE2H,KAAK,GACP3H,GAAE2H,KAAK,GACP,KAAI,GAAIxH,GAAI,EAAGA,EAAIuqD,EAAGljB,WAAWpnC,SAAUD,EAC1CH,EAAE2H,KAAKo3B,GAAU,YAAa2kF,GAAcvjH,EAAGoT,EAAMm3C,IAAMw3D,UAAUplF,GAAU4tB,EAAGljB,WAAWrnC,MAC9FH,GAAE,GAAK8hH,GAAep3D,EAAIn3C,EAC1BvT,GAAE,GAAKoiH,GAAiB13D,EAAIn3C,EAC5B,OAAO4nB,IAAa4D,GAAU,WAAY/+B,EAAE4G,KAAK,KAChDyxC,MAAc/X,GAAO/pB,GACrBitE,UAAcljD,GAAOv2B,EACrB05E,UAAcnjD,GAAOl+B,EACrByhH,WAAcvjF,GAAO/pB,GACrButG,WAAcxjF,GAAOjmB,GACrB0pG,aAAczjF,GAAOC,OAIvB,QAASyjF,IAAcxuF,GACtB,GAAI3oB,KACJ,IAAI9C,GAAIyrB,EAAInpB,OAEZtC,GAAErC,EAAI,EAENmF,GAAEo3G,aAAel6G,EAAEgW,WAAW,EAAG,aACjClT,GAAEq3G,oBAAsB52E,GAAkCvjC,EAE1D,IAAGA,EAAE3J,OAAS2J,EAAErC,GAAK,EAAG,MAAOmF,EAE/B,IAAImH,GAAIjK,EAAEgW,WAAW,EACrB,IAAG/L,GAAK,GAAKA,EAAI,GAAI,MAAOnH,EAC5B9C,GAAErC,GAAG,CAAGmF,GAAEs3G,UAAYp6G,EAAEgW,WAAW,EAAG,aAEtC,IAAGhW,EAAE3J,OAAS2J,EAAErC,GAAK,EAAG,MAAOmF,EAC/BmH,GAAIjK,EAAEgW,WAAW,EACjB,IAAG/L,IAAM,WAAY,MAAOnH,EAC5BA,GAAEu3G,uBAAyB72E,GAAqCxjC,EAEhEiK,GAAIjK,EAAEgW,WAAW,EACjB,IAAG/L,GAAK,GAAKA,EAAI,GAAI,MAAOnH,EAC5B9C,GAAErC,GAAG,CAAGmF,GAAEw3G,UAAYt6G,EAAEgW,WAAW,EAAG,UAWvC,GAAIukG,KAAgB,GAAQ,KAAQ,KAAQ,KAAQ,KACpD,SAASC,IAAMC,EAAYtlG,EAAGqB,EAAMngB,EAAQmT,GAC3C,GAAI7L,GAAItH,CACR,IAAI2L,KACJ,IAAI/L,GAAIugB,EAAKpc,MAAMoc,EAAK7Y,EAAE6Y,EAAK7Y,EAAEA,EACjC,IAAG6L,GAAQA,EAAKhT,KAAOgT,EAAKhT,IAAIm2E,QAAU12E,EAAEI,OAAS,EAAG,OAAOokH,GAC/D,IAAK,IAAQ,IAAK,MAAQ,IAAK,OAAQ,IAAK,OAAiB,IAAK,KAAuB,IAAK,MAAuB,IAAK,MAA2B,IAAK,MAAsB,IAAK,MAAsB,IAAK,MAAsB,IAAK,IAC1O,MACD,IAAK,KACJ,MACD,QACCjxG,EAAKhT,IAAIm2E,OAAO12E,IAEjB+L,EAAKpE,KAAK3H,EACVugB,GAAK7Y,GAAKA,CACV,IAAI+8G,GAASzjF,GAAezgB,EAAKA,EAAK7Y,GAAIm9B,EAAO6/E,GAAcD,EAC/D,IAAI1gG,GAAQ,CACZ,OAAM8gB,GAAQ,MAAQy/E,GAAY59G,QAAQ+9G,IAAW,EAAG,CACvD/8G,EAAIs5B,GAAezgB,EAAKA,EAAK7Y,EAAE,EAC/Bqc,GAAQxD,EAAK7Y,EAAI,CACjB,IAAG+8G,GAAU,KAA0B1gG,GAAS,MAC3C,IAAG0gG,GAAU,MAAUA,GAAU,KAAQ,CAC7C1gG,GAAS,GAEV/jB,EAAIugB,EAAKpc,MAAM4f,EAAMxD,EAAK7Y,EAAE,EAAEA,EAC9BqE,GAAKpE,KAAK3H,EACVugB,GAAK7Y,GAAK,EAAEA,CACZm9B,GAAQ6/E,GAAcD,EAASzjF,GAAezgB,EAAMA,EAAK7Y,IAE1D,GAAI2iB,GAAKve,EAAQC,EACjByU,IAAU6J,EAAG,EACb,IAAIs6F,GAAK,CAAGt6F,GAAEiZ,OACd,KAAI,GAAI7iC,GAAI,EAAGA,EAAIsL,EAAK3L,SAAUK,EAAG,CAAE4pB,EAAEiZ,KAAK37B,KAAKg9G,EAAKA,IAAM54G,EAAKtL,GAAGL,OACtE,GAAGiqB,EAAEjqB,OAASA,EAAQ,KAAM,gBAAkBokH,EAAWpgH,SAAS,IAAM,eAAiBimB,EAAEjqB,OAAS,MAAQA,CAC5G,OAAO8e,GAAEra,EAAEwlB,EAAGA,EAAEjqB,OAAQmT,GAGzB,QAASqxG,IAAevlG,EAAG9L,EAAMa,GAChC,GAAGiL,EAAEvS,IAAM,IAAK,MAChB,KAAIuS,EAAE4nB,GAAI,MACV,IAAIiY,GAAQ,CACZ,KACCA,EAAQ7/B,EAAEyc,GAAKzc,EAAE4nB,GAAGC,UAAY,CAChC,IAAG3zB,EAAKsyD,OAAQxmD,EAAEyc,EAAIjuB,EAAUqxC,GAC/B,MAAMh/C,GAAK,GAAGqT,EAAKorB,IAAK,KAAMz+B,GAChC,IAAIqT,GAAQA,EAAKqyD,WAAa,MAAO,IACpC,GAAGvmD,EAAEvS,IAAM,IAAK,CAAEuS,EAAEpb,EAAIob,EAAEpb,GAAKmjC,GAAK/nB,EAAExS,OACjC,IAAGqyC,IAAU,GAAKA,GAAS,UAAW,CAC1C,GAAG7/B,EAAEvS,IAAM,IAAK,CACf,IAAIuS,EAAExS,EAAE,KAAOwS,EAAExS,EAAGwS,EAAEpb,EAAIob,EAAExS,EAAEzI,SAAS,QAClCib,GAAEpb,EAAIyR,GAAgB2J,EAAExS,OAEzBwS,GAAEpb,EAAI+R,GAAYqJ,EAAExS,OAErBwS,GAAEpb,EAAIgS,GAAWipC,EAAM7/B,EAAExS,GAAIuH,WAAWA,EAAUqH,OAAQlI,GAAQA,EAAKkI,SAC3E,MAAMvb,GAAK,GAAGqT,EAAKorB,IAAK,KAAMz+B,GAChC,GAAGqT,EAAKg1B,WAAa2W,GAAS7/B,EAAEvS,GAAK,KAAOmN,GAAYpM,EAAUqxC,IAAU78C,OAAO68C,IAAS,CAC3F,GAAIo2D,GAAKhiG,EAAoB+L,EAAExS,EAAI,IAAGyoG,EAAI,CAAEj2F,EAAEvS,EAAI,GAAKuS,GAAExS,EAAI,GAAIwH,MAAKihG,EAAGvhG,EAAGuhG,EAAGthG,EAAE,EAAEshG,EAAGt1G,EAAEs1G,EAAGrhG,EAAEqhG,EAAG9uG,EAAE8uG,EAAGphG,EAAEohG,EAAGxhG,KAI5G,QAAS+wG,IAAUxuG,EAAKkyC,EAAMz7C,GAC7B,OAASD,EAAEwJ,EAAKkyC,KAAKA,EAAMz7C,EAAEA,GAI9B,QAASg4G,IAAevkG,EAAMa,GAC7B,GAAIspC,IAAOn3C,QACX,IAAIk0B,KACJ,IAAGh9B,GAAS,MAAQ2W,EAAQwmB,OAAS,KAAMxmB,EAAQwmB,MAAQn9B,CAC3D,IAAIzG,GAAQod,EAAQwmB,WACpB,IAAIm9E,KACJ,IAAIr/E,KACJ,IAAIs/E,GAAe,IACnB,IAAIpsE,KACJ,IAAIqsE,GAAY,EAChB,IAAIC,KACJ,IAAIC,GAAUC,EAAY,GAAI1sG,EAAI2sG,EAAMC,EAAMC,CAC9C,IAAIp0B,KACJ,IAAIG,KACJ,IAAIk0B,EACJ,IAAIC,EACJ,IAAIC,KACJ,IAAIC,KACJ,IAAIra,IAAc7jE,UAAWgwE,SAASrjG,SAAS,OAAQ04F,YAAe+S,IACtE,IAAI+F,GAAU,QAASC,IAAOl6E,GAC7B,GAAGA,EAAM,EAAG,MAAOC,IAAOD,EAC1B,IAAGA,EAAM,GAAI,MAAOg6E,GAAQh6E,EAAI,IAAMC,GAAOD,EAC7C,OAAOC,IAAOD,GAEf,IAAIm6E,GAAqB,QAASC,IAAI1gF,EAAMjU,EAAMhQ,GACjD,GAAI4kG,GAAM50F,EAAK6V,GAAGnjC,IAClB,KAAIkiH,IAAQA,EAAIp2D,cAAgBxuC,IAAYA,EAAQyuC,WAAY,MAChEz+B,GAAK1rB,IACL0rB,GAAK1rB,EAAEkqD,YAAco2D,EAAIp2D,WACzB,IAAI9iD,EACJ,IAAIA,EAAIg/B,GAAQ85E,EAAQI,EAAIz0D,UAAY,CAAEngC,EAAK1rB,EAAEk1E,SAAW/uC,IAAI/+B,GAChE,GAAIA,EAAIg/B,GAAQ85E,EAAQI,EAAIx0D,UAAY,CAAEpgC,EAAK1rB,EAAEg1E,SAAW7uC,IAAI/+B,IAEjE,IAAIm5G,GAAU,QAASA,IAAQ5gF,EAAMjU,EAAMhQ,GAC1C,GAAG8kG,EAAa,EAAG,MACnB,IAAG9kG,EAAQ05C,WAAaz1B,EAAK1tB,GAAKyJ,EAAQ05C,UAAW,MACrD,IAAG15C,EAAQyuC,YAAcz+B,EAAK6V,IAAM7V,EAAK6V,GAAGnjC,KAAMgiH,EAAmBzgF,EAAMjU,EAAMhQ,SAC1EgQ,GAAKm3B,WAAan3B,GAAK6V,EAC9Bk+E,GAAW9/E,CACX+/E,GAAYx/E,GAAYP,EACxB,KAAIK,IAAUA,EAAMhgC,IAAMggC,EAAMxlC,EAAGwlC,GAAShgC,GAAGiS,EAAE,EAAElT,EAAE,GAAGvE,GAAGyX,EAAE,EAAElT,EAAE,GACjE,IAAG4gC,EAAK1tB,EAAI+tB,EAAMhgC,EAAEiS,EAAG+tB,EAAMhgC,EAAEiS,EAAI0tB,EAAK1tB,CACxC,IAAG0tB,EAAK5gC,EAAIihC,EAAMhgC,EAAEjB,EAAGihC,EAAMhgC,EAAEjB,EAAI4gC,EAAK5gC,CACxC,IAAG4gC,EAAK1tB,EAAI,EAAI+tB,EAAMxlC,EAAEyX,EAAG+tB,EAAMxlC,EAAEyX,EAAI0tB,EAAK1tB,EAAI,CAChD,IAAG0tB,EAAK5gC,EAAI,EAAIihC,EAAMxlC,EAAEuE,EAAGihC,EAAMxlC,EAAEuE,EAAI4gC,EAAK5gC,EAAI,CAChD,IAAG2c,EAAQ6tF,aAAe79E,EAAKvsB,EAAG,CACjC,IAAI,GAAIshH,GAAM,EAAGA,EAAM70B,EAAOlxF,SAAU+lH,EAAK,CAC5C,GAAG70B,EAAO60B,GAAK,GAAGzgH,EAAEjB,EAAI4gC,EAAK5gC,GAAK6sF,EAAO60B,GAAK,GAAGzgH,EAAEiS,EAAI0tB,EAAK1tB,EAAG,QAC/D,IAAG25E,EAAO60B,GAAK,GAAGjmH,EAAEuE,EAAI4gC,EAAK5gC,GAAK6sF,EAAO60B,GAAK,GAAGjmH,EAAEyX,EAAI0tB,EAAK1tB,EAAG,QAC/DyZ,GAAKtqB,EAAI8/B,GAAa0qD,EAAO60B,GAAK,GAClC,IAAG70B,EAAO60B,GAAK,GAAGzgH,EAAEjB,GAAK4gC,EAAK5gC,GAAK6sF,EAAO60B,GAAK,GAAGzgH,EAAEiS,GAAK0tB,EAAK1tB,QAAUyZ,GAAKvsB,CAC7E,IAAGusB,EAAKvsB,EAAGusB,EAAKvsB,EAAI,GAAKurF,GAAkBkB,EAAO60B,GAAK,GAAIzgF,EAAOL,EAAM0qD,EAAUx8E,EAClF,QAGF,CACC,GAAG6N,EAAQwmB,MAAO,CACjB,IAAI5jC,EAAIqhC,EAAK1tB,GAAI3T,EAAIqhC,EAAK1tB,KAC1B3T,GAAIqhC,EAAK1tB,GAAG0tB,EAAK5gC,GAAK2sB,MAChBptB,GAAIohH,GAAah0F,GAG1B,IAAI7d,IACHhT,IAAK,MACLkyD,MAAO,EACPqU,UACAqqB,QAASA,EACTG,OAAQA,EACR80B,WACAC,SAAU,GACV7gF,KAAM,EACNk1B,SAAU,EACV4rD,UAAW,EACXz2D,aAAczuC,KAAaA,EAAQyuC,WACnClxB,MAAOvd,KAAaA,EAAQmlG,IAE7B,IAAGnlG,EAAQw0D,SAAUriE,EAAKqiE,SAAWx0D,EAAQw0D,QAC7C,IAAI79B,EACJ,IAAIkd,KACJ,IAAI2tD,KACJ,IAAInhD,MAAcD,IAClB,IAAI4qC,GAAU,KACd,IAAIrc,KACJA,GAASvoD,WAAaj0B,EAAKuzD,MAC3BipB,GAASoB,QAAU59E,EAAK49E,OACxBpB,GAASuB,OAAS/9E,EAAK+9E,MACvBvB,GAASa,QACTb,GAASC,MACT,IAAIw2B,GAAU,CACd,IAAIN,GAAa,CACjB,IAAIO,GAAW,EAAGC,IAClB,IAAIC,KACJ,IAAIC,EAGJrzG,GAAKmnD,SAAW,IAChB9wD,GAAO,KACP,IAAIi9G,GAAgB,KACpB,OAAMtmG,EAAK7Y,EAAI6Y,EAAKngB,OAAS,EAAG,CAC/B,GAAIsF,GAAI6a,EAAK7Y,CACb,IAAI88G,GAAajkG,EAAKR,WAAW,EACjC,IAAGykG,IAAe,GAAKgC,IAAY,GAAkB,KACrD,IAAIpmH,GAAUmgB,EAAK7Y,IAAM6Y,EAAKngB,OAAS,EAAImgB,EAAKR,WAAW,EAC3D,IAAIb,GAAIwlG,GAAcF,EAGtB,IAAGtlG,GAAKA,EAAEra,EAAG,CACZ,GAAGuc,EAAQogG,WAAY,CACtB,GAAGgF,IAAY,KAA4BhC,IAAe,IAAoC,MAE/FgC,EAAUhC,CACV,IAAGtlG,EAAEvH,IAAM,GAAKuH,EAAEvH,GAAK,GAAI,CAC1B,GAAI+wC,GAAKnoC,EAAKR,WAAW,EAAI3f,IAAU,CACvC,KAAImT,EAAKhT,KAAOmoD,IAAO87D,KAAiB97D,EAAG,MAAO,EAAIA,GAAI,KAAQ87D,EAAY,KAAM,IAAIvjH,OAAM,gBAAkBynD,EAAK,KAAO87D,EAC5H,IAAGtlG,EAAEvH,GAAK,GAAG,CACZ4I,EAAK7Y,GAAK,EAAItH,IAAU,IAI1B,GAAIiW,KACJ,IAAGmuG,IAAe,GAAkBnuG,EAAM6I,EAAEra,EAAE0b,EAAMngB,EAAQmT,OACvD8C,GAAMkuG,GAAMC,EAAYtlG,EAAGqB,EAAMngB,EAAQmT,EACjD,IAAG2yG,GAAc,IAAM,EAAQ,IAAQ,KAAQ,MAAQx/G,QAAQ8/G,MAAc,EAAe,QACzF,QAAOhC,GACN,IAAK,IACT95D,EAAGn3C,KAAKuzG,SAAWxb,EAASmM,QAAQrjG,SAAWiC,CAAK,OAChD,IAAK,KAA2Bq0C,EAAGn3C,KAAKwzG,aAAe,IAAM,OAC7D,IAAK,IACJ,IAAIxzG,EAAKhT,IAAKggB,EAAK7Y,EAAI,CACvB6L,GAAKhT,IAAM8V,CACX,KAAI+K,EAAQw0D,SAAU,KAAM,IAAI30E,OAAM,6BACtC,IAAGoV,EAAIu8D,OAAS,KAAM,KAAM,IAAI3xE,OAAM,gCACtC,KAAIoV,EAAIu8D,MAAO,KAAM,IAAI3xE,OAAM,wBAC/B,OACD,IAAK,IAA0BsS,EAAK8yG,SAAWhwG,CAAK,OACpD,IAAK,IACJ,GAAI2wG,GAAQjuF,OAAO1iB,EAEnB,QAAO2wG,GACN,IAAK,OAAQA,EAAS,IAAM,OAC5B,IAAK,OAAQA,EAAQ,GAAO,OAC5B,IAAK,OAAQA,EAAS,IAAM,QAE7Bp9G,EAAO2J,EAAKmnD,SAAWssD,EACvBH,GAAgB,IAChB,OACD,IAAK,KAAsBtzG,EAAK6yG,QAAU/vG,CAAK,OAC/C,IAAK,IAAyB9C,EAAK+yG,UAAYjwG,CAAK,OACpD,IAAK,KAAyBq0C,EAAGn3C,KAAK,cAAgB8C,CAAK,OAC3D,IAAK,IAAwBq0C,EAAGn3C,KAAK,aAAe8C,CAAK,OACzD,IAAK,IAAwBq0C,EAAGn3C,KAAK,aAAe8C,CAAK,OACzD,IAAK;AAAuBq0C,EAAGn3C,KAAK,YAAc8C,CAAK,OACvD,IAAK,IAAuBq0C,EAAGn3C,KAAK,YAAc8C,CAAK,OACvD,IAAK,IAA4Bq0C,EAAGn3C,KAAK,iBAAmB8C,CAAK,OACjE,IAAK,IAA6Bq0C,EAAGn3C,KAAK,kBAAoB8C,CAAK,OACnE,IAAK,IAA0B9C,EAAK0zG,YAAc5wG,CAAK,OACvD,IAAK,MAAmCq0C,EAAGn3C,KAAK2zG,SAAW7wG,CAAK,OAChE,IAAK,KACJ,GAAGA,EAAI40C,QAASjnD,EAAI,SAAW,QAC/B,KAAIqS,EAAI60C,QAASlnD,EAAI,cAAgBA,EAAI,iBAAmB0nG,MAAQ,IACpE,KAAIr1F,EAAI80C,QAASnnD,EAAI,cAAgBA,EAAI,iBAAmBskG,KAAO,IACnE,OACD,IAAK,KACJod,EAAI/9G,KAAK0O,EAAM,OAChB,IAAK,KACJ05E,EAASpoF,MAAM0O,GACf05E,GAASA,EAAS3vF,OAAO,GAAG4vF,MAC5B,OACD,IAAK,KAAQ,IAAK,KACjBD,EAASA,EAAS3vF,OAAO,GAAGuH,KAAK0O,EACjC,OACD,IAAK,KAAQ,IAAK,KACjBuwG,GACCzzD,KAAM98C,EAAI88C,KACVy5C,IAAKxc,GAAkB/5E,EAAIq9C,KAAKhuB,EAAM,KAAKqqD,EAASx8E,GAErD,IAAG8C,EAAIm9C,KAAO,EAAGozD,EAASja,MAAQt2F,EAAIm9C,KAAO,CAC7Cu8B,GAASa,MAAMjpF,KAAKi/G,EACpB,KAAI72B,EAAS,GAAI,CAAEA,EAAS,KAASA,GAAS,GAAGC,OACjDD,EAASA,EAAS3vF,OAAO,GAAGuH,KAAK0O,EACjC,IAAGA,EAAI88C,MAAQ,yBAA2B98C,EAAIm9C,KAAO,EACpD,GAAGn9C,EAAIq9C,MAAQr9C,EAAIq9C,KAAK,IAAMr9C,EAAIq9C,KAAK,GAAG,IAAMr9C,EAAIq9C,KAAK,GAAG,GAAG,IAAM,YACpEizD,EAAgBtwG,EAAIm9C,KAAO,IAAOW,IAAKvtB,GAAavwB,EAAIq9C,KAAK,GAAG,GAAG,GAAG,IACxE,OACD,IAAK,IAA0BngD,EAAK4zG,YAAc9wG,CAAK,OACvD,IAAK,IACJ,GAAG05E,EAAS3vF,QAAU,EAAG,CAAE2vF,EAAS,KAASA,GAAS,GAAGC,OACzDD,EAASA,EAAS3vF,OAAS,GAAG4vF,IAAMD,EAASA,EAAS3vF,OAAS,GAAG4vF,IAAIhkF,OAAOqK,EAAM05E,GAASC,IAAMD,EAASC,IAAIhkF,OAAOqK,EAAM,OAC7H,IAAK,MAEJ,GAAG9C,EAAKiyB,KAAO,EAAG,KAClB,IAAGohF,GAAY,KAAMA,EAASjO,QAAUtiG,EAAI,EAC5C,OACD,IAAK,IAAsBrS,EAAI,YAAcqS,CAAK,OAClD,IAAK,IAAuB,GAAGA,IAAQ,GAAK9C,EAAKorB,IAAKtV,QAAQC,MAAM,sBAAwBjT,EAAM,OAClG,IAAK,KAA0B,CAC9B0uG,EAAU1uG,EAAIytB,KAAOztB,CACrB9C,GAAKuzD,OAAOn/D,KAAK0O,EAAIqM,MACpB,MACF,IAAK,IAAkB,CACtB,KAAKwjG,EAAY,KACjB,IAAGxgF,EAAMxlC,EAAG,CACX,GAAGwlC,EAAMxlC,EAAEyX,EAAI,GAAK+tB,EAAMxlC,EAAEuE,EAAI,EAAG,CAClCihC,EAAMxlC,EAAEyX,GAAK+tB,GAAMxlC,EAAEuE,GACrBT,GAAI,QAAU4iC,GAAalB,EAC3B,IAAGtkB,EAAQ05C,WAAa15C,EAAQ05C,WAAap1B,EAAMxlC,EAAEyX,EAAG,CACvD,GAAIyvG,GAAQ1hF,EAAMxlC,EAAEyX,CACpB+tB,GAAMxlC,EAAEyX,EAAIyJ,EAAQ05C,UAAY,CAChC92D,GAAI,YAAcA,EAAI,OACtBA,GAAI,QAAU4iC,GAAalB,EAC3BA,GAAMxlC,EAAEyX,EAAIyvG,EAEb1hF,EAAMxlC,EAAEyX,GAAK+tB,GAAMxlC,EAAEuE,IAEtB,GAAGwwD,EAAO70D,OAAS,EAAG4D,EAAI,WAAaixD,CACvC,IAAG2tD,EAAQxiH,OAAS,EAAG4D,EAAI,YAAc4+G,CACzC,IAAGnhD,EAAQrhE,OAAS,EAAG4D,EAAI,SAAWy9D,CACtC,IAAGD,EAAQphE,OAAS,EAAG4D,EAAI,SAAWw9D,CACtC8pC,GAAS7jE,OAAO9/B,KAAKk4G,GAEtB,GAAGoF,IAAc,GAAIC,EAAWlhH,MAAUyjC,GAAOw9E,GAAajhH,CAC9DA,GAAQod,EAAQwmB,YACf,MACF,IAAK,IAAQ,IAAK,MAAQ,IAAK,OAAQ,IAAK,MAAkB,CAC7D,GAAGr0B,EAAKiyB,OAAS,EAAGjyB,EAAKiyB,MAC9Bx3B,EAAO,EACPwyF,IAAO,EACP6mB,KAAO,GACA7C,KACP/3C,IAAO,EACPqB,IAAO,EACPw5C,KAAO,EACPC,KAAO,EACPC,KAAO,EACPh/G,EAAO,EACPmH,EAAO,GACA0G,EAAIm0C,UAAY,CAClBj3C,GAAKo7C,UAAYt4C,EAAIm0C,SAAW,CAChC,IAAGn0C,EAAIm0C,SAAW,GAAKn0C,EAAIgE,IAAM,KAAQ,CAAE9G,EAAKiyB,KAAO,CAAGqhF,GAAgB,IAAMj9G,GAAO2J,EAAKmnD,SAAW,OACvG,GAAGnnD,EAAKiyB,MAAQ,GAAKnvB,EAAIm0C,SAAW,GAAKn0C,EAAIgE,IAAM,GAAI9G,EAAKiyB,KAAO,CACnE,IAAG0gF,IAAc,KACjBliH,GAAQod,EAAQwmB,WAEhB,IAAGr0B,EAAKiyB,KAAO,IAAMqhF,EAAe,CAAEA,EAAgB,IAAMj9G,GAAO2J,EAAKmnD,SAAWt5C,EAAQs5C,UAAY,MAEvG,GAAGnnD,EAAKiyB,KAAO,GAAKnvB,EAAIm0C,SAAW,GAAKn0C,EAAIgE,IAAM,KAAQ,CACzD,GAAG4qG,IAAc,GAAIA,EAAY,QACjCv/E,IAAShgC,GAAGiS,EAAE,EAAElT,EAAE,GAAGvE,GAAGyX,EAAE,EAAElT,EAAE,GAE9B,IAAIgjH,KAAW3jF,IAAKvjB,EAAK7Y,EAAItH,EAAQsiB,KAAKuiG,EAC1CF,GAAU0C,GAAQ3jF,KAAO2jF,EACzBl0G,GAAKuzD,OAAOn/D,KAAKs9G,OAEbA,IAAaF,EAAUr/G,KAAOgd,KAAK,KAAKA,IAC7C,IAAGrM,EAAIgE,IAAM,GAAMrW,EAAI,SAAW,OAClC,IAAGqS,EAAIgE,IAAM,GAAMrW,EAAI,SAAW,OAClCixD,KACA2tD,KACArvG,GAAK+9E,OAASA,IACd7vB,KAAcD,KACd4qC,GAAU,KACVyT,IAAWnH,QAAQqM,EAAUr/G,KAAK4lD,GAAG,IAAIA,GAAI5oC,KAAKuiG,GACjD,MACF,IAAK,MAAqB,IAAK,IAAuB,IAAK,GAAuB,CACjF,GAAGjhH,EAAI,UAAY,QAAS,GAAGod,EAAQwmB,OAAS5jC,EAAIqS,EAAIsB,QAAQtB,EAAI5R,GAAIT,EAAI4hC,IAAanhC,EAAE4R,EAAI5R,EAAGkT,EAAEtB,EAAIsB,OAAQtB,EAAI5R,CACpH+gH,IAAaj9D,KAAMlyC,EAAIkyC,KAAMthB,GAAIy+E,EAAIrvG,EAAIkyC,UAAW17C,EAAEwJ,EAAIA,IAAKvJ,EAAE,IACjE,IAAG25G,EAAW,EAAGjB,EAAS1pF,EAAI4qF,EAAelB,EAASj9D,MAAM,EAAK,GACjEq8D,IAAeY,EAAUpkG,EAASspC,EAAGn3C,KAAKuzG,SAC1Cb,IAASxhH,EAAE4R,EAAI5R,EAAGkT,EAAEtB,EAAIsB,GAAI6tG,EAAUpkG,GACrC,MACF,IAAK,IAAQ,IAAK,KAAsB,CACvCokG,GAAaj9D,KAAMlyC,EAAIkyC,KAAMthB,GAAIy+E,EAAIrvG,EAAIkyC,MAAO17C,EAAEwJ,EAAIA,IAAKvJ,EAAEuJ,EAAIvJ,EACjE,IAAG25G,EAAW,EAAGjB,EAAS1pF,EAAI4qF,EAAelB,EAASj9D,MAAM,EAAK,GACjEq8D,IAAeY,EAAUpkG,EAASspC,EAAGn3C,KAAKuzG,SAC1Cb,IAASxhH,EAAE4R,EAAI5R,EAAGkT,EAAEtB,EAAIsB,GAAI6tG,EAAUpkG,GACrC,MACF,IAAK,KAAiB,CACrBokG,GAAaj9D,KAAMlyC,EAAIkyC,KAAMthB,GAAIy+E,EAAIrvG,EAAIkyC,MAAO17C,EAAEwJ,EAAIg5C,MAAOviD,EAAE,IAC/D,IAAG25G,EAAW,EAAGjB,EAAS1pF,EAAI4qF,EAAelB,EAASj9D,MAAM,EAAK,GACjEq8D,IAAeY,EAAUpkG,EAASspC,EAAGn3C,KAAKuzG,SAC1Cb,IAASxhH,EAAE4R,EAAI5R,EAAGkT,EAAEtB,EAAIsB,GAAI6tG,EAAUpkG,GACrC,MACF,IAAK,KAAoB,CACxB,IAAI,GAAI3gB,IAAI4V,EAAI5R,EAAGhE,IAAK4V,EAAI9P,IAAK9F,GAAG,CACnC,GAAI8nD,IAAOlyC,EAAI+4C,MAAM3uD,GAAE4V,EAAI5R,GAAG,EAC9B+gH,IAAYj9D,KAAKA,GAAMthB,GAAGy+E,EAAIn9D,IAAO17C,EAAEwJ,EAAI+4C,MAAM3uD,GAAE4V,EAAI5R,GAAG,GAAIqI,EAAE,IAChE,IAAG25G,EAAW,EAAGjB,EAAS1pF,EAAI4qF,EAAelB,EAASj9D,MAAM,EAAK,GACjEq8D,IAAeY,EAAUpkG,EAASspC,EAAGn3C,KAAKuzG,SAC1Cb,IAASxhH,EAAEhE,GAAGkX,EAAEtB,EAAIsB,GAAI6tG,EAAUpkG,IAElC,MACF,IAAK,IAAQ,IAAK,MAAQ,IAAK,MAAsB,CACpD,GAAG/K,EAAIA,KAAO,SAAU,CAAE2uG,EAAe3uG,CAAK,OAC9CmvG,EAAWX,GAAUxuG,EAAIA,IAAKA,EAAIgvB,KAAKkjB,KAAMlyC,EAAI1P,GACjD6+G,GAASv+E,GAAKy+E,EAAIF,EAASj9D,KAC3B,IAAGnnC,EAAQ6tF,YAAa,CACvB,GAAIhzC,IAAK5lD,EAAI6rD,OACb,IAAGjG,IAAMA,GAAG,IAAMA,GAAG,GAAG,IAAMA,GAAG,GAAG,GAAG,IAAM,SAAU,CACtD,GAAIyrD,IAAMzrD,GAAG,GAAG,GAAG,GAAG,GAAI0rD,GAAM1rD,GAAG,GAAG,GAAG,GAAG,EAC5C,IAAI2rD,IAAMhiF,IAAajuB,EAAE+vG,GAAKjjH,EAAEkjH,IAChC,IAAGx2B,EAAQy2B,IAAMpC,EAAS3gH,EAAI,GAAGurF,GAAkB/5E,EAAI6rD,QAAQx8B,EAAMrvB,EAAIgvB,KAAK0qD,EAAUx8E,OACnFiyG,GAAS1+G,IAAMsa,EAAQwmB,OAAS5jC,EAAI0jH,SAAUC,IAAM3jH,EAAI4jH,UAAa9gH,MACpE0+G,GAAS3gH,EAAI,GAAGurF,GAAkB/5E,EAAI6rD,QAAQx8B,EAAMrvB,EAAIgvB,KAAK0qD,EAAUx8E,GAE/E,GAAGkzG,EAAW,EAAGjB,EAAS1pF,EAAI4qF,EAAelB,EAASj9D,MAAM,EAAK,GACjEq8D,IAAeY,EAAUpkG,EAASspC,EAAGn3C,KAAKuzG,SAC1Cb,GAAQ5vG,EAAIgvB,KAAMmgF,EAAUpkG,EAC5B4jG,GAAe3uG,EACd,MACF,IAAK,IAAQ,IAAK,KAAqB,CACtC,GAAG2uG,EAAc,CAChBA,EAAa3uG,IAAMA,CACnBmvG,GAAWX,GAAUxuG,EAAK2uG,EAAa3/E,KAAKkjB,KAAM,IAClDi9D,GAASv+E,GAAKy+E,EAAIF,EAASj9D,KAC3B,IAAGnnC,EAAQ6tF,YAAa,CACvBuW,EAAS3gH,EAAI,GAAGurF,GAAkB40B,EAAa9iD,QAASx8B,EAAOs/E,EAAa3/E,KAAM0qD,EAAUx8E,GAE7F,GAAGkzG,EAAW,EAAGjB,EAAS1pF,EAAI4qF,EAAelB,EAASj9D,MAAM,EAAK,GACjEq8D,IAAeY,EAAUpkG,EAASspC,EAAGn3C,KAAKuzG,SAC1Cb,GAAQjB,EAAa3/E,KAAMmgF,EAAUpkG,EACrC4jG,GAAe,SACT,MAAM,IAAI/jH,OAAM,iCACtB,MACF,IAAK,KAAQ,IAAK,KAAoB,CACrCqwF,EAAO3pF,KAAK0O,EACZ,IAAIwxG,IAAcjiF,GAAYvvB,EAAI,GAAG3Q,EACrCgT,GAAK0I,EAAQwmB,OAAS5jC,EAAIqS,EAAI,GAAG3Q,EAAEiS,QAAQtB,EAAI,GAAG3Q,EAAEjB,GAAKT,EAAI6jH,GAC7D,IAAGzmG,EAAQ6tF,aAAev2F,EAAI,CAC7B,IAAIssG,EAAc,KAClB,KAAI6C,KAAgBnvG,EAAI,KACxBA,GAAG7T,EAAI,GAAGurF,GAAkB/5E,EAAI,GAAIqvB,EAAOrvB,EAAI,GAAI05E,EAAUx8E,EAC7DmF,GAAG5R,EAAI8/B,GAAavwB,EAAI,KAExB,MACF,IAAK,MAAsB,CAC1B,IAAI+K,EAAQ6tF,YAAa,KACzB,IAAGmW,EAAW,CAEb,IAAIJ,EAAc,KAClB7zB,GAAQvrD,GAAYo/E,EAAa3/E,OAAQhvB,EAAI,EAC7CqC,GAAK0I,EAAQwmB,OAAS5jC,EAAIghH,EAAa3/E,KAAK1tB,QAAQqtG,EAAa3/E,KAAK5gC,GAAKT,EAAI4hC,GAAYo/E,EAAa3/E,QACvG3sB,OAAQ7T,EAAI,GAAGurF,GAAkB/5E,EAAI,GAAIqvB,EAAOy/E,EAAUp1B,EAAUx8E,IAErE,MACF,IAAK,KACJiyG,EAASX,GAAUjsE,EAAIviC,EAAIk4C,MAAMzhD,EAAGuJ,EAAIkyC,KAAM,IAC9C,IAAG3P,EAAIviC,EAAIk4C,MAAM9jC,EAAG+6F,EAAS/6F,EAAImuB,EAAIviC,EAAIk4C,MAAM9jC,CAC/C+6F,GAASv+E,GAAKy+E,EAAIF,EAASj9D,KAC3B,IAAGk+D,EAAW,EAAGjB,EAAS1pF,EAAI4qF,EAAelB,EAASj9D,MAAM,EAAK,GACjEq8D,IAAeY,EAAUpkG,EAASspC,EAAGn3C,KAAKuzG,SAC1Cb,IAASxhH,EAAE4R,EAAI5R,EAAGkT,EAAEtB,EAAIsB,GAAI6tG,EAAUpkG,EACtC,OACD,IAAK,KAAoB,GAAGA,EAAQknB,WAAY,CAC/Ck9E,GAAaj9D,KAAMlyC,EAAIkyC,KAAMthB,GAAIy+E,EAAIrvG,EAAIkyC,MAAOz7C,EAAE,IAClD,IAAG25G,EAAW,EAAGjB,EAAS1pF,EAAI4qF,EAAelB,EAASj9D,MAAM,EAAK,GACjEq8D,IAAeY,EAAUpkG,EAASspC,EAAGn3C,KAAKuzG,SAC1Cb,IAASxhH,EAAE4R,EAAI5R,EAAGkT,EAAEtB,EAAIsB,GAAI6tG,EAAUpkG,GACrC,MACF,IAAK,KAAuB,GAAGA,EAAQknB,WAAY,CAClD,IAAI,GAAIw/E,IAAKzxG,EAAI5R,EAAGqjH,IAAMzxG,EAAI9P,IAAKuhH,GAAI,CACtC,GAAIC,IAAQ1xG,EAAIkyC,KAAKu/D,GAAGzxG,EAAI5R,EAC5B+gH,IAAYj9D,KAAKw/D,GAAO9gF,GAAGy+E,EAAIqC,IAAQj7G,EAAE,IACzC,IAAG25G,EAAW,EAAGjB,EAAS1pF,EAAI4qF,EAAelB,EAASj9D,MAAM,EAAK,GACjEq8D,IAAeY,EAAUpkG,EAASspC,EAAGn3C,KAAKuzG,SAC1Cb,IAASxhH,EAAEqjH,GAAInwG,EAAEtB,EAAIsB,GAAI6tG,EAAUpkG,IAEnC,MACF,IAAK,MACL,IAAK,MAAoB,IAAK,GAC7BokG,EAASX,GAAUxuG,EAAIA,IAAKA,EAAIkyC,KAAM,IACtCi9D,GAASv+E,GAAKy+E,EAAIF,EAASj9D,KAC3B,IAAGk+D,EAAW,EAAGjB,EAAS1pF,EAAI4qF,EAAelB,EAASj9D,MAAM,EAAK,GACjEq8D,IAAeY,EAAUpkG,EAASspC,EAAGn3C,KAAKuzG,SAC1Cb,IAASxhH,EAAE4R,EAAI5R,EAAGkT,EAAEtB,EAAIsB,GAAI6tG,EAAUpkG,EACtC,OAED,IAAK,IAAQ,IAAK,KAAyB,CAC1C,GAAG8kG,IAAe,EAAGxgF,EAAQrvB,EAC5B,MACF,IAAK,KAAkB,CACtBuiC,EAAMviC,EACL,MACF,IAAK,MAAqB,CACzB,GAAG9C,EAAKiyB,MAAQ,EAAG,CAClBkhF,EAAcD,KAAcpwG,EAAI,EAChC,KAAI,GAAI2xG,IAAQ,EAAGA,GAAQvB,EAAW,MAAOuB,GAAO,GAAGn6G,EAAUm6G,KAAU3xG,EAAI,GAAI,KACnF,IAAG2xG,IAAS,IAAKrsG,GAAStF,EAAI,GAAIowG,EAAW,SAEzC9qG,IAAStF,EAAI,GAAIA,EAAI,IACzB,MACF,IAAK,IAA0B,CAC9BqwG,EAAcD,KAAcpwG,CAC5B,KAAI,GAAI4xG,IAAQ,EAAGA,GAAQxB,EAAW,MAAOwB,GAAO,GAAGp6G,EAAUo6G,KAAU5xG,EAAK,KAChF,IAAG4xG,IAAS,IAAKtsG,GAAStF,EAAKowG,EAAW,KACzC,MAEF,IAAK,KAAyBxxD,EAASA,EAAOjpD,OAAOqK,EAAM,OAE3D,IAAK,IAAkBusG,EAAQvsG,EAAIi/C,IAAI,IAAM/hD,EAAKmiD,QAAUr/C,CAAK,OACjE,IAAK,KAAkB9C,EAAKmiD,QAAQwyD,IAAM7xG,CAAK,OAC/C,IAAK,KAAqB9C,EAAKmiD,QAAQyyD,OAAS9xG,CAAK,OAErD,IAAK,KAAoB,CACxB,IAAIkvG,EAAOlvG,EAAI,GAAG3Q,EAAEiS,EAAG4tG,GAAQlvG,EAAI,GAAGnW,EAAEyX,IAAK4tG,EAC5C,IAAID,EAAOjvG,EAAI,GAAG3Q,EAAEjB,EAAG6gH,GAAQjvG,EAAI,GAAGnW,EAAEuE,IAAK6gH,EAAM,CAClD5sG,EAAK0I,EAAQwmB,OAAS5jC,EAAIuhH,QAAWD,GAAQthH,EAAI4hC,IAAanhC,EAAE6gH,EAAK3tG,EAAE4tG,IACvE,IAAG7sG,EAAIA,EAAGhR,EAAI2O,EAAI,IAEnB,MACF,IAAK,MAA2B,CAC/B,IAAIkvG,EAAOlvG,EAAI,GAAG3Q,EAAEiS,EAAG4tG,GAAQlvG,EAAI,GAAGnW,EAAEyX,IAAK4tG,EAC5C,IAAID,EAAOjvG,EAAI,GAAG3Q,EAAEjB,EAAG6gH,GAAQjvG,EAAI,GAAGnW,EAAEuE,IAAK6gH,EAAM,CAClD5sG,EAAK0I,EAAQwmB,OAAS5jC,EAAIuhH,QAAWD,GAAQthH,EAAI4hC,IAAanhC,EAAE6gH,EAAK3tG,EAAE4tG,IACvE,IAAG7sG,GAAMA,EAAGhR,EAAGgR,EAAGhR,EAAEogD,QAAUzxC,EAAI,IAEnC,MACF,IAAK,IAAmB,CACvB,GAAG9C,EAAKiyB,MAAQ,GAAKjyB,EAAKiyB,MAAQ,EAAG,KACrC9sB,GAAK0I,EAAQwmB,OAAS5jC,EAAIqS,EAAI,GAAGsB,QAAQtB,EAAI,GAAG5R,GAAKT,EAAI4hC,GAAYvvB,EAAI,IACzE,IAAI+xG,IAAUxF,EAAQvsG,EAAI,GAC1B,KAAIqC,EAAI,CACP,GAAG0I,EAAQwmB,MAAO,CACjB,IAAI5jC,EAAIqS,EAAI,GAAGsB,GAAI3T,EAAIqS,EAAI,GAAGsB,KAC9Be,GAAK1U,EAAIqS,EAAI,GAAGsB,GAAGtB,EAAI,GAAG5R,IAAOqI,EAAE,SAC7B,CACN4L,EAAK1U,EAAI4hC,GAAYvvB,EAAI,MAASvJ,EAAE,KAErC44B,EAAMxlC,EAAEyX,EAAIxK,KAAKmM,IAAIosB,EAAMxlC,EAAEyX,EAAGtB,EAAI,GAAGsB,EACvC+tB,GAAMhgC,EAAEiS,EAAIxK,KAAKkM,IAAIqsB,EAAMhgC,EAAEiS,EAAGtB,EAAI,GAAGsB,EACvC+tB,GAAMxlC,EAAEuE,EAAI0I,KAAKmM,IAAIosB,EAAMxlC,EAAEuE,EAAG4R,EAAI,GAAG5R,EACvCihC,GAAMhgC,EAAEjB,EAAI0I,KAAKkM,IAAIqsB,EAAMhgC,EAAEjB,EAAG4R,EAAI,GAAG5R,GAExC,IAAIiU,EAAGjU,EAAGiU,EAAGjU,IACb4gH,IAAQj6F,EAAE/U,EAAI,GAAGvJ,EAAEs7G,GAAQF,IAAIp7G,EAC/B4L,GAAGjU,EAAEkD,KAAK09G,GACT,MACF,IAAK,MAAoB9jC,GAAamkC,EAAIrvG,EAAIkyC,MAAOlyC,EAAIqa,IAAM,OAC/D,IAAK,KAAsB,CAC1B,IAAInd,EAAKs8C,WAAY,KACrB,OAAMx5C,EAAInW,GAAKmW,EAAI3Q,EAAG,CACrB+7D,EAAQprD,EAAInW,MAAS4lD,MAAOzvC,EAAIpS,EAAE,IAAKioD,MAAQ71C,EAAI61C,OAAS,EAAIb,UAAWh1C,EAAIoK,MAAQ,GACvF,KAAI2rF,EAAS,CAAEA,EAAU,IAAMzzB,IAActiE,EAAIpS,EAAE,KACnDs+D,GAAYd,EAAQprD,EAAInW,EAAE,KAE1B,MACF,IAAK,KAAkB,CACtB,GAAIsuG,MACJ,IAAGn4F,EAAI61C,OAAS,KAAM,CAAEsV,EAAQnrD,EAAIsB,GAAK62F,EAAQA,IAAOtiD,MAAQ71C,EAAI61C,MACpE,GAAG71C,EAAIg1C,OAAQ,CAAEmW,EAAQnrD,EAAIsB,GAAK62F,EAAQA,IAAOnjD,OAAS,KAC1D,GAAGh1C,EAAI81C,IAAK,CACXqV,EAAQnrD,EAAIsB,GAAK62F,EACjBA,IAAOriD,IAAM91C,EAAI81C,GAAKqiD,IAAOhsC,IAAMC,GAAMpsD,EAAI81C,MAE7C,MACF,IAAK,KACL,IAAK,KACL,IAAK,KACL,IAAK,IACJ,IAAInoD,EAAI,YAAakkG,GAAgBlkG,EAAI,eACzCA,GAAI,aAAc+K,GAAM,OAAQC,GAAK,QAASC,GAAK,MAAOoD,GAAK,UAAWmyG,IAAenuG,CACzF,OACD,IAAK,KACJ,IAAIrS,EAAI,YAAakkG,GAAgBlkG,EAAI,eACzCA,GAAI,YAAYie,OAAS5L,EAAI4L,MAC7Bje,GAAI,YAAYgzD,OAAS3gD,EAAI2gD,MAC7B,OACD,IAAK,KAEJ,GAAG3gD,EAAI03C,IAAKu9C,EAASwB,MAAM,GAAG/+C,IAAM,IACpC,OACD,IAAK,KAAsB43D,EAAUtvG,CAAK,OAC1C,IAAK,MAAoB0hC,EAAS1hC,CAAK,OACvC,IAAK,KAAsBovG,EAAUpvG,CAAK,OAC1C,IAAK,KAAuB,CAChC,IAAI4uG,EAAW3Z,EAASmM,QAAQxM,SAAW50F,GAAO,mBACxCwpG,GAAQ5U,SAAW50F,GAAOwpG,EAAQn9F,KACtC,YAEG,CACN,IAAIxD,EAAGmK,QAAQC,MAAM,iCAAmCk7F,EAAWpgH,SAAS,IAC5Emc,GAAK7Y,GAAKtH,GAGZsqD,EAAGljB,WAAWlkC,GAAKyhH,GAAWp+F,KAAK,SAASyE,EAAEf,GAAK,MAAO0O,QAAO3N,GAAK2N,OAAO1O,KAAOhlB,IAAI,SAASjD,GAAG,MAAO2iH,GAAU3iH,GAAGsgB,MACxH,KAAItB,EAAQogG,WAAY92D,EAAGjjB,OAAOA,CAClC,KAAIijB,EAAGljB,WAAWpnC,QAAU8kH,EAAS,QAAS,CAC7Cx6D,EAAGljB,WAAW7/B,KAAK,SAEnB,IAAG+iD,EAAGjjB,OAAQijB,EAAGjjB,OAAO,UAAYy9E,MAE9Bx6D,GAAGw6D,SAASA,CACnB,IAAGx6D,EAAGjjB,OAAQk/E,EAAgB7gH,QAAQ,SAAS6R,EAAExX,GAAKuqD,EAAGjjB,OAAOijB,EAAGljB,WAAWrnC,IAAI,eAAiBwX,GACnG+yC,GAAG8iD,QAAU50D,CACb8R,GAAG3uC,IAAM4c,GAAI9qB,EACb,IAAG0F,EAAKhT,IAAKmqD,EAAG29D,WAAa90G,EAAKhT,GAClC,IAAGw3C,EAAQ2S,EAAG61B,OAASxoC,CACvB2S,GAAG49D,WACH,IAAG7C,IAAYt9G,UAAWuiD,EAAG49D,SAASC,QAAU9C,CAChD,IAAG11B,EAASa,MAAMxwF,OAAS,EAAGkrG,EAASoB,MAAQ3c,EAASa,KACxDlmC,GAAG4gD,SAAWA,CACd,OAAO5gD,GAIR,GAAI89D,KACHC,GAAI,mCACJC,IAAK,mCACLC,IAAK,mCAEN,SAASC,IAAgB9iG,EAAK83B,EAAO7zC,GAEpC,GAAI2+G,GAAM3pG,GAAImH,KAAKJ,EAAK,+BACxB,IAAG4iG,GAAOA,EAAI1kG,KAAO,EAAG,IACvB,GAAI6kG,GAAa9kE,GAAwB2kE,EAAKn6E,GAAkBi6E,GAAQE,IACxE,KAAI,GAAI1oH,KAAK6oH,GAAYjrE,EAAM59C,GAAK6oH,EAAW7oH,GAC9C,MAAME,GAAI,GAAG6J,EAAE40B,IAAK,KAAMz+B,GAG5B,GAAIuoH,GAAK1pG,GAAImH,KAAKJ,EAAK,uBACvB,IAAG2iG,GAAMA,EAAGzkG,KAAO,EAAG,IACrB,GAAI8kG,GAAU/kE,GAAwB0kE,EAAI95E,GAAc65E,GAAQC,GAChE,KAAI,GAAI/iH,KAAKojH,GAAS,GAAGlrE,EAAMl4C,IAAM,KAAMk4C,EAAMl4C,GAAKojH,EAAQpjH,GAC7D,MAAMxF,GAAI,GAAG6J,EAAE40B,IAAK,KAAMz+B,GAE5B,GAAG09C,EAAMS,cAAgBT,EAAMU,cAAe,CAC7Cb,GAAiBG,EAAMS,aAAcT,EAAMU,cAAeV,EAAO7zC,SAC1D6zC,GAAMS,mBAAqBT,GAAMU,eAG1C,QAASyqE,IAAgBr+D,EAAI5kC,GAC5B,GAAIkjG,MAAgBC,KAAeC,IACnC,IAAI/oH,GAAI,EAAGgpH,CACX,IAAIC,GAAe7zF,GAAUgZ,GAAkB,IAC/C,IAAI86E,GAAY9zF,GAAUoZ,GAAc,IACxC,IAAG+b,EAAGtN,MAAO,CACZ+rE,EAAO7lH,GAAKonD,EAAGtN,MAEf,KAAIj9C,EAAI,EAAGA,EAAIgpH,EAAK/oH,SAAUD,GAAIoD,OAAO8xB,UAAUC,eAAejxB,KAAK+kH,EAAcD,EAAKhpH,IAAM6oH,EAAYzlH,OAAO8xB,UAAUC,eAAejxB,KAAKglH,EAAWF,EAAKhpH,IAAM8oH,EAAWC,GAAUvhH,MAAMwhH,EAAKhpH,GAAIuqD,EAAGtN,MAAM+rE,EAAKhpH,MAE1N,GAAGuqD,EAAGnK,UAAW,CAChB4oE,EAAO7lH,GAAKonD,EAAGnK,UAEf,KAAIpgD,EAAI,EAAGA,EAAIgpH,EAAK/oH,SAAUD,EAAG,IAAIoD,OAAO8xB,UAAUC,eAAejxB,KAAMqmD,EAAGtN,UAAY+rE,EAAKhpH,KAAMoD,OAAO8xB,UAAUC,eAAejxB,KAAK+kH,EAAcD,EAAKhpH,IAAM6oH,EAAYzlH,OAAO8xB,UAAUC,eAAejxB,KAAKglH,EAAWF,EAAKhpH,IAAM8oH,EAAWC,GAAUvhH,MAAMwhH,EAAKhpH,GAAIuqD,EAAGnK,UAAU4oE,EAAKhpH,MAEjS,GAAImpH,KACJ,KAAInpH,EAAI,EAAGA,EAAI+oH,EAAS9oH,SAAUD,EAAG,CACpC,GAAGgjD,GAAUz8C,QAAQwiH,EAAS/oH,GAAG,KAAO,GAAKq9C,GAAiB92C,QAAQwiH,EAAS/oH,GAAG,KAAO,EAAG,QAC5F,IAAG+oH,EAAS/oH,GAAG,IAAM,KAAM,QAC3BmpH,GAAU3hH,KAAKuhH,EAAS/oH,IAEzB,GAAG8oH,EAAS7oH,OAAQ2e,GAAIlX,MAAMunB,QAAQtJ,EAAK,uBAA6B4+B,GAAwBukE,EAAUT,GAAQC,GAAIY,EAAW16E,IACjI,IAAGq6E,EAAU5oH,QAAUkpH,EAAUlpH,OAAQ2e,GAAIlX,MAAMunB,QAAQtJ,EAAK,+BAAqC4+B,GAAwBskE,EAAWR,GAAQE,IAAKU,EAAc76E,GAAkB+6E,EAAUlpH,OAASkpH,EAAY,KAAMd,GAAQG,MAGnO,QAASY,IAAazjG,EAAK1E,GAC3B,IAAIA,EAASA,IACbugG,IAAcvgG,EACdvX,IACA,IAAGuX,EAAQs5C,SAAUhxD,EAAS0X,EAAQs5C,SACtC,IAAI8uD,GAASjwE,CACb,IAAGzzB,EAAI/C,UAAW,CACjB,GAAGhE,GAAImH,KAAKJ,EAAK,eAAgB,KAAM,IAAI7kB,OAAM,6BACjDuoH,GAAUzqG,GAAImH,KAAKJ,EAAK,WACxByzB,GAAKx6B,GAAImH,KAAKJ,EAAK,cAAgB/G,GAAImH,KAAKJ,EAAK,aAC3C,CACN,OAAO1E,EAAQjL,MACd,IAAK,SAAU2P,EAAMxa,EAAIP,EAAc+a,GAAO,OAC9C,IAAK,SAAUA,EAAMxa,EAAIwa,EAAM,OAC/B,IAAK,SAAU,MACf,IAAK,QAAS,IAAI/e,MAAM4E,QAAQma,GAAMA,EAAM/e,MAAMsuB,UAAUlxB,MAAME,KAAKyhB,EAAM,QAE9EtF,GAAUsF,EAAK,EACfyzB,IAAOltC,QAASyZ,GAEjB,GAAI2jG,EAEJ,IAAI3vF,EACJ,IAAG0vF,EAASxF,GAAcwF,EAC1B,IAAGpoG,EAAQqgG,YAAcrgG,EAAQogG,WAAYiI,SACxC,CACJ,GAAI51G,GAAIrR,EAAU,SAAW,OAC7B,IAAG+2C,GAAMA,EAAGltC,QAASo9G,EAAY3E,GAAevrE,EAAGltC,QAAS+U,OAEvD,KAAI0Y,EAAM/a,GAAImH,KAAKJ,EAAK,wBAA0BgU,EAAMztB,QAASo9G,EAAYnjD,GAAIhK,YAAYxiC,EAAMztB,SAAU+U,EAAQjL,KAAOtC,EAAGuN,QAE/H,KAAI0Y,EAAM/a,GAAImH,KAAKJ,EAAK,wBAA0BgU,EAAMztB,QAASo9G,EAAYnjD,GAAIhK,YAAYxiC,EAAMztB,SAAU+U,EAAQjL,KAAOtC,EAAGuN,QAE/H,KAAI0Y,EAAM/a,GAAImH,KAAKJ,EAAK,SAAWgU,EAAMztB,QAAS,KAAM,IAAIpL,OAAM,wCAClE,MAAM,IAAIA,OAAM,8BACrB,IAAGmgB,EAAQsoG,SAAW5jG,EAAI/C,WAAahE,GAAImH,KAAKJ,EAAK,6BAA8B2jG,EAAUre,OAASjkB,GAAarhE,GAGpH,GAAI83B,KACJ,IAAG93B,EAAI/C,UAAW6lG,GAAgB9iG,EAAK83B,EAAOx8B,EAE9CqoG,GAAUrsE,MAAQqsE,EAAUlpE,UAAY3C,CACxC,IAAGx8B,EAAQuoG,UAAWF,EAAU3jG,IAAMA,CAEtC,OAAO2jG,GAIP,QAASG,IAAal/D,EAAIn3C,GACzB,GAAIxJ,GAAIwJ,KACR,IAAIuS,GAAM/G,GAAIlX,MAAMwqB,SAASxxB,KAAK,KAClC,IAAIgpH,GAAS,WACb,QAAO9/G,EAAEqvC,UAAY,OACpB,IAAK,MAAOrvC,EAAEqvC,SAAW,QAEzB,IAAK,MAAO,IAAIrvC,EAAEqvC,SAAUrvC,EAAEqvC,SAAW,MAEzC,IAAK,QAASywE,EAAS,WAAa9/G,GAAEy7B,KAAO,CAAG,OAChD,IAAK,QAASqkF,EAAS,OAAS9/G,GAAEy7B,KAAO,CAAG,OAC5C,QAAS,KAAM,IAAIvkC,OAAM,gBAAkB8I,EAAEqvC,SAAW,iBAEzDr6B,GAAIlX,MAAMunB,QAAQtJ,EAAK+jG,EAAQC,GAAep/D,EAAI3gD,GAClD,IAAGA,EAAEy7B,MAAQ,IAAMklB,EAAGtN,OAASsN,EAAGnK,WAAYwoE,GAAgBr+D,EAAI5kC,EAElE,IAAG/b,EAAEy7B,MAAQ,GAAKklB,EAAG0gD,OAAQ9jB,GAAaxhE,EAAK/G,GAAI6G,KAAK8kC,EAAG0gD,QAASj1F,WAAau0C,GAAG0gD,QAAU,SAAW,SAAW,WACpH,OAAOtlF,GAGR,GAAIue,KACJ/7B,GAA+BzD,EAAE2rG,IACjCjoG,GAAkC1D,EAAEwsG,IACpC7oG,GAA+B3D,EAAE+tG,IACjC9kG,GAAkCjJ,EAAEktG,IACpChkG,GAAiClJ,EAAE6sG,IACnCjiG,GAAiC5K,EAAE2tG,IACnC9iG,GAA+B7K,EAAEouG,IACjCtjG,GAAiC9K,EAAEutG,IACnCxiG,GAAmC/K,EAAE2uG,IACrCxlG,GAAgCnJ,EAAE0uG,IAClCtlG,IAAiCpJ,EAAEwuG,IACnCnlG,IAAkCrJ,EAAEyuG,IACpCnlG,IAAmCtJ,EAAE2sG,IACrCpjG,IAAgCvJ,EAAEiuG,IAClCzkG,IAAmCxJ,EAAEqtG,IACrC5jG,IAAkCzJ,EAAEgtG,IACpCtjG,IAAkC1J,EAAE6tG,IACpClkG,IAAgC3J,EAAEsuG,IAClC1kG,IAAkC5J,EAAEytG,IACpC5jG,IAAgC7J,EAAEwkC,IAClC16B,MACAC,MACAC,MACAgB,MACAC,MACAC,MACAC,MACAC,MACAC,MACAC,MACAC,MACAC,MACAmM,MACAC,MACAC,MACAC,IAAiC9I,EAAE,GACnC+I,IAA+B/I,GAAG,GAClC/E,IAAgC+E,EAAE,GAClC9E,IAA8B8E,GAAG,GACjC7E,IAA6BnK,EAAE41G,IAC/BxrG,MACAqD,MACAC,IAA6B1N,EAAEq4E,IAC/B1qE,IAA4B3N,EAAEk4E,IAC9B7tE,IAA6BrK,EAAE64E,IAC/BvuE,IAA+BtK,EAAEs5E,IACjC/uE,IAA2BvK,EAAEg5E,IAC7BxuE,MACAC,IAAiCzK,EAAE6jC,IACnCp4B,MACAC,IAA2B1L,EAAE+8E,IAC7BpxE,IAAiCqD,EAAE,GACnCpD,IAA+BoD,GAAG,GAClCnD,IAAiCmD,EAAE,GACnClD,IAA+BkD,GAAG,GAClCtE,IAAsCsE,EAAE,GACxCjD,IAAoCiD,GAAG,GACvChD,MACAC,MACAC,IAAgClM,EAAE+xD,IAClC3lD,IAAoCpM,EAAEmuG,IACtC/gG,IAAuCpN,EAAE+9E,IACzC1wE,IAA6BrN,EAAEgwG,IAC/B1iG,MACAC,MACAlB,MACAC,MACA1H,MACA2H,MACA1I,OACAC,KAAmCkL,EAAE,GACrCjL,KAAiCiL,GAAG,GACpCw/E,KAAkCx/E,EAAE,EAAGhP,EAAEk/B,GAAW1kB,EAAE,GACtDi0E,KAAgCz/E,GAAG,GACnC0/E,KAAqC1/E,EAAE,GACvChL,KAAmCgL,GAAG,GACtCmmD,KAAuCnmD,EAAE,GACzC/K,KAAqC+K,GAAG,GACxC2/E,KAAoC3/E,EAAE,EAAGhP,EAAE4vG,IAC3ChhB,KAAkC5/E,GAAG,GACrC6/E,KAAqC7/E,EAAE,GACvC8/E,KAAmC9/E,GAAG,GACtC2tF,KAAoC3tF,EAAE,GACtCy2D,KAAkCz2D,GAAG,GACrC+/E,KAAuC//E,EAAE,GACzCggF,KAAqChgF,GAAG,GACxCigF,KAAuCjgF,EAAE,GACzCkgF,KAAqClgF,GAAG,GACxC02D,KAA+B1lE,EAAEssG,IACjCnd,KAA8BnvF,EAAEmsG,GAAgB3xF,EAAE,IAClDi6C,KAA6Bz0D,EAAEovG,IAC/B16C,OACAiR,KAA+B3lE,EAAEw0G,IACjC5uC,OACAC,OACAC,KAAiC9lE,EAAEo0G,IACnCxX,OACAC,OACAxN,KAAiCrgF,EAAE,EAAGhP,EAAEysE,IACxCqwB,KAA+B9tF,GAAG,GAClC9K,KAAqC8K,EAAE,EAAGhP,EAAEkmC,IAC5C/hC,KAAmC6K,GAAG,GACtC5K,KAA0C4K,EAAE,GAC5CsgF,KAAwCtgF,GAAG,GAC3C+tF,KAAqC/tF,EAAE,GACvCugF,KAAmCvgF,GAAG,GACtCwgF,OACAC,OACAC,OACAC,OACAC,OACAC,KAA2C7gF,EAAE,GAC7C8gF,KAAyC9gF,GAAG,GAC5C+2D,OACAC,OACAC,KAAkCjmE,EAAE4uG,IACpCvqG,KAAwC2K,EAAE,GAC1C1K,KAAsC0K,GAAG,GACzCguF,KAA2ChuF,EAAE,GAC7CiuF,KAAyCjuF,GAAG,GAC5CkuF,KAAuCluF,EAAE,GACzCmuF,KAAqCnuF,GAAG,GACxCouF,KAAsCpuF,EAAE,GACxCk3D,KAAoCl3D,GAAG,GACvCm3D,KAAuCn3D,EAAE,GACzCzK,KAAqCyK,GAAG,GACxCo3D,KAAuCp3D,EAAE,GACzCq3D,KAAqCr3D,GAAG,GACxC+gF,KAAsC/gF,EAAE,GACxCghF,KAAoChhF,GAAG,GACvCihF,KAAqCjhF,EAAE,GACvCkhF,KAAmClhF,GAAG,GACtCmhF,KAA+CnhF,EAAE,GACjDohF,KAA6CphF,GAAG,GAChDs3D,KAA4Ct3D,EAAE,GAC9CqhF,KAA0CrhF,GAAG,GAC7CshF,KAA0CthF,EAAE,GAC5CuhF,KAAwCvhF,GAAG,GAC3CwhF,KAA6CxhF,EAAE,GAC/C2lD,KAA2C3lD,GAAG,GAC9C4lD,KAA2C5lD,EAAE,GAC7C6lD,KAAyC7lD,GAAG,GAC5C8lD,KAAuC9lD,EAAE,GACzCxK,KAAqCwK,GAAG,GACxCu3D,KAAyCv3D,EAAE,GAC3Cw3D,KAAuCx3D,GAAG,GAC1Cy3D,KAAwCz3D,EAAE,GAC1C03D,KAAsC13D,GAAG,GACzCyhF,KAAwCzhF,EAAE,GAC1C0hF,KAAsC1hF,GAAG,GACzC2hF,KAAuC3hF,EAAE,GACzC4hF,KAAqC5hF,GAAG,GACxCo7B,KAAwCp7B,EAAE,GAC1C6hF,KAAsC7hF,GAAG,GACzC8hF,KAAuC9hF,EAAE,GACzCq7B,KAAqCr7B,GAAG,GACxC+hF,KAAsC/hF,EAAE,GACxCs7B,KAAoCt7B,GAAG,GACvCgiF,KAAuChiF,EAAE,GACzCiiF,KAAqCjiF,GAAG,GACxCquF,KAAwCruF,EAAE,GAC1CvK,KAAsCuK,GAAG,GACzCkiF,KAAwCliF,EAAE,GAC1CmiF,KAAsCniF,GAAG,GACzCoiF,KAA2CpiF,EAAE,GAC7CqiF,KAAyCriF,GAAG,GAC5CsiF,KAA6CtiF,EAAE,GAC/CuiF,KAA2CviF,GAAG,GAC9CwiF,KAA4CxiF,EAAE,GAC9CsuF,KAA0CtuF,GAAG,GAC7CuuF,KAA6CvuF,EAAE,GAC/CwuF,KAA2CxuF,GAAG,GAC9CyuF,KAA4CzuF,EAAE,GAC9C0uF,KAA0C1uF,GAAG,GAC7C2uF,KAA4C3uF,EAAE,GAC9C4uF,KAA0C5uF,GAAG,GAC7C6uF,KAA0C7uF,EAAE,GAC5CtK,KAAwCsK,GAAG,GAC3C8uF,KAAyC9uF,EAAE,GAC3CyiF,KAAuCziF,GAAG,GAC1C+uF,KAAwC/uF,EAAE,GAC1CgvF,KAAsChvF,GAAG,GACzC0iF,KAA0C1iF,EAAE,GAC5CivF,KAAwCjvF,GAAG,GAC3CkvF,KAAyClvF,EAAE,GAC3CmvF,KAAuCnvF,GAAG,GAC1CovF,KAAmCpvF,EAAE,GACrCqvF,KAAiCrvF,GAAG,GACpC2iF,KAAuC3iF,EAAE,GACzC4iF,KAAqC5iF,GAAG,GACxC6iF,KAAsC7iF,EAAE,GACxC8iF,KAAoC9iF,GAAG,GACvC+iF,KAAoC/iF,EAAE,GACtCgjF,KAAkChjF,GAAG,GACrCrK,KAAmCqK,EAAE,GACrC23D,KAAiC33D,GAAG,GACpCsvF,KAAqCtvF,EAAE,GACvCuvF,KAAmCvvF,GAAG,GACtC43D,KAAoC53D,EAAE,GACtC63D,KAAkC73D,GAAG,GACrC83D,KAAwC93D,EAAE,GAC1C+3D,KAAsC/3D,GAAG,GACzCg4D,KAAwCh4D,EAAE,GAC1CwvF,KAAsCxvF,GAAG,GACzCi4D,KAAsCj4D,EAAE,GACxCk4D,KAAoCl4D,GAAG,GACvCm4D,KAAqCn4D,EAAE,GACvCo4D,KAAmCp4D,GAAG,GACtCijF,KAAqCjjF,EAAE,GACvCq4D,KAAmCr4D,GAAG,GACtCs4D,KAAoCt4D,EAAE,GACtCkjF,KAAkCljF,GAAG,GACrCmjF,KAAkCnjF,EAAE,GACpCojF,KAAgCpjF,GAAG,GACnCyvF,KAAiCzvF,EAAE,GACnCqjF,KAA+BrjF,GAAG,GAClCsjF,OACAC,KAAwCvjF,EAAE,GAC1CwjF,KAAsCxjF,GAAG,GACzCyjF,KAAoCzjF,EAAE,GACtC0jF,KAAgC1jF,GAAG,GACnC2jF,KAAkC3jF,EAAE,GACpC4jF,KAAmC5jF,EAAE,GACrC6jF,KAAiC7jF,GAAG,GACpC8jF,KAAkC9jF,EAAE,GACpC0vF,KAAgC1vF,GAAG,GACnC2vF,KAAmC3vF,EAAE,GACrC+jF,KAAiC/jF,GAAG,GACpCgkF,KAAkChkF,EAAE,GACpCikF,KAAgCjkF,GAAG,GACnCkkF,KAAmClkF,EAAE,GACrCmkF,KAAiCnkF,GAAG,GACpCokF,KAAkCpkF,EAAE,GACpC4vF,KAAgC5vF,GAAG,GACnCqkF,KAAmCrkF,EAAE,GACrCskF,KAAiCtkF,GAAG,GACpCukF,KAAkCvkF,EAAE,GACpCwkF,KAAgCxkF,GAAG,GACnC6vF,KAAqC7vF,EAAE,GACvC8vF,KAAmC9vF,GAAG,GACtC+vF,KAAsC/vF,EAAE,GACxCykF,KAAoCzkF,GAAG,GACvCgwF,KAAsChwF,EAAE,GACxCiwF,KAAoCjwF,GAAG,GACvC0kF,KAAuC1kF,EAAE,GACzC2kF,KAAqC3kF,GAAG,GACxC4kF,KAAsC5kF,EAAE,GACxC6kF,KAAoC7kF,GAAG,GACvC8kF,KAAsC9kF,EAAE,GACxC+kF,KAAoC/kF,GAAG,GACvCglF,KAAuChlF,EAAE,GACzCilF,KAAqCjlF,GAAG,GACxCklF,KAAsCllF,GAAG,GACzCmlF,KAAwCnlF,EAAE,GAC1ColF,KAAkCplF,GAAG,GACrCqlF,KAAmCrlF,EAAE,GACrCkwF,KAAiClwF,GAAG,GACpCslF,KAAkCtlF,EAAE,GACpCulF,KAAgCvlF,GAAG,GACnCwlF,KAAsCxlF,EAAE,GACxCylF,KAAoCzlF,GAAG,GACvC0lF,KAAuC1lF,EAAE,GACzC2lF,KAAqC3lF,GAAG,GACxC4lF,KAAqC5lF,EAAE,GACvC6lF,KAAmC7lF,GAAG,GACtCmwF,KAAoCnwF,EAAE,GACtCowF,KAAkCpwF,GAAG,GACrC8lF,KAAuC9lF,EAAE,GACzCqwF,KAAqCrwF,GAAG,GACxC+lF,KAAsC/lF,EAAE,GACxCswF,KAAoCtwF,GAAG,GACvCuwF,KAAsCvwF,EAAE,GACxCk2G,KAAoCl2G,GAAG,GACvCwwF,KAAuCxwF,EAAE,GACzCywF,KAAgCz/F,EAAE68E,IAClCmY,KAAqChmF,GAAG,GACxC0wF,KAAmC1/F,EAAEk9E,GAAqBluE,EAAE,GAC5DimF,KAAiCjmF,GAAG,GACpCkmF,KAAmClmF,EAAE,GACrC2wF,KAAiC3wF,GAAG,GACpC4wF,KAAyC5wF,EAAE,GAC3CmmF,KAAuCnmF,GAAG,GAC1ComF,KAAkCpmF,EAAE,GACpCqmF,KAAgCrmF,GAAG,GACnC6wF,KAAsC7wF,EAAE,GACxC8wF,KAAoC9wF,GAAG,GACvC+wF,KAAqC/wF,EAAE,GACvCgxF,KAAmChxF,GAAG,GACtCixF,KAAwCjxF,EAAE,GAC1CsmF,KAAsCtmF,GAAG,GACzCu7B,OACAgrD,OACA2K,KAAuClxF,EAAE,GACzCw7B,KAAqCx7B,GAAG,GACxCwmF,KAAmCx1F,EAAEwlC,IACrC26D,OACA11D,OACA21D,OACAC,KAAqCrxF,EAAE,GACvCsxF,OACAC,KAAoCvgG,EAAE+uD,IACtCyxC,OACAC,OACAE,OACAC,OACAC,OACAC,OACApL,OACAqL,OACAC,KAAmChyF,EAAE,GACrC2mF,KAAiC3mF,GAAG,GACpC4mF,KAAoC5mF,EAAE,GACtC6mF,KAAkC7mF,GAAG,GACrC8mF,KAAwC9mF,EAAE,GAC1C+mF,KAAsC/mF,GAAG,GACzCgnF,KAAoChnF,EAAE,GACtCinF,KAAkCjnF,GAAG,GACrCknF,KAAmClnF,EAAE,GACrCmnF,KAAiCnnF,GAAG,GACpConF,KAAqCpnF,EAAE,GACvCqnF,KAAmCrnF,GAAG,GACtCu4D,KAA2Cv4D,EAAE,GAC7CsnF,KAAyCtnF,GAAG,GAC5CunF,KAA0CvnF,EAAE,GAC5CiyF,KAAwCjyF,GAAG,GAC3CwnF,KAAoCxnF,EAAE,GACtCw4D,KAAkCx4D,GAAG,GACrCy4D,KAAsCz4D,EAAE,GACxCynF,KAAoCznF,GAAG,GACvC0nF,KAAmC1nF,EAAE,GACrC04D,KAAiC14D,GAAG,GACpC2nF,KAAoC3nF,EAAE,GACtC4nF,KAAkC5nF,GAAG,GACrC24D,OACAkvB,OACAC,OACAC,OACAC,OACAkK,KAAmClyF,EAAE,GACrCoyF,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACA3K,OACAC,OACAC,OACAC,OACAC,OACAC,OACAuK,OACAC,OACAp3D,OACA6sD,OACAC,KAAyCxoF,EAAE,GAC3CyoF,KAAwCzoF,EAAE,GAC1C0oF,KAAsC1oF,GAAG,GACzC2oF,KAAuC3oF,GAAG,GAC1C+yF,KAAgC/hG,EAAEqvG,IAClCrN,KAAgChiG,EAAEuvG,IAClCtN,OACAC,KAA4ClzF,EAAE,GAC9C4oF,KAA0C5oF,GAAG,GAC7C6oF,KAAyC7oF,EAAE,GAC3C8oF,KAAuC9oF,GAAG,GAC1C+oF,KAAwC/oF,EAAE,GAC1CgpF,KAAsChpF,GAAG,GACzCipF,KAAyCjpF,EAAE,GAC3CkpF,KAAuClpF,GAAG,GAC1CmpF,KAAwCnpF,EAAE,GAC1CopF,KAAsCppF,GAAG,GACzCqpF,KAA0CrpF,EAAE,GAC5CspF,KAAwCtpF,GAAG,GAC3CupF,KAAyCvpF,EAAE,GAC3CwpF,KAAuCxpF,GAAG,GAC1CypF,KAA4CzpF,EAAE,GAC9C0pF,KAA0C1pF,GAAG,GAC7C2pF,KAA2C3pF,EAAE,GAC7C4pF,KAAyC5pF,GAAG,GAC5C6pF,KAAiC7pF,EAAE,GACnC8pF,KAA+B9pF,GAAG,GAClC+pF,KAAkC/pF,EAAE,GACpCgqF,KAAgChqF,GAAG,GACnCiqF,KAA0CjqF,EAAE,GAC5CkqF,KAAwClqF,GAAG,GAC3CmqF,KAAyCnqF,EAAE,GAC3CoqF,KAAuCpqF,GAAG,GAC1CqqF,KAAmCrqF,EAAE,GACrCsqF,KAAiCtqF,GAAG,GACpCmzF,KAAkCnzF,EAAE,GACpCuqF,KAAgCvqF,GAAG,GACnCwqF,KAA2CxqF,EAAE,GAC7CyqF,KAAyCzqF,GAAG,GAC5C0qF,KAAmD1qF,EAAE,GACrD2qF,KAAiD3qF,GAAG,GACpD4qF,KAAoC5qF,EAAE,GACtC6qF,KAAkC7qF,GAAG,GACrC8qF,KAAqC9qF,EAAE,GACvC+qF,KAAmC/qF,GAAG,GACtCgrF,KAAqChrF,EAAE,GACvCirF,KAAmCjrF,GAAG,GACtCkrF,KAAwClrF,EAAE,GAC1CmrF,KAAsCnrF,GAAG,GACzCorF,OACAC,OACAC,KAA0CtrF,EAAE,GAC5CurF,KAAwCvrF,GAAG,GAC3CwrF,OACAC,KAAgCz6F,EAAE0vG,IAClChV,OACAC,OACA0H,KAA0CrzF,EAAE,GAC5C4rF,KAAwC5rF,GAAG,GAC3C6rF,KAAyC7rF,EAAE,GAC3C8rF,KAAuC9rF,GAAG,GAC1CszF,KAA0CtzF,EAAE,GAC5CuzF,KAAwCvzF,GAAG,GAC3C+rF,KAAkC/6F,EAAEqsG,IACpC8Y,KAAiCn2G,EAAE,GACnCo2G,KAA+Bp2G,GAAG,GAClCq2G,KAAoCr2G,EAAE,GACtCgsF,KAAkChsF,GAAG,GACrCs2G,KAAgCt2G,EAAE,GAClCisF,KAA8BjsF,GAAG,GACjCu2G,KAAiCv2G,EAAE,GACnCksF,KAA+BlsF,GAAG,GAClCmsF,KAA8Bn7F,EAAE+uG,IAChC3T,KAAkCpsF,EAAE,GACpCw2G,KAAgCx2G,GAAG,GACnCy2G,KAAmCz2G,EAAE,GACrC02G,KAAiC12G,GAAG,GACpC22G,OACAC,KAAqC52G,EAAE,GACvC62G,KAAmC72G,GAAG,GACtC82G,KAAiC92G,EAAE,GACnC+2G,KAA+B/2G,GAAG,GAClCg3G,OACAC,KAAkCj3G,EAAE,GACpCk3G,KAAgCl3G,GAAG,GACnCm3G,OACAC,KAAyCp3G,EAAE,GAC3CqsF,KAAuCrsF,GAAG,GAC1CssF,KAAwCtsF,EAAE,GAC1CusF,KAAsCvsF,GAAG,GACzC44D,OACAE,OACAD,KAAqC74D,EAAE,GACvCq3G,KAAmCr3G,GAAG,GACtC+4D,KAAqC/4D,EAAE,GACvCg5D,KAAmCh5D,GAAG,GACtCwsF,KAAqCxsF,EAAE,GACvCysF,KAAmCzsF,GAAG,GACtC0sF,KAAsC1sF,EAAE,GACxC2sF,KAAoC3sF,GAAG,GACvC4sF,OACAC,OACAyqB,OACAC,OACAC,OACAC,OACAC,KAAwC13G,EAAE,GAC1C23G,KAAsC33G,GAAG,GACzC43G,KAAuC53G,EAAE,GACzC63G,KAAqC73G,GAAG,GACxC83G,KAAsC93G,EAAE,GACxC+3G,KAAoC/3G,GAAG,GACvCg4G,OACAC,OACAC,OACAC,OACAC,KAAsCp4G,EAAE,GACxCq4G,KAAoCr4G,GAAG,GACvCs4G,KAA4Ct4G,EAAE,GAC9Cu4G,KAA0Cv4G,GAAG,GAC7Cw4G,KAAyCx4G,EAAE,GAC3CitF,OACAC,OACAurB,KAAgCznH,EAAEwlC,IAClCkiF,OACAC,OACAC,OACAC,KAAyC74G,EAAE,GAC3C84G,KAAuC94G,GAAG,GAC1C+4G,KAAwC/4G,EAAE,GAC1Cg5G,KAAsCh5G,GAAG,GACzCi5G,KAAuCj5G,EAAE,GACzCk5G,KAAqCl5G,GAAG,GACxCm5G,KAAwCn5G,EAAE,GAC1Co5G,KAAsCp5G,GAAG,GACzCq5G,OACAC,OACAC,KAA2Cv5G,EAAE,GAC7Cw5G,KAAyCx5G,GAAG,GAC5Cy5G,KAAuCz5G,EAAE,GACzC05G,KAAqC15G,GAAG,GACxC25G,OACAC,KAAmC55G,EAAE,GACrC65G,KAAiC75G,GAAG,GACpC85G,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,KAAmCz6G,GAAG,GACtC06G,OACAC,KAA0C36G,EAAE,GAC5C46G,KAAwC56G,GAAG,GAC3C66G,KAA2C76G,EAAE,GAC7C86G,KAAyC96G,GAAG,GAC5C+6G,KAAuC/6G,EAAE,GACzCg7G,KAAqCh7G,GAAG,GACxCi7G,OACAC,KAA2Cl7G,EAAE,GAC7Cm7G,KAAyCn7G,GAAG,GAC5Co7G,KAAuCp7G,EAAE,GACzCq7G,KAAqCr7G,GAAG,GACxCs7G,KAAsCt7G,EAAE,GACxCu7G,KAAoCv7G,GAAG,GACvCw7G,KAAmCx7G,EAAE,GACrCy7G,KAAiCz7G,GAAG,GACpC07G,KAAyC17G,EAAE,GAC3C27G,KAAuC37G,GAAG,GAC1C47G,OACAC,KAAoC77G,EAAE,GACtC87G,KAAkC97G,GAAG,GACrC+7G,OACAC,KAAmCh8G,EAAE,GACrCi8G,KAAiCj8G,GAAG,GACpCk8G,KAAqCl8G,EAAE,GACvCm8G,KAAmCn8G,GAAG,GACtCo8G,KAAkCp8G,EAAE,GACpCq8G,KAAgCr8G,GAAG,GACnCs8G,KAAqCt8G,EAAE,GACvCu8G,KAAmCv8G,GAAG,GACtCw8G,KAAoCx8G,EAAE,GACtCmtF,KAAkCntF,GAAG,GACrCy8G,OACAC,KAA0C18G,EAAE,GAC5C28G,KAAwC38G,GAAG,GAC3C48G,KAAsC58G,EAAE,GACxC68G,KAAoC78G,GAAG,GACvC88G,KAA4C98G,EAAE,GAC9C+8G,KAA0C/8G,GAAG,GAC7Cg9G,KAAsChsH,EAAEgiF,IACxCiqC,KAAyCj9G,EAAE,GAC3Ck9G,KAAuCl9G,GAAG,GAC1Cm9G,KAAqCn9G,EAAE,EAAGhP,EAAE6hF,IAC5CuqC,KAAmCp9G,GAAG,GACtCq9G,KAAoCrsH,EAAE4kC,IACtC0nF,KAAwCt9G,EAAE,GAC1Cu9G,OACAtkD,KAAsCj5D,GAAG,GACzCk5D,KAAqCl5D,EAAE,GACvCm5D,KAAmCn5D,GAAG,GACtCo5D,KAA6Cp5D,EAAE,GAC/Cq5D,OACAC,KAA2Ct5D,GAAG,GAC9Cu5D,KAAmDv5D,EAAE,GACrDy5D,KAA2Cz5D,EAAE,GAC7Cw9G,OACAC,KAAyCz9G,GAAG,GAC5C09G,KAA+B1sH,EAAEiyG,IACjC0a,OACAtwB,KAAyCrtF,EAAE,GAC3C49G,KAAuC59G,GAAG,GAC1C69G,KAAwC79G,EAAE,GAC1C89G,KAAsC99G,GAAG,GACzC+9G,KAA4C/9G,EAAE,GAC9C05D,KAA0C15D,GAAG,GAC7C25D,OACAC,KAAuC55D,EAAE,GACzC65D,OACAC,KAAqC95D,GAAG,GACxCg+G,OACAC,KAAqCj+G,EAAE,GACvC+5D,OACAC,KAAmCh6D,GAAG,GACtCstF,OACA4wB,OACAC,OACAC,KAAuCp+G,EAAE,GACzCq+G,KAAqCr+G,GAAG,GACxCutF,KAAoCvtF,EAAE,GACtCs+G,KAAkCt+G,GAAG,GACrCu+G,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACApL,QACAqL,QACAC,MAAwC/+G,EAAE,GAC1Cg/G,MAAsCh/G,GAAG,GACzCi/G,MAA8Cj/G,EAAE,GAChDk/G,MAA4Cl/G,GAAG,GAC/Cm/G,QACAC,MAA4Cp/G,EAAE,GAC9Cq/G,MAA0Cr/G,GAAG,GAC7CwzG,MAA2CxzG,EAAE,GAC7Cs/G,MAAyCt/G,GAAG,GAC5Cu/G,QACAC,QACAC,QACAC,MAA0C1/G,EAAE,GAC5C2/G,MAAwC3/G,GAAG,GAC3C4/G,QACAC,MAA4C7/G,EAAE,GAC9C8/G,MAA0C9/G,GAAG,GAC7C+/G,QACAC,QACAC,QACAC,MAAqDlgH,EAAE,GACvDmgH,MAAmDngH,GAAG,GACtDogH,MAAsCpgH,EAAE,GACxCqgH,MAAoCrgH,GAAG,GACvCsgH,QACAC,MAAuCvgH,EAAE,GACzCwgH,MAAuCxgH,EAAE,GACzCygH,MAA+BzvH,EAAGiwG,IAClCyf,MAAqC1gH,EAAE,GACvC2gH,QACAC,MAAwC5gH,EAAE,GAC1C6gH,MAAsC7gH,GAAG,GACzC8gH,MAA6C9gH,EAAE,GAC/C+gH,MAA2C/gH,GAAG,GAC9CghH,QACAC,MAAsCjhH,EAAE,GACxCkhH,MAAoClhH,GAAG,GACvCmhH,MAAsCnhH,EAAE,GACxCohH,MAAoCphH,GAAG,GACvCqhH,MAAmCrhH,EAAE,GACrCshH,MAAiCthH,GAAG,GACpCuhH,MAAuCvhH,EAAE,GACzCwhH,MAAqCxhH,GAAG,GACxCyhH,MAA4CzhH,EAAE,GAC9C0hH,MAA0C1hH,GAAG,GAC7C2hH,MAA2C3hH,EAAE,GAC7C4hH,MAAyC5hH,GAAG,GAC5C6hH,MAAyC7hH,EAAE,GAC3C8hH,MAAuC9hH,GAAG,GAC1C+hH,MAA4C/hH,EAAE,GAC9CgiH,MAA0ChiH,GAAG,GAC7CiiH,MAAuCjiH,EAAE,GACzCkiH,MAAqCliH,GAAG,GACxCmiH,MAAsCniH,EAAE,GACxCoiH,MAAoCpiH,GAAG,GACvCqiH,MAAoCriH,EAAE,GACtCsiH,MAAkCtiH,GAAG,GACrCuiH,QACAC,MAAiDxiH,EAAE,GACnDyiH,MAA+CziH,GAAG,GAClD0iH,MAAmD1iH,EAAE,GACrD2iH,MAAiD3iH,GAAG,GACpD4iH,MAAkD5iH,EAAE,GACpD6iH,MAAgD7iH,GAAG,GACnD8iH,MAAiD9iH,EAAE,GACnD+iH,MAA+C/iH,GAAG,GAClDgjH,MAAgDhjH,EAAE,GAClDijH,MAA8CjjH,GAAG,GACjDkjH,QACAC,MAAmDnjH,EAAE,GACrDojH,QACAC,MAAiDrjH,GAAG,GACpDsjH,MAA+CtjH,EAAE,GACjDujH,MAA6CvjH,GAAG,GAChDwjH,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAAuD9jH,EAAE,GACzD+jH,MAAqD/jH,GAAG,GACxDgkH,MAAqChkH,EAAE,GACvCikH,MAAmCjkH,GAAG,GACtCkkH,QACAC,MAAoCnkH,EAAE,GACtCokH,MAAkCpkH,GAAG,GACrCqkH,MAAqCrkH,EAAE,GACvCskH,MAAmCtkH,GAAG,GACtCukH,MAAsCvkH,EAAE,GACxCwkH,MAAoCxkH,GAAG,GACvCykH,MAAuCzkH,EAAE,GACzC0kH,MAAqC1kH,GAAG,GACxC2kH,QACAC,MAAyC5kH,EAAE,GAC3C6kH,MAAuC7kH,GAAG,GAC1C8kH,QACAC,MAA6C/kH,EAAE,GAC/CglH,MAA2ChlH,GAAG,GAC9CilH,MAAsDjlH,EAAE,GACxDklH,MAAoDllH,GAAG,GACvDmlH,MAAoDnlH,EAAE,GACtDolH,MAAkDplH,GAAG,GACrDqlH,MAA2CrlH,EAAE,GAC7CslH,MAAyCtlH,GAAG,GAC5CulH,MAA4CvlH,EAAE,GAC9CwlH,MAA0CxlH,GAAG,GAC7CylH,QACAC,MAA0C1lH,EAAE,GAC5C2lH,MAAwC3lH,GAAG,GAC3C4lH,MAAiD5lH,EAAE,GACnD6lH,MAA+C7lH,GAAG,GAClD8lH,QACAC,MAAyC/lH,EAAE,GAC3CgmH,MAAuChmH,GAAG,GAC1CimH,MAA0CjmH,EAAE,GAC5CkmH,MAAwClmH,GAAG,GAC3CmmH,MAAwCnmH,EAAE,GAC1ComH,MAAsCpmH,GAAG,GACzCqmH,MAAmCrmH,GAAG,GACtCsmH,MAAqCtmH,GAAG,GACxCumH,MAAqCvmH,GAAG,GACxCwmH,MAA0CxmH,EAAE,GAC5CymH,MAAwCzmH,GAAG,GAC3C0mH,MAAuC1mH,EAAE,GACzC2mH,MAAqC3mH,GAAG,GACxC4mH,MAAqC5mH,EAAE,GACvC6mH,MAAmC7mH,GAAG,GACtC8mH,MAAyC9mH,EAAE,GAC3C+mH,MAAuC/mH,GAAG,GAC1CgnH,MAAwChnH,EAAE,GAC1CinH,MAAsCjnH,GAAG,GACzCknH,MAAuClnH,EAAE,GACzCmnH,MAAqCnnH,GAAG,GACxConH,MAA6CpnH,EAAE,GAC/CqnH,MAA2CrnH,GAAG,GAC9CsnH,QACAC,MAAoCvnH,EAAE,GACtCwnH,MAAkCxnH,GAAG,GACrCynH,QACAC,MAA6C1nH,EAAE,GAC/C2nH,QACAC,QACAC,QACAltD,MAAoD36D,EAAE,GACtD46D,MAAkD56D,GAAG,GACrD8nH,QACAC,MAA4C/nH,EAAE,GAC9C66D,MAA0C76D,GAAG,GAC7CgoH,QACAC,QACAC,MAAsCloH,EAAE,GACxCmoH,MAAoCnoH,GAAG,GACvCooH,MAAmCpoH,EAAE,GACrCqoH,MAAiCroH,GAAG,GACpCsoH,QACAC,QACAC,MAA2CxoH,EAAE,GAC7CyoH,MAAyCzoH,GAAG,GAC5C0oH,QACAC,QACAC,MAAkD5oH,EAAE,GACpD6oH,MAAgD7oH,GAAG,GACnD8oH,QACAC,QACAC,MAA8ChpH,EAAE,GAChDipH,MAA4CjpH,GAAG,GAC/CkpH,QACAC,MAAwDnpH,EAAE,GAC1DopH,MAAsDppH,GAAG,GACzDqpH,QACAC,MAA8CtpH,EAAE,GAChDupH,MAA4CvpH,GAAG,GAC/CwpH,MAA6CxpH,EAAE,GAC/CypH,MAA2CzpH,GAAG,GAC9C0pH,MAAyC1pH,EAAE,GAC3C2pH,MAAuC3pH,GAAG,GAC1C4pH,MAAwC5pH,EAAE,GAC1C6pH,MAAsC7pH,GAAG,GACzC8pH,QACAC,QACAC,MAA2ChqH,EAAE,GAC7CiqH,MAAyCjqH,GAAG,GAC5CkqH,QACAC,MAAqDnqH,EAAE,GACvDoqH,MAAmDpqH,GAAG,GACtDqqH,MAA4CrqH,EAAE,GAC9CsqH,MAA0CtqH,GAAG,GAC7CuqH,MAAmDvqH,EAAE,GACrDwqH,MAAiDxqH,GAAG,GACpDyqH,QACAC,MAAoC1qH,EAAE,GACtC2qH,MAAkC3qH,GAAG,GACrC4qH,QACAC,MAA6C7qH,EAAE,GAC/C8qH,MAA2C9qH,GAAG,GAC9C+qH,QACAC,MAAuChrH,EAAE,GACzCirH,MAAqCjrH,GAAG,GACxCkrH,MAAuClrH,EAAE,GACzCmrH,MAAqCnrH,GAAG,GACxCorH,MAA0CprH,EAAE,GAC5CqrH,MAAwCrrH,GAAG,GAC3CsrH,QACAC,QACAC,QACAC,MAAwCzrH,EAAE,GAC1C0rH,MAAsC1rH,GAAG,GACzC2rH,QACAC,MAAuC5rH,EAAE,GACzC6rH,MAAqC7rH,GAAG,GACxC8rH,MAAyC9rH,EAAE,GAC3C+rH,MAAuC/rH,GAAG,GAC1CgsH,QACAC,MAAgDjsH,EAAE,GAClDksH,MAA8ClsH,GAAG,GACjDmsH,QACAC,MAAwCpsH,EAAE,GAC1CqsH,MAAsCrsH,GAAG,GACzCssH,MAA8CtsH,EAAE,GAChDusH,MAA4CvsH,GAAG,GAC/CwsH,MAA2CxsH,EAAE,GAC7CysH,QACAC,QACAC,QACAC,MAAgD5sH,EAAE,GAClD6sH,MAA8C7sH,GAAG,GACjD8sH,MAA+C9sH,EAAE,GACjD+sH,MAA6C/sH,GAAG,GAChDgtH,QACAC,QACAC,QACAC,MAA4CntH,EAAE,GAC9CotH,MAA0CptH,GAAG,GAC7CqtH,MAA4CrtH,EAAE,GAC9CstH,MAA0CttH,GAAG,GAC7CutH,MAAyCvtH,EAAE,GAC3CwtH,MAAuCxtH,GAAG,GAC1CytH,QACAC,MAA8C1tH,EAAE,GAChD2tH,MAA4C3tH,GAAG,GAC/C4tH,MAA+C5tH,EAAE,GACjD6tH,MAA6C7tH,GAAG,GAChD8tH,QACAC,QACAC,QACAC,MAA+CjuH,EAAE,GACjDkuH,MAA6CluH,GAAG,GAChDmuH,QACAC,MAA0CpuH,EAAE,GAC5CquH,MAAwCruH,GAAG,GAC3CsuH,QACAC,QACAjyF,OAAUntC,EAAE,IAIZ,IAAI0hH,KAEJh1G,GAA6B7K,EAAEgtF,IAC/B5jF,IAAyBpJ,EAAEkgD,IAC3B52C,IAA+BtJ,EAAEsgD,IACjC/2C,IAA8BvJ,EAAEsgD,IAChC92C,IAAmCxJ,EAAEq+C,IACrC50C,IAAiCzJ,EAAEq+C,IACnC30C,IAA+B1J,EAAEomC,IACjCz8B,IAA8B3J,EAAEq+C,IAChCz0C,IAA6B5J,EAAEq+C,IAC/Bx0C,IAA8B7J,EAAEsgD,IAChCx2C,IAA4B9J,EAAEytD,IAC9B1jD,IAA4B/J,EAAEytD,IAC9BziD,IAAiChL,EAAE+uD,IACnC9jD,IAAyBjL,EAAEwuD,IAC3BtjD,IAAgClL,EAAEq+C,IAClClzC,MACAC,MACAC,IAA0BrL,EAAEkwD,IAC5B5kD,MACAuM,IAA8B7X,EAAEq+C,IAChCvmC,IAAgC9X,EAAE+tD,IAClC7jD,IAAgClK,EAAEomC,IAClCj8B,IAAiCnK,EAAEomC,IACnCh8B,IAA+BpK,EAAEomC,IACjC54B,IAAkCxN,EAAEomC,IACpC34B,IAAiCzN,EAAEq+C,IACnC3wC,IAA+B1N,EAAEq+C,IACjC9zC,IAA8BvK,EAAEgyE,IAChCvnE,IAA0BzK,EAAEqpD,IAC5B39C,IAA+B1L,EAAEsgD,IACjCp0C,MACAC,IAA6BnM,EAAEgoD,IAC/B36C,IAA4BrN,EAAEq+C,IAC9B/wC,IAA0BtN,EAAEopD,IAC5B77C,IAA8BvN,EAAEsgD,IAChC18C,MACAoJ,MACAC,MACAC,MACA0gF,IAAiC5tF,EAAEsgD,IACnC2U,MACA/qB,MACAu/C,MACAC,IAAiC1pF,EAAE+lD,IACnC4jC,IAAyB3pF,EAAEuwD,IAC3Bs9B,MACAC,IAAoC9tF,EAAEq+C,IACtC8qC,MACAC,MACAE,IAAgCtpF,EAAEq+C,IAClCiW,KAA6Bt0D,EAAE+xD,IAC/BluD,KAA0B7D,EAAEitD,IAC5BnpD,KAA4B9D,EAAEmmD,IAC9BpiD,KAA6B/D,EAAEsgD,IAC/BkuC,KAA6BxuF,EAAEq+C,IAC/BowC,KAA6BzuF,EAAEq+C,IAC/BqwC,KAAiC1uF,EAAEumD,IACnCviD,OACA8qF,KAA6B9uF,EAAEuxD,IAC/BorC,KAA6B38F,EAAEsgD,IAC/B0uC,OACAE,KAA6BlvF,EAAE2xD,IAC/B8C,OACAC,OACAiR,OACAC,OACAC,OACAC,KAAyC9lE,EAAEsgD,IAC3Cs8C,OACAC,OACAC,KAAyB98F,EAAEwyD,IAC3BtuD,KAA2BlE,EAAEkyD,IAC7B6T,OACAC,OACAC,OACA5hE,OACAC,OACA24F,OACAC,OACAC,OACAj3B,OACAC,OACA4pB,KAA2B/vF,EAAEyqD,IAC7BulC,KAA8BhwF,EAAE4qD,IAChCulC,KAAyBnwF,EAAEkgD,IAC3BowC,OACAC,OACAC,OACA77B,OACAC,OACAC,KAA4B70D,EAAEq+C,IAC9ByW,OACAtwD,OACA+hE,OACAC,OACAC,OACAC,OACA+pB,OACAC,OACAC,OACAvmD,OACA0mD,OACAzmD,OACA0mD,OACAzmD,KAA8BtqC,EAAEsgD,IAChC2wC,OACAoM,KAAqCr9F,EAAEq+C,IACvC55C,OACA0sF,KAAwBnxF,EAAE6sD,IAC1BukC,KAAkCpxF,EAAE8lD,IACpCurC,KAAkCrxF,EAAEkgD,IACpCoxC,OACAE,KAAgCxxF,EAAEmwD,IAClCstC,OACAE,OACAC,OACAC,OACAC,OACArM,OACAsM,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACA1M,OACAE,OACAC,KAAyB9xF,EAAE2mD,IAC3BorC,KAA8B/xF,EAAEypD,IAChC9kD,KAA4B3E,EAAEgnD,IAC9B2f,OACAC,OACAqsB,OACAe,OACAC,OACAG,OACA8K,KAA6Bl/F,EAAEwgD,IAC/B8zC,OACAC,OACAC,OACAO,OACAuK,OACA4lB,OACA1lB,OACAC,OACAzK,OACA0K,OACAzK,OACAC,OACAyK,OACAp1D,OACAgrD,KAA8Bv1F,EAAEq+C,IAChC6hD,KAAyBlgG,EAAEkgD,IAC3BghD,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACAC,OACA9J,OACAoK,OACAC,OACAC,OACAC,OACAtK,KAA6B53F,EAAE0tD,IAC/BmqC,KAA8B73F,EAAEq+C,IAChCy5C,OACAC,OACAC,OACAG,OACAC,KAAyBp4F,EAAE2wD,IAC3B0nC,KAAgCr4F,EAAEq+C,IAClCi6C,KAA2Bt4F,EAAEgxD,IAC7BunC,OACAC,KAA8Bx4F,EAAEyhD,IAChCg3C,OACAC,KAAkC14F,EAAEsgD,IACpCq4C,OACAC,OACAE,KAAgC94F,EAAEkgD,IAClC64C,KAA8B/4F,EAAEynD,GAAgB30C,EAAE,GAClDkmF,KAA6Bh5F,EAAEkgD,IAC/B0nB,KAAgC5nE,EAAEoqD,IAClC0d,KAA2B9nE,EAAEuyD,IAC7B8zD,KAA4BrmH,EAAEstD,IAC9Bya,KAA2B/nE,EAAE6pD,IAC7Bme,KAA6BhoE,EAAEotD,IAC/BquC,KAA4Bz7F,EAAEyyD,IAC9BipC,KAAyB17F,EAAEmnD,IAC3B00C,OACAC,KAA2B97F,EAAEyvD,IAC7BysC,KAAsCl8F,EAAE0nD,IACxC8gE,OACAK,KAA6B7oH,EAAEipD,IAC/BqjE,KAAwBtsH,EAAEsqD,IAC1Bqe,OACAymD,QACAM,MAA4B1vH,EAAEgqD,IAC9BsnE,QACAkM,MAA6Bx9H,EAAEqvD,IAC/Bsa,MAAkC3pE,EAAEoxD,IACpCwY,QACAktD,QACAC,QACAltD,QACAmtD,QACAC,QACAC,QACAC,QACAC,MAAyBp3H,EAAE0lD,IAC3B2xE,QACAoG,QACAnG,QACAoG,QACAC,QACAC,QACAC,QACAC,QACAvG,QACA4D,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAkC,QACAC,MAA6BlrH,EAAE,IAC/BmrH,QACAC,QACAC,QACAC,MAA6Bp+H,EAAEkgD,IAC/Bm+E,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA2Bn/H,EAAE4xD,GAAa9+C,EAAE,IAC5CssH,MAA2Bp/H,EAAEw8E,GAAa1pE,EAAE,IAC5CusH,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8B//H,EAAEq+C,GAAWvrC,EAAE,IAC7CktH,QACAC,MAAiCntH,EAAE,IACnCotH,QACAC,QACAC,QACAC,QACAC,MAA6BtgI,EAAEivD,GAAen8C,EAAE,IAChDytH,QACAC,MAA2BxgI,EAAE47E,GAAa9oE,EAAE,IAC5C2tH,QACAC,QACAC,QACAC,MAAiC5gI,EAAE2vD,GAAmB78C,EAAE,IACxD+tH,MAAsC7gI,EAAEkgD,IACxC4gF,QACAC,QACAC,QACAC,QACAC,MAA0ClhI,EAAEunD,IAC5C45E,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,MAA2BjjI,EAAEsgD,IAC7B4iF,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAA8B/jI,EAAEoyD,IAChC4xE,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAAgC1kI,EAAEyxD,IAClCkzE,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QAEA5hI,GAAgCzD,EAAEoqD,IAClC1mD,KACAC,GAA8B3D,EAAEkzD,IAChCjqD,GAA8BjJ,EAAE8yD,IAChC5pD,GAA8BlJ,EAAE6yD,IAChCjoD,GAA6B5K,EAAEotD,IAC/BtiD,GAA4B9K,EAAEozD,IAC9BroD,KACA5B,GAAyBnJ,EAAE0lD,IAC3Br8C,MACAW,IAAiChK,EAAEsgD,IACnC/0C,IAAiCvL,EAAEmqD,IACnC3+C,MACAmM,MACAC,IAA2B5X,EAAEyvD,IAC7B13C,MACA9N,IAAsCjK,EAAE0nD,IAKxCj8C,IAAmCzL,EAAEqzD,IAQrCjnD,MAcAT,MACAU,MACAC,IAAkCtM,EAAEsgD,IACpC17C,MACAqlC,MACAsqB,OACAg6B,KAA4BvuF,EAAE0yD,IAC9ByC,OACAlxD,OACA0qF,OAKAM,OAEAE,OACAC,OACA56B,OAIAk7B,OACAE,OACAvpB,OACA4pB,OACAC,OACAE,OACA9pB,OACAuqB,KAA6B7wF,EAAEszD,IAC/B49B,OACAwM,OACAlzD,OACA+sD,OACAiE,KAA6Bx7F,EAAEgtF,IAC/B2O,KAAyB37F,EAAE0lD,IAC3BwhE,KAAyBlnH,EAAEwuD,IAC3BwtC,KAAgCh8F,EAAE+tD,IAClCq6D,OACAY,OACAmF,MAA6BnuH,EAAEgtF,IAC/Bw1B,MAAyBxiH,EAAE0lD,IAC3BmsE,QACAyT,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,QACAC,MAAgCvzH,EAAE,IAElCwzH,SAGA,SAAS1jE,IAAetiC,EAAIhvB,EAAM0N,EAASzjB,GAC1C,GAAI0M,GAAIqJ,CACR,IAAGrL,MAAMgC,GAAI,MACb,IAAItJ,GAAMpD,IAAWyjB,OAAazjB,QAAU,CAC5C,IAAI2J,GAAIo7B,EAAGN,KAAK,EAChB96B,GAAE6V,YAAY,EAAG9S,EACjB/C,GAAE6V,YAAY,EAAGpc,EACjB,IAAGA,EAAM,GAAK4+B,GAAOve,GAAUshB,EAAGx9B,KAAKkc,GAGxC,QAASunH,IAAoBjmG,EAAIhvB,EAAM0N,EAASzjB,GAC/C,GAAIoD,GAAMpD,IAAWyjB,OAAazjB,QAAU,CAC5C,IAAGoD,GAAO,KAAM,MAAOikE,IAAetiC,EAAIhvB,EAAM0N,EAASrgB,EACzD,IAAIsJ,GAAIqJ,CACR,IAAGrL,MAAMgC,GAAI,MACb,IAAIgxC,GAAQj6B,EAAQi6B,UAAa+oB,EAAO,CACxC,IAAI1mE,GAAI,EAAG8D,EAAI,CACf,OAAMA,GAAK65C,EAAM+oB,IAAS,OAAS,KAAM,CAAE5iE,GAAK65C,EAAM+oB,IAAS,IAAOA,KACtE,GAAI98D,GAAIo7B,EAAGN,KAAK,EAChB96B,GAAE6V,YAAY,EAAG9S,EACjB/C,GAAE6V,YAAY,EAAG3b,EACjBkhC,GAAGx9B,KAAKkc,EAAQ1f,MAAMhE,EAAGA,EAAI8D,GAC7B9D,IAAK8D,CACL,OAAM9D,EAAIqD,EAAK,CACduG,EAAIo7B,EAAGN,KAAK,EACZ96B,GAAE6V,YAAY,EAAG,GACjB3b,GAAI,CACJ,OAAMA,GAAK65C,EAAM+oB,IAAS,OAAS,KAAM,CAAE5iE,GAAK65C,EAAM+oB,IAAS,IAAOA,KACtE98D,EAAE6V,YAAY,EAAG3b,EACjBkhC,GAAGx9B,KAAKkc,EAAQ1f,MAAMhE,EAAGA,EAAE8D,GAAK9D,IAAI8D,GAItC,QAAS6zD,IAAgB9zD,EAAK2T,EAAGlT,GAChC,IAAIT,EAAKA,EAAMmgB,GAAQ,EACvBngB,GAAI4b,YAAY,EAAGjI,EACnB3T,GAAI4b,YAAY,EAAGnb,EACnBT,GAAI4b,YAAY,EAAG,EACnB5b,GAAI4b,YAAY,EAAG,EACnB,OAAO5b,GAGR,QAASqnI,IAAgB1zH,EAAGlT,EAAG4R,EAAKvJ,GACnC,GAAI9I,GAAMmgB,GAAQ,EAClB2zC,IAAgB9zD,EAAK2T,EAAGlT,EACxB8gD,IAAUlvC,EAAKvJ,GAAK,IAAK9I,EACzB,OAAOA,GAIR,QAASsnI,IAAiB3zH,EAAGlT,EAAG4R,GAC/B,GAAIrS,GAAMmgB,GAAQ,EAAI,EAAE9N,EAAIjW,OAC5B03D,IAAgB9zD,EAAK2T,EAAGlT,EACxBT,GAAI4b,YAAY,EAAGvJ,EAAIjW,OACvB4D,GAAI4b,YAAYvJ,EAAIjW,OAAQiW,EAAK,OACjC,OAAOrS,GAAI0D,EAAI1D,EAAI5D,OAAS4D,EAAIG,MAAM,EAAGH,EAAI0D,GAAK1D,EAGnD,QAASunI,IAAoBpmG,EAAIE,EAAMnmB,EAAG3Y,GACzC,GAAG8+B,EAAKx4B,GAAK,KAAM,OAAOw4B,EAAKv4B,GAC9B,IAAK,KAAK,IAAK,IACd,GAAID,GAAIw4B,EAAKv4B,GAAK,IAAMipB,GAAQW,GAAU2O,EAAKx4B,IAAMw4B,EAAKx4B,CAC1D,IAAIA,IAAMA,EAAE,IAAQA,GAAK,GAAOA,EAAI,MACnC46D,GAAetiC,EAAI,EAAQ6yB,GAAe94C,EAAG3Y,EAAGsG,QAEhD46D,IAAetiC,EAAI,EAAQ0yB,GAAe34C,EAAE3Y,EAAGsG,GAChD,QACD,IAAK,KAAK,IAAK,IAAK46D,GAAetiC,EAAI,EAAQkmG,GAAgBnsH,EAAG3Y,EAAG8+B,EAAKx4B,EAAGw4B,EAAKv4B,GAAK,QAEvF,IAAK,KAAK,IAAK,MACd26D,GAAetiC,EAAI,EAAQmmG,GAAiBpsH,EAAG3Y,GAAI8+B,EAAKx4B,GAAG,IAAI1I,MAAM,EAAE,MACvE,SAEFsjE,GAAetiC,EAAI,EAAQ2yB,GAAgB,KAAM54C,EAAG3Y,IAGrD,QAASilI,IAAermG,EAAI0C,EAAI5wB,EAAK1D,GACpC,GAAIq0B,GAAQ7gC,MAAM4E,QAAQk8B,EAC1B,IAAInC,GAAQqB,GAAkBc,EAAG,SAAW,MAAOssB,EAAKn8C,EAAK,GAAIyjD,IACjE,IAAG/1B,EAAMxlC,EAAEuE,EAAI,KAAQihC,EAAMxlC,EAAEyX,EAAI,MAAQ,CAC1C,GAAGpE,EAAKorB,IAAK,KAAM,IAAI19B,OAAM,UAAY4mC,EAAG,SAAW,MAAQ,mCAC/DnC,GAAMxlC,EAAEuE,EAAI0I,KAAKkM,IAAIqsB,EAAMxlC,EAAEuE,EAAG,IAChCihC,GAAMxlC,EAAEyX,EAAIxK,KAAKkM,IAAIqsB,EAAMxlC,EAAEuE,EAAG,MAChC0vD,GAAMvtB,GAAalB,GAEpB,IAAI,GAAIxmB,GAAIwmB,EAAMhgC,EAAEiS,EAAGuH,GAAKwmB,EAAMxlC,EAAEyX,IAAKuH,EAAG,CAC3ClH,EAAKiuB,GAAW/mB,EAChB,KAAI,GAAI3Y,GAAIm/B,EAAMhgC,EAAEjB,EAAG8B,GAAKm/B,EAAMxlC,EAAEuE,IAAK8B,EAAG,CAC3C,GAAG2Y,IAAMwmB,EAAMhgC,EAAEiS,EAAG8jD,EAAKl1D,GAAKy/B,GAAWz/B,EACzC4tD,GAAMsH,EAAKl1D,GAAKyR,CAChB,IAAIqtB,GAAOuC,GAASC,EAAG3oB,QAAQ3Y,GAAKshC,EAAGssB,EACvC,KAAI9uB,EAAM,QAEVkmG,IAAoBpmG,EAAIE,EAAMnmB,EAAG3Y,EAAGgN,KAMvC,QAASk4H,IAAgB/gF,EAAIn3C,GAC5B,GAAIxJ,GAAIwJ,KACR,IAAG9I,GAAS,MAAQV,EAAE69B,OAAS,KAAM79B,EAAE69B,MAAQn9B,CAC/C,IAAI06B,GAAKb,IACT,IAAIrtB,GAAM,CACV,KAAI,GAAI9W,GAAE,EAAEA,EAAEuqD,EAAGljB,WAAWpnC,SAASD,EAAG,GAAGuqD,EAAGljB,WAAWrnC,IAAM4J,EAAEu9B,MAAOrwB,EAAI9W,CAC5E,IAAG8W,GAAO,KAAOlN,EAAEu9B,OAASojB,EAAGljB,WAAW,IAAMz9B,EAAEu9B,MAAO,KAAM,IAAIrmC,OAAM,oBAAsB8I,EAAEu9B,MACjGmgC,IAAetiC,EAAKp7B,EAAEy7B,MAAQ,EAAI,KAAUz7B,EAAEy7B,MAAQ,EAAI,IAAS,EAAUilB,GAAUC,EAAI,GAAM3gD,GAEjGyhI,IAAermG,EAAIulB,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOA,EAAKlN,EAAG2gD,EAE1D+c,IAAetiC,EAAI,GACnB,OAAOA,GAAGnU,MAGX,QAAS06G,IAAkBvmG,EAAIrhC,EAAMyP,GACpCk0D,GAAetiC,EAAI,GAAmBipB,IACrC1tC,GAAG,GACHwE,OAAQ6mB,MAAM,GACdrpB,KAAM,QACN0sD,OAAQ,EACR8L,OAAQ,SACN3nE,IAIJ,QAASo4H,IAAiBxmG,EAAIs2C,EAAIloE,GACjC,IAAIkoE,EAAI,SACN,EAAE,IAAI,GAAG,KAAK,GAAG,KAAW,GAAgB,MAAM31E,QAAQ,SAAS6R,GACtE,IAAI,GAAIxX,GAAIwX,EAAE,GAAIxX,GAAKwX,EAAE,KAAMxX,EAAG,GAAGs7E,EAAGt7E,IAAM,KAAMsnE,GAAetiC,EAAI,KAAqB4pB,GAAa5uD,EAAGs7E,EAAGt7E,GAAIoT,MAInH,QAASq4H,IAAWzmG,EAAI0C,GAEvB,GAAI99B,GAAIoa,GAAQ,GAChBpa,GAAE6V,YAAY,EAAG,KAAQ7V,GAAE6V,YAAY,EAAG,EAAI7V,GAAE6V,YAAY,EAAG,EAC/D7V,GAAE6V,YAAY,EAAG,EAAI7V,GAAE6V,YAAY,EAAG,EAAI7V,GAAE6V,YAAY,EAAG,EAC3D6nD,IAAetiC,EAAI,KAAsBp7B,EAEzCA,GAAIoa,GAAQ,GACZpa,GAAE6V,YAAY,EAAG,KAAQ7V,GAAE6V,YAAY,EAAG,EAAI7V,GAAE6V,YAAY,EAAG,EAC/D7V,GAAE6V,YAAY,EAAG,EAAI7V,GAAE6V,YAAY,EAAG,EAAI7V,GAAE6V,YAAY,EAAG,EAC3D7V,GAAE6V,YAAY,EAAG,EAAI7V,GAAE6V,YAAY,EAAG,EAAI7V,GAAE6V,YAAY,EAAG,EAC3D4pC,IAAYziB,GAAkBc,EAAG,SAAS,MAAO99B,EACjDA,GAAE6V,YAAY,EAAG,EACjB6nD,IAAetiC,EAAI,KAAmBp7B,GAGvC,QAAS8hI,IAAoB1mG,EAAI5xB,GAChC,IAAI,GAAIpT,GAAI,EAAGA,EAAI,KAAMA,EAAGsnE,GAAetiC,EAAI,IAAiBysB,IAAU1qB,SAAS,EAAG2R,MAAM,MAAO,EAAGtlC,GACtGA,GAAK+oE,QAAQx2E,QAAQ,SAASrB,GAC7BgjE,GAAetiC,EAAI,IAAiBysB,GAASntD,EAAG,EAAG8O,MAIrD,QAASu4H,IAAsB3mG,EAAI0C,GAClC,IAAI,GAAI3oB,GAAE,EAAGA,EAAE2oB,EAAG,UAAUznC,SAAU8e,EAAG,CACxC,GAAI6sH,GAAKlkG,EAAG,UAAU3oB,EACtBuoD,IAAetiC,EAAI,IAAoB4wB,GAAYg2E,GACnD,IAAGA,EAAG,GAAGjkF,QAAS2f,GAAetiC,EAAI,KAA2BgxB,GAAmB41E,UAE7ElkG,GAAG,UAGX,QAASmkG,IAAoB7mG,EAAIs2B,GAChC,IAAIA,EAAM,MACV,IAAIr3C,GAAM,CACVq3C,GAAK31D,QAAQ,SAAS0gC,EAAKvvB,GAC1B,KAAKmN,GAAO,KAAOoiB,EAAK,CACvBihC,GAAetiC,EAAI,IAAsB2xB,GAAckxC,GAAU/wF,EAAKuvB,GAAMvvB,OAK/E,QAASg1H,IAAoB9mG,EAAIE,EAAMnmB,EAAG3Y,EAAGgN,GAC5C,GAAIk7C,GAAK,GAAKi6C,GAAen1F,EAAK+oE,QAASj3C,EAAM9xB,EACjD,IAAG8xB,EAAKx4B,GAAK,OAASw4B,EAAK8sD,GAAI,CAC9B1qB,GAAetiC,EAAI,IAAoBqjB,GAActpC,EAAG3Y,EAAGkoD,GAC3D,QAED,GAAGppB,EAAK8sD,GAAI1qB,GAAetiC,EAAI,EAAsB6sD,GAAc3sD,EAAMnmB,EAAG3Y,EAAGgN,EAAMk7C,QAChF,QAAOppB,EAAKv4B,GAChB,IAAK,KAAK,IAAK,IACd,GAAID,GAAIw4B,EAAKv4B,GAAK,IAAMipB,GAAQW,GAAU2O,EAAKx4B,IAAMw4B,EAAKx4B,CAE1D46D,IAAetiC,EAAI,IAAqBktB,GAAanzC,EAAG3Y,EAAGsG,EAAG4hD,EAAIl7C,GAClE,OACD,IAAK,KAAK,IAAK,IACdk0D,GAAetiC,EAAI,IAAsB+sB,GAAchzC,EAAG3Y,EAAG8+B,EAAKx4B,EAAG4hD,EAAIl7C,EAAM8xB,EAAKv4B,GACpF,OAED,IAAK,KAAK,IAAK,MACd,GAAGyG,EAAK69D,QAAS,CAChB,GAAI7iB,GAAOq5C,GAAWr0F,EAAKi6F,QAASnoE,EAAKx4B,EAAG0G,EAAKk6F,WACjDhmC,IAAetiC,EAAI,IAAuBqpB,GAAetvC,EAAG3Y,EAAGgoD,EAAME,EAAIl7C,QACnEk0D,IAAetiC,EAAI,IAAoBypB,GAAY1vC,EAAG3Y,GAAI8+B,EAAKx4B,GAAG,IAAI1I,MAAM,EAAE,KAAMsqD,EAAIl7C,GAC/F,OACD,QACCk0D,GAAetiC,EAAI,IAAoBqjB,GAActpC,EAAG3Y,EAAGkoD,MAK9D,QAASy9E,IAAej1H,EAAK1D,EAAMm3C,GAClC,GAAIvlB,GAAKb,IACT,IAAI5+B,GAAIglD,EAAGljB,WAAWvwB,GAAM4wB,EAAK6iB,EAAGjjB,OAAO/hC,MAC3C,IAAIymI,IAAQzhF,OAAQ4gD,YACpB,IAAI8gC,IAAWD,EAAI1kG,YAAYxwB,MAC/B,IAAI2wB,GAAQ7gC,MAAM4E,QAAQk8B,EAC1B,IAAIkjB,GAAKx3C,EAAKiyB,MAAQ,CACtB,IAAI2uB,GAAKn8C,EAAK,GAAIyjD,IAClB,IAAI/1B,GAAQqB,GAAkBc,EAAG,SAAW,KAC5C,IAAIwkG,GAAWthF,EAAK,MAAQ,KAC5B,IAAGrlB,EAAMxlC,EAAEuE,EAAI,KAAQihC,EAAMxlC,EAAEyX,GAAK00H,EAAU,CAC7C,GAAG94H,EAAKorB,IAAK,KAAM,IAAI19B,OAAM,UAAY4mC,EAAG,SAAW,MAAQ,mCAC/DnC,GAAMxlC,EAAEuE,EAAI0I,KAAKkM,IAAIqsB,EAAMxlC,EAAEuE,EAAG,IAChCihC,GAAMxlC,EAAEyX,EAAIxK,KAAKkM,IAAIqsB,EAAMxlC,EAAEuE,EAAG4nI,EAAS,GAG1C5kE,GAAetiC,EAAI,KAAQslB,GAAUC,EAAI,GAAMn3C,GAE/Ck0D,IAAetiC,EAAI,GAAuBigB,GAAY,GACtDqiB,IAAetiC,EAAI,GAAwBigB,GAAY,KACvDqiB,IAAetiC,EAAI,GAA0B+f,GAAU,MACvDuiB,IAAetiC,EAAI,GAAuB+f,GAAU,OACpDuiB,IAAetiC,EAAI,GAAwB+F,GAAW,MACtDu8B,IAAetiC,EAAI,GAA6B+f,GAAU,MAC1DuiB,IAAetiC,EAAI,GAA0B+f,GAAU,OACvDuiB,IAAetiC,EAAI,GAAwB+f,GAAU,OACrDuiB,IAAetiC,EAAI,IAAsBigB,GAAY,GACrDqiB,IAAetiC,EAAI,IAAmB4sB,IAAY,EAAE,IAIpD0V,IAAetiC,EAAI,IAAsB+f,GAAU,OACnDuiB,IAAetiC,EAAI,IAAsB+f,GAAU,OAEnD,IAAG6F,EAAIihF,GAAoB7mG,EAAI0C,EAAG,SAElC4/B,IAAetiC,EAAI,IAAO+pB,GAAiBxpB,EAAOnyB,GAGlD,IAAGw3C,EAAIljB,EAAG,YACV,KAAI,GAAI3oB,GAAIwmB,EAAMhgC,EAAEiS,EAAGuH,GAAKwmB,EAAMxlC,EAAEyX,IAAKuH,EAAG,CAC3ClH,EAAKiuB,GAAW/mB,EAChB,KAAI,GAAI3Y,GAAIm/B,EAAMhgC,EAAEjB,EAAG8B,GAAKm/B,EAAMxlC,EAAEuE,IAAK8B,EAAG,CAC3C,GAAG2Y,IAAMwmB,EAAMhgC,EAAEiS,EAAG8jD,EAAKl1D,GAAKy/B,GAAWz/B,EACzC4tD,GAAMsH,EAAKl1D,GAAKyR,CAChB,IAAIqtB,GAAOuC,GAASC,EAAG3oB,QAAQ3Y,GAAKshC,EAAGssB,EACvC,KAAI9uB,EAAM,QAEV4mG,IAAoB9mG,EAAIE,EAAMnmB,EAAG3Y,EAAGgN,EACpC,IAAGw3C,GAAM1lB,EAAK39B,EAAGmgC,EAAG,UAAUlgC,MAAMwsD,EAAK9uB,EAAK39B,KAGhD,GAAI2jG,GAAQ+gC,EAAOnhC,UAAYmhC,EAAO1pH,MAAQhd,CAE9C,IAAGqlD,EAAI0c,GAAetiC,EAAI,IAAsB6oB,IAAem+E,EAAIr/B,WAAW,IAE9E,IAAG/hD,IAAOljB,EAAG,gBAAgBznC,OAAQqnE,GAAetiC,EAAI,IAAyBgwB,GAAiBttB,EAAG,YAErG,IAAGkjB,EAAI+gF,GAAsB3mG,EAAI0C,EAEjC4/B,IAAetiC,EAAI,IAAuBqhB,GAAsB6kD,EAAO93F,GAEvE,IAAGw3C,EAAI6gF,GAAWzmG,EAAI0C,EAEtB4/B,IAAetiC,EAAI,GACnB,OAAOA,GAAGnU,MAIX,QAASs7G,IAAmB5hF,EAAI3+C,EAAMwH,GACrC,GAAIJ,GAAImxB,IACR,IAAI6nG,IAAQzhF,OAAQ4gD,YACpB,IAAIihC,GAAWJ,EAAI1kG,UACnB,IAAI+kG,GAAML,EAAI10B,WACd,IAAI1sD,GAAKx3C,EAAKiyB,MAAQ,EAAG6oB,EAAK96C,EAAKiyB,MAAQ,CAC3CiiC,IAAet0D,EAAG,KAAQs3C,GAAUC,EAAI,EAAMn3C,GAC9C,IAAGA,EAAK6lC,UAAY,MAAOquB,GAAet0D,EAAG,IAC7Cs0D,IAAet0D,EAAG,IAA2B43C,EAAK3F,GAAY,MAAU,KACxEqiB,IAAet0D,EAAG,IAAkB6xC,GAAY,GAChD,IAAGqJ,EAAIoZ,GAAet0D,EAAG,IACzB,IAAGk7C,EAAIoZ,GAAet0D,EAAG,IACzBs0D,IAAet0D,EAAG,IAClBs0D,IAAet0D,EAAG,GAA0B23C,GAAkB,UAAWv3C,GAEzEk0D,IAAet0D,EAAG,GAAuBiyC,GAAY2F,EAAK,KAAS,MAEnE,IAAGA,EAAI0c,GAAet0D,EAAG,IAAkBiyC,GAAY,GACvD,IAAG2F,EAAI0c,GAAet0D,EAAG,IACzBs0D,IAAet0D,EAAG,IAAsBgkD,GAAczM,EAAGljB,WAAWpnC,QACpE,IAAG2qD,GAAML,EAAG0gD,OAAQ3jC,GAAet0D,EAAG,IAEtC,IAAG43C,GAAML,EAAG0gD,OAAQ,CACnB,GAAIC,GAAQmhC,EAAIvhC,UAAY,cAC5BxjC,IAAet0D,EAAG,IAAuBqzC,GAAsB6kD,EAAO93F,IAEvEk0D,GAAet0D,EAAG,IAAkCiyC,GAAY,IAIhEqiB,IAAet0D,EAAG,GAAyB+xC,GAAU,OACrDuiB,IAAet0D,EAAG,GAAsB+xC,GAAU,OAClDuiB,IAAet0D,EAAG,GAAuBiyC,GAAY,GACrD,IAAG2F,EAAI0c,GAAet0D,EAAG,IAAuB+xC,GAAU,OAC1D,IAAG6F,EAAI0c,GAAet0D,EAAG,IAA2BiyC,GAAY,GAChEqiB,IAAet0D,EAAG,GAAsB06C,GAAct6C,GACtDk0D,IAAet0D,EAAG,GAAqB+xC,GAAU,OACjDuiB,IAAet0D,EAAG,IAAsBiyC,GAAY,GACpDqiB,IAAet0D,EAAG,GAAuB+xC,GAAU0yD,GAASltD,IAAK,QACjE+c,IAAet0D,EAAG,GAA4B+xC,GAAU,MACxD,IAAG6F,EAAI0c,GAAet0D,EAAG,IAAyB+xC,GAAU,OAC5DuiB,IAAet0D,EAAG,IAAuBiyC,GAAY,GAErDsmF,IAAkBv4H,EAAGu3C,EAAIn3C,EACzBo4H,IAAiBx4H,EAAGu3C,EAAG3uC,IAAKxI,EAC5Bs4H,IAAoB14H,EAAGI,EAEvB,IAAGw3C,EAAI0c,GAAet0D,EAAG,IAAuB+xC,GAAU,OAC1D,IAAI95B,GAAIjY,EAAE6d,KAEV,IAAIzqB,GAAI+9B,IAER,IAAGymB,EAAI0c,GAAelhE,EAAG,IAAQ8vD,KAIjC,IAAGtL,GAAMx3C,EAAKi6F,QAAS49B,GAAoB7kI,EAAG,IAAQqlD,GAAUr4C,EAAKi6F,QAASj6F,GAG9Ek0D,IAAelhE,EAAG,GAClB,IAAI9B,GAAI8B,EAAEyqB,KAEV,IAAIpe,GAAI0xB,IACR,IAAImoG,GAAO,EAAGhsI,EAAI,CAClB,KAAIA,EAAI,EAAGA,EAAIiqD,EAAGljB,WAAWpnC,SAAUK,EAAGgsI,IAAS1hF,EAAK,GAAK,KAAOA,EAAK,EAAI,GAAKL,EAAGljB,WAAW/mC,GAAGL,MACnG,IAAI2jB,GAAQqH,EAAEhrB,OAASqsI,EAAOhoI,EAAErE,MAChC,KAAIK,EAAI,EAAGA,EAAIiqD,EAAGljB,WAAWpnC,SAAUK,EAAG,CACzC,GAAI2rI,GAASG,EAAQ9rI,MACrBgnE,IAAe70D,EAAG,IAA0B24C,IAAmBznB,IAAI/f,EAAOunC,GAAG8gF,EAAO1zB,QAAQ,EAAGr+F,GAAG,EAAGqI,KAAKgoC,EAAGljB,WAAW/mC,IAAK8S,GAC7HwQ,IAAShY,EAAKtL,GAAGL,OAGlB,GAAIiqB,GAAIzX,EAAEoe,KACV,IAAGy7G,GAAQpiH,EAAEjqB,OAAQ,KAAM,IAAIa,OAAM,OAASwrI,EAAO,OAASpiH,EAAEjqB,OAEhE,IAAI4D,KACJ,IAAGonB,EAAEhrB,OAAQ4D,EAAI2D,KAAKyjB,EACtB,IAAGf,EAAEjqB,OAAQ4D,EAAI2D,KAAK0iB,EACtB,IAAG5lB,EAAErE,OAAQ4D,EAAI2D,KAAKlD,EACtB,OAAOqH,GAAQ9H,GAIhB,QAAS0oI,IAAgBhiF,EAAIn3C,GAC5B,GAAIxJ,GAAIwJ,KACR,IAAIxH,KAEJ,IAAG2+C,IAAOA,EAAG3uC,IAAK,CACjB2uC,EAAG3uC,IAAM4c,GAAI9qB,GAEd,GAAG68C,GAAMA,EAAG3uC,IAAK,CAChBD,IAAYF,IAAe8uC,EAAG3uC,IAE9BhS,GAAE4+F,OAAS/yE,GAAU80B,EAAG3uC,IAAMhS,GAAE4+F,OAAOj+C,EAAG3uC,IAAI,QAAU,CACxDhS,GAAE6+F,IAAMl+C,EAAG3uC,IAGZhS,EAAEyjG,UAAczjG,GAAEyjG,QAAQ9hD,MAAQ,CAAG3hD,GAAEyjG,QAAQ7hD,OAAS,CACxDghF,IAAe5iI,EAEfA,GAAEuyE,UACFosB,IAAe3+F,EAAEuyE,YAAcqsB,QAAQib,QAAU,IAEjD,KAAIl5D,EAAGtN,MAAOsN,EAAGtN,QAEjB,KAAI,GAAIj9C,GAAI,EAAGA,EAAIuqD,EAAGljB,WAAWpnC,SAAUD,EAAG4L,EAAKA,EAAK3L,QAAU8rI,GAAe/rI,EAAG4J,EAAG2gD,EACvF3+C,GAAK83C,QAAQyoF,GAAmB5hF,EAAI3+C,EAAMhC,GAC1C,OAAO+B,GAAQC,GAGhB,QAAS+9G,IAAep/D,EAAIn3C,GAC3B,IAAI,GAAIpT,GAAI,EAAGA,GAAKuqD,EAAGljB,WAAWpnC,SAAUD,EAAG,CAC9C,GAAI0nC,GAAK6iB,EAAGjjB,OAAOijB,EAAGljB,WAAWrnC,GACjC,KAAI0nC,IAAOA,EAAG,QAAS,QACvB,IAAInC,GAAQiB,GAAakB,EAAG,QAC5B,IAAGnC,EAAMxlC,EAAEuE,EAAI,IAAK,CACpB,SAAU4kB,UAAW,aAAeA,QAAQC,MAAOD,QAAQC,MAAM,cAAgBohC,EAAGljB,WAAWrnC,GAAK,yDAIrG,GAAI4J,GAAIwJ,KACR,QAAOxJ,EAAEy7B,MAAQ,GAChB,IAAK,IAAG,IAAK,GAAG,MAAOknG,IAAgBhiF,EAAIn3C,GAC3C,IAAK,IAAG,IAAK,IAAG,IAAK,GAAG,MAAOk4H,IAAgB/gF,EAAIn3C,IAEpD,KAAM,IAAItS,OAAM,gBAAkB8I,EAAEqvC,SAAW,aAGhD,QAASwzF,IAAcn0H,EAAKqO,GAC3B,GAAIvT,GAAOuT,KACX,IAAGrc,GAAS,MAAQ8I,EAAKq0B,OAAS,KAAMr0B,EAAKq0B,MAAQn9B,CACrD,IAAIo9B,GAAKt0B,EAAKq0B,WACdnvB,GAAMA,EAAIzN,QAAQ,cAAe,GACjC,IAAIg/F,GAAOvxF,EAAIzR,MAAM,UACrB,KAAIgjG,EAAM,KAAM,IAAI/oG,OAAM,uCAC1B,IAAI4rI,GAAQp0H,EAAIzR,MAAM,YACtB,IAAI7G,GAAI6pG,EAAK3+D,MAAO5qC,EAAIosI,GAASA,EAAMxhG,OAAS5yB,EAAIrY,MACpD,IAAIijE,GAAO9pC,GAAY9gB,EAAItU,MAAMhE,EAAGM,GAAI,iBAAkB,OAC1D,IAAIye,IAAK,EAAG3Y,EAAI,EAAGi9D,EAAK,EAAGlpB,EAAK,CAChC,IAAI5U,IAAShgC,GAAGiS,EAAE,IAAUlT,EAAE,KAAUvE,GAAGyX,EAAE,EAAElT,EAAE,GACjD,IAAIwwD,KACJ,KAAI90D,EAAI,EAAGA,EAAIkjE,EAAKjjE,SAAUD,EAAG,CAChC,GAAIwxB,GAAM0xC,EAAKljE,GAAGuxB,MAClB,IAAIo7G,GAAKn7G,EAAIxtB,MAAM,EAAE,GAAGoW,aACxB,IAAGuyH,GAAM,MAAO,GAAI5tH,CAAG,IAAG3L,EAAKunD,WAAavnD,EAAKunD,WAAa57C,EAAG,GAAIA,CAAG,OAAS3Y,EAAI,CAAG,UACxF,GAAGumI,GAAM,OAASA,GAAM,MAAO,QAC/B,IAAI7+B,GAAQt8E,EAAIjxB,MAAM,aACtB,KAAID,EAAI,EAAGA,EAAIwtG,EAAM7tG,SAAUK,EAAG,CACjC,GAAI4kC,GAAO4oE,EAAMxtG,GAAGixB,MACpB,KAAI2T,EAAKr+B,MAAM,WAAY,QAC3B,IAAIgN,GAAIqxB,EAAM3sB,EAAK,CAEnB,OAAM1E,EAAE1T,OAAO,IAAM,MAAQoY,EAAK1E,EAAEtN,QAAQ,OAAS,EAAGsN,EAAIA,EAAE7P,MAAMuU,EAAG,EACvE,KAAI,GAAIq0H,GAAO,EAAGA,EAAO93E,EAAO70D,SAAU2sI,EAAM,CAC/C,GAAIpiC,GAAS11C,EAAO83E,EACpB,IAAGpiC,EAAOjlG,EAAEjB,GAAK8B,GAAKokG,EAAOjlG,EAAEiS,EAAIuH,GAAKA,GAAKyrF,EAAOzqG,EAAEyX,EAAG,CAAEpR,EAAIokG,EAAOzqG,EAAEuE,EAAI,CAAGsoI,IAAQ,GAExF,GAAIpxG,GAAMD,GAAY2J,EAAKlhC,MAAM,EAAGkhC,EAAK3+B,QAAQ,MACjD4zC,GAAK3e,EAAIqxG,SAAWrxG,EAAIqxG,QAAU,CAClC,KAAIxpE,GAAM7nC,EAAIsxG,SAAS,GAAK3yF,EAAG,EAAG2a,EAAOttD,MAAMjC,GAAGiS,EAAEuH,EAAEza,EAAE8B,GAAGrG,GAAGyX,EAAEuH,GAAKskD,GAAI,GAAK,EAAG/+D,EAAE8B,EAAI+zC,EAAK,IAC5F,IAAI4yF,GAAKvxG,EAAI7uB,GAAK6uB,EAAI,WAAa,EAEnC,KAAI3nB,EAAE5T,OAAQ,CAAEmG,GAAK+zC,CAAI,UACzBtmC,EAAIiqB,GAAWjqB,EACf,IAAG0xB,EAAMhgC,EAAEiS,EAAIuH,EAAGwmB,EAAMhgC,EAAEiS,EAAIuH,CAAG,IAAGwmB,EAAMxlC,EAAEyX,EAAIuH,EAAGwmB,EAAMxlC,EAAEyX,EAAIuH,CAC/D,IAAGwmB,EAAMhgC,EAAEjB,EAAI8B,EAAGm/B,EAAMhgC,EAAEjB,EAAI8B,CAAG,IAAGm/B,EAAMxlC,EAAEuE,EAAI8B,EAAGm/B,EAAMxlC,EAAEuE,EAAI8B,CAC/D,KAAIyN,EAAE5T,OAAQ,CAAEmG,GAAK+zC,CAAI,UACzB,GAAIvwC,IAAK+C,EAAE,IAAKD,EAAEmH,EAClB,IAAGT,EAAK4P,MAAQnP,EAAE0d,OAAOtxB,QAAU8sI,GAAM,IAAI,MACxC,IAAGl5H,IAAM,OAAQjK,GAAK+C,EAAE,IAAKD,EAAE,UAC/B,IAAGmH,IAAM,QAASjK,GAAK+C,EAAE,IAAKD,EAAE,WAChC,KAAI/B,MAAMguB,GAAS9kB,IAAKjK,GAAK+C,EAAE,IAAKD,EAAEisB,GAAS9kB,QAC/C,KAAIlJ,MAAMsuB,GAAUplB,GAAGO,WAAY,CACvCxK,GAAM+C,EAAE,IAAKD,EAAE6pB,GAAU1iB,GACzB,KAAIT,EAAKg1B,UAAWx+B,GAAM+C,EAAE,IAAKD,EAAEkpB,GAAQhsB,EAAE8C,GAC7C9C,GAAE+xB,EAAIvoB,EAAKkI,QAAU5N,EAAU,IAEhC,GAAG0F,EAAKq0B,MAAO,CAAE,IAAIC,EAAG3oB,GAAI2oB,EAAG3oB,KAAS2oB,GAAG3oB,GAAG3Y,GAAKwD,MAC9C89B,GAAGjC,IAAajuB,EAAEuH,EAAGza,EAAE8B,KAAOwD,CACnCxD,IAAK+zC,GAGPzS,EAAG,QAAUjB,GAAalB,EAC1B,IAAGuvB,EAAO70D,OAAQynC,EAAG,WAAaotB,CAClC,OAAOptB,GAER,QAASslG,IAActlG,EAAIlwB,EAAGuH,EAAGnV,GAChC,GAAIvD,GAAKqhC,EAAG,cACZ,IAAIzE,KACJ,KAAI,GAAI78B,GAAIoR,EAAEjS,EAAEjB,EAAG8B,GAAKoR,EAAEzX,EAAEuE,IAAK8B,EAAG,CACnC,GAAIi9D,GAAK,EAAGlpB,EAAK,CACjB,KAAI,GAAI75C,GAAI,EAAGA,EAAI+F,EAAEpG,SAAUK,EAAG,CACjC,GAAG+F,EAAE/F,GAAGiF,EAAEiS,EAAIuH,GAAK1Y,EAAE/F,GAAGiF,EAAEjB,EAAI8B,EAAG,QACjC,IAAGC,EAAE/F,GAAGP,EAAEyX,EAAIuH,GAAK1Y,EAAE/F,GAAGP,EAAEuE,EAAI8B,EAAG,QACjC,IAAGC,EAAE/F,GAAGiF,EAAEiS,EAAIuH,GAAK1Y,EAAE/F,GAAGiF,EAAEjB,EAAI8B,EAAG,CAAEi9D,GAAM,CAAG,OAC5CA,EAAKh9D,EAAE/F,GAAGP,EAAEyX,EAAInR,EAAE/F,GAAGiF,EAAEiS,EAAI,CAAG2iC,GAAK9zC,EAAE/F,GAAGP,EAAEuE,EAAI+B,EAAE/F,GAAGiF,EAAEjB,EAAI,CAAG,OAE7D,GAAG++D,EAAK,EAAG,QACX,IAAIC,GAAQ79B,IAAajuB,EAAEuH,EAAEza,EAAE8B,GAC/B,IAAI8+B,GAAOt7B,EAAE69B,OAASC,EAAG3oB,QAAQ3Y,GAAKshC,EAAG47B,EAEzC,IAAIx/D,GAAKohC,GAAQA,EAAKx4B,GAAK,OAAUw4B,EAAK5a,GAAKwS,GAAWoI,EAAKphC,IAAMkjC,GAAY9B,GAAOA,EAAKphC,IAAM,MAAQ,EAC3G,IAAIusF,KACJ,IAAGhtB,EAAK,EAAGgtB,EAAGy8C,QAAUzpE,CACxB,IAAGlpB,EAAK,EAAGk2C,EAAGw8C,QAAU1yF,CACxB,IAAGvwC,EAAEqjI,SAAUnpI,EAAI,gCAAkCA,EAAI,cACpD,IAAGohC,EAAM,CACbmrD,EAAG,UAAYnrD,GAAQA,EAAKv4B,GAAK,GACjC,IAAGu4B,EAAKx4B,GAAK,KAAM2jF,EAAG,UAAYnrD,EAAKx4B,CACvC,IAAGw4B,EAAKvJ,GAAK,KAAM00D,EAAG,UAAYnrD,EAAKvJ,CACvC,IAAGuJ,EAAK39B,IAAM29B,EAAK39B,EAAE2zC,QAAU,KAAK/6C,OAAO,IAAM,IAAK2D,EAAI,YAAcohC,EAAK39B,EAAE2zC,OAAQ,KAAOp3C,EAAI,OAEnGusF,EAAG3mC,IAAM9/C,EAAE8/C,IAAM,OAAS,IAAM4Z,CAChCrgC,GAAGz7B,KAAKo3B,GAAU,KAAM96B,EAAGusF,IAE5B,GAAIzpC,GAAW,MACf,OAAOA,GAAW3jB,EAAGx8B,KAAK,IAAM,QAGjC,GAAIymI,IAAa,qFACjB,IAAIC,IAAW,gBAEf,SAASlvB,IAAiB3lG,EAAKlF,GAC9B,GAAIy2F,GAAOvxF,EAAIzR,MAAM,qCACrB,KAAIgjG,GAAQA,EAAK5pG,QAAU,EAAG,KAAM,IAAIa,OAAM,uCAC9C,IAAG+oG,EAAK5pG,QAAU,EAAG,MAAOinC,IAAkBulG,GAAc5iC,EAAK,GAAIz2F,GAAOA,EAC5E,IAAIm3C,GAAK6iF,IACTvjC,GAAKlkG,QAAQ,SAASJ,EAAGuR,GAAOu2H,GAAkB9iF,EAAIkiF,GAAclnI,EAAG6N,GAAO,SAAW0D,EAAI,KAC7F,OAAOyzC,GAGR,QAAS+iF,IAAmB5lG,EAAI3oB,EAAGnV,GAClC,GAAI/F,KACJ,OAAOA,GAAI4C,KAAK,IAAM,UAAYmD,GAAKA,EAAE8/C,GAAK,QAAU9/C,EAAE8/C,GAAK,IAAM,IAAM,IAG5E,QAAS6jF,IAAc7lG,EAAIt0B,GAC1B,GAAIxJ,GAAIwJ,KACR,IAAI0O,GAASlY,EAAEkY,QAAU,KAAOlY,EAAEkY,OAASorH,EAC3C,IAAIr2E,GAASjtD,EAAEitD,QAAU,KAAOjtD,EAAEitD,OAASs2E,EAC3C,IAAItpI,IAAOie,EACX,IAAItK,GAAIgvB,GAAakB,EAAG,QACxB99B,GAAE69B,MAAQ7gC,MAAM4E,QAAQk8B,EACxB7jC,GAAI2D,KAAK8lI,GAAmB5lG,EAAIlwB,EAAG5N,GACnC,KAAI,GAAImV,GAAIvH,EAAEjS,EAAEiS,EAAGuH,GAAKvH,EAAEzX,EAAEyX,IAAKuH,EAAGlb,EAAI2D,KAAKwlI,GAActlG,EAAIlwB,EAAGuH,EAAGnV,GACrE/F,GAAI2D,KAAK,WAAaqvD,EACtB,OAAOhzD,GAAI4C,KAAK,IAGjB,QAAS+mI,IAAc9lG,EAAInsB,EAAOoL,GACjC,GAAIvT,GAAOuT,KACX,IAAGrc,GAAS,KAAM8I,EAAKq0B,MAAQn9B,CAC/B,IAAImjI,GAAO,EAAGC,EAAO,CACrB,IAAGt6H,EAAKy0B,QAAU,KAAM,CACvB,SAAUz0B,GAAKy0B,QAAU,SAAU4lG,EAAOr6H,EAAKy0B,WAC1C,CACJ,GAAIC,SAAiB10B,GAAKy0B,QAAU,SAAWtB,GAAYnzB,EAAKy0B,QAAUz0B,EAAKy0B,MAC/E4lG,GAAO3lG,EAAQtwB,CAAGk2H,GAAO5lG,EAAQxjC,GAInC,GAAI4+D,GAAO3nD,EAAMoyH,qBAAqB;AACtC,GAAIhzE,GAAY3tD,KAAKkM,IAAI9F,EAAKunD,WAAW,IAAUuI,EAAKjjE,OACxD,IAAIslC,IAAShgC,GAAGiS,EAAE,EAAElT,EAAE,GAAGvE,GAAGyX,EAAEi2H,EAAKnpI,EAAEopI,GACrC,IAAGhmG,EAAG,QAAS,CACd,GAAIK,GAASvB,GAAakB,EAAG,QAC7BnC,GAAMhgC,EAAEiS,EAAIxK,KAAKkM,IAAIqsB,EAAMhgC,EAAEiS,EAAGuwB,EAAOxiC,EAAEiS,EACzC+tB,GAAMhgC,EAAEjB,EAAI0I,KAAKkM,IAAIqsB,EAAMhgC,EAAEjB,EAAGyjC,EAAOxiC,EAAEjB,EACzCihC,GAAMxlC,EAAEyX,EAAIxK,KAAKmM,IAAIosB,EAAMxlC,EAAEyX,EAAGuwB,EAAOhoC,EAAEyX,EACzC+tB,GAAMxlC,EAAEuE,EAAI0I,KAAKmM,IAAIosB,EAAMxlC,EAAEuE,EAAGyjC,EAAOhoC,EAAEuE,EACzC,IAAGmpI,IAAS,EAAGloG,EAAMxlC,EAAEyX,EAAIi2H,EAAO1lG,EAAOhoC,EAAEyX,EAAI,EAEhD,GAAIs9C,MAAa83E,EAAO,CACxB,IAAIvrE,GAAU35B,EAAG,WAAaA,EAAG,YACjC,IAAIC,GAAK,EAAG5oB,EAAI,EAAG6oB,EAAK,EAAGxhC,EAAI,EAAGi9D,EAAK,EAAGlpB,EAAK,CAC/C,KAAIzS,EAAG,SAAUA,EAAG,WACpB,MAAMC,EAAKu7B,EAAKjjE,QAAU8e,EAAI47C,IAAahzB,EAAI,CAC9C,GAAInW,GAAM0xC,EAAKv7B,EACf,IAAIimG,GAAsBp8G,GAAM,CAC/B,GAAIpe,EAAKugG,QAAS,QAClBtyC,GAAQtiD,IAAMmsC,OAAQ,MAEvB,GAAI2iF,GAAQr8G,EAAY,QACxB,KAAIoW,EAAKxhC,EAAI,EAAGwhC,EAAKimG,EAAK5tI,SAAU2nC,EAAI,CACvC,GAAInhB,GAAMonH,EAAKjmG,EACf,IAAIx0B,EAAKugG,SAAWi6B,GAAsBnnH,GAAM,QAChD,IAAI/Z,GAAI+Z,EAAIqnH,aAAa,UAAYrnH,EAAIsnH,aAAa,UAAYtnH,EAAIqnH,aAAa,KAAOrnH,EAAIsnH,aAAa,KAAOjwG,GAAWrX,EAAIunH,UACjI,IAAIryG,GAAIlV,EAAIsnH,aAAa,WAAatnH,EAAIsnH,aAAa,IACvD,KAAInB,EAAO,EAAGA,EAAO93E,EAAO70D,SAAU2sI,EAAM,CAC3C,GAAI/4H,GAAIihD,EAAO83E,EACf,IAAG/4H,EAAEtO,EAAEjB,GAAK8B,EAAIsnI,GAAQ75H,EAAEtO,EAAEiS,EAAIuH,EAAI0uH,GAAQ1uH,EAAI0uH,GAAQ55H,EAAE9T,EAAEyX,EAAG,CAAEpR,EAAIyN,EAAE9T,EAAEuE,EAAE,EAAIopI,CAAMd,IAAQ,GAG9FzyF,GAAM1zB,EAAIsnH,aAAa,YAAc,CACrC,KAAM1qE,GAAO58C,EAAIsnH,aAAa,YAAc,GAAK,GAAK5zF,EAAG,EAAG2a,EAAOttD,MAAMjC,GAAGiS,EAAEuH,EAAI0uH,EAAKnpI,EAAE8B,EAAIsnI,GAAM3tI,GAAGyX,EAAEuH,EAAI0uH,GAAQpqE,GAAI,GAAK,EAAG/+D,EAAE8B,EAAIsnI,GAAQvzF,GAAI,GAAK,IACvJ,IAAIvwC,IAAK+C,EAAE,IAAKD,EAAEA,EAClB,IAAIqgI,GAAKtmH,EAAIsnH,aAAa,WAAatnH,EAAIsnH,aAAa,MAAQ,EAChE,IAAGrhI,GAAK,KAAM,CACb,GAAGA,EAAEzM,QAAU,EAAG2J,EAAE+C,EAAIogI,GAAM,QACzB,IAAG35H,EAAK4P,KAAOtW,EAAE6kB,OAAOtxB,QAAU,GAAK8sI,GAAM,IAAI,MACjD,IAAGrgI,IAAM,OAAQ9C,GAAK+C,EAAE,IAAKD,EAAE,UAC/B,IAAGA,IAAM,QAAS9C,GAAK+C,EAAE,IAAKD,EAAE,WAChC,KAAI/B,MAAMguB,GAASjsB,IAAK9C,GAAK+C,EAAE,IAAKD,EAAEisB,GAASjsB,QAC/C,KAAI/B,MAAMsuB,GAAUvsB,GAAG0H,WAAY,CACvCxK,GAAM+C,EAAE,IAAKD,EAAE6pB,GAAU7pB,GACzB,KAAI0G,EAAKg1B,UAAWx+B,GAAM+C,EAAE,IAAKD,EAAEkpB,GAAQhsB,EAAE8C,GAC7C9C,GAAE+xB,EAAIvoB,EAAKkI,QAAU5N,EAAU,KAGjC,GAAG9D,EAAE+xB,IAAM3zB,WAAa2zB,GAAK,KAAM/xB,EAAE+xB,EAAIA,CAGzC,IAAIp0B,GAAI,GAAI0mI,EAAQxnH,EAAIknH,qBAAqB,IAC7C,IAAGM,GAASA,EAAMhuI,OAAQ,IAAI,GAAIiuI,GAAQ,EAAGA,EAAQD,EAAMhuI,SAAUiuI,EAAO,GAAGD,EAAMC,GAAOJ,aAAa,QAAS,CACjHvmI,EAAI0mI,EAAMC,GAAOH,aAAa,OAAS,IAAGxmI,EAAEpH,OAAO,IAAM,IAAK,MAE/D,GAAGoH,GAAKA,EAAEpH,OAAO,IAAM,IAAKyJ,EAAErC,GAAO2zC,OAAQ3zC,EAC7C,IAAG6L,EAAKq0B,MAAO,CAAE,IAAIC,EAAG3oB,EAAI0uH,GAAO/lG,EAAG3oB,EAAI0uH,KAAY/lG,GAAG3oB,EAAI0uH,GAAMrnI,EAAIsnI,GAAQ9jI,MAC1E89B,GAAGjC,IAAanhC,EAAE8B,EAAIsnI,EAAMl2H,EAAEuH,EAAI0uH,KAAU7jI,CACjD,IAAG27B,EAAMxlC,EAAEuE,EAAI8B,EAAIsnI,EAAMnoG,EAAMxlC,EAAEuE,EAAI8B,EAAIsnI,CACzCtnI,IAAK+zC,IAEJp7B,EAEH,GAAG+1C,EAAO70D,OAAQynC,EAAG,YAAcA,EAAG,gBAAkB77B,OAAOipD,EAC/DvvB,GAAMxlC,EAAEyX,EAAIxK,KAAKmM,IAAIosB,EAAMxlC,EAAEyX,EAAGuH,EAAI,EAAI0uH,EACxC/lG,GAAG,QAAUjB,GAAalB,EAC1B,IAAGxmB,GAAK47C,EAAWjzB,EAAG,YAAcjB,IAAclB,EAAMxlC,EAAEyX,EAAI0rD,EAAKjjE,OAAO0nC,EAAG5oB,EAAE,EAAI0uH,EAAKloG,GACxF,OAAOmC,GAGR,QAASymG,IAAgB5yH,EAAOoL,GAC/B,GAAIvT,GAAOuT,KACX,IAAI+gB,GAAKt0B,EAAKq0B,WACd,OAAO+lG,IAAc9lG,EAAInsB,EAAOoL,GAGjC,QAASynH,IAAc7yH,EAAOnI,GAC7B,MAAO8zB,IAAkBinG,GAAgB5yH,EAAOnI,GAAOA,GAGxD,QAASw6H,IAAsBS,GAC9B,GAAI16B,GAAU,EACd,IAAI26B,GAAqBC,GAAgCF,EACzD,IAAGC,EAAoB36B,EAAU26B,EAAmBD,GAASG,iBAAiB,UAC9E,KAAI76B,EAASA,EAAU06B,EAAQ31F,OAAS21F,EAAQ31F,MAAMi7D,OACtD,OAAOA,KAAY,OAIpB,QAAS46B,IAAgCF,GAExC,GAAGA,EAAQI,cAAcC,mBAAsBL,GAAQI,cAAcC,YAAYC,mBAAqB,WAAY,MAAON,GAAQI,cAAcC,YAAYC,gBAE3J,UAAUA,oBAAqB,WAAY,MAAOA,iBAClD,OAAO,MAGR,QAASC,IAAal+G,GAErB,GAAIm+G,GAAQn+G,EACV7lB,QAAQ,YAAa,KAAK0mB,OAAO1mB,QAAQ,MAAO,KAChDA,QAAQ,cAAc,KACtBA,QAAQ,6BAA8B,SAASqM,EAAGC,GAAM,MAAOvQ,OAAMgR,SAAST,EAAG,IAAI,GAAG1Q,KAAK,OAC7FoE,QAAQ,qBAAqB,MAC7BA,QAAQ,uBAAuB,KACjC,IAAI6B,GAAI4vB,GAAYuyG,EAAMhkI,QAAQ,WAAW,IAE7C,QAAQ6B,GAGT,GAAIoiI,KAEHC,KAAgB,IAAO,MACvBC,OAAgB,IAAO,MACvBC,MAAgB,IAAO,MACvBC,OAAgB,IAAO,MACvBC,SAAgB,IAAO,MACvBC,SAAgB,IAAO,MACvBC,SAAgB,MAAO,SACvBC,eAAgB,MAAO,QACvBC,KAAgB,IAAO,MAEvBC,SAAgB,OAAQ,mBAIzB,SAASC,IAAkB5vI,EAAG8mB,GAC5B,GAAIvT,GAAOuT,KACX,IAAGrc,GAAS,MAAQ8I,EAAKq0B,OAAS,KAAMr0B,EAAKq0B,MAAQn9B,CACrD,IAAIgO,GAAM2mB,GAAep/B,EACzB,IAAIolB,MAAY6L,CAChB,IAAI0K,EACJ,IAAIk0G,IAASntH,KAAK,IAAK+4D,EAAK,GAAIkkC,EAAO,CACvC,IAAImwB,EACJ,IAAIC,EACJ,IAAItoG,MAAaD,IACjB,IAAIK,GAAKt0B,EAAKq0B,WACd,IAAIqU,GAAI5oC,CACR,IAAI28H,IAASxyG,MAAM,GACnB,IAAIyyG,GAAQ,GAAIC,EAAW,EAAGC,CAC9B,IAAIC,KACJ,IAAIlxH,IAAK,EAAG3Y,GAAK,EAAGm/B,GAAShgC,GAAIiS,EAAE,IAAQlT,EAAE,KAAWvE,GAAIyX,EAAE,EAAGlT,EAAE,GACnE,IAAI4rI,GAAS,CACb,IAAIC,KACJ,IAAIr7E,MAAas7E,KAAaC,EAAK,EAAGC,EAAK,CAC3C,IAAIjvE,MAAckvE,EAAU,EAAGC,EAAU,CACzC,IAAIr/C,KACJ,IAAI/3C,IAAMmzD,SACV,IAAIkkC,KACJ,IAAIC,IAAQ,GAAI,GAChB,IAAI35F,MAAe+c,IACnB,IAAI68E,GAAU,GAAIC,EAAa,CAC/B,IAAIC,GAAS,MAAOC,EAAU,KAC9B,IAAI9wI,GAAI,CACRk/B,IAAU+3C,UAAY,CACtB3+D,GAAMA,EAAIzN,QAAQ,sBAAsB,IAAIA,QAAQ,+BAA+B,GACnF,OAAOixC,EAAK5c,GAAU8c,KAAK1jC,GAAO,OAAQwjC,EAAG,GAAGA,EAAG,GAAGjxC,QAAQ,OAAO,KAEpE,IAAK,SAAS,IAAK,MAClB,GAAGixC,EAAG,KAAK,IAAK,CACf,GAAGvW,EAAMxlC,EAAEuE,GAAKihC,EAAMhgC,EAAEjB,GAAKihC,EAAMxlC,EAAEyX,GAAK+tB,EAAMhgC,EAAEiS,EAAGkwB,EAAG,QAAUjB,GAAalB,OAC1EmC,GAAG,QAAU,OAClB,IAAGt0B,EAAKunD,UAAY,GAAKvnD,EAAKunD,WAAap1B,EAAMxlC,EAAEyX,EAAG,CACrDkwB,EAAG,YAAcA,EAAG,OACpBnC,GAAMxlC,EAAEyX,EAAIpE,EAAKunD,UAAY,CAC7BjzB,GAAG,QAAUjB,GAAalB,GAE3B,GAAGuvB,EAAO70D,OAAQynC,EAAG,WAAaotB,CAClC,IAAGuM,EAAQphE,OAAQynC,EAAG,SAAW25B,CACjCsuE,GAAQptH,KAAOotH,EAAQ,OAASA,EAAQptH,IACxC,UAAUkW,QAAS,YAAaA,KAAKC,UAAUi3G,EAC/CtoG,GAAW7/B,KAAKmoI,EAAQptH,KACxB+kB,GAAOqoG,EAAQptH,MAAQmlB,CACvBopG,GAAU,UAEN,IAAGh1F,EAAG,GAAG37C,OAAO27C,EAAG,GAAG77C,OAAO,KAAO,IAAK,CAC7C0vI,EAAUp0G,GAAYugB,EAAG,GAAI,MAC7B/8B,GAAI3Y,GAAK,CACTm/B,GAAMhgC,EAAEiS,EAAI+tB,EAAMhgC,EAAEjB,EAAI,GAAUihC,GAAMxlC,EAAEyX,EAAI+tB,EAAMxlC,EAAEuE,EAAI,CAC1DojC,GAAKt0B,EAAKq0B,WAAqBqtB,KAC/BuM,KACAyvE,GAAU,KAEX,MAED,IAAK,kBACJ,GAAGh1F,EAAG,KAAO,MAAOo0F,QAAeA,CACnC,OACD,IAAK,aAAa,IAAK,IACtB,GAAGp0F,EAAG,KAAO,IAAK,CAAE/8B,GAAGwxH,CAASA,GAAU,CAAG,OAC7CX,EAASr0G,GAAYugB,EAAG,GAAI,MAC5B,IAAG8zF,EAAO,MAAO7wH,EAAI6wH,EAAO,MAAQ,MAAQ,IAAG7wH,IAAM,EAAGA,EAAI,CAC5DwxH,IAAWX,EAAO,yBAA2B,CAE7C,IAAGW,EAAU,GAAI,IAAIvwI,EAAI,EAAGA,EAAIuwI,IAAWvwI,EAAG,GAAGkwI,EAAS,EAAG7uE,EAAQtiD,EAAI/e,IAAM+rD,MAAOmkF,EACtF9pI,IAAK,CAAG,OACT,IAAK,qBACJ,GAAG01C,EAAG,KAAO,MAAO11C,CACpB,IAAGgN,EAAK+0B,WAAY,CACnB,GAAG/0B,EAAKq0B,MAAO,CAAE,IAAIC,EAAG3oB,GAAI2oB,EAAG3oB,KAAS2oB,GAAG3oB,GAAG3Y,IAAMuG,EAAE,SACjD+6B,GAAGjC,IAAajuB,EAAEuH,EAAEza,EAAE8B,MAAQuG,EAAE,KAEtCmjI,EAAQ,EAAIG,KACZ,OACD,IAAK,cAAc,IAAK,KACvB,GAAGn0F,EAAG,GAAG37C,OAAO27C,EAAG,GAAG77C,OAAO,KAAO,IAAK,GACtCmG,CACFypI,GAAOt0G,GAAYugB,EAAG,GAAI,MAC1B00F,GAAU54H,SAASi4H,EAAK,4BAA4B,IAAK,GACzD38H,IAAMvG,EAAE,IAAKD,EAAE,KACf,IAAGmjI,EAAK9tE,SAAW3uD,EAAK07F,aAAe,MAAO57F,EAAExO,EAAIwiG,GAAmB5qE,GAAYuzG,EAAK9tE,SACxF,KAAI8tE,EAAK,SAAWA,EAAK,gBAAkB,SAAU,CACpD38H,EAAEvG,EAAI,GAAKuG,GAAExG,EAAI4vB,GAAYuzG,EAAK,iBAAmB,GACrD,IAAGz8H,EAAKq0B,MAAO,CACd,IAAIC,EAAG3oB,GAAI2oB,EAAG3oB,KACd2oB,GAAG3oB,GAAG3Y,GAAK8M,MACL,CACNw0B,EAAGjC,IAAajuB,EAAEuH,EAAEza,EAAE8B,KAAO8M,GAG/B9M,GAAIoqI,EAAQ,MACN,IAAG10F,EAAG,KAAK,IAAK,GACpB11C,CACF0pI,GAAQ,EAAIC,GAAW,CAAGE,KAC1BO,GAAU,CACV,IAAIO,GAAOR,EAAUxxH,EAAIwxH,EAAU,EAAIxxH,CACvC,IAAG3Y,EAAIm/B,EAAMxlC,EAAEuE,EAAGihC,EAAMxlC,EAAEuE,EAAI8B,CAC9B,IAAGA,EAAIm/B,EAAMhgC,EAAEjB,EAAGihC,EAAMhgC,EAAEjB,EAAI8B,CAC9B,IAAG2Y,EAAIwmB,EAAMhgC,EAAEiS,EAAG+tB,EAAMhgC,EAAEiS,EAAIuH,CAC9B,IAAGgyH,EAAOxrG,EAAMxlC,EAAEyX,EAAG+tB,EAAMxlC,EAAEyX,EAAIu5H,CACjClB,GAAOt0G,GAAYugB,EAAG,GAAI,MAC1B/E,KAAe+c,KACf5gD,IAAMvG,EAAEkjI,EAAK,SAAWA,EAAK,cAAenjI,EAAE,KAC9C,IAAG0G,EAAK07F,YAAa,CACpB,GAAG+gC,EAAK9tE,QAAS8tE,EAAK9tE,QAAUzlC,GAAYuzG,EAAK9tE,QACjD,IAAG8tE,EAAK,kCAAoCA,EAAK,8BAA+B,CAC/EQ,EAAKz4H,SAASi4H,EAAK,8BAA8B,KAAO,CACxDS,GAAK14H,SAASi4H,EAAK,iCAAiC,KAAO,CAC3DO,IAAU7qI,GAAIiS,EAAEuH,EAAEza,EAAE8B,GAAIrG,GAAGyX,EAAEuH,EAAIsxH,EAAG,EAAE/rI,EAAE8B,EAAIkqI,EAAG,GAC/Cp9H,GAAEvM,EAAI8/B,GAAa2pG,EACnBj/C,GAAO3pF,MAAM4oI,EAAQl9H,EAAEvM,IAExB,GAAGkpI,EAAK9tE,QAAS7uD,EAAExO,EAAIwiG,GAAmB2oC,EAAK9tE,aAC1C,KAAI/hE,EAAI,EAAGA,EAAImxF,EAAOlxF,SAAUD,EACpC,GAAG+e,GAAKoyE,EAAOnxF,GAAG,GAAGuF,EAAEiS,GAAKuH,GAAKoyE,EAAOnxF,GAAG,GAAGD,EAAEyX,EAC/C,GAAGpR,GAAK+qF,EAAOnxF,GAAG,GAAGuF,EAAEjB,GAAK8B,GAAK+qF,EAAOnxF,GAAG,GAAGD,EAAEuE,EAC/C4O,EAAEvM,EAAIwqF,EAAOnxF,GAAG,GAEpB,GAAG6vI,EAAK,2BAA6BA,EAAK,uBAAwB,CACjEQ,EAAKz4H,SAASi4H,EAAK,uBAAuB,KAAO,CACjDS,GAAK14H,SAASi4H,EAAK,0BAA0B,KAAO,CACpDO,IAAU7qI,GAAIiS,EAAEuH,EAAEza,EAAE8B,GAAIrG,GAAGyX,EAAEuH,EAAIsxH,EAAG,EAAE/rI,EAAE8B,EAAIkqI,EAAG,GAC/Cx7E,GAAOttD,KAAK4oI,GAIb,GAAGP,EAAK,2BAA4BW,EAAU54H,SAASi4H,EAAK,2BAA4B,GAGxF,QAAO38H,EAAEvG,GACR,IAAK,UAAWuG,EAAEvG,EAAI,GAAKuG,GAAExG,EAAI0wB,GAAayyG,EAAK,iBAAmB,OACtE,IAAK,QAAS38H,EAAEvG,EAAI,GAAKuG,GAAExG,EAAIuO,WAAW40H,EAAKxyG,MAAQ,OACvD,IAAK,aAAcnqB,EAAEvG,EAAI,GAAKuG,GAAExG,EAAIuO,WAAW40H,EAAKxyG,MAAQ,OAC5D,IAAK,WAAYnqB,EAAEvG,EAAI,GAAKuG,GAAExG,EAAIuO,WAAW40H,EAAKxyG,MAAQ,OAC1D,IAAK,OAAQnqB,EAAEvG,EAAI,GAAKuG,GAAExG,EAAI6pB,GAAUs5G,EAAK,cAC5C,KAAIz8H,EAAKg1B,UAAW,CAAEl1B,EAAEvG,EAAI,GAAKuG,GAAExG,EAAIkpB,GAAQ1iB,EAAExG,GACjDwG,EAAEyoB,EAAI,QAAU,OACjB,IAAK,OAAQzoB,EAAEvG,EAAI,GAAKuG,GAAExG,EAAIwpB,GAAa25G,EAAK,eAAe,KAC9D,IAAGz8H,EAAKg1B,UAAW,CAAEl1B,EAAEvG,EAAI,GAAKuG,GAAExG,EAAIspB,GAAQ9iB,EAAExG,GAChDwG,EAAEyoB,EAAI,UAAY,OACnB,IAAK,SAAUzoB,EAAEvG,EAAI,GAAKuG,GAAExG,EAAIuO,WAAW40H,EAAK,QAAU,OAC1D,QACC,GAAG38H,EAAEvG,IAAM,UAAYuG,EAAEvG,IAAM,SAAWuG,EAAEvG,EAAG,CAC9CuG,EAAEvG,EAAI,GACN,IAAGkjI,EAAK,iBAAmB,KAAM,CAAEC,EAAQxzG,GAAYuzG,EAAK,gBAAkBI,WACxE,MAAM,IAAInvI,OAAM,0BAA4BoS,EAAEvG,SAEjD,CACNkkI,EAAS,KACT,IAAG39H,EAAEvG,IAAM,IAAK,CACfuG,EAAExG,EAAIojI,GAAS,EACf,IAAGG,EAAMhwI,OAAQiT,EAAE6L,EAAIkxH,CACvBY,GAASd,GAAY,EAEtB,GAAGU,EAAKv1F,OAAQhoC,EAAE3L,EAAIkpI,CACtB,IAAG15F,EAAS92C,OAAS,EAAG,CAAEiT,EAAE5O,EAAIyyC,CAAUA,MAC1C,GAAG+4F,GAAS18H,EAAKqyD,WAAa,MAAOvyD,EAAEpP,EAAIgsI,CAC3C,IAAGe,EAAQ,CAAE39H,EAAEvG,EAAI,UAAYuG,GAAExG,EACjC,IAAImkI,GAAUz9H,EAAK+0B,WAAY,CAC9B,KAAK/0B,EAAKunD,WAAavnD,EAAKunD,WAAa57C,GAAI,CAC5C,IAAI,GAAIiyH,GAAM,EAAGA,EAAMT,IAAWS,EAAK,CACtCR,EAAU54H,SAASi4H,EAAK,4BAA4B,IAAK,GACzD,IAAGz8H,EAAKq0B,MAAO,CACd,IAAIC,EAAG3oB,EAAIiyH,GAAMtpG,EAAG3oB,EAAIiyH,KACxBtpG,GAAG3oB,EAAIiyH,GAAK5qI,GAAK4qI,GAAO,EAAI99H,EAAIslB,GAAItlB,EACpC,SAAQs9H,EAAU,EAAG9oG,EAAG3oB,EAAIiyH,GAAK5qI,EAAIoqI,GAAWh4G,GAAItlB,OAC9C,CACNw0B,EAAGjC,IAAajuB,EAAEuH,EAAIiyH,EAAI1sI,EAAE8B,KAAO8M,CACnC,SAAQs9H,EAAU,EAAG9oG,EAAGjC,IAAajuB,EAAEuH,EAAIiyH,EAAI1sI,EAAE8B,EAAIoqI,KAAah4G,GAAItlB,GAEvE,GAAGqyB,EAAMxlC,EAAEuE,GAAK8B,EAAGm/B,EAAMxlC,EAAEuE,EAAI8B,IAIlCoqI,EAAU54H,SAASi4H,EAAK,4BAA4B,IAAK,GACzDzpI,IAAKoqI,EAAQ,CAAGA,GAAU,CAC1Bt9H,KACA48H,GAAQ,EAAIG,MAEbQ,IACA,OAGD,IAAK,YACL,IAAK,oBAAoB,IAAK,UAC9B,IAAK,eAAe,IAAK,MACzB,IAAK,WACL,IAAK,UACL,IAAK,mBACL,IAAK,gBACJ,GAAG30F,EAAG,KAAK,IAAI,CAAC,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,cAAchrB,MAChE,IAAGgrB,EAAG,GAAG37C,OAAO27C,EAAG,GAAG77C,OAAO,KAAO,IAAKglB,EAAMzd,MAAMs0C,EAAG,GAAI,MACjE,OAED,IAAK,aACJ,GAAGA,EAAG,KAAK,IAAI,CACd,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,cAAchrB,CACrDgjC,GAAQnnD,EAAImjI,CACZ,IAAGG,EAAMhwI,OAAQ6zD,EAAQ/0C,EAAIkxH,CAC7Bn8E,GAAQ7oC,EAAI0lH,CACZ55F,GAASvvC,KAAKssD,OAEV,IAAGhY,EAAG,GAAG37C,OAAO27C,EAAG,GAAG77C,OAAO,KAAO,IAAK,CAACglB,EAAMzd,MAAMs0C,EAAG,GAAI,QAClE60F,EAAU,EAAIC,GAAa,CAC3Bd,GAAQ,EAAIC,GAAW,CAAGE,KAC1B,OAED,IAAK,UACJ,GAAGn0F,EAAG,KAAK,IAAK,CAAE60F,EAAUr4H,EAAItU,MAAM4sI,EAAW90F,EAAG5Q,WAC/C0lG,GAAa90F,EAAG5Q,MAAQ4Q,EAAG,GAAG77C,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,GAAG67C,EAAG,KAAK,IAAI,CAAC,IAAIhrB,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,cAAchrB,MAChE,IAAGgrB,EAAG,GAAG37C,OAAO27C,EAAG,GAAG77C,OAAO,KAAO,IAAKglB,EAAMzd,MAAMs0C,EAAG,GAAI,OACjEg0F,GAAQ,EAAIC,GAAW,CAAGE,KAC1B,OAED,IAAK,oBACJ,MACD,IAAK,kBACJ,MACD,IAAK,iBACJ,MACD,IAAK,gBACL,IAAK,oBACL,IAAK,cACL,IAAK,aACJ,GAAGn0F,EAAG,KAAK,IAAI,CACdq0F,EAAkBT,EAAMntH,MAAQ+4D,CAChC,KAAIxqD,EAAI7L,EAAMkB,OAAO,KAAK21B,EAAG,GAAI,KAAM,cAAchrB,MAC/C,IAAGgrB,EAAG,GAAG37C,OAAO27C,EAAG,GAAG77C,OAAO,KAAO,IAAK,CAC/Cq7E,EAAK,EACLo0D,GAAQn0G,GAAYugB,EAAG,GAAI,MAC3B72B,GAAMzd,MAAMs0C,EAAG,GAAI,OAClB,MAEH,IAAK,SAAU,MACf,IAAK,YAAa,MAClB,IAAK,mBAAoB,MAEzB,IAAK,iBACL,IAAK,cAAe,MACpB,IAAK,QACJ,MACD,IAAK,MAAO,MACZ,IAAK,YAAa,MAElB,IAAK,uBAAwB,MAC7B,IAAK,mBAAoB,MACzB,IAAK,0BAA2B,MAChC,IAAK,uBAAwB,MAC7B,IAAK,wBAAyB,MAE9B,IAAK,SACJ,OAAO72B,EAAMA,EAAMhlB,OAAO,GAAG,IAC5B,IAAK,cACL,IAAK,aACJu7B,EAAMD,GAAYugB,EAAG,GAAI,MACzBw/B,IAAMwzD,GAAmBhzF,EAAG,IAAItgB,EAAIkd,QAAQ,OAAO,EAAE,EAAI,QACzD,MAEH,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,OAAOzzB,EAAMA,EAAMhlB,OAAO,GAAG,IAC5B,IAAK,cACL,IAAK,aACJu7B,EAAMD,GAAYugB,EAAG,GAAI,MACzBw/B,IAAMwzD,GAAmBhzF,EAAG,IAAItgB,EAAIkd,QAAQ,OAAO,EAAE,EAAI,QACzD,MAEH,IAAK,gBAAiB,MACtB,IAAK,UAAW,MAChB,IAAK,aAAc,MACnB,IAAK,OACJ,GAAGoD,EAAG,GAAG93C,OAAO,KAAO,KAAM,UACxB,IAAG83C,EAAG,KAAK,IAAK,OAAO72B,EAAMA,EAAMhlB,OAAO,GAAG,IACjD,IAAK,gBACL,IAAK,cACL,IAAK,aACJq7E,GAAMhjE,EAAItU,MAAMw7G,EAAM1jE,EAAG5Q,MACzB,YAEGs0E,GAAO1jE,EAAG5Q,MAAQ4Q,EAAG,GAAG77C,MAC7B,OAED,IAAK,cACJu7B,EAAMD,GAAYugB,EAAG,GAAI,MACzB40F,GAAOtpC,GAAc5rE,EAAI,sBACzB,IAAIy1G,IAAWj+E,KAAKx3B,EAAIjZ,KAAMkqF,IAAIikC,EAAK,GAAK,IAAMA,EAAK,GACvD,IAAGI,EAASG,EAAOzkC,MAAQnlE,EAAWpnC,MACtCm5C,GAAGmzD,MAAM/kG,KAAKypI,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,YAAa,MAElB,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,iBAAiB1qI,QAAQ0e,EAAMA,EAAMhlB,OAAO,GAAG,KAAO,EAAG,KAC7D,IAAG67C,EAAG,KAAK,OAAS+zF,IAASA,EAAK,iBAAkB,CACnD,GAAIqB,GAAMtC,GAAat2H,EAAItU,MAAM+rI,EAASj0F,EAAG5Q,OAAQ8kG,EACrDF,IAASA,EAAM7vI,OAAS,EAAI6vI,EAAQ,KAAO,IAAMoB,EAAI,OAC/C,CAAElB,EAAWz0G,GAAYugB,EAAG,GAAI,MAAQi0F,GAAWj0F,EAAG5Q,MAAQ4Q,EAAG,GAAG77C,OAC3E,MACD,IAAK,IAAK,MAEV,IAAK,iBACJ,GAAG67C,EAAG,KAAK,IAAK,KAChB,KACC40F,EAAOtpC,GAAc7rE,GAAYugB,EAAG,IAAI,wBACxCxU,GAAOopG,EAAK,IAAI,gBAAmB18E,IAAI08E,EAAK,IAC3C,MAAM3wI,IACR,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,GAAG+7C,EAAG,KAAM,IAAK,CAChB20F,EAAOl1G,GAAYugB,EAAG,GAAI,MAC1B,KAAI20F,EAAKt8G,KAAM,KACfs8G,GAAKv1F,OAAS5e,GAAYm0G,EAAKt8G,YAAcs8G,GAAKt8G,IAClD,IAAGs8G,EAAKv1F,OAAO/6C,OAAO,IAAM,KAAOswI,EAAKv1F,OAAO30C,QAAQ,MAAQ,EAAG,CACjEmqI,EAAOtpC,GAAcqpC,EAAKv1F,OAAOl3C,MAAM,GACvCysI,GAAKv1F,OAAS,IAAMw1F,EAAK,GAAK,IAAMA,EAAK,OACnC,IAAGD,EAAKv1F,OAAOr0C,MAAM,eAAgB4pI,EAAKv1F,OAASu1F,EAAKv1F,OAAOl3C,MAAM,GAE7E,MAGD,IAAK,mBAAoB,MACzB,IAAK,yBAA0B,MAC/B,IAAK,+BAAgC,MACrC,QAAS,OAAO83C,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,GAAG1oC,EAAKorB,IAAK,KAAM,IAAI19B,OAAMg7C,MAGxC,GAAIj4C,IACHyjC,OAAQA,EACRD,WAAYA,EACZ8jE,SAAU/xD,EAEX,IAAGhmC,EAAKiuG,iBAAmBx9G,GAAIyjC,MAC/B,OAAOzjC,GAGT,QAASstI,IAAUn3G,EAAK5mB,GACvBA,EAAOA,KACP,IAAG2mB,GAAeC,EAAK,yBAA0B6hB,GAAe1hB,GAAWH,EAAK,yBAA0B5mB,EAC1G,IAAIlH,GAAUmuB,GAAUL,EAAK,cAC7B,KAAI9tB,EAAS,KAAM,IAAIpL,OAAM,wCAC7B,IAAIypD,GAAKklF,GAAkB9xG,GAASzxB,GAAUkH,EAC9C,IAAG2mB,GAAeC,EAAK,YAAauwB,EAAGtN,MAAQR,GAAiBtiB,GAAWH,EAAK,YAChF,OAAOuwB,GAER,QAASu2D,IAAWn9G,EAAMyP,GACzB,MAAOq8H,IAAkB9rI,EAAMyP,GAIhC,GAAIg+H,IAAkC,WACrC,GAAIC,IACH,yBACC,oEACC,kBACA,6CACA,kBACA,6CACD,uBACD,2BACC5qI,KAAK,GAEP,IAAIid,GAAU,2BAA6Bib,IAC1C2yG,eAAkB,mDAClBC,cAAkB,kDAClBC,cAAkB,kDAClBC,aAAkB,iDAClBC,aAAkB,oDAClBC,WAAkB,8DAClBC,cAAkB,+BAClB90F,WAAkB,mCAClB+0F,eAAkB,sDAClBC,YAAkB,2DAClBC,WAAkB,+CAClBC,iBAAkB,QACd,IAAMX,EAAgB,2BAE3B,OAAO,SAASY,KACf,MAAOj3G,IAAatX,KAGtB,IAAIwuH,IAAmC,WAEtC,GAAIC,GAAe,SAASzhH,GAC3B,MAAOiM,IAAUjM,GACf7lB,QAAQ,OAAQ,SAASqM,GAAI,MAAO,mBAAmBA,EAAGjX,OAAO,QACjE4K,QAAQ,MAAO,eACfA,QAAQ,MAAO,qBACfA,QAAQ,KAAM,aAAaA,QAAQ,KAAM,aAG5C,IAAIunI,GAAgB,kCACpB,IAAIC,GAAmB,yCACvB,IAAIv2B,GAAW,SAASp0E,EAAI6iB,EAAIvqD,GAE/B,GAAI4J,KACJA,GAAEpC,KAAK,kCAAoCm1B,GAAU4tB,EAAGljB,WAAWrnC,IAAM,8BACzE,IAAI+e,GAAE,EAAE3Y,EAAE,EAAGm/B,EAAQiB,GAAakB,EAAG,SAAS,KAC9C,IAAI6mE,GAAO7mE,EAAG,eAAkBu7E,EAAK,CACrC,IAAIx7E,GAAQ7gC,MAAM4E,QAAQk8B,EAC1B,IAAGA,EAAG,SAAU,CACf,IAAIthC,EAAI,EAAGA,GAAKm/B,EAAMxlC,EAAEuE,IAAK8B,EAAGwD,EAAEpC,KAAK,+BAAiCkgC,EAAG,SAASthC,GAAK,wBAA0BshC,EAAG,SAASthC,GAAGksI,IAAM,IAAM,IAAM,4BAErJ,GAAIx+H,GAAI,GAAIy+H,EAAO7qG,EAAG,YACtB,KAAI3oB,EAAI,EAAGA,EAAIwmB,EAAMhgC,EAAEiS,IAAKuH,EAAG,CAC9BjL,EAAIy+H,EAAKxzH,GAAK,wBAA0BwzH,EAAKxzH,GAAGuzH,IAAM,IAAM,EAC5D1oI,GAAEpC,KAAK,2BAA6BsM,EAAI,yBAEzC,KAAMiL,GAAKwmB,EAAMxlC,EAAEyX,IAAKuH,EAAG,CAC1BjL,EAAIy+H,EAAKxzH,GAAK,wBAA0BwzH,EAAKxzH,GAAGuzH,IAAM,IAAM,EAC5D1oI,GAAEpC,KAAK,2BAA6BsM,EAAI,MACxC,KAAI1N,EAAE,EAAGA,EAAIm/B,EAAMhgC,EAAEjB,IAAK8B,EAAGwD,EAAEpC,KAAK4qI,EACpC,MAAMhsI,GAAKm/B,EAAMxlC,EAAEuE,IAAK8B,EAAG,CAC1B,GAAIk9G,GAAO,MAAOp+F,KAAS4qH,EAAQ,EACnC,KAAI7sB,EAAK,EAAGA,GAAM1U,EAAKtuG,SAAUgjH,EAAI,CACpC,GAAG1U,EAAK0U,GAAI19G,EAAEjB,EAAI8B,EAAG,QACrB,IAAGmoG,EAAK0U,GAAI19G,EAAEiS,EAAIuH,EAAG,QACrB,IAAGwvF,EAAK0U,GAAIljH,EAAEuE,EAAI8B,EAAG,QACrB,IAAGmoG,EAAK0U,GAAIljH,EAAEyX,EAAIuH,EAAG,QACrB,IAAGwvF,EAAK0U,GAAI19G,EAAEjB,GAAK8B,GAAKmoG,EAAK0U,GAAI19G,EAAEiS,GAAKuH,EAAGukG,EAAO,IAClDp+F,GAAG,gCAAmCqpF,EAAK0U,GAAIljH,EAAEuE,EAAIiqG,EAAK0U,GAAI19G,EAAEjB,EAAI,CACpE4gB,GAAG,6BAAmCqpF,EAAK0U,GAAIljH,EAAEyX,EAAI+2F,EAAK0U,GAAI19G,EAAEiS,EAAI,CACpE,OAED,GAAG8rG,EAAM,CAAE15G,EAAEpC,KAAK6qI,EAAmB,UACrC,GAAIr+E,GAAMvuB,IAAajuB,EAAEuH,EAAGza,EAAE8B,IAAK8+B,EAAOuC,GAASC,EAAG3oB,QAAQ3Y,GAAIshC,EAAGssB,EACrE,IAAG9uB,GAAQA,EAAKxgC,EAAG,CAClBwgB,EAAG,iBAAmByX,GAAUwqE,GAAmBjiE,EAAKxgC,GACxD,IAAGwgC,EAAKv+B,EAAG,CACV,GAAGu+B,EAAKv+B,EAAE3C,MAAM,EAAGgwD,EAAI/zD,SAAW+zD,EAAK,CACtC,GAAIw+E,GAAQhsG,GAAatB,EAAKv+B,EAC9Bue,GAAG,uCAA0CstH,EAAMzyI,EAAEuE,EAAIkuI,EAAMjtI,EAAEjB,EAAI,CACrE4gB,GAAG,oCAA0CstH,EAAMzyI,EAAEyX,EAAIg7H,EAAMjtI,EAAEiS,EAAI,IAIxE,IAAI0tB,EAAM,CAAEt7B,EAAEpC,KAAK4qI,EAAgB,UACnC,OAAOltG,EAAKv4B,GACX,IAAK,IACJmjI,EAAS5qG,EAAKx4B,EAAI,OAAS,OAC3BwY,GAAG,qBAAuB,SAC1BA,GAAG,wBAA2BggB,EAAKx4B,EAAI,OAAS,OAChD,OACD,IAAK,IACJojI,EAAS5qG,EAAKphC,GAAG5B,OAAOgjC,EAAKx4B,GAAG,EAChCwY,GAAG,qBAAuB,OAC1BA,GAAG,gBAAmBggB,EAAKx4B,GAAG,CAC9B,OACD,IAAK,KAAK,IAAK,MACdojI,EAAQ5qG,EAAKx4B,GAAK,KAAO,GAAKw4B,EAAKx4B,CACnCwY,GAAG,qBAAuB,QAC1B,OACD,IAAK,IACJ4qH,EAAS5qG,EAAKphC,GAAIyyB,GAAU2O,EAAKx4B,GAAGoyB,aACpC5Z,GAAG,qBAAuB,MAC1BA,GAAG,qBAAwBqR,GAAU2O,EAAKx4B,GAAGoyB,aAC7C5Z,GAAG,oBAAsB,KACzB,OAED,QAAStb,EAAEpC,KAAK4qI,EAAgB,WAEjC,GAAIK,GAASN,EAAarC,EAC1B,IAAG5qG,EAAK39B,GAAK29B,EAAK39B,EAAE2zC,OAAQ,CAC3B,GAAIw3F,GAAOxtG,EAAK39B,EAAE2zC,MAClBw3F,GAAOA,EAAKvyI,OAAO,IAAM,IAAM,IAAMknG,GAAcqrC,EAAK1uI,MAAM,IAAM0uI,CAEpE,IAAGA,EAAKvyI,OAAO,IAAM,MAAQuyI,EAAK7rI,MAAM,SAAU6rI,EAAO,MAAQA,CACjED,GAAS7zG,GAAU,SAAU6zG,GAASE,aAAcD,EAAK7nI,QAAQ,KAAM,WAExEjB,EAAEpC,KAAK,aAAeo3B,GAAU,mBAAoBA,GAAU,SAAU6zG,MAAavtH,GAAM,MAE5Ftb,EAAEpC,KAAK,gCAERoC,EAAEpC,KAAK,yBACP,OAAOoC,GAAEnD,KAAK,IAGf,IAAImsI,GAA6B,SAAShpI,EAAG2gD,GAC5C3gD,EAAEpC,KAAK,+BAEPoC,GAAEpC,KAAK,yEACPoC,GAAEpC,KAAK,2CACPoC,GAAEpC,KAAK,oCACPoC,GAAEpC,KAAK,yCACPoC,GAAEpC,KAAK,oCACPoC,GAAEpC,KAAK,sBACPoC,GAAEpC,KAAK,2BAGP,IAAIqrI,GAAO,CACXtoF,GAAGljB,WAAWniC,IAAI,SAASrC,GAAK,MAAO0nD,GAAGjjB,OAAOzkC,KAAO8C,QAAQ,SAAS+hC,GACxE,IAAIA,EAAI,MACR,IAAGA,EAAG,SAAU,CACf,IAAI,GAAIthC,GAAI,EAAGA,EAAIshC,EAAG,SAASznC,SAAUmG,EAAG,GAAGshC,EAAG,SAASthC,GAAI,CAC9D,GAAI0sI,GAASprG,EAAG,SAASthC,EACzB,IAAG0sI,EAAOntF,OAAS,MAAQmtF,EAAOhwE,KAAO,MAAQgwE,EAAOj4E,KAAO,KAAM,QACrEuH,IAAY0wE,EACZA,GAAOR,IAAMO,CACb,IAAI/uI,GAAI4jC,EAAG,SAASthC,GAAG08D,IAAM,IAC7Bl5D,GAAEpC,KAAK,gCAAkCqrI,EAAO,mCAChDjpI,GAAEpC,KAAK,gFAAkF1D,EAAI,QAC7F8F,GAAEpC,KAAK,wBACLqrI,KAML,IAAIxmI,GAAO,CACXk+C,GAAGljB,WAAWniC,IAAI,SAASrC,GAAK,MAAO0nD,GAAGjjB,OAAOzkC,KAAO8C,QAAQ,SAAS+hC,GACxE,IAAIA,EAAI,MACR,IAAGA,EAAG,SAAU,CACf,IAAI,GAAI3oB,GAAI,EAAGA,EAAI2oB,EAAG,SAASznC,SAAU8e,EAAG,GAAG2oB,EAAG,SAAS3oB,GAAI,CAC9D2oB,EAAG,SAAS3oB,GAAGuzH,IAAMjmI,CACrB,IAAIie,GAAIod,EAAG,SAAS3oB,GAAGsjD,IAAM,IAC7Bz4D,GAAEpC,KAAK,gCAAkC6E,EAAO,gCAChDzC,GAAEpC,KAAK,2EAA6E8iB,EAAI,QACxF1gB,GAAEpC,KAAK,wBACL6E,KAMLzC,GAAEpC,KAAK,uFACPoC,GAAEpC,KAAK,iFACPoC,GAAEpC,KAAK,qBAGPoC,GAAEpC,KAAK,8HAIPoC,GAAEpC,KAAK,iCAGR,OAAO,SAASurI,GAAIxoF,EAAIn3C,GACvB,GAAIxJ,IAAKoxB,GAET,IAAIgoF,GAAOrkF,IACV2yG,eAAsB,mDACtBC,cAAsB,kDACtBC,cAAsB,kDACtBC,aAAsB,iDACtBC,aAAsB,oDACtBC,WAAsB,8DACtBC,cAAsB,+BACtB90F,WAAsB,mCACtBk2F,aAAsB,iDACtBnB,eAAsB,sDACtBoB,qBAAsB,yDACtBnB,YAAsB,2DACtBoB,cAAsB,kDACtBC,aAAsB,iDACtBC,aAAsB,qCACtBC,aAAsB,iDACtBC,eAAsB,mDACtBC,YAAsB,oCACtBC,aAAsB,oCACtBC,aAAsB,kCACtBC,YAAsB,oCACtBC,eAAsB,gCACtB76F,YAAsB,mCACtBC,YAAsB,4CACtB66F,cAAsB,8CACtBC,YAAsB,oCACtB9B,WAAsB,+CACtB+B,cAAsB,+BACtBC,cAAsB,sCACtBC,iBAAsB,mCACtBC,gBAAsB,kCACtBC,gBAAsB,uEACtBC,cAAsB,uEACtBC,cAAsB,mEACtBC,cAAsB,qEACtBC,cAAsB,kCACtBtC,iBAAsB,OAGvB,IAAIuC,GAAO51G,IACV61G,eAAmB,mDACnBC,kBAAmB,kDAGpB,IAAGrhI,EAAK6lC,UAAY,OAAQ,CAC3BrvC,EAAEpC,KAAK,mBAAqBw7G,EAAOuxB,EAAO,MAC1C3qI,GAAEpC,KAAK+0C,KAAiB1xC,QAAQ,wBAAyB,oBAEnDjB,GAAEpC,KAAK,2BAA6Bw7G,EAAQ,MAEnD4vB,GAA2BhpI,EAAG2gD,EAC9B3gD,GAAEpC,KAAK,oBACPoC,GAAEpC,KAAK,6BACP,KAAI,GAAIxH,GAAI,EAAGA,GAAKuqD,EAAGljB,WAAWpnC,SAAUD,EAAG4J,EAAEpC,KAAKs0G,EAASvxD,EAAGjjB,OAAOijB,EAAGljB,WAAWrnC,IAAKuqD,EAAIvqD,EAAGoT,GACnGxJ,GAAEpC,KAAK,8BACPoC,GAAEpC,KAAK,qBACP,IAAG4L,EAAK6lC,UAAY,OAAQrvC,EAAEpC,KAAK,0BAC9BoC,GAAEpC,KAAK,6BACZ,OAAOoC,GAAEnD,KAAK,OAIhB,SAASiuI,IAAUnqF,EAAIn3C,GACtB,GAAGA,EAAK6lC,UAAY,OAAQ,MAAOi5F,IAAkB3nF,EAAIn3C,EAEzD,IAAI4mB,GAAMU,IACV,IAAIh2B,GAAI,EAER,IAAIw3C,KACJ,IAAII,KAGJ53C,GAAI,UACJ81B,IAAaR,EAAKt1B,EAAG,iDAGrBA,GAAI,aACJ81B,IAAaR,EAAKt1B,EAAGwtI,GAAkB3nF,EAAIn3C,GAC3C8oC,GAAS10C,MAAM9C,EAAG,YAClB43C,GAAI90C,MAAM9C,EAAG,eAGbA,GAAI,YACJ81B,IAAaR,EAAKt1B,EAAG0sI,GAAiB7mF,EAAIn3C,GAC1C8oC,GAAS10C,MAAM9C,EAAG,YAClB43C,GAAI90C,MAAM9C,EAAG,cAGbA,GAAI,UACJ81B,IAAaR,EAAKt1B,EAAGs2B,GAAauhB,KAClCL,GAAS10C,MAAM9C,EAAG,YAClB43C,GAAI90C,MAAM9C,EAAG,gBAGbA,GAAI,cACJ81B,IAAaR,EAAKt1B,EAAG23C,GAAUC,GAC/BJ,GAAS10C,MAAM9C,EAAG,uBAGlBA,GAAI,uBACJ81B,IAAaR,EAAKt1B,EAAGu3C,GAAeC,GAEpC,OAAOliB,GAIR,QAAS26G,IAAeC,GACtB,MAAO,IAAIC,UAASD,EAAME,OAAQF,EAAMG,WAAYH,EAAMI,YAE5D,QAASC,IAAMC,GACb,aAAct+G,cAAe,aAAc,GAAIA,cAAclwB,OAAOwuI,GAAMv3G,GAASpyB,EAAI2pI,IAEzF,QAASC,IAAM78H,GACb,aAAc4a,cAAe,aAAc,GAAIA,cAAc/sB,OAAOmS,GAAOnN,EAAIgoB,GAAU7a,IAE3F,QAAS88H,IAAWhhH,EAAMihH,GACxB1vE,EACE,IAAK,GAAIv5D,GAAI,EAAGA,GAAKgoB,EAAKn0B,OAASo1I,EAAOp1I,SAAUmM,EAAG,CACrD,IAAK,GAAI9L,GAAI,EAAGA,EAAI+0I,EAAOp1I,SAAUK,EACnC,GAAI8zB,EAAKhoB,EAAI9L,IAAM+0I,EAAO/0I,GACxB,QAASqlE,EACb,OAAO,MAEX,MAAO,OAET,QAAS2vE,IAASC,GAChB,GAAIlyI,GAAMkyI,EAAIC,OAAO,SAASC,EAAKxzI,GACjC,MAAOwzI,GAAMxzI,EAAEhC,QACd,EACH,IAAI4D,GAAM,GAAIoH,YAAW5H,EACzB,IAAIspB,GAAM,CACV4oH,GAAI5vI,QAAQ,SAASuvI,GACnBrxI,EAAIkI,IAAImpI,EAAIvoH,EACZA,IAAOuoH,EAAGj1I,QAEZ,OAAO4D,GAET,QAAS6xI,IAAOzzI,GACdA,GAAKA,GAAK,EAAI,UACdA,IAAKA,EAAI,YAAcA,GAAK,EAAI,UAChC,QAAQA,GAAKA,GAAK,GAAK,WAAa,WAAa,GAEnD,QAAS0zI,IAAiBjzI,EAAK2iB,GAC7B,GAAIuwH,IAAOlzI,EAAI2iB,EAAS,IAAM,MAAQ,EAAI3iB,EAAI2iB,EAAS,KAAO,CAC9D,IAAIwwH,GAAWnzI,EAAI2iB,EAAS,IAAM,CAClC,KAAK,GAAI/kB,GAAI+kB,EAAS,GAAI/kB,GAAK+kB,IAAU/kB,EACvCu1I,EAAWA,EAAW,IAAMnzI,EAAIpC,EAClC,QAAQoC,EAAI2iB,EAAS,IAAM,KAAOwwH,EAAWA,GAAY7oI,KAAKI,IAAI,GAAIwoI,EAAM,MAE9E,QAASE,IAAkBpzI,EAAK2iB,EAAQgY,GACtC,GAAIu4G,GAAM5oI,KAAKiG,MAAMoqB,GAAS,EAAI,EAAIrwB,KAAK0I,OAAS1I,KAAKyI,IAAIzI,KAAKgH,IAAIqpB,KAAW,KAAO,EACxF,IAAIw4G,GAAWx4G,EAAQrwB,KAAKI,IAAI,GAAIwoI,EAAM,KAC1ClzI,GAAI2iB,EAAS,KAAOuwH,GAAO,CAC3BlzI,GAAI2iB,EAAS,MAAQuwH,EAAM,MAAQ,CACnC,KAAK,GAAI51I,GAAI,EAAG61I,GAAY,IAAK71I,EAAG61I,GAAY,IAC9CnzI,EAAI2iB,EAASrlB,GAAK61I,EAAW,GAC/BnzI,GAAI2iB,EAAS,KAAOgY,GAAS,EAAI,EAAI,IAEvC,QAAS04G,IAAerzI,EAAKszI,GAC3B,GAAIzuI,GAAIyuI,EAAMA,EAAI,GAAK,CACvB,IAAI1sH,GAAM5mB,EAAI6E,GAAK,GACnB0uI,GACE,GAAIvzI,EAAI6E,MAAQ,IAAK,CACnB+hB,IAAQ5mB,EAAI6E,GAAK,MAAQ,CACzB,IAAI7E,EAAI6E,KAAO,IACb,KAAM0uI,EACR3sH,KAAQ5mB,EAAI6E,GAAK,MAAQ,EACzB,IAAI7E,EAAI6E,KAAO,IACb,KAAM0uI,EACR3sH,KAAQ5mB,EAAI6E,GAAK,MAAQ,EACzB,IAAI7E,EAAI6E,KAAO,IACb,KAAM0uI,EACR3sH,KAAQ5mB,EAAI6E,GAAK,KAAOyF,KAAKI,IAAI,EAAG,MAClC7F,CACF,IAAI7E,EAAI6E,KAAO,IACb,KAAM0uI,EACR3sH,KAAQ5mB,EAAI6E,GAAK,KAAOyF,KAAKI,IAAI,EAAG,MAClC7F,CACF,IAAI7E,EAAI6E,KAAO,IACb,KAAM0uI,EACR3sH,KAAQ5mB,EAAI6E,GAAK,KAAOyF,KAAKI,IAAI,EAAG,MAClC7F,CACF,IAAI7E,EAAI6E,KAAO,IACb,KAAM0uI,GAEZ,GAAID,EACFA,EAAI,GAAKzuI,CACX,OAAO+hB,GAET,QAAS4sH,IAAexpI,GACtB,GAAI4c,GAAM,GAAIre,YAAW,EACzBqe,GAAI,GAAK5c,EAAI,GACb,IAAIN,GAAI,CACRmU,GACE,GAAI7T,EAAI,IAAK,CACX4c,EAAIld,EAAI,IAAM,GACdkd,GAAIld,GAAKM,GAAK,EAAI,MAChBN,CACF,IAAIM,GAAK,MACP,KAAM6T,EACR+I,GAAIld,EAAI,IAAM,GACdkd,GAAIld,GAAKM,GAAK,GAAK,MACjBN,CACF,IAAIM,GAAK,QACP,KAAM6T,EACR+I,GAAIld,EAAI,IAAM,GACdkd,GAAIld,GAAKM,GAAK,GAAK,MACjBN,CACF,IAAIM,GAAK,UACP,KAAM6T,EACR+I,GAAIld,EAAI,IAAM,GACdkd,GAAIld,GAAKM,EAAI,MAAQ,GAAK,MACxBN,CACF,IAAIM,GAAK,YACP,KAAM6T,EACR+I,GAAIld,EAAI,IAAM,GACdkd,GAAIld,GAAKM,EAAI,QAAU,GAAK,MAC1BN,CACF,IAAIM,GAAK,cACP,KAAM6T,EACR+I,GAAIld,EAAI,IAAM,GACdkd,GAAIld,GAAKM,EAAI,WAAa,GAAK,MAC7BN,EAEN,MAAOkd,GAAItlB,MAAM,EAAGoI,GAEtB,QAAS+pI,IAAczzI,GACrB,GAAI6E,GAAI,EAAG6uI,EAAM1zI,EAAI6E,GAAK,GAC1B0uI,GACE,GAAIvzI,EAAI6E,MAAQ,IAAK,CACnB6uI,IAAQ1zI,EAAI6E,GAAK,MAAQ,CACzB,IAAI7E,EAAI6E,KAAO,IACb,KAAM0uI,EACRG,KAAQ1zI,EAAI6E,GAAK,MAAQ,EACzB,IAAI7E,EAAI6E,KAAO,IACb,KAAM0uI,EACRG,KAAQ1zI,EAAI6E,GAAK,MAAQ,EACzB,IAAI7E,EAAI6E,KAAO,IACb,KAAM0uI,EACRG,KAAQ1zI,EAAI6E,GAAK,MAAQ,GAE7B,MAAO6uI,GAET,QAASC,IAAc3zI,GACrB,GAAImB,MAAUmyI,GAAO,EACrB,OAAOA,EAAI,GAAKtzI,EAAIzC,OAAQ,CAC1B,GAAI0sB,GAAMqpH,EAAI,EACd,IAAIv+E,GAAMs+E,GAAerzI,EAAKszI,EAC9B,IAAIhgI,GAAOyhD,EAAM,CACjBA,GAAMzqD,KAAKiG,MAAMwkD,EAAM,EACvB,IAAIp0D,GAAM,CACV,IAAIo3B,EACJ,IAAIg9B,GAAO,EACT,KACF,QAAQzhD,GACN,IAAK,GACH,CACE,GAAIzO,GAAIyuI,EAAI,EACZ,OAAOtzI,EAAIszI,EAAI,OAAS,KAExBv7G,EAAM/3B,EAAIsB,MAAMuD,EAAGyuI,EAAI,IAEzB,MACF,IAAK,GACH3yI,EAAM,CACNo3B,GAAM/3B,EAAIsB,MAAMgyI,EAAI,GAAIA,EAAI,GAAK3yI,EACjC2yI,GAAI,IAAM3yI,CACV,OACF,IAAK,GACHA,EAAM,CACNo3B,GAAM/3B,EAAIsB,MAAMgyI,EAAI,GAAIA,EAAI,GAAK3yI,EACjC2yI,GAAI,IAAM3yI,CACV,OACF,IAAK,GACHA,EAAM0yI,GAAerzI,EAAKszI,EAC1Bv7G,GAAM/3B,EAAIsB,MAAMgyI,EAAI,GAAIA,EAAI,GAAK3yI,EACjC2yI,GAAI,IAAM3yI,CACV,OACF,IAAK,IACL,IAAK,IACL,QACE,KAAM,IAAIvC,OAAM,WAAW+K,OAAOmK,EAAM,eAAenK,OAAO4rD,EAAK,eAAe5rD,OAAO8gB,KAE7F,GAAIjgB,IAAM/I,KAAM82B,EAAKzkB,KAAMA,EAC3B,IAAInS,EAAI4zD,IAAQ,KACd5zD,EAAI4zD,IAAQ/qD,OAEZ7I,GAAI4zD,GAAKjwD,KAAKkF,GAElB,MAAO7I,GAET,QAASyyI,IAAcC,GACrB,GAAI1yI,KACJ0yI,GAAM5wI,QAAQ,SAAS80D,EAAO3jD,GAC5B2jD,EAAM90D,QAAQ,SAAS6wI,GACrB,IAAKA,EAAK7yI,KACR,MACFE,GAAI2D,KAAK0uI,GAAep/H,EAAM,EAAI0/H,EAAKxgI,MACvC,IAAIwgI,EAAKxgI,MAAQ,EACfnS,EAAI2D,KAAK0uI,GAAeM,EAAK7yI,KAAK1D,QACpC4D,GAAI2D,KAAKgvI,EAAK7yI,SAGlB,OAAO2xI,IAASzxI,GAElB,QAAS4yI,IAAM9yI,EAAMmgC,GACnB,OAAQngC,GAAQ,SAAY,GAAIA,EAAKuB,IAAI,SAASrF,GAChD,MAAOikC,GAAGjkC,EAAE8D,aAGhB,QAAS+yI,IAAeh0I,GACtB,GAAIi0I,EACJ,IAAI9yI,MAAUmyI,GAAO,EACrB,OAAOA,EAAI,GAAKtzI,EAAIzC,OAAQ,CAC1B,GAAIoD,GAAM0yI,GAAerzI,EAAKszI,EAC9B,IAAInhC,GAAKwhC,GAAc3zI,EAAIsB,MAAMgyI,EAAI,GAAIA,EAAI,GAAK3yI,GAClD2yI,GAAI,IAAM3yI,CACV,IAAIo3B,IACFivB,GAAIysF,GAActhC,EAAG,GAAG,GAAGlxG,MAC3BizI,YAEF/hC,GAAG,GAAGlvG,QAAQ,SAASukB,GACrB,GAAI+4F,GAAKozB,GAAcnsH,EAAEvmB,KACzB,IAAI0oD,GAAK8pF,GAAclzB,EAAG,GAAG,GAAGt/G,KAChC82B,GAAIm8G,SAASpvI,MACX+8D,KAAM0+C,EACNt/G,KAAMjB,EAAIsB,MAAMgyI,EAAI,GAAIA,EAAI,GAAK3pF,IAEnC2pF,GAAI,IAAM3pF,GAEZ,KAAKsqF,EAAK9hC,EAAG,KAAO,SAAY,GAAI8hC,EAAG,GACrCl8G,EAAIo8G,MAAQV,GAActhC,EAAG,GAAG,GAAGlxG,QAAU,EAAI,CACnDE,GAAI2D,KAAKizB,GAEX,MAAO52B,GAET,QAASizI,IAAeC,GACtB,GAAInrI,KACJmrI,GAAIpxI,QAAQ,SAASqxI,GACnB,GAAIniC,KACJA,GAAG,KAAQlxG,KAAMuyI,GAAec,EAAGttF,IAAK1zC,KAAM,GAC9C6+F,GAAG,KACH,IAAImiC,EAAGH,OAAS,KACdhiC,EAAG,KAAQlxG,KAAMuyI,MAAkBc,EAAGH,OAAQ7gI,KAAM,GACtD,IAAIihI,KACJD,GAAGJ,SAASjxI,QAAQ,SAASs9G,GAC3Bg0B,EAAOzvI,KAAKy7G,EAAGt/G,KACfs/G,GAAG1+C,KAAK,KAAQvuD,KAAM,EAAGrS,KAAMuyI,GAAejzB,EAAGt/G,KAAK1D,SACtD40G,GAAG,GAAGrtG,MAAO7D,KAAM2yI,GAAcrzB,EAAG1+C,MAAOvuD,KAAM,KAEnD,IAAIkhI,GAAYZ,GAAczhC,EAC9BjpG,GAAKpE,KAAK0uI,GAAegB,EAAUj3I,QACnC2L,GAAKpE,KAAK0vI,EACVD,GAAOtxI,QAAQ,SAASwxI,GACtB,MAAOvrI,GAAKpE,KAAK2vI,MAGrB,OAAO7B,IAAS1pI,GAElB,QAASwrI,IAAmBphI,EAAMtT,GAChC,GAAIsT,GAAQ,EACV,KAAM,IAAIlV,OAAM,gCAAgC+K,OAAOmK,GACzD,IAAIggI,IAAO,EACX,IAAI1sH,GAAMysH,GAAerzI,EAAKszI,EAC9B,IAAIqB,KACJ,OAAOrB,EAAI,GAAKtzI,EAAIzC,OAAQ,CAC1B,GAAIu7B,GAAM94B,EAAIszI,EAAI,IAAM,CACxB,IAAIx6G,GAAO,EAAG,CACZ,GAAIn4B,GAAMX,EAAIszI,EAAI,OAAS,CAC3B,IAAI3yI,EAAM,KACNA,MACC,CACH,GAAIiB,GAAIjB,EAAM,EACdA,GAAMX,EAAIszI,EAAI,GACd,IAAI1xI,EAAI,EACNjB,GAAOX,EAAIszI,EAAI,GAAK,IAAM,CAC5B,IAAI1xI,EAAI,EACNjB,GAAOX,EAAIszI,EAAI,GAAK,IAAM,EAC5B,IAAI1xI,EAAI,EACNjB,GAAOX,EAAIszI,EAAI,GAAK,IAAM,EAC5B3yI,MAAS,CACTA,IACA2yI,GAAI,IAAM1xI,EAEZ+yI,EAAO7vI,KAAK9E,EAAIsB,MAAMgyI,EAAI,GAAIA,EAAI,GAAK3yI,GACvC2yI,GAAI,IAAM3yI,CACV,cACK,CACL,GAAIgiB,GAAS,EAAGplB,EAAS,CACzB,IAAIu7B,GAAO,EAAG,CACZv7B,GAAUyC,EAAIszI,EAAI,KAAO,EAAI,GAAK,CAClC3wH,IAAU3iB,EAAIszI,EAAI,MAAQ,MAAQ,CAClC3wH,IAAU3iB,EAAIszI,EAAI,UACb,CACL/1I,GAAUyC,EAAIszI,EAAI,OAAS,GAAK,CAChC,IAAIx6G,GAAO,EAAG,CACZnW,EAAS3iB,EAAIszI,EAAI,IAAMtzI,EAAIszI,EAAI,GAAK,IAAM,CAC1CA,GAAI,IAAM,MACL,CACL3wH,GAAU3iB,EAAIszI,EAAI,IAAMtzI,EAAIszI,EAAI,GAAK,IAAM,EAAItzI,EAAIszI,EAAI,GAAK,IAAM,GAAKtzI,EAAIszI,EAAI,GAAK,IAAM,MAAQ,CAClGA,GAAI,IAAM,GAGdqB,GAAU/B,GAAS+B,GACnB,IAAIhyH,GAAU,EACZ,KAAM,IAAIvkB,OAAM,mBAClB,IAAIukB,EAASgyH,EAAO,GAAGp3I,OACrB,KAAM,IAAIa,OAAM,+BAClB,IAAIb,GAAUolB,EAAQ,CACpBgyH,EAAO7vI,KAAK6vI,EAAO,GAAGrzI,OAAOqhB,GAC7BplB,IAAUolB,CACV,OAAOplB,GAAUo3I,EAAOA,EAAOp3I,OAAS,GAAGA,OAAQ,CACjDo3I,EAAO7vI,KAAK6vI,EAAOA,EAAOp3I,OAAS,GACnCA,IAAUo3I,EAAOA,EAAOp3I,OAAS,GAAGA,QAGxCo3I,EAAO7vI,KAAK6vI,EAAO,GAAGrzI,OAAOqhB,GAASA,EAASplB,KAGnD,GAAI2J,GAAI0rI,GAAS+B,EACjB,IAAIztI,EAAE3J,QAAUqpB,EACd,KAAM,IAAIxoB,OAAM,sBAAsB+K,OAAOjC,EAAE3J,OAAQ,QAAQ4L,OAAOyd,GACxE,OAAO1f,GAET,QAAS0tI,IAAoB50I,GAC3B,GAAImB,KACJ,IAAI0D,GAAI,CACR,OAAOA,EAAI7E,EAAIzC,OAAQ,CACrB,GAAI0M,GAAIjK,EAAI6E,IACZ,IAAIlE,GAAMX,EAAI6E,GAAK7E,EAAI6E,EAAI,IAAM,EAAI7E,EAAI6E,EAAI,IAAM,EACnDA,IAAK,CACL1D,GAAI2D,KAAK4vI,GAAmBzqI,EAAGjK,EAAIsB,MAAMuD,EAAGA,EAAIlE,IAChDkE,IAAKlE,EAEP,GAAIkE,IAAM7E,EAAIzC,OACZ,KAAM,IAAIa,OAAM,qCAClB,OAAOw0I,IAASzxI,GAElB,QAAS0zI,IAAkB70I,GACzB,GAAImB,KACJ,IAAI0D,GAAI,CACR,OAAOA,EAAI7E,EAAIzC,OAAQ,CACrB,GAAIqE,GAAI0I,KAAKkM,IAAIxW,EAAIzC,OAASsH,EAAG,UACjC,IAAIiwI,GAAQ,GAAIvsI,YAAW,EAC3BpH,GAAI2D,KAAKgwI,EACT,IAAIluH,GAAM4sH,GAAe5xI,EACzB,IAAI8H,GAAIkd,EAAIrpB,MACZ4D,GAAI2D,KAAK8hB,EACT,IAAIhlB,GAAK,GAAI,CACX8H,GACAvI,GAAI2D,KAAK,GAAIyD,aAAY3G,EAAI,GAAK,SAC7B,IAAIA,GAAK,IAAK,CACnB8H,GAAK,CACLvI,GAAI2D,KAAK,GAAIyD,aAAY,IAAK3G,EAAI,EAAI,WACjC,IAAIA,GAAK,MAAO,CACrB8H,GAAK,CACLvI,GAAI2D,KAAK,GAAIyD,aAAY,IAAK3G,EAAI,EAAI,IAAKA,EAAI,GAAK,EAAI,WACnD,IAAIA,GAAK,SAAU,CACxB8H,GAAK,CACLvI,GAAI2D,KAAK,GAAIyD,aAAY,IAAK3G,EAAI,EAAI,IAAKA,EAAI,GAAK,EAAI,IAAKA,EAAI,GAAK,GAAK,WACtE,IAAIA,GAAK,WAAY,CAC1B8H,GAAK,CACLvI,GAAI2D,KAAK,GAAIyD,aAAY,IAAK3G,EAAI,EAAI,IAAKA,EAAI,GAAK,EAAI,IAAKA,EAAI,GAAK,GAAK,IAAKA,EAAI,IAAM,GAAK,OAEjGT,EAAI2D,KAAK9E,EAAIsB,MAAMuD,EAAGA,EAAIjD,GAC1B8H,IAAK9H,CACLkzI,GAAM,GAAK,CACXA,GAAM,GAAKprI,EAAI,GACforI,GAAM,GAAKprI,GAAK,EAAI,GACpBorI,GAAM,GAAKprI,GAAK,GAAK,GACrB7E,IAAKjD,EAEP,MAAOgxI,IAASzxI,GAElB,QAAS4zI,IAAkB/0I,EAAK+1C,EAAKi/F,EAAMhrI,GACzC,GAAIirI,GAAKhD,GAAejyI,EACxB,IAAI4d,GAAQq3H,EAAGC,UAAU,EAAG,KAC5B,IAAIC,IAAenrI,EAAI,EAAI,GAAK,GAAKgpI,GAAOp1H,GAAS5T,EAAI,EAAI,KAAO,MAAQ,CAC5E,IAAIL,IAAQ,EAAGq6D,GAAQ,EAAGoxE,EAAOh/G,IAAK5e,EAAK,GAAIhG,MAAK,KAAM,EAAG,EAC7D,IAAIoM,EAAQ,IAAK,CACfjU,EAAOsrI,EAAGC,UAAUC,EAAa,KACjCA,IAAe,EAEjBA,GAAenC,GAAOp1H,GAAS5T,EAAI,EAAI,MAAQ,OAAS,CACxD,IAAI4T,EAAQ,GAAI,CACdomD,EAAOixE,EAAGC,UAAUC,EAAa,KACjCA,IAAe,EAEjB,GAAIv3H,EAAQ,GAAI,CACdw3H,EAAOH,EAAGI,WAAWF,EAAa,KAClCA,IAAe,EAEjB,GAAIv3H,EAAQ,GAAI,CACdpG,EAAG+b,QAAQ/b,EAAGvF,UAAYgjI,EAAGI,WAAWF,EAAa,MAAQ,IAC7DA,IAAe,EAEjB,GAAI12F,EACJ,QAAQz+C,EAAI,IACV,IAAK,GACH,MACF,IAAK,GACHy+C,GAAQx0C,EAAG,IAAKD,EAAGorI,EACnB,OACF,IAAK,GACH32F,GAAQx0C,EAAG,IAAKD,EAAG+rC,EAAIiuB,GACvB,OACF,IAAK,GACHvlB,GAAQx0C,EAAG,IAAKD,EAAGwN,EACnB,OACF,IAAK,GACHinC,GAAQx0C,EAAG,IAAKD,EAAGorI,EAAO,EAC1B,OACF,IAAK,GACH32F,GAAQx0C,EAAG,IAAKD,EAAGorI,EAAO,MAC1B,OACF,IAAK,GACH32F,GAAQx0C,EAAG,IAAKD,EAAG,EACnB,OACF,IAAK,GACH,CACE,GAAIL,GAAQ,EACV80C,GAAQx0C,EAAG,IAAKD,EAAGgrI,EAAKrrI,QACrB,IAAIq6D,GAAQ,EACfvlB,GAAQx0C,EAAG,IAAKD,EAAG+rC,EAAIiuB,QACpB,KAAK/7D,MAAMmtI,GACd32F,GAAQx0C,EAAG,IAAKD,EAAGorI,OAEnB,MAAM,IAAIh3I,OAAM,yBAAyB+K,OAAOnJ,EAAIsB,MAAM,EAAG,KAEjE,MACF,QACE,KAAM,IAAIlD,OAAM,yBAAyB+K,OAAOnJ,EAAIsB,MAAM,EAAG,MAEjE,MAAOm9C,GAET,QAAS62F,IAAkBt1I,EAAK+1C,EAAKi/F,GACnC,GAAIC,GAAKhD,GAAejyI,EACxB,IAAI4d,GAAQq3H,EAAGC,UAAU,EAAG,KAC5B,IAAIC,GAAc,EAClB,IAAIxrI,IAAQ,EAAGq6D,GAAQ,EAAGuxE,EAAOn/G,IAAKg/G,EAAOh/G,IAAK5e,EAAK,GAAIhG,MAAK,KAAM,EAAG,EACzE,IAAIoM,EAAQ,EAAG,CACb23H,EAAOtC,GAAiBjzI,EAAKm1I,EAC7BA,IAAe,GAEjB,GAAIv3H,EAAQ,EAAG,CACbw3H,EAAOH,EAAGI,WAAWF,EAAa,KAClCA,IAAe,EAEjB,GAAIv3H,EAAQ,EAAG,CACbpG,EAAG+b,QAAQ/b,EAAGvF,UAAYgjI,EAAGI,WAAWF,EAAa,MAAQ,IAC7DA,IAAe,EAEjB,GAAIv3H,EAAQ,EAAG,CACbomD,EAAOixE,EAAGC,UAAUC,EAAa,KACjCA,IAAe,EAEjB,GAAIv3H,EAAQ,GAAI,CACdjU,EAAOsrI,EAAGC,UAAUC,EAAa,KACjCA,IAAe,EAEjB,GAAI12F,EACJ,QAAQz+C,EAAI,IACV,IAAK,GACH,MACF,IAAK,GACHy+C,GAAQx0C,EAAG,IAAKD,EAAGurI,EACnB,OACF,IAAK,GACH92F,GAAQx0C,EAAG,IAAKD,EAAG+rC,EAAIiuB,GACvB,OACF,IAAK,GACHvlB,GAAQx0C,EAAG,IAAKD,EAAGwN,EACnB,OACF,IAAK,GACHinC,GAAQx0C,EAAG,IAAKD,EAAGorI,EAAO,EAC1B,OACF,IAAK,GACH32F,GAAQx0C,EAAG,IAAKD,EAAGorI,EAAO,MAC1B,OACF,IAAK,GACH32F,GAAQx0C,EAAG,IAAKD,EAAG,EACnB,OACF,IAAK,GACH,CACE,GAAIL,GAAQ,EACV80C,GAAQx0C,EAAG,IAAKD,EAAGgrI,EAAKrrI,QAExB,MAAM,IAAIvL,OAAM,yBAAyB+K,OAAOnJ,EAAI,GAAI,OAAOmJ,OAAOyU,EAAQ,GAAI,OAAOzU,OAAOnJ,EAAIsB,MAAM,EAAG,KAEjH,MACF,IAAK,IACHm9C,GAAQx0C,EAAG,IAAKD,EAAGurI,EACnB,OACF,QACE,KAAM,IAAIn3I,OAAM,yBAAyB+K,OAAOnJ,EAAI,GAAI,OAAOmJ,OAAOyU,EAAQ,GAAI,OAAOzU,OAAOnJ,EAAIsB,MAAM,EAAG,MAEjH,MAAOm9C,GAET,QAAS+2F,IAAkBhzG,EAAMuT,GAC/B,GAAI50C,GAAM,GAAIoH,YAAW,IAAK0sI,EAAKhD,GAAe9wI,GAAM0D,EAAI,GAAI+Y,EAAQ,CACxEzc,GAAI,GAAK,CACT,QAAQqhC,EAAKv4B,GACX,IAAK,IACH9I,EAAI,GAAK,CACTiyI,IAAkBjyI,EAAK0D,EAAG29B,EAAKx4B,EAC/B4T,IAAS,CACT/Y,IAAK,EACL,OACF,IAAK,IACH1D,EAAI,GAAK,CACT8zI,GAAGQ,WAAW5wI,EAAG29B,EAAKx4B,EAAI,EAAI,EAAG,KACjC4T,IAAS,CACT/Y,IAAK,CACL,OACF,IAAK,IACH,GAAIkxC,EAAIlyC,QAAQ2+B,EAAKx4B,KAAO,EAC1B,KAAM,IAAI5L,OAAM,SAAS+K,OAAOq5B,EAAKx4B,EAAG,sBAC1C7I,GAAI,GAAK,CACT8zI,GAAGS,UAAU7wI,EAAGkxC,EAAIlyC,QAAQ2+B,EAAKx4B,GAAI,KACrC4T,IAAS,CACT/Y,IAAK,CACL,OACF,QACE,KAAM,yBAA2B29B,EAAKv4B,GAE1CgrI,EAAGS,UAAU,EAAG93H,EAAO,KACvB,OAAOzc,GAAIG,MAAM,EAAGuD,GAEtB,QAAS8wI,IAAkBnzG,EAAMuT,GAC/B,GAAI50C,GAAM,GAAIoH,YAAW,IAAK0sI,EAAKhD,GAAe9wI,GAAM0D,EAAI,GAAI+Y,EAAQ,CACxEzc,GAAI,GAAK,CACT,QAAQqhC,EAAKv4B,GACX,IAAK,IACH9I,EAAI,GAAK,CACT8zI,GAAGQ,WAAW5wI,EAAG29B,EAAKx4B,EAAG,KACzB4T,IAAS,EACT/Y,IAAK,CACL,OACF,IAAK,IACH1D,EAAI,GAAK,CACT8zI,GAAGQ,WAAW5wI,EAAG29B,EAAKx4B,EAAI,EAAI,EAAG,KACjC4T,IAAS,EACT/Y,IAAK,CACL,OACF,IAAK,IACH,GAAIkxC,EAAIlyC,QAAQ2+B,EAAKx4B,KAAO,EAC1B,KAAM,IAAI5L,OAAM,SAAS+K,OAAOq5B,EAAKx4B,EAAG,sBAC1C7I,GAAI,GAAK,CACT8zI,GAAGS,UAAU7wI,EAAGkxC,EAAIlyC,QAAQ2+B,EAAKx4B,GAAI,KACrC4T,IAAS,EACT/Y,IAAK,CACL,OACF,QACE,KAAM,yBAA2B29B,EAAKv4B,GAE1CgrI,EAAGS,UAAU,EAAG93H,EAAO,KACvB,OAAOzc,GAAIG,MAAM,EAAGuD,GAEtB,QAAS+wI,IAAmB51I,EAAK+1C,EAAKi/F,GACpC,OAAQh1I,EAAI,IACV,IAAK,IACL,IAAK,IACL,IAAK,IACL,IAAK,GACH,MAAO+0I,IAAkB/0I,EAAK+1C,EAAKi/F,EAAMh1I,EAAI,IAC/C,IAAK,GACH,MAAOs1I,IAAkBt1I,EAAK+1C,EAAKi/F,GACrC,QACE,KAAM,IAAI52I,OAAM,+BAA+B+K,OAAOnJ,EAAI,OAGhE,QAAS61I,IAAoB71I,GAC3B,GAAI81I,GAAKnC,GAAc3zI,EACvB,OAAOqzI,IAAeyC,EAAG,GAAG,GAAG70I,MAEjC,QAAS80I,IAAoB3hI,GAC3B,GAAIjT,KACJA,GAAI,KAAQmS,KAAM,EAAGrS,KAAMuyI,GAAep/H,IAC1C,OAAOw/H,IAAczyI,GAEvB,QAAS60I,IAAwBryI,EAAG3F,GAClC,GAAI83I,GAAKnC,GAAc31I,EAAKiD,KAC5B,IAAIqS,GAAOmgI,GAAcqC,EAAG,GAAG,GAAG70I,KAClC,IAAIw/C,GAAUq1F,EAAG,EACjB,IAAI70I,OACHw/C,OAAex9C,QAAQ,SAAS8d,GAC/B,GAAIk1H,GAAKtC,GAAc5yH,EAAM9f,KAC7B,IAAI2xB,GAAM6gH,GAAcwC,EAAG,GAAG,GAAGh1I,QAAU,CAC3C,QAAQqS,GACN,IAAK,GACHrS,EAAK2xB,GAAO2/G,GAAM0D,EAAG,GAAG,GAAGh1I,KAC3B,OACF,IAAK,GACH,CACE,GAAI4kD,GAAKliD,EAAEkyI,GAAoBI,EAAG,GAAG,GAAGh1I,OAAO,EAC/C,IAAIi1I,GAAMvC,GAAc9tF,EAAG5kD,KAC3B,IAAIk1I,GAASxyI,EAAEkyI,GAAoBK,EAAI,GAAG,GAAGj1I,OAAO,EACpD,IAAIm1I,GAAQ3C,GAAc0C,EAAOt0E,KAAK,GAAG,GAAG5gE,KAC5C,IAAIm1I,GAAS,KACX,KAAM,IAAIh4I,OAAM,gCAAgC+K,OAAOitI,GACzD,IAAIC,GAAS1C,GAAcwC,EAAOl1I,KAClCA,GAAK2xB,GAAOyjH,EAAO,GAAG7zI,IAAI,SAASjD,GACjC,MAAOgzI,IAAMhzI,EAAE0B,QACd8C,KAAK,IAEV,SAGN,OAAO9C,GAET,QAASq1I,IAAsB9D,EAAIl/H,GACjC,GAAI2gI,GAAIsC,EAAIC,EAAI/jC,EAAIgkC,EAAIr9E,EAAIs9E,EAAIC,EAAIC,EAAI3xB,EAAI4xB,EAAIC,EAAIC,EAAIx9E,CACxD,IAAIu8E,GAAKnC,GAAcnB,EACvB,IAAIn2H,GAAIo3H,GAAcqC,EAAG,GAAG,GAAG70I,QAAU,CACzC,IAAIsgB,GAAMkyH,GAAcqC,EAAG,GAAG,GAAG70I,QAAU,CAC3C,IAAI+1I,KAAiBT,GAAMtC,EAAK6B,EAAG,KAAO,SAAY,GAAI7B,EAAG,KAAO,SAAY,GAAIsC,EAAGt1I,OAASwyI,GAAcqC,EAAG,GAAG,GAAG70I,MAAQ,GAAK,KACpI,IAAIg2I,GAAiBC,CACrB,MAAMzkC,GAAM+jC,EAAKV,EAAG,KAAO,SAAY,GAAIU,EAAG,KAAO,SAAY,GAAI/jC,EAAGxxG,OAASqS,GAAQ,EAAG,CAC1F2jI,GAAmB79E,GAAMq9E,EAAKX,EAAG,KAAO,SAAY,GAAIW,EAAG,KAAO,SAAY,GAAIr9E,EAAGn4D,IACrFi2I,IAAgBP,GAAMD,EAAKZ,EAAG,KAAO,SAAY,GAAIY,EAAG,KAAO,SAAY,GAAIC,EAAG11I,SAC7E,MAAMgkH,GAAM2xB,EAAKd,EAAG,KAAO,SAAY,GAAIc,EAAG,KAAO,SAAY,GAAI3xB,EAAGhkH,OAASqS,GAAQ,EAAG,CACjG2jI,GAAmBH,GAAMD,EAAKf,EAAG,KAAO,SAAY,GAAIe,EAAG,KAAO,SAAY,GAAIC,EAAG71I,IACrFi2I,IAAgB39E,GAAMw9E,EAAKjB,EAAG,KAAO,SAAY,GAAIiB,EAAG,KAAO,SAAY,GAAIx9E,EAAGt4D,SAElF,MAAM,wBAAwBkI,OAAOmK,EAAM,gBAC7C,IAAI2vC,GAAQ+zF,EAAe,EAAI,CAC/B,IAAIG,GAAuBlF,GAAegF,EAC1C,IAAIr3D,KACJ,KAAK,GAAIl8E,GAAI,EAAGA,EAAIuzI,EAAgB15I,OAAS,IAAKmG,EAAG,CACnD,GAAIumB,GAAMktH,EAAqBC,UAAU1zI,EAAI,EAAG,KAChD,IAAIumB,EAAM,MACR21D,EAAQ96E,MAAMpB,EAAGumB,IAErB,GAAI21D,EAAQriF,QAAUgkB,EACpB,KAAM,YAAYpY,OAAOoY,EAAK,kBAAkBpY,OAAOy2E,EAAQriF,OACjE,IAAI6tG,KACJ,KAAK1nG,EAAI,EAAGA,EAAIk8E,EAAQriF,OAAS,IAAKmG,EACpC0nG,EAAMxrB,EAAQl8E,GAAG,IAAMwzI,EAAat8H,SAASglE,EAAQl8E,GAAG,GAAKu/C,EAAO28B,EAAQl8E,EAAI,GAAG,GAAKu/C,EAC1F,IAAI28B,EAAQriF,QAAU,EACpB6tG,EAAMxrB,EAAQA,EAAQriF,OAAS,GAAG,IAAM25I,EAAat8H,SAASglE,EAAQA,EAAQriF,OAAS,GAAG,GAAK0lD,EACjG,QAAS5mC,EAAGA,EAAG+uF,MAAOA,GAExB,QAASisC,IAAe1zI,EAAG3F,GACzB,GAAIi2I,EACJ,IAAI6B,GAAKnC,GAAc31I,EAAKiD,KAC5B,IAAIyhB,KAAYuxH,EAAK6B,GAAM,SAAY,GAAIA,EAAG,KAAO,SAAY,GAAI7B,EAAG,IAAMR,GAAcqC,EAAG,GAAG,GAAG70I,QAAU,EAAI,EAAI,EAAI,GAAK,CAChI,IAAIoV,GAAK09H,GAAM+B,EAAG,GAAI,SAAStD,GAC7B,MAAO8D,IAAsB9D,EAAI9vH,IAEnC,QACE40H,MAAO7D,GAAcqC,EAAG,GAAG,GAAG70I,QAAU,EACxCA,KAAMoV,EAAGy8H,OAAO,SAASC,EAAKxzI,GAC5B,IAAKwzI,EAAIxzI,EAAE8c,GACT02H,EAAIxzI,EAAE8c,KACR9c,GAAE6rG,MAAMnoG,QAAQ,SAASu/B,EAAM9+B,GAC7B,GAAIqvI,EAAIxzI,EAAE8c,GAAG3Y,GACX,KAAM,IAAItF,OAAM,oBAAoB+K,OAAO5J,EAAE8c,EAAG,OAAOlT,OAAOzF,GAChEqvI,GAAIxzI,EAAE8c,GAAG3Y,GAAK8+B,GAEhB,OAAOuwG,SAIb,QAASwE,IAA4B5zI,EAAG3F,EAAMgnC,GAC5C,GAAIivG,EACJ,IAAI6B,GAAKnC,GAAc31I,EAAKiD,KAC5B,IAAI4hC,IAAUhgC,GAAKiS,EAAG,EAAGlT,EAAG,GAAKvE,GAAKyX,EAAG,EAAGlT,EAAG,GAC/CihC,GAAMxlC,EAAEyX,GAAK2+H,GAAcqC,EAAG,GAAG,GAAG70I,QAAU,GAAK,CACnD,IAAI4hC,EAAMxlC,EAAEyX,EAAI,EACd,KAAM,IAAI1W,OAAM,sBAAsB+K,OAAO2sI,EAAG,GAAG,GAAG70I,MACxD4hC,GAAMxlC,EAAEuE,GAAK6xI,GAAcqC,EAAG,GAAG,GAAG70I,QAAU,GAAK,CACnD,IAAI4hC,EAAMxlC,EAAEuE,EAAI,EACd,KAAM,IAAIxD,OAAM,sBAAsB+K,OAAO2sI,EAAG,GAAG,GAAG70I,MACxD+jC,GAAG,QAAUjB,GAAalB,EAC1B,IAAI20G,GAAQ7D,GAAcmC,EAAG,GAAG,GAAG70I,KACnC,IAAI80C,GAAMigG,GAAwBryI,EAAGA,EAAEkyI,GAAoB2B,EAAM,GAAG,GAAGv2I,OAAO;AAC9E,GAAI+zI,KAASf,EAAKuD,EAAM,MAAQ,SAAY,GAAIvD,EAAG,IAAM+B,GAAwBryI,EAAGA,EAAEkyI,GAAoB2B,EAAM,IAAI,GAAGv2I,OAAO,MAC9H,IAAIw2I,GAAO9D,GAAc6D,EAAM,GAAG,GAAGv2I,KACrC,IAAIgkC,GAAK,CACTwyG,GAAK,GAAGx0I,QAAQ,SAASgH,GACvB,GAAIytI,GAAK/D,GAAc1pI,EAAEhJ,KACzB,IAAIqwD,GAAM3tD,EAAEkyI,GAAoB6B,EAAG,GAAG,GAAGz2I,OAAO,EAChD,IAAIm1I,GAAQ3C,GAAcniF,EAAIuQ,KAAK,GAAG,GAAG5gE,KACzC,IAAIm1I,GAAS,KACX,KAAM,IAAIh4I,OAAM,gCAAgC+K,OAAOitI,GACzD,IAAIuB,GAAQN,GAAe1zI,EAAG2tD,EAC9BqmF,GAAM12I,KAAKgC,QAAQ,SAAS6rB,EAAKzS,GAC/ByS,EAAI7rB,QAAQ,SAASjD,EAAK0D,GACxB,GAAIme,GAAOkhB,IAAcjuB,EAAGmwB,EAAK5oB,EAAGza,EAAG8B,GACvC,IAAIq0B,GAAM69G,GAAmB51I,EAAK+1C,EAAKi/F,EACvC,IAAIj9G,EACFiN,EAAGnjB,GAAQkW,KAGjBkN,IAAM0yG,EAAML,QAGhB,QAASM,IAA2Bj0I,EAAG3F,GACrC,GAAI83I,GAAKnC,GAAc31I,EAAKiD,KAC5B,IAAIE,IAAQujE,OAAQ,KACpB,IAAImzE,GAAWl0I,EAAEkyI,GAAoBC,EAAG,GAAG,GAAG70I,MAC9C,IAAIm1I,GAAQ3C,GAAcoE,EAAS,GAAGh2E,KAAK,GAAG,GAAG5gE,KACjD,IAAIm1I,GAAS,KACX,KAAM,IAAIh4I,OAAM,gCAAgC+K,OAAOitI,GACzDmB,IAA4B5zI,EAAGk0I,EAAS,GAAI12I,EAC5C,OAAOA,GAET,QAAS22I,IAAsBn0I,EAAG3F,GAChC,GAAIi2I,EACJ,IAAI6B,GAAKnC,GAAc31I,EAAKiD,KAC5B,IAAIE,IACF0e,OAAQo0H,EAAK6B,EAAG,KAAO,SAAY,GAAI7B,EAAG,IAAM1B,GAAMuD,EAAG,GAAG,GAAG70I,MAAQ,GACvEyjC,UAEF,IAAIqzG,GAAYhE,GAAM+B,EAAG,GAAID,GAC7BkC,GAAU90I,QAAQ,SAASgnB,GACzBtmB,EAAEsmB,GAAKhnB,QAAQ,SAASkO,GACtB,GAAIilI,GAAQ3C,GAActiI,EAAE0wD,KAAK,GAAG,GAAG5gE,KACvC,IAAIm1I,GAAS,IACXj1I,EAAIujC,OAAO5/B,KAAK8yI,GAA2Bj0I,EAAGwN,OAGpD,OAAOhQ,GAET,QAAS62I,IAAyBr0I,EAAG3F,GACnC,GAAImD,GAAMupI,IACV,IAAIoL,GAAKnC,GAAc31I,EAAKiD,KAC5B,IAAIg3I,GAAYlE,GAAM+B,EAAG,GAAID,GAC7BoC,GAAUh1I,QAAQ,SAASgnB,GACzBtmB,EAAEsmB,GAAKhnB,QAAQ,SAASkO,GACtB,GAAIilI,GAAQ3C,GAActiI,EAAE0wD,KAAK,GAAG,GAAG5gE,KACvC,IAAIm1I,GAAS,EAAG,CACd,GAAI8B,GAAQJ,GAAsBn0I,EAAGwN,EACrC+mI,GAAMxzG,OAAOzhC,QAAQ,SAASwhC,EAAOrwB,GACnCu2H,GAAkBxpI,EAAKsjC,EAAOrwB,GAAO,EAAI8jI,EAAMr4H,KAAOq4H,EAAMr4H,KAAO,IAAMzL,EAAK,YAKtF,IAAIjT,EAAIwjC,WAAWpnC,QAAU,EAC3B,KAAM,IAAIa,OAAM,qBAClB,OAAO+C,GAET,QAASg3I,IAAkBl1H,GACzB,GAAIgxH,GAAIsC,EAAIC,EAAI/jC,CAChB,IAAI9uG,MAAQy0I,IACZn1H,GAAI/C,UAAUjd,QAAQ,SAASuZ,GAC7B,GAAIA,EAAErY,MAAM,WACV,KAAM,IAAI/F,OAAM,oCAEpB6kB,GAAIhD,UAAUhd,QAAQ,SAASJ,GAC7B,IAAKA,EAAEgd,KAAK1b,MAAM,UAChB,MACF,IAAI+C,EACJ,KACEA,EAAI0tI,GAAoB/xI,EAAE2G,SAC1B,MAAOnM,GACP,MAAOmpB,SAAQzT,IAAI,MAAQlQ,EAAE2G,QAAQjM,OAAS,KAAOF,EAAEqpB,SAAWrpB,IAEpE,GAAIg7I,EACJ,KACEA,EAAUrE,GAAe9sI,GACzB,MAAO7J,GACP,MAAOmpB,SAAQzT,IAAI,OAAS1V,EAAEqpB,SAAWrpB,IAE3Cg7I,EAAQp1I,QAAQ,SAASq1I,GACvB30I,EAAE20I,EAAOtxF,IAAMsxF,EAAOpE,QACtBkE,GAAQtzI,KAAKwzI,EAAOtxF,OAGxB,KAAKoxF,EAAQ76I,OACX,KAAM,IAAIa,OAAM,uBAClB,IAAIm6I,KAAY9lC,GAAM+jC,GAAMD,GAAMtC,EAAKtwI,GAAK,SAAY,GAAIA,EAAE,KAAO,SAAY,GAAIswI,EAAG,KAAO,SAAY,GAAIsC,EAAG10E,OAAS,SAAY,GAAI20E,EAAG,KAAO,SAAY,GAAI/jC,EAAG,GAAGxxG,OAASwyI,GAAc9vI,EAAE,GAAG,GAAGk+D,KAAK,GAAG,GAAG5gE,OAAS,GAAK0C,EAAE,GAAG,EACxO,KAAK40I,EACHH,EAAQn1I,QAAQ,SAASmR,GACvBzQ,EAAEyQ,GAAKnR,QAAQ,SAASu1I,GACtB,GAAIpC,GAAQ3C,GAAc+E,EAAK32E,KAAK,GAAG,GAAG5gE,QAAU,CACpD,IAAIm1I,GAAS,EAAG,CACd,IAAKmC,EACHA,EAAUC,MAEV,MAAM,IAAIp6I,OAAM,mCAI1B,KAAKm6I,EACH,KAAM,IAAIn6I,OAAM,4BAClB,OAAO45I,IAAyBr0I,EAAG40I,GAErC,QAASE,IAAeC,EAAKz3I,EAAMm2C,GACjC,GAAI68F,GAAIsC,EAAIC,EAAI/jC,CAChB,OAAOwhC,EAAKyE,EAAI,KAAO,SAAY,GAAIzE,EAAG,QAAUsC,EAAKmC,EAAI,KAAO,SAAY,GAAInC,EAAG,IACrF,KAAM,2CACR,IAAIS,KAAiBvkC,GAAM+jC,EAAKkC,EAAI,KAAO,SAAY,GAAIlC,EAAG,KAAO,SAAY,GAAI/jC,EAAGxxG,OAASwyI,GAAciF,EAAI,GAAG,GAAGz3I,MAAQ,GAAK,KACtI,IAAI+1I,EACF,KAAM,qCACR,IAAIz1H,GAAM,CACV,IAAI0zH,GAAKhD,GAAeyG,EAAI,GAAG,GAAGz3I,MAAO03I,EAAc,EAAGC,IAC1D,IAAIC,GAAM5G,GAAeyG,EAAI,GAAG,GAAGz3I,MAAO63I,EAAe,EAAGC,IAC5D,KAAK,GAAIr1I,GAAI,EAAGA,EAAIzC,EAAK1D,SAAUmG,EAAG,CACpC,GAAIzC,EAAKyC,IAAM,KAAM,CACnBuxI,EAAG+D,UAAUt1I,EAAI,EAAG,MAAO,KAC3Bm1I,GAAIG,UAAUt1I,EAAI,EAAG,MACrB,UAEFuxI,EAAG+D,UAAUt1I,EAAI,EAAGi1I,EAAa,KACjCE,GAAIG,UAAUt1I,EAAI,EAAGo1I,EAAc,KACnC,IAAIG,GAASC,CACb,cAAej4I,GAAKyC,IAClB,IAAK,SACHu1I,EAAUzD,IAAoBvrI,EAAG,IAAKD,EAAG/I,EAAKyC,IAAM0zC,EACpD8hG,GAAWvD,IAAoB1rI,EAAG,IAAKD,EAAG/I,EAAKyC,IAAM0zC,EACrD,OACF,IAAK,SACH6hG,EAAUzD,IAAoBvrI,EAAG,IAAKD,EAAG/I,EAAKyC,IAAM0zC,EACpD8hG,GAAWvD,IAAoB1rI,EAAG,IAAKD,EAAG/I,EAAKyC,IAAM0zC,EACrD,OACF,IAAK,UACH6hG,EAAUzD,IAAoBvrI,EAAG,IAAKD,EAAG/I,EAAKyC,IAAM0zC,EACpD8hG,GAAWvD,IAAoB1rI,EAAG,IAAKD,EAAG/I,EAAKyC,IAAM0zC,EACrD,OACF,QACE,KAAM,IAAIh5C,OAAM,qBAAuB6C,EAAKyC,KAEhDk1I,EAAa9zI,KAAKm0I,EAClBN,IAAeM,EAAQ17I,MACvBw7I,GAAcj0I,KAAKo0I,EACnBJ,IAAgBI,EAAS37I,SACvBgkB,EAEJm3H,EAAI,GAAG,GAAGz3I,KAAOuyI,GAAejyH,EAChC,MAAO7d,EAAIg1I,EAAI,GAAG,GAAGz3I,KAAK1D,OAAS,IAAKmG,EAAG,CACzCuxI,EAAG+D,UAAUt1I,EAAI,EAAG,MAAO,KAC3Bm1I,GAAIG,UAAUt1I,EAAI,EAAG,MAAO,MAE9Bg1I,EAAI,GAAG,GAAGz3I,KAAO2xI,GAASgG,EAC1BF,GAAI,GAAG,GAAGz3I,KAAO2xI,GAASmG,EAC1B,OAAOx3H,GAET,QAAS43H,IAAkBtxF,EAAIn3C,GAC7B,IAAKA,IAASA,EAAK0oI,QACjB,KAAM,IAAIh7I,OAAM,mDAClB,IAAI4mC,GAAK6iB,EAAGjjB,OAAOijB,EAAGljB,WAAW,GACjC,IAAIkjB,EAAGljB,WAAWpnC,OAAS,EACzBipB,QAAQC,MAAM,2DAChB,IAAIoc,GAAQiB,GAAakB,EAAG,QAC5BnC,GAAMhgC,EAAEiS,EAAI+tB,EAAMhgC,EAAEjB,EAAI,CACxB,IAAIy3I,GAAQ,KACZ,IAAIx2G,EAAMxlC,EAAEuE,EAAI,EAAG,CACjBy3I,EAAQ,IACRx2G,GAAMxlC,EAAEuE,EAAI,EAEd,GAAIihC,EAAMxlC,EAAEyX,EAAI,GAAI,CAClBukI,EAAQ,IACRx2G,GAAMxlC,EAAEyX,EAAI,GAEd,GAAIukI,EACF7yH,QAAQC,MAAM,8CAA8Ctd,OAAO46B,GAAalB,IAClF,IAAI5hC,GAAOy3D,GAAc1zB,GAAMnC,MAAOA,EAAOzjB,OAAQ,GACrD,IAAIg4B,IAAO,YACXn2C,GAAKgC,QAAQ,SAAS6rB,GACpB,MAAOA,GAAI7rB,QAAQ,SAASu/B,GAC1B,SAAWA,IAAQ,SACjB4U,EAAItyC,KAAK09B,MAGf,IAAI82G,KACJ,IAAIlB,KACJ,IAAIn1H,GAAM/G,GAAI6G,KAAKrS,EAAK0oI,SAAW9lI,KAAM,UACzC2P,GAAIhD,UAAUzd,IAAI,SAASsqB,EAAI1Y,GAC7B,OAAQ0Y,EAAI7J,EAAI/C,UAAU9L,MACzBnR,QAAQ,SAAS6rB,GAClB,GAAIhC,GAAKgC,EAAI,GAAIjC,EAAKiC,EAAI,EAC1B,IAAIhC,EAAGxZ,MAAQ,EACb,MACF,KAAKwZ,EAAGjN,KAAK1b,MAAM,SACjB,MACF,IAAIo1I,GAAczsH,EAAGtjB,OACrB,IAAIgwI,GAAO5E,GAAoB2E,EAC/B,IAAIE,GAAKzF,GAAewF,EACxBC,GAAGx2I,QAAQ,SAASy2I,GAClBtB,EAAQtzI,KAAK40I,EAAQ1yF,GACrBsyF,GAAWI,EAAQ1yF,KAAQ2yF,QAAU1wC,SAAUp8E,EAAIvZ,KAAMmgI,GAAciG,EAAQxF,SAAS,GAAGryE,KAAK,GAAG,GAAG5gE,UAG1Gm3I,GAAQt0H,KAAK,SAAS21H,EAAIG,GACxB,MAAOH,GAAKG,GAEd,IAAIC,GAAiBzB,EAAQprE,OAAO,SAASysE,GAC3C,MAAOA,GAAK,IACXj3I,IAAI,SAASi3I,GACd,OAAQA,EAAIjG,GAAeiG,KAE7Bx2H,GAAIhD,UAAUzd,IAAI,SAASsqB,EAAI1Y,GAC7B,OAAQ0Y,EAAI7J,EAAI/C,UAAU9L,MACzBnR,QAAQ,SAAS6rB,GAClB,GAAIhC,GAAKgC,EAAI,GAAIjC,EAAKiC,EAAI,EAC1B,KAAKhC,EAAGjN,KAAK1b,MAAM,SACjB,MACF,IAAIs1I,GAAKzF,GAAeY,GAAoB9nH,EAAGtjB,SAC/CiwI,GAAGx2I,QAAQ,SAASqxI,GAClBA,EAAGJ,SAASjxI,QAAQ,SAASkO,GAC3B0oI,EAAe52I,QAAQ,SAAS62I,GAC9B,GAAIxF,EAAGJ,SAAS6F,KAAK,SAASC,GAC5B,MAAOvG,IAAcuG,EAAKn4E,KAAK,GAAG,GAAG5gE,OAAS,OAASyxI,GAAWsH,EAAK/4I,KAAM64I,EAAI,MAC/E,CACFR,EAAWQ,EAAI,IAAIH,KAAK70I,KAAKwvI,EAAGttF,YAM1C,SAASizF,KACP,IAAK,GAAI38I,GAAI,OAAQA,EAAI,MAAOA,EAC9B,IAAKg8I,EAAWh8I,GACd,MAAOA,EACX,MAAM,IAAIc,OAAM,qBAElB,GAAI2iB,GAAQ7E,GAAImH,KAAKJ,EAAKq2H,EAAW,GAAGrwC,SACxC,IAAI1pG,GAAIy0I,GAAeY,GAAoB7zH,EAAMvX,SACjD,IAAI+uI,EACJ,KAAK,GAAI2B,GAAK,EAAGA,EAAK36I,EAAEhC,SAAU28I,EAAI,CACpC,GAAI5B,GAAS/4I,EAAE26I,EACf,IAAI5B,EAAOtxF,IAAM,EACfuxF,EAAUD,EAEd,GAAI6B,GAAetE,GAAoBlC,GAAc4E,EAAQrE,SAAS,GAAGjzI,MAAM,GAAG,GAAGA,KACrF8f,GAAQ7E,GAAImH,KAAKJ,EAAKq2H,EAAWa,GAAclxC,SAC/C1pG,GAAIy0I,GAAeY,GAAoB7zH,EAAMvX,SAC7C,KAAK0wI,EAAK,EAAGA,EAAK36I,EAAEhC,SAAU28I,EAAI,CAChC5B,EAAS/4I,EAAE26I,EACX,IAAI5B,EAAOtxF,IAAMmzF,EACf5B,EAAUD,EAEd6B,EAAetE,GAAoBlC,GAAc4E,EAAQrE,SAAS,GAAGjzI,MAAM,GAAG,GAAGA,KACjF8f,GAAQ7E,GAAImH,KAAKJ,EAAKq2H,EAAWa,GAAclxC,SAC/C1pG,GAAIy0I,GAAeY,GAAoB7zH,EAAMvX,SAC7C,KAAK0wI,EAAK,EAAGA,EAAK36I,EAAEhC,SAAU28I,EAAI,CAChC5B,EAAS/4I,EAAE26I,EACX,IAAI5B,EAAOtxF,IAAMmzF,EACf5B,EAAUD,EAEd6B,EAAetE,GAAoBlC,GAAc4E,EAAQrE,SAAS,GAAGjzI,MAAM,GAAG,GAAGA,KACjF8f,GAAQ7E,GAAImH,KAAKJ,EAAKq2H,EAAWa,GAAclxC,SAC/C1pG,GAAIy0I,GAAeY,GAAoB7zH,EAAMvX,SAC7C,KAAK0wI,EAAK,EAAGA,EAAK36I,EAAEhC,SAAU28I,EAAI,CAChC5B,EAAS/4I,EAAE26I,EACX,IAAI5B,EAAOtxF,IAAMmzF,EACf5B,EAAUD,EAEd,GAAIxC,GAAKnC,GAAc4E,EAAQrE,SAAS,GAAGjzI,KAC3C,EACE60I,EAAG,GAAG,GAAG70I,KAAOuyI,GAAe3wG,EAAMxlC,EAAEyX,EAAI,EAC3CghI,GAAG,GAAG,GAAG70I,KAAOuyI,GAAe3wG,EAAMxlC,EAAEuE,EAAI,EAC3C,IAAIw4I,GAAYvE,GAAoBC,EAAG,IAAI,GAAG70I,KAC9C,IAAIo5I,GAAYn+H,GAAImH,KAAKJ,EAAKq2H,EAAWc,GAAWnxC,SACpD,IAAIqxC,GAAKtG,GAAeY,GAAoByF,EAAU7wI,SACtD,EACE,IAAK,GAAI5L,GAAI,EAAGA,EAAI08I,EAAG/8I,SAAUK,EAAG,CAClC,GAAI08I,EAAG18I,GAAGopD,IAAMozF,EACd,MAEJ,GAAIE,EAAG18I,GAAGopD,IAAMozF,EACd,KAAM,4BACR,IAAIG,GAAS5G,GAAc2G,EAAG18I,GAAGs2I,SAAS,GAAGjzI,KAC7Cs5I,GAAO,KACPA,GAAO,MAASA,EAAO,KACvB,KAAK,GAAI72I,GAAI,EAAGA,GAAKm/B,EAAMxlC,EAAEuE,IAAK8B,EAAG,CACnC,GAAI82I,KACJA,GAAK,GAAKA,EAAK,KAAQlnI,KAAM,EAAGrS,KAAMuyI,GAAe9vI,EAAI,SACzD62I,GAAO,GAAGz1I,MAAOwO,KAAM,EAAGrS,KAAM2yI,GAAc4G,IAC9CD,GAAO,GAAGz1I,MAAOwO,KAAM,EAAGrS,KAAMuyI,GAAe9vI,IAC/C62I,GAAO,GAAGz1I,MAAOwO,KAAM,EAAGrS,KAAMuyI,GAAe9vI,KAEjD62I,EAAO,KACPA,GAAO,MAASA,EAAO,KACvB,KAAK,GAAIl+H,GAAI,EAAGA,GAAKwmB,EAAMxlC,EAAEyX,IAAKuH,EAAG,CACnCm+H,IACAA,GAAK,GAAKA,EAAK,KAAQlnI,KAAM,EAAGrS,KAAMuyI,GAAen3H,EAAI,SACzDk+H,GAAO,GAAGz1I,MAAOwO,KAAM,EAAGrS,KAAM2yI,GAAc4G,IAC9CD,GAAO,GAAGz1I,MAAOwO,KAAM,EAAGrS,KAAMuyI,GAAen3H,IAC/Ck+H,GAAO,GAAGz1I,MAAOwO,KAAM,EAAGrS,KAAMuyI,GAAen3H,KAEjDi+H,EAAG18I,GAAGs2I,SAAS,GAAGjzI,KAAO2yI,GAAc2G,GAEzCF,EAAU7wI,QAAUqrI,GAAkBT,GAAekG,GACrDD,GAAUl5H,KAAOk5H,EAAU7wI,QAAQjM,aAC5Bu4I,GAAG,GACV,IAAI0B,GAAQ7D,GAAcmC,EAAG,GAAG,GAAG70I,KACnC,EACEu2I,EAAM,GAAG,GAAGv2I,KAAOuyI,GAAe3wG,EAAMxlC,EAAEyX,EAAI,EAC9C,IAAI2lI,GAAc9G,GAAc6D,EAAM,GAAG,GAAGv2I,KAC5C,IAAIy5I,GAAiB7E,GAAoB4E,EAAY,GAAG,GAAGx5I,KAC3Do5I,GAAYn+H,GAAImH,KAAKJ,EAAKq2H,EAAWoB,GAAgBzxC,SACrDqxC,GAAKtG,GAAeY,GAAoByF,EAAU7wI,SAClD,EACE,GAAI8wI,EAAG,GAAGtzF,IAAM0zF,EACd,KAAM,yBACR,IAAIC,GAAchH,GAAc2G,EAAG,GAAGpG,SAAS,GAAGjzI,KAClD,KAAKob,EAAI,EAAGA,EAAIpb,EAAK1D,SAAU8e,EAAG,CAChC,GAAIu+H,GAAUjH,GAAcgH,EAAY,GAAG,GAAG15I,KAC9C25I,GAAQ,GAAG,GAAG35I,KAAOuyI,GAAen3H,EACpCu+H,GAAQ,GAAG,GAAG35I,KAAOuyI,GAAevyI,EAAKob,GAAG9e,OAC5Co9I,GAAY,GAAGt+H,IAAO/I,KAAMqnI,EAAY,GAAG,GAAGrnI,KAAMrS,KAAM2yI,GAAcgH,IAE1EN,EAAG,GAAGpG,SAAS,GAAGjzI,KAAO2yI,GAAc+G,GAEzCN,EAAU7wI,QAAUqrI,GAAkBT,GAAekG,GACrDD,GAAUl5H,KAAOk5H,EAAU7wI,QAAQjM,MACnC,IAAIs9I,GAAiBhF,GAAoB2B,EAAM,GAAG,GAAGv2I,KACrDo5I,GAAYn+H,GAAImH,KAAKJ,EAAKq2H,EAAWuB,GAAgB5xC,SACrDqxC,GAAKtG,GAAeY,GAAoByF,EAAU7wI,SAClD,EACE,GAAI8wI,EAAG,GAAGtzF,IAAM6zF,EACd,KAAM,yBACRF,GAAchH,GAAc2G,EAAG,GAAGpG,SAAS,GAAGjzI,KAC9C,KAAKyC,EAAI,EAAGA,GAAKm/B,EAAMxlC,EAAEuE,IAAK8B,EAAG,CAC/Bk3I,EAAUjH,GAAcgH,EAAY,GAAG,GAAG15I,KAC1C25I,GAAQ,GAAG,GAAG35I,KAAOuyI,GAAe9vI,EACpCk3I,GAAQ,GAAG,GAAG35I,KAAOuyI,GAAe3wG,EAAMxlC,EAAEyX,EAAI,EAChD6lI,GAAY,GAAGj3I,IAAO4P,KAAMqnI,EAAY,GAAG,GAAGrnI,KAAMrS,KAAM2yI,GAAcgH,IAE1EN,EAAG,GAAGpG,SAAS,GAAGjzI,KAAO2yI,GAAc+G,GAEzCN,EAAU7wI,QAAUqrI,GAAkBT,GAAekG,GACrDD,GAAUl5H,KAAOk5H,EAAU7wI,QAAQjM,MACnC,IAAIu9I,GAASjF,GAAoB2B,EAAM,GAAG,GAAGv2I,OAC7C,WACE,GAAI85I,GAAS7+H,GAAImH,KAAKJ,EAAKq2H,EAAWwB,GAAQ7xC,SAC9C,IAAI+xC,GAAKhH,GAAeY,GAAoBmG,EAAOvxI,SACnD,IAAIyxI,EACJ,KAAK,GAAIC,GAAM,EAAGA,EAAMF,EAAGz9I,SAAU29I,EAAK,CACxC,GAAIxB,GAAUsB,EAAGE,EACjB,IAAIxB,EAAQ1yF,IAAM8zF,EAChBG,EAAUvB,EAEd,GAAIyB,GAAUxH,GAAcsH,EAAQ/G,SAAS,GAAGjzI,KAChD,EACEk6I,EAAQ,KACR,IAAIC,KACJhkG,GAAIn0C,QAAQ,SAAS2S,EAAKtY,GACxB89I,EAAO,KAAQ9nI,KAAM,EAAGrS,KAAMuyI,GAAel2I,IAC7C89I,GAAO,KAAQ9nI,KAAM,EAAGrS,KAAMuyI,GAAe,IAC7C4H,GAAO,KAAQ9nI,KAAM,EAAGrS,KAAMwxI,GAAM78H,IACpCulI,GAAQ,GAAGr2I,MAAOwO,KAAM,EAAGrS,KAAM2yI,GAAcwH,OAGnDH,EAAQ/G,SAAS,GAAGjzI,KAAO2yI,GAAcuH,EACzC,IAAIE,GAAKjH,GAAe4G,EACxB,IAAIM,GAAQzG,GAAkBwG,EAC9BN,GAAOvxI,QAAU8xI,CACjBP,GAAO55H,KAAO45H,EAAOvxI,QAAQjM,UAE/B,IAAIk6I,GAAO9D,GAAc6D,EAAM,GAAG,GAAGv2I,KACrC,EACE,GAAIgJ,GAAIwtI,EAAK,GAAG,SACTA,GAAK,EACZ,IAAIC,GAAK/D,GAAc1pI,EAAEhJ,KACzB,EACE,GAAIs6I,GAAU1F,GAAoB6B,EAAG,GAAG,GAAGz2I,OAC3C,WACE,GAAIu6I,GAASt/H,GAAImH,KAAKJ,EAAKq2H,EAAWiC,GAAStyC,SAC/C,IAAIwyC,GAAKzH,GAAeY,GAAoB4G,EAAOhyI,SACnD,IAAIkyI,EACJ,KAAK,GAAIR,GAAM,EAAGA,EAAMO,EAAGl+I,SAAU29I,EAAK,CACxC,GAAIxB,GAAU+B,EAAGP,EACjB,IAAIxB,EAAQ1yF,IAAMu0F,EAChBG,EAAWhC,EAEf,GAAIiC,GAAWhI,GAAc+H,EAASxH,SAAS,GAAGjzI,KAClD,QACS06I,GAAS,SACTlE,GAAK,EACZ,IAAImE,GAAU,GAAIrzI,YAAWozI,EAAS,GAAG,GAAG16I,KAC5C06I,GAAS,KACT,IAAIp6H,GAAM,CACV,KAAK,GAAIs6H,GAAK,EAAGA,GAAMh5G,EAAMxlC,EAAEyX,IAAK+mI,EAAI,CACtC,GAAIC,GAAUnI,GAAciI,EAC5Br6H,IAAOk3H,GAAeqD,EAAS76I,EAAK46I,GAAKzkG,EACzC0kG,GAAQ,GAAG,GAAG76I,KAAOuyI,GAAeqI,EACpCF,GAAS,GAAG72I,MAAO7D,KAAM2yI,GAAckI,GAAUxoI,KAAM,IAEzDqoI,EAAS,KAAQroI,KAAM,EAAGrS,KAAMuyI,GAAe3wG,EAAMxlC,EAAEuE,EAAI,IAC3D+5I,GAAS,KAAQroI,KAAM,EAAGrS,KAAMuyI,GAAe3wG,EAAMxlC,EAAEyX,EAAI,IAC3D6mI,GAAS,KAAQroI,KAAM,EAAGrS,KAAMuyI,GAAejyH,IAC/Co6H,GAAS,KAAQroI,KAAM,EAAGrS,KAAMuyI,GAAe3wG,EAAMxlC,EAAEyX,EAAI,KAE7D4mI,EAASxH,SAAS,GAAGjzI,KAAO2yI,GAAc+H,EAC1C,IAAII,GAAK3H,GAAeqH,EACxB,IAAIH,GAAQzG,GAAkBkH,EAC9BP,GAAOhyI,QAAU8xI,CACjBE,GAAOr6H,KAAOq6H,EAAOhyI,QAAQjM,WAGjC0M,EAAEhJ,KAAO2yI,GAAc8D,GAEzBF,EAAM,GAAG,GAAGv2I,KAAO2yI,GAAc6D,GAEnC3B,EAAG,GAAG,GAAG70I,KAAO2yI,GAAc4D,GAEhCe,EAAQrE,SAAS,GAAGjzI,KAAO2yI,GAAckC,EACzC,IAAI5kI,GAAIkjI,GAAe70I,EACvB,IAAIy8I,GAAOnH,GAAkB3jI,EAC7B6P,GAAMvX,QAAUwyI,CAChBj7H,GAAMI,KAAOJ,EAAMvX,QAAQjM,MAC3B,OAAO0lB,GAET,QAASg5H,IAAchmG,GACtB,MAAO,SAASimG,GAASxrI,GACxB,IAAI,GAAIpT,GAAI,EAAGA,GAAK24C,EAAS14C,SAAUD,EAAG,CACzC,GAAIH,GAAI84C,EAAS34C,EACjB,IAAGoT,EAAKvT,EAAE,MAAQmI,UAAWoL,EAAKvT,EAAE,IAAMA,EAAE,EAC5C,IAAGA,EAAE,KAAO,IAAKuT,EAAKvT,EAAE,IAAM+4B,OAAOxlB,EAAKvT,EAAE,OAK/C,QAAS2hH,IAAcpuG,GACvBurI,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,SACNvrI,GAGH,QAASo5H,IAAep5H,GACxBurI,KACE,YAAa,QAEb,UAAW,QAEX,WAAY,SAEZ,cAAe,QAEf,MAAO,SACNvrI,GAEH,QAASyrI,IAAeh8I,GACvB,GAAG28B,GAAK4a,GAAG7zC,QAAQ1D,IAAM,EAAG,MAAO,OACnC,IAAG28B,GAAK2a,IAAMt3C,GAAK28B,GAAK2a,GAAI,MAAO,OACnC,IAAG3a,GAAK6a,IAAMx3C,GAAK28B,GAAK6a,GAAI,MAAO,QACnC,IAAG7a,GAAK8a,IAAMz3C,GAAK28B,GAAK8a,GAAI,MAAO,OACnC,OAAQz3C,IAAKA,EAAE5C,OAAU4C,EAAI,QAE9B,QAASi8I,IAAkBC,EAAQ33G,GAClC,IAAI23G,EAAQ,MAAO,EACnB,KACCA,EAAS33G,EAAOliC,IAAI,QAAS85I,GAAKl7I,GAAK,IAAIA,EAAE4lD,GAAI5lD,EAAE4lD,GAAK5lD,EAAEk1G,QAAU,QAAQl1G,EAAEye,KAAMw8H,EAAO,OAAOj7I,EAAE4lD,IAAIxO,OAAQ2jG,GAAeE,EAAO,OAAOj7I,EAAE4lD,IAAIzO,SAClJ,MAAMl7C,GAAK,MAAO,MACpB,OAAQg/I,GAAUA,EAAO9+I,SAAW,EAAI,KAAO8+I,EAGhD,QAASE,IAAiBjlH,EAAKnS,EAAMq3H,EAAU/3G,EAAOrwB,EAAKqoI,EAAW/3G,EAAQg4G,EAAOhsI,EAAMm3C,EAAI3S,EAAQR,GACtG,IACC+nG,EAAUh4G,GAAO0T,GAAWxgB,GAAUL,EAAKklH,EAAU,MAAOr3H,EAC5D,IAAIlkB,GAAOw2B,GAAWH,EAAKnS,EAC3B,IAAI2f,EACJ,QAAO43G,GACN,IAAK,QAAU53G,EAAM0zE,GAASv3G,EAAMkkB,EAAM/Q,EAAK1D,EAAM+rI,EAAUh4G,GAAQojB,EAAI3S,EAAQR,EAAS,OAC5F,IAAK,QAAU5P,EAAM2zE,GAASx3G,EAAMkkB,EAAM/Q,EAAK1D,EAAM+rI,EAAUh4G,GAAQojB,EAAI3S,EAAQR,EAClF,KAAI5P,IAAQA,EAAI,WAAY,KAC5B,IAAI63G,GAAQzkH,GAAa4M,EAAI,WAAW0T,OAAQrzB,EAChD,IAAIy3H,GAAS1kG,GAAcykG,EAC3B,IAAIE,GAAOx8D,GAAc1oD,GAAUL,EAAKqlH,EAAO,MAAOxkG,GAAWxgB,GAAUL,EAAKslH,EAAQ,MAAOD,GAC/F,IAAIG,GAAS5kH,GAAa2kH,EAAMF,EAChC,IAAII,GAAS7kG,GAAc4kG,EAC3Bh4G,GAAM4uE,GAAY/7E,GAAUL,EAAKwlH,EAAQ,MAAOA,EAAQpsI,EAAMynC,GAAWxgB,GAAUL,EAAKylH,EAAQ,MAAOD,GAASj1F,EAAI/iB,EACpH,OACD,IAAK,QAAUA,EAAM4zE,GAASz3G,EAAMkkB,EAAM/Q,EAAK1D,EAAM+rI,EAAUh4G,GAAQojB,EAAI3S,EAAQR,EAAS,OAC5F,IAAK,SAAU5P,EAAM6zE,GAAS13G,EAAMkkB,EAAM/Q,EAAK1D,EAAM+rI,EAAUh4G,GAAQojB,EAAI3S,EAAQR,EAAS,OAC5F,QAAS,KAAM,IAAIt2C,OAAM,2BAA6Bs+I,IAEvDh4G,EAAOD,GAASK,CAGhB,IAAIk4G,KACJ,IAAGP,GAAaA,EAAUh4G,GAAQhkC,GAAKg8I,EAAUh4G,IAAQxhC,QAAQ,SAAS9C,GACzE,GAAIw8I,GAAQ,EACZ,IAAGF,EAAUh4G,GAAOtkC,GAAGo4C,MAAQzb,GAAKqa,KAAM,CACzCwlG,EAAQzkH,GAAaukH,EAAUh4G,GAAOtkC,GAAGq4C,OAAQrzB,EACjD,IAAIkvB,GAAW0kE,GAAWthF,GAAWH,EAAKqlH,EAAO,MAAOA,EAAOjsI,EAC/D,KAAI2jC,IAAaA,EAAS92C,OAAQ,MAClCukF,IAAsBh9C,EAAKuP,EAAU,OAEtC,GAAGooG,EAAUh4G,GAAOtkC,GAAGo4C,MAAQzb,GAAKC,MAAO,CAC1C4/G,EAAQzkH,GAAaukH,EAAUh4G,GAAOtkC,GAAGq4C,OAAQrzB,EACjD63H,GAAYA,EAAU7zI,OAAO05E,GAAgBprD,GAAWH,EAAKqlH,EAAO,MAAOjsI,MAG7E,IAAGssI,GAAaA,EAAUz/I,OAAQukF,GAAsBh9C,EAAKk4G,EAAW,KAAMtsI,EAAK4kC,YAClF,MAAMj4C,GAAK,GAAGqT,EAAKorB,IAAK,KAAMz+B,IAGjC,QAAS4/I,IAAkB19I,GAAK,MAAOA,GAAE9B,OAAO,IAAM,IAAM8B,EAAE+B,MAAM,GAAK/B,EAEzE,QAASif,IAAU8Y,EAAK5mB,GACvBuI,IACAvI,GAAOA,KACPouG,IAAcpuG,EAGd,IAAG2mB,GAAeC,EAAK,yBAA0B,MAAOm3G,IAAUn3G,EAAK5mB,EAEvE,IAAG2mB,GAAeC,EAAK,kBAAmB,MAAOm3G,IAAUn3G,EAAK5mB,EAEhE,IAAG2mB,GAAeC,EAAK,sBAAuB,CAC7C,SAAU/uB,aAAc,YAAa,KAAM,IAAInK,OAAM,mDACrD,UAAU+5I,KAAqB,YAAa,CAC3C,GAAG7gH,EAAIrX,UAAW,MAAOk4H,IAAkB7gH,EAC3C,IAAI4lH,GAAOhhI,GAAIlX,MAAMwqB,SACrBqI,IAAWP,GAAKr0B,QAAQ,SAAS5F,GAAKy6B,GAAaolH,EAAM7/I,EAAGu6B,GAAUN,EAAKj6B,KAC3E,OAAO86I,IAAkB+E,GAE1B,KAAM,IAAI9+I,OAAM,4BAEjB,IAAIi5B,GAAeC,EAAK,uBAAwB,CAC/C,GAAGD,GAAeC,EAAK,gBAAiB,KAAM,IAAIl5B,OAAM,8BACxD,IAAGi5B,GAAeC,EAAK,aAAc,KAAM,IAAIl5B,OAAM,8BACrD,MAAM,IAAIA,OAAM,wBAGjB,GAAIqiD,GAAU5oB,GAAWP,EACzB,IAAI6lH,GAAM1nG,GAAU9d,GAAUL,EAAK,uBACnC,IAAI2c,GAAO,KACX,IAAIvP,GAAQ04G,CACZ,IAAGD,EAAIppG,UAAUx2C,SAAW,EAAG,CAC9B6/I,EAAU,iBACV,IAAG3lH,GAAWH,EAAI8lH,EAAS,MAAOD,EAAIppG,UAAUjvC,KAAKs4I,GAEtD,GAAGD,EAAIppG,UAAUx2C,SAAW,EAAG,CAC9B6/I,EAAU,iBACV,KAAI3lH,GAAWH,EAAI8lH,EAAQ,MAAO,KAAM,IAAIh/I,OAAM,0BAClD++I,GAAIppG,UAAUjvC,KAAKs4I,EACnBnpG,GAAO,KAER,GAAGkpG,EAAIppG,UAAU,GAAGzyC,OAAO,IAAM,MAAO2yC,EAAO,IAE/C,IAAIiB,KACJ,IAAIR,KACJ,KAAIhkC,EAAKiuG,aAAejuG,EAAKkuG,UAAW,CACvCxqE,KACA,IAAG+oG,EAAIpnG,IAAK,IAAM3B,GAAK0kE,GAAUrhF,GAAWH,EAAK2lH,GAAkBE,EAAIpnG,MAAOonG,EAAIpnG,IAAKrlC,GAAS,MAAMrT,GAAK,GAAGqT,EAAKorB,IAAK,KAAMz+B,GAE9H,GAAGqT,EAAKs8C,YAAcmwF,EAAIjoG,OAAO33C,OAAQ23C,EAAS2jE,GAAYlhF,GAAUL,EAAK6lH,EAAIjoG,OAAO,GAAG/sC,QAAQ,MAAM,IAAK,OAAO,GAAGg1I,EAAIjoG,OAAO,GAAIxkC,EAEvI,IAAGysI,EAAInnG,MAAOtB,EAASkkE,GAAUnhF,GAAWH,EAAK2lH,GAAkBE,EAAInnG,QAASmnG,EAAInnG,MAAOd,EAAQxkC,GAG9EysI,EAAIroG,MAAMtyC,IAAI,SAAS66I,GAC5C,IACC,GAAIzoG,GAAOuD,GAAWxgB,GAAUL,EAAK4gB,GAAc+kG,GAAkBI,KAASA,EAC9E,OAAOpkC,IAAYxhF,GAAWH,EAAK2lH,GAAkBI,IAAQzoG,EAAMyoG,EAAM3sI,GACxE,MAAMrT,MAGT,IAAIwqD,GAAK0wD,GAAS9gF,GAAWH,EAAK2lH,GAAkBE,EAAIppG,UAAU,KAAMopG,EAAIppG,UAAU,GAAIrjC,EAE1F,IAAIqqC,MAAYuiG,EAAW,EAE3B,IAAGH,EAAIpoG,UAAUx3C,OAAQ,CACxB+/I,EAAW7lH,GAAWH,EAAK2lH,GAAkBE,EAAIpoG,UAAU,IAAK,KAChE,IAAGuoG,EAAUviG,EAAQhB,GAAiBujG,EACtC,IAAGH,EAAInoG,SAASz3C,SAAW,EAAG,CAC7B+/I,EAAW7lH,GAAWH,EAAK2lH,GAAkBE,EAAInoG,SAAS,IAAK,KAC/D,IAAGsoG,EAAU/hG,GAAgB+hG,EAAUviG,EAAOrqC,IAIhD,GAAIukC,KACJ,KAAIvkC,EAAKiuG,YAAcjuG,EAAKkuG,UAAW,CACtC,GAAIu+B,EAAIloG,UAAU13C,SAAW,EAAG,CAC/B+/I,EAAW3lH,GAAUL,EAAK2lH,GAAkBE,EAAIloG,UAAU,IAAK,KAC/D,IAAGqoG,EAAUroG,EAAY8G,GAAiBuhG,EAAU5sI,IAItD,GAAIvP,KACJ,IAAGuP,EAAKiuG,YAAcjuG,EAAKkuG,UAAW,CACrC,GAAG/2D,EAAGjjB,OAAQF,EAASmjB,EAAGjjB,OAAOpiC,IAAI,QAAS+6I,GAAMh+I,GAAI,MAAOA,GAAEsgB,WAC5D,IAAGk7B,EAAMG,YAAcH,EAAMpW,WAAWpnC,OAAS,EAAGmnC,EAAOqW,EAAMpW,UACtE,IAAGj0B,EAAKkuG,UAAW,CAAEz9G,EAAIo5C,MAAQQ,CAAO55C,GAAIu8C,UAAYzI,EACxD,GAAGvkC,EAAKiuG,kBAAqBj6E,KAAW,YAAavjC,EAAIwjC,WAAaD,CACtE,IAAGh0B,EAAKiuG,WAAax9G,EAAIwjC,WAAaj0B,EAAKkuG,UAAW,MAAOz9G,GAE9DujC,IAEA,IAAIi1G,KACJ,IAAGjpI,EAAK8sI,UAAYL,EAAIrnG,UAAW6jG,EAAK3gC,GAASvhF,GAAWH,EAAK2lH,GAAkBE,EAAIrnG,YAAYqnG,EAAIrnG,UAAUplC,EAEjH,IAAIpT,GAAE,CACN,IAAIm/I,KACJ,IAAIt3H,GAAMq3H,CAEV,EACC,GAAIiB,GAAW51F,EAAGjjB,MAClBmW,GAAMG,WAAauiG,EAASlgJ,MAC5Bw9C,GAAMpW,aACN,KAAI,GAAI/mC,GAAI,EAAGA,GAAK6/I,EAASlgJ,SAAUK,EAAG,CACzCm9C,EAAMpW,WAAW/mC,GAAK6/I,EAAS7/I,GAAGiiB,MAIpC,GAAI69H,GAAQzpG,EAAO,MAAQ,KAC3B,IAAI0pG,GAAUR,EAAIppG,UAAU,GAAG/8B,YAAY,IAC3C,IAAI4mI,IAAcT,EAAIppG,UAAU,GAAGzyC,MAAM,EAAGq8I,EAAQ,GAAK,SAAWR,EAAIppG,UAAU,GAAGzyC,MAAMq8I,EAAQ,GAAK,SAASx1I,QAAQ,MAAM,GAC/H,KAAIkvB,GAAeC,EAAKsmH,GAAaA,EAAa,qBAAuBF,EAAQ,OACjF,IAAIrB,GAASlkG,GAAWxgB,GAAUL,EAAKsmH,EAAY,MAAOA,EAAWz1I,QAAQ,UAAW,OAExF,KAAIg1I,EAAI1oG,cAAgBl3C,QAAU,EAAG,CAEpCmT,EAAK67F,OAAS2M,GAAazhF,GAAWH,EAAK2lH,GAAkBE,EAAI1oG,SAAS,KAAK0oG,EAAI1oG,SAAS,GAAG/jC,GAGhG,IAAIysI,EAAI7nG,YAAc/3C,QAAU,EAAG,CAClCmT,EAAK4kC,OAASiuC,GAAiB9rD,GAAWH,EAAK2lH,GAAkBE,EAAI7nG,OAAO,KAAK5kC,GAGlF,GAAG2rI,EAAQA,EAASD,GAAkBC,EAAQx0F,EAAGjjB,OAGjD,IAAIi5G,GAASpmH,GAAWH,EAAI,0BAA0B,MAAO,EAAE,CAC/DwmH,GAAQ,IAAIxgJ,EAAI,EAAGA,GAAKy9C,EAAMG,aAAc59C,EAAG,CAC9C,GAAIo/I,GAAQ,OACZ,IAAGL,GAAUA,EAAO/+I,GAAI,CACvB6nB,EAAO,MAASk3H,EAAO/+I,GAAG,GAAI6K,QAAQ,YAAa,GACnD,KAAIkvB,GAAeC,EAAKnS,GAAOA,EAAOk3H,EAAO/+I,GAAG,EAChD,KAAI+5B,GAAeC,EAAKnS,GAAOA,EAAOy4H,EAAWz1I,QAAQ,aAAa,IAAMk0I,EAAO/+I,GAAG,EACtFo/I,GAAQL,EAAO/+I,GAAG,OACZ,CACN6nB,EAAO,uBAAuB7nB,EAAE,EAAEugJ,GAAO,IAAMH,CAC/Cv4H,GAAOA,EAAKhd,QAAQ,WAAW,UAEhCq0I,EAAWr3H,EAAKhd,QAAQ,qBAAsB,mBAC9C,IAAGuI,GAAQA,EAAKg0B,QAAU,KAAM,aAAch0B,GAAKg0B,QAClD,IAAK,SAAU,GAAGpnC,GAAKoT,EAAKg0B,OAAQ,QAASo5G,EAAQ,OACrD,IAAK,SAAU,GAAG/iG,EAAMpW,WAAWrnC,GAAGoa,eAAiBhH,EAAKg0B,OAAOhtB,cAAe,QAASomI,EAAQ,OACnG,QAAS,GAAG55I,MAAM4E,SAAW5E,MAAM4E,QAAQ4H,EAAKg0B,QAAS,CACxD,GAAIq5G,GAAU,KACd,KAAI,GAAIC,GAAM,EAAGA,GAAOttI,EAAKg0B,OAAOnnC,SAAUygJ,EAAK,CAClD,SAAUttI,GAAKg0B,OAAOs5G,IAAQ,UAAYttI,EAAKg0B,OAAOs5G,IAAQ1gJ,EAAGygJ,EAAQ,CACzE,UAAUrtI,GAAKg0B,OAAOs5G,IAAQ,UAAYttI,EAAKg0B,OAAOs5G,GAAKtmI,eAAiBqjC,EAAMpW,WAAWrnC,GAAGoa,cAAeqmI,EAAU,EAE1H,IAAIA,EAAS,QAASD,KAGxBvB,GAAiBjlH,EAAKnS,EAAMq3H,EAAUzhG,EAAMpW,WAAWrnC,GAAIA,EAAGm/I,EAAW/3G,EAAQg4G,EAAOhsI,EAAMm3C,EAAI3S,EAAQR,GAG3GvzC,GACC+gH,UAAWi7B,EACX10C,SAAU5gD,EACVtN,MAAOQ,EACP2C,UAAWzI,EACXgpG,KAAMtE,EACN/0G,OAAQF,EACRC,WAAYoW,EAAMpW,WAClBgmE,QAASv2D,GACT8pG,OAAQxpG,EACRgpC,OAAQxoC,EACRh8B,IAAK4c,GAAI9qB,GAEV,IAAG0F,GAAQA,EAAKo2G,UAAW,CAC1B,GAAGxvF,EAAIvX,MAAO,CACb5e,EAAIV,KAAOggD,CACXt/C,GAAI4e,MAAQuX,EAAIvX,UACV,CACN5e,EAAIV,OACJU,GAAI4e,QACJuX,GAAIpX,UAAUjd,QAAQ,SAASuZ,EAAGpI,GACjCoI,EAAIA,EAAErU,QAAQ,kBAAmB,GACjChH,GAAIV,KAAKqE,KAAK0X,EACdrb,GAAI4e,MAAMvD,GAAK8a,EAAIrX,UAAU7L,MAIhC,GAAG1D,GAAQA,EAAKm2G,QAAS,CACxB,GAAGs2B,EAAI/nG,IAAI73C,OAAS,EAAG4D,EAAIonG,OAAS9wE,GAAWH,EAAI2lH,GAAkBE,EAAI/nG,IAAI,IAAI,UAC5E,IAAG+nG,EAAIlnG,UAAYknG,EAAIlnG,SAASkoG,MAAQ95D,GAAQljF,EAAIonG,OAAS9wE,GAAWH,EAAK,oBAAoB,MAEvG,MAAOn2B,GAIR,QAASi9I,IAAcn7H,EAAKgB,GAC3B,GAAIvT,GAAOuT,KACX,IAAIjiB,GAAI,WAAYf,EAAOib,GAAImH,KAAKJ,EAAKjhB,EACzC,KACAA,EAAI,sBACJf,GAAOib,GAAImH,KAAKJ,EAAKjhB,EAAI,KAAIf,IAASA,EAAKuI,QAAS,KAAM,IAAIpL,OAAM,mCAAqC4D,EACvFmtE,IAA2BluE,EAAKuI,QAGlDxH,GAAI,2BACJf,GAAOib,GAAImH,KAAKJ,EAAKjhB,EAAI,KAAIf,IAASA,EAAKuI,QAAS,KAAM,IAAIpL,OAAM,mCAAqC4D,EACzG,IAAIq8I,GAAM9uE,GAAmBtuE,EAAKuI,QAClC,IAAG60I,EAAI9gJ,SAAW,GAAK8gJ,EAAI,GAAG/uE,MAAM/xE,SAAW,GAAK8gJ,EAAI,GAAG/uE,MAAM,GAAGrlE,IAAM,GAAKo0I,EAAI,GAAGx+H,OAAS,6BAA+Bw+H,EAAI,GAAG/uE,MAAM,GAAGtlE,IAAM,mBACnJ,KAAM,IAAI5L,OAAM,+BAAiC4D,EAGlDA,GAAI,sDACJf,GAAOib,GAAImH,KAAKJ,EAAKjhB,EAAI,KAAIf,IAASA,EAAKuI,QAAS,KAAM,IAAIpL,OAAM,mCAAqC4D,EACzG,IAAIs8I,GAAO9uE,GAA0BvuE,EAAKuI,QAC1C,IAAG80I,EAAK/gJ,QAAU,GAAK+gJ,EAAK,IAAM,4BACjC,KAAM,IAAIlgJ,OAAM,+BAAiC4D,EAGlDA,GAAI,+DACJf,GAAOib,GAAImH,KAAKJ,EAAKjhB,EAAI,KAAIf,IAASA,EAAKuI,QAAS,KAAM,IAAIpL,OAAM,mCAAqC4D,EAC3F0tE,IAAczuE,EAAKuI,SAC/B,MAAMnM,IAER2E,EAAI,iBACJf,GAAOib,GAAImH,KAAKJ,EAAKjhB,EAAI,KAAIf,IAASA,EAAKuI,QAAS,KAAM,IAAIpL,OAAM,mCAAqC4D,EACzG,IAAIu8I,GAAQ/tE,GAAqBvvE,EAAKuI,QAGtCxH,GAAI,mBACJf,GAAOib,GAAImH,KAAKJ,EAAKjhB,EAAI,KAAIf,IAASA,EAAKuI,QAAS,KAAM,IAAIpL,OAAM,mCAAqC4D,EAG1G,IAAGu8I,EAAM,IAAM,SAAeC,iBAAkB,YAAa,MAAOA,eAAcD,EAAM,GAAIt9I,EAAKuI,QAASkH,EAAKqiE,UAAY,GAAIriE,EAE/H,IAAG6tI,EAAM,IAAM,SAAeE,iBAAkB,YAAa,MAAOA,eAAcF,EAAM,GAAIt9I,EAAKuI,QAASkH,EAAKqiE,UAAY,GAAIriE,EAC9H,MAAM,IAAItS,OAAM,8BAGjB,QAASgmB,IAAUyjC,EAAIn3C,GACtB,GAAGA,EAAK6lC,UAAY,MAAO,MAAOy7F,IAAUnqF,EAAIn3C,EAChD,IAAGA,EAAK6lC,UAAY,UAAW,MAAO4iG,IAAkBtxF,EAAIn3C,EAC5D,IAAGA,EAAK6lC,UAAY,OAAQ,MAAOmoG,IAAgB72F,EAAIn3C,EACvD,OAAOiuI,IAAe92F,EAAIn3C,GAO3B,QAASguI,IAAgB72F,EAAIn3C,GAC5B4vE,GAAW,IACX,IAAGz4B,IAAOA,EAAG3uC,IAAK,CACjB2uC,EAAG3uC,IAAM4c,GAAI9qB,GAEd,GAAG68C,GAAMA,EAAG3uC,IAAK,CAChBD,IAAYF,IAAe8uC,EAAG3uC,IAE9BxI,GAAKo1F,OAAS/yE,GAAU80B,EAAG3uC,IAAMxI,GAAKo1F,OAAOj+C,EAAG3uC,IAAI,QAAU,CAC9DxI,GAAKq1F,IAAMl+C,EAAG3uC,IAEfxI,EAAKkkC,OAAWlkC,GAAK2rI,SACrB3rI,GAAKi6F,UAAcj6F,GAAKi6F,QAAQ9hD,MAAQ,CAAGn4C,GAAKi6F,QAAQ7hD,OAAS,CACjE,IAAG+7C,GAAiBn0F,EAAKk6F,WAAa,GAAI9F,SACrC,CAAEp0F,EAAKk6F,aAAiBl6F,GAAKk6F,WAAWg0C,aAAiBluI,GAAKk6F,WAAWg0C,IAC9E,GAAIlB,GAAQhtI,EAAK6lC,UAAY,OAAS,MAAQ,KAC9C,IAAIsoG,GAASn6D,GAAQ7gF,QAAQ6M,EAAK6lC,WAAa,CAC/C,IAAI/zB,GAAKmyB,IACTm1F,IAAep5H,EAAOA,MACtB,IAAI4mB,GAAMU,IACV,IAAIh2B,GAAI,GAAI+2C,EAAM,CAElBroC,GAAK+oE,UACLosB,IAAen1F,EAAK+oE,YAAcqsB,QAAQib,QAAU,IAEpD,KAAIl5D,EAAGtN,MAAOsN,EAAGtN,QAEjBv4C,GAAI,mBACJ81B,IAAaR,EAAKt1B,EAAGk4C,GAAiB2N,EAAGtN,MAAO7pC,GAChD8R,GAAGuyB,UAAUjwC,KAAK9C,EAClB82C,IAASpoC,EAAKkkC,KAAM,EAAG5yC,EAAG86B,GAAKJ,WAEhC16B,GAAI,kBACH,IAAG6lD,EAAGtN,OAASsN,EAAGtN,MAAM5V,WAAW,MAC9B,KAAIkjB,EAAG4gD,WAAa5gD,EAAG4gD,SAAS7jE,OAAQijB,EAAGtN,MAAM5V,WAAakjB,EAAGljB,eACjE,CACJ,GAAIm6G,KACJ,KAAI,GAAIlI,GAAK,EAAGA,EAAK/uF,EAAGljB,WAAWpnC,SAAUq5I,EAC5C,IAAI/uF,EAAG4gD,SAAS7jE,OAAOgyG,QAAS/gC,QAAU,EAAGipC,EAAIh6I,KAAK+iD,EAAGljB,WAAWiyG,GACrE/uF,GAAGtN,MAAM5V,WAAam6G,EAEvBj3F,EAAGtN,MAAMW,WAAa2M,EAAGtN,MAAM5V,WAAWpnC,MAC1Cu6B,IAAaR,EAAKt1B,EAAG05C,GAAgBmM,EAAGtN,MAAO7pC,GAC/C8R,GAAGwyB,SAASlwC,KAAK9C,EACjB82C,IAASpoC,EAAKkkC,KAAM,EAAG5yC,EAAG86B,GAAKF,UAE/B,IAAGirB,EAAGnK,YAAcmK,EAAGtN,OAAS95C,GAAKonD,EAAGnK,eAAengD,OAAS,EAAG,CAClEyE,EAAI,qBACJ81B,IAAaR,EAAKt1B,EAAGk6C,GAAiB2L,EAAGnK,UAAWhtC,GACpD8R,GAAGyyB,UAAUnwC,KAAK9C,EAClB82C,IAASpoC,EAAKkkC,KAAM,EAAG5yC,EAAG86B,GAAKH,YAGhC,IAAIoc,EAAI,EAAEA,GAAO8O,EAAGljB,WAAWpnC,SAAUw7C,EAAK,CAC7C,GAAIgmG,IAAU1mG,SACd,IAAIrT,GAAK6iB,EAAGjjB,OAAOijB,EAAGljB,WAAWoU,EAAI,GACrC,IAAIimG,IAASh6G,OAAU,UAAY,OACnC,QAAOg6G,GACP,IAAK,SAEL,QACCh9I,EAAI,sBAAwB+2C,EAAM,IAAM2kG,CACxC5lH,IAAaR,EAAKt1B,EAAGo3G,GAASrgE,EAAI,EAAG/2C,EAAG0O,EAAMm3C,EAAIk3F,GAClDv8H,GAAGkiB,OAAO5/B,KAAK9C,EACf82C,IAASpoC,EAAK2rI,QAAS,EAAG,mBAAqBtjG,EAAM,IAAM2kG,EAAO5gH,GAAK4a,GAAG,KAG3E,GAAG1S,EAAI,CACN,GAAIqP,GAAWrP,EAAG,YAClB,IAAIi6G,GAAW,KACf,IAAI73F,GAAK,EACT,IAAG/S,GAAYA,EAAS92C,OAAS,EAAG,CACnC6pD,EAAK,cAAgBrO,EAAM,IAAM2kG,CACjC5lH,IAAaR,EAAK8vB,EAAIoyD,GAAWnlE,EAAU+S,EAAI12C,GAC/C8R,GAAG6xB,SAASvvC,KAAKsiD,EACjBtO,IAASimG,GAAS,EAAG,cAAgBhmG,EAAM,IAAM2kG,EAAO5gH,GAAKqa,KAC7D8nG,GAAW,KAEZ,GAAGj6G,EAAG,WAAY,CACjB,GAAGi6G,EAAUnnH,GAAaR,EAAK,yBAA2B,EAAQ,OAAQipD,GAAmBxnC,EAAK/T,EAAG,qBAE/FA,GAAG,mBACHA,GAAG,WAGX,GAAG+5G,EAAO,OAAOG,KAAMpnH,GAAaR,EAAK4gB,GAAcl2C,GAAI42C,GAAWmmG,IAGvE,GAAGruI,EAAKi6F,SAAW,MAAQj6F,EAAKi6F,QAAQptG,OAAS,EAAG,CACnDyE,EAAI,oBAAsB07I,CAC1B5lH,IAAaR,EAAKt1B,EAAGu3G,GAAU7oG,EAAKi6F,QAAS3oG,EAAG0O,GAChD8R,GAAG4xB,KAAKtvC,KAAK9C,EACb82C,IAASpoC,EAAK2rI,QAAS,EAAG,iBAAmBqB,EAAO5gH,GAAKsa,KAG1Dp1C,EAAI,eAAiB07I,CACrB5lH,IAAaR,EAAKt1B,EAAGm3G,GAAStxD,EAAI7lD,EAAG0O,GACrC8R,GAAGuxB,UAAUjvC,KAAK9C,EAClB82C,IAASpoC,EAAKkkC,KAAM,EAAG5yC,EAAG86B,GAAK4Z,GAI/B10C,GAAI,qBACJ81B,IAAaR,EAAKt1B,EAAGy7E,GAAY51B,EAAG61B,OAAQhtE,GAC5C8R,GAAG0yB,OAAOpwC,KAAK9C,EACf82C,IAASpoC,EAAK2rI,QAAS,EAAG,mBAAoBv/G,GAAKwa,MAInDt1C,GAAI,aAAe07I,CACnB5lH,IAAaR,EAAKt1B,EAAGs3G,GAAUzxD,EAAI7lD,EAAG0O,GACtC8R,GAAGkyB,OAAO5vC,KAAK9C,EACf82C,IAASpoC,EAAK2rI,QAAS,EAAG,UAAYqB,EAAO5gH,GAAKua,IAElD,IAAGwQ,EAAG0gD,QAAUs2C,EAAQ,CACvB78I,EAAI,mBACJ81B,IAAaR,EAAKt1B,EAAG6lD,EAAG0gD,OACxB/lF,GAAG4yB,IAAItwC,KAAK9C,EACZ82C,IAASpoC,EAAK2rI,QAAS,EAAG,iBAAkBv/G,GAAKmb,KAGlDj2C,EAAI,eAAiB07I,CACrB5lH,IAAaR,EAAKt1B,EAAGy3G,GAAaz3G,GAClCwgB,GAAGiyB,SAAS3vC,KAAK9C,EACjB82C,IAASpoC,EAAK2rI,QAAS,EAAG,YAAcqB,EAAO5gH,GAAKib,OAEpDjgB,IAAaR,EAAK,sBAAuB4e,GAAS1zB,EAAI9R,GACtDonB,IAAaR,EAAK,cAAeshB,GAAWloC,EAAKkkC,MACjD9c,IAAaR,EAAK,qBAAuBomH,EAAQ,QAAS9kG,GAAWloC,EAAK2rI,eAEnE3rI,GAAKo1F,aAAep1F,GAAKq1F,GAChC,OAAOzuE,GAGR,QAASqnH,IAAe92F,EAAIn3C,GAC3B4vE,GAAW,IACX,IAAGz4B,IAAOA,EAAG3uC,IAAK,CACjB2uC,EAAG3uC,IAAM4c,GAAI9qB,GAEd,GAAG68C,GAAMA,EAAG3uC,IAAK,CAChBD,IAAYF,IAAe8uC,EAAG3uC,IAE9BxI,GAAKo1F,OAAS/yE,GAAU80B,EAAG3uC,IAAMxI,GAAKo1F,OAAOj+C,EAAG3uC,IAAI,QAAU,CAC9DxI,GAAKq1F,IAAMl+C,EAAG3uC,IAEfxI,EAAKkkC,OAAWlkC,GAAK2rI,SACrB3rI,GAAKi6F,UAAcj6F,GAAKi6F,QAAQ9hD,MAAQ,CAAGn4C,GAAKi6F,QAAQ7hD,OAAS,CACjE,IAAG+7C,GAAiBn0F,EAAKk6F,WAAa,GAAI9F,SACrC,CAAEp0F,EAAKk6F,aAAiBl6F,GAAKk6F,WAAWg0C,aAAiBluI,GAAKk6F,WAAWg0C,IAC9E,GAAIlB,GAAQ,KACZ,IAAImB,GAASn6D,GAAQ7gF,QAAQ6M,EAAK6lC,WAAa,CAC/C,IAAI/zB,GAAKmyB,IACTm1F,IAAep5H,EAAOA,MACtB,IAAI4mB,GAAMU,IACV,IAAIh2B,GAAI,GAAI+2C,EAAM,CAElBroC,GAAK+oE,UACLosB,IAAen1F,EAAK+oE,YAAcqsB,QAAQib,QAAU,IAEpD,KAAIl5D,EAAGtN,MAAOsN,EAAGtN,QAEjBv4C,GAAI,mBACJ81B,IAAaR,EAAKt1B,EAAGk4C,GAAiB2N,EAAGtN,MAAO7pC,GAChD8R,GAAGuyB,UAAUjwC,KAAK9C,EAClB82C,IAASpoC,EAAKkkC,KAAM,EAAG5yC,EAAG86B,GAAKJ,WAEhC16B,GAAI,kBACH,IAAG6lD,EAAGtN,OAASsN,EAAGtN,MAAM5V,WAAW,MAC9B,KAAIkjB,EAAG4gD,WAAa5gD,EAAG4gD,SAAS7jE,OAAQijB,EAAGtN,MAAM5V,WAAakjB,EAAGljB,eACjE,CACJ,GAAIm6G,KACJ,KAAI,GAAIlI,GAAK,EAAGA,EAAK/uF,EAAGljB,WAAWpnC,SAAUq5I,EAC5C,IAAI/uF,EAAG4gD,SAAS7jE,OAAOgyG,QAAS/gC,QAAU,EAAGipC,EAAIh6I,KAAK+iD,EAAGljB,WAAWiyG,GACrE/uF,GAAGtN,MAAM5V,WAAam6G,EAEvBj3F,EAAGtN,MAAMW,WAAa2M,EAAGtN,MAAM5V,WAAWpnC,MAC1Cu6B,IAAaR,EAAKt1B,EAAG05C,GAAgBmM,EAAGtN,MAAO7pC,GAC/C8R,GAAGwyB,SAASlwC,KAAK9C,EACjB82C,IAASpoC,EAAKkkC,KAAM,EAAG5yC,EAAG86B,GAAKF,UAE/B,IAAGirB,EAAGnK,YAAcmK,EAAGtN,OAAS95C,GAAKonD,EAAGnK,eAAengD,OAAS,EAAG,CAClEyE,EAAI,qBACJ81B,IAAaR,EAAKt1B,EAAGk6C,GAAiB2L,EAAGnK,UAAWhtC,GACpD8R,GAAGyyB,UAAUnwC,KAAK9C,EAClB82C,IAASpoC,EAAKkkC,KAAM,EAAG5yC,EAAG86B,GAAKH,YAGhC,GAAI2Y,IAAU,UACd5kC,GAAK2yE,KAAO,CAEZ,KAAItqC,EAAI,EAAEA,GAAO8O,EAAGljB,WAAWpnC,SAAUw7C,EAAK,CAC7C,GAAIgmG,IAAU1mG,SACd,IAAIrT,GAAK6iB,EAAGjjB,OAAOijB,EAAGljB,WAAWoU,EAAI,GACrC,IAAIimG,IAASh6G,OAAU,UAAY,OACnC,QAAOg6G,GACP,IAAK,SAEL,QACCh9I,EAAI,sBAAwB+2C,EAAM,IAAM2kG,CACxC5lH,IAAaR,EAAKt1B,EAAG8qG,GAAa/zD,EAAI,EAAGroC,EAAMm3C,EAAIk3F,GACnDv8H,GAAGkiB,OAAO5/B,KAAK9C,EACf82C,IAASpoC,EAAK2rI,QAAS,EAAG,mBAAqBtjG,EAAM,IAAM2kG,EAAO5gH,GAAK4a,GAAG,KAG3E,GAAG1S,EAAI,CACN,GAAIqP,GAAWrP,EAAG,YAClB,IAAIi6G,GAAW,KACf,IAAI73F,GAAK,EACT,IAAG/S,GAAYA,EAAS92C,OAAS,EAAG,CACnC,GAAI4hJ,GAAS,KACb9qG,GAASpxC,QAAQ,SAASigF,GACzBA,EAAK,GAAGjgF,QAAQ,SAASrB,GAAK,GAAGA,EAAEoP,GAAK,KAAMmuI,EAAS,QAExD,IAAGA,EAAQ,CACV/3F,EAAK,sCAAwCrO,EAAM,IAAM2kG,CACzD5lH,IAAaR,EAAK8vB,EAAI67B,GAAgB5uC,EAAUiB,EAAQ5kC,GACxD8R,GAAGqyB,iBAAiB/vC,KAAKsiD,EACzBtO,IAASimG,GAAS,EAAG,sCAAwChmG,EAAM,IAAM2kG,EAAO5gH,GAAKC,OAGtFqqB,EAAK,cAAgBrO,EAAM,IAAM2kG,CACjC5lH,IAAaR,EAAK8vB,EAAIo7B,GAAmBnuC,EAAU3jC,GACnD8R,GAAG6xB,SAASvvC,KAAKsiD,EACjBtO,IAASimG,GAAS,EAAG,cAAgBhmG,EAAM,IAAM2kG,EAAO5gH,GAAKqa,KAC7D8nG,GAAW,KAEZ,GAAGj6G,EAAG,WAAY,CACjB,GAAGi6G,EAAUnnH,GAAaR,EAAK,yBAA2B,EAAQ,OAAQipD,GAAmBxnC,EAAK/T,EAAG,qBAE/FA,GAAG,mBACHA,GAAG,WAGX,GAAG+5G,EAAO,OAAOG,KAAMpnH,GAAaR,EAAK4gB,GAAcl2C,GAAI42C,GAAWmmG,IAGvE,GAAGruI,EAAKi6F,SAAW,MAAQj6F,EAAKi6F,QAAQptG,OAAS,EAAG,CACnDyE,EAAI,oBAAsB07I,CAC1B5lH,IAAaR,EAAKt1B,EAAGssE,GAAc59D,EAAKi6F,QAASj6F,GACjD8R,GAAG4xB,KAAKtvC,KAAK9C,EACb82C,IAASpoC,EAAK2rI,QAAS,EAAG,iBAAmBqB,EAAO5gH,GAAKsa,KAG1Dp1C,EAAI,eAAiB07I,CACrB5lH,IAAaR,EAAKt1B,EAAGg0G,GAAanuD,EAAIn3C,GACtC8R,GAAGuxB,UAAUjvC,KAAK9C,EAClB82C,IAASpoC,EAAKkkC,KAAM,EAAG5yC,EAAG86B,GAAK4Z,GAI/B10C,GAAI,qBACJ81B,IAAaR,EAAKt1B,EAAGy7E,GAAY51B,EAAG61B,OAAQhtE,GAC5C8R,GAAG0yB,OAAOpwC,KAAK9C,EACf82C,IAASpoC,EAAK2rI,QAAS,EAAG,mBAAoBv/G,GAAKwa,MAInDt1C,GAAI,aAAe07I,CACnB5lH,IAAaR,EAAKt1B,EAAGi4E,GAAcpyB,EAAIn3C,GACvC8R,GAAGkyB,OAAO5vC,KAAK9C,EACf82C,IAASpoC,EAAK2rI,QAAS,EAAG,UAAYqB,EAAO5gH,GAAKua,IAElD,IAAGwQ,EAAG0gD,QAAUs2C,EAAQ,CACvB78I,EAAI,mBACJ81B,IAAaR,EAAKt1B,EAAG6lD,EAAG0gD,OACxB/lF,GAAG4yB,IAAItwC,KAAK9C,EACZ82C,IAASpoC,EAAK2rI,QAAS,EAAG,iBAAkBv/G,GAAKmb,KAGlDj2C,EAAI,eAAiB07I,CACrB5lH,IAAaR,EAAKt1B,EAAG69E,KACrBr9D,GAAGiyB,SAAS3vC,KAAK9C,EACjB82C,IAASpoC,EAAK2rI,QAAS,EAAG,YAAcqB,EAAO5gH,GAAKib,OAEpD,IAAGzC,EAAO/3C,OAAS,EAAG,CACrByE,EAAI,uBACJ81B,IAAaR,EAAKt1B,EAAGyhF,GAAiBnuC,EAAQ5kC,GAC9C8R,GAAG8yB,OAAOxwC,KAAK9C,EACf82C,IAASpoC,EAAK2rI,QAAS,EAAG,qBAAsBv/G,GAAKkb,QAGtDlgB,GAAaR,EAAK,sBAAuB4e,GAAS1zB,EAAI9R,GACtDonB,IAAaR,EAAK,cAAeshB,GAAWloC,EAAKkkC,MACjD9c,IAAaR,EAAK,qBAAuBomH,EAAQ,QAAS9kG,GAAWloC,EAAK2rI,eAEnE3rI,GAAKo1F,aAAep1F,GAAKq1F,GAChC,OAAOzuE,GAGR,QAAS8rC,IAAUphE,EAAEkF,GACpB,GAAI3H,GAAI,EACR,SAAQ2H,OAAOoM,MAAQ,UACtB,IAAK,SAAU,OAAQtR,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IACnE,IAAK,SAAUzC,EAAI2I,EAAclG,EAAEV,MAAM,EAAE,IAAM,OACjD,IAAK,SAAU/B,EAAIyC,CAAG,OACtB,IAAK,QAAU,OAAQA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IACnE,QAAS,KAAM,IAAI5D,OAAM,sBAAwB8I,GAAKA,EAAEoM,MAAQ,eAEjE,OAAQ/T,EAAE/B,WAAW,GAAI+B,EAAE/B,WAAW,GAAI+B,EAAE/B,WAAW,GAAI+B,EAAE/B,WAAW,GAAI+B,EAAE/B,WAAW,GAAI+B,EAAE/B,WAAW,GAAI+B,EAAE/B,WAAW,GAAI+B,EAAE/B,WAAW,IAG7I,QAAS4hJ,IAASn8H,EAAKvS,GACtB,GAAGwL,GAAImH,KAAKJ,EAAK,oBAAqB,MAAOm7H,IAAcn7H,EAAKvS,EAChE,OAAOg2G,IAAazjG,EAAKvS,GAG1B,QAAS2uI,IAASp+I,EAAMyP,GACvB,GAAI4mB,GAAKn6B,EAAI8D,CACb,IAAIiG,GAAIwJ,KACR,KAAIxJ,EAAEoM,KAAMpM,EAAEoM,KAAQ3T,GAAWC,OAAOyB,SAASJ,GAAS,SAAW,QACrEq2B,GAAMW,GAAS96B,EAAG+J,EAClB,OAAOsX,IAAU8Y,EAAKpwB,GAGvB,QAASo4I,IAAer+I,EAAMiG,GAC7B,GAAI5J,GAAI,CACRiiJ,GAAM,MAAMjiJ,EAAI2D,EAAK1D,OAAQ,OAAO0D,EAAKzD,WAAWF,IACnD,IAAK,KAAM,IAAK,KAAM,IAAK,MAAQA,CAAG,OACtC,IAAK,IAAM,MAAOuhH,IAAW59G,EAAKK,MAAMhE,GAAG4J,GAC3C,QAAS,KAAMq4I,IAEhB,MAAOv9E,IAAIvI,YAAYx4D,EAAMiG,GAG9B,QAASs4I,IAAmBv+I,EAAMiG,GACjC,GAAI0O,GAAM,GAAIypC,EAAQ+jB,GAAUniE,EAAMiG,EACtC,QAAOA,EAAEoM,MACR,IAAK,SAAUsC,EAAM1N,EAAcjH,EAAO,OAC1C,IAAK,SAAU2U,EAAM3U,CAAM,OAC3B,IAAK,SAAU2U,EAAM3U,EAAKM,SAAS,SAAW,OAC9C,IAAK,QAASqU,EAAMme,GAAO9yB,EAAO,OAClC,QAAS,KAAM,IAAI7C,OAAM,qBAAuB8I,EAAEoM,OAEnD,GAAG+rC,EAAM,IAAM,KAAQA,EAAM,IAAM,KAAQA,EAAM,IAAM,IAAMzpC,EAAMqlB,GAASrlB,EAC5E1O,GAAEoM,KAAO,QACT,OAAOgsI,IAAe1pI,EAAK1O,GAG5B,QAASu4I,IAAWx+I,EAAMiG,GACzB,GAAI/J,GAAI8D,CACR,IAAGiG,EAAEoM,MAAQ,SAAUnW,EAAI+K,EAAc/K,EACzCA,GAAIkI,EAASL,MAAMhB,OAAO,KAAM7G,EAAEmE,MAAM,GAAI,MAC5C4F,GAAEoM,KAAO,QACT,OAAOgsI,IAAeniJ,EAAG+J,GAG1B,QAASw4I,IAAQz+I,GAChB,OAAQA,EAAKkD,MAAM,gBAAkBlD,EAAOwvB,GAAUxvB,GAGvD,QAAS0+I,IAAS1+I,EAAM9D,EAAG+J,EAAG0O,GAC7B,GAAGA,EAAK,CAAE1O,EAAEoM,KAAO,QAAU,OAAO0uD,IAAIvI,YAAYx4D,EAAMiG,GAC1D,MAAO86D,IAAIvI,YAAYt8D,EAAG+J,GAG3B,QAAS04I,IAAS3+I,EAAMyP,GACvB1J,GACA,IAAIE,GAAIwJ,KACR,UAAU/H,eAAgB,aAAe1H,YAAgB0H,aAAa,MAAOi3I,IAAS,GAAIr3I,YAAWtH,IAAQiG,EAAI4uB,GAAI5uB,GAAIA,EAAEoM,KAAO,QAASpM,GAC3I,UAAUqB,cAAe,aAAetH,YAAgBsH,cAAerB,EAAEoM,KAAMpM,EAAEoM,WAAcid,QAAS,YAAc,SAAW,OACjI,IAAIpzB,GAAI8D,EAAMd,GAAK,EAAE,EAAE,EAAE,GAAIyV,EAAM,KACnC,IAAG1O,EAAE8lD,WAAY,CAAE9lD,EAAE87D,OAAS,IAAM97D,GAAEu+B,WAAa,KACnDm/D,KACA,IAAG19F,EAAE0R,OAAQgsF,GAAShsF,OAAS1R,EAAE0R,MACjC,KAAI1R,EAAEoM,KAAMpM,EAAEoM,KAAQ3T,GAAWC,OAAOyB,SAASJ,GAAS,SAAW,QACrE,IAAGiG,EAAEoM,MAAQ,OAAQ,CAAEpM,EAAEoM,KAAO3T,EAAU,SAAW,QAAUxC,GAAIi1B,GAAYnxB,EAAO,UAAUsH,cAAe,cAAgB5I,EAASuH,EAAEoM,KAAO,QACjJ,GAAGpM,EAAEoM,MAAQ,SAAU,CAAEsC,EAAM,IAAM1O,GAAEoM,KAAO,QAAUpM,GAAE2wD,SAAW,KAAO16D,GAAIuiJ,GAAQz+I,GACxF,GAAGiG,EAAEoM,MAAQ,eAAkB/K,cAAe,aAAetH,YAAgBsH,mBAAqBI,eAAgB,YAAa,CAE9H,GAAIk3I,GAAG,GAAIl3I,aAAY,GAAIm3I,EAAG,GAAIv3I,YAAWs3I,EAAKC,GAAGlB,IAAI,KAEzD,KAAIkB,EAAGlB,IAAK,CAAC13I,EAAE4uB,GAAI5uB,EAAIA,GAAEoM,KAAK,OAAS,OAAOssI,IAAS52I,EAAK7L,GAAI+J,IAEjE,QAAQ/G,EAAIijE,GAAUjmE,EAAG+J,IAAI,IAC5B,IAAK,KAAM,GAAG/G,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAM,MAAOi/I,IAASljI,GAAI6G,KAAK5lB,EAAG+J,GAAIA,EAAI,OACvK,IAAK,GAAM,GAAG/G,EAAE,IAAM,EAAM,MAAOumH,IAAavpH,EAAG+J,EAAI,OACvD,IAAK,IAAM,MAAO23G,IAAW1hH,EAAG+J,GAChC,IAAK,IACJ,GAAG/G,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,EAAM,KAAM,IAAI/B,OAAM,uCACpE,IAAG+B,EAAE,KAAO,GAAM,MAAOojE,IAAWpmE,EAAG+J,EACvC,OACD,IAAK,IAAM,GAAG/G,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,GAAM,MAAO0gE,IAAIpH,YAAYt8D,EAAG+J,EAAI,OAC7F,IAAK,IAAM,MAAQ/G,GAAE,KAAO,IAAQA,EAAE,GAAK,GAAQA,EAAE,GAAK,EAAQk/I,GAASliJ,EAAG+J,GAAKy4I,GAAS1+I,EAAM9D,EAAG+J,EAAG0O,GACxG,IAAK,KAAM,MAAOzV,GAAE,KAAO,GAAO0+G,GAAW1hH,EAAG+J,GAAKy4I,GAAS1+I,EAAM9D,EAAG+J,EAAG0O,GAC1E,IAAK,KACJ,GAAGzV,EAAE,KAAO,IAAM,CAAE,MAAOs/I,IAAWtiJ,EAAG+J,OACpC,IAAG/G,EAAE,KAAO,GAAQA,EAAE,KAAO,GAAQA,EAAE,KAAO,EAAM,MAAOsjE,IAAIhK,YAAYt8D,EAAG+J,EACnF,OACD,IAAK,GACJ,GAAG/G,EAAE,KAAO,EAAM,CACjB,GAAGA,EAAE,IAAM,GAAQA,EAAE,KAAO,EAAM,MAAOsjE,IAAIhK,YAAYt8D,EAAG+J,EAC5D,IAAG/G,EAAE,KAAO,IAASA,EAAE,KAAO,GAAQA,EAAE,KAAO,GAAO,MAAOsjE,IAAIhK,YAAYt8D,EAAG+J,GAEjF,MACD,IAAK,IAAM,IAAK,MAAM,IAAK,MAAM,IAAK,KAAM,MAAOsuD,IAAIiE,YAAYt8D,EAAG+J,GACtE,IAAK,KAAM,GAAG/G,EAAE,KAAO,IAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAM,MAAO8zE,IAAIxa,YAAYt8D,EAAG+J,EAAI,OAC7F,IAAK,KAAM,IAAK,KAAM,IAAK,IAAM,MAAOs4I,IAAmBriJ,EAAG+J,GAC9D,IAAK,KAAM,GAAG/G,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,GAAM,KAAM,IAAI/B,OAAM,sCAAwC,QAExH,GAAGm3D,GAAuB1xD,QAAQ1D,EAAE,KAAO,GAAKA,EAAE,IAAM,IAAMA,EAAE,IAAM,GAAI,MAAOq1D,IAAIiE,YAAYt8D,EAAG+J,EACpG,OAAOy4I,IAAS1+I,EAAM9D,EAAG+J,EAAG0O,GAG7B,QAASkN,IAAarG,EAAU/L,GAC/B,GAAIxJ,GAAIwJ,KAAUxJ,GAAEoM,KAAO,MAC3B,OAAOssI,IAASnjI,EAAUvV,GAE3B,QAAS64I,IAAc98H,EAAK/b,GAC3B,OAAOA,EAAEoM,MACR,IAAK,UAAU,IAAK,SAAU,MAC9B,IAAK,UAAU,IAAK,QAASpM,EAAEoM,KAAO,EAAI,OAC1C,IAAK,OAAQ,MAAOgd,IAASppB,EAAEoX,KAAMpC,GAAI6J,MAAM9C,GAAM3P,KAAK3T,EAAU,SAAW,MAC/E,IAAK,SAAU,KAAM,IAAIvB,OAAM,qCAAuC8I,EAAEqvC,SAAW,WACnF,QAAS,KAAM,IAAIn4C,OAAM,qBAAuB8I,EAAEoM,OAEnD,MAAO4I,IAAI6J,MAAM9C,EAAK/b,GAGvB,QAAS84I,IAAen4F,EAAIn3C,GAC3B,GAAIxJ,GAAI4uB,GAAIplB,MACZ,IAAIuoB,GAAI7U,GAAUyjC,EAAI3gD,EACtB,OAAO+4I,IAAqBhnH,EAAG/xB,GAEhC,QAASg5I,IAAmBr4F,EAAIn3C,GAC/B,GAAIxJ,GAAI4uB,GAAIplB,MACZ,IAAIuoB,GAAI0lH,GAAe92F,EAAI3gD,EAC3B,OAAO+4I,IAAqBhnH,EAAG/xB,GAEhC,QAAS+4I,IAAqBhnH,EAAG/xB,GAChC,GAAIi5I,KACJ,IAAIC,GAAQzgJ,EAAU,mBAAuB4I,cAAe,YAAc,QAAU,QACpF,IAAGrB,EAAEylB,YAAawzH,EAAMxzH,YAAc,SACtC,IAAGzlB,EAAE6rE,SAAUotE,EAAM7sI,KAAO8sI,MACvB,QAAOl5I,EAAEoM,MACb,IAAK,SAAU6sI,EAAM7sI,KAAO,QAAU,OACtC,IAAK,SAAU6sI,EAAM7sI,KAAO,QAAU,OACtC,IAAK,SAAU,KAAM,IAAIlV,OAAM,qCAAuC8I,EAAEqvC,SAAW,WACnF,IAAK,UACL,IAAK,OAAQ4pG,EAAM7sI,KAAO8sI,CAAO,OACjC,QAAS,KAAM,IAAIhiJ,OAAM,qBAAuB8I,EAAEoM,OAEnD,GAAInS,GAAM83B,EAAE/Y,UAAYhE,GAAI6J,MAAMkT,GAAI/U,SAAS,MAAO5Q,MAAO+sI,WAAc,SAAUC,OAAU,UAAUH,EAAM7sI,OAAS6sI,EAAM7sI,KAAMqZ,cAAezlB,EAAEylB,cAAgBsM,EAAEsnH,SAASJ,EAChL,UAAU5vH,QAAS,YAAa,CAC/B,SAAUpvB,IAAO,SAAU,CAC1B,GAAG+F,EAAEoM,MAAQ,UAAYpM,EAAEoM,MAAQ,SAAU,MAAOnS,EACpDA,GAAM,GAAIoH,YAAWG,EAAKvH,KAI5B,GAAG+F,EAAE6rE,gBAAmBytE,iBAAkB,YAAa,MAAOT,IAAcS,cAAcr/I,EAAK+F,EAAE6rE,UAAW7rE,EAE5G,IAAGA,EAAEoM,OAAS,OAAQ,MAAOgd,IAASppB,EAAEoX,KAAMnd,EAC9C,OAAO+F,GAAEoM,MAAQ,SAAW2nB,GAAS95B,GAAOA,EAG7C,QAASs/I,IAAe54F,EAAIn3C,GAC3B,GAAIxJ,GAAIwJ,KACR,IAAIuS,GAAM8jG,GAAal/D,EAAI3gD,EAC3B,OAAO64I,IAAc98H,EAAK/b,GAG3B,QAASw5I,IAAkBv/I,EAAKuP,EAAMiwI,GACrC,IAAIA,EAAKA,EAAM,EACf,IAAIz5I,GAAIy5I,EAAMx/I,CACd,QAAOuP,EAAK4C,MACX,IAAK,SAAU,MAAOvL,GAAc0oB,GAAUvpB,IAC9C,IAAK,SAAU,MAAOupB,IAAUvpB,GAChC,IAAK,SAAU,MAAO/F,GACtB,IAAK,OAAQ,MAAOmvB,IAAS5f,EAAK4N,KAAMpX,EAAG,QAC3C,IAAK,SAAU,CACd,GAAGvH,EAAS,MAAOE,GAAYqH,EAAG,YAC7B,UAAUspB,eAAgB,YAAa,OAAO,GAAIA,cAAc/sB,OAAOyD,OACvE,OAAOw5I,IAAkBx5I,GAAIoM,KAAK,WAAWzV,MAAM,IAAI2E,IAAI,SAASZ,GAAK,MAAOA,GAAEpE,WAAW,OAGpG,KAAM,IAAIY,OAAM,qBAAuBsS,EAAK4C,MAG7C,QAASstI,IAAgBz/I,EAAKuP,GAC7B,OAAOA,EAAK4C,MACX,IAAK,SAAU,MAAOvL,GAAc5G,GACpC,IAAK,SAAU,MAAOA,GACtB,IAAK,SAAU,MAAOA,GACtB,IAAK,OAAQ,MAAOmvB,IAAS5f,EAAK4N,KAAMnd,EAAK,UAC7C,IAAK,SAAU,CACd,GAAGxB,EAAS,MAAOE,GAAYsB,EAAK,cAC/B,OAAOA,GAAItD,MAAM,IAAI2E,IAAI,SAASZ,GAAK,MAAOA,GAAEpE,WAAW,OAGlE,KAAM,IAAIY,OAAM,qBAAuBsS,EAAK4C,MAI7C,QAASutI,IAAkB1/I,EAAKuP,GAC/B,OAAOA,EAAK4C,MACX,IAAK,UACL,IAAK,UACL,IAAK,SACJ,GAAIwI,GAAO,EAEX,KAAI,GAAIxe,GAAI,EAAGA,EAAI6D,EAAI5D,SAAUD,EAAGwe,GAAQtc,OAAOC,aAAa0B,EAAI7D,GACpE,OAAOoT,GAAK4C,MAAQ,SAAWvL,EAAc+T,GAAQpL,EAAK4C,MAAQ,SAAW2nB,GAASnf,GAAQA,EAC/F,IAAK,OAAQ,MAAOwU,IAAS5f,EAAK4N,KAAMnd,GACxC,IAAK,SAAU,MAAOA,GACtB,QAAS,KAAM,IAAI/C,OAAM,qBAAuBsS,EAAK4C,QAIvD,QAASwtI,IAAcj5F,EAAIn3C,GAC1B1J,GACAuuG,IAAS1tD,EACT,IAAI3gD,GAAI4uB,GAAIplB,MACZ,IAAGxJ,EAAE8lD,WAAY,CAAE9lD,EAAE87D,OAAS,IAAM97D,GAAEu+B,WAAa,KACnD,GAAGv+B,EAAEoM,MAAQ,QAAS,CAAEpM,EAAEoM,KAAO,QAAU,IAAInS,GAAO2/I,GAAcj5F,EAAI3gD,EAAKA,GAAEoM,KAAO,OAAS,OAAO5K,GAAKvH,GAC3G,MAAO++I,IAAmBr4F,EAAI3gD,GAG/B,QAAS65I,IAAUl5F,EAAIn3C,GACtB1J,GACAuuG,IAAS1tD,EACT,IAAI3gD,GAAI4uB,GAAIplB,MACZ,IAAGxJ,EAAE8lD,WAAY,CAAE9lD,EAAE87D,OAAS,IAAM97D,GAAEu+B,WAAa,KACnD,GAAGv+B,EAAEoM,MAAQ,QAAS,CAAEpM,EAAEoM,KAAO,QAAU,IAAInS,GAAO4/I,GAAUl5F,EAAI3gD,EAAKA,GAAEoM,KAAO,OAAS,OAAO5K,GAAKvH,GACvG,GAAIiT,GAAM,CACV,IAAGlN,EAAEu9B,MAAO,CACX,SAAUv9B,GAAEu9B,OAAS,SAAUrwB,EAAMlN,EAAEu9B,UAClCrwB,GAAMyzC,EAAGljB,WAAW9gC,QAAQqD,EAAEu9B,MACnC,KAAIojB,EAAGljB,WAAWvwB,GAAM,KAAM,IAAIhW,OAAM,oBAAsB8I,EAAEu9B,MAAQ,YAAgBv9B,GAAEu9B,OAE3F,OAAOv9B,EAAEqvC,UAAY,QACpB,IAAK,OACL,IAAK,OAAQ,MAAOmqG,IAAkB5/B,GAAWj5D,EAAI3gD,GAAIA,GACzD,IAAK,OACL,IAAK,OAAQ,MAAOw5I,IAAkB9mF,GAAKD,WAAW9R,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOlN,GAAIA,GACzF,IAAK,OACL,IAAK,OAAQ,MAAOw5I,IAAkB7V,GAAchjF,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOlN,GAAIA,GACvF,IAAK,MAAO,MAAO05I,IAAgBI,GAAan5F,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOlN,GAAIA,GACnF,IAAK,MAAO,MAAOw5I,IAAkBO,GAAap5F,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOlN,GAAIA,EAAG,UACxF,IAAK,MAAO,MAAOw5I,IAAkB7/E,GAAIlH,WAAW9R,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOlN,GAAIA,GACvF,IAAK,MAAO,MAAO25I,IAAkBrrF,GAAImE,WAAW9R,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOlN,GAAIA,GACvF,IAAK,MAAO,MAAOw5I,IAAkB1+E,GAAIrI,WAAW9R,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOlN,GAAIA,GACvF,IAAK,MAAO,MAAOw5I,IAAkBzsE,GAAIta,WAAW9R,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOlN,GAAIA,GACvF,IAAK,MAAO,MAAOw5I,IAAkBl/E,GAAI7H,WAAW9R,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOlN,GAAIA,GACvF,IAAK,OAAQ,MAAOw5I,IAAkB1O,GAAUnqF,EAAI3gD,GAAIA,GACxD,IAAK,MAAO,MAAO25I,IAAkBp9E,GAAIkB,aAAa9c,EAAGjjB,OAAOijB,EAAGljB,WAAWvwB,IAAOlN,GAAIA,GACzF,IAAK,MAAO,MAAO25I,IAAkBp9E,GAAI0B,YAAYtd,EAAI3gD,GAAIA,GAC7D,IAAK,QAAS,IAAIA,EAAEy7B,KAAMz7B,EAAEy7B,KAAO,EACnC,IAAK,QAAS,IAAIz7B,EAAEy7B,KAAMz7B,EAAEy7B,KAAO,EACnC,IAAK,QAAS,IAAIz7B,EAAEy7B,KAAMz7B,EAAEy7B,KAAO,CAAG,OAAOk+G,IAAkB55B,GAAep/D,EAAI3gD,GAAIA,GACtF,IAAK,QAAS,IAAIA,EAAEy7B,KAAMz7B,EAAEy7B,KAAO,EACnC,IAAK,SACL,IAAK,OACL,IAAK,MAAO,IAAIz7B,EAAEy7B,KAAMz7B,EAAEy7B,KAAO,CAAG,OAAO89G,IAAe54F,EAAI3gD,GAC9D,IAAK,QACL,IAAK,QACL,IAAK,QACL,IAAK,QACL,IAAK,WACL,IAAK,MAAO,MAAO84I,IAAen4F,EAAI3gD,GACtC,QAAS,KAAM,IAAI9I,OAAO,0BAA4B8I,EAAEqvC,SAAW,OAIrE,QAAS2qG,IAAkBh6I,GAC1B,GAAGA,EAAEqvC,SAAU,MACf,IAAI4qG,IACHC,IAAO,QACPj0H,IAAO,OACPk0H,IAAO,OACPC,WAAc,MACdC,QAAW,MAEZ,IAAI1zH,GAAM3mB,EAAEoX,KAAKhd,MAAM4F,EAAEoX,KAAKtH,YAAY,MAAMU,aAChD,IAAGmW,EAAI1pB,MAAM,cAAe+C,EAAEqvC,SAAW1oB,EAAIvsB,MAAM,EACnD4F,GAAEqvC,SAAW4qG,EAAIj6I,EAAEqvC,WAAarvC,EAAEqvC,SAGnC,QAASzwB,IAAc+hC,EAAIprC,EAAU/L,GACpC,GAAIxJ,GAAIwJ,KAAUxJ,GAAEoM,KAAO,MAC3BpM,GAAEoX,KAAO7B,CACTykI,IAAkBh6I,EAClB,OAAO65I,IAAUl5F,EAAI3gD,GAGtB,QAASs6I,IAAkB35F,EAAIprC,EAAU/L,GACxC,GAAIxJ,GAAIwJ,KAAUxJ,GAAEoM,KAAO,MAC3BpM,GAAEoX,KAAO7B,CACTykI,IAAkBh6I,EAClB,OAAO45I,IAAcj5F,EAAI3gD,GAI1B,QAASu6I,IAAehlI,EAAUorC,EAAIn3C,EAAM0wB,GAC3C,GAAIl6B,GAAIwJ,KAAUxJ,GAAEoM,KAAO,MAC3BpM,GAAEoX,KAAO7B,CACTykI,IAAkBh6I,EAClBA,GAAEoM,KAAO,QACT,IAAIouI,GAAMtgH,CAAI,MAAKsgH,YAAeC,WAAWD,EAAM,CACnD,OAAOtxH,IAAIJ,UAAUvT,EAAUskI,GAAUl5F,EAAI3gD,GAAIw6I,GAElD,QAASE,IAAcn9G,EAAO3vB,EAAGuH,EAAGu8C,EAAMx5C,EAAQuhC,EAAK5b,EAAO79B,GAC7D,GAAIiO,GAAKiuB,GAAW/mB,EACpB,IAAIwlI,GAAS36I,EAAE26I,OAAQvhI,EAAMpZ,EAAEoZ,MAAQ5f,OAAO8xB,UAAUC,eAAejxB,KAAK0F,EAAG,MAC/E,IAAI46I,GAAU,IACd,IAAIhzH,GAAO1P,IAAW,OACtB,IAAGA,IAAW,EAAG,CAChB,GAAG1e,OAAOqhJ,eAAgB,IAAMrhJ,OAAOqhJ,eAAejzH,EAAK,cAAe6L,MAAMte,EAAG2lI,WAAW,QAAW,MAAM3kJ,GAAKyxB,EAAImzH,WAAa5lI,MAChIyS,GAAImzH,WAAa5lI,EAEvB,IAAI0oB,GAASN,EAAMpoB,GAAI,IAAK,GAAI3Y,GAAIoR,EAAEjS,EAAEjB,EAAG8B,GAAKoR,EAAEzX,EAAEuE,IAAK8B,EAAG,CAC3D,GAAI8P,GAAMuxB,EAAQN,EAAMpoB,GAAG3Y,GAAK+gC,EAAMm0B,EAAKl1D,GAAKyR,EAChD,IAAG3B,IAAQlO,WAAakO,EAAIvJ,IAAM3E,UAAW,CAC5C,GAAGu8I,IAAWv8I,UAAW,QACzB,IAAGq7C,EAAIj9C,IAAM,KAAM,CAAEorB,EAAI6xB,EAAIj9C,IAAMm+I,EACnC,SAED,GAAI73I,GAAIwJ,EAAIxJ,CACZ,QAAOwJ,EAAIvJ,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,IAAI5L,OAAM,qBAAuBoV,EAAIvJ,IAErD,GAAG02C,EAAIj9C,IAAM,KAAM,CAClB,GAAGsG,GAAK,KAAM,CACb,GAAGwJ,EAAIvJ,GAAK,KAAOD,IAAM,KAAM8kB,EAAI6xB,EAAIj9C,IAAM,SACxC,IAAGm+I,IAAWv8I,UAAWwpB,EAAI6xB,EAAIj9C,IAAMm+I,MACvC,IAAGvhI,GAAOtW,IAAM,KAAM8kB,EAAI6xB,EAAIj9C,IAAM,SACpC,cACC,CACNorB,EAAI6xB,EAAIj9C,IAAM4c,IAAQ9M,EAAIvJ,IAAM,KAAQuJ,EAAIvJ,IAAM,KAAO/C,EAAEg7I,aAAe,OAAUl4I,EAAIs6B,GAAY9wB,EAAIxJ,EAAE9C,GAE3G,GAAG8C,GAAK,KAAM83I,EAAU,OAG1B,OAAShzH,IAAKA,EAAKgzH,QAASA,GAI7B,QAASppF,IAAcj0B,EAAO/zB,GAC7B,GAAG+zB,GAAS,MAAQA,EAAM,SAAW,KAAM,QAC3C,IAAIjxB,IAAOvJ,EAAE,IAAID,EAAE,GAAIoV,EAAS,EAAGuD,EAAS,EAAGg+B,KAAU32C,EAAE,EAAG8N,EAAG,EACjE,IAAIhD,IAAKjS,GAAGiS,EAAE,EAAElT,EAAE,GAAGvE,GAAGyX,EAAE,EAAElT,EAAE,GAC9B,IAAIsF,GAAIwJ,KACR,IAAImyB,GAAQ37B,EAAE27B,OAAS,KAAO37B,EAAE27B,MAAQ4B,EAAM,OAC9C,IAAGv9B,EAAEkY,SAAW,EAAGA,EAAS,MACvB,IAAGlY,EAAEkY,SAAW,IAAKA,EAAS,MAC9B,IAAGlb,MAAM4E,QAAQ5B,EAAEkY,QAASA,EAAS,MACrC,IAAGlY,EAAEkY,QAAU,KAAMA,EAAS,CACnC,cAAcyjB,IACb,IAAK,SAAU/tB,EAAIovB,GAAkBrB,EAAQ,OAC7C,IAAK,SAAU/tB,EAAIovB,GAAkBO,EAAM,QAAU3vB,GAAEjS,EAAEiS,EAAI+tB,CAAO,OACpE,QAAS/tB,EAAI+tB,GAEd,GAAGzjB,EAAS,EAAGuD,EAAS,CACxB,IAAIxN,GAAKiuB,GAAWtuB,EAAEjS,EAAEiS,EACxB,IAAI8jD,KACJ,IAAIz3D,KACJ,IAAIghJ,GAAO,EAAGC,EAAU,CACxB,IAAIr9G,GAAQ7gC,MAAM4E,QAAQ27B,EAC1B,IAAIpoB,GAAIvH,EAAEjS,EAAEiS,EAAGpR,EAAI,CACnB,IAAI2+I,KACJ,IAAGt9G,IAAUN,EAAMpoB,GAAIooB,EAAMpoB,KAC7B,IAAIuiD,GAAU13D,EAAEo7I,YAAc79G,EAAM,YACpC,IAAIk6B,GAAUz3D,EAAEo7I,YAAc79G,EAAM,YACpC,KAAI/gC,EAAIoR,EAAEjS,EAAEjB,EAAG8B,GAAKoR,EAAEzX,EAAEuE,IAAK8B,EAAG,CAC/B,IAAKk7D,EAAQl7D,QAAc,OAAG,QAC9Bk1D,GAAKl1D,GAAKy/B,GAAWz/B,EACrB8P,GAAMuxB,EAAQN,EAAMpoB,GAAG3Y,GAAK+gC,EAAMm0B,EAAKl1D,GAAKyR,EAC5C,QAAOiK,GACN,IAAK,GAAGuhC,EAAIj9C,GAAKA,EAAIoR,EAAEjS,EAAEjB,CAAG,OAC5B,IAAK,GAAG++C,EAAIj9C,GAAKk1D,EAAKl1D,EAAI,OAC1B,IAAK,GAAGi9C,EAAIj9C,GAAKwD,EAAEkY,OAAO1b,EAAIoR,EAAEjS,EAAEjB,EAAI,OACtC,QACC,GAAG4R,GAAO,KAAMA,GAAOpS,EAAG,UAAW6I,EAAG,IACxC6N,GAAK9N,EAAIs6B,GAAY9wB,EAAK,KAAMtM,EAChCk7I,GAAUC,EAAWr4I,IAAM,CAC3B,KAAIo4I,EAASC,EAAWr4I,GAAK,MACxB,CACJ,EAAG,CAAE8N,EAAK9N,EAAI,IAAOo4I,UAAoBC,EAAWvqI,GAAMuqI,GAAWr4I,GAAKo4I,CAC1EC,GAAWvqI,GAAM,EAElB6oC,EAAIj9C,GAAKoU,IAGZ,IAAKuE,EAAIvH,EAAEjS,EAAEiS,EAAI6N,EAAQtG,GAAKvH,EAAEzX,EAAEyX,IAAKuH,EAAG,CACzC,IAAKsiD,EAAQtiD,QAAQmsC,OAAQ,QAC7B,IAAI15B,GAAM8yH,GAAcn9G,EAAO3vB,EAAGuH,EAAGu8C,EAAMx5C,EAAQuhC,EAAK5b,EAAO79B,EAC/D,IAAI4nB,EAAIgzH,UAAY,QAAW1iI,IAAW,EAAIlY,EAAEq7I,YAAc,QAAUr7I,EAAEq7I,WAAYphJ,EAAIghJ,KAAUrzH,EAAIA,IAEzG3tB,EAAI5D,OAAS4kJ,CACb,OAAOhhJ,GAGR,GAAIqhJ,IAAO,IACX,SAASC,IAAah+G,EAAO3vB,EAAGuH,EAAGu8C,EAAMz6C,EAAI4uD,EAAItK,EAAIv7D,GACpD,GAAI46I,GAAU,IACd,IAAIhzH,MAAU4zH,EAAM,GAAIvtI,EAAKiuB,GAAW/mB,EACxC,KAAI,GAAI3Y,GAAIoR,EAAEjS,EAAEjB,EAAG8B,GAAKoR,EAAEzX,EAAEuE,IAAK8B,EAAG,CACnC,IAAKk1D,EAAKl1D,GAAI,QACd,IAAI8P,GAAMtM,EAAE69B,OAASN,EAAMpoB,QAAQ3Y,GAAI+gC,EAAMm0B,EAAKl1D,GAAKyR,EACvD,IAAG3B,GAAO,KAAMkvI,EAAM,OACjB,IAAGlvI,EAAIxJ,GAAK,KAAM,CACtB83I,EAAU,KACVY,GAAM,IAAIx7I,EAAEg7I,YAAc1uI,EAAIvJ,GAAK,IAAMuJ,EAAIxJ,EAAIs6B,GAAY9wB,EAAK,KAAMtM,GACxE,KAAI,GAAI5J,GAAI,EAAGuY,EAAK,EAAGvY,IAAMolJ,EAAInlJ,SAAUD,EAAG,IAAIuY,EAAK6sI,EAAIllJ,WAAWF,MAAQ6gB,GAAMtI,IAAOk3D,GAAMl3D,IAAO,IAAM3O,EAAEy7I,YAAa,CAACD,EAAM,IAAOA,EAAIv6I,QAAQq6I,GAAM,MAAQ,GAAM,OAC3K,GAAGE,GAAO,KAAMA,EAAM,WAChB,IAAGlvI,EAAIxR,GAAK,OAASwR,EAAIvP,EAAG,CAClC69I,EAAU,KACVY,GAAM,IAAMlvI,EAAIxR,CAAG,IAAG0gJ,EAAI7+I,QAAQ,MAAQ,EAAG6+I,EAAM,IAAMA,EAAIv6I,QAAQq6I,GAAM,MAAQ,QAC7EE,GAAM,EAEb5zH,GAAIhqB,KAAK49I,GAEV,GAAGx7I,EAAEq7I,YAAc,OAAST,EAAS,MAAO,KAC5C,OAAOhzH,GAAI/qB,KAAK0+D,GAGjB,QAASw+E,IAAax8G,EAAO/zB,GAC5B,GAAIvP,KACJ,IAAI+F,GAAIwJ,GAAQ,QAAYA,CAC5B,IAAG+zB,GAAS,MAAQA,EAAM,SAAW,KAAM,MAAO,EAClD,IAAI3vB,GAAIovB,GAAkBO,EAAM,QAChC,IAAIg+B,GAAKv7D,EAAEu7D,KAAOn9D,UAAY4B,EAAEu7D,GAAK,IAAKtkD,EAAKskD,EAAGjlE,WAAW,EAC7D,IAAImjE,GAAKz5D,EAAEy5D,KAAOr7D,UAAY4B,EAAEy5D,GAAK,KAAMoM,EAAKpM,EAAGnjE,WAAW,EAC9D,IAAIolJ,GAAW,GAAI1oI,SAAQuoD,GAAI,IAAM,MAAQA,GAAI,KACjD,IAAI3zC,GAAM,GAAI8pC,IACd1xD,GAAE69B,MAAQ7gC,MAAM4E,QAAQ27B,EACxB,IAAIm6B,GAAU13D,EAAEo7I,YAAc79G,EAAM,YACpC,IAAIk6B,GAAUz3D,EAAEo7I,YAAc79G,EAAM,YACpC,KAAI,GAAI/gC,GAAIoR,EAAEjS,EAAEjB,EAAG8B,GAAKoR,EAAEzX,EAAEuE,IAAK8B,EAAG,KAAOk7D,EAAQl7D,QAAc,OAAGk1D,EAAKl1D,GAAKy/B,GAAWz/B,EACzF,IAAItC,GAAI,CACR,KAAI,GAAIib,GAAIvH,EAAEjS,EAAEiS,EAAGuH,GAAKvH,EAAEzX,EAAEyX,IAAKuH,EAAG,CACnC,IAAKsiD,EAAQtiD,QAAQmsC,OAAQ,QAC7B15B,GAAM2zH,GAAah+G,EAAO3vB,EAAGuH,EAAGu8C,EAAMz6C,EAAI4uD,EAAItK,EAAIv7D,EAClD,IAAG4nB,GAAO,KAAM,CAAE,SAClB,GAAG5nB,EAAE27I,MAAO/zH,EAAMA,EAAI3mB,QAAQy6I,EAAS,GACvC,IAAG9zH,GAAQ5nB,EAAEq7I,YAAc,MAAQphJ,EAAI2D,MAAM1D,IAAMu/D,EAAK,IAAM7xC,SAExD5nB,GAAE69B,KACT,OAAO5jC,GAAI4C,KAAK,IAGjB,QAASi9I,IAAav8G,EAAO/zB,GAC5B,IAAIA,EAAMA,IAAWA,GAAK+xD,GAAK,IAAM/xD,GAAKiwD,GAAK,IAC/C,IAAI99D,GAAIo+I,GAAax8G,EAAO/zB,EAC5B,UAAUrL,IAAY,aAAeqL,EAAK4C,MAAQ,SAAU,MAAOzQ,EACnE,IAAIqE,GAAI7B,EAASL,MAAMvB,OAAO,KAAMZ,EAAG,MACvC,OAAOrD,QAAOC,aAAa,KAAOD,OAAOC,aAAa,KAAOyH,EAG9D,QAAS47I,IAAkBr+G,GAC1B,GAAIvzB,GAAI,GAAI3R,EAAGiU,EAAI,EACnB,IAAGixB,GAAS,MAAQA,EAAM,SAAW,KAAM,QAC3C,IAAI3vB,GAAIovB,GAAkBO,EAAM,SAAUtvB,EAAK,GAAIyjD,KAAWl1D;AAC9D,GAAIq/I,KACJ,IAAIh+G,GAAQ7gC,MAAM4E,QAAQ27B,EAC1B,KAAI/gC,EAAIoR,EAAEjS,EAAEjB,EAAG8B,GAAKoR,EAAEzX,EAAEuE,IAAK8B,EAAGk1D,EAAKl1D,GAAKy/B,GAAWz/B,EACrD,KAAI,GAAI2Y,GAAIvH,EAAEjS,EAAEiS,EAAGuH,GAAKvH,EAAEzX,EAAEyX,IAAKuH,EAAG,CACnClH,EAAKiuB,GAAW/mB,EAChB,KAAI3Y,EAAIoR,EAAEjS,EAAEjB,EAAG8B,GAAKoR,EAAEzX,EAAEuE,IAAK8B,EAAG,CAC/BwN,EAAI0nD,EAAKl1D,GAAKyR,CACd5V,GAAIwlC,GAASN,EAAMpoB,QAAQ3Y,GAAK+gC,EAAMvzB,EACtCsC,GAAM,EACN,IAAGjU,IAAM+F,UAAW,aACf,IAAG/F,EAAE0E,GAAK,KAAM,CACpBiN,EAAI3R,EAAE0E,CACN,KAAI1E,EAAEyC,EAAG,QACTwR,GAAMjU,EAAEyC,CACR,IAAGkP,EAAErN,QAAQ,OAAS,EAAGqN,EAAIA,EAAI,IAAMA,EAExC,GAAG3R,EAAEyC,GAAK,KAAMwR,EAAMjU,EAAEyC,MACnB,IAAGzC,EAAE0K,GAAK,IAAK,aACf,IAAG1K,EAAE0K,GAAK,KAAO1K,EAAEyK,GAAK,KAAMwJ,EAAM,GAAKjU,EAAEyK,MAC3C,IAAGzK,EAAE0K,GAAK,IAAKuJ,EAAMjU,EAAEyK,EAAI,OAAS,YACpC,IAAGzK,EAAE6B,IAAMkE,UAAWkO,EAAM,IAAMjU,EAAE6B,MACpC,IAAG7B,EAAEyK,IAAM1E,UAAW,aACtB,IAAG/F,EAAE0K,GAAK,IAAKuJ,EAAM,IAAMjU,EAAEyK,MAC7BwJ,GAAM,GAAGjU,EAAEyK,CAChB+4I,GAAKA,EAAKxlJ,QAAU2T,EAAI,IAAMsC,GAGhC,MAAOuvI,GAGR,QAASC,IAAel+G,EAAKm+G,EAAIvyI,GAChC,GAAIxJ,GAAIwJ,KACR,IAAIiS,KAAWzb,EAAEg8I,UACjB,IAAIl+G,GAAKF,KACT,IAAIG,GAAK,EAAGC,EAAK,CACjB,IAAGF,GAAM99B,EAAEi+B,QAAU,KAAM,CAC1B,SAAUj+B,GAAEi+B,QAAU,SAAUF,EAAK/9B,EAAEi+B,WAClC,CACJ,GAAIC,SAAiBl+B,GAAEi+B,QAAU,SAAWtB,GAAY38B,EAAEi+B,QAAUj+B,EAAEi+B,MACtEF,GAAKG,EAAQtwB,CAAGowB,GAAKE,EAAQxjC,GAG/B,GAAI4gC,EACJ,IAAIK,IAAUhgC,GAAIjB,EAAE,EAAGkT,EAAE,GAAIzX,GAAIuE,EAAEsjC,EAAIpwB,EAAEmwB,EAAKg+G,EAAG1lJ,OAAS,EAAIolB,GAC9D,IAAGqiB,EAAG,QAAS,CACd,GAAIK,GAASnB,GAAkBc,EAAG,QAClCnC,GAAMxlC,EAAEuE,EAAI0I,KAAKmM,IAAIosB,EAAMxlC,EAAEuE,EAAGyjC,EAAOhoC,EAAEuE,EACzCihC,GAAMxlC,EAAEyX,EAAIxK,KAAKmM,IAAIosB,EAAMxlC,EAAEyX,EAAGuwB,EAAOhoC,EAAEyX,EACzC,IAAGmwB,IAAO,EAAG,CAAEA,EAAKI,EAAOhoC,EAAEyX,EAAI,CAAG+tB,GAAMxlC,EAAEyX,EAAImwB,EAAKg+G,EAAG1lJ,OAAS,EAAIolB,OAC/D,CACN,GAAGsiB,IAAO,EAAG,CAAEA,EAAK,CAAGpC,GAAMxlC,EAAEyX,EAAImuI,EAAG1lJ,OAAS,EAAIolB,GAEpD,GAAIg+B,GAAMz5C,EAAEkY,WAAc1b,EAAI,CAE9Bu/I,GAAGhgJ,QAAQ,SAAUkgJ,EAAI9mI,GACxB5b,GAAK0iJ,GAAIlgJ,QAAQ,SAASd,GACzB,IAAIuB,EAAEi9C,EAAI98C,QAAQ1B,MAAQ,EAAGw+C,EAAIj9C,EAAEi9C,EAAIpjD,QAAU4E,CACjD,IAAI6H,GAAIm5I,EAAGhhJ,EACX,IAAI8H,GAAI,GACR,IAAIgvB,GAAI,EACR,IAAIq4B,GAAMvuB,IAAanhC,EAAEsjC,EAAKxhC,EAAEoR,EAAEmwB,EAAK5oB,EAAIsG,GAC3C6f,GAAO4gH,GAAiBp+G,EAAIssB,EAC5B,IAAGtnD,SAAYA,KAAM,YAAcA,YAAawH,OAAM,CACrDwzB,EAAGssB,GAAOtnD,MACJ,CACN,SAAUA,IAAK,SAAUC,EAAI,QACxB,UAAUD,IAAK,UAAWC,EAAI,QAC9B,UAAUD,IAAK,SAAUC,EAAI,QAC7B,IAAGD,YAAawH,MAAM,CAC1BvH,EAAI,GACJ,KAAI/C,EAAEw+B,UAAW,CAAEz7B,EAAI,GAAKD,GAAIkpB,GAAQlpB,GACxCivB,EAAK/xB,EAAE0R,QAAU5N,EAAU,QAEvB,IAAGhB,IAAM,MAAQ9C,EAAEs+B,UAAW,CAAEv7B,EAAI,GAAKD,GAAI,EAClD,IAAIw4B,EAAMwC,EAAGssB,GAAO9uB,GAASv4B,EAAEA,EAAGD,EAAEA,OAC/B,CACJw4B,EAAKv4B,EAAIA,CAAGu4B,GAAKx4B,EAAIA,QACdw4B,GAAKphC,QAAUohC,GAAKnmB,CAC3B,IAAG4c,EAAGuJ,EAAKvJ,EAAIA,EAEhB,GAAGA,EAAGuJ,EAAKvJ,EAAIA,MAIlB4J,GAAMxlC,EAAEuE,EAAI0I,KAAKmM,IAAIosB,EAAMxlC,EAAEuE,EAAGsjC,EAAKyb,EAAIpjD,OAAS,EAClD,IAAI+nC,GAAMlC,GAAW6B,EACrB,IAAGtiB,EAAQ,IAAIjf,EAAI,EAAGA,EAAIi9C,EAAIpjD,SAAUmG,EAAGshC,EAAG7B,GAAWz/B,EAAIwhC,GAAMI,IAAQr7B,EAAE,IAAKD,EAAE22C,EAAIj9C,GACxFshC,GAAG,QAAUjB,GAAalB,EAC1B,OAAOmC,GAER,QAASq+G,IAAcJ,EAAIvyI,GAAQ,MAAOsyI,IAAe,KAAMC,EAAIvyI,GAGnE,QAAS0yI,IAAiBp+G,EAAI3oB,EAAG3Y,GAEhC,SAAU2Y,IAAK,SAAU,CAExB,GAAGnY,MAAM4E,QAAQk8B,GAAK,CACrB,GAAIs+G,GAAKz/G,GAAYxnB,EACrB,KAAI2oB,EAAGs+G,EAAGxuI,GAAIkwB,EAAGs+G,EAAGxuI,KACpB,OAAOkwB,GAAGs+G,EAAGxuI,GAAGwuI,EAAG1hJ,KAAOojC,EAAGs+G,EAAGxuI,GAAGwuI,EAAG1hJ,IAAMqI,EAAE,MAE/C,MAAO+6B,GAAG3oB,KAAO2oB,EAAG3oB,IAAMpS,EAAE,MAG7B,SAAUoS,IAAK,SAAU,MAAO+mI,IAAiBp+G,EAAIjC,GAAY1mB,GAEjE,OAAO+mI,IAAiBp+G,EAAIjC,IAAajuB,EAAEuH,EAAEza,EAAE8B,GAAG,KAInD,QAAS6/I,IAAa17F,EAAI27F,GACzB,SAAUA,IAAM,SAAU,CACzB,GAAGA,GAAM,GAAK37F,EAAGljB,WAAWpnC,OAASimJ,EAAI,MAAOA,EAChD,MAAM,IAAIplJ,OAAM,uBAAyBolJ,OACnC,UAAUA,IAAM,SAAU,CAChC,GAAIpvI,GAAMyzC,EAAGljB,WAAW9gC,QAAQ2/I,EAChC,IAAGpvI,GAAO,EAAG,MAAOA,EACpB,MAAM,IAAIhW,OAAM,2BAA6BolJ,EAAK,SAC5C,MAAM,IAAIplJ,OAAM,sBAAwBolJ,EAAK,KAIrD,QAAS9Y,MACR,OAAS/lG,cAAgBC,WAI1B,QAAS+lG,IAAkB9iF,EAAI7iB,EAAInlB,EAAM4jI,GACxC,GAAInmJ,GAAI,CACR,KAAIuiB,EAAM,KAAMviB,GAAK,QAAUA,EAAGuiB,EAAOva,UAAW,GAAGuiD,EAAGljB,WAAW9gC,QAAQgc,EAAO,QAAUviB,KAAO,EAAG,KACxG,KAAIuiB,GAAQgoC,EAAGljB,WAAWpnC,QAAU,MAAQ,KAAM,IAAIa,OAAM,sBAC5D,IAAGqlJ,GAAQ57F,EAAGljB,WAAW9gC,QAAQgc,IAAS,EAAG,CAC5C,GAAI1O,GAAI0O,EAAK1b,MAAM,eACnB7G,GAAI6T,IAAMA,EAAE,IAAM,CAClB,IAAInT,GAAOmT,GAAKA,EAAE,IAAM0O,CACxB,OAAMviB,EAAGA,GAAK,QAAUA,EAAG,GAAGuqD,EAAGljB,WAAW9gC,QAAQgc,EAAO7hB,EAAOV,KAAO,EAAG,MAE7E23G,GAAcp1F,EACd,IAAGgoC,EAAGljB,WAAW9gC,QAAQgc,IAAS,EAAG,KAAM,IAAIzhB,OAAM,wBAA0ByhB,EAAO,oBAEtFgoC,GAAGljB,WAAW7/B,KAAK+a,EACnBgoC,GAAGjjB,OAAO/kB,GAAQmlB,CAClB,OAAOnlB,GAIR,QAAS6jI,IAA0B77F,EAAI27F,EAAIG,GAC1C,IAAI97F,EAAG4gD,SAAU5gD,EAAG4gD,WACpB,KAAI5gD,EAAG4gD,SAAS7jE,OAAQijB,EAAG4gD,SAAS7jE,SAEpC,IAAIxwB,GAAMmvI,GAAa17F,EAAI27F,EAE3B,KAAI37F,EAAG4gD,SAAS7jE,OAAOxwB,GAAMyzC,EAAG4gD,SAAS7jE,OAAOxwB,KAEhD,QAAOuvI,GACN,IAAK,IAAG,IAAK,IAAG,IAAK,GAAG,MACxB,QAAS,KAAM,IAAIvlJ,OAAM,gCAAkCulJ,IAG5D97F,EAAG4gD,SAAS7jE,OAAOxwB,GAAKyhG,OAAS8tC,EAIlC,QAASC,IAAuBphH,EAAMjvB,GACrCivB,EAAKvJ,EAAI1lB,CACT,OAAOivB,GAIR,QAASqhH,IAAmBrhH,EAAMpK,EAAQ+wE,GACzC,IAAI/wE,EAAQ,OACJoK,GAAK39B,MACN,CACN29B,EAAK39B,GAAO2zC,OAAQpgB,EACpB,IAAG+wE,EAAS3mE,EAAK39B,EAAEogD,QAAUkkD,EAE9B,MAAO3mE,GAER,QAASshH,IAAuBthH,EAAMK,EAAOsmE,GAAW,MAAO06C,IAAmBrhH,EAAM,IAAMK,EAAOsmE,GAGrG,QAAS46C,IAAiBvhH,EAAMxU,EAAMg0D,GACrC,IAAIx/C,EAAK5gC,EAAG4gC,EAAK5gC,IACjB4gC,GAAK5gC,EAAEkD,MAAMmF,EAAE+jB,EAAMzF,EAAEy5D,GAAQ,YAIhC,QAASgiE,IAAwBh/G,EAAInC,EAAOw8B,EAAS4kF,GACpD,GAAI76C,SAAavmE,IAAS,SAAWA,EAAQqB,GAAkBrB,EAC/D,IAAIqhH,SAAgBrhH,IAAS,SAAWA,EAAQkB,GAAalB,EAC7D,KAAI,GAAIxmB,GAAI+sF,EAAIvmG,EAAEiS,EAAGuH,GAAK+sF,EAAI/rG,EAAEyX,IAAKuH,EAAG,IAAI,GAAI3Y,GAAI0lG,EAAIvmG,EAAEjB,EAAG8B,GAAK0lG,EAAI/rG,EAAEuE,IAAK8B,EAAG,CAC/E,GAAI8+B,GAAO4gH,GAAiBp+G,EAAI3oB,EAAG3Y,EACnC8+B,GAAKv4B,EAAI,GACTu4B,GAAKv+B,EAAIigJ,QACF1hH,GAAKx4B,CACZ,IAAGqS,GAAK+sF,EAAIvmG,EAAEiS,GAAKpR,GAAK0lG,EAAIvmG,EAAEjB,EAAG,CAChC4gC,EAAKxgC,EAAIq9D,CACT,IAAG4kF,EAASzhH,EAAKplC,EAAI,MAGvB,MAAO4nC,GAGR,GAAIhgC,KACHm+B,WAAYA,GACZC,WAAYA,GACZL,YAAaA,GACbgB,aAAcA,GACdP,WAAYA,GACZH,WAAYA,GACZO,WAAYA,GACZC,YAAaA,GACbC,aAAcA,GACdQ,YAAaA,GACbO,cAAeA,GACfm+G,eAAgBA,GAChBlY,cAAeA,GACfllG,aAAcA,GACdy9G,cAAeA,GACfc,eAAgB1Y,GAChBC,cAAeA,GACfuV,aAAcA,GACdD,aAAcA,GACdtoF,cAAeA,GACfmyE,cAAeA,GACfiY,kBAAmBA,GACnBsB,0BAA2B1rF,GAC3B2rF,eAAgBjB,GAChB1Y,SAAUA,GACVC,kBAAmBA,GACnB+Y,0BAA2BA,GAC3BE,uBAAwBA,GACxBC,mBAAoBA,GACpBC,uBAAwBA,GACxBC,iBAAkBA,GAClBC,wBAAyBA,GACzBl/H,QACCw/H,cAAe,EACfC,aAAc,EACdC,kBAAmB,GAIrB,IAAIC,GACJ,SAASC,IAAaroI,GAAKooI,GAAYpoI,EAEvC,QAASsoI,IAAiBlgH,EAAO/zB,GAChC,GAAIk0I,GAASH,IACb,IAAIv9I,GAAIwJ,GAAQ,QAAYA,CAC5B,IAAG+zB,GAAS,MAAQA,EAAM,SAAW,KAAM,CAAEmgH,EAAO9/I,KAAK,KAAO,OAAO8/I,GACvE,GAAI9vI,GAAIovB,GAAkBO,EAAM,QAChC,IAAIg+B,GAAKv7D,EAAEu7D,KAAOn9D,UAAY4B,EAAEu7D,GAAK,IAAKtkD,EAAKskD,EAAGjlE,WAAW,EAC7D,IAAImjE,GAAKz5D,EAAEy5D,KAAOr7D,UAAY4B,EAAEy5D,GAAK,KAAMoM,EAAKpM,EAAGnjE,WAAW,EAC9D,IAAIolJ,GAAW,GAAI1oI,SAAQuoD,GAAI,IAAM,MAAQA,GAAI,KACjD,IAAI3zC,GAAM,GAAI8pC,IACd1xD,GAAE69B,MAAQ7gC,MAAM4E,QAAQ27B,EACxB,IAAIm6B,GAAU13D,EAAEo7I,YAAc79G,EAAM,YACpC,IAAIk6B,GAAUz3D,EAAEo7I,YAAc79G,EAAM,YACpC,KAAI,GAAI/gC,GAAIoR,EAAEjS,EAAEjB,EAAG8B,GAAKoR,EAAEzX,EAAEuE,IAAK8B,EAAG,KAAOk7D,EAAQl7D,QAAc,OAAGk1D,EAAKl1D,GAAKy/B,GAAWz/B,EACzF,IAAI2Y,GAAIvH,EAAEjS,EAAEiS,CACZ,IAAI+vI,GAAM,MAAOzjJ,EAAI,CACrBwjJ,GAAOE,MAAQ,WACd,IAAID,EAAK,CAAEA,EAAM,IAAM,OAAOD,GAAO9/I,KAAK,UAC1C,MAAMuX,GAAKvH,EAAEzX,EAAEyX,EAAG,GACfuH,CACF,KAAKsiD,EAAQtiD,EAAE,QAAQmsC,OAAQ,QAC/B15B,GAAM2zH,GAAah+G,EAAO3vB,EAAGuH,EAAE,EAAGu8C,EAAMz6C,EAAI4uD,EAAItK,EAAIv7D,EACpD,IAAG4nB,GAAO,KAAM,CACf,GAAG5nB,EAAE27I,MAAO/zH,EAAMA,EAAI3mB,QAAQy6I,EAAS,GACvC,IAAG9zH,GAAQ5nB,EAAEq7I,YAAc,MAAQ,MAAOqC,GAAO9/I,MAAM1D,IAAMu/D,EAAK,IAAM7xC,IAG1E,MAAO81H,GAAO9/I,KAAK,MAEpB,OAAO8/I,GAGR,QAASG,IAAkB//G,EAAIt0B,GAC9B,GAAIk0I,GAASH,IAEb,IAAIv9I,GAAIwJ,KACR,IAAI0O,GAASlY,EAAEkY,QAAU,KAAOlY,EAAEkY,OAASorH,EAC3C,IAAIr2E,GAASjtD,EAAEitD,QAAU,KAAOjtD,EAAEitD,OAASs2E,EAC3Cma,GAAO9/I,KAAKsa,EACZ,IAAItK,GAAIgvB,GAAakB,EAAG,QACxB99B,GAAE69B,MAAQ7gC,MAAM4E,QAAQk8B,EACxB4/G,GAAO9/I,KAAK8lI,GAAmB5lG,EAAIlwB,EAAG5N,GACtC,IAAImV,GAAIvH,EAAEjS,EAAEiS,CACZ,IAAIqZ,GAAM,KACVy2H,GAAOE,MAAQ,WACd,GAAGzoI,EAAIvH,EAAEzX,EAAEyX,EAAG,CACb,IAAIqZ,EAAK,CAAEA,EAAM,IAAMy2H,GAAO9/I,KAAK,WAAaqvD,GAChD,MAAOywF,GAAO9/I,KAAK,MAEpB,MAAMuX,GAAKvH,EAAEzX,EAAEyX,EAAG,CACjB8vI,EAAO9/I,KAAKwlI,GAActlG,EAAIlwB,EAAGuH,EAAGnV,MAClCmV,CACF,QAGF,OAAOuoI,GAGR,QAASI,IAAkBvgH,EAAO/zB,GACjC,GAAIk0I,GAASH,IAAWQ,WAAW,MAEnC,IAAGxgH,GAAS,MAAQA,EAAM,SAAW,KAAM,CAAEmgH,EAAO9/I,KAAK,KAAO,OAAO8/I,GACvE,GAAIpxI,IAAOvJ,EAAE,IAAID,EAAE,GAAIoV,EAAS,EAAGuD,EAAS,EAAGg+B,KAAU32C,EAAE,EAAG8N,EAAG,EACjE,IAAIhD,IAAKjS,GAAGiS,EAAE,EAAElT,EAAE,GAAGvE,GAAGyX,EAAE,EAAElT,EAAE,GAC9B,IAAIsF,GAAIwJ,KACR,IAAImyB,GAAQ37B,EAAE27B,OAAS,KAAO37B,EAAE27B,MAAQ4B,EAAM,OAC9C,IAAGv9B,EAAEkY,SAAW,EAAGA,EAAS,MACvB,IAAGlY,EAAEkY,SAAW,IAAKA,EAAS,MAC9B,IAAGlb,MAAM4E,QAAQ5B,EAAEkY,QAASA,EAAS,CAC1C,cAAcyjB,IACb,IAAK,SAAU/tB,EAAIovB,GAAkBrB,EAAQ,OAC7C,IAAK,SAAU/tB,EAAIovB,GAAkBO,EAAM,QAAU3vB,GAAEjS,EAAEiS,EAAI+tB,CAAO,OACpE,QAAS/tB,EAAI+tB,GAEd,GAAGzjB,EAAS,EAAGuD,EAAS,CACxB,IAAIxN,GAAKiuB,GAAWtuB,EAAEjS,EAAEiS,EACxB,IAAI8jD,KACJ,IAAIwpF,GAAU,CACd,IAAIr9G,GAAQ7gC,MAAM4E,QAAQ27B,EAC1B,IAAIpoB,GAAIvH,EAAEjS,EAAEiS,EAAGpR,EAAI,CACnB,IAAI2+I,KACJ,IAAGt9G,IAAUN,EAAMpoB,GAAIooB,EAAMpoB,KAC7B,IAAIuiD,GAAU13D,EAAEo7I,YAAc79G,EAAM,YACpC,IAAIk6B,GAAUz3D,EAAEo7I,YAAc79G,EAAM,YACpC,KAAI/gC,EAAIoR,EAAEjS,EAAEjB,EAAG8B,GAAKoR,EAAEzX,EAAEuE,IAAK8B,EAAG,CAC/B,IAAKk7D,EAAQl7D,QAAc,OAAG,QAC9Bk1D,GAAKl1D,GAAKy/B,GAAWz/B,EACrB8P,GAAMuxB,EAAQN,EAAMpoB,GAAG3Y,GAAK+gC,EAAMm0B,EAAKl1D,GAAKyR,EAC5C,QAAOiK,GACN,IAAK,GAAGuhC,EAAIj9C,GAAKA,EAAIoR,EAAEjS,EAAEjB,CAAG,OAC5B,IAAK,GAAG++C,EAAIj9C,GAAKk1D,EAAKl1D,EAAI,OAC1B,IAAK,GAAGi9C,EAAIj9C,GAAKwD,EAAEkY,OAAO1b,EAAIoR,EAAEjS,EAAEjB,EAAI,OACtC,QACC,GAAG4R,GAAO,KAAMA,GAAOpS,EAAG,UAAW6I,EAAG,IACxC6N,GAAK9N,EAAIs6B,GAAY9wB,EAAK,KAAMtM,EAChCk7I,GAAUC,EAAWr4I,IAAM,CAC3B,KAAIo4I,EAASC,EAAWr4I,GAAK,MACxB,CACJ,EAAG,CAAE8N,EAAK9N,EAAI,IAAOo4I,UAAoBC,EAAWvqI,GAAMuqI,GAAWr4I,GAAKo4I,CAC1EC,GAAWvqI,GAAM,EAElB6oC,EAAIj9C,GAAKoU,IAGZuE,EAAIvH,EAAEjS,EAAEiS,EAAI6N,CACZiiI,GAAOE,MAAQ,WACd,MAAMzoI,GAAKvH,EAAEzX,EAAEyX,EAAG,CACjB,IAAK6pD,EAAQtiD,EAAE,QAAQmsC,OAAQ,QAC/B,IAAI15B,GAAM8yH,GAAcn9G,EAAO3vB,EAAGuH,EAAGu8C,EAAMx5C,EAAQuhC,EAAK5b,EAAO79B,KAC7DmV,CACF,IAAIyS,EAAIgzH,UAAY,QAAW1iI,IAAW,EAAIlY,EAAEq7I,YAAc,QAAUr7I,EAAEq7I,WAAY,CACrFqC,EAAO9/I,KAAKgqB,EAAIA,IAChB,SAGF,MAAO81H,GAAO9/I,KAAK,MAEpB,OAAO8/I,GAGR,GAAIM,KACHC,QAASH,GACTI,QAASL,GACTM,OAAQV,GACPD,aAAcA,GAEhB,UAAUh+B,MAAiB,YAAazhH,EAAKyhH,aAAeA,EAC5DzhH,GAAKuZ,UAAYA,EACjBvZ,GAAK8d,KAAO68H,EACZ36I,GAAKqgJ,SAAWxiI,EAChB7d,GAAK6d,aAAeA,EACpB7d,GAAK8gB,MAAQg7H,EACb97I,GAAK+qB,UAAYlK,EACjB7gB,GAAK6gB,cAAgBA,EACrB7gB,GAAKw8I,eAAiBA,EACtBx8I,GAAKD,MAAQA,EACbC,GAAKsgJ,UAAYzE,EACjB77I,GAAKugJ,cAAgBhE,EACrBv8I,GAAKiU,IAAMA,EACX,UAAUgsI,MAAa,YAAajgJ,EAAK2/I,OAASM,EAClD,UAAUhpI,MAAQ,YAAajX,EAAKiX,IAAMA,EAC1C,UAAUhe,WAAY,YAAa,CACjC,GAAIunJ,IAASngJ,SACb,KAAImgJ,QAAYC,SAAUhB,GAAae,GAAOC,WAIhD,SAAU3nJ,WAAY,YAAamH,cAAcnH,aAC5C,UAAUD,UAAW,aAAeA,OAAOC,QAASmH,cAAcpH,OAAOC,aACzE,UAAU4nJ,UAAW,YAAcA,OAAOC,IAAKD,OAAO,OAAQ,WAAa,IAAI1gJ,KAAK/H,QAASgI,cAAcD,KAAO,OAAOA,YACzHC,eAAcD,KAEnB,UAAU4gJ,UAAW,cAAgBA,OAAO5gJ,KAAM,IAAM4gJ,OAAO5gJ,KAAOA,KAAQ,MAAM5H","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 0897d66..7e44340 100644 --- a/dist/xlsx.mini.min.js +++ b/dist/xlsx.mini.min.js @@ -1,9 +1,9 @@ /*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com */ -var XLSX={};function make_xlsx_lib(e){e.version="0.18.4";var r=1200,t=1252;var a=[874,932,936,949,950,1250,1251,1252,1253,1254,1255,1256,1257,1258,1e4];var n={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(a.indexOf(e)==-1)return;t=n[0]=e};function s(){i(1252)}var l=function(e){r=e;i(e)};function o(){l(1200);s()}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 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 h=function(e){var r=e.charCodeAt(0),t=e.charCodeAt(1);if(r==255&&t==254)return f(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 so(e){return String.fromCharCode(e)};var d=function lo(e){return String.fromCharCode(e)};var m=null;var v=true;var g=function(){var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";return{encode:function(r){var t="";var a=0,n=0,i=0,s=0,l=0,o=0,c=0;for(var f=0;f>2;n=r.charCodeAt(f++);l=(a&3)<<4|n>>4;i=r.charCodeAt(f++);o=(n&15)<<2|i>>6;c=i&63;if(isNaN(n)){o=c=64}else if(isNaN(i)){c=64}t+=e.charAt(s)+e.charAt(l)+e.charAt(o)+e.charAt(c)}return t},decode:function(r){var t="";var a=0,n=0,i=0,s=0,l=0,o=0,c=0;r=r.replace(/[^\w\+\/\=]/g,"");for(var f=0;f>4;t+=String.fromCharCode(a);o=e.indexOf(r.charAt(f++));n=(l&15)<<4|o>>2;if(o!==64){t+=String.fromCharCode(n)}c=e.indexOf(r.charAt(f++));i=(o&3)<<6|c;if(c!==64){t+=String.fromCharCode(i)}}return t}}}();var b=typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node;var w=function(){};if(typeof Buffer!=="undefined"){var k=!Buffer.from;if(!k)try{Buffer.from("foo","utf8")}catch(y){k=true}w=k?function(e,r){return r?new Buffer(e,r):new Buffer(e)}:Buffer.from.bind(Buffer);if(!Buffer.alloc)Buffer.alloc=function(e){return new Buffer(e)};if(!Buffer.allocUnsafe)Buffer.allocUnsafe=function(e){return new Buffer(e)}}function x(e){return b?Buffer.alloc(e):typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}function S(e){return b?Buffer.allocUnsafe(e):typeof Uint8Array!="undefined"?new Uint8Array(e):new Array(e)}var C=function oo(e){if(b)return w(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function _(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 A(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 l=e.charCodeAt(++i)&1023;n[t++]=240|s>>8&7;n[t++]=128|s>>2&63;n[t++]=128|l>>6&15|(s&3)<<4;n[t++]=128|l&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 D(r)}var D=function(e){if(typeof Uint8Array!=="undefined"){var r=0,t=0;for(r=0;r=0)r+=e.charAt(t--);return r}function t(e,r){var t="";while(t.length=r?a:t("0",r-a.length)+a}function n(e,r){var a=""+e;return a.length>=r?a:t(" ",r-a.length)+a}function i(e,r){var a=""+e;return a.length>=r?a:a+t(" ",r-a.length)}function s(e,r){var a=""+Math.round(e);return a.length>=r?a:t("0",r-a.length)+a}function l(e,r){var a=""+e;return a.length>=r?a:t("0",r-a.length)+a}var o=Math.pow(2,32);function c(e,r){if(e>o||e<-o)return s(e,r);var t=Math.round(e);return l(t,r)}function f(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 u=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var h=[["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 p(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"秒 "'}var d={};p(d);var m=[];var v=0;for(v=5;v<=8;++v)m[v]=32+v;for(v=23;v<=26;++v)m[v]=0;for(v=27;v<=31;++v)m[v]=14;for(v=50;v<=58;++v)m[v]=14;for(v=59;v<=62;++v)m[v]=v-58;for(v=67;v<=68;++v)m[v]=v-58;for(v=72;v<=75;++v)m[v]=v-58;for(v=67;v<=68;++v)m[v]=v-57;for(v=76;v<=78;++v)m[v]=v-56;for(v=79;v<=81;++v)m[v]=v-34;var g={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 b(e,r,t){var a=e<0?-1:1;var n=e*a;var i=0,s=1,l=0;var o=1,c=0,f=0;var u=Math.floor(n);while(cr){if(c>r){f=o;l=i}else{f=c;l=s}}if(!t)return[0,a*l,f];var h=Math.floor(a*l/f);return[h,a*l-h*f,f]}function w(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 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){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=T(o,s)}l.y=s[0];l.m=s[1];l.d=s[2];l.S=n%60;n=Math.floor(n/60);l.M=n%60;n=Math.floor(n/60);l.H=n;l.q=i;return l}e.parse_date_code=w;var k=new Date(1899,11,31,0,0,0);var y=k.getTime();var x=new Date(1900,2,1,0,0,0);function S(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=x)t+=24*60*60*1e3;return(t-(y+(e.getTimezoneOffset()-k.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function C(e){return e.toString(10)}e._general_int=C;var _=function U(){var e=/(?:\.0*|(\.\d*[1-9])0+)$/;function r(r){return r.indexOf(".")==-1?r:r.replace(e,"$1")}var t=/(?:\.0*|(\.\d*[1-9])0+)[Ee]/;var a=/(E[+-])(\d)$/;function n(e){if(e.indexOf("E")==-1)return e;return e.replace(t,"$1E").replace(a,"$10$2")}function i(e){var t=e<0?12:11;var a=r(e.toFixed(12));if(a.length<=t)return a;a=e.toPrecision(10);if(a.length<=t)return a;return e.toExponential(5)}function s(e){var t=r(e.toFixed(11));return t.length>(e<0?12:11)||t==="0"||t==="-0"?e.toPrecision(6):t}function l(e){var t=Math.floor(Math.log(Math.abs(e))*Math.LOG10E),a;if(t>=-4&&t<=-1)a=e.toPrecision(10+t);else if(Math.abs(t)<=9)a=i(e);else if(t===10)a=e.toFixed(10).substr(0,12);else a=s(e);return r(n(a.toUpperCase()))}return l}();e._general_num=_;function A(e,r){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):_(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return $(14,S(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}e._general=A;function T(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function F(e,r,t,n){var i="",s=0,l=0,o=t.y,c,f=0;switch(e){case 98:o=t.y+543;case 121:switch(r.length){case 1:;case 2:c=o%100;f=2;break;default:c=o%1e4;f=4;break;}break;case 109:switch(r.length){case 1:;case 2:c=t.m;f=r.length;break;case 3:return h[t.m-1][1];case 5:return h[t.m-1][0];default:return h[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:c=t.d;f=r.length;break;case 3:return u[t.q][0];default:return u[t.q][1];}break;case 104:switch(r.length){case 1:;case 2:c=1+(t.H+11)%12;f=r.length;break;default:throw"bad hour format: "+r;}break;case 72:switch(r.length){case 1:;case 2:c=t.H;f=r.length;break;default:throw"bad hour format: "+r;}break;case 77:switch(r.length){case 1:;case 2:c=t.M;f=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 a(t.S,r.length);if(n>=2)l=n===3?1e3:100;else l=n===1?10:1;s=Math.round(l*(t.S+t.u));if(s>=60*l)s=0;if(r==="s")return s===0?"0":""+s/l;i=a(s,2+n);if(r==="ss")return i.substr(0,2);return"."+i.substr(2,r.length-1);case 90:switch(r){case"[h]":;case"[hh]":c=t.D*24+t.H;break;case"[m]":;case"[mm]":c=(t.D*24+t.H)*60+t.M;break;case"[s]":;case"[ss]":c=((t.D*24+t.H)*60+t.M)*60+Math.round(t.S+t.u);break;default:throw"bad abstime format: "+r;}f=r.length===3?1:2;break;case 101:c=o;f=1;break;}var p=f>0?a(c,f):"";return p}function E(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 D=function W(){var e=/%/g;function s(r,a,n){var i=a.replace(e,""),s=a.length-i.length;return D(r,i,n*Math.pow(10,2*s))+t("%",s)}function l(e,r,t){var a=r.length-1;while(r.charCodeAt(a-1)===44)--a;return D(e,r.substr(0,a),t/Math.pow(10,3*(r.length-a)))}function o(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"-"+o(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 f=/# (\?+)( ?)\/( ?)(\d+)/;function u(e,r,i){var s=parseInt(e[4],10),l=Math.round(r*s),o=Math.floor(l/s);var c=l-o*s,f=s;return i+(o===0?"":""+o)+" "+(c===0?t(" ",e[1].length+1+e[4].length):n(c,e[1].length)+e[2]+"/"+e[3]+a(f,e[4].length))}function h(e,r,a){return a+(r===0?"":""+r)+t(" ",e[1].length+2+e[4].length)}var p=/^#*0*\.([0#]+)/;var d=/\).*[0#]/;var m=/\(###\) ###\\?-####/;function v(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 g(e,r){var t=Math.pow(10,r);return""+Math.round(e*t)/t}function w(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 k(e,r){if(r<(""+Math.round((e-Math.floor(e))*Math.pow(10,r))).length){return 1}return 0}function y(e){if(e<2147483647&&e>-2147483648)return""+(e>=0?e|0:e-1|0);return""+Math.floor(e)}function x(e,h,S){if(e.charCodeAt(0)===40&&!h.match(d)){var C=h.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(S>=0)return x("n",C,S);return"("+x("n",C,-S)+")"}if(h.charCodeAt(h.length-1)===44)return l(e,h,S);if(h.indexOf("%")!==-1)return s(e,h,S);if(h.indexOf("E")!==-1)return o(h,S);if(h.charCodeAt(0)===36)return"$"+x(e,h.substr(h.charAt(1)==" "?2:1),S);var _;var A,T,F,O=Math.abs(S),M=S<0?"-":"";if(h.match(/^00+$/))return M+c(O,h.length);if(h.match(/^[#?]+$/)){_=c(S,0);if(_==="0")_="";return _.length>h.length?_:v(h.substr(0,h.length-_.length))+_}if(A=h.match(f))return u(A,O,M);if(h.match(/^#+0+$/))return M+c(O,h.length-h.indexOf("0"));if(A=h.match(p)){_=g(S,A[1].length).replace(/^([^\.]+)$/,"$1."+v(A[1])).replace(/\.$/,"."+v(A[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+t("0",v(A[1]).length-r.length)});return h.indexOf("0.")!==-1?_:_.replace(/^0\./,".")}h=h.replace(/^#+([0.])/,"$1");if(A=h.match(/^(0*)\.(#*)$/)){return M+g(O,A[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,A[1].length?"0.":".")}if(A=h.match(/^#{1,3},##0(\.?)$/))return M+E(c(O,0));if(A=h.match(/^#,##0\.([#0]*0)$/)){return S<0?"-"+x(e,h,-S):E(""+(Math.floor(S)+k(S,A[1].length)))+"."+a(w(S,A[1].length),A[1].length)}if(A=h.match(/^#,#*,#0/))return x(e,h.replace(/^#,#*,/,""),S);if(A=h.match(/^([0#]+)(\\?-([0#]+))+$/)){_=r(x(e,h.replace(/[\\-]/g,""),S));T=0;return r(r(h.replace(/\\/g,"")).replace(/[0#]/g,function(e){return T<_.length?_.charAt(T++):e==="0"?"0":""}))}if(h.match(m)){_=x(e,"##########",S);return"("+_.substr(0,3)+") "+_.substr(3,3)+"-"+_.substr(6)}var N="";if(A=h.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/)){T=Math.min(A[4].length,7);F=b(O,Math.pow(10,T)-1,false);_=""+M;N=D("n",A[1],F[1]);if(N.charAt(N.length-1)==" ")N=N.substr(0,N.length-1)+"0";_+=N+A[2]+"/"+A[3];N=i(F[2],T);if(N.length=0)return A("n",o,l);return"("+A("n",o,-l)+")"}if(s.charCodeAt(s.length-1)===44)return S(e,s,l);if(s.indexOf("%")!==-1)return C(e,s,l);if(s.indexOf("E")!==-1)return _(s,l);if(s.charCodeAt(0)===36)return"$"+A(e,s.substr(s.charAt(1)==" "?2:1),l);var c;var u,g,w,k=Math.abs(l),y=l<0?"-":"";if(s.match(/^00+$/))return y+a(k,s.length);if(s.match(/^[#?]+$/)){c=""+l;if(l===0)c="";return c.length>s.length?c:v(s.substr(0,s.length-c.length))+c}if(u=s.match(f))return h(u,k,y);if(s.match(/^#+0+$/))return y+a(k,s.length-s.indexOf("0"));if(u=s.match(p)){c=(""+l).replace(/^([^\.]+)$/,"$1."+v(u[1])).replace(/\.$/,"."+v(u[1]));c=c.replace(/\.(\d*)$/,function(e,r){return"."+r+t("0",v(u[1]).length-r.length)});return s.indexOf("0.")!==-1?c:c.replace(/^0\./,".")}s=s.replace(/^#+([0.])/,"$1");if(u=s.match(/^(0*)\.(#*)$/)){return y+(""+k).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,u[1].length?"0.":".")}if(u=s.match(/^#{1,3},##0(\.?)$/))return y+E(""+k);if(u=s.match(/^#,##0\.([#0]*0)$/)){return l<0?"-"+A(e,s,-l):E(""+l)+"."+t("0",u[1].length)}if(u=s.match(/^#,#*,#0/))return A(e,s.replace(/^#,#*,/,""),l);if(u=s.match(/^([0#]+)(\\?-([0#]+))+$/)){c=r(A(e,s.replace(/[\\-]/g,""),l));g=0;return r(r(s.replace(/\\/g,"")).replace(/[0#]/g,function(e){return g-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}e.is_date=N;function P(e,r,t,a){var n=[],i="",s=0,l="",o="t",c,u,h;var p="H";while(s=12?"P":"A";v.t="T";p="h";s+=3}else if(e.substr(s,5).toUpperCase()==="AM/PM"){if(c!=null)v.v=c.H>=12?"PM":"AM";v.t="T";s+=5;p="h"}else if(e.substr(s,5).toUpperCase()==="上午/下午"){if(c!=null)v.v=c.H>=12?"下午":"上午";v.t="T";s+=5;p="h"}else{v.t="t";++s}if(c==null&&v.t==="T")return"";n[n.length]=v;o=l;break;case"[":i=l;while(e.charAt(s++)!=="]"&&s-1){i=(i.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!N(e))n[n.length]={t:"t",v:i}}break;case".":if(c!=null){i=l;while(++s-1)i+=l;n[n.length]={t:"n",v:i};break;case"?":i=l;while(e.charAt(++s)===l)i+=l;n[n.length]={t:l,v:i};o=l;break;case"*":++s;if(e.charAt(s)==" "||e.charAt(s)=="*")++s;break;case"(":;case")":n[n.length]={t:a===1?"t":l,v:l};++s;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":i=l;while(s-1)i+=e.charAt(s);n[n.length]={t:"D",v:i};break;case" ":n[n.length]={t:l,v:l};++s;break;case"$":n[n.length]={t:"t",v:"$"};++s;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxzP".indexOf(l)===-1)throw new Error("unrecognized character "+l+" in "+e);n[n.length]={t:"t",v:l};++s;break;}}var g=0,b=0,k;for(s=n.length-1,o="t";s>=0;--s){switch(n[s].t){case"h":;case"H":n[s].t=p;o="h";if(g<1)g=1;break;case"s":if(k=n[s].v.match(/\.0+$/))b=Math.max(b,k[0].length-1);if(g<3)g=3;case"d":;case"y":;case"M":;case"e":o=n[s].t;break;case"m":if(o==="s"){n[s].t="M";if(g<2)g=2}break;case"X":break;case"Z":if(g<1&&n[s].v.match(/[Hh]/))g=1;if(g<2&&n[s].v.match(/[Mm]/))g=2;if(g<3&&n[s].v.match(/[Ss]/))g=3;}}switch(g){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 y="",x;for(s=0;s0){if(y.charCodeAt(0)==40){C=r<0&&y.charCodeAt(0)===45?-r:r;_=D("n",y,C)}else{C=r<0&&a>1?-r:r;_=D("n",y,C);if(C<0&&n[0]&&n[0].t=="t"){_=_.substr(1);n[0].v="-"+n[0].v}}x=_.length-1;var T=n.length;for(s=0;s-1){T=s;break}var E=n.length;if(T===n.length&&_.indexOf("E")===-1){for(s=n.length-1;s>=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;if(x>=n[s].v.length-1){x-=n[s].v.length;n[s].v=_.substr(x+1,n[s].v.length)}else if(x<0)n[s].v="";else{n[s].v=_.substr(0,x+1);x=-1}n[s].t="t";E=s}if(x>=0&&E=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;u=n[s].v.indexOf(".")>-1&&s===T?n[s].v.indexOf(".")-1:n[s].v.length-1;S=n[s].v.substr(u+1);for(;u>=0;--u){if(x>=0&&(n[s].v.charAt(u)==="0"||n[s].v.charAt(u)==="#"))S=_.charAt(x--)+S}n[s].v=S;n[s].t="t";E=s}if(x>=0&&E-1&&s===T?n[s].v.indexOf(".")+1:0;S=n[s].v.substr(0,u);for(;u-1){C=a>1&&r<0&&s>0&&n[s-1].v==="-"?-r:r;n[s].v=D(n[s].t,n[s].v,C);n[s].t="t"}var O="";for(s=0;s!==n.length;++s)if(n[s]!=null)O+=n[s].v;return O}e._eval=P;var I=/\[[=<>]/;var R=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function L(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 B(e,r){var t=O(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(I)!=null||t[1].match(I)!=null){var s=t[0].match(R);var l=t[1].match(R);return L(r,s)?[a,t[0]]:L(r,l)?[a,t[1]]:[a,t[s!=null&&l!=null?2:1]]}return[a,i]}function $(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:d)[e];if(a==null)a=t.table&&t.table[m[e]]||d[m[e]];if(a==null)a=g[e]||"General";break;}if(f(a,0))return A(r,t);if(r instanceof Date)r=S(r,t.date1904);var n=B(a,r);if(f(n[1]))return A(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return P(n[1],r,t,n[0])}function z(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(d[t]==undefined){if(r<0)r=t;continue}if(d[t]==e){r=t;break}}if(r<0)r=391}d[r]=e;return r}e.load=z;e._table=d;e.get_table=function j(){return d};e.load_table=function H(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)z(e[r],r)};e.init_table=p;e.format=$}P(N);var I={"General Number":"General","General Date":N._table[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":N._table[15],"Short Date":N._table[14],"Long Time":N._table[19],"Medium Time":N._table[18],"Short Time":N._table[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:N._table[2],Standard:N._table[4],Percent:N._table[10],Scientific:N._table[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var R={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 L=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function B(e){var r=typeof e=="number"?N._table[e]:e;r=r.replace(L,"(\\d+)");return new RegExp("^"+r+"$")}function z(e,r,t){var a=-1,n=-1,i=-1,s=-1,l=-1,o=-1;(r.match(L)||[]).forEach(function(e,r){var c=parseInt(t[r+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=c;break;case"d":i=c;break;case"h":s=c;break;case"s":o=c;break;case"m":if(s>=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"+(i>=1?i:1)).slice(-2);if(c.length==7)c="0"+c;if(c.length==8)c="20"+c;var f=("00"+(s>=0?s:0)).slice(-2)+":"+("00"+(l>=0?l:0)).slice(-2)+":"+("00"+(o>=0?o:0)).slice(-2);if(s==-1&&l==-1&&o==-1)return c;if(a==-1&&n==-1&&i==-1)return f;return c+"T"+f}var U=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],l=n[2],o=n[3],c=n[4];var f=n[5],u=n[6],h=n[7],p=n[8],d=n[9];var m=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,i=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]^m[e[k++]]^d[e[k++]]^p[e[k++]]^h[e[k++]]^u[e[k++]]^f[e[k++]]^c[e[k++]]^o[e[k++]]^l[e[k++]]^s[e[k++]]^i[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,i=e.length,s=0,l=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;l=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|l>>6&15|(s&3)<<4))&255];a=a>>>8^t[(a^(128|l&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=y;e.str=x;return e}();var W=function co(){var e={};e.version="1.2.1";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 l=r&63;r>>>=6;a.setHours(r);a.setMinutes(l);a.setSeconds(s<<1);return a}function s(e){Qr(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;}e.l=i;r[a]=s}return r}var l;function o(){return l||(l=undefined)}function c(e,r){if(e[0]==80&&e[1]==75)return Me(e,r);if((e[0]|32)==109&&(e[1]|32)==105)return Ue(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 l=0;var o=0;var c=[];var d=e.slice(0,512);Qr(d,0);var v=f(d);t=v[0];switch(t){case 3:a=512;break;case 4:a=4096;break;case 0:if(v[1]==0)return Me(e,r);default:throw new Error("Major Version: Expected 3 or 4 saw "+t);}if(a!==512){d=e.slice(0,a);Qr(d,28)}var g=e.slice(0,a);u(d,t);var b=d._R(4,"i");if(t===3&&b!==0)throw new Error("# Directory Sectors: Expected 0 saw "+b);d.l+=4;s=d._R(4,"i");d.l+=4;d.chk("00100000","Mini Stream Cutoff Size: ");l=d._R(4,"i");n=d._R(4,"i");o=d._R(4,"i");i=d._R(4,"i");for(var w=-1,x=0;x<109;++x){w=d._R(4,"i");if(w<0)break;c[x]=w}var S=h(e,a);m(o,i,S,a,c);var C=k(S,s,c,a);C[s].name="!Directory";if(n>0&&l!==L)C[l].name="!MiniFAT";C[c[0]].name="!FAT";C.fat_addrs=c;C.ssz=a;var _={},A=[],T=[],F=[];y(s,C,S,A,n,_,T,l);p(T,F,A);A.shift();var E={FileIndex:T,FullPaths:F};if(r&&r.raw)E.raw={header:g,sectors:S};return E}function f(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*R,s*R+R));n-=R;s=Vr(t,s*4)}if(i.length===0)return rt(0);return D(i).slice(0,e.size)}function m(e,r,t,a,n){var i=L;if(e===L){if(r!==0)throw new Error("DIFAT chain shorter than expected")}else if(e!==-1){var s=t[e],l=(a>>>2)-1;if(!s)return;for(var o=0;o=0;){n[o]=true;i[i.length]=o;s.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=Vr(e[f],c)}return{nodes:i,data:wr([s])}}function k(e,r,t,a){var n=e.length,i=[];var s=[],l=[],o=[];var c=a-1,f=0,u=0,h=0,p=0;for(f=0;f=n)h-=n;if(s[h])continue;o=[];var d=[];for(u=h;u>=0;){d[u]=true;s[u]=true;l[l.length]=u;o.push(e[u]);var m=t[Math.floor(u*4/a)];p=u*4&c;if(a<4+p)throw new Error("FAT boundary crossed: "+u+" 4 "+a);if(!e[m])break;u=Vr(e[m],p);if(d[u])break}i[h]={nodes:l,data:wr([o])}}return i}function y(e,r,t,a,n,i,s,l){var o=0,c=a.length?2:0;var f=r[e].data;var u=0,h=0,p;for(;u0&&o!==L)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!==L&&g.start!==L&&r[o]){g.content=d(g,r[o].data,(r[l]||{}).data)}}if(g.content)Qr(g.content,0);i[p]=g;s.push(g)}}function _(e,r){return new Date((Hr(e,r+4)/1e7*Math.pow(2,32)+Hr(e,r)/1e7-11644473600)*1e3)}function A(e,r){o();return c(l.readFileSync(e),r)}function T(e,r){var t=r&&r.type;if(!t){if(b&&Buffer.isBuffer(e))t="buffer"}switch(t||"base64"){case"file":return A(e,r);case"base64":return c(C(g.decode(e)),r);case"binary":return c(C(e),r);}return c(e,r)}function F(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;E(e)}function E(e){var r="Sh33tJ5";if(W.find(e,"/"+r))return;var t=rt(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){F(e);var i=false,s=false;for(var l=e.FullPaths.length-1;l>=0;--l){var o=e.FileIndex[l];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 c=new Date(1987,1,19),f=0;var u=Object.create?Object.create(null):{};var h=[];for(l=0;l1?1:-1;d.size=0;d.type=5}else if(m.slice(-1)=="/"){for(f=l+1;f=h.length?-1:f;for(f=l+1;f=h.length?-1:f;d.type=1}else{if(t(e.FullPaths[l+1]||"")==t(m))d.R=l+1;d.type=2}}}function P(e,r){var t=r||{};if(t.fileType=="mad")return We(e,t);N(e);switch(t.fileType){case"zip":return Pe(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 l=r+7>>3;var o=r+127>>7;var c=l+t+s+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,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=rt(a[7]<<9);var i=0,s=0;{for(i=0;i<8;++i)n._W(1,$[i]);for(i=0;i<8;++i)n._W(2,0);n._W(2,62);n._W(2,3);n._W(2,65534);n._W(2,9);n._W(2,6);for(i=0;i<3;++i)n._W(2,0);n._W(4,0);n._W(4,a[2]);n._W(4,a[0]+a[1]+a[2]+a[3]-1);n._W(4,0);n._W(4,1<<12);n._W(4,a[3]?a[0]+a[1]+a[2]-1:L);n._W(4,a[3]);n._W(-4,a[1]?a[0]-1:L);n._W(4,a[1]);for(i=0;i<109;++i)n._W(-4,i>9)}l(a[6]+7>>3);while(n.l&511)n._W(-4,j.ENDOFCHAIN);s=i=0;for(o=0;o=4096)continue;f.start=s;l(c+63>>6)}while(n.l&511)n._W(-4,j.ENDOFCHAIN);for(i=0;i=4096){n.l=f.start+1<<9;if(b&&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(b&&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 re=typeof Uint8Array!=="undefined";var te=re?new Uint8Array(1<<8):[];for(var ae=0;ae<1<<8;++ae)te[ae]=ee(ae);function ne(e,r){var t=te[e&255];if(r<=8)return t>>>8-r;t=t<<8|te[e>>8&255];if(r<=16)return t>>>16-r;t=t<<8|te[e>>16&255];return t>>>24-r}function ie(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 le(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=4?0:e[a+1]<<8))>>>t&15}function oe(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=3?0:e[a+1]<<8))>>>t&31}function ce(e,r){var t=r&7,a=r>>>3;return(e[a]|(t<=1?0:e[a+1]<<8))>>>t&127}function fe(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 ue(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 me(e,r){var t=e.length,a=2*t>r?2*t:r+5,n=0;if(t>=r)return e;if(b){var i=S(a);if(e.copy)e.copy(i);else for(;n>a-u;for(s=(1<=0;--s)r[l|s<0)r[r.l++]=e[t++]}return r.l}function i(r,t){var n=0;var i=0;var s=re?new Uint16Array(32768):[];while(i0)t[t.l++]=r[i++];n=t.l*8;continue}n=ue(t,n,+!!(i+l==r.length)+2);var o=0;while(l-- >0){var c=r[i];o=(o<<5^c)&32767;var f=-1,u=0;if(f=s[o]){f|=i&~32767;if(f>i)f-=32768;if(f2){c=a[u];if(c<=22)n=pe(t,n,te[c+1]>>1)-1;else{pe(t,n,3);n+=5;pe(t,n,te[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[i-f];n=pe(t,n,te[c]>>3);n-=3;var p=c<4?0:c-2>>1;if(p>0){de(t,n,i-f-Q[c]);n+=p}for(var d=0;d>8-d;for(var m=(1<<7-d)-1;m>=0;--m)_e[p|m<>>=3){case 16:i=3+ie(e,r);r+=2;p=v[v.length-1];while(i-- >0)v.push(p);break;case 17:i=3+se(e,r);r+=3;while(i-- >0)v.push(0);break;case 18:i=11+ce(e,r);r+=7;while(i-- >0)v.push(0);break;default:v.push(p);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&&s0){n[i++]=e[t>>>3];t+=8}}continue}else if(a>>1==1){l=9;o=5}else{t=Fe(e,t);l=Ae;o=Te}for(;;){if(!r&&s>>1==1?be[f]:Se[f];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 p=i+Z[u];if(h>0){p+=fe(e,t,h);t+=h}f=fe(e,t,o);u=a>>>1==1?we[f]:Ce[f];t+=u&15;u>>>=4;var d=u<4?0:u-2>>1;var m=Q[u];if(d>0){m+=fe(e,t,d);t+=d}if(!r&&s>>3];return[n.slice(0,i),t+7>>>3]}function De(e,r){var t=e.slice(e.l||0);var a=Ee(t,r);e.l+=a[1];return a[0]}function Oe(e,r){if(e){if(typeof console!=="undefined")console.error(r)}else throw new Error(r)}function Me(e,r){var t=e;Qr(t,0);var a=[],n=[];var i={FileIndex:a,FullPaths:n};F(i,{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(i.slice(0,t.length)==t)break}}var s=(a[1]||"").match(/boundary="(.*?)"/);if(!s)throw new Error("MAD cannot find boundary");var l="--"+(s[1]||"");var o=[],c=[];var f={FileIndex:o,FullPaths:c};F(f);var u,h=0;for(n=0;n=32&&p<128)++u;var m=u>=h*4/5;n.push(a);n.push("Content-Location: "+(t.root||"file:///C:/SheetJS/")+s);n.push("Content-Transfer-Encoding: "+(m?"quoted-printable":"base64"));n.push("Content-Type: "+Re(l,s));n.push("");n.push(m?Be(f):Le(f))}n.push(a+"--\r\n");return n.join("\r\n")}function je(e){var r={};F(r,e);return r}function He(e,r,t,n){var i=n&&n.unsafe;if(!i)F(e);var s=!i&&W.find(e,r);if(!s){var l=e.FullPaths[0];if(r.slice(0,l.length)==l)l=r;else{if(l.slice(-1)!="/")l+="/";l=(l+r).replace("//","/")}s={name:a(r),type:2};e.FileIndex.push(s);e.FullPaths.push(l);if(!i)W.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 Ve(e,r){F(e);var t=W.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 ie=new Date("2017-02-19T19:06:09.000Z");if(isNaN(ie.getFullYear()))ie=new Date("2/19/17");var se=ie.getFullYear()==2017;function le(e,r){var t=new Date(e);if(se){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(ie.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 oe(e,r){if(b&&Buffer.isBuffer(e)){ -if(r){if(e[0]==255&&e[1]==254)return e.slice(2).toString("utf16le");if(e[1]==254&&e[2]==255)return u(e.slice(2).toString("binary"))}return e.toString("binary")}var t=[];for(var a=0;a!=e.length;++a)t.push(String.fromCharCode(e[a]));return t.join("")}function ce(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]=ce(e[t]);return r}function fe(e,r){var t="";while(t.length3&&he.indexOf(s)==-1)return t}else if(s.match(/[a-z]/))return t;if(a<0||a>8099)return t;if((n>0||i>1)&&a!=101)return r;if(e.match(/[^-0-9:,\/\\]/))return t;return r}var de="abacaba".split(/(:?b)/i).length==5;function me(e,r,t){if(de||typeof r=="string")return e.split(r);var a=e.split(r),n=[a[0]];for(var i=1;i\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g;var Oe=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm;if(!Ee.match(Oe))Oe=/<[^>]*>/g;var Me=/<\w*:/,Ne=/<(\/?)\w+:/;function Pe(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(De),l=0,o="",c=0,f="",u="",h=1;if(s)for(c=0;c!=s.length;++c){u=s[c];for(i=0;i!=u.length;++i)if(u.charCodeAt(i)===61)break;f=u.slice(0,i).trim();while(u.charCodeAt(i+1)==32)++i;h=(n=u.charCodeAt(i+1))==34||n==39?1:0;o=u.slice(i+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 p=(l===5&&f.slice(0,5)==="xmlns"?"xmlns":"")+f.slice(l+1);if(a[p]&&f.slice(l-3,l)=="ext")continue;a[p]=o;if(!t)a[p.toLowerCase()]=o}}return a}function Ie(e){return e.replace(Ne,"<$1")}var Re={""":'"',"'":"'",">":">","<":"<","&":"&"};var Le=J(Re);var Be=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;return 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))}}();var $e=/[&<>'"]/g,ze=/[\u0000-\u0008\u000b-\u001f]/g;function Ue(e){var r=e+"";return r.replace($e,function(e){return Le[e]}).replace(ze,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function We(e){return Ue(e).replace(/ /g,"_x0020_")}var je=/[\u0000-\u001f]/g;function He(e){var r=e+"";return r.replace($e,function(e){return Le[e]}).replace(/\n/g,"
").replace(je,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function Ve(e){var r=e+"";return r.replace($e,function(e){return Le[e]}).replace(je,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var Xe=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 Ge(e){return e.replace(/(\r\n|[\r\n])/g," ")}function Ye(e){switch(e){case 1:;case true:;case"1":;case"true":;case"TRUE":return true;default:return false;}}var Je=function fo(e){var r="",t=0,a=0,n=0,i=0,s=0,l=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++);l=((a&7)<<18|(n&63)<<12|(i&63)<<6|s&63)-65536;r+=String.fromCharCode(55296+(l>>>10&1023));r+=String.fromCharCode(56320+(l&1023))}return r};var Ke=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("")};if(b){var qe=function uo(e){var r=Buffer.alloc(2*e.length),t,a,n=1,i=0,s=0,l;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")};var Ze="foo bar baz☃🍣";if(Je(Ze)==qe(Ze))Je=qe;var Qe=function ho(e){return w(e,"binary").toString("utf8")};if(Je(Ze)==Qe(Ze))Je=Qe;Ke=function(e){return w(e,"utf8").toString("binary")}}var er=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 rr=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 ar=/<\/?(?:vt:)?variant>/g,nr=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function or(e){return G(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function cr(e,r,t){return"<"+e+(t!=null?or(t):"")+(r!=null?(r.match(sr)?' xml:space="preserve"':"")+">"+r+""}function fr(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function ur(e,r){switch(typeof e){case"string":var t=cr("vt:lpwstr",Ue(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return cr((e|0)==e?"vt:i4":"vt:r8",Ue(String(e)));case"boolean":return cr("vt:bool",e?"true":"false");}if(e instanceof Date)return cr("vt:filetime",fr(e));throw new Error("Unable to serialize "+e)}function hr(e){if(b&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return Je(A(F(e)));throw new Error("Bad input format: expected Buffer or string")}var pr=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/][^>]*)?>/gm;var dr={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 mr=["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 vr={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 gr(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 br(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 wr=function(e){var r=[],t=10240;for(var a=0;a0?_r(e,r+4,r+4+t-1):""};var Fr=Tr;var Er=function(e,r){var t=Hr(e,r);return t>0?_r(e,r+4,r+4+t-1):""};var Dr=Er;var Or=function(e,r){var t=2*Hr(e,r);return t>0?_r(e,r+4,r+4+t-1):""};var Mr=Or;var Nr,Pr;Nr=Pr=function po(e,r){var t=Hr(e,r);return t>0?yr(e,r+4,r+4+t):""};var Ir=function(e,r){var t=Hr(e,r);return t>0?_r(e,r+4,r+4+t):""};var Rr=Ir;var Lr,Br;Lr=Br=function(e,r){return gr(e,r)};var $r=function mo(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(b){yr=function(e,r,t){if(!Buffer.isBuffer(e))return xr(e,r,t);return e.toString("utf16le",r,t).replace(O,"")};Sr=function(e,r,t){return Buffer.isBuffer(e)?e.toString("hex",r,r+t):Cr(e,r,t)};Tr=function vo(e,r){if(!Buffer.isBuffer(e))return Fr(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Er=function go(e,r){if(!Buffer.isBuffer(e))return Dr(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};Or=function bo(e,r){if(!Buffer.isBuffer(e))return Mr(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};Nr=function wo(e,r){if(!Buffer.isBuffer(e))return Pr(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};Ir=function ko(e,r){if(!Buffer.isBuffer(e))return Rr(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};_r=function yo(e,r,t){return Buffer.isBuffer(e)?e.toString("utf8",r,t):Ar(e,r,t)};wr=function(e){return e[0].length>0&&Buffer.isBuffer(e[0][0])?Buffer.concat(e[0].map(function(e){return Buffer.isBuffer(e)?e:w(e)})):kr(e)};D=function(e){return Buffer.concat(e.map(function(e){return Buffer.isBuffer(e)?e:w(e)}))};Lr=function xo(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return Br(e,r)};$r=function So(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function zr(){yr=function(e,r,t){return $cptable.utils.decode(1200,e.slice(r,t)).replace(O,"")};_r=function(e,r,t){return $cptable.utils.decode(65001,e.slice(r,t))};Tr=function(e,r){var a=Hr(e,r);return a>0?$cptable.utils.decode(t,e.slice(r+4,r+4+a-1)):""};Er=function(e,t){var a=Hr(e,t);return a>0?$cptable.utils.decode(r,e.slice(t+4,t+4+a-1)):""};Or=function(e,r){var t=2*Hr(e,r);return t>0?$cptable.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};Nr=function(e,r){var t=Hr(e,r);return t>0?$cptable.utils.decode(1200,e.slice(r+4,r+4+t)):""};Ir=function(e,r){var t=Hr(e,r);return t>0?$cptable.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof $cptable!=="undefined")zr();var Ur=function(e,r){return e[r]};var Wr=function(e,r){return e[r+1]*(1<<8)+e[r]};var jr=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var Hr=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var Vr=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var Xr=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function Gr(e,t){var a="",n,i,s=[],l,o,c,f;switch(t){case"dbcs":f=this.l;if(b&&Buffer.isBuffer(this))a=this.slice(this.l,this.l+2*e).toString("utf16le");else for(c=0;c0?Vr:Xr)(this,this.l);this.l+=4;return n}else{i=Hr(this,this.l);this.l+=4}return i;case 8:;case-8:if(t==="f"){if(e==8)i=Lr(this,this.l);else i=Lr([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:a=Sr(this,this.l,e);break;};}this.l+=e;return a}var Yr=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 Jr=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 Kr=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function qr(e,r,a){var n=0,i=0;if(a==="dbcs"){for(i=0;i!=r.length;++i)Kr(this,r.charCodeAt(i),this.l+2*i);n=2*r.length}else if(a==="sbcs"){if(typeof $cptable!=="undefined"&&t==874){for(i=0;i!=r.length;++i){var s=$cptable.utils.encode(t,r.charAt(i));this[this.l+i]=s[0]}}else{r=r.replace(/[^\x00-\x7F]/g,"_");for(i=0;i!=r.length;++i)this[this.l+i]=r.charCodeAt(i)&255}n=r.length}else if(a==="hex"){for(;i>8}while(this.l>>=8;this[this.l+1]=r&255;break;case 3:n=3;this[this.l]=r&255;r>>>=8;this[this.l+1]=r&255;r>>>=8;this[this.l+2]=r&255;break;case 4:n=4;Yr(this,r,this.l);break;case 8:n=8;if(a==="f"){br(this,r,this.l);break};case 16:break;case-4:n=4;Jr(this,r,this.l);break;}this.l+=n;return this}function Zr(e,r){var t=Sr(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function Qr(e,r){e.l=r;e._R=Gr;e.chk=Zr;e._W=qr}function et(e,r){e.l+=r}function rt(e){var r=x(e);Qr(r,0);return r}function tt(e,r,t){if(!e)return;var a,n,i;Qr(e,e.l||0);var s=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 i=function f(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 l=0;l!=4;++l){if(a>=128){s._W(1,(a&127)+128);a>>=7}else{s._W(1,a);break}}if(a>0&&$r(t))e.push(t)}function it(e,r,t){var a=ce(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 st(e,r,t){var a=ce(e);a.s=it(a.s,r.s,t);a.e=it(a.e,r.s,t);return a}function lt(e,r){if(e.cRel&&e.c<0){e=ce(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=ce(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=wt(e);if(!e.cRel&&e.cRel!=null)t=mt(t);if(!e.rRel&&e.rRel!=null)t=ut(t);return t}function ot(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?"":"$")+dt(e.s.c)+":"+(e.e.cRel?"":"$")+dt(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?"":"$")+ft(e.s.r)+":"+(e.e.rRel?"":"$")+ft(e.e.r)}}return lt(e.s,r.biff)+":"+lt(e.e,r.biff)}function ct(e){return parseInt(ht(e),10)-1}function ft(e){return""+(e+1)}function ut(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function ht(e){return e.replace(/\$(\d+)$/,"$1")}function pt(e){var r=vt(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function dt(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 mt(e){return e.replace(/^([A-Z])/,"$$$1")}function vt(e){return e.replace(/^\$([A-Z])/,"$1")}function gt(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function bt(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 wt(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 kt(e){var r=e.indexOf(":");if(r==-1)return{s:bt(e),e:bt(e)};return{s:bt(e.slice(0,r)),e:bt(e.slice(r+1))}}function yt(e,r){if(typeof r==="undefined"||typeof r==="number"){return yt(e.s,e.e)}if(typeof e!=="string")e=wt(e);if(typeof r!=="string")r=wt(r);return e==r?e:e+":"+r}function xt(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 St(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=N.format(e.z,t?Q(r):r)}catch(a){}try{return e.w=N.format((e.XF||{}).numFmtId||(t?14:0),t?Q(r):r)}catch(a){return""+r}}function Ct(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 Yt[e.v]||e.v;if(r==undefined)return St(e,e.v);return St(e,r)}function _t(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function At(e,r,t){var a=t||{};var n=e?Array.isArray(e):a.dense;if(m!=null&&n==null)n=m;var i=e||(n?[]:{});var s=0,l=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var o=typeof a.origin=="string"?bt(a.origin):a.origin;s=o.r;l=o.c}if(!i["!ref"])i["!ref"]="A1:A1"}var c={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(i["!ref"]){var f=xt(i["!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(s==-1)c.e.r=s=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 p={v:r[u][h]};var d=s+u,v=l+h;if(c.s.r>d)c.s.r=d;if(c.s.c>v)c.s.c=v;if(c.e.r>16&255,e>>8&255,e&255]})}var Xt=Vt([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,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var Gt=ce(Xt);var Yt={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var Jt=K(Yt);var Kt={"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 qt={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 Zt(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function Qt(e){var r=Zt();if(!e||!e.match)return r;var t={};(e.match(Oe)||[]).forEach(function(e){var a=Pe(e);switch(a[0].replace(Me,"<")){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}var ea=cr("Types",null,{xmlns:dr.CT,"xmlns:xsd":dr.xsd,"xmlns:xsi":dr.xsi});function ra(e,r){var t=q(Kt);var a=[],n;a[a.length]=Ee;a[a.length]=ea;a=a.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 cr("Default",null,{Extension:e[0],ContentType:e[1]})}));var i=function(t){if(e[t]&&e[t].length>0){n=e[t][0];a[a.length]=cr("Override",null,{PartName:(n[0]=="/"?"":"/")+n,ContentType:qt[t][r.bookType]||qt[t]["xlsx"]})}};var s=function(t){(e[t]||[]).forEach(function(e){a[a.length]=cr("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:qt[t][r.bookType]||qt[t]["xlsx"]})})};var l=function(r){(e[r]||[]).forEach(function(e){a[a.length]=cr("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:t[r][0]})})};i("workbooks");s("sheets");s("charts");l("themes");["strs","styles"].forEach(i);["coreprops","extprops","custprops"].forEach(l);l("vba");l("comments");l("threadedcomments");l("drawings");s("metadata");l("people");if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var ta={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",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function aa(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function na(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(Oe)||[]).forEach(function(e){var n=Pe(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var la=[ta.HLINK,ta.XPATH,ta.XMISS];function oa(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(la.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 ca="application/vnd.oasis.opendocument.spreadsheet";function fa(e,r){var t=hr(e);var a;var n;while(a=pr.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=Pe(a[0],false);if(n.path=="/"&&n.type!==ca)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 ua(e){var r=[Ee];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function ha(e,r,t){return[' \n',' \n'," \n"].join("")}function pa(e,r){return[' \n',' \n'," \n"].join("")}function da(e){var r=[Ee];r.push('\n');for(var t=0;t!=e.length;++t){r.push(ha(e[t][0],e[t][1]));r.push(pa("",e[t][0]))}r.push(ha("","Document","pkg"));r.push("");return r.join("")}function ma(){return'Sheet'+"JS "+e.version+""}var va=[["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 ga=function(){var e=new Array(va.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function ba(e){var r={};e=Je(e);for(var t=0;t0)r[a[1]]=Be(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=le(r[a[1]])}return r}function wa(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=Ue(r);a[a.length]=t?cr(e,r,t):lr(e,r)}function ka(e,r){var t=r||{};var a=[Ee,cr("cp:coreProperties",null,{"xmlns:cp":dr.CORE_PROPS,"xmlns:dc":dr.dc,"xmlns:dcterms":dr.dcterms,"xmlns:dcmitype":dr.dcmitype,"xmlns:xsi":dr.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)wa("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:fr(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)wa("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:fr(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var i=0;i!=va.length;++i){var s=va[i];var l=t.Props&&t.Props[s[1]]!=null?t.Props[s[1]]:e?e[s[1]]:null;if(l===true)l="1";else if(l===false)l="0";else if(typeof l=="number")l=String(l);if(l!=null)wa(s[0],l,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var ya=[["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 xa=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function Sa(e,r,t,a){var n=[];if(typeof e=="string")n=ir(e,a);else for(var i=0;i0)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=s.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=s.slice(l,l+o);break;case"Charts":;case"Diagramme":t.Chartsheets=o;t.ChartNames=s.slice(l,l+o);break;}l+=o}}function Ca(e,r,t){var a={};if(!r)r={};e=Je(e);ya.forEach(function(t){var n=(e.match(er(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=Be(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)Sa(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function _a(e){var r=[],t=cr;if(!e)e={};e.Application="SheetJS";r[r.length]=Ee;r[r.length]=cr("Properties",null,{xmlns:dr.EXT_PROPS,"xmlns:vt":dr.vt});ya.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=Ue(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""+Ue(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Aa=/<[^>]+>[^<]*/g;function Ta(e,r){var t={},a="";var n=e.match(Aa);if(n)for(var i=0;i!=n.length;++i){var s=n[i],l=Pe(s);switch(l[0]){case"":a=null;break;default:if(s.indexOf("");var c=o[0].slice(4),f=o[1];switch(c){case"lpstr":;case"bstr":;case"lpwstr":t[a]=Be(f);break;case"bool":t[a]=Ye(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]=le(f);break;case"cy":;case"error":t[a]=Be(f);break;default:if(c.slice(-1)=="/")break;if(r.WTF&&typeof console!=="undefined")console.warn("Unexpected",s,c,o);}}else if(s.slice(0,2)==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Ea=[2,3,48,49,131,139,140,245];var Da=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 r=J({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 a(r,t){var a=[];var n=x(1);switch(t.type){case"base64":n=C(g.decode(r));break;case"binary":n=C(r);break;case"buffer":;case"array":n=r;break;}Qr(n,0);var i=n._R(1);var s=!!(i&136);var l=false,o=false;switch(i){case 2:break;case 3:break;case 48:l=true;s=true;break;case 49:l=true;s=true;break;case 131:break;case 139:break;case 140:o=true;break;case 245:break;default:throw new Error("DBF Unsupported Version: "+i.toString(16));}var c=0,f=521;if(i==2)c=n._R(2);n.l+=3;if(i!=2)c=n._R(4);if(c>1048576)c=1e6;if(i!=2)f=n._R(2);var u=n._R(2);var h=t.codepage||1252;if(i!=2){n.l+=16;n._R(1);if(n[n.l]!==0)h=e[n[n.l]];n.l+=1;n.l+=2}if(o)n.l+=36;var p=[],d={};var m=Math.min(n.length,i==2?521:f-10-(l?264:0));var v=o?32:11;while(n.l0){if(n[n.l]===42){n.l+=u;continue}++n.l;a[++b]=[];w=0;for(w=0;w!=p.length;++w){var k=n.slice(n.l,n.l+p[w].len);n.l+=p[w].len;Qr(k,0);var y=$cptable.utils.decode(h,k);switch(p[w].type){case"C":if(y.trim().length)a[b][w]=y.replace(/\s+$/,"");break;case"D":if(y.length===8)a[b][w]=new Date(+y.slice(0,4),+y.slice(4,6)-1,+y.slice(6,8));else a[b][w]=y;break;case"F":a[b][w]=parseFloat(y.trim());break;case"+":;case"I":a[b][w]=o?k._R(-4,"i")^2147483648:k._R(4,"i");break;case"L":switch(y.trim().toUpperCase()){case"Y":;case"T":a[b][w]=true;break;case"N":;case"F":a[b][w]=false;break;case"":;case"?":break;default:throw new Error("DBF Unrecognized L:|"+y+"|");}break;case"M":if(!s)throw new Error("DBF Unexpected MEMO for type "+i.toString(16));a[b][w]="##MEMO##"+(o?parseInt(y.trim(),10):k._R(4));break;case"N":y=y.replace(/\u0000/g,"").trim();if(y&&y!=".")a[b][w]=+y||0;break;case"@":a[b][w]=new Date(k._R(-8,"f")-621356832e5);break;case"T":a[b][w]=new Date((k._R(4)-2440588)*864e5+k._R(4));break;case"Y":a[b][w]=k._R(4,"i")/1e4+k._R(4,"i")/1e4*Math.pow(2,32);break;case"O":a[b][w]=-k._R(-8,"f");break;case"B":if(l&&p[w].len==8){a[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(i!=2)if(n.l=0)l(+n.codepage);if(n.type=="string")throw new Error("Cannot write DBF to JS string");var i=at();var o=zl(e,{header:1,raw:true,cellDates:true});var c=o[0],f=o.slice(1),u=e["!cols"]||[];var h=0,p=0,d=0,m=1;for(h=0;h250)x=250;y=((u[h]||{}).DBF||{}).type;if(y=="C"){if(u[h].DBF.len>x)x=u[h].DBF.len}if(k=="B"&&y=="N"){k="N";w[h]=u[h].DBF.dec;x=u[h].DBF.len}b[h]=k=="C"||y=="N"?x:s[k]||0;m+=b[h];g[h]=k}var C=i.next(32);C._W(4,318902576);C._W(4,f.length);C._W(2,296+32*d);C._W(2,m);for(h=0;h<4;++h)C._W(4,0);C._W(4,0|(+r[t]||3)<<8);for(h=0,p=0;h":190,"?":191,"{":223};var r=new RegExp("N("+G(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm");var t=function(r,t){var a=e[t];return typeof a=="number"?d(a):a};var a=function(e,r,t){var a=r.charCodeAt(0)-32<<4|t.charCodeAt(0)-48;return a==59?e:d(a)};e["|"]=254;function n(e,r){switch(r.type){case"base64":return i(g.decode(e),r);case"binary":return i(e,r);case"buffer":return i(b&&Buffer.isBuffer(e)?e.toString("binary"):A(e),r);case"array":return i(oe(e),r);}throw new Error("Unrecognized type "+r.type)}function i(e,n){var i=e.split(/[\n\r]+/),s=-1,o=-1,c=0,f=0,u=[];var h=[];var p=null;var d={},m=[],v=[],g=[];var b=0,w;if(+n.codepage>=0)l(+n.codepage);for(;c!==i.length;++c){b=0;var k=i[c].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,a).replace(r,t);var y=k.replace(/;;/g,"\0").split(";").map(function(e){return e.replace(/\u0000/g,";")});var x=y[0],S;if(k.length>0)switch(x){case"ID":break;case"E":break;case"B":break;case"O":break;case"W":break;case"P":if(y[1].charAt(0)=="P")h.push(k.slice(3).replace(/;;/g,";"));break;case"C":var C=false,_=false,A=false,T=false,F=-1,E=-1;for(f=1;f-1&&u[F][E];if(!O||!O[1])throw new Error("SYLK shared formula cannot find base");u[s][o][1]=ci(O[1],{r:s-F,c:o-E})}break;case"F":var M=0;for(f=1;f0){m[s].hpt=b;m[s].hpx=dn(b)}else if(b===0)m[s].hidden=true;break;default:if(n&&n.WTF)throw new Error("SYLK bad record "+k);}if(M<1)p=null;break;default:if(n&&n.WTF)throw new Error("SYLK bad record "+k);}}if(m.length>0)d["!rows"]=m;if(v.length>0)d["!cols"]=v;if(n&&n.sheetRows)u=u.slice(0,n.sheetRows);return[u,d]}function s(e,r){var t=n(e,r);var a=t[0],i=t[1];var s=Tt(a,r);G(i).forEach(function(e){s[e]=i[e]});return s}function o(e,r){return _t(s(e,r),r)}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"+oi(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=nn(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=sn(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*pn(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function h(e,r){var t=["ID;PWXL;N;E"],a=[];var n=xt(e["!ref"]),i;var s=Array.isArray(e);var l="\r\n";t.push("P;PGeneral");t.push("F;P0;DG0G8;M255");if(e["!cols"])f(t,e["!cols"]);if(e["!rows"])u(t,e["!rows"]);t.push("B;Y"+(n.e.r-n.s.r+1)+";X"+(n.e.c-n.s.c+1)+";D"+[n.s.c,n.s.r,n.e.c,n.e.r].join(" "));for(var o=n.s.r;o<=n.e.r;++o){for(var h=n.s.c;h<=n.e.c;++h){var p=wt({r:o,c:h});i=s?(e[o]||[])[h]:e[p];if(!i||i.v==null&&(!i.f||i.F))continue;a.push(c(i,e,o,h,r))}}return t.join(l)+l+a.join(l)+l+"E"+l}return{to_workbook:o,to_sheet:s,from_sheet:h}}();var Ma=function(){function e(e,t){switch(t.type){case"base64":return r(g.decode(e),t);case"binary":return r(e,t);case"buffer":return r(b&&Buffer.isBuffer(e)?e.toString("binary"):A(e),t);case"array":return r(oe(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 l=t[i].trim().split(",");var o=l[0],c=l[1];++i;var f=t[i]||"";while((f.match(/["]/g)||[]).length&1&&i=0&&i[s].length===0)--s;var l=10,o=0;var c=0;for(;c<=s;++c){o=i[c].indexOf(" ");if(o==-1)o=i[c].length;else o++;l=Math.max(l,o)}for(c=0;c<=s;++c){n[c]=[];var f=0;e(i[c].slice(0,l).trim(),n,c,f,a);for(f=1;f<=(i[c].length-l)/10+1;++f)e(i[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 a={44:3,9:2,59:1,124:0};function n(e){var r={},n=false,i=0,s=0;for(;i0)b();i["!ref"]=yt(s);return i}function s(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 Tt(r(e,t),t)}function l(e,r){var t="",a=r.type=="string"?[0,0,0,0]:ml(e,r);switch(r.type){case"base64":t=g.decode(e);break;case"binary":t=e;break;case"buffer":if(r.codepage==65001)t=e.toString("utf8");else if(r.codepage&&typeof $cptable!=="undefined")t=$cptable.utils.decode(r.codepage,e);else t=b&&Buffer.isBuffer(e)?e.toString("binary"):A(e);break;case"array":t=oe(e);break;case"string":t=e;break;default:throw new Error("Unrecognized type "+r.type);}if(a[0]==239&&a[1]==187&&a[2]==191)t=Je(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=Je(t);else if(r.type=="binary"&&typeof $cptable!=="undefined"&&r.codepage)t=$cptable.utils.decode(r.codepage,$cptable.utils.encode(28591,t));if(t.slice(0,19)=="socialcalc:version:")return Na.to_sheet(r.type=="string"?t:Je(t),r);return s(t,r)}function o(e,r){return _t(l(e,r),r)}function c(e){var r=[];var t=xt(e["!ref"]),a;var n=Array.isArray(e);for(var i=t.s.r;i<=t.e.r;++i){var s=[];for(var l=t.s.c;l<=t.e.c;++l){var o=wt({r:i,c:l});a=n?(e[i]||[])[l]:e[o];if(!a||a.v==null){s.push(" ");continue}var c=(a.w||(Ct(a),a.w)||"").slice(0,10);while(c.length<10)c+=" ";s.push(c+(l===0?" ":""))}r.push(s.join(""))}return r.join("\n")}return{to_workbook:o,to_sheet:l,from_sheet:c}}();function Ia(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=Oa.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 Pa.to_workbook(e,r)}}function Ra(e){var r={},t=e.match(Oe),a=0;var i=false;if(t)for(;a!=t.length;++a){var s=Pe(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"":i=false;break;default:if(s[0].charCodeAt(1)!==47&&!i)throw new Error("Unrecognized rich format "+s[0]);}}return r}var La=function(){var e=er("t"),r=er("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:Be(a[1])};var i=t.match(r);if(i)n.s=Ra(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 Ba=function Co(){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 $a=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,za=/<(?:\w+:)?r>/;var Ua=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function Wa(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=Be(Je(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""));a.r=Je(e);if(t)a.h=He(a.t)}else if(e.match(za)){a.r=Je(e);a.t=Be(Je((e.replace(Ua,"").match($a)||[]).join("").replace(Oe,"")));if(t)a.h=Ba(La(a.r))}return a}var ja=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var Ha=/<(?:\w+:)?(?:si|sstItem)>/g;var Va=/<\/(?:\w+:)?(?:si|sstItem)>/;function Xa(e,r){var t=[],a="";if(!e)return t;var n=e.match(ja);if(n){a=n[2].replace(Ha,"").split(Va);for(var i=0;i!=a.length;++i){var s=Wa(a[i].trim(),r);if(s!=null)t[t.length]=s}n=Pe(n[1]);t.Count=n.count;t.Unique=n.uniqueCount}return t}var Ga=/^\s|\s$|[\t\n\r]/;function Ya(e,r){if(!r.bookSST)return"";var t=[Ee];t[t.length]=cr("sst",null,{xmlns:mr[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 Ja(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 Ka(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 qa(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 l=0,o=0,c=n+i;o=s/(c>1?2-c:c);switch(n){case r:l=((t-a)/s+6)%6;break;case t:l=(a-r)/s+2;break;case a:l=(r-t)/s+4;break;}return[l/6,o,c/2]}function Za(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],l=6*r;var o;if(t!==0)switch(l|0){case 0:;case 6:o=n*l;s[0]+=n;s[1]+=o;break;case 1:o=n*(2-l);s[0]+=o;s[1]+=n;break;case 2:o=n*(l-2);s[1]+=n;s[2]+=o;break;case 3:o=n*(4-l);s[1]+=o;s[2]+=n;break;case 4:o=n*(l-4);s[2]+=n;s[0]+=o;break;case 5:o=n*(6-l);s[2]+=o;s[0]+=n;break;}for(var c=0;c!=3;++c)s[c]=Math.round(s[c]*255);return s}function Qa(e,r){if(r===0)return e;var t=qa(Ja(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return Ka(Za(t))}var en=6,rn=15,tn=1,an=en;function nn(e){return Math.floor((e+Math.round(128/an)/256)*an)}function sn(e){return Math.floor((e-5)/an*100+.5)/100}function ln(e){return Math.round((e*an+5)/an*256)/256}function on(e){return ln(sn(nn(e)))}function cn(e){var r=Math.abs(e-on(e)),t=an;if(r>.005)for(an=tn;an":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=Ye(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=Ye(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 gn(e,r,t,a){r.Fills=[];var n={};var i=false;(e[0].match(Oe)||[]).forEach(function(e){var t=Pe(e);switch(Ie(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 bn(e,r,t,a){r.Fonts=[];var i={};var s=false;(e[0].match(Oe)||[]).forEach(function(e){var l=Pe(e);switch(Ie(l[0])){case"":;case"":break;case"":break;case"
":;case"":r.Fonts.push(i);i={};break;case"":;case"":break;case"":i.bold=1;break;case"":i.italic=1;break;case"":i.underline=1;break;case"":i.strike=1;break;case"":i.outline=1;break;case"":i.shadow=1;break;case"":i.condense=1;break;case"":i.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 "+l[0]+" in fonts")};}})}function wn(e,r,t){r.NumberFmt=[];var a=G(N._table);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}N.load(l,o)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+s[0]+" in numFmts");}}}function kn(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]=cr("numFmt",null,{numFmtId:a,formatCode:Ue(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=cr("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var yn=["numFmtId","fillId","fontId","borderId","xfId"];var xn=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function Sn(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(Oe)||[]).forEach(function(e){var i=Pe(e),s=0;switch(Ie(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 l={};if(i.vertical)l.vertical=i.vertical;if(i.horizontal)l.horizontal=i.horizontal;if(i.textRotation!=null)l.textRotation=i.textRotation;if(i.indent)l.indent=i.indent;if(i.wrapText)l.wrapText=Ye(i.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 "+i[0]+" in cellXfs")};}})}function Cn(e){var r=[];r[r.length]=cr("cellXfs",null);e.forEach(function(e){r[r.length]=cr("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=cr("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var _n=function _o(){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,l,o){var c={};if(!s)return c;s=s.replace(//gm,"").replace(//gm,"");var f;if(f=s.match(e))wn(f,c,o);if(f=s.match(a))bn(f,c,l,o);if(f=s.match(t))gn(f,c,l,o);if(f=s.match(n))vn(f,c,l,o);if(f=s.match(r))Sn(f,c,o);return c}}();function An(e,r){var t=[Ee,cr("styleSheet",null,{xmlns:mr[0],"xmlns:vt":dr.vt})],a;if(e.SSF&&(a=kn(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=Cn(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 Tn=["","","","","","","","","","","",""];function Fn(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(Oe)||[]).forEach(function(e){var n=Pe(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[Tn.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 En(){}function Dn(){}var On=/]*)>[\s\S]*<\/a:clrScheme>/;var Mn=/]*)>[\s\S]*<\/a:fontScheme>/;var Nn=/]*)>[\s\S]*<\/a:fmtScheme>/;function Pn(e,r,t){r.themeElements={};var a;[["clrScheme",On,Fn],["fontScheme",Mn,En],["fmtScheme",Nn,Dn]].forEach(function(n){if(!(a=e.match(n[1])))throw new Error(n[0]+" not found in themeElements");n[2](a,r,t)})}var In=/]*)>[\s\S]*<\/a:themeElements>/;function Rn(e,r){if(!e||e.length===0)e=Ln();var t;var a={};if(!(t=e.match(In)))throw new Error("themeElements not found in theme");Pn(t[0],a,r);a.raw=e;return a}function Ln(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Ee];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";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 Bn(e,r,t){var a={Types:[],Cell:[],Value:[]};if(!e)return a;var n=false;var i=2;e.replace(Oe,function(e){var r=Pe(e);switch(Ie(r[0])){case"":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;default:if(!n&&t.WTF)throw new Error("unrecognized "+r[0]+" in metadata");}return e});return a}function $n(){var e=[Ee];e.push('\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n');return e.join("")}function zn(){}function Un(e,r,t,a){if(!e)return e;var n=a||{};var i=false,s=false;tt(e,function l(e,r,t){if(s)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:i=true;break;case 36:i=false;break;default:if(r.T){}else if(!i||n.WTF)throw new Error("Unexpected record 0x"+t.toString(16));}},n)}function Wn(e,r){if(!e)return"??";var t=(e.match(/]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}var jn=1024;function Hn(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[cr("xml",null,{"xmlns:v":vr.v,"xmlns:o":vr.o,"xmlns:x":vr.x,"xmlns:mv":vr.mv}).replace(/\/>/,">"),cr("o:shapelayout",cr("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"}),cr("v:shapetype",[cr("v:stroke",null,{joinstyle:"miter"}),cr("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202","o:spt":202,coordsize:t.join(","),path:a})];while(jn",i,cr("v:shadow",null,s),cr("v:path",null,{"o:connecttype":"none"}),'
','',"","",lr("x:Anchor",[r.c+1,0,r.r+1,0,r.c+3,20,r.r+5,20].join(",")),lr("x:AutoFill","False"),lr("x:Row",String(r.r)),lr("x:Column",String(r.c)),e[1].hidden?"":"","",""])});n.push("");return n.join("")}function Vn(e,r,t,a){var n=Array.isArray(e);var i;r.forEach(function(r){var s=bt(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 l=xt(e["!ref"]||"BDWGO1000001:A1");if(l.s.r>s.r)l.s.r=s.r;if(l.e.rs.c)l.s.c=s.c;if(l.e.c=0;--f){if(!t&&i.c[f].T)return;if(t&&!i.c[f].T)i.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 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=Pe(n[0]);var s={author:i.authorId&&t[i.authorId]||"sheetjsghost",ref:i.ref,guid:i.guid};var l=bt(i.ref);if(r.sheetRows&&r.sheetRows<=l.r)return;var o=e.match(/<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/);var c=!!o&&!!o[1]&&Wa(o[1])||{r:"",t:"",h:""};s.r=c.r;if(c.r=="")c.t=c.h="";s.t=(c.t||"").replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(r.cellHTML)s.h=c.h;a.push(s)});return a}function Gn(e){var r=[Ee,cr("comments",null,{xmlns:mr[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=Ue(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=[];if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);else e[1].forEach(function(e){if(e.a)a=t.indexOf(Ue(e.a));n.push(e.t||"")});r.push('');if(n.length<=1)r.push(lr("t",Ue(n[0]||"")));else{var i="Comment:\n "+n[0]+"\n";for(var s=1;s")});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Yn(e,r){var t=[];var a=false,n={},i=0;e.replace(Oe,function s(l,o){var c=Pe(l);switch(Ie(c[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 "+c[0]+" in threaded comments");}return l});return t}function Jn(e,r,t){var a=[Ee,cr("ThreadedComments",null,{xmlns:dr.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 l={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+t.tcid++).slice(-12)+"}"};if(s==0)n=l.id;else l.parentId=n;i.ID=l.id;if(i.a)l.personId="{54EE7950-7262-4200-6969-"+("000000000000"+r.indexOf(i.a)).slice(-12)+"}";a.push(cr("threadedComment",lr("text",i.t||""),l))})});a.push("");return a.join("")}function Kn(e,r){var t=[];var a=false;e.replace(Oe,function n(e){var n=Pe(e);switch(Ie(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 qn(e){var r=[Ee,cr("personList",null,{xmlns:dr.TCMNT,"xmlns:x":mr[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(cr("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}var Zn="application/vnd.ms-office.vbaProject";function Qn(e){var r=W.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*/,"");W.utils.cfb_add(r,n,e.FileIndex[a].content)});return W.write(r)}function ei(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")W.utils.cfb_add(e,n,r.FileIndex[a].content)})}var ri=["xlsb","xlsm","xlam","biff8","xla"];function ti(){return{"!type":"dialog"}}function ai(){return{"!type":"dialog"}}function ni(){return{"!type":"macro"}}function ii(){return{"!type":"macro"}}var si=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 l=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)l+=r.r;else--l;return t+(i?"":"$")+dt(o)+(s?"":"$")+ft(l)}return function a(n,i){r=i;return n.replace(e,t)}}();var li=/(^|[^._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 oi=function(){return function e(r,t){return r.replace(li,function(e,r,a,n,i,s){var l=pt(n)-(a?0:t.c);var o=ct(s)-(i?0:t.r);var c=o==0?"":!i?"["+o+"]":o+1;var f=l==0?"":!a?"["+l+"]":l+1;return r+"R"+c+"C"+f})}}();function ci(e,r){return e.replace(li,function(e,t,a,n,i,s){return t+(a=="$"?a+n:dt(pt(n)+r.c))+(i=="$"?i+s:ft(ct(s)+r.r))})}function fi(e,r,t){var a=kt(r),n=a.s,i=bt(t);var s={r:i.r-n.r,c:i.c-n.c};return ci(e,s)}function ui(e){if(e.length==1)return false;return true}function hi(e){return e.replace(/_xlfn\./g,"")}function pi(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(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function di(e){var r="of:="+e.replace(li,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function mi(e){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 vi(e){return e.replace(/\./,"!")}var gi={};var bi={};var wi=typeof Map!=="undefined";function ki(e,r,t){var a=0,n=e.length;if(t){if(wi?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var i=wi?t.get(r):t[r];for(;a-1){t.width=ln(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 xi(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 Si(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){N.load(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 Ci(e,r,t,a,n,i){try{if(a.cellNF)e.z=N._table[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=le(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(N._table[r]==null)N.load(R[r]||"General",r);if(e.t==="e")e.w=e.w||Yt[e.v];else if(r===0){if(e.t==="n"){if((e.v|0)===e.v)e.w=N._general_int(e.v);else e.w=N._general_num(e.v)}else if(e.t==="d"){var l=Q(e.v);if((l|0)===l)e.w=N._general_int(l);else e.w=N._general_num(l)}else if(e.v===undefined)return"";else e.w=N._general(e.v,bi)}else if(e.t==="d")e.w=N.format(r,Q(e.v),bi);else e.w=N.format(r,e.v,bi)}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=Qa(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=Qa(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 _i(e,r,t){if(e&&e["!ref"]){var a=xt(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=yt(t)}var Ti=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var Fi=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var Ei=/<(?:\w:)?hyperlink [^>]*>/gm;var Di=/"(\w*:\w*)"/;var Oi=/<(?:\w:)?col\b[^>]*[\/]?>/g;var Mi=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var Ni=/<(?:\w:)?pageMargins[^>]*\/>/g;var Pi=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var Ii=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var Ri=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function Li(e,r,t,a,n,i,s){if(!e)return e;if(!a)a={"!id":{}};if(m!=null&&r.dense==null)r.dense=m;var l=r.dense?[]:{};var o={s:{r:2e6,c:2e6},e:{r:0,c:0}};var c="",f="";var u=e.match(Fi);if(u){c=e.slice(0,u.index);f=e.slice(u.index+u[0].length)}else c=f=e;var h=c.match(Pi);if(h)$i(h[0],l,n,t);else if(h=c.match(Ii))zi(h[0],h[1]||"",l,n,t,s,i);var p=(c.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(p>0){var d=c.slice(p,p+50).match(Di);if(d)Ai(l,d[1])}var v=c.match(Ri);if(v&&v[1])Qi(v[1],n);var g=[];if(r.cellStyles){var b=c.match(Oi);if(b)Yi(g,b)}if(u)ts(u[1],l,r,o,i,s);var w=f.match(Mi);if(w)l["!autofilter"]=Ki(w[0]);var k=[];var y=f.match(Ti);if(y)for(p=0;p!=y.length;++p)k[p]=xt(y[p].slice(y[p].indexOf('"')+1));var x=f.match(Ei);if(x)Vi(l,x,a);var S=f.match(Ni);if(S)l["!margins"]=Xi(Pe(S[0]));if(!l["!ref"]&&o.e.c>=o.s.c&&o.e.r>=o.s.r)l["!ref"]=yt(o);if(r.sheetRows>0&&l["!ref"]){var C=xt(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"]=g;if(k.length>0)l["!merges"]=k;return l}function Bi(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function $i(e,r,t,a){var n=Pe(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=Be(Je(n.codeName))}function zi(e,r,t,a,n){$i(e.slice(0,e.indexOf(">")),t,a,n)}function Ui(e,r,t,a,n){var i=false;var s={},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){}i=true;s.codeName=Ke(Ue(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||"")+cr("outlinePr",null,f)}if(!i&&!l)return;n[n.length]=cr("sheetPr",l,s)}var Wi=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var ji=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function Hi(e){var r={sheet:1};Wi.forEach(function(t){if(e[t]!=null&&e[t])r[t]="1"});ji.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 cr("sheetProtection",null,r)}function Vi(e,r,t){var a=Array.isArray(e);for(var n=0;n!=r.length;++n){var i=Pe(Je(r[n]),true);if(!i.ref)return;var s=((t||{})["!id"]||[])[i.id];if(s){i.Target=s.Target;if(i.location)i.Target+="#"+Be(i.location)}else{i.Target="#"+Be(i.location);s={Target:i.Target,TargetMode:"Internal"}}i.Rel=s;if(i.tooltip){i.Tooltip=i.tooltip;delete i.tooltip}var l=xt(i.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=wt({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=i}else{if(!e[f])e[f]={t:"z",v:undefined};e[f].l=i}}}}function Xi(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function Gi(e){xi(e);return cr("pageMargins",null,e)}function Yi(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=Pe(r[a],true);if(n.hidden)n.hidden=Ye(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;cn(n.width)}fn(n);while(i<=s)e[i++]=ce(n)}}function Ji(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=cr("col",null,yi(n,a))}t[t.length]="";return t.join("")}function Ki(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function qi(e,r,t,a){var n=typeof e.ref=="string"?e.ref:yt(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var i=t.Workbook.Names;var s=kt(n);if(s.s.r==s.e.r){s.e.r=kt(r["!ref"]).e.r;n=yt(s)}for(var l=0;la-z][^>]*)?\/?>/;function Qi(e,r){if(!r.Views)r.Views=[{}];(e.match(Zi)||[]).forEach(function(e,t){var a=Pe(e);if(!r.Views[t])r.Views[t]={};if(+a.zoomScale)r.Views[t].zoom=+a.zoomScale;if(Ye(a.rightToLeft))r.Views[t].RTL=true})}function es(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return cr("sheetViews",cr("sheetView",null,n),{})}function rs(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if(e.v===undefined&&typeof e.f!=="string"||e.t==="z"&&!e.f)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=Yt[e.v];break;case"d":if(a&&a.cellDates)n=le(e.v,-1).toISOString();else{e=ce(e);e.t="n";n=""+(e.v=Q(le(e.v)))}if(typeof e.z==="undefined")e.z=N._table[14];break;default:n=e.v;break;}var l=lr("v",Ue(n)),o={r:r};var c=Si(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=lr("v",""+ki(a.Strings,e.v,a.revStrings));o.t="s";break}o.t="str";break;}if(e.t!=i){e.t=i;e.v=s}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=cr("f",Ue(e.f),f)+(e.v!=null?l:"")}if(e.l)t["!links"].push([r,e.l]);if(e.D)o.cm=1;return cr("c",l,o)}var ts=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var i=er("v"),s=er("f");return function l(o,c,f,u,h,p){var d=0,m="",v=[],g=[],b=0,w=0,k=0,y="",x;var S,C=0,_=0;var A,T;var F=0,E=0;var D=Array.isArray(p.CellXf),O;var M=[];var P=[];var I=Array.isArray(c);var R=[],L={},B=false;var $=!!f.sheetStubs;for(var z=o.split(r),U=0,W=z.length;U!=W;++U){m=z[U].trim();var j=m.length;if(j===0)continue;var H=0;e:for(d=0;d":if(m[d-1]!="/"){++d;break e}if(f&&f.cellStyles){S=Pe(m.slice(H,d),true);C=S.r!=null?parseInt(S.r,10):C+1;_=-1;if(f.sheetRows&&f.sheetRows=d)break;S=Pe(m.slice(H,d),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":"")+m;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!=m.length;++w)if(m.charCodeAt(w)===62)break;++w;S=Pe(m.slice(0,w),true);if(!S.r)S.r=wt({r:C-1,c:_});y=m.slice(w);x={t:""};if((g=y.match(i))!=null&&g[1]!=="")x.v=Be(g[1]);if(f.cellFormula){if((g=y.match(s))!=null&&g[1]!==""){x.f=Be(Je(g[1])).replace(/\r\n/g,"\n");if(!f.xlfn)x.f=hi(x.f);if(g[0].indexOf('t="array"')>-1){x.F=(y.match(n)||[])[1];if(x.F.indexOf(":")>-1)M.push([xt(x.F),x.F])}else if(g[0].indexOf('t="shared"')>-1){T=Pe(g[0]);var X=Be(Je(g[1]));if(!f.xlfn)X=hi(X);P[parseInt(T.si,10)]=[T,X,S.r]}}else if(g=y.match(/]*\/>/)){T=Pe(g[0]);if(P[T.si])x.f=fi(P[T.si][1],P[T.si][2],S.r)}var G=bt(S.r);for(w=0;w=M[w][0].s.r&&G.r<=M[w][0].e.r)if(G.c>=M[w][0].s.c&&G.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(!$)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(!$)continue;x.t="z"}else x.v=parseFloat(x.v);break;case"s":if(typeof x.v=="undefined"){if(!$)continue;x.t="z"}else{A=gi[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?Je(x.v):"";if(f.cellHTML)x.h=He(x.v);break;case"inlineStr":g=y.match(a);x.t="s";if(g!=null&&(A=Wa(g[1]))){x.v=A.t;if(f.cellHTML)x.h=A.h}else x.v="";break;case"b":x.v=Ye(x.v);break;case"d":if(f.cellDates)x.v=le(x.v,1);else{x.v=Q(le(x.v,1));x.t="n"}break;case"e":if(!f||f.cellText!==false)x.w=x.v;x.v=Jt[x.v];break;}F=E=0;O=null;if(D&&S.s!==undefined){O=p.CellXf[S.s];if(O!=null){if(O.numFmtId!=null)F=O.numFmtId;if(f.cellStyles){if(O.fillId!=null)E=O.fillId}}}Ci(x,F,E,f,h,p);if(f.cellDates&&D&&x.t=="n"&&N.is_date(N._table[F])){x.t="d";x.v=ae(x.v)}if(S.cm&&f.xlmeta){var Y=(f.xlmeta.Cell||[])[+S.cm-1];if(Y&&Y.type=="XLDAPR")x.D=true}if(I){var J=bt(S.r);if(!c[J.r])c[J.r]=[];c[J.r][J.c]=x}else c[S.r]=x}}if(R.length>0)c["!rows"]=R}}();function as(e,r,t,a){var n=[],i=[],s=xt(e["!ref"]),l="",o,c="",f=[],u=0,h=0,p=e["!rows"];var d=Array.isArray(e);var m={r:c},v,g=-1;for(h=s.s.c;h<=s.e.c;++h)f[h]=dt(h);for(u=s.s.r;u<=s.e.r;++u){i=[];c=ft(u);for(h=s.s.c;h<=s.e.c;++h){o=f[h]+c;var b=d?(e[u]||[])[h]:e[o];if(b===undefined)continue;if((l=rs(b,o,e,r,t,a))!=null)i.push(l)}if(i.length>0||p&&p[u]){m={r:c};if(p&&p[u]){v=p[u];if(v.hidden)m.hidden=1;g=-1;if(v.hpx)g=pn(v.hpx);else if(v.hpt)g=v.hpt;if(g>-1){m.ht=g;m.customHeight=1}if(v.level){m.outlineLevel=v.level}}n[n.length]=cr("row",i.join(""),m)}}if(p)for(;u-1){m.ht=g;m.customHeight=1}if(v.level){m.outlineLevel=v.level}n[n.length]=cr("row","",m)}}return n.join("")}function ns(e,r,t,a){var n=[Ee,cr("worksheet",null,{xmlns:mr[0],"xmlns:r":dr.r})];var i=t.SheetNames[e],s=0,l="";var o=t.Sheets[i];if(o==null)o={};var c=o["!ref"]||"A1";var f=xt(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=yt(f)}if(!a)a={};o["!comments"]=[];var u=[];Ui(o,t,e,r,n);n[n.length]=cr("dimension",null,{ref:c});n[n.length]=es(o,r,e,t);if(r.sheetFormat)n[n.length]=cr("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]=Ji(o,o["!cols"]);n[s=n.length]="";o["!links"]=[];if(o["!ref"]!=null){l=as(o,r,e,t,a);if(l.length>0)n[n.length]=l}if(n.length>s+1){n[n.length]="";n[s]=n[s].replace("/>",">")}if(o["!protect"])n[n.length]=Hi(o["!protect"]);if(o["!autofilter"]!=null)n[n.length]=qi(o["!autofilter"],o,t,e);if(o["!merges"]!=null&&o["!merges"].length>0)n[n.length]=Bi(o["!merges"]);var h=-1,p,d=-1;if(o["!links"].length>0){n[n.length]="";o["!links"].forEach(function(e){if(!e[1].Target)return;p={ref:e[0]};if(e[1].Target.charAt(0)!="#"){d=oa(a,-1,Ue(e[1].Target).replace(/#.*$/,""),ta.HLINK);p["r:id"]="rId"+d}if((h=e[1].Target.indexOf("#"))>-1)p.location=Ue(e[1].Target.slice(h+1));if(e[1].Tooltip)p.tooltip=Ue(e[1].Tooltip);n[n.length]=cr("hyperlink",null,p)});n[n.length]=""}delete o["!links"];if(o["!margins"]!=null)n[n.length]=Gi(o["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=lr("ignoredErrors",cr("ignoredError",null,{numberStoredAsText:1,sqref:c}));if(u.length>0){d=oa(a,-1,"../drawings/drawing"+(e+1)+".xml",ta.DRAW);n[n.length]=cr("drawing",null,{"r:id":"rId"+d});o["!drawing"]=u}if(o["!comments"].length>0){d=oa(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",ta.VML);n[n.length]=cr("legacyDrawing",null,{"r:id":"rId"+d});o["!legacy"]=d}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function is(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=Be((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 ss(e,r,t,a,n,i){var s=i||{"!type":"chart"};if(!e)return i;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=is(e);f.s.r=f.s.c=0;f.e.c=l;c=dt(l);r[0].forEach(function(e,t){s[c+ft(t)]={t:"n",v:e,z:r[1]};o=t});if(f.e.r0)s["!ref"]=yt(f);return s}ta.CS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet";function ls(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var i={"!type":"chart","!drawel":null,"!rel":""};var s;var l=e.match(Pi);if(l)$i(l[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 os(e,r,t,a){var n=[Ee,cr("chartsheet",null,{xmlns:mr[0],"xmlns:r":dr.r})];n[n.length]=cr("drawing",null,{"r:id":"rId1"});oa(a,-1,"../drawings/drawing"+(e+1)+".xml",ta.DRAW);if(n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}var cs=[["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 fs=[["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 us=[];var hs=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function ps(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]]=Ye(a[i[0]]);break;case"int":if(typeof a[i[0]]=="string")a[i[0]]=parseInt(a[i[0]],10);break;}}}}function ds(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]]=Ye(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function ms(e){ds(e.WBProps,cs);ds(e.CalcPr,hs);ps(e.WBView,fs);ps(e.Sheets,us);bi.date1904=Ye(e.WBProps.date1904)}function vs(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return Ye(e.Workbook.WBProps.date1904)?"true":"false"}var gs="][*?/\\".split("");function bs(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;gs.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function ws(e,r,t){e.forEach(function(a,n){bs(a);for(var i=0;i22)throw new Error("Bad Code Name: Worksheet"+s)}})}function ks(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||[];ws(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":cs.forEach(function(e){if(f[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=Ye(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=Je(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"":{i.Ref=Be(Je(e.slice(s,c)));t.Names.push(i)}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){cs.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]=cr("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:Ue(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]=cr("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]=cr("definedName",Ue(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Cs(e,r,t){if(r.slice(-4)===".bin")return parse_wb_bin(e,t);return xs(e,t)}function _s(e,r,t,a,n,i,s,l){if(r.slice(-4)===".bin")return parse_ws_bin(e,a,t,n,i,s,l);return Li(e,a,t,n,i,s,l)}function As(e,r,t,a,n,i,s,l){if(r.slice(-4)===".bin")return parse_cs_bin(e,a,t,n,i,s,l);return ls(e,a,t,n,i,s,l)}function Ts(e,r,t,a,n,i,s,l){if(r.slice(-4)===".bin")return ni(e,a,t,n,i,s,l);return ii(e,a,t,n,i,s,l)}function Fs(e,r,t,a,n,i,s,l){if(r.slice(-4)===".bin")return ti(e,a,t,n,i,s,l);return ai(e,a,t,n,i,s,l)}function Es(e,r,t,a){if(r.slice(-4)===".bin")return parse_sty_bin(e,t,a);return _n(e,t,a)}function Ds(e,r,t){return Rn(e,t)}function Os(e,r,t){if(r.slice(-4)===".bin")return parse_sst_bin(e,t);return Xa(e,t)}function Ms(e,r,t){if(r.slice(-4)===".bin")return parse_comments_bin(e,t);return Xn(e,t)}function Ns(e,r,t){if(r.slice(-4)===".bin")return parse_cc_bin(e,r,t);return parse_cc_xml(e,r,t)}function Ps(e,r,t,a){if(t.slice(-4)===".bin")return Un(e,r,t,a);return zn(e,r,t,a)}function Is(e,r,t){if(r.slice(-4)===".bin")return parse_xlmeta_bin(e,r,t);return Bn(e,r,t)}function Rs(e,r,t){return(r.slice(-4)===".bin"?write_wb_bin:Ss)(e,t)}function Ls(e,r,t,a,n){return(r.slice(-4)===".bin"?write_ws_bin:ns)(e,t,a,n)}function Bs(e,r,t,a,n){return(r.slice(-4)===".bin"?write_cs_bin:os)(e,t,a,n)}function $s(e,r,t){return(r.slice(-4)===".bin"?write_sty_bin:An)(e,t)}function zs(e,r,t){return(r.slice(-4)===".bin"?write_sst_bin:Ya)(e,t)}function Us(e,r,t){return(r.slice(-4)===".bin"?write_comments_bin:Gn)(e,t)}function Ws(e){return(e.slice(-4)===".bin"?write_xlmeta_bin:$n)()}var js=function(){function e(e,r){var t=r||{};if(m!=null&&t.dense==null)t.dense=m;var a=t.dense?[]:{};e=e.replace(//g,"");var n=e.match(/");var i=e.match(/<\/table/i);var s=n.index,l=i&&i.index||e.length;var o=me(e.slice(s,l),/(:?]*>)/i,"");var c=-1,f=0,u=0,h=0;var p={s:{r:1e7,c:1e7},e:{r:0,c:0}};var d=[];for(s=0;s/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)d.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=rr(k);if(p.s.r>c)p.s.r=c;if(p.e.rf)p.s.c=f;if(p.e.c[\s\S]*?<\/table>/gi);if(!a||a.length==0)throw new Error("Invalid HTML: could not find
");if(a.length==1)return _t(e(a[0],t),t);var n=Kl();a.forEach(function(r,a){ql(n,e(r,t),"Sheet"+(a+1))});return n}function t(e,r,t,a){var n=e["!merges"]||[];var i=[];for(var s=r.s.c;s<=r.e.c;++s){var l=0,o=0;for(var c=0;ct||n[c].s.c>s)continue;if(n[c].e.r1)p.rowspan=l;if(o>1)p.colspan=o;if(a.editable)h=''+h+"";else if(u){p["data-t"]=u&&u.t||"z";if(u.v!=null)p["data-v"]=u.v;if(u.z!=null)p["data-z"]=u.z;if(u.l&&(u.l.Target||"#").charAt(0)!="#")h=''+h+""}p.id=(a.id||"sjs")+"-"+f;i.push(cr("td",h,p))}var d="";return d+i.join("")+""}function a(e,r,t){var a=[];return a.join("")+""}var n='SheetJS Table Export';var i="";function s(e,r){var s=r||{};var l=s.header!=null?s.header:n;var o=s.footer!=null?s.footer:i;var c=[l];var f=kt(e["!ref"]);s.dense=Array.isArray(e);c.push(a(e,f,s));for(var u=f.s.r;u<=f.e.r;++u)c.push(t(e,f,u,s));c.push("
"+o);return c.join("")}return{to_workbook:r,to_sheet:e,_row:t,BEGIN:n,END:i,_preamble:a,from_sheet:s}}();function Hs(e,r,t){var a=t||{};if(m!=null)a.dense=m;var n=0,i=0;if(a.origin!=null){if(typeof a.origin=="number")n=a.origin;else{var s=typeof a.origin=="string"?bt(a.origin):a.origin;n=s.r;i=s.c}}var l=r.getElementsByTagName("tr");var o=Math.min(a.sheetRows||1e7,l.length);var c={s:{r:0,c:0},e:{r:n,c:i}};if(e["!ref"]){var f=kt(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(n==-1)c.e.r=n=f.e.r+1}var u=[],h=0;var p=e["!rows"]||(e["!rows"]=[]);var d=0,v=0,g=0,b=0,w=0,k=0;if(!e["!cols"])e["!cols"]=[];for(;d1||k>1)u.push({s:{r:v+n,c:b+i},e:{r:v+n+(w||1)-1,c:b+i+(k||1)-1}});var T={t:"s",v:C};var F=S.getAttribute("data-t")||S.getAttribute("t")||"";if(C!=null){if(C.length==0)T.t=F||"z";else if(a.raw||C.trim().length==0||F=="s"){}else if(C==="TRUE")T={t:"b",v:true};else if(C==="FALSE")T={t:"b",v:false};else if(!isNaN(ue(C)))T={t:"n",v:ue(C)};else if(!isNaN(pe(C).getDate())){T={t:"d",v:le(C)};if(!a.cellDates)T={t:"n",v:Q(T.v)};T.z=a.dateNF||N._table[14]}}if(T.z===undefined&&_!=null)T.z=_;var E="",D=S.getElementsByTagName("A");if(D&&D.length)for(var O=0;O=o)e["!fullref"]=yt((c.e.r=l.length-d+v-1+n,c));return e}function Vs(e,r){var t=r||{};var a=t.dense?[]:{};return Hs(a,e,r)}function Xs(e,r){return _t(Vs(e,r),r)}function Gs(e){var r="";var t=Ys(e);if(t)r=t(e).getPropertyValue("display");if(!r)r=e.style&&e.style.display;return r==="none"}function Ys(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 Js(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=Be(r.replace(/<[^>]*>/g,""));return[t]}var Ks={day:["d","dd"],month:["m","mm"],year:["y","yy"],hours:["h","hh"],minutes:["m","mm"],seconds:["s","ss"],"am-pm":["A/P","AM/PM"],"day-of-week":["ddd","dddd"],era:["e","ee"],quarter:["\\Qm",'m\\"th quarter"']};function qs(e,r){var t=r||{};if(m!=null&&t.dense==null)t.dense=m;var a=hr(e);var n=[],i;var s;var l={name:""},o="",c=0;var f;var u;var h={},p=[];var d=t.dense?[]:{};var v,g;var b={value:""};var w="",k=0,y;var x=[];var S=-1,C=-1,_={s:{r:1e6,c:1e7},e:{r:0,c:0}};var A=0;var T={};var F=[],E={},D=0,O=0;var M=[],N=1,P=1;var I=[];var R={Names:[]};var L={};var B=["",""];var $=[],z={};var U="",W=0;var j=false,H=false;var V=0;pr.lastIndex=0;a=a.replace(//gm,"").replace(//gm,"");while(v=pr.exec(a))switch(v[3]=v[3].replace(/_.*$/,"")){case"table":;case"工作表":if(v[1]==="/"){if(_.e.c>=_.s.c&&_.e.r>=_.s.r)d["!ref"]=yt(_);else d["!ref"]="A1:A1";if(t.sheetRows>0&&t.sheetRows<=_.e.r){d["!fullref"]=d["!ref"];_.e.r=t.sheetRows-1;d["!ref"]=yt(_)}if(F.length)d["!merges"]=F;if(M.length)d["!rows"]=M;f.name=f["名称"]||f.name;if(typeof JSON!=="undefined")JSON.stringify(f);p.push(f.name);h[f.name]=d;H=false}else if(v[0].charAt(v[0].length-2)!=="/"){f=Pe(v[0],false);S=C=-1;_.s.r=_.s.c=1e7;_.e.r=_.e.c=0;d=t.dense?[]:{};F=[];M=[];H=true}break;case"table-row-group":if(v[1]==="/")--A;else++A;break;case"table-row":;case"行":if(v[1]==="/"){S+=N;N=1;break}u=Pe(v[0],false);if(u["行号"])S=u["行号"]-1;else if(S==-1)S=0;N=+u["number-rows-repeated"]||1;if(N<10)for(V=0;V0)M[S+V]={level:A};C=-1;break;case"covered-table-cell":if(v[1]!=="/")++C;if(t.sheetStubs){if(t.dense){if(!d[S])d[S]=[];d[S][C]={t:"z"}}else d[wt({r:S,c:C})]={t:"z"}}w="";x=[];break;case"table-cell":;case"数据":if(v[0].charAt(v[0].length-2)==="/"){++C;b=Pe(v[0],false);P=parseInt(b["number-columns-repeated"]||"1",10);g={t:"z",v:null};if(b.formula&&t.cellFormula!=false)g.f=pi(Be(b.formula));if((b["数据类型"]||b["value-type"])=="string"){g.t="s";g.v=Be(b["string-value"]||"");if(t.dense){if(!d[S])d[S]=[];d[S][C]=g}else{d[wt({r:S,c:C})]=g}}C+=P-1}else if(v[1]!=="/"){++C;w="";k=0;x=[];P=1;var X=N?S+N-1:S;if(C>_.e.c)_.e.c=C;if(C<_.s.c)_.s.c=C;if(S<_.s.r)_.s.r=S;if(X>_.e.r)_.e.r=X;b=Pe(v[0],false);$=[];z={};g={t:b["数据类型"]||b["value-type"],v:null};if(t.cellFormula){if(b.formula)b.formula=Be(b.formula);if(b["number-matrix-columns-spanned"]&&b["number-matrix-rows-spanned"]){D=parseInt(b["number-matrix-rows-spanned"],10)||0;O=parseInt(b["number-matrix-columns-spanned"],10)||0;E={s:{r:S,c:C},e:{r:S+D-1,c:C+O-1}};g.F=yt(E);I.push([E,g.F])}if(b.formula)g.f=pi(b.formula);else for(V=0;V=I[V][0].s.r&&S<=I[V][0].e.r)if(C>=I[V][0].s.c&&C<=I[V][0].e.c)g.F=I[V][1]}if(b["number-columns-spanned"]||b["number-rows-spanned"]){D=parseInt(b["number-rows-spanned"],10)||0;O=parseInt(b["number-columns-spanned"],10)||0;E={s:{r:S,c:C},e:{r:S+D-1,c:C+O-1}};F.push(E)}if(b["number-columns-repeated"])P=parseInt(b["number-columns-repeated"],10);switch(g.t){case"boolean":g.t="b";g.v=Ye(b["boolean-value"]);break;case"float":g.t="n";g.v=parseFloat(b.value);break;case"percentage":g.t="n";g.v=parseFloat(b.value);break;case"currency":g.t="n";g.v=parseFloat(b.value);break;case"date":g.t="d";g.v=le(b["date-value"]);if(!t.cellDates){g.t="n";g.v=Q(g.v)}g.z="m/d/yy";break;case"time":g.t="n";g.v=ne(b["time-value"])/86400;if(t.cellDates){g.t="d";g.v=ae(g.v)}g.z="HH:MM:SS";break;case"number":g.t="n";g.v=parseFloat(b["数据数值"]);break;default:if(g.t==="string"||g.t==="text"||!g.t){g.t="s";if(b["string-value"]!=null){w=Be(b["string-value"]);x=[]}}else throw new Error("Unsupported value type "+g.t);}}else{j=false;if(g.t==="s"){g.v=w||"";if(x.length)g.R=x;j=k==0}if(L.Target)g.l=L;if($.length>0){g.c=$;$=[]}if(w&&t.cellText!==false)g.w=w;if(j){g.t="z";delete g.v}if(!j||t.sheetStubs){if(!(t.sheetRows&&t.sheetRows<=S)){for(var G=0;G0)d[S+G][C+P]=ce(g)}else{d[wt({r:S+G,c:C})]=g;while(--P>0)d[wt({r:S+G,c:C+P})]=ce(g)}if(_.e.c<=C)_.e.c=C}}}P=parseInt(b["number-columns-repeated"]||"1",10);C+=P-1;P=0;g={};w="";x=[]}L={};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=n.pop())[0]!==v[3])throw"Bad state: "+i}else if(v[0].charAt(v[0].length-2)!=="/")n.push([v[3],true]);break;case"annotation":if(v[1]==="/"){if((i=n.pop())[0]!==v[3])throw"Bad state: "+i;z.t=w;if(x.length)z.R=x;z.a=U;$.push(z)}else if(v[0].charAt(v[0].length-2)!=="/"){n.push([v[3],false])}U="";W=0;w="";k=0;x=[];break;case"creator":if(v[1]==="/"){U=a.slice(W,v.index)}else W=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=n.pop())[0]!==v[3])throw"Bad state: "+i}else if(v[0].charAt(v[0].length-2)!=="/")n.push([v[3],false]);w="";k=0;x=[];break;case"scientific-number":break;case"currency-symbol":break;case"currency-style":break;case"number-style":;case"percentage-style":;case"date-style":;case"time-style":if(v[1]==="/"){T[l.name]=o;if((i=n.pop())[0]!==v[3])throw"Bad state: "+i}else if(v[0].charAt(v[0].length-2)!=="/"){o="";l=Pe(v[0],false);n.push([v[3],true])}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=Pe(v[0],false);o+=Ks[v[3]][s.style==="long"?1:0];break;}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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=Pe(v[0],false);o+=Ks[v[3]][s.style==="long"?1:0];break;}break;case"boolean-style":break;case"boolean":break;case"text-style":break;case"text":if(v[0].slice(-2)==="/>")break;else if(v[1]==="/")switch(n[n.length-1][0]){case"number-style":;case"date-style":;case"time-style":o+=a.slice(c,v.index);break;}else c=v.index+v[0].length;break;case"named-range":s=Pe(v[0],false);B=mi(s["cell-range-address"]);var Y={Name:s.name,Ref:B[0]+"!"+B[1]};if(H)Y.Sheet=p.length;R.Names.push(Y);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":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(n[n.length-1][0])>-1)break;if(v[1]==="/"&&(!b||!b["string-value"])){var J=Js(a.slice(k,v.index),y);w=(w.length>0?w+"\n":"")+J[0]}else{y=Pe(v[0],false);k=v.index+v[0].length}break;case"s":break;case"database-range":if(v[1]==="/")break;try{B=mi(Pe(v[0])["target-range-address"]);h[B[0]]["!autofilter"]={ref:B[1]}}catch(K){}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]!=="/"){L=Pe(v[0],false);if(!L.href)break;L.Target=Be(L.href);delete L.href;if(L.Target.charAt(0)=="#"&&L.Target.indexOf(".")>-1){B=mi(L.Target.slice(1));L.Target="#"+B[0]+"!"+B[1]}else if(L.Target.match(/^\.\.[\\\/]/))L.Target=L.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(t.WTF)throw new Error(v);};}var q={Sheets:h,SheetNames:p,Workbook:R};if(t.bookSheets)delete q.Sheets;return q}function Zs(e,r){r=r||{};if(we(e,"META-INF/manifest.xml"))fa(ye(e,"META-INF/manifest.xml"),r);var t=xe(e,"content.xml");if(!t)throw new Error("Missing content.xml in ODS / UOF file");var a=qs(Je(t),r);if(we(e,"meta.xml"))a.Props=ba(ye(e,"meta.xml"));return a}function Qs(e,r){return qs(e,r)}var el=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return Ee+r}}();var rl=function(){var e=function(e){return Ue(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){var s=[];s.push(' \n');var l=0,o=0,c=kt(a["!ref"]||"A1");var f=a["!merges"]||[],u=0;var h=Array.isArray(a);if(a["!cols"]){for(o=0;o<=c.e.c;++o)s.push(" \n")}var p="",d=a["!rows"]||[];for(l=0;l\n")}for(;l<=c.e.r;++l){p=d[l]?' table:style-name="ro'+d[l].ods+'"':"";s.push(" \n");for(o=0;oo)continue;if(f[u].s.r>l)continue;if(f[u].e.c\n")}s.push(" \n");return s.join("")};var n=function(e,r){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 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")};return function i(e,r){var t=[Ee];var i=or({"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=or({"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(ma().replace(/office:document-meta/g,"office:meta"))}else t.push("\n");n(t,e);t.push(" \n");t.push(" \n");for(var l=0;l!=e.SheetNames.length;++l)t.push(a(e.Sheets[e.SheetNames[l]],e,l,r));t.push(" \n");t.push(" \n");if(r.bookType=="fods")t.push("");else t.push("");return t.join("")}}();function tl(e,r){if(r.bookType=="fods")return rl(e,r);var t=Ae();var a="";var n=[];var i=[];a="mimetype";_e(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";_e(t,a,rl(e,r));n.push([a,"text/xml"]);i.push([a,"ContentFile"]);a="styles.xml";_e(t,a,el(e,r));n.push([a,"text/xml"]);i.push([a,"StylesFile"]);a="meta.xml";_e(t,a,Ee+ma());n.push([a,"text/xml"]);i.push([a,"MetadataFile"]);a="manifest.rdf";_e(t,a,da(i));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";_e(t,a,ua(n));return t}function al(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 nl(e){al([["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 il(e){al([["cellDates",false],["bookSST",false],["bookType","xlsx"],["compression",false],["WTF",false]])(e)}function sl(e){if(ta.WS.indexOf(e)>-1)return"sheet";if(ta.CS&&e==ta.CS)return"chart";if(ta.DS&&e==ta.DS)return"dialog";if(ta.MS&&e==ta.MS)return"macro";return e&&e.length?e:"sheet"}function ll(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,sl(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function ol(e,r,t,a,n,i,s,l,o,c,f,u){try{i[a]=na(xe(e,t,true),r);var h=ye(e,r);var p;switch(l){case"sheet":p=_s(h,r,n,o,i[a],c,f,u);break;case"chart":p=As(h,r,n,o,i[a],c,f,u);if(!p||!p["!drawel"])break;var d=Fe(p["!drawel"].Target,r);var m=aa(d);var v=Wn(xe(e,d,true),na(xe(e,m,true),d));var g=Fe(v,d);var b=aa(g);p=ss(xe(e,g,true),g,o,na(xe(e,b,true),g),c,p);break;case"macro":p=Ts(h,r,n,o,i[a],c,f,u);break;case"dialog":p=Fs(h,r,n,o,i[a],c,f,u);break;default:throw new Error("Unrecognized sheet type "+l);}s[a]=p;var w=[];if(i&&i[a])G(i[a]).forEach(function(t){var n="";if(i[a][t].Type==ta.CMNT){n=Fe(i[a][t].Target,r);var s=Ms(ye(e,n,true),n,o);if(!s||!s.length)return;Vn(p,s,false)}if(i[a][t].Type==ta.TCMNT){n=Fe(i[a][t].Target,r);w=w.concat(Yn(ye(e,n,true),o))}});if(w&&w.length)Vn(p,w,true,o.people||[])}catch(k){if(o.WTF)throw k}}function cl(e){return e.charAt(0)=="/"?e.slice(1):e}function fl(e,r){P(N);r=r||{};nl(r);if(we(e,"META-INF/manifest.xml"))return Zs(e,r);if(we(e,"objectdata.xml"))return Zs(e,r);if(we(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);var t=W.utils.cfb_new();Ce(e).forEach(function(r){_e(t,r,Se(e,r))});return parse_numbers_iwa(t)}throw new Error("Unsupported NUMBERS file")}if(!we(e,"[Content_Types].xml")){if(we(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(we(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");throw new Error("Unsupported ZIP file")}var a=Ce(e);var n=Qt(xe(e,"[Content_Types].xml"));var i=false;var s,l;if(n.workbooks.length===0){l="xl/workbook.xml";if(ye(e,l,true))n.workbooks.push(l)}if(n.workbooks.length===0){l="xl/workbook.bin";if(!ye(e,l,true))throw new Error("Could not find workbook");n.workbooks.push(l);i=true}if(n.workbooks[0].slice(-3)=="bin")i=true;var o={};var c={};if(!r.bookSheets&&!r.bookProps){gi=[];if(n.sst)try{gi=Os(ye(e,cl(n.sst)),n.sst,r)}catch(f){if(r.WTF)throw f}if(r.cellStyles&&n.themes.length)o=Ds(xe(e,n.themes[0].replace(/^\//,""),true)||"",n.themes[0],r);if(n.style)c=Es(ye(e,cl(n.style)),n.style,o,r)}n.links.map(function(t){try{var a=na(xe(e,aa(cl(t))),t);return Ps(ye(e,cl(t)),a,t,r)}catch(n){}});var u=Cs(ye(e,cl(n.workbooks[0])),n.workbooks[0],r);var h={},p="";if(n.coreprops.length){p=ye(e,cl(n.coreprops[0]),true);if(p)h=ba(p);if(n.extprops.length!==0){p=ye(e,cl(n.extprops[0]),true);if(p)Ca(p,h,r)}}var d={};if(!r.bookSheets||r.bookProps){if(n.custprops.length!==0){p=xe(e,cl(n.custprops[0]),true);if(p)d=Ta(p,r)}}var m={};if(r.bookSheets||r.bookProps){if(u.Sheets)s=u.Sheets.map(function O(e){return e.name});else if(h.Worksheets&&h.SheetNames.length>0)s=h.SheetNames;if(r.bookProps){m.Props=h;m.Custprops=d}if(r.bookSheets&&typeof s!=="undefined")m.SheetNames=s;if(r.bookSheets?m.SheetNames:r.bookProps)return m}s={};var v={};if(r.bookDeps&&n.calcchain)v=Ns(ye(e,cl(n.calcchain)),n.calcchain,r);var g=0;var b={};var w,k;{var y=u.Sheets;h.Worksheets=y.length;h.SheetNames=[];for(var x=0;x!=y.length;++x){h.SheetNames[x]=y[x].name}}var S=i?"bin":"xml";var C=n.workbooks[0].lastIndexOf("/");var _=(n.workbooks[0].slice(0,C+1)+"_rels/"+n.workbooks[0].slice(C+1)+".rels").replace(/^\//,"");if(!we(e,_))_="xl/_rels/workbook."+S+".rels";var A=na(xe(e,_,true),_.replace(/_rels.*/,"s5s"));if((n.metadata||[]).length>=1){r.xlmeta=Is(ye(e,cl(n.metadata[0])),n.metadata[0],r)}if((n.people||[]).length>=1){r.people=Kn(ye(e,cl(n.people[0])),r)}if(A)A=ll(A,u.Sheets);var T=ye(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(g=0;g!=h.Worksheets;++g){var F="sheet";if(A&&A[g]){w="xl/"+A[g][1].replace(/[\/]?xl\//,"");if(!we(e,w))w=A[g][1];if(!we(e,w))w=_.replace(/_rels\/.*$/,"")+A[g][1];F=A[g][2]}else{w="xl/worksheets/sheet"+(g+1-T)+"."+S;w=w.replace(/sheet0\./,"sheet.")}k=w.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(h.SheetNames[g].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var E=false;for(var D=0;D!=r.sheets.length;++D){if(typeof r.sheets[D]=="number"&&r.sheets[D]==g)E=1;if(typeof r.sheets[D]=="string"&&r.sheets[D].toLowerCase()==h.SheetNames[g].toLowerCase())E=1}if(!E)continue e};}ol(e,w,k,h.SheetNames[g],g,b,s,F,r,u,o,c)}m={Directory:n,Workbook:u,Props:h,Custprops:d,Deps:v,Sheets:s,SheetNames:h.SheetNames,Strings:gi,Styles:c,Themes:o,SSF:N.get_table()};if(r&&r.bookFiles){if(e.files){m.keys=a;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(n.vba.length>0)m.vbaraw=ye(e,cl(n.vba[0]),true);else if(n.defaults&&n.defaults.bin===Zn)m.vbaraw=ye(e,"xl/vbaProject.bin",true)}return m}function ul(e,r){var t=r||{};var a="Workbook",n=W.find(e,a);try{a="/!DataSpaces/Version";n=W.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);parse_DataSpaceVersionInfo(n.content);a="/!DataSpaces/DataSpaceMap";n=W.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=parse_DataSpaceMap(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=W.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=parse_DataSpaceDefinition(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=W.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=W.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=W.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 hl(e,r){if(r.bookType=="ods")return tl(e,r);if(r.bookType=="xlsb")return pl(e,r);return dl(e,r)}function pl(e,r){jn=1024;if(e&&!e.SSF){e.SSF=N.get_table()}if(e&&e.SSF){P(N);N.load_table(e.SSF);r.revssf=K(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(wi)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t=r.bookType=="xlsb"?"bin":"xml";var a=ri.indexOf(r.bookType)>-1;var n=Zt();il(r=r||{});var i=Ae();var s="",l=0;r.cellXfs=[];Si(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";_e(i,s,ka(e.Props,r));n.coreprops.push(s);oa(r.rels,2,s,ta.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 c=0;c0){s="docProps/custom.xml";_e(i,s,Fa(e.Custprops,r));n.custprops.push(s);oa(r.rels,4,s,ta.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:s="xl/worksheets/sheet"+l+"."+t;_e(i,s,Ls(l-1,s,r,e,f));n.sheets.push(s);oa(r.wbrels,-1,"worksheets/sheet"+l+"."+t,ta.WS[0]);}if(u){var p=u["!comments"];var d=false;var m="";if(p&&p.length>0){m="xl/comments"+l+"."+t;_e(i,m,Us(p,m,r));n.comments.push(m);oa(f,-1,"../comments"+l+"."+t,ta.CMNT);d=true}if(u["!legacy"]){if(d)_e(i,"xl/drawings/vmlDrawing"+l+".vml",Hn(l,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(f["!id"].rId1)_e(i,aa(s),sa(f))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;_e(i,s,zs(r.Strings,s,r));n.strs.push(s);oa(r.wbrels,-1,"sharedStrings."+t,ta.SST)}s="xl/workbook."+t;_e(i,s,Rs(e,s,r));n.workbooks.push(s);oa(r.rels,1,s,ta.WB);s="xl/theme/theme1.xml";_e(i,s,Ln(e.Themes,r));n.themes.push(s);oa(r.wbrels,-1,"theme/theme1.xml",ta.THEME);s="xl/styles."+t;_e(i,s,$s(e,s,r));n.styles.push(s);oa(r.wbrels,-1,"styles."+t,ta.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";_e(i,s,e.vbaraw);n.vba.push(s);oa(r.wbrels,-1,"vbaProject.bin",ta.VBA)}s="xl/metadata."+t;_e(i,s,Ws(s));n.metadata.push(s);oa(r.wbrels,-1,"metadata."+t,ta.XLMETA);_e(i,"[Content_Types].xml",ra(n,r));_e(i,"_rels/.rels",sa(r.rels));_e(i,"xl/_rels/workbook."+t+".rels",sa(r.wbrels));delete r.revssf;delete r.ssf;return i}function dl(e,r){jn=1024;if(e&&!e.SSF){e.SSF=N.get_table()}if(e&&e.SSF){P(N);N.load_table(e.SSF);r.revssf=K(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(wi)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=ri.indexOf(r.bookType)>-1;var n=Zt();il(r=r||{});var i=Ae();var s="",l=0;r.cellXfs=[];Si(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";_e(i,s,ka(e.Props,r));n.coreprops.push(s);oa(r.rels,2,s,ta.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 c=0;c0){s="docProps/custom.xml";_e(i,s,Fa(e.Custprops,r));n.custprops.push(s);oa(r.rels,4,s,ta.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 p=(h||{})["!type"]||"sheet";switch(p){case"chart":;default:s="xl/worksheets/sheet"+l+"."+t;_e(i,s,ns(l-1,r,e,u));n.sheets.push(s);oa(r.wbrels,-1,"worksheets/sheet"+l+"."+t,ta.WS[0]);}if(h){var d=h["!comments"];var m=false;var v="";if(d&&d.length>0){var g=false;d.forEach(function(e){e[1].forEach(function(e){if(e.T==true)g=true})});if(g){v="xl/threadedComments/threadedComment"+l+"."+t;_e(i,v,Jn(d,f,r));n.threadedcomments.push(v);oa(u,-1,"../threadedComments/threadedComment"+l+"."+t,ta.TCMNT)}v="xl/comments"+l+"."+t;_e(i,v,Gn(d,r));n.comments.push(v);oa(u,-1,"../comments"+l+"."+t,ta.CMNT);m=true}if(h["!legacy"]){if(m)_e(i,"xl/drawings/vmlDrawing"+l+".vml",Hn(l,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(u["!id"].rId1)_e(i,aa(s),sa(u))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;_e(i,s,Ya(r.Strings,r));n.strs.push(s);oa(r.wbrels,-1,"sharedStrings."+t,ta.SST)}s="xl/workbook."+t;_e(i,s,Ss(e,r));n.workbooks.push(s);oa(r.rels,1,s,ta.WB);s="xl/theme/theme1.xml";_e(i,s,Ln(e.Themes,r));n.themes.push(s);oa(r.wbrels,-1,"theme/theme1.xml",ta.THEME);s="xl/styles."+t;_e(i,s,An(e,r));n.styles.push(s);oa(r.wbrels,-1,"styles."+t,ta.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";_e(i,s,e.vbaraw);n.vba.push(s);oa(r.wbrels,-1,"vbaProject.bin",ta.VBA)}s="xl/metadata."+t;_e(i,s,$n());n.metadata.push(s);oa(r.wbrels,-1,"metadata."+t,ta.XLMETA);if(f.length>1){s="xl/persons/person.xml";_e(i,s,qn(f,r));n.people.push(s);oa(r.wbrels,-1,"persons/person.xml",ta.PEOPLE)}_e(i,"[Content_Types].xml",ra(n,r));_e(i,"_rels/.rels",sa(r.rels));_e(i,"xl/_rels/workbook."+t+".rels",sa(r.wbrels));delete r.revssf;delete r.ssf;return i}function ml(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=g.decode(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 vl(e,r){if(W.find(e,"EncryptedPackage"))return ul(e,r);return parse_xlscfb(e,r)}function gl(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=b&&Buffer.isBuffer(e)?"buffer":"base64";t=Te(a,n);return fl(t,n)}function bl(e,r){var t=0;e:while(t=2&&n[3]===0)return WK_.to_workbook(a,t);if(n[2]===0&&(n[3]===8||n[3]===9))return WK_.to_workbook(a,t)}break;case 3:;case 131:;case 139:;case 140:return Da.to_workbook(a,t);case 123:if(n[1]===92&&n[2]===114&&n[3]===116)return RTF.to_workbook(a,t);break;case 10:;case 13:;case 32:return wl(a,t);case 137:if(n[1]===80&&n[2]===78&&n[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;}if(Ea.indexOf(n[0])>-1&&n[2]<=12&&n[3]<=31)return Da.to_workbook(a,t);return xl(e,a,t,i)}function Cl(e,r){var t=r||{};t.type="file";return Sl(e,t)}function _l(e,r){switch(r.type){case"base64":;case"binary":break;case"buffer":;case"array":r.type="";break;case"file":return V(r.file,W.write(e,{type:b?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+r.bookType+"' files");default:throw new Error("Unrecognized type "+r.type);}return W.write(e,r)}function Al(e,r){var t=ce(r||{});var a=hl(e,t);return Fl(a,t)}function Tl(e,r){var t=ce(r||{});var a=dl(e,t);return Fl(a,t)}function Fl(e,r){var t={};var a=b?"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?W.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(_(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return _l(encrypt_agile(n,r.password),r);if(r.type==="file")return V(r.file,n);return r.type=="string"?Je(n):n}function El(e,r){var t=r||{};var a=write_xlscfb(e,t);return _l(a,t)}function Dl(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return g.encode(Ke(a));case"binary":return Ke(a);case"string":return e;case"file":return V(r.file,a,"utf8");case"buffer":{if(b)return w(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return Dl(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Ol(e,r){switch(r.type){case"base64":return g.encode(e);case"binary":return e;case"string":return e;case"file":return V(r.file,e,"binary");case"buffer":{if(b)return w(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Ml(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var u=ft(o.s.r);var h=[];var p=[];var d=0,m=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]=dt(b);t=v?e[g][b]:e[h[b]+u];switch(a){case 1:i[b]=b-o.s.c;break;case 2:i[b]=h[b];break;case 3:i[b]=c.header[b-o.s.c];break;default:if(t==null)t={w:"__EMPTY",t:"s"};l=s=Ct(t,null,c);m=w[s]||0;if(!m)w[s]=1;else{do{l=s+"_"+m++}while(w[l]);w[s]=m;w[l]=1}i[b]=l;}}for(g=o.s.r+n;g<=o.e.r;++g){if((y[g]||{}).hidden)continue;var x=$l(e,o,g,h,a,i,v,c);if(x.isempty===false||(a===1?c.blankrows!==false:!!c.blankrows))p[d++]=x.row}p.length=d;return p}var Ul=/"/g;function Wl(e,r,t,a,n,i,s,l){var o=true;var c=[],f="",u=ft(t);for(var h=r.s.c;h<=r.e.c;++h){if(!a[h])continue;var p=l.dense?(e[t]||[])[h]:e[a[h]+u];if(p==null)f="";else if(p.v!=null){o=false;f=""+(l.rawNumbers&&p.t=="n"?p.v:Ct(p,null,l));for(var d=0,m=0;d!==f.length;++d)if((m=f.charCodeAt(d))===n||m===i||m===34||l.forceQuotes){f='"'+f.replace(Ul,'""')+'"';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(Ul,'""')+'"'}else f="";c.push(f)}if(l.blankrows===false&&o)return null;return c.join(s)}function jl(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=xt(e["!ref"]);var i=a.FS!==undefined?a.FS:",",s=i.charCodeAt(0);var l=a.RS!==undefined?a.RS:"\n",o=l.charCodeAt(0);var c=new RegExp((i=="|"?"\\|":i)+"+$");var f="",u=[];a.dense=Array.isArray(e);var h=a.skipHidden&&e["!cols"]||[];var p=a.skipHidden&&e["!rows"]||[];for(var d=n.s.c;d<=n.e.c;++d)if(!(h[d]||{}).hidden)u[d]=dt(d);var m=0;for(var v=n.s.r;v<=n.e.r;++v){if((p[v]||{}).hidden)continue;f=Wl(e,n,v,u,s,o,i,a);if(f==null){continue}if(a.strip)f=f.replace(c,"");if(f||a.blankrows!==false)t.push((m++?l:"")+f)}delete a.dense;return t.join("")}function Hl(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=jl(e,r);if(typeof $cptable=="undefined"||r.type=="string")return t;var a=$cptable.utils.encode(1200,t,"str");return String.fromCharCode(255)+String.fromCharCode(254)+a}function Vl(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=xt(e["!ref"]),i="",s=[],l;var o=[];var c=Array.isArray(e);for(l=n.s.c;l<=n.e.c;++l)s[l]=dt(l);for(var f=n.s.r;f<=n.e.r;++f){i=ft(f);for(l=n.s.c;l<=n.e.c;++l){r=s[l]+i;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 Xl(e,r,t){var a=t||{};var n=+!a.skipHeader;var i=e||{};var s=0,l=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var o=typeof a.origin=="string"?bt(a.origin):a.origin;s=o.r;l=o.c}}var c;var f={s:{c:0,r:0},e:{c:l,r:s+r.length-1+n}};if(i["!ref"]){var u=xt(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(s==-1){s=u.e.r+1;f.e.r=s+r.length-1+n}}else{if(s==-1){s=0;f.e.r=r.length-1+n}}var h=a.header||[],p=0;r.forEach(function(e,r){G(e).forEach(function(t){if((p=h.indexOf(t))==-1)h[p=h.length]=t;var o=e[t];var f="z";var u="";var d=wt({c:l+p,r:s+r+n});c=Yl(i,d);if(o&&typeof o==="object"&&!(o instanceof Date)){i[d]=o}else{if(typeof o=="number")f="n";else if(typeof o=="boolean")f="b";else if(typeof o=="string")f="s";else if(o instanceof Date){f="d";if(!a.cellDates){f="n";o=Q(o)}u=a.dateNF||N._table[14]}else if(o===null&&a.nullError){f="e";o=0}if(!c)i[d]=c={t:f,v:o};else{c.t=f;c.v=o;delete c.w;delete c.R;if(u)c.z=u}if(u)c.z=u}})});f.e.c=Math.max(f.e.c,l+h.length-1);var d=ft(s);if(n)for(p=0;p=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 Kl(){return{SheetNames:[],Sheets:{}}}function ql(e,r,t){if(!t)for(var a=1;a<=65535;++a,t=undefined)if(e.SheetNames.indexOf(t="Sheet"+a)==-1)break;if(!t||e.SheetNames.length>=65535)throw new Error("Too many worksheets");bs(t);if(e.SheetNames.indexOf(t)>=0)throw new Error("Worksheet with name |"+t+"| already exists!");e.SheetNames.push(t);e.Sheets[t]=r}function Zl(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=Jl(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 Ql(e,r){e.z=r;return e}function eo(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function ro(e,r,t){return eo(e,"#"+r,t)}function to(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function ao(e,r,t,a){var n=typeof r!="string"?r:xt(r);var i=typeof r=="string"?r:yt(r);for(var s=n.s.r;s<=n.e.r;++s)for(var l=n.s.c;l<=n.e.c;++l){var o=Yl(e,s,l);o.t="n";o.F=i;delete o.v;if(s==n.s.r&&l==n.s.c){o.f=t;if(a)o.D=true}}return e}var no={encode_col:dt,encode_row:ft,encode_cell:wt,encode_range:yt,decode_col:pt,decode_row:ct,split_cell:gt,decode_cell:bt,decode_range:kt,format_cell:Ct,sheet_add_aoa:At,sheet_add_json:Xl,sheet_add_dom:Hs,aoa_to_sheet:Tt,json_to_sheet:Gl,table_to_sheet:Vs,table_to_book:Xs,sheet_to_csv:jl,sheet_to_txt:Hl,sheet_to_json:zl,sheet_to_html:js.from_sheet,sheet_to_formulae:Vl,sheet_to_row_object_array:zl,sheet_get_cell:Yl,book_new:Kl,book_append_sheet:ql,book_set_sheet_visibility:Zl,cell_set_number_format:Ql,cell_set_hyperlink:eo,cell_set_internal_link:ro,cell_add_comment:to,sheet_set_array_formula:ao,consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};if(typeof parse_xlscfb!=="undefined")e.parse_xlscfb=parse_xlscfb;e.parse_zip=fl;e.read=Sl;e.readFile=Cl;e.readFileSync=Cl;e.write=Pl;e.writeFile=Rl;e.writeFileSync=Rl;e.writeFileAsync=Bl;e.utils=no;e.writeXLSX=Nl;e.writeFileXLSX=Ll;e.SSF=N;if(typeof __stream!=="undefined")e.stream=__stream;if(typeof W!=="undefined")e.CFB=W;if(typeof require!=="undefined"){var io=undefined;if((io||{}).Readable)set_readable(io.Readable)}}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.18.5";var r=1200,t=1252;var a=[874,932,936,949,950,1250,1251,1252,1253,1254,1255,1256,1257,1258,1e4];var n={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(a.indexOf(e)==-1)return;t=n[0]=e};function s(){i(1252)}var l=function(e){r=e;i(e)};function o(){l(1200);s()}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 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 h=function(e){var r=e.charCodeAt(0),t=e.charCodeAt(1);if(r==255&&t==254)return f(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 xc(e){return String.fromCharCode(e)};var d=function Sc(e){return String.fromCharCode(e)};var m=null;var v=true;var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function b(e){var r="";var t=0,a=0,n=0,i=0,s=0,l=0,o=0;for(var c=0;c>2;a=e.charCodeAt(c++);s=(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+=g.charAt(i)+g.charAt(s)+g.charAt(l)+g.charAt(o)}return r}function w(e){var r="";var t=0,a=0,n=0,i=0,s=0,l=0,o=0;e=e.replace(/[^\w\+\/\=]/g,"");for(var c=0;c>4;r+=String.fromCharCode(t);l=g.indexOf(e.charAt(c++));a=(s&15)<<4|l>>2;if(l!==64){r+=String.fromCharCode(a)}o=g.indexOf(e.charAt(c++));n=(l&3)<<6|o;if(o!==64){r+=String.fromCharCode(n)}}return r}var y=function(){return typeof Buffer!=="undefined"&&typeof undefined!=="undefined"&&typeof{}!=="undefined"&&!!{}.node}();var k=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(){}}();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 S(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 Cc(e){if(y)return k(e,"binary");return e.split("").map(function(e){return e.charCodeAt(0)&255})};function _(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 A(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 l=e.charCodeAt(++i)&1023;n[t++]=240|s>>8&7;n[t++]=128|s>>2&63;n[t++]=128|l>>6&15|(s&3)<<4;n[t++]=128|l&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 O=/\u0000/g,M=/[\u0001-\u0006]/g;function N(e){var r="",t=e.length-1;while(t>=0)r+=e.charAt(t--);return r}function P(e,r){var t=""+e;return t.length>=r?t:br("0",r-t.length)+t}function I(e,r){var t=""+e;return t.length>=r?t:br(" ",r-t.length)+t}function R(e,r){var t=""+e;return t.length>=r?t:t+br(" ",r-t.length)}function L(e,r){var t=""+Math.round(e);return t.length>=r?t:br("0",r-t.length)+t}function B(e,r){var t=""+e;return t.length>=r?t:br("0",r-t.length)+t}var z=Math.pow(2,32);function U(e,r){if(e>z||e<-z)return L(e,r);var t=Math.round(e);return B(t,r)}function W(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 j=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var H=[["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 V(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 X={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 G={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 Y={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 J(e,r,t){var a=e<0?-1:1;var n=e*a;var i=0,s=1,l=0;var o=1,c=0,f=0;var u=Math.floor(n);while(cr){if(c>r){f=o;l=i}else{f=c;l=s}}if(!t)return[0,a*l,f];var h=Math.floor(a*l/f);return[h,a*l-h*f,f]}function K(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 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){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=le(o,s)}l.y=s[0];l.m=s[1];l.d=s[2];l.S=n%60;n=Math.floor(n/60);l.M=n%60;n=Math.floor(n/60);l.H=n;l.q=i;return l}var q=new Date(1899,11,31,0,0,0);var Z=q.getTime();var Q=new Date(1900,2,1,0,0,0);function ee(e,r){var t=e.getTime();if(r)t-=1461*24*60*60*1e3;else if(e>=Q)t+=24*60*60*1e3;return(t-(Z+(e.getTimezoneOffset()-q.getTimezoneOffset())*6e4))/(24*60*60*1e3)}function re(e){return e.indexOf(".")==-1?e:e.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function te(e){if(e.indexOf("E")==-1)return e;return e.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}function ae(e){var r=e<0?12:11;var t=re(e.toFixed(12));if(t.length<=r)return t;t=e.toPrecision(10);if(t.length<=r)return t;return e.toExponential(5)}function ne(e){var r=re(e.toFixed(11));return r.length>(e<0?12:11)||r==="0"||r==="-0"?e.toPrecision(6):r}function ie(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=ae(e);else if(r===10)t=e.toFixed(10).substr(0,12);else t=ne(e);return re(te(t.toUpperCase()))}function se(e,r){switch(typeof e){case"string":return e;case"boolean":return e?"TRUE":"FALSE";case"number":return(e|0)===e?e.toString(10):ie(e);case"undefined":return"";case"object":if(e==null)return"";if(e instanceof Date)return Be(14,ee(e,r&&r.date1904),r);}throw new Error("unsupported value in General format: "+e)}function le(e,r){r[0]-=581;var t=e.getDay();if(e<60)t=(t+6)%7;return t}function oe(e,r,t,a){var n="",i=0,s=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 H[t.m-1][1];case 5:return H[t.m-1][0];default:return H[t.m-1][2];}break;case 100:switch(r.length){case 1:;case 2:o=t.d;c=r.length;break;case 3:return j[t.q][0];default:return j[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 P(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=P(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;}c=r.length===3?1:2;break;case 101:o=l;c=1;break;}var f=c>0?P(o,c):"";return f}function ce(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 fe=/%/g;function ue(e,r,t){var a=r.replace(fe,""),n=r.length-a.length;return De(e,a,t*Math.pow(10,2*n))+br("%",n)}function he(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 pe(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"-"+pe(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 de=/# (\?+)( ?)\/( ?)(\d+)/;function me(e,r,t){var a=parseInt(e[4],10),n=Math.round(r*a),i=Math.floor(n/a);var s=n-i*a,l=a;return t+(i===0?"":""+i)+" "+(s===0?br(" ",e[1].length+1+e[4].length):I(s,e[1].length)+e[2]+"/"+e[3]+P(l,e[4].length))}function ve(e,r,t){return t+(r===0?"":""+r)+br(" ",e[1].length+2+e[4].length)}var ge=/^#*0*\.([0#]+)/;var be=/\).*[0#]/;var we=/\(###\) ###\\?-####/;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 ke(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 Se(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 _e(e,r,t){if(e.charCodeAt(0)===40&&!r.match(be)){var a=r.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(t>=0)return _e("n",a,t);return"("+_e("n",a,-t)+")"}if(r.charCodeAt(r.length-1)===44)return he(e,r,t);if(r.indexOf("%")!==-1)return ue(e,r,t);if(r.indexOf("E")!==-1)return pe(r,t);if(r.charCodeAt(0)===36)return"$"+_e(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,l,o=Math.abs(t),c=t<0?"-":"";if(r.match(/^00+$/))return c+U(o,r.length);if(r.match(/^[#?]+$/)){n=U(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(de))return me(i,o,c);if(r.match(/^#+0+$/))return c+U(o,r.length-r.indexOf("0"));if(i=r.match(ge)){n=ke(t,i[1].length).replace(/^([^\.]+)$/,"$1."+ye(i[1])).replace(/\.$/,"."+ye(i[1])).replace(/\.(\d*)$/,function(e,r){return"."+r+br("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 c+ke(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 c+ce(U(o,0));if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+_e(e,r,-t):ce(""+(Math.floor(t)+Se(t,i[1].length)))+"."+P(xe(t,i[1].length),i[1].length)}if(i=r.match(/^#,#*,#0/))return _e(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=N(_e(e,r.replace(/[\\-]/g,""),t));s=0;return N(N(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 Ae(e,r,t);if(r.indexOf("%")!==-1)return Te(e,r,t);if(r.indexOf("E")!==-1)return Ee(r,t);if(r.charCodeAt(0)===36)return"$"+Fe(e,r.substr(r.charAt(1)==" "?2:1),t);var n;var i,s,l,o=Math.abs(t),c=t<0?"-":"";if(r.match(/^00+$/))return c+P(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(de))return ve(i,o,c);if(r.match(/^#+0+$/))return c+P(o,r.length-r.indexOf("0"));if(i=r.match(ge)){n=(""+t).replace(/^([^\.]+)$/,"$1."+ye(i[1])).replace(/\.$/,"."+ye(i[1]));n=n.replace(/\.(\d*)$/,function(e,r){return"."+r+br("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 c+(""+o).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,i[1].length?"0.":".")}if(i=r.match(/^#{1,3},##0(\.?)$/))return c+ce(""+o);if(i=r.match(/^#,##0\.([#0]*0)$/)){return t<0?"-"+Fe(e,r,-t):ce(""+t)+"."+br("0",i[1].length)}if(i=r.match(/^#,#*,#0/))return Fe(e,r.replace(/^#,#*,/,""),t);if(i=r.match(/^([0#]+)(\\?-([0#]+))+$/)){n=N(Fe(e,r.replace(/[\\-]/g,""),t));s=0;return N(N(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 Pe(e,r,t,a){var n=[],i="",s=0,l="",o="t",c,f,u;var h="H";while(s=12?"P":"A";m.t="T";h="h";s+=3}else if(e.substr(s,5).toUpperCase()==="AM/PM"){if(c!=null)m.v=c.H>=12?"PM":"AM";m.t="T";s+=5;h="h"}else if(e.substr(s,5).toUpperCase()==="上午/下午"){if(c!=null)m.v=c.H>=12?"下午":"上午";m.t="T";s+=5;h="h"}else{m.t="t";++s}if(c==null&&m.t==="T")return"";n[n.length]=m;o=l;break;case"[":i=l;while(e.charAt(s++)!=="]"&&s-1){i=(i.match(/\$([^-\[\]]*)/)||[])[1]||"$";if(!Ne(e))n[n.length]={t:"t",v:i}}break;case".":if(c!=null){i=l;while(++s-1)i+=l;n[n.length]={t:"n",v:i};break;case"?":i=l;while(e.charAt(++s)===l)i+=l;n[n.length]={t:l,v:i};o=l;break;case"*":++s;if(e.charAt(s)==" "||e.charAt(s)=="*")++s;break;case"(":;case")":n[n.length]={t:a===1?"t":l,v:l};++s;break;case"1":;case"2":;case"3":;case"4":;case"5":;case"6":;case"7":;case"8":;case"9":i=l;while(s-1)i+=e.charAt(s);n[n.length]={t:"D",v:i};break;case" ":n[n.length]={t:l,v:l};++s;break;case"$":n[n.length]={t:"t",v:"$"};++s;break;default:if(",$-+/():!^&'~{}<>=€acfijklopqrtuvwxzP".indexOf(l)===-1)throw new Error("unrecognized character "+l+" in "+e);n[n.length]={t:"t",v:l};++s;break;}}var v=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=h;o="h";if(v<1)v=1;break;case"s":if(b=n[s].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[s].t;break;case"m":if(o==="s"){n[s].t="M";if(v<2)v=2}break;case"X":break;case"Z":if(v<1&&n[s].v.match(/[Hh]/))v=1;if(v<2&&n[s].v.match(/[Mm]/))v=2;if(v<3&&n[s].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="",y;for(s=0;s0){if(w.charCodeAt(0)==40){x=r<0&&w.charCodeAt(0)===45?-r:r;S=De("n",w,x)}else{x=r<0&&a>1?-r:r;S=De("n",w,x);if(x<0&&n[0]&&n[0].t=="t"){S=S.substr(1);n[0].v="-"+n[0].v}}y=S.length-1;var C=n.length;for(s=0;s-1){C=s;break}var _=n.length;if(C===n.length&&S.indexOf("E")===-1){for(s=n.length-1;s>=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;if(y>=n[s].v.length-1){y-=n[s].v.length;n[s].v=S.substr(y+1,n[s].v.length)}else if(y<0)n[s].v="";else{n[s].v=S.substr(0,y+1);y=-1}n[s].t="t";_=s}if(y>=0&&_=0;--s){if(n[s]==null||"n?".indexOf(n[s].t)===-1)continue;f=n[s].v.indexOf(".")>-1&&s===C?n[s].v.indexOf(".")-1:n[s].v.length-1;k=n[s].v.substr(f+1);for(;f>=0;--f){if(y>=0&&(n[s].v.charAt(f)==="0"||n[s].v.charAt(f)==="#"))k=S.charAt(y--)+k}n[s].v=k;n[s].t="t";_=s}if(y>=0&&_-1&&s===C?n[s].v.indexOf(".")+1:0;k=n[s].v.substr(0,f);for(;f-1){x=a>1&&r<0&&s>0&&n[s-1].v==="-"?-r:r;n[s].v=De(n[s].t,n[s].v,x);n[s].t="t"}var A="";for(s=0;s!==n.length;++s)if(n[s]!=null)A+=n[s].v;return A}var Ie=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;function Re(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 Le(e,r){var t=Oe(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(Ie);var l=t[1].match(Ie);return Re(r,s)?[a,t[0]]:Re(r,l)?[a,t[1]]:[a,t[s!=null&&l!=null?2:1]]}return[a,i]}function Be(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:X)[e];if(a==null)a=t.table&&t.table[G[e]]||X[G[e]];if(a==null)a=Y[e]||"General";break;}if(W(a,0))return se(r,t);if(r instanceof Date)r=ee(r,t.date1904);var n=Le(a,r);if(W(n[1]))return se(r,t);if(r===true)r="TRUE";else if(r===false)r="FALSE";else if(r===""||r==null)return"";return Pe(n[1],r,t,n[0])}function $e(e,r){if(typeof r!="number"){r=+r||-1;for(var t=0;t<392;++t){if(X[t]==undefined){if(r<0)r=t;continue}if(X[t]==e){r=t;break}}if(r<0)r=391}X[r]=e;return r}function ze(e){for(var r=0;r!=392;++r)if(e[r]!==undefined)$e(e[r],r)}function Ue(){X=V()}var We={format:Be,load:$e,_table:X,load_table:ze,parse_date_code:K,is_date:Ne,get_table:function _c(){return We._table=X}};var je={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 He=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;function Ve(e){var r=typeof e=="number"?X[e]:e;r=r.replace(He,"(\\d+)");return new RegExp("^"+r+"$")}function Xe(e,r,t){var a=-1,n=-1,i=-1,s=-1,l=-1,o=-1;(r.match(He)||[]).forEach(function(e,r){var c=parseInt(t[r+1],10);switch(e.toLowerCase().charAt(0)){case"y":a=c;break;case"d":i=c;break;case"h":s=c;break;case"s":o=c;break;case"m":if(s>=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"+(i>=1?i:1)).slice(-2);if(c.length==7)c="0"+c;if(c.length==8)c="20"+c;var f=("00"+(s>=0?s:0)).slice(-2)+":"+("00"+(l>=0?l:0)).slice(-2)+":"+("00"+(o>=0?o:0)).slice(-2);if(s==-1&&l==-1&&o==-1)return c;if(a==-1&&n==-1&&i==-1)return f;return c+"T"+f}var Ge=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],l=n[2],o=n[3],c=n[4];var f=n[5],u=n[6],h=n[7],p=n[8],d=n[9];var m=n[10],v=n[11],g=n[12],b=n[13],w=n[14];function y(e,r){var a=r^-1;for(var n=0,i=e.length;n>>8^t[(a^e.charCodeAt(n++))&255];return~a}function k(e,r){var a=r^-1,n=e.length-15,y=0;for(;y>8&255]^g[e[y++]^a>>16&255]^v[e[y++]^a>>>24]^m[e[y++]]^d[e[y++]]^p[e[y++]]^h[e[y++]]^u[e[y++]]^f[e[y++]]^c[e[y++]]^o[e[y++]]^l[e[y++]]^s[e[y++]]^i[e[y++]]^t[e[y++]];n+=15;while(y>>8^t[(a^e[y++])&255];return~a}function x(e,r){var a=r^-1;for(var n=0,i=e.length,s=0,l=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;l=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|l>>6&15|(s&3)<<4))&255];a=a>>>8^t[(a^(128|l&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=y;e.buf=k;e.str=x;return e}();var Ye=function Ac(){var e={};e.version="1.2.1";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 l=r&63;r>>>=6;a.setHours(r);a.setMinutes(l);a.setSeconds(s<<1);return a}function s(e){ca(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;}e.l=i;r[a]=s}return r}var l;function o(){return l||(l=undefined)}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 ze(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 l=0;var o=0;var c=[];var d=e.slice(0,512);ca(d,0);var v=f(d);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){d=e.slice(0,a);ca(d,28)}var b=e.slice(0,a);u(d,t);var w=d._R(4,"i");if(t===3&&w!==0)throw new Error("# Directory Sectors: Expected 0 saw "+w);d.l+=4;s=d._R(4,"i");d.l+=4;d.chk("00100000","Mini Stream Cutoff Size: ");l=d._R(4,"i");n=d._R(4,"i");o=d._R(4,"i");i=d._R(4,"i");for(var y=-1,k=0;k<109;++k){y=d._R(4,"i");if(y<0)break;c[k]=y}var x=h(e,a);m(o,i,x,a,c);var S=g(x,s,c,a);S[s].name="!Directory";if(n>0&&l!==B)S[l].name="!MiniFAT";S[c[0]].name="!FAT";S.fat_addrs=c;S.ssz=a;var C={},A=[],T=[],E=[];_(s,S,x,A,n,C,T,l);p(T,E,A);A.shift();var F={FileIndex:T,FullPaths:E};if(r&&r.raw)F.raw={header:b,sectors:x};return F}function f(e){if(e[e.l]==80&&e[e.l+1]==75)return[0,0];e.chk($,"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*L,s*L+L));n-=L;s=ra(t,s*4)}if(i.length===0)return ua(0);return F(i).slice(0,e.size)}function m(e,r,t,a,n){var i=B;if(e===B){if(r!==0)throw new Error("DIFAT chain shorter than expected")}else if(e!==-1){var s=t[e],l=(a>>>2)-1;if(!s)return;for(var o=0;o=0;){n[o]=true;i[i.length]=o;s.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=ra(e[f],c)}return{nodes:i,data:Dt([s])}}function g(e,r,t,a){var n=e.length,i=[];var s=[],l=[],o=[];var c=a-1,f=0,u=0,h=0,p=0;for(f=0;f=n)h-=n;if(s[h])continue;o=[];var d=[];for(u=h;u>=0;){d[u]=true;s[u]=true;l[l.length]=u;o.push(e[u]);var m=t[Math.floor(u*4/a)];p=u*4&c;if(a<4+p)throw new Error("FAT boundary crossed: "+u+" 4 "+a);if(!e[m])break;u=ra(e[m],p);if(d[u])break}i[h]={nodes:l,data:Dt([o])}}return i}function _(e,r,t,a,n,i,s,l){var o=0,c=a.length?2:0;var f=r[e].data;var u=0,h=0,p;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=d(g,r[o].data,(r[l]||{}).data)}}if(g.content)ca(g.content,0);i[p]=g;s.push(g)}}function A(e,r){return new Date((ea(e,r+4)/1e7*Math.pow(2,32)+ea(e,r)/1e7-11644473600)*1e3)}function T(e,r){o();return c(l.readFileSync(e),r)}function E(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 c(C(w(e)),r);case"binary":return c(C(e),r);}return c(e,r)}function D(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;N(e)}function N(e){var r="Sh33tJ5";if(Ye.find(e,"/"+r))return;var t=ua(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);P(e)}function P(e,n){D(e);var i=false,s=false;for(var l=e.FullPaths.length-1;l>=0;--l){var o=e.FileIndex[l];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 c=new Date(1987,1,19),f=0;var u=Object.create?Object.create(null):{};var h=[];for(l=0;l1?1:-1;d.size=0;d.type=5}else if(m.slice(-1)=="/"){for(f=l+1;f=h.length?-1:f;for(f=l+1;f=h.length?-1:f;d.type=1}else{if(t(e.FullPaths[l+1]||"")==t(m))d.R=l+1;d.type=2}}}function I(e,r){var t=r||{};if(t.fileType=="mad")return Ue(e,t);P(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(i<4096)r+=i+63>>6;else t+=i+511>>9}}var s=e.FullPaths.length+3>>2;var l=r+7>>3;var o=r+127>>7;var c=l+t+s+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,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=ua(a[7]<<9);var i=0,s=0;{for(i=0;i<8;++i)n._W(1,z[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:B);n._W(4,a[3]);n._W(-4,a[1]?a[0]-1:B);n._W(4,a[1]);for(i=0;i<109;++i)n._W(-4,i>9)}l(a[6]+7>>3);while(n.l&511)n._W(-4,W.ENDOFCHAIN);s=i=0;for(o=0;o=4096)continue;f.start=s;l(c+63>>6)}while(n.l&511)n._W(-4,W.ENDOFCHAIN);for(i=0;i=4096){n.l=f.start+1<<9;if(y&&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(y&&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 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 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,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 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 pe(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 de(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=S(a);if(e.copy)e.copy(i);else for(;n>a-u;for(s=(1<=0;--s)r[l|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=fe(t,n,+!!(i+l==r.length)+2);var o=0;while(l-- >0){var c=r[i];o=(o<<5^c)&32767;var f=-1,u=0;if(f=s[o]){f|=i&~32767;if(f>i)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){pe(t,n,u-q[c]);n+=h}c=e[i-f];n=he(t,n,re[c]>>3);n-=3;var p=c<4?0:c-2>>1;if(p>0){pe(t,n,i-f-Z[c]);n+=p}for(var d=0;d>8-d;for(var m=(1<<7-d)-1;m>=0;--m)Ce[p|m<>>=3){case 16:i=3+ne(e,r);r+=2;p=v[v.length-1];while(i-- >0)v.push(p);break;case 17:i=3+ie(e,r);r+=3;while(i-- >0)v.push(0);break;case 18:i=11+oe(e,r);r+=7;while(i-- >0)v.push(0);break;default:v.push(p);if(o>>0;var l=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 c=e[t>>>3]|e[(t>>>3)+1]<<8;t+=32;if(c>0){if(!r&&s0){n[i++]=e[t>>>3];t+=8}}continue}else if(a>>1==1){l=9;o=5}else{t=Te(e,t);l=_e;o=Ae}for(;;){if(!r&&s>>1==1?ge[f]:xe[f];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 p=i+q[u];if(h>0){p+=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 d=u<4?0:u-2>>1;var m=Z[u];if(d>0){m+=ce(e,t,d);t+=d}if(!r&&s>>3];return[n.slice(0,i),t+7>>>3]}function Fe(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;ca(t,0);var a=[],n=[];var i={FileIndex:a,FullPaths:n};D(i,{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(i.slice(0,t.length)==t)break}}var s=(a[1]||"").match(/boundary="(.*?)"/);if(!s)throw new Error("MAD cannot find boundary");var l="--"+(s[1]||"");var o=[],c=[];var f={FileIndex:o,FullPaths:c};D(f);var u,h=0;for(n=0;n=32&&p<128)++u;var m=u>=h*4/5;n.push(a);n.push("Content-Location: "+(t.root||"file:///C:/SheetJS/")+s);n.push("Content-Transfer-Encoding: "+(m?"quoted-printable":"base64"));n.push("Content-Type: "+Ie(l,s));n.push("");n.push(m?Le(f):Re(f))}n.push(a+"--\r\n");return n.join("\r\n")}function We(e){var r={};D(r,e);return r}function je(e,r,t,n){var i=n&&n.unsafe;if(!i)D(e);var s=!i&&Ye.find(e,r);if(!s){var l=e.FullPaths[0];if(r.slice(0,l.length)==l)l=r;else{if(l.slice(-1)!="/")l+="/";l=(l+r).replace("//","/")}s={name:a(r),type:2};e.FileIndex.push(s);e.FullPaths.push(l);if(!i)Ye.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 He(e,r){D(e);var t=Ye.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 hr=new Date("2017-02-19T19:06:09.000Z");var pr=isNaN(hr.getFullYear())?new Date("2/19/17"):hr;var dr=pr.getFullYear()==2017;function mr(e,r){var t=new Date(e);if(dr){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(pr.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 vr(e,r){if(y&&Buffer.isBuffer(e)){if(r){if(e[0]==255&&e[1]==254)return ct(e.slice(2).toString("utf16le"));if(e[1]==254&&e[2]==255)return ct(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 ct(new TextDecoder("utf-16le").decode(e.slice(2)));if(e[0]==254&&e[1]==255)return ct(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 gr(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]=gr(e[t]);return r}function br(e,r){var t="";while(t.length3&&yr.indexOf(s)==-1)return t}else if(s.match(/[a-z]/))return t;if(a<0||a>8099)return t;if((n>0||i>1)&&a!=101)return r;if(e.match(/[^-0-9:,\/\\]/))return t;return r}var xr=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 l=1;l\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g;var Br=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/gm,$r=/<[^>]*>/g;var zr=Rr.match(Br)?Br:$r;var Ur=/<\w*:/,Wr=/<(\/?)\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(Lr),l=0,o="",c=0,f="",u="",h=1;if(s)for(c=0;c!=s.length;++c){u=s[c];for(i=0;i!=u.length;++i)if(u.charCodeAt(i)===61)break;f=u.slice(0,i).trim();while(u.charCodeAt(i+1)==32)++i;h=(n=u.charCodeAt(i+1))==34||n==39?1:0;o=u.slice(i+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 p=(l===5&&f.slice(0,5)==="xmlns"?"xmlns":"")+f.slice(l+1);if(a[p]&&f.slice(l-3,l)=="ext")continue;a[p]=o;if(!t)a[p.toLowerCase()]=o}}return a}function Hr(e){return e.replace(Wr,"<$1")}var Vr={""":'"',"'":"'",">":">","<":"<","&":"&"};var Xr=tr(Vr);var Gr=function(){var e=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/gi,r=/_x([\da-fA-F]{4})_/gi;return 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))}}();var Yr=/[&<>'"]/g,Jr=/[\u0000-\u0008\u000b-\u001f]/g;function Kr(e){var r=e+"";return r.replace(Yr,function(e){return Xr[e]}).replace(Jr,function(e){return"_x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+"_"})}function qr(e){return Kr(e).replace(/ /g,"_x0020_")}var Zr=/[\u0000-\u001f]/g;function Qr(e){var r=e+"";return r.replace(Yr,function(e){return Xr[e]}).replace(/\n/g,"
").replace(Zr,function(e){return"&#x"+("000"+e.charCodeAt(0).toString(16)).slice(-4)+";"})}function et(e){var r=e+"";return r.replace(Yr,function(e){return Xr[e]}).replace(Zr,function(e){return"&#x"+e.charCodeAt(0).toString(16).toUpperCase()+";"})}var rt=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 tt(e){return e.replace(/(\r\n|[\r\n])/g," ")}function at(e){switch(e){case 1:;case true:;case"1":;case"true":;case"TRUE":return true;default:return false;}}function nt(e){var r="",t=0,a=0,n=0,i=0,s=0,l=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++);l=((a&7)<<18|(n&63)<<12|(i&63)<<6|s&63)-65536;r+=String.fromCharCode(55296+(l>>>10&1023));r+=String.fromCharCode(56320+(l&1023))}return r}function it(e){var r=x(2*e.length),t,a,n=1,i=0,s=0,l;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 st(e){return k(e,"binary").toString("utf8")}var lt="foo bar baz☃🍣";var ot=y&&(st(lt)==nt(lt)&&st||it(lt)==nt(lt)&&it)||nt;var ct=y?function(e){return k(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 ft=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 ut=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 pt=/<\/?(?:vt:)?variant>/g,dt=/<(?:vt:)([^>]*)>([\s\S]*)"+r+""}function bt(e){return er(e).map(function(r){return" "+r+'="'+e[r]+'"'}).join("")}function wt(e,r,t){return"<"+e+(t!=null?bt(t):"")+(r!=null?(r.match(vt)?' xml:space="preserve"':"")+">"+r+""}function yt(e,r){try{return e.toISOString().replace(/\.\d*/,"")}catch(t){if(r)throw t}return""}function kt(e,r){switch(typeof e){case"string":var t=wt("vt:lpwstr",Kr(e));if(r)t=t.replace(/"/g,"_x0022_");return t;case"number":return wt((e|0)==e?"vt:i4":"vt:r8",Kr(String(e)));case"boolean":return wt("vt:bool",e?"true":"false");}if(e instanceof Date)return wt("vt:filetime",yt(e));throw new Error("Unable to serialize "+e)}function xt(e){if(y&&Buffer.isBuffer(e))return e.toString("utf8");if(typeof e==="string")return e;if(typeof Uint8Array!=="undefined"&&e instanceof Uint8Array)return ot(A(E(e)));throw new Error("Bad input format: expected Buffer or string")}var St=/<(\/?)([^\s?>:\/]+)(?:[\s?:\/][^>]*)?>/gm;var Ct={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 _t=["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 At={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 Tt(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 Et(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 Ft=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:k(e)})):Ft(e)}:Ft;var Ot=function(e,r,t){var a=[];for(var n=r;n0?Rt(e,r+4,r+4+t-1):""};var Bt=Lt;var $t=function(e,r){var t=ea(e,r);return t>0?Rt(e,r+4,r+4+t-1):""};var zt=$t;var Ut=function(e,r){var t=2*ea(e,r);return t>0?Rt(e,r+4,r+4+t-1):""};var Wt=Ut;var jt=function Ec(e,r){var t=ea(e,r);return t>0?Mt(e,r+4,r+4+t):""};var Ht=jt;var Vt=function(e,r){var t=ea(e,r);return t>0?Rt(e,r+4,r+4+t):""};var Xt=Vt;var Gt=function(e,r){return Tt(e,r)};var Yt=Gt;var Jt=function Fc(e){return Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array};if(y){Bt=function Dc(e,r){if(!Buffer.isBuffer(e))return Lt(e,r);var t=e.readUInt32LE(r);return t>0?e.toString("utf8",r+4,r+4+t-1):""};zt=function Oc(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):""};Wt=function Mc(e,r){if(!Buffer.isBuffer(e))return Ut(e,r);var t=2*e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t-1)};Ht=function Nc(e,r){if(!Buffer.isBuffer(e))return jt(e,r);var t=e.readUInt32LE(r);return e.toString("utf16le",r+4,r+4+t)};Xt=function Pc(e,r){if(!Buffer.isBuffer(e))return Vt(e,r);var t=e.readUInt32LE(r);return e.toString("utf8",r+4,r+4+t)};Yt=function Ic(e,r){if(Buffer.isBuffer(e))return e.readDoubleLE(r);return Gt(e,r)};Jt=function Rc(e){return Buffer.isBuffer(e)||Array.isArray(e)||typeof Uint8Array!=="undefined"&&e instanceof Uint8Array}}function Kt(){Mt=function(e,r,t){return $cptable.utils.decode(1200,e.slice(r,t)).replace(O,"")};Rt=function(e,r,t){return $cptable.utils.decode(65001,e.slice(r,t))};Bt=function(e,r){var a=ea(e,r);return a>0?$cptable.utils.decode(t,e.slice(r+4,r+4+a-1)):""};zt=function(e,t){var a=ea(e,t);return a>0?$cptable.utils.decode(r,e.slice(t+4,t+4+a-1)):""};Wt=function(e,r){var t=2*ea(e,r);return t>0?$cptable.utils.decode(1200,e.slice(r+4,r+4+t-1)):""};Ht=function(e,r){var t=ea(e,r);return t>0?$cptable.utils.decode(1200,e.slice(r+4,r+4+t)):""};Xt=function(e,r){var t=ea(e,r);return t>0?$cptable.utils.decode(65001,e.slice(r+4,r+4+t)):""}}if(typeof $cptable!=="undefined")Kt();var qt=function(e,r){return e[r]};var Zt=function(e,r){return e[r+1]*(1<<8)+e[r]};var Qt=function(e,r){var t=e[r+1]*(1<<8)+e[r];return t<32768?t:(65535-t+1)*-1};var ea=function(e,r){return e[r+3]*(1<<24)+(e[r+2]<<16)+(e[r+1]<<8)+e[r]};var ra=function(e,r){return e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]};var ta=function(e,r){return e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3]};function aa(e,t){var a="",n,i,s=[],l,o,c,f;switch(t){case"dbcs":f=this.l;if(y&&Buffer.isBuffer(this))a=this.slice(this.l,this.l+2*e).toString("utf16le");else for(c=0;c0?ra:ta)(this,this.l);this.l+=4;return n}else{i=ea(this,this.l);this.l+=4}return i;case 8:;case-8:if(t==="f"){if(e==8)i=Yt(this,this.l);else i=Yt([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:a=Pt(this,this.l,e);break;};}this.l+=e;return a}var na=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 ia=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 sa=function(e,r,t){e[t]=r&255;e[t+1]=r>>>8&255};function la(e,r,a){var n=0,i=0;if(a==="dbcs"){for(i=0;i!=r.length;++i)sa(this,r.charCodeAt(i),this.l+2*i);n=2*r.length}else if(a==="sbcs"){if(typeof $cptable!=="undefined"&&t==874){for(i=0;i!=r.length;++i){var s=$cptable.utils.encode(t,r.charAt(i));this[this.l+i]=s[0]}}else{r=r.replace(/[^\x00-\x7F]/g,"_");for(i=0;i!=r.length;++i)this[this.l+i]=r.charCodeAt(i)&255}n=r.length}else if(a==="hex"){for(;i>8}while(this.l>>=8;this[this.l+1]=r&255;break;case 3:n=3;this[this.l]=r&255;r>>>=8;this[this.l+1]=r&255;r>>>=8;this[this.l+2]=r&255;break;case 4:n=4;na(this,r,this.l);break;case 8:n=8;if(a==="f"){Et(this,r,this.l);break};case 16:break;case-4:n=4;ia(this,r,this.l);break;}this.l+=n;return this}function oa(e,r){var t=Pt(this,this.l,e.length>>1);if(t!==e)throw new Error(r+"Expected "+e+" saw "+t);this.l+=e.length>>1}function ca(e,r){e.l=r;e._R=aa;e.chk=oa;e._W=la}function fa(e,r){e.l+=r}function ua(e){var r=x(e);ca(r,0);return r}function ha(e,r,t){if(!e)return;var a,n,i;ca(e,e.l||0);var s=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 i=function f(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 l=0;l!=4;++l){if(a>=128){s._W(1,(a&127)+128);a>>=7}else{s._W(1,a);break}}if(a>0&&Jt(t))e.push(t)}function ma(e,r,t){var a=gr(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 va(e,r,t){var a=gr(e);a.s=ma(a.s,r.s,t);a.e=ma(a.e,r.s,t);return a}function ga(e,r){if(e.cRel&&e.c<0){e=gr(e);while(e.c<0)e.c+=r>8?16384:256}if(e.rRel&&e.r<0){e=gr(e);while(e.r<0)e.r+=r>8?1048576:r>5?65536:16384}var t=Fa(e);if(!e.cRel&&e.cRel!=null)t=_a(t);if(!e.rRel&&e.rRel!=null)t=ka(t);return t}function ba(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?"":"$")+Ca(e.s.c)+":"+(e.e.cRel?"":"$")+Ca(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?"":"$")+ya(e.s.r)+":"+(e.e.rRel?"":"$")+ya(e.e.r)}}return ga(e.s,r.biff)+":"+ga(e.e,r.biff)}function wa(e){return parseInt(xa(e),10)-1}function ya(e){return""+(e+1)}function ka(e){return e.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function xa(e){return e.replace(/\$(\d+)$/,"$1")}function Sa(e){var r=Aa(e),t=0,a=0;for(;a!==r.length;++a)t=26*t+r.charCodeAt(a)-64;return t-1}function Ca(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 _a(e){return e.replace(/^([A-Z])/,"$$$1")}function Aa(e){return e.replace(/^\$([A-Z])/,"$1")}function Ta(e){return e.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function Ea(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 Fa(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 Da(e){var r=e.indexOf(":");if(r==-1)return{s:Ea(e),e:Ea(e)};return{s:Ea(e.slice(0,r)),e:Ea(e.slice(r+1))}}function Oa(e,r){if(typeof r==="undefined"||typeof r==="number"){return Oa(e.s,e.e)}if(typeof e!=="string")e=Fa(e);if(typeof r!=="string")r=Fa(r);return e==r?e:e+":"+r}function Ma(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 Na(e,r){var t=e.t=="d"&&r instanceof Date;if(e.z!=null)try{return e.w=Be(e.z,t?sr(r):r)}catch(a){}try{return e.w=Be((e.XF||{}).numFmtId||(t?14:0),t?sr(r):r)}catch(a){return""+r}}function Pa(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 ln[e.v]||e.v;if(r==undefined)return Na(e,e.v);return Na(e,r)}function Ia(e,r){var t=r&&r.sheet?r.sheet:"Sheet1";var a={};a[t]=e;return{SheetNames:[t],Sheets:a}}function Ra(e,r,t){var a=t||{};var n=e?Array.isArray(e):a.dense;if(m!=null&&n==null)n=m;var i=e||(n?[]:{});var s=0,l=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var o=typeof a.origin=="string"?Ea(a.origin):a.origin;s=o.r;l=o.c}if(!i["!ref"])i["!ref"]="A1:A1"}var c={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(i["!ref"]){var f=Ma(i["!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(s==-1)c.e.r=s=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 p={v:r[u][h]};var d=s+u,v=l+h;if(c.s.r>d)c.s.r=d;if(c.s.c>v)c.s.c=v;if(c.e.r>16&255,e>>8&255,e&255]})}var nn=an([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,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);var sn=gr(nn);var ln={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var on={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255};var cn={"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 fn={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 un(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function hn(e){var r=un();if(!e||!e.match)return r;var t={};(e.match(zr)||[]).forEach(function(e){var a=jr(e);switch(a[0].replace(Ur,"<")){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 pn(e,r){var t=nr(cn);var a=[],n;a[a.length]=Rr;a[a.length]=wt("Types",null,{xmlns:Ct.CT,"xmlns:xsd":Ct.xsd,"xmlns:xsi":Ct.xsi});a=a.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 wt("Default",null,{Extension:e[0],ContentType:e[1]})}));var i=function(t){if(e[t]&&e[t].length>0){n=e[t][0];a[a.length]=wt("Override",null,{PartName:(n[0]=="/"?"":"/")+n,ContentType:fn[t][r.bookType]||fn[t]["xlsx"]})}};var s=function(t){(e[t]||[]).forEach(function(e){a[a.length]=wt("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:fn[t][r.bookType]||fn[t]["xlsx"]})})};var l=function(r){(e[r]||[]).forEach(function(e){a[a.length]=wt("Override",null,{PartName:(e[0]=="/"?"":"/")+e,ContentType:t[r][0]})})};i("workbooks");s("sheets");s("charts");l("themes");["strs","styles"].forEach(i);["coreprops","extprops","custprops"].forEach(l);l("vba");l("comments");l("threadedcomments");l("drawings");s("metadata");l("people");if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var dn={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",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};function mn(e){var r=e.lastIndexOf("/");return e.slice(0,r+1)+"_rels/"+e.slice(r+1)+".rels"}function vn(e,r){var t={"!id":{}};if(!e)return t;if(r.charAt(0)!=="/"){r="/"+r}var a={};(e.match(zr)||[]).forEach(function(e){var n=jr(e);if(n[0]==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function bn(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([dn.HLINK,dn.XPATH,dn.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 wn="application/vnd.oasis.opendocument.spreadsheet";function yn(e,r){var t=xt(e);var a;var n;while(a=St.exec(t))switch(a[3]){case"manifest":break;case"file-entry":n=jr(a[0],false);if(n.path=="/"&&n.type!==wn)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 kn(e){var r=[Rr];r.push('\n');r.push(' \n');for(var t=0;t\n');r.push("");return r.join("")}function xn(e,r,t){return[' \n',' \n'," \n"].join("")}function Sn(e,r){return[' \n',' \n'," \n"].join("")}function Cn(e){var r=[Rr];r.push('\n');for(var t=0;t!=e.length;++t){r.push(xn(e[t][0],e[t][1]));r.push(Sn("",e[t][0]))}r.push(xn("","Document","pkg"));r.push("");return r.join("")}function _n(){return'Sheet'+"JS "+e.version+""}var An=[["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 Tn=function(){var e=new Array(An.length);for(var r=0;r]*>([\\s\\S]*?)")}return e}();function En(e){var r={};e=ot(e);for(var t=0;t0)r[a[1]]=Gr(n[1]);if(a[2]==="date"&&r[a[1]])r[a[1]]=mr(r[a[1]])}return r}function Fn(e,r,t,a,n){if(n[e]!=null||r==null||r==="")return;n[e]=r;r=Kr(r);a[a.length]=t?wt(e,r,t):gt(e,r)}function Dn(e,r){var t=r||{};var a=[Rr,wt("cp:coreProperties",null,{"xmlns:cp":Ct.CORE_PROPS,"xmlns:dc":Ct.dc,"xmlns:dcterms":Ct.dcterms,"xmlns:dcmitype":Ct.dcmitype,"xmlns:xsi":Ct.xsi})],n={};if(!e&&!t.Props)return a.join("");if(e){if(e.CreatedDate!=null)Fn("dcterms:created",typeof e.CreatedDate==="string"?e.CreatedDate:yt(e.CreatedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n);if(e.ModifiedDate!=null)Fn("dcterms:modified",typeof e.ModifiedDate==="string"?e.ModifiedDate:yt(e.ModifiedDate,t.WTF),{"xsi:type":"dcterms:W3CDTF"},a,n)}for(var i=0;i!=An.length;++i){var s=An[i];var l=t.Props&&t.Props[s[1]]!=null?t.Props[s[1]]:e?e[s[1]]:null;if(l===true)l="1";else if(l===false)l="0";else if(typeof l=="number")l=String(l);if(l!=null)Fn(s[0],l,null,a,n)}if(a.length>2){a[a.length]="";a[1]=a[1].replace("/>",">")}return a.join("")}var On=[["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 Mn=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];function Nn(e,r,t,a){var n=[];if(typeof e=="string")n=mt(e,a);else for(var i=0;i0)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=s.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=s.slice(l,l+o);break;case"Charts":;case"Diagramme":t.Chartsheets=o;t.ChartNames=s.slice(l,l+o);break;}l+=o}}function Pn(e,r,t){var a={};if(!r)r={};e=ot(e);On.forEach(function(t){var n=(e.match(ft(t[0]))||[])[1];switch(t[2]){case"string":if(n)r[t[1]]=Gr(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)Nn(a.HeadingPairs,a.TitlesOfParts,r,t);return r}function In(e){var r=[],t=wt;if(!e)e={};e.Application="SheetJS";r[r.length]=Rr;r[r.length]=wt("Properties",null,{xmlns:Ct.EXT_PROPS,"xmlns:vt":Ct.vt});On.forEach(function(a){if(e[a[1]]===undefined)return;var n;switch(a[2]){case"string":n=Kr(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""+Kr(e)+""}).join(""),{size:e.Worksheets,baseType:"lpstr"}));if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var Rn=/<[^>]+>[^<]*/g;function Ln(e,r){var t={},a="";var n=e.match(Rn);if(n)for(var i=0;i!=n.length;++i){var s=n[i],l=jr(s);switch(l[0]){case"":a=null;break;default:if(s.indexOf("");var c=o[0].slice(4),f=o[1];switch(c){case"lpstr":;case"bstr":;case"lpwstr":t[a]=Gr(f);break;case"bool":t[a]=at(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]=mr(f);break;case"cy":;case"error":t[a]=Gr(f);break;default:if(c.slice(-1)=="/")break;if(r.WTF&&typeof console!=="undefined")console.warn("Unexpected",s,c,o);}}else if(s.slice(0,2)==="2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}var $n=[2,3,48,49,131,139,140,245];var zn=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 r=tr({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 a(r,t){var a=[];var n=x(1);switch(t.type){case"base64":n=C(w(r));break;case"binary":n=C(r);break;case"buffer":;case"array":n=r;break;}ca(n,0);var i=n._R(1);var s=!!(i&136);var l=false,o=false;switch(i){case 2:break;case 3:break;case 48:l=true;s=true;break;case 49:l=true;s=true;break;case 131:break;case 139:break;case 140:o=true;break;case 245:break;default:throw new Error("DBF Unsupported Version: "+i.toString(16));}var c=0,f=521;if(i==2)c=n._R(2);n.l+=3;if(i!=2)c=n._R(4);if(c>1048576)c=1e6;if(i!=2)f=n._R(2);var u=n._R(2);var h=t.codepage||1252;if(i!=2){n.l+=16;n._R(1);if(n[n.l]!==0)h=e[n[n.l]];n.l+=1;n.l+=2}if(o)n.l+=36;var p=[],d={};var m=Math.min(n.length,i==2?521:f-10-(l?264:0));var v=o?32:11;while(n.l0){if(n[n.l]===42){n.l+=u;continue}++n.l;a[++g]=[];b=0;for(b=0;b!=p.length;++b){var y=n.slice(n.l,n.l+p[b].len);n.l+=p[b].len;ca(y,0);var k=$cptable.utils.decode(h,y);switch(p[b].type){case"C":if(k.trim().length)a[g][b]=k.replace(/\s+$/,"");break;case"D":if(k.length===8)a[g][b]=new Date(+k.slice(0,4),+k.slice(4,6)-1,+k.slice(6,8));else a[g][b]=k;break;case"F":a[g][b]=parseFloat(k.trim());break;case"+":;case"I":a[g][b]=o?y._R(-4,"i")^2147483648:y._R(4,"i");break;case"L":switch(k.trim().toUpperCase()){case"Y":;case"T":a[g][b]=true;break;case"N":;case"F":a[g][b]=false;break;case"":;case"?":break;default:throw new Error("DBF Unrecognized L:|"+k+"|");}break;case"M":if(!s)throw new Error("DBF Unexpected MEMO for type "+i.toString(16));a[g][b]="##MEMO##"+(o?parseInt(k.trim(),10):y._R(4));break;case"N":k=k.replace(/\u0000/g,"").trim();if(k&&k!=".")a[g][b]=+k||0;break;case"@":a[g][b]=new Date(y._R(-8,"f")-621356832e5);break;case"T":a[g][b]=new Date((y._R(4)-2440588)*864e5+y._R(4));break;case"Y":a[g][b]=y._R(4,"i")/1e4+y._R(4,"i")/1e4*Math.pow(2,32);break;case"O":a[g][b]=-y._R(-8,"f");break;case"B":if(l&&p[b].len==8){a[g][b]=y._R(8,"f");break};case"G":;case"P":y.l+=p[b].len;break;case"0":if(p[b].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+p[b].type);}}}if(i!=2)if(n.l=0)l(+n.codepage);if(n.type=="string")throw new Error("Cannot write DBF to JS string");var i=pa();var o=tc(e,{header:1,raw:true,cellDates:true});var c=o[0],f=o.slice(1),u=e["!cols"]||[];var h=0,p=0,d=0,m=1;for(h=0;h250)x=250;k=((u[h]||{}).DBF||{}).type;if(k=="C"){if(u[h].DBF.len>x)x=u[h].DBF.len}if(y=="B"&&k=="N"){y="N";w[h]=u[h].DBF.dec;x=u[h].DBF.len}b[h]=y=="C"||k=="N"?x:s[y]||0;m+=b[h];g[h]=y}var C=i.next(32);C._W(4,318902576);C._W(4,f.length);C._W(2,296+32*d);C._W(2,m);for(h=0;h<4;++h)C._W(4,0);C._W(4,0|(+r[t]||3)<<8);for(h=0,p=0;h":190,"?":191,"{":223};var r=new RegExp("N("+er(e).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm");var t=function(r,t){var a=e[t];return typeof a=="number"?d(a):a};var a=function(e,r,t){var a=r.charCodeAt(0)-32<<4|t.charCodeAt(0)-48;return a==59?e:d(a)};e["|"]=254;function n(e,r){switch(r.type){case"base64":return i(w(e),r);case"binary":return i(e,r);case"buffer":return i(y&&Buffer.isBuffer(e)?e.toString("binary"):A(e),r);case"array":return i(vr(e),r);}throw new Error("Unrecognized type "+r.type)}function i(e,n){var i=e.split(/[\n\r]+/),s=-1,o=-1,c=0,f=0,u=[];var h=[];var p=null;var d={},m=[],v=[],g=[];var b=0,w;if(+n.codepage>=0)l(+n.codepage);for(;c!==i.length;++c){b=0;var y=i[c].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,a).replace(r,t);var k=y.replace(/;;/g,"\0").split(";").map(function(e){return e.replace(/\u0000/g,";")});var x=k[0],S;if(y.length>0)switch(x){case"ID":break;case"E":break;case"B":break;case"O":break;case"W":break;case"P":if(k[1].charAt(0)=="P")h.push(y.slice(3).replace(/;;/g,";"));break;case"C":var C=false,_=false,A=false,T=false,E=-1,F=-1;for(f=1;f-1&&u[E][F];if(!O||!O[1])throw new Error("SYLK shared formula cannot find base");u[s][o][1]=bs(O[1],{r:s-E,c:o-F})}break;case"F":var M=0;for(f=1;f0){m[s].hpt=b;m[s].hpx=Si(b)}else if(b===0)m[s].hidden=true;break;default:if(n&&n.WTF)throw new Error("SYLK bad record "+y);}if(M<1)p=null;break;default:if(n&&n.WTF)throw new Error("SYLK bad record "+y);}}if(m.length>0)d["!rows"]=m;if(v.length>0)d["!cols"]=v;if(n&&n.sheetRows)u=u.slice(0,n.sheetRows);return[u,d]}function s(e,r){var t=n(e,r);var a=t[0],i=t[1];var s=La(a,r);er(i).forEach(function(e){s[e]=i[e]});return s}function o(e,r){return Ia(s(e,r),r)}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"+gs(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=di(r.width);if(typeof r.wpx=="number"&&!r.wch)r.wch=mi(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*xi(r.hpx)+";";if(a.length>2)e.push(a+"R"+(t+1))})}function h(e,r){var t=["ID;PWXL;N;E"],a=[];var n=Ma(e["!ref"]),i;var s=Array.isArray(e);var l="\r\n";t.push("P;PGeneral");t.push("F;P0;DG0G8;M255");if(e["!cols"])f(t,e["!cols"]);if(e["!rows"])u(t,e["!rows"]);t.push("B;Y"+(n.e.r-n.s.r+1)+";X"+(n.e.c-n.s.c+1)+";D"+[n.s.c,n.s.r,n.e.c,n.e.r].join(" "));for(var o=n.s.r;o<=n.e.r;++o){for(var h=n.s.c;h<=n.e.c;++h){var p=Fa({r:o,c:h});i=s?(e[o]||[])[h]:e[p];if(!i||i.v==null&&(!i.f||i.F))continue;a.push(c(i,e,o,h,r))}}return t.join(l)+l+a.join(l)+l+"E"+l}return{to_workbook:o,to_sheet:s,from_sheet:h}}();var Wn=function(){function e(e,t){switch(t.type){case"base64":return r(w(e),t);case"binary":return r(e,t);case"buffer":return r(y&&Buffer.isBuffer(e)?e.toString("binary"):A(e),t);case"array":return r(vr(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 l=t[i].trim().split(",");var o=l[0],c=l[1];++i;var f=t[i]||"";while((f.match(/["]/g)||[]).length&1&&i=0&&i[s].length===0)--s;var l=10,o=0;var c=0;for(;c<=s;++c){o=i[c].indexOf(" ");if(o==-1)o=i[c].length;else o++;l=Math.max(l,o)}for(c=0;c<=s;++c){n[c]=[];var f=0;e(i[c].slice(0,l).trim(),n,c,f,a);for(f=1;f<=(i[c].length-l)/10+1;++f)e(i[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 a={44:3,9:2,59:1,124:0};function n(e){var r={},n=false,i=0,s=0;for(;i0)b();i["!ref"]=Oa(s);return i}function s(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 La(r(e,t),t)}function l(e,r){var t="",a=r.type=="string"?[0,0,0,0]:Oo(e,r);switch(r.type){case"base64":t=w(e);break;case"binary":t=e;break;case"buffer":if(r.codepage==65001)t=e.toString("utf8");else if(r.codepage&&typeof $cptable!=="undefined")t=$cptable.utils.decode(r.codepage,e);else t=y&&Buffer.isBuffer(e)?e.toString("binary"):A(e);break;case"array":t=vr(e);break;case"string":t=e;break;default:throw new Error("Unrecognized type "+r.type);}if(a[0]==239&&a[1]==187&&a[2]==191)t=ot(t.slice(3));else if(r.type!="string"&&r.type!="buffer"&&r.codepage==65001)t=ot(t);else if(r.type=="binary"&&typeof $cptable!=="undefined"&&r.codepage)t=$cptable.utils.decode(r.codepage,$cptable.utils.encode(28591,t));if(t.slice(0,19)=="socialcalc:version:")return jn.to_sheet(r.type=="string"?t:ot(t),r);return s(t,r)}function o(e,r){return Ia(l(e,r),r)}function c(e){var r=[];var t=Ma(e["!ref"]),a;var n=Array.isArray(e);for(var i=t.s.r;i<=t.e.r;++i){var s=[];for(var l=t.s.c;l<=t.e.c;++l){var o=Fa({r:i,c:l});a=n?(e[i]||[])[l]:e[o];if(!a||a.v==null){s.push(" ");continue}var c=(a.w||(Pa(a),a.w)||"").slice(0,10);while(c.length<10)c+=" ";s.push(c+(l===0?" ":""))}r.push(s.join(""))}return r.join("\n")}return{to_workbook:o,to_sheet:l,from_sheet:c}}();function Vn(e,r){var t=r||{},a=!!t.WTF;t.WTF=true;try{var n=Un.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 Hn.to_workbook(e,r)}}function Xn(e){var r={},t=e.match(zr),a=0;var i=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"":i=false;break;default:if(s[0].charCodeAt(1)!==47&&!i)throw new Error("Unrecognized rich format "+s[0]);}}return r}var Gn=function(){var e=ft("t"),r=ft("rPr");function t(t){var a=t.match(e);if(!a)return{t:"s",v:""};var n={t:"s",v:Gr(a[1])};var i=t.match(r);if(i)n.s=Xn(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 Yn=function Lc(){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 Jn=/<(?:\w+:)?t[^>]*>([^<]*)<\/(?:\w+:)?t>/g,Kn=/<(?:\w+:)?r>/;var qn=/<(?:\w+:)?rPh.*?>([\s\S]*?)<\/(?:\w+:)?rPh>/g;function Zn(e,r){var t=r?r.cellHTML:true;var a={};if(!e)return{t:""};if(e.match(/^\s*<(?:\w+:)?t[^>]*>/)){a.t=Gr(ot(e.slice(e.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""));a.r=ot(e);if(t)a.h=Qr(a.t)}else if(e.match(Kn)){a.r=ot(e);a.t=Gr(ot((e.replace(qn,"").match(Jn)||[]).join("").replace(zr,"")));if(t)a.h=Yn(Gn(a.r))}return a}var Qn=/<(?:\w+:)?sst([^>]*)>([\s\S]*)<\/(?:\w+:)?sst>/;var ei=/<(?:\w+:)?(?:si|sstItem)>/g;var ri=/<\/(?:\w+:)?(?:si|sstItem)>/;function ti(e,r){var t=[],a="";if(!e)return t;var n=e.match(Qn);if(n){a=n[2].replace(ei,"").split(ri);for(var i=0;i!=a.length;++i){var s=Zn(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 ai=/^\s|\s$|[\t\n\r]/;function ni(e,r){if(!r.bookSST)return"";var t=[Rr];t[t.length]=wt("sst",null,{xmlns:_t[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 ii(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 si(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 li(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 l=0,o=0,c=n+i;o=s/(c>1?2-c:c);switch(n){case r:l=((t-a)/s+6)%6;break;case t:l=(a-r)/s+2;break;case a:l=(r-t)/s+4;break;}return[l/6,o,c/2]}function oi(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],l=6*r;var o;if(t!==0)switch(l|0){case 0:;case 6:o=n*l;s[0]+=n;s[1]+=o;break;case 1:o=n*(2-l);s[0]+=o;s[1]+=n;break;case 2:o=n*(l-2);s[1]+=n;s[2]+=o;break;case 3:o=n*(4-l);s[1]+=o;s[2]+=n;break;case 4:o=n*(l-4);s[2]+=n;s[0]+=o;break;case 5:o=n*(6-l);s[2]+=o;s[0]+=n;break;}for(var c=0;c!=3;++c)s[c]=Math.round(s[c]*255);return s}function ci(e,r){if(r===0)return e;var t=li(ii(e));if(r<0)t[2]=t[2]*(1+r);else t[2]=1-(1-t[2])*(1-r);return si(oi(t))}var fi=6,ui=15,hi=1,pi=fi;function di(e){return Math.floor((e+Math.round(128/pi)/256)*pi)}function mi(e){return Math.floor((e-5)/pi*100+.5)/100}function vi(e){return Math.round((e*pi+5)/pi*256)/256}function gi(e){return vi(mi(di(e)))}function bi(e){var r=Math.abs(e-gi(e)),t=pi;if(r>.005)for(pi=hi;pi":;case"":break;case"":;case"":n={};if(t.diagonalUp)n.diagonalUp=at(t.diagonalUp);if(t.diagonalDown)n.diagonalDown=at(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 Ai(e,r,t,a){r.Fills=[];var n={};var i=false;(e[0].match(zr)||[]).forEach(function(e){var t=jr(e);switch(Hr(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 Ti(e,r,t,a){r.Fonts=[];var i={};var s=false;(e[0].match(zr)||[]).forEach(function(e){var l=jr(e);switch(Hr(l[0])){case"":;case"":break;case"":break;case"
":;case"":r.Fonts.push(i);i={};break;case"":;case"":break;case"":i.bold=1;break;case"":i.italic=1;break;case"":i.underline=1;break;case"":i.strike=1;break;case"":i.outline=1;break;case"":i.shadow=1;break;case"":i.condense=1;break;case"":i.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 "+l[0]+" in fonts")};}})}function Ei(e,r,t){r.NumberFmt=[];var a=er(X);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}$e(l,o)}}break;case"":break;default:if(t.WTF)throw new Error("unrecognized "+s[0]+" in numFmts");}}}function Fi(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]=wt("numFmt",null,{numFmtId:a,formatCode:Kr(e[a])})});if(r.length===1)return"";r[r.length]="";r[0]=wt("numFmts",null,{count:r.length-2}).replace("/>",">");return r.join("")}var Di=["numFmtId","fillId","fontId","borderId","xfId"];var Oi=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];function Mi(e,r,t){r.CellXf=[];var a;var n=false;(e[0].match(zr)||[]).forEach(function(e){var i=jr(e),s=0;switch(Hr(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 l={};if(i.vertical)l.vertical=i.vertical;if(i.horizontal)l.horizontal=i.horizontal;if(i.textRotation!=null)l.textRotation=i.textRotation;if(i.indent)l.indent=i.indent;if(i.wrapText)l.wrapText=at(i.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 "+i[0]+" in cellXfs")};}})}function Ni(e){var r=[];r[r.length]=wt("cellXfs",null);e.forEach(function(e){r[r.length]=wt("xf",null,e)});r[r.length]="";if(r.length===2)return"";r[0]=wt("cellXfs",null,{count:r.length-2}).replace("/>",">");return r.join("")}var Pi=function Bc(){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,l,o){var c={};if(!s)return c;s=s.replace(//gm,"").replace(//gm,"");var f;if(f=s.match(e))Ei(f,c,o);if(f=s.match(a))Ti(f,c,l,o);if(f=s.match(t))Ai(f,c,l,o);if(f=s.match(n))_i(f,c,l,o);if(f=s.match(r))Mi(f,c,o);return c}}();function Ii(e,r){var t=[Rr,wt("styleSheet",null,{xmlns:_t[0],"xmlns:vt":Ct.vt})],a;if(e.SSF&&(a=Fi(e.SSF))!=null)t[t.length]=a;t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';if(a=Ni(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 Ri=["","","","","","","","","","","",""];function Li(e,r,t){r.themeElements.clrScheme=[];var a={};(e[0].match(zr)||[]).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[Ri.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 Bi(){}function $i(){}var zi=/]*)>[\s\S]*<\/a:clrScheme>/;var Ui=/]*)>[\s\S]*<\/a:fontScheme>/;var Wi=/]*)>[\s\S]*<\/a:fmtScheme>/;function ji(e,r,t){r.themeElements={};var a;[["clrScheme",zi,Li],["fontScheme",Ui,Bi],["fmtScheme",Wi,$i]].forEach(function(n){if(!(a=e.match(n[1])))throw new Error(n[0]+" not found in themeElements");n[2](a,r,t)})}var Hi=/]*)>[\s\S]*<\/a:themeElements>/;function Vi(e,r){if(!e||e.length===0)e=Xi();var t;var a={};if(!(t=e.match(Hi)))throw new Error("themeElements not found in theme");ji(t[0],a,r);a.raw=e;return a}function Xi(e,r){if(r&&r.themeXLSX)return r.themeXLSX;if(e&&typeof e.raw=="string")return e.raw;var t=[Rr];t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]='';t[t.length]="";t[t.length]='';t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";t[t.length]="";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 Gi(e,r,t){var a={Types:[],Cell:[],Value:[]};if(!e)return a;var n=false;var i=2;var s;e.replace(zr,function(e){var r=jr(e);switch(Hr(r[0])){case"":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 Ji(){}function Ki(e,r,t,a){if(!e)return e;var n=a||{};var i=false,s=false;ha(e,function l(e,r,t){if(s)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:i=true;break;case 36:i=false;break;default:if(r.T){}else if(!i||n.WTF)throw new Error("Unexpected record 0x"+t.toString(16));}},n)}function qi(e,r){if(!e)return"??";var t=(e.match(/]*r:id="([^"]*)"/)||["",""])[1];return r["!id"][t].Target}var Zi=1024;function Qi(e,r){var t=[21600,21600];var a=["m0,0l0",t[1],t[0],t[1],t[0],"0xe"].join(",");var n=[wt("xml",null,{"xmlns:v":At.v,"xmlns:o":At.o,"xmlns:x":At.x,"xmlns:mv":At.mv}).replace(/\/>/,">"),wt("o:shapelayout",wt("o:idmap",null,{"v:ext":"edit",data:e}),{"v:ext":"edit"}),wt("v:shapetype",[wt("v:stroke",null,{joinstyle:"miter"}),wt("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202","o:spt":202,coordsize:t.join(","),path:a})];while(Zi",i,wt("v:shadow",null,s),wt("v:path",null,{"o:connecttype":"none"}),'
','',"","",gt("x:Anchor",[r.c+1,0,r.r+1,0,r.c+3,20,r.r+5,20].join(",")),gt("x:AutoFill","False"),gt("x:Row",String(r.r)),gt("x:Column",String(r.c)),e[1].hidden?"":"","",""])});n.push("");return n.join("")}function es(e,r,t,a){var n=Array.isArray(e);var i;r.forEach(function(r){var s=Ea(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 l=Ma(e["!ref"]||"BDWGO1000001:A1");if(l.s.r>s.r)l.s.r=s.r;if(l.e.rs.c)l.s.c=s.c;if(l.e.c=0;--f){if(!t&&i.c[f].T)return;if(t&&!i.c[f].T)i.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 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 l=Ea(i.ref);if(r.sheetRows&&r.sheetRows<=l.r)return;var o=e.match(/<(?:\w+:)?text>([\s\S]*)<\/(?:\w+:)?text>/);var c=!!o&&!!o[1]&&Zn(o[1])||{r:"",t:"",h:""};s.r=c.r;if(c.r=="")c.t=c.h="";s.t=(c.t||"").replace(/\r\n/g,"\n").replace(/\r/g,"\n");if(r.cellHTML)s.h=c.h;a.push(s)});return a}function ts(e){var r=[Rr,wt("comments",null,{xmlns:_t[0]})];var t=[];r.push("");e.forEach(function(e){e[1].forEach(function(e){var a=Kr(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=[];if(e[1][0]&&e[1][0].T&&e[1][0].ID)a=t.indexOf("tc="+e[1][0].ID);else e[1].forEach(function(e){if(e.a)a=t.indexOf(Kr(e.a));n.push(e.t||"")});r.push('');if(n.length<=1)r.push(gt("t",Kr(n[0]||"")));else{var i="Comment:\n "+n[0]+"\n";for(var s=1;s")});r.push("");if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function as(e,r){var t=[];var a=false,n={},i=0;e.replace(zr,function s(l,o){var c=jr(l);switch(Hr(c[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 "+c[0]+" in threaded comments");}return l});return t}function ns(e,r,t){var a=[Rr,wt("ThreadedComments",null,{xmlns:Ct.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 l={ref:e[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+t.tcid++).slice(-12)+"}"};if(s==0)n=l.id;else l.parentId=n;i.ID=l.id;if(i.a)l.personId="{54EE7950-7262-4200-6969-"+("000000000000"+r.indexOf(i.a)).slice(-12)+"}";a.push(wt("threadedComment",gt("text",i.t||""),l))})});a.push("");return a.join("")}function is(e,r){var t=[];var a=false;e.replace(zr,function n(e){var n=jr(e);switch(Hr(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 ss(e){var r=[Rr,wt("personList",null,{xmlns:Ct.TCMNT,"xmlns:x":_t[0]}).replace(/[\/]>/,">")];e.forEach(function(e,t){r.push(wt("person",null,{displayName:e,id:"{54EE7950-7262-4200-6969-"+("000000000000"+t).slice(-12)+"}",userId:e,providerId:"None"}))});r.push("");return r.join("")}var ls="application/vnd.ms-office.vbaProject";function os(e){var r=Ye.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*/,"");Ye.utils.cfb_add(r,n,e.FileIndex[a].content)});return Ye.write(r)}function cs(e,r){r.FullPaths.forEach(function(t,a){if(a==0)return;var n=t.replace(/[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");if(n.slice(-1)!=="/")Ye.utils.cfb_add(e,n,r.FileIndex[a].content)})}var fs=["xlsb","xlsm","xlam","biff8","xla"];function us(){return{"!type":"dialog"}}function hs(){return{"!type":"dialog"}}function ps(){return{"!type":"macro"}}function ds(){return{"!type":"macro"}}var ms=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 l=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)l+=r.r;else--l;return t+(i?"":"$")+Ca(o)+(s?"":"$")+ya(l)}return function a(n,i){r=i;return n.replace(e,t)}}();var vs=/(^|[^._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 gs=function(){return function e(r,t){return r.replace(vs,function(e,r,a,n,i,s){var l=Sa(n)-(a?0:t.c);var o=wa(s)-(i?0:t.r);var c=o==0?"":!i?"["+o+"]":o+1;var f=l==0?"":!a?"["+l+"]":l+1;return r+"R"+c+"C"+f})}}();function bs(e,r){return e.replace(vs,function(e,t,a,n,i,s){return t+(a=="$"?a+n:Ca(Sa(n)+r.c))+(i=="$"?i+s:ya(wa(s)+r.r))})}function ws(e,r,t){var a=Da(r),n=a.s,i=Ea(t);var s={r:i.r-n.r,c:i.c-n.c};return bs(e,s)}function ys(e){if(e.length==1)return false;return true}function ks(e){return e.replace(/_xlfn\./g,"")}function xs(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(/\[.(#[A-Z]*[?!])\]/g,"$1");return e.replace(/[;~]/g,",").replace(/\|/g,";")}function Ss(e){var r="of:="+e.replace(vs,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return r.replace(/;/g,"|").replace(/,/g,";")}function Cs(e){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 _s(e){return e.replace(/\./,"!")}var As={};var Ts={};var Es=typeof Map!=="undefined";function Fs(e,r,t){var a=0,n=e.length;if(t){if(Es?t.has(r):Object.prototype.hasOwnProperty.call(t,r)){var i=Es?t.get(r):t[r];for(;a-1){t.width=vi(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 Os(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 Ms(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){$e(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 Ns(e,r,t,a,n,i){try{if(a.cellNF)e.z=X[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=mr(e.v);if((!a||a.cellText!==false)&&e.t!=="z")try{if(X[r]==null)$e(je[r]||"General",r);if(e.t==="e")e.w=e.w||ln[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=ie(e.v)}else if(e.t==="d"){var l=sr(e.v);if((l|0)===l)e.w=l.toString(10);else e.w=ie(l)}else if(e.v===undefined)return"";else e.w=se(e.v,Ts)}else if(e.t==="d")e.w=Be(r,sr(e.v),Ts);else e.w=Be(r,e.v,Ts)}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=ci(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=ci(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 Ps(e,r,t){if(e&&e["!ref"]){var a=Ma(e["!ref"]);if(a.e.c=0&&t.s.c>=0)e["!ref"]=Oa(t)}var Rs=/<(?:\w:)?mergeCell ref="[A-Z0-9:]+"\s*[\/]?>/g;var Ls=/<(?:\w+:)?sheetData[^>]*>([\s\S]*)<\/(?:\w+:)?sheetData>/;var Bs=/<(?:\w:)?hyperlink [^>]*>/gm;var $s=/"(\w*:\w*)"/;var zs=/<(?:\w:)?col\b[^>]*[\/]?>/g;var Us=/<(?:\w:)?autoFilter[^>]*([\/]|>([\s\S]*)<\/(?:\w:)?autoFilter)>/g;var Ws=/<(?:\w:)?pageMargins[^>]*\/>/g;var js=/<(?:\w:)?sheetPr\b(?:[^>a-z][^>]*)?\/>/;var Hs=/<(?:\w:)?sheetPr[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetPr)>/;var Vs=/<(?:\w:)?sheetViews[^>]*(?:[\/]|>([\s\S]*)<\/(?:\w:)?sheetViews)>/;function Xs(e,r,t,a,n,i,s){if(!e)return e;if(!a)a={"!id":{}};if(m!=null&&r.dense==null)r.dense=m;var l=r.dense?[]:{};var o={s:{r:2e6,c:2e6},e:{r:0,c:0}};var c="",f="";var u=e.match(Ls);if(u){c=e.slice(0,u.index);f=e.slice(u.index+u[0].length)}else c=f=e;var h=c.match(js);if(h)Ys(h[0],l,n,t);else if(h=c.match(Hs))Js(h[0],h[1]||"",l,n,t,s,i);var p=(c.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(p>0){var d=c.slice(p,p+50).match($s);if(d)Is(l,d[1])}var v=c.match(Vs);if(v&&v[1])ol(v[1],n);var g=[];if(r.cellStyles){var b=c.match(zs);if(b)al(g,b)}if(u)ul(u[1],l,r,o,i,s);var w=f.match(Us);if(w)l["!autofilter"]=il(w[0]);var y=[];var k=f.match(Rs);if(k)for(p=0;p!=k.length;++p)y[p]=Ma(k[p].slice(k[p].indexOf('"')+1));var x=f.match(Bs);if(x)el(l,x,a);var S=f.match(Ws);if(S)l["!margins"]=rl(jr(S[0]));if(!l["!ref"]&&o.e.c>=o.s.c&&o.e.r>=o.s.r)l["!ref"]=Oa(o);if(r.sheetRows>0&&l["!ref"]){var C=Ma(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"]=g;if(y.length>0)l["!merges"]=y;return l}function Gs(e){if(e.length===0)return"";var r='';for(var t=0;t!=e.length;++t)r+='';return r+""}function Ys(e,r,t,a){var n=jr(e);if(!t.Sheets[a])t.Sheets[a]={};if(n.codeName)t.Sheets[a].CodeName=Gr(ot(n.codeName))}function Js(e,r,t,a,n){Ys(e.slice(0,e.indexOf(">")),t,a,n)}function Ks(e,r,t,a,n){var i=false;var s={},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){}i=true;s.codeName=ct(Kr(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||"")+wt("outlinePr",null,f)}if(!i&&!l)return;n[n.length]=wt("sheetPr",l,s)}var qs=["objects","scenarios","selectLockedCells","selectUnlockedCells"];var Zs=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];function Qs(e){var r={sheet:1};qs.forEach(function(t){if(e[t]!=null&&e[t])r[t]="1"});Zs.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 wt("sheetProtection",null,r)}function el(e,r,t){var a=Array.isArray(e);for(var n=0;n!=r.length;++n){var i=jr(ot(r[n]),true);if(!i.ref)return;var s=((t||{})["!id"]||[])[i.id];if(s){i.Target=s.Target;if(i.location)i.Target+="#"+Gr(i.location)}else{i.Target="#"+Gr(i.location);s={Target:i.Target,TargetMode:"Internal"}}i.Rel=s;if(i.tooltip){i.Tooltip=i.tooltip;delete i.tooltip}var l=Ma(i.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=Fa({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=i}else{if(!e[f])e[f]={t:"z",v:undefined};e[f].l=i}}}}function rl(e){var r={};["left","right","top","bottom","header","footer"].forEach(function(t){if(e[t])r[t]=parseFloat(e[t])});return r}function tl(e){Os(e);return wt("pageMargins",null,e)}function al(e,r){var t=false;for(var a=0;a!=r.length;++a){var n=jr(r[a],true);if(n.hidden)n.hidden=at(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;bi(n.width)}wi(n);while(i<=s)e[i++]=gr(n)}}function nl(e,r){var t=[""],a;for(var n=0;n!=r.length;++n){if(!(a=r[n]))continue;t[t.length]=wt("col",null,Ds(n,a))}t[t.length]="";return t.join("")}function il(e){var r={ref:(e.match(/ref="([^"]*)"/)||[])[1]};return r}function sl(e,r,t,a){var n=typeof e.ref=="string"?e.ref:Oa(e.ref);if(!t.Workbook)t.Workbook={Sheets:[]};if(!t.Workbook.Names)t.Workbook.Names=[];var i=t.Workbook.Names;var s=Da(n);if(s.s.r==s.e.r){s.e.r=Da(r["!ref"]).e.r;n=Oa(s)}for(var l=0;la-z][^>]*)?\/?>/;function ol(e,r){if(!r.Views)r.Views=[{}];(e.match(ll)||[]).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(at(a.rightToLeft))r.Views[t].RTL=true})}function cl(e,r,t,a){var n={workbookViewId:"0"};if((((a||{}).Workbook||{}).Views||[])[0])n.rightToLeft=a.Workbook.Views[0].RTL?"1":"0";return wt("sheetViews",wt("sheetView",null,n),{})}function fl(e,r,t,a){if(e.c)t["!comments"].push([r,e.c]);if(e.v===undefined&&typeof e.f!=="string"||e.t==="z"&&!e.f)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=ln[e.v];break;case"d":if(a&&a.cellDates)n=mr(e.v,-1).toISOString();else{e=gr(e);e.t="n";n=""+(e.v=sr(mr(e.v)))}if(typeof e.z==="undefined")e.z=X[14];break;default:n=e.v;break;}var l=gt("v",Kr(n)),o={r:r};var c=Ms(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=gt("v",""+Fs(a.Strings,e.v,a.revStrings));o.t="s";break}o.t="str";break;}if(e.t!=i){e.t=i;e.v=s}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=wt("f",Kr(e.f),f)+(e.v!=null?l:"")}if(e.l)t["!links"].push([r,e.l]);if(e.D)o.cm=1;return wt("c",l,o)}var ul=function(){var e=/<(?:\w+:)?c[ \/>]/,r=/<\/(?:\w+:)?row>/;var t=/r=["']([^"']*)["']/,a=/<(?:\w+:)?is>([\S\s]*?)<\/(?:\w+:)?is>/;var n=/ref=["']([^"']*)["']/;var i=ft("v"),s=ft("f");return function l(o,c,f,u,h,p){var d=0,m="",v=[],g=[],b=0,w=0,y=0,k="",x;var S,C=0,_=0;var A,T;var E=0,F=0;var D=Array.isArray(p.CellXf),O;var M=[];var N=[];var P=Array.isArray(c);var I=[],R={},L=false;var B=!!f.sheetStubs;for(var $=o.split(r),z=0,U=$.length;z!=U;++z){m=$[z].trim();var W=m.length;if(W===0)continue;var j=0;e:for(d=0;d":if(m[d-1]!="/"){++d;break e}if(f&&f.cellStyles){S=jr(m.slice(j,d),true);C=S.r!=null?parseInt(S.r,10):C+1;_=-1;if(f.sheetRows&&f.sheetRows=d)break;S=jr(m.slice(j,d),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":"")+m;if(g!=null&&g.length===2){b=0;k=g[1];for(w=0;w!=k.length;++w){if((y=k.charCodeAt(w)-64)<1||y>26)break;b=26*b+y}--b;_=b}else++_;for(w=0;w!=m.length;++w)if(m.charCodeAt(w)===62)break;++w;S=jr(m.slice(0,w),true);if(!S.r)S.r=Fa({r:C-1,c:_});k=m.slice(w);x={t:""};if((g=k.match(i))!=null&&g[1]!=="")x.v=Gr(g[1]);if(f.cellFormula){if((g=k.match(s))!=null&&g[1]!==""){x.f=Gr(ot(g[1])).replace(/\r\n/g,"\n");if(!f.xlfn)x.f=ks(x.f);if(g[0].indexOf('t="array"')>-1){x.F=(k.match(n)||[])[1];if(x.F.indexOf(":")>-1)M.push([Ma(x.F),x.F])}else if(g[0].indexOf('t="shared"')>-1){T=jr(g[0]);var V=Gr(ot(g[1]));if(!f.xlfn)V=ks(V);N[parseInt(T.si,10)]=[T,V,S.r]}}else if(g=k.match(/]*\/>/)){T=jr(g[0]);if(N[T.si])x.f=ws(N[T.si][1],N[T.si][2],S.r)}var G=Ea(S.r);for(w=0;w=M[w][0].s.r&&G.r<=M[w][0].e.r)if(G.c>=M[w][0].s.c&&G.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=As[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?ot(x.v):"";if(f.cellHTML)x.h=Qr(x.v);break;case"inlineStr":g=k.match(a);x.t="s";if(g!=null&&(A=Zn(g[1]))){x.v=A.t;if(f.cellHTML)x.h=A.h}else x.v="";break;case"b":x.v=at(x.v);break;case"d":if(f.cellDates)x.v=mr(x.v,1);else{x.v=sr(mr(x.v,1));x.t="n"}break;case"e":if(!f||f.cellText!==false)x.w=x.v;x.v=on[x.v];break;}E=F=0;O=null;if(D&&S.s!==undefined){O=p.CellXf[S.s];if(O!=null){if(O.numFmtId!=null)E=O.numFmtId;if(f.cellStyles){if(O.fillId!=null)F=O.fillId}}}Ns(x,E,F,f,h,p);if(f.cellDates&&D&&x.t=="n"&&Ne(X[E])){x.t="d";x.v=fr(x.v)}if(S.cm&&f.xlmeta){var Y=(f.xlmeta.Cell||[])[+S.cm-1];if(Y&&Y.type=="XLDAPR")x.D=true}if(P){var J=Ea(S.r);if(!c[J.r])c[J.r]=[];c[J.r][J.c]=x}else c[S.r]=x}}if(I.length>0)c["!rows"]=I}}();function hl(e,r,t,a){var n=[],i=[],s=Ma(e["!ref"]),l="",o,c="",f=[],u=0,h=0,p=e["!rows"];var d=Array.isArray(e);var m={r:c},v,g=-1;for(h=s.s.c;h<=s.e.c;++h)f[h]=Ca(h);for(u=s.s.r;u<=s.e.r;++u){i=[];c=ya(u);for(h=s.s.c;h<=s.e.c;++h){o=f[h]+c;var b=d?(e[u]||[])[h]:e[o];if(b===undefined)continue;if((l=fl(b,o,e,r,t,a))!=null)i.push(l)}if(i.length>0||p&&p[u]){m={r:c};if(p&&p[u]){v=p[u];if(v.hidden)m.hidden=1;g=-1;if(v.hpx)g=xi(v.hpx);else if(v.hpt)g=v.hpt;if(g>-1){m.ht=g;m.customHeight=1}if(v.level){m.outlineLevel=v.level}}n[n.length]=wt("row",i.join(""),m)}}if(p)for(;u-1){m.ht=g;m.customHeight=1}if(v.level){m.outlineLevel=v.level}n[n.length]=wt("row","",m)}}return n.join("")}function pl(e,r,t,a){var n=[Rr,wt("worksheet",null,{xmlns:_t[0],"xmlns:r":Ct.r})];var i=t.SheetNames[e],s=0,l="";var o=t.Sheets[i];if(o==null)o={};var c=o["!ref"]||"A1";var f=Ma(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=Oa(f)}if(!a)a={};o["!comments"]=[];var u=[];Ks(o,t,e,r,n);n[n.length]=wt("dimension",null,{ref:c});n[n.length]=cl(o,r,e,t);if(r.sheetFormat)n[n.length]=wt("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]=nl(o,o["!cols"]);n[s=n.length]="";o["!links"]=[];if(o["!ref"]!=null){l=hl(o,r,e,t,a);if(l.length>0)n[n.length]=l}if(n.length>s+1){n[n.length]="";n[s]=n[s].replace("/>",">")}if(o["!protect"])n[n.length]=Qs(o["!protect"]);if(o["!autofilter"]!=null)n[n.length]=sl(o["!autofilter"],o,t,e);if(o["!merges"]!=null&&o["!merges"].length>0)n[n.length]=Gs(o["!merges"]);var h=-1,p,d=-1;if(o["!links"].length>0){n[n.length]="";o["!links"].forEach(function(e){if(!e[1].Target)return;p={ref:e[0]};if(e[1].Target.charAt(0)!="#"){d=bn(a,-1,Kr(e[1].Target).replace(/#.*$/,""),dn.HLINK);p["r:id"]="rId"+d}if((h=e[1].Target.indexOf("#"))>-1)p.location=Kr(e[1].Target.slice(h+1));if(e[1].Tooltip)p.tooltip=Kr(e[1].Tooltip);n[n.length]=wt("hyperlink",null,p)});n[n.length]=""}delete o["!links"];if(o["!margins"]!=null)n[n.length]=tl(o["!margins"]);if(!r||r.ignoreEC||r.ignoreEC==void 0)n[n.length]=gt("ignoredErrors",wt("ignoredError",null,{numberStoredAsText:1,sqref:c}));if(u.length>0){d=bn(a,-1,"../drawings/drawing"+(e+1)+".xml",dn.DRAW);n[n.length]=wt("drawing",null,{"r:id":"rId"+d});o["!drawing"]=u}if(o["!comments"].length>0){d=bn(a,-1,"../drawings/vmlDrawing"+(e+1)+".vml",dn.VML);n[n.length]=wt("legacyDrawing",null,{"r:id":"rId"+d});o["!legacy"]=d}if(n.length>1){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}function dl(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=Gr((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 ml(e,r,t,a,n,i){var s=i||{"!type":"chart"};if(!e)return i;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=dl(e);f.s.r=f.s.c=0;f.e.c=l;c=Ca(l);r[0].forEach(function(e,t){s[c+ya(t)]={t:"n",v:e,z:r[1]};o=t});if(f.e.r0)s["!ref"]=Oa(f);return s}dn.CS="http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet";function vl(e,r,t,a,n){if(!e)return e;if(!a)a={"!id":{}};var i={"!type":"chart","!drawel":null,"!rel":""};var s;var l=e.match(js);if(l)Ys(l[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 gl(e,r,t,a){var n=[Rr,wt("chartsheet",null,{xmlns:_t[0],"xmlns:r":Ct.r})];n[n.length]=wt("drawing",null,{"r:id":"rId1"});bn(a,-1,"../drawings/drawing"+(e+1)+".xml",dn.DRAW);if(n.length>2){n[n.length]="";n[1]=n[1].replace("/>",">")}return n.join("")}var bl=[["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 wl=[["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 yl=[];var kl=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];function xl(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]]=at(a[i[0]]);break;case"int":if(typeof a[i[0]]=="string")a[i[0]]=parseInt(a[i[0]],10);break;}}}}function Sl(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]]=at(e[a[0]]);break;case"int":if(typeof e[a[0]]=="string")e[a[0]]=parseInt(e[a[0]],10);break;}}}function Cl(e){Sl(e.WBProps,bl);Sl(e.CalcPr,kl);xl(e.WBView,wl);xl(e.Sheets,yl);Ts.date1904=at(e.WBProps.date1904)}function _l(e){if(!e.Workbook)return"false";if(!e.Workbook.WBProps)return"false";return at(e.Workbook.WBProps.date1904)?"true":"false"}var Al="][*?/\\".split("");function Tl(e,r){if(e.length>31){if(r)return false;throw new Error("Sheet names cannot exceed 31 chars")}var t=true;Al.forEach(function(a){if(e.indexOf(a)==-1)return;if(!r)throw new Error("Sheet name cannot contain : \\ / ? * [ ]");t=false});return t}function El(e,r,t){e.forEach(function(a,n){Tl(a);for(var i=0;i22)throw new Error("Bad Code Name: Worksheet"+s)}})}function Fl(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||[];El(e.SheetNames,r,!!e.vbaraw);for(var t=0;t":break;case"":;case"":break;case"":break;case"":bl.forEach(function(e){if(f[e[0]]==null)return;switch(e[2]){case"bool":t.WBProps[e[0]]=at(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=ot(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"":{i.Ref=Gr(ot(e.slice(s,c)));t.Names.push(i)}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){bl.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]=wt("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:Kr(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]=wt("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]=wt("definedName",Kr(e.Ref),t)});r[r.length]=""}if(r.length>2){r[r.length]="";r[1]=r[1].replace("/>",">")}return r.join("")}function Nl(e,r,t){if(r.slice(-4)===".bin")return parse_wb_bin(e,t);return Ol(e,t)}function Pl(e,r,t,a,n,i,s,l){if(r.slice(-4)===".bin")return parse_ws_bin(e,a,t,n,i,s,l);return Xs(e,a,t,n,i,s,l)}function Il(e,r,t,a,n,i,s,l){if(r.slice(-4)===".bin")return parse_cs_bin(e,a,t,n,i,s,l);return vl(e,a,t,n,i,s,l)}function Rl(e,r,t,a,n,i,s,l){if(r.slice(-4)===".bin")return ps(e,a,t,n,i,s,l);return ds(e,a,t,n,i,s,l)}function Ll(e,r,t,a,n,i,s,l){if(r.slice(-4)===".bin")return us(e,a,t,n,i,s,l);return hs(e,a,t,n,i,s,l)}function Bl(e,r,t,a){if(r.slice(-4)===".bin")return parse_sty_bin(e,t,a);return Pi(e,t,a)}function $l(e,r,t){return Vi(e,t)}function zl(e,r,t){if(r.slice(-4)===".bin")return parse_sst_bin(e,t);return ti(e,t)}function Ul(e,r,t){if(r.slice(-4)===".bin")return parse_comments_bin(e,t);return rs(e,t)}function Wl(e,r,t){if(r.slice(-4)===".bin")return parse_cc_bin(e,r,t);return parse_cc_xml(e,r,t)}function jl(e,r,t,a){if(t.slice(-4)===".bin")return Ki(e,r,t,a);return Ji(e,r,t,a)}function Hl(e,r,t){if(r.slice(-4)===".bin")return parse_xlmeta_bin(e,r,t);return Gi(e,r,t)}function Vl(e,r,t){return(r.slice(-4)===".bin"?write_wb_bin:Ml)(e,t)}function Xl(e,r,t,a,n){return(r.slice(-4)===".bin"?write_ws_bin:pl)(e,t,a,n)}function Gl(e,r,t,a,n){return(r.slice(-4)===".bin"?write_cs_bin:gl)(e,t,a,n)}function Yl(e,r,t){return(r.slice(-4)===".bin"?write_sty_bin:Ii)(e,t)}function Jl(e,r,t){return(r.slice(-4)===".bin"?write_sst_bin:ni)(e,t)}function Kl(e,r,t){return(r.slice(-4)===".bin"?write_comments_bin:ts)(e,t)}function ql(e){return(e.slice(-4)===".bin"?write_xlmeta_bin:Yi)()}function Zl(e,r){var t=r||{};if(m!=null&&t.dense==null)t.dense=m;var a=t.dense?[]:{};e=e.replace(//g,"");var n=e.match(/");var i=e.match(/<\/table/i);var s=n.index,l=i&&i.index||e.length;var o=xr(e.slice(s,l),/(:?]*>)/i,"");var c=-1,f=0,u=0,h=0;var p={s:{r:1e7,c:1e7},e:{r:0,c:0}};var d=[];for(s=0;s/i);for(l=0;l"))>-1)y=y.slice(k+1);for(var x=0;x")));h=C.colspan?+C.colspan:1;if((u=+C.rowspan)>1||h>1)d.push({s:{r:c,c:f},e:{r:c+(u||1)-1,c:f+h-1}});var _=C.t||C["data-t"]||"";if(!y.length){f+=h;continue}y=ut(y);if(p.s.r>c)p.s.r=c;if(p.e.rf)p.s.c=f;if(p.e.ct||n[c].s.c>s)continue;if(n[c].e.r1)p.rowspan=l;if(o>1)p.colspan=o;if(a.editable)h=''+h+"";else if(u){p["data-t"]=u&&u.t||"z";if(u.v!=null)p["data-v"]=u.v;if(u.z!=null)p["data-z"]=u.z;if(u.l&&(u.l.Target||"#").charAt(0)!="#")h=''+h+""}p.id=(a.id||"sjs")+"-"+f;i.push(wt("td",h,p))}var d="";return d+i.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)return Ia(Zl(t[0],r),r);var a=hc();t.forEach(function(e,t){pc(a,Zl(e,r),"Sheet"+(t+1))});return a}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 i=[a];var s=Da(e["!ref"]);t.dense=Array.isArray(e);i.push(ao(e,s,t));for(var l=s.s.r;l<=s.e.r;++l)i.push(Ql(e,s,l,t));i.push("
"+n);return i.join("")}function io(e,r,t){var a=t||{};if(m!=null)a.dense=m;var n=0,i=0;if(a.origin!=null){if(typeof a.origin=="number")n=a.origin;else{var s=typeof a.origin=="string"?Ea(a.origin):a.origin;n=s.r;i=s.c}}var l=r.getElementsByTagName("tr");var o=Math.min(a.sheetRows||1e7,l.length);var c={s:{r:0,c:0},e:{r:n,c:i}};if(e["!ref"]){var f=Da(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(n==-1)c.e.r=n=f.e.r+1}var u=[],h=0;var p=e["!rows"]||(e["!rows"]=[]);var d=0,v=0,g=0,b=0,w=0,y=0;if(!e["!cols"])e["!cols"]=[];for(;d1||y>1)u.push({s:{r:v+n,c:b+i},e:{r:v+n+(w||1)-1,c:b+i+(y||1)-1}});var T={t:"s",v:C};var E=S.getAttribute("data-t")||S.getAttribute("t")||"";if(C!=null){if(C.length==0)T.t=E||"z";else if(a.raw||C.trim().length==0||E=="s"){}else if(C==="TRUE")T={t:"b",v:true};else if(C==="FALSE")T={t:"b",v:false};else if(!isNaN(wr(C)))T={t:"n",v:wr(C)};else if(!isNaN(kr(C).getDate())){T={t:"d",v:mr(C)};if(!a.cellDates)T={t:"n",v:sr(T.v)};T.z=a.dateNF||X[14]}}if(T.z===undefined&&_!=null)T.z=_;var F="",D=S.getElementsByTagName("A");if(D&&D.length)for(var O=0;O=o)e["!fullref"]=Oa((c.e.r=l.length-d+v-1+n,c));return e}function so(e,r){var t=r||{};var a=t.dense?[]:{};return io(a,e,r)}function lo(e,r){return Ia(so(e,r),r)}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=Gr(r.replace(/<[^>]*>/g,""));return[t]}var uo={day:["d","dd"],month:["m","mm"],year:["y","yy"],hours:["h","hh"],minutes:["m","mm"],seconds:["s","ss"],"am-pm":["A/P","AM/PM"],"day-of-week":["ddd","dddd"],era:["e","ee"],quarter:["\\Qm",'m\\"th quarter"']};function ho(e,r){var t=r||{};if(m!=null&&t.dense==null)t.dense=m;var a=xt(e);var n=[],i;var s;var l={name:""},o="",c=0;var f;var u;var h={},p=[];var d=t.dense?[]:{};var v,g;var b={value:""};var w="",y=0,k;var x=[];var S=-1,C=-1,_={s:{r:1e6,c:1e7},e:{r:0,c:0}};var A=0;var T={};var E=[],F={},D=0,O=0;var M=[],N=1,P=1;var I=[];var R={Names:[]};var L={};var B=["",""];var $=[],z={};var U="",W=0;var j=false,H=false;var V=0;St.lastIndex=0;a=a.replace(//gm,"").replace(//gm,"");while(v=St.exec(a))switch(v[3]=v[3].replace(/_.*$/,"")){case"table":;case"工作表":if(v[1]==="/"){if(_.e.c>=_.s.c&&_.e.r>=_.s.r)d["!ref"]=Oa(_);else d["!ref"]="A1:A1";if(t.sheetRows>0&&t.sheetRows<=_.e.r){d["!fullref"]=d["!ref"];_.e.r=t.sheetRows-1;d["!ref"]=Oa(_)}if(E.length)d["!merges"]=E;if(M.length)d["!rows"]=M;f.name=f["名称"]||f.name;if(typeof JSON!=="undefined")JSON.stringify(f);p.push(f.name);h[f.name]=d;H=false}else if(v[0].charAt(v[0].length-2)!=="/"){f=jr(v[0],false);S=C=-1;_.s.r=_.s.c=1e7;_.e.r=_.e.c=0;d=t.dense?[]:{};E=[];M=[];H=true}break;case"table-row-group":if(v[1]==="/")--A;else++A;break;case"table-row":;case"行":if(v[1]==="/"){S+=N;N=1;break}u=jr(v[0],false);if(u["行号"])S=u["行号"]-1;else if(S==-1)S=0;N=+u["number-rows-repeated"]||1;if(N<10)for(V=0;V0)M[S+V]={level:A};C=-1;break;case"covered-table-cell":if(v[1]!=="/")++C;if(t.sheetStubs){if(t.dense){if(!d[S])d[S]=[];d[S][C]={t:"z"}}else d[Fa({r:S,c:C})]={t:"z"}}w="";x=[];break;case"table-cell":;case"数据":if(v[0].charAt(v[0].length-2)==="/"){++C;b=jr(v[0],false);P=parseInt(b["number-columns-repeated"]||"1",10);g={t:"z",v:null};if(b.formula&&t.cellFormula!=false)g.f=xs(Gr(b.formula));if((b["数据类型"]||b["value-type"])=="string"){g.t="s";g.v=Gr(b["string-value"]||"");if(t.dense){if(!d[S])d[S]=[];d[S][C]=g}else{d[Fa({r:S,c:C})]=g}}C+=P-1}else if(v[1]!=="/"){++C;w="";y=0;x=[];P=1;var X=N?S+N-1:S;if(C>_.e.c)_.e.c=C;if(C<_.s.c)_.s.c=C;if(S<_.s.r)_.s.r=S;if(X>_.e.r)_.e.r=X;b=jr(v[0],false);$=[];z={};g={t:b["数据类型"]||b["value-type"],v:null};if(t.cellFormula){if(b.formula)b.formula=Gr(b.formula);if(b["number-matrix-columns-spanned"]&&b["number-matrix-rows-spanned"]){D=parseInt(b["number-matrix-rows-spanned"],10)||0;O=parseInt(b["number-matrix-columns-spanned"],10)||0;F={s:{r:S,c:C},e:{r:S+D-1,c:C+O-1}};g.F=Oa(F);I.push([F,g.F])}if(b.formula)g.f=xs(b.formula);else for(V=0;V=I[V][0].s.r&&S<=I[V][0].e.r)if(C>=I[V][0].s.c&&C<=I[V][0].e.c)g.F=I[V][1]}if(b["number-columns-spanned"]||b["number-rows-spanned"]){D=parseInt(b["number-rows-spanned"],10)||0;O=parseInt(b["number-columns-spanned"],10)||0;F={s:{r:S,c:C},e:{r:S+D-1,c:C+O-1}};E.push(F)}if(b["number-columns-repeated"])P=parseInt(b["number-columns-repeated"],10);switch(g.t){case"boolean":g.t="b";g.v=at(b["boolean-value"]);break;case"float":g.t="n";g.v=parseFloat(b.value);break;case"percentage":g.t="n";g.v=parseFloat(b.value);break;case"currency":g.t="n";g.v=parseFloat(b.value);break;case"date":g.t="d";g.v=mr(b["date-value"]);if(!t.cellDates){g.t="n";g.v=sr(g.v)}g.z="m/d/yy";break;case"time":g.t="n";g.v=ur(b["time-value"])/86400;if(t.cellDates){g.t="d";g.v=fr(g.v)}g.z="HH:MM:SS";break;case"number":g.t="n";g.v=parseFloat(b["数据数值"]);break;default:if(g.t==="string"||g.t==="text"||!g.t){g.t="s";if(b["string-value"]!=null){w=Gr(b["string-value"]);x=[]}}else throw new Error("Unsupported value type "+g.t);}}else{j=false;if(g.t==="s"){g.v=w||"";if(x.length)g.R=x;j=y==0}if(L.Target)g.l=L;if($.length>0){g.c=$;$=[]}if(w&&t.cellText!==false)g.w=w;if(j){g.t="z";delete g.v}if(!j||t.sheetStubs){if(!(t.sheetRows&&t.sheetRows<=S)){for(var G=0;G0)d[S+G][C+P]=gr(g)}else{d[Fa({r:S+G,c:C})]=g;while(--P>0)d[Fa({r:S+G,c:C+P})]=gr(g)}if(_.e.c<=C)_.e.c=C}}}P=parseInt(b["number-columns-repeated"]||"1",10);C+=P-1;P=0;g={};w="";x=[]}L={};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=n.pop())[0]!==v[3])throw"Bad state: "+i}else if(v[0].charAt(v[0].length-2)!=="/")n.push([v[3],true]);break;case"annotation":if(v[1]==="/"){if((i=n.pop())[0]!==v[3])throw"Bad state: "+i;z.t=w;if(x.length)z.R=x;z.a=U;$.push(z)}else if(v[0].charAt(v[0].length-2)!=="/"){n.push([v[3],false])}U="";W=0;w="";y=0;x=[];break;case"creator":if(v[1]==="/"){U=a.slice(W,v.index)}else W=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=n.pop())[0]!==v[3])throw"Bad state: "+i}else if(v[0].charAt(v[0].length-2)!=="/")n.push([v[3],false]);w="";y=0;x=[];break;case"scientific-number":break;case"currency-symbol":break;case"currency-style":break;case"number-style":;case"percentage-style":;case"date-style":;case"time-style":if(v[1]==="/"){T[l.name]=o;if((i=n.pop())[0]!==v[3])throw"Bad state: "+i}else if(v[0].charAt(v[0].length-2)!=="/"){o="";l=jr(v[0],false);n.push([v[3],true])}break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":;case"page-layout":break;case"style":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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=jr(v[0],false);o+=uo[v[3]][s.style==="long"?1:0];break;}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":switch(n[n.length-1][0]){case"time-style":;case"date-style":s=jr(v[0],false);o+=uo[v[3]][s.style==="long"?1:0];break;}break;case"boolean-style":break;case"boolean":break;case"text-style":break;case"text":if(v[0].slice(-2)==="/>")break;else if(v[1]==="/")switch(n[n.length-1][0]){case"number-style":;case"date-style":;case"time-style":o+=a.slice(c,v.index);break;}else c=v.index+v[0].length;break;case"named-range":s=jr(v[0],false);B=Cs(s["cell-range-address"]);var Y={Name:s.name,Ref:B[0]+"!"+B[1]};if(H)Y.Sheet=p.length;R.Names.push(Y);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":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(n[n.length-1][0])>-1)break;if(v[1]==="/"&&(!b||!b["string-value"])){var J=fo(a.slice(y,v.index),k);w=(w.length>0?w+"\n":"")+J[0]}else{k=jr(v[0],false);y=v.index+v[0].length}break;case"s":break;case"database-range":if(v[1]==="/")break;try{B=Cs(jr(v[0])["target-range-address"]);h[B[0]]["!autofilter"]={ref:B[1]}}catch(K){}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]!=="/"){L=jr(v[0],false);if(!L.href)break;L.Target=Gr(L.href);delete L.href;if(L.Target.charAt(0)=="#"&&L.Target.indexOf(".")>-1){B=Cs(L.Target.slice(1));L.Target="#"+B[0]+"!"+B[1]}else if(L.Target.match(/^\.\.[\\\/]/))L.Target=L.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(t.WTF)throw new Error(v);};}var q={Sheets:h,SheetNames:p,Workbook:R};if(t.bookSheets)delete q.Sheets;return q}function po(e,r){r=r||{};if(Ar(e,"META-INF/manifest.xml"))yn(Er(e,"META-INF/manifest.xml"),r);var t=Fr(e,"content.xml");if(!t)throw new Error("Missing content.xml in ODS / UOF file");var a=ho(ot(t),r);if(Ar(e,"meta.xml"))a.Props=En(Er(e,"meta.xml"));return a}function mo(e,r){return ho(e,r)}var vo=function(){var e=["",'',"",'',"",'',"",""].join("");var r=""+e+"";return function t(){return Rr+r}}();var go=function(){var e=function(e){return Kr(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){var s=[];s.push(' \n');var l=0,o=0,c=Da(a["!ref"]||"A1");var f=a["!merges"]||[],u=0;var h=Array.isArray(a);if(a["!cols"]){for(o=0;o<=c.e.c;++o)s.push(" \n")}var p="",d=a["!rows"]||[];for(l=0;l\n")}for(;l<=c.e.r;++l){p=d[l]?' table:style-name="ro'+d[l].ods+'"':"";s.push(" \n");for(o=0;oo)continue;if(f[u].s.r>l)continue;if(f[u].e.c\n")}s.push(" \n");return s.join("")};var n=function(e,r){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 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")};return function i(e,r){var t=[Rr];var i=bt({"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=bt({"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(_n().replace(/office:document-meta/g,"office:meta"))}else t.push("\n");n(t,e);t.push(" \n");t.push(" \n");for(var l=0;l!=e.SheetNames.length;++l)t.push(a(e.Sheets[e.SheetNames[l]],e,l,r));t.push(" \n");t.push(" \n");if(r.bookType=="fods")t.push("");else t.push("");return t.join("")}}();function bo(e,r){if(r.bookType=="fods")return go(e,r);var t=Nr();var a="";var n=[];var i=[];a="mimetype";Mr(t,a,"application/vnd.oasis.opendocument.spreadsheet");a="content.xml";Mr(t,a,go(e,r));n.push([a,"text/xml"]);i.push([a,"ContentFile"]);a="styles.xml";Mr(t,a,vo(e,r));n.push([a,"text/xml"]);i.push([a,"StylesFile"]);a="meta.xml";Mr(t,a,Rr+_n());n.push([a,"text/xml"]);i.push([a,"MetadataFile"]);a="manifest.rdf";Mr(t,a,Cn(i));n.push([a,"application/rdf+xml"]);a="META-INF/manifest.xml";Mr(t,a,kn(n));return t}function wo(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 yo(e){wo([["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 ko(e){wo([["cellDates",false],["bookSST",false],["bookType","xlsx"],["compression",false],["WTF",false]])(e)}function xo(e){if(dn.WS.indexOf(e)>-1)return"sheet";if(dn.CS&&e==dn.CS)return"chart";if(dn.DS&&e==dn.DS)return"dialog";if(dn.MS&&e==dn.MS)return"macro";return e&&e.length?e:"sheet"}function So(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,xo(e["!id"][r.id].Type)]})}catch(t){return null}return!e||e.length===0?null:e}function Co(e,r,t,a,n,i,s,l,o,c,f,u){try{i[a]=vn(Fr(e,t,true),r);var h=Er(e,r);var p;switch(l){case"sheet":p=Pl(h,r,n,o,i[a],c,f,u);break;case"chart":p=Il(h,r,n,o,i[a],c,f,u);if(!p||!p["!drawel"])break;var d=Ir(p["!drawel"].Target,r);var m=mn(d);var v=qi(Fr(e,d,true),vn(Fr(e,m,true),d));var g=Ir(v,d);var b=mn(g);p=ml(Fr(e,g,true),g,o,vn(Fr(e,b,true),g),c,p);break;case"macro":p=Rl(h,r,n,o,i[a],c,f,u);break;case"dialog":p=Ll(h,r,n,o,i[a],c,f,u);break;default:throw new Error("Unrecognized sheet type "+l);}s[a]=p;var w=[];if(i&&i[a])er(i[a]).forEach(function(t){var n="";if(i[a][t].Type==dn.CMNT){n=Ir(i[a][t].Target,r);var s=Ul(Er(e,n,true),n,o);if(!s||!s.length)return;es(p,s,false)}if(i[a][t].Type==dn.TCMNT){n=Ir(i[a][t].Target,r);w=w.concat(as(Er(e,n,true),o)); +}});if(w&&w.length)es(p,w,true,o.people||[])}catch(y){if(o.WTF)throw y}}function _o(e){return e.charAt(0)=="/"?e.slice(1):e}function Ao(e,r){Ue();r=r||{};yo(r);if(Ar(e,"META-INF/manifest.xml"))return po(e,r);if(Ar(e,"objectdata.xml"))return po(e,r);if(Ar(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);var t=Ye.utils.cfb_new();Or(e).forEach(function(r){Mr(t,r,Dr(e,r))});return parse_numbers_iwa(t)}throw new Error("Unsupported NUMBERS file")}if(!Ar(e,"[Content_Types].xml")){if(Ar(e,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(Ar(e,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");throw new Error("Unsupported ZIP file")}var a=Or(e);var n=hn(Fr(e,"[Content_Types].xml"));var i=false;var s,l;if(n.workbooks.length===0){l="xl/workbook.xml";if(Er(e,l,true))n.workbooks.push(l)}if(n.workbooks.length===0){l="xl/workbook.bin";if(!Er(e,l,true))throw new Error("Could not find workbook");n.workbooks.push(l);i=true}if(n.workbooks[0].slice(-3)=="bin")i=true;var o={};var c={};if(!r.bookSheets&&!r.bookProps){As=[];if(n.sst)try{As=zl(Er(e,_o(n.sst)),n.sst,r)}catch(f){if(r.WTF)throw f}if(r.cellStyles&&n.themes.length)o=$l(Fr(e,n.themes[0].replace(/^\//,""),true)||"",n.themes[0],r);if(n.style)c=Bl(Er(e,_o(n.style)),n.style,o,r)}n.links.map(function(t){try{var a=vn(Fr(e,mn(_o(t))),t);return jl(Er(e,_o(t)),a,t,r)}catch(n){}});var u=Nl(Er(e,_o(n.workbooks[0])),n.workbooks[0],r);var h={},p="";if(n.coreprops.length){p=Er(e,_o(n.coreprops[0]),true);if(p)h=En(p);if(n.extprops.length!==0){p=Er(e,_o(n.extprops[0]),true);if(p)Pn(p,h,r)}}var d={};if(!r.bookSheets||r.bookProps){if(n.custprops.length!==0){p=Fr(e,_o(n.custprops[0]),true);if(p)d=Ln(p,r)}}var m={};if(r.bookSheets||r.bookProps){if(u.Sheets)s=u.Sheets.map(function O(e){return e.name});else if(h.Worksheets&&h.SheetNames.length>0)s=h.SheetNames;if(r.bookProps){m.Props=h;m.Custprops=d}if(r.bookSheets&&typeof s!=="undefined")m.SheetNames=s;if(r.bookSheets?m.SheetNames:r.bookProps)return m}s={};var v={};if(r.bookDeps&&n.calcchain)v=Wl(Er(e,_o(n.calcchain)),n.calcchain,r);var g=0;var b={};var w,y;{var k=u.Sheets;h.Worksheets=k.length;h.SheetNames=[];for(var x=0;x!=k.length;++x){h.SheetNames[x]=k[x].name}}var S=i?"bin":"xml";var C=n.workbooks[0].lastIndexOf("/");var _=(n.workbooks[0].slice(0,C+1)+"_rels/"+n.workbooks[0].slice(C+1)+".rels").replace(/^\//,"");if(!Ar(e,_))_="xl/_rels/workbook."+S+".rels";var A=vn(Fr(e,_,true),_.replace(/_rels.*/,"s5s"));if((n.metadata||[]).length>=1){r.xlmeta=Hl(Er(e,_o(n.metadata[0])),n.metadata[0],r)}if((n.people||[]).length>=1){r.people=is(Er(e,_o(n.people[0])),r)}if(A)A=So(A,u.Sheets);var T=Er(e,"xl/worksheets/sheet.xml",true)?1:0;e:for(g=0;g!=h.Worksheets;++g){var E="sheet";if(A&&A[g]){w="xl/"+A[g][1].replace(/[\/]?xl\//,"");if(!Ar(e,w))w=A[g][1];if(!Ar(e,w))w=_.replace(/_rels\/.*$/,"")+A[g][1];E=A[g][2]}else{w="xl/worksheets/sheet"+(g+1-T)+"."+S;w=w.replace(/sheet0\./,"sheet.")}y=w.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(h.SheetNames[g].toLowerCase()!=r.sheets.toLowerCase())continue e;break;default:if(Array.isArray&&Array.isArray(r.sheets)){var F=false;for(var D=0;D!=r.sheets.length;++D){if(typeof r.sheets[D]=="number"&&r.sheets[D]==g)F=1;if(typeof r.sheets[D]=="string"&&r.sheets[D].toLowerCase()==h.SheetNames[g].toLowerCase())F=1}if(!F)continue e};}Co(e,w,y,h.SheetNames[g],g,b,s,E,r,u,o,c)}m={Directory:n,Workbook:u,Props:h,Custprops:d,Deps:v,Sheets:s,SheetNames:h.SheetNames,Strings:As,Styles:c,Themes:o,SSF:gr(X)};if(r&&r.bookFiles){if(e.files){m.keys=a;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(n.vba.length>0)m.vbaraw=Er(e,_o(n.vba[0]),true);else if(n.defaults&&n.defaults.bin===ls)m.vbaraw=Er(e,"xl/vbaProject.bin",true)}return m}function To(e,r){var t=r||{};var a="Workbook",n=Ye.find(e,a);try{a="/!DataSpaces/Version";n=Ye.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);parse_DataSpaceVersionInfo(n.content);a="/!DataSpaces/DataSpaceMap";n=Ye.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var i=parse_DataSpaceMap(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=Ye.find(e,a);if(!n||!n.content)throw new Error("ECMA-376 Encrypted file missing "+a);var s=parse_DataSpaceDefinition(n.content);if(s.length!=1||s[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+a);a="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary";n=Ye.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=Ye.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=Ye.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 Eo(e,r){if(r.bookType=="ods")return bo(e,r);if(r.bookType=="numbers")return write_numbers_iwa(e,r);if(r.bookType=="xlsb")return Fo(e,r);return Do(e,r)}function Fo(e,r){Zi=1024;if(e&&!e.SSF){e.SSF=gr(X)}if(e&&e.SSF){Ue();ze(e.SSF);r.revssf=ar(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(Es)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t=r.bookType=="xlsb"?"bin":"xml";var a=fs.indexOf(r.bookType)>-1;var n=un();ko(r=r||{});var i=Nr();var s="",l=0;r.cellXfs=[];Ms(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Mr(i,s,Dn(e.Props,r));n.coreprops.push(s);bn(r.rels,2,s,dn.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 c=0;c0){s="docProps/custom.xml";Mr(i,s,Bn(e.Custprops,r));n.custprops.push(s);bn(r.rels,4,s,dn.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:s="xl/worksheets/sheet"+l+"."+t;Mr(i,s,Xl(l-1,s,r,e,f));n.sheets.push(s);bn(r.wbrels,-1,"worksheets/sheet"+l+"."+t,dn.WS[0]);}if(u){var p=u["!comments"];var d=false;var m="";if(p&&p.length>0){m="xl/comments"+l+"."+t;Mr(i,m,Kl(p,m,r));n.comments.push(m);bn(f,-1,"../comments"+l+"."+t,dn.CMNT);d=true}if(u["!legacy"]){if(d)Mr(i,"xl/drawings/vmlDrawing"+l+".vml",Qi(l,u["!comments"]))}delete u["!comments"];delete u["!legacy"]}if(f["!id"].rId1)Mr(i,mn(s),gn(f))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Mr(i,s,Jl(r.Strings,s,r));n.strs.push(s);bn(r.wbrels,-1,"sharedStrings."+t,dn.SST)}s="xl/workbook."+t;Mr(i,s,Vl(e,s,r));n.workbooks.push(s);bn(r.rels,1,s,dn.WB);s="xl/theme/theme1.xml";Mr(i,s,Xi(e.Themes,r));n.themes.push(s);bn(r.wbrels,-1,"theme/theme1.xml",dn.THEME);s="xl/styles."+t;Mr(i,s,Yl(e,s,r));n.styles.push(s);bn(r.wbrels,-1,"styles."+t,dn.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Mr(i,s,e.vbaraw);n.vba.push(s);bn(r.wbrels,-1,"vbaProject.bin",dn.VBA)}s="xl/metadata."+t;Mr(i,s,ql(s));n.metadata.push(s);bn(r.wbrels,-1,"metadata."+t,dn.XLMETA);Mr(i,"[Content_Types].xml",pn(n,r));Mr(i,"_rels/.rels",gn(r.rels));Mr(i,"xl/_rels/workbook."+t+".rels",gn(r.wbrels));delete r.revssf;delete r.ssf;return i}function Do(e,r){Zi=1024;if(e&&!e.SSF){e.SSF=gr(X)}if(e&&e.SSF){Ue();ze(e.SSF);r.revssf=ar(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(Es)r.revStrings=new Map;else{r.revStrings={};r.revStrings.foo=[];delete r.revStrings.foo}var t="xml";var a=fs.indexOf(r.bookType)>-1;var n=un();ko(r=r||{});var i=Nr();var s="",l=0;r.cellXfs=[];Ms(r.cellXfs,{},{revssf:{General:0}});if(!e.Props)e.Props={};s="docProps/core.xml";Mr(i,s,Dn(e.Props,r));n.coreprops.push(s);bn(r.rels,2,s,dn.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 c=0;c0){s="docProps/custom.xml";Mr(i,s,Bn(e.Custprops,r));n.custprops.push(s);bn(r.rels,4,s,dn.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 p=(h||{})["!type"]||"sheet";switch(p){case"chart":;default:s="xl/worksheets/sheet"+l+"."+t;Mr(i,s,pl(l-1,r,e,u));n.sheets.push(s);bn(r.wbrels,-1,"worksheets/sheet"+l+"."+t,dn.WS[0]);}if(h){var d=h["!comments"];var m=false;var v="";if(d&&d.length>0){var g=false;d.forEach(function(e){e[1].forEach(function(e){if(e.T==true)g=true})});if(g){v="xl/threadedComments/threadedComment"+l+"."+t;Mr(i,v,ns(d,f,r));n.threadedcomments.push(v);bn(u,-1,"../threadedComments/threadedComment"+l+"."+t,dn.TCMNT)}v="xl/comments"+l+"."+t;Mr(i,v,ts(d,r));n.comments.push(v);bn(u,-1,"../comments"+l+"."+t,dn.CMNT);m=true}if(h["!legacy"]){if(m)Mr(i,"xl/drawings/vmlDrawing"+l+".vml",Qi(l,h["!comments"]))}delete h["!comments"];delete h["!legacy"]}if(u["!id"].rId1)Mr(i,mn(s),gn(u))}if(r.Strings!=null&&r.Strings.length>0){s="xl/sharedStrings."+t;Mr(i,s,ni(r.Strings,r));n.strs.push(s);bn(r.wbrels,-1,"sharedStrings."+t,dn.SST)}s="xl/workbook."+t;Mr(i,s,Ml(e,r));n.workbooks.push(s);bn(r.rels,1,s,dn.WB);s="xl/theme/theme1.xml";Mr(i,s,Xi(e.Themes,r));n.themes.push(s);bn(r.wbrels,-1,"theme/theme1.xml",dn.THEME);s="xl/styles."+t;Mr(i,s,Ii(e,r));n.styles.push(s);bn(r.wbrels,-1,"styles."+t,dn.STY);if(e.vbaraw&&a){s="xl/vbaProject.bin";Mr(i,s,e.vbaraw);n.vba.push(s);bn(r.wbrels,-1,"vbaProject.bin",dn.VBA)}s="xl/metadata."+t;Mr(i,s,Yi());n.metadata.push(s);bn(r.wbrels,-1,"metadata."+t,dn.XLMETA);if(f.length>1){s="xl/persons/person.xml";Mr(i,s,ss(f,r));n.people.push(s);bn(r.wbrels,-1,"persons/person.xml",dn.PEOPLE)}Mr(i,"[Content_Types].xml",pn(n,r));Mr(i,"_rels/.rels",gn(r.rels));Mr(i,"xl/_rels/workbook."+t+".rels",gn(r.wbrels));delete r.revssf;delete r.ssf;return i}function Oo(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=w(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 Mo(e,r){if(Ye.find(e,"EncryptedPackage"))return To(e,r);return parse_xlscfb(e,r)}function No(e,r){var t,a=e;var n=r||{};if(!n.type)n.type=y&&Buffer.isBuffer(e)?"buffer":"base64";t=Pr(a,n);return Ao(t,n)}function Po(e,r){var t=0;e:while(t=2&&n[3]===0)return WK_.to_workbook(a,t);if(n[2]===0&&(n[3]===8||n[3]===9))return WK_.to_workbook(a,t)}break;case 3:;case 131:;case 139:;case 140:return zn.to_workbook(a,t);case 123:if(n[1]===92&&n[2]===114&&n[3]===116)return RTF.to_workbook(a,t);break;case 10:;case 13:;case 32:return Io(a,t);case 137:if(n[1]===80&&n[2]===78&&n[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;}if($n.indexOf(n[0])>-1&&n[2]<=12&&n[3]<=31)return zn.to_workbook(a,t);return Bo(e,a,t,i)}function zo(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 Ze(r.file,Ye.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 Ye.write(e,r)}function Wo(e,r){var t=gr(r||{});var a=Eo(e,t);return Ho(a,t)}function jo(e,r){var t=gr(r||{});var a=Do(e,t);return Ho(a,t)}function Ho(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?Ye.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(_(n))}}if(r.password&&typeof encrypt_agile!=="undefined")return Uo(encrypt_agile(n,r.password),r);if(r.type==="file")return Ze(r.file,n);return r.type=="string"?ot(n):n}function Vo(e,r){var t=r||{};var a=write_xlscfb(e,t);return Uo(a,t)}function Xo(e,r,t){if(!t)t="";var a=t+e;switch(r.type){case"base64":return b(ct(a));case"binary":return ct(a);case"string":return e;case"file":return Ze(r.file,a,"utf8");case"buffer":{if(y)return k(a,"utf8");else if(typeof TextEncoder!=="undefined")return(new TextEncoder).encode(a);else return Xo(a,{type:"binary"}).split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Go(e,r){switch(r.type){case"base64":return b(e);case"binary":return e;case"string":return e;case"file":return Ze(r.file,e,"binary");case"buffer":{if(y)return k(e,"binary");else return e.split("").map(function(e){return e.charCodeAt(0)})};}throw new Error("Unrecognized type "+r.type)}function Yo(e,r){switch(r.type){case"string":;case"base64":;case"binary":var t="";for(var a=0;a0)n=0;var u=ya(o.s.r);var h=[];var p=[];var d=0,m=0;var v=Array.isArray(e);var g=o.s.r,b=0;var w={};if(v&&!e[g])e[g]=[];var y=c.skipHidden&&e["!cols"]||[];var k=c.skipHidden&&e["!rows"]||[];for(b=o.s.c;b<=o.e.c;++b){if((y[b]||{}).hidden)continue;h[b]=Ca(b);t=v?e[g][b]:e[h[b]+u];switch(a){case 1:i[b]=b-o.s.c;break;case 2:i[b]=h[b];break;case 3:i[b]=c.header[b-o.s.c];break;default:if(t==null)t={w:"__EMPTY",t:"s"};l=s=Pa(t,null,c);m=w[s]||0;if(!m)w[s]=1;else{do{l=s+"_"+m++}while(w[l]);w[s]=m;w[l]=1}i[b]=l;}}for(g=o.s.r+n;g<=o.e.r;++g){if((k[g]||{}).hidden)continue;var x=rc(e,o,g,h,a,i,v,c);if(x.isempty===false||(a===1?c.blankrows!==false:!!c.blankrows))p[d++]=x.row}p.length=d;return p}var ac=/"/g;function nc(e,r,t,a,n,i,s,l){var o=true;var c=[],f="",u=ya(t);for(var h=r.s.c;h<=r.e.c;++h){if(!a[h])continue;var p=l.dense?(e[t]||[])[h]:e[a[h]+u];if(p==null)f="";else if(p.v!=null){o=false;f=""+(l.rawNumbers&&p.t=="n"?p.v:Pa(p,null,l));for(var d=0,m=0;d!==f.length;++d)if((m=f.charCodeAt(d))===n||m===i||m===34||l.forceQuotes){f='"'+f.replace(ac,'""')+'"';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(ac,'""')+'"'}else f="";c.push(f)}if(l.blankrows===false&&o)return null;return c.join(s)}function ic(e,r){var t=[];var a=r==null?{}:r;if(e==null||e["!ref"]==null)return"";var n=Ma(e["!ref"]);var i=a.FS!==undefined?a.FS:",",s=i.charCodeAt(0);var l=a.RS!==undefined?a.RS:"\n",o=l.charCodeAt(0);var c=new RegExp((i=="|"?"\\|":i)+"+$");var f="",u=[];a.dense=Array.isArray(e);var h=a.skipHidden&&e["!cols"]||[];var p=a.skipHidden&&e["!rows"]||[];for(var d=n.s.c;d<=n.e.c;++d)if(!(h[d]||{}).hidden)u[d]=Ca(d);var m=0;for(var v=n.s.r;v<=n.e.r;++v){if((p[v]||{}).hidden)continue;f=nc(e,n,v,u,s,o,i,a);if(f==null){continue}if(a.strip)f=f.replace(c,"");if(f||a.blankrows!==false)t.push((m++?l:"")+f)}delete a.dense;return t.join("")}function sc(e,r){if(!r)r={};r.FS="\t";r.RS="\n";var t=ic(e,r);if(typeof $cptable=="undefined"||r.type=="string")return t;var a=$cptable.utils.encode(1200,t,"str");return String.fromCharCode(255)+String.fromCharCode(254)+a}function lc(e){var r="",t,a="";if(e==null||e["!ref"]==null)return[];var n=Ma(e["!ref"]),i="",s=[],l;var o=[];var c=Array.isArray(e);for(l=n.s.c;l<=n.e.c;++l)s[l]=Ca(l);for(var f=n.s.r;f<=n.e.r;++f){i=ya(f);for(l=n.s.c;l<=n.e.c;++l){r=s[l]+i;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 oc(e,r,t){var a=t||{};var n=+!a.skipHeader;var i=e||{};var s=0,l=0;if(i&&a.origin!=null){if(typeof a.origin=="number")s=a.origin;else{var o=typeof a.origin=="string"?Ea(a.origin):a.origin;s=o.r;l=o.c}}var c;var f={s:{c:0,r:0},e:{c:l,r:s+r.length-1+n}};if(i["!ref"]){var u=Ma(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(s==-1){s=u.e.r+1;f.e.r=s+r.length-1+n}}else{if(s==-1){s=0;f.e.r=r.length-1+n}}var h=a.header||[],p=0;r.forEach(function(e,r){er(e).forEach(function(t){if((p=h.indexOf(t))==-1)h[p=h.length]=t;var o=e[t];var f="z";var u="";var d=Fa({c:l+p,r:s+r+n});c=fc(i,d);if(o&&typeof o==="object"&&!(o instanceof Date)){i[d]=o}else{if(typeof o=="number")f="n";else if(typeof o=="boolean")f="b";else if(typeof o=="string")f="s";else if(o instanceof Date){f="d";if(!a.cellDates){f="n";o=sr(o)}u=a.dateNF||X[14]}else if(o===null&&a.nullError){f="e";o=0}if(!c)i[d]=c={t:f,v:o};else{c.t=f;c.v=o;delete c.w;delete c.R;if(u)c.z=u}if(u)c.z=u}})});f.e.c=Math.max(f.e.c,l+h.length-1);var d=ya(s);if(n)for(p=0;p=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 hc(){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 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}Tl(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 dc(e,r,t){if(!e.Workbook)e.Workbook={};if(!e.Workbook.Sheets)e.Workbook.Sheets=[];var a=uc(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 mc(e,r){e.z=r;return e}function vc(e,r,t){if(!r){delete e.l}else{e.l={Target:r};if(t)e.l.Tooltip=t}return e}function gc(e,r,t){return vc(e,"#"+r,t)}function bc(e,r,t){if(!e.c)e.c=[];e.c.push({t:r,a:t||"SheetJS"})}function wc(e,r,t,a){var n=typeof r!="string"?r:Ma(r);var i=typeof r=="string"?r:Oa(r);for(var s=n.s.r;s<=n.e.r;++s)for(var l=n.s.c;l<=n.e.c;++l){var o=fc(e,s,l);o.t="n";o.F=i;delete o.v;if(s==n.s.r&&l==n.s.c){o.f=t;if(a)o.D=true}}return e}var yc={encode_col:Ca,encode_row:ya,encode_cell:Fa,encode_range:Oa,decode_col:Sa,decode_row:wa,split_cell:Ta,decode_cell:Ea,decode_range:Da,format_cell:Pa,sheet_add_aoa:Ra,sheet_add_json:oc,sheet_add_dom:io,aoa_to_sheet:La,json_to_sheet:cc,table_to_sheet:so,table_to_book:lo,sheet_to_csv:ic,sheet_to_txt:sc,sheet_to_json:tc,sheet_to_html:no,sheet_to_formulae:lc,sheet_to_row_object_array:tc,sheet_get_cell:fc,book_new:hc,book_append_sheet:pc,book_set_sheet_visibility:dc,cell_set_number_format:mc,cell_set_hyperlink:vc,cell_set_internal_link:gc,cell_add_comment:bc,sheet_set_array_formula:wc,consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};if(typeof parse_xlscfb!=="undefined")e.parse_xlscfb=parse_xlscfb;e.parse_zip=Ao;e.read=$o;e.readFile=zo;e.readFileSync=zo;e.write=Ko;e.writeFile=Zo;e.writeFileSync=Zo;e.writeFileAsync=ec;e.utils=yc;e.writeXLSX=Jo;e.writeFileXLSX=Qo;e.SSF=We;if(typeof __stream!=="undefined")e.stream=__stream;if(typeof Ye!=="undefined")e.CFB=Ye;if(typeof require!=="undefined"){var kc=undefined;if((kc||{}).Readable)set_readable(kc.Readable)}}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.mini.min.map b/dist/xlsx.mini.min.map index a4d34de..636254a 100644 --- a/dist/xlsx.mini.min.map +++ b/dist/xlsx.mini.min.map @@ -1 +1 @@ -{"version":3,"sources":["dist/xlsx.mini.js"],"names":["XLSX","make_xlsx_lib","version","current_codepage","current_ansi","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","DENSE","DIF_XL","Base64","map","encode","input","c3","e1","e2","e3","e4","isNaN","charAt","decode","replace","has_buf","Buffer","undefined","node","Buffer_from","nbfs","from","e","buf","enc","bind","alloc","n","allocUnsafe","new_raw_buf","Uint8Array","Array","new_unsafe_buf","s2a","s","split","s2ab","ArrayBuffer","view","a2s","isArray","c","a2u","Error","ab2a","utf8decode","content","out","widx","L","ridx","d","push","bconcat","bufs","maxlen","set","concat","apply","call","chr0","chr1","SSF","make_ssf","_strrev","fill","l","pad0","v","t","pad_","rpad_","pad0r1","Math","round","pad0r2","p2_32","pow","pad0r","isgeneral","days","months","init_table","table_fmt","default_map","defi","default_str","5","63","6","64","7","65","8","66","41","42","43","44","frac","D","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","floor","q","parse_date_code","opts","b2","date","time","dow","dout","T","u","y","m","H","M","S","abs","date1904","Date","setDate","getDate","getFullYear","getMonth","getDay","fix_hijri","basedate","dnthresh","getTime","base1904","datenum_local","epoch","getTimezoneOffset","general_fmt_int","toString","_general_int","general_fmt_num","make_general_fmt_num","trailing_zeroes_and_decimal","strip_decimal","mantissa_zeroes_and_decimal","exp_with_single_digit","normalize_exp","small_exp","w","toFixed","toPrecision","toExponential","large_exp","general_fmt_num_base","V","log","LOG10E","substr","toUpperCase","_general_num","general_fmt","format","_general","write_date","type","fmt","val","ss0","ss","tt","outl","outstr","commaify","j","write_num","make_write_num","pct1","write_num_pct","sfmt","mul","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","split_fmt","in_str","_split","abstime","fmt_is_date","is_date","eval_fmt","flen","lst","dt","hr","toLowerCase","bt","ssm","nstr","jj","vv","myv","ostr","decpt","lasti","retval","_eval","cfregex","cfregex2","chkcond","thresh","parseFloat","choose_fmt","f","lat","m1","m2","dateNF","table","load_entry","load","_table","get_table","load_table","tbl","XLMLFormatMap","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","SSFImplicit","23","24","25","26","27","28","29","30","31","32","33","34","35","36","50","51","52","53","54","55","56","57","58","59","60","61","62","67","68","70","71","72","73","74","75","76","78","79","80","81","dateNFregex","dateNF_regex","RegExp","dateNF_fix","Y","forEach","datestr","timestr","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","fs","get_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","isBuffer","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","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","console","error","message","_inflateRawSync","usz","_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","csz","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","utils","cfb_gc","cfb_del","splice","cfb_mov","old_name","new_name","writeFile","ReadShift","CheckField","_inflateRaw","_fs","require","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","keys","ks","o2","prototype","hasOwnProperty","evert_key","obj","key","K","evert","evert_num","evert_arr","datenum","refdate","refoffset","numdate","setTime","parse_isodur","sec","good_pd_date","good_pd","parseDate","fixdate","cc2str","arr","debomit","dup","JSON","stringify","fuzzynum","Number","isFinite","NaN","wt","lower_months","fuzzydate","getYear","lower","safe_split_regex","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","tagregex","nsregex","nsregex2","parsexmltag","tag","skip_root","skip_LC","z","eq","quot","strip_ns","encodings",""","'",">","<","&","rencoding","unescapexml","encregex","coderegex","decregex","charegex","escapexml","escapexmltag","htmlcharegex","escapehtml","escapexlml","xlml_fixstr","entregex","entrepl","xlml_unfixstr","parsexmlbool","value","utf8read","utf8reada","orig","utf8readb","ww","corpus","utf8readc","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","xlsx","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","__readUInt16LE","___utf16le","__hexlify","___hexlify","__utf8","__readUInt8","___utf8","__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","utf8_b","double_","readDoubleLE","is_buf_b","cpdoit","$cptable","__readInt16LE","__readInt32BE","oI","oR","oo","loc","this","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cppayload","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","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","VT_I2","VT_I4","VT_BOOL","VT_VARIANT","VT_UI4","VT_LPSTR","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR","VT_STRING","VT_USTR","VT_CUSTOM","DocSummaryPIDDSI","3","4","9","10","11","12","13","14","15","16","17","19","22","2147483648","2147483651","1919054434","SummaryPIDSI","18","CountryEnum","20","39","45","46","47","48","49","82","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","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","CTYPE_XML_ROOT","xmlns:xsd","xmlns:xsi","write_ct","type2ct","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","VBA","get_rels_path","parse_rels","currentFilePath","!id","rel","Type","Target","Id","TargetMode","canonictarget","RELS_ROOT","write_rels","rid","RELS_EXTERN","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","21","37","38","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","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_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","rstr","record","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","rc_to_a1","shrbase","shift_formula_str","F_seen","hidden","process_col","hpt","hpx","pt2px","sylk_to_sheet","aoasht","sylk_to_workbook","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","sheet_to_dif","push_field","pf","topic","push_value","po","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","cellText","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","wb","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","write_xlmeta_xml","parse_xlink_xml","parse_xlink_bin","xlink_parse","parse_drawing","id","_shapeid","write_comments_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","joinstyle","gradientshapeok","o:connecttype","o:spt","coordsize","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","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","sname","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","Workbook","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","names","Name","Sheet","Ref","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","write_cs_xml","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","WBProps","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","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_theme","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","write_wb","write_wb_bin","write_ws","write_ws_bin","write_cs","write_cs_bin","write_sty","write_sty_bin","write_sst","write_sst_bin","write_cmnt","write_comments_bin","write_xlmeta","write_xlmeta_bin","HTML_","html_to_sheet","mtch2","hd","midx","colspan","rowspan","_t","html_to_book","book_new","book_append_sheet","make_html_row","editable","make_html_preamble","_BEGIN","_END","sheet_to_html","_row","BEGIN","END","_preamble","sheet_add_dom","or_R","or_C","getElementsByTagName","is_dom_element_hidden","display","elts","hasAttribute","getAttribute","innerHTML","Aelts","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","number_formats_ods","day","month","year","hours","minutes","seconds","am-pm","day-of-week","era","quarter","parse_content_xml","NFtag","pidx","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","number_format_map","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","lastIndex","rptR","rpt","nrange","ptp","bookSheets","parse_ods","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_content_ods","write_text_p","null_cell_xml","covered_cell_xml","mi","ods","ROWS","skip","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","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","entries","dir","binname","bookProps","link","propdata","pluck","Custprops","deps","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Directory","Deps","Styles","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_xlsxb","write_zip_xlsx","foo","vbafmt","General","_sn","_i","wsrels","_type","need_vml","rId1","needtc","read_cfb","parse_xlscfb","read_zip","read_plaintext","main","parse_xlml","read_plaintext_raw","read_utf16","bstrify","read_prn","readSync","ab","vu","WK_","RTF","write_cfb_ctr","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_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","JS","ws_get_cell_stub","json_to_sheet","RC","wb_sheet_idx","sh","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","table_to_sheet","sheet_to_row_object_array","sheet_get_cell","SHEET_VISIBLE","SHEET_HIDDEN","SHEET_VERY_HIDDEN","readFile","writeXLSX","writeFileXLSX","__stream","stream","strmod","Readable","set_readable","module","define","amd","window"],"mappings":";AAIA,GAAIA,QACJ,SAASC,eAAcD,GACvBA,EAAKE,QAAU,QACf,IAAIC,GAAmB,KAAMC,EAAe,IAE5C,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,MAAQxB,GAAeE,EAAM,GAAKsB,EACjG,SAASE,KAAeH,EAAS,MAEjC,GAAII,GAAS,SAASH,GAAMzB,EAAmByB,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,GAC7D,IAAIG,GAAQ,IACZ,IAAIC,GAAS,IACb,IAAIC,GAAS,WACX,GAAIC,GAAM,mEACV,QACEC,OAAQ,SAASC,GACf,GAAIxB,GAAI,EACR,IAAIW,GAAK,EAAGC,EAAK,EAAGa,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,CACzD,KAAK,GAAI5B,GAAI,EAAGA,EAAIuB,EAAMrB,QAAU,CAClCQ,EAAKa,EAAMpB,WAAWH,IACtByB,GAAKf,GAAM,CACXC,GAAKY,EAAMpB,WAAWH,IACtB0B,IAAMhB,EAAK,IAAM,EAAIC,GAAM,CAC3Ba,GAAKD,EAAMpB,WAAWH,IACtB2B,IAAMhB,EAAK,KAAO,EAAIa,GAAM,CAC5BI,GAAKJ,EAAK,EACV,IAAIK,MAAMlB,GAAK,CACbgB,EAAKC,EAAK,OACL,IAAIC,MAAML,GAAK,CACpBI,EAAK,GAEP7B,GAAKsB,EAAIS,OAAOL,GAAMJ,EAAIS,OAAOJ,GAAML,EAAIS,OAAOH,GAAMN,EAAIS,OAAOF,GAErE,MAAO7B,IAETgC,OAAQ,SAASR,GACf,GAAIxB,GAAI,EACR,IAAIW,GAAK,EAAGC,EAAK,EAAGa,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,EAAGC,EAAK,CACzDL,GAAQA,EAAMS,QAAQ,eAAgB,GACtC,KAAK,GAAIhC,GAAI,EAAGA,EAAIuB,EAAMrB,QAAU,CAClCuB,EAAKJ,EAAI5B,QAAQ8B,EAAMO,OAAO9B,KAC9B0B,GAAKL,EAAI5B,QAAQ8B,EAAMO,OAAO9B,KAC9BU,GAAKe,GAAM,EAAIC,GAAM,CACrB3B,IAAKM,OAAOC,aAAaI,EACzBiB,GAAKN,EAAI5B,QAAQ8B,EAAMO,OAAO9B,KAC9BW,IAAMe,EAAK,KAAO,EAAIC,GAAM,CAC5B,IAAIA,IAAO,GAAI,CACb5B,GAAKM,OAAOC,aAAaK,GAE3BiB,EAAKP,EAAI5B,QAAQ8B,EAAMO,OAAO9B,KAC9BwB,IAAMG,EAAK,IAAM,EAAIC,CACrB,IAAIA,IAAO,GAAI,CACb7B,GAAKM,OAAOC,aAAakB,IAG7B,MAAOzB,OAIb,IAAIkC,SAAkBC,UAAW,mBAAsBC,aAAc,wBAA+B,kBAAsBC,IAE1H,IAAIC,GAAc,YAElB,UAAUH,UAAW,YAAa,CACjC,GAAII,IAAQJ,OAAOK,IACnB,KAAID,EAAM,IAAMJ,OAAOK,KAAK,MAAO,QAAW,MAAMC,GAAKF,EAAO,KAChED,EAAcC,EAAO,SAASG,EAAKC,GAAO,MAAO,GAAQ,GAAIR,QAAOO,EAAKC,GAAO,GAAIR,QAAOO,IAAUP,OAAOK,KAAKI,KAAKT,OAEtH,KAAIA,OAAOU,MAAOV,OAAOU,MAAQ,SAASC,GAAK,MAAO,IAAIX,QAAOW,GAEjE,KAAIX,OAAOY,YAAaZ,OAAOY,YAAc,SAASD,GAAK,MAAO,IAAIX,QAAOW,IAG9E,QAASE,GAAY9C,GAEpB,MAAOgC,GAAUC,OAAOU,MAAM3C,SAAc+C,aAAc,YAAc,GAAIA,YAAW/C,GAAO,GAAIgD,OAAMhD,GAIzG,QAASiD,GAAejD,GAEvB,MAAOgC,GAAUC,OAAOY,YAAY7C,SAAc+C,aAAc,YAAc,GAAIA,YAAW/C,GAAO,GAAIgD,OAAMhD,GAI/G,GAAIkD,GAAM,QAASA,IAAIC,GACtB,GAAGnB,EAAS,MAAOI,GAAYe,EAAG,SAClC,OAAOA,GAAEC,MAAM,IAAIhC,IAAI,SAASN,GAAI,MAAOA,GAAEZ,WAAW,GAAK,MAG9D,SAASmD,GAAKF,GACb,SAAUG,eAAgB,YAAa,MAAOJ,GAAIC,EAClD,IAAIX,GAAM,GAAIc,aAAYH,EAAElD,QAASsD,EAAO,GAAIR,YAAWP,EAC3D,KAAK,GAAIzC,GAAE,EAAGA,GAAGoD,EAAElD,SAAUF,EAAGwD,EAAKxD,GAAKoD,EAAEjD,WAAWH,GAAK,GAC5D,OAAOyC,GAGR,QAASgB,GAAI3D,GACZ,GAAGmD,MAAMS,QAAQ5D,GAAO,MAAOA,GAAKuB,IAAI,SAASsC,GAAK,MAAOtD,QAAOC,aAAaqD,KAAOpD,KAAK,GAC7F,IAAIR,KAAQ,KAAI,GAAIC,GAAI,EAAGA,EAAIF,EAAKI,SAAUF,EAAGD,EAAEC,GAAKK,OAAOC,aAAaR,EAAKE,GAAK,OAAOD,GAAEQ,KAAK,IAGrG,QAASqD,GAAI9D,GACZ,SAAUkD,cAAe,YAAa,KAAM,IAAIa,OAAM,cACtD,OAAO,IAAIb,YAAWlD,GAGvB,QAASgE,GAAKhE,GACb,SAAUyD,cAAe,YAAa,KAAM,IAAIM,OAAM,cACtD,IAAG/D,YAAgByD,aAAa,MAAOO,GAAK,GAAId,YAAWlD,GAC5D,IAAIC,GAAI,GAAIkD,OAAMnD,EAAKI,OACtB,KAAI,GAAIF,GAAI,EAAGA,EAAIF,EAAKI,SAAUF,EAAGD,EAAEC,GAAKF,EAAKE,EACjD,OAAOD,GAGR,QAASgE,GAAWC,GACnB,GAAIC,MAAUC,EAAO,EAAGC,EAAIH,EAAQ9D,OAAS,GAC7C,IAAIH,GAAIgD,EAAYiB,EAAQ9D,OAAS,IACrC,KAAI,GAAIkE,GAAO,EAAGA,EAAOJ,EAAQ9D,SAAUkE,EAAM,CAChD,GAAIT,GAAIK,EAAQ7D,WAAWiE,EAC3B,IAAGT,EAAI,IAAM5D,EAAEmE,KAAUP,MACpB,IAAGA,EAAI,KAAO,CAClB5D,EAAEmE,KAAW,IAAMP,GAAG,EAAG,EACzB5D,GAAEmE,KAAW,IAAKP,EAAE,OACd,IAAGA,GAAK,OAAUA,EAAI,MAAQ,CACpCA,GAAKA,EAAE,MAAM,EACb,IAAIU,GAAIL,EAAQ7D,aAAaiE,GAAM,IACnCrE,GAAEmE,KAAW,IAAMP,GAAG,EAAG,CACzB5D,GAAEmE,KAAW,IAAMP,GAAG,EAAG,EACzB5D,GAAEmE,KAAW,IAAMG,GAAG,EAAG,IAAMV,EAAE,IAAI,CACrC5D,GAAEmE,KAAW,IAAKG,EAAE,OACd,CACNtE,EAAEmE,KAAW,IAAMP,GAAG,GAAI,EAC1B5D,GAAEmE,KAAW,IAAMP,GAAG,EAAG,EACzB5D,GAAEmE,KAAW,IAAKP,EAAE,GAErB,GAAGO,EAAOC,EAAG,CACZF,EAAIK,KAAKvE,EAAEa,MAAM,EAAGsD,GACpBA,GAAO,CACPnE,GAAIgD,EAAY,MAChBoB,GAAI,OAGNF,EAAIK,KAAKvE,EAAEa,MAAM,EAAGsD,GACpB,OAAOK,GAAQN,GAGhB,GAAIM,GAAU,SAASC,GACtB,SAAUxB,cAAe,YAAa,CACrC,GAAIhD,GAAI,EAAGyE,EAAS,CACpB,KAAIzE,EAAI,EAAGA,EAAIwE,EAAKtE,SAAUF,EAAGyE,GAAUD,EAAKxE,GAAGE,MACnD,IAAIH,GAAI,GAAIiD,YAAWyB,EACvB,IAAIxE,GAAM,CACV,KAAID,EAAI,EAAGyE,EAAS,EAAGzE,EAAIwE,EAAKtE,OAAQuE,GAAUxE,IAAOD,EAAG,CAC3DC,EAAMuE,EAAKxE,GAAGE,MACd,IAAGsE,EAAKxE,YAAcgD,YAAYjD,EAAE2E,IAAIF,EAAKxE,GAAIyE,OAC5C,UAAUD,GAAKxE,IAAM,SAAU,CAAE,KAAM,UACvCD,GAAE2E,IAAI,GAAI1B,YAAWwB,EAAKxE,IAAKyE,GAErC,MAAO1E,GAER,SAAU4E,OAAOC,SAAUJ,EAAKnD,IAAI,SAASoB,GAAO,MAAOQ,OAAMS,QAAQjB,GAAOA,KAAS7B,MAAMiE,KAAKpC,MAGrG,IAAIqC,GAAO,UAAWC,EAAO,kBAG7B,IAAIC,KACJ,SAASC,GAASD,GAClBA,EAAIlH,QAAU,QACd,SAASoH,GAAQnE,GAAK,GAAIhB,GAAI,GAAIC,EAAIe,EAAEb,OAAO,CAAG,OAAMF,GAAG,EAAGD,GAAKgB,EAAEe,OAAO9B,IAAM,OAAOD,GACzF,QAASoF,GAAKxB,EAAEyB,GAAK,GAAIrF,GAAI,EAAI,OAAMA,EAAEG,OAASkF,EAAGrF,GAAG4D,CAAG,OAAO5D,GAClE,QAASsF,GAAKC,EAAEjB,GAAG,GAAIkB,GAAE,GAAGD,CAAG,OAAOC,GAAErF,QAAQmE,EAAEkB,EAAEJ,EAAK,IAAId,EAAEkB,EAAErF,QAAQqF,EACzE,QAASC,GAAKF,EAAEjB,GAAG,GAAIkB,GAAE,GAAGD,CAAE,OAAOC,GAAErF,QAAQmE,EAAEkB,EAAEJ,EAAK,IAAId,EAAEkB,EAAErF,QAAQqF,EACxE,QAASE,GAAMH,EAAEjB,GAAG,GAAIkB,GAAE,GAAGD,CAAG,OAAOC,GAAErF,QAAQmE,EAAEkB,EAAEA,EAAEJ,EAAK,IAAId,EAAEkB,EAAErF,QACpE,QAASwF,GAAOJ,EAAEjB,GAAG,GAAIkB,GAAE,GAAGI,KAAKC,MAAMN,EAAI,OAAOC,GAAErF,QAAQmE,EAAEkB,EAAEJ,EAAK,IAAId,EAAEkB,EAAErF,QAAQqF,EACvF,QAASM,GAAOP,EAAEjB,GAAG,GAAIkB,GAAE,GAAGD,CAAG,OAAOC,GAAErF,QAAQmE,EAAEkB,EAAEJ,EAAK,IAAId,EAAEkB,EAAErF,QAAQqF,EAC3E,GAAIO,GAAQH,KAAKI,IAAI,EAAE,GACvB,SAASC,GAAMV,EAAEjB,GAAG,GAAGiB,EAAEQ,GAAOR,GAAGQ,EAAO,MAAOJ,GAAOJ,EAAEjB,EAAI,IAAIrE,GAAI2F,KAAKC,MAAMN,EAAI,OAAOO,GAAO7F,EAAEqE,GACrG,QAAS4B,GAAU7C,EAAGpD,GAAKA,EAAIA,GAAK,CAAG,OAAOoD,GAAElD,QAAU,EAAIF,IAAMoD,EAAEjD,WAAWH,GAAG,MAAQ,MAAQoD,EAAEjD,WAAWH,EAAE,GAAG,MAAQ,MAAQoD,EAAEjD,WAAWH,EAAE,GAAG,MAAQ,MAAQoD,EAAEjD,WAAWH,EAAE,GAAG,MAAQ,MAAQoD,EAAEjD,WAAWH,EAAE,GAAG,MAAQ,MAAQoD,EAAEjD,WAAWH,EAAE,GAAG,MAAQ,KAAOoD,EAAEjD,WAAWH,EAAE,GAAG,MAAQ,IACvS,GAAIkG,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,GAAWb,GACnBA,EAAE,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,2BAGR,GAAIc,KACJD,GAAWC,EAIX,IAAIC,KACJ,IAAIC,GAAO,CAGX,KAAIA,EAAO,EAAGA,GAAQ,IAAKA,EAAMD,EAAYC,GAAQ,GAAKA,CAG1D,KAAIA,EAAO,GAAIA,GAAQ,KAAMA,EAAMD,EAAYC,GAAQ,CAGvD,KAAIA,EAAO,GAAIA,GAAQ,KAAMA,EAAMD,EAAYC,GAAQ,EAEvD,KAAIA,EAAO,GAAIA,GAAQ,KAAMA,EAAMD,EAAYC,GAAQ,EAGvD,KAAIA,EAAO,GAAIA,GAAQ,KAAMA,EAAMD,EAAYC,GAAQA,EAAO,EAE9D,KAAIA,EAAO,GAAIA,GAAQ,KAAMA,EAAMD,EAAYC,GAAQA,EAAO,EAE9D,KAAIA,EAAO,GAAIA,GAAQ,KAAMA,EAAMD,EAAYC,GAAQA,EAAO,EAG9D,KAAIA,EAAO,GAAIA,GAAQ,KAAMA,EAAMD,EAAYC,GAAQA,EAAO,EAG9D,KAAIA,EAAO,GAAIA,GAAQ,KAAMA,EAAMD,EAAYC,GAAQA,EAAO,EAG9D,KAAIA,EAAO,GAAIA,GAAQ,KAAMA,EAAMD,EAAYC,GAAQA,EAAO,EAK9D,IAAIC,IAEHC,EAAI,4BACJC,GAAI,4BAGJC,EAAI,iCACJC,GAAI,iCAGJC,EAAI,kCACJC,GAAI,kCAGJC,EAAI,uCACJC,GAAI,uCAGJC,GAAI,8CAGJC,GAAI,uDAGJC,GAAI,sDAGJC,GAAI,+DAGL,SAASC,GAAKtG,EAAGuG,EAAGC,GACnB,GAAIC,GAAMzG,EAAI,GAAK,EAAI,CACvB,IAAI0G,GAAI1G,EAAIyG,CACZ,IAAIE,GAAM,EAAGC,EAAM,EAAGC,EAAI,CAC1B,IAAIC,GAAM,EAAGC,EAAM,EAAGC,EAAI,CAC1B,IAAIC,GAAIrC,KAAKsC,MAAMR,EACnB,OAAMK,EAAMR,EAAG,CACdU,EAAIrC,KAAKsC,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,GAAIvC,KAAKsC,MAAMT,EAAMI,EAAEG,EAC3B,QAAQG,EAAGV,EAAII,EAAIM,EAAEH,EAAGA,GAEzB,QAASI,GAAgB7C,EAAE8C,EAAKC,GAC/B,GAAG/C,EAAI,SAAWA,EAAI,EAAG,MAAO,KAChC,IAAIgD,GAAQhD,EAAE,EAAIiD,EAAO5C,KAAKsC,MAAM,OAAS3C,EAAIgD,IAAQE,EAAI,CAC7D,IAAIC,KACJ,IAAIxE,IAAKqD,EAAEgB,EAAMI,EAAEH,EAAMI,EAAE,OAAOrD,EAAEgD,GAAMC,EAAKK,EAAE,EAAEC,EAAE,EAAExE,EAAE,EAAEyE,EAAE,EAAEC,EAAE,EAAEC,EAAE,EAAEd,EAAE,EACzE,IAAGvC,KAAKsD,IAAIhF,EAAI0E,GAAK,KAAM1E,EAAI0E,EAAI,CACnC,IAAGP,GAAQA,EAAKc,SAAUZ,GAAQ,IAClC,IAAGrE,EAAI0E,EAAI,MAAQ,CAClB1E,EAAI0E,EAAI,CACR,MAAKJ,GAAQ,MAAO,CAAEtE,EAAIyE,EAAIH,EAAO,IAAKD,IAAQrE,EAAIqD,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,IAAIjE,GAAI,GAAI8E,MAAK,KAAM,EAAG,EAC1B9E,GAAE+E,QAAQ/E,EAAEgF,UAAYf,EAAO,EAC/BG,IAAQpE,EAAEiF,cAAejF,EAAEkF,WAAW,EAAElF,EAAEgF,UAC1Cb,GAAMnE,EAAEmF,QACR,IAAGlB,EAAO,GAAIE,GAAOA,EAAM,GAAK,CAChC,IAAGH,EAAIG,EAAMiB,EAAUpF,EAAGoE,GAE3BxE,EAAI2E,EAAIH,EAAK,EAAIxE,GAAI4E,EAAIJ,EAAK,EAAIxE,GAAII,EAAIoE,EAAK,EAC/CxE,GAAI+E,EAAIT,EAAO,EAAIA,GAAO5C,KAAKsC,MAAMM,EAAO,GAC5CtE,GAAI8E,EAAIR,EAAO,EAAIA,GAAO5C,KAAKsC,MAAMM,EAAO,GAC5CtE,GAAI6E,EAAIP,CACRtE,GAAIiE,EAAIM,CACR,OAAOvE,GAERe,EAAImD,gBAAkBA,CACtB,IAAIuB,GAAW,GAAIP,MAAK,KAAM,GAAI,GAAI,EAAG,EAAG,EAC5C,IAAIQ,GAAWD,EAASE,SACxB,IAAIC,GAAW,GAAIV,MAAK,KAAM,EAAG,EAAG,EAAG,EAAG,EAC1C,SAASW,GAAcxE,EAAG4D,GACzB,GAAIa,GAAQzE,EAAEsE,SACd,IAAGV,EAAUa,GAAS,KAAK,GAAG,GAAG,GAAG,QAC/B,IAAGzE,GAAKuE,EAAUE,GAAS,GAAG,GAAG,GAAG,GACzC,QAAQA,GAASJ,GAAYrE,EAAE0E,oBAAsBN,EAASM,qBAAuB,OAAW,GAAK,GAAK,GAAK,KAGhH,QAASC,GAAgB3E,GAAK,MAAOA,GAAE4E,SAAS,IAChDlF,EAAImF,aAAeF,CAInB,IAAIG,GAAkB,QAAUC,KAC/B,GAAIC,GAA8B,0BAClC,SAASC,GAAcxK,GACtB,MAAQA,GAAEN,QAAQ,OAAS,EAAKM,EAAIA,EAAEiC,QAAQsI,EAA6B,MAI5E,GAAIE,GAA8B,6BAClC,IAAIC,GAAwB,cAC5B,SAASC,GAAc3K,GACtB,GAAGA,EAAEN,QAAQ,OAAS,EAAG,MAAOM,EAChC,OAAOA,GAAEiC,QAAQwI,EAA4B,OAAOxI,QAAQyI,EAAsB,SAInF,QAASE,GAAUrF,GAClB,GAAIsF,GAAKtF,EAAE,EAAE,GAAG,EAChB,IAAIvF,GAAIwK,EAAcjF,EAAEuF,QAAQ,IAAM,IAAG9K,EAAEG,QAAU0K,EAAG,MAAO7K,EAC/DA,GAAIuF,EAAEwF,YAAY,GAAK,IAAG/K,EAAEG,QAAU0K,EAAG,MAAO7K,EAChD,OAAOuF,GAAEyF,cAAc,GAIxB,QAASC,GAAU1F,GAClB,GAAIvF,GAAIwK,EAAcjF,EAAEuF,QAAQ,IAChC,OAAQ9K,GAAEG,QAAUoF,EAAE,EAAE,GAAG,KAAOvF,IAAM,KAAOA,IAAM,KAAQuF,EAAEwF,YAAY,GAAK/K,EAGjF,QAASkL,GAAqB3F,GAC7B,GAAI4F,GAAIvF,KAAKsC,MAAMtC,KAAKwF,IAAIxF,KAAKsD,IAAI3D,IAAIK,KAAKyF,QAASrL,CAEvD,IAAGmL,IAAM,GAAKA,IAAM,EAAGnL,EAAIuF,EAAEwF,YAAY,GAAGI,OACvC,IAAGvF,KAAKsD,IAAIiC,IAAM,EAAGnL,EAAI4K,EAAUrF,OACnC,IAAG4F,IAAM,GAAInL,EAAIuF,EAAEuF,QAAQ,IAAIQ,OAAO,EAAE,QACxCtL,GAAIiL,EAAU1F,EAEnB,OAAOiF,GAAcG,EAAc3K,EAAEuL,gBAGtC,MAAOL,KAERjG,GAAIuG,aAAenB,CAWnB,SAASoB,GAAYlG,EAAG8C,GACvB,aAAc9C,IACb,IAAK,SAAU,MAAOA,GACtB,IAAK,UAAW,MAAOA,GAAI,OAAS,QACpC,IAAK,SAAU,OAAQA,EAAE,KAAOA,EAAIA,EAAE4E,SAAS,IAAME,EAAgB9E,GACrE,IAAK,YAAa,MAAO,GACzB,IAAK,SACJ,GAAGA,GAAK,KAAM,MAAO,EACrB,IAAGA,YAAa6D,MAAM,MAAOsC,GAAO,GAAI3B,EAAcxE,EAAG8C,GAAQA,EAAKc,UAAWd,IAEnF,KAAM,IAAIvE,OAAM,wCAA0CyB,GAE3DN,EAAI0G,SAAWF,CACf,SAAS/B,GAAUnB,EAAMvI,GAEvBA,EAAE,IAAM,GACR,IAAIyI,GAAMF,EAAKkB,QACf,IAAGlB,EAAO,GAAIE,GAAOA,EAAM,GAAK,CAChC,OAAOA,GAIT,QAASmD,GAAWC,EAAMC,EAAKC,EAAKC,GACnC,GAAIhM,GAAE,GAAIiM,EAAG,EAAGC,EAAG,EAAGrD,EAAIkD,EAAIlD,EAAG3E,EAAKiI,EAAO,CAC7C,QAAON,GACN,IAAK,IACJhD,EAAIkD,EAAIlD,EAAI,IAEb,IAAK,KACL,OAAOiD,EAAI3L,QACV,IAAK,IAAG,IAAK,GAAG+D,EAAM2E,EAAI,GAAKsD,GAAO,CAAG,OACzC,QAASjI,EAAM2E,EAAI,GAAOsD,GAAO,CAAG,QACnC,MACF,IAAK,KACL,OAAOL,EAAI3L,QACV,IAAK,IAAG,IAAK,GAAG+D,EAAM6H,EAAIjD,CAAGqD,GAAOL,EAAI3L,MAAQ,OAChD,IAAK,GAAG,MAAOiG,GAAO2F,EAAIjD,EAAE,GAAG,GAC/B,IAAK,GAAG,MAAO1C,GAAO2F,EAAIjD,EAAE,GAAG,GAC/B,QAAS,MAAO1C,GAAO2F,EAAIjD,EAAE,GAAG,IAC/B,MACF,IAAK,KACL,OAAOgD,EAAI3L,QACV,IAAK,IAAG,IAAK,GAAG+D,EAAM6H,EAAIzH,CAAG6H,GAAOL,EAAI3L,MAAQ,OAChD,IAAK,GAAG,MAAOgG,GAAK4F,EAAI5D,GAAG,GAC3B,QAAS,MAAOhC,GAAK4F,EAAI5D,GAAG,IAC3B,MACF,IAAK,KACL,OAAO2D,EAAI3L,QACV,IAAK,IAAG,IAAK,GAAG+D,EAAM,GAAG6H,EAAIhD,EAAE,IAAI,EAAIoD,GAAOL,EAAI3L,MAAQ,OAC1D,QAAS,KAAM,oBAAsB2L,GACpC,MACF,IAAK,IACL,OAAOA,EAAI3L,QACV,IAAK,IAAG,IAAK,GAAG+D,EAAM6H,EAAIhD,CAAGoD,GAAOL,EAAI3L,MAAQ,OAChD,QAAS,KAAM,oBAAsB2L,GACpC,MACF,IAAK,IACL,OAAOA,EAAI3L,QACV,IAAK,IAAG,IAAK,GAAG+D,EAAM6H,EAAI/C,CAAGmD,GAAOL,EAAI3L,MAAQ,OAChD,QAAS,KAAM,sBAAwB2L,GACtC,MACF,IAAK,KACJ,GAAGA,GAAO,KAAOA,GAAO,MAAQA,GAAO,MAAQA,GAAO,OAASA,GAAO,OAAQ,KAAM,sBAAwBA,CAC5G,IAAGC,EAAInD,IAAM,IAAMkD,GAAO,KAAOA,GAAO,MAAO,MAAOxG,GAAKyG,EAAI9C,EAAG6C,EAAI3L,OACzE,IAAG6L,GAAO,EAAGE,EAAKF,IAAQ,EAAI,IAAO,QAC7BE,GAAKF,IAAQ,EAAI,GAAK,CAC3BC,GAAKrG,KAAKC,MAAM,GAAMkG,EAAI9C,EAAI8C,EAAInD,GAClC,IAAGqD,GAAM,GAAGC,EAAID,EAAK,CACrB,IAAGH,IAAQ,IAAK,MAAOG,KAAO,EAAI,IAAM,GAAGA,EAAGC,CAC9ClM,GAAIsF,EAAK2G,EAAG,EAAID,EAChB,IAAGF,IAAQ,KAAM,MAAO9L,GAAEsL,OAAO,EAAE,EACnC,OAAO,IAAMtL,EAAEsL,OAAO,EAAEQ,EAAI3L,OAAO,GACpC,IAAK,IACL,OAAO2L,GACN,IAAK,OAAO,IAAK,OAAQ5H,EAAM6H,EAAIxE,EAAE,GAAGwE,EAAIhD,CAAG,OAC/C,IAAK,OAAO,IAAK,OAAQ7E,GAAO6H,EAAIxE,EAAE,GAAGwE,EAAIhD,GAAG,GAAGgD,EAAI/C,CAAG,OAC1D,IAAK,OAAO,IAAK,OAAQ9E,IAAQ6H,EAAIxE,EAAE,GAAGwE,EAAIhD,GAAG,GAAGgD,EAAI/C,GAAG,GAAGpD,KAAKC,MAAMkG,EAAI9C,EAAE8C,EAAInD,EAAI,OACvF,QAAS,KAAM,uBAAyBkD,GACvCK,EAAOL,EAAI3L,SAAW,EAAI,EAAI,CAAG,OACnC,IAAK,KACJ+D,EAAM2E,CAAGsD,GAAO,CAAG,QAErB,GAAIC,GAASD,EAAO,EAAI7G,EAAKpB,EAAKiI,GAAQ,EAC1C,OAAOC,GAGR,QAASC,GAAShJ,GACjB,GAAIwH,GAAI,CACR,IAAGxH,EAAElD,QAAU0K,EAAG,MAAOxH,EACzB,IAAIiJ,GAAKjJ,EAAElD,OAAS0K,EAAI7K,EAAIqD,EAAEiI,OAAO,EAAEgB,EACvC,MAAMA,GAAGjJ,EAAElD,OAAQmM,GAAGzB,EAAG7K,IAAIA,EAAEG,OAAS,EAAI,IAAM,IAAMkD,EAAEiI,OAAOgB,EAAEzB,EACnE,OAAO7K,GAER,GAAIuM,GAAY,QAAUC,KAC1B,GAAIC,GAAO,IACX,SAASC,GAAcb,EAAMC,EAAKC,GACjC,GAAIY,GAAOb,EAAI7J,QAAQwK,EAAK,IAAKG,EAAMd,EAAI3L,OAASwM,EAAKxM,MACzD,OAAOoM,GAAUV,EAAMc,EAAMZ,EAAMnG,KAAKI,IAAI,GAAG,EAAE4G,IAAQxH,EAAK,IAAIwH,GAEnE,QAASC,GAAahB,EAAMC,EAAKC,GAChC,GAAIe,GAAMhB,EAAI3L,OAAS,CACvB,OAAM2L,EAAI1L,WAAW0M,EAAI,KAAO,KAAMA,CACtC,OAAOP,GAAUV,EAAMC,EAAIR,OAAO,EAAEwB,GAAMf,EAAMnG,KAAKI,IAAI,GAAG,GAAG8F,EAAI3L,OAAO2M,KAE3E,QAASC,GAAcjB,EAAKC,GAC3B,GAAI/L,EACJ,IAAI8M,GAAMhB,EAAIpM,QAAQ,KAAOoM,EAAIpM,QAAQ,KAAO,CAChD,IAAGoM,EAAIkB,MAAM,eAAgB,CAC5B,GAAGjB,GAAO,EAAG,MAAO,aACf,IAAGA,EAAM,EAAG,MAAO,IAAMgB,EAAcjB,GAAMC,EAClD,IAAIkB,GAASnB,EAAIpM,QAAQ,IAAM,IAAGuN,KAAY,EAAGA,EAAOnB,EAAIpM,QAAQ,IACpE,IAAIwN,GAAKtH,KAAKsC,MAAMtC,KAAKwF,IAAIW,GAAKnG,KAAKyF,QAAQ4B,CAC/C,IAAGC,EAAK,EAAGA,GAAMD,CACjBjN,IAAK+L,EAAInG,KAAKI,IAAI,GAAGkH,IAAKnC,YAAY+B,EAAI,GAAGG,EAAOC,GAAID,EACxD,IAAGjN,EAAEN,QAAQ,QAAU,EAAG,CACzB,GAAIyN,GAAQvH,KAAKsC,MAAMtC,KAAKwF,IAAIW,GAAKnG,KAAKyF,OAC1C,IAAGrL,EAAEN,QAAQ,QAAU,EAAGM,EAAIA,EAAE+B,OAAO,GAAK,IAAM/B,EAAEsL,OAAO,GAAK,MAAQ6B,EAAQnN,EAAEG,OAAO+M,OACpFlN,IAAK,MAAQmN,EAAQD,EAC1B,OAAMlN,EAAEsL,OAAO,EAAE,KAAO,KAAM,CAC7BtL,EAAIA,EAAE+B,OAAO,GAAK/B,EAAEsL,OAAO,EAAE2B,GAAU,IAAMjN,EAAEsL,OAAO,EAAE2B,EACxDjN,GAAIA,EAAEiC,QAAQ,aAAa,MAAMA,QAAQ,QAAQ,MAElDjC,EAAIA,EAAEiC,QAAQ,MAAM,KAErBjC,EAAIA,EAAEiC,QAAQ,2BAA2B,SAASmL,EAAGC,EAAGC,EAAGC,GAAM,MAAOF,GAAKC,EAAKC,EAAGjC,OAAO,GAAG2B,EAAOC,GAAID,GAAU,IAAMM,EAAGjC,OAAO4B,GAAM,UACpIlN,GAAI+L,EAAIf,cAAc8B,EAC7B,IAAGhB,EAAIkB,MAAM,WAAahN,EAAEgN,MAAM,YAAahN,EAAIA,EAAEsL,OAAO,EAAEtL,EAAEG,OAAO,GAAK,IAAMH,EAAE+B,OAAO/B,EAAEG,OAAO,EACpG,IAAG2L,EAAIkB,MAAM,QAAUhN,EAAEgN,MAAM,OAAQhN,EAAIA,EAAEiC,QAAQ,MAAM,IAC3D,OAAOjC,GAAEiC,QAAQ,IAAI,KAEtB,GAAIuL,GAAQ,wBACZ,SAASC,GAAaC,EAAGC,EAAMC,GAC9B,GAAIC,GAAMC,SAASJ,EAAE,GAAG,IAAKK,EAAKnI,KAAKC,MAAM8H,EAAOE,GAAMG,EAAOpI,KAAKsC,MAAM6F,EAAGF,EAC/E,IAAII,GAAOF,EAAKC,EAAKH,EAAMK,EAAML,CACjC,OAAOD,IAAQI,IAAS,EAAI,GAAK,GAAGA,GAAQ,KAAOC,IAAQ,EAAI7I,EAAK,IAAKsI,EAAE,GAAGvN,OAAS,EAAIuN,EAAE,GAAGvN,QAAUsF,EAAKwI,EAAIP,EAAE,GAAGvN,QAAUuN,EAAE,GAAK,IAAMA,EAAE,GAAKpI,EAAK4I,EAAIR,EAAE,GAAGvN,SAErK,QAASgO,GAAaT,EAAGC,EAAMC,GAC9B,MAAOA,IAAQD,IAAS,EAAI,GAAK,GAAGA,GAAQvI,EAAK,IAAKsI,EAAE,GAAGvN,OAAS,EAAIuN,EAAE,GAAGvN,QAE9E,GAAIiO,GAAO,gBACX,IAAIC,GAAa,UACjB,IAAIC,GAAQ,qBACZ,SAASC,GAAMC,GACd,GAAIxO,GAAI,GAAIyO,CACZ,KAAI,GAAIxO,GAAI,EAAGA,GAAKuO,EAAIrO,SAAUF,EAAG,OAAQwO,EAAGD,EAAIpO,WAAWH,IAC9D,IAAK,IAAI,MACT,IAAK,IAAID,GAAI,GAAK,OAClB,IAAK,IAAIA,GAAI,GAAK,OAClB,QAASA,GAAIM,OAAOC,aAAakO,IAElC,MAAOzO,GAER,QAAS0O,GAAI3C,EAAKzH,GAAK,GAAIqK,GAAK/I,KAAKI,IAAI,GAAG1B,EAAI,OAAO,GAAIsB,KAAKC,MAAMkG,EAAM4C,GAAIA,EAChF,QAASC,GAAI7C,EAAKzH,GACjB,GAAIuK,GAAQ9C,EAAMnG,KAAKsC,MAAM6D,GAAM4C,EAAK/I,KAAKI,IAAI,GAAG1B,EACpD,IAAIA,GAAK,GAAKsB,KAAKC,MAAMgJ,EAAQF,IAAKxO,OAAQ,MAAO,EACrD,OAAOyF,MAAKC,MAAMgJ,EAAQF,GAE3B,QAASG,GAAM/C,EAAKzH,GACnB,GAAIA,GAAK,GAAKsB,KAAKC,OAAOkG,EAAInG,KAAKsC,MAAM6D,IAAMnG,KAAKI,IAAI,GAAG1B,KAAKnE,OAAQ,CACvE,MAAO,GAER,MAAO,GAER,QAAS4O,GAAIhD,GACZ,GAAGA,EAAM,YAAcA,GAAO,WAAY,MAAO,IAAIA,GAAO,EAAKA,EAAI,EAAMA,EAAI,EAAE,EACjF,OAAO,GAAGnG,KAAKsC,MAAM6D,GAEtB,QAASiD,GAAcnD,EAAMC,EAAKC,GACjC,GAAGF,EAAKzL,WAAW,KAAO,KAAO0L,EAAIkB,MAAMqB,GAAa,CACvD,GAAIY,GAAOnD,EAAI7J,QAAQ,OAAO,IAAIA,QAAQ,MAAM,IAAIA,QAAQ,KAAK,GACjE,IAAG8J,GAAO,EAAG,MAAOiD,GAAc,IAAKC,EAAMlD,EAC7C,OAAO,IAAMiD,EAAc,IAAKC,GAAOlD,GAAO,IAE/C,GAAGD,EAAI1L,WAAW0L,EAAI3L,OAAS,KAAO,GAAI,MAAO0M,GAAahB,EAAMC,EAAKC,EACzE,IAAGD,EAAIpM,QAAQ,QAAU,EAAG,MAAOgN,GAAcb,EAAMC,EAAKC,EAC5D,IAAGD,EAAIpM,QAAQ,QAAU,EAAG,MAAOqN,GAAcjB,EAAKC,EACtD,IAAGD,EAAI1L,WAAW,KAAO,GAAI,MAAO,IAAI4O,EAAcnD,EAAKC,EAAIR,OAAOQ,EAAI/J,OAAO,IAAI,IAAI,EAAE,GAAGgK,EAC9F,IAAI/L,EACJ,IAAI0N,GAAGwB,EAAIC,EAAIxB,EAAO/H,KAAKsD,IAAI6C,GAAM6B,EAAO7B,EAAM,EAAI,IAAM,EAC5D,IAAGD,EAAIkB,MAAM,SAAU,MAAOY,GAAO3H,EAAM0H,EAAK7B,EAAI3L,OACpD,IAAG2L,EAAIkB,MAAM,WAAY,CACxBhN,EAAIiG,EAAM8F,EAAI,EAAI,IAAG/L,IAAM,IAAKA,EAAI,EACpC,OAAOA,GAAEG,OAAS2L,EAAI3L,OAASH,EAAIuO,EAAMzC,EAAIR,OAAO,EAAEQ,EAAI3L,OAAOH,EAAEG,SAAWH,EAE/E,GAAI0N,EAAI5B,EAAIkB,MAAMQ,GAAS,MAAOC,GAAaC,EAAGC,EAAMC,EACxD,IAAG9B,EAAIkB,MAAM,UAAW,MAAOY,GAAO3H,EAAM0H,EAAK7B,EAAI3L,OAAS2L,EAAIpM,QAAQ,KAC1E,IAAIgO,EAAI5B,EAAIkB,MAAMoB,GAAQ,CACzBpO,EAAI0O,EAAI3C,EAAK2B,EAAE,GAAGvN,QAAQ8B,QAAQ,aAAa,MAAMsM,EAAMb,EAAE,KAAKzL,QAAQ,MAAM,IAAIsM,EAAMb,EAAE,KAAKzL,QAAQ,WAAW,SAASmL,EAAIC,GAAM,MAAO,IAAMA,EAAKjI,EAAK,IAAKmJ,EAAMb,EAAE,IAAIvN,OAAOkN,EAAGlN,SACzL,OAAO2L,GAAIpM,QAAQ,SAAW,EAAIM,EAAIA,EAAEiC,QAAQ,OAAO,KAExD6J,EAAMA,EAAI7J,QAAQ,YAAa,KAC/B,IAAIyL,EAAI5B,EAAIkB,MAAM,gBAAkB,CACnC,MAAOY,GAAOc,EAAIf,EAAMD,EAAE,GAAGvN,QAAQ8B,QAAQ,kBAAkB,OAAOA,QAAQ,YAAY,OAAOA,QAAQ,OAAOyL,EAAE,GAAGvN,OAAO,KAAK,KAElI,GAAIuN,EAAI5B,EAAIkB,MAAM,qBAAuB,MAAOY,GAAOvB,EAASpG,EAAM0H,EAAK,GAC3E,IAAID,EAAI5B,EAAIkB,MAAM,qBAAuB,CACxC,MAAOjB,GAAM,EAAI,IAAMiD,EAAcnD,EAAMC,GAAMC,GAAOM,EAAS,IAAIzG,KAAKsC,MAAM6D,GAAO+C,EAAM/C,EAAK2B,EAAE,GAAGvN,UAAY,IAAMmF,EAAKsJ,EAAI7C,EAAK2B,EAAE,GAAGvN,QAAQuN,EAAE,GAAGvN,QAE1J,GAAIuN,EAAI5B,EAAIkB,MAAM,YAAc,MAAOgC,GAAcnD,EAAKC,EAAI7J,QAAQ,SAAS,IAAI8J,EACnF,IAAI2B,EAAI5B,EAAIkB,MAAM,2BAA6B,CAC9ChN,EAAImF,EAAQ6J,EAAcnD,EAAMC,EAAI7J,QAAQ,SAAS,IAAK8J,GAC1DmD,GAAK,CACL,OAAO/J,GAAQA,EAAQ2G,EAAI7J,QAAQ,MAAM,KAAKA,QAAQ,QAAQ,SAASjB,GAAG,MAAOkO,GAAGlP,EAAEG,OAAOH,EAAE+B,OAAOmN,KAAMlO,IAAI,IAAI,IAAI,MAEzH,GAAG8K,EAAIkB,MAAMsB,GAAQ,CACpBtO,EAAIgP,EAAcnD,EAAM,aAAcE,EACtC,OAAO,IAAM/L,EAAEsL,OAAO,EAAE,GAAK,KAAOtL,EAAEsL,OAAO,EAAG,GAAK,IAAMtL,EAAEsL,OAAO,GAErE,GAAI8D,GAAK,EACT,IAAI1B,EAAI5B,EAAIkB,MAAM,+BAAiC,CAClDkC,EAAKtJ,KAAKyJ,IAAI3B,EAAE,GAAGvN,OAAO,EAC1BgP,GAAK7H,EAAKqG,EAAM/H,KAAKI,IAAI,GAAGkJ,GAAI,EAAG,MACnClP,GAAI,GAAK4N,CACTwB,GAAK7C,EAAU,IAAKmB,EAAE,GAAIyB,EAAG,GAC7B,IAAGC,EAAGrN,OAAOqN,EAAGjP,OAAO,IAAM,IAAKiP,EAAKA,EAAG9D,OAAO,EAAE8D,EAAGjP,OAAO,GAAK,GAClEH,IAAKoP,EAAK1B,EAAE,GAAK,IAAMA,EAAE,EACzB0B,GAAK1J,EAAMyJ,EAAG,GAAGD,EACjB,IAAGE,EAAGjP,OAASuN,EAAE,GAAGvN,OAAQiP,EAAKb,EAAMb,EAAE,GAAGpC,OAAOoC,EAAE,GAAGvN,OAAOiP,EAAGjP,SAAWiP,CAC7EpP,IAAKoP,CACL,OAAOpP,GAER,GAAI0N,EAAI5B,EAAIkB,MAAM,iCAAmC,CACpDkC,EAAKtJ,KAAKyJ,IAAIzJ,KAAK0J,IAAI5B,EAAE,GAAGvN,OAAQuN,EAAE,GAAGvN,QAAQ,EACjDgP,GAAK7H,EAAKqG,EAAM/H,KAAKI,IAAI,GAAGkJ,GAAI,EAAG,KACnC,OAAOtB,IAAQuB,EAAG,KAAKA,EAAG,GAAK,GAAK,MAAQ,KAAOA,EAAG,GAAK1J,EAAK0J,EAAG,GAAGD,GAAMxB,EAAE,GAAK,IAAMA,EAAE,GAAKhI,EAAMyJ,EAAG,GAAGD,GAAK9J,EAAK,IAAK,EAAE8J,EAAG,EAAIxB,EAAE,GAAGvN,OAASuN,EAAE,GAAGvN,SAExJ,GAAIuN,EAAI5B,EAAIkB,MAAM,YAAc,CAC/BhN,EAAIiG,EAAM8F,EAAK,EACf,IAAGD,EAAI3L,QAAUH,EAAEG,OAAQ,MAAOH,EAClC,OAAOuO,GAAMzC,EAAIR,OAAO,EAAEQ,EAAI3L,OAAOH,EAAEG,SAAWH,EAEnD,GAAI0N,EAAI5B,EAAIkB,MAAM,uBAAyB,CAC1ChN,EAAI,GAAK+L,EAAIjB,QAAQlF,KAAKyJ,IAAI3B,EAAE,GAAGvN,OAAO,KAAK8B,QAAQ,YAAY,KACnEiN,GAAKlP,EAAEN,QAAQ,IACf,IAAI6P,GAAOzD,EAAIpM,QAAQ,KAAOwP,EAAIM,EAAO1D,EAAI3L,OAASH,EAAEG,OAASoP,CACjE,OAAOhB,GAAMzC,EAAIR,OAAO,EAAEiE,GAAQvP,EAAI8L,EAAIR,OAAOQ,EAAI3L,OAAOqP,IAE7D,GAAI9B,EAAI5B,EAAIkB,MAAM,sBAAwB,CACzCkC,EAAKN,EAAI7C,EAAK2B,EAAE,GAAGvN,OACnB,OAAO4L,GAAM,EAAI,IAAMiD,EAAcnD,EAAMC,GAAMC,GAAOM,EAAS0C,EAAIhD,IAAM9J,QAAQ,aAAa,OAAOA,QAAQ,QAAQ,SAASmL,GAAM,MAAO,OAASA,EAAGjN,OAAS,EAAImF,EAAK,EAAE,EAAE8H,EAAGjN,QAAU,IAAMiN,IAAS,IAAM9H,EAAK4J,EAAGxB,EAAE,GAAGvN,QAE/N,OAAO2L,GACN,IAAK,aAAc,MAAOkD,GAAcnD,EAAM,WAAYE,GAC1D,IAAK,WACL,IAAK,UACL,IAAK,QAAS,GAAI/K,GAAIqL,EAASpG,EAAM0H,EAAK,GAAK,OAAO3M,KAAM,IAAM4M,EAAO5M,EAAI,GAC7E,IAAK,aAAc,MAAOgO,GAAcnD,EAAM,aAAaE,GAAK9J,QAAQ,OAAO,KAC/E,IAAK,WAAY,MAAO+M,GAAcnD,EAAM,WAAWE,GAAK9J,QAAQ,OAAO,KAC3E,UAED,KAAM,IAAI6B,OAAM,uBAAyBgI,EAAM,KAEhD,QAAS2D,GAAc5D,EAAMC,EAAKC,GACjC,GAAIe,GAAMhB,EAAI3L,OAAS,CACvB,OAAM2L,EAAI1L,WAAW0M,EAAI,KAAO,KAAMA,CACtC,OAAOP,GAAUV,EAAMC,EAAIR,OAAO,EAAEwB,GAAMf,EAAMnG,KAAKI,IAAI,GAAG,GAAG8F,EAAI3L,OAAO2M,KAE3E,QAAS4C,GAAe7D,EAAMC,EAAKC,GAClC,GAAIY,GAAOb,EAAI7J,QAAQwK,EAAK,IAAKG,EAAMd,EAAI3L,OAASwM,EAAKxM,MACzD,OAAOoM,GAAUV,EAAMc,EAAMZ,EAAMnG,KAAKI,IAAI,GAAG,EAAE4G,IAAQxH,EAAK,IAAIwH,GAEnE,QAAS+C,GAAe7D,EAAKC,GAC5B,GAAI/L,EACJ,IAAI8M,GAAMhB,EAAIpM,QAAQ,KAAOoM,EAAIpM,QAAQ,KAAO,CAChD,IAAGoM,EAAIkB,MAAM,eAAgB,CAC5B,GAAGjB,GAAO,EAAG,MAAO,aACf,IAAGA,EAAM,EAAG,MAAO,IAAM4D,EAAe7D,GAAMC,EACnD,IAAIkB,GAASnB,EAAIpM,QAAQ,IAAM,IAAGuN,KAAY,EAAGA,EAAOnB,EAAIpM,QAAQ,IACpE,IAAIwN,GAAKtH,KAAKsC,MAAMtC,KAAKwF,IAAIW,GAAKnG,KAAKyF,QAAQ4B,CAC/C,IAAGC,EAAK,EAAGA,GAAMD,CACjBjN,IAAK+L,EAAInG,KAAKI,IAAI,GAAGkH,IAAKnC,YAAY+B,EAAI,GAAGG,EAAOC,GAAID,EACxD,KAAIjN,EAAEgN,MAAM,QAAS,CACpB,GAAIG,GAAQvH,KAAKsC,MAAMtC,KAAKwF,IAAIW,GAAKnG,KAAKyF,OAC1C,IAAGrL,EAAEN,QAAQ,QAAU,EAAGM,EAAIA,EAAE+B,OAAO,GAAK,IAAM/B,EAAEsL,OAAO,GAAK,MAAQ6B,EAAQnN,EAAEG,OAAO+M,OACpFlN,IAAK,MAAQmN,EAAQD,EAC1BlN,GAAIA,EAAEiC,QAAQ,MAAM,KAErBjC,EAAIA,EAAEiC,QAAQ,2BAA2B,SAASmL,EAAGC,EAAGC,EAAGC,GAAM,MAAOF,GAAKC,EAAKC,EAAGjC,OAAO,GAAG2B,EAAOC,GAAID,GAAU,IAAMM,EAAGjC,OAAO4B,GAAM,UACpIlN,GAAI+L,EAAIf,cAAc8B,EAC7B,IAAGhB,EAAIkB,MAAM,WAAahN,EAAEgN,MAAM,YAAahN,EAAIA,EAAEsL,OAAO,EAAEtL,EAAEG,OAAO,GAAK,IAAMH,EAAE+B,OAAO/B,EAAEG,OAAO,EACpG,IAAG2L,EAAIkB,MAAM,QAAUhN,EAAEgN,MAAM,OAAQhN,EAAIA,EAAEiC,QAAQ,MAAM,IAC3D,OAAOjC,GAAEiC,QAAQ,IAAI,KAEtB,QAAS2N,GAAc/D,EAAMC,EAAKC,GACjC,GAAGF,EAAKzL,WAAW,KAAO,KAAO0L,EAAIkB,MAAMqB,GAAa,CACvD,GAAIY,GAAOnD,EAAI7J,QAAQ,OAAO,IAAIA,QAAQ,MAAM,IAAIA,QAAQ,KAAK,GACjE,IAAG8J,GAAO,EAAG,MAAO6D,GAAc,IAAKX,EAAMlD,EAC7C,OAAO,IAAM6D,EAAc,IAAKX,GAAOlD,GAAO,IAE/C,GAAGD,EAAI1L,WAAW0L,EAAI3L,OAAS,KAAO,GAAI,MAAOsP,GAAc5D,EAAMC,EAAKC,EAC1E,IAAGD,EAAIpM,QAAQ,QAAU,EAAG,MAAOgQ,GAAe7D,EAAMC,EAAKC,EAC7D,IAAGD,EAAIpM,QAAQ,QAAU,EAAG,MAAOiQ,GAAe7D,EAAKC,EACvD,IAAGD,EAAI1L,WAAW,KAAO,GAAI,MAAO,IAAIwP,EAAc/D,EAAKC,EAAIR,OAAOQ,EAAI/J,OAAO,IAAI,IAAI,EAAE,GAAGgK,EAC9F,IAAI/L,EACJ,IAAI0N,GAAGwB,EAAIC,EAAIxB,EAAO/H,KAAKsD,IAAI6C,GAAM6B,EAAO7B,EAAM,EAAI,IAAM,EAC5D,IAAGD,EAAIkB,MAAM,SAAU,MAAOY,GAAOtI,EAAKqI,EAAK7B,EAAI3L,OACnD,IAAG2L,EAAIkB,MAAM,WAAY,CACxBhN,EAAK,GAAG+L,CAAM,IAAGA,IAAQ,EAAG/L,EAAI,EAChC,OAAOA,GAAEG,OAAS2L,EAAI3L,OAASH,EAAIuO,EAAMzC,EAAIR,OAAO,EAAEQ,EAAI3L,OAAOH,EAAEG,SAAWH,EAE/E,GAAI0N,EAAI5B,EAAIkB,MAAMQ,GAAS,MAAOW,GAAaT,EAAGC,EAAMC,EACxD,IAAG9B,EAAIkB,MAAM,UAAW,MAAOY,GAAOtI,EAAKqI,EAAK7B,EAAI3L,OAAS2L,EAAIpM,QAAQ,KACzE,IAAIgO,EAAI5B,EAAIkB,MAAMoB,GAAQ,CAC3BpO,GAAK,GAAG+L,GAAK9J,QAAQ,aAAa,MAAMsM,EAAMb,EAAE,KAAKzL,QAAQ,MAAM,IAAIsM,EAAMb,EAAE,IAC7E1N,GAAIA,EAAEiC,QAAQ,WAAW,SAASmL,EAAIC,GACxC,MAAO,IAAMA,EAAKjI,EAAK,IAAKmJ,EAAMb,EAAE,IAAIvN,OAAOkN,EAAGlN,SAChD,OAAO2L,GAAIpM,QAAQ,SAAW,EAAIM,EAAIA,EAAEiC,QAAQ,OAAO,KAExD6J,EAAMA,EAAI7J,QAAQ,YAAa,KAC/B,IAAIyL,EAAI5B,EAAIkB,MAAM,gBAAkB,CACnC,MAAOY,IAAQ,GAAGD,GAAM1L,QAAQ,kBAAkB,OAAOA,QAAQ,YAAY,OAAOA,QAAQ,OAAOyL,EAAE,GAAGvN,OAAO,KAAK,KAErH,GAAIuN,EAAI5B,EAAIkB,MAAM,qBAAuB,MAAOY,GAAOvB,EAAU,GAAGsB,EACpE,IAAID,EAAI5B,EAAIkB,MAAM,qBAAuB,CACxC,MAAOjB,GAAM,EAAI,IAAM6D,EAAc/D,EAAMC,GAAMC,GAAOM,EAAU,GAAGN,GAAQ,IAAM3G,EAAK,IAAIsI,EAAE,GAAGvN,QAElG,GAAIuN,EAAI5B,EAAIkB,MAAM,YAAc,MAAO4C,GAAc/D,EAAKC,EAAI7J,QAAQ,SAAS,IAAI8J,EACnF,IAAI2B,EAAI5B,EAAIkB,MAAM,2BAA6B,CAC9ChN,EAAImF,EAAQyK,EAAc/D,EAAMC,EAAI7J,QAAQ,SAAS,IAAK8J,GAC1DmD,GAAK,CACL,OAAO/J,GAAQA,EAAQ2G,EAAI7J,QAAQ,MAAM,KAAKA,QAAQ,QAAQ,SAASjB,GAAG,MAAOkO,GAAGlP,EAAEG,OAAOH,EAAE+B,OAAOmN,KAAMlO,IAAI,IAAI,IAAI,MAEzH,GAAG8K,EAAIkB,MAAMsB,GAAQ,CACpBtO,EAAI4P,EAAc/D,EAAM,aAAcE,EACtC,OAAO,IAAM/L,EAAEsL,OAAO,EAAE,GAAK,KAAOtL,EAAEsL,OAAO,EAAG,GAAK,IAAMtL,EAAEsL,OAAO,GAErE,GAAI8D,GAAK,EACT,IAAI1B,EAAI5B,EAAIkB,MAAM,+BAAiC,CAClDkC,EAAKtJ,KAAKyJ,IAAI3B,EAAE,GAAGvN,OAAO,EAC1BgP,GAAK7H,EAAKqG,EAAM/H,KAAKI,IAAI,GAAGkJ,GAAI,EAAG,MACnClP,GAAI,GAAK4N,CACTwB,GAAK7C,EAAU,IAAKmB,EAAE,GAAIyB,EAAG,GAC7B,IAAGC,EAAGrN,OAAOqN,EAAGjP,OAAO,IAAM,IAAKiP,EAAKA,EAAG9D,OAAO,EAAE8D,EAAGjP,OAAO,GAAK,GAClEH,IAAKoP,EAAK1B,EAAE,GAAK,IAAMA,EAAE,EACzB0B,GAAK1J,EAAMyJ,EAAG,GAAGD,EACjB,IAAGE,EAAGjP,OAASuN,EAAE,GAAGvN,OAAQiP,EAAKb,EAAMb,EAAE,GAAGpC,OAAOoC,EAAE,GAAGvN,OAAOiP,EAAGjP,SAAWiP,CAC7EpP,IAAKoP,CACL,OAAOpP,GAER,GAAI0N,EAAI5B,EAAIkB,MAAM,iCAAmC,CACpDkC,EAAKtJ,KAAKyJ,IAAIzJ,KAAK0J,IAAI5B,EAAE,GAAGvN,OAAQuN,EAAE,GAAGvN,QAAQ,EACjDgP,GAAK7H,EAAKqG,EAAM/H,KAAKI,IAAI,GAAGkJ,GAAI,EAAG,KACnC,OAAOtB,IAAQuB,EAAG,KAAKA,EAAG,GAAK,GAAK,MAAQ,KAAOA,EAAG,GAAK1J,EAAK0J,EAAG,GAAGD,GAAMxB,EAAE,GAAK,IAAMA,EAAE,GAAKhI,EAAMyJ,EAAG,GAAGD,GAAK9J,EAAK,IAAK,EAAE8J,EAAG,EAAIxB,EAAE,GAAGvN,OAASuN,EAAE,GAAGvN,SAExJ,GAAIuN,EAAI5B,EAAIkB,MAAM,YAAc,CAC/BhN,EAAI,GAAK+L,CACT,IAAGD,EAAI3L,QAAUH,EAAEG,OAAQ,MAAOH,EAClC,OAAOuO,GAAMzC,EAAIR,OAAO,EAAEQ,EAAI3L,OAAOH,EAAEG,SAAWH,EAEnD,GAAI0N,EAAI5B,EAAIkB,MAAM,sBAAwB,CACzChN,EAAI,GAAK+L,EAAIjB,QAAQlF,KAAKyJ,IAAI3B,EAAE,GAAGvN,OAAO,KAAK8B,QAAQ,YAAY,KACnEiN,GAAKlP,EAAEN,QAAQ,IACf,IAAI6P,GAAOzD,EAAIpM,QAAQ,KAAOwP,EAAIM,EAAO1D,EAAI3L,OAASH,EAAEG,OAASoP,CACjE,OAAOhB,GAAMzC,EAAIR,OAAO,EAAEiE,GAAQvP,EAAI8L,EAAIR,OAAOQ,EAAI3L,OAAOqP,IAE7D,GAAI9B,EAAI5B,EAAIkB,MAAM,sBAAwB,CACzC,MAAOjB,GAAM,EAAI,IAAM6D,EAAc/D,EAAMC,GAAMC,GAAOM,EAAS,GAAGN,GAAK9J,QAAQ,aAAa,OAAOA,QAAQ,QAAQ,SAASmL,GAAM,MAAO,OAASA,EAAGjN,OAAS,EAAImF,EAAK,EAAE,EAAE8H,EAAGjN,QAAU,IAAMiN,IAAS,IAAM9H,EAAK,EAAEoI,EAAE,GAAGvN,QAE5N,OAAO2L,GACN,IAAK,WACL,IAAK,UACL,IAAK,QAAS,GAAI9K,GAAIqL,EAAS,GAAGsB,EAAO,OAAO3M,KAAM,IAAM4M,EAAO5M,EAAI,GACvE,QACC,GAAG8K,EAAIkB,MAAM,aAAc,MAAO4C,GAAc/D,EAAMC,EAAIjL,MAAM,EAAEiL,EAAI+D,YAAY,MAAO9D,GAAOwC,EAAMzC,EAAIjL,MAAMiL,EAAI+D,YAAY,QAElI,KAAM,IAAI/L,OAAM,uBAAyBgI,EAAM,KAEhD,MAAO,SAASS,GAAUV,EAAMC,EAAKC,GACpC,OAAQA,EAAI,KAAOA,EAAM6D,EAAc/D,EAAMC,EAAKC,GAAOiD,EAAcnD,EAAMC,EAAKC,MAEnF,SAAS+D,GAAUhE,GAClB,GAAI5H,KACJ,IAAI6L,GAAS,KACb,KAAI,GAAI9P,GAAI,EAAGqM,EAAI,EAAGrM,EAAI6L,EAAI3L,SAAUF,EAAG,OAAe6L,EAAI1L,WAAWH,IACxE,IAAK,IACJ8P,GAAUA,CAAQ,OACnB,IAAK,KAAI,IAAK,KAAI,IAAK,MACpB9P,CAAG,OACN,IAAK,IACJiE,EAAIA,EAAI/D,QAAU2L,EAAIR,OAAOgB,EAAErM,EAAEqM,EACjCA,GAAIrM,EAAE,GAERiE,EAAIA,EAAI/D,QAAU2L,EAAIR,OAAOgB,EAC7B,IAAGyD,IAAW,KAAM,KAAM,IAAIjM,OAAM,WAAagI,EAAM,yBACvD,OAAO5H,GAERe,EAAI+K,OAASF,CACb,IAAIG,GAAU,iCACd,SAASC,GAAYpE,GACpB,GAAI7L,GAAI,EAAe2D,EAAI,GAAI5D,EAAI,EACnC,OAAMC,EAAI6L,EAAI3L,OAAQ,CACrB,OAAQyD,EAAIkI,EAAI/J,OAAO9B,IACtB,IAAK,IAAK,GAAGiG,EAAU4F,EAAK7L,GAAIA,GAAI,CAAGA,IAAK,OAC5C,IAAK,IAAK,KAAa6L,EAAI1L,aAAaH,KAAQ,IAAMA,EAAI6L,EAAI3L,QAAQ,IAAcF,CAAG,OACvF,IAAK,KAAMA,GAAG,CAAG,OACjB,IAAK,IAAKA,GAAG,CAAG,OAChB,IAAK,MAAOA,CAAG,OACf,IAAK,KAAK,IAAK,IACd,GAAG6L,EAAI/J,OAAO9B,EAAE,KAAO,KAAO6L,EAAI/J,OAAO9B,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,GAAG6L,EAAIR,OAAOrL,EAAG,GAAGsL,gBAAkB,MAAO,MAAO,KACpD,IAAGO,EAAIR,OAAOrL,EAAG,GAAGsL,gBAAkB,QAAS,MAAO,KACtD,IAAGO,EAAIR,OAAOrL,EAAG,GAAGsL,gBAAkB,QAAS,MAAO,QACpDtL,CAAG,OACN,IAAK,IACJD,EAAI4D,CACJ,OAAMkI,EAAI/J,OAAO9B,OAAS,KAAOA,EAAI6L,EAAI3L,OAAQH,GAAK8L,EAAI/J,OAAO9B,EACjE,IAAGD,EAAEgN,MAAMiD,GAAU,MAAO,KAC5B,OACD,IAAK,KAEL,IAAK,KAAK,IAAK,IACd,MAAMhQ,EAAI6L,EAAI3L,SAAW,YAAYT,QAAQkE,EAAEkI,EAAI/J,SAAS9B,KAAO,GAAM2D,GAAG,MAAQkI,EAAI/J,OAAO9B,EAAE,IAAM,KAAO,KAAKP,QAAQoM,EAAI/J,OAAO9B,EAAE,KAAK,GAAI,EACjJ,MACD,IAAK,IAAK,MAAM6L,EAAI/J,SAAS9B,KAAO2D,EAAE,EAAc,MACpD,IAAK,MAAO3D,CAAG,IAAG6L,EAAI/J,OAAO9B,IAAM,KAAO6L,EAAI/J,OAAO9B,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,EAAI6L,EAAI3L,QAAU,aAAaT,QAAQoM,EAAI/J,SAAS9B,KAAO,EAAE,EAAc,MAClF,IAAK,MAAOA,CAAG,OACf,UAAWA,CAAG,SAGhB,MAAO,OAERgF,EAAIkL,QAAUD,CACd,SAASE,GAAStE,EAAKvG,EAAG8C,EAAMgI,GAC/B,GAAInM,MAAUlE,EAAI,GAAIC,EAAI,EAAG2D,EAAI,GAAI0M,EAAI,IAAKC,EAAIjE,EAAGmC,CACrD,IAAI+B,GAAG,GAEP,OAAMvQ,EAAI6L,EAAI3L,OAAQ,CACrB,OAAQyD,EAAIkI,EAAI/J,OAAO9B,IACtB,IAAK,IACJ,IAAIiG,EAAU4F,EAAK7L,GAAI,KAAM,IAAI6D,OAAM,0BAA4BF,EAAI,OAAQkI,EAC/E5H,GAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAE,UAAYtF,IAAG,CAAG,OAC/C,IAAK,IACJ,IAAID,EAAE,IAAIyO,EAAG3C,EAAI1L,aAAaH,MAAQ,IAAMA,EAAI6L,EAAI3L,QAASH,GAAKM,OAAOC,aAAakO,EACtFvK,GAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAEvF,KAAMC,CAAG,OACtC,IAAK,KAAM,GAAI4K,GAAIiB,EAAI/J,SAAS9B,GAAIuF,EAAKqF,IAAM,KAAOA,IAAM,IAAOA,EAAI,GACtE3G,GAAIA,EAAI/D,SAAWqF,EAAEA,EAAGD,EAAEsF,KAAM5K,CAAG,OACpC,IAAK,IAAKiE,EAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAE,IAAMtF,IAAG,CAAG,OAClD,IAAK,IACJiE,EAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAEA,KAAMtF,CAAG,OACtC,IAAK,KAAK,IAAK,IACd,GAAG6L,EAAI/J,OAAO9B,EAAE,KAAO,KAAO6L,EAAI/J,OAAO9B,EAAE,KAAO,IAAK,CACtD,GAAGsQ,GAAI,KAAM,CAAEA,EAAGnI,EAAgB7C,EAAG8C,EAAMyD,EAAI/J,OAAO9B,EAAE,KAAO,IAAM,IAAGsQ,GAAI,KAAM,MAAO,GACzFrM,EAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAEuG,EAAIR,OAAOrL,EAAE,GAAKqQ,GAAM1M,CAAG3D,IAAG,CAAG,QAG/D,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IACtD2D,EAAIA,EAAE6M,cAEP,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAChE,GAAGlL,EAAI,EAAG,MAAO,EACjB,IAAGgL,GAAI,KAAM,CAAEA,EAAGnI,EAAgB7C,EAAG8C,EAAO,IAAGkI,GAAI,KAAM,MAAO,GAChEvQ,EAAI4D,CAAG,SAAQ3D,EAAI6L,EAAI3L,QAAU2L,EAAI/J,OAAO9B,GAAGwQ,gBAAkB7M,EAAG5D,GAAG4D,CACvE,IAAGA,IAAM,KAAO0M,EAAIG,gBAAkB,IAAK7M,EAAI,GAC/C,IAAGA,IAAM,IAAKA,EAAI4M,CAClBtM,GAAIA,EAAI/D,SAAWqF,EAAE5B,EAAG2B,EAAEvF,EAAIsQ,GAAM1M,CAAG,OACxC,IAAK,KAAK,IAAK,KAAK,IAAK,IACxB,GAAIuE,IAAG3C,EAAE5B,EAAG2B,EAAE3B,EACd,IAAG2M,GAAI,KAAMA,EAAGnI,EAAgB7C,EAAG8C,EACnC,IAAGyD,EAAIR,OAAOrL,EAAG,GAAGsL,gBAAkB,MAAO,CAAE,GAAGgF,GAAI,KAAMpI,EAAE5C,EAAIgL,EAAGxH,GAAK,GAAK,IAAM,GAAKZ,GAAE3C,EAAI,GAAKgL,GAAG,GAAIvQ,IAAG,MAC1G,IAAG6L,EAAIR,OAAOrL,EAAE,GAAGsL,gBAAkB,QAAS,CAAE,GAAGgF,GAAI,KAAMpI,EAAE5C,EAAIgL,EAAGxH,GAAK,GAAK,KAAO,IAAMZ,GAAE3C,EAAI,GAAKvF,IAAG,CAAGuQ,GAAG,QACjH,IAAG1E,EAAIR,OAAOrL,EAAE,GAAGsL,gBAAkB,QAAS,CAAE,GAAGgF,GAAI,KAAMpI,EAAE5C,EAAIgL,EAAGxH,GAAK,GAAK,KAAO,IAAMZ,GAAE3C,EAAI,GAAKvF,IAAG,CAAGuQ,GAAG,QACjH,CAAErI,EAAE3C,EAAI,MAAOvF,EACpB,GAAGsQ,GAAI,MAAQpI,EAAE3C,IAAM,IAAK,MAAO,EACnCtB,GAAIA,EAAI/D,QAAUgI,CAAGmI,GAAM1M,CAAG,OAC/B,IAAK,IACJ5D,EAAI4D,CACJ,OAAMkI,EAAI/J,OAAO9B,OAAS,KAAOA,EAAI6L,EAAI3L,OAAQH,GAAK8L,EAAI/J,OAAO9B,EACjE,IAAGD,EAAEa,OAAO,KAAO,IAAK,KAAM,4BAA8Bb,EAAI,GAChE,IAAGA,EAAEgN,MAAMiD,GAAU,CACpB,GAAGM,GAAI,KAAM,CAAEA,EAAGnI,EAAgB7C,EAAG8C,EAAO,IAAGkI,GAAI,KAAM,MAAO,GAChErM,EAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAEvF,EAAEyQ,cAC9BH,GAAMtQ,EAAE+B,OAAO,OACT,IAAG/B,EAAEN,QAAQ,MAAQ,EAAG,CAC9BM,GAAKA,EAAEgN,MAAM,sBAAsB,IAAI,GACvC,KAAIkD,EAAYpE,GAAM5H,EAAIA,EAAI/D,SAAWqF,EAAE,IAAID,EAAEvF,GAElD,MAED,IAAK,IACJ,GAAGuQ,GAAM,KAAM,CACdvQ,EAAI4D,CAAG,SAAQ3D,EAAI6L,EAAI3L,SAAWyD,EAAEkI,EAAI/J,OAAO9B,MAAQ,IAAKD,GAAK4D,CACjEM,GAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAEvF,EAAI,QAGlC,IAAK,KAAK,IAAK,IACdA,EAAI4D,CAAG,SAAQ3D,EAAI6L,EAAI3L,QAAU,YAAYT,QAAQkE,EAAEkI,EAAI/J,OAAO9B,KAAO,EAAGD,GAAK4D,CACjFM,GAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAEvF,EAAI,OACjC,IAAK,IACJA,EAAI4D,CAAG,OAAMkI,EAAI/J,SAAS9B,KAAO2D,EAAG5D,GAAG4D,CACvCM,GAAIA,EAAI/D,SAAWqF,EAAE5B,EAAG2B,EAAEvF,EAAIsQ,GAAM1M,CAAG,OACxC,IAAK,MAAO3D,CAAG,IAAG6L,EAAI/J,OAAO9B,IAAM,KAAO6L,EAAI/J,OAAO9B,IAAM,MAAOA,CAAG,OACrE,IAAK,KAAK,IAAK,IAAKiE,EAAIA,EAAI/D,SAAWqF,EAAG6K,IAAO,EAAE,IAAIzM,EAAI2B,EAAE3B,KAAM3D,CAAG,OACtE,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IACpFD,EAAI4D,CAAG,OAAM3D,EAAI6L,EAAI3L,QAAU,aAAaT,QAAQoM,EAAI/J,SAAS9B,KAAO,EAAGD,GAAG8L,EAAI/J,OAAO9B,EACzFiE,GAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAEvF,EAAI,OACjC,IAAK,IAAKkE,EAAIA,EAAI/D,SAAWqF,EAAE5B,EAAG2B,EAAE3B,KAAM3D,CAAG,OAC7C,IAAK,IAAKiE,EAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAE,OAAQtF,CAAG,OACjD,QACC,GAAG,wCAAwCP,QAAQkE,MAAQ,EAAG,KAAM,IAAIE,OAAM,0BAA4BF,EAAI,OAASkI,EACvH5H,GAAIA,EAAI/D,SAAWqF,EAAE,IAAKD,EAAE3B,KAAM3D,CAAG,SAKxC,GAAIyQ,GAAK,EAAG1E,EAAM,EAAG2E,CACrB,KAAI1Q,EAAEiE,EAAI/D,OAAO,EAAGmQ,EAAI,IAAKrQ,GAAK,IAAKA,EAAG,CACzC,OAAOiE,EAAIjE,GAAGuF,GACb,IAAK,KAAK,IAAK,IAAKtB,EAAIjE,GAAGuF,EAAIgL,CAAIF,GAAI,GAAK,IAAGI,EAAK,EAAGA,EAAK,CAAG,OAC/D,IAAK,IACJ,GAAIC,EAAIzM,EAAIjE,GAAGsF,EAAEyH,MAAM,SAAWhB,EAAIpG,KAAK0J,IAAItD,EAAI2E,EAAI,GAAGxQ,OAAO,EACjE,IAAGuQ,EAAK,EAAGA,EAAK,EAEjB,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAAKJ,EAAIpM,EAAIjE,GAAGuF,CAAG,OACtD,IAAK,IAAK,GAAG8K,IAAQ,IAAK,CAAEpM,EAAIjE,GAAGuF,EAAI,GAAK,IAAGkL,EAAK,EAAGA,EAAK,EAAK,MACjE,IAAK,IACJ,MACD,IAAK,IACJ,GAAGA,EAAK,GAAKxM,EAAIjE,GAAGsF,EAAEyH,MAAM,QAAS0D,EAAK,CAC1C,IAAGA,EAAK,GAAKxM,EAAIjE,GAAGsF,EAAEyH,MAAM,QAAS0D,EAAK,CAC1C,IAAGA,EAAK,GAAKxM,EAAIjE,GAAGsF,EAAEyH,MAAM,QAAS0D,EAAK,IAI7C,OAAOA,GACN,IAAK,GAAG,MACR,IAAK,GACP,GAAGH,EAAG3H,GAAK,GAAK,CAAE2H,EAAG3H,EAAI,IAAK2H,EAAGtH,EAC9B,GAAGsH,EAAGtH,GAAM,GAAI,CAAEsH,EAAGtH,EAAI,IAAKsH,EAAGvH,EACjC,GAAGuH,EAAGvH,GAAM,GAAI,CAAEuH,EAAGvH,EAAI,IAAKuH,EAAGxH,EACjC,MACD,IAAK,GACP,GAAGwH,EAAG3H,GAAK,GAAK,CAAE2H,EAAG3H,EAAI,IAAK2H,EAAGtH,EAC9B,GAAGsH,EAAGtH,GAAM,GAAI,CAAEsH,EAAGtH,EAAI,IAAKsH,EAAGvH,EACjC,OAIF,GAAI4H,GAAO,GAAIC,CACf,KAAI5Q,EAAE,EAAGA,EAAIiE,EAAI/D,SAAUF,EAAG,CAC7B,OAAOiE,EAAIjE,GAAGuF,GACb,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAAK,MACxC,IAAK,IAAKtB,EAAIjE,GAAGsF,EAAI,EAAIrB,GAAIjE,GAAGuF,EAAI,GAAK,OACzC,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,KAAK,IAAK,IAClGtB,EAAIjE,GAAGsF,EAAIqG,EAAW1H,EAAIjE,GAAGuF,EAAEpF,WAAW,GAAI8D,EAAIjE,GAAGsF,EAAGgL,EAAIvE,EACxD9H,GAAIjE,GAAGuF,EAAI,GAAK,OACjB,IAAK,KAAK,IAAK,IACdqL,EAAK5Q,EAAE,CACP,OAAMiE,EAAI2M,IAAO,QACfjN,EAAEM,EAAI2M,GAAIrL,KAAO,KAAO5B,IAAM,MAC7BA,IAAM,KAAOA,IAAM,MAAQM,EAAI2M,EAAG,IAAM,OAAS3M,EAAI2M,EAAG,GAAGrL,IAAM,KAAOtB,EAAI2M,EAAG,GAAGrL,IAAM,KAAOtB,EAAI2M,EAAG,GAAGtL,IAAM,MAChHrB,EAAIjE,GAAGuF,IAAM,MAAQ5B,IAAM,KAAOA,IAAM,KAAOA,IAAM,MACrDA,IAAM,MAAQM,EAAI2M,GAAItL,IAAM,KAAOrB,EAAI2M,GAAItL,IAAM,KAAOrB,EAAI2M,EAAG,IAAM,MAAQ3M,EAAI2M,EAAG,GAAGrL,GAAK,MAC3F,CACFtB,EAAIjE,GAAGsF,GAAKrB,EAAI2M,GAAItL,CACpBrB,GAAI2M,IAAOtL,EAAE,GAAIC,EAAE,OAAQqL,EAE5BD,GAAQ1M,EAAIjE,GAAGsF,CACftF,GAAI4Q,EAAG,CAAG,OACX,IAAK,IAAK3M,EAAIjE,GAAGuF,EAAI,GAAKtB,GAAIjE,GAAGsF,EAAIkG,EAAYlG,EAAE8C,EAAO,SAG5D,GAAIyI,GAAK,GAAIC,EAAKC,CAClB,IAAGJ,EAAKzQ,OAAS,EAAG,CACnB,GAAGyQ,EAAKxQ,WAAW,IAAM,GAAc,CACtC2Q,EAAOxL,EAAE,GAAGqL,EAAKxQ,WAAW,KAAO,IAAMmF,EAAIA,CAC7CyL,GAAOzE,EAAU,IAAKqE,EAAMG,OACtB,CACNA,EAAOxL,EAAE,GAAK8K,EAAO,GAAK9K,EAAIA,CAC9ByL,GAAOzE,EAAU,IAAKqE,EAAMG,EAC5B,IAAGA,EAAM,GAAK7M,EAAI,IAAMA,EAAI,GAAGsB,GAAK,IAAK,CACxCwL,EAAOA,EAAK1F,OAAO,EACnBpH,GAAI,GAAGqB,EAAI,IAAMrB,EAAI,GAAGqB,GAG1BsL,EAAGG,EAAK7Q,OAAO,CACf,IAAI8Q,GAAQ/M,EAAI/D,MAChB,KAAIF,EAAE,EAAGA,EAAIiE,EAAI/D,SAAUF,EAAG,GAAGiE,EAAIjE,IAAM,MAAQiE,EAAIjE,GAAGuF,GAAK,KAAOtB,EAAIjE,GAAGsF,EAAE7F,QAAQ,MAAQ,EAAG,CAAEuR,EAAQhR,CAAG,OAC/G,GAAIiR,GAAMhN,EAAI/D,MACd,IAAG8Q,IAAU/M,EAAI/D,QAAU6Q,EAAKtR,QAAQ,QAAU,EAAG,CACpD,IAAIO,EAAEiE,EAAI/D,OAAO,EAAGF,GAAI,IAAIA,EAAG,CAC9B,GAAGiE,EAAIjE,IAAM,MAAQ,KAAKP,QAAQwE,EAAIjE,GAAGuF,MAAQ,EAAG,QACpD,IAAGqL,GAAI3M,EAAIjE,GAAGsF,EAAEpF,OAAO,EAAG,CAAE0Q,GAAM3M,EAAIjE,GAAGsF,EAAEpF,MAAQ+D,GAAIjE,GAAGsF,EAAIyL,EAAK1F,OAAOuF,EAAG,EAAG3M,EAAIjE,GAAGsF,EAAEpF,YACpF,IAAG0Q,EAAK,EAAG3M,EAAIjE,GAAGsF,EAAI,OACtB,CAAErB,EAAIjE,GAAGsF,EAAIyL,EAAK1F,OAAO,EAAGuF,EAAG,EAAIA,IAAM,EAC9C3M,EAAIjE,GAAGuF,EAAI,GACX0L,GAAQjR,EAET,GAAG4Q,GAAI,GAAKK,EAAMhN,EAAI/D,OAAQ+D,EAAIgN,GAAO3L,EAAIyL,EAAK1F,OAAO,EAAEuF,EAAG,GAAK3M,EAAIgN,GAAO3L,MAE1E,IAAG0L,IAAU/M,EAAI/D,QAAU6Q,EAAKtR,QAAQ,QAAU,EAAG,CACzDmR,EAAKG,EAAKtR,QAAQ,KAAK,CACvB,KAAIO,EAAEgR,EAAOhR,GAAI,IAAKA,EAAG,CACxB,GAAGiE,EAAIjE,IAAM,MAAQ,KAAKP,QAAQwE,EAAIjE,GAAGuF,MAAQ,EAAG,QACpD8G,GAAEpI,EAAIjE,GAAGsF,EAAE7F,QAAQ,MAAM,GAAGO,IAAIgR,EAAM/M,EAAIjE,GAAGsF,EAAE7F,QAAQ,KAAK,EAAEwE,EAAIjE,GAAGsF,EAAEpF,OAAO,CAC9E2Q,GAAK5M,EAAIjE,GAAGsF,EAAE+F,OAAOgB,EAAE,EACvB,MAAMA,GAAG,IAAKA,EAAG,CAChB,GAAGuE,GAAI,IAAM3M,EAAIjE,GAAGsF,EAAExD,OAAOuK,KAAO,KAAOpI,EAAIjE,GAAGsF,EAAExD,OAAOuK,KAAO,KAAMwE,EAAKE,EAAKjP,OAAO8O,KAAQC,EAElG5M,EAAIjE,GAAGsF,EAAIuL,CACX5M,GAAIjE,GAAGuF,EAAI,GACX0L,GAAQjR,EAET,GAAG4Q,GAAI,GAAKK,EAAMhN,EAAI/D,OAAQ+D,EAAIgN,GAAO3L,EAAIyL,EAAK1F,OAAO,EAAEuF,EAAG,GAAK3M,EAAIgN,GAAO3L,CAC9EsL,GAAKG,EAAKtR,QAAQ,KAAK,CACvB,KAAIO,EAAEgR,EAAOhR,EAAEiE,EAAI/D,SAAUF,EAAG,CAC/B,GAAGiE,EAAIjE,IAAM,MAAS,MAAMP,QAAQwE,EAAIjE,GAAGuF,MAAQ,GAAKvF,IAAMgR,EAAQ,QACtE3E,GAAEpI,EAAIjE,GAAGsF,EAAE7F,QAAQ,MAAM,GAAGO,IAAIgR,EAAM/M,EAAIjE,GAAGsF,EAAE7F,QAAQ,KAAK,EAAE,CAC9DoR,GAAK5M,EAAIjE,GAAGsF,EAAE+F,OAAO,EAAEgB,EACvB,MAAMA,EAAEpI,EAAIjE,GAAGsF,EAAEpF,SAAUmM,EAAG,CAC7B,GAAGuE,EAAGG,EAAK7Q,OAAQ2Q,GAAME,EAAKjP,OAAO8O,KAEtC3M,EAAIjE,GAAGsF,EAAIuL,CACX5M,GAAIjE,GAAGuF,EAAI,GACX0L,GAAQjR,IAIX,IAAIA,EAAE,EAAGA,EAAEiE,EAAI/D,SAAUF,EAAG,GAAGiE,EAAIjE,IAAM,MAAQ,KAAKP,QAAQwE,EAAIjE,GAAGuF,IAAI,EAAG,CAC3EuL,EAAOV,EAAM,GAAK9K,EAAI,GAAKtF,EAAE,GAAKiE,EAAIjE,EAAE,GAAGsF,IAAM,KAAOA,EAAEA,CAC1DrB,GAAIjE,GAAGsF,EAAIgH,EAAUrI,EAAIjE,GAAGuF,EAAGtB,EAAIjE,GAAGsF,EAAGwL,EACzC7M,GAAIjE,GAAGuF,EAAI,IAEZ,GAAI2L,GAAS,EACb,KAAIlR,EAAE,EAAGA,IAAMiE,EAAI/D,SAAUF,EAAG,GAAGiE,EAAIjE,IAAM,KAAMkR,GAAUjN,EAAIjE,GAAGsF,CACpE,OAAO4L,GAERlM,EAAImM,MAAQhB,CACZ,IAAIiB,GAAU,SACd,IAAIC,GAAW,uCACf,SAASC,GAAQhM,EAAGwI,GACnB,GAAGA,GAAM,KAAM,MAAO,MACtB,IAAIyD,GAASC,WAAW1D,EAAG,GAC3B,QAAOA,EAAG,IACT,IAAK,IAAM,GAAGxI,GAAKiM,EAAQ,MAAO,KAAM,OACxC,IAAK,IAAM,GAAGjM,EAAKiM,EAAQ,MAAO,KAAM,OACxC,IAAK,IAAM,GAAGjM,EAAKiM,EAAQ,MAAO,KAAM,OACxC,IAAK,KAAM,GAAGjM,GAAKiM,EAAQ,MAAO,KAAM,OACxC,IAAK,KAAM,GAAGjM,GAAKiM,EAAQ,MAAO,KAAM,OACxC,IAAK,KAAM,GAAGjM,GAAKiM,EAAQ,MAAO,KAAM,QAEzC,MAAO,OAER,QAASE,GAAWC,EAAGpM,GACtB,GAAIuG,GAAMgE,EAAU6B,EACpB,IAAItM,GAAIyG,EAAI3L,OAAQyR,EAAM9F,EAAIzG,EAAE,GAAG3F,QAAQ,IAC3C,IAAG2F,EAAE,GAAKuM,GAAK,IAAKvM,CACpB,IAAGyG,EAAI3L,OAAS,EAAG,KAAM,IAAI2D,OAAM,iCAAmCgI,EAAItL,KAAK,KAAO,IACtF,UAAU+E,KAAM,SAAU,OAAQ,EAAGuG,EAAI3L,SAAW,GAAKyR,GAAK,EAAE9F,EAAIA,EAAI3L,OAAO,GAAG,IAClF,QAAO2L,EAAI3L,QACV,IAAK,GAAG2L,EAAM8F,GAAK,GAAK,UAAW,UAAW,UAAW9F,EAAI,KAAOA,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAI,IAAM,OAClG,IAAK,GAAGA,EAAM8F,GAAK,GAAK9F,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAIA,EAAI,KAAOA,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAI,IAAM,OACzF,IAAK,GAAGA,EAAM8F,GAAK,GAAK9F,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAIA,EAAI,KAAOA,EAAI,GAAIA,EAAI,GAAIA,EAAI,GAAI,IAAM,OACzF,IAAK,GAAG,OAET,GAAIqD,GAAK5J,EAAI,EAAIuG,EAAI,GAAKvG,EAAI,EAAIuG,EAAI,GAAKA,EAAI,EAC/C,IAAGA,EAAI,GAAGpM,QAAQ,QAAU,GAAKoM,EAAI,GAAGpM,QAAQ,QAAU,EAAG,OAAQ2F,EAAG8J,EACxE,IAAGrD,EAAI,GAAGkB,MAAMqE,IAAY,MAAQvF,EAAI,GAAGkB,MAAMqE,IAAY,KAAM,CAClE,GAAIQ,GAAK/F,EAAI,GAAGkB,MAAMsE,EACtB,IAAIQ,GAAKhG,EAAI,GAAGkB,MAAMsE,EACtB,OAAOC,GAAQhM,EAAGsM,IAAOxM,EAAGyG,EAAI,IAAMyF,EAAQhM,EAAGuM,IAAOzM,EAAGyG,EAAI,KAAOzG,EAAGyG,EAAI+F,GAAM,MAAQC,GAAM,KAAO,EAAI,IAE7G,OAAQzM,EAAG8J,GAEZ,QAASzD,GAAOI,EAAIvG,EAAEvF,GACrB,GAAGA,GAAK,KAAMA,IACd,IAAI2M,GAAO,EACX,cAAcb,IACb,IAAK,SACJ,GAAGA,GAAO,UAAY9L,EAAE+R,OAAQpF,EAAO3M,EAAE+R,WACpCpF,GAAOb,CACZ,OACD,IAAK,SACJ,GAAGA,GAAO,IAAM9L,EAAE+R,OAAQpF,EAAO3M,EAAE+R,WAC9BpF,IAAQ3M,EAAEgS,OAAS,KAAQhS,EAAO,MAAIsG,GAAWwF,EACtD,IAAGa,GAAQ,KAAMA,EAAQ3M,EAAEgS,OAAShS,EAAEgS,MAAMzL,EAAYuF,KAAUxF,EAAUC,EAAYuF,GACxF,IAAGa,GAAQ,KAAMA,EAAOlG,EAAYqF,IAAQ,SAC5C,QAEF,GAAG5F,EAAUyG,EAAK,GAAI,MAAOlB,GAAYlG,EAAGvF,EAC5C,IAAGuF,YAAa6D,MAAM7D,EAAIwE,EAAcxE,EAAGvF,EAAEmJ,SAC7C,IAAIwI,GAAID,EAAW/E,EAAMpH,EACzB,IAAGW,EAAUyL,EAAE,IAAK,MAAOlG,GAAYlG,EAAGvF,EAC1C,IAAGuF,IAAM,KAAMA,EAAI,WAAa,IAAGA,IAAM,MAAOA,EAAI,YAC/C,IAAGA,IAAM,IAAMA,GAAK,KAAM,MAAO,EACtC,OAAO6K,GAASuB,EAAE,GAAIpM,EAAGvF,EAAG2R,EAAE,IAE/B,QAASM,GAAWnG,EAAKgB,GACxB,SAAUA,IAAO,SAAU,CAC1BA,GAAOA,IAAQ,CACjB,KAAI,GAAI7M,GAAI,EAAGA,EAAI,MAAUA,EAAG,CAChC,GAAGqG,EAAUrG,IAAMmC,UAAW,CAAE,GAAG0K,EAAM,EAAGA,EAAM7M,CAAG,UAClD,GAAGqG,EAAUrG,IAAM6L,EAAK,CAAEgB,EAAM7M,CAAG,QAEtC,GAAG6M,EAAM,EAAGA,EAAM,IAElBxG,EAAUwG,GAAOhB,CAChB,OAAOgB,GAER7H,EAAIiN,KAAOD,CACXhN,GAAIkN,OAAS7L,CACbrB,GAAImN,UAAY,QAASA,KAAc,MAAO9L,GAC9CrB,GAAIoN,WAAa,QAASA,GAAWC,GACpC,IAAI,GAAIrS,GAAE,EAAGA,GAAG,MAAUA,EACzB,GAAGqS,EAAIrS,KAAOmC,UAAW6P,EAAWK,EAAIrS,GAAIA,GAE9CgF,GAAIoB,WAAaA,CACjBpB,GAAIyG,OAASA,EAEbxG,EAASD,EAET,IAAIsN,IACHC,iBAAkB,UAClBC,eAAgBxN,EAAIkN,OAAO,IAC3BO,YAAa,sBACbC,cAAe1N,EAAIkN,OAAO,IAC1BS,aAAc3N,EAAIkN,OAAO,IACzBU,YAAa5N,EAAIkN,OAAO,IACxBW,cAAe7N,EAAIkN,OAAO,IAC1BY,aAAc9N,EAAIkN,OAAO,IACzBa,SAAY,uCACZC,MAAShO,EAAIkN,OAAO,GACpBe,SAAYjO,EAAIkN,OAAO,GACvBgB,QAAWlO,EAAIkN,OAAO,IACtBiB,WAAcnO,EAAIkN,OAAO,IACzBkB,SAAU,qBACVC,aAAc,0BACdC,SAAU,qBAGX,IAAIC,IACH9M,EAAK,4BACLE,EAAK,iCACLE,EAAK,kCACLE,EAAK,uCACLyM,GAAM,UAAWC,GAAM,UAAWC,GAAM,UAAWC,GAAM,UACzDC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SACtEC,GAAM,UAAWC,GAAM,UAAWC,GAAM,UAAWC,GAAM,UACzDC,GAAM,SACNpN,GAAM,0CACNC,GAAM,mDACNC,GAAM,kDACNC,GAAM,2DACNkN,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SACtEC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SAAUC,GAAM,SACtDC,GAAM,IACNC,GAAM,OACNC,GAAM,QACNC,GAAM,WACNxO,GAAM,4BACNE,GAAM,iCACNE,GAAM,kCACNE,GAAM,uCACNmO,GAAM,KACNC,GAAM,QACN9V,GAAM,QACN+V,GAAM,UACNC,GAAM,SACNC,GAAM,SACNC,GAAM,WACNC,GAAM,QACNC,GAAM,SACNC,GAAM,OACNrX,GAAM,UACNsX,GAAM,cACNC,GAAM,QACNC,GAAM,YACNC,GAAM,SAIP,IAAIC,GAAc,kCAClB,SAASC,GAAanE,GACrB,GAAIjG,SAAaiG,IAAU,SAAW9M,EAAIkN,OAAOJ,GAAUA,CAC3DjG,GAAMA,EAAI7J,QAAQgU,EAAa,SAC/B,OAAO,IAAIE,QAAO,IAAMrK,EAAM,KAE/B,QAASsK,GAAW5H,EAAKuD,EAAQ/E,GAChC,GAAIqJ,IAAK,EAAGvN,GAAK,EAAGxE,GAAK,EAAGyE,GAAK,EAAGC,GAAK,EAAGC,GAAK,GAChD8I,EAAO/E,MAAMiJ,QAAkBK,QAAQ,SAASxT,EAAG7C,GACnD,GAAIsF,GAAIuI,SAASd,EAAM/M,EAAE,GAAI,GAC7B,QAAO6C,EAAE2N,cAAc1O,OAAO,IAC7B,IAAK,IAAKsU,EAAI9Q,CAAG,OAAO,IAAK,IAAKjB,EAAIiB,CAAG,OACzC,IAAK,IAAKwD,EAAIxD,CAAG,OAAO,IAAK,IAAK0D,EAAI1D,CAAG,OACzC,IAAK,IAAK,GAAGwD,GAAK,EAAGC,EAAIzD,MAAQuD,GAAIvD,CAAG,UAG1C,IAAG0D,GAAK,GAAKD,IAAM,GAAKF,GAAK,EAAG,CAAEE,EAAIF,CAAGA,IAAK,EAC9C,GAAIyN,IAAY,IAAMF,GAAG,EAAEA,GAAG,GAAIjN,OAAOG,gBAAgB1I,OAAO,GAAK,KAAO,MAAQiI,GAAG,EAAEA,EAAE,IAAIjI,OAAO,GAAK,KAAO,MAAQyD,GAAG,EAAEA,EAAE,IAAIzD,OAAO,EAC5I,IAAG0V,EAAQpW,QAAU,EAAGoW,EAAU,IAAMA,CACxC,IAAGA,EAAQpW,QAAU,EAAGoW,EAAU,KAAOA,CACzC,IAAIC,IAAY,MAAQzN,GAAG,EAAEA,EAAE,IAAIlI,OAAO,GAAK,KAAO,MAAQmI,GAAG,EAAEA,EAAE,IAAInI,OAAO,GAAK,KAAO,MAAQoI,GAAG,EAAEA,EAAE,IAAIpI,OAAO,EACtH,IAAGkI,IAAM,GAAKC,IAAM,GAAKC,IAAM,EAAG,MAAOsN,EACzC,IAAGF,IAAM,GAAKvN,IAAM,GAAKxE,IAAM,EAAG,MAAOkS,EACzC,OAAOD,GAAU,IAAMC,EAYxB,GAAIC,GAAQ,WACZ,GAAIA,KACJA,GAAM1Y,QAAU,OAGhB,SAAS2Y,KACR,GAAI9S,GAAI,EAAGoO,EAAQ,GAAI9O,OAAM,IAE7B,KAAI,GAAIJ,GAAG,EAAGA,GAAK,MAAOA,EAAE,CAC3Bc,EAAId,CACJc,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/CoO,GAAMlP,GAAKc,EAGZ,aAAc+S,cAAe,YAAc,GAAIA,YAAW3E,GAASA,EAGpE,GAAI4E,GAAKF,GACT,SAASG,GAAmBlO,GAC3B,GAAI/E,GAAI,EAAG2B,EAAI,EAAGzC,EAAI,EAAGkP,QAAe2E,cAAe,YAAc,GAAIA,YAAW,MAAQ,GAAIzT,OAAM,KAEtG,KAAIJ,EAAI,EAAGA,GAAK,MAAOA,EAAGkP,EAAMlP,GAAK6F,EAAE7F,EACvC,KAAIA,EAAI,EAAGA,GAAK,MAAOA,EAAG,CACzByC,EAAIoD,EAAE7F,EACN,KAAIc,EAAI,IAAMd,EAAGc,EAAI,KAAMA,GAAK,IAAK2B,EAAIyM,EAAMpO,GAAM2B,IAAM,EAAKoD,EAAEpD,EAAI,KAEvE,GAAIrB,KACJ,KAAIpB,EAAI,EAAGA,GAAK,KAAMA,EAAGoB,EAAIpB,EAAI,SAAY6T,cAAe,YAAc3E,EAAM8E,SAAShU,EAAI,IAAKA,EAAI,IAAM,KAAOkP,EAAMnR,MAAMiC,EAAI,IAAKA,EAAI,IAAM,IAClJ,OAAOoB,GAER,GAAI6S,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,GAAIhY,GAAI,EAAGmE,EAAI4T,EAAK7X,OAAQF,EAAImE,GAAI8T,EAAKA,IAAI,EAAKtB,GAAIsB,EAAEF,EAAK5X,WAAWH,MAAM,IAClF,QAAQiY,EAGT,QAASC,GAAUzQ,EAAGuQ,GACrB,GAAIC,GAAID,GAAQ,EAAG7T,EAAIsD,EAAEvH,OAAS,GAAIF,EAAI,CAC1C,MAAMA,EAAImE,GAAI8T,EACbJ,EAAGpQ,EAAEzH,KAAQiY,EAAI,KACjBL,EAAGnQ,EAAEzH,KAASiY,GAAK,EAAK,KACxBN,EAAGlQ,EAAEzH,KAASiY,GAAK,GAAM,KACzBP,EAAGjQ,EAAEzH,KAAQiY,IAAM,IACnBR,EAAGhQ,EAAEzH,MAAQwX,EAAG/P,EAAEzH,MAAQuX,EAAG9P,EAAEzH,MAAQsX,EAAG7P,EAAEzH,MAC5CqX,EAAG5P,EAAEzH,MAAQoX,EAAG3P,EAAEzH,MAAQmX,EAAG1P,EAAEzH,MAAQkX,EAAGzP,EAAEzH,MAC5CiX,EAAGxP,EAAEzH,MAAQgX,EAAGvP,EAAEzH,MAAQ+W,EAAGtP,EAAEzH,MAAQ2W,EAAGlP,EAAEzH;AAC7CmE,GAAK,EACL,OAAMnE,EAAImE,EAAG8T,EAAKA,IAAI,EAAKtB,GAAIsB,EAAExQ,EAAEzH,MAAM,IACzC,QAAQiY,EAGT,QAASE,GAAU5J,EAAKyJ,GACvB,GAAIC,GAAID,GAAQ,CAChB,KAAI,GAAIhY,GAAI,EAAGmE,EAAIoK,EAAIrO,OAAQyD,EAAI,EAAGU,EAAI,EAAGrE,EAAImE,GAAI,CACpDR,EAAI4K,EAAIpO,WAAWH,IACnB,IAAG2D,EAAI,IAAM,CACZsU,EAAKA,IAAI,EAAKtB,GAAIsB,EAAEtU,GAAG,SACjB,IAAGA,EAAI,KAAO,CACpBsU,EAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMtU,GAAG,EAAG,KAAM,IACzCsU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAKtU,EAAE,KAAM,SAC9B,IAAGA,GAAK,OAAUA,EAAI,MAAQ,CACpCA,GAAKA,EAAE,MAAM,EAAIU,GAAIkK,EAAIpO,WAAWH,KAAK,IACzCiY,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMtU,GAAG,EAAG,IAAK,IACxCsU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMtU,GAAG,EAAG,KAAM,IACzCsU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAM5T,GAAG,EAAG,IAAMV,EAAE,IAAI,IAAK,IACpDsU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAK5T,EAAE,KAAM,SAC9B,CACN4T,EAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMtU,GAAG,GAAI,KAAM,IAC1CsU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAMtU,GAAG,EAAG,KAAM,IACzCsU,GAAKA,IAAI,EAAKtB,GAAIsB,GAAK,IAAKtU,EAAE,KAAM,MAGtC,OAAQsU,EAETzB,EAAMzE,MAAQ4E,CACdH,GAAMuB,KAAOD,CACbtB,GAAM/T,IAAMyV,CACZ1B,GAAMjI,IAAM4J,CACZ,OAAO3B,KAGP,IAAI4B,GAAM,QAAUC,MACpB,GAAIC,KACJA,GAAQxa,QAAU,OAElB,SAASya,GAAQnT,EAAGqI,GACnB,GAAItJ,GAAIiB,EAAE/B,MAAM,KAAMmV,EAAI/K,EAAEpK,MAAM,IAClC,KAAI,GAAIrD,GAAI,EAAG2D,EAAI,EAAG8U,EAAI9S,KAAKyJ,IAAIjL,EAAEjE,OAAQsY,EAAEtY,QAASF,EAAIyY,IAAKzY,EAAG,CACnE,GAAI2D,EAAIQ,EAAEnE,GAAGE,OAASsY,EAAExY,GAAGE,OAAS,MAAOyD,EAC3C,IAAGQ,EAAEnE,IAAMwY,EAAExY,GAAI,MAAOmE,GAAEnE,GAAKwY,EAAExY,IAAM,EAAI,EAE5C,MAAOmE,GAAEjE,OAASsY,EAAEtY,OAErB,QAASwY,GAAQC,GAChB,GAAGA,EAAE7W,OAAO6W,EAAEzY,OAAS,IAAM,IAAK,MAAQyY,GAAE/X,MAAM,GAAG,GAAGnB,QAAQ,QAAU,EAAKkZ,EAAID,EAAQC,EAAE/X,MAAM,GAAI,GACvG,IAAI+C,GAAIgV,EAAE/I,YAAY,IACtB,OAAQjM,MAAO,EAAKgV,EAAIA,EAAE/X,MAAM,EAAG+C,EAAE,GAGtC,QAASiV,GAASD,GACjB,GAAGA,EAAE7W,OAAO6W,EAAEzY,OAAS,IAAM,IAAK,MAAO0Y,GAASD,EAAE/X,MAAM,GAAI,GAC9D,IAAI+C,GAAIgV,EAAE/I,YAAY,IACtB,OAAQjM,MAAO,EAAKgV,EAAIA,EAAE/X,MAAM+C,EAAE,GAUnC,QAASkV,GAAepW,EAAK6F,GAC5B,SAAUA,KAAS,SAAUA,EAAO,GAAIa,MAAKb,EAC7C,IAAIwQ,GAAMxQ,EAAKyQ,UACfD,GAAMA,GAAO,EAAIxQ,EAAK0Q,YACtBF,GAAMA,GAAO,EAAKxQ,EAAK2Q,eAAe,CACtCxW,GAAIyW,YAAY,EAAGJ,EACnB,IAAIK,GAAO7Q,EAAKgB,cAAgB,IAChC6P,GAAMA,GAAO,EAAK7Q,EAAKiB,WAAW,CAClC4P,GAAMA,GAAO,EAAI7Q,EAAKe,SACtB5G,GAAIyW,YAAY,EAAGC,GAIpB,QAASC,GAAe3W,GACvB,GAAIqW,GAAMrW,EAAI4W,WAAW,GAAK,KAC9B,IAAIF,GAAM1W,EAAI4W,WAAW,GAAK,KAC9B,IAAIvN,GAAM,GAAI3C,KACd,IAAI9E,GAAI8U,EAAM,EAAMA,MAAS,CAC7B,IAAItQ,GAAIsQ,EAAM,EAAMA,MAAS,CAC7BrN,GAAIwN,gBAAgB,EACpBxN,GAAIyN,YAAYJ,EAAM,KACtBrN,GAAI0N,SAAS3Q,EAAE,EACfiD,GAAI1C,QAAQ/E,EACZ,IAAI2E,GAAI8P,EAAM,EAAMA,MAAS,CAC7B,IAAI/P,GAAI+P,EAAM,EAAMA,MAAS,CAC7BhN,GAAI2N,SAASX,EACbhN,GAAI4N,WAAW3Q,EACf+C,GAAI6N,WAAW3Q,GAAG,EAClB,OAAO8C,GAER,QAAS8N,GAAkBC,GAC1BC,GAAUD,EAAM,EAChB,IAAI9Z,KACJ,IAAIga,GAAQ,CACZ,OAAMF,EAAKzU,GAAKyU,EAAK3Z,OAAS,EAAG,CAChC,GAAI0L,GAAOiO,EAAKR,WAAW,EAC3B,IAAIW,GAAKH,EAAKR,WAAW,GAAIY,EAAMJ,EAAKzU,EAAI4U,CAC5C,IAAIrB,KACJ,QAAO/M,GAEN,IAAK,OAAQ,CACZmO,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,GAAIlR,MAAKwP,EAAEuB,MAAM,KAErC,OAEDL,EAAKzU,EAAI6U,CACTla,GAAE6L,GAAQ+M,EAEX,MAAO5Y,GAER,GAAIua,EACJ,SAASC,KAAW,MAAOD,KAAOA,EAAKnY,WACvC,QAASqY,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,EAAKva,OAAS,IAAK,KAAM,IAAI2D,OAAM,iBAAmB4W,EAAKva,OAAS,SACvE,IAAI2a,GAAO,CACX,IAAIC,GAAM,GACV,IAAIC,GAAO,CACX,IAAIC,GAAgB,CACpB,IAAIC,GAAY,CAChB,IAAIC,GAAgB,CACpB,IAAIC,GAAc,CAElB,IAAIC,KAGJ,IAAIvB,GAAOY,EAAK7Z,MAAM,EAAE,IACxBkZ,IAAUD,EAAM,EAGhB,IAAIwB,GAAKC,EAAezB,EACxBgB,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,IAAI7W,OAAM,sCAAwCgX,IAIlE,GAAGC,IAAQ,IAAK,CAAEjB,EAAOY,EAAK7Z,MAAM,EAAEka,EAAMhB,IAAUD,EAAM,IAE5D,GAAI0B,GAASd,EAAK7Z,MAAM,EAAEka,EAE1BU,GAAa3B,EAAMgB,EAGnB,IAAIY,GAAU5B,EAAKR,WAAW,EAAG,IACjC,IAAGwB,IAAS,GAAKY,IAAY,EAAG,KAAM,IAAI5X,OAAM,uCAAyC4X,EAGzF5B,GAAKzU,GAAK,CAGV6V,GAAYpB,EAAKR,WAAW,EAAG,IAG/BQ,GAAKzU,GAAK,CAGVyU,GAAK6B,IAAI,WAAY,4BAGrBR,GAAgBrB,EAAKR,WAAW,EAAG,IAGnC0B,GAAOlB,EAAKR,WAAW,EAAG,IAG1B8B,GAActB,EAAKR,WAAW,EAAG,IAGjC2B,GAAgBnB,EAAKR,WAAW,EAAG,IAGnC,KAAI,GAAInR,IAAK,EAAGmE,EAAI,EAAGA,EAAI,MAAOA,EAAG,CACpCnE,EAAI2R,EAAKR,WAAW,EAAG,IACvB,IAAGnR,EAAE,EAAG,KACRkT,GAAU/O,GAAKnE,EAIhB,GAAIyT,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,IAAIzc,IACHqc,UAAWA,EACXC,UAAWA,EAIZ,IAAG3B,GAAWA,EAAQ+B,IAAK1c,EAAE0c,KAAOlB,OAAQA,EAAQI,QAASA,EAC7D,OAAO5b,GAIP,QAASub,GAAezB,GACvB,GAAGA,EAAKA,EAAKzU,IAAM,IAAQyU,EAAKA,EAAKzU,EAAI,IAAM,GAAM,OAAQ,EAAG,EAEhEyU,GAAK6B,IAAIgB,EAAkB,qBAI3B7C,GAAKzU,GAAK,EAGV,IAAIyV,GAAOhB,EAAKR,WAAW,EAAG,IAE9B,QAAQQ,EAAKR,WAAW,EAAE,KAAMwB,GAEjC,QAASW,GAAa3B,EAAMgB,GAC3B,GAAI2B,GAAQ,CAIZ3C,GAAKzU,GAAK,CAGV,QAAQoX,EAAQ3C,EAAKR,WAAW,IAC/B,IAAK,GAAM,GAAGwB,GAAQ,EAAG,KAAM,IAAIhX,OAAM,gCAAkC2Y,EAAQ,OACnF,IAAK,IAAM,GAAG3B,GAAQ,EAAG,KAAM,IAAIhX,OAAM,iCAAmC2Y,EAAQ,OACpF,QAAS,KAAM,IAAI3Y,OAAM,sCAAwC2Y,IAIlE3C,EAAK6B,IAAI,OAAQ,sBAGjB7B,GAAK6B,IAAI,eAAgB,cAI1B,QAASE,GAAUnB,EAAMK,GACxB,GAAI6B,GAAWhX,KAAKiX,KAAKnC,EAAKva,OAAO4a,GAAK,CAC1C,IAAIa,KACJ,KAAI,GAAI3b,GAAE,EAAGA,EAAI2c,IAAY3c,EAAG2b,EAAQ3b,EAAE,GAAKya,EAAK7Z,MAAMZ,EAAE8a,GAAK9a,EAAE,GAAG8a,EACtEa,GAAQgB,EAAS,GAAKlC,EAAK7Z,MAAM+b,EAAS7B,EAC1C,OAAOa,GAIR,QAASY,GAAiBM,EAAIC,EAAIX,GACjC,GAAInc,GAAI,EAAGmE,EAAI,EAAGqU,EAAI,EAAGP,EAAI,EAAG5L,EAAI,EAAG0Q,EAAKZ,EAAMjc,MAClD,IAAI8c,MAAU9U,IAEd,MAAMlI,EAAI+c,IAAM/c,EAAG,CAAEgd,EAAIhd,GAAGkI,EAAElI,GAAGA,CAAG8c,GAAG9c,GAAGmc,EAAMnc,GAEhD,KAAMqM,EAAInE,EAAEhI,SAAUmM,EAAG,CACxBrM,EAAIkI,EAAEmE,EACNlI,GAAI0Y,EAAG7c,GAAGmE,CAAGqU,GAAIqE,EAAG7c,GAAGwY,CAAGP,GAAI4E,EAAG7c,GAAGiY,CACpC,IAAG+E,EAAIhd,KAAOA,EAAG,CAChB,GAAGmE,KAAO,GAAkB6Y,EAAI7Y,KAAOA,EAAG6Y,EAAIhd,GAAKgd,EAAI7Y,EACvD,IAAGqU,KAAO,GAAKwE,EAAIxE,KAAOA,EAAGwE,EAAIhd,GAAKgd,EAAIxE,GAE3C,GAAGP,KAAO,EAAgB+E,EAAI/E,GAAKjY,CACnC,IAAGmE,KAAO,GAAKnE,GAAKgd,EAAIhd,GAAI,CAAEgd,EAAI7Y,GAAK6Y,EAAIhd,EAAI,IAAGkI,EAAE0H,YAAYzL,GAAKkI,EAAGnE,EAAE5D,KAAKH,GAC/E,GAAGqU,KAAO,GAAKxY,GAAKgd,EAAIhd,GAAI,CAAEgd,EAAIxE,GAAKwE,EAAIhd,EAAI,IAAGkI,EAAE0H,YAAY4I,GAAKnM,EAAGnE,EAAE5D,KAAKkU,IAEhF,IAAIxY,EAAE,EAAGA,EAAI+c,IAAM/c,EAAG,GAAGgd,EAAIhd,KAAOA,EAAG,CACtC,GAAGwY,KAAO,GAAkBwE,EAAIxE,KAAOA,EAAGwE,EAAIhd,GAAKgd,EAAIxE,OAClD,IAAGrU,KAAO,GAAK6Y,EAAI7Y,KAAOA,EAAG6Y,EAAIhd,GAAKgd,EAAI7Y,GAGhD,IAAInE,EAAE,EAAGA,EAAI+c,IAAM/c,EAAG,CACrB,GAAG6c,EAAG7c,GAAG4L,OAAS,EAAiB,QACnCS,GAAIrM,CACJ,IAAGqM,GAAK2Q,EAAI3Q,GAAI,EAAG,CAClBA,EAAI2Q,EAAI3Q,EACRyQ,GAAG9c,GAAK8c,EAAGzQ,GAAK,IAAMyQ,EAAG9c,SACjBqM,IAAM,IAAM,IAAM2Q,EAAI3Q,IAAMA,GAAK2Q,EAAI3Q,GAC9C2Q,GAAIhd,IAAM,EAGX8c,EAAG,IAAM,GACT,KAAI9c,EAAE,EAAGA,EAAI+c,IAAM/c,EAAG,CACrB,GAAG6c,EAAG7c,GAAG4L,OAAS,EAAgBkR,EAAG9c,IAAM,KAI7C,QAASid,GAAeC,EAAOC,EAASC,GACvC,GAAIC,GAAQH,EAAMG,MAAOC,EAAOJ,EAAMI,IAEtC,IAAIvd,KACJ,IAAI8M,GAAMwQ,CACV,OAAMD,GAAQE,EAAO,GAAKzQ,GAAO,EAAG,CACnC9M,EAAEuE,KAAK6Y,EAAQvc,MAAMiM,EAAM0Q,EAAM1Q,EAAM0Q,EAAOA,GAC9CD,IAAQC,CACR1Q,GAAM2Q,GAAcJ,EAAMvQ,EAAM,GAEjC,GAAG9M,EAAEG,SAAW,EAAG,MAAQud,IAAQ,EACnC,OAAQlZ,GAAQxE,GAAGa,MAAM,EAAGsc,EAAMI,MAKnC,QAASzB,GAAWhP,EAAK6Q,EAAK/B,EAASb,EAAKM,GAC3C,GAAIlT,GAAI+T,CACR,IAAGpP,IAAQoP,EAAY,CACtB,GAAGyB,IAAQ,EAAG,KAAM,IAAI7Z,OAAM,yCACxB,IAAGgJ,KAAS,EAAgB,CAClC,GAAI8Q,GAAShC,EAAQ9O,GAAMhE,GAAKiS,IAAM,GAAG,CACzC,KAAI6C,EAAQ,MACZ,KAAI,GAAI3d,GAAI,EAAGA,EAAI6I,IAAK7I,EAAG,CAC1B,IAAIkI,EAAIsV,GAAcG,EAAO3d,EAAE,MAAQic,EAAY,KACnDb,GAAU9W,KAAK4D,GAEhB2T,EAAW2B,GAAcG,EAAO7C,EAAI,GAAG4C,EAAM,EAAG/B,EAASb,EAAKM,IAKhE,QAASwC,GAAgBjC,EAAS0B,EAAOjC,EAAWN,EAAK+C,GACxD,GAAIpb,MAAUqb,IACd,KAAID,EAAMA,IACV,IAAIE,GAAUjD,EAAM,EAAGzO,EAAI,EAAGuE,EAAK,CACnC,KAAIvE,EAAEgR,EAAOhR,GAAG,GAAI,CACnBwR,EAAKxR,GAAK,IACV5J,GAAIA,EAAIvC,QAAUmM,CAClByR,GAAUxZ,KAAKqX,EAAQtP,GACvB,IAAI2R,GAAO5C,EAAUzV,KAAKsC,MAAMoE,EAAE,EAAEyO,GACpClK,GAAOvE,EAAE,EAAK0R,CACd,IAAGjD,EAAM,EAAIlK,EAAI,KAAM,IAAI/M,OAAM,yBAA2BwI,EAAI,MAAMyO,EACtE,KAAIa,EAAQqC,GAAO,KACnB3R,GAAImR,GAAc7B,EAAQqC,GAAOpN,GAElC,OAAQqN,MAAOxb,EAAK3C,KAAKoe,IAAYJ,KAItC,QAAS/B,GAAiBJ,EAASV,EAAWG,EAAWN,GACxD,GAAIqD,GAAKxC,EAAQzb,OAAQ4b,IACzB,IAAI+B,MAAWpb,KAAUqb,IACzB,IAAIC,GAAUjD,EAAM,EAAG9a,EAAE,EAAGqM,EAAE,EAAG+R,EAAE,EAAGxN,EAAG,CACzC,KAAI5Q,EAAE,EAAGA,EAAIme,IAAMne,EAAG,CACrByC,IACA2b,GAAKpe,EAAIib,CAAY,IAAGmD,GAAKD,EAAIC,GAAGD,CACpC,IAAGN,EAAKO,GAAI,QACZN,KACA,IAAIO,KACJ,KAAIhS,EAAE+R,EAAG/R,GAAG,GAAI,CACfgS,EAAKhS,GAAK,IACVwR,GAAKxR,GAAK,IACV5J,GAAIA,EAAIvC,QAAUmM,CAClByR,GAAUxZ,KAAKqX,EAAQtP,GACvB,IAAI2R,GAAO5C,EAAUzV,KAAKsC,MAAMoE,EAAE,EAAEyO,GACpClK,GAAOvE,EAAE,EAAK0R,CACd,IAAGjD,EAAM,EAAIlK,EAAI,KAAM,IAAI/M,OAAM,yBAA2BwI,EAAI,MAAMyO,EACtE,KAAIa,EAAQqC,GAAO,KACnB3R,GAAImR,GAAc7B,EAAQqC,GAAOpN,EACjC,IAAGyN,EAAKhS,GAAI,MAEbyP,EAAYsC,IAAOH,MAAOxb,EAAK3C,KAAKoe,IAAYJ,KAEjD,MAAOhC,GAIR,QAASQ,GAAerB,EAAWa,EAAaH,EAASQ,EAAOpB,EAAMmB,EAAOE,EAAWgB,GACvF,GAAIkB,GAAgB,EAAGvB,EAAMZ,EAAMjc,OAAO,EAAE,CAC5C,IAAIyd,GAAS7B,EAAYb,GAAWnb,IACpC,IAAIE,GAAI,EAAGue,EAAU,EAAGvC,CACxB,MAAMhc,EAAI2d,EAAOzd,OAAQF,GAAI,IAAK,CACjC,GAAI6Z,GAAO8D,EAAO/c,MAAMZ,EAAGA,EAAE,IAC7B8Z,IAAUD,EAAM,GAChB0E,GAAU1E,EAAKR,WAAW,EAC1B2C,GAAOwC,GAAU3E,EAAK,EAAE0E,EAAQxB,EAChCZ,GAAM7X,KAAK0X,EACX,IAAIjc,IACHic,KAAOA,EACPpQ,KAAOiO,EAAKR,WAAW,GACvBoF,MAAO5E,EAAKR,WAAW,GACvBlV,EAAO0V,EAAKR,WAAW,EAAG,KAC1Bb,EAAOqB,EAAKR,WAAW,EAAG,KAC1BpB,EAAO4B,EAAKR,WAAW,EAAG,KAC1BqF,MAAO7E,EAAKR,WAAW,IACvBsF,MAAO9E,EAAKR,WAAW,EAAG,KAC1BgE,MAAO,EACPC,KAAM,EAEP,IAAIlD,GAAQP,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,EAC3F,IAAGe,IAAU,EAAGra,EAAE6e,GAAKC,EAAUhF,EAAMA,EAAKzU,EAAE,EAC9C,IAAI8U,GAAQL,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,GAAKQ,EAAKR,WAAW,EAC3F,IAAGa,IAAU,EAAGna,EAAEsa,GAAKwE,EAAUhF,EAAMA,EAAKzU,EAAE,EAC9CrF,GAAEsd,MAAQxD,EAAKR,WAAW,EAAG,IAC7BtZ,GAAEud,KAAOzD,EAAKR,WAAW,EAAG,IAC5B,IAAGtZ,EAAEud,KAAO,GAAKvd,EAAEsd,MAAQ,EAAG,CAAEtd,EAAEud,KAAOvd,EAAE6L,KAAO,CAAG7L,GAAEsd,MAAQpB,CAAYlc,GAAEic,KAAO,GACpF,GAAGjc,EAAE6L,OAAS,EAAG,CAChB0S,EAAgBve,EAAEsd,KAClB,IAAGtC,EAAO,GAAKuD,IAAkBrC,EAAYH,EAAYwC,GAAetC,KAAO,kBAEzE,IAAGjc,EAAEud,MAAQ,KAAkB,CACrCvd,EAAE+e,QAAU,KACZ,IAAGhD,EAAY/b,EAAEsd,SAAWlb,UAAW2Z,EAAY/b,EAAEsd,OAASO,EAAgBjC,EAAS5b,EAAEsd,MAAOvB,EAAYV,UAAWU,EAAYhB,IACnIgB,GAAY/b,EAAEsd,OAAOrB,KAAOjc,EAAEic,IAC9Bjc,GAAEiE,QAAW8X,EAAY/b,EAAEsd,OAAOvd,KAAKc,MAAM,EAAEb,EAAEud,UAC3C,CACNvd,EAAE+e,QAAU,SACZ,IAAG/e,EAAEud,KAAO,EAAGvd,EAAEud,KAAO,MACnB,IAAGgB,IAAkBrC,GAAclc,EAAEsd,QAAUpB,GAAcH,EAAYwC,GAAgB,CAC7Fve,EAAEiE,QAAUiZ,EAAeld,EAAG+b,EAAYwC,GAAexe,MAAOgc,EAAYsB,QAAWtd,OAGzF,GAAGC,EAAEiE,QAAS8V,GAAU/Z,EAAEiE,QAAS,EACnCkY,GAAMF,GAAQjc,CACdqc,GAAU9X,KAAKvE,IAIjB,QAAS8e,GAAUhF,EAAMkF,GACxB,MAAO,IAAI5V,OAAU6V,GAAenF,EAAKkF,EAAO,GAAG,IAAKpZ,KAAKI,IAAI,EAAE,IAAIiZ,GAAenF,EAAKkF,GAAQ,IAAQ,aAAa,KAGzH,QAASE,GAAUrG,EAAU8B,GAC5BH,GACA,OAAOC,GAAMF,EAAG4E,aAAatG,GAAW8B,GAGzC,QAASyE,GAAKtF,EAAMa,GACnB,GAAI9O,GAAO8O,GAAWA,EAAQ9O,IAC9B,KAAIA,EAAM,CACT,GAAG3J,GAAWC,OAAOkd,SAASvF,GAAOjO,EAAO,SAE7C,OAAOA,GAAQ,UACd,IAAK,OAAQ,MAAOqT,GAAUpF,EAAMa,GACpC,IAAK,SAAU,MAAOF,GAAMrX,EAAI/B,EAAOW,OAAO8X,IAAQa,GACtD,IAAK,SAAU,MAAOF,GAAMrX,EAAI0W,GAAOa,IAExC,MAAOF,GAAMX,EAAMa,GAGpB,QAAS2E,GAASC,EAAKlX,GACtB,GAAIrI,GAAIqI,MAAYmX,EAAOxf,EAAEwf,MAAQ,YACrC,KAAID,EAAIjD,UAAWiD,EAAIjD,YACvB,KAAIiD,EAAIlD,UAAWkD,EAAIlD,YACvB,IAAGkD,EAAIjD,UAAUnc,SAAWof,EAAIlD,UAAUlc,OAAQ,KAAM,IAAI2D,OAAM,6BAClE,IAAGyb,EAAIjD,UAAUnc,SAAW,EAAG,CAC9Bof,EAAIjD,UAAU,GAAKkD,EAAO,GAC1BD,GAAIlD,UAAU,IAAQJ,KAAMuD,EAAM3T,KAAM,GAEzC,GAAG7L,EAAEyf,MAAOF,EAAIlD,UAAU,GAAGsC,MAAQ3e,EAAEyf,KACvCC,GAASH,GAEV,QAASG,GAASH,GACjB,GAAII,GAAK,UACT,IAAGtH,EAAIuH,KAAKL,EAAK,IAAMI,GAAK,MAC5B,IAAI/G,GAAI8E,GAAQ,EAAI9E,GAAE,GAAK,EAAIA,GAAE,GAAKA,EAAE,GAAK,EAAIA,GAAE,GAAK,EACxD2G,GAAIlD,UAAU9X,MAAQ0X,KAAM0D,EAAI9T,KAAM,EAAG5H,QAAQ2U,EAAG2E,KAAK,EAAGnZ,EAAE,GAAIqU,EAAE,GAAIP,EAAE,IAC1EqH,GAAIjD,UAAU/X,KAAKgb,EAAIjD,UAAU,GAAKqD,EACtCE,GAAYN,GAEb,QAASM,GAAYN,EAAK5N,GACzB2N,EAASC,EACT,IAAIO,GAAK,MAAOzc,EAAI,KACpB,KAAI,GAAIpD,GAAIsf,EAAIjD,UAAUnc,OAAS,EAAGF,GAAK,IAAKA,EAAG,CAClD,GAAI8f,GAAQR,EAAIlD,UAAUpc,EAC1B,QAAO8f,EAAMlU,MACZ,IAAK,GACJ,GAAGxI,EAAGyc,EAAK,SACN,CAAEP,EAAIlD,UAAU2D,KAAOT,GAAIjD,UAAU0D,MAC1C,MACD,IAAK,IAAG,IAAK,IAAG,IAAK,GACpB3c,EAAI,IACJ,IAAGvB,MAAMie,EAAMtH,EAAIsH,EAAM3b,EAAI2b,EAAM7H,GAAI4H,EAAK,IAC5C,IAAGC,EAAMtH,GAAK,GAAKsH,EAAM3b,GAAK,GAAK2b,EAAMtH,GAAKsH,EAAM3b,EAAG0b,EAAK,IAC5D,OACD,QAASA,EAAK,IAAM,SAGtB,IAAIA,IAAOnO,EAAG,MAEd,IAAIsO,GAAM,GAAI7W,MAAK,KAAM,EAAG,IAAKkD,EAAI,CAErC,IAAI4T,GAAYC,OAAOC,OAASD,OAAOC,OAAO,QAC9C,IAAIrgB,KACJ,KAAIE,EAAI,EAAGA,EAAIsf,EAAIjD,UAAUnc,SAAUF,EAAG,CACzCigB,EAAUX,EAAIjD,UAAUrc,IAAM,IAC9B,IAAGsf,EAAIlD,UAAUpc,GAAG4L,OAAS,EAAG,QAChC9L,GAAKwE,MAAMgb,EAAIjD,UAAUrc,GAAIsf,EAAIlD,UAAUpc,KAE5C,IAAIA,EAAI,EAAGA,EAAIF,EAAKI,SAAUF,EAAG,CAChC,GAAIgd,GAAMtE,EAAQ5Y,EAAKE,GAAG,GAC1BoD,GAAI6c,EAAUjD,EACd,KAAI5Z,EAAG,CACNtD,EAAKwE,MAAM0Y,GACVhB,KAAMpD,EAASoE,GAAKhb,QAAQ,IAAI,IAChC4J,KAAM,EACN8S,MAAO0B,EACPxB,GAAIoB,EAAK3F,GAAI2F,EACbhc,QAAS,OAGVic,GAAUjD,GAAO,MAInBld,EAAKugB,KAAK,SAAStf,EAAE6H,GAAK,MAAO2P,GAAQxX,EAAE,GAAI6H,EAAE,KACjD0W,GAAIjD,YAAgBiD,GAAIlD,YACxB,KAAIpc,EAAI,EAAGA,EAAIF,EAAKI,SAAUF,EAAG,CAAEsf,EAAIjD,UAAUrc,GAAKF,EAAKE,GAAG,EAAIsf,GAAIlD,UAAUpc,GAAKF,EAAKE,GAAG,GAC7F,IAAIA,EAAI,EAAGA,EAAIF,EAAKI,SAAUF,EAAG,CAChC,GAAIsgB,GAAMhB,EAAIlD,UAAUpc,EACxB,IAAI0f,GAAKJ,EAAIjD,UAAUrc,EAEvBsgB,GAAItE,KAAQpD,EAAS8G,GAAI1d,QAAQ,IAAI,GACrCse,GAAInc,EAAImc,EAAI9H,EAAI8H,EAAIrI,IAAMqI,EAAI7B,MAAQ,EACtC6B,GAAIhD,KAAOgD,EAAItc,QAAUsc,EAAItc,QAAQ9D,OAAS,CAC9CogB,GAAIjD,MAAQ,CACZiD,GAAI5B,MAAS4B,EAAI5B,OAAS0B,CAC1B,IAAGpgB,IAAM,EAAG,CACXsgB,EAAIrI,EAAInY,EAAKI,OAAS,EAAI,GAAK,CAC/BogB,GAAIhD,KAAO,CACXgD,GAAI1U,KAAO,MACL,IAAG8T,EAAG9e,OAAO,IAAM,IAAK,CAC9B,IAAIyL,EAAErM,EAAE,EAAEqM,EAAIvM,EAAKI,SAAUmM,EAAG,GAAGqM,EAAQ4G,EAAIjD,UAAUhQ,KAAKqT,EAAI,KAClEY,GAAIrI,EAAI5L,GAAKvM,EAAKI,QAAU,EAAImM,CAChC,KAAIA,EAAErM,EAAE,EAAEqM,EAAIvM,EAAKI,SAAUmM,EAAG,GAAGqM,EAAQ4G,EAAIjD,UAAUhQ,KAAKqM,EAAQgH,GAAK,KAC3EY,GAAI9H,EAAInM,GAAKvM,EAAKI,QAAU,EAAImM,CAChCiU,GAAI1U,KAAO,MACL,CACN,GAAG8M,EAAQ4G,EAAIjD,UAAUrc,EAAE,IAAI,KAAO0Y,EAAQgH,GAAKY,EAAI9H,EAAIxY,EAAI,CAC/DsgB,GAAI1U,KAAO,IAMd,QAAS2U,GAAOjB,EAAK5E,GACpB,GAAI8F,GAAQ9F,KAEZ,IAAG8F,EAAMC,UAAY,MAAO,MAAOC,IAAUpB,EAAKkB,EAClDZ,GAAYN,EACZ,QAAOkB,EAAMC,UACZ,IAAK,MAAO,MAAOE,IAAUrB,EAAKkB,IAGnC,GAAIrc,GAAI,SAAUmb,GACjB,GAAIsB,GAAY,EAAGC,EAAW,CAC9B,KAAI,GAAI7gB,GAAI,EAAGA,EAAIsf,EAAIlD,UAAUlc,SAAUF,EAAG,CAC7C,GAAIya,GAAO6E,EAAIlD,UAAUpc,EACzB,KAAIya,EAAKzW,QAAS,QACrB,IAAIoM,GAAOqK,EAAKzW,QAAQ9D,MACrB,IAAGkQ,EAAO,EAAE,CACX,GAAGA,EAAO,KAAQwQ,GAAcxQ,EAAO,IAAS,MAC3CyQ,IAAazQ,EAAO,KAAW,GAGtC,GAAIqL,GAAW6D,EAAIjD,UAAUnc,OAAQ,GAAM,CAC3C,IAAI4gB,GAAYF,EAAY,GAAM,CAClC,IAAIG,GAAYH,EAAY,KAAS,CACrC,IAAII,GAAWF,EAAWD,EAAWpF,EAAUsF,CAC/C,IAAIE,GAAWD,EAAW,KAAS,CACnC,IAAIE,GAAYD,GAAW,IAAM,EAAItb,KAAKiX,MAAMqE,EAAQ,KAAK,IAC7D,OAAQD,EAAWC,EAAUC,EAAY,KAAS,EAAKD,EAASC,IAAcD,GAAW,IAAM,EAAItb,KAAKiX,MAAMqE,EAAQ,KAAK,IAC3H,IAAI9c,IAAM,EAAG+c,EAAWD,EAASF,EAAUtF,EAASoF,EAAUD,EAAW,EACzEtB,GAAIlD,UAAU,GAAGkB,KAAOsD,GAAa,CACrCzc,GAAE,IAAMmb,EAAIlD,UAAU,GAAGiB,MAAMlZ,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,KAAMA,EAAE,GAAG,GAAM,EAC3E,OAAOA,IACLmb,EACH,IAAIvf,GAAI0d,GAAQtZ,EAAE,IAAM,EACxB,IAAInE,GAAI,EAAG0I,EAAI,CACf,EACC,IAAI1I,EAAI,EAAGA,EAAI,IAAKA,EAAGD,EAAEmZ,YAAY,EAAGiI,EAAWnhB,GACnD,KAAIA,EAAI,EAAGA,EAAI,IAAKA,EAAGD,EAAEmZ,YAAY,EAAG,EACxCnZ,GAAEmZ,YAAY,EAAG,GACjBnZ,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAG,MACjBnZ,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAG,EACjB,KAAIlZ,EAAI,EAAGA,EAAI,IAAKA,EAAGD,EAAEmZ,YAAY,EAAG,EACxCnZ,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAG/U,EAAE,GACnBpE,GAAEmZ,YAAY,EAAG/U,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAC7CpE,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAG,GAAG,GACpBnZ,GAAEmZ,YAAY,EAAG/U,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAKA,EAAE,GAAK,EAAG8X,EAChDlc,GAAEmZ,YAAY,EAAG/U,EAAE,GACnBpE,GAAEmZ,aAAa,EAAG/U,EAAE,GAAKA,EAAE,GAAK,EAAG8X,EACnClc,GAAEmZ,YAAY,EAAG/U,EAAE,GACnB,KAAInE,EAAI,EAAGA,EAAI,MAAOA,EAAGD,EAAEmZ,aAAa,EAAGlZ,EAAImE,EAAE,GAAKA,EAAE,GAAKnE,GAAK,GAEnE,GAAGmE,EAAE,GAAI,CACR,IAAIuE,EAAI,EAAGA,EAAIvE,EAAE,KAAMuE,EAAG,CACzB,KAAM1I,EAAI,IAAM0I,EAAI,MAAO1I,EAAGD,EAAEmZ,aAAa,EAAGlZ,EAAImE,EAAE,GAAKA,EAAE,GAAKnE,GAAK,EACvED,GAAEmZ,aAAa,EAAGxQ,IAAMvE,EAAE,GAAK,EAAI8X,EAAavT,EAAI,IAGtD,GAAI0Y,GAAU,SAASxW,GACtB,IAAIlC,GAAKkC,EAAG5K,EAAE0I,EAAE,IAAK1I,EAAGD,EAAEmZ,aAAa,EAAGlZ,EAAE,EAC5C,IAAG4K,EAAG,GAAI5K,CAAGD,GAAEmZ,aAAa,EAAG+C,IAEhCvT,GAAI1I,EAAI,CACR,KAAI0I,GAAGvE,EAAE,GAAInE,EAAE0I,IAAK1I,EAAGD,EAAEmZ,aAAa,EAAGmI,EAAOC,QAChD,KAAI5Y,GAAGvE,EAAE,GAAInE,EAAE0I,IAAK1I,EAAGD,EAAEmZ,aAAa,EAAGmI,EAAOE,QAChDH,GAAQjd,EAAE,GACVid,GAAQjd,EAAE,GACV,IAAIkI,GAAI,EAAG+D,EAAO,CAClB,IAAIqK,GAAO6E,EAAIlD,UAAU,EACzB,MAAM/P,EAAIiT,EAAIlD,UAAUlc,SAAUmM,EAAG,CACpCoO,EAAO6E,EAAIlD,UAAU/P,EACrB,KAAIoO,EAAKzW,QAAS,QACpBoM,GAAOqK,EAAKzW,QAAQ9D,MAClB,IAAGkQ,EAAO,KAAQ,QAClBqK,GAAK4C,MAAQ3U,CACb0Y,GAAShR,EAAO,KAAW,GAE5BgR,EAASjd,EAAE,GAAK,GAAM,EACtB,OAAMpE,EAAEqF,EAAI,IAAOrF,EAAEmZ,aAAa,EAAGmI,EAAOpF,WAC5CvT,GAAI1I,EAAI,CACR,KAAIqM,EAAI,EAAGA,EAAIiT,EAAIlD,UAAUlc,SAAUmM,EAAG,CACzCoO,EAAO6E,EAAIlD,UAAU/P,EACrB,KAAIoO,EAAKzW,QAAS,QACpBoM,GAAOqK,EAAKzW,QAAQ9D,MAClB,KAAIkQ,GAAQA,GAAQ,KAAQ,QAC5BqK,GAAK4C,MAAQ3U,CACb0Y,GAAShR,EAAO,IAAS,GAE1B,MAAMrQ,EAAEqF,EAAI,IAAOrF,EAAEmZ,aAAa,EAAGmI,EAAOpF,WAC5C,KAAIjc,EAAI,EAAGA,EAAImE,EAAE,IAAI,IAAKnE,EAAG,CAC5B,GAAI0f,GAAKJ,EAAIjD,UAAUrc,EACvB,KAAI0f,GAAMA,EAAGxf,SAAW,EAAG,CAC1B,IAAImM,EAAI,EAAGA,EAAI,KAAMA,EAAGtM,EAAEmZ,YAAY,EAAG,EACzC,KAAI7M,EAAI,EAAGA,EAAI,IAAKA,EAAGtM,EAAEmZ,YAAY,GAAI,EACzC,KAAI7M,EAAI,EAAGA,EAAI,KAAMA,EAAGtM,EAAEmZ,YAAY,EAAG,EACzC,UAEDuB,EAAO6E,EAAIlD,UAAUpc,EACrB,IAAGA,IAAM,EAAGya,EAAK4C,MAAQ5C,EAAK6C,KAAO7C,EAAK4C,MAAQ,EAAIpB,CACtD,IAAIuF,GAAOxhB,IAAM,GAAKwgB,EAAMjB,MAAS9E,EAAKuB,IAC1C5L,GAAO,GAAGoR,EAAIthB,OAAO,EACrBH,GAAEmZ,YAAY,GAAIsI,EAAK,UACvBzhB,GAAEmZ,YAAY,EAAG9I,EACjBrQ,GAAEmZ,YAAY,EAAGuB,EAAK7O,KACtB7L,GAAEmZ,YAAY,EAAGuB,EAAKgE,MACtB1e,GAAEmZ,aAAa,EAAGuB,EAAKtW,EACvBpE,GAAEmZ,aAAa,EAAGuB,EAAKjC,EACvBzY,GAAEmZ,aAAa,EAAGuB,EAAKxC,EACvB,KAAIwC,EAAKiE,MAAO,IAAIrS,EAAI,EAAGA,EAAI,IAAKA,EAAGtM,EAAEmZ,YAAY,EAAG,OACnDnZ,GAAEmZ,YAAY,GAAIuB,EAAKiE,MAAO,MACnC3e,GAAEmZ,YAAY,EAAGuB,EAAKkE,OAAS,EAC/B5e,GAAEmZ,YAAY,EAAG,EAAInZ,GAAEmZ,YAAY,EAAG,EACtCnZ,GAAEmZ,YAAY,EAAG,EAAInZ,GAAEmZ,YAAY,EAAG,EACtCnZ,GAAEmZ,YAAY,EAAGuB,EAAK4C,MACtBtd,GAAEmZ,YAAY,EAAGuB,EAAK6C,KAAOvd,GAAEmZ,YAAY,EAAG,GAE/C,IAAIlZ,EAAI,EAAGA,EAAIsf,EAAIlD,UAAUlc,SAAUF,EAAG,CACzCya,EAAO6E,EAAIlD,UAAUpc,EACvB,IAAGya,EAAK6C,MAAQ,KAAQ,CACrBvd,EAAEqF,EAAKqV,EAAK4C,MAAM,GAAM,CACxB,IAAIpb,GAAWC,OAAOkd,SAAS3E,EAAKzW,SAAU,CAC7CyW,EAAKzW,QAAQyd,KAAK1hB,EAAGA,EAAEqF,EAAG,EAAGqV,EAAK6C,KAElCvd,GAAEqF,GAAMqV,EAAK6C,KAAO,KAAQ,QACtB,CACN,IAAIjR,EAAI,EAAGA,EAAIoO,EAAK6C,OAAQjR,EAAGtM,EAAEmZ,YAAY,EAAGuB,EAAKzW,QAAQqI,GAC7D,MAAMA,EAAI,MAASA,EAAGtM,EAAEmZ,YAAY,EAAG,KAI1C,IAAIlZ,EAAI,EAAGA,EAAIsf,EAAIlD,UAAUlc,SAAUF,EAAG,CACzCya,EAAO6E,EAAIlD,UAAUpc,EACvB,IAAGya,EAAK6C,KAAO,GAAK7C,EAAK6C,KAAO,KAAQ,CACrC,GAAIrb,GAAWC,OAAOkd,SAAS3E,EAAKzW,SAAU,CAC7CyW,EAAKzW,QAAQyd,KAAK1hB,EAAGA,EAAEqF,EAAG,EAAGqV,EAAK6C,KAElCvd,GAAEqF,GAAMqV,EAAK6C,KAAO,IAAO,OACrB,CACN,IAAIjR,EAAI,EAAGA,EAAIoO,EAAK6C,OAAQjR,EAAGtM,EAAEmZ,YAAY,EAAGuB,EAAKzW,QAAQqI,GAC7D,MAAMA,EAAI,KAAQA,EAAGtM,EAAEmZ,YAAY,EAAG,KAIzC,GAAIjX,EAAS,CACZlC,EAAEqF,EAAIrF,EAAEG,WACF,CAEN,MAAMH,EAAEqF,EAAIrF,EAAEG,OAAQH,EAAEmZ,YAAY,EAAG,GAExC,MAAOnZ,GAGR,QAAS4f,GAAKL,EAAKoC,GAClB,GAAIC,GAAcrC,EAAIjD,UAAUhb,IAAI,SAASN,GAAK,MAAOA,GAAEuK,eAC3D,IAAIsW,GAAUD,EAAYtgB,IAAI,SAASN,GAAK,GAAI6H,GAAI7H,EAAEsC,MAAM,IAAM,OAAOuF,GAAEA,EAAE1I,QAAUa,EAAEH,OAAO,IAAM,IAAM,EAAI,KAChH,IAAIwd,GAAI,KACR,IAAGsD,EAAKvhB,WAAW,KAAO,GAAc,CAAEie,EAAI,IAAMsD,GAAOC,EAAY,GAAG/gB,MAAM,GAAI,GAAK8gB,MACpFtD,GAAIsD,EAAKjiB,QAAQ,QAAU,CAChC,IAAIoiB,GAASH,EAAKpW,aAClB,IAAIV,GAAIwT,IAAM,KAAOuD,EAAYliB,QAAQoiB,GAAUD,EAAQniB,QAAQoiB,EACnE,IAAGjX,KAAO,EAAG,MAAO0U,GAAIlD,UAAUxR,EAElC,IAAI/B,IAAKgZ,EAAO9U,MAAMhI,EACtB8c,GAASA,EAAO7f,QAAQ8C,EAAK,GAC7B,IAAG+D,EAAGgZ,EAASA,EAAO7f,QAAQ+C,EAAK,IACnC,KAAI6F,EAAI,EAAGA,EAAI+W,EAAYzhB,SAAU0K,EAAG,CACvC,IAAI/B,EAAI8Y,EAAY/W,GAAG5I,QAAQ+C,EAAK,KAAO4c,EAAY/W,IAAI5I,QAAQ8C,EAAK,KAAO+c,EAAQ,MAAOvC,GAAIlD,UAAUxR,EAC5G,KAAI/B,EAAI+Y,EAAQhX,GAAG5I,QAAQ+C,EAAK,KAAO6c,EAAQhX,IAAI5I,QAAQ8C,EAAK,KAAO+c,EAAQ,MAAOvC,GAAIlD,UAAUxR,GAErG,MAAO,MAGR,GAAI2S,GAAO,EAGX,IAAItB,IAAc,CAElB,IAAIS,GAAmB,kBACvB,IAAIyE,IAAc,IAAM,IAAM,GAAM,IAAM,IAAM,IAAM,GAAM,IAC5D,IAAIf,GAAe,kCACnB,IAAIiB,IAEHS,YAAa,EACbR,SAAU,EACVC,SAAU,EACVtF,WAAYA,EACZ8F,UAAW,EAEXrF,iBAAkBA,EAClBsF,qBAAsB,OACtBC,WAAY,EACZC,UAAW,EACX9B,aAAcA,EAEd+B,YAAa,UAAU,UAAU,SAAS,YAAY,WAAW,QAGlE,SAASC,GAAW9C,EAAK1G,EAAU8B,GAClCH,GACA,IAAIxa,GAAIwgB,EAAOjB,EAAK5E,EACrBJ,GAAG+H,cAAczJ,EAAU7Y,GAG3B,QAAS0D,GAAI1D,GACZ,GAAIkE,GAAM,GAAIhB,OAAMlD,EAAEG,OACtB,KAAI,GAAIF,GAAI,EAAGA,EAAID,EAAEG,SAAUF,EAAGiE,EAAIjE,GAAKK,OAAOC,aAAaP,EAAEC,GACjE,OAAOiE,GAAI1D,KAAK,IAGjB,QAAS+hB,GAAMhD,EAAK5E,GACnB,GAAI3a,GAAIwgB,EAAOjB,EAAK5E,EACpB,QAAOA,GAAWA,EAAQ9O,MAAQ,UACjC,IAAK,OAAQ2O,GAAUD,GAAG+H,cAAc3H,EAAQ9B,SAAU,EAAM,OAAO7Y,GACvE,IAAK,SAAU,aAAcA,IAAK,SAAWA,EAAI0D,EAAI1D,GACrD,IAAK,SAAU,MAAOqB,GAAOE,aAAcvB,IAAK,SAAWA,EAAI0D,EAAI1D,IACnE,IAAK,SAAU,GAAGkC,EAAS,MAAOC,QAAOkd,SAASrf,GAAKA,EAAIsC,EAAYtC,GAEvE,IAAK,QAAS,aAAcA,IAAK,SAAWoD,EAAIpD,GAAKA,GAEtD,MAAOA,GAGR,GAAIwiB,EACJ,SAASC,GAASC,GAAQ,IACzB,GAAIC,GAAaD,EAAKC,UACtB,IAAIC,GAAU,GAAID,EAClBC,GAAQC,cAAc,GAAI5f,aAAY,EAAG,IAAK2f,EAAQE,iBACtD,IAAGF,EAAQG,UAAWP,EAAQE,MACzB,MAAM,IAAI5e,OAAM,kCACpB,MAAMrB,GAAIugB,QAAQC,MAAM,4BAA8BxgB,EAAEygB,SAAWzgB,KAErE,QAAS0gB,GAAgB/F,EAASgG,GACjC,IAAIZ,EAAO,MAAOa,IAASjG,EAASgG,EACpC,IAAIT,GAAaH,EAAMG,UACvB,IAAIC,GAAU,GAAID,EAClB,IAAIze,GAAM0e,EAAQC,cAAczF,EAAQvc,MAAMuc,EAAQ/X,GAAIud,EAAQE,iBAClE1F,GAAQ/X,GAAKud,EAAQG,SACrB,OAAO7e,GAGR,QAASof,GAAgBlG,GACxB,MAAOoF,GAAQA,EAAMe,eAAenG,GAAWoG,GAASpG,GAEzD,GAAIqG,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,IAAW9gB,GAAK,GAAI0C,IAAS1C,GAAG,EAAIA,GAAG,IAAO,QAAcA,GAAG,EAAIA,GAAG,IAAO,MAAY,QAAS0C,GAAG,GAAOA,GAAG,EAAIA,GAAG,IAE/H,GAAIqe,UAA0B5gB,cAAe,WAE7C,IAAI6gB,IAAWD,GAAmB,GAAI5gB,YAAW,GAAG,KACpD,KAAI,GAAIkF,IAAI,EAAGA,GAAK,GAAG,IAAMA,GAAG2b,GAAS3b,IAAKyb,GAAWzb,GAEzD,SAAS4b,IAAWjhB,EAAGkhB,GACtB,GAAIC,GAAMH,GAAShhB,EAAI,IACvB,IAAGkhB,GAAK,EAAG,MAAOC,KAAS,EAAED,CAC7BC,GAAOA,GAAO,EAAKH,GAAUhhB,GAAG,EAAG,IACnC,IAAGkhB,GAAK,GAAI,MAAOC,KAAS,GAAGD,CAC/BC,GAAOA,GAAO,EAAKH,GAAUhhB,GAAG,GAAI,IACpC,OAAOmhB,KAAS,GAAGD,EAIpB,QAASE,IAAYxhB,EAAKyhB,GAAM,GAAItZ,GAAKsZ,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAASzhB,EAAI0hB,IAAIvZ,GAAK,EAAI,EAAInI,EAAI0hB,EAAE,IAAI,MAAMvZ,EAAI,EAChH,QAASwZ,IAAY3hB,EAAKyhB,GAAM,GAAItZ,GAAKsZ,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAASzhB,EAAI0hB,IAAIvZ,GAAK,EAAI,EAAInI,EAAI0hB,EAAE,IAAI,MAAMvZ,EAAI,EAChH,QAASyZ,IAAY5hB,EAAKyhB,GAAM,GAAItZ,GAAKsZ,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAASzhB,EAAI0hB,IAAIvZ,GAAK,EAAI,EAAInI,EAAI0hB,EAAE,IAAI,MAAMvZ,EAAI,GAChH,QAAS0Z,IAAY7hB,EAAKyhB,GAAM,GAAItZ,GAAKsZ,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAASzhB,EAAI0hB,IAAIvZ,GAAK,EAAI,EAAInI,EAAI0hB,EAAE,IAAI,MAAMvZ,EAAI,GAChH,QAAS2Z,IAAY9hB,EAAKyhB,GAAM,GAAItZ,GAAKsZ,EAAG,EAAIC,EAAKD,IAAK,CAAI,QAASzhB,EAAI0hB,IAAIvZ,GAAK,EAAI,EAAInI,EAAI0hB,EAAE,IAAI,MAAMvZ,EAAI,IAGhH,QAAS4Z,IAAY/hB,EAAKyhB,EAAIrhB,GAC7B,GAAI+H,GAAKsZ,EAAG,EAAIC,EAAKD,IAAK,EAAIxS,GAAM,GAAG7O,GAAG,CAC1C,IAAIyC,GAAI7C,EAAI0hB,KAAOvZ,CACnB,IAAG/H,EAAI,EAAI+H,EAAG,MAAOtF,GAAIoM,CACzBpM,IAAK7C,EAAI0hB,EAAE,IAAK,EAAEvZ,CAClB,IAAG/H,EAAI,GAAK+H,EAAG,MAAOtF,GAAIoM,CAC1BpM,IAAK7C,EAAI0hB,EAAE,IAAK,GAAGvZ,CACnB,IAAG/H,EAAI,GAAK+H,EAAG,MAAOtF,GAAIoM,CAC1BpM,IAAK7C,EAAI0hB,EAAE,IAAK,GAAGvZ,CACnB,OAAOtF,GAAIoM,EAIZ,QAAS+S,IAAahiB,EAAKyhB,EAAI5e,GAAK,GAAIsF,GAAIsZ,EAAK,EAAGC,EAAID,IAAO,CAC9D,IAAGtZ,GAAK,EAAGnI,EAAI0hB,KAAO7e,EAAI,IAAMsF,MAC3B,CACJnI,EAAI0hB,IAAO7e,GAAKsF,EAAK,GACrBnI,GAAI0hB,EAAE,IAAM7e,EAAE,IAAO,EAAEsF,EAExB,MAAOsZ,GAAK,EAGb,QAASQ,IAAajiB,EAAKyhB,EAAI5e,GAC9B,GAAIsF,GAAIsZ,EAAK,EAAGC,EAAID,IAAO,CAC3B5e,IAAKA,EAAE,IAAMsF,CACbnI,GAAI0hB,IAAM7e,CACV,OAAO4e,GAAK,EAEb,QAASS,IAAaliB,EAAKyhB,EAAI5e,GAC9B,GAAIsF,GAAIsZ,EAAK,EAAGC,EAAID,IAAO,CAC3B5e,KAAMsF,CACNnI,GAAI0hB,IAAO7e,EAAI,GAAMA,MAAO,CAC5B7C,GAAI0hB,EAAE,GAAK7e,CACX,OAAO4e,GAAK,EAEb,QAASU,IAAcniB,EAAKyhB,EAAI5e,GAC/B,GAAIsF,GAAIsZ,EAAK,EAAGC,EAAID,IAAO,CAC3B5e,KAAMsF,CACNnI,GAAI0hB,IAAO7e,EAAI,GAAMA,MAAO,CAC5B7C,GAAI0hB,EAAE,GAAK7e,EAAI,GACf7C,GAAI0hB,EAAE,GAAK7e,IAAM,CACjB,OAAO4e,GAAK,GAIb,QAASW,IAAQd,EAAG/J,GACnB,GAAI7V,GAAI4f,EAAE7jB,OAAQ6I,EAAI,EAAE5E,EAAI6V,EAAK,EAAE7V,EAAI6V,EAAK,EAAGha,EAAI,CACnD,IAAGmE,GAAK6V,EAAI,MAAO+J,EACnB,IAAG9hB,EAAS,CACX,GAAIlC,GAAImD,EAAe6F,EAEvB,IAAGgb,EAAEtC,KAAMsC,EAAEtC,KAAK1hB,OACb,MAAMC,EAAI+jB,EAAE7jB,SAAUF,EAAGD,EAAEC,GAAK+jB,EAAE/jB,EACvC,OAAOD,OACD,IAAG6jB,GAAkB,CAC3B,GAAIkB,GAAI,GAAI9hB,YAAW+F,EACvB,IAAG+b,EAAEpgB,IAAKogB,EAAEpgB,IAAIqf,OACX,MAAM/jB,EAAImE,IAAKnE,EAAG8kB,EAAE9kB,GAAK+jB,EAAE/jB,EAChC,OAAO8kB,GAERf,EAAE7jB,OAAS6I,CACX,OAAOgb,GAIR,QAASgB,IAAgBliB,GACxB,GAAI9C,GAAI,GAAIkD,OAAMJ,EAClB,KAAI,GAAI7C,GAAI,EAAGA,EAAI6C,IAAK7C,EAAGD,EAAEC,GAAK,CAClC,OAAOD,GAIR,QAASilB,IAAWC,EAAOC,EAAMC,GAChC,GAAI1gB,GAAS,EAAGmG,EAAI,EAAG5K,EAAI,EAAGqM,EAAI,EAAG+Y,EAAQ,EAAGjhB,EAAI8gB,EAAM/kB,MAE1D,IAAImlB,GAAYzB,GAAmB,GAAI0B,aAAY,IAAMP,GAAgB,GACzE,KAAI/kB,EAAI,EAAGA,EAAI,KAAMA,EAAGqlB,EAASrlB,GAAK,CAEtC,KAAIA,EAAImE,EAAGnE,EAAImlB,IAAOnlB,EAAGilB,EAAMjlB,GAAK,CACpCmE,GAAI8gB,EAAM/kB,MAEV,IAAIqlB,GAAQ3B,GAAmB,GAAI0B,aAAYnhB,GAAK4gB,GAAgB5gB,EAGpE,KAAInE,EAAI,EAAGA,EAAImE,IAAKnE,EAAG,CACtBqlB,EAAUza,EAAIqa,EAAMjlB,KACpB,IAAGyE,EAASmG,EAAGnG,EAASmG,CACxB2a,GAAMvlB,GAAK,EAEZqlB,EAAS,GAAK,CACd,KAAIrlB,EAAI,EAAGA,GAAKyE,IAAUzE,EAAGqlB,EAASrlB,EAAE,IAAOolB,EAASA,EAAQC,EAASrlB,EAAE,IAAK,CAChF,KAAIA,EAAI,EAAGA,EAAImE,IAAKnE,EAAG,CACtBolB,EAAQH,EAAMjlB,EACd,IAAGolB,GAAS,EAAGG,EAAMvlB,GAAKqlB,EAASD,EAAM,MAI1C,GAAII,GAAQ,CACZ,KAAIxlB,EAAI,EAAGA,EAAImE,IAAKnE,EAAG,CACtBwlB,EAAQP,EAAMjlB,EACd,IAAGwlB,GAAS,EAAG,CACdJ,EAAQtB,GAAWyB,EAAMvlB,GAAIyE,IAAUA,EAAO+gB,CAC9C,KAAInZ,GAAK,GAAI5H,EAAS,EAAI+gB,GAAU,EAAGnZ,GAAG,IAAKA,EAC9C6Y,EAAKE,EAAO/Y,GAAGmZ,GAAWA,EAAM,GAAOxlB,GAAG,GAG7C,MAAOyE,GAIR,GAAIghB,IAAW7B,GAAmB,GAAI0B,aAAY,KAAOP,GAAgB,IACzE,IAAIW,IAAW9B,GAAmB,GAAI0B,aAAY,IAAOP,GAAgB,GACzE,KAAInB,GAAkB,CACrB,IAAI,GAAI5jB,IAAI,EAAGA,GAAI,MAAOA,GAAGylB,GAASzlB,IAAK,CAC3C,KAAIA,GAAI,EAAGA,GAAI,KAAMA,GAAG0lB,GAAS1lB,IAAK,GAEvC,WACC,GAAI2lB,KACJ,IAAI3lB,GAAI,CACR,MAAKA,EAAE,GAAIA,IAAK2lB,EAAMrhB,KAAK,EAC3B0gB,IAAWW,EAAOD,GAAU,GAE5B,IAAIT,KACJjlB,GAAI,CACJ,MAAMA,GAAG,IAAKA,IAAKilB,EAAM3gB,KAAK,EAC9B,MAAMtE,GAAG,IAAKA,IAAKilB,EAAM3gB,KAAK,EAC9B,MAAMtE,GAAG,IAAKA,IAAKilB,EAAM3gB,KAAK,EAC9B,MAAMtE,GAAG,IAAKA,IAAKilB,EAAM3gB,KAAK,EAC9B0gB,IAAWC,EAAOQ,GAAU,QACxB,IAAIG,IAAc,QAAUC,MAChC,GAAIC,GAAYlC,GAAmB,GAAI5gB,YAAW,SAClD,IAAIqJ,GAAI,EAAG+R,EAAI,CACf,MAAM/R,EAAIqX,EAAOxjB,OAAS,IAAKmM,EAAG,CACjC,KAAM+R,EAAIsF,EAAOrX,EAAE,KAAM+R,EAAG0H,EAAU1H,GAAK/R,EAE5C,KAAK+R,EAAI,QAASA,EAAG0H,EAAU1H,GAAK,EAEpC,IAAI2H,GAAYnC,GAAmB,GAAI5gB,YAAW,OAClD,KAAIqJ,EAAI,EAAG+R,EAAI,EAAG/R,EAAIoX,EAAOvjB,OAAS,IAAKmM,EAAG,CAC7C,KAAM+R,EAAIqF,EAAOpX,EAAE,KAAM+R,EAAG2H,EAAU3H,GAAK/R,EAG5C,QAAS2Z,GAAalmB,EAAMmE,GAC3B,GAAIgiB,GAAO,CACX,OAAMA,EAAOnmB,EAAKI,OAAQ,CACzB,GAAIiE,GAAIwB,KAAKyJ,IAAI,MAAQtP,EAAKI,OAAS+lB,EACvC,IAAI9B,GAAI8B,EAAO9hB,GAAKrE,EAAKI,MACzB+D,GAAIiV,YAAY,GAAIiL,EACpBlgB,GAAIiV,YAAY,EAAG/U,EACnBF,GAAIiV,YAAY,GAAK/U,EAAK,MAC1B,OAAMA,KAAM,EAAGF,EAAIA,EAAImB,KAAOtF,EAAKmmB,KAEpC,MAAOhiB,GAAImB,EAIZ,QAAS8gB,GAAiBpmB,EAAMmE,GAC/B,GAAIigB,GAAK,CACT,IAAI+B,GAAO,CACX,IAAIE,GAAQvC,GAAmB,GAAI0B,aAAY,SAC/C,OAAMW,EAAOnmB,EAAKI,OAAQ,CACzB,GAAIiE,GAA8BwB,KAAKyJ,IAAI,MAAQtP,EAAKI,OAAS+lB,EAGjE,IAAG9hB,EAAI,GAAI,CACV+f,EAAKO,GAAaxgB,EAAKigB,MAAQ+B,EAAO9hB,GAAKrE,EAAKI,QAChD,IAAGgkB,EAAK,EAAGA,GAAM,GAAKA,EAAK,EAC3BjgB,GAAImB,EAAK8e,EAAK,EAAK,CACnBjgB,GAAIiV,YAAY,EAAG/U,EACnBF,GAAIiV,YAAY,GAAK/U,EAAK,MAC1B,OAAMA,KAAM,EAAGF,EAAIA,EAAImB,KAAOtF,EAAKmmB,IACnC/B,GAAKjgB,EAAImB,EAAI,CACb,UAGD8e,EAAKO,GAAaxgB,EAAKigB,MAAQ+B,EAAO9hB,GAAKrE,EAAKI,QAAU,EAC1D,IAAIkmB,GAAO,CACX,OAAMjiB,KAAM,EAAG,CACd,GAAIE,GAAIvE,EAAKmmB,EACbG,IAASA,GAAQ,EAAK/hB,GAAK,KAE3B,IAAI0I,IAAS,EAAGsZ,EAAO,CAEvB,IAAItZ,EAAQoZ,EAAMC,GAAQ,CACzBrZ,GAASkZ,GAAQ,KACjB,IAAGlZ,EAAQkZ,EAAMlZ,GAAS,KAC1B,IAAGA,EAAQkZ,EAAM,MAAMnmB,EAAKiN,EAAQsZ,IAASvmB,EAAKmmB,EAAOI,IAASA,EAAO,MAAOA,EAGjF,GAAGA,EAAO,EAAG,CAEZhiB,EAAI0hB,EAAUM,EACd,IAAGhiB,GAAK,GAAI6f,EAAKS,GAAa1gB,EAAKigB,EAAIL,GAASxf,EAAE,IAAI,GAAK,MACtD,CACJsgB,GAAa1gB,EAAKigB,EAAI,EACtBA,IAAM,CACNS,IAAa1gB,EAAKigB,EAAIL,GAASxf,EAAE,KAAK,EACtC6f,IAAM,EAEP,GAAIoC,GAAUjiB,EAAI,EAAK,EAAMA,EAAI,GAAI,CACrC,IAAGiiB,EAAS,EAAG,CACd1B,GAAc3gB,EAAKigB,EAAImC,EAAO5C,EAAOpf,GACrC6f,IAAMoC,EAGPjiB,EAAIyhB,EAAUG,EAAOlZ,EACrBmX,GAAKS,GAAa1gB,EAAKigB,EAAIL,GAASxf,IAAI,EACxC6f,IAAM,CAEN,IAAIqC,GAASliB,EAAI,EAAI,EAAKA,EAAE,GAAI,CAChC,IAAGkiB,EAAS,EAAG,CACd3B,GAAc3gB,EAAKigB,EAAI+B,EAAOlZ,EAAQ2W,EAAOrf,GAC7C6f,IAAMqC,EAEP,IAAI,GAAIre,GAAI,EAAGA,EAAIme,IAAQne,EAAG,CAC7Bie,EAAMC,GAAQH,EAAO,KACrBG,IAASA,GAAQ,EAAKtmB,EAAKmmB,IAAS,QAClCA,EAEH9hB,GAAIkiB,EAAO,MACL,CAEN,GAAGhiB,GAAK,IAAKA,EAAIA,EAAI,OAChB6f,GAAKQ,GAAazgB,EAAKigB,EAAI,EAChCA,GAAKS,GAAa1gB,EAAKigB,EAAIL,GAASxf,GACpC8hB,GAAMC,GAAQH,EAAO,QACnBA,GAIJ/B,EAAKS,GAAa1gB,EAAKigB,EAAI,GAAK,EAEjCjgB,EAAImB,GAAM8e,EAAK,GAAG,EAAG,CACrB,OAAOjgB,GAAImB,EAEZ,MAAO,SAASwgB,GAAY9lB,EAAMmE,GACjC,GAAGnE,EAAKI,OAAS,EAAG,MAAO8lB,GAAalmB,EAAMmE,EAC9C,OAAOiiB,GAAiBpmB,EAAMmE,MAIhC,SAASsf,IAASzjB,GACjB,GAAI2C,GAAMgb,GAAQ,GAAG9X,KAAKsC,MAAMnI,EAAKI,OAAO,KAC5C,IAAIsmB,GAAMZ,GAAY9lB,EAAM2C,EAC5B,OAAOA,GAAI7B,MAAM,EAAG4lB,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,IAAIhnB,EAAMmmB,GAElB,GAAIc,GAAQzC,GAAYxkB,EAAMmmB,GAAQ,GAAKA,IAAQ,CACnD,IAAIe,GAAS1C,GAAYxkB,EAAMmmB,GAAQ,CAAGA,IAAQ,CAClD,IAAIgB,GAAS5C,GAAYvkB,EAAMmmB,GAAQ,CAAGA,IAAQ,CAClD,IAAIrb,GAAI,CAGR,IAAIqa,GAAQrB,GAAmB,GAAI5gB,YAAW,IAAM+hB,GAAgB,GACpE,IAAIQ,IAAU,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,EACpE,IAAI9gB,GAAS,CACb,IAAI4gB,GAAYzB,GAAmB,GAAI5gB,YAAW,GAAK+hB,GAAgB,EACvE,IAAImC,GAAYtD,GAAmB,GAAI5gB,YAAW,GAAK+hB,GAAgB,EACvE,IAAI5gB,GAAI8gB,EAAM/kB,MACd,KAAI,GAAIF,GAAI,EAAGA,EAAIinB,IAAUjnB,EAAG,CAC/BilB,EAAMzB,EAAWxjB,IAAM4K,EAAIwZ,GAAYtkB,EAAMmmB,EAC7C,IAAGxhB,EAASmG,EAAGnG,EAASmG,CACxBya,GAASza,IACTqb,IAAQ,EAIT,GAAIb,GAAQ,CACZC,GAAS,GAAK,CACd,KAAIrlB,EAAI,EAAGA,GAAKyE,IAAUzE,EAAGknB,EAAUlnB,GAAKolB,EAASA,EAAQC,EAASrlB,EAAE,IAAK,CAC7E,KAAIA,EAAI,EAAGA,EAAImE,IAAKnE,EAAG,IAAIolB,EAAQH,EAAMjlB,KAAO,EAAGulB,EAAMvlB,GAAKknB,EAAU9B,IAExE,IAAII,GAAQ,CACZ,KAAIxlB,EAAI,EAAGA,EAAImE,IAAKnE,EAAG,CACtBwlB,EAAQP,EAAMjlB,EACd,IAAGwlB,GAAS,EAAG,CACdJ,EAAQvB,GAAS0B,EAAMvlB,KAAM,EAAEwlB,CAC/B,KAAI,GAAInZ,IAAK,GAAI,EAAEmZ,GAAQ,EAAGnZ,GAAG,IAAKA,EAAGsa,GAASvB,EAAO/Y,GAAGmZ,GAAWA,EAAM,EAAMxlB,GAAG,GAKxF,GAAImnB,KACJ1iB,GAAS,CACT,MAAM0iB,EAAOjnB,OAAS6mB,EAAQC,GAAS,CACtC5B,EAAQuB,GAASpC,GAAYzkB,EAAMmmB,GACnCA,IAAQb,EAAQ,CAChB,QAAQA,KAAW,GAClB,IAAK,IACJxa,EAAI,EAAIqZ,GAAYnkB,EAAMmmB,EAAOA,IAAQ,CACzCb,GAAQ+B,EAAOA,EAAOjnB,OAAS,EAC/B,OAAM0K,KAAM,EAAGuc,EAAO7iB,KAAK8gB,EAC3B,OACD,IAAK,IACJxa,EAAI,EAAIwZ,GAAYtkB,EAAMmmB,EAAOA,IAAQ,CACzC,OAAMrb,KAAM,EAAGuc,EAAO7iB,KAAK,EAC3B,OACD,IAAK,IACJsG,EAAI,GAAK2Z,GAAYzkB,EAAMmmB,EAAOA,IAAQ,CAC1C,OAAMrb,KAAO,EAAGuc,EAAO7iB,KAAK,EAC5B,OACD,QACC6iB,EAAO7iB,KAAK8gB,EACZ,IAAG3gB,EAAS2gB,EAAO3gB,EAAS2gB,CAC5B,SAKH,GAAIgC,GAAKD,EAAOvmB,MAAM,EAAGmmB,GAAQM,EAAKF,EAAOvmB,MAAMmmB,EACnD,KAAI/mB,EAAI+mB,EAAO/mB,EAAI,MAAOA,EAAGonB,EAAGpnB,GAAK,CACrC,KAAIA,EAAIgnB,EAAQhnB,EAAI,KAAMA,EAAGqnB,EAAGrnB,GAAK,CACrC4mB,IAAY5B,GAAWoC,EAAIX,GAAU,IACrCI,IAAY7B,GAAWqC,EAAIX,GAAU,GACrC,OAAOT,GAIR,QAASqB,IAAQxnB,EAAMqjB,GAEtB,GAAGrjB,EAAK,IAAM,KAAOA,EAAK,GAAK,GAAM,CAAE,OAAQiD,EAAYogB,GAAM,GAGjE,GAAI8C,GAAO,CAGX,IAAI1K,GAAS,CAEb,IAAIgM,GAASrkB,EAAeigB,EAAMA,EAAO,GAAG,GAC5C,IAAIqE,GAAO,CACX,IAAIC,GAAKF,EAAOrnB,SAAS,CACzB,IAAIwnB,GAAY,EAAGC,EAAY,CAE/B,QAAOpM,EAAO,IAAM,EAAG,CACtBA,EAAS6I,GAAYtkB,EAAMmmB,EAAOA,IAAQ,CAC1C,IAAI1K,IAAW,GAAM,EAAG,CAEvB,GAAG0K,EAAO,EAAGA,GAAQ,GAAKA,EAAK,EAE/B,IAAIjM,GAAKla,EAAKmmB,IAAO,GAAKnmB,GAAMmmB,IAAO,GAAG,IAAI,CAC9CA,IAAQ,EAER,IAAGjM,EAAK,EAAG,CACV,IAAImJ,GAAOsE,EAAKD,EAAOxN,EAAI,CAAEuN,EAAS1C,GAAQ0C,EAAQC,EAAOxN,EAAKyN,GAAKF,EAAOrnB,OAC9E,MAAM8Z,KAAO,EAAG,CAAEuN,EAAOC,KAAU1nB,EAAKmmB,IAAO,EAAIA,IAAQ,GAE5D,aACM,IAAI1K,GAAU,GAAM,EAAG,CAE7BmM,EAAY,CAAGC,GAAY,MACrB,CAEN1B,EAAOa,GAAIhnB,EAAMmmB,EACjByB,GAAYd,EAAWe,GAAYd,GAEpC,OAAQ,CACP,IAAI1D,GAAQsE,EAAKD,EAAO,MAAQ,CAAED,EAAS1C,GAAQ0C,EAAQC,EAAO,MAAQC,GAAKF,EAAOrnB,OAEtF,GAAI0nB,GAAOpD,GAAY1kB,EAAMmmB,EAAMyB,EACnC,IAAIG,GAAQtM,IAAS,GAAM,EAAIkK,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,GAAY1kB,EAAMmmB,EAAMK,EAC/BL,IAAQK,EAITsB,EAAOpD,GAAY1kB,EAAMmmB,EAAM0B,EAC/BE,GAAQtM,IAAS,GAAM,EAAImK,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,GAAY1kB,EAAMmmB,EAAMM,EAC/BN,IAAQM,EAIT,IAAIpD,GAAOsE,EAAKxN,EAAK,CAAEsN,EAAS1C,GAAQ0C,EAAQtN,EAAM,IAAMwN,GAAKF,EAAOrnB,OACxE,MAAMsnB,EAAOvN,EAAK,CAAEsN,EAAOC,GAAQD,EAAOC,EAAOM,KAAQN,KAI5D,GAAGrE,EAAK,OAAQoE,EAAStB,EAAK,IAAK,EACnC,QAAQsB,EAAO3mB,MAAM,EAAG4mB,GAAQvB,EAAK,IAAK,GAG3C,QAAS7C,IAASjG,EAASgG,GAC1B,GAAIrjB,GAAOqd,EAAQvc,MAAMuc,EAAQ/X,GAAG,EACpC,IAAInB,GAAMqjB,GAAQxnB,EAAMqjB,EACxBhG,GAAQ/X,GAAKnB,EAAI,EACjB,OAAOA,GAAI,GAGZ,QAAS8jB,IAAcC,EAAKC,GAC3B,GAAGD,EAAK,CAAE,SAAUjF,WAAY,YAAaA,QAAQC,MAAMiF,OACtD,MAAM,IAAIpkB,OAAMokB,GAGtB,QAAStN,IAAUF,EAAMC,GACxB,GAAIb,GAAOY,CACXX,IAAUD,EAAM,EAEhB,IAAIuC,MAAgBC,IACpB,IAAItc,IACHqc,UAAWA,EACXC,UAAWA,EAEZgD,GAAStf,GAAKwf,KAAM7E,EAAQ6E,MAG5B,IAAIvf,GAAI6Z,EAAK3Z,OAAS,CACtB,QAAO2Z,EAAK7Z,IAAM,IAAQ6Z,EAAK7Z,EAAE,IAAM,IAAQ6Z,EAAK7Z,EAAE,IAAM,GAAQ6Z,EAAK7Z,EAAE,IAAM,IAASA,GAAK,IAAKA,CACpG6Z,GAAKzU,EAAIpF,EAAI,CAGb6Z,GAAKzU,GAAK,CACV,IAAI8iB,GAAOrO,EAAKR,WAAW,EAC3BQ,GAAKzU,GAAK,CACV,IAAI+iB,GAAWtO,EAAKR,WAAW,EAG/BQ,GAAKzU,EAAI+iB,CAET,KAAInoB,EAAI,EAAGA,EAAIkoB,IAAQloB,EAAG,CAEzB6Z,EAAKzU,GAAK,EACV,IAAIgjB,GAAMvO,EAAKR,WAAW,EAC1B,IAAI8J,GAAMtJ,EAAKR,WAAW,EAC1B,IAAIkF,GAAU1E,EAAKR,WAAW,EAC9B,IAAIgP,GAAOxO,EAAKR,WAAW,EAC3B,IAAIiP,GAAOzO,EAAKR,WAAW,EAC3BQ,GAAKzU,GAAK,CACV,IAAI2Z,GAASlF,EAAKR,WAAW,EAC7B,IAAIkP,GAAK3O,EAAkBC,EAAKjZ,MAAMiZ,EAAKzU,EAAEmZ,EAAS1E,EAAKzU,EAAEmZ,EAAQ8J,GACrExO,GAAKzU,GAAKmZ,EAAU8J,EAAOC,CAE3B,IAAInkB,GAAI0V,EAAKzU,CACbyU,GAAKzU,EAAI2Z,EAAS,CAClByJ,IAAiB3O,EAAMuO,EAAKjF,EAAKpjB,EAAGwoB,EACpC1O,GAAKzU,EAAIjB,EAEV,MAAOpE,GAKR,QAASyoB,IAAiB3O,EAAMuO,EAAKjF,EAAKpjB,EAAGwoB,GAE5C1O,EAAKzU,GAAK,CACV,IAAI2U,GAAQF,EAAKR,WAAW,EAC5B,IAAIoP,GAAO5O,EAAKR,WAAW,EAC3B,IAAI/Q,GAAO8Q,EAAeS,EAE1B,IAAGE,EAAQ,KAAQ,KAAM,IAAIlW,OAAM,6BACnC,IAAI6kB,GAAQ7O,EAAKR,WAAW,EAC5B,IAAIsP,GAAO9O,EAAKR,WAAW,EAC3B,IAAIuP,GAAO/O,EAAKR,WAAW,EAE3B,IAAIkF,GAAU1E,EAAKR,WAAW,EAC9B,IAAIgP,GAAOxO,EAAKR,WAAW,EAG3B,IAAI2C,GAAO,EAAI,KAAI,GAAIhc,GAAI,EAAGA,EAAIue,IAAWve,EAAGgc,GAAQ3b,OAAOC,aAAauZ,EAAKA,EAAKzU,KACtF,IAAGijB,EAAM,CACR,GAAIQ,GAAKjP,EAAkBC,EAAKjZ,MAAMiZ,EAAKzU,EAAGyU,EAAKzU,EAAIijB,GACvD,KAAIQ,EAAG,YAAaxO,GAAI/R,EAAOugB,EAAG,OAAQxO,EAC1C,MAAKkO,OAAQ,YAAalO,GAAI/R,EAAOigB,EAAG,OAAQlO,GAEjDR,EAAKzU,GAAKijB,CAKV,IAAIvoB,GAAO+Z,EAAKjZ,MAAMiZ,EAAKzU,EAAGyU,EAAKzU,EAAIujB,EACvC,QAAOF,GACN,IAAK,GAAG3oB,EAAOojB,EAAgBrJ,EAAM+O,EAAO,OAC5C,IAAK,GAAG,MACR,QAAS,KAAM,IAAI/kB,OAAM,sCAAwC4kB,IAIlE,GAAIT,GAAM,KACV,IAAGjO,EAAQ,EAAG,CACb2O,EAAQ7O,EAAKR,WAAW,EACxB,IAAGqP,GAAS,UAAY,CAAEA,EAAQ7O,EAAKR,WAAW,EAAI2O,GAAM,KAC5DW,EAAO9O,EAAKR,WAAW,EACvBuP,GAAO/O,EAAKR,WAAW,GAGxB,GAAGsP,GAAQP,EAAKL,GAAcC,EAAK,wBAA0BI,EAAM,OAASO,EAC5E,IAAGC,GAAQzF,EAAK4E,GAAcC,EAAK,0BAA4B7E,EAAM,OAASyF,EAG9EE,IAAQ/oB,EAAGic,EAAMlc,GAAOipB,OAAQ,KAAM1O,GAAI/R,IAE3C,QAASqY,IAAUrB,EAAK5E,GACvB,GAAI8F,GAAQ9F,KACZ,IAAIzW,MAAU+kB,IACd,IAAIjpB,GAAI0d,GAAQ,EAChB,IAAIwL,GAAUzI,EAAM0I,YAAc,EAAI,EAAInP,EAAQ,CAClD,IAAIoP,GAAO,KACX,IAAGA,EAAMpP,GAAS,CAClB,IAAI/Z,GAAI,EAAGqM,EAAI,CAEf,IAAI8b,GAAW,EAAGD,EAAO,CACzB,IAAI3I,GAAOD,EAAIjD,UAAU,GAAI+M,EAAK7J,EAAM8J,EAAK/J,EAAIlD,UAAU,EAC3D,IAAIkN,KACJ,IAAIC,GAAQ,CAEZ,KAAIvpB,EAAI,EAAGA,EAAIsf,EAAIjD,UAAUnc,SAAUF,EAAG,CACzCopB,EAAK9J,EAAIjD,UAAUrc,GAAGY,MAAM2e,EAAKrf,OAASmpB,GAAK/J,EAAIlD,UAAUpc,EAC7D,KAAIqpB,EAAG/L,OAAS+L,EAAGrlB,SAAWolB,GAAM,WAAiB,QACrD,IAAI/L,GAAQ8K,CAGZ,IAAIqB,GAAU/L,GAAQ2L,EAAGlpB,OACzB,KAAImM,EAAI,EAAGA,EAAI+c,EAAGlpB,SAAUmM,EAAGmd,EAAQtQ,YAAY,EAAGkQ,EAAGjpB,WAAWkM,GAAK,IACzEmd,GAAUA,EAAQ5oB,MAAM,EAAG4oB,EAAQpkB,EACnCkkB,GAAKpB,GAAQ1R,EAAM/T,IAAI4mB,EAAGrlB,QAAS,EAEnC,IAAIujB,GAAS8B,EAAGrlB,OAChB,IAAGilB,GAAU,EAAG1B,EAASlE,EAAgBkE,EAGzCxnB,GAAI0d,GAAQ,GACZ1d,GAAEmZ,YAAY,EAAG,SACjBnZ,GAAEmZ,YAAY,EAAG,GACjBnZ,GAAEmZ,YAAY,EAAGa,EACjBha,GAAEmZ,YAAY,EAAG+P,EAEjB,IAAGI,EAAGhP,GAAIxB,EAAe9Y,EAAGspB,EAAGhP,QAC1Bta,GAAEmZ,YAAY,EAAG,EACtBnZ,GAAEmZ,aAAa,EAAIa,EAAQ,EAAK,EAAIuP,EAAKpB,GACzCnoB,GAAEmZ,YAAY,EAAKa,EAAQ,EAAK,EAAIwN,EAAOrnB,OAC3CH,GAAEmZ,YAAY,EAAKa,EAAQ,EAAK,EAAIsP,EAAGrlB,QAAQ9D,OAC/CH,GAAEmZ,YAAY,EAAGsQ,EAAQtpB,OACzBH,GAAEmZ,YAAY,EAAG,EAEjBiP,IAAYpoB,EAAEG,MACd+D,GAAIK,KAAKvE,EACTooB,IAAYqB,EAAQtpB,MACpB+D,GAAIK,KAAKklB,EAMTrB,IAAYZ,EAAOrnB,MACnB+D,GAAIK,KAAKijB,EAGT,IAAGxN,EAAQ,EAAG,CACbha,EAAI0d,GAAQ,GACZ1d,GAAEmZ,aAAa,EAAGoQ,EAAKpB,GACvBnoB,GAAEmZ,YAAY,EAAGqO,EAAOrnB,OACxBH,GAAEmZ,YAAY,EAAGmQ,EAAGrlB,QAAQ9D,OAC5BioB,IAAYpoB,EAAEqF,CACdnB,GAAIK,KAAKvE,GAIVA,EAAI0d,GAAQ,GACZ1d,GAAEmZ,YAAY,EAAG,SACjBnZ,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAG,GACjBnZ,GAAEmZ,YAAY,EAAGa,EACjBha,GAAEmZ,YAAY,EAAG+P,EACjBlpB,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,aAAa,EAAGoQ,EAAKpB,GAEvBnoB,GAAEmZ,YAAY,EAAGqO,EAAOrnB,OACxBH,GAAEmZ,YAAY,EAAGmQ,EAAGrlB,QAAQ9D,OAC5BH,GAAEmZ,YAAY,EAAGsQ,EAAQtpB,OACzBH,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAGmE,EAEjBkM,IAASxpB,EAAEqF,CACX4jB,GAAM1kB,KAAKvE,EACXwpB,IAASC,EAAQtpB,MACjB8oB,GAAM1kB,KAAKklB,KACTtB,EAIHnoB,EAAI0d,GAAQ,GACZ1d,GAAEmZ,YAAY,EAAG,UACjBnZ,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAG,EACjBnZ,GAAEmZ,YAAY,EAAGgP,EACjBnoB,GAAEmZ,YAAY,EAAGgP,EACjBnoB,GAAEmZ,YAAY,EAAGqQ,EACjBxpB,GAAEmZ,YAAY,EAAGiP,EACjBpoB,GAAEmZ,YAAY,EAAG,EAEjB,OAAO3U,IAAUA,EAAQ,GAAQA,EAAQykB,GAAQjpB,IAElD,GAAI0pB,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,EAAGrN,MAAQ,GAAInT,EAAIuhB,EAAIrd,MAAM,cACvC,IAAGlE,GAAK4gB,GAAe5gB,EAAE,IAAK,MAAO4gB,IAAe5gB,EAAE,GAEtD,IAAGugB,EAAI,CACNvgB,GAAKuhB,EAAMhB,GAAIrc,MAAM,oBACrB,IAAGlE,GAAK4gB,GAAe5gB,EAAE,IAAK,MAAO4gB,IAAe5gB,EAAE,IAGvD,MAAO,2BAIR,QAASwhB,IAAgBtS,GACxB,GAAIjY,GAAOsB,EAAOE,OAAOyW,EACzB,IAAIhY,KACJ,KAAI,GAAIC,GAAI,EAAGA,EAAIF,EAAKI,OAAQF,GAAI,GAAID,EAAEuE,KAAKxE,EAAKc,MAAMZ,EAAGA,EAAE,IAC/D,OAAOD,GAAEQ,KAAK,QAAU,OAiBzB,QAAS+pB,IAAuBC,GAC/B,GAAIC,GAAUD,EAAKvoB,QAAQ,0CAA2C,SAAS2B,GAC9E,GAAIiH,GAAIjH,EAAExD,WAAW,GAAG+J,SAAS,IAAIoB,aACrC,OAAO,KAAOV,EAAE1K,QAAU,EAAI,IAAM0K,EAAIA,IAGzC4f,GAAUA,EAAQxoB,QAAQ,OAAQ,OAAOA,QAAQ,QAAS,MAE1D,IAAGwoB,EAAQ1oB,OAAO,IAAM,KAAM0oB,EAAU,MAAQA,EAAQ5pB,MAAM,EAC9D4pB,GAAUA,EAAQxoB,QAAQ,aAAc,OAAOA,QAAQ,SAAU,SAASA,QAAQ,gBAAiB,QAEnG,IAAIjC,MAAQsD,EAAQmnB,EAAQnnB,MAAM,OAClC,KAAI,GAAIonB,GAAK,EAAGA,EAAKpnB,EAAMnD,SAAUuqB,EAAI,CACxC,GAAIlc,GAAMlL,EAAMonB,EAChB,IAAGlc,EAAIrO,QAAU,EAAG,CAAEH,EAAEuE,KAAK,GAAK,UAClC,IAAI,GAAItE,GAAI,EAAGA,EAAIuO,EAAIrO,QAAS,CAC/B,GAAIwqB,GAAM,EACV,IAAIC,GAAMpc,EAAI3N,MAAMZ,EAAGA,EAAI0qB,EAC3B,IAAGC,EAAI7oB,OAAO4oB,EAAM,IAAM,IAAKA,QAC1B,IAAGC,EAAI7oB,OAAO4oB,EAAM,IAAM,IAAKA,GAAO,MACtC,IAAGC,EAAI7oB,OAAO4oB,EAAM,IAAM,IAAKA,GAAO,CAC3CC,GAAMpc,EAAI3N,MAAMZ,EAAGA,EAAI0qB,EACvB1qB,IAAK0qB,CACL,IAAG1qB,EAAIuO,EAAIrO,OAAQyqB,GAAO,GAC1B5qB,GAAEuE,KAAKqmB,IAIT,MAAO5qB,GAAEQ,KAAK,QAEf,QAASqqB,IAAuB9qB,GAC/B,GAAIC,KAGJ,KAAI,GAAI8qB,GAAK,EAAGA,EAAK/qB,EAAKI,SAAU2qB,EAAI,CACvC,GAAIC,GAAOhrB,EAAK+qB,EAChB,OAAMA,GAAM/qB,EAAKI,QAAU4qB,EAAKhpB,OAAOgpB,EAAK5qB,OAAS,IAAM,IAAK4qB,EAAOA,EAAKlqB,MAAM,EAAGkqB,EAAK5qB,OAAS,GAAKJ,IAAO+qB,EAC/G9qB,GAAEuE,KAAKwmB,GAIR,IAAI,GAAIC,GAAK,EAAGA,EAAKhrB,EAAEG,SAAU6qB,EAAIhrB,EAAEgrB,GAAMhrB,EAAEgrB,GAAI/oB,QAAQ,qBAAsB,SAASmL,GAAM,MAAO9M,QAAOC,aAAauN,SAASV,EAAGvM,MAAM,GAAI,MACjJ,OAAOuC,GAAIpD,EAAEQ,KAAK,SAInB,QAASyqB,IAAW1L,EAAKxf,EAAMyf,GAC9B,GAAI0L,GAAQ,GAAIC,EAAM,GAAIf,EAAQ,GAAIgB,CACtC,IAAIN,GAAK,CACT,MAAKA,EAAK,KAAMA,EAAI,CACnB,GAAIC,GAAOhrB,EAAK+qB,EAChB,KAAIC,GAAQA,EAAK/d,MAAM,SAAU,KACjC,IAAIlE,GAAIiiB,EAAK/d,MAAM,uBACnB,IAAGlE,EAAG,OAAOA,EAAE,GAAG2H,eACjB,IAAK,mBAAoBya,EAAQpiB,EAAE,GAAGuiB,MAAQ,OAC9C,IAAK,eAAgBjB,EAAQthB,EAAE,GAAGuiB,MAAQ,OAC1C,IAAK,4BAA6BF,EAAMriB,EAAE,GAAGuiB,MAAQ,WAGrDP,CACF,QAAOK,EAAI1a,eACV,IAAK,SAAU2a,EAAQhoB,EAAI/B,EAAOW,OAAOjC,EAAKc,MAAMiqB,GAAItqB,KAAK,KAAO,OACpE,IAAK,mBAAoB4qB,EAAQP,GAAuB9qB,EAAKc,MAAMiqB,GAAM,OACzE,QAAS,KAAM,IAAIhnB,OAAM,yCAA2CqnB,IAErE,GAAIzQ,GAAOqO,GAAQxJ,EAAK2L,EAAMrqB,MAAM2e,EAAKrf,QAASirB,GAAQpC,OAAQ,MAClE,IAAGoB,EAAO1P,EAAK0P,MAAQA,EAGxB,QAASvP,IAAUH,EAAMC,GACxB,GAAGjX,EAAIgX,EAAK7Z,MAAM,EAAE,KAAK4P,eAAiB,gBAAiB,KAAM,IAAI3M,OAAM,yBAC3E,IAAI0b,GAAQ7E,GAAWA,EAAQ6E,MAAQ,EAEvC,IAAIzf,IAAQmC,GAAWC,OAAOkd,SAAS3E,GAAQA,EAAKvQ,SAAS,UAAYzG,EAAIgX,IAAOpX,MAAM,OAC1F,IAAIwnB,GAAK,EAAGQ,EAAM,EAGlB,KAAIR,EAAK,EAAGA,EAAK/qB,EAAKI,SAAU2qB,EAAI,CACnCQ,EAAMvrB,EAAK+qB,EACX,KAAI,sBAAsBS,KAAKD,GAAM,QACrCA,GAAMA,EAAIzqB,MAAMyqB,EAAI5rB,QAAQ,QAC5B,KAAI8f,EAAMA,EAAO8L,EAAIzqB,MAAM,EAAGyqB,EAAIzb,YAAY,KAAO,EACrD,IAAGyb,EAAIzqB,MAAM,EAAG2e,EAAKrf,SAAWqf,EAAM,QACtC,OAAMA,EAAKrf,OAAS,EAAG,CACtBqf,EAAOA,EAAK3e,MAAM,EAAG2e,EAAKrf,OAAS,EACnCqf,GAAOA,EAAK3e,MAAM,EAAG2e,EAAK3P,YAAY,KAAO,EAC7C,IAAGyb,EAAIzqB,MAAM,EAAE2e,EAAKrf,SAAWqf,EAAM,OAIvC,GAAIgM,IAAazrB,EAAK,IAAM,IAAIiN,MAAM,mBACtC,KAAIwe,EAAW,KAAM,IAAI1nB,OAAM,2BAC/B,IAAI2nB,GAAW,MAAQD,EAAU,IAAM,GAEvC,IAAInP,MAAgBC,IACpB,IAAItc,IACHqc,UAAWA,EACXC,UAAWA,EAEZgD,GAAStf,EACT,IAAI0rB,GAAUvD,EAAO,CACrB,KAAI2C,EAAK,EAAGA,EAAK/qB,EAAKI,SAAU2qB,EAAI,CACnC,GAAIC,GAAOhrB,EAAK+qB,EAChB,IAAGC,IAASU,GAAYV,IAASU,EAAW,KAAM,QAClD,IAAGtD,IAAQ8C,GAAWjrB,EAAGD,EAAKc,MAAM6qB,EAAUZ,GAAKtL,EACnDkM,GAAWZ,EAEZ,MAAO9qB,GAGR,QAAS2gB,IAAUpB,EAAK5E,GACvB,GAAItS,GAAOsS,KACX,IAAI8Q,GAAWpjB,EAAKojB,UAAY,SAChCA,GAAW,UAAYA,CAEvB,IAAIvnB,IACH,oBACA,8CAAgDunB,EAAS5qB,MAAM,GAAK,IACpE,GACA,GACA,GAGD,IAAI2e,GAAOD,EAAIjD,UAAU,GAAI+M,EAAK7J,EAAM8J,EAAK/J,EAAIlD,UAAU,EAC3D,KAAI,GAAIpc,GAAI,EAAGA,EAAIsf,EAAIjD,UAAUnc,SAAUF,EAAG,CAC7CopB,EAAK9J,EAAIjD,UAAUrc,GAAGY,MAAM2e,EAAKrf,OACjCmpB,GAAK/J,EAAIlD,UAAUpc,EACnB,KAAIqpB,EAAG/L,OAAS+L,EAAGrlB,SAAWolB,GAAM,WAAiB,QAGrDA,GAAKA,EAAGpnB,QAAQ,yCAA0C,SAAS2B,GAClE,MAAO,KAAOA,EAAExD,WAAW,GAAG+J,SAAS,IAAM,MAC3ClI,QAAQ,mBAAoB,SAAS2G,GACvC,MAAO,KAAOA,EAAExI,WAAW,GAAG+J,SAAS,IAAM,KAI9C,IAAIwhB,GAAKrC,EAAGrlB,OAEZ,IAAI2nB,GAAO1pB,GAAWC,OAAOkd,SAASsM,GAAMA,EAAGxhB,SAAS,UAAYzG,EAAIioB,EAGxE,IAAIE,GAAU,EAAGznB,EAAIwB,KAAKyJ,IAAI,KAAMuc,EAAKzrB,QAASsO,EAAK,CACvD,KAAI,GAAIqd,GAAM,EAAGA,GAAO1nB,IAAK0nB,EAAK,IAAIrd,EAAGmd,EAAKxrB,WAAW0rB,KAAS,IAAQrd,EAAK,MAAQod,CACvF,IAAIE,GAAKF,GAAWznB,EAAI,EAAI,CAE5BF,GAAIK,KAAKknB,EACTvnB,GAAIK,KAAK,sBAAwB8D,EAAKmX,MAAQ,uBAAyB6J,EACvEnlB,GAAIK,KAAK,+BAAiCwnB,EAAK,mBAAqB,UACpE7nB,GAAIK,KAAK,iBAAmB4lB,GAAiBb,EAAID,GACjDnlB,GAAIK,KAAK,GAETL,GAAIK,KAAKwnB,EAAKxB,GAAuBqB,GAAQtB,GAAgBsB,IAE9D1nB,EAAIK,KAAKknB,EAAW,SACpB,OAAOvnB,GAAI1D,KAAK,QAEjB,QAASwrB,IAAQ3jB,GAChB,GAAIrI,KACJsf,GAAStf,EAAGqI,EACZ,OAAOrI,GAGR,QAAS+oB,IAAQxJ,EAAKtD,EAAMhY,EAASoE,GACpC,GAAI2gB,GAAS3gB,GAAQA,EAAK2gB,MAC1B,KAAIA,EAAQ1J,EAASC,EACrB,IAAI7E,IAAQsO,GAAU3Q,EAAIuH,KAAKL,EAAKtD,EACpC,KAAIvB,EAAM,CACT,GAAIuR,GAAQ1M,EAAIjD,UAAU,EAC1B,IAAGL,EAAKpb,MAAM,EAAGorB,EAAM9rB,SAAW8rB,EAAOA,EAAQhQ,MAC5C,CACJ,GAAGgQ,EAAMprB,OAAO,IAAM,IAAKorB,GAAS,GACpCA,IAASA,EAAQhQ,GAAMha,QAAQ,KAAK,KAErCyY,GAASuB,KAAMpD,EAASoD,GAAOpQ,KAAM,EACrC0T,GAAIlD,UAAU9X,KAAKmW,EACnB6E,GAAIjD,UAAU/X,KAAK0nB,EACnB,KAAIjD,EAAQ3Q,EAAI6T,MAAMC,OAAO5M,GAE/B7E,EAAKzW,QAAU,CACdyW,GAAK6C,KAAOtZ,EAAUA,EAAQ9D,OAAS,CACvC,IAAGkI,EAAM,CACR,GAAGA,EAAKoX,MAAO/E,EAAKiE,MAAQtW,EAAKoX,KACjC,IAAGpX,EAAKiS,GAAII,EAAKJ,GAAKjS,EAAKiS,EAC3B,IAAGjS,EAAKwW,GAAInE,EAAKmE,GAAKxW,EAAKwW,GAE5B,MAAOnE,GAGR,QAAS0R,IAAQ7M,EAAKtD,GACrBqD,EAASC,EACT,IAAI7E,GAAOrC,EAAIuH,KAAKL,EAAKtD,EACzB,IAAGvB,EAAM,IAAI,GAAIpO,GAAI,EAAGA,EAAIiT,EAAIlD,UAAUlc,SAAUmM,EAAG,GAAGiT,EAAIlD,UAAU/P,IAAMoO,EAAM,CACnF6E,EAAIlD,UAAUgQ,OAAO/f,EAAG,EACxBiT,GAAIjD,UAAU+P,OAAO/f,EAAG,EACxB,OAAO,MAER,MAAO,OAGR,QAASggB,IAAQ/M,EAAKgN,EAAUC,GAC/BlN,EAASC,EACT,IAAI7E,GAAOrC,EAAIuH,KAAKL,EAAKgN,EACzB,IAAG7R,EAAM,IAAI,GAAIpO,GAAI,EAAGA,EAAIiT,EAAIlD,UAAUlc,SAAUmM,EAAG,GAAGiT,EAAIlD,UAAU/P,IAAMoO,EAAM,CACnF6E,EAAIlD,UAAU/P,GAAG2P,KAAOpD,EAAS2T,EACjCjN,GAAIjD,UAAUhQ,GAAKkgB,CACnB,OAAO,MAER,MAAO,OAGR,QAASL,IAAO5M,GAAOM,EAAYN,EAAK,MAExChH,EAAQqH,KAAOA,CACfrH,GAAQ6G,KAAOA,CACf7G,GAAQkC,MAAQA,CAChBlC,GAAQgK,MAAQA,CAChBhK,GAAQkU,UAAYpK,CACpB9J,GAAQ2T,OACPF,QAASA,GACTjD,QAASA,GACTqD,QAASA,GACTE,QAASA,GACTH,OAAQA,GACRO,UAAWA,GACXC,WAAYA,GACZ5S,UAAWA,GACXvV,QAASA,EACTie,SAAUA,EACVoD,YAAarC,GACboJ,YAAavJ,GACb/B,OAAQA,EAGT,OAAO/I,KAGP,IAAIsU,EACJ,UAAUC,WAAY,YAAa,IAAMD,EAAMzqB,UAAa,MAAMK,IAGlE,QAASsqB,GAAQhtB,GAChB,SAAUA,KAAS,SAAU,MAAOwD,GAAKxD,EACzC,IAAGmD,MAAMS,QAAQ5D,GAAO,MAAO8D,GAAI9D,EACnC,OAAOA,GAGR,QAASitB,GAAS9B,EAAO9N,EAASza,GAEjC,SAAUkqB,KAAQ,aAAeA,EAAIvK,cAAe,MAAO3f,GAAMkqB,EAAIvK,cAAc4I,EAAO9N,EAASza,GAAOkqB,EAAIvK,cAAc4I,EAAO9N,EACnI,UAAU6P,QAAS,YAAa,CAE/B,GAAGtqB,SAAcya,IAAW,SAAU,OAAOza,GAC5C,IAAK,OAAQya,EAAU,GAAI8P,aAAYvqB,GAAKpB,OAAO6b,EAAU,OAC7D,IAAK,SAAUA,EAAU7Z,EAAK6Z,EAAU,OAExC,QAAS,KAAM,IAAItZ,OAAM,wBAA0BnB,IAEpD,MAAOsqB,MAAK3K,cAAc4I,EAAO9N,GAElC,GAAIrd,GAAQ4C,GAAO,OAAUwqB,GAAU/P,GAAWA,CACnD,UAAUgQ,eAAgB,YAAa,MAAOA,aAAYrtB,EAAMmrB,EAC/D,UAAUmC,QAAS,YAAa,CAC/B,GAAIvT,GAAO,GAAIuT,OAAMN,EAAQhtB,KAAS8L,KAAK,4BAC7C,UAAUyhB,aAAc,aAAeA,UAAUC,WAAY,MAAOD,WAAUC,WAAWzT,EAAMoR,EAC/F,UAAUsC,UAAW,YAAa,MAAOA,QAAO1T,EAAMoR,EACpD,UAAUuC,OAAQ,mBAAsBC,YAAa,aAAeA,SAASC,eAAiBF,IAAIG,gBAAiB,CAClH,GAAIC,GAAMJ,IAAIG,gBAAgB9T,EACjC,UAAUgU,UAAW,iBAAoBA,OAAOC,eAAeC,UAAY,WAAY,CACnF,GAAGP,IAAIQ,uBAA0BC,cAAe,YAAaA,WAAW,WAAaT,IAAIQ,gBAAgBJ,IAAS,IAClH,OAAOC,QAAOC,UAAUC,UAAWH,IAAKA,EAAKhV,SAAUqS,EAAOsC,OAAQ,OAEvE,GAAIzI,GAAI2I,SAASC,cAAc,IAC/B,IAAG5I,EAAEiJ,UAAY,KAAM,CAC1BjJ,EAAEiJ,SAAW9C,CAAOnG,GAAEoJ,KAAON,CAAKH,UAASU,KAAKC,YAAYtJ,EAAIA,GAAEuJ,OAClEZ,UAASU,KAAKG,YAAYxJ,EACtB,IAAG0I,IAAIQ,uBAA0BC,cAAe,YAAaA,WAAW,WAAaT,IAAIQ,gBAAgBJ,IAAS,IAClH,OAAOA,KAKV,SAAUW,KAAM,mBAAsBC,QAAS,mBAAsBC,UAAW,YAAa,IAE5F,GAAIxqB,GAAMuqB,KAAKvD,EAAQhnB,GAAIyqB,KAAK,IAAMzqB,GAAI0qB,SAAW,QACrD,IAAG1rB,MAAMS,QAAQyZ,GAAUA,EAAU1Z,EAAI0Z,EACzClZ,GAAIqe,MAAMnF,EAAUlZ,GAAI2qB,OAAS,OAAOzR,GACvC,MAAM3a,GAAK,IAAIA,EAAEygB,UAAYzgB,EAAEygB,QAAQlW,MAAM,YAAa,KAAMvK,GAClE,KAAM,IAAIqB,OAAM,oBAAsBonB,GAIvC,QAAS4D,GAAYnN,GACpB,SAAUkL,KAAQ,YAAa,MAAOA,GAAI1N,aAAawC,EACvD,UAAUsL,QAAS,YAAa,MAAOA,MAAK9N,aAAawC,EAEzD,UAAU6M,KAAM,mBAAsBC,QAAS,mBAAsBC,UAAW,YAAa,IAE5F,GAAIK,GAASN,KAAK9M,EAAOoN,GAAOJ,KAAK,IAAMI,GAAOH,SAAW,QAC7D,IAAI7uB,GAAOgvB,EAAO3P,MAAQ2P,GAAOF,OACjC,OAAO9uB,GACN,MAAM0C,GAAK,IAAIA,EAAEygB,UAAYzgB,EAAEygB,QAAQlW,MAAM,YAAa,KAAMvK,GAClE,KAAM,IAAIqB,OAAM,sBAAwB6d,GAEzC,QAASqN,GAAKhvB,GACb,GAAIivB,GAAK9O,OAAO6O,KAAKhvB,GAAIkvB,IACzB,KAAI,GAAIjvB,GAAI,EAAGA,EAAIgvB,EAAG9uB,SAAUF,EAAG,GAAGkgB,OAAOgP,UAAUC,eAAetqB,KAAK9E,EAAGivB,EAAGhvB,IAAKivB,EAAG3qB,KAAK0qB,EAAGhvB,GACjG,OAAOivB,GAGR,QAASG,GAAUC,EAAKC,GACvB,GAAIvvB,MAAUwvB,EAAIR,EAAKM,EACvB,KAAI,GAAIrvB,GAAI,EAAGA,IAAMuvB,EAAErvB,SAAUF,EAAG,GAAGD,EAAEsvB,EAAIE,EAAEvvB,IAAIsvB,KAAS,KAAMvvB,EAAEsvB,EAAIE,EAAEvvB,IAAIsvB,IAAQC,EAAEvvB,EACxF,OAAOD,GAGR,QAASyvB,GAAMH,GACd,GAAItvB,MAAUwvB,EAAIR,EAAKM,EACvB,KAAI,GAAIrvB,GAAI,EAAGA,IAAMuvB,EAAErvB,SAAUF,EAAGD,EAAEsvB,EAAIE,EAAEvvB,KAAOuvB,EAAEvvB,EACrD,OAAOD,GAGR,QAAS0vB,GAAUJ,GAClB,GAAItvB,MAAUwvB,EAAIR,EAAKM,EACvB,KAAI,GAAIrvB,GAAI,EAAGA,IAAMuvB,EAAErvB,SAAUF,EAAGD,EAAEsvB,EAAIE,EAAEvvB,KAAO6N,SAAS0hB,EAAEvvB,GAAG,GACjE,OAAOD,GAGR,QAAS2vB,GAAUL,GAClB,GAAItvB,MAAUwvB,EAAIR,EAAKM,EACvB,KAAI,GAAIrvB,GAAI,EAAGA,IAAMuvB,EAAErvB,SAAUF,EAAG,CACnC,GAAGD,EAAEsvB,EAAIE,EAAEvvB,MAAQ,KAAMD,EAAEsvB,EAAIE,EAAEvvB,OACjCD,GAAEsvB,EAAIE,EAAEvvB,KAAKsE,KAAKirB,EAAEvvB,IAErB,MAAOD,GAGR,GAAI2J,GAAW,GAAIP,MAAK,KAAM,GAAI,GAAI,EAAG,EAAG,EAC5C,SAASwmB,GAAQrqB,EAAG4D,GACnB,GAAIa,GAAQzE,EAAEsE,SACd,IAAGV,EAAUa,GAAS,KAAK,GAAG,GAAG,GAAG,GACpC,IAAIJ,GAAWD,EAASE,WAAatE,EAAE0E,oBAAsBN,EAASM,qBAAuB,GAC7F,QAAQD,EAAQJ,IAAa,GAAK,GAAK,GAAK,KAE7C,GAAIimB,IAAU,GAAIzmB,KAClB,IAAIQ,IAAWD,EAASE,WAAagmB,GAAQ5lB,oBAAsBN,EAASM,qBAAuB,GACnG,IAAI6lB,IAAYD,GAAQ5lB,mBACxB,SAAS8lB,IAAQxqB,GAChB,GAAIrB,GAAM,GAAIkF,KACdlF,GAAI8rB,QAAQzqB,EAAI,GAAK,GAAK,GAAK,IAAOqE,GACtC,IAAI1F,EAAI+F,sBAAwB6lB,GAAW,CAC1C5rB,EAAI8rB,QAAQ9rB,EAAI2F,WAAa3F,EAAI+F,oBAAsB6lB,IAAa,KAErE,MAAO5rB,GAIR,QAAS+rB,IAAa5sB,GACrB,GAAI6sB,GAAM,EAAG5V,EAAK,EAAG9R,EAAO,KAC5B,IAAIM,GAAIzF,EAAE2J,MAAM,6EAChB,KAAIlE,EAAG,KAAM,IAAIhF,OAAM,IAAMT,EAAI,+BACjC,KAAI,GAAIpD,GAAI,EAAGA,GAAK6I,EAAE3I,SAAUF,EAAG,CAClC,IAAI6I,EAAE7I,GAAI,QACVqa,GAAK,CACL,IAAGra,EAAI,EAAGuI,EAAO,IACjB,QAAOM,EAAE7I,GAAGY,MAAMiI,EAAE7I,GAAGE,OAAO,IAC7B,IAAK,IACJ,KAAM,IAAI2D,OAAM,mCAAqCgF,EAAE7I,GAAGY,MAAMiI,EAAE7I,GAAGE,OAAO,IAC7E,IAAK,IAAKma,GAAM,GAEhB,IAAK,IAAKA,GAAM,GAEhB,IAAK,IACJ,IAAI9R,EAAM,KAAM,IAAI1E,OAAM,yCACrBwW,IAAM,GAEZ,IAAK,IAAK,OAEX4V,GAAO5V,EAAKxM,SAAShF,EAAE7I,GAAI,IAE5B,MAAOiwB,GAGR,GAAIC,IAAe,GAAI/mB,MAAK,2BAC5B,IAAGtH,MAAMquB,GAAa5mB,eAAgB4mB,GAAe,GAAI/mB,MAAK,UAC9D,IAAIgnB,IAAUD,GAAa5mB,eAAiB,IAE5C,SAAS8mB,IAAU7hB,EAAK8hB,GACvB,GAAIhsB,GAAI,GAAI8E,MAAKoF,EACjB,IAAG4hB,GAAS,CACb,GAAGE,EAAU,EAAGhsB,EAAE0rB,QAAQ1rB,EAAEuF,UAAYvF,EAAE2F,oBAAsB,GAAK,SAC9D,IAAGqmB,EAAU,EAAGhsB,EAAE0rB,QAAQ1rB,EAAEuF,UAAYvF,EAAE2F,oBAAsB,GAAK,IAC1E,OAAO3F,GAER,GAAGkK,YAAepF,MAAM,MAAOoF,EAC/B,IAAG2hB,GAAa5mB,eAAiB,OAASzH,MAAMwC,EAAEiF,eAAgB,CACjE,GAAIlG,GAAIiB,EAAEiF,aACV,IAAGiF,EAAI9O,QAAQ,GAAK2D,IAAM,EAAG,MAAOiB,EACpCA,GAAEkV,YAAYlV,EAAEiF,cAAgB,IAAM,OAAOjF,GAE9C,GAAIxB,GAAI0L,EAAIxB,MAAM,UAAU,OAAO,IAAI,KAAK,IAAI,IAAI,IACpD,IAAI9I,GAAM,GAAIkF,OAAMtG,EAAE,IAAKA,EAAE,GAAK,GAAIA,EAAE,IAAMA,EAAE,IAAI,GAAMA,EAAE,IAAI,GAAMA,EAAE,IAAI,EAC5E,IAAG0L,EAAI9O,QAAQ,MAAQ,EAAGwE,EAAM,GAAIkF,MAAKlF,EAAI2F,UAAY3F,EAAI+F,oBAAsB,GAAK,IACxF,OAAO/F,GAGR,QAASqsB,IAAOC,EAAKC,GACpB,GAAGvuB,GAAWC,OAAOkd,SAASmR,GAAM;AACnC,GAAGC,EAAS,CACX,GAAGD,EAAI,IAAM,KAAQA,EAAI,IAAM,IAAM,MAAOA,GAAI3vB,MAAM,GAAGsJ,SAAS,UAClE,IAAGqmB,EAAI,IAAM,KAAQA,EAAI,IAAM,IAAM,MAAO/vB,GAAY+vB,EAAI3vB,MAAM,GAAGsJ,SAAS,WAE/E,MAAOqmB,GAAIrmB,SAAS,UAGrB,GAAInK,KACJ,KAAI,GAAIC,GAAI,EAAGA,GAAKuwB,EAAIrwB,SAAUF,EAAGD,EAAEuE,KAAKjE,OAAOC,aAAaiwB,EAAIvwB,IACpE,OAAOD,GAAEQ,KAAK,IAGf,QAASkwB,IAAI1wB,GACZ,SAAU2wB,OAAQ,cAAgBztB,MAAMS,QAAQ3D,GAAI,MAAO2wB,MAAKlW,MAAMkW,KAAKC,UAAU5wB,GACrF,UAAUA,IAAK,UAAYA,GAAK,KAAM,MAAOA,EAC7C,IAAGA,YAAaoJ,MAAM,MAAO,IAAIA,MAAKpJ,EAAE6J,UACxC,IAAI3F,KACJ,KAAI,GAAIma,KAAKre,GAAG,GAAGmgB,OAAOgP,UAAUC,eAAetqB,KAAK9E,EAAGqe,GAAIna,EAAIma,GAAKqS,GAAI1wB,EAAEqe,GAC9E,OAAOna,GAGR,QAASkB,IAAKxB,EAAEyB,GAAK,GAAIrF,GAAI,EAAI,OAAMA,EAAEG,OAASkF,EAAGrF,GAAG4D,CAAG,OAAO5D,GAGlE,QAAS6wB,IAASxtB,GACjB,GAAIkC,GAAIurB,OAAOztB,EACf,KAAIvB,MAAMyD,GAAI,MAAOwrB,UAASxrB,GAAKA,EAAIyrB,GACvC,KAAI,KAAKzF,KAAKloB,GAAI,MAAOkC,EACzB,IAAI0rB,GAAK,CACT,IAAIhlB,GAAK5I,EAAEpB,QAAQ,iBAAiB,QAAQA,QAAQ,OAAO,IAAIA,QAAQ,OAAQ,WAAagvB,GAAM,GAAK,OAAO,IAC9G,KAAInvB,MAAMyD,EAAIurB,OAAO7kB,IAAM,MAAO1G,GAAI0rB,CACtChlB,GAAKA,EAAGhK,QAAQ,aAAa,SAASmL,EAAIC,GAAM4jB,GAAMA,CAAI,OAAO5jB,IACjE,KAAIvL,MAAMyD,EAAIurB,OAAO7kB,IAAM,MAAO1G,GAAI0rB,CACtC,OAAO1rB,GAER,GAAI2rB,KAAgB,UAAW,WAAY,QAAS,QAAS,MAAO,OAAQ,OAAQ,SAAU,YAAa,UAAW,WAAY,WAClI,SAASC,IAAU9tB,GAClB,GAAIrD,GAAI,GAAIoJ,MAAK/F,GAAIP,EAAI,GAAIsG,MAAK4nB,IAClC,IAAInoB,GAAI7I,EAAEoxB,UAAWtoB,EAAI9I,EAAEwJ,WAAYlF,EAAItE,EAAEsJ,SAC7C,IAAGxH,MAAMwC,GAAI,MAAOxB,EACpB,IAAIuuB,GAAQhuB,EAAEoN,aACd,IAAG4gB,EAAMrkB,MAAM,mDAAoD,CAClEqkB,EAAQA,EAAMpvB,QAAQ,UAAU,IAAIA,QAAQ,6BAA6B,GACzE,IAAGovB,EAAMlxB,OAAS,GAAK+wB,GAAaxxB,QAAQ2xB,KAAW,EAAG,MAAOvuB,OAC3D,IAAGuuB,EAAMrkB,MAAM,SAAU,MAAOlK,EACvC,IAAG+F,EAAI,GAAKA,EAAI,KAAM,MAAO/F,EAC7B,KAAIgG,EAAI,GAAKxE,EAAI,IAAMuE,GAAK,IAAK,MAAO7I,EACxC,IAAGqD,EAAE2J,MAAM,iBAAkB,MAAOlK,EACpC,OAAO9C,GAGR,GAAIsxB,IAAmB,UAAUhuB,MAAM,UAAUnD,QAAU,CAC3D,SAASoxB,IAAY/iB,EAAKgjB,EAAIC,GAC7B,GAAGH,UAA2BE,IAAM,SAAU,MAAOhjB,GAAIlL,MAAMkuB,EAC/D,IAAI5Y,GAAIpK,EAAIlL,MAAMkuB,GAAKxxB,GAAK4Y,EAAE,GAC9B,KAAI,GAAI3Y,GAAI,EAAGA,EAAI2Y,EAAEzY,SAAUF,EAAG,CAAED,EAAEuE,KAAKktB,EAAMzxB,GAAEuE,KAAKqU,EAAE3Y,IAC1D,MAAOD,GAER,QAAS0xB,IAAW3xB,GACnB,IAAIA,EAAM,MAAO,KACjB,IAAGA,EAAKkE,SAAWlE,EAAK8L,KAAM,MAAO0kB,IAAOxwB,EAAKkE,QAAS,KAC1D,IAAGlE,EAAKA,KAAM,MAAOW,GAAMX,EAAKA,KAChC,IAAGA,EAAK4xB,cAAgBzvB,EAAS,MAAOxB,GAAMX,EAAK4xB,eAAexnB,SAAS,UAC3E,IAAGpK,EAAK6xB,SAAU,MAAOlxB,GAAMX,EAAK6xB,WACpC,IAAG7xB,EAAK8xB,OAAS9xB,EAAK8xB,MAAMC,WAAY,MAAOpxB,GAAM6vB,GAAOrtB,MAAMisB,UAAUtuB,MAAMiE,KAAK/E,EAAK8xB,MAAMC,aAAa,IAC/G,OAAO,MAGR,QAASC,IAAWhyB,GACnB,IAAIA,EAAM,MAAO,KACjB,IAAGA,EAAKA,KAAM,MAAOD,GAAWC,EAAKA,KACrC,IAAGA,EAAK4xB,cAAgBzvB,EAAS,MAAOnC,GAAK4xB,cAC7C,IAAG5xB,EAAK8xB,OAAS9xB,EAAK8xB,MAAMC,WAAY,CACvC,GAAI9xB,GAAID,EAAK8xB,MAAMC,YACnB,UAAU9xB,IAAK,SAAU,MAAOF,GAAWE,EAC3C,OAAOkD,OAAMisB,UAAUtuB,MAAMiE,KAAK9E,GAEnC,GAAGD,EAAKkE,SAAWlE,EAAK8L,KAAM,MAAO9L,GAAKkE,OAC1C,OAAO,MAGR,QAAS+tB,IAAQjyB,GAAQ,MAAQA,IAAQA,EAAKkc,KAAKpb,OAAO,KAAO,OAAUkxB,GAAWhyB,GAAQ2xB,GAAW3xB,GAIzG,QAASkyB,IAAeC,EAAKxX,GAC5B,GAAI2D,GAAI6T,EAAI5V,WAAa0S,EAAKkD,EAAI/V,MAClC,IAAIxK,GAAI+I,EAAKjK,cAAcxO,QAAQ,QAAS,MAAOkwB,EAAIxgB,EAAE1P,QAAQ,MAAM,IACvE,KAAI,GAAIhC,GAAE,EAAGA,EAAEoe,EAAEle,SAAUF,EAAG,CAC7B,GAAI6C,GAAIub,EAAEpe,GAAGgC,QAAQ,kBAAkB,IAAIwO,aAC3C,IAAGkB,GAAK7O,GAAKqvB,GAAKrvB,EAAG,MAAOovB,GAAI/V,MAAQ+V,EAAI/V,MAAMkC,EAAEpe,IAAMiyB,EAAI7V,UAAUpc,GAEzE,MAAO,MAGR,QAASmyB,IAAWF,EAAKxX,GACxB,GAAI1a,GAAIiyB,GAAeC,EAAKxX,EAC5B,IAAG1a,GAAK,KAAM,KAAM,IAAI8D,OAAM,oBAAsB4W,EAAO,UAC3D,OAAO1a,GAGR,QAASqyB,IAAWH,EAAKxX,EAAM4X,GAC9B,IAAIA,EAAM,MAAON,IAAQI,GAAWF,EAAKxX,GACzC,KAAIA,EAAM,MAAO,KACjB,KAAM,MAAO2X,IAAWH,EAAKxX,GAAS,MAAMjY,GAAK,MAAO,OAGzD,QAAS8vB,IAAUL,EAAKxX,EAAM4X,GAC7B,IAAIA,EAAM,MAAOZ,IAAWU,GAAWF,EAAKxX,GAC5C,KAAIA,EAAM,MAAO,KACjB,KAAM,MAAO6X,IAAUL,EAAKxX,GAAS,MAAMjY,GAAK,MAAO,OAGxD,QAAS+vB,IAAUN,EAAKxX,EAAM4X,GAC7B,IAAIA,EAAM,MAAOP,IAAWK,GAAWF,EAAKxX,GAC5C,KAAIA,EAAM,MAAO,KACjB,KAAM,MAAO8X,IAAUN,EAAKxX,GAAS,MAAMjY,GAAK,MAAO,OAGxD,QAASgwB,IAAWP,GACnB,GAAI7T,GAAI6T,EAAI5V,WAAa0S,EAAKkD,EAAI/V,OAAQnc,IAC1C,KAAI,GAAIC,GAAI,EAAGA,EAAIoe,EAAEle,SAAUF,EAAG,GAAGoe,EAAEpe,GAAGY,OAAO,IAAM,IAAKb,EAAEuE,KAAK8Z,EAAEpe,GAAGgC,QAAQ,kBAAmB,IACnG,OAAOjC,GAAEsgB,OAGV,QAASoS,IAAaR,EAAKvQ,EAAM1d,GAChC,GAAGiuB,EAAI5V,UAAW,CACjB,SAAUrY,IAAW,SAAU,CAC9B,GAAI0uB,EACJ,IAAGzwB,EAASywB,EAAMrwB,EAAY2B,OAGzB0uB,GAAM3uB,EAAWC,EACtB,OAAOoU,GAAI6T,MAAMnD,QAAQmJ,EAAKvQ,EAAMgR,GAErCta,EAAI6T,MAAMnD,QAAQmJ,EAAKvQ,EAAM1d,OAEzBiuB,GAAIxX,KAAKiH,EAAM1d,GAGrB,QAAS2uB,MAAY,MAAOva,GAAI6T,MAAMF,UAEtC,QAAS6G,IAASvuB,EAAGtE,GACpB,OAAOA,EAAE6L,MACR,IAAK,SAAU,MAAOwM,GAAI+G,KAAK9a,GAAKuH,KAAM,WAC1C,IAAK,SAAU,MAAOwM,GAAI+G,KAAK9a,GAAKuH,KAAM,WAC1C,IAAK,UAAU,IAAK,QAAS,MAAOwM,GAAI+G,KAAK9a,GAAKuH,KAAM,YAEzD,KAAM,IAAI/H,OAAM,qBAAuB9D,EAAE6L,MAG1C,QAASinB,IAAanR,EAAM3T,GAC3B,GAAG2T,EAAK5f,OAAO,IAAM,IAAK,MAAO4f,GAAK9gB,MAAM,EAC5C,IAAIkyB,GAAS/kB,EAAK1K,MAAM,IACxB,IAAG0K,EAAKnN,OAAO,IAAM,IAAKkyB,EAAO/S,KACjC,IAAIgT,GAASrR,EAAKre,MAAM,IACxB,OAAO0vB,EAAO7yB,SAAW,EAAG,CAC3B,GAAI8yB,GAAOD,EAAOvW,OAClB,IAAIwW,IAAS,KAAMF,EAAO/S,UACrB,IAAIiT,IAAS,IAAKF,EAAOxuB,KAAK0uB,GAEpC,MAAOF,GAAOvyB,KAAK,KAEpB,GAAI0yB,IAAa,6DACjB,IAAIC,IAAU,wEACd,IAAIC,IAAS,8FAEb,KAAKF,GAAWlmB,MAAMomB,IAAYA,GAAW,UAC7C,IAAIC,IAAQ,QAASC,GAAW,YAChC,SAASC,IAAYC,EAAKC,EAAWC,GACpC,GAAIC,KACJ,IAAIC,GAAK,EAAGhwB,EAAI,CAChB,MAAMgwB,IAAOJ,EAAIrzB,SAAUyzB,EAAI,IAAIhwB,EAAI4vB,EAAIpzB,WAAWwzB,MAAS,IAAMhwB,IAAM,IAAMA,IAAM,GAAI,KAC3F,KAAI6vB,EAAWE,EAAE,GAAKH,EAAI3yB,MAAM,EAAG+yB,EACnC,IAAGA,IAAOJ,EAAIrzB,OAAQ,MAAOwzB,EAC7B,IAAI7qB,GAAI0qB,EAAIxmB,MAAMmmB,IAAY7mB,EAAE,EAAG/G,EAAE,GAAItF,EAAE,EAAGkI,EAAE,GAAIsG,EAAG,GAAIolB,EAAO,CAClE,IAAG/qB,EAAG,IAAI7I,EAAI,EAAGA,GAAK6I,EAAE3I,SAAUF,EAAG,CACpCwO,EAAK3F,EAAE7I,EACP,KAAI2D,EAAE,EAAGA,GAAK6K,EAAGtO,SAAUyD,EAAG,GAAG6K,EAAGrO,WAAWwD,KAAO,GAAI,KAC1DuE,GAAIsG,EAAG5N,MAAM,EAAE+C,GAAGynB,MAClB,OAAM5c,EAAGrO,WAAWwD,EAAE,IAAM,KAAMA,CAClCiwB,IAASD,EAAGnlB,EAAGrO,WAAWwD,EAAE,KAAO,IAAMgwB,GAAM,GAAM,EAAI,CACzDruB,GAAIkJ,EAAG5N,MAAM+C,EAAE,EAAEiwB,EAAMplB,EAAGtO,OAAO0zB,EACjC,KAAIvnB,EAAE,EAAEA,GAAGnE,EAAEhI,SAASmM,EAAG,GAAGnE,EAAE/H,WAAWkM,KAAO,GAAI,KACpD,IAAGA,IAAInE,EAAEhI,OAAQ,CAChB,GAAGgI,EAAEzI,QAAQ,KAAO,EAAGyI,EAAIA,EAAEtH,MAAM,EAAGsH,EAAEzI,QAAQ,KAChDi0B,GAAExrB,GAAK5C,CACP,KAAImuB,EAASC,EAAExrB,EAAEsI,eAAiBlL,MAE9B,CACJ,GAAI8Y,IAAK/R,IAAI,GAAKnE,EAAEtH,MAAM,EAAE,KAAK,QAAQ,QAAQ,IAAIsH,EAAEtH,MAAMyL,EAAE,EAC/D,IAAGqnB,EAAEtV,IAAMlW,EAAEtH,MAAMyL,EAAE,EAAEA,IAAM,MAAO,QACpCqnB,GAAEtV,GAAK9Y,CACP,KAAImuB,EAASC,EAAEtV,EAAE5N,eAAiBlL,GAGpC,MAAOouB,GAER,QAASG,IAAS9yB,GAAK,MAAOA,GAAEiB,QAAQqxB,GAAU,OAElD,GAAIS,KACHC,SAAU,IACVC,SAAU,IACVC,OAAQ,IACRC,OAAQ,IACRC,QAAS,IAEV,IAAIC,IAAY5E,EAAMsE,GAItB,IAAIO,IAAc,WAEjB,GAAIC,GAAW,+CAAgDC,EAAY,sBAC3E,OAAO,SAASF,GAAY9J,GAC3B,GAAInnB,GAAImnB,EAAO,GAAIvqB,EAAIoD,EAAE3D,QAAQ,YACjC,IAAGO,IAAM,EAAG,MAAOoD,GAAEpB,QAAQsyB,EAAU,SAASnnB,EAAIC,GAAM,MAAO0mB,IAAU3mB,IAAK9M,OAAOC,aAAauN,SAAST,EAAGD,EAAG1N,QAAQ,MAAM,EAAE,GAAG,MAAM0N,IAAOnL,QAAQuyB,EAAU,SAAS1rB,EAAElF,GAAI,MAAOtD,QAAOC,aAAauN,SAASlK,EAAE,MAC1N,IAAI0I,GAAIjJ,EAAE3D,QAAQ,MAClB,OAAO40B,GAAYjxB,EAAExC,MAAM,EAAGZ,IAAMoD,EAAExC,MAAMZ,EAAE,EAAEqM,GAAKgoB,EAAYjxB,EAAExC,MAAMyL,EAAE,OAI7E,IAAImoB,IAAS,WAAYC,GAAW,+BACpC,SAASC,IAAUnK,GAClB,GAAInnB,GAAImnB,EAAO,EACf,OAAOnnB,GAAEpB,QAAQwyB,GAAU,SAAS5rB,GAAK,MAAOwrB,IAAUxrB,KAAO5G,QAAQyyB,GAAS,SAASrxB,GAAK,MAAO,MAAQ,MAAMA,EAAEjD,WAAW,GAAG+J,SAAS,KAAKtJ,OAAO,GAAK,MAEhK,QAAS+zB,IAAapK,GAAO,MAAOmK,IAAUnK,GAAMvoB,QAAQ,KAAK,WAEjE,GAAI4yB,IAAe,kBACnB,SAASC,IAAWtK,GACnB,GAAInnB,GAAImnB,EAAO,EACf,OAAOnnB,GAAEpB,QAAQwyB,GAAU,SAAS5rB,GAAK,MAAOwrB,IAAUxrB,KAAO5G,QAAQ,MAAO,SAASA,QAAQ4yB,GAAa,SAASxxB,GAAK,MAAO,OAAS,MAAMA,EAAEjD,WAAW,GAAG+J,SAAS,KAAKtJ,OAAO,GAAK,MAG7L,QAASk0B,IAAWvK,GACnB,GAAInnB,GAAImnB,EAAO,EACf,OAAOnnB,GAAEpB,QAAQwyB,GAAU,SAAS5rB,GAAK,MAAOwrB,IAAUxrB,KAAO5G,QAAQ4yB,GAAa,SAASxxB,GAAK,MAAO,MAASA,EAAEjD,WAAW,GAAG+J,SAAS,IAAKoB,cAAgB,MAInK,GAAIypB,IAAc,WACjB,GAAIC,GAAW,WACf,SAASC,GAAQ9nB,EAAGC,GAAM,MAAO/M,QAAOC,aAAauN,SAAST,EAAG,KACjE,MAAO,SAAS2nB,GAAYxmB,GAAO,MAAOA,GAAIvM,QAAQgzB,EAASC,MAEhE,SAASC,IAAc3mB,GAAO,MAAOA,GAAIvM,QAAQ,iBAAiB,SAElE,QAASmzB,IAAaC,GACrB,OAAOA,GACN,IAAK,IAAG,IAAK,OAAM,IAAK,KAAK,IAAK,QAAQ,IAAK,OAAQ,MAAO,MAE9D,QAAS,MAAO,SAIlB,GAAIC,IAAW,QAASC,IAAUC,GACjC,GAAItxB,GAAM,GAAIjE,EAAI,EAAG2D,EAAI,EAAGU,EAAI,EAAG7B,EAAI,EAAGkP,EAAI,EAAG9G,EAAI,CACrD,OAAO5K,EAAIu1B,EAAKr1B,OAAQ,CACvByD,EAAI4xB,EAAKp1B,WAAWH,IACpB,IAAI2D,EAAI,IAAK,CAAEM,GAAO5D,OAAOC,aAAaqD,EAAI,UAC9CU,EAAIkxB,EAAKp1B,WAAWH,IACpB,IAAI2D,EAAE,KAAOA,EAAE,IAAK,CAAE+N,GAAM/N,EAAI,KAAO,CAAI+N,IAAMrN,EAAI,EAAKJ,IAAO5D,OAAOC,aAAaoR,EAAI,UACzFlP,EAAI+yB,EAAKp1B,WAAWH,IACpB,IAAI2D,EAAI,IAAK,CAAEM,GAAO5D,OAAOC,cAAeqD,EAAI,KAAO,IAAQU,EAAI,KAAO,EAAM7B,EAAI,GAAM,UAC1FkP,EAAI6jB,EAAKp1B,WAAWH,IACpB4K,KAAOjH,EAAI,IAAM,IAAQU,EAAI,KAAO,IAAQ7B,EAAI,KAAO,EAAMkP,EAAI,IAAK,KACtEzN,IAAO5D,OAAOC,aAAa,OAAWsK,IAAI,GAAI,MAC9C3G,IAAO5D,OAAOC,aAAa,OAAUsK,EAAE,OAExC,MAAO3G,GAGR,IAAIipB,IAAY,SAASqI,GACxB,GAAItxB,MAAUjE,EAAI,EAAG2D,EAAI,EAAGU,EAAI,CAChC,OAAMrE,EAAIu1B,EAAKr1B,OAAQ,CACtByD,EAAI4xB,EAAKp1B,WAAWH,IACpB,QAAO,MACN,IAAK2D,GAAI,IAAKM,EAAIK,KAAKjE,OAAOC,aAAaqD,GAAK,OAChD,IAAKA,GAAI,KACRM,EAAIK,KAAKjE,OAAOC,aAAa,KAAOqD,GAAK,IACzCM,GAAIK,KAAKjE,OAAOC,aAAa,KAAOqD,EAAI,KACxC,OACD,IAAKA,IAAK,OAASA,EAAI,MACtBA,GAAK,KAAOU,GAAIkxB,EAAKp1B,WAAWH,KAAO,OAAS2D,GAAG,GACnDM,GAAIK,KAAKjE,OAAOC,aAAa,KAAQ+D,GAAI,GAAM,IAC/CJ,GAAIK,KAAKjE,OAAOC,aAAa,KAAQ+D,GAAI,GAAM,KAC/CJ,GAAIK,KAAKjE,OAAOC,aAAa,KAAQ+D,GAAK,EAAK,KAC/CJ,GAAIK,KAAKjE,OAAOC,aAAa,KAAO+D,EAAI,KACxC,OACD,QACCJ,EAAIK,KAAKjE,OAAOC,aAAa,KAAOqD,GAAK,KACzCM,GAAIK,KAAKjE,OAAOC,aAAa,KAAQqD,GAAK,EAAK,KAC/CM,GAAIK,KAAKjE,OAAOC,aAAa,KAAOqD,EAAI,QAG3C,MAAOM,GAAI1D,KAAK,IAGjB,IAAG0B,EAAS,CACX,GAAIuzB,IAAY,QAASA,IAAU11B,GAClC,GAAImE,GAAM/B,OAAOU,MAAM,EAAE9C,EAAKI,QAAS0K,EAAG5K,EAAGqM,EAAI,EAAG+R,EAAI,EAAGqX,EAAG,EAAG9xB,CACjE,KAAI3D,EAAI,EAAGA,EAAIF,EAAKI,OAAQF,GAAGqM,EAAG,CACjCA,EAAI,CACJ,KAAI1I,EAAE7D,EAAKK,WAAWH,IAAM,IAAK4K,EAAIjH,MAChC,IAAGA,EAAI,IAAK,CAAEiH,GAAKjH,EAAE,IAAI,IAAI7D,EAAKK,WAAWH,EAAE,GAAG,GAAKqM,GAAE,MACzD,IAAG1I,EAAI,IAAK,CAAEiH,GAAGjH,EAAE,IAAI,MAAM7D,EAAKK,WAAWH,EAAE,GAAG,IAAI,IAAIF,EAAKK,WAAWH,EAAE,GAAG,GAAKqM,GAAE,MACtF,CAAEA,EAAI,CACVzB,IAAKjH,EAAI,GAAG,QAAQ7D,EAAKK,WAAWH,EAAE,GAAG,IAAI,MAAMF,EAAKK,WAAWH,EAAE,GAAG,IAAI,IAAIF,EAAKK,WAAWH,EAAE,GAAG,GACrG4K,IAAK,KAAO6qB,GAAK,OAAW7qB,IAAI,GAAI,KAAOA,GAAI,OAAUA,EAAE,MAE5D,GAAG6qB,IAAO,EAAG,CAAExxB,EAAIma,KAAOqX,EAAG,GAAKxxB,GAAIma,KAAOqX,IAAK,CAAGA,GAAK,EAC1DxxB,EAAIma,KAAOxT,EAAE,GAAK3G,GAAIma,KAAOxT,IAAI,EAElC,MAAO3G,GAAIrD,MAAM,EAAEwd,GAAGlU,SAAS,QAEhC,IAAIwrB,IAAS,oBACb,IAAGL,GAASK,KAAWF,GAAUE,IAASL,GAAWG,EACrD,IAAIG,IAAY,QAASA,IAAU71B,GAAQ,MAAOuC,GAAYvC,EAAM,UAAUoK,SAAS,QACvF,IAAGmrB,GAASK,KAAWC,GAAUD,IAASL,GAAWM,EAErDzI,IAAY,SAASptB,GAAQ,MAAOuC,GAAYvC,EAAM,QAAQoK,SAAS,WAIxE,GAAI0rB,IAAW,WACd,GAAIC,KACJ,OAAO,SAASD,GAASlkB,EAAEwgB,GAC1B,GAAI3sB,GAAImM,EAAE,KAAKwgB,GAAG,GAClB,IAAG2D,EAAQtwB,GAAI,MAAOswB,GAAQtwB,EAC9B,OAAQswB,GAAQtwB,GAAK,GAAI2Q,QAAO,cAAcxE,EAAE,+DAA+DA,EAAE,IAAMwgB,GAAG,OAI5H,IAAI4D,IAAa,WAChB,GAAIC,KACF,OAAQ,MAAO,SAAU,MACzB,OAAQ,MAAO,OAAQ,MAAO,KAAQ,MAAO,KAAQ,MAAO,MAAQ,MACpE10B,IAAI,SAASN,GAAK,OAAQ,GAAImV,QAAO,IAAMnV,EAAE,GAAK,IAAK,MAAOA,EAAE,KAClE,OAAO,SAAS+0B,GAAWvnB,GAC1B,GAAIxO,GAAIwO,EAELvM,QAAQ,cAAe,IAEvBA,QAAQ,cAAc,IAEtBA,QAAQ,QAAQ,KAAKA,QAAQ,QAAQ,KAErCA,QAAQ,cAAe,KAEvBA,QAAQ,uBAAuB,MAE/BA,QAAQ,WAAW,GACtB,KAAI,GAAIhC,GAAI,EAAGA,EAAI+1B,EAAS71B,SAAUF,EAAGD,EAAIA,EAAEiC,QAAQ+zB,EAAS/1B,GAAG,GAAI+1B,EAAS/1B,GAAG,GACnF,OAAOD,MAIT,IAAIi2B,IAAU,WAAa,GAAIC,KAC9B,OAAO,SAASC,GAASzlB,GACxB,GAAGwlB,EAASxlB,KAAQtO,UAAW,MAAO8zB,GAASxlB,EAC/C,OAAQwlB,GAASxlB,GAAM,GAAIyF,QAAO,YAAczF,EAAK,0BAA4BA,EAAK,IAAK,QAE7F,IAAI0lB,IAAW,wBAAyBC,GAAW,4BACnD,SAASC,IAAYv2B,EAAMsI,GAC1B,GAAI+b,GAAImP,GAAYxzB,EAEpB,IAAIw2B,GAAUx2B,EAAKiN,MAAMipB,GAAQ7R,EAAEoS,cACnC,IAAI7D,KACJ,IAAG4D,EAAQp2B,QAAUikB,EAAE7G,KAAM,CAC5B,GAAGlV,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,4BAA8ByyB,EAAQp2B,OAAS,OAASikB,EAAE7G,KACvF,OAAOoV,GAER4D,EAAQjgB,QAAQ,SAAStV,GACxB,GAAIuE,GAAIvE,EAAEiB,QAAQm0B,GAAS,IAAIppB,MAAMqpB,GACrC,IAAG9wB,EAAGotB,EAAIpuB,MAAMgB,EAAE+vB,GAAS/vB,EAAE,IAAKC,EAAED,EAAE,MAEvC,OAAOotB,GAGR,GAAI+D,IAAU,cACd,SAASC,IAAShlB,EAAEwgB,GAAK,MAAO,IAAMxgB,GAAKwgB,EAAEnlB,MAAM0pB,IAAS,wBAA0B,IAAM,IAAMvE,EAAI,KAAOxgB,EAAI,IAEjH,QAASilB,IAAWxS,GAAK,MAAO4K,GAAK5K,GAAG9iB,IAAI,SAAS+c,GAAK,MAAO,IAAMA,EAAI,KAAO+F,EAAE/F,GAAK,MAAO7d,KAAK,IACrG,QAASq2B,IAAUllB,EAAEwgB,EAAE/N,GAAK,MAAO,IAAMzS,GAAMyS,GAAK,KAAQwS,GAAWxS,GAAK,KAAQ+N,GAAK,MAASA,EAAEnlB,MAAM0pB,IAAS,wBAA0B,IAAM,IAAMvE,EAAI,KAAOxgB,EAAI,KAAO,IAE/K,QAASmlB,IAAaxyB,EAAGkB,GAAK,IAAM,MAAOlB,GAAEyyB,cAAc90B,QAAQ,QAAQ,IAAO,MAAMQ,GAAK,GAAG+C,EAAG,KAAM/C,GAAK,MAAO,GAErH,QAASu0B,IAAS3zB,EAAG4zB,GACpB,aAAc5zB,IACb,IAAK,SACJ,GAAIrD,GAAI62B,GAAU,YAAalC,GAAUtxB,GACzC,IAAG4zB,EAAMj3B,EAAIA,EAAEiC,QAAQ,UAAW,UAClC,OAAOjC,GACR,IAAK,SAAU,MAAO62B,KAAWxzB,EAAE,IAAIA,EAAE,QAAQ,QAASsxB,GAAUr0B,OAAO+C,KAC3E,IAAK,UAAW,MAAOwzB,IAAU,UAAUxzB,EAAE,OAAO,UAErD,GAAGA,YAAa+F,MAAM,MAAOytB,IAAU,cAAeC,GAAazzB,GACnE,MAAM,IAAIS,OAAM,uBAAyBT,GAG1C,QAAS6zB,IAAe5yB,GACvB,GAAGpC,GAAWC,OAAOkd,SAAS/a,GAAI,MAAOA,GAAE6F,SAAS,OACpD,UAAU7F,KAAM,SAAU,MAAOA,EAEjC,UAAUrB,cAAe,aAAeqB,YAAarB,YAAY,MAAOqyB,IAAS5xB,EAAIK,EAAKO,IAC1F,MAAM,IAAIR,OAAM,+CAGjB,GAAIqzB,IAAY,4DAGhB,IAAIC,KACHC,WAAY,0EACZC,WAAY,0EACZC,UAAW,4EACXC,GAAI,+DACJC,KAAM,+DACNC,MAAO,0EACPC,GAAM,mCACNC,QAAW,4BACXC,SAAY,+BACZC,GAAM,0DACNpqB,EAAK,sEACLqqB,IAAO,yEACPC,GAAM,uEACNC,IAAO,4CACPC,IAAO,mCAGR,IAAIC,KACH,4DACA,gDACA,sDACA,mDAGD,IAAIC,KACHp4B,EAAQ,0CACRgB,EAAQ,yCACRiL,GAAQ,+CACRsE,GAAQ,4CACR+K,GAAQ,yBACR/V,EAAQ,gCACR8yB,KAAQ,kCAET,SAASC,IAAetU,EAAGlX,GAC1B,GAAIzJ,GAAI,EAAI,GAAK2gB,EAAElX,EAAM,KAAO,EAChC,IAAIrK,KAAMuhB,EAAElX,EAAM,GAAK,MAAS,IAAOkX,EAAElX,EAAM,KAAO,EAAK,GAC3D,IAAIhE,GAAKkb,EAAElX,EAAI,GAAG,EAClB,KAAI,GAAI7M,GAAI,EAAGA,GAAK,IAAKA,EAAG6I,EAAIA,EAAI,IAAMkb,EAAElX,EAAM7M,EAClD,IAAGwC,GAAK,KAAO,MAAOqG,IAAK,EAAKzF,EAAIk1B,SAAYvH,GAChD,IAAGvuB,GAAK,EAAGA,GAAK,SACX,CAAEA,GAAK,IAAMqG,IAAKlD,KAAKI,IAAI,EAAE,IAClC,MAAO3C,GAAIuC,KAAKI,IAAI,EAAGvD,EAAI,IAAMqG,EAGlC,QAAS0vB,IAAgBxU,EAAGze,EAAGuH,GAC9B,GAAI2rB,IAASlzB,EAAI,GAAO,EAAEA,IAAMgzB,SAAa,EAAI,IAAM,EAAI91B,EAAI,EAAGqG,EAAI,CACtE,IAAI4vB,GAAKD,GAAOlzB,EAAKA,CACrB,KAAIwrB,SAAS2H,GAAK,CAAEj2B,EAAI,IAAOqG,GAAIhH,MAAMyD,GAAK,MAAS,MAClD,IAAGmzB,GAAM,EAAGj2B,EAAIqG,EAAI,MACpB,CACJrG,EAAImD,KAAKsC,MAAMtC,KAAKwF,IAAIstB,GAAM9yB,KAAK+yB,IACnC7vB,GAAI4vB,EAAK9yB,KAAKI,IAAI,EAAG,GAAKvD,EAC1B,IAAIA,IAAM,QAAWsuB,SAASjoB,IAAOA,EAAIlD,KAAKI,IAAI,EAAE,KAAO,CAAEvD,GAAK,SAC7D,CAAEqG,GAAKlD,KAAKI,IAAI,EAAE,GAAKvD,IAAG,MAEhC,IAAI,GAAIxC,GAAI,EAAGA,GAAK,IAAKA,EAAG6I,GAAG,IAAKkb,EAAElX,EAAM7M,GAAK6I,EAAI,GACrDkb,GAAElX,EAAM,IAAOrK,EAAI,KAAS,EAAMqG,EAAI,EACtCkb,GAAElX,EAAM,GAAMrK,GAAK,EAAKg2B,EAGzB,GAAIta,IAAa,SAAS1Z,GAAQ,GAAIzD,MAAK6J,EAAE,KAAO,KAAI,GAAI5K,GAAE,EAAEA,EAAEwE,EAAK,GAAGtE,SAASF,EAAG,GAAGwE,EAAK,GAAGxE,GAAI,IAAI,GAAIqM,GAAE,EAAElI,EAAEK,EAAK,GAAGxE,GAAGE,OAAOmM,EAAElI,EAAEkI,GAAGzB,EAAG7J,EAAEuD,KAAKM,MAAM7D,EAAGyD,EAAK,GAAGxE,GAAGY,MAAMyL,EAAEA,EAAEzB,GAAK,OAAO7J,GAChM,IAAI43B,IAAcza,EAClB,IAAIM,IAAY,SAASuF,EAAE3gB,EAAEZ,GAAK,GAAIwJ,KAAO,KAAI,GAAIhM,GAAEoD,EAAGpD,EAAEwC,EAAGxC,GAAG,EAAGgM,EAAG1H,KAAKjE,OAAOC,aAAas4B,GAAe7U,EAAE/jB,IAAM,OAAOgM,GAAGzL,KAAK,IAAIyB,QAAQ8C,EAAK,IACxJ,IAAI+zB,IAAara,EACjB,IAAIsa,IAAY,SAAS/U,EAAE3gB,EAAEgC,GAAK,GAAI4G,KAAO,KAAI,GAAIhM,GAAEoD,EAAGpD,EAAEoD,EAAEgC,IAAKpF,EAAGgM,EAAG1H,MAAM,IAAMyf,EAAE/jB,GAAGkK,SAAS,KAAKtJ,OAAO,GAAK,OAAOoL,GAAGzL,KAAK,IACnI,IAAIw4B,IAAaD,EACjB,IAAIE,IAAS,SAASjV,EAAE3gB,EAAEZ,GAAK,GAAIwJ,KAAO,KAAI,GAAIhM,GAAEoD,EAAGpD,EAAEwC,EAAGxC,IAAKgM,EAAG1H,KAAKjE,OAAOC,aAAa24B,GAAYlV,EAAE/jB,IAAM,OAAOgM,GAAGzL,KAAK,IAChI,IAAI24B,IAAUF,EACd,IAAIG,IAAU,SAASpV,EAAE/jB,GAAK,GAAIC,GAAM+e,GAAe+E,EAAE/jB,EAAI,OAAOC,GAAM,EAAI+4B,GAAOjV,EAAG/jB,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAAK,GACzG,IAAIm5B,IAAWD,EACf,IAAIE,IAAU,SAAStV,EAAE/jB,GAAK,GAAIC,GAAM+e,GAAe+E,EAAE/jB,EAAI,OAAOC,GAAM,EAAI+4B,GAAOjV,EAAG/jB,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAAK,GACzG,IAAIq5B,IAAWD,EACf,IAAIE,IAAW,SAASxV,EAAE/jB,GAAK,GAAIC,GAAM,EAAE+e,GAAe+E,EAAE/jB,EAAI,OAAOC,GAAM,EAAI+4B,GAAOjV,EAAG/jB,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAAK,GAC5G,IAAIu5B,IAAYD,EAChB,IAAIE,IAAQC,EACZD,IAASC,GAAU,QAASC,IAAM5V,EAAE/jB,GAAK,GAAIC,GAAM+e,GAAe+E,EAAE/jB,EAAI,OAAOC,GAAM,EAAIue,GAAUuF,EAAG/jB,EAAE,EAAEA,EAAE,EAAEC,GAAO,GACrH,IAAI25B,IAAU,SAAS7V,EAAE/jB,GAAK,GAAIC,GAAM+e,GAAe+E,EAAE/jB,EAAI,OAAOC,GAAM,EAAI+4B,GAAOjV,EAAG/jB,EAAE,EAAEA,EAAE,EAAEC,GAAO,GACvG,IAAI45B,IAAWD,EACf,IAAIE,IAAUC,EACdD,IAAWC,GAAY,SAAShW,EAAGlX,GAAO,MAAOwrB,IAAetU,EAAGlX,GACnE,IAAImtB,IAAS,QAASC,IAASnV,GAAK,MAAO7hB,OAAMS,QAAQohB,UAAc9hB,cAAe,aAAe8hB,YAAa9hB,YAElH,IAAGf,EAAS,CACXuc,GAAY,SAASuF,EAAE3gB,EAAEZ,GAAK,IAAIN,OAAOkd,SAAS2E,GAAI,MAAO8U,IAAW9U,EAAE3gB,EAAEZ,EAAI,OAAOuhB,GAAE7Z,SAAS,UAAU9G,EAAEZ,GAAGR,QAAQ8C,EAAK,IAC9Hg0B,IAAY,SAAS/U,EAAE3gB,EAAEgC,GAAK,MAAOlD,QAAOkd,SAAS2E,GAAKA,EAAE7Z,SAAS,MAAM9G,EAAEA,EAAEgC,GAAK2zB,GAAWhV,EAAE3gB,EAAEgC,GACnG+zB,IAAU,QAASe,IAAQnW,EAAG/jB,GAAK,IAAIkC,OAAOkd,SAAS2E,GAAI,MAAOqV,IAASrV,EAAG/jB,EAAI,IAAIC,GAAM8jB,EAAEoW,aAAan6B,EAAI,OAAOC,GAAM,EAAI8jB,EAAE7Z,SAAS,OAAOlK,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAAK,GACnKo5B,IAAU,QAASe,IAAQrW,EAAG/jB,GAAK,IAAIkC,OAAOkd,SAAS2E,GAAI,MAAOuV,IAASvV,EAAG/jB,EAAI,IAAIC,GAAM8jB,EAAEoW,aAAan6B,EAAI,OAAOC,GAAM,EAAI8jB,EAAE7Z,SAAS,OAAOlK,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAAK,GACnKs5B,IAAW,QAASc,IAAStW,EAAG/jB,GAAK,IAAIkC,OAAOkd,SAAS2E,GAAI,MAAOyV,IAAUzV,EAAG/jB,EAAI,IAAIC,GAAM,EAAE8jB,EAAEoW,aAAan6B,EAAI,OAAO+jB,GAAE7Z,SAAS,UAAUlK,EAAE,EAAEA,EAAE,EAAEC,EAAI,GAC5Jw5B,IAAS,QAASa,IAAOvW,EAAG/jB,GAAK,IAAIkC,OAAOkd,SAAS2E,GAAI,MAAO2V,IAAQ3V,EAAG/jB,EAAI,IAAIC,GAAM8jB,EAAEoW,aAAan6B,EAAI,OAAO+jB,GAAE7Z,SAAS,UAAUlK,EAAE,EAAEA,EAAE,EAAEC,GAChJ25B,IAAU,QAASW,IAAQxW,EAAG/jB,GAAK,IAAIkC,OAAOkd,SAAS2E,GAAI,MAAO8V,IAAS9V,EAAG/jB,EAAI,IAAIC,GAAM8jB,EAAEoW,aAAan6B,EAAI,OAAO+jB,GAAE7Z,SAAS,OAAOlK,EAAE,EAAEA,EAAE,EAAEC,GAChJ+4B,IAAS,QAASwB,IAAOzW,EAAG3gB,EAAGZ,GAAK,MAAQN,QAAOkd,SAAS2E,GAAMA,EAAE7Z,SAAS,OAAO9G,EAAEZ,GAAK02B,GAAQnV,EAAE3gB,EAAEZ,GACvG0b,IAAa,SAAS1Z,GAAQ,MAAQA,GAAK,GAAGtE,OAAS,GAAKgC,OAAOkd,SAAS5a,EAAK,GAAG,IAAOtC,OAAOyC,OAAOH,EAAK,GAAGnD,IAAI,SAASN,GAAK,MAAOmB,QAAOkd,SAASre,GAAKA,EAAIsB,EAAYtB,MAAU43B,GAAYn0B,GACrMD,GAAU,SAASC,GAAQ,MAAOtC,QAAOyC,OAAOH,EAAKnD,IAAI,SAASoB,GAAO,MAAOP,QAAOkd,SAAS3c,GAAOA,EAAMJ,EAAYI,MACzHq3B,IAAW,QAASW,IAAQ1W,EAAG/jB,GAAK,GAAGkC,OAAOkd,SAAS2E,GAAI,MAAOA,GAAE2W,aAAa16B,EAAI,OAAO+5B,IAAUhW,EAAE/jB,GACxGg6B,IAAS,QAASW,IAAS7V,GAAK,MAAO5iB,QAAOkd,SAAS0F,IAAM7hB,MAAMS,QAAQohB,UAAc9hB,cAAe,aAAe8hB,YAAa9hB,aAIrI,QAAS43B,MACRpc,GAAY,SAASuF,EAAE3gB,EAAEZ,GAAK,MAAOq4B,UAAS5O,MAAMlqB,OAAO,KAAMgiB,EAAEnjB,MAAMwC,EAAEZ,IAAIR,QAAQ8C,EAAM,IAC7Fk0B,IAAS,SAASjV,EAAE3gB,EAAEZ,GAAK,MAAOq4B,UAAS5O,MAAMlqB,OAAO,MAAOgiB,EAAEnjB,MAAMwC,EAAEZ,IACzE22B,IAAU,SAASpV,EAAE/jB,GAAK,GAAIC,GAAM+e,GAAe+E,EAAE/jB,EAAI,OAAOC,GAAM,EAAI46B,SAAS5O,MAAMlqB,OAAO/D,EAAc+lB,EAAEnjB,MAAMZ,EAAE,EAAGA,EAAE,EAAEC,EAAI,IAAM,GACzIo5B,IAAU,SAAStV,EAAE/jB,GAAK,GAAIC,GAAM+e,GAAe+E,EAAE/jB,EAAI,OAAOC,GAAM,EAAI46B,SAAS5O,MAAMlqB,OAAOhE,EAAkBgmB,EAAEnjB,MAAMZ,EAAE,EAAGA,EAAE,EAAEC,EAAI,IAAM,GAC7Is5B,IAAW,SAASxV,EAAE/jB,GAAK,GAAIC,GAAM,EAAE+e,GAAe+E,EAAE/jB,EAAI,OAAOC,GAAM,EAAI46B,SAAS5O,MAAMlqB,OAAO,KAAMgiB,EAAEnjB,MAAMZ,EAAE,EAAEA,EAAE,EAAEC,EAAI,IAAM,GACnIw5B,IAAS,SAAS1V,EAAE/jB,GAAK,GAAIC,GAAM+e,GAAe+E,EAAE/jB,EAAI,OAAOC,GAAM,EAAI46B,SAAS5O,MAAMlqB,OAAO,KAAMgiB,EAAEnjB,MAAMZ,EAAE,EAAEA,EAAE,EAAEC,IAAQ,GAC7H25B,IAAU,SAAS7V,EAAE/jB,GAAK,GAAIC,GAAM+e,GAAe+E,EAAE/jB,EAAI,OAAOC,GAAM,EAAI46B,SAAS5O,MAAMlqB,OAAO,MAAOgiB,EAAEnjB,MAAMZ,EAAE,EAAEA,EAAE,EAAEC,IAAQ,IAEhI,SAAU46B,YAAa,YAAaD,IAEpC,IAAI3B,IAAc,SAASlV,EAAGlX,GAAO,MAAOkX,GAAElX,GAC9C,IAAI+rB,IAAiB,SAAS7U,EAAGlX,GAAO,MAAQkX,GAAElX,EAAI,IAAI,GAAG,GAAIkX,EAAElX,GACnE,IAAIiuB,IAAgB,SAAS/W,EAAGlX,GAAO,GAAIlE,GAAKob,EAAElX,EAAI,IAAI,GAAG,GAAIkX,EAAElX,EAAM,OAAQlE,GAAI,MAAUA,GAAM,MAASA,EAAI,IAAM,EACxH,IAAIqW,IAAiB,SAAS+E,EAAGlX,GAAO,MAAOkX,GAAElX,EAAI,IAAI,GAAG,KAAKkX,EAAElX,EAAI,IAAI,KAAKkX,EAAElX,EAAI,IAAI,GAAGkX,EAAElX,GAC/F,IAAI2Q,IAAgB,SAASuG,EAAGlX,GAAO,MAAQkX,GAAElX,EAAI,IAAI,GAAKkX,EAAElX,EAAI,IAAI,GAAKkX,EAAElX,EAAI,IAAI,EAAGkX,EAAElX,GAC5F,IAAIkuB,IAAgB,SAAShX,EAAGlX,GAAO,MAAQkX,GAAElX,IAAM,GAAKkX,EAAElX,EAAI,IAAI,GAAKkX,EAAElX,EAAI,IAAI,EAAGkX,EAAElX,EAAI,GAE9F,SAAS4f,IAAUnP,EAAM/X,GACxB,GAAIxF,GAAE,GAAIi7B,EAAIC,EAAIC,KAAOtwB,EAAGiG,EAAI7Q,EAAGm7B,CACnC,QAAO51B,GACN,IAAK,OACJ41B,EAAMC,KAAKh2B,CACX,IAAGnD,GAAWC,OAAOkd,SAASgc,MAAOr7B,EAAIq7B,KAAKx6B,MAAMw6B,KAAKh2B,EAAGg2B,KAAKh2B,EAAE,EAAEkY,GAAMpT,SAAS,eAC/E,KAAIlK,EAAI,EAAGA,EAAIsd,IAAQtd,EAAG,CAAED,GAAGM,OAAOC,aAAas4B,GAAewC,KAAMD,GAAOA,IAAK,EACzF7d,GAAQ,CACR,OAED,IAAK,OAAQvd,EAAIi5B,GAAOoC,KAAMA,KAAKh2B,EAAGg2B,KAAKh2B,EAAIkY,EAAO,OACtD,IAAK,UAAWA,GAAQ,CAAGvd,GAAIye,GAAU4c,KAAMA,KAAKh2B,EAAGg2B,KAAKh2B,EAAIkY,EAAO,OAEvE,IAAK,OACJ,SAAUud,YAAa,YAAa96B,EAAI86B,SAAS5O,MAAMlqB,OAAOhE,EAAkBq9B,KAAKx6B,MAAMw6B,KAAKh2B,EAAGg2B,KAAKh2B,EAAE,EAAEkY,QACvG,OAAOmP,IAAU5nB,KAAKu2B,KAAM9d,EAAM,OACvCA,GAAO,EAAIA,CAAM,OAGlB,IAAK,aAAcvd,EAAIo5B,GAAQiC,KAAMA,KAAKh2B,EAAIkY,GAAO,EAAI0B,GAAeoc,KAAMA,KAAKh2B,EAAI,OACvF,IAAK,WAAYrF,EAAIs5B,GAAQ+B,KAAMA,KAAKh2B,EAAIkY,GAAO,EAAI0B,GAAeoc,KAAMA,KAAKh2B,EAAI,OAErF,IAAK,SAAUrF,EAAIw5B,GAAS6B,KAAMA,KAAKh2B,EAAIkY,GAAO,EAAI,EAAI0B,GAAeoc,KAAMA,KAAKh2B,EAAI,OAExF,IAAK,OAAQkY,EAAO,EAAK0B,GAAeoc,KAAMA,KAAKh2B,EAAIrF,GAAI05B,GAAO2B,KAAMA,KAAKh2B,EAAI,IAAGkY,EAAO,EAAMA,GAAQ,CAAG,OAE5G,IAAK,QAASA,EAAO,EAAK0B,GAAeoc,KAAMA,KAAKh2B,EAAIrF,GAAI65B,GAAQwB,KAAMA,KAAKh2B,EAAI,IAAGkY,EAAO,EAAMA,GAAQ,GAAKA,EAAO,EAAO,OAE9H,IAAK,OAAQA,EAAO,CAAGvd,GAAI,EAC1B,QAAO6K,EAAEquB,GAAYmC,KAAMA,KAAKh2B,EAAIkY,QAAW,EAAG4d,EAAG52B,KAAKzD,EAAS+J,GACnE7K,GAAIm7B,EAAG36B,KAAK,GAAK,OAClB,IAAK,QAAS+c,EAAO,CAAGvd,GAAI,EAC3B,QAAO6K,EAAEguB,GAAewC,KAAKA,KAAKh2B,EAAGkY,MAAS,EAAE,CAAC4d,EAAG52B,KAAKzD,EAAS+J,GAAI0S,IAAM,EAC5EA,GAAM,CAAGvd,GAAIm7B,EAAG36B,KAAK,GAAK,OAG3B,IAAK,YAAaR,EAAI,EAAIo7B,GAAMC,KAAKh2B,CACpC,KAAIpF,EAAI,EAAGA,EAAIsd,IAAQtd,EAAG,CACzB,GAAGo7B,KAAKC,MAAQD,KAAKC,KAAK57B,QAAQ07B,MAAU,EAAG,CAC9CvwB,EAAIquB,GAAYmC,KAAMD,EACtBC,MAAKh2B,EAAI+1B,EAAM,CACftqB,GAAK4b,GAAU5nB,KAAKu2B,KAAM9d,EAAKtd,EAAG4K,EAAI,YAAc,YACpD,OAAOswB,GAAG36B,KAAK,IAAMsQ,EAEtBqqB,EAAG52B,KAAKzD,EAAS+3B,GAAewC,KAAMD,IACtCA,IAAK,EACJp7B,EAAIm7B,EAAG36B,KAAK,GAAK+c,IAAQ,CAAG,OAE/B,IAAK,QACJ,SAAUud,YAAa,YAAa,CACnC96B,EAAI86B,SAAS5O,MAAMlqB,OAAOhE,EAAkBq9B,KAAKx6B,MAAMw6B,KAAKh2B,EAAGg2B,KAAKh2B,EAAIkY,GACxE,QAGF,IAAK,YAAavd,EAAI,EAAIo7B,GAAMC,KAAKh2B,CACpC,KAAIpF,EAAI,EAAGA,GAAKsd,IAAQtd,EAAG,CAC1B,GAAGo7B,KAAKC,MAAQD,KAAKC,KAAK57B,QAAQ07B,MAAU,EAAG,CAC9CvwB,EAAIquB,GAAYmC,KAAMD,EACtBC,MAAKh2B,EAAI+1B,EAAM,CACftqB,GAAK4b,GAAU5nB,KAAKu2B,KAAM9d,EAAKtd,EAAG4K,EAAI,YAAc,YACpD,OAAOswB,GAAG36B,KAAK,IAAMsQ,EAEtBqqB,EAAG52B,KAAKzD,EAASo4B,GAAYmC,KAAMD,IACnCA,IAAK,EACJp7B,EAAIm7B,EAAG36B,KAAK,GAAK,OAEpB,QACD,OAAO+c,GACN,IAAK,GAAG0d,EAAK/B,GAAYmC,KAAMA,KAAKh2B,EAAIg2B,MAAKh2B,GAAK,OAAO41B,GACzD,IAAK,GAAGA,GAAMz1B,IAAM,IAAMu1B,GAAgBlC,IAAgBwC,KAAMA,KAAKh2B,EAAIg2B,MAAKh2B,GAAK,CAAG,OAAO41B,GAC7F,IAAK,IAAG,KAAM,EACb,GAAGz1B,IAAM,MAAS61B,KAAKA,KAAKh2B,EAAE,GAAK,OAAQ,EAAI,CAAE41B,GAAO1d,EAAO,EAAKE,GAAgBud,IAAeK,KAAMA,KAAKh2B,EAAIg2B,MAAKh2B,GAAK,CAAG,OAAO41B,OACjI,CAAEC,EAAKjc,GAAeoc,KAAMA,KAAKh2B,EAAIg2B,MAAKh2B,GAAK,EAAK,MAAO61B,GACjE,IAAK,IAAG,KAAM,EACb,GAAG11B,IAAM,IAAK,CACb,GAAG+X,GAAQ,EAAG2d,EAAKnB,GAASsB,KAAMA,KAAKh2B,OAClC61B,GAAKnB,IAAUsB,KAAKA,KAAKh2B,EAAE,GAAGg2B,KAAKA,KAAKh2B,EAAE,GAAGg2B,KAAKA,KAAKh2B,EAAE,GAAGg2B,KAAKA,KAAKh2B,EAAE,GAAGg2B,KAAKA,KAAKh2B,EAAE,GAAGg2B,KAAKA,KAAKh2B,EAAE,GAAGg2B,KAAKA,KAAKh2B,EAAE,GAAGg2B,KAAKA,KAAKh2B,EAAE,IAAK,EAC9Ig2B,MAAKh2B,GAAK,CAAG,OAAO61B,OACd3d,GAAO,EAEf,IAAK,IAAIvd,EAAI+4B,GAAUsC,KAAMA,KAAKh2B,EAAGkY,EAAO,UAE7C8d,KAAKh2B,GAAGkY,CAAM,OAAOvd,GAGtB,GAAIu7B,IAAkB,SAASvX,EAAGjY,EAAKe,GAAOkX,EAAElX,GAAQf,EAAM,GAAOiY,GAAElX,EAAI,GAAOf,IAAQ,EAAK,GAAOiY,GAAElX,EAAI,GAAOf,IAAQ,GAAM,GAAOiY,GAAElX,EAAI,GAAOf,IAAQ,GAAM,IACnK,IAAIyvB,IAAkB,SAASxX,EAAGjY,EAAKe,GAAOkX,EAAElX,GAAQf,EAAM,GAAOiY,GAAElX,EAAI,GAAOf,GAAO,EAAK,GAAOiY,GAAElX,EAAI,GAAOf,GAAO,GAAM,GAAOiY,GAAElX,EAAI,GAAOf,GAAO,GAAM,IAChK,IAAI0vB,IAAkB,SAASzX,EAAGjY,EAAKe,GAAOkX,EAAElX,GAAQf,EAAM,GAAOiY,GAAElX,EAAI,GAAOf,IAAQ,EAAK,IAE/F,SAAS2vB,IAAWl2B,EAAGuG,EAAK4F,GAC3B,GAAI4L,GAAO,EAAGtd,EAAI,CAClB,IAAG0R,IAAM,OAAQ,CAClB,IAAI1R,EAAI,EAAGA,GAAK8L,EAAI5L,SAAUF,EAAGw7B,GAAgBJ,KAAMtvB,EAAI3L,WAAWH,GAAIo7B,KAAKh2B,EAAI,EAAIpF,EACrFsd,GAAO,EAAIxR,EAAI5L,WACT,IAAGwR,IAAM,OAAQ,CACvB,SAAUmpB,YAAa,aAAe78B,GAAgB,IAAK,CAE7D,IAAIgC,EAAI,EAAGA,GAAK8L,EAAI5L,SAAUF,EAAG,CAC7B,GAAI07B,GAAYb,SAAS5O,MAAM3qB,OAAOtD,EAAc8N,EAAIhK,OAAO9B,GAC/Do7B,MAAKA,KAAKh2B,EAAIpF,GAAK07B,EAAU,QAExB,CACT5vB,EAAMA,EAAI9J,QAAQ,gBAAiB,IACnC,KAAIhC,EAAI,EAAGA,GAAK8L,EAAI5L,SAAUF,EAAGo7B,KAAKA,KAAKh2B,EAAIpF,GAAM8L,EAAI3L,WAAWH,GAAK,IAEvEsd,EAAOxR,EAAI5L,WACL,IAAGwR,IAAM,MAAO,CACtB,KAAM1R,EAAIuF,IAAKvF,EAAG,CACpBo7B,KAAKA,KAAKh2B,KAAQyI,SAAS/B,EAAIlL,MAAM,EAAEZ,EAAG,EAAEA,EAAE,GAAI,KAAK,EACnD,MAAOo7B,UACH,IAAG1pB,IAAM,UAAW,CAC5B,GAAIgZ,GAAM/kB,KAAKyJ,IAAIgsB,KAAKh2B,EAAIG,EAAG61B,KAAKl7B,OACjC,KAAIF,EAAI,EAAGA,EAAI2F,KAAKyJ,IAAItD,EAAI5L,OAAQqF,KAAMvF,EAAG,CAC5C,GAAIwO,GAAK1C,EAAI3L,WAAWH,EACxBo7B,MAAKA,KAAKh2B,KAAQoJ,EAAK,GACvB4sB,MAAKA,KAAKh2B,KAAQoJ,GAAM,EAEzB,MAAM4sB,KAAKh2B,EAAIslB,EAAK0Q,KAAKA,KAAKh2B,KAAO,CACrC,OAAOg2B,UACD,QAAO71B,GACd,IAAM,GAAG+X,EAAO,CAAG8d,MAAKA,KAAKh2B,GAAK0G,EAAI,GAAM,OAC5C,IAAM,GAAGwR,EAAO,CAAG8d,MAAKA,KAAKh2B,GAAK0G,EAAI,GAAMA,MAAS,CAAGsvB,MAAKA,KAAKh2B,EAAE,GAAK0G,EAAI,GAAM,OACnF,IAAM,GAAGwR,EAAO,CAAG8d,MAAKA,KAAKh2B,GAAK0G,EAAI,GAAMA,MAAS,CAAGsvB,MAAKA,KAAKh2B,EAAE,GAAK0G,EAAI,GAAMA,MAAS,CAAGsvB,MAAKA,KAAKh2B,EAAE,GAAK0G,EAAI,GAAM,OAC1H,IAAM,GAAGwR,EAAO,CAAGge,IAAgBF,KAAMtvB,EAAKsvB,KAAKh2B,EAAI,OACvD,IAAM,GAAGkY,EAAO,CAAG,IAAG5L,IAAM,IAAK,CAAE6mB,GAAgB6C,KAAMtvB,EAAKsvB,KAAKh2B,EAAI,QAEvE,IAAK,IAAI,MACT,KAAM,EAAGkY,EAAO,CAAGie,IAAeH,KAAMtvB,EAAKsvB,KAAKh2B,EAAI,QAEvDg2B,KAAKh2B,GAAKkY,CAAM,OAAO8d,MAGxB,QAAS1O,IAAWiP,EAAQC,GAC3B,GAAI/yB,GAAIiwB,GAAUsC,KAAKA,KAAKh2B,EAAEu2B,EAAOz7B,QAAQ,EAC7C,IAAG2I,IAAM8yB,EAAQ,KAAM,IAAI93B,OAAM+3B,EAAM,YAAcD,EAAS,QAAU9yB,EACxEuyB,MAAKh2B,GAAKu2B,EAAOz7B,QAAQ,EAG1B,QAAS4Z,IAAUD,EAAMgiB,GACxBhiB,EAAKzU,EAAIy2B,CACThiB,GAAKR,WAAaoT,EAClB5S,GAAK6B,IAAMgR,EACX7S,GAAKX,YAAcuiB,GAGpB,QAASK,IAAUjiB,EAAM3Z,GAAU2Z,EAAKzU,GAAKlF,EAE7C,QAASud,IAAQzD,GAChB,GAAIja,GAAIgD,EAAYiX,EACpBF,IAAU/Z,EAAG,EACb,OAAOA,GAIR,QAASg8B,IAAaj8B,EAAMk8B,EAAI5zB,GAC/B,IAAItI,EAAM,MACV,IAAIm8B,GAASC,EAASh8B,CACtB4Z,IAAUha,EAAMA,EAAKsF,GAAK,EAC1B,IAAIjB,GAAIrE,EAAKI,OAAQi8B,EAAK,EAAGliB,EAAM,CACnC,OAAMna,EAAKsF,EAAIjB,EAAG,CACjBg4B,EAAKr8B,EAAKuZ,WAAW,EACrB,IAAG8iB,EAAK,IAAMA,GAAMA,EAAK,OAAUr8B,EAAKuZ,WAAW,GAAK,MAAO,EAC/D,IAAIb,GAAI4jB,eAAeD,IAAOC,eAAe,MAC7CH,GAAUn8B,EAAKuZ,WAAW,EAC1BnZ,GAAS+7B,EAAU,GACnB,KAAIC,EAAU,EAAGA,EAAS,GAAMD,EAAU,MAASC,EAASh8B,KAAY+7B,EAAUn8B,EAAKuZ,WAAW,IAAM,MAAQ,EAAE6iB,CAClHjiB,GAAMna,EAAKsF,EAAIlF,CACf,IAAImE,GAAImU,EAAE9G,GAAK8G,EAAE9G,EAAE5R,EAAMI,EAAQkI,EACjCtI,GAAKsF,EAAI6U,CACT,IAAG+hB,EAAG33B,EAAGmU,EAAG2jB,GAAK,QAKnB,QAASE,MACR,GAAI73B,MAAW83B,EAAQr6B,EAAU,IAAM,IACvC,IAAIs6B,GAAS,QAASC,GAAUxiB,GAC/B,GAAIja,GAAK0d,GAAQzD,EACjBF,IAAU/Z,EAAG,EACb,OAAOA,GAGR,IAAI08B,GAASF,EAAOD,EAEpB,IAAII,GAAS,QAASC,KACrB,IAAIF,EAAQ,MACZ,IAAGA,EAAOv8B,OAASu8B,EAAOr3B,EAAG,CAAEq3B,EAASA,EAAO77B,MAAM,EAAG67B,EAAOr3B,EAAIq3B,GAAOr3B,EAAIq3B,EAAOv8B,OACrF,GAAGu8B,EAAOv8B,OAAS,EAAGsE,EAAKF,KAAKm4B,EAChCA,GAAS,KAGV,IAAIG,GAAO,QAASC,GAAQ7iB,GAC3B,GAAGyiB,GAAWziB,EAAMyiB,EAAOv8B,OAASu8B,EAAOr3B,EAAK,MAAOq3B,EACvDC,IACA,OAAQD,GAASF,EAAO52B,KAAK0J,IAAI2K,EAAG,EAAGsiB,IAGxC,IAAI5R,GAAM,QAASoS,KAClBJ,GACA,OAAOn4B,GAAQC,GAGhB,IAAIF,GAAO,QAASy4B,GAAQt6B,GAAOi6B,GAAUD,GAASh6B,CAAK,IAAGg6B,EAAOr3B,GAAK,KAAMq3B,EAAOr3B,EAAIq3B,EAAOv8B,MAAQ08B,GAAKN,GAE/G,QAAUM,KAAKA,EAAMt4B,KAAKA,EAAMomB,IAAIA,EAAKsS,MAAMx4B,GAGhD,QAASy4B,IAAaC,EAAItxB,EAAMuR,EAASjd,GACxC,GAAIqF,IAAKqG,EAAMxG,CACf,IAAGvD,MAAM0D,GAAI,MACb,KAAIrF,EAAQA,EAASk8B,eAAe72B,GAAGoT,IAAMwE,OAAajd,QAAU,CACpEkF,GAAI,GAAKG,GAAK,IAAO,EAAI,GAAK,CAC9B,IAAGrF,GAAU,MAAQkF,CAAG,IAAGlF,GAAU,QAAUkF,CAAG,IAAGlF,GAAU,UAAYkF,CAC3E,IAAIrF,GAAIm9B,EAAGN,KAAKx3B,EAChB,IAAGG,GAAK,IAAMxF,EAAEmZ,YAAY,EAAG3T,OAC1B,CACJxF,EAAEmZ,YAAY,GAAI3T,EAAI,KAAQ,IAC9BxF,GAAEmZ,YAAY,EAAI3T,GAAK,GAExB,IAAI,GAAIvF,GAAI,EAAGA,GAAK,IAAKA,EAAG,CAC3B,GAAGE,GAAU,IAAM,CAAEH,EAAEmZ,YAAY,GAAIhZ,EAAS,KAAM,IAAOA,KAAW,MACnE,CAAEH,EAAEmZ,YAAY,EAAGhZ,EAAS,QAElC,GAAGA,EAAS,GAAK85B,GAAO7c,GAAU+f,EAAG54B,KAAK6Y,GAG3C,QAASggB,IAAeC,EAAMnjB,EAAK7R,GAClC,GAAInE,GAAMwsB,GAAI2M,EACd,IAAGnjB,EAAI7W,EAAG,CACT,GAAGa,EAAIo5B,KAAMp5B,EAAIN,GAAKsW,EAAI7W,EAAEO,CAC5B,IAAGM,EAAIq5B,KAAMr5B,EAAIwJ,GAAKwM,EAAI7W,EAAEqK,MACtB,CACN,GAAGxJ,EAAIo5B,KAAMp5B,EAAIN,GAAKsW,EAAItW,CAC1B,IAAGM,EAAIq5B,KAAMr5B,EAAIwJ,GAAKwM,EAAIxM,EAE3B,IAAIrF,GAAQA,EAAKm1B,KAAO,GAAI,CAC3B,MAAMt5B,EAAIN,GAAK,IAAOM,EAAIN,GAAK,GAC/B,OAAMM,EAAIwJ,GAAK,MAASxJ,EAAIwJ,GAAK,MAElC,MAAOxJ,GAGR,QAASu5B,IAAgBJ,EAAMK,EAAOr1B,GACrC,GAAInE,GAAMwsB,GAAI2M,EACdn5B,GAAIb,EAAI+5B,GAAel5B,EAAIb,EAAGq6B,EAAMr6B,EAAGgF,EACvCnE,GAAIzB,EAAI26B,GAAel5B,EAAIzB,EAAGi7B,EAAMr6B,EAAGgF,EACvC,OAAOnE,GAGR,QAASy5B,IAAgB/5B,EAAG45B,GAC3B,GAAG55B,EAAE05B,MAAQ15B,EAAEA,EAAI,EAAG,CAAEA,EAAI8sB,GAAI9sB,EAAI,OAAMA,EAAEA,EAAI,EAAGA,EAAEA,GAAM45B,EAAO,EAAK,MAAS,IAChF,GAAG55B,EAAE25B,MAAQ35B,EAAE8J,EAAI,EAAG,CAAE9J,EAAI8sB,GAAI9sB,EAAI,OAAMA,EAAE8J,EAAI,EAAG9J,EAAE8J,GAAM8vB,EAAO,EAAK,QAAaA,EAAO,EAAK,MAAU,MAC1G,GAAIn6B,GAAIu6B,GAAYh6B,EACpB,KAAIA,EAAE05B,MAAQ15B,EAAE05B,MAAQ,KAAMj6B,EAAIw6B,GAAQx6B,EAC1C,KAAIO,EAAE25B,MAAQ35B,EAAE25B,MAAQ,KAAMl6B,EAAIy6B,GAAQz6B,EAC1C,OAAOA,GAGR,QAAS06B,IAAiBrwB,EAAGrF,GAC5B,GAAGqF,EAAErK,EAAEqK,GAAK,IAAMA,EAAErK,EAAEk6B,KAAM,CAC3B,GAAG7vB,EAAEjL,EAAEiL,IAAMrF,EAAKm1B,MAAQ,GAAK,QAAWn1B,EAAKm1B,MAAQ,EAAI,MAAU,SAAa9vB,EAAEjL,EAAE86B,KAAM,CAC3F,OAAQ7vB,EAAErK,EAAEi6B,KAAO,GAAK,KAAOU,GAAWtwB,EAAErK,EAAEO,GAAK,KAAO8J,EAAEjL,EAAE66B,KAAO,GAAK,KAAOU,GAAWtwB,EAAEjL,EAAEmB,IAGlG,GAAG8J,EAAErK,EAAEO,GAAK,IAAM8J,EAAErK,EAAEi6B,KAAM,CAC3B,GAAG5vB,EAAEjL,EAAEmB,IAAMyE,EAAKm1B,MAAQ,GAAK,MAAS,OAAU9vB,EAAEjL,EAAE66B,KAAM,CAC3D,OAAQ5vB,EAAErK,EAAEk6B,KAAO,GAAK,KAAOU,GAAWvwB,EAAErK,EAAEqK,GAAK,KAAOA,EAAEjL,EAAE86B,KAAO,GAAK,KAAOU,GAAWvwB,EAAEjL,EAAEiL,IAGlG,MAAOiwB,IAAgBjwB,EAAErK,EAAGgF,EAAKm1B,MAAQ,IAAMG,GAAgBjwB,EAAEjL,EAAG4F,EAAKm1B,MAE1E,QAASU,IAAWC,GAAU,MAAOrwB,UAASswB,GAAUD,GAAQ,IAAM,EACtE,QAASF,IAAW3S,GAAO,MAAO,IAAMA,EAAM,GAC9C,QAASwS,IAAQlS,GAAQ,MAAOA,GAAK3pB,QAAQ,kBAAkB,UAC/D,QAASm8B,IAAUxS,GAAQ,MAAOA,GAAK3pB,QAAQ,WAAW,MAE1D,QAASo8B,IAAWC,GAAU,GAAI16B,GAAI26B,GAAUD,GAASh6B,EAAI,EAAGrE,EAAI,CAAG,MAAMA,IAAM2D,EAAEzD,SAAUF,EAAGqE,EAAI,GAAGA,EAAIV,EAAExD,WAAWH,GAAK,EAAI,OAAOqE,GAAI,EAC9I,QAAS05B,IAAWQ,GAAO,GAAGA,EAAM,EAAG,KAAM,IAAI16B,OAAM,kBAAoB06B,EAAM,IAAIn7B,GAAE,EAAI,OAAMm7B,EAAKA,EAAKA,EAAI54B,KAAKsC,OAAOs2B,EAAI,GAAG,IAAKn7B,EAAI/C,OAAOC,cAAei+B,EAAI,GAAG,GAAM,IAAMn7B,CAAG,OAAOA,GAC9L,QAASw6B,IAAQjS,GAAQ,MAAOA,GAAK3pB,QAAQ,WAAW,QACxD,QAASs8B,IAAU3S,GAAQ,MAAOA,GAAK3pB,QAAQ,aAAa,MAE5D,QAASw8B,IAAW7S,GAAQ,MAAOA,GAAK3pB,QAAQ,sBAAsB,SAASqB,MAAM,KAErF,QAASo7B,IAAY9S,GACpB,GAAInT,GAAI,EAAGP,EAAI,CACf,KAAI,GAAIjY,GAAI,EAAGA,EAAI2rB,EAAKzrB,SAAUF,EAAG,CACpC,GAAIwO,GAAKmd,EAAKxrB,WAAWH,EACzB,IAAGwO,GAAM,IAAMA,GAAM,GAAIgK,EAAI,GAAKA,GAAKhK,EAAK,QACvC,IAAGA,GAAM,IAAMA,GAAM,GAAIyJ,EAAI,GAAKA,GAAKzJ,EAAK,IAElD,OAAS7K,EAAGsU,EAAI,EAAGxK,EAAE+K,EAAI,GAG1B,QAASmlB,IAAYP,GACpB,GAAImB,GAAMnB,EAAKz5B,EAAI,CACnB,IAAIP,GAAE,EACN,MAAMm7B,EAAKA,GAAMA,EAAI,GAAG,GAAI,EAAGn7B,EAAI/C,OAAOC,cAAei+B,EAAI,GAAG,GAAM,IAAMn7B,CAC5E,OAAOA,IAAKg6B,EAAK3vB,EAAI,GAEtB,QAASixB,IAAajB,GACrB,GAAI5wB,GAAM4wB,EAAMh+B,QAAQ,IACxB,IAAGoN,IAAQ,EAAG,OAASzJ,EAAGq7B,GAAYhB,GAAQj7B,EAAGi8B,GAAYhB,GAC7D,QAASr6B,EAAGq7B,GAAYhB,EAAM78B,MAAM,EAAGiM,IAAOrK,EAAGi8B,GAAYhB,EAAM78B,MAAMiM,EAAM,KAEhF,QAAS8xB,IAAaC,EAAGC,GACxB,SAAUA,KAAO,mBAAsBA,KAAO,SAAU,CACzD,MAAOF,IAAaC,EAAGx7B,EAAGw7B,EAAGp8B,GAE7B,SAAUo8B,KAAO,SAAUA,EAAKjB,GAAY,EAC3C,UAAUkB,KAAO,SAAUA,EAAKlB,GAAY,EAC7C,OAAOiB,IAAMC,EAAKD,EAAKA,EAAK,IAAMC,EAGlC,QAASC,IAAkBrB,GAC1B,GAAI19B,IAAKqD,GAAGO,EAAE,EAAE8J,EAAE,GAAGjL,GAAGmB,EAAE,EAAE8J,EAAE,GAC9B,IAAIZ,GAAM,EAAG7M,EAAI,EAAGwO,EAAK,CACzB,IAAIvO,GAAMw9B,EAAMv9B,MAChB,KAAI2M,EAAM,EAAG7M,EAAIC,IAAOD,EAAG,CAC1B,IAAIwO,EAAGivB,EAAMt9B,WAAWH,GAAG,IAAM,GAAKwO,EAAK,GAAI,KAC/C3B,GAAM,GAAGA,EAAM2B,EAEhBzO,EAAEqD,EAAEO,IAAMkJ,CAEV,KAAIA,EAAM,EAAG7M,EAAIC,IAAOD,EAAG,CAC1B,IAAIwO,EAAGivB,EAAMt9B,WAAWH,GAAG,IAAM,GAAKwO,EAAK,EAAG,KAC9C3B,GAAM,GAAGA,EAAM2B,EAEhBzO,EAAEqD,EAAEqK,IAAMZ,CAEV,IAAG7M,IAAMC,GAAOuO,GAAM,GAAI,CAAEzO,EAAEyC,EAAEmB,EAAE5D,EAAEqD,EAAEO,CAAG5D,GAAEyC,EAAEiL,EAAE1N,EAAEqD,EAAEqK,CAAG,OAAO1N,KAC3DC,CAEF,KAAI6M,EAAM,EAAG7M,GAAKC,IAAOD,EAAG,CAC3B,IAAIwO,EAAGivB,EAAMt9B,WAAWH,GAAG,IAAM,GAAKwO,EAAK,GAAI,KAC/C3B,GAAM,GAAGA,EAAM2B,EAEhBzO,EAAEyC,EAAEmB,IAAMkJ,CAEV,KAAIA,EAAM,EAAG7M,GAAKC,IAAOD,EAAG,CAC3B,IAAIwO,EAAGivB,EAAMt9B,WAAWH,GAAG,IAAM,GAAKwO,EAAK,EAAG,KAC9C3B,GAAM,GAAGA,EAAM2B,EAEhBzO,EAAEyC,EAAEiL,IAAMZ,CACV,OAAO9M,GAGR,QAASg/B,IAAiB3B,EAAM93B,GAC/B,GAAI4C,GAAKk1B,EAAK73B,GAAK,KAAOD,YAAa6D,KACvC,IAAGi0B,EAAK1J,GAAK,KAAM,IAAM,MAAQ0J,GAAKxyB,EAAI5F,EAAIyG,OAAO2xB,EAAK1J,EAAGxrB,EAAIynB,EAAQrqB,GAAKA,GAAO,MAAM9C,IAC3F,IAAM,MAAQ46B,GAAKxyB,EAAI5F,EAAIyG,QAAQ2xB,EAAK4B,QAAQC,WAAW/2B,EAAI,GAAK,GAAKA,EAAIynB,EAAQrqB,GAAKA,GAAO,MAAM9C,GAAK,MAAO,GAAG8C,GAGvH,QAAS45B,IAAY9B,EAAM93B,EAAGvF,GAC7B,GAAGq9B,GAAQ,MAAQA,EAAK73B,GAAK,MAAQ63B,EAAK73B,GAAK,IAAK,MAAO,EAC3D,IAAG63B,EAAKxyB,IAAMzI,UAAW,MAAOi7B,GAAKxyB,CACrC,IAAGwyB,EAAK73B,GAAK,MAAQ63B,EAAK1J,GAAK3zB,GAAKA,EAAE+R,OAAQsrB,EAAK1J,EAAI3zB,EAAE+R,MACzD,IAAGsrB,EAAK73B,GAAK,IAAK,MAAO45B,IAAK/B,EAAK93B,IAAM83B,EAAK93B,CAC9C,IAAGA,GAAKnD,UAAW,MAAO48B,IAAiB3B,EAAMA,EAAK93B,EACtD,OAAOy5B,IAAiB3B,EAAM93B,GAG/B,QAAS85B,IAAkBC,EAAOj3B,GACjC,GAAIvF,GAAIuF,GAAQA,EAAKi3B,MAAQj3B,EAAKi3B,MAAQ,QAC1C,IAAIC,KAAaA,GAAOz8B,GAAKw8B,CAC7B,QAASE,YAAa18B,GAAI28B,OAAQF,GAGnC,QAASG,IAAcC,EAAK5/B,EAAMsI,GACjC,GAAIrI,GAAIqI,KACR,IAAIu3B,GAAQD,EAAMz8B,MAAMS,QAAQg8B,GAAO3/B,EAAE4/B,KACzC,IAAGz+B,GAAS,MAAQy+B,GAAS,KAAMA,EAAQz+B,CAC3C,IAAI0+B,GAAKF,IAAQC,QACjB,IAAIE,GAAK,EAAGC,EAAK,CACjB,IAAGF,GAAM7/B,EAAEggC,QAAU,KAAM,CAC1B,SAAUhgC,GAAEggC,QAAU,SAAUF,EAAK9/B,EAAEggC,WAClC,CACJ,GAAIC,SAAiBjgC,GAAEggC,QAAU,SAAWtB,GAAY1+B,EAAEggC,QAAUhgC,EAAEggC,MACtEF,GAAKG,EAAQvyB,CAAGqyB,GAAKE,EAAQr8B,EAE9B,IAAIi8B,EAAG,QAASA,EAAG,QAAU,QAE9B,GAAInC,IAAUr6B,GAAIO,EAAE,IAAU8J,EAAE,KAAWjL,GAAImB,EAAE,EAAG8J,EAAE,GACtD,IAAGmyB,EAAG,QAAS,CACd,GAAIK,GAASnB,GAAkBc,EAAG,QAClCnC,GAAMr6B,EAAEO,EAAIs8B,EAAO78B,EAAEO,CACrB85B,GAAMr6B,EAAEqK,EAAIwyB,EAAO78B,EAAEqK,CACrBgwB,GAAMj7B,EAAEmB,EAAIgC,KAAK0J,IAAIouB,EAAMj7B,EAAEmB,EAAGs8B,EAAOz9B,EAAEmB,EACzC85B,GAAMj7B,EAAEiL,EAAI9H,KAAK0J,IAAIouB,EAAMj7B,EAAEiL,EAAGwyB,EAAOz9B,EAAEiL,EACzC,IAAGoyB,IAAO,EAAGpC,EAAMj7B,EAAEiL,EAAIoyB,EAAKI,EAAOz9B,EAAEiL,EAAI,EAE5C,IAAI,GAAI+K,GAAI,EAAGA,GAAK1Y,EAAKI,SAAUsY,EAAG,CACrC,IAAI1Y,EAAK0Y,GAAI,QACb,KAAIvV,MAAMS,QAAQ5D,EAAK0Y,IAAK,KAAM,IAAI3U,OAAM,0CAC5C,KAAI,GAAIoU,GAAI,EAAGA,GAAKnY,EAAK0Y,GAAGtY,SAAU+X,EAAG,CACxC,SAAUnY,GAAK0Y,GAAGP,KAAO,YAAa,QACtC,IAAImlB,IAAS93B,EAAGxF,EAAK0Y,GAAGP,GACxB,IAAIioB,GAAML,EAAKrnB,EAAG2nB,EAAML,EAAK7nB,CAC7B,IAAGwlB,EAAMr6B,EAAEqK,EAAIyyB,EAAKzC,EAAMr6B,EAAEqK,EAAIyyB,CAChC,IAAGzC,EAAMr6B,EAAEO,EAAIw8B,EAAK1C,EAAMr6B,EAAEO,EAAIw8B,CAChC,IAAG1C,EAAMj7B,EAAEiL,EAAIyyB,EAAKzC,EAAMj7B,EAAEiL,EAAIyyB,CAChC,IAAGzC,EAAMj7B,EAAEmB,EAAIw8B,EAAK1C,EAAMj7B,EAAEmB,EAAIw8B,CAChC,IAAGrgC,EAAK0Y,GAAGP,UAAanY,GAAK0Y,GAAGP,KAAO,WAAahV,MAAMS,QAAQ5D,EAAK0Y,GAAGP,OAASnY,EAAK0Y,GAAGP,YAAc9O,OAAOi0B,EAAOt9B,EAAK0Y,GAAGP,OAC1H,CACJ,GAAGhV,MAAMS,QAAQ05B,EAAK93B,GAAI,CAAE83B,EAAK1rB,EAAI5R,EAAK0Y,GAAGP,GAAG,EAAImlB,GAAK93B,EAAI83B,EAAK93B,EAAE,GACpE,GAAG83B,EAAK93B,IAAM,KAAM,CACnB,GAAG83B,EAAK1rB,EAAG0rB,EAAK73B,EAAI,QACf,IAAGxF,EAAEqgC,UAAW,CAAEhD,EAAK73B,EAAI,GAAK63B,GAAK93B,EAAI,MACzC,KAAIvF,EAAEsgC,WAAY,aAClBjD,GAAK73B,EAAI,QAEV,UAAU63B,GAAK93B,IAAM,SAAU83B,EAAK73B,EAAI,QACxC,UAAU63B,GAAK93B,IAAM,UAAW83B,EAAK73B,EAAI,QACzC,IAAG63B,EAAK93B,YAAa6D,MAAM,CAC/Bi0B,EAAK1J,EAAI3zB,EAAE+R,QAAU9M,EAAIkN,OAAO,GAChC,IAAGnS,EAAEugC,UAAW,CAAElD,EAAK73B,EAAI,GAAK63B,GAAKxyB,EAAI5F,EAAIyG,OAAO2xB,EAAK1J,EAAG/D,EAAQyN,EAAK93B,QACpE,CAAE83B,EAAK73B,EAAI,GAAK63B,GAAK93B,EAAIqqB,EAAQyN,EAAK93B,EAAI83B,GAAKxyB,EAAI5F,EAAIyG,OAAO2xB,EAAK1J,EAAG0J,EAAK93B,QAE5E83B,GAAK73B,EAAI,IAEf,GAAGo6B,EAAO,CACT,IAAIC,EAAGM,GAAMN,EAAGM,KAChB,IAAGN,EAAGM,GAAKC,IAAQP,EAAGM,GAAKC,GAAKzM,EAAG0J,EAAK1J,EAAIkM,EAAGM,GAAKC,GAAKzM,CACzDkM,GAAGM,GAAKC,GAAO/C,MACT,CACN,GAAImD,GAAW5C,IAAch6B,EAAEw8B,EAAI1yB,EAAEyyB,GACrC,IAAGN,EAAGW,IAAaX,EAAGW,GAAU7M,EAAG0J,EAAK1J,EAAIkM,EAAGW,GAAU7M,CACzDkM,GAAGW,GAAYnD,IAIlB,GAAGK,EAAMr6B,EAAEO,EAAI,IAAUi8B,EAAG,QAAUjB,GAAalB,EACnD,OAAOmC,GAER,QAASY,IAAa1gC,EAAMsI,GAAQ,MAAOq3B,IAAc,KAAM3/B,EAAMsI,GAKrE,GAAIq4B,IAAc,CAClB,IAAIC,IAAc,CAOlB,IAAIC,IAAc,EAClB,IAAIC,IAAc,EAKlB,IAAIC,IAAc,EAKlB,IAAIC,IAAc,EAElB,IAAIC,IAAc,EAClB,IAAIC,IAAc,EAMlB,IAAIC,IAAc,EAGlB,IAAIC,IAAc,IAGlB,IAAIC,IAAc,EAClB,IAAIC,IAAc,EAClB,IAAIC,KAAeF,GAAWC,GAG9B,IAAIE,KACJljC,GAAQyE,EAAG,WAAY0C,EAAGk7B,IAC1BpiC,GAAQwE,EAAG,WAAY0C,EAAG47B,IAC1BI,GAAQ1+B,EAAG,qBAAsB0C,EAAG47B,IACpCK,GAAQ3+B,EAAG,YAAa0C,EAAGm7B,IAC3Bj6B,GAAQ5D,EAAG,YAAa0C,EAAGm7B,IAC3B/5B,GAAQ9D,EAAG,iBAAkB0C,EAAGm7B,IAChC75B,GAAQhE,EAAG,aAAc0C,EAAGm7B,IAC5B35B,GAAQlE,EAAG,YAAa0C,EAAGm7B,IAC3Be,GAAQ5+B,EAAG,cAAe0C,EAAGm7B,IAC7BgB,IAAQ7+B,EAAG,sBAAuB0C,EAAGm7B,IACrCiB,IAAQ9+B,EAAG,YAAa0C,EAAGo7B,IAC3BiB,IAAQ/+B,EAAG,eAAgB0C,EAAG27B,GAAYN,IAC1CiB,IAAQh/B,EAAG,gBAAiB0C,EAAG27B,GAAYJ,IAC3CgB,IAAQj/B,EAAG,UAAW0C,EAAG47B,IACzBY,IAAQl/B,EAAG,UAAW0C,EAAG47B,IACzBa,IAAQn/B,EAAG,gBAAiB0C,EAAGo7B,IAC/BsB,IAAQp/B,EAAG,iBAAkB0C,EAAGm7B,IAChCwB,IAAQr/B,EAAG,YAAa0C,EAAGo7B,IAC3BwB,IAAQt/B,EAAG,oBAAqB0C,EAAGo7B,IACnCntB,IAAQ3Q,EAAG,aAAc0C,EAAGm7B,GAAO/nB,EAAG,WACtClF,IAAQ5Q,EAAG,SAAU0C,EAAGy7B,IACxBrtB,IAAQ9Q,EAAG,cAAe0C,EAAG47B,IAC7BvtB,IAAQ/Q,EAAG,gBAAiB0C,EAAG47B,IAC/BttB,IAAQhR,EAAG,WAAY0C,EAAG47B,IAC1BrtB,IAAQjR,EAAG,UAAW0C,EAAG47B,IACzB9hC,OAEA+iC,YAAcv/B,EAAG,SAAU0C,EAAGs7B,IAC9BwB,YAAcx/B,EAAG,WAAY0C,EAAGs7B,IAChCyB,cAIA,IAAIC,KACJnkC,GAAQyE,EAAG,WAAY0C,EAAGk7B,IAC1BpiC,GAAQwE,EAAG,QAAS0C,EAAG47B,IACvBI,GAAQ1+B,EAAG,UAAW0C,EAAG47B,IACzBK,GAAQ3+B,EAAG,SAAU0C,EAAG47B,IACxB16B,GAAQ5D,EAAG,WAAY0C,EAAG47B,IAC1Bx6B,GAAQ9D,EAAG,WAAY0C,EAAG47B,IAC1Bt6B,GAAQhE,EAAG,WAAY0C,EAAG47B,IAC1Bp6B,GAAQlE,EAAG,aAAc0C,EAAG47B,IAC5BM,GAAQ5+B,EAAG,YAAa0C,EAAG47B,IAC3BO,IAAQ7+B,EAAG,WAAY0C,EAAGw7B,IAC1BY,IAAQ9+B,EAAG,cAAe0C,EAAGw7B,IAC7Ba,IAAQ/+B,EAAG,cAAe0C,EAAGw7B,IAC7Bc,IAAQh/B,EAAG,eAAgB0C,EAAGw7B,IAC9Be,IAAQj/B,EAAG,YAAa0C,EAAGm7B,IAC3BqB,IAAQl/B,EAAG,YAAa0C,EAAGm7B,IAC3BsB,IAAQn/B,EAAG,YAAa0C,EAAGm7B,IAC3BuB,IAAQp/B,EAAG,YAAa0C,EAAG07B,IAC3BuB,IAAQ3/B,EAAG,cAAe0C,EAAG47B,IAC7Be,IAAQr/B,EAAG,cAAe0C,EAAGm7B,IAC7BrhC,OAEA+iC,YAAcv/B,EAAG,SAAU0C,EAAGs7B,IAC9BwB,YAAcx/B,EAAG,WAAY0C,EAAGs7B,IAChCyB,cAIA,IAAIG,KACJrkC,EAAQ,KACRC,EAAQ,KACRkjC,EAAQ,GACR16B,EAAQ,KACR67B,GAAQ,KACR3uB,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRE,GAAQ,KACRsuB,GAAQ,KACR17B,GAAQ,KACRE,GAAQ,KACRC,GAAQ,KACRw7B,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRC,GAAQ,KACRxuB,GAAQ,KACRG,GAAQ,KACRM,GAAQ,KACRrO,GAAQ,KACRI,GAAQ,KACR+O,GAAQ,KACRktB,GAAQ,KACRC,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,IAAOnU,GAAO,MAAOA,GAAIlvB,IAAI,SAASN,GAAK,OAASA,GAAG,GAAI,IAAKA,GAAG,EAAG,IAAIA,EAAE,OAIrF,GAAI4jC,IAAUD,IAEb,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,SACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,GAED,IAAIE,IAASnU,GAAIkU,GAGjB,IAAIxF,KACJhhC,EAAM,SACN0I,EAAM,UACNk7B,GAAM,UACNvuB,GAAM,QACNM,GAAM,SACNO,GAAM,QACNnN,GAAM,OACNC,GAAM,gBACN9H,IAAM,QAEN,IAAIwlC,IAAQpV,EAAU0P,GAKtB,IAAI2F,KAEHC,6EAA8E,YAC9EC,uDAAwD,YACxDC,0DAA2D,YAC3DC,uDAAwD,YACxDC,gFAAiF,YAGjFC,4EAA6E,SAC7EC,qCAAsC,SACtCC,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;AACnCC,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,OAEblL,MAAS,KAGV,IAAImL,KACFC,WACCzT,KAAM,6EACN0T,KAAM,uDACNC,KAAM,0DACNC,KAAM,uDACNC,KAAM,iFAEPC,MACC9T,KAAM,gFACN2T,KAAM,0CAEPI,UACC/T,KAAM,2EACN2T,KAAM,qCAEPrL,QACCtI,KAAM,4EACN2T,KAAM,sCAEPK,QACChU,KAAM,6EACN2T,KAAM,uCAEPM,SACCjU,KAAM,8EACN2T,KAAM,wCAEPO,QACClU,KAAM,0CACN2T,KAAM,uCAEPQ,UACCnU,KAAM,gFACN2T,KAAM,0CAEPS,QACCpU,KAAM,yEACN2T,KAAM,mCAIT,SAASU,MACR,OACCZ,aAAcnL,UAAW0L,UAAWC,WAAYC,UAChDI,QAASR,QAASC,YAAaQ,oBAAqBC,SACpDC,aAAcC,YAAaC,aAAcC,UAAWR,UACpDS,cAAeC,OAASC,YAAcZ,YAAca,UACpDC,QAASC,MAAO,IAGlB,QAASC,IAASrsC,GACjB,GAAI8e,GAAKysB,IACT,KAAIvrC,IAASA,EAAKiN,MAAO,MAAO6R,EAChC,IAAIwtB,OACHtsC,EAAKiN,MAAMomB,SAAe9c,QAAQ,SAAStV,GAC3C,GAAI6H,GAAI0qB,GAAYvyB,EACpB,QAAO6H,EAAE,GAAG5G,QAAQoxB,GAAQ,MAC3B,IAAK,QAAS,MACd,IAAK,SAAUxU,EAAGstB,MAAQtjC,EAAE,SAAWA,EAAE,GAAGmE,MAAM,aAAa,GAAG,KAAK,GAAM,OAC7E,IAAK,WAAYq/B,EAAMxjC,EAAEyjC,WAAazjC,EAAE0jC,WAAa,OACrD,IAAK,YACJ,GAAG1tB,EAAGkmB,GAAQl8B,EAAE0jC,gBAAkBnqC,UAAWyc,EAAGkmB,GAAQl8B,EAAE0jC,cAAchoC,KAAKsE,EAAE2jC,SAC/E,UAGH,IAAG3tB,EAAGstB,QAAU/U,GAAMI,GAAI,KAAM,IAAI1zB,OAAM,sBAAwB+a,EAAGstB,MACrEttB,GAAG4tB,UAAY5tB,EAAGitB,WAAW3rC,OAAS,EAAI0e,EAAGitB,WAAW,GAAK,EAC7DjtB,GAAG6tB,IAAM7tB,EAAGksB,KAAK5qC,OAAS,EAAI0e,EAAGksB,KAAK,GAAK,EAC3ClsB,GAAG8tB,MAAQ9tB,EAAGwsB,OAAOlrC,OAAS,EAAI0e,EAAGwsB,OAAO,GAAK,EACjDxsB,GAAG+tB,SAAWP,QACPxtB,GAAGitB,UACV,OAAOjtB,GAGR,GAAIguB,IAAiBhW,GAAU,QAAS,MACvCsV,MAAS/U,GAAMI,GACfsV,YAAa1V,GAAMc,IACnB6U,YAAa3V,GAAMa,KAGpB,SAAS+U,IAASnuB,EAAIxW,GACrB,GAAI4kC,GAAsCtd,EAAUoV,GAEpD,IAAI/kC,MAAQuF,CACZvF,GAAEA,EAAEG,QAAU,EACdH,GAAEA,EAAEG,QAAU,EACdH,GAAIA,EAAE4E,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,6DACRtD,IAAI,SAASN,GACd,MAAO61B,IAAU,UAAW,MAAOyV,UAAYtrC,EAAE,GAAIurC,YAAevrC,EAAE,OAIvE,IAAIksC,GAAK,SAASriC,GACjB,GAAGgU,EAAGhU,IAAMgU,EAAGhU,GAAG1K,OAAS,EAAG,CAC7BoF,EAAIsZ,EAAGhU,GAAG,EACV7K,GAAEA,EAAEG,QAAW02B,GAAU,WAAY,MACpC2V,UAAajnC,EAAE,IAAM,IAAM,GAAG,KAAOA,EACrCgnC,YAAe9B,GAAQ5/B,GAAGxC,EAAK8kC,WAAa1C,GAAQ5/B,GAAG,WAM1D,IAAIuiC,GAAK,SAASviC,IAChBgU,EAAGhU,QAAQyL,QAAQ,SAAS/Q,GAC5BvF,EAAEA,EAAEG,QAAW02B,GAAU,WAAY,MACpC2V,UAAajnC,EAAE,IAAM,IAAM,GAAG,KAAOA,EACrCgnC,YAAe9B,GAAQ5/B,GAAGxC,EAAK8kC,WAAa1C,GAAQ5/B,GAAG,YAM1D,IAAIwiC,GAAK,SAAS7nC,IAChBqZ,EAAGrZ,QAAQ8Q,QAAQ,SAAS/Q,GAC5BvF,EAAEA,EAAEG,QAAW02B,GAAU,WAAY,MACpC2V,UAAajnC,EAAE,IAAM,IAAM,GAAG,KAAOA,EACrCgnC,YAAeU,EAAQznC,GAAG,OAK7B0nC,GAAG,YACHE,GAAG,SACHA,GAAG,SACHC,GAAG,WACF,OAAQ,UAAU/2B,QAAQ42B,IAC1B,YAAa,WAAY,aAAa52B,QAAQ+2B,EAC/CA,GAAG,MACHA,GAAG,WACHA,GAAG,mBACHA,GAAG,WACHD,GAAG,WACHC,GAAG,SACH,IAAGrtC,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,UAAcH,GAAE,GAAGA,EAAE,GAAGiC,QAAQ,KAAK,KACnE,MAAOjC,GAAEQ,KAAK,IAGf,GAAIi3B,KACH6V,GAAI,qFACJC,MAAO,qFACPC,MAAO,gFACPC,IAAK,iFACLC,MAAO,uFACPC,MAAO,0FACPC,MAAO,mFACPC,KAAM,gFACNC,MAAO,qFACPC,KAAM,+EACN1W,WAAY,wFACZE,UAAW,0FACXD,WAAY,wFACZ0W,IAAK,oFACLC,IAAK,6EACLC,MAAO,4EACPC,MAAO,4EACPC,QAAS,iEACTC,GAAI,iFACJC,IACC,gFACA,qEAEDC,GAAI,kFACJC,GAAI,sEACJC,IAAK,4EACLC,KAAM,8EACNC,OAAQ,oFACRjX,MAAO,4EACPkX,OAAQ,mEACRC,IAAK,oEAKN,SAASC,IAAcp0B,GACtB,GAAI5X,GAAI4X,EAAK7K,YAAY,IACzB,OAAO6K,GAAK7Z,MAAM,EAAEiC,EAAE,GAAK,SAAW4X,EAAK7Z,MAAMiC,EAAE,GAAK,QAGzD,QAASisC,IAAWhvC,EAAMivC,GACzB,GAAIzD,IAAQ0D,SACZ,KAAKlvC,EAAM,MAAOwrC,EAClB,IAAIyD,EAAgBjtC,OAAO,KAAO,IAAK,CACtCitC,EAAkB,IAAIA,EAEvB,GAAI3oB,OAEHtmB,EAAKiN,MAAMomB,SAAe9c,QAAQ,SAAStV,GAC3C,GAAI6H,GAAI0qB,GAAYvyB,EAEpB,IAAI6H,EAAE,KAAO,gBAAiB,CAC7B,GAAIqmC,KAAUA,GAAIC,KAAOtmC,EAAEsmC,IAAMD,GAAIE,OAASvmC,EAAEumC,MAAQF,GAAIG,GAAKxmC,EAAEwmC,EAAI,IAAGxmC,EAAEymC,WAAYJ,EAAII,WAAazmC,EAAEymC,UAC3G,IAAIC,GAAgB1mC,EAAEymC,aAAe,WAAazmC,EAAEumC,OAAStc,GAAajqB,EAAEumC,OAAQJ,EACpFzD,GAAKgE,GAAiBL,CACtB7oB,GAAKxd,EAAEwmC,IAAMH,IAGf3D,GAAK,OAASllB,CACd,OAAOklB,GAIR,GAAIiE,IAAY3Y,GAAU,gBAAiB,MAE1CsV,MAAS/U,GAAMK,MAIhB,SAASgY,IAAWlE,GACnB,GAAIvrC,IAAKkzB,GAAYsc,GACrBxgB,GAAKuc,EAAK,QAAQj1B,QAAQ,SAASo5B,GAClC1vC,EAAEA,EAAEG,QAAW02B,GAAU,eAAgB,KAAM0U,EAAK,OAAOmE,KAE5D,IAAG1vC,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,kBAAsBH,GAAE,GAAGA,EAAE,GAAGiC,QAAQ,KAAK,KAC3E,MAAOjC,GAAEQ,KAAK,IAGf,GAAImvC,KAAelY,GAAK+V,MAAO/V,GAAKiW,MAAOjW,GAAKkW,MAChD,SAASiC,IAASrE,EAAMsE,EAAKl+B,EAAG9F,EAAMikC,EAAQC,GAC7C,IAAID,EAAQA,IACZ,KAAIvE,EAAK,OAAQA,EAAK,SACtB,KAAIA,EAAK,QAASA,EAAK,QAAU,CACjC,IAAGsE,EAAM,EAAG,IAAIA,EAAMtE,EAAK,QAASA,EAAK,OAAO,MAAQsE,KAAQA,EAAI,EACpEtE,EAAK,QAAUsE,EAAM,CACrBC,GAAOT,GAAK,MAAQQ,CACpBC,GAAOX,KAAOtjC,CACdikC,GAAOV,OAASz9B,CAChB,IAAGo+B,EAAYD,EAAOR,WAAaS,MAC9B,IAAGJ,GAAYjwC,QAAQowC,EAAOX,OAAS,EAAGW,EAAOR,WAAa,UACnE,IAAG/D,EAAK,OAAOuE,EAAOT,IAAK,KAAM,IAAIvrC,OAAM,sBAAwB+rC,EACnEtE,GAAK,OAAOuE,EAAOT,IAAMS,CACzBvE,IAAM,IAAMuE,EAAOV,QAAQntC,QAAQ,KAAK,MAAQ6tC,CAChD,OAAOD,GAIR,GAAIG,IAAS,gDACb,SAASC,IAAe3rC,EAAG+D,GAC1B,GAAImG,GAAM0oB,GAAe5yB,EACzB,IAAI4rC,EACJ,IAAIC,EACJ,OAAOD,EAAK/Y,GAAUiZ,KAAK5hC,GAAO,OAAO0hC,EAAG,IAC3C,IAAK,WAAY,MACjB,IAAK,aACJC,EAAQ5c,GAAY2c,EAAG,GAAI,MAC3B,IAAGC,EAAMxuB,MAAQ,KAAOwuB,EAAMtkC,OAASmkC,GAAQ,KAAM,IAAIlsC,OAAM,yCAC/D,OACD,IAAK,mBACL,IAAK,aACL,IAAK,wBACL,IAAK,iBACJ,KAAM,IAAIA,OAAM,8BACjB,QAAS,GAAGuE,GAAQA,EAAKouB,IAAK,KAAMyZ,KAItC,QAASG,IAAeC,GACvB,GAAItwC,IAAKkzB,GACTlzB,GAAEuE,KAAK,mHACPvE,GAAEuE,KAAK,gJACP,KAAI,GAAItE,GAAI,EAAGA,EAAIqwC,EAASnwC,SAAUF,EAAGD,EAAEuE,KAAK,8CAAgD+rC,EAASrwC,GAAG,GAAK,0BAA4BqwC,EAASrwC,GAAG,GAAK,QAC9JD,GAAEuE,KAAK,uBACP,OAAOvE,GAAEQ,KAAK,IAIf,QAAS+vC,IAAe71B,EAAMiY,EAAKa,GAClC,OACC,iCAAmC9Y,EAAO,OAC1C,8EAAgF8Y,GAAO,OAAS,IAAMb,EAAM,QAC5G,0BACCnyB,KAAK,IAER,QAASgwC,IAAcxiC,EAAM0M,GAC5B,OACC,iCAAmC1M,EAAO,OAC1C,iGAAmG0M,EAAO,QAC1G,0BACCla,KAAK,IAER,QAASiwC,IAAUC,GAClB,GAAI1wC,IAAKkzB,GACTlzB,GAAEuE,KAAK,sEACP,KAAI,GAAItE,GAAI,EAAGA,GAAKywC,EAAIvwC,SAAUF,EAAG,CACpCD,EAAEuE,KAAKgsC,GAAeG,EAAIzwC,GAAG,GAAIywC,EAAIzwC,GAAG,IACxCD,GAAEuE,KAAKisC,GAAc,GAAGE,EAAIzwC,GAAG,KAEhCD,EAAEuE,KAAKgsC,GAAe,GAAG,WAAY,OACrCvwC,GAAEuE,KAAK,aACP,OAAOvE,GAAEQ,KAAK,IAGf,QAASmwC,MACR,MAAO,mSAAqS,MAAQ9yC,EAAKE,QAAU,yDAKpU,GAAIs5B,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,IAAIuZ,IAAmB,WACtB,GAAIljC,GAAI,GAAIxK,OAAMm0B,GAAWl3B,OAC7B,KAAI,GAAIF,GAAI,EAAGA,EAAIo3B,GAAWl3B,SAAUF,EAAG,CAC1C,GAAI0R,GAAI0lB,GAAWp3B,EACnB,IAAIkyB,GAAI,MAAOxgB,EAAE,GAAG9Q,MAAM,EAAE8Q,EAAE,GAAGjS,QAAQ,MAAO,KAAMiS,EAAE,GAAG9Q,MAAM8Q,EAAE,GAAGjS,QAAQ,KAAK,EACnFgO,GAAEzN,GAAK,GAAIkW,QAAO,IAAMgc,EAAI,uBAA0BA,EAAI,KAE3D,MAAOzkB,KAGR,SAASmjC,IAAiB9wC,GACzB,GAAI6Y,KACJ7Y,GAAOu1B,GAASv1B,EAEhB,KAAI,GAAIE,GAAI,EAAGA,EAAIo3B,GAAWl3B,SAAUF,EAAG,CAC1C,GAAI0R,GAAI0lB,GAAWp3B,GAAI6wC,EAAM/wC,EAAKiN,MAAM4jC,GAAiB3wC,GACzD,IAAG6wC,GAAO,MAAQA,EAAI3wC,OAAS,EAAGyY,EAAEjH,EAAE,IAAM2iB,GAAYwc,EAAI,GAC5D,IAAGn/B,EAAE,KAAO,QAAUiH,EAAEjH,EAAE,IAAKiH,EAAEjH,EAAE,IAAM0e,GAAUzX,EAAEjH,EAAE,KAGxD,MAAOiH,GAGR,QAASm4B,IAAQp/B,EAAGwgB,EAAG/N,EAAGpkB,EAAG4Y,GAC5B,GAAGA,EAAEjH,IAAM,MAAQwgB,GAAK,MAAQA,IAAM,GAAI,MAC1CvZ,GAAEjH,GAAKwgB,CACPA,GAAIwC,GAAUxC,EACdnyB,GAAEA,EAAEG,QAAWikB,EAAIyS,GAAUllB,EAAEwgB,EAAE/N,GAAKuS,GAAShlB,EAAEwgB,GAGlD,QAAS6e,IAAiBvxC,EAAIghB,GAC7B,GAAIpY,GAAOoY,KACX,IAAIzgB,IAAKkzB,GAAY2D,GAAU,oBAAqB,MAEnDoa,WAAY7Z,GAAMC,WAClB6Z,WAAY9Z,GAAMO,GAClBwZ,gBAAiB/Z,GAAMQ,QACvBwZ,iBAAkBha,GAAMS,SACxBkV,YAAa3V,GAAMa,OACfrf,IACL,KAAInZ,IAAO4I,EAAKgpC,MAAO,MAAOrxC,GAAEQ,KAAK,GAErC,IAAGf,EAAI,CACN,GAAGA,EAAG6xC,aAAe,KAAMP,GAAQ,wBAA0BtxC,GAAG6xC,cAAgB,SAAW7xC,EAAG6xC,YAAcxa,GAAar3B,EAAG6xC,YAAajpC,EAAKouB,MAAO8a,WAAW,kBAAmBvxC,EAAG4Y,EACtL,IAAGnZ,EAAG+xC,cAAgB,KAAMT,GAAQ,yBAA2BtxC,GAAG+xC,eAAiB,SAAW/xC,EAAG+xC,aAAe1a,GAAar3B,EAAG+xC,aAAcnpC,EAAKouB,MAAO8a,WAAW,kBAAmBvxC,EAAG4Y,GAG5L,IAAI,GAAI3Y,GAAI,EAAGA,GAAKo3B,GAAWl3B,SAAUF,EAAG,CAC3C,GAAI0R,GAAI0lB,GAAWp3B,EACnB,IAAIsF,GAAI8C,EAAKgpC,OAAShpC,EAAKgpC,MAAM1/B,EAAE,KAAO,KAAOtJ,EAAKgpC,MAAM1/B,EAAE,IAAMlS,EAAKA,EAAGkS,EAAE,IAAM,IACpF,IAAGpM,IAAM,KAAMA,EAAI,QACd,IAAGA,IAAM,MAAOA,EAAI,QACpB,UAAUA,IAAK,SAAUA,EAAIjF,OAAOiF,EACzC,IAAGA,GAAK,KAAMwrC,GAAQp/B,EAAE,GAAIpM,EAAG,KAAMvF,EAAG4Y,GAEzC,GAAG5Y,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,sBAA0BH,GAAE,GAAGA,EAAE,GAAGiC,QAAQ,KAAK,KAC/E,MAAOjC,GAAEQ,KAAK,IAIf,GAAI+2B,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,IAAIka,KACH,aAAe,aACf,cAAe,eACf,cAAe,aAEhB,SAASC,IAAiBC,EAAIC,EAAKC,EAAOxpC,GACzC,GAAI9C,KACJ,UAAUosC,IAAM,SAAUpsC,EAAI+wB,GAAYqb,EAAItpC,OACzC,KAAI,GAAIiE,GAAI,EAAGA,EAAIqlC,EAAGxxC,SAAUmM,EAAG/G,EAAIA,EAAEX,OAAO+sC,EAAGrlC,GAAGhL,IAAI,SAASwwC,GAAM,OAAQvsC,EAAEusC,KACxF,IAAIC,SAAgBH,IAAO,SAAYtb,GAAYsb,EAAKvpC,GAAM/G,IAAI,SAAUN,GAAK,MAAOA,GAAEuE,IAAQqsC,CAClG,IAAI9kC,GAAM,EAAG5M,EAAM,CACnB,IAAG6xC,EAAM5xC,OAAS,EAAG,IAAI,GAAIF,GAAI,EAAGA,IAAMsF,EAAEpF,OAAQF,GAAK,EAAG,CAC3DC,GAAQqF,EAAEtF,EAAE,GAAI,CAChB,QAAOsF,EAAEtF,GAAGsF,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,aACJssC,EAAMG,WAAa9xC,CACnB2xC,GAAMrS,WAAauS,EAAMlxC,MAAMiM,EAAKA,EAAM5M,EAC1C,OAED,IAAK,gBACL,IAAK,qBACL,IAAK,UACL,IAAK,qBACL,IAAK,oBACJ2xC,EAAMI,YAAc/xC,CACpB2xC,GAAMK,aAAeH,EAAMlxC,MAAMiM,EAAKA,EAAM5M,EAC5C,OAED,IAAK,UACL,IAAK,YACJ2xC,EAAMM,YAAcjyC,CACpB2xC,GAAMO,WAAaL,EAAMlxC,MAAMiM,EAAKA,EAAM5M,EAC1C,QAEF4M,GAAO5M,GAIT,QAASmyC,IAAgBtyC,EAAM6Y,EAAGvQ,GACjC,GAAIF,KAAQ,KAAIyQ,EAAGA,IACnB7Y,GAAOu1B,GAASv1B,EAEhBw3B,IAAUjhB,QAAQ,SAAS3E,GAC1B,GAAIiY,IAAO7pB,EAAKiN,MAAM6oB,GAASlkB,EAAE,UAAU,EAC3C,QAAOA,EAAE,IACR,IAAK,SAAU,GAAGiY,EAAKhR,EAAEjH,EAAE,IAAM2iB,GAAY1K,EAAM,OACnD,IAAK,OAAQhR,EAAEjH,EAAE,IAAMiY,IAAQ,MAAQ,OACvC,IAAK,MACJ,GAAIknB,GAAM/wC,EAAKiN,MAAM,GAAImJ,QAAO,IAAMxE,EAAE,GAAK,uBAA0BA,EAAE,GAAK,KAC9E,IAAGm/B,GAAOA,EAAI3wC,OAAS,EAAGgI,EAAEwJ,EAAE,IAAMm/B,EAAI,EACxC,UAIH,IAAG3oC,EAAEmqC,cAAgBnqC,EAAEoqC,cAAeb,GAAiBvpC,EAAEmqC,aAAcnqC,EAAEoqC,cAAe35B,EAAGvQ,EAE3F,OAAOuQ,GAGR,QAAS45B,IAAgB/yC,GACxB,GAAIO,MAAQyyC,EAAI5b,EAChB,KAAIp3B,EAAIA,IACRA,GAAGizC,YAAc,SACjB1yC,GAAEA,EAAEG,QAAU,EACdH,GAAEA,EAAEG,QAAW02B,GAAU,aAAc,MACtCsV,MAAS/U,GAAMG,UACfob,WAAYvb,GAAMY,IAGnBT,IAAUjhB,QAAQ,SAAS3E,GAC1B,GAAGlS,EAAGkS,EAAE,MAAQvP,UAAW,MAC3B,IAAImD,EACJ,QAAOoM,EAAE,IACR,IAAK,SAAUpM,EAAIovB,GAAUr0B,OAAOb,EAAGkS,EAAE,KAAO,OAChD,IAAK,OAAQpM,EAAI9F,EAAGkS,EAAE,IAAM,OAAS,OAAS,QAE/C,GAAGpM,IAAMnD,UAAWpC,EAAEA,EAAEG,QAAWsyC,EAAE9gC,EAAE,GAAIpM,IAI5CvF,GAAEA,EAAEG,QAAWsyC,EAAE,eAAgBA,EAAE,YAAaA,EAAE,aAAc,mCAAmCA,EAAE,aAAcA,EAAE,QAASnyC,OAAOb,EAAGuyC,eAAgBz0B,KAAK,EAAGiZ,SAAS,YACzKx2B,GAAEA,EAAEG,QAAWsyC,EAAE,gBAAiBA,EAAE,YAAahzC,EAAG+/B,WAAWl+B,IAAI,SAAS+B,GAAK,MAAO,aAAesxB,GAAUtxB,GAAK,gBAAkB7C,KAAK,KAAM+c,KAAM9d,EAAGuyC,WAAYxb,SAAS,UACjL,IAAGx2B,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,eAAmBH,GAAE,GAAGA,EAAE,GAAGiC,QAAQ,KAAK,KACxE,MAAOjC,GAAEQ,KAAK,IAGf,GAAIoyC,IAAY,eAChB,SAASC,IAAiB9yC,EAAMsI,GAC/B,GAAIuQ,MAAQqD,EAAO,EACnB,IAAInT,GAAI/I,EAAKiN,MAAM4lC,GACnB,IAAG9pC,EAAG,IAAI,GAAI7I,GAAI,EAAGA,GAAK6I,EAAE3I,SAAUF,EAAG,CACxC,GAAIe,GAAI8H,EAAE7I,GAAI4I,EAAI0qB,GAAYvyB,EAC9B,QAAO6H,EAAE,IACR,IAAK,QAAS,MACd,IAAK,cAAe,MACpB,IAAK,YAAaoT,EAAOqY,GAAYzrB,EAAEoT,KAAO,OAC9C,IAAK,cAAeA,EAAO,IAAM,OACjC,QAAS,GAAIjb,EAAEtB,QAAQ,UAAY,EAAG,CACrC,GAAIozC,GAAO9xC,EAAEsC,MAAM,IACnB,IAAIuI,GAAOinC,EAAK,GAAGjyC,MAAM,GAAI2pB,EAAOsoB,EAAK,EAEzC,QAAOjnC,GACN,IAAK,SAAS,IAAK,QAAQ,IAAK,SAC/B+M,EAAEqD,GAAQqY,GAAY9J,EACtB,OACD,IAAK,OACJ5R,EAAEqD,GAAQmZ,GAAa5K,EACvB,OACD,IAAK,MAAM,IAAK,MAAM,IAAK,MAAM,IAAK,MAAM,IAAK,OAAO,IAAK,OAC5D5R,EAAEqD,GAAQnO,SAAS0c,EAAM,GACzB,OACD,IAAK,MAAM,IAAK,MAAM,IAAK,UAC1B5R,EAAEqD,GAAQxK,WAAW+Y,EACrB,OACD,IAAK,YAAY,IAAK,OACrB5R,EAAEqD,GAAQoU,GAAU7F,EACpB,OACD,IAAK,MAAM,IAAK,QACf5R,EAAEqD,GAAQqY,GAAY9J,EACtB,OACD,QACC,GAAG3e,EAAKhL,OAAO,IAAM,IAAK,KAC1B,IAAGwH,EAAKouB,WAAczT,WAAY,YAAaA,QAAQ+vB,KAAK,aAAc/xC,EAAG6K,EAAMinC,SAE/E,IAAG9xC,EAAEH,MAAM,EAAE,KAAO,KAAM,MAC1B,IAAGwH,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM9C,KAGtC,MAAO4X,GAGR,QAASo6B,IAAiBvzC,GACzB,GAAIO,IAAKkzB,GAAY2D,GAAU,aAAc,MAC5CsV,MAAS/U,GAAME,WACfqb,WAAYvb,GAAMY,KAEnB,KAAIv4B,EAAI,MAAOO,GAAEQ,KAAK,GACtB,IAAIyyC,GAAM,CACVjkB,GAAKvvB,GAAI6W,QAAQ,QAAS48B,GAAS70B,KAAO40B,CACzCjzC,GAAEA,EAAEG,QAAW02B,GAAU,WAAYG,GAASv3B,EAAG4e,GAAI,OACpD80B,MAAS,yCACTF,IAAOA,EACPh3B,KAAQ0Y,GAAUtW,MAGpB,IAAGre,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,eAAiBH,GAAE,GAAGA,EAAE,GAAGiC,QAAQ,KAAK,KACtE,MAAOjC,GAAEQ,KAAK,IAGf,GAAI4yC,KAA0B,EAAM,EAAM,GAAM,GAAM,IAAM,IAAM,IAAM,IACxE,IAAIC,IAAM,WACV,GAAIC,IAEJj1C,EAAQ,IAAeC,EAAQ,IAC/BkjC,EAAO,KAAgBC,EAAM,IAC7B8R,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAerQ,IAAQ,IAC/BsQ,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,KAG9Bv2C,EAAM,MAAiB4I,EAAQ,IAC/B06B,EAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAeE,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BO,GAAQ,IAAeN,GAAQ,IAC/BQ,GAAQ,IAAeiS,GAAQ,IAC/BxS,GAAQ,IAAe3uB,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BE,GAAQ,IAAeG,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/BugC,GAAQ,IAAeC,GAAQ,IAC/BlgC,GAAQ,IAAe/N,GAAQ,IAC/BtI,GAAQ,IAAesX,GAAQ,IAC/BC,GAAQ,IAAeC,GAAQ,IAC/Bg/B,GAAO,KAAgBC,GAAO,KAC9BC,GAAO,KAAgBC,IAAQ,IAC/Bv2C,IAAQ,IAAew2C,IAAQ,IAC/Bv2C,IAAQ,IAAeO,IAAO,KAE9BG,IAAM,MAEN,IAAI81C,GAAkB3lB,GACtBpxB,EAAQ,IAAeC,EAAQ,IAC/BkjC,EAAO,KAAgBC,EAAM,IAC7B8R,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAeC,IAAQ,IAC/BC,IAAQ,IAAerQ,IAAQ,IAC/BsQ,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,KAC9Bv2C,EAAM,OAGN,SAASi3C,GAAW3yC,EAAK2F,GACxB,GAAInE,KACJ,IAAII,GAAKtB,EAAY,EACrB,QAAOqF,EAAKwD,MACX,IAAK,SAAUvH,EAAIlB,EAAI/B,EAAOW,OAAOU,GAAO,OAC5C,IAAK,SAAU4B,EAAIlB,EAAIV,EAAM,OAC7B,IAAK,UACL,IAAK,QAAS4B,EAAI5B,CAAK,QAExBqX,GAAUzV,EAAG,EAGb,IAAIgxC,GAAKhxC,EAAEgV,WAAW,EACtB,IAAIi8B,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,IAAI3xC,OAAM,4BAA8BwxC,EAAGnrC,SAAS,MAGpE,GAAIurC,GAAO,EAAGC,EAAO,GACrB,IAAGL,GAAM,EAAMI,EAAOpxC,EAAEgV,WAAW,EACnChV,GAAEe,GAAK,CACP,IAAGiwC,GAAM,EAAMI,EAAOpxC,EAAEgV,WAAW,EACnC,IAAGo8B,EAAO,QAASA,EAAO,GAE1B,IAAGJ,GAAM,EAAMK,EAAOrxC,EAAEgV,WAAW,EACnC,IAAIs8B,GAAOtxC,EAAEgV,WAAW,EAExB,IAAmBu8B,GAAaxtC,EAAKytC,UAAY,IACjD,IAAGR,GAAM,EAAM,CACdhxC,EAAEe,GAAG,EACOf,GAAEgV,WAAW,EAIzB,IAAGhV,EAAEA,EAAEe,KAAO,EAAGwwC,EAAavC,EAAiBhvC,EAAEA,EAAEe,GACnDf,GAAEe,GAAG,CAELf,GAAEe,GAAG,EAEN,GAAGowC,EAAInxC,EAAEe,GAAK,EAEf,IAAI0wC,MAAaC,IAChB,IAAIC,GAAOrwC,KAAKyJ,IAAI/K,EAAEnE,OAASm1C,GAAM,EAAO,IAASK,EAAO,IAAMH,EAAM,IAAM,GAC9E,IAAI9f,GAAK+f,EAAK,GAAK,EACnB,OAAMnxC,EAAEe,EAAI4wC,GAAQ3xC,EAAEA,EAAEe,IAAM,GAAM,CACnC2wC,IACAA,GAAM/5B,KAAO6e,SAAS5O,MAAMlqB,OAAO6zC,EAAYvxC,EAAEzD,MAAMyD,EAAEe,EAAGf,EAAEe,EAAEqwB,IAAKzzB,QAAQ,mBAAmB,GAChGqC,GAAEe,GAAKqwB,CACPsgB,GAAMnqC,KAAOvL,OAAOC,aAAa+D,EAAEgV,WAAW,GAC9C,IAAGg8B,GAAM,IAASG,EAAIO,EAAMh3B,OAAS1a,EAAEgV,WAAW,EAClD08B,GAAM91C,IAAMoE,EAAEgV,WAAW,EACzB,IAAGg8B,GAAM,EAAMU,EAAMh3B,OAAS1a,EAAEgV,WAAW,EAC3C08B,GAAMpnC,IAAMtK,EAAEgV,WAAW,EACzB,IAAG08B,EAAM/5B,KAAK9b,OAAQ41C,EAAOxxC,KAAKyxC,EAClC,IAAGV,GAAM,EAAMhxC,EAAEe,GAAKowC,EAAK,GAAK,EAChC,QAAOO,EAAMnqC,MACZ,IAAK,IACJ,KAAK2pC,GAAOQ,EAAM91C,KAAO,IAAMmI,EAAKouB,IAAKzT,QAAQ5X,IAAI,YAAc4qC,EAAM/5B,KAAO,IAAM+5B,EAAMnqC,KAC5F,OACD,IAAK,KACL,IAAK,IACJ,GAAGxD,EAAKouB,IAAKzT,QAAQ5X,IAAI,YAAc4qC,EAAM/5B,KAAO,IAAM+5B,EAAMnqC,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/H,OAAM,uBAAyBkyC,EAAMnqC,QAI1D,GAAGvH,EAAEA,EAAEe,KAAO,GAAMf,EAAEe,EAAIswC,EAAK,CAC/B,IAAGrxC,EAAEgV,WAAW,KAAO,GAAM,KAAM,IAAIxV,OAAM,4BAA8BQ,EAAEe,EAAI,IAAMf,EAAEA,EAAEe,GAC3Ff,GAAEe,EAAIswC,CAGN,IAAIl9B,GAAI,EAAGP,EAAI,CACfhU,GAAI,KACJ,KAAIgU,EAAI,EAAGA,GAAK69B,EAAO51C,SAAU+X,EAAGhU,EAAI,GAAGgU,GAAK69B,EAAO79B,GAAG+D,IAC1D,OAAMy5B,KAAS,EAAG,CACjB,GAAGpxC,EAAEA,EAAEe,KAAO,GAAM,CAEnBf,EAAEe,GAAGuwC,CACL,YAECtxC,EAAEe,CACJnB,KAAMuU,KAASP,GAAI,CACnB,KAAIA,EAAI,EAAGA,GAAK69B,EAAO51C,SAAU+X,EAAG,CACnC,GAAIvJ,GAAKrK,EAAEzD,MAAMyD,EAAEe,EAAGf,EAAEe,EAAE0wC,EAAO79B,GAAGhY,IAAMoE,GAAEe,GAAG0wC,EAAO79B,GAAGhY,GACzD6Z,IAAUpL,EAAI,EACd,IAAItL,GAAIy3B,SAAS5O,MAAMlqB,OAAO6zC,EAAYlnC,EAC1C,QAAOonC,EAAO79B,GAAGrM,MAChB,IAAK,IAEJ,GAAGxI,EAAEgoB,OAAOlrB,OAAQ+D,EAAIuU,GAAGP,GAAK7U,EAAEpB,QAAQ,OAAO,GACjD,OACD,IAAK,IACJ,GAAGoB,EAAElD,SAAW,EAAG+D,EAAIuU,GAAGP,GAAK,GAAI9O,OAAM/F,EAAExC,MAAM,EAAE,IAAKwC,EAAExC,MAAM,EAAE,GAAG,GAAIwC,EAAExC,MAAM,EAAE,QAC9EqD,GAAIuU,GAAGP,GAAK7U,CACjB,OACD,IAAK,IAAKa,EAAIuU,GAAGP,GAAKzG,WAAWpO,EAAEgoB,OAAS,OAC5C,IAAK,KAAK,IAAK,IAAKnnB,EAAIuU,GAAGP,GAAKu9B,EAAK9mC,EAAG2K,YAAY,EAAG,KAAO,WAAa3K,EAAG2K,WAAW,EAAG,IAAM,OAClG,IAAK,IAAK,OAAOjW,EAAEgoB,OAAO9f,eACzB,IAAK,KAAK,IAAK,IAAKrH,EAAIuU,GAAGP,GAAK,IAAM,OACtC,IAAK,KAAK,IAAK,IAAKhU,EAAIuU,GAAGP,GAAK,KAAO,OACvC,IAAK,IAAI,IAAK,IAAK,MACnB,QAAS,KAAM,IAAIpU,OAAM,uBAAyBT,EAAI,MACpD,MACH,IAAK,IACJ,IAAIkyC,EAAM,KAAM,IAAIzxC,OAAM,gCAAkCwxC,EAAGnrC,SAAS,IACxEjG,GAAIuU,GAAGP,GAAK,YAAcu9B,EAAK3nC,SAASzK,EAAEgoB,OAAQ,IAAK1c,EAAG2K,WAAW,GACrE,OACD,IAAK,IACJjW,EAAIA,EAAEpB,QAAQ,UAAU,IAAIopB,MAE5B,IAAGhoB,GAAKA,GAAK,IAAKa,EAAIuU,GAAGP,IAAM7U,GAAK,CAAG,OACxC,IAAK,IAEJa,EAAIuU,GAAGP,GAAK,GAAI9O,MAAKuF,EAAG2K,YAAY,EAAG,KAAO,YAC9C,OACD,IAAK,IAAKpV,EAAIuU,GAAGP,GAAK,GAAI9O,OAAMuF,EAAG2K,WAAW,GAAK,SAAY,MAAY3K,EAAG2K,WAAW,GAAK,OAC9F,IAAK,IAAKpV,EAAIuU,GAAGP,GAAKvJ,EAAG2K,WAAW,EAAE,KAAK,IAAO3K,EAAG2K,WAAW,EAAG,KAAK,IAAK1T,KAAKI,IAAI,EAAE,GAAK,OAC7F,IAAK,IAAK9B,EAAIuU,GAAGP,IAAMvJ,EAAG2K,YAAY,EAAG,IAAM,OAC/C,IAAK,IAAK,GAAGk8B,GAAOO,EAAO79B,GAAGhY,KAAO,EAAG,CAAEgE,EAAIuU,GAAGP,GAAKvJ,EAAG2K,WAAW,EAAE,IAAM,QAE5E,IAAK,KAAK,IAAK,IAAK3K,EAAGtJ,GAAK0wC,EAAO79B,GAAGhY,GAAK,OAC3C,IAAK,IACJ,GAAG61C,EAAO79B,GAAG+D,OAAS,aAAc,MAErC,QAAS,KAAM,IAAInY,OAAM,6BAA+BiyC,EAAO79B,GAAGrM,SAIrE,GAAGypC,GAAM,EAAM,GAAGhxC,EAAEe,EAAIf,EAAEnE,QAAUmE,EAAEA,EAAEe,MAAQ,GAAM,KAAM,IAAIvB,OAAM,2BAA6BQ,EAAEe,EAAE,GAAK,OAASf,EAAEnE,OAAS,IAAMmE,EAAEA,EAAEe,EAAE,GAAG8E,SAAS,IACxJ,IAAG9B,GAAQA,EAAK6tC,UAAWhyC,EAAMA,EAAIrD,MAAM,EAAGwH,EAAK6tC,UACnD7tC,GAAKgrC,IAAM0C,CACX,OAAO7xC,GAGR,QAASiyC,GAAazzC,EAAK2F,GAC1B,GAAIrI,GAAIqI,KACR,KAAIrI,EAAE+R,OAAQ/R,EAAE+R,OAAS,UACzB,IAAI8tB,GAAKY,GAAa4U,EAAW3yC,EAAK1C,GAAIA,EAC1C6/B,GAAG,SAAW7/B,EAAEqzC,IAAI/xC,IAAI,SAAS00C,GAAS,OACzCI,IAAKJ,EAAM91C,IACXmzC,IAAK2C,WAECh2C,GAAEqzC,GACT,OAAOxT,GAGR,QAASwW,GAAgB3zC,EAAK2F,GAC7B,IAAM,MAAOg3B,IAAkB8W,EAAazzC,EAAK2F,GAAOA,GACxD,MAAM5F,GAAK,GAAG4F,GAAQA,EAAKouB,IAAK,KAAMh0B,GACtC,OAAS+8B,cAAcC,WAGxB,GAAI6W,IAAU5uC,EAAK,EAAGwQ,EAAK,IAAK9T,EAAK,EAAGmD,EAAK,EAAGgvC,IAAK,EAAGC,GAAI,EAC5D,SAASC,GAAa5W,EAAIx3B,GACzB,GAAIrI,GAAIqI,KACR,KAAIrI,EAAE81C,UAAY,EAAGl2C,GAAQI,EAAE81C,SAC/B,IAAG91C,EAAE6L,MAAQ,SAAU,KAAM,IAAI/H,OAAM,gCACvC,IAAIq5B,GAAKb,IACT,IAAIoa,GAAMC,GAAc9W,GAAKrkB,OAAO,EAAGkB,IAAI,KAAM6jB,UAAU,MAC3D,IAAIqW,GAAUF,EAAI,GAAI32C,EAAO22C,EAAI71C,MAAM,GAAIg2C,EAAOhX,EAAG,YACrD,IAAI5/B,GAAI,EAAGqM,EAAI,EAAGwqC,EAAO,EAAGlB,EAAO,CACnC,KAAI31C,EAAI,EAAGA,EAAI22C,EAAQz2C,SAAUF,EAAG,CACnC,KAAK42C,EAAK52C,QAAQozC,SAASp3B,KAAM,CAAE26B,EAAQ32C,GAAK42C,EAAK52C,GAAGozC,IAAIp3B,OAAQ66B,CAAM,UAC1E,GAAGF,EAAQ32C,IAAM,KAAM,WACrB62C,CACF,UAAUF,GAAQ32C,KAAO,SAAU22C,EAAQ32C,GAAK22C,EAAQ32C,GAAGkK,SAAS,GACpE,UAAUysC,GAAQ32C,KAAO,SAAU,KAAM,IAAI6D,OAAM,2BAA6B8yC,EAAQ32C,GAAK,WAAe22C,GAAQ32C,GAAM,IAC1H,IAAG22C,EAAQl3C,QAAQk3C,EAAQ32C,MAAQA,EAAG,IAAIqM,EAAE,EAAGA,EAAE,OAAOA,EACvD,GAAGsqC,EAAQl3C,QAAQk3C,EAAQ32C,GAAK,IAAMqM,KAAO,EAAG,CAAEsqC,EAAQ32C,IAAM,IAAMqM,CAAG,QAE3E,GAAIoxB,GAAQqB,GAAkBc,EAAG,QACjC,IAAIkX,KACJ,IAAIC,KACJ,IAAIC,KACJ,KAAIh3C,EAAI,EAAGA,GAAKy9B,EAAMj7B,EAAEmB,EAAI85B,EAAMr6B,EAAEO,IAAK3D,EAAG,CAC3C,GAAIi3C,GAAQ,GAAIC,EAAS,GAAIzyC,EAAS,CACtC,IAAI85B,KACJ,KAAIlyB,EAAE,EAAGA,EAAIvM,EAAKI,SAAUmM,EAAG,CAC9B,GAAGvM,EAAKuM,GAAGrM,IAAM,KAAMu+B,EAAIj6B,KAAKxE,EAAKuM,GAAGrM,IAEzC,GAAGu+B,EAAIr+B,QAAU,GAAKy2C,EAAQ32C,IAAM,KAAM,CAAE82C,EAAS92C,GAAK,GAAK,UAC/D,IAAIqM,EAAI,EAAGA,EAAIkyB,EAAIr+B,SAAUmM,EAAG,CAC/B,aAAckyB,GAAIlyB,IAEjB,IAAK,SAAU6qC,EAAS,GAAK,OAC7B,IAAK,SAAUA,EAAS,GAAK,OAC7B,IAAK,UAAWA,EAAS,GAAK,OAC9B,IAAK,SAAUA,EAAS3Y,EAAIlyB,YAAclD,MAAO,IAAM,GAAK,OAC5D,QAAS+tC,EAAS,KAEnBzyC,EAASkB,KAAK0J,IAAI5K,EAAQpE,OAAOk+B,EAAIlyB,IAAInM,OACzC+2C,GAAQA,GAASA,GAASC,EAAS,IAAMA,EAG1C,GAAGzyC,EAAS,IAAKA,EAAS,GAC1ByyC,KAAWN,EAAK52C,QAAQozC,SAASxnC,IAEjC,IAAGsrC,GAAU,IAAK,CACjB,GAAGN,EAAK52C,GAAGozC,IAAInzC,IAAMwE,EAAQA,EAASmyC,EAAK52C,GAAGozC,IAAInzC,IAEnD,GAAGg3C,GAAS,KAAOC,GAAU,IAAK,CACjCD,EAAQ,GACRD,GAAYh3C,GAAK42C,EAAK52C,GAAGozC,IAAIzkC,GAC7BlK,GAASmyC,EAAK52C,GAAGozC,IAAInzC,IAEtB82C,EAAU/2C,GAAKi3C,GAAS,KAAOC,GAAU,IAAMzyC,EAAU4xC,EAAMY,IAAU,CACzEtB,IAAQoB,EAAU/2C,EAClB82C,GAAS92C,GAAKi3C,EAGf,GAAI9yB,GAAI+Y,EAAGN,KAAK,GAChBzY,GAAEjL,YAAY,EAAG,UACjBiL,GAAEjL,YAAY,EAAGpZ,EAAKI,OACtBikB,GAAEjL,YAAY,EAAG,IAAM,GAAK29B,EAC5B1yB,GAAEjL,YAAY,EAAGy8B,EACjB,KAAI31C,EAAE,EAAGA,EAAI,IAAKA,EAAGmkB,EAAEjL,YAAY,EAAG,EACtCiL,GAAEjL,YAAY,EAAG,IAAgBi8B,EAAgBn3C,IAAiB,IAAO,EAEzE,KAAIgC,EAAI,EAAGqM,EAAI,EAAGrM,EAAI22C,EAAQz2C,SAAUF,EAAG,CAC1C,GAAG22C,EAAQ32C,IAAM,KAAM,QACvB,IAAIm3C,GAAKja,EAAGN,KAAK,GACjB,IAAIwa,IAAMT,EAAQ32C,GAAGY,OAAO,IAAM,0BAAgDA,MAAM,EAAG,GAC3Fu2C,GAAGj+B,YAAY,EAAGk+B,EAAI,OACtBD,GAAGj+B,YAAY,EAAG49B,EAAS92C,IAAM,IAAM,IAAM82C,EAAS92C,GAAI,OAC1Dm3C,GAAGj+B,YAAY,EAAG7M,EAClB8qC,GAAGj+B,YAAY,EAAG69B,EAAU/2C,IAAMq2C,EAAMS,EAAS92C,KAAO,EACxDm3C,GAAGj+B,YAAY,EAAG89B,EAAYh3C,IAAM,EACpCm3C,GAAGj+B,YAAY,EAAG,EAClBi+B,GAAGj+B,YAAY,EAAG,EAClBi+B,GAAGj+B,YAAY,EAAG,EAClBi+B,GAAGj+B,YAAY,EAAG,EAClBi+B,GAAGj+B,YAAY,EAAG,EAClB7M,IAAM0qC,EAAU/2C,IAAMq2C,EAAMS,EAAS92C,KAAO,EAG7C,GAAIq3C,GAAKna,EAAGN,KAAK,IACjBya,GAAGn+B,YAAY,EAAG,GAClB,KAAIlZ,EAAE,EAAGA,EAAI,KAAKA,EAAGq3C,EAAGn+B,YAAY,EAAG,EACvC,KAAIlZ,EAAE,EAAGA,EAAIF,EAAKI,SAAUF,EAAG,CAC9B,GAAIs3C,GAAOpa,EAAGN,KAAK+Y,EACnB2B,GAAKp+B,YAAY,EAAG,EACpB,KAAI7M,EAAE,EAAGA,EAAEsqC,EAAQz2C,SAAUmM,EAAG,CAC/B,GAAGsqC,EAAQtqC,IAAM,KAAM,QACvB,QAAOyqC,EAASzqC,IACf,IAAK,IAAKirC,EAAKp+B,YAAY,EAAGpZ,EAAKE,GAAGqM,IAAM,KAAO,GAAOvM,EAAKE,GAAGqM,GAAK,GAAO,GAAO,OACrF,IAAK,IAAKirC,EAAKp+B,YAAY,EAAGpZ,EAAKE,GAAGqM,IAAI,EAAG,IAAM,OACnD,IAAK,IACJ,GAAIkrC,GAAK,GACT,UAAUz3C,GAAKE,GAAGqM,IAAM,SAAUkrC,EAAKz3C,EAAKE,GAAGqM,GAAGxB,QAAQmsC,EAAY3qC,IAAI,EAC1E,KAAIwqC,EAAK,EAAGA,EAAOE,EAAU1qC,GAAGkrC,EAAGr3C,SAAU22C,EAAMS,EAAKp+B,YAAY,EAAG,GACvEo+B,GAAKp+B,YAAY,EAAGq+B,EAAI,OACxB,OACD,IAAK,IACJ,IAAIz3C,EAAKE,GAAGqM,GAAIirC,EAAKp+B,YAAY,EAAG,WAAY,YAC3C,CACJo+B,EAAKp+B,YAAY,GAAI,OAAOpZ,EAAKE,GAAGqM,GAAG/C,eAAe1I,OAAO,GAAI,OACjE02C,GAAKp+B,YAAY,GAAI,MAAMpZ,EAAKE,GAAGqM,GAAG9C,WAAW,IAAI3I,OAAO,GAAI,OAChE02C,GAAKp+B,YAAY,GAAI,KAAKpZ,EAAKE,GAAGqM,GAAGhD,WAAWzI,OAAO,GAAI,QAC1D,MACH,IAAK,IACJ,GAAI42C,GAAKn3C,OAAOP,EAAKE,GAAGqM,IAAM,KAAOvM,EAAKE,GAAGqM,GAAK,IAAIzL,MAAM,EAAGm2C,EAAU1qC,GACzEirC,GAAKp+B,YAAY,EAAGs+B,EAAI,OACxB,KAAIX,EAAK,EAAGA,EAAOE,EAAU1qC,GAAGmrC,EAAGt3C,SAAU22C,EAAMS,EAAKp+B,YAAY,EAAG,GAAO,UAKlFgkB,EAAGN,KAAK,GAAG1jB,YAAY,EAAG,GAC1B,OAAOgkB,GAAGxS,MAEV,OACC+sB,YAAarB,EACbsB,SAAUxB,EACVyB,WAAYnB,KAId,IAAIoB,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,IAAK3yC,EAAE,IAAMwrB,EAAE,IAAM5O,EAAE,IAAMzY,EAAE,IAC1CyuC,GAAG,IAAKC,GAAG,IAAKC,GAAG,IACnBhyC,EAAE,IAAMrF,EAAE,IAAM6U,EAAE,IAAMyiC,KAAK,IAC/B98C,EAAE,IAAQC,EAAE,IAAMC,EAAE,IACpBkjC,EAAE,IAAQ96B,EAAE,IAAME,EAAE,IACpBE,EAAE,IAAQkB,EAAE,IAAMqW,EAAE,IAAM2F,EAAE,IAAM/jB,EAAE,IAAMoF,EAAE,IAAMhC,EAAE,IAAMwF,EAAE,IAC1DsyC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,KAAK,IAC3DC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKC,IAAI,IAAKvF,IAAI,IAAKwF,IAAI,IAE3D,IAAIC,GAAkB,GAAI7lC,QAAO,MAAa6Y,EAAK8oB,GAAct3C,KAAK,KAAKyB,QAAQ,SAAU,SAASA,QAAQ,YAAY,QAAU,QAAS,KAC7I,IAAIg6C,GAAe,SAASC,EAAG7uC,GAAK,GAAIrN,GAAI83C,EAAazqC,EAAK,cAAcrN,IAAK,SAAWiB,EAASjB,GAAKA,EAC1G,IAAIm8C,GAAmB,SAAS/uC,EAAIC,EAAIC,GAAM,GAAI8uC,GAAU/uC,EAAGjN,WAAW,GAAK,IAAO,EAAMkN,EAAGlN,WAAW,GAAK,EAAO,OAAOg8C,IAAS,GAAKhvC,EAAKnM,EAASm7C,GACzJtE,GAAa,KAAO,GAEpB,SAASuE,GAAY/3C,EAAG+D,GACvB,OAAOA,EAAKwD,MACX,IAAK,SAAU,MAAOywC,GAAgBj7C,EAAOW,OAAOsC,GAAI+D,GACxD,IAAK,SAAU,MAAOi0C,GAAgBh4C,EAAG+D,GACzC,IAAK,SAAU,MAAOi0C,GAAgBp6C,GAAWC,OAAOkd,SAAS/a,GAAKA,EAAE6F,SAAS,UAAYzG,EAAIY,GAAI+D,GACrG,IAAK,QAAS,MAAOi0C,GAAgB/rB,GAAOjsB,GAAI+D,IAEjD,KAAM,IAAIvE,OAAM,qBAAuBuE,EAAKwD,MAE7C,QAASywC,GAAgB9tC,EAAKnG,GAC7B,GAAIk0C,GAAU/tC,EAAIlL,MAAM,WAAYmV,GAAK,EAAGP,GAAK,EAAGhJ,EAAK,EAAGstC,EAAK,EAAGhsB,IACpE,IAAIisB,KACJ,IAAIC,GAAmB,IACvB,IAAIC,MAAUC,KAAcC,KAAcC,IAC1C,IAAIC,GAAO,EAAGzwC,CACd,KAAIjE,EAAKytC,UAAY,EAAGl2C,GAAQyI,EAAKytC,SACrC,MAAO5mC,IAAOqtC,EAAQp8C,SAAU+O,EAAI,CACnC6tC,EAAO,CACP,IAAIC,GAAKT,EAAQrtC,GAAImc,OAAOppB,QAAQ,kCAAmCk6C,GAAkBl6C,QAAQ+5C,EAAiBC,EAClH,IAAIgB,GAAOD,EAAK/6C,QAAQ,MAAO,MAAUqB,MAAM,KAAKhC,IAAI,SAASN,GAAK,MAAOA,GAAEiB,QAAQ,UAAW,MAClG,IAAIm6B,GAAG6gB,EAAO,GAAIlxC,CAClB,IAAGixC,EAAK78C,OAAS,EAAG,OAAOi8B,GAC3B,IAAK,KAAM,MACX,IAAK,IAAK,MACV,IAAK,IAAK,MACV,IAAK,IAAK,MACV,IAAK,IAAK,MACV,IAAK,IACJ,GAAG6gB,EAAO,GAAGl7C,OAAO,IAAM,IACzB06C,EAAQl4C,KAAKy4C,EAAKn8C,MAAM,GAAGoB,QAAQ,MAAO,KAC3C,OACD,IAAK,IACL,GAAIi7C,GAAW,MAAOC,EAAW,MAAOC,EAAW,MAAOC,EAAW,MAAOvd,GAAM,EAAGC,GAAM,CAC3F,KAAIyc,EAAG,EAAGA,EAAGS,EAAO98C,SAAUq8C,EAAI,OAAOS,EAAOT,GAAIz6C,OAAO,IAC1D,IAAK,IAAK,MACV,IAAK,IAAKmW,EAAIpK,SAASmvC,EAAOT,GAAI37C,MAAM,IAAI,CAAGs8C,GAAW,IAAM,OAChE,IAAK,IACJ1kC,EAAI3K,SAASmvC,EAAOT,GAAI37C,MAAM,IAAI,CAAG,KAAIs8C,EAAUjlC,EAAI,CACvD,KAAI5L,EAAIkkB,EAAIrwB,OAAQmM,GAAKmM,IAAKnM,EAAGkkB,EAAIlkB,KACrC,OACD,IAAK,IACJP,EAAMkxC,EAAOT,GAAI37C,MAAM,EACvB,IAAGkL,EAAIhK,OAAO,KAAO,IAAKgK,EAAMA,EAAIlL,MAAM,EAAEkL,EAAI5L,OAAS,OACpD,IAAG4L,IAAQ,OAAQA,EAAM,SACzB,IAAGA,IAAQ,QAASA,EAAM,UAC1B,KAAIjK,MAAM+uB,GAAS9kB,IAAO,CAC9BA,EAAM8kB,GAAS9kB,EACf,IAAG2wC,IAAqB,MAAQz3C,EAAIkL,QAAQusC,GAAmB3wC,EAAMgkB,GAAQhkB,OACvE,KAAIjK,MAAMqvB,GAAUplB,GAAKzC,WAAY,CAC3CyC,EAAMskB,GAAUtkB,GAEjB,SAAU+uB,YAAa,mBAAsB/uB,IAAO,WAAc1D,OAAUwD,MAAQ,WAAcxD,OAAUytC,SAAU/pC,EAAM+uB,SAAS5O,MAAMlqB,OAAOqG,EAAKytC,SAAU/pC,EACjKmxC,GAAW,IACX,OACD,IAAK,IACJG,EAAW,IACX,IAAIC,GAAUC,GAASN,EAAOT,GAAI37C,MAAM,IAAK6M,EAAE+K,EAAE7U,EAAEsU,GACnDsY,GAAI/X,GAAGP,IAAMsY,EAAI/X,GAAGP,GAAIolC,EACxB,OACD,IAAK,IACJF,EAAW,IACX5sB,GAAI/X,GAAGP,IAAMsY,EAAI/X,GAAGP,GAAI,MACxB,OACD,IAAK,IAAK,MACV,IAAK,IAAK4nB,EAAKhyB,SAASmvC,EAAOT,GAAI37C,MAAM,IAAI,CAAG,OAChD,IAAK,IAAKk/B,EAAKjyB,SAASmvC,EAAOT,GAAI37C,MAAM,IAAI,CAAG,OAChD,QAAS,GAAGwH,GAAQA,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,mBAAqBk5C,IAEpE,GAAGE,EAAU,CACZ,GAAG1sB,EAAI/X,GAAGP,IAAMsY,EAAI/X,GAAGP,GAAG/X,QAAU,EAAGqwB,EAAI/X,GAAGP,GAAG,GAAKnM,MACjDykB,GAAI/X,GAAGP,GAAKnM,CACjB2wC,GAAmB,KAEpB,GAAGU,EAAU,CACZ,GAAGC,EAAU,KAAM,IAAIv5C,OAAM,8CAC7B,IAAI05C,GAAU1d,GAAM,GAAKtP,EAAIsP,GAAIC,EACjC,KAAIyd,IAAYA,EAAQ,GAAI,KAAM,IAAI15C,OAAM,uCAC5C0sB,GAAI/X,GAAGP,GAAG,GAAKulC,GAAkBD,EAAQ,IAAK9vC,EAAG+K,EAAIqnB,EAAIl8B,EAAGsU,EAAI6nB,IAEjE,MACA,IAAK,IACL,GAAI2d,GAAS,CACb,KAAIlB,EAAG,EAAGA,EAAGS,EAAO98C,SAAUq8C,EAAI,OAAOS,EAAOT,GAAIz6C,OAAO,IAC1D,IAAK,IAAKmW,EAAIpK,SAASmvC,EAAOT,GAAI37C,MAAM,IAAI,IAAK68C,CAAQ,OACzD,IAAK,IACJjlC,EAAI3K,SAASmvC,EAAOT,GAAI37C,MAAM,IAAI,CAClC,KAAIyL,EAAIkkB,EAAIrwB,OAAQmM,GAAKmM,IAAKnM,EAAGkkB,EAAIlkB,KACrC,OACD,IAAK,IAAKywC,EAAOjvC,SAASmvC,EAAOT,GAAI37C,MAAM,IAAM,EAAI,OACrD,IAAK,IAAK,MACV,IAAK,IAAK,MACV,IAAK,IACJ67C,EAAmBD,EAAQ3uC,SAASmvC,EAAOT,GAAI37C,MAAM,IACrD,OACD,IAAK,IAAK,MACV,IAAK,IAAK,MACV,IAAK,IAAK,MACV,IAAK,IACJi8C,EAAKG,EAAOT,GAAI37C,MAAM,GAAGyC,MAAM,IAC/B,KAAIgJ,EAAIwB,SAASgvC,EAAG,GAAI,IAAKxwC,GAAKwB,SAASgvC,EAAG,GAAI,MAAOxwC,EAAG,CAC3DywC,EAAOjvC,SAASgvC,EAAG,GAAI,GACvBD,GAAQvwC,EAAE,GAAKywC,IAAS,GAAKY,OAAO,OAAQvH,IAAI2G,EAAOa,IAAYf,EAAQvwC,EAAE,IAC5E,MACH,IAAK,IACJ4L,EAAIpK,SAASmvC,EAAOT,GAAI37C,MAAM,IAAI,CAClC,KAAIg8C,EAAQ3kC,GAAI2kC,EAAQ3kC,KACxB,OACD,IAAK,IACJO,EAAI3K,SAASmvC,EAAOT,GAAI37C,MAAM,IAAI,CAClC,KAAI+7C,EAAQnkC,GAAImkC,EAAQnkC,KACxB,IAAGskC,EAAO,EAAG,CAAEH,EAAQnkC,GAAGolC,IAAMd,CAAMH,GAAQnkC,GAAGqlC,IAAMC,GAAMhB,OACxD,IAAGA,IAAS,EAAGH,EAAQnkC,GAAGklC,OAAS,IACxC,OACD,QAAS,GAAGt1C,GAAQA,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,mBAAqBk5C,IAEpE,GAAGU,EAAS,EAAGhB,EAAmB,IAAM,OACxC,QAAS,GAAGr0C,GAAQA,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,mBAAqBk5C,KAGpE,GAAGJ,EAAQz8C,OAAS,EAAGw8C,EAAI,SAAWC,CACtC,IAAGC,EAAQ18C,OAAS,EAAGw8C,EAAI,SAAWE,CACtC,IAAGx0C,GAAQA,EAAK6tC,UAAW1lB,EAAMA,EAAI3vB,MAAM,EAAGwH,EAAK6tC,UACnD,QAAQ1lB,EAAKmsB,GAGd,QAASqB,GAAc15C,EAAG+D,GACzB,GAAI41C,GAAS5B,EAAY/3C,EAAG+D,EAC5B,IAAIquC,GAAMuH,EAAO,GAAIpe,EAAKoe,EAAO,EACjC,IAAIj+C,GAAIygC,GAAaiW,EAAKruC,EAC1B2mB,GAAK6Q,GAAIvpB,QAAQ,SAAS+H,GAAKre,EAAEqe,GAAKwhB,EAAGxhB,IACzC,OAAOre,GAGR,QAASk+C,GAAiB55C,EAAG+D,GAAQ,MAAOg3B,IAAkB2e,EAAc15C,EAAG+D,GAAOA,GAEtF,QAAS81C,GAAmB9gB,EAAMwC,EAAIpnB,EAAGP,GACxC,GAAIlY,GAAI,OAASyY,EAAE,GAAK,MAAQP,EAAE,GAAK,IACvC,QAAOmlB,EAAK73B,GACX,IAAK,IACJxF,GAAMq9B,EAAK93B,GAAG,CACd,IAAG83B,EAAK1rB,IAAM0rB,EAAK+gB,EAAGp+C,GAAK,KAAOq+C,GAAShhB,EAAK1rB,GAAIjE,EAAE+K,EAAG7U,EAAEsU,GAAK,OACjE,IAAK,IAAKlY,GAAKq9B,EAAK93B,EAAI,OAAS,OAAS,OAC1C,IAAK,IAAKvF,GAAKq9B,EAAKxyB,GAAKwyB,EAAK93B,CAAG,OACjC,IAAK,IAAKvF,GAAK,KAAOq9B,EAAKxyB,GAAKwyB,EAAK93B,GAAK,GAAK,OAC/C,IAAK,IAAKvF,GAAK,IAAMq9B,EAAK93B,EAAEtD,QAAQ,KAAK,IAAIA,QAAQ,KAAM,MAAQ,GAAK,QAEzE,MAAOjC,GAGR,QAASs+C,GAAmBp6C,EAAK2yC,GAChCA,EAAKvgC,QAAQ,SAASkoB,EAAKv+B,GAC1B,GAAIs+C,GAAM,OAASt+C,EAAE,GAAK,KAAOA,EAAE,GAAK,GACxC,IAAGu+B,EAAImf,OAAQY,GAAO,QACjB,CACJ,SAAU/f,GAAIggB,OAAS,WAAahgB,EAAIigB,IAAKjgB,EAAIigB,IAAMC,GAASlgB,EAAIggB,MACpE,UAAUhgB,GAAIigB,KAAO,WAAajgB,EAAI4X,IAAK5X,EAAI4X,IAAMuI,GAAQngB,EAAIigB,IACjE,UAAUjgB,GAAI4X,KAAO,SAAUmI,GAAO34C,KAAKC,MAAM24B,EAAI4X,KAEtD,GAAGmI,EAAIx8C,OAAOw8C,EAAIp+C,OAAS,IAAM,IAAK+D,EAAIK,KAAKg6C,KAIjD,QAASK,GAAmB16C,EAAK26C,GAChCA,EAAKvoC,QAAQ,SAASgV,EAAKrrB,GAC1B,GAAIs+C,GAAM,IACV,IAAGjzB,EAAIqyB,OAAQY,GAAO,UACjB,IAAGjzB,EAAIuyB,IAAKU,GAAO,IAAM,GAAKjzB,EAAIuyB,IAAM,QACxC,IAAGvyB,EAAIwyB,IAAKS,GAAO,IAAM,GAAKO,GAAMxzB,EAAIwyB,KAAO,GACpD,IAAGS,EAAIp+C,OAAS,EAAG+D,EAAIK,KAAKg6C,EAAM,KAAOt+C,EAAE,MAI7C,QAAS8+C,GAAclf,EAAIx3B,GAC1B,GAAI22C,IAAY,eAAgBh/C,IAChC,IAAI0N,GAAIqxB,GAAkBc,EAAG,SAAUxC,CACvC,IAAIuC,GAAQ18B,MAAMS,QAAQk8B,EAC1B,IAAIof,GAAK,MAETD,GAASz6C,KAAK,aACdy6C,GAASz6C,KAAK,kBACd,IAAGs7B,EAAG,SAAUye,EAAmBU,EAAUnf,EAAG,SAChD,IAAGA,EAAG,SAAU+e,EAAmBI,EAAUnf,EAAG,SAEhDmf,GAASz6C,KAAK,OAASmJ,EAAEjL,EAAEiL,EAAIA,EAAErK,EAAEqK,EAAI,GAAK,MAAQA,EAAEjL,EAAEmB,EAAI8J,EAAErK,EAAEO,EAAI,GAAK,MAAQ8J,EAAErK,EAAEO,EAAE8J,EAAErK,EAAEqK,EAAEA,EAAEjL,EAAEmB,EAAE8J,EAAEjL,EAAEiL,GAAGlN,KAAK,KAC/G,KAAI,GAAIiY,GAAI/K,EAAErK,EAAEqK,EAAG+K,GAAK/K,EAAEjL,EAAEiL,IAAK+K,EAAG,CACnC,IAAI,GAAIP,GAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG,CACnC,GAAIgnC,GAAQthB,IAAalwB,EAAE+K,EAAE7U,EAAEsU,GAC/BmlB,GAAOuC,GAASC,EAAGpnB,QAAQP,GAAI2nB,EAAGqf,EAClC,KAAI7hB,GAASA,EAAK93B,GAAK,QAAU83B,EAAK1rB,GAAK0rB,EAAK+gB,GAAK,QACrDp+C,GAAEuE,KAAK45C,EAAmB9gB,EAAMwC,EAAIpnB,EAAGP,EAAG7P,KAG5C,MAAO22C,GAASx+C,KAAKy+C,GAAMA,EAAKj/C,EAAEQ,KAAKy+C,GAAMA,EAAK,IAAMA,EAGzD,OACCvH,YAAawG,EACbvG,SAAUqG,EACVpG,WAAYmH,KAId,IAAII,IAAM,WACT,QAASC,GAAW96C,EAAG+D,GACtB,OAAOA,EAAKwD,MACX,IAAK,SAAU,MAAOwzC,GAAeh+C,EAAOW,OAAOsC,GAAI+D,GACvD,IAAK,SAAU,MAAOg3C,GAAe/6C,EAAG+D,GACxC,IAAK,SAAU,MAAOg3C,GAAen9C,GAAWC,OAAOkd,SAAS/a,GAAKA,EAAE6F,SAAS,UAAYzG,EAAIY,GAAI+D,GACpG,IAAK,QAAS,MAAOg3C,GAAe9uB,GAAOjsB,GAAI+D,IAEhD,KAAM,IAAIvE,OAAM,qBAAuBuE,EAAKwD,MAE7C,QAASwzC,GAAe7wC,EAAKnG,GAC5B,GAAIk0C,GAAU/tC,EAAIlL,MAAM,MAAOmV,GAAK,EAAGP,GAAK,EAAGhJ,EAAK,EAAGshB,IACvD,MAAOthB,IAAOqtC,EAAQp8C,SAAU+O,EAAI,CACnC,GAAIqtC,EAAQrtC,GAAImc,SAAW,MAAO,CAAEmF,IAAM/X,KAASP,GAAI,CAAG,UAC1D,GAAIO,EAAI,EAAG,QACX,IAAI2yB,GAAWmR,EAAQrtC,GAAImc,OAAO/nB,MAAM,IACxC,IAAIuI,GAAOu/B,EAAS,GAAI/V,EAAQ+V,EAAS,KACvCl8B,CACF,IAAInP,GAAOw8C,EAAQrtC,IAAO,EAC1B,QAAQnP,EAAKiN,MAAM,aAAa7M,OAAS,GAAM+O,EAAKqtC,EAAQp8C,OAAS,EAAGJ,GAAQ,KAAOw8C,IAAUrtC,EACjGnP,GAAOA,EAAKsrB,MACZ,SAASxf,GACR,KAAM,EACL,GAAI9L,IAAS,MAAO,CAAEywB,IAAM/X,KAASP,GAAI,CAAG,cACvC,IAAInY,IAAS,MAAO,KAAM,IAAI+D,OAAM,oCAAsC/D,EAC/E,OACD,IAAK,GACJ,GAAGA,IAAS,OAAQywB,EAAI/X,GAAGP,GAAK,SAC3B,IAAGnY,IAAS,QAASywB,EAAI/X,GAAGP,GAAK,UACjC,KAAIpW,MAAM+uB,GAASwE,IAAS7E,EAAI/X,GAAGP,GAAK2Y,GAASwE,OACjD,KAAIvzB,MAAMqvB,GAAUkE,GAAO/rB,WAAYknB,EAAI/X,GAAGP,GAAKmY,GAAUgF,OAC7D7E,GAAI/X,GAAGP,GAAKmd,IACfnd,CAAG,OACN,IAAK,GACJnY,EAAOA,EAAKc,MAAM,EAAEd,EAAKI,OAAO,EAChCJ,GAAOA,EAAKkC,QAAQ,MAAO,IAC3B,IAAGb,GAAUrB,GAAQA,EAAKiN,MAAM,WAAYjN,EAAOA,EAAKc,MAAM,GAAI,EAClE2vB,GAAI/X,GAAGP,KAAOnY,IAAS,GAAKA,EAAO,IACnC,QAEF,GAAIA,IAAS,MAAO,MAErB,GAAGsI,GAAQA,EAAK6tC,UAAW1lB,EAAMA,EAAI3vB,MAAM,EAAGwH,EAAK6tC,UACnD,OAAO1lB,GAGR,QAAS8uB,GAAa9wC,EAAKnG,GAAQ,MAAOo4B,IAAa2e,EAAW5wC,EAAKnG,GAAOA,GAC9E,QAASk3C,GAAgB/wC,EAAKnG,GAAQ,MAAOg3B,IAAkBigB,EAAa9wC,EAAKnG,GAAOA,GAExF,GAAIm3C,GAAe,WAClB,GAAIC,GAAa,QAASC,GAAG1/C,EAAG2/C,EAAOp6C,EAAGzC,EAAGO,GAC5CrD,EAAEuE,KAAKo7C,EACP3/C,GAAEuE,KAAKgB,EAAI,IAAMzC,EACjB9C,GAAEuE,KAAK,IAAMlB,EAAEpB,QAAQ,KAAK,MAAQ,KAErC,IAAI29C,GAAa,QAASC,GAAG7/C,EAAG6L,EAAMtG,EAAGlC,GACxCrD,EAAEuE,KAAKsH,EAAO,IAAMtG,EACpBvF,GAAEuE,KAAKsH,GAAQ,EAAI,IAAMxI,EAAEpB,QAAQ,KAAK,MAAQ,IAAMoB,GAEvD,OAAO,SAASm8C,GAAa3f,GAC5B,GAAI7/B,KACJ,IAAI0N,GAAIqxB,GAAkBc,EAAG,SAAUxC,CACvC,IAAIuC,GAAQ18B,MAAMS,QAAQk8B,EAC1B4f,GAAWz/C,EAAG,QAAS,EAAG,EAAG,UAC7By/C,GAAWz/C,EAAG,UAAW,EAAG0N,EAAEjL,EAAEiL,EAAIA,EAAErK,EAAEqK,EAAI,EAAE,GAC9C+xC,GAAWz/C,EAAG,SAAU,EAAG0N,EAAEjL,EAAEmB,EAAI8J,EAAErK,EAAEO,EAAI,EAAE,GAC7C67C,GAAWz/C,EAAG,OAAQ,EAAG,EAAE,GAC3B,KAAI,GAAIyY,GAAI/K,EAAErK,EAAEqK,EAAG+K,GAAK/K,EAAEjL,EAAEiL,IAAK+K,EAAG,CACnCmnC,EAAW5/C,GAAI,EAAG,EAAG,MACrB,KAAI,GAAIkY,GAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG,CACnC,GAAIgnC,GAAQthB,IAAalwB,EAAE+K,EAAE7U,EAAEsU,GAC/BmlB,GAAOuC,GAASC,EAAGpnB,QAAQP,GAAK2nB,EAAGqf,EACnC,KAAI7hB,EAAM,CAAEuiB,EAAW5/C,EAAG,EAAG,EAAG,GAAK,UACrC,OAAOq9B,EAAK73B,GACX,IAAK,IACJ,GAAIuG,GAAM3K,EAASi8B,EAAKxyB,EAAIwyB,EAAK93B,CACjC,KAAIwG,GAAOsxB,EAAK93B,GAAK,KAAMwG,EAAMsxB,EAAK93B,CACtC,IAAGwG,GAAO,KAAM,CACf,GAAG3K,GAAUi8B,EAAK1rB,IAAM0rB,EAAK+gB,EAAGwB,EAAW5/C,EAAG,EAAG,EAAG,IAAMq9B,EAAK1rB,OAC1DiuC,GAAW5/C,EAAG,EAAG,EAAG,QAErB4/C,GAAW5/C,EAAG,EAAG+L,EAAK,IAC3B,OACD,IAAK,IACJ6zC,EAAW5/C,EAAG,EAAGq9B,EAAK93B,EAAI,EAAI,EAAG83B,EAAK93B,EAAI,OAAS,QACnD,OACD,IAAK,IACJq6C,EAAW5/C,EAAG,EAAG,GAAKoB,GAAUU,MAAMu7B,EAAK93B,GAAM83B,EAAK93B,EAAI,KAAO83B,EAAK93B,EAAI,IAC1E,OACD,IAAK,IACJ,IAAI83B,EAAKxyB,EAAGwyB,EAAKxyB,EAAI5F,EAAIyG,OAAO2xB,EAAK1J,GAAK1uB,EAAIkN,OAAO,IAAKyd,EAAQS,GAAUgN,EAAK93B,IACjF,IAAGnE,EAAQw+C,EAAW5/C,EAAG,EAAGq9B,EAAKxyB,EAAG,SAC/B+0C,GAAW5/C,EAAG,EAAG,EAAGq9B,EAAKxyB,EAC9B,OACD,QAAS+0C,EAAW5/C,EAAG,EAAG,EAAG,OAIhC4/C,EAAW5/C,GAAI,EAAG,EAAG,MACrB,IAAIi/C,GAAK,MACT,IAAI9jB,GAAKn7B,EAAEQ,KAAKy+C,EAEhB,OAAO9jB,MAGT,QACCuc,YAAa6H,EACb5H,SAAU2H,EACV1H,WAAY4H,KAId,IAAIM,IAAM,WACT,QAAS99C,GAAOqB,GAAK,MAAOA,GAAEpB,QAAQ,OAAO,MAAMA,QAAQ,OAAO,KAAKA,QAAQ,OAAO,MACtF,QAASV,GAAO8B,GAAK,MAAOA,GAAEpB,QAAQ,MAAO,OAAOA,QAAQ,KAAM,OAAOA,QAAQ,MAAM,OAEvF,QAAS89C,GAAWvxC,EAAKnG,GACxB,GAAIk0C,GAAU/tC,EAAIlL,MAAM,MAAOmV,GAAK,EAAGP,GAAK,EAAGhJ,EAAK,EAAGshB,IACvD,MAAOthB,IAAOqtC,EAAQp8C,SAAU+O,EAAI,CACnC,GAAI+tC,GAASV,EAAQrtC,GAAImc,OAAO/nB,MAAM,IACtC,IAAG25C,EAAO,KAAO,OAAQ,QACzB,IAAIh/B,GAAOygB,GAAYue,EAAO,GAC9B,IAAGzsB,EAAIrwB,QAAU8d,EAAKvQ,EAAG,IAAI+K,EAAI+X,EAAIrwB,OAAQsY,GAAKwF,EAAKvQ,IAAK+K,EAAG,IAAI+X,EAAI/X,GAAI+X,EAAI/X,KAC/EA,GAAIwF,EAAKvQ,CAAGwK,GAAI+F,EAAKra,CACrB,QAAOq5C,EAAO,IACb,IAAK,IAAKzsB,EAAI/X,GAAGP,GAAKlW,EAAOi7C,EAAO,GAAK,OACzC,IAAK,IAAKzsB,EAAI/X,GAAGP,IAAM+kC,EAAO,EAAI,OAClC,IAAK,MAAO,GAAI5F,GAAK4F,EAAOA,EAAO98C,OAAS,GAE5C,IAAK,MACJ,OAAO88C,EAAO,IACb,IAAK,KAAMzsB,EAAI/X,GAAGP,IAAM+kC,EAAO,GAAK,KAAO,KAAO,OAClD,QAASzsB,EAAI/X,GAAGP,IAAM+kC,EAAO,EAAI,QAElC,GAAGA,EAAO,IAAM,MAAOzsB,EAAI/X,GAAGP,IAAMsY,EAAI/X,GAAGP,GAAIm/B,KAGlD,GAAGhvC,GAAQA,EAAK6tC,UAAW1lB,EAAMA,EAAI3vB,MAAM,EAAGwH,EAAK6tC,UACnD,OAAO1lB,GAGR,QAASwvB,GAAa17C,EAAG+D,GAAQ,MAAOo4B,IAAasf,EAAWz7C,EAAG+D,GAAOA,GAC1E,QAAS43C,GAAgB37C,EAAG+D,GAAQ,MAAOg3B,IAAkB2gB,EAAa17C,EAAG+D,GAAOA,GAEpF,GAAImT,IACH,yBACA,oBACA,4EACChb,KAAK,KAEP,IAAI0/C,IACH,qCACA,2CACC1/C,KAAK,MAAQ;AAGf,GAAI2/C,IACH,wCACA,cACC3/C,KAAK,KAEP,IAAImqB,GAAM,sCAEV,SAASy1B,GAAkBvgB,GAC1B,IAAIA,IAAOA,EAAG,QAAS,MAAO,EAC9B,IAAI7/B,MAAQm7B,KAASkC,EAAM6hB,EAAQ,EACnC,IAAIxxC,GAAIixB,GAAakB,EAAG,QACxB,IAAID,GAAQ18B,MAAMS,QAAQk8B,EAC1B,KAAI,GAAIpnB,GAAI/K,EAAErK,EAAEqK,EAAG+K,GAAK/K,EAAEjL,EAAEiL,IAAK+K,EAAG,CACnC,IAAI,GAAIP,GAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG,CACnCgnC,EAAQthB,IAAalwB,EAAE+K,EAAE7U,EAAEsU,GAC3BmlB,GAAOuC,GAASC,EAAGpnB,QAAQP,GAAK2nB,EAAGqf,EACnC,KAAI7hB,GAAQA,EAAK93B,GAAK,MAAQ83B,EAAK73B,IAAM,IAAK,QAC9C21B,IAAM,OAAQ+jB,EAAO,IACrB,QAAO7hB,EAAK73B,GACX,IAAK,KAAK,IAAK,MAAO21B,EAAG52B,KAAKhD,EAAO87B,EAAK93B,GAAK,OAC/C,IAAK,IACJ,IAAI83B,EAAK1rB,EAAG,CAAEwpB,EAAG,GAAG,GAAKA,GAAG,GAAGkC,EAAK93B,MAC/B,CAAE41B,EAAG,GAAG,KAAOA,GAAG,GAAG,GAAKA,GAAG,GAAGkC,EAAK93B,CAAG41B,GAAG,GAAG55B,EAAO87B,EAAK1rB,GAC/D,MACD,IAAK,IACJwpB,EAAG,GAAK,MAAMkC,EAAK1rB,EAAE,IAAI,IAAMwpB,GAAG,GAAG,IAAMA,GAAG,GAAGkC,EAAK93B,EAAE,IAAI,GAC5D41B,GAAG,GAAK55B,EAAO87B,EAAK1rB,IAAI0rB,EAAK93B,EAAE,OAAO,SACtC,OACD,IAAK,IACJ,GAAIC,GAAIoqB,EAAQS,GAAUgN,EAAK93B,GAC/B41B,GAAG,GAAK,KAAOA,GAAG,GAAK,IAAMA,GAAG,GAAK,GAAG31B,CACxC21B,GAAG,GAAKkC,EAAKxyB,GAAK5F,EAAIyG,OAAO2xB,EAAK1J,GAAK1uB,EAAIkN,OAAO,IAAK3M,EACvD,OACD,IAAK,IAAK,UAEXxF,EAAEuE,KAAK42B,EAAG36B,KAAK,OAGjBR,EAAEuE,KAAK,YAAcmJ,EAAEjL,EAAEmB,EAAE8J,EAAErK,EAAEO,EAAE,GAAK,OAAS8J,EAAEjL,EAAEiL,EAAEA,EAAErK,EAAEqK,EAAE,GAAK,SAChE1N,GAAEuE,KAAK,0BAEP,OAAOvE,GAAEQ,KAAK,MAGf,QAAS6/C,GAAaxgB,GACrB,OAAQrkB,EAAQ0kC,EAAKC,EAAMD,EAAKE,EAAkBvgB,GAAKlV,GAAKnqB,KAAK,MAIlE,OACCk3C,YAAauI,EACbtI,SAAUqI,EACVpI,WAAYyI,KAId,IAAIC,IAAM,WACT,QAASC,GAAaxgD,EAAMywB,EAAK/X,EAAGP,EAAGlY,GACtC,GAAGA,EAAE0c,IAAK8T,EAAI/X,GAAGP,GAAKnY,MACjB,IAAGA,IAAS,GAAG,MACf,IAAGA,IAAS,OAAQywB,EAAI/X,GAAGP,GAAK,SAChC,IAAGnY,IAAS,QAASywB,EAAI/X,GAAGP,GAAK,UACjC,KAAIpW,MAAM+uB,GAAS9wB,IAAQywB,EAAI/X,GAAGP,GAAK2Y,GAAS9wB,OAChD,KAAI+B,MAAMqvB,GAAUpxB,GAAMuJ,WAAYknB,EAAI/X,GAAGP,GAAKmY,GAAUtwB,OAC5DywB,GAAI/X,GAAGP,GAAKnY,EAGlB,QAASygD,GAAe7uC,EAAGtJ,GAC1B,GAAIrI,GAAIqI,KACR,IAAImoB,KACJ,KAAI7e,GAAKA,EAAExR,SAAW,EAAG,MAAOqwB,EAChC,IAAIiwB,GAAQ9uC,EAAErO,MAAM,SACpB,IAAIc,GAAIq8C,EAAMtgD,OAAS,CACvB,OAAMiE,GAAK,GAAKq8C,EAAMr8C,GAAGjE,SAAW,IAAKiE,CACzC,IAAIkZ,GAAQ,GAAIxQ,EAAM,CACtB,IAAI2L,GAAI,CACR,MAAMA,GAAKrU,IAAKqU,EAAG,CAClB3L,EAAM2zC,EAAMhoC,GAAG/Y,QAAQ,IACvB,IAAGoN,IAAQ,EAAGA,EAAM2zC,EAAMhoC,GAAGtY,WAAa2M,IAC1CwQ,GAAQ1X,KAAK0J,IAAIgO,EAAOxQ,GAEzB,IAAI2L,EAAI,EAAGA,GAAKrU,IAAKqU,EAAG,CACvB+X,EAAI/X,KAEJ,IAAIP,GAAI,CACRqoC,GAAaE,EAAMhoC,GAAG5X,MAAM,EAAGyc,GAAO+N,OAAQmF,EAAK/X,EAAGP,EAAGlY,EACzD,KAAIkY,EAAI,EAAGA,IAAMuoC,EAAMhoC,GAAGtY,OAASmd,GAAO,GAAK,IAAKpF,EACnDqoC,EAAaE,EAAMhoC,GAAG5X,MAAMyc,GAAOpF,EAAE,GAAG,GAAGoF,EAAMpF,EAAE,IAAImT,OAAOmF,EAAI/X,EAAEP,EAAElY,GAExE,GAAGA,EAAEk2C,UAAW1lB,EAAMA,EAAI3vB,MAAM,EAAGb,EAAEk2C,UACrC,OAAO1lB,GAIR,GAAIkwB,IACLr5C,GAAM,IACNq6B,EAAM,KACN1sB,GAAM,IACNk/B,IAAM,IAIL,IAAIyM,IACLt5C,GAAM,EACNq6B,EAAM,EACN1sB,GAAM,EACNk/B,IAAM,EAGL,SAAS0M,GAAUpyC,GAClB,GAAImP,MAAUkjC,EAAQ,MAAOl2B,EAAM,EAAGlc,EAAK,CAC3C,MAAKkc,EAAMnc,EAAIrO,SAASwqB,EAAK,CAC5B,IAAIlc,EAAGD,EAAIpO,WAAWuqB,KAAS,GAAMk2B,GAASA,MACzC,KAAIA,GAASpyC,IAAMiyC,GAAY/iC,EAAIlP,IAAOkP,EAAIlP,IAAK,GAAG,EAG5DA,IACA,KAAIkc,IAAOhN,GAAK,GAAKwC,OAAOgP,UAAUC,eAAetqB,KAAK6Y,EAAKgN,GAAO,CACrElc,EAAGlK,MAAOoZ,EAAIgN,GAAMA,IAGrB,IAAMlc,EAAGtO,OAAS,CACjBwd,EAAMgjC,CACN,KAAIh2B,IAAOhN,GAAK,GAAKwC,OAAOgP,UAAUC,eAAetqB,KAAK6Y,EAAKgN,GAAO,CACrElc,EAAGlK,MAAOoZ,EAAIgN,GAAMA,KAItBlc,EAAG6R,KAAK,SAASyE,EAAGf,GAAK,MAAOe,GAAE,GAAKf,EAAE,IAAM28B,EAAkB57B,EAAE,IAAM47B,EAAkB38B,EAAE,KAE7F,OAAO08B,GAAWjyC,EAAGuR,MAAM,KAAO,GAGnC,QAAS8gC,GAAiBtyC,EAAKnG,GAC9B,GAAIrI,GAAIqI,KACR,IAAI63C,GAAM,EACV,IAAG/+C,GAAS,MAAQnB,EAAE4/B,OAAS,KAAM5/B,EAAE4/B,MAAQz+B,CAC/C,IAAI0+B,GAAK7/B,EAAE4/B,WACX,IAAIlC,IAAUr6B,GAAIO,EAAE,EAAG8J,EAAE,GAAIjL,GAAImB,EAAE,EAAG8J,EAAE,GAExC,IAAGc,EAAI3N,MAAM,EAAE,IAAM,OAAQ,CAE5B,GAAG2N,EAAIpO,WAAW,IAAM,IAAMoO,EAAIpO,WAAW,IAAM,GAAK,CACvD8/C,EAAM1xC,EAAIzM,OAAO,EAAIyM,GAAMA,EAAI3N,MAAM,OAGjC,IAAG2N,EAAIpO,WAAW,IAAM,IAAMoO,EAAIpO,WAAW,IAAM,GAAK,CAC5D8/C,EAAM1xC,EAAIzM,OAAO,EAAIyM,GAAMA,EAAI3N,MAAM,OAEjCq/C,GAAMU,EAAUpyC,EAAI3N,MAAM,EAAE,WAE7B,IAAGb,GAAKA,EAAE+gD,GAAIb,EAAMlgD,EAAE+gD,OACtBb,GAAMU,EAAUpyC,EAAI3N,MAAM,EAAE,MACjC,IAAI4X,GAAI,EAAGP,EAAI,EAAG3S,EAAI,CACtB,IAAI+X,GAAQ,EAAGqN,EAAM,EAAGq2B,EAAQd,EAAI9/C,WAAW,GAAIygD,EAAQ,MAAOpyC,EAAG,EAAGwyC,EAAQzyC,EAAIpO,WAAW,EAC/FoO,GAAMA,EAAIvM,QAAQ,SAAU,KAC5B,IAAIi/C,GAAMlhD,EAAE+R,QAAU,KAAOmE,EAAalW,EAAE+R,QAAU,IACtD,SAASovC,KACR,GAAI99C,GAAImL,EAAI3N,MAAMyc,EAAOqN,EACzB,IAAI0S,KACJ,IAAGh6B,EAAEtB,OAAO,IAAM,KAAOsB,EAAEtB,OAAOsB,EAAElD,OAAS,IAAM,IAAKkD,EAAIA,EAAExC,MAAM,GAAG,GAAGoB,QAAQ,MAAM,IACxF,IAAGoB,EAAElD,SAAW,EAAGk9B,EAAK73B,EAAI,QACvB,IAAGxF,EAAE0c,IAAK,CAAE2gB,EAAK73B,EAAI,GAAK63B,GAAK93B,EAAIlC,MACnC,IAAGA,EAAEgoB,OAAOlrB,SAAW,EAAG,CAAEk9B,EAAK73B,EAAI,GAAK63B,GAAK93B,EAAIlC,MACnD,IAAGA,EAAEjD,WAAW,IAAM,GAAM,CAChC,GAAGiD,EAAEjD,WAAW,IAAM,IAAQiD,EAAEjD,WAAWiD,EAAElD,OAAS,IAAM,GAAM,CAAEk9B,EAAK73B,EAAI,GAAK63B,GAAK93B,EAAIlC,EAAExC,MAAM,GAAG,GAAGoB,QAAQ,MAAM,SAClH,IAAGm/C,GAAU/9C,GAAI,CAAEg6B,EAAK73B,EAAI,GAAK63B,GAAK1rB,EAAItO,EAAExC,MAAM,OAClD,CAAEw8B,EAAK73B,EAAI,GAAK63B,GAAK93B,EAAIlC,OAC1B,IAAGA,GAAK,OAAQ,CAAEg6B,EAAK73B,EAAI,GAAK63B,GAAK93B,EAAI,SACzC,IAAGlC,GAAK,QAAS,CAAEg6B,EAAK73B,EAAI,GAAK63B,GAAK93B,EAAI,UAC1C,KAAIzD,MAAMyD,EAAIsrB,GAASxtB,IAAK,CAAEg6B,EAAK73B,EAAI,GAAK,IAAGxF,EAAEqhD,WAAa,MAAOhkB,EAAKxyB,EAAIxH,CAAGg6B,GAAK93B,EAAIA,MAC1F,KAAIzD,MAAMqvB,GAAU9tB,GAAGiG,YAAc43C,GAAO79C,EAAE2J,MAAMk0C,GAAM,CAC9D7jB,EAAK1J,EAAI3zB,EAAE+R,QAAU9M,EAAIkN,OAAO,GAChC,IAAIkM,GAAI,CACR,IAAG6iC,GAAO79C,EAAE2J,MAAMk0C,GAAK,CAAE79C,EAAE+S,EAAW/S,EAAGrD,EAAE+R,OAAS1O,EAAE2J,MAAMk0C,OAAY7iC,GAAE,EAC1E,GAAGre,EAAEugC,UAAW,CAAElD,EAAK73B,EAAI,GAAK63B,GAAK93B,EAAI8qB,GAAUhtB,EAAGgb,OACjD,CAAEgf,EAAK73B,EAAI,GAAK63B,GAAK93B,EAAIqqB,EAAQS,GAAUhtB,EAAGgb,IACnD,GAAGre,EAAEqhD,WAAa,MAAOhkB,EAAKxyB,EAAI5F,EAAIyG,OAAO2xB,EAAK1J,EAAG0J,EAAK93B,YAAa6D,MAAOwmB,EAAQyN,EAAK93B,GAAG83B,EAAK93B,EACnG,KAAIvF,EAAEshD,aAAejkB,GAAK1J,MACpB,CACN0J,EAAK73B,EAAI,GACT63B,GAAK93B,EAAIlC,EAEV,GAAGg6B,EAAK73B,GAAK,IAAI,MACZ,IAAGxF,EAAE4/B,MAAO,CAAE,IAAIC,EAAGpnB,GAAIonB,EAAGpnB,KAASonB,GAAGpnB,GAAGP,GAAKmlB,MAChDwC,GAAGjC,IAAah6B,EAAEsU,EAAExK,EAAE+K,KAAO4kB,CAClC/f,GAAQqN,EAAI,CAAGs2B,GAAUzyC,EAAIpO,WAAWkd,EACxC,IAAGogB,EAAMj7B,EAAEmB,EAAIsU,EAAGwlB,EAAMj7B,EAAEmB,EAAIsU,CAC9B,IAAGwlB,EAAMj7B,EAAEiL,EAAI+K,EAAGilB,EAAMj7B,EAAEiL,EAAI+K,CAC9B,IAAGhK,GAAMuyC,IAAS9oC,MAAQ,CAAEA,EAAI,IAAKO,CAAG,IAAGzY,EAAEk2C,WAAal2C,EAAEk2C,WAAaz9B,EAAG,MAAO,OAEpF8oC,EAAO,KAAK52B,EAAMnc,EAAIrO,SAASwqB,EAAK,OAAQlc,EAAGD,EAAIpO,WAAWuqB,IAC7D,IAAK,IAAM,GAAGs2B,IAAY,GAAMJ,GAASA,CAAO,OAChD,IAAKG,IAAO,IAAK,KAAM,IAAK,IAAM,IAAIH,GAASM,IAAe,KAAMI,EAAO,OAC3E,QAAS,OAEV,GAAG52B,EAAMrN,EAAQ,EAAG6jC,GAEpBthB,GAAG,QAAUjB,GAAalB,EAC1B,OAAOmC,GAGR,QAAS2hB,GAAiBhzC,EAAKnG,GAC9B,KAAKA,GAAQA,EAAKi4C,KAAM,MAAOQ,GAAiBtyC,EAAKnG,EACrD,IAAGA,EAAK04C,GAAI,MAAOD,GAAiBtyC,EAAKnG,EACzC,IAAGmG,EAAI3N,MAAM,EAAE,IAAM,OAAQ,MAAOigD,GAAiBtyC,EAAKnG,EAC1D,IAAGmG,EAAI9O,QAAQ,OAAS,GAAK8O,EAAI9O,QAAQ,MAAQ,GAAK8O,EAAI9O,QAAQ,MAAQ,EAAG,MAAOohD,GAAiBtyC,EAAKnG,EAC1G,OAAOo4B,IAAa+f,EAAehyC,EAAKnG,GAAOA,GAGhD,QAASo5C,GAAan9C,EAAG+D,GACxB,GAAImG,GAAM,GAAIkzC,EAAQr5C,EAAKwD,MAAQ,UAAY,EAAE,EAAE,EAAE,GAAK81C,GAAUr9C,EAAG+D,EACvE,QAAOA,EAAKwD,MACX,IAAK,SAAU2C,EAAMnN,EAAOW,OAAOsC,EAAI,OACvC,IAAK,SAAUkK,EAAMlK,CAAG,OACxB,IAAK,SACJ,GAAG+D,EAAKytC,UAAY,MAAOtnC,EAAMlK,EAAE6F,SAAS,YACvC,IAAG9B,EAAKytC,gBAAmBhb,YAAa,YAAatsB,EAAMssB,SAAS5O,MAAMlqB,OAAOqG,EAAKytC,SAAUxxC,OAChGkK,GAAMtM,GAAWC,OAAOkd,SAAS/a,GAAKA,EAAE6F,SAAS,UAAYzG,EAAIY,EACtE,OACD,IAAK,QAASkK,EAAM+hB,GAAOjsB,EAAI,OAC/B,IAAK,SAAUkK,EAAMlK,CAAG,OACxB,QAAS,KAAM,IAAIR,OAAM,qBAAuBuE,EAAKwD,OAEtD,GAAG61C,EAAM,IAAM,KAAQA,EAAM,IAAM,KAAQA,EAAM,IAAM,IAAMlzC,EAAM8mB,GAAS9mB,EAAI3N,MAAM,QACjF,IAAGwH,EAAKwD,MAAQ,UAAYxD,EAAKwD,MAAQ,UAAYxD,EAAKytC,UAAY,MAAOtnC,EAAM8mB,GAAS9mB,OAC5F,IAAInG,EAAKwD,MAAQ,gBAAoBivB,YAAa,aAAezyB,EAAKytC,SAAWtnC,EAAMssB,SAAS5O,MAAMlqB,OAAOqG,EAAKytC,SAAUhb,SAAS5O,MAAM3qB,OAAO,MAAMiN,GAC7J,IAAGA,EAAI3N,MAAM,EAAE,KAAO,sBAAuB,MAAOi/C,IAAInI,SAAStvC,EAAKwD,MAAQ,SAAW2C,EAAM8mB,GAAS9mB,GAAMnG,EAC9G,OAAOm5C,GAAiBhzC,EAAKnG,GAG9B,QAASu5C,GAAgBt9C,EAAG+D,GAAQ,MAAOg3B,IAAkBoiB,EAAan9C,EAAG+D,GAAOA,GAEpF,QAASw5C,GAAahiB,GACrB,GAAI7/B,KACJ,IAAI0N,GAAIqxB,GAAkBc,EAAG,SAAUxC,CACvC,IAAIuC,GAAQ18B,MAAMS,QAAQk8B,EAC1B,KAAI,GAAIpnB,GAAI/K,EAAErK,EAAEqK,EAAG+K,GAAK/K,EAAEjL,EAAEiL,IAAK+K,EAAG,CACnC,GAAI0iB,KACJ,KAAI,GAAIjjB,GAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG,CACnC,GAAIgnC,GAAQthB,IAAalwB,EAAE+K,EAAE7U,EAAEsU,GAC/BmlB,GAAOuC,GAASC,EAAGpnB,QAAQP,GAAK2nB,EAAGqf,EACnC,KAAI7hB,GAAQA,EAAK93B,GAAK,KAAM,CAAE41B,EAAG52B,KAAK,aAAe,UACrD,GAAIsG,IAAKwyB,EAAKxyB,IAAMs0B,GAAY9B,GAAOA,EAAKxyB,IAAM,IAAIhK,MAAM,EAAE,GAC9D,OAAMgK,EAAE1K,OAAS,GAAI0K,GAAK,GAC1BswB,GAAG52B,KAAKsG,GAAKqN,IAAM,EAAI,IAAM,KAE9BlY,EAAEuE,KAAK42B,EAAG36B,KAAK,KAEhB,MAAOR,GAAEQ,KAAK,MAGf,OACCk3C,YAAakK,EACbjK,SAAU8J,EACV7J,WAAYiK,KAKd,SAASC,IAAWx9C,EAAG+D,GACtB,GAAIrI,GAAIqI,MAAY05C,IAAY/hD,EAAEy2B,GAAKz2B,GAAEy2B,IAAM,IAC/C,KACC,GAAIvyB,GAAM2zC,GAAKH,YAAYpzC,EAAGtE,EAC9BA,GAAEy2B,IAAMsrB,CACR,OAAO79C,GACN,MAAMzB,GACPzC,EAAEy2B,IAAMsrB,CACR,KAAIt/C,EAAEygB,QAAQlW,MAAM,uBAAyB+0C,EAAS,KAAMt/C,EAC5D,OAAO69C,IAAI5I,YAAYpzC,EAAG+D,IAK5B,QAAS25C,IAAUC,GAClB,GAAIC,MAAWp5C,EAAIm5C,EAAIj1C,MAAMomB,IAAWnzB,EAAI,CAC5C,IAAIkiD,GAAO,KACX,IAAGr5C,EAAG,KAAK7I,GAAG6I,EAAE3I,SAAUF,EAAG,CAC5B,GAAI4I,GAAI0qB,GAAYzqB,EAAE7I,GACtB,QAAO4I,EAAE,GAAG5G,QAAQ,QAAQ,KAG3B,IAAK,YAAa,MAGlB,IAAK,UAAW,MAGhB,IAAK,UACJ,IAAI4G,EAAEkD,IAAK,MAEZ,IAAK,YACL,IAAK,YAAam2C,EAAKE,OAAS,CAAG,OACnC,IAAK,YAAa,MAGlB,IAAK,WACJ,GAAGv5C,EAAEkD,KAAO,IAAK,KACjBm2C,GAAKziD,GAAKtB,EAAM2P,SAASjF,EAAEkD,IAAK,IAChC,OAGD,IAAK,WACJ,IAAIlD,EAAEkD,IAAK,MAEZ,IAAK,aACL,IAAK,aAAcm2C,EAAKG,QAAU,CAAG,OACrC,IAAK,aAAc,MAGnB,IAAK,SAAUH,EAAKjmC,KAAOpT,EAAEkD,GAAK,OAGlC,IAAK,MAAOm2C,EAAKjoC,GAAKpR,EAAEkD,GAAK,OAG7B,IAAK,UACJ,IAAIlD,EAAEkD,IAAK,MAEZ,IAAK,YACL,IAAK,YAAam2C,EAAKI,OAAS,CAAG,OACnC,IAAK,YAAa,MAGlB,IAAK,KACJ,IAAIz5C,EAAEkD,IAAK,KACX,QAAOlD,EAAEkD,KACR,IAAK,SAAUm2C,EAAKK,KAAO,QAAU,OACrC,IAAK,mBAAoBL,EAAKK,KAAO,mBAAqB,OAC1D,IAAK,mBAAoBL,EAAKK,KAAO,mBAAqB,SAG5D,IAAK,OACL,IAAK,OAAQL,EAAKt5C,EAAI,CAAG,OACzB,IAAK,OAAQ,MAGb,IAAK,KACJ,GAAGC,EAAEkD,KAAO,IAAK,MAElB,IAAK,OACL,IAAK,OAAQm2C,EAAKl+B,EAAI,CAAG,OACzB,IAAK,OAAQ,MAGb,IAAK,KACJ,GAAGnb,EAAEkD,KAAO,IAAK,MAElB,IAAK,OACL,IAAK,OAAQm2C,EAAKjiD,EAAI,CAAG,OACzB,IAAK,OAAQ,MAGb,IAAK,SACJ,GAAG4I,EAAE25C,IAAKN,EAAKxjC,MAAQ7V,EAAE25C,IAAI3hD,MAAM,EAAE,EACrC,OACD,IAAK,WAAW,IAAK,YAAY,IAAK,WAAY,MAGlD,IAAK,UAAWqhD,EAAKO,OAAS55C,EAAEkD,GAAK,OACrC,IAAK,YAAY,IAAK,aAAa,IAAK,YAAa,MAGrD,IAAK,aAAcm2C,EAAKQ,OAAS75C,EAAEkD,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,OAAQo2C,EAAO,IAAM,OAC1B,IAAK,SAAUA,EAAO,KAAO,OAC7B,QACC,GAAGt5C,EAAE,GAAGzI,WAAW,KAAO,KAAO+hD,EAAM,KAAM,IAAIr+C,OAAM,4BAA8B+E,EAAE,MAG1F,MAAOq5C,GAGR,GAAIS,IAAW,WACd,GAAIC,GAAS/sB,GAAS,KAAMgtB,EAAUhtB,GAAS,MAE/C,SAASitB,GAAQp1C,GAEhB,GAAIlI,GAAIkI,EAAEV,MAAM41C,EAChB,KAAIp9C,EAAG,OAAQA,EAAE,IAAKD,EAAE,GAExB,IAAIvF,IAAMwF,EAAE,IAAKD,EAAE+uB,GAAY9uB,EAAE,IACjC,IAAIy8C,GAAMv0C,EAAEV,MAAM61C,EAClB,IAAGZ,EAAKjiD,EAAEqD,EAAI2+C,GAAUC,EAAI,GAC5B,OAAOjiD,GAER,GAAI+iD,GAAS,gBAAiBC,EAAO,gBACrC,OAAO,SAASL,GAASM,GACxB,MAAOA,GAAGhhD,QAAQ8gD,EAAO,IAAIz/C,MAAM0/C,GAAM1hD,IAAIwhD,GAASI,OAAO,SAASx1C,GAAK,MAAOA,GAAEnI,OAMtF,IAAI49C,IAAa,QAAUC,MAC1B,GAAIC,GAAU,YACd,SAASC,GAAWpB,EAAMqB,EAAOC,GAChC,GAAI7W,KAEJ,IAAGuV,EAAKt5C,EAAG+jC,EAAMpoC,KAAK,8BACtB,IAAG29C,EAAKK,KAAM5V,EAAMpoC,KAAK,wBAA0B29C,EAAKK,KAAO,IAC/D,IAAGL,EAAKjoC,GAAI0yB,EAAMpoC,KAAK,aAAe29C,EAAKjoC,GAAK,MAChD,IAAGioC,EAAKG,QAAS1V,EAAMpoC,KAAK,wBAC5B,IAAG29C,EAAKE,OAAQzV,EAAMpoC,KAAK,qBAC3Bg/C,GAAMh/C,KAAK,gBAAkBooC,EAAMnsC,KAAK,IAAM,KAE9C,IAAG0hD,EAAKl+B,EAAG,CAAEu/B,EAAMh/C,KAAK,MAAQi/C,GAAMj/C,KAAK,QAC3C,GAAG29C,EAAKjiD,EAAG,CAAEsjD,EAAMh/C,KAAK,MAAQi/C,GAAMj/C,KAAK,QAC3C,GAAG29C,EAAKI,OAAQ,CAAEiB,EAAMh/C,KAAK,MAAQi/C,GAAMj/C,KAAK,QAEhD,GAAIk/C,GAAQvB,EAAKQ,QAAU,EAC3B,IAAGe,GAAS,eAAiBA,GAAS,QAASA,EAAQ,UAClD,IAAGA,GAAS,YAAaA,EAAQ,KACtC,IAAGA,GAAS,GAAI,CAAEF,EAAMh/C,KAAK,IAAMk/C,EAAQ,IAAMD,GAAMj/C,KAAK,KAAOk/C,EAAQ,KAE3ED,EAAMj/C,KAAK,UACX,OAAO29C,GAIR,QAASwB,GAAUh2C,GAClB,GAAIi2C,OAAYj2C,EAAEnI,KAClB,KAAImI,EAAEnI,EAAG,MAAO,EAEhB,IAAGmI,EAAErK,EAAGigD,EAAW51C,EAAErK,EAAGsgD,EAAM,GAAIA,EAAM,GAExC,OAAOA,GAAM,GAAGnjD,KAAK,IAAMmjD,EAAM,GAAG1hD,QAAQohD,EAAQ,SAAWM,EAAM,GAAGnjD,KAAK,IAG9E,MAAO,SAASmiD,GAASM,GACxB,MAAOA,GAAG3hD,IAAIoiD,GAAWljD,KAAK,OAKhC,IAAIojD,IAAW,0CAA2CC,GAAW,cACrE,IAAIC,IAAa,8CACjB,SAASC,IAAS/iD,EAAGqH,GACpB,GAAIgwB,GAAOhwB,EAAOA,EAAK27C,SAAW,IAClC,IAAIrwB,KACJ,KAAI3yB,EAAG,OAASwE,EAAG,GAInB,IAAGxE,EAAEgM,MAAM,yBAA0B,CACpC2mB,EAAEnuB,EAAI8uB,GAAYgB,GAASt0B,EAAEH,MAAMG,EAAEtB,QAAQ,KAAK,GAAG4D,MAAM,kBAAkB,IAAI,IACjFqwB,GAAEjmB,EAAI4nB,GAASt0B,EACf,IAAGq3B,EAAM1E,EAAEvP,EAAI0Q,GAAWnB,EAAEnuB,OAGxB,IAAYxE,EAAEgM,MAAM62C,IAAY,CACpClwB,EAAEjmB,EAAI4nB,GAASt0B,EACf2yB,GAAEnuB,EAAI8uB,GAAYgB,IAAUt0B,EAAEiB,QAAQ6hD,GAAY,IAAI92C,MAAM42C,SAAepjD,KAAK,IAAIyB,QAAQmxB,GAAS,KACrG,IAAGiF,EAAM1E,EAAEvP,EAAI++B,GAAWR,GAAShvB,EAAEjmB,IAItC,MAAOimB,GAIR,GAAIswB,IAAQ,gDACZ,IAAIC,IAAQ,4BACZ,IAAIC,IAAQ,6BACZ,SAASC,IAAcrkD,EAAMsI,GAC5B,GAAIhF,MAAU4I,EAAK,EACnB,KAAIlM,EAAM,MAAOsD,EAEjB,IAAIqpC,GAAM3sC,EAAKiN,MAAMi3C,GACrB,IAAGvX,EAAK,CACPzgC,EAAKygC,EAAI,GAAGzqC,QAAQiiD,GAAM,IAAI5gD,MAAM6gD,GACpC,KAAI,GAAIlkD,GAAI,EAAGA,GAAKgM,EAAG9L,SAAUF,EAAG,CACnC,GAAID,GAAI+jD,GAAS93C,EAAGhM,GAAGorB,OAAQhjB,EAC/B,IAAGrI,GAAK,KAAMqD,EAAEA,EAAElD,QAAUH,EAE7B0sC,EAAMnZ,GAAYmZ,EAAI,GAAKrpC,GAAEghD,MAAQ3X,EAAI4X,KAAOjhD,GAAEkhD,OAAS7X,EAAI8X,YAEhE,MAAOnhD,GAGR,GAAIohD,IAAe,kBACnB,SAASC,IAAchY,EAAKrkC,GAC3B,IAAIA,EAAKs8C,QAAS,MAAO,EACzB,IAAI3kD,IAAKkzB,GACTlzB,GAAEA,EAAEG,QAAW02B,GAAU,MAAO,MAC/BsV,MAAOhU,GAAW,GAClBmsB,MAAO5X,EAAI2X,MACXG,YAAa9X,EAAI6X,QAElB,KAAI,GAAItkD,GAAI,EAAGA,GAAKysC,EAAIvsC,SAAUF,EAAG,CAAE,GAAGysC,EAAIzsC,IAAM,KAAM,QACzD,IAAIoD,GAAIqpC,EAAIzsC,EACZ,IAAI2kD,GAAQ,MACZ,IAAGvhD,EAAEqK,EAAGk3C,GAASvhD,EAAEqK,MACd,CACJk3C,GAAS,IACT,KAAIvhD,EAAEmC,EAAGnC,EAAEmC,EAAI,EACf,IAAGnC,EAAEmC,EAAEwH,MAAMy3C,IAAeG,GAAS,uBACrCA,IAAS,IAAMjwB,GAAUtxB,EAAEmC,GAAK,OAEjCo/C,GAAS,OACT5kD,GAAEA,EAAEG,QAAU,EAEf,GAAGH,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,QAAYH,GAAE,GAAGA,EAAE,GAAGiC,QAAQ,KAAK,KACjE,MAAOjC,GAAEQ,KAAK,IAEf,QAASqkD,IAAQzgC,GAChB,GAAIpkB,GAAIokB,EAAEvjB,MAAMujB,EAAE,KAAK,IAAI,EAAE,GAAGvjB,MAAM,EAAE,EACxC,QAAQiN,SAAS9N,EAAEa,MAAM,EAAE,GAAG,IAAIiN,SAAS9N,EAAEa,MAAM,EAAE,GAAG,IAAIiN,SAAS9N,EAAEa,MAAM,EAAE,GAAG,KAEnF,QAASikD,IAAQtC,GAChB,IAAI,GAAIviD,GAAE,EAAED,EAAE,EAAGC,GAAG,IAAKA,EAAGD,EAAIA,EAAE,KAAOwiD,EAAIviD,GAAG,IAAI,IAAIuiD,EAAIviD,GAAG,EAAE,EAAEuiD,EAAIviD,GACvE,OAAOD,GAAEmK,SAAS,IAAIoB,cAAc1K,MAAM,GAG3C,QAASkkD,IAAQvC,GAChB,GAAI/pC,GAAI+pC,EAAI,GAAG,IAAKwC,EAAIxC,EAAI,GAAG,IAAK96C,EAAE86C,EAAI,GAAG,GAC7C,IAAIx5C,GAAIpD,KAAK0J,IAAImJ,EAAGusC,EAAGt9C,GAAIoB,EAAIlD,KAAKyJ,IAAIoJ,EAAGusC,EAAGt9C,GAAIwQ,EAAIlP,EAAIF,CAC1D,IAAGoP,IAAM,EAAG,OAAQ,EAAG,EAAGO,EAE1B,IAAIwsC,GAAK,EAAGh8C,EAAI,EAAGi8C,EAAMl8C,EAAIF,CAC7BG,GAAIiP,GAAKgtC,EAAK,EAAI,EAAIA,EAAKA,EAC3B,QAAOl8C,GACN,IAAKyP,GAAGwsC,IAAOD,EAAIt9C,GAAKwQ,EAAI,GAAG,CAAG,OAClC,IAAK8sC,GAAGC,GAAOv9C,EAAI+Q,GAAKP,EAAI,CAAI,OAChC,IAAKxQ,GAAGu9C,GAAOxsC,EAAIusC,GAAK9sC,EAAI,CAAI,QAEjC,OAAQ+sC,EAAK,EAAGh8C,EAAGi8C,EAAK,GAGzB,QAASC,IAAQC,GAChB,GAAIr8C,GAAIq8C,EAAI,GAAIn8C,EAAIm8C,EAAI,GAAIhhD,EAAIghD,EAAI,EACpC,IAAIltC,GAAIjP,EAAI,GAAK7E,EAAI,GAAMA,EAAI,EAAIA,GAAI0E,EAAI1E,EAAI8T,EAAE,CACjD,IAAIsqC,IAAO15C,EAAEA,EAAEA,GAAIu8C,EAAK,EAAEt8C,CAE1B,IAAIu8C,EACJ,IAAGr8C,IAAM,EAAG,OAAOo8C,EAAG,GACrB,IAAK,IAAG,IAAK,GAAGC,EAAIptC,EAAImtC,CAAI7C,GAAI,IAAMtqC,CAAGsqC,GAAI,IAAM8C,CAAG,OACtD,IAAK,GAAGA,EAAIptC,GAAK,EAAImtC,EAAO7C,GAAI,IAAM8C,CAAG9C,GAAI,IAAMtqC,CAAG,OACtD,IAAK,GAAGotC,EAAIptC,GAAKmtC,EAAK,EAAM7C,GAAI,IAAMtqC,CAAGsqC,GAAI,IAAM8C,CAAG,OACtD,IAAK,GAAGA,EAAIptC,GAAK,EAAImtC,EAAO7C,GAAI,IAAM8C,CAAG9C,GAAI,IAAMtqC,CAAG,OACtD,IAAK,GAAGotC,EAAIptC,GAAKmtC,EAAK,EAAM7C,GAAI,IAAMtqC,CAAGsqC,GAAI,IAAM8C,CAAG,OACtD,IAAK,GAAGA,EAAIptC,GAAK,EAAImtC,EAAO7C,GAAI,IAAM8C,CAAG9C,GAAI,IAAMtqC,CAAG,QAEvD,IAAI,GAAIjY,GAAI,EAAGA,GAAK,IAAKA,EAAGuiD,EAAIviD,GAAK2F,KAAKC,MAAM28C,EAAIviD,GAAG,IACvD,OAAOuiD,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,SAAShH,IAASF,GAAS,MAAO54C,MAAKsC,OAAQs2C,EAAS54C,KAAKC,MAAM,IAAIggD,IAAM,KAAOA,IACpF,QAASlH,IAAQmH,GAAM,MAAQlgD,MAAKsC,OAAO49C,EAAK,GAAGD,GAAM,IAAM,IAAM,IACrE,QAASE,IAAWC,GAAO,MAAQpgD,MAAKC,OAAOmgD,EAAMH,GAAM,GAAGA,GAAI,KAAM,IAGxE,QAASI,IAAYC,GAAS,MAAOH,IAAWpH,GAAQD,GAASwH,KAEjE,QAASC,IAAcD,GACtB,GAAIE,GAAQxgD,KAAKsD,IAAIg9C,EAAQD,GAAYC,IAASG,EAAOR,EACzD,IAAGO,EAAQ,KAAO,IAAIP,GAAID,GAASC,GAAIF,KAAWE,GAAK,GAAGjgD,KAAKsD,IAAIg9C,EAAQD,GAAYC,KAAWE,EAAO,CAAEA,EAAQxgD,KAAKsD,IAAIg9C,EAAQD,GAAYC,GAASG,GAAOR,GAChKA,GAAMQ,EAcP,QAASzI,IAAY0I,GACpB,GAAGA,EAAK9H,MAAO,CACd8H,EAAK7H,IAAMC,GAAS4H,EAAK9H,MACzB8H,GAAKlQ,IAAMuI,GAAQ2H,EAAK7H,IACxB6H,GAAKT,IAAMA,OACL,IAAGS,EAAK7H,IAAK,CACnB6H,EAAKlQ,IAAMuI,GAAQ2H,EAAK7H,IACxB6H,GAAK9H,MAAQuH,GAAWO,EAAKlQ,IAC7BkQ,GAAKT,IAAMA,OACL,UAAUS,GAAKlQ,KAAO,SAAU,CACtCkQ,EAAK9H,MAAQuH,GAAWO,EAAKlQ,IAC7BkQ,GAAK7H,IAAMC,GAAS4H,EAAK9H,MACzB8H,GAAKT,IAAMA,GAEZ,GAAGS,EAAKC,kBAAoBD,GAAKC,YAGlC,GAAIC,IAAU,GAAIC,GAAMD,EACxB,SAAS1H,IAAMgH,GAAM,MAAOA,GAAK,GAAKW,GACtC,QAAS1I,IAAM2I,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,IAAcniD,EAAG6lC,EAAQQ,EAAQxjC,GACzCgjC,EAAOuc,UACP,IAAIC,KACJ,IAAI1F,GAAO,OACV38C,EAAE,GAAGwH,MAAMomB,SAAe9c,QAAQ,SAAStV,GAC3C,GAAI6H,GAAI0qB,GAAYvyB,EACpB,QAAO8yB,GAASjrB,EAAE,KACjB,IAAK,YAAY,IAAK,aAAa,IAAK,aAAc,MAGtD,IAAK,WAAW,IAAK,YAAY,IAAK,YACrCg/C,IACA,IAAGh/C,EAAEi/C,WAAYD,EAAOC,WAAa1yB,GAAavsB,EAAEi/C,WACpD,IAAGj/C,EAAEk/C,aAAcF,EAAOE,aAAe3yB,GAAavsB,EAAEk/C,aACxD1c,GAAOuc,QAAQrjD,KAAKsjD,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,GAAG95C,GAAQA,EAAKouB,IAAK,CAC7B,IAAI0rB,EAAM,KAAM,IAAIr+C,OAAM,gBAAkB+E,EAAE,GAAK,oBAOvD,QAASm/C,IAAYxiD,EAAG6lC,EAAQQ,EAAQxjC,GACvCgjC,EAAO4c,QACP,IAAI7iD,KACJ,IAAI+8C,GAAO,OACV38C,EAAE,GAAGwH,MAAMomB,SAAe9c,QAAQ,SAAStV,GAC3C,GAAI6H,GAAI0qB,GAAYvyB,EACpB,QAAO8yB,GAASjrB,EAAE,KACjB,IAAK,UAAU,IAAK,WAAW,IAAK,WAAY,MAGhD,IAAK,UAAU,IAAK,SAAS,IAAK,UACjCzD,IAAWimC,GAAO4c,MAAM1jD,KAAKa,EAAO,OACrC,IAAK,UAAW,MAGhB,IAAK,iBAAkB,MACvB,IAAK,iBACL,IAAK,kBAAmBimC,EAAO4c,MAAM1jD,KAAKa,EAAOA,KAAW,OAG5D,IAAK,gBAAgB,IAAK,gBACzB,GAAGyD,EAAEq/C,YAAa9iD,EAAK8iD,YAAcr/C,EAAEq/C,WACvC,OACD,IAAK,kBAAkB,IAAK,iBAAkB,MAG9C,IAAK,WACJ,IAAI9iD,EAAK+iD,QAAS/iD,EAAK+iD,UACvB,IAAGt/C,EAAEu/C,QAAShjD,EAAK+iD,QAAQC,QAAUt6C,SAASjF,EAAEu/C,QAAS,GACzD,IAAGv/C,EAAEw/C,MAAOjjD,EAAK+iD,QAAQE,MAAQv6C,SAASjF,EAAEw/C,MAAO,GACnD,IAAGx/C,EAAE48C,KAAMrgD,EAAK+iD,QAAQ1C,KAAOh0C,WAAW5I,EAAE48C,KAE5C,IAAG58C,EAAE25C,IAAKp9C,EAAK+iD,QAAQ3F,IAAM35C,EAAE25C,IAAI3hD,OAAO,EAC1C,OACD,IAAK,cAAc,IAAK,aAAc,MAGtC,IAAK,WACJ,IAAIuE,EAAKkjD,QAASljD,EAAKkjD,UACvB,IAAGz/C,EAAEw/C,MAAOjjD,EAAKkjD,QAAQD,MAAQv6C,SAASjF,EAAEw/C,MAAO,GACnD,IAAGx/C,EAAE48C,KAAMrgD,EAAKkjD,QAAQ7C,KAAOh0C,WAAW5I,EAAE48C,KAE5C,IAAG58C,EAAE25C,KAAO,KAAMp9C,EAAKkjD,QAAQ9F,IAAM35C,EAAE25C,IAAI3hD,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,OAAQshD,EAAO,IAAM,OAC1B,IAAK,SAAUA,EAAO,KAAO,OAC7B,QAAS,GAAG95C,GAAQA,EAAKouB,IAAK,CAC7B,IAAI0rB,EAAM,KAAM,IAAIr+C,OAAM,gBAAkB+E,EAAE,GAAK,kBAOvD,QAAS0/C,IAAY/iD,EAAG6lC,EAAQQ,EAAQxjC,GACvCgjC,EAAOmd,QACP,IAAItG,KACJ,IAAIC,GAAO,OACV38C,EAAE,GAAGwH,MAAMomB,SAAe9c,QAAQ,SAAStV,GAC3C,GAAI6H,GAAI0qB,GAAYvyB,EACpB,QAAO8yB,GAASjrB,EAAE,KACjB,IAAK,UAAU,IAAK,WAAW,IAAK,WAAY,MAGhD,IAAK,SAAS,IAAK,SAAU,MAC7B,IAAK,WAAW,IAAK,UACpBwiC,EAAOmd,MAAMjkD,KAAK29C,EAClBA,KACA,OAGD,IAAK,QAAS,GAAGr5C,EAAEkD,IAAKm2C,EAAKjmC,KAAOqZ,GAASzsB,EAAEkD,IAAM,OACrD,IAAK,WAAW,IAAK,UAAW,MAGhC,IAAK,KAAMm2C,EAAKuG,KAAO5/C,EAAEkD,IAAMqpB,GAAavsB,EAAEkD,KAAO,CAAG,OACxD,IAAK,OAAQm2C,EAAKuG,KAAO,CAAG,OAG5B,IAAK,KAAMvG,EAAKwG,OAAS7/C,EAAEkD,IAAMqpB,GAAavsB,EAAEkD,KAAO,CAAG,OAC1D,IAAK,OAAQm2C,EAAKwG,OAAS,CAAG,OAG9B,IAAK,KACJ,OAAO7/C,EAAEkD,KACR,IAAK,OAAQm2C,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,OAASz5C,EAAEkD,IAAMqpB,GAAavsB,EAAEkD,KAAO,CAAG,OAC/D,IAAK,YAAam2C,EAAKI,OAAS,CAAG,OAGnC,IAAK,WAAYJ,EAAKG,QAAUx5C,EAAEkD,IAAMqpB,GAAavsB,EAAEkD,KAAO,CAAG,OACjE,IAAK,aAAcm2C,EAAKG,QAAU,CAAG,OAGrC,IAAK,UAAWH,EAAKE,OAASv5C,EAAEkD,IAAMqpB,GAAavsB,EAAEkD,KAAO,CAAG,OAC/D,IAAK,YAAam2C,EAAKE,OAAS,CAAG,OAGnC,IAAK,YAAaF,EAAK0G,SAAW//C,EAAEkD,IAAMqpB,GAAavsB,EAAEkD,KAAO,CAAG,OACnE,IAAK,cAAem2C,EAAK0G,SAAW,CAAG,OAGvC,IAAK,UAAW1G,EAAK2G,OAAShgD,EAAEkD,IAAMqpB,GAAavsB,EAAEkD,KAAO,CAAG,OAC/D,IAAK,YAAam2C,EAAK2G,OAAS,CAAG,OAGnC,IAAK,MAAO,GAAGhgD,EAAEkD,IAAKm2C,EAAKjoC,IAAMpR,EAAEkD,GAAK,OACxC,IAAK,SAAS,IAAK,QAAS,MAG5B,IAAK,aAAc,GAAGlD,EAAEkD,IAAKm2C,EAAK4G,UAAYjgD,EAAEkD,GAAK,OACrD,IAAK,gBAAgB,IAAK,eAAgB,MAG1C,IAAK,UAAW,GAAGlD,EAAEkD,IAAKm2C,EAAKO,OAAS30C,SAASjF,EAAEkD,IAAI,GAAK,OAC5D,IAAK,aAAa,IAAK,YAAa,MAGpC,IAAK,UAAW,GAAGlD,EAAEkD,IAAKm2C,EAAK6G,OAASlgD,EAAEkD,GAAK,OAC/C,IAAK,aAAa,IAAK,YAAa,MAGpC,IAAK,WACJ,GAAGlD,EAAEkD,KAAO,IAAK,KACjBlD,GAAEitC,SAAW33C,EAAM2P,SAASjF,EAAEkD,IAAK,IACnC,OAGD,IAAK,SACJ,IAAIm2C,EAAKxjC,MAAOwjC,EAAKxjC,QACrB,IAAG7V,EAAEmgD,KAAM9G,EAAKxjC,MAAMsqC,KAAO5zB,GAAavsB,EAAEmgD,KAE5C,IAAGngD,EAAE25C,IAAKN,EAAKxjC,MAAM8jC,IAAM35C,EAAE25C,IAAI3hD,OAAO,OACnC,IAAGgI,EAAEu/C,QAAS,CAClBlG,EAAKxjC,MAAMuqC,MAAQn7C,SAASjF,EAAEu/C,QAAS,GACvC,IAAIc,GAAMrkB,GAAOqd,EAAKxjC,MAAMuqC,MAC5B,IAAG/G,EAAKxjC,MAAMuqC,OAAS,GAAIC,EAAMrkB,GAAO,EACxC,KAAIqkB,EAAKA,EAAMrkB,GAAO,EACtBqd,GAAKxjC,MAAM8jC,IAAM0G,EAAI,GAAG/+C,SAAS,IAAM++C,EAAI,GAAG/+C,SAAS,IAAM++C,EAAI,GAAG/+C,SAAS,QACvE,IAAGtB,EAAEw/C,MAAO,CAClBnG,EAAKxjC,MAAM2pC,MAAQv6C,SAASjF,EAAEw/C,MAAO,GACrC,IAAGx/C,EAAE48C,KAAMvD,EAAKxjC,MAAM+mC,KAAOh0C,WAAW5I,EAAE48C,KAC1C,IAAG58C,EAAEw/C,OAASxc,EAAOsd,eAAiBtd,EAAOsd,cAAcC,UAAW,CACrElH,EAAKxjC,MAAM8jC,IAAM+C,GAAS1Z,EAAOsd,cAAcC,UAAUlH,EAAKxjC,MAAM2pC,OAAO7F,IAAKN,EAAKxjC,MAAM+mC,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,GAAG95C,GAAQA,EAAKouB,IAAK,CAC7B,IAAI0rB,EAAM,KAAM,IAAIr+C,OAAM,gBAAkB+E,EAAE,GAAK,kBAOvD,QAASwgD,IAAc7jD,EAAG6lC,EAAQhjC,GACjCgjC,EAAOie,YACP,IAAIjrC,GAAsB2Q,EAAK/pB,EAAIkN,OACnC,KAAI,GAAIlS,GAAE,EAAGA,EAAIoe,EAAEle,SAAUF,EAAGorC,EAAOie,UAAUjrC,EAAEpe,IAAMgF,EAAIkN,OAAOkM,EAAEpe,GACtE,IAAI6I,GAAItD,EAAE,GAAGwH,MAAMomB,GACnB,KAAItqB,EAAG,MACP,KAAI7I,EAAE,EAAGA,EAAI6I,EAAE3I,SAAUF,EAAG,CAC3B,GAAI4I,GAAI0qB,GAAYzqB,EAAE7I,GACtB,QAAO6zB,GAASjrB,EAAE,KACjB,IAAK,YAAY,IAAK,cAAc,IAAK,cAAc,IAAK,YAAa,MACzE,IAAK,UAAW,CACf,GAAI8I,GAAE2iB,GAAYgB,GAASzsB,EAAE0gD,aAAcj9C,EAAEwB,SAASjF,EAAEq2B,SAAS,GACjEmM,GAAOie,UAAUh9C,GAAKqF,CACtB,IAAGrF,EAAE,EAAG,CACP,GAAGA,EAAI,IAAO,CACb,IAAIA,EAAI,IAAOA,EAAI,KAAQA,EAAG,GAAG++B,EAAOie,UAAUh9C,IAAM,KAAM,KAC9D++B,GAAOie,UAAUh9C,GAAKqF,EAEvB1M,EAAIiN,KAAKP,EAAErF,IAEX,MACF,IAAK,YAAa,MAClB,QAAS,GAAGjE,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,gBAAkB+E,EAAE,GAAK,kBAKlE,QAAS2gD,IAAcC,GACtB,GAAIzpD,IAAK,eACP,EAAE,IAAI,GAAG,KAAK,GAAG,KAAW,GAAgB,MAAMsW,QAAQ,SAAS5I,GACpE,IAAI,GAAIzN,GAAIyN,EAAE,GAAIzN,GAAKyN,EAAE,KAAMzN,EAAG,GAAGwpD,EAAGxpD,IAAM,KAAMD,EAAEA,EAAEG,QAAW02B,GAAU,SAAS,MAAMqI,SAASj/B,EAAEspD,WAAW50B,GAAU80B,EAAGxpD,OAEhI,IAAGD,EAAEG,SAAW,EAAG,MAAO,EAC1BH,GAAEA,EAAEG,QAAU,YACdH,GAAE,GAAK62B,GAAU,UAAW,MAAQytB,MAAMtkD,EAAEG,OAAO,IAAK8B,QAAQ,KAAM,IACtE,OAAOjC,GAAEQ,KAAK,IAIf,GAAIkpD,KAAgB,WAAY,SAAU,SAAU,WAAY,OAChE,IAAIC,KAAgB,iBAAkB,cAAe,YAAa,YAAa,oBAAqB,kBAAmB,cAAe,cACtI,SAASC,IAAcpkD,EAAG6lC,EAAQhjC,GACjCgjC,EAAOwe,SACP,IAAIC,EACJ,IAAI3H,GAAO,OACV38C,EAAE,GAAGwH,MAAMomB,SAAe9c,QAAQ,SAAStV,GAC3C,GAAI6H,GAAI0qB,GAAYvyB,GAAIf,EAAI,CAC5B,QAAO6zB,GAASjrB,EAAE,KACjB,IAAK,YAAY,IAAK,aAAa,IAAK,cAAc,IAAK,aAAc,MAGzE,IAAK,OAAO,IAAK,QAChBihD,EAAKjhD,QACEihD,GAAG,EACV,KAAI7pD,EAAI,EAAGA,EAAIypD,GAAYvpD,SAAUF,EAAG,GAAG6pD,EAAGJ,GAAYzpD,IACzD6pD,EAAGJ,GAAYzpD,IAAM6N,SAASg8C,EAAGJ,GAAYzpD,IAAK,GACnD,KAAIA,EAAI,EAAGA,EAAI0pD,GAAYxpD,SAAUF,EAAG,GAAG6pD,EAAGH,GAAY1pD,IACzD6pD,EAAGH,GAAY1pD,IAAMm1B,GAAa00B,EAAGH,GAAY1pD,IAClD,IAAGorC,EAAOie,WAAaQ,EAAG5qB,SAAW,IAAO,CAC3C,IAAIj/B,EAAI,IAAOA,EAAI,KAAQA,EAAG,GAAGorC,EAAOie,UAAUQ,EAAG5qB,WAAamM,EAAOie,UAAUrpD,GAAI,CAAE6pD,EAAG5qB,SAAWj/B,CAAG,QAE3GorC,EAAOwe,OAAOtlD,KAAKulD,EAAK,OACzB,IAAK,QAAS,MAGd,IAAK,cAAc,IAAK,eACvB,GAAIC,KACJ,IAAGlhD,EAAEmhD,SAAUD,EAAUC,SAAWnhD,EAAEmhD,QACtC,IAAGnhD,EAAEohD,WAAYF,EAAUE,WAAaphD,EAAEohD,UAC1C,IAAGphD,EAAEqhD,cAAgB,KAAMH,EAAUG,aAAerhD,EAAEqhD,YACtD,IAAGrhD,EAAEshD,OAAQJ,EAAUI,OAASthD,EAAEshD,MAClC,IAAGthD,EAAEuhD,SAAUL,EAAUK,SAAWh1B,GAAavsB,EAAEuhD,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,GAAG95C,GAAQA,EAAKouB,IAAK,CAC7B,IAAI0rB,EAAM,KAAM,IAAIr+C,OAAM,gBAAkB+E,EAAE,GAAK,oBAMvD,QAASwhD,IAAcC,GACtB,GAAItqD,KACJA,GAAEA,EAAEG,QAAW02B,GAAU,UAAU,KACnCyzB,GAAQh0C,QAAQ,SAAS1S,GACxB5D,EAAEA,EAAEG,QAAW02B,GAAU,KAAM,KAAMjzB,IAEtC5D,GAAEA,EAAEG,QAAU,YACd,IAAGH,EAAEG,SAAW,EAAG,MAAO,EAC1BH,GAAE,GAAK62B,GAAU,UAAU,MAAOytB,MAAMtkD,EAAEG,OAAO,IAAI8B,QAAQ,KAAK,IAClE,OAAOjC,GAAEQ,KAAK,IAIf,GAAI+pD,IAAe,QAAUC,MAC7B,GAAIC,GAAc,uDAClB,IAAIC,GAAc,uDAClB,IAAIC,GAAa,mDACjB,IAAIC,GAAa,mDACjB,IAAIC,GAAe,uDAEnB,OAAO,SAASN,GAAcxqD,EAAM8rC,EAAQxjC,GAC3C,GAAIgjC,KACJ,KAAItrC,EAAM,MAAOsrC,EACjBtrC,GAAOA,EAAKkC,QAAQ,sBAAsB,IAAIA,QAAQ,+BAA+B,GAErF,IAAIuD,EAGJ,IAAIA,EAAEzF,EAAKiN,MAAMy9C,GAAepB,GAAc7jD,EAAG6lC,EAAQhjC,EAGzD,IAAI7C,EAAEzF,EAAKiN,MAAM49C,GAAcrC,GAAY/iD,EAAG6lC,EAAQQ,EAAQxjC,EAG9D,IAAI7C,EAAEzF,EAAKiN,MAAM29C,GAAc3C,GAAYxiD,EAAG6lC,EAAQQ,EAAQxjC,EAG9D,IAAI7C,EAAEzF,EAAKiN,MAAM69C,GAAgBlD,GAAcniD,EAAG6lC,EAAQQ,EAAQxjC,EAMlE,IAAI7C,EAAEzF,EAAKiN,MAAM09C,GAAed,GAAcpkD,EAAG6lC,EAAQhjC,EAOzD,OAAOgjC,MAIR,SAASyf,IAAcC,EAAI1iD,GAC1B,GAAIrI,IAAKkzB,GAAY2D,GAAU,aAAc,MAC5CsV,MAAShU,GAAW,GACpBwa,WAAYvb,GAAMY,MACdntB,CACL,IAAGkgD,EAAG9lD,MAAQ4F,EAAI2+C,GAAcuB,EAAG9lD,OAAS,KAAMjF,EAAEA,EAAEG,QAAU0K,CAChE7K,GAAEA,EAAEG,QAAU,mIACdH,GAAEA,EAAEG,QAAU,0HACdH,GAAEA,EAAEG,QAAU,yFACdH,GAAEA,EAAEG,QAAU,8FACd,IAAI0K,EAAIw/C,GAAchiD,EAAKiiD,SAAWtqD,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,GAAGiC,QAAQ,KAAK,KACxE,MAAOjC,GAAEQ,KAAK,IAGf,GAAIwqD,KACH,WAAY,WAAY,WAAY,WACpC,eAAgB,eAAgB,eAChC,eAAgB,eAAgB,eAChC,aAAc,gBAGf,SAASC,IAAgBzlD,EAAGqmC,EAAQxjC,GACnCwjC,EAAOsd,cAAcC,YACrB,IAAI1qC,OACHlZ,EAAE,GAAGwH,MAAMomB,SAAe9c,QAAQ,SAAStV,GAC3C,GAAI6H,GAAI0qB,GAAYvyB,EACpB,QAAO6H,EAAE,IAER,IAAK,gBAAgB,IAAK,iBAAkB,MAG5C,IAAK,aACJ6V,EAAM8jC,IAAM35C,EAAEkD,GAAK,OAGpB,IAAK,YACJ2S,EAAM8jC,IAAM35C,EAAEqiD,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,GAAIriD,EAAE,GAAG9G,OAAO,KAAO,IAAK,CAC3B8pC,EAAOsd,cAAcC,UAAU4B,GAAmBtrD,QAAQmJ,EAAE,KAAO6V,CACnEA,UACM,CACNA,EAAMzC,KAAOpT,EAAE,GAAGhI,MAAM,EAAGgI,EAAE,GAAG1I,OAAS,GAE1C,MAED,QAAS,GAAGkI,GAAQA,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,gBAAkB+E,EAAE,GAAK,qBAM1E,QAASsiD,OAGT,QAASC,OAET,GAAIC,IAAY,4CAChB,IAAIC,IAAY,8CAChB,IAAIC,IAAY,4CAGhB,SAASC,IAAoBzrD,EAAM8rC,EAAQxjC,GAC1CwjC,EAAOsd,gBAEP,IAAI3jD,KAIF,YAAa6lD,GAAWJ,KAExB,aAAcK,GAAWH,KAEzB,YAAaI,GAAWH,KACxB90C,QAAQ,SAASxN,GAClB,KAAKtD,EAAEzF,EAAKiN,MAAMlE,EAAE,KAAM,KAAM,IAAIhF,OAAMgF,EAAE,GAAK,8BACjDA,GAAE,GAAGtD,EAAGqmC,EAAQxjC,KAIlB,GAAIojD,IAAe,oDAGnB,SAASC,IAAgB3rD,EAAMsI,GAE9B,IAAItI,GAAQA,EAAKI,SAAW,EAAGJ,EAAO4rD,IAEtC,IAAInmD,EACJ,IAAIqmC,KAGJ,MAAKrmC,EAAEzF,EAAKiN,MAAMy+C,KAAgB,KAAM,IAAI3nD,OAAM,mCAClD0nD,IAAoBhmD,EAAE,GAAIqmC,EAAQxjC,EAClCwjC,GAAOnvB,IAAM3c,CACb,OAAO8rC,GAGR,QAAS8f,IAAYC,EAAQvjD,GAC5B,GAAGA,GAAQA,EAAKwjD,UAAW,MAAOxjD,GAAKwjD,SACvC,IAAGD,SAAiBA,GAAOlvC,KAAO,SAAU,MAAOkvC,GAAOlvC,GAC1D,IAAI1c,IAAKkzB,GACTlzB,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,qDAClBH,GAAEA,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;AACjBH,EAAEA,EAAEG,QAAY,YAChBH,GAAEA,EAAEG,QAAW,qBACfH,GAAEA,EAAEG,QAAW,wBACfH,GAAEA,EAAEG,QAAU,YACd,OAAOH,GAAEQ,KAAK,IAEf,QAASsrD,IAAiB/rD,EAAMkc,EAAM5T,GACpC,GAAInE,IAAQ6nD,SAAWC,QAAUC,SACjC,KAAKlsD,EACH,MAAOmE,EACT,IAAIi+C,GAAO,KACX,IAAI+J,GAAW,CACfnsD,GAAKkC,QAAQmxB,GAAU,SAASpyB,GAC9B,GAAI6H,GAAI0qB,GAAYvyB,EACpB,QAAQ8yB,GAASjrB,EAAE,KACjB,IAAK,QACH,MACF,IAAK,aACL,IAAK,cACH,MACF,IAAK,kBACL,IAAK,mBACH,MACF,IAAK,gBACH3E,EAAI6nD,MAAMxnD,MAAO0X,KAAMpT,EAAEoT,MACzB,OACF,IAAK,kBACH,MACF,IAAK,kBACH,MACF,IAAK,oBACH,MACF,IAAK,OACH,MACF,IAAK,QACH,MACF,IAAK,MACH,GAAIiwC,GAAY,EACdhoD,EAAI8nD,KAAKznD,MAAOsH,KAAM3H,EAAI6nD,MAAMljD,EAAErD,EAAI,GAAGyW,KAAMgtC,OAAQpgD,EAAEtD,QACtD,IAAI2mD,GAAY,EACnBhoD,EAAI+nD,MAAM1nD,MAAOsH,KAAM3H,EAAI6nD,MAAMljD,EAAErD,EAAI,GAAGyW,KAAMgtC,OAAQpgD,EAAEtD,GAC5D,OACF,IAAK,QACH,MACF,IAAK,gBACH2mD,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,OACH/J,EAAO,IACP,OACF,IAAK,SACHA,EAAO,KACP,OACF,QACE,IAAKA,GAAQ95C,EAAKouB,IAChB,KAAM,IAAI3yB,OAAM,gBAAkB+E,EAAE,GAAK,iBAE/C,MAAO7H,IAET,OAAOkD,GAET,QAASioD,MACP,GAAInsD,IAAKkzB,GACTlzB,GAAEuE,KAAK,o2BACP,OAAOvE,GAAEQ,KAAK,IAGhB,QAAS4rD,OAMT,QAASC,IAAgBtsD,EAAMmvC,EAAKjzB,EAAMwE,GACzC,IAAI1gB,EAAM,MAAOA,EACjB,IAAIsI,GAAOoY,KAEX,IAAI0hC,GAAO,MAAOx3B,EAAM,KAExBqR,IAAaj8B,EAAM,QAASusD,GAAYvgD,EAAK0M,EAAG2jB,GAC/C,GAAGzR,EAAK,MACR,QAAOyR,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,IACJ+lB,EAAO,IAAM,OACd,IAAK,IACJA,EAAO,KAAO,OAEf,QACC,GAAG1pC,EAAE9P,EAAE,MACF,KAAIw5C,GAAQ95C,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,uBAAyBs4B,EAAGjyB,SAAS,QAEhF9B,GAIJ,QAASkkD,IAAcxsD,EAAMwrC,GAC5B,IAAIxrC,EAAM,MAAO,IAYjB,IAAIysD,IAAMzsD,EAAKiN,MAAM,kCAAkC,GAAG,KAAK,EAE/D,OAAOu+B,GAAK,OAAOihB,GAAIpd,OAIxB,GAAIqd,IAAW,IACf,SAASC,IAAmB7c,EAAK7E,GAChC,GAAI2hB,IAAS,MAAO,MAEpB,IAAIC,IAAQ,SAASD,EAAM,GAAGA,EAAM,GAAGA,EAAM,GAAGA,EAAM,GAAG,OAAOnsD,KAAK,IACrE,IAAIR,IACH62B,GAAU,MAAO,MAAQg2B,UAAWz0B,GAAO7yB,EAAGunD,UAAW10B,GAAOp4B,EAAG+sD,UAAW30B,GAAOp3B,EAAGgsD,WAAY50B,GAAO9c,KAAMrZ,QAAQ,MAAM,KAC/H40B,GAAU,gBAAiBA,GAAU,UAAW,MAAOo2B,QAAQ,OAAQltD,KAAO8vC,KAAQod,QAAQ,SAC9Fp2B,GAAU,eACTA,GAAU,WAAY,MAAOq2B,UAAU,UACvCr2B,GAAU,SAAU,MAAOs2B,gBAAgB,IAAKC,gBAAgB,UAC/D5sD,KAAK,KAAMgsD,GAAG,cAAea,QAAQ,IAAKC,UAAUX,EAAMnsD,KAAK,KAAKmhB,KAAKirC,IAE5E,OAAMH,GAAW5c,EAAM,IAAM4c,IAAY,GAEzCzhB,GAAS10B,QAAQ,SAAStV,GAC1B,GAAI4C,GAAI86B,GAAY19B,EAAE,GACtB,IAAIusD,IAAYC,OAAS,UAAW3hD,KAAO,WAC3C,IAAG0hD,EAAS1hD,MAAQ,WAAY0hD,EAASE,MAAQ,MACjD,IAAIC,GAAWH,EAAS1hD,MAAQ,WAAagrB,GAAU,SAAU,MAAOhrB,KAAK,mBAAoBohD,QAAQ,SAAW,IACpH,IAAIU,GAAU92B,GAAU,SAAU62B,EAAUH,EAE5C,IAAIK,IAAYC,GAAG,IAAKC,SAAW,OACjCrB,EAEFzsD,GAAIA,EAAE4E,QACN,WAAagyB,IACZ41B,GAAG,WAAaC,GAChB5gD,KAAK,eACL8gC,MAAM,yFAA2F3rC,EAAE,GAAG28C,OAAS,qBAAuB,IACtIoQ,UAAU,UACVC,YAAY,YACR,IACJL,EACA92B,GAAU,WAAY,KAAM+2B,GAC5B/2B,GAAU,SAAU,MAAOu2B,gBAAgB,SAC3C,6DACA,mCACC,qBACA,qBAEAz2B,GAAS,YAAa/yB,EAAEA,EAAE,EAAG,EAAGA,EAAE8J,EAAE,EAAG,EAAG9J,EAAEA,EAAE,EAAG,GAAIA,EAAE8J,EAAE,EAAG,IAAIlN,KAAK,MACrEm2B,GAAS,aAAc,SACvBA,GAAS,QAASr2B,OAAOsD,EAAE8J,IAC3BipB,GAAS,WAAYr2B,OAAOsD,EAAEA,IAC9B5C,EAAE,GAAG28C,OAAS,GAAK,eACpB,kBACD,gBAEA39C,GAAEuE,KAAK,SACP,OAAOvE,GAAEQ,KAAK,IAEf,QAASytD,IAAsB3uB,EAAO0L,EAAUkjB,EAAUjiB,GACzD,GAAIrM,GAAQ18B,MAAMS,QAAQ27B,EAC1B,IAAIjC,EACJ2N,GAAS10B,QAAQ,SAAS63C,GACzB,GAAIzgD,GAAIgxB,GAAYyvB,EAAQC,IAC5B,IAAGxuB,EAAO,CACT,IAAIN,EAAM5xB,EAAEA,GAAI4xB,EAAM5xB,EAAEA,KACxB2vB,GAAOiC,EAAM5xB,EAAEA,GAAGA,EAAE9J,OACdy5B,GAAOiC,EAAM6uB,EAAQC,IAC5B,KAAK/wB,EAAM,CACVA,GAAS73B,EAAE,IACX,IAAGo6B,EAAON,EAAM5xB,EAAEA,GAAGA,EAAE9J,GAAKy5B,MACvBiC,GAAM6uB,EAAQC,KAAO/wB,CAC1B,IAAIK,GAAQqB,GAAkBO,EAAM,SAAS,kBAC7C,IAAG5B,EAAMr6B,EAAEqK,EAAIA,EAAEA,EAAGgwB,EAAMr6B,EAAEqK,EAAIA,EAAEA,CAClC,IAAGgwB,EAAMj7B,EAAEiL,EAAIA,EAAEA,EAAGgwB,EAAMj7B,EAAEiL,EAAIA,EAAEA,CAClC,IAAGgwB,EAAMr6B,EAAEO,EAAI8J,EAAE9J,EAAG85B,EAAMr6B,EAAEO,EAAI8J,EAAE9J,CAClC,IAAG85B,EAAMj7B,EAAEmB,EAAI8J,EAAE9J,EAAG85B,EAAMj7B,EAAEmB,EAAI8J,EAAE9J,CAClC,IAAI6mB,GAAUmU,GAAalB,EAC3B,IAAIjT,IAAY6U,EAAM,QAASA,EAAM,QAAU7U,EAGhD,IAAK4S,EAAKz5B,EAAGy5B,EAAKz5B,IAClB,IAAI5D,IAAM+kB,EAAGopC,EAAQE,OAAQ7oD,EAAG2oD,EAAQ3oD,EAAGkI,EAAGygD,EAAQzgD,EAAG/E,EAAGulD,EAC5D,IAAGC,EAAQ/pC,EAAGpkB,EAAEokB,EAAI+pC,EAAQ/pC,CAG5B,KAAI,GAAInkB,GAAIo9B,EAAKz5B,EAAEzD,OAAS,EAAGF,GAAK,IAAKA,EAAG,CAC3C,IAAIiuD,GAAY7wB,EAAKz5B,EAAE3D,GAAG0I,EAAG,MAC7B,IAAGulD,IAAa7wB,EAAKz5B,EAAE3D,GAAG0I,EAAG00B,EAAKz5B,EAAEyoB,OAAOpsB,EAAG,GAE/C,GAAGiuD,GAAYjiB,EAAQ,IAAIhsC,EAAI,EAAGA,EAAIgsC,EAAO9rC,SAAUF,EAAG,CACzD,GAAGD,EAAE+kB,GAAKknB,EAAOhsC,GAAGusD,GAAI,CAAExsD,EAAE+kB,EAAIknB,EAAOhsC,GAAGgc,MAAQjc,EAAE+kB,CAAG,QAExDsY,EAAKz5B,EAAEW,KAAKvE,KAKd,QAASsuD,IAAmBvuD,EAAMsI,GAEjC,GAAGtI,EAAKiN,MAAM,2BAA4B,QAC1C,IAAIuhD,KACJ,IAAIC,KACJ,IAAIC,GAAU1uD,EAAKiN,MAAM,kDACzB,IAAGyhD,GAAWA,EAAQ,GAAIA,EAAQ,GAAGnrD,MAAM,mBAAmBgT,QAAQ,SAAStV,GAC9E,GAAGA,IAAM,IAAMA,EAAEqqB,SAAW,GAAI,MAChC,IAAItG,GAAI/jB,EAAEgM,MAAM,6BAChB,IAAG+X,EAAGwpC,EAAQhqD,KAAKwgB,EAAE,KAEtB,IAAI2pC,GAAU3uD,EAAKiN,MAAM,0DACzB,IAAG0hD,GAAWA,EAAQ,GAAIA,EAAQ,GAAGprD,MAAM,oBAAoBgT,QAAQ,SAAStV,GAC/E,GAAGA,IAAM,IAAMA,EAAEqqB,SAAW,GAAI,MAChC,IAAIsjC,GAAK3tD,EAAEgM,MAAM,0BACjB,KAAI2hD,EAAI,MACR,IAAI9lD,GAAI0qB,GAAYo7B,EAAG,GACvB,IAAIR,IAAaE,OAAQxlD,EAAE+lD,UAAYL,EAAQ1lD,EAAE+lD,WAAa,eAAgBR,IAAKvlD,EAAEulD,IAAKS,KAAMhmD,EAAEgmD,KAClG,IAAIxxB,GAAOqB,GAAY71B,EAAEulD,IACzB,IAAG/lD,EAAK6tC,WAAa7tC,EAAK6tC,WAAa7Y,EAAK3vB,EAAG,MAC/C,IAAIohD,GAAY9tD,EAAEgM,MAAM,4CACxB,IAAI+hD,KAAOD,KAAeA,EAAU,IAAM/K,GAAS+K,EAAU,MAAQphD,EAAE,GAAGlI,EAAE,GAAG4e,EAAE,GACjF+pC,GAAQzgD,EAAIqhD,EAAGrhD,CACf,IAAGqhD,EAAGrhD,GAAK,UAAWqhD,EAAGvpD,EAAIupD,EAAG3qC,EAAI,EACpC+pC,GAAQ3oD,GAAKupD,EAAGvpD,GAAG,IAAIvD,QAAQ,QAAQ,MAAMA,QAAQ,MAAM,KAC3D,IAAGoG,EAAK27C,SAAUmK,EAAQ/pC,EAAI2qC,EAAG3qC,CACjCoqC,GAAYjqD,KAAK4pD,IAElB,OAAOK,GAGR,QAASQ,IAAmBjvD,GAC3B,GAAIC,IAAKkzB,GAAY2D,GAAU,WAAY,MAAQsV,MAAShU,GAAW,KAEvE,IAAI82B,KACJjvD,GAAEuE,KAAK,YACPxE,GAAKuW,QAAQ,SAAStV,GAAKA,EAAE,GAAGsV,QAAQ,SAASzL,GAAK,GAAIka,GAAI4P,GAAU9pB,EAAEka,EACzE,IAAGkqC,EAAQvvD,QAAQqlB,KAAO,EAAG,CAC5BkqC,EAAQ1qD,KAAKwgB,EACb/kB,GAAEuE,KAAK,WAAawgB,EAAI,aAEzB,GAAGla,EAAElC,GAAKkC,EAAEqkD,IAAMD,EAAQvvD,QAAQ,MAAQmL,EAAEqkD,MAAQ,EAAG,CACtDD,EAAQ1qD,KAAK,MAAQsG,EAAEqkD,GACvBlvD,GAAEuE,KAAK,WAAa,MAAQsG,EAAEqkD,GAAK,iBAGrC,IAAGD,EAAQ9uD,QAAU,EAAG,CAAE8uD,EAAQ1qD,KAAK,UAAYvE,GAAEuE,KAAK,4BAC1DvE,EAAEuE,KAAK,aACPvE,GAAEuE,KAAK,gBACPxE,GAAKuW,QAAQ,SAAShS,GAErB,GAAI6qD,GAAa,EAAGC,IACpB,IAAG9qD,EAAE,GAAG,IAAMA,EAAE,GAAG,GAAGqE,GAAKrE,EAAE,GAAG,GAAG4qD,GAAIC,EAAaF,EAAQvvD,QAAQ,MAAQ4E,EAAE,GAAG,GAAG4qD,QAC/E5qD,GAAE,GAAGgS,QAAQ,SAAS1S,GAC1B,GAAGA,EAAEmhB,EAAGoqC,EAAaF,EAAQvvD,QAAQi1B,GAAU/wB,EAAEmhB,GACjDqqC,GAAG7qD,KAAKX,EAAE4B,GAAG,KAEdxF,GAAEuE,KAAK,iBAAmBD,EAAE,GAAK,eAAiB6qD,EAAa,WAC/D,IAAGC,EAAGjvD,QAAU,EAAGH,EAAEuE,KAAKoyB,GAAS,IAAKhC,GAAUy6B,EAAG,IAAI,UACpD,CAEJ,GAAI5pD,GAAI,iBAAoB4pD,EAAG,GAAM,IACrC,KAAI,GAAInvD,GAAI,EAAGA,EAAImvD,EAAGjvD,SAAUF,EAAGuF,GAAK,eAAiB4pD,EAAGnvD,GAAK,IACjED,GAAEuE,KAAKoyB,GAAS,IAAKhC,GAAUnvB,KAEhCxF,EAAEuE,KAAK,sBAERvE,GAAEuE,KAAK,iBACP,IAAGvE,EAAEG,OAAO,EAAG,CAAEH,EAAEA,EAAEG,QAAU,aAAiBH,GAAE,GAAGA,EAAE,GAAGiC,QAAQ,KAAK,KACvE,MAAOjC,GAAEQ,KAAK,IAIf,QAAS6uD,IAAgBtvD,EAAMsI,GAC9B,GAAInE,KACJ,IAAIi+C,GAAO,MAAOgM,KAAcmB,EAAO,CACvCvvD,GAAKkC,QAAQmxB,GAAU,QAASm8B,GAAUvuD,EAAG8L,GAC5C,GAAIjE,GAAI0qB,GAAYvyB,EACpB,QAAO8yB,GAASjrB,EAAE,KACjB,IAAK,QAAS,MAGd,IAAK,oBAAqB,MAC1B,IAAK,sBAAuB,MAG5B,IAAK,mBAAoBslD,GAAWE,OAAQxlD,EAAE2mD,SAAUX,KAAMhmD,EAAE2jD,GAAI4B,IAAKvlD,EAAEulD,IAAKzlD,EAAG,EAAI,OACvF,IAAK,qBAAsB,GAAGwlD,EAAQ3oD,GAAK,KAAMtB,EAAIK,KAAK4pD,EAAU,OAEpE,IAAK,UAAU,IAAK,QAASmB,EAAOxiD,EAAM9L,EAAEb,MAAQ,OACpD,IAAK,UAAWguD,EAAQ3oD,EAAIzF,EAAKc,MAAMyuD,EAAMxiD,GAAK7K,QAAQ,QAAS,MAAMA,QAAQ,MAAO,KAAO,OAG/F,IAAK,aAAa,IAAK,aAAckgD,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,GAAQ95C,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,gBAAkB+E,EAAE,GAAK,0BAEzE,MAAO7H,IAER,OAAOkD,GAGR,QAASurD,IAAgBzkB,EAAUiB,EAAQ5jC,GAC1C,GAAIrI,IAAKkzB,GAAY2D,GAAU,mBAAoB,MAAQsV,MAAS/U,GAAMM,QAASz1B,QAAQ,QAAS,KACpG+oC,GAAS10B,QAAQ,SAASo5C,GACzB,GAAIC,GAAS,IACZD,EAAK,QAAUp5C,QAAQ,SAAS1S,EAAGkJ,GACnC,IAAIlJ,EAAE+E,EAAG,OAAS/E,GAAEsrD,EAAI,QACxB,GAAGtrD,EAAEmhB,GAAKknB,EAAOvsC,QAAQkE,EAAEmhB,KAAO,EAAGknB,EAAO1nC,KAAKX,EAAEmhB,EACnD,IAAI6qC,IACHxB,IAAKsB,EAAK,GACVlD,GAAI,6BAA+B,eAAiBnkD,EAAKwnD,QAAQhvD,OAAO,IAAM,IAE/E,IAAGiM,GAAO,EAAG6iD,EAASC,EAAOpD,OACxBoD,GAAOE,SAAWH,CACvB/rD,GAAEsrD,GAAKU,EAAOpD,EACd,IAAG5oD,EAAEmhB,EAAG6qC,EAAOJ,SAAW,6BAA+B,eAAiBvjB,EAAOvsC,QAAQkE,EAAEmhB,IAAIlkB,OAAO,IAAM,GAC5Gb,GAAEuE,KAAKsyB,GAAU,kBAAmBF,GAAS,OAAQ/yB,EAAE4B,GAAG,IAAKoqD,OAGjE5vD,GAAEuE,KAAK,sBACP,OAAOvE,GAAEQ,KAAK,IAIf,QAASuvD,IAAiBhwD,EAAMsI,GAC/B,GAAInE,KACJ,IAAIi+C,GAAO,KACXpiD,GAAKkC,QAAQmxB,GAAU,QAASm8B,GAAUvuD,GACzC,GAAI6H,GAAI0qB,GAAYvyB,EACpB,QAAO8yB,GAASjrB,EAAE,KACjB,IAAK,QAAS,MAGd,IAAK,cAAe,MACpB,IAAK,gBAAiB,MAGtB,IAAK,UAAW3E,EAAIK,MAAM0X,KAAMpT,EAAEmnD,YAAaxD,GAAI3jD,EAAE2jD,IAAO,OAC5D,IAAK,YAAa,MAGlB,IAAK,WAAW,IAAK,YAAY,IAAK,aAAa,IAAK,YAAa,MAErE,IAAK,OAAQrK,EAAK,IAAM,OACxB,IAAK,SAAUA,EAAK,KAAO,OAE3B,QAAS,IAAIA,GAAQ95C,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,gBAAkB+E,EAAE,GAAK,0BAEzE,MAAO7H,IAER,OAAOkD,GAER,QAAS+rD,IAAiBhkB,GACzB,GAAIjsC,IAAKkzB,GAAY2D,GAAU,aAAc,MAC5CsV,MAAS/U,GAAMM,MACfq1B,UAAW50B,GAAW,KACpBl2B,QAAQ,QAAS,KACpBgqC,GAAO31B,QAAQ,SAAS45C,EAAQpjD,GAC/B9M,EAAEuE,KAAKsyB,GAAU,SAAU,MAC1Bs5B,YAAaD,EACb1D,GAAI,6BAA+B,eAAiB1/C,GAAKjM,OAAO,IAAM,IACtEuvD,OAAQF,EACRG,WAAY,WAGdrwD,GAAEuE,KAAK,gBACP,OAAOvE,GAAEQ,KAAK,IAEf,GAAI8vD,IAAS,sCACb,SAASC,IAAahxC,GACpB,GAAIixC,GAASn4C,EAAI6T,MAAMF,SAAUxM,KAAM,KACvCD,GAAIjD,UAAUhG,QAAQ,SAASsC,EAAG3Y,GAChC,GAAI2Y,EAAE/X,OAAO,KAAO,MAAQ+X,EAAE5L,MAAM,oBAClC,MACF,IAAIyjD,GAAU73C,EAAE3W,QAAQ,UAAW,KAAKA,QAAQ,4BAA6B,GAC7EoW,GAAI6T,MAAMnD,QAAQynC,EAAQC,EAASlxC,EAAIlD,UAAUpc,GAAGgE,UAEtD,OAAOoU,GAAIkK,MAAMiuC,GAEnB,QAASE,IAAanxC,EAAKwsB,GACzBA,EAAIzvB,UAAUhG,QAAQ,SAASsC,EAAG3Y,GAChC,GAAIA,GAAK,EACP,MACF,IAAIwwD,GAAU73C,EAAE3W,QAAQ,aAAc,qBACtC,IAAIwuD,EAAQ5vD,OAAO,KAAO,IACxBwX,EAAI6T,MAAMnD,QAAQxJ,EAAKkxC,EAAS1kB,EAAI1vB,UAAUpc,GAAGgE,WAGvD,GAAI0sD,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,GAAItT,IAAW,WACd,GAAI0T,GAAU,+EACd,IAAIC,IAAWxjD,EAAE,EAAE9J,EAAE,EACrB,SAASutD,GAAO/jD,EAAGC,EAAGC,EAAGC,GACxB,GAAI+vB,GAAO,MAAOC,EAAO,KAEzB,IAAGjwB,EAAGnN,QAAU,EAAGo9B,EAAO,SACrB,IAAGjwB,EAAGvL,OAAO,IAAM,IAAK,CAAEw7B,EAAO,IAAMjwB,GAAKA,EAAGzM,MAAM,GAAI,GAE9D,GAAG0M,EAAGpN,QAAU,EAAGm9B,EAAO,SACrB,IAAG/vB,EAAGxL,OAAO,IAAM,IAAK,CAAEu7B,EAAO,IAAM/vB,GAAKA,EAAG1M,MAAM,GAAI,GAE9D,GAAI4X,GAAInL,EAAGnN,OAAO,EAAE2N,SAASR,EAAG,IAAI,EAAE,EAAG4K,EAAI3K,EAAGpN,OAAO,EAAE2N,SAASP,EAAG,IAAI,EAAE,CAE3E,IAAG+vB,EAAMplB,GAAKg5C,EAAOttD,QAAUsU,CAC/B,IAAGqlB,EAAM9kB,GAAKy4C,EAAOxjD,QAAU+K,CAC/B,OAAOpL,IAAMiwB,EAAO,GAAK,KAAOU,GAAW9lB,IAAMqlB,EAAO,GAAK,KAAOU,GAAWxlB,GAEhF,MAAO,SAAS8kC,GAAS6T,EAAMpjD,GAC9BkjD,EAASljD,CACT,OAAOojD,GAAKnvD,QAAQgvD,EAASE,MAI/B,IAAIE,IAAY,gLAChB,IAAIhT,IAAW,WACd,MAAO,SAASA,GAAS+S,EAAMpjD,GAC9B,MAAOojD,GAAKnvD,QAAQovD,GAAW,SAASC,EAAIjkD,EAAIC,EAAIC,EAAIgkD,EAAIC,GAC3D,GAAI5tD,GAAIy6B,GAAW9wB,IAAOD,EAAK,EAAIU,EAAKpK,EACxC,IAAI8J,GAAIwwB,GAAWszB,IAAOD,EAAK,EAAIvjD,EAAKN,EACxC,IAAI+K,GAAK/K,GAAK,EAAI,IAAM6jD,EAAK,IAAM7jD,EAAI,IAAOA,EAAE,CAChD,IAAIwK,GAAKtU,GAAK,EAAI,IAAM0J,EAAK,IAAM1J,EAAI,IAAOA,EAAE,CAChD,OAAOyJ,GAAK,IAAMoL,EAAI,IAAMP,OAM/B,SAASulC,IAAkB9rC,EAAGy0C,GAC7B,MAAOz0C,GAAE1P,QAAQovD,GAAW,SAASC,EAAIjkD,EAAIC,EAAIC,EAAIgkD,EAAIC,GACxD,MAAOnkD,IAAIC,GAAI,IAAMA,EAAGC,EAAKywB,GAAWK,GAAW9wB,GAAI64C,EAAMxiD,KAAK2tD,GAAI,IAAMA,EAAGC,EAAKvzB,GAAWC,GAAWszB,GAAMpL,EAAM14C,MAIxH,QAAS+jD,IAAmB9/C,EAAG+rB,EAAOL,GACrC,GAAI3vB,GAAIixB,GAAajB,GAAQr6B,EAAIqK,EAAErK,EAAGO,EAAI86B,GAAYrB,EACtD,IAAI+oB,IAAS14C,EAAE9J,EAAE8J,EAAIrK,EAAEqK,EAAG9J,EAAEA,EAAEA,EAAIP,EAAEO,EACpC,OAAO65C,IAAkB9rC,EAAGy0C,GAI7B,QAAShF,IAAUzvC,GAClB,GAAGA,EAAExR,QAAU,EAAG,MAAO,MACzB,OAAO,MAGR,QAASuxD,IAAM//C,GACd,MAAOA,GAAE1P,QAAQ,WAAW,IAG7B,QAAS0vD,IAAmBhgD,GAC3B,GAAGA,EAAE9Q,MAAM,EAAE,IAAM,MAAO8Q,EAAIA,EAAE9Q,MAAM,EAEtC,IAAG8Q,EAAEvR,WAAW,IAAM,GAAI,CACzBuR,EAAIA,EAAE9Q,MAAM,EACZ,IAAG8Q,EAAEvR,WAAW,IAAM,GAAIuR,EAAIA,EAAE9Q,MAAM,GAEvC8Q,EAAIA,EAAE1P,QAAQ,oBAAqB,GAEnC0P,GAAIA,EAAE1P,QAAQ,gDAAiD,SAASmL,EAAIC,GAAM,MAAOA,GAAGpL,QAAQ,MAAM,KAE1G0P,GAAIA,EAAE1P,QAAQ,sBAAuB,KACrC,OAAO0P,GAAE1P,QAAQ,QAAQ,KAAKA,QAAQ,MAAM,KAG7C,QAAS2vD,IAAmBjgD,GAC3B,GAAI3R,GAAI,OAAS2R,EAAE1P,QAAQovD,GAAW,iBAAiBpvD,QAAQ,SAAS,IAExE,OAAOjC,GAAEiC,QAAQ,KAAM,KAAKA,QAAQ,KAAK,KAG1C,QAAS4vD,IAAcnkD,GACtB,GAAIqX,GAAIrX,EAAEpK,MAAM,IAChB,IAAID,GAAI0hB,EAAE,GAAGzhB,MAAM,KAAK,EACxB,QAAQD,EAAG0hB,EAAE,GAAGzhB,MAAM,KAAK,IAAMyhB,EAAE5kB,OAAS,EAAK,KAAO4kB,EAAE,GAAGzhB,MAAM,KAAK,IAAMyhB,EAAE,GAAGzhB,MAAM,KAAK,IAAO,KAGtG,QAASwuD,IAAcpkD,GACtB,MAAOA,GAAEzL,QAAQ,KAAK,KAGvB,GAAI8oC,MACJ,IAAIgnB,MAIJ,IAAIC,UAAyBC,OAAQ,WAErC,SAASC,IAAWxlB,EAAKl+B,EAAKyV,GAC7B,GAAIhkB,GAAI,EAAGC,EAAMwsC,EAAIvsC,MACrB,IAAG8jB,EAAK,CACP,GAAG+tC,GAAkB/tC,EAAIkuC,IAAI3jD,GAAO2R,OAAOgP,UAAUC,eAAetqB,KAAKmf,EAAKzV,GAAM,CACnF,GAAI4jD,GAASJ,GAAkB/tC,EAAIouC,IAAI7jD,GAAOyV,EAAIzV,EAClD,MAAMvO,EAAImyD,EAAOjyD,SAAUF,EAAG,CAC7B,GAAGysC,EAAI0lB,EAAOnyD,IAAIuF,IAAMgJ,EAAK,CAAEk+B,EAAI2X,OAAU,OAAO+N,GAAOnyD,UAGvD,MAAMA,EAAIC,IAAOD,EAAG,CAC1B,GAAGysC,EAAIzsC,GAAGuF,IAAMgJ,EAAK,CAAEk+B,EAAI2X,OAAU,OAAOpkD,IAE7CysC,EAAIxsC,IAASsF,EAAEgJ,EAAOk+B,GAAI2X,OAAU3X,GAAI6X,QACxC,IAAGtgC,EAAK,CACP,GAAG+tC,GAAiB,CACnB,IAAI/tC,EAAIkuC,IAAI3jD,GAAMyV,EAAItf,IAAI6J,KAC1ByV,GAAIouC,IAAI7jD,GAAKjK,KAAKrE,OACZ,CACN,IAAIigB,OAAOgP,UAAUC,eAAetqB,KAAKmf,EAAKzV,GAAMyV,EAAIzV,KACxDyV,GAAIzV,GAAKjK,KAAKrE,IAGhB,MAAOA,GAGR,QAASoyD,IAAUp6C,EAAGsmB,GACrB,GAAI5lB,IAAMvJ,IAAI6I,EAAE,EAAE5I,IAAI4I,EAAE,EAExB,IAAIk+B,IAAO,CACX,IAAG5X,EAAIqnB,IAAKA,GAAMrnB,EAAIqnB,GACtB,IAAGrnB,EAAIggB,OAAS,KAAM5lC,EAAE2tC,YAAc,MACjC,IAAG/nB,EAAIigB,KAAO,KAAMrI,EAAMuI,GAAQngB,EAAIigB,SACtC,IAAGjgB,EAAI4X,KAAO,KAAMA,EAAM5X,EAAI4X,GACnC,IAAGA,GAAO,EAAG,CAAEx9B,EAAE4lC,MAAQuH,GAAW3P,EAAMx9B,GAAE2tC,YAAc,MACrD,IAAG/nB,EAAIggB,OAAS,KAAM5lC,EAAE4lC,MAAQhgB,EAAIggB,KACzC,IAAGhgB,EAAImf,OAAQ/kC,EAAE+kC,OAAS,IAC1B,IAAGnf,EAAI+zB,OAAS,KAAM,CAAE35C,EAAE45C,aAAe55C,EAAE25C,MAAQ/zB,EAAI+zB,MACvD,MAAO35C,GAGR,QAAS65C,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,EAAQl3C,QAAU,KAAMk3C,EAAQl3C,OAASo3C,EAAK,EACjD,IAAGF,EAAQO,QAAU,KAAMP,EAAQO,OAASL,EAAK,GAGlD,QAASM,IAAe7nB,EAAQhO,EAAMh1B,GACrC,GAAIsrB,GAAItrB,EAAK8qD,OAAO91B,EAAK1J,GAAK,KAAO0J,EAAK1J,EAAI,UAC9C,IAAI1zB,GAAI,GAAMC,EAAMmrC,EAAOlrC,MAC3B,IAAGwzB,GAAK,MAAQtrB,EAAK+qD,IAAK,CACzB,KAAMnzD,EAAI,MAASA,EAAG,GAAGoI,EAAK+qD,IAAInzD,IAAM,KAAM,CAC7CgF,EAAIiN,KAAKmrB,EAAK1J,EAAG1zB,EAEjBoI,GAAK+qD,IAAInzD,GAAKo9B,EAAK1J,CACnBtrB,GAAK8qD,OAAO91B,EAAK1J,GAAKA,EAAI1zB,CAC1B,QAGF,IAAIA,EAAI,EAAGA,GAAKC,IAAOD,EAAG,GAAGorC,EAAOprC,GAAGi/B,WAAavL,EAAG,MAAO1zB,EAC9DorC,GAAOnrC,IACNg/B,SAASvL,EACT0/B,OAAO,EACPC,OAAO,EACPC,SAAS,EACTC,KAAK,EACLC,kBAAkB,EAEnB,OAAOvzD,GAGR,QAASwzD,IAAY96C,EAAGu6B,EAAOwgB,EAAQtrD,EAAMwjC,EAAQR,GACpD,IACC,GAAGhjC,EAAKi5C,OAAQ1oC,EAAE+a,EAAI1uB,EAAIkN,OAAOghC,GAChC,MAAM1wC,GAAK,GAAG4F,EAAKouB,IAAK,KAAMh0B,GAChC,GAAGmW,EAAEpT,IAAM,MAAQ6C,EAAKurD,WAAY,MACpC,IAAGh7C,EAAEpT,IAAM,WAAcoT,GAAErT,IAAM,SAAUqT,EAAErT,EAAI8qB,GAAUzX,EAAErT,EAC7D,MAAK8C,GAAQA,EAAKg5C,WAAa,QAAUzoC,EAAEpT,IAAM,IAAK,IACrD,GAAGP,EAAIkN,OAAOghC,IAAU,KAAMluC,EAAIiN,KAAKsB,EAAY2/B,IAAU,UAAWA,EACxE,IAAGv6B,EAAEpT,IAAM,IAAKoT,EAAE/N,EAAI+N,EAAE/N,GAAKu0B,GAAKxmB,EAAErT,OAC/B,IAAG4tC,IAAU,EAAG,CACpB,GAAGv6B,EAAEpT,IAAM,IAAK,CACf,IAAIoT,EAAErT,EAAE,KAAOqT,EAAErT,EAAGqT,EAAE/N,EAAI5F,EAAImF,aAAawO,EAAErT,OACxCqT,GAAE/N,EAAI5F,EAAIuG,aAAaoN,EAAErT,OAE1B,IAAGqT,EAAEpT,IAAM,IAAK,CACpB,GAAImJ,GAAKihB,EAAQhX,EAAErT,EACnB,KAAIoJ,EAAG,KAAOA,EAAIiK,EAAE/N,EAAI5F,EAAImF,aAAauE,OACpCiK,GAAE/N,EAAI5F,EAAIuG,aAAamD,OAExB,IAAGiK,EAAErT,IAAMnD,UAAW,MAAO,OAC7BwW,GAAE/N,EAAI5F,EAAI0G,SAASiN,EAAErT,EAAEwsD,QAExB,IAAGn5C,EAAEpT,IAAM,IAAKoT,EAAE/N,EAAI5F,EAAIyG,OAAOynC,EAAMvjB,EAAQhX,EAAErT,GAAGwsD,QACpDn5C,GAAE/N,EAAI5F,EAAIyG,OAAOynC,EAAMv6B,EAAErT,EAAEwsD,IAC/B,MAAMtvD,GAAK,GAAG4F,EAAKouB,IAAK,KAAMh0B,GAChC,IAAI4F,EAAKurD,WAAY,MACrB,IAAGD,GAAU,KAAM,IAClB/6C,EAAEvV,EAAIgoC,EAAO4c,MAAM0L,EACnB,IAAI/6C,EAAEvV,EAAEilD,SAAW1vC,EAAEvV,EAAEilD,QAAQD,QAAUzvC,EAAEvV,EAAEilD,QAAQ9F,IAAK,CACzD5pC,EAAEvV,EAAEilD,QAAQ9F,IAAM+C,GAAS1Z,EAAOsd,cAAcC,UAAUxwC,EAAEvV,EAAEilD,QAAQD,OAAO7F,IAAK5pC,EAAEvV,EAAEilD,QAAQ7C,MAAQ,EACtG,IAAGp9C,EAAKouB,IAAK7d,EAAEvV,EAAEilD,QAAQuL,QAAUhoB,EAAOsd,cAAcC,UAAUxwC,EAAEvV,EAAEilD,QAAQD,OAAO7F,IAEtF,GAAI5pC,EAAEvV,EAAE8kD,SAAWvvC,EAAEvV,EAAE8kD,QAAQE,MAAO,CACrCzvC,EAAEvV,EAAE8kD,QAAQ3F,IAAM+C,GAAS1Z,EAAOsd,cAAcC,UAAUxwC,EAAEvV,EAAE8kD,QAAQE,OAAO7F,IAAK5pC,EAAEvV,EAAE8kD,QAAQ1C,MAAQ,EACtG,IAAGp9C,EAAKouB,IAAK7d,EAAEvV,EAAE8kD,QAAQ0L,QAAUhoB,EAAOsd,cAAcC,UAAUxwC,EAAEvV,EAAE8kD,QAAQE,OAAO7F,KAErF,MAAM//C,GAAK,GAAG4F,EAAKouB,KAAO4U,EAAO4c,MAAO,KAAMxlD,IAGjD,QAASqxD,IAASj0B,EAAIk0B,EAAO9zD,GAC5B,GAAG4/B,GAAMA,EAAG,QAAS,CACpB,GAAInC,GAAQqB,GAAkBc,EAAG,QACjC,IAAGnC,EAAMj7B,EAAEmB,EAAI85B,EAAMr6B,EAAEO,GAAK85B,EAAMj7B,EAAEiL,EAAIgwB,EAAMr6B,EAAEqK,EAAG,KAAM,IAAI5J,OAAM,cAAgB7D,EAAI,MAAQ4/B,EAAG,UAGpG,QAASm0B,IAAiBn0B,EAAIx8B,GAC7B,GAAIiB,GAAIy6B,GAAkB17B,EAC1B,IAAGiB,EAAEjB,EAAEqK,GAAGpJ,EAAE7B,EAAEiL,GAAKpJ,EAAEjB,EAAEO,GAAGU,EAAE7B,EAAEmB,GAAKU,EAAEjB,EAAEqK,GAAG,GAAKpJ,EAAEjB,EAAEO,GAAG,EAAGi8B,EAAG,QAAUjB,GAAat6B,GAEpF,GAAI2vD,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,IAAa50D,EAAMsI,EAAMyE,EAAKy+B,EAAMwf,EAAIlf,EAAQR,GACxD,IAAItrC,EAAM,MAAOA,EACjB,KAAIwrC,EAAMA,GAAQ0D,SAClB,IAAG9tC,GAAS,MAAQkH,EAAKu3B,OAAS,KAAMv3B,EAAKu3B,MAAQz+B,CAGrD,IAAIkC,GAAIgF,EAAKu3B,WACb,IAAIg1B,IAAavxD,GAAIqK,EAAE,IAAS9J,EAAE,KAAUnB,GAAIiL,EAAE,EAAG9J,EAAE,GAEvD,IAAIixD,GAAQ,GAAIC,EAAQ,EACxB,IAAIC,GAAOh1D,EAAKiN,MAAMknD,GACtB,IAAGa,EAAM,CACRF,EAAQ90D,EAAKc,MAAM,EAAGk0D,EAAK9L,MAC3B6L,GAAQ/0D,EAAKc,MAAMk0D,EAAK9L,MAAQ8L,EAAK,GAAG50D,YAClC00D,GAAQC,EAAQ/0D,CAGvB,IAAIi1D,GAAUH,EAAM7nD,MAAMwnD,GAC1B,IAAGQ,EAASC,GAAqBD,EAAQ,GAAI3xD,EAAG0nD,EAAIj+C,OAC/C,IAAIkoD,EAAUH,EAAM7nD,MAAMynD,IAAiBS,GAAsBF,EAAQ,GAAIA,EAAQ,IAAI,GAAI3xD,EAAG0nD,EAAIj+C,EAAKu+B,EAAQQ,EAGtH,IAAIxnC,IAAQwwD,EAAM7nD,MAAM,yBAAyBi8C,OAAO,IAAIA,KAC5D,IAAG5kD,EAAO,EAAG,CACZ,GAAI+pD,GAAMyG,EAAMh0D,MAAMwD,EAAKA,EAAK,IAAI2I,MAAMonD,GAC1C,IAAGhG,EAAK4F,GAAiB3wD,EAAG+qD,EAAI,IAIjC,GAAI+G,GAAMN,EAAM7nD,MAAM0nD,GACtB,IAAGS,GAAOA,EAAI,GAAIC,GAAwBD,EAAI,GAAIpK,EAGlD,IAAIsK,KACJ,IAAGhtD,EAAKurD,WAAY,CAEnB,GAAI/c,GAAOge,EAAM7nD,MAAMqnD,GACvB,IAAGxd,EAAMye,GAAkBD,EAASxe,GAIrC,GAAGke,EAAMQ,GAAkBR,EAAK,GAAI1xD,EAAGgF,EAAMusD,EAAU/oB,EAAQR,EAG/D,IAAImqB,GAAUV,EAAM9nD,MAAMsnD,GAC1B,IAAGkB,EAASnyD,EAAE,eAAiBoyD,GAAwBD,EAAQ,GAG/D,IAAIE,KACJ,IAAIC,GAASb,EAAM9nD,MAAMinD,GACzB,IAAG0B,EAAQ,IAAItxD,EAAO,EAAGA,GAAQsxD,EAAOx1D,SAAUkE,EACjDqxD,EAAOrxD,GAAQ06B,GAAkB42B,EAAOtxD,GAAMxD,MAAM80D,EAAOtxD,GAAM3E,QAAQ,KAAM,GAGhF,IAAIk2D,GAAQd,EAAM9nD,MAAMmnD,GACxB,IAAGyB,EAAOC,GAAoBxyD,EAAGuyD,EAAOrqB,EAGxC,IAAImnB,GAAUoC,EAAM9nD,MAAMunD,GAC1B,IAAG7B,EAASrvD,EAAE,YAAcyyD,GAAqBviC,GAAYm/B,EAAQ,IAErE,KAAIrvD,EAAE,SAAWuxD,EAASnyD,EAAEmB,GAAKgxD,EAASvxD,EAAEO,GAAKgxD,EAASnyD,EAAEiL,GAAKknD,EAASvxD,EAAEqK,EAAGrK,EAAE,QAAUu7B,GAAag2B,EACxG,IAAGvsD,EAAK6tC,UAAY,GAAK7yC,EAAE,QAAS,CACnC,GAAI0yD,GAASh3B,GAAkB17B,EAAE,QACjC,IAAGgF,EAAK6tC,YAAc6f,EAAOtzD,EAAEiL,EAAG,CACjCqoD,EAAOtzD,EAAEiL,EAAIrF,EAAK6tC,UAAY,CAC9B,IAAG6f,EAAOtzD,EAAEiL,EAAIknD,EAASnyD,EAAEiL,EAAGqoD,EAAOtzD,EAAEiL,EAAIknD,EAASnyD,EAAEiL,CACtD,IAAGqoD,EAAOtzD,EAAEiL,EAAIqoD,EAAO1yD,EAAEqK,EAAGqoD,EAAO1yD,EAAEqK,EAAIqoD,EAAOtzD,EAAEiL,CAClD,IAAGqoD,EAAOtzD,EAAEmB,EAAIgxD,EAASnyD,EAAEmB,EAAGmyD,EAAOtzD,EAAEmB,EAAIgxD,EAASnyD,EAAEmB,CACtD,IAAGmyD,EAAOtzD,EAAEmB,EAAImyD,EAAO1yD,EAAEO,EAAGmyD,EAAO1yD,EAAEO,EAAImyD,EAAOtzD,EAAEmB,CAClDP,GAAE,YAAcA,EAAE,OAClBA,GAAE,QAAUu7B,GAAam3B,IAG3B,GAAGV,EAAQl1D,OAAS,EAAGkD,EAAE,SAAWgyD,CACpC,IAAGK,EAAOv1D,OAAS,EAAGkD,EAAE,WAAaqyD,CACrC,OAAOryD,GAGR,QAAS2yD,IAAoBN,GAC5B,GAAGA,EAAOv1D,SAAW,EAAG,MAAO,EAC/B,IAAIH,GAAI,sBAAwB01D,EAAOv1D,OAAS,IAChD,KAAI,GAAIF,GAAI,EAAGA,GAAKy1D,EAAOv1D,SAAUF,EAAGD,GAAK,mBAAqB4+B,GAAa82B,EAAOz1D,IAAM,KAC5F,OAAOD,GAAI,gBAIZ,QAASi1D,IAAqBD,EAAS3xD,EAAG0nD,EAAIj+C,GAC7C,GAAI/M,GAAOwzB,GAAYyhC,EACvB,KAAIjK,EAAGtrB,OAAO3yB,GAAMi+C,EAAGtrB,OAAO3yB,KAC9B,IAAG/M,EAAKk2D,SAAUlL,EAAGtrB,OAAO3yB,GAAKopD,SAAW5hC,GAAYgB,GAASv1B,EAAKk2D,WAEvE,QAASf,IAAsBF,EAAS5mC,EAAM/qB,EAAG0nD,EAAIj+C,GACpDmoD,GAAqBD,EAAQn0D,MAAM,EAAGm0D,EAAQt1D,QAAQ,MAAO2D,EAAG0nD,EAAIj+C,GAErE,QAASqpD,IAAqBt2B,EAAIkrB,EAAIj+C,EAAKzE,EAAMrI,GAChD,GAAIo2D,GAAS,KACb,IAAIvkB,MAAYz0B,EAAU,IAC1B,IAAG/U,EAAK8kC,WAAa,QAAU4d,EAAGsL,OAAQ,CACzC,GAAIC,GAAQvL,EAAGvrB,WAAW1yB,EAC1B,KAAM,GAAGi+C,EAAGwL,SAAUD,EAAQvL,EAAGwL,SAAS92B,OAAO3yB,GAAKopD,UAAYI,EAAS,MAAM7zD,IACjF2zD,EAAS,IACTvkB,GAAMokB,SAAW9oC,GAAUwH,GAAU2hC,IAGtC,GAAGz2B,GAAMA,EAAG,YAAa,CACxB,GAAI22B,IAAgBC,aAAa,EAAGC,aAAa,EACjD,IAAG72B,EAAG,YAAY82B,MAAOH,EAAaC,aAAe,CACrD,IAAG52B,EAAG,YAAYgzB,KAAM2D,EAAaE,aAAe,CACpDt5C,IAAWA,GAAS,IAAMyZ,GAAU,YAAa,KAAM2/B,GAGxD,IAAIJ,IAAWh5C,EAAS,MACxBpd,GAAEA,EAAEG,QAAW02B,GAAU,UAAWzZ,EAASy0B,GAI9C,GAAI+kB,KAAsB,UAAW,YAAa,oBAAqB,sBACvE,IAAIC,KACH,gBAAiB,aAAc,cAC/B,gBAAiB,aAAc,mBAC/B,gBAAiB,aACjB,OAAQ,aAAc,cAEvB,SAASC,IAAwBC,GAEhC,GAAI/2D,IAAMs/B,MAAM,EAChBs3B,IAAmBtgD,QAAQ,SAASxT,GAAK,GAAGi0D,EAAGj0D,IAAM,MAAQi0D,EAAGj0D,GAAI9C,EAAE8C,GAAK,KAC3E+zD,IAAkBvgD,QAAQ,SAASxT,GAAK,GAAGi0D,EAAGj0D,IAAM,OAASi0D,EAAGj0D,GAAI9C,EAAE8C,GAAK,KAE3E,IAAGi0D,EAAGC,SAAUh3D,EAAEg3D,SAAWC,sCAAsCF,EAAGC,UAAU7sD,SAAS,IAAIoB,aAC7F,OAAOsrB,IAAU,kBAAmB,KAAM72B,GAG3C,QAAS61D,IAAoBxyD,EAAGtD,EAAMwrC,GACrC,GAAI3L,GAAQ18B,MAAMS,QAAQN,EAC1B,KAAI,GAAIpD,GAAI,EAAGA,GAAKF,EAAKI,SAAUF,EAAG,CACrC,GAAI8L,GAAMwnB,GAAY+B,GAASv1B,EAAKE,IAAK,KACzC,KAAI8L,EAAIqiD,IAAK,MACb,IAAIlf,KAAQ3D,OAAY,YAAYx/B,EAAIygD,GACxC,IAAGtd,EAAK,CACPnjC,EAAIqjC,OAASF,EAAIE,MACjB,IAAGrjC,EAAImrD,SAAUnrD,EAAIqjC,QAAU,IAAI9a,GAAYvoB,EAAImrD,cAC7C,CACNnrD,EAAIqjC,OAAS,IAAM9a,GAAYvoB,EAAImrD,SACnChoB,IAAOE,OAAQrjC,EAAIqjC,OAAQE,WAAY,YAExCvjC,EAAIorD,IAAMjoB,CACV,IAAGnjC,EAAIqrD,QAAS,CAAErrD,EAAIsrD,QAAUtrD,EAAIqrD,cAAgBrrD,GAAIqrD,QACxD,GAAIE,GAAMv4B,GAAkBhzB,EAAIqiD,IAChC,KAAI,GAAI31C,GAAE6+C,EAAIj0D,EAAEqK,EAAE+K,GAAG6+C,EAAI70D,EAAEiL,IAAI+K,EAAG,IAAI,GAAIP,GAAEo/C,EAAIj0D,EAAEO,EAAEsU,GAAGo/C,EAAI70D,EAAEmB,IAAIsU,EAAG,CACnE,GAAI+F,GAAO2f,IAAah6B,EAAEsU,EAAExK,EAAE+K,GAC9B,IAAGmnB,EAAO,CACT,IAAIv8B,EAAEoV,GAAIpV,EAAEoV,KACZ,KAAIpV,EAAEoV,GAAGP,GAAI7U,EAAEoV,GAAGP,IAAM1S,EAAE,IAAID,EAAEnD,UAChCiB,GAAEoV,GAAGP,GAAG7S,EAAI0G,MACN,CACN,IAAI1I,EAAE4a,GAAO5a,EAAE4a,IAASzY,EAAE,IAAID,EAAEnD,UAChCiB,GAAE4a,GAAM5Y,EAAI0G,KAMhB,QAAS+pD,IAAqByB,GAC7B,GAAIv3D,OACH,OAAQ,QAAS,MAAO,SAAU,SAAU,UAAUsW,QAAQ,SAAS+H,GACvE,GAAGk5C,EAAOl5C,GAAIre,EAAEqe,GAAK5M,WAAW8lD,EAAOl5C,KAExC,OAAOre,GAER,QAASw3D,IAAqBD,GAC7B9E,GAAgB8E,EAChB,OAAO1gC,IAAU,cAAe,KAAM0gC,GAGvC,QAASjC,IAAkBD,EAASxe,GACnC,GAAI4gB,GAAU,KACd,KAAI,GAAIC,GAAO,EAAGA,GAAQ7gB,EAAK12C,SAAUu3D,EAAM,CAC9C,GAAIpR,GAAO/yB,GAAYsjB,EAAK6gB,GAAO,KACnC,IAAGpR,EAAK3I,OAAQ2I,EAAK3I,OAASvoB,GAAakxB,EAAK3I,OAChD,IAAIga,GAAK7pD,SAASw4C,EAAKj3C,IAAK,IAAI,EAAGuoD,EAAK9pD,SAASw4C,EAAKh3C,IAAI,IAAI,CAC9D,IAAGg3C,EAAKkM,aAAclM,EAAKiM,OAAUjM,EAAKkM,cAAgB,QACnDlM,GAAKj3C,UAAYi3C,GAAKh3C,GAAKg3C,GAAK9H,OAAS8H,EAAK9H,KACrD,KAAIiZ,GAAWnR,EAAK9H,MAAO,CAAEiZ,EAAU,IAAMtR,IAAcG,EAAK9H,OAChEZ,GAAY0I,EACZ,OAAMqR,GAAQC,EAAMvC,EAAQsC,KAAUjnC,GAAI41B,IAG5C,QAASuR,IAAkBh4B,EAAIgX,GAC9B,GAAI72C,IAAK,UAAWw+B,CACpB,KAAI,GAAIv+B,GAAI,EAAGA,GAAK42C,EAAK12C,SAAUF,EAAG,CACrC,KAAKu+B,EAAMqY,EAAK52C,IAAK,QACrBD,GAAEA,EAAEG,QAAW02B,GAAU,MAAO,KAAMy7B,GAAUryD,EAAGu+B,IAEpDx+B,EAAEA,EAAEG,QAAU,SACd,OAAOH,GAAEQ,KAAK,IAGf,QAASi1D,IAAwB11D,GAChC,GAAIC,IAAMouD,KAAMruD,EAAKiN,MAAM,sBAAsB,GACjD,OAAOhN,GAER,QAAS83D,IAAwB/3D,EAAM8/B,EAAIkrB,EAAIj+C,GAC9C,GAAIshD,SAAaruD,GAAKquD,KAAO,SAAWruD,EAAKquD,IAAMxvB,GAAa7+B,EAAKquD,IACrE,KAAIrD,EAAGwL,SAAUxL,EAAGwL,UAAa92B,UACjC,KAAIsrB,EAAGwL,SAASwB,MAAOhN,EAAGwL,SAASwB,QACnC,IAAIC,GAAQjN,EAAGwL,SAASwB,KACxB,IAAIr6B,GAAQiB,GAAayvB,EACzB,IAAG1wB,EAAMr6B,EAAEqK,GAAKgwB,EAAMj7B,EAAEiL,EAAG,CAAEgwB,EAAMj7B,EAAEiL,EAAIixB,GAAakB,EAAG,SAASp9B,EAAEiL,CAAG0gD,GAAMxvB,GAAalB,GAC1F,IAAI,GAAIz9B,GAAI,EAAGA,EAAI+3D,EAAM73D,SAAUF,EAAG,CACrC,GAAIgc,GAAO+7C,EAAM/3D,EACjB,IAAGgc,EAAKg8C,MAAQ,wBAAyB,QACzC,IAAGh8C,EAAKi8C,OAASprD,EAAK,QACtBmP,GAAKk8C,IAAM,IAAMpN,EAAGvrB,WAAW1yB,GAAO,KAAOshD,CAAK,OAEnD,GAAGnuD,GAAK+3D,EAAM73D,OAAQ63D,EAAMzzD,MAAO0zD,KAAM,wBAAyBC,MAAOprD,EAAKqrD,IAAK,IAAMpN,EAAGvrB,WAAW1yB,GAAO,KAAOshD,GACrH,OAAOv3B,IAAU,aAAc,MAAOu3B,IAAIA,IAK3C,GAAIgK,IAAa,yCACjB,SAAShD,IAAwBr1D,EAAMgrD,GACtC,IAAIA,EAAGsN,MAAOtN,EAAGsN,YAChBt4D,EAAKiN,MAAMorD,SAAiB9hD,QAAQ,SAAS5I,EAAGzN,GAChD,GAAIuzB,GAAMD,GAAY7lB,EAEtB,KAAIq9C,EAAGsN,MAAMp4D,GAAI8qD,EAAGsN,MAAMp4D,KAE1B,KAAIuzB,EAAI8kC,UAAWvN,EAAGsN,MAAMp4D,GAAGs4D,MAAQ/kC,EAAI8kC,SAE3C,IAAGljC,GAAa5B,EAAIglC,aAAczN,EAAGsN,MAAMp4D,GAAGw4D,IAAM,OAGtD,QAASC,IAAwB74B,EAAIx3B,EAAMyE,EAAKi+C,GAC/C,GAAI4N,IAAUC,eAAe,IAE7B,OAAM7N,OAAQwL,cAAc8B,WAAW,GAAIM,EAAMH,YAAczN,EAAGwL,SAAS8B,MAAM,GAAGI,IAAM,IAAM,GAChG,OAAO5hC,IAAU,aAAcA,GAAU,YAAa,KAAM8hC,OAG7D,QAASE,IAAkBx7B,EAAM+wB,EAAKvuB,EAAIx3B,GACzC,GAAGg1B,EAAKz5B,EAAGi8B,EAAG,aAAat7B,MAAM6pD,EAAK/wB,EAAKz5B,GAC3C,IAAGy5B,EAAK93B,IAAMnD,iBAAoBi7B,GAAK1rB,IAAM,UAAY0rB,EAAK73B,IAAM,MAAQ63B,EAAK1rB,EAAG,MAAO,EAC3F,IAAIb,GAAK,EACT,IAAIgoD,GAAOz7B,EAAK73B,EAAGuzD,EAAO17B,EAAK93B,CAC/B,IAAG83B,EAAK73B,IAAM,IAAK,OAAO63B,EAAK73B,GAC9B,IAAK,IAAKsL,EAAKusB,EAAK93B,EAAI,IAAM,GAAK,OACnC,IAAK,IAAKuL,EAAK,GAAGusB,EAAK93B,CAAG,OAC1B,IAAK,IAAKuL,EAAKsuB,GAAK/B,EAAK93B,EAAI,OAC7B,IAAK,IACJ,GAAG8C,GAAQA,EAAKk4B,UAAWzvB,EAAKuf,GAAUgN,EAAK93B,GAAI,GAAGwxB,kBACjD,CACJsG,EAAO3M,GAAI2M,EACXA,GAAK73B,EAAI,GACTsL,GAAK,IAAIusB,EAAK93B,EAAIqqB,EAAQS,GAAUgN,EAAK93B,KAE1C,SAAU83B,GAAK1J,IAAM,YAAa0J,EAAK1J,EAAI1uB,EAAIkN,OAAO,GACtD,OACD,QAASrB,EAAKusB,EAAK93B,CAAG,QAEvB,GAAIA,GAAIoxB,GAAS,IAAKhC,GAAU7jB,IAAM9Q,GAAM0N,EAAE0gD,EAE9C,IAAI4K,GAAK9F,GAAe7qD,EAAKiiD,QAASjtB,EAAMh1B,EAC5C,IAAG2wD,IAAO,EAAGh5D,EAAEqD,EAAI21D,CACnB,QAAO37B,EAAK73B,GACX,IAAK,IAAK,MACV,IAAK,IAAKxF,EAAEwF,EAAI,GAAK,OACrB,IAAK,IAAKxF,EAAEwF,EAAI,GAAK,OACrB,IAAK,IAAKxF,EAAEwF,EAAI,GAAK,OACrB,IAAK,IAAK,MACV,QAAS,GAAG63B,EAAK93B,GAAK,KAAM,OAAS83B,GAAK73B,CAAG,OAC5C,GAAG63B,EAAK93B,EAAEpF,OAAS,MAAO,KAAM,IAAI2D,OAAM,+CAC1C,IAAGuE,GAAQA,EAAKs8C,QAAS,CACxBp/C,EAAIoxB,GAAS,IAAK,GAAGu7B,GAAW7pD,EAAK4wD,QAAS57B,EAAK93B,EAAG8C,EAAK6wD,YAC3Dl5D,GAAEwF,EAAI,GAAK,OAEZxF,EAAEwF,EAAI,KAAO,QAEf,GAAG63B,EAAK73B,GAAKszD,EAAM,CAAEz7B,EAAK73B,EAAIszD,CAAMz7B,GAAK93B,EAAIwzD,EAC7C,SAAU17B,GAAK1rB,GAAK,UAAY0rB,EAAK1rB,EAAG,CACvC,GAAIxC,GAAKkuB,EAAK+gB,GAAK/gB,EAAK+gB,EAAEv9C,MAAM,EAAGutD,EAAIjuD,SAAWiuD,GAAO5oD,EAAE,QAAS4oD,IAAI/wB,EAAK+gB,GAAK,IAClF74C,GAAIsxB,GAAU,IAAKlC,GAAU0I,EAAK1rB,GAAIxC,IAAOkuB,EAAK93B,GAAK,KAAOA,EAAI,IAEnE,GAAG83B,EAAKh4B,EAAGw6B,EAAG,UAAUt7B,MAAM6pD,EAAK/wB,EAAKh4B,GACxC,IAAGg4B,EAAK91B,EAAGvH,EAAE2uD,GAAK,CAClB,OAAO93B,IAAU,IAAKtxB,EAAGvF,GAG1B,GAAIu1D,IAAoB,WACvB,GAAI4D,GAAY,oBAAqBC,EAAW,kBAChD,IAAIrW,GAAS,qBAAsBsW,EAAU,wCAC7C,IAAIC,GAAW,sBACf,IAAIC,GAAU1jC,GAAS,KAAM2jC,EAAU3jC,GAAS,IAEjD,OAAO,SAAS0/B,GAAkBkE,EAAOp2D,EAAGgF,EAAM6uC,EAAOrL,EAAQR,GAChE,GAAIn8B,GAAK,EAAGlO,EAAI,GAAI04D,KAAYC,KAAW7sD,EAAI,EAAG7M,EAAE,EAAGwO,EAAG,EAAGnK,EAAE,GAAIsU,CACnE,IAAI4a,GAAKomC,EAAO,EAAGC,EAAO,CAC1B,IAAIC,GAAMC,CACV,IAAI5mB,GAAQ,EAAGwgB,EAAS,CACxB,IAAIqG,GAAY92D,MAAMS,QAAQ0nC,EAAOwe,QAASoQ,CAC9C,IAAIC,KACJ,IAAIC,KACJ,IAAIv6B,GAAQ18B,MAAMS,QAAQN,EAC1B,IAAIw7C,MAAWub,KAAaC,EAAU,KACtC,IAAI/5B,KAAej4B,EAAKi4B,UACxB,KAAI,GAAIg6B,GAAOb,EAAMn2D,MAAM81D,GAAW9+C,EAAK,EAAGigD,EAAUD,EAAKn6D,OAAQma,GAAMigD,IAAWjgD,EAAI,CACzFtZ,EAAIs5D,EAAKhgD,GAAI+Q,MACb,IAAImvC,GAAOx5D,EAAEb,MACb,IAAGq6D,IAAS,EAAG,QAGf,IAAIC,GAAU,CACdC,GAAM,IAAIxrD,EAAK,EAAGA,EAAKsrD,IAAQtrD,EAAI,OAA2BlO,EAAEkO,IAC/D,IAAK,IACJ,GAA+BlO,EAAEkO,EAAG,IAAM,IAAK,GAAIA,CAAI,MAAMwrD,GAC7D,GAAGryD,GAAQA,EAAKurD,WAAY,CAE3BpgC,EAAMD,GAAYvyB,EAAEH,MAAM45D,EAAQvrD,GAAK,KACvC0qD,GAAOpmC,EAAI9lB,GAAK,KAAOI,SAAS0lB,EAAI9lB,EAAG,IAAMksD,EAAK,CAAGC,IAAQ,CAC7D,IAAGxxD,EAAK6tC,WAAa7tC,EAAK6tC,UAAY0jB,EAAM,QAC5CQ,KAAaC,GAAU,KACvB,IAAG7mC,EAAImnC,GAAI,CAAEN,EAAU,IAAMD,GAAOvc,IAAMpsC,WAAW+hB,EAAImnC,GAAKP,GAAOtc,IAAMC,GAAMqc,EAAOvc,KACxF,GAAGrqB,EAAImqB,QAAU,IAAK,CAAE0c,EAAU,IAAMD,GAAOzc,OAAS,KACxD,GAAGnqB,EAAIg/B,cAAgB,KAAM,CAAE6H,EAAU,IAAMD,GAAO7H,OAAS/+B,EAAIg/B,aACnE,GAAG6H,EAASxb,EAAK+a,EAAK,GAAKQ,EAE5B,MACD,IAAK,IAAYK,EAAUvrD,CAAI,QAEhC,GAAGurD,GAAWvrD,EAAI,KAClBskB,GAAMD,GAAYvyB,EAAEH,MAAM45D,EAAQvrD,GAAK,KACvC0qD,GAAOpmC,EAAI9lB,GAAK,KAAOI,SAAS0lB,EAAI9lB,EAAG,IAAMksD,EAAK,CAAGC,IAAQ,CAC7D,IAAGxxD,EAAK6tC,WAAa7tC,EAAK6tC,UAAY0jB,EAAM,QAC5C,IAAG1iB,EAAM7zC,EAAEqK,EAAIksD,EAAO,EAAG1iB,EAAM7zC,EAAEqK,EAAIksD,EAAO,CAC5C,IAAG1iB,EAAMz0C,EAAEiL,EAAIksD,EAAO,EAAG1iB,EAAMz0C,EAAEiL,EAAIksD,EAAO,CAE5C,IAAGvxD,GAAQA,EAAKurD,WAAY,CAC3BwG,IAAaC,GAAU,KACvB,IAAG7mC,EAAImnC,GAAI,CAAEN,EAAU,IAAMD,GAAOvc,IAAMpsC,WAAW+hB,EAAImnC,GAAKP,GAAOtc,IAAMC,GAAMqc,EAAOvc,KACxF,GAAGrqB,EAAImqB,QAAU,IAAK,CAAE0c,EAAU,IAAMD,GAAOzc,OAAS,KACxD,GAAGnqB,EAAIg/B,cAAgB,KAAM,CAAE6H,EAAU,IAAMD,GAAO7H,OAAS/+B,EAAIg/B,aACnE,GAAG6H,EAASxb,EAAK+a,EAAK,GAAKQ,EAI5BV,EAAQ14D,EAAEH,MAAMqO,GAAI5L,MAAM61D,EAC1B,KAAI,GAAIyB,GAAS,EAAGA,GAAUlB,EAAMv5D,SAAUy6D,EAAQ,GAAGlB,EAAMkB,GAAQvvC,OAAOtpB,OAAO,IAAM,IAAK,KAChG23D,GAAQA,EAAM74D,MAAM+5D,EACpB,KAAI1rD,EAAK,EAAGA,GAAMwqD,EAAMv5D,SAAU+O,EAAI,CACrClO,EAAI04D,EAAMxqD,GAAImc,MACd,IAAGrqB,EAAEb,SAAW,EAAG,QACnBw5D,GAAO34D,EAAEgM,MAAM+1C,EAASj2C,GAAMoC,CAAIjP,GAAE,CAAGwO,GAAG,CAC1CzN,GAAI,OAASA,EAAEH,MAAM,EAAE,IAAI,IAAI,IAAI,IAAMG,CACzC,IAAG24D,GAAQ,MAAQA,EAAKx5D,SAAW,EAAG,CACrC2M,EAAM,CAAGxI,GAAEq1D,EAAK,EAChB,KAAI15D,EAAE,EAAGA,GAAKqE,EAAEnE,SAAUF,EAAG,CAC5B,IAAIwO,EAAGnK,EAAElE,WAAWH,GAAG,IAAM,GAAKwO,EAAK,GAAI,KAC3C3B,GAAM,GAAGA,EAAM2B,IAEd3B,CACF+sD,GAAO/sD,QACC+sD,CACT,KAAI55D,EAAI,EAAGA,GAAKe,EAAEb,SAAUF,EAAG,GAAGe,EAAEZ,WAAWH,KAAO,GAAI,QAASA,CACnEuzB,GAAMD,GAAYvyB,EAAEH,MAAM,EAAEZ,GAAI,KAChC,KAAIuzB,EAAI9lB,EAAG8lB,EAAI9lB,EAAIkwB,IAAalwB,EAAEksD,EAAK,EAAGh2D,EAAEi2D,GAC5Cv1D,GAAItD,EAAEH,MAAMZ,EACZ2Y,IAAMpT,EAAE,GAER,KAAIm0D,EAAKr1D,EAAE0I,MAAMusD,KAAY,MAAQI,EAAK,KAAO,GAAI/gD,EAAErT,EAAE+uB,GAAYqlC,EAAK,GAC1E,IAAGtxD,EAAKwyD,YAAa,CACpB,IAAIlB,EAAKr1D,EAAE0I,MAAMwsD,KAAY,MAAQG,EAAK,KAAO,GAAI,CAEpD/gD,EAAEjH,EAAE2iB,GAAYgB,GAASqkC,EAAK,KAAK13D,QAAQ,QAAS,KACpD,KAAIoG,EAAKyyD,KAAMliD,EAAEjH,EAAI+/C,GAAM94C,EAAEjH,EAC7B,IAAGgoD,EAAK,GAAGj6D,QAAQ,cAAgB,EAAG,CACrCkZ,EAAEwlC,GAAK95C,EAAE0I,MAAMssD,QAAe,EAC9B,IAAG1gD,EAAEwlC,EAAE1+C,QAAQ,MAAQ,EAAGw6D,EAAO31D,MAAMw6B,GAAkBnmB,EAAEwlC,GAAIxlC,EAAEwlC,QAC3D,IAAGub,EAAK,GAAGj6D,QAAQ,eAAiB,EAAG,CAE7Cq6D,EAAOxmC,GAAYomC,EAAK,GACxB,IAAIoB,GAAOzmC,GAAYgB,GAASqkC,EAAK,IACrC,KAAItxD,EAAKyyD,KAAMC,EAAOrJ,GAAMqJ,EAC5BZ,GAAQrsD,SAASisD,EAAKrvC,GAAI,MAAQqvC,EAAMgB,EAAMvnC,EAAI9lB,QAE7C,IAAIisD,EAAKr1D,EAAE0I,MAAM,cAAgB,CACvC+sD,EAAOxmC,GAAYomC,EAAK,GACxB,IAAGQ,EAAQJ,EAAKrvC,IAAK9R,EAAEjH,EAAI8/C,GAAmB0I,EAAQJ,EAAKrvC,IAAI,GAAIyvC,EAAQJ,EAAKrvC,IAAI,GAAe8I,EAAI9lB,GAGxG,GAAIstD,GAAOt8B,GAAYlL,EAAI9lB,EAC3B,KAAIzN,EAAI,EAAGA,EAAIi6D,EAAO/5D,SAAUF,EAC/B,GAAG+6D,EAAKttD,GAAKwsD,EAAOj6D,GAAG,GAAGoD,EAAEqK,GAAKstD,EAAKttD,GAAKwsD,EAAOj6D,GAAG,GAAGwC,EAAEiL,EACzD,GAAGstD,EAAKp3D,GAAKs2D,EAAOj6D,GAAG,GAAGoD,EAAEO,GAAKo3D,EAAKp3D,GAAKs2D,EAAOj6D,GAAG,GAAGwC,EAAEmB,EACzDgV,EAAEwlC,EAAI8b,EAAOj6D,GAAG,GAGpB,GAAGuzB,EAAIhuB,GAAK,MAAQoT,EAAErT,IAAMnD,UAAW,CACtC,GAAGwW,EAAEjH,GAAKiH,EAAEwlC,EAAG,CACdxlC,EAAErT,EAAI,CAAGqT,GAAEpT,EAAI,QACT,KAAI86B,EAAY,aAClB1nB,GAAEpT,EAAI,QAEPoT,GAAEpT,EAAIguB,EAAIhuB,GAAK,GACpB,IAAG0xC,EAAM7zC,EAAEO,EAAIi2D,EAAM3iB,EAAM7zC,EAAEO,EAAIi2D,CACjC,IAAG3iB,EAAMz0C,EAAEmB,EAAIi2D,EAAM3iB,EAAMz0C,EAAEmB,EAAIi2D,CAEjC,QAAOjhD,EAAEpT,GACR,IAAK,IACJ,GAAGoT,EAAErT,GAAK,IAAMqT,EAAErT,GAAK,KAAM,CAC5B,IAAI+6B,EAAY,QAChB1nB,GAAEpT,EAAI,QACAoT,GAAErT,EAAIkM,WAAWmH,EAAErT,EAC1B,OACD,IAAK,IACJ,SAAUqT,GAAErT,GAAK,YAAa,CAC7B,IAAI+6B,EAAY,QAChB1nB,GAAEpT,EAAI,QACA,CACNs0D,EAAO/uB,GAAKj9B,SAAS8K,EAAErT,EAAG,IAC1BqT,GAAErT,EAAIu0D,EAAKt0D,CACXoT,GAAElL,EAAIosD,EAAKpsD,CACX,IAAGrF,EAAK27C,SAAUprC,EAAEwL,EAAI01C,EAAK11C,EAE9B,MACD,IAAK,MACJxL,EAAEpT,EAAI,GACNoT,GAAErT,EAAKqT,EAAErT,GAAG,KAAQ+vB,GAAS1c,EAAErT,GAAK,EACpC,IAAG8C,EAAK27C,SAAUprC,EAAEwL,EAAI0Q,GAAWlc,EAAErT,EACrC,OACD,IAAK,YACJo0D,EAAOr1D,EAAE0I,MAAMqsD,EACfzgD,GAAEpT,EAAI,GACN,IAAGm0D,GAAQ,OAASG,EAAO/V,GAAS4V,EAAK,KAAM,CAC9C/gD,EAAErT,EAAIu0D,EAAKt0D,CACX,IAAG6C,EAAK27C,SAAUprC,EAAEwL,EAAI01C,EAAK11C,MACvBxL,GAAErT,EAAI,EACb,OACD,IAAK,IAAKqT,EAAErT,EAAI6vB,GAAaxc,EAAErT,EAAI,OACnC,IAAK,IACJ,GAAG8C,EAAKk4B,UAAW3nB,EAAErT,EAAI8qB,GAAUzX,EAAErT,EAAG,OACnC,CAAEqT,EAAErT,EAAIqqB,EAAQS,GAAUzX,EAAErT,EAAG,GAAKqT,GAAEpT,EAAI,IAC/C,MAED,IAAK,IACJ,IAAI6C,GAAQA,EAAKg5C,WAAa,MAAOzoC,EAAE/N,EAAI+N,EAAErT,CAC7CqT,GAAErT,EAAIu/B,GAAMlsB,EAAErT,EAAI,QAGpB4tC,EAAQwgB,EAAS,CACjBsG,GAAK,IACL,IAAGD,GAAaxmC,EAAInwB,IAAMjB,UAAW,CACpC63D,EAAK5uB,EAAOwe,OAAOr2B,EAAInwB,EACvB,IAAG42D,GAAM,KAAM,CACd,GAAGA,EAAG/6B,UAAY,KAAMiU,EAAQ8mB,EAAG/6B,QACnC,IAAG72B,EAAKurD,WAAY,CACnB,GAAGqG,EAAG3G,QAAU,KAAMK,EAASsG,EAAG3G,SAIrCI,GAAY96C,EAAGu6B,EAAOwgB,EAAQtrD,EAAMwjC,EAAQR,EAC5C,IAAGhjC,EAAKk4B,WAAay5B,GAAaphD,EAAEpT,GAAK,KAAOP,EAAIkL,QAAQlL,EAAIkN,OAAOghC,IAAS,CAAEv6B,EAAEpT,EAAI,GAAKoT,GAAErT,EAAIwqB,GAAQnX,EAAErT,GAC7G,GAAGiuB,EAAIm7B,IAAMtmD,EAAK4yD,OAAQ,CACzB,GAAItM,IAAMtmD,EAAK4yD,OAAOjP,WAAWx4B,EAAIm7B,GAAG,EACxC,IAAGA,GAAMA,EAAG9iD,MAAQ,SAAU+M,EAAErR,EAAI,KAErC,GAAGq4B,EAAO,CACT,GAAIs7B,GAAKx8B,GAAYlL,EAAI9lB,EACzB,KAAIrK,EAAE63D,EAAGxtD,GAAIrK,EAAE63D,EAAGxtD,KAClBrK,GAAE63D,EAAGxtD,GAAGwtD,EAAGt3D,GAAKgV,MACVvV,GAAEmwB,EAAI9lB,GAAKkL,GAGpB,GAAGimC,EAAK1+C,OAAS,EAAGkD,EAAE,SAAWw7C,KAGlC,SAASsc,IAAkBt7B,EAAIx3B,EAAMyE,EAAKi+C,GACzC,GAAI/qD,MAAQ0N,KAAQgwB,EAAQqB,GAAkBc,EAAG,SAAUxC,EAAK,GAAI+wB,EAAKrgD,EAAK,GAAI8oC,KAAWp+B,EAAE,EAAGP,EAAE,EAAG2mC,EAAOhf,EAAG,QACjH,IAAID,GAAQ18B,MAAMS,QAAQk8B,EAC1B,IAAIu7B,IAAW1tD,EAAEK,GAAMud,EAAK+vC,GAAU,CACtC,KAAInjD,EAAIwlB,EAAMr6B,EAAEO,EAAGsU,GAAKwlB,EAAMj7B,EAAEmB,IAAKsU,EAAG2+B,EAAK3+B,GAAK8lB,GAAW9lB,EAC7D,KAAIO,EAAIilB,EAAMr6B,EAAEqK,EAAG+K,GAAKilB,EAAMj7B,EAAEiL,IAAK+K,EAAG,CACvC/K,IACAK,GAAKkwB,GAAWxlB,EAChB,KAAIP,EAAIwlB,EAAMr6B,EAAEO,EAAGsU,GAAKwlB,EAAMj7B,EAAEmB,IAAKsU,EAAG,CACvCk2C,EAAMvX,EAAK3+B,GAAKnK,CAChB,IAAIutD,GAAQ17B,GAASC,EAAGpnB,QAAQP,GAAI2nB,EAAGuuB,EACvC,IAAGkN,IAAUl5D,UAAW,QACxB,KAAIi7B,EAAOw7B,GAAkByC,EAAOlN,EAAKvuB,EAAIx3B,EAAMyE,EAAKi+C,KAAQ,KAAMr9C,EAAEnJ,KAAK84B,GAE9E,GAAG3vB,EAAEvN,OAAS,GAAM0+C,GAAQA,EAAKpmC,GAAK,CACrC2iD,GAAW1tD,EAAEK,EACb,IAAG8wC,GAAQA,EAAKpmC,GAAI,CACnB6S,EAAMuzB,EAAKpmC,EACX,IAAG6S,EAAIqyB,OAAQyd,EAAOzd,OAAS,CAC/B0d,IAAU,CACV,IAAG/vC,EAAIwyB,IAAKud,EAASvc,GAAMxzB,EAAIwyB,SAC1B,IAAGxyB,EAAIuyB,IAAKwd,EAAS/vC,EAAIuyB,GAC9B,IAAGwd,GAAU,EAAG,CAAED,EAAOT,GAAKU,CAAQD,GAAOG,aAAe,EAC5D,GAAGjwC,EAAIinC,MAAO,CAAE6I,EAAO5I,aAAelnC,EAAIinC,OAE3CvyD,EAAEA,EAAEG,QAAW02B,GAAU,MAAOnpB,EAAElN,KAAK,IAAK46D,IAG9C,GAAGvc,EAAM,KAAMpmC,EAAIomC,EAAK1+C,SAAUsY,EAAG,CACpC,GAAGomC,GAAQA,EAAKpmC,GAAI,CACnB2iD,GAAW1tD,EAAE+K,EAAE,EACf6S,GAAMuzB,EAAKpmC,EACX,IAAG6S,EAAIqyB,OAAQyd,EAAOzd,OAAS,CAC/B0d,IAAU,CACV,IAAI/vC,EAAIwyB,IAAKud,EAASvc,GAAMxzB,EAAIwyB,SAC3B,IAAIxyB,EAAIuyB,IAAKwd,EAAS/vC,EAAIuyB,GAC/B,IAAIwd,GAAU,EAAG,CAAED,EAAOT,GAAKU,CAAQD,GAAOG,aAAe,EAC7D,GAAIjwC,EAAIinC,MAAO,CAAE6I,EAAO5I,aAAelnC,EAAIinC,MAC3CvyD,EAAEA,EAAEG,QAAW02B,GAAU,MAAO,GAAIukC,IAGtC,MAAOp7D,GAAEQ,KAAK,IAGf,QAASg7D,IAAa1uD,EAAKzE,EAAM0iD,EAAIxf,GACpC,GAAIvrC,IAAKkzB,GAAY2D,GAAU,YAAa,MAC3CsV,MAAShU,GAAW,GACpBsjC,UAAWrkC,GAAM1pB,IAElB,IAAIrK,GAAI0nD,EAAGvrB,WAAW1yB,GAAM4uD,EAAO,EAAGC,EAAQ,EAC9C,IAAI97B,GAAKkrB,EAAGtrB,OAAOp8B,EACnB,IAAGw8B,GAAM,KAAMA,IACf,IAAIuuB,GAAMvuB,EAAG,SAAW,IACxB,IAAInC,GAAQqB,GAAkBqvB,EAC9B,IAAG1wB,EAAMj7B,EAAEmB,EAAI,OAAU85B,EAAMj7B,EAAEiL,EAAI,QAAS,CAC7C,GAAGrF,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,SAAWsqD,EAAM,sCAC9C1wB,GAAMj7B,EAAEmB,EAAIgC,KAAKyJ,IAAIquB,EAAMj7B,EAAEmB,EAAG,MAChC85B,GAAMj7B,EAAEiL,EAAI9H,KAAKyJ,IAAIquB,EAAMj7B,EAAEmB,EAAG,QAChCwqD,GAAMxvB,GAAalB,GAEpB,IAAI6N,EAAMA,IACV1L,GAAG,eACH,IAAI+7B,KAEJzF,IAAqBt2B,EAAIkrB,EAAIj+C,EAAKzE,EAAMrI,EAExCA,GAAEA,EAAEG,QAAW02B,GAAU,YAAa,MAAOu3B,IAAOA,GAEpDpuD,GAAEA,EAAEG,QAAUu4D,GAAwB74B,EAAIx3B,EAAMyE,EAAKi+C,EAGrD,IAAG1iD,EAAKwzD,YAAa77D,EAAEA,EAAEG,QAAW02B,GAAU,gBAAiB,MAC9DilC,iBAAiBzzD,EAAKwzD,YAAYC,kBAAkB,KACpDC,aAAa1zD,EAAKwzD,YAAYE,cAAc,KAC5CC,gBAAgB3zD,EAAKwzD,YAAYG,iBAAiB,KAGnD,IAAGn8B,EAAG,UAAY,MAAQA,EAAG,SAAS1/B,OAAS,EAAGH,EAAEA,EAAEG,QAAW03D,GAAkBh4B,EAAIA,EAAG,SAE1F7/B,GAAE07D,EAAO17D,EAAEG,QAAU,cACrB0/B,GAAG,YACH,IAAGA,EAAG,SAAW,KAAM,CACtB87B,EAAQR,GAAkBt7B,EAAIx3B,EAAMyE,EAAKi+C,EAAIxf,EAC7C,IAAGowB,EAAMx7D,OAAS,EAAGH,EAAEA,EAAEG,QAAU,EAEpC,GAAGH,EAAEG,OAAOu7D,EAAK,EAAG,CAAE17D,EAAEA,EAAEG,QAAU,cAAkBH,GAAE07D,GAAM17D,EAAE07D,GAAMz5D,QAAQ,KAAK,KAInF,GAAG49B,EAAG,YAAa7/B,EAAEA,EAAEG,QAAU22D,GAAwBj3B,EAAG,YAK5D,IAAGA,EAAG,gBAAkB,KAAM7/B,EAAEA,EAAEG,QAAU23D,GAAwBj4B,EAAG,eAAgBA,EAAIkrB,EAAIj+C,EAM/F,IAAG+yB,EAAG,YAAc,MAAQA,EAAG,WAAW1/B,OAAS,EAAGH,EAAEA,EAAEG,QAAW61D,GAAoBn2B,EAAG,WAM5F,IAAIo8B,IAAQ,EAAG/sB,EAAKW,GAAO,CAC3B,IAAGhQ,EAAG,UAAU1/B,OAAS,EAAG,CAC3BH,EAAEA,EAAEG,QAAU,cAChB0/B,GAAG,UAAUvpB,QAAQ,SAASjR,GAC3B,IAAIA,EAAE,GAAG+pC,OAAQ,MACjBF,IAAQkf,IAAM/oD,EAAE,GAChB,IAAGA,EAAE,GAAG+pC,OAAOrtC,OAAO,IAAM,IAAK,CAChC8tC,EAAMD,GAASrE,GAAO,EAAG5W,GAAUtvB,EAAE,GAAG+pC,QAAQntC,QAAQ,OAAQ,IAAKw1B,GAAK+V,MAC1E0B,GAAI,QAAU,MAAMW,EAErB,IAAIosB,EAAO52D,EAAE,GAAG+pC,OAAO1vC,QAAQ,OAAS,EAAGwvC,EAAIgoB,SAAWviC,GAAUtvB,EAAE,GAAG+pC,OAAOvuC,MAAMo7D,EAAK,GAC3F,IAAG52D,EAAE,GAAGgyD,QAASnoB,EAAIkoB,QAAUziC,GAAUtvB,EAAE,GAAGgyD,QAC9Cr3D,GAAEA,EAAEG,QAAU02B,GAAU,YAAY,KAAKqY,IAE1ClvC,GAAEA,EAAEG,QAAU,sBAER0/B,GAAG,SAIV,IAAGA,EAAG,aAAe,KAAM7/B,EAAEA,EAAEG,QAAWq3D,GAAqB33B,EAAG,YASlE,KAAIx3B,GAAQA,EAAK6zD,UAAa7zD,EAAK6zD,cAAkB,GAAKl8D,EAAEA,EAAEG,QAAUw2B,GAAS,gBAAiBE,GAAU,eAAgB,MAAOslC,mBAAmB,EAAGC,MAAMhO,IAI/J,IAAGwN,EAASz7D,OAAS,EAAG,CACvB0vC,EAAMD,GAASrE,GAAO,EAAG,uBAAyBz+B,EAAI,GAAK,OAAQ2qB,GAAKiX,KACxE1uC,GAAEA,EAAEG,QAAU02B,GAAU,UAAW,MAAOwlC,OAAO,MAAQxsB,GACzDhQ,GAAG,YAAc+7B,EAGlB,GAAG/7B,EAAG,aAAa1/B,OAAS,EAAG,CAC9B0vC,EAAMD,GAASrE,GAAO,EAAG,0BAA4Bz+B,EAAI,GAAK,OAAQ2qB,GAAKgW,IAC3EztC,GAAEA,EAAEG,QAAU02B,GAAU,gBAAiB,MAAOwlC,OAAO,MAAQxsB,GAC/DhQ,GAAG,WAAagQ,EAWjB,GAAG7vC,EAAEG,OAAO,EAAG,CAAEH,EAAEA,EAAEG,QAAU,cAAkBH,GAAE,GAAGA,EAAE,GAAGiC,QAAQ,KAAK,KACxE,MAAOjC,GAAEQ,KAAK,IAEf,QAAS87D,IAAYv8D,GACpB,GAAIy+B,KACJ,IAAI+9B,GAAMx8D,EAAKiN,MAAM,gBACrB,IAAI2E,IAGH5R,EAAKiN,MAAM,0CAA0CsJ,QAAQ,SAASowC,GACtE,GAAIv+C,GAAIu+C,EAAG15C,MAAM,8CACjB,KAAI7E,EAAG,MACPq2B,IAAKr2B,EAAE,IAAMo0D,GAAOp0D,EAAE,GAAKA,EAAE,IAI9B,IAAIq0D,GAAKloC,IAAav0B,EAAKiN,MAAM,8CAAgD,GAAG,YAAY,KAE/FjN,EAAKiN,MAAM,4BAA4BsJ,QAAQ,SAAS8nC,GAAKzsC,EAAIysC,EAAEn8C,QAAQ,SAAS,KAErF,QAAQu8B,EAAKg+B,EAAI7qD,GAIlB,QAAS8qD,IAAY18D,EAAMkc,EAAM5T,EAAMkjC,EAAMwf,EAAI2R,GAChD,GAAI79B,GAAO69B,IAAW7L,QAAQ,QAC9B,KAAI9wD,EAAM,MAAO28D,EAGjB,IAAIxkD,GAAI,EAAGO,EAAI,EAAG+lB,EAAM,GACxB,IAAIo2B,IAAYvxD,GAAIqK,EAAE,IAAS9J,EAAE,KAAUnB,GAAIiL,EAAE,EAAG9J,EAAE,KAGrD7D,EAAKiN,MAAM,6CAA6CsJ,QAAQ,SAASqmD,GACzE,GAAIC,GAAQN,GAAYK,EACxB/H,GAASvxD,EAAEqK,EAAIknD,EAASvxD,EAAEO,EAAI,CAC9BgxD,GAASnyD,EAAEmB,EAAIsU,CACfsmB,GAAMR,GAAW9lB,EACjB0kD,GAAM,GAAGtmD,QAAQ,SAASxT,EAAE7C,GAC3B4+B,EAAGL,EAAMP,GAAWh+B,KAAOuF,EAAE,IAAKD,EAAEzC,EAAG6wB,EAAEipC,EAAM,GAC/CnkD,GAAIxY,GAEL,IAAG20D,EAASnyD,EAAEiL,EAAI+K,EAAGm8C,EAASnyD,EAAEiL,EAAI+K,IAClCP,GAEH,IAAGA,EAAI,EAAG2mB,EAAG,QAAUD,GAAag2B,EACpC,OAAO/1B,GAERpH,GAAK4W,GAAK,gFAGV,SAASwuB,IAAa98D,EAAMsI,EAAMyE,EAAKy+B,EAAMwf,GAC5C,IAAIhrD,EAAM,MAAOA,EAEjB,KAAIwrC,EAAMA,GAAQ0D,SAClB,IAAI5rC,IAAMwtD,QAAQ,QAASiM,UAAU,KAAMC,OAAO,GAClD,IAAIj0D,EAGJ,IAAIksD,GAAUj1D,EAAKiN,MAAMwnD,GACzB,IAAGQ,EAASC,GAAqBD,EAAQ,GAAI3xD,EAAG0nD,EAAIj+C,EAGpD,IAAIhE,EAAI/I,EAAKiN,MAAM,wBAA0B3J,EAAE,QAAUyF,EAAE,EAE3D,IAAGyiC,EAAK,OAAOloC,EAAE,SAAUA,EAAE,WAAakoC,EAAK,OAAOloC,EAAE,QACxD,OAAOA,GAER,QAAS25D,IAAalwD,EAAKzE,EAAM0iD,EAAIxf,GACpC,GAAIvrC,IAAKkzB,GAAY2D,GAAU,aAAc,MAC5CsV,MAAShU,GAAW,GACpBsjC,UAAWrkC,GAAM1pB,IAElB1N,GAAEA,EAAEG,QAAU02B,GAAU,UAAW,MAAOwlC,OAAQ,QAClDzsB,IAASrE,GAAO,EAAG,uBAAyBz+B,EAAI,GAAK,OAAQ2qB,GAAKiX,KAClE,IAAG1uC,EAAEG,OAAO,EAAG,CAAEH,EAAEA,EAAEG,QAAU,eAAmBH,GAAE,GAAGA,EAAE,GAAGiC,QAAQ,KAAK,KACzE,MAAOjC,GAAEQ,KAAK,IAGf,GAAIy8D,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,IAAoBrqC,EAAQ4Z,GACpC,IAAI,GAAItgC,GAAI,EAAGA,GAAK0mB,EAAO7yB,SAAUmM,EAAG,CAAE,GAAIzB,GAAImoB,EAAO1mB,EACxD,KAAI,GAAIrM,GAAE,EAAGA,GAAK2sC,EAASzsC,SAAUF,EAAG,CAAE,GAAI0zB,GAAIiZ,EAAS3sC,EAC1D,IAAG4K,EAAE8oB,EAAE,KAAO,KAAM9oB,EAAE8oB,EAAE,IAAMA,EAAE,OAC3B,QAAOA,EAAE,IACd,IAAK,OAAQ,SAAU9oB,GAAE8oB,EAAE,KAAO,SAAU9oB,EAAE8oB,EAAE,IAAMyB,GAAavqB,EAAE8oB,EAAE,IAAM,OAC7E,IAAK,MAAO,SAAU9oB,GAAE8oB,EAAE,KAAO,SAAU9oB,EAAE8oB,EAAE,IAAM7lB,SAASjD,EAAE8oB,EAAE,IAAK,GAAK,WAK/E,QAAS2pC,IAActqC,EAAQ4Z,GAC9B,IAAI,GAAI3sC,GAAI,EAAGA,GAAK2sC,EAASzsC,SAAUF,EAAG,CAAE,GAAI0zB,GAAIiZ,EAAS3sC,EAC5D,IAAG+yB,EAAOW,EAAE,KAAO,KAAMX,EAAOW,EAAE,IAAMA,EAAE,OACrC,QAAOA,EAAE,IACb,IAAK,OAAQ,SAAUX,GAAOW,EAAE,KAAO,SAAUX,EAAOW,EAAE,IAAMyB,GAAapC,EAAOW,EAAE,IAAM,OAC5F,IAAK,MAAO,SAAUX,GAAOW,EAAE,KAAO,SAAUX,EAAOW,EAAE,IAAM7lB,SAASklB,EAAOW,EAAE,IAAK,GAAK,UAK9F,QAAS4pC,IAAkBxS,GAC1BuS,GAAcvS,EAAGyS,QAASP,GAC1BK,IAAcvS,EAAG0S,OAAQL,GAEzBC,IAAoBtS,EAAG2S,OAAQR,GAC/BG,IAAoBtS,EAAGtrB,OAAQ09B,GAE/BpL,IAAS5oD,SAAWisB,GAAa21B,EAAGyS,QAAQr0D,UAG7C,QAASw0D,IAAS5S,GAEjB,IAAIA,EAAGwL,SAAU,MAAO,OACxB,KAAIxL,EAAGwL,SAASiH,QAAS,MAAO,OAChC,OAAOpoC,IAAa21B,EAAGwL,SAASiH,QAAQr0D,UAAY,OAAS,QAG9D,GAAIy0D,IAAW,UAAWt6D,MAAM,GAChC,SAASu6D,IAAc/6D,EAAGwvB,GACzB,GAAGxvB,EAAE3C,OAAS,GAAI,CAAE,GAAGmyB,EAAM,MAAO,MAAO,MAAM,IAAIxuB,OAAM,sCAC3D,GAAIg6D,GAAQ,IACZF,IAAStnD,QAAQ,SAAS1S,GACzB,GAAGd,EAAEpD,QAAQkE,KAAO,EAAG,MACvB,KAAI0uB,EAAM,KAAM,IAAIxuB,OAAM,2CAC1Bg6D,GAAQ,OAET,OAAOA,GAER,QAASC,IAAeC,EAAG/0D,EAAGg1D,GAC7BD,EAAE1nD,QAAQ,SAASxT,EAAE7C,GACpB49D,GAAc/6D,EACd,KAAI,GAAIwJ,GAAI,EAAGA,EAAIrM,IAAKqM,EAAG,GAAGxJ,GAAKk7D,EAAE1xD,GAAI,KAAM,IAAIxI,OAAM,yBAA2BhB,EACpF,IAAGm7D,EAAO,CACT,GAAIC,GAAMj1D,GAAKA,EAAEhJ,IAAMgJ,EAAEhJ,GAAGi2D,UAAapzD,CACzC,IAAGo7D,EAAG99D,WAAW,IAAM,IAAM89D,EAAG/9D,OAAS,GAAI,KAAM,IAAI2D,OAAM,2BAA6Bo6D,MAI7F,QAASC,IAASpT,GACjB,IAAIA,IAAOA,EAAGvrB,aAAeurB,EAAGtrB,OAAQ,KAAM,IAAI37B,OAAM,mBACxD,KAAIinD,EAAGvrB,WAAWr/B,OAAQ,KAAM,IAAI2D,OAAM,oBAC1C,IAAI27B,GAAUsrB,EAAGwL,UAAYxL,EAAGwL,SAAS92B,UACzCs+B,IAAehT,EAAGvrB,WAAYC,IAAUsrB,EAAGsL,OAC3C,KAAI,GAAIp2D,GAAI,EAAGA,EAAI8qD,EAAGvrB,WAAWr/B,SAAUF,EAAG6zD,GAAS/I,EAAGtrB,OAAOsrB,EAAGvrB,WAAWv/B,IAAK8qD,EAAGvrB,WAAWv/B,GAAIA,GAIvG,GAAIm+D,IAAY,eAChB,SAASC,IAAat+D,EAAMsI,GAC3B,IAAItI,EAAM,KAAM,IAAI+D,OAAM,sBAC1B,IAAIinD,IAAOuT,cAAed,WAAYE,UAAWj+B,UAAWg+B,UAAW1F,SAAU5rB,MAAO,GACxF,IAAIgW,GAAO,MAAOhW,EAAQ,OAC1B,IAAIoyB,MAAYC,EAAU,CAC1Bz+D,GAAKkC,QAAQmxB,GAAU,QAASqrC,GAAOz9D,EAAG8L,GACzC,GAAIjE,GAAI0qB,GAAYvyB,EACpB,QAAO8yB,GAASjrB,EAAE,KACjB,IAAK,QAAS,MAGd,IAAK,YACJ,GAAG7H,EAAEgM,MAAMoxD,IAAYjyB,EAAQ,QAAUnrC,EAAEgM,MAAM,WAAW,EAC5D+9C,GAAG5e,MAAQtjC,EAAEsjC,EACb,OACD,IAAK,cAAe,MAGpB,IAAK,qBAAuBtjC,GAAE,EAAIkiD,GAAGuT,WAAaz1D,CAAG,OACrD,IAAK,kBAAkB,IAAK,iBAAkB,MAG9C,IAAK,eACJ,MACD,IAAK,iBAAkB,MAGvB,IAAK,eACL,IAAK,gBACJo0D,GAAW3mD,QAAQ,SAASzL,GAC3B,GAAGhC,EAAEgC,EAAE,KAAO,KAAM,MACpB,QAAOA,EAAE,IACR,IAAK,OAAQkgD,EAAGyS,QAAQ3yD,EAAE,IAAMuqB,GAAavsB,EAAEgC,EAAE,IAAM,OACvD,IAAK,MAAOkgD,EAAGyS,QAAQ3yD,EAAE,IAAMiD,SAASjF,EAAEgC,EAAE,IAAK,GAAK,OACtD,QAASkgD,EAAGyS,QAAQ3yD,EAAE,IAAMhC,EAAEgC,EAAE,OAGlC,IAAGhC,EAAEotD,SAAUlL,EAAGyS,QAAQtH,SAAW5gC,GAASzsB,EAAEotD,SAChD,OACD,IAAK,gBAAiB,MAGtB,IAAK,sBACJ,MACD,IAAK,wBAAyB,MAG9B,IAAK,cAAc,IAAK,eAAe,IAAK,eAAgB,MAE5D,IAAK,iBAAiB,IAAK,wBAA0BptD,GAAE,EAAIkiD,GAAG2S,OAAOn5D,KAAKsE,EAAI,OAC9E,IAAK,kBAAmB,MAGxB,IAAK,WAAW,IAAK,YAAY,IAAK,YAAa,MAEnD,IAAK,SACJ,OAAOA,EAAE+V,OACR,IAAK,SAAU/V,EAAE61D,OAAS,CAAG,OAC7B,IAAK,aAAc71D,EAAE61D,OAAS,CAAG,OACjC,QAAS71D,EAAE61D,OAAS,SAEd71D,GAAE+V,KACT/V,GAAEoT,KAAOqY,GAAYgB,GAASzsB,EAAEoT,aACzBpT,GAAE,EAAIkiD,GAAGtrB,OAAOl7B,KAAKsE;AAAI,MACjC,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,gBAAiBs5C,EAAK,IAAM,OACxD,IAAK,kBAAmBA,EAAK,KAAO,OAEpC,IAAK,eAAgB,CACpBoc,IACAA,GAAMtG,KAAO3iC,GAASzsB,EAAEoT,KACxB,IAAGpT,EAAEslD,QAASoQ,EAAMI,QAAU91D,EAAEslD,OAChC,IAAGtlD,EAAE+1D,aAAcL,EAAMrG,OAASrvD,EAAE+1D,YACpC,IAAGxpC,GAAavsB,EAAE80C,QAAQ,KAAM4gB,EAAMG,OAAS,IAC/CF,GAAU1xD,EAAM9L,EAAEb,OACjB,MACF,IAAK,iBAAkB,CACtBo+D,EAAMpG,IAAM7jC,GAAYgB,GAASv1B,EAAKc,MAAM29D,EAAS1xD,IACrDi+C,GAAGgN,MAAMxzD,KAAKg6D,GACb,MACF,IAAK,iBAAkB,MAGvB,IAAK,gBAAkB11D,GAAE,EAAIkiD,GAAG0S,OAAS50D,CAAG,OAC5C,IAAK,kBAAoBA,GAAE,EAAIkiD,GAAG0S,OAAS50D,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,OAAQs5C,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,GAAQ95C,EAAKouB,IAAK,KAAM,IAAI3yB,OAAM,gBAAkB+E,EAAE,GAAK,iBAEzE,MAAO7H,IAER,IAAGm3B,GAAWz4B,QAAQqrD,EAAG5e,UAAY,EAAG,KAAM,IAAIroC,OAAM,sBAAwBinD,EAAG5e,MAEnFoxB,IAAkBxS,EAElB,OAAOA,GAGR,QAAS8T,IAAa9T,GACrB,GAAI/qD,IAAKkzB,GACTlzB,GAAEA,EAAEG,QAAU02B,GAAU,WAAY,MACnCsV,MAAShU,GAAW,GAGpBsjC,UAAWrkC,GAAM1pB,GAGlB,IAAIoxD,GAAe/T,EAAGwL,WAAaxL,EAAGwL,SAASwB,WAAW53D,OAAS,CAKnE,IAAI4+D,IAAe9I,SAAS,eAC5B,IAAGlL,EAAGwL,UAAYxL,EAAGwL,SAASiH,QAAS,CACtCP,GAAW3mD,QAAQ,SAAStV,GAC9B,GAAI+pD,EAAGwL,SAASiH,QAAQx8D,EAAE,KAAQ,KAAM,MACrC,IAAI+pD,EAAGwL,SAASiH,QAAQx8D,EAAE,KAAQA,EAAE,GAAI,MACxC+9D,GAAW/9D,EAAE,IAAO+pD,EAAGwL,SAASiH,QAAQx8D,EAAE,KAE7C,IAAG+pD,EAAGwL,SAASiH,QAAQtH,SAAU,CAAE6I,EAAW9I,SAAWlL,EAAGwL,SAASiH,QAAQtH,eAAiB6I,GAAW7I,UAExGl2D,EAAEA,EAAEG,QAAW02B,GAAU,aAAc,KAAMkoC,EAI7C,IAAIx/B,GAASwrB,EAAGwL,UAAYxL,EAAGwL,SAAS92B,UACxC,IAAIx/B,GAAI,CAGR,IAAGs/B,GAAUA,EAAO,MAAQA,EAAO,GAAGm/B,OAAQ,CAC7C1+D,EAAEA,EAAEG,QAAU,aACd,KAAIF,EAAI,EAAGA,GAAK8qD,EAAGvrB,WAAWr/B,SAAUF,EAAG,CAC1C,IAAIs/B,EAAOt/B,GAAI,KACf,KAAIs/B,EAAOt/B,GAAGy+D,OAAQ,MAEvB,GAAGz+D,GAAK8qD,EAAGvrB,WAAWr/B,OAAQF,EAAI,CAClCD,GAAEA,EAAEG,QAAU,6BAA+BF,EAAI,gBAAkBA,EAAI,KACvED,GAAEA,EAAEG,QAAU,eAGfH,EAAEA,EAAEG,QAAU,UACd,KAAIF,EAAI,EAAGA,GAAK8qD,EAAGvrB,WAAWr/B,SAAUF,EAAG,CAC1C,GAAI08C,IAAQ1gC,KAAK0Y,GAAUo2B,EAAGvrB,WAAWv/B,GAAGY,MAAM,EAAE,KACpD87C,GAAIqiB,QAAU,IAAI/+D,EAAE,EACpB08C,GAAI,QAAU,OAAO18C,EAAE,EACvB,IAAGs/B,EAAOt/B,GAAI,OAAOs/B,EAAOt/B,GAAGy+D,QAC9B,IAAK,GAAG/hB,EAAI/9B,MAAQ,QAAU,OAC9B,IAAK,GAAG+9B,EAAI/9B,MAAQ,YAAc,QAEnC5e,EAAEA,EAAEG,QAAW02B,GAAU,QAAQ,KAAK8lB,GAEvC38C,EAAEA,EAAEG,QAAU,WAKd,IAAG2+D,EAAa,CACf9+D,EAAEA,EAAEG,QAAU,gBACd,IAAG4qD,EAAGwL,UAAYxL,EAAGwL,SAASwB,MAAOhN,EAAGwL,SAASwB,MAAMzhD,QAAQ,SAASxT,GACvE,GAAIwB,IAAK2X,KAAKnZ,EAAEm1D,KAChB,IAAGn1D,EAAE67D,QAASr6D,EAAE6pD,QAAUrrD,EAAE67D,OAC5B,IAAG77D,EAAEo1D,OAAS,KAAM5zD,EAAEs6D,aAAe,GAAG97D,EAAEo1D,KAC1C,IAAGp1D,EAAE47D,OAAQp6D,EAAEq5C,OAAS,GACxB,KAAI76C,EAAEq1D,IAAK,MACXn4D,GAAEA,EAAEG,QAAU02B,GAAU,cAAelC,GAAU7xB,EAAEq1D,KAAM7zD,IAE1DtE,GAAEA,EAAEG,QAAU,kBAcf,GAAGH,EAAEG,OAAO,EAAE,CAAEH,EAAEA,EAAEG,QAAU,aAAeH,GAAE,GAAGA,EAAE,GAAGiC,QAAQ,KAAK,KACpE,MAAOjC,GAAEQ,KAAK,IAEf,QAASy+D,IAASl/D,EAAMkc,EAAM5T,GAC7B,GAAG4T,EAAKpb,OAAO,KAAK,OAAQ,MAAOq+D,cAAa,EAAQ72D,EACxD,OAAOg2D,IAAa,EAAQh2D,GAG7B,QAAS82D,IAASp/D,EAAMkc,EAAMnP,EAAKzE,EAAMkjC,EAAMwf,EAAIlf,EAAQR,GAC1D,GAAGpvB,EAAKpb,OAAO,KAAK,OAAQ,MAAOu+D,cAAa,EAAQ/2D,EAAMyE,EAAKy+B,EAAMwf,EAAIlf,EAAQR,EACrF,OAAOspB,IAAa,EAAQtsD,EAAMyE,EAAKy+B,EAAMwf,EAAIlf,EAAQR,GAG1D,QAASg0B,IAASt/D,EAAMkc,EAAMnP,EAAKzE,EAAMkjC,EAAMwf,EAAIlf,EAAQR,GAC1D,GAAGpvB,EAAKpb,OAAO,KAAK,OAAQ,MAAOy+D,cAAa,EAAQj3D,EAAMyE,EAAKy+B,EAAMwf,EAAIlf,EAAQR,EACrF,OAAOwxB,IAAa,EAAQx0D,EAAMyE,EAAKy+B,EAAMwf,EAAIlf,EAAQR,GAG1D,QAASk0B,IAASx/D,EAAMkc,EAAMnP,EAAKzE,EAAMkjC,EAAMwf,EAAIlf,EAAQR,GAC1D,GAAGpvB,EAAKpb,OAAO,KAAK,OAAQ,MAAOkwD,IAAa,EAAQ1oD,EAAMyE,EAAKy+B,EAAMwf,EAAIlf,EAAQR,EACrF,OAAO2lB,IAAa,EAAQ3oD,EAAMyE,EAAKy+B,EAAMwf,EAAIlf,EAAQR,GAG1D,QAASm0B,IAASz/D,EAAMkc,EAAMnP,EAAKzE,EAAMkjC,EAAMwf,EAAIlf,EAAQR,GAC1D,GAAGpvB,EAAKpb,OAAO,KAAK,OAAQ,MAAO+vD,IAAa,EAAQvoD,EAAMyE,EAAKy+B,EAAMwf,EAAIlf,EAAQR,EACrF,OAAOylB,IAAa,EAAQzoD,EAAMyE,EAAKy+B,EAAMwf,EAAIlf,EAAQR,GAG1D,QAASo0B,IAAU1/D,EAAMkc,EAAM4vB,EAAQxjC,GACtC,GAAG4T,EAAKpb,OAAO,KAAK,OAAQ,MAAO6+D,eAAc,EAAQ7zB,EAAQxjC,EACjE,OAAOkiD,IAAc,EAAQ1e,EAAQxjC,GAGtC,QAASs3D,IAAY5/D,EAAMkc,EAAM5T,GAChC,MAAOqjD,IAAgB3rD,EAAMsI,GAG9B,QAASu3D,IAAU7/D,EAAMkc,EAAM5T,GAC9B,GAAG4T,EAAKpb,OAAO,KAAK,OAAQ,MAAOg/D,eAAc,EAAQx3D,EACzD,OAAO+7C,IAAc,EAAQ/7C,GAG9B,QAASy3D,IAAW//D,EAAMkc,EAAM5T,GAC/B,GAAG4T,EAAKpb,OAAO,KAAK,OAAQ,MAAOk/D,oBAAmB,EAAQ13D,EAC9D,OAAOimD,IAAmB,EAAQjmD,GAGnC,QAAS23D,IAASjgE,EAAMkc,EAAM5T,GAC7B,GAAG4T,EAAKpb,OAAO,KAAK,OAAQ,MAAOo/D,cAAa,EAAQhkD,EAAM5T,EAC9D,OAAO63D,cAAa,EAAQjkD,EAAM5T,GAGnC,QAAS83D,IAAYpgE,EAAMmvC,EAAKjzB,EAAM5T,GACrC,GAAG4T,EAAKpb,OAAO,KAAK,OAAQ,MAAOwrD,IAAgB,EAAQnd,EAAKjzB,EAAM5T,EACtE,OAAO+jD,IAAgB,EAAQld,EAAKjzB,EAAM5T,GAG3C,QAAS+3D,IAAargE,EAAMkc,EAAM5T,GACjC,GAAG4T,EAAKpb,OAAO,KAAK,OAAQ,MAAOw/D,kBAAiB,EAAQpkD,EAAM5T,EAClE,OAAOyjD,IAAiB,EAAQ7vC,EAAM5T,GAGvC,QAASi4D,IAASvV,EAAI9uC,EAAM5T,GAC3B,OAAQ4T,EAAKpb,OAAO,KAAK,OAAS0/D,aAAe1B,IAAc9T,EAAI1iD,GAGpE,QAASm4D,IAASzgE,EAAMkc,EAAM5T,EAAM0iD,EAAIxf,GACvC,OAAQtvB,EAAKpb,OAAO,KAAK,OAAS4/D,aAAejF,IAAcz7D,EAAMsI,EAAM0iD,EAAIxf,GAIhF,QAASm1B,IAAS3gE,EAAMkc,EAAM5T,EAAM0iD,EAAIxf,GACvC,OAAQtvB,EAAKpb,OAAO,KAAK,OAAS8/D,aAAe3D,IAAcj9D,EAAMsI,EAAM0iD,EAAIxf,GAGhF,QAASq1B,IAAU7gE,EAAMkc,EAAM5T,GAC9B,OAAQ4T,EAAKpb,OAAO,KAAK,OAASggE,cAAgB/V,IAAe/qD,EAAMsI,GAGxE,QAASy4D,IAAU/gE,EAAMkc,EAAM5T,GAC9B,OAAQ4T,EAAKpb,OAAO,KAAK,OAASkgE,cAAgBrc,IAAe3kD,EAAMsI,GAGxE,QAAS24D,IAAWjhE,EAAMkc,EAAM5T,GAC/B,OAAQ4T,EAAKpb,OAAO,KAAK,OAASogE,mBAAqBjS,IAAoBjvD,EAAMsI,GAQlF,QAAS64D,IAAajlD,GACrB,OAAQA,EAAKpb,OAAO,KAAK,OAASsgE,iBAAmBhV,MAGtD,GAAIiV,IAAQ,WACX,QAASC,GAAc7yD,EAAKiS,GAC3B,GAAIpY,GAAOoY,KACX,IAAGtf,GAAS,MAAQkH,EAAKu3B,OAAS,KAAMv3B,EAAKu3B,MAAQz+B,CACrD,IAAI0+B,GAAKx3B,EAAKu3B,WACdpxB,GAAMA,EAAIvM,QAAQ,cAAe,GACjC,IAAI8yD,GAAOvmD,EAAIxB,MAAM,UACrB,KAAI+nD,EAAM,KAAM,IAAIjxD,OAAM,uCAC1B,IAAIw9D,GAAQ9yD,EAAIxB,MAAM,YACtB,IAAI/M,GAAI80D,EAAK9L,MAAO38C,EAAIg1D,GAASA,EAAMrY,OAASz6C,EAAIrO,MACpD,IAAI0+C,GAAOttB,GAAY/iB,EAAI3N,MAAMZ,EAAGqM,GAAI,iBAAkB,OAC1D,IAAImM,IAAK,EAAGP,EAAI,EAAG+mC,EAAK,EAAG5Q,EAAK,CAChC,IAAI3Q,IAASr6B,GAAGqK,EAAE,IAAU9J,EAAE,KAAUnB,GAAGiL,EAAE,EAAE9J,EAAE,GACjD,IAAI8xD,KACJ,KAAIz1D,EAAI,EAAGA,EAAI4+C,EAAK1+C,SAAUF,EAAG,CAChC,GAAIqrB,GAAMuzB,EAAK5+C,GAAGorB,MAClB,IAAIk2C,GAAKj2C,EAAIzqB,MAAM,EAAE,GAAG4P,aACxB,IAAG8wD,GAAM,MAAO,GAAI9oD,CAAG,IAAGpQ,EAAK6tC,WAAa7tC,EAAK6tC,WAAaz9B,EAAG,GAAIA,CAAG,OAASP,EAAI,CAAG,UACxF,GAAGqpD,GAAM,OAASA,GAAM,MAAO,QAC/B,IAAI7H,GAAQpuC,EAAIhoB,MAAM,aACtB,KAAIgJ,EAAI,EAAGA,EAAIotD,EAAMv5D,SAAUmM,EAAG,CACjC,GAAI+wB,GAAOq8B,EAAMptD,GAAG+e,MACpB,KAAIgS,EAAKrwB,MAAM,WAAY,QAC3B,IAAIlE,GAAIu0B,EAAM5uB,EAAK,CAEnB,OAAM3F,EAAE/G,OAAO,IAAM,MAAQ0M,EAAK3F,EAAEpJ,QAAQ,OAAS,EAAGoJ,EAAIA,EAAEjI,MAAM4N,EAAG,EACvE,KAAI,GAAI+yD,GAAO,EAAGA,EAAO9L,EAAOv1D,SAAUqhE,EAAM,CAC/C,GAAI7L,GAASD,EAAO8L,EACpB,IAAG7L,EAAOtyD,EAAEO,GAAKsU,GAAKy9C,EAAOtyD,EAAEqK,EAAI+K,GAAKA,GAAKk9C,EAAOlzD,EAAEiL,EAAG,CAAEwK,EAAIy9C,EAAOlzD,EAAEmB,EAAI,CAAG49D,IAAQ,GAExF,GAAIhuC,GAAMD,GAAY8J,EAAKx8B,MAAM,EAAGw8B,EAAK39B,QAAQ,MACjD2uC,GAAK7a,EAAIiuC,SAAWjuC,EAAIiuC,QAAU,CAClC,KAAIxiB,GAAMzrB,EAAIkuC,SAAS,GAAKrzB,EAAG,EAAGqnB,EAAOnxD,MAAMlB,GAAGqK,EAAE+K,EAAE7U,EAAEsU,GAAGzV,GAAGiL,EAAE+K,GAAKwmC,GAAI,GAAK,EAAGr7C,EAAEsU,EAAIm2B,EAAK,IAC5F,IAAIszB,GAAKnuC,EAAIhuB,GAAKguB,EAAI,WAAa,EAEnC,KAAI1qB,EAAE3I,OAAQ,CAAE+X,GAAKm2B,CAAI,UACzBvlC,EAAIitB,GAAWjtB,EACf,IAAG40B,EAAMr6B,EAAEqK,EAAI+K,EAAGilB,EAAMr6B,EAAEqK,EAAI+K,CAAG,IAAGilB,EAAMj7B,EAAEiL,EAAI+K,EAAGilB,EAAMj7B,EAAEiL,EAAI+K,CAC/D,IAAGilB,EAAMr6B,EAAEO,EAAIsU,EAAGwlB,EAAMr6B,EAAEO,EAAIsU,CAAG,IAAGwlB,EAAMj7B,EAAEmB,EAAIsU,EAAGwlB,EAAMj7B,EAAEmB,EAAIsU,CAC/D,KAAIpP,EAAE3I,OAAQ,CAAE+X,GAAKm2B,CAAI,UACzB,GAAIruC,IAAKwF,EAAE,IAAKD,EAAEuD,EAClB,IAAGT,EAAKqU,MAAQ5T,EAAEuiB,OAAOlrB,QAAUwhE,GAAM,IAAI,MACxC,IAAG74D,IAAM,OAAQ9I,GAAKwF,EAAE,IAAKD,EAAE,UAC/B,IAAGuD,IAAM,QAAS9I,GAAKwF,EAAE,IAAKD,EAAE,WAChC,KAAIzD,MAAM+uB,GAAS/nB,IAAK9I,GAAKwF,EAAE,IAAKD,EAAEsrB,GAAS/nB,QAC/C,KAAIhH,MAAMqvB,GAAUroB,GAAGQ,WAAY,CACvCtJ,GAAMwF,EAAE,IAAKD,EAAE8qB,GAAUvnB,GACzB,KAAIT,EAAKk4B,UAAWvgC,GAAMwF,EAAE,IAAKD,EAAEqqB,EAAQ5vB,EAAEuF,GAC7CvF,GAAE2zB,EAAItrB,EAAK0J,QAAU9M,EAAIkN,OAAO,IAEjC,GAAG9J,EAAKu3B,MAAO,CAAE,IAAIC,EAAGpnB,GAAIonB,EAAGpnB,KAASonB,GAAGpnB,GAAGP,GAAKlY,MAC9C6/B,GAAGjC,IAAalwB,EAAE+K,EAAG7U,EAAEsU,KAAOlY,CACnCkY,IAAKm2B,GAGPxO,EAAG,QAAUjB,GAAalB,EAC1B,IAAGg4B,EAAOv1D,OAAQ0/B,EAAG,WAAa61B,CAClC,OAAO71B,GAER,QAAS+hC,GAAapzD,EAAKnG,GAC1B,GAAI0sD,GAAOvmD,EAAIxB,MAAM,qCACrB,KAAI+nD,GAAQA,EAAK50D,QAAU,EAAG,KAAM,IAAI2D,OAAM,uCAC9C,IAAGixD,EAAK50D,QAAU,EAAG,MAAOk/B,IAAkBgiC,EAActM,EAAK,GAAI1sD,GAAOA,EAC5E,IAAI0iD,GAAK8W,IACT9M,GAAKz+C,QAAQ,SAASjT,EAAGyJ,GAAOg1D,GAAkB/W,EAAIsW,EAAch+D,EAAGgF,GAAO,SAAWyE,EAAI,KAC7F,OAAOi+C,GAER,QAASgX,GAAcliC,EAAInyB,EAAG+K,EAAGzY,GAChC,GAAIgJ,GAAK62B,EAAG,cACZ,IAAI1E,KACJ,KAAI,GAAIjjB,GAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG,CACnC,GAAI+mC,GAAK,EAAG5Q,EAAK,CACjB,KAAI,GAAI/hC,GAAI,EAAGA,EAAItD,EAAE7I,SAAUmM,EAAG,CACjC,GAAGtD,EAAEsD,GAAGjJ,EAAEqK,EAAI+K,GAAKzP,EAAEsD,GAAGjJ,EAAEO,EAAIsU,EAAG,QACjC,IAAGlP,EAAEsD,GAAG7J,EAAEiL,EAAI+K,GAAKzP,EAAEsD,GAAG7J,EAAEmB,EAAIsU,EAAG,QACjC,IAAGlP,EAAEsD,GAAGjJ,EAAEqK,EAAI+K,GAAKzP,EAAEsD,GAAGjJ,EAAEO,EAAIsU,EAAG,CAAE+mC,GAAM,CAAG,OAC5CA,EAAKj2C,EAAEsD,GAAG7J,EAAEiL,EAAI1E,EAAEsD,GAAGjJ,EAAEqK,EAAI,CAAG2gC,GAAKrlC,EAAEsD,GAAG7J,EAAEmB,EAAIoF,EAAEsD,GAAGjJ,EAAEO,EAAI,CAAG,OAE7D,GAAGq7C,EAAK,EAAG,QACX,IAAIC,GAAQthB,IAAalwB,EAAE+K,EAAE7U,EAAEsU,GAC/B,IAAImlB,GAAOr9B,EAAE4/B,OAASC,EAAGpnB,QAAQP,GAAK2nB,EAAGqf,EAEzC,IAAIr0C,GAAKwyB,GAAQA,EAAK93B,GAAK,OAAU83B,EAAKjZ,GAAK0Q,GAAWuI,EAAKxyB,IAAMs0B,GAAY9B,GAAOA,EAAKxyB,IAAM,MAAQ,EAC3G,IAAIksD,KACJ,IAAG9X,EAAK,EAAG8X,EAAG2K,QAAUziB,CACxB,IAAG5Q,EAAK,EAAG0oB,EAAG0K,QAAUpzB,CACxB,IAAGruC,EAAEgiE,SAAUn3D,EAAI,gCAAkCA,EAAI,cACpD,IAAGwyB,EAAM,CACb05B,EAAG,UAAY15B,GAAQA,EAAK73B,GAAK,GACjC,IAAG63B,EAAK93B,GAAK,KAAMwxD,EAAG,UAAY15B,EAAK93B,CACvC,IAAG83B,EAAK1J,GAAK,KAAMojC,EAAG,UAAY15B,EAAK1J,CACvC,IAAG0J,EAAKh4B,IAAMg4B,EAAKh4B,EAAE+pC,QAAU,KAAKrtC,OAAO,IAAM,IAAK8I,EAAI,YAAcwyB,EAAKh4B,EAAE+pC,OAAQ,KAAOvkC,EAAI,OAEnGksD,EAAGvK,IAAMxsD,EAAEwsD,IAAM,OAAS,IAAMtN,CAChC/jB,GAAG52B,KAAKsyB,GAAU,KAAMhsB,EAAGksD,IAE5B,GAAI/X,GAAW,MACf,OAAOA,GAAW7jB,EAAG36B,KAAK,IAAM,QAEjC,QAASyhE,GAAmBpiC,EAAIpnB,EAAGzY,GAClC,GAAIkE,KACJ,OAAOA,GAAI1D,KAAK,IAAM,UAAYR,GAAKA,EAAEwsD,GAAK,QAAUxsD,EAAEwsD,GAAK,IAAM,IAAM,IAE5E,GAAI0V,GAAS,qFACb,IAAIC,GAAO,gBACX,SAASC,GAAcviC,EAAIx3B,GAC1B,GAAIrI,GAAIqI,KACR,IAAImT,GAASxb,EAAEwb,QAAU,KAAOxb,EAAEwb,OAAS0mD,CAC3C,IAAIjP,GAASjzD,EAAEizD,QAAU,KAAOjzD,EAAEizD,OAASkP,CAC3C,IAAIj+D,IAAOsX,EACX,IAAI9N,GAAIixB,GAAakB,EAAG,QACxB7/B,GAAE4/B,MAAQ18B,MAAMS,QAAQk8B,EACxB37B,GAAIK,KAAK09D,EAAmBpiC,EAAInyB,EAAG1N,GACnC,KAAI,GAAIyY,GAAI/K,EAAErK,EAAEqK,EAAG+K,GAAK/K,EAAEjL,EAAEiL,IAAK+K,EAAGvU,EAAIK,KAAKw9D,EAAcliC,EAAInyB,EAAG+K,EAAGzY,GACrEkE,GAAIK,KAAK,WAAa0uD,EACtB,OAAO/uD,GAAI1D,KAAK,IAGjB,OACCk3C,YAAakqB,EACbjqB,SAAU0pB,EACVgB,KAAMN,EACNO,MAAOJ,EACPK,IAAKJ,EACLK,UAAWP,EACXrqB,WAAYwqB,KAId,SAASK,IAAc5iC,EAAI7tB,EAAOyO,GACjC,GAAIpY,GAAOoY,KACX,IAAGtf,GAAS,KAAMkH,EAAKu3B,MAAQz+B,CAC/B,IAAIuhE,GAAO,EAAGC,EAAO,CACrB,IAAGt6D,EAAK23B,QAAU,KAAM,CACvB,SAAU33B,GAAK23B,QAAU,SAAU0iC,EAAOr6D,EAAK23B,WAC1C,CACJ,GAAIC,SAAiB53B,GAAK23B,QAAU,SAAWtB,GAAYr2B,EAAK23B,QAAU33B,EAAK23B,MAC/E0iC,GAAOziC,EAAQvyB,CAAGi1D,GAAO1iC,EAAQr8B,GAInC,GAAIi7C,GAAO7sC,EAAM4wD,qBAAqB,KACtC,IAAI1sB,GAAYtwC,KAAKyJ,IAAIhH,EAAK6tC,WAAW,IAAU2I,EAAK1+C,OACxD,IAAIu9B,IAASr6B,GAAGqK,EAAE,EAAE9J,EAAE,GAAGnB,GAAGiL,EAAEg1D,EAAK9+D,EAAE++D,GACrC,IAAG9iC,EAAG,QAAS,CACd,GAAIK,GAASvB,GAAakB,EAAG,QAC7BnC,GAAMr6B,EAAEqK,EAAI9H,KAAKyJ,IAAIquB,EAAMr6B,EAAEqK,EAAGwyB,EAAO78B,EAAEqK,EACzCgwB,GAAMr6B,EAAEO,EAAIgC,KAAKyJ,IAAIquB,EAAMr6B,EAAEO,EAAGs8B,EAAO78B,EAAEO,EACzC85B,GAAMj7B,EAAEiL,EAAI9H,KAAK0J,IAAIouB,EAAMj7B,EAAEiL,EAAGwyB,EAAOz9B,EAAEiL,EACzCgwB,GAAMj7B,EAAEmB,EAAIgC,KAAK0J,IAAIouB,EAAMj7B,EAAEmB,EAAGs8B,EAAOz9B,EAAEmB,EACzC,IAAG8+D,IAAS,EAAGhlC,EAAMj7B,EAAEiL,EAAIg1D,EAAOxiC,EAAOz9B,EAAEiL,EAAI,EAEhD,GAAIgoD,MAAa8L,EAAO,CACxB,IAAI5kB,GAAU/c,EAAG,WAAaA,EAAG,YACjC,IAAIC,GAAK,EAAGrnB,EAAI,EAAGsnB,EAAK,EAAG7nB,EAAI,EAAG+mC,EAAK,EAAG5Q,EAAK,CAC/C,KAAIxO,EAAG,SAAUA,EAAG,WACpB,MAAMC,EAAK+e,EAAK1+C,QAAUsY,EAAIy9B,IAAapW,EAAI,CAC9C,GAAIxU,GAAMuzB,EAAK/e,EACf,IAAI+iC,GAAsBv3C,GAAM,CAC/B,GAAIjjB,EAAKy6D,QAAS,QAClBlmB,GAAQnkC,IAAMklC,OAAQ,MAEvB,GAAIolB,GAAQz3C,EAAY,QACxB,KAAIyU,EAAK7nB,EAAI,EAAG6nB,EAAKgjC,EAAK5iE,SAAU4/B,EAAI,CACvC,GAAIxf,GAAMwiD,EAAKhjC,EACf,IAAI13B,EAAKy6D,SAAWD,GAAsBtiD,GAAM,QAChD,IAAIhb,GAAIgb,EAAIyiD,aAAa,UAAYziD,EAAI0iD,aAAa,UAAY1iD,EAAIyiD,aAAa,KAAOziD,EAAI0iD,aAAa,KAAOltC,GAAWxV,EAAI2iD,UACjI,IAAIvvC,GAAIpT,EAAI0iD,aAAa,WAAa1iD,EAAI0iD,aAAa,IACvD,KAAIzB,EAAO,EAAGA,EAAO9L,EAAOv1D,SAAUqhE,EAAM,CAC3C,GAAI14D,GAAI4sD,EAAO8L,EACf,IAAG14D,EAAEzF,EAAEO,GAAKsU,EAAIyqD,GAAQ75D,EAAEzF,EAAEqK,EAAI+K,EAAIiqD,GAAQjqD,EAAIiqD,GAAQ55D,EAAErG,EAAEiL,EAAG,CAAEwK,EAAIpP,EAAErG,EAAEmB,EAAE,EAAI++D,CAAMnB,IAAQ,GAG9FnzB,GAAM9tB,EAAI0iD,aAAa,YAAc,CACrC,KAAMhkB,GAAO1+B,EAAI0iD,aAAa,YAAc,GAAK,GAAK50B,EAAG,EAAGqnB,EAAOnxD,MAAMlB,GAAGqK,EAAE+K,EAAIiqD,EAAK9+D,EAAEsU,EAAIyqD,GAAMlgE,GAAGiL,EAAE+K,EAAIiqD,GAAQzjB,GAAI,GAAK,EAAGr7C,EAAEsU,EAAIyqD,GAAQt0B,GAAI,GAAK,IACvJ,IAAIruC,IAAKwF,EAAE,IAAKD,EAAEA,EAClB,IAAIo8D,GAAKphD,EAAI0iD,aAAa,WAAa1iD,EAAI0iD,aAAa,MAAQ,EAChE,IAAG19D,GAAK,KAAM,CACb,GAAGA,EAAEpF,QAAU,EAAGH,EAAEwF,EAAIm8D,GAAM,QACzB,IAAGt5D,EAAKqU,KAAOnX,EAAE8lB,OAAOlrB,QAAU,GAAKwhE,GAAM,IAAI,MACjD,IAAGp8D,IAAM,OAAQvF,GAAKwF,EAAE,IAAKD,EAAE,UAC/B,IAAGA,IAAM,QAASvF,GAAKwF,EAAE,IAAKD,EAAE,WAChC,KAAIzD,MAAM+uB,GAAStrB,IAAKvF,GAAKwF,EAAE,IAAKD,EAAEsrB,GAAStrB,QAC/C,KAAIzD,MAAMqvB,GAAU5rB,GAAG+D,WAAY,CACvCtJ,GAAMwF,EAAE,IAAKD,EAAE8qB,GAAU9qB,GACzB,KAAI8C,EAAKk4B,UAAWvgC,GAAMwF,EAAE,IAAKD,EAAEqqB,EAAQ5vB,EAAEuF,GAC7CvF,GAAE2zB,EAAItrB,EAAK0J,QAAU9M,EAAIkN,OAAO,KAGlC,GAAGnS,EAAE2zB,IAAMvxB,WAAauxB,GAAK,KAAM3zB,EAAE2zB,EAAIA,CAGzC,IAAItuB,GAAI,GAAI89D,EAAQ5iD,EAAIqiD,qBAAqB,IAC7C,IAAGO,GAASA,EAAMhjE,OAAQ,IAAI,GAAIijE,GAAQ,EAAGA,EAAQD,EAAMhjE,SAAUijE,EAAO,GAAGD,EAAMC,GAAOJ,aAAa,QAAS,CACjH39D,EAAI89D,EAAMC,GAAOH,aAAa,OAAS,IAAG59D,EAAEtD,OAAO,IAAM,IAAK,MAE/D,GAAGsD,GAAKA,EAAEtD,OAAO,IAAM,IAAK/B,EAAEqF,GAAO+pC,OAAQ/pC,EAC7C,IAAGgD,EAAKu3B,MAAO,CAAE,IAAIC,EAAGpnB,EAAIiqD,GAAO7iC,EAAGpnB,EAAIiqD,KAAY7iC,GAAGpnB,EAAIiqD,GAAMxqD,EAAIyqD,GAAQ3iE,MAC1E6/B,GAAGjC,IAAah6B,EAAEsU,EAAIyqD,EAAMj1D,EAAE+K,EAAIiqD,KAAU1iE,CACjD,IAAG09B,EAAMj7B,EAAEmB,EAAIsU,EAAIyqD,EAAMjlC,EAAMj7B,EAAEmB,EAAIsU,EAAIyqD,CACzCzqD,IAAKm2B,IAEJ51B,EAEH,GAAGi9C,EAAOv1D,OAAQ0/B,EAAG,YAAcA,EAAG,gBAAkBj7B,OAAO8wD,EAC/Dh4B,GAAMj7B,EAAEiL,EAAI9H,KAAK0J,IAAIouB,EAAMj7B,EAAEiL,EAAG+K,EAAI,EAAIiqD,EACxC7iC,GAAG,QAAUjB,GAAalB,EAC1B,IAAGjlB,GAAKy9B,EAAWrW,EAAG,YAAcjB,IAAclB,EAAMj7B,EAAEiL,EAAImxC,EAAK1+C,OAAO2/B,EAAGrnB,EAAE,EAAIiqD,EAAKhlC,GACxF,OAAOmC,GAGR,QAASwjC,IAAgBrxD,EAAOyO,GAC/B,GAAIpY,GAAOoY,KACX,IAAIof,GAAKx3B,EAAKu3B,WACd,OAAO6iC,IAAc5iC,EAAI7tB,EAAOyO,GAGjC,QAAS6iD,IAActxD,EAAO3J,GAC7B,MAAOg3B,IAAkBgkC,GAAgBrxD,EAAO3J,GAAOA,GAGxD,QAASw6D,IAAsBU,GAC9B,GAAIT,GAAU,EACd,IAAIU,GAAqBC,GAAgCF,EACzD,IAAGC,EAAoBV,EAAUU,EAAmBD,GAASG,iBAAiB,UAC9E,KAAIZ,EAASA,EAAUS,EAAQ52B,OAAS42B,EAAQ52B,MAAMm2B,OACtD,OAAOA,KAAY,OAIpB,QAASW,IAAgCF,GAExC,GAAGA,EAAQI,cAAcC,mBAAsBL,GAAQI,cAAcC,YAAYC,mBAAqB,WAAY,MAAON,GAAQI,cAAcC,YAAYC,gBAE3J,UAAUA,oBAAqB,WAAY,MAAOA,iBAClD,OAAO,MAGR,QAASC,IAAat5C,GAErB,GAAIu5C,GAAQv5C,EACVvoB,QAAQ,YAAa,KAAKopB,OAAOppB,QAAQ,MAAO,KAChDA,QAAQ,cAAc,KACtBA,QAAQ,6BAA8B,SAASmL,EAAGC,GAAM,MAAOnK,OAAM4K,SAAST,EAAG,IAAI,GAAG7M,KAAK,OAC7FyB,QAAQ,qBAAqB,MAC7BA,QAAQ,uBAAuB,KACjC,IAAIsD,GAAI+uB,GAAYyvC,EAAM9hE,QAAQ,WAAW,IAE7C,QAAQsD,GAGT,GAAIy+D,KAEHC,KAAgB,IAAO,MACvBC,OAAgB,IAAO,MACvBC,MAAgB,IAAO,MACvBC,OAAgB,IAAO,MACvBC,SAAgB,IAAO,MACvBC,SAAgB,IAAO,MACvBC,SAAgB,MAAO,SACvBC,eAAgB,MAAO,QACvBC,KAAgB,IAAO,MAEvBC,SAAgB,OAAQ,mBAIzB,SAASC,IAAkBrgE,EAAGmc,GAC5B,GAAIpY,GAAOoY,KACX,IAAGtf,GAAS,MAAQkH,EAAKu3B,OAAS,KAAMv3B,EAAKu3B,MAAQz+B,CACrD,IAAIqN,GAAM0oB,GAAe5yB,EACzB,IAAIsa,MAAYgM,CAChB,IAAI4I,EACJ,IAAIoxC,IAAS3oD,KAAK,IAAKwtC,EAAK,GAAIob,EAAO,CACvC,IAAIC,EACJ,IAAIC,EACJ,IAAItlC,MAAaD,IACjB,IAAIK,GAAKx3B,EAAKu3B,WACd,IAAIsQ,GAAI/nC,CACR,IAAI68D,IAAS3vC,MAAM,GACnB,IAAI4vC,GAAQ,GAAIC,EAAW,EAAGC,CAC9B,IAAIC,KACJ,IAAI3sD,IAAK,EAAGP,GAAK,EAAGwlB,GAASr6B,GAAIqK,EAAE,IAAQ9J,EAAE,KAAWnB,GAAIiL,EAAE,EAAG9J,EAAE,GACnE,IAAIyhE,GAAS,CACb,IAAIC,KACJ,IAAI5P,MAAa6P,KAAaC,EAAK,EAAGC,EAAK,CAC3C,IAAI7oB,MAAc8oB,EAAU,EAAGC,EAAU,CACzC,IAAIzL,KACJ,IAAI5sB,IAAMyqB,SACV,IAAI6N,KACJ,IAAIC,IAAQ,GAAI,GAChB,IAAI76B,MAAemjB,IACnB,IAAI2X,GAAU,GAAIC,EAAa,CAC/B,IAAIC,GAAS,MAAOC,EAAU,KAC9B,IAAIhmE,GAAI,CACRk3B,IAAU+uC,UAAY,CACtB13D,GAAMA,EAAIvM,QAAQ,sBAAsB,IAAIA,QAAQ,+BAA+B,GACnF,OAAOiuC,EAAK/Y,GAAUiZ,KAAK5hC,GAAO,OAAQ0hC,EAAG,GAAGA,EAAG,GAAGjuC,QAAQ,OAAO,KAEpE,IAAK,SAAS,IAAK,MAClB,GAAGiuC,EAAG,KAAK,IAAK,CACf,GAAGxS,EAAMj7B,EAAEmB,GAAK85B,EAAMr6B,EAAEO,GAAK85B,EAAMj7B,EAAEiL,GAAKgwB,EAAMr6B,EAAEqK,EAAGmyB,EAAG,QAAUjB,GAAalB,OAC1EmC,GAAG,QAAU,OAClB,IAAGx3B,EAAK6tC,UAAY,GAAK7tC,EAAK6tC,WAAaxY,EAAMj7B,EAAEiL,EAAG,CACrDmyB,EAAG,YAAcA,EAAG,OACpBnC,GAAMj7B,EAAEiL,EAAIrF,EAAK6tC,UAAY,CAC7BrW,GAAG,QAAUjB,GAAalB,GAE3B,GAAGg4B,EAAOv1D,OAAQ0/B,EAAG,WAAa61B,CAClC,IAAG9Y,EAAQz8C,OAAQ0/B,EAAG,SAAW+c,CACjCkoB,GAAQ7oD,KAAO6oD,EAAQ,OAASA,EAAQ7oD,IACxC,UAAU0U,QAAS,YAAaA,KAAKC,UAAUk0C,EAC/CtlC,GAAWj7B,KAAKugE,EAAQ7oD,KACxBwjB,GAAOqlC,EAAQ7oD,MAAQ4jB,CACvBomC,GAAU,UAEN,IAAG/1B,EAAG,GAAGnuC,OAAOmuC,EAAG,GAAG/vC,OAAO,KAAO,IAAK,CAC7C2kE,EAAUvxC,GAAY2c,EAAG,GAAI,MAC7Bz3B,GAAIP,GAAK,CACTwlB,GAAMr6B,EAAEqK,EAAIgwB,EAAMr6B,EAAEO,EAAI,GAAU85B,GAAMj7B,EAAEiL,EAAIgwB,EAAMj7B,EAAEmB,EAAI,CAC1Di8B,GAAKx3B,EAAKu3B,WAAqB81B,KAC/B9Y,KACAqpB,GAAU,KAEX,MAED,IAAK,kBACJ,GAAG/1B,EAAG,KAAO,MAAOm1B,QAAeA,CACnC,OACD,IAAK,aAAa,IAAK,IACtB,GAAGn1B,EAAG,KAAO,IAAK,CAAEz3B,GAAGitD,CAASA,GAAU,CAAG,OAC7CX,EAASxxC,GAAY2c,EAAG,GAAI,MAC5B,IAAG60B,EAAO,MAAOtsD,EAAIssD,EAAO,MAAQ,MAAQ,IAAGtsD,IAAM,EAAGA,EAAI,CAC5DitD,IAAWX,EAAO,yBAA2B,CAE7C,IAAGW,EAAU,GAAI,IAAIzlE,EAAI,EAAGA,EAAIylE,IAAWzlE,EAAG,GAAGolE,EAAS,EAAGzoB,EAAQnkC,EAAIxY,IAAMsyD,MAAO8S,EACtFntD,IAAK,CAAG,OACT,IAAK,qBACJ,GAAGg4B,EAAG,KAAO,MAAOh4B,CACpB,IAAG7P,EAAKi4B,WAAY,CACnB,GAAGj4B,EAAKu3B,MAAO,CAAE,IAAIC,EAAGpnB,GAAIonB,EAAGpnB,KAASonB,GAAGpnB,GAAGP,IAAM1S,EAAE,SACjDq6B,GAAGjC,IAAalwB,EAAE+K,EAAE7U,EAAEsU,MAAQ1S,EAAE,KAEtCy/D,EAAQ,EAAIG,KACZ,OACD,IAAK,cAAc,IAAK,KACvB,GAAGl1B,EAAG,GAAGnuC,OAAOmuC,EAAG,GAAG/vC,OAAO,KAAO,IAAK,GACtC+X,CACF8sD,GAAOzxC,GAAY2c,EAAG,GAAI,MAC1By1B,GAAU73D,SAASk3D,EAAK,4BAA4B,IAAK,GACzD78D,IAAM3C,EAAE,IAAKD,EAAE,KACf,IAAGy/D,EAAK1nB,SAAWj1C,EAAKwyD,aAAe,MAAO1yD,EAAEwJ,EAAIggD,GAAmBr9B,GAAY0wC,EAAK1nB,SACxF,KAAI0nB,EAAK,SAAWA,EAAK,gBAAkB,SAAU,CACpD78D,EAAE3C,EAAI,GAAK2C,GAAE5C,EAAI+uB,GAAY0wC,EAAK,iBAAmB,GACrD,IAAG38D,EAAKu3B,MAAO,CACd,IAAIC,EAAGpnB,GAAIonB,EAAGpnB,KACdonB,GAAGpnB,GAAGP,GAAK/P,MACL,CACN03B,EAAGjC,IAAalwB,EAAE+K,EAAE7U,EAAEsU,KAAO/P,GAG/B+P,GAAIytD,EAAQ,MACN,IAAGz1B,EAAG,KAAK,IAAK,GACpBh4B,CACF+sD,GAAQ,EAAIC,GAAW,CAAGE,KAC1BO,GAAU,CACV,IAAIQ,GAAOT,EAAUjtD,EAAIitD,EAAU,EAAIjtD,CACvC,IAAGP,EAAIwlB,EAAMj7B,EAAEmB,EAAG85B,EAAMj7B,EAAEmB,EAAIsU,CAC9B,IAAGA,EAAIwlB,EAAMr6B,EAAEO,EAAG85B,EAAMr6B,EAAEO,EAAIsU,CAC9B,IAAGO,EAAIilB,EAAMr6B,EAAEqK,EAAGgwB,EAAMr6B,EAAEqK,EAAI+K,CAC9B,IAAG0tD,EAAOzoC,EAAMj7B,EAAEiL,EAAGgwB,EAAMj7B,EAAEiL,EAAIy4D,CACjCnB,GAAOzxC,GAAY2c,EAAG,GAAI,MAC1BlF,KAAemjB,KACfhmD,IAAM3C,EAAEw/D,EAAK,SAAWA,EAAK,cAAez/D,EAAE,KAC9C,IAAG8C,EAAKwyD,YAAa,CACpB,GAAGmK,EAAK1nB,QAAS0nB,EAAK1nB,QAAUhpB,GAAY0wC,EAAK1nB,QACjD,IAAG0nB,EAAK,kCAAoCA,EAAK,8BAA+B,CAC/EQ,EAAK13D,SAASk3D,EAAK,8BAA8B,KAAO,CACxDS,GAAK33D,SAASk3D,EAAK,iCAAiC,KAAO,CAC3DO,IAAUliE,GAAIqK,EAAE+K,EAAE7U,EAAEsU,GAAIzV,GAAGiL,EAAE+K,EAAI+sD,EAAG,EAAE5hE,EAAEsU,EAAIutD,EAAG,GAC/Ct9D,GAAEi2C,EAAIxf,GAAa2mC,EACnBrL,GAAO31D,MAAMghE,EAAQp9D,EAAEi2C,IAExB,GAAG4mB,EAAK1nB,QAASn1C,EAAEwJ,EAAIggD,GAAmBqT,EAAK1nB,aAC1C,KAAIr9C,EAAI,EAAGA,EAAIi6D,EAAO/5D,SAAUF,EACpC,GAAGwY,GAAKyhD,EAAOj6D,GAAG,GAAGoD,EAAEqK,GAAK+K,GAAKyhD,EAAOj6D,GAAG,GAAGwC,EAAEiL,EAC/C,GAAGwK,GAAKgiD,EAAOj6D,GAAG,GAAGoD,EAAEO,GAAKsU,GAAKgiD,EAAOj6D,GAAG,GAAGwC,EAAEmB,EAC/CuE,EAAEi2C,EAAI8b,EAAOj6D,GAAG,GAEpB,GAAG+kE,EAAK,2BAA6BA,EAAK,uBAAwB,CACjEQ,EAAK13D,SAASk3D,EAAK,uBAAuB,KAAO,CACjDS,GAAK33D,SAASk3D,EAAK,0BAA0B,KAAO,CACpDO,IAAUliE,GAAIqK,EAAE+K,EAAE7U,EAAEsU,GAAIzV,GAAGiL,EAAE+K,EAAI+sD,EAAG,EAAE5hE,EAAEsU,EAAIutD,EAAG,GAC/C/P,GAAOnxD,KAAKghE,GAIb,GAAGP,EAAK,2BAA4BW,EAAU73D,SAASk3D,EAAK,2BAA4B,GAGxF,QAAO78D,EAAE3C,GACR,IAAK,UAAW2C,EAAE3C,EAAI,GAAK2C,GAAE5C,EAAI6vB,GAAa4vC,EAAK,iBAAmB,OACtE,IAAK,QAAS78D,EAAE3C,EAAI,GAAK2C,GAAE5C,EAAIkM,WAAWuzD,EAAK3vC,MAAQ,OACvD,IAAK,aAAcltB,EAAE3C,EAAI,GAAK2C,GAAE5C,EAAIkM,WAAWuzD,EAAK3vC,MAAQ,OAC5D,IAAK,WAAYltB,EAAE3C,EAAI,GAAK2C,GAAE5C,EAAIkM,WAAWuzD,EAAK3vC,MAAQ,OAC1D,IAAK,OAAQltB,EAAE3C,EAAI,GAAK2C,GAAE5C,EAAI8qB,GAAU20C,EAAK,cAC5C,KAAI38D,EAAKk4B,UAAW,CAAEp4B,EAAE3C,EAAI,GAAK2C,GAAE5C,EAAIqqB,EAAQznB,EAAE5C,GACjD4C,EAAEwrB,EAAI,QAAU,OACjB,IAAK,OAAQxrB,EAAE3C,EAAI,GAAK2C,GAAE5C,EAAI0qB,GAAa+0C,EAAK,eAAe,KAC9D,IAAG38D,EAAKk4B,UAAW,CAAEp4B,EAAE3C,EAAI,GAAK2C,GAAE5C,EAAIwqB,GAAQ5nB,EAAE5C,GAChD4C,EAAEwrB,EAAI,UAAY,OACnB,IAAK,SAAUxrB,EAAE3C,EAAI,GAAK2C,GAAE5C,EAAIkM,WAAWuzD,EAAK,QAAU,OAC1D,QACC,GAAG78D,EAAE3C,IAAM,UAAY2C,EAAE3C,IAAM,SAAW2C,EAAE3C,EAAG,CAC9C2C,EAAE3C,EAAI,GACN,IAAGw/D,EAAK,iBAAmB,KAAM,CAAEC,EAAQ3wC,GAAY0wC,EAAK,gBAAkBI,WACxE,MAAM,IAAIthE,OAAM,0BAA4BqE,EAAE3C,SAEjD,CACNwgE,EAAS,KACT,IAAG79D,EAAE3C,IAAM,IAAK,CACf2C,EAAE5C,EAAI0/D,GAAS,EACf,IAAGG,EAAMjlE,OAAQgI,EAAEsQ,EAAI2sD,CACvBY,GAASd,GAAY,EAEtB,GAAGU,EAAKx2B,OAAQjnC,EAAE9C,EAAIugE,CACtB,IAAG56B,EAAS7qC,OAAS,EAAG,CAAEgI,EAAEvE,EAAIonC,CAAUA,MAC1C,GAAGi6B,GAAS58D,EAAKg5C,WAAa,MAAOl5C,EAAE0C,EAAIo6D,CAC3C,IAAGe,EAAQ,CAAE79D,EAAE3C,EAAI,UAAY2C,GAAE5C,EACjC,IAAIygE,GAAU39D,EAAKi4B,WAAY,CAC9B,KAAKj4B,EAAK6tC,WAAa7tC,EAAK6tC,WAAaz9B,GAAI,CAC5C,IAAI,GAAI2tD,GAAM,EAAGA,EAAMV,IAAWU,EAAK,CACtCT,EAAU73D,SAASk3D,EAAK,4BAA4B,IAAK,GACzD,IAAG38D,EAAKu3B,MAAO,CACd,IAAIC,EAAGpnB,EAAI2tD,GAAMvmC,EAAGpnB,EAAI2tD,KACxBvmC,GAAGpnB,EAAI2tD,GAAKluD,GAAKkuD,GAAO,EAAIj+D,EAAIuoB,GAAIvoB,EACpC,SAAQw9D,EAAU,EAAG9lC,EAAGpnB,EAAI2tD,GAAKluD,EAAIytD,GAAWj1C,GAAIvoB,OAC9C,CACN03B,EAAGjC,IAAalwB,EAAE+K,EAAI2tD,EAAIxiE,EAAEsU,KAAO/P,CACnC,SAAQw9D,EAAU,EAAG9lC,EAAGjC,IAAalwB,EAAE+K,EAAI2tD,EAAIxiE,EAAEsU,EAAIytD,KAAaj1C,GAAIvoB,GAEvE,GAAGu1B,EAAMj7B,EAAEmB,GAAKsU,EAAGwlB,EAAMj7B,EAAEmB,EAAIsU,IAIlCytD,EAAU73D,SAASk3D,EAAK,4BAA4B,IAAK,GACzD9sD,IAAKytD,EAAQ,CAAGA,GAAU,CAC1Bx9D,KACA88D,GAAQ,EAAIG,MAEbQ,IACA,OAGD,IAAK,YACL,IAAK,oBAAoB,IAAK,UAC9B,IAAK,eAAe,IAAK,MACzB,IAAK,WACL,IAAK,UACL,IAAK,mBACL,IAAK,gBACJ,GAAG11B,EAAG,KAAK,IAAI,CAAC,IAAItlB,EAAIhM,EAAMoB,OAAO,KAAKkwB,EAAG,GAAI,KAAM,cAActlB,MAChE,IAAGslB,EAAG,GAAGnuC,OAAOmuC,EAAG,GAAG/vC,OAAO,KAAO,IAAKye,EAAMra,MAAM2rC,EAAG,GAAI,MACjE,OAED,IAAK,aACJ,GAAGA,EAAG,KAAK,IAAI,CACd,IAAItlB,EAAIhM,EAAMoB,OAAO,KAAKkwB,EAAG,GAAI,KAAM,cAActlB,CACrDujC,GAAQ3oD,EAAIy/D,CACZ,IAAGG,EAAMjlE,OAAQguD,EAAQ11C,EAAI2sD,CAC7BjX,GAAQppC,EAAI+gD,CACZ96B,GAASzmC,KAAK4pD,OAEV,IAAGje,EAAG,GAAGnuC,OAAOmuC,EAAG,GAAG/vC,OAAO,KAAO,IAAK,CAACye,EAAMra,MAAM2rC,EAAG,GAAI,QAClE41B,EAAU,EAAIC,GAAa,CAC3Bd,GAAQ,EAAIC,GAAW,CAAGE,KAC1B,OAED,IAAK,UACJ,GAAGl1B,EAAG,KAAK,IAAK,CAAE41B,EAAUt3D,EAAI3N,MAAMklE,EAAW71B,EAAG+Y,WAC/C8c,GAAa71B,EAAG+Y,MAAQ/Y,EAAG,GAAG/vC,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,GAAG+vC,EAAG,KAAK,IAAI,CAAC,IAAItlB,EAAIhM,EAAMoB,OAAO,KAAKkwB,EAAG,GAAI,KAAM,cAActlB,MAChE,IAAGslB,EAAG,GAAGnuC,OAAOmuC,EAAG,GAAG/vC,OAAO,KAAO,IAAKye,EAAMra,MAAM2rC,EAAG,GAAI,OACjE+0B,GAAQ,EAAIC,GAAW,CAAGE,KAC1B,OAED,IAAK,oBACJ,MACD,IAAK,kBACJ,MACD,IAAK,iBACJ,MACD,IAAK,gBACL,IAAK,oBACL,IAAK,cACL,IAAK,aACJ,GAAGl1B,EAAG,KAAK,IAAI,CACdo1B,EAAkBV,EAAM3oD,MAAQwtC,CAChC,KAAI7+B,EAAIhM,EAAMoB,OAAO,KAAKkwB,EAAG,GAAI,KAAM,cAActlB,MAC/C,IAAGslB,EAAG,GAAGnuC,OAAOmuC,EAAG,GAAG/vC,OAAO,KAAO,IAAK,CAC/CspD,EAAK,EACLmb,GAAQrxC,GAAY2c,EAAG,GAAI,MAC3BtxB,GAAMra,MAAM2rC,EAAG,GAAI,OAClB,MAEH,IAAK,SAAU,MACf,IAAK,YAAa,MAClB,IAAK,mBAAoB,MAEzB,IAAK,iBACL,IAAK,cAAe,MACpB,IAAK,QACJ,MACD,IAAK,MAAO,MACZ,IAAK,YAAa,MAElB,IAAK,uBAAwB,MAC7B,IAAK,mBAAoB,MACzB,IAAK,0BAA2B,MAChC,IAAK,uBAAwB,MAC7B,IAAK,wBAAyB,MAE9B,IAAK,SACJ,OAAOtxB,EAAMA,EAAMze,OAAO,GAAG,IAC5B,IAAK,cACL,IAAK,aACJqzB,EAAMD,GAAY2c,EAAG,GAAI,MACzBuZ,IAAMua,GAAmB9zB,EAAG,IAAI1c,EAAImZ,QAAQ,OAAO,EAAE,EAAI,QACzD,MAEH,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,OAAO/tB,EAAMA,EAAMze,OAAO,GAAG,IAC5B,IAAK,cACL,IAAK,aACJqzB,EAAMD,GAAY2c,EAAG,GAAI,MACzBuZ,IAAMua,GAAmB9zB,EAAG,IAAI1c,EAAImZ,QAAQ,OAAO,EAAE,EAAI,QACzD,MAEH,IAAK,gBAAiB,MACtB,IAAK,UAAW,MAChB,IAAK,aAAc,MACnB,IAAK,OACJ,GAAGuD,EAAG,GAAGrvC,OAAO,KAAO,KAAM,UACxB,IAAGqvC,EAAG,KAAK,IAAK,OAAOtxB,EAAMA,EAAMze,OAAO,GAAG,IACjD,IAAK,gBACL,IAAK,cACL,IAAK,aACJspD,GAAMj7C,EAAI3N,MAAMgkE,EAAM30B,EAAG+Y,MACzB,YAEG4b,GAAO30B,EAAG+Y,MAAQ/Y,EAAG,GAAG/vC,MAC7B,OAED,IAAK,cACJqzB,EAAMD,GAAY2c,EAAG,GAAI,MACzB21B,GAAOhU,GAAcr+B,EAAI,sBACzB,IAAI6yC,IAAWpO,KAAKzkC,EAAIvX,KAAMk8C,IAAI0N,EAAK,GAAK,IAAMA,EAAK,GACvD,IAAGI,EAASI,EAAOnO,MAAQ14B,EAAWr/B,MACtCmtC,GAAGyqB,MAAMxzD,KAAK8hE,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,YAAa,MAElB,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,iBAAiB3mE,QAAQkf,EAAMA,EAAMze,OAAO,GAAG,KAAO,EAAG,KAC7D,IAAG+vC,EAAG,KAAK,OAAS80B,IAASA,EAAK,iBAAkB,CACnD,GAAIsB,GAAMxC,GAAat1D,EAAI3N,MAAMqkE,EAASh1B,EAAG+Y,OAAQkc,EACrDF,IAASA,EAAM9kE,OAAS,EAAI8kE,EAAQ,KAAO,IAAMqB,EAAI,OAC/C,CAAEnB,EAAW5xC,GAAY2c,EAAG,GAAI,MAAQg1B,GAAWh1B,EAAG+Y,MAAQ/Y,EAAG,GAAG/vC,OAC3E,MACD,IAAK,IAAK,MAEV,IAAK,iBACJ,GAAG+vC,EAAG,KAAK,IAAK,KAChB,KACC21B,EAAOhU,GAAct+B,GAAY2c,EAAG,IAAI,wBACxCzQ,GAAOomC,EAAK,IAAI,gBAAmBzX,IAAIyX,EAAK,IAC3C,MAAMpjE,IACR,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,GAAGytC,EAAG,KAAM,IAAK,CAChB01B,EAAOryC,GAAY2c,EAAG,GAAI,MAC1B,KAAI01B,EAAKz3C,KAAM,KACfy3C,GAAKx2B,OAAS9a,GAAYsxC,EAAKz3C,YAAcy3C,GAAKz3C,IAClD,IAAGy3C,EAAKx2B,OAAOrtC,OAAO,IAAM,KAAO6jE,EAAKx2B,OAAO1vC,QAAQ,MAAQ,EAAG,CACjEmmE,EAAOhU,GAAc+T,EAAKx2B,OAAOvuC,MAAM,GACvC+kE,GAAKx2B,OAAS,IAAMy2B,EAAK,GAAK,IAAMA,EAAK,OACnC,IAAGD,EAAKx2B,OAAOpiC,MAAM,eAAgB44D,EAAKx2B,OAASw2B,EAAKx2B,OAAOvuC,MAAM,GAE7E,MAGD,IAAK,mBAAoB,MACzB,IAAK,yBAA0B,MAC/B,IAAK,+BAAgC,MACrC,QAAS,OAAOqvC,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,GAAG7nC,EAAKouB,IAAK,KAAM,IAAI3yB,OAAMosC,MAGxC,GAAIhsC,IACHu7B,OAAQA,EACRD,WAAYA,EACZ+2B,SAAUjpB,EAEX,IAAGjlC,EAAKk+D,iBAAmBriE,GAAIu7B,MAC/B,OAAOv7B,GAGT,QAASsiE,IAAUt0C,EAAK7pB,GACvBA,EAAOA,KACP,IAAG4pB,GAAeC,EAAK,yBAA0B+d,GAAe5d,GAAWH,EAAK,yBAA0B7pB,EAC1G,IAAIpE,GAAUsuB,GAAUL,EAAK,cAC7B,KAAIjuB,EAAS,KAAM,IAAIH,OAAM,wCAC7B,IAAIinD,GAAK4Z,GAAkBrvC,GAASrxB,GAAUoE,EAC9C,IAAG4pB,GAAeC,EAAK,YAAa64B,EAAG1Z,MAAQR,GAAiBxe,GAAWH,EAAK,YAChF,OAAO64B,GAER,QAAS0b,IAAW1mE,EAAMsI,GACzB,MAAOs8D,IAAkB5kE,EAAMsI,GAIhC,GAAIq+D,IAAkC,WACrC,GAAIC,IACH,yBACC,oEACC,kBACA,6CACA,kBACA,6CACD,uBACD,2BACCnmE,KAAK,GAEP,IAAI4c,GAAU,2BAA6BwZ,IAC1CgwC,eAAkB,mDAClBC,cAAkB,kDAClBC,cAAkB,kDAClBC,aAAkB,iDAClBC,aAAkB,oDAClBC,WAAkB,8DAClBC,cAAkB,+BAClBh2B,WAAkB,mCAClBi2B,eAAkB,sDAClBC,YAAkB,2DAClBC,WAAkB,+CAClBC,iBAAkB,QACd,IAAMX,EAAgB,2BAE3B,OAAO,SAASY,KACf,MAAOr0C,IAAa9V,KAGtB,IAAIoqD,IAAmC,WAEtC,GAAIC,GAAe,SAASj9C,GAC3B,MAAOmK,IAAUnK,GACfvoB,QAAQ,OAAQ,SAASmL,GAAI,MAAO,mBAAmBA,EAAGjN,OAAO,QACjE8B,QAAQ,MAAO,eACfA,QAAQ,MAAO,qBACfA,QAAQ,KAAM,aAAaA,QAAQ,KAAM,aAG5C,IAAIylE,GAAgB,kCACpB,IAAIC,GAAmB,yCACvB,IAAInH,GAAW,SAAS3gC,EAAIkrB,EAAI9qD,GAE/B,GAAID,KACJA,GAAEuE,KAAK,kCAAoCowB,GAAUo2B,EAAGvrB,WAAWv/B,IAAM,8BACzE,IAAIwY,GAAE,EAAEP,EAAE,EAAGwlB,EAAQiB,GAAakB,EAAG,SAAS,KAC9C,IAAIy6B,GAAOz6B,EAAG,eAAkB+nC,EAAK,CACrC,IAAIhoC,GAAQ18B,MAAMS,QAAQk8B,EAC1B,IAAGA,EAAG,SAAU,CACf,IAAI3nB,EAAI,EAAGA,GAAKwlB,EAAMj7B,EAAEmB,IAAKsU,EAAGlY,EAAEuE,KAAK,+BAAiCs7B,EAAG,SAAS3nB,GAAK,wBAA0B2nB,EAAG,SAAS3nB,GAAG2vD,IAAM,IAAM,IAAM,4BAErJ,GAAI9+D,GAAI,GAAI++D,EAAOjoC,EAAG,YACtB,KAAIpnB,EAAI,EAAGA,EAAIilB,EAAMr6B,EAAEqK,IAAK+K,EAAG,CAC9B1P,EAAI++D,EAAKrvD,GAAK,wBAA0BqvD,EAAKrvD,GAAGovD,IAAM,IAAM,EAC5D7nE,GAAEuE,KAAK,2BAA6BwE,EAAI,yBAEzC,KAAM0P,GAAKilB,EAAMj7B,EAAEiL,IAAK+K,EAAG,CAC1B1P,EAAI++D,EAAKrvD,GAAK,wBAA0BqvD,EAAKrvD,GAAGovD,IAAM,IAAM,EAC5D7nE,GAAEuE,KAAK,2BAA6BwE,EAAI,MACxC,KAAImP,EAAE,EAAGA,EAAIwlB,EAAMr6B,EAAEO,IAAKsU,EAAGlY,EAAEuE,KAAKmjE,EACpC,MAAMxvD,GAAKwlB,EAAMj7B,EAAEmB,IAAKsU,EAAG,CAC1B,GAAI6vD,GAAO,MAAOlpD,KAASomD,EAAQ,EACnC,KAAI2C,EAAK,EAAGA,GAAMtN,EAAKn6D,SAAUynE,EAAI,CACpC,GAAGtN,EAAKsN,GAAIvkE,EAAEO,EAAIsU,EAAG,QACrB,IAAGoiD,EAAKsN,GAAIvkE,EAAEqK,EAAI+K,EAAG,QACrB,IAAG6hD,EAAKsN,GAAInlE,EAAEmB,EAAIsU,EAAG,QACrB,IAAGoiD,EAAKsN,GAAInlE,EAAEiL,EAAI+K,EAAG,QACrB,IAAG6hD,EAAKsN,GAAIvkE,EAAEO,GAAKsU,GAAKoiD,EAAKsN,GAAIvkE,EAAEqK,GAAK+K,EAAGsvD,EAAO,IAClDlpD,GAAG,gCAAmCy7C,EAAKsN,GAAInlE,EAAEmB,EAAI02D,EAAKsN,GAAIvkE,EAAEO,EAAI,CACpEib,GAAG,6BAAmCy7C,EAAKsN,GAAInlE,EAAEiL,EAAI4sD,EAAKsN,GAAIvkE,EAAEqK,EAAI,CACpE,OAED,GAAGq6D,EAAM,CAAE/nE,EAAEuE,KAAKojE,EAAmB,UACrC,GAAIvZ,GAAMxwB,IAAalwB,EAAE+K,EAAG7U,EAAEsU,IAAKmlB,EAAOuC,GAASC,EAAGpnB,QAAQP,GAAI2nB,EAAGuuB,EACrE,IAAG/wB,GAAQA,EAAK1rB,EAAG,CAClBkN,EAAG,iBAAmB8V,GAAUi9B,GAAmBv0B,EAAK1rB,GACxD,IAAG0rB,EAAK+gB,EAAG,CACV,GAAG/gB,EAAK+gB,EAAEv9C,MAAM,EAAGutD,EAAIjuD,SAAWiuD,EAAK,CACtC,GAAI4Z,GAAQrpC,GAAatB,EAAK+gB,EAC9Bv/B,GAAG,uCAA0CmpD,EAAMvlE,EAAEmB,EAAIokE,EAAM3kE,EAAEO,EAAI,CACrEib,GAAG,oCAA0CmpD,EAAMvlE,EAAEiL,EAAIs6D,EAAM3kE,EAAEqK,EAAI,IAIxE,IAAI2vB,EAAM,CAAEr9B,EAAEuE,KAAKmjE,EAAgB,UACnC,OAAOrqC,EAAK73B,GACX,IAAK,IACJy/D,EAAS5nC,EAAK93B,EAAI,OAAS,OAC3BsZ,GAAG,qBAAuB,SAC1BA,GAAG,wBAA2Bwe,EAAK93B,EAAI,OAAS,OAChD,OACD,IAAK,IACJ0/D,EAAS5nC,EAAKxyB,GAAGvK,OAAO+8B,EAAK93B,GAAG,EAChCsZ,GAAG,qBAAuB,OAC1BA,GAAG,gBAAmBwe,EAAK93B,GAAG,CAC9B,OACD,IAAK,KAAK,IAAK,MACd0/D,EAAQ5nC,EAAK93B,GAAK,KAAO,GAAK83B,EAAK93B,CACnCsZ,GAAG,qBAAuB,QAC1B,OACD,IAAK,IACJomD,EAAS5nC,EAAKxyB,GAAIwlB,GAAUgN,EAAK93B,GAAGwxB,aACpClY,GAAG,qBAAuB,MAC1BA,GAAG,qBAAwBwR,GAAUgN,EAAK93B,GAAGwxB,aAC7ClY,GAAG,oBAAsB,KACzB,OAED,QAAS7e,EAAEuE,KAAKmjE,EAAgB,WAEjC,GAAIO,GAASR,EAAaxC,EAC1B,IAAG5nC,EAAKh4B,GAAKg4B,EAAKh4B,EAAE+pC,OAAQ,CAC3B,GAAI84B,GAAO7qC,EAAKh4B,EAAE+pC,MAClB84B,GAAOA,EAAKnmE,OAAO,IAAM,IAAM,IAAM+vD,GAAcoW,EAAKrnE,MAAM,IAAMqnE,CAEpE,IAAGA,EAAKnmE,OAAO,IAAM,MAAQmmE,EAAKl7D,MAAM,SAAUk7D,EAAO,MAAQA,CACjED,GAASpxC,GAAU,SAAUoxC,GAASE,aAAcD,EAAKjmE,QAAQ,KAAM,WAExEjC,EAAEuE,KAAK,aAAesyB,GAAU,mBAAoBA,GAAU,SAAUoxC,MAAappD,GAAM,MAE5F7e,EAAEuE,KAAK,gCAERvE,EAAEuE,KAAK,yBACP,OAAOvE,GAAEQ,KAAK,IAGf,IAAI4nE,GAA6B,SAASpoE,EAAG+qD,GAC5C/qD,EAAEuE,KAAK,+BAEPvE,GAAEuE,KAAK,yEACPvE,GAAEuE,KAAK,2CACPvE,GAAEuE,KAAK,oCACPvE,GAAEuE,KAAK,yCACPvE,GAAEuE,KAAK,oCACPvE,GAAEuE,KAAK,sBACPvE,GAAEuE,KAAK,2BAGP,IAAI8jE,GAAO,CACXtd,GAAGvrB,WAAWl+B,IAAI,SAASwB,GAAK,MAAOioD,GAAGtrB,OAAO38B,KAAOwT,QAAQ,SAASupB,GACxE,IAAIA,EAAI,MACR,IAAGA,EAAG,SAAU,CACf,IAAI,GAAI3nB,GAAI,EAAGA,EAAI2nB,EAAG,SAAS1/B,SAAU+X,EAAG,GAAG2nB,EAAG,SAAS3nB,GAAI,CAC9D,GAAIowD,GAASzoC,EAAG,SAAS3nB,EACzB,IAAGowD,EAAO9pB,OAAS,MAAQ8pB,EAAO7pB,KAAO,MAAQ6pB,EAAOlyB,KAAO,KAAM,QACrEwH,IAAY0qB,EACZA,GAAOT,IAAMQ,CACb,IAAIx9D,GAAIg1B,EAAG,SAAS3nB,GAAGumC,IAAM,IAC7Bz+C,GAAEuE,KAAK,gCAAkC8jE,EAAO,mCAChDroE,GAAEuE,KAAK,gFAAkFsG,EAAI,QAC7F7K,GAAEuE,KAAK,wBACL8jE,KAML,IAAIhkE,GAAO,CACX0mD,GAAGvrB,WAAWl+B,IAAI,SAASwB,GAAK,MAAOioD,GAAGtrB,OAAO38B,KAAOwT,QAAQ,SAASupB,GACxE,IAAIA,EAAI,MACR,IAAGA,EAAG,SAAU,CACf,IAAI,GAAIpnB,GAAI,EAAGA,EAAIonB,EAAG,SAAS1/B,SAAUsY,EAAG,GAAGonB,EAAG,SAASpnB,GAAI,CAC9DonB,EAAG,SAASpnB,GAAGovD,IAAMxjE,CACrB,IAAI+f,GAAIyb,EAAG,SAASpnB,GAAGqlC,IAAM,IAC7B99C,GAAEuE,KAAK,gCAAkCF,EAAO,gCAChDrE,GAAEuE,KAAK,2EAA6E6f,EAAI,QACxFpkB,GAAEuE,KAAK,wBACLF,KAMLrE,GAAEuE,KAAK,uFACPvE,GAAEuE,KAAK,iFACPvE,GAAEuE,KAAK,qBAGPvE,GAAEuE,KAAK,8HAIPvE,GAAEuE,KAAK,iCAGR,OAAO,SAASgkE,GAAIxd,EAAI1iD,GACvB,GAAIrI,IAAKkzB,GAET,IAAIs1C,GAAO5xC,IACVgwC,eAAsB,mDACtBC,cAAsB,kDACtBC,cAAsB,kDACtBC,aAAsB,iDACtBC,aAAsB,oDACtBC,WAAsB,8DACtBC,cAAsB,+BACtBh2B,WAAsB,mCACtBu3B,aAAsB,iDACtBtB,eAAsB,sDACtBuB,qBAAsB,yDACtBtB,YAAsB,2DACtBuB,cAAsB,kDACtBC,aAAsB,iDACtBC,aAAsB,qCACtBC,aAAsB,iDACtBC,eAAsB,mDACtBC,YAAsB,oCACtBC,aAAsB,oCACtBC,aAAsB,kCACtBC,YAAsB,oCACtBC,eAAsB,gCACtBt8B,YAAsB,mCACtBC,YAAsB,4CACtBs8B,cAAsB,8CACtBC,YAAsB,oCACtBjC,WAAsB,+CACtBkC,cAAsB,+BACtBC,cAAsB,sCACtBC,iBAAsB,mCACtBC,gBAAsB,kCACtBC,gBAAsB,uEACtBC,cAAsB,uEACtBC,cAAsB,mEACtBC,cAAsB,qEACtBC,cAAsB,kCACtBzC,iBAAsB,OAGvB,IAAI0C,GAAOpzC,IACVqzC,eAAmB,mDACnBC,kBAAmB,kDAGpB,IAAG7hE,EAAK8kC,UAAY,OAAQ,CAC3BntC,EAAEuE,KAAK,mBAAqBikE,EAAOwB,EAAO,MAC1ChqE,GAAEuE,KAAKosC,KAAiB1uC,QAAQ,wBAAyB,oBAEnDjC,GAAEuE,KAAK,2BAA6BikE,EAAQ,MAEnDJ,GAA2BpoE,EAAG+qD,EAC9B/qD,GAAEuE,KAAK,oBACPvE,GAAEuE,KAAK,6BACP,KAAI,GAAItE,GAAI,EAAGA,GAAK8qD,EAAGvrB,WAAWr/B,SAAUF,EAAGD,EAAEuE,KAAKi8D,EAASzV,EAAGtrB,OAAOsrB,EAAGvrB,WAAWv/B,IAAK8qD,EAAI9qD,EAAGoI,GACnGrI,GAAEuE,KAAK,8BACPvE,GAAEuE,KAAK,qBACP,IAAG8D,EAAK8kC,UAAY,OAAQntC,EAAEuE,KAAK,0BAC9BvE,GAAEuE,KAAK,6BACZ,OAAOvE,GAAEQ,KAAK,OAIhB,SAAS2pE,IAAUpf,EAAI1iD,GACtB,GAAGA,EAAK8kC,UAAY,OAAQ,MAAOq6B,IAAkBzc,EAAI1iD,EAEzD,IAAI6pB,GAAMU,IACV,IAAIjhB,GAAI,EAER,IAAI2+B,KACJ,IAAII,KAGJ/+B,GAAI,UACJ+gB,IAAaR,EAAKvgB,EAAG,iDAGrBA,GAAI,aACJ+gB,IAAaR,EAAKvgB,EAAG61D,GAAkBzc,EAAI1iD,GAC3CioC,GAAS/rC,MAAMoN,EAAG,YAClB++B,GAAInsC,MAAMoN,EAAG,eAGbA,GAAI,YACJ+gB,IAAaR,EAAKvgB,EAAG+0D,GAAiB3b,EAAI1iD,GAC1CioC,GAAS/rC,MAAMoN,EAAG,YAClB++B,GAAInsC,MAAMoN,EAAG,cAGbA,GAAI,UACJ+gB,IAAaR,EAAKvgB,EAAGuhB,GAAayd,KAClCL,GAAS/rC,MAAMoN,EAAG,YAClB++B,GAAInsC,MAAMoN,EAAG,gBAGbA,GAAI,cACJ+gB,IAAaR,EAAKvgB,EAAG8+B,GAAUC,GAC/BJ,GAAS/rC,MAAMoN,EAAG,uBAGlBA,GAAI,uBACJ+gB,IAAaR,EAAKvgB,EAAG0+B,GAAeC,GAEpC,OAAOpe,GAGR,QAASk4C,IAAcx9B,GACtB,MAAO,SAASy9B,GAAShiE,GACxB,IAAI,GAAIpI,GAAI,EAAGA,GAAK2sC,EAASzsC,SAAUF,EAAG,CACzC,GAAIqE,GAAIsoC,EAAS3sC,EACjB,IAAGoI,EAAK/D,EAAE,MAAQlC,UAAWiG,EAAK/D,EAAE,IAAMA,EAAE,EAC5C,IAAGA,EAAE,KAAO,IAAK+D,EAAK/D,EAAE,IAAMwsB,OAAOzoB,EAAK/D,EAAE,OAK/C,QAASgmE,IAAcjiE,GACvB+hE,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,SACN/hE,GAGH,QAASkiE,IAAeliE,GACxB+hE,KACE,YAAa,QAEb,UAAW,QAEX,WAAY,SAEZ,cAAe,QAEf,MAAO,SACN/hE,GAEH,QAASmiE,IAAe1nE,GACvB,GAAG20B,GAAK6W,GAAG5uC,QAAQoD,IAAM,EAAG,MAAO,OACnC,IAAG20B,GAAK4W,IAAMvrC,GAAK20B,GAAK4W,GAAI,MAAO,OACnC,IAAG5W,GAAK8W,IAAMzrC,GAAK20B,GAAK8W,GAAI,MAAO,QACnC,IAAG9W,GAAK+W,IAAM1rC,GAAK20B,GAAK+W,GAAI,MAAO,OACnC,OAAQ1rC,IAAKA,EAAE3C,OAAU2C,EAAI,QAE9B,QAAS2nE,IAAkBC,EAAQnrC,GAClC,IAAImrC,EAAQ,MAAO,EACnB,KACCA,EAASnrC,EAAOj+B,IAAI,QAASqpE,GAAK9/D,GAAK,IAAIA,EAAE2hD,GAAI3hD,EAAE2hD,GAAK3hD,EAAE+/D,QAAU,QAAQ//D,EAAEoR,KAAMyuD,EAAO,OAAO7/D,EAAE2hD,IAAIpd,OAAQo7B,GAAeE,EAAO,OAAO7/D,EAAE2hD,IAAIrd,SAClJ,MAAM1sC,GAAK,MAAO,MACpB,OAAQioE,GAAUA,EAAOvqE,SAAW,EAAI,KAAOuqE,EAGhD,QAASG,IAAiB34C,EAAKvQ,EAAMmpD,EAAUxrC,EAAOxyB,EAAKi+D,EAAWxrC,EAAQyrC,EAAO3iE,EAAM0iD,EAAIlf,EAAQR,GACtG,IACC0/B,EAAUzrC,GAAOyP,GAAWxc,GAAUL,EAAK44C,EAAU,MAAOnpD,EAC5D,IAAI5hB,GAAOsyB,GAAWH,EAAKvQ,EAC3B,IAAIge,EACJ,QAAOqrC,GACN,IAAK,QAAUrrC,EAAMw/B,GAASp/D,EAAM4hB,EAAM7U,EAAKzE,EAAM0iE,EAAUzrC,GAAQyrB,EAAIlf,EAAQR,EAAS,OAC5F,IAAK,QAAU1L,EAAM0/B,GAASt/D,EAAM4hB,EAAM7U,EAAKzE,EAAM0iE,EAAUzrC,GAAQyrB,EAAIlf,EAAQR,EAClF,KAAI1L,IAAQA,EAAI,WAAY,KAC5B,IAAIsrC,GAAQn4C,GAAa6M,EAAI,WAAWyP,OAAQztB,EAChD,IAAIupD,GAASp8B,GAAcm8B,EAC3B,IAAIE,GAAO5e,GAAch6B,GAAUL,EAAK+4C,EAAO,MAAOl8B,GAAWxc,GAAUL,EAAKg5C,EAAQ,MAAOD,GAC/F,IAAIG,GAASt4C,GAAaq4C,EAAMF,EAChC,IAAII,GAASv8B,GAAcs8B,EAC3BzrC,GAAM88B,GAAYlqC,GAAUL,EAAKk5C,EAAQ,MAAOA,EAAQ/iE,EAAM0mC,GAAWxc,GAAUL,EAAKm5C,EAAQ,MAAOD,GAASrgB,EAAIprB,EACpH,OACD,IAAK,QAAUA,EAAM4/B,GAASx/D,EAAM4hB,EAAM7U,EAAKzE,EAAM0iE,EAAUzrC,GAAQyrB,EAAIlf,EAAQR,EAAS,OAC5F,IAAK,SAAU1L,EAAM6/B,GAASz/D,EAAM4hB,EAAM7U,EAAKzE,EAAM0iE,EAAUzrC,GAAQyrB,EAAIlf,EAAQR,EAAS,OAC5F,QAAS,KAAM,IAAIvnC,OAAM,2BAA6BknE,IAEvDzrC,EAAOD,GAASK,CAGhB,IAAI2rC,KACJ,IAAGP,GAAaA,EAAUzrC,GAAQtQ,EAAK+7C,EAAUzrC,IAAQhpB,QAAQ,SAASxT,GACzE,GAAImoE,GAAQ,EACZ,IAAGF,EAAUzrC,GAAOx8B,GAAGqsC,MAAQ1X,GAAKsW,KAAM,CACzCk9B,EAAQn4C,GAAai4C,EAAUzrC,GAAOx8B,GAAGssC,OAAQztB,EACjD,IAAIqpB,GAAW80B,GAAWztC,GAAWH,EAAK+4C,EAAO,MAAOA,EAAO5iE,EAC/D,KAAI2iC,IAAaA,EAAS7qC,OAAQ,MAClC8tD,IAAsBtuB,EAAKqL,EAAU,OAEtC,GAAG+/B,EAAUzrC,GAAOx8B,GAAGqsC,MAAQ1X,GAAKC,MAAO,CAC1CuzC,EAAQn4C,GAAai4C,EAAUzrC,GAAOx8B,GAAGssC,OAAQztB,EACjD2pD,GAAYA,EAAU1mE,OAAOyqD,GAAgBh9B,GAAWH,EAAK+4C,EAAO,MAAO5iE,MAG7E,IAAGijE,GAAaA,EAAUnrE,OAAQ8tD,GAAsBtuB,EAAK2rC,EAAW,KAAMjjE,EAAK4jC,YAClF,MAAMxpC,GAAK,GAAG4F,EAAKouB,IAAK,KAAMh0B,IAGjC,QAAS8oE,IAAkBvqE,GAAK,MAAOA,GAAEe,OAAO,IAAM,IAAMf,EAAEH,MAAM,GAAKG,EAEzE,QAAS4Z,IAAUsX,EAAK7pB,GACvBnD,EAASD,EACToD,GAAOA,KACPiiE,IAAcjiE,EAGd,IAAG4pB,GAAeC,EAAK,yBAA0B,MAAOs0C,IAAUt0C,EAAK7pB,EAEvE,IAAG4pB,GAAeC,EAAK,kBAAmB,MAAOs0C,IAAUt0C,EAAK7pB,EAEhE,IAAG4pB,GAAeC,EAAK,sBAAuB,CAC7C,SAAUjvB,aAAc,YAAa,KAAM,IAAIa,OAAM;AACrD,SAAU0nE,oBAAqB,YAAa,CAC3C,GAAGt5C,EAAI7V,UAAW,MAAOmvD,mBAAkBt5C,EAC3C,IAAIu5C,GAAOpzD,EAAI6T,MAAMF,SACrByG,IAAWP,GAAK5b,QAAQ,SAAS7T,GAAKiwB,GAAa+4C,EAAMhpE,EAAG+vB,GAAUN,EAAKzvB,KAC3E,OAAO+oE,mBAAkBC,GAE1B,KAAM,IAAI3nE,OAAM,4BAEjB,IAAImuB,GAAeC,EAAK,uBAAwB,CAC/C,GAAGD,GAAeC,EAAK,gBAAiB,KAAM,IAAIpuB,OAAM,8BACxD,IAAGmuB,GAAeC,EAAK,aAAc,KAAM,IAAIpuB,OAAM,8BACrD,MAAM,IAAIA,OAAM,wBAGjB,GAAI4nE,GAAUj5C,GAAWP,EACzB,IAAIy5C,GAAMv/B,GAAU7Z,GAAUL,EAAK,uBACnC,IAAI0Y,GAAO,KACX,IAAIrL,GAAQqsC,CACZ,IAAGD,EAAIjhC,UAAUvqC,SAAW,EAAG,CAC9ByrE,EAAU,iBACV,IAAGv5C,GAAWH,EAAI05C,EAAS,MAAOD,EAAIjhC,UAAUnmC,KAAKqnE,GAEtD,GAAGD,EAAIjhC,UAAUvqC,SAAW,EAAG,CAC9ByrE,EAAU,iBACV,KAAIv5C,GAAWH,EAAI05C,EAAQ,MAAO,KAAM,IAAI9nE,OAAM,0BAClD6nE,GAAIjhC,UAAUnmC,KAAKqnE,EACnBhhC,GAAO,KAER,GAAG+gC,EAAIjhC,UAAU,GAAG7pC,OAAO,IAAM,MAAO+pC,EAAO,IAE/C,IAAIiB,KACJ,IAAIR,KACJ,KAAIhjC,EAAKk+D,aAAel+D,EAAKwjE,UAAW,CACvC9gC,KACA,IAAG4gC,EAAIj/B,IAAK,IAAM3B,GAAK60B,GAAUvtC,GAAWH,EAAKq5C,GAAkBI,EAAIj/B,MAAOi/B,EAAIj/B,IAAKrkC,GAAS,MAAM5F,GAAK,GAAG4F,EAAKouB,IAAK,KAAMh0B,GAE9H,GAAG4F,EAAKurD,YAAc+X,EAAI9/B,OAAO1rC,OAAQ0rC,EAAS8zB,GAAYptC,GAAUL,EAAKy5C,EAAI9/B,OAAO,GAAG5pC,QAAQ,MAAM,IAAK,OAAO,GAAG0pE,EAAI9/B,OAAO,GAAIxjC,EAEvI,IAAGsjE,EAAIh/B,MAAOtB,EAASo0B,GAAUptC,GAAWH,EAAKq5C,GAAkBI,EAAIh/B,QAASg/B,EAAIh/B,MAAOd,EAAQxjC,GAG9EsjE,EAAIlgC,MAAMnqC,IAAI,SAASwqE,GAC5C,IACC,GAAIvgC,GAAOwD,GAAWxc,GAAUL,EAAK4c,GAAcy8B,GAAkBO,KAASA,EAC9E,OAAO3L,IAAY9tC,GAAWH,EAAKq5C,GAAkBO,IAAQvgC,EAAMugC,EAAMzjE,GACxE,MAAM5F,MAGT,IAAIsoD,GAAKkU,GAAS5sC,GAAWH,EAAKq5C,GAAkBI,EAAIjhC,UAAU,KAAMihC,EAAIjhC,UAAU,GAAIriC,EAE1F,IAAIwpC,MAAYk6B,EAAW,EAE3B,IAAGJ,EAAIjgC,UAAUvrC,OAAQ,CACxB4rE,EAAW15C,GAAWH,EAAKq5C,GAAkBI,EAAIjgC,UAAU,IAAK,KAChE,IAAGqgC,EAAUl6B,EAAQhB,GAAiBk7B,EACtC,IAAGJ,EAAIhgC,SAASxrC,SAAW,EAAG,CAC7B4rE,EAAW15C,GAAWH,EAAKq5C,GAAkBI,EAAIhgC,SAAS,IAAK,KAC/D,IAAGogC,EAAU15B,GAAgB05B,EAAUl6B,EAAOxpC,IAIhD,GAAIujC,KACJ,KAAIvjC,EAAKk+D,YAAcl+D,EAAKwjE,UAAW,CACtC,GAAIF,EAAI//B,UAAUzrC,SAAW,EAAG,CAC/B4rE,EAAWx5C,GAAUL,EAAKq5C,GAAkBI,EAAI//B,UAAU,IAAK,KAC/D,IAAGmgC,EAAUngC,EAAYiH,GAAiBk5B,EAAU1jE,IAItD,GAAInE,KACJ,IAAGmE,EAAKk+D,YAAcl+D,EAAKwjE,UAAW,CACrC,GAAG9gB,EAAGtrB,OAAQF,EAASwrB,EAAGtrB,OAAOn+B,IAAI,QAAS0qE,GAAMhrE,GAAI,MAAOA,GAAEib,WAC5D,IAAG41B,EAAMG,YAAcH,EAAMrS,WAAWr/B,OAAS,EAAGo/B,EAAOsS,EAAMrS,UACtE,IAAGn3B,EAAKwjE,UAAW,CAAE3nE,EAAImtC,MAAQQ,CAAO3tC,GAAI+nE,UAAYrgC,EACxD,GAAGvjC,EAAKk+D,kBAAqBhnC,KAAW,YAAar7B,EAAIs7B,WAAaD,CACtE,IAAGl3B,EAAKk+D,WAAariE,EAAIs7B,WAAan3B,EAAKwjE,UAAW,MAAO3nE,GAE9Dq7B,IAEA,IAAI2sC,KACJ,IAAG7jE,EAAK8jE,UAAYR,EAAIl/B,UAAWy/B,EAAKlM,GAAS3tC,GAAWH,EAAKq5C,GAAkBI,EAAIl/B,YAAYk/B,EAAIl/B,UAAUpkC,EAEjH,IAAIpI,GAAE,CACN,IAAI8qE,KACJ,IAAIppD,GAAMmpD,CAEV,EACC,GAAIsB,GAAWrhB,EAAGtrB,MAClBoS,GAAMG,WAAao6B,EAASjsE,MAC5B0xC,GAAMrS,aACN,KAAI,GAAIlzB,GAAI,EAAGA,GAAK8/D,EAASjsE,SAAUmM,EAAG,CACzCulC,EAAMrS,WAAWlzB,GAAK8/D,EAAS9/D,GAAG2P,MAIpC,GAAIowD,GAAQzhC,EAAO,MAAQ,KAC3B,IAAI0hC,GAAUX,EAAIjhC,UAAU,GAAG76B,YAAY,IAC3C,IAAI08D,IAAcZ,EAAIjhC,UAAU,GAAG7pC,MAAM,EAAGyrE,EAAQ,GAAK,SAAWX,EAAIjhC,UAAU,GAAG7pC,MAAMyrE,EAAQ,GAAK,SAASrqE,QAAQ,MAAM,GAC/H,KAAIgwB,GAAeC,EAAKq6C,GAAaA,EAAa,qBAAuBF,EAAQ,OACjF,IAAI3B,GAAS37B,GAAWxc,GAAUL,EAAKq6C,EAAY,MAAOA,EAAWtqE,QAAQ,UAAW,OAExF,KAAI0pE,EAAIvgC,cAAgBjrC,QAAU,EAAG,CAEpCkI,EAAK4yD,OAASmF,GAAa/tC,GAAWH,EAAKq5C,GAAkBI,EAAIvgC,SAAS,KAAKugC,EAAIvgC,SAAS,GAAG/iC,GAGhG,IAAIsjE,EAAI1/B,YAAc9rC,QAAU,EAAG,CAClCkI,EAAK4jC,OAAS8jB,GAAiB19B,GAAWH,EAAKq5C,GAAkBI,EAAI1/B,OAAO,KAAK5jC,GAGlF,GAAGqiE,EAAQA,EAASD,GAAkBC,EAAQ3f,EAAGtrB,OAGjD,IAAI+sC,GAASn6C,GAAWH,EAAI,0BAA0B,MAAO,EAAE,CAC/Du6C,GAAQ,IAAIxsE,EAAI,EAAGA,GAAK4xC,EAAMG,aAAc/xC,EAAG,CAC9C,GAAI+qE,GAAQ,OACZ,IAAGN,GAAUA,EAAOzqE,GAAI,CACvB0hB,EAAO,MAAS+oD,EAAOzqE,GAAG,GAAIgC,QAAQ,YAAa,GACnD,KAAIgwB,GAAeC,EAAKvQ,GAAOA,EAAO+oD,EAAOzqE,GAAG,EAChD,KAAIgyB,GAAeC,EAAKvQ,GAAOA,EAAO4qD,EAAWtqE,QAAQ,aAAa,IAAMyoE,EAAOzqE,GAAG,EACtF+qE,GAAQN,EAAOzqE,GAAG,OACZ,CACN0hB,EAAO,uBAAuB1hB,EAAE,EAAEusE,GAAO,IAAMH,CAC/C1qD,GAAOA,EAAK1f,QAAQ,WAAW,UAEhC6oE,EAAWnpD,EAAK1f,QAAQ,qBAAsB,mBAC9C,IAAGoG,GAAQA,EAAKk3B,QAAU,KAAM,aAAcl3B,GAAKk3B,QAClD,IAAK,SAAU,GAAGt/B,GAAKoI,EAAKk3B,OAAQ,QAASktC,EAAQ,OACrD,IAAK,SAAU,GAAG56B,EAAMrS,WAAWv/B,GAAGwQ,eAAiBpI,EAAKk3B,OAAO9uB,cAAe,QAASg8D,EAAQ,OACnG,QAAS,GAAGvpE,MAAMS,SAAWT,MAAMS,QAAQ0E,EAAKk3B,QAAS,CACxD,GAAImtC,GAAU,KACd,KAAI,GAAIC,GAAM,EAAGA,GAAOtkE,EAAKk3B,OAAOp/B,SAAUwsE,EAAK,CAClD,SAAUtkE,GAAKk3B,OAAOotC,IAAQ,UAAYtkE,EAAKk3B,OAAOotC,IAAQ1sE,EAAGysE,EAAQ,CACzE,UAAUrkE,GAAKk3B,OAAOotC,IAAQ,UAAYtkE,EAAKk3B,OAAOotC,GAAKl8D,eAAiBohC,EAAMrS,WAAWv/B,GAAGwQ,cAAei8D,EAAU,EAE1H,IAAIA,EAAS,QAASD,KAGxB5B,GAAiB34C,EAAKvQ,EAAMmpD,EAAUj5B,EAAMrS,WAAWv/B,GAAIA,EAAG8qE,EAAWxrC,EAAQyrC,EAAO3iE,EAAM0iD,EAAIlf,EAAQR,GAG3GnnC,GACC0oE,UAAWjB,EACXpV,SAAUxL,EACV1Z,MAAOQ,EACPo6B,UAAWrgC,EACXihC,KAAMX,EACNzsC,OAAQF,EACRC,WAAYqS,EAAMrS,WAClBy5B,QAASluB,GACT+hC,OAAQzhC,EACRugB,OAAQ/f,EACR5mC,IAAKA,EAAImN,YAEV,IAAG/J,GAAQA,EAAK0kE,UAAW,CAC1B,GAAG76C,EAAI/V,MAAO,CACbjY,EAAI8qB,KAAO08C,CACXxnE,GAAIiY,MAAQ+V,EAAI/V,UACV,CACNjY,EAAI8qB,OACJ9qB,GAAIiY,QACJ+V,GAAI5V,UAAUhG,QAAQ,SAASsC,EAAG9L,GACjC8L,EAAIA,EAAE3W,QAAQ,kBAAmB,GACjCiC,GAAI8qB,KAAKzqB,KAAKqU,EACd1U,GAAIiY,MAAMvD,GAAKsZ,EAAI7V,UAAUvP,MAIhC,GAAGzE,GAAQA,EAAK2kE,QAAS,CACxB,GAAGrB,EAAI5/B,IAAI5rC,OAAS,EAAG+D,EAAImyD,OAAShkC,GAAWH,EAAIq5C,GAAkBI,EAAI5/B,IAAI,IAAI,UAC5E,IAAG4/B,EAAI/+B,UAAY++B,EAAI/+B,SAASqgC,MAAQ3c,GAAQpsD,EAAImyD,OAAShkC,GAAWH,EAAK,oBAAoB,MAEvG,MAAOhuB,GAIR,QAASgpE,IAAc3tD,EAAKkB,GAC3B,GAAIpY,GAAOoY,KACX,IAAI9O,GAAI,WAAY5R,EAAOsY,EAAIuH,KAAKL,EAAK5N,EACzC,KACAA,EAAI,sBACJ5R,GAAOsY,EAAIuH,KAAKL,EAAK5N,EAAI,KAAI5R,IAASA,EAAKkE,QAAS,KAAM,IAAIH,OAAM,mCAAqC6N,EACvFw7D,4BAA2BptE,EAAKkE,QAGlD0N,GAAI,2BACJ5R,GAAOsY,EAAIuH,KAAKL,EAAK5N,EAAI,KAAI5R,IAASA,EAAKkE,QAAS,KAAM,IAAIH,OAAM,mCAAqC6N,EACzG,IAAIy7D,GAAMC,mBAAmBttE,EAAKkE,QAClC,IAAGmpE,EAAIjtE,SAAW,GAAKitE,EAAI,GAAGE,MAAMntE,SAAW,GAAKitE,EAAI,GAAGE,MAAM,GAAG9nE,IAAM,GAAK4nE,EAAI,GAAGnxD,OAAS,6BAA+BmxD,EAAI,GAAGE,MAAM,GAAG/nE,IAAM,mBACnJ,KAAM,IAAIzB,OAAM,+BAAiC6N,EAGlDA,GAAI,sDACJ5R,GAAOsY,EAAIuH,KAAKL,EAAK5N,EAAI,KAAI5R,IAASA,EAAKkE,QAAS,KAAM,IAAIH,OAAM,mCAAqC6N,EACzG,IAAI47D,GAAOC,0BAA0BztE,EAAKkE,QAC1C,IAAGspE,EAAKptE,QAAU,GAAKotE,EAAK,IAAM,4BACjC,KAAM,IAAIzpE,OAAM,+BAAiC6N,EAGlDA,GAAI,+DACJ5R,GAAOsY,EAAIuH,KAAKL,EAAK5N,EAAI,KAAI5R,IAASA,EAAKkE,QAAS,KAAM,IAAIH,OAAM,mCAAqC6N,EAC3F87D,eAAc1tE,EAAKkE,SAC/B,MAAMxB,IAERkP,EAAI,iBACJ5R,GAAOsY,EAAIuH,KAAKL,EAAK5N,EAAI,KAAI5R,IAASA,EAAKkE,QAAS,KAAM,IAAIH,OAAM,mCAAqC6N,EACzG,IAAI+7D,GAAQC,qBAAqB5tE,EAAKkE,QAGtC0N,GAAI,mBACJ5R,GAAOsY,EAAIuH,KAAKL,EAAK5N,EAAI,KAAI5R,IAASA,EAAKkE,QAAS,KAAM,IAAIH,OAAM,mCAAqC6N,EAG1G,IAAG+7D,EAAM,IAAM,SAAeE,iBAAkB,YAAa,MAAOA,eAAcF,EAAM,GAAI3tE,EAAKkE,QAASoE,EAAK2uD,UAAY,GAAI3uD,EAE/H,IAAGqlE,EAAM,IAAM,SAAeG,iBAAkB,YAAa,MAAOA,eAAcH,EAAM,GAAI3tE,EAAKkE,QAASoE,EAAK2uD,UAAY,GAAI3uD,EAC9H,MAAM,IAAIvE,OAAM,8BAGjB,QAAS8c,IAAUmqC,EAAI1iD,GACtB,GAAGA,EAAK8kC,UAAY,MAAO,MAAOg9B,IAAUpf,EAAI1iD,EAChD,IAAGA,EAAK8kC,UAAY,OAAQ,MAAO2gC,IAAgB/iB,EAAI1iD,EACvD,OAAO0lE,IAAehjB,EAAI1iD,GAO3B,QAASylE,IAAgB/iB,EAAI1iD,GAC5BokD,GAAW,IACX,IAAG1B,IAAOA,EAAG9lD,IAAK,CACjB8lD,EAAG9lD,IAAMA,EAAImN,YAEd,GAAG24C,GAAMA,EAAG9lD,IAAK,CAChBC,EAASD,EAAMA,GAAIoN,WAAW04C,EAAG9lD,IAEjCoD,GAAK8qD,OAASzjC,EAAUq7B,EAAG9lD,IAAMoD,GAAK8qD,OAAOpI,EAAG9lD,IAAI,QAAU,CAC9DoD,GAAK+qD,IAAMrI,EAAG9lD,IAEfoD,EAAKkjC,OAAWljC,GAAKqiE,SACrBriE,GAAK4wD,UAAc5wD,GAAK4wD,QAAQ5U,MAAQ,CAAGh8C,GAAK4wD,QAAQ1U,OAAS,CACjE,IAAGyN,GAAiB3pD,EAAK6wD,WAAa,GAAIjH,SACrC,CAAE5pD,EAAK6wD,aAAiB7wD,GAAK6wD,WAAW8U,aAAiB3lE,GAAK6wD,WAAW8U,IAC9E,GAAI3B,GAAQhkE,EAAK8kC,UAAY,OAAS,MAAQ,KAC9C,IAAI8gC,GAAStd,GAAQjxD,QAAQ2I,EAAK8kC,WAAa,CAC/C,IAAItuB,GAAKysB,IACTi/B,IAAeliE,EAAOA,MACtB,IAAI6pB,GAAMU,IACV,IAAIjhB,GAAI,GAAIk+B,EAAM,CAElBxnC,GAAKiiD,UACL4I,IAAe7qD,EAAKiiD,YAAc6I,QAAQ+a,QAAU,IAEpD,KAAInjB,EAAG1Z,MAAO0Z,EAAG1Z,QAEjB1/B,GAAI,mBACJ+gB,IAAaR,EAAKvgB,EAAGq/B,GAAiB+Z,EAAG1Z,MAAOhpC,GAChDwW,GAAG6sB,UAAUnnC,KAAKoN,EAClBi+B,IAASvnC,EAAKkjC,KAAM,EAAG55B,EAAG8lB,GAAKJ,WAEhC1lB,GAAI,kBACH,IAAGo5C,EAAG1Z,OAAS0Z,EAAG1Z,MAAM7R,WAAW,MAC9B,KAAIurB,EAAGwL,WAAaxL,EAAGwL,SAAS92B,OAAQsrB,EAAG1Z,MAAM7R,WAAaurB,EAAGvrB,eACjE,CACJ,GAAI2uC,KACJ,KAAI,GAAIC,GAAK,EAAGA,EAAKrjB,EAAGvrB,WAAWr/B,SAAUiuE,EAC5C,IAAIrjB,EAAGwL,SAAS92B,OAAO2uC,QAAS1P,QAAU,EAAGyP,EAAI5pE,KAAKwmD,EAAGvrB,WAAW4uC,GACrErjB,GAAG1Z,MAAM7R,WAAa2uC,EAEvBpjB,EAAG1Z,MAAMW,WAAa+Y,EAAG1Z,MAAM7R,WAAWr/B,MAC1CuyB,IAAaR,EAAKvgB,EAAG6gC,GAAgBuY,EAAG1Z,MAAOhpC,GAC/CwW,GAAG8sB,SAASpnC,KAAKoN,EACjBi+B,IAASvnC,EAAKkjC,KAAM,EAAG55B,EAAG8lB,GAAKF,UAE/B,IAAGwzB,EAAGkhB,YAAclhB,EAAG1Z,OAASriB,EAAK+7B,EAAGkhB,eAAe9rE,OAAS,EAAG,CAClEwR,EAAI,qBACJ+gB,IAAaR,EAAKvgB,EAAGqhC,GAAiB+X,EAAGkhB,UAAW5jE,GACpDwW,GAAG+sB,UAAUrnC,KAAKoN,EAClBi+B,IAASvnC,EAAKkjC,KAAM,EAAG55B,EAAG8lB,GAAKH,YAGhC,IAAIuY,EAAI,EAAEA,GAAOkb,EAAGvrB,WAAWr/B,SAAU0vC,EAAK,CAC7C,GAAIw+B,IAAUp/B,SACd,IAAIpP,GAAKkrB,EAAGtrB,OAAOsrB,EAAGvrB,WAAWqQ,EAAI,GACrC,IAAIy+B,IAASzuC,OAAU,UAAY,OACnC,QAAOyuC,GACP,IAAK,SAEL,QACC38D,EAAI,sBAAwBk+B,EAAM,IAAMw8B,CACxC35C,IAAaR,EAAKvgB,EAAG6uD,GAAS3wB,EAAI,EAAGl+B,EAAGtJ,EAAM0iD,EAAIsjB,GAClDxvD,GAAG0gB,OAAOh7B,KAAKoN,EACfi+B,IAASvnC,EAAKqiE,QAAS,EAAG,mBAAqB76B,EAAM,IAAMw8B,EAAO50C,GAAK6W,GAAG,KAG3E,GAAGzO,EAAI,CACN,GAAImL,GAAWnL,EAAG,YAClB,IAAI0uC,GAAW,KACf,IAAItU,GAAK,EACT,IAAGjvB,GAAYA,EAAS7qC,OAAS,EAAG,CACnC85D,EAAK,cAAgBpqB,EAAM,IAAMw8B,CACjC35C,IAAaR,EAAK+nC,EAAI+G,GAAWh2B,EAAUivB,EAAI5xD,GAC/CwW,GAAGmsB,SAASzmC,KAAK01D,EACjBrqB,IAASy+B,GAAS,EAAG,cAAgBx+B,EAAM,IAAMw8B,EAAO50C,GAAKsW,KAC7DwgC,GAAW,KAEZ,GAAG1uC,EAAG,WAAY,CACjB,GAAG0uC,EAAU77C,GAAaR,EAAK,yBAA2B,EAAQ,OAAQw6B,GAAmB7c,EAAKhQ,EAAG,qBAE/FA,GAAG,mBACHA,GAAG,WAGX,GAAGwuC,EAAO,OAAOG,KAAM97C,GAAaR,EAAK4c,GAAcn9B,GAAI89B,GAAW4+B,IAGvE,GAAGhmE,EAAK4wD,SAAW,MAAQ5wD,EAAK4wD,QAAQ94D,OAAS,EAAG,CACnDwR,EAAI,oBAAsB06D,CAC1B35C,IAAaR,EAAKvgB,EAAGmvD,GAAUz4D,EAAK4wD,QAAStnD,EAAGtJ,GAChDwW,GAAGksB,KAAKxmC,KAAKoN,EACbi+B,IAASvnC,EAAKqiE,QAAS,EAAG,iBAAmB2B,EAAO50C,GAAKuW,KAG1Dr8B,EAAI,eAAiB06D,CACrB35C,IAAaR,EAAKvgB,EAAG2uD,GAASvV,EAAIp5C,EAAGtJ,GACrCwW,GAAG6rB,UAAUnmC,KAAKoN,EAClBi+B,IAASvnC,EAAKkjC,KAAM,EAAG55B,EAAG8lB,GAAK6V,GAI/B37B,GAAI,qBACJ+gB,IAAaR,EAAKvgB,EAAGg6C,GAAYZ,EAAGa,OAAQvjD,GAC5CwW,GAAGgtB,OAAOtnC,KAAKoN,EACfi+B,IAASvnC,EAAKqiE,QAAS,EAAG,mBAAoBjzC,GAAKyW,MAInDv8B,GAAI,aAAe06D,CACnB35C,IAAaR,EAAKvgB,EAAGivD,GAAU7V,EAAIp5C,EAAGtJ,GACtCwW,GAAGwsB,OAAO9mC,KAAKoN,EACfi+B,IAASvnC,EAAKqiE,QAAS,EAAG,UAAY2B,EAAO50C,GAAKwW,IAElD,IAAG8c,EAAGsL,QAAU4X,EAAQ,CACvBt8D,EAAI,mBACJ+gB,IAAaR,EAAKvgB,EAAGo5C,EAAGsL,OACxBx3C,GAAGktB,IAAIxnC,KAAKoN,EACZi+B,IAASvnC,EAAKqiE,QAAS,EAAG,iBAAkBjzC,GAAKoX,KAGlDl9B,EAAI,eAAiB06D,CACrB35C,IAAaR,EAAKvgB,EAAGuvD,GAAavvD,GAClCkN,GAAGusB,SAAS7mC,KAAKoN,EACjBi+B,IAASvnC,EAAKqiE,QAAS,EAAG,YAAc2B,EAAO50C,GAAKkX,OAEpDjc,IAAaR,EAAK,sBAAuB8a,GAASnuB,EAAIxW,GACtDqqB,IAAaR,EAAK,cAAeud,GAAWpnC,EAAKkjC,MACjD7Y,IAAaR,EAAK,qBAAuBm6C,EAAQ,QAAS58B,GAAWpnC,EAAKqiE,eAEnEriE,GAAK8qD,aAAe9qD,GAAK+qD,GAChC,OAAOlhC,GAGR,QAAS67C,IAAehjB,EAAI1iD,GAC3BokD,GAAW,IACX,IAAG1B,IAAOA,EAAG9lD,IAAK,CACjB8lD,EAAG9lD,IAAMA,EAAImN,YAEd,GAAG24C,GAAMA,EAAG9lD,IAAK,CAChBC,EAASD,EAAMA,GAAIoN,WAAW04C,EAAG9lD,IAEjCoD,GAAK8qD,OAASzjC,EAAUq7B,EAAG9lD,IAAMoD,GAAK8qD,OAAOpI,EAAG9lD,IAAI,QAAU,CAC9DoD,GAAK+qD,IAAMrI,EAAG9lD,IAEfoD,EAAKkjC,OAAWljC,GAAKqiE,SACrBriE,GAAK4wD,UAAc5wD,GAAK4wD,QAAQ5U,MAAQ,CAAGh8C,GAAK4wD,QAAQ1U,OAAS,CACjE,IAAGyN,GAAiB3pD,EAAK6wD,WAAa,GAAIjH,SACrC,CAAE5pD,EAAK6wD,aAAiB7wD,GAAK6wD,WAAW8U,aAAiB3lE,GAAK6wD,WAAW8U,IAC9E,GAAI3B,GAAQ,KACZ,IAAI4B,GAAStd,GAAQjxD,QAAQ2I,EAAK8kC,WAAa,CAC/C,IAAItuB,GAAKysB,IACTi/B,IAAeliE,EAAOA,MACtB,IAAI6pB,GAAMU,IACV,IAAIjhB,GAAI,GAAIk+B,EAAM,CAElBxnC,GAAKiiD,UACL4I,IAAe7qD,EAAKiiD,YAAc6I,QAAQ+a,QAAU,IAEpD,KAAInjB,EAAG1Z,MAAO0Z,EAAG1Z,QAEjB1/B,GAAI,mBACJ+gB,IAAaR,EAAKvgB,EAAGq/B,GAAiB+Z,EAAG1Z,MAAOhpC,GAChDwW,GAAG6sB,UAAUnnC,KAAKoN,EAClBi+B,IAASvnC,EAAKkjC,KAAM,EAAG55B,EAAG8lB,GAAKJ,WAEhC1lB,GAAI,kBACH,IAAGo5C,EAAG1Z,OAAS0Z,EAAG1Z,MAAM7R,WAAW,MAC9B,KAAIurB,EAAGwL,WAAaxL,EAAGwL,SAAS92B,OAAQsrB,EAAG1Z,MAAM7R,WAAaurB,EAAGvrB,eACjE,CACJ,GAAI2uC,KACJ,KAAI,GAAIC,GAAK,EAAGA,EAAKrjB,EAAGvrB,WAAWr/B,SAAUiuE,EAC5C,IAAIrjB,EAAGwL,SAAS92B,OAAO2uC,QAAS1P,QAAU,EAAGyP,EAAI5pE,KAAKwmD,EAAGvrB,WAAW4uC,GACrErjB,GAAG1Z,MAAM7R,WAAa2uC,EAEvBpjB,EAAG1Z,MAAMW,WAAa+Y,EAAG1Z,MAAM7R,WAAWr/B,MAC1CuyB,IAAaR,EAAKvgB,EAAG6gC,GAAgBuY,EAAG1Z,MAAOhpC,GAC/CwW,GAAG8sB,SAASpnC,KAAKoN,EACjBi+B,IAASvnC,EAAKkjC,KAAM,EAAG55B,EAAG8lB,GAAKF,UAE/B,IAAGwzB,EAAGkhB,YAAclhB,EAAG1Z,OAASriB,EAAK+7B,EAAGkhB,eAAe9rE,OAAS,EAAG,CAClEwR,EAAI,qBACJ+gB,IAAaR,EAAKvgB,EAAGqhC,GAAiB+X,EAAGkhB,UAAW5jE,GACpDwW,GAAG+sB,UAAUrnC,KAAKoN,EAClBi+B,IAASvnC,EAAKkjC,KAAM,EAAG55B,EAAG8lB,GAAKH,YAGhC,GAAI2U,IAAU,UACd5jC,GAAKwnD,KAAO,CAEZ,KAAIhgB,EAAI,EAAEA,GAAOkb,EAAGvrB,WAAWr/B,SAAU0vC,EAAK,CAC7C,GAAIw+B,IAAUp/B,SACd,IAAIpP,GAAKkrB,EAAGtrB,OAAOsrB,EAAGvrB,WAAWqQ,EAAI,GACrC,IAAIy+B,IAASzuC,OAAU,UAAY,OACnC,QAAOyuC,GACP,IAAK,SAEL,QACC38D,EAAI,sBAAwBk+B,EAAM,IAAMw8B,CACxC35C,IAAaR,EAAKvgB,EAAG6pD,GAAa3rB,EAAI,EAAGxnC,EAAM0iD,EAAIsjB,GACnDxvD,GAAG0gB,OAAOh7B,KAAKoN,EACfi+B,IAASvnC,EAAKqiE,QAAS,EAAG,mBAAqB76B,EAAM,IAAMw8B,EAAO50C,GAAK6W,GAAG,KAG3E,GAAGzO,EAAI,CACN,GAAImL,GAAWnL,EAAG,YAClB,IAAI0uC,GAAW,KACf,IAAItU,GAAK,EACT,IAAGjvB,GAAYA,EAAS7qC,OAAS,EAAG,CACnC,GAAIsuE,GAAS,KACbzjC,GAAS10B,QAAQ,SAASo5C,GACzBA,EAAK,GAAGp5C,QAAQ,SAAS1S,GAAK,GAAGA,EAAE+E,GAAK,KAAM8lE,EAAS,QAExD,IAAGA,EAAQ,CACVxU,EAAK,sCAAwCpqB,EAAM,IAAMw8B,CACzD35C,IAAaR,EAAK+nC,EAAIxK,GAAgBzkB,EAAUiB,EAAQ5jC,GACxDwW,GAAG2sB,iBAAiBjnC,KAAK01D,EACzBrqB,IAASy+B,GAAS,EAAG,sCAAwCx+B,EAAM,IAAMw8B,EAAO50C,GAAKC,OAGtFuiC,EAAK,cAAgBpqB,EAAM,IAAMw8B,CACjC35C,IAAaR,EAAK+nC,EAAIjL,GAAmBhkB,EAAU3iC,GACnDwW,GAAGmsB,SAASzmC,KAAK01D,EACjBrqB,IAASy+B,GAAS,EAAG,cAAgBx+B,EAAM,IAAMw8B,EAAO50C,GAAKsW,KAC7DwgC,GAAW,KAEZ,GAAG1uC,EAAG,WAAY,CACjB,GAAG0uC,EAAU77C,GAAaR,EAAK,yBAA2B,EAAQ,OAAQw6B,GAAmB7c,EAAKhQ,EAAG,qBAE/FA,GAAG,mBACHA,GAAG,WAGX,GAAGwuC,EAAO,OAAOG,KAAM97C,GAAaR,EAAK4c,GAAcn9B,GAAI89B,GAAW4+B,IAGvE,GAAGhmE,EAAK4wD,SAAW,MAAQ5wD,EAAK4wD,QAAQ94D,OAAS,EAAG,CACnDwR,EAAI,oBAAsB06D,CAC1B35C,IAAaR,EAAKvgB,EAAG+yC,GAAcr8C,EAAK4wD,QAAS5wD,GACjDwW,GAAGksB,KAAKxmC,KAAKoN,EACbi+B,IAASvnC,EAAKqiE,QAAS,EAAG,iBAAmB2B,EAAO50C,GAAKuW,KAG1Dr8B,EAAI,eAAiB06D,CACrB35C,IAAaR,EAAKvgB,EAAGktD,GAAa9T,EAAI1iD,GACtCwW,GAAG6rB,UAAUnmC,KAAKoN,EAClBi+B,IAASvnC,EAAKkjC,KAAM,EAAG55B,EAAG8lB,GAAK6V,GAI/B37B,GAAI,qBACJ+gB,IAAaR,EAAKvgB,EAAGg6C,GAAYZ,EAAGa,OAAQvjD,GAC5CwW,GAAGgtB,OAAOtnC,KAAKoN,EACfi+B,IAASvnC,EAAKqiE,QAAS,EAAG,mBAAoBjzC,GAAKyW,MAInDv8B,GAAI,aAAe06D,CACnB35C,IAAaR,EAAKvgB,EAAGm5C,GAAcC,EAAI1iD,GACvCwW,GAAGwsB,OAAO9mC,KAAKoN,EACfi+B,IAASvnC,EAAKqiE,QAAS,EAAG,UAAY2B,EAAO50C,GAAKwW,IAElD,IAAG8c,EAAGsL,QAAU4X,EAAQ,CACvBt8D,EAAI,mBACJ+gB,IAAaR,EAAKvgB,EAAGo5C,EAAGsL,OACxBx3C,GAAGktB,IAAIxnC,KAAKoN,EACZi+B,IAASvnC,EAAKqiE,QAAS,EAAG,iBAAkBjzC,GAAKoX,KAGlDl9B,EAAI,eAAiB06D,CACrB35C,IAAaR,EAAKvgB,EAAGw6C,KACrBttC,GAAGusB,SAAS7mC,KAAKoN,EACjBi+B,IAASvnC,EAAKqiE,QAAS,EAAG,YAAc2B,EAAO50C,GAAKkX,OAEpD,IAAG1C,EAAO9rC,OAAS,EAAG,CACrBwR,EAAI,uBACJ+gB,IAAaR,EAAKvgB,EAAGs+C,GAAiBhkB,EAAQ5jC,GAC9CwW,GAAGotB,OAAO1nC,KAAKoN,EACfi+B,IAASvnC,EAAKqiE,QAAS,EAAG,qBAAsBjzC,GAAKmX,QAGtDlc,GAAaR,EAAK,sBAAuB8a,GAASnuB,EAAIxW,GACtDqqB,IAAaR,EAAK,cAAeud,GAAWpnC,EAAKkjC,MACjD7Y,IAAaR,EAAK,qBAAuBm6C,EAAQ,QAAS58B,GAAWpnC,EAAKqiE,eAEnEriE,GAAK8qD,aAAe9qD,GAAK+qD,GAChC,OAAOlhC,GAGR,QAASyvB,IAAUhwC,EAAE3R,GACpB,GAAIgB,GAAI,EACR,SAAQhB,OAAO6L,MAAQ,UACtB,IAAK,SAAU,OAAQ8F,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IACnE,IAAK,SAAU3Q,EAAIK,EAAOW,OAAO2P,EAAE9Q,MAAM,EAAE,IAAM,OACjD,IAAK,SAAUG,EAAI2Q,CAAG,OACtB,IAAK,QAAU,OAAQA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,GAAIA,EAAE,IACnE,QAAS,KAAM,IAAI7N,OAAM,sBAAwB9D,GAAKA,EAAE6L,MAAQ,eAEjE,OAAQ7K,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,GAAIY,EAAEZ,WAAW,IAG7I,QAASsuE,IAASnvD,EAAKlX,GACtB,GAAGgQ,EAAIuH,KAAKL,EAAK,oBAAqB,MAAO2tD,IAAc3tD,EAAKlX,EAChE,OAAOsmE,cAAapvD,EAAKlX,GAG1B,QAASumE,IAAS7uE,EAAMsI,GACvB,GAAI6pB,GAAK5tB,EAAIvE,CACb,IAAIC,GAAIqI,KACR,KAAIrI,EAAE6L,KAAM7L,EAAE6L,KAAQ3J,GAAWC,OAAOkd,SAAStf,GAAS,SAAW,QACrEmyB,GAAMW,GAASvuB,EAAGtE,EAClB,OAAO4a,IAAUsX,EAAKlyB,GAGvB,QAAS6uE,IAAe9uE,EAAMC,GAC7B,GAAIC,GAAI,CACR6uE,GAAM,MAAM7uE,EAAIF,EAAKI,OAAQ,OAAOJ,EAAKK,WAAWH,IACnD,IAAK,KAAM,IAAK,KAAM,IAAK,MAAQA,CAAG,OACtC,IAAK,IAAM,MAAO8uE,YAAWhvE,EAAKc,MAAMZ,GAAGD,GAC3C,QAAS,KAAM8uE,IAEhB,MAAOxuB,IAAI5I,YAAY33C,EAAMC,GAG9B,QAASgvE,IAAmBjvE,EAAMC,GACjC,GAAIwO,GAAM,GAAIkzC,EAAQC,GAAU5hD,EAAMC,EACtC,QAAOA,EAAE6L,MACR,IAAK,SAAU2C,EAAMnN,EAAOW,OAAOjC,EAAO,OAC1C,IAAK,SAAUyO,EAAMzO,CAAM,OAC3B,IAAK,SAAUyO,EAAMzO,EAAKoK,SAAS,SAAW,OAC9C,IAAK,QAASqE,EAAM+hB,GAAOxwB,EAAO,OAClC,QAAS,KAAM,IAAI+D,OAAM,qBAAuB9D,EAAE6L,OAEnD,GAAG61C,EAAM,IAAM,KAAQA,EAAM,IAAM,KAAQA,EAAM,IAAM,IAAMlzC,EAAM8mB,GAAS9mB,EAC5ExO,GAAE6L,KAAO,QACT,OAAOgjE,IAAergE,EAAKxO,GAG5B,QAASivE,IAAWlvE,EAAMC,GACzB,GAAIsE,GAAIvE,CACR,IAAGC,EAAE6L,MAAQ,SAAUvH,EAAIjD,EAAOW,OAAOsC,EACzCA,GAAIw2B,SAAS5O,MAAMlqB,OAAO,KAAMsC,EAAEzD,MAAM,GAAI,MAC5Cb,GAAE6L,KAAO,QACT,OAAOgjE,IAAevqE,EAAGtE,GAG1B,QAASkvE,IAAQnvE,GAChB,OAAQA,EAAKiN,MAAM,gBAAkBjN,EAAOotB,GAAUptB,GAGvD,QAASovE,IAASpvE,EAAMuE,EAAGtE,EAAGwO,GAC7B,GAAGA,EAAK,CAAExO,EAAE6L,KAAO,QAAU,OAAOy0C,IAAI5I,YAAY33C,EAAMC,GAC1D,MAAOsgD,IAAI5I,YAAYpzC,EAAGtE,GAG3B,QAASovE,IAASrvE,EAAMsI,GACvBxI,GACA,IAAIG,GAAIqI,KACR,UAAU7E,eAAgB,aAAezD,YAAgByD,aAAa,MAAO4rE,IAAS,GAAInsE,YAAWlD,IAAQC,EAAI0wB,GAAI1wB,GAAIA,EAAE6L,KAAO,QAAS7L,GAC3I,UAAUiD,cAAe,aAAelD,YAAgBkD,cAAejD,EAAE6L,KAAM7L,EAAE6L,WAAcohB,QAAS,YAAc,SAAW,OACjI,IAAI3oB,GAAIvE,EAAM+C,GAAK,EAAE,EAAE,EAAE,GAAI0L,EAAM,KACnC,IAAGxO,EAAE4zD,WAAY,CAAE5zD,EAAEshD,OAAS,IAAMthD,GAAEsgC,WAAa,KACnDyxB,KACA,IAAG/xD,EAAE+R,OAAQggD,GAAShgD,OAAS/R,EAAE+R,MACjC,KAAI/R,EAAE6L,KAAM7L,EAAE6L,KAAQ3J,GAAWC,OAAOkd,SAAStf,GAAS,SAAW,QACrE,IAAGC,EAAE6L,MAAQ,OAAQ,CAAE7L,EAAE6L,KAAO3J,EAAU,SAAW,QAAUoC,GAAIwqB,EAAY/uB,EAAO,UAAUkD,cAAe,cAAgBf,EAASlC,EAAE6L,KAAO,QACjJ,GAAG7L,EAAE6L,MAAQ,SAAU,CAAE2C,EAAM,IAAMxO,GAAE6L,KAAO,QAAU7L,GAAE81C,SAAW,KAAOxxC,GAAI4qE,GAAQnvE,GACxF,GAAGC,EAAE6L,MAAQ,eAAkB5I,cAAe,aAAelD,YAAgBkD,mBAAqBO,eAAgB,YAAa,CAE9H,GAAI6rE,GAAG,GAAI7rE,aAAY,GAAI8rE,EAAG,GAAIrsE,YAAWosE,EAAKC,GAAGtB,IAAI,KAEzD,KAAIsB,EAAGtB,IAAK,CAAChuE,EAAE0wB,GAAI1wB,EAAIA,GAAE6L,KAAK,OAAS,OAAOujE,IAASrrE,EAAKO,GAAItE,IAEjE,QAAQ8C,EAAI6+C,GAAUr9C,EAAGtE,IAAI,IAC5B,IAAK,KAAM,GAAG8C,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAM,MAAO4rE,IAASr2D,EAAI+G,KAAK9a,EAAGtE,GAAIA,EAAI,OACvK,IAAK,GAAM,GAAG8C,EAAE,IAAM,EAAM,MAAO6rE,cAAarqE,EAAGtE,EAAI,OACvD,IAAK,IAAM,MAAO+uE,YAAWzqE,EAAGtE,GAChC,IAAK,IACJ,GAAG8C,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,EAAM,KAAM,IAAIgB,OAAM,uCACpE,IAAGhB,EAAE,KAAO,GAAM,MAAOg/C,IAAWx9C,EAAGtE,EACvC,OACD,IAAK,IAAM,GAAG8C,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,GAAM,MAAOq8C,IAAIzH,YAAYpzC,EAAGtE,EAAI,OAC7F,IAAK,IAAM,MAAQ8C,GAAE,KAAO,IAAQA,EAAE,GAAK,GAAQA,EAAE,GAAK,EAAQ8rE,GAAStqE,EAAGtE,GAAKmvE,GAASpvE,EAAMuE,EAAGtE,EAAGwO,GACxG,IAAK,KAAM,MAAO1L,GAAE,KAAO,GAAOisE,WAAWzqE,EAAGtE,GAAKmvE,GAASpvE,EAAMuE,EAAGtE,EAAGwO,GAC1E,IAAK,KACJ,GAAG1L,EAAE,KAAO,IAAM,CAAE,MAAOmsE,IAAW3qE,EAAGtE,OACpC,IAAG8C,EAAE,KAAO,GAAQA,EAAE,KAAO,GAAQA,EAAE,KAAO,EAAM,MAAOysE,KAAI73B,YAAYpzC,EAAGtE,EACnF,OACD,IAAK,GACJ,GAAG8C,EAAE,KAAO,EAAM,CACjB,GAAGA,EAAE,IAAM,GAAQA,EAAE,KAAO,EAAM,MAAOysE,KAAI73B,YAAYpzC,EAAGtE,EAC5D,IAAG8C,EAAE,KAAO,IAASA,EAAE,KAAO,GAAQA,EAAE,KAAO,GAAO,MAAOysE,KAAI73B,YAAYpzC,EAAGtE,GAEjF,MACD,IAAK,IAAM,IAAK,MAAM,IAAK,MAAM,IAAK,KAAM,MAAOqzC,IAAIqE,YAAYpzC,EAAGtE,GACtE,IAAK,KAAM,GAAG8C,EAAE,KAAO,IAAQA,EAAE,KAAO,KAAQA,EAAE,KAAO,IAAM,MAAO0sE,KAAI93B,YAAYpzC,EAAGtE,EAAI,OAC7F,IAAK,KAAM,IAAK,KAAM,IAAK,IAAM,MAAOgvE,IAAmB1qE,EAAGtE,GAC9D,IAAK,KAAM,GAAG8C,EAAE,KAAO,IAAQA,EAAE,KAAO,IAAQA,EAAE,KAAO,GAAM,KAAM,IAAIgB,OAAM,sCAAwC,QAExH,GAAGsvC,GAAuB1zC,QAAQoD,EAAE,KAAO,GAAKA,EAAE,IAAM,IAAMA,EAAE,IAAM,GAAI,MAAOuwC,IAAIqE,YAAYpzC,EAAGtE,EACpG,OAAOmvE,IAASpvE,EAAMuE,EAAGtE,EAAGwO,GAG7B,QAAS2Q,IAAatG,EAAUxQ,GAC/B,GAAIrI,GAAIqI,KAAUrI,GAAE6L,KAAO,MAC3B,OAAOujE,IAASv2D,EAAU7Y,GAE3B,QAASyvE,IAAclwD,EAAKvf,GAC3B,OAAOA,EAAE6L,MACR,IAAK,UAAU,IAAK,SAAU,MAC9B,IAAK,UAAU,IAAK,QAAS7L,EAAE6L,KAAO,EAAI,OAC1C,IAAK,OAAQ,MAAOmhB,GAAShtB,EAAE0a,KAAMrC,EAAIkK,MAAMhD,GAAM1T,KAAK3J,EAAU,SAAW,MAC/E,IAAK,SAAU,KAAM,IAAI4B,OAAM,qCAAuC9D,EAAEmtC,SAAW,WACnF,QAAS,KAAM,IAAIrpC,OAAM,qBAAuB9D,EAAE6L,OAEnD,MAAOwM,GAAIkK,MAAMhD,EAAKvf,GAGvB,QAAS0vE,IAAe3kB,EAAI1iD,GAC3B,GAAIrI,GAAI0wB,GAAIroB,MACZ,IAAIsrB,GAAI/S,GAAUmqC,EAAI/qD,EACtB,OAAO2vE,IAAqBh8C,EAAG3zB,GAEhC,QAAS4vE,IAAmB7kB,EAAI1iD,GAC/B,GAAIrI,GAAI0wB,GAAIroB,MACZ,IAAIsrB,GAAIo6C,GAAehjB,EAAI/qD,EAC3B,OAAO2vE,IAAqBh8C,EAAG3zB,GAEhC,QAAS2vE,IAAqBh8C,EAAG3zB,GAChC,GAAI6vE,KACJ,IAAIC,GAAQ5tE,EAAU,mBAAuBe,cAAe,YAAc,QAAU,QACpF,IAAGjD,EAAEmpB,YAAa0mD,EAAM1mD,YAAc,SACtC,IAAGnpB,EAAEg3D,SAAU6Y,EAAMhkE,KAAOikE,MACvB,QAAO9vE,EAAE6L,MACb,IAAK,SAAUgkE,EAAMhkE,KAAO,QAAU,OACtC,IAAK,SAAUgkE,EAAMhkE,KAAO,QAAU,OACtC,IAAK,SAAU,KAAM,IAAI/H,OAAM,qCAAuC9D,EAAEmtC,SAAW,WACnF,IAAK,UACL,IAAK,OAAQ0iC,EAAMhkE,KAAOikE,CAAO,OACjC,QAAS,KAAM,IAAIhsE,OAAM,qBAAuB9D,EAAE6L,OAEnD,GAAI3H,GAAMyvB,EAAErX,UAAYjE,EAAIkK,MAAMoR,GAAIjT,SAAS,MAAO7U,MAAOkkE,WAAc,SAAUC,OAAU,UAAUH,EAAMhkE,OAASgkE,EAAMhkE,KAAMsd,cAAenpB,EAAEmpB,cAAgBwK,EAAEs8C,SAASJ,EAChL,UAAU5iD,QAAS,YAAa,CAC/B,SAAU/oB,IAAO,SAAU,CAC1B,GAAGlE,EAAE6L,MAAQ,UAAY7L,EAAE6L,MAAQ,SAAU,MAAO3H,EACpDA,GAAM,GAAIjB,YAAWM,EAAKW,KAI5B,GAAGlE,EAAEg3D,gBAAmBkZ,iBAAkB,YAAa,MAAOT,IAAcS,cAAchsE,EAAKlE,EAAEg3D,UAAWh3D,EAE5G,IAAGA,EAAE6L,OAAS,OAAQ,MAAOmhB,GAAShtB,EAAE0a,KAAMxW,EAC9C,OAAOlE,GAAE6L,MAAQ,SAAWypB,GAASpxB,GAAOA,EAG7C,QAASisE,IAAeplB,EAAI1iD,GAC3B,GAAIrI,GAAIqI,KACR,IAAIkX,GAAM6wD,aAAarlB,EAAI/qD,EAC3B,OAAOyvE,IAAclwD,EAAKvf,GAG3B,QAASqwE,IAAkBnsE,EAAKmE,EAAMioE,GACrC,IAAIA,EAAKA,EAAM,EACf,IAAItwE,GAAIswE,EAAMpsE,CACd,QAAOmE,EAAKwD,MACX,IAAK,SAAU,MAAOxK,GAAOE,OAAO4rB,GAAUntB,IAC9C,IAAK,SAAU,MAAOmtB,IAAUntB,GAChC,IAAK,SAAU,MAAOkE,GACtB,IAAK,OAAQ,MAAO8oB,GAAS3kB,EAAKqS,KAAM1a,EAAG,QAC3C,IAAK,SAAU,CACd,GAAGkC,EAAS,MAAOI,GAAYtC,EAAG,YAC7B,UAAUktB,eAAgB,YAAa,OAAO,GAAIA,cAAc3rB,OAAOvB,OACvE,OAAOqwE,IAAkBrwE,GAAI6L,KAAK,WAAWvI,MAAM,IAAIhC,IAAI,SAASsC,GAAK,MAAOA,GAAExD,WAAW,OAGpG,KAAM,IAAI0D,OAAM,qBAAuBuE,EAAKwD,MAG7C,QAAS0kE,IAAgBrsE,EAAKmE,GAC7B,OAAOA,EAAKwD,MACX,IAAK,SAAU,MAAOxK,GAAOE,OAAO2C,GACpC,IAAK,SAAU,MAAOA,GACtB,IAAK,SAAU,MAAOA,GACtB,IAAK,OAAQ,MAAO8oB,GAAS3kB,EAAKqS,KAAMxW,EAAK,UAC7C,IAAK,SAAU,CACd,GAAGhC,EAAS,MAAOI,GAAY4B,EAAK,cAC/B,OAAOA,GAAIZ,MAAM,IAAIhC,IAAI,SAASsC,GAAK,MAAOA,GAAExD,WAAW,OAGlE,KAAM,IAAI0D,OAAM,qBAAuBuE,EAAKwD,MAI7C,QAAS2kE,IAAkBtsE,EAAKmE,GAC/B,OAAOA,EAAKwD,MACX,IAAK,UACL,IAAK,UACL,IAAK,SACJ,GAAImM,GAAO,EAEX,KAAI,GAAI/X,GAAI,EAAGA,EAAIiE,EAAI/D,SAAUF,EAAG+X,GAAQ1X,OAAOC,aAAa2D,EAAIjE,GACpE,OAAOoI,GAAKwD,MAAQ,SAAWxK,EAAOE,OAAOyW,GAAQ3P,EAAKwD,MAAQ,SAAWypB,GAAStd,GAAQA,EAC/F,IAAK,OAAQ,MAAOgV,GAAS3kB,EAAKqS,KAAMxW,GACxC,IAAK,SAAU,MAAOA,GACtB,QAAS,KAAM,IAAIJ,OAAM,qBAAuBuE,EAAKwD,QAIvD,QAAS4kE,IAAc1lB,EAAI1iD,GAC1BxI,GACAs+D,IAASpT,EACT,IAAI/qD,GAAI0wB,GAAIroB,MACZ,IAAGrI,EAAE4zD,WAAY,CAAE5zD,EAAEshD,OAAS,IAAMthD,GAAEsgC,WAAa,KACnD,GAAGtgC,EAAE6L,MAAQ,QAAS,CAAE7L,EAAE6L,KAAO,QAAU,IAAI3H,GAAOusE,GAAc1lB,EAAI/qD,EAAKA,GAAE6L,KAAO,OAAS,OAAOtI,GAAKW,GAC3G,MAAO0rE,IAAmB7kB,EAAI/qD,GAG/B,QAAS0wE,IAAU3lB,EAAI1iD,GACtBxI,GACAs+D,IAASpT,EACT,IAAI/qD,GAAI0wB,GAAIroB,MACZ,IAAGrI,EAAE4zD,WAAY,CAAE5zD,EAAEshD,OAAS,IAAMthD,GAAEsgC,WAAa,KACnD,GAAGtgC,EAAE6L,MAAQ,QAAS,CAAE7L,EAAE6L,KAAO,QAAU,IAAI3H,GAAOwsE,GAAU3lB,EAAI/qD,EAAKA,GAAE6L,KAAO,OAAS,OAAOtI,GAAKW,GACvG,GAAI4I,GAAM,CACV,IAAG9M,EAAEs/B,MAAO,CACX,SAAUt/B,GAAEs/B,OAAS,SAAUxyB,EAAM9M,EAAEs/B,UAClCxyB,GAAMi+C,EAAGvrB,WAAW9/B,QAAQM,EAAEs/B,MACnC,KAAIyrB,EAAGvrB,WAAW1yB,GAAM,KAAM,IAAIhJ,OAAM,oBAAsB9D,EAAEs/B,MAAQ,YAAgBt/B,GAAEs/B,OAE3F,OAAOt/B,EAAEmtC,UAAY,QACpB,IAAK,OACL,IAAK,OAAQ,MAAOkjC,IAAkBM,WAAW5lB,EAAI/qD,GAAIA,GACzD,IAAK,OACL,IAAK,OAAQ,MAAOqwE,IAAkBx4B,GAAKD,WAAWmT,EAAGtrB,OAAOsrB,EAAGvrB,WAAW1yB,IAAO9M,GAAIA,GACzF,IAAK,OACL,IAAK,OAAQ,MAAOqwE,IAAkBjP,GAAMxpB,WAAWmT,EAAGtrB,OAAOsrB,EAAGvrB,WAAW1yB,IAAO9M,GAAIA,GAC1F,IAAK,MAAO,MAAOuwE,IAAgBK,GAAa7lB,EAAGtrB,OAAOsrB,EAAGvrB,WAAW1yB,IAAO9M,GAAIA,GACnF,IAAK,MAAO,MAAOqwE,IAAkBQ,GAAa9lB,EAAGtrB,OAAOsrB,EAAGvrB,WAAW1yB,IAAO9M,GAAIA,EAAG,UACxF,IAAK,MAAO,MAAOqwE,IAAkBlxB,GAAIvH,WAAWmT,EAAGtrB,OAAOsrB,EAAGvrB,WAAW1yB,IAAO9M,GAAIA,GACvF,IAAK,MAAO,MAAOwwE,IAAkBn9B,GAAIuE,WAAWmT,EAAGtrB,OAAOsrB,EAAGvrB,WAAW1yB,IAAO9M,GAAIA,GACvF,IAAK,MAAO,MAAOqwE,IAAkB/vB,GAAI1I,WAAWmT,EAAGtrB,OAAOsrB,EAAGvrB,WAAW1yB,IAAO9M,GAAIA,GACvF,IAAK,MAAO,MAAOqwE,IAAkBb,IAAI53B,WAAWmT,EAAGtrB,OAAOsrB,EAAGvrB,WAAW1yB,IAAO9M,GAAIA,GACvF,IAAK,MAAO,MAAOqwE,IAAkBvwB,GAAIlI,WAAWmT,EAAGtrB,OAAOsrB,EAAGvrB,WAAW1yB,IAAO9M,GAAIA,GACvF,IAAK,OAAQ,MAAOqwE,IAAkBlG,GAAUpf,EAAI/qD,GAAIA,GACxD,IAAK,MAAO,MAAOwwE,IAAkBjB,IAAIuB,aAAa/lB,EAAGtrB,OAAOsrB,EAAGvrB,WAAW1yB,IAAO9M,GAAIA,GACzF,IAAK,MAAO,MAAOwwE,IAAkBjB,IAAIwB,YAAYhmB,EAAI/qD,GAAIA,GAC7D,IAAK,QAAS,IAAIA,EAAEw9B,KAAMx9B,EAAEw9B,KAAO,EACnC,IAAK,QAAS,IAAIx9B,EAAEw9B,KAAMx9B,EAAEw9B,KAAO,EACnC,IAAK,QAAS,IAAIx9B,EAAEw9B,KAAMx9B,EAAEw9B,KAAO,CAAG,OAAOgzC,IAAkBQ,eAAejmB,EAAI/qD,GAAIA,GACtF,IAAK,QAAS,IAAIA,EAAEw9B,KAAMx9B,EAAEw9B,KAAO,EACnC,IAAK,SACL,IAAK,OACL,IAAK,MAAO,IAAIx9B,EAAEw9B,KAAMx9B,EAAEw9B,KAAO,CAAG,OAAO2yC,IAAeplB,EAAI/qD,GAC9D,IAAK,QACL,IAAK,QACL,IAAK,QACL,IAAK,QACL,IAAK,MAAO,MAAO0vE,IAAe3kB,EAAI/qD,GACtC,QAAS,KAAM,IAAI8D,OAAO,0BAA4B9D,EAAEmtC,SAAW,OAIrE,QAAS8jC,IAAkBjxE,GAC1B,GAAGA,EAAEmtC,SAAU,MACf,IAAI+jC,IACHC,IAAO,QACPxnD,IAAO,OACPynD,IAAO,OACPC,WAAc,MACdC,QAAW,MAEZ,IAAIjnD,GAAMrqB,EAAE0a,KAAK7Z,MAAMb,EAAE0a,KAAK7K,YAAY,MAAMY,aAChD,IAAG4Z,EAAIrd,MAAM,cAAehN,EAAEmtC,SAAW9iB,EAAIxpB,MAAM,EACnDb,GAAEmtC,SAAW+jC,EAAIlxE,EAAEmtC,WAAantC,EAAEmtC,SAGnC,QAAS7qB,IAAcyoC,EAAIlyC,EAAUxQ,GACpC,GAAIrI,GAAIqI,KAAUrI,GAAE6L,KAAO,MAC3B7L,GAAE0a,KAAO7B,CACTo4D,IAAkBjxE,EAClB,OAAO0wE,IAAU3lB,EAAI/qD,GAGtB,QAASuxE,IAAkBxmB,EAAIlyC,EAAUxQ,GACxC,GAAIrI,GAAIqI,KAAUrI,GAAE6L,KAAO,MAC3B7L,GAAE0a,KAAO7B,CACTo4D,IAAkBjxE,EAClB,OAAOywE,IAAc1lB,EAAI/qD,GAI1B,QAASwxE,IAAe34D,EAAUkyC,EAAI1iD,EAAM4zB,GAC3C,GAAIj8B,GAAIqI,KAAUrI,GAAE6L,KAAO,MAC3B7L,GAAE0a,KAAO7B,CACTo4D,IAAkBjxE,EAClBA,GAAE6L,KAAO,QACT,IAAI4lE,GAAMx1C,CAAI,MAAKw1C,YAAeC,WAAWD,EAAM,CACnD,OAAO5kD,GAAIJ,UAAU5T,EAAU63D,GAAU3lB,EAAI/qD,GAAIyxE,GAElD,QAASE,IAAcryC,EAAO5xB,EAAG+K,EAAGo+B,EAAMr7B,EAAQo2D,EAAKhyC,EAAO5/B,GAC7D,GAAI+N,GAAKkwB,GAAWxlB,EACpB,IAAIo5D,GAAS7xE,EAAE6xE,OAAQn1D,EAAM1c,EAAE0c,MAAQyD,OAAOgP,UAAUC,eAAetqB,KAAK9E,EAAG,MAC/E,IAAI8xE,GAAU,IACd,IAAIxmD,GAAO9P,IAAW,OACtB,IAAGA,IAAW,EAAG,CAChB,GAAG2E,OAAO4xD,eAAgB,IAAM5xD,OAAO4xD,eAAezmD,EAAK,cAAe+J,MAAM5c,EAAGu5D,WAAW,QAAW,MAAMvvE,GAAK6oB,EAAI2mD,WAAax5D,MAChI6S,GAAI2mD,WAAax5D,EAEvB,IAAImnB,GAASN,EAAM7mB,GAAI,IAAK,GAAIP,GAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG,CAC3D,GAAInM,GAAM6zB,EAAQN,EAAM7mB,GAAGP,GAAKonB,EAAMuX,EAAK3+B,GAAKnK,EAChD,IAAGhC,IAAQ3J,WAAa2J,EAAIvG,IAAMpD,UAAW,CAC5C,GAAGyvE,IAAWzvE,UAAW,QACzB,IAAGwvE,EAAI15D,IAAM,KAAM,CAAEoT,EAAIsmD,EAAI15D,IAAM25D,EACnC,SAED,GAAItsE,GAAIwG,EAAIxG,CACZ,QAAOwG,EAAIvG,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,IAAIzB,OAAM,qBAAuBiI,EAAIvG,IAErD,GAAGosE,EAAI15D,IAAM,KAAM,CAClB,GAAG3S,GAAK,KAAM,CACb,GAAGwG,EAAIvG,GAAK,KAAOD,IAAM,KAAM+lB,EAAIsmD,EAAI15D,IAAM,SACxC,IAAG25D,IAAWzvE,UAAWkpB,EAAIsmD,EAAI15D,IAAM25D,MACvC,IAAGn1D,GAAOnX,IAAM,KAAM+lB,EAAIsmD,EAAI15D,IAAM,SACpC,cACC,CACNoT,EAAIsmD,EAAI15D,IAAMwE,GAAQ1c,EAAEkyE,YAAcnmE,EAAIvG,GAAK,IAAOD,EAAI45B,GAAYpzB,EAAIxG,EAAEvF,GAE7E,GAAGuF,GAAK,KAAMusE,EAAU,OAG1B,OAASxmD,IAAKA,EAAKwmD,QAASA,GAI7B,QAASn7B,IAAcrX,EAAOj3B,GAC7B,GAAGi3B,GAAS,MAAQA,EAAM,SAAW,KAAM,QAC3C,IAAIvzB,IAAOvG,EAAE,IAAID,EAAE,GAAIiW,EAAS,EAAGwD,EAAS,EAAG4yD,KAAUrsE,EAAE,EAAGuL,EAAG,EACjE,IAAIpD,IAAKrK,GAAGqK,EAAE,EAAE9J,EAAE,GAAGnB,GAAGiL,EAAE,EAAE9J,EAAE,GAC9B,IAAI5D,GAAIqI,KACR,IAAIq1B,GAAQ19B,EAAE09B,OAAS,KAAO19B,EAAE09B,MAAQ4B,EAAM,OAC9C,IAAGt/B,EAAEwb,SAAW,EAAGA,EAAS,MACvB,IAAGxb,EAAEwb,SAAW,IAAKA,EAAS,MAC9B,IAAGtY,MAAMS,QAAQ3D,EAAEwb,QAASA,EAAS,MACrC,IAAGxb,EAAEwb,QAAU,KAAMA,EAAS,CACnC,cAAckiB,IACb,IAAK,SAAUhwB,EAAIqxB,GAAkBrB,EAAQ,OAC7C,IAAK,SAAUhwB,EAAIqxB,GAAkBO,EAAM,QAAU5xB,GAAErK,EAAEqK,EAAIgwB,CAAO,OACpE,QAAShwB,EAAIgwB,GAEd,GAAGliB,EAAS,EAAGwD,EAAS,CACxB,IAAIjR,GAAKkwB,GAAWvwB,EAAErK,EAAEqK,EACxB,IAAImpC,KACJ,IAAI3yC,KACJ,IAAIiuE,GAAO,EAAGC,EAAU,CACxB,IAAIxyC,GAAQ18B,MAAMS,QAAQ27B,EAC1B,IAAI7mB,GAAI/K,EAAErK,EAAEqK,EAAGwK,EAAI,CACnB,IAAIm6D,KACJ,IAAGzyC,IAAUN,EAAM7mB,GAAI6mB,EAAM7mB,KAC7B,IAAIokC,GAAU78C,EAAEsyE,YAAchzC,EAAM,YACpC,IAAIsd,GAAU58C,EAAEsyE,YAAchzC,EAAM,YACpC,KAAIpnB,EAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG,CAC/B,IAAK2kC,EAAQ3kC,QAAc,OAAG,QAC9B2+B,GAAK3+B,GAAK8lB,GAAW9lB,EACrBnM,GAAM6zB,EAAQN,EAAM7mB,GAAGP,GAAKonB,EAAMuX,EAAK3+B,GAAKnK,EAC5C,QAAOyN,GACN,IAAK,GAAGo2D,EAAI15D,GAAKA,EAAIxK,EAAErK,EAAEO,CAAG,OAC5B,IAAK,GAAGguE,EAAI15D,GAAK2+B,EAAK3+B,EAAI,OAC1B,IAAK,GAAG05D,EAAI15D,GAAKlY,EAAEwb,OAAOtD,EAAIxK,EAAErK,EAAEO,EAAI,OACtC,QACC,GAAGmI,GAAO,KAAMA,GAAOlB,EAAG,UAAWrF,EAAG,IACxCsL,GAAKvL,EAAI45B,GAAYpzB,EAAK,KAAM/L,EAChCoyE,GAAUC,EAAW9sE,IAAM,CAC3B,KAAI6sE,EAASC,EAAW9sE,GAAK,MACxB,CACJ,EAAG,CAAEuL,EAAKvL,EAAI,IAAO6sE,UAAoBC,EAAWvhE,GAAMuhE,GAAW9sE,GAAK6sE,CAC1EC,GAAWvhE,GAAM,EAElB8gE,EAAI15D,GAAKpH,IAGZ,IAAK2H,EAAI/K,EAAErK,EAAEqK,EAAIsR,EAAQvG,GAAK/K,EAAEjL,EAAEiL,IAAK+K,EAAG,CACzC,IAAKmkC,EAAQnkC,QAAQklC,OAAQ,QAC7B,IAAIryB,GAAMqmD,GAAcryC,EAAO5xB,EAAG+K,EAAGo+B,EAAMr7B,EAAQo2D,EAAKhyC,EAAO5/B,EAC/D,IAAIsrB,EAAIwmD,UAAY,QAAWt2D,IAAW,EAAIxb,EAAEuyE,YAAc,QAAUvyE,EAAEuyE,WAAYruE,EAAIiuE,KAAU7mD,EAAIA,IAEzGpnB,EAAI/D,OAASgyE,CACb,OAAOjuE,GAGR,GAAIsuE,IAAO,IACX,SAASC,IAAanzC,EAAO5xB,EAAG+K,EAAGo+B,EAAMt8B,EAAI0oC,EAAIlC,EAAI/gD,GACpD,GAAI8xE,GAAU,IACd,IAAIxmD,MAAUonD,EAAM,GAAI3kE,EAAKkwB,GAAWxlB,EACxC,KAAI,GAAIP,GAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG,CACnC,IAAK2+B,EAAK3+B,GAAI,QACd,IAAInM,GAAM/L,EAAE4/B,OAASN,EAAM7mB,QAAQP,GAAIonB,EAAMuX,EAAK3+B,GAAKnK,EACvD,IAAGhC,GAAO,KAAM2mE,EAAM,OACjB,IAAG3mE,EAAIxG,GAAK,KAAM,CACtBusE,EAAU,KACVY,GAAM,IAAI1yE,EAAEkyE,YAAcnmE,EAAIvG,GAAK,IAAMuG,EAAIxG,EAAI45B,GAAYpzB,EAAK,KAAM/L,GACxE,KAAI,GAAIC,GAAI,EAAGwO,EAAK,EAAGxO,IAAMyyE,EAAIvyE,SAAUF,EAAG,IAAIwO,EAAKikE,EAAItyE,WAAWH,MAAQsa,GAAM9L,IAAOw0C,GAAMx0C,IAAO,IAAMzO,EAAE2yE,YAAa,CAACD,EAAM,IAAOA,EAAIzwE,QAAQuwE,GAAM,MAAQ,GAAM,OAC3K,GAAGE,GAAO,KAAMA,EAAM,WAChB,IAAG3mE,EAAI4F,GAAK,OAAS5F,EAAIqyC,EAAG,CAClC0zB,EAAU,KACVY,GAAM,IAAM3mE,EAAI4F,CAAG,IAAG+gE,EAAIhzE,QAAQ,MAAQ,EAAGgzE,EAAM,IAAMA,EAAIzwE,QAAQuwE,GAAM,MAAQ,QAC7EE,GAAM,EAEbpnD,GAAI/mB,KAAKmuE,GAEV,GAAG1yE,EAAEuyE,YAAc,OAAST,EAAS,MAAO,KAC5C,OAAOxmD,GAAI9qB,KAAKugD,GAGjB,QAAS8vB,IAAavxC,EAAOj3B,GAC5B,GAAInE,KACJ,IAAIlE,GAAIqI,GAAQ,QAAYA,CAC5B,IAAGi3B,GAAS,MAAQA,EAAM,SAAW,KAAM,MAAO,EAClD,IAAI5xB,GAAIqxB,GAAkBO,EAAM,QAChC,IAAIyhB,GAAK/gD,EAAE+gD,KAAO3+C,UAAYpC,EAAE+gD,GAAK,IAAKxmC,EAAKwmC,EAAG3gD,WAAW,EAC7D,IAAI6+C,GAAKj/C,EAAEi/C,KAAO78C,UAAYpC,EAAEi/C,GAAK,KAAMgE,EAAKhE,EAAG7+C,WAAW,EAC9D,IAAIwyE,GAAW,GAAIz8D,SAAQ4qC,GAAI,IAAM,MAAQA,GAAI,KACjD,IAAIz1B,GAAM,GAAIurB,IACd72C,GAAE4/B,MAAQ18B,MAAMS,QAAQ27B,EACxB,IAAIud,GAAU78C,EAAEsyE,YAAchzC,EAAM,YACpC,IAAIsd,GAAU58C,EAAEsyE,YAAchzC,EAAM,YACpC,KAAI,GAAIpnB,GAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG,KAAO2kC,EAAQ3kC,QAAc,OAAG2+B,EAAK3+B,GAAK8lB,GAAW9lB,EACzF,IAAIrN,GAAI,CACR,KAAI,GAAI4N,GAAI/K,EAAErK,EAAEqK,EAAG+K,GAAK/K,EAAEjL,EAAEiL,IAAK+K,EAAG,CACnC,IAAKmkC,EAAQnkC,QAAQklC,OAAQ,QAC7BryB,GAAMmnD,GAAanzC,EAAO5xB,EAAG+K,EAAGo+B,EAAMt8B,EAAI0oC,EAAIlC,EAAI/gD,EAClD,IAAGsrB,GAAO,KAAM,CAAE,SAClB,GAAGtrB,EAAE6yE,MAAOvnD,EAAMA,EAAIrpB,QAAQ2wE,EAAS,GACvC,IAAGtnD,GAAQtrB,EAAEuyE,YAAc,MAAQruE,EAAIK,MAAMsG,IAAMo0C,EAAK,IAAM3zB,SAExDtrB,GAAE4/B,KACT,OAAO17B,GAAI1D,KAAK,IAGjB,QAASowE,IAAatxC,EAAOj3B,GAC5B,IAAIA,EAAMA,IAAWA,GAAK04C,GAAK,IAAM14C,GAAK42C,GAAK,IAC/C,IAAI57C,GAAIwtE,GAAavxC,EAAOj3B,EAC5B,UAAUyyB,WAAY,aAAezyB,EAAKwD,MAAQ,SAAU,MAAOxI,EACnE,IAAIrD,GAAI86B,SAAS5O,MAAM3qB,OAAO,KAAM8B,EAAG,MACvC,OAAO/C,QAAOC,aAAa,KAAOD,OAAOC,aAAa,KAAOP,EAG9D,QAAS8yE,IAAkBxzC,GAC1B,GAAIz2B,GAAI,GAAI7H,EAAG+K,EAAI,EACnB,IAAGuzB,GAAS,MAAQA,EAAM,SAAW,KAAM,QAC3C,IAAI5xB,GAAIqxB,GAAkBO,EAAM,SAAUvxB,EAAK,GAAI8oC,KAAW3+B,CAC9D,IAAI66D,KACJ,IAAInzC,GAAQ18B,MAAMS,QAAQ27B,EAC1B,KAAIpnB,EAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG2+B,EAAK3+B,GAAK8lB,GAAW9lB,EACrD,KAAI,GAAIO,GAAI/K,EAAErK,EAAEqK,EAAG+K,GAAK/K,EAAEjL,EAAEiL,IAAK+K,EAAG,CACnC1K,EAAKkwB,GAAWxlB,EAChB,KAAIP,EAAIxK,EAAErK,EAAEO,EAAGsU,GAAKxK,EAAEjL,EAAEmB,IAAKsU,EAAG,CAC/BrP,EAAIguC,EAAK3+B,GAAKnK,CACd/M,GAAI4+B,GAASN,EAAM7mB,QAAQP,GAAKonB,EAAMz2B,EACtCkD,GAAM,EACN,IAAG/K,IAAMoB,UAAW,aACf,IAAGpB,EAAEo9C,GAAK,KAAM,CACpBv1C,EAAI7H,EAAEo9C,CACN,KAAIp9C,EAAE2Q,EAAG,QACT5F,GAAM/K,EAAE2Q,CACR,IAAG9I,EAAEnJ,QAAQ,OAAS,EAAGmJ,EAAIA,EAAI,IAAMA,EAExC,GAAG7H,EAAE2Q,GAAK,KAAM5F,EAAM/K,EAAE2Q,MACnB,IAAG3Q,EAAEwE,GAAK,IAAK,aACf,IAAGxE,EAAEwE,GAAK,KAAOxE,EAAEuE,GAAK,KAAMwG,EAAM,GAAK/K,EAAEuE,MAC3C,IAAGvE,EAAEwE,GAAK,IAAKuG,EAAM/K,EAAEuE,EAAI,OAAS,YACpC,IAAGvE,EAAE6J,IAAMzI,UAAW2J,EAAM,IAAM/K,EAAE6J,MACpC,IAAG7J,EAAEuE,IAAMnD,UAAW,aACtB,IAAGpB,EAAEwE,GAAK,IAAKuG,EAAM,IAAM/K,EAAEuE,MAC7BwG,GAAM,GAAG/K,EAAEuE,CAChBwtE,GAAKA,EAAK5yE,QAAU0I,EAAI,IAAMkD,GAGhC,MAAOgnE,GAGR,QAASC,IAAerzC,EAAKszC,EAAI5qE,GAChC,GAAIrI,GAAIqI,KACR,IAAI2W,KAAWhf,EAAEkzE,UACjB,IAAIrzC,GAAKF,KACT,IAAIG,GAAK,EAAGC,EAAK,CACjB,IAAGF,GAAM7/B,EAAEggC,QAAU,KAAM,CAC1B,SAAUhgC,GAAEggC,QAAU,SAAUF,EAAK9/B,EAAEggC,WAClC,CACJ,GAAIC,SAAiBjgC,GAAEggC,QAAU,SAAWtB,GAAY1+B,EAAEggC,QAAUhgC,EAAEggC,MACtEF,GAAKG,EAAQvyB,CAAGqyB,GAAKE,EAAQr8B,GAG/B,GAAIy5B,EACJ,IAAIK,IAAUr6B,GAAIO,EAAE,EAAG8J,EAAE,GAAIjL,GAAImB,EAAEm8B,EAAIryB,EAAEoyB,EAAKmzC,EAAG9yE,OAAS,EAAI6e,GAC9D,IAAG6gB,EAAG,QAAS,CACd,GAAIK,GAASnB,GAAkBc,EAAG,QAClCnC,GAAMj7B,EAAEmB,EAAIgC,KAAK0J,IAAIouB,EAAMj7B,EAAEmB,EAAGs8B,EAAOz9B,EAAEmB,EACzC85B,GAAMj7B,EAAEiL,EAAI9H,KAAK0J,IAAIouB,EAAMj7B,EAAEiL,EAAGwyB,EAAOz9B,EAAEiL,EACzC,IAAGoyB,IAAO,EAAG,CAAEA,EAAKI,EAAOz9B,EAAEiL,EAAI,CAAGgwB,GAAMj7B,EAAEiL,EAAIoyB,EAAKmzC,EAAG9yE,OAAS,EAAI6e,OAC/D,CACN,GAAG8gB,IAAO,EAAG,CAAEA,EAAK,CAAGpC,GAAMj7B,EAAEiL,EAAIulE,EAAG9yE,OAAS,EAAI6e,GAEpD,GAAI4yD,GAAM5xE,EAAEwb,WAActD,EAAI,CAE9B+6D,GAAG38D,QAAQ,SAAU68D,EAAI16D,GACxBuW,EAAKmkD,GAAI78D,QAAQ,SAAS+H,GACzB,IAAInG,EAAE05D,EAAIlyE,QAAQ2e,MAAQ,EAAGuzD,EAAI15D,EAAE05D,EAAIzxE,QAAUke,CACjD,IAAI9Y,GAAI4tE,EAAG90D,EACX,IAAI7Y,GAAI,GACR,IAAImuB,GAAI,EACR,IAAIy6B,GAAMxwB,IAAah6B,EAAEm8B,EAAK7nB,EAAExK,EAAEoyB,EAAKrnB,EAAIuG,GAC3Cqe,GAAO+1C,GAAiBvzC,EAAIuuB,EAC5B,IAAG7oD,SAAYA,KAAM,YAAcA,YAAa6D,OAAM,CACrDy2B,EAAGuuB,GAAO7oD,MACJ,CACN,SAAUA,IAAK,SAAUC,EAAI,QACxB,UAAUD,IAAK,UAAWC,EAAI,QAC9B,UAAUD,IAAK,SAAUC,EAAI,QAC7B,IAAGD,YAAa6D,MAAM,CAC1B5D,EAAI,GACJ,KAAIxF,EAAEugC,UAAW,CAAE/6B,EAAI,GAAKD,GAAIqqB,EAAQrqB,GACxCouB,EAAK3zB,EAAE+R,QAAU9M,EAAIkN,OAAO,QAExB,IAAG5M,IAAM,MAAQvF,EAAEqgC,UAAW,CAAE76B,EAAI,GAAKD,GAAI,EAClD,IAAI83B,EAAMwC,EAAGuuB,GAAO/wB,GAAS73B,EAAEA,EAAGD,EAAEA,OAC/B,CACJ83B,EAAK73B,EAAIA,CAAG63B,GAAK93B,EAAIA,QACd83B,GAAKxyB,QAAUwyB,GAAK5kB,CAC3B,IAAGkb,EAAG0J,EAAK1J,EAAIA,EAEhB,GAAGA,EAAG0J,EAAK1J,EAAIA,MAIlB+J,GAAMj7B,EAAEmB,EAAIgC,KAAK0J,IAAIouB,EAAMj7B,EAAEmB,EAAGm8B,EAAK6xC,EAAIzxE,OAAS,EAClD,IAAIggC,GAAMlC,GAAW6B,EACrB,IAAG9gB,EAAQ,IAAI9G,EAAI,EAAGA,EAAI05D,EAAIzxE,SAAU+X,EAAG2nB,EAAG7B,GAAW9lB,EAAI6nB,GAAMI,IAAQ36B,EAAE,IAAKD,EAAEqsE,EAAI15D,GACxF2nB,GAAG,QAAUjB,GAAalB,EAC1B,OAAOmC,GAER,QAASwzC,IAAcJ,EAAI5qE,GAAQ,MAAO2qE,IAAe,KAAMC,EAAI5qE,GAGnE,QAAS+qE,IAAiBvzC,EAAIpnB,EAAGP,GAEhC,SAAUO,IAAK,SAAU,CAExB,GAAGvV,MAAMS,QAAQk8B,GAAK,CACrB,GAAIyzC,GAAK50C,GAAYjmB,EACrB,KAAIonB,EAAGyzC,EAAG5lE,GAAImyB,EAAGyzC,EAAG5lE,KACpB,OAAOmyB,GAAGyzC,EAAG5lE,GAAG4lE,EAAG1vE,KAAOi8B,EAAGyzC,EAAG5lE,GAAG4lE,EAAG1vE,IAAM4B,EAAE,MAE/C,MAAOq6B,GAAGpnB,KAAOonB,EAAGpnB,IAAMjT,EAAE,MAG7B,SAAUiT,IAAK,SAAU,MAAO26D,IAAiBvzC,EAAIjC,GAAYnlB,GAEjE,OAAO26D,IAAiBvzC,EAAIjC,IAAalwB,EAAE+K,EAAE7U,EAAEsU,GAAG,KAInD,QAASq7D,IAAaxoB,EAAIyoB,GACzB,SAAUA,IAAM,SAAU,CACzB,GAAGA,GAAM,GAAKzoB,EAAGvrB,WAAWr/B,OAASqzE,EAAI,MAAOA,EAChD,MAAM,IAAI1vE,OAAM,uBAAyB0vE,OACnC,UAAUA,IAAM,SAAU,CAChC,GAAI1mE,GAAMi+C,EAAGvrB,WAAW9/B,QAAQ8zE,EAChC,IAAG1mE,GAAO,EAAG,MAAOA,EACpB,MAAM,IAAIhJ,OAAM,2BAA6B0vE,EAAK,SAC5C,MAAM,IAAI1vE,OAAM,sBAAwB0vE,EAAK,KAIrD,QAAS3R,MACR,OAASriC,cAAgBC,WAI1B,QAASqiC,IAAkB/W,EAAIlrB,EAAI5jB,GAClC,IAAIA,EAAM,IAAI,GAAIhc,GAAI,EAAGA,GAAK,QAAUA,EAAGgc,EAAO7Z,UAAW,GAAG2oD,EAAGvrB,WAAW9/B,QAAQuc,EAAO,QAAUhc,KAAO,EAAG,KACjH,KAAIgc,GAAQ8uC,EAAGvrB,WAAWr/B,QAAU,MAAQ,KAAM,IAAI2D,OAAM,sBAC5D+5D,IAAc5hD,EACd,IAAG8uC,EAAGvrB,WAAW9/B,QAAQuc,IAAS,EAAG,KAAM,IAAInY,OAAM,wBAA0BmY,EAAO,oBAEtF8uC,GAAGvrB,WAAWj7B,KAAK0X,EACnB8uC,GAAGtrB,OAAOxjB,GAAQ4jB,EAInB,QAAS4zC,IAA0B1oB,EAAIyoB,EAAIE,GAC1C,IAAI3oB,EAAGwL,SAAUxL,EAAGwL,WACpB,KAAIxL,EAAGwL,SAAS92B,OAAQsrB,EAAGwL,SAAS92B,SAEpC,IAAI3yB,GAAMymE,GAAaxoB,EAAIyoB,EAE3B,KAAIzoB,EAAGwL,SAAS92B,OAAO3yB,GAAMi+C,EAAGwL,SAAS92B,OAAO3yB,KAEhD,QAAO4mE,GACN,IAAK,IAAG,IAAK,IAAG,IAAK,GAAG,MACxB,QAAS,KAAM,IAAI5vE,OAAM,gCAAkC4vE,IAG5D3oB,EAAGwL,SAAS92B,OAAO3yB,GAAK4xD,OAASgV,EAIlC,QAASC,IAAuBt2C,EAAMvxB,GACrCuxB,EAAK1J,EAAI7nB,CACT,OAAOuxB,GAIR,QAASu2C,IAAmBv2C,EAAMrK,EAAQokC,GACzC,IAAIpkC,EAAQ,OACJqK,GAAKh4B,MACN,CACNg4B,EAAKh4B,GAAO+pC,OAAQpc,EACpB,IAAGokC,EAAS/5B,EAAKh4B,EAAEgyD,QAAUD,EAE9B,MAAO/5B,GAER,QAASw2C,IAAuBx2C,EAAMK,EAAO05B,GAAW,MAAOwc,IAAmBv2C,EAAM,IAAMK,EAAO05B,GAGrG,QAAS0c,IAAiBz2C,EAAM7S,EAAM6jC,GACrC,IAAIhxB,EAAKz5B,EAAGy5B,EAAKz5B,IACjBy5B,GAAKz5B,EAAEW,MAAMiB,EAAEglB,EAAMzF,EAAEspC,GAAQ,YAIhC,QAAS0lB,IAAwBl0C,EAAInC,EAAO4f,EAAS02B,GACpD,GAAI1c,SAAa55B,IAAS,SAAWA,EAAQqB,GAAkBrB,EAC/D,IAAIu2C,SAAgBv2C,IAAS,SAAWA,EAAQkB,GAAalB,EAC7D,KAAI,GAAIjlB,GAAI6+C,EAAIj0D,EAAEqK,EAAG+K,GAAK6+C,EAAI70D,EAAEiL,IAAK+K,EAAG,IAAI,GAAIP,GAAIo/C,EAAIj0D,EAAEO,EAAGsU,GAAKo/C,EAAI70D,EAAEmB,IAAKsU,EAAG,CAC/E,GAAImlB,GAAO+1C,GAAiBvzC,EAAIpnB,EAAGP,EACnCmlB,GAAK73B,EAAI,GACT63B,GAAK+gB,EAAI61B,QACF52C,GAAK93B,CACZ,IAAGkT,GAAK6+C,EAAIj0D,EAAEqK,GAAKwK,GAAKo/C,EAAIj0D,EAAEO,EAAG,CAChCy5B,EAAK1rB,EAAI2rC,CACT,IAAG02B,EAAS32C,EAAK91B,EAAI,MAGvB,MAAOs4B,GAGR,GAAI3T,KACH8R,WAAYA,GACZC,WAAYA,GACZL,YAAaA,GACbgB,aAAcA,GACdP,WAAYA,GACZH,WAAYA,GACZO,WAAYA,GACZC,YAAaA,GACbC,aAAcA,GACdQ,YAAaA,GACbO,cAAeA,GACfszC,eAAgBA,GAChBvQ,cAAeA,GACfhiC,aAAcA,GACd4yC,cAAeA,GACfa,eAAgB7Q,GAChBC,cAAeA,GACfuN,aAAcA,GACdD,aAAcA,GACdj6B,cAAeA,GACfyrB,cAAehB,GAAMxpB,WACrBk7B,kBAAmBA,GACnBqB,0BAA2Bx9B,GAC3By9B,eAAgBhB,GAChBvR,SAAUA,GACVC,kBAAmBA,GACnB2R,0BAA2BA,GAC3BE,uBAAwBA,GACxBC,mBAAoBA,GACpBC,uBAAwBA,GACxBC,iBAAkBA,GAClBC,wBAAyBA,GACzBzyD,QACC+yD,cAAe,EACfC,aAAc,EACdC,kBAAmB,GAIrB,UAAU5F,gBAAiB,YAAa9wE,EAAK8wE,aAAeA,YAC5D9wE,GAAK+c,UAAYA,EACjB/c,GAAKuhB,KAAOgwD,EACZvxE,GAAK22E,SAAWr1D,EAChBthB,GAAKshB,aAAeA,EACpBthB,GAAK0kB,MAAQmuD,EACb7yE,GAAK4uB,UAAYnK,EACjBzkB,GAAKykB,cAAgBA,EACrBzkB,GAAK2zE,eAAiBA,EACtB3zE,GAAKquB,MAAQA,EACbruB,GAAK42E,UAAYhE,EACjB5yE,GAAK62E,cAAgBnD,EACrB1zE,GAAKoH,IAAMA,CACX,UAAU0vE,YAAa,YAAa92E,EAAK+2E,OAASD,QAClD,UAAUt8D,KAAQ,YAAaxa,EAAKwa,IAAMA,CAC1C,UAAUyU,WAAY,YAAa,CACjC,GAAI+nD,IAASzyE,SACb,KAAIyyE,QAAYC,SAAUC,aAAaF,GAAOC,WAIhD,SAAUv8D,WAAY,YAAaza,cAAcya,aAC5C,UAAUy8D,UAAW,aAAeA,OAAOz8D,QAASza,cAAck3E,OAAOz8D,aACzE,UAAU08D,UAAW,YAAcA,OAAOC,IAAKD,OAAO,OAAQ,WAAa,IAAIp3E,KAAKE,QAASD,cAAcD,KAAO,OAAOA,YACzHC,eAAcD,KAEnB,UAAUs3E,UAAW,cAAgBA,OAAOt3E,KAAM,IAAMs3E,OAAOt3E,KAAOA,KAAQ,MAAM4E","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","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","DENSE","DIF_XL","Base64_map","Base64_encode","input","c3","e1","e2","e3","e4","isNaN","charAt","Base64_decode","replace","has_buf","Buffer","undefined","node","Buffer_from","nbfs","from","e","buf","enc","bind","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","toString","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","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","fs","get_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","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","console","error","message","_inflateRawSync","usz","_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","csz","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","utils","cfb_gc","cfb_del","splice","cfb_mov","old_name","new_name","writeFile","ReadShift","CheckField","_inflateRaw","_fs","require","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","decode","€","‚","ƒ","„","…","†","‡","ˆ","‰","Š","‹","Œ","Ž","‘","’","“","”","•","–","—","˜","™","š","›","œ","ž","Ÿ","dup","JSON","stringify","fuzzynum","Number","isFinite","NaN","wt","lower_months","fuzzydate","getYear","lower","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","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","xlsx","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","cpdoit","$cptable","__readInt16LE","__readInt32BE","oI","oR","oo","loc","this","lens","__writeUInt32LE","__writeInt32LE","__writeUInt16LE","WriteShift","cppayload","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","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","VT_I2","VT_I4","VT_BOOL","VT_VARIANT","VT_UI4","VT_LPSTR","VT_FILETIME","VT_BLOB","VT_CF","VT_VECTOR","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?","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","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","aoa","sheet_to_json","headers","cols","hcnt","coltypes","colwidths","coldecimals","guess","_guess","hf","_f","hb","rout","_n","_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","rstr","record","C_seen_K","C_seen_X","C_seen_S","C_seen_E","formula","rc_to_a1","shrbase","shift_formula_str","F_seen","hidden","process_col","hpt","hpx","pt2px","sylk_to_sheet","aoasht","sylk_to_workbook","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","sheet_to_dif","push_field","pf","topic","push_value","po","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","cellText","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","wb","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","_shapeid","write_comments_vml","csize","bbox","xmlns:v","xmlns:o","xmlns:x","xmlns:mv","v:ext","joinstyle","gradientshapeok","o:connecttype","o:spt","coordsize","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","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","sname","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","Workbook","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","names","Name","Sheet","Ref","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","write_cs_xml","WBPropsDef","WBViewDef","SheetDef","CalcPrDef","push_defaults_array","push_defaults","parse_wb_defaults","WBProps","CalcPr","WBView","safe1904","badchars","check_ws_name","_good","check_wb_names","N","codes","cn","check_wb","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_theme","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","write_wb","write_wb_bin","write_ws","write_ws_bin","write_cs","write_cs_bin","write_sty","write_sty_bin","write_sst","write_sst_bin","write_cmnt","write_comments_bin","write_xlmeta","write_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","or_R","or_C","getElementsByTagName","is_dom_element_hidden","display","elts","hasAttribute","getAttribute","innerHTML","Aelts","Aelti","parse_dom_table","table_to_book","element","get_computed_style","get_get_computed_style_function","getPropertyValue","ownerDocument","defaultView","getComputedStyle","parse_text_p","fixed","number_formats_ods","day","month","year","hours","minutes","seconds","am-pm","day-of-week","era","quarter","parse_content_xml","NFtag","pidx","sheetag","rowtag","ctag","textp","textpidx","textptag","textR","row_ol","number_format_map","mrange","mR","mC","rowpeat","colpeat","atag","_Ref","creator","creatoridx","isstub","intable","lastIndex","rptR","rpt","nrange","ptp","bookSheets","parse_ods","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_content_ods","write_text_p","null_cell_xml","covered_cell_xml","mi","ods","ROWS","skip","_Fref","text_p","_tgt","xlink:href","write_automatic_styles_ods","cidx","colobj","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","entries","dir","binname","bookProps","link","propdata","pluck","Custprops","deps","bookDeps","wbsheets","wbext","wbrelsi","wbrelsfile","nmode","wsloop","snjseen","snj","Directory","Deps","Styles","bookFiles","bookVBA","bin","parse_xlsxcfb","parse_DataSpaceVersionInfo","dsm","parse_DataSpaceMap","comps","seds","parse_DataSpaceDefinition","parse_Primary","einfo","parse_EncryptionInfo","decrypt_agile","decrypt_std76","write_numbers_iwa","write_zip_xlsxb","write_zip_xlsx","foo","vbafmt","General","_sn","_i","wsrels","_type","need_vml","rId1","needtc","read_cfb","parse_xlscfb","read_zip","read_plaintext","main","parse_xlml","read_plaintext_raw","read_utf16","bstrify","read_prn","readSync","ab","vu","WK_","RTF","write_cfb_ctr","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_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","JS","ws_get_cell_stub","json_to_sheet","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","table_to_sheet","sheet_to_row_object_array","sheet_get_cell","SHEET_VISIBLE","SHEET_HIDDEN","SHEET_VERY_HIDDEN","readFile","writeXLSX","writeFileXLSX","__stream","stream","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/dist/xlsx.zahl.js b/dist/xlsx.zahl.js new file mode 100644 index 0000000..6f16702 --- /dev/null +++ b/dist/xlsx.zahl.js @@ -0,0 +1,4 @@ +var XLSX_ZAHL_PAYLOAD = "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"; +if(typeof module !== "undefined") module.exports = XLSX_ZAHL_PAYLOAD; +else if(typeof global !== "undefined") global.XLSX_ZAHL_PAYLOAD = XLSX_ZAHL_PAYLOAD; +else if(typeof window !== "undefined") window.XLSX_ZAHL_PAYLOAD = XLSX_ZAHL_PAYLOAD; diff --git a/dist/xlsx.zahl.mjs b/dist/xlsx.zahl.mjs new file mode 100644 index 0000000..ab2ed02 --- /dev/null +++ b/dist/xlsx.zahl.mjs @@ -0,0 +1,2 @@ +var XLSX_ZAHL_PAYLOAD = "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"; +export default XLSX_ZAHL_PAYLOAD; diff --git a/docbits/30_export.md b/docbits/30_export.md index e479c42..5471a27 100644 --- a/docbits/30_export.md +++ b/docbits/30_export.md @@ -258,5 +258,60 @@ stream.pipe(conv); conv.pipe(process.stdout); +
+ Exporting NUMBERS files (click to show) + +The NUMBERS writer requires a fairly large base. The supplementary `xlsx.zahl` +scripts provide support. `xlsx.zahl.js` is designed for standalone and NodeJS +use, while `xlsx.zahl.mjs` is suitable for ESM. + +_Browser_ + +```html + + + + +``` + +_Node_ + +```js +var XLSX = require("./xlsx.flow"); +var XLSX_ZAHL = require("./dist/xlsx.zahl"); +var wb = XLSX.utils.book_new(); var ws = XLSX.utils.aoa_to_sheet([ + ["SheetJS", "<3","விரிதாள்"], + [72,,"Arbeitsblätter"], + [,62,"数据"], + [true,false,], +]); XLSX.utils.book_append_sheet(wb, ws, "Sheet1"); +XLSX.writeFile(wb, "textport.numbers", {numbers: XLSX_ZAHL, compression: true}); +``` + +_Deno_ + +```ts +import * as XLSX from './xlsx.mjs'; +import XLSX_ZAHL from './dist/xlsx.zahl.mjs'; + +var wb = XLSX.utils.book_new(); var ws = XLSX.utils.aoa_to_sheet([ + ["SheetJS", "<3","விரிதாள்"], + [72,,"Arbeitsblätter"], + [,62,"数据"], + [true,false,], +]); XLSX.utils.book_append_sheet(wb, ws, "Sheet1"); +XLSX.writeFile(wb, "textports.numbers", {numbers: XLSX_ZAHL, compression: true}); +``` + +
+ pipes write streams to nodejs response. diff --git a/docbits/81_writeopts.md b/docbits/81_writeopts.md index 6ce7320..52bc8a1 100644 --- a/docbits/81_writeopts.md +++ b/docbits/81_writeopts.md @@ -13,6 +13,7 @@ The exported `write` and `writeFile` functions accept an options argument: |`Props` | | Override workbook properties when writing ** | |`themeXLSX` | | Override theme XML when writing XLSX/XLSB/XLSM ** | |`ignoreEC` | `true` | Suppress "number as text" errors ** | +|`numbers` | | Payload for NUMBERS export ** | - `bookSST` is slower and more memory intensive, but has better compatibility with older versions of iOS Numbers @@ -28,6 +29,8 @@ The exported `write` and `writeFile` functions accept an options argument: - Due to a bug in the program, some features like "Text to Columns" will crash Excel on worksheets where error conditions are ignored. The writer will mark files to ignore the error by default. Set `ignoreEC` to `false` to suppress. +- Due to the size of the data, the NUMBERS data is not included by default. The + included `xlsx.zahl.js` and `xlsx.zahl.mjs` scripts include the data. ### Supported Output Formats @@ -45,6 +48,7 @@ output formats. The specific file type is controlled with `bookType` option: | `biff3` | `.xls` | none | single | Excel 3.0 Worksheet Format | | `biff2` | `.xls` | none | single | Excel 2.0 Worksheet Format | | `xlml` | `.xls` | none | multi | Excel 2003-2004 (SpreadsheetML) | +| `numbers` |`.numbers`| ZIP | single | Numbers 3.0+ Spreadsheet | | `ods` | `.ods` | ZIP | multi | OpenDocument Spreadsheet | | `fods` | `.fods` | none | multi | Flat OpenDocument Spreadsheet | | `wk3` | `.wk3` | none | multi | Lotus Workbook (WK3) | diff --git a/docbits/85_filetype.md b/docbits/85_filetype.md index 675e97f..b02abd2 100644 --- a/docbits/85_filetype.md +++ b/docbits/85_filetype.md @@ -20,7 +20,7 @@ Despite the library name `xlsx`, it supports numerous spreadsheet file formats: | Lotus Formatted Text (PRN) | ✔ | ✔ | | UTF-16 Unicode Text (TXT) | ✔ | ✔ | | **Other Workbook/Worksheet Formats** |:-----:|:-----:| -| Numbers 3.0+ / iWork 2013+ Spreadsheet (NUMBERS) | ✔ | | +| Numbers 3.0+ / iWork 2013+ Spreadsheet (NUMBERS) | ✔ | ✔ | | OpenDocument Spreadsheet (ODS) | ✔ | ✔ | | Flat XML ODF Spreadsheet (FODS) | ✔ | ✔ | | Uniform Office Format Spreadsheet (标文通 UOS1/UOS2) | ✔ | | @@ -169,6 +169,8 @@ The parser focuses on extracting raw data from tables. Numbers technically supports multiple tables in a logical worksheet, including custom titles. This parser will generate one worksheet per Numbers table. +The writer currently exports a small range from the first worksheet. + - **OpenDocument Spreadsheet (ODS/FODS)** ODS is an XML-in-ZIP format akin to XLSX while FODS is an XML format akin to diff --git a/formats.png b/formats.png index 0b2cad7..dd478aa 100644 Binary files a/formats.png and b/formats.png differ diff --git a/misc/docs/README.md b/misc/docs/README.md index c8ce25c..c2a74f2 100644 --- a/misc/docs/README.md +++ b/misc/docs/README.md @@ -1656,6 +1656,58 @@ stream.pipe(conv); conv.pipe(process.stdout); ``` + +The NUMBERS writer requires a fairly large base. The supplementary `xlsx.zahl` +scripts provide support. `xlsx.zahl.js` is designed for standalone and NodeJS +use, while `xlsx.zahl.mjs` is suitable for ESM. + +_Browser_ + +```html + + + + +``` + +_Node_ + +```js +var XLSX = require("./xlsx.flow"); +var XLSX_ZAHL = require("./dist/xlsx.zahl"); +var wb = XLSX.utils.book_new(); var ws = XLSX.utils.aoa_to_sheet([ + ["SheetJS", "<3","விரிதாள்"], + [72,,"Arbeitsblätter"], + [,62,"数据"], + [true,false,], +]); XLSX.utils.book_append_sheet(wb, ws, "Sheet1"); +XLSX.writeFile(wb, "textport.numbers", {numbers: XLSX_ZAHL, compression: true}); +``` + +_Deno_ + +```ts +import * as XLSX from './xlsx.mjs'; +import XLSX_ZAHL from './dist/xlsx.zahl.mjs'; + +var wb = XLSX.utils.book_new(); var ws = XLSX.utils.aoa_to_sheet([ + ["SheetJS", "<3","விரிதாள்"], + [72,,"Arbeitsblätter"], + [,62,"数据"], + [true,false,], +]); XLSX.utils.book_append_sheet(wb, ws, "Sheet1"); +XLSX.writeFile(wb, "textports.numbers", {numbers: XLSX_ZAHL, compression: true}); +``` + + pipes write streams to nodejs response. ### Generating JSON and JS Data @@ -3171,6 +3223,7 @@ The exported `write` and `writeFile` functions accept an options argument: |`Props` | | Override workbook properties when writing ** | |`themeXLSX` | | Override theme XML when writing XLSX/XLSB/XLSM ** | |`ignoreEC` | `true` | Suppress "number as text" errors ** | +|`numbers` | | Payload for NUMBERS export ** | - `bookSST` is slower and more memory intensive, but has better compatibility with older versions of iOS Numbers @@ -3186,6 +3239,8 @@ The exported `write` and `writeFile` functions accept an options argument: - Due to a bug in the program, some features like "Text to Columns" will crash Excel on worksheets where error conditions are ignored. The writer will mark files to ignore the error by default. Set `ignoreEC` to `false` to suppress. +- Due to the size of the data, the NUMBERS data is not included by default. The + included `xlsx.zahl.js` and `xlsx.zahl.mjs` scripts include the data. ### Supported Output Formats @@ -3203,6 +3258,7 @@ output formats. The specific file type is controlled with `bookType` option: | `biff3` | `.xls` | none | single | Excel 3.0 Worksheet Format | | `biff2` | `.xls` | none | single | Excel 2.0 Worksheet Format | | `xlml` | `.xls` | none | multi | Excel 2003-2004 (SpreadsheetML) | +| `numbers` |`.numbers`| ZIP | single | Numbers 3.0+ Spreadsheet | | `ods` | `.ods` | ZIP | multi | OpenDocument Spreadsheet | | `fods` | `.fods` | none | multi | Flat OpenDocument Spreadsheet | | `wk3` | `.wk3` | none | multi | Lotus Workbook (WK3) | @@ -3725,7 +3781,7 @@ Despite the library name `xlsx`, it supports numerous spreadsheet file formats: | Lotus Formatted Text (PRN) | ✔ | ✔ | | UTF-16 Unicode Text (TXT) | ✔ | ✔ | | **Other Workbook/Worksheet Formats** |:-----:|:-----:| -| Numbers 3.0+ / iWork 2013+ Spreadsheet (NUMBERS) | ✔ | | +| Numbers 3.0+ / iWork 2013+ Spreadsheet (NUMBERS) | ✔ | ✔ | | OpenDocument Spreadsheet (ODS) | ✔ | ✔ | | Flat XML ODF Spreadsheet (FODS) | ✔ | ✔ | | Uniform Office Format Spreadsheet (标文通 UOS1/UOS2) | ✔ | | @@ -3872,6 +3928,8 @@ The parser focuses on extracting raw data from tables. Numbers technically supports multiple tables in a logical worksheet, including custom titles. This parser will generate one worksheet per Numbers table. +The writer currently exports a small range from the first worksheet. + - **OpenDocument Spreadsheet (ODS/FODS)** ODS is an XML-in-ZIP format akin to XLSX while FODS is an XML format akin to diff --git a/misc/formats.dot b/misc/formats.dot index 7d64ec6..806fbc6 100644 --- a/misc/formats.dot +++ b/misc/formats.dot @@ -65,6 +65,7 @@ digraph G { 123 -> csf qpw -> csf nums -> csf + csf -> nums } subgraph WORKSHEET { edge [color=aquamarine4]; diff --git a/modules/.gitignore b/modules/.gitignore index 7d3f4bb..5bccb09 100644 --- a/modules/.gitignore +++ b/modules/.gitignore @@ -5,3 +5,5 @@ test_files *.[Jj][Pp][Gg] *.[Pp][Ll][Ii][Ss][Tt] DocumentIdentifier +xlsx.zahl.* +src/numbers.ts diff --git a/modules/83_numbers.js b/modules/83_numbers.js index bd7c4d0..f78d937 100644 --- a/modules/83_numbers.js +++ b/modules/83_numbers.js @@ -5,6 +5,19 @@ function u8_to_dataview(array) { function u8str(u8) { return typeof TextDecoder != "undefined" ? new TextDecoder().decode(u8) : utf8read(a2s(u8)); } +function stru8(str) { + return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); +} +function u8contains(body, search) { + outer: + for (var L = 0; 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; @@ -29,6 +42,15 @@ function readDecimal128LE(buf, offset) { mantissa = mantissa * 256 + buf[j]; return (buf[offset + 15] & 128 ? -mantissa : mantissa) * Math.pow(10, exp - 6176); } +function writeDecimal128LE(buf, offset, value) { + var exp = Math.floor(value == 0 ? 0 : Math.LOG10E * Math.log(Math.abs(value))) + 6176 - 20; + var mantissa = value / Math.pow(10, exp - 6176); + buf[offset + 15] |= exp >> 7; + buf[offset + 14] |= (exp & 127) << 1; + for (var i = 0; mantissa >= 1; ++i, mantissa /= 256) + buf[offset + i] = mantissa & 255; + buf[offset + 15] |= value >= 0 ? 0 : 128; +} function parse_varint49(buf, ptr) { var l = ptr ? ptr[0] : 0; var usz = buf[l] & 127; @@ -154,7 +176,7 @@ function parse_shallow(buf) { default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { offset: off, data: res, type: type }; + var v = { data: res, type: type }; if (out[num] == null) out[num] = [v]; else @@ -166,6 +188,8 @@ function write_shallow(proto) { var out = []; proto.forEach(function(field, idx) { field.forEach(function(item) { + if (!item.data) + return; out.push(write_varint49(idx * 8 + item.type)); if (item.type == 2) out.push(write_varint49(item.data.length)); @@ -175,21 +199,12 @@ function write_shallow(proto) { return u8concat(out); } function mappa(data, cb) { - if (!data) - return []; - return data.map(function(d) { - var _a; - try { - return cb(d.data); - } catch (e) { - var m = (_a = e.message) == null ? void 0 : _a.match(/at offset (\d+)/); - if (m) - e.message = e.message.replace(/at offset (\d+)/, "at offset " + (+m[1] + d.offset)); - throw e; - } - }); + return (data == null ? void 0 : data.map(function(d) { + return cb(d.data); + })) || []; } function parse_iwa_file(buf) { + var _a; var out = [], ptr = [0]; while (ptr[0] < buf.length) { var len = parse_varint49(buf, ptr); @@ -208,10 +223,35 @@ function parse_iwa_file(buf) { }); ptr[0] += fl; }); + if ((_a = ai[3]) == null ? void 0 : _a[0]) + res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; out.push(res); } return out; } +function write_iwa_file(ias) { + var bufs = []; + ias.forEach(function(ia) { + var ai = []; + ai[1] = [{ data: write_varint49(ia.id), type: 0 }]; + ai[2] = []; + if (ia.merge != null) + ai[3] = [{ data: write_varint49(+!!ia.merge), type: 0 }]; + var midata = []; + ia.messages.forEach(function(mi) { + midata.push(mi.data); + mi.meta[3] = [{ type: 0, data: write_varint49(mi.data.length) }]; + ai[2].push({ data: write_shallow(mi.meta), type: 2 }); + }); + var aipayload = write_shallow(ai); + bufs.push(write_varint49(aipayload.length)); + bufs.push(aipayload); + midata.forEach(function(mid) { + return bufs.push(mid); + }); + }); + return u8concat(bufs); +} function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); @@ -366,7 +406,7 @@ function parse_old_storage(buf, sst, rsst, v) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -388,7 +428,7 @@ function parse_old_storage(buf, sst, rsst, v) { } return ret; } -function parse_storage(buf, sst, rsst) { +function parse_new_storage(buf, sst, rsst) { var dv = u8_to_dataview(buf); var flags = dv.getUint32(8, true); var data_offset = 12; @@ -430,7 +470,7 @@ function parse_storage(buf, sst, rsst) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -451,6 +491,66 @@ function parse_storage(buf, sst, rsst) { } return ret; } +function write_new_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 5; + switch (cell.t) { + case "n": + out[1] = 2; + writeDecimal128LE(out, l, cell.v); + flags |= 1; + l += 16; + break; + case "b": + out[1] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 2; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[1] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 8; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(8, flags, true); + return out.slice(0, l); +} +function write_old_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 3; + switch (cell.t) { + case "n": + out[2] = 2; + dv.setFloat64(l, cell.v, true); + flags |= 32; + l += 8; + break; + case "b": + out[2] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 32; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[2] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 16; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(4, flags, true); + return out.slice(0, l); +} function parse_cell_storage(buf, sst, rsst) { switch (buf[0]) { case 0: @@ -459,7 +559,7 @@ function parse_cell_storage(buf, sst, rsst) { case 3: return parse_old_storage(buf, sst, rsst, buf[0]); case 5: - return parse_storage(buf, sst, rsst); + return parse_new_storage(buf, sst, rsst); default: throw new Error("Unsupported payload version ".concat(buf[0])); } @@ -468,6 +568,11 @@ function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); return parse_varint49(pb[1][0].data); } +function write_TSP_Reference(idx) { + var out = []; + out[1] = [{ type: 0, data: write_varint49(idx) }]; + return write_shallow(out); +} function parse_TST_TableDataList(M, root) { var pb = parse_shallow(root.data); var type = varint_to_i32(pb[1][0].data); @@ -526,7 +631,8 @@ function parse_TST_TileRowInfo(u8, type) { var cells = []; for (C = 0; C < offsets.length - 1; ++C) cells[offsets[C][0]] = used_storage.subarray(offsets[C][1] * width, offsets[C + 1][1] * width); - cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); + if (offsets.length >= 1) + cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); return { R: R, cells: cells }; } function parse_TST_Tile(M, root) { @@ -632,7 +738,7 @@ function parse_TN_DocumentArchive(M, root) { } function parse_numbers_iwa(cfb) { var _a, _b, _c, _d; - var out = {}, indices = []; + var M = {}, indices = []; cfb.FullPaths.forEach(function(p) { if (p.match(/\.iwpv2/)) throw new Error("Unsupported password protection"); @@ -653,16 +759,16 @@ function parse_numbers_iwa(cfb) { return console.log("## " + (e.message || e)); } packets.forEach(function(packet) { - out[packet.id] = packet.messages; + M[packet.id] = packet.messages; indices.push(packet.id); }); }); if (!indices.length) throw new Error("File has no messages"); - var docroot = ((_d = (_c = (_b = (_a = out == null ? void 0 : out[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(out[1][0].meta[1][0].data) == 1 && out[1][0]; + var docroot = ((_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) == 1 && M[1][0]; if (!docroot) indices.forEach(function(idx) { - out[idx].forEach(function(iwam) { + M[idx].forEach(function(iwam) { var mtype = varint_to_i32(iwam.meta[1][0].data) >>> 0; if (mtype == 1) { if (!docroot) @@ -674,5 +780,323 @@ function parse_numbers_iwa(cfb) { }); if (!docroot) throw new Error("Cannot find Document root"); - return parse_TN_DocumentArchive(out, docroot); + return parse_TN_DocumentArchive(M, docroot); +} +function write_tile_row(tri, data, SST) { + var _a, _b, _c, _d; + 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 wide_offsets = ((_d = (_c = tri[8]) == null ? void 0 : _c[0]) == null ? void 0 : _d.data) && varint_to_i32(tri[8][0].data) > 0 || false; + if (wide_offsets) + throw "Math only works with normal offsets"; + var cnt = 0; + var dv = u8_to_dataview(tri[7][0].data), last_offset = 0, cell_storage = []; + var _dv = u8_to_dataview(tri[4][0].data), _last_offset = 0, _cell_storage = []; + for (var C = 0; C < data.length; ++C) { + if (data[C] == null) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535); + continue; + } + dv.setUint16(C * 2, last_offset, true); + _dv.setUint16(C * 2, _last_offset, true); + var celload, _celload; + switch (typeof data[C]) { + case "string": + celload = write_new_storage({ t: "s", v: data[C] }, SST); + _celload = write_old_storage({ t: "s", v: data[C] }, SST); + break; + case "number": + celload = write_new_storage({ t: "n", v: data[C] }, SST); + _celload = write_old_storage({ t: "n", v: data[C] }, SST); + break; + case "boolean": + celload = write_new_storage({ t: "b", v: data[C] }, SST); + _celload = write_old_storage({ t: "b", v: data[C] }, SST); + break; + default: + throw new Error("Unsupported value " + data[C]); + } + cell_storage.push(celload); + last_offset += celload.length; + _cell_storage.push(_celload); + _last_offset += _celload.length; + ++cnt; + } + tri[2][0].data = write_varint49(cnt); + for (; C < tri[7][0].data.length / 2; ++C) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535, true); + } + tri[6][0].data = u8concat(cell_storage); + tri[3][0].data = u8concat(_cell_storage); + return cnt; +} +function write_numbers_iwa(wb, opts) { + if (!opts || !opts.numbers) + throw new Error("Must pass a `numbers` option -- check the README"); + var ws = wb.Sheets[wb.SheetNames[0]]; + if (wb.SheetNames.length > 1) + console.error("The Numbers writer currently writes only the first table"); + var range = decode_range(ws["!ref"]); + range.s.r = range.s.c = 0; + var trunc = false; + if (range.e.c > 9) { + trunc = true; + range.e.c = 9; + } + if (range.e.r > 49) { + trunc = true; + range.e.r = 49; + } + if (trunc) + console.error("The Numbers writer is currently limited to ".concat(encode_range(range))); + var data = sheet_to_json(ws, { range: range, header: 1 }); + var SST = ["~Sh33tJ5~"]; + data.forEach(function(row) { + return row.forEach(function(cell) { + if (typeof cell == "string") + SST.push(cell); + }); + }); + var dependents = {}; + var indices = []; + var cfb = CFB.read(opts.numbers, { type: "base64" }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (fi.type != 2) + return; + if (!fi.name.match(/\.iwa/)) + return; + var old_content = fi.content; + var raw1 = decompress_iwa_file(old_content); + var x2 = parse_iwa_file(raw1); + x2.forEach(function(packet2) { + indices.push(packet2.id); + dependents[packet2.id] = { deps: [], location: fp, type: varint_to_i32(packet2.messages[0].meta[1][0].data) }; + }); + }); + indices.sort(function(x2, y2) { + return x2 - y2; + }); + var indices_varint = indices.filter(function(x2) { + return x2 > 1; + }).map(function(x2) { + return [x2, write_varint49(x2)]; + }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (!fi.name.match(/\.iwa/)) + return; + var x2 = parse_iwa_file(decompress_iwa_file(fi.content)); + x2.forEach(function(ia) { + ia.messages.forEach(function(m) { + 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); + } + }); + }); + }); + }); + function get_unique_msgid() { + for (var i = 927262; i < 2e6; ++i) + if (!dependents[i]) + return i; + throw new Error("Too many messages"); + } + var entry = CFB.find(cfb, dependents[1].location); + var x = parse_iwa_file(decompress_iwa_file(entry.content)); + var docroot; + for (var xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if (packet.id == 1) + docroot = packet; + } + var sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[1][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + var pb = parse_shallow(docroot.messages[0].data); + { + pb[6][0].data = write_varint49(range.e.r + 1); + pb[7][0].data = write_varint49(range.e.c + 1); + var cruidsref = parse_TSP_Reference(pb[46][0].data); + var oldbucket = CFB.find(cfb, dependents[cruidsref].location); + var _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + for (var j = 0; j < _x.length; ++j) { + if (_x[j].id == cruidsref) + break; + } + if (_x[j].id != cruidsref) + throw "Bad ColumnRowUIDMapArchive"; + var cruids = parse_shallow(_x[j].messages[0].data); + cruids[1] = []; + cruids[2] = [], cruids[3] = []; + for (var C = 0; C <= range.e.c; ++C) { + var uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(C + 420690) }]; + cruids[1].push({ type: 2, data: write_shallow(uuid) }); + cruids[2].push({ type: 0, data: write_varint49(C) }); + cruids[3].push({ type: 0, data: write_varint49(C) }); + } + cruids[4] = []; + cruids[5] = [], cruids[6] = []; + for (var R = 0; R <= range.e.r; ++R) { + uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(R + 726270) }]; + cruids[4].push({ type: 2, data: write_shallow(uuid) }); + cruids[5].push({ type: 0, data: write_varint49(R) }); + cruids[6].push({ type: 0, data: write_varint49(R) }); + } + _x[j].messages[0].data = write_shallow(cruids); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + delete pb[46]; + var store = parse_shallow(pb[4][0].data); + { + store[7][0].data = write_varint49(range.e.r + 1); + var row_headers = parse_shallow(store[1][0].data); + var row_header_ref = parse_TSP_Reference(row_headers[2][0].data); + oldbucket = CFB.find(cfb, dependents[row_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != row_header_ref) + throw "Bad HeaderStorageBucket"; + var base_bucket = parse_shallow(_x[0].messages[0].data); + for (R = 0; R < data.length; ++R) { + var _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(R); + _bucket[4][0].data = write_varint49(data[R].length); + base_bucket[2][R] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var col_header_ref = parse_TSP_Reference(store[2][0].data); + oldbucket = CFB.find(cfb, dependents[col_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != col_header_ref) + throw "Bad HeaderStorageBucket"; + base_bucket = parse_shallow(_x[0].messages[0].data); + for (C = 0; C <= range.e.c; ++C) { + _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(C); + _bucket[4][0].data = write_varint49(range.e.r + 1); + base_bucket[2][C] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var sstref = parse_TSP_Reference(store[4][0].data); + (function() { + var sentry = CFB.find(cfb, dependents[sstref].location); + var sx = parse_iwa_file(decompress_iwa_file(sentry.content)); + var sstroot; + for (var sxi = 0; sxi < sx.length; ++sxi) { + var packet2 = sx[sxi]; + if (packet2.id == sstref) + sstroot = packet2; + } + var sstdata = parse_shallow(sstroot.messages[0].data); + { + sstdata[3] = []; + var newsst = []; + SST.forEach(function(str, i) { + newsst[1] = [{ type: 0, data: write_varint49(i) }]; + newsst[2] = [{ type: 0, data: write_varint49(1) }]; + newsst[3] = [{ type: 2, data: stru8(str) }]; + sstdata[3].push({ type: 2, data: write_shallow(newsst) }); + }); + } + sstroot.messages[0].data = write_shallow(sstdata); + var sy = write_iwa_file(sx); + var raw32 = compress_iwa_file(sy); + sentry.content = raw32; + sentry.size = sentry.content.length; + })(); + var tile = parse_shallow(store[3][0].data); + { + var t = tile[1][0]; + delete tile[2]; + var tl = parse_shallow(t.data); + { + var tileref = parse_TSP_Reference(tl[2][0].data); + (function() { + var tentry = CFB.find(cfb, dependents[tileref].location); + var tx = parse_iwa_file(decompress_iwa_file(tentry.content)); + var tileroot; + for (var sxi = 0; sxi < tx.length; ++sxi) { + var packet2 = tx[sxi]; + if (packet2.id == tileref) + tileroot = packet2; + } + var tiledata = parse_shallow(tileroot.messages[0].data); + { + delete tiledata[6]; + delete tile[7]; + var rowload = new Uint8Array(tiledata[5][0].data); + tiledata[5] = []; + var cnt = 0; + for (var R2 = 0; R2 <= range.e.r; ++R2) { + var tilerow = parse_shallow(rowload); + cnt += write_tile_row(tilerow, data[R2], SST); + tilerow[1][0].data = write_varint49(R2); + tiledata[5].push({ data: write_shallow(tilerow), type: 2 }); + } + tiledata[1] = [{ type: 0, data: write_varint49(range.e.c + 1) }]; + tiledata[2] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + tiledata[3] = [{ type: 0, data: write_varint49(cnt) }]; + tiledata[4] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + } + tileroot.messages[0].data = write_shallow(tiledata); + var ty = write_iwa_file(tx); + var raw32 = compress_iwa_file(ty); + tentry.content = raw32; + tentry.size = tentry.content.length; + })(); + } + t.data = write_shallow(tl); + } + store[3][0].data = write_shallow(tile); + } + pb[4][0].data = write_shallow(store); + } + docroot.messages[0].data = write_shallow(pb); + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + entry.content = raw3; + entry.size = entry.content.length; + return cfb; } diff --git a/modules/83_numbers.ts b/modules/83_numbers.ts index d8364cb..92f3c8c 100644 --- a/modules/83_numbers.ts +++ b/modules/83_numbers.ts @@ -2,7 +2,7 @@ /// /* these are type imports and do not show up in the generated JS */ -import { CFB$Container } from 'cfb'; +import { CFB$Container, CFB$Entry } from 'cfb'; import { WorkBook, WorkSheet, Range, CellObject } from '../'; import type { utils } from "../"; @@ -10,12 +10,28 @@ declare var encode_cell: typeof utils.encode_cell; 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; +declare var sheet_to_json: typeof utils.sheet_to_json; +declare var decode_range: typeof utils.decode_range; +import * as _CFB from 'cfb'; +declare var CFB: typeof _CFB; //<= offset; --j) mantissa = mantissa * 256 + buf[j]; return ((buf[offset+15] & 0x80) ? -mantissa : mantissa) * Math.pow(10, exp - 0x1820); } +/** Write a 128-bit decimal to the modern cell storage */ +function writeDecimal128LE(buf: Uint8Array, offset: number, value: number): void { + // TODO: something more correct than this + var exp = Math.floor(value == 0 ? 0 : /*Math.log10*/Math.LOG10E * Math.log(Math.abs(value))) + 0x1820 - 20; + var mantissa = (value / Math.pow(10, exp - 0x1820)); + buf[offset+15] |= exp >> 7; + buf[offset+14] |= (exp & 0x7F) << 1; + for(var i = 0; mantissa >= 1; ++i, mantissa /= 256) buf[offset + i] = mantissa & 0xFF; + buf[offset+15] |= (value >= 0 ? 0 : 0x80); +} + type Ptr = [number]; @@ -78,6 +105,7 @@ function write_varint49(v: number): Uint8Array { } return usz.slice(0, L); } +//< { field.forEach(item => { + if(!item.data) return; out.push(write_varint49(idx * 8 + item.type)); if(item.type == 2) out.push(write_varint49(item.data.length)); out.push(item.data); @@ -144,14 +172,7 @@ function write_shallow(proto: ProtoMessage): Uint8Array { /** Map over each entry in a repeated (or single-value) field */ function mappa(data: ProtoField, cb:(Uint8Array) => U): U[] { - if(!data) return []; - return data.map((d) => { try { - return cb(d.data); - } catch(e) { - var m = e.message?.match(/at offset (\d+)/); - if(m) e.message = e.message.replace(/at offset (\d+)/, "at offset " + (+m[1] + d.offset)); - throw e; - }}); + return data?.map(d => cb(d.data)) || []; } @@ -162,6 +183,7 @@ interface IWAMessage { } interface IWAArchiveInfo { id?: number; + merge?: boolean; messages?: IWAMessage[]; } /** Extract all messages from a IWA file */ @@ -187,11 +209,34 @@ function parse_iwa_file(buf: Uint8Array): IWAArchiveInfo[] { }); ptr[0] += fl; }); + if(ai[3]?.[0]) res.merge = (varint_to_i32(ai[3][0].data) >>> 0) > 0; out.push(res); } return out; } -//< { + var ai: ProtoMessage = []; + ai[1] = [{data: write_varint49(ia.id), type: 0}]; + ai[2] = []; + if(ia.merge != null) ai[3] = [ { data: write_varint49(+!!ia.merge), type: 0 } ]; + var midata: Uint8Array[] = []; + + ia.messages.forEach(mi => { + midata.push(mi.data); + mi.meta[3] = [ { type: 0, data: write_varint49(mi.data.length) } ]; + ai[2].push({data: write_shallow(mi.meta), type: 2}); + }); + + var aipayload = write_shallow(ai); + bufs.push(write_varint49(aipayload.length)); + bufs.push(aipayload); + midata.forEach(mid => bufs.push(mid)); + }); + return u8concat(bufs); +} +//< 0 }; break; // boolean - case 7: ret = { t: "n", v: ieee }; break; // duration in seconds TODO: emit [hh]:[mm] style format with adjusted value + case 7: ret = { t: "n", v: ieee / 86400 }; break; // duration in seconds TODO: emit [hh]:[mm] style format with adjusted value case 8: ret = { t: "e", v: 0}; break; // "formula error" TODO: enumerate and map errors to csf equivalents case 9: { // "automatic"? if(ridx > -1) ret = { t: "s", v: rsst[ridx] }; @@ -323,7 +368,8 @@ function parse_old_storage(buf: Uint8Array, sst: string[], rsst: string[], v: 0| return ret; } -function parse_storage(buf: Uint8Array, sst: string[], rsst: string[]): CellObject { +/** Parse "new storage" (version 5) */ +function parse_new_storage(buf: Uint8Array, sst: string[], rsst: string[]): CellObject { var dv = u8_to_dataview(buf); var flags = dv.getUint32(8, true); @@ -345,7 +391,7 @@ function parse_storage(buf: Uint8Array, sst: string[], rsst: string[]): CellObje case 3: ret = { t: "s", v: sst[sidx] }; break; // string case 5: ret = { t: "d", v: dt }; break; // date-time case 6: ret = { t: "b", v: ieee > 0 }; break; // boolean - case 7: ret = { t: "n", v: ieee }; break; // duration in seconds TODO: emit [hh]:[mm] style format with adjusted value + case 7: ret = { t: "n", v: ieee / 86400 }; break; // duration in seconds TODO: emit [hh]:[mm] style format with adjusted value case 8: ret = { t: "e", v: 0}; break; // "formula error" TODO: enumerate and map errors to csf equivalents case 9: { // "automatic"? if(ridx > -1) ret = { t: "s", v: rsst[ridx] }; @@ -358,12 +404,40 @@ function parse_storage(buf: Uint8Array, sst: string[], rsst: string[]): CellObje return ret; } - +function write_new_storage(cell: CellObject, sst: string[]): Uint8Array { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 5; + switch(cell.t) { + case "n": out[1] = 2; writeDecimal128LE(out, l, cell.v as number); flags |= 1; l += 16; break; + case "b": out[1] = 6; dv.setFloat64(l, cell.v ? 1 : 0, true); flags |= 2; l += 8; break; + case "s": + if(sst.indexOf(cell.v as string) == -1) throw new Error(`Value ${cell.v} missing from SST!`); + out[1] = 3; dv.setUint32(l, sst.indexOf(cell.v as string), true); flags |= 8; l += 4; break; + default: throw "unsupported cell type " + cell.t; + } + dv.setUint32(8, flags, true); + return out.slice(0, l); +} +function write_old_storage(cell: CellObject, sst: string[]): Uint8Array { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 3; + switch(cell.t) { + case "n": out[2] = 2; dv.setFloat64(l, cell.v as number, true); flags |= 0x20; l += 8; break; + case "b": out[2] = 6; dv.setFloat64(l, cell.v ? 1 : 0, true); flags |= 0x20; l += 8; break; + case "s": + if(sst.indexOf(cell.v as string) == -1) throw new Error(`Value ${cell.v} missing from SST!`); + out[2] = 3; dv.setUint32(l, sst.indexOf(cell.v as string), true); flags |= 0x10; l += 4; break; + default: throw "unsupported cell type " + cell.t; + } + dv.setUint32(4, flags, true); + return out.slice(0, l); +} +//<= 1) cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); return { R, cells }; } @@ -472,7 +552,7 @@ function parse_TST_Tile(M: MessageSpace, root: IWAMessage): TileInfo { }; } -/** .TST.TableModelArchive */ +/** .TST.TableModelArchive (6001) */ function parse_TST_TableModelArchive(M: MessageSpace, root: IWAMessage, ws: WorkSheet) { var pb = parse_shallow(root.data); var range: Range = { s: {r:0, c:0}, e: {r:0, c:0} }; @@ -509,7 +589,7 @@ function parse_TST_TableModelArchive(M: MessageSpace, root: IWAMessage, ws: Work }); } -/** .TST.TableInfoArchive */ +/** .TST.TableInfoArchive (6000) */ function parse_TST_TableInfoArchive(M: MessageSpace, root: IWAMessage): WorkSheet { var pb = parse_shallow(root.data); var out: WorkSheet = { "!ref": "A1" }; @@ -524,7 +604,7 @@ interface NSheet { name: string; sheets: WorkSheet[]; } -/** .TN.SheetArchive */ +/** .TN.SheetArchive (2) */ function parse_TN_SheetArchive(M: MessageSpace, root: IWAMessage): NSheet { var pb = parse_shallow(root.data); var out: NSheet = { @@ -570,7 +650,7 @@ function parse_TN_DocumentArchive(M: MessageSpace, root: IWAMessage): WorkBook { /** Parse NUMBERS file */ function parse_numbers_iwa(cfb: CFB$Container): WorkBook { - var out: MessageSpace = {}, indices: number[] = []; + var M: MessageSpace = {}, indices: number[] = []; cfb.FullPaths.forEach(p => { if(p.match(/\.iwpv2/)) throw new Error(`Unsupported password protection`); }); /* collect entire message space */ @@ -580,14 +660,14 @@ function parse_numbers_iwa(cfb: CFB$Container): WorkBook { try { o = decompress_iwa_file(s.content as Uint8Array); } catch(e) { return console.log("?? " + s.content.length + " " + (e.message || e)); } var packets: IWAArchiveInfo[]; try { packets = parse_iwa_file(o); } catch(e) { return console.log("## " + (e.message || e)); } - packets.forEach(packet => { out[packet.id] = packet.messages; indices.push(packet.id); }); + packets.forEach(packet => { M[packet.id] = packet.messages; indices.push(packet.id); }); }); if(!indices.length) throw new Error("File has no messages"); /* find document root */ - var docroot: IWAMessage = out?.[1]?.[0]?.meta?.[1]?.[0].data && varint_to_i32(out[1][0].meta[1][0].data) == 1 && out[1][0]; + var docroot: IWAMessage = M?.[1]?.[0]?.meta?.[1]?.[0].data && varint_to_i32(M[1][0].meta[1][0].data) == 1 && M[1][0]; if(!docroot) indices.forEach((idx) => { - out[idx].forEach((iwam) => { + M[idx].forEach((iwam) => { var mtype = varint_to_i32(iwam.meta[1][0].data) >>> 0; if(mtype == 1) { if(!docroot) docroot = iwam; @@ -596,7 +676,310 @@ function parse_numbers_iwa(cfb: CFB$Container): WorkBook { }); }); if(!docroot) throw new Error("Cannot find Document root"); - return parse_TN_DocumentArchive(out, docroot); + return parse_TN_DocumentArchive(M, docroot); } //< 0 || false; + if(wide_offsets) throw "Math only works with normal offsets"; + var cnt = 0; + var dv = u8_to_dataview(tri[7][0].data), last_offset = 0, cell_storage: Uint8Array[] = []; + var _dv = u8_to_dataview(tri[4][0].data), _last_offset = 0, _cell_storage: Uint8Array[] = []; + for(var C = 0; C < data.length; ++C) { + if(data[C] == null) { dv.setUint16(C*2, 0xFFFF, true); _dv.setUint16(C*2, 0xFFFF); continue; } + dv.setUint16(C*2, last_offset, true); + _dv.setUint16(C*2, _last_offset, true); + var celload: Uint8Array, _celload: Uint8Array; + switch(typeof data[C]) { + case "string": + celload = write_new_storage({t: "s", v: data[C]}, SST); + _celload = write_old_storage({t: "s", v: data[C]}, SST); + break; + case "number": + celload = write_new_storage({t: "n", v: data[C]}, SST); + _celload = write_old_storage({t: "n", v: data[C]}, SST); + break; + case "boolean": + celload = write_new_storage({t: "b", v: data[C]}, SST); + _celload = write_old_storage({t: "b", v: data[C]}, SST); + break; + default: throw new Error("Unsupported value " + data[C]); + } + cell_storage.push(celload); last_offset += celload.length; + _cell_storage.push(_celload); _last_offset += _celload.length; + ++cnt; + } + tri[2][0].data = write_varint49(cnt); + + for(; C < tri[7][0].data.length/2; ++C) { + dv.setUint16(C*2, 0xFFFF, true); + _dv.setUint16(C*2, 0xFFFF, true); + } + tri[6][0].data = u8concat(cell_storage); + tri[3][0].data = u8concat(_cell_storage); + return cnt; +} + +function write_numbers_iwa(wb: WorkBook, opts: any): CFB$Container { + if(!opts || !opts.numbers) throw new Error("Must pass a `numbers` option -- check the README"); + /* TODO: support multiple worksheets, larger ranges, more data types, etc */ + var ws = wb.Sheets[wb.SheetNames[0]]; + if(wb.SheetNames.length > 1) console.error("The Numbers writer currently writes only the first table"); + var range = decode_range(ws["!ref"]); + range.s.r = range.s.c = 0; + var trunc = false; + if(range.e.c > 9) { trunc = true; range.e.c = 9; } + if(range.e.r > 49) { trunc = true; range.e.r = 49; } + if(trunc) console.error(`The Numbers writer is currently limited to ${encode_range(range)}`); + var data = sheet_to_json(ws, { range, header: 1 }); + var SST = ["~Sh33tJ5~"]; + data.forEach(row => row.forEach(cell => { if(typeof cell == "string") SST.push(cell); })) + + var dependents: {[x:number]: DependentInfo} = {}; + var indices: number[] = []; + + var cfb: CFB$Container = CFB.read(opts.numbers, { type: "base64" }); + cfb.FileIndex.map((fi, idx): [CFB$Entry, string] => ([fi, cfb.FullPaths[idx]])).forEach(row => { + var fi = row[0], fp = row[1]; + if(fi.type != 2) return; + if(!fi.name.match(/\.iwa/)) return; + + /* Reframe .iwa files */ + var old_content = fi.content; + var raw1 = decompress_iwa_file(old_content as Uint8Array); + + var x = parse_iwa_file(raw1); + + x.forEach(packet => { + indices.push(packet.id); + dependents[packet.id] = { deps: [], location: fp, type: varint_to_i32(packet.messages[0].meta[1][0].data) }; + }); + }); + + indices.sort((x,y) => x-y); + var indices_varint: Array<[number, Uint8Array]> = indices.filter(x => x > 1).map(x => [x, write_varint49(x)] ); + + cfb.FileIndex.map((fi, idx): [CFB$Entry, string] => ([fi, cfb.FullPaths[idx]])).forEach(row => { + var fi = row[0], fp = row[1]; + if(!fi.name.match(/\.iwa/)) return; + var x = parse_iwa_file(decompress_iwa_file(fi.content as Uint8Array)); + + x.forEach(ia => { + ia.messages.forEach(m => { + 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); + } + }) + }); + }); + }); + + function get_unique_msgid() { + for(var i = 927262; i < 2000000; ++i) if(!dependents[i]) return i; + throw new Error("Too many messages"); + } + + /* .TN.DocumentArchive */ + var entry = CFB.find(cfb, dependents[1].location); + var x = parse_iwa_file(decompress_iwa_file(entry.content as Uint8Array)); + var docroot: IWAArchiveInfo; + for(var xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if(packet.id == 1) docroot = packet; + } + + /* .TN.SheetArchive */ + var sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[1][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content as Uint8Array)); + for(xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if(packet.id == sheetrootref) docroot = packet; + } + + /* .TST.TableInfoArchive */ + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content as Uint8Array)); + for(xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if(packet.id == sheetrootref) docroot = packet; + } + + /* .TST.TableModelArchive */ + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content as Uint8Array)); + for(xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if(packet.id == sheetrootref) docroot = packet; + } + + var pb = parse_shallow(docroot.messages[0].data); + { + pb[6][0].data = write_varint49(range.e.r + 1); + pb[7][0].data = write_varint49(range.e.c + 1); + // pb[22] = [ { type: 0, data: write_varint49(1) } ]; // enables table display + + var cruidsref = parse_TSP_Reference(pb[46][0].data); + var oldbucket = CFB.find(cfb, dependents[cruidsref].location); + var _x = parse_iwa_file(decompress_iwa_file(oldbucket.content as Uint8Array)); + { + for(var j = 0; j < _x.length; ++j) { + if(_x[j].id == cruidsref) break; + } + if(_x[j].id != cruidsref) throw "Bad ColumnRowUIDMapArchive"; + var cruids = parse_shallow(_x[j].messages[0].data); + cruids[1] = []; cruids[2] = [], cruids[3] = []; + for(var C = 0; C <= range.e.c; ++C) { + var uuid: ProtoMessage = []; + uuid[1] = uuid[2] = [ { type: 0, data: write_varint49(C + 420690) } ] + cruids[1].push({type: 2, data: write_shallow(uuid)}) + cruids[2].push({type: 0, data: write_varint49(C)}); + cruids[3].push({type: 0, data: write_varint49(C)}); + } + cruids[4] = []; cruids[5] = [], cruids[6] = []; + for(var R = 0; R <= range.e.r; ++R) { + uuid = []; + uuid[1] = uuid[2] = [ { type: 0, data: write_varint49(R + 726270)} ]; + cruids[4].push({type: 2, data: write_shallow(uuid)}) + cruids[5].push({type: 0, data: write_varint49(R)}); + cruids[6].push({type: 0, data: write_varint49(R)}); + } + _x[j].messages[0].data = write_shallow(cruids); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); oldbucket.size = oldbucket.content.length; + delete pb[46]; + + var store = parse_shallow(pb[4][0].data); + { + store[7][0].data = write_varint49(range.e.r + 1); + var row_headers = parse_shallow(store[1][0].data); + var row_header_ref = parse_TSP_Reference(row_headers[2][0].data); + oldbucket = CFB.find(cfb, dependents[row_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content as Uint8Array)); + { + if(_x[0].id != row_header_ref) throw "Bad HeaderStorageBucket"; + var base_bucket = parse_shallow(_x[0].messages[0].data); + for(R = 0; R < data.length; ++R) { + var _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(R); + _bucket[4][0].data = write_varint49(data[R].length); + base_bucket[2][R] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); oldbucket.size = oldbucket.content.length; + + var col_header_ref = parse_TSP_Reference(store[2][0].data); + oldbucket = CFB.find(cfb, dependents[col_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content as Uint8Array)); + { + if(_x[0].id != col_header_ref) throw "Bad HeaderStorageBucket"; + base_bucket = parse_shallow(_x[0].messages[0].data); + for(C = 0; C <= range.e.c; ++C) { + _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(C); + _bucket[4][0].data = write_varint49(range.e.r + 1); + base_bucket[2][C] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); oldbucket.size = oldbucket.content.length; + + + /* ref to string table */ + var sstref = parse_TSP_Reference(store[4][0].data); + (() => { + var sentry = CFB.find(cfb, dependents[sstref].location); + var sx = parse_iwa_file(decompress_iwa_file(sentry.content as Uint8Array)); + var sstroot: IWAArchiveInfo; + for(var sxi = 0; sxi < sx.length; ++sxi) { + var packet = sx[sxi]; + if(packet.id == sstref) sstroot = packet; + } + + var sstdata = parse_shallow(sstroot.messages[0].data); + { + sstdata[3] = []; + var newsst: ProtoMessage = []; + SST.forEach((str, i) => { + newsst[1] = [ { type: 0, data: write_varint49(i) } ]; + newsst[2] = [ { type: 0, data: write_varint49(1) } ]; + newsst[3] = [ { type: 2, data: stru8(str) } ]; + sstdata[3].push({type: 2, data: write_shallow(newsst)}); + }); + } + sstroot.messages[0].data = write_shallow(sstdata); + + var sy = write_iwa_file(sx); + var raw3 = compress_iwa_file(sy); + sentry.content = raw3; sentry.size = sentry.content.length; + })(); + + var tile = parse_shallow(store[3][0].data); // TileStorage + { + var t = tile[1][0]; + delete tile[2]; + var tl = parse_shallow(t.data); // first Tile + { + var tileref = parse_TSP_Reference(tl[2][0].data); + (() => { + var tentry = CFB.find(cfb, dependents[tileref].location); + var tx = parse_iwa_file(decompress_iwa_file(tentry.content as Uint8Array)); + var tileroot: IWAArchiveInfo; + for(var sxi = 0; sxi < tx.length; ++sxi) { + var packet = tx[sxi]; + if(packet.id == tileref) tileroot = packet; + } + + // .TST.Tile + var tiledata = parse_shallow(tileroot.messages[0].data); + { + delete tiledata[6]; delete tile[7]; + var rowload = new Uint8Array(tiledata[5][0].data); + tiledata[5] = []; + var cnt = 0; + for(var R = 0; R <= range.e.r; ++R) { + var tilerow = parse_shallow(rowload); + cnt += write_tile_row(tilerow, data[R], SST); + tilerow[1][0].data = write_varint49(R); + tiledata[5].push({data: write_shallow(tilerow), type: 2}); + } + tiledata[1] = [{type: 0, data: write_varint49(range.e.c + 1)}]; + tiledata[2] = [{type: 0, data: write_varint49(range.e.r + 1)}]; + tiledata[3] = [{type: 0, data: write_varint49(cnt)}]; + tiledata[4] = [{type: 0, data: write_varint49(range.e.r + 1)}]; + } + tileroot.messages[0].data = write_shallow(tiledata); + + var ty = write_iwa_file(tx); + var raw3 = compress_iwa_file(ty); + tentry.content = raw3; tentry.size = tentry.content.length; + //throw dependents[tileref]; + })(); + } + t.data = write_shallow(tl); + } + store[3][0].data = write_shallow(tile); + } + pb[4][0].data = write_shallow(store); + } + docroot.messages[0].data = write_shallow(pb); + + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + entry.content = raw3; entry.size = entry.content.length; + + return cfb; +} diff --git a/modules/Makefile b/modules/Makefile index 92a34b5..796fb60 100644 --- a/modules/Makefile +++ b/modules/Makefile @@ -6,13 +6,16 @@ ENTRIES=$(subst .ts,.js,$(TSFILES)) BAREJS=04_base64.js 51_xlsxmeta.js 51_xlsbmeta.js 59_vba.js 64_ftab.js 83_numbers.js .PHONY: all -all: $(ENTRIES) +all: $(ENTRIES) xlsx.zahl.js + +xlsx.zahl.js: test.numbers reframe.node.js + bash -c ./reframe.sh $(BAREJS): %.js: %.ts $(LIBFILES) npx esbuild $< --outfile=$@ --platform=browser --target=es5 %.node.js: %.node.ts $(LIBFILES) src/numbers.ts - npx esbuild $< --bundle --external:xlsx --outfile=$@ --minify --platform=node + npx esbuild $< --bundle --external:xlsx --outfile=$@ --platform=node sed -i '' 's/ts-node/node/g' $@ %.js: %.ts $(LIBFILES) diff --git a/modules/reframe.node.ts b/modules/reframe.node.ts index 4cbc234..ea9d557 100644 --- a/modules/reframe.node.ts +++ b/modules/reframe.node.ts @@ -1,13 +1,22 @@ /*! sheetjs (C) 2013-present SheetJS -- http://sheetjs.com */ -import { decompress_iwa_file, compress_iwa_file, u8concat } from "./src/numbers"; -import { read, writeFile, utils, find, CFB$Entry } from 'cfb'; +import { decompress_iwa_file, compress_iwa_file, u8concat, parse_iwa_file, write_iwa_file, varint_to_i32, parse_shallow, write_shallow, u8str, stru8, IWAArchiveInfo, parse_TSP_Reference, write_varint49, u8contains, u8_to_dataview, write_new_storage } from "./src/numbers"; +import { read, writeFile, utils, find, CFB$Entry, CFB$Container } from 'cfb'; var f = process.argv[2]; var o = process.argv[3]; var cfb = read(f, {type: "file"}); -var FI = cfb.FileIndex; -var bufs = [], mode = 0; -FI.map((fi, idx): [CFB$Entry, string] => ([fi, cfb.FullPaths[idx]])).forEach(row => { +var nuevo = utils.cfb_new(); + +interface DependentInfo { + deps: number[]; + location: string; + type: number; +} +var dependents: {[x:number]: DependentInfo} = {}; +var indices: number[] = []; + +/* First Pass: reframe, clean up junk, collect message space */ +cfb.FileIndex.map((fi, idx): [CFB$Entry, string] => ([fi, cfb.FullPaths[idx]])).forEach(row => { var fi = row[0], fp = row[1]; /* blank all plist files */ if(fi.name.match(/\.plist/)) { @@ -17,6 +26,7 @@ FI.map((fi, idx): [CFB$Entry, string] => ([fi, cfb.FullPaths[idx]])).forEach(row 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x0a ]); + utils.cfb_add(nuevo, row[1], fi.content); return; } @@ -26,28 +36,596 @@ FI.map((fi, idx): [CFB$Entry, string] => ([fi, cfb.FullPaths[idx]])).forEach(row if(!fi.name.match(/\.iwa/)) { if(fi.name.match(/Sh33tJ5/)) return; console.error(`Removing file ${fi.name}`); - utils.cfb_del(cfb, fp); return; } /* Reframe .iwa files */ - console.error(`Reframing iwa ${fi.name} (${fi.size})`); var old_content = fi.content; var raw1 = decompress_iwa_file(old_content as Uint8Array); var new_content = compress_iwa_file(raw1); var raw2 = decompress_iwa_file(new_content); for(var i = 0; i < raw1.length; ++i) if(raw1[i] != raw2[i]) throw new Error(`${fi.name} did not properly roundtrip`); - bufs.push(raw1); - switch(mode) { - case 1: utils.cfb_del(cfb, fp); break; - /* falls through */ - case 0: fi.content = new_content; break; + + var x = parse_iwa_file(raw2); + x.forEach(ia => { + ia.messages.forEach(m => { + delete m.meta[2]; + delete m.meta[4]; + delete m.meta[5]; // extremely slow open if deleted + for(var j = 6; j < m.meta.length; ++j) delete m.meta[j]; + }); + }); + + x.forEach(packet => { + indices.push(packet.id); + dependents[packet.id] = { deps: [], location: fp, type: varint_to_i32(packet.messages[0].meta[1][0].data) }; + }); + + var y = write_iwa_file(x); + for(var i = 0; i < raw1.length; ++i) if(y[i] != raw1[i]) { console.log(fi.name, i, raw1[i], y[i]); break; } + + var raw3 = compress_iwa_file(y); + fi.content = raw3; fi.size = fi.content.length; + // utils.cfb_add(nuevo, row[1], fi.content); +}); + +indices.sort((x,y) => x-y); +var indices_varint: Array<[number, Uint8Array]> = indices.filter(x => x > 1).map(x => [x, write_varint49(x)] ); + +/* Second pass: build dependency map */ +cfb.FileIndex.map((fi, idx): [CFB$Entry, string] => ([fi, cfb.FullPaths[idx]])).forEach(row => { + var fi = row[0], fp = row[1]; + if(!fi?.name?.match(/\.iwa/)) return; + var x = parse_iwa_file(decompress_iwa_file(fi.content as Uint8Array)); + + x.forEach(ia => { + ia.messages.forEach(m => { + indices_varint.forEach(([i, vi]) => { + if(ia.messages.some(mess => varint_to_i32(mess.meta[1][0].data) != 11006 && u8contains(mess.data, vi))) { + dependents[i].deps.push(ia.id); + } + }) + }); + }); +}); + +var deletables = []; +function delete_message(id: number, cfb: CFB$Container) { + var dep = dependents[id]; + if(dep?.deps?.length > 0) return console.error(`Message ${id} has dependents ${dep.deps}`); + + //delete dependents[id]; + indices = indices.filter(x => x != id); + + /* TODO: this really should be a forward map */ + indices.map(i => dependents[i]).filter(x => x).forEach(dep => { + dep.deps = dep.deps.filter(x => x != id); + }); + if(deletables.indexOf(id) == -1) deletables.push(id); +} + +function gc(cfb: CFB$Container) { + deletables.forEach(id => { + var dep = dependents[id]; + var entry = find(cfb, dep.location); + var x = parse_iwa_file(decompress_iwa_file(entry.content as Uint8Array)); + + /* remove packet */ + console.log(`Removing packet ${id} ${dependents[id]?.type || "NaN"}`); + for(var xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if(packet.id == id) { x.splice(xi,1); --xi; } + } + + delete dependents[id]; + + entry.content = compress_iwa_file(write_iwa_file(x)); + entry.size = entry.content.length; + }); + deletables = []; + +} + +function delete_ref(dmeta: ReturnType, j: number, me: number) { + if(!dmeta) return; + if(dmeta[j]) dmeta[j].forEach(pi => { + var target = parse_TSP_Reference(pi.data); + dependents[target].deps = dependents[target].deps.filter(x => x != me); + if(dependents[target].deps.length == 0) delete_message(target, cfb); + }); + delete dmeta[j]; +} + +function shake() { + var done = false; + while(!done) { + done = true; + cfb.FileIndex.map((fi, idx): [CFB$Entry, string] => ([fi, cfb.FullPaths[idx]])).forEach(row => { + var fi = row[0], fp = row[1]; + if(fi.name.match(/\.plist/)) return; + if(!fi.name.match(/\.iwa/)) return; + var old_content = fi.content; + var raw1 = decompress_iwa_file(old_content as Uint8Array); + var x = parse_iwa_file(raw1); + + (()=>{ + for(var i = 0; i < x.length; ++i) { + var w = x[i]; + var type = varint_to_i32(w.messages[0].meta[1][0].data); + if(w.id > 10000 && (!dependents[w.id] || !dependents[w.id]?.deps?.length)) { + console.log(`Deleting orphan ${fp} ${w.id}`); + delete_message(w.id, cfb); + done = false; + } + } + })(); + + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + //fi.content = raw3; + }); + gc(cfb); + } +} + +/* Third pass: trim messages */ +cfb.FileIndex.map((fi, idx): [CFB$Entry, string] => ([fi, cfb.FullPaths[idx]])).forEach(row => { + var fi = row[0], fp = row[1]; + if(!fi?.name?.match(/\.iwa/)) return; + var x = parse_iwa_file(decompress_iwa_file(fi.content as Uint8Array)); + + trim(x, fi); + + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + fi.content = raw3; +}); +gc(cfb); + +shake(); + +function mutate_row(tri: ReturnType) { + if(!tri[6]?.[0] || !tri[7]?.[0]) throw "Mutation only works on post-BNC storages!"; + var wide_offsets = tri[8]?.[0]?.data && varint_to_i32(tri[8][0].data) > 0 || false; + if(wide_offsets) throw "Math only works with normal offsets"; + var dv = u8_to_dataview(tri[7][0].data); + var old_sz = 0, sz = 0; + for(var i = 0; i < tri[7][0].data.length / 2; ++i) { + sz = dv.getUint16(i*2, true); + if(sz < 65535) old_sz = sz; + if(old_sz) break; + } + if(!old_sz) old_sz = sz = tri[6][0].data.length; + var start = 0, + preamble = tri[6][0].data.slice(0, start), + intramble = tri[6][0].data.slice(start, old_sz), + postamble = tri[6][0].data.slice(old_sz); + var sst = []; sst[69] = "SheetJS"; + //intramble = write_new_storage({t:"n", v:12345}, sst); + //intramble = write_new_storage({t:"b", v:false}, sst); + intramble = write_new_storage({t:"s", v:"SheetJS"}, sst); + tri[6][0].data = u8concat([preamble, intramble, postamble]); + var delta = intramble.length - old_sz; + for(var i = 0; i < tri[7][0].data.length / 2; ++i) { + sz = dv.getUint16(i*2, true); + if(sz < 65535 && sz > start) dv.setUint16(i*2, sz + delta, true); + } +} + +/* Find first sheet -> first table -> add "SheetJS" to data store and set cell A1 */ +(function() { + var entry = find(cfb, dependents[1].location); + var x = parse_iwa_file(decompress_iwa_file(entry.content as Uint8Array)); + var docroot: IWAArchiveInfo; + for(var xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if(packet.id == 1) docroot = packet; + } + var sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[1][0].data); + + entry = find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content as Uint8Array)); + for(xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if(packet.id == sheetrootref) docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + + entry = find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content as Uint8Array)); + for(xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if(packet.id == sheetrootref) docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + + entry = find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content as Uint8Array)); + for(xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if(packet.id == sheetrootref) docroot = packet; + } + + var pb = parse_shallow(docroot.messages[0].data); + { + var store = parse_shallow(pb[4][0].data); + { + /* ref to string table */ + var sstref = parse_TSP_Reference(store[4][0].data); + (() => { + var sentry = find(cfb, dependents[sstref].location); + var sx = parse_iwa_file(decompress_iwa_file(sentry.content as Uint8Array)); + var sstroot: IWAArchiveInfo; + for(var sxi = 0; sxi < sx.length; ++sxi) { + var packet = sx[sxi]; + if(packet.id == sstref) sstroot = packet; + } + + var sstdata = parse_shallow(sstroot.messages[0].data); + { + if(!sstdata[3]) sstdata[3] = []; + var newsst: ReturnType = []; + newsst[1] = [ { type: 0, data: write_varint49(69) } ]; + newsst[2] = [ { type: 0, data: write_varint49(1) } ]; + newsst[3] = [ { type: 2, data: stru8("SheetJS") } ]; + sstdata[3].push({type: 2, data: write_shallow(newsst)}); + } + sstroot.messages[0].data = write_shallow(sstdata); + + var sy = write_iwa_file(sx); + var raw3 = compress_iwa_file(sy); + sentry.content = raw3; sentry.size = sentry.content.length; + })(); + + var tile = parse_shallow(store[3][0].data); // TileStorage + { + var t = tile[1][0]; + delete tile[2]; + var tl = parse_shallow(t.data); // first Tile + { + var tileref = parse_TSP_Reference(tl[2][0].data); + (() => { + var tentry = find(cfb, dependents[tileref].location); + var tx = parse_iwa_file(decompress_iwa_file(tentry.content as Uint8Array)); + var tileroot: IWAArchiveInfo; + for(var sxi = 0; sxi < tx.length; ++sxi) { + var packet = tx[sxi]; + if(packet.id == tileref) tileroot = packet; + } + + // .TST.Tile + var tiledata = parse_shallow(tileroot.messages[0].data); + { + tiledata[5].forEach((row, R) => { + var tilerow = parse_shallow(row.data); + if(R == 0) mutate_row(tilerow); + row.data = write_shallow(tilerow); + }) + } + tileroot.messages[0].data = write_shallow(tiledata); + + var ty = write_iwa_file(tx); + var raw3 = compress_iwa_file(ty); + tentry.content = raw3; tentry.size = tentry.content.length; + //throw dependents[tileref]; + })(); + } + t.data = write_shallow(tl); + } + store[3][0].data = write_shallow(tile); + } + pb[4][0].data = write_shallow(store); + } + docroot.messages[0].data = write_shallow(pb); + + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + entry.content = raw3; entry.size = entry.content.length; +})(); + +//console.log(indices.map(i => [i, dependents[i]]).filter(([i, dep]) => dep?.deps && (dep.deps.length == 0 || dep.deps.length == 1 && dep.deps[0] == 1))); + +/* Last pass: fix metadata and commit to new file */ +cfb.FileIndex.map((fi, idx): [CFB$Entry, string] => ([fi, cfb.FullPaths[idx]])).forEach(row => { + var fi = row[0], fp = row[1]; + if(!fi?.name?.match(/\.iwa/)) return; + var x = parse_iwa_file(decompress_iwa_file(fi.content as Uint8Array)); + + if(fi.name.match(/^Metadata.iwa$/)) { + x.forEach((w: IWAArchiveInfo) => { + var type = varint_to_i32(w.messages[0].meta[1][0].data); + if(type != 11006) return; + var package_metadata = parse_shallow(w.messages[0].data); + [3,11].forEach(x => { + if(!package_metadata[x]) return; + for(var pmj = 0; pmj < package_metadata[x].length; ++pmj) { + var ci = package_metadata[x][pmj]; + var comp = parse_shallow(ci.data); + var compid = varint_to_i32(comp[1][0].data); + if(!dependents[compid]) { + console.log(`Removing ${compid} (${u8str(comp[2][0].data)} -> ${comp[3]?.[0] && u8str(comp[3][0].data) || ""}) from metadata`); + package_metadata[x].splice(pmj, 1); + --pmj; continue; + } + [13, 14, 15].forEach(j => delete comp[j]); + ci.data = write_shallow(comp); + } + }); + [2, 4, 6, 8, 9].forEach(j => delete package_metadata[j]); + w.messages[0].data = write_shallow(package_metadata); + }); + } + + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + fi.content = raw3; + if(x.length == 0) { + console.log(`Deleting ${fi.name} (no messages)`); + return; + } + if(fi.name.match(/^Metadata.iwa$/)) { + console.error(`Reframing iwa ${fi.name} (${fi.size} -> ${fi.content.length})`); + fi.size = fi.content.length; + utils.cfb_add(nuevo, row[1], fi.content); + } else { + console.error(`Reframing iwa ${fi.name} (${fi.size} -> ${fi.content.length})`); + fi.size = fi.content.length; + utils.cfb_add(nuevo, row[1], fi.content); } }); -if(mode == 1) { - var res = compress_iwa_file(u8concat(bufs)); - console.error(`Adding iwa Document.iwa (${res.length})`); - utils.cfb_add(cfb, "/Index/Document.iwa", res); +writeFile(nuevo, o, { fileType: "zip", compression: true }); + +function process_root(dmeta: ReturnType, id: number) { + var tsa = parse_shallow(dmeta[8][0].data); + { + var tsk = parse_shallow(tsa[1][0].data); + { + [7, 8, 14].forEach(j => delete_ref(tsk, j, id)); // annotation_author_storage + [4, 9, 10, 11, 12, 15, 16, 17].forEach(j => delete tsk[j]); + } + tsa[1][0].data = write_shallow(tsk); + [5, 6, 7, 10, 11, 12, 13].forEach(j => delete_ref(tsa, j, 1)); + [3, 8, 9, 14, 15, 16].forEach(j => delete tsa[j]); + } + dmeta[8][0].data = write_shallow(tsa); } -writeFile(cfb, o, {fileType: "zip"}); + +function process_sheet(dmeta: ReturnType, id: number) { + [3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 20, 21, 23, 24].forEach(j => delete dmeta[j]); + [15, 16, 17, 18, 19, 22].forEach(j => delete_ref(dmeta, j, id)); +} + +function process_TST_TableInfoArchive(dmeta: ReturnType, id: number) { + [7, 8, 9, 10, 14, 16].forEach(j => delete dmeta[j]); + [3, 4, 5, 6, 15, 17].forEach(j => delete_ref(dmeta, j, id)); +} + +function process_TST_TableModelArchive(dmeta: ReturnType, id: number) { + [90, 91, 92].forEach(j => delete dmeta[j]); + [34, 35, 38, 49].forEach(j => delete_ref(dmeta, j, id)); + [60, 61, 62, 63, 64, 65, 66, 67, 68, 69].forEach(j => delete_ref(dmeta, j, id)); + [70].forEach(j => delete dmeta[j]); + [71, 72, 73, 74, 75, 76, 77, 78, 79, 80].forEach(j => delete_ref(dmeta, j, id)); + [85, 86, 87, 88, 89].forEach(j => delete_ref(dmeta, j, id)); + var store = parse_shallow(dmeta[4][0].data); + { // .TST.DataStore + [12, 13, 15, 16, 17, 18, 19, 20, 21, 22].forEach(j => delete_ref(store, j, id)); + var tiles = parse_shallow(store[3][0].data); + { // .TST.TileStorage + //console.log(parse_TSP_Reference(parse_shallow(tiles[1][0].data)[2][0].data)); + } + store[3][0].data = write_shallow(tiles); + // 4 -> sst + // 17 -> rsst + } + dmeta[4][0].data = write_shallow(store); +} + +function process_TN_ThemeArchive(dmeta: ReturnType, id: number) { + [2].forEach(j => delete_ref(dmeta, j, id)); + var tssta = parse_shallow(dmeta[1][0].data); + { + //Object.keys(tssta).filter(x => +x >= 100).forEach(j => delete tssta[j]); + } + dmeta[1][0].data = write_shallow(tssta); +} + +function process_TSS_StylesheetArchive(dmeta: ReturnType, id: number) { + [7, 8, 9, 10, 11, 12].forEach(j => { + if(!dmeta[j]) return; + var vstyle = parse_shallow(dmeta[j][0].data); + delete_ref(vstyle, 1, id); + if(vstyle[2]) vstyle[2].forEach(ised => { + var ise = parse_shallow(ised.data); + delete_ref(ise, 2, id); + }) + if(vstyle[3]) vstyle[3].forEach(sced => { + var sce = parse_shallow(sced.data); + delete_ref(sce, 2, id); + delete_ref(sce, 1, id); + }) + delete dmeta[j]; + }); + dmeta[4] = [{data: write_varint49(0), type: 0}]; + [3].forEach(j => delete_ref(dmeta, j, id)); + dmeta[5]?.forEach(pi => { + var sce = parse_shallow(pi.data); + delete_ref(sce, 1, id); + delete_ref(sce, 2, id); + }); delete dmeta[5]; + var deleted_styles = []; + if(dmeta[2]) for(var pij = 0; pij < dmeta[2].length; ++pij) { + var ise = parse_shallow(dmeta[2][pij].data); + var sname = u8str(ise[1][0].data); + if(sname.match(/_\d*$/) || sname.match(/^(captions|chart|image|movie|stickyComment)/) || sname.match(/evel[2-5]|pivot|liststyle/) ) { + var deletedid = parse_TSP_Reference(ise[2][0].data); + console.log(`Deleting style ${sname} [${deletedid}]`); + deleted_styles.push(deletedid); + delete_ref(ise, 2, id); + dmeta[2].splice(pij,1); + --pij; continue; + } else console.log(`Keeping style ${sname}`) + } + if(dmeta[1]) for(var sj = 0; sj < dmeta[1].length; ++sj) { + var dsid = parse_TSP_Reference(dmeta[1][sj].data); + if(deleted_styles.indexOf(dsid) > -1) { + //console.log(`Really deleting style ${dsid}`); + dependents[dsid].deps = dependents[dsid].deps.filter(x => x != id); + if(dependents[dsid].deps.length == 0) delete_message(dsid, cfb); + dmeta[1].splice(sj, 1); --sj; continue; + } + } + [6].forEach(j => delete dmeta[j]); +} + +function process_TSCE_CalculationEngineArchive(dmeta: ReturnType, id: number) { + [3, 12, 14, 15].forEach(j => delete_ref(dmeta, j, id)); + [1, 4, 5, 6, 7, 9, 10, 11, 13, 16, 17, 18].forEach(i => delete dmeta[i]); + var dta = parse_shallow(dmeta[2][0].data); + delete dta[5]; delete dta[2]; delete dta[4]; + delete dta[1]; delete dta[3]; delete_ref(dta, 6, id); + dmeta[2][0].data = write_shallow(dta); +} + +function trim(x: IWAArchiveInfo[], fi: CFB$Entry) { + for(var i = 0; i < x.length; ++i) { + var w = x[i]; + var type = varint_to_i32(w.messages[0].meta[1][0].data); + var dmeta = parse_shallow(w.messages[0].data); + + switch(type) { + case 222: // .TSK.CustomFormatListArchive + case 601: // .TSA.FunctionBrowserStateArchive + x.splice(i, 1); --i; continue; + case 3047: break; // .TSD.GuideStorageArchive + case 205: { + } break; // .TSK.TreeNode + + case 1: { // .TN.DocumentArchive + process_root(dmeta, w.id); + } break; + case 2: { // .TN.SheetArchive + process_sheet(dmeta, w.id); + } break; + case 6000: { // .TST.TableInfoArchive + process_TST_TableInfoArchive(dmeta, w.id); + } break; + case 6001: { // .TST.TableModelArchive + process_TST_TableModelArchive(dmeta, w.id) + } break; + case 401: { // .TSS.StylesheetArchive + process_TSS_StylesheetArchive(dmeta, w.id); + break; + } + case 11011: { // .TSP.DocumentMetadata + [1, 3].forEach(i => delete dmeta[i]); + } break; + case 6002: { + //process_TST_Tile(dmeta, w.id); + } break; // .TST.Tile + case 6005: break; // .TST.TableDataList + case 6006: break; // .TST.HeaderStorageBucket + case 2001: break; // .TSWP.StorageArchive + case 12009: process_TN_ThemeArchive(dmeta, w.id); break; // .TN.ThemeArchive + + case 3097: break; // .TSD.StandinCaptionArchive + case 4000: process_TSCE_CalculationEngineArchive(dmeta, w.id); break; // .TSCE.CalculationEngineArchive + case 4003: break; // .TSCE.NamedReferenceManagerArchive + case 4004: break; // .TSCE.TrackedReferenceStoreArchive + case 4008: { // .TSCE.FormulaOwnerDependenciesArchive + [11].forEach(j => delete_ref(dmeta, j, w.id)); + [3].forEach(i => delete dmeta[i]); + } break; + case 4009: { // .TSCE.CellRecordTileArchive + delete dmeta[4]; + } break; + case 6267: { // .TST.ColumnRowUIDMapArchive + // console.log("CRUIDMA", dmeta[1]?.[0], dmeta[2]?.[0], dmeta[3]?.[0]); + //[1,2,3,4,5,6].forEach(j => delete dmeta[j]); break; + } break; + case 6366: break; // .TST.HeaderNameMgrArchive + case 6204: break; // .TST.HiddenStateFormulaOwnerArchive + case 6220: break; // .TST.FilterSetArchive + case 6305: break; // .TST.StrokeSidecarArchive + case 6316: break; // .TST.SummaryModelArchive + case 6317: break; // .TST.SummaryCellVendorArchive + case 6318: break; // .TST.CategoryOrderArchive + case 6372: break; // .TST.CategoryOwnerRefArchive + case 6373: break; // .TST.GroupByArchive + case 2043: [2,3,4].forEach(j => delete dmeta[j]); break; // .TSWP.NumberAttachmentArchive + + case 5020: // .TSCH.ChartStylePreset + //[1,2,3,4,5,6].forEach(j => delete_ref(dmeta, j, w.id)); // some part of this is required to auto-save + Object.keys(dmeta).filter(x => +x >= 10000).forEach(j => delete dmeta[j]); + break; + case 5022: // .TSCH.ChartStyleArchive + case 5024: // .TSCH.LegendStyleArchive + case 5026: // .TSCH.ChartAxisStyleArchive + case 5028: // .TSCH.ChartSeriesStyleArchive + case 5030: // .TSCH.ReferenceLineStyleArchive + Object.keys(dmeta).filter(x => +x >= 10000).forEach(j => delete dmeta[j]); + break; + case 2021: break; + case 2022: [10,11,12].forEach(j => delete dmeta[j]); break; // .TSWP.ParagraphStyleArchive + case 2023: [10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25].forEach(j => delete dmeta[j]); break; // .TSWP.ListStyleArchive + case 3016: [10,11].forEach(j => delete dmeta[j]); break; // .TSD.MediaStyleArchive + case 2025: /* [10,11].forEach(j => delete dmeta[j]); */ break; // .TSWP.ShapeStyleArchive + case 6003: /* [10,11].forEach(j => delete dmeta[j]); */ break; // .TST.TableStyleArchive + case 6004: /* [10,11].forEach(j => delete dmeta[j]); */ break; // .TST.CellStyleArchive + case 10024: [10,11,12].forEach(j => delete dmeta[j]); break; // .TN.DropCapStyleArchive + case 12050: /* [2,3].forEach(j => delete dmeta[j]); */ break; // .TN.SheetStyleArchive + case 3045: break; // .TSD.CanvasSelectionArchive + + case 6008: { + [1].forEach(j => delete dmeta[j]); + [2].forEach(j => delete_ref(dmeta, j, w.id)); + // deleting 3 -> -[TSWPLayoutManager initWithStorage:owner:] /Library/Caches/com.apple.xbs/Sources/iWorkDependenciesMacOS/iWorkDependenciesMacOS-7032.0.145/shared/text/TSWPLayoutManager.mm:82 Cannot initialize with a nil storage. + } break; // .TST.TableStylePresetArchive + + case 6247: { + [ 10, 11, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35 ].forEach(j => delete_ref(dmeta, j, w.id)); + } break; // .TST.TableStyleNetworkArchive + + case 210: { // .TSK.ViewStateArchive + [2, 3].forEach(i => delete dmeta[i]); + } break; + case 12026: { // .TN.UIStateArchive + delete dmeta[13]; + } break; + + case 219: delete dmeta[1]; break; // .DocumentSelectionArchive + + case 12028: break; // .TN.SheetSelectionArchive + case 3061: { // .TSD.DrawableSelectionArchive + [3].forEach(j => delete_ref(dmeta, j, w.id)); + } break; + case 3091: { // .TSD.FreehandDrawingToolkitUIState + [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15].forEach(i => delete dmeta[i]); + } break; + + /* Metadata.iwa */ + case 11006: { // .TSP.PackageMetadata + [10].forEach(j => delete_ref(dmeta, j, w.id)); + } break; + case 11014: // .TSP.DataMetadata + [1].forEach(j => delete dmeta[j]); + break; + case 11015: // .TSP.DataMetadataMap + dmeta?.[1]?.forEach((r, idx) => { + var ddmeta = parse_shallow(r.data); + [2].forEach(j => delete_ref(ddmeta, j, w.id)); + }); + delete dmeta[1]; + dmeta.length = 0; + break; + + /* AnnotationAuthorStorage.iwa */ + case 213: break; // TSK.AnnotationAuthorStorageArchive + + default: + console.log("!!", fi.name, type, w.id, w.messages.length); + } + w.messages[0].data = write_shallow(dmeta); + } +} \ No newline at end of file diff --git a/modules/reframe.sh b/modules/reframe.sh new file mode 100755 index 0000000..41117fd --- /dev/null +++ b/modules/reframe.sh @@ -0,0 +1,22 @@ +#!/bin/bash +set -eo pipefail +INF=${1:-test.numbers} +OUTF=${2:-reframed.numbers} +make reframe.node.js +node reframe.node.js "$INF" "$OUTF" +# cat-numbers "$OUTF" +chmod a+w "$OUTF" +sleep 0.1 +# open "$OUTF" +unzip -l "$OUTF" +base64 "$OUTF" > xlsx.zahl.js +sed -i.bak 's/^/var XLSX_ZAHL_PAYLOAD = "/g;s/$/";/g' xlsx.zahl.js +cp xlsx.zahl.js xlsx.zahl.mjs +cat >> xlsx.zahl.js <> xlsx.zahl.mjs <> 7; + buf[offset + 14] |= (exp & 127) << 1; + for (var i = 0; mantissa >= 1; ++i, mantissa /= 256) + buf[offset + i] = mantissa & 255; + buf[offset + 15] |= value >= 0 ? 0 : 128; +} function parse_varint49(buf, ptr) { var l = ptr ? ptr[0] : 0; var usz = buf[l] & 127; @@ -22149,7 +22171,7 @@ function parse_shallow(buf) { default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { offset: off, data: res, type: type }; + var v = { data: res, type: type }; if (out[num] == null) out[num] = [v]; else @@ -22161,6 +22183,8 @@ function write_shallow(proto) { var out = []; proto.forEach(function(field, idx) { field.forEach(function(item) { + if (!item.data) + return; out.push(write_varint49(idx * 8 + item.type)); if (item.type == 2) out.push(write_varint49(item.data.length)); @@ -22170,21 +22194,12 @@ function write_shallow(proto) { return u8concat(out); } function mappa(data, cb) { - if (!data) - return []; - return data.map(function(d) { - var _a; - try { - return cb(d.data); - } catch (e) { - var m = (_a = e.message) == null ? void 0 : _a.match(/at offset (\d+)/); - if (m) - e.message = e.message.replace(/at offset (\d+)/, "at offset " + (+m[1] + d.offset)); - throw e; - } - }); + return (data == null ? void 0 : data.map(function(d) { + return cb(d.data); + })) || []; } function parse_iwa_file(buf) { + var _a; var out = [], ptr = [0]; while (ptr[0] < buf.length) { var len = parse_varint49(buf, ptr); @@ -22203,10 +22218,35 @@ function parse_iwa_file(buf) { }); ptr[0] += fl; }); + if ((_a = ai[3]) == null ? void 0 : _a[0]) + res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; out.push(res); } return out; } +function write_iwa_file(ias) { + var bufs = []; + ias.forEach(function(ia) { + var ai = []; + ai[1] = [{ data: write_varint49(ia.id), type: 0 }]; + ai[2] = []; + if (ia.merge != null) + ai[3] = [{ data: write_varint49(+!!ia.merge), type: 0 }]; + var midata = []; + ia.messages.forEach(function(mi) { + midata.push(mi.data); + mi.meta[3] = [{ type: 0, data: write_varint49(mi.data.length) }]; + ai[2].push({ data: write_shallow(mi.meta), type: 2 }); + }); + var aipayload = write_shallow(ai); + bufs.push(write_varint49(aipayload.length)); + bufs.push(aipayload); + midata.forEach(function(mid) { + return bufs.push(mid); + }); + }); + return u8concat(bufs); +} function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); @@ -22361,7 +22401,7 @@ function parse_old_storage(buf, sst, rsst, v) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -22383,7 +22423,7 @@ function parse_old_storage(buf, sst, rsst, v) { } return ret; } -function parse_storage(buf, sst, rsst) { +function parse_new_storage(buf, sst, rsst) { var dv = u8_to_dataview(buf); var flags = dv.getUint32(8, true); var data_offset = 12; @@ -22425,7 +22465,7 @@ function parse_storage(buf, sst, rsst) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -22446,6 +22486,66 @@ function parse_storage(buf, sst, rsst) { } return ret; } +function write_new_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 5; + switch (cell.t) { + case "n": + out[1] = 2; + writeDecimal128LE(out, l, cell.v); + flags |= 1; + l += 16; + break; + case "b": + out[1] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 2; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[1] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 8; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(8, flags, true); + return out.slice(0, l); +} +function write_old_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 3; + switch (cell.t) { + case "n": + out[2] = 2; + dv.setFloat64(l, cell.v, true); + flags |= 32; + l += 8; + break; + case "b": + out[2] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 32; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[2] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 16; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(4, flags, true); + return out.slice(0, l); +} function parse_cell_storage(buf, sst, rsst) { switch (buf[0]) { case 0: @@ -22454,7 +22554,7 @@ function parse_cell_storage(buf, sst, rsst) { case 3: return parse_old_storage(buf, sst, rsst, buf[0]); case 5: - return parse_storage(buf, sst, rsst); + return parse_new_storage(buf, sst, rsst); default: throw new Error("Unsupported payload version ".concat(buf[0])); } @@ -22463,6 +22563,11 @@ function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); return parse_varint49(pb[1][0].data); } +function write_TSP_Reference(idx) { + var out = []; + out[1] = [{ type: 0, data: write_varint49(idx) }]; + return write_shallow(out); +} function parse_TST_TableDataList(M, root) { var pb = parse_shallow(root.data); var type = varint_to_i32(pb[1][0].data); @@ -22521,7 +22626,8 @@ function parse_TST_TileRowInfo(u8, type) { var cells = []; for (C = 0; C < offsets.length - 1; ++C) cells[offsets[C][0]] = used_storage.subarray(offsets[C][1] * width, offsets[C + 1][1] * width); - cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); + if (offsets.length >= 1) + cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); return { R: R, cells: cells }; } function parse_TST_Tile(M, root) { @@ -22627,7 +22733,7 @@ function parse_TN_DocumentArchive(M, root) { } function parse_numbers_iwa(cfb) { var _a, _b, _c, _d; - var out = {}, indices = []; + var M = {}, indices = []; cfb.FullPaths.forEach(function(p) { if (p.match(/\.iwpv2/)) throw new Error("Unsupported password protection"); @@ -22648,16 +22754,16 @@ function parse_numbers_iwa(cfb) { return console.log("## " + (e.message || e)); } packets.forEach(function(packet) { - out[packet.id] = packet.messages; + M[packet.id] = packet.messages; indices.push(packet.id); }); }); if (!indices.length) throw new Error("File has no messages"); - var docroot = ((_d = (_c = (_b = (_a = out == null ? void 0 : out[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(out[1][0].meta[1][0].data) == 1 && out[1][0]; + var docroot = ((_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) == 1 && M[1][0]; if (!docroot) indices.forEach(function(idx) { - out[idx].forEach(function(iwam) { + M[idx].forEach(function(iwam) { var mtype = varint_to_i32(iwam.meta[1][0].data) >>> 0; if (mtype == 1) { if (!docroot) @@ -22669,7 +22775,325 @@ function parse_numbers_iwa(cfb) { }); if (!docroot) throw new Error("Cannot find Document root"); - return parse_TN_DocumentArchive(out, docroot); + return parse_TN_DocumentArchive(M, docroot); +} +function write_tile_row(tri, data, SST) { + var _a, _b, _c, _d; + 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 wide_offsets = ((_d = (_c = tri[8]) == null ? void 0 : _c[0]) == null ? void 0 : _d.data) && varint_to_i32(tri[8][0].data) > 0 || false; + if (wide_offsets) + throw "Math only works with normal offsets"; + var cnt = 0; + var dv = u8_to_dataview(tri[7][0].data), last_offset = 0, cell_storage = []; + var _dv = u8_to_dataview(tri[4][0].data), _last_offset = 0, _cell_storage = []; + for (var C = 0; C < data.length; ++C) { + if (data[C] == null) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535); + continue; + } + dv.setUint16(C * 2, last_offset, true); + _dv.setUint16(C * 2, _last_offset, true); + var celload, _celload; + switch (typeof data[C]) { + case "string": + celload = write_new_storage({ t: "s", v: data[C] }, SST); + _celload = write_old_storage({ t: "s", v: data[C] }, SST); + break; + case "number": + celload = write_new_storage({ t: "n", v: data[C] }, SST); + _celload = write_old_storage({ t: "n", v: data[C] }, SST); + break; + case "boolean": + celload = write_new_storage({ t: "b", v: data[C] }, SST); + _celload = write_old_storage({ t: "b", v: data[C] }, SST); + break; + default: + throw new Error("Unsupported value " + data[C]); + } + cell_storage.push(celload); + last_offset += celload.length; + _cell_storage.push(_celload); + _last_offset += _celload.length; + ++cnt; + } + tri[2][0].data = write_varint49(cnt); + for (; C < tri[7][0].data.length / 2; ++C) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535, true); + } + tri[6][0].data = u8concat(cell_storage); + tri[3][0].data = u8concat(_cell_storage); + return cnt; +} +function write_numbers_iwa(wb, opts) { + if (!opts || !opts.numbers) + throw new Error("Must pass a `numbers` option -- check the README"); + var ws = wb.Sheets[wb.SheetNames[0]]; + if (wb.SheetNames.length > 1) + console.error("The Numbers writer currently writes only the first table"); + var range = decode_range(ws["!ref"]); + range.s.r = range.s.c = 0; + var trunc = false; + if (range.e.c > 9) { + trunc = true; + range.e.c = 9; + } + if (range.e.r > 49) { + trunc = true; + range.e.r = 49; + } + if (trunc) + console.error("The Numbers writer is currently limited to ".concat(encode_range(range))); + var data = sheet_to_json(ws, { range: range, header: 1 }); + var SST = ["~Sh33tJ5~"]; + data.forEach(function(row) { + return row.forEach(function(cell) { + if (typeof cell == "string") + SST.push(cell); + }); + }); + var dependents = {}; + var indices = []; + var cfb = CFB.read(opts.numbers, { type: "base64" }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (fi.type != 2) + return; + if (!fi.name.match(/\.iwa/)) + return; + var old_content = fi.content; + var raw1 = decompress_iwa_file(old_content); + var x2 = parse_iwa_file(raw1); + x2.forEach(function(packet2) { + indices.push(packet2.id); + dependents[packet2.id] = { deps: [], location: fp, type: varint_to_i32(packet2.messages[0].meta[1][0].data) }; + }); + }); + indices.sort(function(x2, y2) { + return x2 - y2; + }); + var indices_varint = indices.filter(function(x2) { + return x2 > 1; + }).map(function(x2) { + return [x2, write_varint49(x2)]; + }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (!fi.name.match(/\.iwa/)) + return; + var x2 = parse_iwa_file(decompress_iwa_file(fi.content)); + x2.forEach(function(ia) { + ia.messages.forEach(function(m) { + 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); + } + }); + }); + }); + }); + function get_unique_msgid() { + for (var i = 927262; i < 2e6; ++i) + if (!dependents[i]) + return i; + throw new Error("Too many messages"); + } + var entry = CFB.find(cfb, dependents[1].location); + var x = parse_iwa_file(decompress_iwa_file(entry.content)); + var docroot; + for (var xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if (packet.id == 1) + docroot = packet; + } + var sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[1][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + var pb = parse_shallow(docroot.messages[0].data); + { + pb[6][0].data = write_varint49(range.e.r + 1); + pb[7][0].data = write_varint49(range.e.c + 1); + var cruidsref = parse_TSP_Reference(pb[46][0].data); + var oldbucket = CFB.find(cfb, dependents[cruidsref].location); + var _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + for (var j = 0; j < _x.length; ++j) { + if (_x[j].id == cruidsref) + break; + } + if (_x[j].id != cruidsref) + throw "Bad ColumnRowUIDMapArchive"; + var cruids = parse_shallow(_x[j].messages[0].data); + cruids[1] = []; + cruids[2] = [], cruids[3] = []; + for (var C = 0; C <= range.e.c; ++C) { + var uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(C + 420690) }]; + cruids[1].push({ type: 2, data: write_shallow(uuid) }); + cruids[2].push({ type: 0, data: write_varint49(C) }); + cruids[3].push({ type: 0, data: write_varint49(C) }); + } + cruids[4] = []; + cruids[5] = [], cruids[6] = []; + for (var R = 0; R <= range.e.r; ++R) { + uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(R + 726270) }]; + cruids[4].push({ type: 2, data: write_shallow(uuid) }); + cruids[5].push({ type: 0, data: write_varint49(R) }); + cruids[6].push({ type: 0, data: write_varint49(R) }); + } + _x[j].messages[0].data = write_shallow(cruids); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + delete pb[46]; + var store = parse_shallow(pb[4][0].data); + { + store[7][0].data = write_varint49(range.e.r + 1); + var row_headers = parse_shallow(store[1][0].data); + var row_header_ref = parse_TSP_Reference(row_headers[2][0].data); + oldbucket = CFB.find(cfb, dependents[row_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != row_header_ref) + throw "Bad HeaderStorageBucket"; + var base_bucket = parse_shallow(_x[0].messages[0].data); + for (R = 0; R < data.length; ++R) { + var _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(R); + _bucket[4][0].data = write_varint49(data[R].length); + base_bucket[2][R] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var col_header_ref = parse_TSP_Reference(store[2][0].data); + oldbucket = CFB.find(cfb, dependents[col_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != col_header_ref) + throw "Bad HeaderStorageBucket"; + base_bucket = parse_shallow(_x[0].messages[0].data); + for (C = 0; C <= range.e.c; ++C) { + _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(C); + _bucket[4][0].data = write_varint49(range.e.r + 1); + base_bucket[2][C] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var sstref = parse_TSP_Reference(store[4][0].data); + (function() { + var sentry = CFB.find(cfb, dependents[sstref].location); + var sx = parse_iwa_file(decompress_iwa_file(sentry.content)); + var sstroot; + for (var sxi = 0; sxi < sx.length; ++sxi) { + var packet2 = sx[sxi]; + if (packet2.id == sstref) + sstroot = packet2; + } + var sstdata = parse_shallow(sstroot.messages[0].data); + { + sstdata[3] = []; + var newsst = []; + SST.forEach(function(str, i) { + newsst[1] = [{ type: 0, data: write_varint49(i) }]; + newsst[2] = [{ type: 0, data: write_varint49(1) }]; + newsst[3] = [{ type: 2, data: stru8(str) }]; + sstdata[3].push({ type: 2, data: write_shallow(newsst) }); + }); + } + sstroot.messages[0].data = write_shallow(sstdata); + var sy = write_iwa_file(sx); + var raw32 = compress_iwa_file(sy); + sentry.content = raw32; + sentry.size = sentry.content.length; + })(); + var tile = parse_shallow(store[3][0].data); + { + var t = tile[1][0]; + delete tile[2]; + var tl = parse_shallow(t.data); + { + var tileref = parse_TSP_Reference(tl[2][0].data); + (function() { + var tentry = CFB.find(cfb, dependents[tileref].location); + var tx = parse_iwa_file(decompress_iwa_file(tentry.content)); + var tileroot; + for (var sxi = 0; sxi < tx.length; ++sxi) { + var packet2 = tx[sxi]; + if (packet2.id == tileref) + tileroot = packet2; + } + var tiledata = parse_shallow(tileroot.messages[0].data); + { + delete tiledata[6]; + delete tile[7]; + var rowload = new Uint8Array(tiledata[5][0].data); + tiledata[5] = []; + var cnt = 0; + for (var R2 = 0; R2 <= range.e.r; ++R2) { + var tilerow = parse_shallow(rowload); + cnt += write_tile_row(tilerow, data[R2], SST); + tilerow[1][0].data = write_varint49(R2); + tiledata[5].push({ data: write_shallow(tilerow), type: 2 }); + } + tiledata[1] = [{ type: 0, data: write_varint49(range.e.c + 1) }]; + tiledata[2] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + tiledata[3] = [{ type: 0, data: write_varint49(cnt) }]; + tiledata[4] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + } + tileroot.messages[0].data = write_shallow(tiledata); + var ty = write_iwa_file(tx); + var raw32 = compress_iwa_file(ty); + tentry.content = raw32; + tentry.size = tentry.content.length; + })(); + } + t.data = write_shallow(tl); + } + store[3][0].data = write_shallow(tile); + } + pb[4][0].data = write_shallow(store); + } + docroot.messages[0].data = write_shallow(pb); + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + entry.content = raw3; + entry.size = entry.content.length; + return cfb; } function fix_opts_func(defaults/*:Array >*/)/*:{(o:any):void}*/ { return function fix_opts(opts) { @@ -23010,6 +23434,7 @@ function parse_xlsxcfb(cfb, _opts/*:?ParseOpts*/)/*:Workbook*/ { function write_zip(wb/*:Workbook*/, opts/*:WriteOpts*/)/*:ZIP*/ { if(opts.bookType == "ods") return write_ods(wb, opts); + if(opts.bookType == "numbers") return write_numbers_iwa(wb, opts); if(opts.bookType == "xlsb") return write_zip_xlsxb(wb, opts); return write_zip_xlsx(wb, opts); } @@ -23578,6 +24003,7 @@ function writeSync(wb/*:Workbook*/, opts/*:?WriteOpts*/) { case 'xlsm': case 'xlam': case 'xlsb': + case 'numbers': case 'ods': return write_zip_type(wb, o); default: throw new Error ("Unrecognized bookType |" + o.bookType + "|"); } diff --git a/xlsx.js b/xlsx.js index f737cf8..e61c7cc 100644 --- a/xlsx.js +++ b/xlsx.js @@ -4,7 +4,7 @@ /*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.4'; +XLSX.version = '0.18.5'; var current_codepage = 1200, current_ansi = 1252; /*global cptable:true, window */ var $cptable; @@ -21889,6 +21889,19 @@ function u8_to_dataview(array) { function u8str(u8) { return typeof TextDecoder != "undefined" ? new TextDecoder().decode(u8) : utf8read(a2s(u8)); } +function stru8(str) { + return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); +} +function u8contains(body, search) { + outer: + for (var L = 0; 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; @@ -21913,6 +21926,15 @@ function readDecimal128LE(buf, offset) { mantissa = mantissa * 256 + buf[j]; return (buf[offset + 15] & 128 ? -mantissa : mantissa) * Math.pow(10, exp - 6176); } +function writeDecimal128LE(buf, offset, value) { + var exp = Math.floor(value == 0 ? 0 : Math.LOG10E * Math.log(Math.abs(value))) + 6176 - 20; + var mantissa = value / Math.pow(10, exp - 6176); + buf[offset + 15] |= exp >> 7; + buf[offset + 14] |= (exp & 127) << 1; + for (var i = 0; mantissa >= 1; ++i, mantissa /= 256) + buf[offset + i] = mantissa & 255; + buf[offset + 15] |= value >= 0 ? 0 : 128; +} function parse_varint49(buf, ptr) { var l = ptr ? ptr[0] : 0; var usz = buf[l] & 127; @@ -22038,7 +22060,7 @@ function parse_shallow(buf) { default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { offset: off, data: res, type: type }; + var v = { data: res, type: type }; if (out[num] == null) out[num] = [v]; else @@ -22050,6 +22072,8 @@ function write_shallow(proto) { var out = []; proto.forEach(function(field, idx) { field.forEach(function(item) { + if (!item.data) + return; out.push(write_varint49(idx * 8 + item.type)); if (item.type == 2) out.push(write_varint49(item.data.length)); @@ -22059,21 +22083,12 @@ function write_shallow(proto) { return u8concat(out); } function mappa(data, cb) { - if (!data) - return []; - return data.map(function(d) { - var _a; - try { - return cb(d.data); - } catch (e) { - var m = (_a = e.message) == null ? void 0 : _a.match(/at offset (\d+)/); - if (m) - e.message = e.message.replace(/at offset (\d+)/, "at offset " + (+m[1] + d.offset)); - throw e; - } - }); + return (data == null ? void 0 : data.map(function(d) { + return cb(d.data); + })) || []; } function parse_iwa_file(buf) { + var _a; var out = [], ptr = [0]; while (ptr[0] < buf.length) { var len = parse_varint49(buf, ptr); @@ -22092,10 +22107,35 @@ function parse_iwa_file(buf) { }); ptr[0] += fl; }); + if ((_a = ai[3]) == null ? void 0 : _a[0]) + res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; out.push(res); } return out; } +function write_iwa_file(ias) { + var bufs = []; + ias.forEach(function(ia) { + var ai = []; + ai[1] = [{ data: write_varint49(ia.id), type: 0 }]; + ai[2] = []; + if (ia.merge != null) + ai[3] = [{ data: write_varint49(+!!ia.merge), type: 0 }]; + var midata = []; + ia.messages.forEach(function(mi) { + midata.push(mi.data); + mi.meta[3] = [{ type: 0, data: write_varint49(mi.data.length) }]; + ai[2].push({ data: write_shallow(mi.meta), type: 2 }); + }); + var aipayload = write_shallow(ai); + bufs.push(write_varint49(aipayload.length)); + bufs.push(aipayload); + midata.forEach(function(mid) { + return bufs.push(mid); + }); + }); + return u8concat(bufs); +} function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); @@ -22250,7 +22290,7 @@ function parse_old_storage(buf, sst, rsst, v) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -22272,7 +22312,7 @@ function parse_old_storage(buf, sst, rsst, v) { } return ret; } -function parse_storage(buf, sst, rsst) { +function parse_new_storage(buf, sst, rsst) { var dv = u8_to_dataview(buf); var flags = dv.getUint32(8, true); var data_offset = 12; @@ -22314,7 +22354,7 @@ function parse_storage(buf, sst, rsst) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -22335,6 +22375,66 @@ function parse_storage(buf, sst, rsst) { } return ret; } +function write_new_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 5; + switch (cell.t) { + case "n": + out[1] = 2; + writeDecimal128LE(out, l, cell.v); + flags |= 1; + l += 16; + break; + case "b": + out[1] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 2; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[1] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 8; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(8, flags, true); + return out.slice(0, l); +} +function write_old_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 3; + switch (cell.t) { + case "n": + out[2] = 2; + dv.setFloat64(l, cell.v, true); + flags |= 32; + l += 8; + break; + case "b": + out[2] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 32; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[2] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 16; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(4, flags, true); + return out.slice(0, l); +} function parse_cell_storage(buf, sst, rsst) { switch (buf[0]) { case 0: @@ -22343,7 +22443,7 @@ function parse_cell_storage(buf, sst, rsst) { case 3: return parse_old_storage(buf, sst, rsst, buf[0]); case 5: - return parse_storage(buf, sst, rsst); + return parse_new_storage(buf, sst, rsst); default: throw new Error("Unsupported payload version ".concat(buf[0])); } @@ -22352,6 +22452,11 @@ function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); return parse_varint49(pb[1][0].data); } +function write_TSP_Reference(idx) { + var out = []; + out[1] = [{ type: 0, data: write_varint49(idx) }]; + return write_shallow(out); +} function parse_TST_TableDataList(M, root) { var pb = parse_shallow(root.data); var type = varint_to_i32(pb[1][0].data); @@ -22410,7 +22515,8 @@ function parse_TST_TileRowInfo(u8, type) { var cells = []; for (C = 0; C < offsets.length - 1; ++C) cells[offsets[C][0]] = used_storage.subarray(offsets[C][1] * width, offsets[C + 1][1] * width); - cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); + if (offsets.length >= 1) + cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); return { R: R, cells: cells }; } function parse_TST_Tile(M, root) { @@ -22516,7 +22622,7 @@ function parse_TN_DocumentArchive(M, root) { } function parse_numbers_iwa(cfb) { var _a, _b, _c, _d; - var out = {}, indices = []; + var M = {}, indices = []; cfb.FullPaths.forEach(function(p) { if (p.match(/\.iwpv2/)) throw new Error("Unsupported password protection"); @@ -22537,16 +22643,16 @@ function parse_numbers_iwa(cfb) { return console.log("## " + (e.message || e)); } packets.forEach(function(packet) { - out[packet.id] = packet.messages; + M[packet.id] = packet.messages; indices.push(packet.id); }); }); if (!indices.length) throw new Error("File has no messages"); - var docroot = ((_d = (_c = (_b = (_a = out == null ? void 0 : out[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(out[1][0].meta[1][0].data) == 1 && out[1][0]; + var docroot = ((_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) == 1 && M[1][0]; if (!docroot) indices.forEach(function(idx) { - out[idx].forEach(function(iwam) { + M[idx].forEach(function(iwam) { var mtype = varint_to_i32(iwam.meta[1][0].data) >>> 0; if (mtype == 1) { if (!docroot) @@ -22558,7 +22664,325 @@ function parse_numbers_iwa(cfb) { }); if (!docroot) throw new Error("Cannot find Document root"); - return parse_TN_DocumentArchive(out, docroot); + return parse_TN_DocumentArchive(M, docroot); +} +function write_tile_row(tri, data, SST) { + var _a, _b, _c, _d; + 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 wide_offsets = ((_d = (_c = tri[8]) == null ? void 0 : _c[0]) == null ? void 0 : _d.data) && varint_to_i32(tri[8][0].data) > 0 || false; + if (wide_offsets) + throw "Math only works with normal offsets"; + var cnt = 0; + var dv = u8_to_dataview(tri[7][0].data), last_offset = 0, cell_storage = []; + var _dv = u8_to_dataview(tri[4][0].data), _last_offset = 0, _cell_storage = []; + for (var C = 0; C < data.length; ++C) { + if (data[C] == null) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535); + continue; + } + dv.setUint16(C * 2, last_offset, true); + _dv.setUint16(C * 2, _last_offset, true); + var celload, _celload; + switch (typeof data[C]) { + case "string": + celload = write_new_storage({ t: "s", v: data[C] }, SST); + _celload = write_old_storage({ t: "s", v: data[C] }, SST); + break; + case "number": + celload = write_new_storage({ t: "n", v: data[C] }, SST); + _celload = write_old_storage({ t: "n", v: data[C] }, SST); + break; + case "boolean": + celload = write_new_storage({ t: "b", v: data[C] }, SST); + _celload = write_old_storage({ t: "b", v: data[C] }, SST); + break; + default: + throw new Error("Unsupported value " + data[C]); + } + cell_storage.push(celload); + last_offset += celload.length; + _cell_storage.push(_celload); + _last_offset += _celload.length; + ++cnt; + } + tri[2][0].data = write_varint49(cnt); + for (; C < tri[7][0].data.length / 2; ++C) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535, true); + } + tri[6][0].data = u8concat(cell_storage); + tri[3][0].data = u8concat(_cell_storage); + return cnt; +} +function write_numbers_iwa(wb, opts) { + if (!opts || !opts.numbers) + throw new Error("Must pass a `numbers` option -- check the README"); + var ws = wb.Sheets[wb.SheetNames[0]]; + if (wb.SheetNames.length > 1) + console.error("The Numbers writer currently writes only the first table"); + var range = decode_range(ws["!ref"]); + range.s.r = range.s.c = 0; + var trunc = false; + if (range.e.c > 9) { + trunc = true; + range.e.c = 9; + } + if (range.e.r > 49) { + trunc = true; + range.e.r = 49; + } + if (trunc) + console.error("The Numbers writer is currently limited to ".concat(encode_range(range))); + var data = sheet_to_json(ws, { range: range, header: 1 }); + var SST = ["~Sh33tJ5~"]; + data.forEach(function(row) { + return row.forEach(function(cell) { + if (typeof cell == "string") + SST.push(cell); + }); + }); + var dependents = {}; + var indices = []; + var cfb = CFB.read(opts.numbers, { type: "base64" }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (fi.type != 2) + return; + if (!fi.name.match(/\.iwa/)) + return; + var old_content = fi.content; + var raw1 = decompress_iwa_file(old_content); + var x2 = parse_iwa_file(raw1); + x2.forEach(function(packet2) { + indices.push(packet2.id); + dependents[packet2.id] = { deps: [], location: fp, type: varint_to_i32(packet2.messages[0].meta[1][0].data) }; + }); + }); + indices.sort(function(x2, y2) { + return x2 - y2; + }); + var indices_varint = indices.filter(function(x2) { + return x2 > 1; + }).map(function(x2) { + return [x2, write_varint49(x2)]; + }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (!fi.name.match(/\.iwa/)) + return; + var x2 = parse_iwa_file(decompress_iwa_file(fi.content)); + x2.forEach(function(ia) { + ia.messages.forEach(function(m) { + 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); + } + }); + }); + }); + }); + function get_unique_msgid() { + for (var i = 927262; i < 2e6; ++i) + if (!dependents[i]) + return i; + throw new Error("Too many messages"); + } + var entry = CFB.find(cfb, dependents[1].location); + var x = parse_iwa_file(decompress_iwa_file(entry.content)); + var docroot; + for (var xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if (packet.id == 1) + docroot = packet; + } + var sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[1][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + var pb = parse_shallow(docroot.messages[0].data); + { + pb[6][0].data = write_varint49(range.e.r + 1); + pb[7][0].data = write_varint49(range.e.c + 1); + var cruidsref = parse_TSP_Reference(pb[46][0].data); + var oldbucket = CFB.find(cfb, dependents[cruidsref].location); + var _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + for (var j = 0; j < _x.length; ++j) { + if (_x[j].id == cruidsref) + break; + } + if (_x[j].id != cruidsref) + throw "Bad ColumnRowUIDMapArchive"; + var cruids = parse_shallow(_x[j].messages[0].data); + cruids[1] = []; + cruids[2] = [], cruids[3] = []; + for (var C = 0; C <= range.e.c; ++C) { + var uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(C + 420690) }]; + cruids[1].push({ type: 2, data: write_shallow(uuid) }); + cruids[2].push({ type: 0, data: write_varint49(C) }); + cruids[3].push({ type: 0, data: write_varint49(C) }); + } + cruids[4] = []; + cruids[5] = [], cruids[6] = []; + for (var R = 0; R <= range.e.r; ++R) { + uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(R + 726270) }]; + cruids[4].push({ type: 2, data: write_shallow(uuid) }); + cruids[5].push({ type: 0, data: write_varint49(R) }); + cruids[6].push({ type: 0, data: write_varint49(R) }); + } + _x[j].messages[0].data = write_shallow(cruids); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + delete pb[46]; + var store = parse_shallow(pb[4][0].data); + { + store[7][0].data = write_varint49(range.e.r + 1); + var row_headers = parse_shallow(store[1][0].data); + var row_header_ref = parse_TSP_Reference(row_headers[2][0].data); + oldbucket = CFB.find(cfb, dependents[row_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != row_header_ref) + throw "Bad HeaderStorageBucket"; + var base_bucket = parse_shallow(_x[0].messages[0].data); + for (R = 0; R < data.length; ++R) { + var _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(R); + _bucket[4][0].data = write_varint49(data[R].length); + base_bucket[2][R] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var col_header_ref = parse_TSP_Reference(store[2][0].data); + oldbucket = CFB.find(cfb, dependents[col_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != col_header_ref) + throw "Bad HeaderStorageBucket"; + base_bucket = parse_shallow(_x[0].messages[0].data); + for (C = 0; C <= range.e.c; ++C) { + _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(C); + _bucket[4][0].data = write_varint49(range.e.r + 1); + base_bucket[2][C] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var sstref = parse_TSP_Reference(store[4][0].data); + (function() { + var sentry = CFB.find(cfb, dependents[sstref].location); + var sx = parse_iwa_file(decompress_iwa_file(sentry.content)); + var sstroot; + for (var sxi = 0; sxi < sx.length; ++sxi) { + var packet2 = sx[sxi]; + if (packet2.id == sstref) + sstroot = packet2; + } + var sstdata = parse_shallow(sstroot.messages[0].data); + { + sstdata[3] = []; + var newsst = []; + SST.forEach(function(str, i) { + newsst[1] = [{ type: 0, data: write_varint49(i) }]; + newsst[2] = [{ type: 0, data: write_varint49(1) }]; + newsst[3] = [{ type: 2, data: stru8(str) }]; + sstdata[3].push({ type: 2, data: write_shallow(newsst) }); + }); + } + sstroot.messages[0].data = write_shallow(sstdata); + var sy = write_iwa_file(sx); + var raw32 = compress_iwa_file(sy); + sentry.content = raw32; + sentry.size = sentry.content.length; + })(); + var tile = parse_shallow(store[3][0].data); + { + var t = tile[1][0]; + delete tile[2]; + var tl = parse_shallow(t.data); + { + var tileref = parse_TSP_Reference(tl[2][0].data); + (function() { + var tentry = CFB.find(cfb, dependents[tileref].location); + var tx = parse_iwa_file(decompress_iwa_file(tentry.content)); + var tileroot; + for (var sxi = 0; sxi < tx.length; ++sxi) { + var packet2 = tx[sxi]; + if (packet2.id == tileref) + tileroot = packet2; + } + var tiledata = parse_shallow(tileroot.messages[0].data); + { + delete tiledata[6]; + delete tile[7]; + var rowload = new Uint8Array(tiledata[5][0].data); + tiledata[5] = []; + var cnt = 0; + for (var R2 = 0; R2 <= range.e.r; ++R2) { + var tilerow = parse_shallow(rowload); + cnt += write_tile_row(tilerow, data[R2], SST); + tilerow[1][0].data = write_varint49(R2); + tiledata[5].push({ data: write_shallow(tilerow), type: 2 }); + } + tiledata[1] = [{ type: 0, data: write_varint49(range.e.c + 1) }]; + tiledata[2] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + tiledata[3] = [{ type: 0, data: write_varint49(cnt) }]; + tiledata[4] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + } + tileroot.messages[0].data = write_shallow(tiledata); + var ty = write_iwa_file(tx); + var raw32 = compress_iwa_file(ty); + tentry.content = raw32; + tentry.size = tentry.content.length; + })(); + } + t.data = write_shallow(tl); + } + store[3][0].data = write_shallow(tile); + } + pb[4][0].data = write_shallow(store); + } + docroot.messages[0].data = write_shallow(pb); + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + entry.content = raw3; + entry.size = entry.content.length; + return cfb; } function fix_opts_func(defaults) { return function fix_opts(opts) { @@ -22897,6 +23321,7 @@ if(einfo[0] == 0x02 && typeof decrypt_std76 !== 'undefined') return decrypt_std7 function write_zip(wb, opts) { if(opts.bookType == "ods") return write_ods(wb, opts); + if(opts.bookType == "numbers") return write_numbers_iwa(wb, opts); if(opts.bookType == "xlsb") return write_zip_xlsxb(wb, opts); return write_zip_xlsx(wb, opts); } @@ -23462,6 +23887,7 @@ function writeSync(wb, opts) { case 'xlsm': case 'xlam': case 'xlsb': + case 'numbers': case 'ods': return write_zip_type(wb, o); default: throw new Error ("Unrecognized bookType |" + o.bookType + "|"); } diff --git a/xlsx.mini.flow.js b/xlsx.mini.flow.js index 1ce3ac3..0553f24 100644 --- a/xlsx.mini.flow.js +++ b/xlsx.mini.flow.js @@ -4,7 +4,7 @@ /*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.4'; +XLSX.version = '0.18.5'; var current_codepage = 1200, current_ansi = 1252; var VALID_ANSI = [ 874, 932, 936, 949, 950, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, 10000 ]; @@ -63,76 +63,72 @@ var _getchar = function _gc1(x/*:number*/)/*:string*/ { return String.fromCharCo var _getansi = function _ga1(x/*:number*/)/*:string*/ { return String.fromCharCode(x); }; var DENSE = null; var DIF_XL = true; -var Base64 = function() { - var map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; - return { - encode: function(input) { - var o = ""; - var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; - for (var i = 0; i < input.length; ) { - c1 = input.charCodeAt(i++); - e1 = c1 >> 2; - c2 = input.charCodeAt(i++); - e2 = (c1 & 3) << 4 | c2 >> 4; - c3 = input.charCodeAt(i++); - e3 = (c2 & 15) << 2 | c3 >> 6; - e4 = c3 & 63; - if (isNaN(c2)) { - e3 = e4 = 64; - } else if (isNaN(c3)) { - e4 = 64; - } - o += map.charAt(e1) + map.charAt(e2) + map.charAt(e3) + map.charAt(e4); - } - return o; - }, - decode: function(input) { - var o = ""; - var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; - input = input.replace(/[^\w\+\/\=]/g, ""); - for (var i = 0; i < input.length; ) { - e1 = map.indexOf(input.charAt(i++)); - e2 = map.indexOf(input.charAt(i++)); - c1 = e1 << 2 | e2 >> 4; - o += String.fromCharCode(c1); - e3 = map.indexOf(input.charAt(i++)); - c2 = (e2 & 15) << 4 | e3 >> 2; - if (e3 !== 64) { - o += String.fromCharCode(c2); - } - e4 = map.indexOf(input.charAt(i++)); - c3 = (e3 & 3) << 6 | e4; - if (e4 !== 64) { - o += String.fromCharCode(c3); - } - } - return o; +var Base64_map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; +function Base64_encode(input) { + var o = ""; + var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; + for (var i = 0; i < input.length; ) { + c1 = input.charCodeAt(i++); + e1 = c1 >> 2; + c2 = input.charCodeAt(i++); + e2 = (c1 & 3) << 4 | c2 >> 4; + c3 = input.charCodeAt(i++); + e3 = (c2 & 15) << 2 | c3 >> 6; + e4 = c3 & 63; + if (isNaN(c2)) { + e3 = e4 = 64; + } else if (isNaN(c3)) { + e4 = 64; } - }; -}(); -var has_buf = (typeof Buffer !== 'undefined' && typeof process !== 'undefined' && typeof process.versions !== 'undefined' && !!process.versions.node); - -var Buffer_from = /*::(*/function(){}/*:: :any)*/; - -if(typeof Buffer !== 'undefined') { - var nbfs = !Buffer.from; - if(!nbfs) try { Buffer.from("foo", "utf8"); } catch(e) { nbfs = true; } - Buffer_from = nbfs ? function(buf, enc) { return (enc) ? new Buffer(buf, enc) : new Buffer(buf); } : Buffer.from.bind(Buffer); - // $FlowIgnore - if(!Buffer.alloc) Buffer.alloc = function(n) { return new Buffer(n); }; - // $FlowIgnore - if(!Buffer.allocUnsafe) Buffer.allocUnsafe = function(n) { return new Buffer(n); }; + o += Base64_map.charAt(e1) + Base64_map.charAt(e2) + Base64_map.charAt(e3) + Base64_map.charAt(e4); + } + return o; } +function Base64_decode(input) { + var o = ""; + var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; + input = input.replace(/[^\w\+\/\=]/g, ""); + for (var i = 0; i < input.length; ) { + e1 = Base64_map.indexOf(input.charAt(i++)); + e2 = Base64_map.indexOf(input.charAt(i++)); + c1 = e1 << 2 | e2 >> 4; + o += String.fromCharCode(c1); + e3 = Base64_map.indexOf(input.charAt(i++)); + c2 = (e2 & 15) << 4 | e3 >> 2; + if (e3 !== 64) { + o += String.fromCharCode(c2); + } + e4 = Base64_map.indexOf(input.charAt(i++)); + c3 = (e3 & 3) << 6 | e4; + if (e4 !== 64) { + o += String.fromCharCode(c3); + } + } + return o; +} +var has_buf = /*#__PURE__*/(function() { return typeof Buffer !== 'undefined' && typeof process !== 'undefined' && typeof process.versions !== 'undefined' && !!process.versions.node; })(); + +var Buffer_from = /*#__PURE__*/(function() { + if(typeof Buffer !== 'undefined') { + var nbfs = !Buffer.from; + if(!nbfs) try { Buffer.from("foo", "utf8"); } catch(e) { nbfs = true; } + return nbfs ? function(buf, enc) { return (enc) ? new Buffer(buf, enc) : new Buffer(buf); } : Buffer.from.bind(Buffer); + } + return function() {}; +})(); + function new_raw_buf(len/*:number*/) { /* jshint -W056 */ - return has_buf ? Buffer.alloc(len) : typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); + if(has_buf) return Buffer.alloc ? Buffer.alloc(len) : new Buffer(len); + return typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); /* jshint +W056 */ } function new_unsafe_buf(len/*:number*/) { /* jshint -W056 */ - return has_buf ? Buffer.allocUnsafe(len) : typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); + if(has_buf) return Buffer.allocUnsafe ? Buffer.allocUnsafe(len) : new Buffer(len); + return typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); /* jshint +W056 */ } @@ -167,6 +163,23 @@ function ab2a(data/*:ArrayBuffer|Uint8Array*/)/*:Array*/ { return o; } +var bconcat = has_buf ? function(bufs) { return Buffer.concat(bufs.map(function(buf) { return Buffer.isBuffer(buf) ? buf : Buffer_from(buf); })); } : function(bufs) { + if(typeof Uint8Array !== "undefined") { + var i = 0, maxlen = 0; + for(i = 0; i < bufs.length; ++i) maxlen += bufs[i].length; + var o = new Uint8Array(maxlen); + var len = 0; + for(i = 0, maxlen = 0; i < bufs.length; maxlen += len, ++i) { + len = bufs[i].length; + if(bufs[i] instanceof Uint8Array) o.set(bufs[i], maxlen); + else if(typeof bufs[i] == "string") { throw "wtf"; } + else o.set(new Uint8Array(bufs[i]), maxlen); + } + return o; + } + return [].concat.apply([], bufs.map(function(buf) { return Array.isArray(buf) ? buf : [].slice.call(buf); })); +}; + function utf8decode(content/*:string*/) { var out = [], widx = 0, L = content.length + 250; var o = new_raw_buf(content.length + 255); @@ -199,23 +212,6 @@ function utf8decode(content/*:string*/) { return bconcat(out); } -var bconcat = function(bufs) { - if(typeof Uint8Array !== "undefined") { - var i = 0, maxlen = 0; - for(i = 0; i < bufs.length; ++i) maxlen += bufs[i].length; - var o = new Uint8Array(maxlen); - var len = 0; - for(i = 0, maxlen = 0; i < bufs.length; maxlen += len, ++i) { - len = bufs[i].length; - if(bufs[i] instanceof Uint8Array) o.set(bufs[i], maxlen); - else if(typeof bufs[i] == "string") { throw "wtf"; } - else o.set(new Uint8Array(bufs[i]), maxlen); - } - return o; - } - return [].concat.apply([], bufs.map(function(buf) { return Array.isArray(buf) ? buf : [].slice.call(buf); })); -}; - var chr0 = /\u0000/g, chr1 = /[\u0001-\u0006]/g; /*:: declare type Block = any; @@ -234,26 +230,19 @@ type EvertArrType = {[string]:Array}; type StringConv = {(string):string}; -type WriteObjStrFactory = {from_sheet(ws:Worksheet, o:any, wb:?Workbook):string}; */ /* ssf.js (C) 2013-present SheetJS -- http://sheetjs.com */ /*jshint -W041 */ -var SSF/*:SSFModule*/ = ({}/*:any*/); -function make_ssf(SSF/*:SSFModule*/){ -SSF.version = '0.11.2'; function _strrev(x/*:string*/)/*:string*/ { var o = "", i = x.length-1; while(i>=0) o += x.charAt(i--); return o; } -function fill(c/*:string*/,l/*:number*/)/*:string*/ { var o = ""; while(o.length < l) o+=c; return o; } function pad0(v/*:any*/,d/*:number*/)/*:string*/{var t=""+v; return t.length>=d?t:fill('0',d-t.length)+t;} function pad_(v/*:any*/,d/*:number*/)/*:string*/{var t=""+v;return t.length>=d?t:fill(' ',d-t.length)+t;} function rpad_(v/*:any*/,d/*:number*/)/*:string*/{var t=""+v; return t.length>=d?t:t+fill(' ',d-t.length);} function pad0r1(v/*:any*/,d/*:number*/)/*:string*/{var t=""+Math.round(v); return t.length>=d?t:fill('0',d-t.length)+t;} function pad0r2(v/*:any*/,d/*:number*/)/*:string*/{var t=""+v; return t.length>=d?t:fill('0',d-t.length)+t;} -var p2_32 = Math.pow(2,32); +var p2_32 = /*#__PURE__*/Math.pow(2,32); function pad0r(v/*:any*/,d/*:number*/)/*:string*/{if(v>p2_32||v<-p2_32) return pad0r1(v,d); var i = Math.round(v); return pad0r2(i,d); } -function isgeneral(s/*:string*/, i/*:?number*/)/*:boolean*/ { i = i || 0; return s.length >= 7 + i && (s.charCodeAt(i)|32) === 103 && (s.charCodeAt(i+1)|32) === 101 && (s.charCodeAt(i+2)|32) === 110 && (s.charCodeAt(i+3)|32) === 101 && (s.charCodeAt(i+4)|32) === 114 && (s.charCodeAt(i+5)|32) === 97 && (s.charCodeAt(i+6)|32) === 108; } -/*:: -type SSF_write_num = {(type:string, fmt:string, val:number):string}; -*/ +/* yes, in 2022 this is still faster than string compare */ +function SSF_isgeneral(s/*:string*/, i/*:?number*/)/*:boolean*/ { i = i || 0; return s.length >= 7 + i && (s.charCodeAt(i)|32) === 103 && (s.charCodeAt(i+1)|32) === 101 && (s.charCodeAt(i+2)|32) === 110 && (s.charCodeAt(i+3)|32) === 101 && (s.charCodeAt(i+4)|32) === 114 && (s.charCodeAt(i+5)|32) === 97 && (s.charCodeAt(i+6)|32) === 108; } var days/*:Array >*/ = [ ['Sun', 'Sunday'], ['Mon', 'Monday'], @@ -277,7 +266,8 @@ var months/*:Array >*/ = [ ['N', 'Nov', 'November'], ['D', 'Dec', 'December'] ]; -function init_table(t/*:any*/) { +function SSF_init_table(t/*:any*/) { + if(!t) t = {}; t[0]= 'General'; t[1]= '0'; t[2]= '0.00'; @@ -307,47 +297,66 @@ function init_table(t/*:any*/) { t[48]= '##0.0E+0'; t[49]= '@'; t[56]= '"上午/下午 "hh"時"mm"分"ss"秒 "'; + return t; } +/* repeated to satiate webpack */ +var table_fmt = { + 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 table_fmt = {}; -init_table(table_fmt); /* Defaults determined by systematically testing in Excel 2019 */ /* These formats appear to default to other formats in the table */ -var default_map/*:Array*/ = []; -var defi = 0; +var SSF_default_map = { + 5: 37, 6: 38, 7: 39, 8: 40, // 5 -> 37 ... 8 -> 40 -// 5 -> 37 ... 8 -> 40 -for(defi = 5; defi <= 8; ++defi) default_map[defi] = 32 + defi; + 23: 0, 24: 0, 25: 0, 26: 0, // 23 -> 0 ... 26 -> 0 -// 23 -> 0 ... 26 -> 0 -for(defi = 23; defi <= 26; ++defi) default_map[defi] = 0; + 27: 14, 28: 14, 29: 14, 30: 14, 31: 14, // 27 -> 14 ... 31 -> 14 -// 27 -> 14 ... 31 -> 14 -for(defi = 27; defi <= 31; ++defi) default_map[defi] = 14; -// 50 -> 14 ... 58 -> 14 -for(defi = 50; defi <= 58; ++defi) default_map[defi] = 14; + 50: 14, 51: 14, 52: 14, 53: 14, 54: 14, // 50 -> 14 ... 58 -> 14 + 55: 14, 56: 14, 57: 14, 58: 14, + 59: 1, 60: 2, 61: 3, 62: 4, // 59 -> 1 ... 62 -> 4 -// 59 -> 1 ... 62 -> 4 -for(defi = 59; defi <= 62; ++defi) default_map[defi] = defi - 58; -// 67 -> 9 ... 68 -> 10 -for(defi = 67; defi <= 68; ++defi) default_map[defi] = defi - 58; -// 72 -> 14 ... 75 -> 17 -for(defi = 72; defi <= 75; ++defi) default_map[defi] = defi - 58; + 67: 9, 68: 10, // 67 -> 9 ... 68 -> 10 + 69: 12, 70: 13, 71: 14, // 69 -> 12 ... 71 -> 14 + 72: 14, 73: 15, 74: 16, 75: 17, // 72 -> 14 ... 75 -> 17 + 76: 20, 77: 21, 78: 22, // 76 -> 20 ... 78 -> 22 + 79: 45, 80: 46, 81: 47, // 79 -> 45 ... 81 -> 47 + 82: 0 // 82 -> 0 ... 65536 -> 0 (omitted) +}; -// 69 -> 12 ... 71 -> 14 -for(defi = 67; defi <= 68; ++defi) default_map[defi] = defi - 57; - -// 76 -> 20 ... 78 -> 22 -for(defi = 76; defi <= 78; ++defi) default_map[defi] = defi - 56; - -// 79 -> 45 ... 81 -> 47 -for(defi = 79; defi <= 81; ++defi) default_map[defi] = defi - 34; - -// 82 -> 0 ... 65536 -> 0 (omitted) /* These formats technically refer to Accounting formats with no equivalent */ -var default_str = { +var SSF_default_str = { // 5 -- Currency, 0 decimal, black negative 5: '"$"#,##0_);\\("$"#,##0\\)', 63: '"$"#,##0_);\\("$"#,##0\\)', @@ -377,7 +386,7 @@ var default_str = { 44: '_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)' }; -function frac(x/*:number*/, D/*:number*/, mixed/*:?boolean*/)/*:Array*/ { +function SSF_frac(x/*:number*/, D/*:number*/, mixed/*:?boolean*/)/*:Array*/ { var sgn = x < 0 ? -1 : 1; var B = x * sgn; var P_2 = 0, P_1 = 1, P = 0; @@ -397,7 +406,7 @@ function frac(x/*:number*/, D/*:number*/, mixed/*:?boolean*/)/*:Array*/ var q = Math.floor(sgn * P/Q); return [q, sgn*P - q*Q, Q]; } -function parse_date_code(v/*:number*/,opts/*:?any*/,b2/*:?boolean*/) { +function SSF_parse_date_code(v/*:number*/,opts/*:?any*/,b2/*:?boolean*/) { if(v > 2958465 || v < 0) return null; var date = (v|0), time = Math.floor(86400 * (v - date)), dow=0; var dout=[]; @@ -418,7 +427,7 @@ function parse_date_code(v/*:number*/,opts/*:?any*/,b2/*:?boolean*/) { dout = [d.getFullYear(), d.getMonth()+1,d.getDate()]; dow = d.getDay(); if(date < 60) dow = (dow + 6) % 7; - if(b2) dow = fix_hijri(d, dout); + if(b2) dow = SSF_fix_hijri(d, dout); } out.y = dout[0]; out.m = dout[1]; out.d = dout[2]; out.S = time % 60; time = Math.floor(time / 60); @@ -427,64 +436,53 @@ function parse_date_code(v/*:number*/,opts/*:?any*/,b2/*:?boolean*/) { out.q = dow; return out; } -SSF.parse_date_code = parse_date_code; -var basedate = new Date(1899, 11, 31, 0, 0, 0); -var dnthresh = basedate.getTime(); -var base1904 = new Date(1900, 2, 1, 0, 0, 0); +var SSFbasedate = /*#__PURE__*/new Date(1899, 11, 31, 0, 0, 0); +var SSFdnthresh = /*#__PURE__*/SSFbasedate.getTime(); +var SSFbase1904 = /*#__PURE__*/new Date(1900, 2, 1, 0, 0, 0); function datenum_local(v/*:Date*/, date1904/*:?boolean*/)/*:number*/ { - var epoch = v.getTime(); + var epoch = /*#__PURE__*/v.getTime(); if(date1904) epoch -= 1461*24*60*60*1000; - else if(v >= base1904) epoch += 24*60*60*1000; - return (epoch - (dnthresh + (v.getTimezoneOffset() - basedate.getTimezoneOffset()) * 60000)) / (24 * 60 * 60 * 1000); + else if(v >= SSFbase1904) epoch += 24*60*60*1000; + return (epoch - (SSFdnthresh + (/*#__PURE__*/v.getTimezoneOffset() - /*#__PURE__*/SSFbasedate.getTimezoneOffset()) * 60000)) / (24 * 60 * 60 * 1000); } -/* The longest 32-bit integer text is "-4294967296", exactly 11 chars */ -function general_fmt_int(v/*:number*/)/*:string*/ { return v.toString(10); } -SSF._general_int = general_fmt_int; - /* ECMA-376 18.8.30 numFmt*/ /* Note: `toPrecision` uses standard form when prec > E and E >= -6 */ -var general_fmt_num = (function make_general_fmt_num() { - var trailing_zeroes_and_decimal = /(?:\.0*|(\.\d*[1-9])0+)$/; - function strip_decimal(o/*:string*/)/*:string*/ { - return (o.indexOf(".") == -1) ? o : o.replace(trailing_zeroes_and_decimal, "$1"); - } +/* exponent >= -9 and <= 9 */ +function SSF_strip_decimal(o/*:string*/)/*:string*/ { + return (o.indexOf(".") == -1) ? o : o.replace(/(?:\.0*|(\.\d*[1-9])0+)$/, "$1"); +} - /* General Exponential always shows 2 digits exp and trims the mantissa */ - var mantissa_zeroes_and_decimal = /(?:\.0*|(\.\d*[1-9])0+)[Ee]/; - var exp_with_single_digit = /(E[+-])(\d)$/; - function normalize_exp(o/*:string*/)/*:string*/ { - if(o.indexOf("E") == -1) return o; - return o.replace(mantissa_zeroes_and_decimal,"$1E").replace(exp_with_single_digit,"$10$2"); - } +/* General Exponential always shows 2 digits exp and trims the mantissa */ +function SSF_normalize_exp(o/*:string*/)/*:string*/ { + if(o.indexOf("E") == -1) return o; + return o.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2"); +} - /* exponent >= -9 and <= 9 */ - function small_exp(v/*:number*/)/*:string*/ { - var w = (v<0?12:11); - var o = strip_decimal(v.toFixed(12)); if(o.length <= w) return o; - o = v.toPrecision(10); if(o.length <= w) return o; - return v.toExponential(5); - } +/* exponent >= -9 and <= 9 */ +function SSF_small_exp(v/*:number*/)/*:string*/ { + var w = (v<0?12:11); + var o = SSF_strip_decimal(v.toFixed(12)); if(o.length <= w) return o; + o = v.toPrecision(10); if(o.length <= w) return o; + return v.toExponential(5); +} - /* exponent >= 11 or <= -10 likely exponential */ - function large_exp(v/*:number*/)/*:string*/ { - var o = strip_decimal(v.toFixed(11)); - return (o.length > (v<0?12:11) || o === "0" || o === "-0") ? v.toPrecision(6) : o; - } +/* exponent >= 11 or <= -10 likely exponential */ +function SSF_large_exp(v/*:number*/)/*:string*/ { + var o = SSF_strip_decimal(v.toFixed(11)); + return (o.length > (v<0?12:11) || o === "0" || o === "-0") ? v.toPrecision(6) : o; +} - function general_fmt_num_base(v/*:number*/)/*:string*/ { - var V = Math.floor(Math.log(Math.abs(v))*Math.LOG10E), o; +function SSF_general_num(v/*:number*/)/*:string*/ { + var V = Math.floor(Math.log(Math.abs(v))*Math.LOG10E), o; - if(V >= -4 && V <= -1) o = v.toPrecision(10+V); - else if(Math.abs(V) <= 9) o = small_exp(v); - else if(V === 10) o = v.toFixed(10).substr(0,12); - else o = large_exp(v); + if(V >= -4 && V <= -1) o = v.toPrecision(10+V); + else if(Math.abs(V) <= 9) o = SSF_small_exp(v); + else if(V === 10) o = v.toFixed(10).substr(0,12); + else o = SSF_large_exp(v); - return strip_decimal(normalize_exp(o.toUpperCase())); - } + return SSF_strip_decimal(SSF_normalize_exp(o.toUpperCase())); +} - return general_fmt_num_base; -})(); -SSF._general_num = general_fmt_num; /* "General" rules: @@ -493,22 +491,23 @@ SSF._general_num = general_fmt_num; - "up to 11 characters" displayed for numbers - Default date format (code 14) used for Dates + The longest 32-bit integer text is "-2147483648", exactly 11 chars TODO: technically the display depends on the width of the cell */ -function general_fmt(v/*:any*/, opts/*:any*/) { +function SSF_general(v/*:any*/, opts/*:any*/) { switch(typeof v) { case 'string': return v; case 'boolean': return v ? "TRUE" : "FALSE"; - case 'number': return (v|0) === v ? v.toString(10) : general_fmt_num(v); + case 'number': return (v|0) === v ? v.toString(10) : SSF_general_num(v); case 'undefined': return ""; case 'object': if(v == null) return ""; - if(v instanceof Date) return format(14, datenum_local(v, opts && opts.date1904), opts); + if(v instanceof Date) return SSF_format(14, datenum_local(v, opts && opts.date1904), opts); } throw new Error("unsupported value in General format: " + v); } -SSF._general = general_fmt; -function fix_hijri(date/*:Date*/, o/*:[number, number, number]*/) { + +function SSF_fix_hijri(date/*:Date*/, o/*:[number, number, number]*/) { /* TODO: properly adjust y/m/d and */ o[0] -= 581; var dow = date.getDay(); @@ -516,8 +515,7 @@ function fix_hijri(date/*:Date*/, o/*:[number, number, number]*/) { return dow; } //var THAI_DIGITS = "\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59".split(""); -/*jshint -W086 */ -function write_date(type/*:number*/, fmt/*:string*/, val, ss0/*:?number*/)/*:string*/ { +function SSF_write_date(type/*:number*/, fmt/*:string*/, val, ss0/*:?number*/)/*:string*/ { var o="", ss=0, tt=0, y = val.y, out, outl = 0; switch(type) { case 98: /* 'b' buddhist year */ @@ -581,6 +579,9 @@ function write_date(type/*:number*/, fmt/*:string*/, val, ss0/*:?number*/)/*:str var outstr = outl > 0 ? pad0(out, outl) : ""; return outstr; } + + +/*jshint -W086 */ /*jshint +W086 */ function commaify(s/*:string*/)/*:string*/ { var w = 3; @@ -589,17 +590,18 @@ function commaify(s/*:string*/)/*:string*/ { for(; j!=s.length; j+=w) o+=(o.length > 0 ? "," : "") + s.substr(j,w); return o; } -var write_num/*:SSF_write_num*/ = (function make_write_num(){ var pct1 = /%/g; function write_num_pct(type/*:string*/, fmt/*:string*/, val/*:number*/)/*:string*/{ var sfmt = fmt.replace(pct1,""), mul = fmt.length - sfmt.length; return write_num(type, sfmt, val * Math.pow(10,2*mul)) + fill("%",mul); } + function write_num_cm(type/*:string*/, fmt/*:string*/, val/*:number*/)/*:string*/{ var idx = fmt.length - 1; while(fmt.charCodeAt(idx-1) === 44) --idx; return write_num(type, fmt.substr(0,idx), val / Math.pow(10,3*(fmt.length-idx))); } + function write_num_exp(fmt/*:string*/, val/*:number*/)/*:string*/{ var o/*:string*/; var idx = fmt.indexOf("E") - fmt.indexOf(".") - 1; @@ -708,7 +710,7 @@ function write_num_flt(type/*:string*/, fmt/*:string*/, val/*:number*/)/*:string var oa = ""; if((r = fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(/*::String(*/r[4]/*::)*/.length,7); - ff = frac(aval, Math.pow(10,ri)-1, false); + ff = SSF_frac(aval, Math.pow(10,ri)-1, false); o = "" + sign; oa = write_num("n", /*::String(*/r[1]/*::)*/, ff[1]); if(oa.charAt(oa.length-1) == " ") oa = oa.substr(0,oa.length-1) + "0"; @@ -720,7 +722,7 @@ function write_num_flt(type/*:string*/, fmt/*:string*/, val/*:number*/)/*:string } if((r = fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(Math.max(r[1].length, r[4].length),7); - ff = frac(aval, Math.pow(10,ri)-1, true); + ff = SSF_frac(aval, Math.pow(10,ri)-1, true); return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad_(ff[1],ri) + r[2] + "/" + r[3] + rpad_(ff[2],ri): fill(" ", 2*ri+1 + r[2].length + r[3].length)); } if((r = fmt.match(/^[#0?]+$/))) { @@ -828,7 +830,7 @@ function write_num_int(type/*:string*/, fmt/*:string*/, val/*:number*/)/*:string var oa = ""; if((r = fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(/*::String(*/r[4]/*::)*/.length,7); - ff = frac(aval, Math.pow(10,ri)-1, false); + ff = SSF_frac(aval, Math.pow(10,ri)-1, false); o = "" + sign; oa = write_num("n", /*::String(*/r[1]/*::)*/, ff[1]); if(oa.charAt(oa.length-1) == " ") oa = oa.substr(0,oa.length-1) + "0"; @@ -840,7 +842,7 @@ function write_num_int(type/*:string*/, fmt/*:string*/, val/*:number*/)/*:string } if((r = fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(Math.max(r[1].length, r[4].length),7); - ff = frac(aval, Math.pow(10,ri)-1, true); + ff = SSF_frac(aval, Math.pow(10,ri)-1, true); return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad_(ff[1],ri) + r[2] + "/" + r[3] + rpad_(ff[2],ri): fill(" ", 2*ri+1 + r[2].length + r[3].length)); } if((r = fmt.match(/^[#0?]+$/))) { @@ -866,10 +868,10 @@ function write_num_int(type/*:string*/, fmt/*:string*/, val/*:number*/)/*:string } throw new Error("unsupported format |" + fmt + "|"); } -return function write_num(type/*:string*/, fmt/*:string*/, val/*:number*/)/*:string*/ { +function write_num(type/*:string*/, fmt/*:string*/, val/*:number*/)/*:string*/ { return (val|0) === val ? write_num_int(type, fmt, val) : write_num_flt(type, fmt, val); -};})(); -function split_fmt(fmt/*:string*/)/*:Array*/ { +} +function SSF_split_fmt(fmt/*:string*/)/*:Array*/ { var out/*:Array*/ = []; var in_str = false/*, cc*/; for(var i = 0, j = 0; i < fmt.length; ++i) switch((/*cc=*/fmt.charCodeAt(i))) { @@ -885,13 +887,13 @@ function split_fmt(fmt/*:string*/)/*:Array*/ { if(in_str === true) throw new Error("Format |" + fmt + "| unterminated string "); return out; } -SSF._split = split_fmt; -var abstime = /\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/; + +var SSF_abstime = /\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/; function fmt_is_date(fmt/*:string*/)/*:boolean*/ { var i = 0, /*cc = 0,*/ c = "", o = ""; while(i < fmt.length) { switch((c = fmt.charAt(i))) { - case 'G': if(isgeneral(fmt, i)) i+= 6; i++; break; + case 'G': if(SSF_isgeneral(fmt, i)) i+= 6; i++; break; case '"': for(;(/*cc=*/fmt.charCodeAt(++i)) !== 34 && i < fmt.length;){/*empty*/} ++i; break; case '\\': i+=2; break; case '_': i+=2; break; @@ -910,7 +912,7 @@ function fmt_is_date(fmt/*:string*/)/*:boolean*/ { case '[': o = c; while(fmt.charAt(i++) !== ']' && i < fmt.length) o += fmt.charAt(i); - if(o.match(abstime)) return true; + if(o.match(SSF_abstime)) return true; break; case '.': /* falls through */ @@ -928,7 +930,7 @@ function fmt_is_date(fmt/*:string*/)/*:boolean*/ { } return false; } -SSF.is_date = fmt_is_date; + function eval_fmt(fmt/*:string*/, v/*:any*/, opts/*:any*/, flen/*:number*/) { var out = [], o = "", i = 0, c = "", lst='t', dt, j, cc; var hr='H'; @@ -936,7 +938,7 @@ function eval_fmt(fmt/*:string*/, v/*:any*/, opts/*:any*/, flen/*:number*/) { while(i < fmt.length) { switch((c = fmt.charAt(i))) { case 'G': /* General */ - if(!isgeneral(fmt, i)) throw new Error('unrecognized character ' + c + ' in ' +fmt); + if(!SSF_isgeneral(fmt, i)) throw new Error('unrecognized character ' + c + ' in ' +fmt); out[out.length] = {t:'G', v:'General'}; i+=7; break; case '"': /* Literal text */ for(o="";(cc=fmt.charCodeAt(++i)) !== 34 && i < fmt.length;) o += String.fromCharCode(cc); @@ -948,7 +950,7 @@ function eval_fmt(fmt/*:string*/, v/*:any*/, opts/*:any*/, flen/*:number*/) { out[out.length] = {t:'T', v:v}; ++i; break; case 'B': case 'b': if(fmt.charAt(i+1) === "1" || fmt.charAt(i+1) === "2") { - if(dt==null) { dt=parse_date_code(v, opts, fmt.charAt(i+1) === "2"); if(dt==null) return ""; } + if(dt==null) { dt=SSF_parse_date_code(v, opts, fmt.charAt(i+1) === "2"); if(dt==null) return ""; } out[out.length] = {t:'X', v:fmt.substr(i,2)}; lst = c; i+=2; break; } /* falls through */ @@ -957,14 +959,14 @@ function eval_fmt(fmt/*:string*/, v/*:any*/, opts/*:any*/, flen/*:number*/) { /* falls through */ case 'm': case 'd': case 'y': case 'h': case 's': case 'e': case 'g': if(v < 0) return ""; - if(dt==null) { dt=parse_date_code(v, opts); if(dt==null) return ""; } + if(dt==null) { dt=SSF_parse_date_code(v, opts); if(dt==null) return ""; } o = c; while(++i < fmt.length && fmt.charAt(i).toLowerCase() === c) o+=c; if(c === 'm' && lst.toLowerCase() === 'h') c = 'M'; if(c === 'h') c = hr; out[out.length] = {t:c, v:o}; lst = c; break; case 'A': case 'a': case '上': var q={t:c, v:c}; - if(dt==null) dt=parse_date_code(v, opts); + if(dt==null) dt=SSF_parse_date_code(v, opts); if(fmt.substr(i, 3).toUpperCase() === "A/P") { if(dt!=null) q.v = dt.H >= 12 ? "P" : "A"; q.t = 'T'; hr='h';i+=3;} else if(fmt.substr(i,5).toUpperCase() === "AM/PM") { if(dt!=null) q.v = dt.H >= 12 ? "PM" : "AM"; q.t = 'T'; i+=5; hr='h'; } else if(fmt.substr(i,5).toUpperCase() === "上午/下午") { if(dt!=null) q.v = dt.H >= 12 ? "下午" : "上午"; q.t = 'T'; i+=5; hr='h'; } @@ -975,8 +977,8 @@ function eval_fmt(fmt/*:string*/, v/*:any*/, opts/*:any*/, flen/*:number*/) { o = c; while(fmt.charAt(i++) !== ']' && i < fmt.length) o += fmt.charAt(i); if(o.slice(-1) !== ']') throw 'unterminated "[" block: |' + o + '|'; - if(o.match(abstime)) { - if(dt==null) { dt=parse_date_code(v, opts); if(dt==null) return ""; } + if(o.match(SSF_abstime)) { + if(dt==null) { dt=SSF_parse_date_code(v, opts); if(dt==null) return ""; } out[out.length] = {t:'Z', v:o.toLowerCase()}; lst = o.charAt(1); } else if(o.indexOf("$") > -1) { @@ -1053,7 +1055,7 @@ function eval_fmt(fmt/*:string*/, v/*:any*/, opts/*:any*/, flen/*:number*/) { case 'X': out[i].v = ""; out[i].t = ";"; break; case 'd': case 'm': case 'y': case 'h': case 'H': case 'M': case 's': case 'e': case 'b': case 'Z': /*::if(!dt) throw "unreachable"; */ - out[i].v = write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0); + out[i].v = SSF_write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0); out[i].t = 't'; break; case 'n': case '?': jj = i+1; @@ -1068,7 +1070,7 @@ function eval_fmt(fmt/*:string*/, v/*:any*/, opts/*:any*/, flen/*:number*/) { } nstr += out[i].v; i = jj-1; break; - case 'G': out[i].t = 't'; out[i].v = general_fmt(v,opts); break; + case 'G': out[i].t = 't'; out[i].v = SSF_general(v,opts); break; } } var vv = "", myv, ostr; @@ -1136,8 +1138,7 @@ function eval_fmt(fmt/*:string*/, v/*:any*/, opts/*:any*/, flen/*:number*/) { for(i=0; i !== out.length; ++i) if(out[i] != null) retval += out[i].v; return retval; } -SSF._eval = eval_fmt; -var cfregex = /\[[=<>]/; + var cfregex2 = /\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/; function chkcond(v, rr) { if(rr == null) return false; @@ -1153,7 +1154,7 @@ function chkcond(v, rr) { return false; } function choose_fmt(f/*:string*/, v/*:any*/) { - var fmt = split_fmt(f); + var fmt = SSF_split_fmt(f); var l = fmt.length, lat = fmt[l-1].indexOf("@"); if(l<4 && lat>-1) --l; if(fmt.length > 4) throw new Error("cannot find right format for |" + fmt.join("|") + "|"); @@ -1166,14 +1167,14 @@ function choose_fmt(f/*:string*/, v/*:any*/) { } var ff = v > 0 ? fmt[0] : v < 0 ? fmt[1] : fmt[2]; if(fmt[0].indexOf("[") === -1 && fmt[1].indexOf("[") === -1) return [l, ff]; - if(fmt[0].match(cfregex) != null || fmt[1].match(cfregex) != null) { + if(fmt[0].match(/\[[=<>]/) != null || fmt[1].match(/\[[=<>]/) != null) { var m1 = fmt[0].match(cfregex2); var m2 = fmt[1].match(cfregex2); return chkcond(v, m1) ? [l, fmt[0]] : chkcond(v, m2) ? [l, fmt[1]] : [l, fmt[m1 != null && m2 != null ? 2 : 1]]; } return [l, ff]; } -function format(fmt/*:string|number*/,v/*:any*/,o/*:?any*/) { +function SSF_format(fmt/*:string|number*/,v/*:any*/,o/*:?any*/) { if(o == null) o = {}; var sfmt = ""; switch(typeof fmt) { @@ -1184,19 +1185,19 @@ function format(fmt/*:string|number*/,v/*:any*/,o/*:?any*/) { case "number": if(fmt == 14 && o.dateNF) sfmt = o.dateNF; else sfmt = (o.table != null ? (o.table/*:any*/) : table_fmt)[fmt]; - if(sfmt == null) sfmt = (o.table && o.table[default_map[fmt]]) || table_fmt[default_map[fmt]]; - if(sfmt == null) sfmt = default_str[fmt] || "General"; + if(sfmt == null) sfmt = (o.table && o.table[SSF_default_map[fmt]]) || table_fmt[SSF_default_map[fmt]]; + if(sfmt == null) sfmt = SSF_default_str[fmt] || "General"; break; } - if(isgeneral(sfmt,0)) return general_fmt(v, o); + if(SSF_isgeneral(sfmt,0)) return SSF_general(v, o); if(v instanceof Date) v = datenum_local(v, o.date1904); var f = choose_fmt(sfmt, v); - if(isgeneral(f[1])) return general_fmt(v, o); + if(SSF_isgeneral(f[1])) return SSF_general(v, o); if(v === true) v = "TRUE"; else if(v === false) v = "FALSE"; else if(v === "" || v == null) return ""; return eval_fmt(f[1], v, o, f[0]); } -function load_entry(fmt/*:string*/, idx/*:?number*/)/*:number*/ { +function SSF_load(fmt/*:string*/, idx/*:?number*/)/*:number*/ { if(typeof idx != 'number') { idx = +idx || -1; /*::if(typeof idx != 'number') return 0x188; */ @@ -1212,36 +1213,24 @@ function load_entry(fmt/*:string*/, idx/*:?number*/)/*:number*/ { table_fmt[idx] = fmt; return idx; } -SSF.load = load_entry; -SSF._table = table_fmt; -SSF.get_table = function get_table()/*:SSFTable*/ { return table_fmt; }; -SSF.load_table = function load_table(tbl/*:SSFTable*/)/*:void*/ { +function SSF_load_table(tbl/*:SSFTable*/)/*:void*/ { for(var i=0; i!=0x0188; ++i) - if(tbl[i] !== undefined) load_entry(tbl[i], i); -}; -SSF.init_table = init_table; -SSF.format = format; + if(tbl[i] !== undefined) SSF_load(tbl[i], i); } -make_ssf(SSF); -/* map from xlml named formats to SSF TODO: localize */ -var XLMLFormatMap/*{[string]:string}*/ = ({ - "General Number": "General", - "General Date": SSF._table[22], - "Long Date": "dddd, mmmm dd, yyyy", - "Medium Date": SSF._table[15], - "Short Date": SSF._table[14], - "Long Time": SSF._table[19], - "Medium Time": SSF._table[18], - "Short Time": SSF._table[20], - "Currency": '"$"#,##0.00_);[Red]\\("$"#,##0.00\\)', - "Fixed": SSF._table[2], - "Standard": SSF._table[4], - "Percent": SSF._table[10], - "Scientific": SSF._table[11], - "Yes/No": '"Yes";"Yes";"No";@', - "True/False": '"True";"True";"False";@', - "On/Off": '"Yes";"Yes";"No";@' -}/*:any*/); + +function make_ssf() { + table_fmt = SSF_init_table(); +} + +var SSF = { + format: SSF_format, + load: SSF_load, + _table: table_fmt, + load_table: SSF_load_table, + parse_date_code: SSF_parse_date_code, + is_date: fmt_is_date, + get_table: function get_table() { return SSF._table = table_fmt; } +}; var SSFImplicit/*{[number]:string}*/ = ({ "5": '"$"#,##0_);\\("$"#,##0\\)', @@ -1286,7 +1275,7 @@ var SSFImplicit/*{[number]:string}*/ = ({ /* dateNF parse TODO: move to SSF */ var dateNFregex = /[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g; function dateNF_regex(dateNF/*:string|number*/)/*:RegExp*/ { - var fmt = typeof dateNF == "number" ? SSF._table[dateNF] : dateNF; + var fmt = typeof dateNF == "number" ? table_fmt[dateNF] : dateNF; fmt = fmt.replace(dateNFregex, "(\\d+)"); return new RegExp("^" + fmt + "$"); } @@ -1311,7 +1300,6 @@ function dateNF_fix(str/*:string*/, dateNF/*:string*/, match/*:Array*/)/ } /*:: -declare var Base64:any; declare var ReadShift:any; declare var CheckField:any; declare var prep_blob:any; @@ -1864,7 +1852,7 @@ function read(blob/*:RawBytes|string*/, options/*:CFBReadOpts*/) { } switch(type || "base64") { case "file": /*:: if(typeof blob !== 'string') throw "Must pass a filename when type='file'"; */return read_file(blob, options); - case "base64": /*:: if(typeof blob !== 'string') throw "Must pass a base64-encoded binary string when type='file'"; */return parse(s2a(Base64.decode(blob)), options); + case "base64": /*:: if(typeof blob !== 'string') throw "Must pass a base64-encoded binary string when type='file'"; */return parse(s2a(Base64_decode(blob)), options); case "binary": /*:: if(typeof blob !== 'string') throw "Must pass a binary string when type='file'"; */return parse(s2a(blob), options); } return parse(/*::typeof blob == 'string' ? new Buffer(blob, 'utf-8') : */blob, options); @@ -2187,7 +2175,7 @@ function write(cfb/*:CFBContainer*/, options/*:CFBWriteOpts*/)/*:RawBytes|string switch(options && options.type || "buffer") { case "file": get_fs(); fs.writeFileSync(options.filename, (o/*:any*/)); return o; case "binary": return typeof o == "string" ? o : a2s(o); - case "base64": return Base64.encode(typeof o == "string" ? o : a2s(o)); + case "base64": return Base64_encode(typeof o == "string" ? o : a2s(o)); case "buffer": if(has_buf) return Buffer.isBuffer(o) ? o : Buffer_from(o); /* falls through */ case "array": return typeof o == "string" ? s2a(o) : o; @@ -2896,7 +2884,7 @@ function get_content_type(fi/*:CFBEntry*/, fp/*:string*/)/*:string*/ { /* 76 character chunks TODO: intertwine encoding */ function write_base64_76(bstr/*:string*/)/*:string*/ { - var data = Base64.encode(bstr); + var data = Base64_encode(bstr); var o = []; for(var i = 0; i < data.length; i+= 76) o.push(data.slice(i, i+76)); return o.join("\r\n") + "\r\n"; @@ -2977,7 +2965,7 @@ function parse_mime(cfb/*:CFBContainer*/, data/*:Array*/, root/*:string* } ++di; switch(cte.toLowerCase()) { - case 'base64': fdata = s2a(Base64.decode(data.slice(di).join(""))); break; + case 'base64': fdata = s2a(Base64_decode(data.slice(di).join(""))); break; case 'quoted-printable': fdata = parse_quoted_printable(data.slice(di)); break; default: throw new Error("Unsupported Content-Transfer-Encoding " + cte); } @@ -3259,16 +3247,16 @@ function evert_arr(obj/*:any*/)/*:EvertArrType*/ { return o; } -var basedate = new Date(1899, 11, 30, 0, 0, 0); // 2209161600000 +var basedate = /*#__PURE__*/new Date(1899, 11, 30, 0, 0, 0); // 2209161600000 function datenum(v/*:Date*/, date1904/*:?boolean*/)/*:number*/ { - var epoch = v.getTime(); + var epoch = /*#__PURE__*/v.getTime(); if(date1904) epoch -= 1462*24*60*60*1000; - var dnthresh = basedate.getTime() + (v.getTimezoneOffset() - basedate.getTimezoneOffset()) * 60000; + var dnthresh = /*#__PURE__*/basedate.getTime() + (/*#__PURE__*/v.getTimezoneOffset() - /*#__PURE__*/basedate.getTimezoneOffset()) * 60000; return (epoch - dnthresh) / (24 * 60 * 60 * 1000); } -var refdate = new Date(); -var dnthresh = basedate.getTime() + (refdate.getTimezoneOffset() - basedate.getTimezoneOffset()) * 60000; -var refoffset = refdate.getTimezoneOffset(); +var refdate = /*#__PURE__*/new Date(); +var dnthresh = /*#__PURE__*/basedate.getTime() + (/*#__PURE__*/refdate.getTimezoneOffset() - /*#__PURE__*/basedate.getTimezoneOffset()) * 60000; +var refoffset = /*#__PURE__*/refdate.getTimezoneOffset(); function numdate(v/*:number*/)/*:Date*/ { var out = new Date(); out.setTime(v * 24 * 60 * 60 * 1000 + dnthresh); @@ -3305,9 +3293,9 @@ function parse_isodur(s) { return sec; } -var good_pd_date = new Date('2017-02-19T19:06:09.000Z'); -if(isNaN(good_pd_date.getFullYear())) good_pd_date = new Date('2/19/17'); -var good_pd = good_pd_date.getFullYear() == 2017; +var good_pd_date_1 = /*#__PURE__*/new Date('2017-02-19T19:06:09.000Z'); +var good_pd_date = /*#__PURE__*/isNaN(/*#__PURE__*/good_pd_date_1.getFullYear()) ? /*#__PURE__*/new Date('2/19/17') : good_pd_date_1; +var good_pd = /*#__PURE__*/good_pd_date.getFullYear() == 2017; /* parses a date as a local date */ function parseDate(str/*:string|Date*/, fixdate/*:?number*/)/*:Date*/ { var d = new Date(str); @@ -3332,12 +3320,30 @@ function parseDate(str/*:string|Date*/, fixdate/*:?number*/)/*:Date*/ { function cc2str(arr/*:Array*/, debomit)/*:string*/ { if(has_buf && Buffer.isBuffer(arr)) { if(debomit) { - if(arr[0] == 0xFF && arr[1] == 0xFE) return arr.slice(2).toString("utf16le"); - if(arr[1] == 0xFE && arr[2] == 0xFF) return utf16beread(arr.slice(2).toString("binary")); + if(arr[0] == 0xFF && arr[1] == 0xFE) return utf8write(arr.slice(2).toString("utf16le")); + if(arr[1] == 0xFE && arr[2] == 0xFF) return utf8write(utf16beread(arr.slice(2).toString("binary"))); } return arr.toString("binary"); } - /* TODO: investigate performance degradation of TextEncoder in Edge 13 */ + + if(typeof TextDecoder !== "undefined") try { + if(debomit) { + if(arr[0] == 0xFF && arr[1] == 0xFE) return utf8write(new TextDecoder("utf-16le").decode(arr.slice(2))); + if(arr[0] == 0xFE && arr[1] == 0xFF) return utf8write(new TextDecoder("utf-16be").decode(arr.slice(2))); + } + var rev = { + "\u20ac": "\x80", "\u201a": "\x82", "\u0192": "\x83", "\u201e": "\x84", + "\u2026": "\x85", "\u2020": "\x86", "\u2021": "\x87", "\u02c6": "\x88", + "\u2030": "\x89", "\u0160": "\x8a", "\u2039": "\x8b", "\u0152": "\x8c", + "\u017d": "\x8e", "\u2018": "\x91", "\u2019": "\x92", "\u201c": "\x93", + "\u201d": "\x94", "\u2022": "\x95", "\u2013": "\x96", "\u2014": "\x97", + "\u02dc": "\x98", "\u2122": "\x99", "\u0161": "\x9a", "\u203a": "\x9b", + "\u0153": "\x9c", "\u017e": "\x9e", "\u0178": "\x9f" + }; + if(Array.isArray(arr)) arr = new Uint8Array(arr); + return new TextDecoder("latin1").decode(arr).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g, function(c) { return rev[c] || c; }); + } catch(e) {} + var o = []; for(var i = 0; i != arr.length; ++i) o.push(String.fromCharCode(arr[i])); return o.join(""); @@ -3382,13 +3388,15 @@ function fuzzydate(s/*:string*/)/*:Date*/ { return o; } -var safe_split_regex = "abacaba".split(/(:?b)/i).length == 5; -function split_regex(str/*:string*/, re, def/*:string*/)/*:Array*/ { - if(safe_split_regex || typeof re == "string") return str.split(re); - var p = str.split(re), o = [p[0]]; - for(var i = 1; i < p.length; ++i) { o.push(def); o.push(p[i]); } - return o; -} +var split_regex = /*#__PURE__*/(function() { + var safe_split_regex = "abacaba".split(/(:?b)/i).length == 5; + return function split_regex(str/*:string*/, re, def/*:string*/)/*:Array*/ { + if(safe_split_regex || typeof re == "string") return str.split(re); + var p = str.split(re), o = [p[0]]; + for(var i = 1; i < p.length; ++i) { o.push(def); o.push(p[i]); } + return o; + }; +})(); function getdatastr(data)/*:?string*/ { if(!data) return null; if(data.content && data.type) return cc2str(data.content, true); @@ -3496,9 +3504,8 @@ function resolve_path(path/*:string*/, base/*:string*/)/*:string*/ { } var XML_HEADER = '\r\n'; var attregexg=/([^"\s?>\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g; -var tagregex=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/mg; - -if(!(XML_HEADER.match(tagregex))) tagregex = /<[^>]*>/g; +var tagregex1=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/mg, tagregex2 = /<[^>]*>/g; +var tagregex = /*#__PURE__*/XML_HEADER.match(tagregex1) ? tagregex1 : tagregex2; var nsregex=/<\w*:/, nsregex2 = /<(\/?)\w+:/; function parsexmltag(tag/*:string*/, skip_root/*:?boolean*/, skip_LC/*:?boolean*/)/*:any*/ { var z = ({}/*:any*/); @@ -3538,7 +3545,7 @@ var encodings = { '<': '<', '&': '&' }; -var rencoding = evert(encodings); +var rencoding = /*#__PURE__*/evert(encodings); //var rencstr = "&<>'\"".split(""); // TODO: CP remap (need to read file version to determine OS) @@ -3587,7 +3594,7 @@ function parsexmlbool(value/*:any*/)/*:boolean*/ { } } -var utf8read/*:StringConv*/ = function utf8reada(orig/*:string*/)/*:string*/ { +function utf8reada(orig/*:string*/)/*:string*/ { var out = "", i = 0, c = 0, d = 0, e = 0, f = 0, w = 0; while (i < orig.length) { c = orig.charCodeAt(i++); @@ -3602,9 +3609,31 @@ var utf8read/*:StringConv*/ = function utf8reada(orig/*:string*/)/*:string*/ { out += String.fromCharCode(0xDC00 + (w&1023)); } return out; -}; +} -var utf8write/*:StringConv*/ = function(orig/*:string*/)/*:string*/ { +function utf8readb(data) { + var out = new_raw_buf(2*data.length), w, i, j = 1, k = 0, ww=0, c; + for(i = 0; i < data.length; i+=j) { + j = 1; + if((c=data.charCodeAt(i)) < 128) w = c; + else if(c < 224) { w = (c&31)*64+(data.charCodeAt(i+1)&63); j=2; } + else if(c < 240) { w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63); j=3; } + else { j = 4; + w = (c & 7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63); + w -= 65536; ww = 0xD800 + ((w>>>10)&1023); w = 0xDC00 + (w&1023); + } + if(ww !== 0) { out[k++] = ww&255; out[k++] = ww>>>8; ww = 0; } + out[k++] = w%256; out[k++] = w>>>8; + } + return out.slice(0,k).toString('ucs2'); +} + +function utf8readc(data) { return Buffer_from(data, 'binary').toString('utf8'); } + +var utf8corpus = "foo bar baz\u00e2\u0098\u0083\u00f0\u009f\u008d\u00a3"; +var utf8read = has_buf && (/*#__PURE__*/utf8readc(utf8corpus) == /*#__PURE__*/utf8reada(utf8corpus) && utf8readc || /*#__PURE__*/utf8readb(utf8corpus) == /*#__PURE__*/utf8reada(utf8corpus) && utf8readb) || utf8reada; + +var utf8write/*:StringConv*/ = has_buf ? function(data) { return Buffer_from(data, 'utf8').toString("binary"); } : function(orig/*:string*/)/*:string*/ { var out/*:Array*/ = [], i = 0, c = 0, d = 0; while(i < orig.length) { c = orig.charCodeAt(i++); @@ -3630,31 +3659,6 @@ var utf8write/*:StringConv*/ = function(orig/*:string*/)/*:string*/ { return out.join(""); }; -if(has_buf) { - var utf8readb = function utf8readb(data) { - var out = Buffer.alloc(2*data.length), w, i, j = 1, k = 0, ww=0, c; - for(i = 0; i < data.length; i+=j) { - j = 1; - if((c=data.charCodeAt(i)) < 128) w = c; - else if(c < 224) { w = (c&31)*64+(data.charCodeAt(i+1)&63); j=2; } - else if(c < 240) { w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63); j=3; } - else { j = 4; - w = (c & 7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63); - w -= 65536; ww = 0xD800 + ((w>>>10)&1023); w = 0xDC00 + (w&1023); - } - if(ww !== 0) { out[k++] = ww&255; out[k++] = ww>>>8; ww = 0; } - out[k++] = w%256; out[k++] = w>>>8; - } - return out.slice(0,k).toString('ucs2'); - }; - var corpus = "foo bar baz\u00e2\u0098\u0083\u00f0\u009f\u008d\u00a3"; - if(utf8read(corpus) == utf8readb(corpus)) utf8read = utf8readb; - var utf8readc = function utf8readc(data) { return Buffer_from(data, 'binary').toString('utf8'); }; - if(utf8read(corpus) == utf8readc(corpus)) utf8read = utf8readc; - - utf8write = function(data) { return Buffer_from(data, 'utf8').toString("binary"); }; -} - // matches ... extracts content var matchtag = /*#__PURE__*/(function() { var mtcache/*:{[k:string]:RegExp}*/ = ({}/*:any*/); @@ -3804,39 +3808,44 @@ function write_double_le(b/*:RawBytes|CFBlob*/, v/*:number*/, idx/*:number*/) { b[idx + 7] = (e >> 4) | bs; } -var __toBuffer = function(bufs/*:Array >*/)/*:RawBytes*/ { var x=[],w=10240; for(var i=0;i*/=[]; for(var i=s; i*/=[]; for(var i=s; i 0 ? __utf8(b, i+4,i+4+len-1) : "";}; -var ___lpstr = __lpstr; -var __cpstr = function(b/*:RawBytes|CFBlob*/,i/*:number*/) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; -var ___cpstr = __cpstr; -var __lpwstr = function(b/*:RawBytes|CFBlob*/,i/*:number*/) { var len = 2*__readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; -var ___lpwstr = __lpwstr; -var __lpp4, ___lpp4; -__lpp4 = ___lpp4 = function lpp4_(b/*:RawBytes|CFBlob*/,i/*:number*/) { var len = __readUInt32LE(b,i); return len > 0 ? __utf16le(b, i+4,i+4+len) : "";}; -var __8lpp4 = function(b/*:RawBytes|CFBlob*/,i/*:number*/) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len) : "";}; -var ___8lpp4 = __8lpp4; -var __double, ___double; -__double = ___double = function(b/*:RawBytes|CFBlob*/, idx/*:number*/) { return read_double_le(b, idx);}; +var ___toBuffer = function(bufs/*:Array >*/)/*:RawBytes*/ { var x=[],w=10240; for(var i=0;i 0 && Buffer.isBuffer(bufs[0][0])) ? Buffer.concat(bufs[0].map(function(x) { return Buffer.isBuffer(x) ? x : Buffer_from(x); })) : ___toBuffer(bufs);} : ___toBuffer; + +var ___utf16le = function(b/*:RawBytes|CFBlob*/,s/*:number*/,e/*:number*/)/*:string*/ { var ss/*:Array*/=[]; for(var i=s; i*/=[]; for(var i=s; i 0 ? __utf8(b, i+4,i+4+len-1) : "";}; +var __lpstr = ___lpstr; + +var ___cpstr = function(b/*:RawBytes|CFBlob*/,i/*:number*/) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; +var __cpstr = ___cpstr; + +var ___lpwstr = function(b/*:RawBytes|CFBlob*/,i/*:number*/) { var len = 2*__readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; +var __lpwstr = ___lpwstr; + +var ___lpp4 = function lpp4_(b/*:RawBytes|CFBlob*/,i/*:number*/) { var len = __readUInt32LE(b,i); return len > 0 ? __utf16le(b, i+4,i+4+len) : "";}; +var __lpp4 = ___lpp4; + +var ___8lpp4 = function(b/*:RawBytes|CFBlob*/,i/*:number*/) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len) : "";}; +var __8lpp4 = ___8lpp4; + +var ___double = function(b/*:RawBytes|CFBlob*/, idx/*:number*/) { return read_double_le(b, idx);}; +var __double = ___double; + var is_buf = function is_buf_a(a) { return Array.isArray(a) || (typeof Uint8Array !== "undefined" && a instanceof Uint8Array); }; if(has_buf/*:: && typeof Buffer !== 'undefined'*/) { - __utf16le = function(b/*:RawBytes|CFBlob*/,s/*:number*/,e/*:number*/)/*:string*/ { if(!Buffer.isBuffer(b)/*:: || !(b instanceof Buffer)*/) return ___utf16le(b,s,e); return b.toString('utf16le',s,e).replace(chr0,'')/*.replace(chr1,'!')*/; }; - __hexlify = function(b/*:RawBytes|CFBlob*/,s/*:number*/,l/*:number*/)/*:string*/ { return Buffer.isBuffer(b)/*:: && b instanceof Buffer*/ ? b.toString('hex',s,s+l) : ___hexlify(b,s,l); }; __lpstr = function lpstr_b(b/*:RawBytes|CFBlob*/, i/*:number*/) { if(!Buffer.isBuffer(b)/*:: || !(b instanceof Buffer)*/) return ___lpstr(b, i); var len = b.readUInt32LE(i); return len > 0 ? b.toString('utf8',i+4,i+4+len-1) : "";}; __cpstr = function cpstr_b(b/*:RawBytes|CFBlob*/, i/*:number*/) { if(!Buffer.isBuffer(b)/*:: || !(b instanceof Buffer)*/) return ___cpstr(b, i); var len = b.readUInt32LE(i); return len > 0 ? b.toString('utf8',i+4,i+4+len-1) : "";}; __lpwstr = function lpwstr_b(b/*:RawBytes|CFBlob*/, i/*:number*/) { if(!Buffer.isBuffer(b)/*:: || !(b instanceof Buffer)*/) return ___lpwstr(b, i); var len = 2*b.readUInt32LE(i); return b.toString('utf16le',i+4,i+4+len-1);}; __lpp4 = function lpp4_b(b/*:RawBytes|CFBlob*/, i/*:number*/) { if(!Buffer.isBuffer(b)/*:: || !(b instanceof Buffer)*/) return ___lpp4(b, i); var len = b.readUInt32LE(i); return b.toString('utf16le',i+4,i+4+len);}; __8lpp4 = function lpp4_8b(b/*:RawBytes|CFBlob*/, i/*:number*/) { if(!Buffer.isBuffer(b)/*:: || !(b instanceof Buffer)*/) return ___8lpp4(b, i); var len = b.readUInt32LE(i); return b.toString('utf8',i+4,i+4+len);}; - __utf8 = function utf8_b(b/*:RawBytes|CFBlob*/, s/*:number*/, e/*:number*/) { return (Buffer.isBuffer(b)/*:: && (b instanceof Buffer)*/) ? b.toString('utf8',s,e) : ___utf8(b,s,e); }; - __toBuffer = function(bufs) { return (bufs[0].length > 0 && Buffer.isBuffer(bufs[0][0])) ? Buffer.concat(bufs[0].map(function(x) { return Buffer.isBuffer(x) ? x : Buffer_from(x); })) : ___toBuffer(bufs);}; - bconcat = function(bufs) { return Buffer.concat(bufs.map(function(buf) { return Buffer.isBuffer(buf) ? buf : Buffer_from(buf); })); }; __double = function double_(b/*:RawBytes|CFBlob*/, i/*:number*/) { if(Buffer.isBuffer(b)/*::&& b instanceof Buffer*/) return b.readDoubleLE(i); return ___double(b,i); }; is_buf = function is_buf_b(a) { return Buffer.isBuffer(a) || Array.isArray(a) || (typeof Uint8Array !== "undefined" && a instanceof Uint8Array); }; } @@ -4219,8 +4228,8 @@ function safe_decode_range(range/*:string*/)/*:Range*/ { function safe_format_cell(cell/*:Cell*/, v/*:any*/) { var q = (cell.t == 'd' && v instanceof Date); - if(cell.z != null) try { return (cell.w = SSF.format(cell.z, q ? datenum(v) : v)); } catch(e) { } - try { return (cell.w = SSF.format((cell.XF||{}).numFmtId||(q ? 14 : 0), q ? datenum(v) : v)); } catch(e) { return ''+v; } + if(cell.z != null) try { return (cell.w = SSF_format(cell.z, q ? datenum(v) : v)); } catch(e) { } + try { return (cell.w = SSF_format((cell.XF||{}).numFmtId||(q ? 14 : 0), q ? datenum(v) : v)); } catch(e) { return ''+v; } } function format_cell(cell/*:Cell*/, v/*:any*/, o/*:any*/) { @@ -4284,9 +4293,9 @@ function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksh else if(typeof cell.v === 'number') cell.t = 'n'; else if(typeof cell.v === 'boolean') cell.t = 'b'; else if(cell.v instanceof Date) { - cell.z = o.dateNF || SSF._table[14]; - if(o.cellDates) { cell.t = 'd'; cell.w = SSF.format(cell.z, datenum(cell.v)); } - else { cell.t = 'n'; cell.v = datenum(cell.v); cell.w = SSF.format(cell.z, cell.v); } + cell.z = o.dateNF || table_fmt[14]; + if(o.cellDates) { cell.t = 'd'; cell.w = SSF_format(cell.z, datenum(cell.v)); } + else { cell.t = 'n'; cell.v = datenum(cell.v); cell.w = SSF_format(cell.z, cell.v); } } else cell.t = 's'; } @@ -4307,6 +4316,7 @@ function sheet_add_aoa(_ws/*:?Worksheet*/, data/*:AOA*/, opts/*:?any*/)/*:Worksh function aoa_to_sheet(data/*:AOA*/, opts/*:?any*/)/*:Worksheet*/ { return sheet_add_aoa(null, data, opts); } /* [MS-OLEPS] 2.2 PropertyType */ +// Note: some tree shakers cannot handle VT_VECTOR | $CONST, hence extra vars //var VT_EMPTY = 0x0000; //var VT_NULL = 0x0001; var VT_I2 = 0x0002; @@ -4341,6 +4351,8 @@ var VT_CF = 0x0047; //var VT_CLSID = 0x0048; //var VT_VERSIONED_STREAM = 0x0049; var VT_VECTOR = 0x1000; +var VT_VECTOR_VARIANT = 0x100C; +var VT_VECTOR_LPSTR = 0x101E; //var VT_ARRAY = 0x2000; var VT_STRING = 0x0050; // 2.3.3.1.11 VtString @@ -4360,8 +4372,8 @@ var DocSummaryPIDDSI = { /*::[*/0x09/*::]*/: { n: 'HiddenCount', t: VT_I4 }, /*::[*/0x0a/*::]*/: { n: 'MultimediaClipCount', t: VT_I4 }, /*::[*/0x0b/*::]*/: { n: 'ScaleCrop', t: VT_BOOL }, - /*::[*/0x0c/*::]*/: { n: 'HeadingPairs', t: VT_VECTOR | VT_VARIANT }, - /*::[*/0x0d/*::]*/: { n: 'TitlesOfParts', t: VT_VECTOR | VT_LPSTR }, + /*::[*/0x0c/*::]*/: { n: 'HeadingPairs', t: VT_VECTOR_VARIANT /* VT_VECTOR | VT_VARIANT */ }, + /*::[*/0x0d/*::]*/: { n: 'TitlesOfParts', t: VT_VECTOR_LPSTR /* VT_VECTOR | VT_LPSTR */ }, /*::[*/0x0e/*::]*/: { n: 'Manager', t: VT_STRING }, /*::[*/0x0f/*::]*/: { n: 'Company', t: VT_STRING }, /*::[*/0x10/*::]*/: { n: 'LinksUpToDate', t: VT_BOOL }, @@ -4490,7 +4502,7 @@ function rgbify(arr/*:Array*/)/*:Array<[number, number, number]>*/ { ret /* [MS-XLS] 2.5.161 */ /* [MS-XLSB] 2.5.75 Icv */ -var _XLSIcv = rgbify([ +var _XLSIcv = /*#__PURE__*/ rgbify([ /* Color Constants */ 0x000000, 0xFFFFFF, @@ -4582,7 +4594,7 @@ var _XLSIcv = rgbify([ 0x000000, /* 0x50 icvInfoBk ?? */ 0x000000 /* 0x51 icvInfoText ?? */ ]); -var XLSIcv = dup(_XLSIcv); +var XLSIcv = /*#__PURE__*/dup(_XLSIcv); /* [MS-XLSB] 2.5.97.2 */ var BErr = { @@ -4596,7 +4608,19 @@ var BErr = { /*::[*/0x2B/*::]*/: "#GETTING_DATA", /*::[*/0xFF/*::]*/: "#WTF?" }; -var RBErr = evert_num(BErr); +//var RBErr = evert_num(BErr); +var RBErr = { + "#NULL!": 0x00, + "#DIV/0!": 0x07, + "#VALUE!": 0x0F, + "#REF!": 0x17, + "#NAME?": 0x1D, + "#NUM!": 0x24, + "#N/A": 0x2A, + "#GETTING_DATA": 0x2B, + "#WTF?": 0xFF +}; + /* Parts enumerated in OPC spec, MS-XLSB and MS-XLSX */ /* 12.3 Part Summary */ /* 14.2 Part Summary */ @@ -4850,18 +4874,17 @@ function parse_ct(data/*:?string*/) { return ct; } -var CTYPE_XML_ROOT = writextag('Types', null, { - 'xmlns': XMLNS.CT, - 'xmlns:xsd': XMLNS.xsd, - 'xmlns:xsi': XMLNS.xsi -}); - function write_ct(ct, opts)/*:string*/ { var type2ct/*{[string]:Array}*/ = evert_arr(ct2type); var o/*:Array*/ = [], v; o[o.length] = (XML_HEADER); - o[o.length] = (CTYPE_XML_ROOT); + o[o.length] = writextag('Types', null, { + 'xmlns': XMLNS.CT, + 'xmlns:xsd': XMLNS.xsd, + 'xmlns:xsi': XMLNS.xsi + }); + o = o.concat([ ['xml', 'application/xml'], ['bin', 'application/vnd.ms-excel.sheet.binary.macroEnabled.main'], @@ -4992,14 +5015,12 @@ function parse_rels(data/*:?string*/, currentFilePath/*:string*/) { } -var RELS_ROOT = writextag('Relationships', null, { - //'xmlns:ns0': XMLNS.RELS, - 'xmlns': XMLNS.RELS -}); - /* TODO */ function write_rels(rels)/*:string*/ { - var o = [XML_HEADER, RELS_ROOT]; + var o = [XML_HEADER, writextag('Relationships', null, { + //'xmlns:ns0': XMLNS.RELS, + 'xmlns': XMLNS.RELS + })]; keys(rels['!id']).forEach(function(rid) { o[o.length] = (writextag('Relationship', null, rels['!id'][rid])); }); @@ -5007,7 +5028,6 @@ function write_rels(rels)/*:string*/ { return o.join(""); } -var RELS_EXTERN = [RELS.HLINK, RELS.XPATH, RELS.XMISS]; function add_rels(rels, rId/*:number*/, f, type, relobj, targetmode/*:?string*/)/*:number*/ { if(!relobj) relobj = {}; if(!rels['!id']) rels['!id'] = {}; @@ -5018,7 +5038,7 @@ function add_rels(rels, rId/*:number*/, f, type, relobj, targetmode/*:?string*/) relobj.Type = type; relobj.Target = f; if(targetmode) relobj.TargetMode = targetmode; - else if(RELS_EXTERN.indexOf(relobj.Type) > -1) relobj.TargetMode = "External"; + else if([RELS.HLINK, RELS.XPATH, RELS.XMISS].indexOf(relobj.Type) > -1) relobj.TargetMode = "External"; if(rels['!id'][relobj.Id]) throw new Error("Cannot rewrite rId " + rId); rels['!id'][relobj.Id] = relobj; rels[('/' + relobj.Target).replace("//","/")] = relobj; @@ -5407,7 +5427,7 @@ function dbf_to_aoa(buf, opts)/*:AOA*/ { var out/*:AOA*/ = []; var d/*:Block*/ = (new_raw_buf(1)/*:any*/); switch(opts.type) { - case 'base64': d = s2a(Base64.decode(buf)); break; + case 'base64': d = s2a(Base64_decode(buf)); break; case 'binary': d = s2a(buf); break; case 'buffer': case 'array': d = buf; break; @@ -5738,7 +5758,7 @@ var SYLK = /*#__PURE__*/(function() { /* TODO: find an actual specification */ function sylk_to_aoa(d/*:RawData*/, opts)/*:[AOA, Worksheet]*/ { switch(opts.type) { - case 'base64': return sylk_to_aoa_str(Base64.decode(d), opts); + case 'base64': return sylk_to_aoa_str(Base64_decode(d), opts); case 'binary': return sylk_to_aoa_str(d, opts); case 'buffer': return sylk_to_aoa_str(has_buf && Buffer.isBuffer(d) ? d.toString('binary') : a2s(d), opts); case 'array': return sylk_to_aoa_str(cc2str(d), opts); @@ -5783,7 +5803,7 @@ var SYLK = /*#__PURE__*/(function() { else if(val === 'FALSE') val = false; else if(!isNaN(fuzzynum(val))) { val = fuzzynum(val); - if(next_cell_format !== null && SSF.is_date(next_cell_format)) val = numdate(val); + if(next_cell_format !== null && fmt_is_date(next_cell_format)) val = numdate(val); } else if(!isNaN(fuzzydate(val).getDate())) { val = parseDate(val); } @@ -5941,7 +5961,7 @@ var SYLK = /*#__PURE__*/(function() { var DIF = /*#__PURE__*/(function() { function dif_to_aoa(d/*:RawData*/, opts)/*:AOA*/ { switch(opts.type) { - case 'base64': return dif_to_aoa_str(Base64.decode(d), opts); + case 'base64': return dif_to_aoa_str(Base64_decode(d), opts); case 'binary': return dif_to_aoa_str(d, opts); case 'buffer': return dif_to_aoa_str(has_buf && Buffer.isBuffer(d) ? d.toString('binary') : a2s(d), opts); case 'array': return dif_to_aoa_str(cc2str(d), opts); @@ -6028,7 +6048,7 @@ var DIF = /*#__PURE__*/(function() { push_value(o, 1, 0, (!DIF_XL || isNaN(cell.v)) ? cell.v : '="' + cell.v + '"'); break; case 'd': - if(!cell.w) cell.w = SSF.format(cell.z || SSF._table[14], datenum(parseDate(cell.v))); + if(!cell.w) cell.w = SSF_format(cell.z || table_fmt[14], datenum(parseDate(cell.v))); if(DIF_XL) push_value(o, 0, cell.w, "V"); else push_value(o, 1, 0, cell.w); break; @@ -6125,7 +6145,7 @@ var ETH = /*#__PURE__*/(function() { case 'd': var t = datenum(parseDate(cell.v)); oo[2] = 'vtc'; oo[3] = 'nd'; oo[4] = ""+t; - oo[5] = cell.w || SSF.format(cell.z || SSF._table[14], t); + oo[5] = cell.w || SSF_format(cell.z || table_fmt[14], t); break; case 'e': continue; } @@ -6266,12 +6286,12 @@ var PRN = /*#__PURE__*/(function() { else if(s == "FALSE") { cell.t = 'b'; cell.v = false; } else if(!isNaN(v = fuzzynum(s))) { cell.t = 'n'; if(o.cellText !== false) cell.w = s; cell.v = v; } else if(!isNaN(fuzzydate(s).getDate()) || _re && s.match(_re)) { - cell.z = o.dateNF || SSF._table[14]; + cell.z = o.dateNF || table_fmt[14]; var k = 0; if(_re && s.match(_re)){ s=dateNF_fix(s, o.dateNF, (s.match(_re)||[])); k=1; } if(o.cellDates) { cell.t = 'd'; cell.v = parseDate(s, k); } else { cell.t = 'n'; cell.v = datenum(parseDate(s, k)); } - if(o.cellText !== false) cell.w = SSF.format(cell.z, cell.v instanceof Date ? datenum(cell.v):cell.v); + if(o.cellText !== false) cell.w = SSF_format(cell.z, cell.v instanceof Date ? datenum(cell.v):cell.v); if(!o.cellNF) delete cell.z; } else { cell.t = 's'; @@ -6307,7 +6327,7 @@ var PRN = /*#__PURE__*/(function() { function prn_to_sheet(d/*:RawData*/, opts)/*:Worksheet*/ { var str = "", bytes = opts.type == 'string' ? [0,0,0,0] : firstbyte(d, opts); switch(opts.type) { - case 'base64': str = Base64.decode(d); break; + case 'base64': str = Base64_decode(d); break; case 'binary': str = d; break; case 'buffer': if(opts.codepage == 65001) str = d.toString('utf8'); // TODO: test if buf @@ -6989,8 +7009,8 @@ function parse_fonts(t, styles, themes, opts) { /* 18.8.31 numFmts CT_NumFmts */ function parse_numFmts(t, styles, opts) { styles.NumberFmt = []; - var k/*Array*/ = (keys(SSF._table)/*:any*/); - for(var i=0; i < k.length; ++i) styles.NumberFmt[k[i]] = SSF._table[k[i]]; + var k/*Array*/ = (keys(table_fmt)/*:any*/); + for(var i=0; i < k.length; ++i) styles.NumberFmt[k[i]] = table_fmt[k[i]]; var m = t[0].match(tagregex); if(!m) return; for(i=0; i < m.length; ++i) { @@ -7005,7 +7025,7 @@ function parse_numFmts(t, styles, opts) { for(j = 0x188; j > 0x3c; --j) if(styles.NumberFmt[j] == null) break; styles.NumberFmt[j] = f; } - SSF.load(f,j); + SSF_load(f,j); } } break; case '': break; @@ -7440,6 +7460,7 @@ function parse_xlmeta_xml(data, name, opts) { return out; var pass = false; var metatype = 2; + var lastmeta; data.replace(tagregex, function(x) { var y = parsexmltag(x); switch (strip_ns(y[0])) { @@ -7457,6 +7478,9 @@ function parse_xlmeta_xml(data, name, opts) { case "": break; case "": break; @@ -7495,6 +7519,13 @@ function parse_xlmeta_xml(data, name, opts) { case "": pass = false; break; + case "*/, cell/*:Cell*/, opts) { var i = 0x3c, len = styles.length; if(z == null && opts.ssf) { for(; i < 0x188; ++i) if(opts.ssf[i] == null) { - SSF.load(cell.z, i); + SSF_load(cell.z, i); // $FlowIgnore opts.ssf[i] = cell.z; opts.revssf[cell.z] = z = i; @@ -8051,28 +8082,28 @@ function get_cell_style(styles/*:Array*/, cell/*:Cell*/, opts) { function safe_format(p/*:Cell*/, fmtid/*:number*/, fillid/*:?number*/, opts, themes, styles) { try { - if(opts.cellNF) p.z = SSF._table[fmtid]; + if(opts.cellNF) p.z = table_fmt[fmtid]; } catch(e) { if(opts.WTF) throw e; } if(p.t === 'z' && !opts.cellStyles) return; if(p.t === 'd' && typeof p.v === 'string') p.v = parseDate(p.v); if((!opts || opts.cellText !== false) && p.t !== 'z') try { - if(SSF._table[fmtid] == null) SSF.load(SSFImplicit[fmtid] || "General", fmtid); + if(table_fmt[fmtid] == null) SSF_load(SSFImplicit[fmtid] || "General", fmtid); if(p.t === 'e') p.w = p.w || BErr[p.v]; else if(fmtid === 0) { if(p.t === 'n') { - if((p.v|0) === p.v) p.w = SSF._general_int(p.v); - else p.w = SSF._general_num(p.v); + if((p.v|0) === p.v) p.w = p.v.toString(10); + else p.w = SSF_general_num(p.v); } else if(p.t === 'd') { var dd = datenum(p.v); - if((dd|0) === dd) p.w = SSF._general_int(dd); - else p.w = SSF._general_num(dd); + if((dd|0) === dd) p.w = dd.toString(10); + else p.w = SSF_general_num(dd); } else if(p.v === undefined) return ""; - else p.w = SSF._general(p.v,_ssfopts); + else p.w = SSF_general(p.v,_ssfopts); } - else if(p.t === 'd') p.w = SSF.format(fmtid,datenum(p.v),_ssfopts); - else p.w = SSF.format(fmtid,p.v,_ssfopts); + else if(p.t === 'd') p.w = SSF_format(fmtid,datenum(p.v),_ssfopts); + else p.w = SSF_format(fmtid,p.v,_ssfopts); } catch(e) { if(opts.WTF) throw e; } if(!opts.cellStyles) return; if(fillid != null) try { @@ -8368,7 +8399,7 @@ function write_ws_xml_cell(cell/*:Cell*/, ref, ws, opts/*::, idx, wb*/)/*:string cell.t = 'n'; vv = ''+(cell.v = datenum(parseDate(cell.v))); } - if(typeof cell.z === 'undefined') cell.z = SSF._table[14]; + if(typeof cell.z === 'undefined') cell.z = table_fmt[14]; break; default: vv = cell.v; break; } @@ -8572,7 +8603,7 @@ return function parse_ws_xml_data(sdata/*:string*/, s, opts, guess/*:Range*/, th } } safe_format(p, fmtid, fillid, opts, themes, styles); - if(opts.cellDates && do_format && p.t == 'n' && SSF.is_date(SSF._table[fmtid])) { p.t = 'd'; p.v = numdate(p.v); } + if(opts.cellDates && do_format && p.t == 'n' && fmt_is_date(table_fmt[fmtid])) { p.t = 'd'; p.v = numdate(p.v); } if(tag.cm && opts.xlmeta) { var cm = (opts.xlmeta.Cell||[])[+tag.cm-1]; if(cm && cm.type == 'XLDAPR') p.D = true; @@ -8939,7 +8970,7 @@ function safe1904(wb/*:Workbook*/)/*:string*/ { return parsexmlbool(wb.Workbook.WBProps.date1904) ? "true" : "false"; } -var badchars = "][*?\/\\".split(""); +var badchars = /*#__PURE__*/"][*?\/\\".split(""); function check_ws_name(n/*:string*/, safe/*:?boolean*/)/*:boolean*/ { if(n.length > 31) { if(safe) return false; throw new Error("Sheet names cannot exceed 31 chars"); } var _good = true; @@ -9308,134 +9339,126 @@ function write_xlmeta(name/*:string*/) { return (name.slice(-4)===".bin" ? write_xlmeta_bin : write_xlmeta_xml)(); } /* note: browser DOM element cannot see mso- style attrs, must parse */ -var HTML_ = /*#__PURE__*/(function() { - 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*/); - str = str.replace(//g, ""); - var mtch/*:any*/ = str.match(/"); - var mtch2/*:any*/ = str.match(/<\/table/i); - var i/*:number*/ = mtch.index, j/*:number*/ = mtch2 && mtch2.index || str.length; - var rows = split_regex(str.slice(i, j), /(:?]*>)/i, ""); - var R = -1, C = 0, RS = 0, CS = 0; - var range/*:Range*/ = {s:{r:10000000, c:10000000},e:{r:0,c:0}}; - var merges/*:Array*/ = []; - for(i = 0; i < rows.length; ++i) { - var row = rows[i].trim(); - var hd = row.slice(0,3).toLowerCase(); - if(hd == "/i); - for(j = 0; j < cells.length; ++j) { - var cell = cells[j].trim(); - if(!cell.match(/")) > -1) m = m.slice(cc+1); - for(var midx = 0; midx < merges.length; ++midx) { - var _merge/*:Range*/ = merges[midx]; - if(_merge.s.c == C && _merge.s.r < R && R <= _merge.e.r) { C = _merge.e.c + 1; midx = -1; } - } - var tag = parsexmltag(cell.slice(0, cell.indexOf(">"))); - CS = tag.colspan ? +tag.colspan : 1; - if((RS = +tag.rowspan)>1 || CS>1) merges.push({s:{r:R,c:C},e:{r:R + (RS||1) - 1, c:C + CS - 1}}); - var _t/*:string*/ = tag.t || tag["data-t"] || ""; - /* TODO: generate stub cells */ - if(!m.length) { C += CS; continue; } - m = htmldecode(m); - if(range.s.r > R) range.s.r = R; if(range.e.r < R) range.e.r = R; - if(range.s.c > C) range.s.c = C; if(range.e.c < C) range.e.c = C; - if(!m.length) { C += CS; continue; } - var o/*:Cell*/ = {t:'s', v:m}; - if(opts.raw || !m.trim().length || _t == 's'){} - else if(m === 'TRUE') o = {t:'b', v:true}; - else if(m === 'FALSE') o = {t:'b', v:false}; - else if(!isNaN(fuzzynum(m))) o = {t:'n', v:fuzzynum(m)}; - else if(!isNaN(fuzzydate(m).getDate())) { - o = ({t:'d', v:parseDate(m)}/*:any*/); - if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}/*:any*/); - o.z = opts.dateNF || SSF._table[14]; - } - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = o; } - else ws[encode_cell({r:R, c:C})] = o; - C += CS; +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*/); + str = str.replace(//g, ""); + var mtch/*:any*/ = str.match(/
"); + var mtch2/*:any*/ = str.match(/<\/table/i); + var i/*:number*/ = mtch.index, j/*:number*/ = mtch2 && mtch2.index || str.length; + var rows = split_regex(str.slice(i, j), /(:?]*>)/i, ""); + var R = -1, C = 0, RS = 0, CS = 0; + var range/*:Range*/ = {s:{r:10000000, c:10000000},e:{r:0,c:0}}; + var merges/*:Array*/ = []; + for(i = 0; i < rows.length; ++i) { + var row = rows[i].trim(); + var hd = row.slice(0,3).toLowerCase(); + if(hd == "/i); + for(j = 0; j < cells.length; ++j) { + var cell = cells[j].trim(); + if(!cell.match(/")) > -1) m = m.slice(cc+1); + for(var midx = 0; midx < merges.length; ++midx) { + var _merge/*:Range*/ = merges[midx]; + if(_merge.s.c == C && _merge.s.r < R && R <= _merge.e.r) { C = _merge.e.c + 1; midx = -1; } } + var tag = parsexmltag(cell.slice(0, cell.indexOf(">"))); + CS = tag.colspan ? +tag.colspan : 1; + if((RS = +tag.rowspan)>1 || CS>1) merges.push({s:{r:R,c:C},e:{r:R + (RS||1) - 1, c:C + CS - 1}}); + var _t/*:string*/ = tag.t || tag["data-t"] || ""; + /* TODO: generate stub cells */ + if(!m.length) { C += CS; continue; } + m = htmldecode(m); + if(range.s.r > R) range.s.r = R; if(range.e.r < R) range.e.r = R; + if(range.s.c > C) range.s.c = C; if(range.e.c < C) range.e.c = C; + if(!m.length) { C += CS; continue; } + var o/*:Cell*/ = {t:'s', v:m}; + if(opts.raw || !m.trim().length || _t == 's'){} + else if(m === 'TRUE') o = {t:'b', v:true}; + else if(m === 'FALSE') o = {t:'b', v:false}; + else if(!isNaN(fuzzynum(m))) o = {t:'n', v:fuzzynum(m)}; + else if(!isNaN(fuzzydate(m).getDate())) { + o = ({t:'d', v:parseDate(m)}/*:any*/); + 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; } + else ws[encode_cell({r:R, c:C})] = o; + C += CS; } - ws['!ref'] = encode_range(range); - if(merges.length) ws["!merges"] = merges; - return ws; } - function html_to_book(str/*:string*/, opts)/*:Workbook*/ { - var mtch = str.match(/[\s\S]*?<\/table>/gi); - if(!mtch || mtch.length == 0) throw new Error("Invalid HTML: could not find
"); - if(mtch.length == 1) return sheet_to_workbook(html_to_sheet(mtch[0], opts), opts); - var wb = book_new(); - mtch.forEach(function(s, idx) { book_append_sheet(wb, html_to_sheet(s, opts), "Sheet" + (idx+1)); }); - return wb; - } - function make_html_row(ws/*:Worksheet*/, r/*:Range*/, R/*:number*/, o/*:Sheet2HTMLOpts*/)/*:string*/ { - var M/*:Array*/ = (ws['!merges'] ||[]); - var oo/*:Array*/ = []; - for(var C = r.s.c; C <= r.e.c; ++C) { - var RS = 0, CS = 0; - for(var j = 0; j < M.length; ++j) { - if(M[j].s.r > R || M[j].s.c > C) continue; - if(M[j].e.r < R || M[j].e.c < C) continue; - if(M[j].s.r < R || M[j].s.c < C) { RS = -1; break; } - 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]; - /* TODO: html entities */ - var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; - var sp = ({}/*:any*/); - if(RS > 1) sp.rowspan = RS; - if(CS > 1) sp.colspan = CS; - if(o.editable) w = '' + w + ''; - else if(cell) { - sp["data-t"] = cell && cell.t || 'z'; - if(cell.v != null) sp["data-v"] = cell.v; - if(cell.z != null) sp["data-z"] = cell.z; - if(cell.l && (cell.l.Target || "#").charAt(0) != "#") w = '' + w + ''; - } - sp.id = (o.id || "sjs") + "-" + coord; - oo.push(writextag('td', w, sp)); + ws['!ref'] = encode_range(range); + if(merges.length) ws["!merges"] = merges; + return ws; +} +function make_html_row(ws/*:Worksheet*/, r/*:Range*/, R/*:number*/, o/*:Sheet2HTMLOpts*/)/*:string*/ { + var M/*:Array*/ = (ws['!merges'] ||[]); + var oo/*:Array*/ = []; + for(var C = r.s.c; C <= r.e.c; ++C) { + var RS = 0, CS = 0; + for(var j = 0; j < M.length; ++j) { + if(M[j].s.r > R || M[j].s.c > C) continue; + if(M[j].e.r < R || M[j].e.c < C) continue; + if(M[j].s.r < R || M[j].s.c < C) { RS = -1; break; } + RS = M[j].e.r - M[j].s.r + 1; CS = M[j].e.c - M[j].s.c + 1; break; } - var preamble = ""; - return preamble + oo.join("") + ""; + if(RS < 0) continue; + var coord = encode_cell({r:R,c:C}); + var cell = o.dense ? (ws[R]||[])[C] : ws[coord]; + /* TODO: html entities */ + var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; + var sp = ({}/*:any*/); + if(RS > 1) sp.rowspan = RS; + if(CS > 1) sp.colspan = CS; + if(o.editable) w = '' + w + ''; + else if(cell) { + sp["data-t"] = cell && cell.t || 'z'; + if(cell.v != null) sp["data-v"] = cell.v; + if(cell.z != null) sp["data-z"] = cell.z; + if(cell.l && (cell.l.Target || "#").charAt(0) != "#") w = '' + w + ''; + } + sp.id = (o.id || "sjs") + "-" + coord; + oo.push(writextag('td', w, sp)); } - function make_html_preamble(ws/*:Worksheet*/, R/*:Range*/, o/*:Sheet2HTMLOpts*/)/*:string*/ { - var out/*:Array*/ = []; - return out.join("") + ''; - } - var _BEGIN = 'SheetJS Table Export'; - var _END = ''; - function sheet_to_html(ws/*:Worksheet*/, opts/*:?Sheet2HTMLOpts*//*, wb:?Workbook*/)/*:string*/ { - var o = opts || {}; - var header = o.header != null ? o.header : _BEGIN; - var footer = o.footer != null ? o.footer : _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); - return out.join(""); + var preamble = ""; + return preamble + oo.join("") + ""; +} - } - return { - to_workbook: html_to_book, - to_sheet: html_to_sheet, - _row: make_html_row, - BEGIN: _BEGIN, - END: _END, - _preamble: make_html_preamble, - from_sheet: sheet_to_html - }; -})(); +var HTML_BEGIN = 'SheetJS Table Export'; +var HTML_END = ''; + +function html_to_workbook(str/*:string*/, opts)/*:Workbook*/ { + var mtch = str.match(/[\s\S]*?<\/table>/gi); + if(!mtch || mtch.length == 0) throw new Error("Invalid HTML: could not find "); + if(mtch.length == 1) return sheet_to_workbook(html_to_sheet(mtch[0], opts), opts); + var wb = book_new(); + mtch.forEach(function(s, idx) { book_append_sheet(wb, html_to_sheet(s, opts), "Sheet" + (idx+1)); }); + return wb; +} + +function make_html_preamble(ws/*:Worksheet*/, R/*:Range*/, o/*:Sheet2HTMLOpts*/)/*:string*/ { + var out/*:Array*/ = []; + return out.join("") + ''; +} + +function sheet_to_html(ws/*:Worksheet*/, opts/*:?Sheet2HTMLOpts*//*, wb:?Workbook*/)/*:string*/ { + var o = opts || {}; + var header = o.header != null ? o.header : HTML_BEGIN; + 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); + return out.join(""); +} function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/*:Worksheet*/ { var opts = _opts || {}; @@ -9494,7 +9517,7 @@ function sheet_add_dom(ws/*:Worksheet*/, table/*:HTMLElement*/, _opts/*:?any*/)/ else if(!isNaN(fuzzydate(v).getDate())) { o = ({t:'d', v:parseDate(v)}/*:any*/); if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}/*:any*/); - o.z = opts.dateNF || SSF._table[14]; + o.z = opts.dateNF || table_fmt[14]; } } if(o.z === undefined && z != null) o.z = z; @@ -10514,7 +10537,7 @@ function safe_parse_sheet(zip, path/*:string*/, relsPath/*:string*/, sheet, idx/ function strip_front_slash(x/*:string*/)/*:string*/ { return x.charAt(0) == '/' ? x.slice(1) : x; } function parse_zip(zip/*:ZIP*/, opts/*:?ParseOpts*/)/*:Workbook*/ { - make_ssf(SSF); + make_ssf(); opts = opts || {}; fix_read_opts(opts); @@ -10677,7 +10700,7 @@ function parse_zip(zip/*:ZIP*/, opts/*:?ParseOpts*/)/*:Workbook*/ { Strings: strs, Styles: styles, Themes: themes, - SSF: SSF.get_table() + SSF: dup(table_fmt) }/*:any*/); if(opts && opts.bookFiles) { if(zip.files) { @@ -10748,6 +10771,7 @@ function parse_xlsxcfb(cfb, _opts/*:?ParseOpts*/)/*:Workbook*/ { function write_zip(wb/*:Workbook*/, opts/*:WriteOpts*/)/*:ZIP*/ { if(opts.bookType == "ods") return write_ods(wb, opts); + if(opts.bookType == "numbers") return write_numbers_iwa(wb, opts); if(opts.bookType == "xlsb") return write_zip_xlsxb(wb, opts); return write_zip_xlsx(wb, opts); } @@ -10759,10 +10783,10 @@ function write_zip(wb/*:Workbook*/, opts/*:WriteOpts*/)/*:ZIP*/ { function write_zip_xlsxb(wb/*:Workbook*/, opts/*:WriteOpts*/)/*:ZIP*/ { _shapeid = 1024; if(wb && !wb.SSF) { - wb.SSF = SSF.get_table(); + wb.SSF = dup(table_fmt); } if(wb && wb.SSF) { - make_ssf(SSF); SSF.load_table(wb.SSF); + make_ssf(); SSF_load_table(wb.SSF); // $FlowIgnore opts.revssf = evert_num(wb.SSF); opts.revssf[wb.SSF[65535]] = 0; opts.ssf = wb.SSF; @@ -10894,10 +10918,10 @@ function write_zip_xlsxb(wb/*:Workbook*/, opts/*:WriteOpts*/)/*:ZIP*/ { function write_zip_xlsx(wb/*:Workbook*/, opts/*:WriteOpts*/)/*:ZIP*/ { _shapeid = 1024; if(wb && !wb.SSF) { - wb.SSF = SSF.get_table(); + wb.SSF = dup(table_fmt); } if(wb && wb.SSF) { - make_ssf(SSF); SSF.load_table(wb.SSF); + make_ssf(); SSF_load_table(wb.SSF); // $FlowIgnore opts.revssf = evert_num(wb.SSF); opts.revssf[wb.SSF[65535]] = 0; opts.ssf = wb.SSF; @@ -11051,7 +11075,7 @@ function firstbyte(f/*:RawData*/,o/*:?TypeOpts*/)/*:Array*/ { var x = ""; switch((o||{}).type || "base64") { case 'buffer': return [f[0], f[1], f[2], f[3], f[4], f[5], f[6], f[7]]; - case 'base64': x = Base64.decode(f.slice(0,12)); break; + case 'base64': x = Base64_decode(f.slice(0,12)); break; case 'binary': x = f; break; case 'array': return [f[0], f[1], f[2], f[3], f[4], f[5], f[6], f[7]]; default: throw new Error("Unrecognized type " + (o && o.type || "undefined")); @@ -11085,7 +11109,7 @@ function read_plaintext(data/*:string*/, o/*:ParseOpts*/)/*:Workbook*/ { function read_plaintext_raw(data/*:RawData*/, o/*:ParseOpts*/)/*:Workbook*/ { var str = "", bytes = firstbyte(data, o); switch(o.type) { - case 'base64': str = Base64.decode(data); break; + case 'base64': str = Base64_decode(data); break; case 'binary': str = data; break; case 'buffer': str = data.toString('binary'); break; case 'array': str = cc2str(data); break; @@ -11098,7 +11122,7 @@ function read_plaintext_raw(data/*:RawData*/, o/*:ParseOpts*/)/*:Workbook*/ { function read_utf16(data/*:RawData*/, o/*:ParseOpts*/)/*:Workbook*/ { var d = data; - if(o.type == 'base64') d = Base64.decode(d); + if(o.type == 'base64') d = Base64_decode(d); d = $cptable.utils.decode(1200, d.slice(2), 'str'); o.type = "binary"; return read_plaintext(d, o); @@ -11224,7 +11248,7 @@ function write_string_type(out/*:string*/, opts/*:WriteOpts*/, bom/*:?string*/)/ if(!bom) bom = ""; var o = bom + out; switch(opts.type) { - case "base64": return Base64.encode(utf8write(o)); + case "base64": return Base64_encode(utf8write(o)); case "binary": return utf8write(o); case "string": return out; case "file": return write_dl(opts.file, o, 'utf8'); @@ -11239,7 +11263,7 @@ function write_string_type(out/*:string*/, opts/*:WriteOpts*/, bom/*:?string*/)/ function write_stxt_type(out/*:string*/, opts/*:WriteOpts*/)/*:any*/ { switch(opts.type) { - case "base64": return Base64.encode(out); + case "base64": return Base64_encode(out); case "binary": return out; case "string": return out; /* override in sheet_to_txt */ case "file": return write_dl(opts.file, out, 'binary'); @@ -11260,7 +11284,7 @@ function write_binary_type(out, opts/*:WriteOpts*/)/*:any*/ { var bstr = ""; // $FlowIgnore for(var i = 0; i < out.length; ++i) bstr += String.fromCharCode(out[i]); - return opts.type == 'base64' ? Base64.encode(bstr) : opts.type == 'string' ? utf8read(bstr) : bstr; + return opts.type == 'base64' ? Base64_encode(bstr) : opts.type == 'string' ? utf8read(bstr) : bstr; case "file": return write_dl(opts.file, out); case "buffer": return out; default: throw new Error("Unrecognized type " + opts.type); @@ -11294,7 +11318,7 @@ function writeSync(wb/*:Workbook*/, opts/*:?WriteOpts*/) { case 'slk': case 'sylk': return write_string_type(SYLK.from_sheet(wb.Sheets[wb.SheetNames[idx]], o), o); case 'htm': - case 'html': return write_string_type(HTML_.from_sheet(wb.Sheets[wb.SheetNames[idx]], o), o); + case 'html': return write_string_type(sheet_to_html(wb.Sheets[wb.SheetNames[idx]], o), o); case 'txt': return write_stxt_type(sheet_to_txt(wb.Sheets[wb.SheetNames[idx]], o), o); case 'csv': return write_string_type(sheet_to_csv(wb.Sheets[wb.SheetNames[idx]], o), o, "\ufeff"); case 'dif': return write_string_type(DIF.from_sheet(wb.Sheets[wb.SheetNames[idx]], o), o); @@ -11316,6 +11340,7 @@ function writeSync(wb/*:Workbook*/, opts/*:?WriteOpts*/) { case 'xlsm': case 'xlam': case 'xlsb': + case 'numbers': case 'ods': return write_zip_type(wb, o); default: throw new Error ("Unrecognized bookType |" + o.bookType + "|"); } @@ -11394,7 +11419,7 @@ function make_json_row(sheet/*:Worksheet*/, r/*:Range*/, R/*:number*/, cols/*:Ar else if(raw && v === null) row[hdr[C]] = null; else continue; } else { - row[hdr[C]] = raw || (o.rawNumbers && val.t == "n") ? v : format_cell(val,v,o); + row[hdr[C]] = raw && (val.t !== "n" || (val.t === "n" && o.rawNumbers !== false)) ? v : format_cell(val,v,o); } if(v != null) isempty = false; } @@ -11590,7 +11615,7 @@ function sheet_add_json(_ws/*:?Worksheet*/, js/*:Array*/, opts)/*:Worksheet else if(v instanceof Date) { t = 'd'; if(!o.cellDates) { t = 'n'; v = datenum(v); } - z = (o.dateNF || SSF._table[14]); + z = (o.dateNF || table_fmt[14]); } else if(v === null && o.nullError) { t = 'e'; v = 0; } if(!cell) ws[ref] = cell = ({t:t, v:v}/*:any*/); @@ -11647,14 +11672,22 @@ function book_new()/*:Workbook*/ { } /* add a worksheet to the end of a given workbook */ -function book_append_sheet(wb/*:Workbook*/, ws/*:Worksheet*/, name/*:?string*/) { - if(!name) for(var i = 1; i <= 0xFFFF; ++i, name = undefined) if(wb.SheetNames.indexOf(name = "Sheet" + i) == -1) break; +function book_append_sheet(wb/*:Workbook*/, ws/*:Worksheet*/, name/*:?string*/, roll/*:?boolean*/)/*:string*/ { + var i = 1; + if(!name) for(; i <= 0xFFFF; ++i, name = undefined) if(wb.SheetNames.indexOf(name = "Sheet" + i) == -1) break; if(!name || wb.SheetNames.length >= 0xFFFF) throw new Error("Too many worksheets"); + if(roll && wb.SheetNames.indexOf(name) >= 0) { + var m = name.match(/(^.*?)(\d+)$/); + i = m && +m[2] || 0; + var root = m && m[1] || name; + for(++i; i <= 0xFFFF; ++i) if(wb.SheetNames.indexOf(name = root + i) == -1) break; + } check_ws_name(name); if(wb.SheetNames.indexOf(name) >= 0) throw new Error("Worksheet with name |" + name + "| already exists!"); wb.SheetNames.push(name); wb.Sheets[name] = ws; + return name; } /* set sheet visibility (visible/hidden/very hidden) */ @@ -11736,7 +11769,7 @@ var utils/*:any*/ = { sheet_to_csv: sheet_to_csv, sheet_to_txt: sheet_to_txt, sheet_to_json: sheet_to_json, - sheet_to_html: HTML_.from_sheet, + sheet_to_html: sheet_to_html, sheet_to_formulae: sheet_to_formulae, sheet_to_row_object_array: sheet_to_json, sheet_get_cell: ws_get_cell_stub, diff --git a/xlsx.mini.js b/xlsx.mini.js index 71dc43e..4da68a6 100644 --- a/xlsx.mini.js +++ b/xlsx.mini.js @@ -4,7 +4,7 @@ /*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.4'; +XLSX.version = '0.18.5'; var current_codepage = 1200, current_ansi = 1252; var VALID_ANSI = [ 874, 932, 936, 949, 950, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, 10000 ]; @@ -63,76 +63,72 @@ var _getchar = function _gc1(x) { return String.fromCharCode(x); }; var _getansi = function _ga1(x) { return String.fromCharCode(x); }; var DENSE = null; var DIF_XL = true; -var Base64 = function() { - var map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; - return { - encode: function(input) { - var o = ""; - var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; - for (var i = 0; i < input.length; ) { - c1 = input.charCodeAt(i++); - e1 = c1 >> 2; - c2 = input.charCodeAt(i++); - e2 = (c1 & 3) << 4 | c2 >> 4; - c3 = input.charCodeAt(i++); - e3 = (c2 & 15) << 2 | c3 >> 6; - e4 = c3 & 63; - if (isNaN(c2)) { - e3 = e4 = 64; - } else if (isNaN(c3)) { - e4 = 64; - } - o += map.charAt(e1) + map.charAt(e2) + map.charAt(e3) + map.charAt(e4); - } - return o; - }, - decode: function(input) { - var o = ""; - var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; - input = input.replace(/[^\w\+\/\=]/g, ""); - for (var i = 0; i < input.length; ) { - e1 = map.indexOf(input.charAt(i++)); - e2 = map.indexOf(input.charAt(i++)); - c1 = e1 << 2 | e2 >> 4; - o += String.fromCharCode(c1); - e3 = map.indexOf(input.charAt(i++)); - c2 = (e2 & 15) << 4 | e3 >> 2; - if (e3 !== 64) { - o += String.fromCharCode(c2); - } - e4 = map.indexOf(input.charAt(i++)); - c3 = (e3 & 3) << 6 | e4; - if (e4 !== 64) { - o += String.fromCharCode(c3); - } - } - return o; +var Base64_map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; +function Base64_encode(input) { + var o = ""; + var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; + for (var i = 0; i < input.length; ) { + c1 = input.charCodeAt(i++); + e1 = c1 >> 2; + c2 = input.charCodeAt(i++); + e2 = (c1 & 3) << 4 | c2 >> 4; + c3 = input.charCodeAt(i++); + e3 = (c2 & 15) << 2 | c3 >> 6; + e4 = c3 & 63; + if (isNaN(c2)) { + e3 = e4 = 64; + } else if (isNaN(c3)) { + e4 = 64; } - }; -}(); -var has_buf = (typeof Buffer !== 'undefined' && typeof process !== 'undefined' && typeof process.versions !== 'undefined' && !!process.versions.node); - -var Buffer_from = function(){}; - -if(typeof Buffer !== 'undefined') { - var nbfs = !Buffer.from; - if(!nbfs) try { Buffer.from("foo", "utf8"); } catch(e) { nbfs = true; } - Buffer_from = nbfs ? function(buf, enc) { return (enc) ? new Buffer(buf, enc) : new Buffer(buf); } : Buffer.from.bind(Buffer); - // $FlowIgnore - if(!Buffer.alloc) Buffer.alloc = function(n) { return new Buffer(n); }; - // $FlowIgnore - if(!Buffer.allocUnsafe) Buffer.allocUnsafe = function(n) { return new Buffer(n); }; + o += Base64_map.charAt(e1) + Base64_map.charAt(e2) + Base64_map.charAt(e3) + Base64_map.charAt(e4); + } + return o; } +function Base64_decode(input) { + var o = ""; + var c1 = 0, c2 = 0, c3 = 0, e1 = 0, e2 = 0, e3 = 0, e4 = 0; + input = input.replace(/[^\w\+\/\=]/g, ""); + for (var i = 0; i < input.length; ) { + e1 = Base64_map.indexOf(input.charAt(i++)); + e2 = Base64_map.indexOf(input.charAt(i++)); + c1 = e1 << 2 | e2 >> 4; + o += String.fromCharCode(c1); + e3 = Base64_map.indexOf(input.charAt(i++)); + c2 = (e2 & 15) << 4 | e3 >> 2; + if (e3 !== 64) { + o += String.fromCharCode(c2); + } + e4 = Base64_map.indexOf(input.charAt(i++)); + c3 = (e3 & 3) << 6 | e4; + if (e4 !== 64) { + o += String.fromCharCode(c3); + } + } + return o; +} +var has_buf = (function() { return typeof Buffer !== 'undefined' && typeof process !== 'undefined' && typeof process.versions !== 'undefined' && !!process.versions.node; })(); + +var Buffer_from = (function() { + if(typeof Buffer !== 'undefined') { + var nbfs = !Buffer.from; + if(!nbfs) try { Buffer.from("foo", "utf8"); } catch(e) { nbfs = true; } + return nbfs ? function(buf, enc) { return (enc) ? new Buffer(buf, enc) : new Buffer(buf); } : Buffer.from.bind(Buffer); + } + return function() {}; +})(); + function new_raw_buf(len) { /* jshint -W056 */ - return has_buf ? Buffer.alloc(len) : typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); + if(has_buf) return Buffer.alloc ? Buffer.alloc(len) : new Buffer(len); + return typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); /* jshint +W056 */ } function new_unsafe_buf(len) { /* jshint -W056 */ - return has_buf ? Buffer.allocUnsafe(len) : typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); + if(has_buf) return Buffer.allocUnsafe ? Buffer.allocUnsafe(len) : new Buffer(len); + return typeof Uint8Array != "undefined" ? new Uint8Array(len) : new Array(len); /* jshint +W056 */ } @@ -166,6 +162,23 @@ var o = new Array(data.length); return o; } +var bconcat = has_buf ? function(bufs) { return Buffer.concat(bufs.map(function(buf) { return Buffer.isBuffer(buf) ? buf : Buffer_from(buf); })); } : function(bufs) { + if(typeof Uint8Array !== "undefined") { + var i = 0, maxlen = 0; + for(i = 0; i < bufs.length; ++i) maxlen += bufs[i].length; + var o = new Uint8Array(maxlen); + var len = 0; + for(i = 0, maxlen = 0; i < bufs.length; maxlen += len, ++i) { + len = bufs[i].length; + if(bufs[i] instanceof Uint8Array) o.set(bufs[i], maxlen); + else if(typeof bufs[i] == "string") { throw "wtf"; } + else o.set(new Uint8Array(bufs[i]), maxlen); + } + return o; + } + return [].concat.apply([], bufs.map(function(buf) { return Array.isArray(buf) ? buf : [].slice.call(buf); })); +}; + function utf8decode(content) { var out = [], widx = 0, L = content.length + 250; var o = new_raw_buf(content.length + 255); @@ -198,31 +211,10 @@ function utf8decode(content) { return bconcat(out); } -var bconcat = function(bufs) { - if(typeof Uint8Array !== "undefined") { - var i = 0, maxlen = 0; - for(i = 0; i < bufs.length; ++i) maxlen += bufs[i].length; - var o = new Uint8Array(maxlen); - var len = 0; - for(i = 0, maxlen = 0; i < bufs.length; maxlen += len, ++i) { - len = bufs[i].length; - if(bufs[i] instanceof Uint8Array) o.set(bufs[i], maxlen); - else if(typeof bufs[i] == "string") { throw "wtf"; } - else o.set(new Uint8Array(bufs[i]), maxlen); - } - return o; - } - return [].concat.apply([], bufs.map(function(buf) { return Array.isArray(buf) ? buf : [].slice.call(buf); })); -}; - var chr0 = /\u0000/g, chr1 = /[\u0001-\u0006]/g; /* ssf.js (C) 2013-present SheetJS -- http://sheetjs.com */ /*jshint -W041 */ -var SSF = ({}); -function make_ssf(SSF){ -SSF.version = '0.11.2'; function _strrev(x) { var o = "", i = x.length-1; while(i>=0) o += x.charAt(i--); return o; } -function fill(c,l) { var o = ""; while(o.length < l) o+=c; return o; } function pad0(v,d){var t=""+v; return t.length>=d?t:fill('0',d-t.length)+t;} function pad_(v,d){var t=""+v;return t.length>=d?t:fill(' ',d-t.length)+t;} function rpad_(v,d){var t=""+v; return t.length>=d?t:t+fill(' ',d-t.length);} @@ -230,7 +222,8 @@ function pad0r1(v,d){var t=""+Math.round(v); return t.length>=d?t:fill('0',d-t.l function pad0r2(v,d){var t=""+v; return t.length>=d?t:fill('0',d-t.length)+t;} var p2_32 = Math.pow(2,32); function pad0r(v,d){if(v>p2_32||v<-p2_32) return pad0r1(v,d); var i = Math.round(v); return pad0r2(i,d); } -function isgeneral(s, i) { i = i || 0; return s.length >= 7 + i && (s.charCodeAt(i)|32) === 103 && (s.charCodeAt(i+1)|32) === 101 && (s.charCodeAt(i+2)|32) === 110 && (s.charCodeAt(i+3)|32) === 101 && (s.charCodeAt(i+4)|32) === 114 && (s.charCodeAt(i+5)|32) === 97 && (s.charCodeAt(i+6)|32) === 108; } +/* yes, in 2022 this is still faster than string compare */ +function SSF_isgeneral(s, i) { i = i || 0; return s.length >= 7 + i && (s.charCodeAt(i)|32) === 103 && (s.charCodeAt(i+1)|32) === 101 && (s.charCodeAt(i+2)|32) === 110 && (s.charCodeAt(i+3)|32) === 101 && (s.charCodeAt(i+4)|32) === 114 && (s.charCodeAt(i+5)|32) === 97 && (s.charCodeAt(i+6)|32) === 108; } var days = [ ['Sun', 'Sunday'], ['Mon', 'Monday'], @@ -254,7 +247,8 @@ var months = [ ['N', 'Nov', 'November'], ['D', 'Dec', 'December'] ]; -function init_table(t) { +function SSF_init_table(t) { + if(!t) t = {}; t[0]= 'General'; t[1]= '0'; t[2]= '0.00'; @@ -284,47 +278,66 @@ function init_table(t) { t[48]= '##0.0E+0'; t[49]= '@'; t[56]= '"上午/下午 "hh"時"mm"分"ss"秒 "'; + return t; } +/* repeated to satiate webpack */ +var table_fmt = { + 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 table_fmt = {}; -init_table(table_fmt); /* Defaults determined by systematically testing in Excel 2019 */ /* These formats appear to default to other formats in the table */ -var default_map = []; -var defi = 0; +var SSF_default_map = { + 5: 37, 6: 38, 7: 39, 8: 40, // 5 -> 37 ... 8 -> 40 -// 5 -> 37 ... 8 -> 40 -for(defi = 5; defi <= 8; ++defi) default_map[defi] = 32 + defi; + 23: 0, 24: 0, 25: 0, 26: 0, // 23 -> 0 ... 26 -> 0 -// 23 -> 0 ... 26 -> 0 -for(defi = 23; defi <= 26; ++defi) default_map[defi] = 0; + 27: 14, 28: 14, 29: 14, 30: 14, 31: 14, // 27 -> 14 ... 31 -> 14 -// 27 -> 14 ... 31 -> 14 -for(defi = 27; defi <= 31; ++defi) default_map[defi] = 14; -// 50 -> 14 ... 58 -> 14 -for(defi = 50; defi <= 58; ++defi) default_map[defi] = 14; + 50: 14, 51: 14, 52: 14, 53: 14, 54: 14, // 50 -> 14 ... 58 -> 14 + 55: 14, 56: 14, 57: 14, 58: 14, + 59: 1, 60: 2, 61: 3, 62: 4, // 59 -> 1 ... 62 -> 4 -// 59 -> 1 ... 62 -> 4 -for(defi = 59; defi <= 62; ++defi) default_map[defi] = defi - 58; -// 67 -> 9 ... 68 -> 10 -for(defi = 67; defi <= 68; ++defi) default_map[defi] = defi - 58; -// 72 -> 14 ... 75 -> 17 -for(defi = 72; defi <= 75; ++defi) default_map[defi] = defi - 58; + 67: 9, 68: 10, // 67 -> 9 ... 68 -> 10 + 69: 12, 70: 13, 71: 14, // 69 -> 12 ... 71 -> 14 + 72: 14, 73: 15, 74: 16, 75: 17, // 72 -> 14 ... 75 -> 17 + 76: 20, 77: 21, 78: 22, // 76 -> 20 ... 78 -> 22 + 79: 45, 80: 46, 81: 47, // 79 -> 45 ... 81 -> 47 + 82: 0 // 82 -> 0 ... 65536 -> 0 (omitted) +}; -// 69 -> 12 ... 71 -> 14 -for(defi = 67; defi <= 68; ++defi) default_map[defi] = defi - 57; - -// 76 -> 20 ... 78 -> 22 -for(defi = 76; defi <= 78; ++defi) default_map[defi] = defi - 56; - -// 79 -> 45 ... 81 -> 47 -for(defi = 79; defi <= 81; ++defi) default_map[defi] = defi - 34; - -// 82 -> 0 ... 65536 -> 0 (omitted) /* These formats technically refer to Accounting formats with no equivalent */ -var default_str = { +var SSF_default_str = { // 5 -- Currency, 0 decimal, black negative 5: '"$"#,##0_);\\("$"#,##0\\)', 63: '"$"#,##0_);\\("$"#,##0\\)', @@ -354,7 +367,7 @@ var default_str = { 44: '_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)' }; -function frac(x, D, mixed) { +function SSF_frac(x, D, mixed) { var sgn = x < 0 ? -1 : 1; var B = x * sgn; var P_2 = 0, P_1 = 1, P = 0; @@ -374,7 +387,7 @@ function frac(x, D, mixed) { var q = Math.floor(sgn * P/Q); return [q, sgn*P - q*Q, Q]; } -function parse_date_code(v,opts,b2) { +function SSF_parse_date_code(v,opts,b2) { if(v > 2958465 || v < 0) return null; var date = (v|0), time = Math.floor(86400 * (v - date)), dow=0; var dout=[]; @@ -395,7 +408,7 @@ function parse_date_code(v,opts,b2) { dout = [d.getFullYear(), d.getMonth()+1,d.getDate()]; dow = d.getDay(); if(date < 60) dow = (dow + 6) % 7; - if(b2) dow = fix_hijri(d, dout); + if(b2) dow = SSF_fix_hijri(d, dout); } out.y = dout[0]; out.m = dout[1]; out.d = dout[2]; out.S = time % 60; time = Math.floor(time / 60); @@ -404,64 +417,53 @@ function parse_date_code(v,opts,b2) { out.q = dow; return out; } -SSF.parse_date_code = parse_date_code; -var basedate = new Date(1899, 11, 31, 0, 0, 0); -var dnthresh = basedate.getTime(); -var base1904 = new Date(1900, 2, 1, 0, 0, 0); +var SSFbasedate = new Date(1899, 11, 31, 0, 0, 0); +var SSFdnthresh = SSFbasedate.getTime(); +var SSFbase1904 = new Date(1900, 2, 1, 0, 0, 0); function datenum_local(v, date1904) { var epoch = v.getTime(); if(date1904) epoch -= 1461*24*60*60*1000; - else if(v >= base1904) epoch += 24*60*60*1000; - return (epoch - (dnthresh + (v.getTimezoneOffset() - basedate.getTimezoneOffset()) * 60000)) / (24 * 60 * 60 * 1000); + else if(v >= SSFbase1904) epoch += 24*60*60*1000; + return (epoch - (SSFdnthresh + (v.getTimezoneOffset() - SSFbasedate.getTimezoneOffset()) * 60000)) / (24 * 60 * 60 * 1000); } -/* The longest 32-bit integer text is "-4294967296", exactly 11 chars */ -function general_fmt_int(v) { return v.toString(10); } -SSF._general_int = general_fmt_int; - /* ECMA-376 18.8.30 numFmt*/ /* Note: `toPrecision` uses standard form when prec > E and E >= -6 */ -var general_fmt_num = (function make_general_fmt_num() { - var trailing_zeroes_and_decimal = /(?:\.0*|(\.\d*[1-9])0+)$/; - function strip_decimal(o) { - return (o.indexOf(".") == -1) ? o : o.replace(trailing_zeroes_and_decimal, "$1"); - } +/* exponent >= -9 and <= 9 */ +function SSF_strip_decimal(o) { + return (o.indexOf(".") == -1) ? o : o.replace(/(?:\.0*|(\.\d*[1-9])0+)$/, "$1"); +} - /* General Exponential always shows 2 digits exp and trims the mantissa */ - var mantissa_zeroes_and_decimal = /(?:\.0*|(\.\d*[1-9])0+)[Ee]/; - var exp_with_single_digit = /(E[+-])(\d)$/; - function normalize_exp(o) { - if(o.indexOf("E") == -1) return o; - return o.replace(mantissa_zeroes_and_decimal,"$1E").replace(exp_with_single_digit,"$10$2"); - } +/* General Exponential always shows 2 digits exp and trims the mantissa */ +function SSF_normalize_exp(o) { + if(o.indexOf("E") == -1) return o; + return o.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2"); +} - /* exponent >= -9 and <= 9 */ - function small_exp(v) { - var w = (v<0?12:11); - var o = strip_decimal(v.toFixed(12)); if(o.length <= w) return o; - o = v.toPrecision(10); if(o.length <= w) return o; - return v.toExponential(5); - } +/* exponent >= -9 and <= 9 */ +function SSF_small_exp(v) { + var w = (v<0?12:11); + var o = SSF_strip_decimal(v.toFixed(12)); if(o.length <= w) return o; + o = v.toPrecision(10); if(o.length <= w) return o; + return v.toExponential(5); +} - /* exponent >= 11 or <= -10 likely exponential */ - function large_exp(v) { - var o = strip_decimal(v.toFixed(11)); - return (o.length > (v<0?12:11) || o === "0" || o === "-0") ? v.toPrecision(6) : o; - } +/* exponent >= 11 or <= -10 likely exponential */ +function SSF_large_exp(v) { + var o = SSF_strip_decimal(v.toFixed(11)); + return (o.length > (v<0?12:11) || o === "0" || o === "-0") ? v.toPrecision(6) : o; +} - function general_fmt_num_base(v) { - var V = Math.floor(Math.log(Math.abs(v))*Math.LOG10E), o; +function SSF_general_num(v) { + var V = Math.floor(Math.log(Math.abs(v))*Math.LOG10E), o; - if(V >= -4 && V <= -1) o = v.toPrecision(10+V); - else if(Math.abs(V) <= 9) o = small_exp(v); - else if(V === 10) o = v.toFixed(10).substr(0,12); - else o = large_exp(v); + if(V >= -4 && V <= -1) o = v.toPrecision(10+V); + else if(Math.abs(V) <= 9) o = SSF_small_exp(v); + else if(V === 10) o = v.toFixed(10).substr(0,12); + else o = SSF_large_exp(v); - return strip_decimal(normalize_exp(o.toUpperCase())); - } + return SSF_strip_decimal(SSF_normalize_exp(o.toUpperCase())); +} - return general_fmt_num_base; -})(); -SSF._general_num = general_fmt_num; /* "General" rules: @@ -470,22 +472,23 @@ SSF._general_num = general_fmt_num; - "up to 11 characters" displayed for numbers - Default date format (code 14) used for Dates + The longest 32-bit integer text is "-2147483648", exactly 11 chars TODO: technically the display depends on the width of the cell */ -function general_fmt(v, opts) { +function SSF_general(v, opts) { switch(typeof v) { case 'string': return v; case 'boolean': return v ? "TRUE" : "FALSE"; - case 'number': return (v|0) === v ? v.toString(10) : general_fmt_num(v); + case 'number': return (v|0) === v ? v.toString(10) : SSF_general_num(v); case 'undefined': return ""; case 'object': if(v == null) return ""; - if(v instanceof Date) return format(14, datenum_local(v, opts && opts.date1904), opts); + if(v instanceof Date) return SSF_format(14, datenum_local(v, opts && opts.date1904), opts); } throw new Error("unsupported value in General format: " + v); } -SSF._general = general_fmt; -function fix_hijri(date, o) { + +function SSF_fix_hijri(date, o) { /* TODO: properly adjust y/m/d and */ o[0] -= 581; var dow = date.getDay(); @@ -493,8 +496,7 @@ function fix_hijri(date, o) { return dow; } //var THAI_DIGITS = "\u0E50\u0E51\u0E52\u0E53\u0E54\u0E55\u0E56\u0E57\u0E58\u0E59".split(""); -/*jshint -W086 */ -function write_date(type, fmt, val, ss0) { +function SSF_write_date(type, fmt, val, ss0) { var o="", ss=0, tt=0, y = val.y, out, outl = 0; switch(type) { case 98: /* 'b' buddhist year */ @@ -557,6 +559,9 @@ if(ss0 >= 2) tt = ss0 === 3 ? 1000 : 100; var outstr = outl > 0 ? pad0(out, outl) : ""; return outstr; } + + +/*jshint -W086 */ /*jshint +W086 */ function commaify(s) { var w = 3; @@ -565,17 +570,18 @@ function commaify(s) { for(; j!=s.length; j+=w) o+=(o.length > 0 ? "," : "") + s.substr(j,w); return o; } -var write_num = (function make_write_num(){ var pct1 = /%/g; function write_num_pct(type, fmt, val){ var sfmt = fmt.replace(pct1,""), mul = fmt.length - sfmt.length; return write_num(type, sfmt, val * Math.pow(10,2*mul)) + fill("%",mul); } + function write_num_cm(type, fmt, val){ var idx = fmt.length - 1; while(fmt.charCodeAt(idx-1) === 44) --idx; return write_num(type, fmt.substr(0,idx), val / Math.pow(10,3*(fmt.length-idx))); } + function write_num_exp(fmt, val){ var o; var idx = fmt.indexOf("E") - fmt.indexOf(".") - 1; @@ -684,7 +690,7 @@ function write_num_flt(type, fmt, val) { var oa = ""; if((r = fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(r[4].length,7); - ff = frac(aval, Math.pow(10,ri)-1, false); + ff = SSF_frac(aval, Math.pow(10,ri)-1, false); o = "" + sign; oa = write_num("n", r[1], ff[1]); if(oa.charAt(oa.length-1) == " ") oa = oa.substr(0,oa.length-1) + "0"; @@ -696,7 +702,7 @@ function write_num_flt(type, fmt, val) { } if((r = fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(Math.max(r[1].length, r[4].length),7); - ff = frac(aval, Math.pow(10,ri)-1, true); + ff = SSF_frac(aval, Math.pow(10,ri)-1, true); return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad_(ff[1],ri) + r[2] + "/" + r[3] + rpad_(ff[2],ri): fill(" ", 2*ri+1 + r[2].length + r[3].length)); } if((r = fmt.match(/^[#0?]+$/))) { @@ -802,7 +808,7 @@ return "." + $1 + fill("0", hashq(r[1]).length-$1.length); }); var oa = ""; if((r = fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(r[4].length,7); - ff = frac(aval, Math.pow(10,ri)-1, false); + ff = SSF_frac(aval, Math.pow(10,ri)-1, false); o = "" + sign; oa = write_num("n", r[1], ff[1]); if(oa.charAt(oa.length-1) == " ") oa = oa.substr(0,oa.length-1) + "0"; @@ -814,7 +820,7 @@ return "." + $1 + fill("0", hashq(r[1]).length-$1.length); }); } if((r = fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))) { ri = Math.min(Math.max(r[1].length, r[4].length),7); - ff = frac(aval, Math.pow(10,ri)-1, true); + ff = SSF_frac(aval, Math.pow(10,ri)-1, true); return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad_(ff[1],ri) + r[2] + "/" + r[3] + rpad_(ff[2],ri): fill(" ", 2*ri+1 + r[2].length + r[3].length)); } if((r = fmt.match(/^[#0?]+$/))) { @@ -840,10 +846,10 @@ return "." + $1 + fill("0", hashq(r[1]).length-$1.length); }); } throw new Error("unsupported format |" + fmt + "|"); } -return function write_num(type, fmt, val) { +function write_num(type, fmt, val) { return (val|0) === val ? write_num_int(type, fmt, val) : write_num_flt(type, fmt, val); -};})(); -function split_fmt(fmt) { +} +function SSF_split_fmt(fmt) { var out = []; var in_str = false/*, cc*/; for(var i = 0, j = 0; i < fmt.length; ++i) switch((/*cc=*/fmt.charCodeAt(i))) { @@ -859,13 +865,13 @@ function split_fmt(fmt) { if(in_str === true) throw new Error("Format |" + fmt + "| unterminated string "); return out; } -SSF._split = split_fmt; -var abstime = /\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/; + +var SSF_abstime = /\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/; function fmt_is_date(fmt) { var i = 0, /*cc = 0,*/ c = "", o = ""; while(i < fmt.length) { switch((c = fmt.charAt(i))) { - case 'G': if(isgeneral(fmt, i)) i+= 6; i++; break; + case 'G': if(SSF_isgeneral(fmt, i)) i+= 6; i++; break; case '"': for(;(/*cc=*/fmt.charCodeAt(++i)) !== 34 && i < fmt.length;){/*empty*/} ++i; break; case '\\': i+=2; break; case '_': i+=2; break; @@ -884,7 +890,7 @@ function fmt_is_date(fmt) { case '[': o = c; while(fmt.charAt(i++) !== ']' && i < fmt.length) o += fmt.charAt(i); - if(o.match(abstime)) return true; + if(o.match(SSF_abstime)) return true; break; case '.': /* falls through */ @@ -902,7 +908,7 @@ function fmt_is_date(fmt) { } return false; } -SSF.is_date = fmt_is_date; + function eval_fmt(fmt, v, opts, flen) { var out = [], o = "", i = 0, c = "", lst='t', dt, j, cc; var hr='H'; @@ -910,7 +916,7 @@ function eval_fmt(fmt, v, opts, flen) { while(i < fmt.length) { switch((c = fmt.charAt(i))) { case 'G': /* General */ - if(!isgeneral(fmt, i)) throw new Error('unrecognized character ' + c + ' in ' +fmt); + if(!SSF_isgeneral(fmt, i)) throw new Error('unrecognized character ' + c + ' in ' +fmt); out[out.length] = {t:'G', v:'General'}; i+=7; break; case '"': /* Literal text */ for(o="";(cc=fmt.charCodeAt(++i)) !== 34 && i < fmt.length;) o += String.fromCharCode(cc); @@ -922,7 +928,7 @@ function eval_fmt(fmt, v, opts, flen) { out[out.length] = {t:'T', v:v}; ++i; break; case 'B': case 'b': if(fmt.charAt(i+1) === "1" || fmt.charAt(i+1) === "2") { - if(dt==null) { dt=parse_date_code(v, opts, fmt.charAt(i+1) === "2"); if(dt==null) return ""; } + if(dt==null) { dt=SSF_parse_date_code(v, opts, fmt.charAt(i+1) === "2"); if(dt==null) return ""; } out[out.length] = {t:'X', v:fmt.substr(i,2)}; lst = c; i+=2; break; } /* falls through */ @@ -931,14 +937,14 @@ function eval_fmt(fmt, v, opts, flen) { /* falls through */ case 'm': case 'd': case 'y': case 'h': case 's': case 'e': case 'g': if(v < 0) return ""; - if(dt==null) { dt=parse_date_code(v, opts); if(dt==null) return ""; } + if(dt==null) { dt=SSF_parse_date_code(v, opts); if(dt==null) return ""; } o = c; while(++i < fmt.length && fmt.charAt(i).toLowerCase() === c) o+=c; if(c === 'm' && lst.toLowerCase() === 'h') c = 'M'; if(c === 'h') c = hr; out[out.length] = {t:c, v:o}; lst = c; break; case 'A': case 'a': case '上': var q={t:c, v:c}; - if(dt==null) dt=parse_date_code(v, opts); + if(dt==null) dt=SSF_parse_date_code(v, opts); if(fmt.substr(i, 3).toUpperCase() === "A/P") { if(dt!=null) q.v = dt.H >= 12 ? "P" : "A"; q.t = 'T'; hr='h';i+=3;} else if(fmt.substr(i,5).toUpperCase() === "AM/PM") { if(dt!=null) q.v = dt.H >= 12 ? "PM" : "AM"; q.t = 'T'; i+=5; hr='h'; } else if(fmt.substr(i,5).toUpperCase() === "上午/下午") { if(dt!=null) q.v = dt.H >= 12 ? "下午" : "上午"; q.t = 'T'; i+=5; hr='h'; } @@ -949,8 +955,8 @@ function eval_fmt(fmt, v, opts, flen) { o = c; while(fmt.charAt(i++) !== ']' && i < fmt.length) o += fmt.charAt(i); if(o.slice(-1) !== ']') throw 'unterminated "[" block: |' + o + '|'; - if(o.match(abstime)) { - if(dt==null) { dt=parse_date_code(v, opts); if(dt==null) return ""; } + if(o.match(SSF_abstime)) { + if(dt==null) { dt=SSF_parse_date_code(v, opts); if(dt==null) return ""; } out[out.length] = {t:'Z', v:o.toLowerCase()}; lst = o.charAt(1); } else if(o.indexOf("$") > -1) { @@ -1024,7 +1030,7 @@ if(dt.u >= 0.5) { dt.u = 0; ++dt.S; } case 't': case 'T': case ' ': case 'D': break; case 'X': out[i].v = ""; out[i].t = ";"; break; case 'd': case 'm': case 'y': case 'h': case 'H': case 'M': case 's': case 'e': case 'b': case 'Z': -out[i].v = write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0); +out[i].v = SSF_write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0); out[i].t = 't'; break; case 'n': case '?': jj = i+1; @@ -1039,7 +1045,7 @@ out[i].v = write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0); } nstr += out[i].v; i = jj-1; break; - case 'G': out[i].t = 't'; out[i].v = general_fmt(v,opts); break; + case 'G': out[i].t = 't'; out[i].v = SSF_general(v,opts); break; } } var vv = "", myv, ostr; @@ -1107,8 +1113,7 @@ out[i].v = write_date(out[i].t.charCodeAt(0), out[i].v, dt, ss0); for(i=0; i !== out.length; ++i) if(out[i] != null) retval += out[i].v; return retval; } -SSF._eval = eval_fmt; -var cfregex = /\[[=<>]/; + var cfregex2 = /\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/; function chkcond(v, rr) { if(rr == null) return false; @@ -1124,7 +1129,7 @@ function chkcond(v, rr) { return false; } function choose_fmt(f, v) { - var fmt = split_fmt(f); + var fmt = SSF_split_fmt(f); var l = fmt.length, lat = fmt[l-1].indexOf("@"); if(l<4 && lat>-1) --l; if(fmt.length > 4) throw new Error("cannot find right format for |" + fmt.join("|") + "|"); @@ -1137,14 +1142,14 @@ function choose_fmt(f, v) { } var ff = v > 0 ? fmt[0] : v < 0 ? fmt[1] : fmt[2]; if(fmt[0].indexOf("[") === -1 && fmt[1].indexOf("[") === -1) return [l, ff]; - if(fmt[0].match(cfregex) != null || fmt[1].match(cfregex) != null) { + if(fmt[0].match(/\[[=<>]/) != null || fmt[1].match(/\[[=<>]/) != null) { var m1 = fmt[0].match(cfregex2); var m2 = fmt[1].match(cfregex2); return chkcond(v, m1) ? [l, fmt[0]] : chkcond(v, m2) ? [l, fmt[1]] : [l, fmt[m1 != null && m2 != null ? 2 : 1]]; } return [l, ff]; } -function format(fmt,v,o) { +function SSF_format(fmt,v,o) { if(o == null) o = {}; var sfmt = ""; switch(typeof fmt) { @@ -1155,19 +1160,19 @@ function format(fmt,v,o) { case "number": if(fmt == 14 && o.dateNF) sfmt = o.dateNF; else sfmt = (o.table != null ? (o.table) : table_fmt)[fmt]; - if(sfmt == null) sfmt = (o.table && o.table[default_map[fmt]]) || table_fmt[default_map[fmt]]; - if(sfmt == null) sfmt = default_str[fmt] || "General"; + if(sfmt == null) sfmt = (o.table && o.table[SSF_default_map[fmt]]) || table_fmt[SSF_default_map[fmt]]; + if(sfmt == null) sfmt = SSF_default_str[fmt] || "General"; break; } - if(isgeneral(sfmt,0)) return general_fmt(v, o); + if(SSF_isgeneral(sfmt,0)) return SSF_general(v, o); if(v instanceof Date) v = datenum_local(v, o.date1904); var f = choose_fmt(sfmt, v); - if(isgeneral(f[1])) return general_fmt(v, o); + if(SSF_isgeneral(f[1])) return SSF_general(v, o); if(v === true) v = "TRUE"; else if(v === false) v = "FALSE"; else if(v === "" || v == null) return ""; return eval_fmt(f[1], v, o, f[0]); } -function load_entry(fmt, idx) { +function SSF_load(fmt, idx) { if(typeof idx != 'number') { idx = +idx || -1; for(var i = 0; i < 0x0188; ++i) { @@ -1179,36 +1184,24 @@ if(idx < 0) idx = 0x187; table_fmt[idx] = fmt; return idx; } -SSF.load = load_entry; -SSF._table = table_fmt; -SSF.get_table = function get_table() { return table_fmt; }; -SSF.load_table = function load_table(tbl) { +function SSF_load_table(tbl) { for(var i=0; i!=0x0188; ++i) - if(tbl[i] !== undefined) load_entry(tbl[i], i); -}; -SSF.init_table = init_table; -SSF.format = format; + if(tbl[i] !== undefined) SSF_load(tbl[i], i); } -make_ssf(SSF); -/* map from xlml named formats to SSF TODO: localize */ -var XLMLFormatMap/*{[string]:string}*/ = ({ - "General Number": "General", - "General Date": SSF._table[22], - "Long Date": "dddd, mmmm dd, yyyy", - "Medium Date": SSF._table[15], - "Short Date": SSF._table[14], - "Long Time": SSF._table[19], - "Medium Time": SSF._table[18], - "Short Time": SSF._table[20], - "Currency": '"$"#,##0.00_);[Red]\\("$"#,##0.00\\)', - "Fixed": SSF._table[2], - "Standard": SSF._table[4], - "Percent": SSF._table[10], - "Scientific": SSF._table[11], - "Yes/No": '"Yes";"Yes";"No";@', - "True/False": '"True";"True";"False";@', - "On/Off": '"Yes";"Yes";"No";@' -}); + +function make_ssf() { + table_fmt = SSF_init_table(); +} + +var SSF = { + format: SSF_format, + load: SSF_load, + _table: table_fmt, + load_table: SSF_load_table, + parse_date_code: SSF_parse_date_code, + is_date: fmt_is_date, + get_table: function get_table() { return SSF._table = table_fmt; } +}; var SSFImplicit/*{[number]:string}*/ = ({ "5": '"$"#,##0_);\\("$"#,##0\\)', @@ -1253,7 +1246,7 @@ var SSFImplicit/*{[number]:string}*/ = ({ /* dateNF parse TODO: move to SSF */ var dateNFregex = /[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g; function dateNF_regex(dateNF) { - var fmt = typeof dateNF == "number" ? SSF._table[dateNF] : dateNF; + var fmt = typeof dateNF == "number" ? table_fmt[dateNF] : dateNF; fmt = fmt.replace(dateNFregex, "(\\d+)"); return new RegExp("^" + fmt + "$"); } @@ -1798,7 +1791,7 @@ function read(blob, options) { } switch(type || "base64") { case "file": return read_file(blob, options); - case "base64": return parse(s2a(Base64.decode(blob)), options); + case "base64": return parse(s2a(Base64_decode(blob)), options); case "binary": return parse(s2a(blob), options); } return parse(blob, options); @@ -2115,7 +2108,7 @@ function write(cfb, options) { switch(options && options.type || "buffer") { case "file": get_fs(); fs.writeFileSync(options.filename, (o)); return o; case "binary": return typeof o == "string" ? o : a2s(o); - case "base64": return Base64.encode(typeof o == "string" ? o : a2s(o)); + case "base64": return Base64_encode(typeof o == "string" ? o : a2s(o)); case "buffer": if(has_buf) return Buffer.isBuffer(o) ? o : Buffer_from(o); /* falls through */ case "array": return typeof o == "string" ? s2a(o) : o; @@ -2824,7 +2817,7 @@ function get_content_type(fi, fp) { /* 76 character chunks TODO: intertwine encoding */ function write_base64_76(bstr) { - var data = Base64.encode(bstr); + var data = Base64_encode(bstr); var o = []; for(var i = 0; i < data.length; i+= 76) o.push(data.slice(i, i+76)); return o.join("\r\n") + "\r\n"; @@ -2905,7 +2898,7 @@ function parse_mime(cfb, data, root) { } ++di; switch(cte.toLowerCase()) { - case 'base64': fdata = s2a(Base64.decode(data.slice(di).join(""))); break; + case 'base64': fdata = s2a(Base64_decode(data.slice(di).join(""))); break; case 'quoted-printable': fdata = parse_quoted_printable(data.slice(di)); break; default: throw new Error("Unsupported Content-Transfer-Encoding " + cte); } @@ -3227,8 +3220,8 @@ function parse_isodur(s) { return sec; } -var good_pd_date = new Date('2017-02-19T19:06:09.000Z'); -if(isNaN(good_pd_date.getFullYear())) good_pd_date = new Date('2/19/17'); +var good_pd_date_1 = new Date('2017-02-19T19:06:09.000Z'); +var good_pd_date = isNaN(good_pd_date_1.getFullYear()) ? new Date('2/19/17') : good_pd_date_1; var good_pd = good_pd_date.getFullYear() == 2017; /* parses a date as a local date */ function parseDate(str, fixdate) { @@ -3253,12 +3246,30 @@ if(fixdate > 0) d.setTime(d.getTime() + d.getTimezoneOffset() * 60 * 1000); function cc2str(arr, debomit) { if(has_buf && Buffer.isBuffer(arr)) { if(debomit) { - if(arr[0] == 0xFF && arr[1] == 0xFE) return arr.slice(2).toString("utf16le"); - if(arr[1] == 0xFE && arr[2] == 0xFF) return utf16beread(arr.slice(2).toString("binary")); + if(arr[0] == 0xFF && arr[1] == 0xFE) return utf8write(arr.slice(2).toString("utf16le")); + if(arr[1] == 0xFE && arr[2] == 0xFF) return utf8write(utf16beread(arr.slice(2).toString("binary"))); } return arr.toString("binary"); } - /* TODO: investigate performance degradation of TextEncoder in Edge 13 */ + + if(typeof TextDecoder !== "undefined") try { + if(debomit) { + if(arr[0] == 0xFF && arr[1] == 0xFE) return utf8write(new TextDecoder("utf-16le").decode(arr.slice(2))); + if(arr[0] == 0xFE && arr[1] == 0xFF) return utf8write(new TextDecoder("utf-16be").decode(arr.slice(2))); + } + var rev = { + "\u20ac": "\x80", "\u201a": "\x82", "\u0192": "\x83", "\u201e": "\x84", + "\u2026": "\x85", "\u2020": "\x86", "\u2021": "\x87", "\u02c6": "\x88", + "\u2030": "\x89", "\u0160": "\x8a", "\u2039": "\x8b", "\u0152": "\x8c", + "\u017d": "\x8e", "\u2018": "\x91", "\u2019": "\x92", "\u201c": "\x93", + "\u201d": "\x94", "\u2022": "\x95", "\u2013": "\x96", "\u2014": "\x97", + "\u02dc": "\x98", "\u2122": "\x99", "\u0161": "\x9a", "\u203a": "\x9b", + "\u0153": "\x9c", "\u017e": "\x9e", "\u0178": "\x9f" + }; + if(Array.isArray(arr)) arr = new Uint8Array(arr); + return new TextDecoder("latin1").decode(arr).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g, function(c) { return rev[c] || c; }); + } catch(e) {} + var o = []; for(var i = 0; i != arr.length; ++i) o.push(String.fromCharCode(arr[i])); return o.join(""); @@ -3303,13 +3314,15 @@ function fuzzydate(s) { return o; } -var safe_split_regex = "abacaba".split(/(:?b)/i).length == 5; -function split_regex(str, re, def) { - if(safe_split_regex || typeof re == "string") return str.split(re); - var p = str.split(re), o = [p[0]]; - for(var i = 1; i < p.length; ++i) { o.push(def); o.push(p[i]); } - return o; -} +var split_regex = (function() { + var safe_split_regex = "abacaba".split(/(:?b)/i).length == 5; + return function split_regex(str, re, def) { + if(safe_split_regex || typeof re == "string") return str.split(re); + var p = str.split(re), o = [p[0]]; + for(var i = 1; i < p.length; ++i) { o.push(def); o.push(p[i]); } + return o; + }; +})(); function getdatastr(data) { if(!data) return null; if(data.content && data.type) return cc2str(data.content, true); @@ -3417,9 +3430,8 @@ function resolve_path(path, base) { } var XML_HEADER = '\r\n'; var attregexg=/([^"\s?>\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g; -var tagregex=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/mg; - -if(!(XML_HEADER.match(tagregex))) tagregex = /<[^>]*>/g; +var tagregex1=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'">\s=]+))*\s*[\/\?]?>/mg, tagregex2 = /<[^>]*>/g; +var tagregex = XML_HEADER.match(tagregex1) ? tagregex1 : tagregex2; var nsregex=/<\w*:/, nsregex2 = /<(\/?)\w+:/; function parsexmltag(tag, skip_root, skip_LC) { var z = ({}); @@ -3508,7 +3520,7 @@ function parsexmlbool(value) { } } -var utf8read = function utf8reada(orig) { +function utf8reada(orig) { var out = "", i = 0, c = 0, d = 0, e = 0, f = 0, w = 0; while (i < orig.length) { c = orig.charCodeAt(i++); @@ -3523,9 +3535,31 @@ var utf8read = function utf8reada(orig) { out += String.fromCharCode(0xDC00 + (w&1023)); } return out; -}; +} -var utf8write = function(orig) { +function utf8readb(data) { + var out = new_raw_buf(2*data.length), w, i, j = 1, k = 0, ww=0, c; + for(i = 0; i < data.length; i+=j) { + j = 1; + if((c=data.charCodeAt(i)) < 128) w = c; + else if(c < 224) { w = (c&31)*64+(data.charCodeAt(i+1)&63); j=2; } + else if(c < 240) { w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63); j=3; } + else { j = 4; + w = (c & 7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63); + w -= 65536; ww = 0xD800 + ((w>>>10)&1023); w = 0xDC00 + (w&1023); + } + if(ww !== 0) { out[k++] = ww&255; out[k++] = ww>>>8; ww = 0; } + out[k++] = w%256; out[k++] = w>>>8; + } + return out.slice(0,k).toString('ucs2'); +} + +function utf8readc(data) { return Buffer_from(data, 'binary').toString('utf8'); } + +var utf8corpus = "foo bar baz\u00e2\u0098\u0083\u00f0\u009f\u008d\u00a3"; +var utf8read = has_buf && (utf8readc(utf8corpus) == utf8reada(utf8corpus) && utf8readc || utf8readb(utf8corpus) == utf8reada(utf8corpus) && utf8readb) || utf8reada; + +var utf8write = has_buf ? function(data) { return Buffer_from(data, 'utf8').toString("binary"); } : function(orig) { var out = [], i = 0, c = 0, d = 0; while(i < orig.length) { c = orig.charCodeAt(i++); @@ -3551,31 +3585,6 @@ var utf8write = function(orig) { return out.join(""); }; -if(has_buf) { - var utf8readb = function utf8readb(data) { - var out = Buffer.alloc(2*data.length), w, i, j = 1, k = 0, ww=0, c; - for(i = 0; i < data.length; i+=j) { - j = 1; - if((c=data.charCodeAt(i)) < 128) w = c; - else if(c < 224) { w = (c&31)*64+(data.charCodeAt(i+1)&63); j=2; } - else if(c < 240) { w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63); j=3; } - else { j = 4; - w = (c & 7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63); - w -= 65536; ww = 0xD800 + ((w>>>10)&1023); w = 0xDC00 + (w&1023); - } - if(ww !== 0) { out[k++] = ww&255; out[k++] = ww>>>8; ww = 0; } - out[k++] = w%256; out[k++] = w>>>8; - } - return out.slice(0,k).toString('ucs2'); - }; - var corpus = "foo bar baz\u00e2\u0098\u0083\u00f0\u009f\u008d\u00a3"; - if(utf8read(corpus) == utf8readb(corpus)) utf8read = utf8readb; - var utf8readc = function utf8readc(data) { return Buffer_from(data, 'binary').toString('utf8'); }; - if(utf8read(corpus) == utf8readc(corpus)) utf8read = utf8readc; - - utf8write = function(data) { return Buffer_from(data, 'utf8').toString("binary"); }; -} - // matches ... extracts content var matchtag = (function() { var mtcache = ({}); @@ -3725,39 +3734,44 @@ function write_double_le(b, v, idx) { b[idx + 7] = (e >> 4) | bs; } -var __toBuffer = function(bufs) { var x=[],w=10240; for(var i=0;i 0 ? __utf8(b, i+4,i+4+len-1) : "";}; -var ___lpstr = __lpstr; -var __cpstr = function(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; -var ___cpstr = __cpstr; -var __lpwstr = function(b,i) { var len = 2*__readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; -var ___lpwstr = __lpwstr; -var __lpp4, ___lpp4; -__lpp4 = ___lpp4 = function lpp4_(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf16le(b, i+4,i+4+len) : "";}; -var __8lpp4 = function(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len) : "";}; -var ___8lpp4 = __8lpp4; -var __double, ___double; -__double = ___double = function(b, idx) { return read_double_le(b, idx);}; +var ___toBuffer = function(bufs) { var x=[],w=10240; for(var i=0;i 0 && Buffer.isBuffer(bufs[0][0])) ? Buffer.concat(bufs[0].map(function(x) { return Buffer.isBuffer(x) ? x : Buffer_from(x); })) : ___toBuffer(bufs);} : ___toBuffer; + +var ___utf16le = function(b,s,e) { var ss=[]; for(var i=s; i 0 ? __utf8(b, i+4,i+4+len-1) : "";}; +var __lpstr = ___lpstr; + +var ___cpstr = function(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; +var __cpstr = ___cpstr; + +var ___lpwstr = function(b,i) { var len = 2*__readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len-1) : "";}; +var __lpwstr = ___lpwstr; + +var ___lpp4 = function lpp4_(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf16le(b, i+4,i+4+len) : "";}; +var __lpp4 = ___lpp4; + +var ___8lpp4 = function(b,i) { var len = __readUInt32LE(b,i); return len > 0 ? __utf8(b, i+4,i+4+len) : "";}; +var __8lpp4 = ___8lpp4; + +var ___double = function(b, idx) { return read_double_le(b, idx);}; +var __double = ___double; + var is_buf = function is_buf_a(a) { return Array.isArray(a) || (typeof Uint8Array !== "undefined" && a instanceof Uint8Array); }; if(has_buf) { - __utf16le = function(b,s,e) { if(!Buffer.isBuffer(b)) return ___utf16le(b,s,e); return b.toString('utf16le',s,e).replace(chr0,'')/*.replace(chr1,'!')*/; }; - __hexlify = function(b,s,l) { return Buffer.isBuffer(b) ? b.toString('hex',s,s+l) : ___hexlify(b,s,l); }; __lpstr = function lpstr_b(b, i) { if(!Buffer.isBuffer(b)) return ___lpstr(b, i); var len = b.readUInt32LE(i); return len > 0 ? b.toString('utf8',i+4,i+4+len-1) : "";}; __cpstr = function cpstr_b(b, i) { if(!Buffer.isBuffer(b)) return ___cpstr(b, i); var len = b.readUInt32LE(i); return len > 0 ? b.toString('utf8',i+4,i+4+len-1) : "";}; __lpwstr = function lpwstr_b(b, i) { if(!Buffer.isBuffer(b)) return ___lpwstr(b, i); var len = 2*b.readUInt32LE(i); return b.toString('utf16le',i+4,i+4+len-1);}; __lpp4 = function lpp4_b(b, i) { if(!Buffer.isBuffer(b)) return ___lpp4(b, i); var len = b.readUInt32LE(i); return b.toString('utf16le',i+4,i+4+len);}; __8lpp4 = function lpp4_8b(b, i) { if(!Buffer.isBuffer(b)) return ___8lpp4(b, i); var len = b.readUInt32LE(i); return b.toString('utf8',i+4,i+4+len);}; - __utf8 = function utf8_b(b, s, e) { return (Buffer.isBuffer(b)) ? b.toString('utf8',s,e) : ___utf8(b,s,e); }; - __toBuffer = function(bufs) { return (bufs[0].length > 0 && Buffer.isBuffer(bufs[0][0])) ? Buffer.concat(bufs[0].map(function(x) { return Buffer.isBuffer(x) ? x : Buffer_from(x); })) : ___toBuffer(bufs);}; - bconcat = function(bufs) { return Buffer.concat(bufs.map(function(buf) { return Buffer.isBuffer(buf) ? buf : Buffer_from(buf); })); }; __double = function double_(b, i) { if(Buffer.isBuffer(b)) return b.readDoubleLE(i); return ___double(b,i); }; is_buf = function is_buf_b(a) { return Buffer.isBuffer(a) || Array.isArray(a) || (typeof Uint8Array !== "undefined" && a instanceof Uint8Array); }; } @@ -4129,8 +4143,8 @@ function safe_decode_range(range) { function safe_format_cell(cell, v) { var q = (cell.t == 'd' && v instanceof Date); - if(cell.z != null) try { return (cell.w = SSF.format(cell.z, q ? datenum(v) : v)); } catch(e) { } - try { return (cell.w = SSF.format((cell.XF||{}).numFmtId||(q ? 14 : 0), q ? datenum(v) : v)); } catch(e) { return ''+v; } + if(cell.z != null) try { return (cell.w = SSF_format(cell.z, q ? datenum(v) : v)); } catch(e) { } + try { return (cell.w = SSF_format((cell.XF||{}).numFmtId||(q ? 14 : 0), q ? datenum(v) : v)); } catch(e) { return ''+v; } } function format_cell(cell, v, o) { @@ -4194,9 +4208,9 @@ function sheet_add_aoa(_ws, data, opts) { else if(typeof cell.v === 'number') cell.t = 'n'; else if(typeof cell.v === 'boolean') cell.t = 'b'; else if(cell.v instanceof Date) { - cell.z = o.dateNF || SSF._table[14]; - if(o.cellDates) { cell.t = 'd'; cell.w = SSF.format(cell.z, datenum(cell.v)); } - else { cell.t = 'n'; cell.v = datenum(cell.v); cell.w = SSF.format(cell.z, cell.v); } + cell.z = o.dateNF || table_fmt[14]; + if(o.cellDates) { cell.t = 'd'; cell.w = SSF_format(cell.z, datenum(cell.v)); } + else { cell.t = 'n'; cell.v = datenum(cell.v); cell.w = SSF_format(cell.z, cell.v); } } else cell.t = 's'; } @@ -4217,6 +4231,7 @@ function sheet_add_aoa(_ws, data, opts) { function aoa_to_sheet(data, opts) { return sheet_add_aoa(null, data, opts); } /* [MS-OLEPS] 2.2 PropertyType */ +// Note: some tree shakers cannot handle VT_VECTOR | $CONST, hence extra vars //var VT_EMPTY = 0x0000; //var VT_NULL = 0x0001; var VT_I2 = 0x0002; @@ -4251,6 +4266,8 @@ var VT_CF = 0x0047; //var VT_CLSID = 0x0048; //var VT_VERSIONED_STREAM = 0x0049; var VT_VECTOR = 0x1000; +var VT_VECTOR_VARIANT = 0x100C; +var VT_VECTOR_LPSTR = 0x101E; //var VT_ARRAY = 0x2000; var VT_STRING = 0x0050; // 2.3.3.1.11 VtString @@ -4270,8 +4287,8 @@ var DocSummaryPIDDSI = { 0x09: { n: 'HiddenCount', t: VT_I4 }, 0x0a: { n: 'MultimediaClipCount', t: VT_I4 }, 0x0b: { n: 'ScaleCrop', t: VT_BOOL }, -0x0c: { n: 'HeadingPairs', t: VT_VECTOR | VT_VARIANT }, -0x0d: { n: 'TitlesOfParts', t: VT_VECTOR | VT_LPSTR }, +0x0c: { n: 'HeadingPairs', t: VT_VECTOR_VARIANT /* VT_VECTOR | VT_VARIANT */ }, +0x0d: { n: 'TitlesOfParts', t: VT_VECTOR_LPSTR /* VT_VECTOR | VT_LPSTR */ }, 0x0e: { n: 'Manager', t: VT_STRING }, 0x0f: { n: 'Company', t: VT_STRING }, 0x10: { n: 'LinksUpToDate', t: VT_BOOL }, @@ -4400,7 +4417,7 @@ function rgbify(arr) { return arr.map(function(x) { return [(x>>16)&255,(x>>8)&2 /* [MS-XLS] 2.5.161 */ /* [MS-XLSB] 2.5.75 Icv */ -var _XLSIcv = rgbify([ +var _XLSIcv = rgbify([ /* Color Constants */ 0x000000, 0xFFFFFF, @@ -4506,7 +4523,19 @@ var BErr = { 0x2B: "#GETTING_DATA", 0xFF: "#WTF?" }; -var RBErr = evert_num(BErr); +//var RBErr = evert_num(BErr); +var RBErr = { + "#NULL!": 0x00, + "#DIV/0!": 0x07, + "#VALUE!": 0x0F, + "#REF!": 0x17, + "#NAME?": 0x1D, + "#NUM!": 0x24, + "#N/A": 0x2A, + "#GETTING_DATA": 0x2B, + "#WTF?": 0xFF +}; + /* Parts enumerated in OPC spec, MS-XLSB and MS-XLSX */ /* 12.3 Part Summary */ /* 14.2 Part Summary */ @@ -4760,18 +4789,17 @@ function parse_ct(data) { return ct; } -var CTYPE_XML_ROOT = writextag('Types', null, { - 'xmlns': XMLNS.CT, - 'xmlns:xsd': XMLNS.xsd, - 'xmlns:xsi': XMLNS.xsi -}); - function write_ct(ct, opts) { var type2ct/*{[string]:Array}*/ = evert_arr(ct2type); var o = [], v; o[o.length] = (XML_HEADER); - o[o.length] = (CTYPE_XML_ROOT); + o[o.length] = writextag('Types', null, { + 'xmlns': XMLNS.CT, + 'xmlns:xsd': XMLNS.xsd, + 'xmlns:xsi': XMLNS.xsi + }); + o = o.concat([ ['xml', 'application/xml'], ['bin', 'application/vnd.ms-excel.sheet.binary.macroEnabled.main'], @@ -4902,14 +4930,12 @@ function parse_rels(data, currentFilePath) { } -var RELS_ROOT = writextag('Relationships', null, { - //'xmlns:ns0': XMLNS.RELS, - 'xmlns': XMLNS.RELS -}); - /* TODO */ function write_rels(rels) { - var o = [XML_HEADER, RELS_ROOT]; + var o = [XML_HEADER, writextag('Relationships', null, { + //'xmlns:ns0': XMLNS.RELS, + 'xmlns': XMLNS.RELS + })]; keys(rels['!id']).forEach(function(rid) { o[o.length] = (writextag('Relationship', null, rels['!id'][rid])); }); @@ -4917,7 +4943,6 @@ function write_rels(rels) { return o.join(""); } -var RELS_EXTERN = [RELS.HLINK, RELS.XPATH, RELS.XMISS]; function add_rels(rels, rId, f, type, relobj, targetmode) { if(!relobj) relobj = {}; if(!rels['!id']) rels['!id'] = {}; @@ -4928,7 +4953,7 @@ function add_rels(rels, rId, f, type, relobj, targetmode) { relobj.Type = type; relobj.Target = f; if(targetmode) relobj.TargetMode = targetmode; - else if(RELS_EXTERN.indexOf(relobj.Type) > -1) relobj.TargetMode = "External"; + else if([RELS.HLINK, RELS.XPATH, RELS.XMISS].indexOf(relobj.Type) > -1) relobj.TargetMode = "External"; if(rels['!id'][relobj.Id]) throw new Error("Cannot rewrite rId " + rId); rels['!id'][relobj.Id] = relobj; rels[('/' + relobj.Target).replace("//","/")] = relobj; @@ -5317,7 +5342,7 @@ function dbf_to_aoa(buf, opts) { var out = []; var d = (new_raw_buf(1)); switch(opts.type) { - case 'base64': d = s2a(Base64.decode(buf)); break; + case 'base64': d = s2a(Base64_decode(buf)); break; case 'binary': d = s2a(buf); break; case 'buffer': case 'array': d = buf; break; @@ -5647,7 +5672,7 @@ var SYLK = (function() { /* TODO: find an actual specification */ function sylk_to_aoa(d, opts) { switch(opts.type) { - case 'base64': return sylk_to_aoa_str(Base64.decode(d), opts); + case 'base64': return sylk_to_aoa_str(Base64_decode(d), opts); case 'binary': return sylk_to_aoa_str(d, opts); case 'buffer': return sylk_to_aoa_str(has_buf && Buffer.isBuffer(d) ? d.toString('binary') : a2s(d), opts); case 'array': return sylk_to_aoa_str(cc2str(d), opts); @@ -5692,7 +5717,7 @@ var SYLK = (function() { else if(val === 'FALSE') val = false; else if(!isNaN(fuzzynum(val))) { val = fuzzynum(val); - if(next_cell_format !== null && SSF.is_date(next_cell_format)) val = numdate(val); + if(next_cell_format !== null && fmt_is_date(next_cell_format)) val = numdate(val); } else if(!isNaN(fuzzydate(val).getDate())) { val = parseDate(val); } @@ -5850,7 +5875,7 @@ var SYLK = (function() { var DIF = (function() { function dif_to_aoa(d, opts) { switch(opts.type) { - case 'base64': return dif_to_aoa_str(Base64.decode(d), opts); + case 'base64': return dif_to_aoa_str(Base64_decode(d), opts); case 'binary': return dif_to_aoa_str(d, opts); case 'buffer': return dif_to_aoa_str(has_buf && Buffer.isBuffer(d) ? d.toString('binary') : a2s(d), opts); case 'array': return dif_to_aoa_str(cc2str(d), opts); @@ -5937,7 +5962,7 @@ var DIF = (function() { push_value(o, 1, 0, (!DIF_XL || isNaN(cell.v)) ? cell.v : '="' + cell.v + '"'); break; case 'd': - if(!cell.w) cell.w = SSF.format(cell.z || SSF._table[14], datenum(parseDate(cell.v))); + if(!cell.w) cell.w = SSF_format(cell.z || table_fmt[14], datenum(parseDate(cell.v))); if(DIF_XL) push_value(o, 0, cell.w, "V"); else push_value(o, 1, 0, cell.w); break; @@ -6034,7 +6059,7 @@ var ETH = (function() { case 'd': var t = datenum(parseDate(cell.v)); oo[2] = 'vtc'; oo[3] = 'nd'; oo[4] = ""+t; - oo[5] = cell.w || SSF.format(cell.z || SSF._table[14], t); + oo[5] = cell.w || SSF_format(cell.z || table_fmt[14], t); break; case 'e': continue; } @@ -6175,12 +6200,12 @@ var PRN = (function() { else if(s == "FALSE") { cell.t = 'b'; cell.v = false; } else if(!isNaN(v = fuzzynum(s))) { cell.t = 'n'; if(o.cellText !== false) cell.w = s; cell.v = v; } else if(!isNaN(fuzzydate(s).getDate()) || _re && s.match(_re)) { - cell.z = o.dateNF || SSF._table[14]; + cell.z = o.dateNF || table_fmt[14]; var k = 0; if(_re && s.match(_re)){ s=dateNF_fix(s, o.dateNF, (s.match(_re)||[])); k=1; } if(o.cellDates) { cell.t = 'd'; cell.v = parseDate(s, k); } else { cell.t = 'n'; cell.v = datenum(parseDate(s, k)); } - if(o.cellText !== false) cell.w = SSF.format(cell.z, cell.v instanceof Date ? datenum(cell.v):cell.v); + if(o.cellText !== false) cell.w = SSF_format(cell.z, cell.v instanceof Date ? datenum(cell.v):cell.v); if(!o.cellNF) delete cell.z; } else { cell.t = 's'; @@ -6216,7 +6241,7 @@ var PRN = (function() { function prn_to_sheet(d, opts) { var str = "", bytes = opts.type == 'string' ? [0,0,0,0] : firstbyte(d, opts); switch(opts.type) { - case 'base64': str = Base64.decode(d); break; + case 'base64': str = Base64_decode(d); break; case 'binary': str = d; break; case 'buffer': if(opts.codepage == 65001) str = d.toString('utf8'); // TODO: test if buf @@ -6898,8 +6923,8 @@ function parse_fonts(t, styles, themes, opts) { /* 18.8.31 numFmts CT_NumFmts */ function parse_numFmts(t, styles, opts) { styles.NumberFmt = []; - var k/*Array*/ = (keys(SSF._table)); - for(var i=0; i < k.length; ++i) styles.NumberFmt[k[i]] = SSF._table[k[i]]; + var k/*Array*/ = (keys(table_fmt)); + for(var i=0; i < k.length; ++i) styles.NumberFmt[k[i]] = table_fmt[k[i]]; var m = t[0].match(tagregex); if(!m) return; for(i=0; i < m.length; ++i) { @@ -6914,7 +6939,7 @@ function parse_numFmts(t, styles, opts) { for(j = 0x188; j > 0x3c; --j) if(styles.NumberFmt[j] == null) break; styles.NumberFmt[j] = f; } - SSF.load(f,j); + SSF_load(f,j); } } break; case '': break; @@ -7349,6 +7374,7 @@ function parse_xlmeta_xml(data, name, opts) { return out; var pass = false; var metatype = 2; + var lastmeta; data.replace(tagregex, function(x) { var y = parsexmltag(x); switch (strip_ns(y[0])) { @@ -7366,6 +7392,9 @@ function parse_xlmeta_xml(data, name, opts) { case "": break; case "": break; @@ -7404,6 +7433,13 @@ function parse_xlmeta_xml(data, name, opts) { case "": pass = false; break; + case "/g, ""); - var mtch = str.match(/"); - var mtch2 = str.match(/<\/table/i); - var i = mtch.index, j = mtch2 && mtch2.index || str.length; - var rows = split_regex(str.slice(i, j), /(:?]*>)/i, ""); - var R = -1, C = 0, RS = 0, CS = 0; - var range = {s:{r:10000000, c:10000000},e:{r:0,c:0}}; - var merges = []; - for(i = 0; i < rows.length; ++i) { - var row = rows[i].trim(); - var hd = row.slice(0,3).toLowerCase(); - if(hd == "/i); - for(j = 0; j < cells.length; ++j) { - var cell = cells[j].trim(); - if(!cell.match(/")) > -1) m = m.slice(cc+1); - for(var midx = 0; midx < merges.length; ++midx) { - var _merge = merges[midx]; - if(_merge.s.c == C && _merge.s.r < R && R <= _merge.e.r) { C = _merge.e.c + 1; midx = -1; } - } - var tag = parsexmltag(cell.slice(0, cell.indexOf(">"))); - CS = tag.colspan ? +tag.colspan : 1; - if((RS = +tag.rowspan)>1 || CS>1) merges.push({s:{r:R,c:C},e:{r:R + (RS||1) - 1, c:C + CS - 1}}); - var _t = tag.t || tag["data-t"] || ""; - /* TODO: generate stub cells */ - if(!m.length) { C += CS; continue; } - m = htmldecode(m); - if(range.s.r > R) range.s.r = R; if(range.e.r < R) range.e.r = R; - if(range.s.c > C) range.s.c = C; if(range.e.c < C) range.e.c = C; - if(!m.length) { C += CS; continue; } - var o = {t:'s', v:m}; - if(opts.raw || !m.trim().length || _t == 's'){} - else if(m === 'TRUE') o = {t:'b', v:true}; - else if(m === 'FALSE') o = {t:'b', v:false}; - else if(!isNaN(fuzzynum(m))) o = {t:'n', v:fuzzynum(m)}; - else if(!isNaN(fuzzydate(m).getDate())) { - o = ({t:'d', v:parseDate(m)}); - if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}); - o.z = opts.dateNF || SSF._table[14]; - } - if(opts.dense) { if(!ws[R]) ws[R] = []; ws[R][C] = o; } - else ws[encode_cell({r:R, c:C})] = o; - C += CS; +function html_to_sheet(str, _opts) { + var opts = _opts || {}; + if(DENSE != null && opts.dense == null) opts.dense = DENSE; + var ws = opts.dense ? ([]) : ({}); + str = str.replace(//g, ""); + var mtch = str.match(/
"); + var mtch2 = str.match(/<\/table/i); + var i = mtch.index, j = mtch2 && mtch2.index || str.length; + var rows = split_regex(str.slice(i, j), /(:?]*>)/i, ""); + var R = -1, C = 0, RS = 0, CS = 0; + var range = {s:{r:10000000, c:10000000},e:{r:0,c:0}}; + var merges = []; + for(i = 0; i < rows.length; ++i) { + var row = rows[i].trim(); + var hd = row.slice(0,3).toLowerCase(); + if(hd == "/i); + for(j = 0; j < cells.length; ++j) { + var cell = cells[j].trim(); + if(!cell.match(/")) > -1) m = m.slice(cc+1); + for(var midx = 0; midx < merges.length; ++midx) { + var _merge = merges[midx]; + if(_merge.s.c == C && _merge.s.r < R && R <= _merge.e.r) { C = _merge.e.c + 1; midx = -1; } } + var tag = parsexmltag(cell.slice(0, cell.indexOf(">"))); + CS = tag.colspan ? +tag.colspan : 1; + if((RS = +tag.rowspan)>1 || CS>1) merges.push({s:{r:R,c:C},e:{r:R + (RS||1) - 1, c:C + CS - 1}}); + var _t = tag.t || tag["data-t"] || ""; + /* TODO: generate stub cells */ + if(!m.length) { C += CS; continue; } + m = htmldecode(m); + if(range.s.r > R) range.s.r = R; if(range.e.r < R) range.e.r = R; + if(range.s.c > C) range.s.c = C; if(range.e.c < C) range.e.c = C; + if(!m.length) { C += CS; continue; } + var o = {t:'s', v:m}; + if(opts.raw || !m.trim().length || _t == 's'){} + else if(m === 'TRUE') o = {t:'b', v:true}; + else if(m === 'FALSE') o = {t:'b', v:false}; + else if(!isNaN(fuzzynum(m))) o = {t:'n', v:fuzzynum(m)}; + else if(!isNaN(fuzzydate(m).getDate())) { + o = ({t:'d', v:parseDate(m)}); + 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; } + else ws[encode_cell({r:R, c:C})] = o; + C += CS; } - ws['!ref'] = encode_range(range); - if(merges.length) ws["!merges"] = merges; - return ws; } - function html_to_book(str, opts) { - var mtch = str.match(/[\s\S]*?<\/table>/gi); - if(!mtch || mtch.length == 0) throw new Error("Invalid HTML: could not find
"); - if(mtch.length == 1) return sheet_to_workbook(html_to_sheet(mtch[0], opts), opts); - var wb = book_new(); - mtch.forEach(function(s, idx) { book_append_sheet(wb, html_to_sheet(s, opts), "Sheet" + (idx+1)); }); - return wb; - } - function make_html_row(ws, r, R, o) { - var M = (ws['!merges'] ||[]); - var oo = []; - for(var C = r.s.c; C <= r.e.c; ++C) { - var RS = 0, CS = 0; - for(var j = 0; j < M.length; ++j) { - if(M[j].s.r > R || M[j].s.c > C) continue; - if(M[j].e.r < R || M[j].e.c < C) continue; - if(M[j].s.r < R || M[j].s.c < C) { RS = -1; break; } - 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]; - /* TODO: html entities */ - var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; - var sp = ({}); - if(RS > 1) sp.rowspan = RS; - if(CS > 1) sp.colspan = CS; - if(o.editable) w = '' + w + ''; - else if(cell) { - sp["data-t"] = cell && cell.t || 'z'; - if(cell.v != null) sp["data-v"] = cell.v; - if(cell.z != null) sp["data-z"] = cell.z; - if(cell.l && (cell.l.Target || "#").charAt(0) != "#") w = '' + w + ''; - } - sp.id = (o.id || "sjs") + "-" + coord; - oo.push(writextag('td', w, sp)); + ws['!ref'] = encode_range(range); + if(merges.length) ws["!merges"] = merges; + return ws; +} +function make_html_row(ws, r, R, o) { + var M = (ws['!merges'] ||[]); + var oo = []; + for(var C = r.s.c; C <= r.e.c; ++C) { + var RS = 0, CS = 0; + for(var j = 0; j < M.length; ++j) { + if(M[j].s.r > R || M[j].s.c > C) continue; + if(M[j].e.r < R || M[j].e.c < C) continue; + if(M[j].s.r < R || M[j].s.c < C) { RS = -1; break; } + RS = M[j].e.r - M[j].s.r + 1; CS = M[j].e.c - M[j].s.c + 1; break; } - var preamble = ""; - return preamble + oo.join("") + ""; + if(RS < 0) continue; + var coord = encode_cell({r:R,c:C}); + var cell = o.dense ? (ws[R]||[])[C] : ws[coord]; + /* TODO: html entities */ + var w = (cell && cell.v != null) && (cell.h || escapehtml(cell.w || (format_cell(cell), cell.w) || "")) || ""; + var sp = ({}); + if(RS > 1) sp.rowspan = RS; + if(CS > 1) sp.colspan = CS; + if(o.editable) w = '' + w + ''; + else if(cell) { + sp["data-t"] = cell && cell.t || 'z'; + if(cell.v != null) sp["data-v"] = cell.v; + if(cell.z != null) sp["data-z"] = cell.z; + if(cell.l && (cell.l.Target || "#").charAt(0) != "#") w = '' + w + ''; + } + sp.id = (o.id || "sjs") + "-" + coord; + oo.push(writextag('td', w, sp)); } - function make_html_preamble(ws, R, o) { - var out = []; - return out.join("") + ''; - } - var _BEGIN = 'SheetJS Table Export'; - var _END = ''; - function sheet_to_html(ws, opts/*, wb:?Workbook*/) { - var o = opts || {}; - var header = o.header != null ? o.header : _BEGIN; - var footer = o.footer != null ? o.footer : _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); - return out.join(""); + var preamble = ""; + return preamble + oo.join("") + ""; +} - } - return { - to_workbook: html_to_book, - to_sheet: html_to_sheet, - _row: make_html_row, - BEGIN: _BEGIN, - END: _END, - _preamble: make_html_preamble, - from_sheet: sheet_to_html - }; -})(); +var HTML_BEGIN = 'SheetJS Table Export'; +var HTML_END = ''; + +function html_to_workbook(str, opts) { + var mtch = str.match(/[\s\S]*?<\/table>/gi); + if(!mtch || mtch.length == 0) throw new Error("Invalid HTML: could not find "); + if(mtch.length == 1) return sheet_to_workbook(html_to_sheet(mtch[0], opts), opts); + var wb = book_new(); + mtch.forEach(function(s, idx) { book_append_sheet(wb, html_to_sheet(s, opts), "Sheet" + (idx+1)); }); + return wb; +} + +function make_html_preamble(ws, R, o) { + var out = []; + return out.join("") + ''; +} + +function sheet_to_html(ws, opts/*, wb:?Workbook*/) { + var o = opts || {}; + var header = o.header != null ? o.header : HTML_BEGIN; + 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); + return out.join(""); +} function sheet_add_dom(ws, table, _opts) { var opts = _opts || {}; @@ -9401,7 +9429,7 @@ function sheet_add_dom(ws, table, _opts) { else if(!isNaN(fuzzydate(v).getDate())) { o = ({t:'d', v:parseDate(v)}); if(!opts.cellDates) o = ({t:'n', v:datenum(o.v)}); - o.z = opts.dateNF || SSF._table[14]; + o.z = opts.dateNF || table_fmt[14]; } } if(o.z === undefined && z != null) o.z = z; @@ -10421,7 +10449,7 @@ function safe_parse_sheet(zip, path, relsPath, sheet, idx, sheetRels, sheets, st function strip_front_slash(x) { return x.charAt(0) == '/' ? x.slice(1) : x; } function parse_zip(zip, opts) { - make_ssf(SSF); + make_ssf(); opts = opts || {}; fix_read_opts(opts); @@ -10584,7 +10612,7 @@ function parse_zip(zip, opts) { Strings: strs, Styles: styles, Themes: themes, - SSF: SSF.get_table() + SSF: dup(table_fmt) }); if(opts && opts.bookFiles) { if(zip.files) { @@ -10653,6 +10681,7 @@ if(einfo[0] == 0x02 && typeof decrypt_std76 !== 'undefined') return decrypt_std7 function write_zip(wb, opts) { if(opts.bookType == "ods") return write_ods(wb, opts); + if(opts.bookType == "numbers") return write_numbers_iwa(wb, opts); if(opts.bookType == "xlsb") return write_zip_xlsxb(wb, opts); return write_zip_xlsx(wb, opts); } @@ -10664,10 +10693,10 @@ function write_zip(wb, opts) { function write_zip_xlsxb(wb, opts) { _shapeid = 1024; if(wb && !wb.SSF) { - wb.SSF = SSF.get_table(); + wb.SSF = dup(table_fmt); } if(wb && wb.SSF) { - make_ssf(SSF); SSF.load_table(wb.SSF); + make_ssf(); SSF_load_table(wb.SSF); // $FlowIgnore opts.revssf = evert_num(wb.SSF); opts.revssf[wb.SSF[65535]] = 0; opts.ssf = wb.SSF; @@ -10798,10 +10827,10 @@ f = "docProps/app.xml"; function write_zip_xlsx(wb, opts) { _shapeid = 1024; if(wb && !wb.SSF) { - wb.SSF = SSF.get_table(); + wb.SSF = dup(table_fmt); } if(wb && wb.SSF) { - make_ssf(SSF); SSF.load_table(wb.SSF); + make_ssf(); SSF_load_table(wb.SSF); // $FlowIgnore opts.revssf = evert_num(wb.SSF); opts.revssf[wb.SSF[65535]] = 0; opts.ssf = wb.SSF; @@ -10954,7 +10983,7 @@ function firstbyte(f,o) { var x = ""; switch((o||{}).type || "base64") { case 'buffer': return [f[0], f[1], f[2], f[3], f[4], f[5], f[6], f[7]]; - case 'base64': x = Base64.decode(f.slice(0,12)); break; + case 'base64': x = Base64_decode(f.slice(0,12)); break; case 'binary': x = f; break; case 'array': return [f[0], f[1], f[2], f[3], f[4], f[5], f[6], f[7]]; default: throw new Error("Unrecognized type " + (o && o.type || "undefined")); @@ -10988,7 +11017,7 @@ function read_plaintext(data, o) { function read_plaintext_raw(data, o) { var str = "", bytes = firstbyte(data, o); switch(o.type) { - case 'base64': str = Base64.decode(data); break; + case 'base64': str = Base64_decode(data); break; case 'binary': str = data; break; case 'buffer': str = data.toString('binary'); break; case 'array': str = cc2str(data); break; @@ -11001,7 +11030,7 @@ function read_plaintext_raw(data, o) { function read_utf16(data, o) { var d = data; - if(o.type == 'base64') d = Base64.decode(d); + if(o.type == 'base64') d = Base64_decode(d); d = $cptable.utils.decode(1200, d.slice(2), 'str'); o.type = "binary"; return read_plaintext(d, o); @@ -11126,7 +11155,7 @@ function write_string_type(out, opts, bom) { if(!bom) bom = ""; var o = bom + out; switch(opts.type) { - case "base64": return Base64.encode(utf8write(o)); + case "base64": return Base64_encode(utf8write(o)); case "binary": return utf8write(o); case "string": return out; case "file": return write_dl(opts.file, o, 'utf8'); @@ -11141,7 +11170,7 @@ function write_string_type(out, opts, bom) { function write_stxt_type(out, opts) { switch(opts.type) { - case "base64": return Base64.encode(out); + case "base64": return Base64_encode(out); case "binary": return out; case "string": return out; /* override in sheet_to_txt */ case "file": return write_dl(opts.file, out, 'binary'); @@ -11162,7 +11191,7 @@ function write_binary_type(out, opts) { var bstr = ""; // $FlowIgnore for(var i = 0; i < out.length; ++i) bstr += String.fromCharCode(out[i]); - return opts.type == 'base64' ? Base64.encode(bstr) : opts.type == 'string' ? utf8read(bstr) : bstr; + return opts.type == 'base64' ? Base64_encode(bstr) : opts.type == 'string' ? utf8read(bstr) : bstr; case "file": return write_dl(opts.file, out); case "buffer": return out; default: throw new Error("Unrecognized type " + opts.type); @@ -11196,7 +11225,7 @@ function writeSync(wb, opts) { case 'slk': case 'sylk': return write_string_type(SYLK.from_sheet(wb.Sheets[wb.SheetNames[idx]], o), o); case 'htm': - case 'html': return write_string_type(HTML_.from_sheet(wb.Sheets[wb.SheetNames[idx]], o), o); + case 'html': return write_string_type(sheet_to_html(wb.Sheets[wb.SheetNames[idx]], o), o); case 'txt': return write_stxt_type(sheet_to_txt(wb.Sheets[wb.SheetNames[idx]], o), o); case 'csv': return write_string_type(sheet_to_csv(wb.Sheets[wb.SheetNames[idx]], o), o, "\ufeff"); case 'dif': return write_string_type(DIF.from_sheet(wb.Sheets[wb.SheetNames[idx]], o), o); @@ -11218,6 +11247,7 @@ function writeSync(wb, opts) { case 'xlsm': case 'xlam': case 'xlsb': + case 'numbers': case 'ods': return write_zip_type(wb, o); default: throw new Error ("Unrecognized bookType |" + o.bookType + "|"); } @@ -11290,7 +11320,7 @@ function make_json_row(sheet, r, R, cols, header, hdr, dense, o) { else if(raw && v === null) row[hdr[C]] = null; else continue; } else { - row[hdr[C]] = raw || (o.rawNumbers && val.t == "n") ? v : format_cell(val,v,o); + row[hdr[C]] = raw && (val.t !== "n" || (val.t === "n" && o.rawNumbers !== false)) ? v : format_cell(val,v,o); } if(v != null) isempty = false; } @@ -11486,7 +11516,7 @@ function sheet_add_json(_ws, js, opts) { else if(v instanceof Date) { t = 'd'; if(!o.cellDates) { t = 'n'; v = datenum(v); } - z = (o.dateNF || SSF._table[14]); + z = (o.dateNF || table_fmt[14]); } else if(v === null && o.nullError) { t = 'e'; v = 0; } if(!cell) ws[ref] = cell = ({t:t, v:v}); @@ -11543,14 +11573,22 @@ function book_new() { } /* add a worksheet to the end of a given workbook */ -function book_append_sheet(wb, ws, name) { - if(!name) for(var i = 1; i <= 0xFFFF; ++i, name = undefined) if(wb.SheetNames.indexOf(name = "Sheet" + i) == -1) break; +function book_append_sheet(wb, ws, name, roll) { + var i = 1; + if(!name) for(; i <= 0xFFFF; ++i, name = undefined) if(wb.SheetNames.indexOf(name = "Sheet" + i) == -1) break; if(!name || wb.SheetNames.length >= 0xFFFF) throw new Error("Too many worksheets"); + if(roll && wb.SheetNames.indexOf(name) >= 0) { + var m = name.match(/(^.*?)(\d+)$/); + i = m && +m[2] || 0; + var root = m && m[1] || name; + for(++i; i <= 0xFFFF; ++i) if(wb.SheetNames.indexOf(name = root + i) == -1) break; + } check_ws_name(name); if(wb.SheetNames.indexOf(name) >= 0) throw new Error("Worksheet with name |" + name + "| already exists!"); wb.SheetNames.push(name); wb.Sheets[name] = ws; + return name; } /* set sheet visibility (visible/hidden/very hidden) */ @@ -11632,7 +11670,7 @@ var utils = { sheet_to_csv: sheet_to_csv, sheet_to_txt: sheet_to_txt, sheet_to_json: sheet_to_json, - sheet_to_html: HTML_.from_sheet, + sheet_to_html: sheet_to_html, sheet_to_formulae: sheet_to_formulae, sheet_to_row_object_array: sheet_to_json, sheet_get_cell: ws_get_cell_stub, diff --git a/xlsx.mjs b/xlsx.mjs index 0c43f50..ea75371 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.4'; +XLSX.version = '0.18.5'; var current_codepage = 1200, current_ansi = 1252; var VALID_ANSI = [ 874, 932, 936, 949, 950, 1250, 1251, 1252, 1253, 1254, 1255, 1256, 1257, 1258, 10000 ]; @@ -21998,6 +21998,19 @@ function u8_to_dataview(array) { function u8str(u8) { return typeof TextDecoder != "undefined" ? new TextDecoder().decode(u8) : utf8read(a2s(u8)); } +function stru8(str) { + return typeof TextEncoder != "undefined" ? new TextEncoder().encode(str) : s2a(utf8write(str)); +} +function u8contains(body, search) { + outer: + for (var L = 0; 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; @@ -22022,6 +22035,15 @@ function readDecimal128LE(buf, offset) { mantissa = mantissa * 256 + buf[j]; return (buf[offset + 15] & 128 ? -mantissa : mantissa) * Math.pow(10, exp - 6176); } +function writeDecimal128LE(buf, offset, value) { + var exp = Math.floor(value == 0 ? 0 : Math.LOG10E * Math.log(Math.abs(value))) + 6176 - 20; + var mantissa = value / Math.pow(10, exp - 6176); + buf[offset + 15] |= exp >> 7; + buf[offset + 14] |= (exp & 127) << 1; + for (var i = 0; mantissa >= 1; ++i, mantissa /= 256) + buf[offset + i] = mantissa & 255; + buf[offset + 15] |= value >= 0 ? 0 : 128; +} function parse_varint49(buf, ptr) { var l = ptr ? ptr[0] : 0; var usz = buf[l] & 127; @@ -22147,7 +22169,7 @@ function parse_shallow(buf) { default: throw new Error("PB Type ".concat(type, " for Field ").concat(num, " at offset ").concat(off)); } - var v = { offset: off, data: res, type: type }; + var v = { data: res, type: type }; if (out[num] == null) out[num] = [v]; else @@ -22159,6 +22181,8 @@ function write_shallow(proto) { var out = []; proto.forEach(function(field, idx) { field.forEach(function(item) { + if (!item.data) + return; out.push(write_varint49(idx * 8 + item.type)); if (item.type == 2) out.push(write_varint49(item.data.length)); @@ -22168,21 +22192,12 @@ function write_shallow(proto) { return u8concat(out); } function mappa(data, cb) { - if (!data) - return []; - return data.map(function(d) { - var _a; - try { - return cb(d.data); - } catch (e) { - var m = (_a = e.message) == null ? void 0 : _a.match(/at offset (\d+)/); - if (m) - e.message = e.message.replace(/at offset (\d+)/, "at offset " + (+m[1] + d.offset)); - throw e; - } - }); + return (data == null ? void 0 : data.map(function(d) { + return cb(d.data); + })) || []; } function parse_iwa_file(buf) { + var _a; var out = [], ptr = [0]; while (ptr[0] < buf.length) { var len = parse_varint49(buf, ptr); @@ -22201,10 +22216,35 @@ function parse_iwa_file(buf) { }); ptr[0] += fl; }); + if ((_a = ai[3]) == null ? void 0 : _a[0]) + res.merge = varint_to_i32(ai[3][0].data) >>> 0 > 0; out.push(res); } return out; } +function write_iwa_file(ias) { + var bufs = []; + ias.forEach(function(ia) { + var ai = []; + ai[1] = [{ data: write_varint49(ia.id), type: 0 }]; + ai[2] = []; + if (ia.merge != null) + ai[3] = [{ data: write_varint49(+!!ia.merge), type: 0 }]; + var midata = []; + ia.messages.forEach(function(mi) { + midata.push(mi.data); + mi.meta[3] = [{ type: 0, data: write_varint49(mi.data.length) }]; + ai[2].push({ data: write_shallow(mi.meta), type: 2 }); + }); + var aipayload = write_shallow(ai); + bufs.push(write_varint49(aipayload.length)); + bufs.push(aipayload); + midata.forEach(function(mid) { + return bufs.push(mid); + }); + }); + return u8concat(bufs); +} function parse_snappy_chunk(type, buf) { if (type != 0) throw new Error("Unexpected Snappy chunk type ".concat(type)); @@ -22359,7 +22399,7 @@ function parse_old_storage(buf, sst, rsst, v) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -22381,7 +22421,7 @@ function parse_old_storage(buf, sst, rsst, v) { } return ret; } -function parse_storage(buf, sst, rsst) { +function parse_new_storage(buf, sst, rsst) { var dv = u8_to_dataview(buf); var flags = dv.getUint32(8, true); var data_offset = 12; @@ -22423,7 +22463,7 @@ function parse_storage(buf, sst, rsst) { ret = { t: "b", v: ieee > 0 }; break; case 7: - ret = { t: "n", v: ieee }; + ret = { t: "n", v: ieee / 86400 }; break; case 8: ret = { t: "e", v: 0 }; @@ -22444,6 +22484,66 @@ function parse_storage(buf, sst, rsst) { } return ret; } +function write_new_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 5; + switch (cell.t) { + case "n": + out[1] = 2; + writeDecimal128LE(out, l, cell.v); + flags |= 1; + l += 16; + break; + case "b": + out[1] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 2; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[1] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 8; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(8, flags, true); + return out.slice(0, l); +} +function write_old_storage(cell, sst) { + var out = new Uint8Array(32), dv = u8_to_dataview(out), l = 12, flags = 0; + out[0] = 3; + switch (cell.t) { + case "n": + out[2] = 2; + dv.setFloat64(l, cell.v, true); + flags |= 32; + l += 8; + break; + case "b": + out[2] = 6; + dv.setFloat64(l, cell.v ? 1 : 0, true); + flags |= 32; + l += 8; + break; + case "s": + if (sst.indexOf(cell.v) == -1) + throw new Error("Value ".concat(cell.v, " missing from SST!")); + out[2] = 3; + dv.setUint32(l, sst.indexOf(cell.v), true); + flags |= 16; + l += 4; + break; + default: + throw "unsupported cell type " + cell.t; + } + dv.setUint32(4, flags, true); + return out.slice(0, l); +} function parse_cell_storage(buf, sst, rsst) { switch (buf[0]) { case 0: @@ -22452,7 +22552,7 @@ function parse_cell_storage(buf, sst, rsst) { case 3: return parse_old_storage(buf, sst, rsst, buf[0]); case 5: - return parse_storage(buf, sst, rsst); + return parse_new_storage(buf, sst, rsst); default: throw new Error("Unsupported payload version ".concat(buf[0])); } @@ -22461,6 +22561,11 @@ function parse_TSP_Reference(buf) { var pb = parse_shallow(buf); return parse_varint49(pb[1][0].data); } +function write_TSP_Reference(idx) { + var out = []; + out[1] = [{ type: 0, data: write_varint49(idx) }]; + return write_shallow(out); +} function parse_TST_TableDataList(M, root) { var pb = parse_shallow(root.data); var type = varint_to_i32(pb[1][0].data); @@ -22519,7 +22624,8 @@ function parse_TST_TileRowInfo(u8, type) { var cells = []; for (C = 0; C < offsets.length - 1; ++C) cells[offsets[C][0]] = used_storage.subarray(offsets[C][1] * width, offsets[C + 1][1] * width); - cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); + if (offsets.length >= 1) + cells[offsets[offsets.length - 1][0]] = used_storage.subarray(offsets[offsets.length - 1][1] * width); return { R: R, cells: cells }; } function parse_TST_Tile(M, root) { @@ -22625,7 +22731,7 @@ function parse_TN_DocumentArchive(M, root) { } function parse_numbers_iwa(cfb) { var _a, _b, _c, _d; - var out = {}, indices = []; + var M = {}, indices = []; cfb.FullPaths.forEach(function(p) { if (p.match(/\.iwpv2/)) throw new Error("Unsupported password protection"); @@ -22646,16 +22752,16 @@ function parse_numbers_iwa(cfb) { return console.log("## " + (e.message || e)); } packets.forEach(function(packet) { - out[packet.id] = packet.messages; + M[packet.id] = packet.messages; indices.push(packet.id); }); }); if (!indices.length) throw new Error("File has no messages"); - var docroot = ((_d = (_c = (_b = (_a = out == null ? void 0 : out[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(out[1][0].meta[1][0].data) == 1 && out[1][0]; + var docroot = ((_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) == 1 && M[1][0]; if (!docroot) indices.forEach(function(idx) { - out[idx].forEach(function(iwam) { + M[idx].forEach(function(iwam) { var mtype = varint_to_i32(iwam.meta[1][0].data) >>> 0; if (mtype == 1) { if (!docroot) @@ -22667,7 +22773,325 @@ function parse_numbers_iwa(cfb) { }); if (!docroot) throw new Error("Cannot find Document root"); - return parse_TN_DocumentArchive(out, docroot); + return parse_TN_DocumentArchive(M, docroot); +} +function write_tile_row(tri, data, SST) { + var _a, _b, _c, _d; + 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 wide_offsets = ((_d = (_c = tri[8]) == null ? void 0 : _c[0]) == null ? void 0 : _d.data) && varint_to_i32(tri[8][0].data) > 0 || false; + if (wide_offsets) + throw "Math only works with normal offsets"; + var cnt = 0; + var dv = u8_to_dataview(tri[7][0].data), last_offset = 0, cell_storage = []; + var _dv = u8_to_dataview(tri[4][0].data), _last_offset = 0, _cell_storage = []; + for (var C = 0; C < data.length; ++C) { + if (data[C] == null) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535); + continue; + } + dv.setUint16(C * 2, last_offset, true); + _dv.setUint16(C * 2, _last_offset, true); + var celload, _celload; + switch (typeof data[C]) { + case "string": + celload = write_new_storage({ t: "s", v: data[C] }, SST); + _celload = write_old_storage({ t: "s", v: data[C] }, SST); + break; + case "number": + celload = write_new_storage({ t: "n", v: data[C] }, SST); + _celload = write_old_storage({ t: "n", v: data[C] }, SST); + break; + case "boolean": + celload = write_new_storage({ t: "b", v: data[C] }, SST); + _celload = write_old_storage({ t: "b", v: data[C] }, SST); + break; + default: + throw new Error("Unsupported value " + data[C]); + } + cell_storage.push(celload); + last_offset += celload.length; + _cell_storage.push(_celload); + _last_offset += _celload.length; + ++cnt; + } + tri[2][0].data = write_varint49(cnt); + for (; C < tri[7][0].data.length / 2; ++C) { + dv.setUint16(C * 2, 65535, true); + _dv.setUint16(C * 2, 65535, true); + } + tri[6][0].data = u8concat(cell_storage); + tri[3][0].data = u8concat(_cell_storage); + return cnt; +} +function write_numbers_iwa(wb, opts) { + if (!opts || !opts.numbers) + throw new Error("Must pass a `numbers` option -- check the README"); + var ws = wb.Sheets[wb.SheetNames[0]]; + if (wb.SheetNames.length > 1) + console.error("The Numbers writer currently writes only the first table"); + var range = decode_range(ws["!ref"]); + range.s.r = range.s.c = 0; + var trunc = false; + if (range.e.c > 9) { + trunc = true; + range.e.c = 9; + } + if (range.e.r > 49) { + trunc = true; + range.e.r = 49; + } + if (trunc) + console.error("The Numbers writer is currently limited to ".concat(encode_range(range))); + var data = sheet_to_json(ws, { range: range, header: 1 }); + var SST = ["~Sh33tJ5~"]; + data.forEach(function(row) { + return row.forEach(function(cell) { + if (typeof cell == "string") + SST.push(cell); + }); + }); + var dependents = {}; + var indices = []; + var cfb = CFB.read(opts.numbers, { type: "base64" }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (fi.type != 2) + return; + if (!fi.name.match(/\.iwa/)) + return; + var old_content = fi.content; + var raw1 = decompress_iwa_file(old_content); + var x2 = parse_iwa_file(raw1); + x2.forEach(function(packet2) { + indices.push(packet2.id); + dependents[packet2.id] = { deps: [], location: fp, type: varint_to_i32(packet2.messages[0].meta[1][0].data) }; + }); + }); + indices.sort(function(x2, y2) { + return x2 - y2; + }); + var indices_varint = indices.filter(function(x2) { + return x2 > 1; + }).map(function(x2) { + return [x2, write_varint49(x2)]; + }); + cfb.FileIndex.map(function(fi, idx) { + return [fi, cfb.FullPaths[idx]]; + }).forEach(function(row) { + var fi = row[0], fp = row[1]; + if (!fi.name.match(/\.iwa/)) + return; + var x2 = parse_iwa_file(decompress_iwa_file(fi.content)); + x2.forEach(function(ia) { + ia.messages.forEach(function(m) { + 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); + } + }); + }); + }); + }); + function get_unique_msgid() { + for (var i = 927262; i < 2e6; ++i) + if (!dependents[i]) + return i; + throw new Error("Too many messages"); + } + var entry = CFB.find(cfb, dependents[1].location); + var x = parse_iwa_file(decompress_iwa_file(entry.content)); + var docroot; + for (var xi = 0; xi < x.length; ++xi) { + var packet = x[xi]; + if (packet.id == 1) + docroot = packet; + } + var sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[1][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + sheetrootref = parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[2][0].data); + entry = CFB.find(cfb, dependents[sheetrootref].location); + x = parse_iwa_file(decompress_iwa_file(entry.content)); + for (xi = 0; xi < x.length; ++xi) { + packet = x[xi]; + if (packet.id == sheetrootref) + docroot = packet; + } + var pb = parse_shallow(docroot.messages[0].data); + { + pb[6][0].data = write_varint49(range.e.r + 1); + pb[7][0].data = write_varint49(range.e.c + 1); + var cruidsref = parse_TSP_Reference(pb[46][0].data); + var oldbucket = CFB.find(cfb, dependents[cruidsref].location); + var _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + for (var j = 0; j < _x.length; ++j) { + if (_x[j].id == cruidsref) + break; + } + if (_x[j].id != cruidsref) + throw "Bad ColumnRowUIDMapArchive"; + var cruids = parse_shallow(_x[j].messages[0].data); + cruids[1] = []; + cruids[2] = [], cruids[3] = []; + for (var C = 0; C <= range.e.c; ++C) { + var uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(C + 420690) }]; + cruids[1].push({ type: 2, data: write_shallow(uuid) }); + cruids[2].push({ type: 0, data: write_varint49(C) }); + cruids[3].push({ type: 0, data: write_varint49(C) }); + } + cruids[4] = []; + cruids[5] = [], cruids[6] = []; + for (var R = 0; R <= range.e.r; ++R) { + uuid = []; + uuid[1] = uuid[2] = [{ type: 0, data: write_varint49(R + 726270) }]; + cruids[4].push({ type: 2, data: write_shallow(uuid) }); + cruids[5].push({ type: 0, data: write_varint49(R) }); + cruids[6].push({ type: 0, data: write_varint49(R) }); + } + _x[j].messages[0].data = write_shallow(cruids); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + delete pb[46]; + var store = parse_shallow(pb[4][0].data); + { + store[7][0].data = write_varint49(range.e.r + 1); + var row_headers = parse_shallow(store[1][0].data); + var row_header_ref = parse_TSP_Reference(row_headers[2][0].data); + oldbucket = CFB.find(cfb, dependents[row_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != row_header_ref) + throw "Bad HeaderStorageBucket"; + var base_bucket = parse_shallow(_x[0].messages[0].data); + for (R = 0; R < data.length; ++R) { + var _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(R); + _bucket[4][0].data = write_varint49(data[R].length); + base_bucket[2][R] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var col_header_ref = parse_TSP_Reference(store[2][0].data); + oldbucket = CFB.find(cfb, dependents[col_header_ref].location); + _x = parse_iwa_file(decompress_iwa_file(oldbucket.content)); + { + if (_x[0].id != col_header_ref) + throw "Bad HeaderStorageBucket"; + base_bucket = parse_shallow(_x[0].messages[0].data); + for (C = 0; C <= range.e.c; ++C) { + _bucket = parse_shallow(base_bucket[2][0].data); + _bucket[1][0].data = write_varint49(C); + _bucket[4][0].data = write_varint49(range.e.r + 1); + base_bucket[2][C] = { type: base_bucket[2][0].type, data: write_shallow(_bucket) }; + } + _x[0].messages[0].data = write_shallow(base_bucket); + } + oldbucket.content = compress_iwa_file(write_iwa_file(_x)); + oldbucket.size = oldbucket.content.length; + var sstref = parse_TSP_Reference(store[4][0].data); + (function() { + var sentry = CFB.find(cfb, dependents[sstref].location); + var sx = parse_iwa_file(decompress_iwa_file(sentry.content)); + var sstroot; + for (var sxi = 0; sxi < sx.length; ++sxi) { + var packet2 = sx[sxi]; + if (packet2.id == sstref) + sstroot = packet2; + } + var sstdata = parse_shallow(sstroot.messages[0].data); + { + sstdata[3] = []; + var newsst = []; + SST.forEach(function(str, i) { + newsst[1] = [{ type: 0, data: write_varint49(i) }]; + newsst[2] = [{ type: 0, data: write_varint49(1) }]; + newsst[3] = [{ type: 2, data: stru8(str) }]; + sstdata[3].push({ type: 2, data: write_shallow(newsst) }); + }); + } + sstroot.messages[0].data = write_shallow(sstdata); + var sy = write_iwa_file(sx); + var raw32 = compress_iwa_file(sy); + sentry.content = raw32; + sentry.size = sentry.content.length; + })(); + var tile = parse_shallow(store[3][0].data); + { + var t = tile[1][0]; + delete tile[2]; + var tl = parse_shallow(t.data); + { + var tileref = parse_TSP_Reference(tl[2][0].data); + (function() { + var tentry = CFB.find(cfb, dependents[tileref].location); + var tx = parse_iwa_file(decompress_iwa_file(tentry.content)); + var tileroot; + for (var sxi = 0; sxi < tx.length; ++sxi) { + var packet2 = tx[sxi]; + if (packet2.id == tileref) + tileroot = packet2; + } + var tiledata = parse_shallow(tileroot.messages[0].data); + { + delete tiledata[6]; + delete tile[7]; + var rowload = new Uint8Array(tiledata[5][0].data); + tiledata[5] = []; + var cnt = 0; + for (var R2 = 0; R2 <= range.e.r; ++R2) { + var tilerow = parse_shallow(rowload); + cnt += write_tile_row(tilerow, data[R2], SST); + tilerow[1][0].data = write_varint49(R2); + tiledata[5].push({ data: write_shallow(tilerow), type: 2 }); + } + tiledata[1] = [{ type: 0, data: write_varint49(range.e.c + 1) }]; + tiledata[2] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + tiledata[3] = [{ type: 0, data: write_varint49(cnt) }]; + tiledata[4] = [{ type: 0, data: write_varint49(range.e.r + 1) }]; + } + tileroot.messages[0].data = write_shallow(tiledata); + var ty = write_iwa_file(tx); + var raw32 = compress_iwa_file(ty); + tentry.content = raw32; + tentry.size = tentry.content.length; + })(); + } + t.data = write_shallow(tl); + } + store[3][0].data = write_shallow(tile); + } + pb[4][0].data = write_shallow(store); + } + docroot.messages[0].data = write_shallow(pb); + var y = write_iwa_file(x); + var raw3 = compress_iwa_file(y); + entry.content = raw3; + entry.size = entry.content.length; + return cfb; } function fix_opts_func(defaults/*:Array >*/)/*:{(o:any):void}*/ { return function fix_opts(opts) { @@ -23008,6 +23432,7 @@ function parse_xlsxcfb(cfb, _opts/*:?ParseOpts*/)/*:Workbook*/ { function write_zip(wb/*:Workbook*/, opts/*:WriteOpts*/)/*:ZIP*/ { if(opts.bookType == "ods") return write_ods(wb, opts); + if(opts.bookType == "numbers") return write_numbers_iwa(wb, opts); if(opts.bookType == "xlsb") return write_zip_xlsxb(wb, opts); return write_zip_xlsx(wb, opts); } @@ -23576,6 +24001,7 @@ function writeSync(wb/*:Workbook*/, opts/*:?WriteOpts*/) { case 'xlsm': case 'xlam': case 'xlsb': + case 'numbers': case 'ods': return write_zip_type(wb, o); default: throw new Error ("Unrecognized bookType |" + o.bookType + "|"); }