diff --git a/bits/10_ssf.js b/bits/10_ssf.js
index ee7c67c..32f8f57 100644
--- a/bits/10_ssf.js
+++ b/bits/10_ssf.js
@@ -6,7 +6,7 @@ var _strrev = function(x) { return String(x).split("").reverse().join("");};
function fill(c,l) { return new Array(l+1).join(c); }
function pad(v,d,c){var t=String(v);return t.length>=d?t:(fill(c||0,d-t.length)+t);}
function rpad(v,d,c){var t=String(v);return t.length>=d?t:(t+fill(c||0,d-t.length));}
-SSF.version = '0.5.9';
+SSF.version = '0.6.1';
/* Options */
var opts_fmt = {};
function fixopts(o){for(var y in opts_fmt) if(o[y]===undefined) o[y]=opts_fmt[y];}
@@ -121,6 +121,10 @@ var parse_date_code = function parse_date_code(v,opts) {
var dout=[], out={D:date, T:time, u:86400*(v-date)-time}; fixopts(opts = (opts||{}));
if(opts.date1904) date += 1462;
if(date > 2958465) return null;
+ if(out.u > .999) {
+ out.u = 0;
+ if(++time == 86400) { time = 0; ++date; }
+ }
if(date === 60) {dout = [1900,2,29]; dow=3;}
else if(date === 0) {dout = [1900,1,0]; dow=6;}
else {
@@ -143,7 +147,7 @@ SSF.parse_date_code = parse_date_code;
/*jshint -W086 */
var write_date = function(type, fmt, val) {
if(val < 0) return "";
- var o;
+ var o, ss;
switch(type) {
case 'y': switch(fmt) { /* year */
case 'y': case 'yy': return pad(val.y % 100,2);
@@ -178,11 +182,11 @@ var write_date = function(type, fmt, val) {
default: throw 'bad minute format: ' + fmt;
}
case 's': switch(fmt) { /* seconds */
- case 's': return Math.round(val.S+val.u);
- case 'ss': return pad(Math.round(val.S+val.u), 2);
- case 'ss.0': o = pad(Math.round(10*(val.S+val.u)),3); return o.substr(0,2)+"." + o.substr(2);
- case 'ss.00': o = pad(Math.round(100*(val.S+val.u)),4); return o.substr(0,2)+"." + o.substr(2);
- case 'ss.000': o = pad(Math.round(1000*(val.S+val.u)),5); return o.substr(0,2)+"." + o.substr(2);
+ case 's': ss=Math.round(val.S+val.u); return ss >= 60 ? 0 : ss;
+ case 'ss': ss=Math.round(val.S+val.u); if(ss>=60) ss=0; return pad(ss,2);
+ case 'ss.0': ss=Math.round(10*(val.S+val.u)); if(ss>=600) ss = 0; o = pad(ss,3); return o.substr(0,2)+"." + o.substr(2);
+ case 'ss.00': ss=Math.round(100*(val.S+val.u)); if(ss>=6000) ss = 0; o = pad(ss,4); return o.substr(0,2)+"." + o.substr(2);
+ case 'ss.000': ss=Math.round(1000*(val.S+val.u)); if(ss>=60000) ss = 0; o = pad(ss,5); return o.substr(0,2)+"." + o.substr(2);
default: throw 'bad second format: ' + fmt;
}
case 'Z': switch(fmt) {
@@ -206,6 +210,8 @@ var write_num = function(type, fmt, val) {
var mul = 0, o;
fmt = fmt.replace(/%/g,function(x) { mul++; return ""; });
if(mul !== 0) return write_num(type, fmt, val * Math.pow(10,2*mul)) + fill("%",mul);
+ fmt = fmt.replace(/(\.0+)(,+)$/g,function($$,$1,$2) { mul=$2.length; return $1; });
+ if(mul !== 0) return write_num(type, fmt, val / Math.pow(10,3*mul));
if(fmt.indexOf("E") > -1) {
var idx = fmt.indexOf("E") - fmt.indexOf(".") - 1;
if(fmt.match(/^#+0.0E\+0$/)) {
@@ -239,11 +245,12 @@ var write_num = function(type, fmt, val) {
if(fmt.match(/^#+0+$/)) fmt = fmt.replace(/#/g,"");
if(fmt.match(/^00+$/)) return (val<0?"-":"")+pad(Math.round(aval),fmt.length);
if(fmt.match(/^[#?]+$/)) return String(Math.round(val)).replace(/^0$/,"");
- if((r = fmt.match(/^#*0+\.(0+)/))) {
+ if((r = fmt.match(/^#*0*\.(0+)/))) {
o = Math.round(val * Math.pow(10,r[1].length));
- return String(o/Math.pow(10,r[1].length)).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.([0-9]*)$/,function($$, $1) { return "." + $1 + fill("0", r[1].length-$1.length); });
+ rr = String(o/Math.pow(10,r[1].length)).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.([0-9]*)$/,function($$, $1) { return "." + $1 + fill("0", r[1].length-$1.length); });
+ return fmt.match(/0\./) ? rr : rr.replace(/^0\./,".");
}
- fmt = fmt.replace(/^#+0/, "0");
+ fmt = fmt.replace(/^#+([0.])/, "$1");
if((r = fmt.match(/^(0*)\.(#*)$/))) {
o = Math.round(aval*Math.pow(10,r[2].length));
return sign + String(o / Math.pow(10,r[2].length)).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^([-]?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".");
@@ -253,15 +260,23 @@ var write_num = function(type, fmt, val) {
rr = Math.round((val-Math.floor(val))*Math.pow(10,r[1].length));
return val < 0 ? "-" + write_num(type, fmt, -val) : commaify(String(Math.floor(val))) + "." + pad(rr,r[1].length,0);
}
+ if((r = fmt.match(/^#,#*,#0/))) return write_num(type,fmt.replace(/^#,#*,/,""),val);
+ if((r = fmt.match(/^([?]+)([ ]?)\/([ ]?)([?]+)/))) {
+ rr = Math.min(Math.max(r[1].length, r[4].length),7);
+ ff = frac(aval, Math.pow(10,rr)-1, false);
+ return sign + (ff[0]||(ff[1] ? "" : "0")) + (ff[1] ? pad(ff[1],rr," ") + r[2] + "/" + r[3] + rpad(ff[2],rr," "): fill(" ", 2*rr+1 + r[2].length + r[3].length));
+ }
if((r = fmt.match(/^# ([?]+)([ ]?)\/([ ]?)([?]+)/))) {
rr = Math.min(Math.max(r[1].length, r[4].length),7);
ff = frac(aval, Math.pow(10,rr)-1, true);
return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad(ff[1],rr," ") + r[2] + "/" + r[3] + rpad(ff[2],rr," "): fill(" ", 2*rr+1 + r[2].length + r[3].length));
}
+ if((r = fmt.match(/^00,000\.([#0]*0)$/))) {
+ rr = val == Math.floor(val) ? 0 : Math.round((val-Math.floor(val))*Math.pow(10,r[1].length));
+ return val < 0 ? "-" + write_num(type, fmt, -val) : commaify(String(Math.floor(val))).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$) { return "00," + ($$.length < 3 ? pad(0,3-$$.length) : "") + $$; }) + "." + pad(rr,r[1].length,0);
+ }
switch(fmt) {
case "0": case "#0": return Math.round(val);
- case "#.##": o = Math.round(val*100);
- return String(o/100).replace(/^([^\.]+)$/,"$1.").replace(/^0\.$/,".");
case "#,###": var x = commaify(String(Math.round(aval))); return x !== "0" ? sign + x : "";
default:
}
@@ -306,7 +321,7 @@ function eval_fmt(fmt, v, opts, flen) {
case 'M': case 'D': case 'Y': case 'H': case 'S': case 'E':
c = c.toLowerCase();
/* falls through */
- case 'm': case 'd': case 'y': case 'h': case 's': case 'e':
+ case 'm': case 'd': case 'y': case 'h': case 's': case 'e': case 'g':
if(v < 0) return "";
if(!dt) dt = parse_date_code(v, opts);
if(!dt) return "";
@@ -341,7 +356,7 @@ function eval_fmt(fmt, v, opts, flen) {
case '?':
o = fmt[i]; while(fmt[++i] === c) o+=c;
q={t:c, v:o}; out.push(q); lst = c; break;
- case '*': ++i; if(fmt[i] == ' ') ++i; break; // **
+ case '*': ++i; if(fmt[i] == ' ' || fmt[i] == '*') ++i; break; // **
case '(': case ')': out.push({t:(flen===1?'t':c),v:c}); ++i; break;
case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9':
o = fmt[i]; while("0123456789".indexOf(fmt[++i]) > -1) o+=fmt[i];
@@ -353,22 +368,38 @@ function eval_fmt(fmt, v, opts, flen) {
out.push({t:'t', v:c}); ++i; break;
}
}
-
- /* walk backwards */
+ var bt = 0;
for(i=out.length-1, lst='t'; i >= 0; --i) {
switch(out[i].t) {
- case 'h': case 'H': out[i].t = hr; lst='h'; break;
- case 'd': case 'y': case 's': case 'M': case 'e': lst=out[i].t; break;
- case 'm': if(lst === 's') out[i].t = 'M'; break;
+ case 'h': case 'H': out[i].t = hr; lst='h'; if(bt < 1) bt = 1; break;
+ case 's': if(bt < 3) bt = 3;
+ /* falls through */
+ case 'd': case 'y': case 'M': case 'e': lst=out[i].t; break;
+ case 'm': if(lst === 's') { out[i].t = 'M'; if(bt < 2) bt = 2; } break;
+ case 'Z':
+ if(bt < 1 && out[i].v.match(/[Hh]/)) bt = 1;
+ if(bt < 2 && out[i].v.match(/[Mm]/)) bt = 2;
+ if(bt < 3 && out[i].v.match(/[Ss]/)) bt = 3;
}
}
-
+ switch(bt) {
+ case 0: break;
+ case 1:
+ if(dt.u >= .5) { dt.u = 0; ++dt.S; }
+ if(dt.S >= 60) { dt.S = 0; ++dt.M; }
+ if(dt.M >= 60) { dt.M = 0; ++dt.H; }
+ break;
+ case 2:
+ if(dt.u >= .5) { dt.u = 0; ++dt.S; }
+ if(dt.S >= 60) { dt.S = 0; ++dt.M; }
+ break;
+ }
/* replace fields */
for(i=0; i < out.length; ++i) {
switch(out[i].t) {
case 't': case 'T': case ' ': case 'D': break;
case 'd': case 'm': case 'y': case 'h': case 'H': case 'M': case 's': case 'e': case 'Z':
- out[i].v = write_date(out[i].t, out[i].v, dt);
+ out[i].v = write_date(out[i].t, out[i].v, dt, bt);
out[i].t = 't'; break;
case 'n': case '(': case '?':
var jj = i+1;
diff --git a/bits/31_version.js b/bits/31_version.js
index 2ccc661..5a83efa 100644
--- a/bits/31_version.js
+++ b/bits/31_version.js
@@ -1 +1 @@
-XLSX.version = '0.5.13';
+XLSX.version = '0.5.14';
diff --git a/bits/39_parsestructs.js b/bits/39_parsestructs.js
index 0135fe1..2c7653f 100644
--- a/bits/39_parsestructs.js
+++ b/bits/39_parsestructs.js
@@ -20,6 +20,7 @@ var parse_RichStr = function(data, length) {
/* TODO: formatted string */
var dwSizeStrRun = data.read_shift(4);
for(var i = 0; i != dwSizeStrRun; ++i) rgsStrRun.push(parse_StrRun(data));
+ z.r = JSON.stringify(rgsStrRun);
}
if(fExtStr) {
/* TODO: phonetic string */
@@ -92,3 +93,32 @@ var BErr = {
};
var RBErr = evert(BErr);
+/* [MS-XLSB] 2.4.321 BrtColor */
+function parse_BrtColor(data, length) {
+ var read = data.read_shift.bind(data);
+ var out = {};
+ var d = read(1);
+ out.fValidRGB = d & 1;
+ out.xColorType = d >>> 1;
+ out.index = read(1)
+ out.nTintAndShade = read(2, 'i');
+ out.bRed = read(1);
+ out.bGreen = read(1);
+ out.bBlue = read(1);
+ out.bAlpha = read(1);
+}
+
+/* [MS-XLSB 2.5.52 */
+function parse_FontFlags(data, length) {
+ var d = data.read_shift(1);
+ data.l++;
+ var out = {
+ fItalic: d & 0x2,
+ fStrikeout: d & 0x8,
+ fOutline: d & 0x10,
+ fShadow: d & 0x20,
+ fCondense: d & 0x40,
+ fExtend: d & 0x80,
+ };
+ return out;
+}
diff --git a/bits/58_stybin.js b/bits/58_stybin.js
index 400421d..292cc67 100644
--- a/bits/58_stybin.js
+++ b/bits/58_stybin.js
@@ -5,6 +5,34 @@ function parse_BrtFmt(data, length) {
return [ifmt, stFmtCode];
}
+/* [MS-XLSB] 2.4.653 BrtFont TODO */
+function parse_BrtFont(data, length) {
+ var read = data.read_shift.bind(data);
+ var out = {flags:{}};
+ out.dyHeight = read(2);
+ out.grbit = parse_FontFlags(data, 2);
+ out.bls = read(2);
+ out.sss = read(2);
+ out.uls = read(1);
+ out.bFamily = read(1);
+ out.bCharSet = read(1);
+ data.l++;
+ out.brtColor = parse_BrtColor(data, 8);
+ out.bFontScheme = read(1);
+ out.name = parse_XLWideString(data, length - 21);
+
+ out.flags.Bold = out.bls === 0x02BC;
+ out.flags.Italic = out.grbit.fItalic;
+ out.flags.Strikeout = out.grbit.fStrikeout;
+ out.flags.Outline = out.grbit.fOutline;
+ out.flags.Shadow = out.grbit.fShadow;
+ out.flags.Condense = out.grbit.fCondense;
+ out.flags.Extend = out.grbit.fExtend;
+ out.flags.Sub = out.sss & 0x2;
+ out.flags.Sup = out.sss & 0x1;
+ return out;
+}
+
/* [MS-XLSB] 2.4.816 BrtXF */
function parse_BrtXF(data, length) {
var ixfeParent = data.read_shift(2);
diff --git a/bits/60_xlsx.js b/bits/60_xlsx.js
index d0e2926..d9fc6b3 100644
--- a/bits/60_xlsx.js
+++ b/bits/60_xlsx.js
@@ -16,11 +16,13 @@ var ct2type = {
"application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml": "calcchains", /*XLS[XM]*/
//"application/vnd.ms-excel.calcChain": "calcchains", /*XLSB*/
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": "comments", /*XLS[XM]*/
+ "application/vnd.ms-excel.comments": "comments", /*XLSB*/
+
"application/vnd.openxmlformats-package.core-properties+xml": "coreprops",
"application/vnd.openxmlformats-officedocument.extended-properties+xml": "extprops",
"application/vnd.openxmlformats-officedocument.custom-properties+xml": "custprops",
"application/vnd.openxmlformats-officedocument.theme+xml":"themes",
- "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": "comments",
"foo": "bar"
};
diff --git a/bits/63_cmntxml.js b/bits/63_cmntxml.js
new file mode 100644
index 0000000..74c1d79
--- /dev/null
+++ b/bits/63_cmntxml.js
@@ -0,0 +1,25 @@
+/* 18.7.3 CT_Comment */
+function parse_comments_xml(data, opts) {
+ if(data.match(//)) return [];
+ var authors = [];
+ var commentList = [];
+ data.match(/([^\u2603]*)<\/authors>/m)[1].split('').forEach(function(x) {
+ if(x === "" || x.trim() === "") return;
+ authors.push(x.match(/]*>(.*)/)[1]);
+ });
+ data.match(/([^\u2603]*)<\/commentList>/m)[1].split('').forEach(function(x, index) {
+ if(x === "" || x.trim() === "") return;
+ var y = parsexmltag(x.match(/]*>/)[0]);
+ var comment = { author: y.authorId && authors[y.authorId] ? authors[y.authorId] : undefined, ref: y.ref, guid: y.guid };
+ var cell = decode_cell(y.ref);
+ if(opts.sheetRows && opts.sheetRows <= cell.r) return;
+ var textMatch = x.match(/([^\u2603]*)<\/text>/m);
+ if (!textMatch || !textMatch[1]) return; // a comment may contain an empty text tag.
+ var rt = parse_si(textMatch[1]);
+ comment.r = rt.r;
+ comment.t = rt.t;
+ if(opts.cellHTML) comment.h = rt.h;
+ commentList.push(comment);
+ });
+ return commentList;
+}
diff --git a/bits/64_cmntbin.js b/bits/64_cmntbin.js
new file mode 100644
index 0000000..cad580d
--- /dev/null
+++ b/bits/64_cmntbin.js
@@ -0,0 +1,44 @@
+/* [MS-XLSB] 2.4.28 BrtBeginComment */
+var parse_BrtBeginComment = function(data, length) {
+ var out = {};
+ out.iauthor = data.read_shift(4);
+ var rfx = parse_UncheckedRfX(data, 16);
+ out.rfx = rfx.s;
+ out.ref = encode_cell(rfx.s);
+ data.l += 16; /*var guid = parse_GUID(data); */
+ return out;
+};
+
+/* [MS-XLSB] 2.4.324 BrtCommentAuthor */
+var parse_BrtCommentAuthor = parse_XLWideString;
+
+/* [MS-XLSB] 2.4.325 BrtCommentText */
+var parse_BrtCommentText = parse_RichStr;
+
+/* [MS-XLSB] 2.1.7.8 Comments */
+function parse_comments_bin(data, opts) {
+ var out = [];
+ var authors = [];
+ var c = {};
+ var pass = false;
+ recordhopper(data, function(val, R, RT) {
+ switch(R.n) {
+ case 'BrtCommentAuthor': authors.push(val); break;
+ case 'BrtBeginComment': c = val; break;
+ case 'BrtCommentText': c.t = val.t; c.h = val.h; c.r = val.r; break;
+ case 'BrtEndComment':
+ c.author = authors[c.iauthor];
+ delete c.iauthor;
+ if(opts.sheetRows && opts.sheetRows <= c.rfx.r) break;
+ delete c.rfx; out.push(c); break;
+ case 'BrtBeginComments': break;
+ case 'BrtEndComments': break;
+ case 'BrtBeginCommentAuthors': break;
+ case 'BrtEndCommentAuthors': break;
+ case 'BrtBeginCommentList': break;
+ case 'BrtEndCommentList': break;
+ default: if(!pass || opts.WTF) throw new Error("Unexpected record " + RT + " " + R.n);
+ }
+ });
+ return out;
+}
diff --git a/bits/65_comments.js b/bits/65_comments.js
index 25e0113..212a1ad 100644
--- a/bits/65_comments.js
+++ b/bits/65_comments.js
@@ -1,33 +1,8 @@
-/* 18.7.3 CT_Comment */
-function parse_comments_xml(data, opts) {
- if(data.match(//)) return [];
- var authors = [];
- var commentList = [];
- data.match(/([^\u2603]*)<\/authors>/m)[1].split('').forEach(function(x) {
- if(x === "" || x.trim() === "") return;
- authors.push(x.match(/]*>(.*)/)[1]);
- });
- data.match(/([^\u2603]*)<\/commentList>/m)[1].split('').forEach(function(x, index) {
- if(x === "" || x.trim() === "") return;
- var y = parsexmltag(x.match(/]*>/)[0]);
- var comment = { author: y.authorId && authors[y.authorId] ? authors[y.authorId] : undefined, ref: y.ref, guid: y.guid };
- var cell = decode_cell(y.ref);
- if(opts.sheetRows && opts.sheetRows <= cell.r) return;
- var textMatch = x.match(/([^\u2603]*)<\/text>/m);
- if (!textMatch || !textMatch[1]) return; // a comment may contain an empty text tag.
- var rt = parse_si(textMatch[1]);
- comment.r = rt.r;
- comment.t = rt.t;
- if(opts.cellHTML) comment.h = rt.h;
- commentList.push(comment);
- });
- return commentList;
-}
function parse_comments(zip, dirComments, sheets, sheetRels, opts) {
for(var i = 0; i != dirComments.length; ++i) {
var canonicalpath=dirComments[i];
- var comments=parse_comments_xml(getzipdata(zip, canonicalpath.replace(/^\//,''), true), opts);
+ var comments=parse_cmnt(getzipdata(zip, canonicalpath.replace(/^\//,''), true), canonicalpath, opts);
if(!comments || !comments.length) continue;
// find the sheets targeted by these comments
var sheetNames = Object.keys(sheets);
diff --git a/bits/73_wsbin.js b/bits/73_wsbin.js
index e5767a3..2345624 100644
--- a/bits/73_wsbin.js
+++ b/bits/73_wsbin.js
@@ -208,6 +208,7 @@ var parse_ws_bin = function(data, opts) {
case 'BrtHLink': break; // TODO
case 'BrtDrawing': break; // TODO
case 'BrtLegacyDrawing': break; // TODO
+ case 'BrtLegacyDrawingHF': break; // TODO
case 'BrtPhoneticInfo': break; // TODO
case 'BrtBeginHeaderFooter': break; // TODO
case 'BrtEndHeaderFooter': break; // TODO
@@ -239,6 +240,11 @@ var parse_ws_bin = function(data, opts) {
case 'BrtDVal': break; // TODO
case 'BrtEndDVals': break; // TODO
case 'BrtRangeProtection': break; // TODO
+ case 'BrtBeginDCon': break; // TODO
+ case 'BrtEndDCon': break; // TODO
+ case 'BrtBeginDRefs': break;
+ case 'BrtDRef': break;
+ case 'BrtEndDRefs': break;
/* ActiveX */
case 'BrtBeginActiveXControls': break;
@@ -259,6 +265,19 @@ var parse_ws_bin = function(data, opts) {
case 'BrtCustomFilter': break;
case 'BrtEndCustomFilters': break;
+ /* Cell Watch */
+ case 'BrtBeginCellWatches': break;
+ case 'BrtCellWatch': break;
+ case 'BrtEndCellWatches': break;
+
+ /* Table */
+ case 'BrtTable': break;
+
+ /* Ignore Cell Errors */
+ case 'BrtBeginCellIgnoreECs': break;
+ case 'BrtCellIgnoreEC': break;
+ case 'BrtEndCellIgnoreECs': break;
+
default: if(!pass || opts.WTF) throw new Error("Unexpected record " + R.n);
}
}, opts);
diff --git a/bits/78_wbbin.js b/bits/78_wbbin.js
index 83072d8..2903528 100644
--- a/bits/78_wbbin.js
+++ b/bits/78_wbbin.js
@@ -46,6 +46,7 @@ var parse_wb_bin = function(data, opts) {
case 'BrtEndPivotCacheIDs': break;
case 'BrtWebOpt': break;
case 'BrtFileRecover': break;
+ case 'BrtFileSharing': break;
/*case 'BrtBeginWebPubItems': break;
case 'BrtBeginWebPubItem': break;
case 'BrtEndWebPubItem': break;
diff --git a/bits/79_xmlbin.js b/bits/79_xmlbin.js
index 03da3e9..f2f58f8 100644
--- a/bits/79_xmlbin.js
+++ b/bits/79_xmlbin.js
@@ -13,3 +13,7 @@ function parse_sty(data, name, opts) {
function parse_sst(data, name, opts) {
return name.substr(-4)===".bin" ? parse_sst_bin(data, opts) : parse_sst_xml(data, opts);
}
+
+function parse_cmnt(data, name, opts) {
+ return name.substr(-4)===".bin" ? parse_comments_bin(data, opts) : parse_comments_xml(data, opts);
+}
diff --git a/bits/82_parsetab.js b/bits/82_parsetab.js
index c76ca1c..629db2b 100644
--- a/bits/82_parsetab.js
+++ b/bits/82_parsetab.js
@@ -35,7 +35,7 @@ var RecordEnum = {
0x0027: { n:"BrtName", f:parsenoop },
0x0028: { n:"BrtIndexRowBlock", f:parsenoop },
0x002A: { n:"BrtIndexBlock", f:parsenoop },
- 0x002B: { n:"BrtFont", f:parsenoop },
+ 0x002B: { n:"BrtFont", f:parse_BrtFont },
0x002C: { n:"BrtFmt", f:parse_BrtFmt },
0x002D: { n:"BrtFill", f:parsenoop },
0x002E: { n:"BrtBorder", f:parsenoop },
@@ -543,12 +543,12 @@ var RecordEnum = {
0x0275: { n:"BrtEndComments", f:parsenoop },
0x0276: { n:"BrtBeginCommentAuthors", f:parsenoop },
0x0277: { n:"BrtEndCommentAuthors", f:parsenoop },
- 0x0278: { n:"BrtCommentAuthor", f:parsenoop },
+ 0x0278: { n:"BrtCommentAuthor", f:parse_BrtCommentAuthor },
0x0279: { n:"BrtBeginCommentList", f:parsenoop },
0x027A: { n:"BrtEndCommentList", f:parsenoop },
- 0x027B: { n:"BrtBeginComment", f:parsenoop },
+ 0x027B: { n:"BrtBeginComment", f:parse_BrtBeginComment},
0x027C: { n:"BrtEndComment", f:parsenoop },
- 0x027D: { n:"BrtCommentText", f:parsenoop },
+ 0x027D: { n:"BrtCommentText", f:parse_BrtCommentText },
0x027E: { n:"BrtBeginOleObjects", f:parsenoop },
0x027F: { n:"BrtOleObject", f:parsenoop },
0x0280: { n:"BrtEndOleObjects", f:parsenoop },
diff --git a/dist/xlsx.js b/dist/xlsx.js
index 66e4259..e9071ef 100644
--- a/dist/xlsx.js
+++ b/dist/xlsx.js
@@ -9,7 +9,7 @@ var _strrev = function(x) { return String(x).split("").reverse().join("");};
function fill(c,l) { return new Array(l+1).join(c); }
function pad(v,d,c){var t=String(v);return t.length>=d?t:(fill(c||0,d-t.length)+t);}
function rpad(v,d,c){var t=String(v);return t.length>=d?t:(t+fill(c||0,d-t.length));}
-SSF.version = '0.5.9';
+SSF.version = '0.6.1';
/* Options */
var opts_fmt = {};
function fixopts(o){for(var y in opts_fmt) if(o[y]===undefined) o[y]=opts_fmt[y];}
@@ -124,6 +124,10 @@ var parse_date_code = function parse_date_code(v,opts) {
var dout=[], out={D:date, T:time, u:86400*(v-date)-time}; fixopts(opts = (opts||{}));
if(opts.date1904) date += 1462;
if(date > 2958465) return null;
+ if(out.u > .999) {
+ out.u = 0;
+ if(++time == 86400) { time = 0; ++date; }
+ }
if(date === 60) {dout = [1900,2,29]; dow=3;}
else if(date === 0) {dout = [1900,1,0]; dow=6;}
else {
@@ -146,7 +150,7 @@ SSF.parse_date_code = parse_date_code;
/*jshint -W086 */
var write_date = function(type, fmt, val) {
if(val < 0) return "";
- var o;
+ var o, ss;
switch(type) {
case 'y': switch(fmt) { /* year */
case 'y': case 'yy': return pad(val.y % 100,2);
@@ -181,11 +185,11 @@ var write_date = function(type, fmt, val) {
default: throw 'bad minute format: ' + fmt;
}
case 's': switch(fmt) { /* seconds */
- case 's': return Math.round(val.S+val.u);
- case 'ss': return pad(Math.round(val.S+val.u), 2);
- case 'ss.0': o = pad(Math.round(10*(val.S+val.u)),3); return o.substr(0,2)+"." + o.substr(2);
- case 'ss.00': o = pad(Math.round(100*(val.S+val.u)),4); return o.substr(0,2)+"." + o.substr(2);
- case 'ss.000': o = pad(Math.round(1000*(val.S+val.u)),5); return o.substr(0,2)+"." + o.substr(2);
+ case 's': ss=Math.round(val.S+val.u); return ss >= 60 ? 0 : ss;
+ case 'ss': ss=Math.round(val.S+val.u); if(ss>=60) ss=0; return pad(ss,2);
+ case 'ss.0': ss=Math.round(10*(val.S+val.u)); if(ss>=600) ss = 0; o = pad(ss,3); return o.substr(0,2)+"." + o.substr(2);
+ case 'ss.00': ss=Math.round(100*(val.S+val.u)); if(ss>=6000) ss = 0; o = pad(ss,4); return o.substr(0,2)+"." + o.substr(2);
+ case 'ss.000': ss=Math.round(1000*(val.S+val.u)); if(ss>=60000) ss = 0; o = pad(ss,5); return o.substr(0,2)+"." + o.substr(2);
default: throw 'bad second format: ' + fmt;
}
case 'Z': switch(fmt) {
@@ -209,6 +213,8 @@ var write_num = function(type, fmt, val) {
var mul = 0, o;
fmt = fmt.replace(/%/g,function(x) { mul++; return ""; });
if(mul !== 0) return write_num(type, fmt, val * Math.pow(10,2*mul)) + fill("%",mul);
+ fmt = fmt.replace(/(\.0+)(,+)$/g,function($$,$1,$2) { mul=$2.length; return $1; });
+ if(mul !== 0) return write_num(type, fmt, val / Math.pow(10,3*mul));
if(fmt.indexOf("E") > -1) {
var idx = fmt.indexOf("E") - fmt.indexOf(".") - 1;
if(fmt.match(/^#+0.0E\+0$/)) {
@@ -242,11 +248,12 @@ var write_num = function(type, fmt, val) {
if(fmt.match(/^#+0+$/)) fmt = fmt.replace(/#/g,"");
if(fmt.match(/^00+$/)) return (val<0?"-":"")+pad(Math.round(aval),fmt.length);
if(fmt.match(/^[#?]+$/)) return String(Math.round(val)).replace(/^0$/,"");
- if((r = fmt.match(/^#*0+\.(0+)/))) {
+ if((r = fmt.match(/^#*0*\.(0+)/))) {
o = Math.round(val * Math.pow(10,r[1].length));
- return String(o/Math.pow(10,r[1].length)).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.([0-9]*)$/,function($$, $1) { return "." + $1 + fill("0", r[1].length-$1.length); });
+ rr = String(o/Math.pow(10,r[1].length)).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.([0-9]*)$/,function($$, $1) { return "." + $1 + fill("0", r[1].length-$1.length); });
+ return fmt.match(/0\./) ? rr : rr.replace(/^0\./,".");
}
- fmt = fmt.replace(/^#+0/, "0");
+ fmt = fmt.replace(/^#+([0.])/, "$1");
if((r = fmt.match(/^(0*)\.(#*)$/))) {
o = Math.round(aval*Math.pow(10,r[2].length));
return sign + String(o / Math.pow(10,r[2].length)).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^([-]?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".");
@@ -256,15 +263,23 @@ var write_num = function(type, fmt, val) {
rr = Math.round((val-Math.floor(val))*Math.pow(10,r[1].length));
return val < 0 ? "-" + write_num(type, fmt, -val) : commaify(String(Math.floor(val))) + "." + pad(rr,r[1].length,0);
}
+ if((r = fmt.match(/^#,#*,#0/))) return write_num(type,fmt.replace(/^#,#*,/,""),val);
+ if((r = fmt.match(/^([?]+)([ ]?)\/([ ]?)([?]+)/))) {
+ rr = Math.min(Math.max(r[1].length, r[4].length),7);
+ ff = frac(aval, Math.pow(10,rr)-1, false);
+ return sign + (ff[0]||(ff[1] ? "" : "0")) + (ff[1] ? pad(ff[1],rr," ") + r[2] + "/" + r[3] + rpad(ff[2],rr," "): fill(" ", 2*rr+1 + r[2].length + r[3].length));
+ }
if((r = fmt.match(/^# ([?]+)([ ]?)\/([ ]?)([?]+)/))) {
rr = Math.min(Math.max(r[1].length, r[4].length),7);
ff = frac(aval, Math.pow(10,rr)-1, true);
return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad(ff[1],rr," ") + r[2] + "/" + r[3] + rpad(ff[2],rr," "): fill(" ", 2*rr+1 + r[2].length + r[3].length));
}
+ if((r = fmt.match(/^00,000\.([#0]*0)$/))) {
+ rr = val == Math.floor(val) ? 0 : Math.round((val-Math.floor(val))*Math.pow(10,r[1].length));
+ return val < 0 ? "-" + write_num(type, fmt, -val) : commaify(String(Math.floor(val))).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$) { return "00," + ($$.length < 3 ? pad(0,3-$$.length) : "") + $$; }) + "." + pad(rr,r[1].length,0);
+ }
switch(fmt) {
case "0": case "#0": return Math.round(val);
- case "#.##": o = Math.round(val*100);
- return String(o/100).replace(/^([^\.]+)$/,"$1.").replace(/^0\.$/,".");
case "#,###": var x = commaify(String(Math.round(aval))); return x !== "0" ? sign + x : "";
default:
}
@@ -309,7 +324,7 @@ function eval_fmt(fmt, v, opts, flen) {
case 'M': case 'D': case 'Y': case 'H': case 'S': case 'E':
c = c.toLowerCase();
/* falls through */
- case 'm': case 'd': case 'y': case 'h': case 's': case 'e':
+ case 'm': case 'd': case 'y': case 'h': case 's': case 'e': case 'g':
if(v < 0) return "";
if(!dt) dt = parse_date_code(v, opts);
if(!dt) return "";
@@ -344,7 +359,7 @@ function eval_fmt(fmt, v, opts, flen) {
case '?':
o = fmt[i]; while(fmt[++i] === c) o+=c;
q={t:c, v:o}; out.push(q); lst = c; break;
- case '*': ++i; if(fmt[i] == ' ') ++i; break; // **
+ case '*': ++i; if(fmt[i] == ' ' || fmt[i] == '*') ++i; break; // **
case '(': case ')': out.push({t:(flen===1?'t':c),v:c}); ++i; break;
case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9':
o = fmt[i]; while("0123456789".indexOf(fmt[++i]) > -1) o+=fmt[i];
@@ -356,22 +371,38 @@ function eval_fmt(fmt, v, opts, flen) {
out.push({t:'t', v:c}); ++i; break;
}
}
-
- /* walk backwards */
+ var bt = 0;
for(i=out.length-1, lst='t'; i >= 0; --i) {
switch(out[i].t) {
- case 'h': case 'H': out[i].t = hr; lst='h'; break;
- case 'd': case 'y': case 's': case 'M': case 'e': lst=out[i].t; break;
- case 'm': if(lst === 's') out[i].t = 'M'; break;
+ case 'h': case 'H': out[i].t = hr; lst='h'; if(bt < 1) bt = 1; break;
+ case 's': if(bt < 3) bt = 3;
+ /* falls through */
+ case 'd': case 'y': case 'M': case 'e': lst=out[i].t; break;
+ case 'm': if(lst === 's') { out[i].t = 'M'; if(bt < 2) bt = 2; } break;
+ case 'Z':
+ if(bt < 1 && out[i].v.match(/[Hh]/)) bt = 1;
+ if(bt < 2 && out[i].v.match(/[Mm]/)) bt = 2;
+ if(bt < 3 && out[i].v.match(/[Ss]/)) bt = 3;
}
}
-
+ switch(bt) {
+ case 0: break;
+ case 1:
+ if(dt.u >= .5) { dt.u = 0; ++dt.S; }
+ if(dt.S >= 60) { dt.S = 0; ++dt.M; }
+ if(dt.M >= 60) { dt.M = 0; ++dt.H; }
+ break;
+ case 2:
+ if(dt.u >= .5) { dt.u = 0; ++dt.S; }
+ if(dt.S >= 60) { dt.S = 0; ++dt.M; }
+ break;
+ }
/* replace fields */
for(i=0; i < out.length; ++i) {
switch(out[i].t) {
case 't': case 'T': case ' ': case 'D': break;
case 'd': case 'm': case 'y': case 'h': case 'H': case 'M': case 's': case 'e': case 'Z':
- out[i].v = write_date(out[i].t, out[i].v, dt);
+ out[i].v = write_date(out[i].t, out[i].v, dt, bt);
out[i].t = 't'; break;
case 'n': case '(': case '?':
var jj = i+1;
@@ -424,7 +455,7 @@ SSF.load_table = function(tbl) { for(var i=0; i!=0x0188; ++i) if(tbl[i]) SSF.loa
make_ssf(SSF);
var XLSX = {};
(function(XLSX){
-XLSX.version = '0.5.13';
+XLSX.version = '0.5.14';
var current_codepage, current_cptable, cptable;
if(typeof module !== "undefined" && typeof require !== 'undefined') {
if(typeof cptable === 'undefined') cptable = require('codepage');
@@ -663,6 +694,7 @@ var parse_RichStr = function(data, length) {
/* TODO: formatted string */
var dwSizeStrRun = data.read_shift(4);
for(var i = 0; i != dwSizeStrRun; ++i) rgsStrRun.push(parse_StrRun(data));
+ z.r = JSON.stringify(rgsStrRun);
}
if(fExtStr) {
/* TODO: phonetic string */
@@ -735,6 +767,35 @@ var BErr = {
};
var RBErr = evert(BErr);
+/* [MS-XLSB] 2.4.321 BrtColor */
+function parse_BrtColor(data, length) {
+ var read = data.read_shift.bind(data);
+ var out = {};
+ var d = read(1);
+ out.fValidRGB = d & 1;
+ out.xColorType = d >>> 1;
+ out.index = read(1)
+ out.nTintAndShade = read(2, 'i');
+ out.bRed = read(1);
+ out.bGreen = read(1);
+ out.bBlue = read(1);
+ out.bAlpha = read(1);
+}
+
+/* [MS-XLSB 2.5.52 */
+function parse_FontFlags(data, length) {
+ var d = data.read_shift(1);
+ data.l++;
+ var out = {
+ fItalic: d & 0x2,
+ fStrikeout: d & 0x8,
+ fOutline: d & 0x10,
+ fShadow: d & 0x20,
+ fCondense: d & 0x40,
+ fExtend: d & 0x80,
+ };
+ return out;
+}
/* Parse a list of tags */
var parse_rs = (function() {
var tregex = matchtag("t"), rpregex = matchtag("rPr");
@@ -974,6 +1035,34 @@ function parse_BrtFmt(data, length) {
return [ifmt, stFmtCode];
}
+/* [MS-XLSB] 2.4.653 BrtFont TODO */
+function parse_BrtFont(data, length) {
+ var read = data.read_shift.bind(data);
+ var out = {flags:{}};
+ out.dyHeight = read(2);
+ out.grbit = parse_FontFlags(data, 2);
+ out.bls = read(2);
+ out.sss = read(2);
+ out.uls = read(1);
+ out.bFamily = read(1);
+ out.bCharSet = read(1);
+ data.l++;
+ out.brtColor = parse_BrtColor(data, 8);
+ out.bFontScheme = read(1);
+ out.name = parse_XLWideString(data, length - 21);
+
+ out.flags.Bold = out.bls === 0x02BC;
+ out.flags.Italic = out.grbit.fItalic;
+ out.flags.Strikeout = out.grbit.fStrikeout;
+ out.flags.Outline = out.grbit.fOutline;
+ out.flags.Shadow = out.grbit.fShadow;
+ out.flags.Condense = out.grbit.fCondense;
+ out.flags.Extend = out.grbit.fExtend;
+ out.flags.Sub = out.sss & 0x2;
+ out.flags.Sup = out.sss & 0x1;
+ return out;
+}
+
/* [MS-XLSB] 2.4.816 BrtXF */
function parse_BrtXF(data, length) {
var ixfeParent = data.read_shift(2);
@@ -1074,11 +1163,13 @@ var ct2type = {
"application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml": "calcchains", /*XLS[XM]*/
//"application/vnd.ms-excel.calcChain": "calcchains", /*XLSB*/
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": "comments", /*XLS[XM]*/
+ "application/vnd.ms-excel.comments": "comments", /*XLSB*/
+
"application/vnd.openxmlformats-package.core-properties+xml": "coreprops",
"application/vnd.openxmlformats-officedocument.extended-properties+xml": "extprops",
"application/vnd.openxmlformats-officedocument.custom-properties+xml": "custprops",
"application/vnd.openxmlformats-officedocument.theme+xml":"themes",
- "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": "comments",
"foo": "bar"
};
@@ -1269,11 +1360,55 @@ function parse_comments_xml(data, opts) {
});
return commentList;
}
+/* [MS-XLSB] 2.4.28 BrtBeginComment */
+var parse_BrtBeginComment = function(data, length) {
+ var out = {};
+ out.iauthor = data.read_shift(4);
+ var rfx = parse_UncheckedRfX(data, 16);
+ out.rfx = rfx.s;
+ out.ref = encode_cell(rfx.s);
+ data.l += 16; /*var guid = parse_GUID(data); */
+ return out;
+};
+
+/* [MS-XLSB] 2.4.324 BrtCommentAuthor */
+var parse_BrtCommentAuthor = parse_XLWideString;
+
+/* [MS-XLSB] 2.4.325 BrtCommentText */
+var parse_BrtCommentText = parse_RichStr;
+
+/* [MS-XLSB] 2.1.7.8 Comments */
+function parse_comments_bin(data, opts) {
+ var out = [];
+ var authors = [];
+ var c = {};
+ var pass = false;
+ recordhopper(data, function(val, R, RT) {
+ switch(R.n) {
+ case 'BrtCommentAuthor': authors.push(val); break;
+ case 'BrtBeginComment': c = val; break;
+ case 'BrtCommentText': c.t = val.t; c.h = val.h; c.r = val.r; break;
+ case 'BrtEndComment':
+ c.author = authors[c.iauthor];
+ delete c.iauthor;
+ if(opts.sheetRows && opts.sheetRows <= c.rfx.r) break;
+ delete c.rfx; out.push(c); break;
+ case 'BrtBeginComments': break;
+ case 'BrtEndComments': break;
+ case 'BrtBeginCommentAuthors': break;
+ case 'BrtEndCommentAuthors': break;
+ case 'BrtBeginCommentList': break;
+ case 'BrtEndCommentList': break;
+ default: if(!pass || opts.WTF) throw new Error("Unexpected record " + RT + " " + R.n);
+ }
+ });
+ return out;
+}
function parse_comments(zip, dirComments, sheets, sheetRels, opts) {
for(var i = 0; i != dirComments.length; ++i) {
var canonicalpath=dirComments[i];
- var comments=parse_comments_xml(getzipdata(zip, canonicalpath.replace(/^\//,''), true), opts);
+ var comments=parse_cmnt(getzipdata(zip, canonicalpath.replace(/^\//,''), true), canonicalpath, opts);
if(!comments || !comments.length) continue;
// find the sheets targeted by these comments
var sheetNames = Object.keys(sheets);
@@ -1636,6 +1771,7 @@ var parse_ws_bin = function(data, opts) {
case 'BrtHLink': break; // TODO
case 'BrtDrawing': break; // TODO
case 'BrtLegacyDrawing': break; // TODO
+ case 'BrtLegacyDrawingHF': break; // TODO
case 'BrtPhoneticInfo': break; // TODO
case 'BrtBeginHeaderFooter': break; // TODO
case 'BrtEndHeaderFooter': break; // TODO
@@ -1667,6 +1803,11 @@ var parse_ws_bin = function(data, opts) {
case 'BrtDVal': break; // TODO
case 'BrtEndDVals': break; // TODO
case 'BrtRangeProtection': break; // TODO
+ case 'BrtBeginDCon': break; // TODO
+ case 'BrtEndDCon': break; // TODO
+ case 'BrtBeginDRefs': break;
+ case 'BrtDRef': break;
+ case 'BrtEndDRefs': break;
/* ActiveX */
case 'BrtBeginActiveXControls': break;
@@ -1687,6 +1828,19 @@ var parse_ws_bin = function(data, opts) {
case 'BrtCustomFilter': break;
case 'BrtEndCustomFilters': break;
+ /* Cell Watch */
+ case 'BrtBeginCellWatches': break;
+ case 'BrtCellWatch': break;
+ case 'BrtEndCellWatches': break;
+
+ /* Table */
+ case 'BrtTable': break;
+
+ /* Ignore Cell Errors */
+ case 'BrtBeginCellIgnoreECs': break;
+ case 'BrtCellIgnoreEC': break;
+ case 'BrtEndCellIgnoreECs': break;
+
default: if(!pass || opts.WTF) throw new Error("Unexpected record " + R.n);
}
}, opts);
@@ -1955,6 +2109,7 @@ var parse_wb_bin = function(data, opts) {
case 'BrtEndPivotCacheIDs': break;
case 'BrtWebOpt': break;
case 'BrtFileRecover': break;
+ case 'BrtFileSharing': break;
/*case 'BrtBeginWebPubItems': break;
case 'BrtBeginWebPubItem': break;
case 'BrtEndWebPubItem': break;
@@ -1992,6 +2147,10 @@ function parse_sty(data, name, opts) {
function parse_sst(data, name, opts) {
return name.substr(-4)===".bin" ? parse_sst_bin(data, opts) : parse_sst_xml(data, opts);
}
+
+function parse_cmnt(data, name, opts) {
+ return name.substr(-4)===".bin" ? parse_comments_bin(data, opts) : parse_comments_xml(data, opts);
+}
/* [MS-XLSB] 2.3 Record Enumeration */
var RecordEnum = {
0x0000: { n:"BrtRowHdr", f:parse_BrtRowHdr },
@@ -2029,7 +2188,7 @@ var RecordEnum = {
0x0027: { n:"BrtName", f:parsenoop },
0x0028: { n:"BrtIndexRowBlock", f:parsenoop },
0x002A: { n:"BrtIndexBlock", f:parsenoop },
- 0x002B: { n:"BrtFont", f:parsenoop },
+ 0x002B: { n:"BrtFont", f:parse_BrtFont },
0x002C: { n:"BrtFmt", f:parse_BrtFmt },
0x002D: { n:"BrtFill", f:parsenoop },
0x002E: { n:"BrtBorder", f:parsenoop },
@@ -2537,12 +2696,12 @@ var RecordEnum = {
0x0275: { n:"BrtEndComments", f:parsenoop },
0x0276: { n:"BrtBeginCommentAuthors", f:parsenoop },
0x0277: { n:"BrtEndCommentAuthors", f:parsenoop },
- 0x0278: { n:"BrtCommentAuthor", f:parsenoop },
+ 0x0278: { n:"BrtCommentAuthor", f:parse_BrtCommentAuthor },
0x0279: { n:"BrtBeginCommentList", f:parsenoop },
0x027A: { n:"BrtEndCommentList", f:parsenoop },
- 0x027B: { n:"BrtBeginComment", f:parsenoop },
+ 0x027B: { n:"BrtBeginComment", f:parse_BrtBeginComment},
0x027C: { n:"BrtEndComment", f:parsenoop },
- 0x027D: { n:"BrtCommentText", f:parsenoop },
+ 0x027D: { n:"BrtCommentText", f:parse_BrtCommentText },
0x027E: { n:"BrtBeginOleObjects", f:parsenoop },
0x027F: { n:"BrtOleObject", f:parsenoop },
0x0280: { n:"BrtEndOleObjects", f:parsenoop },
diff --git a/dist/xlsx.min.js b/dist/xlsx.min.js
index 82f8887..b27b89d 100644
--- a/dist/xlsx.min.js
+++ b/dist/xlsx.min.js
@@ -1,5 +1,5 @@
/* xlsx.js (C) 2013-2014 SheetJS -- http://sheetjs.com */
-var SSF={};var make_ssf=function(SSF){var _strrev=function(x){return String(x).split("").reverse().join("")};function fill(c,l){return new Array(l+1).join(c)}function pad(v,d,c){var t=String(v);return t.length>=d?t:fill(c||0,d-t.length)+t}function rpad(v,d,c){var t=String(v);return t.length>=d?t:t+fill(c||0,d-t.length)}SSF.version="0.5.9";var opts_fmt={};function fixopts(o){for(var y in opts_fmt)if(o[y]===undefined)o[y]=opts_fmt[y]}SSF.opts=opts_fmt;opts_fmt.date1904=0;opts_fmt.output="";opts_fmt.mode="";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"秒 "',65535:"General"};var days=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var months=[["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"]];var frac=function frac(x,D,mixed){var sgn=x<0?-1:1;var B=x*sgn;var P_2=0,P_1=1,P=0;var Q_2=1,Q_1=0,Q=0;var A=Math.floor(B);while(Q_1D){Q=Q_1;P=P_1}if(Q>D){Q=Q_2;P=P_2}if(!mixed)return[0,sgn*P,Q];if(Q===0)throw"Unexpected state: "+P+" "+P_1+" "+P_2+" "+Q+" "+Q_1+" "+Q_2;var q=Math.floor(sgn*P/Q);return[q,sgn*P-q*Q,Q]};var general_fmt=function(v){if(typeof v==="boolean")return v?"TRUE":"FALSE";if(typeof v==="number"){var o,V=v<0?-v:v;if(V>=.1&&V<1)o=v.toPrecision(9);else if(V>=.01&&V<.1)o=v.toPrecision(8);else if(V>=.001&&V<.01)o=v.toPrecision(7);else if(V>=1e-4&&V<.001)o=v.toPrecision(6);else if(V>=Math.pow(10,10)&&VMath.pow(10,-9)&&V11+(v<0?1:0))o=v.toPrecision(10);if(o.length>11+(v<0?1:0))o=v.toExponential(5)}else{o=v.toFixed(11).replace(/(\.[0-9]*[1-9])0*$/,"$1");if(o.length>11+(v<0?1:0))o=v.toPrecision(6)}o=o.replace(/(\.[0-9]*[1-9])0+e/,"$1e").replace(/\.0*e/,"e");return o.replace("e","E").replace(/\.0*$/,"").replace(/\.([0-9]*[^0])0*$/,".$1").replace(/(E[+-])([0-9])$/,"$1"+"0"+"$2")}if(typeof v==="string")return v;throw new Error("unsupported value in General format: "+v)};SSF._general=general_fmt;var parse_date_code=function parse_date_code(v,opts){var date=Math.floor(v),time=Math.floor(86400*(v-date)+1e-6),dow=0;var dout=[],out={D:date,T:time,u:86400*(v-date)-time};fixopts(opts=opts||{});if(opts.date1904)date+=1462;if(date>2958465)return null;if(date===60){dout=[1900,2,29];dow=3}else if(date===0){dout=[1900,1,0];dow=6}else{if(date>60)--date;var d=new Date(1900,0,1);d.setDate(d.getDate()+date-1);dout=[d.getFullYear(),d.getMonth()+1,d.getDate()];dow=d.getDay();if(date<60)dow=(dow+6)%7}out.y=dout[0];out.m=dout[1];out.d=dout[2];out.S=time%60;time=Math.floor(time/60);out.M=time%60;time=Math.floor(time/60);out.H=time;out.q=dow;return out};SSF.parse_date_code=parse_date_code;var write_date=function(type,fmt,val){if(val<0)return"";var o;switch(type){case"y":switch(fmt){case"y":case"yy":return pad(val.y%100,2);default:return pad(val.y%1e4,4)}case"m":switch(fmt){case"m":return val.m;case"mm":return pad(val.m,2);case"mmm":return months[val.m-1][1];case"mmmmm":return months[val.m-1][0];default:return months[val.m-1][2]}case"d":switch(fmt){case"d":return val.d;case"dd":return pad(val.d,2);case"ddd":return days[val.q][0];default:return days[val.q][1]}case"h":switch(fmt){case"h":return 1+(val.H+11)%12;case"hh":return pad(1+(val.H+11)%12,2);default:throw"bad hour format: "+fmt}case"H":switch(fmt){case"h":return val.H;case"hh":return pad(val.H,2);default:throw"bad hour format: "+fmt}case"M":switch(fmt){case"m":return val.M;case"mm":return pad(val.M,2);default:throw"bad minute format: "+fmt}case"s":switch(fmt){case"s":return Math.round(val.S+val.u);case"ss":return pad(Math.round(val.S+val.u),2);case"ss.0":o=pad(Math.round(10*(val.S+val.u)),3);return o.substr(0,2)+"."+o.substr(2);case"ss.00":o=pad(Math.round(100*(val.S+val.u)),4);return o.substr(0,2)+"."+o.substr(2);case"ss.000":o=pad(Math.round(1e3*(val.S+val.u)),5);return o.substr(0,2)+"."+o.substr(2);default:throw"bad second format: "+fmt}case"Z":switch(fmt){case"[h]":case"[hh]":o=val.D*24+val.H;break;case"[m]":case"[mm]":o=(val.D*24+val.H)*60+val.M;break;case"[s]":case"[ss]":o=((val.D*24+val.H)*60+val.M)*60+Math.round(val.S+val.u);break;default:throw"bad abstime format: "+fmt}return fmt.length===3?o:pad(o,2);case"e":{return val.y}break}};var commaify=function(s){return _strrev(_strrev(s).replace(/.../g,"$&,")).replace(/^,/,"")};var write_num=function(type,fmt,val){if(type==="("){var ffmt=fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(val>=0)return write_num("n",ffmt,val);return"("+write_num("n",ffmt,-val)+")"}var mul=0,o;fmt=fmt.replace(/%/g,function(x){mul++;return""});if(mul!==0)return write_num(type,fmt,val*Math.pow(10,2*mul))+fill("%",mul);if(fmt.indexOf("E")>-1){var idx=fmt.indexOf("E")-fmt.indexOf(".")-1;if(fmt.match(/^#+0.0E\+0$/)){var period=fmt.indexOf(".");if(period===-1)period=fmt.indexOf("E");var ee=Number(val.toExponential(0).substr(2+(val<0)))%period;if(ee<0)ee+=period;o=(val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);if(!o.match(/[Ee]/)){var fakee=Number(val.toExponential(0).substr(2+(val<0)));if(o.indexOf(".")===-1)o=o[0]+"."+o.substr(1)+"E+"+(fakee-o.length+ee);else o+="E+"+(fakee-ee);while(o.substr(0,2)==="0."){o=o[0]+o.substr(2,period)+"."+o.substr(2+period);o=o.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}o=o.replace(/\+-/,"-")}o=o.replace(/^([+-]?)([0-9]*)\.([0-9]*)[Ee]/,function($$,$1,$2,$3){return $1+$2+$3.substr(0,(period+ee)%period)+"."+$3.substr(ee)+"E"})}else o=val.toExponential(idx);if(fmt.match(/E\+00$/)&&o.match(/e[+-][0-9]$/))o=o.substr(0,o.length-1)+"0"+o[o.length-1];if(fmt.match(/E\-/)&&o.match(/e\+/))o=o.replace(/e\+/,"e");return o.replace("e","E")}if(fmt[0]==="$")return"$"+write_num(type,fmt.substr(fmt[1]==" "?2:1),val);var r,rr,ff,aval=val<0?-val:val,sign=val<0?"-":"";if(r=fmt.match(/# (\?+)([ ]?)\/([ ]?)(\d+)/)){var den=Number(r[4]),rnd=Math.round(aval*den),base=Math.floor(rnd/den);var myn=rnd-base*den,myd=den;return sign+(base?base:"")+" "+(myn===0?fill(" ",r[1].length+1+r[4].length):pad(myn,r[1].length," ")+r[2]+"/"+r[3]+pad(myd,r[4].length))}if(fmt.match(/^#+0+$/))fmt=fmt.replace(/#/g,"");if(fmt.match(/^00+$/))return(val<0?"-":"")+pad(Math.round(aval),fmt.length);if(fmt.match(/^[#?]+$/))return String(Math.round(val)).replace(/^0$/,"");if(r=fmt.match(/^#*0+\.(0+)/)){o=Math.round(val*Math.pow(10,r[1].length));return String(o/Math.pow(10,r[1].length)).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.([0-9]*)$/,function($$,$1){return"."+$1+fill("0",r[1].length-$1.length)})}fmt=fmt.replace(/^#+0/,"0");if(r=fmt.match(/^(0*)\.(#*)$/)){o=Math.round(aval*Math.pow(10,r[2].length));return sign+String(o/Math.pow(10,r[2].length)).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^([-]?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".")}if(r=fmt.match(/^#,##0([.]?)$/))return sign+commaify(String(Math.round(aval)));if(r=fmt.match(/^#,##0\.([#0]*0)$/)){rr=Math.round((val-Math.floor(val))*Math.pow(10,r[1].length));return val<0?"-"+write_num(type,fmt,-val):commaify(String(Math.floor(val)))+"."+pad(rr,r[1].length,0)}if(r=fmt.match(/^# ([?]+)([ ]?)\/([ ]?)([?]+)/)){rr=Math.min(Math.max(r[1].length,r[4].length),7);ff=frac(aval,Math.pow(10,rr)-1,true);return sign+(ff[0]||(ff[1]?"":"0"))+" "+(ff[1]?pad(ff[1],rr," ")+r[2]+"/"+r[3]+rpad(ff[2],rr," "):fill(" ",2*rr+1+r[2].length+r[3].length))}switch(fmt){case"0":case"#0":return Math.round(val);case"#.##":o=Math.round(val*100);return String(o/100).replace(/^([^\.]+)$/,"$1.").replace(/^0\.$/,".");case"#,###":var x=commaify(String(Math.round(aval)));return x!=="0"?sign+x:"";default:}throw new Error("unsupported format |"+fmt+"|")};function split_fmt(fmt){var out=[];var in_str=-1;for(var i=0,j=0;i=12?"P":"A";q.t="T";hr="h";i+=3}else if(fmt.substr(i,5)==="AM/PM"){q.v=dt.H>=12?"PM":"AM";q.t="T";i+=5;hr="h"}else{q.t="t";i++}out.push(q);lst=c;break;case"[":o=c;while(fmt[i++]!=="]"&&i-1)o+=c;out.push({t:"n",v:o});break;case"?":o=fmt[i];while(fmt[++i]===c)o+=c;q={t:c,v:o};out.push(q);lst=c;break;case"*":++i;if(fmt[i]==" ")++i;break;case"(":case")":out.push({t:flen===1?"t":c,v:c});++i;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":o=fmt[i];while("0123456789".indexOf(fmt[++i])>-1)o+=fmt[i];out.push({t:"D",v:o});break;case" ":out.push({t:c,v:c});++i;break;default:if(",$-+/():!^&'~{}<>=€".indexOf(c)===-1)throw"unrecognized character "+fmt[i]+" in "+fmt;out.push({t:"t",v:c});++i;break}}for(i=out.length-1,lst="t";i>=0;--i){switch(out[i].t){case"h":case"H":out[i].t=hr;lst="h";break;case"d":case"y":case"s":case"M":case"e":lst=out[i].t;break;case"m":if(lst==="s")out[i].t="M";break}}for(i=0;i-1||" t".indexOf(out[jj].t)>-1&&"?t".indexOf((out[jj+1]||{}).t)>-1&&(out[jj+1].t=="?"||out[jj+1].v=="/")||out[i].t=="("&&(out[jj].t==")"||out[jj].t=="n")||out[jj].t=="t"&&(out[jj].v=="/"||"$€".indexOf(out[jj].v)>-1||out[jj].v==" "&&(out[jj+1]||{}).t=="?"))){out[i].v+=out[jj].v;delete out[jj];++jj}out[i].v=write_num(out[i].t,out[i].v,flen>1&&v<0&&i>0&&out[i-1].v=="-"?-v:v);out[i].t="t";i=jj-1;break;case"G":out[i].t="t";out[i].v=general_fmt(v,opts);break}}return out.map(function(x){return x.v}).join("")}SSF._eval=eval_fmt;function choose_fmt(fmt,v,o){if(typeof fmt==="number")fmt=(o&&o.table?o.table:table_fmt)[fmt];if(typeof fmt==="string")fmt=split_fmt(fmt);var l=fmt.length;if(l<4&&fmt[l-1].indexOf("@")>-1)--l;switch(fmt.length){case 1:fmt=fmt[0].indexOf("@")>-1?["General","General","General",fmt[0]]:[fmt[0],fmt[0],fmt[0],"@"];break;case 2:fmt=fmt[1].indexOf("@")>-1?[fmt[0],fmt[0],fmt[0],fmt[1]]:[fmt[0],fmt[1],fmt[0],"@"];break;case 3:fmt=fmt[2].indexOf("@")>-1?[fmt[0],fmt[1],fmt[0],fmt[2]]:[fmt[0],fmt[1],fmt[2],"@"];break;case 4:break;default:throw"cannot find right format for |"+fmt+"|"}if(typeof v!=="number")return[fmt.length,fmt[3]];return[l,v>0?fmt[0]:v<0?fmt[1]:fmt[2]]}var format=function format(fmt,v,o){fixopts(o=o||{});if(typeof fmt==="string"&&fmt.toLowerCase()==="general")return general_fmt(v,o);if(typeof fmt==="number")fmt=(o.table||table_fmt)[fmt];var f=choose_fmt(fmt,v,o);if(f[1].toLowerCase()==="general")return general_fmt(v,o);if(v===true)v="TRUE";if(v===false)v="FALSE";if(v===""||typeof v==="undefined")return"";return eval_fmt(f[1],v,o,f[0])};SSF._choose=choose_fmt;SSF._table=table_fmt;SSF.load=function(fmt,idx){table_fmt[idx]=fmt};SSF.format=format;SSF.get_table=function(){return table_fmt};SSF.load_table=function(tbl){for(var i=0;i!=392;++i)if(tbl[i])SSF.load(tbl[i],i)}};make_ssf(SSF);var XLSX={};(function(XLSX){XLSX.version="0.5.13";var current_codepage,current_cptable,cptable;if(typeof module!=="undefined"&&typeof require!=="undefined"){if(typeof cptable==="undefined")cptable=require("codepage");current_codepage=1252;current_cptable=cptable[1252]}function reset_cp(){current_codepage=1252;if(typeof cptable!=="undefined")current_cptable=cptable[1252]}function _getchar(x){return String.fromCharCode(x)}function getdata(data){if(!data)return null;if(data.data)return data.name.substr(-4)!==".bin"?data.data:data.data.split("").map(function(x){return x.charCodeAt(0)});if(data.asNodeBuffer&&typeof Buffer!=="undefined"&&data.name.substr(-4)===".bin")return data.asNodeBuffer();if(data.asBinary&&data.name.substr(-4)!==".bin")return data.asBinary();if(data._data&&data._data.getContent){if(data.name.substr(-4)===".bin")return Array.prototype.slice.call(data._data.getContent());return Array.prototype.slice.call(data._data.getContent(),0).map(function(x){return String.fromCharCode(x)}).join("")}return null}function getzipfile(zip,file){var f=file;if(zip.files[f])return zip.files[f];f=file.toLowerCase();if(zip.files[f])return zip.files[f];f=f.replace(/\//g,"\\");if(zip.files[f])return zip.files[f];throw new Error("Cannot find file "+file+" in zip")}function getzipdata(zip,file,safe){if(!safe)return getdata(getzipfile(zip,file));if(!file)return null;try{return getzipdata(zip,file)}catch(e){return null}}var _fs,jszip;if(typeof JSZip!=="undefined")jszip=JSZip;if(typeof exports!=="undefined"){if(typeof module!=="undefined"&&module.exports){if(typeof Buffer!=="undefined"&&typeof jszip==="undefined")jszip=require("jszip");if(typeof jszip==="undefined")jszip=require("./jszip").JSZip;_fs=require("fs")}}var attregexg=/(\w+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var attregex=/(\w+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;function parsexmltag(tag){var words=tag.split(/\s+/);var z={0:words[0]};if(words.length===1)return z;(tag.match(attregexg)||[]).map(function(x){var y=x.match(attregex);z[y[1].replace(/^[a-zA-Z]*:/,"")]=y[2].substr(1,y[2].length-2)});return z}function evert(obj){var o={};Object.keys(obj).forEach(function(k){if(obj.hasOwnProperty(k))o[obj[k]]=k});return o}var encodings={""":'"',"'":"'",">":">","<":"<","&":"&"};var rencoding=evert(encodings);var rencstr="&<>'\"".split("");function unescapexml(text){var s=text+"";for(var y in encodings)s=s.replace(new RegExp(y,"g"),encodings[y]);return s.replace(/_x([0-9a-fA-F]*)_/g,function(m,c){return _chr(parseInt(c,16))})}function escapexml(text){var s=text+"";rencstr.forEach(function(y){s=s.replace(new RegExp(y,"g"),rencoding[y])});return s}function parsexmlbool(value,tag){switch(value){case"0":case 0:case"false":case"FALSE":return false;case"1":case 1:case"true":case"TRUE":return true;default:throw"bad boolean value "+value+" in "+(tag||"?")}}var utf8read=function(orig){var out=[],i=0,c=0,c1=0,c2=0,c3=0;while(i191&&c<224)out.push(_chr((c&31)<<6|c2&63));else{c3=orig.charCodeAt(i++);out.push(_chr((c&15)<<12|(c2&63)<<6|c3&63))}}}return out.join("")};function matchtag(f,g){return new RegExp("<"+f+'(?: xml:space="preserve")?>([^☃]*)'+f+">",(g||"")+"m")}function parseVector(data){var h=parsexmltag(data);var matches=data.match(new RegExp("(.*?)","g"))||[];if(matches.length!=h.size)throw"unexpected vector length "+matches.length+" != "+h.size;var res=[];matches.forEach(function(x){var v=x.replace(/<[/]?vt:variant>/g,"").match(/]*)>(.*));res.push({v:v[2],t:v[1]})});return res}function isval(x){return typeof x!=="undefined"&&x!==null}function readIEEE754(buf,idx,isLE,nl,ml){if(isLE===undefined)isLE=true;if(!nl)nl=8;if(!ml&&nl===8)ml=52;var e,m,el=nl*8-ml-1,eMax=(1<>1;var bits=-7,d=isLE?-1:1,i=isLE?nl-1:0,s=buf[idx+i];i+=d;e=s&(1<<-bits)-1;s>>>=-bits;bits+=el;for(;bits>0;e=e*256+buf[idx+i],i+=d,bits-=8);m=e&(1<<-bits)-1;e>>>=-bits;bits+=ml;for(;bits>0;m=m*256+buf[idx+i],i+=d,bits-=8);if(e===eMax)return m?NaN:(s?-1:1)*Infinity;else if(e===0)e=1-eBias;else{m=m+Math.pow(2,ml);e=e-eBias}return(s?-1:1)*m*Math.pow(2,e-ml)}var __toBuffer;if(typeof Buffer!=="undefined"){Buffer.prototype.hexlify=function(){return this.toString("hex")};__toBuffer=function(bufs){return Buffer.concat(bufs[0])}}else{__toBuffer=function(bufs){var x=[];for(var i=0;i!=bufs[0].length;++i){x=x.concat(bufs[0][i])}return x}}var __readUInt8=function(b,idx){return b.readUInt8?b.readUInt8(idx):b[idx]};var __readUInt16LE=function(b,idx){return b.readUInt16LE?b.readUInt16LE(idx):b[idx+1]*(1<<8)+b[idx]};var __readInt16LE=function(b,idx){var u=__readUInt16LE(b,idx);if(!(u&32768))return u;return(65535-u+1)*-1};var __readUInt32LE=function(b,idx){return b.readUInt32LE?b.readUInt32LE(idx):b[idx+3]*(1<<24)+b[idx+2]*(1<<16)+b[idx+1]*(1<<8)+b[idx]};var __readInt32LE=function(b,idx){if(b.readInt32LE)return b.readInt32LE(idx);var u=__readUInt32LE(b,idx);if(!(u&2147483648))return u;return(4294967295-u+1)*-1};var __readDoubleLE=function(b,idx){return b.readDoubleLE?b.readDoubleLE(idx):readIEEE754(b,idx||0)};function ReadShift(size,t){var o="",oo=[],w,vv,i,loc;t=t||"u";if(size==="ieee754"){size=8;t="f"}switch(size){case 1:o=__readUInt8(this,this.l);break;case 2:o=(t==="u"?__readUInt16LE:__readInt16LE)(this,this.l);break;case 4:o=__readUInt32LE(this,this.l);break;case 8:if(t==="f"){o=__readDoubleLE(this,this.l);break}case 16:o=this.toString("hex",this.l,this.l+size);break;case"dbcs":size=2*t;loc=this.l;for(i=0;i!=t;++i){oo.push(_getchar(__readUInt16LE(this,loc)));loc+=2}o=oo.join("");break;case"sbcs":size=t;o="";loc=this.l;for(i=0;i!=t;++i){o+=_getchar(__readUInt8(this,loc));loc+=1}break}this.l+=size;return o}function prep_blob(blob,pos){blob.read_shift=ReadShift.bind(blob);blob.l=pos||0;var read=ReadShift.bind(blob);return[read]}function parsenoop(blob,length){blob.l+=length}var recordhopper=function(data,cb,opts){var tmpbyte,cntbyte,length;prep_blob(data,data.l||0);while(data.l"+escapexml(str)+"",h:str};if(fRichStr){var dwSizeStrRun=data.read_shift(4);for(var i=0;i!=dwSizeStrRun;++i)rgsStrRun.push(parse_StrRun(data))}if(fExtStr){}data.l=start+length;return z};function parse_Cell(data){var col=data.read_shift(4);var iStyleRef=data.read_shift(2);iStyleRef+=data.read_shift(1)<<16;var fPhShow=data.read_shift(1);return{c:col,iStyleRef:iStyleRef}}var parse_CodeName=function(data,length){return parse_XLWideString(data,length)};var parse_RelID=function(data,length){return parse_XLNullableWideString(data,length)};function parse_RkNumber(data){var b=data.slice(data.l,data.l+4);var fX100=b[0]&1,fInt=b[0]&2;data.l+=4;b[0]&=~3;var RK=fInt===0?__readDoubleLE([0,0,0,0,b[0],b[1],b[2],b[3]],0):__readInt32LE(b,0)>>2;return fX100?RK/100:RK}var parse_UncheckedRfX=function(data){var cell={s:{},e:{}};cell.s.r=data.read_shift(4);cell.e.r=data.read_shift(4);cell.s.c=data.read_shift(4);cell.e.c=data.read_shift(4);return cell};var parse_XLNullableWideString=function(data){var cchCharacters=data.read_shift(4);return cchCharacters===0||cchCharacters===4294967295?"":data.read_shift("dbcs",cchCharacters)};var parse_XLWideString=function(data){var cchCharacters=data.read_shift(4);return cchCharacters===0?"":data.read_shift("dbcs",cchCharacters)};function parse_Xnum(data,length){return data.read_shift("ieee754")}var BErr={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var RBErr=evert(BErr);var parse_rs=function(){var tregex=matchtag("t"),rpregex=matchtag("rPr");var parse_rpr=function(rpr,intro,outro){var font={};(rpr.match(/<[^>]*>/g)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":break;case"":break;case"":font.strike=1;break;case"":break;case"":font.u=1;break;case"":break;case"":font.b=1;break;case"":break;case"":font.i=1;break;case"":break;case"');outro.push("")};function parse_r(r){var terms=[[],"",[]];var t=r.match(tregex);if(!isval(t))return"";terms[1]=t[1];var rpr=r.match(rpregex);if(isval(rpr))parse_rpr(rpr[1],terms[0],terms[2]);return terms[0].join("")+terms[1].replace(/\r\n/g,"
")+terms[2].join("")}return function(rs){return rs.replace(//g,"").split(/<\/r>/).map(parse_r).join("")}}();var parse_si=function(x,opts){var html=opts?opts.cellHTML:true;var z={};if(!x)return null;var y;if(x[1]==="t"){z.t=utf8read(unescapexml(x.substr(x.indexOf(">")+1).split(/<\/t>/)[0]));z.r=x;if(html)z.h=z.t}else if(y=x.match(//)){z.r=x;z.t=utf8read(unescapexml(x.replace(/<[^>]*>/gm,"")));if(html)z.h=parse_rs(x)}return z};var parse_sst_xml=function(data,opts){var s=[];var sst=data.match(new RegExp("]*)>([\\s\\S]*)","m"));if(isval(sst)){s=sst[2].replace(/<(?:si|sstItem)>/g,"").split(/<\/(?:si|sstItem)>/).map(function(x){return parse_si(x,opts)}).filter(function(x){return x});sst=parsexmltag(sst[1]);s.Count=sst.count;s.Unique=sst.uniqueCount}return s};var parse_BrtBeginSst=function(data,length){return[data.read_shift(4),data.read_shift(4)]};var parse_sst_bin=function(data,opts){var s=[];recordhopper(data,function(val,R){switch(R.n){case"BrtBeginSst":s.Count=val[0];s.Unique=val[1];break;case"BrtSSTItem":s.push(val);break;case"BrtEndSst":return true;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return s};var styles={};function parseNumFmts(t){styles.NumberFmt=[];for(var y in SSF._table)styles.NumberFmt[y]=SSF._table[y];t[0].match(/<[^>]*>/g).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":case"":break;case"0)SSF.load(f,i)}break;default:throw"unrecognized "+y[0]+" in numFmts"}})}function parseCXfs(t){styles.CellXf=[];t[0].match(/<[^>]*>/g).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":case"":break;case"":break;case"":case"":break;case"":break;case"]*)>.*<\/numFmts>/))parseNumFmts(t);if(t=data.match(/]*)>.*<\/cellXfs>/))parseCXfs(t);return styles}function parse_BrtFmt(data,length){var ifmt=data.read_shift(2);var stFmtCode=parse_XLWideString(data,length-2);return[ifmt,stFmtCode]}function parse_BrtXF(data,length){var ixfeParent=data.read_shift(2);var ifmt=data.read_shift(2);parsenoop(data,length-4);return{ixfe:ixfeParent,ifmt:ifmt}}function parse_sty_bin(data,opts){styles.NumberFmt=[];for(var y in SSF._table)styles.NumberFmt[y]=SSF._table[y];styles.CellXf=[];var state="";var pass=false;recordhopper(data,function(val,R,RT){switch(R.n){case"BrtFmt":styles.NumberFmt[val[0]]=val[1];SSF.load(val[1],val[0]);break;case"BrtFont":break;case"BrtKnownFonts":break;case"BrtFill":break;case"BrtBorder":break;case"BrtXF":if(state==="CELLXFS"){styles.CellXf.push(val)}break;case"BrtStyle":break;case"BrtRowHdr":break;case"BrtCellMeta":break;case"BrtDXF":break;case"BrtMRUColor":break;case"BrtIndexedColor":break;case"BrtBeginStyleSheet":break;case"BrtEndStyleSheet":break;case"BrtBeginTableStyle":break;case"BrtTableStyleElement":break;case"BrtEndTableStyle":break;case"BrtBeginFmts":state="FMTS";break;case"BrtEndFmts":state="";break;case"BrtBeginFonts":state="FONTS";break;case"BrtEndFonts":state="";break;case"BrtACBegin":state="ACFONTS";break;case"BrtACEnd":state="";break;case"BrtBeginFills":state="FILLS";break;case"BrtEndFills":state="";break;case"BrtBeginBorders":state="BORDERS";break;case"BrtEndBorders":state="";break;case"BrtBeginCellStyleXFs":state="CELLSTYLEXFS";break;case"BrtEndCellStyleXFs":state="";break;case"BrtBeginCellXFs":state="CELLXFS";break;case"BrtEndCellXFs":state="";break;case"BrtBeginStyles":state="STYLES";break;case"BrtEndStyles":state="";break;case"BrtBeginDXFs":state="DXFS";break;case"BrtEndDXFs":state="";break;case"BrtBeginTableStyles":state="TABLESTYLES";break;case"BrtEndTableStyles":state="";break;case"BrtBeginColorPalette":state="COLORPALETTE";break;case"BrtEndColorPalette":state="";break;case"BrtBeginIndexedColors":state="INDEXEDCOLORS";break;case"BrtEndIndexedColors":state="";break;case"BrtBeginMRUColors":state="MRUCOLORS";break;case"BrtEndMRUColors":state="";break;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;case"BrtBeginStyleSheetExt14":break;case"BrtBeginSlicerStyles":break;case"BrtEndSlicerStyles":break;case"BrtBeginTimelineStylesheetExt15":break;case"BrtEndTimelineStylesheetExt15":break;case"BrtBeginTimelineStyles":break;case"BrtEndTimelineStyles":break;case"BrtEndStyleSheetExt14":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return styles}var ct2type={"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.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments",foo:"bar"};var XMLNS_CT="http://schemas.openxmlformats.org/package/2006/content-types";function parseProps(data){var p={Company:""},q={};var strings=["Application","DocSecurity","Company","AppVersion"];var bools=["HyperlinksChanged","SharedDoc","LinksUpToDate","ScaleCrop"];var xtra=["HeadingPairs","TitlesOfParts"];var xtracp=["category","contentStatus","lastModifiedBy","lastPrinted","revision","version"];var xtradc=["creator","description","identifier","language","subject","title"];var xtradcterms=["created","modified"];xtra=xtra.concat(xtracp.map(function(x){return"cp:"+x}));xtra=xtra.concat(xtradc.map(function(x){return"dc:"+x}));xtra=xtra.concat(xtradcterms.map(function(x){return"dcterms:"+x}));strings.forEach(function(f){p[f]=(data.match(matchtag(f))||[])[1]});bools.forEach(function(f){p[f]=(data.match(matchtag(f))||[])[1]=="true"});xtra.forEach(function(f){var cur=data.match(new RegExp("<"+f+"[^>]*>(.*)"+f+">"));if(cur&&cur.length>0)q[f]=cur[1]});if(q.HeadingPairs&&q.TitlesOfParts){var v=parseVector(q.HeadingPairs);var j=0,widx=0;for(var i=0;i!==v.length;++i){switch(v[i].v){case"Worksheets":widx=j;p.Worksheets=+v[++i].v;break;case"Named Ranges":++i;break}}var parts=parseVector(q.TitlesOfParts).map(function(x){return utf8read(x.v)});p.SheetNames=parts.slice(widx,widx+p.Worksheets)}p.Creator=q["dc:creator"];p.LastModifiedBy=q["cp:lastModifiedBy"];p.CreatedDate=new Date(q["dcterms:created"]);p.ModifiedDate=new Date(q["dcterms:modified"]);return p}function parseCustomProps(data){var p={},name;data.match(/<[^>]+>([^<]*)/g).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":name=null;break;default:if(x.indexOf("");var type=toks[0].substring(4),text=toks[1];switch(type){case"lpstr":case"lpwstr":case"bstr":case"lpwstr":p[name]=unescapexml(text);break;case"bool":p[name]=parsexmlbool(text,"");break;case"i1":case"i2":case"i4":case"i8":case"int":case"uint":p[name]=parseInt(text,10);break;case"r4":case"r8":case"decimal":p[name]=parseFloat(text);break;case"filetime":case"date":p[name]=text;break;case"cy":case"error":p[name]=unescapexml(text);break;default:console.warn("Unexpected",x,type,toks)}}}});return p}function parseDeps(data){var d=[];var l=0,i=1;(data.match(/<[^>]*>/g)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":case"":break;case"]*>/g)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"0?ct.calcchains[0]:"";ct.sst=ct.strs.length>0?ct.strs[0]:"";ct.style=ct.styles.length>0?ct.styles[0]:"";delete ct.calcchains;return ct}function parseRels(data,currentFilePath){if(!data)return data;if(currentFilePath.charAt(0)!=="/"){currentFilePath="/"+currentFilePath}var rels={};var resolveRelativePathIntoAbsolute=function(to){var toksFrom=currentFilePath.split("/");
-toksFrom.pop();var toksTo=to.split("/");var reversed=[];while(toksTo.length!==0){var tokTo=toksTo.shift();if(tokTo===".."){toksFrom.pop()}else if(tokTo!=="."){toksFrom.push(tokTo)}}return toksFrom.join("/")};data.match(/<[^>]*>/g).forEach(function(x){var y=parsexmltag(x);if(y[0]==="/))return[];var authors=[];var commentList=[];data.match(/([^\u2603]*)<\/authors>/m)[1].split("").forEach(function(x){if(x===""||x.trim()==="")return;authors.push(x.match(/]*>(.*)/)[1])});data.match(/([^\u2603]*)<\/commentList>/m)[1].split("").forEach(function(x,index){if(x===""||x.trim()==="")return;var y=parsexmltag(x.match(/]*>/)[0]);var comment={author:y.authorId&&authors[y.authorId]?authors[y.authorId]:undefined,ref:y.ref,guid:y.guid};var cell=decode_cell(y.ref);if(opts.sheetRows&&opts.sheetRows<=cell.r)return;var textMatch=x.match(/([^\u2603]*)<\/text>/m);if(!textMatch||!textMatch[1])return;var rt=parse_si(textMatch[1]);comment.r=rt.r;comment.t=rt.t;if(opts.cellHTML)comment.h=rt.h;commentList.push(comment)});return commentList}function parse_comments(zip,dirComments,sheets,sheetRels,opts){for(var i=0;i!=dirComments.length;++i){var canonicalpath=dirComments[i];var comments=parse_comments_xml(getzipdata(zip,canonicalpath.replace(/^\//,""),true),opts);if(!comments||!comments.length)continue;var sheetNames=Object.keys(sheets);for(var j=0;j!=sheetNames.length;++j){var sheetName=sheetNames[j];var rels=sheetRels[sheetName];if(rels){var rel=rels[canonicalpath];if(rel)insertCommentsIntoSheet(sheetName,sheets[sheetName],comments)}}}}function insertCommentsIntoSheet(sheetName,sheet,comments){comments.forEach(function(comment){var cell=sheet[comment.ref];if(!cell){cell={};sheet[comment.ref]=cell;var range=decode_range(sheet["!ref"]);var thisCell=decode_cell(comment.ref);if(range.s.r>thisCell.r)range.s.r=thisCell.r;if(range.e.rthisCell.c)range.s.c=thisCell.c;if(range.e.c/);if(ref&&ref.length==2&&ref[1].indexOf(":")!==-1)s["!ref"]=ref[1];var mergecells=[];if(data.match(/<\/mergeCells>/)){var merges=data.match(//g);mergecells=merges.map(function(range){return decode_range(//.exec(range)[1])})}var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var q=["v","f"];var sidx=0;if(!data.match(//))data.match(/([^\u2603]*)<\/sheetData>/m)[1].split("").forEach(function(x){if(x===""||x.trim()==="")return;var row=parsexmltag(x.match(/]*>/)[0]);if(opts.sheetRows&&opts.sheetRows<+row.r)return;if(refguess.s.r>row.r-1)refguess.s.r=row.r-1;if(refguess.e.r")+1).split(/]*>/)||[c])[0]);delete cell[0];var d=c.substr(c.indexOf(">")+1);var p={};q.forEach(function(f){var x=d.match(matchtag(f));if(x)p[f]=unescapexml(x[1])});if(cell.t===undefined&&p.v===undefined){if(!opts.sheetStubs)return;p.t="str";p.v=undefined}else p.t=cell.t?cell.t:"n";if(refguess.s.c>idx)refguess.s.c=idx;if(refguess.e.c(.*)<\/is>/);is=is?parse_si(is[1]):{t:"",r:""};p.t="str";p.v=is.t;break;case"b":if(typeof p.v!=="boolean")p.v=parsexmlbool(p.v);break;case"d":var epoch=Date.parse(p.v);p.v=(epoch-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);p.t="n";break;case"e":p.raw=RBErr[p.v];break}var fmtid=0;if(cell.s&&styles.CellXf){var cf=styles.CellXf[cell.s];if(cf&&cf.numFmtId)fmtid=cf.numFmtId}try{p.w=SSF.format(fmtid,p.v,_ssfopts);if(opts.cellNF)p.z=SSF._table[fmtid]}catch(e){if(opts.WTF)throw e}s[cell.r]=p})});if(!s["!ref"])s["!ref"]=encode_range(refguess);if(opts.sheetRows){var tmpref=decode_range(s["!ref"]);if(opts.sheetRows<+tmpref.e.r){tmpref.e.r=opts.sheetRows-1;if(tmpref.e.r>refguess.e.r)tmpref.e.r=refguess.e.r;if(tmpref.e.rrefguess.e.c)tmpref.e.c=refguess.e.c;if(tmpref.e.c0)s["!merges"]=mergecells;return s}var parse_BrtRowHdr=function(data,length){var z={};z.r=data.read_shift(4);data.l+=length-4;return z};var parse_BrtWsDim=parse_UncheckedRfX;var parse_BrtWsProp=function(data,length){var z={};data.l+=19;z.name=parse_CodeName(data,length-19);return z};var parse_BrtCellBlank=parsenoop;var parse_BrtCellBool=function(data,length){var cell=parse_Cell(data);var fBool=data.read_shift(1);return[cell,fBool,"b"]};var parse_BrtCellError=function(data,length){var cell=parse_Cell(data);var fBool=data.read_shift(1);return[cell,fBool,"e"]};var parse_BrtCellIsst=function(data,length){var cell=parse_Cell(data);var isst=data.read_shift(4);return[cell,isst,"s"]};var parse_BrtCellReal=function(data,length){var cell=parse_Cell(data);var value=parse_Xnum(data);return[cell,value,"n"]};var parse_BrtCellRk=function(data,length){var cell=parse_Cell(data);var value=parse_RkNumber(data);return[cell,value,"n"]};var parse_BrtCellSt=function(data,length){var cell=parse_Cell(data);var value=parse_XLWideString(data);return[cell,value,"str"]};var parse_BrtFmlaBool=function(data,length,opts){var cell=parse_Cell(data);var value=data.read_shift(1);var o=[cell,value,"b"];if(opts.cellFormula){var formula=parse_CellParsedFormula(data,length-9);o[3]=""}else data.l+=length-9;return o};var parse_BrtFmlaError=function(data,length,opts){var cell=parse_Cell(data);var value=data.read_shift(1);var o=[cell,value,"e"];if(opts.cellFormula){var formula=parse_CellParsedFormula(data,length-9);o[3]=""}else data.l+=length-9;return o};var parse_BrtFmlaNum=function(data,length,opts){var cell=parse_Cell(data);var value=parse_Xnum(data);var o=[cell,value,"n"];if(opts.cellFormula){var formula=parse_CellParsedFormula(data,length-16);o[3]=""}else data.l+=length-16;return o};var parse_BrtFmlaString=function(data,length,opts){var start=data.l;var cell=parse_Cell(data);var value=parse_XLWideString(data);var o=[cell,value,"str"];if(opts.cellFormula){var formula=parse_CellParsedFormula(data,start+length-data.l);o[3]=""}else data.l=start+length;return o};var parse_BrtMergeCell=parse_UncheckedRfX;var parse_ws_bin=function(data,opts){if(!data)return data;var s={};var ref;var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var pass=false,end=false;var row,p,cf;var mergecells=[];recordhopper(data,function(val,R){if(end)return;switch(R.n){case"BrtWsDim":ref=val;break;case"BrtRowHdr":row=val;if(opts.sheetRows&&opts.sheetRows<=row.r)end=true;break;case"BrtFmlaBool":case"BrtFmlaError":case"BrtFmlaNum":case"BrtFmlaString":case"BrtCellBool":case"BrtCellError":case"BrtCellIsst":case"BrtCellReal":case"BrtCellRk":case"BrtCellSt":p={t:val[2]};switch(val[2]){case"n":p.v=val[1];break;case"s":p.v=strs[val[1]].t;p.r=strs[val[1]].r;break;case"b":p.v=val[1]?true:false;break;case"e":p.raw=val[1];p.v=BErr[p.raw];break;case"str":p.v=utf8read(val[1]);break}if(opts.cellFormula&&val.length>3)p.f=val[3];if(cf=styles.CellXf[val[0].iStyleRef])try{p.w=SSF.format(cf.ifmt,p.v,_ssfopts);if(opts.cellNF)p.z=SSF._table[cf.ifmt]}catch(e){if(opts.WTF)throw e}s[encode_cell({c:val[0].c,r:row.r})]=p;if(refguess.s.r>row.r)refguess.s.r=row.r;if(refguess.s.c>val[0].c)refguess.s.c=val[0].c;if(refguess.e.rrefguess.e.r)tmpref.e.r=refguess.e.r;if(tmpref.e.rrefguess.e.c)tmpref.e.c=refguess.e.c;if(tmpref.e.c0)s["!merges"]=mergecells;return s};var WBPropsDef={allowRefreshQuery:"0",autoCompressPictures:"1",backupFile:"0",checkCompatibility:"0",codeName:"",date1904:"0",dateCompatibility:"1",filterPrivacy:"0",hidePivotFieldList:"0",promptedSolutions:"0",publishItems:"0",refreshAllConnections:false,saveExternalLinkValues:"1",showBorderUnselectedTables:"1",showInkAnnotation:"1",showObjects:"all",showPivotChartFilter:"0"};var WBViewDef={activeTab:"0",autoFilterDateGrouping:"1",firstSheet:"0",minimized:"0",showHorizontalScroll:"1",showSheetTabs:"1",showVerticalScroll:"1",tabRatio:"600",visibility:"visible"};var SheetDef={state:"visible"};var CalcPrDef={calcCompleted:"true",calcMode:"auto",calcOnSave:"true",concurrentCalc:"true",fullCalcOnLoad:"false",fullPrecision:"true",iterate:"false",iterateCount:"100",iterateDelta:"0.001",refMode:"A1"};var CustomWBViewDef={autoUpdate:"false",changesSavedWin:"false",includeHiddenRowCol:"true",includePrintSettings:"true",maximized:"false",minimized:"false",onlySync:"false",personalView:"false",showComments:"commIndicator",showFormulaBar:"true",showHorizontalScroll:"true",showObjects:"all",showSheetTabs:"true",showStatusbar:"true",showVerticalScroll:"true",tabRatio:"600",xWindow:"0",yWindow:"0"};var XMLNS_WB=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];function parse_wb_xml(data){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var pass=false;data.match(/<[^>]*>/g).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":break;case"":break;case"":break;case"":delete y[0];wb.WBProps=y;break;case"":break;case"":case"":break;case"":case"":break;case"":break;case"":break;case"":break;case"":pass=true;break;case"":pass=false;break;case"":case"":break;case"":delete y[0];wb.CalcPr=y;break;case"":case"":case"":break;case"":case"":case"":break;case"":case"":break;case"":break;case"":break;case"":case"":break;case"":case"":case"":break;case"":pass=false;break;case"":pass=false;break}});if(XMLNS_WB.indexOf(wb.xmlns)===-1)throw new Error("Unknown Namespace: "+wb.xmlns);var z;for(z in WBPropsDef)if(typeof wb.WBProps[z]==="undefined")wb.WBProps[z]=WBPropsDef[z];for(z in CalcPrDef)if(typeof wb.CalcPr[z]==="undefined")wb.CalcPr[z]=CalcPrDef[z];wb.WBView.forEach(function(w){for(var z in WBViewDef)if(typeof w[z]==="undefined")w[z]=WBViewDef[z]});wb.Sheets.forEach(function(w){for(var z in SheetDef)if(typeof w[z]==="undefined")w[z]=SheetDef[z]});_ssfopts.date1904=parsexmlbool(wb.WBProps.date1904,"date1904");return wb}var parse_BrtBundleSh=function(data,length){var z={};z.hsState=data.read_shift(4);z.iTabID=data.read_shift(4);z.strRelID=parse_RelID(data,length-8);z.name=parse_XLWideString(data);return z};var parse_wb_bin=function(data,opts){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var pass=false,z;recordhopper(data,function(val,R){switch(R.n){case"BrtBundleSh":wb.Sheets.push(val);break;case"BrtBeginBook":break;case"BrtFileVersion":break;case"BrtWbProp":break;case"BrtACBegin":break;case"BrtAbsPath15":break;case"BrtACEnd":break;case"BrtBookProtection":break;case"BrtBeginBookViews":break;case"BrtBookView":break;case"BrtEndBookViews":break;case"BrtBeginBundleShs":break;case"BrtEndBundleShs":break;case"BrtBeginFnGroup":break;case"BrtEndFnGroup":break;case"BrtBeginExternals":break;case"BrtSupSelf":break;case"BrtSupBookSrc":break;case"BrtExternSheet":break;case"BrtEndExternals":break;case"BrtName":break;case"BrtCalcProp":break;case"BrtUserBookView":break;case"BrtBeginPivotCacheIDs":break;case"BrtBeginPivotCacheID":break;case"BrtEndPivotCacheID":break;case"BrtEndPivotCacheIDs":break;case"BrtWebOpt":break;case"BrtFileRecover":break;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;case"BrtEndBook":break;default:if(!pass)throw new Error("Unexpected record "+R.n)}});for(z in WBPropsDef)if(typeof wb.WBProps[z]==="undefined")wb.WBProps[z]=WBPropsDef[z];for(z in CalcPrDef)if(typeof wb.CalcPr[z]==="undefined")wb.CalcPr[z]=CalcPrDef[z];wb.WBView.forEach(function(w){for(var z in WBViewDef)if(typeof w[z]==="undefined")w[z]=WBViewDef[z]});wb.Sheets.forEach(function(w){for(var z in SheetDef)if(typeof w[z]==="undefined")w[z]=SheetDef[z]});_ssfopts.date1904=parsexmlbool(wb.WBProps.date1904,"date1904");return wb};function parse_wb(data,name,opts){return name.substr(-4)===".bin"?parse_wb_bin(data,opts):parse_wb_xml(data,opts)}function parse_ws(data,name,opts){return name.substr(-4)===".bin"?parse_ws_bin(data,opts):parse_ws_xml(data,opts)}function parse_sty(data,name,opts){return name.substr(-4)===".bin"?parse_sty_bin(data,opts):parse_sty_xml(data,opts)}function parse_sst(data,name,opts){return name.substr(-4)===".bin"?parse_sst_bin(data,opts):parse_sst_xml(data,opts)}var RecordEnum={0:{n:"BrtRowHdr",f:parse_BrtRowHdr},1:{n:"BrtCellBlank",f:parse_BrtCellBlank},2:{n:"BrtCellRk",f:parse_BrtCellRk},3:{n:"BrtCellError",f:parse_BrtCellError},4:{n:"BrtCellBool",f:parse_BrtCellBool},5:{n:"BrtCellReal",f:parse_BrtCellReal},6:{n:"BrtCellSt",f:parse_BrtCellSt},7:{n:"BrtCellIsst",f:parse_BrtCellIsst},8:{n:"BrtFmlaString",f:parse_BrtFmlaString},9:{n:"BrtFmlaNum",f:parse_BrtFmlaNum},10:{n:"BrtFmlaBool",f:parse_BrtFmlaBool},11:{n:"BrtFmlaError",f:parse_BrtFmlaError},19:{n:"BrtSSTItem",f:parse_RichStr},20:{n:"BrtPCDIMissing",f:parsenoop},21:{n:"BrtPCDINumber",f:parsenoop},22:{n:"BrtPCDIBoolean",f:parsenoop},23:{n:"BrtPCDIError",f:parsenoop},24:{n:"BrtPCDIString",f:parsenoop},25:{n:"BrtPCDIDatetime",f:parsenoop},26:{n:"BrtPCDIIndex",f:parsenoop},27:{n:"BrtPCDIAMissing",f:parsenoop},28:{n:"BrtPCDIANumber",f:parsenoop},29:{n:"BrtPCDIABoolean",f:parsenoop},30:{n:"BrtPCDIAError",f:parsenoop},31:{n:"BrtPCDIAString",f:parsenoop},32:{n:"BrtPCDIADatetime",f:parsenoop},33:{n:"BrtPCRRecord",f:parsenoop},34:{n:"BrtPCRRecordDt",f:parsenoop},35:{n:"BrtFRTBegin",f:parsenoop},36:{n:"BrtFRTEnd",f:parsenoop},37:{n:"BrtACBegin",f:parsenoop},38:{n:"BrtACEnd",f:parsenoop},39:{n:"BrtName",f:parsenoop},40:{n:"BrtIndexRowBlock",f:parsenoop},42:{n:"BrtIndexBlock",f:parsenoop},43:{n:"BrtFont",f:parsenoop},44:{n:"BrtFmt",f:parse_BrtFmt},45:{n:"BrtFill",f:parsenoop},46:{n:"BrtBorder",f:parsenoop},47:{n:"BrtXF",f:parse_BrtXF},48:{n:"BrtStyle",f:parsenoop},49:{n:"BrtCellMeta",f:parsenoop},50:{n:"BrtValueMeta",f:parsenoop},51:{n:"BrtMdb",f:parsenoop},52:{n:"BrtBeginFmd",f:parsenoop},53:{n:"BrtEndFmd",f:parsenoop},54:{n:"BrtBeginMdx",f:parsenoop},55:{n:"BrtEndMdx",f:parsenoop},56:{n:"BrtBeginMdxTuple",f:parsenoop},57:{n:"BrtEndMdxTuple",f:parsenoop},58:{n:"BrtMdxMbrIstr",f:parsenoop},59:{n:"BrtStr",f:parsenoop},60:{n:"BrtColInfo",f:parsenoop},62:{n:"BrtCellRString",f:parsenoop},64:{n:"BrtDVal",f:parsenoop},65:{n:"BrtSxvcellNum",f:parsenoop},66:{n:"BrtSxvcellStr",f:parsenoop},67:{n:"BrtSxvcellBool",f:parsenoop},68:{n:"BrtSxvcellErr",f:parsenoop},69:{n:"BrtSxvcellDate",f:parsenoop},70:{n:"BrtSxvcellNil",f:parsenoop},128:{n:"BrtFileVersion",f:parsenoop},129:{n:"BrtBeginSheet",f:parsenoop},130:{n:"BrtEndSheet",f:parsenoop},131:{n:"BrtBeginBook",f:parsenoop},132:{n:"BrtEndBook",f:parsenoop},133:{n:"BrtBeginWsViews",f:parsenoop},134:{n:"BrtEndWsViews",f:parsenoop},135:{n:"BrtBeginBookViews",f:parsenoop},136:{n:"BrtEndBookViews",f:parsenoop},137:{n:"BrtBeginWsView",f:parsenoop},138:{n:"BrtEndWsView",f:parsenoop},139:{n:"BrtBeginCsViews",f:parsenoop},140:{n:"BrtEndCsViews",f:parsenoop},141:{n:"BrtBeginCsView",f:parsenoop},142:{n:"BrtEndCsView",f:parsenoop},143:{n:"BrtBeginBundleShs",f:parsenoop},144:{n:"BrtEndBundleShs",f:parsenoop},145:{n:"BrtBeginSheetData",f:parsenoop},146:{n:"BrtEndSheetData",f:parsenoop},147:{n:"BrtWsProp",f:parse_BrtWsProp},148:{n:"BrtWsDim",f:parse_BrtWsDim},151:{n:"BrtPane",f:parsenoop},152:{n:"BrtSel",f:parsenoop},153:{n:"BrtWbProp",f:parsenoop},154:{n:"BrtWbFactoid",f:parsenoop},155:{n:"BrtFileRecover",f:parsenoop},156:{n:"BrtBundleSh",f:parse_BrtBundleSh},157:{n:"BrtCalcProp",f:parsenoop},158:{n:"BrtBookView",f:parsenoop},159:{n:"BrtBeginSst",f:parse_BrtBeginSst},160:{n:"BrtEndSst",f:parsenoop},161:{n:"BrtBeginAFilter",f:parsenoop},162:{n:"BrtEndAFilter",f:parsenoop},163:{n:"BrtBeginFilterColumn",f:parsenoop},164:{n:"BrtEndFilterColumn",f:parsenoop},165:{n:"BrtBeginFilters",f:parsenoop},166:{n:"BrtEndFilters",f:parsenoop},167:{n:"BrtFilter",f:parsenoop},168:{n:"BrtColorFilter",f:parsenoop},169:{n:"BrtIconFilter",f:parsenoop},170:{n:"BrtTop10Filter",f:parsenoop},171:{n:"BrtDynamicFilter",f:parsenoop},172:{n:"BrtBeginCustomFilters",f:parsenoop},173:{n:"BrtEndCustomFilters",f:parsenoop},174:{n:"BrtCustomFilter",f:parsenoop},175:{n:"BrtAFilterDateGroupItem",f:parsenoop},176:{n:"BrtMergeCell",f:parse_BrtMergeCell},177:{n:"BrtBeginMergeCells",f:parsenoop},178:{n:"BrtEndMergeCells",f:parsenoop},179:{n:"BrtBeginPivotCacheDef",f:parsenoop},180:{n:"BrtEndPivotCacheDef",f:parsenoop},181:{n:"BrtBeginPCDFields",f:parsenoop},182:{n:"BrtEndPCDFields",f:parsenoop},183:{n:"BrtBeginPCDField",f:parsenoop},184:{n:"BrtEndPCDField",f:parsenoop},185:{n:"BrtBeginPCDSource",f:parsenoop},186:{n:"BrtEndPCDSource",f:parsenoop},187:{n:"BrtBeginPCDSRange",f:parsenoop},188:{n:"BrtEndPCDSRange",f:parsenoop},189:{n:"BrtBeginPCDFAtbl",f:parsenoop},190:{n:"BrtEndPCDFAtbl",f:parsenoop},191:{n:"BrtBeginPCDIRun",f:parsenoop},192:{n:"BrtEndPCDIRun",f:parsenoop},193:{n:"BrtBeginPivotCacheRecords",f:parsenoop},194:{n:"BrtEndPivotCacheRecords",f:parsenoop},195:{n:"BrtBeginPCDHierarchies",f:parsenoop},196:{n:"BrtEndPCDHierarchies",f:parsenoop},197:{n:"BrtBeginPCDHierarchy",f:parsenoop},198:{n:"BrtEndPCDHierarchy",f:parsenoop},199:{n:"BrtBeginPCDHFieldsUsage",f:parsenoop},200:{n:"BrtEndPCDHFieldsUsage",f:parsenoop},201:{n:"BrtBeginExtConnection",f:parsenoop},202:{n:"BrtEndExtConnection",f:parsenoop},203:{n:"BrtBeginECDbProps",f:parsenoop},204:{n:"BrtEndECDbProps",f:parsenoop},205:{n:"BrtBeginECOlapProps",f:parsenoop},206:{n:"BrtEndECOlapProps",f:parsenoop},207:{n:"BrtBeginPCDSConsol",f:parsenoop},208:{n:"BrtEndPCDSConsol",f:parsenoop},209:{n:"BrtBeginPCDSCPages",f:parsenoop},210:{n:"BrtEndPCDSCPages",f:parsenoop},211:{n:"BrtBeginPCDSCPage",f:parsenoop},212:{n:"BrtEndPCDSCPage",f:parsenoop},213:{n:"BrtBeginPCDSCPItem",f:parsenoop},214:{n:"BrtEndPCDSCPItem",f:parsenoop},215:{n:"BrtBeginPCDSCSets",f:parsenoop},216:{n:"BrtEndPCDSCSets",f:parsenoop},217:{n:"BrtBeginPCDSCSet",f:parsenoop},218:{n:"BrtEndPCDSCSet",f:parsenoop},219:{n:"BrtBeginPCDFGroup",f:parsenoop},220:{n:"BrtEndPCDFGroup",f:parsenoop},221:{n:"BrtBeginPCDFGItems",f:parsenoop},222:{n:"BrtEndPCDFGItems",f:parsenoop},223:{n:"BrtBeginPCDFGRange",f:parsenoop},224:{n:"BrtEndPCDFGRange",f:parsenoop},225:{n:"BrtBeginPCDFGDiscrete",f:parsenoop},226:{n:"BrtEndPCDFGDiscrete",f:parsenoop},227:{n:"BrtBeginPCDSDTupleCache",f:parsenoop},228:{n:"BrtEndPCDSDTupleCache",f:parsenoop},229:{n:"BrtBeginPCDSDTCEntries",f:parsenoop},230:{n:"BrtEndPCDSDTCEntries",f:parsenoop},231:{n:"BrtBeginPCDSDTCEMembers",f:parsenoop},232:{n:"BrtEndPCDSDTCEMembers",f:parsenoop},233:{n:"BrtBeginPCDSDTCEMember",f:parsenoop},234:{n:"BrtEndPCDSDTCEMember",f:parsenoop},235:{n:"BrtBeginPCDSDTCQueries",f:parsenoop},236:{n:"BrtEndPCDSDTCQueries",f:parsenoop},237:{n:"BrtBeginPCDSDTCQuery",f:parsenoop},238:{n:"BrtEndPCDSDTCQuery",f:parsenoop},239:{n:"BrtBeginPCDSDTCSets",f:parsenoop},240:{n:"BrtEndPCDSDTCSets",f:parsenoop},241:{n:"BrtBeginPCDSDTCSet",f:parsenoop},242:{n:"BrtEndPCDSDTCSet",f:parsenoop},243:{n:"BrtBeginPCDCalcItems",f:parsenoop},244:{n:"BrtEndPCDCalcItems",f:parsenoop},245:{n:"BrtBeginPCDCalcItem",f:parsenoop},246:{n:"BrtEndPCDCalcItem",f:parsenoop},247:{n:"BrtBeginPRule",f:parsenoop},248:{n:"BrtEndPRule",f:parsenoop},249:{n:"BrtBeginPRFilters",f:parsenoop},250:{n:"BrtEndPRFilters",f:parsenoop},251:{n:"BrtBeginPRFilter",f:parsenoop},252:{n:"BrtEndPRFilter",f:parsenoop},253:{n:"BrtBeginPNames",f:parsenoop},254:{n:"BrtEndPNames",f:parsenoop},255:{n:"BrtBeginPName",f:parsenoop},256:{n:"BrtEndPName",f:parsenoop},257:{n:"BrtBeginPNPairs",f:parsenoop},258:{n:"BrtEndPNPairs",f:parsenoop},259:{n:"BrtBeginPNPair",f:parsenoop},260:{n:"BrtEndPNPair",f:parsenoop},261:{n:"BrtBeginECWebProps",f:parsenoop},262:{n:"BrtEndECWebProps",f:parsenoop},263:{n:"BrtBeginEcWpTables",f:parsenoop},264:{n:"BrtEndECWPTables",f:parsenoop},265:{n:"BrtBeginECParams",f:parsenoop},266:{n:"BrtEndECParams",f:parsenoop},267:{n:"BrtBeginECParam",f:parsenoop},268:{n:"BrtEndECParam",f:parsenoop},269:{n:"BrtBeginPCDKPIs",f:parsenoop},270:{n:"BrtEndPCDKPIs",f:parsenoop},271:{n:"BrtBeginPCDKPI",f:parsenoop},272:{n:"BrtEndPCDKPI",f:parsenoop},273:{n:"BrtBeginDims",f:parsenoop},274:{n:"BrtEndDims",f:parsenoop},275:{n:"BrtBeginDim",f:parsenoop},276:{n:"BrtEndDim",f:parsenoop},277:{n:"BrtIndexPartEnd",f:parsenoop},278:{n:"BrtBeginStyleSheet",f:parsenoop},279:{n:"BrtEndStyleSheet",f:parsenoop},280:{n:"BrtBeginSXView",f:parsenoop},281:{n:"BrtEndSXVI",f:parsenoop},282:{n:"BrtBeginSXVI",f:parsenoop},283:{n:"BrtBeginSXVIs",f:parsenoop},284:{n:"BrtEndSXVIs",f:parsenoop},285:{n:"BrtBeginSXVD",f:parsenoop},286:{n:"BrtEndSXVD",f:parsenoop},287:{n:"BrtBeginSXVDs",f:parsenoop},288:{n:"BrtEndSXVDs",f:parsenoop},289:{n:"BrtBeginSXPI",f:parsenoop},290:{n:"BrtEndSXPI",f:parsenoop},291:{n:"BrtBeginSXPIs",f:parsenoop},292:{n:"BrtEndSXPIs",f:parsenoop},293:{n:"BrtBeginSXDI",f:parsenoop},294:{n:"BrtEndSXDI",f:parsenoop},295:{n:"BrtBeginSXDIs",f:parsenoop},296:{n:"BrtEndSXDIs",f:parsenoop},297:{n:"BrtBeginSXLI",f:parsenoop},298:{n:"BrtEndSXLI",f:parsenoop},299:{n:"BrtBeginSXLIRws",f:parsenoop},300:{n:"BrtEndSXLIRws",f:parsenoop},301:{n:"BrtBeginSXLICols",f:parsenoop},302:{n:"BrtEndSXLICols",f:parsenoop},303:{n:"BrtBeginSXFormat",f:parsenoop},304:{n:"BrtEndSXFormat",f:parsenoop},305:{n:"BrtBeginSXFormats",f:parsenoop},306:{n:"BrtEndSxFormats",f:parsenoop},307:{n:"BrtBeginSxSelect",f:parsenoop},308:{n:"BrtEndSxSelect",f:parsenoop},309:{n:"BrtBeginISXVDRws",f:parsenoop},310:{n:"BrtEndISXVDRws",f:parsenoop},311:{n:"BrtBeginISXVDCols",f:parsenoop},312:{n:"BrtEndISXVDCols",f:parsenoop},313:{n:"BrtEndSXLocation",f:parsenoop},314:{n:"BrtBeginSXLocation",f:parsenoop},315:{n:"BrtEndSXView",f:parsenoop},316:{n:"BrtBeginSXTHs",f:parsenoop},317:{n:"BrtEndSXTHs",f:parsenoop},318:{n:"BrtBeginSXTH",f:parsenoop},319:{n:"BrtEndSXTH",f:parsenoop},320:{n:"BrtBeginISXTHRws",f:parsenoop},321:{n:"BrtEndISXTHRws",f:parsenoop},322:{n:"BrtBeginISXTHCols",f:parsenoop},323:{n:"BrtEndISXTHCols",f:parsenoop},324:{n:"BrtBeginSXTDMPS",f:parsenoop},325:{n:"BrtEndSXTDMPs",f:parsenoop},326:{n:"BrtBeginSXTDMP",f:parsenoop},327:{n:"BrtEndSXTDMP",f:parsenoop},328:{n:"BrtBeginSXTHItems",f:parsenoop},329:{n:"BrtEndSXTHItems",f:parsenoop},330:{n:"BrtBeginSXTHItem",f:parsenoop},331:{n:"BrtEndSXTHItem",f:parsenoop},332:{n:"BrtBeginMetadata",f:parsenoop},333:{n:"BrtEndMetadata",f:parsenoop},334:{n:"BrtBeginEsmdtinfo",f:parsenoop},335:{n:"BrtMdtinfo",f:parsenoop},336:{n:"BrtEndEsmdtinfo",f:parsenoop},337:{n:"BrtBeginEsmdb",f:parsenoop},338:{n:"BrtEndEsmdb",f:parsenoop},339:{n:"BrtBeginEsfmd",f:parsenoop},340:{n:"BrtEndEsfmd",f:parsenoop},341:{n:"BrtBeginSingleCells",f:parsenoop},342:{n:"BrtEndSingleCells",f:parsenoop},343:{n:"BrtBeginList",f:parsenoop},344:{n:"BrtEndList",f:parsenoop},345:{n:"BrtBeginListCols",f:parsenoop},346:{n:"BrtEndListCols",f:parsenoop},347:{n:"BrtBeginListCol",f:parsenoop},348:{n:"BrtEndListCol",f:parsenoop},349:{n:"BrtBeginListXmlCPr",f:parsenoop},350:{n:"BrtEndListXmlCPr",f:parsenoop},351:{n:"BrtListCCFmla",f:parsenoop},352:{n:"BrtListTrFmla",f:parsenoop},353:{n:"BrtBeginExternals",f:parsenoop},354:{n:"BrtEndExternals",f:parsenoop},355:{n:"BrtSupBookSrc",f:parsenoop},357:{n:"BrtSupSelf",f:parsenoop},358:{n:"BrtSupSame",f:parsenoop},359:{n:"BrtSupTabs",f:parsenoop},360:{n:"BrtBeginSupBook",f:parsenoop},361:{n:"BrtPlaceholderName",f:parsenoop},362:{n:"BrtExternSheet",f:parsenoop},363:{n:"BrtExternTableStart",f:parsenoop},364:{n:"BrtExternTableEnd",f:parsenoop},366:{n:"BrtExternRowHdr",f:parsenoop},367:{n:"BrtExternCellBlank",f:parsenoop},368:{n:"BrtExternCellReal",f:parsenoop},369:{n:"BrtExternCellBool",f:parsenoop},370:{n:"BrtExternCellError",f:parsenoop},371:{n:"BrtExternCellString",f:parsenoop},372:{n:"BrtBeginEsmdx",f:parsenoop},373:{n:"BrtEndEsmdx",f:parsenoop},374:{n:"BrtBeginMdxSet",f:parsenoop},375:{n:"BrtEndMdxSet",f:parsenoop},376:{n:"BrtBeginMdxMbrProp",f:parsenoop},377:{n:"BrtEndMdxMbrProp",f:parsenoop},378:{n:"BrtBeginMdxKPI",f:parsenoop},379:{n:"BrtEndMdxKPI",f:parsenoop},380:{n:"BrtBeginEsstr",f:parsenoop},381:{n:"BrtEndEsstr",f:parsenoop},382:{n:"BrtBeginPRFItem",f:parsenoop},383:{n:"BrtEndPRFItem",f:parsenoop},384:{n:"BrtBeginPivotCacheIDs",f:parsenoop},385:{n:"BrtEndPivotCacheIDs",f:parsenoop},386:{n:"BrtBeginPivotCacheID",f:parsenoop},387:{n:"BrtEndPivotCacheID",f:parsenoop},388:{n:"BrtBeginISXVIs",f:parsenoop},389:{n:"BrtEndISXVIs",f:parsenoop},390:{n:"BrtBeginColInfos",f:parsenoop},391:{n:"BrtEndColInfos",f:parsenoop},392:{n:"BrtBeginRwBrk",f:parsenoop},393:{n:"BrtEndRwBrk",f:parsenoop},394:{n:"BrtBeginColBrk",f:parsenoop},395:{n:"BrtEndColBrk",f:parsenoop},396:{n:"BrtBrk",f:parsenoop},397:{n:"BrtUserBookView",f:parsenoop},398:{n:"BrtInfo",f:parsenoop},399:{n:"BrtCUsr",f:parsenoop},400:{n:"BrtUsr",f:parsenoop},401:{n:"BrtBeginUsers",f:parsenoop},403:{n:"BrtEOF",f:parsenoop},404:{n:"BrtUCR",f:parsenoop},405:{n:"BrtRRInsDel",f:parsenoop},406:{n:"BrtRREndInsDel",f:parsenoop},407:{n:"BrtRRMove",f:parsenoop},408:{n:"BrtRREndMove",f:parsenoop},409:{n:"BrtRRChgCell",f:parsenoop},410:{n:"BrtRREndChgCell",f:parsenoop},411:{n:"BrtRRHeader",f:parsenoop},412:{n:"BrtRRUserView",f:parsenoop},413:{n:"BrtRRRenSheet",f:parsenoop},414:{n:"BrtRRInsertSh",f:parsenoop},415:{n:"BrtRRDefName",f:parsenoop},416:{n:"BrtRRNote",f:parsenoop},417:{n:"BrtRRConflict",f:parsenoop},418:{n:"BrtRRTQSIF",f:parsenoop},419:{n:"BrtRRFormat",f:parsenoop},420:{n:"BrtRREndFormat",f:parsenoop},421:{n:"BrtRRAutoFmt",f:parsenoop},422:{n:"BrtBeginUserShViews",f:parsenoop},423:{n:"BrtBeginUserShView",f:parsenoop},424:{n:"BrtEndUserShView",f:parsenoop},425:{n:"BrtEndUserShViews",f:parsenoop},426:{n:"BrtArrFmla",f:parsenoop},427:{n:"BrtShrFmla",f:parsenoop},428:{n:"BrtTable",f:parsenoop},429:{n:"BrtBeginExtConnections",f:parsenoop},430:{n:"BrtEndExtConnections",f:parsenoop},431:{n:"BrtBeginPCDCalcMems",f:parsenoop},432:{n:"BrtEndPCDCalcMems",f:parsenoop},433:{n:"BrtBeginPCDCalcMem",f:parsenoop},434:{n:"BrtEndPCDCalcMem",f:parsenoop},435:{n:"BrtBeginPCDHGLevels",f:parsenoop},436:{n:"BrtEndPCDHGLevels",f:parsenoop},437:{n:"BrtBeginPCDHGLevel",f:parsenoop},438:{n:"BrtEndPCDHGLevel",f:parsenoop},439:{n:"BrtBeginPCDHGLGroups",f:parsenoop},440:{n:"BrtEndPCDHGLGroups",f:parsenoop},441:{n:"BrtBeginPCDHGLGroup",f:parsenoop},442:{n:"BrtEndPCDHGLGroup",f:parsenoop},443:{n:"BrtBeginPCDHGLGMembers",f:parsenoop},444:{n:"BrtEndPCDHGLGMembers",f:parsenoop},445:{n:"BrtBeginPCDHGLGMember",f:parsenoop},446:{n:"BrtEndPCDHGLGMember",f:parsenoop},447:{n:"BrtBeginQSI",f:parsenoop},448:{n:"BrtEndQSI",f:parsenoop},449:{n:"BrtBeginQSIR",f:parsenoop},450:{n:"BrtEndQSIR",f:parsenoop},451:{n:"BrtBeginDeletedNames",f:parsenoop},452:{n:"BrtEndDeletedNames",f:parsenoop},453:{n:"BrtBeginDeletedName",f:parsenoop},454:{n:"BrtEndDeletedName",f:parsenoop},455:{n:"BrtBeginQSIFs",f:parsenoop},456:{n:"BrtEndQSIFs",f:parsenoop},457:{n:"BrtBeginQSIF",f:parsenoop},458:{n:"BrtEndQSIF",f:parsenoop},459:{n:"BrtBeginAutoSortScope",f:parsenoop},460:{n:"BrtEndAutoSortScope",f:parsenoop},461:{n:"BrtBeginConditionalFormatting",f:parsenoop},462:{n:"BrtEndConditionalFormatting",f:parsenoop},463:{n:"BrtBeginCFRule",f:parsenoop},464:{n:"BrtEndCFRule",f:parsenoop},465:{n:"BrtBeginIconSet",f:parsenoop},466:{n:"BrtEndIconSet",f:parsenoop},467:{n:"BrtBeginDatabar",f:parsenoop},468:{n:"BrtEndDatabar",f:parsenoop},469:{n:"BrtBeginColorScale",f:parsenoop},470:{n:"BrtEndColorScale",f:parsenoop},471:{n:"BrtCFVO",f:parsenoop},472:{n:"BrtExternValueMeta",f:parsenoop},473:{n:"BrtBeginColorPalette",f:parsenoop},474:{n:"BrtEndColorPalette",f:parsenoop},475:{n:"BrtIndexedColor",f:parsenoop},476:{n:"BrtMargins",f:parsenoop},477:{n:"BrtPrintOptions",f:parsenoop},478:{n:"BrtPageSetup",f:parsenoop},479:{n:"BrtBeginHeaderFooter",f:parsenoop},480:{n:"BrtEndHeaderFooter",f:parsenoop},481:{n:"BrtBeginSXCrtFormat",f:parsenoop},482:{n:"BrtEndSXCrtFormat",f:parsenoop},483:{n:"BrtBeginSXCrtFormats",f:parsenoop},484:{n:"BrtEndSXCrtFormats",f:parsenoop},485:{n:"BrtWsFmtInfo",f:parsenoop},486:{n:"BrtBeginMgs",f:parsenoop},487:{n:"BrtEndMGs",f:parsenoop},488:{n:"BrtBeginMGMaps",f:parsenoop},489:{n:"BrtEndMGMaps",f:parsenoop},490:{n:"BrtBeginMG",f:parsenoop},491:{n:"BrtEndMG",f:parsenoop},492:{n:"BrtBeginMap",f:parsenoop},493:{n:"BrtEndMap",f:parsenoop},494:{n:"BrtHLink",f:parsenoop},495:{n:"BrtBeginDCon",f:parsenoop},496:{n:"BrtEndDCon",f:parsenoop},497:{n:"BrtBeginDRefs",f:parsenoop},498:{n:"BrtEndDRefs",f:parsenoop},499:{n:"BrtDRef",f:parsenoop},500:{n:"BrtBeginScenMan",f:parsenoop},501:{n:"BrtEndScenMan",f:parsenoop},502:{n:"BrtBeginSct",f:parsenoop},503:{n:"BrtEndSct",f:parsenoop},504:{n:"BrtSlc",f:parsenoop},505:{n:"BrtBeginDXFs",f:parsenoop},506:{n:"BrtEndDXFs",f:parsenoop},507:{n:"BrtDXF",f:parsenoop},508:{n:"BrtBeginTableStyles",f:parsenoop},509:{n:"BrtEndTableStyles",f:parsenoop},510:{n:"BrtBeginTableStyle",f:parsenoop},511:{n:"BrtEndTableStyle",f:parsenoop},512:{n:"BrtTableStyleElement",f:parsenoop},513:{n:"BrtTableStyleClient",f:parsenoop},514:{n:"BrtBeginVolDeps",f:parsenoop},515:{n:"BrtEndVolDeps",f:parsenoop},516:{n:"BrtBeginVolType",f:parsenoop},517:{n:"BrtEndVolType",f:parsenoop},518:{n:"BrtBeginVolMain",f:parsenoop},519:{n:"BrtEndVolMain",f:parsenoop},520:{n:"BrtBeginVolTopic",f:parsenoop},521:{n:"BrtEndVolTopic",f:parsenoop},522:{n:"BrtVolSubtopic",f:parsenoop},523:{n:"BrtVolRef",f:parsenoop},524:{n:"BrtVolNum",f:parsenoop},525:{n:"BrtVolErr",f:parsenoop},526:{n:"BrtVolStr",f:parsenoop},527:{n:"BrtVolBool",f:parsenoop},530:{n:"BrtBeginSortState",f:parsenoop},531:{n:"BrtEndSortState",f:parsenoop},532:{n:"BrtBeginSortCond",f:parsenoop},533:{n:"BrtEndSortCond",f:parsenoop},534:{n:"BrtBookProtection",f:parsenoop},535:{n:"BrtSheetProtection",f:parsenoop},536:{n:"BrtRangeProtection",f:parsenoop},537:{n:"BrtPhoneticInfo",f:parsenoop},538:{n:"BrtBeginECTxtWiz",f:parsenoop},539:{n:"BrtEndECTxtWiz",f:parsenoop},540:{n:"BrtBeginECTWFldInfoLst",f:parsenoop},541:{n:"BrtEndECTWFldInfoLst",f:parsenoop},542:{n:"BrtBeginECTwFldInfo",f:parsenoop},548:{n:"BrtFileSharing",f:parsenoop},549:{n:"BrtOleSize",f:parsenoop},550:{n:"BrtDrawing",f:parsenoop},551:{n:"BrtLegacyDrawing",f:parsenoop},552:{n:"BrtLegacyDrawingHF",f:parsenoop},553:{n:"BrtWebOpt",f:parsenoop},554:{n:"BrtBeginWebPubItems",f:parsenoop},555:{n:"BrtEndWebPubItems",f:parsenoop},556:{n:"BrtBeginWebPubItem",f:parsenoop},557:{n:"BrtEndWebPubItem",f:parsenoop},558:{n:"BrtBeginSXCondFmt",f:parsenoop},559:{n:"BrtEndSXCondFmt",f:parsenoop},560:{n:"BrtBeginSXCondFmts",f:parsenoop},561:{n:"BrtEndSXCondFmts",f:parsenoop},562:{n:"BrtBkHim",f:parsenoop},564:{n:"BrtColor",f:parsenoop},565:{n:"BrtBeginIndexedColors",f:parsenoop},566:{n:"BrtEndIndexedColors",f:parsenoop},569:{n:"BrtBeginMRUColors",f:parsenoop},570:{n:"BrtEndMRUColors",f:parsenoop},572:{n:"BrtMRUColor",f:parsenoop},573:{n:"BrtBeginDVals",f:parsenoop},574:{n:"BrtEndDVals",f:parsenoop},577:{n:"BrtSupNameStart",f:parsenoop},578:{n:"BrtSupNameValueStart",f:parsenoop},579:{n:"BrtSupNameValueEnd",f:parsenoop},580:{n:"BrtSupNameNum",f:parsenoop},581:{n:"BrtSupNameErr",f:parsenoop},582:{n:"BrtSupNameSt",f:parsenoop},583:{n:"BrtSupNameNil",f:parsenoop},584:{n:"BrtSupNameBool",f:parsenoop},585:{n:"BrtSupNameFmla",f:parsenoop},586:{n:"BrtSupNameBits",f:parsenoop},587:{n:"BrtSupNameEnd",f:parsenoop},588:{n:"BrtEndSupBook",f:parsenoop},589:{n:"BrtCellSmartTagProperty",f:parsenoop},590:{n:"BrtBeginCellSmartTag",f:parsenoop},591:{n:"BrtEndCellSmartTag",f:parsenoop},592:{n:"BrtBeginCellSmartTags",f:parsenoop},593:{n:"BrtEndCellSmartTags",f:parsenoop},594:{n:"BrtBeginSmartTags",f:parsenoop},595:{n:"BrtEndSmartTags",f:parsenoop},596:{n:"BrtSmartTagType",f:parsenoop},597:{n:"BrtBeginSmartTagTypes",f:parsenoop},598:{n:"BrtEndSmartTagTypes",f:parsenoop},599:{n:"BrtBeginSXFilters",f:parsenoop},600:{n:"BrtEndSXFilters",f:parsenoop},601:{n:"BrtBeginSXFILTER",f:parsenoop},602:{n:"BrtEndSXFilter",f:parsenoop},603:{n:"BrtBeginFills",f:parsenoop},604:{n:"BrtEndFills",f:parsenoop},605:{n:"BrtBeginCellWatches",f:parsenoop},606:{n:"BrtEndCellWatches",f:parsenoop},607:{n:"BrtCellWatch",f:parsenoop},608:{n:"BrtBeginCRErrs",f:parsenoop},609:{n:"BrtEndCRErrs",f:parsenoop},610:{n:"BrtCrashRecErr",f:parsenoop},611:{n:"BrtBeginFonts",f:parsenoop},612:{n:"BrtEndFonts",f:parsenoop},613:{n:"BrtBeginBorders",f:parsenoop},614:{n:"BrtEndBorders",f:parsenoop},615:{n:"BrtBeginFmts",f:parsenoop},616:{n:"BrtEndFmts",f:parsenoop},617:{n:"BrtBeginCellXFs",f:parsenoop},618:{n:"BrtEndCellXFs",f:parsenoop},619:{n:"BrtBeginStyles",f:parsenoop},620:{n:"BrtEndStyles",f:parsenoop},625:{n:"BrtBigName",f:parsenoop},626:{n:"BrtBeginCellStyleXFs",f:parsenoop},627:{n:"BrtEndCellStyleXFs",f:parsenoop},628:{n:"BrtBeginComments",f:parsenoop},629:{n:"BrtEndComments",f:parsenoop},630:{n:"BrtBeginCommentAuthors",f:parsenoop},631:{n:"BrtEndCommentAuthors",f:parsenoop},632:{n:"BrtCommentAuthor",f:parsenoop},633:{n:"BrtBeginCommentList",f:parsenoop},634:{n:"BrtEndCommentList",f:parsenoop},635:{n:"BrtBeginComment",f:parsenoop},636:{n:"BrtEndComment",f:parsenoop},637:{n:"BrtCommentText",f:parsenoop},638:{n:"BrtBeginOleObjects",f:parsenoop},639:{n:"BrtOleObject",f:parsenoop},640:{n:"BrtEndOleObjects",f:parsenoop},641:{n:"BrtBeginSxrules",f:parsenoop},642:{n:"BrtEndSxRules",f:parsenoop},643:{n:"BrtBeginActiveXControls",f:parsenoop},644:{n:"BrtActiveX",f:parsenoop},645:{n:"BrtEndActiveXControls",f:parsenoop},646:{n:"BrtBeginPCDSDTCEMembersSortBy",f:parsenoop},648:{n:"BrtBeginCellIgnoreECs",f:parsenoop},649:{n:"BrtCellIgnoreEC",f:parsenoop},650:{n:"BrtEndCellIgnoreECs",f:parsenoop},651:{n:"BrtCsProp",f:parsenoop},652:{n:"BrtCsPageSetup",f:parsenoop},653:{n:"BrtBeginUserCsViews",f:parsenoop},654:{n:"BrtEndUserCsViews",f:parsenoop},655:{n:"BrtBeginUserCsView",f:parsenoop},656:{n:"BrtEndUserCsView",f:parsenoop},657:{n:"BrtBeginPcdSFCIEntries",f:parsenoop},658:{n:"BrtEndPCDSFCIEntries",f:parsenoop},659:{n:"BrtPCDSFCIEntry",f:parsenoop},660:{n:"BrtBeginListParts",f:parsenoop},661:{n:"BrtListPart",f:parsenoop},662:{n:"BrtEndListParts",f:parsenoop},663:{n:"BrtSheetCalcProp",f:parsenoop},664:{n:"BrtBeginFnGroup",f:parsenoop},665:{n:"BrtFnGroup",f:parsenoop},666:{n:"BrtEndFnGroup",f:parsenoop},667:{n:"BrtSupAddin",f:parsenoop},668:{n:"BrtSXTDMPOrder",f:parsenoop},669:{n:"BrtCsProtection",f:parsenoop},671:{n:"BrtBeginWsSortMap",f:parsenoop},672:{n:"BrtEndWsSortMap",f:parsenoop},673:{n:"BrtBeginRRSort",f:parsenoop},674:{n:"BrtEndRRSort",f:parsenoop},675:{n:"BrtRRSortItem",f:parsenoop},676:{n:"BrtFileSharingIso",f:parsenoop},677:{n:"BrtBookProtectionIso",f:parsenoop},678:{n:"BrtSheetProtectionIso",f:parsenoop},679:{n:"BrtCsProtectionIso",f:parsenoop},680:{n:"BrtRangeProtectionIso",f:parsenoop},1024:{n:"BrtRwDescent",f:parsenoop},1025:{n:"BrtKnownFonts",f:parsenoop},1026:{n:"BrtBeginSXTupleSet",f:parsenoop},1027:{n:"BrtEndSXTupleSet",f:parsenoop},1028:{n:"BrtBeginSXTupleSetHeader",f:parsenoop},1029:{n:"BrtEndSXTupleSetHeader",f:parsenoop},1030:{n:"BrtSXTupleSetHeaderItem",f:parsenoop},1031:{n:"BrtBeginSXTupleSetData",f:parsenoop},1032:{n:"BrtEndSXTupleSetData",f:parsenoop},1033:{n:"BrtBeginSXTupleSetRow",f:parsenoop},1034:{n:"BrtEndSXTupleSetRow",f:parsenoop},1035:{n:"BrtSXTupleSetRowItem",f:parsenoop},1036:{n:"BrtNameExt",f:parsenoop},1037:{n:"BrtPCDH14",f:parsenoop},1038:{n:"BrtBeginPCDCalcMem14",f:parsenoop},1039:{n:"BrtEndPCDCalcMem14",f:parsenoop},1040:{n:"BrtSXTH14",f:parsenoop},1041:{n:"BrtBeginSparklineGroup",f:parsenoop},1042:{n:"BrtEndSparklineGroup",f:parsenoop},1043:{n:"BrtSparkline",f:parsenoop},1044:{n:"BrtSXDI14",f:parsenoop},1045:{n:"BrtWsFmtInfoEx14",f:parsenoop},1046:{n:"BrtBeginConditionalFormatting14",f:parsenoop},1047:{n:"BrtEndConditionalFormatting14",f:parsenoop},1048:{n:"BrtBeginCFRule14",f:parsenoop},1049:{n:"BrtEndCFRule14",f:parsenoop},1050:{n:"BrtCFVO14",f:parsenoop},1051:{n:"BrtBeginDatabar14",f:parsenoop},1052:{n:"BrtBeginIconSet14",f:parsenoop},1053:{n:"BrtDVal14",f:parsenoop},1054:{n:"BrtBeginDVals14",f:parsenoop},1055:{n:"BrtColor14",f:parsenoop},1056:{n:"BrtBeginSparklines",f:parsenoop},1057:{n:"BrtEndSparklines",f:parsenoop},1058:{n:"BrtBeginSparklineGroups",f:parsenoop},1059:{n:"BrtEndSparklineGroups",f:parsenoop},1061:{n:"BrtSXVD14",f:parsenoop},1062:{n:"BrtBeginSxview14",f:parsenoop},1063:{n:"BrtEndSxview14",f:parsenoop},1066:{n:"BrtBeginPCD14",f:parsenoop},1067:{n:"BrtEndPCD14",f:parsenoop},1068:{n:"BrtBeginExtConn14",f:parsenoop},1069:{n:"BrtEndExtConn14",f:parsenoop},1070:{n:"BrtBeginSlicerCacheIDs",f:parsenoop},1071:{n:"BrtEndSlicerCacheIDs",f:parsenoop},1072:{n:"BrtBeginSlicerCacheID",f:parsenoop},1073:{n:"BrtEndSlicerCacheID",f:parsenoop},1075:{n:"BrtBeginSlicerCache",f:parsenoop},1076:{n:"BrtEndSlicerCache",f:parsenoop},1077:{n:"BrtBeginSlicerCacheDef",f:parsenoop},1078:{n:"BrtEndSlicerCacheDef",f:parsenoop},1079:{n:"BrtBeginSlicersEx",f:parsenoop},1080:{n:"BrtEndSlicersEx",f:parsenoop},1081:{n:"BrtBeginSlicerEx",f:parsenoop},1082:{n:"BrtEndSlicerEx",f:parsenoop},1083:{n:"BrtBeginSlicer",f:parsenoop},1084:{n:"BrtEndSlicer",f:parsenoop},1085:{n:"BrtSlicerCachePivotTables",f:parsenoop},1086:{n:"BrtBeginSlicerCacheOlapImpl",f:parsenoop},1087:{n:"BrtEndSlicerCacheOlapImpl",f:parsenoop},1088:{n:"BrtBeginSlicerCacheLevelsData",f:parsenoop},1089:{n:"BrtEndSlicerCacheLevelsData",f:parsenoop},1090:{n:"BrtBeginSlicerCacheLevelData",f:parsenoop},1091:{n:"BrtEndSlicerCacheLevelData",f:parsenoop},1092:{n:"BrtBeginSlicerCacheSiRanges",f:parsenoop},1093:{n:"BrtEndSlicerCacheSiRanges",f:parsenoop},1094:{n:"BrtBeginSlicerCacheSiRange",f:parsenoop},1095:{n:"BrtEndSlicerCacheSiRange",f:parsenoop},1096:{n:"BrtSlicerCacheOlapItem",f:parsenoop},1097:{n:"BrtBeginSlicerCacheSelections",f:parsenoop},1098:{n:"BrtSlicerCacheSelection",f:parsenoop},1099:{n:"BrtEndSlicerCacheSelections",f:parsenoop},1100:{n:"BrtBeginSlicerCacheNative",f:parsenoop},1101:{n:"BrtEndSlicerCacheNative",f:parsenoop},1102:{n:"BrtSlicerCacheNativeItem",f:parsenoop},1103:{n:"BrtRangeProtection14",f:parsenoop},1104:{n:"BrtRangeProtectionIso14",f:parsenoop},1105:{n:"BrtCellIgnoreEC14",f:parsenoop},1111:{n:"BrtList14",f:parsenoop},1112:{n:"BrtCFIcon",f:parsenoop},1113:{n:"BrtBeginSlicerCachesPivotCacheIDs",f:parsenoop},1114:{n:"BrtEndSlicerCachesPivotCacheIDs",f:parsenoop},1115:{n:"BrtBeginSlicers",f:parsenoop},1116:{n:"BrtEndSlicers",f:parsenoop},1117:{n:"BrtWbProp14",f:parsenoop},1118:{n:"BrtBeginSXEdit",f:parsenoop},1119:{n:"BrtEndSXEdit",f:parsenoop},1120:{n:"BrtBeginSXEdits",f:parsenoop},1121:{n:"BrtEndSXEdits",f:parsenoop},1122:{n:"BrtBeginSXChange",f:parsenoop},1123:{n:"BrtEndSXChange",f:parsenoop},1124:{n:"BrtBeginSXChanges",f:parsenoop},1125:{n:"BrtEndSXChanges",f:parsenoop},1126:{n:"BrtSXTupleItems",f:parsenoop},1128:{n:"BrtBeginSlicerStyle",f:parsenoop},1129:{n:"BrtEndSlicerStyle",f:parsenoop},1130:{n:"BrtSlicerStyleElement",f:parsenoop},1131:{n:"BrtBeginStyleSheetExt14",f:parsenoop},1132:{n:"BrtEndStyleSheetExt14",f:parsenoop},1133:{n:"BrtBeginSlicerCachesPivotCacheID",f:parsenoop},1134:{n:"BrtEndSlicerCachesPivotCacheID",f:parsenoop},1135:{n:"BrtBeginConditionalFormattings",f:parsenoop},1136:{n:"BrtEndConditionalFormattings",f:parsenoop},1137:{n:"BrtBeginPCDCalcMemExt",f:parsenoop},1138:{n:"BrtEndPCDCalcMemExt",f:parsenoop},1139:{n:"BrtBeginPCDCalcMemsExt",f:parsenoop},1140:{n:"BrtEndPCDCalcMemsExt",f:parsenoop},1141:{n:"BrtPCDField14",f:parsenoop},1142:{n:"BrtBeginSlicerStyles",f:parsenoop},1143:{n:"BrtEndSlicerStyles",f:parsenoop},1144:{n:"BrtBeginSlicerStyleElements",f:parsenoop},1145:{n:"BrtEndSlicerStyleElements",f:parsenoop},1146:{n:"BrtCFRuleExt",f:parsenoop},1147:{n:"BrtBeginSXCondFmt14",f:parsenoop},1148:{n:"BrtEndSXCondFmt14",f:parsenoop},1149:{n:"BrtBeginSXCondFmts14",f:parsenoop},1150:{n:"BrtEndSXCondFmts14",f:parsenoop},1152:{n:"BrtBeginSortCond14",f:parsenoop},1153:{n:"BrtEndSortCond14",f:parsenoop},1154:{n:"BrtEndDVals14",f:parsenoop},1155:{n:"BrtEndIconSet14",f:parsenoop},1156:{n:"BrtEndDatabar14",f:parsenoop},1157:{n:"BrtBeginColorScale14",f:parsenoop},1158:{n:"BrtEndColorScale14",f:parsenoop},1159:{n:"BrtBeginSxrules14",f:parsenoop},1160:{n:"BrtEndSxrules14",f:parsenoop},1161:{n:"BrtBeginPRule14",f:parsenoop},1162:{n:"BrtEndPRule14",f:parsenoop},1163:{n:"BrtBeginPRFilters14",f:parsenoop},1164:{n:"BrtEndPRFilters14",f:parsenoop},1165:{n:"BrtBeginPRFilter14",f:parsenoop},1166:{n:"BrtEndPRFilter14",f:parsenoop},1167:{n:"BrtBeginPRFItem14",f:parsenoop},1168:{n:"BrtEndPRFItem14",f:parsenoop},1169:{n:"BrtBeginCellIgnoreECs14",f:parsenoop},1170:{n:"BrtEndCellIgnoreECs14",f:parsenoop},1171:{n:"BrtDxf14",f:parsenoop},1172:{n:"BrtBeginDxF14s",f:parsenoop},1173:{n:"BrtEndDxf14s",f:parsenoop},1177:{n:"BrtFilter14",f:parsenoop},1178:{n:"BrtBeginCustomFilters14",f:parsenoop},1180:{n:"BrtCustomFilter14",f:parsenoop},1181:{n:"BrtIconFilter14",f:parsenoop},1182:{n:"BrtPivotCacheConnectionName",f:parsenoop},2048:{n:"BrtBeginDecoupledPivotCacheIDs",f:parsenoop},2049:{n:"BrtEndDecoupledPivotCacheIDs",f:parsenoop},2050:{n:"BrtDecoupledPivotCacheID",f:parsenoop},2051:{n:"BrtBeginPivotTableRefs",f:parsenoop},2052:{n:"BrtEndPivotTableRefs",f:parsenoop},2053:{n:"BrtPivotTableRef",f:parsenoop},2054:{n:"BrtSlicerCacheBookPivotTables",f:parsenoop},2055:{n:"BrtBeginSxvcells",f:parsenoop},2056:{n:"BrtEndSxvcells",f:parsenoop},2057:{n:"BrtBeginSxRow",f:parsenoop},2058:{n:"BrtEndSxRow",f:parsenoop},2060:{n:"BrtPcdCalcMem15",f:parsenoop},2067:{n:"BrtQsi15",f:parsenoop},2068:{n:"BrtBeginWebExtensions",f:parsenoop},2069:{n:"BrtEndWebExtensions",f:parsenoop},2070:{n:"BrtWebExtension",f:parsenoop},2071:{n:"BrtAbsPath15",f:parsenoop},2072:{n:"BrtBeginPivotTableUISettings",f:parsenoop},2073:{n:"BrtEndPivotTableUISettings",f:parsenoop},2075:{n:"BrtTableSlicerCacheIDs",f:parsenoop},2076:{n:"BrtTableSlicerCacheID",f:parsenoop},2077:{n:"BrtBeginTableSlicerCache",f:parsenoop},2078:{n:"BrtEndTableSlicerCache",f:parsenoop},2079:{n:"BrtSxFilter15",f:parsenoop},2080:{n:"BrtBeginTimelineCachePivotCacheIDs",f:parsenoop},2081:{n:"BrtEndTimelineCachePivotCacheIDs",f:parsenoop},2082:{n:"BrtTimelineCachePivotCacheID",f:parsenoop},2083:{n:"BrtBeginTimelineCacheIDs",f:parsenoop},2084:{n:"BrtEndTimelineCacheIDs",f:parsenoop},2085:{n:"BrtBeginTimelineCacheID",f:parsenoop},2086:{n:"BrtEndTimelineCacheID",f:parsenoop},2087:{n:"BrtBeginTimelinesEx",f:parsenoop},2088:{n:"BrtEndTimelinesEx",f:parsenoop},2089:{n:"BrtBeginTimelineEx",f:parsenoop},2090:{n:"BrtEndTimelineEx",f:parsenoop},2091:{n:"BrtWorkBookPr15",f:parsenoop},2092:{n:"BrtPCDH15",f:parsenoop},2093:{n:"BrtBeginTimelineStyle",f:parsenoop},2094:{n:"BrtEndTimelineStyle",f:parsenoop},2095:{n:"BrtTimelineStyleElement",f:parsenoop},2096:{n:"BrtBeginTimelineStylesheetExt15",f:parsenoop},2097:{n:"BrtEndTimelineStylesheetExt15",f:parsenoop},2098:{n:"BrtBeginTimelineStyles",f:parsenoop},2099:{n:"BrtEndTimelineStyles",f:parsenoop},2100:{n:"BrtBeginTimelineStyleElements",f:parsenoop},2101:{n:"BrtEndTimelineStyleElements",f:parsenoop},2102:{n:"BrtDxf15",f:parsenoop},2103:{n:"BrtBeginDxfs15",f:parsenoop},2104:{n:"brtEndDxfs15",f:parsenoop},2105:{n:"BrtSlicerCacheHideItemsWithNoData",f:parsenoop},2106:{n:"BrtBeginItemUniqueNames",f:parsenoop},2107:{n:"BrtEndItemUniqueNames",f:parsenoop},2108:{n:"BrtItemUniqueName",f:parsenoop},2109:{n:"BrtBeginExtConn15",f:parsenoop},2110:{n:"BrtEndExtConn15",f:parsenoop},2111:{n:"BrtBeginOledbPr15",f:parsenoop},2112:{n:"BrtEndOledbPr15",f:parsenoop},2113:{n:"BrtBeginDataFeedPr15",f:parsenoop},2114:{n:"BrtEndDataFeedPr15",f:parsenoop},2115:{n:"BrtTextPr15",f:parsenoop},2116:{n:"BrtRangePr15",f:parsenoop},2117:{n:"BrtDbCommand15",f:parsenoop},2118:{n:"BrtBeginDbTables15",f:parsenoop},2119:{n:"BrtEndDbTables15",f:parsenoop},2120:{n:"BrtDbTable15",f:parsenoop},2121:{n:"BrtBeginDataModel",f:parsenoop},2122:{n:"BrtEndDataModel",f:parsenoop},2123:{n:"BrtBeginModelTables",f:parsenoop},2124:{n:"BrtEndModelTables",f:parsenoop},2125:{n:"BrtModelTable",f:parsenoop},2126:{n:"BrtBeginModelRelationships",f:parsenoop},2127:{n:"BrtEndModelRelationships",f:parsenoop},2128:{n:"BrtModelRelationship",f:parsenoop},2129:{n:"BrtBeginECTxtWiz15",f:parsenoop},2130:{n:"BrtEndECTxtWiz15",f:parsenoop},2131:{n:"BrtBeginECTWFldInfoLst15",f:parsenoop},2132:{n:"BrtEndECTWFldInfoLst15",f:parsenoop},2133:{n:"BrtBeginECTWFldInfo15",f:parsenoop},2134:{n:"BrtFieldListActiveItem",f:parsenoop},2135:{n:"BrtPivotCacheIdVersion",f:parsenoop},2136:{n:"BrtSXDI15",f:parsenoop},65535:{n:"",f:parsenoop}};
+var SSF={};var make_ssf=function(SSF){var _strrev=function(x){return String(x).split("").reverse().join("")};function fill(c,l){return new Array(l+1).join(c)}function pad(v,d,c){var t=String(v);return t.length>=d?t:fill(c||0,d-t.length)+t}function rpad(v,d,c){var t=String(v);return t.length>=d?t:t+fill(c||0,d-t.length)}SSF.version="0.6.1";var opts_fmt={};function fixopts(o){for(var y in opts_fmt)if(o[y]===undefined)o[y]=opts_fmt[y]}SSF.opts=opts_fmt;opts_fmt.date1904=0;opts_fmt.output="";opts_fmt.mode="";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"秒 "',65535:"General"};var days=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]];var months=[["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"]];var frac=function frac(x,D,mixed){var sgn=x<0?-1:1;var B=x*sgn;var P_2=0,P_1=1,P=0;var Q_2=1,Q_1=0,Q=0;var A=Math.floor(B);while(Q_1D){Q=Q_1;P=P_1}if(Q>D){Q=Q_2;P=P_2}if(!mixed)return[0,sgn*P,Q];if(Q===0)throw"Unexpected state: "+P+" "+P_1+" "+P_2+" "+Q+" "+Q_1+" "+Q_2;var q=Math.floor(sgn*P/Q);return[q,sgn*P-q*Q,Q]};var general_fmt=function(v){if(typeof v==="boolean")return v?"TRUE":"FALSE";if(typeof v==="number"){var o,V=v<0?-v:v;if(V>=.1&&V<1)o=v.toPrecision(9);else if(V>=.01&&V<.1)o=v.toPrecision(8);else if(V>=.001&&V<.01)o=v.toPrecision(7);else if(V>=1e-4&&V<.001)o=v.toPrecision(6);else if(V>=Math.pow(10,10)&&VMath.pow(10,-9)&&V11+(v<0?1:0))o=v.toPrecision(10);if(o.length>11+(v<0?1:0))o=v.toExponential(5)}else{o=v.toFixed(11).replace(/(\.[0-9]*[1-9])0*$/,"$1");if(o.length>11+(v<0?1:0))o=v.toPrecision(6)}o=o.replace(/(\.[0-9]*[1-9])0+e/,"$1e").replace(/\.0*e/,"e");return o.replace("e","E").replace(/\.0*$/,"").replace(/\.([0-9]*[^0])0*$/,".$1").replace(/(E[+-])([0-9])$/,"$1"+"0"+"$2")}if(typeof v==="string")return v;throw new Error("unsupported value in General format: "+v)};SSF._general=general_fmt;var parse_date_code=function parse_date_code(v,opts){var date=Math.floor(v),time=Math.floor(86400*(v-date)+1e-6),dow=0;var dout=[],out={D:date,T:time,u:86400*(v-date)-time};fixopts(opts=opts||{});if(opts.date1904)date+=1462;if(date>2958465)return null;if(out.u>.999){out.u=0;if(++time==86400){time=0;++date}}if(date===60){dout=[1900,2,29];dow=3}else if(date===0){dout=[1900,1,0];dow=6}else{if(date>60)--date;var d=new Date(1900,0,1);d.setDate(d.getDate()+date-1);dout=[d.getFullYear(),d.getMonth()+1,d.getDate()];dow=d.getDay();if(date<60)dow=(dow+6)%7}out.y=dout[0];out.m=dout[1];out.d=dout[2];out.S=time%60;time=Math.floor(time/60);out.M=time%60;time=Math.floor(time/60);out.H=time;out.q=dow;return out};SSF.parse_date_code=parse_date_code;var write_date=function(type,fmt,val){if(val<0)return"";var o,ss;switch(type){case"y":switch(fmt){case"y":case"yy":return pad(val.y%100,2);default:return pad(val.y%1e4,4)}case"m":switch(fmt){case"m":return val.m;case"mm":return pad(val.m,2);case"mmm":return months[val.m-1][1];case"mmmmm":return months[val.m-1][0];default:return months[val.m-1][2]}case"d":switch(fmt){case"d":return val.d;case"dd":return pad(val.d,2);case"ddd":return days[val.q][0];default:return days[val.q][1]}case"h":switch(fmt){case"h":return 1+(val.H+11)%12;case"hh":return pad(1+(val.H+11)%12,2);default:throw"bad hour format: "+fmt}case"H":switch(fmt){case"h":return val.H;case"hh":return pad(val.H,2);default:throw"bad hour format: "+fmt}case"M":switch(fmt){case"m":return val.M;case"mm":return pad(val.M,2);default:throw"bad minute format: "+fmt}case"s":switch(fmt){case"s":ss=Math.round(val.S+val.u);return ss>=60?0:ss;case"ss":ss=Math.round(val.S+val.u);if(ss>=60)ss=0;return pad(ss,2);case"ss.0":ss=Math.round(10*(val.S+val.u));if(ss>=600)ss=0;o=pad(ss,3);return o.substr(0,2)+"."+o.substr(2);case"ss.00":ss=Math.round(100*(val.S+val.u));if(ss>=6e3)ss=0;o=pad(ss,4);return o.substr(0,2)+"."+o.substr(2);case"ss.000":ss=Math.round(1e3*(val.S+val.u));if(ss>=6e4)ss=0;o=pad(ss,5);return o.substr(0,2)+"."+o.substr(2);default:throw"bad second format: "+fmt}case"Z":switch(fmt){case"[h]":case"[hh]":o=val.D*24+val.H;break;case"[m]":case"[mm]":o=(val.D*24+val.H)*60+val.M;break;case"[s]":case"[ss]":o=((val.D*24+val.H)*60+val.M)*60+Math.round(val.S+val.u);break;default:throw"bad abstime format: "+fmt}return fmt.length===3?o:pad(o,2);case"e":{return val.y}break}};var commaify=function(s){return _strrev(_strrev(s).replace(/.../g,"$&,")).replace(/^,/,"")};var write_num=function(type,fmt,val){if(type==="("){var ffmt=fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");if(val>=0)return write_num("n",ffmt,val);return"("+write_num("n",ffmt,-val)+")"}var mul=0,o;fmt=fmt.replace(/%/g,function(x){mul++;return""});if(mul!==0)return write_num(type,fmt,val*Math.pow(10,2*mul))+fill("%",mul);fmt=fmt.replace(/(\.0+)(,+)$/g,function($$,$1,$2){mul=$2.length;return $1});if(mul!==0)return write_num(type,fmt,val/Math.pow(10,3*mul));if(fmt.indexOf("E")>-1){var idx=fmt.indexOf("E")-fmt.indexOf(".")-1;if(fmt.match(/^#+0.0E\+0$/)){var period=fmt.indexOf(".");if(period===-1)period=fmt.indexOf("E");var ee=Number(val.toExponential(0).substr(2+(val<0)))%period;if(ee<0)ee+=period;o=(val/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period);if(!o.match(/[Ee]/)){var fakee=Number(val.toExponential(0).substr(2+(val<0)));if(o.indexOf(".")===-1)o=o[0]+"."+o.substr(1)+"E+"+(fakee-o.length+ee);else o+="E+"+(fakee-ee);while(o.substr(0,2)==="0."){o=o[0]+o.substr(2,period)+"."+o.substr(2+period);o=o.replace(/^0+([1-9])/,"$1").replace(/^0+\./,"0.")}o=o.replace(/\+-/,"-")}o=o.replace(/^([+-]?)([0-9]*)\.([0-9]*)[Ee]/,function($$,$1,$2,$3){return $1+$2+$3.substr(0,(period+ee)%period)+"."+$3.substr(ee)+"E"})}else o=val.toExponential(idx);if(fmt.match(/E\+00$/)&&o.match(/e[+-][0-9]$/))o=o.substr(0,o.length-1)+"0"+o[o.length-1];if(fmt.match(/E\-/)&&o.match(/e\+/))o=o.replace(/e\+/,"e");return o.replace("e","E")}if(fmt[0]==="$")return"$"+write_num(type,fmt.substr(fmt[1]==" "?2:1),val);var r,rr,ff,aval=val<0?-val:val,sign=val<0?"-":"";if(r=fmt.match(/# (\?+)([ ]?)\/([ ]?)(\d+)/)){var den=Number(r[4]),rnd=Math.round(aval*den),base=Math.floor(rnd/den);var myn=rnd-base*den,myd=den;return sign+(base?base:"")+" "+(myn===0?fill(" ",r[1].length+1+r[4].length):pad(myn,r[1].length," ")+r[2]+"/"+r[3]+pad(myd,r[4].length))}if(fmt.match(/^#+0+$/))fmt=fmt.replace(/#/g,"");if(fmt.match(/^00+$/))return(val<0?"-":"")+pad(Math.round(aval),fmt.length);if(fmt.match(/^[#?]+$/))return String(Math.round(val)).replace(/^0$/,"");if(r=fmt.match(/^#*0*\.(0+)/)){o=Math.round(val*Math.pow(10,r[1].length));rr=String(o/Math.pow(10,r[1].length)).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.([0-9]*)$/,function($$,$1){return"."+$1+fill("0",r[1].length-$1.length)});return fmt.match(/0\./)?rr:rr.replace(/^0\./,".")}fmt=fmt.replace(/^#+([0.])/,"$1");if(r=fmt.match(/^(0*)\.(#*)$/)){o=Math.round(aval*Math.pow(10,r[2].length));return sign+String(o/Math.pow(10,r[2].length)).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^([-]?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".")}if(r=fmt.match(/^#,##0([.]?)$/))return sign+commaify(String(Math.round(aval)));if(r=fmt.match(/^#,##0\.([#0]*0)$/)){rr=Math.round((val-Math.floor(val))*Math.pow(10,r[1].length));return val<0?"-"+write_num(type,fmt,-val):commaify(String(Math.floor(val)))+"."+pad(rr,r[1].length,0)}if(r=fmt.match(/^#,#*,#0/))return write_num(type,fmt.replace(/^#,#*,/,""),val);if(r=fmt.match(/^([?]+)([ ]?)\/([ ]?)([?]+)/)){rr=Math.min(Math.max(r[1].length,r[4].length),7);ff=frac(aval,Math.pow(10,rr)-1,false);return sign+(ff[0]||(ff[1]?"":"0"))+(ff[1]?pad(ff[1],rr," ")+r[2]+"/"+r[3]+rpad(ff[2],rr," "):fill(" ",2*rr+1+r[2].length+r[3].length))}if(r=fmt.match(/^# ([?]+)([ ]?)\/([ ]?)([?]+)/)){rr=Math.min(Math.max(r[1].length,r[4].length),7);ff=frac(aval,Math.pow(10,rr)-1,true);return sign+(ff[0]||(ff[1]?"":"0"))+" "+(ff[1]?pad(ff[1],rr," ")+r[2]+"/"+r[3]+rpad(ff[2],rr," "):fill(" ",2*rr+1+r[2].length+r[3].length))}if(r=fmt.match(/^00,000\.([#0]*0)$/)){rr=val==Math.floor(val)?0:Math.round((val-Math.floor(val))*Math.pow(10,r[1].length));return val<0?"-"+write_num(type,fmt,-val):commaify(String(Math.floor(val))).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$){return"00,"+($$.length<3?pad(0,3-$$.length):"")+$$})+"."+pad(rr,r[1].length,0)}switch(fmt){case"0":case"#0":return Math.round(val);case"#,###":var x=commaify(String(Math.round(aval)));return x!=="0"?sign+x:"";default:}throw new Error("unsupported format |"+fmt+"|")};function split_fmt(fmt){var out=[];var in_str=-1;for(var i=0,j=0;i=12?"P":"A";q.t="T";hr="h";i+=3}else if(fmt.substr(i,5)==="AM/PM"){q.v=dt.H>=12?"PM":"AM";q.t="T";i+=5;hr="h"}else{q.t="t";i++}out.push(q);lst=c;break;case"[":o=c;while(fmt[i++]!=="]"&&i-1)o+=c;out.push({t:"n",v:o});break;case"?":o=fmt[i];while(fmt[++i]===c)o+=c;q={t:c,v:o};out.push(q);lst=c;break;case"*":++i;if(fmt[i]==" "||fmt[i]=="*")++i;break;case"(":case")":out.push({t:flen===1?"t":c,v:c});++i;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":o=fmt[i];while("0123456789".indexOf(fmt[++i])>-1)o+=fmt[i];out.push({t:"D",v:o});break;case" ":out.push({t:c,v:c});++i;break;default:if(",$-+/():!^&'~{}<>=€".indexOf(c)===-1)throw"unrecognized character "+fmt[i]+" in "+fmt;out.push({t:"t",v:c});++i;break}}var bt=0;for(i=out.length-1,lst="t";i>=0;--i){switch(out[i].t){case"h":case"H":out[i].t=hr;lst="h";if(bt<1)bt=1;break;case"s":if(bt<3)bt=3;case"d":case"y":case"M":case"e":lst=out[i].t;break;case"m":if(lst==="s"){out[i].t="M";if(bt<2)bt=2}break;case"Z":if(bt<1&&out[i].v.match(/[Hh]/))bt=1;if(bt<2&&out[i].v.match(/[Mm]/))bt=2;if(bt<3&&out[i].v.match(/[Ss]/))bt=3}}switch(bt){case 0:break;case 1:if(dt.u>=.5){dt.u=0;++dt.S}if(dt.S>=60){dt.S=0;++dt.M}if(dt.M>=60){dt.M=0;++dt.H}break;case 2:if(dt.u>=.5){dt.u=0;++dt.S}if(dt.S>=60){dt.S=0;++dt.M}break}for(i=0;i-1||" t".indexOf(out[jj].t)>-1&&"?t".indexOf((out[jj+1]||{}).t)>-1&&(out[jj+1].t=="?"||out[jj+1].v=="/")||out[i].t=="("&&(out[jj].t==")"||out[jj].t=="n")||out[jj].t=="t"&&(out[jj].v=="/"||"$€".indexOf(out[jj].v)>-1||out[jj].v==" "&&(out[jj+1]||{}).t=="?"))){out[i].v+=out[jj].v;delete out[jj];++jj}out[i].v=write_num(out[i].t,out[i].v,flen>1&&v<0&&i>0&&out[i-1].v=="-"?-v:v);out[i].t="t";i=jj-1;break;case"G":out[i].t="t";out[i].v=general_fmt(v,opts);break}}return out.map(function(x){return x.v}).join("")}SSF._eval=eval_fmt;function choose_fmt(fmt,v,o){if(typeof fmt==="number")fmt=(o&&o.table?o.table:table_fmt)[fmt];if(typeof fmt==="string")fmt=split_fmt(fmt);var l=fmt.length;if(l<4&&fmt[l-1].indexOf("@")>-1)--l;switch(fmt.length){case 1:fmt=fmt[0].indexOf("@")>-1?["General","General","General",fmt[0]]:[fmt[0],fmt[0],fmt[0],"@"];break;case 2:fmt=fmt[1].indexOf("@")>-1?[fmt[0],fmt[0],fmt[0],fmt[1]]:[fmt[0],fmt[1],fmt[0],"@"];break;case 3:fmt=fmt[2].indexOf("@")>-1?[fmt[0],fmt[1],fmt[0],fmt[2]]:[fmt[0],fmt[1],fmt[2],"@"];break;case 4:break;default:throw"cannot find right format for |"+fmt+"|"}if(typeof v!=="number")return[fmt.length,fmt[3]];return[l,v>0?fmt[0]:v<0?fmt[1]:fmt[2]]}var format=function format(fmt,v,o){fixopts(o=o||{});if(typeof fmt==="string"&&fmt.toLowerCase()==="general")return general_fmt(v,o);if(typeof fmt==="number")fmt=(o.table||table_fmt)[fmt];var f=choose_fmt(fmt,v,o);if(f[1].toLowerCase()==="general")return general_fmt(v,o);if(v===true)v="TRUE";if(v===false)v="FALSE";if(v===""||typeof v==="undefined")return"";return eval_fmt(f[1],v,o,f[0])};SSF._choose=choose_fmt;SSF._table=table_fmt;SSF.load=function(fmt,idx){table_fmt[idx]=fmt};SSF.format=format;SSF.get_table=function(){return table_fmt};SSF.load_table=function(tbl){for(var i=0;i!=392;++i)if(tbl[i])SSF.load(tbl[i],i)}};make_ssf(SSF);var XLSX={};(function(XLSX){XLSX.version="0.5.14";var current_codepage,current_cptable,cptable;if(typeof module!=="undefined"&&typeof require!=="undefined"){if(typeof cptable==="undefined")cptable=require("codepage");current_codepage=1252;current_cptable=cptable[1252]}function reset_cp(){current_codepage=1252;if(typeof cptable!=="undefined")current_cptable=cptable[1252]}function _getchar(x){return String.fromCharCode(x)}function getdata(data){if(!data)return null;if(data.data)return data.name.substr(-4)!==".bin"?data.data:data.data.split("").map(function(x){return x.charCodeAt(0)});if(data.asNodeBuffer&&typeof Buffer!=="undefined"&&data.name.substr(-4)===".bin")return data.asNodeBuffer();if(data.asBinary&&data.name.substr(-4)!==".bin")return data.asBinary();if(data._data&&data._data.getContent){if(data.name.substr(-4)===".bin")return Array.prototype.slice.call(data._data.getContent());return Array.prototype.slice.call(data._data.getContent(),0).map(function(x){return String.fromCharCode(x)}).join("")}return null}function getzipfile(zip,file){var f=file;if(zip.files[f])return zip.files[f];f=file.toLowerCase();if(zip.files[f])return zip.files[f];f=f.replace(/\//g,"\\");if(zip.files[f])return zip.files[f];throw new Error("Cannot find file "+file+" in zip")}function getzipdata(zip,file,safe){if(!safe)return getdata(getzipfile(zip,file));if(!file)return null;try{return getzipdata(zip,file)}catch(e){return null}}var _fs,jszip;if(typeof JSZip!=="undefined")jszip=JSZip;if(typeof exports!=="undefined"){if(typeof module!=="undefined"&&module.exports){if(typeof Buffer!=="undefined"&&typeof jszip==="undefined")jszip=require("jszip");if(typeof jszip==="undefined")jszip=require("./jszip").JSZip;_fs=require("fs")}}var attregexg=/(\w+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g;var attregex=/(\w+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;function parsexmltag(tag){var words=tag.split(/\s+/);var z={0:words[0]};if(words.length===1)return z;(tag.match(attregexg)||[]).map(function(x){var y=x.match(attregex);z[y[1].replace(/^[a-zA-Z]*:/,"")]=y[2].substr(1,y[2].length-2)});return z}function evert(obj){var o={};Object.keys(obj).forEach(function(k){if(obj.hasOwnProperty(k))o[obj[k]]=k});return o}var encodings={""":'"',"'":"'",">":">","<":"<","&":"&"};var rencoding=evert(encodings);var rencstr="&<>'\"".split("");function unescapexml(text){var s=text+"";for(var y in encodings)s=s.replace(new RegExp(y,"g"),encodings[y]);return s.replace(/_x([0-9a-fA-F]*)_/g,function(m,c){return _chr(parseInt(c,16))})}function escapexml(text){var s=text+"";rencstr.forEach(function(y){s=s.replace(new RegExp(y,"g"),rencoding[y])});return s}function parsexmlbool(value,tag){switch(value){case"0":case 0:case"false":case"FALSE":return false;case"1":case 1:case"true":case"TRUE":return true;default:throw"bad boolean value "+value+" in "+(tag||"?")}}var utf8read=function(orig){var out=[],i=0,c=0,c1=0,c2=0,c3=0;while(i191&&c<224)out.push(_chr((c&31)<<6|c2&63));else{c3=orig.charCodeAt(i++);out.push(_chr((c&15)<<12|(c2&63)<<6|c3&63))}}}return out.join("")};function matchtag(f,g){return new RegExp("<"+f+'(?: xml:space="preserve")?>([^☃]*)'+f+">",(g||"")+"m")}function parseVector(data){var h=parsexmltag(data);var matches=data.match(new RegExp("(.*?)","g"))||[];if(matches.length!=h.size)throw"unexpected vector length "+matches.length+" != "+h.size;var res=[];matches.forEach(function(x){var v=x.replace(/<[/]?vt:variant>/g,"").match(/]*)>(.*));res.push({v:v[2],t:v[1]})});return res}function isval(x){return typeof x!=="undefined"&&x!==null}function readIEEE754(buf,idx,isLE,nl,ml){if(isLE===undefined)isLE=true;if(!nl)nl=8;if(!ml&&nl===8)ml=52;var e,m,el=nl*8-ml-1,eMax=(1<>1;var bits=-7,d=isLE?-1:1,i=isLE?nl-1:0,s=buf[idx+i];i+=d;e=s&(1<<-bits)-1;s>>>=-bits;bits+=el;for(;bits>0;e=e*256+buf[idx+i],i+=d,bits-=8);m=e&(1<<-bits)-1;e>>>=-bits;bits+=ml;for(;bits>0;m=m*256+buf[idx+i],i+=d,bits-=8);if(e===eMax)return m?NaN:(s?-1:1)*Infinity;else if(e===0)e=1-eBias;else{m=m+Math.pow(2,ml);e=e-eBias}return(s?-1:1)*m*Math.pow(2,e-ml)}var __toBuffer;if(typeof Buffer!=="undefined"){Buffer.prototype.hexlify=function(){return this.toString("hex")};__toBuffer=function(bufs){return Buffer.concat(bufs[0])}}else{__toBuffer=function(bufs){var x=[];for(var i=0;i!=bufs[0].length;++i){x=x.concat(bufs[0][i])}return x}}var __readUInt8=function(b,idx){return b.readUInt8?b.readUInt8(idx):b[idx]};var __readUInt16LE=function(b,idx){return b.readUInt16LE?b.readUInt16LE(idx):b[idx+1]*(1<<8)+b[idx]};var __readInt16LE=function(b,idx){var u=__readUInt16LE(b,idx);if(!(u&32768))return u;return(65535-u+1)*-1};var __readUInt32LE=function(b,idx){return b.readUInt32LE?b.readUInt32LE(idx):b[idx+3]*(1<<24)+b[idx+2]*(1<<16)+b[idx+1]*(1<<8)+b[idx]};var __readInt32LE=function(b,idx){if(b.readInt32LE)return b.readInt32LE(idx);var u=__readUInt32LE(b,idx);if(!(u&2147483648))return u;return(4294967295-u+1)*-1};var __readDoubleLE=function(b,idx){return b.readDoubleLE?b.readDoubleLE(idx):readIEEE754(b,idx||0)};function ReadShift(size,t){var o="",oo=[],w,vv,i,loc;t=t||"u";if(size==="ieee754"){size=8;t="f"}switch(size){case 1:o=__readUInt8(this,this.l);break;case 2:o=(t==="u"?__readUInt16LE:__readInt16LE)(this,this.l);break;case 4:o=__readUInt32LE(this,this.l);break;case 8:if(t==="f"){o=__readDoubleLE(this,this.l);break}case 16:o=this.toString("hex",this.l,this.l+size);break;case"dbcs":size=2*t;loc=this.l;for(i=0;i!=t;++i){oo.push(_getchar(__readUInt16LE(this,loc)));loc+=2}o=oo.join("");break;case"sbcs":size=t;o="";loc=this.l;for(i=0;i!=t;++i){o+=_getchar(__readUInt8(this,loc));loc+=1}break}this.l+=size;return o}function prep_blob(blob,pos){blob.read_shift=ReadShift.bind(blob);blob.l=pos||0;var read=ReadShift.bind(blob);return[read]}function parsenoop(blob,length){blob.l+=length}var recordhopper=function(data,cb,opts){var tmpbyte,cntbyte,length;prep_blob(data,data.l||0);while(data.l"+escapexml(str)+"",h:str};if(fRichStr){var dwSizeStrRun=data.read_shift(4);for(var i=0;i!=dwSizeStrRun;++i)rgsStrRun.push(parse_StrRun(data));z.r=JSON.stringify(rgsStrRun)}if(fExtStr){}data.l=start+length;return z};function parse_Cell(data){var col=data.read_shift(4);var iStyleRef=data.read_shift(2);iStyleRef+=data.read_shift(1)<<16;var fPhShow=data.read_shift(1);return{c:col,iStyleRef:iStyleRef}}var parse_CodeName=function(data,length){return parse_XLWideString(data,length)};var parse_RelID=function(data,length){return parse_XLNullableWideString(data,length)};function parse_RkNumber(data){var b=data.slice(data.l,data.l+4);var fX100=b[0]&1,fInt=b[0]&2;data.l+=4;b[0]&=~3;var RK=fInt===0?__readDoubleLE([0,0,0,0,b[0],b[1],b[2],b[3]],0):__readInt32LE(b,0)>>2;return fX100?RK/100:RK}var parse_UncheckedRfX=function(data){var cell={s:{},e:{}};cell.s.r=data.read_shift(4);cell.e.r=data.read_shift(4);cell.s.c=data.read_shift(4);cell.e.c=data.read_shift(4);return cell};var parse_XLNullableWideString=function(data){var cchCharacters=data.read_shift(4);return cchCharacters===0||cchCharacters===4294967295?"":data.read_shift("dbcs",cchCharacters)};var parse_XLWideString=function(data){var cchCharacters=data.read_shift(4);return cchCharacters===0?"":data.read_shift("dbcs",cchCharacters)};function parse_Xnum(data,length){return data.read_shift("ieee754")}var BErr={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"};var RBErr=evert(BErr);function parse_BrtColor(data,length){var read=data.read_shift.bind(data);var out={};var d=read(1);out.fValidRGB=d&1;out.xColorType=d>>>1;out.index=read(1);out.nTintAndShade=read(2,"i");out.bRed=read(1);out.bGreen=read(1);out.bBlue=read(1);out.bAlpha=read(1)}function parse_FontFlags(data,length){var d=data.read_shift(1);data.l++;var out={fItalic:d&2,fStrikeout:d&8,fOutline:d&16,fShadow:d&32,fCondense:d&64,fExtend:d&128};return out}var parse_rs=function(){var tregex=matchtag("t"),rpregex=matchtag("rPr");var parse_rpr=function(rpr,intro,outro){var font={};(rpr.match(/<[^>]*>/g)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":break;case"":break;case"":font.strike=1;break;case"":break;case"":font.u=1;break;case"":break;case"":font.b=1;break;case"":break;case"":font.i=1;break;case"":break;case"');outro.push("")};function parse_r(r){var terms=[[],"",[]];var t=r.match(tregex);if(!isval(t))return"";terms[1]=t[1];var rpr=r.match(rpregex);if(isval(rpr))parse_rpr(rpr[1],terms[0],terms[2]);return terms[0].join("")+terms[1].replace(/\r\n/g,"
")+terms[2].join("")}return function(rs){return rs.replace(//g,"").split(/<\/r>/).map(parse_r).join("")}}();var parse_si=function(x,opts){var html=opts?opts.cellHTML:true;var z={};if(!x)return null;var y;if(x[1]==="t"){z.t=utf8read(unescapexml(x.substr(x.indexOf(">")+1).split(/<\/t>/)[0]));z.r=x;if(html)z.h=z.t}else if(y=x.match(//)){z.r=x;z.t=utf8read(unescapexml(x.replace(/<[^>]*>/gm,"")));if(html)z.h=parse_rs(x)}return z};var parse_sst_xml=function(data,opts){var s=[];var sst=data.match(new RegExp("]*)>([\\s\\S]*)","m"));if(isval(sst)){s=sst[2].replace(/<(?:si|sstItem)>/g,"").split(/<\/(?:si|sstItem)>/).map(function(x){return parse_si(x,opts)}).filter(function(x){return x});sst=parsexmltag(sst[1]);s.Count=sst.count;s.Unique=sst.uniqueCount}return s};var parse_BrtBeginSst=function(data,length){return[data.read_shift(4),data.read_shift(4)]};var parse_sst_bin=function(data,opts){var s=[];recordhopper(data,function(val,R){switch(R.n){case"BrtBeginSst":s.Count=val[0];s.Unique=val[1];break;case"BrtSSTItem":s.push(val);break;case"BrtEndSst":return true;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return s};var styles={};function parseNumFmts(t){styles.NumberFmt=[];for(var y in SSF._table)styles.NumberFmt[y]=SSF._table[y];t[0].match(/<[^>]*>/g).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":case"":break;case"0)SSF.load(f,i)}break;default:throw"unrecognized "+y[0]+" in numFmts"}})}function parseCXfs(t){styles.CellXf=[];t[0].match(/<[^>]*>/g).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":case"":break;case"":break;case"":case"":break;case"":break;case"]*)>.*<\/numFmts>/))parseNumFmts(t);if(t=data.match(/]*)>.*<\/cellXfs>/))parseCXfs(t);return styles}function parse_BrtFmt(data,length){var ifmt=data.read_shift(2);var stFmtCode=parse_XLWideString(data,length-2);return[ifmt,stFmtCode]}function parse_BrtFont(data,length){var read=data.read_shift.bind(data);var out={flags:{}};out.dyHeight=read(2);out.grbit=parse_FontFlags(data,2);out.bls=read(2);out.sss=read(2);out.uls=read(1);out.bFamily=read(1);out.bCharSet=read(1);data.l++;out.brtColor=parse_BrtColor(data,8);out.bFontScheme=read(1);out.name=parse_XLWideString(data,length-21);out.flags.Bold=out.bls===700;out.flags.Italic=out.grbit.fItalic;out.flags.Strikeout=out.grbit.fStrikeout;out.flags.Outline=out.grbit.fOutline;out.flags.Shadow=out.grbit.fShadow;out.flags.Condense=out.grbit.fCondense;out.flags.Extend=out.grbit.fExtend;out.flags.Sub=out.sss&2;out.flags.Sup=out.sss&1;return out}function parse_BrtXF(data,length){var ixfeParent=data.read_shift(2);var ifmt=data.read_shift(2);parsenoop(data,length-4);return{ixfe:ixfeParent,ifmt:ifmt}}function parse_sty_bin(data,opts){styles.NumberFmt=[];for(var y in SSF._table)styles.NumberFmt[y]=SSF._table[y];styles.CellXf=[];var state="";var pass=false;recordhopper(data,function(val,R,RT){switch(R.n){case"BrtFmt":styles.NumberFmt[val[0]]=val[1];SSF.load(val[1],val[0]);break;case"BrtFont":break;case"BrtKnownFonts":break;case"BrtFill":break;case"BrtBorder":break;case"BrtXF":if(state==="CELLXFS"){styles.CellXf.push(val)}break;case"BrtStyle":break;case"BrtRowHdr":break;case"BrtCellMeta":break;case"BrtDXF":break;case"BrtMRUColor":break;case"BrtIndexedColor":break;case"BrtBeginStyleSheet":break;case"BrtEndStyleSheet":break;case"BrtBeginTableStyle":break;case"BrtTableStyleElement":break;case"BrtEndTableStyle":break;case"BrtBeginFmts":state="FMTS";break;case"BrtEndFmts":state="";break;case"BrtBeginFonts":state="FONTS";break;case"BrtEndFonts":state="";break;case"BrtACBegin":state="ACFONTS";break;case"BrtACEnd":state="";break;case"BrtBeginFills":state="FILLS";break;case"BrtEndFills":state="";break;case"BrtBeginBorders":state="BORDERS";break;case"BrtEndBorders":state="";break;case"BrtBeginCellStyleXFs":state="CELLSTYLEXFS";break;case"BrtEndCellStyleXFs":state="";break;case"BrtBeginCellXFs":state="CELLXFS";break;case"BrtEndCellXFs":state="";break;case"BrtBeginStyles":state="STYLES";break;case"BrtEndStyles":state="";break;case"BrtBeginDXFs":state="DXFS";break;case"BrtEndDXFs":state="";break;case"BrtBeginTableStyles":state="TABLESTYLES";break;case"BrtEndTableStyles":state="";break;case"BrtBeginColorPalette":state="COLORPALETTE";break;case"BrtEndColorPalette":state="";break;case"BrtBeginIndexedColors":state="INDEXEDCOLORS";break;case"BrtEndIndexedColors":state="";break;case"BrtBeginMRUColors":state="MRUCOLORS";break;case"BrtEndMRUColors":state="";break;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;case"BrtBeginStyleSheetExt14":break;case"BrtBeginSlicerStyles":break;case"BrtEndSlicerStyles":break;case"BrtBeginTimelineStylesheetExt15":break;case"BrtEndTimelineStylesheetExt15":break;case"BrtBeginTimelineStyles":break;case"BrtEndTimelineStyles":break;case"BrtEndStyleSheetExt14":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return styles}var ct2type={"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.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.theme+xml":"themes",foo:"bar"};var XMLNS_CT="http://schemas.openxmlformats.org/package/2006/content-types";function parseProps(data){var p={Company:""},q={};var strings=["Application","DocSecurity","Company","AppVersion"];var bools=["HyperlinksChanged","SharedDoc","LinksUpToDate","ScaleCrop"];var xtra=["HeadingPairs","TitlesOfParts"];var xtracp=["category","contentStatus","lastModifiedBy","lastPrinted","revision","version"];var xtradc=["creator","description","identifier","language","subject","title"];var xtradcterms=["created","modified"];xtra=xtra.concat(xtracp.map(function(x){return"cp:"+x}));xtra=xtra.concat(xtradc.map(function(x){return"dc:"+x}));xtra=xtra.concat(xtradcterms.map(function(x){return"dcterms:"+x}));strings.forEach(function(f){p[f]=(data.match(matchtag(f))||[])[1]});bools.forEach(function(f){p[f]=(data.match(matchtag(f))||[])[1]=="true"});xtra.forEach(function(f){var cur=data.match(new RegExp("<"+f+"[^>]*>(.*)"+f+">"));if(cur&&cur.length>0)q[f]=cur[1]});if(q.HeadingPairs&&q.TitlesOfParts){var v=parseVector(q.HeadingPairs);
+var j=0,widx=0;for(var i=0;i!==v.length;++i){switch(v[i].v){case"Worksheets":widx=j;p.Worksheets=+v[++i].v;break;case"Named Ranges":++i;break}}var parts=parseVector(q.TitlesOfParts).map(function(x){return utf8read(x.v)});p.SheetNames=parts.slice(widx,widx+p.Worksheets)}p.Creator=q["dc:creator"];p.LastModifiedBy=q["cp:lastModifiedBy"];p.CreatedDate=new Date(q["dcterms:created"]);p.ModifiedDate=new Date(q["dcterms:modified"]);return p}function parseCustomProps(data){var p={},name;data.match(/<[^>]+>([^<]*)/g).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":name=null;break;default:if(x.indexOf("");var type=toks[0].substring(4),text=toks[1];switch(type){case"lpstr":case"lpwstr":case"bstr":case"lpwstr":p[name]=unescapexml(text);break;case"bool":p[name]=parsexmlbool(text,"");break;case"i1":case"i2":case"i4":case"i8":case"int":case"uint":p[name]=parseInt(text,10);break;case"r4":case"r8":case"decimal":p[name]=parseFloat(text);break;case"filetime":case"date":p[name]=text;break;case"cy":case"error":p[name]=unescapexml(text);break;default:console.warn("Unexpected",x,type,toks)}}}});return p}function parseDeps(data){var d=[];var l=0,i=1;(data.match(/<[^>]*>/g)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":case"":break;case"]*>/g)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"0?ct.calcchains[0]:"";ct.sst=ct.strs.length>0?ct.strs[0]:"";ct.style=ct.styles.length>0?ct.styles[0]:"";delete ct.calcchains;return ct}function parseRels(data,currentFilePath){if(!data)return data;if(currentFilePath.charAt(0)!=="/"){currentFilePath="/"+currentFilePath}var rels={};var resolveRelativePathIntoAbsolute=function(to){var toksFrom=currentFilePath.split("/");toksFrom.pop();var toksTo=to.split("/");var reversed=[];while(toksTo.length!==0){var tokTo=toksTo.shift();if(tokTo===".."){toksFrom.pop()}else if(tokTo!=="."){toksFrom.push(tokTo)}}return toksFrom.join("/")};data.match(/<[^>]*>/g).forEach(function(x){var y=parsexmltag(x);if(y[0]==="/))return[];var authors=[];var commentList=[];data.match(/([^\u2603]*)<\/authors>/m)[1].split("
").forEach(function(x){if(x===""||x.trim()==="")return;authors.push(x.match(/]*>(.*)/)[1])});data.match(/([^\u2603]*)<\/commentList>/m)[1].split("").forEach(function(x,index){if(x===""||x.trim()==="")return;var y=parsexmltag(x.match(/]*>/)[0]);var comment={author:y.authorId&&authors[y.authorId]?authors[y.authorId]:undefined,ref:y.ref,guid:y.guid};var cell=decode_cell(y.ref);if(opts.sheetRows&&opts.sheetRows<=cell.r)return;var textMatch=x.match(/([^\u2603]*)<\/text>/m);if(!textMatch||!textMatch[1])return;var rt=parse_si(textMatch[1]);comment.r=rt.r;comment.t=rt.t;if(opts.cellHTML)comment.h=rt.h;commentList.push(comment)});return commentList}var parse_BrtBeginComment=function(data,length){var out={};out.iauthor=data.read_shift(4);var rfx=parse_UncheckedRfX(data,16);out.rfx=rfx.s;out.ref=encode_cell(rfx.s);data.l+=16;return out};var parse_BrtCommentAuthor=parse_XLWideString;var parse_BrtCommentText=parse_RichStr;function parse_comments_bin(data,opts){var out=[];var authors=[];var c={};var pass=false;recordhopper(data,function(val,R,RT){switch(R.n){case"BrtCommentAuthor":authors.push(val);break;case"BrtBeginComment":c=val;break;case"BrtCommentText":c.t=val.t;c.h=val.h;c.r=val.r;break;case"BrtEndComment":c.author=authors[c.iauthor];delete c.iauthor;if(opts.sheetRows&&opts.sheetRows<=c.rfx.r)break;delete c.rfx;out.push(c);break;case"BrtBeginComments":break;case"BrtEndComments":break;case"BrtBeginCommentAuthors":break;case"BrtEndCommentAuthors":break;case"BrtBeginCommentList":break;case"BrtEndCommentList":break;default:if(!pass||opts.WTF)throw new Error("Unexpected record "+RT+" "+R.n)}});return out}function parse_comments(zip,dirComments,sheets,sheetRels,opts){for(var i=0;i!=dirComments.length;++i){var canonicalpath=dirComments[i];var comments=parse_cmnt(getzipdata(zip,canonicalpath.replace(/^\//,""),true),canonicalpath,opts);if(!comments||!comments.length)continue;var sheetNames=Object.keys(sheets);for(var j=0;j!=sheetNames.length;++j){var sheetName=sheetNames[j];var rels=sheetRels[sheetName];if(rels){var rel=rels[canonicalpath];if(rel)insertCommentsIntoSheet(sheetName,sheets[sheetName],comments)}}}}function insertCommentsIntoSheet(sheetName,sheet,comments){comments.forEach(function(comment){var cell=sheet[comment.ref];if(!cell){cell={};sheet[comment.ref]=cell;var range=decode_range(sheet["!ref"]);var thisCell=decode_cell(comment.ref);if(range.s.r>thisCell.r)range.s.r=thisCell.r;if(range.e.rthisCell.c)range.s.c=thisCell.c;if(range.e.c/);if(ref&&ref.length==2&&ref[1].indexOf(":")!==-1)s["!ref"]=ref[1];var mergecells=[];if(data.match(/<\/mergeCells>/)){var merges=data.match(//g);mergecells=merges.map(function(range){return decode_range(//.exec(range)[1])})}var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var q=["v","f"];var sidx=0;if(!data.match(//))data.match(/([^\u2603]*)<\/sheetData>/m)[1].split("").forEach(function(x){if(x===""||x.trim()==="")return;var row=parsexmltag(x.match(/]*>/)[0]);if(opts.sheetRows&&opts.sheetRows<+row.r)return;if(refguess.s.r>row.r-1)refguess.s.r=row.r-1;if(refguess.e.r")+1).split(/]*>/)||[c])[0]);delete cell[0];var d=c.substr(c.indexOf(">")+1);var p={};q.forEach(function(f){var x=d.match(matchtag(f));if(x)p[f]=unescapexml(x[1])});if(cell.t===undefined&&p.v===undefined){if(!opts.sheetStubs)return;p.t="str";p.v=undefined}else p.t=cell.t?cell.t:"n";if(refguess.s.c>idx)refguess.s.c=idx;if(refguess.e.c(.*)<\/is>/);is=is?parse_si(is[1]):{t:"",r:""};p.t="str";p.v=is.t;break;case"b":if(typeof p.v!=="boolean")p.v=parsexmlbool(p.v);break;case"d":var epoch=Date.parse(p.v);p.v=(epoch-new Date(Date.UTC(1899,11,30)))/(24*60*60*1e3);p.t="n";break;case"e":p.raw=RBErr[p.v];break}var fmtid=0;if(cell.s&&styles.CellXf){var cf=styles.CellXf[cell.s];if(cf&&cf.numFmtId)fmtid=cf.numFmtId}try{p.w=SSF.format(fmtid,p.v,_ssfopts);if(opts.cellNF)p.z=SSF._table[fmtid]}catch(e){if(opts.WTF)throw e}s[cell.r]=p})});if(!s["!ref"])s["!ref"]=encode_range(refguess);if(opts.sheetRows){var tmpref=decode_range(s["!ref"]);if(opts.sheetRows<+tmpref.e.r){tmpref.e.r=opts.sheetRows-1;if(tmpref.e.r>refguess.e.r)tmpref.e.r=refguess.e.r;if(tmpref.e.rrefguess.e.c)tmpref.e.c=refguess.e.c;if(tmpref.e.c0)s["!merges"]=mergecells;return s}var parse_BrtRowHdr=function(data,length){var z={};z.r=data.read_shift(4);data.l+=length-4;return z};var parse_BrtWsDim=parse_UncheckedRfX;var parse_BrtWsProp=function(data,length){var z={};data.l+=19;z.name=parse_CodeName(data,length-19);return z};var parse_BrtCellBlank=parsenoop;var parse_BrtCellBool=function(data,length){var cell=parse_Cell(data);var fBool=data.read_shift(1);return[cell,fBool,"b"]};var parse_BrtCellError=function(data,length){var cell=parse_Cell(data);var fBool=data.read_shift(1);return[cell,fBool,"e"]};var parse_BrtCellIsst=function(data,length){var cell=parse_Cell(data);var isst=data.read_shift(4);return[cell,isst,"s"]};var parse_BrtCellReal=function(data,length){var cell=parse_Cell(data);var value=parse_Xnum(data);return[cell,value,"n"]};var parse_BrtCellRk=function(data,length){var cell=parse_Cell(data);var value=parse_RkNumber(data);return[cell,value,"n"]};var parse_BrtCellSt=function(data,length){var cell=parse_Cell(data);var value=parse_XLWideString(data);return[cell,value,"str"]};var parse_BrtFmlaBool=function(data,length,opts){var cell=parse_Cell(data);var value=data.read_shift(1);var o=[cell,value,"b"];if(opts.cellFormula){var formula=parse_CellParsedFormula(data,length-9);o[3]=""}else data.l+=length-9;return o};var parse_BrtFmlaError=function(data,length,opts){var cell=parse_Cell(data);var value=data.read_shift(1);var o=[cell,value,"e"];if(opts.cellFormula){var formula=parse_CellParsedFormula(data,length-9);o[3]=""}else data.l+=length-9;return o};var parse_BrtFmlaNum=function(data,length,opts){var cell=parse_Cell(data);var value=parse_Xnum(data);var o=[cell,value,"n"];if(opts.cellFormula){var formula=parse_CellParsedFormula(data,length-16);o[3]=""}else data.l+=length-16;return o};var parse_BrtFmlaString=function(data,length,opts){var start=data.l;var cell=parse_Cell(data);var value=parse_XLWideString(data);var o=[cell,value,"str"];if(opts.cellFormula){var formula=parse_CellParsedFormula(data,start+length-data.l);o[3]=""}else data.l=start+length;return o};var parse_BrtMergeCell=parse_UncheckedRfX;var parse_ws_bin=function(data,opts){if(!data)return data;var s={};var ref;var refguess={s:{r:1e6,c:1e6},e:{r:0,c:0}};var pass=false,end=false;var row,p,cf;var mergecells=[];recordhopper(data,function(val,R){if(end)return;switch(R.n){case"BrtWsDim":ref=val;break;case"BrtRowHdr":row=val;if(opts.sheetRows&&opts.sheetRows<=row.r)end=true;break;case"BrtFmlaBool":case"BrtFmlaError":case"BrtFmlaNum":case"BrtFmlaString":case"BrtCellBool":case"BrtCellError":case"BrtCellIsst":case"BrtCellReal":case"BrtCellRk":case"BrtCellSt":p={t:val[2]};switch(val[2]){case"n":p.v=val[1];break;case"s":p.v=strs[val[1]].t;p.r=strs[val[1]].r;break;case"b":p.v=val[1]?true:false;break;case"e":p.raw=val[1];p.v=BErr[p.raw];break;case"str":p.v=utf8read(val[1]);break}if(opts.cellFormula&&val.length>3)p.f=val[3];if(cf=styles.CellXf[val[0].iStyleRef])try{p.w=SSF.format(cf.ifmt,p.v,_ssfopts);if(opts.cellNF)p.z=SSF._table[cf.ifmt]}catch(e){if(opts.WTF)throw e}s[encode_cell({c:val[0].c,r:row.r})]=p;if(refguess.s.r>row.r)refguess.s.r=row.r;if(refguess.s.c>val[0].c)refguess.s.c=val[0].c;if(refguess.e.rrefguess.e.r)tmpref.e.r=refguess.e.r;if(tmpref.e.rrefguess.e.c)tmpref.e.c=refguess.e.c;if(tmpref.e.c0)s["!merges"]=mergecells;return s};var WBPropsDef={allowRefreshQuery:"0",autoCompressPictures:"1",backupFile:"0",checkCompatibility:"0",codeName:"",date1904:"0",dateCompatibility:"1",filterPrivacy:"0",hidePivotFieldList:"0",promptedSolutions:"0",publishItems:"0",refreshAllConnections:false,saveExternalLinkValues:"1",showBorderUnselectedTables:"1",showInkAnnotation:"1",showObjects:"all",showPivotChartFilter:"0"};var WBViewDef={activeTab:"0",autoFilterDateGrouping:"1",firstSheet:"0",minimized:"0",showHorizontalScroll:"1",showSheetTabs:"1",showVerticalScroll:"1",tabRatio:"600",visibility:"visible"};var SheetDef={state:"visible"};var CalcPrDef={calcCompleted:"true",calcMode:"auto",calcOnSave:"true",concurrentCalc:"true",fullCalcOnLoad:"false",fullPrecision:"true",iterate:"false",iterateCount:"100",iterateDelta:"0.001",refMode:"A1"};var CustomWBViewDef={autoUpdate:"false",changesSavedWin:"false",includeHiddenRowCol:"true",includePrintSettings:"true",maximized:"false",minimized:"false",onlySync:"false",personalView:"false",showComments:"commIndicator",showFormulaBar:"true",showHorizontalScroll:"true",showObjects:"all",showSheetTabs:"true",showStatusbar:"true",showVerticalScroll:"true",tabRatio:"600",xWindow:"0",yWindow:"0"};var XMLNS_WB=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"];function parse_wb_xml(data){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var pass=false;data.match(/<[^>]*>/g).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"":break;case"":break;case"":break;case"":delete y[0];wb.WBProps=y;break;case"":break;case"":case"":break;case"":case"":break;case"":break;case"":break;case"":break;case"":pass=true;break;case"":pass=false;break;case"":case"":break;case"":delete y[0];wb.CalcPr=y;break;case"":case"":case"":break;case"":case"":case"":break;case"":case"":break;case"":break;case"":break;case"":case"":break;case"":case"":case"":break;case"":pass=false;break;case"":pass=false;break}});if(XMLNS_WB.indexOf(wb.xmlns)===-1)throw new Error("Unknown Namespace: "+wb.xmlns);var z;for(z in WBPropsDef)if(typeof wb.WBProps[z]==="undefined")wb.WBProps[z]=WBPropsDef[z];for(z in CalcPrDef)if(typeof wb.CalcPr[z]==="undefined")wb.CalcPr[z]=CalcPrDef[z];wb.WBView.forEach(function(w){for(var z in WBViewDef)if(typeof w[z]==="undefined")w[z]=WBViewDef[z]});wb.Sheets.forEach(function(w){for(var z in SheetDef)if(typeof w[z]==="undefined")w[z]=SheetDef[z]});_ssfopts.date1904=parsexmlbool(wb.WBProps.date1904,"date1904");return wb}var parse_BrtBundleSh=function(data,length){var z={};z.hsState=data.read_shift(4);z.iTabID=data.read_shift(4);z.strRelID=parse_RelID(data,length-8);z.name=parse_XLWideString(data);return z};var parse_wb_bin=function(data,opts){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""};var pass=false,z;recordhopper(data,function(val,R){switch(R.n){case"BrtBundleSh":wb.Sheets.push(val);break;case"BrtBeginBook":break;case"BrtFileVersion":break;case"BrtWbProp":break;case"BrtACBegin":break;case"BrtAbsPath15":break;case"BrtACEnd":break;case"BrtBookProtection":break;case"BrtBeginBookViews":break;case"BrtBookView":break;case"BrtEndBookViews":break;case"BrtBeginBundleShs":break;case"BrtEndBundleShs":break;case"BrtBeginFnGroup":break;case"BrtEndFnGroup":break;case"BrtBeginExternals":break;case"BrtSupSelf":break;case"BrtSupBookSrc":break;case"BrtExternSheet":break;case"BrtEndExternals":break;case"BrtName":break;case"BrtCalcProp":break;case"BrtUserBookView":break;case"BrtBeginPivotCacheIDs":break;case"BrtBeginPivotCacheID":break;case"BrtEndPivotCacheID":break;case"BrtEndPivotCacheIDs":break;case"BrtWebOpt":break;case"BrtFileRecover":break;case"BrtFileSharing":break;case"BrtFRTBegin":pass=true;break;case"BrtFRTEnd":pass=false;break;case"BrtEndBook":break;default:if(!pass)throw new Error("Unexpected record "+R.n)}});for(z in WBPropsDef)if(typeof wb.WBProps[z]==="undefined")wb.WBProps[z]=WBPropsDef[z];for(z in CalcPrDef)if(typeof wb.CalcPr[z]==="undefined")wb.CalcPr[z]=CalcPrDef[z];wb.WBView.forEach(function(w){for(var z in WBViewDef)if(typeof w[z]==="undefined")w[z]=WBViewDef[z]});wb.Sheets.forEach(function(w){for(var z in SheetDef)if(typeof w[z]==="undefined")w[z]=SheetDef[z]});_ssfopts.date1904=parsexmlbool(wb.WBProps.date1904,"date1904");return wb};function parse_wb(data,name,opts){return name.substr(-4)===".bin"?parse_wb_bin(data,opts):parse_wb_xml(data,opts)}function parse_ws(data,name,opts){return name.substr(-4)===".bin"?parse_ws_bin(data,opts):parse_ws_xml(data,opts)}function parse_sty(data,name,opts){return name.substr(-4)===".bin"?parse_sty_bin(data,opts):parse_sty_xml(data,opts)}function parse_sst(data,name,opts){return name.substr(-4)===".bin"?parse_sst_bin(data,opts):parse_sst_xml(data,opts)}function parse_cmnt(data,name,opts){return name.substr(-4)===".bin"?parse_comments_bin(data,opts):parse_comments_xml(data,opts)}var RecordEnum={0:{n:"BrtRowHdr",f:parse_BrtRowHdr},1:{n:"BrtCellBlank",f:parse_BrtCellBlank},2:{n:"BrtCellRk",f:parse_BrtCellRk},3:{n:"BrtCellError",f:parse_BrtCellError},4:{n:"BrtCellBool",f:parse_BrtCellBool},5:{n:"BrtCellReal",f:parse_BrtCellReal},6:{n:"BrtCellSt",f:parse_BrtCellSt},7:{n:"BrtCellIsst",f:parse_BrtCellIsst},8:{n:"BrtFmlaString",f:parse_BrtFmlaString},9:{n:"BrtFmlaNum",f:parse_BrtFmlaNum},10:{n:"BrtFmlaBool",f:parse_BrtFmlaBool},11:{n:"BrtFmlaError",f:parse_BrtFmlaError},19:{n:"BrtSSTItem",f:parse_RichStr},20:{n:"BrtPCDIMissing",f:parsenoop},21:{n:"BrtPCDINumber",f:parsenoop},22:{n:"BrtPCDIBoolean",f:parsenoop},23:{n:"BrtPCDIError",f:parsenoop},24:{n:"BrtPCDIString",f:parsenoop},25:{n:"BrtPCDIDatetime",f:parsenoop},26:{n:"BrtPCDIIndex",f:parsenoop},27:{n:"BrtPCDIAMissing",f:parsenoop},28:{n:"BrtPCDIANumber",f:parsenoop},29:{n:"BrtPCDIABoolean",f:parsenoop},30:{n:"BrtPCDIAError",f:parsenoop},31:{n:"BrtPCDIAString",f:parsenoop},32:{n:"BrtPCDIADatetime",f:parsenoop},33:{n:"BrtPCRRecord",f:parsenoop},34:{n:"BrtPCRRecordDt",f:parsenoop},35:{n:"BrtFRTBegin",f:parsenoop},36:{n:"BrtFRTEnd",f:parsenoop},37:{n:"BrtACBegin",f:parsenoop},38:{n:"BrtACEnd",f:parsenoop},39:{n:"BrtName",f:parsenoop},40:{n:"BrtIndexRowBlock",f:parsenoop},42:{n:"BrtIndexBlock",f:parsenoop},43:{n:"BrtFont",f:parse_BrtFont},44:{n:"BrtFmt",f:parse_BrtFmt},45:{n:"BrtFill",f:parsenoop},46:{n:"BrtBorder",f:parsenoop},47:{n:"BrtXF",f:parse_BrtXF},48:{n:"BrtStyle",f:parsenoop},49:{n:"BrtCellMeta",f:parsenoop},50:{n:"BrtValueMeta",f:parsenoop},51:{n:"BrtMdb",f:parsenoop},52:{n:"BrtBeginFmd",f:parsenoop},53:{n:"BrtEndFmd",f:parsenoop},54:{n:"BrtBeginMdx",f:parsenoop},55:{n:"BrtEndMdx",f:parsenoop},56:{n:"BrtBeginMdxTuple",f:parsenoop},57:{n:"BrtEndMdxTuple",f:parsenoop},58:{n:"BrtMdxMbrIstr",f:parsenoop},59:{n:"BrtStr",f:parsenoop},60:{n:"BrtColInfo",f:parsenoop},62:{n:"BrtCellRString",f:parsenoop},64:{n:"BrtDVal",f:parsenoop},65:{n:"BrtSxvcellNum",f:parsenoop},66:{n:"BrtSxvcellStr",f:parsenoop},67:{n:"BrtSxvcellBool",f:parsenoop},68:{n:"BrtSxvcellErr",f:parsenoop},69:{n:"BrtSxvcellDate",f:parsenoop},70:{n:"BrtSxvcellNil",f:parsenoop},128:{n:"BrtFileVersion",f:parsenoop},129:{n:"BrtBeginSheet",f:parsenoop},130:{n:"BrtEndSheet",f:parsenoop},131:{n:"BrtBeginBook",f:parsenoop},132:{n:"BrtEndBook",f:parsenoop},133:{n:"BrtBeginWsViews",f:parsenoop},134:{n:"BrtEndWsViews",f:parsenoop},135:{n:"BrtBeginBookViews",f:parsenoop},136:{n:"BrtEndBookViews",f:parsenoop},137:{n:"BrtBeginWsView",f:parsenoop},138:{n:"BrtEndWsView",f:parsenoop},139:{n:"BrtBeginCsViews",f:parsenoop},140:{n:"BrtEndCsViews",f:parsenoop},141:{n:"BrtBeginCsView",f:parsenoop},142:{n:"BrtEndCsView",f:parsenoop},143:{n:"BrtBeginBundleShs",f:parsenoop},144:{n:"BrtEndBundleShs",f:parsenoop},145:{n:"BrtBeginSheetData",f:parsenoop},146:{n:"BrtEndSheetData",f:parsenoop},147:{n:"BrtWsProp",f:parse_BrtWsProp},148:{n:"BrtWsDim",f:parse_BrtWsDim},151:{n:"BrtPane",f:parsenoop},152:{n:"BrtSel",f:parsenoop},153:{n:"BrtWbProp",f:parsenoop},154:{n:"BrtWbFactoid",f:parsenoop},155:{n:"BrtFileRecover",f:parsenoop},156:{n:"BrtBundleSh",f:parse_BrtBundleSh},157:{n:"BrtCalcProp",f:parsenoop},158:{n:"BrtBookView",f:parsenoop},159:{n:"BrtBeginSst",f:parse_BrtBeginSst},160:{n:"BrtEndSst",f:parsenoop},161:{n:"BrtBeginAFilter",f:parsenoop},162:{n:"BrtEndAFilter",f:parsenoop},163:{n:"BrtBeginFilterColumn",f:parsenoop},164:{n:"BrtEndFilterColumn",f:parsenoop},165:{n:"BrtBeginFilters",f:parsenoop},166:{n:"BrtEndFilters",f:parsenoop},167:{n:"BrtFilter",f:parsenoop},168:{n:"BrtColorFilter",f:parsenoop},169:{n:"BrtIconFilter",f:parsenoop},170:{n:"BrtTop10Filter",f:parsenoop},171:{n:"BrtDynamicFilter",f:parsenoop},172:{n:"BrtBeginCustomFilters",f:parsenoop},173:{n:"BrtEndCustomFilters",f:parsenoop},174:{n:"BrtCustomFilter",f:parsenoop},175:{n:"BrtAFilterDateGroupItem",f:parsenoop},176:{n:"BrtMergeCell",f:parse_BrtMergeCell},177:{n:"BrtBeginMergeCells",f:parsenoop},178:{n:"BrtEndMergeCells",f:parsenoop},179:{n:"BrtBeginPivotCacheDef",f:parsenoop},180:{n:"BrtEndPivotCacheDef",f:parsenoop},181:{n:"BrtBeginPCDFields",f:parsenoop},182:{n:"BrtEndPCDFields",f:parsenoop},183:{n:"BrtBeginPCDField",f:parsenoop},184:{n:"BrtEndPCDField",f:parsenoop},185:{n:"BrtBeginPCDSource",f:parsenoop},186:{n:"BrtEndPCDSource",f:parsenoop},187:{n:"BrtBeginPCDSRange",f:parsenoop},188:{n:"BrtEndPCDSRange",f:parsenoop},189:{n:"BrtBeginPCDFAtbl",f:parsenoop},190:{n:"BrtEndPCDFAtbl",f:parsenoop},191:{n:"BrtBeginPCDIRun",f:parsenoop},192:{n:"BrtEndPCDIRun",f:parsenoop},193:{n:"BrtBeginPivotCacheRecords",f:parsenoop},194:{n:"BrtEndPivotCacheRecords",f:parsenoop},195:{n:"BrtBeginPCDHierarchies",f:parsenoop},196:{n:"BrtEndPCDHierarchies",f:parsenoop},197:{n:"BrtBeginPCDHierarchy",f:parsenoop},198:{n:"BrtEndPCDHierarchy",f:parsenoop},199:{n:"BrtBeginPCDHFieldsUsage",f:parsenoop},200:{n:"BrtEndPCDHFieldsUsage",f:parsenoop},201:{n:"BrtBeginExtConnection",f:parsenoop},202:{n:"BrtEndExtConnection",f:parsenoop},203:{n:"BrtBeginECDbProps",f:parsenoop},204:{n:"BrtEndECDbProps",f:parsenoop},205:{n:"BrtBeginECOlapProps",f:parsenoop},206:{n:"BrtEndECOlapProps",f:parsenoop},207:{n:"BrtBeginPCDSConsol",f:parsenoop},208:{n:"BrtEndPCDSConsol",f:parsenoop},209:{n:"BrtBeginPCDSCPages",f:parsenoop},210:{n:"BrtEndPCDSCPages",f:parsenoop},211:{n:"BrtBeginPCDSCPage",f:parsenoop},212:{n:"BrtEndPCDSCPage",f:parsenoop},213:{n:"BrtBeginPCDSCPItem",f:parsenoop},214:{n:"BrtEndPCDSCPItem",f:parsenoop},215:{n:"BrtBeginPCDSCSets",f:parsenoop},216:{n:"BrtEndPCDSCSets",f:parsenoop},217:{n:"BrtBeginPCDSCSet",f:parsenoop},218:{n:"BrtEndPCDSCSet",f:parsenoop},219:{n:"BrtBeginPCDFGroup",f:parsenoop},220:{n:"BrtEndPCDFGroup",f:parsenoop},221:{n:"BrtBeginPCDFGItems",f:parsenoop},222:{n:"BrtEndPCDFGItems",f:parsenoop},223:{n:"BrtBeginPCDFGRange",f:parsenoop},224:{n:"BrtEndPCDFGRange",f:parsenoop},225:{n:"BrtBeginPCDFGDiscrete",f:parsenoop},226:{n:"BrtEndPCDFGDiscrete",f:parsenoop},227:{n:"BrtBeginPCDSDTupleCache",f:parsenoop},228:{n:"BrtEndPCDSDTupleCache",f:parsenoop},229:{n:"BrtBeginPCDSDTCEntries",f:parsenoop},230:{n:"BrtEndPCDSDTCEntries",f:parsenoop},231:{n:"BrtBeginPCDSDTCEMembers",f:parsenoop},232:{n:"BrtEndPCDSDTCEMembers",f:parsenoop},233:{n:"BrtBeginPCDSDTCEMember",f:parsenoop},234:{n:"BrtEndPCDSDTCEMember",f:parsenoop},235:{n:"BrtBeginPCDSDTCQueries",f:parsenoop},236:{n:"BrtEndPCDSDTCQueries",f:parsenoop},237:{n:"BrtBeginPCDSDTCQuery",f:parsenoop},238:{n:"BrtEndPCDSDTCQuery",f:parsenoop},239:{n:"BrtBeginPCDSDTCSets",f:parsenoop},240:{n:"BrtEndPCDSDTCSets",f:parsenoop},241:{n:"BrtBeginPCDSDTCSet",f:parsenoop},242:{n:"BrtEndPCDSDTCSet",f:parsenoop},243:{n:"BrtBeginPCDCalcItems",f:parsenoop},244:{n:"BrtEndPCDCalcItems",f:parsenoop},245:{n:"BrtBeginPCDCalcItem",f:parsenoop},246:{n:"BrtEndPCDCalcItem",f:parsenoop},247:{n:"BrtBeginPRule",f:parsenoop},248:{n:"BrtEndPRule",f:parsenoop},249:{n:"BrtBeginPRFilters",f:parsenoop},250:{n:"BrtEndPRFilters",f:parsenoop},251:{n:"BrtBeginPRFilter",f:parsenoop},252:{n:"BrtEndPRFilter",f:parsenoop},253:{n:"BrtBeginPNames",f:parsenoop},254:{n:"BrtEndPNames",f:parsenoop},255:{n:"BrtBeginPName",f:parsenoop},256:{n:"BrtEndPName",f:parsenoop},257:{n:"BrtBeginPNPairs",f:parsenoop},258:{n:"BrtEndPNPairs",f:parsenoop},259:{n:"BrtBeginPNPair",f:parsenoop},260:{n:"BrtEndPNPair",f:parsenoop},261:{n:"BrtBeginECWebProps",f:parsenoop},262:{n:"BrtEndECWebProps",f:parsenoop},263:{n:"BrtBeginEcWpTables",f:parsenoop},264:{n:"BrtEndECWPTables",f:parsenoop},265:{n:"BrtBeginECParams",f:parsenoop},266:{n:"BrtEndECParams",f:parsenoop},267:{n:"BrtBeginECParam",f:parsenoop},268:{n:"BrtEndECParam",f:parsenoop},269:{n:"BrtBeginPCDKPIs",f:parsenoop},270:{n:"BrtEndPCDKPIs",f:parsenoop},271:{n:"BrtBeginPCDKPI",f:parsenoop},272:{n:"BrtEndPCDKPI",f:parsenoop},273:{n:"BrtBeginDims",f:parsenoop},274:{n:"BrtEndDims",f:parsenoop},275:{n:"BrtBeginDim",f:parsenoop},276:{n:"BrtEndDim",f:parsenoop},277:{n:"BrtIndexPartEnd",f:parsenoop},278:{n:"BrtBeginStyleSheet",f:parsenoop},279:{n:"BrtEndStyleSheet",f:parsenoop},280:{n:"BrtBeginSXView",f:parsenoop},281:{n:"BrtEndSXVI",f:parsenoop},282:{n:"BrtBeginSXVI",f:parsenoop},283:{n:"BrtBeginSXVIs",f:parsenoop},284:{n:"BrtEndSXVIs",f:parsenoop},285:{n:"BrtBeginSXVD",f:parsenoop},286:{n:"BrtEndSXVD",f:parsenoop},287:{n:"BrtBeginSXVDs",f:parsenoop},288:{n:"BrtEndSXVDs",f:parsenoop},289:{n:"BrtBeginSXPI",f:parsenoop},290:{n:"BrtEndSXPI",f:parsenoop},291:{n:"BrtBeginSXPIs",f:parsenoop},292:{n:"BrtEndSXPIs",f:parsenoop},293:{n:"BrtBeginSXDI",f:parsenoop},294:{n:"BrtEndSXDI",f:parsenoop},295:{n:"BrtBeginSXDIs",f:parsenoop},296:{n:"BrtEndSXDIs",f:parsenoop},297:{n:"BrtBeginSXLI",f:parsenoop},298:{n:"BrtEndSXLI",f:parsenoop},299:{n:"BrtBeginSXLIRws",f:parsenoop},300:{n:"BrtEndSXLIRws",f:parsenoop},301:{n:"BrtBeginSXLICols",f:parsenoop},302:{n:"BrtEndSXLICols",f:parsenoop},303:{n:"BrtBeginSXFormat",f:parsenoop},304:{n:"BrtEndSXFormat",f:parsenoop},305:{n:"BrtBeginSXFormats",f:parsenoop},306:{n:"BrtEndSxFormats",f:parsenoop},307:{n:"BrtBeginSxSelect",f:parsenoop},308:{n:"BrtEndSxSelect",f:parsenoop},309:{n:"BrtBeginISXVDRws",f:parsenoop},310:{n:"BrtEndISXVDRws",f:parsenoop},311:{n:"BrtBeginISXVDCols",f:parsenoop},312:{n:"BrtEndISXVDCols",f:parsenoop},313:{n:"BrtEndSXLocation",f:parsenoop},314:{n:"BrtBeginSXLocation",f:parsenoop},315:{n:"BrtEndSXView",f:parsenoop},316:{n:"BrtBeginSXTHs",f:parsenoop},317:{n:"BrtEndSXTHs",f:parsenoop},318:{n:"BrtBeginSXTH",f:parsenoop},319:{n:"BrtEndSXTH",f:parsenoop},320:{n:"BrtBeginISXTHRws",f:parsenoop},321:{n:"BrtEndISXTHRws",f:parsenoop},322:{n:"BrtBeginISXTHCols",f:parsenoop},323:{n:"BrtEndISXTHCols",f:parsenoop},324:{n:"BrtBeginSXTDMPS",f:parsenoop},325:{n:"BrtEndSXTDMPs",f:parsenoop},326:{n:"BrtBeginSXTDMP",f:parsenoop},327:{n:"BrtEndSXTDMP",f:parsenoop},328:{n:"BrtBeginSXTHItems",f:parsenoop},329:{n:"BrtEndSXTHItems",f:parsenoop},330:{n:"BrtBeginSXTHItem",f:parsenoop},331:{n:"BrtEndSXTHItem",f:parsenoop},332:{n:"BrtBeginMetadata",f:parsenoop},333:{n:"BrtEndMetadata",f:parsenoop},334:{n:"BrtBeginEsmdtinfo",f:parsenoop},335:{n:"BrtMdtinfo",f:parsenoop},336:{n:"BrtEndEsmdtinfo",f:parsenoop},337:{n:"BrtBeginEsmdb",f:parsenoop},338:{n:"BrtEndEsmdb",f:parsenoop},339:{n:"BrtBeginEsfmd",f:parsenoop},340:{n:"BrtEndEsfmd",f:parsenoop},341:{n:"BrtBeginSingleCells",f:parsenoop},342:{n:"BrtEndSingleCells",f:parsenoop},343:{n:"BrtBeginList",f:parsenoop},344:{n:"BrtEndList",f:parsenoop},345:{n:"BrtBeginListCols",f:parsenoop},346:{n:"BrtEndListCols",f:parsenoop},347:{n:"BrtBeginListCol",f:parsenoop},348:{n:"BrtEndListCol",f:parsenoop},349:{n:"BrtBeginListXmlCPr",f:parsenoop},350:{n:"BrtEndListXmlCPr",f:parsenoop},351:{n:"BrtListCCFmla",f:parsenoop},352:{n:"BrtListTrFmla",f:parsenoop},353:{n:"BrtBeginExternals",f:parsenoop},354:{n:"BrtEndExternals",f:parsenoop},355:{n:"BrtSupBookSrc",f:parsenoop},357:{n:"BrtSupSelf",f:parsenoop},358:{n:"BrtSupSame",f:parsenoop},359:{n:"BrtSupTabs",f:parsenoop},360:{n:"BrtBeginSupBook",f:parsenoop},361:{n:"BrtPlaceholderName",f:parsenoop},362:{n:"BrtExternSheet",f:parsenoop},363:{n:"BrtExternTableStart",f:parsenoop},364:{n:"BrtExternTableEnd",f:parsenoop},366:{n:"BrtExternRowHdr",f:parsenoop},367:{n:"BrtExternCellBlank",f:parsenoop},368:{n:"BrtExternCellReal",f:parsenoop},369:{n:"BrtExternCellBool",f:parsenoop},370:{n:"BrtExternCellError",f:parsenoop},371:{n:"BrtExternCellString",f:parsenoop},372:{n:"BrtBeginEsmdx",f:parsenoop},373:{n:"BrtEndEsmdx",f:parsenoop},374:{n:"BrtBeginMdxSet",f:parsenoop},375:{n:"BrtEndMdxSet",f:parsenoop},376:{n:"BrtBeginMdxMbrProp",f:parsenoop},377:{n:"BrtEndMdxMbrProp",f:parsenoop},378:{n:"BrtBeginMdxKPI",f:parsenoop},379:{n:"BrtEndMdxKPI",f:parsenoop},380:{n:"BrtBeginEsstr",f:parsenoop},381:{n:"BrtEndEsstr",f:parsenoop},382:{n:"BrtBeginPRFItem",f:parsenoop},383:{n:"BrtEndPRFItem",f:parsenoop},384:{n:"BrtBeginPivotCacheIDs",f:parsenoop},385:{n:"BrtEndPivotCacheIDs",f:parsenoop},386:{n:"BrtBeginPivotCacheID",f:parsenoop},387:{n:"BrtEndPivotCacheID",f:parsenoop},388:{n:"BrtBeginISXVIs",f:parsenoop},389:{n:"BrtEndISXVIs",f:parsenoop},390:{n:"BrtBeginColInfos",f:parsenoop},391:{n:"BrtEndColInfos",f:parsenoop},392:{n:"BrtBeginRwBrk",f:parsenoop},393:{n:"BrtEndRwBrk",f:parsenoop},394:{n:"BrtBeginColBrk",f:parsenoop},395:{n:"BrtEndColBrk",f:parsenoop},396:{n:"BrtBrk",f:parsenoop},397:{n:"BrtUserBookView",f:parsenoop},398:{n:"BrtInfo",f:parsenoop},399:{n:"BrtCUsr",f:parsenoop},400:{n:"BrtUsr",f:parsenoop},401:{n:"BrtBeginUsers",f:parsenoop},403:{n:"BrtEOF",f:parsenoop},404:{n:"BrtUCR",f:parsenoop},405:{n:"BrtRRInsDel",f:parsenoop},406:{n:"BrtRREndInsDel",f:parsenoop},407:{n:"BrtRRMove",f:parsenoop},408:{n:"BrtRREndMove",f:parsenoop},409:{n:"BrtRRChgCell",f:parsenoop},410:{n:"BrtRREndChgCell",f:parsenoop},411:{n:"BrtRRHeader",f:parsenoop},412:{n:"BrtRRUserView",f:parsenoop},413:{n:"BrtRRRenSheet",f:parsenoop},414:{n:"BrtRRInsertSh",f:parsenoop},415:{n:"BrtRRDefName",f:parsenoop},416:{n:"BrtRRNote",f:parsenoop},417:{n:"BrtRRConflict",f:parsenoop},418:{n:"BrtRRTQSIF",f:parsenoop},419:{n:"BrtRRFormat",f:parsenoop},420:{n:"BrtRREndFormat",f:parsenoop},421:{n:"BrtRRAutoFmt",f:parsenoop},422:{n:"BrtBeginUserShViews",f:parsenoop},423:{n:"BrtBeginUserShView",f:parsenoop},424:{n:"BrtEndUserShView",f:parsenoop},425:{n:"BrtEndUserShViews",f:parsenoop},426:{n:"BrtArrFmla",f:parsenoop},427:{n:"BrtShrFmla",f:parsenoop},428:{n:"BrtTable",f:parsenoop},429:{n:"BrtBeginExtConnections",f:parsenoop},430:{n:"BrtEndExtConnections",f:parsenoop},431:{n:"BrtBeginPCDCalcMems",f:parsenoop},432:{n:"BrtEndPCDCalcMems",f:parsenoop},433:{n:"BrtBeginPCDCalcMem",f:parsenoop},434:{n:"BrtEndPCDCalcMem",f:parsenoop},435:{n:"BrtBeginPCDHGLevels",f:parsenoop},436:{n:"BrtEndPCDHGLevels",f:parsenoop},437:{n:"BrtBeginPCDHGLevel",f:parsenoop},438:{n:"BrtEndPCDHGLevel",f:parsenoop},439:{n:"BrtBeginPCDHGLGroups",f:parsenoop},440:{n:"BrtEndPCDHGLGroups",f:parsenoop},441:{n:"BrtBeginPCDHGLGroup",f:parsenoop},442:{n:"BrtEndPCDHGLGroup",f:parsenoop},443:{n:"BrtBeginPCDHGLGMembers",f:parsenoop},444:{n:"BrtEndPCDHGLGMembers",f:parsenoop},445:{n:"BrtBeginPCDHGLGMember",f:parsenoop},446:{n:"BrtEndPCDHGLGMember",f:parsenoop},447:{n:"BrtBeginQSI",f:parsenoop},448:{n:"BrtEndQSI",f:parsenoop},449:{n:"BrtBeginQSIR",f:parsenoop},450:{n:"BrtEndQSIR",f:parsenoop},451:{n:"BrtBeginDeletedNames",f:parsenoop},452:{n:"BrtEndDeletedNames",f:parsenoop},453:{n:"BrtBeginDeletedName",f:parsenoop},454:{n:"BrtEndDeletedName",f:parsenoop},455:{n:"BrtBeginQSIFs",f:parsenoop},456:{n:"BrtEndQSIFs",f:parsenoop},457:{n:"BrtBeginQSIF",f:parsenoop},458:{n:"BrtEndQSIF",f:parsenoop},459:{n:"BrtBeginAutoSortScope",f:parsenoop},460:{n:"BrtEndAutoSortScope",f:parsenoop},461:{n:"BrtBeginConditionalFormatting",f:parsenoop},462:{n:"BrtEndConditionalFormatting",f:parsenoop},463:{n:"BrtBeginCFRule",f:parsenoop},464:{n:"BrtEndCFRule",f:parsenoop},465:{n:"BrtBeginIconSet",f:parsenoop},466:{n:"BrtEndIconSet",f:parsenoop},467:{n:"BrtBeginDatabar",f:parsenoop},468:{n:"BrtEndDatabar",f:parsenoop},469:{n:"BrtBeginColorScale",f:parsenoop},470:{n:"BrtEndColorScale",f:parsenoop},471:{n:"BrtCFVO",f:parsenoop},472:{n:"BrtExternValueMeta",f:parsenoop},473:{n:"BrtBeginColorPalette",f:parsenoop},474:{n:"BrtEndColorPalette",f:parsenoop},475:{n:"BrtIndexedColor",f:parsenoop},476:{n:"BrtMargins",f:parsenoop},477:{n:"BrtPrintOptions",f:parsenoop},478:{n:"BrtPageSetup",f:parsenoop},479:{n:"BrtBeginHeaderFooter",f:parsenoop},480:{n:"BrtEndHeaderFooter",f:parsenoop},481:{n:"BrtBeginSXCrtFormat",f:parsenoop},482:{n:"BrtEndSXCrtFormat",f:parsenoop},483:{n:"BrtBeginSXCrtFormats",f:parsenoop},484:{n:"BrtEndSXCrtFormats",f:parsenoop},485:{n:"BrtWsFmtInfo",f:parsenoop},486:{n:"BrtBeginMgs",f:parsenoop},487:{n:"BrtEndMGs",f:parsenoop},488:{n:"BrtBeginMGMaps",f:parsenoop},489:{n:"BrtEndMGMaps",f:parsenoop},490:{n:"BrtBeginMG",f:parsenoop},491:{n:"BrtEndMG",f:parsenoop},492:{n:"BrtBeginMap",f:parsenoop},493:{n:"BrtEndMap",f:parsenoop},494:{n:"BrtHLink",f:parsenoop},495:{n:"BrtBeginDCon",f:parsenoop},496:{n:"BrtEndDCon",f:parsenoop},497:{n:"BrtBeginDRefs",f:parsenoop},498:{n:"BrtEndDRefs",f:parsenoop},499:{n:"BrtDRef",f:parsenoop},500:{n:"BrtBeginScenMan",f:parsenoop},501:{n:"BrtEndScenMan",f:parsenoop},502:{n:"BrtBeginSct",f:parsenoop},503:{n:"BrtEndSct",f:parsenoop},504:{n:"BrtSlc",f:parsenoop},505:{n:"BrtBeginDXFs",f:parsenoop},506:{n:"BrtEndDXFs",f:parsenoop},507:{n:"BrtDXF",f:parsenoop},508:{n:"BrtBeginTableStyles",f:parsenoop},509:{n:"BrtEndTableStyles",f:parsenoop},510:{n:"BrtBeginTableStyle",f:parsenoop},511:{n:"BrtEndTableStyle",f:parsenoop},512:{n:"BrtTableStyleElement",f:parsenoop},513:{n:"BrtTableStyleClient",f:parsenoop},514:{n:"BrtBeginVolDeps",f:parsenoop},515:{n:"BrtEndVolDeps",f:parsenoop},516:{n:"BrtBeginVolType",f:parsenoop},517:{n:"BrtEndVolType",f:parsenoop},518:{n:"BrtBeginVolMain",f:parsenoop},519:{n:"BrtEndVolMain",f:parsenoop},520:{n:"BrtBeginVolTopic",f:parsenoop},521:{n:"BrtEndVolTopic",f:parsenoop},522:{n:"BrtVolSubtopic",f:parsenoop},523:{n:"BrtVolRef",f:parsenoop},524:{n:"BrtVolNum",f:parsenoop},525:{n:"BrtVolErr",f:parsenoop},526:{n:"BrtVolStr",f:parsenoop},527:{n:"BrtVolBool",f:parsenoop},530:{n:"BrtBeginSortState",f:parsenoop},531:{n:"BrtEndSortState",f:parsenoop},532:{n:"BrtBeginSortCond",f:parsenoop},533:{n:"BrtEndSortCond",f:parsenoop},534:{n:"BrtBookProtection",f:parsenoop},535:{n:"BrtSheetProtection",f:parsenoop},536:{n:"BrtRangeProtection",f:parsenoop},537:{n:"BrtPhoneticInfo",f:parsenoop},538:{n:"BrtBeginECTxtWiz",f:parsenoop},539:{n:"BrtEndECTxtWiz",f:parsenoop},540:{n:"BrtBeginECTWFldInfoLst",f:parsenoop},541:{n:"BrtEndECTWFldInfoLst",f:parsenoop},542:{n:"BrtBeginECTwFldInfo",f:parsenoop},548:{n:"BrtFileSharing",f:parsenoop},549:{n:"BrtOleSize",f:parsenoop},550:{n:"BrtDrawing",f:parsenoop},551:{n:"BrtLegacyDrawing",f:parsenoop},552:{n:"BrtLegacyDrawingHF",f:parsenoop},553:{n:"BrtWebOpt",f:parsenoop},554:{n:"BrtBeginWebPubItems",f:parsenoop},555:{n:"BrtEndWebPubItems",f:parsenoop},556:{n:"BrtBeginWebPubItem",f:parsenoop},557:{n:"BrtEndWebPubItem",f:parsenoop},558:{n:"BrtBeginSXCondFmt",f:parsenoop},559:{n:"BrtEndSXCondFmt",f:parsenoop},560:{n:"BrtBeginSXCondFmts",f:parsenoop},561:{n:"BrtEndSXCondFmts",f:parsenoop},562:{n:"BrtBkHim",f:parsenoop},564:{n:"BrtColor",f:parsenoop},565:{n:"BrtBeginIndexedColors",f:parsenoop},566:{n:"BrtEndIndexedColors",f:parsenoop},569:{n:"BrtBeginMRUColors",f:parsenoop},570:{n:"BrtEndMRUColors",f:parsenoop},572:{n:"BrtMRUColor",f:parsenoop},573:{n:"BrtBeginDVals",f:parsenoop},574:{n:"BrtEndDVals",f:parsenoop},577:{n:"BrtSupNameStart",f:parsenoop},578:{n:"BrtSupNameValueStart",f:parsenoop},579:{n:"BrtSupNameValueEnd",f:parsenoop},580:{n:"BrtSupNameNum",f:parsenoop},581:{n:"BrtSupNameErr",f:parsenoop},582:{n:"BrtSupNameSt",f:parsenoop},583:{n:"BrtSupNameNil",f:parsenoop},584:{n:"BrtSupNameBool",f:parsenoop},585:{n:"BrtSupNameFmla",f:parsenoop},586:{n:"BrtSupNameBits",f:parsenoop},587:{n:"BrtSupNameEnd",f:parsenoop},588:{n:"BrtEndSupBook",f:parsenoop},589:{n:"BrtCellSmartTagProperty",f:parsenoop},590:{n:"BrtBeginCellSmartTag",f:parsenoop},591:{n:"BrtEndCellSmartTag",f:parsenoop},592:{n:"BrtBeginCellSmartTags",f:parsenoop},593:{n:"BrtEndCellSmartTags",f:parsenoop},594:{n:"BrtBeginSmartTags",f:parsenoop},595:{n:"BrtEndSmartTags",f:parsenoop},596:{n:"BrtSmartTagType",f:parsenoop},597:{n:"BrtBeginSmartTagTypes",f:parsenoop},598:{n:"BrtEndSmartTagTypes",f:parsenoop},599:{n:"BrtBeginSXFilters",f:parsenoop},600:{n:"BrtEndSXFilters",f:parsenoop},601:{n:"BrtBeginSXFILTER",f:parsenoop},602:{n:"BrtEndSXFilter",f:parsenoop},603:{n:"BrtBeginFills",f:parsenoop},604:{n:"BrtEndFills",f:parsenoop},605:{n:"BrtBeginCellWatches",f:parsenoop},606:{n:"BrtEndCellWatches",f:parsenoop},607:{n:"BrtCellWatch",f:parsenoop},608:{n:"BrtBeginCRErrs",f:parsenoop},609:{n:"BrtEndCRErrs",f:parsenoop},610:{n:"BrtCrashRecErr",f:parsenoop},611:{n:"BrtBeginFonts",f:parsenoop},612:{n:"BrtEndFonts",f:parsenoop},613:{n:"BrtBeginBorders",f:parsenoop},614:{n:"BrtEndBorders",f:parsenoop},615:{n:"BrtBeginFmts",f:parsenoop},616:{n:"BrtEndFmts",f:parsenoop},617:{n:"BrtBeginCellXFs",f:parsenoop},618:{n:"BrtEndCellXFs",f:parsenoop},619:{n:"BrtBeginStyles",f:parsenoop},620:{n:"BrtEndStyles",f:parsenoop},625:{n:"BrtBigName",f:parsenoop},626:{n:"BrtBeginCellStyleXFs",f:parsenoop},627:{n:"BrtEndCellStyleXFs",f:parsenoop},628:{n:"BrtBeginComments",f:parsenoop},629:{n:"BrtEndComments",f:parsenoop},630:{n:"BrtBeginCommentAuthors",f:parsenoop},631:{n:"BrtEndCommentAuthors",f:parsenoop},632:{n:"BrtCommentAuthor",f:parse_BrtCommentAuthor},633:{n:"BrtBeginCommentList",f:parsenoop},634:{n:"BrtEndCommentList",f:parsenoop},635:{n:"BrtBeginComment",f:parse_BrtBeginComment},636:{n:"BrtEndComment",f:parsenoop},637:{n:"BrtCommentText",f:parse_BrtCommentText},638:{n:"BrtBeginOleObjects",f:parsenoop},639:{n:"BrtOleObject",f:parsenoop},640:{n:"BrtEndOleObjects",f:parsenoop},641:{n:"BrtBeginSxrules",f:parsenoop},642:{n:"BrtEndSxRules",f:parsenoop},643:{n:"BrtBeginActiveXControls",f:parsenoop},644:{n:"BrtActiveX",f:parsenoop},645:{n:"BrtEndActiveXControls",f:parsenoop},646:{n:"BrtBeginPCDSDTCEMembersSortBy",f:parsenoop},648:{n:"BrtBeginCellIgnoreECs",f:parsenoop},649:{n:"BrtCellIgnoreEC",f:parsenoop},650:{n:"BrtEndCellIgnoreECs",f:parsenoop},651:{n:"BrtCsProp",f:parsenoop},652:{n:"BrtCsPageSetup",f:parsenoop},653:{n:"BrtBeginUserCsViews",f:parsenoop},654:{n:"BrtEndUserCsViews",f:parsenoop},655:{n:"BrtBeginUserCsView",f:parsenoop},656:{n:"BrtEndUserCsView",f:parsenoop},657:{n:"BrtBeginPcdSFCIEntries",f:parsenoop},658:{n:"BrtEndPCDSFCIEntries",f:parsenoop},659:{n:"BrtPCDSFCIEntry",f:parsenoop},660:{n:"BrtBeginListParts",f:parsenoop},661:{n:"BrtListPart",f:parsenoop},662:{n:"BrtEndListParts",f:parsenoop},663:{n:"BrtSheetCalcProp",f:parsenoop},664:{n:"BrtBeginFnGroup",f:parsenoop},665:{n:"BrtFnGroup",f:parsenoop},666:{n:"BrtEndFnGroup",f:parsenoop},667:{n:"BrtSupAddin",f:parsenoop},668:{n:"BrtSXTDMPOrder",f:parsenoop},669:{n:"BrtCsProtection",f:parsenoop},671:{n:"BrtBeginWsSortMap",f:parsenoop},672:{n:"BrtEndWsSortMap",f:parsenoop},673:{n:"BrtBeginRRSort",f:parsenoop},674:{n:"BrtEndRRSort",f:parsenoop},675:{n:"BrtRRSortItem",f:parsenoop},676:{n:"BrtFileSharingIso",f:parsenoop},677:{n:"BrtBookProtectionIso",f:parsenoop},678:{n:"BrtSheetProtectionIso",f:parsenoop},679:{n:"BrtCsProtectionIso",f:parsenoop},680:{n:"BrtRangeProtectionIso",f:parsenoop},1024:{n:"BrtRwDescent",f:parsenoop},1025:{n:"BrtKnownFonts",f:parsenoop},1026:{n:"BrtBeginSXTupleSet",f:parsenoop},1027:{n:"BrtEndSXTupleSet",f:parsenoop},1028:{n:"BrtBeginSXTupleSetHeader",f:parsenoop},1029:{n:"BrtEndSXTupleSetHeader",f:parsenoop},1030:{n:"BrtSXTupleSetHeaderItem",f:parsenoop},1031:{n:"BrtBeginSXTupleSetData",f:parsenoop},1032:{n:"BrtEndSXTupleSetData",f:parsenoop},1033:{n:"BrtBeginSXTupleSetRow",f:parsenoop},1034:{n:"BrtEndSXTupleSetRow",f:parsenoop},1035:{n:"BrtSXTupleSetRowItem",f:parsenoop},1036:{n:"BrtNameExt",f:parsenoop},1037:{n:"BrtPCDH14",f:parsenoop},1038:{n:"BrtBeginPCDCalcMem14",f:parsenoop},1039:{n:"BrtEndPCDCalcMem14",f:parsenoop},1040:{n:"BrtSXTH14",f:parsenoop},1041:{n:"BrtBeginSparklineGroup",f:parsenoop},1042:{n:"BrtEndSparklineGroup",f:parsenoop},1043:{n:"BrtSparkline",f:parsenoop},1044:{n:"BrtSXDI14",f:parsenoop},1045:{n:"BrtWsFmtInfoEx14",f:parsenoop},1046:{n:"BrtBeginConditionalFormatting14",f:parsenoop},1047:{n:"BrtEndConditionalFormatting14",f:parsenoop},1048:{n:"BrtBeginCFRule14",f:parsenoop},1049:{n:"BrtEndCFRule14",f:parsenoop},1050:{n:"BrtCFVO14",f:parsenoop},1051:{n:"BrtBeginDatabar14",f:parsenoop},1052:{n:"BrtBeginIconSet14",f:parsenoop},1053:{n:"BrtDVal14",f:parsenoop},1054:{n:"BrtBeginDVals14",f:parsenoop},1055:{n:"BrtColor14",f:parsenoop},1056:{n:"BrtBeginSparklines",f:parsenoop},1057:{n:"BrtEndSparklines",f:parsenoop},1058:{n:"BrtBeginSparklineGroups",f:parsenoop},1059:{n:"BrtEndSparklineGroups",f:parsenoop},1061:{n:"BrtSXVD14",f:parsenoop},1062:{n:"BrtBeginSxview14",f:parsenoop},1063:{n:"BrtEndSxview14",f:parsenoop},1066:{n:"BrtBeginPCD14",f:parsenoop},1067:{n:"BrtEndPCD14",f:parsenoop},1068:{n:"BrtBeginExtConn14",f:parsenoop},1069:{n:"BrtEndExtConn14",f:parsenoop},1070:{n:"BrtBeginSlicerCacheIDs",f:parsenoop},1071:{n:"BrtEndSlicerCacheIDs",f:parsenoop},1072:{n:"BrtBeginSlicerCacheID",f:parsenoop},1073:{n:"BrtEndSlicerCacheID",f:parsenoop},1075:{n:"BrtBeginSlicerCache",f:parsenoop},1076:{n:"BrtEndSlicerCache",f:parsenoop},1077:{n:"BrtBeginSlicerCacheDef",f:parsenoop},1078:{n:"BrtEndSlicerCacheDef",f:parsenoop},1079:{n:"BrtBeginSlicersEx",f:parsenoop},1080:{n:"BrtEndSlicersEx",f:parsenoop},1081:{n:"BrtBeginSlicerEx",f:parsenoop},1082:{n:"BrtEndSlicerEx",f:parsenoop},1083:{n:"BrtBeginSlicer",f:parsenoop},1084:{n:"BrtEndSlicer",f:parsenoop},1085:{n:"BrtSlicerCachePivotTables",f:parsenoop},1086:{n:"BrtBeginSlicerCacheOlapImpl",f:parsenoop},1087:{n:"BrtEndSlicerCacheOlapImpl",f:parsenoop},1088:{n:"BrtBeginSlicerCacheLevelsData",f:parsenoop},1089:{n:"BrtEndSlicerCacheLevelsData",f:parsenoop},1090:{n:"BrtBeginSlicerCacheLevelData",f:parsenoop},1091:{n:"BrtEndSlicerCacheLevelData",f:parsenoop},1092:{n:"BrtBeginSlicerCacheSiRanges",f:parsenoop},1093:{n:"BrtEndSlicerCacheSiRanges",f:parsenoop},1094:{n:"BrtBeginSlicerCacheSiRange",f:parsenoop},1095:{n:"BrtEndSlicerCacheSiRange",f:parsenoop},1096:{n:"BrtSlicerCacheOlapItem",f:parsenoop},1097:{n:"BrtBeginSlicerCacheSelections",f:parsenoop},1098:{n:"BrtSlicerCacheSelection",f:parsenoop},1099:{n:"BrtEndSlicerCacheSelections",f:parsenoop},1100:{n:"BrtBeginSlicerCacheNative",f:parsenoop},1101:{n:"BrtEndSlicerCacheNative",f:parsenoop},1102:{n:"BrtSlicerCacheNativeItem",f:parsenoop},1103:{n:"BrtRangeProtection14",f:parsenoop},1104:{n:"BrtRangeProtectionIso14",f:parsenoop},1105:{n:"BrtCellIgnoreEC14",f:parsenoop},1111:{n:"BrtList14",f:parsenoop},1112:{n:"BrtCFIcon",f:parsenoop},1113:{n:"BrtBeginSlicerCachesPivotCacheIDs",f:parsenoop},1114:{n:"BrtEndSlicerCachesPivotCacheIDs",f:parsenoop},1115:{n:"BrtBeginSlicers",f:parsenoop},1116:{n:"BrtEndSlicers",f:parsenoop},1117:{n:"BrtWbProp14",f:parsenoop},1118:{n:"BrtBeginSXEdit",f:parsenoop},1119:{n:"BrtEndSXEdit",f:parsenoop},1120:{n:"BrtBeginSXEdits",f:parsenoop},1121:{n:"BrtEndSXEdits",f:parsenoop},1122:{n:"BrtBeginSXChange",f:parsenoop},1123:{n:"BrtEndSXChange",f:parsenoop},1124:{n:"BrtBeginSXChanges",f:parsenoop},1125:{n:"BrtEndSXChanges",f:parsenoop},1126:{n:"BrtSXTupleItems",f:parsenoop},1128:{n:"BrtBeginSlicerStyle",f:parsenoop},1129:{n:"BrtEndSlicerStyle",f:parsenoop},1130:{n:"BrtSlicerStyleElement",f:parsenoop},1131:{n:"BrtBeginStyleSheetExt14",f:parsenoop},1132:{n:"BrtEndStyleSheetExt14",f:parsenoop},1133:{n:"BrtBeginSlicerCachesPivotCacheID",f:parsenoop},1134:{n:"BrtEndSlicerCachesPivotCacheID",f:parsenoop},1135:{n:"BrtBeginConditionalFormattings",f:parsenoop},1136:{n:"BrtEndConditionalFormattings",f:parsenoop},1137:{n:"BrtBeginPCDCalcMemExt",f:parsenoop},1138:{n:"BrtEndPCDCalcMemExt",f:parsenoop},1139:{n:"BrtBeginPCDCalcMemsExt",f:parsenoop},1140:{n:"BrtEndPCDCalcMemsExt",f:parsenoop},1141:{n:"BrtPCDField14",f:parsenoop},1142:{n:"BrtBeginSlicerStyles",f:parsenoop},1143:{n:"BrtEndSlicerStyles",f:parsenoop},1144:{n:"BrtBeginSlicerStyleElements",f:parsenoop},1145:{n:"BrtEndSlicerStyleElements",f:parsenoop},1146:{n:"BrtCFRuleExt",f:parsenoop},1147:{n:"BrtBeginSXCondFmt14",f:parsenoop},1148:{n:"BrtEndSXCondFmt14",f:parsenoop},1149:{n:"BrtBeginSXCondFmts14",f:parsenoop},1150:{n:"BrtEndSXCondFmts14",f:parsenoop},1152:{n:"BrtBeginSortCond14",f:parsenoop},1153:{n:"BrtEndSortCond14",f:parsenoop},1154:{n:"BrtEndDVals14",f:parsenoop},1155:{n:"BrtEndIconSet14",f:parsenoop},1156:{n:"BrtEndDatabar14",f:parsenoop},1157:{n:"BrtBeginColorScale14",f:parsenoop},1158:{n:"BrtEndColorScale14",f:parsenoop},1159:{n:"BrtBeginSxrules14",f:parsenoop},1160:{n:"BrtEndSxrules14",f:parsenoop},1161:{n:"BrtBeginPRule14",f:parsenoop},1162:{n:"BrtEndPRule14",f:parsenoop},1163:{n:"BrtBeginPRFilters14",f:parsenoop},1164:{n:"BrtEndPRFilters14",f:parsenoop},1165:{n:"BrtBeginPRFilter14",f:parsenoop},1166:{n:"BrtEndPRFilter14",f:parsenoop},1167:{n:"BrtBeginPRFItem14",f:parsenoop},1168:{n:"BrtEndPRFItem14",f:parsenoop},1169:{n:"BrtBeginCellIgnoreECs14",f:parsenoop},1170:{n:"BrtEndCellIgnoreECs14",f:parsenoop},1171:{n:"BrtDxf14",f:parsenoop},1172:{n:"BrtBeginDxF14s",f:parsenoop},1173:{n:"BrtEndDxf14s",f:parsenoop},1177:{n:"BrtFilter14",f:parsenoop},1178:{n:"BrtBeginCustomFilters14",f:parsenoop},1180:{n:"BrtCustomFilter14",f:parsenoop},1181:{n:"BrtIconFilter14",f:parsenoop},1182:{n:"BrtPivotCacheConnectionName",f:parsenoop},2048:{n:"BrtBeginDecoupledPivotCacheIDs",f:parsenoop},2049:{n:"BrtEndDecoupledPivotCacheIDs",f:parsenoop},2050:{n:"BrtDecoupledPivotCacheID",f:parsenoop},2051:{n:"BrtBeginPivotTableRefs",f:parsenoop},2052:{n:"BrtEndPivotTableRefs",f:parsenoop},2053:{n:"BrtPivotTableRef",f:parsenoop},2054:{n:"BrtSlicerCacheBookPivotTables",f:parsenoop},2055:{n:"BrtBeginSxvcells",f:parsenoop},2056:{n:"BrtEndSxvcells",f:parsenoop},2057:{n:"BrtBeginSxRow",f:parsenoop},2058:{n:"BrtEndSxRow",f:parsenoop},2060:{n:"BrtPcdCalcMem15",f:parsenoop},2067:{n:"BrtQsi15",f:parsenoop},2068:{n:"BrtBeginWebExtensions",f:parsenoop},2069:{n:"BrtEndWebExtensions",f:parsenoop},2070:{n:"BrtWebExtension",f:parsenoop},2071:{n:"BrtAbsPath15",f:parsenoop},2072:{n:"BrtBeginPivotTableUISettings",f:parsenoop},2073:{n:"BrtEndPivotTableUISettings",f:parsenoop},2075:{n:"BrtTableSlicerCacheIDs",f:parsenoop},2076:{n:"BrtTableSlicerCacheID",f:parsenoop},2077:{n:"BrtBeginTableSlicerCache",f:parsenoop},2078:{n:"BrtEndTableSlicerCache",f:parsenoop},2079:{n:"BrtSxFilter15",f:parsenoop},2080:{n:"BrtBeginTimelineCachePivotCacheIDs",f:parsenoop},2081:{n:"BrtEndTimelineCachePivotCacheIDs",f:parsenoop},2082:{n:"BrtTimelineCachePivotCacheID",f:parsenoop},2083:{n:"BrtBeginTimelineCacheIDs",f:parsenoop},2084:{n:"BrtEndTimelineCacheIDs",f:parsenoop},2085:{n:"BrtBeginTimelineCacheID",f:parsenoop},2086:{n:"BrtEndTimelineCacheID",f:parsenoop},2087:{n:"BrtBeginTimelinesEx",f:parsenoop},2088:{n:"BrtEndTimelinesEx",f:parsenoop},2089:{n:"BrtBeginTimelineEx",f:parsenoop},2090:{n:"BrtEndTimelineEx",f:parsenoop},2091:{n:"BrtWorkBookPr15",f:parsenoop},2092:{n:"BrtPCDH15",f:parsenoop},2093:{n:"BrtBeginTimelineStyle",f:parsenoop},2094:{n:"BrtEndTimelineStyle",f:parsenoop},2095:{n:"BrtTimelineStyleElement",f:parsenoop},2096:{n:"BrtBeginTimelineStylesheetExt15",f:parsenoop},2097:{n:"BrtEndTimelineStylesheetExt15",f:parsenoop},2098:{n:"BrtBeginTimelineStyles",f:parsenoop},2099:{n:"BrtEndTimelineStyles",f:parsenoop},2100:{n:"BrtBeginTimelineStyleElements",f:parsenoop},2101:{n:"BrtEndTimelineStyleElements",f:parsenoop},2102:{n:"BrtDxf15",f:parsenoop},2103:{n:"BrtBeginDxfs15",f:parsenoop},2104:{n:"brtEndDxfs15",f:parsenoop},2105:{n:"BrtSlicerCacheHideItemsWithNoData",f:parsenoop},2106:{n:"BrtBeginItemUniqueNames",f:parsenoop},2107:{n:"BrtEndItemUniqueNames",f:parsenoop},2108:{n:"BrtItemUniqueName",f:parsenoop},2109:{n:"BrtBeginExtConn15",f:parsenoop},2110:{n:"BrtEndExtConn15",f:parsenoop},2111:{n:"BrtBeginOledbPr15",f:parsenoop},2112:{n:"BrtEndOledbPr15",f:parsenoop},2113:{n:"BrtBeginDataFeedPr15",f:parsenoop},2114:{n:"BrtEndDataFeedPr15",f:parsenoop},2115:{n:"BrtTextPr15",f:parsenoop},2116:{n:"BrtRangePr15",f:parsenoop},2117:{n:"BrtDbCommand15",f:parsenoop},2118:{n:"BrtBeginDbTables15",f:parsenoop},2119:{n:"BrtEndDbTables15",f:parsenoop},2120:{n:"BrtDbTable15",f:parsenoop},2121:{n:"BrtBeginDataModel",f:parsenoop},2122:{n:"BrtEndDataModel",f:parsenoop},2123:{n:"BrtBeginModelTables",f:parsenoop},2124:{n:"BrtEndModelTables",f:parsenoop},2125:{n:"BrtModelTable",f:parsenoop},2126:{n:"BrtBeginModelRelationships",f:parsenoop},2127:{n:"BrtEndModelRelationships",f:parsenoop},2128:{n:"BrtModelRelationship",f:parsenoop},2129:{n:"BrtBeginECTxtWiz15",f:parsenoop},2130:{n:"BrtEndECTxtWiz15",f:parsenoop},2131:{n:"BrtBeginECTWFldInfoLst15",f:parsenoop},2132:{n:"BrtEndECTWFldInfoLst15",f:parsenoop},2133:{n:"BrtBeginECTWFldInfo15",f:parsenoop},2134:{n:"BrtFieldListActiveItem",f:parsenoop},2135:{n:"BrtPivotCacheIdVersion",f:parsenoop},2136:{n:"BrtSXDI15",f:parsenoop},65535:{n:"",f:parsenoop}};
function fixopts(opts){var defaults=[["cellNF",false],["cellHTML",true],["cellFormula",true],["sheetStubs",false],["sheetRows",0,"n"],["bookDeps",false],["bookSheets",false],["bookProps",false],["bookFiles",false],["WTF",false]];defaults.forEach(function(d){if(typeof opts[d[0]]==="undefined")opts[d[0]]=d[1];if(d[2]==="n")opts[d[0]]=Number(opts[d[0]])})}function parseZip(zip,opts){opts=opts||{};fixopts(opts);reset_cp();var entries=Object.keys(zip.files);var keys=entries.filter(function(x){return x.substr(-1)!="/"}).sort();var dir=parseCT(getzipdata(zip,"[Content_Types].xml"));var xlsb=false;var sheets;if(dir.workbooks.length===0){var binname="xl/workbook.bin";if(!getzipfile(zip,binname))throw new Error("Could not find workbook entry");dir.workbooks.push(binname);xlsb=true}if(!opts.bookSheets&&!opts.bookProps){strs={};if(dir.sst)strs=parse_sst(getzipdata(zip,dir.sst.replace(/^\//,"")),dir.sst,opts);styles={};if(dir.style)styles=parse_sty(getzipdata(zip,dir.style.replace(/^\//,"")),dir.style,opts)}var wb=parse_wb(getzipdata(zip,dir.workbooks[0].replace(/^\//,"")),dir.workbooks[0],opts);var props={},propdata="";try{propdata=dir.coreprops.length!==0?getzipdata(zip,dir.coreprops[0].replace(/^\//,"")):"";propdata+=dir.extprops.length!==0?getzipdata(zip,dir.extprops[0].replace(/^\//,"")):"";props=propdata!==""?parseProps(propdata):{}}catch(e){}var custprops={};if(!opts.bookSheets||opts.bookProps){if(dir.custprops.length!==0){propdata=getzipdata(zip,dir.custprops[0].replace(/^\//,""),true);if(propdata)custprops=parseCustomProps(propdata)}}var out={};if(opts.bookSheets||opts.bookProps){if(props.Worksheets&&props.SheetNames.length>0)sheets=props.SheetNames;else if(wb.Sheets)sheets=wb.Sheets.map(function(x){return x.name});if(opts.bookProps){out.Props=props;out.Custprops=custprops}if(typeof sheets!=="undefined")out.SheetNames=sheets;if(opts.bookSheets?out.SheetNames:opts.bookProps)return out}sheets={};var deps={};if(opts.bookDeps&&dir.calcchain)deps=parseDeps(getzipdata(zip,dir.calcchain.replace(/^\//,"")));var i=0;var sheetRels={};var path,relsPath;if(!props.Worksheets){var wbsheets=wb.Sheets;props.Worksheets=wbsheets.length;props.SheetNames=[];for(var j=0;j!=wbsheets.length;++j){props.SheetNames[j]=wbsheets[j].name}}var nmode=getzipdata(zip,"xl/worksheets/sheet.xml",true)?1:0;for(i=0;i!=props.Worksheets;++i){try{path="xl/worksheets/sheet"+(i+1-nmode)+(xlsb?".bin":".xml");path=path.replace(/sheet0\./,"sheet.");relsPath=path.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels");sheets[props.SheetNames[i]]=parse_ws(getzipdata(zip,path),path,opts);sheetRels[props.SheetNames[i]]=parseRels(getzipdata(zip,relsPath,true),path)}catch(e){if(opts.WTF)throw e}}if(dir.comments)parse_comments(zip,dir.comments,sheets,sheetRels,opts);out={Directory:dir,Workbook:wb,Props:props,Custprops:custprops,Deps:deps,Sheets:sheets,SheetNames:props.SheetNames,Strings:strs,Styles:styles};if(opts.bookFiles){out.keys=keys;out.files=zip.files}return out}function readSync(data,options){var zip,d=data;var o=options||{};switch(o.type||"base64"){case"file":if(typeof Buffer!=="undefined"){zip=new jszip(d=_fs.readFileSync(data));break}d=_fs.readFileSync(data).toString("base64");case"base64":zip=new jszip(d,{base64:true});break;case"binary":zip=new jszip(d,{base64:false});break}return parseZip(zip,o)}function readFileSync(data,options){var o=options||{};o.type="file";return readSync(data,o)}XLSX.read=readSync;XLSX.readFile=readFileSync;XLSX.parseZip=parseZip;return this})(XLSX);var _chr=function(c){return String.fromCharCode(c)};function encode_col(col){var s="";for(++col;col;col=Math.floor((col-1)/26))s=_chr((col-1)%26+65)+s;return s}function encode_row(row){return""+(row+1)}function encode_cell(cell){return encode_col(cell.c)+encode_row(cell.r)}function decode_col(c){var d=0,i=0;for(;i!==c.length;++i)d=26*d+c.charCodeAt(i)-64;return d-1}function decode_row(rowstr){return Number(rowstr)-1}function split_cell(cstr){return cstr.replace(/(\$?[A-Z]*)(\$?[0-9]*)/,"$1,$2").split(",")}function decode_cell(cstr){var splt=split_cell(cstr);return{c:decode_col(splt[0]),r:decode_row(splt[1])}}function decode_range(range){var x=range.split(":").map(decode_cell);return{s:x[0],e:x[x.length-1]}}function encode_range(range){return encode_cell(range.s)+":"+encode_cell(range.e)}function sheet_to_row_object_array(sheet,opts){var val,row,r,hdr={},isempty,R,C;var out=[];opts=opts||{};if(!sheet||!sheet["!ref"])return out;r=XLSX.utils.decode_range(sheet["!ref"]);for(R=r.s.r,C=r.s.c;C<=r.e.c;++C){val=sheet[encode_cell({c:C,r:R})];if(!val)continue;if(val.w)hdr[C]=val.w;else switch(val.t){case"s":case"str":hdr[C]=val.v;break;case"n":hdr[C]=val.v;break}}for(R=r.s.r+1;R<=r.e.r;++R){isempty=true;row=Object.create({__rowNum__:R});for(C=r.s.c;C<=r.e.c;++C){val=sheet[encode_cell({c:C,r:R})];if(!val||!val.t)continue;if(typeof val.w!=="undefined"&&!opts.raw){row[hdr[C]]=val.w;isempty=false}else switch(val.t){case"s":case"str":case"b":case"n":if(typeof val.v!=="undefined"){row[hdr[C]]=val.v;isempty=false}break;case"e":break;default:throw"unrecognized type "+val.t}}if(!isempty)out.push(row)}return out}function sheet_to_csv(sheet,opts){var stringify=function stringify(val){if(!val.t)return"";if(typeof val.w!=="undefined")return val.w;switch(val.t){case"n":return String(val.v);case"s":case"str":return typeof val.v!=="undefined"?val.v:"";case"b":return val.v?"TRUE":"FALSE";case"e":return val.v;default:throw"unrecognized type "+val.t}};var out=[],txt="";opts=opts||{};if(!sheet||!sheet["!ref"])return"";var r=XLSX.utils.decode_range(sheet["!ref"]);var fs=opts.FS||",",rs=opts.RS||"\n";for(var R=r.s.r;R<=r.e.r;++R){var row=[];for(var C=r.s.c;C<=r.e.c;++C){var val=sheet[XLSX.utils.encode_cell({c:C,r:R})];if(!val){row.push("");continue}txt=String(stringify(val));if(txt.indexOf(fs)!==-1||txt.indexOf(rs)!==-1||txt.indexOf('"')!==-1)txt='"'+txt.replace(/"/g,'""')+'"';row.push(txt)}out.push(row.join(fs))}return out.join(rs)+(out.length?rs:"")}var make_csv=sheet_to_csv;function get_formulae(ws){var cmds=[];for(var y in ws)if(y[0]!=="!"&&ws.hasOwnProperty(y)){var x=ws[y];var val="";if(x.f)val=x.f;else if(typeof x.w!=="undefined")val="'"+x.w;else if(typeof x.v==="undefined")continue;else val=x.v;cmds.push(y+"="+val)}return cmds}XLSX.utils={encode_col:encode_col,encode_row:encode_row,encode_cell:encode_cell,encode_range:encode_range,decode_col:decode_col,decode_row:decode_row,split_cell:split_cell,decode_cell:decode_cell,decode_range:decode_range,sheet_to_csv:sheet_to_csv,make_csv:sheet_to_csv,get_formulae:get_formulae,sheet_to_row_object_array:sheet_to_row_object_array};if(typeof require!=="undefined"&&typeof exports!=="undefined"){exports.read=XLSX.read;exports.readFile=XLSX.readFile;exports.utils=XLSX.utils;exports.version=XLSX.version}
//# sourceMappingURL=dist/xlsx.min.map
\ No newline at end of file
diff --git a/dist/xlsx.min.map b/dist/xlsx.min.map
index 1b44628..42d6a43 100644
--- a/dist/xlsx.min.map
+++ b/dist/xlsx.min.map
@@ -1 +1 @@
-{"version":3,"file":"dist/xlsx.min.js","sources":["xlsx.js"],"names":["SSF","make_ssf","_strrev","x","String","split","reverse","join","fill","c","l","Array","pad","v","d","t","length","rpad","version","opts_fmt","fixopts","o","y","undefined","opts","date1904","output","mode","table_fmt",1,2,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,65535,"days","months","frac","D","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","Math","floor","q","general_fmt","V","toPrecision","pow","toFixed","substr","replace","toExponential","Error","_general","parse_date_code","date","time","dow","dout","out","T","u","Date","setDate","getDate","getFullYear","getMonth","getDay","m","S","M","H","write_date","type","fmt","val","round","commaify","s","write_num","ffmt","mul","indexOf","idx","match","period","ee","Number","fakee","$$","$1","$2","$3","r","rr","ff","aval","sign","den","rnd","base","myn","myd","min","max","split_fmt","in_str","i","j","push","slice","_split","eval_fmt","flen","lst","dt","hr","toLowerCase","w","jj","map","_eval","choose_fmt","table","format","f","_choose","_table","load","get_table","load_table","tbl","XLSX","current_codepage","current_cptable","cptable","module","require","reset_cp","_getchar","fromCharCode","getdata","data","name","charCodeAt","asNodeBuffer","Buffer","asBinary","_data","getContent","prototype","call","getzipfile","zip","file","files","getzipdata","safe","e","_fs","jszip","JSZip","exports","attregexg","attregex","parsexmltag","tag","words","z","0","evert","obj","Object","keys","forEach","k","hasOwnProperty","encodings",""","'",">","<","&","rencoding","rencstr","unescapexml","text","RegExp","_chr","parseInt","escapexml","parsexmlbool","value","utf8read","orig","c1","c2","c3","matchtag","g","parseVector","h","matches","baseType","size","res","isval","readIEEE754","buf","isLE","nl","ml","el","eMax","eBias","bits","NaN","Infinity","__toBuffer","hexlify","this","toString","bufs","concat","__readUInt8","b","readUInt8","__readUInt16LE","readUInt16LE","__readInt16LE","__readUInt32LE","readUInt32LE","__readInt32LE","readInt32LE","__readDoubleLE","readDoubleLE","ReadShift","oo","vv","loc","prep_blob","blob","pos","read_shift","bind","read","parsenoop","recordhopper","cb","tmpbyte","cntbyte","RT","R","RecordEnum","parse_StrRun","ich","ifnt","parse_RichStr","start","flags","fRichStr","fExtStr","str","parse_XLWideString","rgsStrRun","dwSizeStrRun","parse_Cell","col","iStyleRef","fPhShow","parse_CodeName","parse_RelID","parse_XLNullableWideString","parse_RkNumber","fX100","fInt","RK","parse_UncheckedRfX","cell","cchCharacters","parse_Xnum","BErr",7,23,29,36,42,43,255,"RBErr","parse_rs","tregex","rpregex","parse_rpr","rpr","intro","outro","font","sz","strike","rgb","color","family","style","parse_r","terms","rs","parse_si","html","cellHTML","parse_sst_xml","sst","filter","Count","count","Unique","uniqueCount","parse_BrtBeginSst","parse_sst_bin","n","pass","WTF","styles","parseNumFmts","NumberFmt","formatCode","numFmtId","parseCXfs","CellXf","parse_sty_xml","parse_BrtFmt","ifmt","stFmtCode","parse_BrtXF","ixfeParent","ixfe","parse_sty_bin","state","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.openxmlformats-officedocument.spreadsheetml.worksheet+xml","application/vnd.ms-excel.worksheet","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml","application/vnd.ms-excel.styles","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml","application/vnd.ms-excel.sharedStrings","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml","application/vnd.openxmlformats-package.core-properties+xml","application/vnd.openxmlformats-officedocument.extended-properties+xml","application/vnd.openxmlformats-officedocument.custom-properties+xml","application/vnd.openxmlformats-officedocument.theme+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml","foo","XMLNS_CT","parseProps","p","Company","strings","bools","xtra","xtracp","xtradc","xtradcterms","cur","HeadingPairs","TitlesOfParts","widx","Worksheets","parts","SheetNames","Creator","LastModifiedBy","CreatedDate","ModifiedDate","parseCustomProps","toks","substring","parseFloat","console","warn","parseDeps","ctext","parseCT","ct","workbooks","sheets","calcchains","themes","coreprops","extprops","custprops","strs","comments","xmlns","Extension","ContentType","PartName","calcchain","parseRels","currentFilePath","charAt","rels","resolveRelativePathIntoAbsolute","to","toksFrom","pop","toksTo","reversed","tokTo","shift","rel","Type","Target","Id","TargetMode","canonictarget","parse_comments_xml","authors","commentList","trim","index","comment","author","authorId","ref","guid","decode_cell","sheetRows","textMatch","rt","parse_comments","dirComments","sheetRels","canonicalpath","sheetNames","sheetName","insertCommentsIntoSheet","sheet","range","decode_range","thisCell","encoded","encode_range","a","parse_CellParsedFormula","cce","_ssfopts","parse_ws_xml","mergecells","merges","exec","refguess","sidx","row","cells","cref","sheetStubs","is","epoch","parse","UTC","raw","fmtid","cf","cellNF","tmpref","parse_BrtRowHdr","parse_BrtWsDim","parse_BrtWsProp","parse_BrtCellBlank","parse_BrtCellBool","fBool","parse_BrtCellError","parse_BrtCellIsst","isst","parse_BrtCellReal","parse_BrtCellRk","parse_BrtCellSt","parse_BrtFmlaBool","cellFormula","formula","parse_BrtFmlaError","parse_BrtFmlaNum","parse_BrtFmlaString","parse_BrtMergeCell","parse_ws_bin","end","encode_cell","WBPropsDef","allowRefreshQuery","autoCompressPictures","backupFile","checkCompatibility","codeName","dateCompatibility","filterPrivacy","hidePivotFieldList","promptedSolutions","publishItems","refreshAllConnections","saveExternalLinkValues","showBorderUnselectedTables","showInkAnnotation","showObjects","showPivotChartFilter","WBViewDef","activeTab","autoFilterDateGrouping","firstSheet","minimized","showHorizontalScroll","showSheetTabs","showVerticalScroll","tabRatio","visibility","SheetDef","CalcPrDef","calcCompleted","calcMode","calcOnSave","concurrentCalc","fullCalcOnLoad","fullPrecision","iterate","iterateCount","iterateDelta","refMode","CustomWBViewDef","autoUpdate","changesSavedWin","includeHiddenRowCol","includePrintSettings","maximized","onlySync","personalView","showComments","showFormulaBar","showStatusbar","xWindow","yWindow","XMLNS_WB","parse_wb_xml","wb","AppVersion","WBProps","WBView","Sheets","CalcPr","parse_BrtBundleSh","hsState","iTabID","strRelID","parse_wb_bin","parse_wb","parse_ws","parse_sty","parse_sst",5,6,8,24,25,26,27,28,30,31,32,33,34,35,44,50,51,52,53,54,55,57,58,59,60,62,64,65,66,67,68,69,70,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,357,358,359,360,361,362,363,364,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,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,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,530,531,532,533,534,535,536,537,538,539,540,541,542,548,549,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,620,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,671,672,673,674,675,676,677,678,679,680,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,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,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,2048,2049,2050,2051,2052,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,"defaults","parseZip","entries","sort","dir","xlsb","binname","bookSheets","bookProps","props","propdata","Props","Custprops","deps","bookDeps","path","relsPath","wbsheets","nmode","Directory","Workbook","Deps","Strings","Styles","bookFiles","readSync","options","readFileSync","base64","readFile","encode_col","encode_row","decode_col","decode_row","rowstr","split_cell","cstr","splt","sheet_to_row_object_array","hdr","isempty","C","utils","create","__rowNum__","sheet_to_csv","stringify","txt","fs","FS","RS","make_csv","get_formulae","ws","cmds"],"mappings":";AAKA,GAAIA,OACJ,IAAIC,UAAW,SAASD,KACxB,GAAIE,SAAU,SAASC,GAAK,MAAOC,QAAOD,GAAGE,MAAM,IAAIC,UAAUC,KAAK,IACtE,SAASC,MAAKC,EAAEC,GAAK,MAAO,IAAIC,OAAMD,EAAE,GAAGH,KAAKE,GAChD,QAASG,KAAIC,EAAEC,EAAEL,GAAG,GAAIM,GAAEX,OAAOS,EAAG,OAAOE,GAAEC,QAAQF,EAAEC,EAAGP,KAAKC,GAAG,EAAEK,EAAEC,EAAEC,QAAQD,EAChF,QAASE,MAAKJ,EAAEC,EAAEL,GAAG,GAAIM,GAAEX,OAAOS,EAAG,OAAOE,GAAEC,QAAQF,EAAEC,EAAGA,EAAEP,KAAKC,GAAG,EAAEK,EAAEC,EAAEC,QAC3EhB,IAAIkB,QAAU,OAEd,IAAIC,YACJ,SAASC,SAAQC,GAAG,IAAI,GAAIC,KAAKH,UAAU,GAAGE,EAAEC,KAAKC,UAAWF,EAAEC,GAAGH,SAASG,GAC9EtB,IAAIwB,KAAOL,QACXA,UAASM,SAAW,CACpBN,UAASO,OAAS,EAClBP,UAASQ,KAAO,EAChB,IAAIC,YACH,EAAI,UACJC,EAAI,IACJC,EAAI,OACJC,EAAI,QACJC,EAAI,WACJC,EAAI,KACJC,GAAI,QACJC,GAAI,WACJC,GAAI,QACJC,GAAI,UACJC,GAAI,SACJC,GAAI,WACJC,GAAI,QACJC,GAAI,SACJC,GAAI,aACJC,GAAI,gBACJC,GAAI,OACJC,GAAI,UACJC,GAAI,cACJC,GAAI,iBACJC,GAAI,sBACJC,GAAI,sBACJC,GAAI,2BACJC,GAAI,QACJC,GAAI,YACJC,GAAI,SACJC,GAAI,WACJC,GAAI,IACJC,GAAI,2BACJC,MAAO,UAER,IAAIC,QACF,MAAO,WACP,MAAO,WACP,MAAO,YACP,MAAO,cACP,MAAO,aACP,MAAO,WACP,MAAO,YAET,IAAIC,UACF,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,IAAIC,MAAO,QAASA,MAAKzD,EAAG0D,EAAGC,OAC9B,GAAIC,KAAM5D,EAAI,GAAK,EAAI,CACvB,IAAI6D,GAAI7D,EAAI4D,GACZ,IAAIE,KAAM,EAAGC,IAAM,EAAGC,EAAI,CAC1B,IAAIC,KAAM,EAAGC,IAAM,EAAGC,EAAI,CAC1B,IAAIC,GAAIC,KAAKC,MAAMT,EACnB,OAAMK,IAAMR,EAAG,CACdU,EAAIC,KAAKC,MAAMT,EACfG,GAAII,EAAIL,IAAMD,GACdK,GAAIC,EAAIF,IAAMD,GACd,IAAIJ,EAAIO,EAAK,MAAc,KAC3BP,GAAI,GAAKA,EAAIO,EACbN,KAAMC,GAAKA,KAAMC,CACjBC,KAAMC,GAAKA,KAAMC,EAElB,GAAGA,EAAIT,EAAG,CAAES,EAAID,GAAKF,GAAID,IACzB,GAAGI,EAAIT,EAAG,CAAES,EAAIF,GAAKD,GAAIF,IACzB,IAAIH,MAAO,OAAQ,EAAGC,IAAMI,EAAGG,EAC/B,IAAGA,IAAI,EAAG,KAAM,qBAAqBH,EAAE,IAAID,IAAI,IAAID,IAAI,IAAIK,EAAE,IAAID,IAAI,IAAID,GACzE,IAAIM,GAAIF,KAAKC,MAAMV,IAAMI,EAAEG,EAC3B,QAAQI,EAAGX,IAAII,EAAIO,EAAEJ,EAAGA,GAEzB,IAAIK,aAAc,SAAS9D,GAC1B,SAAUA,KAAM,UAAW,MAAOA,GAAI,OAAS,OAC/C,UAAUA,KAAM,SAAU,CACzB,GAAIQ,GAAGuD,EAAI/D,EAAI,GAAKA,EAAIA,CACxB,IAAG+D,GAAK,IAAOA,EAAI,EAAGvD,EAAIR,EAAEgE,YAAY,OACnC,IAAGD,GAAK,KAAQA,EAAI,GAAKvD,EAAIR,EAAEgE,YAAY,OAC3C,IAAGD,GAAK,MAASA,EAAI,IAAMvD,EAAIR,EAAEgE,YAAY,OAC7C,IAAGD,GAAK,MAAUA,EAAI,KAAOvD,EAAIR,EAAEgE,YAAY,OAC/C,IAAGD,GAAKJ,KAAKM,IAAI,GAAG,KAAOF,EAAIJ,KAAKM,IAAI,GAAG,IAAKzD,EAAIR,EAAEkE,QAAQ,IAAIC,OAAO,EAAE,QAC3E,IAAGJ,EAAIJ,KAAKM,IAAI,IAAI,IAAMF,EAAIJ,KAAKM,IAAI,GAAG,IAAK,CACnDzD,EAAIR,EAAEkE,QAAQ,IAAIE,QAAQ,qBAAqB,MAAMA,QAAQ,MAAM,GACnE,IAAG5D,EAAEL,OAAS,IAAIH,EAAE,EAAE,EAAE,GAAIQ,EAAIR,EAAEgE,YAAY,GAC9C,IAAGxD,EAAEL,OAAS,IAAIH,EAAE,EAAE,EAAE,GAAIQ,EAAIR,EAAEqE,cAAc,OAE5C,CACJ7D,EAAIR,EAAEkE,QAAQ,IAAIE,QAAQ,qBAAqB,KAC9C,IAAG5D,EAAEL,OAAS,IAAMH,EAAE,EAAE,EAAE,GAAIQ,EAAIR,EAAEgE,YAAY,GAElDxD,EAAIA,EAAE4D,QAAQ,qBAAqB,OAAOA,QAAQ,QAAQ,IAC1D,OAAO5D,GAAE4D,QAAQ,IAAI,KAAKA,QAAQ,QAAQ,IAAIA,QAAQ,oBAAoB,OAAOA,QAAQ,kBAAkB,KAAK,IAAI,MAErH,SAAUpE,KAAM,SAAU,MAAOA,EACjC,MAAM,IAAIsE,OAAM,wCAA0CtE,GAE3Db,KAAIoF,SAAWT,WACf,IAAIU,iBAAkB,QAASA,iBAAgBxE,EAAEW,MAChD,GAAI8D,MAAOd,KAAKC,MAAM5D,GAAI0E,KAAOf,KAAKC,MAAM,OAAS5D,EAAIyE,MAAM,MAAOE,IAAI,CAC1E,IAAIC,SAASC,KAAK7B,EAAEyB,KAAMK,EAAEJ,KAAMK,EAAE,OAAO/E,EAAEyE,MAAMC,KAAOnE,SAAQI,KAAQA,SAC1E,IAAGA,KAAKC,SAAU6D,MAAQ,IAC1B,IAAGA,KAAO,QAAS,MAAO,KAC1B,IAAGA,OAAS,GAAI,CAACG,MAAQ,KAAK,EAAE,GAAKD,KAAI,MACpC,IAAGF,OAAS,EAAG,CAACG,MAAQ,KAAK,EAAE,EAAID,KAAI,MACvC,CACJ,GAAGF,KAAO,KAAMA,IAEhB,IAAIxE,GAAI,GAAI+E,MAAK,KAAK,EAAE,EACxB/E,GAAEgF,QAAQhF,EAAEiF,UAAYT,KAAO,EAC/BG,OAAQ3E,EAAEkF,cAAelF,EAAEmF,WAAW,EAAEnF,EAAEiF,UAC1CP,KAAM1E,EAAEoF,QACR,IAAkCZ,KAAO,GAAIE,KAAOA,IAAM,GAAK,EAEhEE,IAAIpE,EAAImE,KAAK,EAAIC,KAAIS,EAAIV,KAAK,EAAIC,KAAI5E,EAAI2E,KAAK,EAC/CC,KAAIU,EAAIb,KAAO,EAAIA,MAAOf,KAAKC,MAAMc,KAAO,GAC5CG,KAAIW,EAAId,KAAO,EAAIA,MAAOf,KAAKC,MAAMc,KAAO,GAC5CG,KAAIY,EAAIf,IACRG,KAAIhB,EAAIc,GACR,OAAOE,KAER1F,KAAIqF,gBAAkBA,eAEtB,IAAIkB,YAAa,SAASC,KAAMC,IAAKC,KACpC,GAAGA,IAAM,EAAG,MAAO,EACnB,IAAIrF,EACJ,QAAOmF,MACN,IAAK,IAAK,OAAOC,KAChB,IAAK,IAAK,IAAK,KAAM,MAAO7F,KAAI8F,IAAIpF,EAAI,IAAI,EAC5C,SAAS,MAAOV,KAAI8F,IAAIpF,EAAI,IAAM,GAEnC,IAAK,IAAK,OAAOmF,KAChB,IAAK,IAAK,MAAOC,KAAIP,CACrB,KAAK,KAAM,MAAOvF,KAAI8F,IAAIP,EAAE,EAC5B,KAAK,MAAO,MAAOxC,QAAO+C,IAAIP,EAAE,GAAG,EACnC,KAAK,QAAS,MAAOxC,QAAO+C,IAAIP,EAAE,GAAG,EACrC,SAAS,MAAOxC,QAAO+C,IAAIP,EAAE,GAAG,GAEjC,IAAK,IAAK,OAAOM,KAChB,IAAK,IAAK,MAAOC,KAAI5F,CACrB,KAAK,KAAM,MAAOF,KAAI8F,IAAI5F,EAAE,EAC5B,KAAK,MAAO,MAAO4C,MAAKgD,IAAIhC,GAAG,EAC/B,SAAS,MAAOhB,MAAKgD,IAAIhC,GAAG,GAE7B,IAAK,IAAK,OAAO+B,KAChB,IAAK,IAAK,MAAO,IAAGC,IAAIJ,EAAE,IAAI,EAC9B,KAAK,KAAM,MAAO1F,KAAI,GAAG8F,IAAIJ,EAAE,IAAI,GAAI,EACvC,SAAS,KAAM,oBAAsBG,IAEtC,IAAK,IAAK,OAAOA,KAChB,IAAK,IAAK,MAAOC,KAAIJ,CACrB,KAAK,KAAM,MAAO1F,KAAI8F,IAAIJ,EAAG,EAC7B,SAAS,KAAM,oBAAsBG,IAEtC,IAAK,IAAK,OAAOA,KAChB,IAAK,IAAK,MAAOC,KAAIL,CACrB,KAAK,KAAM,MAAOzF,KAAI8F,IAAIL,EAAG,EAC7B,SAAS,KAAM,sBAAwBI,IAExC,IAAK,IAAK,OAAOA,KAChB,IAAK,IAAK,MAAOjC,MAAKmC,MAAMD,IAAIN,EAAEM,IAAId,EACtC,KAAK,KAAM,MAAOhF,KAAI4D,KAAKmC,MAAMD,IAAIN,EAAEM,IAAId,GAAI,EAC/C,KAAK,OAAQvE,EAAIT,IAAI4D,KAAKmC,MAAM,IAAID,IAAIN,EAAEM,IAAId,IAAI,EAAI,OAAOvE,GAAE2D,OAAO,EAAE,GAAG,IAAM3D,EAAE2D,OAAO,EAC1F,KAAK,QAAS3D,EAAIT,IAAI4D,KAAKmC,MAAM,KAAKD,IAAIN,EAAEM,IAAId,IAAI,EAAI,OAAOvE,GAAE2D,OAAO,EAAE,GAAG,IAAM3D,EAAE2D,OAAO,EAC5F,KAAK,SAAU3D,EAAIT,IAAI4D,KAAKmC,MAAM,KAAMD,IAAIN,EAAEM,IAAId,IAAI,EAAI,OAAOvE,GAAE2D,OAAO,EAAE,GAAG,IAAM3D,EAAE2D,OAAO,EAC9F,SAAS,KAAM,sBAAwByB,IAExC,IAAK,IAAK,OAAOA,KAChB,IAAK,MAAO,IAAK,OAAQpF,EAAIqF,IAAI7C,EAAE,GAAG6C,IAAIJ,CAAG,MAC7C,KAAK,MAAO,IAAK,OAAQjF,GAAKqF,IAAI7C,EAAE,GAAG6C,IAAIJ,GAAG,GAAGI,IAAIL,CAAG,MACxD,KAAK,MAAO,IAAK,OAAQhF,IAAMqF,IAAI7C,EAAE,GAAG6C,IAAIJ,GAAG,GAAGI,IAAIL,GAAG,GAAG7B,KAAKmC,MAAMD,IAAIN,EAAEM,IAAId,EAAI,MACrF,SAAS,KAAM,uBAAyBa,IACvC,MAAOA,KAAIzF,SAAW,EAAIK,EAAIT,IAAIS,EAAG,EAEvC,KAAK,IAAK,CAAE,MAAOqF,KAAIpF,EAAK,OAI9B,IAAIsF,UAAW,SAASC,GAAK,MAAO3G,SAAQA,QAAQ2G,GAAG5B,QAAQ,OAAO,QAAQA,QAAQ,KAAK,IAC3F,IAAI6B,WAAY,SAASN,KAAMC,IAAKC,KACnC,GAAGF,OAAS,IAAK,CAChB,GAAIO,MAAON,IAAIxB,QAAQ,OAAO,IAAIA,QAAQ,MAAM,IAAIA,QAAQ,KAAK,GACjE,IAAGyB,KAAO,EAAG,MAAOI,WAAU,IAAKC,KAAML,IACzC,OAAO,IAAMI,UAAU,IAAKC,MAAOL,KAAO,IAE3C,GAAIM,KAAM,EAAG3F,CACboF,KAAMA,IAAIxB,QAAQ,KAAK,SAAS9E,GAAK6G,KAAO,OAAO,IACnD,IAAGA,MAAQ,EAAG,MAAOF,WAAUN,KAAMC,IAAKC,IAAMlC,KAAKM,IAAI,GAAG,EAAEkC,MAAQxG,KAAK,IAAIwG,IAC/E,IAAGP,IAAIQ,QAAQ,MAAQ,EAAG,CACzB,GAAIC,KAAMT,IAAIQ,QAAQ,KAAOR,IAAIQ,QAAQ,KAAO,CAChD,IAAGR,IAAIU,MAAM,eAAgB,CAC7B,GAAIC,QAASX,IAAIQ,QAAQ,IAAM,IAAGG,UAAY,EAAGA,OAAOX,IAAIQ,QAAQ,IACnE,IAAII,IAAMC,OAAOZ,IAAIxB,cAAc,GAAGF,OAAO,GAAG0B,IAAI,KAAMU,MAC1D,IAAGC,GAAK,EAAGA,IAAMD,MACjB/F,IAAKqF,IAAIlC,KAAKM,IAAI,GAAGuC,KAAKxC,YAAYqC,IAAI,GAAGE,OAAOC,IAAID,OACxD,KAAI/F,EAAE8F,MAAM,QAAS,CACpB,GAAII,OAASD,OAAOZ,IAAIxB,cAAc,GAAGF,OAAO,GAAG0B,IAAI,IACvD,IAAGrF,EAAE4F,QAAQ,QAAU,EAAG5F,EAAIA,EAAE,GAAK,IAAMA,EAAE2D,OAAO,GAAK,MAAQuC,MAAQlG,EAAEL,OAAOqG,QAC7EhG,IAAK,MAAQkG,MAAQF,GAC1B,OAAMhG,EAAE2D,OAAO,EAAE,KAAO,KAAM,CAC7B3D,EAAIA,EAAE,GAAKA,EAAE2D,OAAO,EAAEoC,QAAU,IAAM/F,EAAE2D,OAAO,EAAEoC,OACjD/F,GAAIA,EAAE4D,QAAQ,aAAa,MAAMA,QAAQ,QAAQ,MAElD5D,EAAIA,EAAE4D,QAAQ,MAAM,KAErB5D,EAAIA,EAAE4D,QAAQ,iCAAiC,SAASuC,GAAGC,GAAGC,GAAGC,IAAM,MAAOF,IAAKC,GAAKC,GAAG3C,OAAO,GAAGoC,OAAOC,IAAID,QAAU,IAAMO,GAAG3C,OAAOqC,IAAM,UAC1IhG,GAAIqF,IAAIxB,cAAcgC,IAC7B,IAAGT,IAAIU,MAAM,WAAa9F,EAAE8F,MAAM,eAAgB9F,EAAIA,EAAE2D,OAAO,EAAE3D,EAAEL,OAAO,GAAK,IAAMK,EAAEA,EAAEL,OAAO,EAChG,IAAGyF,IAAIU,MAAM,QAAU9F,EAAE8F,MAAM,OAAQ9F,EAAIA,EAAE4D,QAAQ,MAAM,IAC3D,OAAO5D,GAAE4D,QAAQ,IAAI,KAEtB,GAAGwB,IAAI,KAAO,IAAK,MAAO,IAAIK,UAAUN,KAAKC,IAAIzB,OAAOyB,IAAI,IAAI,IAAI,EAAE,GAAGC,IACzE,IAAIkB,GAAGC,GAAIC,GAAIC,KAAOrB,IAAM,GAAKA,IAAMA,IAAKsB,KAAOtB,IAAM,EAAI,IAAM,EACnE,IAAIkB,EAAInB,IAAIU,MAAM,8BAAgC,CACjD,GAAIc,KAAMX,OAAOM,EAAE,IAAKM,IAAM1D,KAAKmC,MAAMoB,KAAOE,KAAME,KAAO3D,KAAKC,MAAMyD,IAAID,IAC5E,IAAIG,KAAOF,IAAMC,KAAKF,IAAMI,IAAMJ,GAClC,OAAOD,OAAQG,KAAKA,KAAK,IAAM,KAAOC,MAAQ,EAAI5H,KAAK,IAAKoH,EAAE,GAAG5G,OAAS,EAAI4G,EAAE,GAAG5G,QAAUJ,IAAIwH,IAAIR,EAAE,GAAG5G,OAAO,KAAO4G,EAAE,GAAK,IAAMA,EAAE,GAAKhH,IAAIyH,IAAIT,EAAE,GAAG5G,SAE1J,GAAGyF,IAAIU,MAAM,UAAWV,IAAMA,IAAIxB,QAAQ,KAAK,GAC/C,IAAGwB,IAAIU,MAAM,SAAU,OAAQT,IAAI,EAAE,IAAI,IAAI9F,IAAI4D,KAAKmC,MAAMoB,MAAMtB,IAAIzF,OACtE,IAAGyF,IAAIU,MAAM,WAAY,MAAO/G,QAAOoE,KAAKmC,MAAMD,MAAMzB,QAAQ,MAAM,GACtE,IAAI2C,EAAInB,IAAIU,MAAM,eAAiB,CAClC9F,EAAImD,KAAKmC,MAAMD,IAAMlC,KAAKM,IAAI,GAAG8C,EAAE,GAAG5G,QACtC,OAAOZ,QAAOiB,EAAEmD,KAAKM,IAAI,GAAG8C,EAAE,GAAG5G,SAASiE,QAAQ,aAAa,MAAM2C,EAAE,IAAI3C,QAAQ,MAAM,IAAI2C,EAAE,IAAI3C,QAAQ,cAAc,SAASuC,GAAIC,IAAM,MAAO,IAAMA,GAAKjH,KAAK,IAAKoH,EAAE,GAAG5G,OAAOyG,GAAGzG,UAExLyF,IAAMA,IAAIxB,QAAQ,OAAQ,IAC1B,IAAI2C,EAAInB,IAAIU,MAAM,gBAAkB,CACnC9F,EAAImD,KAAKmC,MAAMoB,KAAKvD,KAAKM,IAAI,GAAG8C,EAAE,GAAG5G,QACrC,OAAOgH,MAAO5H,OAAOiB,EAAImD,KAAKM,IAAI,GAAG8C,EAAE,GAAG5G,SAASiE,QAAQ,kBAAkB,OAAOA,QAAQ,cAAc,OAAOA,QAAQ,OAAO2C,EAAE,GAAG5G,OAAO,KAAK,KAElJ,GAAI4G,EAAInB,IAAIU,MAAM,iBAAmB,MAAOa,MAAOpB,SAASxG,OAAOoE,KAAKmC,MAAMoB,OAC9E,IAAIH,EAAInB,IAAIU,MAAM,qBAAuB,CACxCU,GAAKrD,KAAKmC,OAAOD,IAAIlC,KAAKC,MAAMiC,MAAMlC,KAAKM,IAAI,GAAG8C,EAAE,GAAG5G,QACvD,OAAO0F,KAAM,EAAI,IAAMI,UAAUN,KAAMC,KAAMC,KAAOE,SAASxG,OAAOoE,KAAKC,MAAMiC,OAAS,IAAM9F,IAAIiH,GAAGD,EAAE,GAAG5G,OAAO,GAElH,GAAI4G,EAAInB,IAAIU,MAAM,iCAAmC,CACpDU,GAAKrD,KAAK8D,IAAI9D,KAAK+D,IAAIX,EAAE,GAAG5G,OAAQ4G,EAAE,GAAG5G,QAAQ,EACjD8G,IAAKlE,KAAKmE,KAAMvD,KAAKM,IAAI,GAAG+C,IAAI,EAAG,KACnC,OAAOG,OAAQF,GAAG,KAAKA,GAAG,GAAK,GAAK,MAAQ,KAAOA,GAAG,GAAKlH,IAAIkH,GAAG,GAAGD,GAAG,KAAOD,EAAE,GAAK,IAAMA,EAAE,GAAK3G,KAAK6G,GAAG,GAAGD,GAAG,KAAMrH,KAAK,IAAK,EAAEqH,GAAG,EAAID,EAAE,GAAG5G,OAAS4G,EAAE,GAAG5G,SAE9J,OAAOyF,KACN,IAAK,IAAK,IAAK,KAAM,MAAOjC,MAAKmC,MAAMD,IACvC,KAAK,OAAQrF,EAAImD,KAAKmC,MAAMD,IAAI,IAC/B,OAAOtG,QAAOiB,EAAE,KAAK4D,QAAQ,aAAa,OAAOA,QAAQ,QAAQ,IAClE,KAAK,QAAS,GAAI9E,GAAIyG,SAASxG,OAAOoE,KAAKmC,MAAMoB,OAAS,OAAO5H,KAAM,IAAM6H,KAAO7H,EAAI,EACxF,UAED,KAAM,IAAIgF,OAAM,uBAAyBsB,IAAM,KAEhD,SAAS+B,WAAU/B,KAClB,GAAIf,OACJ,IAAI+C,SAAU,CACd,KAAI,GAAIC,GAAI,EAAGC,EAAI,EAAGD,EAAIjC,IAAIzF,SAAU0H,EAAG,CAC1C,GAAGD,SAAW,EAAG,CAAE,GAAGhC,IAAIiC,IAAM,IAAKD,QAAU,CAAG,UAClD,GAAGhC,IAAIiC,IAAM,KAAOjC,IAAIiC,IAAM,KAAOjC,IAAIiC,IAAM,KAAM,GAAIA,CAAG,UAC5D,GAAGjC,IAAIiC,IAAM,IAAK,CAAED,OAASC,CAAG,UAChC,GAAGjC,IAAIiC,IAAM,IAAK,QAClBhD,KAAIkD,KAAKnC,IAAIoC,MAAMF,EAAED,GACrBC,GAAID,EAAE,EAEPhD,IAAIkD,KAAKnC,IAAIoC,MAAMF,GACnB,IAAGF,SAAU,EAAG,KAAM,IAAItD,OAAM,WAAasB,IAAM,4BAA8BgC,OACjF,OAAO/C,KAER1F,IAAI8I,OAASN,SACb,SAASO,UAAStC,IAAK5F,EAAGW,KAAMwH,MAC/B,GAAItD,QAAUrE,EAAI,GAAIqH,EAAI,EAAGjI,EAAI,GAAIwI,IAAI,IAAKvE,KAAQwE,EACtD9H,SAAQI,KAAQA,SAChB,IAAI2H,IAAG,GAEP,OAAMT,EAAIjC,IAAIzF,OAAQ,CACrB,OAAQP,EAAIgG,IAAIiC,IACf,IAAK,IACJ,GAAGjC,IAAIzB,OAAO0D,EAAGA,EAAE,GAAGU,gBAAkB,UACvC,KAAM,IAAIjE,OAAM,0BAA4BsB,IAAIiC,GAAK,OAAQjC,IAC9Df,KAAIkD,MAAM7H,EAAE,IAAIF,EAAE,WAAa6H,IAAG,CAAG,MACtC,KAAK,IACJ,IAAIrH,EAAE,GAAGoF,MAAMiC,KAAO,KAAOA,EAAIjC,IAAIzF,QAASK,GAAKoF,IAAIiC,EACvDhD,KAAIkD,MAAM7H,EAAE,IAAKF,EAAEQ,MAAOqH,CAAG,MAC9B,KAAK,KAAM,GAAIW,GAAI5C,MAAMiC,GAAI3H,EAAI,KAAKkG,QAAQoC,MAAQ,EAAI,IAAMA,CAC/D3D,KAAIkD,MAAM7H,EAAEA,EAAGF,EAAEwI,MAAOX,CAAG,MAC5B,KAAK,IAAKhD,IAAIkD,MAAM7H,EAAE,IAAKF,EAAE,KAAO6H,IAAG,CAAG,MAC1C,KAAK,IACJhD,IAAIkD,MAAM7H,EAAE,IAAKF,EAAEA,MAAO6H,CAAG,MAE9B,KAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IACtDjI,EAAIA,EAAE2I,aAEP,KAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IACtD,GAAGvI,EAAI,EAAG,MAAO,EACjB,KAAIqI,GAAIA,GAAK7D,gBAAgBxE,EAAGW,KAChC,KAAI0H,GAAI,MAAO,EACf7H,GAAIoF,IAAIiC,EAAI,QAAOjC,MAAMiC,IAAI,IAAIU,gBAAkB3I,EAAGY,GAAGZ,CACzD,IAAGA,IAAM,KAAOgG,IAAIiC,KAAO,KAAOjC,IAAIiC,EAAE,KAAO,IAAK,CAAErH,GAAG,GAAK,OAAMoF,MAAMiC,KAAO,IAAKrH,GAAI,IAC1F,GAAGZ,IAAM,KAAOwI,IAAIG,gBAAkB,IAAK3I,EAAI,GAC/C,IAAGA,IAAM,IAAKA,EAAI0I,EAClB9H,GAAIA,EAAE+H,aACN1E,IAAG3D,EAAEN,EAAGI,EAAEQ,EAAIqE,KAAIkD,KAAKlE,EAAIuE,KAAMxI,CAAG,MACrC,KAAK,IACJ,IAAIyI,GAAIA,GAAK7D,gBAAgBxE,EAAGW,KAChC,KAAI0H,GAAI,MAAO,EACfxE,IAAG3D,EAAEN,EAAEI,EAAE,IACT,IAAG4F,IAAIzB,OAAO0D,EAAG,KAAO,MAAO,CAAChE,EAAE7D,EAAIqI,GAAG5C,GAAK,GAAK,IAAM,GAAK5B,GAAE3D,EAAI,GAAKoI,IAAG,GAAIT,IAAG,MAC9E,IAAGjC,IAAIzB,OAAO0D,EAAE,KAAO,QAAS,CAAEhE,EAAE7D,EAAIqI,GAAG5C,GAAK,GAAK,KAAO,IAAM5B,GAAE3D,EAAI,GAAK2H,IAAG,CAAGS,IAAG,QACtF,CAAEzE,EAAE3D,EAAI,GAAK2H,KAClBhD,IAAIkD,KAAKlE,EAAIuE,KAAMxI,CAAG,MACvB,KAAK,IACJY,EAAIZ,CACJ,OAAMgG,IAAIiC,OAAS,KAAOA,EAAIjC,IAAIzF,OAAQK,GAAKoF,IAAIiC,EACnD,IAAGrH,EAAE2D,QAAQ,KAAO,IAAK,KAAM,4BAA8B3D,EAAI,GACjE,IAAGA,EAAE8F,MAAM,iBAAkB,CAC5B,IAAI+B,GAAIA,GAAK7D,gBAAgBxE,EAAGW,KAChC,KAAI0H,GAAI,MAAO,EACfxD,KAAIkD,MAAM7H,EAAE,IAAKF,EAAEQ,EAAE+H,oBACf,CAAE/H,EAAE,GACX,KAED,KAAK,IAAK,IAAK,IAAK,IAAK,IACxBA,EAAIZ,CAAG,OAAM,YAAYwG,QAAQxG,EAAEgG,MAAMiC,KAAO,EAAGrH,GAAKZ,CACxDiF,KAAIkD,MAAM7H,EAAE,IAAKF,EAAEQ,GAAK,MACzB,KAAK,IACJA,EAAIoF,IAAIiC,EAAI,OAAMjC,MAAMiC,KAAOjI,EAAGY,GAAGZ,CACrCiE,IAAG3D,EAAEN,EAAGI,EAAEQ,EAAIqE,KAAIkD,KAAKlE,EAAIuE,KAAMxI,CAAG,MACrC,KAAK,MAAOiI,CAAG,IAAGjC,IAAIiC,IAAM,MAAOA,CAAG,MACtC,KAAK,IAAK,IAAK,IAAKhD,IAAIkD,MAAM7H,EAAGiI,OAAO,EAAE,IAAIvI,EAAGI,EAAEJ,MAAOiI,CAAG,MAC7D,KAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IACpFrH,EAAIoF,IAAIiC,EAAI,OAAM,aAAazB,QAAQR,MAAMiC,KAAO,EAAGrH,GAAGoF,IAAIiC,EAC9DhD,KAAIkD,MAAM7H,EAAE,IAAKF,EAAEQ,GAAK,MACzB,KAAK,IAAKqE,IAAIkD,MAAM7H,EAAEN,EAAEI,EAAEJ,MAAOiI,CAAG,MACpC,SACC,GAAG,sBAAsBzB,QAAQxG,MAAQ,EACxC,KAAM,0BAA4BgG,IAAIiC,GAAK,OAASjC,GACrDf,KAAIkD,MAAM7H,EAAE,IAAKF,EAAEJ,MAAOiI,CAAG,QAKhC,IAAIA,EAAEhD,IAAI1E,OAAO,EAAGiI,IAAI,IAAKP,GAAK,IAAKA,EAAG,CACzC,OAAOhD,IAAIgD,GAAG3H,GACb,IAAK,IAAK,IAAK,IAAK2E,IAAIgD,GAAG3H,EAAIoI,EAAIF,KAAI,GAAK,MAC5C,KAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAKA,IAAIvD,IAAIgD,GAAG3H,CAAG,MAChE,KAAK,IAAK,GAAGkI,MAAQ,IAAKvD,IAAIgD,GAAG3H,EAAI,GAAK,QAK5C,IAAI2H,EAAE,EAAGA,EAAIhD,IAAI1E,SAAU0H,EAAG,CAC7B,OAAOhD,IAAIgD,GAAG3H,GACb,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,KACxC,KAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IAAK,IACpF2E,IAAIgD,GAAG7H,EAAI0F,WAAWb,IAAIgD,GAAG3H,EAAG2E,IAAIgD,GAAG7H,EAAGqI,GAC1CxD,KAAIgD,GAAG3H,EAAI,GAAK,MACjB,KAAK,IAAK,IAAK,IAAK,IAAK,IACxB,GAAIuI,IAAKZ,EAAE,CACX,OAAMhD,IAAI4D,MAAQ,KAAKrC,QAAQvB,IAAI4D,IAAIvI,IAAM,GAAM,KAAKkG,QAAQvB,IAAI4D,IAAIvI,IAAM,GAAK,KAAKkG,SAASvB,IAAI4D,GAAG,QAAQvI,IAAI,IAAM2E,IAAI4D,GAAG,GAAGvI,GAAK,KAAO2E,IAAI4D,GAAG,GAAGzI,GAAK,MAAS6E,IAAIgD,GAAG3H,GAAK,MAAQ2E,IAAI4D,IAAIvI,GAAK,KAAO2E,IAAI4D,IAAIvI,GAAK,MAAQ2E,IAAI4D,IAAIvI,GAAK,MAAQ2E,IAAI4D,IAAIzI,GAAK,KAAO,KAAKoG,QAAQvB,IAAI4D,IAAIzI,IAAM,GAAM6E,IAAI4D,IAAIzI,GAAK,MAAQ6E,IAAI4D,GAAG,QAAQvI,GAAK,MAAQ,CAC/V2E,IAAIgD,GAAG7H,GAAK6E,IAAI4D,IAAIzI,QACb6E,KAAI4D,MAAOA,GAEnB5D,IAAIgD,GAAG7H,EAAIiG,UAAUpB,IAAIgD,GAAG3H,EAAG2E,IAAIgD,GAAG7H,EAAImI,KAAM,GAAKnI,EAAI,GAAK6H,EAAE,GAAKhD,IAAIgD,EAAE,GAAG7H,GAAK,KAAOA,EAAEA,EAC5F6E,KAAIgD,GAAG3H,EAAI,GACX2H,GAAIY,GAAG,CAAG,MACX,KAAK,IAAK5D,IAAIgD,GAAG3H,EAAI,GAAK2E,KAAIgD,GAAG7H,EAAI8D,YAAY9D,EAAEW,KAAO,QAG5D,MAAOkE,KAAI6D,IAAI,SAASpJ,GAAG,MAAOA,GAAEU,IAAKN,KAAK,IAE/CP,IAAIwJ,MAAQT,QACZ,SAASU,YAAWhD,IAAK5F,EAAGQ,GAC3B,SAAUoF,OAAQ,SAAUA,KAAQpF,GAAGA,EAAEqI,MAASrI,EAAEqI,MAAQ9H,WAAW6E,IACvE,UAAUA,OAAQ,SAAUA,IAAM+B,UAAU/B,IAC5C,IAAI/F,GAAI+F,IAAIzF,MACZ,IAAGN,EAAE,GAAK+F,IAAI/F,EAAE,GAAGuG,QAAQ,MAAM,IAAKvG,CACtC,QAAO+F,IAAIzF,QACV,IAAK,GAAGyF,IAAMA,IAAI,GAAGQ,QAAQ,MAAM,GAAK,UAAW,UAAW,UAAWR,IAAI,KAAOA,IAAI,GAAIA,IAAI,GAAIA,IAAI,GAAI,IAAM,MAClH,KAAK,GAAGA,IAAMA,IAAI,GAAGQ,QAAQ,MAAM,GAAKR,IAAI,GAAIA,IAAI,GAAIA,IAAI,GAAIA,IAAI,KAAOA,IAAI,GAAIA,IAAI,GAAIA,IAAI,GAAI,IAAM,MACzG,KAAK,GAAGA,IAAMA,IAAI,GAAGQ,QAAQ,MAAM,GAAKR,IAAI,GAAIA,IAAI,GAAIA,IAAI,GAAIA,IAAI,KAAOA,IAAI,GAAIA,IAAI,GAAIA,IAAI,GAAI,IAAM,MACzG,KAAK,GAAG,KACR,SAAS,KAAM,iCAAmCA,IAAM,IAEzD,SAAU5F,KAAM,SAAU,OAAQ4F,IAAIzF,OAAQyF,IAAI,GAClD,QAAQ/F,EAAGG,EAAI,EAAI4F,IAAI,GAAK5F,EAAI,EAAI4F,IAAI,GAAKA,IAAI,IAElD,GAAIkD,QAAS,QAASA,QAAOlD,IAAI5F,EAAEQ,GAClCD,QAAQC,EAAKA,MACb,UAAUoF,OAAQ,UAAYA,IAAI2C,gBAAkB,UAAW,MAAOzE,aAAY9D,EAAGQ,EACrF,UAAUoF,OAAQ,SAAUA,KAAOpF,EAAEqI,OAAS9H,WAAW6E,IACzD,IAAImD,GAAIH,WAAWhD,IAAK5F,EAAGQ,EAC3B,IAAGuI,EAAE,GAAGR,gBAAkB,UAAW,MAAOzE,aAAY9D,EAAEQ,EAC1D,IAAGR,IAAM,KAAMA,EAAI,MAAQ,IAAGA,IAAM,MAAOA,EAAI,OAC/C,IAAGA,IAAM,UAAaA,KAAM,YAAa,MAAO,EAChD,OAAOkI,UAASa,EAAE,GAAI/I,EAAGQ,EAAGuI,EAAE,IAG/B5J,KAAI6J,QAAUJ,UACdzJ,KAAI8J,OAASlI,SACb5B,KAAI+J,KAAO,SAAStD,IAAKS,KAAOtF,UAAUsF,KAAOT,IACjDzG,KAAI2J,OAASA,MACb3J,KAAIgK,UAAY,WAAa,MAAOpI,WACpC5B,KAAIiK,WAAa,SAASC,KAAO,IAAI,GAAIxB,GAAE,EAAGA,GAAG,MAAUA,EAAG,GAAGwB,IAAIxB,GAAI1I,IAAI+J,KAAKG,IAAIxB,GAAIA,IAE1FzI,UAASD,IACT,IAAImK,UACJ,SAAUA,MACVA,KAAKjJ,QAAU,QACf,IAAIkJ,kBAAkBC,gBAAiBC,OACvC,UAAUC,UAAW,mBAAsBC,WAAY,YAAa,CACnE,SAAUF,WAAY,YAAaA,QAAUE,QAAQ,WACrDJ,kBAAmB,IAAMC,iBAAkBC,QAAQ,MAEpD,QAASG,YACRL,iBAAmB,IAAM,UAAUE,WAAY,YAAaD,gBAAkBC,QAAQ,MAEvF,QAASI,UAASvK,GAAK,MAAOC,QAAOuK,aAAaxK,GAElD,QAASyK,SAAQC,MAChB,IAAIA,KAAM,MAAO,KACjB,IAAGA,KAAKA,KAAM,MAAOA,MAAKC,KAAK9F,QAAQ,KAAO,OAAS6F,KAAKA,KAAOA,KAAKA,KAAKxK,MAAM,IAAIkJ,IAAI,SAASpJ,GAAK,MAAOA,GAAE4K,WAAW,IAC7H,IAAGF,KAAKG,oBAAuBC,UAAW,aAAeJ,KAAKC,KAAK9F,QAAQ,KAAK,OAAQ,MAAO6F,MAAKG,cACpG,IAAGH,KAAKK,UAAYL,KAAKC,KAAK9F,QAAQ,KAAO,OAAQ,MAAO6F,MAAKK,UACjE,IAAGL,KAAKM,OAASN,KAAKM,MAAMC,WAAY,CAEvC,GAAGP,KAAKC,KAAK9F,QAAQ,KAAO,OAAQ,MAAOrE,OAAM0K,UAAUxC,MAAMyC,KAAKT,KAAKM,MAAMC,aACjF,OAAOzK,OAAM0K,UAAUxC,MAAMyC,KAAKT,KAAKM,MAAMC,aAAa,GAAG7B,IAAI,SAASpJ,GAAK,MAAOC,QAAOuK,aAAaxK,KAAOI,KAAK,IAEvH,MAAO,MAGR,QAASgL,YAAWC,IAAKC,MACxB,GAAI7B,GAAI6B,IAAM,IAAGD,IAAIE,MAAM9B,GAAI,MAAO4B,KAAIE,MAAM9B,EAChDA,GAAI6B,KAAKrC,aAAe,IAAGoC,IAAIE,MAAM9B,GAAI,MAAO4B,KAAIE,MAAM9B,EAC1DA,GAAIA,EAAE3E,QAAQ,MAAM,KAAO,IAAGuG,IAAIE,MAAM9B,GAAI,MAAO4B,KAAIE,MAAM9B,EAC7D,MAAM,IAAIzE,OAAM,oBAAsBsG,KAAO,WAG9C,QAASE,YAAWH,IAAKC,KAAMG,MAC9B,IAAIA,KAAM,MAAOhB,SAAQW,WAAWC,IAAKC,MACzC,KAAIA,KAAM,MAAO,KACjB,KAAM,MAAOE,YAAWH,IAAKC,MAAS,MAAMI,GAAK,MAAO,OAGzD,GAAIC,KAAKC,KACT,UAAUC,SAAU,YAAaD,MAAQC,KACzC,UAAWC,WAAY,YAAa,CACnC,SAAW1B,UAAW,aAAeA,OAAO0B,QAAS,CACpD,SAAUhB,UAAW,mBAAsBc,SAAU,YAAaA,MAAQvB,QAAQ,QAClF,UAAUuB,SAAU,YAAaA,MAAQvB,QAAQ,WAAWwB,KAC5DF,KAAMtB,QAAQ,OAGhB,GAAI0B,WAAU,8CACd,IAAIC,UAAS,iDACb,SAASC,aAAYC,KACpB,GAAIC,OAAQD,IAAIhM,MAAM,MACtB,IAAIkM,IAAKC,EAAKF,MAAM,GACpB,IAAGA,MAAMtL,SAAW,EAAG,MAAOuL,IAC7BF,IAAIlF,MAAM+E,gBAAkB3C,IAC5B,SAASpJ,GAAG,GAAImB,GAAEnB,EAAEgH,MAAMgF,SAAWI,GAAEjL,EAAE,GAAG2D,QAAQ,cAAc,KAAO3D,EAAE,GAAG0D,OAAO,EAAE1D,EAAE,GAAGN,OAAO,IACpG,OAAOuL,GAGR,QAASE,OAAMC,KACd,GAAIrL,KACJsL,QAAOC,KAAKF,KAAKG,QAAQ,SAASC,GAAK,GAAGJ,IAAIK,eAAeD,GAAIzL,EAAEqL,IAAII,IAAMA,GAC7E,OAAOzL,GAGR,GAAI2L,YACHC,SAAU,IACVC,SAAU,IACVC,OAAQ,IACRC,OAAQ,IACRC,QAAS,IAEV,IAAIC,WAAYb,MAAMO,UACtB,IAAIO,SAAU,SAASlN,MAAM,GAG7B,SAASmN,aAAYC,MACpB,GAAI5G,GAAI4G,KAAO,EACf,KAAI,GAAInM,KAAK0L,WAAWnG,EAAIA,EAAE5B,QAAQ,GAAIyI,QAAOpM,EAAE,KAAM0L,UAAU1L,GACnE,OAAOuF,GAAE5B,QAAQ,qBAAqB,SAASkB,EAAE1F,GAAI,MAAOkN,MAAKC,SAASnN,EAAE,OAE7E,QAASoN,WAAUJ,MAClB,GAAI5G,GAAI4G,KAAO,EACfF,SAAQV,QAAQ,SAASvL,GAAGuF,EAAEA,EAAE5B,QAAQ,GAAIyI,QAAOpM,EAAE,KAAMgM,UAAUhM,KACrE,OAAOuF,GAIR,QAASiH,cAAaC,MAAO1B,KAC5B,OAAO0B,OACN,IAAK,IAAK,IAAK,GAAG,IAAK,QAAS,IAAK,QAAS,MAAO,MACrD,KAAK,IAAK,IAAK,GAAG,IAAK,OAAQ,IAAK,OAAQ,MAAO,KACnD,SAAS,KAAM,qBAAuBA,MAAQ,QAAQ1B,KAAK,MAI7D,GAAI2B,UAAW,SAASC,MACvB,GAAIvI,QAAUgD,EAAI,EAAGjI,EAAI,EAAGyN,GAAK,EAAGC,GAAK,EAAGC,GAAK,CACjD,OAAO1F,EAAIuF,KAAKjN,OAAQ,CACvBP,EAAIwN,KAAKlD,WAAWrC,IACpB,IAAIjI,EAAI,IAAKiF,IAAIkD,KAAK+E,KAAKlN,QACtB,CACJ0N,GAAKF,KAAKlD,WAAWrC,IACrB,IAAIjI,EAAE,KAAOA,EAAE,IAAKiF,IAAIkD,KAAK+E,MAAMlN,EAAI,KAAO,EAAI0N,GAAK,SAClD,CACJC,GAAKH,KAAKlD,WAAWrC,IACrBhD,KAAIkD,KAAK+E,MAAMlN,EAAI,KAAO,IAAM0N,GAAK,KAAO,EAAIC,GAAK,OAIxD,MAAO1I,KAAInF,KAAK,IAIjB,SAAS8N,UAASzE,EAAE0E,GAAI,MAAO,IAAIZ,QAAO,IAAI9D,EAAE,uCAA4CA,EAAE,KAAK0E,GAAG,IAAI,KAE1G,QAASC,aAAY1D,MACpB,GAAI2D,GAAIpC,YAAYvB,KAEpB,IAAI4D,SAAU5D,KAAK1D,MAAM,GAAIuG,QAAO,OAASc,EAAEE,SAAW,cAAgBF,EAAEE,SAAW,IAAK,SAC5F,IAAGD,QAAQzN,QAAUwN,EAAEG,KAAM,KAAM,4BAA8BF,QAAQzN,OAAS,OAASwN,EAAEG,IAC7F,IAAIC,OACJH,SAAQ5B,QAAQ,SAAS1M,GACxB,GAAIU,GAAIV,EAAE8E,QAAQ,oBAAoB,IAAIkC,MAAM,oBAChDyH,KAAIhG,MAAM/H,EAAEA,EAAE,GAAIE,EAAEF,EAAE,MAEvB,OAAO+N,KAGR,QAASC,OAAM1O,GAAK,aAAcA,KAAM,aAAeA,IAAM,KAC7D,QAAS2O,aAAYC,IAAK7H,IAAK8H,KAAMC,GAAIC,IACxC,GAAGF,OAASzN,UAAWyN,KAAO,IAC9B,KAAIC,GAAIA,GAAK,CACb,KAAIC,IAAMD,KAAO,EAAGC,GAAK,EACzB,IAAIrD,GAAG1F,EAAGgJ,GAAKF,GAAK,EAAIC,GAAK,EAAGE,MAAQ,GAAKD,IAAM,EAAGE,MAAQD,MAAQ,CACtE,IAAIE,OAAQ,EAAGxO,EAAIkO,MAAQ,EAAI,EAAGtG,EAAIsG,KAAQC,GAAK,EAAK,EAAGpI,EAAIkI,IAAI7H,IAAMwB,EAEzEA,IAAK5H,CACL+K,GAAIhF,GAAM,IAAOyI,MAAS,CAAIzI,OAASyI,IAAOA,OAAQH,EACtD,MAAOG,KAAO,EAAGzD,EAAIA,EAAI,IAAMkD,IAAI7H,IAAMwB,GAAIA,GAAK5H,EAAGwO,MAAQ,GAC7DnJ,EAAI0F,GAAM,IAAOyD,MAAS,CAAIzD,OAASyD,IAAOA,OAAQJ,EACtD,MAAOI,KAAO,EAAGnJ,EAAIA,EAAI,IAAM4I,IAAI7H,IAAMwB,GAAIA,GAAK5H,EAAGwO,MAAQ,GAC7D,GAAIzD,IAAMuD,KAAM,MAAOjJ,GAAIoJ,KAAQ1I,GAAK,EAAI,GAAK2I,aAC5C,IAAI3D,IAAM,EAAGA,EAAI,EAAIwD,UACrB,CAAElJ,EAAIA,EAAI3B,KAAKM,IAAI,EAAGoK,GAAKrD,GAAIA,EAAIwD,MACxC,OAAQxI,GAAK,EAAI,GAAKV,EAAI3B,KAAKM,IAAI,EAAG+G,EAAIqD,IAG3C,GAAIO,WACJ,UAAUxE,UAAW,YAAa,CACjCA,OAAOI,UAAUqE,QAAS,WAAa,MAAOC,MAAKC,SAAS,OAC5DH,YAAa,SAASI,MAAQ,MAAO5E,QAAO6E,OAAOD,KAAK,SAClD,CACNJ,WAAa,SAASI,MACrB,GAAI1P,KACJ,KAAI,GAAIuI,GAAI,EAAGA,GAAKmH,KAAK,GAAG7O,SAAU0H,EAAG,CAAEvI,EAAIA,EAAE2P,OAAOD,KAAK,GAAGnH,IAChE,MAAOvI,IAIT,GAAI4P,aAAc,SAASC,EAAG9I,KAAO,MAAO8I,GAAEC,UAAYD,EAAEC,UAAU/I,KAAO8I,EAAE9I,KAC/E,IAAIgJ,gBAAiB,SAASF,EAAG9I,KAAO,MAAO8I,GAAEG,aAAeH,EAAEG,aAAajJ,KAAO8I,EAAE9I,IAAI,IAAI,GAAG,GAAG8I,EAAE9I,KACxG,IAAIkJ,eAAgB,SAASJ,EAAG9I,KAAO,GAAItB,GAAIsK,eAAeF,EAAE9I,IAAM,MAAKtB,EAAI,OAAS,MAAOA,EAAG,QAAQ,MAASA,EAAI,IAAM,EAC7H,IAAIyK,gBAAiB,SAASL,EAAG9I,KAAO,MAAO8I,GAAEM,aAAeN,EAAEM,aAAapJ,KAAO8I,EAAE9I,IAAI,IAAI,GAAG,IAAI8I,EAAE9I,IAAI,IAAI,GAAG,IAAI8I,EAAE9I,IAAI,IAAI,GAAG,GAAG8I,EAAE9I,KAC1I,IAAIqJ,eAAgB,SAASP,EAAG9I,KAAO,GAAG8I,EAAEQ,YAAa,MAAOR,GAAEQ,YAAYtJ,IAAM,IAAItB,GAAIyK,eAAeL,EAAE9I,IAAM,MAAKtB,EAAI,YAAa,MAAOA,EAAG,QAAQ,WAAaA,EAAI,IAAM,EAClL,IAAI6K,gBAAiB,SAAST,EAAG9I,KAAO,MAAO8I,GAAEU,aAAeV,EAAEU,aAAaxJ,KAAO4H,YAAYkB,EAAG9I,KAAK,GAG1G,SAASyJ,WAAUhC,KAAM5N,GACxB,GAAIM,GAAI,GAAIuP,MAASvH,EAAGwH,GAAInI,EAAGoI,GAAK/P,GAAIA,GAAK,GAC7C,IAAG4N,OAAS,UAAW,CAAEA,KAAO,CAAG5N,GAAI,IACvC,OAAO4N,MACN,IAAK,GAAGtN,EAAI0O,YAAYJ,KAAMA,KAAKjP,EAAI,MACvC,KAAK,GAAGW,GAAGN,IAAI,IAAMmP,eAAiBE,eAAeT,KAAMA,KAAKjP,EAAI,MACpE,KAAK,GAAGW,EAAIgP,eAAeV,KAAMA,KAAKjP,EAAI,MAC1C,KAAK,GAAG,GAAGK,IAAM,IAAK,CAAEM,EAAIoP,eAAed,KAAMA,KAAKjP,EAAI,OAE1D,IAAK,IAAIW,EAAIsO,KAAKC,SAAS,MAAOD,KAAKjP,EAAEiP,KAAKjP,EAAEiO,KAAO,MAIvD,KAAK,OAAQA,KAAO,EAAE5N,CAAG+P,KAAMnB,KAAKjP,CACnC,KAAIgI,EAAI,EAAGA,GAAK3H,IAAK2H,EAAG,CACvBkI,GAAGhI,KAAK8B,SAASwF,eAAeP,KAAMmB,MACtCA,MAAK,EACJzP,EAAIuP,GAAGrQ,KAAK,GAAK,MAEpB,KAAK,OAAQoO,KAAO5N,CAAGM,GAAI,EAAIyP,KAAMnB,KAAKjP,CACzC,KAAIgI,EAAI,EAAGA,GAAK3H,IAAK2H,EAAG,CACvBrH,GAAKqJ,SAASqF,YAAYJ,KAAMmB,KAChCA,MAAK,EACJ,MAEJnB,KAAKjP,GAAGiO,IAAM,OAAOtN,GAGtB,QAAS0P,WAAUC,KAAMC,KACxBD,KAAKE,WAAaP,UAAUQ,KAAKH,KACjCA,MAAKtQ,EAAIuQ,KAAO,CAChB,IAAIG,MAAOT,UAAUQ,KAAKH,KAC1B,QAAQI,MAGT,QAASC,WAAUL,KAAMhQ,QAAUgQ,KAAKtQ,GAAKM,OAE7C,GAAIsQ,cAAe,SAASzG,KAAM0G,GAAI/P,MACrC,GAAIgQ,SAASC,QAASzQ,MACtB+P,WAAUlG,KAAMA,KAAKnK,GAAK,EAC1B,OAAMmK,KAAKnK,EAAImK,KAAK7J,OAAQ,CAC3B,GAAI0Q,IAAK7G,KAAKqG,WAAW,EACzB,IAAGQ,GAAK,IAAMA,IAAMA,GAAK,OAAU7G,KAAKqG,WAAW,GAAK,MAAO,EAC/D,IAAIS,GAAIC,WAAWF,KAAOE,WAAW,MACrCJ,SAAU3G,KAAKqG,WAAW,EAC1BlQ,QAASwQ,QAAU,GACnB,KAAIC,QAAU,EAAGA,QAAS,GAAMD,QAAU,MAASC,QAASzQ,UAAYwQ,QAAU3G,KAAKqG,WAAW,IAAM,MAAQ,EAAEO,OAClH,IAAI3Q,GAAI6Q,EAAE/H,EAAEiB,KAAM7J,OAAQQ,KAC1B,IAAG+P,GAAGzQ,EAAG6Q,EAAGD,IAAK,QAKnB,IAAIG,cAAe,SAAShH,KAAM7J,QACjC,OAAS8Q,IAAKjH,KAAKqG,WAAW,GAAIa,KAAMlH,KAAKqG,WAAW,IAIzD,IAAIc,eAAgB,SAASnH,KAAM7J,QAClC,GAAIiR,OAAQpH,KAAKnK,CACjB,IAAIwR,OAAQrH,KAAKqG,WAAW,EAC5B,IAAIiB,UAAWD,MAAQ,EAAGE,QAAUF,MAAQ,CAC5C,IAAIG,KAAMC,mBAAmBzH,KAC7B,IAAI0H,aACJ,IAAIhG,IACHxL,EAAGsR,IACHzK,EAAE,MAAQiG,UAAUwE,KAAO,OAC3B7D,EAAG6D,IAEJ,IAAGF,SAAU,CAEZ,GAAIK,cAAe3H,KAAKqG,WAAW,EACnC,KAAI,GAAIxI,GAAI,EAAGA,GAAK8J,eAAgB9J,EAAG6J,UAAU3J,KAAKiJ,aAAahH,OAEpE,GAAGuH,QAAS,EAGZvH,KAAKnK,EAAIuR,MAAQjR,MACjB,OAAOuL,GAIR,SAASkG,YAAW5H,MACnB,GAAI6H,KAAM7H,KAAKqG,WAAW,EAC1B,IAAIyB,WAAY9H,KAAKqG,WAAW,EAChCyB,YAAa9H,KAAKqG,WAAW,IAAK,EAClC,IAAI0B,SAAU/H,KAAKqG,WAAW,EAC9B,QAASzQ,EAAEiS,IAAKC,UAAWA,WAI5B,GAAIE,gBAAiB,SAAShI,KAAM7J,QAAU,MAAOsR,oBAAmBzH,KAAM7J,QAG9E,IAAI8R,aAAc,SAASjI,KAAM7J,QAAU,MAAO+R,4BAA2BlI,KAAM7J,QAGnF,SAASgS,gBAAenI,MACvB,GAAImF,GAAInF,KAAKhC,MAAMgC,KAAKnK,EAAGmK,KAAKnK,EAAE,EAClC,IAAIuS,OAAQjD,EAAE,GAAK,EAAGkD,KAAOlD,EAAE,GAAK,CACpCnF,MAAKnK,GAAG,CACRsP,GAAE,KAAO,CACT,IAAImD,IAAKD,OAAS,EAAIzC,gBAAgB,EAAE,EAAE,EAAE,EAAET,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,GAAKO,cAAcP,EAAE,IAAI,CAC5F,OAAOiD,OAAQE,GAAG,IAAMA,GAIzB,GAAIC,oBAAqB,SAASvI,MACjC,GAAIwI,OAAQxM,KAAOgF,KACnBwH,MAAKxM,EAAEe,EAAIiD,KAAKqG,WAAW,EAC3BmC,MAAKxH,EAAEjE,EAAIiD,KAAKqG,WAAW,EAC3BmC,MAAKxM,EAAEpG,EAAIoK,KAAKqG,WAAW,EAC3BmC,MAAKxH,EAAEpL,EAAIoK,KAAKqG,WAAW,EAC3B,OAAOmC,MAIR,IAAIN,4BAA6B,SAASlI,MACzC,GAAIyI,eAAgBzI,KAAKqG,WAAW,EACpC,OAAOoC,iBAAkB,GAAKA,gBAAkB,WAAa,GAAKzI,KAAKqG,WAAW,OAAQoC,eAI3F,IAAIhB,oBAAqB,SAASzH,MACjC,GAAIyI,eAAgBzI,KAAKqG,WAAW,EACpC,OAAOoC,iBAAkB,EAAI,GAAKzI,KAAKqG,WAAW,OAAQoC,eAI3D,SAASC,YAAW1I,KAAM7J,QAAU,MAAO6J,MAAKqG,WAAW,WAG3D,GAAIsC,OACH,EAAM,SACNC,EAAM,UACNlR,GAAM,UACNmR,GAAM,QACNC,GAAM,SACNC,GAAM,QACNC,GAAM,OACNC,GAAM,gBACNC,IAAM,QAEP,IAAIC,OAAQvH,MAAM+G,KAGlB,IAAIS,UAAW,WACd,GAAIC,QAAS7F,SAAS,KAAM8F,QAAU9F,SAAS,MAE/C,IAAI+F,WAAY,SAASC,IAAKC,MAAOC,OACpC,GAAIC,UACHH,IAAIlN,MAAM,iBAAiB0F,QAAQ,SAAS1M,GAC5C,GAAImB,GAAI8K,YAAYjM,EACpB,QAAOmB,EAAE,IAGR,IAAK,YAAa,KAGlB,KAAK,UAAW,KAGhB,KAAK,UAEL,IAAK,YAAa,KAGlB,KAAK,WAAY,KAGjB,KAAK,WAEL,IAAK,aAAc,KAGnB,KAAK,SAAUkT,KAAK1J,KAAOxJ,EAAEoF,GAAK,MAGlC,KAAK,MAAO8N,KAAKC,GAAKnT,EAAEoF,GAAK,MAG7B,KAAK,UACJ,IAAIpF,EAAEoF,IAAK,KAEZ,KAAK,YAAa8N,KAAKE,OAAS,CAAG,MACnC,KAAK,YAAa,KAGlB,KAAK,KACJ,IAAIpT,EAAEoF,IAAK,KAEZ,KAAK,OAAQ8N,KAAK5O,EAAI,CAAG,MACzB,KAAK,OAAQ,KAGb,KAAK,KACJ,IAAItE,EAAEoF,IAAK,KAEZ,KAAK,OAAQ8N,KAAKxE,EAAI,CAAG,MACzB,KAAK,OAAQ,KAGb,KAAK,KACJ,IAAI1O,EAAEoF,IAAK,KAEZ,KAAK,OAAQ8N,KAAK9L,EAAI,CAAG,MACzB,KAAK,OAAQ,KAGb,KAAK,SACJ,GAAGpH,EAAEqT,IAAKH,KAAKI,MAAQtT,EAAEqT,IAAI3P,OAAO,EAAE,EACtC,MAGD,KAAK,UAAWwP,KAAKK,OAASvT,EAAEoF,GAAK,MAGrC,KAAK,aAAc,KAGnB,KAAK,UAAW,KAEhB,SACC,GAAGpF,EAAE,GAAG,KAAO,IAAK,KAAM,4BAA8BA,EAAE,KAI7D,IAAIwT,SACJ,IAAGN,KAAKxE,EAAG8E,MAAMlM,KAAK,qBACtB,IAAG4L,KAAK9L,EAAGoM,MAAMlM,KAAK,sBACtB0L,OAAM1L,KAAK,gBAAkBkM,MAAMvU,KAAK,IAAM,KAC9CgU,OAAM3L,KAAK,WAIZ,SAASmM,SAAQnN,GAChB,GAAIoN,WAAY,MAEhB,IAAIjU,GAAI6G,EAAET,MAAM+M,OAChB,KAAIrF,MAAM9N,GAAI,MAAO,EACrBiU,OAAM,GAAKjU,EAAE,EAEb,IAAIsT,KAAMzM,EAAET,MAAMgN,QAClB,IAAGtF,MAAMwF,KAAMD,UAAUC,IAAI,GAAIW,MAAM,GAAIA,MAAM,GACjD,OAAOA,OAAM,GAAGzU,KAAK,IAAMyU,MAAM,GAAG/P,QAAQ,QAAQ,SAAW+P,MAAM,GAAGzU,KAAK,IAE9E,MAAO,UAAS0U,IACf,MAAOA,IAAGhQ,QAAQ,OAAO,IAAI5E,MAAM,SAASkJ,IAAIwL,SAASxU,KAAK,OAKhE,IAAI2U,UAAW,SAAS/U,EAAGqB,MAC1B,GAAI2T,MAAO3T,KAAOA,KAAK4T,SAAW,IAClC,IAAI7I,KACJ,KAAIpM,EAAG,MAAO,KACd,IAAImB,EAEJ,IAAGnB,EAAE,KAAO,IAAK,CAChBoM,EAAExL,EAAIiN,SAASR,YAAYrN,EAAE6E,OAAO7E,EAAE8G,QAAQ,KAAK,GAAG5G,MAAM,SAAS,IACrEkM,GAAE3E,EAAIzH,CACN,IAAGgV,KAAM5I,EAAEiC,EAAIjC,EAAExL,MAGb,IAAIO,EAAInB,EAAEgH,MAAM,OAAS,CAC7BoF,EAAE3E,EAAIzH,CAENoM,GAAExL,EAAIiN,SAASR,YAAYrN,EAAE8E,QAAQ,YAAY,KACjD,IAAGkQ,KAAM5I,EAAEiC,EAAIyF,SAAS9T,GAIzB,MAAOoM,GAIR,IAAI8I,eAAgB,SAASxK,KAAMrJ,MAClC,GAAIqF,KAEJ,IAAIyO,KAAMzK,KAAK1D,MAAM,GAAIuG,QAAO,gCAAiC,KACjE,IAAGmB,MAAMyG,KAAM,CACdzO,EAAIyO,IAAI,GAAGrQ,QAAQ,oBAAoB,IAAI5E,MAAM,sBAAsBkJ,IAAI,SAASpJ,GAAK,MAAO+U,UAAS/U,EAAGqB,QAAU+T,OAAO,SAASpV,GAAK,MAAOA,IAClJmV,KAAMlJ,YAAYkJ,IAAI,GAAKzO,GAAE2O,MAAQF,IAAIG,KAAO5O,GAAE6O,OAASJ,IAAIK,YAEhE,MAAO9O,GAIR,IAAI+O,mBAAoB,SAAS/K,KAAM7J,QACtC,OAAQ6J,KAAKqG,WAAW,GAAIrG,KAAKqG,WAAW,IAI7C,IAAI2E,eAAgB,SAAShL,KAAMrJ,MAClC,GAAIqF,KACJyK,cAAazG,KAAM,SAASnE,IAAKiL,GAChC,OAAOA,EAAEmE,GACR,IAAK,cAAejP,EAAE2O,MAAQ9O,IAAI,EAAIG,GAAE6O,OAAShP,IAAI,EAAI,MACzD,KAAK,aAAcG,EAAE+B,KAAKlC,IAAM,MAChC,KAAK,YAAa,MAAO,KAEzB,KAAK,cAAeqP,KAAO,IAAM,MACjC,KAAK,YAAaA,KAAO,KAAO,MAChC,SAAS,IAAIA,MAAQvU,KAAKwU,IAAK,KAAM,IAAI7Q,OAAM,qBAAuBuM,GAAK,IAAMC,EAAEmE,KAGrF,OAAOjP,GAER,IAAIoP,UAGJ,SAASC,cAAanV,GACrBkV,OAAOE,YACP,KAAI,GAAI7U,KAAKtB,KAAI8J,OAAQmM,OAAOE,UAAU7U,GAAKtB,IAAI8J,OAAOxI,EAC1DP,GAAE,GAAGoG,MAAM,YAAY0F,QAAQ,SAAS1M,GACvC,GAAImB,GAAI8K,YAAYjM,EACpB,QAAOmB,EAAE,IACR,IAAK,WAAY,IAAK,aAAc,IAAK,aAAc,KACvD,KAAK,UAAW,CACf,GAAIsI,GAAE4D,YAAYlM,EAAE8U,YAAa1N,EAAEkF,SAAStM,EAAE+U,SAAS,GACvDJ,QAAOE,UAAUzN,GAAKkB,CAAG,IAAGlB,EAAE,EAAG1I,IAAI+J,KAAKH,EAAElB,GAC3C,KACF,SAAS,KAAM,gBAAkBpH,EAAE,GAAK,iBAM3C,QAASgV,WAAUvV,GAClBkV,OAAOM,SACPxV,GAAE,GAAGoG,MAAM,YAAY0F,QAAQ,SAAS1M,GACvC,GAAImB,GAAI8K,YAAYjM,EACpB,QAAOmB,EAAE,IACR,IAAK,WAAY,IAAK,aAAc,IAAK,aAAc,KAGvD,KAAK,YAAcA,GAAE,EACpB,IAAGA,EAAE+U,SAAU/U,EAAE+U,SAAWzI,SAAStM,EAAE+U,SAAU,GACjDJ,QAAOM,OAAO3N,KAAKtH,EAAI,MACxB,KAAK,QAAS,KAGd,KAAK,aAAc,KAGnB,KAAK,cAAe,IAAK,gBAAiB,IAAK,gBAAiB,KAEhE,KAAK,UAAW,IAAK,YAAa,KAClC,KAAK,OAAQ,KACb,SAAS,KAAM,gBAAkBA,EAAE,GAAK,iBAM3C,QAASkV,eAAc3L,MAEtB,GAAI9J,EAGJ,IAAIA,EAAE8J,KAAK1D,MAAM,iCAAmC+O,aAAanV,EAQjE,IAAIA,EAAE8J,KAAK1D,MAAM,iCAAmCmP,UAAUvV,EAO9D,OAAOkV,QAGR,QAASQ,cAAa5L,KAAM7J,QAC3B,GAAI0V,MAAO7L,KAAKqG,WAAW,EAC3B,IAAIyF,WAAYrE,mBAAmBzH,KAAK7J,OAAO,EAC/C,QAAQ0V,KAAMC,WAIf,QAASC,aAAY/L,KAAM7J,QAC1B,GAAI6V,YAAahM,KAAKqG,WAAW,EACjC,IAAIwF,MAAO7L,KAAKqG,WAAW,EAC3BG,WAAUxG,KAAM7J,OAAO,EACvB,QAAQ8V,KAAKD,WAAYH,KAAKA,MAI/B,QAASK,eAAclM,KAAMrJ,MAC5ByU,OAAOE,YACP,KAAI,GAAI7U,KAAKtB,KAAI8J,OAAQmM,OAAOE,UAAU7U,GAAKtB,IAAI8J,OAAOxI,EAE1D2U,QAAOM,SACP,IAAIS,OAAQ,EACZ,IAAIjB,MAAO,KACXzE,cAAazG,KAAM,SAASnE,IAAKiL,EAAGD,IACnC,OAAOC,EAAEmE,GACR,IAAK,SACJG,OAAOE,UAAUzP,IAAI,IAAMA,IAAI,EAAI1G,KAAI+J,KAAKrD,IAAI,GAAIA,IAAI,GACxD,MACD,KAAK,UAAW,KAChB,KAAK,gBAAiB,KACtB,KAAK,UAAW,KAChB,KAAK,YAAa,KAClB,KAAK,QACJ,GAAGsQ,QAAU,UAAW,CACvBf,OAAOM,OAAO3N,KAAKlC,KAEpB,KACD,KAAK,WAAY,KACjB,KAAK,YAAa,KAClB,KAAK,cAAe,KACpB,KAAK,SAAU,KACf,KAAK,cAAe,KACpB,KAAK,kBAAmB,KACxB,KAAK,qBAAsB,KAC3B,KAAK,mBAAoB,KACzB,KAAK,qBAAsB,KAC3B,KAAK,uBAAwB,KAC7B,KAAK,mBAAoB,KACzB,KAAK,eAAgBsQ,MAAQ,MAAQ,MACrC,KAAK,aAAcA,MAAQ,EAAI,MAC/B,KAAK,gBAAiBA,MAAQ,OAAS,MACvC,KAAK,cAAeA,MAAQ,EAAI,MAChC,KAAK,aAAcA,MAAQ,SAAW,MACtC,KAAK,WAAYA,MAAQ,EAAI,MAC7B,KAAK,gBAAiBA,MAAQ,OAAS,MACvC,KAAK,cAAeA,MAAQ,EAAI,MAChC,KAAK,kBAAmBA,MAAQ,SAAW,MAC3C,KAAK,gBAAiBA,MAAQ,EAAI,MAClC,KAAK,uBAAwBA,MAAQ,cAAgB,MACrD,KAAK,qBAAsBA,MAAQ,EAAI,MACvC,KAAK,kBAAmBA,MAAQ,SAAW,MAC3C,KAAK,gBAAiBA,MAAQ,EAAI,MAClC,KAAK,iBAAkBA,MAAQ,QAAU,MACzC,KAAK,eAAgBA,MAAQ,EAAI,MACjC,KAAK,eAAgBA,MAAQ,MAAQ,MACrC,KAAK,aAAcA,MAAQ,EAAI,MAC/B,KAAK,sBAAuBA,MAAQ,aAAe,MACnD,KAAK,oBAAqBA,MAAQ,EAAI,MACtC,KAAK,uBAAwBA,MAAQ,cAAgB,MACrD,KAAK,qBAAsBA,MAAQ,EAAI,MACvC,KAAK,wBAAyBA,MAAQ,eAAiB,MACvD,KAAK,sBAAuBA,MAAQ,EAAI,MACxC,KAAK,oBAAqBA,MAAQ,WAAa,MAC/C,KAAK,kBAAmBA,MAAQ,EAAI,MACpC,KAAK,cAAejB,KAAO,IAAM,MACjC,KAAK,YAAaA,KAAO,KAAO,MAChC,KAAK,0BAA2B,KAChC,KAAK,uBAAwB,KAC7B,KAAK,qBAAsB,KAC3B,KAAK,kCAAmC,KACxC,KAAK,gCAAiC,KACtC,KAAK,yBAA0B,KAC/B,KAAK,uBAAwB,KAC7B,KAAK,wBAAyB,KAC9B,SAAS,IAAIA,MAAQvU,KAAKwU,IAAK,KAAM,IAAI7Q,OAAM,qBAAuBuM,GAAK,IAAMC,EAAEmE,KAGrF,OAAOG,QAGR,GAAIgB,UACHC,6EAA8E,YAC9EC,uDAAuD,YACvDC,0DAA0D,YAE1DC,4EAA4E,SAC5EC,qCAAqC,SAErCC,yEAAyE,SACzEC,kCAAkC,SAElCC,gFAAiF,OACjFC,yCAA0C,OAE1CC,4EAA6E,aAG7EC,6DAA8D,YAC9DC,wEAAyE,WACzEC,sEAAuE,YACvEC,0DAA0D,SAC1DC,2EAA4E,WAC5EC,IAAO,MAGR,IAAIC,UAAW,8DAEf,SAASC,YAAWtN,MACnB,GAAIuN,IAAMC,QAAQ,IAAM3T,IACxB,IAAI4T,UAAW,cAAe,cAAe,UAAW,aACxD,IAAIC,QAAS,oBAAoB,YAAY,gBAAgB,YAC7D,IAAIC,OAAQ,eAAgB,gBAC5B,IAAIC,SAAU,WAAY,gBAAiB,iBAAkB,cAAe,WAAY,UACxF,IAAIC,SAAU,UAAW,cAAe,aAAc,WAAY,UAAW,QAC7E,IAAIC,cAAe,UAAW,WAC9BH,MAAOA,KAAK1I,OAAO2I,OAAOlP,IAAI,SAASpJ,GAAK,MAAO,MAAQA,IAC3DqY,MAAOA,KAAK1I,OAAO4I,OAAOnP,IAAI,SAASpJ,GAAK,MAAO,MAAQA,IAC3DqY,MAAOA,KAAK1I,OAAO6I,YAAYpP,IAAI,SAASpJ,GAAK,MAAO,WAAaA,IAGrEmY,SAAQzL,QAAQ,SAASjD,GAAGwO,EAAExO,IAAMiB,KAAK1D,MAAMkH,SAASzE,SAAS,IACjE2O,OAAM1L,QAAQ,SAASjD,GAAGwO,EAAExO,IAAMiB,KAAK1D,MAAMkH,SAASzE,SAAS,IAAM,QACrE4O,MAAK3L,QAAQ,SAASjD,GACrB,GAAIgP,KAAM/N,KAAK1D,MAAM,GAAIuG,QAAO,IAAM9D,EAAI,eAAkBA,EAAI,KAChE,IAAGgP,KAAOA,IAAI5X,OAAS,EAAG0D,EAAEkF,GAAKgP,IAAI,IAGtC,IAAGlU,EAAEmU,cAAgBnU,EAAEoU,cAAe,CACrC,GAAIjY,GAAI0N,YAAY7J,EAAEmU,aACtB,IAAIlQ,GAAI,EAAGoQ,KAAO,CAClB,KAAI,GAAIrQ,GAAI,EAAGA,IAAM7H,EAAEG,SAAU0H,EAAG,CACnC,OAAO7H,EAAE6H,GAAG7H,GACX,IAAK,aAAckY,KAAOpQ,CAAGyP,GAAEY,YAAenY,IAAI6H,GAAI,CAAG,MACzD,KAAK,iBAAkBA,CAAG,QAG5B,GAAIuQ,OAAQ1K,YAAY7J,EAAEoU,eAAevP,IAAI,SAASpJ,GAAK,MAAO6N,UAAS7N,EAAEU,IAC7EuX,GAAEc,WAAaD,MAAMpQ,MAAMkQ,KAAMA,KAAOX,EAAEY,YAE3CZ,EAAEe,QAAUzU,EAAE,aACd0T,GAAEgB,eAAiB1U,EAAE,oBACrB0T,GAAEiB,YAAc,GAAIxT,MAAKnB,EAAE,mBAC3B0T,GAAEkB,aAAe,GAAIzT,MAAKnB,EAAE,oBAC5B,OAAO0T,GAIR,QAASmB,kBAAiB1O,MACzB,GAAIuN,MAAQtN,IACZD,MAAK1D,MAAM,mBAAmB0F,QAAQ,SAAS1M,GAC9C,GAAImB,GAAI8K,YAAYjM,EACpB,QAAOmB,EAAE,IACR,IAAK,YAAawJ,KAAOxJ,EAAEwJ,IAAM,MACjC,KAAK,cAAeA,KAAO,IAAM,MACjC,SAAS,GAAI3K,EAAE8G,QAAQ,UAAY,EAAG,CACrC,GAAIuS,MAAOrZ,EAAEE,MAAM,IACnB,IAAImG,MAAOgT,KAAK,GAAGC,UAAU,GAAIhM,KAAO+L,KAAK,EAE7C,QAAOhT,MACN,IAAK,QAAS,IAAK,SAAU,IAAK,OAAQ,IAAK,SAC9C4R,EAAEtN,MAAQ0C,YAAYC,KACtB,MACD,KAAK,OACJ2K,EAAEtN,MAAQgD,aAAaL,KAAM,YAC7B,MACD,KAAK,KAAM,IAAK,KAAM,IAAK,KAAM,IAAK,KAAM,IAAK,MAAO,IAAK,OAC5D2K,EAAEtN,MAAQ8C,SAASH,KAAM,GACzB,MACD,KAAK,KAAM,IAAK,KAAM,IAAK,UAC1B2K,EAAEtN,MAAQ4O,WAAWjM,KACrB,MACD,KAAK,WAAY,IAAK,OACrB2K,EAAEtN,MAAQ2C,IACV,MACD,KAAK,KAAM,IAAK,QACf2K,EAAEtN,MAAQ0C,YAAYC,KACtB,MACD,SACCkM,QAAQC,KAAK,aAAczZ,EAAGqG,KAAMgT,UAKzC,OAAOpB,GAIR,QAASyB,WAAUhP,MAClB,GAAI/J,KACJ,IAAIJ,GAAI,EAAGgI,EAAI,GACdmC,KAAK1D,MAAM,iBAAiB0F,QAAQ,SAAS1M,GAC7C,GAAImB,GAAI8K,YAAYjM,EACpB,QAAOmB,EAAE,IACR,IAAK,QAAS,KAEd,KAAK,aAAc,IAAK,cAAe,IAAK,eAAgB,KAE5D,KAAK,WAAaA,GAAE,EAAI,IAAGA,EAAEoH,EAAGA,EAAIpH,EAAEoH,MAAQpH,GAAEoH,EAAIA,CAAG5H,GAAE8H,KAAKtH,EAAI,SAGpE,OAAOR,GAGR,GAAIgZ,SACJ,SAASC,SAAQlP,MAChB,IAAIA,OAASA,KAAK1D,MAAO,MAAO0D,KAChC,IAAImP,KAAOC,aAAeC,UAAYC,cAAgBC,UAAYnE,UACjEoE,aAAeC,YAAcC,aAAeC,QAASC,YAAcC,MAAO,KAC1E7P,KAAK1D,MAAM,iBAAiB0F,QAAQ,SAAS1M,GAC7C,GAAImB,GAAI8K,YAAYjM,EACpB,QAAOmB,EAAE,IACR,IAAK,QAAS,KACd,KAAK,SAAU0Y,GAAGU,MAAQpZ,EAAEoZ,KAAO,MACnC,KAAK,WAAYZ,MAAMxY,EAAEqZ,WAAarZ,EAAEsZ,WAAa,MACrD,KAAK,YACJ,GAAGtZ,EAAEsZ,cAAe3D,SAAQ+C,GAAG/C,QAAQ3V,EAAEsZ,cAAchS,KAAKtH,EAAEuZ,SAC9D,SAGH,IAAGb,GAAGU,QAAUxC,SAAU,KAAM,IAAI/S,OAAM,sBAAwB6U,GAAGU,MACrEV,IAAGc,UAAYd,GAAGG,WAAWnZ,OAAS,EAAIgZ,GAAGG,WAAW,GAAK,EAC7DH,IAAG1E,IAAM0E,GAAGQ,KAAKxZ,OAAS,EAAIgZ,GAAGQ,KAAK,GAAK,EAC3CR,IAAGlF,MAAQkF,GAAG/D,OAAOjV,OAAS,EAAIgZ,GAAG/D,OAAO,GAAK,SAC1C+D,IAAGG,UACV,OAAOH,IAMR,QAASe,WAAUlQ,KAAMmQ,iBACxB,IAAKnQ,KAAM,MAAOA,KAClB,IAAImQ,gBAAgBC,OAAO,KAAO,IAAK,CACtCD,gBAAkB,IAAIA,gBAEvB,GAAIE,QAEJ,IAAIC,iCAAkC,SAAUC,IAC/C,GAAIC,UAAWL,gBAAgB3a,MAAM,IACrCgb;SAASC,KACT,IAAIC,QAASH,GAAG/a,MAAM,IACtB,IAAImb,YACJ,OAAOD,OAAOva,SAAW,EAAG,CAC3B,GAAIya,OAAQF,OAAOG,OACnB,IAAID,QAAU,KAAM,CACnBJ,SAASC,UACH,IAAIG,QAAU,IAAK,CACzBJ,SAASzS,KAAK6S,QAGhB,MAAOJ,UAAS9a,KAAK,KAGtBsK,MAAK1D,MAAM,YAAY0F,QAAQ,SAAS1M,GACvC,GAAImB,GAAI8K,YAAYjM,EAEpB,IAAImB,EAAE,KAAO,gBAAiB,CAC7B,GAAIqa,OAAUA,KAAIC,KAAOta,EAAEsa,IAAMD,KAAIE,OAASva,EAAEua,MAAQF,KAAIG,GAAKxa,EAAEwa,EAAIH,KAAII,WAAaza,EAAEya,UAC1F,IAAIC,eAAgBb,gCAAgC7Z,EAAEua,OACtDX,MAAKc,eAAiBL,MAIxB,OAAOT,MAKR,QAASe,oBAAmBpR,KAAMrJ,MACjC,GAAGqJ,KAAK1D,MAAM,kBAAmB,QACjC,IAAI+U,WACJ,IAAIC,eACJtR,MAAK1D,MAAM,qCAAqC,GAAG9G,MAAM,aAAawM,QAAQ,SAAS1M,GACtF,GAAGA,IAAM,IAAMA,EAAEic,SAAW,GAAI,MAChCF,SAAQtT,KAAKzI,EAAEgH,MAAM,qBAAqB,KAE3C0D,MAAK1D,MAAM,6CAA6C,GAAG9G,MAAM,cAAcwM,QAAQ,SAAS1M,EAAGkc,OAClG,GAAGlc,IAAM,IAAMA,EAAEic,SAAW,GAAI,MAChC,IAAI9a,GAAI8K,YAAYjM,EAAEgH,MAAM,kBAAkB,GAC9C,IAAImV,UAAYC,OAAQjb,EAAEkb,UAAYN,QAAQ5a,EAAEkb,UAAYN,QAAQ5a,EAAEkb,UAAYjb,UAAWkb,IAAKnb,EAAEmb,IAAKC,KAAMpb,EAAEob,KACjH,IAAIrJ,MAAOsJ,YAAYrb,EAAEmb,IACzB,IAAGjb,KAAKob,WAAapb,KAAKob,WAAavJ,KAAKzL,EAAG,MAC/C,IAAIiV,WAAY1c,EAAEgH,MAAM,8BACxB,KAAK0V,YAAcA,UAAU,GAAI,MACjC,IAAIC,IAAK5H,SAAS2H,UAAU,GAC5BP,SAAQ1U,EAAIkV,GAAGlV,CACf0U,SAAQvb,EAAI+b,GAAG/b,CACf,IAAGS,KAAK4T,SAAUkH,QAAQ9N,EAAIsO,GAAGtO,CACjC2N,aAAYvT,KAAK0T,UAElB,OAAOH,aAGR,QAASY,gBAAevR,IAAKwR,YAAa9C,OAAQ+C,UAAWzb,MAC5D,IAAI,GAAIkH,GAAI,EAAGA,GAAKsU,YAAYhc,SAAU0H,EAAG,CAC5C,GAAIwU,eAAcF,YAAYtU,EAC9B,IAAI+R,UAASwB,mBAAmBtQ,WAAWH,IAAK0R,cAAcjY,QAAQ,MAAM,IAAK,MAAOzD,KACxF,KAAIiZ,WAAaA,SAASzZ,OAAQ,QAElC,IAAImc,YAAaxQ,OAAOC,KAAKsN,OAC7B,KAAI,GAAIvR,GAAI,EAAGA,GAAKwU,WAAWnc,SAAU2H,EAAG,CAC3C,GAAIyU,WAAYD,WAAWxU,EAC3B,IAAIuS,MAAO+B,UAAUG,UACrB,IAAGlC,KAAM,CACR,GAAIS,KAAMT,KAAKgC,cACf,IAAGvB,IAAK0B,wBAAwBD,UAAWlD,OAAOkD,WAAY3C,aAMlE,QAAS4C,yBAAwBD,UAAWE,MAAO7C,UAClDA,SAAS5N,QAAQ,SAASyP,SACzB,GAAIjJ,MAAOiK,MAAMhB,QAAQG,IACzB,KAAKpJ,KAAM,CACVA,OACAiK,OAAMhB,QAAQG,KAAOpJ,IACrB,IAAIkK,OAAQC,aAAaF,MAAM,QAC/B,IAAIG,UAAWd,YAAYL,QAAQG,IACnC,IAAGc,MAAM1W,EAAEe,EAAI6V,SAAS7V,EAAG2V,MAAM1W,EAAEe,EAAI6V,SAAS7V,CAChD,IAAG2V,MAAM1R,EAAEjE,EAAI6V,SAAS7V,EAAG2V,MAAM1R,EAAEjE,EAAI6V,SAAS7V,CAChD,IAAG2V,MAAM1W,EAAEpG,EAAIgd,SAAShd,EAAG8c,MAAM1W,EAAEpG,EAAIgd,SAAShd,CAChD,IAAG8c,MAAM1R,EAAEpL,EAAIgd,SAAShd,EAAG8c,MAAM1R,EAAEpL,EAAIgd,SAAShd,CAChD,IAAIid,SAAUC,aAAaJ,MAC3B,IAAIG,UAAYJ,MAAM,QAASA,MAAM,QAAUI,QAGhD,IAAKrK,KAAK5S,EAAG4S,KAAK5S,IAClB,IAAIY,IAAKuc,EAAGtB,QAAQC,OAAQxb,EAAGub,QAAQvb,EAAG6G,EAAG0U,QAAQ1U,EACrD,IAAG0U,QAAQ9N,EAAGnN,EAAEmN,EAAI8N,QAAQ9N,CAC5B6E,MAAK5S,EAAEmI,KAAKvH,KAKd,GAAIwc,yBAA0B,SAAShT,KAAM7J,QAC5C,GAAI8c,KAAMjT,KAAKqG,WAAW,EAC1B,OAAOG,WAAUxG,KAAM7J,OAAO,GAE/B,IAAIwZ,QACJ,IAAIuD,YAGJ,SAASC,cAAanT,KAAMrJ,MAC3B,IAAIqJ,KAAM,MAAOA,KAEjB,IAAIhE,KAGJ,IAAI4V,KAAM5R,KAAK1D,MAAM,iCACrB,IAAGsV,KAAOA,IAAIzb,QAAU,GAAKyb,IAAI,GAAGxV,QAAQ,QAAU,EAAGJ,EAAE,QAAU4V,IAAI,EAGzE,IAAIwB,cACJ,IAAGpT,KAAK1D,MAAM,kBAAmB,CAChC,GAAI+W,QAASrT,KAAK1D,MAAM,uCACxB8W,YAAaC,OAAO3U,IAAI,SAASgU,OAChC,MAAOC,cAAa,sCAAsCW,KAAKZ,OAAO,MAIxE,GAAIa,WAAYvX,GAAIe,EAAE,IAASnH,EAAE,KAAUoL,GAAIjE,EAAE,EAAGnH,EAAE,GACtD,IAAIiE,IAAK,IAAI,IACb,IAAI2Z,MAAO,CAGX,KAAIxT,KAAK1D,MAAM,mBACf0D,KAAK1D,MAAM,yCAAyC,GAAG9G,MAAM,UAAUwM,QAAQ,SAAS1M,GACvF,GAAGA,IAAM,IAAMA,EAAEic,SAAW,GAAI,MAGhC,IAAIkC,KAAMlS,YAAYjM,EAAEgH,MAAM,cAAc,GAC5C,IAAG3F,KAAKob,WAAapb,KAAKob,WAAa0B,IAAI1W,EAAG,MAC9C,IAAGwW,SAASvX,EAAEe,EAAI0W,IAAI1W,EAAI,EAAGwW,SAASvX,EAAEe,EAAI0W,IAAI1W,EAAI,CACpD,IAAGwW,SAASvS,EAAEjE,EAAI0W,IAAI1W,EAAI,EAAGwW,SAASvS,EAAEjE,EAAI0W,IAAI1W,EAAI,CAEpD,IAAI2W,OAAQpe,EAAE6E,OAAO7E,EAAE8G,QAAQ,KAAK,GAAG5G,MAAM,MAC7Cke,OAAM1R,QAAQ,SAASpM,EAAGyG,KAAO,GAAGzG,IAAM,IAAMA,EAAE2b,SAAW,GAAI,MAChE,IAAIoC,MAAO/d,EAAE0G,MAAM,qBACnB1G,GAAI,MAAQA,CACZ,IAAG+d,MAAQA,KAAKxd,QAAU,EAAGkG,IAAMyV,YAAY6B,KAAK,IAAI/d,CACxD,IAAI4S,MAAOjH,aAAa3L,EAAE0G,MAAM,cAAc1G,IAAI,UAAY4S,MAAK,EACnE,IAAIvS,GAAIL,EAAEuE,OAAOvE,EAAEwG,QAAQ,KAAK,EAChC,IAAImR,KACJ1T,GAAEmI,QAAQ,SAASjD,GAAG,GAAIzJ,GAAEW,EAAEqG,MAAMkH,SAASzE,GAAI,IAAGzJ,EAAEiY,EAAExO,GAAG4D,YAAYrN,EAAE,KAGzE,IAAGkT,KAAKtS,IAAMQ,WAAa6W,EAAEvX,IAAMU,UAAW,CAC7C,IAAIC,KAAKid,WAAY,MACrBrG,GAAErX,EAAI,KAAOqX,GAAEvX,EAAIU,cAEf6W,GAAErX,EAAKsS,KAAKtS,EAAIsS,KAAKtS,EAAI,GAC9B,IAAGqd,SAASvX,EAAEpG,EAAIyG,IAAKkX,SAASvX,EAAEpG,EAAIyG,GACtC,IAAGkX,SAASvS,EAAEpL,EAAIyG,IAAKkX,SAASvS,EAAEpL,EAAIyG,GAEtC,QAAOkR,EAAErX,GACR,IAAK,IAAKqX,EAAEvX,EAAI6Y,WAAWtB,EAAEvX,EAAI,MACjC,KAAK,IAAK,CACTwd,KAAOzQ,SAASwK,EAAEvX,EAAG,GACrBuX,GAAEvX,EAAI2Z,KAAK6D,MAAMtd,CACjBqX,GAAExQ,EAAI4S,KAAK6D,MAAMzW,CACjB,IAAGpG,KAAK4T,SAAUgD,EAAE5J,EAAIgM,KAAK6D,MAAM7P,EAClC,KACF,KAAK,MAAO,GAAG4J,EAAEvX,EAAGuX,EAAEvX,EAAImN,SAASoK,EAAEvX,EAAI,MACzC,KAAK,YACJ,GAAI6d,IAAK5d,EAAEqG,MAAM,iBACjBuX,IAAKA,GAAKxJ,SAASwJ,GAAG,KAAO3d,EAAE,GAAG6G,EAAE,GACpCwQ,GAAErX,EAAI,KAAOqX,GAAEvX,EAAI6d,GAAG3d,CACtB,MACD,KAAK,IAAK,SAAUqX,GAAEvX,IAAM,UAAWuX,EAAEvX,EAAIiN,aAAasK,EAAEvX,EAAI,MAChE,KAAK,IACJ,GAAI8d,OAAQ9Y,KAAK+Y,MAAMxG,EAAEvX,EACzBuX,GAAEvX,GAAK8d,MAAQ,GAAI9Y,MAAKA,KAAKgZ,IAAI,KAAM,GAAI,OAAS,GAAK,GAAK,GAAK,IACnEzG,GAAErX,EAAI,GACN,MAED,KAAK,IAAKqX,EAAE0G,IAAM9K,MAAMoE,EAAEvX,EAAI,OAI/B,GAAIke,OAAQ,CACZ,IAAG1L,KAAKxM,GAAKoP,OAAOM,OAAQ,CAC3B,GAAIyI,IAAK/I,OAAOM,OAAOlD,KAAKxM,EAC5B,IAAGmY,IAAMA,GAAG3I,SAAU0I,MAAQC,GAAG3I,SAElC,IACC+B,EAAE/O,EAAIrJ,IAAI2J,OAAOoV,MAAM3G,EAAEvX,EAAEkd,SAC3B,IAAGvc,KAAKyd,OAAQ7G,EAAE7L,EAAIvM,IAAI8J,OAAOiV,OAChC,MAAMlT,GAAK,GAAGrK,KAAKwU,IAAK,KAAMnK,GAChChF,EAAEwM,KAAKzL,GAAKwQ,KAGd,KAAIvR,EAAE,QAASA,EAAE,QAAU8W,aAAaS,SACxC,IAAG5c,KAAKob,UAAW,CAClB,GAAIsC,QAAS1B,aAAa3W,EAAE,QAC5B,IAAGrF,KAAKob,WAAasC,OAAOrT,EAAEjE,EAAG,CAChCsX,OAAOrT,EAAEjE,EAAIpG,KAAKob,UAAY,CAC9B,IAAGsC,OAAOrT,EAAEjE,EAAIwW,SAASvS,EAAEjE,EAAGsX,OAAOrT,EAAEjE,EAAIwW,SAASvS,EAAEjE,CACtD,IAAGsX,OAAOrT,EAAEjE,EAAIsX,OAAOrY,EAAEe,EAAGsX,OAAOrY,EAAEe,EAAIsX,OAAOrT,EAAEjE,CAClD,IAAGsX,OAAOrT,EAAEpL,EAAI2d,SAASvS,EAAEpL,EAAGye,OAAOrT,EAAEpL,EAAI2d,SAASvS,EAAEpL,CACtD,IAAGye,OAAOrT,EAAEpL,EAAIye,OAAOrY,EAAEpG,EAAGye,OAAOrY,EAAEpG,EAAIye,OAAOrT,EAAEpL,CAClDoG,GAAE,YAAcA,EAAE,OAClBA,GAAE,QAAU8W,aAAauB,SAG3B,GAAGjB,WAAWjd,OAAS,EAAG6F,EAAE,WAAaoX,UACzC,OAAOpX,GAKR,GAAIsY,iBAAkB,SAAStU,KAAM7J,QACpC,GAAIuL,KACJA,GAAE3E,EAAIiD,KAAKqG,WAAW,EACtBrG,MAAKnK,GAAKM,OAAO,CACjB,OAAOuL,GAIR,IAAI6S,gBAAiBhM,kBAGrB,IAAIiM,iBAAkB,SAASxU,KAAM7J,QACpC,GAAIuL,KAEJ1B,MAAKnK,GAAK,EACV6L,GAAEzB,KAAO+H,eAAehI,KAAM7J,OAAS,GACvC,OAAOuL,GAIR,IAAI+S,oBAAqBjO,SAGzB,IAAIkO,mBAAoB,SAAS1U,KAAM7J,QACtC,GAAIqS,MAAOZ,WAAW5H,KACtB,IAAI2U,OAAQ3U,KAAKqG,WAAW,EAC5B,QAAQmC,KAAMmM,MAAO,KAItB,IAAIC,oBAAqB,SAAS5U,KAAM7J,QACvC,GAAIqS,MAAOZ,WAAW5H,KACtB,IAAI2U,OAAQ3U,KAAKqG,WAAW,EAC5B,QAAQmC,KAAMmM,MAAO,KAItB,IAAIE,mBAAoB,SAAS7U,KAAM7J,QACtC,GAAIqS,MAAOZ,WAAW5H,KACtB,IAAI8U,MAAO9U,KAAKqG,WAAW,EAC3B,QAAQmC,KAAMsM,KAAM,KAIrB,IAAIC,mBAAoB,SAAS/U,KAAM7J,QACtC,GAAIqS,MAAOZ,WAAW5H,KACtB,IAAIkD,OAAQwF,WAAW1I,KACvB,QAAQwI,KAAMtF,MAAO,KAItB,IAAI8R,iBAAkB,SAAShV,KAAM7J,QACpC,GAAIqS,MAAOZ,WAAW5H,KACtB,IAAIkD,OAAQiF,eAAenI,KAC3B,QAAQwI,KAAMtF,MAAO,KAItB,IAAI+R,iBAAkB,SAASjV,KAAM7J,QACpC,GAAIqS,MAAOZ,WAAW5H,KACtB,IAAIkD,OAAQuE,mBAAmBzH,KAC/B,QAAQwI,KAAMtF,MAAO,OAItB,IAAIgS,mBAAoB,SAASlV,KAAM7J,OAAQQ,MAC9C,GAAI6R,MAAOZ,WAAW5H,KACtB,IAAIkD,OAAQlD,KAAKqG,WAAW,EAC5B,IAAI7P,IAAKgS,KAAMtF,MAAO,IACtB,IAAGvM,KAAKwe,YAAa,CACpB,GAAIC,SAAUpC,wBAAwBhT,KAAM7J,OAAO,EACnDK,GAAE,GAAK,OAEHwJ,MAAKnK,GAAKM,OAAO,CACtB,OAAOK,GAIR,IAAI6e,oBAAqB,SAASrV,KAAM7J,OAAQQ,MAC/C,GAAI6R,MAAOZ,WAAW5H,KACtB,IAAIkD,OAAQlD,KAAKqG,WAAW,EAC5B,IAAI7P,IAAKgS,KAAMtF,MAAO,IACtB,IAAGvM,KAAKwe,YAAa,CACpB,GAAIC,SAAUpC,wBAAwBhT,KAAM7J,OAAO,EACnDK,GAAE,GAAK,OAEHwJ,MAAKnK,GAAKM,OAAO,CACtB,OAAOK,GAIR,IAAI8e,kBAAmB,SAAStV,KAAM7J,OAAQQ,MAC7C,GAAI6R,MAAOZ,WAAW5H,KACtB,IAAIkD,OAAQwF,WAAW1I,KACvB,IAAIxJ,IAAKgS,KAAMtF,MAAO,IACtB,IAAGvM,KAAKwe,YAAa,CACpB,GAAIC,SAAUpC,wBAAwBhT,KAAM7J,OAAS,GACrDK,GAAE,GAAK,OAEHwJ,MAAKnK,GAAKM,OAAO,EACtB,OAAOK,GAIR,IAAI+e,qBAAsB,SAASvV,KAAM7J,OAAQQ,MAChD,GAAIyQ,OAAQpH,KAAKnK,CACjB,IAAI2S,MAAOZ,WAAW5H,KACtB,IAAIkD,OAAQuE,mBAAmBzH,KAC/B,IAAIxJ,IAAKgS,KAAMtF,MAAO,MACtB,IAAGvM,KAAKwe,YAAa,CACpB,GAAIC,SAAUpC,wBAAwBhT,KAAMoH,MAAQjR,OAAS6J,KAAKnK,EAClEW,GAAE,GAAK,OAEHwJ,MAAKnK,EAAIuR,MAAQjR,MACtB,OAAOK,GAIR,IAAIgf,oBAAqBjN,kBAGzB,IAAIkN,cAAe,SAASzV,KAAMrJ,MACjC,IAAIqJ,KAAM,MAAOA,KACjB,IAAIhE,KAEJ,IAAI4V,IACJ,IAAI2B,WAAYvX,GAAIe,EAAE,IAASnH,EAAE,KAAUoL,GAAIjE,EAAE,EAAGnH,EAAE,GAEtD,IAAIsV,MAAO,MAAOwK,IAAM,KACxB,IAAIjC,KAAKlG,EAAG4G,EACZ,IAAIf,cACJ3M,cAAazG,KAAM,SAASnE,IAAKiL,GAChC,GAAG4O,IAAK,MACR,QAAO5O,EAAEmE,GACR,IAAK,WAAY2G,IAAM/V,GAAK,MAC5B,KAAK,YACJ4X,IAAM5X,GACN,IAAGlF,KAAKob,WAAapb,KAAKob,WAAa0B,IAAI1W,EAAG2Y,IAAI,IAClD,MAED,KAAK,cACL,IAAK,eACL,IAAK,aACL,IAAK,gBACL,IAAK,cACL,IAAK,eACL,IAAK,cACL,IAAK,cACL,IAAK,YACL,IAAK,YACJnI,GAAKrX,EAAE2F,IAAI,GACX,QAAOA,IAAI,IACV,IAAK,IAAK0R,EAAEvX,EAAI6F,IAAI,EAAI,MACxB,KAAK,IAAK0R,EAAEvX,EAAI2Z,KAAK9T,IAAI,IAAI3F,CAAGqX,GAAExQ,EAAI4S,KAAK9T,IAAI,IAAIkB,CAAG,MACtD,KAAK,IAAKwQ,EAAEvX,EAAI6F,IAAI,GAAK,KAAO,KAAO,MACvC,KAAK,IAAK0R,EAAE0G,IAAMpY,IAAI,EAAI0R,GAAEvX,EAAI2S,KAAK4E,EAAE0G,IAAM,MAC7C,KAAK,MAAO1G,EAAEvX,EAAImN,SAAStH,IAAI,GAAK,OAErC,GAAGlF,KAAKwe,aAAetZ,IAAI1F,OAAS,EAAGoX,EAAExO,EAAIlD,IAAI,EACjD,IAAIsY,GAAK/I,OAAOM,OAAO7P,IAAI,GAAGiM,WAAa,IAC1CyF,EAAE/O,EAAIrJ,IAAI2J,OAAOqV,GAAGtI,KAAK0B,EAAEvX,EAAEkd,SAC7B,IAAGvc,KAAKyd,OAAQ7G,EAAE7L,EAAIvM,IAAI8J,OAAOkV,GAAGtI,MACnC,MAAM7K,GAAK,GAAGrK,KAAKwU,IAAK,KAAMnK,GAChChF,EAAE2Z,aAAa/f,EAAEiG,IAAI,GAAGjG,EAAEmH,EAAE0W,IAAI1W,KAAOwQ,CACvC,IAAGgG,SAASvX,EAAEe,EAAI0W,IAAI1W,EAAGwW,SAASvX,EAAEe,EAAI0W,IAAI1W,CAC5C,IAAGwW,SAASvX,EAAEpG,EAAIiG,IAAI,GAAGjG,EAAG2d,SAASvX,EAAEpG,EAAIiG,IAAI,GAAGjG,CAClD,IAAG2d,SAASvS,EAAEjE,EAAI0W,IAAI1W,EAAGwW,SAASvS,EAAEjE,EAAI0W,IAAI1W,CAC5C,IAAGwW,SAASvS,EAAEpL,EAAIiG,IAAI,GAAGjG,EAAG2d,SAASvS,EAAEpL,EAAIiG,IAAI,GAAGjG,CAClD,MAED,KAAK,eAAgB,KAGrB,KAAK,qBAAsB,KAC3B,KAAK,mBAAoB,KACzB,KAAK,eAAgBwd,WAAWrV,KAAKlC,IAAM,MAE3C,KAAK,aAAc,KACnB,KAAK,aAAc,KACnB,KAAK,gBAAiB,KACtB,KAAK,YAAa,KAClB,KAAK,mBAAoB,KACzB,KAAK,kBAAmB,KACxB,KAAK,iBAAkB,KACvB,KAAK,UAAW,KAChB,KAAK,SAAU,KACf,KAAK,eAAgB,KACrB,KAAK,gBAAiB,KACtB,KAAK,aAAc,KACnB,KAAK,eAAgB,KACrB,KAAK,WAAY,KACjB,KAAK,mBAAoB,KACzB,KAAK,eAAgB,KACrB,KAAK,mBAAoB,KACzB,KAAK,aAAc,KACnB,KAAK,iBAAkB,KACvB,KAAK,oBAAqB,KAC1B,KAAK,kBAAmB,KACxB,KAAK,qBAAsB,KAC3B,KAAK,kBAAmB,KACxB,KAAK,aAAc,KACnB,KAAK,eAAgB,KACrB,KAAK,cAAeqP,KAAO,IAAM,MACjC,KAAK,YAAaA,KAAO,KAAO,MAChC,KAAK,cAAe,KACpB,KAAK,WAAY,KACjB,KAAK,aAAc,KACnB,KAAK,mBAAoB,KACzB,KAAK,kBAAmB,KACxB,KAAK,uBAAwB,KAC7B,KAAK,qBAAsB,KAC3B,KAAK,SAAU,KACf,KAAK,gBAAiB,KACtB,KAAK,cAAe,KACpB,KAAK,iBAAkB,KACvB,KAAK,eAAgB,KACrB,KAAK,sBAAuB,KAC5B,KAAK,qBAAsB,KAC3B,KAAK,mBAAoB,KACzB,KAAK,oBAAqB,KAC1B,KAAK,WAAY,KACjB,KAAK,qBAAsB,KAC3B,KAAK,eAAgB,KACrB,KAAK,mBAAoB,KACzB,KAAK,oBAAqB,KAC1B,KAAK,cAAe,KACpB,KAAK,kBAAmB,KACxB,KAAK,oBAAqB,KAC1B,KAAK,mBAAoB,KACzB,KAAK,iBAAkB,KACvB,KAAK,kBAAmB,KACxB,KAAK,gCAAiC,KACtC,KAAK,8BAA+B,KACpC,KAAK,iBAAkB,KACvB,KAAK,eAAgB,KACrB,KAAK,gBAAiB,KACtB,KAAK,UAAW,KAChB,KAAK,cAAe,KACpB,KAAK,qBAAsB,KAG3B,KAAK,0BAA2B,KAChC,KAAK,aAAc,KACnB,KAAK,wBAAyB,KAG9B,KAAK,kBAAmB,KACxB,KAAK,gBAAiB,KACtB,KAAK,uBAAwB,KAC7B,KAAK,kBAAmB,KACxB,KAAK,YAAa,KAClB,KAAK,gBAAiB,KACtB,KAAK,qBAAsB,KAC3B,KAAK,mBAAoB,KACzB,KAAK,iBAAkB,KACvB,KAAK,wBAAyB,KAC9B,KAAK,kBAAmB,KACxB,KAAK,sBAAuB,KAE5B,SAAS,IAAIA,MAAQvU,KAAKwU,IAAK,KAAM,IAAI7Q,OAAM,qBAAuBwM,EAAEmE,KAEvEtU,KACHqF,GAAE,QAAU8W,aAAalB,IACzB,IAAGjb,KAAKob,UAAW,CAClB,GAAIsC,QAAS1B,aAAa3W,EAAE,QAC5B,IAAGrF,KAAKob,WAAasC,OAAOrT,EAAEjE,EAAG,CAChCsX,OAAOrT,EAAEjE,EAAIpG,KAAKob,UAAY,CAC9B,IAAGsC,OAAOrT,EAAEjE,EAAIwW,SAASvS,EAAEjE,EAAGsX,OAAOrT,EAAEjE,EAAIwW,SAASvS,EAAEjE,CACtD,IAAGsX,OAAOrT,EAAEjE,EAAIsX,OAAOrY,EAAEe,EAAGsX,OAAOrY,EAAEe,EAAIsX,OAAOrT,EAAEjE,CAClD,IAAGsX,OAAOrT,EAAEpL,EAAI2d,SAASvS,EAAEpL,EAAGye,OAAOrT,EAAEpL,EAAI2d,SAASvS,EAAEpL,CACtD,IAAGye,OAAOrT,EAAEpL,EAAIye,OAAOrY,EAAEpG,EAAGye,OAAOrY,EAAEpG,EAAIye,OAAOrT,EAAEpL,CAClDoG,GAAE,YAAcA,EAAE,OAClBA,GAAE,QAAU8W,aAAauB,SAG3B,GAAGjB,WAAWjd,OAAS,EAAG6F,EAAE,WAAaoX,UACzC,OAAOpX,GAIR,IAAI4Z,aACHC,kBAAmB,IACnBC,qBAAsB,IACtBC,WAAY,IACZC,mBAAoB,IACpBC,SAAU,GACVrf,SAAU,IACVsf,kBAAmB,IAEnBC,cAAe,IACfC,mBAAoB,IACpBC,kBAAmB,IACnBC,aAAc,IACdC,sBAAuB,MACvBC,uBAAwB,IACxBC,2BAA4B,IAC5BC,kBAAmB,IACnBC,YAAa,MACbC,qBAAsB,IAKvB,IAAIC,YACHC,UAAW,IACXC,uBAAwB,IACxBC,WAAY,IACZC,UAAW,IACXC,qBAAsB,IACtBC,cAAe,IACfC,mBAAoB,IACpBC,SAAU,MACVC,WAAY,UAKb,IAAIC,WACHpL,MAAO,UAIR,IAAIqL,YACHC,cAAe,OACfC,SAAU,OACVC,WAAY,OACZC,eAAgB,OAChBC,eAAgB,QAChBC,cAAe,OACfC,QAAS,QACTC,aAAc,MACdC,aAAc,QACdC,QAAS,KAIV,IAAIC,kBACHC,WAAY,QACZC,gBAAiB,QACjBC,oBAAqB,OACrBC,qBAAsB,OACtBC,UAAW,QACXvB,UAAW,QACXwB,SAAU,QACVC,aAAc,QACdC,aAAc,gBACdC,eAAgB,OAChB1B,qBAAsB,OACtBP,YAAa,MACbQ,cAAe,OACf0B,cAAe,OACfzB,mBAAoB,OACpBC,SAAU,MACVyB,QAAS,IACTC,QAAS,IAEV,IAAIC,WACH,4DACA,sDACA,mDAID,SAASC,cAAajZ,MACrB,GAAIkZ,KAAOC,cAAeC,WAAYC,UAAWC,UAAWC,UAAW1J,MAAO,GAC9E,IAAI3E,MAAO,KACXlL,MAAK1D,MAAM,YAAY0F,QAAQ,SAAS1M,GACvC,GAAImB,GAAI8K,YAAYjM,EACpB,QAAOmB,EAAE,IACR,IAAK,QAAS,KAGd,KAAK,YAAayiB,GAAGrJ,MAAQpZ,EAAEoZ,KAAO,MACtC,KAAK,cAAe,KAGpB,KAAK,qBAAuBpZ,GAAE,EAAIyiB,IAAGC,WAAa1iB,CAAG,MACrD,KAAK,iBAAkB,KAGvB,KAAK,eAAgB,IAAK,iBAAkB,KAG5C,KAAK,oBAAsBA,GAAE,EAAIyiB,IAAGE,QAAU3iB,CAAG,MACjD,KAAK,sBAAwBA,GAAE,EAAIyiB,IAAGE,QAAU3iB,CAAG,MAGnD,KAAK,wBAAyB,KAG9B,KAAK,cAAe,IAAK,eAAgB,KAEzC,KAAK,sBAAwBA,GAAE,EAAIyiB,IAAGG,OAAOtb,KAAKtH,EAAI,MAGtD,KAAK,WAAY,IAAK,YAAa,KAEnC,KAAK,eAAiBA,GAAE,EAAIA,GAAEwJ,KAAOkD,SAAS1M,EAAEwJ,KAAOiZ,IAAGI,OAAOvb,KAAKtH,EAAI,MAG1E,KAAK,kBAAmB,IAAK,oBAAqB,KAElD,KAAK,iBAAkB,KAGvB,KAAK,sBAAuB,IAAK,wBAAyB,KAE1D,KAAK,qBAAsB,KAG3B,KAAK,kBAAmB,KACxB,KAAK,iBAAkByU,KAAK,IAAM,MAClC,KAAK,kBAAmBA,KAAK,KAAO,MAEpC,KAAK,eAAgB,IAAK,iBAAkB,IAAK,iBAAkB,KAGnE,KAAK,gBAAkBzU,GAAE,EAAIyiB,IAAGK,OAAS9iB,CAAG,MAC5C,KAAK,kBAAoBA,GAAE,EAAIyiB,IAAGK,OAAS9iB,CAAG,MAG9C,KAAK,WAAY,KAGjB,KAAK,wBAAyB,IAAK,yBAA0B,IAAK,uBAAwB,KAE1F,KAAK,sBAAuB,IAAK,wBAAyB,KAG1D,KAAK,gBAAiB,IAAK,iBAAkB,IAAK,eAAgB,KAElE,KAAK,cAAe,KAGpB,KAAK,cAAe,IAAK,gBAAiB,KAG1C,KAAK,iBAAkB,IAAK,kBAAmB,IAAK,mBAAoB,KAExE,KAAK,gBAAiB,KAGtB,KAAK,iBAAkB,IAAK,mBAAoB,KAGhD,KAAK,kBAAmB,IAAK,oBAAqB,KAGlD,KAAK,sBAAuB,IAAK,qBAAsB,IAAK,uBAAwB,KAEpF,KAAK,oBAAqB,KAG1B,KAAK,WAAY,IAAK,YAAa,IAAK,YAAa,KAErD,KAAK,OAAQyU,KAAK,IAAM,MACxB,KAAK,SAAUA,KAAK,KAAO,MAG3B,KAAK,aAAc,KACnB,KAAK,uBAAwBA,KAAK,IAAM,MACxC,KAAK,yBAA0BA,KAAK,KAAO,SAG7C,IAAG8N,SAAS5c,QAAQ8c,GAAGrJ,UAAY,EAAG,KAAM,IAAIvV,OAAM,sBAAwB4e,GAAGrJ,MAEjF,IAAInO,EAEJ,KAAIA,IAAKkU,YAAY,SAAUsD,IAAGE,QAAQ1X,KAAO,YAAawX,GAAGE,QAAQ1X,GAAKkU,WAAWlU,EACzF,KAAIA,IAAK8V,WAAW,SAAU0B,IAAGK,OAAO7X,KAAO,YAAawX,GAAGK,OAAO7X,GAAK8V,UAAU9V,EAErFwX,IAAGG,OAAOrX,QAAQ,SAASxD,GAAG,IAAI,GAAIkD,KAAKmV,WAAW,SAAUrY,GAAEkD,KAAO,YAAalD,EAAEkD,GAAGmV,UAAUnV,IACrGwX,IAAGI,OAAOtX,QAAQ,SAASxD,GAAG,IAAI,GAAIkD,KAAK6V,UAAU,SAAU/Y,GAAEkD,KAAO,YAAalD,EAAEkD,GAAG6V,SAAS7V,IAEnGwR,UAAStc,SAAWqM,aAAaiW,GAAGE,QAAQxiB,SAAU,WAEtD,OAAOsiB,IAIR,GAAIM,mBAAoB,SAASxZ,KAAM7J,QACtC,GAAIuL,KACJA,GAAE+X,QAAUzZ,KAAKqG,WAAW,EAC5B3E,GAAEgY,OAAS1Z,KAAKqG,WAAW,EAC3B3E,GAAEiY,SAAW1R,YAAYjI,KAAK7J,OAAO,EACrCuL,GAAEzB,KAAOwH,mBAAmBzH,KAC5B,OAAO0B,GAIR,IAAIkY,cAAe,SAAS5Z,KAAMrJ,MACjC,GAAIuiB,KAAOC,cAAeC,WAAYC,UAAWC,UAAWC,UAAW1J,MAAO,GAC9E,IAAI3E,MAAO,MAAOxJ,CAElB+E,cAAazG,KAAM,SAASnE,IAAKiL,GAChC,OAAOA,EAAEmE,GACR,IAAK,cAAeiO,GAAGI,OAAOvb,KAAKlC,IAAM,MAEzC,KAAK,eAAgB,KACrB,KAAK,iBAAkB,KACvB,KAAK,YAAa,KAClB,KAAK,aAAc,KACnB,KAAK,eAAgB,KACrB,KAAK,WAAY,KAEjB,KAAK,oBAAqB,KAC1B,KAAK,oBAAqB,KAC1B,KAAK,cAAe,KACpB,KAAK,kBAAmB,KACxB,KAAK,oBAAqB,KAC1B,KAAK,kBAAmB,KACxB,KAAK,kBAAmB,KACxB,KAAK,gBAAiB,KACtB,KAAK,oBAAqB,KAC1B,KAAK,aAAc,KACnB,KAAK,gBAAiB,KACtB,KAAK,iBAAkB,KACvB,KAAK,kBAAmB,KACxB,KAAK,UAAW,KAChB,KAAK,cAAe,KACpB,KAAK,kBAAmB,KACxB,KAAK,wBAAyB,KAC9B,KAAK,uBAAwB,KAC7B,KAAK,qBAAsB,KAC3B,KAAK,sBAAuB,KAC5B,KAAK,YAAa,KAClB,KAAK,iBAAkB,KAKvB,KAAK,cAAeqP,KAAO,IAAM,MACjC,KAAK,YAAaA,KAAO,KAAO,MAChC,KAAK,aAAc,KACnB,SAAS,IAAIA,KAAM,KAAM,IAAI5Q,OAAM,qBAAuBwM,EAAEmE,KAK9D,KAAIvJ,IAAKkU,YAAY,SAAUsD,IAAGE,QAAQ1X,KAAO,YAAawX,GAAGE,QAAQ1X,GAAKkU,WAAWlU,EACzF,KAAIA,IAAK8V,WAAW,SAAU0B,IAAGK,OAAO7X,KAAO,YAAawX,GAAGK,OAAO7X,GAAK8V,UAAU9V,EAErFwX,IAAGG,OAAOrX,QAAQ,SAASxD,GAAG,IAAI,GAAIkD,KAAKmV,WAAW,SAAUrY,GAAEkD,KAAO,YAAalD,EAAEkD,GAAGmV,UAAUnV,IACrGwX,IAAGI,OAAOtX,QAAQ,SAASxD,GAAG,IAAI,GAAIkD,KAAK6V,UAAU,SAAU/Y,GAAEkD,KAAO,YAAalD,EAAEkD,GAAG6V,SAAS7V,IAEnGwR,UAAStc,SAAWqM,aAAaiW,GAAGE,QAAQxiB,SAAU,WAEtD,OAAOsiB,IAER,SAASW,UAAS7Z,KAAMC,KAAMtJ,MAC7B,MAAOsJ,MAAK9F,QAAQ,KAAK,OAASyf,aAAa5Z,KAAMrJ,MAAQsiB,aAAajZ,KAAMrJ,MAGjF,QAASmjB,UAAS9Z,KAAMC,KAAMtJ,MAC7B,MAAOsJ,MAAK9F,QAAQ,KAAK,OAASsb,aAAazV,KAAMrJ,MAAQwc,aAAanT,KAAMrJ,MAGjF,QAASojB,WAAU/Z,KAAMC,KAAMtJ,MAC9B,MAAOsJ,MAAK9F,QAAQ,KAAK,OAAS+R,cAAclM,KAAMrJ,MAAQgV,cAAc3L,KAAMrJ,MAGnF,QAASqjB,WAAUha,KAAMC,KAAMtJ,MAC9B,MAAOsJ,MAAK9F,QAAQ,KAAK,OAAS6Q,cAAchL,KAAMrJ,MAAQ6T,cAAcxK,KAAMrJ,MAGnF,GAAIoQ,aACH,GAAUkE,EAAE,YAAalM,EAAEuV,iBAC3Btd,GAAUiU,EAAE,eAAgBlM,EAAE0V,oBAC9Bxd,GAAUgU,EAAE,YAAalM,EAAEiW,iBAC3B9d,GAAU+T,EAAE,eAAgBlM,EAAE6V,oBAC9Bzd,GAAU8T,EAAE,cAAelM,EAAE2V,mBAC7BuF,GAAUhP,EAAE,cAAelM,EAAEgW,mBAC7BmF,GAAUjP,EAAE,YAAalM,EAAEkW,iBAC3BrM,GAAUqC,EAAE,cAAelM,EAAE8V,mBAC7BsF,GAAUlP,EAAE,gBAAiBlM,EAAEwW,qBAC/Bne,GAAU6T,EAAE,aAAclM,EAAEuW,kBAC5Bje,IAAU4T,EAAE,cAAelM,EAAEmW,mBAC7B5d,IAAU2T,EAAE,eAAgBlM,EAAEsW,oBAC9Bvd,IAAUmT,EAAE,aAAclM,EAAEoI,eAC5BpP,IAAUkT,EAAE,iBAAkBlM,EAAEyH,WAChCxO,IAAUiT,EAAE,gBAAiBlM,EAAEyH,WAC/BvO,IAAUgT,EAAE,iBAAkBlM,EAAEyH,WAChCqC,IAAUoC,EAAE,eAAgBlM,EAAEyH,WAC9B4T,IAAUnP,EAAE,gBAAiBlM,EAAEyH,WAC/B6T,IAAUpP,EAAE,kBAAmBlM,EAAEyH,WACjC8T,IAAUrP,EAAE,eAAgBlM,EAAEyH,WAC9B+T,IAAUtP,EAAE,kBAAmBlM,EAAEyH,WACjCgU,IAAUvP,EAAE,iBAAkBlM,EAAEyH,WAChCsC,IAAUmC,EAAE,kBAAmBlM,EAAEyH,WACjCiU,IAAUxP,EAAE,gBAAiBlM,EAAEyH,WAC/BkU,IAAUzP,EAAE,iBAAkBlM,EAAEyH,WAChCmU,IAAU1P,EAAE,mBAAoBlM,EAAEyH,WAClCoU,IAAU3P,EAAE,eAAgBlM,EAAEyH,WAC9BqU,IAAU5P,EAAE,iBAAkBlM,EAAEyH,WAChCsU,IAAU7P,EAAE,cAAelM,EAAEyH,WAC7BuC,IAAUkC,EAAE,YAAalM,EAAEyH,WAC3BtO,IAAU+S,EAAE,aAAclM,EAAEyH,WAC5BrO,IAAU8S,EAAE,WAAYlM,EAAEyH,WAC1BpO,IAAU6S,EAAE,UAAWlM,EAAEyH,WACzBnO,IAAU4S,EAAE,mBAAoBlM,EAAEyH,WAClCwC,IAAUiC,EAAE,gBAAiBlM,EAAEyH,WAC/ByC,IAAUgC,EAAE,UAAWlM,EAAEyH,WACzBuU,IAAU9P,EAAE,SAAUlM,EAAE6M,cACxBtT,IAAU2S,EAAE,UAAWlM,EAAEyH,WACzBjO,IAAU0S,EAAE,YAAalM,EAAEyH,WAC3BhO,IAAUyS,EAAE,QAASlM,EAAEgN,aACvBtT,IAAUwS,EAAE,WAAYlM,EAAEyH,WAC1B9N,IAAUuS,EAAE,cAAelM,EAAEyH,WAC7BwU,IAAU/P,EAAE,eAAgBlM,EAAEyH,WAC9ByU,IAAUhQ,EAAE,SAAUlM,EAAEyH,WACxB0U,IAAUjQ,EAAE,cAAelM,EAAEyH,WAC7B2U,IAAUlQ,EAAE,YAAalM,EAAEyH,WAC3B4U,IAAUnQ,EAAE,cAAelM,EAAEyH,WAC7B6U,IAAUpQ,EAAE,YAAalM,EAAEyH,WAC3B7N,IAAUsS,EAAE,mBAAoBlM,EAAEyH,WAClC8U,IAAUrQ,EAAE,iBAAkBlM,EAAEyH,WAChC+U,IAAUtQ,EAAE,gBAAiBlM,EAAEyH,WAC/BgV,IAAUvQ,EAAE,SAAUlM,EAAEyH,WACxBiV,IAAUxQ,EAAE,aAAclM,EAAEyH,WAC5BkV,IAAUzQ,EAAE,iBAAkBlM,EAAEyH,WAChCmV,IAAU1Q,EAAE,UAAWlM,EAAEyH,WACzBoV,IAAU3Q,EAAE,gBAAiBlM,EAAEyH,WAC/BqV,IAAU5Q,EAAE,gBAAiBlM,EAAEyH,WAC/BsV,IAAU7Q,EAAE,iBAAkBlM,EAAEyH,WAChCuV,IAAU9Q,EAAE,gBAAiBlM,EAAEyH,WAC/BwV,IAAU/Q,EAAE,iBAAkBlM,EAAEyH,WAChCyV,IAAUhR,EAAE,gBAAiBlM,EAAEyH,WAC/B0V,KAAUjR,EAAE,iBAAkBlM,EAAEyH,WAChC2V,KAAUlR,EAAE,gBAAiBlM,EAAEyH,WAC/B4V,KAAUnR,EAAE,cAAelM,EAAEyH,WAC7B6V,KAAUpR,EAAE,eAAgBlM,EAAEyH,WAC9B8V,KAAUrR,EAAE,aAAclM,EAAEyH,WAC5B+V,KAAUtR,EAAE,kBAAmBlM,EAAEyH,WACjCgW,KAAUvR,EAAE,gBAAiBlM,EAAEyH,WAC/BiW,KAAUxR,EAAE,oBAAqBlM,EAAEyH,WACnCkW,KAAUzR,EAAE,kBAAmBlM,EAAEyH,WACjCmW,KAAU1R,EAAE,iBAAkBlM,EAAEyH,WAChCoW,KAAU3R,EAAE,eAAgBlM,EAAEyH,WAC9BqW,KAAU5R,EAAE,kBAAmBlM,EAAEyH,WACjCsW,KAAU7R,EAAE,gBAAiBlM,EAAEyH,WAC/BuW,KAAU9R,EAAE,iBAAkBlM,EAAEyH,WAChCwW,KAAU/R,EAAE,eAAgBlM,EAAEyH,WAC9ByW,KAAUhS,EAAE,oBAAqBlM,EAAEyH,WACnC0W,KAAUjS,EAAE,kBAAmBlM,EAAEyH,WACjC2W,KAAUlS,EAAE,oBAAqBlM,EAAEyH,WACnC4W,KAAUnS,EAAE,kBAAmBlM,EAAEyH,WACjC6W,KAAUpS,EAAE,YAAalM,EAAEyV,iBAC3B8I,KAAUrS,EAAE,WAAYlM,EAAEwV,gBAC1BgJ,KAAUtS,EAAE,UAAWlM,EAAEyH,WACzBgX,KAAUvS,EAAE,SAAUlM,EAAEyH,WACxBiX,KAAUxS,EAAE,YAAalM,EAAEyH,WAC3BkX,KAAUzS,EAAE,eAAgBlM,EAAEyH,WAC9BmX,KAAU1S,EAAE,iBAAkBlM,EAAEyH,WAChCoX,KAAU3S,EAAE,cAAelM,EAAEya,mBAC7BqE,KAAU5S,EAAE,cAAelM,EAAEyH,WAC7BsX,KAAU7S,EAAE,cAAelM,EAAEyH,WAC7BuX,KAAU9S,EAAE,cAAelM,EAAEgM,mBAC7BiT,KAAU/S,EAAE,YAAalM,EAAEyH,WAC3ByX,KAAUhT,EAAE,kBAAmBlM,EAAEyH,WACjC0X,KAAUjT,EAAE,gBAAiBlM,EAAEyH,WAC/B2X,KAAUlT,EAAE,uBAAwBlM,EAAEyH,WACtC4X,KAAUnT,EAAE,qBAAsBlM,EAAEyH,WACpC6X,KAAUpT,EAAE,kBAAmBlM,EAAEyH,WACjC8X,KAAUrT,EAAE,gBAAiBlM,EAAEyH,WAC/B+X,KAAUtT,EAAE,YAAalM,EAAEyH,WAC3BgY,KAAUvT,EAAE,iBAAkBlM,EAAEyH,WAChCiY,KAAUxT,EAAE,gBAAiBlM,EAAEyH,WAC/BkY,KAAUzT,EAAE,iBAAkBlM,EAAEyH,WAChCmY,KAAU1T,EAAE,mBAAoBlM,EAAEyH,WAClCoY,KAAU3T,EAAE,wBAAyBlM,EAAEyH,WACvCqY,KAAU5T,EAAE,sBAAuBlM,EAAEyH,WACrCsY,KAAU7T,EAAE,kBAAmBlM,EAAEyH,WACjCuY,KAAU9T,EAAE,0BAA2BlM,EAAEyH,WACzCwY,KAAU/T,EAAE,eAAgBlM,EAAEyW,oBAC9ByJ,KAAUhU,EAAE,qBAAsBlM,EAAEyH,WACpC0Y,KAAUjU,EAAE,mBAAoBlM,EAAEyH,WAClC2Y,KAAUlU,EAAE,wBAAyBlM,EAAEyH,WACvC4Y,KAAUnU,EAAE,sBAAuBlM,EAAEyH,WACrC6Y,KAAUpU,EAAE,oBAAqBlM,EAAEyH,WACnC8Y,KAAUrU,EAAE,kBAAmBlM,EAAEyH,WACjC+Y,KAAUtU,EAAE,mBAAoBlM,EAAEyH,WAClCgZ,KAAUvU,EAAE,iBAAkBlM,EAAEyH,WAChCiZ,KAAUxU,EAAE,oBAAqBlM,EAAEyH,WACnCkZ,KAAUzU,EAAE,kBAAmBlM,EAAEyH,WACjCmZ,KAAU1U,EAAE,oBAAqBlM,EAAEyH,WACnCoZ,KAAU3U,EAAE,kBAAmBlM,EAAEyH,WACjCqZ,KAAU5U,EAAE,mBAAoBlM,EAAEyH,WAClCsZ,KAAU7U,EAAE,iBAAkBlM,EAAEyH,WAChCuZ,KAAU9U,EAAE,kBAAmBlM,EAAEyH,WACjCwZ,KAAU/U,EAAE,gBAAiBlM,EAAEyH,WAC/ByZ,KAAUhV,EAAE,4BAA6BlM,EAAEyH,WAC3C0Z,KAAUjV,EAAE,0BAA2BlM,EAAEyH,WACzC2Z,KAAUlV,EAAE,yBAA0BlM,EAAEyH,WACxC4Z,KAAUnV,EAAE,uBAAwBlM,EAAEyH,WACtC6Z,KAAUpV,EAAE,uBAAwBlM,EAAEyH,WACtC8Z,KAAUrV,EAAE,qBAAsBlM,EAAEyH,WACpC+Z,KAAUtV,EAAE,0BAA2BlM,EAAEyH,WACzCga,KAAUvV,EAAE,wBAAyBlM,EAAEyH,WACvCia,KAAUxV,EAAE,wBAAyBlM,EAAEyH,WACvCka,KAAUzV,EAAE,sBAAuBlM,EAAEyH,WACrCma,KAAU1V,EAAE,oBAAqBlM,EAAEyH,WACnCoa,KAAU3V,EAAE,kBAAmBlM,EAAEyH,WACjCqa,KAAU5V,EAAE,sBAAuBlM,EAAEyH,WACrCsa,KAAU7V,EAAE,oBAAqBlM,EAAEyH,WACnCua,KAAU9V,EAAE,qBAAsBlM,EAAEyH,WACpCwa,KAAU/V,EAAE,mBAAoBlM,EAAEyH,WAClCya,KAAUhW,EAAE,qBAAsBlM,EAAEyH,WACpC0a,KAAUjW,EAAE,mBAAoBlM,EAAEyH,WAClC2a,KAAUlW,EAAE,oBAAqBlM,EAAEyH,WACnC4a,KAAUnW,EAAE,kBAAmBlM,EAAEyH,WACjC6a,KAAUpW,EAAE,qBAAsBlM,EAAEyH,WACpC8a,KAAUrW,EAAE,mBAAoBlM,EAAEyH,WAClC+a,KAAUtW,EAAE,oBAAqBlM,EAAEyH,WACnCgb,KAAUvW,EAAE,kBAAmBlM,EAAEyH,WACjCib,KAAUxW,EAAE,mBAAoBlM,EAAEyH,WAClCkb,KAAUzW,EAAE,iBAAkBlM,EAAEyH,WAChCmb,KAAU1W,EAAE,oBAAqBlM,EAAEyH,WACnCob,KAAU3W,EAAE,kBAAmBlM,EAAEyH,WACjCqb,KAAU5W,EAAE,qBAAsBlM,EAAEyH,WACpCsb,KAAU7W,EAAE,mBAAoBlM,EAAEyH,WAClCub,KAAU9W,EAAE,qBAAsBlM,EAAEyH,WACpCwb,KAAU/W,EAAE,mBAAoBlM,EAAEyH,WAClCyb,KAAUhX,EAAE,wBAAyBlM,EAAEyH,WACvC0b,KAAUjX,EAAE,sBAAuBlM,EAAEyH,WACrC2b,KAAUlX,EAAE,0BAA2BlM,EAAEyH,WACzC4b,KAAUnX,EAAE,wBAAyBlM,EAAEyH,WACvC6b,KAAUpX,EAAE,yBAA0BlM,EAAEyH,WACxC8b,KAAUrX,EAAE,uBAAwBlM,EAAEyH,WACtC+b,KAAUtX,EAAE,0BAA2BlM,EAAEyH,WACzCgc,KAAUvX,EAAE,wBAAyBlM,EAAEyH,WACvCic,KAAUxX,EAAE,yBAA0BlM,EAAEyH,WACxCkc,KAAUzX,EAAE,uBAAwBlM,EAAEyH,WACtCmc,KAAU1X,EAAE,yBAA0BlM,EAAEyH,WACxCoc,KAAU3X,EAAE,uBAAwBlM,EAAEyH,WACtCqc,KAAU5X,EAAE,uBAAwBlM,EAAEyH,WACtCsc,KAAU7X,EAAE,qBAAsBlM,EAAEyH,WACpCuc,KAAU9X,EAAE,sBAAuBlM,EAAEyH,WACrCwc,KAAU/X,EAAE,oBAAqBlM,EAAEyH,WACnCyc,KAAUhY,EAAE,qBAAsBlM,EAAEyH,WACpC0c,KAAUjY,EAAE,mBAAoBlM,EAAEyH,WAClC2c,KAAUlY,EAAE,uBAAwBlM,EAAEyH,WACtC4c,KAAUnY,EAAE,qBAAsBlM,EAAEyH,WACpC6c,KAAUpY,EAAE,sBAAuBlM,EAAEyH,WACrC8c,KAAUrY,EAAE,oBAAqBlM,EAAEyH,WACnC+c,KAAUtY,EAAE,gBAAiBlM,EAAEyH,WAC/Bgd,KAAUvY,EAAE,cAAelM,EAAEyH,WAC7Bid,KAAUxY,EAAE,oBAAqBlM,EAAEyH,WACnCkd,KAAUzY,EAAE,kBAAmBlM,EAAEyH,WACjCmd,KAAU1Y,EAAE,mBAAoBlM,EAAEyH,WAClCod,KAAU3Y,EAAE,iBAAkBlM,EAAEyH,WAChCqd,KAAU5Y,EAAE,iBAAkBlM,EAAEyH,WAChCsd,KAAU7Y,EAAE,eAAgBlM,EAAEyH,WAC9B0C,KAAU+B,EAAE,gBAAiBlM,EAAEyH,WAC/Bud,KAAU9Y,EAAE,cAAelM,EAAEyH,WAC7Bwd,KAAU/Y,EAAE,kBAAmBlM,EAAEyH,WACjCyd,KAAUhZ,EAAE,gBAAiBlM,EAAEyH,WAC/B0d,KAAUjZ,EAAE,iBAAkBlM,EAAEyH,WAChC2d,KAAUlZ,EAAE,eAAgBlM,EAAEyH,WAC9B4d,KAAUnZ,EAAE,qBAAsBlM,EAAEyH,WACpC6d,KAAUpZ,EAAE,mBAAoBlM,EAAEyH,WAClC8d,KAAUrZ,EAAE,qBAAsBlM,EAAEyH,WACpC+d,KAAUtZ,EAAE,mBAAoBlM,EAAEyH,WAClCge,KAAUvZ,EAAE,mBAAoBlM,EAAEyH,WAClCie,KAAUxZ,EAAE,iBAAkBlM,EAAEyH,WAChCke,KAAUzZ,EAAE,kBAAmBlM,EAAEyH,WACjCme,KAAU1Z,EAAE,gBAAiBlM,EAAEyH,WAC/Boe,KAAU3Z,EAAE,kBAAmBlM,EAAEyH,WACjCqe,KAAU5Z,EAAE,gBAAiBlM,EAAEyH,WAC/Bse,KAAU7Z,EAAE,iBAAkBlM,EAAEyH,WAChCue,KAAU9Z,EAAE,eAAgBlM,EAAEyH,WAC9Bwe,KAAU/Z,EAAE,eAAgBlM,EAAEyH,WAC9Bye,KAAUha,EAAE,aAAclM,EAAEyH,WAC5B0e,KAAUja,EAAE,cAAelM,EAAEyH,WAC7B2e,KAAUla,EAAE,YAAalM,EAAEyH,WAC3B4e,KAAUna,EAAE,kBAAmBlM,EAAEyH,WACjC6e,KAAUpa,EAAE,qBAAsBlM,EAAEyH,WACpC8e,KAAUra,EAAE,mBAAoBlM,EAAEyH,WAClC+e,KAAUta,EAAE,iBAAkBlM,EAAEyH,WAChCgf,KAAUva,EAAE,aAAclM,EAAEyH,WAC5Bif,KAAUxa,EAAE,eAAgBlM,EAAEyH,WAC9Bkf,KAAUza,EAAE,gBAAiBlM,EAAEyH,WAC/Bmf,KAAU1a,EAAE,cAAelM,EAAEyH,WAC7Bof,KAAU3a,EAAE,eAAgBlM,EAAEyH,WAC9Bqf,KAAU5a,EAAE,aAAclM,EAAEyH,WAC5Bsf,KAAU7a,EAAE,gBAAiBlM,EAAEyH,WAC/Buf,KAAU9a,EAAE,cAAelM,EAAEyH,WAC7Bwf,KAAU/a,EAAE,eAAgBlM,EAAEyH,WAC9Byf,KAAUhb,EAAE,aAAclM,EAAEyH,WAC5B0f,KAAUjb,EAAE,gBAAiBlM,EAAEyH,WAC/B2f,KAAUlb,EAAE,cAAelM,EAAEyH,WAC7B4f,KAAUnb,EAAE,eAAgBlM,EAAEyH,WAC9B6f,KAAUpb,EAAE,aAAclM,EAAEyH,WAC5B8f,KAAUrb,EAAE,gBAAiBlM,EAAEyH,WAC/B+f,KAAUtb,EAAE,cAAelM,EAAEyH,WAC7BggB,KAAUvb,EAAE,eAAgBlM,EAAEyH,WAC9BigB,KAAUxb,EAAE,aAAclM,EAAEyH,WAC5BkgB,KAAUzb,EAAE,kBAAmBlM,EAAEyH,WACjCmgB,KAAU1b,EAAE,gBAAiBlM,EAAEyH,WAC/BogB,KAAU3b,EAAE,mBAAoBlM,EAAEyH,WAClCqgB,KAAU5b,EAAE,iBAAkBlM,EAAEyH,WAChCsgB,KAAU7b,EAAE,mBAAoBlM,EAAEyH,WAClCugB,KAAU9b,EAAE,iBAAkBlM,EAAEyH,WAChCwgB,KAAU/b,EAAE,oBAAqBlM,EAAEyH,WACnCygB,KAAUhc,EAAE,kBAAmBlM,EAAEyH,WACjC0gB,KAAUjc,EAAE,mBAAoBlM,EAAEyH,WAClC2gB,KAAUlc,EAAE,iBAAkBlM,EAAEyH,WAChC4gB,KAAUnc,EAAE,mBAAoBlM,EAAEyH,WAClC6gB,KAAUpc,EAAE,iBAAkBlM,EAAEyH,WAChC8gB,KAAUrc,EAAE,oBAAqBlM,EAAEyH,WACnC+gB,KAAUtc,EAAE,kBAAmBlM,EAAEyH,WACjCghB,KAAUvc,EAAE,mBAAoBlM,EAAEyH,WAClCihB,KAAUxc,EAAE,qBAAsBlM,EAAEyH,WACpCkhB,KAAUzc,EAAE,eAAgBlM,EAAEyH,WAC9BmhB,KAAU1c,EAAE,gBAAiBlM,EAAEyH,WAC/BohB,KAAU3c,EAAE,cAAelM,EAAEyH,WAC7BqhB,KAAU5c,EAAE,eAAgBlM,EAAEyH,WAC9BshB,KAAU7c,EAAE,aAAclM,EAAEyH,WAC5BuhB,KAAU9c,EAAE,mBAAoBlM,EAAEyH,WAClCwhB,KAAU/c,EAAE,iBAAkBlM,EAAEyH,WAChCyhB,KAAUhd,EAAE,oBAAqBlM,EAAEyH,WACnC0hB,KAAUjd,EAAE,kBAAmBlM,EAAEyH,WACjC2hB,KAAUld,EAAE,kBAAmBlM,EAAEyH,WACjC4hB,KAAUnd,EAAE,gBAAiBlM,EAAEyH,WAC/B6hB,KAAUpd,EAAE,iBAAkBlM,EAAEyH,WAChC8hB,KAAUrd,EAAE,eAAgBlM,EAAEyH,WAC9B+hB,KAAUtd,EAAE,oBAAqBlM,EAAEyH,WACnCgiB,KAAUvd,EAAE,kBAAmBlM,EAAEyH,WACjCiiB,KAAUxd,EAAE,mBAAoBlM,EAAEyH,WAClCkiB,KAAUzd,EAAE,iBAAkBlM,EAAEyH,WAChCmiB,KAAU1d,EAAE,mBAAoBlM,EAAEyH,WAClCoiB,KAAU3d,EAAE,iBAAkBlM,EAAEyH,WAChCqiB,KAAU5d,EAAE,oBAAqBlM,EAAEyH,WACnCsiB,KAAU7d,EAAE,aAAclM,EAAEyH,WAC5BuiB,KAAU9d,EAAE,kBAAmBlM,EAAEyH,WACjCwiB,KAAU/d,EAAE,gBAAiBlM,EAAEyH,WAC/ByiB,KAAUhe,EAAE,cAAelM,EAAEyH,WAC7B0iB,KAAUje,EAAE,gBAAiBlM,EAAEyH,WAC/B2iB,KAAUle,EAAE,cAAelM,EAAEyH,WAC7B4iB,KAAUne,EAAE,sBAAuBlM,EAAEyH,WACrC6iB,KAAUpe,EAAE,oBAAqBlM,EAAEyH,WACnC8iB,KAAUre,EAAE,eAAgBlM,EAAEyH,WAC9B+iB,KAAUte,EAAE,aAAclM,EAAEyH,WAC5BgjB,KAAUve,EAAE,mBAAoBlM,EAAEyH,WAClCijB,KAAUxe,EAAE,iBAAkBlM,EAAEyH,WAChCkjB,KAAUze,EAAE,kBAAmBlM,EAAEyH,WACjCmjB,KAAU1e,EAAE,gBAAiBlM,EAAEyH,WAC/BojB,KAAU3e,EAAE,qBAAsBlM,EAAEyH,WACpCqjB,KAAU5e,EAAE,mBAAoBlM,EAAEyH,WAClCsjB,KAAU7e,EAAE,gBAAiBlM,EAAEyH,WAC/BujB,KAAU9e,EAAE,gBAAiBlM,EAAEyH,WAC/BwjB,KAAU/e,EAAE,oBAAqBlM,EAAEyH,WACnCyjB,KAAUhf,EAAE,kBAAmBlM,EAAEyH,WACjC0jB,KAAUjf,EAAE,gBAAiBlM,EAAEyH,WAC/B2jB,KAAUlf,EAAE,aAAclM,EAAEyH,WAC5B4jB,KAAUnf,EAAE,aAAclM,EAAEyH,WAC5B6jB,KAAUpf,EAAE,aAAclM,EAAEyH,WAC5B8jB,KAAUrf,EAAE,kBAAmBlM,EAAEyH,WACjC+jB,KAAUtf,EAAE,qBAAsBlM,EAAEyH,WACpCgkB,KAAUvf,EAAE,iBAAkBlM,EAAEyH,WAChCikB,KAAUxf,EAAE,sBAAuBlM,EAAEyH,WACrCkkB,KAAUzf,EAAE,oBAAqBlM,EAAEyH,WACnCmkB,KAAU1f,EAAE,kBAAmBlM,EAAEyH,WACjCokB,KAAU3f,EAAE,qBAAsBlM,EAAEyH,WACpCqkB,KAAU5f,EAAE,oBAAqBlM,EAAEyH,WACnCskB,KAAU7f,EAAE,oBAAqBlM,EAAEyH,WACnCukB,KAAU9f,EAAE,qBAAsBlM,EAAEyH,WACpCwkB,KAAU/f,EAAE,sBAAuBlM,EAAEyH,WACrCykB,KAAUhgB,EAAE,gBAAiBlM,EAAEyH,WAC/B0kB,KAAUjgB,EAAE,cAAelM,EAAEyH,WAC7B2kB,KAAUlgB,EAAE,iBAAkBlM,EAAEyH,WAChC4kB,KAAUngB,EAAE,eAAgBlM,EAAEyH,WAC9B6kB,KAAUpgB,EAAE,qBAAsBlM,EAAEyH,WACpC8kB,KAAUrgB,EAAE,mBAAoBlM,EAAEyH,WAClC+kB,KAAUtgB,EAAE,iBAAkBlM,EAAEyH,WAChCglB,KAAUvgB,EAAE,eAAgBlM,EAAEyH,WAC9BilB,KAAUxgB,EAAE,gBAAiBlM,EAAEyH,WAC/BklB,KAAUzgB,EAAE,cAAelM,EAAEyH,WAC7BmlB,KAAU1gB,EAAE,kBAAmBlM,EAAEyH,WACjColB,KAAU3gB,EAAE,gBAAiBlM,EAAEyH,WAC/BqlB,KAAU5gB,EAAE,wBAAyBlM,EAAEyH,WACvCslB,KAAU7gB,EAAE,sBAAuBlM,EAAEyH,WACrCulB,KAAU9gB,EAAE,uBAAwBlM,EAAEyH,WACtCwlB,KAAU/gB,EAAE,qBAAsBlM,EAAEyH,WACpCylB,KAAUhhB,EAAE,iBAAkBlM,EAAEyH,WAChC0lB,KAAUjhB,EAAE,eAAgBlM,EAAEyH,WAC9B2lB,KAAUlhB,EAAE,mBAAoBlM,EAAEyH,WAClC4lB,KAAUnhB,EAAE,iBAAkBlM,EAAEyH,WAChC6lB,KAAUphB,EAAE,gBAAiBlM,EAAEyH,WAC/B8lB,KAAUrhB,EAAE,cAAelM,EAAEyH,WAC7B+lB,KAAUthB,EAAE,iBAAkBlM,EAAEyH,WAChCgmB,KAAUvhB,EAAE,eAAgBlM,EAAEyH,WAC9BimB,KAAUxhB,EAAE,SAAUlM,EAAEyH,WACxBkmB,KAAUzhB,EAAE,kBAAmBlM,EAAEyH,WACjCmmB,KAAU1hB,EAAE,UAAWlM,EAAEyH,WACzBomB,KAAU3hB,EAAE,UAAWlM,EAAEyH,WACzBqmB,KAAU5hB,EAAE,SAAUlM,EAAEyH,WACxBsmB,KAAU7hB,EAAE,gBAAiBlM,EAAEyH,WAC/BumB,KAAU9hB,EAAE,SAAUlM,EAAEyH,WACxBwmB,KAAU/hB,EAAE,SAAUlM,EAAEyH,WACxBymB,KAAUhiB,EAAE,cAAelM,EAAEyH,WAC7B0mB,KAAUjiB,EAAE,iBAAkBlM,EAAEyH,WAChC2mB,KAAUliB,EAAE,YAAalM,EAAEyH,WAC3B4mB,KAAUniB,EAAE,eAAgBlM,EAAEyH,WAC9B6mB,KAAUpiB,EAAE,eAAgBlM,EAAEyH,WAC9B8mB,KAAUriB,EAAE,kBAAmBlM,EAAEyH,WACjC+mB,KAAUtiB,EAAE,cAAelM,EAAEyH,WAC7BgnB,KAAUviB,EAAE,gBAAiBlM,EAAEyH,WAC/BinB,KAAUxiB,EAAE,gBAAiBlM,EAAEyH,WAC/BknB,KAAUziB,EAAE,gBAAiBlM,EAAEyH,WAC/BmnB,KAAU1iB,EAAE,eAAgBlM,EAAEyH,WAC9BonB,KAAU3iB,EAAE,YAAalM,EAAEyH,WAC3BqnB,KAAU5iB,EAAE,gBAAiBlM,EAAEyH,WAC/BsnB,KAAU7iB,EAAE,aAAclM,EAAEyH,WAC5BunB,KAAU9iB,EAAE,cAAelM,EAAEyH,WAC7BwnB,KAAU/iB,EAAE,iBAAkBlM,EAAEyH,WAChCynB,KAAUhjB,EAAE,eAAgBlM,EAAEyH,WAC9B0nB,KAAUjjB,EAAE,sBAAuBlM,EAAEyH,WACrC2nB,KAAUljB,EAAE,qBAAsBlM,EAAEyH,WACpC4nB,KAAUnjB,EAAE,mBAAoBlM,EAAEyH,WAClC6nB,KAAUpjB,EAAE,oBAAqBlM,EAAEyH,WACnC8nB,KAAUrjB,EAAE,aAAclM,EAAEyH,WAC5B+nB,KAAUtjB,EAAE,aAAclM,EAAEyH,WAC5BgoB,KAAUvjB,EAAE,WAAYlM,EAAEyH,WAC1BioB,KAAUxjB,EAAE,yBAA0BlM,EAAEyH,WACxCkoB,KAAUzjB,EAAE,uBAAwBlM,EAAEyH,WACtCmoB,KAAU1jB,EAAE,sBAAuBlM,EAAEyH,WACrCooB,KAAU3jB,EAAE,oBAAqBlM,EAAEyH,WACnCqoB,KAAU5jB,EAAE,qBAAsBlM,EAAEyH,WACpCsoB,KAAU7jB,EAAE,mBAAoBlM,EAAEyH,WAClCuoB,KAAU9jB,EAAE,sBAAuBlM,EAAEyH,WACrCwoB,KAAU/jB,EAAE,oBAAqBlM,EAAEyH,WACnCyoB,KAAUhkB,EAAE,qBAAsBlM,EAAEyH,WACpC0oB,KAAUjkB,EAAE,mBAAoBlM,EAAEyH,WAClC2oB,KAAUlkB,EAAE,uBAAwBlM,EAAEyH,WACtC4oB,KAAUnkB,EAAE,qBAAsBlM,EAAEyH,WACpC6oB,KAAUpkB,EAAE,sBAAuBlM,EAAEyH,WACrC8oB,KAAUrkB,EAAE,oBAAqBlM,EAAEyH,WACnC+oB,KAAUtkB,EAAE,yBAA0BlM,EAAEyH,WACxCgpB,KAAUvkB,EAAE,uBAAwBlM,EAAEyH,WACtCipB,KAAUxkB,EAAE,wBAAyBlM,EAAEyH,WACvCkpB,KAAUzkB,EAAE,sBAAuBlM,EAAEyH,WACrCmpB,KAAU1kB,EAAE,cAAelM,EAAEyH,WAC7BopB,KAAU3kB,EAAE,YAAalM,EAAEyH,WAC3BqpB,KAAU5kB,EAAE,eAAgBlM,EAAEyH,WAC9BspB,KAAU7kB,EAAE,aAAclM,EAAEyH,WAC5BupB,KAAU9kB,EAAE,uBAAwBlM,EAAEyH,WACtCwpB,KAAU/kB,EAAE,qBAAsBlM,EAAEyH,WACpCypB,KAAUhlB,EAAE,sBAAuBlM,EAAEyH,WACrC0pB,KAAUjlB,EAAE,oBAAqBlM,EAAEyH,WACnC2pB,KAAUllB,EAAE,gBAAiBlM,EAAEyH,WAC/B4pB,KAAUnlB,EAAE,cAAelM,EAAEyH,WAC7B6pB,KAAUplB,EAAE,eAAgBlM,EAAEyH,WAC9B8pB,KAAUrlB,EAAE,aAAclM,EAAEyH,WAC5B+pB,KAAUtlB,EAAE,wBAAyBlM,EAAEyH,WACvCgqB,KAAUvlB,EAAE,sBAAuBlM,EAAEyH,WACrCiqB,KAAUxlB,EAAE,gCAAiClM,EAAEyH,WAC/CkqB,KAAUzlB,EAAE,8BAA+BlM,EAAEyH,WAC7CmqB,KAAU1lB,EAAE,iBAAkBlM,EAAEyH,WAChCoqB,KAAU3lB,EAAE,eAAgBlM,EAAEyH,WAC9BqqB,KAAU5lB,EAAE,kBAAmBlM,EAAEyH,WACjCsqB,KAAU7lB,EAAE,gBAAiBlM,EAAEyH,WAC/BuqB,KAAU9lB,EAAE,kBAAmBlM,EAAEyH,WACjCwqB,KAAU/lB,EAAE,gBAAiBlM,EAAEyH,WAC/ByqB,KAAUhmB,EAAE,qBAAsBlM,EAAEyH,WACpC0qB,KAAUjmB,EAAE,mBAAoBlM,EAAEyH,WAClC2qB,KAAUlmB,EAAE,UAAWlM,EAAEyH,WACzB4qB,KAAUnmB,EAAE,qBAAsBlM,EAAEyH,WACpC6qB,KAAUpmB,EAAE,uBAAwBlM,EAAEyH,WACtC8qB,KAAUrmB,EAAE,qBAAsBlM,EAAEyH,WACpC+qB,KAAUtmB,EAAE,kBAAmBlM,EAAEyH,WACjCgrB,KAAUvmB,EAAE,aAAclM,EAAEyH,WAC5BirB,KAAUxmB,EAAE,kBAAmBlM,EAAEyH,WACjCkrB,KAAUzmB,EAAE,eAAgBlM,EAAEyH,WAC9BmrB,KAAU1mB,EAAE,uBAAwBlM,EAAEyH,WACtCorB,KAAU3mB,EAAE,qBAAsBlM,EAAEyH,WACpCqrB,KAAU5mB,EAAE,sBAAuBlM,EAAEyH,WACrCsrB,KAAU7mB,EAAE,oBAAqBlM,EAAEyH,WACnCurB,KAAU9mB,EAAE,uBAAwBlM,EAAEyH,WACtCwrB,KAAU/mB,EAAE,qBAAsBlM,EAAEyH,WACpCyrB,KAAUhnB,EAAE,eAAgBlM,EAAEyH,WAC9B0rB,KAAUjnB,EAAE,cAAelM,EAAEyH,WAC7B2rB,KAAUlnB,EAAE,YAAalM,EAAEyH,WAC3B4rB,KAAUnnB,EAAE,iBAAkBlM,EAAEyH,WAChC6rB,KAAUpnB,EAAE,eAAgBlM,EAAEyH,WAC9B8rB,KAAUrnB,EAAE,aAAclM,EAAEyH,WAC5B+rB,KAAUtnB,EAAE,WAAYlM,EAAEyH,WAC1BgsB,KAAUvnB,EAAE,cAAelM,EAAEyH,WAC7BisB,KAAUxnB,EAAE,YAAalM,EAAEyH,WAC3BksB,KAAUznB,EAAE,WAAYlM,EAAEyH,WAC1BmsB,KAAU1nB,EAAE,eAAgBlM,EAAEyH,WAC9BosB,KAAU3nB,EAAE,aAAclM,EAAEyH,WAC5BqsB,KAAU5nB,EAAE,gBAAiBlM,EAAEyH,WAC/BssB,KAAU7nB,EAAE,cAAelM,EAAEyH,WAC7BusB,KAAU9nB,EAAE,UAAWlM,EAAEyH,WACzBwsB,KAAU/nB,EAAE,kBAAmBlM,EAAEyH,WACjCysB,KAAUhoB,EAAE,gBAAiBlM,EAAEyH,WAC/B0sB,KAAUjoB,EAAE,cAAelM,EAAEyH,WAC7B2sB,KAAUloB,EAAE,YAAalM,EAAEyH,WAC3B4sB,KAAUnoB,EAAE,SAAUlM,EAAEyH,WACxB6sB,KAAUpoB,EAAE,eAAgBlM,EAAEyH,WAC9B8sB,KAAUroB,EAAE,aAAclM,EAAEyH,WAC5B+sB,KAAUtoB,EAAE,SAAUlM,EAAEyH,WACxBgtB,KAAUvoB,EAAE,sBAAuBlM,EAAEyH,WACrCitB,KAAUxoB,EAAE,oBAAqBlM,EAAEyH,WACnCktB,KAAUzoB,EAAE,qBAAsBlM,EAAEyH,WACpCmtB,KAAU1oB,EAAE,mBAAoBlM,EAAEyH,WAClCotB,KAAU3oB,EAAE,uBAAwBlM,EAAEyH,WACtCqtB,KAAU5oB,EAAE,sBAAuBlM,EAAEyH,WACrCstB,KAAU7oB,EAAE,kBAAmBlM,EAAEyH,WACjCutB,KAAU9oB,EAAE,gBAAiBlM,EAAEyH,WAC/BwtB,KAAU/oB,EAAE,kBAAmBlM,EAAEyH,WACjCytB,KAAUhpB,EAAE,gBAAiBlM,EAAEyH,WAC/B0tB,KAAUjpB,EAAE,kBAAmBlM,EAAEyH,WACjC2tB,KAAUlpB,EAAE,gBAAiBlM,EAAEyH,WAC/B4tB,KAAUnpB,EAAE,mBAAoBlM,EAAEyH,WAClC6tB,KAAUppB,EAAE,iBAAkBlM,EAAEyH,WAChC8tB,KAAUrpB,EAAE,iBAAkBlM,EAAEyH,WAChC+tB,KAAUtpB,EAAE,YAAalM,EAAEyH,WAC3BguB,KAAUvpB,EAAE,YAAalM,EAAEyH,WAC3BiuB,KAAUxpB,EAAE,YAAalM,EAAEyH,WAC3BkuB,KAAUzpB,EAAE,YAAalM,EAAEyH,WAC3BmuB,KAAU1pB,EAAE,aAAclM,EAAEyH,WAC5BouB,KAAU3pB,EAAE,oBAAqBlM,EAAEyH,WACnCquB,KAAU5pB,EAAE,kBAAmBlM,EAAEyH,WACjCsuB,KAAU7pB,EAAE,mBAAoBlM,EAAEyH,WAClCuuB,KAAU9pB,EAAE,iBAAkBlM,EAAEyH,WAChCwuB,KAAU/pB,EAAE,oBAAqBlM,EAAEyH,WACnCyuB,KAAUhqB,EAAE,qBAAsBlM,EAAEyH,WACpC0uB,KAAUjqB,EAAE,qBAAsBlM,EAAEyH,WACpC2uB,KAAUlqB,EAAE,kBAAmBlM,EAAEyH,WACjC4uB,KAAUnqB,EAAE,mBAAoBlM,EAAEyH,WAClC6uB,KAAUpqB,EAAE,iBAAkBlM,EAAEyH,WAChC8uB,KAAUrqB,EAAE,yBAA0BlM,EAAEyH,WACxC+uB,KAAUtqB,EAAE,uBAAwBlM,EAAEyH,WACtCgvB,KAAUvqB,EAAE,sBAAuBlM,EAAEyH,WACrCivB,KAAUxqB,EAAE,iBAAkBlM,EAAEyH,WAChCkvB,KAAUzqB,EAAE,aAAclM,EAAEyH,WAC5BmvB,KAAU1qB,EAAE,aAAclM,EAAEyH,WAC5BovB,KAAU3qB,EAAE,mBAAoBlM,EAAEyH,WAClCqvB,KAAU5qB,EAAE,qBAAsBlM,EAAEyH,WACpCsvB,KAAU7qB,EAAE,YAAalM,EAAEyH,WAC3BuvB,KAAU9qB,EAAE,sBAAuBlM,EAAEyH,WACrCwvB,KAAU/qB,EAAE,oBAAqBlM,EAAEyH,WACnCyvB,KAAUhrB,EAAE,qBAAsBlM,EAAEyH,WACpC0vB,KAAUjrB,EAAE,mBAAoBlM,EAAEyH,WAClC2vB,KAAUlrB,EAAE,oBAAqBlM,EAAEyH,WACnC4vB,KAAUnrB,EAAE,kBAAmBlM,EAAEyH,WACjC6vB,KAAUprB,EAAE,qBAAsBlM,EAAEyH,WACpC8vB,KAAUrrB,EAAE,mBAAoBlM,EAAEyH,WAClC+vB,KAAUtrB,EAAE,WAAYlM,EAAEyH,WAC1BgwB,KAAUvrB,EAAE,WAAYlM,EAAEyH,WAC1BiwB,KAAUxrB,EAAE,wBAAyBlM,EAAEyH,WACvCkwB,KAAUzrB,EAAE,sBAAuBlM,EAAEyH,WACrCmwB,KAAU1rB,EAAE,oBAAqBlM,EAAEyH,WACnCowB,KAAU3rB,EAAE,kBAAmBlM,EAAEyH,WACjCqwB,KAAU5rB,EAAE,cAAelM,EAAEyH,WAC7BswB,KAAU7rB,EAAE,gBAAiBlM,EAAEyH,WAC/BuwB,KAAU9rB,EAAE,cAAelM,EAAEyH,WAC7BwwB,KAAU/rB,EAAE,kBAAmBlM,EAAEyH,WACjCywB,KAAUhsB,EAAE,uBAAwBlM,EAAEyH,WACtC0wB,KAAUjsB,EAAE,qBAAsBlM,EAAEyH,WACpC2wB,KAAUlsB,EAAE,gBAAiBlM,EAAEyH,WAC/B4wB,KAAUnsB,EAAE,gBAAiBlM,EAAEyH,WAC/B6wB,KAAUpsB,EAAE,eAAgBlM,EAAEyH,WAC9B8wB,KAAUrsB,EAAE,gBAAiBlM,EAAEyH,WAC/B+wB,KAAUtsB,EAAE,iBAAkBlM,EAAEyH,WAChCgxB,KAAUvsB,EAAE,iBAAkBlM,EAAEyH,WAChCixB,KAAUxsB,EAAE,iBAAkBlM,EAAEyH,WAChCkxB,KAAUzsB,EAAE,gBAAiBlM,EAAEyH,WAC/BmxB,KAAU1sB,EAAE,gBAAiBlM,EAAEyH,WAC/BoxB,KAAU3sB,EAAE,0BAA2BlM,EAAEyH,WACzCqxB,KAAU5sB,EAAE,uBAAwBlM,EAAEyH,WACtCsxB,KAAU7sB,EAAE,qBAAsBlM,EAAEyH,WACpCuxB,KAAU9sB,EAAE,wBAAyBlM,EAAEyH,WACvCwxB,KAAU/sB,EAAE,sBAAuBlM,EAAEyH,WACrCyxB,KAAUhtB,EAAE,oBAAqBlM,EAAEyH,WACnC0xB,KAAUjtB,EAAE,kBAAmBlM,EAAEyH,WACjC2xB,KAAUltB,EAAE,kBAAmBlM,EAAEyH,WACjC4xB,KAAUntB,EAAE,wBAAyBlM,EAAEyH,WACvC6xB,KAAUptB,EAAE,sBAAuBlM,EAAEyH,WACrC8xB,KAAUrtB,EAAE,oBAAqBlM,EAAEyH,WACnC+xB,KAAUttB,EAAE,kBAAmBlM,EAAEyH,WACjCgyB,KAAUvtB,EAAE,mBAAoBlM,EAAEyH,WAClCiyB,KAAUxtB,EAAE,iBAAkBlM,EAAEyH,WAChCkyB,KAAUztB,EAAE,gBAAiBlM,EAAEyH,WAC/BmyB,KAAU1tB,EAAE,cAAelM,EAAEyH,WAC7BoyB,KAAU3tB,EAAE,sBAAuBlM,EAAEyH,WACrCqyB,KAAU5tB,EAAE,oBAAqBlM,EAAEyH,WACnCsyB,KAAU7tB,EAAE,eAAgBlM,EAAEyH,WAC9BuyB,KAAU9tB,EAAE,iBAAkBlM,EAAEyH,WAChCwyB,KAAU/tB,EAAE,eAAgBlM,EAAEyH,WAC9ByyB,KAAUhuB,EAAE,iBAAkBlM,EAAEyH,WAChC0yB,KAAUjuB,EAAE,gBAAiBlM,EAAEyH,WAC/B2yB,KAAUluB,EAAE,cAAelM,EAAEyH,WAC7B4yB,KAAUnuB,EAAE,kBAAmBlM,EAAEyH,WACjC6yB,KAAUpuB,EAAE,gBAAiBlM,EAAEyH,WAC/B8yB,KAAUruB,EAAE,eAAgBlM,EAAEyH,WAC9B+yB,KAAUtuB,EAAE,aAAclM,EAAEyH,WAC5BgzB,KAAUvuB,EAAE,kBAAmBlM,EAAEyH,WACjCizB,KAAUxuB,EAAE,gBAAiBlM,EAAEyH,WAC/BkzB,KAAUzuB,EAAE,iBAAkBlM,EAAEyH,WAChCmzB,KAAU1uB,EAAE,eAAgBlM,EAAEyH,WAC9BozB,KAAU3uB,EAAE,aAAclM,EAAEyH,WAC5BqzB,KAAU5uB,EAAE,uBAAwBlM,EAAEyH,WACtCszB,KAAU7uB,EAAE,qBAAsBlM,EAAEyH,WACpCuzB,KAAU9uB,EAAE,mBAAoBlM,EAAEyH,WAClCwzB,KAAU/uB,EAAE,iBAAkBlM,EAAEyH,WAChCyzB,KAAUhvB,EAAE,yBAA0BlM,EAAEyH,WACxC0zB,KAAUjvB,EAAE,uBAAwBlM,EAAEyH,WACtC2zB,KAAUlvB,EAAE,mBAAoBlM,EAAEyH,WAClC4zB,KAAUnvB,EAAE,sBAAuBlM,EAAEyH,WACrC6zB,KAAUpvB,EAAE,oBAAqBlM,EAAEyH,WACnC8zB,KAAUrvB,EAAE,kBAAmBlM,EAAEyH,WACjC+zB,KAAUtvB,EAAE,gBAAiBlM,EAAEyH,WAC/Bg0B,KAAUvvB,EAAE,iBAAkBlM,EAAEyH,WAChCi0B,KAAUxvB,EAAE,qBAAsBlM,EAAEyH,WACpCk0B,KAAUzvB,EAAE,eAAgBlM,EAAEyH,WAC9Bm0B,KAAU1vB,EAAE,mBAAoBlM,EAAEyH,WAClCo0B,KAAU3vB,EAAE,kBAAmBlM,EAAEyH,WACjCq0B,KAAU5vB,EAAE,gBAAiBlM,EAAEyH,WAC/Bs0B,KAAU7vB,EAAE,0BAA2BlM,EAAEyH,WACzCu0B,KAAU9vB,EAAE,aAAclM,EAAEyH,WAC5Bw0B,KAAU/vB,EAAE,wBAAyBlM,EAAEyH,WACvCy0B,KAAUhwB,EAAE,gCAAiClM,EAAEyH,WAC/C00B,KAAUjwB,EAAE,wBAAyBlM,EAAEyH,WACvC20B,KAAUlwB,EAAE,kBAAmBlM,EAAEyH,WACjC40B,KAAUnwB,EAAE,sBAAuBlM,EAAEyH,WACrC60B,KAAUpwB,EAAE,YAAalM,EAAEyH,WAC3B80B,KAAUrwB,EAAE,iBAAkBlM,EAAEyH,WAChC+0B,KAAUtwB,EAAE,sBAAuBlM,EAAEyH,WACrCg1B,KAAUvwB,EAAE,oBAAqBlM,EAAEyH,WACnCi1B,KAAUxwB,EAAE,qBAAsBlM,EAAEyH,WACpCk1B,KAAUzwB,EAAE,mBAAoBlM,EAAEyH,WAClCm1B,KAAU1wB,EAAE,yBAA0BlM,EAAEyH,WACxCo1B,KAAU3wB,EAAE,uBAAwBlM,EAAEyH,WACtCq1B,KAAU5wB,EAAE,kBAAmBlM,EAAEyH,WACjCs1B,KAAU7wB,EAAE,oBAAqBlM,EAAEyH,WACnCu1B,KAAU9wB,EAAE,cAAelM,EAAEyH,WAC7Bw1B,KAAU/wB,EAAE,kBAAmBlM,EAAEyH,WACjCy1B,KAAUhxB,EAAE,mBAAoBlM,EAAEyH,WAClC01B,KAAUjxB,EAAE,kBAAmBlM,EAAEyH,WACjC21B,KAAUlxB,EAAE,aAAclM,EAAEyH,WAC5B41B,KAAUnxB,EAAE,gBAAiBlM,EAAEyH,WAC/B61B,KAAUpxB,EAAE,cAAelM,EAAEyH,WAC7B81B,KAAUrxB,EAAE,iBAAkBlM,EAAEyH,WAChC+1B,KAAUtxB,EAAE,kBAAmBlM,EAAEyH,WACjCg2B,KAAUvxB,EAAE,oBAAqBlM,EAAEyH,WACnCi2B,KAAUxxB,EAAE,kBAAmBlM,EAAEyH,WACjCk2B,KAAUzxB,EAAE,iBAAkBlM,EAAEyH,WAChCm2B,KAAU1xB,EAAE,eAAgBlM,EAAEyH,WAC9Bo2B,KAAU3xB,EAAE,gBAAiBlM,EAAEyH,WAC/Bq2B,KAAU5xB,EAAE,oBAAqBlM,EAAEyH,WACnCs2B,KAAU7xB,EAAE,uBAAwBlM,EAAEyH,WACtCu2B,KAAU9xB,EAAE,wBAAyBlM,EAAEyH,WACvCw2B,KAAU/xB,EAAE,qBAAsBlM,EAAEyH,WACpCy2B,KAAUhyB,EAAE,wBAAyBlM,EAAEyH,WACvC02B,MAAUjyB,EAAE,eAAgBlM,EAAEyH,WAC9B22B,MAAUlyB,EAAE,gBAAiBlM,EAAEyH,WAC/B42B,MAAUnyB,EAAE,qBAAsBlM,EAAEyH,WACpC62B,MAAUpyB,EAAE,mBAAoBlM,EAAEyH,WAClC82B,MAAUryB,EAAE,2BAA4BlM,EAAEyH,WAC1C+2B,MAAUtyB,EAAE,yBAA0BlM,EAAEyH,WACxCg3B,MAAUvyB,EAAE,0BAA2BlM,EAAEyH,WACzCi3B,MAAUxyB,EAAE,yBAA0BlM,EAAEyH,WACxCk3B,MAAUzyB,EAAE,uBAAwBlM,EAAEyH,WACtCm3B,MAAU1yB,EAAE,wBAAyBlM,EAAEyH,WACvCo3B,MAAU3yB,EAAE,sBAAuBlM,EAAEyH,WACrCq3B,MAAU5yB,EAAE,uBAAwBlM,EAAEyH,WACtCs3B,MAAU7yB,EAAE,aAAclM,EAAEyH,WAC5Bu3B,MAAU9yB,EAAE,YAAalM,EAAEyH,WAC3Bw3B,MAAU/yB,EAAE,uBAAwBlM,EAAEyH,WACtCy3B,MAAUhzB,EAAE,qBAAsBlM,EAAEyH,WACpC03B,MAAUjzB,EAAE,YAAalM,EAAEyH,WAC3B23B,MAAUlzB,EAAE,yBAA0BlM,EAAEyH,WACxC43B,MAAUnzB,EAAE,uBAAwBlM,EAAEyH,WACtC63B,MAAUpzB,EAAE,eAAgBlM,EAAEyH,WAC9B83B,MAAUrzB,EAAE,YAAalM,EAAEyH,WAC3B+3B,MAAUtzB,EAAE,mBAAoBlM,EAAEyH,WAClCg4B,MAAUvzB,EAAE,kCAAmClM,EAAEyH,WACjDi4B,MAAUxzB,EAAE,gCAAiClM,EAAEyH,WAC/Ck4B,MAAUzzB,EAAE,mBAAoBlM,EAAEyH,WAClCm4B,MAAU1zB,EAAE,iBAAkBlM,EAAEyH,WAChCo4B,MAAU3zB,EAAE,YAAalM,EAAEyH,WAC3Bq4B,MAAU5zB,EAAE,oBAAqBlM,EAAEyH,WACnCs4B,MAAU7zB,EAAE,oBAAqBlM,EAAEyH,WACnCu4B,MAAU9zB,EAAE,YAAalM,EAAEyH,WAC3Bw4B,MAAU/zB,EAAE,kBAAmBlM,EAAEyH,WACjCy4B,MAAUh0B,EAAE,aAAclM,EAAEyH,WAC5B04B,MAAUj0B,EAAE,qBAAsBlM,EAAEyH,WACpC24B,MAAUl0B,EAAE,mBAAoBlM,EAAEyH,WAClC44B,MAAUn0B,EAAE,0BAA2BlM,EAAEyH,WACzC64B,MAAUp0B,EAAE,wBAAyBlM,EAAEyH,WACvC84B,MAAUr0B,EAAE,YAAalM,EAAEyH,WAC3B+4B,MAAUt0B,EAAE,mBAAoBlM,EAAEyH,WAClCg5B,MAAUv0B,EAAE,iBAAkBlM,EAAEyH,WAChCi5B,MAAUx0B,EAAE,gBAAiBlM,EAAEyH,WAC/Bk5B,MAAUz0B,EAAE,cAAelM,EAAEyH,WAC7Bm5B,MAAU10B,EAAE,oBAAqBlM,EAAEyH,WACnCo5B,MAAU30B,EAAE,kBAAmBlM,EAAEyH,WACjCq5B,MAAU50B,EAAE,yBAA0BlM,EAAEyH,WACxCs5B,MAAU70B,EAAE,uBAAwBlM,EAAEyH,WACtCu5B,MAAU90B,EAAE,wBAAyBlM,EAAEyH,WACvCw5B,MAAU/0B,EAAE,sBAAuBlM,EAAEyH,WACrCy5B,MAAUh1B,EAAE,sBAAuBlM,EAAEyH,WACrC05B,MAAUj1B,EAAE,oBAAqBlM,EAAEyH,WACnC25B,MAAUl1B,EAAE,yBAA0BlM,EAAEyH,WACxC45B,MAAUn1B,EAAE,uBAAwBlM,EAAEyH,WACtC65B,MAAUp1B,EAAE,oBAAqBlM,EAAEyH,WACnC85B,MAAUr1B,EAAE,kBAAmBlM,EAAEyH,WACjC+5B,MAAUt1B,EAAE,mBAAoBlM,EAAEyH,WAClCg6B,MAAUv1B,EAAE,iBAAkBlM,EAAEyH,WAChCi6B,MAAUx1B,EAAE,iBAAkBlM,EAAEyH,WAChCk6B,MAAUz1B,EAAE,eAAgBlM,EAAEyH,WAC9Bm6B,MAAU11B,EAAE,4BAA6BlM,EAAEyH,WAC3Co6B,MAAU31B,EAAE,8BAA+BlM,EAAEyH,WAC7Cq6B,MAAU51B,EAAE,4BAA6BlM,EAAEyH,WAC3Cs6B,MAAU71B,EAAE,gCAAiClM,EAAEyH,WAC/Cu6B,MAAU91B,EAAE,8BAA+BlM,EAAEyH,WAC7Cw6B,MAAU/1B,EAAE,+BAAgClM,EAAEyH,WAC9Cy6B,MAAUh2B,EAAE,6BAA8BlM,EAAEyH,WAC5C06B,MAAUj2B,EAAE,8BAA+BlM,EAAEyH,WAC7C26B,MAAUl2B,EAAE,4BAA6BlM,EAAEyH,WAC3C46B,MAAUn2B,EAAE,6BAA8BlM,EAAEyH,WAC5C66B,MAAUp2B,EAAE,2BAA4BlM,EAAEyH,WAC1C86B,MAAUr2B,EAAE,yBAA0BlM,EAAEyH,WACxC+6B,MAAUt2B,EAAE,gCAAiClM,EAAEyH,WAC/Cg7B,MAAUv2B,EAAE,0BAA2BlM,EAAEyH,WACzCi7B,MAAUx2B,EAAE,8BAA+BlM,EAAEyH,WAC7Ck7B,MAAUz2B,EAAE,4BAA6BlM,EAAEyH,WAC3Cm7B,MAAU12B,EAAE,0BAA2BlM,EAAEyH,WACzCo7B,MAAU32B,EAAE,2BAA4BlM,EAAEyH,WAC1Cq7B,MAAU52B,EAAE,uBAAwBlM,EAAEyH,WACtCs7B,MAAU72B,EAAE,0BAA2BlM,EAAEyH,WACzCu7B,MAAU92B,EAAE,oBAAqBlM,EAAEyH,WACnCw7B,MAAU/2B,EAAE,YAAalM,EAAEyH,WAC3By7B,MAAUh3B,EAAE,YAAalM,EAAEyH,WAC3B07B,MAAUj3B,EAAE,oCAAqClM,EAAEyH,WACnD27B,MAAUl3B,EAAE,kCAAmClM,EAAEyH,WACjD47B,MAAUn3B,EAAE,kBAAmBlM,EAAEyH,WACjC67B,MAAUp3B,EAAE,gBAAiBlM,EAAEyH,WAC/B87B,MAAUr3B,EAAE,cAAelM,EAAEyH,WAC7B+7B,MAAUt3B,EAAE,iBAAkBlM,EAAEyH,WAChCg8B,MAAUv3B,EAAE,eAAgBlM,EAAEyH,WAC9Bi8B,MAAUx3B,EAAE,kBAAmBlM,EAAEyH,WACjCk8B,MAAUz3B,EAAE,gBAAiBlM,EAAEyH,WAC/Bm8B,MAAU13B,EAAE,mBAAoBlM,EAAEyH,WAClCo8B,MAAU33B,EAAE,iBAAkBlM,EAAEyH,WAChCq8B,MAAU53B,EAAE,oBAAqBlM,EAAEyH,WACnCs8B,MAAU73B,EAAE,kBAAmBlM,EAAEyH,WACjCu8B,MAAU93B,EAAE,kBAAmBlM,EAAEyH,WACjCw8B,MAAU/3B,EAAE,sBAAuBlM,EAAEyH,WACrCy8B,MAAUh4B,EAAE,oBAAqBlM,EAAEyH,WACnC08B,MAAUj4B,EAAE,wBAAyBlM,EAAEyH,WACvC28B,MAAUl4B,EAAE,0BAA2BlM,EAAEyH,WACzC48B,MAAUn4B,EAAE,wBAAyBlM,EAAEyH,WACvC68B,MAAUp4B,EAAE,mCAAoClM,EAAEyH,WAClD88B,MAAUr4B,EAAE,iCAAkClM,EAAEyH,WAChD+8B,MAAUt4B,EAAE,iCAAkClM,EAAEyH,WAChDg9B,MAAUv4B,EAAE,+BAAgClM,EAAEyH,WAC9Ci9B,MAAUx4B,EAAE,wBAAyBlM,EAAEyH,WACvCk9B,MAAUz4B,EAAE,sBAAuBlM,EAAEyH,WACrCm9B,MAAU14B,EAAE,yBAA0BlM,EAAEyH,WACxCo9B,MAAU34B,EAAE,uBAAwBlM,EAAEyH,WACtCq9B,MAAU54B,EAAE,gBAAiBlM,EAAEyH,WAC/Bs9B,MAAU74B,EAAE,uBAAwBlM,EAAEyH,WACtCu9B,MAAU94B,EAAE,qBAAsBlM,EAAEyH,WACpCw9B,MAAU/4B,EAAE,8BAA+BlM,EAAEyH,WAC7Cy9B,MAAUh5B,EAAE,4BAA6BlM,EAAEyH,WAC3C09B,MAAUj5B,EAAE,eAAgBlM,EAAEyH,WAC9B29B,MAAUl5B,EAAE,sBAAuBlM,EAAEyH,WACrC49B,MAAUn5B,EAAE,oBAAqBlM,EAAEyH,WACnC69B,MAAUp5B,EAAE,uBAAwBlM,EAAEyH,WACtC89B,MAAUr5B,EAAE,qBAAsBlM,EAAEyH,WACpC+9B,MAAUt5B,EAAE,qBAAsBlM,EAAEyH,WACpCg+B,MAAUv5B,EAAE,mBAAoBlM,EAAEyH,WAClCi+B,MAAUx5B,EAAE,gBAAiBlM,EAAEyH,WAC/Bk+B,MAAUz5B,EAAE,kBAAmBlM,EAAEyH,WACjCm+B,MAAU15B,EAAE,kBAAmBlM,EAAEyH,WACjCo+B,MAAU35B,EAAE,uBAAwBlM,EAAEyH,WACtCq+B,MAAU55B,EAAE,qBAAsBlM,EAAEyH,WACpCs+B,MAAU75B,EAAE,oBAAqBlM,EAAEyH,WACnCu+B,MAAU95B,EAAE,kBAAmBlM,EAAEyH,WACjCw+B,MAAU/5B,EAAE,kBAAmBlM,EAAEyH,WACjCy+B,MAAUh6B,EAAE,gBAAiBlM,EAAEyH,WAC/B0+B,MAAUj6B,EAAE,sBAAuBlM,EAAEyH,WACrC2+B,MAAUl6B,EAAE,oBAAqBlM,EAAEyH,WACnC4+B,MAAUn6B,EAAE,qBAAsBlM,EAAEyH,WACpC6+B,MAAUp6B,EAAE,mBAAoBlM,EAAEyH,WAClC8+B,MAAUr6B,EAAE,oBAAqBlM,EAAEyH,WACnC++B,MAAUt6B,EAAE,kBAAmBlM,EAAEyH,WACjCg/B,MAAUv6B,EAAE,0BAA2BlM,EAAEyH,WACzCi/B,MAAUx6B,EAAE,wBAAyBlM,EAAEyH,WACvCk/B,MAAUz6B,EAAE,WAAYlM,EAAEyH,WAC1Bm/B,MAAU16B,EAAE,iBAAkBlM,EAAEyH,WAChCo/B,MAAU36B,EAAE,eAAgBlM,EAAEyH,WAC9Bq/B,MAAU56B,EAAE,cAAelM,EAAEyH,WAC7Bs/B,MAAU76B,EAAE,0BAA2BlM,EAAEyH,WACzCu/B,MAAU96B,EAAE,oBAAqBlM,EAAEyH,WACnCw/B,MAAU/6B,EAAE,kBAAmBlM,EAAEyH,WACjCy/B,MAAUh7B,EAAE,8BAA+BlM,EAAEyH,WAC7C0/B,MAAUj7B,EAAE,iCAAkClM,EAAEyH,WAChD2/B,MAAUl7B,EAAE,+BAAgClM,EAAEyH,WAC9C4/B,MAAUn7B,EAAE,2BAA4BlM,EAAEyH,WAC1C6/B,MAAUp7B,EAAE,yBAA0BlM,EAAEyH,WACxC8/B,MAAUr7B,EAAE,uBAAwBlM,EAAEyH,WACtC+/B,MAAUt7B,EAAE,mBAAoBlM,EAAEyH,WAClCggC,MAAUv7B,EAAE,gCAAiClM,EAAEyH,WAC/CigC,MAAUx7B,EAAE,mBAAoBlM,EAAEyH,WAClCkgC,MAAUz7B,EAAE,iBAAkBlM,EAAEyH,WAChCmgC,MAAU17B,EAAE,gBAAiBlM,EAAEyH,WAC/BogC,MAAU37B,EAAE,cAAelM,EAAEyH,WAC7BqgC,MAAU57B,EAAE,kBAAmBlM,EAAEyH,WACjCsgC,MAAU77B,EAAE,WAAYlM,EAAEyH,WAC1BugC,MAAU97B,EAAE,wBAAyBlM,EAAEyH,WACvCwgC,MAAU/7B,EAAE,sBAAuBlM,EAAEyH,WACrCygC,MAAUh8B,EAAE,kBAAmBlM,EAAEyH,WACjC0gC,MAAUj8B,EAAE,eAAgBlM,EAAEyH,WAC9B2gC,MAAUl8B,EAAE,+BAAgClM,EAAEyH,WAC9C4gC,MAAUn8B,EAAE,6BAA8BlM,EAAEyH,WAC5C6gC,MAAUp8B,EAAE,yBAA0BlM,EAAEyH,WACxC8gC,MAAUr8B,EAAE,wBAAyBlM,EAAEyH,WACvC+gC,MAAUt8B,EAAE,2BAA4BlM,EAAEyH,WAC1CghC,MAAUv8B,EAAE,yBAA0BlM,EAAEyH,WACxCihC,MAAUx8B,EAAE,gBAAiBlM,EAAEyH,WAC/BkhC,MAAUz8B,EAAE,qCAAsClM,EAAEyH,WACpDmhC,MAAU18B,EAAE,mCAAoClM,EAAEyH,WAClDohC,MAAU38B,EAAE,+BAAgClM,EAAEyH,WAC9CqhC,MAAU58B,EAAE,2BAA4BlM,EAAEyH,WAC1CshC,MAAU78B,EAAE,yBAA0BlM,EAAEyH,WACxCuhC,MAAU98B,EAAE,0BAA2BlM,EAAEyH,WACzCwhC,MAAU/8B,EAAE,wBAAyBlM,EAAEyH,WACvCyhC,MAAUh9B,EAAE,sBAAuBlM,EAAEyH,WACrC0hC,MAAUj9B,EAAE,oBAAqBlM,EAAEyH,WACnC2hC,MAAUl9B,EAAE,qBAAsBlM,EAAEyH,WACpC4hC,MAAUn9B,EAAE,mBAAoBlM,EAAEyH,WAClC6hC,MAAUp9B,EAAE,kBAAmBlM,EAAEyH,WACjC8hC,MAAUr9B,EAAE,YAAalM,EAAEyH,WAC3B+hC,MAAUt9B,EAAE,wBAAyBlM,EAAEyH,WACvCgiC,MAAUv9B,EAAE,sBAAuBlM,EAAEyH,WACrCiiC,MAAUx9B,EAAE,0BAA2BlM,EAAEyH,WACzCkiC,MAAUz9B,EAAE,kCAAmClM,EAAEyH,WACjDmiC,MAAU19B,EAAE,gCAAiClM,EAAEyH,WAC/CoiC,MAAU39B,EAAE,yBAA0BlM,EAAEyH,WACxCqiC,MAAU59B,EAAE,uBAAwBlM,EAAEyH,WACtCsiC,MAAU79B,EAAE,gCAAiClM,EAAEyH,WAC/CuiC,MAAU99B,EAAE,8BAA+BlM,EAAEyH,WAC7CwiC,MAAU/9B,EAAE,WAAYlM,EAAEyH,WAC1ByiC,MAAUh+B,EAAE,iBAAkBlM,EAAEyH,WAChC0iC,MAAUj+B,EAAE,eAAgBlM,EAAEyH,WAC9B2iC,MAAUl+B,EAAE,oCAAqClM,EAAEyH,WACnD4iC,MAAUn+B,EAAE,0BAA2BlM,EAAEyH,WACzC6iC,MAAUp+B,EAAE,wBAAyBlM,EAAEyH,WACvC8iC,MAAUr+B,EAAE,oBAAqBlM,EAAEyH,WACnC+iC,MAAUt+B,EAAE,oBAAqBlM,EAAEyH,WACnCgjC,MAAUv+B,EAAE,kBAAmBlM,EAAEyH,WACjCijC,MAAUx+B,EAAE,oBAAqBlM,EAAEyH,WACnCkjC,MAAUz+B,EAAE,kBAAmBlM,EAAEyH,WACjCmjC,MAAU1+B,EAAE,uBAAwBlM,EAAEyH,WACtCojC,MAAU3+B,EAAE,qBAAsBlM,EAAEyH,WACpCqjC,MAAU5+B,EAAE,cAAelM,EAAEyH,WAC7BsjC,MAAU7+B,EAAE,eAAgBlM,EAAEyH,WAC9BujC,MAAU9+B,EAAE,iBAAkBlM,EAAEyH,WAChCwjC,MAAU/+B,EAAE,qBAAsBlM,EAAEyH,WACpCyjC,MAAUh/B,EAAE,mBAAoBlM,EAAEyH,WAClC0jC,MAAUj/B,EAAE,eAAgBlM,EAAEyH,WAC9B2jC,MAAUl/B,EAAE,oBAAqBlM,EAAEyH,WACnC4jC,MAAUn/B,EAAE,kBAAmBlM,EAAEyH,WACjC6jC,MAAUp/B,EAAE,sBAAuBlM,EAAEyH,WACrC8jC,MAAUr/B,EAAE,oBAAqBlM,EAAEyH,WACnC+jC,MAAUt/B,EAAE,gBAAiBlM,EAAEyH,WAC/BgkC,MAAUv/B,EAAE,6BAA8BlM,EAAEyH,WAC5CikC,MAAUx/B,EAAE,2BAA4BlM,EAAEyH,WAC1CkkC,MAAUz/B,EAAE,uBAAwBlM,EAAEyH,WACtCmkC,MAAU1/B,EAAE,qBAAsBlM,EAAEyH,WACpCokC,MAAU3/B,EAAE,mBAAoBlM,EAAEyH,WAClCqkC,MAAU5/B,EAAE,2BAA4BlM,EAAEyH,WAC1CskC,MAAU7/B,EAAE,yBAA0BlM,EAAEyH,WACxCukC,MAAU9/B,EAAE,wBAAyBlM,EAAEyH,WACvCwkC,MAAU//B,EAAE,yBAA0BlM,EAAEyH,WACxCykC,MAAUhgC,EAAE,yBAA0BlM,EAAEyH,WACxC0kC,MAAUjgC,EAAE,YAAalM,EAAEyH,WAC3B5N,OAAUqS,EAAE,GAAIlM,EAAEyH,WAGnB;QAASjQ,SAAQI,MAChB,GAAIw0C,YACF,SAAU,QACV,WAAY,OACZ,cAAe,OAEf,aAAc,QACd,YAAa,EAAG,MAChB,WAAY,QACZ,aAAc,QACd,YAAa,QACb,YAAa,QAEb,MAAO,OAETA,UAASnpC,QAAQ,SAAS/L,GACzB,SAAUU,MAAKV,EAAE,MAAQ,YAAaU,KAAKV,EAAE,IAAMA,EAAE,EACrD,IAAGA,EAAE,KAAO,IAAKU,KAAKV,EAAE,IAAMwG,OAAO9F,KAAKV,EAAE,OAG9C,QAASm1C,UAASzqC,IAAKhK,MACtBA,KAAOA,QACPJ,SAAQI,KACRiJ,WACA,IAAIyrC,SAAUvpC,OAAOC,KAAKpB,IAAIE,MAC9B,IAAIkB,MAAOspC,QAAQ3gC,OAAO,SAASpV,GAAG,MAAOA,GAAE6E,QAAQ,IAAM,MAAOmxC,MACpE,IAAIC,KAAMr8B,QAAQpO,WAAWH,IAAK,uBAClC,IAAI6qC,MAAO,KACX,IAAIn8B,OACJ,IAAGk8B,IAAIn8B,UAAUjZ,SAAW,EAAG,CAC9B,GAAIs1C,SAAU,iBACd,KAAI/qC,WAAWC,IAAI8qC,SAAU,KAAM,IAAInxC,OAAM,gCAC7CixC,KAAIn8B,UAAUrR,KAAK0tC,QACnBD,MAAO,KAGR,IAAI70C,KAAK+0C,aAAe/0C,KAAKg1C,UAAW,CACvCh8B,OACA,IAAG47B,IAAI9gC,IAAKkF,KAAKqK,UAAUlZ,WAAWH,IAAK4qC,IAAI9gC,IAAIrQ,QAAQ,MAAM,KAAMmxC,IAAI9gC,IAAK9T,KAEhFyU,UACA,IAAGmgC,IAAIthC,MAAOmB,OAAS2O,UAAUjZ,WAAWH,IAAK4qC,IAAIthC,MAAM7P,QAAQ,MAAM,KAAKmxC,IAAIthC,MAAOtT,MAG1F,GAAIuiB,IAAKW,SAAS/Y,WAAWH,IAAK4qC,IAAIn8B,UAAU,GAAGhV,QAAQ,MAAM,KAAMmxC,IAAIn8B,UAAU,GAAIzY,KAEzF,IAAIi1C,UAAYC,SAAW,EAC3B,KACCA,SAAWN,IAAI/7B,UAAUrZ,SAAW,EAAI2K,WAAWH,IAAK4qC,IAAI/7B,UAAU,GAAGpV,QAAQ,MAAM,KAAO,EAC9FyxC,WAAYN,IAAI97B,SAAStZ,SAAW,EAAI2K,WAAWH,IAAK4qC,IAAI97B,SAAS,GAAGrV,QAAQ,MAAM,KAAO,EAC7FwxC,OAAQC,WAAa,GAAKv+B,WAAWu+B,aACpC,MAAM7qC,IAER,GAAI0O,aACJ,KAAI/Y,KAAK+0C,YAAc/0C,KAAKg1C,UAAW,CACtC,GAAIJ,IAAI77B,UAAUvZ,SAAW,EAAG,CAC/B01C,SAAW/qC,WAAWH,IAAK4qC,IAAI77B,UAAU,GAAGtV,QAAQ,MAAM,IAAK,KAC/D,IAAGyxC,SAAUn8B,UAAYhB,iBAAiBm9B,WAI5C,GAAIhxC,OACJ,IAAGlE,KAAK+0C,YAAc/0C,KAAKg1C,UAAW,CACrC,GAAGC,MAAMz9B,YAAcy9B,MAAMv9B,WAAWlY,OAAS,EAAGkZ,OAAOu8B,MAAMv9B,eAC5D,IAAG6K,GAAGI,OAAQjK,OAAS6J,GAAGI,OAAO5a,IAAI,SAASpJ,GAAI,MAAOA,GAAE2K,MAChE,IAAGtJ,KAAKg1C,UAAW,CAAE9wC,IAAIixC,MAAQF,KAAO/wC,KAAIkxC,UAAYr8B,UACxD,SAAUL,UAAW,YAAaxU,IAAIwT,WAAagB,MACnD,IAAG1Y,KAAK+0C,WAAa7wC,IAAIwT,WAAa1X,KAAKg1C,UAAW,MAAO9wC,KAE9DwU,SAEA,IAAI28B,QACJ,IAAGr1C,KAAKs1C,UAAYV,IAAIt7B,UAAW+7B,KAAKh9B,UAAUlO,WAAWH,IAAK4qC,IAAIt7B,UAAU7V,QAAQ,MAAM,KAE9F,IAAIyD,GAAE,CACN,IAAIuU,aACJ,IAAI85B,MAAMC,QACV,KAAIP,MAAMz9B,WAAY,CAErB,GAAIi+B,UAAWlzB,GAAGI,MAClBsyB,OAAMz9B,WAAai+B,SAASj2C,MAC5By1C,OAAMv9B,aACN,KAAI,GAAIvQ,GAAI,EAAGA,GAAKsuC,SAASj2C,SAAU2H,EAAG,CACzC8tC,MAAMv9B,WAAWvQ,GAAKsuC,SAAStuC,GAAGmC,MAIpC,GAAIosC,OAASvrC,WAAWH,IAAI,0BAA0B,MAAO,EAAE,CAC/D,KAAI9C,EAAI,EAAGA,GAAK+tC,MAAMz9B,aAActQ,EAAG,CACtC,IAECquC,KAAO,uBAAuBruC,EAAE,EAAEwuC,QAAQb,KAAK,OAAO,OACtDU,MAAOA,KAAK9xC,QAAQ,WAAW,SAC/B+xC,UAAWD,KAAK9xC,QAAQ,qBAAsB,mBAC9CiV,QAAOu8B,MAAMv9B,WAAWxQ,IAAIic,SAAShZ,WAAWH,IAAKurC,MAAMA,KAAKv1C,KAChEyb,WAAUw5B,MAAMv9B,WAAWxQ,IAAIqS,UAAUpP,WAAWH,IAAKwrC,SAAU,MAAOD,MACzE,MAAMlrC,GAAK,GAAGrK,KAAKwU,IAAK,KAAMnK,IAGjC,GAAGuqC,IAAI37B,SAAUsC,eAAevR,IAAK4qC,IAAI37B,SAAUP,OAAQ+C,UAAWzb,KAEtEkE,MACCyxC,UAAWf,IACXgB,SAAUrzB,GACV4yB,MAAOF,MACPG,UAAWr8B,UACX88B,KAAMR,KACN1yB,OAAQjK,OACRhB,WAAYu9B,MAAMv9B,WAClBo+B,QAAS98B,KACT+8B,OAAQthC,OAET,IAAGzU,KAAKg2C,UAAW,CAClB9xC,IAAIkH,KAAOA,IACXlH,KAAIgG,MAAQF,IAAIE,MAEjB,MAAOhG,KAER,QAAS+xC,UAAS5sC,KAAM6sC,SACvB,GAAIlsC,KAAK1K,EAAI+J,IACb,IAAIxJ,GAAIq2C,WACR,QAAQr2C,EAAEmF,MAAM,UACf,IAAK,OACJ,SAAUyE,UAAW,YAAa,CAAEO,IAAI,GAAIO,OAAMjL,EAAEgL,IAAI6rC,aAAa9sC,MAAQ,OAC7E/J,EAAIgL,IAAI6rC,aAAa9sC,MAAM+E,SAAS,SAErC,KAAK,SAAUpE,IAAM,GAAIO,OAAMjL,GAAK82C,OAAO,MAAS,MACpD,KAAK,SAAUpsC,IAAM,GAAIO,OAAMjL,GAAK82C,OAAO,OAAU,OAEtD,MAAO3B,UAASzqC,IAAKnK,GAGtB,QAASs2C,cAAa9sC,KAAM6sC,SAC3B,GAAIr2C,GAAIq2C,WAAar2C,GAAEmF,KAAO,MAC9B,OAAOixC,UAAS5sC,KAAMxJ,GAGvB8I,KAAKiH,KAAOqmC,QACZttC,MAAK0tC,SAAWF,YAChBxtC,MAAK8rC,SAAWA,QAChB,OAAOtmC,QAEJxF,KAEH,IAAIwD,MAAO,SAASlN,GAAK,MAAOL,QAAOuK,aAAalK,GAEpD,SAASq3C,YAAWplC,KAAO,GAAI7L,GAAE,EAAI,OAAM6L,IAAKA,IAAKA,IAAIlO,KAAKC,OAAOiO,IAAI,GAAG,IAAK7L,EAAI8G,MAAO+E,IAAI,GAAG,GAAM,IAAM7L,CAAG,OAAOA,GACzH,QAASkxC,YAAWz5B,KAAO,MAAO,IAAMA,IAAM,GAC9C,QAASkC,aAAYnN,MAAQ,MAAOykC,YAAWzkC,KAAK5S,GAAKs3C,WAAW1kC,KAAKzL,GAEzE,QAASowC,YAAWv3C,GAAK,GAAIK,GAAI,EAAG4H,EAAI,CAAG,MAAMA,IAAMjI,EAAEO,SAAU0H,EAAG5H,EAAI,GAAGA,EAAIL,EAAEsK,WAAWrC,GAAK,EAAI,OAAO5H,GAAI,EAClH,QAASm3C,YAAWC,QAAU,MAAO5wC,QAAO4wC,QAAU,EACtD,QAASC,YAAWC,MAAQ,MAAOA,MAAKnzC,QAAQ,yBAAyB,SAAS5E,MAAM,KACxF,QAASsc,aAAYy7B,MAAQ,GAAIC,MAAOF,WAAWC,KAAO,QAAS33C,EAAEu3C,WAAWK,KAAK,IAAKzwC,EAAEqwC,WAAWI,KAAK,KAC5G,QAAS76B,cAAaD,OAAS,GAAIpd,GAAGod,MAAMld,MAAM,KAAKkJ,IAAIoT,YAAc,QAAQ9V,EAAE1G,EAAE,GAAG0L,EAAE1L,EAAEA,EAAEa,OAAO,IACrG,QAAS2c,cAAaJ,OAAS,MAAOiD,aAAYjD,MAAM1W,GAAK,IAAM2Z,YAAYjD,MAAM1R,GAErF,QAASysC,2BAA0Bh7B,MAAO9b,MACzC,GAAIkF,KAAK4X,IAAK1W,EAAG2wC,OAAUC,QAAS7mC,EAAG8mC,CACvC,IAAI/yC,OACJlE,MAAOA,QACP,KAAI8b,QAAUA,MAAM,QAAS,MAAO5X,IACpCkC,GAAIuC,KAAKuuC,MAAMl7B,aAAaF,MAAM,QAClC,KAAI3L,EAAE/J,EAAEf,EAAEe,EAAG6wC,EAAI7wC,EAAEf,EAAEpG,EAAGg4C,GAAK7wC,EAAEiE,EAAEpL,IAAKg4C,EAAG,CACxC/xC,IAAM4W,MAAMkD,aAAa/f,EAAEg4C,EAAE7wC,EAAE+J,IAC/B,KAAIjL,IAAK,QACT,IAAGA,IAAI2C,EAAGkvC,IAAIE,GAAK/xC,IAAI2C,MAClB,QAAO3C,IAAI3F,GACf,IAAK,IAAK,IAAK,MAAOw3C,IAAIE,GAAK/xC,IAAI7F,CAAG,MACtC,KAAK,IAAK03C,IAAIE,GAAK/xC,IAAI7F,CAAG,QAI5B,IAAK8Q,EAAI/J,EAAEf,EAAEe,EAAI,EAAG+J,GAAK/J,EAAEiE,EAAEjE,IAAK+J,EAAG,CACpC6mC,QAAU,IAEVl6B,KAAM3R,OAAOgsC,QAASC,WAAajnC,GACnC,KAAK8mC,EAAI7wC,EAAEf,EAAEpG,EAAGg4C,GAAK7wC,EAAEiE,EAAEpL,IAAKg4C,EAAG,CAChC/xC,IAAM4W,MAAMkD,aAAa/f,EAAGg4C,EAAE7wC,EAAG+J,IACjC,KAAIjL,MAAQA,IAAI3F,EAAG,QACnB,UAAU2F,KAAI2C,IAAM,cAAgB7H,KAAKsd,IAAK,CAAER,IAAIi6B,IAAIE,IAAM/xC,IAAI2C,CAAGmvC,SAAU,UAC1E,QAAO9xC,IAAI3F,GACf,IAAK,IAAK,IAAK,MAAO,IAAK,IAAK,IAAK,IACpC,SAAU2F,KAAI7F,IAAM,YAAa,CAChCyd,IAAIi6B,IAAIE,IAAM/xC,IAAI7F,CAClB23C,SAAU,MAEX,KACD,KAAK,IAAK,KACV,SAAS,KAAM,qBAAuB9xC,IAAI3F,GAG5C,IAAIy3C,QAAS9yC,IAAIkD,KAAK0V,KAEvB,MAAO5Y,KAGR,QAASmzC,cAAav7B,MAAO9b,MAC5B,GAAIs3C,WAAY,QAASA,WAAUpyC,KAClC,IAAIA,IAAI3F,EAAG,MAAO,EAClB,UAAU2F,KAAI2C,IAAM,YAAa,MAAO3C,KAAI2C,CAC5C,QAAO3C,IAAI3F,GACV,IAAK,IAAK,MAAOX,QAAOsG,IAAI7F,EAC5B,KAAK,IAAK,IAAK,MAAO,aAAc6F,KAAI7F,IAAM,YAAc6F,IAAI7F,EAAI,EACpE,KAAK,IAAK,MAAO6F,KAAI7F,EAAI,OAAS,OAClC,KAAK,IAAK,MAAO6F,KAAI7F,CACrB,SAAS,KAAM,qBAAuB6F,IAAI3F,GAG5C,IAAI2E,QAAUqzC,IAAM,EACpBv3C,MAAOA,QACP,KAAI8b,QAAUA,MAAM,QAAS,MAAO,EACpC,IAAI1V,GAAIuC,KAAKuuC,MAAMl7B,aAAaF,MAAM,QACtC,IAAI07B,IAAKx3C,KAAKy3C,IAAI,IAAKhkC,GAAKzT,KAAK03C,IAAI,IAErC,KAAI,GAAIvnC,GAAI/J,EAAEf,EAAEe,EAAG+J,GAAK/J,EAAEiE,EAAEjE,IAAK+J,EAAG,CACnC,GAAI2M,OACJ,KAAI,GAAIm6B,GAAI7wC,EAAEf,EAAEpG,EAAGg4C,GAAK7wC,EAAEiE,EAAEpL,IAAKg4C,EAAG,CACnC,GAAI/xC,KAAM4W,MAAMnT,KAAKuuC,MAAMl4B,aAAa/f,EAAEg4C,EAAE7wC,EAAE+J,IAC9C,KAAIjL,IAAK,CAAE4X,IAAI1V,KAAK,GAAK,UACzBmwC,IAAM34C,OAAO04C,UAAUpyC,KACvB,IAAGqyC,IAAI9xC,QAAQ+xC,OAAO,GAAKD,IAAI9xC,QAAQgO,OAAO,GAAK8jC,IAAI9xC,QAAQ,QAAQ,EACtE8xC,IAAM,IAAOA,IAAI9zC,QAAQ,KAAM,MAAQ,GACxCqZ,KAAI1V,KAAKmwC,KAEVrzC,IAAIkD,KAAK0V,IAAI/d,KAAKy4C,KAEnB,MAAOtzC,KAAInF,KAAK0U,KAAOvP,IAAI1E,OAASiU,GAAK,IAE1C,GAAIkkC,UAAWN,YAEf,SAASO,cAAaC,IACrB,GAAIC,QACJ,KAAI,GAAIh4C,KAAK+3C,IAAI,GAAG/3C,EAAE,KAAM,KAAO+3C,GAAGtsC,eAAezL,GAAI,CACxD,GAAInB,GAAIk5C,GAAG/3C,EACX,IAAIoF,KAAM,EACV,IAAGvG,EAAEyJ,EAAGlD,IAAMvG,EAAEyJ,MACX,UAAUzJ,GAAEkJ,IAAM,YAAa3C,IAAM,IAAMvG,EAAEkJ,MAC7C,UAAUlJ,GAAEU,IAAM,YAAa,aAC/B6F,KAAMvG,EAAEU,CACby4C,MAAK1wC,KAAKtH,EAAI,IAAMoF,KAErB,MAAO4yC,MAGRnvC,KAAKuuC,OACJZ,WAAYA,WACZC,WAAYA,WACZv3B,YAAaA,YACb7C,aAAcA,aACdq6B,WAAYA,WACZC,WAAYA,WACZE,WAAYA,WACZx7B,YAAaA,YACba,aAAcA,aACdq7B,aAAcA,aACdM,SAAUN,aACVO,aAAcA,aACdd,0BAA2BA,0BAG5B,UAAU9tC,WAAY,mBAAsByB,WAAY,YAAa,CACpEA,QAAQmF,KAAOjH,KAAKiH,IACpBnF,SAAQ4rC,SAAW1tC,KAAK0tC,QACxB5rC,SAAQysC,MAAQvuC,KAAKuuC,KACrBzsC,SAAQ/K,QAAUiJ,KAAKjJ"}
\ No newline at end of file
+{"version":3,"file":"dist/xlsx.min.js","sources":["xlsx.js"],"names":["SSF","make_ssf","_strrev","x","String","split","reverse","join","fill","c","l","Array","pad","v","d","t","length","rpad","version","opts_fmt","fixopts","o","y","undefined","opts","date1904","output","mode","table_fmt",1,2,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,65535,"days","months","frac","D","mixed","sgn","B","P_2","P_1","P","Q_2","Q_1","Q","A","Math","floor","q","general_fmt","V","toPrecision","pow","toFixed","substr","replace","toExponential","Error","_general","parse_date_code","date","time","dow","dout","out","T","u","Date","setDate","getDate","getFullYear","getMonth","getDay","m","S","M","H","write_date","type","fmt","val","ss","round","commaify","s","write_num","ffmt","mul","$$","$1","$2","indexOf","idx","match","period","ee","Number","fakee","$3","r","rr","ff","aval","sign","den","rnd","base","myn","myd","min","max","split_fmt","in_str","i","j","push","slice","_split","eval_fmt","flen","lst","dt","hr","toLowerCase","w","bt","jj","map","_eval","choose_fmt","table","format","f","_choose","_table","load","get_table","load_table","tbl","XLSX","current_codepage","current_cptable","cptable","module","require","reset_cp","_getchar","fromCharCode","getdata","data","name","charCodeAt","asNodeBuffer","Buffer","asBinary","_data","getContent","prototype","call","getzipfile","zip","file","files","getzipdata","safe","e","_fs","jszip","JSZip","exports","attregexg","attregex","parsexmltag","tag","words","z","0","evert","obj","Object","keys","forEach","k","hasOwnProperty","encodings",""","'",">","<","&","rencoding","rencstr","unescapexml","text","RegExp","_chr","parseInt","escapexml","parsexmlbool","value","utf8read","orig","c1","c2","c3","matchtag","g","parseVector","h","matches","baseType","size","res","isval","readIEEE754","buf","isLE","nl","ml","el","eMax","eBias","bits","NaN","Infinity","__toBuffer","hexlify","this","toString","bufs","concat","__readUInt8","b","readUInt8","__readUInt16LE","readUInt16LE","__readInt16LE","__readUInt32LE","readUInt32LE","__readInt32LE","readInt32LE","__readDoubleLE","readDoubleLE","ReadShift","oo","vv","loc","prep_blob","blob","pos","read_shift","bind","read","parsenoop","recordhopper","cb","tmpbyte","cntbyte","RT","R","RecordEnum","parse_StrRun","ich","ifnt","parse_RichStr","start","flags","fRichStr","fExtStr","str","parse_XLWideString","rgsStrRun","dwSizeStrRun","JSON","stringify","parse_Cell","col","iStyleRef","fPhShow","parse_CodeName","parse_RelID","parse_XLNullableWideString","parse_RkNumber","fX100","fInt","RK","parse_UncheckedRfX","cell","cchCharacters","parse_Xnum","BErr",7,23,29,36,42,43,255,"RBErr","parse_BrtColor","fValidRGB","xColorType","index","nTintAndShade","bRed","bGreen","bBlue","bAlpha","parse_FontFlags","fItalic","fStrikeout","fOutline","fShadow","fCondense","fExtend","parse_rs","tregex","rpregex","parse_rpr","rpr","intro","outro","font","sz","strike","rgb","color","family","style","parse_r","terms","rs","parse_si","html","cellHTML","parse_sst_xml","sst","filter","Count","count","Unique","uniqueCount","parse_BrtBeginSst","parse_sst_bin","n","pass","WTF","styles","parseNumFmts","NumberFmt","formatCode","numFmtId","parseCXfs","CellXf","parse_sty_xml","parse_BrtFmt","ifmt","stFmtCode","parse_BrtFont","dyHeight","grbit","bls","sss","uls","bFamily","bCharSet","brtColor","bFontScheme","Bold","Italic","Strikeout","Outline","Shadow","Condense","Extend","Sub","Sup","parse_BrtXF","ixfeParent","ixfe","parse_sty_bin","state","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.openxmlformats-officedocument.spreadsheetml.worksheet+xml","application/vnd.ms-excel.worksheet","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml","application/vnd.ms-excel.styles","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml","application/vnd.ms-excel.sharedStrings","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml","application/vnd.ms-excel.comments","application/vnd.openxmlformats-package.core-properties+xml","application/vnd.openxmlformats-officedocument.extended-properties+xml","application/vnd.openxmlformats-officedocument.custom-properties+xml","application/vnd.openxmlformats-officedocument.theme+xml","foo","XMLNS_CT","parseProps","p","Company","strings","bools","xtra","xtracp","xtradc","xtradcterms","cur","HeadingPairs","TitlesOfParts","widx","Worksheets","parts","SheetNames","Creator","LastModifiedBy","CreatedDate","ModifiedDate","parseCustomProps","toks","substring","parseFloat","console","warn","parseDeps","ctext","parseCT","ct","workbooks","sheets","calcchains","themes","coreprops","extprops","custprops","strs","comments","xmlns","Extension","ContentType","PartName","calcchain","parseRels","currentFilePath","charAt","rels","resolveRelativePathIntoAbsolute","to","toksFrom","pop","toksTo","reversed","tokTo","shift","rel","Type","Target","Id","TargetMode","canonictarget","parse_comments_xml","authors","commentList","trim","comment","author","authorId","ref","guid","decode_cell","sheetRows","textMatch","rt","parse_BrtBeginComment","iauthor","rfx","encode_cell","parse_BrtCommentAuthor","parse_BrtCommentText","parse_comments_bin","parse_comments","dirComments","sheetRels","canonicalpath","parse_cmnt","sheetNames","sheetName","insertCommentsIntoSheet","sheet","range","decode_range","thisCell","encoded","encode_range","a","parse_CellParsedFormula","cce","_ssfopts","parse_ws_xml","mergecells","merges","exec","refguess","sidx","row","cells","cref","sheetStubs","is","epoch","parse","UTC","raw","fmtid","cf","cellNF","tmpref","parse_BrtRowHdr","parse_BrtWsDim","parse_BrtWsProp","parse_BrtCellBlank","parse_BrtCellBool","fBool","parse_BrtCellError","parse_BrtCellIsst","isst","parse_BrtCellReal","parse_BrtCellRk","parse_BrtCellSt","parse_BrtFmlaBool","cellFormula","formula","parse_BrtFmlaError","parse_BrtFmlaNum","parse_BrtFmlaString","parse_BrtMergeCell","parse_ws_bin","end","WBPropsDef","allowRefreshQuery","autoCompressPictures","backupFile","checkCompatibility","codeName","dateCompatibility","filterPrivacy","hidePivotFieldList","promptedSolutions","publishItems","refreshAllConnections","saveExternalLinkValues","showBorderUnselectedTables","showInkAnnotation","showObjects","showPivotChartFilter","WBViewDef","activeTab","autoFilterDateGrouping","firstSheet","minimized","showHorizontalScroll","showSheetTabs","showVerticalScroll","tabRatio","visibility","SheetDef","CalcPrDef","calcCompleted","calcMode","calcOnSave","concurrentCalc","fullCalcOnLoad","fullPrecision","iterate","iterateCount","iterateDelta","refMode","CustomWBViewDef","autoUpdate","changesSavedWin","includeHiddenRowCol","includePrintSettings","maximized","onlySync","personalView","showComments","showFormulaBar","showStatusbar","xWindow","yWindow","XMLNS_WB","parse_wb_xml","wb","AppVersion","WBProps","WBView","Sheets","CalcPr","parse_BrtBundleSh","hsState","iTabID","strRelID","parse_wb_bin","parse_wb","parse_ws","parse_sty","parse_sst",5,6,8,24,25,26,27,28,30,31,32,33,34,35,44,50,51,52,53,54,55,57,58,59,60,62,64,65,66,67,68,69,70,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,357,358,359,360,361,362,363,364,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,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,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,530,531,532,533,534,535,536,537,538,539,540,541,542,548,549,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,620,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,671,672,673,674,675,676,677,678,679,680,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,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,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,2048,2049,2050,2051,2052,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,"defaults","parseZip","entries","sort","dir","xlsb","binname","bookSheets","bookProps","props","propdata","Props","Custprops","deps","bookDeps","path","relsPath","wbsheets","nmode","Directory","Workbook","Deps","Strings","Styles","bookFiles","readSync","options","readFileSync","base64","readFile","encode_col","encode_row","decode_col","decode_row","rowstr","split_cell","cstr","splt","sheet_to_row_object_array","hdr","isempty","C","utils","create","__rowNum__","sheet_to_csv","txt","fs","FS","RS","make_csv","get_formulae","ws","cmds"],"mappings":"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"}
\ No newline at end of file
diff --git a/package.json b/package.json
index b6fda96..3e7c6dc 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "xlsx",
- "version": "0.5.13",
+ "version": "0.5.14",
"author": "sheetjs",
"description": "XLSB / XLSX / XLSM (Excel 2007+ Spreadsheet) parser",
"keywords": [ "xlsx", "xlsb", "xlsm", "office", "excel", "spreadsheet" ],
@@ -9,7 +9,7 @@
},
"main": "./xlsx",
"dependencies": {
- "ssf":"~0.5.9",
+ "ssf":"~0.6.1",
"codepage":"",
"cfb":"",
"jszip":"~2.1.0",
diff --git a/test.js b/test.js
index 70fa78b..851e06f 100644
--- a/test.js
+++ b/test.js
@@ -154,46 +154,38 @@ describe('options', function() {
it('should not generate sheet stubs by default', function() {
var wb = XLSX.readFile(dir+'merge_cells.xlsx');
assert.throws(function() { wb.Sheets.Merge.A2.v; });
+ wb = XLSX.readFile(dir+'merge_cells.xlsb');
+ assert.throws(function() { wb.Sheets.Merge.A2.v; });
});
it('should generate sheet stubs when requested', function() {
var wb = XLSX.readFile(dir+'merge_cells.xlsx', {sheetStubs:true});
assert(typeof wb.Sheets.Merge.A2.t !== 'undefined');
+ wb = XLSX.readFile(dir+'merge_cells.xlsb', {sheetStubs:true});
+ assert.throws(function() { wb.Sheets.Merge.A2.v; });
});
+ function checkcells(wb, A46, B26, C16, D2) {
+ assert((typeof wb.Sheets.Text.A46 !== 'undefined') == A46);
+ assert((typeof wb.Sheets.Text.B26 !== 'undefined') == B26);
+ assert((typeof wb.Sheets.Text.C16 !== 'undefined') == C16);
+ assert((typeof wb.Sheets.Text.D2 !== 'undefined') == D2);
+ }
it('should read all cells by default', function() {
var wb = XLSX.readFile(dir+'formula_stress_test.xlsb');
- assert(typeof wb.Sheets.Text.A46 !== 'undefined');
- assert(typeof wb.Sheets.Text.B26 !== 'undefined');
- assert(typeof wb.Sheets.Text.C16 !== 'undefined');
- assert(typeof wb.Sheets.Text.D2 !== 'undefined');
+ checkcells(wb, true, true, true, true);
wb = XLSX.readFile(dir+'formula_stress_test.xlsx');
- assert(typeof wb.Sheets.Text.A46 !== 'undefined');
- assert(typeof wb.Sheets.Text.B26 !== 'undefined');
- assert(typeof wb.Sheets.Text.C16 !== 'undefined');
- assert(typeof wb.Sheets.Text.D2 !== 'undefined');
+ checkcells(wb, true, true, true, true);
});
it('sheetRows n=20', function() {
var wb = XLSX.readFile(dir+'formula_stress_test.xlsx', {sheetRows:20});
- assert(typeof wb.Sheets.Text.A46 === 'undefined');
- assert(typeof wb.Sheets.Text.B26 === 'undefined');
- assert(typeof wb.Sheets.Text.C16 !== 'undefined');
- assert(typeof wb.Sheets.Text.D2 !== 'undefined');
+ checkcells(wb, false, false, true, true);
wb = XLSX.readFile(dir+'formula_stress_test.xlsb', {sheetRows:20});
- assert(typeof wb.Sheets.Text.A46 === 'undefined');
- assert(typeof wb.Sheets.Text.B26 === 'undefined');
- assert(typeof wb.Sheets.Text.C16 !== 'undefined');
- assert(typeof wb.Sheets.Text.D2 !== 'undefined');
+ checkcells(wb, false, false, true, true);
});
it('sheetRows n=10', function() {
var wb = XLSX.readFile(dir+'formula_stress_test.xlsb', {sheetRows:10});
- assert(typeof wb.Sheets.Text.A46 === 'undefined');
- assert(typeof wb.Sheets.Text.B26 === 'undefined');
- assert(typeof wb.Sheets.Text.C16 === 'undefined');
- assert(typeof wb.Sheets.Text.D2 !== 'undefined');
+ checkcells(wb, false, false, false, true);
wb = XLSX.readFile(dir+'formula_stress_test.xlsx', {sheetRows:10});
- assert(typeof wb.Sheets.Text.A46 === 'undefined');
- assert(typeof wb.Sheets.Text.B26 === 'undefined');
- assert(typeof wb.Sheets.Text.C16 === 'undefined');
- assert(typeof wb.Sheets.Text.D2 !== 'undefined');
+ checkcells(wb, false, false, false, true);
});
});
describe('book', function() {
@@ -248,42 +240,49 @@ describe('input formats', function() {
});
describe('features', function() {
- describe('should have comment as part of cell properties', function(){
- var ws;
- before(function() {
- XLSX = require('./');
- var wb = XLSX.readFile(dir+'apachepoi_SimpleWithComments.xlsx');
- var sheetName = 'Sheet1';
- ws = wb.Sheets[sheetName];
- });
- it('Parse comments.xml and insert into cell',function(){
+ it('should have comment as part of cell properties', function(){
+ var XLSX = require('./');
+ var sheet = 'Sheet1';
+ var wbxlsx=XLSX.readFile(dir+'apachepoi_SimpleWithComments.xlsx');
+ var wbxlsb=XLSX.readFile(dir+'2013/apachepoi_SimpleWithComments.xlsx.xlsb');
+
+ [wbxlsx,wbxlsb].map(function(wb) { return wb.Sheets[sheet]; }).forEach(function(ws, i) {
assert.equal(ws.B1.c.length, 1,"must have 1 comment");
- assert.equal(ws.B1.c[0].t, "Yegor Kozlov:\r\nfirst cell", "must have the concatenated texts");
- assert.equal(ws.B1.c[0].h, 'Yegor Kozlov:
first cell', "must have the html representation");
- assert.equal(ws.B1.c[0].r, 'Yegor Kozlov:\r\nfirst cell', "must have the rich text representation");
assert.equal(ws.B1.c[0].a, "Yegor Kozlov","must have the same author");
+ if(i > 0) return;
+ assert.equal(ws.B1.c[0].t.replace(/\r\n/g,"\n"), "Yegor Kozlov:\nfirst cell", "must have the concatenated texts");
+ assert.equal(ws.B1.c[0].r, 'Yegor Kozlov:\r\nfirst cell', "must have the rich text representation");
+ assert.equal(ws.B1.c[0].h, 'Yegor Kozlov:
first cell', "must have the html representation");
});
});
describe('should parse core properties and custom properties', function() {
- var wb;
+ var wbxlsx, wbxlsb;
before(function() {
XLSX = require('./');
- wb = XLSX.readFile(dir+'custom_properties.xlsx');
+ wbxlsx = XLSX.readFile(dir+'custom_properties.xlsx');
+ wbxlsb = XLSX.readFile(dir+'custom_properties.xlsb');
});
- it('Must have read the core properties', function() {
+
+ function coreprop(wb) {
assert.equal(wb.Props.Company, 'Vector Inc');
assert.equal(wb.Props.Creator, 'Pony Foo');
- });
- it('Must have read the custom properties', function() {
+ }
+ function custprop(wb) {
assert.equal(wb.Custprops['I am a boolean'], true);
assert.equal(wb.Custprops['Date completed'], '1967-03-09T16:30:00Z');
assert.equal(wb.Custprops.Status, 2);
assert.equal(wb.Custprops.Counter, -3.14);
- });
+ }
+
+ it('XLSX should parse core properties', function() { coreprop(wbxlsx); });
+ it('XLSB should parse core properties', function() { coreprop(wbxlsb); });
+
+ it('XLSX should parse custom properties', function() { custprop(wbxlsx); });
+ it('XLSB should parse custom properties', function() { custprop(wbxlsb); });
});
- describe('should parse cells with date type (XLSX/XLSB)', function() {
+ describe('should parse cells with date type (XLSX/XLSM)', function() {
var wb, ws;
before(function() {
XLSX = require('./');
@@ -299,26 +298,30 @@ describe('features', function() {
describe('sheetRows', function() {
it('should use original range if not set', function() {
- var wb = XLSX.readFile(dir+'formula_stress_test.xlsb');
- assert.equal(wb.Sheets.Text["!ref"],"A1:F49");
- wb = XLSX.readFile(dir+'formula_stress_test.xlsx');
- assert.equal(wb.Sheets.Text["!ref"],"A1:F49");
+ var opts = {};
+ var wbxlsb = XLSX.readFile(dir+'formula_stress_test.xlsb', opts);
+ var wbxlsx = XLSX.readFile(dir+'formula_stress_test.xlsx', opts);
+ [wbxlsx, wbxlsb].forEach(function(wb) {
+ assert.equal(wb.Sheets.Text["!ref"],"A1:F49");
+ });
});
it('should adjust range if set', function() {
- var wb = XLSX.readFile(dir+'formula_stress_test.xlsx', {sheetRows:10});
- assert.equal(wb.Sheets.Text["!fullref"],"A1:F49");
- assert.equal(wb.Sheets.Text["!ref"],"A1:F10");
- wb = XLSX.readFile(dir+'formula_stress_test.xlsb', {sheetRows:10});
- assert.equal(wb.Sheets.Text["!fullref"],"A1:F49");
- assert.equal(wb.Sheets.Text["!ref"],"A1:F10");
+ var opts = {sheetRows:10};
+ var wbxlsb = XLSX.readFile(dir+'formula_stress_test.xlsb', opts);
+ var wbxlsx = XLSX.readFile(dir+'formula_stress_test.xlsx', opts);
+ [wbxlsx, wbxlsb].forEach(function(wb) {
+ assert.equal(wb.Sheets.Text["!fullref"],"A1:F49");
+ assert.equal(wb.Sheets.Text["!ref"],"A1:F10");
+ });
});
it('should not generate comment cells', function() {
- var wb = XLSX.readFile(dir+'comments_stress_test.xlsx', {sheetRows:10});
- assert.equal(wb.Sheets.Sheet7["!fullref"],"A1:N34");
- assert.equal(wb.Sheets.Sheet7["!ref"],"A1:A1");
- wb = XLSX.readFile(dir+'comments_stress_test.xlsb', {sheetRows:10});
- assert.equal(wb.Sheets.Sheet7["!fullref"],"A1:N34");
- assert.equal(wb.Sheets.Sheet7["!ref"],"A1:A1");
+ var opts = {sheetRows:10};
+ var wbxlsb = XLSX.readFile(dir+'comments_stress_test.xlsb', opts);
+ var wbxlsx = XLSX.readFile(dir+'comments_stress_test.xlsx', opts);
+ [wbxlsx, wbxlsb].forEach(function(wb) {
+ assert.equal(wb.Sheets.Sheet7["!fullref"],"A1:N34");
+ assert.equal(wb.Sheets.Sheet7["!ref"],"A1:A1");
+ });
});
});
@@ -337,3 +340,18 @@ describe('features', function() {
});
});
});
+
+describe('invalid files', function() {
+ it('should fail on passwords', function() {
+ assert.throws(function() { XLSX.readFile(dir + 'excel-reader-xlsx_error03.xlsx'); });
+ });
+ it('should fail on XLS files', function() {
+ assert.throws(function() { XLSX.readFile(dir + 'roo_type_excel.xlsx'); });
+ });
+ it('should fail on ODS files', function() {
+ assert.throws(function() { XLSX.readFile(dir + 'roo_type_openoffice.xlsx');});
+ });
+ it('should fail on DOC files', function() {
+ assert.throws(function() { XLSX.readFile(dir + 'word_doc.doc');});
+ });
+});
diff --git a/tests.lst b/tests.lst
index 055912c..2c6cc36 100644
--- a/tests.lst
+++ b/tests.lst
@@ -1,4 +1,5 @@
AutoFilter.xlsb
+BlankSheetTypes.xlsb
RkNumber.xlsb
comments_stress_test.xlsb
custom_properties.xlsb
@@ -7,10 +8,22 @@ large_strings.xlsb
merge_cells.xlsb
named_ranges_2011.xlsb
number_format.xlsb
+pivot_table_named_range.xlsb
pivot_table_test.xlsb
rich_text_stress.xlsb
time_stress_test_1.xlsb
xlsx-stream-d-date-cell.xlsb
+2013/apachepoi_29982.xls.xlsb
+2013/apachepoi_43251.xls.xlsb
+2013/apachepoi_44593.xls.xlsb
+2013/apachepoi_44643.xls.xlsb
+2013/apachepoi_44958.xls.xlsb
+2013/apachepoi_46136-NoWarnings.xls.xlsb
+2013/apachepoi_48968.xls.xlsb
+2013/apachepoi_50939.xls.xlsb
+2013/apachepoi_54016.xls.xlsb
+2013/apachepoi_ReadOnlyRecommended.xls.xlsb
+2013/apachepoi_testArraysAndTables.xls.xlsb
AutoFilter.xlsx
LONumbers-2010.xlsx
LONumbers-2011.xlsx
@@ -191,6 +204,7 @@ openpyxl_r_date_1904.xlsx
openpyxl_r_formulae.xlsx
openpyxl_r_null_archive.xlsx.pending
openpyxl_r_null_file.xlsx.pending
+pivot_table_named_range.xlsx
rich_text_stress.xlsx
roo_1900_base.xlsx
roo_1904_base.xlsx
@@ -208,6 +222,7 @@ roo_formula.xlsx
roo_formula_string_error.xlsx
roo_link.xlsx
roo_named_cells.xlsx
+roo_numbers-export.xlsx
roo_numbers1.xlsx
roo_numeric-link.xlsx
roo_only_one_sheet.xlsx
@@ -240,6 +255,7 @@ xlrd_test_comments_gdocs.xlsx
xlrd_text_bar.xlsx
xlsx-stream-d-date-cell.xlsx
חישוב_נקודות_זיכוי.xlsx
+BlankSheetTypes.xlsm
apachepoi_45431.xlsm
apachepoi_47026.xlsm
apachepoi_47089.xlsm
diff --git a/tests/files b/tests/files
index 95f6e55..a056111 160000
--- a/tests/files
+++ b/tests/files
@@ -1 +1 @@
-Subproject commit 95f6e5509f22f8f8f757a342a3906dc3b6835cc4
+Subproject commit a056111d30799597f1b92dc1197f04a1f86cad78
diff --git a/xlsx.js b/xlsx.js
index 66e4259..e9071ef 100644
--- a/xlsx.js
+++ b/xlsx.js
@@ -9,7 +9,7 @@ var _strrev = function(x) { return String(x).split("").reverse().join("");};
function fill(c,l) { return new Array(l+1).join(c); }
function pad(v,d,c){var t=String(v);return t.length>=d?t:(fill(c||0,d-t.length)+t);}
function rpad(v,d,c){var t=String(v);return t.length>=d?t:(t+fill(c||0,d-t.length));}
-SSF.version = '0.5.9';
+SSF.version = '0.6.1';
/* Options */
var opts_fmt = {};
function fixopts(o){for(var y in opts_fmt) if(o[y]===undefined) o[y]=opts_fmt[y];}
@@ -124,6 +124,10 @@ var parse_date_code = function parse_date_code(v,opts) {
var dout=[], out={D:date, T:time, u:86400*(v-date)-time}; fixopts(opts = (opts||{}));
if(opts.date1904) date += 1462;
if(date > 2958465) return null;
+ if(out.u > .999) {
+ out.u = 0;
+ if(++time == 86400) { time = 0; ++date; }
+ }
if(date === 60) {dout = [1900,2,29]; dow=3;}
else if(date === 0) {dout = [1900,1,0]; dow=6;}
else {
@@ -146,7 +150,7 @@ SSF.parse_date_code = parse_date_code;
/*jshint -W086 */
var write_date = function(type, fmt, val) {
if(val < 0) return "";
- var o;
+ var o, ss;
switch(type) {
case 'y': switch(fmt) { /* year */
case 'y': case 'yy': return pad(val.y % 100,2);
@@ -181,11 +185,11 @@ var write_date = function(type, fmt, val) {
default: throw 'bad minute format: ' + fmt;
}
case 's': switch(fmt) { /* seconds */
- case 's': return Math.round(val.S+val.u);
- case 'ss': return pad(Math.round(val.S+val.u), 2);
- case 'ss.0': o = pad(Math.round(10*(val.S+val.u)),3); return o.substr(0,2)+"." + o.substr(2);
- case 'ss.00': o = pad(Math.round(100*(val.S+val.u)),4); return o.substr(0,2)+"." + o.substr(2);
- case 'ss.000': o = pad(Math.round(1000*(val.S+val.u)),5); return o.substr(0,2)+"." + o.substr(2);
+ case 's': ss=Math.round(val.S+val.u); return ss >= 60 ? 0 : ss;
+ case 'ss': ss=Math.round(val.S+val.u); if(ss>=60) ss=0; return pad(ss,2);
+ case 'ss.0': ss=Math.round(10*(val.S+val.u)); if(ss>=600) ss = 0; o = pad(ss,3); return o.substr(0,2)+"." + o.substr(2);
+ case 'ss.00': ss=Math.round(100*(val.S+val.u)); if(ss>=6000) ss = 0; o = pad(ss,4); return o.substr(0,2)+"." + o.substr(2);
+ case 'ss.000': ss=Math.round(1000*(val.S+val.u)); if(ss>=60000) ss = 0; o = pad(ss,5); return o.substr(0,2)+"." + o.substr(2);
default: throw 'bad second format: ' + fmt;
}
case 'Z': switch(fmt) {
@@ -209,6 +213,8 @@ var write_num = function(type, fmt, val) {
var mul = 0, o;
fmt = fmt.replace(/%/g,function(x) { mul++; return ""; });
if(mul !== 0) return write_num(type, fmt, val * Math.pow(10,2*mul)) + fill("%",mul);
+ fmt = fmt.replace(/(\.0+)(,+)$/g,function($$,$1,$2) { mul=$2.length; return $1; });
+ if(mul !== 0) return write_num(type, fmt, val / Math.pow(10,3*mul));
if(fmt.indexOf("E") > -1) {
var idx = fmt.indexOf("E") - fmt.indexOf(".") - 1;
if(fmt.match(/^#+0.0E\+0$/)) {
@@ -242,11 +248,12 @@ var write_num = function(type, fmt, val) {
if(fmt.match(/^#+0+$/)) fmt = fmt.replace(/#/g,"");
if(fmt.match(/^00+$/)) return (val<0?"-":"")+pad(Math.round(aval),fmt.length);
if(fmt.match(/^[#?]+$/)) return String(Math.round(val)).replace(/^0$/,"");
- if((r = fmt.match(/^#*0+\.(0+)/))) {
+ if((r = fmt.match(/^#*0*\.(0+)/))) {
o = Math.round(val * Math.pow(10,r[1].length));
- return String(o/Math.pow(10,r[1].length)).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.([0-9]*)$/,function($$, $1) { return "." + $1 + fill("0", r[1].length-$1.length); });
+ rr = String(o/Math.pow(10,r[1].length)).replace(/^([^\.]+)$/,"$1."+r[1]).replace(/\.$/,"."+r[1]).replace(/\.([0-9]*)$/,function($$, $1) { return "." + $1 + fill("0", r[1].length-$1.length); });
+ return fmt.match(/0\./) ? rr : rr.replace(/^0\./,".");
}
- fmt = fmt.replace(/^#+0/, "0");
+ fmt = fmt.replace(/^#+([0.])/, "$1");
if((r = fmt.match(/^(0*)\.(#*)$/))) {
o = Math.round(aval*Math.pow(10,r[2].length));
return sign + String(o / Math.pow(10,r[2].length)).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^([-]?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".");
@@ -256,15 +263,23 @@ var write_num = function(type, fmt, val) {
rr = Math.round((val-Math.floor(val))*Math.pow(10,r[1].length));
return val < 0 ? "-" + write_num(type, fmt, -val) : commaify(String(Math.floor(val))) + "." + pad(rr,r[1].length,0);
}
+ if((r = fmt.match(/^#,#*,#0/))) return write_num(type,fmt.replace(/^#,#*,/,""),val);
+ if((r = fmt.match(/^([?]+)([ ]?)\/([ ]?)([?]+)/))) {
+ rr = Math.min(Math.max(r[1].length, r[4].length),7);
+ ff = frac(aval, Math.pow(10,rr)-1, false);
+ return sign + (ff[0]||(ff[1] ? "" : "0")) + (ff[1] ? pad(ff[1],rr," ") + r[2] + "/" + r[3] + rpad(ff[2],rr," "): fill(" ", 2*rr+1 + r[2].length + r[3].length));
+ }
if((r = fmt.match(/^# ([?]+)([ ]?)\/([ ]?)([?]+)/))) {
rr = Math.min(Math.max(r[1].length, r[4].length),7);
ff = frac(aval, Math.pow(10,rr)-1, true);
return sign + (ff[0]||(ff[1] ? "" : "0")) + " " + (ff[1] ? pad(ff[1],rr," ") + r[2] + "/" + r[3] + rpad(ff[2],rr," "): fill(" ", 2*rr+1 + r[2].length + r[3].length));
}
+ if((r = fmt.match(/^00,000\.([#0]*0)$/))) {
+ rr = val == Math.floor(val) ? 0 : Math.round((val-Math.floor(val))*Math.pow(10,r[1].length));
+ return val < 0 ? "-" + write_num(type, fmt, -val) : commaify(String(Math.floor(val))).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$) { return "00," + ($$.length < 3 ? pad(0,3-$$.length) : "") + $$; }) + "." + pad(rr,r[1].length,0);
+ }
switch(fmt) {
case "0": case "#0": return Math.round(val);
- case "#.##": o = Math.round(val*100);
- return String(o/100).replace(/^([^\.]+)$/,"$1.").replace(/^0\.$/,".");
case "#,###": var x = commaify(String(Math.round(aval))); return x !== "0" ? sign + x : "";
default:
}
@@ -309,7 +324,7 @@ function eval_fmt(fmt, v, opts, flen) {
case 'M': case 'D': case 'Y': case 'H': case 'S': case 'E':
c = c.toLowerCase();
/* falls through */
- case 'm': case 'd': case 'y': case 'h': case 's': case 'e':
+ case 'm': case 'd': case 'y': case 'h': case 's': case 'e': case 'g':
if(v < 0) return "";
if(!dt) dt = parse_date_code(v, opts);
if(!dt) return "";
@@ -344,7 +359,7 @@ function eval_fmt(fmt, v, opts, flen) {
case '?':
o = fmt[i]; while(fmt[++i] === c) o+=c;
q={t:c, v:o}; out.push(q); lst = c; break;
- case '*': ++i; if(fmt[i] == ' ') ++i; break; // **
+ case '*': ++i; if(fmt[i] == ' ' || fmt[i] == '*') ++i; break; // **
case '(': case ')': out.push({t:(flen===1?'t':c),v:c}); ++i; break;
case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9':
o = fmt[i]; while("0123456789".indexOf(fmt[++i]) > -1) o+=fmt[i];
@@ -356,22 +371,38 @@ function eval_fmt(fmt, v, opts, flen) {
out.push({t:'t', v:c}); ++i; break;
}
}
-
- /* walk backwards */
+ var bt = 0;
for(i=out.length-1, lst='t'; i >= 0; --i) {
switch(out[i].t) {
- case 'h': case 'H': out[i].t = hr; lst='h'; break;
- case 'd': case 'y': case 's': case 'M': case 'e': lst=out[i].t; break;
- case 'm': if(lst === 's') out[i].t = 'M'; break;
+ case 'h': case 'H': out[i].t = hr; lst='h'; if(bt < 1) bt = 1; break;
+ case 's': if(bt < 3) bt = 3;
+ /* falls through */
+ case 'd': case 'y': case 'M': case 'e': lst=out[i].t; break;
+ case 'm': if(lst === 's') { out[i].t = 'M'; if(bt < 2) bt = 2; } break;
+ case 'Z':
+ if(bt < 1 && out[i].v.match(/[Hh]/)) bt = 1;
+ if(bt < 2 && out[i].v.match(/[Mm]/)) bt = 2;
+ if(bt < 3 && out[i].v.match(/[Ss]/)) bt = 3;
}
}
-
+ switch(bt) {
+ case 0: break;
+ case 1:
+ if(dt.u >= .5) { dt.u = 0; ++dt.S; }
+ if(dt.S >= 60) { dt.S = 0; ++dt.M; }
+ if(dt.M >= 60) { dt.M = 0; ++dt.H; }
+ break;
+ case 2:
+ if(dt.u >= .5) { dt.u = 0; ++dt.S; }
+ if(dt.S >= 60) { dt.S = 0; ++dt.M; }
+ break;
+ }
/* replace fields */
for(i=0; i < out.length; ++i) {
switch(out[i].t) {
case 't': case 'T': case ' ': case 'D': break;
case 'd': case 'm': case 'y': case 'h': case 'H': case 'M': case 's': case 'e': case 'Z':
- out[i].v = write_date(out[i].t, out[i].v, dt);
+ out[i].v = write_date(out[i].t, out[i].v, dt, bt);
out[i].t = 't'; break;
case 'n': case '(': case '?':
var jj = i+1;
@@ -424,7 +455,7 @@ SSF.load_table = function(tbl) { for(var i=0; i!=0x0188; ++i) if(tbl[i]) SSF.loa
make_ssf(SSF);
var XLSX = {};
(function(XLSX){
-XLSX.version = '0.5.13';
+XLSX.version = '0.5.14';
var current_codepage, current_cptable, cptable;
if(typeof module !== "undefined" && typeof require !== 'undefined') {
if(typeof cptable === 'undefined') cptable = require('codepage');
@@ -663,6 +694,7 @@ var parse_RichStr = function(data, length) {
/* TODO: formatted string */
var dwSizeStrRun = data.read_shift(4);
for(var i = 0; i != dwSizeStrRun; ++i) rgsStrRun.push(parse_StrRun(data));
+ z.r = JSON.stringify(rgsStrRun);
}
if(fExtStr) {
/* TODO: phonetic string */
@@ -735,6 +767,35 @@ var BErr = {
};
var RBErr = evert(BErr);
+/* [MS-XLSB] 2.4.321 BrtColor */
+function parse_BrtColor(data, length) {
+ var read = data.read_shift.bind(data);
+ var out = {};
+ var d = read(1);
+ out.fValidRGB = d & 1;
+ out.xColorType = d >>> 1;
+ out.index = read(1)
+ out.nTintAndShade = read(2, 'i');
+ out.bRed = read(1);
+ out.bGreen = read(1);
+ out.bBlue = read(1);
+ out.bAlpha = read(1);
+}
+
+/* [MS-XLSB 2.5.52 */
+function parse_FontFlags(data, length) {
+ var d = data.read_shift(1);
+ data.l++;
+ var out = {
+ fItalic: d & 0x2,
+ fStrikeout: d & 0x8,
+ fOutline: d & 0x10,
+ fShadow: d & 0x20,
+ fCondense: d & 0x40,
+ fExtend: d & 0x80,
+ };
+ return out;
+}
/* Parse a list of tags */
var parse_rs = (function() {
var tregex = matchtag("t"), rpregex = matchtag("rPr");
@@ -974,6 +1035,34 @@ function parse_BrtFmt(data, length) {
return [ifmt, stFmtCode];
}
+/* [MS-XLSB] 2.4.653 BrtFont TODO */
+function parse_BrtFont(data, length) {
+ var read = data.read_shift.bind(data);
+ var out = {flags:{}};
+ out.dyHeight = read(2);
+ out.grbit = parse_FontFlags(data, 2);
+ out.bls = read(2);
+ out.sss = read(2);
+ out.uls = read(1);
+ out.bFamily = read(1);
+ out.bCharSet = read(1);
+ data.l++;
+ out.brtColor = parse_BrtColor(data, 8);
+ out.bFontScheme = read(1);
+ out.name = parse_XLWideString(data, length - 21);
+
+ out.flags.Bold = out.bls === 0x02BC;
+ out.flags.Italic = out.grbit.fItalic;
+ out.flags.Strikeout = out.grbit.fStrikeout;
+ out.flags.Outline = out.grbit.fOutline;
+ out.flags.Shadow = out.grbit.fShadow;
+ out.flags.Condense = out.grbit.fCondense;
+ out.flags.Extend = out.grbit.fExtend;
+ out.flags.Sub = out.sss & 0x2;
+ out.flags.Sup = out.sss & 0x1;
+ return out;
+}
+
/* [MS-XLSB] 2.4.816 BrtXF */
function parse_BrtXF(data, length) {
var ixfeParent = data.read_shift(2);
@@ -1074,11 +1163,13 @@ var ct2type = {
"application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml": "calcchains", /*XLS[XM]*/
//"application/vnd.ms-excel.calcChain": "calcchains", /*XLSB*/
+ "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": "comments", /*XLS[XM]*/
+ "application/vnd.ms-excel.comments": "comments", /*XLSB*/
+
"application/vnd.openxmlformats-package.core-properties+xml": "coreprops",
"application/vnd.openxmlformats-officedocument.extended-properties+xml": "extprops",
"application/vnd.openxmlformats-officedocument.custom-properties+xml": "custprops",
"application/vnd.openxmlformats-officedocument.theme+xml":"themes",
- "application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml": "comments",
"foo": "bar"
};
@@ -1269,11 +1360,55 @@ function parse_comments_xml(data, opts) {
});
return commentList;
}
+/* [MS-XLSB] 2.4.28 BrtBeginComment */
+var parse_BrtBeginComment = function(data, length) {
+ var out = {};
+ out.iauthor = data.read_shift(4);
+ var rfx = parse_UncheckedRfX(data, 16);
+ out.rfx = rfx.s;
+ out.ref = encode_cell(rfx.s);
+ data.l += 16; /*var guid = parse_GUID(data); */
+ return out;
+};
+
+/* [MS-XLSB] 2.4.324 BrtCommentAuthor */
+var parse_BrtCommentAuthor = parse_XLWideString;
+
+/* [MS-XLSB] 2.4.325 BrtCommentText */
+var parse_BrtCommentText = parse_RichStr;
+
+/* [MS-XLSB] 2.1.7.8 Comments */
+function parse_comments_bin(data, opts) {
+ var out = [];
+ var authors = [];
+ var c = {};
+ var pass = false;
+ recordhopper(data, function(val, R, RT) {
+ switch(R.n) {
+ case 'BrtCommentAuthor': authors.push(val); break;
+ case 'BrtBeginComment': c = val; break;
+ case 'BrtCommentText': c.t = val.t; c.h = val.h; c.r = val.r; break;
+ case 'BrtEndComment':
+ c.author = authors[c.iauthor];
+ delete c.iauthor;
+ if(opts.sheetRows && opts.sheetRows <= c.rfx.r) break;
+ delete c.rfx; out.push(c); break;
+ case 'BrtBeginComments': break;
+ case 'BrtEndComments': break;
+ case 'BrtBeginCommentAuthors': break;
+ case 'BrtEndCommentAuthors': break;
+ case 'BrtBeginCommentList': break;
+ case 'BrtEndCommentList': break;
+ default: if(!pass || opts.WTF) throw new Error("Unexpected record " + RT + " " + R.n);
+ }
+ });
+ return out;
+}
function parse_comments(zip, dirComments, sheets, sheetRels, opts) {
for(var i = 0; i != dirComments.length; ++i) {
var canonicalpath=dirComments[i];
- var comments=parse_comments_xml(getzipdata(zip, canonicalpath.replace(/^\//,''), true), opts);
+ var comments=parse_cmnt(getzipdata(zip, canonicalpath.replace(/^\//,''), true), canonicalpath, opts);
if(!comments || !comments.length) continue;
// find the sheets targeted by these comments
var sheetNames = Object.keys(sheets);
@@ -1636,6 +1771,7 @@ var parse_ws_bin = function(data, opts) {
case 'BrtHLink': break; // TODO
case 'BrtDrawing': break; // TODO
case 'BrtLegacyDrawing': break; // TODO
+ case 'BrtLegacyDrawingHF': break; // TODO
case 'BrtPhoneticInfo': break; // TODO
case 'BrtBeginHeaderFooter': break; // TODO
case 'BrtEndHeaderFooter': break; // TODO
@@ -1667,6 +1803,11 @@ var parse_ws_bin = function(data, opts) {
case 'BrtDVal': break; // TODO
case 'BrtEndDVals': break; // TODO
case 'BrtRangeProtection': break; // TODO
+ case 'BrtBeginDCon': break; // TODO
+ case 'BrtEndDCon': break; // TODO
+ case 'BrtBeginDRefs': break;
+ case 'BrtDRef': break;
+ case 'BrtEndDRefs': break;
/* ActiveX */
case 'BrtBeginActiveXControls': break;
@@ -1687,6 +1828,19 @@ var parse_ws_bin = function(data, opts) {
case 'BrtCustomFilter': break;
case 'BrtEndCustomFilters': break;
+ /* Cell Watch */
+ case 'BrtBeginCellWatches': break;
+ case 'BrtCellWatch': break;
+ case 'BrtEndCellWatches': break;
+
+ /* Table */
+ case 'BrtTable': break;
+
+ /* Ignore Cell Errors */
+ case 'BrtBeginCellIgnoreECs': break;
+ case 'BrtCellIgnoreEC': break;
+ case 'BrtEndCellIgnoreECs': break;
+
default: if(!pass || opts.WTF) throw new Error("Unexpected record " + R.n);
}
}, opts);
@@ -1955,6 +2109,7 @@ var parse_wb_bin = function(data, opts) {
case 'BrtEndPivotCacheIDs': break;
case 'BrtWebOpt': break;
case 'BrtFileRecover': break;
+ case 'BrtFileSharing': break;
/*case 'BrtBeginWebPubItems': break;
case 'BrtBeginWebPubItem': break;
case 'BrtEndWebPubItem': break;
@@ -1992,6 +2147,10 @@ function parse_sty(data, name, opts) {
function parse_sst(data, name, opts) {
return name.substr(-4)===".bin" ? parse_sst_bin(data, opts) : parse_sst_xml(data, opts);
}
+
+function parse_cmnt(data, name, opts) {
+ return name.substr(-4)===".bin" ? parse_comments_bin(data, opts) : parse_comments_xml(data, opts);
+}
/* [MS-XLSB] 2.3 Record Enumeration */
var RecordEnum = {
0x0000: { n:"BrtRowHdr", f:parse_BrtRowHdr },
@@ -2029,7 +2188,7 @@ var RecordEnum = {
0x0027: { n:"BrtName", f:parsenoop },
0x0028: { n:"BrtIndexRowBlock", f:parsenoop },
0x002A: { n:"BrtIndexBlock", f:parsenoop },
- 0x002B: { n:"BrtFont", f:parsenoop },
+ 0x002B: { n:"BrtFont", f:parse_BrtFont },
0x002C: { n:"BrtFmt", f:parse_BrtFmt },
0x002D: { n:"BrtFill", f:parsenoop },
0x002E: { n:"BrtBorder", f:parsenoop },
@@ -2537,12 +2696,12 @@ var RecordEnum = {
0x0275: { n:"BrtEndComments", f:parsenoop },
0x0276: { n:"BrtBeginCommentAuthors", f:parsenoop },
0x0277: { n:"BrtEndCommentAuthors", f:parsenoop },
- 0x0278: { n:"BrtCommentAuthor", f:parsenoop },
+ 0x0278: { n:"BrtCommentAuthor", f:parse_BrtCommentAuthor },
0x0279: { n:"BrtBeginCommentList", f:parsenoop },
0x027A: { n:"BrtEndCommentList", f:parsenoop },
- 0x027B: { n:"BrtBeginComment", f:parsenoop },
+ 0x027B: { n:"BrtBeginComment", f:parse_BrtBeginComment},
0x027C: { n:"BrtEndComment", f:parsenoop },
- 0x027D: { n:"BrtCommentText", f:parsenoop },
+ 0x027D: { n:"BrtCommentText", f:parse_BrtCommentText },
0x027E: { n:"BrtBeginOleObjects", f:parsenoop },
0x027F: { n:"BrtOleObject", f:parsenoop },
0x0280: { n:"BrtEndOleObjects", f:parsenoop },