@ai-matrx/alchemy 0.20.6 → 0.22.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +38 -0
- package/dist/core.cjs +1 -6
- package/dist/core.cjs.map +1 -1
- package/dist/core.d.cts +2 -6
- package/dist/core.d.ts +2 -6
- package/dist/core.js +1 -6
- package/dist/core.js.map +1 -1
- package/dist/index.cjs +1 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -6
- package/dist/index.d.ts +2 -6
- package/dist/index.js +1 -6
- package/dist/index.js.map +1 -1
- package/dist/operate-read.cjs +1 -1
- package/dist/operate-read.cjs.map +1 -1
- package/dist/operate-read.d.cts +5 -69
- package/dist/operate-read.d.ts +5 -69
- package/dist/operate-read.js +1 -1
- package/dist/operate-read.js.map +1 -1
- package/dist/operate-xlsx.cjs +2 -148
- package/dist/operate-xlsx.cjs.map +1 -1
- package/dist/operate-xlsx.d.cts +8 -1225
- package/dist/operate-xlsx.d.ts +8 -1225
- package/dist/operate-xlsx.js +2 -148
- package/dist/operate-xlsx.js.map +1 -1
- package/dist/operate.cjs +1 -6
- package/dist/operate.cjs.map +1 -1
- package/dist/operate.d.cts +2 -6
- package/dist/operate.d.ts +2 -6
- package/dist/operate.js +1 -6
- package/dist/operate.js.map +1 -1
- package/dist/react-surface.cjs +3 -0
- package/dist/react-surface.cjs.map +1 -0
- package/dist/react-surface.d.cts +19 -0
- package/dist/react-surface.d.ts +19 -0
- package/dist/react-surface.js +3 -0
- package/dist/react-surface.js.map +1 -0
- package/dist/react-workspace.cjs +2 -2
- package/dist/react-workspace.cjs.map +1 -1
- package/dist/react-workspace.d.cts +3 -6
- package/dist/react-workspace.d.ts +3 -6
- package/dist/react-workspace.js +2 -2
- package/dist/react-workspace.js.map +1 -1
- package/package.json +14 -3
package/dist/operate-xlsx.cjs
CHANGED
|
@@ -1,150 +1,4 @@
|
|
|
1
|
-
"use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __esm=(fn,res,err)=>function(){if(err)throw err[0];try{return fn&&(res=(0,fn[__getOwnPropNames(fn)[0]])(fn=0)),res}catch(e){throw err=[e],e}};var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var xlsx_exports={};__export(xlsx_exports,{CFB:()=>CFB,SSF:()=>SSF,default:()=>xlsx_default,parse_xlscfb:()=>parse_xlscfb,parse_zip:()=>parse_zip,read:()=>readSync,readFile:()=>readFileSync,readFileSync:()=>readFileSync,set_cptable:()=>set_cptable,set_fs:()=>set_fs,stream:()=>__stream,utils:()=>utils,version:()=>version,write:()=>writeSync,writeFile:()=>writeFileSync,writeFileAsync:()=>writeFileAsync,writeFileSync:()=>writeFileSync,writeFileXLSX:()=>writeFileSyncXLSX,writeXLSX:()=>writeSyncXLSX});function reset_ansi(){set_ansi(1252)}function reset_cp(){set_cp(1200),reset_ansi()}function char_codes(data){for(var o=[],i=0,len=data.length;i<len;++i)o[i]=data.charCodeAt(i);return o}function utf16leread(data){for(var o=[],i=0;i<data.length>>1;++i)o[i]=String.fromCharCode(data.charCodeAt(2*i)+(data.charCodeAt(2*i+1)<<8));return o.join("")}function utf16lereadu(data){for(var o=[],i=0;i<data.length>>1;++i)o[i]=String.fromCharCode(data[2*i]+(data[2*i+1]<<8));return o.join("")}function utf16beread(data){for(var o=[],i=0;i<data.length>>1;++i)o[i]=String.fromCharCode(data.charCodeAt(2*i+1)+(data.charCodeAt(2*i)<<8));return o.join("")}function set_cptable(cptable){$cptable=cptable,set_cp=function(cp){current_codepage=cp,set_ansi(cp)},debom=function(data){return data.charCodeAt(0)===255&&data.charCodeAt(1)===254?$cptable.utils.decode(1200,char_codes(data.slice(2))):data},_getchar=function(x){return current_codepage===1200?String.fromCharCode(x):$cptable.utils.decode(current_codepage,[x&255,x>>8])[0]},_getansi=function(x){return $cptable.utils.decode(current_ansi,[x])[0]},cpdoit()}function Base64_encode(input){for(var o="",c1=0,c2=0,c3=0,e1=0,e2=0,e3=0,e4=0,i=0;i<input.length;)c1=input.charCodeAt(i++),e1=c1>>2,c2=input.charCodeAt(i++),e2=(c1&3)<<4|c2>>4,c3=input.charCodeAt(i++),e3=(c2&15)<<2|c3>>6,e4=c3&63,isNaN(c2)?e3=e4=64:isNaN(c3)&&(e4=64),o+=Base64_map.charAt(e1)+Base64_map.charAt(e2)+Base64_map.charAt(e3)+Base64_map.charAt(e4);return o}function Base64_encode_pass(input){for(var o="",c1=0,c2=0,c3=0,e1=0,e2=0,e3=0,e4=0,i=0;i<input.length;)c1=input.charCodeAt(i++),c1>255&&(c1=95),e1=c1>>2,c2=input.charCodeAt(i++),c2>255&&(c2=95),e2=(c1&3)<<4|c2>>4,c3=input.charCodeAt(i++),c3>255&&(c3=95),e3=(c2&15)<<2|c3>>6,e4=c3&63,isNaN(c2)?e3=e4=64:isNaN(c3)&&(e4=64),o+=Base64_map.charAt(e1)+Base64_map.charAt(e2)+Base64_map.charAt(e3)+Base64_map.charAt(e4);return o}function Base64_encode_arr(input){for(var o="",c1=0,c2=0,c3=0,e1=0,e2=0,e3=0,e4=0,i=0;i<input.length;)c1=input[i++],e1=c1>>2,c2=input[i++],e2=(c1&3)<<4|c2>>4,c3=input[i++],e3=(c2&15)<<2|c3>>6,e4=c3&63,isNaN(c2)?e3=e4=64:isNaN(c3)&&(e4=64),o+=Base64_map.charAt(e1)+Base64_map.charAt(e2)+Base64_map.charAt(e3)+Base64_map.charAt(e4);return o}function Base64_decode(input){var o="",c1=0,c2=0,c3=0,e1=0,e2=0,e3=0,e4=0;if(input.slice(0,5)=="data:"){var i=input.slice(0,1024).indexOf(";base64,");i>-1&&(input=input.slice(i+8))}input=input.replace(/[^\w\+\/\=]/g,"");for(var i=0;i<input.length;)e1=Base64_map.indexOf(input.charAt(i++)),e2=Base64_map.indexOf(input.charAt(i++)),c1=e1<<2|e2>>4,o+=String.fromCharCode(c1),e3=Base64_map.indexOf(input.charAt(i++)),c2=(e2&15)<<4|e3>>2,e3!==64&&(o+=String.fromCharCode(c2)),e4=Base64_map.indexOf(input.charAt(i++)),c3=(e3&3)<<6|e4,e4!==64&&(o+=String.fromCharCode(c3));return o}function new_raw_buf(len){return has_buf?Buffer.alloc?Buffer.alloc(len):new Buffer(len):typeof Uint8Array<"u"?new Uint8Array(len):new Array(len)}function new_unsafe_buf(len){return has_buf?Buffer.allocUnsafe?Buffer.allocUnsafe(len):new Buffer(len):typeof Uint8Array<"u"?new Uint8Array(len):new Array(len)}function s2ab(s){if(typeof ArrayBuffer>"u")return s2a(s);for(var buf=new ArrayBuffer(s.length),view=new Uint8Array(buf),i=0;i!=s.length;++i)view[i]=s.charCodeAt(i)&255;return buf}function a2s(data){if(Array.isArray(data))return data.map(function(c){return String.fromCharCode(c)}).join("");for(var o=[],i=0;i<data.length;++i)o[i]=String.fromCharCode(data[i]);return o.join("")}function a2u(data){if(typeof Uint8Array>"u")throw new Error("Unsupported");return new Uint8Array(data)}function ab2a(data){if(typeof ArrayBuffer>"u")throw new Error("Unsupported");if(data instanceof ArrayBuffer)return ab2a(new Uint8Array(data));for(var o=new Array(data.length),i=0;i<data.length;++i)o[i]=data[i];return o}function utf8decode(content){for(var out=[],widx=0,L=content.length+250,o=new_raw_buf(content.length+255),ridx=0;ridx<content.length;++ridx){var c=content.charCodeAt(ridx);if(c<128)o[widx++]=c;else if(c<2048)o[widx++]=192|c>>6&31,o[widx++]=128|c&63;else if(c>=55296&&c<57344){c=(c&1023)+64;var d=content.charCodeAt(++ridx)&1023;o[widx++]=240|c>>8&7,o[widx++]=128|c>>2&63,o[widx++]=128|d>>6&15|(c&3)<<4,o[widx++]=128|d&63}else o[widx++]=224|c>>12&15,o[widx++]=128|c>>6&63,o[widx++]=128|c&63;widx>L&&(out.push(o.slice(0,widx)),widx=0,o=new_raw_buf(65535),L=65530)}return out.push(o.slice(0,widx)),bconcat(out)}function _strrev(x){for(var o="",i=x.length-1;i>=0;)o+=x.charAt(i--);return o}function pad0(v,d){var t=""+v;return t.length>=d?t:fill("0",d-t.length)+t}function pad_(v,d){var t=""+v;return t.length>=d?t:fill(" ",d-t.length)+t}function rpad_(v,d){var t=""+v;return t.length>=d?t:t+fill(" ",d-t.length)}function pad0r1(v,d){var t=""+Math.round(v);return t.length>=d?t:fill("0",d-t.length)+t}function pad0r2(v,d){var t=""+v;return t.length>=d?t:fill("0",d-t.length)+t}function pad0r(v,d){if(v>p2_32||v<-p2_32)return pad0r1(v,d);var i=Math.round(v);return pad0r2(i,d)}function SSF_isgeneral(s,i){return i=i||0,s.length>=7+i&&(s.charCodeAt(i)|32)===103&&(s.charCodeAt(i+1)|32)===101&&(s.charCodeAt(i+2)|32)===110&&(s.charCodeAt(i+3)|32)===101&&(s.charCodeAt(i+4)|32)===114&&(s.charCodeAt(i+5)|32)===97&&(s.charCodeAt(i+6)|32)===108}function SSF_init_table(t){return t||(t={}),t[0]="General",t[1]="0",t[2]="0.00",t[3]="#,##0",t[4]="#,##0.00",t[9]="0%",t[10]="0.00%",t[11]="0.00E+00",t[12]="# ?/?",t[13]="# ??/??",t[14]="m/d/yy",t[15]="d-mmm-yy",t[16]="d-mmm",t[17]="mmm-yy",t[18]="h:mm AM/PM",t[19]="h:mm:ss AM/PM",t[20]="h:mm",t[21]="h:mm:ss",t[22]="m/d/yy h:mm",t[37]="#,##0 ;(#,##0)",t[38]="#,##0 ;[Red](#,##0)",t[39]="#,##0.00;(#,##0.00)",t[40]="#,##0.00;[Red](#,##0.00)",t[45]="mm:ss",t[46]="[h]:mm:ss",t[47]="mmss.0",t[48]="##0.0E+0",t[49]="@",t[56]='"\u4E0A\u5348/\u4E0B\u5348 "hh"\u6642"mm"\u5206"ss"\u79D2 "',t}function SSF_frac(x,D,mixed){for(var sgn=x<0?-1:1,B=x*sgn,P_2=0,P_1=1,P=0,Q_2=1,Q_1=0,Q=0,A=Math.floor(B);Q_1<D&&(A=Math.floor(B),P=A*P_1+P_2,Q=A*Q_1+Q_2,!(B-A<5e-8));)B=1/(B-A),P_2=P_1,P_1=P,Q_2=Q_1,Q_1=Q;if(Q>D&&(Q_1>D?(Q=Q_2,P=P_2):(Q=Q_1,P=P_1)),!mixed)return[0,sgn*P,Q];var q=Math.floor(sgn*P/Q);return[q,sgn*P-q*Q,Q]}function SSF_normalize_xl_unsafe(v){var s=v.toPrecision(16);if(s.indexOf("e")>-1){var m=s.slice(0,s.indexOf("e"));return m=m.indexOf(".")>-1?m.slice(0,m.slice(0,2)=="0."?17:16):m.slice(0,15)+fill("0",m.length-15),m+s.slice(s.indexOf("e"))}var n=s.indexOf(".")>-1?s.slice(0,s.slice(0,2)=="0."?17:16):s.slice(0,15)+fill("0",s.length-15);return Number(n)}function SSF_parse_date_code(v,opts,b2){if(v>2958465||v<0)return null;v=SSF_normalize_xl_unsafe(v);var date=v|0,time=Math.floor(86400*(v-date)),dow=0,dout=[],out={D:date,T:time,u:86400*(v-date)-time,y:0,m:0,d:0,H:0,M:0,S:0,q:0};if(Math.abs(out.u)<1e-6&&(out.u=0),opts&&opts.date1904&&(date+=1462),out.u>.9999&&(out.u=0,++time==86400&&(out.T=time=0,++date,++out.D)),date===60)dout=b2?[1317,10,29]:[1900,2,29],dow=3;else if(date===0)dout=b2?[1317,8,29]:[1900,1,0],dow=6;else{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(),date<60&&(dow=(dow+6)%7),b2&&(dow=SSF_fix_hijri(d,dout))}return 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,out}function SSF_strip_decimal(o){return o.indexOf(".")==-1?o:o.replace(/(?:\.0*|(\.\d*[1-9])0+)$/,"$1")}function SSF_normalize_exp(o){return o.indexOf("E")==-1?o:o.replace(/(?:\.0*|(\.\d*[1-9])0+)[Ee]/,"$1E").replace(/(E[+-])(\d)$/,"$10$2")}function SSF_small_exp(v){var w=v<0?12:11,o=SSF_strip_decimal(v.toFixed(12));return o.length<=w||(o=v.toPrecision(10),o.length<=w)?o:v.toExponential(5)}function SSF_large_exp(v){var o=SSF_strip_decimal(v.toFixed(11));return o.length>(v<0?12:11)||o==="0"||o==="-0"?v.toPrecision(6):o}function SSF_general_num(v){if(!isFinite(v))return isNaN(v)?"#NUM!":"#DIV/0!";var V=Math.floor(Math.log(Math.abs(v))*Math.LOG10E),o;return V>=-4&&V<=-1?o=v.toPrecision(10+V):Math.abs(V)<=9?o=SSF_small_exp(v):V===10?o=v.toFixed(10).substr(0,12):o=SSF_large_exp(v),SSF_strip_decimal(SSF_normalize_exp(o.toUpperCase()))}function SSF_general(v,opts){switch(typeof v){case"string":return v;case"boolean":return v?"TRUE":"FALSE";case"number":return(v|0)===v?v.toString(10):SSF_general_num(v);case"undefined":return"";case"object":if(v==null)return"";if(v instanceof Date)return SSF_format(14,datenum(v,opts&&opts.date1904),opts)}throw new Error("unsupported value in General format: "+v)}function SSF_fix_hijri(date,o){o[0]-=581;var dow=date.getDay();return date<60&&(dow=(dow+6)%7),dow}function SSF_write_date(type,fmt,val2,ss0){var o="",ss=0,tt=0,y=val2.y,out,outl=0;switch(type){case 98:y=val2.y+543;case 121:switch(fmt.length){case 1:case 2:out=y%100,outl=2;break;default:out=y%1e4,outl=4;break}break;case 109:switch(fmt.length){case 1:case 2:out=val2.m,outl=fmt.length;break;case 3:return months[val2.m-1][1];case 5:return months[val2.m-1][0];default:return months[val2.m-1][2]}break;case 100:switch(fmt.length){case 1:case 2:out=val2.d,outl=fmt.length;break;case 3:return days[val2.q][0];default:return days[val2.q][1]}break;case 104:switch(fmt.length){case 1:case 2:out=1+(val2.H+11)%12,outl=fmt.length;break;default:throw"bad hour format: "+fmt}break;case 72:switch(fmt.length){case 1:case 2:out=val2.H,outl=fmt.length;break;default:throw"bad hour format: "+fmt}break;case 77:switch(fmt.length){case 1:case 2:out=val2.M,outl=fmt.length;break;default:throw"bad minute format: "+fmt}break;case 115:if(fmt!="s"&&fmt!="ss"&&fmt!=".0"&&fmt!=".00"&&fmt!=".000")throw"bad second format: "+fmt;return val2.u===0&&(fmt=="s"||fmt=="ss")?pad0(val2.S,fmt.length):(ss0>=2?tt=ss0===3?1e3:100:tt=ss0===1?10:1,ss=Math.round(tt*(val2.S+val2.u)),ss>=60*tt&&(ss=0),fmt==="s"?ss===0?"0":""+ss/tt:(o=pad0(ss,2+ss0),fmt==="ss"?o.substr(0,2):"."+o.substr(2,fmt.length-1)));case 90:switch(fmt){case"[h]":case"[hh]":out=val2.D*24+val2.H;break;case"[m]":case"[mm]":out=(val2.D*24+val2.H)*60+val2.M;break;case"[s]":case"[ss]":out=((val2.D*24+val2.H)*60+val2.M)*60+(ss0==0?Math.round(val2.S+val2.u):val2.S);break;default:throw"bad abstime format: "+fmt}outl=fmt.length===3?1:2;break;case 101:out=y,outl=1;break}var outstr=outl>0?pad0(out,outl):"";return outstr}function commaify(s){var w=3;if(s.length<=w)return s;for(var j=s.length%w,o=s.substr(0,j);j!=s.length;j+=w)o+=(o.length>0?",":"")+s.substr(j,w);return o}function write_num_pct(type,fmt,val2){var sfmt=fmt.replace(pct1,""),mul=fmt.length-sfmt.length;return write_num(type,sfmt,val2*Math.pow(10,2*mul))+fill("%",mul)}function write_num_cm(type,fmt,val2){for(var idx=fmt.length-1;fmt.charCodeAt(idx-1)===44;)--idx;return write_num(type,fmt.substr(0,idx),val2/Math.pow(10,3*(fmt.length-idx)))}function write_num_exp(fmt,val2){var o,idx=fmt.indexOf("E")-fmt.indexOf(".")-1;if(fmt.match(/^#+0.0E\+0$/)){if(val2==0)return"0.0E+0";if(val2<0)return"-"+write_num_exp(fmt,-val2);var period=fmt.indexOf(".");period===-1&&(period=fmt.indexOf("E"));var ee=Math.floor(Math.log(val2)*Math.LOG10E)%period;if(ee<0&&(ee+=period),o=(val2/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period),o.indexOf("e")===-1){var fakee=Math.floor(Math.log(val2)*Math.LOG10E);for(o.indexOf(".")===-1?o=o.charAt(0)+"."+o.substr(1)+"E+"+(fakee-o.length+ee):o+="E+"+(fakee-ee);o.substr(0,2)==="0.";)o=o.charAt(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(/^([+-]?)(\d*)\.(\d*)[Ee]/,function($$,$1,$2,$3){return $1+$2+$3.substr(0,(period+ee)%period)+"."+$3.substr(ee)+"E"})}else o=val2.toExponential(idx);return fmt.match(/E\+00$/)&&o.match(/e[+-]\d$/)&&(o=o.substr(0,o.length-1)+"0"+o.charAt(o.length-1)),fmt.match(/E\-/)&&o.match(/e\+/)&&(o=o.replace(/e\+/,"e")),o.replace("e","E")}function write_num_f1(r,aval,sign){var den=parseInt(r[4],10),rr=Math.round(aval*den),base=Math.floor(rr/den),myn=rr-base*den,myd=den;return sign+(base===0?"":""+base)+" "+(myn===0?fill(" ",r[1].length+1+r[4].length):pad_(myn,r[1].length)+r[2]+"/"+r[3]+pad0(myd,r[4].length))}function write_num_f2(r,aval,sign){return sign+(aval===0?"":""+aval)+fill(" ",r[1].length+2+r[4].length)}function hashq(str){for(var o="",cc,i=0;i!=str.length;++i)switch(cc=str.charCodeAt(i)){case 35:break;case 63:o+=" ";break;case 48:o+="0";break;default:o+=String.fromCharCode(cc)}return o}function rnd(val2,d){var dd=Math.pow(10,d);return""+Math.round(val2*dd)/dd}function dec2(val2,d){var _frac=val2-Math.floor(val2),dd=Math.pow(10,d);return d<(""+Math.round(_frac*dd)).length?0:Math.round(_frac*dd)}function carry(val2,d){return d<(""+Math.round((val2-Math.floor(val2))*Math.pow(10,d))).length?1:0}function flr(val2){return val2<2147483647&&val2>-2147483648?""+(val2>=0?val2|0:val2-1|0):""+Math.floor(val2)}function write_num_flt(type,fmt,val2){if(type.charCodeAt(0)===40&&!fmt.match(closeparen)){var ffmt=fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");return val2>=0?write_num_flt("n",ffmt,val2):"("+write_num_flt("n",ffmt,-val2)+")"}if(fmt.charCodeAt(fmt.length-1)===44)return write_num_cm(type,fmt,val2);if(fmt.indexOf("%")!==-1)return write_num_pct(type,fmt,val2);if(fmt.indexOf("E")!==-1)return write_num_exp(fmt,val2);if(fmt.charCodeAt(0)===36)return"$"+write_num_flt(type,fmt.substr(fmt.charAt(1)==" "?2:1),val2);var o,r,ri,ff,aval=Math.abs(val2),sign=val2<0?"-":"";if(fmt.match(/^00+$/))return sign+pad0r(aval,fmt.length);if(fmt.match(/^[#?]+$/))return o=pad0r(val2,0),o==="0"&&(o=""),o.length>fmt.length?o:hashq(fmt.substr(0,fmt.length-o.length))+o;if(r=fmt.match(frac1))return write_num_f1(r,aval,sign);if(fmt.match(/^#+0+$/))return sign+pad0r(aval,fmt.length-fmt.indexOf("0"));if(r=fmt.match(dec1))return o=rnd(val2,r[1].length).replace(/^([^\.]+)$/,"$1."+hashq(r[1])).replace(/\.$/,"."+hashq(r[1])).replace(/\.(\d*)$/,function($$,$1){return"."+$1+fill("0",hashq(r[1]).length-$1.length)}),fmt.indexOf("0.")!==-1?o:o.replace(/^0\./,".");if(fmt=fmt.replace(/^#+([0.])/,"$1"),r=fmt.match(/^(0*)\.(#*)$/))return sign+rnd(aval,r[2].length).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".");if(r=fmt.match(/^#{1,3},##0(\.?)$/))return sign+commaify(pad0r(aval,0));if(r=fmt.match(/^#,##0\.([#0]*0)$/))return val2<0?"-"+write_num_flt(type,fmt,-val2):commaify(""+(Math.floor(val2)+carry(val2,r[1].length)))+"."+pad0(dec2(val2,r[1].length),r[1].length);if(r=fmt.match(/^#,#*,#0/))return write_num_flt(type,fmt.replace(/^#,#*,/,""),val2);if(r=fmt.match(/^([0#]+)(\\?-([0#]+))+$/))return o=_strrev(write_num_flt(type,fmt.replace(/[\\-]/g,""),val2)),ri=0,_strrev(_strrev(fmt.replace(/\\/g,"")).replace(/[0#]/g,function(x2){return ri<o.length?o.charAt(ri++):x2==="0"?"0":""}));if(fmt.match(phone))return o=write_num_flt(type,"##########",val2),"("+o.substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6);var oa="";if(r=fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))return ri=Math.min(r[4].length,7),ff=SSF_frac(aval,Math.pow(10,ri)-1,!1),o=""+sign,oa=write_num("n",r[1],ff[1]),oa.charAt(oa.length-1)==" "&&(oa=oa.substr(0,oa.length-1)+"0"),o+=oa+r[2]+"/"+r[3],oa=rpad_(ff[2],ri),oa.length<r[4].length&&(oa=hashq(r[4].substr(r[4].length-oa.length))+oa),o+=oa,o;if(r=fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))return ri=Math.min(Math.max(r[1].length,r[4].length),7),ff=SSF_frac(aval,Math.pow(10,ri)-1,!0),sign+(ff[0]||(ff[1]?"":"0"))+" "+(ff[1]?pad_(ff[1],ri)+r[2]+"/"+r[3]+rpad_(ff[2],ri):fill(" ",2*ri+1+r[2].length+r[3].length));if(r=fmt.match(/^[#0?]+$/))return o=pad0r(val2,0),fmt.length<=o.length?o:hashq(fmt.substr(0,fmt.length-o.length))+o;if(r=fmt.match(/^([#0?]+)\.([#0]+)$/)){o=""+val2.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,"$1"),ri=o.indexOf(".");var lres=fmt.indexOf(".")-ri,rres=fmt.length-o.length-lres;return hashq(fmt.substr(0,lres)+o+fmt.substr(fmt.length-rres))}if(r=fmt.match(/^00,000\.([#0]*0)$/))return ri=dec2(val2,r[1].length),val2<0?"-"+write_num_flt(type,fmt,-val2):commaify(flr(val2)).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$){return"00,"+($$.length<3?pad0(0,3-$$.length):"")+$$})+"."+pad0(ri,r[1].length);switch(fmt){case"###,##0.00":return write_num_flt(type,"#,##0.00",val2);case"###,###":case"##,###":case"#,###":var x=commaify(pad0r(aval,0));return x!=="0"?sign+x:"";case"###,###.00":return write_num_flt(type,"###,##0.00",val2).replace(/^0\./,".");case"#,###.00":return write_num_flt(type,"#,##0.00",val2).replace(/^0\./,".");default:}throw new Error("unsupported format |"+fmt+"|")}function write_num_cm2(type,fmt,val2){for(var idx=fmt.length-1;fmt.charCodeAt(idx-1)===44;)--idx;return write_num(type,fmt.substr(0,idx),val2/Math.pow(10,3*(fmt.length-idx)))}function write_num_pct2(type,fmt,val2){var sfmt=fmt.replace(pct1,""),mul=fmt.length-sfmt.length;return write_num(type,sfmt,val2*Math.pow(10,2*mul))+fill("%",mul)}function write_num_exp2(fmt,val2){var o,idx=fmt.indexOf("E")-fmt.indexOf(".")-1;if(fmt.match(/^#+0.0E\+0$/)){if(val2==0)return"0.0E+0";if(val2<0)return"-"+write_num_exp2(fmt,-val2);var period=fmt.indexOf(".");period===-1&&(period=fmt.indexOf("E"));var ee=Math.floor(Math.log(val2)*Math.LOG10E)%period;if(ee<0&&(ee+=period),o=(val2/Math.pow(10,ee)).toPrecision(idx+1+(period+ee)%period),!o.match(/[Ee]/)){var fakee=Math.floor(Math.log(val2)*Math.LOG10E);o.indexOf(".")===-1?o=o.charAt(0)+"."+o.substr(1)+"E+"+(fakee-o.length+ee):o+="E+"+(fakee-ee),o=o.replace(/\+-/,"-")}o=o.replace(/^([+-]?)(\d*)\.(\d*)[Ee]/,function($$,$1,$2,$3){return $1+$2+$3.substr(0,(period+ee)%period)+"."+$3.substr(ee)+"E"})}else o=val2.toExponential(idx);return fmt.match(/E\+00$/)&&o.match(/e[+-]\d$/)&&(o=o.substr(0,o.length-1)+"0"+o.charAt(o.length-1)),fmt.match(/E\-/)&&o.match(/e\+/)&&(o=o.replace(/e\+/,"e")),o.replace("e","E")}function write_num_int(type,fmt,val2){if(type.charCodeAt(0)===40&&!fmt.match(closeparen)){var ffmt=fmt.replace(/\( */,"").replace(/ \)/,"").replace(/\)/,"");return val2>=0?write_num_int("n",ffmt,val2):"("+write_num_int("n",ffmt,-val2)+")"}if(fmt.charCodeAt(fmt.length-1)===44)return write_num_cm2(type,fmt,val2);if(fmt.indexOf("%")!==-1)return write_num_pct2(type,fmt,val2);if(fmt.indexOf("E")!==-1)return write_num_exp2(fmt,val2);if(fmt.charCodeAt(0)===36)return"$"+write_num_int(type,fmt.substr(fmt.charAt(1)==" "?2:1),val2);var o,r,ri,ff,aval=Math.abs(val2),sign=val2<0?"-":"";if(fmt.match(/^00+$/))return sign+pad0(aval,fmt.length);if(fmt.match(/^[#?]+$/))return o=""+val2,val2===0&&(o=""),o.length>fmt.length?o:hashq(fmt.substr(0,fmt.length-o.length))+o;if(r=fmt.match(frac1))return write_num_f2(r,aval,sign);if(fmt.match(/^#+0+$/))return sign+pad0(aval,fmt.length-fmt.indexOf("0"));if(r=fmt.match(dec1))return o=(""+val2).replace(/^([^\.]+)$/,"$1."+hashq(r[1])).replace(/\.$/,"."+hashq(r[1])),o=o.replace(/\.(\d*)$/,function($$,$1){return"."+$1+fill("0",hashq(r[1]).length-$1.length)}),fmt.indexOf("0.")!==-1?o:o.replace(/^0\./,".");if(fmt=fmt.replace(/^#+([0.])/,"$1"),r=fmt.match(/^(0*)\.(#*)$/))return sign+(""+aval).replace(/\.(\d*[1-9])0*$/,".$1").replace(/^(-?\d*)$/,"$1.").replace(/^0\./,r[1].length?"0.":".");if(r=fmt.match(/^#{1,3},##0(\.?)$/))return sign+commaify(""+aval);if(r=fmt.match(/^#,##0\.([#0]*0)$/))return val2<0?"-"+write_num_int(type,fmt,-val2):commaify(""+val2)+"."+fill("0",r[1].length);if(r=fmt.match(/^#,#*,#0/))return write_num_int(type,fmt.replace(/^#,#*,/,""),val2);if(r=fmt.match(/^([0#]+)(\\?-([0#]+))+$/))return o=_strrev(write_num_int(type,fmt.replace(/[\\-]/g,""),val2)),ri=0,_strrev(_strrev(fmt.replace(/\\/g,"")).replace(/[0#]/g,function(x2){return ri<o.length?o.charAt(ri++):x2==="0"?"0":""}));if(fmt.match(phone))return o=write_num_int(type,"##########",val2),"("+o.substr(0,3)+") "+o.substr(3,3)+"-"+o.substr(6);var oa="";if(r=fmt.match(/^([#0?]+)( ?)\/( ?)([#0?]+)/))return ri=Math.min(r[4].length,7),ff=SSF_frac(aval,Math.pow(10,ri)-1,!1),o=""+sign,oa=write_num("n",r[1],ff[1]),oa.charAt(oa.length-1)==" "&&(oa=oa.substr(0,oa.length-1)+"0"),o+=oa+r[2]+"/"+r[3],oa=rpad_(ff[2],ri),oa.length<r[4].length&&(oa=hashq(r[4].substr(r[4].length-oa.length))+oa),o+=oa,o;if(r=fmt.match(/^# ([#0?]+)( ?)\/( ?)([#0?]+)/))return ri=Math.min(Math.max(r[1].length,r[4].length),7),ff=SSF_frac(aval,Math.pow(10,ri)-1,!0),sign+(ff[0]||(ff[1]?"":"0"))+" "+(ff[1]?pad_(ff[1],ri)+r[2]+"/"+r[3]+rpad_(ff[2],ri):fill(" ",2*ri+1+r[2].length+r[3].length));if(r=fmt.match(/^[#0?]+$/))return o=""+val2,fmt.length<=o.length?o:hashq(fmt.substr(0,fmt.length-o.length))+o;if(r=fmt.match(/^([#0]+)\.([#0]+)$/)){o=""+val2.toFixed(Math.min(r[2].length,10)).replace(/([^0])0+$/,"$1"),ri=o.indexOf(".");var lres=fmt.indexOf(".")-ri,rres=fmt.length-o.length-lres;return hashq(fmt.substr(0,lres)+o+fmt.substr(fmt.length-rres))}if(r=fmt.match(/^00,000\.([#0]*0)$/))return val2<0?"-"+write_num_int(type,fmt,-val2):commaify(""+val2).replace(/^\d,\d{3}$/,"0$&").replace(/^\d*$/,function($$){return"00,"+($$.length<3?pad0(0,3-$$.length):"")+$$})+"."+pad0(0,r[1].length);switch(fmt){case"###,###":case"##,###":case"#,###":var x=commaify(""+aval);return x!=="0"?sign+x:"";default:if(fmt.match(/\.[0#?]*$/))return write_num_int(type,fmt.slice(0,fmt.lastIndexOf(".")),val2)+hashq(fmt.slice(fmt.lastIndexOf(".")))}throw new Error("unsupported format |"+fmt+"|")}function write_num(type,fmt,val2){return(val2|0)===val2?write_num_int(type,fmt,val2):write_num_flt(type,fmt,val2)}function SSF_split_fmt(fmt){for(var out=[],in_str=!1,i=0,j=0;i<fmt.length;++i)switch(fmt.charCodeAt(i)){case 34:in_str=!in_str;break;case 95:case 42:case 92:++i;break;case 59:out[out.length]=fmt.substr(j,i-j),j=i+1}if(out[out.length]=fmt.substr(j),in_str===!0)throw new Error("Format |"+fmt+"| unterminated string ");return out}function fmt_is_date(fmt){for(var i=0,c="",o="";i<fmt.length;)switch(c=fmt.charAt(i)){case"G":SSF_isgeneral(fmt,i)&&(i+=6),i++;break;case'"':for(;fmt.charCodeAt(++i)!==34&&i<fmt.length;);++i;break;case"\\":i+=2;break;case"_":i+=2;break;case"@":++i;break;case"B":case"b":if(fmt.charAt(i+1)==="1"||fmt.charAt(i+1)==="2")return!0;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":return!0;case"A":case"a":case"\u4E0A":if(fmt.substr(i,3).toUpperCase()==="A/P"||fmt.substr(i,5).toUpperCase()==="AM/PM"||fmt.substr(i,5).toUpperCase()==="\u4E0A\u5348/\u4E0B\u5348")return!0;++i;break;case"[":for(o=c;fmt.charAt(i++)!=="]"&&i<fmt.length;)o+=fmt.charAt(i);if(o.match(SSF_abstime))return!0;break;case".":case"0":case"#":for(;i<fmt.length&&("0#?.,E+-%".indexOf(c=fmt.charAt(++i))>-1||c=="\\"&&fmt.charAt(i+1)=="-"&&"0#".indexOf(fmt.charAt(i+2))>-1););break;case"?":for(;fmt.charAt(++i)===c;);break;case"*":++i,(fmt.charAt(i)==" "||fmt.charAt(i)=="*")&&++i;break;case"(":case")":++i;break;case"1":case"2":case"3":case"4":case"5":case"6":case"7":case"8":case"9":for(;i<fmt.length&&"0123456789".indexOf(fmt.charAt(++i))>-1;);break;case" ":++i;break;default:++i;break}return!1}function eval_fmt(fmt,v,opts,flen){for(var out=[],o="",i=0,c="",lst="t",dt,j,cc,hr="H";i<fmt.length;)switch(c=fmt.charAt(i)){case"G":if(!SSF_isgeneral(fmt,i))throw new Error("unrecognized character "+c+" in "+fmt);out[out.length]={t:"G",v:"General"},i+=7;break;case'"':for(o="";(cc=fmt.charCodeAt(++i))!==34&&i<fmt.length;)o+=String.fromCharCode(cc);out[out.length]={t:"t",v:o},++i;break;case"\\":var w=fmt.charAt(++i),t=w==="("||w===")"?w:"t";out[out.length]={t,v:w},++i;break;case"_":out[out.length]={t:"t",v:" "},i+=2;break;case"@":out[out.length]={t:"T",v},++i;break;case"B":case"b":if(fmt.charAt(i+1)==="1"||fmt.charAt(i+1)==="2"){if(dt==null&&(dt=SSF_parse_date_code(v,opts,fmt.charAt(i+1)==="2"),dt==null))return"";out[out.length]={t:"X",v:fmt.substr(i,2)},lst=c,i+=2;break}case"M":case"D":case"Y":case"H":case"S":case"E":c=c.toLowerCase();case"m":case"d":case"y":case"h":case"s":case"e":case"g":if(v<0||dt==null&&(dt=SSF_parse_date_code(v,opts),dt==null))return"";for(o=c;++i<fmt.length&&fmt.charAt(i).toLowerCase()===c;)o+=c;c==="m"&&lst.toLowerCase()==="h"&&(c="M"),c==="h"&&(c=hr),out[out.length]={t:c,v:o},lst=c;break;case"A":case"a":case"\u4E0A":var q={t:c,v:c};if(dt==null&&(dt=SSF_parse_date_code(v,opts)),fmt.substr(i,3).toUpperCase()==="A/P"?(dt!=null&&(q.v=dt.H>=12?fmt.charAt(i+2):c),q.t="T",hr="h",i+=3):fmt.substr(i,5).toUpperCase()==="AM/PM"?(dt!=null&&(q.v=dt.H>=12?"PM":"AM"),q.t="T",i+=5,hr="h"):fmt.substr(i,5).toUpperCase()==="\u4E0A\u5348/\u4E0B\u5348"?(dt!=null&&(q.v=dt.H>=12?"\u4E0B\u5348":"\u4E0A\u5348"),q.t="T",i+=5,hr="h"):(q.t="t",++i),dt==null&&q.t==="T")return"";out[out.length]=q,lst=c;break;case"[":for(o=c;fmt.charAt(i++)!=="]"&&i<fmt.length;)o+=fmt.charAt(i);if(o.slice(-1)!=="]")throw'unterminated "[" block: |'+o+"|";if(o.match(SSF_abstime)){if(dt==null&&(dt=SSF_parse_date_code(v,opts),dt==null))return"";out[out.length]={t:"Z",v:o.toLowerCase()},lst=o.charAt(1)}else o.indexOf("$")>-1&&(o=(o.match(/\$([^-\[\]]*)/)||[])[1]||"$",fmt_is_date(fmt)||(out[out.length]={t:"t",v:o}));break;case".":if(dt!=null){for(o=c;++i<fmt.length&&(c=fmt.charAt(i))==="0";)o+=c;out[out.length]={t:"s",v:o};break}case"0":case"#":for(o=c;++i<fmt.length&&"0#?.,E+-%".indexOf(c=fmt.charAt(i))>-1;)o+=c;out[out.length]={t:"n",v:o};break;case"?":for(o=c;fmt.charAt(++i)===c;)o+=c;out[out.length]={t:c,v:o},lst=c;break;case"*":++i,(fmt.charAt(i)==" "||fmt.charAt(i)=="*")&&++i;break;case"(":case")":out[out.length]={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":for(o=c;i<fmt.length&&"0123456789".indexOf(fmt.charAt(++i))>-1;)o+=fmt.charAt(i);out[out.length]={t:"D",v:o};break;case" ":out[out.length]={t:c,v:c},++i;break;case"$":out[out.length]={t:"t",v:"$"},++i;break;default:if(",$-+/():!^&'~{}<>=\u20ACacfijklopqrtuvwxzP".indexOf(c)===-1)throw new Error("unrecognized character "+c+" in "+fmt);out[out.length]={t:"t",v:c},++i;break}var bt=0,ss0=0,ssm;for(i=out.length-1,lst="t";i>=0;--i)switch(out[i].t){case"h":case"H":out[i].t=hr,lst="h",bt<1&&(bt=1);break;case"s":(ssm=out[i].v.match(/\.0+$/))&&(ss0=Math.max(ss0,ssm[0].length-1),bt=4),bt<3&&(bt=3);case"d":case"y":case"e":lst=out[i].t;break;case"M":lst=out[i].t,bt<2&&(bt=2);break;case"m":lst==="s"&&(out[i].t="M",bt<2&&(bt=2));break;case"X":break;case"Z":bt<1&&out[i].v.match(/[Hh]/)&&(bt=1),bt<2&&out[i].v.match(/[Mm]/)&&(bt=2),bt<3&&out[i].v.match(/[Ss]/)&&(bt=3)}var _dt;switch(bt){case 0:break;case 1:case 2:case 3:dt.u>=.5&&(dt.u=0,++dt.S),dt.S>=60&&(dt.S=0,++dt.M),dt.M>=60&&(dt.M=0,++dt.H),dt.H>=24&&(dt.H=0,++dt.D,_dt=SSF_parse_date_code(dt.D),_dt.u=dt.u,_dt.S=dt.S,_dt.M=dt.M,_dt.H=dt.H,dt=_dt);break;case 4:switch(ss0){case 1:dt.u=Math.round(dt.u*10)/10;break;case 2:dt.u=Math.round(dt.u*100)/100;break;case 3:dt.u=Math.round(dt.u*1e3)/1e3;break}dt.u>=1&&(dt.u=0,++dt.S),dt.S>=60&&(dt.S=0,++dt.M),dt.M>=60&&(dt.M=0,++dt.H),dt.H>=24&&(dt.H=0,++dt.D,_dt=SSF_parse_date_code(dt.D),_dt.u=dt.u,_dt.S=dt.S,_dt.M=dt.M,_dt.H=dt.H,dt=_dt);break}var nstr="",jj;for(i=0;i<out.length;++i)switch(out[i].t){case"t":case"T":case" ":case"D":break;case"X":out[i].v="",out[i].t=";";break;case"d":case"m":case"y":case"h":case"H":case"M":case"s":case"e":case"b":case"Z":out[i].v=SSF_write_date(out[i].t.charCodeAt(0),out[i].v,dt,ss0),out[i].t="t";break;case"n":case"?":for(jj=i+1;out[jj]!=null&&((c=out[jj].t)==="?"||c==="D"||(c===" "||c==="t")&&out[jj+1]!=null&&(out[jj+1].t==="?"||out[jj+1].t==="t"&&out[jj+1].v==="/")||out[i].t==="("&&(c===" "||c==="n"||c===")")||c==="t"&&(out[jj].v==="/"||out[jj].v===" "&&out[jj+1]!=null&&out[jj+1].t=="?"));)out[i].v+=out[jj].v,out[jj]={v:"",t:";"},++jj;nstr+=out[i].v,i=jj-1;break;case"G":out[i].t="t",out[i].v=SSF_general(v,opts);break}var vv="",myv,ostr;if(nstr.length>0){nstr.charCodeAt(0)==40?(myv=v<0&&nstr.charCodeAt(0)===45?-v:v,ostr=write_num("n",nstr,myv)):(myv=v<0&&flen>1?-v:v,ostr=write_num("n",nstr,myv),myv<0&&out[0]&&out[0].t=="t"&&(ostr=ostr.substr(1),out[0].v="-"+out[0].v)),jj=ostr.length-1;var decpt=out.length;for(i=0;i<out.length;++i)if(out[i]!=null&&out[i].t!="t"&&out[i].v.indexOf(".")>-1){decpt=i;break}var lasti=out.length;if(decpt===out.length&&ostr.indexOf("E")===-1){for(i=out.length-1;i>=0;--i)out[i]==null||"n?".indexOf(out[i].t)===-1||(jj>=out[i].v.length-1?(jj-=out[i].v.length,out[i].v=ostr.substr(jj+1,out[i].v.length)):jj<0?out[i].v="":(out[i].v=ostr.substr(0,jj+1),jj=-1),out[i].t="t",lasti=i);jj>=0&&lasti<out.length&&(out[lasti].v=ostr.substr(0,jj+1)+out[lasti].v)}else if(decpt!==out.length&&ostr.indexOf("E")===-1){for(jj=ostr.indexOf(".")-1,i=decpt;i>=0;--i)if(!(out[i]==null||"n?".indexOf(out[i].t)===-1)){for(j=out[i].v.indexOf(".")>-1&&i===decpt?out[i].v.indexOf(".")-1:out[i].v.length-1,vv=out[i].v.substr(j+1);j>=0;--j)jj>=0&&(out[i].v.charAt(j)==="0"||out[i].v.charAt(j)==="#")&&(vv=ostr.charAt(jj--)+vv);out[i].v=vv,out[i].t="t",lasti=i}for(jj>=0&&lasti<out.length&&(out[lasti].v=ostr.substr(0,jj+1)+out[lasti].v),jj=ostr.indexOf(".")+1,i=decpt;i<out.length;++i)if(!(out[i]==null||"n?(".indexOf(out[i].t)===-1&&i!==decpt)){for(j=out[i].v.indexOf(".")>-1&&i===decpt?out[i].v.indexOf(".")+1:0,vv=out[i].v.substr(0,j);j<out[i].v.length;++j)jj<ostr.length&&(vv+=ostr.charAt(jj++));out[i].v=vv,out[i].t="t",lasti=i}}}for(i=0;i<out.length;++i)out[i]!=null&&"n?".indexOf(out[i].t)>-1&&(myv=flen>1&&v<0&&i>0&&out[i-1].v==="-"?-v:v,out[i].v=write_num(out[i].t,out[i].v,myv),out[i].t="t");var retval="";for(i=0;i!==out.length;++i)out[i]!=null&&(retval+=out[i].v);return retval}function chkcond(v,rr){if(rr==null)return!1;var thresh=parseFloat(rr[2]);switch(rr[1]){case"=":if(v==thresh)return!0;break;case">":if(v>thresh)return!0;break;case"<":if(v<thresh)return!0;break;case"<>":if(v!=thresh)return!0;break;case">=":if(v>=thresh)return!0;break;case"<=":if(v<=thresh)return!0;break}return!1}function choose_fmt(f,v){var fmt=SSF_split_fmt(f),l=fmt.length,lat=fmt[l-1].indexOf("@");if(l<4&&lat>-1&&--l,fmt.length>4)throw new Error("cannot find right format for |"+fmt.join("|")+"|");if(typeof v!="number")return[4,fmt.length===4||lat>-1?fmt[fmt.length-1]:"@"];switch(typeof v=="number"&&!isFinite(v)&&(v=0),fmt.length){case 1:fmt=lat>-1?["General","General","General",fmt[0]]:[fmt[0],fmt[0],fmt[0],"@"];break;case 2:fmt=lat>-1?[fmt[0],fmt[0],fmt[0],fmt[1]]:[fmt[0],fmt[1],fmt[0],"@"];break;case 3:fmt=lat>-1?[fmt[0],fmt[1],fmt[0],fmt[2]]:[fmt[0],fmt[1],fmt[2],"@"];break;case 4:break}var ff=v>0?fmt[0]:v<0?fmt[1]:fmt[2];if(fmt[0].indexOf("[")===-1&&fmt[1].indexOf("[")===-1)return[l,ff];if(fmt[0].match(/\[[=<>]/)!=null||fmt[1].match(/\[[=<>]/)!=null){var m1=fmt[0].match(cfregex2),m2=fmt[1].match(cfregex2);return chkcond(v,m1)?[l,fmt[0]]:chkcond(v,m2)?[l,fmt[1]]:[l,fmt[m1!=null&&m2!=null?2:1]]}return[l,ff]}function SSF_format(fmt,v,o){o==null&&(o={});var sfmt="";switch(typeof fmt){case"string":fmt=="m/d/yy"&&o.dateNF?sfmt=o.dateNF:sfmt=fmt;break;case"number":fmt==14&&o.dateNF?sfmt=o.dateNF:sfmt=(o.table!=null?o.table:table_fmt)[fmt],sfmt==null&&(sfmt=o.table&&o.table[SSF_default_map[fmt]]||table_fmt[SSF_default_map[fmt]]),sfmt==null&&(sfmt=SSF_default_str[fmt]||"General");break}if(SSF_isgeneral(sfmt,0))return SSF_general(v,o);v instanceof Date&&(v=datenum(v,o.date1904));var f=choose_fmt(sfmt,v);if(SSF_isgeneral(f[1]))return SSF_general(v,o);if(v===!0)v="TRUE";else if(v===!1)v="FALSE";else{if(v===""||v==null)return"";if(isNaN(v)&&f[1].indexOf("0")>-1)return"#NUM!";if(!isFinite(v)&&f[1].indexOf("0")>-1)return"#DIV/0!"}return eval_fmt(f[1],v,o,f[0])}function SSF_load(fmt,idx){if(typeof idx!="number"){idx=+idx||-1;for(var i=0;i<392;++i){if(table_fmt[i]==null){idx<0&&(idx=i);continue}if(table_fmt[i]==fmt){idx=i;break}}idx<0&&(idx=391)}return table_fmt[idx]=fmt,idx}function SSF_load_table(tbl){for(var i=0;i!=392;++i)tbl[i]!==void 0&&SSF_load(tbl[i],i)}function make_ssf(){table_fmt=SSF_init_table()}function dateNF_regex(dateNF){var fmt=typeof dateNF=="number"?table_fmt[dateNF]:dateNF;return fmt=fmt.replace(dateNFregex,"(\\d+)"),dateNFregex.lastIndex=0,new RegExp("^"+fmt+"$")}function dateNF_fix(str,dateNF,match){var Y=-1,m=-1,d=-1,H=-1,M=-1,S=-1;(dateNF.match(dateNFregex)||[]).forEach(function(n,i){var v=parseInt(match[i+1],10);switch(n.toLowerCase().charAt(0)){case"y":Y=v;break;case"d":d=v;break;case"h":H=v;break;case"s":S=v;break;case"m":H>=0?M=v:m=v;break}}),dateNFregex.lastIndex=0,S>=0&&M==-1&&m>=0&&(M=m,m=-1);var datestr=(""+(Y>=0?Y:new Date().getFullYear())).slice(-4)+"-"+("00"+(m>=1?m:1)).slice(-2)+"-"+("00"+(d>=1?d:1)).slice(-2);datestr.length==7&&(datestr="0"+datestr),datestr.length==8&&(datestr="20"+datestr);var timestr=("00"+(H>=0?H:0)).slice(-2)+":"+("00"+(M>=0?M:0)).slice(-2)+":"+("00"+(S>=0?S:0)).slice(-2);return H==-1&&M==-1&&S==-1?datestr:Y==-1&&m==-1&&d==-1?timestr:datestr+"T"+timestr}function SSF__load(fmt,idx){return SSF_load(bad_formats[fmt]||fmt,idx)}function set_fs(fs){_fs=fs}function blobify(data){return typeof data=="string"?s2ab(data):Array.isArray(data)?a2u(data):data}function write_dl(fname,payload,enc2){if(typeof _fs<"u"&&_fs.writeFileSync)return enc2?_fs.writeFileSync(fname,payload,enc2):_fs.writeFileSync(fname,payload);if(typeof Deno<"u"){if(enc2&&typeof payload=="string")switch(enc2){case"utf8":payload=new TextEncoder(enc2).encode(payload);break;case"binary":payload=s2ab(payload);break;default:throw new Error("Unsupported encoding "+enc2)}return Deno.writeFileSync(fname,payload)}var data=enc2=="utf8"?utf8write(payload):payload;if(typeof IE_SaveFile<"u")return IE_SaveFile(data,fname);if(typeof Blob<"u"){var blob=new Blob([blobify(data)],{type:"application/octet-stream"});if(typeof navigator<"u"&&navigator.msSaveBlob)return navigator.msSaveBlob(blob,fname);if(typeof saveAs<"u")return saveAs(blob,fname);if(typeof URL<"u"&&typeof document<"u"&&document.createElement&&URL.createObjectURL){var url=URL.createObjectURL(blob);if(typeof chrome=="object"&&typeof(chrome.downloads||{}).download=="function")return URL.revokeObjectURL&&typeof setTimeout<"u"&&setTimeout(function(){URL.revokeObjectURL(url)},6e4),chrome.downloads.download({url,filename:fname,saveAs:!0});var a=document.createElement("a");if(a.download!=null)return a.download=fname,a.href=url,document.body.appendChild(a),a.click(),document.body.removeChild(a),URL.revokeObjectURL&&typeof setTimeout<"u"&&setTimeout(function(){URL.revokeObjectURL(url)},6e4),url}else if(typeof URL<"u"&&!URL.createObjectURL&&typeof chrome=="object"){var b64="data:application/octet-stream;base64,"+Base64_encode_arr(new Uint8Array(blobify(data)));return chrome.downloads.download({url:b64,filename:fname,saveAs:!0})}}if(typeof $<"u"&&typeof File<"u"&&typeof Folder<"u")try{var out=File(fname);return out.open("w"),out.encoding="binary",Array.isArray(payload)&&(payload=a2s(payload)),out.write(payload),out.close(),payload}catch(e){if(!e.message||e.message.indexOf("onstruct")==-1)throw e}throw new Error("cannot save file "+fname)}function read_binary(path){if(typeof _fs<"u")return _fs.readFileSync(path);if(typeof Deno<"u")return Deno.readFileSync(path);if(typeof $<"u"&&typeof File<"u"&&typeof Folder<"u")try{var infile=File(path);infile.open("r"),infile.encoding="binary";var data=infile.read();return infile.close(),data}catch(e){if(!e.message||e.message.indexOf("onstruct")==-1)throw e}throw new Error("Cannot access file "+path)}function keys(o){for(var ks=Object.keys(o),o2=[],i=0;i<ks.length;++i)Object.prototype.hasOwnProperty.call(o,ks[i])&&o2.push(ks[i]);return o2}function evert_key(obj,key){for(var o=[],K=keys(obj),i=0;i!==K.length;++i)o[obj[K[i]][key]]==null&&(o[obj[K[i]][key]]=K[i]);return o}function evert(obj){for(var o=[],K=keys(obj),i=0;i!==K.length;++i)o[obj[K[i]]]=K[i];return o}function evert_num(obj){for(var o=[],K=keys(obj),i=0;i!==K.length;++i)o[obj[K[i]]]=parseInt(K[i],10);return o}function evert_arr(obj){for(var o=[],K=keys(obj),i=0;i!==K.length;++i)o[obj[K[i]]]==null&&(o[obj[K[i]]]=[]),o[obj[K[i]]].push(K[i]);return o}function datenum(v,date1904){var epoch=v.getTime(),res=(epoch-dnthresh)/(1440*60*1e3);return date1904?(res-=1462,res<-1402?res-1:res):res<60?res-1:res}function numdate(v){if(v>=60&&v<61)return v;var out=new Date;return out.setTime((v>60?v:v+1)*24*60*60*1e3+dnthresh),out}function parse_isodur(s){var sec=0,mt=0,time=!1,m=s.match(/P([0-9\.]+Y)?([0-9\.]+M)?([0-9\.]+D)?T([0-9\.]+H)?([0-9\.]+M)?([0-9\.]+S)?/);if(!m)throw new Error("|"+s+"| is not an ISO8601 Duration");for(var i=1;i!=m.length;++i)if(m[i]){switch(mt=1,i>3&&(time=!0),m[i].slice(m[i].length-1)){case"Y":throw new Error("Unsupported ISO Duration Field: "+m[i].slice(m[i].length-1));case"D":mt*=24;case"H":mt*=60;case"M":if(time)mt*=60;else throw new Error("Unsupported ISO Duration Field: M");case"S":break}sec+=mt*parseInt(m[i],10)}return sec}function parseDate(str,date1904){if(str instanceof Date)return str;var m=str.match(pdre1);if(m)return new Date((date1904?dnthresh2:dnthresh1)+((parseInt(m[1],10)*60+parseInt(m[2],10))*60+(m[3]?parseInt(m[3].slice(1),10):0))*1e3+(m[4]?parseInt((m[4]+"000").slice(1,4),10):0));if(m=str.match(pdre2),m)return new Date(Date.UTC(+m[1],+m[2]-1,+m[3],0,0,0,0));if(m=str.match(pdre3),m)return new Date(Date.UTC(+m[1],+m[2]-1,+m[3],+m[4],+m[5],m[6]&&parseInt(m[6].slice(1),10)||0,m[7]&&parseInt((m[7]+"0000").slice(1,4),10)||0));var d=new Date(str);return d}function cc2str(arr,debomit){if(has_buf&&Buffer.isBuffer(arr)){if(debomit&&buf_utf16le){if(arr[0]==255&&arr[1]==254)return utf8write(arr.slice(2).toString("utf16le"));if(arr[1]==254&&arr[2]==255)return utf8write(utf16beread(arr.slice(2).toString("binary")))}return arr.toString("binary")}if(typeof TextDecoder<"u")try{if(debomit){if(arr[0]==255&&arr[1]==254)return utf8write(new TextDecoder("utf-16le").decode(arr.slice(2)));if(arr[0]==254&&arr[1]==255)return utf8write(new TextDecoder("utf-16be").decode(arr.slice(2)))}var rev={"\u20AC":"\x80","\u201A":"\x82",\u0192:"\x83","\u201E":"\x84","\u2026":"\x85","\u2020":"\x86","\u2021":"\x87","\u02C6":"\x88","\u2030":"\x89",\u0160:"\x8A","\u2039":"\x8B",\u0152:"\x8C",\u017D:"\x8E","\u2018":"\x91","\u2019":"\x92","\u201C":"\x93","\u201D":"\x94","\u2022":"\x95","\u2013":"\x96","\u2014":"\x97","\u02DC":"\x98","\u2122":"\x99",\u0161:"\x9A","\u203A":"\x9B",\u0153:"\x9C",\u017E:"\x9E",\u0178:"\x9F"};return Array.isArray(arr)&&(arr=new Uint8Array(arr)),new TextDecoder("latin1").decode(arr).replace(/[€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ]/g,function(c){return rev[c]||c})}catch{}var o=[],i=0;try{for(i=0;i<arr.length-65536;i+=65536)o.push(String.fromCharCode.apply(0,arr.slice(i,i+65536)));o.push(String.fromCharCode.apply(0,arr.slice(i)))}catch{try{for(;i<arr.length-16384;i+=16384)o.push(String.fromCharCode.apply(0,arr.slice(i,i+16384)));o.push(String.fromCharCode.apply(0,arr.slice(i)))}catch{for(;i!=arr.length;++i)o.push(String.fromCharCode(arr[i]))}}return o.join("")}function dup(o){if(typeof JSON<"u"&&!Array.isArray(o))return JSON.parse(JSON.stringify(o));if(typeof o!="object"||o==null)return o;if(o instanceof Date)return new Date(o.getTime());var out={};for(var k in o)Object.prototype.hasOwnProperty.call(o,k)&&(out[k]=dup(o[k]));return out}function fill(c,l){for(var o="";o.length<l;)o+=c;return o}function fuzzynum(s){var v=Number(s);if(!isNaN(v))return isFinite(v)?v:NaN;if(!/\d/.test(s))return v;var wt=1,ss=s.replace(/([\d]),([\d])/g,"$1$2").replace(/[$]/g,"").replace(/[%]/g,function(){return wt*=100,""});return!isNaN(v=Number(ss))||(ss=ss.replace(/[(]([^()]*)[)]/,function($$,$1){return wt=-wt,$1}),!isNaN(v=Number(ss)))?v/wt:v}function fuzzytime1(M){return M[2]?M[3]?M[4]?new Date(Date.UTC(1899,11,31,+M[1]%12+(M[7]=="p"?12:0),+M[2],+M[4],parseFloat(M[3])*1e3)):new Date(Date.UTC(1899,11,31,M[7]=="p"?12:0,+M[1],+M[2],parseFloat(M[3])*1e3)):M[5]?new Date(Date.UTC(1899,11,31,+M[1]%12+(M[7]=="p"?12:0),+M[2],+M[5],M[6]?parseFloat(M[6])*1e3:0)):new Date(Date.UTC(1899,11,31,+M[1]%12+(M[7]=="p"?12:0),+M[2],0,0)):new Date(Date.UTC(1899,11,31,+M[1]%12+(M[7]=="p"?12:0),0,0,0))}function fuzzytime2(M){return M[2]?M[3]?M[4]?new Date(Date.UTC(1899,11,31,+M[1],+M[2],+M[4],parseFloat(M[3])*1e3)):new Date(Date.UTC(1899,11,31,0,+M[1],+M[2],parseFloat(M[3])*1e3)):M[5]?new Date(Date.UTC(1899,11,31,+M[1],+M[2],+M[5],M[6]?parseFloat(M[6])*1e3:0)):new Date(Date.UTC(1899,11,31,+M[1],+M[2],0,0)):new Date(Date.UTC(1899,11,31,+M[1],0,0,0))}function fuzzydate(s){if(FDISO.test(s))return s.indexOf("Z")==-1?local_to_utc(new Date(s)):new Date(s);var lower=s.toLowerCase(),lnos=lower.replace(/\s+/g," ").trim(),M=lnos.match(FDRE1);if(M)return fuzzytime1(M);if(M=lnos.match(FDRE2),M)return fuzzytime2(M);if(M=lnos.match(pdre3),M)return new Date(Date.UTC(+M[1],+M[2]-1,+M[3],+M[4],+M[5],M[6]&&parseInt(M[6].slice(1),10)||0,M[7]&&parseInt((M[7]+"0000").slice(1,4),10)||0));var o=new Date(utc_append_works&&s.indexOf("UTC")==-1?s+" UTC":s),n=new Date(NaN),y=o.getYear(),m=o.getMonth(),d=o.getDate();if(isNaN(d))return n;if(lower.match(/jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec/)){if(lower=lower.replace(/[^a-z]/g,"").replace(/([^a-z]|^)[ap]m?([^a-z]|$)/,""),lower.length>3&&lower_months.indexOf(lower)==-1)return n}else if(lower.replace(/[ap]m?/,"").match(/[a-z]/))return n;return y<0||y>8099||s.match(/[^-0-9:,\/\\\ ]/)?n:o}function utc_to_local(utc){return new Date(utc.getUTCFullYear(),utc.getUTCMonth(),utc.getUTCDate(),utc.getUTCHours(),utc.getUTCMinutes(),utc.getUTCSeconds(),utc.getUTCMilliseconds())}function local_to_utc(local){return new Date(Date.UTC(local.getFullYear(),local.getMonth(),local.getDate(),local.getHours(),local.getMinutes(),local.getSeconds(),local.getMilliseconds()))}function remove_doctype(str){var preamble=str.slice(0,1024),si=preamble.indexOf("<!DOCTYPE");if(si==-1)return str;var m=str.match(/<[\w]/);return m?str.slice(0,si)+str.slice(m.index):str}function str_match_ng(str,s,e){for(var out=[],si=str.indexOf(s);si>-1;){var ei=str.indexOf(e,si+s.length);if(ei==-1)break;out.push(str.slice(si,ei+e.length)),si=str.indexOf(s,ei+e.length)}return out.length>0?out:null}function str_remove_ng(str,s,e){var out=[],last=0,si=str.indexOf(s);if(si==-1)return str;for(;si>-1;){out.push(str.slice(last,si));var ei=str.indexOf(e,si+s.length);if(ei==-1)break;(si=str.indexOf(s,last=ei+e.length))==-1&&out.push(str.slice(last))}return out.join("")}function str_match_xml(str,tag){for(var si=str.indexOf("<"+tag),w=tag.length+1,L=str.length;si>=0&&si<=L-w&&!xml_boundary[str.charAt(si+w)];)si=str.indexOf("<"+tag,si+1);if(si===-1)return null;var sf=str.indexOf(">",si+tag.length);if(sf===-1)return null;var et="</"+tag+">",ei=str.indexOf(et,sf);return ei==-1?null:[str.slice(si,ei+et.length),str.slice(sf+1,ei)]}function getdatastr(data){return data?data.content&&data.type?cc2str(data.content,!0):data.data?debom(data.data):data.asNodeBuffer&&has_buf?debom(data.asNodeBuffer().toString("binary")):data.asBinary?debom(data.asBinary()):data._data&&data._data.getContent?debom(cc2str(Array.prototype.slice.call(data._data.getContent(),0))):null:null}function getdatabin(data){if(!data)return null;if(data.data)return char_codes(data.data);if(data.asNodeBuffer&&has_buf)return data.asNodeBuffer();if(data._data&&data._data.getContent){var o=data._data.getContent();return typeof o=="string"?char_codes(o):Array.prototype.slice.call(o)}return data.content&&data.type?data.content:null}function getdata(data){return data&&data.name.slice(-4)===".bin"?getdatabin(data):getdatastr(data)}function safegetzipfile(zip,file){for(var k=zip.FullPaths||keys(zip.files),f=file.toLowerCase().replace(/[\/]/g,"\\"),g=f.replace(/\\/g,"/"),i=0;i<k.length;++i){var n=k[i].replace(/^Root Entry[\/]/,"").toLowerCase();if(f==n||g==n)return zip.files?zip.files[k[i]]:zip.FileIndex[i]}return null}function getzipfile(zip,file){var o=safegetzipfile(zip,file);if(o==null)throw new Error("Cannot find file "+file+" in zip");return o}function getzipdata(zip,file,safe){if(!safe)return getdata(getzipfile(zip,file));if(!file)return null;try{return getzipdata(zip,file)}catch{return null}}function getzipstr(zip,file,safe){if(!safe)return getdatastr(getzipfile(zip,file));if(!file)return null;try{return getzipstr(zip,file)}catch{return null}}function getzipbin(zip,file,safe){if(!safe)return getdatabin(getzipfile(zip,file));if(!file)return null;try{return getzipbin(zip,file)}catch{return null}}function zipentries(zip){for(var k=zip.FullPaths||keys(zip.files),o=[],i=0;i<k.length;++i)k[i].slice(-1)!="/"&&o.push(k[i].replace(/^Root Entry[\/]/,""));return o.sort()}function zip_add_file(zip,path,content){if(zip.FullPaths){if(Array.isArray(content)&&typeof content[0]=="string"&&(content=content.join("")),typeof content=="string"){var res;return has_buf?res=Buffer_from(content):res=utf8decode(content),CFB.utils.cfb_add(zip,path,res)}CFB.utils.cfb_add(zip,path,content)}else zip.file(path,content)}function zip_new(){return CFB.utils.cfb_new()}function zip_read(d,o){switch(o.type){case"base64":return CFB.read(d,{type:"base64"});case"binary":return CFB.read(d,{type:"binary"});case"buffer":case"array":return CFB.read(d,{type:"buffer"})}throw new Error("Unrecognized type "+o.type)}function resolve_path(path,base){if(path.charAt(0)=="/")return path.slice(1);var result=base.split("/");base.slice(-1)!="/"&&result.pop();for(var target=path.split("/");target.length!==0;){var step=target.shift();step===".."?result.pop():step!=="."&&result.push(step)}return result.join("/")}function parsexmltag(tag,skip_root,skip_LC){for(var z={},eq=0,c=0;eq!==tag.length&&!((c=tag.charCodeAt(eq))===32||c===10||c===13);++eq);if(skip_root||(z[0]=tag.slice(0,eq)),eq===tag.length)return z;var m=tag.match(attregexg),j=0,v="",i=0,q="",cc="",quot=1;if(m)for(i=0;i!=m.length;++i){for(cc=m[i].slice(1),c=0;c!=cc.length&&cc.charCodeAt(c)!==61;++c);for(q=cc.slice(0,c).trim();cc.charCodeAt(c+1)==32;)++c;for(quot=(eq=cc.charCodeAt(c+1))==34||eq==39?1:0,v=cc.slice(c+1+quot,cc.length-quot),j=0;j!=q.length&&q.charCodeAt(j)!==58;++j);if(j===q.length)q.indexOf("_")>0&&(q=q.slice(0,q.indexOf("_"))),z[q]=v,skip_LC||(z[q.toLowerCase()]=v);else{var k=(j===5&&q.slice(0,5)==="xmlns"?"xmlns":"")+q.slice(j+1);if(z[k]&&q.slice(j-3,j)=="ext")continue;z[k]=v,skip_LC||(z[k.toLowerCase()]=v)}}return z}function parsexmltagraw(tag,skip_root,skip_LC){for(var z={},eq=0,c=0;eq!==tag.length&&!((c=tag.charCodeAt(eq))===32||c===10||c===13);++eq);if(skip_root||(z[0]=tag.slice(0,eq)),eq===tag.length)return z;var m=tag.match(attregexg),j=0,v="",i=0,q="",cc="",quot=1;if(m)for(i=0;i!=m.length;++i){for(cc=m[i].slice(1),c=0;c!=cc.length&&cc.charCodeAt(c)!==61;++c);for(q=cc.slice(0,c).trim();cc.charCodeAt(c+1)==32;)++c;quot=(eq=cc.charCodeAt(c+1))==34||eq==39?1:0,v=cc.slice(c+1+quot,cc.length-quot),q.indexOf("_")>0&&(q=q.slice(0,q.indexOf("_"))),z[q]=v,skip_LC||(z[q.toLowerCase()]=v)}return z}function strip_ns(x){return x.replace(nsregex2,"<$1")}function escapexml(text){var s=text+"";return s.replace(decregex,function(y){return rencoding[y]}).replace(charegex,function(s2){return"_x"+("000"+s2.charCodeAt(0).toString(16)).slice(-4)+"_"})}function escapexmltag(text){return escapexml(text).replace(/ /g,"_x0020_")}function escapehtml(text){var s=text+"";return s.replace(decregex,function(y){return rencoding[y]}).replace(/\n/g,"<br/>").replace(htmlcharegex,function(s2){return"&#x"+("000"+s2.charCodeAt(0).toString(16)).slice(-4)+";"})}function escapexlml(text){var s=text+"";return s.replace(decregex,function(y){return rencoding[y]}).replace(htmlcharegex,function(s2){return"&#x"+s2.charCodeAt(0).toString(16).toUpperCase()+";"})}function xlml_unfixstr(str){return str.replace(/(\r\n|[\r\n])/g," ")}function parsexmlbool(value){switch(value){case 1:case!0:case"1":case"true":return!0;case 0:case!1:case"0":case"false":return!1}return!1}function utf8reada(orig){for(var out="",i=0,c=0,d=0,e=0,f=0,w=0;i<orig.length;){if(c=orig.charCodeAt(i++),c<128){out+=String.fromCharCode(c);continue}if(d=orig.charCodeAt(i++),c>191&&c<224){f=(c&31)<<6,f|=d&63,out+=String.fromCharCode(f);continue}if(e=orig.charCodeAt(i++),c<240){out+=String.fromCharCode((c&15)<<12|(d&63)<<6|e&63);continue}f=orig.charCodeAt(i++),w=((c&7)<<18|(d&63)<<12|(e&63)<<6|f&63)-65536,out+=String.fromCharCode(55296+(w>>>10&1023)),out+=String.fromCharCode(56320+(w&1023))}return out}function utf8readb(data){var out=new_raw_buf(2*data.length),w,i,j=1,k=0,ww=0,c;for(i=0;i<data.length;i+=j)j=1,(c=data.charCodeAt(i))<128?w=c:c<224?(w=(c&31)*64+(data.charCodeAt(i+1)&63),j=2):c<240?(w=(c&15)*4096+(data.charCodeAt(i+1)&63)*64+(data.charCodeAt(i+2)&63),j=3):(j=4,w=(c&7)*262144+(data.charCodeAt(i+1)&63)*4096+(data.charCodeAt(i+2)&63)*64+(data.charCodeAt(i+3)&63),w-=65536,ww=55296+(w>>>10&1023),w=56320+(w&1023)),ww!==0&&(out[k++]=ww&255,out[k++]=ww>>>8,ww=0),out[k++]=w%256,out[k++]=w>>>8;return out.slice(0,k).toString("ucs2")}function utf8readc(data){return Buffer_from(data,"binary").toString("utf8")}function parseVector(data,opts){var h=parsexmltag(data),matches=str_match_xml_ns_g(data,h.baseType)||[],res=[];if(matches.length!=h.size){if(opts.WTF)throw new Error("unexpected vector length "+matches.length+" != "+h.size);return res}return matches.forEach(function(x){var v=x.replace(vtvregex,"").match(vtmregex);v&&res.push({v:utf8read(v[2]),t:v[1]})}),res}function writetag(f,g){return"<"+f+(g.match(wtregex)?' xml:space="preserve"':"")+">"+g+"</"+f+">"}function wxt_helper(h){return keys(h).map(function(k){return" "+k+'="'+h[k]+'"'}).join("")}function writextag(f,g,h){return"<"+f+(h!=null?wxt_helper(h):"")+(g!=null?(g.match(wtregex)?' xml:space="preserve"':"")+">"+g+"</"+f:"/")+">"}function write_w3cdtf(d,t){try{return d.toISOString().replace(/\.\d*/,"")}catch(e){if(t)throw e}return""}function write_vt(s,xlsx){switch(typeof s){case"string":var o=writextag("vt:lpwstr",escapexml(s));return xlsx&&(o=o.replace(/"/g,"_x0022_")),o;case"number":return writextag((s|0)==s?"vt:i4":"vt:r8",escapexml(String(s)));case"boolean":return writextag("vt:bool",s?"true":"false")}if(s instanceof Date)return writextag("vt:filetime",write_w3cdtf(s));throw new Error("Unable to serialize "+s)}function xlml_normalize(d){if(has_buf&&Buffer.isBuffer(d))return d.toString("utf8");if(typeof d=="string")return d;if(typeof Uint8Array<"u"&&d instanceof Uint8Array)return utf8read(a2s(ab2a(d)));throw new Error("Bad input format: expected Buffer or string")}function read_double_le(b,idx){for(var s=1-2*(b[idx+7]>>>7),e=((b[idx+7]&127)<<4)+(b[idx+6]>>>4&15),m=b[idx+6]&15,i=5;i>=0;--i)m=m*256+b[idx+i];return e==2047?m==0?s*(1/0):NaN:(e==0?e=-1022:(e-=1023,m+=Math.pow(2,52)),s*Math.pow(2,e-52)*m)}function write_double_le(b,v,idx){var bs=(v<0||1/v==-1/0?1:0)<<7,e=0,m=0,av=bs?-v:v;isFinite(av)?av==0?e=m=0:(e=Math.floor(Math.log(av)/Math.LN2),m=av*Math.pow(2,52-e),e<=-1023&&(!isFinite(m)||m<Math.pow(2,52))?e=-1022:(m-=Math.pow(2,52),e+=1023)):(e=2047,m=isNaN(v)?26985:0);for(var i=0;i<=5;++i,m/=256)b[idx+i]=m&255;b[idx+6]=(e&15)<<4|m&15,b[idx+7]=e>>4|bs}function cpdoit(){__utf16le=function(b,s,e){return $cptable.utils.decode(1200,b.slice(s,e)).replace(chr0,"")},__utf8=function(b,s,e){return $cptable.utils.decode(65001,b.slice(s,e))},__lpstr=function(b,i){var len=__readUInt32LE(b,i);return len>0?$cptable.utils.decode(current_ansi,b.slice(i+4,i+4+len-1)):""},__cpstr=function(b,i){var len=__readUInt32LE(b,i);return len>0?$cptable.utils.decode(current_codepage,b.slice(i+4,i+4+len-1)):""},__lpwstr=function(b,i){var len=2*__readUInt32LE(b,i);return len>0?$cptable.utils.decode(1200,b.slice(i+4,i+4+len-1)):""},__lpp4=function(b,i){var len=__readUInt32LE(b,i);return len>0?$cptable.utils.decode(1200,b.slice(i+4,i+4+len)):""},__8lpp4=function(b,i){var len=__readUInt32LE(b,i);return len>0?$cptable.utils.decode(65001,b.slice(i+4,i+4+len)):""}}function ReadShift(size,t){var o="",oI,oR,oo=[],w,vv,i,loc;switch(t){case"dbcs":if(loc=this.l,has_buf&&Buffer.isBuffer(this)&&buf_utf16le)o=this.slice(this.l,this.l+2*size).toString("utf16le");else for(i=0;i<size;++i)o+=String.fromCharCode(__readUInt16LE(this,loc)),loc+=2;size*=2;break;case"utf8":o=__utf8(this,this.l,this.l+size);break;case"utf16le":size*=2,o=__utf16le(this,this.l,this.l+size);break;case"wstr":if(typeof $cptable<"u")o=$cptable.utils.decode(current_codepage,this.slice(this.l,this.l+2*size));else return ReadShift.call(this,size,"dbcs");size=2*size;break;case"lpstr-ansi":o=__lpstr(this,this.l),size=4+__readUInt32LE(this,this.l);break;case"lpstr-cp":o=__cpstr(this,this.l),size=4+__readUInt32LE(this,this.l);break;case"lpwstr":o=__lpwstr(this,this.l),size=4+2*__readUInt32LE(this,this.l);break;case"lpp4":size=4+__readUInt32LE(this,this.l),o=__lpp4(this,this.l),size&2&&(size+=2);break;case"8lpp4":size=4+__readUInt32LE(this,this.l),o=__8lpp4(this,this.l),size&3&&(size+=4-(size&3));break;case"cstr":for(size=0,o="";(w=__readUInt8(this,this.l+size++))!==0;)oo.push(_getchar(w));o=oo.join("");break;case"_wstr":for(size=0,o="";(w=__readUInt16LE(this,this.l+size))!==0;)oo.push(_getchar(w)),size+=2;size+=2,o=oo.join("");break;case"dbcs-cont":for(o="",loc=this.l,i=0;i<size;++i){if(this.lens&&this.lens.indexOf(loc)!==-1)return w=__readUInt8(this,loc),this.l=loc+1,vv=ReadShift.call(this,size-i,w?"dbcs-cont":"sbcs-cont"),oo.join("")+vv;oo.push(_getchar(__readUInt16LE(this,loc))),loc+=2}o=oo.join(""),size*=2;break;case"cpstr":if(typeof $cptable<"u"){o=$cptable.utils.decode(current_codepage,this.slice(this.l,this.l+size));break}case"sbcs-cont":for(o="",loc=this.l,i=0;i!=size;++i){if(this.lens&&this.lens.indexOf(loc)!==-1)return w=__readUInt8(this,loc),this.l=loc+1,vv=ReadShift.call(this,size-i,w?"dbcs-cont":"sbcs-cont"),oo.join("")+vv;oo.push(_getchar(__readUInt8(this,loc))),loc+=1}o=oo.join("");break;default:switch(size){case 1:return oI=__readUInt8(this,this.l),this.l++,oI;case 2:return oI=(t==="i"?__readInt16LE:__readUInt16LE)(this,this.l),this.l+=2,oI;case 4:case-4:return t==="i"||(this[this.l+3]&128)===0?(oI=(size>0?__readInt32LE:__readInt32BE)(this,this.l),this.l+=4,oI):(oR=__readUInt32LE(this,this.l),this.l+=4,oR);case 8:case-8:if(t==="f")return size==8?oR=__double(this,this.l):oR=__double([this[this.l+7],this[this.l+6],this[this.l+5],this[this.l+4],this[this.l+3],this[this.l+2],this[this.l+1],this[this.l+0]],0),this.l+=8,oR;size=8;case 16:o=__hexlify(this,this.l,size);break}}return this.l+=size,o}function WriteShift(t,val2,f){var size=0,i=0;if(f==="dbcs"){for(i=0;i!=val2.length;++i)__writeUInt16LE(this,val2.charCodeAt(i),this.l+2*i);size=2*val2.length}else if(f==="sbcs"||f=="cpstr")if(typeof $cptable<"u"&¤t_ansi==874){for(i=0;i!=val2.length;++i){var cpp=$cptable.utils.encode(current_ansi,val2.charAt(i));this[this.l+i]=cpp[0]}size=val2.length}else if(typeof $cptable<"u"&&f=="cpstr"){if(cpp=$cptable.utils.encode(current_codepage,val2),cpp.length==val2.length)for(i=0;i<val2.length;++i)cpp[i]==0&&val2.charCodeAt(i)!=0&&(cpp[i]=95);if(cpp.length==2*val2.length)for(i=0;i<val2.length;++i)cpp[2*i]==0&&cpp[2*i+1]==0&&val2.charCodeAt(i)!=0&&(cpp[2*i]=95);for(i=0;i<cpp.length;++i)this[this.l+i]=cpp[i];size=cpp.length}else{for(val2=val2.replace(/[^\x00-\x7F]/g,"_"),i=0;i!=val2.length;++i)this[this.l+i]=val2.charCodeAt(i)&255;size=val2.length}else if(f==="hex"){for(;i<t;++i)this[this.l++]=parseInt(val2.slice(2*i,2*i+2),16)||0;return this}else if(f==="utf16le"){var end=Math.min(this.l+t,this.length);for(i=0;i<Math.min(val2.length,t);++i){var cc=val2.charCodeAt(i);this[this.l++]=cc&255,this[this.l++]=cc>>8}for(;this.l<end;)this[this.l++]=0;return this}else switch(t){case 1:size=1,this[this.l]=val2&255;break;case 2:size=2,this[this.l]=val2&255,val2>>>=8,this[this.l+1]=val2&255;break;case 3:size=3,this[this.l]=val2&255,val2>>>=8,this[this.l+1]=val2&255,val2>>>=8,this[this.l+2]=val2&255;break;case 4:size=4,__writeUInt32LE(this,val2,this.l);break;case 8:if(size=8,f==="f"){write_double_le(this,val2,this.l);break}case 16:break;case-4:size=4,__writeInt32LE(this,val2,this.l);break}return this.l+=size,this}function CheckField(hexstr,fld){var m=__hexlify(this,this.l,hexstr.length>>1);if(m!==hexstr)throw new Error(fld+"Expected "+hexstr+" saw "+m);this.l+=hexstr.length>>1}function prep_blob(blob,pos){blob.l=pos,blob.read_shift=ReadShift,blob.chk=CheckField,blob.write_shift=WriteShift}function parsenoop(blob,length){blob.l+=length}function new_buf(sz){var o=new_raw_buf(sz);return prep_blob(o,0),o}function recordhopper(data,cb,opts){if(data){var tmpbyte,cntbyte,length;prep_blob(data,data.l||0);for(var L=data.length,RT=0,tgt=0;data.l<L;){RT=data.read_shift(1),RT&128&&(RT=(RT&127)+((data.read_shift(1)&127)<<7));var R=XLSBRecordEnum[RT]||XLSBRecordEnum[65535];for(tmpbyte=data.read_shift(1),length=tmpbyte&127,cntbyte=1;cntbyte<4&&tmpbyte&128;++cntbyte)length+=((tmpbyte=data.read_shift(1))&127)<<7*cntbyte;tgt=data.l+length;var d=R.f&&R.f(data,length,opts);if(data.l=tgt,cb(d,R,RT))return}}}function buf_array(){var bufs=[],blksz=has_buf?16384:2048,has_buf_copy=has_buf&&typeof new_buf(blksz).copy=="function",newblk=function(sz){var o=new_buf(sz);return prep_blob(o,0),o},curbuf=newblk(blksz),endbuf=function(){curbuf&&(curbuf.l&&(curbuf.length>curbuf.l&&(curbuf=curbuf.slice(0,curbuf.l),curbuf.l=curbuf.length),curbuf.length>0&&bufs.push(curbuf)),curbuf=null)},next=function(sz){return curbuf&&sz<curbuf.length-curbuf.l?curbuf:(endbuf(),curbuf=newblk(Math.max(sz+1,blksz)))},end=function(){return endbuf(),bconcat(bufs)},end2=function(){return endbuf(),bufs},push=function(buf){endbuf(),curbuf=buf,curbuf.l==null&&(curbuf.l=curbuf.length),next(blksz)};return{next,push,end,_bufs:bufs,end2}}function write_record(ba,type,payload,length){var t=+type,l;if(!isNaN(t)){length||(length=XLSBRecordEnum[t].p||(payload||[]).length||0),l=1+(t>=128?1:0)+1,length>=128&&++l,length>=16384&&++l,length>=2097152&&++l;var o=ba.next(l);t<=127?o.write_shift(1,t):(o.write_shift(1,(t&127)+128),o.write_shift(1,t>>7));for(var i=0;i!=4;++i)if(length>=128)o.write_shift(1,(length&127)+128),length>>=7;else{o.write_shift(1,length);break}length>0&&is_buf(payload)&&ba.push(payload)}}function shift_cell_xls(cell2,tgt,opts){var out=dup(cell2);if(tgt.s?(out.cRel&&(out.c+=tgt.s.c),out.rRel&&(out.r+=tgt.s.r)):(out.cRel&&(out.c+=tgt.c),out.rRel&&(out.r+=tgt.r)),!opts||opts.biff<12){for(;out.c>=256;)out.c-=256;for(;out.r>=65536;)out.r-=65536}return out}function shift_range_xls(cell2,range,opts){var out=dup(cell2);return out.s=shift_cell_xls(out.s,range.s,opts),out.e=shift_cell_xls(out.e,range.s,opts),out}function encode_cell_xls(c,biff){if(c.cRel&&c.c<0)for(c=dup(c);c.c<0;)c.c+=biff>8?16384:256;if(c.rRel&&c.r<0)for(c=dup(c);c.r<0;)c.r+=biff>8?1048576:biff>5?65536:16384;var s=encode_cell(c);return!c.cRel&&c.cRel!=null&&(s=fix_col(s)),!c.rRel&&c.rRel!=null&&(s=fix_row(s)),s}function encode_range_xls(r,opts){return r.s.r==0&&!r.s.rRel&&r.e.r==(opts.biff>=12?1048575:opts.biff>=8?65536:16384)&&!r.e.rRel?(r.s.cRel?"":"$")+encode_col(r.s.c)+":"+(r.e.cRel?"":"$")+encode_col(r.e.c):r.s.c==0&&!r.s.cRel&&r.e.c==(opts.biff>=12?16383:255)&&!r.e.cRel?(r.s.rRel?"":"$")+encode_row(r.s.r)+":"+(r.e.rRel?"":"$")+encode_row(r.e.r):encode_cell_xls(r.s,opts.biff)+":"+encode_cell_xls(r.e,opts.biff)}function decode_row(rowstr){return parseInt(unfix_row(rowstr),10)-1}function encode_row(row){return""+(row+1)}function fix_row(cstr){return cstr.replace(/([A-Z]|^)(\d+)$/,"$1$$$2")}function unfix_row(cstr){return cstr.replace(/\$(\d+)$/,"$1")}function decode_col(colstr){for(var c=unfix_col(colstr),d=0,i=0;i!==c.length;++i)d=26*d+c.charCodeAt(i)-64;return d-1}function encode_col(col){if(col<0)throw new Error("invalid column "+col);var s="";for(++col;col;col=Math.floor((col-1)/26))s=String.fromCharCode((col-1)%26+65)+s;return s}function fix_col(cstr){return cstr.replace(/^([A-Z])/,"$$$1")}function unfix_col(cstr){return cstr.replace(/^\$([A-Z])/,"$1")}function split_cell(cstr){return cstr.replace(/(\$?[A-Z]*)(\$?\d*)/,"$1,$2").split(",")}function decode_cell(cstr){for(var R=0,C=0,i=0;i<cstr.length;++i){var cc=cstr.charCodeAt(i);cc>=48&&cc<=57?R=10*R+(cc-48):cc>=65&&cc<=90&&(C=26*C+(cc-64))}return{c:C-1,r:R-1}}function encode_cell(cell2){for(var col=cell2.c+1,s="";col;col=(col-1)/26|0)s=String.fromCharCode((col-1)%26+65)+s;return s+(cell2.r+1)}function decode_range(range){var idx=range.indexOf(":");return idx==-1?{s:decode_cell(range),e:decode_cell(range)}:{s:decode_cell(range.slice(0,idx)),e:decode_cell(range.slice(idx+1))}}function encode_range(cs,ce){return typeof ce>"u"||typeof ce=="number"?encode_range(cs.s,cs.e):(typeof cs!="string"&&(cs=encode_cell(cs)),typeof ce!="string"&&(ce=encode_cell(ce)),cs==ce?cs:cs+":"+ce)}function fix_range(a1){var s=decode_range(a1);return"$"+encode_col(s.s.c)+"$"+encode_row(s.s.r)+":$"+encode_col(s.e.c)+"$"+encode_row(s.e.r)}function formula_quote_sheet_name(sname,opts){if(!sname&&!(opts&&opts.biff<=5&&opts.biff>=2))throw new Error("empty sheet name");return/[^\w\u4E00-\u9FFF\u3040-\u30FF]/.test(sname)?"'"+sname.replace(/'/g,"''")+"'":sname}function safe_decode_range(range){var o={s:{c:0,r:0},e:{c:0,r:0}},idx=0,i=0,cc=0,len=range.length;for(idx=0;i<len&&!((cc=range.charCodeAt(i)-64)<1||cc>26);++i)idx=26*idx+cc;for(o.s.c=--idx,idx=0;i<len&&!((cc=range.charCodeAt(i)-48)<0||cc>9);++i)idx=10*idx+cc;if(o.s.r=--idx,i===len||cc!=10)return o.e.c=o.s.c,o.e.r=o.s.r,o;for(++i,idx=0;i!=len&&!((cc=range.charCodeAt(i)-64)<1||cc>26);++i)idx=26*idx+cc;for(o.e.c=--idx,idx=0;i!=len&&!((cc=range.charCodeAt(i)-48)<0||cc>9);++i)idx=10*idx+cc;return o.e.r=--idx,o}function safe_format_cell(cell2,v){var q=cell2.t=="d"&&v instanceof Date;if(cell2.z!=null)try{return cell2.w=SSF_format(cell2.z,q?datenum(v):v)}catch{}try{return cell2.w=SSF_format((cell2.XF||{}).numFmtId||(q?14:0),q?datenum(v):v)}catch{return""+v}}function format_cell(cell2,v,o){return cell2==null||cell2.t==null||cell2.t=="z"?"":cell2.w!==void 0?cell2.w:(cell2.t=="d"&&!cell2.z&&o&&o.dateNF&&(cell2.z=o.dateNF),cell2.t=="e"?BErr[cell2.v]||cell2.v:v==null?safe_format_cell(cell2,cell2.v):safe_format_cell(cell2,v))}function sheet_to_workbook(sheet,opts){var n=opts&&opts.sheet?opts.sheet:"Sheet1",sheets={};return sheets[n]=sheet,{SheetNames:[n],Sheets:sheets}}function sheet_new(opts){var out={},o=opts||{};return o.dense&&(out["!data"]=[]),out}function sheet_add_aoa(_ws,data,opts){var o=opts||{},dense=_ws?_ws["!data"]!=null:o.dense;DENSE!=null&&dense==null&&(dense=DENSE);var ws=_ws||(dense?{"!data":[]}:{});dense&&!ws["!data"]&&(ws["!data"]=[]);var _R=0,_C=0;if(ws&&o.origin!=null)if(typeof o.origin=="number")_R=o.origin;else{var _origin=typeof o.origin=="string"?decode_cell(o.origin):o.origin;_R=_origin.r,_C=_origin.c}var range={s:{c:1e7,r:1e7},e:{c:0,r:0}};if(ws["!ref"]){var _range=safe_decode_range(ws["!ref"]);range.s.c=_range.s.c,range.s.r=_range.s.r,range.e.c=Math.max(range.e.c,_range.e.c),range.e.r=Math.max(range.e.r,_range.e.r),_R==-1&&(range.e.r=_R=ws["!ref"]?_range.e.r+1:0)}else range.s.c=range.e.c=range.s.r=range.e.r=0;for(var row=[],seen=!1,R=0;R!=data.length;++R)if(data[R]){if(!Array.isArray(data[R]))throw new Error("aoa_to_sheet expects an array of arrays");var __R=_R+R;dense&&(ws["!data"][__R]||(ws["!data"][__R]=[]),row=ws["!data"][__R]);for(var data_R=data[R],C=0;C!=data_R.length;++C)if(!(typeof data_R[C]>"u")){var cell2={v:data_R[C],t:""},__C=_C+C;if(range.s.r>__R&&(range.s.r=__R),range.s.c>__C&&(range.s.c=__C),range.e.r<__R&&(range.e.r=__R),range.e.c<__C&&(range.e.c=__C),seen=!0,data_R[C]&&typeof data_R[C]=="object"&&!Array.isArray(data_R[C])&&!(data_R[C]instanceof Date))cell2=data_R[C];else if(Array.isArray(cell2.v)&&(cell2.f=data_R[C][1],cell2.v=cell2.v[0]),cell2.v===null)if(cell2.f)cell2.t="n";else if(o.nullError)cell2.t="e",cell2.v=0;else if(o.sheetStubs)cell2.t="z";else continue;else typeof cell2.v=="number"?isFinite(cell2.v)?cell2.t="n":isNaN(cell2.v)?(cell2.t="e",cell2.v=15):(cell2.t="e",cell2.v=7):typeof cell2.v=="boolean"?cell2.t="b":cell2.v instanceof Date?(cell2.z=o.dateNF||table_fmt[14],o.UTC||(cell2.v=local_to_utc(cell2.v)),o.cellDates?(cell2.t="d",cell2.w=SSF_format(cell2.z,datenum(cell2.v,o.date1904))):(cell2.t="n",cell2.v=datenum(cell2.v,o.date1904),cell2.w=SSF_format(cell2.z,cell2.v))):cell2.t="s";if(dense)row[__C]&&row[__C].z&&(cell2.z=row[__C].z),row[__C]=cell2;else{var cell_ref=encode_col(__C)+(__R+1);ws[cell_ref]&&ws[cell_ref].z&&(cell2.z=ws[cell_ref].z),ws[cell_ref]=cell2}}}return seen&&range.s.c<104e5&&(ws["!ref"]=encode_range(range)),ws}function aoa_to_sheet(data,opts){return sheet_add_aoa(null,data,opts)}function parse_Int32LE(data){return data.read_shift(4,"i")}function write_UInt32LE(x,o){return o||(o=new_buf(4)),o.write_shift(4,x),o}function parse_XLWideString(data){var cchCharacters=data.read_shift(4);return cchCharacters===0?"":data.read_shift(cchCharacters,"dbcs")}function write_XLWideString(data,o){var _null=!1;return o==null&&(_null=!0,o=new_buf(4+2*data.length)),o.write_shift(4,data.length),data.length>0&&o.write_shift(0,data,"dbcs"),_null?o.slice(0,o.l):o}function parse_StrRun(data){return{ich:data.read_shift(2),ifnt:data.read_shift(2)}}function write_StrRun(run,o){return o||(o=new_buf(4)),o.write_shift(2,run.ich||0),o.write_shift(2,run.ifnt||0),o}function parse_RichStr(data,length){var start=data.l,flags=data.read_shift(1),str=parse_XLWideString(data),rgsStrRun=[],z={t:str,h:str};if((flags&1)!==0){for(var dwSizeStrRun=data.read_shift(4),i=0;i!=dwSizeStrRun;++i)rgsStrRun.push(parse_StrRun(data));z.r=rgsStrRun}else z.r=[{ich:0,ifnt:0}];return data.l=start+length,z}function write_RichStr(str,o){var _null=!1;return o==null&&(_null=!0,o=new_buf(15+4*str.t.length)),o.write_shift(1,0),write_XLWideString(str.t,o),_null?o.slice(0,o.l):o}function write_BrtCommentText(str,o){var _null=!1;return o==null&&(_null=!0,o=new_buf(23+4*str.t.length)),o.write_shift(1,1),write_XLWideString(str.t,o),o.write_shift(4,1),write_StrRun({ich:0,ifnt:0},o),_null?o.slice(0,o.l):o}function parse_XLSBCell(data){var col=data.read_shift(4),iStyleRef=data.read_shift(2);return iStyleRef+=data.read_shift(1)<<16,data.l++,{c:col,iStyleRef}}function write_XLSBCell(cell2,o){return o==null&&(o=new_buf(8)),o.write_shift(-4,cell2.c),o.write_shift(3,cell2.iStyleRef||cell2.s),o.write_shift(1,0),o}function parse_XLSBShortCell(data){var iStyleRef=data.read_shift(2);return iStyleRef+=data.read_shift(1)<<16,data.l++,{c:-1,iStyleRef}}function write_XLSBShortCell(cell2,o){return o==null&&(o=new_buf(4)),o.write_shift(3,cell2.iStyleRef||cell2.s),o.write_shift(1,0),o}function parse_XLNullableWideString(data){var cchCharacters=data.read_shift(4);return cchCharacters===0||cchCharacters===4294967295?"":data.read_shift(cchCharacters,"dbcs")}function write_XLNullableWideString(data,o){var _null=!1;return o==null&&(_null=!0,o=new_buf(127)),o.write_shift(4,data.length>0?data.length:4294967295),data.length>0&&o.write_shift(0,data,"dbcs"),_null?o.slice(0,o.l):o}function parse_RkNumber(data){var b=data.slice(data.l,data.l+4),fX100=b[0]&1,fInt=b[0]&2;data.l+=4;var RK=fInt===0?__double([0,0,0,0,b[0]&252,b[1],b[2],b[3]],0):__readInt32LE(b,0)>>2;return fX100?RK/100:RK}function write_RkNumber(data,o){o==null&&(o=new_buf(4));var fX100=0,fInt=0,d100=data*100;if(data==(data|0)&&data>=-(1<<29)&&data<1<<29?fInt=1:d100==(d100|0)&&d100>=-(1<<29)&&d100<1<<29&&(fInt=1,fX100=1),fInt)o.write_shift(-4,((fX100?d100:data)<<2)+(fX100+2));else throw new Error("unsupported RkNumber "+data)}function parse_RfX(data){var cell2={s:{},e:{}};return cell2.s.r=data.read_shift(4),cell2.e.r=data.read_shift(4),cell2.s.c=data.read_shift(4),cell2.e.c=data.read_shift(4),cell2}function write_RfX(r,o){return o||(o=new_buf(16)),o.write_shift(4,r.s.r),o.write_shift(4,r.e.r),o.write_shift(4,r.s.c),o.write_shift(4,r.e.c),o}function parse_Xnum(data){if(data.length-data.l<8)throw"XLS Xnum Buffer underflow";return data.read_shift(8,"f")}function write_Xnum(data,o){return(o||new_buf(8)).write_shift(8,data,"f")}function parse_BrtColor(data){var out={},d=data.read_shift(1),xColorType=d>>>1,index=data.read_shift(1),nTS=data.read_shift(2,"i"),bR=data.read_shift(1),bG=data.read_shift(1),bB=data.read_shift(1);switch(data.l++,xColorType){case 0:out.auto=1;break;case 1:out.index=index;var icv=XLSIcv[index];icv&&(out.rgb=rgb2Hex(icv));break;case 2:out.rgb=rgb2Hex([bR,bG,bB]);break;case 3:out.theme=index;break}return nTS!=0&&(out.tint=nTS>0?nTS/32767:nTS/32768),out}function write_BrtColor(color,o){if(o||(o=new_buf(8)),!color||color.auto)return o.write_shift(4,0),o.write_shift(4,0),o;color.index!=null?(o.write_shift(1,2),o.write_shift(1,color.index)):color.theme!=null?(o.write_shift(1,6),o.write_shift(1,color.theme)):(o.write_shift(1,5),o.write_shift(1,0));var nTS=color.tint||0;if(nTS>0?nTS*=32767:nTS<0&&(nTS*=32768),o.write_shift(2,nTS),!color.rgb||color.theme!=null)o.write_shift(2,0),o.write_shift(1,0),o.write_shift(1,0);else{var rgb=color.rgb||"FFFFFF";typeof rgb=="number"&&(rgb=("000000"+rgb.toString(16)).slice(-6)),o.write_shift(1,parseInt(rgb.slice(0,2),16)),o.write_shift(1,parseInt(rgb.slice(2,4),16)),o.write_shift(1,parseInt(rgb.slice(4,6),16)),o.write_shift(1,255)}return o}function parse_FontFlags(data){var d=data.read_shift(1);data.l++;var out={fBold:d&1,fItalic:d&2,fUnderline:d&4,fStrikeout:d&8,fOutline:d&16,fShadow:d&32,fCondense:d&64,fExtend:d&128};return out}function write_FontFlags(font,o){o||(o=new_buf(2));var grbit=(font.italic?2:0)|(font.strike?8:0)|(font.outline?16:0)|(font.shadow?32:0)|(font.condense?64:0)|(font.extend?128:0);return o.write_shift(1,grbit),o.write_shift(1,0),o}function parse_ClipboardFormatOrString(o,w){var ClipFmt={2:"BITMAP",3:"METAFILEPICT",8:"DIB",14:"ENHMETAFILE"},m=o.read_shift(4);switch(m){case 0:return"";case 4294967295:case 4294967294:return ClipFmt[o.read_shift(4)]||""}if(m>400)throw new Error("Unsupported Clipboard: "+m.toString(16));return o.l-=4,o.read_shift(0,w==1?"lpstr":"lpwstr")}function parse_ClipboardFormatOrAnsiString(o){return parse_ClipboardFormatOrString(o,1)}function parse_ClipboardFormatOrUnicodeString(o){return parse_ClipboardFormatOrString(o,2)}function rgbify(arr){return arr.map(function(x){return[x>>16&255,x>>8&255,x&255]})}function new_ct(){return{workbooks:[],sheets:[],charts:[],dialogs:[],macros:[],rels:[],strs:[],comments:[],threadedcomments:[],links:[],coreprops:[],extprops:[],custprops:[],themes:[],styles:[],calcchains:[],vba:[],drawings:[],metadata:[],people:[],TODO:[],xmlns:""}}function parse_ct(data){var ct=new_ct();if(!data||!data.match)return ct;var ctext={};if((data.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0].replace(nsregex,"<")){case"<?xml":break;case"<Types":ct.xmlns=y["xmlns"+(y[0].match(/<(\w+):/)||["",""])[1]];break;case"<Default":ctext[y.Extension.toLowerCase()]=y.ContentType;break;case"<Override":ct[ct2type[y.ContentType]]!==void 0&&ct[ct2type[y.ContentType]].push(y.PartName);break}}),ct.xmlns!==XMLNS.CT)throw new Error("Unknown Namespace: "+ct.xmlns);return ct.calcchain=ct.calcchains.length>0?ct.calcchains[0]:"",ct.sst=ct.strs.length>0?ct.strs[0]:"",ct.style=ct.styles.length>0?ct.styles[0]:"",ct.defaults=ctext,delete ct.calcchains,ct}function write_ct(ct,opts,raw){var type2ct=evert_arr(ct2type),o=[],v;raw||(o[o.length]=XML_HEADER,o[o.length]=writextag("Types",null,{xmlns:XMLNS.CT,"xmlns:xsd":XMLNS.xsd,"xmlns:xsi":XMLNS.xsi}),o=o.concat([["xml","application/xml"],["bin","application/vnd.ms-excel.sheet.binary.macroEnabled.main"],["vml","application/vnd.openxmlformats-officedocument.vmlDrawing"],["data","application/vnd.openxmlformats-officedocument.model+data"],["bmp","image/bmp"],["png","image/png"],["gif","image/gif"],["emf","image/x-emf"],["wmf","image/x-wmf"],["jpg","image/jpeg"],["jpeg","image/jpeg"],["tif","image/tiff"],["tiff","image/tiff"],["pdf","application/pdf"],["rels","application/vnd.openxmlformats-package.relationships+xml"]].map(function(x){return writextag("Default",null,{Extension:x[0],ContentType:x[1]})})));var f1=function(w){ct[w]&&ct[w].length>0&&(v=ct[w][0],o[o.length]=writextag("Override",null,{PartName:(v[0]=="/"?"":"/")+v,ContentType:CT_LIST[w][opts.bookType]||CT_LIST[w].xlsx}))},f2=function(w){(ct[w]||[]).forEach(function(v2){o[o.length]=writextag("Override",null,{PartName:(v2[0]=="/"?"":"/")+v2,ContentType:CT_LIST[w][opts.bookType]||CT_LIST[w].xlsx})})},f3=function(t){(ct[t]||[]).forEach(function(v2){o[o.length]=writextag("Override",null,{PartName:(v2[0]=="/"?"":"/")+v2,ContentType:type2ct[t][0]})})};return f1("workbooks"),f2("sheets"),f2("charts"),f3("themes"),["strs","styles"].forEach(f1),["coreprops","extprops","custprops"].forEach(f3),f3("vba"),f3("comments"),f3("threadedcomments"),f3("drawings"),f2("metadata"),f3("people"),!raw&&o.length>2&&(o[o.length]="</Types>",o[1]=o[1].replace("/>",">")),o.join("")}function get_rels_path(file){var n=file.lastIndexOf("/");return file.slice(0,n+1)+"_rels/"+file.slice(n+1)+".rels"}function parse_rels(data,currentFilePath){var rels={"!id":{}};if(!data)return rels;currentFilePath.charAt(0)!=="/"&&(currentFilePath="/"+currentFilePath);var hash={};return(data.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);if(y[0]==="<Relationship"){var rel={};rel.Type=y.Type,rel.Target=unescapexml(y.Target),rel.Id=y.Id,y.TargetMode&&(rel.TargetMode=y.TargetMode);var canonictarget=y.TargetMode==="External"?y.Target:resolve_path(y.Target,currentFilePath);rels[canonictarget]=rel,hash[y.Id]=rel}}),rels["!id"]=hash,rels}function write_rels(rels){var o=[XML_HEADER,writextag("Relationships",null,{xmlns:XMLNS.RELS})];return keys(rels["!id"]).forEach(function(rid){o[o.length]=writextag("Relationship",null,rels["!id"][rid])}),o.length>2&&(o[o.length]="</Relationships>",o[1]=o[1].replace("/>",">")),o.join("")}function add_rels(rels,rId,f,type,relobj,targetmode){if(relobj||(relobj={}),rels["!id"]||(rels["!id"]={}),rels["!idx"]||(rels["!idx"]=1),rId<0)for(rId=rels["!idx"];rels["!id"]["rId"+rId];++rId);if(rels["!idx"]=rId+1,relobj.Id="rId"+rId,relobj.Type=type,relobj.Target=f,targetmode?relobj.TargetMode=targetmode:[RELS.HLINK,RELS.XPATH,RELS.XMISS].indexOf(relobj.Type)>-1&&(relobj.TargetMode="External"),rels["!id"][relobj.Id])throw new Error("Cannot rewrite rId "+rId);return rels["!id"][relobj.Id]=relobj,rels[("/"+relobj.Target).replace("//","/")]=relobj,rId}function parse_manifest(d,opts){for(var str=xlml_normalize(d),Rn,FEtag;Rn=xlmlregex.exec(str);)switch(Rn[3]){case"manifest":break;case"file-entry":if(FEtag=parsexmltag(Rn[0],!1),FEtag.path=="/"&&FEtag.type!==CT_ODS)throw new Error("This OpenDocument is not a spreadsheet");break;case"encryption-data":case"algorithm":case"start-key-generation":case"key-derivation":throw new Error("Unsupported ODS Encryption");default:if(opts&&opts.WTF)throw Rn}}function write_manifest(manifest){var o=[XML_HEADER];o.push(`<manifest:manifest xmlns:manifest="urn:oasis:names:tc:opendocument:xmlns:manifest:1.0" manifest:version="1.2">
|
|
2
|
-
`),o.push(` <manifest:file-entry manifest:full-path="/" manifest:version="1.2" manifest:media-type="application/vnd.oasis.opendocument.spreadsheet"/>
|
|
3
|
-
`);for(var i=0;i<manifest.length;++i)o.push(' <manifest:file-entry manifest:full-path="'+manifest[i][0]+'" manifest:media-type="'+manifest[i][1]+`"/>
|
|
4
|
-
`);return o.push("</manifest:manifest>"),o.join("")}function write_rdf_type(file,res,tag){return[' <rdf:Description rdf:about="'+file+`">
|
|
5
|
-
`,' <rdf:type rdf:resource="http://docs.oasis-open.org/ns/office/1.2/meta/'+(tag||"odf")+"#"+res+`"/>
|
|
6
|
-
`,` </rdf:Description>
|
|
7
|
-
`].join("")}function write_rdf_has(base,file){return[' <rdf:Description rdf:about="'+base+`">
|
|
8
|
-
`,' <ns0:hasPart xmlns:ns0="http://docs.oasis-open.org/ns/office/1.2/meta/pkg#" rdf:resource="'+file+`"/>
|
|
9
|
-
`,` </rdf:Description>
|
|
10
|
-
`].join("")}function write_rdf(rdf){var o=[XML_HEADER];o.push(`<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
|
|
11
|
-
`);for(var i=0;i!=rdf.length;++i)o.push(write_rdf_type(rdf[i][0],rdf[i][1])),o.push(write_rdf_has("",rdf[i][0]));return o.push(write_rdf_type("","Document","pkg")),o.push("</rdf:RDF>"),o.join("")}function write_meta_ods(wb,opts){return'<office:document-meta xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xlink="http://www.w3.org/1999/xlink" office:version="1.2"><office:meta><meta:generator>SheetJS '+XLSX.version+"</meta:generator></office:meta></office:document-meta>"}function parse_core_props(data){var p={};data=utf8read(data);for(var i=0;i<CORE_PROPS.length;++i){var f=CORE_PROPS[i],cur=str_match_xml(data,f[0]);cur!=null&&cur.length>0&&(p[f[1]]=unescapexml(cur[1])),f[2]==="date"&&p[f[1]]&&(p[f[1]]=parseDate(p[f[1]]))}return p}function cp_doit(f,g,h,o,p){p[f]!=null||g==null||g===""||(p[f]=g,g=escapexml(g),o[o.length]=h?writextag(f,g,h):writetag(f,g))}function write_core_props(cp,_opts){var opts=_opts||{},o=[XML_HEADER,writextag("cp:coreProperties",null,{"xmlns:cp":XMLNS.CORE_PROPS,"xmlns:dc":XMLNS.dc,"xmlns:dcterms":XMLNS.dcterms,"xmlns:dcmitype":XMLNS.dcmitype,"xmlns:xsi":XMLNS.xsi})],p={};if(!cp&&!opts.Props)return o.join("");cp&&(cp.CreatedDate!=null&&cp_doit("dcterms:created",typeof cp.CreatedDate=="string"?cp.CreatedDate:write_w3cdtf(cp.CreatedDate,opts.WTF),{"xsi:type":"dcterms:W3CDTF"},o,p),cp.ModifiedDate!=null&&cp_doit("dcterms:modified",typeof cp.ModifiedDate=="string"?cp.ModifiedDate:write_w3cdtf(cp.ModifiedDate,opts.WTF),{"xsi:type":"dcterms:W3CDTF"},o,p));for(var i=0;i!=CORE_PROPS.length;++i){var f=CORE_PROPS[i],v=opts.Props&&opts.Props[f[1]]!=null?opts.Props[f[1]]:cp?cp[f[1]]:null;v===!0?v="1":v===!1?v="0":typeof v=="number"&&(v=String(v)),v!=null&&cp_doit(f[0],v,null,o,p)}return o.length>2&&(o[o.length]="</cp:coreProperties>",o[1]=o[1].replace("/>",">")),o.join("")}function load_props_pairs(HP,TOP,props,opts){var v=[];if(typeof HP=="string")v=parseVector(HP,opts);else for(var j=0;j<HP.length;++j)v=v.concat(HP[j].map(function(hp){return{v:hp}}));var parts=typeof TOP=="string"?parseVector(TOP,opts).map(function(x){return x.v}):TOP,idx=0,len=0;if(parts.length>0)for(var i=0;i!==v.length;i+=2){switch(len=+v[i+1].v,v[i].v){case"Worksheets":case"\u5DE5\u4F5C\u8868":case"\u041B\u0438\u0441\u0442\u044B":case"\u0623\u0648\u0631\u0627\u0642 \u0627\u0644\u0639\u0645\u0644":case"\u30EF\u30FC\u30AF\u30B7\u30FC\u30C8":case"\u05D2\u05DC\u05D9\u05D5\u05E0\u05D5\u05EA \u05E2\u05D1\u05D5\u05D3\u05D4":case"Arbeitsbl\xE4tter":case"\xC7al\u0131\u015Fma Sayfalar\u0131":case"Feuilles de calcul":case"Fogli di lavoro":case"Folhas de c\xE1lculo":case"Planilhas":case"Regneark":case"Hojas de c\xE1lculo":case"Werkbladen":props.Worksheets=len,props.SheetNames=parts.slice(idx,idx+len);break;case"Named Ranges":case"Rangos con nombre":case"\u540D\u524D\u4ED8\u304D\u4E00\u89A7":case"Benannte Bereiche":case"Navngivne omr\xE5der":props.NamedRanges=len,props.DefinedNames=parts.slice(idx,idx+len);break;case"Charts":case"Diagramme":props.Chartsheets=len,props.ChartNames=parts.slice(idx,idx+len);break}idx+=len}}function parse_ext_props(data,p,opts){var q={};return p||(p={}),data=utf8read(data),EXT_PROPS.forEach(function(f){var xml=(str_match_xml_ns(data,f[0])||[])[1];switch(f[2]){case"string":xml&&(p[f[1]]=unescapexml(xml));break;case"bool":p[f[1]]=xml==="true";break;case"raw":var cur=str_match_xml(data,f[0]);cur&&cur.length>0&&(q[f[1]]=cur[1]);break}}),q.HeadingPairs&&q.TitlesOfParts&&load_props_pairs(q.HeadingPairs,q.TitlesOfParts,p,opts),p}function write_ext_props(cp){var o=[],W=writextag;return cp||(cp={}),cp.Application="SheetJS",o[o.length]=XML_HEADER,o[o.length]=writextag("Properties",null,{xmlns:XMLNS.EXT_PROPS,"xmlns:vt":XMLNS.vt}),EXT_PROPS.forEach(function(f){if(cp[f[1]]!==void 0){var v;switch(f[2]){case"string":v=escapexml(String(cp[f[1]]));break;case"bool":v=cp[f[1]]?"true":"false";break}v!==void 0&&(o[o.length]=W(f[0],v))}}),o[o.length]=W("HeadingPairs",W("vt:vector",W("vt:variant","<vt:lpstr>Worksheets</vt:lpstr>")+W("vt:variant",W("vt:i4",String(cp.Worksheets))),{size:2,baseType:"variant"})),o[o.length]=W("TitlesOfParts",W("vt:vector",cp.SheetNames.map(function(s){return"<vt:lpstr>"+escapexml(s)+"</vt:lpstr>"}).join(""),{size:cp.Worksheets,baseType:"lpstr"})),o.length>2&&(o[o.length]="</Properties>",o[1]=o[1].replace("/>",">")),o.join("")}function parse_cust_props(data,opts){var p={},name="",m=data.match(custregex);if(m)for(var i=0;i!=m.length;++i){var x=m[i],y=parsexmltag(x);switch(strip_ns(y[0])){case"<?xml":break;case"<Properties":break;case"<property":name=unescapexml(y.name);break;case"</property>":name=null;break;default:if(x.indexOf("<vt:")===0){var toks=x.split(">"),type=toks[0].slice(4),text=toks[1];switch(type){case"lpstr":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]=parseDate(text);break;case"cy":case"error":p[name]=unescapexml(text);break;default:if(type.slice(-1)=="/")break;opts.WTF&&typeof console<"u"&&console.warn("Unexpected",x,type,toks)}}else if(x.slice(0,2)!=="</"){if(opts.WTF)throw new Error(x)}}}return p}function write_cust_props(cp){var o=[XML_HEADER,writextag("Properties",null,{xmlns:XMLNS.CUST_PROPS,"xmlns:vt":XMLNS.vt})];if(!cp)return o.join("");var pid=1;return keys(cp).forEach(function(k){++pid,o[o.length]=writextag("property",write_vt(cp[k],!0),{fmtid:"{D5CDD505-2E9C-101B-9397-08002B2CF9AE}",pid,name:escapexml(k)})}),o.length>2&&(o[o.length]="</Properties>",o[1]=o[1].replace("/>",">")),o.join("")}function xlml_set_prop(Props,tag,val2){evert_XLMLDPM||(evert_XLMLDPM=evert(XLMLDocPropsMap)),tag=evert_XLMLDPM[tag]||tag,Props[tag]=val2}function xlml_write_docprops(Props,opts){var o=[];return keys(XLMLDocPropsMap).map(function(m){for(var i=0;i<CORE_PROPS.length;++i)if(CORE_PROPS[i][1]==m)return CORE_PROPS[i];for(i=0;i<EXT_PROPS.length;++i)if(EXT_PROPS[i][1]==m)return EXT_PROPS[i];throw m}).forEach(function(p){if(Props[p[1]]!=null){var m=opts&&opts.Props&&opts.Props[p[1]]!=null?opts.Props[p[1]]:Props[p[1]];p[2]==="date"&&(m=new Date(m).toISOString().replace(/\.\d*Z/,"Z")),typeof m=="number"?m=String(m):m===!0||m===!1?m=m?"1":"0":m instanceof Date&&(m=new Date(m).toISOString().replace(/\.\d*Z/,"")),o.push(writetag(XLMLDocPropsMap[p[1]]||p[1],m))}}),writextag("DocumentProperties",o.join(""),{xmlns:XLMLNS.o})}function xlml_write_custprops(Props,Custprops){var BLACKLIST=["Worksheets","SheetNames"],T="CustomDocumentProperties",o=[];return Props&&keys(Props).forEach(function(k){if(Object.prototype.hasOwnProperty.call(Props,k)){for(var i=0;i<CORE_PROPS.length;++i)if(k==CORE_PROPS[i][1])return;for(i=0;i<EXT_PROPS.length;++i)if(k==EXT_PROPS[i][1])return;for(i=0;i<BLACKLIST.length;++i)if(k==BLACKLIST[i])return;var m=Props[k],t="string";typeof m=="number"?(t="float",m=String(m)):m===!0||m===!1?(t="boolean",m=m?"1":"0"):m=String(m),o.push(writextag(escapexmltag(k),m,{"dt:dt":t}))}}),Custprops&&keys(Custprops).forEach(function(k){if(Object.prototype.hasOwnProperty.call(Custprops,k)&&!(Props&&Object.prototype.hasOwnProperty.call(Props,k))){var m=Custprops[k],t="string";typeof m=="number"?(t="float",m=String(m)):m===!0||m===!1?(t="boolean",m=m?"1":"0"):m instanceof Date?(t="dateTime.tz",m=m.toISOString()):m=String(m),o.push(writextag(escapexmltag(k),m,{"dt:dt":t}))}}),"<"+T+' xmlns="'+XLMLNS.o+'">'+o.join("")+"</"+T+">"}function parse_FILETIME(blob){var dwLowDateTime=blob.read_shift(4),dwHighDateTime=blob.read_shift(4);return new Date((dwHighDateTime/1e7*Math.pow(2,32)+dwLowDateTime/1e7-11644473600)*1e3).toISOString().replace(/\.000/,"")}function write_FILETIME(time){var date=typeof time=="string"?new Date(Date.parse(time)):time,t=date.getTime()/1e3+11644473600,l=t%Math.pow(2,32),h=(t-l)/Math.pow(2,32);l*=1e7,h*=1e7;var w=l/Math.pow(2,32)|0;w>0&&(l=l%Math.pow(2,32),h+=w);var o=new_buf(8);return o.write_shift(4,l),o.write_shift(4,h),o}function parse_lpstr(blob,type,pad){var start=blob.l,str=blob.read_shift(0,"lpstr-cp");if(pad)for(;blob.l-start&3;)++blob.l;return str}function parse_lpwstr(blob,type,pad){var str=blob.read_shift(0,"lpwstr");return pad&&(blob.l+=4-(str.length+1&3)&3),str}function parse_VtStringBase(blob,stringType,pad){return stringType===31?parse_lpwstr(blob):parse_lpstr(blob,stringType,pad)}function parse_VtString(blob,t,pad){return parse_VtStringBase(blob,t,pad===!1?0:4)}function parse_VtUnalignedString(blob,t){if(!t)throw new Error("VtUnalignedString must have positive length");return parse_VtStringBase(blob,t,0)}function parse_VtVecLpwstrValue(blob){for(var length=blob.read_shift(4),ret=[],i=0;i!=length;++i){var start=blob.l;ret[i]=blob.read_shift(0,"lpwstr").replace(chr0,""),blob.l-start&2&&(blob.l+=2)}return ret}function parse_VtVecUnalignedLpstrValue(blob){for(var length=blob.read_shift(4),ret=[],i=0;i!=length;++i)ret[i]=blob.read_shift(0,"lpstr-cp").replace(chr0,"");return ret}function parse_VtHeadingPair(blob){var start=blob.l,headingString=parse_TypedPropertyValue(blob,VT_USTR);blob[blob.l]==0&&blob[blob.l+1]==0&&blob.l-start&2&&(blob.l+=2);var headerParts=parse_TypedPropertyValue(blob,VT_I4);return[headingString,headerParts]}function parse_VtVecHeadingPairValue(blob){for(var cElements=blob.read_shift(4),out=[],i=0;i<cElements/2;++i)out.push(parse_VtHeadingPair(blob));return out}function parse_dictionary(blob,CodePage){for(var cnt=blob.read_shift(4),dict={},j=0;j!=cnt;++j){var pid=blob.read_shift(4),len=blob.read_shift(4);dict[pid]=blob.read_shift(len,CodePage===1200?"utf16le":"utf8").replace(chr0,"").replace(chr1,"!"),CodePage===1200&&len%2&&(blob.l+=2)}return blob.l&3&&(blob.l=blob.l>>3<<2),dict}function parse_BLOB(blob){var size=blob.read_shift(4),bytes=blob.slice(blob.l,blob.l+size);return blob.l+=size,(size&3)>0&&(blob.l+=4-(size&3)&3),bytes}function parse_ClipboardData(blob){var o={};return o.Size=blob.read_shift(4),blob.l+=o.Size+3-(o.Size-1)%4,o}function parse_TypedPropertyValue(blob,type,_opts){var t=blob.read_shift(2),ret,opts=_opts||{};if(blob.l+=2,type!==VT_VARIANT&&t!==type&&VT_CUSTOM.indexOf(type)===-1&&!((type&65534)==4126&&(t&65534)==4126))throw new Error("Expected type "+type+" saw "+t);switch(type===VT_VARIANT?t:type){case 2:return ret=blob.read_shift(2,"i"),opts.raw||(blob.l+=2),ret;case 3:return ret=blob.read_shift(4,"i"),ret;case 11:return blob.read_shift(4)!==0;case 19:return ret=blob.read_shift(4),ret;case 30:blob.l+=4,val=parse_VtString(blob,blob[blob.l-4]).replace(/(^|[^\u0000])\u0000+$/,"$1");break;case 31:blob.l+=4,val=parse_VtString(blob,blob[blob.l-4]).replace(/(^|[^\u0000])\u0000+$/,"$1");break;case 64:return parse_FILETIME(blob);case 65:return parse_BLOB(blob);case 71:return parse_ClipboardData(blob);case 80:return parse_VtString(blob,t,!opts.raw).replace(chr0,"");case 81:return parse_VtUnalignedString(blob,t).replace(chr0,"");case 4108:return parse_VtVecHeadingPairValue(blob);case 4126:case 4127:return t==4127?parse_VtVecLpwstrValue(blob):parse_VtVecUnalignedLpstrValue(blob);default:throw new Error("TypedPropertyValue unrecognized type "+type+" "+t)}}function write_TypedPropertyValue(type,value){var o=new_buf(4),p=new_buf(4);switch(o.write_shift(4,type==80?31:type),type){case 3:p.write_shift(-4,value);break;case 5:p=new_buf(8),p.write_shift(8,value,"f");break;case 11:p.write_shift(4,value?1:0);break;case 64:p=write_FILETIME(value);break;case 31:case 80:for(p=new_buf(4+2*(value.length+1)+(value.length%2?0:2)),p.write_shift(4,value.length+1),p.write_shift(0,value,"dbcs");p.l!=p.length;)p.write_shift(1,0);break;default:throw new Error("TypedPropertyValue unrecognized type "+type+" "+value)}return bconcat([o,p])}function parse_PropertySet(blob,PIDSI){var start_addr=blob.l,size=blob.read_shift(4),NumProps=blob.read_shift(4),Props=[],i=0,CodePage=0,Dictionary=-1,DictObj={};for(i=0;i!=NumProps;++i){var PropID=blob.read_shift(4),Offset=blob.read_shift(4);Props[i]=[PropID,Offset+start_addr]}Props.sort(function(x,y){return x[1]-y[1]});var PropH={};for(i=0;i!=NumProps;++i){if(blob.l!==Props[i][1]){var fail=!0;if(i>0&&PIDSI)switch(PIDSI[Props[i-1][0]].t){case 2:blob.l+2===Props[i][1]&&(blob.l+=2,fail=!1);break;case 80:blob.l<=Props[i][1]&&(blob.l=Props[i][1],fail=!1);break;case 4108:blob.l<=Props[i][1]&&(blob.l=Props[i][1],fail=!1);break}if((!PIDSI||i==0)&&blob.l<=Props[i][1]&&(fail=!1,blob.l=Props[i][1]),fail)throw new Error("Read Error: Expected address "+Props[i][1]+" at "+blob.l+" :"+i)}if(PIDSI){if(Props[i][0]==0&&Props.length>i+1&&Props[i][1]==Props[i+1][1])continue;var piddsi=PIDSI[Props[i][0]];if(PropH[piddsi.n]=parse_TypedPropertyValue(blob,piddsi.t,{raw:!0}),piddsi.p==="version"&&(PropH[piddsi.n]=String(PropH[piddsi.n]>>16)+"."+("0000"+String(PropH[piddsi.n]&65535)).slice(-4)),piddsi.n=="CodePage")switch(PropH[piddsi.n]){case 0:PropH[piddsi.n]=1252;case 874:case 932:case 936:case 949:case 950:case 1250:case 1251:case 1253:case 1254:case 1255:case 1256:case 1257:case 1258:case 1e4:case 1200:case 1201:case 1252:case 65e3:case-536:case 65001:case-535:set_cp(CodePage=PropH[piddsi.n]>>>0&65535);break;default:throw new Error("Unsupported CodePage: "+PropH[piddsi.n])}}else if(Props[i][0]===1){if(CodePage=PropH.CodePage=parse_TypedPropertyValue(blob,VT_I2),set_cp(CodePage),Dictionary!==-1){var oldpos=blob.l;blob.l=Props[Dictionary][1],DictObj=parse_dictionary(blob,CodePage),blob.l=oldpos}}else if(Props[i][0]===0){if(CodePage===0){Dictionary=i,blob.l=Props[i+1][1];continue}DictObj=parse_dictionary(blob,CodePage)}else{var name=DictObj[Props[i][0]],val2;switch(blob[blob.l]){case 65:blob.l+=4,val2=parse_BLOB(blob);break;case 30:blob.l+=4,val2=parse_VtString(blob,blob[blob.l-4]).replace(/(^|[^\u0000])\u0000+$/,"$1");break;case 31:blob.l+=4,val2=parse_VtString(blob,blob[blob.l-4]).replace(/(^|[^\u0000])\u0000+$/,"$1");break;case 3:blob.l+=4,val2=blob.read_shift(4,"i");break;case 19:blob.l+=4,val2=blob.read_shift(4);break;case 5:blob.l+=4,val2=blob.read_shift(8,"f");break;case 11:blob.l+=4,val2=parsebool(blob,4);break;case 64:blob.l+=4,val2=parseDate(parse_FILETIME(blob));break;default:throw new Error("unparsed value: "+blob[blob.l])}PropH[name]=val2}}return blob.l=start_addr+size,PropH}function guess_property_type(val2){switch(typeof val2){case"boolean":return 11;case"number":return(val2|0)==val2?3:5;case"string":return 31;case"object":if(val2 instanceof Date)return 64;break}return-1}function write_PropertySet(entries,RE,PIDSI){var hdr=new_buf(8),piao=[],prop=[],sz=8,i=0,pr=new_buf(8),pio=new_buf(8);if(pr.write_shift(4,2),pr.write_shift(4,1200),pio.write_shift(4,1),prop.push(pr),piao.push(pio),sz+=8+pr.length,!RE){pio=new_buf(8),pio.write_shift(4,0),piao.unshift(pio);var bufs=[new_buf(4)];for(bufs[0].write_shift(4,entries.length),i=0;i<entries.length;++i){var value=entries[i][0];for(pr=new_buf(8+2*(value.length+1)+(value.length%2?0:2)),pr.write_shift(4,i+2),pr.write_shift(4,value.length+1),pr.write_shift(0,value,"dbcs");pr.l!=pr.length;)pr.write_shift(1,0);bufs.push(pr)}pr=bconcat(bufs),prop.unshift(pr),sz+=8+pr.length}for(i=0;i<entries.length;++i)if(!(RE&&!RE[entries[i][0]])&&!(XLSPSSkip.indexOf(entries[i][0])>-1||PseudoPropsPairs.indexOf(entries[i][0])>-1)&&entries[i][1]!=null){var val2=entries[i][1],idx=0;if(RE){idx=+RE[entries[i][0]];var pinfo=PIDSI[idx];if(pinfo.p=="version"&&typeof val2=="string"){var arr=val2.split(".");val2=(+arr[0]<<16)+(+arr[1]||0)}pr=write_TypedPropertyValue(pinfo.t,val2)}else{var T=guess_property_type(val2);T==-1&&(T=31,val2=String(val2)),pr=write_TypedPropertyValue(T,val2)}prop.push(pr),pio=new_buf(8),pio.write_shift(4,RE?idx:2+i),piao.push(pio),sz+=8+pr.length}var w=8*(prop.length+1);for(i=0;i<prop.length;++i)piao[i].write_shift(4,w),w+=prop[i].length;return hdr.write_shift(4,sz),hdr.write_shift(4,prop.length),bconcat([hdr].concat(piao).concat(prop))}function parse_PropertySetStream(file,PIDSI,clsid){var blob=file.content;if(!blob)return{};prep_blob(blob,0);var NumSets,FMTID0,FMTID1,Offset0,Offset1=0;blob.chk("feff","Byte Order: "),blob.read_shift(2);var SystemIdentifier=blob.read_shift(4),CLSID=blob.read_shift(16);if(CLSID!==CFB.utils.consts.HEADER_CLSID&&CLSID!==clsid)throw new Error("Bad PropertySet CLSID "+CLSID);if(NumSets=blob.read_shift(4),NumSets!==1&&NumSets!==2)throw new Error("Unrecognized #Sets: "+NumSets);if(FMTID0=blob.read_shift(16),Offset0=blob.read_shift(4),NumSets===1&&Offset0!==blob.l)throw new Error("Length mismatch: "+Offset0+" !== "+blob.l);NumSets===2&&(FMTID1=blob.read_shift(16),Offset1=blob.read_shift(4));var PSet0=parse_PropertySet(blob,PIDSI),rval={SystemIdentifier};for(var y in PSet0)rval[y]=PSet0[y];if(rval.FMTID=FMTID0,NumSets===1)return rval;if(Offset1-blob.l==2&&(blob.l+=2),blob.l!==Offset1)throw new Error("Length mismatch 2: "+blob.l+" !== "+Offset1);var PSet1;try{PSet1=parse_PropertySet(blob,null)}catch{}for(y in PSet1)rval[y]=PSet1[y];return rval.FMTID=[FMTID0,FMTID1],rval}function write_PropertySetStream(entries,clsid,RE,PIDSI,entries2,clsid2){var hdr=new_buf(entries2?68:48),bufs=[hdr];hdr.write_shift(2,65534),hdr.write_shift(2,0),hdr.write_shift(4,842412599),hdr.write_shift(16,CFB.utils.consts.HEADER_CLSID,"hex"),hdr.write_shift(4,entries2?2:1),hdr.write_shift(16,clsid,"hex"),hdr.write_shift(4,entries2?68:48);var ps0=write_PropertySet(entries,RE,PIDSI);if(bufs.push(ps0),entries2){var ps1=write_PropertySet(entries2,null,null);hdr.write_shift(16,clsid2,"hex"),hdr.write_shift(4,68+ps0.length),bufs.push(ps1)}return bconcat(bufs)}function parsenoop2(blob,length){return blob.read_shift(length),null}function writezeroes(n,o){o||(o=new_buf(n));for(var j=0;j<n;++j)o.write_shift(1,0);return o}function parslurp(blob,length,cb){for(var arr=[],target=blob.l+length;blob.l<target;)arr.push(cb(blob,target-blob.l));if(target!==blob.l)throw new Error("Slurp error");return arr}function parsebool(blob,length){return blob.read_shift(length)===1}function writebool(v,o){return o||(o=new_buf(2)),o.write_shift(2,+!!v),o}function parseuint16(blob){return blob.read_shift(2,"u")}function writeuint16(v,o){return o||(o=new_buf(2)),o.write_shift(2,v),o}function parseuint16a(blob,length){return parslurp(blob,length,parseuint16)}function parse_Bes(blob){var v=blob.read_shift(1),t=blob.read_shift(1);return t===1?v:v===1}function write_Bes(v,t,o){return o||(o=new_buf(2)),o.write_shift(1,t=="e"?+v:+!!v),o.write_shift(1,t=="e"?1:0),o}function parse_ShortXLUnicodeString(blob,length,opts){var cch=blob.read_shift(opts&&opts.biff>=12?2:1),encoding="sbcs-cont",cp=current_codepage;if(opts&&opts.biff>=8&&(current_codepage=1200),!opts||opts.biff==8){var fHighByte=blob.read_shift(1);fHighByte&&(encoding="dbcs-cont")}else opts.biff==12&&(encoding="wstr");opts.biff>=2&&opts.biff<=5&&(encoding="cpstr");var o=cch?blob.read_shift(cch,encoding):"";return current_codepage=cp,o}function parse_XLUnicodeRichExtendedString(blob){var cp=current_codepage;current_codepage=1200;var cch=blob.read_shift(2),flags=blob.read_shift(1),fExtSt=flags&4,fRichSt=flags&8,width=1+(flags&1),cRun=0,cbExtRst,z={};fRichSt&&(cRun=blob.read_shift(2)),fExtSt&&(cbExtRst=blob.read_shift(4));var encoding=width==2?"dbcs-cont":"sbcs-cont",msg=cch===0?"":blob.read_shift(cch,encoding);return fRichSt&&(blob.l+=4*cRun),fExtSt&&(blob.l+=cbExtRst),z.t=msg,fRichSt||(z.raw="<t>"+z.t+"</t>",z.r=z.t),current_codepage=cp,z}function write_XLUnicodeRichExtendedString(xlstr){var str=xlstr.t||"",nfmts=1,hdr=new_buf(3+(nfmts>1?2:0));hdr.write_shift(2,str.length),hdr.write_shift(1,(nfmts>1?8:0)|1),nfmts>1&&hdr.write_shift(2,nfmts);var otext=new_buf(2*str.length);otext.write_shift(2*str.length,str,"utf16le");var out=[hdr,otext];return bconcat(out)}function parse_XLUnicodeStringNoCch(blob,cch,opts){var retval;if(opts){if(opts.biff>=2&&opts.biff<=5)return blob.read_shift(cch,"cpstr");if(opts.biff>=12)return blob.read_shift(cch,"dbcs-cont")}var fHighByte=blob.read_shift(1);return fHighByte===0?retval=blob.read_shift(cch,"sbcs-cont"):retval=blob.read_shift(cch,"dbcs-cont"),retval}function parse_XLUnicodeString(blob,length,opts){var cch=blob.read_shift(opts&&opts.biff==2?1:2);return cch===0?(blob.l++,""):parse_XLUnicodeStringNoCch(blob,cch,opts)}function parse_XLUnicodeString2(blob,length,opts){if(opts.biff>5)return parse_XLUnicodeString(blob,length,opts);var cch=blob.read_shift(1);return cch===0?(blob.l++,""):blob.read_shift(cch,opts.biff<=4||!blob.lens?"cpstr":"sbcs-cont")}function write_XLUnicodeString(str,opts,o){return o||(o=new_buf(3+2*str.length)),o.write_shift(2,str.length),o.write_shift(1,1),o.write_shift(31,str,"utf16le"),o}function parse_ControlInfo(blob){var flags=blob.read_shift(1);blob.l++;var accel=blob.read_shift(2);return blob.l+=2,[flags,accel]}function parse_URLMoniker(blob){var len=blob.read_shift(4),start=blob.l,extra=!1;len>24&&(blob.l+=len-24,blob.read_shift(16)==="795881f43b1d7f48af2c825dc4852763"&&(extra=!0),blob.l=start);var url=blob.read_shift((extra?len-24:len)>>1,"utf16le").replace(chr0,"");return extra&&(blob.l+=24),url}function parse_FileMoniker(blob){for(var cAnti=blob.read_shift(2),preamble="";cAnti-- >0;)preamble+="../";var ansiPath=blob.read_shift(0,"lpstr-ansi");if(blob.l+=2,blob.read_shift(2)!=57005)throw new Error("Bad FileMoniker");var sz=blob.read_shift(4);if(sz===0)return preamble+ansiPath.replace(/\\/g,"/");var bytes=blob.read_shift(4);if(blob.read_shift(2)!=3)throw new Error("Bad FileMoniker");var unicodePath=blob.read_shift(bytes>>1,"utf16le").replace(chr0,"");return preamble+unicodePath}function parse_HyperlinkMoniker(blob,length){var clsid=blob.read_shift(16);switch(length-=16,clsid){case"e0c9ea79f9bace118c8200aa004ba90b":return parse_URLMoniker(blob,length);case"0303000000000000c000000000000046":return parse_FileMoniker(blob,length);default:throw new Error("Unsupported Moniker "+clsid)}}function parse_HyperlinkString(blob){var len=blob.read_shift(4),o=len>0?blob.read_shift(len,"utf16le").replace(chr0,""):"";return o}function write_HyperlinkString(str,o){o||(o=new_buf(6+str.length*2)),o.write_shift(4,1+str.length);for(var i=0;i<str.length;++i)o.write_shift(2,str.charCodeAt(i));return o.write_shift(2,0),o}function parse_Hyperlink(blob,length){var end=blob.l+length,sVer=blob.read_shift(4);if(sVer!==2)throw new Error("Unrecognized streamVersion: "+sVer);var flags=blob.read_shift(2);blob.l+=2;var displayName,targetFrameName,moniker,oleMoniker,Loc="",guid,fileTime;flags&16&&(displayName=parse_HyperlinkString(blob,end-blob.l)),flags&128&&(targetFrameName=parse_HyperlinkString(blob,end-blob.l)),(flags&257)===257&&(moniker=parse_HyperlinkString(blob,end-blob.l)),(flags&257)===1&&(oleMoniker=parse_HyperlinkMoniker(blob,end-blob.l)),flags&8&&(Loc=parse_HyperlinkString(blob,end-blob.l)),flags&32&&(guid=blob.read_shift(16)),flags&64&&(fileTime=parse_FILETIME(blob)),blob.l=end;var target=targetFrameName||moniker||oleMoniker||"";target&&Loc&&(target+="#"+Loc),target||(target="#"+Loc),flags&2&&target.charAt(0)=="/"&&target.charAt(1)!="/"&&(target="file://"+target);var out={Target:target};return guid&&(out.guid=guid),fileTime&&(out.time=fileTime),displayName&&(out.Tooltip=displayName),out}function write_Hyperlink(hl){var out=new_buf(512),i=0,Target=hl.Target;Target.slice(0,7)=="file://"&&(Target=Target.slice(7));var hashidx=Target.indexOf("#"),F=hashidx>-1?31:23;switch(Target.charAt(0)){case"#":F=28;break;case".":F&=-3;break}out.write_shift(4,2),out.write_shift(4,F);var data=[8,6815827,6619237,4849780,83];for(i=0;i<data.length;++i)out.write_shift(4,data[i]);if(F==28)Target=Target.slice(1),write_HyperlinkString(Target,out);else if(F&2){for(data="e0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "),i=0;i<data.length;++i)out.write_shift(1,parseInt(data[i],16));var Pretarget=hashidx>-1?Target.slice(0,hashidx):Target;for(out.write_shift(4,2*(Pretarget.length+1)),i=0;i<Pretarget.length;++i)out.write_shift(2,Pretarget.charCodeAt(i));out.write_shift(2,0),F&8&&write_HyperlinkString(hashidx>-1?Target.slice(hashidx+1):"",out)}else{for(data="03 03 00 00 00 00 00 00 c0 00 00 00 00 00 00 46".split(" "),i=0;i<data.length;++i)out.write_shift(1,parseInt(data[i],16));for(var P=0;Target.slice(P*3,P*3+3)=="../"||Target.slice(P*3,P*3+3)=="..\\";)++P;for(out.write_shift(2,P),out.write_shift(4,Target.length-3*P+1),i=0;i<Target.length-3*P;++i)out.write_shift(1,Target.charCodeAt(i+3*P)&255);for(out.write_shift(1,0),out.write_shift(2,65535),out.write_shift(2,57005),i=0;i<6;++i)out.write_shift(4,0)}return out.slice(0,out.l)}function parse_LongRGBA(blob){var r=blob.read_shift(1),g=blob.read_shift(1),b=blob.read_shift(1),a=blob.read_shift(1);return[r,g,b,a]}function parse_LongRGB(blob,length){var x=parse_LongRGBA(blob,length);return x[3]=0,x}function parse_XLSCell(blob,length,opts){var rw=blob.read_shift(2),col=blob.read_shift(2),ret={r:rw,c:col,ixfe:0};if(opts&&opts.biff==2||length==7){var flags=blob.read_shift(1);ret.ixfe=flags&63,blob.l+=2}else ret.ixfe=blob.read_shift(2);return ret}function write_XLSCell(R,C,ixfe,o){return o||(o=new_buf(6)),o.write_shift(2,R),o.write_shift(2,C),o.write_shift(2,ixfe||0),o}function parse_frtHeader(blob){var rt=blob.read_shift(2),flags=blob.read_shift(2);return blob.l+=8,{type:rt,flags}}function parse_OptXLUnicodeString(blob,length,opts){return length===0?"":parse_XLUnicodeString2(blob,length,opts)}function parse_XTI(blob,length,opts){var w=opts.biff>8?4:2,iSupBook=blob.read_shift(w),itabFirst=blob.read_shift(w,"i"),itabLast=blob.read_shift(w,"i");return[iSupBook,itabFirst,itabLast]}function parse_RkRec(blob){var ixfe=blob.read_shift(2),RK=parse_RkNumber(blob);return[ixfe,RK]}function parse_AddinUdf(blob,length,opts){blob.l+=4,length-=4;var l=blob.l+length,udfName=parse_ShortXLUnicodeString(blob,length,opts),cb=blob.read_shift(2);if(l-=blob.l,cb!==l)throw new Error("Malformed AddinUdf: padding = "+l+" != "+cb);return blob.l+=cb,udfName}function parse_Ref8U(blob){var rwFirst=blob.read_shift(2),rwLast=blob.read_shift(2),colFirst=blob.read_shift(2),colLast=blob.read_shift(2);return{s:{c:colFirst,r:rwFirst},e:{c:colLast,r:rwLast}}}function write_Ref8U(r,o){return o||(o=new_buf(8)),o.write_shift(2,r.s.r),o.write_shift(2,r.e.r),o.write_shift(2,r.s.c),o.write_shift(2,r.e.c),o}function parse_RefU(blob){var rwFirst=blob.read_shift(2),rwLast=blob.read_shift(2),colFirst=blob.read_shift(1),colLast=blob.read_shift(1);return{s:{c:colFirst,r:rwFirst},e:{c:colLast,r:rwLast}}}function parse_FtCmo(blob){blob.l+=4;var ot=blob.read_shift(2),id=blob.read_shift(2),flags=blob.read_shift(2);return blob.l+=12,[id,ot,flags]}function parse_FtNts(blob){var out={};return blob.l+=4,blob.l+=16,out.fSharedNote=blob.read_shift(2),blob.l+=4,out}function parse_FtCf(blob){var out={};return blob.l+=4,blob.cf=blob.read_shift(2),out}function parse_FtSkip(blob){blob.l+=2,blob.l+=blob.read_shift(2)}function parse_FtArray(blob,length){for(var tgt=blob.l+length,fts=[];blob.l<tgt;){var ft=blob.read_shift(2);blob.l-=2;try{fts[ft]=FtTab[ft](blob,tgt-blob.l)}catch{return blob.l=tgt,fts}}return blob.l!=tgt&&(blob.l=tgt),fts}function parse_BOF(blob,length){var o={BIFFVer:0,dt:0};switch(o.BIFFVer=blob.read_shift(2),length-=2,length>=2&&(o.dt=blob.read_shift(2),blob.l-=2),o.BIFFVer){case 1536:case 1280:case 1024:case 768:case 512:case 2:case 7:break;default:if(length>6)throw new Error("Unexpected BIFF Ver "+o.BIFFVer)}return blob.read_shift(length),o}function write_BOF(wb,t,o){var h=1536,w=16;switch(o.bookType){case"biff8":break;case"biff5":h=1280,w=8;break;case"biff4":h=4,w=6;break;case"biff3":h=3,w=6;break;case"biff2":h=2,w=4;break;case"xla":break;default:throw new Error("unsupported BIFF version")}var out=new_buf(w);return out.write_shift(2,h),out.write_shift(2,t),w>4&&out.write_shift(2,29282),w>6&&out.write_shift(2,1997),w>8&&(out.write_shift(2,49161),out.write_shift(2,1),out.write_shift(2,1798),out.write_shift(2,0)),out}function parse_InterfaceHdr(blob,length){return length===0||blob.read_shift(2),1200}function parse_WriteAccess(blob,length,opts){if(opts.enc)return blob.l+=length,"";var l=blob.l,UserName=parse_XLUnicodeString2(blob,0,opts);return blob.read_shift(length+l-blob.l),UserName}function write_WriteAccess(s,opts){var b8=!opts||opts.biff==8,o=new_buf(b8?112:54);for(o.write_shift(opts.biff==8?2:1,7),b8&&o.write_shift(1,0),o.write_shift(4,859007059),o.write_shift(4,5458548|(b8?0:536870912));o.l<o.length;)o.write_shift(1,b8?0:32);return o}function parse_WsBool(blob,length,opts){var flags=opts&&opts.biff==8||length==2?blob.read_shift(2):(blob.l+=length,0);return{fDialog:flags&16,fBelow:flags&64,fRight:flags&128}}function parse_BoundSheet8(blob,length,opts){var name="";if(opts.biff==4)return name=parse_ShortXLUnicodeString(blob,0,opts),name.length===0&&(name="Sheet1"),{name};var pos=blob.read_shift(4),hidden=blob.read_shift(1)&3,dt=blob.read_shift(1);switch(dt){case 0:dt="Worksheet";break;case 1:dt="Macrosheet";break;case 2:dt="Chartsheet";break;case 6:dt="VBAModule";break}return name=parse_ShortXLUnicodeString(blob,0,opts),name.length===0&&(name="Sheet1"),{pos,hs:hidden,dt,name}}function write_BoundSheet8(data,opts){var w=!opts||opts.biff>=8?2:1,o=new_buf(8+w*data.name.length);o.write_shift(4,data.pos),o.write_shift(1,data.hs||0),o.write_shift(1,data.dt),o.write_shift(1,data.name.length),opts.biff>=8&&o.write_shift(1,1),o.write_shift(w*data.name.length,data.name,opts.biff<8?"sbcs":"utf16le");var out=o.slice(0,o.l);return out.l=o.l,out}function parse_SST(blob,length){for(var end=blob.l+length,cnt=blob.read_shift(4),ucnt=blob.read_shift(4),strs2=[],i=0;i!=ucnt&&blob.l<end;++i)strs2.push(parse_XLUnicodeRichExtendedString(blob));return strs2.Count=cnt,strs2.Unique=ucnt,strs2}function write_SST(sst,opts){var header=new_buf(8);header.write_shift(4,sst.Count),header.write_shift(4,sst.Unique);for(var strs2=[],j=0;j<sst.length;++j)strs2[j]=write_XLUnicodeRichExtendedString(sst[j],opts);var o=bconcat([header].concat(strs2));return o.parts=[header.length].concat(strs2.map(function(str){return str.length})),o}function parse_ExtSST(blob,length){var extsst={};return extsst.dsst=blob.read_shift(2),blob.l+=length-2,extsst}function parse_Row(blob){var z={};z.r=blob.read_shift(2),z.c=blob.read_shift(2),z.cnt=blob.read_shift(2)-z.c;var miyRw=blob.read_shift(2);blob.l+=4;var flags=blob.read_shift(1);return blob.l+=3,flags&7&&(z.level=flags&7),flags&32&&(z.hidden=!0),flags&64&&(z.hpt=miyRw/20),z}function parse_ForceFullCalculation(blob){var header=parse_frtHeader(blob);if(header.type!=2211)throw new Error("Invalid Future Record "+header.type);var fullcalc=blob.read_shift(4);return fullcalc!==0}function parse_RecalcId(blob){return blob.read_shift(2),blob.read_shift(4)}function parse_DefaultRowHeight(blob,length,opts){var f=0;opts&&opts.biff==2||(f=blob.read_shift(2));var miyRw=blob.read_shift(2);opts&&opts.biff==2&&(f=1-(miyRw>>15),miyRw&=32767);var fl={Unsynced:f&1,DyZero:(f&2)>>1,ExAsc:(f&4)>>2,ExDsc:(f&8)>>3};return[fl,miyRw]}function parse_Window1(blob){var xWn=blob.read_shift(2),yWn=blob.read_shift(2),dxWn=blob.read_shift(2),dyWn=blob.read_shift(2),flags=blob.read_shift(2),iTabCur=blob.read_shift(2),iTabFirst=blob.read_shift(2),ctabSel=blob.read_shift(2),wTabRatio=blob.read_shift(2);return{Pos:[xWn,yWn],Dim:[dxWn,dyWn],Flags:flags,CurTab:iTabCur,FirstTab:iTabFirst,Selected:ctabSel,TabRatio:wTabRatio}}function write_Window1(){var o=new_buf(18);return o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,29280),o.write_shift(2,17600),o.write_shift(2,56),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,1),o.write_shift(2,500),o}function parse_Window2(blob,length,opts){if(opts&&opts.biff>=2&&opts.biff<5)return{};var f=blob.read_shift(2);return{RTL:f&64}}function write_Window2(view){var o=new_buf(18),f=1718;return view&&view.RTL&&(f|=64),o.write_shift(2,f),o.write_shift(4,0),o.write_shift(4,64),o.write_shift(4,0),o.write_shift(4,0),o}function parse_Pane(){}function parse_Font(blob,length,opts){var o={dyHeight:blob.read_shift(2),fl:blob.read_shift(2)};switch(opts&&opts.biff||8){case 2:break;case 3:case 4:blob.l+=2;break;default:blob.l+=10;break}return o.name=parse_ShortXLUnicodeString(blob,0,opts),o}function write_Font(data,opts){var name=data.name||"Arial",b5=opts&&opts.biff==5,w=b5?15+name.length:16+2*name.length,o=new_buf(w);return o.write_shift(2,(data.sz||12)*20),o.write_shift(4,0),o.write_shift(2,400),o.write_shift(4,0),o.write_shift(2,0),o.write_shift(1,name.length),b5||o.write_shift(1,1),o.write_shift((b5?1:2)*name.length,name,b5?"sbcs":"utf16le"),o}function parse_LabelSst(blob,length,opts){var cell2=parse_XLSCell(blob,length,opts);return cell2.isst=blob.read_shift(4),cell2}function write_LabelSst(R,C,v,os){var o=new_buf(10);return write_XLSCell(R,C,os,o),o.write_shift(4,v),o}function parse_Label(blob,length,opts){opts.biffguess&&opts.biff==2&&(opts.biff=5);var target=blob.l+length,cell2=parse_XLSCell(blob,length,opts),str=parse_XLUnicodeString(blob,target-blob.l,opts);return cell2.val=str,cell2}function write_Label(R,C,v,os,opts){var b8=!opts||opts.biff==8,o=new_buf(8+ +b8+(1+b8)*v.length);return write_XLSCell(R,C,os,o),o.write_shift(2,v.length),b8&&o.write_shift(1,1),o.write_shift((1+b8)*v.length,v,b8?"utf16le":"sbcs"),o}function parse_Format(blob,length,opts){var numFmtId=blob.read_shift(2),fmtstr=parse_XLUnicodeString2(blob,0,opts);return[numFmtId,fmtstr]}function write_Format(i,f,opts,o){var b5=opts&&opts.biff==5;o||(o=new_buf(b5?3+f.length:5+2*f.length)),o.write_shift(2,i),o.write_shift(b5?1:2,f.length),b5||o.write_shift(1,1),o.write_shift((b5?1:2)*f.length,f,b5?"sbcs":"utf16le");var out=o.length>o.l?o.slice(0,o.l):o;return out.l==null&&(out.l=out.length),out}function write_BIFF2Format(f){var o=new_buf(1+f.length);return o.write_shift(1,f.length),o.write_shift(f.length,f,"sbcs"),o}function write_BIFF4Format(f){var o=new_buf(3+f.length);return o.l+=2,o.write_shift(1,f.length),o.write_shift(f.length,f,"sbcs"),o}function parse_Dimensions(blob,length,opts){var end=blob.l+length,w=opts.biff==8||!opts.biff?4:2,r=blob.read_shift(w),R=blob.read_shift(w),c=blob.read_shift(2),C=blob.read_shift(2);return blob.l=end,{s:{r,c},e:{r:R,c:C}}}function write_Dimensions(range,opts){var w=opts.biff==8||!opts.biff?4:2,o=new_buf(2*w+6);return o.write_shift(w,range.s.r),o.write_shift(w,range.e.r+1),o.write_shift(2,range.s.c),o.write_shift(2,range.e.c+1),o.write_shift(2,0),o}function parse_RK(blob){var rw=blob.read_shift(2),col=blob.read_shift(2),rkrec=parse_RkRec(blob);return{r:rw,c:col,ixfe:rkrec[0],rknum:rkrec[1]}}function parse_MulRk(blob,length){for(var target=blob.l+length-2,rw=blob.read_shift(2),col=blob.read_shift(2),rkrecs=[];blob.l<target;)rkrecs.push(parse_RkRec(blob));if(blob.l!==target)throw new Error("MulRK read error");var lastcol=blob.read_shift(2);if(rkrecs.length!=lastcol-col+1)throw new Error("MulRK length mismatch");return{r:rw,c:col,C:lastcol,rkrec:rkrecs}}function parse_MulBlank(blob,length){for(var target=blob.l+length-2,rw=blob.read_shift(2),col=blob.read_shift(2),ixfes=[];blob.l<target;)ixfes.push(blob.read_shift(2));if(blob.l!==target)throw new Error("MulBlank read error");var lastcol=blob.read_shift(2);if(ixfes.length!=lastcol-col+1)throw new Error("MulBlank length mismatch");return{r:rw,c:col,C:lastcol,ixfe:ixfes}}function parse_CellStyleXF(blob,length,style,opts){var o={},a=blob.read_shift(4),b=blob.read_shift(4),c=blob.read_shift(4),d=blob.read_shift(2);return o.patternType=XLSFillPattern[c>>26],opts.cellStyles&&(o.alc=a&7,o.fWrap=a>>3&1,o.alcV=a>>4&7,o.fJustLast=a>>7&1,o.trot=a>>8&255,o.cIndent=a>>16&15,o.fShrinkToFit=a>>20&1,o.iReadOrder=a>>22&2,o.fAtrNum=a>>26&1,o.fAtrFnt=a>>27&1,o.fAtrAlc=a>>28&1,o.fAtrBdr=a>>29&1,o.fAtrPat=a>>30&1,o.fAtrProt=a>>31&1,o.dgLeft=b&15,o.dgRight=b>>4&15,o.dgTop=b>>8&15,o.dgBottom=b>>12&15,o.icvLeft=b>>16&127,o.icvRight=b>>23&127,o.grbitDiag=b>>30&3,o.icvTop=c&127,o.icvBottom=c>>7&127,o.icvDiag=c>>14&127,o.dgDiag=c>>21&15,o.icvFore=d&127,o.icvBack=d>>7&127,o.fsxButton=d>>14&1),o}function parse_XF(blob,length,opts){var o={};return o.ifnt=blob.read_shift(2),o.numFmtId=blob.read_shift(2),o.flags=blob.read_shift(2),o.fStyle=o.flags>>2&1,length-=6,o.data=parse_CellStyleXF(blob,length,o.fStyle,opts),o}function write_XF(data,ixfeP,opts,o){var b5=opts&&opts.biff==5;o||(o=new_buf(b5?16:20)),o.write_shift(2,0),data.style?(o.write_shift(2,data.numFmtId||0),o.write_shift(2,65524)):(o.write_shift(2,data.numFmtId||0),o.write_shift(2,ixfeP<<4));var f=0;return data.numFmtId>0&&b5&&(f|=1024),o.write_shift(4,f),o.write_shift(4,0),b5||o.write_shift(4,0),o.write_shift(2,0),o}function parse_BIFF2XF(blob){var o={};return o.ifnt=blob.read_shift(1),blob.l++,o.flags=blob.read_shift(1),o.numFmtId=o.flags&63,o.flags>>=6,o.fStyle=0,o.data={},o}function write_BIFF2XF(xf){var o=new_buf(4);return o.l+=2,o.write_shift(1,xf.numFmtId),o.l++,o}function write_BIFF3XF(xf){var o=new_buf(12);return o.l++,o.write_shift(1,xf.numFmtId),o.l+=10,o}function parse_BIFF3XF(blob){var o={};return o.ifnt=blob.read_shift(1),o.numFmtId=blob.read_shift(1),o.flags=blob.read_shift(2),o.fStyle=o.flags>>2&1,o.data={},o}function parse_BIFF4XF(blob){var o={};return o.ifnt=blob.read_shift(1),o.numFmtId=blob.read_shift(1),o.flags=blob.read_shift(2),o.fStyle=o.flags>>2&1,o.data={},o}function parse_Guts(blob){blob.l+=4;var out=[blob.read_shift(2),blob.read_shift(2)];if(out[0]!==0&&out[0]--,out[1]!==0&&out[1]--,out[0]>7||out[1]>7)throw new Error("Bad Gutters: "+out.join("|"));return out}function write_Guts(guts){var o=new_buf(8);return o.write_shift(4,0),o.write_shift(2,guts[0]?guts[0]+1:0),o.write_shift(2,guts[1]?guts[1]+1:0),o}function parse_BoolErr(blob,length,opts){var cell2=parse_XLSCell(blob,6,opts),val2=parse_Bes(blob,2);return cell2.val=val2,cell2.t=val2===!0||val2===!1?"b":"e",cell2}function write_BoolErr(R,C,v,os,opts,t){var o=new_buf(8);return write_XLSCell(R,C,os,o),write_Bes(v,t,o),o}function parse_Number(blob,length,opts){opts.biffguess&&opts.biff==2&&(opts.biff=5);var cell2=parse_XLSCell(blob,6,opts),xnum=parse_Xnum(blob,8);return cell2.val=xnum,cell2}function write_Number(R,C,v,os){var o=new_buf(14);return write_XLSCell(R,C,os,o),write_Xnum(v,o),o}function parse_SupBook(blob,length,opts){var end=blob.l+length,ctab=blob.read_shift(2),cch=blob.read_shift(2);if(opts.sbcch=cch,cch==1025||cch==14849)return[cch,ctab];if(cch<1||cch>255)throw new Error("Unexpected SupBook type: "+cch);for(var virtPath=parse_XLUnicodeStringNoCch(blob,cch),rgst=[];end>blob.l;)rgst.push(parse_XLUnicodeString(blob));return[cch,ctab,virtPath,rgst]}function parse_ExternName(blob,length,opts){var flags=blob.read_shift(2),body,o={fBuiltIn:flags&1,fWantAdvise:flags>>>1&1,fWantPict:flags>>>2&1,fOle:flags>>>3&1,fOleLink:flags>>>4&1,cf:flags>>>5&1023,fIcon:flags>>>15&1};return opts.sbcch===14849&&(body=parse_AddinUdf(blob,length-2,opts)),o.body=body||blob.read_shift(length-2),typeof body=="string"&&(o.Name=body),o}function parse_Lbl(blob,length,opts){var target=blob.l+length,flags=blob.read_shift(2),chKey=blob.read_shift(1),cch=blob.read_shift(1),cce=blob.read_shift(opts&&opts.biff==2?1:2),itab=0;(!opts||opts.biff>=5)&&(opts.biff!=5&&(blob.l+=2),itab=blob.read_shift(2),opts.biff==5&&(blob.l+=2),blob.l+=4);var name=parse_XLUnicodeStringNoCch(blob,cch,opts);flags&32&&(name=XLSLblBuiltIn[name.charCodeAt(0)]);var npflen=target-blob.l;opts&&opts.biff==2&&--npflen;var rgce=target==blob.l||cce===0||!(npflen>0)?[]:parse_NameParsedFormula(blob,npflen,opts,cce);return{chKey,Name:name,itab,rgce}}function parse_ExternSheet(blob,length,opts){if(opts.biff<8||!(opts.biff>8)&&length==blob[blob.l]+(blob[blob.l+1]==3?1:0)+1)return parse_BIFF5ExternSheet(blob,length,opts);for(var o=[],target=blob.l+length,len=blob.read_shift(opts.biff>8?4:2);len--!==0;)o.push(parse_XTI(blob,opts.biff>8?12:6,opts));if(blob.l!=target)throw new Error("Bad ExternSheet: "+blob.l+" != "+target);return o}function parse_BIFF5ExternSheet(blob,length,opts){blob[blob.l+1]==3&&blob[blob.l]++;var o=parse_ShortXLUnicodeString(blob,length,opts);return o.charCodeAt(0)==3?o.slice(1):o}function parse_NameCmt(blob,length,opts){if(opts.biff<8){blob.l+=length;return}var cchName=blob.read_shift(2),cchComment=blob.read_shift(2),name=parse_XLUnicodeStringNoCch(blob,cchName,opts),comment=parse_XLUnicodeStringNoCch(blob,cchComment,opts);return[name,comment]}function parse_ShrFmla(blob,length,opts){var ref=parse_RefU(blob,6);blob.l++;var cUse=blob.read_shift(1);return length-=8,[parse_SharedParsedFormula(blob,length,opts),cUse,ref]}function parse_Array(blob,length,opts){var ref=parse_Ref(blob,6);switch(opts.biff){case 2:blob.l++,length-=7;break;case 3:case 4:blob.l+=2,length-=8;break;default:blob.l+=6,length-=12}return[ref,parse_ArrayParsedFormula(blob,length,opts,ref)]}function parse_MTRSettings(blob){var fMTREnabled=blob.read_shift(4)!==0,fUserSetThreadCount=blob.read_shift(4)!==0,cUserThreadCount=blob.read_shift(4);return[fMTREnabled,fUserSetThreadCount,cUserThreadCount]}function parse_NoteSh(blob,length,opts){var row=blob.read_shift(2),col=blob.read_shift(2),flags=blob.read_shift(2),idObj=blob.read_shift(2),stAuthor=parse_XLUnicodeString2(blob,0,opts);return[{r:row,c:col},stAuthor,idObj,flags]}function parse_Note(blob,length,opts){if(opts&&opts.biff<8){var row=blob.read_shift(2),col=blob.read_shift(2);if(row==65535||row==-1)return;var cch=blob.read_shift(2),cmnt=blob.read_shift(Math.min(cch,2048),"cpstr");return[{r:row,c:col},cmnt]}return parse_NoteSh(blob,length,opts)}function write_NOTE_BIFF2(text,R,C,len){var o=new_buf(6+(len||text.length));return o.write_shift(2,R),o.write_shift(2,C),o.write_shift(2,len||text.length),o.write_shift(text.length,text,"sbcs"),o}function parse_MergeCells(blob,length){for(var merges=[],cmcs=blob.read_shift(2);cmcs--;)merges.push(parse_Ref8U(blob,length));return merges}function write_MergeCells(merges){var o=new_buf(2+merges.length*8);o.write_shift(2,merges.length);for(var i=0;i<merges.length;++i)write_Ref8U(merges[i],o);return o}function parse_Obj(blob,length,opts){if(opts&&opts.biff<8)return parse_BIFF5Obj(blob,length,opts);var cmo=parse_FtCmo(blob,22),fts=parse_FtArray(blob,length-22,cmo[1]);return{cmo,ft:fts}}function parse_BIFF5Obj(blob,length,opts){blob.l+=4;var ot=blob.read_shift(2),id=blob.read_shift(2),grbit=blob.read_shift(2);blob.l+=2,blob.l+=2,blob.l+=2,blob.l+=2,blob.l+=2,blob.l+=2,blob.l+=2,blob.l+=2,blob.l+=2,blob.l+=6,length-=36;var fts=[];return fts.push((parse_BIFF5OT[ot]||parsenoop)(blob,length,opts)),{cmo:[id,ot,grbit],ft:fts}}function parse_TxO(blob,length,opts){var s=blob.l,texts="";try{blob.l+=4;var ot=(opts.lastobj||{cmo:[0,0]}).cmo[1],controlInfo;[0,5,7,11,12,14].indexOf(ot)==-1?blob.l+=6:controlInfo=parse_ControlInfo(blob,6,opts);var cchText=blob.read_shift(2);blob.read_shift(2),parseuint16(blob,2);var len=blob.read_shift(2);blob.l+=len;for(var i=1;i<blob.lens.length-1;++i){if(blob.l-s!=blob.lens[i])throw new Error("TxO: bad continue record");var hdr=blob[blob.l],t=parse_XLUnicodeStringNoCch(blob,blob.lens[i+1]-blob.lens[i]-1);if(texts+=t,texts.length>=(hdr?cchText:2*cchText))break}if(texts.length!==cchText&&texts.length!==cchText*2)throw new Error("cchText: "+cchText+" != "+texts.length);return blob.l=s+length,{t:texts}}catch{return blob.l=s+length,{t:texts}}}function parse_HLink(blob,length){var ref=parse_Ref8U(blob,8);blob.l+=16;var hlink=parse_Hyperlink(blob,length-24);return[ref,hlink]}function write_HLink(hl){var O=new_buf(24),ref=decode_cell(hl[0]);O.write_shift(2,ref.r),O.write_shift(2,ref.r),O.write_shift(2,ref.c),O.write_shift(2,ref.c);for(var clsid="d0 c9 ea 79 f9 ba ce 11 8c 82 00 aa 00 4b a9 0b".split(" "),i=0;i<16;++i)O.write_shift(1,parseInt(clsid[i],16));return bconcat([O,write_Hyperlink(hl[1])])}function parse_HLinkTooltip(blob,length){blob.read_shift(2);var ref=parse_Ref8U(blob,8),wzTooltip=blob.read_shift((length-10)/2,"dbcs-cont");return wzTooltip=wzTooltip.replace(chr0,""),[ref,wzTooltip]}function write_HLinkTooltip(hl){var TT=hl[1].Tooltip,O=new_buf(10+2*(TT.length+1));O.write_shift(2,2048);var ref=decode_cell(hl[0]);O.write_shift(2,ref.r),O.write_shift(2,ref.r),O.write_shift(2,ref.c),O.write_shift(2,ref.c);for(var i=0;i<TT.length;++i)O.write_shift(2,TT.charCodeAt(i));return O.write_shift(2,0),O}function parse_Country(blob){var o=[0,0],d;return d=blob.read_shift(2),o[0]=CountryEnum[d]||d,d=blob.read_shift(2),o[1]=CountryEnum[d]||d,o}function write_Country(o){return o||(o=new_buf(4)),o.write_shift(2,1),o.write_shift(2,1),o}function parse_ClrtClient(blob){for(var ccv=blob.read_shift(2),o=[];ccv-- >0;)o.push(parse_LongRGB(blob,8));return o}function parse_Palette(blob){for(var ccv=blob.read_shift(2),o=[];ccv-- >0;)o.push(parse_LongRGB(blob,8));return o}function parse_XFCRC(blob){blob.l+=2;var o={cxfs:0,crc:0};return o.cxfs=blob.read_shift(2),o.crc=blob.read_shift(4),o}function parse_ColInfo(blob,length,opts){if(!opts.cellStyles)return parsenoop(blob,length);var w=opts&&opts.biff>=12?4:2,colFirst=blob.read_shift(w),colLast=blob.read_shift(w),coldx=blob.read_shift(w),ixfe=blob.read_shift(w),flags=blob.read_shift(2);w==2&&(blob.l+=2);var o={s:colFirst,e:colLast,w:coldx,ixfe,flags};return(opts.biff>=5||!opts.biff)&&(o.level=flags>>8&7),o}function write_ColInfo(col,idx){var o=new_buf(12);o.write_shift(2,idx),o.write_shift(2,idx),o.write_shift(2,col.width*256),o.write_shift(2,0);var f=0;return col.hidden&&(f|=1),o.write_shift(1,f),f=col.level||0,o.write_shift(1,f),o.write_shift(2,0),o}function parse_Setup(blob,length){var o={};return length<32||(blob.l+=16,o.header=parse_Xnum(blob,8),o.footer=parse_Xnum(blob,8),blob.l+=2),o}function parse_ShtProps(blob,length,opts){var def={area:!1};if(opts.biff!=5)return blob.l+=length,def;var d=blob.read_shift(1);return blob.l+=3,d&16&&(def.area=!0),def}function write_RRTabId(n){for(var out=new_buf(2*n),i=0;i<n;++i)out.write_shift(2,i+1);return out}function parse_ImData(blob){var cf=blob.read_shift(2),env=blob.read_shift(2),lcb=blob.read_shift(4),o={fmt:cf,env,len:lcb,data:blob.slice(blob.l,blob.l+lcb)};return blob.l+=lcb,o}function write_BIFF2Cell(out,r,c,ixfe,ifmt){return out||(out=new_buf(7)),out.write_shift(2,r),out.write_shift(2,c),out.write_shift(1,ixfe||0),out.write_shift(1,ifmt||0),out.write_shift(1,0),out}function parse_BIFF2STR(blob,length,opts){opts.biffguess&&opts.biff==5&&(opts.biff=2);var cell2=parse_XLSCell(blob,7,opts),str=parse_XLUnicodeString2(blob,length-7,opts);return cell2.t="str",cell2.val=str,cell2}function parse_BIFF2NUM(blob,length,opts){var cell2=parse_XLSCell(blob,7,opts),num=parse_Xnum(blob,8);return cell2.t="n",cell2.val=num,cell2}function write_BIFF2NUM(r,c,val2,ixfe,ifmt){var out=new_buf(15);return write_BIFF2Cell(out,r,c,ixfe||0,ifmt||0),out.write_shift(8,val2,"f"),out}function parse_BIFF2INT(blob,length,opts){var cell2=parse_XLSCell(blob,7,opts),num=blob.read_shift(2);return cell2.t="n",cell2.val=num,cell2}function write_BIFF2INT(r,c,val2,ixfe,ifmt){var out=new_buf(9);return write_BIFF2Cell(out,r,c,ixfe||0,ifmt||0),out.write_shift(2,val2),out}function parse_BIFF2STRING(blob){var cch=blob.read_shift(1);return cch===0?(blob.l++,""):blob.read_shift(cch,"sbcs-cont")}function parse_BIFF2BOOLERR(blob,length,opts){var bestart=blob.l+7,cell2=parse_XLSCell(blob,6,opts);blob.l=bestart;var val2=parse_Bes(blob,2);return cell2.val=val2,cell2.t=val2===!0||val2===!1?"b":"e",cell2}function parse_BIFF2FONTXTRA(blob,length){blob.l+=6,blob.l+=2,blob.l+=1,blob.l+=3,blob.l+=1,blob.l+=length-13}function parse_RString(blob,length,opts){var end=blob.l+length,cell2=parse_XLSCell(blob,6,opts),cch=blob.read_shift(2),str=parse_XLUnicodeStringNoCch(blob,cch,opts);return blob.l=end,cell2.t="str",cell2.val=str,cell2}function parse_BIFF4SheetInfo(blob){var flags=blob.read_shift(4),cch=blob.read_shift(1),name=blob.read_shift(cch,"sbcs");return name.length===0&&(name="Sheet1"),{flags,name}}function read_wb_ID(d,opts){var o=opts||{},OLD_WTF=!!o.WTF;o.WTF=!0;try{var out=SYLK.to_workbook(d,o);return o.WTF=OLD_WTF,out}catch(e){if(o.WTF=OLD_WTF,e.message.indexOf("SYLK bad record ID")==-1&&OLD_WTF)throw e;return PRN.to_workbook(d,opts)}}function parse_rpr(rpr){var font={},m=rpr.match(tagregex),i=0,pass=!1;if(m)for(;i!=m.length;++i){var y=parsexmltag(m[i]);switch(y[0].replace(/<\w*:/g,"<")){case"<condense":break;case"<extend":break;case"<shadow":if(!y.val)break;case"<shadow>":case"<shadow/>":font.shadow=1;break;case"</shadow>":break;case"<charset":if(y.val=="1")break;font.cp=CS2CP[parseInt(y.val,10)];break;case"<outline":if(!y.val)break;case"<outline>":case"<outline/>":font.outline=1;break;case"</outline>":break;case"<rFont":font.name=y.val;break;case"<sz":font.sz=y.val;break;case"<strike":if(!y.val)break;case"<strike>":case"<strike/>":font.strike=1;break;case"</strike>":break;case"<u":if(!y.val)break;switch(y.val){case"double":font.uval="double";break;case"singleAccounting":font.uval="single-accounting";break;case"doubleAccounting":font.uval="double-accounting";break}case"<u>":case"<u/>":font.u=1;break;case"</u>":break;case"<b":if(y.val=="0")break;case"<b>":case"<b/>":font.b=1;break;case"</b>":break;case"<i":if(y.val=="0")break;case"<i>":case"<i/>":font.i=1;break;case"</i>":break;case"<color":y.rgb&&(font.color=y.rgb.slice(2,8));break;case"<color>":case"<color/>":case"</color>":break;case"<family":font.family=y.val;break;case"<family>":case"<family/>":case"</family>":break;case"<vertAlign":font.valign=y.val;break;case"<vertAlign>":case"<vertAlign/>":case"</vertAlign>":break;case"<scheme":break;case"<scheme>":case"<scheme/>":case"</scheme>":break;case"<extLst":case"<extLst>":case"</extLst>":break;case"<ext":pass=!0;break;case"</ext>":pass=!1;break;default:if(y[0].charCodeAt(1)!==47&&!pass)throw new Error("Unrecognized rich format "+y[0])}}return font}function parse_si(x,opts){var html=opts?opts.cellHTML:!0,z={};return x?(x.match(/^\s*<(?:\w+:)?t[^>]*>/)?(z.t=unescapexml(utf8read(x.slice(x.indexOf(">")+1).split(/<\/(?:\w+:)?t>/)[0]||""),!0),z.r=utf8read(x),html&&(z.h=escapehtml(z.t))):x.match(sirregex)&&(z.r=utf8read(x),z.t=unescapexml(utf8read((str_remove_xml_ns_g(x,"rPh").match(sitregex)||[]).join("").replace(tagregex,"")),!0),html&&(z.h=rs_to_html(parse_rs(z.r)))),z):{t:""}}function parse_sst_xml(data,opts){var s=[],ss="";if(!data)return s;var sst=str_match_xml_ns(data,"sst");if(sst){ss=sst[1].replace(sstr1,"").split(sstr2);for(var i=0;i!=ss.length;++i){var o=parse_si(ss[i].trim(),opts);o!=null&&(s[s.length]=o)}sst=parsexmltag(sst[0].slice(0,sst[0].indexOf(">"))),s.Count=sst.count,s.Unique=sst.uniqueCount}return s}function write_sst_xml(sst,opts){if(!opts.bookSST)return"";var o=[XML_HEADER];o[o.length]=writextag("sst",null,{xmlns:XMLNS_main[0],count:sst.Count,uniqueCount:sst.Unique});for(var i=0;i!=sst.length;++i)if(sst[i]!=null){var s=sst[i],sitag="<si>";s.r?sitag+=s.r:(sitag+="<t",s.t||(s.t=""),typeof s.t!="string"&&(s.t=String(s.t)),s.t.match(straywsregex)&&(sitag+=' xml:space="preserve"'),sitag+=">"+escapexml(s.t)+"</t>"),sitag+="</si>",o[o.length]=sitag}return o.length>2&&(o[o.length]="</sst>",o[1]=o[1].replace("/>",">")),o.join("")}function parse_BrtBeginSst(data){return[data.read_shift(4),data.read_shift(4)]}function parse_sst_bin(data,opts){var s=[],pass=!1;return recordhopper(data,function(val2,R,RT){switch(RT){case 159:s.Count=val2[0],s.Unique=val2[1];break;case 19:s.push(val2);break;case 160:return!0;case 35:pass=!0;break;case 36:pass=!1;break;default:if(R.T,!pass||opts.WTF)throw new Error("Unexpected record 0x"+RT.toString(16))}}),s}function write_BrtBeginSst(sst,o){return o||(o=new_buf(8)),o.write_shift(4,sst.Count),o.write_shift(4,sst.Unique),o}function write_sst_bin(sst){var ba=buf_array();write_record(ba,159,write_BrtBeginSst(sst));for(var i=0;i<sst.length;++i)write_record(ba,19,write_BrtSSTItem(sst[i]));return write_record(ba,160),ba.end()}function _JS2ANSI(str){if(typeof $cptable<"u")return $cptable.utils.encode(current_ansi,str);for(var o=[],oo=str.split(""),i=0;i<oo.length;++i)o[i]=oo[i].charCodeAt(0);return o}function parse_CRYPTOVersion(blob,length){var o={};return o.Major=blob.read_shift(2),o.Minor=blob.read_shift(2),length>=4&&(blob.l+=length-4),o}function parse_DataSpaceVersionInfo(blob){var o={};return o.id=blob.read_shift(0,"lpp4"),o.R=parse_CRYPTOVersion(blob,4),o.U=parse_CRYPTOVersion(blob,4),o.W=parse_CRYPTOVersion(blob,4),o}function parse_DataSpaceMapEntry(blob){for(var len=blob.read_shift(4),end=blob.l+len-4,o={},cnt=blob.read_shift(4),comps=[];cnt-- >0;)comps.push({t:blob.read_shift(4),v:blob.read_shift(0,"lpp4")});if(o.name=blob.read_shift(0,"lpp4"),o.comps=comps,blob.l!=end)throw new Error("Bad DataSpaceMapEntry: "+blob.l+" != "+end);return o}function parse_DataSpaceMap(blob){var o=[];blob.l+=4;for(var cnt=blob.read_shift(4);cnt-- >0;)o.push(parse_DataSpaceMapEntry(blob));return o}function parse_DataSpaceDefinition(blob){var o=[];blob.l+=4;for(var cnt=blob.read_shift(4);cnt-- >0;)o.push(blob.read_shift(0,"lpp4"));return o}function parse_TransformInfoHeader(blob){var o={};return blob.read_shift(4),blob.l+=4,o.id=blob.read_shift(0,"lpp4"),o.name=blob.read_shift(0,"lpp4"),o.R=parse_CRYPTOVersion(blob,4),o.U=parse_CRYPTOVersion(blob,4),o.W=parse_CRYPTOVersion(blob,4),o}function parse_Primary(blob){var hdr=parse_TransformInfoHeader(blob);if(hdr.ename=blob.read_shift(0,"8lpp4"),hdr.blksz=blob.read_shift(4),hdr.cmode=blob.read_shift(4),blob.read_shift(4)!=4)throw new Error("Bad !Primary record");return hdr}function parse_EncryptionHeader(blob,length){var tgt=blob.l+length,o={};o.Flags=blob.read_shift(4)&63,blob.l+=4,o.AlgID=blob.read_shift(4);var valid=!1;switch(o.AlgID){case 26126:case 26127:case 26128:valid=o.Flags==36;break;case 26625:valid=o.Flags==4;break;case 0:valid=o.Flags==16||o.Flags==4||o.Flags==36;break;default:throw"Unrecognized encryption algorithm: "+o.AlgID}if(!valid)throw new Error("Encryption Flags/AlgID mismatch");return o.AlgIDHash=blob.read_shift(4),o.KeySize=blob.read_shift(4),o.ProviderType=blob.read_shift(4),blob.l+=8,o.CSPName=blob.read_shift(tgt-blob.l>>1,"utf16le"),blob.l=tgt,o}function parse_EncryptionVerifier(blob,length){var o={},tgt=blob.l+length;return blob.l+=4,o.Salt=blob.slice(blob.l,blob.l+16),blob.l+=16,o.Verifier=blob.slice(blob.l,blob.l+16),blob.l+=16,blob.read_shift(4),o.VerifierHash=blob.slice(blob.l,tgt),blob.l=tgt,o}function parse_EncryptionInfo(blob){var vers=parse_CRYPTOVersion(blob);switch(vers.Minor){case 2:return[vers.Minor,parse_EncInfoStd(blob,vers)];case 3:return[vers.Minor,parse_EncInfoExt(blob,vers)];case 4:return[vers.Minor,parse_EncInfoAgl(blob,vers)]}throw new Error("ECMA-376 Encrypted file unrecognized Version: "+vers.Minor)}function parse_EncInfoStd(blob){var flags=blob.read_shift(4);if((flags&63)!=36)throw new Error("EncryptionInfo mismatch");var sz=blob.read_shift(4),hdr=parse_EncryptionHeader(blob,sz),verifier=parse_EncryptionVerifier(blob,blob.length-blob.l);return{t:"Std",h:hdr,v:verifier}}function parse_EncInfoExt(){throw new Error("File is password-protected: ECMA-376 Extensible")}function parse_EncInfoAgl(blob){var KeyData=["saltSize","blockSize","keyBits","hashSize","cipherAlgorithm","cipherChaining","hashAlgorithm","saltValue"];blob.l+=4;var xml=blob.read_shift(blob.length-blob.l,"utf8"),o={};return xml.replace(tagregex,function(x){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<?xml":break;case"<encryption":case"</encryption>":break;case"<keyData":KeyData.forEach(function(k){o[k]=y[k]});break;case"<dataIntegrity":o.encryptedHmacKey=y.encryptedHmacKey,o.encryptedHmacValue=y.encryptedHmacValue;break;case"<keyEncryptors>":case"<keyEncryptors":o.encs=[];break;case"</keyEncryptors>":break;case"<keyEncryptor":o.uri=y.uri;break;case"</keyEncryptor>":break;case"<encryptedKey":o.encs.push(y);break;default:throw y[0]}}),o}function parse_RC4CryptoHeader(blob,length){var o={},vers=o.EncryptionVersionInfo=parse_CRYPTOVersion(blob,4);if(length-=4,vers.Minor!=2)throw new Error("unrecognized minor version code: "+vers.Minor);if(vers.Major>4||vers.Major<2)throw new Error("unrecognized major version code: "+vers.Major);o.Flags=blob.read_shift(4),length-=4;var sz=blob.read_shift(4);return length-=4,o.EncryptionHeader=parse_EncryptionHeader(blob,sz),length-=sz,o.EncryptionVerifier=parse_EncryptionVerifier(blob,length),o}function parse_RC4Header(blob){var o={},vers=o.EncryptionVersionInfo=parse_CRYPTOVersion(blob,4);if(vers.Major!=1||vers.Minor!=1)throw"unrecognized version code "+vers.Major+" : "+vers.Minor;return o.Salt=blob.read_shift(16),o.EncryptedVerifier=blob.read_shift(16),o.EncryptedVerifierHash=blob.read_shift(16),o}function crypto_CreatePasswordVerifier_Method1(Password){var Verifier=0,PasswordArray,PasswordDecoded=_JS2ANSI(Password),len=PasswordDecoded.length+1,i,PasswordByte,Intermediate1,Intermediate2,Intermediate3;for(PasswordArray=new_raw_buf(len),PasswordArray[0]=PasswordDecoded.length,i=1;i!=len;++i)PasswordArray[i]=PasswordDecoded[i-1];for(i=len-1;i>=0;--i)PasswordByte=PasswordArray[i],Intermediate1=(Verifier&16384)===0?0:1,Intermediate2=Verifier<<1&32767,Intermediate3=Intermediate1|Intermediate2,Verifier=Intermediate3^PasswordByte;return Verifier^52811}function parse_XORObfuscation(blob,length,opts,out){var o={key:parseuint16(blob),verificationBytes:parseuint16(blob)};return opts.password&&(o.verifier=crypto_CreatePasswordVerifier_Method1(opts.password)),out.valid=o.verificationBytes===o.verifier,out.valid&&(out.insitu=crypto_MakeXorDecryptor(opts.password)),o}function parse_FilePassHeader(blob,length,oo){var o=oo||{};return o.Info=blob.read_shift(2),blob.l-=2,o.Info===1?o.Data=parse_RC4Header(blob,length):o.Data=parse_RC4CryptoHeader(blob,length),o}function parse_FilePass(blob,length,opts){var o={Type:opts.biff>=8?blob.read_shift(2):0};return o.Type?parse_FilePassHeader(blob,length-2,o):parse_XORObfuscation(blob,opts.biff>=8?length:length-2,opts,o),o}function rtf_to_sheet(d,opts){switch(opts.type){case"base64":return rtf_to_sheet_str(Base64_decode(d),opts);case"binary":return rtf_to_sheet_str(d,opts);case"buffer":return rtf_to_sheet_str(has_buf&&Buffer.isBuffer(d)?d.toString("binary"):a2s(d),opts);case"array":return rtf_to_sheet_str(cc2str(d),opts)}throw new Error("Unrecognized type "+opts.type)}function rtf_to_sheet_str(str,opts){var o=opts||{},ws={},dense=o.dense;dense&&(ws["!data"]=[]);var rows=str_match_ng(str,"\\trowd","\\row");if(!rows)throw new Error("RTF missing table");var range={s:{c:0,r:0},e:{c:0,r:rows.length-1}},row=[];return rows.forEach(function(rowtf,R){dense&&(row=ws["!data"][R]=[]);for(var rtfre=/\\[\w\-]+\b/g,last_index=0,res,C=-1,payload=[];(res=rtfre.exec(rowtf))!=null;){var data=rowtf.slice(last_index,rtfre.lastIndex-res[0].length);switch(data.charCodeAt(0)==32&&(data=data.slice(1)),data.length&&payload.push(data),res[0]){case"\\cell":if(++C,payload.length){var cell2={v:payload.join(""),t:"s"};cell2.v=="TRUE"||cell2.v=="FALSE"?(cell2.v=cell2.v=="TRUE",cell2.t="b"):isNaN(fuzzynum(cell2.v))?RBErr[cell2.v]!=null&&(cell2.t="e",cell2.w=cell2.v,cell2.v=RBErr[cell2.v]):(cell2.t="n",o.cellText!==!1&&(cell2.w=cell2.v),cell2.v=fuzzynum(cell2.v)),dense?row[C]=cell2:ws[encode_cell({r:R,c:C})]=cell2}payload=[];break;case"\\par":payload.push(`
|
|
12
|
-
`);break}last_index=rtfre.lastIndex}C>range.e.c&&(range.e.c=C)}),ws["!ref"]=encode_range(range),ws}function rtf_to_workbook(d,opts){var wb=sheet_to_workbook(rtf_to_sheet(d,opts),opts);return wb.bookType="rtf",wb}function sheet_to_rtf(ws,opts){var o=["{\\rtf1\\ansi"];if(!ws["!ref"])return o[0]+"}";for(var r=safe_decode_range(ws["!ref"]),cell2,dense=ws["!data"]!=null,row=[],R=r.s.r;R<=r.e.r;++R){o.push("\\trowd\\trautofit1");for(var C=r.s.c;C<=r.e.c;++C)o.push("\\cellx"+(C+1));for(o.push("\\pard\\intbl"),dense&&(row=ws["!data"][R]||[]),C=r.s.c;C<=r.e.c;++C){var coord=encode_cell({r:R,c:C});if(cell2=dense?row[C]:ws[coord],!cell2||cell2.v==null&&(!cell2.f||cell2.F)){o.push(" \\cell");continue}o.push(" "+(cell2.w||(format_cell(cell2),cell2.w)||"").replace(/[\r\n]/g,"\\par ")),o.push("\\cell")}o.push("\\pard\\intbl\\row")}return o.join("")+"}"}function hex2RGB(h){var o=h.slice(h[0]==="#"?1:0).slice(0,6);return[parseInt(o.slice(0,2),16),parseInt(o.slice(2,4),16),parseInt(o.slice(4,6),16)]}function rgb2Hex(rgb){for(var i=0,o=1;i!=3;++i)o=o*256+(rgb[i]>255?255:rgb[i]<0?0:rgb[i]);return o.toString(16).toUpperCase().slice(1)}function rgb2HSL(rgb){var R=rgb[0]/255,G=rgb[1]/255,B=rgb[2]/255,M=Math.max(R,G,B),m=Math.min(R,G,B),C=M-m;if(C===0)return[0,0,R];var H6=0,S=0,L2=M+m;switch(S=C/(L2>1?2-L2:L2),M){case R:H6=((G-B)/C+6)%6;break;case G:H6=(B-R)/C+2;break;case B:H6=(R-G)/C+4;break}return[H6/6,S,L2/2]}function hsl2RGB(hsl){var H=hsl[0],S=hsl[1],L=hsl[2],C=S*2*(L<.5?L:1-L),m=L-C/2,rgb=[m,m,m],h6=6*H,X;if(S!==0)switch(h6|0){case 0:case 6:X=C*h6,rgb[0]+=C,rgb[1]+=X;break;case 1:X=C*(2-h6),rgb[0]+=X,rgb[1]+=C;break;case 2:X=C*(h6-2),rgb[1]+=C,rgb[2]+=X;break;case 3:X=C*(4-h6),rgb[1]+=X,rgb[2]+=C;break;case 4:X=C*(h6-4),rgb[2]+=C,rgb[0]+=X;break;case 5:X=C*(6-h6),rgb[2]+=X,rgb[0]+=C;break}for(var i=0;i!=3;++i)rgb[i]=Math.round(rgb[i]*255);return rgb}function rgb_tint(hex,tint){if(tint===0)return hex;var hsl=rgb2HSL(hex2RGB(hex));return tint<0?hsl[2]=hsl[2]*(1+tint):hsl[2]=1-(1-hsl[2])*(1-tint),rgb2Hex(hsl2RGB(hsl))}function width2px(width){return Math.floor((width+Math.round(128/MDW)/256)*MDW)}function px2char(px){return Math.floor((px-5)/MDW*100+.5)/100}function char2width(chr){return Math.round((chr*MDW+5)/MDW*256)/256}function cycle_width(collw){return char2width(px2char(width2px(collw)))}function find_mdw_colw(collw){var delta=Math.abs(collw-cycle_width(collw)),_MDW=MDW;if(delta>.005)for(MDW=MIN_MDW;MDW<MAX_MDW;++MDW)Math.abs(collw-cycle_width(collw))<=delta&&(delta=Math.abs(collw-cycle_width(collw)),_MDW=MDW);MDW=_MDW}function process_col(coll){coll.width?(coll.wpx=width2px(coll.width),coll.wch=px2char(coll.wpx),coll.MDW=MDW):coll.wpx?(coll.wch=px2char(coll.wpx),coll.width=char2width(coll.wch),coll.MDW=MDW):typeof coll.wch=="number"&&(coll.width=char2width(coll.wch),coll.wpx=width2px(coll.width),coll.MDW=MDW),coll.customWidth&&delete coll.customWidth}function px2pt(px){return px*96/PPI}function pt2px(pt){return pt*PPI/96}function parse_borders(t,styles,themes,opts){styles.Borders=[];var border={},pass=!1;(t.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<borders":case"<borders>":case"</borders>":break;case"<border":case"<border>":case"<border/>":border={},y.diagonalUp&&(border.diagonalUp=parsexmlbool(y.diagonalUp)),y.diagonalDown&&(border.diagonalDown=parsexmlbool(y.diagonalDown)),styles.Borders.push(border);break;case"</border>":break;case"<left/>":break;case"<left":case"<left>":break;case"</left>":break;case"<right/>":break;case"<right":case"<right>":break;case"</right>":break;case"<top/>":break;case"<top":case"<top>":break;case"</top>":break;case"<bottom/>":break;case"<bottom":case"<bottom>":break;case"</bottom>":break;case"<diagonal":case"<diagonal>":case"<diagonal/>":break;case"</diagonal>":break;case"<horizontal":case"<horizontal>":case"<horizontal/>":break;case"</horizontal>":break;case"<vertical":case"<vertical>":case"<vertical/>":break;case"</vertical>":break;case"<start":case"<start>":case"<start/>":break;case"</start>":break;case"<end":case"<end>":case"<end/>":break;case"</end>":break;case"<color":case"<color>":break;case"<color/>":case"</color>":break;case"<extLst":case"<extLst>":case"</extLst>":break;case"<ext":pass=!0;break;case"</ext>":pass=!1;break;default:if(opts&&opts.WTF&&!pass)throw new Error("unrecognized "+y[0]+" in borders")}})}function parse_fills(t,styles,themes,opts){styles.Fills=[];var fill2={},pass=!1;(t.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<fills":case"<fills>":case"</fills>":break;case"<fill>":case"<fill":case"<fill/>":fill2={},styles.Fills.push(fill2);break;case"</fill>":break;case"<gradientFill>":break;case"<gradientFill":case"</gradientFill>":styles.Fills.push(fill2),fill2={};break;case"<patternFill":case"<patternFill>":y.patternType&&(fill2.patternType=y.patternType);break;case"<patternFill/>":case"</patternFill>":break;case"<bgColor":fill2.bgColor||(fill2.bgColor={}),y.indexed&&(fill2.bgColor.indexed=parseInt(y.indexed,10)),y.theme&&(fill2.bgColor.theme=parseInt(y.theme,10)),y.tint&&(fill2.bgColor.tint=parseFloat(y.tint)),y.rgb&&(fill2.bgColor.rgb=y.rgb.slice(-6));break;case"<bgColor/>":case"</bgColor>":break;case"<fgColor":fill2.fgColor||(fill2.fgColor={}),y.theme&&(fill2.fgColor.theme=parseInt(y.theme,10)),y.tint&&(fill2.fgColor.tint=parseFloat(y.tint)),y.rgb!=null&&(fill2.fgColor.rgb=y.rgb.slice(-6));break;case"<fgColor/>":case"</fgColor>":break;case"<stop":case"<stop/>":break;case"</stop>":break;case"<color":case"<color/>":break;case"</color>":break;case"<extLst":case"<extLst>":case"</extLst>":break;case"<ext":pass=!0;break;case"</ext>":pass=!1;break;default:if(opts&&opts.WTF&&!pass)throw new Error("unrecognized "+y[0]+" in fills")}})}function parse_fonts(t,styles,themes,opts){styles.Fonts=[];var font={},pass=!1;(t.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<fonts":case"<fonts>":case"</fonts>":break;case"<font":case"<font>":break;case"</font>":case"<font/>":styles.Fonts.push(font),font={};break;case"<name":y.val&&(font.name=utf8read(y.val));break;case"<name/>":case"</name>":break;case"<b":font.bold=y.val?parsexmlbool(y.val):1;break;case"<b/>":font.bold=1;break;case"</b>":case"</b":break;case"<i":font.italic=y.val?parsexmlbool(y.val):1;break;case"<i/>":font.italic=1;break;case"</i>":case"</i":break;case"<u":switch(y.val){case"none":font.underline=0;break;case"single":font.underline=1;break;case"double":font.underline=2;break;case"singleAccounting":font.underline=33;break;case"doubleAccounting":font.underline=34;break}break;case"<u/>":font.underline=1;break;case"</u>":case"</u":break;case"<strike":font.strike=y.val?parsexmlbool(y.val):1;break;case"<strike/>":font.strike=1;break;case"</strike>":case"</strike":break;case"<outline":font.outline=y.val?parsexmlbool(y.val):1;break;case"<outline/>":font.outline=1;break;case"</outline>":case"</outline":break;case"<shadow":font.shadow=y.val?parsexmlbool(y.val):1;break;case"<shadow/>":font.shadow=1;break;case"</shadow>":case"</shadow":break;case"<condense":font.condense=y.val?parsexmlbool(y.val):1;break;case"<condense/>":font.condense=1;break;case"</condense>":case"</condense":break;case"<extend":font.extend=y.val?parsexmlbool(y.val):1;break;case"<extend/>":font.extend=1;break;case"</extend>":case"</extend":break;case"<sz":y.val&&(font.sz=+y.val);break;case"<sz/>":case"</sz>":case"</sz":break;case"<vertAlign":y.val&&(font.vertAlign=y.val);break;case"<vertAlign/>":case"</vertAlign>":case"</vertAlign":break;case"<family":y.val&&(font.family=parseInt(y.val,10));break;case"<family/>":case"</family>":case"</family":break;case"<scheme":y.val&&(font.scheme=y.val);break;case"<scheme/>":case"</scheme>":case"</scheme":break;case"<charset":if(y.val=="1")break;y.codepage=CS2CP[parseInt(y.val,10)];break;case"<charset/>":case"</charset>":case"</charset":break;case"<color":if(font.color||(font.color={}),y.auto&&(font.color.auto=parsexmlbool(y.auto)),y.rgb)font.color.rgb=y.rgb.slice(-6);else if(y.indexed){font.color.index=parseInt(y.indexed,10);var icv=XLSIcv[font.color.index];font.color.index==81&&(icv=XLSIcv[1]),icv||(icv=XLSIcv[1]),font.color.rgb=icv[0].toString(16)+icv[1].toString(16)+icv[2].toString(16)}else y.theme&&(font.color.theme=parseInt(y.theme,10),y.tint&&(font.color.tint=parseFloat(y.tint)),y.theme&&themes.themeElements&&themes.themeElements.clrScheme&&(font.color.rgb=rgb_tint(themes.themeElements.clrScheme[font.color.theme].rgb,font.color.tint||0)));break;case"<color/>":case"</color>":case"</color":break;case"<AlternateContent":pass=!0;break;case"</AlternateContent>":case"</AlternateContent":pass=!1;break;case"<extLst":case"<extLst>":case"</extLst>":break;case"<ext":pass=!0;break;case"</ext>":pass=!1;break;default:if(opts&&opts.WTF&&!pass)throw new Error("unrecognized "+y[0]+" in fonts")}})}function parse_numFmts(t,styles,opts){styles.NumberFmt=[];for(var k=keys(table_fmt),i=0;i<k.length;++i)styles.NumberFmt[k[i]]=table_fmt[k[i]];var m=t.match(tagregex);if(m)for(i=0;i<m.length;++i){var y=parsexmltag(m[i]);switch(strip_ns(y[0])){case"<numFmts":case"</numFmts>":case"<numFmts/>":case"<numFmts>":break;case"<numFmt":{var f=unescapexml(utf8read(y.formatCode)),j=parseInt(y.numFmtId,10);if(styles.NumberFmt[j]=f,j>0){if(j>392){for(j=392;j>60&&styles.NumberFmt[j]!=null;--j);styles.NumberFmt[j]=f}SSF__load(f,j)}}break;case"</numFmt>":break;default:if(opts.WTF)throw new Error("unrecognized "+y[0]+" in numFmts")}}}function write_numFmts(NF){var o=["<numFmts>"];return[[5,8],[23,26],[41,44],[50,392]].forEach(function(r){for(var i=r[0];i<=r[1];++i)NF[i]!=null&&(o[o.length]=writextag("numFmt",null,{numFmtId:i,formatCode:escapexml(NF[i])}))}),o.length===1?"":(o[o.length]="</numFmts>",o[0]=writextag("numFmts",null,{count:o.length-2}).replace("/>",">"),o.join(""))}function parse_cellXfs(t,styles,opts){styles.CellXf=[];var xf,pass=!1;(t.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x),i=0;switch(strip_ns(y[0])){case"<cellXfs":case"<cellXfs>":case"<cellXfs/>":case"</cellXfs>":break;case"<xf":case"<xf/>":case"<xf>":for(xf=y,delete xf[0],i=0;i<cellXF_uint.length;++i)xf[cellXF_uint[i]]&&(xf[cellXF_uint[i]]=parseInt(xf[cellXF_uint[i]],10));for(i=0;i<cellXF_bool.length;++i)xf[cellXF_bool[i]]&&(xf[cellXF_bool[i]]=parsexmlbool(xf[cellXF_bool[i]]));if(styles.NumberFmt&&xf.numFmtId>392){for(i=392;i>60;--i)if(styles.NumberFmt[xf.numFmtId]==styles.NumberFmt[i]){xf.numFmtId=i;break}}styles.CellXf.push(xf);break;case"</xf>":break;case"<alignment":case"<alignment/>":case"<alignment>":var alignment={};y.vertical&&(alignment.vertical=y.vertical),y.horizontal&&(alignment.horizontal=y.horizontal),y.textRotation!=null&&(alignment.textRotation=y.textRotation),y.indent&&(alignment.indent=y.indent),y.wrapText&&(alignment.wrapText=parsexmlbool(y.wrapText)),xf.alignment=alignment;break;case"</alignment>":break;case"<protection":case"<protection>":break;case"</protection>":case"<protection/>":break;case"<AlternateContent":case"<AlternateContent>":pass=!0;break;case"</AlternateContent>":pass=!1;break;case"<extLst":case"<extLst>":case"</extLst>":break;case"<ext":pass=!0;break;case"</ext>":pass=!1;break;default:if(opts&&opts.WTF&&!pass)throw new Error("unrecognized "+y[0]+" in cellXfs")}})}function write_cellXfs(cellXfs){var o=[];return o[o.length]=writextag("cellXfs",null),cellXfs.forEach(function(c){o[o.length]=writextag("xf",null,c)}),o[o.length]="</cellXfs>",o.length===2?"":(o[0]=writextag("cellXfs",null,{count:o.length-2}).replace("/>",">"),o.join(""))}function write_sty_xml(wb,opts){var o=[XML_HEADER,writextag("styleSheet",null,{xmlns:XMLNS_main[0],"xmlns:vt":XMLNS.vt})],w;return wb.SSF&&(w=write_numFmts(wb.SSF))!=null&&(o[o.length]=w),o[o.length]='<fonts count="1"><font><sz val="12"/><color theme="1"/><name val="Calibri"/><family val="2"/><scheme val="minor"/></font></fonts>',o[o.length]='<fills count="2"><fill><patternFill patternType="none"/></fill><fill><patternFill patternType="gray125"/></fill></fills>',o[o.length]='<borders count="1"><border><left/><right/><top/><bottom/><diagonal/></border></borders>',o[o.length]='<cellStyleXfs count="1"><xf numFmtId="0" fontId="0" fillId="0" borderId="0"/></cellStyleXfs>',(w=write_cellXfs(opts.cellXfs))&&(o[o.length]=w),o[o.length]='<cellStyles count="1"><cellStyle name="Normal" xfId="0" builtinId="0"/></cellStyles>',o[o.length]='<dxfs count="0"/>',o[o.length]='<tableStyles count="0" defaultTableStyle="TableStyleMedium9" defaultPivotStyle="PivotStyleMedium4"/>',o.length>2&&(o[o.length]="</styleSheet>",o[1]=o[1].replace("/>",">")),o.join("")}function parse_BrtFmt(data,length){var numFmtId=data.read_shift(2),stFmtCode=parse_XLWideString(data,length-2);return[numFmtId,stFmtCode]}function write_BrtFmt(i,f,o){o||(o=new_buf(6+4*f.length)),o.write_shift(2,i),write_XLWideString(f,o);var out=o.length>o.l?o.slice(0,o.l):o;return o.l==null&&(o.l=o.length),out}function parse_BrtFont(data,length,opts){var out={};out.sz=data.read_shift(2)/20;var grbit=parse_FontFlags(data,2,opts);grbit.fItalic&&(out.italic=1),grbit.fCondense&&(out.condense=1),grbit.fExtend&&(out.extend=1),grbit.fShadow&&(out.shadow=1),grbit.fOutline&&(out.outline=1),grbit.fStrikeout&&(out.strike=1);var bls=data.read_shift(2);switch(bls===700&&(out.bold=1),data.read_shift(2)){case 1:out.vertAlign="superscript";break;case 2:out.vertAlign="subscript";break}var underline=data.read_shift(1);underline!=0&&(out.underline=underline);var family=data.read_shift(1);family>0&&(out.family=family);var bCharSet=data.read_shift(1);switch(bCharSet>0&&(out.charset=bCharSet),data.l++,out.color=parse_BrtColor(data,8),data.read_shift(1)){case 1:out.scheme="major";break;case 2:out.scheme="minor";break}return out.name=parse_XLWideString(data,length-21),out}function write_BrtFont(font,o){o||(o=new_buf(153)),o.write_shift(2,font.sz*20),write_FontFlags(font,o),o.write_shift(2,font.bold?700:400);var sss=0;font.vertAlign=="superscript"?sss=1:font.vertAlign=="subscript"&&(sss=2),o.write_shift(2,sss),o.write_shift(1,font.underline||0),o.write_shift(1,font.family||0),o.write_shift(1,font.charset||0),o.write_shift(1,0),write_BrtColor(font.color,o);var scheme=0;return font.scheme=="major"&&(scheme=1),font.scheme=="minor"&&(scheme=2),o.write_shift(1,scheme),write_XLWideString(font.name,o),o.length>o.l?o.slice(0,o.l):o}function write_BrtFill(fill2,o){o||(o=new_buf(84)),rev_XLSBFillPTNames||(rev_XLSBFillPTNames=evert(XLSBFillPTNames));var fls=rev_XLSBFillPTNames[fill2.patternType];fls==null&&(fls=40),o.write_shift(4,fls);var j=0;if(fls!=40)for(write_BrtColor({auto:1},o),write_BrtColor({auto:1},o);j<12;++j)o.write_shift(4,0);else{for(;j<4;++j)o.write_shift(4,0);for(;j<12;++j)o.write_shift(4,0)}return o.length>o.l?o.slice(0,o.l):o}function parse_BrtXF(data,length){var tgt=data.l+length,ixfeParent=data.read_shift(2),ifmt=data.read_shift(2);return data.l=tgt,{ixfe:ixfeParent,numFmtId:ifmt}}function write_BrtXF(data,ixfeP,o){o||(o=new_buf(16)),o.write_shift(2,ixfeP||0),o.write_shift(2,data.numFmtId||0),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(1,0),o.write_shift(1,0);var flow=0;return o.write_shift(1,flow),o.write_shift(1,0),o.write_shift(1,0),o.write_shift(1,0),o}function write_Blxf(data,o){return o||(o=new_buf(10)),o.write_shift(1,0),o.write_shift(1,0),o.write_shift(4,0),o.write_shift(4,0),o}function write_BrtBorder(border,o){return o||(o=new_buf(51)),o.write_shift(1,0),write_Blxf(null,o),write_Blxf(null,o),write_Blxf(null,o),write_Blxf(null,o),write_Blxf(null,o),o.length>o.l?o.slice(0,o.l):o}function write_BrtStyle(style,o){return o||(o=new_buf(52)),o.write_shift(4,style.xfId),o.write_shift(2,1),o.write_shift(1,+style.builtinId),o.write_shift(1,0),write_XLNullableWideString(style.name||"",o),o.length>o.l?o.slice(0,o.l):o}function write_BrtBeginTableStyles(cnt,defTableStyle,defPivotStyle){var o=new_buf(2052);return o.write_shift(4,cnt),write_XLNullableWideString(defTableStyle,o),write_XLNullableWideString(defPivotStyle,o),o.length>o.l?o.slice(0,o.l):o}function parse_sty_bin(data,themes,opts){var styles={};styles.NumberFmt=[];for(var y in table_fmt)styles.NumberFmt[y]=table_fmt[y];styles.CellXf=[],styles.Fonts=[];var state=[],pass=!1;return recordhopper(data,function(val2,R,RT){switch(RT){case 44:styles.NumberFmt[val2[0]]=val2[1],SSF__load(val2[1],val2[0]);break;case 43:styles.Fonts.push(val2),val2.color.theme!=null&&themes&&themes.themeElements&&themes.themeElements.clrScheme&&(val2.color.rgb=rgb_tint(themes.themeElements.clrScheme[val2.color.theme].rgb,val2.color.tint||0));break;case 1025:break;case 45:break;case 46:break;case 47:state[state.length-1]==617&&styles.CellXf.push(val2);break;case 48:case 507:case 572:case 475:break;case 1171:case 2102:case 1130:case 512:case 2095:case 3072:break;case 35:pass=!0;break;case 36:pass=!1;break;case 37:state.push(RT),pass=!0;break;case 38:state.pop(),pass=!1;break;default:if(R.T>0)state.push(RT);else if(R.T<0)state.pop();else if(!pass||opts.WTF&&state[state.length-1]!=37)throw new Error("Unexpected record 0x"+RT.toString(16))}}),styles}function write_FMTS_bin(ba,NF){if(NF){var cnt=0;[[5,8],[23,26],[41,44],[50,392]].forEach(function(r){for(var i=r[0];i<=r[1];++i)NF[i]!=null&&++cnt}),cnt!=0&&(write_record(ba,615,write_UInt32LE(cnt)),[[5,8],[23,26],[41,44],[50,392]].forEach(function(r){for(var i=r[0];i<=r[1];++i)NF[i]!=null&&write_record(ba,44,write_BrtFmt(i,NF[i]))}),write_record(ba,616))}}function write_FONTS_bin(ba){var cnt=1;cnt!=0&&(write_record(ba,611,write_UInt32LE(cnt)),write_record(ba,43,write_BrtFont({sz:12,color:{theme:1},name:"Calibri",family:2,scheme:"minor"})),write_record(ba,612))}function write_FILLS_bin(ba){var cnt=2;cnt!=0&&(write_record(ba,603,write_UInt32LE(cnt)),write_record(ba,45,write_BrtFill({patternType:"none"})),write_record(ba,45,write_BrtFill({patternType:"gray125"})),write_record(ba,604))}function write_BORDERS_bin(ba){var cnt=1;cnt!=0&&(write_record(ba,613,write_UInt32LE(cnt)),write_record(ba,46,write_BrtBorder({})),write_record(ba,614))}function write_CELLSTYLEXFS_bin(ba){var cnt=1;write_record(ba,626,write_UInt32LE(cnt)),write_record(ba,47,write_BrtXF({numFmtId:0,fontId:0,fillId:0,borderId:0},65535)),write_record(ba,627)}function write_CELLXFS_bin(ba,data){write_record(ba,617,write_UInt32LE(data.length)),data.forEach(function(c){write_record(ba,47,write_BrtXF(c,0))}),write_record(ba,618)}function write_STYLES_bin(ba){var cnt=1;write_record(ba,619,write_UInt32LE(cnt)),write_record(ba,48,write_BrtStyle({xfId:0,builtinId:0,name:"Normal"})),write_record(ba,620)}function write_DXFS_bin(ba){var cnt=0;write_record(ba,505,write_UInt32LE(cnt)),write_record(ba,506)}function write_TABLESTYLES_bin(ba){var cnt=0;write_record(ba,508,write_BrtBeginTableStyles(cnt,"TableStyleMedium9","PivotStyleMedium4")),write_record(ba,509)}function write_sty_bin(wb,opts){var ba=buf_array();return write_record(ba,278),write_FMTS_bin(ba,wb.SSF),write_FONTS_bin(ba,wb),write_FILLS_bin(ba,wb),write_BORDERS_bin(ba,wb),write_CELLSTYLEXFS_bin(ba,wb),write_CELLXFS_bin(ba,opts.cellXfs),write_STYLES_bin(ba,wb),write_DXFS_bin(ba,wb),write_TABLESTYLES_bin(ba,wb),write_record(ba,279),ba.end()}function parse_clrScheme(t,themes,opts){themes.themeElements.clrScheme=[];var color={};(t[0].match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<a:clrScheme":case"</a:clrScheme>":break;case"<a:srgbClr":color.rgb=y.val;break;case"</a:srgbClr>":break;case"<a:sysClr":color.rgb=y.lastClr;break;case"</a:sysClr>":break;case"</a:dk1>":case"</a:lt1>":case"<a:dk1>":case"<a:lt1>":case"<a:dk2>":case"</a:dk2>":case"<a:lt2>":case"</a:lt2>":case"<a:accent1>":case"</a:accent1>":case"<a:accent2>":case"</a:accent2>":case"<a:accent3>":case"</a:accent3>":case"<a:accent4>":case"</a:accent4>":case"<a:accent5>":case"</a:accent5>":case"<a:accent6>":case"</a:accent6>":case"<a:hlink>":case"</a:hlink>":case"<a:folHlink>":case"</a:folHlink>":y[0].charAt(1)==="/"?(themes.themeElements.clrScheme[XLSXThemeClrScheme.indexOf(y[0])]=color,color={}):color.name=y[0].slice(3,y[0].length-1);break;default:if(opts&&opts.WTF)throw new Error("Unrecognized "+y[0]+" in clrScheme")}})}function parse_themeElements(data,themes,opts){themes.themeElements={};var t;if(!(t=str_match_xml(data,"a:clrScheme")))throw new Error("clrScheme not found in themeElements");if(parse_clrScheme(t,themes,opts),!(t=str_match_xml(data,"a:fontScheme")))throw new Error("fontScheme not found in themeElements");if(!(t=str_match_xml(data,"a:fmtScheme")))throw new Error("fmtScheme not found in themeElements");}function parse_theme_xml(data,opts){(!data||data.length===0)&&(data=write_theme());var t,themes={};if(!(t=str_match_xml(data,"a:themeElements")))throw new Error("themeElements not found in theme");return parse_themeElements(t[0],themes,opts),themes.raw=data,themes}function write_theme(Themes,opts){if(opts&&opts.themeXLSX)return opts.themeXLSX;if(Themes&&typeof Themes.raw=="string")return Themes.raw;var o=[XML_HEADER];return o[o.length]='<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme">',o[o.length]="<a:themeElements>",o[o.length]='<a:clrScheme name="Office">',o[o.length]='<a:dk1><a:sysClr val="windowText" lastClr="000000"/></a:dk1>',o[o.length]='<a:lt1><a:sysClr val="window" lastClr="FFFFFF"/></a:lt1>',o[o.length]='<a:dk2><a:srgbClr val="1F497D"/></a:dk2>',o[o.length]='<a:lt2><a:srgbClr val="EEECE1"/></a:lt2>',o[o.length]='<a:accent1><a:srgbClr val="4F81BD"/></a:accent1>',o[o.length]='<a:accent2><a:srgbClr val="C0504D"/></a:accent2>',o[o.length]='<a:accent3><a:srgbClr val="9BBB59"/></a:accent3>',o[o.length]='<a:accent4><a:srgbClr val="8064A2"/></a:accent4>',o[o.length]='<a:accent5><a:srgbClr val="4BACC6"/></a:accent5>',o[o.length]='<a:accent6><a:srgbClr val="F79646"/></a:accent6>',o[o.length]='<a:hlink><a:srgbClr val="0000FF"/></a:hlink>',o[o.length]='<a:folHlink><a:srgbClr val="800080"/></a:folHlink>',o[o.length]="</a:clrScheme>",o[o.length]='<a:fontScheme name="Office">',o[o.length]="<a:majorFont>",o[o.length]='<a:latin typeface="Cambria"/>',o[o.length]='<a:ea typeface=""/>',o[o.length]='<a:cs typeface=""/>',o[o.length]='<a:font script="Jpan" typeface="\uFF2D\uFF33 \uFF30\u30B4\u30B7\u30C3\u30AF"/>',o[o.length]='<a:font script="Hang" typeface="\uB9D1\uC740 \uACE0\uB515"/>',o[o.length]='<a:font script="Hans" typeface="\u5B8B\u4F53"/>',o[o.length]='<a:font script="Hant" typeface="\u65B0\u7D30\u660E\u9AD4"/>',o[o.length]='<a:font script="Arab" typeface="Times New Roman"/>',o[o.length]='<a:font script="Hebr" typeface="Times New Roman"/>',o[o.length]='<a:font script="Thai" typeface="Tahoma"/>',o[o.length]='<a:font script="Ethi" typeface="Nyala"/>',o[o.length]='<a:font script="Beng" typeface="Vrinda"/>',o[o.length]='<a:font script="Gujr" typeface="Shruti"/>',o[o.length]='<a:font script="Khmr" typeface="MoolBoran"/>',o[o.length]='<a:font script="Knda" typeface="Tunga"/>',o[o.length]='<a:font script="Guru" typeface="Raavi"/>',o[o.length]='<a:font script="Cans" typeface="Euphemia"/>',o[o.length]='<a:font script="Cher" typeface="Plantagenet Cherokee"/>',o[o.length]='<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>',o[o.length]='<a:font script="Tibt" typeface="Microsoft Himalaya"/>',o[o.length]='<a:font script="Thaa" typeface="MV Boli"/>',o[o.length]='<a:font script="Deva" typeface="Mangal"/>',o[o.length]='<a:font script="Telu" typeface="Gautami"/>',o[o.length]='<a:font script="Taml" typeface="Latha"/>',o[o.length]='<a:font script="Syrc" typeface="Estrangelo Edessa"/>',o[o.length]='<a:font script="Orya" typeface="Kalinga"/>',o[o.length]='<a:font script="Mlym" typeface="Kartika"/>',o[o.length]='<a:font script="Laoo" typeface="DokChampa"/>',o[o.length]='<a:font script="Sinh" typeface="Iskoola Pota"/>',o[o.length]='<a:font script="Mong" typeface="Mongolian Baiti"/>',o[o.length]='<a:font script="Viet" typeface="Times New Roman"/>',o[o.length]='<a:font script="Uigh" typeface="Microsoft Uighur"/>',o[o.length]='<a:font script="Geor" typeface="Sylfaen"/>',o[o.length]="</a:majorFont>",o[o.length]="<a:minorFont>",o[o.length]='<a:latin typeface="Calibri"/>',o[o.length]='<a:ea typeface=""/>',o[o.length]='<a:cs typeface=""/>',o[o.length]='<a:font script="Jpan" typeface="\uFF2D\uFF33 \uFF30\u30B4\u30B7\u30C3\u30AF"/>',o[o.length]='<a:font script="Hang" typeface="\uB9D1\uC740 \uACE0\uB515"/>',o[o.length]='<a:font script="Hans" typeface="\u5B8B\u4F53"/>',o[o.length]='<a:font script="Hant" typeface="\u65B0\u7D30\u660E\u9AD4"/>',o[o.length]='<a:font script="Arab" typeface="Arial"/>',o[o.length]='<a:font script="Hebr" typeface="Arial"/>',o[o.length]='<a:font script="Thai" typeface="Tahoma"/>',o[o.length]='<a:font script="Ethi" typeface="Nyala"/>',o[o.length]='<a:font script="Beng" typeface="Vrinda"/>',o[o.length]='<a:font script="Gujr" typeface="Shruti"/>',o[o.length]='<a:font script="Khmr" typeface="DaunPenh"/>',o[o.length]='<a:font script="Knda" typeface="Tunga"/>',o[o.length]='<a:font script="Guru" typeface="Raavi"/>',o[o.length]='<a:font script="Cans" typeface="Euphemia"/>',o[o.length]='<a:font script="Cher" typeface="Plantagenet Cherokee"/>',o[o.length]='<a:font script="Yiii" typeface="Microsoft Yi Baiti"/>',o[o.length]='<a:font script="Tibt" typeface="Microsoft Himalaya"/>',o[o.length]='<a:font script="Thaa" typeface="MV Boli"/>',o[o.length]='<a:font script="Deva" typeface="Mangal"/>',o[o.length]='<a:font script="Telu" typeface="Gautami"/>',o[o.length]='<a:font script="Taml" typeface="Latha"/>',o[o.length]='<a:font script="Syrc" typeface="Estrangelo Edessa"/>',o[o.length]='<a:font script="Orya" typeface="Kalinga"/>',o[o.length]='<a:font script="Mlym" typeface="Kartika"/>',o[o.length]='<a:font script="Laoo" typeface="DokChampa"/>',o[o.length]='<a:font script="Sinh" typeface="Iskoola Pota"/>',o[o.length]='<a:font script="Mong" typeface="Mongolian Baiti"/>',o[o.length]='<a:font script="Viet" typeface="Arial"/>',o[o.length]='<a:font script="Uigh" typeface="Microsoft Uighur"/>',o[o.length]='<a:font script="Geor" typeface="Sylfaen"/>',o[o.length]="</a:minorFont>",o[o.length]="</a:fontScheme>",o[o.length]='<a:fmtScheme name="Office">',o[o.length]="<a:fillStyleLst>",o[o.length]='<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>',o[o.length]='<a:gradFill rotWithShape="1">',o[o.length]="<a:gsLst>",o[o.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="50000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',o[o.length]='<a:gs pos="35000"><a:schemeClr val="phClr"><a:tint val="37000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',o[o.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="15000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',o[o.length]="</a:gsLst>",o[o.length]='<a:lin ang="16200000" scaled="1"/>',o[o.length]="</a:gradFill>",o[o.length]='<a:gradFill rotWithShape="1">',o[o.length]="<a:gsLst>",o[o.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="100000"/><a:shade val="100000"/><a:satMod val="130000"/></a:schemeClr></a:gs>',o[o.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:tint val="50000"/><a:shade val="100000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',o[o.length]="</a:gsLst>",o[o.length]='<a:lin ang="16200000" scaled="0"/>',o[o.length]="</a:gradFill>",o[o.length]="</a:fillStyleLst>",o[o.length]="<a:lnStyleLst>",o[o.length]='<a:ln w="9525" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"><a:shade val="95000"/><a:satMod val="105000"/></a:schemeClr></a:solidFill><a:prstDash val="solid"/></a:ln>',o[o.length]='<a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln>',o[o.length]='<a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"><a:solidFill><a:schemeClr val="phClr"/></a:solidFill><a:prstDash val="solid"/></a:ln>',o[o.length]="</a:lnStyleLst>",o[o.length]="<a:effectStyleLst>",o[o.length]="<a:effectStyle>",o[o.length]="<a:effectLst>",o[o.length]='<a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="38000"/></a:srgbClr></a:outerShdw>',o[o.length]="</a:effectLst>",o[o.length]="</a:effectStyle>",o[o.length]="<a:effectStyle>",o[o.length]="<a:effectLst>",o[o.length]='<a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw>',o[o.length]="</a:effectLst>",o[o.length]="</a:effectStyle>",o[o.length]="<a:effectStyle>",o[o.length]="<a:effectLst>",o[o.length]='<a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"><a:srgbClr val="000000"><a:alpha val="35000"/></a:srgbClr></a:outerShdw>',o[o.length]="</a:effectLst>",o[o.length]='<a:scene3d><a:camera prst="orthographicFront"><a:rot lat="0" lon="0" rev="0"/></a:camera><a:lightRig rig="threePt" dir="t"><a:rot lat="0" lon="0" rev="1200000"/></a:lightRig></a:scene3d>',o[o.length]='<a:sp3d><a:bevelT w="63500" h="25400"/></a:sp3d>',o[o.length]="</a:effectStyle>",o[o.length]="</a:effectStyleLst>",o[o.length]="<a:bgFillStyleLst>",o[o.length]='<a:solidFill><a:schemeClr val="phClr"/></a:solidFill>',o[o.length]='<a:gradFill rotWithShape="1">',o[o.length]="<a:gsLst>",o[o.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="40000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',o[o.length]='<a:gs pos="40000"><a:schemeClr val="phClr"><a:tint val="45000"/><a:shade val="99000"/><a:satMod val="350000"/></a:schemeClr></a:gs>',o[o.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="20000"/><a:satMod val="255000"/></a:schemeClr></a:gs>',o[o.length]="</a:gsLst>",o[o.length]='<a:path path="circle"><a:fillToRect l="50000" t="-80000" r="50000" b="180000"/></a:path>',o[o.length]="</a:gradFill>",o[o.length]='<a:gradFill rotWithShape="1">',o[o.length]="<a:gsLst>",o[o.length]='<a:gs pos="0"><a:schemeClr val="phClr"><a:tint val="80000"/><a:satMod val="300000"/></a:schemeClr></a:gs>',o[o.length]='<a:gs pos="100000"><a:schemeClr val="phClr"><a:shade val="30000"/><a:satMod val="200000"/></a:schemeClr></a:gs>',o[o.length]="</a:gsLst>",o[o.length]='<a:path path="circle"><a:fillToRect l="50000" t="50000" r="50000" b="50000"/></a:path>',o[o.length]="</a:gradFill>",o[o.length]="</a:bgFillStyleLst>",o[o.length]="</a:fmtScheme>",o[o.length]="</a:themeElements>",o[o.length]="<a:objectDefaults>",o[o.length]="<a:spDef>",o[o.length]='<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="1"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="3"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="2"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="lt1"/></a:fontRef></a:style>',o[o.length]="</a:spDef>",o[o.length]="<a:lnDef>",o[o.length]='<a:spPr/><a:bodyPr/><a:lstStyle/><a:style><a:lnRef idx="2"><a:schemeClr val="accent1"/></a:lnRef><a:fillRef idx="0"><a:schemeClr val="accent1"/></a:fillRef><a:effectRef idx="1"><a:schemeClr val="accent1"/></a:effectRef><a:fontRef idx="minor"><a:schemeClr val="tx1"/></a:fontRef></a:style>',o[o.length]="</a:lnDef>",o[o.length]="</a:objectDefaults>",o[o.length]="<a:extraClrSchemeLst/>",o[o.length]="</a:theme>",o.join("")}function parse_Theme(blob,length,opts){var end=blob.l+length,dwThemeVersion=blob.read_shift(4);if(dwThemeVersion!==124226){if(!opts.cellStyles){blob.l=end;return}var data=blob.slice(blob.l);blob.l=end;var zip;try{zip=zip_read(data,{type:"array"})}catch{return}var themeXML=getzipstr(zip,"theme/theme/theme1.xml",!0);if(themeXML)return parse_theme_xml(themeXML,opts)}}function parse_ColorTheme(blob){return blob.read_shift(4)}function parse_FullColorExt(blob){var o={};switch(o.xclrType=blob.read_shift(2),o.nTintShade=blob.read_shift(2),o.xclrType){case 0:blob.l+=4;break;case 1:o.xclrValue=parse_IcvXF(blob,4);break;case 2:o.xclrValue=parse_LongRGBA(blob,4);break;case 3:o.xclrValue=parse_ColorTheme(blob,4);break;case 4:blob.l+=4;break}return blob.l+=8,o}function parse_IcvXF(blob,length){return parsenoop(blob,length)}function parse_XFExtGradient(blob,length){return parsenoop(blob,length)}function parse_ExtProp(blob){var extType=blob.read_shift(2),cb=blob.read_shift(2)-4,o=[extType];switch(extType){case 4:case 5:case 7:case 8:case 9:case 10:case 11:case 13:o[1]=parse_FullColorExt(blob,cb);break;case 6:o[1]=parse_XFExtGradient(blob,cb);break;case 14:case 15:o[1]=blob.read_shift(cb===1?1:2);break;default:throw new Error("Unrecognized ExtProp type: "+extType+" "+cb)}return o}function parse_XFExt(blob,length){var end=blob.l+length;blob.l+=2;var ixfe=blob.read_shift(2);blob.l+=2;for(var cexts=blob.read_shift(2),ext=[];cexts-- >0;)ext.push(parse_ExtProp(blob,end-blob.l));return{ixfe,ext}}function update_xfext(xf,xfext){xfext.forEach(function(xfe){switch(xfe[0]){case 4:break;case 5:break;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:break;case 13:break;case 14:break;case 15:break}})}function parse_BrtMdtinfo(data,length){return{flags:data.read_shift(4),version:data.read_shift(4),name:parse_XLWideString(data,length-8)}}function write_BrtMdtinfo(data){var o=new_buf(12+2*data.name.length);return o.write_shift(4,data.flags),o.write_shift(4,data.version),write_XLWideString(data.name,o),o.slice(0,o.l)}function parse_BrtMdb(data){for(var out=[],cnt=data.read_shift(4);cnt-- >0;)out.push([data.read_shift(4),data.read_shift(4)]);return out}function write_BrtMdb(mdb){var o=new_buf(4+8*mdb.length);o.write_shift(4,mdb.length);for(var i=0;i<mdb.length;++i)o.write_shift(4,mdb[i][0]),o.write_shift(4,mdb[i][1]);return o}function write_BrtBeginEsfmd(cnt,name){var o=new_buf(8+2*name.length);return o.write_shift(4,cnt),write_XLWideString(name,o),o.slice(0,o.l)}function parse_BrtBeginEsmdb(data){return data.l+=4,data.read_shift(4)!=0}function write_BrtBeginEsmdb(cnt,cm){var o=new_buf(8);return o.write_shift(4,cnt),o.write_shift(4,cm?1:0),o}function parse_xlmeta_bin(data,name,_opts){var out={Types:[],Cell:[],Value:[]},opts=_opts||{},state=[],pass=!1,metatype=2;return recordhopper(data,function(val2,R,RT){switch(RT){case 335:out.Types.push({name:val2.name});break;case 51:val2.forEach(function(r){metatype==1?out.Cell.push({type:out.Types[r[0]-1].name,index:r[1]}):metatype==0&&out.Value.push({type:out.Types[r[0]-1].name,index:r[1]})});break;case 337:metatype=val2?1:0;break;case 338:metatype=2;break;case 35:state.push(RT),pass=!0;break;case 36:state.pop(),pass=!1;break;default:if(!R.T){if(!pass||opts.WTF&&state[state.length-1]!=35)throw new Error("Unexpected record 0x"+RT.toString(16))}}}),out}function write_xlmeta_bin(){var ba=buf_array();return write_record(ba,332),write_record(ba,334,write_UInt32LE(1)),write_record(ba,335,write_BrtMdtinfo({name:"XLDAPR",version:12e4,flags:3496657072})),write_record(ba,336),write_record(ba,339,write_BrtBeginEsfmd(1,"XLDAPR")),write_record(ba,52),write_record(ba,35,write_UInt32LE(514)),write_record(ba,4096,write_UInt32LE(0)),write_record(ba,4097,writeuint16(1)),write_record(ba,36),write_record(ba,53),write_record(ba,340),write_record(ba,337,write_BrtBeginEsmdb(1,!0)),write_record(ba,51,write_BrtMdb([[1,0]])),write_record(ba,338),write_record(ba,333),ba.end()}function parse_xlmeta_xml(data,name,opts){var out={Types:[],Cell:[],Value:[]};if(!data)return out;var pass=!1,metatype=2,lastmeta;return data.replace(tagregex,function(x){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<?xml":break;case"<metadata":case"</metadata>":break;case"<metadataTypes":case"</metadataTypes>":break;case"<metadataType":out.Types.push({name:y.name});break;case"</metadataType>":break;case"<futureMetadata":for(var j=0;j<out.Types.length;++j)out.Types[j].name==y.name&&(lastmeta=out.Types[j]);break;case"</futureMetadata>":break;case"<bk>":break;case"</bk>":break;case"<rc":metatype==1?out.Cell.push({type:out.Types[y.t-1].name,index:+y.v}):metatype==0&&out.Value.push({type:out.Types[y.t-1].name,index:+y.v});break;case"</rc>":break;case"<cellMetadata":metatype=1;break;case"</cellMetadata>":metatype=2;break;case"<valueMetadata":metatype=0;break;case"</valueMetadata>":metatype=2;break;case"<extLst":case"<extLst>":case"</extLst>":case"<extLst/>":break;case"<ext":pass=!0;break;case"</ext>":pass=!1;break;case"<rvb":if(!lastmeta)break;lastmeta.offsets||(lastmeta.offsets=[]),lastmeta.offsets.push(+y.i);break;default:if(!pass&&opts?.WTF)throw new Error("unrecognized "+y[0]+" in metadata")}return x}),out}function write_xlmeta_xml(){var o=[XML_HEADER];return o.push(`<metadata xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:xlrd="http://schemas.microsoft.com/office/spreadsheetml/2017/richdata" xmlns:xda="http://schemas.microsoft.com/office/spreadsheetml/2017/dynamicarray">
|
|
13
|
-
<metadataTypes count="1">
|
|
14
|
-
<metadataType name="XLDAPR" minSupportedVersion="120000" copy="1" pasteAll="1" pasteValues="1" merge="1" splitFirst="1" rowColShift="1" clearFormats="1" clearComments="1" assign="1" coerce="1" cellMeta="1"/>
|
|
15
|
-
</metadataTypes>
|
|
16
|
-
<futureMetadata name="XLDAPR" count="1">
|
|
17
|
-
<bk>
|
|
18
|
-
<extLst>
|
|
19
|
-
<ext uri="{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}">
|
|
20
|
-
<xda:dynamicArrayProperties fDynamic="1" fCollapsed="0"/>
|
|
21
|
-
</ext>
|
|
22
|
-
</extLst>
|
|
23
|
-
</bk>
|
|
24
|
-
</futureMetadata>
|
|
25
|
-
<cellMetadata count="1">
|
|
26
|
-
<bk>
|
|
27
|
-
<rc t="1" v="0"/>
|
|
28
|
-
</bk>
|
|
29
|
-
</cellMetadata>
|
|
30
|
-
</metadata>`),o.join("")}function parse_cc_xml(data){var d=[];if(!data)return d;var i=1;return(data.match(tagregex)||[]).forEach(function(x){var y=parsexmltag(x);switch(y[0]){case"<?xml":break;case"<calcChain":case"<calcChain>":case"</calcChain>":break;case"<c":delete y[0],y.i?i=y.i:y.i=i,d.push(y);break}}),d}function parse_BrtCalcChainItem$(data){var out={};out.i=data.read_shift(4);var cell2={};cell2.r=data.read_shift(4),cell2.c=data.read_shift(4),out.r=encode_cell(cell2);var flags=data.read_shift(1);return flags&2&&(out.l="1"),flags&8&&(out.a="1"),out}function parse_cc_bin(data,name,opts){var out=[],pass=!1;return recordhopper(data,function(val2,R,RT){switch(RT){case 63:out.push(val2);break;default:if(!R.T){if(!pass||opts.WTF)throw new Error("Unexpected record 0x"+RT.toString(16))}}}),out}function parse_xlink_bin(data,rel,name,_opts){if(!data)return data;var opts=_opts||{},pass=!1,end=!1;recordhopper(data,function(val2,R,RT){if(!end)switch(RT){case 359:case 363:case 364:case 366:case 367:case 368:case 369:case 370:case 371:case 472:case 577:case 578:case 579:case 580:case 581:case 582:case 583:case 584:case 585:case 586:case 587:break;case 35:pass=!0;break;case 36:pass=!1;break;default:if(!R.T){if(!pass||opts.WTF)throw new Error("Unexpected record 0x"+RT.toString(16))}}},opts)}function parse_drawing(data,rels){if(!data)return"??";var id=(data.match(/<c:chart [^<>]*r:id="([^<>"]*)"/)||["",""])[1];return rels["!id"][id].Target}function parse_vml(data,sheet,comments){var cidx=0;(str_match_xml_ns_g(data,"shape")||[]).forEach(function(m){var type="",hidden=!0,aidx=-1,R=-1,C=-1;if(m.replace(tagregex,function(x,idx){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<ClientData":y.ObjectType&&(type=y.ObjectType);break;case"<Visible":case"<Visible/>":hidden=!1;break;case"<Row":case"<Row>":aidx=idx+x.length;break;case"</Row>":R=+m.slice(aidx,idx).trim();break;case"<Column":case"<Column>":aidx=idx+x.length;break;case"</Column>":C=+m.slice(aidx,idx).trim();break}return""}),type==="Note"){var cell2=ws_get_cell_stub(sheet,R>=0&&C>=0?encode_cell({r:R,c:C}):comments[cidx].ref);cell2.c&&(cell2.c.hidden=hidden),++cidx}})}function write_vml(rId,comments,ws){var csize=[21600,21600],bbox=["m0,0l0",csize[1],csize[0],csize[1],csize[0],"0xe"].join(","),o=[writextag("xml",null,{"xmlns:v":XLMLNS.v,"xmlns:o":XLMLNS.o,"xmlns:x":XLMLNS.x,"xmlns:mv":XLMLNS.mv}).replace(/\/>/,">"),writextag("o:shapelayout",writextag("o:idmap",null,{"v:ext":"edit",data:rId}),{"v:ext":"edit"})],_shapeid=65536*rId,_comments=comments||[];return _comments.length>0&&o.push(writextag("v:shapetype",[writextag("v:stroke",null,{joinstyle:"miter"}),writextag("v:path",null,{gradientshapeok:"t","o:connecttype":"rect"})].join(""),{id:"_x0000_t202",coordsize:csize.join(","),"o:spt":202,path:bbox})),_comments.forEach(function(x){++_shapeid,o.push(write_vml_comment(x,_shapeid))}),o.push("</xml>"),o.join("")}function write_vml_comment(x,_shapeid,ws){var c=decode_cell(x[0]),fillopts={color2:"#BEFF82",type:"gradient"};fillopts.type=="gradient"&&(fillopts.angle="-180");var fillparm=fillopts.type=="gradient"?writextag("o:fill",null,{type:"gradientUnscaled","v:ext":"view"}):null,fillxml=writextag("v:fill",fillparm,fillopts),shadata={on:"t",obscured:"t"};return["<v:shape"+wxt_helper({id:"_x0000_s"+_shapeid,type:"#_x0000_t202",style:"position:absolute; margin-left:80pt;margin-top:5pt;width:104pt;height:64pt;z-index:10"+(x[1].hidden?";visibility:hidden":""),fillcolor:"#ECFAD4",strokecolor:"#edeaa1"})+">",fillxml,writextag("v:shadow",null,shadata),writextag("v:path",null,{"o:connecttype":"none"}),'<v:textbox><div style="text-align:left"></div></v:textbox>','<x:ClientData ObjectType="Note">',"<x:MoveWithCells/>","<x:SizeWithCells/>",writetag("x:Anchor",[c.c+1,0,c.r+1,0,c.c+3,20,c.r+5,20].join(",")),writetag("x:AutoFill","False"),writetag("x:Row",String(c.r)),writetag("x:Column",String(c.c)),x[1].hidden?"":"<x:Visible/>","</x:ClientData>","</v:shape>"].join("")}function sheet_insert_comments(sheet,comments,threaded,people){var dense=sheet["!data"]!=null,cell2;comments.forEach(function(comment){var r=decode_cell(comment.ref);if(!(r.r<0||r.c<0)){if(dense?(sheet["!data"][r.r]||(sheet["!data"][r.r]=[]),cell2=sheet["!data"][r.r][r.c]):cell2=sheet[comment.ref],!cell2){cell2={t:"z"},dense?sheet["!data"][r.r][r.c]=cell2:sheet[comment.ref]=cell2;var range=safe_decode_range(sheet["!ref"]||"BDWGO1000001:A1");range.s.r>r.r&&(range.s.r=r.r),range.e.r<r.r&&(range.e.r=r.r),range.s.c>r.c&&(range.s.c=r.c),range.e.c<r.c&&(range.e.c=r.c);var encoded=encode_range(range);sheet["!ref"]=encoded}cell2.c||(cell2.c=[]);var o={a:comment.author,t:comment.t,r:comment.r,T:threaded};comment.h&&(o.h=comment.h);for(var i=cell2.c.length-1;i>=0;--i){if(!threaded&&cell2.c[i].T)return;threaded&&!cell2.c[i].T&&cell2.c.splice(i,1)}if(threaded&&people){for(i=0;i<people.length;++i)if(o.a==people[i].id){o.a=people[i].name||o.a;break}}cell2.c.push(o)}})}function parse_comments_xml(data,opts){if(data.match(/<(?:\w+:)?comments *\/>/))return[];var authors=[],commentList=[],authtag=str_match_xml_ns(data,"authors");authtag&&authtag[1]&&authtag[1].split(/<\/\w*:?author>/).forEach(function(x){if(!(x===""||x.trim()==="")){var a=x.match(/<(?:\w+:)?author[^<>]*>(.*)/);a&&authors.push(a[1])}});var cmnttag=str_match_xml_ns(data,"commentList");return cmnttag&&cmnttag[1]&&cmnttag[1].split(/<\/\w*:?comment>/).forEach(function(x){if(!(x===""||x.trim()==="")){var cm=x.match(/<(?:\w+:)?comment[^<>]*>/);if(cm){var y=parsexmltag(cm[0]),comment={author:y.authorId&&authors[y.authorId]||"sheetjsghost",ref:y.ref,guid:y.guid},cell2=decode_cell(y.ref);if(!(opts.sheetRows&&opts.sheetRows<=cell2.r)){var textMatch=str_match_xml_ns(x,"text"),rt=!!textMatch&&!!textMatch[1]&&parse_si(textMatch[1])||{r:"",t:"",h:""};comment.r=rt.r,rt.r=="<t></t>"&&(rt.t=rt.h=""),comment.t=(rt.t||"").replace(/\r\n/g,`
|
|
31
|
-
`).replace(/\r/g,`
|
|
32
|
-
`),opts.cellHTML&&(comment.h=rt.h),commentList.push(comment)}}}}),commentList}function write_comments_xml(data){var o=[XML_HEADER,writextag("comments",null,{xmlns:XMLNS_main[0]})],iauthor=[];return o.push("<authors>"),data.forEach(function(x){x[1].forEach(function(w){var a=escapexml(w.a);iauthor.indexOf(a)==-1&&(iauthor.push(a),o.push("<author>"+a+"</author>")),w.T&&w.ID&&iauthor.indexOf("tc="+w.ID)==-1&&(iauthor.push("tc="+w.ID),o.push("<author>tc="+w.ID+"</author>"))})}),iauthor.length==0&&(iauthor.push("SheetJ5"),o.push("<author>SheetJ5</author>")),o.push("</authors>"),o.push("<commentList>"),data.forEach(function(d){var lastauthor=0,ts=[],tcnt=0;if(d[1][0]&&d[1][0].T&&d[1][0].ID&&(lastauthor=iauthor.indexOf("tc="+d[1][0].ID)),d[1].forEach(function(c){c.a&&(lastauthor=iauthor.indexOf(escapexml(c.a))),c.T&&++tcnt,ts.push(c.t==null?"":escapexml(c.t))}),tcnt===0)d[1].forEach(function(c){o.push('<comment ref="'+d[0]+'" authorId="'+iauthor.indexOf(escapexml(c.a))+'"><text>'),o.push(writetag("t",c.t==null?"":escapexml(c.t))),o.push("</text></comment>")});else{d[1][0]&&d[1][0].T&&d[1][0].ID&&(lastauthor=iauthor.indexOf("tc="+d[1][0].ID)),o.push('<comment ref="'+d[0]+'" authorId="'+lastauthor+'"><text>');for(var t=`Comment:
|
|
33
|
-
`+ts[0]+`
|
|
34
|
-
`,i=1;i<ts.length;++i)t+=`Reply:
|
|
35
|
-
`+ts[i]+`
|
|
36
|
-
`;o.push(writetag("t",escapexml(t))),o.push("</text></comment>")}}),o.push("</commentList>"),o.length>2&&(o[o.length]="</comments>",o[1]=o[1].replace("/>",">")),o.join("")}function parse_tcmnt_xml(data,opts){var out=[],pass=!1,comment={},tidx=0;return data.replace(tagregex,function(x,idx){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<?xml":break;case"<ThreadedComments":break;case"</ThreadedComments>":break;case"<threadedComment":comment={author:y.personId,guid:y.id,ref:y.ref,T:1};break;case"</threadedComment>":comment.t!=null&&out.push(comment);break;case"<text>":case"<text":tidx=idx+x.length;break;case"</text>":comment.t=data.slice(tidx,idx).replace(/\r\n/g,`
|
|
37
|
-
`).replace(/\r/g,`
|
|
38
|
-
`);break;case"<mentions":case"<mentions>":pass=!0;break;case"</mentions>":pass=!1;break;case"<extLst":case"<extLst>":case"</extLst>":case"<extLst/>":break;case"<ext":pass=!0;break;case"</ext>":pass=!1;break;default:if(!pass&&opts.WTF)throw new Error("unrecognized "+y[0]+" in threaded comments")}return x}),out}function write_tcmnt_xml(comments,people,opts){var o=[XML_HEADER,writextag("ThreadedComments",null,{xmlns:XMLNS.TCMNT}).replace(/[\/]>/,">")];return comments.forEach(function(carr){var rootid="";(carr[1]||[]).forEach(function(c,idx){if(!c.T){delete c.ID;return}c.a&&people.indexOf(c.a)==-1&&people.push(c.a);var tcopts={ref:carr[0],id:"{54EE7951-7262-4200-6969-"+("000000000000"+opts.tcid++).slice(-12)+"}"};idx==0?rootid=tcopts.id:tcopts.parentId=rootid,c.ID=tcopts.id,c.a&&(tcopts.personId="{54EE7950-7262-4200-6969-"+("000000000000"+people.indexOf(c.a)).slice(-12)+"}"),o.push(writextag("threadedComment",writetag("text",c.t||""),tcopts))})}),o.push("</ThreadedComments>"),o.join("")}function parse_people_xml(data,opts){var out=[],pass=!1;return data.replace(tagregex,function(x){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<?xml":break;case"<personList":break;case"</personList>":break;case"<person":out.push({name:y.displayname,id:y.id});break;case"</person>":break;case"<extLst":case"<extLst>":case"</extLst>":case"<extLst/>":break;case"<ext":pass=!0;break;case"</ext>":pass=!1;break;default:if(!pass&&opts.WTF)throw new Error("unrecognized "+y[0]+" in threaded comments")}return x}),out}function write_people_xml(people){var o=[XML_HEADER,writextag("personList",null,{xmlns:XMLNS.TCMNT,"xmlns:x":XMLNS_main[0]}).replace(/[\/]>/,">")];return people.forEach(function(person,idx){o.push(writextag("person",null,{displayName:person,id:"{54EE7950-7262-4200-6969-"+("000000000000"+idx).slice(-12)+"}",userId:person,providerId:"None"}))}),o.push("</personList>"),o.join("")}function parse_BrtBeginComment(data){var out={};out.iauthor=data.read_shift(4);var rfx=parse_UncheckedRfX(data,16);return out.rfx=rfx.s,out.ref=encode_cell(rfx.s),data.l+=16,out}function write_BrtBeginComment(data,o){return o==null&&(o=new_buf(36)),o.write_shift(4,data[1].iauthor),write_UncheckedRfX(data[0],o),o.write_shift(4,0),o.write_shift(4,0),o.write_shift(4,0),o.write_shift(4,0),o}function write_BrtCommentAuthor(data){return write_XLWideString(data.slice(0,54))}function parse_comments_bin(data,opts){var out=[],authors=[],c={},pass=!1;return recordhopper(data,function(val2,R,RT){switch(RT){case 632:authors.push(val2);break;case 635:c=val2;break;case 637:c.t=val2.t,c.h=val2.h,c.r=val2.r;break;case 636:if(c.author=authors[c.iauthor],delete c.iauthor,opts.sheetRows&&c.rfx&&opts.sheetRows<=c.rfx.r)break;c.t||(c.t=""),delete c.rfx,out.push(c);break;case 3072:break;case 35:pass=!0;break;case 36:pass=!1;break;case 37:break;case 38:break;default:if(!R.T){if(!pass||opts.WTF)throw new Error("Unexpected record 0x"+RT.toString(16))}}}),out}function write_comments_bin(data){var ba=buf_array(),iauthor=[];return write_record(ba,628),write_record(ba,630),data.forEach(function(comment){comment[1].forEach(function(c){iauthor.indexOf(c.a)>-1||(iauthor.push(c.a.slice(0,54)),write_record(ba,632,write_BrtCommentAuthor(c.a)),c.T&&c.ID&&iauthor.indexOf("tc="+c.ID)==-1&&(iauthor.push("tc="+c.ID),write_record(ba,632,write_BrtCommentAuthor("tc="+c.ID))))})}),write_record(ba,631),write_record(ba,633),data.forEach(function(comment){comment[1].forEach(function(c){var _ia=-1;c.ID&&(_ia=iauthor.indexOf("tc="+c.ID)),_ia==-1&&comment[1][0].T&&comment[1][0].ID&&(_ia=iauthor.indexOf("tc="+comment[1][0].ID)),_ia==-1&&(_ia=iauthor.indexOf(c.a)),c.iauthor=_ia;var range={s:decode_cell(comment[0]),e:decode_cell(comment[0])};write_record(ba,635,write_BrtBeginComment([range,c])),c.t&&c.t.length>0&&write_record(ba,637,write_BrtCommentText(c)),write_record(ba,636),delete c.iauthor})}),write_record(ba,634),write_record(ba,629),ba.end()}function make_vba_xls(cfb){var newcfb=CFB.utils.cfb_new({root:"R"});return cfb.FullPaths.forEach(function(p,i){if(!(p.slice(-1)==="/"||!p.match(/_VBA_PROJECT_CUR/))){var newpath=p.replace(/^[^\/]*/,"R").replace(/\/_VBA_PROJECT_CUR\u0000*/,"");CFB.utils.cfb_add(newcfb,newpath,cfb.FileIndex[i].content)}}),CFB.write(newcfb)}function fill_vba_xls(cfb,vba){vba.FullPaths.forEach(function(p,i){if(i!=0){var newpath=p.replace(/^[\/]*[^\/]*[\/]/,"/_VBA_PROJECT_CUR/");newpath.slice(-1)!=="/"&&CFB.utils.cfb_add(cfb,newpath,vba.FileIndex[i].content)}})}function parse_ds_bin(){return{"!type":"dialog"}}function parse_ds_xml(){return{"!type":"dialog"}}function parse_ms_bin(){return{"!type":"macro"}}function parse_ms_xml(){return{"!type":"macro"}}function shift_formula_str(f,delta){return f.replace(crefregex,function($0,$1,$2,$3,$4,$5){return $1+($2=="$"?$2+$3:encode_col(decode_col($3)+delta.c))+($4=="$"?$4+$5:encode_row(decode_row($5)+delta.r))})}function shift_formula_xlsx(f,range,cell2){var r=decode_range(range),s=r.s,c=decode_cell(cell2),delta={r:c.r-s.r,c:c.c-s.c};return shift_formula_str(f,delta)}function fuzzyfmla(f){return f.length!=1}function _xlfn(f){return f.replace(/_xlfn\./g,"")}function parseread1(blob){blob.l+=1}function parse_ColRelU(blob,length){var c=blob.read_shift(length==1?1:2);return[c&16383,c>>14&1,c>>15&1]}function parse_RgceArea(blob,length,opts){var w=2;if(opts){if(opts.biff>=2&&opts.biff<=5)return parse_RgceArea_BIFF2(blob,length,opts);opts.biff==12&&(w=4)}var r=blob.read_shift(w),R=blob.read_shift(w),c=parse_ColRelU(blob,2),C=parse_ColRelU(blob,2);return{s:{r,c:c[0],cRel:c[1],rRel:c[2]},e:{r:R,c:C[0],cRel:C[1],rRel:C[2]}}}function parse_RgceArea_BIFF2(blob){var r=parse_ColRelU(blob,2),R=parse_ColRelU(blob,2),c=blob.read_shift(1),C=blob.read_shift(1);return{s:{r:r[0],c,cRel:r[1],rRel:r[2]},e:{r:R[0],c:C,cRel:R[1],rRel:R[2]}}}function parse_RgceAreaRel(blob,length,opts){if(opts.biff<8)return parse_RgceArea_BIFF2(blob,length,opts);var r=blob.read_shift(opts.biff==12?4:2),R=blob.read_shift(opts.biff==12?4:2),c=parse_ColRelU(blob,2),C=parse_ColRelU(blob,2);return{s:{r,c:c[0],cRel:c[1],rRel:c[2]},e:{r:R,c:C[0],cRel:C[1],rRel:C[2]}}}function parse_RgceLoc(blob,length,opts){if(opts&&opts.biff>=2&&opts.biff<=5)return parse_RgceLoc_BIFF2(blob,length,opts);var r=blob.read_shift(opts&&opts.biff==12?4:2),c=parse_ColRelU(blob,2);return{r,c:c[0],cRel:c[1],rRel:c[2]}}function parse_RgceLoc_BIFF2(blob){var r=parse_ColRelU(blob,2),c=blob.read_shift(1);return{r:r[0],c,cRel:r[1],rRel:r[2]}}function parse_RgceElfLoc(blob){var r=blob.read_shift(2),c=blob.read_shift(2);return{r,c:c&255,fQuoted:!!(c&16384),cRel:c>>15,rRel:c>>15}}function parse_RgceLocRel(blob,length,opts){var biff=opts&&opts.biff?opts.biff:8;if(biff>=2&&biff<=5)return parse_RgceLocRel_BIFF2(blob,length,opts);var r=blob.read_shift(biff>=12?4:2),cl=blob.read_shift(2),cRel=(cl&16384)>>14,rRel=(cl&32768)>>15;if(cl&=16383,rRel==1)for(;r>524287;)r-=1048576;if(cRel==1)for(;cl>8191;)cl=cl-16384;return{r,c:cl,cRel,rRel}}function parse_RgceLocRel_BIFF2(blob){var rl=blob.read_shift(2),c=blob.read_shift(1),rRel=(rl&32768)>>15,cRel=(rl&16384)>>14;return rl&=16383,rRel==1&&rl>=8192&&(rl=rl-16384),cRel==1&&c>=128&&(c=c-256),{r:rl,c,cRel,rRel}}function parse_PtgArea(blob,length,opts){var type=(blob[blob.l++]&96)>>5,area=parse_RgceArea(blob,opts.biff>=2&&opts.biff<=5?6:8,opts);return[type,area]}function parse_PtgArea3d(blob,length,opts){var type=(blob[blob.l++]&96)>>5,ixti=blob.read_shift(2,"i"),w=8;if(opts)switch(opts.biff){case 5:blob.l+=12,w=6;break;case 12:w=12;break}var area=parse_RgceArea(blob,w,opts);return[type,ixti,area]}function parse_PtgAreaErr(blob,length,opts){var type=(blob[blob.l++]&96)>>5;return blob.l+=opts&&opts.biff>8?12:opts.biff<8?6:8,[type]}function parse_PtgAreaErr3d(blob,length,opts){var type=(blob[blob.l++]&96)>>5,ixti=blob.read_shift(2),w=8;if(opts)switch(opts.biff){case 5:blob.l+=12,w=6;break;case 12:w=12;break}return blob.l+=w,[type,ixti]}function parse_PtgAreaN(blob,length,opts){var type=(blob[blob.l++]&96)>>5,area=parse_RgceAreaRel(blob,length-1,opts);return[type,area]}function parse_PtgArray(blob,length,opts){var type=(blob[blob.l++]&96)>>5;return blob.l+=opts.biff==2?6:opts.biff==12?14:7,[type]}function parse_PtgAttrBaxcel(blob){var bitSemi=blob[blob.l+1]&1,bitBaxcel=1;return blob.l+=4,[bitSemi,bitBaxcel]}function parse_PtgAttrChoose(blob,length,opts){blob.l+=2;for(var offset=blob.read_shift(opts&&opts.biff==2?1:2),o=[],i=0;i<=offset;++i)o.push(blob.read_shift(opts&&opts.biff==2?1:2));return o}function parse_PtgAttrGoto(blob,length,opts){var bitGoto=blob[blob.l+1]&255?1:0;return blob.l+=2,[bitGoto,blob.read_shift(opts&&opts.biff==2?1:2)]}function parse_PtgAttrIf(blob,length,opts){var bitIf=blob[blob.l+1]&255?1:0;return blob.l+=2,[bitIf,blob.read_shift(opts&&opts.biff==2?1:2)]}function parse_PtgAttrIfError(blob){var bitIf=blob[blob.l+1]&255?1:0;return blob.l+=2,[bitIf,blob.read_shift(2)]}function parse_PtgAttrSemi(blob,length,opts){var bitSemi=blob[blob.l+1]&255?1:0;return blob.l+=opts&&opts.biff==2?3:4,[bitSemi]}function parse_PtgAttrSpaceType(blob){var type=blob.read_shift(1),cch=blob.read_shift(1);return[type,cch]}function parse_PtgAttrSpace(blob){return blob.read_shift(2),parse_PtgAttrSpaceType(blob,2)}function parse_PtgAttrSpaceSemi(blob){return blob.read_shift(2),parse_PtgAttrSpaceType(blob,2)}function parse_PtgRef(blob,length,opts){var type=(blob[blob.l]&96)>>5;blob.l+=1;var loc=parse_RgceLoc(blob,0,opts);return[type,loc]}function parse_PtgRefN(blob,length,opts){var type=(blob[blob.l]&96)>>5;blob.l+=1;var loc=parse_RgceLocRel(blob,0,opts);return[type,loc]}function parse_PtgRef3d(blob,length,opts){var type=(blob[blob.l]&96)>>5;blob.l+=1;var ixti=blob.read_shift(2);opts&&opts.biff==5&&(blob.l+=12);var loc=parse_RgceLoc(blob,0,opts);return[type,ixti,loc]}function parse_PtgFunc(blob,length,opts){var type=(blob[blob.l]&96)>>5;blob.l+=1;var iftab=blob.read_shift(opts&&opts.biff<=3?1:2);return[FtabArgc[iftab],Ftab[iftab],type]}function parse_PtgFuncVar(blob,length,opts){var type=blob[blob.l++],cparams=blob.read_shift(1),tab=opts&&opts.biff<=3?[type==88?-1:0,blob.read_shift(1)]:parsetab(blob);return[cparams,(tab[0]===0?Ftab:Cetab)[tab[1]]]}function parsetab(blob){return[blob[blob.l+1]>>7,blob.read_shift(2)&32767]}function parse_PtgAttrSum(blob,length,opts){blob.l+=opts&&opts.biff==2?3:4}function parse_PtgExp(blob,length,opts){if(blob.l++,opts&&opts.biff==12)return[blob.read_shift(4,"i"),0];var row=blob.read_shift(2),col=blob.read_shift(opts&&opts.biff==2?1:2);return[row,col]}function parse_PtgErr(blob){return blob.l++,BErr[blob.read_shift(1)]}function parse_PtgInt(blob){return blob.l++,blob.read_shift(2)}function parse_PtgBool(blob){return blob.l++,blob.read_shift(1)!==0}function parse_PtgNum(blob){return blob.l++,parse_Xnum(blob,8)}function parse_PtgStr(blob,length,opts){return blob.l++,parse_ShortXLUnicodeString(blob,length-1,opts)}function parse_SerAr(blob,biff){var val2=[blob.read_shift(1)];if(biff==12)switch(val2[0]){case 2:val2[0]=4;break;case 4:val2[0]=16;break;case 0:val2[0]=1;break;case 1:val2[0]=2;break}switch(val2[0]){case 4:val2[1]=parsebool(blob,1)?"TRUE":"FALSE",biff!=12&&(blob.l+=7);break;case 37:case 16:val2[1]=BErr[blob[blob.l]],blob.l+=biff==12?4:8;break;case 0:blob.l+=8;break;case 1:val2[1]=parse_Xnum(blob,8);break;case 2:val2[1]=parse_XLUnicodeString2(blob,0,{biff:biff>0&&biff<8?2:biff});break;default:throw new Error("Bad SerAr: "+val2[0])}return val2}function parse_PtgExtraMem(blob,cce,opts){for(var count=blob.read_shift(opts.biff==12?4:2),out=[],i=0;i!=count;++i)out.push((opts.biff==12?parse_UncheckedRfX:parse_Ref8U)(blob,8));return out}function parse_PtgExtraArray(blob,length,opts){var rows=0,cols=0;opts.biff==12?(rows=blob.read_shift(4),cols=blob.read_shift(4)):(cols=1+blob.read_shift(1),rows=1+blob.read_shift(2)),opts.biff>=2&&opts.biff<8&&(--rows,--cols==0&&(cols=256));for(var i=0,o=[];i!=rows&&(o[i]=[]);++i)for(var j=0;j!=cols;++j)o[i][j]=parse_SerAr(blob,opts.biff);return o}function parse_PtgName(blob,length,opts){var type=blob.read_shift(1)>>>5&3,w=!opts||opts.biff>=8?4:2,nameindex=blob.read_shift(w);switch(opts.biff){case 2:blob.l+=5;break;case 3:case 4:blob.l+=8;break;case 5:blob.l+=12;break}return[type,0,nameindex]}function parse_PtgNameX(blob,length,opts){if(opts.biff==5)return parse_PtgNameX_BIFF5(blob,length,opts);var type=blob.read_shift(1)>>>5&3,ixti=blob.read_shift(2),nameindex=blob.read_shift(4);return[type,ixti,nameindex]}function parse_PtgNameX_BIFF5(blob){var type=blob.read_shift(1)>>>5&3,ixti=blob.read_shift(2,"i");blob.l+=8;var nameindex=blob.read_shift(2);return blob.l+=12,[type,ixti,nameindex]}function parse_PtgMemArea(blob,length,opts){var type=blob.read_shift(1)>>>5&3;blob.l+=opts&&opts.biff==2?3:4;var cce=blob.read_shift(opts&&opts.biff==2?1:2);return[type,cce]}function parse_PtgMemFunc(blob,length,opts){var type=blob.read_shift(1)>>>5&3,cce=blob.read_shift(opts&&opts.biff==2?1:2);return[type,cce]}function parse_PtgRefErr(blob,length,opts){var type=blob.read_shift(1)>>>5&3;return blob.l+=4,opts.biff<8&&blob.l--,opts.biff==12&&(blob.l+=2),[type]}function parse_PtgRefErr3d(blob,length,opts){var type=(blob[blob.l++]&96)>>5,ixti=blob.read_shift(2),w=4;if(opts)switch(opts.biff){case 5:w=15;break;case 12:w=6;break}return blob.l+=w,[type,ixti]}function parse_PtgElfLoc(blob,length,opts){return blob.l+=2,[parse_RgceElfLoc(blob,4,opts)]}function parse_PtgElfNoop(blob){return blob.l+=6,[]}function parse_PtgElfLel(blob){return blob.l+=2,[parseuint16(blob),blob.read_shift(2)&1]}function parse_PtgList(blob){blob.l+=2;var ixti=blob.read_shift(2),flags=blob.read_shift(2),idx=blob.read_shift(4),c=blob.read_shift(2),C=blob.read_shift(2),rt=PtgListRT[flags>>2&31];return{ixti,coltype:flags&3,rt,idx,c,C}}function parse_PtgSxName(blob){return blob.l+=2,[blob.read_shift(4)]}function parse_PtgSheet(blob,length,opts){return blob.l+=5,blob.l+=2,blob.l+=opts.biff==2?1:4,["PTGSHEET"]}function parse_PtgEndSheet(blob,length,opts){return blob.l+=opts.biff==2?4:5,["PTGENDSHEET"]}function parse_PtgMemAreaN(blob){var type=blob.read_shift(1)>>>5&3,cce=blob.read_shift(2);return[type,cce]}function parse_PtgMemNoMemN(blob){var type=blob.read_shift(1)>>>5&3,cce=blob.read_shift(2);return[type,cce]}function parse_PtgAttrNoop(blob){return blob.l+=4,[0,0]}function parse_RgbExtra(blob,length,rgce,opts){if(opts.biff<8)return parsenoop(blob,length);for(var target=blob.l+length,o=[],i=0;i!==rgce.length;++i)switch(rgce[i][0]){case"PtgArray":rgce[i][1]=parse_PtgExtraArray(blob,0,opts),o.push(rgce[i][1]);break;case"PtgMemArea":rgce[i][2]=parse_PtgExtraMem(blob,rgce[i][1],opts),o.push(rgce[i][2]);break;case"PtgExp":opts&&opts.biff==12&&(rgce[i][1][1]=blob.read_shift(4),o.push(rgce[i][1]));break;case"PtgList":case"PtgElfRadicalS":case"PtgElfColS":case"PtgElfColSV":throw"Unsupported "+rgce[i][0];default:break}return length=target-blob.l,length!==0&&o.push(parsenoop(blob,length)),o}function parse_Rgce(blob,length,opts){for(var target=blob.l+length,R,id,ptgs=[];target!=blob.l;)length=target-blob.l,id=blob[blob.l],R=PtgTypes[id]||PtgTypes[PtgDupes[id]],(id===24||id===25)&&(R=(id===24?Ptg18:Ptg19)[blob[blob.l+1]]),!R||!R.f?parsenoop(blob,length):ptgs.push([R.n,R.f(blob,length,opts)]);return ptgs}function stringify_array(f){for(var o=[],i=0;i<f.length;++i){for(var x=f[i],r=[],j=0;j<x.length;++j){var y=x[j];y?y[0]===2?r.push('"'+y[1].replace(/"/g,'""')+'"'):r.push(y[1]):r.push("")}o.push(r.join(","))}return o.join(";")}function make_3d_range(start,end){var s=start.lastIndexOf("!"),e=end.lastIndexOf("!");return s==-1&&e==-1?start+":"+end:s>0&&e>0&&start.slice(0,s).toLowerCase()==end.slice(0,e).toLowerCase()?start+":"+end.slice(e+1):(console.error("Cannot hydrate range",start,end),start+":"+end)}function get_ixti_raw(supbooks,ixti,opts){if(!supbooks)return"SH33TJSERR0";if(opts.biff>8&&(!supbooks.XTI||!supbooks.XTI[ixti]))return supbooks.SheetNames[ixti];if(!supbooks.XTI)return"SH33TJSERR6";var XTI=supbooks.XTI[ixti];if(opts.biff<8)return ixti>1e4&&(ixti-=65536),ixti<0&&(ixti=-ixti),ixti==0?"":supbooks.XTI[ixti-1];if(!XTI)return"SH33TJSERR1";var o="";if(opts.biff>8)switch(supbooks[XTI[0]][0]){case 357:return o=XTI[1]==-1?"#REF":supbooks.SheetNames[XTI[1]],XTI[1]==XTI[2]?o:o+":"+supbooks.SheetNames[XTI[2]];case 358:return opts.SID!=null?supbooks.SheetNames[opts.SID]:"SH33TJSSAME"+supbooks[XTI[0]][0];default:return"SH33TJSSRC"+supbooks[XTI[0]][0]}switch(supbooks[XTI[0]][0][0]){case 1025:return o=XTI[1]==-1?"#REF":supbooks.SheetNames[XTI[1]]||"SH33TJSERR3",XTI[1]==XTI[2]?o:o+":"+supbooks.SheetNames[XTI[2]];case 14849:return supbooks[XTI[0]].slice(1).map(function(name){return name.Name}).join(";;");default:return supbooks[XTI[0]][0][3]?(o=XTI[1]==-1?"#REF":supbooks[XTI[0]][0][3][XTI[1]]||"SH33TJSERR4",XTI[1]==XTI[2]?o:o+":"+supbooks[XTI[0]][0][3][XTI[2]]):"SH33TJSERR2"}}function get_ixti(supbooks,ixti,opts){var ixtiraw=get_ixti_raw(supbooks,ixti,opts);return ixtiraw=="#REF"?ixtiraw:formula_quote_sheet_name(ixtiraw,opts)}function stringify_formula(formula,range,cell2,supbooks,opts){var biff=opts&&opts.biff||8,_range={s:{c:0,r:0},e:{c:0,r:0}},stack=[],e1,e2,c,ixti=0,nameidx=0,r,sname="";if(!formula[0]||!formula[0][0])return"";for(var last_sp=-1,sp="",ff=0,fflen=formula[0].length;ff<fflen;++ff){var f=formula[0][ff];switch(f[0]){case"PtgUminus":stack.push("-"+stack.pop());break;case"PtgUplus":stack.push("+"+stack.pop());break;case"PtgPercent":stack.push(stack.pop()+"%");break;case"PtgAdd":case"PtgConcat":case"PtgDiv":case"PtgEq":case"PtgGe":case"PtgGt":case"PtgLe":case"PtgLt":case"PtgMul":case"PtgNe":case"PtgPower":case"PtgSub":if(e1=stack.pop(),e2=stack.pop(),last_sp>=0){switch(formula[0][last_sp][1][0]){case 0:sp=fill(" ",formula[0][last_sp][1][1]);break;case 1:sp=fill("\r",formula[0][last_sp][1][1]);break;default:if(sp="",opts.WTF)throw new Error("Unexpected PtgAttrSpaceType "+formula[0][last_sp][1][0])}e2=e2+sp,last_sp=-1}stack.push(e2+PtgBinOp[f[0]]+e1);break;case"PtgIsect":e1=stack.pop(),e2=stack.pop(),stack.push(e2+" "+e1);break;case"PtgUnion":e1=stack.pop(),e2=stack.pop(),stack.push(e2+","+e1);break;case"PtgRange":e1=stack.pop(),e2=stack.pop(),stack.push(make_3d_range(e2,e1));break;case"PtgAttrChoose":break;case"PtgAttrGoto":break;case"PtgAttrIf":break;case"PtgAttrIfError":break;case"PtgRef":c=shift_cell_xls(f[1][1],_range,opts),stack.push(encode_cell_xls(c,biff));break;case"PtgRefN":c=cell2?shift_cell_xls(f[1][1],cell2,opts):f[1][1],stack.push(encode_cell_xls(c,biff));break;case"PtgRef3d":ixti=f[1][1],c=shift_cell_xls(f[1][2],_range,opts),sname=get_ixti(supbooks,ixti,opts);var w=sname;stack.push(sname+"!"+encode_cell_xls(c,biff));break;case"PtgFunc":case"PtgFuncVar":var argc=f[1][0],func=f[1][1];argc||(argc=0),argc&=127;var args=argc==0?[]:stack.slice(-argc);stack.length-=argc,func==="User"&&(func=args.shift()),stack.push(func+"("+args.join(",")+")");break;case"PtgBool":stack.push(f[1]?"TRUE":"FALSE");break;case"PtgInt":stack.push(f[1]);break;case"PtgNum":stack.push(String(f[1]));break;case"PtgStr":stack.push('"'+f[1].replace(/"/g,'""')+'"');break;case"PtgErr":stack.push(f[1]);break;case"PtgAreaN":r=shift_range_xls(f[1][1],cell2?{s:cell2}:_range,opts),stack.push(encode_range_xls(r,opts));break;case"PtgArea":r=shift_range_xls(f[1][1],_range,opts),stack.push(encode_range_xls(r,opts));break;case"PtgArea3d":ixti=f[1][1],r=f[1][2],sname=get_ixti(supbooks,ixti,opts),stack.push(sname+"!"+encode_range_xls(r,opts));break;case"PtgAttrSum":stack.push("SUM("+stack.pop()+")");break;case"PtgAttrBaxcel":case"PtgAttrSemi":break;case"PtgName":nameidx=f[1][2];var lbl=(supbooks.names||[])[nameidx-1]||(supbooks[0]||[])[nameidx],name=lbl?lbl.Name:"SH33TJSNAME"+String(nameidx);name&&name.slice(0,6)=="_xlfn."&&!opts.xlfn&&(name=name.slice(6)),stack.push(name);break;case"PtgNameX":var bookidx=f[1][1];nameidx=f[1][2];var externbook;if(opts.biff<=5)bookidx<0&&(bookidx=-bookidx),supbooks[bookidx]&&(externbook=supbooks[bookidx][nameidx]);else{var o="";if(((supbooks[bookidx]||[])[0]||[])[0]==14849||(((supbooks[bookidx]||[])[0]||[])[0]==1025?supbooks[bookidx][nameidx]&&supbooks[bookidx][nameidx].itab>0&&(o=supbooks.SheetNames[supbooks[bookidx][nameidx].itab-1]+"!"):o=supbooks.SheetNames[nameidx-1]+"!"),supbooks[bookidx]&&supbooks[bookidx][nameidx])o+=supbooks[bookidx][nameidx].Name;else if(supbooks[0]&&supbooks[0][nameidx])o+=supbooks[0][nameidx].Name;else{var ixtidata=(get_ixti_raw(supbooks,bookidx,opts)||"").split(";;");ixtidata[nameidx-1]?o=ixtidata[nameidx-1]:o+="SH33TJSERRX"}stack.push(o);break}externbook||(externbook={Name:"SH33TJSERRY"}),stack.push(externbook.Name);break;case"PtgParen":var lp="(",rp=")";if(last_sp>=0){switch(sp="",formula[0][last_sp][1][0]){case 2:lp=fill(" ",formula[0][last_sp][1][1])+lp;break;case 3:lp=fill("\r",formula[0][last_sp][1][1])+lp;break;case 4:rp=fill(" ",formula[0][last_sp][1][1])+rp;break;case 5:rp=fill("\r",formula[0][last_sp][1][1])+rp;break;default:if(opts.WTF)throw new Error("Unexpected PtgAttrSpaceType "+formula[0][last_sp][1][0])}last_sp=-1}stack.push(lp+stack.pop()+rp);break;case"PtgRefErr":stack.push("#REF!");break;case"PtgRefErr3d":stack.push("#REF!");break;case"PtgExp":c={c:f[1][1],r:f[1][0]};var q={c:cell2.c,r:cell2.r};if(supbooks.sharedf[encode_cell(c)]){var parsedf=supbooks.sharedf[encode_cell(c)];stack.push(stringify_formula(parsedf,_range,q,supbooks,opts))}else{var fnd=!1;for(e1=0;e1!=supbooks.arrayf.length;++e1)if(e2=supbooks.arrayf[e1],!(c.c<e2[0].s.c||c.c>e2[0].e.c)&&!(c.r<e2[0].s.r||c.r>e2[0].e.r)){stack.push(stringify_formula(e2[1],_range,q,supbooks,opts)),fnd=!0;break}fnd||stack.push(f[1])}break;case"PtgArray":stack.push("{"+stringify_array(f[1])+"}");break;case"PtgMemArea":break;case"PtgAttrSpace":case"PtgAttrSpaceSemi":last_sp=ff;break;case"PtgTbl":break;case"PtgMemErr":break;case"PtgMissArg":stack.push("");break;case"PtgAreaErr":stack.push("#REF!");break;case"PtgAreaErr3d":stack.push("#REF!");break;case"PtgList":stack.push("Table"+f[1].idx+"[#"+f[1].rt+"]");break;case"PtgMemAreaN":case"PtgMemNoMemN":case"PtgAttrNoop":case"PtgSheet":case"PtgEndSheet":break;case"PtgMemFunc":break;case"PtgMemNoMem":break;case"PtgElfCol":case"PtgElfColS":case"PtgElfColSV":case"PtgElfColV":case"PtgElfLel":case"PtgElfRadical":case"PtgElfRadicalLel":case"PtgElfRadicalS":case"PtgElfRw":case"PtgElfRwV":throw new Error("Unsupported ELFs");case"PtgSxName":throw new Error("Unrecognized Formula Token: "+String(f));default:throw new Error("Unrecognized Formula Token: "+String(f))}var PtgNonDisp=["PtgAttrSpace","PtgAttrSpaceSemi","PtgAttrGoto"];if(opts.biff!=3&&last_sp>=0&&PtgNonDisp.indexOf(formula[0][ff][0])==-1){f=formula[0][last_sp];var _left=!0;switch(f[1][0]){case 4:_left=!1;case 0:sp=fill(" ",f[1][1]);break;case 5:_left=!1;case 1:sp=fill("\r",f[1][1]);break;default:if(sp="",opts.WTF)throw new Error("Unexpected PtgAttrSpaceType "+f[1][0])}stack.push((_left?sp:"")+stack.pop()+(_left?"":sp)),last_sp=-1}}if(stack.length>1&&opts.WTF)throw new Error("bad formula stack");return stack[0]=="TRUE"?!0:stack[0]=="FALSE"?!1:stack[0]}function parse_ArrayParsedFormula(blob,length,opts){var target=blob.l+length,len=opts.biff==2?1:2,rgcb,cce=blob.read_shift(len);if(cce==65535)return[[],parsenoop(blob,length-2)];var rgce=parse_Rgce(blob,cce,opts);return length!==cce+len&&(rgcb=parse_RgbExtra(blob,length-cce-len,rgce,opts)),blob.l=target,[rgce,rgcb]}function parse_XLSCellParsedFormula(blob,length,opts){var target=blob.l+length,len=opts.biff==2?1:2,rgcb,cce=blob.read_shift(len);if(cce==65535)return[[],parsenoop(blob,length-2)];var rgce=parse_Rgce(blob,cce,opts);return length!==cce+len&&(rgcb=parse_RgbExtra(blob,length-cce-len,rgce,opts)),blob.l=target,[rgce,rgcb]}function parse_NameParsedFormula(blob,length,opts,cce){var target=blob.l+length,rgce=parse_Rgce(blob,cce,opts),rgcb;return target!==blob.l&&(rgcb=parse_RgbExtra(blob,target-blob.l,rgce,opts)),[rgce,rgcb]}function parse_SharedParsedFormula(blob,length,opts){var target=blob.l+length,rgcb,cce=blob.read_shift(2),rgce=parse_Rgce(blob,cce,opts);return cce==65535?[[],parsenoop(blob,length-2)]:(length!==cce+2&&(rgcb=parse_RgbExtra(blob,target-cce-2,rgce,opts)),[rgce,rgcb])}function parse_FormulaValue(blob){var b;if(__readUInt16LE(blob,blob.l+6)!==65535)return[parse_Xnum(blob),"n"];switch(blob[blob.l]){case 0:return blob.l+=8,["String","s"];case 1:return b=blob[blob.l+2]===1,blob.l+=8,[b,"b"];case 2:return b=blob[blob.l+2],blob.l+=8,[b,"e"];case 3:return blob.l+=8,["","s"]}return[]}function write_FormulaValue(value){if(value==null){var o=new_buf(8);return o.write_shift(1,3),o.write_shift(1,0),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,65535),o}else if(typeof value=="number")return write_Xnum(value);return write_Xnum(0)}function parse_Formula(blob,length,opts){var end=blob.l+length,cell2=parse_XLSCell(blob,6,opts),val2=parse_FormulaValue(blob,8),flags=blob.read_shift(1);opts.biff!=2&&(blob.read_shift(1),opts.biff>=5&&blob.read_shift(4));var cbf=parse_XLSCellParsedFormula(blob,end-blob.l,opts);return{cell:cell2,val:val2[0],formula:cbf,shared:flags>>3&1,tt:val2[1]}}function write_Formula(cell2,R,C,opts,os){var o1=write_XLSCell(R,C,os),o2=write_FormulaValue(cell2.v),o3=new_buf(6),flags=33;o3.write_shift(2,flags),o3.write_shift(4,0);for(var bf=new_buf(cell2.bf.length),i=0;i<cell2.bf.length;++i)bf[i]=cell2.bf[i];var out=bconcat([o1,o2,o3,bf]);return out}function parse_XLSBParsedFormula(data,length,opts){var cce=data.read_shift(4),rgce=parse_Rgce(data,cce,opts),cb=data.read_shift(4),rgcb=cb>0?parse_RgbExtra(data,cb,rgce,opts):null;return[rgce,rgcb]}function write_XLSBFormulaNum(val2){if((val2|0)==val2&&val2<Math.pow(2,16)&&val2>=0){var oint=new_buf(11);return oint.write_shift(4,3),oint.write_shift(1,30),oint.write_shift(2,val2),oint.write_shift(4,0),oint}var num=new_buf(17);return num.write_shift(4,11),num.write_shift(1,31),num.write_shift(8,val2),num.write_shift(4,0),num}function write_XLSBFormulaErr(val2){var oint=new_buf(10);return oint.write_shift(4,2),oint.write_shift(1,28),oint.write_shift(1,val2),oint.write_shift(4,0),oint}function write_XLSBFormulaBool(val2){var oint=new_buf(10);return oint.write_shift(4,2),oint.write_shift(1,29),oint.write_shift(1,val2?1:0),oint.write_shift(4,0),oint}function write_XLSBFormulaStr(val2){var preamble=new_buf(7);preamble.write_shift(4,3+2*val2.length),preamble.write_shift(1,23),preamble.write_shift(2,val2.length);var body=new_buf(2*val2.length);body.write_shift(2*val2.length,val2,"utf16le");var postamble=new_buf(4);return postamble.write_shift(4,0),bconcat([preamble,body,postamble])}function write_XLSBFormulaRef(str){var cell2=decode_cell(str),out=new_buf(15);return out.write_shift(4,7),out.write_shift(1,36),out.write_shift(4,cell2.r),out.write_shift(2,cell2.c|(str.charAt(0)=="$"?0:1)<<14|(str.match(/\$\d/)?0:1)<<15),out.write_shift(4,0),out}function write_XLSBFormulaRef3D(str,wb){var lastbang=str.lastIndexOf("!"),sname=str.slice(0,lastbang);str=str.slice(lastbang+1);var cell2=decode_cell(str);sname.charAt(0)=="'"&&(sname=sname.slice(1,-1).replace(/''/g,"'"));var out=new_buf(17);return out.write_shift(4,9),out.write_shift(1,58),out.write_shift(2,2+wb.SheetNames.map(function(n){return n.toLowerCase()}).indexOf(sname.toLowerCase())),out.write_shift(4,cell2.r),out.write_shift(2,cell2.c|(str.charAt(0)=="$"?0:1)<<14|(str.match(/\$\d/)?0:1)<<15),out.write_shift(4,0),out}function write_XLSBFormulaRefErr3D(str,wb){var lastbang=str.lastIndexOf("!"),sname=str.slice(0,lastbang);str=str.slice(lastbang+1),sname.charAt(0)=="'"&&(sname=sname.slice(1,-1).replace(/''/g,"'"));var out=new_buf(17);return out.write_shift(4,9),out.write_shift(1,60),out.write_shift(2,2+wb.SheetNames.map(function(n){return n.toLowerCase()}).indexOf(sname.toLowerCase())),out.write_shift(4,0),out.write_shift(2,0),out.write_shift(4,0),out}function write_XLSBFormulaRange(_str){var parts=_str.split(":"),str=parts[0],out=new_buf(23);out.write_shift(4,15),str=parts[0];var cell2=decode_cell(str);return out.write_shift(1,36),out.write_shift(4,cell2.r),out.write_shift(2,cell2.c|(str.charAt(0)=="$"?0:1)<<14|(str.match(/\$\d/)?0:1)<<15),out.write_shift(4,0),str=parts[1],cell2=decode_cell(str),out.write_shift(1,36),out.write_shift(4,cell2.r),out.write_shift(2,cell2.c|(str.charAt(0)=="$"?0:1)<<14|(str.match(/\$\d/)?0:1)<<15),out.write_shift(4,0),out.write_shift(1,17),out.write_shift(4,0),out}function write_XLSBFormulaRangeWS(_str,wb){var lastbang=_str.lastIndexOf("!"),sname=_str.slice(0,lastbang);_str=_str.slice(lastbang+1),sname.charAt(0)=="'"&&(sname=sname.slice(1,-1).replace(/''/g,"'"));var parts=_str.split(":"),out=new_buf(27);out.write_shift(4,19);var str=parts[0],cell2=decode_cell(str);return out.write_shift(1,58),out.write_shift(2,2+wb.SheetNames.map(function(n){return n.toLowerCase()}).indexOf(sname.toLowerCase())),out.write_shift(4,cell2.r),out.write_shift(2,cell2.c|(str.charAt(0)=="$"?0:1)<<14|(str.match(/\$\d/)?0:1)<<15),str=parts[1],cell2=decode_cell(str),out.write_shift(1,58),out.write_shift(2,2+wb.SheetNames.map(function(n){return n.toLowerCase()}).indexOf(sname.toLowerCase())),out.write_shift(4,cell2.r),out.write_shift(2,cell2.c|(str.charAt(0)=="$"?0:1)<<14|(str.match(/\$\d/)?0:1)<<15),out.write_shift(1,17),out.write_shift(4,0),out}function write_XLSBFormulaArea3D(_str,wb){var lastbang=_str.lastIndexOf("!"),sname=_str.slice(0,lastbang);_str=_str.slice(lastbang+1),sname.charAt(0)=="'"&&(sname=sname.slice(1,-1).replace(/''/g,"'"));var range=decode_range(_str),out=new_buf(23);return out.write_shift(4,15),out.write_shift(1,59),out.write_shift(2,2+wb.SheetNames.map(function(n){return n.toLowerCase()}).indexOf(sname.toLowerCase())),out.write_shift(4,range.s.r),out.write_shift(4,range.e.r),out.write_shift(2,range.s.c),out.write_shift(2,range.e.c),out.write_shift(4,0),out}function write_XLSBFormula(val2,wb){if(typeof val2=="number")return write_XLSBFormulaNum(val2);if(typeof val2=="boolean")return write_XLSBFormulaBool(val2);if(/^#(DIV\/0!|GETTING_DATA|N\/A|NAME\?|NULL!|NUM!|REF!|VALUE!)$/.test(val2))return write_XLSBFormulaErr(+RBErr[val2]);if(val2.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return write_XLSBFormulaRef(val2);if(val2.match(/^\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return write_XLSBFormulaRange(val2);if(val2.match(/^#REF!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return write_XLSBFormulaArea3D(val2,wb);if(val2.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return write_XLSBFormulaRef3D(val2,wb);if(val2.match(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5}):\$?(?:[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D]|[A-Z]{1,2})\$?(?:10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})$/))return write_XLSBFormulaRangeWS(val2,wb);if(/^(?:'[^\\\/?*\[\]:]*'|[^'][^\\\/?*\[\]:'`~!@#$%^()\-=+{}|;,<.>]*)!#REF!$/.test(val2))return write_XLSBFormulaRefErr3D(val2,wb);if(/^".*"$/.test(val2))return write_XLSBFormulaStr(val2);if(/^[+-]\d+$/.test(val2))return write_XLSBFormulaNum(parseInt(val2,10));throw"Formula |"+val2+"| not supported for XLSB"}function ods_to_csf_formula(f){return f.slice(0,3)=="of:"&&(f=f.slice(3)),f.charCodeAt(0)==61&&(f=f.slice(1),f.charCodeAt(0)==61&&(f=f.slice(1))),f=f.replace(/COM\.MICROSOFT\./g,""),f=f.replace(/\[((?:\.[A-Z]+[0-9]+)(?::\.[A-Z]+[0-9]+)?)\]/g,function($$,$1){return $1.replace(/\./g,"")}),f=f.replace(/\$'([^']|'')+'/g,function($$){return $$.slice(1)}),f=f.replace(/\$([^\]\. #$]+)/g,function($$,$1){return $1.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?$$:$1}),f=f.replace(/\[.(#[A-Z]*[?!])\]/g,"$1"),f.replace(/[;~]/g,",").replace(/\|/g,";")}function csf_to_ods_formula(f){var o="of:="+f.replace(crefregex,"$1[.$2$3$4$5]").replace(/\]:\[/g,":");return o.replace(/;/g,"|").replace(/,/g,";")}function ods_to_csf_3D(r){r=r.replace(/\$'([^']|'')+'/g,function($$){return $$.slice(1)}),r=r.replace(/\$([^\]\. #$]+)/g,function($$,$1){return $1.match(/^([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])?(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})?$/)?$$:$1});var a=r.split(":"),s=a[0].split(".")[0];return[s,a[0].split(".")[1]+(a.length>1?":"+(a[1].split(".")[1]||a[1].split(".")[0]):"")]}function csf_to_ods_3D(r){return r.replace(/!/,".").replace(/:/,":.")}function get_sst_id(sst,str,rev){var i=0,len=sst.length;if(rev){if(browser_has_Map?rev.has(str):Object.prototype.hasOwnProperty.call(rev,str)){for(var revarr=browser_has_Map?rev.get(str):rev[str];i<revarr.length;++i)if(sst[revarr[i]].t===str)return sst.Count++,revarr[i]}}else for(;i<len;++i)if(sst[i].t===str)return sst.Count++,i;return sst[len]={t:str},sst.Count++,sst.Unique++,rev&&(browser_has_Map?(rev.has(str)||rev.set(str,[]),rev.get(str).push(len)):(Object.prototype.hasOwnProperty.call(rev,str)||(rev[str]=[]),rev[str].push(len))),len}function col_obj_w(C,col){var p={min:C+1,max:C+1},wch=-1;return col.MDW&&(MDW=col.MDW),col.width!=null?p.customWidth=1:col.wpx!=null?wch=px2char(col.wpx):col.wch!=null&&(wch=col.wch),wch>-1?(p.width=char2width(wch),p.customWidth=1):col.width!=null&&(p.width=col.width),col.hidden&&(p.hidden=!0),col.level!=null&&(p.outlineLevel=p.level=col.level),p}function default_margins(margins,mode){if(margins){var defs=[.7,.7,.75,.75,.3,.3];mode=="xlml"&&(defs=[1,1,1,1,.5,.5]),margins.left==null&&(margins.left=defs[0]),margins.right==null&&(margins.right=defs[1]),margins.top==null&&(margins.top=defs[2]),margins.bottom==null&&(margins.bottom=defs[3]),margins.header==null&&(margins.header=defs[4]),margins.footer==null&&(margins.footer=defs[5])}}function get_cell_style(styles,cell2,opts){var z=opts.revssf[cell2.z!=null?cell2.z:"General"],i=60,len=styles.length;if(z==null&&opts.ssf){for(;i<392;++i)if(opts.ssf[i]==null){SSF__load(cell2.z,i),opts.ssf[i]=cell2.z,opts.revssf[cell2.z]=z=i;break}}for(i=0;i!=len;++i)if(styles[i].numFmtId===z)return i;return styles[len]={numFmtId:z,fontId:0,fillId:0,borderId:0,xfId:0,applyNumberFormat:1},len}function safe_format(p,fmtid,fillid,opts,themes,styles,date1904){try{opts.cellNF&&(p.z=table_fmt[fmtid])}catch(e){if(opts.WTF)throw e}if(!(p.t==="z"&&!opts.cellStyles)){if(p.t==="d"&&typeof p.v=="string"&&(p.v=parseDate(p.v)),(!opts||opts.cellText!==!1)&&p.t!=="z")try{if(table_fmt[fmtid]==null&&SSF__load(SSFImplicit[fmtid]||"General",fmtid),p.t==="e")p.w=p.w||BErr[p.v];else if(fmtid===0)if(p.t==="n")(p.v|0)===p.v?p.w=p.v.toString(10):p.w=SSF_general_num(p.v);else if(p.t==="d"){var dd=datenum(p.v,!!date1904);(dd|0)===dd?p.w=dd.toString(10):p.w=SSF_general_num(dd)}else{if(p.v===void 0)return"";p.w=SSF_general(p.v,_ssfopts)}else p.t==="d"?p.w=SSF_format(fmtid,datenum(p.v,!!date1904),_ssfopts):p.w=SSF_format(fmtid,p.v,_ssfopts)}catch(e){if(opts.WTF)throw e}if(opts.cellStyles&&fillid!=null)try{p.s=styles.Fills[fillid],p.s.fgColor&&p.s.fgColor.theme&&!p.s.fgColor.rgb&&(p.s.fgColor.rgb=rgb_tint(themes.themeElements.clrScheme[p.s.fgColor.theme].rgb,p.s.fgColor.tint||0),opts.WTF&&(p.s.fgColor.raw_rgb=themes.themeElements.clrScheme[p.s.fgColor.theme].rgb)),p.s.bgColor&&p.s.bgColor.theme&&(p.s.bgColor.rgb=rgb_tint(themes.themeElements.clrScheme[p.s.bgColor.theme].rgb,p.s.bgColor.tint||0),opts.WTF&&(p.s.bgColor.raw_rgb=themes.themeElements.clrScheme[p.s.bgColor.theme].rgb))}catch(e){if(opts.WTF&&styles.Fills)throw e}}}function check_ws(ws,sname,i){if(ws&&ws["!ref"]){var range=safe_decode_range(ws["!ref"]);if(range.e.c<range.s.c||range.e.r<range.s.r)throw new Error("Bad range ("+i+"): "+ws["!ref"])}}function parse_ws_xml_dim(ws,s){var d=safe_decode_range(s);d.s.r<=d.e.r&&d.s.c<=d.e.c&&d.s.r>=0&&d.s.c>=0&&(ws["!ref"]=encode_range(d))}function parse_ws_xml(data,opts,idx,rels,wb,themes,styles){if(!data)return data;rels||(rels={"!id":{}}),DENSE!=null&&opts.dense==null&&(opts.dense=DENSE);var s={};opts.dense&&(s["!data"]=[]);var refguess={s:{r:2e6,c:2e6},e:{r:0,c:0}},data1="",data2="",mtch=str_match_xml_ns(data,"sheetData");mtch?(data1=data.slice(0,mtch.index),data2=data.slice(mtch.index+mtch[0].length)):data1=data2=data;var sheetPr=data1.match(sheetprregex);sheetPr?parse_ws_xml_sheetpr(sheetPr[0],s,wb,idx):(sheetPr=str_match_xml_ns(data1,"sheetPr"))&&parse_ws_xml_sheetpr2(sheetPr[0],sheetPr[1]||"",s,wb,idx,styles,themes);var ridx=(data1.match(/<(?:\w*:)?dimension/)||{index:-1}).index;if(ridx>0){var ref=data1.slice(ridx,ridx+50).match(dimregex);ref&&!(opts&&opts.nodim)&&parse_ws_xml_dim(s,ref[1])}var svs=str_match_xml_ns(data1,"sheetViews");svs&&svs[1]&&parse_ws_xml_sheetviews(svs[1],wb);var columns=[];if(opts.cellStyles){var cols=data1.match(colregex);cols&&parse_ws_xml_cols(columns,cols)}mtch&&parse_ws_xml_data(mtch[1],s,opts,refguess,themes,styles,wb);var afilter=data2.match(afregex);afilter&&(s["!autofilter"]=parse_ws_xml_autofilter(afilter[0]));var merges=[],_merge=data2.match(mergecregex);if(_merge)for(ridx=0;ridx!=_merge.length;++ridx)merges[ridx]=safe_decode_range(_merge[ridx].slice(_merge[ridx].indexOf("=")+2));var hlink=data2.match(hlinkregex);hlink&&parse_ws_xml_hlinks(s,hlink,rels);var margins=data2.match(marginregex);margins&&(s["!margins"]=parse_ws_xml_margins(parsexmltag(margins[0])));var m;if((m=data2.match(/legacyDrawing r:id="(.*?)"/))&&(s["!legrel"]=m[1]),opts&&opts.nodim&&(refguess.s.c=refguess.s.r=0),!s["!ref"]&&refguess.e.c>=refguess.s.c&&refguess.e.r>=refguess.s.r&&(s["!ref"]=encode_range(refguess)),opts.sheetRows>0&&s["!ref"]){var tmpref=safe_decode_range(s["!ref"]);opts.sheetRows<=+tmpref.e.r&&(tmpref.e.r=opts.sheetRows-1,tmpref.e.r>refguess.e.r&&(tmpref.e.r=refguess.e.r),tmpref.e.r<tmpref.s.r&&(tmpref.s.r=tmpref.e.r),tmpref.e.c>refguess.e.c&&(tmpref.e.c=refguess.e.c),tmpref.e.c<tmpref.s.c&&(tmpref.s.c=tmpref.e.c),s["!fullref"]=s["!ref"],s["!ref"]=encode_range(tmpref))}return columns.length>0&&(s["!cols"]=columns),merges.length>0&&(s["!merges"]=merges),rels["!id"][s["!legrel"]]&&(s["!legdrawel"]=rels["!id"][s["!legrel"]]),s}function write_ws_xml_merges(merges){if(merges.length===0)return"";for(var o='<mergeCells count="'+merges.length+'">',i=0;i!=merges.length;++i)o+='<mergeCell ref="'+encode_range(merges[i])+'"/>';return o+"</mergeCells>"}function parse_ws_xml_sheetpr(sheetPr,s,wb,idx){var data=parsexmltag(sheetPr);wb.Sheets[idx]||(wb.Sheets[idx]={}),data.codeName&&(wb.Sheets[idx].CodeName=unescapexml(utf8read(data.codeName)))}function parse_ws_xml_sheetpr2(sheetPr,body,s,wb,idx){parse_ws_xml_sheetpr(sheetPr.slice(0,sheetPr.indexOf(">")),s,wb,idx)}function write_ws_xml_sheetpr(ws,wb,idx,opts,o){var needed=!1,props={},payload=null;if(opts.bookType!=="xlsx"&&wb.vbaraw){var cname=wb.SheetNames[idx];try{wb.Workbook&&(cname=wb.Workbook.Sheets[idx].CodeName||cname)}catch{}needed=!0,props.codeName=utf8write(escapexml(cname))}if(ws&&ws["!outline"]){var outlineprops={summaryBelow:1,summaryRight:1};ws["!outline"].above&&(outlineprops.summaryBelow=0),ws["!outline"].left&&(outlineprops.summaryRight=0),payload=(payload||"")+writextag("outlinePr",null,outlineprops)}!needed&&!payload||(o[o.length]=writextag("sheetPr",payload,props))}function write_ws_xml_protection(sp){var o={sheet:1};return sheetprot_deffalse.forEach(function(n){sp[n]!=null&&sp[n]&&(o[n]="1")}),sheetprot_deftrue.forEach(function(n){sp[n]!=null&&!sp[n]&&(o[n]="0")}),sp.password&&(o.password=crypto_CreatePasswordVerifier_Method1(sp.password).toString(16).toUpperCase()),writextag("sheetProtection",null,o)}function parse_ws_xml_hlinks(s,data,rels){for(var dense=s["!data"]!=null,i=0;i!=data.length;++i){var val2=parsexmltag(utf8read(data[i]),!0);if(!val2.ref)return;var rel=((rels||{})["!id"]||[])[val2.id];rel?(val2.Target=rel.Target,val2.location&&(val2.Target+="#"+unescapexml(val2.location))):(val2.Target="#"+unescapexml(val2.location),rel={Target:val2.Target,TargetMode:"Internal"}),val2.Rel=rel,val2.tooltip&&(val2.Tooltip=val2.tooltip,delete val2.tooltip);for(var rng=safe_decode_range(val2.ref),R=rng.s.r;R<=rng.e.r;++R)for(var C=rng.s.c;C<=rng.e.c;++C){var addr=encode_col(C)+encode_row(R);dense?(s["!data"][R]||(s["!data"][R]=[]),s["!data"][R][C]||(s["!data"][R][C]={t:"z",v:void 0}),s["!data"][R][C].l=val2):(s[addr]||(s[addr]={t:"z",v:void 0}),s[addr].l=val2)}}}function parse_ws_xml_margins(margin){var o={};return["left","right","top","bottom","header","footer"].forEach(function(k){margin[k]&&(o[k]=parseFloat(margin[k]))}),o}function write_ws_xml_margins(margin){return default_margins(margin),writextag("pageMargins",null,margin)}function parse_ws_xml_cols(columns,cols){for(var seencol=!1,coli=0;coli!=cols.length;++coli){var coll=parsexmltag(cols[coli],!0);coll.hidden&&(coll.hidden=parsexmlbool(coll.hidden));var colm=parseInt(coll.min,10)-1,colM=parseInt(coll.max,10)-1;for(coll.outlineLevel&&(coll.level=+coll.outlineLevel||0),delete coll.min,delete coll.max,coll.width=+coll.width,!seencol&&coll.width&&(seencol=!0,find_mdw_colw(coll.width)),process_col(coll);colm<=colM;)columns[colm++]=dup(coll)}}function write_ws_xml_cols(ws,cols){for(var o=["<cols>"],col,i=0;i!=cols.length;++i)(col=cols[i])&&(o[o.length]=writextag("col",null,col_obj_w(i,col)));return o[o.length]="</cols>",o.join("")}function parse_ws_xml_autofilter(data){var o={ref:(data.match(/ref="([^"]*)"/)||[])[1]};return o}function write_ws_xml_autofilter(data,ws,wb,idx){var ref=typeof data.ref=="string"?data.ref:encode_range(data.ref);wb.Workbook||(wb.Workbook={Sheets:[]}),wb.Workbook.Names||(wb.Workbook.Names=[]);var names=wb.Workbook.Names,range=decode_range(ref);range.s.r==range.e.r&&(range.e.r=decode_range(ws["!ref"]).e.r,ref=encode_range(range));for(var i=0;i<names.length;++i){var name=names[i];if(name.Name=="_xlnm._FilterDatabase"&&name.Sheet==idx){name.Ref=formula_quote_sheet_name(wb.SheetNames[idx])+"!"+fix_range(ref);break}}return i==names.length&&names.push({Name:"_xlnm._FilterDatabase",Sheet:idx,Ref:"'"+wb.SheetNames[idx]+"'!"+ref}),writextag("autoFilter",null,{ref})}function parse_ws_xml_sheetviews(data,wb){wb.Views||(wb.Views=[{}]),(data.match(sviewregex)||[]).forEach(function(r,i){var tag=parsexmltag(r);wb.Views[i]||(wb.Views[i]={}),+tag.zoomScale&&(wb.Views[i].zoom=+tag.zoomScale),tag.rightToLeft&&parsexmlbool(tag.rightToLeft)&&(wb.Views[i].RTL=!0)})}function write_ws_xml_sheetviews(ws,opts,idx,wb){var sview={workbookViewId:"0"};return(((wb||{}).Workbook||{}).Views||[])[0]&&(sview.rightToLeft=wb.Workbook.Views[0].RTL?"1":"0"),writextag("sheetViews",writextag("sheetView",null,sview),{})}function write_ws_xml_cell(cell2,ref,ws,opts,idx,wb,date1904){if(cell2.c&&ws["!comments"].push([ref,cell2.c]),(cell2.v===void 0||cell2.t==="z"&&!(opts||{}).sheetStubs)&&typeof cell2.f!="string"&&typeof cell2.z>"u")return"";var vv="",oldt=cell2.t,oldv=cell2.v;if(cell2.t!=="z")switch(cell2.t){case"b":vv=cell2.v?"1":"0";break;case"n":isNaN(cell2.v)?(cell2.t="e",vv=BErr[cell2.v=36]):isFinite(cell2.v)?vv=""+cell2.v:(cell2.t="e",vv=BErr[cell2.v=7]);break;case"e":vv=BErr[cell2.v];break;case"d":if(opts&&opts.cellDates){var _vv=parseDate(cell2.v,date1904);vv=_vv.toISOString(),_vv.getUTCFullYear()<1900&&(vv=vv.slice(vv.indexOf("T")+1).replace("Z",""))}else cell2=dup(cell2),cell2.t="n",vv=""+(cell2.v=datenum(parseDate(cell2.v,date1904),date1904));typeof cell2.z>"u"&&(cell2.z=table_fmt[14]);break;default:vv=cell2.v;break}var v=cell2.t=="z"||cell2.v==null?"":writetag("v",escapexml(vv)),o={r:ref},os=get_cell_style(opts.cellXfs,cell2,opts);switch(os!==0&&(o.s=os),cell2.t){case"n":break;case"d":o.t="d";break;case"b":o.t="b";break;case"e":o.t="e";break;case"z":break;default:if(cell2.v==null){delete cell2.t;break}if(cell2.v.length>32767)throw new Error("Text length must not exceed 32767 characters");if(opts&&opts.bookSST){v=writetag("v",""+get_sst_id(opts.Strings,cell2.v,opts.revStrings)),o.t="s";break}else o.t="str";break}if(cell2.t!=oldt&&(cell2.t=oldt,cell2.v=oldv),typeof cell2.f=="string"&&cell2.f){var ff=cell2.F&&cell2.F.slice(0,ref.length)==ref?{t:"array",ref:cell2.F}:null;v=writextag("f",escapexml(cell2.f),ff)+(cell2.v!=null?v:"")}return cell2.l&&(cell2.l.display=escapexml(vv),ws["!links"].push([ref,cell2.l])),cell2.D&&(o.cm=1),writextag("c",v,o)}function write_ws_xml_data(ws,opts,idx,wb){var o=[],r=[],range=safe_decode_range(ws["!ref"]),cell2="",ref,rr="",cols=[],R=0,C=0,rows=ws["!rows"],dense=ws["!data"]!=null,data=dense?ws["!data"]:[],params={r:rr},row,height=-1,date1904=(((wb||{}).Workbook||{}).WBProps||{}).date1904;for(C=range.s.c;C<=range.e.c;++C)cols[C]=encode_col(C);for(R=range.s.r;R<=range.e.r;++R){r=[],rr=encode_row(R);var data_R=dense?data[R]:[];for(C=range.s.c;C<=range.e.c;++C){ref=cols[C]+rr;var _cell=dense?data_R[C]:ws[ref];_cell!==void 0&&(cell2=write_ws_xml_cell(_cell,ref,ws,opts,idx,wb,date1904))!=null&&r.push(cell2)}(r.length>0||rows&&rows[R])&&(params={r:rr},rows&&rows[R]&&(row=rows[R],row.hidden&&(params.hidden=1),height=-1,row.hpx?height=px2pt(row.hpx):row.hpt&&(height=row.hpt),height>-1&&(params.ht=height,params.customHeight=1),row.level&&(params.outlineLevel=row.level)),o[o.length]=writextag("row",r.join(""),params))}if(rows)for(;R<rows.length;++R)rows&&rows[R]&&(params={r:R+1},row=rows[R],row.hidden&&(params.hidden=1),height=-1,row.hpx?height=px2pt(row.hpx):row.hpt&&(height=row.hpt),height>-1&&(params.ht=height,params.customHeight=1),row.level&&(params.outlineLevel=row.level),o[o.length]=writextag("row","",params));return o.join("")}function write_ws_xml(idx,opts,wb,rels){var o=[XML_HEADER,writextag("worksheet",null,{xmlns:XMLNS_main[0],"xmlns:r":XMLNS.r})],s=wb.SheetNames[idx],sidx=0,rdata="",ws=wb.Sheets[s];ws==null&&(ws={});var ref=ws["!ref"]||"A1",range=safe_decode_range(ref);if(range.e.c>16383||range.e.r>1048575){if(opts.WTF)throw new Error("Range "+ref+" exceeds format limit A1:XFD1048576");range.e.c=Math.min(range.e.c,16383),range.e.r=Math.min(range.e.c,1048575),ref=encode_range(range)}rels||(rels={}),ws["!comments"]=[];var _drawing=[];write_ws_xml_sheetpr(ws,wb,idx,opts,o),o[o.length]=writextag("dimension",null,{ref}),o[o.length]=write_ws_xml_sheetviews(ws,opts,idx,wb),opts.sheetFormat&&(o[o.length]=writextag("sheetFormatPr",null,{defaultRowHeight:opts.sheetFormat.defaultRowHeight||"16",baseColWidth:opts.sheetFormat.baseColWidth||"10",outlineLevelRow:opts.sheetFormat.outlineLevelRow||"7"})),ws["!cols"]!=null&&ws["!cols"].length>0&&(o[o.length]=write_ws_xml_cols(ws,ws["!cols"])),o[sidx=o.length]="<sheetData/>",ws["!links"]=[],ws["!ref"]!=null&&(rdata=write_ws_xml_data(ws,opts,idx,wb,rels),rdata.length>0&&(o[o.length]=rdata)),o.length>sidx+1&&(o[o.length]="</sheetData>",o[sidx]=o[sidx].replace("/>",">")),ws["!protect"]&&(o[o.length]=write_ws_xml_protection(ws["!protect"])),ws["!autofilter"]!=null&&(o[o.length]=write_ws_xml_autofilter(ws["!autofilter"],ws,wb,idx)),ws["!merges"]!=null&&ws["!merges"].length>0&&(o[o.length]=write_ws_xml_merges(ws["!merges"]));var relc=-1,rel,rId=-1;return ws["!links"].length>0&&(o[o.length]="<hyperlinks>",ws["!links"].forEach(function(l){l[1].Target&&(rel={ref:l[0]},l[1].Target.charAt(0)!="#"&&(rId=add_rels(rels,-1,escapexml(l[1].Target).replace(/#[\s\S]*$/,""),RELS.HLINK),rel["r:id"]="rId"+rId),(relc=l[1].Target.indexOf("#"))>-1&&(rel.location=escapexml(l[1].Target.slice(relc+1))),l[1].Tooltip&&(rel.tooltip=escapexml(l[1].Tooltip)),rel.display=l[1].display,o[o.length]=writextag("hyperlink",null,rel))}),o[o.length]="</hyperlinks>"),delete ws["!links"],ws["!margins"]!=null&&(o[o.length]=write_ws_xml_margins(ws["!margins"])),(!opts||opts.ignoreEC||opts.ignoreEC==null)&&(o[o.length]=writetag("ignoredErrors",writextag("ignoredError",null,{numberStoredAsText:1,sqref:ref}))),_drawing.length>0&&(rId=add_rels(rels,-1,"../drawings/drawing"+(idx+1)+".xml",RELS.DRAW),o[o.length]=writextag("drawing",null,{"r:id":"rId"+rId}),ws["!drawing"]=_drawing),ws["!comments"].length>0&&(rId=add_rels(rels,-1,"../drawings/vmlDrawing"+(idx+1)+".vml",RELS.VML),o[o.length]=writextag("legacyDrawing",null,{"r:id":"rId"+rId}),ws["!legacy"]=rId),o.length>1&&(o[o.length]="</worksheet>",o[1]=o[1].replace("/>",">")),o.join("")}function parse_BrtRowHdr(data,length){var z={},tgt=data.l+length;z.r=data.read_shift(4),data.l+=4;var miyRw=data.read_shift(2);data.l+=1;var flags=data.read_shift(1);return data.l=tgt,flags&7&&(z.level=flags&7),flags&16&&(z.hidden=!0),flags&32&&(z.hpt=miyRw/20),z}function write_BrtRowHdr(R,range,ws){var o=new_buf(145),row=(ws["!rows"]||[])[R]||{};o.write_shift(4,R),o.write_shift(4,0);var miyRw=320;row.hpx?miyRw=px2pt(row.hpx)*20:row.hpt&&(miyRw=row.hpt*20),o.write_shift(2,miyRw),o.write_shift(1,0);var flags=0;row.level&&(flags|=row.level),row.hidden&&(flags|=16),(row.hpx||row.hpt)&&(flags|=32),o.write_shift(1,flags),o.write_shift(1,0);var ncolspan=0,lcs=o.l;o.l+=4;for(var caddr={r:R,c:0},dense=ws["!data"]!=null,i=0;i<16;++i)if(!(range.s.c>i+1<<10||range.e.c<i<<10)){for(var first=-1,last=-1,j=i<<10;j<i+1<<10;++j){caddr.c=j;var cell2=dense?(ws["!data"][caddr.r]||[])[caddr.c]:ws[encode_cell(caddr)];cell2&&(first<0&&(first=j),last=j)}first<0||(++ncolspan,o.write_shift(4,first),o.write_shift(4,last))}var l=o.l;return o.l=lcs,o.write_shift(4,ncolspan),o.l=l,o.length>o.l?o.slice(0,o.l):o}function write_row_header(ba,ws,range,R){var o=write_BrtRowHdr(R,range,ws);(o.length>17||(ws["!rows"]||[])[R])&&write_record(ba,0,o)}function parse_BrtWsFmtInfo(){}function parse_BrtWsProp(data,length){var z={},f=data[data.l];return++data.l,z.above=!(f&64),z.left=!(f&128),data.l+=18,z.name=parse_XLSBCodeName(data,length-19),z}function write_BrtWsProp(str,outl,o){o==null&&(o=new_buf(84+4*str.length));var f=192;outl&&(outl.above&&(f&=-65),outl.left&&(f&=-129)),o.write_shift(1,f);for(var i=1;i<3;++i)o.write_shift(1,0);return write_BrtColor({auto:1},o),o.write_shift(-4,-1),o.write_shift(-4,-1),write_XLSBCodeName(str,o),o.slice(0,o.l)}function parse_BrtCellBlank(data){var cell2=parse_XLSBCell(data);return[cell2]}function write_BrtCellBlank(cell2,ncell,o){return o==null&&(o=new_buf(8)),write_XLSBCell(ncell,o)}function parse_BrtShortBlank(data){var cell2=parse_XLSBShortCell(data);return[cell2]}function write_BrtShortBlank(cell2,ncell,o){return o==null&&(o=new_buf(4)),write_XLSBShortCell(ncell,o)}function parse_BrtCellBool(data){var cell2=parse_XLSBCell(data),fBool=data.read_shift(1);return[cell2,fBool,"b"]}function write_BrtCellBool(cell2,ncell,o){return o==null&&(o=new_buf(9)),write_XLSBCell(ncell,o),o.write_shift(1,cell2.v?1:0),o}function parse_BrtShortBool(data){var cell2=parse_XLSBShortCell(data),fBool=data.read_shift(1);return[cell2,fBool,"b"]}function write_BrtShortBool(cell2,ncell,o){return o==null&&(o=new_buf(5)),write_XLSBShortCell(ncell,o),o.write_shift(1,cell2.v?1:0),o}function parse_BrtCellError(data){var cell2=parse_XLSBCell(data),bError=data.read_shift(1);return[cell2,bError,"e"]}function write_BrtCellError(cell2,ncell,o){return o==null&&(o=new_buf(9)),write_XLSBCell(ncell,o),o.write_shift(1,cell2.v),o}function parse_BrtShortError(data){var cell2=parse_XLSBShortCell(data),bError=data.read_shift(1);return[cell2,bError,"e"]}function write_BrtShortError(cell2,ncell,o){return o==null&&(o=new_buf(8)),write_XLSBShortCell(ncell,o),o.write_shift(1,cell2.v),o.write_shift(2,0),o.write_shift(1,0),o}function parse_BrtCellIsst(data){var cell2=parse_XLSBCell(data),isst=data.read_shift(4);return[cell2,isst,"s"]}function write_BrtCellIsst(cell2,ncell,o){return o==null&&(o=new_buf(12)),write_XLSBCell(ncell,o),o.write_shift(4,ncell.v),o}function parse_BrtShortIsst(data){var cell2=parse_XLSBShortCell(data),isst=data.read_shift(4);return[cell2,isst,"s"]}function write_BrtShortIsst(cell2,ncell,o){return o==null&&(o=new_buf(8)),write_XLSBShortCell(ncell,o),o.write_shift(4,ncell.v),o}function parse_BrtCellReal(data){var cell2=parse_XLSBCell(data),value=parse_Xnum(data);return[cell2,value,"n"]}function write_BrtCellReal(cell2,ncell,o){return o==null&&(o=new_buf(16)),write_XLSBCell(ncell,o),write_Xnum(cell2.v,o),o}function parse_BrtShortReal(data){var cell2=parse_XLSBShortCell(data),value=parse_Xnum(data);return[cell2,value,"n"]}function write_BrtShortReal(cell2,ncell,o){return o==null&&(o=new_buf(12)),write_XLSBShortCell(ncell,o),write_Xnum(cell2.v,o),o}function parse_BrtCellRk(data){var cell2=parse_XLSBCell(data),value=parse_RkNumber(data);return[cell2,value,"n"]}function write_BrtCellRk(cell2,ncell,o){return o==null&&(o=new_buf(12)),write_XLSBCell(ncell,o),write_RkNumber(cell2.v,o),o}function parse_BrtShortRk(data){var cell2=parse_XLSBShortCell(data),value=parse_RkNumber(data);return[cell2,value,"n"]}function write_BrtShortRk(cell2,ncell,o){return o==null&&(o=new_buf(8)),write_XLSBShortCell(ncell,o),write_RkNumber(cell2.v,o),o}function parse_BrtCellRString(data){var cell2=parse_XLSBCell(data),value=parse_RichStr(data);return[cell2,value,"is"]}function parse_BrtCellSt(data){var cell2=parse_XLSBCell(data),value=parse_XLWideString(data);return[cell2,value,"str"]}function write_BrtCellSt(cell2,ncell,o){var data=cell2.v==null?"":String(cell2.v);return o==null&&(o=new_buf(12+4*cell2.v.length)),write_XLSBCell(ncell,o),write_XLWideString(data,o),o.length>o.l?o.slice(0,o.l):o}function parse_BrtShortSt(data){var cell2=parse_XLSBShortCell(data),value=parse_XLWideString(data);return[cell2,value,"str"]}function write_BrtShortSt(cell2,ncell,o){var data=cell2.v==null?"":String(cell2.v);return o==null&&(o=new_buf(8+4*data.length)),write_XLSBShortCell(ncell,o),write_XLWideString(data,o),o.length>o.l?o.slice(0,o.l):o}function parse_BrtFmlaBool(data,length,opts){var end=data.l+length,cell2=parse_XLSBCell(data);cell2.r=opts["!row"];var value=data.read_shift(1),o=[cell2,value,"b"];if(opts.cellFormula){data.l+=2;var formula=parse_XLSBCellParsedFormula(data,end-data.l,opts);o[3]=stringify_formula(formula,null,cell2,opts.supbooks,opts)}else data.l=end;return o}function parse_BrtFmlaError(data,length,opts){var end=data.l+length,cell2=parse_XLSBCell(data);cell2.r=opts["!row"];var value=data.read_shift(1),o=[cell2,value,"e"];if(opts.cellFormula){data.l+=2;var formula=parse_XLSBCellParsedFormula(data,end-data.l,opts);o[3]=stringify_formula(formula,null,cell2,opts.supbooks,opts)}else data.l=end;return o}function parse_BrtFmlaNum(data,length,opts){var end=data.l+length,cell2=parse_XLSBCell(data);cell2.r=opts["!row"];var value=parse_Xnum(data),o=[cell2,value,"n"];if(opts.cellFormula){data.l+=2;var formula=parse_XLSBCellParsedFormula(data,end-data.l,opts);o[3]=stringify_formula(formula,null,cell2,opts.supbooks,opts)}else data.l=end;return o}function parse_BrtFmlaString(data,length,opts){var end=data.l+length,cell2=parse_XLSBCell(data);cell2.r=opts["!row"];var value=parse_XLWideString(data),o=[cell2,value,"str"];if(opts.cellFormula){data.l+=2;var formula=parse_XLSBCellParsedFormula(data,end-data.l,opts);o[3]=stringify_formula(formula,null,cell2,opts.supbooks,opts)}else data.l=end;return o}function write_BrtBeginMergeCells(cnt,o){return o==null&&(o=new_buf(4)),o.write_shift(4,cnt),o}function parse_BrtHLink(data,length){var end=data.l+length,rfx=parse_UncheckedRfX(data,16),relId=parse_XLNullableWideString(data),loc=parse_XLWideString(data),tooltip=parse_XLWideString(data),display=parse_XLWideString(data);data.l=end;var o={rfx,relId,loc,display};return tooltip&&(o.Tooltip=tooltip),o}function write_BrtHLink(l,rId){var o=new_buf(50+4*(l[1].Target.length+(l[1].Tooltip||"").length));write_UncheckedRfX({s:decode_cell(l[0]),e:decode_cell(l[0])},o),write_RelID("rId"+rId,o);var locidx=l[1].Target.indexOf("#"),loc=locidx==-1?"":l[1].Target.slice(locidx+1);return write_XLWideString(loc||"",o),write_XLWideString(l[1].Tooltip||"",o),write_XLWideString("",o),o.slice(0,o.l)}function parse_BrtPane(){}function parse_BrtArrFmla(data,length,opts){var end=data.l+length,rfx=parse_RfX(data,16),fAlwaysCalc=data.read_shift(1),o=[rfx];if(o[2]=fAlwaysCalc,opts.cellFormula){var formula=parse_XLSBArrayParsedFormula(data,end-data.l,opts);o[1]=formula}else data.l=end;return o}function parse_BrtShrFmla(data,length,opts){var end=data.l+length,rfx=parse_UncheckedRfX(data,16),o=[rfx];if(opts.cellFormula){var formula=parse_XLSBSharedParsedFormula(data,end-data.l,opts);o[1]=formula,data.l=end}else data.l=end;return o}function write_BrtColInfo(C,col,o){o==null&&(o=new_buf(18));var p=col_obj_w(C,col);o.write_shift(-4,C),o.write_shift(-4,C),o.write_shift(4,(p.width||10)*256),o.write_shift(4,0);var flags=0;return col.hidden&&(flags|=1),typeof p.width=="number"&&(flags|=2),col.level&&(flags|=col.level<<8),o.write_shift(2,flags),o}function parse_BrtMargins(data){var margins={};return BrtMarginKeys.forEach(function(k){margins[k]=parse_Xnum(data,8)}),margins}function write_BrtMargins(margins,o){return o==null&&(o=new_buf(48)),default_margins(margins),BrtMarginKeys.forEach(function(k){write_Xnum(margins[k],o)}),o}function parse_BrtBeginWsView(data){var f=data.read_shift(2);return data.l+=28,{RTL:f&32}}function write_BrtBeginWsView(ws,Workbook,o){o==null&&(o=new_buf(30));var f=924;return(((Workbook||{}).Views||[])[0]||{}).RTL&&(f|=32),o.write_shift(2,f),o.write_shift(4,0),o.write_shift(4,0),o.write_shift(4,0),o.write_shift(1,0),o.write_shift(1,0),o.write_shift(2,0),o.write_shift(2,100),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(4,0),o}function write_BrtCellIgnoreEC(ref){var o=new_buf(24);return o.write_shift(4,4),o.write_shift(4,1),write_UncheckedRfX(ref,o),o}function write_BrtSheetProtection(sp,o){return o==null&&(o=new_buf(66)),o.write_shift(2,sp.password?crypto_CreatePasswordVerifier_Method1(sp.password):0),o.write_shift(4,1),[["objects",!1],["scenarios",!1],["formatCells",!0],["formatColumns",!0],["formatRows",!0],["insertColumns",!0],["insertRows",!0],["insertHyperlinks",!0],["deleteColumns",!0],["deleteRows",!0],["selectLockedCells",!1],["sort",!0],["autoFilter",!0],["pivotTables",!0],["selectUnlockedCells",!1]].forEach(function(n){n[1]?o.write_shift(4,sp[n[0]]!=null&&!sp[n[0]]?1:0):o.write_shift(4,sp[n[0]]!=null&&sp[n[0]]?0:1)}),o}function parse_BrtDVal(){}function parse_BrtDVal14(){}function parse_ws_bin(data,_opts,idx,rels,wb,themes,styles){if(!data)return data;var opts=_opts||{};rels||(rels={"!id":{}}),DENSE!=null&&opts.dense==null&&(opts.dense=DENSE);var s={};opts.dense&&(s["!data"]=[]);var ref,refguess={s:{r:2e6,c:2e6},e:{r:0,c:0}},state=[],pass=!1,end=!1,row,p,cf,R,C,addr,sstr,rr,cell2,merges=[];opts.biff=12,opts["!row"]=0;var ai=0,af=!1,arrayf=[],sharedf={},supbooks=opts.supbooks||wb.supbooks||[[]];if(supbooks.sharedf=sharedf,supbooks.arrayf=arrayf,supbooks.SheetNames=wb.SheetNames||wb.Sheets.map(function(x){return x.name}),!opts.supbooks&&(opts.supbooks=supbooks,wb.Names))for(var i=0;i<wb.Names.length;++i)supbooks[0][i+1]=wb.Names[i];var colinfo=[],rowinfo=[],seencol=!1;XLSBRecordEnum[16]={n:"BrtShortReal",f:parse_BrtShortReal};var cm,vm,date1904=1462*+!!((wb||{}).WBProps||{}).date1904;if(recordhopper(data,function(val2,RR,RT){if(!end)switch(RT){case 148:ref=val2;break;case 0:row=val2,opts.sheetRows&&opts.sheetRows<=row.r&&(end=!0),rr=encode_row(R=row.r),opts["!row"]=row.r,(val2.hidden||val2.hpt||val2.level!=null)&&(val2.hpt&&(val2.hpx=pt2px(val2.hpt)),rowinfo[val2.r]=val2);break;case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:case 13:case 14:case 15:case 16:case 17:case 18:case 62:switch(p={t:val2[2]},val2[2]){case"n":p.v=val2[1];break;case"s":sstr=strs[val2[1]],p.v=sstr.t,p.r=sstr.r;break;case"b":p.v=!!val2[1];break;case"e":p.v=val2[1],opts.cellText!==!1&&(p.w=BErr[p.v]);break;case"str":p.t="s",p.v=val2[1];break;case"is":p.t="s",p.v=val2[1].t;break}if((cf=styles.CellXf[val2[0].iStyleRef])&&safe_format(p,cf.numFmtId,null,opts,themes,styles,date1904>0),C=val2[0].c==-1?C+1:val2[0].c,opts.dense?(s["!data"][R]||(s["!data"][R]=[]),s["!data"][R][C]=p):s[encode_col(C)+rr]=p,opts.cellFormula){for(af=!1,ai=0;ai<arrayf.length;++ai){var aii=arrayf[ai];row.r>=aii[0].s.r&&row.r<=aii[0].e.r&&C>=aii[0].s.c&&C<=aii[0].e.c&&(p.F=encode_range(aii[0]),af=!0)}!af&&val2.length>3&&(p.f=val2[3])}if(refguess.s.r>row.r&&(refguess.s.r=row.r),refguess.s.c>C&&(refguess.s.c=C),refguess.e.r<row.r&&(refguess.e.r=row.r),refguess.e.c<C&&(refguess.e.c=C),opts.cellDates&&cf&&p.t=="n"&&fmt_is_date(table_fmt[cf.numFmtId])){var _d=SSF_parse_date_code(p.v+date1904);_d&&(p.t="d",p.v=new Date(Date.UTC(_d.y,_d.m-1,_d.d,_d.H,_d.M,_d.S,_d.u)))}cm&&(cm.type=="XLDAPR"&&(p.D=!0),cm=void 0),vm&&(vm=void 0);break;case 1:case 12:if(!opts.sheetStubs||pass)break;p={t:"z",v:void 0},C=val2[0].c==-1?C+1:val2[0].c,opts.dense?(s["!data"][R]||(s["!data"][R]=[]),s["!data"][R][C]=p):s[encode_col(C)+rr]=p,refguess.s.r>row.r&&(refguess.s.r=row.r),refguess.s.c>C&&(refguess.s.c=C),refguess.e.r<row.r&&(refguess.e.r=row.r),refguess.e.c<C&&(refguess.e.c=C),cm&&(cm.type=="XLDAPR"&&(p.D=!0),cm=void 0),vm&&(vm=void 0);break;case 176:merges.push(val2);break;case 49:cm=((opts.xlmeta||{}).Cell||[])[val2-1];break;case 494:var rel=rels["!id"][val2.relId];for(rel?(val2.Target=rel.Target,val2.loc&&(val2.Target+="#"+val2.loc),val2.Rel=rel):val2.relId==""&&(val2.Target="#"+val2.loc),R=val2.rfx.s.r;R<=val2.rfx.e.r;++R)for(C=val2.rfx.s.c;C<=val2.rfx.e.c;++C)opts.dense?(s["!data"][R]||(s["!data"][R]=[]),s["!data"][R][C]||(s["!data"][R][C]={t:"z",v:void 0}),s["!data"][R][C].l=val2):(addr=encode_col(C)+encode_row(R),s[addr]||(s[addr]={t:"z",v:void 0}),s[addr].l=val2);break;case 426:if(!opts.cellFormula)break;arrayf.push(val2),cell2=opts.dense?s["!data"][R][C]:s[encode_col(C)+rr],cell2.f=stringify_formula(val2[1],refguess,{r:row.r,c:C},supbooks,opts),cell2.F=encode_range(val2[0]);break;case 427:if(!opts.cellFormula)break;sharedf[encode_cell(val2[0].s)]=val2[1],cell2=opts.dense?s["!data"][R][C]:s[encode_col(C)+rr],cell2.f=stringify_formula(val2[1],refguess,{r:row.r,c:C},supbooks,opts);break;case 60:if(!opts.cellStyles)break;for(;val2.e>=val2.s;)colinfo[val2.e--]={width:val2.w/256,hidden:!!(val2.flags&1),level:val2.level},seencol||(seencol=!0,find_mdw_colw(val2.w/256)),process_col(colinfo[val2.e+1]);break;case 551:val2&&(s["!legrel"]=val2);break;case 161:s["!autofilter"]={ref:encode_range(val2)};break;case 476:s["!margins"]=val2;break;case 147:wb.Sheets[idx]||(wb.Sheets[idx]={}),val2.name&&(wb.Sheets[idx].CodeName=val2.name),(val2.above||val2.left)&&(s["!outline"]={above:val2.above,left:val2.left});break;case 137:wb.Views||(wb.Views=[{}]),wb.Views[0]||(wb.Views[0]={}),val2.RTL&&(wb.Views[0].RTL=!0);break;case 485:break;case 64:case 1053:break;case 151:break;case 152:case 175:case 644:case 625:case 562:case 396:case 1112:case 1146:case 471:case 1050:case 649:case 1105:case 589:case 607:case 564:case 1055:case 168:case 174:case 1180:case 499:case 507:case 550:case 171:case 167:case 1177:case 169:case 1181:case 552:case 661:case 639:case 478:case 537:case 477:case 536:case 1103:case 680:case 1104:case 1024:case 663:case 535:case 678:case 504:case 1043:case 428:case 170:case 3072:case 50:case 2070:case 1045:break;case 35:pass=!0;break;case 36:pass=!1;break;case 37:state.push(RT),pass=!0;break;case 38:state.pop(),pass=!1;break;default:if(!RR.T){if(!pass||opts.WTF)throw new Error("Unexpected record 0x"+RT.toString(16))}}},opts),delete opts.supbooks,delete opts["!row"],!s["!ref"]&&(refguess.s.r<2e6||ref&&(ref.e.r>0||ref.e.c>0||ref.s.r>0||ref.s.c>0))&&(s["!ref"]=encode_range(ref||refguess)),opts.sheetRows&&s["!ref"]){var tmpref=safe_decode_range(s["!ref"]);opts.sheetRows<=+tmpref.e.r&&(tmpref.e.r=opts.sheetRows-1,tmpref.e.r>refguess.e.r&&(tmpref.e.r=refguess.e.r),tmpref.e.r<tmpref.s.r&&(tmpref.s.r=tmpref.e.r),tmpref.e.c>refguess.e.c&&(tmpref.e.c=refguess.e.c),tmpref.e.c<tmpref.s.c&&(tmpref.s.c=tmpref.e.c),s["!fullref"]=s["!ref"],s["!ref"]=encode_range(tmpref))}return merges.length>0&&(s["!merges"]=merges),colinfo.length>0&&(s["!cols"]=colinfo),rowinfo.length>0&&(s["!rows"]=rowinfo),rels["!id"][s["!legrel"]]&&(s["!legdrawel"]=rels["!id"][s["!legrel"]]),s}function write_ws_bin_cell(ba,cell2,R,C,opts,ws,last_seen,date1904){var o={r:R,c:C};if(cell2.c&&ws["!comments"].push([encode_cell(o),cell2.c]),cell2.v===void 0)return!1;var vv="";switch(cell2.t){case"b":vv=cell2.v?"1":"0";break;case"d":cell2=dup(cell2),cell2.z=cell2.z||table_fmt[14],cell2.v=datenum(parseDate(cell2.v,date1904),date1904),cell2.t="n";break;case"n":case"e":vv=""+cell2.v;break;default:vv=cell2.v;break}switch(o.s=get_cell_style(opts.cellXfs,cell2,opts),cell2.l&&ws["!links"].push([encode_cell(o),cell2.l]),cell2.t){case"s":case"str":return opts.bookSST?(vv=get_sst_id(opts.Strings,cell2.v==null?"":String(cell2.v),opts.revStrings),o.t="s",o.v=vv,last_seen?write_record(ba,18,write_BrtShortIsst(cell2,o)):write_record(ba,7,write_BrtCellIsst(cell2,o))):(o.t="str",last_seen?write_record(ba,17,write_BrtShortSt(cell2,o)):write_record(ba,6,write_BrtCellSt(cell2,o))),!0;case"n":return cell2.v==(cell2.v|0)&&cell2.v>-1e3&&cell2.v<1e3?last_seen?write_record(ba,13,write_BrtShortRk(cell2,o)):write_record(ba,2,write_BrtCellRk(cell2,o)):isFinite(cell2.v)?last_seen?write_record(ba,16,write_BrtShortReal(cell2,o)):write_record(ba,5,write_BrtCellReal(cell2,o)):(o.t="e",isNaN(cell2.v)?last_seen?write_record(ba,14,write_BrtShortError({t:"e",v:36},o)):write_record(ba,3,write_BrtCellError({t:"e",v:36},o)):last_seen?write_record(ba,14,write_BrtShortError({t:"e",v:7},o)):write_record(ba,3,write_BrtCellError({t:"e",v:7},o))),!0;case"b":return o.t="b",last_seen?write_record(ba,15,write_BrtShortBool(cell2,o)):write_record(ba,4,write_BrtCellBool(cell2,o)),!0;case"e":return o.t="e",last_seen?write_record(ba,14,write_BrtShortError(cell2,o)):write_record(ba,3,write_BrtCellError(cell2,o)),!0}return last_seen?write_record(ba,12,write_BrtShortBlank(cell2,o)):write_record(ba,1,write_BrtCellBlank(cell2,o)),!0}function write_CELLTABLE(ba,ws,idx,opts,wb){var range=safe_decode_range(ws["!ref"]||"A1"),rr="",cols=[],date1904=(((wb||{}).Workbook||{}).WBProps||{}).date1904;write_record(ba,145);var dense=ws["!data"]!=null,row=dense?ws["!data"][range.s.r]:[],cap=range.e.r;ws["!rows"]&&(cap=Math.max(range.e.r,ws["!rows"].length-1));for(var R=range.s.r;R<=cap;++R)if(rr=encode_row(R),dense&&(row=ws["!data"][R]),write_row_header(ba,ws,range,R),!(dense&&!row)){var last_seen=!1;if(R<=range.e.r)for(var C=range.s.c;C<=range.e.c;++C){R===range.s.r&&(cols[C]=encode_col(C));var cell2=dense?row[C]:ws[cols[C]+rr];if(!cell2){last_seen=!1;continue}last_seen=write_ws_bin_cell(ba,cell2,R,C,opts,ws,last_seen,date1904)}}write_record(ba,146)}function write_MERGECELLS(ba,ws){!ws||!ws["!merges"]||(write_record(ba,177,write_BrtBeginMergeCells(ws["!merges"].length)),ws["!merges"].forEach(function(m){write_record(ba,176,write_BrtMergeCell(m))}),write_record(ba,178))}function write_COLINFOS(ba,ws){!ws||!ws["!cols"]||(write_record(ba,390),ws["!cols"].forEach(function(m,i){m&&write_record(ba,60,write_BrtColInfo(i,m))}),write_record(ba,391))}function write_IGNOREECS(ba,ws){!ws||!ws["!ref"]||(write_record(ba,648),write_record(ba,649,write_BrtCellIgnoreEC(safe_decode_range(ws["!ref"]))),write_record(ba,650))}function write_HLINKS(ba,ws,rels){ws["!links"].forEach(function(l){if(l[1].Target){var rId=add_rels(rels,-1,l[1].Target.replace(/#[\s\S]*$/,""),RELS.HLINK);write_record(ba,494,write_BrtHLink(l,rId))}}),delete ws["!links"]}function write_LEGACYDRAWING(ba,ws,idx,rels){if(ws["!comments"].length>0){var rId=add_rels(rels,-1,"../drawings/vmlDrawing"+(idx+1)+".vml",RELS.VML);write_record(ba,551,write_RelID("rId"+rId)),ws["!legacy"]=rId}}function write_AUTOFILTER(ba,ws,wb,idx){if(ws["!autofilter"]){var data=ws["!autofilter"],ref=typeof data.ref=="string"?data.ref:encode_range(data.ref);wb.Workbook||(wb.Workbook={Sheets:[]}),wb.Workbook.Names||(wb.Workbook.Names=[]);var names=wb.Workbook.Names,range=decode_range(ref);range.s.r==range.e.r&&(range.e.r=decode_range(ws["!ref"]).e.r,ref=encode_range(range));for(var i=0;i<names.length;++i){var name=names[i];if(name.Name=="_xlnm._FilterDatabase"&&name.Sheet==idx){name.Ref=formula_quote_sheet_name(wb.SheetNames[idx])+"!"+fix_range(ref);break}}i==names.length&&names.push({Name:"_xlnm._FilterDatabase",Sheet:idx,Ref:formula_quote_sheet_name(wb.SheetNames[idx])+"!"+fix_range(ref)}),write_record(ba,161,write_UncheckedRfX(safe_decode_range(ref))),write_record(ba,162)}}function write_WSVIEWS2(ba,ws,Workbook){write_record(ba,133),write_record(ba,137,write_BrtBeginWsView(ws,Workbook)),write_record(ba,138),write_record(ba,134)}function write_SHEETPROTECT(ba,ws){ws["!protect"]&&write_record(ba,535,write_BrtSheetProtection(ws["!protect"]))}function write_ws_bin(idx,opts,wb,rels){var ba=buf_array(),s=wb.SheetNames[idx],ws=wb.Sheets[s]||{},c=s;try{wb&&wb.Workbook&&(c=wb.Workbook.Sheets[idx].CodeName||c)}catch{}var r=safe_decode_range(ws["!ref"]||"A1");if(r.e.c>16383||r.e.r>1048575){if(opts.WTF)throw new Error("Range "+(ws["!ref"]||"A1")+" exceeds format limit A1:XFD1048576");r.e.c=Math.min(r.e.c,16383),r.e.r=Math.min(r.e.c,1048575)}return ws["!links"]=[],ws["!comments"]=[],write_record(ba,129),(wb.vbaraw||ws["!outline"])&&write_record(ba,147,write_BrtWsProp(c,ws["!outline"])),write_record(ba,148,write_BrtWsDim(r)),write_WSVIEWS2(ba,ws,wb.Workbook),write_COLINFOS(ba,ws,idx,opts,wb),write_CELLTABLE(ba,ws,idx,opts,wb),write_SHEETPROTECT(ba,ws),write_AUTOFILTER(ba,ws,wb,idx),write_MERGECELLS(ba,ws),write_HLINKS(ba,ws,rels),ws["!margins"]&&write_record(ba,476,write_BrtMargins(ws["!margins"])),(!opts||opts.ignoreEC||opts.ignoreEC==null)&&write_IGNOREECS(ba,ws),write_LEGACYDRAWING(ba,ws,idx,rels),write_record(ba,130),ba.end()}function parse_Cache(data){var col=[],num=data.match(/^<c:numCache>/),f;(data.match(/<c:pt idx="(\d*)"[^<>\/]*><c:v>([^<])<\/c:v><\/c:pt>/mg)||[]).forEach(function(pt){var q=pt.match(/<c:pt idx="(\d*)"[^<>\/]*><c:v>([^<]*)<\/c:v><\/c:pt>/);q&&(col[+q[1]]=num?+q[2]:q[2])});var nf=unescapexml((str_match_xml(data,"c:formatCode")||["","General"])[1]);return(str_match_ng(data,"<c:f>","</c:f>")||[]).forEach(function(F){f=F.replace(/<[^<>]*>/g,"")}),[col,nf,f]}function parse_chart(data,name,opts,rels,wb,csheet){var cs=csheet||{"!type":"chart"};if(!data)return csheet;var C=0,R=0,col="A",refguess={s:{r:2e6,c:2e6},e:{r:0,c:0}};return(str_match_ng(data,"<c:numCache>","</c:numCache>")||[]).forEach(function(nc){var cache=parse_Cache(nc);refguess.s.r=refguess.s.c=0,refguess.e.c=C,col=encode_col(C),cache[0].forEach(function(n,i){cs["!data"]?(cs["!data"][i]||(cs["!data"][i]=[]),cs["!data"][i][C]={t:"n",v:n,z:cache[1]}):cs[col+encode_row(i)]={t:"n",v:n,z:cache[1]},R=i}),refguess.e.r<R&&(refguess.e.r=R),++C}),C>0&&(cs["!ref"]=encode_range(refguess)),cs}function parse_cs_xml(data,opts,idx,rels,wb){if(!data)return data;rels||(rels={"!id":{}});var s={"!type":"chart","!drawel":null,"!rel":""},m,sheetPr=data.match(sheetprregex);return sheetPr&&parse_ws_xml_sheetpr(sheetPr[0],s,wb,idx),(m=data.match(/drawing r:id="(.*?)"/))&&(s["!rel"]=m[1]),rels["!id"][s["!rel"]]&&(s["!drawel"]=rels["!id"][s["!rel"]]),s}function parse_BrtCsProp(data,length){data.l+=10;var name=parse_XLWideString(data,length-10);return{name}}function parse_cs_bin(data,opts,idx,rels,wb){if(!data)return data;rels||(rels={"!id":{}});var s={"!type":"chart","!drawel":null,"!rel":""},state=[],pass=!1;return recordhopper(data,function(val2,R,RT){switch(RT){case 550:s["!rel"]=val2;break;case 651:wb.Sheets[idx]||(wb.Sheets[idx]={}),val2.name&&(wb.Sheets[idx].CodeName=val2.name);break;case 562:case 652:case 669:case 679:case 551:case 552:case 476:case 3072:break;case 35:pass=!0;break;case 36:pass=!1;break;case 37:state.push(RT);break;case 38:state.pop();break;default:if(R.T>0)state.push(RT);else if(R.T<0)state.pop();else if(!pass||opts.WTF)throw new Error("Unexpected record 0x"+RT.toString(16))}},opts),rels["!id"][s["!rel"]]&&(s["!drawel"]=rels["!id"][s["!rel"]]),s}function push_defaults_array(target,defaults){for(var j=0;j!=target.length;++j)for(var w=target[j],i=0;i!=defaults.length;++i){var z=defaults[i];if(w[z[0]]==null)w[z[0]]=z[1];else switch(z[2]){case"bool":typeof w[z[0]]=="string"&&(w[z[0]]=parsexmlbool(w[z[0]]));break;case"int":typeof w[z[0]]=="string"&&(w[z[0]]=parseInt(w[z[0]],10));break}}}function push_defaults(target,defaults){for(var i=0;i!=defaults.length;++i){var z=defaults[i];if(target[z[0]]==null)target[z[0]]=z[1];else switch(z[2]){case"bool":typeof target[z[0]]=="string"&&(target[z[0]]=parsexmlbool(target[z[0]]));break;case"int":typeof target[z[0]]=="string"&&(target[z[0]]=parseInt(target[z[0]],10));break}}}function parse_wb_defaults(wb){push_defaults(wb.WBProps,WBPropsDef),push_defaults(wb.CalcPr,CalcPrDef),push_defaults_array(wb.WBView,WBViewDef),push_defaults_array(wb.Sheets,SheetDef),_ssfopts.date1904=parsexmlbool(wb.WBProps.date1904)}function safe1904(wb){return!wb.Workbook||!wb.Workbook.WBProps?"false":parsexmlbool(wb.Workbook.WBProps.date1904)?"true":"false"}function check_ws_name(n,safe){try{if(n=="")throw new Error("Sheet name cannot be blank");if(n.length>31)throw new Error("Sheet name cannot exceed 31 chars");if(n.charCodeAt(0)==39||n.charCodeAt(n.length-1)==39)throw new Error("Sheet name cannot start or end with apostrophe (')");if(n.toLowerCase()=="history")throw new Error("Sheet name cannot be 'History'");badchars.forEach(function(c){if(n.indexOf(c)!=-1)throw new Error("Sheet name cannot contain : \\ / ? * [ ]")})}catch(e){if(safe)return!1;throw e}return!0}function check_wb_names(N,S,codes){N.forEach(function(n,i){check_ws_name(n);for(var j=0;j<i;++j)if(n==N[j])throw new Error("Duplicate Sheet Name: "+n);if(codes){var cn=S&&S[i]&&S[i].CodeName||n;if(cn.charCodeAt(0)==95&&cn.length>22)throw new Error("Bad Code Name: Worksheet"+cn)}})}function check_wb(wb){if(!wb||!wb.SheetNames||!wb.Sheets)throw new Error("Invalid Workbook");if(!wb.SheetNames.length)throw new Error("Workbook is empty");var Sheets=wb.Workbook&&wb.Workbook.Sheets||[];check_wb_names(wb.SheetNames,Sheets,!!wb.vbaraw);for(var i=0;i<wb.SheetNames.length;++i)check_ws(wb.Sheets[wb.SheetNames[i]],wb.SheetNames[i],i);wb.SheetNames.forEach(function(n,i2){var ws=wb.Sheets[n];if(!(!ws||!ws["!autofilter"])){var DN;wb.Workbook||(wb.Workbook={}),wb.Workbook.Names||(wb.Workbook.Names=[]),wb.Workbook.Names.forEach(function(dn){dn.Name=="_xlnm._FilterDatabase"&&dn.Sheet==i2&&(DN=dn)});var nn=formula_quote_sheet_name(n)+"!"+fix_range(ws["!autofilter"].ref);DN?DN.Ref=nn:wb.Workbook.Names.push({Name:"_xlnm._FilterDatabase",Sheet:i2,Ref:nn})}})}function parse_wb_xml(data,opts){if(!data)throw new Error("Could not find file");var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},Names:[],xmlns:""},pass=!1,xmlns="xmlns",dname={},dnstart=0;if(data.replace(tagregex,function(x,idx){var y=parsexmltag(x);switch(strip_ns(y[0])){case"<?xml":break;case"<workbook":x.match(wbnsregex)&&(xmlns="xmlns"+x.match(/<(\w+):/)[1]),wb.xmlns=y[xmlns];break;case"</workbook>":break;case"<fileVersion":delete y[0],wb.AppVersion=y;break;case"<fileVersion/>":case"</fileVersion>":break;case"<fileSharing":break;case"<fileSharing/>":break;case"<workbookPr":case"<workbookPr/>":WBPropsDef.forEach(function(w){if(y[w[0]]!=null)switch(w[2]){case"bool":wb.WBProps[w[0]]=parsexmlbool(y[w[0]]);break;case"int":wb.WBProps[w[0]]=parseInt(y[w[0]],10);break;default:wb.WBProps[w[0]]=y[w[0]]}}),y.codeName&&(wb.WBProps.CodeName=utf8read(y.codeName));break;case"</workbookPr>":break;case"<workbookProtection":break;case"<workbookProtection/>":break;case"<bookViews":case"<bookViews>":case"</bookViews>":break;case"<workbookView":case"<workbookView/>":delete y[0],wb.WBView.push(y);break;case"</workbookView>":break;case"<sheets":case"<sheets>":case"</sheets>":break;case"<sheet":switch(y.state){case"hidden":y.Hidden=1;break;case"veryHidden":y.Hidden=2;break;default:y.Hidden=0}delete y.state,y.name=unescapexml(utf8read(y.name)),delete y[0],wb.Sheets.push(y);break;case"</sheet>":break;case"<functionGroups":case"<functionGroups/>":break;case"<functionGroup":break;case"<externalReferences":case"</externalReferences>":case"<externalReferences>":break;case"<externalReference":break;case"<definedNames/>":break;case"<definedNames>":case"<definedNames":pass=!0;break;case"</definedNames>":pass=!1;break;case"<definedName":dname={},dname.Name=utf8read(y.name),y.comment&&(dname.Comment=y.comment),y.localSheetId&&(dname.Sheet=+y.localSheetId),parsexmlbool(y.hidden||"0")&&(dname.Hidden=!0),dnstart=idx+x.length;break;case"</definedName>":dname.Ref=unescapexml(utf8read(data.slice(dnstart,idx))),wb.Names.push(dname);break;case"<definedName/>":break;case"<calcPr":delete y[0],wb.CalcPr=y;break;case"<calcPr/>":delete y[0],wb.CalcPr=y;break;case"</calcPr>":break;case"<oleSize":break;case"<customWorkbookViews>":case"</customWorkbookViews>":case"<customWorkbookViews":break;case"<customWorkbookView":case"</customWorkbookView>":break;case"<pivotCaches>":case"</pivotCaches>":case"<pivotCaches":break;case"<pivotCache":break;case"<smartTagPr":case"<smartTagPr/>":break;case"<smartTagTypes":case"<smartTagTypes>":case"</smartTagTypes>":break;case"<smartTagType":break;case"<webPublishing":case"<webPublishing/>":break;case"<fileRecoveryPr":case"<fileRecoveryPr/>":break;case"<webPublishObjects>":case"<webPublishObjects":case"</webPublishObjects>":break;case"<webPublishObject":break;case"<extLst":case"<extLst>":case"</extLst>":case"<extLst/>":break;case"<ext":pass=!0;break;case"</ext>":pass=!1;break;case"<ArchID":break;case"<AlternateContent":case"<AlternateContent>":pass=!0;break;case"</AlternateContent>":pass=!1;break;case"<revisionPtr":break;default:if(!pass&&opts.WTF)throw new Error("unrecognized "+y[0]+" in workbook")}return x}),XMLNS_main.indexOf(wb.xmlns)===-1)throw new Error("Unknown Namespace: "+wb.xmlns);return parse_wb_defaults(wb),wb}function write_wb_xml(wb){var o=[XML_HEADER];o[o.length]=writextag("workbook",null,{xmlns:XMLNS_main[0],"xmlns:r":XMLNS.r});var write_names=wb.Workbook&&(wb.Workbook.Names||[]).length>0,workbookPr={codeName:"ThisWorkbook"};wb.Workbook&&wb.Workbook.WBProps&&(WBPropsDef.forEach(function(x){wb.Workbook.WBProps[x[0]]!=null&&wb.Workbook.WBProps[x[0]]!=x[1]&&(workbookPr[x[0]]=wb.Workbook.WBProps[x[0]])}),wb.Workbook.WBProps.CodeName&&(workbookPr.codeName=wb.Workbook.WBProps.CodeName,delete workbookPr.CodeName)),o[o.length]=writextag("workbookPr",null,workbookPr);var sheets=wb.Workbook&&wb.Workbook.Sheets||[],i=0;if(sheets&&sheets[0]&&sheets[0].Hidden){for(o[o.length]="<bookViews>",i=0;i!=wb.SheetNames.length&&!(!sheets[i]||!sheets[i].Hidden);++i);i==wb.SheetNames.length&&(i=0),o[o.length]='<workbookView firstSheet="'+i+'" activeTab="'+i+'"/>',o[o.length]="</bookViews>"}for(o[o.length]="<sheets>",i=0;i!=wb.SheetNames.length;++i){var sht={name:escapexml(wb.SheetNames[i].slice(0,31))};if(sht.sheetId=""+(i+1),sht["r:id"]="rId"+(i+1),sheets[i])switch(sheets[i].Hidden){case 1:sht.state="hidden";break;case 2:sht.state="veryHidden";break}o[o.length]=writextag("sheet",null,sht)}return o[o.length]="</sheets>",write_names&&(o[o.length]="<definedNames>",wb.Workbook&&wb.Workbook.Names&&wb.Workbook.Names.forEach(function(n){var d={name:n.Name};n.Comment&&(d.comment=n.Comment),n.Sheet!=null&&(d.localSheetId=""+n.Sheet),n.Hidden&&(d.hidden="1"),n.Ref&&(o[o.length]=writextag("definedName",escapexml(n.Ref),d))}),o[o.length]="</definedNames>"),o.length>2&&(o[o.length]="</workbook>",o[1]=o[1].replace("/>",">")),o.join("")}function parse_BrtBundleSh(data,length){var z={};return z.Hidden=data.read_shift(4),z.iTabID=data.read_shift(4),z.strRelID=parse_RelID(data,length-8),z.name=parse_XLWideString(data),z}function write_BrtBundleSh(data,o){return o||(o=new_buf(127)),o.write_shift(4,data.Hidden),o.write_shift(4,data.iTabID),write_RelID(data.strRelID,o),write_XLWideString(data.name.slice(0,31),o),o.length>o.l?o.slice(0,o.l):o}function parse_BrtWbProp(data,length){var o={},flags=data.read_shift(4);o.defaultThemeVersion=data.read_shift(4);var strName=length>8?parse_XLWideString(data):"";return strName.length>0&&(o.CodeName=strName),o.autoCompressPictures=!!(flags&65536),o.backupFile=!!(flags&64),o.checkCompatibility=!!(flags&4096),o.date1904=!!(flags&1),o.filterPrivacy=!!(flags&8),o.hidePivotFieldList=!!(flags&1024),o.promptedSolutions=!!(flags&16),o.publishItems=!!(flags&2048),o.refreshAllConnections=!!(flags&262144),o.saveExternalLinkValues=!!(flags&128),o.showBorderUnselectedTables=!!(flags&4),o.showInkAnnotation=!!(flags&32),o.showObjects=["all","placeholders","none"][flags>>13&3],o.showPivotChartFilter=!!(flags&32768),o.updateLinks=["userSet","never","always"][flags>>8&3],o}function write_BrtWbProp(data,o){o||(o=new_buf(72));var flags=0;return data&&(data.date1904&&(flags|=1),data.filterPrivacy&&(flags|=8)),o.write_shift(4,flags),o.write_shift(4,0),write_XLSBCodeName(data&&data.CodeName||"ThisWorkbook",o),o.slice(0,o.l)}function parse_BrtFRTArchID$(data,length){var o={};return data.read_shift(4),o.ArchID=data.read_shift(4),data.l+=length-8,o}function parse_BrtName(data,length,opts){var end=data.l+length,flags=data.read_shift(4);data.l+=1;var itab=data.read_shift(4),name=parse_XLNameWideString(data),formula,comment="";try{formula=parse_XLSBNameParsedFormula(data,0,opts);try{comment=parse_XLNullableWideString(data)}catch{}}catch{console.error("Could not parse defined name "+name)}flags&32&&(name="_xlnm."+name),data.l=end;var out={Name:name,Ptg:formula,Flags:flags};return itab<268435455&&(out.Sheet=itab),comment&&(out.Comment=comment),out}function write_BrtName(name,wb){var o=new_buf(9),flags=0,dname=name.Name;XLSLblBuiltIn.indexOf(dname)>-1&&(flags|=32,dname=dname.slice(6)),o.write_shift(4,flags),o.write_shift(1,0),o.write_shift(4,name.Sheet==null?4294967295:name.Sheet);var arr=[o,write_XLWideString(dname),write_XLSBNameParsedFormula(name.Ref,wb)];if(name.Comment)arr.push(write_XLNullableWideString(name.Comment));else{var x=new_buf(4);x.write_shift(4,4294967295),arr.push(x)}return bconcat(arr)}function parse_wb_bin(data,opts){var wb={AppVersion:{},WBProps:{},WBView:[],Sheets:[],CalcPr:{},xmlns:""},state=[],pass=!1;opts||(opts={}),opts.biff=12;var Names=[],supbooks=[[]];return supbooks.SheetNames=[],supbooks.XTI=[],XLSBRecordEnum[16]={n:"BrtFRTArchID$",f:parse_BrtFRTArchID$},recordhopper(data,function(val2,R,RT){switch(RT){case 156:supbooks.SheetNames.push(val2.name),wb.Sheets.push(val2);break;case 153:wb.WBProps=val2;break;case 39:val2.Sheet!=null&&(opts.SID=val2.Sheet),val2.Ref=val2.Ptg?stringify_formula(val2.Ptg,null,null,supbooks,opts):"#REF!",delete opts.SID,delete val2.Ptg,Names.push(val2);break;case 1036:break;case 357:case 358:case 355:case 667:supbooks[0].length?supbooks.push([RT,val2]):supbooks[0]=[RT,val2],supbooks[supbooks.length-1].XTI=[];break;case 362:supbooks.length===0&&(supbooks[0]=[],supbooks[0].XTI=[]),supbooks[supbooks.length-1].XTI=supbooks[supbooks.length-1].XTI.concat(val2),supbooks.XTI=supbooks.XTI.concat(val2);break;case 361:break;case 2071:case 158:case 143:case 664:case 353:break;case 3072:case 3073:case 534:case 677:case 157:case 610:case 2050:case 155:case 548:case 676:case 128:case 665:case 2128:case 2125:case 549:case 2053:case 596:case 2076:case 2075:case 2082:case 397:case 154:case 1117:case 553:case 2091:break;case 35:state.push(RT),pass=!0;break;case 36:state.pop(),pass=!1;break;case 37:state.push(RT),pass=!0;break;case 38:state.pop(),pass=!1;break;case 16:break;default:if(!R.T){if(!pass||opts.WTF&&state[state.length-1]!=37&&state[state.length-1]!=35)throw new Error("Unexpected record 0x"+RT.toString(16))}}},opts),parse_wb_defaults(wb),wb.Names=Names,wb.supbooks=supbooks,wb}function write_BUNDLESHS(ba,wb){write_record(ba,143);for(var idx=0;idx!=wb.SheetNames.length;++idx){var viz=wb.Workbook&&wb.Workbook.Sheets&&wb.Workbook.Sheets[idx]&&wb.Workbook.Sheets[idx].Hidden||0,d={Hidden:viz,iTabID:idx+1,strRelID:"rId"+(idx+1),name:wb.SheetNames[idx]};write_record(ba,156,write_BrtBundleSh(d))}write_record(ba,144)}function write_BrtFileVersion(data,o){o||(o=new_buf(127));for(var i=0;i!=4;++i)o.write_shift(4,0);return write_XLWideString("SheetJS",o),write_XLWideString(XLSX.version,o),write_XLWideString(XLSX.version,o),write_XLWideString("7262",o),o.length>o.l?o.slice(0,o.l):o}function write_BrtBookView(idx,o){o||(o=new_buf(29)),o.write_shift(-4,0),o.write_shift(-4,460),o.write_shift(4,28800),o.write_shift(4,17600),o.write_shift(4,500),o.write_shift(4,idx),o.write_shift(4,idx);var flags=120;return o.write_shift(1,flags),o.length>o.l?o.slice(0,o.l):o}function write_BOOKVIEWS(ba,wb){if(!(!wb.Workbook||!wb.Workbook.Sheets)){for(var sheets=wb.Workbook.Sheets,i=0,vistab=-1,hidden=-1;i<sheets.length;++i)!sheets[i]||!sheets[i].Hidden&&vistab==-1?vistab=i:sheets[i].Hidden==1&&hidden==-1&&(hidden=i);hidden>vistab||(write_record(ba,135),write_record(ba,158,write_BrtBookView(vistab)),write_record(ba,136))}}function write_BRTNAMES(ba,wb){!wb.Workbook||!wb.Workbook.Names||wb.Workbook.Names.forEach(function(name){try{if(name.Flags&14)return;write_record(ba,39,write_BrtName(name,wb))}catch{console.error("Could not serialize defined name "+JSON.stringify(name))}})}function write_SELF_EXTERNS_xlsb(wb){var L=wb.SheetNames.length,o=new_buf(12*L+28);o.write_shift(4,L+2),o.write_shift(4,0),o.write_shift(4,-2),o.write_shift(4,-2),o.write_shift(4,0),o.write_shift(4,-1),o.write_shift(4,-1);for(var i=0;i<L;++i)o.write_shift(4,0),o.write_shift(4,i),o.write_shift(4,i);return o}function write_EXTERNALS_xlsb(ba,wb){write_record(ba,353),write_record(ba,357),write_record(ba,362,write_SELF_EXTERNS_xlsb(wb,0)),write_record(ba,354)}function write_wb_bin(wb,opts){var ba=buf_array();return write_record(ba,131),write_record(ba,128,write_BrtFileVersion()),write_record(ba,153,write_BrtWbProp(wb.Workbook&&wb.Workbook.WBProps||null)),write_BOOKVIEWS(ba,wb,opts),write_BUNDLESHS(ba,wb,opts),write_EXTERNALS_xlsb(ba,wb),(wb.Workbook||{}).Names&&write_BRTNAMES(ba,wb),write_record(ba,132),ba.end()}function parse_wb(data,name,opts){return name.slice(-4)===".bin"?parse_wb_bin(data,opts):parse_wb_xml(data,opts)}function parse_ws(data,name,idx,opts,rels,wb,themes,styles){return name.slice(-4)===".bin"?parse_ws_bin(data,opts,idx,rels,wb,themes,styles):parse_ws_xml(data,opts,idx,rels,wb,themes,styles)}function parse_cs(data,name,idx,opts,rels,wb,themes,styles){return name.slice(-4)===".bin"?parse_cs_bin(data,opts,idx,rels,wb,themes,styles):parse_cs_xml(data,opts,idx,rels,wb,themes,styles)}function parse_ms(data,name,idx,opts,rels,wb,themes,styles){return name.slice(-4)===".bin"?parse_ms_bin(data,opts,idx,rels,wb,themes,styles):parse_ms_xml(data,opts,idx,rels,wb,themes,styles)}function parse_ds(data,name,idx,opts,rels,wb,themes,styles){return name.slice(-4)===".bin"?parse_ds_bin(data,opts,idx,rels,wb,themes,styles):parse_ds_xml(data,opts,idx,rels,wb,themes,styles)}function parse_sty(data,name,themes,opts){return name.slice(-4)===".bin"?parse_sty_bin(data,themes,opts):parse_sty_xml(data,themes,opts)}function parse_sst(data,name,opts){return name.slice(-4)===".bin"?parse_sst_bin(data,opts):parse_sst_xml(data,opts)}function parse_cmnt(data,name,opts){return name.slice(-4)===".bin"?parse_comments_bin(data,opts):parse_comments_xml(data,opts)}function parse_cc(data,name,opts){return name.slice(-4)===".bin"?parse_cc_bin(data,name,opts):parse_cc_xml(data,name,opts)}function parse_xlink(data,rel,name,opts){return name.slice(-4)===".bin"?parse_xlink_bin(data,rel,name,opts):void 0}function parse_xlmeta(data,name,opts){return name.slice(-4)===".bin"?parse_xlmeta_bin(data,name,opts):parse_xlmeta_xml(data,name,opts)}function xlml_parsexmltag(tag,skip_root){var words=tag.split(/\s+/),z=[];if(skip_root||(z[0]=words[0]),words.length===1)return z;var m=tag.match(attregexg2),y,j,w,i;if(m)for(i=0;i!=m.length;++i)y=m[i].match(attregex2),(j=y[1].indexOf(":"))===-1?z[y[1]]=y[2].slice(1,y[2].length-1):(y[1].slice(0,6)==="xmlns:"?w="xmlns"+y[1].slice(6):w=y[1].slice(j+1),z[w]=y[2].slice(1,y[2].length-1));return z}function xlml_parsexmltagobj(tag){var words=tag.split(/\s+/),z={};if(words.length===1)return z;var m=tag.match(attregexg2),y,j,w,i;if(m)for(i=0;i!=m.length;++i)y=m[i].match(attregex2),(j=y[1].indexOf(":"))===-1?z[y[1]]=y[2].slice(1,y[2].length-1):(y[1].slice(0,6)==="xmlns:"?w="xmlns"+y[1].slice(6):w=y[1].slice(j+1),z[w]=y[2].slice(1,y[2].length-1));return z}function xlml_format(format,value,date1904){var fmt=XLMLFormatMap[format]||unescapexml(format);return fmt==="General"?SSF_general(value):SSF_format(fmt,value,{date1904:!!date1904})}function xlml_set_custprop(Custprops,key,cp,val2){var oval=val2;switch((cp[0].match(/dt:dt="([\w.]+)"/)||["",""])[1]){case"boolean":oval=parsexmlbool(val2);break;case"i2":case"int":oval=parseInt(val2,10);break;case"r4":case"float":oval=parseFloat(val2);break;case"date":case"dateTime.tz":oval=parseDate(val2);break;case"i8":case"string":case"fixed":case"uuid":case"bin.base64":break;default:throw new Error("bad custprop:"+cp[0])}Custprops[unescapexml(key)]=oval}function safe_format_xlml(cell2,nf,o,date1904){if(cell2.t!=="z"){if(!o||o.cellText!==!1)try{cell2.t==="e"?cell2.w=cell2.w||BErr[cell2.v]:nf==="General"?cell2.t==="n"?(cell2.v|0)===cell2.v?cell2.w=cell2.v.toString(10):cell2.w=SSF_general_num(cell2.v):cell2.w=SSF_general(cell2.v):cell2.w=xlml_format(nf||"General",cell2.v,date1904)}catch(e){if(o.WTF)throw e}try{var z=XLMLFormatMap[nf]||nf||"General";if(o.cellNF&&(cell2.z=z),o.cellDates&&cell2.t=="n"&&fmt_is_date(z)){var _d=SSF_parse_date_code(cell2.v+(date1904?1462:0));_d&&(cell2.t="d",cell2.v=new Date(Date.UTC(_d.y,_d.m-1,_d.d,_d.H,_d.M,_d.S,_d.u)))}}catch(e){if(o.WTF)throw e}}}function process_style_xlml(styles,stag,opts){if(opts.cellStyles&&stag.Interior){var I=stag.Interior;I.Pattern&&(I.patternType=XLMLPatternTypeMap[I.Pattern]||I.Pattern)}styles[stag.ID]=stag}function parse_xlml_data(xml,ss,data,cell2,base,styles,csty,row,arrayf,o,date1904){var nf="General",sid=cell2.StyleID,S={};o=o||{};var interiors=[],i=0;for(sid===void 0&&row&&(sid=row.StyleID),sid===void 0&&csty&&(sid=csty.StyleID);styles[sid]!==void 0;){var ssid=styles[sid];if(ssid.nf&&(nf=ssid.nf),ssid.Interior&&interiors.push(ssid.Interior),!ssid.Parent)break;sid=ssid.Parent}switch(data.Type){case"Boolean":cell2.t="b",cell2.v=parsexmlbool(xml);break;case"String":cell2.t="s",cell2.r=xlml_fixstr(unescapexml(xml)),cell2.v=xml.indexOf("<")>-1?unescapexml(ss||xml).replace(/<[^<>]*>/g,""):cell2.r;break;case"DateTime":xml.slice(-1)!="Z"&&(xml+="Z"),cell2.v=datenum(parseDate(xml,date1904),date1904),cell2.v!==cell2.v&&(cell2.v=unescapexml(xml)),(!nf||nf=="General")&&(nf="yyyy-mm-dd");case"Number":cell2.v===void 0&&(cell2.v=+xml),cell2.t||(cell2.t="n");break;case"Error":cell2.t="e",cell2.v=RBErr[xml],o.cellText!==!1&&(cell2.w=xml);break;default:xml==""&&ss==""?cell2.t="z":(cell2.t="s",cell2.v=xlml_fixstr(ss||xml));break}if(safe_format_xlml(cell2,nf,o,date1904),o.cellFormula!==!1)if(cell2.Formula){var fstr=unescapexml(cell2.Formula);fstr.charCodeAt(0)==61&&(fstr=fstr.slice(1)),cell2.f=rc_to_a1(fstr,base),delete cell2.Formula,cell2.ArrayRange=="RC"?cell2.F=rc_to_a1("RC:RC",base):cell2.ArrayRange&&(cell2.F=rc_to_a1(cell2.ArrayRange,base),arrayf.push([safe_decode_range(cell2.F),cell2.F]))}else for(i=0;i<arrayf.length;++i)base.r>=arrayf[i][0].s.r&&base.r<=arrayf[i][0].e.r&&base.c>=arrayf[i][0].s.c&&base.c<=arrayf[i][0].e.c&&(cell2.F=arrayf[i][1]);o.cellStyles&&(interiors.forEach(function(x){!S.patternType&&x.patternType&&(S.patternType=x.patternType)}),cell2.s=S),cell2.StyleID!==void 0&&(cell2.ixfe=cell2.StyleID)}function xlml_prefix_dname(dname){return XLSLblBuiltIn.indexOf("_xlnm."+dname)>-1?"_xlnm."+dname:dname}function xlml_clean_comment(comment){comment.t=comment.v||"",comment.t=comment.t.replace(/\r\n/g,`
|
|
39
|
-
`).replace(/\r/g,`
|
|
40
|
-
`),comment.v=comment.w=comment.ixfe=void 0}function parse_xlml_xml(d,_opts){var opts=_opts||{};make_ssf();var str=debom(xlml_normalize(d));(opts.type=="binary"||opts.type=="array"||opts.type=="base64")&&(typeof $cptable<"u"?str=$cptable.utils.decode(65001,char_codes(str)):str=utf8read(str));var opening=str.slice(0,1024).toLowerCase(),ishtml=!1;if(opening=opening.replace(/".*?"/g,""),(opening.indexOf(">")&1023)>Math.min(opening.indexOf(",")&1023,opening.indexOf(";")&1023)){var _o=dup(opts);return _o.type="string",PRN.to_workbook(str,_o)}if(opening.indexOf("<?xml")==-1&&["html","table","head","meta","script","style","div"].forEach(function(tag){opening.indexOf("<"+tag)>=0&&(ishtml=!0)}),ishtml)return html_to_workbook(str,opts);XLMLFormatMap={"General Number":"General","General Date":table_fmt[22],"Long Date":"dddd, mmmm dd, yyyy","Medium Date":table_fmt[15],"Short Date":table_fmt[14],"Long Time":table_fmt[19],"Medium Time":table_fmt[18],"Short Time":table_fmt[20],Currency:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',Fixed:table_fmt[2],Standard:table_fmt[4],Percent:table_fmt[10],Scientific:table_fmt[11],"Yes/No":'"Yes";"Yes";"No";@',"True/False":'"True";"True";"False";@',"On/Off":'"Yes";"Yes";"No";@'};var Rn,state=[],tmp;DENSE!=null&&opts.dense==null&&(opts.dense=DENSE);var sheets={},sheetnames=[],cursheet={},sheetname="";opts.dense&&(cursheet["!data"]=[]);var cell2={},row={},dtag=xlml_parsexmltag('<Data ss:Type="String">'),didx=0,c=0,r=0,refguess={s:{r:2e6,c:2e6},e:{r:0,c:0}},styles={},stag={},ss="",fidx=0,merges=[],Props={},Custprops={},pidx=0,cp=[],comments=[],comment={},cstys=[],csty,seencol=!1,arrayf=[],rowinfo=[],rowobj={},cc=0,rr=0,Workbook={Sheets:[],WBProps:{date1904:!1}},wsprops={};xlmlregex.lastIndex=0,str=str_remove_ng(str,"<!--","-->");for(var raw_Rn3="";Rn=xlmlregex.exec(str);)switch(Rn[3]=(raw_Rn3=Rn[3]).toLowerCase()){case"data":if(raw_Rn3=="data"){if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw new Error("Bad state: "+tmp.join("|"))}else Rn[0].charAt(Rn[0].length-2)!=="/"&&state.push([Rn[3],!0]);break}if(state[state.length-1][1])break;Rn[1]==="/"?parse_xlml_data(str.slice(didx,Rn.index),ss,dtag,state[state.length-1][0]=="comment"?comment:cell2,{c,r},styles,cstys[c],row,arrayf,opts,Workbook.WBProps.date1904):(ss="",dtag=xlml_parsexmltag(Rn[0]),didx=Rn.index+Rn[0].length);break;case"cell":if(Rn[1]==="/")if(comments.length>0&&(cell2.c=comments),(!opts.sheetRows||opts.sheetRows>r)&&cell2.v!==void 0&&(opts.dense?(cursheet["!data"][r]||(cursheet["!data"][r]=[]),cursheet["!data"][r][c]=cell2):cursheet[encode_col(c)+encode_row(r)]=cell2),cell2.HRef&&(cell2.l={Target:unescapexml(cell2.HRef)},cell2.HRefScreenTip&&(cell2.l.Tooltip=cell2.HRefScreenTip),delete cell2.HRef,delete cell2.HRefScreenTip),(cell2.MergeAcross||cell2.MergeDown)&&(cc=c+(parseInt(cell2.MergeAcross,10)|0),rr=r+(parseInt(cell2.MergeDown,10)|0),(cc>c||rr>r)&&merges.push({s:{c,r},e:{c:cc,r:rr}})),!opts.sheetStubs)cell2.MergeAcross?c=cc+1:++c;else if(cell2.MergeAcross||cell2.MergeDown){for(var cma=c;cma<=cc;++cma)for(var cmd=r;cmd<=rr;++cmd)(cma>c||cmd>r)&&(opts.dense?(cursheet["!data"][cmd]||(cursheet["!data"][cmd]=[]),cursheet["!data"][cmd][cma]={t:"z"}):cursheet[encode_col(cma)+encode_row(cmd)]={t:"z"});c=cc+1}else++c;else cell2=xlml_parsexmltagobj(Rn[0]),cell2.Index&&(c=+cell2.Index-1),c<refguess.s.c&&(refguess.s.c=c),c>refguess.e.c&&(refguess.e.c=c),Rn[0].slice(-2)==="/>"&&++c,comments=[];break;case"row":Rn[1]==="/"||Rn[0].slice(-2)==="/>"?(r<refguess.s.r&&(refguess.s.r=r),r>refguess.e.r&&(refguess.e.r=r),Rn[0].slice(-2)==="/>"&&(row=xlml_parsexmltag(Rn[0]),row.Index&&(r=+row.Index-1)),c=0,++r):(row=xlml_parsexmltag(Rn[0]),row.Index&&(r=+row.Index-1),rowobj={},(row.AutoFitHeight=="0"||row.Height)&&(rowobj.hpx=parseInt(row.Height,10),rowobj.hpt=px2pt(rowobj.hpx),rowinfo[r]=rowobj),row.Hidden=="1"&&(rowobj.hidden=!0,rowinfo[r]=rowobj));break;case"worksheet":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw new Error("Bad state: "+tmp.join("|"));sheetnames.push(sheetname),refguess.s.r<=refguess.e.r&&refguess.s.c<=refguess.e.c&&(cursheet["!ref"]=encode_range(refguess),opts.sheetRows&&opts.sheetRows<=refguess.e.r&&(cursheet["!fullref"]=cursheet["!ref"],refguess.e.r=opts.sheetRows-1,cursheet["!ref"]=encode_range(refguess))),merges.length&&(cursheet["!merges"]=merges),cstys.length>0&&(cursheet["!cols"]=cstys),rowinfo.length>0&&(cursheet["!rows"]=rowinfo),sheets[sheetname]=cursheet}else refguess={s:{r:2e6,c:2e6},e:{r:0,c:0}},r=c=0,state.push([Rn[3],!1]),tmp=xlml_parsexmltag(Rn[0]),sheetname=unescapexml(tmp.Name),cursheet={},opts.dense&&(cursheet["!data"]=[]),merges=[],arrayf=[],rowinfo=[],wsprops={name:sheetname,Hidden:0},Workbook.Sheets.push(wsprops);break;case"table":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw new Error("Bad state: "+tmp.join("|"))}else{if(Rn[0].slice(-2)=="/>")break;state.push([Rn[3],!1]),cstys=[],seencol=!1}break;case"style":Rn[1]==="/"?process_style_xlml(styles,stag,opts):stag=xlml_parsexmltag(Rn[0]);break;case"numberformat":stag.nf=unescapexml(xlml_parsexmltag(Rn[0]).Format||"General"),XLMLFormatMap[stag.nf]&&(stag.nf=XLMLFormatMap[stag.nf]);for(var ssfidx=0;ssfidx!=392&&table_fmt[ssfidx]!=stag.nf;++ssfidx);if(ssfidx==392){for(ssfidx=57;ssfidx!=392;++ssfidx)if(table_fmt[ssfidx]==null){SSF__load(stag.nf,ssfidx);break}}break;case"column":if(state[state.length-1][0]!=="table"||Rn[1]==="/")break;if(csty=xlml_parsexmltag(Rn[0]),csty.Hidden&&(csty.hidden=!0,delete csty.Hidden),csty.Width&&(csty.wpx=parseInt(csty.Width,10)),!seencol&&csty.wpx>10){seencol=!0,MDW=DEF_MDW;for(var _col=0;_col<cstys.length;++_col)cstys[_col]&&process_col(cstys[_col])}seencol&&process_col(csty),cstys[csty.Index-1||cstys.length]=csty;for(var i=0;i<+csty.Span;++i)cstys[cstys.length]=dup(csty);break;case"namedrange":if(Rn[1]==="/")break;Workbook.Names||(Workbook.Names=[]);var _NamedRange=parsexmltag(Rn[0]),_DefinedName={Name:xlml_prefix_dname(_NamedRange.Name),Ref:rc_to_a1(_NamedRange.RefersTo.slice(1),{r:0,c:0})};Workbook.Sheets.length>0&&(_DefinedName.Sheet=Workbook.Sheets.length-1),Workbook.Names.push(_DefinedName);break;case"namedcell":break;case"b":break;case"i":break;case"u":break;case"s":break;case"em":break;case"h2":break;case"h3":break;case"sub":break;case"sup":break;case"span":break;case"alignment":break;case"borders":break;case"border":break;case"font":if(Rn[0].slice(-2)==="/>")break;Rn[1]==="/"?ss+=str.slice(fidx,Rn.index):fidx=Rn.index+Rn[0].length;break;case"interior":if(!opts.cellStyles)break;stag.Interior=xlml_parsexmltag(Rn[0]);break;case"protection":break;case"author":case"title":case"description":case"created":case"keywords":case"subject":case"category":case"company":case"lastauthor":case"lastsaved":case"lastprinted":case"version":case"revision":case"totaltime":case"hyperlinkbase":case"manager":case"contentstatus":case"identifier":case"language":case"appname":if(Rn[0].slice(-2)==="/>")break;Rn[1]==="/"?xlml_set_prop(Props,raw_Rn3,str.slice(pidx,Rn.index)):pidx=Rn.index+Rn[0].length;break;case"paragraphs":break;case"styles":case"workbook":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw new Error("Bad state: "+tmp.join("|"))}else state.push([Rn[3],!1]);break;case"comment":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw new Error("Bad state: "+tmp.join("|"));xlml_clean_comment(comment),comments.push(comment)}else state.push([Rn[3],!1]),tmp=xlml_parsexmltag(Rn[0]),parsexmlbool(tmp.ShowAlways||"0")||(comments.hidden=!0),comment={a:tmp.Author};break;case"autofilter":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw new Error("Bad state: "+tmp.join("|"))}else if(Rn[0].charAt(Rn[0].length-2)!=="/"){var AutoFilter=xlml_parsexmltag(Rn[0]);cursheet["!autofilter"]={ref:rc_to_a1(AutoFilter.Range).replace(/\$/g,"")},state.push([Rn[3],!0])}break;case"name":break;case"datavalidation":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw new Error("Bad state: "+tmp.join("|"))}else Rn[0].charAt(Rn[0].length-2)!=="/"&&state.push([Rn[3],!0]);break;case"pixelsperinch":break;case"componentoptions":case"documentproperties":case"customdocumentproperties":case"officedocumentsettings":case"pivottable":case"pivotcache":case"names":case"mapinfo":case"pagebreaks":case"querytable":case"sorting":case"schema":case"conditionalformatting":case"smarttagtype":case"smarttags":case"excelworkbook":case"workbookoptions":case"worksheetoptions":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw new Error("Bad state: "+tmp.join("|"))}else Rn[0].charAt(Rn[0].length-2)!=="/"&&state.push([Rn[3],!0]);break;case"null":break;default:if(state.length==0&&Rn[3]=="document"||state.length==0&&Rn[3]=="uof")return parse_fods(str,opts);var seen=!0;switch(state[state.length-1][0]){case"officedocumentsettings":switch(Rn[3]){case"allowpng":break;case"removepersonalinformation":break;case"downloadcomponents":break;case"locationofcomponents":break;case"colors":break;case"color":break;case"index":break;case"rgb":break;case"targetscreensize":break;case"readonlyrecommended":break;default:seen=!1}break;case"componentoptions":switch(Rn[3]){case"toolbar":break;case"hideofficelogo":break;case"spreadsheetautofit":break;case"label":break;case"caption":break;case"maxheight":break;case"maxwidth":break;case"nextsheetnumber":break;default:seen=!1}break;case"excelworkbook":switch(Rn[3]){case"date1904":Workbook.WBProps.date1904=!0;break;case"hidehorizontalscrollbar":break;case"hideverticalscrollbar":break;case"hideworkbooktabs":break;case"windowheight":break;case"windowwidth":break;case"windowtopx":break;case"windowtopy":break;case"tabratio":break;case"protectstructure":break;case"protectwindow":break;case"protectwindows":break;case"activesheet":break;case"displayinknotes":break;case"firstvisiblesheet":break;case"supbook":break;case"sheetname":break;case"sheetindex":break;case"sheetindexfirst":break;case"sheetindexlast":break;case"dll":break;case"acceptlabelsinformulas":break;case"donotsavelinkvalues":break;case"iteration":break;case"maxiterations":break;case"maxchange":break;case"path":break;case"xct":break;case"count":break;case"selectedsheets":break;case"calculation":break;case"uncalced":break;case"startupprompt":break;case"crn":break;case"externname":break;case"formula":break;case"colfirst":break;case"collast":break;case"wantadvise":break;case"boolean":break;case"error":break;case"text":break;case"ole":break;case"noautorecover":break;case"publishobjects":break;case"donotcalculatebeforesave":break;case"number":break;case"refmoder1c1":break;case"embedsavesmarttags":break;default:seen=!1}break;case"workbookoptions":switch(Rn[3]){case"owcversion":break;case"height":break;case"width":break;default:seen=!1}break;case"worksheetoptions":switch(Rn[3]){case"visible":if(Rn[0].slice(-2)!=="/>")if(Rn[1]==="/")switch(str.slice(pidx,Rn.index)){case"SheetHidden":wsprops.Hidden=1;break;case"SheetVeryHidden":wsprops.Hidden=2;break}else pidx=Rn.index+Rn[0].length;break;case"header":cursheet["!margins"]||default_margins(cursheet["!margins"]={},"xlml"),isNaN(+parsexmltag(Rn[0]).Margin)||(cursheet["!margins"].header=+parsexmltag(Rn[0]).Margin);break;case"footer":cursheet["!margins"]||default_margins(cursheet["!margins"]={},"xlml"),isNaN(+parsexmltag(Rn[0]).Margin)||(cursheet["!margins"].footer=+parsexmltag(Rn[0]).Margin);break;case"pagemargins":var pagemargins=parsexmltag(Rn[0]);cursheet["!margins"]||default_margins(cursheet["!margins"]={},"xlml"),isNaN(+pagemargins.Top)||(cursheet["!margins"].top=+pagemargins.Top),isNaN(+pagemargins.Left)||(cursheet["!margins"].left=+pagemargins.Left),isNaN(+pagemargins.Right)||(cursheet["!margins"].right=+pagemargins.Right),isNaN(+pagemargins.Bottom)||(cursheet["!margins"].bottom=+pagemargins.Bottom);break;case"displayrighttoleft":Workbook.Views||(Workbook.Views=[]),Workbook.Views[0]||(Workbook.Views[0]={}),Workbook.Views[0].RTL=!0;break;case"freezepanes":break;case"frozennosplit":break;case"splithorizontal":case"splitvertical":break;case"donotdisplaygridlines":break;case"activerow":break;case"activecol":break;case"toprowbottompane":break;case"leftcolumnrightpane":break;case"unsynced":break;case"print":break;case"printerrors":break;case"panes":break;case"scale":break;case"pane":break;case"number":break;case"layout":break;case"pagesetup":break;case"selected":break;case"protectobjects":break;case"enableselection":break;case"protectscenarios":break;case"validprinterinfo":break;case"horizontalresolution":break;case"verticalresolution":break;case"numberofcopies":break;case"activepane":break;case"toprowvisible":break;case"leftcolumnvisible":break;case"fittopage":break;case"rangeselection":break;case"papersizeindex":break;case"pagelayoutzoom":break;case"pagebreakzoom":break;case"filteron":break;case"fitwidth":break;case"fitheight":break;case"commentslayout":break;case"zoom":break;case"lefttoright":break;case"gridlines":break;case"allowsort":break;case"allowfilter":break;case"allowinsertrows":break;case"allowdeleterows":break;case"allowinsertcols":break;case"allowdeletecols":break;case"allowinserthyperlinks":break;case"allowformatcells":break;case"allowsizecols":break;case"allowsizerows":break;case"nosummaryrowsbelowdetail":cursheet["!outline"]||(cursheet["!outline"]={}),cursheet["!outline"].above=!0;break;case"tabcolorindex":break;case"donotdisplayheadings":break;case"showpagelayoutzoom":break;case"nosummarycolumnsrightdetail":cursheet["!outline"]||(cursheet["!outline"]={}),cursheet["!outline"].left=!0;break;case"blackandwhite":break;case"donotdisplayzeros":break;case"displaypagebreak":break;case"rowcolheadings":break;case"donotdisplayoutline":break;case"noorientation":break;case"allowusepivottables":break;case"zeroheight":break;case"viewablerange":break;case"selection":break;case"protectcontents":break;default:seen=!1}break;case"pivottable":case"pivotcache":switch(Rn[3]){case"immediateitemsondrop":break;case"showpagemultipleitemlabel":break;case"compactrowindent":break;case"location":break;case"pivotfield":break;case"orientation":break;case"layoutform":break;case"layoutsubtotallocation":break;case"layoutcompactrow":break;case"position":break;case"pivotitem":break;case"datatype":break;case"datafield":break;case"sourcename":break;case"parentfield":break;case"ptlineitems":break;case"ptlineitem":break;case"countofsameitems":break;case"item":break;case"itemtype":break;case"ptsource":break;case"cacheindex":break;case"consolidationreference":break;case"filename":break;case"reference":break;case"nocolumngrand":break;case"norowgrand":break;case"blanklineafteritems":break;case"hidden":break;case"subtotal":break;case"basefield":break;case"mapchilditems":break;case"function":break;case"refreshonfileopen":break;case"printsettitles":break;case"mergelabels":break;case"defaultversion":break;case"refreshname":break;case"refreshdate":break;case"refreshdatecopy":break;case"versionlastrefresh":break;case"versionlastupdate":break;case"versionupdateablemin":break;case"versionrefreshablemin":break;case"calculation":break;default:seen=!1}break;case"pagebreaks":switch(Rn[3]){case"colbreaks":break;case"colbreak":break;case"rowbreaks":break;case"rowbreak":break;case"colstart":break;case"colend":break;case"rowend":break;default:seen=!1}break;case"autofilter":switch(Rn[3]){case"autofiltercolumn":break;case"autofiltercondition":break;case"autofilterand":break;case"autofilteror":break;default:seen=!1}break;case"querytable":switch(Rn[3]){case"id":break;case"autoformatfont":break;case"autoformatpattern":break;case"querysource":break;case"querytype":break;case"enableredirections":break;case"refreshedinxl9":break;case"urlstring":break;case"htmltables":break;case"connection":break;case"commandtext":break;case"refreshinfo":break;case"notitles":break;case"nextid":break;case"columninfo":break;case"overwritecells":break;case"donotpromptforfile":break;case"textwizardsettings":break;case"source":break;case"number":break;case"decimal":break;case"thousandseparator":break;case"trailingminusnumbers":break;case"formatsettings":break;case"fieldtype":break;case"delimiters":break;case"tab":break;case"comma":break;case"autoformatname":break;case"versionlastedit":break;case"versionlastrefresh":break;default:seen=!1}break;case"datavalidation":switch(Rn[3]){case"range":break;case"type":break;case"min":break;case"max":break;case"sort":break;case"descending":break;case"order":break;case"casesensitive":break;case"value":break;case"errorstyle":break;case"errormessage":break;case"errortitle":break;case"inputmessage":break;case"inputtitle":break;case"combohide":break;case"inputhide":break;case"condition":break;case"qualifier":break;case"useblank":break;case"value1":break;case"value2":break;case"format":break;case"cellrangelist":break;default:seen=!1}break;case"sorting":case"conditionalformatting":switch(Rn[3]){case"range":break;case"type":break;case"min":break;case"max":break;case"sort":break;case"descending":break;case"order":break;case"casesensitive":break;case"value":break;case"errorstyle":break;case"errormessage":break;case"errortitle":break;case"cellrangelist":break;case"inputmessage":break;case"inputtitle":break;case"combohide":break;case"inputhide":break;case"condition":break;case"qualifier":break;case"useblank":break;case"value1":break;case"value2":break;case"format":break;default:seen=!1}break;case"mapinfo":case"schema":case"data":switch(Rn[3]){case"map":break;case"entry":break;case"range":break;case"xpath":break;case"field":break;case"xsdtype":break;case"filteron":break;case"aggregate":break;case"elementtype":break;case"attributetype":break;case"schema":case"element":case"complextype":case"datatype":case"all":case"attribute":case"extends":break;case"row":break;default:seen=!1}break;case"smarttags":break;default:seen=!1;break}if(seen||Rn[3].match(/!\[CDATA/))break;if(!state[state.length-1][1])throw"Unrecognized tag: "+Rn[3]+"|"+state.join("|");if(state[state.length-1][0]==="customdocumentproperties"){if(Rn[0].slice(-2)==="/>")break;Rn[1]==="/"?xlml_set_custprop(Custprops,raw_Rn3,cp,str.slice(pidx,Rn.index)):(cp=Rn,pidx=Rn.index+Rn[0].length);break}if(opts.WTF)throw"Unrecognized tag: "+Rn[3]+"|"+state.join("|")}var out={};return!opts.bookSheets&&!opts.bookProps&&(out.Sheets=sheets),out.SheetNames=sheetnames,out.Workbook=Workbook,out.SSF=dup(table_fmt),out.Props=Props,out.Custprops=Custprops,out.bookType="xlml",out}function parse_xlml(data,opts){switch(fix_read_opts(opts=opts||{}),opts.type||"base64"){case"base64":return parse_xlml_xml(Base64_decode(data),opts);case"binary":case"buffer":case"file":return parse_xlml_xml(data,opts);case"array":return parse_xlml_xml(a2s(data),opts)}}function write_props_xlml(wb,opts){var o=[];return wb.Props&&o.push(xlml_write_docprops(wb.Props,opts)),wb.Custprops&&o.push(xlml_write_custprops(wb.Props,wb.Custprops,opts)),o.join("")}function write_wb_xlml(wb){return(((wb||{}).Workbook||{}).WBProps||{}).date1904?'<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel"><Date1904/></ExcelWorkbook>':""}function write_sty_xlml(wb,opts){var styles=['<Style ss:ID="Default" ss:Name="Normal"><NumberFormat/></Style>'];return opts.cellXfs.forEach(function(xf,id){var payload=[];payload.push(writextag("NumberFormat",null,{"ss:Format":escapexml(table_fmt[xf.numFmtId])}));var o={"ss:ID":"s"+(21+id)};styles.push(writextag("Style",payload.join(""),o))}),writextag("Styles",styles.join(""))}function write_name_xlml(n){return writextag("NamedRange",null,{"ss:Name":n.Name.slice(0,6)=="_xlnm."?n.Name.slice(6):n.Name,"ss:RefersTo":"="+a1_to_rc(n.Ref,{r:0,c:0})})}function write_names_xlml(wb){if(!((wb||{}).Workbook||{}).Names)return"";for(var names=wb.Workbook.Names,out=[],i=0;i<names.length;++i){var n=names[i];n.Sheet==null&&(n.Name.match(/^_xlfn\./)||out.push(write_name_xlml(n)))}return writextag("Names",out.join(""))}function write_ws_xlml_names(ws,opts,idx,wb){if(!ws||!((wb||{}).Workbook||{}).Names)return"";for(var names=wb.Workbook.Names,out=[],i=0;i<names.length;++i){var n=names[i];n.Sheet==idx&&(n.Name.match(/^_xlfn\./)||out.push(write_name_xlml(n)))}return out.join("")}function write_ws_xlml_wsopts(ws,opts,idx,wb){if(!ws)return"";var o=[];if(ws["!margins"]&&(o.push("<PageSetup>"),ws["!margins"].header&&o.push(writextag("Header",null,{"x:Margin":ws["!margins"].header})),ws["!margins"].footer&&o.push(writextag("Footer",null,{"x:Margin":ws["!margins"].footer})),o.push(writextag("PageMargins",null,{"x:Bottom":ws["!margins"].bottom||"0.75","x:Left":ws["!margins"].left||"0.7","x:Right":ws["!margins"].right||"0.7","x:Top":ws["!margins"].top||"0.75"})),o.push("</PageSetup>")),wb&&wb.Workbook&&wb.Workbook.Sheets&&wb.Workbook.Sheets[idx])if(wb.Workbook.Sheets[idx].Hidden)o.push(writextag("Visible",wb.Workbook.Sheets[idx].Hidden==1?"SheetHidden":"SheetVeryHidden",{}));else{for(var i=0;i<idx&&!(wb.Workbook.Sheets[i]&&!wb.Workbook.Sheets[i].Hidden);++i);i==idx&&o.push("<Selected/>")}return((((wb||{}).Workbook||{}).Views||[])[0]||{}).RTL&&o.push("<DisplayRightToLeft/>"),ws["!protect"]&&(o.push(writetag("ProtectContents","True")),ws["!protect"].objects&&o.push(writetag("ProtectObjects","True")),ws["!protect"].scenarios&&o.push(writetag("ProtectScenarios","True")),ws["!protect"].selectLockedCells!=null&&!ws["!protect"].selectLockedCells?o.push(writetag("EnableSelection","NoSelection")):ws["!protect"].selectUnlockedCells!=null&&!ws["!protect"].selectUnlockedCells&&o.push(writetag("EnableSelection","UnlockedCells")),[["formatCells","AllowFormatCells"],["formatColumns","AllowSizeCols"],["formatRows","AllowSizeRows"],["insertColumns","AllowInsertCols"],["insertRows","AllowInsertRows"],["insertHyperlinks","AllowInsertHyperlinks"],["deleteColumns","AllowDeleteCols"],["deleteRows","AllowDeleteRows"],["sort","AllowSort"],["autoFilter","AllowFilter"],["pivotTables","AllowUsePivotTables"]].forEach(function(x){ws["!protect"][x[0]]&&o.push("<"+x[1]+"/>")})),o.length==0?"":writextag("WorksheetOptions",o.join(""),{xmlns:XLMLNS.x})}function write_ws_xlml_comment(comments){return comments.map(function(c){var t=xlml_unfixstr(c.t||""),d=writextag("ss:Data",t,{xmlns:"http://www.w3.org/TR/REC-html40"}),p={};return c.a&&(p["ss:Author"]=c.a),comments.hidden||(p["ss:ShowAlways"]="1"),writextag("Comment",d,p)}).join("")}function write_ws_xlml_cell(cell2,ref,ws,opts,idx,wb,addr){if(!cell2||cell2.v==null&&cell2.f==null)return"";var attr={};if(cell2.f&&(attr["ss:Formula"]="="+escapexml(a1_to_rc(cell2.f,addr))),cell2.F&&cell2.F.slice(0,ref.length)==ref){var end=decode_cell(cell2.F.slice(ref.length+1));attr["ss:ArrayRange"]="RC:R"+(end.r==addr.r?"":"["+(end.r-addr.r)+"]")+"C"+(end.c==addr.c?"":"["+(end.c-addr.c)+"]")}if(cell2.l&&cell2.l.Target&&(attr["ss:HRef"]=escapexml(cell2.l.Target),cell2.l.Tooltip&&(attr["x:HRefScreenTip"]=escapexml(cell2.l.Tooltip))),ws["!merges"])for(var marr=ws["!merges"],mi=0;mi!=marr.length;++mi)marr[mi].s.c!=addr.c||marr[mi].s.r!=addr.r||(marr[mi].e.c>marr[mi].s.c&&(attr["ss:MergeAcross"]=marr[mi].e.c-marr[mi].s.c),marr[mi].e.r>marr[mi].s.r&&(attr["ss:MergeDown"]=marr[mi].e.r-marr[mi].s.r));var t="",p="";switch(cell2.t){case"z":if(!opts.sheetStubs)return"";break;case"n":isFinite(cell2.v)?(t="Number",p=String(cell2.v)):(t="Error",p=BErr[isNaN(cell2.v)?36:7]);break;case"b":t="Boolean",p=cell2.v?"1":"0";break;case"e":t="Error",p=BErr[cell2.v];break;case"d":t="DateTime",p=new Date(cell2.v).toISOString(),cell2.z==null&&(cell2.z=cell2.z||table_fmt[14]);break;case"s":t="String",p=escapexlml(cell2.v||"");break}var os=get_cell_style(opts.cellXfs,cell2,opts);attr["ss:StyleID"]="s"+(21+os),attr["ss:Index"]=addr.c+1;var _v=cell2.v!=null?p:"",m=cell2.t=="z"?"":'<Data ss:Type="'+t+'">'+_v+"</Data>";return(cell2.c||[]).length>0&&(m+=write_ws_xlml_comment(cell2.c)),writextag("Cell",m,attr)}function write_ws_xlml_row(R,row){var o='<Row ss:Index="'+(R+1)+'"';return row&&(row.hpt&&!row.hpx&&(row.hpx=pt2px(row.hpt)),row.hpx&&(o+=' ss:AutoFitHeight="0" ss:Height="'+row.hpx+'"'),row.hidden&&(o+=' ss:Hidden="1"')),o+">"}function write_ws_xlml_table(ws,opts,idx,wb){if(!ws["!ref"])return"";var range=safe_decode_range(ws["!ref"]),marr=ws["!merges"]||[],mi=0,o=[];ws["!cols"]&&ws["!cols"].forEach(function(n,i){process_col(n);var w=!!n.width,p=col_obj_w(i,n),k={"ss:Index":i+1};w&&(k["ss:Width"]=width2px(p.width)),n.hidden&&(k["ss:Hidden"]="1"),o.push(writextag("Column",null,k))});for(var dense=ws["!data"]!=null,addr={r:0,c:0},R=range.s.r;R<=range.e.r;++R){var row=[write_ws_xlml_row(R,(ws["!rows"]||[])[R])];addr.r=R;for(var C=range.s.c;C<=range.e.c;++C){addr.c=C;var skip=!1;for(mi=0;mi!=marr.length;++mi)if(!(marr[mi].s.c>C)&&!(marr[mi].s.r>R)&&!(marr[mi].e.c<C)&&!(marr[mi].e.r<R)){(marr[mi].s.c!=C||marr[mi].s.r!=R)&&(skip=!0);break}if(!skip){var ref=encode_col(C)+encode_row(R),cell2=dense?(ws["!data"][R]||[])[C]:ws[ref];row.push(write_ws_xlml_cell(cell2,ref,ws,opts,idx,wb,addr))}}row.push("</Row>"),row.length>2&&o.push(row.join(""))}return o.join("")}function write_ws_xlml(idx,opts,wb){var o=[],s=wb.SheetNames[idx],ws=wb.Sheets[s],t=ws?write_ws_xlml_names(ws,opts,idx,wb):"";return t.length>0&&o.push("<Names>"+t+"</Names>"),t=ws?write_ws_xlml_table(ws,opts,idx,wb):"",t.length>0&&o.push("<Table>"+t+"</Table>"),o.push(write_ws_xlml_wsopts(ws,opts,idx,wb)),ws&&ws["!autofilter"]&&o.push('<AutoFilter x:Range="'+a1_to_rc(fix_range(ws["!autofilter"].ref),{r:0,c:0})+'" xmlns="urn:schemas-microsoft-com:office:excel"></AutoFilter>'),o.join("")}function write_xlml(wb,opts){opts||(opts={}),wb.SSF||(wb.SSF=dup(table_fmt)),wb.SSF&&(make_ssf(),SSF_load_table(wb.SSF),opts.revssf=evert_num(wb.SSF),opts.revssf[wb.SSF[65535]]=0,opts.ssf=wb.SSF,opts.cellXfs=[],get_cell_style(opts.cellXfs,{},{revssf:{General:0}}));var d=[];d.push(write_props_xlml(wb,opts)),d.push(write_wb_xlml(wb,opts)),d.push(""),d.push(write_names_xlml(wb,opts));for(var i=0;i<wb.SheetNames.length;++i)d.push(writextag("Worksheet",write_ws_xlml(i,opts,wb),{"ss:Name":escapexml(wb.SheetNames[i])}));return d[2]=write_sty_xlml(wb,opts),XML_HEADER+writextag("Workbook",d.join(""),{xmlns:XLMLNS.ss,"xmlns:o":XLMLNS.o,"xmlns:x":XLMLNS.x,"xmlns:ss":XLMLNS.ss,"xmlns:dt":XLMLNS.dt,"xmlns:html":XLMLNS.html})}function parse_compobj(obj){var v={},o=obj.content;if(o.l=28,v.AnsiUserType=o.read_shift(0,"lpstr-ansi"),v.AnsiClipboardFormat=parse_ClipboardFormatOrAnsiString(o),o.length-o.l<=4)return v;var m=o.read_shift(4);if(m==0||m>40||(o.l-=4,v.Reserved1=o.read_shift(0,"lpstr-ansi"),o.length-o.l<=4)||(m=o.read_shift(4),m!==1907505652)||(v.UnicodeClipboardFormat=parse_ClipboardFormatOrUnicodeString(o),m=o.read_shift(4),m==0||m>40))return v;o.l-=4,v.Reserved2=o.read_shift(0,"lpwstr")}function slurp(RecordType,R,blob,length,opts){var l=length,bufs=[],d=blob.slice(blob.l,blob.l+l);if(opts&&opts.enc&&opts.enc.insitu&&d.length>0)switch(RecordType){case 9:case 521:case 1033:case 2057:case 47:case 405:case 225:case 406:case 312:case 404:case 10:break;case 133:break;default:opts.enc.insitu(d)}bufs.push(d),blob.l+=l;for(var nextrt=__readUInt16LE(blob,blob.l),next=XLSRecordEnum[nextrt],start=0;next!=null&&CONTINUE_RT.indexOf(nextrt)>-1;)l=__readUInt16LE(blob,blob.l+2),start=blob.l+4,nextrt==2066?start+=4:(nextrt==2165||nextrt==2175)&&(start+=12),d=blob.slice(start,blob.l+4+l),bufs.push(d),blob.l+=4+l,next=XLSRecordEnum[nextrt=__readUInt16LE(blob,blob.l)];var b=bconcat(bufs);prep_blob(b,0);var ll=0;b.lens=[];for(var j=0;j<bufs.length;++j)b.lens.push(ll),ll+=bufs[j].length;if(b.length<length)throw"XLS Record 0x"+RecordType.toString(16)+" Truncated: "+b.length+" < "+length;return R.f(b,b.length,opts)}function safe_format_xf(p,opts,date1904){if(p.t!=="z"&&p.XF){var fmtid=0;try{fmtid=p.z||p.XF.numFmtId||0,opts.cellNF&&p.z==null&&(p.z=table_fmt[fmtid])}catch(e){if(opts.WTF)throw e}if(!opts||opts.cellText!==!1)try{p.t==="e"?p.w=p.w||BErr[p.v]:fmtid===0||fmtid=="General"?p.t==="n"?(p.v|0)===p.v?p.w=p.v.toString(10):p.w=SSF_general_num(p.v):p.w=SSF_general(p.v):p.w=SSF_format(fmtid,p.v,{date1904:!!date1904,dateNF:opts&&opts.dateNF})}catch(e){if(opts.WTF)throw e}if(opts.cellDates&&fmtid&&p.t=="n"&&fmt_is_date(table_fmt[fmtid]||String(fmtid))){var _d=SSF_parse_date_code(p.v+(date1904?1462:0));_d&&(p.t="d",p.v=new Date(Date.UTC(_d.y,_d.m-1,_d.d,_d.H,_d.M,_d.S,_d.u)))}}}function make_cell(val2,ixfe,t){return{v:val2,ixfe,t}}function parse_workbook(blob,options){var wb={opts:{}},Sheets={};DENSE!=null&&options.dense==null&&(options.dense=DENSE);var out={};options.dense&&(out["!data"]=[]);var Directory={},range={},last_formula=null,sst=[],cur_sheet="",Preamble={},lastcell,last_cell="",cc,cmnt,rngC,rngR,sharedf={},arrayf=[],temp_val,country,XFs=[],palette=[],Workbook={Sheets:[],WBProps:{date1904:!1},Views:[{}]},wsprops={},biff4w=!1,get_rgb=function(icv){return icv<8?XLSIcv[icv]:icv<64&&palette[icv-8]||XLSIcv[icv]},process_cell_style=function(line,options2){var xfd=line.XF.data;if(!(!xfd||!xfd.patternType||!options2||!options2.cellStyles)){line.s={},line.s.patternType=xfd.patternType;var t;(t=rgb2Hex(get_rgb(xfd.icvFore)))&&(line.s.fgColor={rgb:t}),(t=rgb2Hex(get_rgb(xfd.icvBack)))&&(line.s.bgColor={rgb:t})}},addcell=function(cell2,line,options2){if(!(!biff4w&&file_depth>1)&&!(options2.sheetRows&&cell2.r>=options2.sheetRows)){if(options2.cellStyles&&line.XF&&line.XF.data&&process_cell_style(line,options2),delete line.ixfe,delete line.XF,lastcell=cell2,last_cell=encode_cell(cell2),(!range||!range.s||!range.e)&&(range={s:{r:0,c:0},e:{r:0,c:0}}),cell2.r<range.s.r&&(range.s.r=cell2.r),cell2.c<range.s.c&&(range.s.c=cell2.c),cell2.r+1>range.e.r&&(range.e.r=cell2.r+1),cell2.c+1>range.e.c&&(range.e.c=cell2.c+1),options2.cellFormula&&line.f){for(var afi=0;afi<arrayf.length;++afi)if(!(arrayf[afi][0].s.c>cell2.c||arrayf[afi][0].s.r>cell2.r)&&!(arrayf[afi][0].e.c<cell2.c||arrayf[afi][0].e.r<cell2.r)){line.F=encode_range(arrayf[afi][0]),(arrayf[afi][0].s.c!=cell2.c||arrayf[afi][0].s.r!=cell2.r)&&delete line.f,line.f&&(line.f=""+stringify_formula(arrayf[afi][1],range,cell2,supbooks,opts));break}}options2.dense?(out["!data"][cell2.r]||(out["!data"][cell2.r]=[]),out["!data"][cell2.r][cell2.c]=line):out[last_cell]=line}},opts={enc:!1,sbcch:0,snames:[],sharedf,arrayf,rrtabid:[],lastuser:"",biff:8,codepage:0,winlocked:0,cellStyles:!!options&&!!options.cellStyles,WTF:!!options&&!!options.wtf};options.password&&(opts.password=options.password);var themes,merges=[],objects=[],colinfo=[],rowinfo=[],seencol=!1,supbooks=[];supbooks.SheetNames=opts.snames,supbooks.sharedf=opts.sharedf,supbooks.arrayf=opts.arrayf,supbooks.names=[],supbooks.XTI=[];var last_RT=0,file_depth=0,BIFF2Fmt=0,BIFF2FmtTable=[],FilterDatabases=[],last_lbl;opts.codepage=1200,set_cp(1200);for(var seen_codepage=!1;blob.l<blob.length-1;){var s=blob.l,RecordType=blob.read_shift(2);if(RecordType===0&&last_RT===10)break;var length=blob.l===blob.length?0:blob.read_shift(2),R=XLSRecordEnum[RecordType];if(file_depth==0&&[9,521,1033,2057].indexOf(RecordType)==-1)break;if(R&&R.f){if(options.bookSheets&&last_RT===133&&RecordType!==133)break;if(last_RT=RecordType,R.r===2||R.r==12){var rt=blob.read_shift(2);if(length-=2,!opts.enc&&rt!==RecordType&&((rt&255)<<8|rt>>8)!==RecordType)throw new Error("rt mismatch: "+rt+"!="+RecordType);R.r==12&&(blob.l+=10,length-=10)}var val2={};if(RecordType===10?val2=R.f(blob,length,opts):val2=slurp(RecordType,R,blob,length,opts),file_depth==0&&[9,521,1033,2057].indexOf(last_RT)===-1)continue;switch(RecordType){case 34:wb.opts.Date1904=Workbook.WBProps.date1904=val2;break;case 134:wb.opts.WriteProtect=!0;break;case 47:if(opts.enc||(blob.l=0),opts.enc=val2,!options.password)throw new Error("File is password-protected");if(val2.valid==null)throw new Error("Encryption scheme unsupported");if(!val2.valid)throw new Error("Password is incorrect");break;case 92:opts.lastuser=val2;break;case 66:var cpval=Number(val2);switch(cpval){case 21010:cpval=1200;break;case 32768:cpval=1e4;break;case 32769:cpval=1252;break}set_cp(opts.codepage=cpval),seen_codepage=!0;break;case 317:opts.rrtabid=val2;break;case 25:opts.winlocked=val2;break;case 439:wb.opts.RefreshAll=val2;break;case 12:wb.opts.CalcCount=val2;break;case 16:wb.opts.CalcDelta=val2;break;case 17:wb.opts.CalcIter=val2;break;case 13:wb.opts.CalcMode=val2;break;case 14:wb.opts.CalcPrecision=val2;break;case 95:wb.opts.CalcSaveRecalc=val2;break;case 15:opts.CalcRefMode=val2;break;case 2211:wb.opts.FullCalc=val2;break;case 129:val2.fDialog&&(out["!type"]="dialog"),val2.fBelow||((out["!outline"]||(out["!outline"]={})).above=!0),val2.fRight||((out["!outline"]||(out["!outline"]={})).left=!0);break;case 67:case 579:case 1091:case 224:XFs.push(val2);break;case 430:supbooks.push([val2]),supbooks[supbooks.length-1].XTI=[];break;case 35:case 547:supbooks[supbooks.length-1].push(val2);break;case 24:case 536:last_lbl={Name:val2.Name,Ref:stringify_formula(val2.rgce,range,null,supbooks,opts)},val2.itab>0&&(last_lbl.Sheet=val2.itab-1),supbooks.names.push(last_lbl),supbooks[0]||(supbooks[0]=[],supbooks[0].XTI=[]),supbooks[supbooks.length-1].push(val2),val2.Name=="_xlnm._FilterDatabase"&&val2.itab>0&&val2.rgce&&val2.rgce[0]&&val2.rgce[0][0]&&val2.rgce[0][0][0]=="PtgArea3d"&&(FilterDatabases[val2.itab-1]={ref:encode_range(val2.rgce[0][0][1][2])});break;case 22:opts.ExternCount=val2;break;case 23:supbooks.length==0&&(supbooks[0]=[],supbooks[0].XTI=[]),supbooks[supbooks.length-1].XTI=supbooks[supbooks.length-1].XTI.concat(val2),supbooks.XTI=supbooks.XTI.concat(val2);break;case 2196:if(opts.biff<8)break;last_lbl!=null&&(last_lbl.Comment=val2[1]);break;case 18:out["!protect"]=val2;break;case 19:val2!==0&&opts.WTF&&console.error("Password verifier: "+val2);break;case 133:Directory[opts.biff==4?opts.snames.length:val2.pos]=val2,opts.snames.push(val2.name);break;case 10:{if(--file_depth?!biff4w:biff4w)break;if(range.e){if(range.e.r>0&&range.e.c>0){if(range.e.r--,range.e.c--,out["!ref"]=encode_range(range),options.sheetRows&&options.sheetRows<=range.e.r){var tmpri=range.e.r;range.e.r=options.sheetRows-1,out["!fullref"]=out["!ref"],out["!ref"]=encode_range(range),range.e.r=tmpri}range.e.r++,range.e.c++}merges.length>0&&(out["!merges"]=merges),objects.length>0&&(out["!objects"]=objects),colinfo.length>0&&(out["!cols"]=colinfo),rowinfo.length>0&&(out["!rows"]=rowinfo),Workbook.Sheets.push(wsprops)}cur_sheet===""?Preamble=out:Sheets[cur_sheet]=out,out={},options.dense&&(out["!data"]=[])}break;case 9:case 521:case 1033:case 2057:{if(opts.biff===8&&(opts.biff={9:2,521:3,1033:4}[RecordType]||{512:2,768:3,1024:4,1280:5,1536:8,2:2,7:2}[val2.BIFFVer]||8),opts.biffguess=val2.BIFFVer==0,val2.BIFFVer==0&&val2.dt==4096&&(opts.biff=5,seen_codepage=!0,set_cp(opts.codepage=28591)),opts.biff==4&&val2.dt&256&&(biff4w=!0),opts.biff==8&&val2.BIFFVer==0&&val2.dt==16&&(opts.biff=2),file_depth++&&!biff4w)break;if(out={},options.dense&&(out["!data"]=[]),opts.biff<8&&!seen_codepage&&(seen_codepage=!0,set_cp(opts.codepage=options.codepage||1252)),opts.biff==4&&biff4w)cur_sheet=(Directory[opts.snames.indexOf(cur_sheet)+1]||{name:""}).name;else if(opts.biff<5||val2.BIFFVer==0&&val2.dt==4096){cur_sheet===""&&(cur_sheet="Sheet1"),range={s:{r:0,c:0},e:{r:0,c:0}};var fakebs8={pos:blob.l-length,name:cur_sheet};Directory[fakebs8.pos]=fakebs8,opts.snames.push(cur_sheet)}else cur_sheet=(Directory[s]||{name:""}).name;val2.dt==32&&(out["!type"]="chart"),val2.dt==64&&(out["!type"]="macro"),merges=[],objects=[],opts.arrayf=arrayf=[],colinfo=[],rowinfo=[],seencol=!1,wsprops={Hidden:(Directory[s]||{hs:0}).hs,name:cur_sheet}}break;case 515:case 3:case 2:out["!type"]=="chart"&&(options.dense?(out["!data"][val2.r]||[])[val2.c]:out[encode_col(val2.c)+encode_row(val2.r)])&&++val2.c,temp_val={ixfe:val2.ixfe,XF:XFs[val2.ixfe]||{},v:val2.val,t:"n"},BIFF2Fmt>0&&(temp_val.z=temp_val.XF&&temp_val.XF.numFmtId&&BIFF2FmtTable[temp_val.XF.numFmtId]||BIFF2FmtTable[temp_val.ixfe>>8&63]),safe_format_xf(temp_val,options,wb.opts.Date1904),addcell({c:val2.c,r:val2.r},temp_val,options);break;case 5:case 517:temp_val={ixfe:val2.ixfe,XF:XFs[val2.ixfe],v:val2.val,t:val2.t},BIFF2Fmt>0&&(temp_val.z=temp_val.XF&&temp_val.XF.numFmtId&&BIFF2FmtTable[temp_val.XF.numFmtId]||BIFF2FmtTable[temp_val.ixfe>>8&63]),safe_format_xf(temp_val,options,wb.opts.Date1904),addcell({c:val2.c,r:val2.r},temp_val,options);break;case 638:temp_val={ixfe:val2.ixfe,XF:XFs[val2.ixfe],v:val2.rknum,t:"n"},BIFF2Fmt>0&&(temp_val.z=temp_val.XF&&temp_val.XF.numFmtId&&BIFF2FmtTable[temp_val.XF.numFmtId]||BIFF2FmtTable[temp_val.ixfe>>8&63]),safe_format_xf(temp_val,options,wb.opts.Date1904),addcell({c:val2.c,r:val2.r},temp_val,options);break;case 189:for(var j=val2.c;j<=val2.C;++j){var ixfe=val2.rkrec[j-val2.c][0];temp_val={ixfe,XF:XFs[ixfe],v:val2.rkrec[j-val2.c][1],t:"n"},BIFF2Fmt>0&&(temp_val.z=temp_val.XF&&temp_val.XF.numFmtId&&BIFF2FmtTable[temp_val.XF.numFmtId]||BIFF2FmtTable[temp_val.ixfe>>8&63]),safe_format_xf(temp_val,options,wb.opts.Date1904),addcell({c:j,r:val2.r},temp_val,options)}break;case 6:case 518:case 1030:{if(val2.val=="String"){last_formula=val2;break}if(temp_val=make_cell(val2.val,val2.cell.ixfe,val2.tt),temp_val.XF=XFs[temp_val.ixfe],options.cellFormula){var _f=val2.formula;if(_f&&_f[0]&&_f[0][0]&&_f[0][0][0]=="PtgExp"){var _fr=_f[0][0][1][0],_fc=_f[0][0][1][1],_fe=encode_cell({r:_fr,c:_fc});sharedf[_fe]?temp_val.f=""+stringify_formula(val2.formula,range,val2.cell,supbooks,opts):temp_val.F=((options.dense?(out["!data"][_fr]||[])[_fc]:out[_fe])||{}).F}else temp_val.f=""+stringify_formula(val2.formula,range,val2.cell,supbooks,opts)}BIFF2Fmt>0&&(temp_val.z=temp_val.XF&&temp_val.XF.numFmtId&&BIFF2FmtTable[temp_val.XF.numFmtId]||BIFF2FmtTable[temp_val.ixfe>>8&63]),safe_format_xf(temp_val,options,wb.opts.Date1904),addcell(val2.cell,temp_val,options),last_formula=val2}break;case 7:case 519:if(last_formula)last_formula.val=val2,temp_val=make_cell(val2,last_formula.cell.ixfe,"s"),temp_val.XF=XFs[temp_val.ixfe],options.cellFormula&&(temp_val.f=""+stringify_formula(last_formula.formula,range,last_formula.cell,supbooks,opts)),BIFF2Fmt>0&&(temp_val.z=temp_val.XF&&temp_val.XF.numFmtId&&BIFF2FmtTable[temp_val.XF.numFmtId]||BIFF2FmtTable[temp_val.ixfe>>8&63]),safe_format_xf(temp_val,options,wb.opts.Date1904),addcell(last_formula.cell,temp_val,options),last_formula=null;else throw new Error("String record expects Formula");break;case 33:case 545:{arrayf.push(val2);var _arraystart=encode_cell(val2[0].s);if(cc=options.dense?(out["!data"][val2[0].s.r]||[])[val2[0].s.c]:out[_arraystart],options.cellFormula&&cc){if(!last_formula||!_arraystart||!cc)break;cc.f=""+stringify_formula(val2[1],range,val2[0],supbooks,opts),cc.F=encode_range(val2[0])}}break;case 1212:{if(!options.cellFormula)break;if(last_cell){if(!last_formula)break;sharedf[encode_cell(last_formula.cell)]=val2[0],cc=options.dense?(out["!data"][last_formula.cell.r]||[])[last_formula.cell.c]:out[encode_cell(last_formula.cell)],(cc||{}).f=""+stringify_formula(val2[0],range,lastcell,supbooks,opts)}}break;case 253:temp_val=make_cell(sst[val2.isst].t,val2.ixfe,"s"),sst[val2.isst].h&&(temp_val.h=sst[val2.isst].h),temp_val.XF=XFs[temp_val.ixfe],BIFF2Fmt>0&&(temp_val.z=temp_val.XF&&temp_val.XF.numFmtId&&BIFF2FmtTable[temp_val.XF.numFmtId]||BIFF2FmtTable[temp_val.ixfe>>8&63]),safe_format_xf(temp_val,options,wb.opts.Date1904),addcell({c:val2.c,r:val2.r},temp_val,options);break;case 513:options.sheetStubs&&(temp_val={ixfe:val2.ixfe,XF:XFs[val2.ixfe],t:"z"},BIFF2Fmt>0&&(temp_val.z=temp_val.XF&&temp_val.XF.numFmtId&&BIFF2FmtTable[temp_val.XF.numFmtId]||BIFF2FmtTable[temp_val.ixfe>>8&63]),safe_format_xf(temp_val,options,wb.opts.Date1904),addcell({c:val2.c,r:val2.r},temp_val,options));break;case 190:if(options.sheetStubs)for(var _j=val2.c;_j<=val2.C;++_j){var _ixfe=val2.ixfe[_j-val2.c];temp_val={ixfe:_ixfe,XF:XFs[_ixfe],t:"z"},BIFF2Fmt>0&&(temp_val.z=temp_val.XF&&temp_val.XF.numFmtId&&BIFF2FmtTable[temp_val.XF.numFmtId]||BIFF2FmtTable[temp_val.ixfe>>8&63]),safe_format_xf(temp_val,options,wb.opts.Date1904),addcell({c:_j,r:val2.r},temp_val,options)}break;case 214:case 516:case 4:temp_val=make_cell(val2.val,val2.ixfe,"s"),temp_val.XF=XFs[temp_val.ixfe],BIFF2Fmt>0&&(temp_val.z=temp_val.XF&&temp_val.XF.numFmtId&&BIFF2FmtTable[temp_val.XF.numFmtId]||BIFF2FmtTable[temp_val.ixfe>>8&63]),safe_format_xf(temp_val,options,wb.opts.Date1904),addcell({c:val2.c,r:val2.r},temp_val,options);break;case 0:case 512:file_depth===1&&(range=val2);break;case 252:sst=val2;break;case 1054:if(opts.biff>=3&&opts.biff<=4){BIFF2FmtTable[BIFF2Fmt++]=val2[1];for(var b4idx=0;b4idx<BIFF2Fmt+163&&table_fmt[b4idx]!=val2[1];++b4idx);b4idx>=163&&SSF__load(val2[1],BIFF2Fmt+163)}else SSF__load(val2[1],val2[0]);break;case 30:{BIFF2FmtTable[BIFF2Fmt++]=val2;for(var b2idx=0;b2idx<BIFF2Fmt+163&&table_fmt[b2idx]!=val2;++b2idx);b2idx>=163&&SSF__load(val2,BIFF2Fmt+163)}break;case 229:merges=merges.concat(val2);break;case 93:objects[val2.cmo[0]]=opts.lastobj=val2;break;case 438:opts.lastobj.TxO=val2;break;case 127:opts.lastobj.ImData=val2;break;case 440:for(rngR=val2[0].s.r;rngR<=val2[0].e.r;++rngR)for(rngC=val2[0].s.c;rngC<=val2[0].e.c;++rngC)cc=options.dense?(out["!data"][rngR]||[])[rngC]:out[encode_cell({c:rngC,r:rngR})],cc&&(cc.l=val2[1]);break;case 2048:for(rngR=val2[0].s.r;rngR<=val2[0].e.r;++rngR)for(rngC=val2[0].s.c;rngC<=val2[0].e.c;++rngC)cc=options.dense?(out["!data"][rngR]||[])[rngC]:out[encode_cell({c:rngC,r:rngR})],cc&&cc.l&&(cc.l.Tooltip=val2[1]);break;case 28:{if(cc=options.dense?(out["!data"][val2[0].r]||[])[val2[0].c]:out[encode_cell(val2[0])],cc||(options.dense?(out["!data"][val2[0].r]||(out["!data"][val2[0].r]=[]),cc=out["!data"][val2[0].r][val2[0].c]={t:"z"}):cc=out[encode_cell(val2[0])]={t:"z"},range.e.r=Math.max(range.e.r,val2[0].r),range.s.r=Math.min(range.s.r,val2[0].r),range.e.c=Math.max(range.e.c,val2[0].c),range.s.c=Math.min(range.s.c,val2[0].c)),cc.c||(cc.c=[]),opts.biff<=5&&opts.biff>=2)cmnt={a:"SheetJ5",t:val2[1]};else{var noteobj=objects[val2[2]];cmnt={a:val2[1],t:noteobj.TxO.t},val2[3]!=null&&!(val2[3]&2)&&(cc.c.hidden=!0)}cc.c.push(cmnt)}break;case 2173:update_xfext(XFs[val2.ixfe],val2.ext);break;case 125:{if(!opts.cellStyles)break;for(;val2.e>=val2.s;)colinfo[val2.e--]={width:val2.w/256,level:val2.level||0,hidden:!!(val2.flags&1)},seencol||(seencol=!0,find_mdw_colw(val2.w/256)),process_col(colinfo[val2.e+1])}break;case 520:{var rowobj={};val2.level!=null&&(rowinfo[val2.r]=rowobj,rowobj.level=val2.level),val2.hidden&&(rowinfo[val2.r]=rowobj,rowobj.hidden=!0),val2.hpt&&(rowinfo[val2.r]=rowobj,rowobj.hpt=val2.hpt,rowobj.hpx=pt2px(val2.hpt))}break;case 38:case 39:case 40:case 41:out["!margins"]||default_margins(out["!margins"]={}),out["!margins"][{38:"left",39:"right",40:"top",41:"bottom"}[RecordType]]=val2;break;case 161:out["!margins"]||default_margins(out["!margins"]={}),out["!margins"].header=val2.header,out["!margins"].footer=val2.footer;break;case 574:val2.RTL&&(Workbook.Views[0].RTL=!0);break;case 146:palette=val2;break;case 2198:themes=val2;break;case 140:country=val2;break;case 442:cur_sheet?wsprops.CodeName=val2||wsprops.name:Workbook.WBProps.CodeName=val2||"ThisWorkbook";break}}else R||console.error("Missing Info for XLS Record 0x"+RecordType.toString(16)),blob.l+=length}return wb.SheetNames=keys(Directory).sort(function(a,b){return Number(a)-Number(b)}).map(function(x){return Directory[x].name}),options.bookSheets||(wb.Sheets=Sheets),!wb.SheetNames.length&&Preamble["!ref"]?(wb.SheetNames.push("Sheet1"),wb.Sheets&&(wb.Sheets.Sheet1=Preamble)):wb.Preamble=Preamble,wb.Sheets&&FilterDatabases.forEach(function(r,i){wb.Sheets[wb.SheetNames[i]]["!autofilter"]=r}),wb.Strings=sst,wb.SSF=dup(table_fmt),opts.enc&&(wb.Encryption=opts.enc),themes&&(wb.Themes=themes),wb.Metadata={},country!==void 0&&(wb.Metadata.Country=country),supbooks.names.length>0&&(Workbook.Names=supbooks.names),wb.Workbook=Workbook,wb}function parse_xls_props(cfb,props,o){var DSI=CFB.find(cfb,"/!DocumentSummaryInformation");if(DSI&&DSI.size>0)try{var DocSummary=parse_PropertySetStream(DSI,DocSummaryPIDDSI,PSCLSID.DSI);for(var d in DocSummary)props[d]=DocSummary[d]}catch(e){if(o.WTF)throw e}var SI=CFB.find(cfb,"/!SummaryInformation");if(SI&&SI.size>0)try{var Summary=parse_PropertySetStream(SI,SummaryPIDSI,PSCLSID.SI);for(var s in Summary)props[s]==null&&(props[s]=Summary[s])}catch(e){if(o.WTF)throw e}props.HeadingPairs&&props.TitlesOfParts&&(load_props_pairs(props.HeadingPairs,props.TitlesOfParts,props,o),delete props.HeadingPairs,delete props.TitlesOfParts)}function write_xls_props(wb,cfb){var DSEntries=[],SEntries=[],CEntries=[],i=0,Keys,DocSummaryRE=evert_key(DocSummaryPIDDSI,"n"),SummaryRE=evert_key(SummaryPIDSI,"n");if(wb.Props)for(Keys=keys(wb.Props),i=0;i<Keys.length;++i)(Object.prototype.hasOwnProperty.call(DocSummaryRE,Keys[i])?DSEntries:Object.prototype.hasOwnProperty.call(SummaryRE,Keys[i])?SEntries:CEntries).push([Keys[i],wb.Props[Keys[i]]]);if(wb.Custprops)for(Keys=keys(wb.Custprops),i=0;i<Keys.length;++i)Object.prototype.hasOwnProperty.call(wb.Props||{},Keys[i])||(Object.prototype.hasOwnProperty.call(DocSummaryRE,Keys[i])?DSEntries:Object.prototype.hasOwnProperty.call(SummaryRE,Keys[i])?SEntries:CEntries).push([Keys[i],wb.Custprops[Keys[i]]]);var CEntries2=[];for(i=0;i<CEntries.length;++i)XLSPSSkip.indexOf(CEntries[i][0])>-1||PseudoPropsPairs.indexOf(CEntries[i][0])>-1||CEntries[i][1]!=null&&CEntries2.push(CEntries[i]);SEntries.length&&CFB.utils.cfb_add(cfb,"/SummaryInformation",write_PropertySetStream(SEntries,PSCLSID.SI,SummaryRE,SummaryPIDSI)),(DSEntries.length||CEntries2.length)&&CFB.utils.cfb_add(cfb,"/DocumentSummaryInformation",write_PropertySetStream(DSEntries,PSCLSID.DSI,DocSummaryRE,DocSummaryPIDDSI,CEntries2.length?CEntries2:null,PSCLSID.UDI))}function parse_xlscfb(cfb,options){options||(options={}),fix_read_opts(options),reset_cp(),options.codepage&&set_ansi(options.codepage);var CompObj,WB;if(cfb.FullPaths){if(CFB.find(cfb,"/encryption"))throw new Error("File is password-protected");CompObj=CFB.find(cfb,"!CompObj"),WB=CFB.find(cfb,"/Workbook")||CFB.find(cfb,"/Book")}else{switch(options.type){case"base64":cfb=s2a(Base64_decode(cfb));break;case"binary":cfb=s2a(cfb);break;case"buffer":break;case"array":Array.isArray(cfb)||(cfb=Array.prototype.slice.call(cfb));break}prep_blob(cfb,0),WB={content:cfb}}var WorkbookP,_data;if(CompObj&&parse_compobj(CompObj),options.bookProps&&!options.bookSheets)WorkbookP={};else{var T=has_buf?"buffer":"array";if(WB&&WB.content)WorkbookP=parse_workbook(WB.content,options);else if((_data=CFB.find(cfb,"PerfectOffice_MAIN"))&&_data.content)WorkbookP=WK_.to_workbook(_data.content,(options.type=T,options));else if((_data=CFB.find(cfb,"NativeContent_MAIN"))&&_data.content)WorkbookP=WK_.to_workbook(_data.content,(options.type=T,options));else throw(_data=CFB.find(cfb,"MN0"))&&_data.content?new Error("Unsupported Works 4 for Mac file"):new Error("Cannot find Workbook stream");options.bookVBA&&cfb.FullPaths&&CFB.find(cfb,"/_VBA_PROJECT_CUR/VBA/dir")&&(WorkbookP.vbaraw=make_vba_xls(cfb))}var props={};return cfb.FullPaths&&parse_xls_props(cfb,props,options),WorkbookP.Props=WorkbookP.Custprops=props,options.bookFiles&&(WorkbookP.cfb=cfb),WorkbookP}function write_xlscfb(wb,opts){var o=opts||{},cfb=CFB.utils.cfb_new({root:"R"}),wbpath="/Workbook";switch(o.bookType||"xls"){case"xls":o.bookType="biff8";case"xla":o.bookType||(o.bookType="xla");case"biff8":wbpath="/Workbook",o.biff=8;break;case"biff5":wbpath="/Book",o.biff=5;break;default:throw new Error("invalid type "+o.bookType+" for XLS CFB")}return CFB.utils.cfb_add(cfb,wbpath,write_biff_buf(wb,o)),o.biff==8&&(wb.Props||wb.Custprops)&&write_xls_props(wb,cfb),o.biff==8&&wb.vbaraw&&fill_vba_xls(cfb,CFB.read(wb.vbaraw,{type:typeof wb.vbaraw=="string"?"binary":"buffer"})),cfb}function write_biff_rec(ba,type,payload,length){var t=type;if(!isNaN(t)){var len=length||(payload||[]).length||0,o=ba.next(4);o.write_shift(2,t),o.write_shift(2,len),len>0&&is_buf(payload)&&ba.push(payload)}}function write_biff_continue(ba,type,payload,length){var len=length||(payload||[]).length||0;if(len<=8224)return write_biff_rec(ba,type,payload,len);var t=type;if(!isNaN(t)){for(var parts=payload.parts||[],sidx=0,i=0,w=0;w+(parts[sidx]||8224)<=8224;)w+=parts[sidx]||8224,sidx++;var o=ba.next(4);for(o.write_shift(2,t),o.write_shift(2,w),ba.push(payload.slice(i,i+w)),i+=w;i<len;){for(o=ba.next(4),o.write_shift(2,60),w=0;w+(parts[sidx]||8224)<=8224;)w+=parts[sidx]||8224,sidx++;o.write_shift(2,w),ba.push(payload.slice(i,i+w)),i+=w}}}function write_BIFF2BERR(r,c,val2,t){var out=new_buf(9);return write_BIFF2Cell(out,r,c),write_Bes(val2,t||"b",out),out}function write_BIFF2LABEL(r,c,val2){var out=new_buf(8+2*val2.length);return write_BIFF2Cell(out,r,c),out.write_shift(1,val2.length),out.write_shift(val2.length,val2,"sbcs"),out.l<out.length?out.slice(0,out.l):out}function write_comments_biff2(ba,comments){comments.forEach(function(data){var text=data[0].map(function(cc){return cc.t}).join("");if(text.length<=2048)return write_biff_rec(ba,28,write_NOTE_BIFF2(text,data[1],data[2]));write_biff_rec(ba,28,write_NOTE_BIFF2(text.slice(0,2048),data[1],data[2],text.length));for(var i=2048;i<text.length;i+=2048)write_biff_rec(ba,28,write_NOTE_BIFF2(text.slice(i,Math.min(i+2048,text.length)),-1,-1,Math.min(2048,text.length-i)))})}function write_ws_biff2_cell(ba,cell2,R,C,opts,date1904){var ifmt=0;cell2.z!=null&&(ifmt=opts._BIFF2FmtTable.indexOf(cell2.z),ifmt==-1&&(opts._BIFF2FmtTable.push(cell2.z),ifmt=opts._BIFF2FmtTable.length-1));var ixfe=0;if(cell2.z!=null){for(;ixfe<opts.cellXfs.length&&opts.cellXfs[ixfe].numFmtId!=ifmt;++ixfe);ixfe==opts.cellXfs.length&&opts.cellXfs.push({numFmtId:ifmt})}if(cell2.v!=null)switch(cell2.t){case"d":case"n":var v=cell2.t=="d"?datenum(parseDate(cell2.v,date1904),date1904):cell2.v;opts.biff==2&&v==(v|0)&&v>=0&&v<65536?write_biff_rec(ba,2,write_BIFF2INT(R,C,v,ixfe,ifmt)):isNaN(v)?write_biff_rec(ba,5,write_BIFF2BERR(R,C,36,"e")):isFinite(v)?write_biff_rec(ba,3,write_BIFF2NUM(R,C,v,ixfe,ifmt)):write_biff_rec(ba,5,write_BIFF2BERR(R,C,7,"e"));return;case"b":case"e":write_biff_rec(ba,5,write_BIFF2BERR(R,C,cell2.v,cell2.t));return;case"s":case"str":write_biff_rec(ba,4,write_BIFF2LABEL(R,C,cell2.v==null?"":String(cell2.v).slice(0,255)));return}write_biff_rec(ba,1,write_BIFF2Cell(null,R,C))}function write_ws_biff2(ba,ws,idx,opts,wb){var dense=ws["!data"]!=null,range=safe_decode_range(ws["!ref"]||"A1"),rr="",cols=[];if(range.e.c>255||range.e.r>16383){if(opts.WTF)throw new Error("Range "+(ws["!ref"]||"A1")+" exceeds format limit A1:IV16384");range.e.c=Math.min(range.e.c,255),range.e.r=Math.min(range.e.r,16383)}for(var date1904=(((wb||{}).Workbook||{}).WBProps||{}).date1904,row=[],comments=[],C=range.s.c;C<=range.e.c;++C)cols[C]=encode_col(C);for(var R=range.s.r;R<=range.e.r;++R)for(dense&&(row=ws["!data"][R]||[]),rr=encode_row(R),C=range.s.c;C<=range.e.c;++C){var cell2=dense?row[C]:ws[cols[C]+rr];cell2&&(write_ws_biff2_cell(ba,cell2,R,C,opts,date1904),cell2.c&&comments.push([cell2.c,R,C]))}write_comments_biff2(ba,comments)}function write_biff2_buf(wb,opts){for(var o=opts||{},ba=buf_array(),idx=0,i=0;i<wb.SheetNames.length;++i)wb.SheetNames[i]==o.sheet&&(idx=i);if(idx==0&&o.sheet&&wb.SheetNames[0]!=o.sheet)throw new Error("Sheet not found: "+o.sheet);write_biff_rec(ba,o.biff==4?1033:o.biff==3?521:9,write_BOF(wb,16,o)),((wb.Workbook||{}).WBProps||{}).date1904&&write_biff_rec(ba,34,writebool(!0)),o.cellXfs=[{numFmtId:0}],o._BIFF2FmtTable=["General"],o._Fonts=[];var body=buf_array();return write_ws_biff2(body,wb.Sheets[wb.SheetNames[idx]],idx,o,wb),o._BIFF2FmtTable.forEach(function(f){o.biff<=3?write_biff_rec(ba,30,write_BIFF2Format(f)):write_biff_rec(ba,1054,write_BIFF4Format(f))}),o.cellXfs.forEach(function(xf){switch(o.biff){case 2:write_biff_rec(ba,67,write_BIFF2XF(xf));break;case 3:write_biff_rec(ba,579,write_BIFF3XF(xf));break;case 4:write_biff_rec(ba,1091,write_BIFF4XF(xf));break}}),delete o._BIFF2FmtTable,delete o.cellXfs,delete o._Fonts,ba.push(body.end()),write_biff_rec(ba,10),ba.end()}function write_MsoDrawingGroup(){var buf=new_buf(82+8*b8ocnts.length);buf.write_shift(2,15),buf.write_shift(2,61440),buf.write_shift(4,74+8*b8ocnts.length);{buf.write_shift(2,0),buf.write_shift(2,61446),buf.write_shift(4,16+8*b8ocnts.length);{buf.write_shift(4,b8oid),buf.write_shift(4,b8ocnts.length+1);for(var acc=0,i=0;i<b8ocnts.length;++i)acc+=b8ocnts[i]&&b8ocnts[i][1]||0;buf.write_shift(4,acc),buf.write_shift(4,b8ocnts.length)}b8ocnts.forEach(function(b8){buf.write_shift(4,b8[0]),buf.write_shift(4,b8[2])})}return buf.write_shift(2,51),buf.write_shift(2,61451),buf.write_shift(4,18),buf.write_shift(2,191),buf.write_shift(4,524296),buf.write_shift(2,385),buf.write_shift(4,134217793),buf.write_shift(2,448),buf.write_shift(4,134217792),buf.write_shift(2,64),buf.write_shift(2,61726),buf.write_shift(4,16),buf.write_shift(4,134217741),buf.write_shift(4,134217740),buf.write_shift(4,134217751),buf.write_shift(4,268435703),buf}function write_comments_biff8(ba,comments){var notes=[],sz=0,pl=buf_array(),baseid=b8oid,_oasc;comments.forEach(function(c,ci){var author="",text=c[0].map(function(t){return t.a&&!author&&(author=t.a),t.t}).join("");++b8oid;{var oasc=new_buf(150);oasc.write_shift(2,15),oasc.write_shift(2,61444),oasc.write_shift(4,150),oasc.write_shift(2,3234),oasc.write_shift(2,61450),oasc.write_shift(4,8),oasc.write_shift(4,b8oid),oasc.write_shift(4,2560),oasc.write_shift(2,227),oasc.write_shift(2,61451),oasc.write_shift(4,84),oasc.write_shift(2,128),oasc.write_shift(4,0),oasc.write_shift(2,139),oasc.write_shift(4,2),oasc.write_shift(2,191),oasc.write_shift(4,524296),oasc.write_shift(2,344),oasc.l+=4,oasc.write_shift(2,385),oasc.write_shift(4,134217808),oasc.write_shift(2,387),oasc.write_shift(4,134217808),oasc.write_shift(2,389),oasc.write_shift(4,268435700),oasc.write_shift(2,447),oasc.write_shift(4,1048592),oasc.write_shift(2,448),oasc.write_shift(4,134217809),oasc.write_shift(2,451),oasc.write_shift(4,268435700),oasc.write_shift(2,513),oasc.write_shift(4,134217809),oasc.write_shift(2,515),oasc.write_shift(4,268435700),oasc.write_shift(2,575),oasc.write_shift(4,196609),oasc.write_shift(2,959),oasc.write_shift(4,131072|(c[0].hidden?2:0)),oasc.l+=2,oasc.write_shift(2,61456),oasc.write_shift(4,18),oasc.write_shift(2,3),oasc.write_shift(2,c[2]+2),oasc.l+=2,oasc.write_shift(2,c[1]+1),oasc.l+=2,oasc.write_shift(2,c[2]+4),oasc.l+=2,oasc.write_shift(2,c[1]+5),oasc.l+=2,oasc.l+=2,oasc.write_shift(2,61457),oasc.l+=4,oasc.l=150,ci==0?_oasc=oasc:write_biff_rec(pl,236,oasc)}sz+=150;{var obj=new_buf(52);obj.write_shift(2,21),obj.write_shift(2,18),obj.write_shift(2,25),obj.write_shift(2,b8oid),obj.write_shift(2,0),obj.l=22,obj.write_shift(2,13),obj.write_shift(2,22),obj.write_shift(4,1651663474),obj.write_shift(4,2503426821),obj.write_shift(4,2150634280),obj.write_shift(4,1768515844+b8oid*256),obj.write_shift(2,0),obj.write_shift(4,0),obj.l+=4,write_biff_rec(pl,93,obj)}{var oact=new_buf(8);oact.l+=2,oact.write_shift(2,61453),oact.l+=4,write_biff_rec(pl,236,oact)}sz+=8;{var txo=new_buf(18);txo.write_shift(2,18),txo.l+=8,txo.write_shift(2,text.length),txo.write_shift(2,16),txo.l+=4,write_biff_rec(pl,438,txo);{var cont=new_buf(1+text.length);cont.write_shift(1,0),cont.write_shift(text.length,text,"sbcs"),write_biff_rec(pl,60,cont)}{var conf=new_buf(16);conf.l+=8,conf.write_shift(2,text.length),conf.l+=6,write_biff_rec(pl,60,conf)}}{var notesh=new_buf(12+author.length);notesh.write_shift(2,c[1]),notesh.write_shift(2,c[2]),notesh.write_shift(2,0|(c[0].hidden?0:2)),notesh.write_shift(2,b8oid),notesh.write_shift(2,author.length),notesh.write_shift(1,0),notesh.write_shift(author.length,author,"sbcs"),notesh.l++,notes.push(notesh)}});{var hdr=new_buf(80);hdr.write_shift(2,15),hdr.write_shift(2,61442),hdr.write_shift(4,sz+hdr.length-8),hdr.write_shift(2,16),hdr.write_shift(2,61448),hdr.write_shift(4,8),hdr.write_shift(4,comments.length+1),hdr.write_shift(4,b8oid),hdr.write_shift(2,15),hdr.write_shift(2,61443),hdr.write_shift(4,sz+48),hdr.write_shift(2,15),hdr.write_shift(2,61444),hdr.write_shift(4,40),hdr.write_shift(2,1),hdr.write_shift(2,61449),hdr.write_shift(4,16),hdr.l+=16,hdr.write_shift(2,2),hdr.write_shift(2,61450),hdr.write_shift(4,8),hdr.write_shift(4,baseid),hdr.write_shift(4,5),write_biff_rec(ba,236,_oasc?bconcat([hdr,_oasc]):hdr)}ba.push(pl.end()),notes.forEach(function(n){write_biff_rec(ba,28,n)}),b8ocnts.push([baseid,comments.length+1,b8oid]),++b8oid}function write_FONTS_biff8(ba,data,opts){write_biff_rec(ba,49,write_Font({sz:12,color:{theme:1},name:"Arial",family:2,scheme:"minor"},opts))}function write_FMTS_biff8(ba,NF,opts){NF&&[[5,8],[23,26],[41,44],[50,392]].forEach(function(r){for(var i=r[0];i<=r[1];++i)NF[i]!=null&&write_biff_rec(ba,1054,write_Format(i,NF[i],opts))})}function write_FEAT(ba,ws){var o=new_buf(19);o.write_shift(4,2151),o.write_shift(4,0),o.write_shift(4,0),o.write_shift(2,3),o.write_shift(1,1),o.write_shift(4,0),write_biff_rec(ba,2151,o),o=new_buf(39),o.write_shift(4,2152),o.write_shift(4,0),o.write_shift(4,0),o.write_shift(2,3),o.write_shift(1,0),o.write_shift(4,0),o.write_shift(2,1),o.write_shift(4,4),o.write_shift(2,0),write_Ref8U(safe_decode_range(ws["!ref"]||"A1"),o),o.write_shift(4,4),write_biff_rec(ba,2152,o)}function write_CELLXFS_biff8(ba,opts){for(var i=0;i<16;++i)write_biff_rec(ba,224,write_XF({numFmtId:0,style:!0},0,opts));opts.cellXfs.forEach(function(c){write_biff_rec(ba,224,write_XF(c,0,opts))})}function write_ws_biff8_hlinks(ba,ws){for(var R=0;R<ws["!links"].length;++R){var HL=ws["!links"][R];write_biff_rec(ba,440,write_HLink(HL)),HL[1].Tooltip&&write_biff_rec(ba,2048,write_HLinkTooltip(HL))}delete ws["!links"]}function write_ws_cols_biff8(ba,cols){if(cols){var cnt=0;cols.forEach(function(col,idx){++cnt<=256&&col&&write_biff_rec(ba,125,write_ColInfo(col_obj_w(idx,col),idx))})}}function write_ws_biff8_cell(ba,cell2,R,C,opts,date1904){var os=16+get_cell_style(opts.cellXfs,cell2,opts);if(cell2.v==null&&!cell2.bf){write_biff_rec(ba,513,write_XLSCell(R,C,os));return}if(cell2.bf)write_biff_rec(ba,6,write_Formula(cell2,R,C,opts,os));else switch(cell2.t){case"d":case"n":var v=cell2.t=="d"?datenum(parseDate(cell2.v,date1904),date1904):cell2.v;isNaN(v)?write_biff_rec(ba,517,write_BoolErr(R,C,36,os,opts,"e")):isFinite(v)?write_biff_rec(ba,515,write_Number(R,C,v,os,opts)):write_biff_rec(ba,517,write_BoolErr(R,C,7,os,opts,"e"));break;case"b":case"e":write_biff_rec(ba,517,write_BoolErr(R,C,cell2.v,os,opts,cell2.t));break;case"s":case"str":if(opts.bookSST){var isst=get_sst_id(opts.Strings,cell2.v==null?"":String(cell2.v),opts.revStrings);write_biff_rec(ba,253,write_LabelSst(R,C,isst,os,opts))}else write_biff_rec(ba,516,write_Label(R,C,(cell2.v==null?"":String(cell2.v)).slice(0,255),os,opts));break;default:write_biff_rec(ba,513,write_XLSCell(R,C,os))}}function write_ws_biff8(idx,opts,wb){var ba=buf_array(),s=wb.SheetNames[idx],ws=wb.Sheets[s]||{},_WB=(wb||{}).Workbook||{},_sheet=(_WB.Sheets||[])[idx]||{},dense=ws["!data"]!=null,b8=opts.biff==8,ref,rr="",cols=[],range=safe_decode_range(ws["!ref"]||"A1"),MAX_ROWS=b8?65536:16384;if(range.e.c>255||range.e.r>=MAX_ROWS){if(opts.WTF)throw new Error("Range "+(ws["!ref"]||"A1")+" exceeds format limit A1:IV"+MAX_ROWS);range.e.c=Math.min(range.e.c,255),range.e.r=Math.min(range.e.r,MAX_ROWS-1)}write_biff_rec(ba,2057,write_BOF(wb,16,opts)),write_biff_rec(ba,13,writeuint16(1)),write_biff_rec(ba,12,writeuint16(100)),write_biff_rec(ba,15,writebool(!0)),write_biff_rec(ba,17,writebool(!1)),write_biff_rec(ba,16,write_Xnum(.001)),write_biff_rec(ba,95,writebool(!0)),write_biff_rec(ba,42,writebool(!1)),write_biff_rec(ba,43,writebool(!1)),write_biff_rec(ba,130,writeuint16(1)),write_biff_rec(ba,128,write_Guts([0,0])),write_biff_rec(ba,131,writebool(!1)),write_biff_rec(ba,132,writebool(!1)),b8&&write_ws_cols_biff8(ba,ws["!cols"]),write_biff_rec(ba,512,write_Dimensions(range,opts));var date1904=(((wb||{}).Workbook||{}).WBProps||{}).date1904;b8&&(ws["!links"]=[]);for(var C=range.s.c;C<=range.e.c;++C)cols[C]=encode_col(C);for(var comments=[],row=[],R=range.s.r;R<=range.e.r;++R)for(dense&&(row=ws["!data"][R]||[]),rr=encode_row(R),C=range.s.c;C<=range.e.c;++C){var cell2=dense?row[C]:ws[cols[C]+rr];cell2&&(write_ws_biff8_cell(ba,cell2,R,C,opts,date1904),b8&&cell2.l&&ws["!links"].push([cols[C]+rr,cell2.l]),cell2.c&&comments.push([cell2.c,R,C]))}var cname=_sheet.CodeName||_sheet.name||s;return b8?write_comments_biff8(ba,comments):write_comments_biff2(ba,comments),b8&&write_biff_rec(ba,574,write_Window2((_WB.Views||[])[0])),b8&&(ws["!merges"]||[]).length&&write_biff_rec(ba,229,write_MergeCells(ws["!merges"])),b8&&write_ws_biff8_hlinks(ba,ws),write_biff_rec(ba,442,write_XLUnicodeString(cname,opts)),b8&&write_FEAT(ba,ws),write_biff_rec(ba,10),ba.end()}function write_biff8_global(wb,bufs,opts){var A=buf_array(),_WB=(wb||{}).Workbook||{},_sheets=_WB.Sheets||[],_wb=_WB.WBProps||{},b8=opts.biff==8,b5=opts.biff==5;if(write_biff_rec(A,2057,write_BOF(wb,5,opts)),opts.bookType=="xla"&&write_biff_rec(A,135),write_biff_rec(A,225,b8?writeuint16(1200):null),write_biff_rec(A,193,writezeroes(2)),b5&&write_biff_rec(A,191),b5&&write_biff_rec(A,192),write_biff_rec(A,226),write_biff_rec(A,92,write_WriteAccess("SheetJS",opts)),write_biff_rec(A,66,writeuint16(b8?1200:1252)),b8&&write_biff_rec(A,353,writeuint16(0)),b8&&write_biff_rec(A,448),write_biff_rec(A,317,write_RRTabId(wb.SheetNames.length)),b8&&wb.vbaraw&&write_biff_rec(A,211),b8&&wb.vbaraw){var cname=_wb.CodeName||"ThisWorkbook";write_biff_rec(A,442,write_XLUnicodeString(cname,opts))}write_biff_rec(A,156,writeuint16(17)),write_biff_rec(A,25,writebool(!1)),write_biff_rec(A,18,writebool(!1)),write_biff_rec(A,19,writeuint16(0)),b8&&write_biff_rec(A,431,writebool(!1)),b8&&write_biff_rec(A,444,writeuint16(0)),write_biff_rec(A,61,write_Window1(opts)),write_biff_rec(A,64,writebool(!1)),write_biff_rec(A,141,writeuint16(0)),write_biff_rec(A,34,writebool(safe1904(wb)=="true")),write_biff_rec(A,14,writebool(!0)),b8&&write_biff_rec(A,439,writebool(!1)),write_biff_rec(A,218,writeuint16(0)),write_FONTS_biff8(A,wb,opts),write_FMTS_biff8(A,wb.SSF,opts),write_CELLXFS_biff8(A,opts),b8&&write_biff_rec(A,352,writebool(!1));var a=A.end(),C=buf_array();b8&&write_biff_rec(C,140,write_Country()),b8&&b8ocnts.length&&write_biff_rec(C,235,write_MsoDrawingGroup()),b8&&opts.Strings&&write_biff_continue(C,252,write_SST(opts.Strings,opts)),write_biff_rec(C,10);var c=C.end(),B=buf_array(),blen=0,j=0;for(j=0;j<wb.SheetNames.length;++j)blen+=(b8?12:11)+(b8?2:1)*wb.SheetNames[j].length;var start=a.length+blen+c.length;for(j=0;j<wb.SheetNames.length;++j){var _sheet=_sheets[j]||{};write_biff_rec(B,133,write_BoundSheet8({pos:start,hs:_sheet.Hidden||0,dt:0,name:wb.SheetNames[j]},opts)),start+=bufs[j].length}var b=B.end();if(blen!=b.length)throw new Error("BS8 "+blen+" != "+b.length);var out=[];return a.length&&out.push(a),b.length&&out.push(b),c.length&&out.push(c),bconcat(out)}function write_biff8_buf(wb,opts){var o=opts||{},bufs=[];wb&&!wb.SSF&&(wb.SSF=dup(table_fmt)),wb&&wb.SSF&&(make_ssf(),SSF_load_table(wb.SSF),o.revssf=evert_num(wb.SSF),o.revssf[wb.SSF[65535]]=0,o.ssf=wb.SSF),b8oid=1,b8ocnts=[],o.Strings=[],o.Strings.Count=0,o.Strings.Unique=0,fix_write_opts(o),o.cellXfs=[],get_cell_style(o.cellXfs,{},{revssf:{General:0}}),wb.Props||(wb.Props={});for(var i=0;i<wb.SheetNames.length;++i)bufs[bufs.length]=write_ws_biff8(i,o,wb);return bufs.unshift(write_biff8_global(wb,bufs,o)),bconcat(bufs)}function write_biff_buf(wb,opts){for(var i=0;i<=wb.SheetNames.length;++i){var ws=wb.Sheets[wb.SheetNames[i]];if(!(!ws||!ws["!ref"])){var range=decode_range(ws["!ref"]);range.e.c>255&&typeof console<"u"&&console.error&&console.error("Worksheet '"+wb.SheetNames[i]+"' extends beyond column IV (255). Data may be lost."),range.e.r>65535&&typeof console<"u"&&console.error&&console.error("Worksheet '"+wb.SheetNames[i]+"' extends beyond row 65536. Data may be lost.")}}var o=opts||{};switch(o.biff||2){case 8:case 5:return write_biff8_buf(wb,opts);case 4:case 3:case 2:return write_biff2_buf(wb,opts)}throw new Error("invalid type "+o.bookType+" for BIFF")}function html_to_sheet(str,_opts){var opts=_opts||{},dense=opts.dense!=null?opts.dense:DENSE,ws={};dense&&(ws["!data"]=[]),str=str_remove_ng(str,"<!--","-->");var mtch=str.match(/<table/i);if(!mtch)throw new Error("Invalid HTML: could not find <table>");var mtch2=str.match(/<\/table/i),i=mtch.index,j=mtch2&&mtch2.index||str.length,rows=split_regex(str.slice(i,j),/(:?<tr[^<>]*>)/i,"<tr>"),R=-1,C=0,RS=0,CS=0,range={s:{r:1e7,c:1e7},e:{r:0,c:0}},merges=[];for(i=0;i<rows.length;++i){var row=rows[i].trim(),hd=row.slice(0,3).toLowerCase();if(hd=="<tr"){if(++R,opts.sheetRows&&opts.sheetRows<=R){--R;break}C=0;continue}if(!(hd!="<td"&&hd!="<th")){var cells=row.split(/<\/t[dh]>/i);for(j=0;j<cells.length;++j){var cell2=cells[j].trim();if(cell2.match(/<t[dh]/i)){for(var m=cell2,cc=0;m.charAt(0)=="<"&&(cc=m.indexOf(">"))>-1;)m=m.slice(cc+1);for(var midx=0;midx<merges.length;++midx){var _merge=merges[midx];_merge.s.c==C&&_merge.s.r<R&&R<=_merge.e.r&&(C=_merge.e.c+1,midx=-1)}var tag=parsexmltag(cell2.slice(0,cell2.indexOf(">")));CS=tag.colspan?+tag.colspan:1,((RS=+tag.rowspan)>1||CS>1)&&merges.push({s:{r:R,c:C},e:{r:R+(RS||1)-1,c:C+CS-1}});var _t=tag.t||tag["data-t"]||"";if(!m.length){C+=CS;continue}if(m=htmldecode(m),range.s.r>R&&(range.s.r=R),range.e.r<R&&(range.e.r=R),range.s.c>C&&(range.s.c=C),range.e.c<C&&(range.e.c=C),!m.length){C+=CS;continue}var o={t:"s",v:m};opts.raw||!m.trim().length||_t=="s"||(m==="TRUE"?o={t:"b",v:!0}:m==="FALSE"?o={t:"b",v:!1}:isNaN(fuzzynum(m))?isNaN(fuzzydate(m).getDate())?m.charCodeAt(0)==35&&RBErr[m]!=null&&(o.t="e",o.w=m,o.v=RBErr[m]):(o={t:"d",v:parseDate(m)},opts.UTC===!1&&(o.v=utc_to_local(o.v)),opts.cellDates||(o={t:"n",v:datenum(o.v)}),o.z=opts.dateNF||table_fmt[14]):o={t:"n",v:fuzzynum(m)}),o.cellText!==!1&&(o.w=m),dense?(ws["!data"][R]||(ws["!data"][R]=[]),ws["!data"][R][C]=o):ws[encode_cell({r:R,c:C})]=o,C+=CS}}}}return ws["!ref"]=encode_range(range),merges.length&&(ws["!merges"]=merges),ws}function make_html_row(ws,r,R,o){for(var M=ws["!merges"]||[],oo=[],sp={},dense=ws["!data"]!=null,C=r.s.c;C<=r.e.c;++C){for(var RS=0,CS=0,j=0;j<M.length;++j)if(!(M[j].s.r>R||M[j].s.c>C)&&!(M[j].e.r<R||M[j].e.c<C)){if(M[j].s.r<R||M[j].s.c<C){RS=-1;break}RS=M[j].e.r-M[j].s.r+1,CS=M[j].e.c-M[j].s.c+1;break}if(!(RS<0)){var coord=encode_col(C)+encode_row(R),cell2=dense?(ws["!data"][R]||[])[C]:ws[coord];cell2&&cell2.t=="n"&&cell2.v!=null&&!isFinite(cell2.v)&&(isNaN(cell2.v)?cell2={t:"e",v:36,w:BErr[36]}:cell2={t:"e",v:7,w:BErr[7]});var w=cell2&&cell2.v!=null&&(cell2.h||escapehtml(cell2.w||(format_cell(cell2),cell2.w)||""))||"";sp={},RS>1&&(sp.rowspan=RS),CS>1&&(sp.colspan=CS),o.editable?w='<span contenteditable="true">'+w+"</span>":cell2&&(sp["data-t"]=cell2&&cell2.t||"z",cell2.v!=null&&(sp["data-v"]=escapehtml(cell2.v instanceof Date?cell2.v.toISOString():cell2.v)),cell2.z!=null&&(sp["data-z"]=cell2.z),cell2.l&&(cell2.l.Target||"#").charAt(0)!="#"&&(w='<a href="'+escapehtml(cell2.l.Target)+'">'+w+"</a>")),sp.id=(o.id||"sjs")+"-"+coord,oo.push(writextag("td",w,sp))}}var preamble="<tr>";return preamble+oo.join("")+"</tr>"}function html_to_workbook(str,opts){var mtch=str_match_xml_ig(str,"table");if(!mtch||mtch.length==0)throw new Error("Invalid HTML: could not find <table>");if(mtch.length==1){var w=sheet_to_workbook(html_to_sheet(mtch[0],opts),opts);return w.bookType="html",w}var wb=book_new();return mtch.forEach(function(s,idx){book_append_sheet(wb,html_to_sheet(s,opts),"Sheet"+(idx+1))}),wb.bookType="html",wb}function make_html_preamble(ws,R,o){var out=[];return out.join("")+"<table"+(o&&o.id?' id="'+o.id+'"':"")+">"}function sheet_to_html(ws,opts){var o=opts||{},header=o.header!=null?o.header:HTML_BEGIN,footer=o.footer!=null?o.footer:HTML_END,out=[header],r=decode_range(ws["!ref"]||"A1");if(out.push(make_html_preamble(ws,r,o)),ws["!ref"])for(var R=r.s.r;R<=r.e.r;++R)out.push(make_html_row(ws,r,R,o));return out.push("</table>"+footer),out.join("")}function sheet_add_dom(ws,table,_opts){var rows=table.rows;if(!rows)throw"Unsupported origin when "+table.tagName+" is not a TABLE";var opts=_opts||{},dense=ws["!data"]!=null,or_R=0,or_C=0;if(opts.origin!=null)if(typeof opts.origin=="number")or_R=opts.origin;else{var _origin=typeof opts.origin=="string"?decode_cell(opts.origin):opts.origin;or_R=_origin.r,or_C=_origin.c}var sheetRows=Math.min(opts.sheetRows||1e7,rows.length),range={s:{r:0,c:0},e:{r:or_R,c:or_C}};if(ws["!ref"]){var _range=decode_range(ws["!ref"]);range.s.r=Math.min(range.s.r,_range.s.r),range.s.c=Math.min(range.s.c,_range.s.c),range.e.r=Math.max(range.e.r,_range.e.r),range.e.c=Math.max(range.e.c,_range.e.c),or_R==-1&&(range.e.r=or_R=_range.e.r+1)}var merges=[],midx=0,rowinfo=ws["!rows"]||(ws["!rows"]=[]),_R=0,R=0,_C=0,C=0,RS=0,CS=0;for(ws["!cols"]||(ws["!cols"]=[]);_R<rows.length&&R<sheetRows;++_R){var row=rows[_R];if(is_dom_element_hidden(row)){if(opts.display)continue;rowinfo[R]={hidden:!0}}var elts=row.cells;for(_C=C=0;_C<elts.length;++_C){var elt=elts[_C];if(!(opts.display&&is_dom_element_hidden(elt))){var v=elt.hasAttribute("data-v")?elt.getAttribute("data-v"):elt.hasAttribute("v")?elt.getAttribute("v"):htmldecode(elt.innerHTML),z=elt.getAttribute("data-z")||elt.getAttribute("z");for(midx=0;midx<merges.length;++midx){var m=merges[midx];m.s.c==C+or_C&&m.s.r<R+or_R&&R+or_R<=m.e.r&&(C=m.e.c+1-or_C,midx=-1)}CS=+elt.getAttribute("colspan")||1,((RS=+elt.getAttribute("rowspan")||1)>1||CS>1)&&merges.push({s:{r:R+or_R,c:C+or_C},e:{r:R+or_R+(RS||1)-1,c:C+or_C+(CS||1)-1}});var o={t:"s",v},_t=elt.getAttribute("data-t")||elt.getAttribute("t")||"";v!=null&&(v.length==0?o.t=_t||"z":opts.raw||v.trim().length==0||_t=="s"||(_t=="e"&&BErr[+v]?o={t:"e",v:+v,w:BErr[+v]}:v==="TRUE"?o={t:"b",v:!0}:v==="FALSE"?o={t:"b",v:!1}:isNaN(fuzzynum(v))?isNaN(fuzzydate(v).getDate())?v.charCodeAt(0)==35&&RBErr[v]!=null&&(o={t:"e",v:RBErr[v],w:v}):(o={t:"d",v:parseDate(v)},opts.UTC&&(o.v=local_to_utc(o.v)),opts.cellDates||(o={t:"n",v:datenum(o.v)}),o.z=opts.dateNF||table_fmt[14]):o={t:"n",v:fuzzynum(v)})),o.z===void 0&&z!=null&&(o.z=z);var l="",Aelts=elt.getElementsByTagName("A");if(Aelts&&Aelts.length)for(var Aelti=0;Aelti<Aelts.length&&!(Aelts[Aelti].hasAttribute("href")&&(l=Aelts[Aelti].getAttribute("href"),l.charAt(0)!="#"));++Aelti);l&&l.charAt(0)!="#"&&l.slice(0,11).toLowerCase()!="javascript:"&&(o.l={Target:l}),dense?(ws["!data"][R+or_R]||(ws["!data"][R+or_R]=[]),ws["!data"][R+or_R][C+or_C]=o):ws[encode_cell({c:C+or_C,r:R+or_R})]=o,range.e.c<C+or_C&&(range.e.c=C+or_C),C+=CS}}++R}return merges.length&&(ws["!merges"]=(ws["!merges"]||[]).concat(merges)),range.e.r=Math.max(range.e.r,R-1+or_R),ws["!ref"]=encode_range(range),R>=sheetRows&&(ws["!fullref"]=encode_range((range.e.r=rows.length-_R+R-1+or_R,range))),ws}function parse_dom_table(table,_opts){var opts=_opts||{},ws={};return opts.dense&&(ws["!data"]=[]),sheet_add_dom(ws,table,_opts)}function table_to_book(table,opts){var o=sheet_to_workbook(parse_dom_table(table,opts),opts);return o}function is_dom_element_hidden(element){var display="",get_computed_style=get_get_computed_style_function(element);return get_computed_style&&(display=get_computed_style(element).getPropertyValue("display")),display||(display=element.style&&element.style.display),display==="none"}function get_get_computed_style_function(element){return element.ownerDocument.defaultView&&typeof element.ownerDocument.defaultView.getComputedStyle=="function"?element.ownerDocument.defaultView.getComputedStyle:typeof getComputedStyle=="function"?getComputedStyle:null}function parse_text_p(text){var fixed=text.replace(/[\t\r\n]/g," ").trim().replace(/ +/g," ").replace(/<text:s\/>/g," ").replace(/<text:s text:c="(\d+)"\/>/g,function($$,$1){return Array(parseInt($1,10)+1).join(" ")}).replace(/<text:tab[^<>]*\/>/g," ").replace(/<text:line-break\/>/g,`
|
|
41
|
-
`),v=unescapexml(fixed.replace(/<[^<>]*>/g,""));return[v]}function parse_ods_styles(d,_opts,_nfm){var number_format_map=_nfm||{},str=xlml_normalize(d);xlmlregex.lastIndex=0,str=remove_doctype(str_remove_ng(str,"<!--","-->"));for(var Rn,NFtag,NF="",tNF="",y,etpos=0,tidx=-1,infmt=!1,payload="";Rn=xlmlregex.exec(str);)switch(Rn[3]=Rn[3].replace(/_[\s\S]*$/,"")){case"number-style":case"currency-style":case"percentage-style":case"date-style":case"time-style":case"text-style":Rn[1]==="/"?(infmt=!1,NFtag["truncate-on-overflow"]=="false"&&(NF.match(/h/)?NF=NF.replace(/h+/,"[$&]"):NF.match(/m/)?NF=NF.replace(/m+/,"[$&]"):NF.match(/s/)&&(NF=NF.replace(/s+/,"[$&]"))),number_format_map[NFtag.name]=NF,NF=""):Rn[0].charAt(Rn[0].length-2)!=="/"&&(infmt=!0,NF="",NFtag=parsexmltag(Rn[0],!1));break;case"boolean-style":Rn[1]==="/"?(infmt=!1,number_format_map[NFtag.name]="General",NF=""):Rn[0].charAt(Rn[0].length-2)!=="/"&&(infmt=!0,NF="",NFtag=parsexmltag(Rn[0],!1));break;case"boolean":NF+="General";break;case"text":Rn[1]==="/"?(payload=str.slice(tidx,xlmlregex.lastIndex-Rn[0].length),payload=="%"&&NFtag[0]=="<number:percentage-style"?NF+="%":NF+='"'+payload.replace(/"/g,'""')+'"'):Rn[0].charAt(Rn[0].length-2)!=="/"&&(tidx=xlmlregex.lastIndex);break;case"day":switch(y=parsexmltag(Rn[0],!1),y.style){case"short":NF+="d";break;case"long":NF+="dd";break;default:NF+="dd";break}break;case"day-of-week":switch(y=parsexmltag(Rn[0],!1),y.style){case"short":NF+="ddd";break;case"long":NF+="dddd";break;default:NF+="ddd";break}break;case"era":switch(y=parsexmltag(Rn[0],!1),y.style){case"short":NF+="ee";break;case"long":NF+="eeee";break;default:NF+="eeee";break}break;case"hours":switch(y=parsexmltag(Rn[0],!1),y.style){case"short":NF+="h";break;case"long":NF+="hh";break;default:NF+="hh";break}break;case"minutes":switch(y=parsexmltag(Rn[0],!1),y.style){case"short":NF+="m";break;case"long":NF+="mm";break;default:NF+="mm";break}break;case"month":switch(y=parsexmltag(Rn[0],!1),y.textual&&(NF+="mm"),y.style){case"short":NF+="m";break;case"long":NF+="mm";break;default:NF+="m";break}break;case"seconds":{switch(y=parsexmltag(Rn[0],!1),y.style){case"short":NF+="s";break;case"long":NF+="ss";break;default:NF+="ss";break}y["decimal-places"]&&(NF+="."+fill("0",+y["decimal-places"]))}break;case"year":switch(y=parsexmltag(Rn[0],!1),y.style){case"short":NF+="yy";break;case"long":NF+="yyyy";break;default:NF+="yy";break}break;case"am-pm":NF+="AM/PM";break;case"week-of-year":case"quarter":console.error("Excel does not support ODS format token "+Rn[3]);break;case"fill-character":Rn[1]==="/"?(payload=str.slice(tidx,xlmlregex.lastIndex-Rn[0].length),NF+='"'+payload.replace(/"/g,'""')+'"*'):Rn[0].charAt(Rn[0].length-2)!=="/"&&(tidx=xlmlregex.lastIndex);break;case"scientific-number":y=parsexmltag(Rn[0],!1),NF+="0."+fill("0",+y["min-decimal-places"]||+y["decimal-places"]||2)+fill("?",+y["decimal-places"]-+y["min-decimal-places"]||0)+"E"+(parsexmlbool(y["forced-exponent-sign"])?"+":"")+fill("0",+y["min-exponent-digits"]||2);break;case"fraction":y=parsexmltag(Rn[0],!1),+y["min-integer-digits"]?NF+=fill("0",+y["min-integer-digits"]):NF+="#",NF+=" ",NF+=fill("?",+y["min-numerator-digits"]||1),NF+="/",+y["denominator-value"]?NF+=y["denominator-value"]:NF+=fill("?",+y["min-denominator-digits"]||1);break;case"currency-symbol":Rn[1]==="/"?NF+='"'+str.slice(tidx,xlmlregex.lastIndex-Rn[0].length).replace(/"/g,'""')+'"':Rn[0].charAt(Rn[0].length-2)!=="/"?tidx=xlmlregex.lastIndex:NF+="$";break;case"text-properties":switch(y=parsexmltag(Rn[0],!1),(y.color||"").toLowerCase().replace("#","")){case"ff0000":case"red":NF="[Red]"+NF;break}break;case"text-content":NF+="@";break;case"map":y=parsexmltag(Rn[0],!1),unescapexml(y.condition)=="value()>=0"?NF=number_format_map[y["apply-style-name"]]+";"+NF:console.error("ODS number format may be incorrect: "+y.condition);break;case"number":if(Rn[1]==="/")break;y=parsexmltag(Rn[0],!1),tNF="",tNF+=fill("0",+y["min-integer-digits"]||1),parsexmlbool(y.grouping)&&(tNF=commaify(fill("#",Math.max(0,4-tNF.length))+tNF)),(+y["min-decimal-places"]||+y["decimal-places"])&&(tNF+="."),+y["min-decimal-places"]&&(tNF+=fill("0",+y["min-decimal-places"]||1)),+y["decimal-places"]-(+y["min-decimal-places"]||0)&&(tNF+=fill("0",+y["decimal-places"]-(+y["min-decimal-places"]||0))),NF+=tNF;break;case"embedded-text":Rn[1]==="/"?etpos==0?NF+='"'+str.slice(tidx,xlmlregex.lastIndex-Rn[0].length).replace(/"/g,'""')+'"':NF=NF.slice(0,etpos)+'"'+str.slice(tidx,xlmlregex.lastIndex-Rn[0].length).replace(/"/g,'""')+'"'+NF.slice(etpos):Rn[0].charAt(Rn[0].length-2)!=="/"&&(tidx=xlmlregex.lastIndex,etpos=-+parsexmltag(Rn[0],!1).position||0);break}return number_format_map}function parse_content_xml(d,_opts,_nfm){var opts=_opts||{};DENSE!=null&&opts.dense==null&&(opts.dense=DENSE);var str=xlml_normalize(d),state=[],tmp,tag,nfidx,NF="",pidx=0,sheetag,rowtag,Sheets={},SheetNames=[],ws={};opts.dense&&(ws["!data"]=[]);var Rn,q,ctag={value:""},ctag2={},textp="",textpidx=0,textptag,oldtextp="",oldtextpidx=0,textR=[],oldtextR=[],R=-1,C=-1,range={s:{r:1e6,c:1e7},e:{r:0,c:0}},row_ol=0,number_format_map=_nfm||{},styles={},merges=[],mrange={},mR=0,mC=0,rowinfo=[],rowpeat=1,colpeat=1,arrayf=[],WB={Names:[],WBProps:{}},atag={},_Ref=["",""],comments=[],comment={},creator="",creatoridx=0,isstub=!1,intable=!1,i=0;for(xlmlregex.lastIndex=0,str=remove_doctype(str_remove_ng(str,"<!--","-->"));Rn=xlmlregex.exec(str);)switch(Rn[3]=Rn[3].replace(/_[\s\S]*$/,"")){case"table":case"\u5DE5\u4F5C\u8868":Rn[1]==="/"?(range.e.c>=range.s.c&&range.e.r>=range.s.r?ws["!ref"]=encode_range(range):ws["!ref"]="A1:A1",opts.sheetRows>0&&opts.sheetRows<=range.e.r&&(ws["!fullref"]=ws["!ref"],range.e.r=opts.sheetRows-1,ws["!ref"]=encode_range(range)),merges.length&&(ws["!merges"]=merges),rowinfo.length&&(ws["!rows"]=rowinfo),sheetag.name=sheetag.\u540D\u79F0||sheetag.name,typeof JSON<"u"&&JSON.stringify(sheetag),SheetNames.push(sheetag.name),Sheets[sheetag.name]=ws,intable=!1):Rn[0].charAt(Rn[0].length-2)!=="/"&&(sheetag=parsexmltag(Rn[0],!1),R=C=-1,range.s.r=range.s.c=1e7,range.e.r=range.e.c=0,ws={},opts.dense&&(ws["!data"]=[]),merges=[],rowinfo=[],intable=!0);break;case"table-row-group":Rn[1]==="/"?--row_ol:++row_ol;break;case"table-row":case"\u884C":if(Rn[1]==="/"){R+=rowpeat,rowpeat=1;break}if(rowtag=parsexmltag(Rn[0],!1),rowtag.\u884C\u53F7?R=rowtag.\u884C\u53F7-1:R==-1&&(R=0),rowpeat=+rowtag["number-rows-repeated"]||1,rowpeat<10)for(i=0;i<rowpeat;++i)row_ol>0&&(rowinfo[R+i]={level:row_ol});C=-1;break;case"covered-table-cell":if(Rn[1]!=="/")if(++C,ctag=parsexmltag(Rn[0],!1),colpeat=parseInt(ctag["number-columns-repeated"]||"1",10)||1,opts.sheetStubs){for(;colpeat-- >0;)opts.dense?(ws["!data"][R]||(ws["!data"][R]=[]),ws["!data"][R][C]={t:"z"}):ws[encode_cell({r:R,c:C})]={t:"z"},++C;--C}else C+=colpeat-1;textp="",textR=[];break;case"table-cell":case"\u6570\u636E":if(Rn[0].charAt(Rn[0].length-2)==="/")++C,ctag=parsexmltag(Rn[0],!1),colpeat=parseInt(ctag["number-columns-repeated"]||"1",10)||1,q={t:"z",v:null},ctag.formula&&opts.cellFormula!=!1&&(q.f=ods_to_csf_formula(unescapexml(ctag.formula))),ctag["style-name"]&&styles[ctag["style-name"]]&&(q.z=styles[ctag["style-name"]]),(ctag.\u6570\u636E\u7C7B\u578B||ctag["value-type"])=="string"&&(q.t="s",q.v=unescapexml(ctag["string-value"]||""),opts.dense?(ws["!data"][R]||(ws["!data"][R]=[]),ws["!data"][R][C]=q):ws[encode_col(C)+encode_row(R)]=q),C+=colpeat-1;else if(Rn[1]!=="/"){++C,textp=oldtextp="",textpidx=oldtextpidx=0,textR=[],oldtextR=[],colpeat=1;var rptR=rowpeat?R+rowpeat-1:R;if(C>range.e.c&&(range.e.c=C),C<range.s.c&&(range.s.c=C),R<range.s.r&&(range.s.r=R),rptR>range.e.r&&(range.e.r=rptR),ctag=parsexmltag(Rn[0],!1),ctag2=parsexmltagraw(Rn[0],!0),comments=[],comment={},q={t:ctag.\u6570\u636E\u7C7B\u578B||ctag["value-type"],v:null},ctag["style-name"]&&styles[ctag["style-name"]]&&(q.z=styles[ctag["style-name"]]),opts.cellFormula)if(ctag.formula&&(ctag.formula=unescapexml(ctag.formula)),ctag["number-matrix-columns-spanned"]&&ctag["number-matrix-rows-spanned"]&&(mR=parseInt(ctag["number-matrix-rows-spanned"],10)||0,mC=parseInt(ctag["number-matrix-columns-spanned"],10)||0,mrange={s:{r:R,c:C},e:{r:R+mR-1,c:C+mC-1}},q.F=encode_range(mrange),arrayf.push([mrange,q.F])),ctag.formula)q.f=ods_to_csf_formula(ctag.formula);else for(i=0;i<arrayf.length;++i)R>=arrayf[i][0].s.r&&R<=arrayf[i][0].e.r&&C>=arrayf[i][0].s.c&&C<=arrayf[i][0].e.c&&(q.F=arrayf[i][1]);switch((ctag["number-columns-spanned"]||ctag["number-rows-spanned"])&&(mR=parseInt(ctag["number-rows-spanned"]||"1",10)||1,mC=parseInt(ctag["number-columns-spanned"]||"1",10)||1,mR*mC>1&&(mrange={s:{r:R,c:C},e:{r:R+mR-1,c:C+mC-1}},merges.push(mrange))),ctag["number-columns-repeated"]&&(colpeat=parseInt(ctag["number-columns-repeated"],10)),q.t){case"boolean":q.t="b",q.v=parsexmlbool(ctag["boolean-value"])||+ctag["boolean-value"]>=1;break;case"float":q.t="n",q.v=parseFloat(ctag.value),opts.cellDates&&q.z&&fmt_is_date(q.z)&&(q.v=numdate(q.v+(WB.WBProps.date1904?1462:0)),q.t=typeof q.v=="number"?"n":"d");break;case"percentage":q.t="n",q.v=parseFloat(ctag.value);break;case"currency":q.t="n",q.v=parseFloat(ctag.value);break;case"date":q.t="d",q.v=parseDate(ctag["date-value"],WB.WBProps.date1904),opts.cellDates||(q.t="n",q.v=datenum(q.v,WB.WBProps.date1904)),q.z||(q.z="m/d/yy");break;case"time":q.t="n",q.v=parse_isodur(ctag["time-value"])/86400,opts.cellDates&&(q.v=numdate(q.v),q.t=typeof q.v=="number"?"n":"d"),q.z||(q.z="HH:MM:SS");break;case"number":q.t="n",q.v=parseFloat(ctag.\u6570\u636E\u6570\u503C);break;default:if(q.t==="string"||q.t==="text"||!q.t)q.t="s",ctag["string-value"]!=null&&(textp=unescapexml(ctag["string-value"]),textR=[]);else throw new Error("Unsupported value type "+q.t)}}else{if(isstub=!1,ctag2["calcext:value-type"]=="error"&&RBErr[textp]!=null&&(q.t="e",q.w=textp,q.v=RBErr[textp]),q.t==="s"&&(q.v=textp||"",textR.length&&(q.R=textR),isstub=textpidx==0),atag.Target&&(q.l=atag),comments.length>0&&(q.c=comments,comments=[]),textp&&opts.cellText!==!1&&(q.w=textp),isstub&&(q.t="z",delete q.v),(!isstub||opts.sheetStubs)&&!(opts.sheetRows&&opts.sheetRows<=R))for(var rpt=0;rpt<rowpeat;++rpt){if(colpeat=parseInt(ctag["number-columns-repeated"]||"1",10),opts.dense)for(ws["!data"][R+rpt]||(ws["!data"][R+rpt]=[]),ws["!data"][R+rpt][C]=rpt==0?q:dup(q);--colpeat>0;)ws["!data"][R+rpt][C+colpeat]=dup(q);else for(ws[encode_cell({r:R+rpt,c:C})]=q;--colpeat>0;)ws[encode_cell({r:R+rpt,c:C+colpeat})]=dup(q);range.e.c<=C&&(range.e.c=C)}colpeat=parseInt(ctag["number-columns-repeated"]||"1",10),C+=colpeat-1,colpeat=0,q={},textp="",textR=[]}atag={};break;case"document":case"document-content":case"\u7535\u5B50\u8868\u683C\u6587\u6863":case"spreadsheet":case"\u4E3B\u4F53":case"scripts":case"styles":case"font-face-decls":case"master-styles":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else Rn[0].charAt(Rn[0].length-2)!=="/"&&state.push([Rn[3],!0]);break;case"annotation":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp;comment.t=textp,textR.length&&(comment.R=textR),comment.a=creator,comments.push(comment),textp=oldtextp,textpidx=oldtextpidx,textR=oldtextR}else if(Rn[0].charAt(Rn[0].length-2)!=="/"){state.push([Rn[3],!1]);var annotag=parsexmltag(Rn[0],!0);annotag.display&&parsexmlbool(annotag.display)||(comments.hidden=!0),oldtextp=textp,oldtextpidx=textpidx,oldtextR=textR,textp="",textpidx=0,textR=[]}creator="",creatoridx=0;break;case"creator":Rn[1]==="/"?creator=str.slice(creatoridx,Rn.index):creatoridx=Rn.index+Rn[0].length;break;case"meta":case"\u5143\u6570\u636E":case"settings":case"config-item-set":case"config-item-map-indexed":case"config-item-map-entry":case"config-item-map-named":case"shapes":case"frame":case"text-box":case"image":case"data-pilot-tables":case"list-style":case"form":case"dde-links":case"event-listeners":case"chart":if(Rn[1]==="/"){if((tmp=state.pop())[0]!==Rn[3])throw"Bad state: "+tmp}else Rn[0].charAt(Rn[0].length-2)!=="/"&&state.push([Rn[3],!1]);textp="",textpidx=0,textR=[];break;case"scientific-number":case"currency-symbol":case"fill-character":break;case"text-style":case"boolean-style":case"number-style":case"currency-style":case"percentage-style":case"date-style":case"time-style":if(Rn[1]==="/"){var xlmlidx=xlmlregex.lastIndex;parse_ods_styles(str.slice(nfidx,xlmlregex.lastIndex),_opts,number_format_map),xlmlregex.lastIndex=xlmlidx}else Rn[0].charAt(Rn[0].length-2)!=="/"&&(nfidx=xlmlregex.lastIndex-Rn[0].length);break;case"script":break;case"libraries":break;case"automatic-styles":break;case"default-style":case"page-layout":break;case"style":{var styletag=parsexmltag(Rn[0],!1);styletag.family=="table-cell"&&number_format_map[styletag["data-style-name"]]&&(styles[styletag.name]=number_format_map[styletag["data-style-name"]])}break;case"map":break;case"font-face":break;case"paragraph-properties":break;case"table-properties":break;case"table-column-properties":break;case"table-row-properties":break;case"table-cell-properties":break;case"number":break;case"fraction":break;case"day":case"month":case"year":case"era":case"day-of-week":case"week-of-year":case"quarter":case"hours":case"minutes":case"seconds":case"am-pm":break;case"boolean":break;case"text":if(Rn[0].slice(-2)==="/>")break;if(Rn[1]==="/")switch(state[state.length-1][0]){case"number-style":case"date-style":case"time-style":NF+=str.slice(pidx,Rn.index);break}else pidx=Rn.index+Rn[0].length;break;case"named-range":tag=parsexmltag(Rn[0],!1),_Ref=ods_to_csf_3D(tag["cell-range-address"]);var nrange={Name:tag.name,Ref:_Ref[0]+"!"+_Ref[1]};intable&&(nrange.Sheet=SheetNames.length),WB.Names.push(nrange);break;case"text-content":break;case"text-properties":break;case"embedded-text":break;case"body":case"\u7535\u5B50\u8868\u683C":break;case"forms":break;case"table-column":break;case"table-header-rows":break;case"table-rows":break;case"table-column-group":break;case"table-header-columns":break;case"table-columns":break;case"null-date":tag=parsexmltag(Rn[0],!1),tag["date-value"]==="1904-01-01"&&(WB.WBProps.date1904=!0);break;case"graphic-properties":break;case"calculation-settings":break;case"named-expressions":break;case"label-range":break;case"label-ranges":break;case"named-expression":break;case"sort":break;case"sort-by":break;case"sort-groups":break;case"tab":break;case"line-break":break;case"span":break;case"p":case"\u6587\u672C\u4E32":if(["master-styles"].indexOf(state[state.length-1][0])>-1)break;if(Rn[1]==="/"&&(!ctag||!ctag["string-value"])){var ptp=parse_text_p(str.slice(textpidx,Rn.index),textptag);textp=(textp.length>0?textp+`
|
|
42
|
-
`:"")+ptp[0]}else Rn[0].slice(-2)=="/>"?textp+=`
|
|
43
|
-
`:(textptag=parsexmltag(Rn[0],!1),textpidx=Rn.index+Rn[0].length);break;case"s":break;case"database-range":if(Rn[1]==="/")break;try{_Ref=ods_to_csf_3D(parsexmltag(Rn[0])["target-range-address"]),Sheets[_Ref[0]]["!autofilter"]={ref:_Ref[1]}}catch{}break;case"date":break;case"object":break;case"title":case"\u6807\u9898":break;case"desc":break;case"binary-data":break;case"table-source":break;case"scenario":break;case"iteration":break;case"content-validations":break;case"content-validation":break;case"help-message":break;case"error-message":break;case"database-ranges":break;case"filter":break;case"filter-and":break;case"filter-or":break;case"filter-condition":break;case"filter-set-item":break;case"list-level-style-bullet":break;case"list-level-style-number":break;case"list-level-properties":break;case"sender-firstname":case"sender-lastname":case"sender-initials":case"sender-title":case"sender-position":case"sender-email":case"sender-phone-private":case"sender-fax":case"sender-company":case"sender-phone-work":case"sender-street":case"sender-city":case"sender-postal-code":case"sender-country":case"sender-state-or-province":case"author-name":case"author-initials":case"chapter":case"file-name":case"template-name":case"sheet-name":break;case"event-listener":break;case"initial-creator":case"creation-date":case"print-date":case"generator":case"document-statistic":case"user-defined":case"editing-duration":case"editing-cycles":break;case"config-item":break;case"page-number":break;case"page-count":break;case"time":break;case"cell-range-source":break;case"detective":break;case"operation":break;case"highlighted-range":break;case"data-pilot-table":case"source-cell-range":case"source-service":case"data-pilot-field":case"data-pilot-level":case"data-pilot-subtotals":case"data-pilot-subtotal":case"data-pilot-members":case"data-pilot-member":case"data-pilot-display-info":case"data-pilot-sort-info":case"data-pilot-layout-info":case"data-pilot-field-reference":case"data-pilot-groups":case"data-pilot-group":case"data-pilot-group-member":break;case"rect":break;case"dde-connection-decls":case"dde-connection-decl":case"dde-link":case"dde-source":break;case"properties":break;case"property":break;case"a":if(Rn[1]!=="/"){if(atag=parsexmltag(Rn[0],!1),!atag.href)break;atag.Target=unescapexml(atag.href),delete atag.href,atag.Target.charAt(0)=="#"&&atag.Target.indexOf(".")>-1?(_Ref=ods_to_csf_3D(atag.Target.slice(1)),atag.Target="#"+_Ref[0]+"!"+_Ref[1]):atag.Target.match(/^\.\.[\\\/]/)&&(atag.Target=atag.Target.slice(3))}break;case"table-protection":break;case"data-pilot-grand-total":break;case"office-document-common-attrs":break;default:switch(Rn[2]){case"dc:":case"calcext:":case"loext:":case"ooo:":case"chartooo:":case"draw:":case"style:":case"chart:":case"form:":case"uof:":case"\u8868:":case"\u5B57:":break;default:if(opts.WTF)throw new Error(Rn)}}var out={Sheets,SheetNames,Workbook:WB};return opts.bookSheets&&delete out.Sheets,out}function parse_ods(zip,opts){opts=opts||{},safegetzipfile(zip,"META-INF/manifest.xml")&&parse_manifest(getzipdata(zip,"META-INF/manifest.xml"),opts);var styles=getzipstr(zip,"styles.xml"),Styles=styles&&parse_ods_styles(utf8read(styles),opts),content=getzipstr(zip,"content.xml");if(!content)throw new Error("Missing content.xml in ODS / UOF file");var wb=parse_content_xml(utf8read(content),opts,Styles);return safegetzipfile(zip,"meta.xml")&&(wb.Props=parse_core_props(getzipdata(zip,"meta.xml"))),wb.bookType="ods",wb}function parse_fods(data,opts){var wb=parse_content_xml(data,opts);return wb.bookType="fods",wb}function write_number_format_ods(nf,nfidx){var type="number",payload="",nopts={"style:name":nfidx},c="",i=0;nf=nf.replace(/"[$]"/g,"$");j:{if(nf.indexOf(";")>-1&&(console.error("Unsupported ODS Style Map exported. Using first branch of "+nf),nf=nf.slice(0,nf.indexOf(";"))),nf=="@"){type="text",payload="<number:text-content/>";break j}if(nf.indexOf(/\$/)>-1&&(type="currency"),nf[i]=='"'){for(c="";nf[++i]!='"'||nf[++i]=='"';)c+=nf[i];--i,nf[i+1]=="*"?(i++,payload+="<number:fill-character>"+escapexml(c.replace(/""/g,'"'))+"</number:fill-character>"):payload+="<number:text>"+escapexml(c.replace(/""/g,'"'))+"</number:text>",nf=nf.slice(i+1),i=0}var t=nf.match(/# (\?+)\/(\?+)/);if(t){payload+=writextag("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":t[1].length,"number:max-denominator-value":Math.max(+t[1].replace(/./g,"9"),+t[2].replace(/./g,"9"))});break j}if(t=nf.match(/# (\?+)\/(\d+)/)){payload+=writextag("number:fraction",null,{"number:min-integer-digits":0,"number:min-numerator-digits":t[1].length,"number:denominator-value":+t[2]});break j}if(t=nf.match(/\b(\d+)(|\.\d+)%/)){type="percentage",payload+=writextag("number:number",null,{"number:decimal-places":t[2]&&t.length-1||0,"number:min-decimal-places":t[2]&&t.length-1||0,"number:min-integer-digits":t[1].length})+"<number:text>%</number:text>";break j}var has_time=!1;if(["y","m","d"].indexOf(nf[0])>-1){type="date";k:for(;i<nf.length;++i)switch(c=nf[i].toLowerCase()){case"h":case"s":has_time=!0,--i;break k;case"m":l:for(var h=i+1;h<nf.length;++h)switch(nf[h]){case"y":case"d":break l;case"h":case"s":has_time=!0,--i;break k}case"y":case"d":for(;(nf[++i]||"").toLowerCase()==c[0];)c+=c[0];switch(--i,c){case"y":case"yy":payload+="<number:year/>";break;case"yyy":case"yyyy":payload+='<number:year number:style="long"/>';break;case"mmmmm":console.error("ODS has no equivalent of format |mmmmm|");case"m":case"mm":case"mmm":case"mmmm":payload+='<number:month number:style="'+(c.length%2?"short":"long")+'" number:textual="'+(c.length>=3?"true":"false")+'"/>';break;case"d":case"dd":payload+='<number:day number:style="'+(c.length%2?"short":"long")+'"/>';break;case"ddd":case"dddd":payload+='<number:day-of-week number:style="'+(c.length%2?"short":"long")+'"/>';break}break;case'"':for(;nf[++i]!='"'||nf[++i]=='"';)c+=nf[i];--i,payload+="<number:text>"+escapexml(c.slice(1).replace(/""/g,'"'))+"</number:text>";break;case"\\":c=nf[++i],payload+="<number:text>"+escapexml(c)+"</number:text>";break;case"/":case":":payload+="<number:text>"+escapexml(c)+"</number:text>";break;default:console.error("unrecognized character "+c+" in ODF format "+nf)}if(!has_time)break j;nf=nf.slice(i+1),i=0}if(nf.match(/^\[?[hms]/)){for(type=="number"&&(type="time"),nf.match(/\[/)&&(nf=nf.replace(/[\[\]]/g,""),nopts["number:truncate-on-overflow"]="false");i<nf.length;++i)switch(c=nf[i].toLowerCase()){case"h":case"m":case"s":for(;(nf[++i]||"").toLowerCase()==c[0];)c+=c[0];switch(--i,c){case"h":case"hh":payload+='<number:hours number:style="'+(c.length%2?"short":"long")+'"/>';break;case"m":case"mm":payload+='<number:minutes number:style="'+(c.length%2?"short":"long")+'"/>';break;case"s":case"ss":if(nf[i+1]==".")do c+=nf[i+1],++i;while(nf[i+1]=="0");payload+='<number:seconds number:style="'+(c.match("ss")?"long":"short")+'"'+(c.match(/\./)?' number:decimal-places="'+(c.match(/0+/)||[""])[0].length+'"':"")+"/>";break}break;case'"':for(;nf[++i]!='"'||nf[++i]=='"';)c+=nf[i];--i,payload+="<number:text>"+escapexml(c.slice(1).replace(/""/g,'"'))+"</number:text>";break;case"/":case":":payload+="<number:text>"+escapexml(c)+"</number:text>";break;case"a":if(nf.slice(i,i+3).toLowerCase()=="a/p"){payload+="<number:am-pm/>",i+=2;break}if(nf.slice(i,i+5).toLowerCase()=="am/pm"){payload+="<number:am-pm/>",i+=4;break}default:console.error("unrecognized character "+c+" in ODF format "+nf)}break j}if(nf.indexOf(/\$/)>-1&&(type="currency"),nf[0]=="$"&&(payload+='<number:currency-symbol number:language="en" number:country="US">$</number:currency-symbol>',nf=nf.slice(1),i=0),i=0,nf[i]=='"'){for(;nf[++i]!='"'||nf[++i]=='"';)c+=nf[i];--i,nf[i+1]=="*"?(i++,payload+="<number:fill-character>"+escapexml(c.replace(/""/g,'"'))+"</number:fill-character>"):payload+="<number:text>"+escapexml(c.replace(/""/g,'"'))+"</number:text>",nf=nf.slice(i+1),i=0}var np=nf.match(/([#0][0#,]*)(\.[0#]*|)(E[+]?0*|)/i);if(!np||!np[0])console.error("Could not find numeric part of "+nf);else{var base=np[1].replace(/,/g,"");payload+="<number:"+(np[3]?"scientific-":"")+'number number:min-integer-digits="'+(base.indexOf("0")==-1?"0":base.length-base.indexOf("0"))+'"'+(np[0].indexOf(",")>-1?' number:grouping="true"':"")+(np[2]&&' number:decimal-places="'+(np[2].length-1)+'"'||' number:decimal-places="0"')+(np[3]&&np[3].indexOf("+")>-1?' number:forced-exponent-sign="true"':"")+(np[3]?' number:min-exponent-digits="'+np[3].match(/0+/)[0].length+'"':"")+"></number:"+(np[3]?"scientific-":"")+"number>",i=np.index+np[0].length}if(nf[i]=='"'){for(c="";nf[++i]!='"'||nf[++i]=='"';)c+=nf[i];--i,payload+="<number:text>"+escapexml(c.replace(/""/g,'"'))+"</number:text>"}}return payload?writextag("number:"+type+"-style",payload,nopts):(console.error("Could not generate ODS number format for |"+nf+"|"),"")}function write_names_ods(Names,SheetNames,idx){for(var scoped=[],namei=0;namei<Names.length;++namei){var name=Names[namei];name&&name.Sheet==(idx==-1?null:idx)&&scoped.push(name)}return scoped.length?` <table:named-expressions>
|
|
44
|
-
`+scoped.map(function(name2){var odsref=(idx==-1?"$":"")+csf_to_ods_3D(name2.Ref);return" "+writextag("table:named-range",null,{"table:name":name2.Name,"table:cell-range-address":odsref,"table:base-cell-address":odsref.replace(/[\.][^\.]*$/,".$A$1")})}).join(`
|
|
45
|
-
`)+`
|
|
46
|
-
</table:named-expressions>
|
|
47
|
-
`:""}function write_ods(wb,opts){if(opts.bookType=="fods")return write_content_ods(wb,opts);var zip=zip_new(),f="",manifest=[],rdf=[];return f="mimetype",zip_add_file(zip,f,"application/vnd.oasis.opendocument.spreadsheet"),f="content.xml",zip_add_file(zip,f,write_content_ods(wb,opts)),manifest.push([f,"text/xml"]),rdf.push([f,"ContentFile"]),f="styles.xml",zip_add_file(zip,f,write_styles_ods(wb,opts)),manifest.push([f,"text/xml"]),rdf.push([f,"StylesFile"]),f="meta.xml",zip_add_file(zip,f,XML_HEADER+write_meta_ods()),manifest.push([f,"text/xml"]),rdf.push([f,"MetadataFile"]),f="manifest.rdf",zip_add_file(zip,f,write_rdf(rdf)),manifest.push([f,"application/rdf+xml"]),f="META-INF/manifest.xml",zip_add_file(zip,f,write_manifest(manifest)),zip}function u8_to_dataview(array){return new DataView(array.buffer,array.byteOffset,array.byteLength)}function u8str(u8){return typeof TextDecoder<"u"?new TextDecoder().decode(u8):utf8read(a2s(u8))}function stru8(str){return typeof TextEncoder<"u"?new TextEncoder().encode(str):s2a(utf8write(str))}function u8concat(u8a){for(var len=0,i=0;i<u8a.length;++i)len+=u8a[i].length;var out=new Uint8Array(len),off=0;for(i=0;i<u8a.length;++i){var u8=u8a[i],L=u8.length;if(L<250)for(var j=0;j<L;++j)out[off++]=u8[j];else out.set(u8,off),off+=L}return out}function popcnt(x){return x-=x>>1&1431655765,x=(x&858993459)+(x>>2&858993459),(x+(x>>4)&252645135)*16843009>>>24}function readDecimal128LE(buf,offset){for(var exp=(buf[offset+15]&127)<<7|buf[offset+14]>>1,mantissa=buf[offset+14]&1,j=offset+13;j>=offset;--j)mantissa=mantissa*256+buf[j];return(buf[offset+15]&128?-mantissa:mantissa)*Math.pow(10,exp-6176)}function writeDecimal128LE(buf,offset,value){var exp=Math.floor(value==0?0:Math.LOG10E*Math.log(Math.abs(value)))+6176-16,mantissa=value/Math.pow(10,exp-6176);buf[offset+15]|=exp>>7,buf[offset+14]|=(exp&127)<<1;for(var i=0;mantissa>=1;++i,mantissa/=256)buf[offset+i]=mantissa&255;buf[offset+15]|=value>=0?0:128}function parse_varint49(buf,ptr){var l=ptr.l,usz=buf[l]&127;varint:if(buf[l++]>=128&&(usz|=(buf[l]&127)<<7,buf[l++]<128||(usz|=(buf[l]&127)<<14,buf[l++]<128)||(usz|=(buf[l]&127)<<21,buf[l++]<128)||(usz+=(buf[l]&127)*Math.pow(2,28),++l,buf[l++]<128)||(usz+=(buf[l]&127)*Math.pow(2,35),++l,buf[l++]<128)||(usz+=(buf[l]&127)*Math.pow(2,42),++l,buf[l++]<128)))break varint;return ptr.l=l,usz}function write_varint49(v){var usz=new Uint8Array(7);usz[0]=v&127;var L=1;sz:if(v>127){if(usz[L-1]|=128,usz[L]=v>>7&127,++L,v<=16383||(usz[L-1]|=128,usz[L]=v>>14&127,++L,v<=2097151)||(usz[L-1]|=128,usz[L]=v>>21&127,++L,v<=268435455)||(usz[L-1]|=128,usz[L]=v/256>>>21&127,++L,v<=34359738367)||(usz[L-1]|=128,usz[L]=v/65536>>>21&127,++L,v<=4398046511103))break sz;usz[L-1]|=128,usz[L]=v/16777216>>>21&127,++L}return usz[subarray](0,L)}function parse_packed_varints(buf){for(var ptr={l:0},out=[];ptr.l<buf.length;)out.push(parse_varint49(buf,ptr));return out}function write_packed_varints(nums){return u8concat(nums.map(function(x){return write_varint49(x)}))}function varint_to_i32(buf){var l=0,i32=buf[l]&127;return buf[l++]<128||(i32|=(buf[l]&127)<<7,buf[l++]<128)||(i32|=(buf[l]&127)<<14,buf[l++]<128)||(i32|=(buf[l]&127)<<21,buf[l++]<128)||(i32|=(buf[l]&15)<<28),i32}function parse_shallow(buf){for(var out=[],ptr={l:0};ptr.l<buf.length;){var off=ptr.l,num=parse_varint49(buf,ptr),type=num&7;num=num/8|0;var data,l=ptr.l;switch(type){case 0:{for(;buf[l++]>=128;);data=buf[subarray](ptr.l,l),ptr.l=l}break;case 1:data=buf[subarray](l,l+8),ptr.l=l+8;break;case 2:{var len=parse_varint49(buf,ptr);data=buf[subarray](ptr.l,ptr.l+len),ptr.l+=len}break;case 5:data=buf[subarray](l,l+4),ptr.l=l+4;break;default:throw new Error("PB Type ".concat(type," for Field ").concat(num," at offset ").concat(off))}var v={data,type};out[num]==null&&(out[num]=[]),out[num].push(v)}return out}function write_shallow(proto){var out=[];return proto.forEach(function(field,idx){idx!=0&&field.forEach(function(item){item.data&&(out.push(write_varint49(idx*8+item.type)),item.type==2&&out.push(write_varint49(item.data.length)),out.push(item.data))})}),u8concat(out)}function mappa(data,cb){return data?.map(function(d){return cb(d.data)})||[]}function parse_iwa_file(buf){for(var _a,out=[],ptr={l:0};ptr.l<buf.length;){var len=parse_varint49(buf,ptr),ai=parse_shallow(buf[subarray](ptr.l,ptr.l+len));ptr.l+=len;var res={id:varint_to_i32(ai[1][0].data),messages:[]};ai[2].forEach(function(b){var mi=parse_shallow(b.data),fl=varint_to_i32(mi[3][0].data);res.messages.push({meta:mi,data:buf[subarray](ptr.l,ptr.l+fl)}),ptr.l+=fl}),(_a=ai[3])!=null&&_a[0]&&(res.merge=varint_to_i32(ai[3][0].data)>>>0>0),out.push(res)}return out}function write_iwa_file(ias){var bufs=[];return ias.forEach(function(ia){var ai=[[],[{data:write_varint49(ia.id),type:0}],[]];ia.merge!=null&&(ai[3]=[{data:write_varint49(+!!ia.merge),type:0}]);var midata=[];ia.messages.forEach(function(mi){midata.push(mi.data),mi.meta[3]=[{type:0,data:write_varint49(mi.data.length)}],ai[2].push({data:write_shallow(mi.meta),type:2})});var aipayload=write_shallow(ai);bufs.push(write_varint49(aipayload.length)),bufs.push(aipayload),midata.forEach(function(mid){return bufs.push(mid)})}),u8concat(bufs)}function parse_snappy_chunk(type,buf){if(type!=0)throw new Error("Unexpected Snappy chunk type ".concat(type));for(var ptr={l:0},usz=parse_varint49(buf,ptr),chunks=[],l=ptr.l;l<buf.length;){var tag=buf[l]&3;if(tag==0){var len=buf[l++]>>2;if(len<60)++len;else{var c=len-59;len=buf[l],c>1&&(len|=buf[l+1]<<8),c>2&&(len|=buf[l+2]<<16),c>3&&(len|=buf[l+3]<<24),len>>>=0,len++,l+=c}chunks.push(buf[subarray](l,l+len)),l+=len;continue}else{var offset=0,length=0;if(tag==1?(length=(buf[l]>>2&7)+4,offset=(buf[l++]&224)<<3,offset|=buf[l++]):(length=(buf[l++]>>2)+1,tag==2?(offset=buf[l]|buf[l+1]<<8,l+=2):(offset=(buf[l]|buf[l+1]<<8|buf[l+2]<<16|buf[l+3]<<24)>>>0,l+=4)),offset==0)throw new Error("Invalid offset 0");for(var j=chunks.length-1,off=offset;j>=0&&off>=chunks[j].length;)off-=chunks[j].length,--j;if(j<0)if(off==0)off=chunks[j=0].length;else throw new Error("Invalid offset beyond length");if(length<off)chunks.push(chunks[j][subarray](chunks[j].length-off,chunks[j].length-off+length));else{for(off>0&&(chunks.push(chunks[j][subarray](chunks[j].length-off)),length-=off),++j;length>=chunks[j].length;)chunks.push(chunks[j]),length-=chunks[j].length,++j;length&&chunks.push(chunks[j][subarray](0,length))}chunks.length>25&&(chunks=[u8concat(chunks)])}}for(var clen=0,u8i=0;u8i<chunks.length;++u8i)clen+=chunks[u8i].length;if(clen!=usz)throw new Error("Unexpected length: ".concat(clen," != ").concat(usz));return chunks}function decompress_iwa_file(buf){Array.isArray(buf)&&(buf=new Uint8Array(buf));for(var out=[],l=0;l<buf.length;){var t=buf[l++],len=buf[l]|buf[l+1]<<8|buf[l+2]<<16;l+=3,out.push.apply(out,parse_snappy_chunk(t,buf[subarray](l,l+len))),l+=len}if(l!==buf.length)throw new Error("data is not a valid framed stream!");return out.length==1?out[0]:u8concat(out)}function compress_iwa_file(buf){for(var out=[],l=0;l<buf.length;){var c=Math.min(buf.length-l,268435455),frame=new Uint8Array(4);out.push(frame);var usz=write_varint49(c),L=usz.length;out.push(usz),c<=60?(L++,out.push(new Uint8Array([c-1<<2]))):c<=256?(L+=2,out.push(new Uint8Array([240,c-1&255]))):c<=65536?(L+=3,out.push(new Uint8Array([244,c-1&255,c-1>>8&255]))):c<=16777216?(L+=4,out.push(new Uint8Array([248,c-1&255,c-1>>8&255,c-1>>16&255]))):c<=4294967296&&(L+=5,out.push(new Uint8Array([252,c-1&255,c-1>>8&255,c-1>>16&255,c-1>>>24&255]))),out.push(buf[subarray](l,l+c)),L+=c,frame[0]=0,frame[1]=L&255,frame[2]=L>>8&255,frame[3]=L>>16&255,l+=c}return u8concat(out)}function numbers_format_cell(cell2,t,flags,ofmt,nfmt){var _a,_b,_c,_d,ctype=t&255,ver=t>>8,fmt=ver>=5?nfmt:ofmt;dur:if(flags&(ver>4?8:4)&&cell2.t=="n"&&ctype==7){var dstyle=(_a=fmt[7])!=null&&_a[0]?varint_to_i32(fmt[7][0].data):-1;if(dstyle==-1)break dur;var dmin=(_b=fmt[15])!=null&&_b[0]?varint_to_i32(fmt[15][0].data):-1,dmax=(_c=fmt[16])!=null&&_c[0]?varint_to_i32(fmt[16][0].data):-1,auto=(_d=fmt[40])!=null&&_d[0]?varint_to_i32(fmt[40][0].data):-1,d=cell2.v,dd=d;autodur:if(auto){if(d==0){dmin=dmax=2;break autodur}d>=604800?dmin=1:d>=86400?dmin=2:d>=3600?dmin=4:d>=60?dmin=8:d>=1?dmin=16:dmin=32,Math.floor(d)!=d?dmax=32:d%60?dmax=16:d%3600?dmax=8:d%86400?dmax=4:d%604800&&(dmax=2),dmax<dmin&&(dmax=dmin)}if(dmin==-1||dmax==-1)break dur;var dstr=[],zstr=[];dmin==1&&(dd=d/604800,dmax==1?zstr.push('d"d"'):(dd|=0,d-=604800*dd),dstr.push(dd+(dstyle==2?" week"+(dd==1?"":"s"):dstyle==1?"w":""))),dmin<=2&&dmax>=2&&(dd=d/86400,dmax>2&&(dd|=0,d-=86400*dd),zstr.push('d"d"'),dstr.push(dd+(dstyle==2?" day"+(dd==1?"":"s"):dstyle==1?"d":""))),dmin<=4&&dmax>=4&&(dd=d/3600,dmax>4&&(dd|=0,d-=3600*dd),zstr.push((dmin>=4?"[h]":"h")+'"h"'),dstr.push(dd+(dstyle==2?" hour"+(dd==1?"":"s"):dstyle==1?"h":""))),dmin<=8&&dmax>=8&&(dd=d/60,dmax>8&&(dd|=0,d-=60*dd),zstr.push((dmin>=8?"[m]":"m")+'"m"'),dstyle==0?dstr.push((dmin==8&&dmax==8||dd>=10?"":"0")+dd):dstr.push(dd+(dstyle==2?" minute"+(dd==1?"":"s"):dstyle==1?"m":""))),dmin<=16&&dmax>=16&&(dd=d,dmax>16&&(dd|=0,d-=dd),zstr.push((dmin>=16?"[s]":"s")+'"s"'),dstyle==0?dstr.push((dmax==16&&dmin==16||dd>=10?"":"0")+dd):dstr.push(dd+(dstyle==2?" second"+(dd==1?"":"s"):dstyle==1?"s":""))),dmax>=32&&(dd=Math.round(1e3*d),dmin<32&&zstr.push('.000"ms"'),dstyle==0?dstr.push((dd>=100?"":dd>=10?"0":"00")+dd):dstr.push(dd+(dstyle==2?" millisecond"+(dd==1?"":"s"):dstyle==1?"ms":""))),cell2.w=dstr.join(dstyle==0?":":" "),cell2.z=zstr.join(dstyle==0?'":"':" "),dstyle==0&&(cell2.w=cell2.w.replace(/:(\d\d\d)$/,".$1"))}}function parse_old_storage(buf,lut,v,opts){var dv=u8_to_dataview(buf),flags=dv.getUint32(4,!0),ridx=-1,sidx=-1,zidx=-1,ieee=NaN,dc=0,dt=new Date(Date.UTC(2001,0,1)),doff=v>1?12:8;flags&2&&(zidx=dv.getUint32(doff,!0),doff+=4),doff+=popcnt(flags&(v>1?3468:396))*4,flags&512&&(ridx=dv.getUint32(doff,!0),doff+=4),doff+=popcnt(flags&(v>1?12288:4096))*4,flags&16&&(sidx=dv.getUint32(doff,!0),doff+=4),flags&32&&(ieee=dv.getFloat64(doff,!0),doff+=8),flags&64&&(dt.setTime(dt.getTime()+(dc=dv.getFloat64(doff,!0))*1e3),doff+=8),v>1&&(flags=dv.getUint32(8,!0)>>>16,flags&255&&(zidx==-1&&(zidx=dv.getUint32(doff,!0)),doff+=4));var ret,t=buf[v>=4?1:2];switch(t){case 0:return;case 2:ret={t:"n",v:ieee};break;case 3:ret={t:"s",v:lut.sst[sidx]};break;case 5:opts?.cellDates?ret={t:"d",v:dt}:ret={t:"n",v:dc/86400+35430,z:table_fmt[14]};break;case 6:ret={t:"b",v:ieee>0};break;case 7:ret={t:"n",v:ieee};break;case 8:ret={t:"e",v:0};break;case 9:if(ridx>-1){var rts=lut.rsst[ridx];ret={t:"s",v:rts.v},rts.l&&(ret.l={Target:rts.l})}else throw new Error("Unsupported cell type ".concat(buf[subarray](0,4)));break;default:throw new Error("Unsupported cell type ".concat(buf[subarray](0,4)))}return zidx>-1&&numbers_format_cell(ret,t|v<<8,flags,lut.ofmt[zidx],lut.nfmt[zidx]),t==7&&(ret.v/=86400),ret}function parse_new_storage(buf,lut,opts){var dv=u8_to_dataview(buf),flags=dv.getUint32(4,!0),fields=dv.getUint32(8,!0),doff=12,ridx=-1,sidx=-1,zidx=-1,d128=NaN,ieee=NaN,dc=0,dt=new Date(Date.UTC(2001,0,1)),eidx=-1,fidx=-1;fields&1&&(d128=readDecimal128LE(buf,doff),doff+=16),fields&2&&(ieee=dv.getFloat64(doff,!0),doff+=8),fields&4&&(dt.setTime(dt.getTime()+(dc=dv.getFloat64(doff,!0))*1e3),doff+=8),fields&8&&(sidx=dv.getUint32(doff,!0),doff+=4),fields&16&&(ridx=dv.getUint32(doff,!0),doff+=4),doff+=popcnt(fields&480)*4,fields&512&&(fidx=dv.getUint32(doff,!0),doff+=4),doff+=popcnt(fields&1024)*4,fields&2048&&(eidx=dv.getUint32(doff,!0),doff+=4);var ret,t=buf[1];switch(t){case 0:ret={t:"z"};break;case 2:ret={t:"n",v:d128};break;case 3:ret={t:"s",v:lut.sst[sidx]};break;case 5:opts?.cellDates?ret={t:"d",v:dt}:ret={t:"n",v:dc/86400+35430,z:table_fmt[14]};break;case 6:ret={t:"b",v:ieee>0};break;case 7:ret={t:"n",v:ieee};break;case 8:ret={t:"e",v:0};break;case 9:if(ridx>-1){var rts=lut.rsst[ridx];ret={t:"s",v:rts.v},rts.l&&(ret.l={Target:rts.l})}else throw new Error("Unsupported cell type ".concat(buf[1]," : ").concat(fields&31," : ").concat(buf[subarray](0,4)));break;case 10:ret={t:"n",v:d128};break;default:throw new Error("Unsupported cell type ".concat(buf[1]," : ").concat(fields&31," : ").concat(buf[subarray](0,4)))}if(doff+=popcnt(fields&4096)*4,fields&516096&&(zidx==-1&&(zidx=dv.getUint32(doff,!0)),doff+=4),fields&524288){var cmntidx=dv.getUint32(doff,!0);doff+=4,lut.cmnt[cmntidx]&&(ret.c=iwa_to_s5s_comment(lut.cmnt[cmntidx]))}return zidx>-1&&numbers_format_cell(ret,t|1280,fields>>13,lut.ofmt[zidx],lut.nfmt[zidx]),t==7&&(ret.v/=86400),ret}function write_new_storage(cell2,lut){var out=new Uint8Array(32),dv=u8_to_dataview(out),l=12,fields=0;switch(out[0]=5,cell2.t){case"n":if(cell2.z&&fmt_is_date(cell2.z)){out[1]=5,dv.setFloat64(l,(numdate(cell2.v+1462).getTime()-Date.UTC(2001,0,1))/1e3,!0),fields|=4,l+=8;break}else out[1]=2,writeDecimal128LE(out,l,cell2.v),fields|=1,l+=16;break;case"b":out[1]=6,dv.setFloat64(l,cell2.v?1:0,!0),fields|=2,l+=8;break;case"s":{var s=cell2.v==null?"":String(cell2.v);if(cell2.l){var irsst=lut.rsst.findIndex(function(v){var _a;return v.v==s&&v.l==((_a=cell2.l)==null?void 0:_a.Target)});irsst==-1&&(lut.rsst[irsst=lut.rsst.length]={v:s,l:cell2.l.Target}),out[1]=9,dv.setUint32(l,irsst,!0),fields|=16,l+=4}else{var isst=lut.sst.indexOf(s);isst==-1&&(lut.sst[isst=lut.sst.length]=s),out[1]=3,dv.setUint32(l,isst,!0),fields|=8,l+=4}}break;case"d":out[1]=5,dv.setFloat64(l,(cell2.v.getTime()-Date.UTC(2001,0,1))/1e3,!0),fields|=4,l+=8;break;case"z":out[1]=0;break;default:throw"unsupported cell type "+cell2.t}return cell2.c&&(lut.cmnt.push(s5s_to_iwa_comment(cell2.c)),dv.setUint32(l,lut.cmnt.length-1,!0),fields|=524288,l+=4),dv.setUint32(8,fields,!0),out[subarray](0,l)}function write_old_storage(cell2,lut){var out=new Uint8Array(32),dv=u8_to_dataview(out),l=12,fields=0,s="";switch(out[0]=4,cell2.t){case"n":break;case"b":break;case"s":if(s=cell2.v==null?"":String(cell2.v),cell2.l){var irsst=lut.rsst.findIndex(function(v){var _a;return v.v==s&&v.l==((_a=cell2.l)==null?void 0:_a.Target)});irsst==-1&&(lut.rsst[irsst=lut.rsst.length]={v:s,l:cell2.l.Target}),out[1]=9,dv.setUint32(l,irsst,!0),fields|=512,l+=4}break;case"d":break;case"e":break;case"z":break;default:throw"unsupported cell type "+cell2.t}switch(cell2.c&&(dv.setUint32(l,lut.cmnt.length-1,!0),fields|=4096,l+=4),cell2.t){case"n":out[1]=2,dv.setFloat64(l,cell2.v,!0),fields|=32,l+=8;break;case"b":out[1]=6,dv.setFloat64(l,cell2.v?1:0,!0),fields|=32,l+=8;break;case"s":if(s=cell2.v==null?"":String(cell2.v),!cell2.l){var isst=lut.sst.indexOf(s);isst==-1&&(lut.sst[isst=lut.sst.length]=s),out[1]=3,dv.setUint32(l,isst,!0),fields|=16,l+=4}break;case"d":out[1]=5,dv.setFloat64(l,(cell2.v.getTime()-Date.UTC(2001,0,1))/1e3,!0),fields|=64,l+=8;break;case"z":out[1]=0;break;default:throw"unsupported cell type "+cell2.t}return dv.setUint32(8,fields,!0),out[subarray](0,l)}function parse_cell_storage(buf,lut,opts){switch(buf[0]){case 0:case 1:case 2:case 3:case 4:return parse_old_storage(buf,lut,buf[0],opts);case 5:return parse_new_storage(buf,lut,opts);default:throw new Error("Unsupported payload version ".concat(buf[0]))}}function parse_TSP_Reference(buf){var pb=parse_shallow(buf);return varint_to_i32(pb[1][0].data)}function write_TSP_Reference(idx){return write_shallow([[],[{type:0,data:write_varint49(idx)}]])}function numbers_add_oref(iwa,ref){var _a,orefs=(_a=iwa.messages[0].meta[5])!=null&&_a[0]?parse_packed_varints(iwa.messages[0].meta[5][0].data):[],orefidx=orefs.indexOf(ref);orefidx==-1&&(orefs.push(ref),iwa.messages[0].meta[5]=[{type:2,data:write_packed_varints(orefs)}])}function numbers_del_oref(iwa,ref){var _a,orefs=(_a=iwa.messages[0].meta[5])!=null&&_a[0]?parse_packed_varints(iwa.messages[0].meta[5][0].data):[];iwa.messages[0].meta[5]=[{type:2,data:write_packed_varints(orefs.filter(function(r){return r!=ref}))}]}function parse_TST_TableDataList(M,root){var pb=parse_shallow(root.data),type=varint_to_i32(pb[1][0].data),entries=pb[3],data=[];return(entries||[]).forEach(function(entry){var _a,_b,le=parse_shallow(entry.data);if(le[1]){var key=varint_to_i32(le[1][0].data)>>>0;switch(type){case 1:data[key]=u8str(le[3][0].data);break;case 8:{var rt=M[parse_TSP_Reference(le[9][0].data)][0],rtp=parse_shallow(rt.data),rtpref=M[parse_TSP_Reference(rtp[1][0].data)][0],mtype=varint_to_i32(rtpref.meta[1][0].data);if(mtype!=2001)throw new Error("2000 unexpected reference to ".concat(mtype));var tswpsa=parse_shallow(rtpref.data),richtext={v:tswpsa[3].map(function(x){return u8str(x.data)}).join("")};data[key]=richtext;sfields:if((_a=tswpsa?.[11])!=null&&_a[0]){var smartfields=(_b=parse_shallow(tswpsa[11][0].data))==null?void 0:_b[1];if(!smartfields)break sfields;smartfields.forEach(function(sf){var _a2,_b2,_c,attr=parse_shallow(sf.data);if((_a2=attr[2])!=null&&_a2[0]){var obj=M[parse_TSP_Reference((_b2=attr[2])==null?void 0:_b2[0].data)][0],objtype=varint_to_i32(obj.meta[1][0].data);switch(objtype){case 2032:var hlink=parse_shallow(obj.data);(_c=hlink?.[2])!=null&&_c[0]&&!richtext.l&&(richtext.l=u8str(hlink[2][0].data));break;case 2039:break;default:console.log("unrecognized ObjectAttribute type ".concat(objtype))}}})}}break;case 2:data[key]=parse_shallow(le[6][0].data);break;case 3:data[key]=parse_shallow(le[5][0].data);break;case 10:{var cs=M[parse_TSP_Reference(le[10][0].data)][0];data[key]=parse_TSD_CommentStorageArchive(M,cs.data)}break;default:throw type}}}),data}function parse_TST_TileRowInfo(u8,type){var _a,_b,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l,_m,_n,pb=parse_shallow(u8),R=varint_to_i32(pb[1][0].data)>>>0,cnt=varint_to_i32(pb[2][0].data)>>>0,wide_offsets=((_b=(_a=pb[8])==null?void 0:_a[0])==null?void 0:_b.data)&&varint_to_i32(pb[8][0].data)>0||!1,used_storage_u8,used_storage;if((_d=(_c=pb[7])==null?void 0:_c[0])!=null&&_d.data&&type!=0)used_storage_u8=(_f=(_e=pb[7])==null?void 0:_e[0])==null?void 0:_f.data,used_storage=(_h=(_g=pb[6])==null?void 0:_g[0])==null?void 0:_h.data;else if((_j=(_i=pb[4])==null?void 0:_i[0])!=null&&_j.data&&type!=1)used_storage_u8=(_l=(_k=pb[4])==null?void 0:_k[0])==null?void 0:_l.data,used_storage=(_n=(_m=pb[3])==null?void 0:_m[0])==null?void 0:_n.data;else throw"NUMBERS Tile missing ".concat(type," cell storage");for(var width=wide_offsets?4:1,used_storage_offsets=u8_to_dataview(used_storage_u8),offsets=[],C=0;C<used_storage_u8.length/2;++C){var off=used_storage_offsets.getUint16(C*2,!0);off<65535&&offsets.push([C,off])}if(offsets.length!=cnt)throw"Expected ".concat(cnt," cells, found ").concat(offsets.length);var cells=[];for(C=0;C<offsets.length-1;++C)cells[offsets[C][0]]=used_storage[subarray](offsets[C][1]*width,offsets[C+1][1]*width);return offsets.length>=1&&(cells[offsets[offsets.length-1][0]]=used_storage[subarray](offsets[offsets.length-1][1]*width)),{R,cells}}function parse_TST_Tile(M,root){var _a,pb=parse_shallow(root.data),storage=-1;(_a=pb?.[7])!=null&&_a[0]&&(varint_to_i32(pb[7][0].data)>>>0?storage=1:storage=0);var ri=mappa(pb[5],function(u8){return parse_TST_TileRowInfo(u8,storage)});return{nrows:varint_to_i32(pb[4][0].data)>>>0,data:ri.reduce(function(acc,x){return acc[x.R]||(acc[x.R]=[]),x.cells.forEach(function(cell2,C){if(acc[x.R][C])throw new Error("Duplicate cell r=".concat(x.R," c=").concat(C));acc[x.R][C]=cell2}),acc},[])}}function parse_TSD_CommentStorageArchive(M,data){var _a,_b,_c,_d,_e,_f,_g,_h,_i,_j,out={t:"",a:""},csp=parse_shallow(data);if((_b=(_a=csp?.[1])==null?void 0:_a[0])!=null&&_b.data&&(out.t=u8str((_d=(_c=csp?.[1])==null?void 0:_c[0])==null?void 0:_d.data)||""),(_f=(_e=csp?.[3])==null?void 0:_e[0])!=null&&_f.data){var as=M[parse_TSP_Reference((_h=(_g=csp?.[3])==null?void 0:_g[0])==null?void 0:_h.data)][0],asp=parse_shallow(as.data);(_j=(_i=asp[1])==null?void 0:_i[0])!=null&&_j.data&&(out.a=u8str(asp[1][0].data))}return csp?.[4]&&(out.replies=[],csp[4].forEach(function(pi){var cs=M[parse_TSP_Reference(pi.data)][0];out.replies.push(parse_TSD_CommentStorageArchive(M,cs.data))})),out}function iwa_to_s5s_comment(iwa){var out=[];return out.push({t:iwa.t||"",a:iwa.a,T:iwa.replies&&iwa.replies.length>0}),iwa.replies&&iwa.replies.forEach(function(reply){out.push({t:reply.t||"",a:reply.a,T:!0})}),out}function s5s_to_iwa_comment(s5s){for(var out={a:"",t:"",replies:[]},i=0;i<s5s.length;++i)i==0?(out.a=s5s[i].a,out.t=s5s[i].t):out.replies.push({a:s5s[i].a,t:s5s[i].t});return out}function parse_TST_TableModelArchive(M,root,ws,opts){var _a,_b,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l,_m,_n,pb=parse_shallow(root.data),range={s:{r:0,c:0},e:{r:0,c:0}};if(range.e.r=(varint_to_i32(pb[6][0].data)>>>0)-1,range.e.r<0)throw new Error("Invalid row varint ".concat(pb[6][0].data));if(range.e.c=(varint_to_i32(pb[7][0].data)>>>0)-1,range.e.c<0)throw new Error("Invalid col varint ".concat(pb[7][0].data));ws["!ref"]=encode_range(range);var dense=ws["!data"]!=null,dws=ws,store=parse_shallow(pb[4][0].data),lut=numbers_lut_new();(_a=store[4])!=null&&_a[0]&&(lut.sst=parse_TST_TableDataList(M,M[parse_TSP_Reference(store[4][0].data)][0])),(_b=store[6])!=null&&_b[0]&&(lut.fmla=parse_TST_TableDataList(M,M[parse_TSP_Reference(store[6][0].data)][0])),(_c=store[11])!=null&&_c[0]&&(lut.ofmt=parse_TST_TableDataList(M,M[parse_TSP_Reference(store[11][0].data)][0])),(_d=store[12])!=null&&_d[0]&&(lut.ferr=parse_TST_TableDataList(M,M[parse_TSP_Reference(store[12][0].data)][0])),(_e=store[17])!=null&&_e[0]&&(lut.rsst=parse_TST_TableDataList(M,M[parse_TSP_Reference(store[17][0].data)][0])),(_f=store[19])!=null&&_f[0]&&(lut.cmnt=parse_TST_TableDataList(M,M[parse_TSP_Reference(store[19][0].data)][0])),(_g=store[22])!=null&&_g[0]&&(lut.nfmt=parse_TST_TableDataList(M,M[parse_TSP_Reference(store[22][0].data)][0]));var tile=parse_shallow(store[3][0].data),_R=0;if(!((_h=store[9])!=null&&_h[0]))throw"NUMBERS file missing row tree";var rtt=parse_shallow(store[9][0].data)[1].map(function(p){return parse_shallow(p.data)});if(rtt.forEach(function(kv){_R=varint_to_i32(kv[1][0].data);var tidx=varint_to_i32(kv[2][0].data),t=tile[1][tidx];if(!t)throw"NUMBERS missing tile "+tidx;var tl=parse_shallow(t.data),ref2=M[parse_TSP_Reference(tl[2][0].data)][0],mtype2=varint_to_i32(ref2.meta[1][0].data);if(mtype2!=6002)throw new Error("6001 unexpected reference to ".concat(mtype2));var _tile=parse_TST_Tile(M,ref2);_tile.data.forEach(function(row,R){row.forEach(function(buf,C){var res=parse_cell_storage(buf,lut,opts);res&&(dense?(dws["!data"][_R+R]||(dws["!data"][_R+R]=[]),dws["!data"][_R+R][C]=res):ws[encode_col(C)+encode_row(_R+R)]=res)})}),_R+=_tile.nrows}),(_i=store[13])!=null&&_i[0]){var ref=M[parse_TSP_Reference(store[13][0].data)][0],mtype=varint_to_i32(ref.meta[1][0].data);if(mtype!=6144)throw new Error("Expected merge type 6144, found ".concat(mtype));ws["!merges"]=(_j=parse_shallow(ref.data))==null?void 0:_j[1].map(function(pi){var merge=parse_shallow(pi.data),origin=u8_to_dataview(parse_shallow(merge[1][0].data)[1][0].data),size=u8_to_dataview(parse_shallow(merge[2][0].data)[1][0].data);return{s:{r:origin.getUint16(0,!0),c:origin.getUint16(2,!0)},e:{r:origin.getUint16(0,!0)+size.getUint16(0,!0)-1,c:origin.getUint16(2,!0)+size.getUint16(2,!0)-1}}})}if(!((_k=ws["!merges"])!=null&&_k.length)&&((_l=pb[47])!=null&&_l[0])){var merge_owner=parse_shallow(pb[47][0].data);if((_m=merge_owner[2])!=null&&_m[0]){var formula_store=parse_shallow(merge_owner[2][0].data);(_n=formula_store[3])!=null&&_n[0]&&(ws["!merges"]=mappa(formula_store[3],function(u){var _a2,_b2,_c2,_d2,_e2,formula_pair=parse_shallow(u),formula=parse_shallow(formula_pair[2][0].data),AST_node_array=parse_shallow(formula[1][0].data);if((_a2=AST_node_array[1])!=null&&_a2[0]){var AST_node0=parse_shallow(AST_node_array[1][0].data),AST_node_type=varint_to_i32(AST_node0[1][0].data);if(AST_node_type==67){var AST_colon_tract=parse_shallow(AST_node0[40][0].data);if(!(!((_b2=AST_colon_tract[3])!=null&&_b2[0])||!((_c2=AST_colon_tract[4])!=null&&_c2[0]))){var colrange=parse_shallow(AST_colon_tract[3][0].data),rowrange=parse_shallow(AST_colon_tract[4][0].data),c=varint_to_i32(colrange[1][0].data),C=(_d2=colrange[2])!=null&&_d2[0]?varint_to_i32(colrange[2][0].data):c,r=varint_to_i32(rowrange[1][0].data),R=(_e2=rowrange[2])!=null&&_e2[0]?varint_to_i32(rowrange[2][0].data):r;return{s:{r,c},e:{r:R,c:C}}}}}}).filter(function(x){return x!=null}))}}}function parse_TST_TableInfoArchive(M,root,opts){var pb=parse_shallow(root.data),out={"!ref":"A1"};opts?.dense&&(out["!data"]=[]);var tableref=M[parse_TSP_Reference(pb[2][0].data)],mtype=varint_to_i32(tableref[0].meta[1][0].data);if(mtype!=6001)throw new Error("6000 unexpected reference to ".concat(mtype));return parse_TST_TableModelArchive(M,tableref[0],out,opts),out}function parse_TN_SheetArchive(M,root,opts){var _a,pb=parse_shallow(root.data),out={name:(_a=pb[1])!=null&&_a[0]?u8str(pb[1][0].data):"",sheets:[]},shapeoffs=mappa(pb[2],parse_TSP_Reference);return shapeoffs.forEach(function(off){M[off].forEach(function(m){var mtype=varint_to_i32(m.meta[1][0].data);mtype==6e3&&out.sheets.push(parse_TST_TableInfoArchive(M,m,opts))})}),out}function parse_TN_DocumentArchive(M,root,opts){var _a,out=book_new();out.Workbook={WBProps:{date1904:!0}};var pb=parse_shallow(root.data);if((_a=pb[2])!=null&&_a[0])throw new Error("Keynote presentations are not supported");var sheetoffs=mappa(pb[1],parse_TSP_Reference);if(sheetoffs.forEach(function(off){M[off].forEach(function(m){var mtype=varint_to_i32(m.meta[1][0].data);if(mtype==2){var root2=parse_TN_SheetArchive(M,m,opts);root2.sheets.forEach(function(sheet,idx){book_append_sheet(out,sheet,idx==0?root2.name:root2.name+"_"+idx,!0)})}})}),out.SheetNames.length==0)throw new Error("Empty NUMBERS file");return out.bookType="numbers",out}function parse_numbers_iwa(cfb,opts){var _a,_b,_c,_d,_e,_f,_g,M={},indices=[];if(cfb.FullPaths.forEach(function(p){if(p.match(/\.iwpv2/))throw new Error("Unsupported password protection")}),cfb.FileIndex.forEach(function(s){if(s.name.match(/\.iwa$/)&&s.content[0]==0){var o;try{o=decompress_iwa_file(s.content)}catch(e){return console.log("?? "+s.content.length+" "+(e.message||e))}var packets;try{packets=parse_iwa_file(o)}catch(e){return console.log("## "+(e.message||e))}packets.forEach(function(packet){M[packet.id]=packet.messages,indices.push(packet.id)})}}),!indices.length)throw new Error("File has no messages");if((_c=(_b=(_a=M?.[1])==null?void 0:_a[0].meta)==null?void 0:_b[1])!=null&&_c[0].data&&varint_to_i32(M[1][0].meta[1][0].data)==1e4)throw new Error("Pages documents are not supported");var docroot=((_g=(_f=(_e=(_d=M?.[1])==null?void 0:_d[0])==null?void 0:_e.meta)==null?void 0:_f[1])==null?void 0:_g[0].data)&&varint_to_i32(M[1][0].meta[1][0].data)==1&&M[1][0];if(docroot||indices.forEach(function(idx){M[idx].forEach(function(iwam){var mtype=varint_to_i32(iwam.meta[1][0].data)>>>0;if(mtype==1)if(!docroot)docroot=iwam;else throw new Error("Document has multiple roots")})}),!docroot)throw new Error("Cannot find Document root");return parse_TN_DocumentArchive(M,docroot,opts)}function write_TST_TileRowInfo(data,lut,wide){var _a,_b,_c,tri=[[],[{type:0,data:write_varint49(0)}],[{type:0,data:write_varint49(0)}],[{type:2,data:new Uint8Array([])}],[{type:2,data:new Uint8Array(Array.from({length:510},function(){return 255}))}],[{type:0,data:write_varint49(5)}],[{type:2,data:new Uint8Array([])}],[{type:2,data:new Uint8Array(Array.from({length:510},function(){return 255}))}],[{type:0,data:write_varint49(1)}]];if(!((_a=tri[6])!=null&&_a[0])||!((_b=tri[7])!=null&&_b[0]))throw"Mutation only works on post-BNC storages!";var cnt=0;if(tri[7][0].data.length<2*data.length){var new_7=new Uint8Array(2*data.length);new_7.set(tri[7][0].data),tri[7][0].data=new_7}if(tri[4][0].data.length<2*data.length){var new_4=new Uint8Array(2*data.length);new_4.set(tri[4][0].data),tri[4][0].data=new_4}for(var dv=u8_to_dataview(tri[7][0].data),last_offset=0,cell_storage=[],_dv=u8_to_dataview(tri[4][0].data),_last_offset=0,_cell_storage=[],width=wide?4:1,C=0;C<data.length;++C){if(data[C]==null||data[C].t=="z"&&!((_c=data[C].c)!=null&&_c.length)||data[C].t=="e"){dv.setUint16(C*2,65535,!0),_dv.setUint16(C*2,65535);continue}dv.setUint16(C*2,last_offset/width,!0),_dv.setUint16(C*2,_last_offset/width,!0);var celload,_celload;switch(data[C].t){case"d":if(data[C].v instanceof Date){celload=write_new_storage(data[C],lut),_celload=write_old_storage(data[C],lut);break}celload=write_new_storage(data[C],lut),_celload=write_old_storage(data[C],lut);break;case"s":case"n":case"b":case"z":celload=write_new_storage(data[C],lut),_celload=write_old_storage(data[C],lut);break;default:throw new Error("Unsupported value "+data[C])}cell_storage.push(celload),last_offset+=celload.length,_cell_storage.push(_celload),_last_offset+=_celload.length,++cnt}for(tri[2][0].data=write_varint49(cnt),tri[5][0].data=write_varint49(5);C<tri[7][0].data.length/2;++C)dv.setUint16(C*2,65535,!0),_dv.setUint16(C*2,65535,!0);return tri[6][0].data=u8concat(cell_storage),tri[3][0].data=u8concat(_cell_storage),tri[8]=[{type:0,data:write_varint49(wide?1:0)}],tri}function write_iwam(type,payload){return{meta:[[],[{type:0,data:write_varint49(type)}]],data:payload}}function get_unique_msgid(dep,dependents){dependents.last||(dependents.last=927262);for(var i=dependents.last;i<2e6;++i)if(!dependents[i])return dependents[dependents.last=i]=dep,i;throw new Error("Too many messages")}function build_numbers_deps(cfb){var dependents={},indices=[];return cfb.FileIndex.map(function(fi,idx){return[fi,cfb.FullPaths[idx]]}).forEach(function(row){var fi=row[0],fp=row[1];fi.type==2&&fi.name.match(/\.iwa/)&&fi.content[0]==0&&parse_iwa_file(decompress_iwa_file(fi.content)).forEach(function(packet){indices.push(packet.id),dependents[packet.id]={deps:[],location:fp,type:varint_to_i32(packet.messages[0].meta[1][0].data)}})}),cfb.FileIndex.forEach(function(fi){fi.name.match(/\.iwa/)&&fi.content[0]==0&&parse_iwa_file(decompress_iwa_file(fi.content)).forEach(function(ia){ia.messages.forEach(function(mess){[5,6].forEach(function(f){mess.meta[f]&&mess.meta[f].forEach(function(x){dependents[ia.id].deps.push(varint_to_i32(x.data))})})})})}),dependents}function write_TSP_Color_RGB(r,g,b){return write_shallow([[],[{type:0,data:write_varint49(1)}],[],[{type:5,data:new Uint8Array(Float32Array.from([r/255]).buffer)}],[{type:5,data:new Uint8Array(Float32Array.from([g/255]).buffer)}],[{type:5,data:new Uint8Array(Float32Array.from([b/255]).buffer)}],[{type:5,data:new Uint8Array(Float32Array.from([1]).buffer)}],[],[],[],[],[],[{type:0,data:write_varint49(1)}]])}function get_author_color(n){switch(n){case 0:return write_TSP_Color_RGB(99,222,171);case 1:return write_TSP_Color_RGB(162,197,240);case 2:return write_TSP_Color_RGB(255,189,189)}return write_TSP_Color_RGB(Math.random()*255,Math.random()*255,Math.random()*255)}function write_numbers_iwa(wb,opts){if(!opts||!opts.numbers)throw new Error("Must pass a `numbers` option -- check the README");var cfb=CFB.read(opts.numbers,{type:"base64"}),deps=build_numbers_deps(cfb),docroot=numbers_iwa_find(cfb,deps,1);if(docroot==null)throw"Could not find message ".concat(1," in Numbers template");var sheetrefs=mappa(parse_shallow(docroot.messages[0].data)[1],parse_TSP_Reference);if(sheetrefs.length>1)throw new Error("Template NUMBERS file must have exactly one sheet");return wb.SheetNames.forEach(function(name,idx){idx>=1&&(numbers_add_ws(cfb,deps,idx+1),docroot=numbers_iwa_find(cfb,deps,1),sheetrefs=mappa(parse_shallow(docroot.messages[0].data)[1],parse_TSP_Reference)),write_numbers_ws(cfb,deps,wb.Sheets[name],name,idx,sheetrefs[idx])}),cfb}function numbers_iwa_doit(cfb,deps,id,cb){var entry=CFB.find(cfb,deps[id].location);if(!entry)throw"Could not find ".concat(deps[id].location," in Numbers template");var x=parse_iwa_file(decompress_iwa_file(entry.content)),ainfo=x.find(function(packet){return packet.id==id});cb(ainfo,x),entry.content=compress_iwa_file(write_iwa_file(x)),entry.size=entry.content.length}function numbers_iwa_find(cfb,deps,id){var entry=CFB.find(cfb,deps[id].location);if(!entry)throw"Could not find ".concat(deps[id].location," in Numbers template");var x=parse_iwa_file(decompress_iwa_file(entry.content)),ainfo=x.find(function(packet){return packet.id==id});return ainfo}function numbers_add_meta(mlist,newid,newloc){mlist[3].push({type:2,data:write_shallow([[],[{type:0,data:write_varint49(newid)}],[{type:2,data:stru8(newloc.replace(/-[\s\S]*$/,""))}],[{type:2,data:stru8(newloc)}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:write_varint49(0)}],[],[{type:0,data:write_varint49(0)}]])}),mlist[1]=[{type:0,data:write_varint49(Math.max(newid+1,varint_to_i32(mlist[1][0].data)))}]}function numbers_add_msg(cfb,type,msg,path,deps,id){id||(id=get_unique_msgid({deps:[],location:"",type},deps));var loc="".concat(path,"-").concat(id,".iwa");deps[id].location="Root Entry"+loc,CFB.utils.cfb_add(cfb,loc,compress_iwa_file(write_iwa_file([{id,messages:[write_iwam(type,write_shallow(msg))]}])));var newloc=loc.replace(/^[\/]/,"").replace(/^Index\//,"").replace(/\.iwa$/,"");return numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);numbers_add_meta(mlist,id||0,newloc),ai.messages[0].data=write_shallow(mlist)}),id}function numbers_meta_add_dep(mlist,deps,id,dep){var loc=deps[id].location.replace(/^Root Entry\//,"").replace(/^Index\//,"").replace(/\.iwa$/,""),parentidx=mlist[3].findIndex(function(m){var _a,_b,mm=parse_shallow(m.data);return(_a=mm[3])!=null&&_a[0]?u8str(mm[3][0].data)==loc:!!((_b=mm[2])!=null&&_b[0]&&u8str(mm[2][0].data)==loc)}),parent=parse_shallow(mlist[3][parentidx].data);parent[6]||(parent[6]=[]),(Array.isArray(dep)?dep:[dep]).forEach(function(dep2){parent[6].push({type:2,data:write_shallow([[],[{type:0,data:write_varint49(dep2)}]])})}),mlist[3][parentidx].data=write_shallow(parent)}function numbers_meta_del_dep(mlist,deps,id,dep){var loc=deps[id].location.replace(/^Root Entry\//,"").replace(/^Index\//,"").replace(/\.iwa$/,""),parentidx=mlist[3].findIndex(function(m){var _a,_b,mm=parse_shallow(m.data);return(_a=mm[3])!=null&&_a[0]?u8str(mm[3][0].data)==loc:!!((_b=mm[2])!=null&&_b[0]&&u8str(mm[2][0].data)==loc)}),parent=parse_shallow(mlist[3][parentidx].data);parent[6]||(parent[6]=[]),parent[6]=parent[6].filter(function(m){return varint_to_i32(parse_shallow(m.data)[1][0].data)!=dep}),mlist[3][parentidx].data=write_shallow(parent)}function numbers_add_ws(cfb,deps,wsidx){var sheetref=-1,newsheetref=-1,remap={};numbers_iwa_doit(cfb,deps,1,function(docroot,arch){var doc=parse_shallow(docroot.messages[0].data);sheetref=parse_TSP_Reference(parse_shallow(docroot.messages[0].data)[1][0].data),newsheetref=get_unique_msgid({deps:[1],location:deps[sheetref].location,type:2},deps),remap[sheetref]=newsheetref,numbers_add_oref(docroot,newsheetref),doc[1].push({type:2,data:write_TSP_Reference(newsheetref)});var sheet=numbers_iwa_find(cfb,deps,sheetref);sheet.id=newsheetref,deps[1].location==deps[newsheetref].location?arch.push(sheet):numbers_iwa_doit(cfb,deps,newsheetref,function(_,x){return x.push(sheet)}),docroot.messages[0].data=write_shallow(doc)});var tiaref=-1;numbers_iwa_doit(cfb,deps,newsheetref,function(sheetroot,arch){for(var sa=parse_shallow(sheetroot.messages[0].data),i=3;i<=69;++i)delete sa[i];var drawables=mappa(sa[2],parse_TSP_Reference);drawables.forEach(function(n){return numbers_del_oref(sheetroot,n)}),tiaref=get_unique_msgid({deps:[newsheetref],location:deps[drawables[0]].location,type:deps[drawables[0]].type},deps),numbers_add_oref(sheetroot,tiaref),remap[drawables[0]]=tiaref,sa[2]=[{type:2,data:write_TSP_Reference(tiaref)}];var tia=numbers_iwa_find(cfb,deps,drawables[0]);tia.id=tiaref,deps[drawables[0]].location==deps[newsheetref].location?arch.push(tia):(numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);numbers_meta_add_dep(mlist,deps,newsheetref,tiaref),ai.messages[0].data=write_shallow(mlist)}),numbers_iwa_doit(cfb,deps,tiaref,function(_,x){return x.push(tia)})),sheetroot.messages[0].data=write_shallow(sa)});var tmaref=-1;numbers_iwa_doit(cfb,deps,tiaref,function(tiaroot,arch){for(var tia=parse_shallow(tiaroot.messages[0].data),da=parse_shallow(tia[1][0].data),i=3;i<=69;++i)delete da[i];var dap=parse_TSP_Reference(da[2][0].data);da[2][0].data=write_TSP_Reference(remap[dap]),tia[1][0].data=write_shallow(da);var oldtmaref=parse_TSP_Reference(tia[2][0].data);numbers_del_oref(tiaroot,oldtmaref),tmaref=get_unique_msgid({deps:[tiaref],location:deps[oldtmaref].location,type:deps[oldtmaref].type},deps),numbers_add_oref(tiaroot,tmaref),remap[oldtmaref]=tmaref,tia[2][0].data=write_TSP_Reference(tmaref);var tma=numbers_iwa_find(cfb,deps,oldtmaref);tma.id=tmaref,deps[tiaref].location==deps[tmaref].location?arch.push(tma):numbers_iwa_doit(cfb,deps,tmaref,function(_,x){return x.push(tma)}),tiaroot.messages[0].data=write_shallow(tia)}),numbers_iwa_doit(cfb,deps,tmaref,function(tmaroot,arch){var _a,_b,tma=parse_shallow(tmaroot.messages[0].data),uuid=u8str(tma[1][0].data),new_uuid=uuid.replace(/-[A-Z0-9]*/,"-".concat(("0000"+wsidx.toString(16)).slice(-4)));if(tma[1][0].data=stru8(new_uuid),[12,13,29,31,32,33,39,44,47,81,82,84].forEach(function(n){return delete tma[n]}),tma[45]){var srrta=parse_shallow(tma[45][0].data),ref=parse_TSP_Reference(srrta[1][0].data);numbers_del_oref(tmaroot,ref),delete tma[45]}if(tma[70]){var hsoa=parse_shallow(tma[70][0].data);(_a=hsoa[2])==null||_a.forEach(function(item){var hsa=parse_shallow(item.data);[2,3].map(function(n){return hsa[n][0]}).forEach(function(hseadata){var hsea=parse_shallow(hseadata.data);if(hsea[8]){var ref2=parse_TSP_Reference(hsea[8][0].data);numbers_del_oref(tmaroot,ref2)}})}),delete tma[70]}[46,30,34,35,36,38,48,49,60,61,62,63,64,71,72,73,74,75,85,86,87,88,89].forEach(function(n){if(tma[n]){var ref2=parse_TSP_Reference(tma[n][0].data);delete tma[n],numbers_del_oref(tmaroot,ref2)}});var store=parse_shallow(tma[4][0].data);{[2,4,5,6,11,12,13,15,16,17,18,19,20,21,22].forEach(function(n){var _a2;if((_a2=store[n])!=null&&_a2[0]){var oldref=parse_TSP_Reference(store[n][0].data),newref=get_unique_msgid({deps:[tmaref],location:deps[oldref].location,type:deps[oldref].type},deps);numbers_del_oref(tmaroot,oldref),numbers_add_oref(tmaroot,newref),remap[oldref]=newref;var msg=numbers_iwa_find(cfb,deps,oldref);if(msg.id=newref,deps[oldref].location==deps[tmaref].location)arch.push(msg);else{deps[newref].location=deps[oldref].location.replace(oldref.toString(),newref.toString()),deps[newref].location==deps[oldref].location&&(deps[newref].location=deps[newref].location.replace(/\.iwa/,"-".concat(newref,".iwa"))),CFB.utils.cfb_add(cfb,deps[newref].location,compress_iwa_file(write_iwa_file([msg])));var newloc=deps[newref].location.replace(/^Root Entry\//,"").replace(/^Index\//,"").replace(/\.iwa$/,"");numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);numbers_add_meta(mlist,newref,newloc),numbers_meta_add_dep(mlist,deps,tmaref,newref),ai.messages[0].data=write_shallow(mlist)})}store[n][0].data=write_TSP_Reference(newref)}});var row_headers=parse_shallow(store[1][0].data);(_b=row_headers[2])==null||_b.forEach(function(tspref){var oldref=parse_TSP_Reference(tspref.data),newref=get_unique_msgid({deps:[tmaref],location:deps[oldref].location,type:deps[oldref].type},deps);numbers_del_oref(tmaroot,oldref),numbers_add_oref(tmaroot,newref),remap[oldref]=newref;var msg=numbers_iwa_find(cfb,deps,oldref);if(msg.id=newref,deps[oldref].location==deps[tmaref].location)arch.push(msg);else{deps[newref].location=deps[oldref].location.replace(oldref.toString(),newref.toString()),deps[newref].location==deps[oldref].location&&(deps[newref].location=deps[newref].location.replace(/\.iwa/,"-".concat(newref,".iwa"))),CFB.utils.cfb_add(cfb,deps[newref].location,compress_iwa_file(write_iwa_file([msg])));var newloc=deps[newref].location.replace(/^Root Entry\//,"").replace(/^Index\//,"").replace(/\.iwa$/,"");numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);numbers_add_meta(mlist,newref,newloc),numbers_meta_add_dep(mlist,deps,tmaref,newref),ai.messages[0].data=write_shallow(mlist)})}tspref.data=write_TSP_Reference(newref)}),store[1][0].data=write_shallow(row_headers);var tiles=parse_shallow(store[3][0].data);tiles[1].forEach(function(t){var tst=parse_shallow(t.data),oldtileref=parse_TSP_Reference(tst[2][0].data),newtileref=remap[oldtileref];if(!remap[oldtileref]){newtileref=get_unique_msgid({deps:[tmaref],location:"",type:deps[oldtileref].type},deps),deps[newtileref].location="Root Entry/Index/Tables/Tile-".concat(newtileref,".iwa"),remap[oldtileref]=newtileref;var oldtile=numbers_iwa_find(cfb,deps,oldtileref);oldtile.id=newtileref,numbers_del_oref(tmaroot,oldtileref),numbers_add_oref(tmaroot,newtileref),CFB.utils.cfb_add(cfb,"/Index/Tables/Tile-".concat(newtileref,".iwa"),compress_iwa_file(write_iwa_file([oldtile]))),numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);mlist[3].push({type:2,data:write_shallow([[],[{type:0,data:write_varint49(newtileref)}],[{type:2,data:stru8("Tables/Tile")}],[{type:2,data:stru8("Tables/Tile-".concat(newtileref))}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:write_varint49(0)}],[],[{type:0,data:write_varint49(0)}]])}),mlist[1]=[{type:0,data:write_varint49(Math.max(newtileref+1,varint_to_i32(mlist[1][0].data)))}],numbers_meta_add_dep(mlist,deps,tmaref,newtileref),ai.messages[0].data=write_shallow(mlist)})}tst[2][0].data=write_TSP_Reference(newtileref),t.data=write_shallow(tst)}),store[3][0].data=write_shallow(tiles)}tma[4][0].data=write_shallow(store),tmaroot.messages[0].data=write_shallow(tma)})}function write_numbers_ws(cfb,deps,ws,wsname,sheetidx,rootref){var drawables=[];numbers_iwa_doit(cfb,deps,rootref,function(docroot){var sheetref=parse_shallow(docroot.messages[0].data);sheetref[1]=[{type:2,data:stru8(wsname)}],drawables=mappa(sheetref[2],parse_TSP_Reference),docroot.messages[0].data=write_shallow(sheetref)});var tia=numbers_iwa_find(cfb,deps,drawables[0]),tmaref=parse_TSP_Reference(parse_shallow(tia.messages[0].data)[2][0].data);numbers_iwa_doit(cfb,deps,tmaref,function(docroot,x){return write_numbers_tma(cfb,deps,ws,docroot,x,tmaref)})}function write_numbers_tma(cfb,deps,ws,tmaroot,tmafile,tmaref){if(!ws["!ref"])throw new Error("Cannot export empty sheet to NUMBERS");var range=decode_range(ws["!ref"]);range.s.r=range.s.c=0;var trunc=!1;range.e.c>999&&(trunc=!0,range.e.c=999),range.e.r>999999&&(trunc=!0,range.e.r=999999),trunc&&console.error("Truncating to ".concat(encode_range(range)));var data=[];if(ws["!data"])data=ws["!data"];else{for(var colstr=[],_C=0;_C<=range.e.c;++_C)colstr[_C]=encode_col(_C);for(var R_=0;R_<=range.e.r;++R_){data[R_]=[];var _R=""+(R_+1);for(_C=0;_C<=range.e.c;++_C){var _cell=ws[colstr[_C]+_R];_cell&&(data[R_][_C]=_cell)}}}var LUT={cmnt:[{a:"~54ee77S~",t:"... the people who are crazy enough to think they can change the world, are the ones who do."}],ferr:[],fmla:[],nfmt:[],ofmt:[],rsst:[{v:"~54ee77S~",l:"https://sheetjs.com/"}],sst:["~Sh33tJ5~"]},pb=parse_shallow(tmaroot.messages[0].data);{pb[6][0].data=write_varint49(range.e.r+1),pb[7][0].data=write_varint49(range.e.c+1),delete pb[46];var store=parse_shallow(pb[4][0].data);{var row_header_ref=parse_TSP_Reference(parse_shallow(store[1][0].data)[2][0].data);numbers_iwa_doit(cfb,deps,row_header_ref,function(rowhead,_x){var _a,base_bucket=parse_shallow(rowhead.messages[0].data);if((_a=base_bucket?.[2])!=null&&_a[0])for(var R2=0;R2<data.length;++R2){var _bucket=parse_shallow(base_bucket[2][0].data);_bucket[1][0].data=write_varint49(R2),_bucket[4][0].data=write_varint49(data[R2].length),base_bucket[2][R2]={type:base_bucket[2][0].type,data:write_shallow(_bucket)}}rowhead.messages[0].data=write_shallow(base_bucket)});var col_header_ref=parse_TSP_Reference(store[2][0].data);numbers_iwa_doit(cfb,deps,col_header_ref,function(colhead,_x){for(var base_bucket=parse_shallow(colhead.messages[0].data),C=0;C<=range.e.c;++C){var _bucket=parse_shallow(base_bucket[2][0].data);_bucket[1][0].data=write_varint49(C),_bucket[4][0].data=write_varint49(range.e.r+1),base_bucket[2][C]={type:base_bucket[2][0].type,data:write_shallow(_bucket)}}colhead.messages[0].data=write_shallow(base_bucket)});var rbtree=parse_shallow(store[9][0].data);rbtree[1]=[];var tilestore=parse_shallow(store[3][0].data);{var tstride=256;tilestore[2]=[{type:0,data:write_varint49(tstride)}];var tileref=parse_TSP_Reference(parse_shallow(tilestore[1][0].data)[2][0].data),save_token=(function(){var metadata=numbers_iwa_find(cfb,deps,2),mlist=parse_shallow(metadata.messages[0].data),mlst=mlist[3].filter(function(m){return varint_to_i32(parse_shallow(m.data)[1][0].data)==tileref});return mlst?.length?varint_to_i32(parse_shallow(mlst[0].data)[12][0].data):0})();CFB.utils.cfb_del(cfb,deps[tileref].location),numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);mlist[3]=mlist[3].filter(function(m){return varint_to_i32(parse_shallow(m.data)[1][0].data)!=tileref}),numbers_meta_del_dep(mlist,deps,tmaref,tileref),ai.messages[0].data=write_shallow(mlist)}),numbers_del_oref(tmaroot,tileref),tilestore[1]=[];for(var ntiles=Math.ceil((range.e.r+1)/tstride),tidx=0;tidx<ntiles;++tidx){var newtileid=get_unique_msgid({deps:[],location:"",type:6002},deps);deps[newtileid].location="Root Entry/Index/Tables/Tile-".concat(newtileid,".iwa");for(var tiledata=[[],[{type:0,data:write_varint49(0)}],[{type:0,data:write_varint49(Math.min(range.e.r+1,(tidx+1)*tstride))}],[{type:0,data:write_varint49(0)}],[{type:0,data:write_varint49(Math.min((tidx+1)*tstride,range.e.r+1)-tidx*tstride)}],[],[{type:0,data:write_varint49(5)}],[{type:0,data:write_varint49(1)}],[{type:0,data:write_varint49(USE_WIDE_ROWS?1:0)}]],R=tidx*tstride;R<=Math.min(range.e.r,(tidx+1)*tstride-1);++R){var tilerow=write_TST_TileRowInfo(data[R],LUT,USE_WIDE_ROWS);tilerow[1][0].data=write_varint49(R-tidx*tstride),tiledata[5].push({data:write_shallow(tilerow),type:2})}tilestore[1].push({type:2,data:write_shallow([[],[{type:0,data:write_varint49(tidx)}],[{type:2,data:write_TSP_Reference(newtileid)}]])});var newtile={id:newtileid,messages:[write_iwam(6002,write_shallow(tiledata))]},tilecontent=compress_iwa_file(write_iwa_file([newtile]));CFB.utils.cfb_add(cfb,"/Index/Tables/Tile-".concat(newtileid,".iwa"),tilecontent),numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);mlist[3].push({type:2,data:write_shallow([[],[{type:0,data:write_varint49(newtileid)}],[{type:2,data:stru8("Tables/Tile")}],[{type:2,data:stru8("Tables/Tile-".concat(newtileid))}],[{type:2,data:new Uint8Array([2,0,0])}],[{type:2,data:new Uint8Array([2,0,0])}],[],[],[],[],[{type:0,data:write_varint49(0)}],[],[{type:0,data:write_varint49(save_token)}]])}),mlist[1]=[{type:0,data:write_varint49(Math.max(newtileid+1,varint_to_i32(mlist[1][0].data)))}],numbers_meta_add_dep(mlist,deps,tmaref,newtileid),ai.messages[0].data=write_shallow(mlist)}),numbers_add_oref(tmaroot,newtileid),rbtree[1].push({type:2,data:write_shallow([[],[{type:0,data:write_varint49(tidx*tstride)}],[{type:0,data:write_varint49(tidx)}]])})}}if(store[3][0].data=write_shallow(tilestore),store[9][0].data=write_shallow(rbtree),store[10]=[{type:2,data:new Uint8Array([])}],ws["!merges"]){var mergeid=get_unique_msgid({type:6144,deps:[tmaref],location:deps[tmaref].location},deps);tmafile.push({id:mergeid,messages:[write_iwam(6144,write_shallow([[],ws["!merges"].map(function(m){return{type:2,data:write_shallow([[],[{type:2,data:write_shallow([[],[{type:5,data:new Uint8Array(new Uint16Array([m.s.r,m.s.c]).buffer)}]])}],[{type:2,data:write_shallow([[],[{type:5,data:new Uint8Array(new Uint16Array([m.e.r-m.s.r+1,m.e.c-m.s.c+1]).buffer)}]])}]])}})]))]}),store[13]=[{type:2,data:write_TSP_Reference(mergeid)}],numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);numbers_meta_add_dep(mlist,deps,tmaref,mergeid),ai.messages[0].data=write_shallow(mlist)}),numbers_add_oref(tmaroot,mergeid)}else delete store[13];var sstref=parse_TSP_Reference(store[4][0].data);numbers_iwa_doit(cfb,deps,sstref,function(sstroot){var sstdata=parse_shallow(sstroot.messages[0].data);sstdata[3]=[],LUT.sst.forEach(function(str,i){i!=0&&sstdata[3].push({type:2,data:write_shallow([[],[{type:0,data:write_varint49(i)}],[{type:0,data:write_varint49(1)}],[{type:2,data:stru8(str)}]])})}),sstroot.messages[0].data=write_shallow(sstdata)});var rsstref=parse_TSP_Reference(store[17][0].data);if(numbers_iwa_doit(cfb,deps,rsstref,function(rsstroot){var rsstdata=parse_shallow(rsstroot.messages[0].data);rsstdata[3]=[];var style_indices=[904980,903835,903815,903845];LUT.rsst.forEach(function(rsst,i){if(i!=0){var tswpsa=[[],[{type:0,data:new Uint8Array([5])}],[],[{type:2,data:stru8(rsst.v)}]];tswpsa[10]=[{type:0,data:new Uint8Array([1])}],tswpsa[19]=[{type:2,data:new Uint8Array([10,6,8,0,18,2,101,110])}],tswpsa[5]=[{type:2,data:new Uint8Array([10,8,8,0,18,4,8,155,149,55])}],tswpsa[2]=[{type:2,data:new Uint8Array([8,148,158,55])}],tswpsa[6]=[{type:2,data:new Uint8Array([10,6,8,0,16,0,24,0])}],tswpsa[7]=[{type:2,data:new Uint8Array([10,8,8,0,18,4,8,135,149,55])}],tswpsa[8]=[{type:2,data:new Uint8Array([10,8,8,0,18,4,8,165,149,55])}],tswpsa[14]=[{type:2,data:new Uint8Array([10,6,8,0,16,0,24,0])}],tswpsa[24]=[{type:2,data:new Uint8Array([10,6,8,0,16,0,24,0])}];var tswpsaid=get_unique_msgid({deps:[],location:"",type:2001},deps),tswpsarefs=[];if(rsst.l){var newhlinkid=numbers_add_msg(cfb,2032,[[],[],[{type:2,data:stru8(rsst.l)}]],"/Index/Tables/DataList",deps);tswpsa[11]=[];var smartfield=[[],[]];smartfield[1]||(smartfield[1]=[]),smartfield[1].push({type:2,data:write_shallow([[],[{type:0,data:write_varint49(0)}],[{type:2,data:write_TSP_Reference(newhlinkid)}]])}),tswpsa[11][0]={type:2,data:write_shallow(smartfield)},tswpsarefs.push(newhlinkid)}numbers_add_msg(cfb,2001,tswpsa,"/Index/Tables/DataList",deps,tswpsaid),numbers_iwa_doit(cfb,deps,tswpsaid,function(iwa){style_indices.forEach(function(ref){return numbers_add_oref(iwa,ref)}),tswpsarefs.forEach(function(ref){return numbers_add_oref(iwa,ref)})});var rtpaid=numbers_add_msg(cfb,6218,[[],[{type:2,data:write_TSP_Reference(tswpsaid)}],[],[{type:2,data:new Uint8Array([13,255,255,255,0,18,10,16,255,255,1,24,255,255,255,255,7])}]],"/Index/Tables/DataList",deps);numbers_iwa_doit(cfb,deps,rtpaid,function(iwa){return numbers_add_oref(iwa,tswpsaid)}),rsstdata[3].push({type:2,data:write_shallow([[],[{type:0,data:write_varint49(i)}],[{type:0,data:write_varint49(1)}],[],[],[],[],[],[],[{type:2,data:write_TSP_Reference(rtpaid)}]])}),numbers_add_oref(rsstroot,rtpaid),numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);numbers_meta_add_dep(mlist,deps,rsstref,rtpaid),numbers_meta_add_dep(mlist,deps,rtpaid,tswpsaid),numbers_meta_add_dep(mlist,deps,tswpsaid,tswpsarefs),numbers_meta_add_dep(mlist,deps,tswpsaid,style_indices),ai.messages[0].data=write_shallow(mlist)})}}),rsstroot.messages[0].data=write_shallow(rsstdata)}),LUT.cmnt.length>1){var cmntref=parse_TSP_Reference(store[19][0].data),authors={},iauthor=0;numbers_iwa_doit(cfb,deps,cmntref,function(cmntroot){var cmntdata=parse_shallow(cmntroot.messages[0].data);cmntdata[3]=[],LUT.cmnt.forEach(function(cc,i){if(i!=0){var replies=[];cc.replies&&cc.replies.forEach(function(c){authors[c.a||""]||(authors[c.a||""]=numbers_add_msg(cfb,212,[[],[{type:2,data:stru8(c.a||"")}],[{type:2,data:get_author_color(++iauthor)}],[],[{type:0,data:write_varint49(0)}]],"/Index/Tables/DataList",deps));var aaaid2=authors[c.a||""],csaid2=numbers_add_msg(cfb,3056,[[],[{type:2,data:stru8(c.t||"")}],[{type:2,data:write_shallow([[],[{type:1,data:new Uint8Array([0,0,0,128,116,109,182,65])}]])}],[{type:2,data:write_TSP_Reference(aaaid2)}]],"/Index/Tables/DataList",deps);numbers_iwa_doit(cfb,deps,csaid2,function(iwa){return numbers_add_oref(iwa,aaaid2)}),replies.push(csaid2),numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);numbers_meta_add_dep(mlist,deps,csaid2,aaaid2),ai.messages[0].data=write_shallow(mlist)})}),authors[cc.a||""]||(authors[cc.a||""]=numbers_add_msg(cfb,212,[[],[{type:2,data:stru8(cc.a||"")}],[{type:2,data:get_author_color(++iauthor)}],[],[{type:0,data:write_varint49(0)}]],"/Index/Tables/DataList",deps));var aaaid=authors[cc.a||""],csaid=numbers_add_msg(cfb,3056,[[],[{type:2,data:stru8(cc.t||"")}],[{type:2,data:write_shallow([[],[{type:1,data:new Uint8Array([0,0,0,128,116,109,182,65])}]])}],[{type:2,data:write_TSP_Reference(aaaid)}],replies.map(function(r){return{type:2,data:write_TSP_Reference(r)}}),[{type:2,data:write_shallow([[],[{type:0,data:write_varint49(i)}],[{type:0,data:write_varint49(0)}]])}]],"/Index/Tables/DataList",deps);numbers_iwa_doit(cfb,deps,csaid,function(iwa){numbers_add_oref(iwa,aaaid),replies.forEach(function(r){return numbers_add_oref(iwa,r)})}),cmntdata[3].push({type:2,data:write_shallow([[],[{type:0,data:write_varint49(i)}],[{type:0,data:write_varint49(1)}],[],[],[],[],[],[],[],[{type:2,data:write_TSP_Reference(csaid)}]])}),numbers_add_oref(cmntroot,csaid),numbers_iwa_doit(cfb,deps,2,function(ai){var mlist=parse_shallow(ai.messages[0].data);numbers_meta_add_dep(mlist,deps,cmntref,csaid),numbers_meta_add_dep(mlist,deps,csaid,aaaid),replies.length&&numbers_meta_add_dep(mlist,deps,csaid,replies),ai.messages[0].data=write_shallow(mlist)})}}),cmntdata[2][0].data=write_varint49(LUT.cmnt.length+1),cmntroot.messages[0].data=write_shallow(cmntdata)})}}pb[4][0].data=write_shallow(store)}tmaroot.messages[0].data=write_shallow(pb)}function fix_opts_func(defaults){return function(opts){for(var i=0;i!=defaults.length;++i){var d=defaults[i];opts[d[0]]===void 0&&(opts[d[0]]=d[1]),d[2]==="n"&&(opts[d[0]]=Number(opts[d[0]]))}}}function fix_read_opts(opts){fix_opts_func([["cellNF",!1],["cellHTML",!0],["cellFormula",!0],["cellStyles",!1],["cellText",!0],["cellDates",!1],["sheetStubs",!1],["sheetRows",0,"n"],["bookDeps",!1],["bookSheets",!1],["bookProps",!1],["bookFiles",!1],["bookVBA",!1],["password",""],["WTF",!1]])(opts)}function fix_write_opts(opts){fix_opts_func([["cellDates",!1],["bookSST",!1],["bookType","xlsx"],["compression",!1],["WTF",!1]])(opts)}function get_sheet_type(n){return RELS.WS.indexOf(n)>-1?"sheet":RELS.CS&&n==RELS.CS?"chart":RELS.DS&&n==RELS.DS?"dialog":RELS.MS&&n==RELS.MS?"macro":n&&n.length?n:"sheet"}function safe_parse_wbrels(wbrels,sheets){if(!wbrels)return 0;try{wbrels=sheets.map(function(w){return w.id||(w.id=w.strRelID),[w.name,wbrels["!id"][w.id].Target,get_sheet_type(wbrels["!id"][w.id].Type)]})}catch{return null}return!wbrels||wbrels.length===0?null:wbrels}function parse_sheet_legacy_drawing(sheet,type,zip,path,idx,opts,wb,comments){if(!(!sheet||!sheet["!legdrawel"])){var dfile=resolve_path(sheet["!legdrawel"].Target,path),draw=getzipstr(zip,dfile,!0);draw&&parse_vml(utf8read(draw),sheet,comments||[])}}function safe_parse_sheet(zip,path,relsPath,sheet,idx,sheetRels,sheets,stype,opts,wb,themes,styles){try{sheetRels[sheet]=parse_rels(getzipstr(zip,relsPath,!0),path);var data=getzipdata(zip,path),_ws;switch(stype){case"sheet":_ws=parse_ws(data,path,idx,opts,sheetRels[sheet],wb,themes,styles);break;case"chart":if(_ws=parse_cs(data,path,idx,opts,sheetRels[sheet],wb,themes,styles),!_ws||!_ws["!drawel"])break;var dfile=resolve_path(_ws["!drawel"].Target,path),drelsp=get_rels_path(dfile),draw=parse_drawing(getzipstr(zip,dfile,!0),parse_rels(getzipstr(zip,drelsp,!0),dfile)),chartp=resolve_path(draw,dfile),crelsp=get_rels_path(chartp);_ws=parse_chart(getzipstr(zip,chartp,!0),chartp,opts,parse_rels(getzipstr(zip,crelsp,!0),chartp),wb,_ws);break;case"macro":_ws=parse_ms(data,path,idx,opts,sheetRels[sheet],wb,themes,styles);break;case"dialog":_ws=parse_ds(data,path,idx,opts,sheetRels[sheet],wb,themes,styles);break;default:throw new Error("Unrecognized sheet type "+stype)}sheets[sheet]=_ws;var comments=[],tcomments=[];sheetRels&&sheetRels[sheet]&&keys(sheetRels[sheet]).forEach(function(n){var dfile2="";if(sheetRels[sheet][n].Type==RELS.CMNT){if(dfile2=resolve_path(sheetRels[sheet][n].Target,path),comments=parse_cmnt(getzipdata(zip,dfile2,!0),dfile2,opts),!comments||!comments.length)return;sheet_insert_comments(_ws,comments,!1)}sheetRels[sheet][n].Type==RELS.TCMNT&&(dfile2=resolve_path(sheetRels[sheet][n].Target,path),tcomments=tcomments.concat(parse_tcmnt_xml(getzipdata(zip,dfile2,!0),opts)))}),tcomments&&tcomments.length&&sheet_insert_comments(_ws,tcomments,!0,opts.people||[]),parse_sheet_legacy_drawing(_ws,stype,zip,path,idx,opts,wb,comments)}catch(e){if(opts.WTF)throw e}}function strip_front_slash(x){return x.charAt(0)=="/"?x.slice(1):x}function parse_zip(zip,opts){if(make_ssf(),opts=opts||{},fix_read_opts(opts),safegetzipfile(zip,"META-INF/manifest.xml")||safegetzipfile(zip,"objectdata.xml"))return parse_ods(zip,opts);if(safegetzipfile(zip,"Index/Document.iwa")){if(typeof Uint8Array>"u")throw new Error("NUMBERS file parsing requires Uint8Array support");if(typeof parse_numbers_iwa<"u"){if(zip.FileIndex)return parse_numbers_iwa(zip,opts);var _zip=CFB.utils.cfb_new();return zipentries(zip).forEach(function(e){zip_add_file(_zip,e,getzipbin(zip,e))}),parse_numbers_iwa(_zip,opts)}throw new Error("Unsupported NUMBERS file")}if(!safegetzipfile(zip,"[Content_Types].xml")){if(safegetzipfile(zip,"index.xml.gz"))throw new Error("Unsupported NUMBERS 08 file");if(safegetzipfile(zip,"index.xml"))throw new Error("Unsupported NUMBERS 09 file");var index_zip=CFB.find(zip,"Index.zip");if(index_zip)return opts=dup(opts),delete opts.type,typeof index_zip.content=="string"&&(opts.type="binary"),typeof Bun<"u"&&Buffer.isBuffer(index_zip.content)?readSync(new Uint8Array(index_zip.content),opts):readSync(index_zip.content,opts);throw new Error("Unsupported ZIP file")}var entries=zipentries(zip),dir=parse_ct(getzipstr(zip,"[Content_Types].xml")),xlsb=!1,sheets,binname;if(dir.workbooks.length===0&&(binname="xl/workbook.xml",getzipdata(zip,binname,!0)&&dir.workbooks.push(binname)),dir.workbooks.length===0){if(binname="xl/workbook.bin",!getzipdata(zip,binname,!0))throw new Error("Could not find workbook");dir.workbooks.push(binname),xlsb=!0}dir.workbooks[0].slice(-3)=="bin"&&(xlsb=!0);var themes={},styles={};if(!opts.bookSheets&&!opts.bookProps){if(strs=[],dir.sst)try{strs=parse_sst(getzipdata(zip,strip_front_slash(dir.sst)),dir.sst,opts)}catch(e){if(opts.WTF)throw e}opts.cellStyles&&dir.themes.length&&(themes=parse_theme_xml(getzipstr(zip,dir.themes[0].replace(/^\//,""),!0)||"",opts)),dir.style&&(styles=parse_sty(getzipdata(zip,strip_front_slash(dir.style)),dir.style,themes,opts))}dir.links.map(function(link){try{var rels=parse_rels(getzipstr(zip,get_rels_path(strip_front_slash(link))),link);return parse_xlink(getzipdata(zip,strip_front_slash(link)),rels,link,opts)}catch{}});var wb=parse_wb(getzipdata(zip,strip_front_slash(dir.workbooks[0])),dir.workbooks[0],opts),props={},propdata="";dir.coreprops.length&&(propdata=getzipdata(zip,strip_front_slash(dir.coreprops[0]),!0),propdata&&(props=parse_core_props(propdata)),dir.extprops.length!==0&&(propdata=getzipdata(zip,strip_front_slash(dir.extprops[0]),!0),propdata&&parse_ext_props(propdata,props,opts)));var custprops={};(!opts.bookSheets||opts.bookProps)&&dir.custprops.length!==0&&(propdata=getzipstr(zip,strip_front_slash(dir.custprops[0]),!0),propdata&&(custprops=parse_cust_props(propdata,opts)));var out={};if((opts.bookSheets||opts.bookProps)&&(wb.Sheets?sheets=wb.Sheets.map(function(x){return x.name}):props.Worksheets&&props.SheetNames.length>0&&(sheets=props.SheetNames),opts.bookProps&&(out.Props=props,out.Custprops=custprops),opts.bookSheets&&typeof sheets<"u"&&(out.SheetNames=sheets),opts.bookSheets?out.SheetNames:opts.bookProps))return out;sheets={};var deps={};opts.bookDeps&&dir.calcchain&&(deps=parse_cc(getzipdata(zip,strip_front_slash(dir.calcchain)),dir.calcchain,opts));var i=0,sheetRels={},path,relsPath;{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 wbext=xlsb?"bin":"xml",wbrelsi=dir.workbooks[0].lastIndexOf("/"),wbrelsfile=(dir.workbooks[0].slice(0,wbrelsi+1)+"_rels/"+dir.workbooks[0].slice(wbrelsi+1)+".rels").replace(/^\//,"");safegetzipfile(zip,wbrelsfile)||(wbrelsfile="xl/_rels/workbook."+wbext+".rels");var wbrels=parse_rels(getzipstr(zip,wbrelsfile,!0),wbrelsfile.replace(/_rels.*/,"s5s"));(dir.metadata||[]).length>=1&&(opts.xlmeta=parse_xlmeta(getzipdata(zip,strip_front_slash(dir.metadata[0])),dir.metadata[0],opts)),(dir.people||[]).length>=1&&(opts.people=parse_people_xml(getzipdata(zip,strip_front_slash(dir.people[0])),opts)),wbrels&&(wbrels=safe_parse_wbrels(wbrels,wb.Sheets));var nmode=getzipdata(zip,"xl/worksheets/sheet.xml",!0)?1:0;wsloop:for(i=0;i!=props.Worksheets;++i){var stype="sheet";if(wbrels&&wbrels[i]?(path="xl/"+wbrels[i][1].replace(/[\/]?xl\//,""),safegetzipfile(zip,path)||(path=wbrels[i][1]),safegetzipfile(zip,path)||(path=wbrelsfile.replace(/_rels\/[\S\s]*$/,"")+wbrels[i][1]),stype=wbrels[i][2]):(path="xl/worksheets/sheet"+(i+1-nmode)+"."+wbext,path=path.replace(/sheet0\./,"sheet.")),relsPath=path.replace(/^(.*)(\/)([^\/]*)$/,"$1/_rels/$3.rels"),opts&&opts.sheets!=null)switch(typeof opts.sheets){case"number":if(i!=opts.sheets)continue wsloop;break;case"string":if(props.SheetNames[i].toLowerCase()!=opts.sheets.toLowerCase())continue wsloop;break;default:if(Array.isArray&&Array.isArray(opts.sheets)){for(var snjseen=!1,snj=0;snj!=opts.sheets.length;++snj)typeof opts.sheets[snj]=="number"&&opts.sheets[snj]==i&&(snjseen=1),typeof opts.sheets[snj]=="string"&&opts.sheets[snj].toLowerCase()==props.SheetNames[i].toLowerCase()&&(snjseen=1);if(!snjseen)continue wsloop}}safe_parse_sheet(zip,path,relsPath,props.SheetNames[i],i,sheetRels,sheets,stype,opts,wb,themes,styles)}return out={Directory:dir,Workbook:wb,Props:props,Custprops:custprops,Deps:deps,Sheets:sheets,SheetNames:props.SheetNames,Strings:strs,Styles:styles,Themes:themes,SSF:dup(table_fmt)},opts&&opts.bookFiles&&(zip.files?(out.keys=entries,out.files=zip.files):(out.keys=[],out.files={},zip.FullPaths.forEach(function(p,idx){p=p.replace(/^Root Entry[\/]/,""),out.keys.push(p),out.files[p]=zip.FileIndex[idx]}))),opts&&opts.bookVBA&&(dir.vba.length>0?out.vbaraw=getzipdata(zip,strip_front_slash(dir.vba[0]),!0):dir.defaults&&dir.defaults.bin===CT_VBA&&(out.vbaraw=getzipdata(zip,"xl/vbaProject.bin",!0))),out.bookType=xlsb?"xlsb":"xlsx",out}function parse_xlsxcfb(cfb,_opts){var opts=_opts||{},f="Workbook",data=CFB.find(cfb,f);try{if(f="/!DataSpaces/Version",data=CFB.find(cfb,f),!data||!data.content)throw new Error("ECMA-376 Encrypted file missing "+f);if(parse_DataSpaceVersionInfo(data.content),f="/!DataSpaces/DataSpaceMap",data=CFB.find(cfb,f),!data||!data.content)throw new Error("ECMA-376 Encrypted file missing "+f);var dsm=parse_DataSpaceMap(data.content);if(dsm.length!==1||dsm[0].comps.length!==1||dsm[0].comps[0].t!==0||dsm[0].name!=="StrongEncryptionDataSpace"||dsm[0].comps[0].v!=="EncryptedPackage")throw new Error("ECMA-376 Encrypted file bad "+f);if(f="/!DataSpaces/DataSpaceInfo/StrongEncryptionDataSpace",data=CFB.find(cfb,f),!data||!data.content)throw new Error("ECMA-376 Encrypted file missing "+f);var seds=parse_DataSpaceDefinition(data.content);if(seds.length!=1||seds[0]!="StrongEncryptionTransform")throw new Error("ECMA-376 Encrypted file bad "+f);if(f="/!DataSpaces/TransformInfo/StrongEncryptionTransform/!Primary",data=CFB.find(cfb,f),!data||!data.content)throw new Error("ECMA-376 Encrypted file missing "+f);parse_Primary(data.content)}catch{}if(f="/EncryptionInfo",data=CFB.find(cfb,f),!data||!data.content)throw new Error("ECMA-376 Encrypted file missing "+f);var einfo=parse_EncryptionInfo(data.content);if(f="/EncryptedPackage",data=CFB.find(cfb,f),!data||!data.content)throw new Error("ECMA-376 Encrypted file missing "+f);if(einfo[0]==4&&typeof decrypt_agile<"u")return decrypt_agile(einfo[1],data.content,opts.password||"",opts);if(einfo[0]==2&&typeof decrypt_std76<"u")return decrypt_std76(einfo[1],data.content,opts.password||"",opts);throw new Error("File is password-protected")}function write_zip_xlsb(wb,opts){wb&&!wb.SSF&&(wb.SSF=dup(table_fmt)),wb&&wb.SSF&&(make_ssf(),SSF_load_table(wb.SSF),opts.revssf=evert_num(wb.SSF),opts.revssf[wb.SSF[65535]]=0,opts.ssf=wb.SSF),opts.rels={},opts.wbrels={},opts.Strings=[],opts.Strings.Count=0,opts.Strings.Unique=0,browser_has_Map?opts.revStrings=new Map:(opts.revStrings={},opts.revStrings.foo=[],delete opts.revStrings.foo);var wbext="bin",vbafmt=!0,ct=new_ct();fix_write_opts(opts=opts||{});var zip=zip_new(),f="",rId=0;if(opts.cellXfs=[],get_cell_style(opts.cellXfs,{},{revssf:{General:0}}),wb.Props||(wb.Props={}),f="docProps/core.xml",zip_add_file(zip,f,write_core_props(wb.Props,opts)),ct.coreprops.push(f),add_rels(opts.rels,2,f,RELS.CORE_PROPS),f="docProps/app.xml",!(wb.Props&&wb.Props.SheetNames))if(!wb.Workbook||!wb.Workbook.Sheets)wb.Props.SheetNames=wb.SheetNames;else{for(var _sn=[],_i=0;_i<wb.SheetNames.length;++_i)(wb.Workbook.Sheets[_i]||{}).Hidden!=2&&_sn.push(wb.SheetNames[_i]);wb.Props.SheetNames=_sn}wb.Props.Worksheets=wb.Props.SheetNames.length,zip_add_file(zip,f,write_ext_props(wb.Props,opts)),ct.extprops.push(f),add_rels(opts.rels,3,f,RELS.EXT_PROPS),wb.Custprops!==wb.Props&&keys(wb.Custprops||{}).length>0&&(f="docProps/custom.xml",zip_add_file(zip,f,write_cust_props(wb.Custprops,opts)),ct.custprops.push(f),add_rels(opts.rels,4,f,RELS.CUST_PROPS));var people=["SheetJ5"];for(opts.tcid=0,rId=1;rId<=wb.SheetNames.length;++rId){var wsrels={"!id":{}},ws=wb.Sheets[wb.SheetNames[rId-1]],_type=(ws||{})["!type"]||"sheet";if(f="xl/worksheets/sheet"+rId+"."+wbext,zip_add_file(zip,f,write_ws_bin(rId-1,opts,wb,wsrels)),ct.sheets.push(f),add_rels(opts.wbrels,-1,"worksheets/sheet"+rId+"."+wbext,RELS.WS[0]),ws){var comments=ws["!comments"],need_vml=!1,cf="";if(comments&&comments.length>0){var needtc=!1;comments.forEach(function(carr){carr[1].forEach(function(c){c.T==!0&&(needtc=!0)})}),needtc&&(cf="xl/threadedComments/threadedComment"+rId+".xml",zip_add_file(zip,cf,write_tcmnt_xml(comments,people,opts)),ct.threadedcomments.push(cf),add_rels(wsrels,-1,"../threadedComments/threadedComment"+rId+".xml",RELS.TCMNT)),cf="xl/comments"+rId+"."+wbext,zip_add_file(zip,cf,write_comments_bin(comments,opts)),ct.comments.push(cf),add_rels(wsrels,-1,"../comments"+rId+"."+wbext,RELS.CMNT),need_vml=!0}ws["!legacy"]&&need_vml&&zip_add_file(zip,"xl/drawings/vmlDrawing"+rId+".vml",write_vml(rId,ws["!comments"])),delete ws["!comments"],delete ws["!legacy"]}wsrels["!id"].rId1&&zip_add_file(zip,get_rels_path(f),write_rels(wsrels))}opts.Strings!=null&&opts.Strings.length>0&&(f="xl/sharedStrings."+wbext,zip_add_file(zip,f,write_sst_bin(opts.Strings,opts)),ct.strs.push(f),add_rels(opts.wbrels,-1,"sharedStrings."+wbext,RELS.SST)),f="xl/workbook."+wbext,zip_add_file(zip,f,write_wb_bin(wb,opts)),ct.workbooks.push(f),add_rels(opts.rels,1,f,RELS.WB),f="xl/theme/theme1.xml";var ww=write_theme(wb.Themes,opts);return zip_add_file(zip,f,ww),ct.themes.push(f),add_rels(opts.wbrels,-1,"theme/theme1.xml",RELS.THEME),f="xl/styles."+wbext,zip_add_file(zip,f,write_sty_bin(wb,opts)),ct.styles.push(f),add_rels(opts.wbrels,-1,"styles."+wbext,RELS.STY),wb.vbaraw&&vbafmt&&(f="xl/vbaProject.bin",zip_add_file(zip,f,wb.vbaraw),ct.vba.push(f),add_rels(opts.wbrels,-1,"vbaProject.bin",RELS.VBA)),f="xl/metadata."+wbext,zip_add_file(zip,f,write_xlmeta_bin()),ct.metadata.push(f),add_rels(opts.wbrels,-1,"metadata."+wbext,RELS.XLMETA),people.length>1&&(f="xl/persons/person.xml",zip_add_file(zip,f,write_people_xml(people,opts)),ct.people.push(f),add_rels(opts.wbrels,-1,"persons/person.xml",RELS.PEOPLE)),zip_add_file(zip,"[Content_Types].xml",write_ct(ct,opts)),zip_add_file(zip,"_rels/.rels",write_rels(opts.rels)),zip_add_file(zip,"xl/_rels/workbook."+wbext+".rels",write_rels(opts.wbrels)),delete opts.revssf,delete opts.ssf,zip}function write_zip_xlsx(wb,opts){wb&&!wb.SSF&&(wb.SSF=dup(table_fmt)),wb&&wb.SSF&&(make_ssf(),SSF_load_table(wb.SSF),opts.revssf=evert_num(wb.SSF),opts.revssf[wb.SSF[65535]]=0,opts.ssf=wb.SSF),opts.rels={},opts.wbrels={},opts.Strings=[],opts.Strings.Count=0,opts.Strings.Unique=0,browser_has_Map?opts.revStrings=new Map:(opts.revStrings={},opts.revStrings.foo=[],delete opts.revStrings.foo);var wbext="xml",vbafmt=VBAFMTS.indexOf(opts.bookType)>-1,ct=new_ct();fix_write_opts(opts=opts||{});var zip=zip_new(),f="",rId=0;if(opts.cellXfs=[],get_cell_style(opts.cellXfs,{},{revssf:{General:0}}),wb.Props||(wb.Props={}),f="docProps/core.xml",zip_add_file(zip,f,write_core_props(wb.Props,opts)),ct.coreprops.push(f),add_rels(opts.rels,2,f,RELS.CORE_PROPS),f="docProps/app.xml",!(wb.Props&&wb.Props.SheetNames))if(!wb.Workbook||!wb.Workbook.Sheets)wb.Props.SheetNames=wb.SheetNames;else{for(var _sn=[],_i=0;_i<wb.SheetNames.length;++_i)(wb.Workbook.Sheets[_i]||{}).Hidden!=2&&_sn.push(wb.SheetNames[_i]);wb.Props.SheetNames=_sn}wb.Props.Worksheets=wb.Props.SheetNames.length,zip_add_file(zip,f,write_ext_props(wb.Props,opts)),ct.extprops.push(f),add_rels(opts.rels,3,f,RELS.EXT_PROPS),wb.Custprops!==wb.Props&&keys(wb.Custprops||{}).length>0&&(f="docProps/custom.xml",zip_add_file(zip,f,write_cust_props(wb.Custprops,opts)),ct.custprops.push(f),add_rels(opts.rels,4,f,RELS.CUST_PROPS));var people=["SheetJ5"];for(opts.tcid=0,rId=1;rId<=wb.SheetNames.length;++rId){var wsrels={"!id":{}},ws=wb.Sheets[wb.SheetNames[rId-1]],_type=(ws||{})["!type"]||"sheet";if(f="xl/worksheets/sheet"+rId+"."+wbext,zip_add_file(zip,f,write_ws_xml(rId-1,opts,wb,wsrels)),ct.sheets.push(f),add_rels(opts.wbrels,-1,"worksheets/sheet"+rId+"."+wbext,RELS.WS[0]),ws){var comments=ws["!comments"],need_vml=!1,cf="";if(comments&&comments.length>0){var needtc=!1;comments.forEach(function(carr){carr[1].forEach(function(c){c.T==!0&&(needtc=!0)})}),needtc&&(cf="xl/threadedComments/threadedComment"+rId+".xml",zip_add_file(zip,cf,write_tcmnt_xml(comments,people,opts)),ct.threadedcomments.push(cf),add_rels(wsrels,-1,"../threadedComments/threadedComment"+rId+".xml",RELS.TCMNT)),cf="xl/comments"+rId+"."+wbext,zip_add_file(zip,cf,write_comments_xml(comments,opts)),ct.comments.push(cf),add_rels(wsrels,-1,"../comments"+rId+"."+wbext,RELS.CMNT),need_vml=!0}ws["!legacy"]&&need_vml&&zip_add_file(zip,"xl/drawings/vmlDrawing"+rId+".vml",write_vml(rId,ws["!comments"])),delete ws["!comments"],delete ws["!legacy"]}wsrels["!id"].rId1&&zip_add_file(zip,get_rels_path(f),write_rels(wsrels))}return opts.Strings!=null&&opts.Strings.length>0&&(f="xl/sharedStrings."+wbext,zip_add_file(zip,f,write_sst_xml(opts.Strings,opts)),ct.strs.push(f),add_rels(opts.wbrels,-1,"sharedStrings."+wbext,RELS.SST)),f="xl/workbook."+wbext,zip_add_file(zip,f,write_wb_xml(wb,opts)),ct.workbooks.push(f),add_rels(opts.rels,1,f,RELS.WB),f="xl/theme/theme1.xml",zip_add_file(zip,f,write_theme(wb.Themes,opts)),ct.themes.push(f),add_rels(opts.wbrels,-1,"theme/theme1.xml",RELS.THEME),f="xl/styles."+wbext,zip_add_file(zip,f,write_sty_xml(wb,opts)),ct.styles.push(f),add_rels(opts.wbrels,-1,"styles."+wbext,RELS.STY),wb.vbaraw&&vbafmt&&(f="xl/vbaProject.bin",zip_add_file(zip,f,wb.vbaraw),ct.vba.push(f),add_rels(opts.wbrels,-1,"vbaProject.bin",RELS.VBA)),f="xl/metadata."+wbext,zip_add_file(zip,f,write_xlmeta_xml()),ct.metadata.push(f),add_rels(opts.wbrels,-1,"metadata."+wbext,RELS.XLMETA),people.length>1&&(f="xl/persons/person.xml",zip_add_file(zip,f,write_people_xml(people,opts)),ct.people.push(f),add_rels(opts.wbrels,-1,"persons/person.xml",RELS.PEOPLE)),zip_add_file(zip,"[Content_Types].xml",write_ct(ct,opts)),zip_add_file(zip,"_rels/.rels",write_rels(opts.rels)),zip_add_file(zip,"xl/_rels/workbook."+wbext+".rels",write_rels(opts.wbrels)),delete opts.revssf,delete opts.ssf,zip}function firstbyte(f,o){var x="";switch((o||{}).type||"base64"){case"buffer":return[f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7]];case"base64":x=Base64_decode(f.slice(0,12));break;case"binary":x=f;break;case"array":return[f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7]];default:throw new Error("Unrecognized type "+(o&&o.type||"undefined"))}return[x.charCodeAt(0),x.charCodeAt(1),x.charCodeAt(2),x.charCodeAt(3),x.charCodeAt(4),x.charCodeAt(5),x.charCodeAt(6),x.charCodeAt(7)]}function read_cfb(cfb,opts){return CFB.find(cfb,"EncryptedPackage")?parse_xlsxcfb(cfb,opts):parse_xlscfb(cfb,opts)}function read_zip(data,opts){var zip,d=data,o=opts||{};return o.type||(o.type=has_buf&&Buffer.isBuffer(data)?"buffer":"base64"),zip=zip_read(d,o),parse_zip(zip,o)}function read_plaintext(data,o){var i=0;main:for(;i<data.length;)switch(data.charCodeAt(i)){case 10:case 13:case 32:++i;break;case 60:return parse_xlml(data.slice(i),o);default:break main}return PRN.to_workbook(data,o)}function read_plaintext_raw(data,o){var str="",bytes=firstbyte(data,o);switch(o.type){case"base64":str=Base64_decode(data);break;case"binary":str=data;break;case"buffer":str=data.toString("binary");break;case"array":str=cc2str(data);break;default:throw new Error("Unrecognized type "+o.type)}return bytes[0]==239&&bytes[1]==187&&bytes[2]==191&&(str=utf8read(str)),o.type="binary",read_plaintext(str,o)}function read_utf16(data,o){var d=data;return o.type=="base64"&&(d=Base64_decode(d)),typeof ArrayBuffer<"u"&&data instanceof ArrayBuffer&&(d=new Uint8Array(data)),d=typeof $cptable<"u"?$cptable.utils.decode(1200,d.slice(2),"str"):has_buf&&Buffer.isBuffer(data)?data.slice(2).toString("utf16le"):typeof Uint8Array<"u"&&d instanceof Uint8Array?typeof TextDecoder<"u"?new TextDecoder("utf-16le").decode(d.slice(2)):utf16lereadu(d.slice(2)):utf16leread(d.slice(2)),o.type="binary",read_plaintext(d,o)}function bstrify(data){return data.match(/[^\x00-\x7F]/)?utf8write(data):data}function read_prn(data,d,o,str){return str?(o.type="string",PRN.to_workbook(data,o)):PRN.to_workbook(d,o)}function readSync(data,opts){reset_cp();var o=opts||{};if(o.codepage&&typeof $cptable>"u"&&console.error("Codepage tables are not loaded. Non-ASCII characters may not give expected results"),typeof ArrayBuffer<"u"&&data instanceof ArrayBuffer)return readSync(new Uint8Array(data),(o=dup(o),o.type="array",o));if(typeof Int8Array<"u"&&data instanceof Int8Array)return readSync(new Uint8Array(data.buffer,data.byteOffset,data.length),o);typeof Uint8Array<"u"&&data instanceof Uint8Array&&!o.type&&(o.type=typeof Deno<"u"?"buffer":"array");var d=data,n=[0,0,0,0],str=!1;if(o.cellStyles&&(o.cellNF=!0,o.sheetStubs=!0),_ssfopts={},o.dateNF&&(_ssfopts.dateNF=o.dateNF),o.type||(o.type=has_buf&&Buffer.isBuffer(data)?"buffer":"base64"),o.type=="file"&&(o.type=has_buf?"buffer":"binary",d=read_binary(data),typeof Uint8Array<"u"&&!has_buf&&(o.type="array")),o.type=="string"&&(str=!0,o.type="binary",o.codepage=65001,d=bstrify(data)),o.type=="array"&&typeof Uint8Array<"u"&&data instanceof Uint8Array&&typeof ArrayBuffer<"u"){var ab=new ArrayBuffer(3),vu=new Uint8Array(ab);if(vu.foo="bar",!vu.foo)return o=dup(o),o.type="array",readSync(ab2a(d),o)}switch((n=firstbyte(d,o))[0]){case 208:if(n[1]===207&&n[2]===17&&n[3]===224&&n[4]===161&&n[5]===177&&n[6]===26&&n[7]===225)return read_cfb(CFB.read(d,o),o);break;case 9:if(n[1]<=8)return parse_xlscfb(d,o);break;case 60:return parse_xlml(d,o);case 73:if(n[1]===73&&n[2]===42&&n[3]===0)throw new Error("TIFF Image File is not a spreadsheet");if(n[1]===68)return read_wb_ID(d,o);break;case 84:if(n[1]===65&&n[2]===66&&n[3]===76)return DIF.to_workbook(d,o);break;case 80:return n[1]===75&&n[2]<9&&n[3]<9?read_zip(d,o):read_prn(data,d,o,str);case 239:return n[3]===60?parse_xlml(d,o):read_prn(data,d,o,str);case 255:if(n[1]===254)return read_utf16(d,o);if(n[1]===0&&n[2]===2&&n[3]===0)return WK_.to_workbook(d,o);break;case 0:if(n[1]===0&&(n[2]>=2&&n[3]===0||n[2]===0&&(n[3]===8||n[3]===9)))return WK_.to_workbook(d,o);break;case 3:case 131:case 139:case 140:return DBF.to_workbook(d,o);case 123:if(n[1]===92&&n[2]===114&&n[3]===116)return rtf_to_workbook(d,o);break;case 10:case 13:case 32:return read_plaintext_raw(d,o);case 137:if(n[1]===80&&n[2]===78&&n[3]===71)throw new Error("PNG Image File is not a spreadsheet");break;case 8:if(n[1]===231)throw new Error("Unsupported Multiplan 1.x file!");break;case 12:if(n[1]===236)throw new Error("Unsupported Multiplan 2.x file!");if(n[1]===237)throw new Error("Unsupported Multiplan 3.x file!");break}return DBF_SUPPORTED_VERSIONS.indexOf(n[0])>-1&&n[2]<=12&&n[3]<=31?DBF.to_workbook(d,o):read_prn(data,d,o,str)}function readFileSync(filename,opts){var o=opts||{};return o.type="file",readSync(filename,o)}function write_cfb_ctr(cfb,o){switch(o.type){case"base64":case"binary":break;case"buffer":case"array":o.type="";break;case"file":return write_dl(o.file,CFB.write(cfb,{type:has_buf?"buffer":""}));case"string":throw new Error("'string' output type invalid for '"+o.bookType+"' files");default:throw new Error("Unrecognized type "+o.type)}return CFB.write(cfb,o)}function write_zip(wb,opts){switch(opts.bookType){case"ods":return write_ods(wb,opts);case"numbers":return write_numbers_iwa(wb,opts);case"xlsb":return write_zip_xlsb(wb,opts);default:return write_zip_xlsx(wb,opts)}}function write_zip_type(wb,opts){var o=dup(opts||{}),z=write_zip(wb,o);return write_zip_denouement(z,o)}function write_zip_typeXLSX(wb,opts){var o=dup(opts||{}),z=write_zip_xlsx(wb,o);return write_zip_denouement(z,o)}function write_zip_denouement(z,o){var oopts={},ftype=has_buf?"nodebuffer":typeof Uint8Array<"u"?"array":"string";if(o.compression&&(oopts.compression="DEFLATE"),o.password)oopts.type=ftype;else switch(o.type){case"base64":oopts.type="base64";break;case"binary":oopts.type="string";break;case"string":throw new Error("'string' output type invalid for '"+o.bookType+"' files");case"buffer":case"file":oopts.type=ftype;break;default:throw new Error("Unrecognized type "+o.type)}var out=z.FullPaths?CFB.write(z,{fileType:"zip",type:{nodebuffer:"buffer",string:"binary"}[oopts.type]||oopts.type,compression:!!o.compression}):z.generate(oopts);if(typeof Deno<"u"&&typeof out=="string"){if(o.type=="binary"||o.type=="base64")return out;out=new Uint8Array(s2ab(out))}return o.password&&typeof encrypt_agile<"u"?write_cfb_ctr(encrypt_agile(out,o.password),o):o.type==="file"?write_dl(o.file,out):o.type=="string"?utf8read(out):out}function write_cfb_type(wb,opts){var o=opts||{},cfb=write_xlscfb(wb,o);return write_cfb_ctr(cfb,o)}function write_string_type(out,opts,bom){bom||(bom="");var o=bom+out;switch(opts.type){case"base64":return Base64_encode(utf8write(o));case"binary":return utf8write(o);case"string":return out;case"file":return write_dl(opts.file,o,"utf8");case"buffer":return has_buf?Buffer_from(o,"utf8"):typeof TextEncoder<"u"?new TextEncoder().encode(o):write_string_type(o,{type:"binary"}).split("").map(function(c){return c.charCodeAt(0)})}throw new Error("Unrecognized type "+opts.type)}function write_stxt_type(out,opts){switch(opts.type){case"base64":return Base64_encode_pass(out);case"binary":return out;case"string":return out;case"file":return write_dl(opts.file,out,"binary");case"buffer":return has_buf?Buffer_from(out,"binary"):out.split("").map(function(c){return c.charCodeAt(0)})}throw new Error("Unrecognized type "+opts.type)}function write_binary_type(out,opts){switch(opts.type){case"string":case"base64":case"binary":for(var bstr="",i=0;i<out.length;++i)bstr+=String.fromCharCode(out[i]);return opts.type=="base64"?Base64_encode(bstr):opts.type=="string"?utf8read(bstr):bstr;case"file":return write_dl(opts.file,out);case"buffer":return out;default:throw new Error("Unrecognized type "+opts.type)}}function writeSyncXLSX(wb,opts){reset_cp(),check_wb(wb);var o=dup(opts||{});if(o.cellStyles&&(o.cellNF=!0,o.sheetStubs=!0),o.type=="array"){o.type="binary";var out=writeSyncXLSX(wb,o);return o.type="array",s2ab(out)}return write_zip_typeXLSX(wb,o)}function writeSync(wb,opts){reset_cp(),check_wb(wb);var o=dup(opts||{});if(o.cellStyles&&(o.cellNF=!0,o.sheetStubs=!0),o.type=="array"){o.type="binary";var out=writeSync(wb,o);return o.type="array",s2ab(out)}var idx=0;if(o.sheet&&(typeof o.sheet=="number"?idx=o.sheet:idx=wb.SheetNames.indexOf(o.sheet),!wb.SheetNames[idx]))throw new Error("Sheet not found: "+o.sheet+" : "+typeof o.sheet);switch(o.bookType||"xlsb"){case"xml":case"xlml":return write_string_type(write_xlml(wb,o),o);case"slk":case"sylk":return write_string_type(SYLK.from_sheet(wb.Sheets[wb.SheetNames[idx]],o,wb),o);case"htm":case"html":return write_string_type(sheet_to_html(wb.Sheets[wb.SheetNames[idx]],o),o);case"txt":return write_stxt_type(sheet_to_txt(wb.Sheets[wb.SheetNames[idx]],o),o);case"csv":return write_string_type(sheet_to_csv(wb.Sheets[wb.SheetNames[idx]],o),o,"\uFEFF");case"dif":return write_string_type(DIF.from_sheet(wb.Sheets[wb.SheetNames[idx]],o),o);case"dbf":return write_binary_type(DBF.from_sheet(wb.Sheets[wb.SheetNames[idx]],o),o);case"prn":return write_string_type(PRN.from_sheet(wb.Sheets[wb.SheetNames[idx]],o),o);case"rtf":return write_string_type(sheet_to_rtf(wb.Sheets[wb.SheetNames[idx]],o),o);case"eth":return write_string_type(ETH.from_sheet(wb.Sheets[wb.SheetNames[idx]],o),o);case"fods":return write_string_type(write_ods(wb,o),o);case"wk1":return write_binary_type(WK_.sheet_to_wk1(wb.Sheets[wb.SheetNames[idx]],o),o);case"wk3":return write_binary_type(WK_.book_to_wk3(wb,o),o);case"biff2":o.biff||(o.biff=2);case"biff3":o.biff||(o.biff=3);case"biff4":return o.biff||(o.biff=4),write_binary_type(write_biff_buf(wb,o),o);case"biff5":o.biff||(o.biff=5);case"biff8":case"xla":case"xls":return o.biff||(o.biff=8),write_cfb_type(wb,o);case"xlsx":case"xlsm":case"xlam":case"xlsb":case"numbers":case"ods":return write_zip_type(wb,o);default:throw new Error("Unrecognized bookType |"+o.bookType+"|")}}function resolve_book_type(o){if(!o.bookType){var _BT={xls:"biff8",htm:"html",slk:"sylk",socialcalc:"eth",Sh33tJS:"WTF"},ext=o.file.slice(o.file.lastIndexOf(".")).toLowerCase();ext.match(/^\.[a-z]+$/)&&(o.bookType=ext.slice(1)),o.bookType=_BT[o.bookType]||o.bookType}}function writeFileSync(wb,filename,opts){var o=opts||{};return o.type="file",o.file=filename,resolve_book_type(o),writeSync(wb,o)}function writeFileSyncXLSX(wb,filename,opts){var o=opts||{};return o.type="file",o.file=filename,resolve_book_type(o),writeSyncXLSX(wb,o)}function writeFileAsync(filename,wb,opts,cb){var o=opts||{};o.type="file",o.file=filename,resolve_book_type(o),o.type="buffer";var _cb=cb;return _cb instanceof Function||(_cb=opts),_fs.writeFile(filename,writeSync(wb,o),_cb)}function make_json_row(sheet,r,R,cols,header,hdr,o){var rr=encode_row(R),defval=o.defval,raw=o.raw||!Object.prototype.hasOwnProperty.call(o,"raw"),isempty=!0,dense=sheet["!data"]!=null,row=header===1?[]:{};if(header!==1)if(Object.defineProperty)try{Object.defineProperty(row,"__rowNum__",{value:R,enumerable:!1})}catch{row.__rowNum__=R}else row.__rowNum__=R;if(!dense||sheet["!data"][R])for(var C=r.s.c;C<=r.e.c;++C){var val2=dense?(sheet["!data"][R]||[])[C]:sheet[cols[C]+rr];if(val2==null||val2.t===void 0){if(defval===void 0)continue;hdr[C]!=null&&(row[hdr[C]]=defval);continue}var v=val2.v;switch(val2.t){case"z":if(v==null)break;continue;case"e":v=v==0?null:void 0;break;case"s":case"b":case"n":if(!val2.z||!fmt_is_date(val2.z)||(v=numdate(v),typeof v=="number"))break;case"d":o&&(o.UTC||o.raw===!1)||(v=utc_to_local(new Date(v)));break;default:throw new Error("unrecognized type "+val2.t)}if(hdr[C]!=null){if(v==null)if(val2.t=="e"&&v===null)row[hdr[C]]=null;else if(defval!==void 0)row[hdr[C]]=defval;else if(raw&&v===null)row[hdr[C]]=null;else continue;else row[hdr[C]]=(val2.t==="n"&&typeof o.rawNumbers=="boolean"?o.rawNumbers:raw)?v:format_cell(val2,v,o);v!=null&&(isempty=!1)}}return{row,isempty}}function sheet_to_json(sheet,opts){if(sheet==null||sheet["!ref"]==null)return[];var val2={t:"n",v:0},header=0,offset=1,hdr=[],v=0,vv="",r={s:{r:0,c:0},e:{r:0,c:0}},o=opts||{},range=o.range!=null?o.range:sheet["!ref"];switch(o.header===1?header=1:o.header==="A"?header=2:Array.isArray(o.header)?header=3:o.header==null&&(header=0),typeof range){case"string":r=safe_decode_range(range);break;case"number":r=safe_decode_range(sheet["!ref"]),r.s.r=range;break;default:r=range}header>0&&(offset=0);var rr=encode_row(r.s.r),cols=[],out=[],outi=0,counter=0,dense=sheet["!data"]!=null,R=r.s.r,C=0,header_cnt={};dense&&!sheet["!data"][R]&&(sheet["!data"][R]=[]);var colinfo=o.skipHidden&&sheet["!cols"]||[],rowinfo=o.skipHidden&&sheet["!rows"]||[];for(C=r.s.c;C<=r.e.c;++C)if(!(colinfo[C]||{}).hidden)switch(cols[C]=encode_col(C),val2=dense?sheet["!data"][R][C]:sheet[cols[C]+rr],header){case 1:hdr[C]=C-r.s.c;break;case 2:hdr[C]=cols[C];break;case 3:hdr[C]=o.header[C-r.s.c];break;default:if(val2==null&&(val2={w:"__EMPTY",t:"s"}),vv=v=format_cell(val2,null,o),counter=header_cnt[v]||0,!counter)header_cnt[v]=1;else{do vv=v+"_"+counter++;while(header_cnt[vv]);header_cnt[v]=counter,header_cnt[vv]=1}hdr[C]=vv}for(R=r.s.r+offset;R<=r.e.r;++R)if(!(rowinfo[R]||{}).hidden){var row=make_json_row(sheet,r,R,cols,header,hdr,o);(row.isempty===!1||(header===1?o.blankrows!==!1:o.blankrows))&&(out[outi++]=row.row)}return out.length=outi,out}function make_csv_row(sheet,r,R,cols,fs,rs,FS,w,o){for(var isempty=!0,row=[],txt="",rr=encode_row(R),dense=sheet["!data"]!=null,datarow=dense&&sheet["!data"][R]||[],C=r.s.c;C<=r.e.c;++C)if(cols[C]){var val2=dense?datarow[C]:sheet[cols[C]+rr];if(val2==null)txt="";else if(val2.v!=null){isempty=!1,txt=""+(o.rawNumbers&&val2.t=="n"?val2.v:format_cell(val2,null,o));for(var i=0,cc=0;i!==txt.length;++i)if((cc=txt.charCodeAt(i))===fs||cc===rs||cc===34||o.forceQuotes){txt='"'+txt.replace(qreg,'""')+'"';break}txt=="ID"&&w==0&&row.length==0&&(txt='"ID"')}else val2.f!=null&&!val2.F?(isempty=!1,txt="="+val2.f,txt.indexOf(",")>=0&&(txt='"'+txt.replace(qreg,'""')+'"')):txt="";row.push(txt)}if(o.strip)for(;row[row.length-1]==="";)--row.length;return o.blankrows===!1&&isempty?null:row.join(FS)}function sheet_to_csv(sheet,opts){var out=[],o=opts??{};if(sheet==null||sheet["!ref"]==null)return"";for(var r=safe_decode_range(sheet["!ref"]),FS=o.FS!==void 0?o.FS:",",fs=FS.charCodeAt(0),RS=o.RS!==void 0?o.RS:`
|
|
48
|
-
`,rs=RS.charCodeAt(0),row="",cols=[],colinfo=o.skipHidden&&sheet["!cols"]||[],rowinfo=o.skipHidden&&sheet["!rows"]||[],C=r.s.c;C<=r.e.c;++C)(colinfo[C]||{}).hidden||(cols[C]=encode_col(C));for(var w=0,R=r.s.r;R<=r.e.r;++R)(rowinfo[R]||{}).hidden||(row=make_csv_row(sheet,r,R,cols,fs,rs,FS,w,o),row!=null&&(row||o.blankrows!==!1)&&out.push((w++?RS:"")+row));return out.join("")}function sheet_to_txt(sheet,opts){opts||(opts={}),opts.FS=" ",opts.RS=`
|
|
49
|
-
`;var s=sheet_to_csv(sheet,opts);if(typeof $cptable>"u"||opts.type=="string")return s;var o=$cptable.utils.encode(1200,s,"str");return"\xFF\xFE"+o}function sheet_to_formulae(sheet,opts){var y="",x,val2="";if(sheet==null||sheet["!ref"]==null)return[];var r=safe_decode_range(sheet["!ref"]),rr="",cols=[],C,cmds=[],dense=sheet["!data"]!=null;for(C=r.s.c;C<=r.e.c;++C)cols[C]=encode_col(C);for(var R=r.s.r;R<=r.e.r;++R)for(rr=encode_row(R),C=r.s.c;C<=r.e.c;++C)if(y=cols[C]+rr,x=dense?(sheet["!data"][R]||[])[C]:sheet[y],val2="",x!==void 0){if(x.F!=null){if(y=x.F,!x.f)continue;val2=x.f,y.indexOf(":")==-1&&(y=y+":"+y)}if(x.f!=null)val2=x.f;else{if(opts&&opts.values===!1)continue;if(x.t=="z")continue;if(x.t=="n"&&x.v!=null)val2=""+x.v;else if(x.t=="b")val2=x.v?"TRUE":"FALSE";else if(x.w!==void 0)val2="'"+x.w;else{if(x.v===void 0)continue;x.t=="s"?val2="'"+x.v:val2=""+x.v}}cmds[cmds.length]=y+"="+val2}return cmds}function sheet_add_json(_ws,js,opts){var o=opts||{},dense=_ws?_ws["!data"]!=null:o.dense;DENSE!=null&&dense==null&&(dense=DENSE);var offset=+!o.skipHeader,ws=_ws||{};!_ws&&dense&&(ws["!data"]=[]);var _R=0,_C=0;if(ws&&o.origin!=null)if(typeof o.origin=="number")_R=o.origin;else{var _origin=typeof o.origin=="string"?decode_cell(o.origin):o.origin;_R=_origin.r,_C=_origin.c}var range={s:{c:0,r:0},e:{c:_C,r:_R+js.length-1+offset}};if(ws["!ref"]){var _range=safe_decode_range(ws["!ref"]);range.e.c=Math.max(range.e.c,_range.e.c),range.e.r=Math.max(range.e.r,_range.e.r),_R==-1&&(_R=_range.e.r+1,range.e.r=_R+js.length-1+offset)}else _R==-1&&(_R=0,range.e.r=js.length-1+offset);var hdr=o.header||[],C=0,ROW=[];js.forEach(function(JS,R){dense&&!ws["!data"][_R+R+offset]&&(ws["!data"][_R+R+offset]=[]),dense&&(ROW=ws["!data"][_R+R+offset]),keys(JS).forEach(function(k){(C=hdr.indexOf(k))==-1&&(hdr[C=hdr.length]=k);var v=JS[k],t="z",z="",ref=dense?"":encode_col(_C+C)+encode_row(_R+R+offset),cell2=dense?ROW[_C+C]:ws[ref];v&&typeof v=="object"&&!(v instanceof Date)?dense?ROW[_C+C]=v:ws[ref]=v:(typeof v=="number"?t="n":typeof v=="boolean"?t="b":typeof v=="string"?t="s":v instanceof Date?(t="d",o.UTC||(v=local_to_utc(v)),o.cellDates||(t="n",v=datenum(v)),z=cell2!=null&&cell2.z&&fmt_is_date(cell2.z)?cell2.z:o.dateNF||table_fmt[14]):v===null&&o.nullError&&(t="e",v=0),cell2?(cell2.t=t,cell2.v=v,delete cell2.w,delete cell2.R,z&&(cell2.z=z)):dense?ROW[_C+C]=cell2={t,v}:ws[ref]=cell2={t,v},z&&(cell2.z=z))})}),range.e.c=Math.max(range.e.c,_C+hdr.length-1);var __R=encode_row(_R);if(dense&&!ws["!data"][_R]&&(ws["!data"][_R]=[]),offset)for(C=0;C<hdr.length;++C)dense?ws["!data"][_R][C+_C]={t:"s",v:hdr[C]}:ws[encode_col(C+_C)+__R]={t:"s",v:hdr[C]};return ws["!ref"]=encode_range(range),ws}function json_to_sheet(js,opts){return sheet_add_json(null,js,opts)}function ws_get_cell_stub(ws,R,C){if(typeof R=="string"){if(ws["!data"]!=null){var RC=decode_cell(R);return ws["!data"][RC.r]||(ws["!data"][RC.r]=[]),ws["!data"][RC.r][RC.c]||(ws["!data"][RC.r][RC.c]={t:"z"})}return ws[R]||(ws[R]={t:"z"})}return typeof R!="number"?ws_get_cell_stub(ws,encode_cell(R)):ws_get_cell_stub(ws,encode_col(C||0)+encode_row(R))}function wb_sheet_idx(wb,sh){if(typeof sh=="number"){if(sh>=0&&wb.SheetNames.length>sh)return sh;throw new Error("Cannot find sheet # "+sh)}else if(typeof sh=="string"){var idx=wb.SheetNames.indexOf(sh);if(idx>-1)return idx;throw new Error("Cannot find sheet name |"+sh+"|")}else throw new Error("Cannot find sheet |"+sh+"|")}function book_new(ws,wsname){var wb={SheetNames:[],Sheets:{}};return ws&&book_append_sheet(wb,ws,wsname||"Sheet1"),wb}function book_append_sheet(wb,ws,name,roll){var i=1;if(!name)for(;i<=65535&&wb.SheetNames.indexOf(name="Sheet"+i)!=-1;++i,name=void 0);if(!name||wb.SheetNames.length>=65535)throw new Error("Too many worksheets");if(roll&&wb.SheetNames.indexOf(name)>=0&&name.length<32){var m=name.match(/\d+$/);i=m&&+m[0]||0;var root=m&&name.slice(0,m.index)||name;for(++i;i<=65535&&wb.SheetNames.indexOf(name=root+i)!=-1;++i);}if(check_ws_name(name),wb.SheetNames.indexOf(name)>=0)throw new Error("Worksheet with name |"+name+"| already exists!");return wb.SheetNames.push(name),wb.Sheets[name]=ws,name}function book_set_sheet_visibility(wb,sh,vis){wb.Workbook||(wb.Workbook={}),wb.Workbook.Sheets||(wb.Workbook.Sheets=[]);var idx=wb_sheet_idx(wb,sh);switch(wb.Workbook.Sheets[idx]||(wb.Workbook.Sheets[idx]={}),vis){case 0:case 1:case 2:break;default:throw new Error("Bad sheet visibility setting "+vis)}wb.Workbook.Sheets[idx].Hidden=vis}function cell_set_number_format(cell2,fmt){return cell2.z=fmt,cell2}function cell_set_hyperlink(cell2,target,tooltip){return target?(cell2.l={Target:target},tooltip&&(cell2.l.Tooltip=tooltip)):delete cell2.l,cell2}function cell_set_internal_link(cell2,range,tooltip){return cell_set_hyperlink(cell2,"#"+range,tooltip)}function cell_add_comment(cell2,text,author){cell2.c||(cell2.c=[]),cell2.c.push({t:text,a:author||"SheetJS"})}function sheet_set_array_formula(ws,range,formula,dynamic){for(var rng=typeof range!="string"?range:safe_decode_range(range),rngstr=typeof range=="string"?range:encode_range(range),R=rng.s.r;R<=rng.e.r;++R)for(var C=rng.s.c;C<=rng.e.c;++C){var cell2=ws_get_cell_stub(ws,R,C);cell2.t="n",cell2.F=rngstr,delete cell2.v,R==rng.s.r&&C==rng.s.c&&(cell2.f=formula,dynamic&&(cell2.D=!0))}var wsr=decode_range(ws["!ref"]);return wsr.s.r>rng.s.r&&(wsr.s.r=rng.s.r),wsr.s.c>rng.s.c&&(wsr.s.c=rng.s.c),wsr.e.r<rng.e.r&&(wsr.e.r=rng.e.r),wsr.e.c<rng.e.c&&(wsr.e.c=rng.e.c),ws["!ref"]=encode_range(wsr),ws}function set_readable(R){_Readable=R}function write_csv_stream(sheet,opts){var stream=_Readable(),o=opts??{};if(sheet==null||sheet["!ref"]==null)return stream.push(null),stream;for(var r=safe_decode_range(sheet["!ref"]),FS=o.FS!==void 0?o.FS:",",fs=FS.charCodeAt(0),RS=o.RS!==void 0?o.RS:`
|
|
50
|
-
`,rs=RS.charCodeAt(0),row="",cols=[],colinfo=o.skipHidden&&sheet["!cols"]||[],rowinfo=o.skipHidden&&sheet["!rows"]||[],C=r.s.c;C<=r.e.c;++C)(colinfo[C]||{}).hidden||(cols[C]=encode_col(C));var R=r.s.r,BOM=!1,w=0;return stream._read=function(){if(!BOM)return BOM=!0,stream.push("\uFEFF");for(;R<=r.e.r;)if(++R,!(rowinfo[R-1]||{}).hidden&&(row=make_csv_row(sheet,r,R-1,cols,fs,rs,FS,w,o),row!=null&&(row||o.blankrows!==!1)))return stream.push((w++?RS:"")+row);return stream.push(null)},stream}function write_html_stream(ws,opts){var stream=_Readable(),o=opts||{},header=o.header!=null?o.header:HTML_BEGIN,footer=o.footer!=null?o.footer:HTML_END;stream.push(header);var r=decode_range(ws["!ref"]);stream.push(make_html_preamble(ws,r,o));var R=r.s.r,end=!1;return stream._read=function(){if(R>r.e.r)return end||(end=!0,stream.push("</table>"+footer)),stream.push(null);for(;R<=r.e.r;){stream.push(make_html_row(ws,r,R,o)),++R;break}},stream}function write_json_stream(sheet,opts){var stream=_Readable({objectMode:!0});if(sheet==null||sheet["!ref"]==null)return stream.push(null),stream;var val2={t:"n",v:0},header=0,offset=1,hdr=[],v=0,vv="",r={s:{r:0,c:0},e:{r:0,c:0}},o=opts||{},range=o.range!=null?o.range:sheet["!ref"];switch(o.header===1?header=1:o.header==="A"?header=2:Array.isArray(o.header)&&(header=3),typeof range){case"string":r=safe_decode_range(range);break;case"number":r=safe_decode_range(sheet["!ref"]),r.s.r=range;break;default:r=range}header>0&&(offset=0);var rr=encode_row(r.s.r),cols=[],counter=0,dense=sheet["!data"]!=null,R=r.s.r,C=0,header_cnt={};dense&&!sheet["!data"][R]&&(sheet["!data"][R]=[]);var colinfo=o.skipHidden&&sheet["!cols"]||[],rowinfo=o.skipHidden&&sheet["!rows"]||[];for(C=r.s.c;C<=r.e.c;++C)if(!(colinfo[C]||{}).hidden)switch(cols[C]=encode_col(C),val2=dense?sheet["!data"][R][C]:sheet[cols[C]+rr],header){case 1:hdr[C]=C-r.s.c;break;case 2:hdr[C]=cols[C];break;case 3:hdr[C]=o.header[C-r.s.c];break;default:if(val2==null&&(val2={w:"__EMPTY",t:"s"}),vv=v=format_cell(val2,null,o),counter=header_cnt[v]||0,!counter)header_cnt[v]=1;else{do vv=v+"_"+counter++;while(header_cnt[vv]);header_cnt[v]=counter,header_cnt[vv]=1}hdr[C]=vv}return R=r.s.r+offset,stream._read=function(){for(;R<=r.e.r;)if(!(rowinfo[R-1]||{}).hidden){var row=make_json_row(sheet,r,R,cols,header,hdr,o);if(++R,row.isempty===!1||(header===1?o.blankrows!==!1:o.blankrows)){stream.push(row.row);return}}return stream.push(null)},stream}function write_xlml_stream(wb,o){var stream=_Readable(),opts=o??{},stride=+opts.stride||10;wb.SSF||(wb.SSF=dup(table_fmt)),wb.SSF&&(make_ssf(),SSF_load_table(wb.SSF),opts.revssf=evert_num(wb.SSF),opts.revssf[wb.SSF[65535]]=0,opts.ssf=wb.SSF,opts.cellXfs=[],get_cell_style(opts.cellXfs,{},{revssf:{General:0}})),wb.SheetNames.forEach(function(n){var ws2=wb.Sheets[n];if(!(!ws2||!ws2["!ref"])){for(var range2=decode_range(ws2["!ref"]),dense2=ws2["!data"]!=null,ddata=dense2?ws2["!data"]:[],addr2={r:0,c:0},R2=range2.s.r;R2<=range2.e.r;++R2)if(addr2.r=R2,!(dense2&&!ddata[R2]))for(var C=range2.s.c;C<=range2.e.c;++C){addr2.c=C;var cell2=dense2?ddata[R2][C]:ws2[encode_col(C)+encode_row(R2)];cell2&&(cell2.t=="d"&&cell2.z==null&&(cell2=dup(cell2),cell2.z=table_fmt[14]),get_cell_style(opts.cellXfs,cell2,opts))}}});var sty=write_sty_xlml(wb,opts),stage=0,wsidx=0,ws=wb.Sheets[wb.SheetNames[wsidx]],range=safe_decode_range(ws),R=-1,T=!1,marr=[],mi=0,dense=!1,darr=[],addr={r:0,c:0};return stream._read=function(){switch(stage){case 0:stage=1,stream.push(XML_HEADER),stream.push("<Workbook"+wxt_helper({xmlns:XLMLNS.ss,"xmlns:o":XLMLNS.o,"xmlns:x":XLMLNS.x,"xmlns:ss":XLMLNS.ss,"xmlns:dt":XLMLNS.dt,"xmlns:html":XLMLNS.html})+">");break;case 1:stage=2,stream.push(write_props_xlml(wb,opts)),stream.push(write_wb_xlml(wb,opts));break;case 2:stage=3,stream.push(sty),stream.push(write_names_xlml(wb,opts));break;case 3:{if(T=!1,wsidx>=wb.SheetNames.length){stage=-1,stream.push("");break}if(stream.push("<Worksheet"+wxt_helper({"ss:Name":escapexml(wb.SheetNames[wsidx])})+">"),ws=wb.Sheets[wb.SheetNames[wsidx]],!ws)return stream.push("</Worksheet>"),void++wsidx;var names=write_ws_xlml_names(ws,opts,wsidx,wb);if(names.length&&stream.push("<Names>"+names+"</Names>"),!ws["!ref"])return stage=5;range=safe_decode_range(ws["!ref"]),R=range.s.r,stage=4}break;case 4:{if(R<0||R>range.e.r)return T&&stream.push("</Table>"),void(stage=5);R<=range.s.r&&(ws["!cols"]&&ws["!cols"].forEach(function(n,i){process_col(n);var w=!!n.width,p=col_obj_w(i,n),k={"ss:Index":i+1};w&&(k["ss:Width"]=width2px(p.width)),n.hidden&&(k["ss:Hidden"]="1"),T||(T=!0,stream.push("<Table>")),stream.push(writextag("Column",null,k))}),dense=ws["!data"]!=null,dense&&(darr=ws["!data"]),addr.r=addr.c=0);for(var cnt=0;R<=range.e.r&&cnt<stride;++R,++cnt){var row=[write_ws_xlml_row(R,(ws["!rows"]||[])[R])];if(addr.r=R,!(dense&&!darr[R]))for(var C=range.s.c;C<=range.e.c;++C){addr.c=C;var skip=!1;for(mi=0;mi!=marr.length;++mi)if(!(marr[mi].s.c>C)&&!(marr[mi].s.r>R)&&!(marr[mi].e.c<C)&&!(marr[mi].e.r<R)){(marr[mi].s.c!=C||marr[mi].s.r!=R)&&(skip=!0);break}if(!skip){var ref=encode_col(C)+encode_row(R),cell2=dense?darr[R][C]:ws[ref];row.push(write_ws_xlml_cell(cell2,ref,ws,opts,wsidx,wb,addr))}}row.push("</Row>"),T||(T=!0,stream.push("<Table>")),stream.push(row.join(""))}}break;case 5:return stream.push(write_ws_xlml_wsopts(ws,opts,wsidx,wb)),ws&&ws["!autofilter"]&&stream.push('<AutoFilter x:Range="'+a1_to_rc(fix_range(ws["!autofilter"].ref),{r:0,c:0})+'" xmlns="urn:schemas-microsoft-com:office:excel"></AutoFilter>'),stream.push("</Worksheet>"),wsidx++,R=-1,void(stage=3);case-1:stage=-2,stream.push("</Workbook>");break;case-2:stream.push(null);break}},stream}var XLSX,current_codepage,current_ansi,$cptable,VALID_ANSI,CS2CP,set_ansi,set_cp,debom,_getchar,_getansi,DENSE,DIF_XL,Base64_map,has_buf,Buffer_from,buf_utf16le,s2a,bconcat,chr0,chr1,p2_32,days,months,table_fmt,SSF_default_map,SSF_default_str,pct1,frac1,dec1,closeparen,phone,SSF_abstime,cfregex2,SSF,SSFImplicit,dateNFregex,bad_formats,CRC32,CFB,_fs,dnthresh,dnthresh1,dnthresh2,pdre1,pdre2,pdre3,FDRE1,FDRE2,FDISO,utc_append_works,lower_months,split_regex,xml_boundary,str_match_xml_ns,str_match_xml_ns_g,str_remove_xml_ns_g,str_match_xml_ig,XML_HEADER,attregexg,tagregex1,tagregex2,tagregex,nsregex,nsregex2,encodings,rencoding,unescapexml,decregex,charegex,htmlcharegex,xlml_fixstr,utf8corpus,utf8read,utf8write,htmldecode,vtvregex,vtmregex,wtregex,xlmlregex,XMLNS,XMLNS_main,XLMLNS,___toBuffer,__toBuffer,___utf16le,__utf16le,___hexlify,__hexlify,___utf8,__utf8,___lpstr,__lpstr,___cpstr,__cpstr,___lpwstr,__lpwstr,___lpp4,__lpp4,___8lpp4,__8lpp4,___double,__double,is_buf,__readUInt8,__readUInt16LE,__readInt16LE,__readUInt32LE,__readInt32LE,__readInt32BE,__writeUInt32LE,__writeInt32LE,__writeUInt16LE,parse_BrtCommentText,parse_XLSBCodeName,write_XLSBCodeName,parse_XLNameWideString,parse_RelID,write_RelID,parse_UncheckedRfX,write_UncheckedRfX,VT_I2,VT_I4,VT_BOOL,VT_VARIANT,VT_UI4,VT_FILETIME,VT_BLOB,VT_CF,VT_VECTOR_VARIANT,VT_VECTOR_LPSTR,VT_STRING,VT_USTR,VT_CUSTOM,DocSummaryPIDDSI,SummaryPIDSI,CountryEnum,XLSFillPattern,_XLSIcv,XLSIcv,BErr,RBErr,XLSLblBuiltIn,ct2type,CT_LIST,RELS,CT_ODS,CORE_PROPS,EXT_PROPS,PseudoPropsPairs,custregex,XLMLDocPropsMap,evert_XLMLDPM,XLSPSSkip,parse_Ref,FtTab,parse_BIFF2Format,write_BIFF4XF,parse_XLHeaderFooter,parse_BIFF5OT,parse_Blank,parse_Scl,parse_String,DBF_SUPPORTED_VERSIONS,DBF,SYLK,DIF,ETH,PRN,WK_,parse_rs,rs_to_html,sitregex,sirregex,sstr1,sstr2,straywsregex,write_BrtSSTItem,crypto_CreateXorArray_Method1,crypto_DecryptData_Method1,crypto_MakeXorDecryptor,DEF_MDW,MAX_MDW,MIN_MDW,MDW,DEF_PPI,PPI,XLMLPatternTypeMap,cellXF_uint,cellXF_bool,parse_sty_xml,XLSBFillPTNames,rev_XLSBFillPTNames,parse_BrtFill,parse_BrtBorder,XLSXThemeClrScheme,parse_BrtCommentAuthor,CT_VBA,VBAFMTS,rc_to_a1,crefregex,a1_to_rc,parse_PtgMemErr,parse_PtgMemNoMem,parse_PtgTbl,parse_PtgElfCol,parse_PtgElfColS,parse_PtgElfColSV,parse_PtgElfColV,parse_PtgElfRadical,parse_PtgElfRadicalLel,parse_PtgElfRadicalS,parse_PtgElfRw,parse_PtgElfRwV,PtgListRT,PtgTypes,PtgDupes,Ptg18,Ptg19,PtgBinOp,parse_XLSBArrayParsedFormula,parse_XLSBCellParsedFormula,parse_XLSBNameParsedFormula,parse_XLSBSharedParsedFormula,write_XLSBNameParsedFormula,Cetab,Ftab,FtabArgc,strs,_ssfopts,browser_has_Map,mergecregex,hlinkregex,dimregex,colregex,afregex,marginregex,sheetprregex,sheetprot_deffalse,sheetprot_deftrue,sviewregex,parse_ws_xml_data,parse_BrtWsDim,write_BrtWsDim,parse_BrtMergeCell,write_BrtMergeCell,BrtMarginKeys,WBPropsDef,WBViewDef,SheetDef,CalcPrDef,badchars,wbnsregex,attregexg2,attregex2,XLMLFormatMap,CONTINUE_RT,PSCLSID,XLSBRecordEnum,XLSRecordEnum,b8oid,b8ocnts,HTML_BEGIN,HTML_END,write_styles_ods,write_content_ods,subarray,numbers_lut_new,USE_WIDE_ROWS,qreg,utils,_Readable,__stream,version,xlsx_default,init_xlsx=__esm({"../../node_modules/.pnpm/xlsx@https+++cdn.sheetjs.com+xlsx-0.20.3+xlsx-0.20.3.tgz/node_modules/xlsx/xlsx.mjs"(){"use strict";XLSX={};XLSX.version="0.20.3";current_codepage=1200,current_ansi=1252,VALID_ANSI=[874,932,936,949,950,1250,1251,1252,1253,1254,1255,1256,1257,1258,1e4],CS2CP={0:1252,1:65001,2:65001,77:1e4,128:932,129:949,130:1361,134:936,136:950,161:1253,162:1254,163:1258,177:1255,178:1256,186:1257,204:1251,222:874,238:1250,255:1252,69:6969},set_ansi=function(cp){VALID_ANSI.indexOf(cp)!=-1&&(current_ansi=CS2CP[0]=cp)};set_cp=function(cp){current_codepage=cp,set_ansi(cp)};debom=function(data){var c1=data.charCodeAt(0),c2=data.charCodeAt(1);return c1==255&&c2==254?utf16leread(data.slice(2)):c1==254&&c2==255?utf16beread(data.slice(2)):c1==65279?data.slice(1):data},_getchar=function(x){return String.fromCharCode(x)},_getansi=function(x){return String.fromCharCode(x)};DENSE=null,DIF_XL=!0,Base64_map="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";has_buf=(function(){return typeof Buffer<"u"&&typeof process<"u"&&typeof process.versions<"u"&&!!process.versions.node})(),Buffer_from=(function(){if(typeof Buffer<"u"){var nbfs=!Buffer.from;if(!nbfs)try{Buffer.from("foo","utf8")}catch{nbfs=!0}return nbfs?function(buf,enc2){return enc2?new Buffer(buf,enc2):new Buffer(buf)}:Buffer.from.bind(Buffer)}return function(){}})(),buf_utf16le=(function(){if(typeof Buffer>"u")return!1;var x=Buffer_from([65,0]);if(!x)return!1;var o=x.toString("utf16le");return o.length==1})();s2a=function(s){return has_buf?Buffer_from(s,"binary"):s.split("").map(function(x){return x.charCodeAt(0)&255})};bconcat=has_buf?function(bufs){return Buffer.concat(bufs.map(function(buf){return Buffer.isBuffer(buf)?buf:Buffer_from(buf)}))}:function(bufs){if(typeof Uint8Array<"u"){var i=0,maxlen=0;for(i=0;i<bufs.length;++i)maxlen+=bufs[i].length;var o=new Uint8Array(maxlen),len=0;for(i=0,maxlen=0;i<bufs.length;maxlen+=len,++i)len=bufs[i].length,bufs[i]instanceof Uint8Array?o.set(bufs[i],maxlen):typeof bufs[i]=="string"?o.set(new Uint8Array(s2a(bufs[i])),maxlen):o.set(new Uint8Array(bufs[i]),maxlen);return o}return[].concat.apply([],bufs.map(function(buf){return Array.isArray(buf)?buf:[].slice.call(buf)}))};chr0=/\u0000/g,chr1=/[\u0001-\u0006]/g;p2_32=Math.pow(2,32);days=[["Sun","Sunday"],["Mon","Monday"],["Tue","Tuesday"],["Wed","Wednesday"],["Thu","Thursday"],["Fri","Friday"],["Sat","Saturday"]],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"]];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:'"\u4E0A\u5348/\u4E0B\u5348 "hh"\u6642"mm"\u5206"ss"\u79D2 "'},SSF_default_map={5:37,6:38,7:39,8:40,23:0,24:0,25:0,26:0,27:14,28:14,29:14,30:14,31:14,50:14,51:14,52:14,53:14,54:14,55:14,56:14,57:14,58:14,59:1,60:2,61:3,62:4,67:9,68:10,69:12,70:13,71:14,72:14,73:15,74:16,75:17,76:20,77:21,78:22,79:45,80:46,81:47,82:0},SSF_default_str={5:'"$"#,##0_);\\("$"#,##0\\)',63:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',41:'_(* #,##0_);_(* \\(#,##0\\);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* \\(#,##0\\);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* \\(#,##0.00\\);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* \\(#,##0.00\\);_("$"* "-"??_);_(@_)'};pct1=/%/g;frac1=/# (\?+)( ?)\/( ?)(\d+)/;dec1=/^#*0*\.([0#]+)/,closeparen=/\)[^)]*[0#]/,phone=/\(###\) ###\\?-####/;SSF_abstime=/\[[HhMmSs\u0E0A\u0E19\u0E17]*\]/;cfregex2=/\[(=|>[=]?|<[>=]?)(-?\d+(?:\.\d*)?)\]/;SSF={format:SSF_format,load:SSF_load,_table:table_fmt,load_table:SSF_load_table,parse_date_code:SSF_parse_date_code,is_date:fmt_is_date,get_table:function(){return SSF._table=table_fmt}},SSFImplicit={5:'"$"#,##0_);\\("$"#,##0\\)',6:'"$"#,##0_);[Red]\\("$"#,##0\\)',7:'"$"#,##0.00_);\\("$"#,##0.00\\)',8:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',23:"General",24:"General",25:"General",26:"General",27:"m/d/yy",28:"m/d/yy",29:"m/d/yy",30:"m/d/yy",31:"m/d/yy",32:"h:mm:ss",33:"h:mm:ss",34:"h:mm:ss",35:"h:mm:ss",36:"m/d/yy",41:'_(* #,##0_);_(* (#,##0);_(* "-"_);_(@_)',42:'_("$"* #,##0_);_("$"* (#,##0);_("$"* "-"_);_(@_)',43:'_(* #,##0.00_);_(* (#,##0.00);_(* "-"??_);_(@_)',44:'_("$"* #,##0.00_);_("$"* (#,##0.00);_("$"* "-"??_);_(@_)',50:"m/d/yy",51:"m/d/yy",52:"m/d/yy",53:"m/d/yy",54:"m/d/yy",55:"m/d/yy",56:"m/d/yy",57:"m/d/yy",58:"m/d/yy",59:"0",60:"0.00",61:"#,##0",62:"#,##0.00",63:'"$"#,##0_);\\("$"#,##0\\)',64:'"$"#,##0_);[Red]\\("$"#,##0\\)',65:'"$"#,##0.00_);\\("$"#,##0.00\\)',66:'"$"#,##0.00_);[Red]\\("$"#,##0.00\\)',67:"0%",68:"0.00%",69:"# ?/?",70:"# ??/??",71:"m/d/yy",72:"m/d/yy",73:"d-mmm-yy",74:"d-mmm",75:"mmm-yy",76:"h:mm",77:"h:mm:ss",78:"m/d/yy h:mm",79:"mm:ss",80:"[h]:mm:ss",81:"mmss.0"},dateNFregex=/[dD]+|[mM]+|[yYeE]+|[Hh]+|[Ss]+/g;bad_formats={"d.m":"d\\.m"};CRC32=(function(){var CRC322={};CRC322.version="1.2.0";function signed_crc_table(){for(var c=0,table=new Array(256),n=0;n!=256;++n)c=n,c=c&1?-306674912^c>>>1:c>>>1,c=c&1?-306674912^c>>>1:c>>>1,c=c&1?-306674912^c>>>1:c>>>1,c=c&1?-306674912^c>>>1:c>>>1,c=c&1?-306674912^c>>>1:c>>>1,c=c&1?-306674912^c>>>1:c>>>1,c=c&1?-306674912^c>>>1:c>>>1,c=c&1?-306674912^c>>>1:c>>>1,table[n]=c;return typeof Int32Array<"u"?new Int32Array(table):table}var T0=signed_crc_table();function slice_by_16_tables(T){var c=0,v=0,n=0,table=typeof Int32Array<"u"?new Int32Array(4096):new Array(4096);for(n=0;n!=256;++n)table[n]=T[n];for(n=0;n!=256;++n)for(v=T[n],c=256+n;c<4096;c+=256)v=table[c]=v>>>8^T[v&255];var out=[];for(n=1;n!=16;++n)out[n-1]=typeof Int32Array<"u"&&typeof table.subarray=="function"?table.subarray(n*256,n*256+256):table.slice(n*256,n*256+256);return out}var TT=slice_by_16_tables(T0),T1=TT[0],T2=TT[1],T3=TT[2],T4=TT[3],T5=TT[4],T6=TT[5],T7=TT[6],T8=TT[7],T9=TT[8],Ta=TT[9],Tb=TT[10],Tc=TT[11],Td=TT[12],Te=TT[13],Tf=TT[14];function crc32_bstr(bstr,seed){for(var C=seed^-1,i=0,L=bstr.length;i<L;)C=C>>>8^T0[(C^bstr.charCodeAt(i++))&255];return~C}function crc32_buf(B,seed){for(var C=seed^-1,L=B.length-15,i=0;i<L;)C=Tf[B[i++]^C&255]^Te[B[i++]^C>>8&255]^Td[B[i++]^C>>16&255]^Tc[B[i++]^C>>>24]^Tb[B[i++]]^Ta[B[i++]]^T9[B[i++]]^T8[B[i++]]^T7[B[i++]]^T6[B[i++]]^T5[B[i++]]^T4[B[i++]]^T3[B[i++]]^T2[B[i++]]^T1[B[i++]]^T0[B[i++]];for(L+=15;i<L;)C=C>>>8^T0[(C^B[i++])&255];return~C}function crc32_str(str,seed){for(var C=seed^-1,i=0,L=str.length,c=0,d=0;i<L;)c=str.charCodeAt(i++),c<128?C=C>>>8^T0[(C^c)&255]:c<2048?(C=C>>>8^T0[(C^(192|c>>6&31))&255],C=C>>>8^T0[(C^(128|c&63))&255]):c>=55296&&c<57344?(c=(c&1023)+64,d=str.charCodeAt(i++)&1023,C=C>>>8^T0[(C^(240|c>>8&7))&255],C=C>>>8^T0[(C^(128|c>>2&63))&255],C=C>>>8^T0[(C^(128|d>>6&15|(c&3)<<4))&255],C=C>>>8^T0[(C^(128|d&63))&255]):(C=C>>>8^T0[(C^(224|c>>12&15))&255],C=C>>>8^T0[(C^(128|c>>6&63))&255],C=C>>>8^T0[(C^(128|c&63))&255]);return~C}return CRC322.table=T0,CRC322.bstr=crc32_bstr,CRC322.buf=crc32_buf,CRC322.str=crc32_str,CRC322})(),CFB=(function(){var exports={};exports.version="1.2.2";function namecmp(l,r){for(var L=l.split("/"),R=r.split("/"),i2=0,c=0,Z=Math.min(L.length,R.length);i2<Z;++i2){if(c=L[i2].length-R[i2].length)return c;if(L[i2]!=R[i2])return L[i2]<R[i2]?-1:1}return L.length-R.length}function dirname(p){if(p.charAt(p.length-1)=="/")return p.slice(0,-1).indexOf("/")===-1?p:dirname(p.slice(0,-1));var c=p.lastIndexOf("/");return c===-1?p:p.slice(0,c+1)}function filename(p){if(p.charAt(p.length-1)=="/")return filename(p.slice(0,-1));var c=p.lastIndexOf("/");return c===-1?p:p.slice(c+1)}function write_dos_date(buf,date){typeof date=="string"&&(date=new Date(date));var hms=date.getHours();hms=hms<<6|date.getMinutes(),hms=hms<<5|date.getSeconds()>>>1,buf.write_shift(2,hms);var ymd=date.getFullYear()-1980;ymd=ymd<<4|date.getMonth()+1,ymd=ymd<<5|date.getDate(),buf.write_shift(2,ymd)}function parse_dos_date(buf){var hms=buf.read_shift(2)&65535,ymd=buf.read_shift(2)&65535,val2=new Date,d=ymd&31;ymd>>>=5;var m=ymd&15;ymd>>>=4,val2.setMilliseconds(0),val2.setFullYear(ymd+1980),val2.setMonth(m-1),val2.setDate(d);var S=hms&31;hms>>>=5;var M=hms&63;return hms>>>=6,val2.setHours(hms),val2.setMinutes(M),val2.setSeconds(S<<1),val2}function parse_extra_field(blob){prep_blob(blob,0);for(var o={},flags=0;blob.l<=blob.length-4;){var type=blob.read_shift(2),sz=blob.read_shift(2),tgt=blob.l+sz,p={};switch(type){case 21589:flags=blob.read_shift(1),flags&1&&(p.mtime=blob.read_shift(4)),sz>5&&(flags&2&&(p.atime=blob.read_shift(4)),flags&4&&(p.ctime=blob.read_shift(4))),p.mtime&&(p.mt=new Date(p.mtime*1e3));break;case 1:{var sz1=blob.read_shift(4),sz2=blob.read_shift(4);p.usz=sz2*Math.pow(2,32)+sz1,sz1=blob.read_shift(4),sz2=blob.read_shift(4),p.csz=sz2*Math.pow(2,32)+sz1}break}blob.l=tgt,o[type]=p}return o}var fs;function get_fs(){return fs||(fs=_fs)}function parse(file,options){if(file[0]==80&&file[1]==75)return parse_zip2(file,options);if((file[0]|32)==109&&(file[1]|32)==105)return parse_mad(file,options);if(file.length<512)throw new Error("CFB file size "+file.length+" < 512");var mver=3,ssz=512,nmfs=0,difat_sec_cnt=0,dir_start=0,minifat_start=0,difat_start=0,fat_addrs=[],blob=file.slice(0,512);prep_blob(blob,0);var mv=check_get_mver(blob);switch(mver=mv[0],mver){case 3:ssz=512;break;case 4:ssz=4096;break;case 0:if(mv[1]==0)return parse_zip2(file,options);default:throw new Error("Major Version: Expected 3 or 4 saw "+mver)}ssz!==512&&(blob=file.slice(0,ssz),prep_blob(blob,28));var header=file.slice(0,ssz);check_shifts(blob,mver);var dir_cnt=blob.read_shift(4,"i");if(mver===3&&dir_cnt!==0)throw new Error("# Directory Sectors: Expected 0 saw "+dir_cnt);blob.l+=4,dir_start=blob.read_shift(4,"i"),blob.l+=4,blob.chk("00100000","Mini Stream Cutoff Size: "),minifat_start=blob.read_shift(4,"i"),nmfs=blob.read_shift(4,"i"),difat_start=blob.read_shift(4,"i"),difat_sec_cnt=blob.read_shift(4,"i");for(var q2=-1,j=0;j<109&&(q2=blob.read_shift(4,"i"),!(q2<0));++j)fat_addrs[j]=q2;var sectors=sectorify(file,ssz);sleuth_fat(difat_start,difat_sec_cnt,sectors,ssz,fat_addrs);var sector_list=make_sector_list(sectors,dir_start,fat_addrs,ssz);dir_start<sector_list.length&&(sector_list[dir_start].name="!Directory"),nmfs>0&&minifat_start!==ENDOFCHAIN&&(sector_list[minifat_start].name="!MiniFAT"),sector_list[fat_addrs[0]].name="!FAT",sector_list.fat_addrs=fat_addrs,sector_list.ssz=ssz;var files={},Paths=[],FileIndex=[],FullPaths=[];read_directory(dir_start,sector_list,sectors,Paths,nmfs,files,FileIndex,minifat_start),build_full_paths(FileIndex,FullPaths,Paths),Paths.shift();var o={FileIndex,FullPaths};return options&&options.raw&&(o.raw={header,sectors}),o}function check_get_mver(blob){if(blob[blob.l]==80&&blob[blob.l+1]==75)return[0,0];blob.chk(HEADER_SIGNATURE,"Header Signature: "),blob.l+=16;var mver=blob.read_shift(2,"u");return[blob.read_shift(2,"u"),mver]}function check_shifts(blob,mver){var shift=9;switch(blob.l+=2,shift=blob.read_shift(2)){case 9:if(mver!=3)throw new Error("Sector Shift: Expected 9 saw "+shift);break;case 12:if(mver!=4)throw new Error("Sector Shift: Expected 12 saw "+shift);break;default:throw new Error("Sector Shift: Expected 9 or 12 saw "+shift)}blob.chk("0600","Mini Sector Shift: "),blob.chk("000000000000","Reserved: ")}function sectorify(file,ssz){for(var nsectors=Math.ceil(file.length/ssz)-1,sectors=[],i2=1;i2<nsectors;++i2)sectors[i2-1]=file.slice(i2*ssz,(i2+1)*ssz);return sectors[nsectors-1]=file.slice(nsectors*ssz),sectors}function build_full_paths(FI,FP,Paths){for(var i2=0,L=0,R=0,C=0,j=0,pl=Paths.length,dad=[],q2=[];i2<pl;++i2)dad[i2]=q2[i2]=i2,FP[i2]=Paths[i2];for(;j<q2.length;++j)i2=q2[j],L=FI[i2].L,R=FI[i2].R,C=FI[i2].C,dad[i2]===i2&&(L!==-1&&dad[L]!==L&&(dad[i2]=dad[L]),R!==-1&&dad[R]!==R&&(dad[i2]=dad[R])),C!==-1&&(dad[C]=i2),L!==-1&&i2!=dad[i2]&&(dad[L]=dad[i2],q2.lastIndexOf(L)<j&&q2.push(L)),R!==-1&&i2!=dad[i2]&&(dad[R]=dad[i2],q2.lastIndexOf(R)<j&&q2.push(R));for(i2=1;i2<pl;++i2)dad[i2]===i2&&(R!==-1&&dad[R]!==R?dad[i2]=dad[R]:L!==-1&&dad[L]!==L&&(dad[i2]=dad[L]));for(i2=1;i2<pl;++i2)if(FI[i2].type!==0){if(j=i2,j!=dad[j])do j=dad[j],FP[i2]=FP[j]+"/"+FP[i2];while(j!==0&&dad[j]!==-1&&j!=dad[j]);dad[i2]=-1}for(FP[0]+="/",i2=1;i2<pl;++i2)FI[i2].type!==2&&(FP[i2]+="/")}function get_mfat_entry(entry,payload,mini){for(var start=entry.start,size=entry.size,o=[],idx=start;mini&&size>0&&idx>=0;)o.push(payload.slice(idx*MSSZ,idx*MSSZ+MSSZ)),size-=MSSZ,idx=__readInt32LE(mini,idx*4);return o.length===0?new_buf(0):bconcat(o).slice(0,entry.size)}function sleuth_fat(idx,cnt,sectors,ssz,fat_addrs){var q2=ENDOFCHAIN;if(idx===ENDOFCHAIN){if(cnt!==0)throw new Error("DIFAT chain shorter than expected")}else if(idx!==-1){var sector=sectors[idx],m=(ssz>>>2)-1;if(!sector)return;for(var i2=0;i2<m&&(q2=__readInt32LE(sector,i2*4))!==ENDOFCHAIN;++i2)fat_addrs.push(q2);cnt>=1&&sleuth_fat(__readInt32LE(sector,ssz-4),cnt-1,sectors,ssz,fat_addrs)}}function get_sector_list(sectors,start,fat_addrs,ssz,chkd){var buf=[],buf_chain=[];chkd||(chkd=[]);var modulus=ssz-1,j=0,jj=0;for(j=start;j>=0;){chkd[j]=!0,buf[buf.length]=j,buf_chain.push(sectors[j]);var addr=fat_addrs[Math.floor(j*4/ssz)];if(jj=j*4&modulus,ssz<4+jj)throw new Error("FAT boundary crossed: "+j+" 4 "+ssz);if(!sectors[addr])break;j=__readInt32LE(sectors[addr],jj)}return{nodes:buf,data:__toBuffer([buf_chain])}}function make_sector_list(sectors,dir_start,fat_addrs,ssz){var sl=sectors.length,sector_list=[],chkd=[],buf=[],buf_chain=[],modulus=ssz-1,i2=0,j=0,k=0,jj=0;for(i2=0;i2<sl;++i2)if(buf=[],k=i2+dir_start,k>=sl&&(k-=sl),!chkd[k]){buf_chain=[];var seen=[];for(j=k;j>=0;){seen[j]=!0,chkd[j]=!0,buf[buf.length]=j,buf_chain.push(sectors[j]);var addr=fat_addrs[Math.floor(j*4/ssz)];if(jj=j*4&modulus,ssz<4+jj)throw new Error("FAT boundary crossed: "+j+" 4 "+ssz);if(!sectors[addr]||(j=__readInt32LE(sectors[addr],jj),seen[j]))break}sector_list[k]={nodes:buf,data:__toBuffer([buf_chain])}}return sector_list}function read_directory(dir_start,sector_list,sectors,Paths,nmfs,files,FileIndex,mini){for(var minifat_store=0,pl=Paths.length?2:0,sector=sector_list[dir_start].data,i2=0,namelen=0,name;i2<sector.length;i2+=128){var blob=sector.slice(i2,i2+128);prep_blob(blob,64),namelen=blob.read_shift(2),name=__utf16le(blob,0,namelen-pl),Paths.push(name);var o={name,type:blob.read_shift(1),color:blob.read_shift(1),L:blob.read_shift(4,"i"),R:blob.read_shift(4,"i"),C:blob.read_shift(4,"i"),clsid:blob.read_shift(16),state:blob.read_shift(4,"i"),start:0,size:0},ctime=blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2);ctime!==0&&(o.ct=read_date(blob,blob.l-8));var mtime=blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2)+blob.read_shift(2);mtime!==0&&(o.mt=read_date(blob,blob.l-8)),o.start=blob.read_shift(4,"i"),o.size=blob.read_shift(4,"i"),o.size<0&&o.start<0&&(o.size=o.type=0,o.start=ENDOFCHAIN,o.name=""),o.type===5?(minifat_store=o.start,nmfs>0&&minifat_store!==ENDOFCHAIN&&(sector_list[minifat_store].name="!StreamData")):o.size>=4096?(o.storage="fat",sector_list[o.start]===void 0&&(sector_list[o.start]=get_sector_list(sectors,o.start,sector_list.fat_addrs,sector_list.ssz)),sector_list[o.start].name=o.name,o.content=sector_list[o.start].data.slice(0,o.size)):(o.storage="minifat",o.size<0?o.size=0:minifat_store!==ENDOFCHAIN&&o.start!==ENDOFCHAIN&§or_list[minifat_store]&&(o.content=get_mfat_entry(o,sector_list[minifat_store].data,(sector_list[mini]||{}).data))),o.content&&prep_blob(o.content,0),files[name]=o,FileIndex.push(o)}}function read_date(blob,offset){return new Date((__readUInt32LE(blob,offset+4)/1e7*Math.pow(2,32)+__readUInt32LE(blob,offset)/1e7-11644473600)*1e3)}function read_file(filename2,options){return get_fs(),parse(fs.readFileSync(filename2),options)}function read(blob,options){var type=options&&options.type;switch(type||has_buf&&Buffer.isBuffer(blob)&&(type="buffer"),type||"base64"){case"file":return read_file(blob,options);case"base64":return parse(s2a(Base64_decode(blob)),options);case"binary":return parse(s2a(blob),options)}return parse(blob,options)}function init_cfb(cfb,opts){var o=opts||{},root=o.root||"Root Entry";if(cfb.FullPaths||(cfb.FullPaths=[]),cfb.FileIndex||(cfb.FileIndex=[]),cfb.FullPaths.length!==cfb.FileIndex.length)throw new Error("inconsistent CFB structure");cfb.FullPaths.length===0&&(cfb.FullPaths[0]=root+"/",cfb.FileIndex[0]={name:root,type:5}),o.CLSID&&(cfb.FileIndex[0].clsid=o.CLSID),seed_cfb(cfb)}function seed_cfb(cfb){var nm="Sh33tJ5";if(!CFB.find(cfb,"/"+nm)){var p=new_buf(4);p[0]=55,p[1]=p[3]=50,p[2]=54,cfb.FileIndex.push({name:nm,type:2,content:p,size:4,L:69,R:69,C:69}),cfb.FullPaths.push(cfb.FullPaths[0]+nm),rebuild_cfb(cfb)}}function rebuild_cfb(cfb,f){init_cfb(cfb);for(var gc=!1,s=!1,i2=cfb.FullPaths.length-1;i2>=0;--i2){var _file=cfb.FileIndex[i2];switch(_file.type){case 0:s?gc=!0:(cfb.FileIndex.pop(),cfb.FullPaths.pop());break;case 1:case 2:case 5:s=!0,isNaN(_file.R*_file.L*_file.C)&&(gc=!0),_file.R>-1&&_file.L>-1&&_file.R==_file.L&&(gc=!0);break;default:gc=!0;break}}if(!(!gc&&!f)){var now=new Date(1987,1,19),j=0,fullPaths=Object.create?Object.create(null):{},data=[];for(i2=0;i2<cfb.FullPaths.length;++i2)fullPaths[cfb.FullPaths[i2]]=!0,cfb.FileIndex[i2].type!==0&&data.push([cfb.FullPaths[i2],cfb.FileIndex[i2]]);for(i2=0;i2<data.length;++i2){var dad=dirname(data[i2][0]);for(s=fullPaths[dad];!s;){for(;dirname(dad)&&!fullPaths[dirname(dad)];)dad=dirname(dad);data.push([dad,{name:filename(dad).replace("/",""),type:1,clsid:HEADER_CLSID,ct:now,mt:now,content:null}]),fullPaths[dad]=!0,dad=dirname(data[i2][0]),s=fullPaths[dad]}}for(data.sort(function(x,y){return namecmp(x[0],y[0])}),cfb.FullPaths=[],cfb.FileIndex=[],i2=0;i2<data.length;++i2)cfb.FullPaths[i2]=data[i2][0],cfb.FileIndex[i2]=data[i2][1];for(i2=0;i2<data.length;++i2){var elt=cfb.FileIndex[i2],nm=cfb.FullPaths[i2];if(elt.name=filename(nm).replace("/",""),elt.L=elt.R=elt.C=-(elt.color=1),elt.size=elt.content?elt.content.length:0,elt.start=0,elt.clsid=elt.clsid||HEADER_CLSID,i2===0)elt.C=data.length>1?1:-1,elt.size=0,elt.type=5;else if(nm.slice(-1)=="/"){for(j=i2+1;j<data.length&&dirname(cfb.FullPaths[j])!=nm;++j);for(elt.C=j>=data.length?-1:j,j=i2+1;j<data.length&&dirname(cfb.FullPaths[j])!=dirname(nm);++j);elt.R=j>=data.length?-1:j,elt.type=1}else dirname(cfb.FullPaths[i2+1]||"")==dirname(nm)&&(elt.R=i2+1),elt.type=2}}}function _write(cfb,options){var _opts=options||{};if(_opts.fileType=="mad")return write_mad(cfb,_opts);if(rebuild_cfb(cfb),_opts.fileType==="zip")return write_zip2(cfb,_opts);var L=(function(cfb2){for(var mini_size=0,fat_size=0,i3=0;i3<cfb2.FileIndex.length;++i3){var file2=cfb2.FileIndex[i3];if(file2.content){var flen2=file2.content.length;flen2>0&&(flen2<4096?mini_size+=flen2+63>>6:fat_size+=flen2+511>>9)}}for(var dir_cnt=cfb2.FullPaths.length+3>>2,mini_cnt=mini_size+7>>3,mfat_cnt=mini_size+127>>7,fat_base=mini_cnt+fat_size+dir_cnt+mfat_cnt,fat_cnt=fat_base+127>>7,difat_cnt=fat_cnt<=109?0:Math.ceil((fat_cnt-109)/127);fat_base+fat_cnt+difat_cnt+127>>7>fat_cnt;)difat_cnt=++fat_cnt<=109?0:Math.ceil((fat_cnt-109)/127);var L2=[1,difat_cnt,fat_cnt,mfat_cnt,dir_cnt,fat_size,mini_size,0];return cfb2.FileIndex[0].size=mini_size<<6,L2[7]=(cfb2.FileIndex[0].start=L2[0]+L2[1]+L2[2]+L2[3]+L2[4]+L2[5])+(L2[6]+7>>3),L2})(cfb),o=new_buf(L[7]<<9),i2=0,T=0;{for(i2=0;i2<8;++i2)o.write_shift(1,HEADER_SIG[i2]);for(i2=0;i2<8;++i2)o.write_shift(2,0);for(o.write_shift(2,62),o.write_shift(2,3),o.write_shift(2,65534),o.write_shift(2,9),o.write_shift(2,6),i2=0;i2<3;++i2)o.write_shift(2,0);for(o.write_shift(4,0),o.write_shift(4,L[2]),o.write_shift(4,L[0]+L[1]+L[2]+L[3]-1),o.write_shift(4,0),o.write_shift(4,4096),o.write_shift(4,L[3]?L[0]+L[1]+L[2]-1:ENDOFCHAIN),o.write_shift(4,L[3]),o.write_shift(-4,L[1]?L[0]-1:ENDOFCHAIN),o.write_shift(4,L[1]),i2=0;i2<109;++i2)o.write_shift(-4,i2<L[2]?L[1]+i2:-1)}if(L[1])for(T=0;T<L[1];++T){for(;i2<236+T*127;++i2)o.write_shift(-4,i2<L[2]?L[1]+i2:-1);o.write_shift(-4,T===L[1]-1?ENDOFCHAIN:T+1)}var chainit=function(w){for(T+=w;i2<T-1;++i2)o.write_shift(-4,i2+1);w&&(++i2,o.write_shift(-4,ENDOFCHAIN))};for(T=i2=0,T+=L[1];i2<T;++i2)o.write_shift(-4,consts.DIFSECT);for(T+=L[2];i2<T;++i2)o.write_shift(-4,consts.FATSECT);chainit(L[3]),chainit(L[4]);for(var j=0,flen=0,file=cfb.FileIndex[0];j<cfb.FileIndex.length;++j)file=cfb.FileIndex[j],file.content&&(flen=file.content.length,!(flen<4096)&&(file.start=T,chainit(flen+511>>9)));for(chainit(L[6]+7>>3);o.l&511;)o.write_shift(-4,consts.ENDOFCHAIN);for(T=i2=0,j=0;j<cfb.FileIndex.length;++j)file=cfb.FileIndex[j],file.content&&(flen=file.content.length,!(!flen||flen>=4096)&&(file.start=T,chainit(flen+63>>6)));for(;o.l&511;)o.write_shift(-4,consts.ENDOFCHAIN);for(i2=0;i2<L[4]<<2;++i2){var nm=cfb.FullPaths[i2];if(!nm||nm.length===0){for(j=0;j<17;++j)o.write_shift(4,0);for(j=0;j<3;++j)o.write_shift(4,-1);for(j=0;j<12;++j)o.write_shift(4,0);continue}file=cfb.FileIndex[i2],i2===0&&(file.start=file.size?file.start-1:ENDOFCHAIN);var _nm=i2===0&&_opts.root||file.name;if(_nm.length>31&&(console.error("Name "+_nm+" will be truncated to "+_nm.slice(0,31)),_nm=_nm.slice(0,31)),flen=2*(_nm.length+1),o.write_shift(64,_nm,"utf16le"),o.write_shift(2,flen),o.write_shift(1,file.type),o.write_shift(1,file.color),o.write_shift(-4,file.L),o.write_shift(-4,file.R),o.write_shift(-4,file.C),file.clsid)o.write_shift(16,file.clsid,"hex");else for(j=0;j<4;++j)o.write_shift(4,0);o.write_shift(4,file.state||0),o.write_shift(4,0),o.write_shift(4,0),o.write_shift(4,0),o.write_shift(4,0),o.write_shift(4,file.start),o.write_shift(4,file.size),o.write_shift(4,0)}for(i2=1;i2<cfb.FileIndex.length;++i2)if(file=cfb.FileIndex[i2],file.size>=4096)if(o.l=file.start+1<<9,has_buf&&Buffer.isBuffer(file.content))file.content.copy(o,o.l,0,file.size),o.l+=file.size+511&-512;else{for(j=0;j<file.size;++j)o.write_shift(1,file.content[j]);for(;j&511;++j)o.write_shift(1,0)}for(i2=1;i2<cfb.FileIndex.length;++i2)if(file=cfb.FileIndex[i2],file.size>0&&file.size<4096)if(has_buf&&Buffer.isBuffer(file.content))file.content.copy(o,o.l,0,file.size),o.l+=file.size+63&-64;else{for(j=0;j<file.size;++j)o.write_shift(1,file.content[j]);for(;j&63;++j)o.write_shift(1,0)}if(has_buf)o.l=o.length;else for(;o.l<o.length;)o.write_shift(1,0);return o}function find(cfb,path){var UCFullPaths=cfb.FullPaths.map(function(x){return x.toUpperCase()}),UCPaths=UCFullPaths.map(function(x){var y=x.split("/");return y[y.length-(x.slice(-1)=="/"?2:1)]}),k=!1;path.charCodeAt(0)===47?(k=!0,path=UCFullPaths[0].slice(0,-1)+path):k=path.indexOf("/")!==-1;var UCPath=path.toUpperCase(),w=k===!0?UCFullPaths.indexOf(UCPath):UCPaths.indexOf(UCPath);if(w!==-1)return cfb.FileIndex[w];var m=!UCPath.match(chr1);for(UCPath=UCPath.replace(chr0,""),m&&(UCPath=UCPath.replace(chr1,"!")),w=0;w<UCFullPaths.length;++w)if((m?UCFullPaths[w].replace(chr1,"!"):UCFullPaths[w]).replace(chr0,"")==UCPath||(m?UCPaths[w].replace(chr1,"!"):UCPaths[w]).replace(chr0,"")==UCPath)return cfb.FileIndex[w];return null}var MSSZ=64,ENDOFCHAIN=-2,HEADER_SIGNATURE="d0cf11e0a1b11ae1",HEADER_SIG=[208,207,17,224,161,177,26,225],HEADER_CLSID="00000000000000000000000000000000",consts={MAXREGSECT:-6,DIFSECT:-4,FATSECT:-3,ENDOFCHAIN,FREESECT:-1,HEADER_SIGNATURE,HEADER_MINOR_VERSION:"3e00",MAXREGSID:-6,NOSTREAM:-1,HEADER_CLSID,EntryTypes:["unknown","storage","stream","lockbytes","property","root"]};function write_file(cfb,filename2,options){get_fs();var o=_write(cfb,options);fs.writeFileSync(filename2,o)}function a2s2(o){for(var out=new Array(o.length),i2=0;i2<o.length;++i2)out[i2]=String.fromCharCode(o[i2]);return out.join("")}function write(cfb,options){var o=_write(cfb,options);switch(options&&options.type||"buffer"){case"file":return get_fs(),fs.writeFileSync(options.filename,o),o;case"binary":return typeof o=="string"?o:a2s2(o);case"base64":return Base64_encode(typeof o=="string"?o:a2s2(o));case"buffer":if(has_buf)return Buffer.isBuffer(o)?o:Buffer_from(o);case"array":return typeof o=="string"?s2a(o):o}return o}var _zlib;function use_zlib(zlib){try{var InflateRaw=zlib.InflateRaw,InflRaw=new InflateRaw;if(InflRaw._processChunk(new Uint8Array([3,0]),InflRaw._finishFlushFlag),InflRaw.bytesRead)_zlib=zlib;else throw new Error("zlib does not expose bytesRead")}catch(e){console.error("cannot use native zlib: "+(e.message||e))}}function _inflateRawSync(payload,usz){if(!_zlib)return _inflate(payload,usz);var InflateRaw=_zlib.InflateRaw,InflRaw=new InflateRaw,out=InflRaw._processChunk(payload.slice(payload.l),InflRaw._finishFlushFlag);return payload.l+=InflRaw.bytesRead,out}function _deflateRawSync(payload){return _zlib?_zlib.deflateRawSync(payload):_deflate(payload)}var CLEN_ORDER=[16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15],LEN_LN=[3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258],DST_LN=[1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577];function bit_swap_8(n){var t=(n<<1|n<<11)&139536|(n<<5|n<<15)&558144;return(t>>16|t>>8|t)&255}for(var use_typed_arrays=typeof Uint8Array<"u",bitswap8=use_typed_arrays?new Uint8Array(256):[],q=0;q<256;++q)bitswap8[q]=bit_swap_8(q);function bit_swap_n(n,b){var rev=bitswap8[n&255];return b<=8?rev>>>8-b:(rev=rev<<8|bitswap8[n>>8&255],b<=16?rev>>>16-b:(rev=rev<<8|bitswap8[n>>16&255],rev>>>24-b))}function read_bits_2(buf,bl){var w=bl&7,h=bl>>>3;return(buf[h]|(w<=6?0:buf[h+1]<<8))>>>w&3}function read_bits_3(buf,bl){var w=bl&7,h=bl>>>3;return(buf[h]|(w<=5?0:buf[h+1]<<8))>>>w&7}function read_bits_4(buf,bl){var w=bl&7,h=bl>>>3;return(buf[h]|(w<=4?0:buf[h+1]<<8))>>>w&15}function read_bits_5(buf,bl){var w=bl&7,h=bl>>>3;return(buf[h]|(w<=3?0:buf[h+1]<<8))>>>w&31}function read_bits_7(buf,bl){var w=bl&7,h=bl>>>3;return(buf[h]|(w<=1?0:buf[h+1]<<8))>>>w&127}function read_bits_n(buf,bl,n){var w=bl&7,h=bl>>>3,f=(1<<n)-1,v=buf[h]>>>w;return n<8-w||(v|=buf[h+1]<<8-w,n<16-w)||(v|=buf[h+2]<<16-w,n<24-w)||(v|=buf[h+3]<<24-w),v&f}function write_bits_3(buf,bl,v){var w=bl&7,h=bl>>>3;return w<=5?buf[h]|=(v&7)<<w:(buf[h]|=v<<w&255,buf[h+1]=(v&7)>>8-w),bl+3}function write_bits_1(buf,bl,v){var w=bl&7,h=bl>>>3;return v=(v&1)<<w,buf[h]|=v,bl+1}function write_bits_8(buf,bl,v){var w=bl&7,h=bl>>>3;return v<<=w,buf[h]|=v&255,v>>>=8,buf[h+1]=v,bl+8}function write_bits_16(buf,bl,v){var w=bl&7,h=bl>>>3;return v<<=w,buf[h]|=v&255,v>>>=8,buf[h+1]=v&255,buf[h+2]=v>>>8,bl+16}function realloc(b,sz){var L=b.length,M=2*L>sz?2*L:sz+5,i2=0;if(L>=sz)return b;if(has_buf){var o=new_unsafe_buf(M);if(b.copy)b.copy(o);else for(;i2<b.length;++i2)o[i2]=b[i2];return o}else if(use_typed_arrays){var a=new Uint8Array(M);if(a.set)a.set(b);else for(;i2<L;++i2)a[i2]=b[i2];return a}return b.length=M,b}function zero_fill_array(n){for(var o=new Array(n),i2=0;i2<n;++i2)o[i2]=0;return o}function build_tree(clens,cmap,MAX){var maxlen=1,w=0,i2=0,j=0,ccode=0,L=clens.length,bl_count=use_typed_arrays?new Uint16Array(32):zero_fill_array(32);for(i2=0;i2<32;++i2)bl_count[i2]=0;for(i2=L;i2<MAX;++i2)clens[i2]=0;L=clens.length;var ctree=use_typed_arrays?new Uint16Array(L):zero_fill_array(L);for(i2=0;i2<L;++i2)bl_count[w=clens[i2]]++,maxlen<w&&(maxlen=w),ctree[i2]=0;for(bl_count[0]=0,i2=1;i2<=maxlen;++i2)bl_count[i2+16]=ccode=ccode+bl_count[i2-1]<<1;for(i2=0;i2<L;++i2)ccode=clens[i2],ccode!=0&&(ctree[i2]=bl_count[ccode+16]++);var cleni=0;for(i2=0;i2<L;++i2)if(cleni=clens[i2],cleni!=0)for(ccode=bit_swap_n(ctree[i2],maxlen)>>maxlen-cleni,j=(1<<maxlen+4-cleni)-1;j>=0;--j)cmap[ccode|j<<cleni]=cleni&15|i2<<4;return maxlen}var fix_lmap=use_typed_arrays?new Uint16Array(512):zero_fill_array(512),fix_dmap=use_typed_arrays?new Uint16Array(32):zero_fill_array(32);if(!use_typed_arrays){for(var i=0;i<512;++i)fix_lmap[i]=0;for(i=0;i<32;++i)fix_dmap[i]=0}(function(){for(var dlens=[],i2=0;i2<32;i2++)dlens.push(5);build_tree(dlens,fix_dmap,32);var clens=[];for(i2=0;i2<=143;i2++)clens.push(8);for(;i2<=255;i2++)clens.push(9);for(;i2<=279;i2++)clens.push(7);for(;i2<=287;i2++)clens.push(8);build_tree(clens,fix_lmap,288)})();var _deflateRaw=(function(){for(var DST_LN_RE=use_typed_arrays?new Uint8Array(32768):[],j=0,k=0;j<DST_LN.length-1;++j)for(;k<DST_LN[j+1];++k)DST_LN_RE[k]=j;for(;k<32768;++k)DST_LN_RE[k]=29;var LEN_LN_RE=use_typed_arrays?new Uint8Array(259):[];for(j=0,k=0;j<LEN_LN.length-1;++j)for(;k<LEN_LN[j+1];++k)LEN_LN_RE[k]=j;function write_stored(data,out){for(var boff=0;boff<data.length;){var L=Math.min(65535,data.length-boff),h=boff+L==data.length;for(out.write_shift(1,+h),out.write_shift(2,L),out.write_shift(2,~L&65535);L-- >0;)out[out.l++]=data[boff++]}return out.l}function write_huff_fixed(data,out){for(var bl=0,boff=0,addrs=use_typed_arrays?new Uint16Array(32768):[];boff<data.length;){var L=Math.min(65535,data.length-boff);if(L<10){for(bl=write_bits_3(out,bl,+(boff+L==data.length)),bl&7&&(bl+=8-(bl&7)),out.l=bl/8|0,out.write_shift(2,L),out.write_shift(2,~L&65535);L-- >0;)out[out.l++]=data[boff++];bl=out.l*8;continue}bl=write_bits_3(out,bl,+(boff+L==data.length)+2);for(var hash=0;L-- >0;){var d=data[boff];hash=(hash<<5^d)&32767;var match=-1,mlen=0;if((match=addrs[hash])&&(match|=boff&-32768,match>boff&&(match-=32768),match<boff))for(;data[match+mlen]==data[boff+mlen]&&mlen<250;)++mlen;if(mlen>2){d=LEN_LN_RE[mlen],d<=22?bl=write_bits_8(out,bl,bitswap8[d+1]>>1)-1:(write_bits_8(out,bl,3),bl+=5,write_bits_8(out,bl,bitswap8[d-23]>>5),bl+=3);var len_eb=d<8?0:d-4>>2;len_eb>0&&(write_bits_16(out,bl,mlen-LEN_LN[d]),bl+=len_eb),d=DST_LN_RE[boff-match],bl=write_bits_8(out,bl,bitswap8[d]>>3),bl-=3;var dst_eb=d<4?0:d-2>>1;dst_eb>0&&(write_bits_16(out,bl,boff-match-DST_LN[d]),bl+=dst_eb);for(var q2=0;q2<mlen;++q2)addrs[hash]=boff&32767,hash=(hash<<5^data[boff])&32767,++boff;L-=mlen-1}else d<=143?d=d+48:bl=write_bits_1(out,bl,1),bl=write_bits_8(out,bl,bitswap8[d]),addrs[hash]=boff&32767,++boff}bl=write_bits_8(out,bl,0)-1}return out.l=(bl+7)/8|0,out.l}return function(data,out){return data.length<8?write_stored(data,out):write_huff_fixed(data,out)}})();function _deflate(data){var buf=new_buf(50+Math.floor(data.length*1.1)),off=_deflateRaw(data,buf);return buf.slice(0,off)}var dyn_lmap=use_typed_arrays?new Uint16Array(32768):zero_fill_array(32768),dyn_dmap=use_typed_arrays?new Uint16Array(32768):zero_fill_array(32768),dyn_cmap=use_typed_arrays?new Uint16Array(128):zero_fill_array(128),dyn_len_1=1,dyn_len_2=1;function dyn(data,boff){var _HLIT=read_bits_5(data,boff)+257;boff+=5;var _HDIST=read_bits_5(data,boff)+1;boff+=5;var _HCLEN=read_bits_4(data,boff)+4;boff+=4;for(var w=0,clens=use_typed_arrays?new Uint8Array(19):zero_fill_array(19),ctree=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],maxlen=1,bl_count=use_typed_arrays?new Uint8Array(8):zero_fill_array(8),next_code=use_typed_arrays?new Uint8Array(8):zero_fill_array(8),L=clens.length,i2=0;i2<_HCLEN;++i2)clens[CLEN_ORDER[i2]]=w=read_bits_3(data,boff),maxlen<w&&(maxlen=w),bl_count[w]++,boff+=3;var ccode=0;for(bl_count[0]=0,i2=1;i2<=maxlen;++i2)next_code[i2]=ccode=ccode+bl_count[i2-1]<<1;for(i2=0;i2<L;++i2)(ccode=clens[i2])!=0&&(ctree[i2]=next_code[ccode]++);var cleni=0;for(i2=0;i2<L;++i2)if(cleni=clens[i2],cleni!=0){ccode=bitswap8[ctree[i2]]>>8-cleni;for(var j=(1<<7-cleni)-1;j>=0;--j)dyn_cmap[ccode|j<<cleni]=cleni&7|i2<<3}var hcodes=[];for(maxlen=1;hcodes.length<_HLIT+_HDIST;)switch(ccode=dyn_cmap[read_bits_7(data,boff)],boff+=ccode&7,ccode>>>=3){case 16:for(w=3+read_bits_2(data,boff),boff+=2,ccode=hcodes[hcodes.length-1];w-- >0;)hcodes.push(ccode);break;case 17:for(w=3+read_bits_3(data,boff),boff+=3;w-- >0;)hcodes.push(0);break;case 18:for(w=11+read_bits_7(data,boff),boff+=7;w-- >0;)hcodes.push(0);break;default:hcodes.push(ccode),maxlen<ccode&&(maxlen=ccode);break}var h1=hcodes.slice(0,_HLIT),h2=hcodes.slice(_HLIT);for(i2=_HLIT;i2<286;++i2)h1[i2]=0;for(i2=_HDIST;i2<30;++i2)h2[i2]=0;return dyn_len_1=build_tree(h1,dyn_lmap,286),dyn_len_2=build_tree(h2,dyn_dmap,30),boff}function inflate(data,usz){if(data[0]==3&&!(data[1]&3))return[new_raw_buf(usz),2];for(var boff=0,header=0,outbuf=new_unsafe_buf(usz||1<<18),woff=0,OL=outbuf.length>>>0,max_len_1=0,max_len_2=0;(header&1)==0;){if(header=read_bits_3(data,boff),boff+=3,header>>>1)header>>1==1?(max_len_1=9,max_len_2=5):(boff=dyn(data,boff),max_len_1=dyn_len_1,max_len_2=dyn_len_2);else{boff&7&&(boff+=8-(boff&7));var sz=data[boff>>>3]|data[(boff>>>3)+1]<<8;if(boff+=32,sz>0)for(!usz&&OL<woff+sz&&(outbuf=realloc(outbuf,woff+sz),OL=outbuf.length);sz-- >0;)outbuf[woff++]=data[boff>>>3],boff+=8;continue}for(;;){!usz&&OL<woff+32767&&(outbuf=realloc(outbuf,woff+32767),OL=outbuf.length);var bits=read_bits_n(data,boff,max_len_1),code=header>>>1==1?fix_lmap[bits]:dyn_lmap[bits];if(boff+=code&15,code>>>=4,(code>>>8&255)===0)outbuf[woff++]=code;else{if(code==256)break;code-=257;var len_eb=code<8?0:code-4>>2;len_eb>5&&(len_eb=0);var tgt=woff+LEN_LN[code];len_eb>0&&(tgt+=read_bits_n(data,boff,len_eb),boff+=len_eb),bits=read_bits_n(data,boff,max_len_2),code=header>>>1==1?fix_dmap[bits]:dyn_dmap[bits],boff+=code&15,code>>>=4;var dst_eb=code<4?0:code-2>>1,dst=DST_LN[code];for(dst_eb>0&&(dst+=read_bits_n(data,boff,dst_eb),boff+=dst_eb),!usz&&OL<tgt&&(outbuf=realloc(outbuf,tgt+100),OL=outbuf.length);woff<tgt;)outbuf[woff]=outbuf[woff-dst],++woff}}}return usz?[outbuf,boff+7>>>3]:[outbuf.slice(0,woff),boff+7>>>3]}function _inflate(payload,usz){var data=payload.slice(payload.l||0),out=inflate(data,usz);return payload.l+=out[1],out[0]}function warn_or_throw(wrn,msg){if(wrn)typeof console<"u"&&console.error(msg);else throw new Error(msg)}function parse_zip2(file,options){var blob=file;prep_blob(blob,0);var FileIndex=[],FullPaths=[],o={FileIndex,FullPaths};init_cfb(o,{root:options.root});for(var i2=blob.length-4;(blob[i2]!=80||blob[i2+1]!=75||blob[i2+2]!=5||blob[i2+3]!=6)&&i2>=0;)--i2;blob.l=i2+4,blob.l+=4;var fcnt=blob.read_shift(2);blob.l+=6;var start_cd=blob.read_shift(4);for(blob.l=start_cd,i2=0;i2<fcnt;++i2){blob.l+=20;var csz=blob.read_shift(4),usz=blob.read_shift(4),namelen=blob.read_shift(2),efsz=blob.read_shift(2),fcsz=blob.read_shift(2);blob.l+=8;var offset=blob.read_shift(4),EF=parse_extra_field(blob.slice(blob.l+namelen,blob.l+namelen+efsz));blob.l+=namelen+efsz+fcsz;var L=blob.l;blob.l=offset+4,EF&&EF[1]&&((EF[1]||{}).usz&&(usz=EF[1].usz),(EF[1]||{}).csz&&(csz=EF[1].csz)),parse_local_file(blob,csz,usz,o,EF),blob.l=L}return o}function parse_local_file(blob,csz,usz,o,EF){blob.l+=2;var flags=blob.read_shift(2),meth=blob.read_shift(2),date=parse_dos_date(blob);if(flags&8257)throw new Error("Unsupported ZIP encryption");for(var crc32=blob.read_shift(4),_csz=blob.read_shift(4),_usz=blob.read_shift(4),namelen=blob.read_shift(2),efsz=blob.read_shift(2),name="",i2=0;i2<namelen;++i2)name+=String.fromCharCode(blob[blob.l++]);if(efsz){var ef=parse_extra_field(blob.slice(blob.l,blob.l+efsz));(ef[21589]||{}).mt&&(date=ef[21589].mt),(ef[1]||{}).usz&&(_usz=ef[1].usz),(ef[1]||{}).csz&&(_csz=ef[1].csz),EF&&((EF[21589]||{}).mt&&(date=EF[21589].mt),(EF[1]||{}).usz&&(_usz=EF[1].usz),(EF[1]||{}).csz&&(_csz=EF[1].csz))}blob.l+=efsz;var data=blob.slice(blob.l,blob.l+_csz);switch(meth){case 8:data=_inflateRawSync(blob,_usz);break;case 0:blob.l+=_csz;break;default:throw new Error("Unsupported ZIP Compression method "+meth)}var wrn=!1;flags&8&&(crc32=blob.read_shift(4),crc32==134695760&&(crc32=blob.read_shift(4),wrn=!0),_csz=blob.read_shift(4),_usz=blob.read_shift(4)),_csz!=csz&&warn_or_throw(wrn,"Bad compressed size: "+csz+" != "+_csz),_usz!=usz&&warn_or_throw(wrn,"Bad uncompressed size: "+usz+" != "+_usz),cfb_add(o,name,data,{unsafe:!0,mt:date})}function write_zip2(cfb,options){var _opts=options||{},out=[],cdirs=[],o=new_buf(1),method=_opts.compression?8:0,flags=0,desc=!1;desc&&(flags|=8);var i2=0,j=0,start_cd=0,fcnt=0,root=cfb.FullPaths[0],fp=root,fi=cfb.FileIndex[0],crcs=[],sz_cd=0;for(i2=1;i2<cfb.FullPaths.length;++i2)if(fp=cfb.FullPaths[i2].slice(root.length),fi=cfb.FileIndex[i2],!(!fi.size||!fi.content||Array.isArray(fi.content)&&fi.content.length==0||fp=="Sh33tJ5")){var start=start_cd,namebuf=new_buf(fp.length);for(j=0;j<fp.length;++j)namebuf.write_shift(1,fp.charCodeAt(j)&127);namebuf=namebuf.slice(0,namebuf.l),crcs[fcnt]=typeof fi.content=="string"?CRC32.bstr(fi.content,0):CRC32.buf(fi.content,0);var outbuf=typeof fi.content=="string"?s2a(fi.content):fi.content;method==8&&(outbuf=_deflateRawSync(outbuf)),o=new_buf(30),o.write_shift(4,67324752),o.write_shift(2,20),o.write_shift(2,flags),o.write_shift(2,method),fi.mt?write_dos_date(o,fi.mt):o.write_shift(4,0),o.write_shift(-4,flags&8?0:crcs[fcnt]),o.write_shift(4,flags&8?0:outbuf.length),o.write_shift(4,flags&8?0:fi.content.length),o.write_shift(2,namebuf.length),o.write_shift(2,0),start_cd+=o.length,out.push(o),start_cd+=namebuf.length,out.push(namebuf),start_cd+=outbuf.length,out.push(outbuf),flags&8&&(o=new_buf(12),o.write_shift(-4,crcs[fcnt]),o.write_shift(4,outbuf.length),o.write_shift(4,fi.content.length),start_cd+=o.l,out.push(o)),o=new_buf(46),o.write_shift(4,33639248),o.write_shift(2,0),o.write_shift(2,20),o.write_shift(2,flags),o.write_shift(2,method),o.write_shift(4,0),o.write_shift(-4,crcs[fcnt]),o.write_shift(4,outbuf.length),o.write_shift(4,fi.content.length),o.write_shift(2,namebuf.length),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(4,0),o.write_shift(4,start),sz_cd+=o.l,cdirs.push(o),sz_cd+=namebuf.length,cdirs.push(namebuf),++fcnt}return o=new_buf(22),o.write_shift(4,101010256),o.write_shift(2,0),o.write_shift(2,0),o.write_shift(2,fcnt),o.write_shift(2,fcnt),o.write_shift(4,sz_cd),o.write_shift(4,start_cd),o.write_shift(2,0),bconcat([bconcat(out),bconcat(cdirs),o])}var ContentTypeMap={htm:"text/html",xml:"text/xml",gif:"image/gif",jpg:"image/jpeg",png:"image/png",mso:"application/x-mso",thmx:"application/vnd.ms-officetheme",sh33tj5:"application/octet-stream"};function get_content_type(fi,fp){if(fi.ctype)return fi.ctype;var ext=fi.name||"",m=ext.match(/\.([^\.]+)$/);return m&&ContentTypeMap[m[1]]||fp&&(m=(ext=fp).match(/[\.\\]([^\.\\])+$/),m&&ContentTypeMap[m[1]])?ContentTypeMap[m[1]]:"application/octet-stream"}function write_base64_76(bstr){for(var data=Base64_encode(bstr),o=[],i2=0;i2<data.length;i2+=76)o.push(data.slice(i2,i2+76));return o.join(`\r
|
|
51
|
-
`)+`\r
|
|
52
|
-
`}function write_quoted_printable(text){var encoded=text.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7E-\xFF=]/g,function(c){var w=c.charCodeAt(0).toString(16).toUpperCase();return"="+(w.length==1?"0"+w:w)});encoded=encoded.replace(/ $/mg,"=20").replace(/\t$/mg,"=09"),encoded.charAt(0)==`
|
|
53
|
-
`&&(encoded="=0D"+encoded.slice(1)),encoded=encoded.replace(/\r(?!\n)/mg,"=0D").replace(/\n\n/mg,`
|
|
54
|
-
=0A`).replace(/([^\r\n])\n/mg,"$1=0A");for(var o=[],split=encoded.split(`\r
|
|
55
|
-
`),si=0;si<split.length;++si){var str=split[si];if(str.length==0){o.push("");continue}for(var i2=0;i2<str.length;){var end=76,tmp=str.slice(i2,i2+end);tmp.charAt(end-1)=="="?end--:tmp.charAt(end-2)=="="?end-=2:tmp.charAt(end-3)=="="&&(end-=3),tmp=str.slice(i2,i2+end),i2+=end,i2<str.length&&(tmp+="="),o.push(tmp)}}return o.join(`\r
|
|
56
|
-
`)}function parse_quoted_printable(data){for(var o=[],di=0;di<data.length;++di){for(var line=data[di];di<=data.length&&line.charAt(line.length-1)=="=";)line=line.slice(0,line.length-1)+data[++di];o.push(line)}for(var oi=0;oi<o.length;++oi)o[oi]=o[oi].replace(/[=][0-9A-Fa-f]{2}/g,function($$){return String.fromCharCode(parseInt($$.slice(1),16))});return s2a(o.join(`\r
|
|
57
|
-
`))}function parse_mime(cfb,data,root){for(var fname="",cte="",ctype="",fdata,di=0;di<10;++di){var line=data[di];if(!line||line.match(/^\s*$/))break;var m=line.match(/^([^:]*?):\s*([^\s].*)$/);if(m)switch(m[1].toLowerCase()){case"content-location":fname=m[2].trim();break;case"content-type":ctype=m[2].trim();break;case"content-transfer-encoding":cte=m[2].trim();break}}switch(++di,cte.toLowerCase()){case"base64":fdata=s2a(Base64_decode(data.slice(di).join("")));break;case"quoted-printable":fdata=parse_quoted_printable(data.slice(di));break;default:throw new Error("Unsupported Content-Transfer-Encoding "+cte)}var file=cfb_add(cfb,fname.slice(root.length),fdata,{unsafe:!0});ctype&&(file.ctype=ctype)}function parse_mad(file,options){if(a2s2(file.slice(0,13)).toLowerCase()!="mime-version:")throw new Error("Unsupported MAD header");var root=options&&options.root||"",data=(has_buf&&Buffer.isBuffer(file)?file.toString("binary"):a2s2(file)).split(`\r
|
|
58
|
-
`),di=0,row="";for(di=0;di<data.length;++di)if(row=data[di],!!/^Content-Location:/i.test(row)&&(row=row.slice(row.indexOf("file")),root||(root=row.slice(0,row.lastIndexOf("/")+1)),row.slice(0,root.length)!=root))for(;root.length>0&&(root=root.slice(0,root.length-1),root=root.slice(0,root.lastIndexOf("/")+1),row.slice(0,root.length)!=root););var mboundary=(data[1]||"").match(/boundary="(.*?)"/);if(!mboundary)throw new Error("MAD cannot find boundary");var boundary="--"+(mboundary[1]||""),FileIndex=[],FullPaths=[],o={FileIndex,FullPaths};init_cfb(o);var start_di,fcnt=0;for(di=0;di<data.length;++di){var line=data[di];line!==boundary&&line!==boundary+"--"||(fcnt++&&parse_mime(o,data.slice(start_di,di),root),start_di=di)}return o}function write_mad(cfb,options){var opts=options||{},boundary=opts.boundary||"SheetJS";boundary="------="+boundary;for(var out=["MIME-Version: 1.0",'Content-Type: multipart/related; boundary="'+boundary.slice(2)+'"',"","",""],root=cfb.FullPaths[0],fp=root,fi=cfb.FileIndex[0],i2=1;i2<cfb.FullPaths.length;++i2)if(fp=cfb.FullPaths[i2].slice(root.length),fi=cfb.FileIndex[i2],!(!fi.size||!fi.content||fp=="Sh33tJ5")){fp=fp.replace(/[\x00-\x08\x0B\x0C\x0E-\x1F\x7E-\xFF]/g,function(c){return"_x"+c.charCodeAt(0).toString(16)+"_"}).replace(/[\u0080-\uFFFF]/g,function(u){return"_u"+u.charCodeAt(0).toString(16)+"_"});for(var ca=fi.content,cstr=has_buf&&Buffer.isBuffer(ca)?ca.toString("binary"):a2s2(ca),dispcnt=0,L=Math.min(1024,cstr.length),cc=0,csl=0;csl<=L;++csl)(cc=cstr.charCodeAt(csl))>=32&&cc<128&&++dispcnt;var qp=dispcnt>=L*4/5;out.push(boundary),out.push("Content-Location: "+(opts.root||"file:///C:/SheetJS/")+fp),out.push("Content-Transfer-Encoding: "+(qp?"quoted-printable":"base64")),out.push("Content-Type: "+get_content_type(fi,fp)),out.push(""),out.push(qp?write_quoted_printable(cstr):write_base64_76(cstr))}return out.push(boundary+`--\r
|
|
59
|
-
`),out.join(`\r
|
|
60
|
-
`)}function cfb_new(opts){var o={};return init_cfb(o,opts),o}function cfb_add(cfb,name,content,opts){var unsafe=opts&&opts.unsafe;unsafe||init_cfb(cfb);var file=!unsafe&&CFB.find(cfb,name);if(!file){var fpath=cfb.FullPaths[0];name.slice(0,fpath.length)==fpath?fpath=name:(fpath.slice(-1)!="/"&&(fpath+="/"),fpath=(fpath+name).replace("//","/")),file={name:filename(name),type:2},cfb.FileIndex.push(file),cfb.FullPaths.push(fpath),unsafe||CFB.utils.cfb_gc(cfb)}return file.content=content,file.size=content?content.length:0,opts&&(opts.CLSID&&(file.clsid=opts.CLSID),opts.mt&&(file.mt=opts.mt),opts.ct&&(file.ct=opts.ct)),file}function cfb_del(cfb,name){init_cfb(cfb);var file=CFB.find(cfb,name);if(file){for(var j=0;j<cfb.FileIndex.length;++j)if(cfb.FileIndex[j]==file)return cfb.FileIndex.splice(j,1),cfb.FullPaths.splice(j,1),!0}return!1}function cfb_mov(cfb,old_name,new_name){init_cfb(cfb);var file=CFB.find(cfb,old_name);if(file){for(var j=0;j<cfb.FileIndex.length;++j)if(cfb.FileIndex[j]==file)return cfb.FileIndex[j].name=filename(new_name),cfb.FullPaths[j]=new_name,!0}return!1}function cfb_gc(cfb){rebuild_cfb(cfb,!0)}return exports.find=find,exports.read=read,exports.parse=parse,exports.write=write,exports.writeFile=write_file,exports.utils={cfb_new,cfb_add,cfb_del,cfb_mov,cfb_gc,ReadShift,CheckField,prep_blob,bconcat,use_zlib,_deflateRaw:_deflate,_inflateRaw:_inflate,consts},exports})();dnthresh=Date.UTC(1899,11,30,0,0,0),dnthresh1=Date.UTC(1899,11,31,0,0,0),dnthresh2=Date.UTC(1904,0,1,0,0,0);pdre1=/^(\d+):(\d+)(:\d+)?(\.\d+)?$/,pdre2=/^(\d+)-(\d+)-(\d+)$/,pdre3=/^(\d+)-(\d+)-(\d+)[T ](\d+):(\d+)(:\d+)?(\.\d+)?$/;FDRE1=/^(0?\d|1[0-2])(?:|:([0-5]?\d)(?:|(\.\d+)(?:|:([0-5]?\d))|:([0-5]?\d)(|\.\d+)))\s+([ap])m?$/,FDRE2=/^([01]?\d|2[0-3])(?:|:([0-5]?\d)(?:|(\.\d+)(?:|:([0-5]?\d))|:([0-5]?\d)(|\.\d+)))$/,FDISO=/^(\d+)-(\d+)-(\d+)[T ](\d+):(\d+)(:\d+)(\.\d+)?[Z]?$/,utc_append_works=new Date("6/9/69 00:00 UTC").valueOf()==-177984e5;lower_months=["january","february","march","april","may","june","july","august","september","october","november","december"];split_regex=(function(){var safe_split_regex="abacaba".split(/(:?b)/i).length==5;return function(str,re,def){if(safe_split_regex||typeof re=="string")return str.split(re);for(var p=str.split(re),o=[p[0]],i=1;i<p.length;++i)o.push(def),o.push(p[i]);return o}})();xml_boundary={" ":1," ":1,"\r":1,"\n":1,">":1};str_match_xml_ns=(function(){var str_match_xml_ns_cache={};return function(str,tag){var res=str_match_xml_ns_cache[tag];res||(str_match_xml_ns_cache[tag]=res=[new RegExp("<(?:\\w+:)?"+tag+"\\b[^<>]*>","g"),new RegExp("</(?:\\w+:)?"+tag+">","g")]),res[0].lastIndex=res[1].lastIndex=0;var m=res[0].exec(str);if(!m)return null;var si=m.index,sf=res[0].lastIndex;if(res[1].lastIndex=res[0].lastIndex,m=res[1].exec(str),!m)return null;var ei=m.index,ef=res[1].lastIndex;return[str.slice(si,ef),str.slice(sf,ei)]}})(),str_match_xml_ns_g=(function(){var str_match_xml_ns_cache={};return function(str,tag){var out=[],res=str_match_xml_ns_cache[tag];res||(str_match_xml_ns_cache[tag]=res=[new RegExp("<(?:\\w+:)?"+tag+"\\b[^<>]*>","g"),new RegExp("</(?:\\w+:)?"+tag+">","g")]),res[0].lastIndex=res[1].lastIndex=0;for(var m;m=res[0].exec(str);){var si=m.index;if(res[1].lastIndex=res[0].lastIndex,m=res[1].exec(str),!m)return null;var ef=res[1].lastIndex;out.push(str.slice(si,ef)),res[0].lastIndex=res[1].lastIndex}return out.length==0?null:out}})(),str_remove_xml_ns_g=(function(){var str_remove_xml_ns_cache={};return function(str,tag){var out=[],res=str_remove_xml_ns_cache[tag];res||(str_remove_xml_ns_cache[tag]=res=[new RegExp("<(?:\\w+:)?"+tag+"\\b[^<>]*>","g"),new RegExp("</(?:\\w+:)?"+tag+">","g")]),res[0].lastIndex=res[1].lastIndex=0;for(var m,si=0,ef=0;m=res[0].exec(str);){if(si=m.index,out.push(str.slice(ef,si)),ef=si,res[1].lastIndex=res[0].lastIndex,m=res[1].exec(str),!m)return null;ef=res[1].lastIndex,res[0].lastIndex=res[1].lastIndex}return out.push(str.slice(ef)),out.length==0?"":out.join("")}})(),str_match_xml_ig=(function(){var str_match_xml_ns_cache={};return function(str,tag){var out=[],res=str_match_xml_ns_cache[tag];res||(str_match_xml_ns_cache[tag]=res=[new RegExp("<"+tag+"\\b[^<>]*>","ig"),new RegExp("</"+tag+">","ig")]),res[0].lastIndex=res[1].lastIndex=0;for(var m;m=res[0].exec(str);){var si=m.index;if(res[1].lastIndex=res[0].lastIndex,m=res[1].exec(str),!m)return null;var ef=res[1].lastIndex;out.push(str.slice(si,ef)),res[0].lastIndex=res[1].lastIndex}return out.length==0?null:out}})();XML_HEADER=`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>\r
|
|
61
|
-
`,attregexg=/\s([^"\s?>\/]+)\s*=\s*((?:")([^"]*)(?:")|(?:')([^']*)(?:')|([^'">\s]+))/g,tagregex1=/<[\/\?]?[a-zA-Z0-9:_-]+(?:\s+[^"\s?<>\/]+\s*=\s*(?:"[^"]*"|'[^']*'|[^'"<>\s=]+))*\s*[\/\?]?>/mg,tagregex2=/<[^<>]*>/g,tagregex=XML_HEADER.match(tagregex1)?tagregex1:tagregex2,nsregex=/<\w*:/,nsregex2=/<(\/?)\w+:/;encodings={""":'"',"'":"'",">":">","<":"<","&":"&"},rencoding=evert(encodings),unescapexml=(function(){var encregex=/&(?:quot|apos|gt|lt|amp|#x?([\da-fA-F]+));/ig,coderegex=/_x([\da-fA-F]{4})_/ig;function raw_unescapexml(text){var s=text+"",i=s.indexOf("<![CDATA[");if(i==-1)return s.replace(encregex,function($$,$1){return encodings[$$]||String.fromCharCode(parseInt($1,$$.indexOf("x")>-1?16:10))||$$}).replace(coderegex,function(m,c){return String.fromCharCode(parseInt(c,16))});var j=s.indexOf("]]>");return raw_unescapexml(s.slice(0,i))+s.slice(i+9,j)+raw_unescapexml(s.slice(j+3))}return function(text,xlsx){var out=raw_unescapexml(text);return xlsx?out.replace(/\r\n/g,`
|
|
62
|
-
`):out}})(),decregex=/[&<>'"]/g,charegex=/[\u0000-\u0008\u000b-\u001f\uFFFE-\uFFFF]/g;htmlcharegex=/[\u0000-\u001f]/g;xlml_fixstr=(function(){var entregex=/&#(\d+);/g;function entrepl($$,$1){return String.fromCharCode(parseInt($1,10))}return function(str){return str.replace(entregex,entrepl)}})();utf8corpus="foo bar baz\xE2\x98\x83\xF0\x9F\x8D\xA3",utf8read=has_buf&&(utf8readc(utf8corpus)==utf8reada(utf8corpus)&&utf8readc||utf8readb(utf8corpus)==utf8reada(utf8corpus)&&utf8readb)||utf8reada,utf8write=has_buf?function(data){return Buffer_from(data,"utf8").toString("binary")}:function(orig){for(var out=[],i=0,c=0,d=0;i<orig.length;)switch(c=orig.charCodeAt(i++),!0){case c<128:out.push(String.fromCharCode(c));break;case c<2048:out.push(String.fromCharCode(192+(c>>6))),out.push(String.fromCharCode(128+(c&63)));break;case(c>=55296&&c<57344):c-=55296,d=orig.charCodeAt(i++)-56320+(c<<10),out.push(String.fromCharCode(240+(d>>18&7))),out.push(String.fromCharCode(144+(d>>12&63))),out.push(String.fromCharCode(128+(d>>6&63))),out.push(String.fromCharCode(128+(d&63)));break;default:out.push(String.fromCharCode(224+(c>>12))),out.push(String.fromCharCode(128+(c>>6&63))),out.push(String.fromCharCode(128+(c&63)))}return out.join("")},htmldecode=(function(){var entities=[["nbsp"," "],["middot","\xB7"],["quot",'"'],["apos","'"],["gt",">"],["lt","<"],["amp","&"]].map(function(x){return[new RegExp("&"+x[0]+";","ig"),x[1]]});return function(str){for(var o=str.replace(/^[\t\n\r ]+/,"").replace(/(^|[^\t\n\r ])[\t\n\r ]+$/,"$1").replace(/>\s+/g,">").replace(/\b\s+</g,"<").replace(/[\t\n\r ]+/g," ").replace(/<\s*[bB][rR]\s*\/?>/g,`
|
|
63
|
-
`).replace(/<[^<>]*>/g,""),i=0;i<entities.length;++i)o=o.replace(entities[i][0],entities[i][1]);return o}})(),vtvregex=/<\/?(?:vt:)?variant>/g,vtmregex=/<(?:vt:)([^<"'>]*)>([\s\S]*)</;wtregex=/(^\s|\s$|\n)/;xlmlregex=/<([\/]?)([^\s?><!\/:"]*:|)([^\s?<>:\/"]+)(?:\s+[^<>=?"'\s]+="[^"]*?")*\s*[\/]?>/mg,XMLNS={CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/metadata/core-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/custom-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/extended-properties",CT:"http://schemas.openxmlformats.org/package/2006/content-types",RELS:"http://schemas.openxmlformats.org/package/2006/relationships",TCMNT:"http://schemas.microsoft.com/office/spreadsheetml/2018/threadedcomments",dc:"http://purl.org/dc/elements/1.1/",dcterms:"http://purl.org/dc/terms/",dcmitype:"http://purl.org/dc/dcmitype/",mx:"http://schemas.microsoft.com/office/mac/excel/2008/main",r:"http://schemas.openxmlformats.org/officeDocument/2006/relationships",sjs:"http://schemas.openxmlformats.org/package/2006/sheetjs/core-properties",vt:"http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes",xsi:"http://www.w3.org/2001/XMLSchema-instance",xsd:"http://www.w3.org/2001/XMLSchema"},XMLNS_main=["http://schemas.openxmlformats.org/spreadsheetml/2006/main","http://purl.oclc.org/ooxml/spreadsheetml/main","http://schemas.microsoft.com/office/excel/2006/main","http://schemas.microsoft.com/office/excel/2006/2"],XLMLNS={o:"urn:schemas-microsoft-com:office:office",x:"urn:schemas-microsoft-com:office:excel",ss:"urn:schemas-microsoft-com:office:spreadsheet",dt:"uuid:C2F41010-65B3-11d1-A29F-00AA00C14882",mv:"http://macVmlSchemaUri",v:"urn:schemas-microsoft-com:vml",html:"http://www.w3.org/TR/REC-html40"};___toBuffer=function(bufs){for(var x=[],w=10240,i=0;i<bufs[0].length;++i)if(bufs[0][i])for(var j=0,L=bufs[0][i].length;j<L;j+=w)x.push.apply(x,bufs[0][i].slice(j,j+w));return x},__toBuffer=has_buf?function(bufs){return bufs[0].length>0&&Buffer.isBuffer(bufs[0][0])?Buffer.concat(bufs[0].map(function(x){return Buffer.isBuffer(x)?x:Buffer_from(x)})):___toBuffer(bufs)}:___toBuffer,___utf16le=function(b,s,e){for(var ss=[],i=s;i<e;i+=2)ss.push(String.fromCharCode(__readUInt16LE(b,i)));return ss.join("").replace(chr0,"")},__utf16le=has_buf?function(b,s,e){return!Buffer.isBuffer(b)||!buf_utf16le?___utf16le(b,s,e):b.toString("utf16le",s,e).replace(chr0,"")}:___utf16le,___hexlify=function(b,s,l){for(var ss=[],i=s;i<s+l;++i)ss.push(("0"+b[i].toString(16)).slice(-2));return ss.join("")},__hexlify=has_buf?function(b,s,l){return Buffer.isBuffer(b)?b.toString("hex",s,s+l):___hexlify(b,s,l)}:___hexlify,___utf8=function(b,s,e){for(var ss=[],i=s;i<e;i++)ss.push(String.fromCharCode(__readUInt8(b,i)));return ss.join("")},__utf8=has_buf?function(b,s,e){return Buffer.isBuffer(b)?b.toString("utf8",s,e):___utf8(b,s,e)}:___utf8,___lpstr=function(b,i){var len=__readUInt32LE(b,i);return len>0?__utf8(b,i+4,i+4+len-1):""},__lpstr=___lpstr,___cpstr=function(b,i){var len=__readUInt32LE(b,i);return len>0?__utf8(b,i+4,i+4+len-1):""},__cpstr=___cpstr,___lpwstr=function(b,i){var len=2*__readUInt32LE(b,i);return len>0?__utf8(b,i+4,i+4+len-1):""},__lpwstr=___lpwstr,___lpp4=function(b,i){var len=__readUInt32LE(b,i);return len>0?__utf16le(b,i+4,i+4+len):""},__lpp4=___lpp4,___8lpp4=function(b,i){var len=__readUInt32LE(b,i);return len>0?__utf8(b,i+4,i+4+len):""},__8lpp4=___8lpp4,___double=function(b,idx){return read_double_le(b,idx)},__double=___double,is_buf=function(a){return Array.isArray(a)||typeof Uint8Array<"u"&&a instanceof Uint8Array};has_buf&&(__lpstr=function(b,i){if(!Buffer.isBuffer(b))return ___lpstr(b,i);var len=b.readUInt32LE(i);return len>0?b.toString("utf8",i+4,i+4+len-1):""},__cpstr=function(b,i){if(!Buffer.isBuffer(b))return ___cpstr(b,i);var len=b.readUInt32LE(i);return len>0?b.toString("utf8",i+4,i+4+len-1):""},__lpwstr=function(b,i){if(!Buffer.isBuffer(b)||!buf_utf16le)return ___lpwstr(b,i);var len=2*b.readUInt32LE(i);return b.toString("utf16le",i+4,i+4+len-1)},__lpp4=function(b,i){if(!Buffer.isBuffer(b)||!buf_utf16le)return ___lpp4(b,i);var len=b.readUInt32LE(i);return b.toString("utf16le",i+4,i+4+len)},__8lpp4=function(b,i){if(!Buffer.isBuffer(b))return ___8lpp4(b,i);var len=b.readUInt32LE(i);return b.toString("utf8",i+4,i+4+len)},__double=function(b,i){return Buffer.isBuffer(b)?b.readDoubleLE(i):___double(b,i)},is_buf=function(a){return Buffer.isBuffer(a)||Array.isArray(a)||typeof Uint8Array<"u"&&a instanceof Uint8Array});typeof $cptable<"u"&&cpdoit();__readUInt8=function(b,idx){return b[idx]},__readUInt16LE=function(b,idx){return b[idx+1]*256+b[idx]},__readInt16LE=function(b,idx){var u=b[idx+1]*256+b[idx];return u<32768?u:(65535-u+1)*-1},__readUInt32LE=function(b,idx){return b[idx+3]*(1<<24)+(b[idx+2]<<16)+(b[idx+1]<<8)+b[idx]},__readInt32LE=function(b,idx){return b[idx+3]<<24|b[idx+2]<<16|b[idx+1]<<8|b[idx]},__readInt32BE=function(b,idx){return b[idx]<<24|b[idx+1]<<16|b[idx+2]<<8|b[idx+3]};__writeUInt32LE=function(b,val2,idx){b[idx]=val2&255,b[idx+1]=val2>>>8&255,b[idx+2]=val2>>>16&255,b[idx+3]=val2>>>24&255},__writeInt32LE=function(b,val2,idx){b[idx]=val2&255,b[idx+1]=val2>>8&255,b[idx+2]=val2>>16&255,b[idx+3]=val2>>24&255},__writeUInt16LE=function(b,val2,idx){b[idx]=val2&255,b[idx+1]=val2>>>8&255};parse_BrtCommentText=parse_RichStr;parse_XLSBCodeName=parse_XLWideString,write_XLSBCodeName=write_XLWideString;parse_XLNameWideString=parse_XLWideString,parse_RelID=parse_XLNullableWideString,write_RelID=write_XLNullableWideString;parse_UncheckedRfX=parse_RfX,write_UncheckedRfX=write_RfX;VT_I2=2,VT_I4=3,VT_BOOL=11,VT_VARIANT=12,VT_UI4=19,VT_FILETIME=64,VT_BLOB=65,VT_CF=71,VT_VECTOR_VARIANT=4108,VT_VECTOR_LPSTR=4126,VT_STRING=80,VT_USTR=81,VT_CUSTOM=[VT_STRING,VT_USTR],DocSummaryPIDDSI={1:{n:"CodePage",t:VT_I2},2:{n:"Category",t:VT_STRING},3:{n:"PresentationFormat",t:VT_STRING},4:{n:"ByteCount",t:VT_I4},5:{n:"LineCount",t:VT_I4},6:{n:"ParagraphCount",t:VT_I4},7:{n:"SlideCount",t:VT_I4},8:{n:"NoteCount",t:VT_I4},9:{n:"HiddenCount",t:VT_I4},10:{n:"MultimediaClipCount",t:VT_I4},11:{n:"ScaleCrop",t:VT_BOOL},12:{n:"HeadingPairs",t:VT_VECTOR_VARIANT},13:{n:"TitlesOfParts",t:VT_VECTOR_LPSTR},14:{n:"Manager",t:VT_STRING},15:{n:"Company",t:VT_STRING},16:{n:"LinksUpToDate",t:VT_BOOL},17:{n:"CharacterCount",t:VT_I4},19:{n:"SharedDoc",t:VT_BOOL},22:{n:"HyperlinksChanged",t:VT_BOOL},23:{n:"AppVersion",t:VT_I4,p:"version"},24:{n:"DigSig",t:VT_BLOB},26:{n:"ContentType",t:VT_STRING},27:{n:"ContentStatus",t:VT_STRING},28:{n:"Language",t:VT_STRING},29:{n:"Version",t:VT_STRING},255:{},2147483648:{n:"Locale",t:VT_UI4},2147483651:{n:"Behavior",t:VT_UI4},1919054434:{}},SummaryPIDSI={1:{n:"CodePage",t:VT_I2},2:{n:"Title",t:VT_STRING},3:{n:"Subject",t:VT_STRING},4:{n:"Author",t:VT_STRING},5:{n:"Keywords",t:VT_STRING},6:{n:"Comments",t:VT_STRING},7:{n:"Template",t:VT_STRING},8:{n:"LastAuthor",t:VT_STRING},9:{n:"RevNumber",t:VT_STRING},10:{n:"EditTime",t:VT_FILETIME},11:{n:"LastPrinted",t:VT_FILETIME},12:{n:"CreatedDate",t:VT_FILETIME},13:{n:"ModifiedDate",t:VT_FILETIME},14:{n:"PageCount",t:VT_I4},15:{n:"WordCount",t:VT_I4},16:{n:"CharCount",t:VT_I4},17:{n:"Thumbnail",t:VT_CF},18:{n:"Application",t:VT_STRING},19:{n:"DocSecurity",t:VT_I4},255:{},2147483648:{n:"Locale",t:VT_UI4},2147483651:{n:"Behavior",t:VT_UI4},1919054434:{}},CountryEnum={1:"US",2:"CA",3:"",7:"RU",20:"EG",30:"GR",31:"NL",32:"BE",33:"FR",34:"ES",36:"HU",39:"IT",41:"CH",43:"AT",44:"GB",45:"DK",46:"SE",47:"NO",48:"PL",49:"DE",52:"MX",55:"BR",61:"AU",64:"NZ",66:"TH",81:"JP",82:"KR",84:"VN",86:"CN",90:"TR",105:"JS",213:"DZ",216:"MA",218:"LY",351:"PT",354:"IS",358:"FI",420:"CZ",886:"TW",961:"LB",962:"JO",963:"SY",964:"IQ",965:"KW",966:"SA",971:"AE",972:"IL",974:"QA",981:"IR",65535:"US"},XLSFillPattern=[null,"solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"];_XLSIcv=rgbify([0,16777215,16711680,65280,255,16776960,16711935,65535,0,16777215,16711680,65280,255,16776960,16711935,65535,8388608,32768,128,8421376,8388736,32896,12632256,8421504,10066431,10040166,16777164,13434879,6684774,16744576,26316,13421823,128,16711935,16776960,65535,8388736,8388608,32896,255,52479,13434879,13434828,16777113,10079487,16751052,13408767,16764057,3368703,3394764,10079232,16763904,16750848,16737792,6710937,9868950,13158,3381606,13056,3355392,10040064,10040166,3355545,3355443,0,16777215,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),XLSIcv=dup(_XLSIcv),BErr={0:"#NULL!",7:"#DIV/0!",15:"#VALUE!",23:"#REF!",29:"#NAME?",36:"#NUM!",42:"#N/A",43:"#GETTING_DATA",255:"#WTF?"},RBErr={"#NULL!":0,"#DIV/0!":7,"#VALUE!":15,"#REF!":23,"#NAME?":29,"#NUM!":36,"#N/A":42,"#GETTING_DATA":43,"#WTF?":255},XLSLblBuiltIn=["_xlnm.Consolidate_Area","_xlnm.Auto_Open","_xlnm.Auto_Close","_xlnm.Extract","_xlnm.Database","_xlnm.Criteria","_xlnm.Print_Area","_xlnm.Print_Titles","_xlnm.Recorder","_xlnm.Data_Form","_xlnm.Auto_Activate","_xlnm.Auto_Deactivate","_xlnm.Sheet_Title","_xlnm._FilterDatabase"],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.ms-excel.addin.macroEnabled.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":"workbooks","application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":"sheets","application/vnd.ms-excel.worksheet":"sheets","application/vnd.ms-excel.binIndexWs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":"charts","application/vnd.ms-excel.chartsheet":"charts","application/vnd.ms-excel.macrosheet+xml":"macros","application/vnd.ms-excel.macrosheet":"macros","application/vnd.ms-excel.intlmacrosheet":"TODO","application/vnd.ms-excel.binIndexMs":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":"dialogs","application/vnd.ms-excel.dialogsheet":"dialogs","application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml":"strs","application/vnd.ms-excel.sharedStrings":"strs","application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":"styles","application/vnd.ms-excel.styles":"styles","application/vnd.openxmlformats-package.core-properties+xml":"coreprops","application/vnd.openxmlformats-officedocument.custom-properties+xml":"custprops","application/vnd.openxmlformats-officedocument.extended-properties+xml":"extprops","application/vnd.openxmlformats-officedocument.customXmlProperties+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.customProperty":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":"comments","application/vnd.ms-excel.comments":"comments","application/vnd.ms-excel.threadedcomments+xml":"threadedcomments","application/vnd.ms-excel.person+xml":"people","application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml":"metadata","application/vnd.ms-excel.sheetMetadata":"metadata","application/vnd.ms-excel.pivotTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.chart+xml":"TODO","application/vnd.ms-office.chartcolorstyle+xml":"TODO","application/vnd.ms-office.chartstyle+xml":"TODO","application/vnd.ms-office.chartex+xml":"TODO","application/vnd.ms-excel.calcChain":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.calcChain+xml":"calcchains","application/vnd.openxmlformats-officedocument.spreadsheetml.printerSettings":"TODO","application/vnd.ms-office.activeX":"TODO","application/vnd.ms-office.activeX+xml":"TODO","application/vnd.ms-excel.attachedToolbars":"TODO","application/vnd.ms-excel.connections":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":"TODO","application/vnd.ms-excel.externalLink":"links","application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml":"links","application/vnd.ms-excel.pivotCacheDefinition":"TODO","application/vnd.ms-excel.pivotCacheRecords":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml":"TODO","application/vnd.ms-excel.queryTable":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.queryTable+xml":"TODO","application/vnd.ms-excel.userNames":"TODO","application/vnd.ms-excel.revisionHeaders":"TODO","application/vnd.ms-excel.revisionLog":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionHeaders+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.revisionLog+xml":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.userNames+xml":"TODO","application/vnd.ms-excel.tableSingleCells":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.tableSingleCells+xml":"TODO","application/vnd.ms-excel.slicer":"TODO","application/vnd.ms-excel.slicerCache":"TODO","application/vnd.ms-excel.slicer+xml":"TODO","application/vnd.ms-excel.slicerCache+xml":"TODO","application/vnd.ms-excel.wsSortMap":"TODO","application/vnd.ms-excel.table":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":"TODO","application/vnd.openxmlformats-officedocument.theme+xml":"themes","application/vnd.openxmlformats-officedocument.themeOverride+xml":"TODO","application/vnd.ms-excel.Timeline+xml":"TODO","application/vnd.ms-excel.TimelineCache+xml":"TODO","application/vnd.ms-office.vbaProject":"vba","application/vnd.ms-office.vbaProjectSignature":"TODO","application/vnd.ms-office.volatileDependencies":"TODO","application/vnd.openxmlformats-officedocument.spreadsheetml.volatileDependencies+xml":"TODO","application/vnd.ms-excel.controlproperties+xml":"TODO","application/vnd.openxmlformats-officedocument.model+data":"TODO","application/vnd.ms-excel.Survey+xml":"TODO","application/vnd.openxmlformats-officedocument.drawing+xml":"drawings","application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramColors+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramData+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramLayout+xml":"TODO","application/vnd.openxmlformats-officedocument.drawingml.diagramStyle+xml":"TODO","application/vnd.openxmlformats-officedocument.vmlDrawing":"TODO","application/vnd.openxmlformats-package.relationships+xml":"rels","application/vnd.openxmlformats-officedocument.oleObject":"TODO","image/png":"TODO",sheet:"js"},CT_LIST={workbooks:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml",xlsm:"application/vnd.ms-excel.sheet.macroEnabled.main+xml",xlsb:"application/vnd.ms-excel.sheet.binary.macroEnabled.main",xlam:"application/vnd.ms-excel.addin.macroEnabled.main+xml",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml"},strs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml",xlsb:"application/vnd.ms-excel.sharedStrings"},comments:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml",xlsb:"application/vnd.ms-excel.comments"},sheets:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml",xlsb:"application/vnd.ms-excel.worksheet"},charts:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml",xlsb:"application/vnd.ms-excel.chartsheet"},dialogs:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml",xlsb:"application/vnd.ms-excel.dialogsheet"},macros:{xlsx:"application/vnd.ms-excel.macrosheet+xml",xlsb:"application/vnd.ms-excel.macrosheet"},metadata:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml",xlsb:"application/vnd.ms-excel.sheetMetadata"},styles:{xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml",xlsb:"application/vnd.ms-excel.styles"}};RELS={WB:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument",SHEET:"http://sheetjs.openxmlformats.org/officeDocument/2006/relationships/officeDocument",HLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink",VML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing",XPATH:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath",XMISS:"http://schemas.microsoft.com/office/2006/relationships/xlExternalLinkPath/xlPathMissing",XLINK:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink",CXML:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXml",CXMLP:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/customXmlProps",CMNT:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments",CORE_PROPS:"http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties",EXT_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties",CUST_PROPS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/custom-properties",SST:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings",STY:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles",THEME:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme",CHART:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chart",CHARTEX:"http://schemas.microsoft.com/office/2014/relationships/chartEx",CS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/chartsheet",WS:["http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet","http://purl.oclc.org/ooxml/officeDocument/relationships/worksheet"],DS:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/dialogsheet",MS:"http://schemas.microsoft.com/office/2006/relationships/xlMacrosheet",IMG:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/image",DRAW:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing",XLMETA:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata",TCMNT:"http://schemas.microsoft.com/office/2017/10/relationships/threadedComment",PEOPLE:"http://schemas.microsoft.com/office/2017/10/relationships/person",CONN:"http://schemas.openxmlformats.org/officeDocument/2006/relationships/connections",VBA:"http://schemas.microsoft.com/office/2006/relationships/vbaProject"};CT_ODS="application/vnd.oasis.opendocument.spreadsheet";CORE_PROPS=[["cp:category","Category"],["cp:contentStatus","ContentStatus"],["cp:keywords","Keywords"],["cp:lastModifiedBy","LastAuthor"],["cp:lastPrinted","LastPrinted"],["cp:revision","RevNumber"],["cp:version","Version"],["dc:creator","Author"],["dc:description","Comments"],["dc:identifier","Identifier"],["dc:language","Language"],["dc:subject","Subject"],["dc:title","Title"],["dcterms:created","CreatedDate","date"],["dcterms:modified","ModifiedDate","date"]];EXT_PROPS=[["Application","Application","string"],["AppVersion","AppVersion","string"],["Company","Company","string"],["DocSecurity","DocSecurity","string"],["Manager","Manager","string"],["HyperlinksChanged","HyperlinksChanged","bool"],["SharedDoc","SharedDoc","bool"],["LinksUpToDate","LinksUpToDate","bool"],["ScaleCrop","ScaleCrop","bool"],["HeadingPairs","HeadingPairs","raw"],["TitlesOfParts","TitlesOfParts","raw"]],PseudoPropsPairs=["Worksheets","SheetNames","NamedRanges","DefinedNames","Chartsheets","ChartNames"];custregex=/<[^<>]+>[^<]*/g;XLMLDocPropsMap={Title:"Title",Subject:"Subject",Author:"Author",Keywords:"Keywords",Comments:"Description",LastAuthor:"LastAuthor",RevNumber:"Revision",Application:"AppName",LastPrinted:"LastPrinted",CreatedDate:"Created",ModifiedDate:"LastSaved",Category:"Category",Manager:"Manager",Company:"Company",AppVersion:"Version",ContentStatus:"ContentStatus",Identifier:"Identifier",Language:"Language"};XLSPSSkip=["CodePage","Thumbnail","_PID_LINKBASE","_PID_HLINKS","SystemIdentifier","FMTID"];parse_Ref=parse_RefU;FtTab={0:parse_FtSkip,4:parse_FtSkip,5:parse_FtSkip,6:parse_FtSkip,7:parse_FtCf,8:parse_FtSkip,9:parse_FtSkip,10:parse_FtSkip,11:parse_FtSkip,12:parse_FtSkip,13:parse_FtNts,14:parse_FtSkip,15:parse_FtSkip,16:parse_FtSkip,17:parse_FtSkip,18:parse_FtSkip,19:parse_FtSkip,20:parse_FtSkip,21:parse_FtCmo};parse_BIFF2Format=parse_XLUnicodeString2;write_BIFF4XF=write_BIFF3XF;parse_XLHeaderFooter=parse_OptXLUnicodeString;parse_BIFF5OT={8:function(blob,length){var tgt=blob.l+length;blob.l+=10;var cf=blob.read_shift(2);blob.l+=4,blob.l+=2,blob.l+=2,blob.l+=2,blob.l+=4;var cchName=blob.read_shift(1);return blob.l+=cchName,blob.l=tgt,{fmt:cf}}};parse_Blank=parse_XLSCell,parse_Scl=parseuint16a,parse_String=parse_XLUnicodeString;DBF_SUPPORTED_VERSIONS=[2,3,48,49,131,139,140,245],DBF=(function(){var dbf_codepage_map={1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127,8:865,9:437,10:850,11:437,13:437,14:850,15:437,16:850,17:437,18:850,19:932,20:850,21:437,22:850,23:865,24:437,25:437,26:850,27:437,28:863,29:850,31:852,34:852,35:852,36:860,37:850,38:866,55:850,64:852,77:936,78:949,79:950,80:874,87:1252,88:1252,89:1252,108:863,134:737,135:852,136:857,204:1257,255:16969},dbf_reverse_map=evert({1:437,2:850,3:1252,4:1e4,100:852,101:866,102:865,103:861,104:895,105:620,106:737,107:857,120:950,121:949,122:936,123:932,124:874,125:1255,126:1256,150:10007,151:10029,152:10006,200:1250,201:1251,202:1254,203:1253,0:20127});function dbf_to_aoa(buf,opts){var out=[],d=new_raw_buf(1);switch(opts.type){case"base64":d=s2a(Base64_decode(buf));break;case"binary":d=s2a(buf);break;case"buffer":case"array":d=buf;break}prep_blob(d,0);var ft=d.read_shift(1),memo=!!(ft&136),vfp=!1,l7=!1;switch(ft){case 2:break;case 3:break;case 48:vfp=!0,memo=!0;break;case 49:vfp=!0,memo=!0;break;case 131:break;case 139:break;case 140:l7=!0;break;case 245:break;default:throw new Error("DBF Unsupported Version: "+ft.toString(16))}var nrow=0,fpos=521;ft==2&&(nrow=d.read_shift(2)),d.l+=3,ft!=2&&(nrow=d.read_shift(4)),nrow>1048576&&(nrow=1e6),ft!=2&&(fpos=d.read_shift(2));var rlen=d.read_shift(2),current_cp=opts.codepage||1252;ft!=2&&(d.l+=16,d.read_shift(1),d[d.l]!==0&&(current_cp=dbf_codepage_map[d[d.l]]),d.l+=1,d.l+=2),l7&&(d.l+=36);for(var fields=[],field={},hend=Math.min(d.length,ft==2?521:fpos-10-(vfp?264:0)),ww=l7?32:11;d.l<hend&&d[d.l]!=13;)switch(field={},field.name=(typeof $cptable<"u"?$cptable.utils.decode(current_cp,d.slice(d.l,d.l+ww)):a2s(d.slice(d.l,d.l+ww))).replace(/[\u0000\r\n][\S\s]*$/g,""),d.l+=ww,field.type=String.fromCharCode(d.read_shift(1)),ft!=2&&!l7&&(field.offset=d.read_shift(4)),field.len=d.read_shift(1),ft==2&&(field.offset=d.read_shift(2)),field.dec=d.read_shift(1),field.name.length&&fields.push(field),ft!=2&&(d.l+=l7?13:14),field.type){case"B":(!vfp||field.len!=8)&&opts.WTF&&console.log("Skipping "+field.name+":"+field.type);break;case"G":case"P":opts.WTF&&console.log("Skipping "+field.name+":"+field.type);break;case"+":case"0":case"@":case"C":case"D":case"F":case"I":case"L":case"M":case"N":case"O":case"T":case"Y":break;default:throw new Error("Unknown Field Type: "+field.type)}if(d[d.l]!==13&&(d.l=fpos-1),d.read_shift(1)!==13)throw new Error("DBF Terminator not found "+d.l+" "+d[d.l]);d.l=fpos;var R=0,C=0;for(out[0]=[],C=0;C!=fields.length;++C)out[0][C]=fields[C].name;for(;nrow-- >0;){if(d[d.l]===42){d.l+=rlen;continue}for(++d.l,out[++R]=[],C=0,C=0;C!=fields.length;++C){var dd=d.slice(d.l,d.l+fields[C].len);d.l+=fields[C].len,prep_blob(dd,0);var s=typeof $cptable<"u"?$cptable.utils.decode(current_cp,dd):a2s(dd);switch(fields[C].type){case"C":s.trim().length&&(out[R][C]=s.replace(/([^\s])\s+$/,"$1"));break;case"D":s.length===8?(out[R][C]=new Date(Date.UTC(+s.slice(0,4),+s.slice(4,6)-1,+s.slice(6,8),0,0,0,0)),opts&&opts.UTC||(out[R][C]=utc_to_local(out[R][C]))):out[R][C]=s;break;case"F":out[R][C]=parseFloat(s.trim());break;case"+":case"I":out[R][C]=l7?dd.read_shift(-4,"i")^2147483648:dd.read_shift(4,"i");break;case"L":switch(s.trim().toUpperCase()){case"Y":case"T":out[R][C]=!0;break;case"N":case"F":out[R][C]=!1;break;case"":case"\0":case"?":break;default:throw new Error("DBF Unrecognized L:|"+s+"|")}break;case"M":if(!memo)throw new Error("DBF Unexpected MEMO for type "+ft.toString(16));out[R][C]="##MEMO##"+(l7?parseInt(s.trim(),10):dd.read_shift(4));break;case"N":s=s.replace(/\u0000/g,"").trim(),s&&s!="."&&(out[R][C]=+s||0);break;case"@":out[R][C]=new Date(dd.read_shift(-8,"f")-621356832e5);break;case"T":{var hi=dd.read_shift(4),lo=dd.read_shift(4);if(hi==0&&lo==0)break;out[R][C]=new Date((hi-2440588)*864e5+lo),opts&&opts.UTC||(out[R][C]=utc_to_local(out[R][C]))}break;case"Y":out[R][C]=dd.read_shift(4,"i")/1e4+dd.read_shift(4,"i")/1e4*Math.pow(2,32);break;case"O":out[R][C]=-dd.read_shift(-8,"f");break;case"B":if(vfp&&fields[C].len==8){out[R][C]=dd.read_shift(8,"f");break}case"G":case"P":dd.l+=fields[C].len;break;case"0":if(fields[C].name==="_NullFlags")break;default:throw new Error("DBF Unsupported data type "+fields[C].type)}}}if(ft!=2&&d.l<d.length&&d[d.l++]!=26)throw new Error("DBF EOF Marker missing "+(d.l-1)+" of "+d.length+" "+d[d.l-1].toString(16));return opts&&opts.sheetRows&&(out=out.slice(0,opts.sheetRows)),opts.DBF=fields,out}function dbf_to_sheet(buf,opts){var o=opts||{};o.dateNF||(o.dateNF="yyyymmdd");var ws=aoa_to_sheet(dbf_to_aoa(buf,o),o);return ws["!cols"]=o.DBF.map(function(field){return{wch:field.len,DBF:field}}),delete o.DBF,ws}function dbf_to_workbook(buf,opts){try{var o=sheet_to_workbook(dbf_to_sheet(buf,opts),opts);return o.bookType="dbf",o}catch(e){if(opts&&opts.WTF)throw e}return{SheetNames:[],Sheets:{}}}var _RLEN={B:8,C:250,L:1,D:8,"?":0,"":0};function sheet_to_dbf(ws,opts){if(!ws["!ref"])throw new Error("Cannot export empty sheet to DBF");var o=opts||{},old_cp=current_codepage;if(+o.codepage>=0&&set_cp(+o.codepage),o.type=="string")throw new Error("Cannot write DBF to JS string");var ba=buf_array(),aoa=sheet_to_json(ws,{header:1,raw:!0,cellDates:!0}),headers=aoa[0],data=aoa.slice(1),cols=ws["!cols"]||[],i=0,j=0,hcnt=0,rlen=1;for(i=0;i<headers.length;++i){if(((cols[i]||{}).DBF||{}).name){headers[i]=cols[i].DBF.name,++hcnt;continue}if(headers[i]!=null){if(++hcnt,typeof headers[i]=="number"&&(headers[i]=headers[i].toString(10)),typeof headers[i]!="string")throw new Error("DBF Invalid column name "+headers[i]+" |"+typeof headers[i]+"|");if(headers.indexOf(headers[i])!==i){for(j=0;j<1024;++j)if(headers.indexOf(headers[i]+"_"+j)==-1){headers[i]+="_"+j;break}}}}var range=safe_decode_range(ws["!ref"]),coltypes=[],colwidths=[],coldecimals=[];for(i=0;i<=range.e.c-range.s.c;++i){var guess="",_guess="",maxlen=0,col=[];for(j=0;j<data.length;++j)data[j][i]!=null&&col.push(data[j][i]);if(col.length==0||headers[i]==null){coltypes[i]="?";continue}for(j=0;j<col.length;++j){switch(typeof col[j]){case"number":_guess="B";break;case"string":_guess="C";break;case"boolean":_guess="L";break;case"object":_guess=col[j]instanceof Date?"D":"C";break;default:_guess="C"}maxlen=Math.max(maxlen,(typeof $cptable<"u"&&typeof col[j]=="string"?$cptable.utils.encode(current_ansi,col[j]):String(col[j])).length),guess=guess&&guess!=_guess?"C":_guess}maxlen>250&&(maxlen=250),_guess=((cols[i]||{}).DBF||{}).type,_guess=="C"&&cols[i].DBF.len>maxlen&&(maxlen=cols[i].DBF.len),guess=="B"&&_guess=="N"&&(guess="N",coldecimals[i]=cols[i].DBF.dec,maxlen=cols[i].DBF.len),colwidths[i]=guess=="C"||_guess=="N"?maxlen:_RLEN[guess]||0,rlen+=colwidths[i],coltypes[i]=guess}var h=ba.next(32);for(h.write_shift(4,318902576),h.write_shift(4,data.length),h.write_shift(2,296+32*hcnt),h.write_shift(2,rlen),i=0;i<4;++i)h.write_shift(4,0);var cp=+dbf_reverse_map[current_codepage]||3;for(h.write_shift(4,0|cp<<8),dbf_codepage_map[cp]!=+o.codepage&&(o.codepage&&console.error("DBF Unsupported codepage "+current_codepage+", using 1252"),current_codepage=1252),i=0,j=0;i<headers.length;++i)if(headers[i]!=null){var hf=ba.next(32),_f=(headers[i].slice(-10)+"\0\0\0\0\0\0\0\0\0\0\0").slice(0,11);hf.write_shift(1,_f,"sbcs"),hf.write_shift(1,coltypes[i]=="?"?"C":coltypes[i],"sbcs"),hf.write_shift(4,j),hf.write_shift(1,colwidths[i]||_RLEN[coltypes[i]]||0),hf.write_shift(1,coldecimals[i]||0),hf.write_shift(1,2),hf.write_shift(4,0),hf.write_shift(1,0),hf.write_shift(4,0),hf.write_shift(4,0),j+=colwidths[i]||_RLEN[coltypes[i]]||0}var hb=ba.next(264);for(hb.write_shift(4,13),i=0;i<65;++i)hb.write_shift(4,0);for(i=0;i<data.length;++i){var rout=ba.next(rlen);for(rout.write_shift(1,0),j=0;j<headers.length;++j)if(headers[j]!=null)switch(coltypes[j]){case"L":rout.write_shift(1,data[i][j]==null?63:data[i][j]?84:70);break;case"B":rout.write_shift(8,data[i][j]||0,"f");break;case"N":var _n="0";for(typeof data[i][j]=="number"&&(_n=data[i][j].toFixed(coldecimals[j]||0)),_n.length>colwidths[j]&&(_n=_n.slice(0,colwidths[j])),hcnt=0;hcnt<colwidths[j]-_n.length;++hcnt)rout.write_shift(1,32);rout.write_shift(1,_n,"sbcs");break;case"D":data[i][j]?(rout.write_shift(4,("0000"+data[i][j].getFullYear()).slice(-4),"sbcs"),rout.write_shift(2,("00"+(data[i][j].getMonth()+1)).slice(-2),"sbcs"),rout.write_shift(2,("00"+data[i][j].getDate()).slice(-2),"sbcs")):rout.write_shift(8,"00000000","sbcs");break;case"C":var _l=rout.l,_s=String(data[i][j]!=null?data[i][j]:"").slice(0,colwidths[j]);for(rout.write_shift(1,_s,"cpstr"),_l+=colwidths[j]-rout.l,hcnt=0;hcnt<_l;++hcnt)rout.write_shift(1,32);break}}return current_codepage=old_cp,ba.next(1).write_shift(1,26),ba.end()}return{to_workbook:dbf_to_workbook,to_sheet:dbf_to_sheet,from_sheet:sheet_to_dbf}})(),SYLK=(function(){var sylk_escapes={AA:"\xC0",BA:"\xC1",CA:"\xC2",DA:195,HA:"\xC4",JA:197,AE:"\xC8",BE:"\xC9",CE:"\xCA",HE:"\xCB",AI:"\xCC",BI:"\xCD",CI:"\xCE",HI:"\xCF",AO:"\xD2",BO:"\xD3",CO:"\xD4",DO:213,HO:"\xD6",AU:"\xD9",BU:"\xDA",CU:"\xDB",HU:"\xDC",Aa:"\xE0",Ba:"\xE1",Ca:"\xE2",Da:227,Ha:"\xE4",Ja:229,Ae:"\xE8",Be:"\xE9",Ce:"\xEA",He:"\xEB",Ai:"\xEC",Bi:"\xED",Ci:"\xEE",Hi:"\xEF",Ao:"\xF2",Bo:"\xF3",Co:"\xF4",Do:245,Ho:"\xF6",Au:"\xF9",Bu:"\xFA",Cu:"\xFB",Hu:"\xFC",KC:"\xC7",Kc:"\xE7",q:"\xE6",z:"\u0153",a:"\xC6",j:"\u0152",DN:209,Dn:241,Hy:255,S:169,c:170,R:174,"B ":180,0:176,1:177,2:178,3:179,5:181,6:182,7:183,Q:185,k:186,b:208,i:216,l:222,s:240,y:248,"!":161,'"':162,"#":163,"(":164,"%":165,"'":167,"H ":168,"+":171,";":187,"<":188,"=":189,">":190,"?":191,"{":223},sylk_char_regex=new RegExp("\x1BN("+keys(sylk_escapes).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1").replace("{","\\{")+"|\\|)","gm");try{sylk_char_regex=new RegExp("\x1BN("+keys(sylk_escapes).join("|").replace(/\|\|\|/,"|\\||").replace(/([?()+])/g,"\\$1")+"|\\|)","gm")}catch{}var sylk_char_fn=function(_,$1){var o=sylk_escapes[$1];return typeof o=="number"?_getansi(o):o},decode_sylk_char=function($$,$1,$2){var newcc=$1.charCodeAt(0)-32<<4|$2.charCodeAt(0)-48;return newcc==59?$$:_getansi(newcc)};sylk_escapes["|"]=254;var encode_sylk_str=function($$){return $$.replace(/\n/g,"\x1B :").replace(/\r/g,"\x1B =")};function sylk_to_aoa(d,opts){switch(opts.type){case"base64":return sylk_to_aoa_str(Base64_decode(d),opts);case"binary":return sylk_to_aoa_str(d,opts);case"buffer":return sylk_to_aoa_str(has_buf&&Buffer.isBuffer(d)?d.toString("binary"):a2s(d),opts);case"array":return sylk_to_aoa_str(cc2str(d),opts)}throw new Error("Unrecognized type "+opts.type)}function sylk_to_aoa_str(str,opts){var records=str.split(/[\n\r]+/),R=-1,C=-1,ri=0,rj=0,arr=[],formats=[],next_cell_format=null,sht={},rowinfo=[],colinfo=[],cw=[],Mval=0,j,wb={Workbook:{WBProps:{},Names:[]}};for(+opts.codepage>=0&&set_cp(+opts.codepage);ri!==records.length;++ri){Mval=0;var rstr=records[ri].trim().replace(/\x1B([\x20-\x2F])([\x30-\x3F])/g,decode_sylk_char).replace(sylk_char_regex,sylk_char_fn),record=rstr.replace(/;;/g,"\0").split(";").map(function(x){return x.replace(/\u0000/g,";")}),RT=record[0],val2;if(rstr.length>0)switch(RT){case"ID":break;case"E":break;case"B":break;case"O":for(rj=1;rj<record.length;++rj)switch(record[rj].charAt(0)){case"V":{var d1904=parseInt(record[rj].slice(1),10);d1904>=1&&d1904<=4&&(wb.Workbook.WBProps.date1904=!0)}break}break;case"W":break;case"P":record[1].charAt(0)==="P"&&formats.push(rstr.slice(3).replace(/;;/g,";"));break;case"NN":{var nn={Sheet:0};for(rj=1;rj<record.length;++rj)switch(record[rj].charAt(0)){case"N":nn.Name=record[rj].slice(1);break;case"E":nn.Ref=(opts&&opts.sheet||"Sheet1")+"!"+rc_to_a1(record[rj].slice(1));break}wb.Workbook.Names.push(nn)}break;case"C":var C_seen_K=!1,C_seen_X=!1,C_seen_S=!1,C_seen_E=!1,_R=-1,_C=-1,formula="",cell_t="z",cmnt="";for(rj=1;rj<record.length;++rj)switch(record[rj].charAt(0)){case"A":cmnt=record[rj].slice(1);break;case"X":C=parseInt(record[rj].slice(1),10)-1,C_seen_X=!0;break;case"Y":for(R=parseInt(record[rj].slice(1),10)-1,C_seen_X||(C=0),j=arr.length;j<=R;++j)arr[j]=[];break;case"K":val2=record[rj].slice(1),val2.charAt(0)==='"'?(val2=val2.slice(1,val2.length-1),cell_t="s"):val2==="TRUE"||val2==="FALSE"?(val2=val2==="TRUE",cell_t="b"):val2.charAt(0)=="#"&&RBErr[val2]!=null?(cell_t="e",val2=RBErr[val2]):isNaN(fuzzynum(val2))||(val2=fuzzynum(val2),cell_t="n",next_cell_format!==null&&fmt_is_date(next_cell_format)&&opts.cellDates&&(val2=numdate(wb.Workbook.WBProps.date1904?val2+1462:val2),cell_t=typeof val2=="number"?"n":"d")),typeof $cptable<"u"&&typeof val2=="string"&&(opts||{}).type!="string"&&(opts||{}).codepage&&(val2=$cptable.utils.decode(opts.codepage,val2)),C_seen_K=!0;break;case"E":C_seen_E=!0,formula=rc_to_a1(record[rj].slice(1),{r:R,c:C});break;case"S":C_seen_S=!0;break;case"G":break;case"R":_R=parseInt(record[rj].slice(1),10)-1;break;case"C":_C=parseInt(record[rj].slice(1),10)-1;break;default:if(opts&&opts.WTF)throw new Error("SYLK bad record "+rstr)}if(C_seen_K&&(arr[R][C]?(arr[R][C].t=cell_t,arr[R][C].v=val2):arr[R][C]={t:cell_t,v:val2},next_cell_format&&(arr[R][C].z=next_cell_format),opts.cellText!==!1&&next_cell_format&&(arr[R][C].w=SSF_format(arr[R][C].z,arr[R][C].v,{date1904:wb.Workbook.WBProps.date1904})),next_cell_format=null),C_seen_S){if(C_seen_E)throw new Error("SYLK shared formula cannot have own formula");var shrbase=_R>-1&&arr[_R][_C];if(!shrbase||!shrbase[1])throw new Error("SYLK shared formula cannot find base");formula=shift_formula_str(shrbase[1],{r:R-_R,c:C-_C})}formula&&(arr[R][C]?arr[R][C].f=formula:arr[R][C]={t:"n",f:formula}),cmnt&&(arr[R][C]||(arr[R][C]={t:"z"}),arr[R][C].c=[{a:"SheetJSYLK",t:cmnt}]);break;case"F":var F_seen=0;for(rj=1;rj<record.length;++rj)switch(record[rj].charAt(0)){case"X":C=parseInt(record[rj].slice(1),10)-1,++F_seen;break;case"Y":for(R=parseInt(record[rj].slice(1),10)-1,j=arr.length;j<=R;++j)arr[j]=[];break;case"M":Mval=parseInt(record[rj].slice(1),10)/20;break;case"F":break;case"G":break;case"P":next_cell_format=formats[parseInt(record[rj].slice(1),10)];break;case"S":break;case"D":break;case"N":break;case"W":for(cw=record[rj].slice(1).split(" "),j=parseInt(cw[0],10);j<=parseInt(cw[1],10);++j)Mval=parseInt(cw[2],10),colinfo[j-1]=Mval===0?{hidden:!0}:{wch:Mval};break;case"C":C=parseInt(record[rj].slice(1),10)-1,colinfo[C]||(colinfo[C]={});break;case"R":R=parseInt(record[rj].slice(1),10)-1,rowinfo[R]||(rowinfo[R]={}),Mval>0?(rowinfo[R].hpt=Mval,rowinfo[R].hpx=pt2px(Mval)):Mval===0&&(rowinfo[R].hidden=!0);break;default:if(opts&&opts.WTF)throw new Error("SYLK bad record "+rstr)}F_seen<1&&(next_cell_format=null);break;default:if(opts&&opts.WTF)throw new Error("SYLK bad record "+rstr)}}return rowinfo.length>0&&(sht["!rows"]=rowinfo),colinfo.length>0&&(sht["!cols"]=colinfo),colinfo.forEach(function(col){process_col(col)}),opts&&opts.sheetRows&&(arr=arr.slice(0,opts.sheetRows)),[arr,sht,wb]}function sylk_to_workbook(d,opts){var aoasht=sylk_to_aoa(d,opts),aoa=aoasht[0],ws=aoasht[1],wb=aoasht[2],_opts=dup(opts);_opts.date1904=(((wb||{}).Workbook||{}).WBProps||{}).date1904;var o=aoa_to_sheet(aoa,_opts);keys(ws).forEach(function(k){o[k]=ws[k]});var outwb=sheet_to_workbook(o,opts);return keys(wb).forEach(function(k){outwb[k]=wb[k]}),outwb.bookType="sylk",outwb}function write_ws_cell_sylk(cell2,ws,R,C,opts,date1904){var o="C;Y"+(R+1)+";X"+(C+1)+";K";switch(cell2.t){case"n":o+=isFinite(cell2.v)?cell2.v||0:BErr[isNaN(cell2.v)?36:7],cell2.f&&!cell2.F&&(o+=";E"+a1_to_rc(cell2.f,{r:R,c:C}));break;case"b":o+=cell2.v?"TRUE":"FALSE";break;case"e":o+=cell2.w||BErr[cell2.v]||cell2.v;break;case"d":o+=datenum(parseDate(cell2.v,date1904),date1904);break;case"s":o+='"'+(cell2.v==null?"":String(cell2.v)).replace(/"/g,"").replace(/;/g,";;")+'"';break}return o}function write_ws_cmnt_sylk(cmnt,R,C){var o="C;Y"+(R+1)+";X"+(C+1)+";A";return o+=encode_sylk_str(cmnt.map(function(c){return c.t}).join("")),o}function write_ws_cols_sylk(out,cols){cols.forEach(function(col,i){var rec="F;W"+(i+1)+" "+(i+1)+" ";col.hidden?rec+="0":(typeof col.width=="number"&&!col.wpx&&(col.wpx=width2px(col.width)),typeof col.wpx=="number"&&!col.wch&&(col.wch=px2char(col.wpx)),typeof col.wch=="number"&&(rec+=Math.round(col.wch))),rec.charAt(rec.length-1)!=" "&&out.push(rec)})}function write_ws_rows_sylk(out,rows){rows.forEach(function(row,i){var rec="F;";row.hidden?rec+="M0;":row.hpt?rec+="M"+20*row.hpt+";":row.hpx&&(rec+="M"+20*px2pt(row.hpx)+";"),rec.length>2&&out.push(rec+"R"+(i+1))})}function sheet_to_sylk(ws,opts,wb){opts||(opts={}),opts._formats=["General"];var preamble=["ID;PSheetJS;N;E"],o=[],r=safe_decode_range(ws["!ref"]||"A1"),cell2,dense=ws["!data"]!=null,RS=`\r
|
|
64
|
-
`,d1904=(((wb||{}).Workbook||{}).WBProps||{}).date1904,_lastfmt="General";preamble.push("P;PGeneral");var R=r.s.r,C=r.s.c,p=[];if(ws["!ref"]){for(R=r.s.r;R<=r.e.r;++R)if(!(dense&&!ws["!data"][R])){for(p=[],C=r.s.c;C<=r.e.c;++C)cell2=dense?ws["!data"][R][C]:ws[encode_col(C)+encode_row(R)],!(!cell2||!cell2.c)&&p.push(write_ws_cmnt_sylk(cell2.c,R,C));p.length&&o.push(p.join(RS))}}if(ws["!ref"]){for(R=r.s.r;R<=r.e.r;++R)if(!(dense&&!ws["!data"][R])){for(p=[],C=r.s.c;C<=r.e.c;++C)if(cell2=dense?ws["!data"][R][C]:ws[encode_col(C)+encode_row(R)],!(!cell2||cell2.v==null&&(!cell2.f||cell2.F))){if((cell2.z||(cell2.t=="d"?table_fmt[14]:"General"))!=_lastfmt){var ifmt=opts._formats.indexOf(cell2.z);ifmt==-1&&(opts._formats.push(cell2.z),ifmt=opts._formats.length-1,preamble.push("P;P"+cell2.z.replace(/;/g,";;"))),p.push("F;P"+ifmt+";Y"+(R+1)+";X"+(C+1))}p.push(write_ws_cell_sylk(cell2,ws,R,C,opts,d1904))}o.push(p.join(RS))}}return preamble.push("F;P0;DG0G8;M255"),ws["!cols"]&&write_ws_cols_sylk(preamble,ws["!cols"]),ws["!rows"]&&write_ws_rows_sylk(preamble,ws["!rows"]),ws["!ref"]&&preamble.push("B;Y"+(r.e.r-r.s.r+1)+";X"+(r.e.c-r.s.c+1)+";D"+[r.s.c,r.s.r,r.e.c,r.e.r].join(" ")),preamble.push("O;L;D;B"+(d1904?";V4":"")+";K47;G100 0.001"),delete opts._formats,preamble.join(RS)+RS+o.join(RS)+RS+"E"+RS}return{to_workbook:sylk_to_workbook,from_sheet:sheet_to_sylk}})(),DIF=(function(){function dif_to_aoa(d,opts){switch(opts.type){case"base64":return dif_to_aoa_str(Base64_decode(d),opts);case"binary":return dif_to_aoa_str(d,opts);case"buffer":return dif_to_aoa_str(has_buf&&Buffer.isBuffer(d)?d.toString("binary"):a2s(d),opts);case"array":return dif_to_aoa_str(cc2str(d),opts)}throw new Error("Unrecognized type "+opts.type)}function dif_to_aoa_str(str,opts){for(var records=str.split(`
|
|
65
|
-
`),R=-1,C=-1,ri=0,arr=[];ri!==records.length;++ri){if(records[ri].trim()==="BOT"){arr[++R]=[],C=0;continue}if(!(R<0)){var metadata=records[ri].trim().split(","),type=metadata[0],value=metadata[1];++ri;for(var data=records[ri]||"";(data.match(/["]/g)||[]).length&1&&ri<records.length-1;)data+=`
|
|
66
|
-
`+records[++ri];switch(data=data.trim(),+type){case-1:if(data==="BOT"){arr[++R]=[],C=0;continue}else if(data!=="EOD")throw new Error("Unrecognized DIF special command "+data);break;case 0:data==="TRUE"?arr[R][C]=!0:data==="FALSE"?arr[R][C]=!1:isNaN(fuzzynum(value))?isNaN(fuzzydate(value).getDate())?arr[R][C]=value:(arr[R][C]=parseDate(value),opts&&opts.UTC||(arr[R][C]=utc_to_local(arr[R][C]))):arr[R][C]=fuzzynum(value),++C;break;case 1:data=data.slice(1,data.length-1),data=data.replace(/""/g,'"'),DIF_XL&&data&&data.match(/^=".*"$/)&&(data=data.slice(2,-1)),arr[R][C++]=data!==""?data:null;break}if(data==="EOD")break}}return opts&&opts.sheetRows&&(arr=arr.slice(0,opts.sheetRows)),arr}function dif_to_sheet(str,opts){return aoa_to_sheet(dif_to_aoa(str,opts),opts)}function dif_to_workbook(str,opts){var o=sheet_to_workbook(dif_to_sheet(str,opts),opts);return o.bookType="dif",o}function make_value(v,s){return"0,"+String(v)+`\r
|
|
67
|
-
`+s}function make_value_str(s){return`1,0\r
|
|
68
|
-
"`+s.replace(/"/g,'""')+'"'}function sheet_to_dif(ws){var _DIF_XL=DIF_XL;if(!ws["!ref"])throw new Error("Cannot export empty sheet to DIF");for(var r=safe_decode_range(ws["!ref"]),dense=ws["!data"]!=null,o=[`TABLE\r
|
|
69
|
-
0,1\r
|
|
70
|
-
"sheetjs"\r
|
|
71
|
-
`,`VECTORS\r
|
|
72
|
-
0,`+(r.e.r-r.s.r+1)+`\r
|
|
73
|
-
""\r
|
|
74
|
-
`,`TUPLES\r
|
|
75
|
-
0,`+(r.e.c-r.s.c+1)+`\r
|
|
76
|
-
""\r
|
|
77
|
-
`,`DATA\r
|
|
78
|
-
0,0\r
|
|
79
|
-
""\r
|
|
80
|
-
`],R=r.s.r;R<=r.e.r;++R){for(var row=dense?ws["!data"][R]:[],p=`-1,0\r
|
|
81
|
-
BOT\r
|
|
82
|
-
`,C=r.s.c;C<=r.e.c;++C){var cell2=dense?row&&row[C]:ws[encode_cell({r:R,c:C})];if(cell2==null){p+=`1,0\r
|
|
83
|
-
""\r
|
|
84
|
-
`;continue}switch(cell2.t){case"n":_DIF_XL?cell2.w!=null?p+="0,"+cell2.w+`\r
|
|
85
|
-
V`:cell2.v!=null?p+=make_value(cell2.v,"V"):cell2.f!=null&&!cell2.F?p+=make_value_str("="+cell2.f):p+=`1,0\r
|
|
86
|
-
""`:cell2.v==null?p+=`1,0\r
|
|
87
|
-
""`:p+=make_value(cell2.v,"V");break;case"b":p+=cell2.v?make_value(1,"TRUE"):make_value(0,"FALSE");break;case"s":p+=make_value_str(!_DIF_XL||isNaN(+cell2.v)?cell2.v:'="'+cell2.v+'"');break;case"d":cell2.w||(cell2.w=SSF_format(cell2.z||table_fmt[14],datenum(parseDate(cell2.v)))),_DIF_XL?p+=make_value(cell2.w,"V"):p+=make_value_str(cell2.w);break;default:p+=`1,0\r
|
|
88
|
-
""`}p+=`\r
|
|
89
|
-
`}o.push(p)}return o.join("")+`-1,0\r
|
|
90
|
-
EOD`}return{to_workbook:dif_to_workbook,to_sheet:dif_to_sheet,from_sheet:sheet_to_dif}})(),ETH=(function(){function decode(s){return s.replace(/\\b/g,"\\").replace(/\\c/g,":").replace(/\\n/g,`
|
|
91
|
-
`)}function encode(s){return s.replace(/\\/g,"\\b").replace(/:/g,"\\c").replace(/\n/g,"\\n")}function eth_to_aoa(str,opts){for(var records=str.split(`
|
|
92
|
-
`),R=-1,C=-1,ri=0,arr=[];ri!==records.length;++ri){var record=records[ri].trim().split(":");if(record[0]==="cell"){var addr=decode_cell(record[1]);if(arr.length<=addr.r)for(R=arr.length;R<=addr.r;++R)arr[R]||(arr[R]=[]);switch(R=addr.r,C=addr.c,record[2]){case"t":arr[R][C]=decode(record[3]);break;case"v":arr[R][C]=+record[3];break;case"vtf":var _f=record[record.length-1];case"vtc":record[3]==="nl"?arr[R][C]=!!+record[4]:arr[R][C]=record[record.length-1].charAt(0)=="#"?{t:"e",v:RBErr[record[record.length-1]]}:+record[4],record[2]=="vtf"&&(arr[R][C]=[arr[R][C],_f])}}}return opts&&opts.sheetRows&&(arr=arr.slice(0,opts.sheetRows)),arr}function eth_to_sheet(d,opts){return aoa_to_sheet(eth_to_aoa(d,opts),opts)}function eth_to_workbook(d,opts){return sheet_to_workbook(eth_to_sheet(d,opts),opts)}var header=["socialcalc:version:1.5","MIME-Version: 1.0","Content-Type: multipart/mixed; boundary=SocialCalcSpreadsheetControlSave"].join(`
|
|
93
|
-
`),sep=["--SocialCalcSpreadsheetControlSave","Content-type: text/plain; charset=UTF-8"].join(`
|
|
94
|
-
`)+`
|
|
95
|
-
`,meta=["# SocialCalc Spreadsheet Control Save","part:sheet"].join(`
|
|
96
|
-
`),end="--SocialCalcSpreadsheetControlSave--";function sheet_to_eth_data(ws){if(!ws||!ws["!ref"])return"";for(var o=[],oo=[],cell2,coord="",r=decode_range(ws["!ref"]),dense=ws["!data"]!=null,R=r.s.r;R<=r.e.r;++R)for(var C=r.s.c;C<=r.e.c;++C)if(coord=encode_cell({r:R,c:C}),cell2=dense?(ws["!data"][R]||[])[C]:ws[coord],!(!cell2||cell2.v==null||cell2.t==="z")){switch(oo=["cell",coord,"t"],cell2.t){case"s":oo.push(encode(cell2.v));break;case"b":oo[2]="vt"+(cell2.f?"f":"c"),oo[3]="nl",oo[4]=cell2.v?"1":"0",oo[5]=encode(cell2.f||(cell2.v?"TRUE":"FALSE"));break;case"d":var t=datenum(parseDate(cell2.v));oo[2]="vtc",oo[3]="nd",oo[4]=""+t,oo[5]=cell2.w||SSF_format(cell2.z||table_fmt[14],t);break;case"n":isFinite(cell2.v)?cell2.f?(oo[2]="vtf",oo[3]="n",oo[4]=cell2.v,oo[5]=encode(cell2.f)):(oo[2]="v",oo[3]=cell2.v):(oo[2]="vt"+(cell2.f?"f":"c"),oo[3]="e"+BErr[isNaN(cell2.v)?36:7],oo[4]="0",oo[5]=cell2.f||oo[3].slice(1),oo[6]="e",oo[7]=oo[3].slice(1));break;case"e":continue}o.push(oo.join(":"))}return o.push("sheet:c:"+(r.e.c-r.s.c+1)+":r:"+(r.e.r-r.s.r+1)+":tvf:1"),o.push("valueformat:1:text-wiki"),o.join(`
|
|
97
|
-
`)}function sheet_to_eth(ws){return[header,sep,meta,sep,sheet_to_eth_data(ws),end].join(`
|
|
98
|
-
`)}return{to_workbook:eth_to_workbook,to_sheet:eth_to_sheet,from_sheet:sheet_to_eth}})(),PRN=(function(){function set_text_arr(data,arr,R,C,o){o.raw?arr[R][C]=data:data===""||(data==="TRUE"?arr[R][C]=!0:data==="FALSE"?arr[R][C]=!1:isNaN(fuzzynum(data))?isNaN(fuzzydate(data).getDate())?data.charCodeAt(0)==35&&RBErr[data]!=null?arr[R][C]={t:"e",v:RBErr[data],w:data}:arr[R][C]=data:arr[R][C]=parseDate(data):arr[R][C]=fuzzynum(data))}function prn_to_aoa_str(f,opts){var o=opts||{},arr=[];if(!f||f.length===0)return arr;for(var lines=f.split(/[\r\n]/),L=lines.length-1;L>=0&&lines[L].length===0;)--L;for(var start=10,idx=0,R=0;R<=L;++R)idx=lines[R].indexOf(" "),idx==-1?idx=lines[R].length:idx++,start=Math.max(start,idx);for(R=0;R<=L;++R){arr[R]=[];var C=0;for(set_text_arr(lines[R].slice(0,start).trim(),arr,R,C,o),C=1;C<=(lines[R].length-start)/10+1;++C)set_text_arr(lines[R].slice(start+(C-1)*10,start+C*10).trim(),arr,R,C,o)}return o.sheetRows&&(arr=arr.slice(0,o.sheetRows)),arr}var guess_seps={44:",",9:" ",59:";",124:"|"},guess_sep_weights={44:3,9:2,59:1,124:0};function guess_sep(str){for(var cnt={},instr=!1,end=0,cc=0;end<str.length;++end)(cc=str.charCodeAt(end))==34?instr=!instr:!instr&&cc in guess_seps&&(cnt[cc]=(cnt[cc]||0)+1);cc=[];for(end in cnt)Object.prototype.hasOwnProperty.call(cnt,end)&&cc.push([cnt[end],end]);if(!cc.length){cnt=guess_sep_weights;for(end in cnt)Object.prototype.hasOwnProperty.call(cnt,end)&&cc.push([cnt[end],end])}return cc.sort(function(a,b){return a[0]-b[0]||guess_sep_weights[a[1]]-guess_sep_weights[b[1]]}),guess_seps[cc.pop()[1]]||44}function dsv_to_sheet_str(str,opts){var o=opts||{},sep="";DENSE!=null&&o.dense==null&&(o.dense=DENSE);var ws={};o.dense&&(ws["!data"]=[]);var range={s:{c:0,r:0},e:{c:0,r:0}};str.slice(0,4)=="sep="?str.charCodeAt(5)==13&&str.charCodeAt(6)==10?(sep=str.charAt(4),str=str.slice(7)):str.charCodeAt(5)==13||str.charCodeAt(5)==10?(sep=str.charAt(4),str=str.slice(6)):sep=guess_sep(str.slice(0,1024)):o&&o.FS?sep=o.FS:sep=guess_sep(str.slice(0,1024));var R=0,C=0,v=0,start=0,end=0,sepcc=sep.charCodeAt(0),instr=!1,cc=0,startcc=str.charCodeAt(0),_re=o.dateNF!=null?dateNF_regex(o.dateNF):null;function finish_cell(){var s=str.slice(start,end);s.slice(-1)=="\r"&&(s=s.slice(0,-1));var cell2={};if(s.charAt(0)=='"'&&s.charAt(s.length-1)=='"'&&(s=s.slice(1,-1).replace(/""/g,'"')),o.cellText!==!1&&(cell2.w=s),s.length===0)cell2.t="z";else if(o.raw)cell2.t="s",cell2.v=s;else if(s.trim().length===0)cell2.t="s",cell2.v=s;else if(s.charCodeAt(0)==61)s.charCodeAt(1)==34&&s.charCodeAt(s.length-1)==34?(cell2.t="s",cell2.v=s.slice(2,-1).replace(/""/g,'"')):fuzzyfmla(s)?(cell2.t="s",cell2.f=s.slice(1),cell2.v=s):(cell2.t="s",cell2.v=s);else if(s=="TRUE")cell2.t="b",cell2.v=!0;else if(s=="FALSE")cell2.t="b",cell2.v=!1;else if(!isNaN(v=fuzzynum(s)))cell2.t="n",cell2.v=v;else if(!isNaN((v=fuzzydate(s)).getDate())||_re&&s.match(_re)){if(cell2.z=o.dateNF||table_fmt[14],_re&&s.match(_re)){var news=dateNF_fix(s,o.dateNF,s.match(_re)||[]);v=parseDate(news),o&&o.UTC===!1&&(v=utc_to_local(v))}else o&&o.UTC===!1?v=utc_to_local(v):o.cellText!==!1&&o.dateNF&&(cell2.w=SSF_format(cell2.z,v));o.cellDates?(cell2.t="d",cell2.v=v):(cell2.t="n",cell2.v=datenum(v)),o.cellNF||delete cell2.z}else s.charCodeAt(0)==35&&RBErr[s]!=null?(cell2.t="e",cell2.w=s,cell2.v=RBErr[s]):(cell2.t="s",cell2.v=s);if(cell2.t=="z"||(o.dense?(ws["!data"][R]||(ws["!data"][R]=[]),ws["!data"][R][C]=cell2):ws[encode_cell({c:C,r:R})]=cell2),start=end+1,startcc=str.charCodeAt(start),range.e.c<C&&(range.e.c=C),range.e.r<R&&(range.e.r=R),cc==sepcc)++C;else if(C=0,++R,o.sheetRows&&o.sheetRows<=R)return!0}outer:for(;end<str.length;++end)switch(cc=str.charCodeAt(end)){case 34:startcc===34&&(instr=!instr);break;case 13:if(instr)break;str.charCodeAt(end+1)==10&&++end;case sepcc:case 10:if(!instr&&finish_cell())break outer;break;default:break}return end-start>0&&finish_cell(),ws["!ref"]=encode_range(range),ws}function prn_to_sheet_str(str,opts){return!(opts&&opts.PRN)||opts.FS||str.slice(0,4)=="sep="||str.indexOf(" ")>=0||str.indexOf(",")>=0||str.indexOf(";")>=0?dsv_to_sheet_str(str,opts):aoa_to_sheet(prn_to_aoa_str(str,opts),opts)}function prn_to_sheet(d,opts){var str="",bytes=opts.type=="string"?[0,0,0,0]:firstbyte(d,opts);switch(opts.type){case"base64":str=Base64_decode(d);break;case"binary":str=d;break;case"buffer":opts.codepage==65001?str=d.toString("utf8"):opts.codepage&&typeof $cptable<"u"?str=$cptable.utils.decode(opts.codepage,d):str=has_buf&&Buffer.isBuffer(d)?d.toString("binary"):a2s(d);break;case"array":str=cc2str(d);break;case"string":str=d;break;default:throw new Error("Unrecognized type "+opts.type)}return bytes[0]==239&&bytes[1]==187&&bytes[2]==191?str=utf8read(str.slice(3)):opts.type!="string"&&opts.type!="buffer"&&opts.codepage==65001?str=utf8read(str):opts.type=="binary"&&typeof $cptable<"u"&&opts.codepage&&(str=$cptable.utils.decode(opts.codepage,$cptable.utils.encode(28591,str))),str.slice(0,19)=="socialcalc:version:"?ETH.to_sheet(opts.type=="string"?str:utf8read(str),opts):prn_to_sheet_str(str,opts)}function prn_to_workbook(d,opts){return sheet_to_workbook(prn_to_sheet(d,opts),opts)}function sheet_to_prn(ws){var o=[];if(!ws["!ref"])return"";for(var r=safe_decode_range(ws["!ref"]),cell2,dense=ws["!data"]!=null,R=r.s.r;R<=r.e.r;++R){for(var oo=[],C=r.s.c;C<=r.e.c;++C){var coord=encode_cell({r:R,c:C});if(cell2=dense?(ws["!data"][R]||[])[C]:ws[coord],!cell2||cell2.v==null){oo.push(" ");continue}for(var w=(cell2.w||(format_cell(cell2),cell2.w)||"").slice(0,10);w.length<10;)w+=" ";oo.push(w+(C===0?" ":""))}o.push(oo.join(""))}return o.join(`
|
|
99
|
-
`)}return{to_workbook:prn_to_workbook,to_sheet:prn_to_sheet,from_sheet:sheet_to_prn}})();WK_=(function(){function lotushopper(data,cb,opts){if(data){prep_blob(data,data.l||0);for(var Enum=opts.Enum||WK1Enum;data.l<data.length;){var RT=data.read_shift(2),R=Enum[RT]||Enum[65535],length=data.read_shift(2),tgt=data.l+length,d=R.f&&R.f(data,length,opts);if(data.l=tgt,cb(d,R,RT))return}}}function lotus_to_workbook(d,opts){switch(opts.type){case"base64":return lotus_to_workbook_buf(s2a(Base64_decode(d)),opts);case"binary":return lotus_to_workbook_buf(s2a(d),opts);case"buffer":case"array":return lotus_to_workbook_buf(d,opts)}throw"Unsupported type "+opts.type}var LOTUS_DATE_FMTS=["mmmm","dd-mmm-yyyy","dd-mmm","mmm-yyyy","@","mm/dd","hh:mm:ss AM/PM","hh:mm AM/PM","mm/dd/yyyy","mm/dd","hh:mm:ss","hh:mm"];function lotus_to_workbook_buf(d,opts){if(!d)return d;var o=opts||{};DENSE!=null&&o.dense==null&&(o.dense=DENSE);var s={},n="Sheet1",next_n="",sidx=0,sheets={},snames=[],realnames=[],sdata=[];o.dense&&(sdata=s["!data"]=[]);var refguess={s:{r:0,c:0},e:{r:0,c:0}},sheetRows=o.sheetRows||0,lastcell={};if(d[4]==81&&d[5]==80&&d[6]==87)return qpw_to_workbook_buf(d,opts);if(d[2]==0&&(d[3]==8||d[3]==9)&&d.length>=16&&d[14]==5&&d[15]===108)throw new Error("Unsupported Works 3 for Mac file");if(d[2]==2)o.Enum=WK1Enum,lotushopper(d,function(val2,R,RT){switch(RT){case 0:o.vers=val2,val2>=4096&&(o.qpro=!0);break;case 255:o.vers=val2,o.works=!0;break;case 6:refguess=val2;break;case 204:val2&&(next_n=val2);break;case 222:next_n=val2;break;case 15:case 51:(!o.qpro&&!o.works||RT==51)&&val2[1].v.charCodeAt(0)<48&&(val2[1].v=val2[1].v.slice(1)),(o.works||o.works2)&&(val2[1].v=val2[1].v.replace(/\r\n/g,`
|
|
100
|
-
`));case 13:case 14:case 16:(val2[2]&112)==112&&(val2[2]&15)>1&&(val2[2]&15)<15&&(val2[1].z=o.dateNF||LOTUS_DATE_FMTS[(val2[2]&15)-1]||table_fmt[14],o.cellDates&&(val2[1].v=numdate(val2[1].v),val2[1].t=typeof val2[1].v=="number"?"n":"d")),o.qpro&&val2[3]>sidx&&(s["!ref"]=encode_range(refguess),sheets[n]=s,snames.push(n),s={},o.dense&&(sdata=s["!data"]=[]),refguess={s:{r:0,c:0},e:{r:0,c:0}},sidx=val2[3],n=next_n||"Sheet"+(sidx+1),next_n="");var tmpcell=o.dense?(sdata[val2[0].r]||[])[val2[0].c]:s[encode_cell(val2[0])];if(tmpcell){tmpcell.t=val2[1].t,tmpcell.v=val2[1].v,val2[1].z!=null&&(tmpcell.z=val2[1].z),val2[1].f!=null&&(tmpcell.f=val2[1].f),lastcell=tmpcell;break}o.dense?(sdata[val2[0].r]||(sdata[val2[0].r]=[]),sdata[val2[0].r][val2[0].c]=val2[1]):s[encode_cell(val2[0])]=val2[1],lastcell=val2[1];break;case 21509:o.works2=!0;break;case 21506:val2==5281&&(lastcell.z="hh:mm:ss",o.cellDates&&lastcell.t=="n"&&(lastcell.v=numdate(lastcell.v),lastcell.t=typeof lastcell.v=="number"?"n":"d"));break}},o);else if(d[2]==26||d[2]==14)o.Enum=WK3Enum,d[2]==14&&(o.qpro=!0,d.l=0),lotushopper(d,function(val2,R,RT){switch(RT){case 204:n=val2;break;case 22:val2[1].v.charCodeAt(0)<48&&(val2[1].v=val2[1].v.slice(1)),val2[1].v=val2[1].v.replace(/\x0F./g,function($$){return String.fromCharCode($$.charCodeAt(1)-32)}).replace(/\r\n/g,`
|
|
101
|
-
`);case 23:case 24:case 25:case 37:case 39:case 40:if(val2[3]>sidx&&(s["!ref"]=encode_range(refguess),sheets[n]=s,snames.push(n),s={},o.dense&&(sdata=s["!data"]=[]),refguess={s:{r:0,c:0},e:{r:0,c:0}},sidx=val2[3],n="Sheet"+(sidx+1)),sheetRows>0&&val2[0].r>=sheetRows)break;o.dense?(sdata[val2[0].r]||(sdata[val2[0].r]=[]),sdata[val2[0].r][val2[0].c]=val2[1]):s[encode_cell(val2[0])]=val2[1],refguess.e.c<val2[0].c&&(refguess.e.c=val2[0].c),refguess.e.r<val2[0].r&&(refguess.e.r=val2[0].r);break;case 27:val2[14e3]&&(realnames[val2[14e3][0]]=val2[14e3][1]);break;case 1537:realnames[val2[0]]=val2[1],val2[0]==sidx&&(n=val2[1]);break;default:break}},o);else throw new Error("Unrecognized LOTUS BOF "+d[2]);if(s["!ref"]=encode_range(refguess),sheets[next_n||n]=s,snames.push(next_n||n),!realnames.length)return{SheetNames:snames,Sheets:sheets};for(var osheets={},rnames=[],i=0;i<realnames.length;++i)sheets[snames[i]]?(rnames.push(realnames[i]||snames[i]),osheets[realnames[i]]=sheets[realnames[i]]||sheets[snames[i]]):(rnames.push(realnames[i]),osheets[realnames[i]]={"!ref":"A1"});return{SheetNames:rnames,Sheets:osheets}}function sheet_to_wk1(ws,opts){var o=opts||{};if(+o.codepage>=0&&set_cp(+o.codepage),o.type=="string")throw new Error("Cannot write WK1 to JS string");var ba=buf_array();if(!ws["!ref"])throw new Error("Cannot export empty sheet to WK1");var range=safe_decode_range(ws["!ref"]),dense=ws["!data"]!=null,cols=[];write_biff_rec(ba,0,write_BOF_WK1(1030)),write_biff_rec(ba,6,write_RANGE(range));for(var max_R=Math.min(range.e.r,8191),C=range.s.c;C<=range.e.c;++C)cols[C]=encode_col(C);for(var R=range.s.r;R<=max_R;++R){var rr=encode_row(R);for(C=range.s.c;C<=range.e.c;++C){var cell2=dense?(ws["!data"][R]||[])[C]:ws[cols[C]+rr];if(!(!cell2||cell2.t=="z"))switch(cell2.t){case"n":(cell2.v|0)==cell2.v&&cell2.v>=-32768&&cell2.v<=32767?write_biff_rec(ba,13,write_INTEGER(R,C,cell2)):write_biff_rec(ba,14,write_NUMBER(R,C,cell2));break;case"d":var dc=datenum(cell2.v);(dc|0)==dc&&dc>=-32768&&dc<=32767?write_biff_rec(ba,13,write_INTEGER(R,C,{t:"n",v:dc,z:cell2.z||table_fmt[14]})):write_biff_rec(ba,14,write_NUMBER(R,C,{t:"n",v:dc,z:cell2.z||table_fmt[14]}));break;default:var str=format_cell(cell2);write_biff_rec(ba,15,write_LABEL(R,C,str.slice(0,239)))}}}return write_biff_rec(ba,1),ba.end()}function book_to_wk3(wb,opts){var o=opts||{};if(+o.codepage>=0&&set_cp(+o.codepage),o.type=="string")throw new Error("Cannot write WK3 to JS string");var ba=buf_array();write_biff_rec(ba,0,write_BOF_WK3(wb));for(var i=0,cnt=0;i<wb.SheetNames.length;++i)(wb.Sheets[wb.SheetNames[i]]||{})["!ref"]&&write_biff_rec(ba,27,write_XFORMAT_SHEETNAME(wb.SheetNames[i],cnt++));var wsidx=0;for(i=0;i<wb.SheetNames.length;++i){var ws=wb.Sheets[wb.SheetNames[i]];if(!(!ws||!ws["!ref"])){for(var range=safe_decode_range(ws["!ref"]),dense=ws["!data"]!=null,cols=[],max_R=Math.min(range.e.r,8191),R=range.s.r;R<=max_R;++R)for(var rr=encode_row(R),C=range.s.c;C<=range.e.c;++C){R===range.s.r&&(cols[C]=encode_col(C));var ref=cols[C]+rr,cell2=dense?(ws["!data"][R]||[])[C]:ws[ref];if(!(!cell2||cell2.t=="z"))if(cell2.t=="n")write_biff_rec(ba,23,write_NUMBER_17(R,C,wsidx,cell2.v));else{var str=format_cell(cell2);write_biff_rec(ba,22,write_LABEL_16(R,C,wsidx,str.slice(0,239)))}}++wsidx}}return write_biff_rec(ba,1),ba.end()}function write_BOF_WK1(v){var out=new_buf(2);return out.write_shift(2,v),out}function write_BOF_WK3(wb){var out=new_buf(26);out.write_shift(2,4096),out.write_shift(2,4),out.write_shift(4,0);for(var rows=0,cols=0,wscnt=0,i=0;i<wb.SheetNames.length;++i){var name=wb.SheetNames[i],ws=wb.Sheets[name];if(!(!ws||!ws["!ref"])){++wscnt;var range=decode_range(ws["!ref"]);rows<range.e.r&&(rows=range.e.r),cols<range.e.c&&(cols=range.e.c)}}return rows>8191&&(rows=8191),out.write_shift(2,rows),out.write_shift(1,wscnt),out.write_shift(1,cols),out.write_shift(2,0),out.write_shift(2,0),out.write_shift(1,1),out.write_shift(1,2),out.write_shift(4,0),out.write_shift(4,0),out}function parse_RANGE(blob,length,opts){var o={s:{c:0,r:0},e:{c:0,r:0}};return length==8&&opts.qpro?(o.s.c=blob.read_shift(1),blob.l++,o.s.r=blob.read_shift(2),o.e.c=blob.read_shift(1),blob.l++,o.e.r=blob.read_shift(2),o):(o.s.c=blob.read_shift(2),o.s.r=blob.read_shift(2),length==12&&opts.qpro&&(blob.l+=2),o.e.c=blob.read_shift(2),o.e.r=blob.read_shift(2),length==12&&opts.qpro&&(blob.l+=2),o.s.c==65535&&(o.s.c=o.e.c=o.s.r=o.e.r=0),o)}function write_RANGE(range){var out=new_buf(8);return out.write_shift(2,range.s.c),out.write_shift(2,range.s.r),out.write_shift(2,range.e.c),out.write_shift(2,range.e.r),out}function parse_cell(blob,length,opts){var o=[{c:0,r:0},{t:"n",v:0},0,0];return opts.qpro&&opts.vers!=20768?(o[0].c=blob.read_shift(1),o[3]=blob.read_shift(1),o[0].r=blob.read_shift(2),blob.l+=2):opts.works?(o[0].c=blob.read_shift(2),o[0].r=blob.read_shift(2),o[2]=blob.read_shift(2)):(o[2]=blob.read_shift(1),o[0].c=blob.read_shift(2),o[0].r=blob.read_shift(2)),o}function get_wk1_fmt(cell2){return cell2.z&&fmt_is_date(cell2.z)?240|(LOTUS_DATE_FMTS.indexOf(cell2.z)+1||2):255}function parse_LABEL(blob,length,opts){var tgt=blob.l+length,o=parse_cell(blob,length,opts);if(o[1].t="s",(opts.vers&65534)==20768){blob.l++;var len=blob.read_shift(1);return o[1].v=blob.read_shift(len,"utf8"),o}return opts.qpro&&blob.l++,o[1].v=blob.read_shift(tgt-blob.l,"cstr"),o}function write_LABEL(R,C,s){var o=new_buf(7+s.length);o.write_shift(1,255),o.write_shift(2,C),o.write_shift(2,R),o.write_shift(1,39);for(var i=0;i<o.length;++i){var cc=s.charCodeAt(i);o.write_shift(1,cc>=128?95:cc)}return o.write_shift(1,0),o}function parse_STRING(blob,length,opts){var tgt=blob.l+length,o=parse_cell(blob,length,opts);if(o[1].t="s",opts.vers==20768){var len=blob.read_shift(1);return o[1].v=blob.read_shift(len,"utf8"),o}return o[1].v=blob.read_shift(tgt-blob.l,"cstr"),o}function parse_INTEGER(blob,length,opts){var o=parse_cell(blob,length,opts);return o[1].v=blob.read_shift(2,"i"),o}function write_INTEGER(R,C,cell2){var o=new_buf(7);return o.write_shift(1,get_wk1_fmt(cell2)),o.write_shift(2,C),o.write_shift(2,R),o.write_shift(2,cell2.v,"i"),o}function parse_NUMBER(blob,length,opts){var o=parse_cell(blob,length,opts);return o[1].v=blob.read_shift(8,"f"),o}function write_NUMBER(R,C,cell2){var o=new_buf(13);return o.write_shift(1,get_wk1_fmt(cell2)),o.write_shift(2,C),o.write_shift(2,R),o.write_shift(8,cell2.v,"f"),o}function parse_FORMULA(blob,length,opts){var tgt=blob.l+length,o=parse_cell(blob,length,opts);if(o[1].v=blob.read_shift(8,"f"),opts.qpro)blob.l=tgt;else{var flen=blob.read_shift(2);wk1_fmla_to_csf(blob.slice(blob.l,blob.l+flen),o),blob.l+=flen}return o}function wk1_parse_rc(B,V,col){var rel=V&32768;return V&=-32769,V=(rel?B:0)+(V>=8192?V-16384:V),(rel?"":"$")+(col?encode_col(V):encode_row(V))}var FuncTab={31:["NA",0],33:["ABS",1],34:["TRUNC",1],35:["SQRT",1],36:["LOG",1],37:["LN",1],38:["PI",0],39:["SIN",1],40:["COS",1],41:["TAN",1],42:["ATAN2",2],43:["ATAN",1],44:["ASIN",1],45:["ACOS",1],46:["EXP",1],47:["MOD",2],49:["ISNA",1],50:["ISERR",1],51:["FALSE",0],52:["TRUE",0],53:["RAND",0],54:["DATE",3],63:["ROUND",2],64:["TIME",3],68:["ISNUMBER",1],69:["ISTEXT",1],70:["LEN",1],71:["VALUE",1],73:["MID",3],74:["CHAR",1],80:["SUM",69],81:["AVERAGEA",69],82:["COUNTA",69],83:["MINA",69],84:["MAXA",69],102:["UPPER",1],103:["LOWER",1],107:["PROPER",1],109:["TRIM",1],111:["T",1]},BinOpTab=["","","","","","","","","","+","-","*","/","^","=","<>","<=",">=","<",">","","","","","&","","","","","","",""];function wk1_fmla_to_csf(blob,o){prep_blob(blob,0);for(var out=[],argc=0,R="",C="",argL="",argR="";blob.l<blob.length;){var cc=blob[blob.l++];switch(cc){case 0:out.push(blob.read_shift(8,"f"));break;case 1:C=wk1_parse_rc(o[0].c,blob.read_shift(2),!0),R=wk1_parse_rc(o[0].r,blob.read_shift(2),!1),out.push(C+R);break;case 2:{var c=wk1_parse_rc(o[0].c,blob.read_shift(2),!0),r=wk1_parse_rc(o[0].r,blob.read_shift(2),!1);C=wk1_parse_rc(o[0].c,blob.read_shift(2),!0),R=wk1_parse_rc(o[0].r,blob.read_shift(2),!1),out.push(c+r+":"+C+R)}break;case 3:if(blob.l<blob.length){console.error("WK1 premature formula end");return}break;case 4:out.push("("+out.pop()+")");break;case 5:out.push(blob.read_shift(2));break;case 6:{for(var Z="";cc=blob[blob.l++];)Z+=String.fromCharCode(cc);out.push('"'+Z.replace(/"/g,'""')+'"')}break;case 8:out.push("-"+out.pop());break;case 23:out.push("+"+out.pop());break;case 22:out.push("NOT("+out.pop()+")");break;case 20:case 21:argR=out.pop(),argL=out.pop(),out.push(["AND","OR"][cc-20]+"("+argL+","+argR+")");break;default:if(cc<32&&BinOpTab[cc])argR=out.pop(),argL=out.pop(),out.push(argL+BinOpTab[cc]+argR);else if(FuncTab[cc]){if(argc=FuncTab[cc][1],argc==69&&(argc=blob[blob.l++]),argc>out.length){console.error("WK1 bad formula parse 0x"+cc.toString(16)+":|"+out.join("|")+"|");return}var args=out.slice(-argc);out.length-=argc,out.push(FuncTab[cc][0]+"("+args.join(",")+")")}else return cc<=7?console.error("WK1 invalid opcode "+cc.toString(16)):cc<=24?console.error("WK1 unsupported op "+cc.toString(16)):cc<=30?console.error("WK1 invalid opcode "+cc.toString(16)):cc<=115?console.error("WK1 unsupported function opcode "+cc.toString(16)):console.error("WK1 unrecognized opcode "+cc.toString(16))}}out.length==1?o[1].f=""+out[0]:console.error("WK1 bad formula parse |"+out.join("|")+"|")}function parse_cell_3(blob){var o=[{c:0,r:0},{t:"n",v:0},0];return o[0].r=blob.read_shift(2),o[3]=blob[blob.l++],o[0].c=blob[blob.l++],o}function parse_LABEL_16(blob,length){var o=parse_cell_3(blob,length);return o[1].t="s",o[1].v=blob.read_shift(length-4,"cstr"),o}function write_LABEL_16(R,C,wsidx,s){var o=new_buf(6+s.length);o.write_shift(2,R),o.write_shift(1,wsidx),o.write_shift(1,C),o.write_shift(1,39);for(var i=0;i<s.length;++i){var cc=s.charCodeAt(i);o.write_shift(1,cc>=128?95:cc)}return o.write_shift(1,0),o}function parse_NUMBER_18(blob,length){var o=parse_cell_3(blob,length);o[1].v=blob.read_shift(2);var v=o[1].v>>1;if(o[1].v&1)switch(v&7){case 0:v=(v>>3)*5e3;break;case 1:v=(v>>3)*500;break;case 2:v=(v>>3)/20;break;case 3:v=(v>>3)/200;break;case 4:v=(v>>3)/2e3;break;case 5:v=(v>>3)/2e4;break;case 6:v=(v>>3)/16;break;case 7:v=(v>>3)/64;break}return o[1].v=v,o}function parse_NUMBER_17(blob,length){var o=parse_cell_3(blob,length),v1=blob.read_shift(4),v2=blob.read_shift(4),e=blob.read_shift(2);if(e==65535)return v1===0&&v2===3221225472?(o[1].t="e",o[1].v=15):v1===0&&v2===3489660928?(o[1].t="e",o[1].v=42):o[1].v=0,o;var s=e&32768;return e=(e&32767)-16446,o[1].v=(1-s*2)*(v2*Math.pow(2,e+32)+v1*Math.pow(2,e)),o}function write_NUMBER_17(R,C,wsidx,v){var o=new_buf(14);if(o.write_shift(2,R),o.write_shift(1,wsidx),o.write_shift(1,C),v==0)return o.write_shift(4,0),o.write_shift(4,0),o.write_shift(2,65535),o;var s=0,e=0,v1=0,v2=0;return v<0&&(s=1,v=-v),e=Math.log2(v)|0,v/=Math.pow(2,e-31),v2=v>>>0,(v2&2147483648)==0&&(v/=2,++e,v2=v>>>0),v-=v2,v2|=2147483648,v2>>>=0,v*=Math.pow(2,32),v1=v>>>0,o.write_shift(4,v1),o.write_shift(4,v2),e+=16383+(s?32768:0),o.write_shift(2,e),o}function parse_FORMULA_19(blob,length){var o=parse_NUMBER_17(blob,14);return blob.l+=length-14,o}function parse_NUMBER_25(blob,length){var o=parse_cell_3(blob,length),v1=blob.read_shift(4);return o[1].v=v1>>6,o}function parse_NUMBER_27(blob,length){var o=parse_cell_3(blob,length),v1=blob.read_shift(8,"f");return o[1].v=v1,o}function parse_FORMULA_28(blob,length){var o=parse_NUMBER_27(blob,12);return blob.l+=length-12,o}function parse_SHEETNAMECS(blob,length){return blob[blob.l+length-1]==0?blob.read_shift(length,"cstr"):""}function parse_SHEETNAMELP(blob,length){var len=blob[blob.l++];len>length-1&&(len=length-1);for(var o="";o.length<len;)o+=String.fromCharCode(blob[blob.l++]);return o}function parse_SHEETINFOQP(blob,length,opts){if(!(!opts.qpro||length<21)){var id=blob.read_shift(1);blob.l+=17,blob.l+=1,blob.l+=2;var nm=blob.read_shift(length-21,"cstr");return[id,nm]}}function parse_XFORMAT(blob,length){for(var o={},tgt=blob.l+length;blob.l<tgt;){var dt=blob.read_shift(2);if(dt==14e3){for(o[dt]=[0,""],o[dt][0]=blob.read_shift(2);blob[blob.l];)o[dt][1]+=String.fromCharCode(blob[blob.l]),blob.l++;blob.l++}}return o}function write_XFORMAT_SHEETNAME(name,wsidx){var out=new_buf(5+name.length);out.write_shift(2,14e3),out.write_shift(2,wsidx);for(var i=0;i<name.length;++i){var cc=name.charCodeAt(i);out[out.l++]=cc>127?95:cc}return out[out.l++]=0,out}var WK1Enum={0:{n:"BOF",f:parseuint16},1:{n:"EOF"},2:{n:"CALCMODE"},3:{n:"CALCORDER"},4:{n:"SPLIT"},5:{n:"SYNC"},6:{n:"RANGE",f:parse_RANGE},7:{n:"WINDOW1"},8:{n:"COLW1"},9:{n:"WINTWO"},10:{n:"COLW2"},11:{n:"NAME"},12:{n:"BLANK"},13:{n:"INTEGER",f:parse_INTEGER},14:{n:"NUMBER",f:parse_NUMBER},15:{n:"LABEL",f:parse_LABEL},16:{n:"FORMULA",f:parse_FORMULA},24:{n:"TABLE"},25:{n:"ORANGE"},26:{n:"PRANGE"},27:{n:"SRANGE"},28:{n:"FRANGE"},29:{n:"KRANGE1"},32:{n:"HRANGE"},35:{n:"KRANGE2"},36:{n:"PROTEC"},37:{n:"FOOTER"},38:{n:"HEADER"},39:{n:"SETUP"},40:{n:"MARGINS"},41:{n:"LABELFMT"},42:{n:"TITLES"},43:{n:"SHEETJS"},45:{n:"GRAPH"},46:{n:"NGRAPH"},47:{n:"CALCCOUNT"},48:{n:"UNFORMATTED"},49:{n:"CURSORW12"},50:{n:"WINDOW"},51:{n:"STRING",f:parse_STRING},55:{n:"PASSWORD"},56:{n:"LOCKED"},60:{n:"QUERY"},61:{n:"QUERYNAME"},62:{n:"PRINT"},63:{n:"PRINTNAME"},64:{n:"GRAPH2"},65:{n:"GRAPHNAME"},66:{n:"ZOOM"},67:{n:"SYMSPLIT"},68:{n:"NSROWS"},69:{n:"NSCOLS"},70:{n:"RULER"},71:{n:"NNAME"},72:{n:"ACOMM"},73:{n:"AMACRO"},74:{n:"PARSE"},102:{n:"PRANGES??"},103:{n:"RRANGES??"},104:{n:"FNAME??"},105:{n:"MRANGES??"},204:{n:"SHEETNAMECS",f:parse_SHEETNAMECS},222:{n:"SHEETNAMELP",f:parse_SHEETNAMELP},255:{n:"BOF",f:parseuint16},21506:{n:"WKSNF",f:parseuint16},65535:{n:""}},WK3Enum={0:{n:"BOF"},1:{n:"EOF"},2:{n:"PASSWORD"},3:{n:"CALCSET"},4:{n:"WINDOWSET"},5:{n:"SHEETCELLPTR"},6:{n:"SHEETLAYOUT"},7:{n:"COLUMNWIDTH"},8:{n:"HIDDENCOLUMN"},9:{n:"USERRANGE"},10:{n:"SYSTEMRANGE"},11:{n:"ZEROFORCE"},12:{n:"SORTKEYDIR"},13:{n:"FILESEAL"},14:{n:"DATAFILLNUMS"},15:{n:"PRINTMAIN"},16:{n:"PRINTSTRING"},17:{n:"GRAPHMAIN"},18:{n:"GRAPHSTRING"},19:{n:"??"},20:{n:"ERRCELL"},21:{n:"NACELL"},22:{n:"LABEL16",f:parse_LABEL_16},23:{n:"NUMBER17",f:parse_NUMBER_17},24:{n:"NUMBER18",f:parse_NUMBER_18},25:{n:"FORMULA19",f:parse_FORMULA_19},26:{n:"FORMULA1A"},27:{n:"XFORMAT",f:parse_XFORMAT},28:{n:"DTLABELMISC"},29:{n:"DTLABELCELL"},30:{n:"GRAPHWINDOW"},31:{n:"CPA"},32:{n:"LPLAUTO"},33:{n:"QUERY"},34:{n:"HIDDENSHEET"},35:{n:"??"},37:{n:"NUMBER25",f:parse_NUMBER_25},38:{n:"??"},39:{n:"NUMBER27",f:parse_NUMBER_27},40:{n:"FORMULA28",f:parse_FORMULA_28},142:{n:"??"},147:{n:"??"},150:{n:"??"},151:{n:"??"},152:{n:"??"},153:{n:"??"},154:{n:"??"},155:{n:"??"},156:{n:"??"},163:{n:"??"},174:{n:"??"},175:{n:"??"},176:{n:"??"},177:{n:"??"},184:{n:"??"},185:{n:"??"},186:{n:"??"},187:{n:"??"},188:{n:"??"},195:{n:"??"},201:{n:"??"},204:{n:"SHEETNAMECS",f:parse_SHEETNAMECS},205:{n:"??"},206:{n:"??"},207:{n:"??"},208:{n:"??"},256:{n:"??"},259:{n:"??"},260:{n:"??"},261:{n:"??"},262:{n:"??"},263:{n:"??"},265:{n:"??"},266:{n:"??"},267:{n:"??"},268:{n:"??"},270:{n:"??"},271:{n:"??"},384:{n:"??"},389:{n:"??"},390:{n:"??"},393:{n:"??"},396:{n:"??"},512:{n:"??"},514:{n:"??"},513:{n:"??"},516:{n:"??"},517:{n:"??"},640:{n:"??"},641:{n:"??"},642:{n:"??"},643:{n:"??"},644:{n:"??"},645:{n:"??"},646:{n:"??"},647:{n:"??"},648:{n:"??"},658:{n:"??"},659:{n:"??"},660:{n:"??"},661:{n:"??"},662:{n:"??"},665:{n:"??"},666:{n:"??"},768:{n:"??"},772:{n:"??"},1537:{n:"SHEETINFOQP",f:parse_SHEETINFOQP},1600:{n:"??"},1602:{n:"??"},1793:{n:"??"},1794:{n:"??"},1795:{n:"??"},1796:{n:"??"},1920:{n:"??"},2048:{n:"??"},2049:{n:"??"},2052:{n:"??"},2688:{n:"??"},10998:{n:"??"},12849:{n:"??"},28233:{n:"??"},28484:{n:"??"},65535:{n:""}},QPWNFTable={5:"dd-mmm-yy",6:"dd-mmm",7:"mmm-yy",8:"mm/dd/yy",10:"hh:mm:ss AM/PM",11:"hh:mm AM/PM",14:"dd-mmm-yyyy",15:"mmm-yyyy",34:"0.00",50:"0.00;[Red]0.00",66:"0.00;(0.00)",82:"0.00;[Red](0.00)",162:'"$"#,##0.00;\\("$"#,##0.00\\)',288:"0%",304:"0E+00",320:"# ?/?"};function parse_qpw_str(p){var cch=p.read_shift(2),flags=p.read_shift(1);if(flags!=0)throw"unsupported QPW string type "+flags.toString(16);return p.read_shift(cch,"sbcs-cont")}function qpw_to_workbook_buf(d,opts){prep_blob(d,0);var o=opts||{};DENSE!=null&&o.dense==null&&(o.dense=DENSE);var s={};o.dense&&(s["!data"]=[]);var SST=[],sname="",formulae=[],range={s:{r:-1,c:-1},e:{r:-1,c:-1}},cnt=0,type=0,C=0,R=0,wb={SheetNames:[],Sheets:{}},FMTS=[];outer:for(;d.l<d.length;){var RT=d.read_shift(2),length=d.read_shift(2),p=d.slice(d.l,d.l+length);switch(prep_blob(p,0),RT){case 1:if(p.read_shift(4)!=962023505)throw"Bad QPW9 BOF!";break;case 2:break outer;case 8:break;case 10:for(var fcnt=p.read_shift(4),step=(p.length-p.l)/fcnt|0,ifmt=0;ifmt<fcnt;++ifmt){var end=p.l+step,fmt={};p.l+=2,fmt.numFmtId=p.read_shift(2),QPWNFTable[fmt.numFmtId]&&(fmt.z=QPWNFTable[fmt.numFmtId]),p.l=end,FMTS.push(fmt)}break;case 1025:break;case 1026:break;case 1031:for(p.l+=12;p.l<p.length;)cnt=p.read_shift(2),type=p.read_shift(1),SST.push(p.read_shift(cnt,"cstr"));break;case 1032:break;case 1537:{var sidx=p.read_shift(2);s={},o.dense&&(s["!data"]=[]),range.s.c=p.read_shift(2),range.e.c=p.read_shift(2),range.s.r=p.read_shift(4),range.e.r=p.read_shift(4),p.l+=4,p.l+2<p.length&&(cnt=p.read_shift(2),type=p.read_shift(1),sname=cnt==0?"":p.read_shift(cnt,"cstr")),sname||(sname=encode_col(sidx))}break;case 1538:{if(range.s.c>255||range.s.r>999999)break;range.e.c<range.s.c&&(range.e.c=range.s.c),range.e.r<range.s.r&&(range.e.r=range.s.r),s["!ref"]=encode_range(range),book_append_sheet(wb,s,sname)}break;case 2561:C=p.read_shift(2),range.e.c<C&&(range.e.c=C),range.s.c>C&&(range.s.c=C),R=p.read_shift(4),range.s.r>R&&(range.s.r=R),R=p.read_shift(4),range.e.r<R&&(range.e.r=R);break;case 3073:{R=p.read_shift(4),cnt=p.read_shift(4),range.s.r>R&&(range.s.r=R),range.e.r<R+cnt-1&&(range.e.r=R+cnt-1);for(var CC=encode_col(C);p.l<p.length;){var cell2={t:"z"},flags=p.read_shift(1),fmtidx=-1;flags&128&&(fmtidx=p.read_shift(2));var mul=flags&64?p.read_shift(2)-1:0;switch(flags&31){case 0:break;case 1:break;case 2:cell2={t:"n",v:p.read_shift(2)};break;case 3:cell2={t:"n",v:p.read_shift(2,"i")};break;case 4:cell2={t:"n",v:parse_RkNumber(p)};break;case 5:cell2={t:"n",v:p.read_shift(8,"f")};break;case 7:cell2={t:"s",v:SST[type=p.read_shift(4)-1]};break;case 8:cell2={t:"n",v:p.read_shift(8,"f")},p.l+=2,p.l+=4,isNaN(cell2.v)&&(cell2={t:"e",v:15});break;default:throw"Unrecognized QPW cell type "+(flags&31)}fmtidx!=-1&&(FMTS[fmtidx-1]||{}).z&&(cell2.z=FMTS[fmtidx-1].z);var delta=0;if(flags&32)switch(flags&31){case 2:delta=p.read_shift(2);break;case 3:delta=p.read_shift(2,"i");break;case 7:delta=p.read_shift(2);break;default:throw"Unsupported delta for QPW cell type "+(flags&31)}if(!(!o.sheetStubs&&cell2.t=="z")){var newcell=dup(cell2);cell2.t=="n"&&cell2.z&&fmt_is_date(cell2.z)&&o.cellDates&&(newcell.v=numdate(cell2.v),newcell.t=typeof newcell.v=="number"?"n":"d"),s["!data"]!=null?(s["!data"][R]||(s["!data"][R]=[]),s["!data"][R][C]=newcell):s[CC+encode_row(R)]=newcell}for(++R,--cnt;mul-- >0&&cnt>=0;){if(flags&32)switch(flags&31){case 2:cell2={t:"n",v:cell2.v+delta&65535};break;case 3:cell2={t:"n",v:cell2.v+delta&65535},cell2.v>32767&&(cell2.v-=65536);break;case 7:cell2={t:"s",v:SST[type=type+delta>>>0]};break;default:throw"Cannot apply delta for QPW cell type "+(flags&31)}else switch(flags&31){case 1:cell2={t:"z"};break;case 2:cell2={t:"n",v:p.read_shift(2)};break;case 7:cell2={t:"s",v:SST[type=p.read_shift(4)-1]};break;default:throw"Cannot apply repeat for QPW cell type "+(flags&31)}fmtidx!=-1,!o.sheetStubs&&cell2.t=="z"||(s["!data"]!=null?(s["!data"][R]||(s["!data"][R]=[]),s["!data"][R][C]=cell2):s[CC+encode_row(R)]=cell2),++R,--cnt}}}break;case 3074:{C=p.read_shift(2),R=p.read_shift(4);var str=parse_qpw_str(p);s["!data"]!=null?(s["!data"][R]||(s["!data"][R]=[]),s["!data"][R][C]={t:"s",v:str}):s[encode_col(C)+encode_row(R)]={t:"s",v:str}}break;default:break}d.l+=length}return wb}return{sheet_to_wk1,book_to_wk3,to_workbook:lotus_to_workbook}})();parse_rs=(function(){function parse_r(r){var t=str_match_xml_ns(r,"t");if(!t)return{t:"s",v:""};var o={t:"s",v:unescapexml(t[1])},rpr=str_match_xml_ns(r,"rPr");return rpr&&(o.s=parse_rpr(rpr[1])),o}var rregex=/<(?:\w+:)?r>/g,rend=/<\/(?:\w+:)?r>/;return function(rs){return rs.replace(rregex,"").split(rend).map(parse_r).filter(function(r){return r.v})}})(),rs_to_html=(function(){var nlregex=/(\r\n|\n)/g;function parse_rpr2(font,intro,outro){var style=[];font.u&&style.push("text-decoration: underline;"),font.uval&&style.push("text-underline-style:"+font.uval+";"),font.sz&&style.push("font-size:"+font.sz+"pt;"),font.outline&&style.push("text-effect: outline;"),font.shadow&&style.push("text-shadow: auto;"),intro.push('<span style="'+style.join("")+'">'),font.b&&(intro.push("<b>"),outro.push("</b>")),font.i&&(intro.push("<i>"),outro.push("</i>")),font.strike&&(intro.push("<s>"),outro.push("</s>"));var align=font.valign||"";return align=="superscript"||align=="super"?align="sup":align=="subscript"&&(align="sub"),align!=""&&(intro.push("<"+align+">"),outro.push("</"+align+">")),outro.push("</span>"),font}function r_to_html(r){var terms=[[],r.v,[]];return r.v?(r.s&&parse_rpr2(r.s,terms[0],terms[2]),terms[0].join("")+terms[1].replace(nlregex,"<br/>")+terms[2].join("")):""}return function(rs){return rs.map(r_to_html).join("")}})(),sitregex=/<(?:\w+:)?t\b[^<>]*>([^<]*)<\/(?:\w+:)?t>/g,sirregex=/<(?:\w+:)?r\b[^<>]*>/;sstr1=/<(?:\w+:)?(?:si|sstItem)>/g,sstr2=/<\/(?:\w+:)?(?:si|sstItem)>/;straywsregex=/^\s|\s$|[\t\n\r]/;write_BrtSSTItem=write_RichStr;crypto_CreateXorArray_Method1=(function(){var PadArray=[187,255,255,186,255,255,185,128,0,190,15,0,191,15,0],InitialCode=[57840,7439,52380,33984,4364,3600,61902,12606,6258,57657,54287,34041,10252,43370,20163],XorMatrix=[44796,19929,39858,10053,20106,40212,10761,31585,63170,64933,60267,50935,40399,11199,17763,35526,1453,2906,5812,11624,23248,885,1770,3540,7080,14160,28320,56640,55369,41139,20807,41614,21821,43642,17621,28485,56970,44341,19019,38038,14605,29210,60195,50791,40175,10751,21502,43004,24537,18387,36774,3949,7898,15796,31592,63184,47201,24803,49606,37805,14203,28406,56812,17824,35648,1697,3394,6788,13576,27152,43601,17539,35078,557,1114,2228,4456,30388,60776,51953,34243,7079,14158,28316,14128,28256,56512,43425,17251,34502,7597,13105,26210,52420,35241,883,1766,3532,4129,8258,16516,33032,4657,9314,18628],Ror=function(Byte){return(Byte/2|Byte*128)&255},XorRor=function(byte1,byte2){return Ror(byte1^byte2)},CreateXorKey_Method1=function(Password){for(var XorKey=InitialCode[Password.length-1],CurrentElement=104,i=Password.length-1;i>=0;--i)for(var Char=Password[i],j=0;j!=7;++j)Char&64&&(XorKey^=XorMatrix[CurrentElement]),Char*=2,--CurrentElement;return XorKey};return function(password){for(var Password=_JS2ANSI(password),XorKey=CreateXorKey_Method1(Password),Index=Password.length,ObfuscationArray=new_raw_buf(16),i=0;i!=16;++i)ObfuscationArray[i]=0;var Temp,PasswordLastChar,PadIndex;for((Index&1)===1&&(Temp=XorKey>>8,ObfuscationArray[Index]=XorRor(PadArray[0],Temp),--Index,Temp=XorKey&255,PasswordLastChar=Password[Password.length-1],ObfuscationArray[Index]=XorRor(PasswordLastChar,Temp));Index>0;)--Index,Temp=XorKey>>8,ObfuscationArray[Index]=XorRor(Password[Index],Temp),--Index,Temp=XorKey&255,ObfuscationArray[Index]=XorRor(Password[Index],Temp);for(Index=15,PadIndex=15-Password.length;PadIndex>0;)Temp=XorKey>>8,ObfuscationArray[Index]=XorRor(PadArray[PadIndex],Temp),--Index,--PadIndex,Temp=XorKey&255,ObfuscationArray[Index]=XorRor(Password[Index],Temp),--Index,--PadIndex;return ObfuscationArray}})(),crypto_DecryptData_Method1=function(password,Data,XorArrayIndex,XorArray,O){O||(O=Data),XorArray||(XorArray=crypto_CreateXorArray_Method1(password));var Index,Value;for(Index=0;Index!=Data.length;++Index)Value=Data[Index],Value^=XorArray[XorArrayIndex],Value=(Value>>5|Value<<3)&255,O[Index]=Value,++XorArrayIndex;return[O,XorArrayIndex,XorArray]},crypto_MakeXorDecryptor=function(password){var XorArrayIndex=0,XorArray=crypto_CreateXorArray_Method1(password);return function(Data){var O=crypto_DecryptData_Method1("",Data,XorArrayIndex,XorArray);return XorArrayIndex=O[1],O[0]}};DEF_MDW=6,MAX_MDW=15,MIN_MDW=1,MDW=DEF_MDW;DEF_PPI=96,PPI=DEF_PPI;XLMLPatternTypeMap={None:"none",Solid:"solid",Gray50:"mediumGray",Gray75:"darkGray",Gray25:"lightGray",HorzStripe:"darkHorizontal",VertStripe:"darkVertical",ReverseDiagStripe:"darkDown",DiagStripe:"darkUp",DiagCross:"darkGrid",ThickDiagCross:"darkTrellis",ThinHorzStripe:"lightHorizontal",ThinVertStripe:"lightVertical",ThinReverseDiagStripe:"lightDown",ThinHorzCross:"lightGrid"};cellXF_uint=["numFmtId","fillId","fontId","borderId","xfId"],cellXF_bool=["applyAlignment","applyBorder","applyFill","applyFont","applyNumberFormat","applyProtection","pivotButton","quotePrefix"];parse_sty_xml=(function(){return function(data,themes,opts){var styles={};if(!data)return styles;data=remove_doctype(str_remove_ng(data,"<!--","-->"));var t;return(t=str_match_xml_ns(data,"numFmts"))&&parse_numFmts(t[0],styles,opts),(t=str_match_xml_ns(data,"fonts"))&&parse_fonts(t[0],styles,themes,opts),(t=str_match_xml_ns(data,"fills"))&&parse_fills(t[0],styles,themes,opts),(t=str_match_xml_ns(data,"borders"))&&parse_borders(t[0],styles,themes,opts),(t=str_match_xml_ns(data,"cellXfs"))&&parse_cellXfs(t[0],styles,opts),styles}})();XLSBFillPTNames=["none","solid","mediumGray","darkGray","lightGray","darkHorizontal","darkVertical","darkDown","darkUp","darkGrid","darkTrellis","lightHorizontal","lightVertical","lightDown","lightUp","lightGrid","lightTrellis","gray125","gray0625"],parse_BrtFill=parsenoop;parse_BrtBorder=parsenoop;XLSXThemeClrScheme=["</a:lt1>","</a:dk1>","</a:lt2>","</a:dk2>","</a:accent1>","</a:accent2>","</a:accent3>","</a:accent4>","</a:accent5>","</a:accent6>","</a:hlink>","</a:folHlink>"];parse_BrtCommentAuthor=parse_XLWideString;CT_VBA="application/vnd.ms-office.vbaProject";VBAFMTS=["xlsb","xlsm","xlam","biff8","xla"];rc_to_a1=(function(){var rcregex=/(^|[^A-Za-z_])R(\[?-?\d+\]|[1-9]\d*|)C(\[?-?\d+\]|[1-9]\d*|)(?![A-Za-z0-9_])/g,rcbase={r:0,c:0};function rcfunc($$,$1,$2,$3){var cRel=!1,rRel=!1;$2.length==0?rRel=!0:$2.charAt(0)=="["&&(rRel=!0,$2=$2.slice(1,-1)),$3.length==0?cRel=!0:$3.charAt(0)=="["&&(cRel=!0,$3=$3.slice(1,-1));var R=$2.length>0?parseInt($2,10)|0:0,C=$3.length>0?parseInt($3,10)|0:0;return cRel?C+=rcbase.c:--C,rRel?R+=rcbase.r:--R,$1+(cRel?"":"$")+encode_col(C)+(rRel?"":"$")+encode_row(R)}return function(fstr,base){return rcbase=base,fstr.replace(rcregex,rcfunc)}})(),crefregex=/(^|[^._A-Z0-9])(\$?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])(\$?)(\d{1,7})(?![_.\(A-Za-z0-9])/g;try{crefregex=/(^|[^._A-Z0-9])([$]?)([A-Z]{1,2}|[A-W][A-Z]{2}|X[A-E][A-Z]|XF[A-D])([$]?)(10[0-3]\d{4}|104[0-7]\d{3}|1048[0-4]\d{2}|10485[0-6]\d|104857[0-6]|[1-9]\d{0,5})(?![_.\(A-Za-z0-9])/g}catch{}a1_to_rc=(function(){return function(fstr,base){return fstr.replace(crefregex,function($0,$1,$2,$3,$4,$5){var c=decode_col($3)-($2?0:base.c),r=decode_row($5)-($4?0:base.r),R=$4=="$"?r+1:r==0?"":"["+r+"]",C=$2=="$"?c+1:c==0?"":"["+c+"]";return $1+"R"+R+"C"+C})}})();parse_PtgMemErr=parsenoop,parse_PtgMemNoMem=parsenoop,parse_PtgTbl=parsenoop;parse_PtgElfCol=parse_PtgElfLoc,parse_PtgElfColS=parse_PtgElfNoop,parse_PtgElfColSV=parse_PtgElfNoop,parse_PtgElfColV=parse_PtgElfLoc;parse_PtgElfRadical=parse_PtgElfLoc,parse_PtgElfRadicalLel=parse_PtgElfLel,parse_PtgElfRadicalS=parse_PtgElfNoop,parse_PtgElfRw=parse_PtgElfLoc,parse_PtgElfRwV=parse_PtgElfLoc,PtgListRT=["Data","All","Headers","??","?Data2","??","?DataHeaders","??","Totals","??","??","??","?DataTotals","??","??","??","?Current"];PtgTypes={1:{n:"PtgExp",f:parse_PtgExp},2:{n:"PtgTbl",f:parse_PtgTbl},3:{n:"PtgAdd",f:parseread1},4:{n:"PtgSub",f:parseread1},5:{n:"PtgMul",f:parseread1},6:{n:"PtgDiv",f:parseread1},7:{n:"PtgPower",f:parseread1},8:{n:"PtgConcat",f:parseread1},9:{n:"PtgLt",f:parseread1},10:{n:"PtgLe",f:parseread1},11:{n:"PtgEq",f:parseread1},12:{n:"PtgGe",f:parseread1},13:{n:"PtgGt",f:parseread1},14:{n:"PtgNe",f:parseread1},15:{n:"PtgIsect",f:parseread1},16:{n:"PtgUnion",f:parseread1},17:{n:"PtgRange",f:parseread1},18:{n:"PtgUplus",f:parseread1},19:{n:"PtgUminus",f:parseread1},20:{n:"PtgPercent",f:parseread1},21:{n:"PtgParen",f:parseread1},22:{n:"PtgMissArg",f:parseread1},23:{n:"PtgStr",f:parse_PtgStr},26:{n:"PtgSheet",f:parse_PtgSheet},27:{n:"PtgEndSheet",f:parse_PtgEndSheet},28:{n:"PtgErr",f:parse_PtgErr},29:{n:"PtgBool",f:parse_PtgBool},30:{n:"PtgInt",f:parse_PtgInt},31:{n:"PtgNum",f:parse_PtgNum},32:{n:"PtgArray",f:parse_PtgArray},33:{n:"PtgFunc",f:parse_PtgFunc},34:{n:"PtgFuncVar",f:parse_PtgFuncVar},35:{n:"PtgName",f:parse_PtgName},36:{n:"PtgRef",f:parse_PtgRef},37:{n:"PtgArea",f:parse_PtgArea},38:{n:"PtgMemArea",f:parse_PtgMemArea},39:{n:"PtgMemErr",f:parse_PtgMemErr},40:{n:"PtgMemNoMem",f:parse_PtgMemNoMem},41:{n:"PtgMemFunc",f:parse_PtgMemFunc},42:{n:"PtgRefErr",f:parse_PtgRefErr},43:{n:"PtgAreaErr",f:parse_PtgAreaErr},44:{n:"PtgRefN",f:parse_PtgRefN},45:{n:"PtgAreaN",f:parse_PtgAreaN},46:{n:"PtgMemAreaN",f:parse_PtgMemAreaN},47:{n:"PtgMemNoMemN",f:parse_PtgMemNoMemN},57:{n:"PtgNameX",f:parse_PtgNameX},58:{n:"PtgRef3d",f:parse_PtgRef3d},59:{n:"PtgArea3d",f:parse_PtgArea3d},60:{n:"PtgRefErr3d",f:parse_PtgRefErr3d},61:{n:"PtgAreaErr3d",f:parse_PtgAreaErr3d},255:{}},PtgDupes={64:32,96:32,65:33,97:33,66:34,98:34,67:35,99:35,68:36,100:36,69:37,101:37,70:38,102:38,71:39,103:39,72:40,104:40,73:41,105:41,74:42,106:42,75:43,107:43,76:44,108:44,77:45,109:45,78:46,110:46,79:47,111:47,88:34,120:34,89:57,121:57,90:58,122:58,91:59,123:59,92:60,124:60,93:61,125:61},Ptg18={1:{n:"PtgElfLel",f:parse_PtgElfLel},2:{n:"PtgElfRw",f:parse_PtgElfRw},3:{n:"PtgElfCol",f:parse_PtgElfCol},6:{n:"PtgElfRwV",f:parse_PtgElfRwV},7:{n:"PtgElfColV",f:parse_PtgElfColV},10:{n:"PtgElfRadical",f:parse_PtgElfRadical},11:{n:"PtgElfRadicalS",f:parse_PtgElfRadicalS},13:{n:"PtgElfColS",f:parse_PtgElfColS},15:{n:"PtgElfColSV",f:parse_PtgElfColSV},16:{n:"PtgElfRadicalLel",f:parse_PtgElfRadicalLel},25:{n:"PtgList",f:parse_PtgList},29:{n:"PtgSxName",f:parse_PtgSxName},255:{}},Ptg19={0:{n:"PtgAttrNoop",f:parse_PtgAttrNoop},1:{n:"PtgAttrSemi",f:parse_PtgAttrSemi},2:{n:"PtgAttrIf",f:parse_PtgAttrIf},4:{n:"PtgAttrChoose",f:parse_PtgAttrChoose},8:{n:"PtgAttrGoto",f:parse_PtgAttrGoto},16:{n:"PtgAttrSum",f:parse_PtgAttrSum},32:{n:"PtgAttrBaxcel",f:parse_PtgAttrBaxcel},33:{n:"PtgAttrBaxcel",f:parse_PtgAttrBaxcel},64:{n:"PtgAttrSpace",f:parse_PtgAttrSpace},65:{n:"PtgAttrSpaceSemi",f:parse_PtgAttrSpaceSemi},128:{n:"PtgAttrIfError",f:parse_PtgAttrIfError},255:{}};PtgBinOp={PtgAdd:"+",PtgConcat:"&",PtgDiv:"/",PtgEq:"=",PtgGe:">=",PtgGt:">",PtgLe:"<=",PtgLt:"<",PtgMul:"*",PtgNe:"<>",PtgPower:"^",PtgSub:"-"};parse_XLSBArrayParsedFormula=parse_XLSBParsedFormula,parse_XLSBCellParsedFormula=parse_XLSBParsedFormula,parse_XLSBNameParsedFormula=parse_XLSBParsedFormula,parse_XLSBSharedParsedFormula=parse_XLSBParsedFormula;write_XLSBNameParsedFormula=write_XLSBFormula,Cetab={0:"BEEP",1:"OPEN",2:"OPEN.LINKS",3:"CLOSE.ALL",4:"SAVE",5:"SAVE.AS",6:"FILE.DELETE",7:"PAGE.SETUP",8:"PRINT",9:"PRINTER.SETUP",10:"QUIT",11:"NEW.WINDOW",12:"ARRANGE.ALL",13:"WINDOW.SIZE",14:"WINDOW.MOVE",15:"FULL",16:"CLOSE",17:"RUN",22:"SET.PRINT.AREA",23:"SET.PRINT.TITLES",24:"SET.PAGE.BREAK",25:"REMOVE.PAGE.BREAK",26:"FONT",27:"DISPLAY",28:"PROTECT.DOCUMENT",29:"PRECISION",30:"A1.R1C1",31:"CALCULATE.NOW",32:"CALCULATION",34:"DATA.FIND",35:"EXTRACT",36:"DATA.DELETE",37:"SET.DATABASE",38:"SET.CRITERIA",39:"SORT",40:"DATA.SERIES",41:"TABLE",42:"FORMAT.NUMBER",43:"ALIGNMENT",44:"STYLE",45:"BORDER",46:"CELL.PROTECTION",47:"COLUMN.WIDTH",48:"UNDO",49:"CUT",50:"COPY",51:"PASTE",52:"CLEAR",53:"PASTE.SPECIAL",54:"EDIT.DELETE",55:"INSERT",56:"FILL.RIGHT",57:"FILL.DOWN",61:"DEFINE.NAME",62:"CREATE.NAMES",63:"FORMULA.GOTO",64:"FORMULA.FIND",65:"SELECT.LAST.CELL",66:"SHOW.ACTIVE.CELL",67:"GALLERY.AREA",68:"GALLERY.BAR",69:"GALLERY.COLUMN",70:"GALLERY.LINE",71:"GALLERY.PIE",72:"GALLERY.SCATTER",73:"COMBINATION",74:"PREFERRED",75:"ADD.OVERLAY",76:"GRIDLINES",77:"SET.PREFERRED",78:"AXES",79:"LEGEND",80:"ATTACH.TEXT",81:"ADD.ARROW",82:"SELECT.CHART",83:"SELECT.PLOT.AREA",84:"PATTERNS",85:"MAIN.CHART",86:"OVERLAY",87:"SCALE",88:"FORMAT.LEGEND",89:"FORMAT.TEXT",90:"EDIT.REPEAT",91:"PARSE",92:"JUSTIFY",93:"HIDE",94:"UNHIDE",95:"WORKSPACE",96:"FORMULA",97:"FORMULA.FILL",98:"FORMULA.ARRAY",99:"DATA.FIND.NEXT",100:"DATA.FIND.PREV",101:"FORMULA.FIND.NEXT",102:"FORMULA.FIND.PREV",103:"ACTIVATE",104:"ACTIVATE.NEXT",105:"ACTIVATE.PREV",106:"UNLOCKED.NEXT",107:"UNLOCKED.PREV",108:"COPY.PICTURE",109:"SELECT",110:"DELETE.NAME",111:"DELETE.FORMAT",112:"VLINE",113:"HLINE",114:"VPAGE",115:"HPAGE",116:"VSCROLL",117:"HSCROLL",118:"ALERT",119:"NEW",120:"CANCEL.COPY",121:"SHOW.CLIPBOARD",122:"MESSAGE",124:"PASTE.LINK",125:"APP.ACTIVATE",126:"DELETE.ARROW",127:"ROW.HEIGHT",128:"FORMAT.MOVE",129:"FORMAT.SIZE",130:"FORMULA.REPLACE",131:"SEND.KEYS",132:"SELECT.SPECIAL",133:"APPLY.NAMES",134:"REPLACE.FONT",135:"FREEZE.PANES",136:"SHOW.INFO",137:"SPLIT",138:"ON.WINDOW",139:"ON.DATA",140:"DISABLE.INPUT",142:"OUTLINE",143:"LIST.NAMES",144:"FILE.CLOSE",145:"SAVE.WORKBOOK",146:"DATA.FORM",147:"COPY.CHART",148:"ON.TIME",149:"WAIT",150:"FORMAT.FONT",151:"FILL.UP",152:"FILL.LEFT",153:"DELETE.OVERLAY",155:"SHORT.MENUS",159:"SET.UPDATE.STATUS",161:"COLOR.PALETTE",162:"DELETE.STYLE",163:"WINDOW.RESTORE",164:"WINDOW.MAXIMIZE",166:"CHANGE.LINK",167:"CALCULATE.DOCUMENT",168:"ON.KEY",169:"APP.RESTORE",170:"APP.MOVE",171:"APP.SIZE",172:"APP.MINIMIZE",173:"APP.MAXIMIZE",174:"BRING.TO.FRONT",175:"SEND.TO.BACK",185:"MAIN.CHART.TYPE",186:"OVERLAY.CHART.TYPE",187:"SELECT.END",188:"OPEN.MAIL",189:"SEND.MAIL",190:"STANDARD.FONT",191:"CONSOLIDATE",192:"SORT.SPECIAL",193:"GALLERY.3D.AREA",194:"GALLERY.3D.COLUMN",195:"GALLERY.3D.LINE",196:"GALLERY.3D.PIE",197:"VIEW.3D",198:"GOAL.SEEK",199:"WORKGROUP",200:"FILL.GROUP",201:"UPDATE.LINK",202:"PROMOTE",203:"DEMOTE",204:"SHOW.DETAIL",206:"UNGROUP",207:"OBJECT.PROPERTIES",208:"SAVE.NEW.OBJECT",209:"SHARE",210:"SHARE.NAME",211:"DUPLICATE",212:"APPLY.STYLE",213:"ASSIGN.TO.OBJECT",214:"OBJECT.PROTECTION",215:"HIDE.OBJECT",216:"SET.EXTRACT",217:"CREATE.PUBLISHER",218:"SUBSCRIBE.TO",219:"ATTRIBUTES",220:"SHOW.TOOLBAR",222:"PRINT.PREVIEW",223:"EDIT.COLOR",224:"SHOW.LEVELS",225:"FORMAT.MAIN",226:"FORMAT.OVERLAY",227:"ON.RECALC",228:"EDIT.SERIES",229:"DEFINE.STYLE",240:"LINE.PRINT",243:"ENTER.DATA",249:"GALLERY.RADAR",250:"MERGE.STYLES",251:"EDITION.OPTIONS",252:"PASTE.PICTURE",253:"PASTE.PICTURE.LINK",254:"SPELLING",256:"ZOOM",259:"INSERT.OBJECT",260:"WINDOW.MINIMIZE",265:"SOUND.NOTE",266:"SOUND.PLAY",267:"FORMAT.SHAPE",268:"EXTEND.POLYGON",269:"FORMAT.AUTO",272:"GALLERY.3D.BAR",273:"GALLERY.3D.SURFACE",274:"FILL.AUTO",276:"CUSTOMIZE.TOOLBAR",277:"ADD.TOOL",278:"EDIT.OBJECT",279:"ON.DOUBLECLICK",280:"ON.ENTRY",281:"WORKBOOK.ADD",282:"WORKBOOK.MOVE",283:"WORKBOOK.COPY",284:"WORKBOOK.OPTIONS",285:"SAVE.WORKSPACE",288:"CHART.WIZARD",289:"DELETE.TOOL",290:"MOVE.TOOL",291:"WORKBOOK.SELECT",292:"WORKBOOK.ACTIVATE",293:"ASSIGN.TO.TOOL",295:"COPY.TOOL",296:"RESET.TOOL",297:"CONSTRAIN.NUMERIC",298:"PASTE.TOOL",302:"WORKBOOK.NEW",305:"SCENARIO.CELLS",306:"SCENARIO.DELETE",307:"SCENARIO.ADD",308:"SCENARIO.EDIT",309:"SCENARIO.SHOW",310:"SCENARIO.SHOW.NEXT",311:"SCENARIO.SUMMARY",312:"PIVOT.TABLE.WIZARD",313:"PIVOT.FIELD.PROPERTIES",314:"PIVOT.FIELD",315:"PIVOT.ITEM",316:"PIVOT.ADD.FIELDS",318:"OPTIONS.CALCULATION",319:"OPTIONS.EDIT",320:"OPTIONS.VIEW",321:"ADDIN.MANAGER",322:"MENU.EDITOR",323:"ATTACH.TOOLBARS",324:"VBAActivate",325:"OPTIONS.CHART",328:"VBA.INSERT.FILE",330:"VBA.PROCEDURE.DEFINITION",336:"ROUTING.SLIP",338:"ROUTE.DOCUMENT",339:"MAIL.LOGON",342:"INSERT.PICTURE",343:"EDIT.TOOL",344:"GALLERY.DOUGHNUT",350:"CHART.TREND",352:"PIVOT.ITEM.PROPERTIES",354:"WORKBOOK.INSERT",355:"OPTIONS.TRANSITION",356:"OPTIONS.GENERAL",370:"FILTER.ADVANCED",373:"MAIL.ADD.MAILER",374:"MAIL.DELETE.MAILER",375:"MAIL.REPLY",376:"MAIL.REPLY.ALL",377:"MAIL.FORWARD",378:"MAIL.NEXT.LETTER",379:"DATA.LABEL",380:"INSERT.TITLE",381:"FONT.PROPERTIES",382:"MACRO.OPTIONS",383:"WORKBOOK.HIDE",384:"WORKBOOK.UNHIDE",385:"WORKBOOK.DELETE",386:"WORKBOOK.NAME",388:"GALLERY.CUSTOM",390:"ADD.CHART.AUTOFORMAT",391:"DELETE.CHART.AUTOFORMAT",392:"CHART.ADD.DATA",393:"AUTO.OUTLINE",394:"TAB.ORDER",395:"SHOW.DIALOG",396:"SELECT.ALL",397:"UNGROUP.SHEETS",398:"SUBTOTAL.CREATE",399:"SUBTOTAL.REMOVE",400:"RENAME.OBJECT",412:"WORKBOOK.SCROLL",413:"WORKBOOK.NEXT",414:"WORKBOOK.PREV",415:"WORKBOOK.TAB.SPLIT",416:"FULL.SCREEN",417:"WORKBOOK.PROTECT",420:"SCROLLBAR.PROPERTIES",421:"PIVOT.SHOW.PAGES",422:"TEXT.TO.COLUMNS",423:"FORMAT.CHARTTYPE",424:"LINK.FORMAT",425:"TRACER.DISPLAY",430:"TRACER.NAVIGATE",431:"TRACER.CLEAR",432:"TRACER.ERROR",433:"PIVOT.FIELD.GROUP",434:"PIVOT.FIELD.UNGROUP",435:"CHECKBOX.PROPERTIES",436:"LABEL.PROPERTIES",437:"LISTBOX.PROPERTIES",438:"EDITBOX.PROPERTIES",439:"PIVOT.REFRESH",440:"LINK.COMBO",441:"OPEN.TEXT",442:"HIDE.DIALOG",443:"SET.DIALOG.FOCUS",444:"ENABLE.OBJECT",445:"PUSHBUTTON.PROPERTIES",446:"SET.DIALOG.DEFAULT",447:"FILTER",448:"FILTER.SHOW.ALL",449:"CLEAR.OUTLINE",450:"FUNCTION.WIZARD",451:"ADD.LIST.ITEM",452:"SET.LIST.ITEM",453:"REMOVE.LIST.ITEM",454:"SELECT.LIST.ITEM",455:"SET.CONTROL.VALUE",456:"SAVE.COPY.AS",458:"OPTIONS.LISTS.ADD",459:"OPTIONS.LISTS.DELETE",460:"SERIES.AXES",461:"SERIES.X",462:"SERIES.Y",463:"ERRORBAR.X",464:"ERRORBAR.Y",465:"FORMAT.CHART",466:"SERIES.ORDER",467:"MAIL.LOGOFF",468:"CLEAR.ROUTING.SLIP",469:"APP.ACTIVATE.MICROSOFT",470:"MAIL.EDIT.MAILER",471:"ON.SHEET",472:"STANDARD.WIDTH",473:"SCENARIO.MERGE",474:"SUMMARY.INFO",475:"FIND.FILE",476:"ACTIVE.CELL.FONT",477:"ENABLE.TIPWIZARD",478:"VBA.MAKE.ADDIN",480:"INSERTDATATABLE",481:"WORKGROUP.OPTIONS",482:"MAIL.SEND.MAILER",485:"AUTOCORRECT",489:"POST.DOCUMENT",491:"PICKLIST",493:"VIEW.SHOW",494:"VIEW.DEFINE",495:"VIEW.DELETE",509:"SHEET.BACKGROUND",510:"INSERT.MAP.OBJECT",511:"OPTIONS.MENONO",517:"MSOCHECKS",518:"NORMAL",519:"LAYOUT",520:"RM.PRINT.AREA",521:"CLEAR.PRINT.AREA",522:"ADD.PRINT.AREA",523:"MOVE.BRK",545:"HIDECURR.NOTE",546:"HIDEALL.NOTES",547:"DELETE.NOTE",548:"TRAVERSE.NOTES",549:"ACTIVATE.NOTES",620:"PROTECT.REVISIONS",621:"UNPROTECT.REVISIONS",647:"OPTIONS.ME",653:"WEB.PUBLISH",667:"NEWWEBQUERY",673:"PIVOT.TABLE.CHART",753:"OPTIONS.SAVE",755:"OPTIONS.SPELL",808:"HIDEALL.INKANNOTS"},Ftab={0:"COUNT",1:"IF",2:"ISNA",3:"ISERROR",4:"SUM",5:"AVERAGE",6:"MIN",7:"MAX",8:"ROW",9:"COLUMN",10:"NA",11:"NPV",12:"STDEV",13:"DOLLAR",14:"FIXED",15:"SIN",16:"COS",17:"TAN",18:"ATAN",19:"PI",20:"SQRT",21:"EXP",22:"LN",23:"LOG10",24:"ABS",25:"INT",26:"SIGN",27:"ROUND",28:"LOOKUP",29:"INDEX",30:"REPT",31:"MID",32:"LEN",33:"VALUE",34:"TRUE",35:"FALSE",36:"AND",37:"OR",38:"NOT",39:"MOD",40:"DCOUNT",41:"DSUM",42:"DAVERAGE",43:"DMIN",44:"DMAX",45:"DSTDEV",46:"VAR",47:"DVAR",48:"TEXT",49:"LINEST",50:"TREND",51:"LOGEST",52:"GROWTH",53:"GOTO",54:"HALT",55:"RETURN",56:"PV",57:"FV",58:"NPER",59:"PMT",60:"RATE",61:"MIRR",62:"IRR",63:"RAND",64:"MATCH",65:"DATE",66:"TIME",67:"DAY",68:"MONTH",69:"YEAR",70:"WEEKDAY",71:"HOUR",72:"MINUTE",73:"SECOND",74:"NOW",75:"AREAS",76:"ROWS",77:"COLUMNS",78:"OFFSET",79:"ABSREF",80:"RELREF",81:"ARGUMENT",82:"SEARCH",83:"TRANSPOSE",84:"ERROR",85:"STEP",86:"TYPE",87:"ECHO",88:"SET.NAME",89:"CALLER",90:"DEREF",91:"WINDOWS",92:"SERIES",93:"DOCUMENTS",94:"ACTIVE.CELL",95:"SELECTION",96:"RESULT",97:"ATAN2",98:"ASIN",99:"ACOS",100:"CHOOSE",101:"HLOOKUP",102:"VLOOKUP",103:"LINKS",104:"INPUT",105:"ISREF",106:"GET.FORMULA",107:"GET.NAME",108:"SET.VALUE",109:"LOG",110:"EXEC",111:"CHAR",112:"LOWER",113:"UPPER",114:"PROPER",115:"LEFT",116:"RIGHT",117:"EXACT",118:"TRIM",119:"REPLACE",120:"SUBSTITUTE",121:"CODE",122:"NAMES",123:"DIRECTORY",124:"FIND",125:"CELL",126:"ISERR",127:"ISTEXT",128:"ISNUMBER",129:"ISBLANK",130:"T",131:"N",132:"FOPEN",133:"FCLOSE",134:"FSIZE",135:"FREADLN",136:"FREAD",137:"FWRITELN",138:"FWRITE",139:"FPOS",140:"DATEVALUE",141:"TIMEVALUE",142:"SLN",143:"SYD",144:"DDB",145:"GET.DEF",146:"REFTEXT",147:"TEXTREF",148:"INDIRECT",149:"REGISTER",150:"CALL",151:"ADD.BAR",152:"ADD.MENU",153:"ADD.COMMAND",154:"ENABLE.COMMAND",155:"CHECK.COMMAND",156:"RENAME.COMMAND",157:"SHOW.BAR",158:"DELETE.MENU",159:"DELETE.COMMAND",160:"GET.CHART.ITEM",161:"DIALOG.BOX",162:"CLEAN",163:"MDETERM",164:"MINVERSE",165:"MMULT",166:"FILES",167:"IPMT",168:"PPMT",169:"COUNTA",170:"CANCEL.KEY",171:"FOR",172:"WHILE",173:"BREAK",174:"NEXT",175:"INITIATE",176:"REQUEST",177:"POKE",178:"EXECUTE",179:"TERMINATE",180:"RESTART",181:"HELP",182:"GET.BAR",183:"PRODUCT",184:"FACT",185:"GET.CELL",186:"GET.WORKSPACE",187:"GET.WINDOW",188:"GET.DOCUMENT",189:"DPRODUCT",190:"ISNONTEXT",191:"GET.NOTE",192:"NOTE",193:"STDEVP",194:"VARP",195:"DSTDEVP",196:"DVARP",197:"TRUNC",198:"ISLOGICAL",199:"DCOUNTA",200:"DELETE.BAR",201:"UNREGISTER",204:"USDOLLAR",205:"FINDB",206:"SEARCHB",207:"REPLACEB",208:"LEFTB",209:"RIGHTB",210:"MIDB",211:"LENB",212:"ROUNDUP",213:"ROUNDDOWN",214:"ASC",215:"DBCS",216:"RANK",219:"ADDRESS",220:"DAYS360",221:"TODAY",222:"VDB",223:"ELSE",224:"ELSE.IF",225:"END.IF",226:"FOR.CELL",227:"MEDIAN",228:"SUMPRODUCT",229:"SINH",230:"COSH",231:"TANH",232:"ASINH",233:"ACOSH",234:"ATANH",235:"DGET",236:"CREATE.OBJECT",237:"VOLATILE",238:"LAST.ERROR",239:"CUSTOM.UNDO",240:"CUSTOM.REPEAT",241:"FORMULA.CONVERT",242:"GET.LINK.INFO",243:"TEXT.BOX",244:"INFO",245:"GROUP",246:"GET.OBJECT",247:"DB",248:"PAUSE",251:"RESUME",252:"FREQUENCY",253:"ADD.TOOLBAR",254:"DELETE.TOOLBAR",255:"User",256:"RESET.TOOLBAR",257:"EVALUATE",258:"GET.TOOLBAR",259:"GET.TOOL",260:"SPELLING.CHECK",261:"ERROR.TYPE",262:"APP.TITLE",263:"WINDOW.TITLE",264:"SAVE.TOOLBAR",265:"ENABLE.TOOL",266:"PRESS.TOOL",267:"REGISTER.ID",268:"GET.WORKBOOK",269:"AVEDEV",270:"BETADIST",271:"GAMMALN",272:"BETAINV",273:"BINOMDIST",274:"CHIDIST",275:"CHIINV",276:"COMBIN",277:"CONFIDENCE",278:"CRITBINOM",279:"EVEN",280:"EXPONDIST",281:"FDIST",282:"FINV",283:"FISHER",284:"FISHERINV",285:"FLOOR",286:"GAMMADIST",287:"GAMMAINV",288:"CEILING",289:"HYPGEOMDIST",290:"LOGNORMDIST",291:"LOGINV",292:"NEGBINOMDIST",293:"NORMDIST",294:"NORMSDIST",295:"NORMINV",296:"NORMSINV",297:"STANDARDIZE",298:"ODD",299:"PERMUT",300:"POISSON",301:"TDIST",302:"WEIBULL",303:"SUMXMY2",304:"SUMX2MY2",305:"SUMX2PY2",306:"CHITEST",307:"CORREL",308:"COVAR",309:"FORECAST",310:"FTEST",311:"INTERCEPT",312:"PEARSON",313:"RSQ",314:"STEYX",315:"SLOPE",316:"TTEST",317:"PROB",318:"DEVSQ",319:"GEOMEAN",320:"HARMEAN",321:"SUMSQ",322:"KURT",323:"SKEW",324:"ZTEST",325:"LARGE",326:"SMALL",327:"QUARTILE",328:"PERCENTILE",329:"PERCENTRANK",330:"MODE",331:"TRIMMEAN",332:"TINV",334:"MOVIE.COMMAND",335:"GET.MOVIE",336:"CONCATENATE",337:"POWER",338:"PIVOT.ADD.DATA",339:"GET.PIVOT.TABLE",340:"GET.PIVOT.FIELD",341:"GET.PIVOT.ITEM",342:"RADIANS",343:"DEGREES",344:"SUBTOTAL",345:"SUMIF",346:"COUNTIF",347:"COUNTBLANK",348:"SCENARIO.GET",349:"OPTIONS.LISTS.GET",350:"ISPMT",351:"DATEDIF",352:"DATESTRING",353:"NUMBERSTRING",354:"ROMAN",355:"OPEN.DIALOG",356:"SAVE.DIALOG",357:"VIEW.GET",358:"GETPIVOTDATA",359:"HYPERLINK",360:"PHONETIC",361:"AVERAGEA",362:"MAXA",363:"MINA",364:"STDEVPA",365:"VARPA",366:"STDEVA",367:"VARA",368:"BAHTTEXT",369:"THAIDAYOFWEEK",370:"THAIDIGIT",371:"THAIMONTHOFYEAR",372:"THAINUMSOUND",373:"THAINUMSTRING",374:"THAISTRINGLENGTH",375:"ISTHAIDIGIT",376:"ROUNDBAHTDOWN",377:"ROUNDBAHTUP",378:"THAIYEAR",379:"RTD",380:"CUBEVALUE",381:"CUBEMEMBER",382:"CUBEMEMBERPROPERTY",383:"CUBERANKEDMEMBER",384:"HEX2BIN",385:"HEX2DEC",386:"HEX2OCT",387:"DEC2BIN",388:"DEC2HEX",389:"DEC2OCT",390:"OCT2BIN",391:"OCT2HEX",392:"OCT2DEC",393:"BIN2DEC",394:"BIN2OCT",395:"BIN2HEX",396:"IMSUB",397:"IMDIV",398:"IMPOWER",399:"IMABS",400:"IMSQRT",401:"IMLN",402:"IMLOG2",403:"IMLOG10",404:"IMSIN",405:"IMCOS",406:"IMEXP",407:"IMARGUMENT",408:"IMCONJUGATE",409:"IMAGINARY",410:"IMREAL",411:"COMPLEX",412:"IMSUM",413:"IMPRODUCT",414:"SERIESSUM",415:"FACTDOUBLE",416:"SQRTPI",417:"QUOTIENT",418:"DELTA",419:"GESTEP",420:"ISEVEN",421:"ISODD",422:"MROUND",423:"ERF",424:"ERFC",425:"BESSELJ",426:"BESSELK",427:"BESSELY",428:"BESSELI",429:"XIRR",430:"XNPV",431:"PRICEMAT",432:"YIELDMAT",433:"INTRATE",434:"RECEIVED",435:"DISC",436:"PRICEDISC",437:"YIELDDISC",438:"TBILLEQ",439:"TBILLPRICE",440:"TBILLYIELD",441:"PRICE",442:"YIELD",443:"DOLLARDE",444:"DOLLARFR",445:"NOMINAL",446:"EFFECT",447:"CUMPRINC",448:"CUMIPMT",449:"EDATE",450:"EOMONTH",451:"YEARFRAC",452:"COUPDAYBS",453:"COUPDAYS",454:"COUPDAYSNC",455:"COUPNCD",456:"COUPNUM",457:"COUPPCD",458:"DURATION",459:"MDURATION",460:"ODDLPRICE",461:"ODDLYIELD",462:"ODDFPRICE",463:"ODDFYIELD",464:"RANDBETWEEN",465:"WEEKNUM",466:"AMORDEGRC",467:"AMORLINC",468:"CONVERT",724:"SHEETJS",469:"ACCRINT",470:"ACCRINTM",471:"WORKDAY",472:"NETWORKDAYS",473:"GCD",474:"MULTINOMIAL",475:"LCM",476:"FVSCHEDULE",477:"CUBEKPIMEMBER",478:"CUBESET",479:"CUBESETCOUNT",480:"IFERROR",481:"COUNTIFS",482:"SUMIFS",483:"AVERAGEIF",484:"AVERAGEIFS"},FtabArgc={2:1,3:1,10:0,15:1,16:1,17:1,18:1,19:0,20:1,21:1,22:1,23:1,24:1,25:1,26:1,27:2,30:2,31:3,32:1,33:1,34:0,35:0,38:1,39:2,40:3,41:3,42:3,43:3,44:3,45:3,47:3,48:2,53:1,61:3,63:0,65:3,66:3,67:1,68:1,69:1,70:1,71:1,72:1,73:1,74:0,75:1,76:1,77:1,79:2,80:2,83:1,85:0,86:1,89:0,90:1,94:0,95:0,97:2,98:1,99:1,101:3,102:3,105:1,106:1,108:2,111:1,112:1,113:1,114:1,117:2,118:1,119:4,121:1,126:1,127:1,128:1,129:1,130:1,131:1,133:1,134:1,135:1,136:2,137:2,138:2,140:1,141:1,142:3,143:4,144:4,161:1,162:1,163:1,164:1,165:2,172:1,175:2,176:2,177:3,178:2,179:1,184:1,186:1,189:3,190:1,195:3,196:3,197:1,198:1,199:3,201:1,207:4,210:3,211:1,212:2,213:2,214:1,215:1,225:0,229:1,230:1,231:1,232:1,233:1,234:1,235:3,244:1,247:4,252:2,257:1,261:1,271:1,273:4,274:2,275:2,276:2,277:3,278:3,279:1,280:3,281:3,282:3,283:1,284:1,285:2,286:4,287:3,288:2,289:4,290:3,291:3,292:3,293:4,294:1,295:3,296:1,297:3,298:1,299:2,300:3,301:3,302:4,303:2,304:2,305:2,306:2,307:2,308:2,309:3,310:2,311:2,312:2,313:2,314:2,315:2,316:4,325:2,326:2,327:2,328:2,331:2,332:2,337:2,342:1,343:1,346:2,347:1,350:4,351:3,352:1,353:2,360:1,368:1,369:1,370:1,371:1,372:1,373:1,374:1,375:1,376:1,377:1,378:1,382:3,385:1,392:1,393:1,396:2,397:2,398:2,399:1,400:1,401:1,402:1,403:1,404:1,405:1,406:1,407:1,408:1,409:1,410:1,414:4,415:1,416:1,417:2,420:1,421:1,422:2,424:1,425:2,426:2,427:2,428:2,430:3,438:3,439:3,440:3,443:2,444:2,445:2,446:2,447:6,448:6,449:2,450:2,464:2,468:3,476:2,479:1,480:2,65535:0};strs={},_ssfopts={},browser_has_Map=typeof Map<"u";mergecregex=/<(?:\w+:)?mergeCell ref=["'][A-Z0-9:]+['"]\s*[\/]?>/g,hlinkregex=/<(?:\w+:)?hyperlink [^<>]*>/mg,dimregex=/"(\w*:\w*)"/,colregex=/<(?:\w+:)?col\b[^<>]*[\/]?>/g,afregex=/<(?:\w+:)?autoFilter[^>]*/g,marginregex=/<(?:\w+:)?pageMargins[^<>]*\/>/g,sheetprregex=/<(?:\w+:)?sheetPr\b[^<>]*?\/>/;sheetprot_deffalse=["objects","scenarios","selectLockedCells","selectUnlockedCells"],sheetprot_deftrue=["formatColumns","formatRows","formatCells","insertColumns","insertRows","insertHyperlinks","deleteColumns","deleteRows","sort","autoFilter","pivotTables"];sviewregex=/<(?:\w:)?sheetView(?:[^<>a-z][^<>]*)?\/?>/g;parse_ws_xml_data=(function(){var cellregex=/<(?:\w+:)?c[ \/>]/,rowregex=/<\/(?:\w+:)?row>/,rregex=/r=["']([^"']*)["']/,refregex=/ref=["']([^"']*)["']/;return function(sdata,s,opts,guess,themes,styles,wb){for(var ri=0,x="",cells=[],cref=[],idx=0,i=0,cc=0,d="",p,tag,tagr=0,tagc=0,sstr,ftag,fmtid=0,fillid=0,do_format=Array.isArray(styles.CellXf),cf,arrayf=[],sharedf=[],dense=s["!data"]!=null,rows=[],rowobj={},rowrite=!1,sheetStubs=!!opts.sheetStubs,date1904=!!((wb||{}).WBProps||{}).date1904,marr=sdata.split(rowregex),mt=0,marrlen=marr.length;mt!=marrlen;++mt){x=marr[mt].trim();var xlen=x.length;if(xlen!==0){var rstarti=0;outa:for(ri=0;ri<xlen;++ri)switch(x[ri]){case">":if(x[ri-1]!="/"){++ri;break outa}if(opts&&opts.cellStyles){if(tag=parsexmltag(x.slice(rstarti,ri),!0),tagr=tag.r!=null?parseInt(tag.r,10):tagr+1,tagc=-1,opts.sheetRows&&opts.sheetRows<tagr)continue;rowobj={},rowrite=!1,tag.ht&&(rowrite=!0,rowobj.hpt=parseFloat(tag.ht),rowobj.hpx=pt2px(rowobj.hpt)),tag.hidden&&parsexmlbool(tag.hidden)&&(rowrite=!0,rowobj.hidden=!0),tag.outlineLevel!=null&&(rowrite=!0,rowobj.level=+tag.outlineLevel),rowrite&&(rows[tagr-1]=rowobj)}break;case"<":rstarti=ri;break}if(rstarti>=ri)break;if(tag=parsexmltag(x.slice(rstarti,ri),!0),tagr=tag.r!=null?parseInt(tag.r,10):tagr+1,tagc=-1,!(opts.sheetRows&&opts.sheetRows<tagr)){opts.nodim||(guess.s.r>tagr-1&&(guess.s.r=tagr-1),guess.e.r<tagr-1&&(guess.e.r=tagr-1)),opts&&opts.cellStyles&&(rowobj={},rowrite=!1,tag.ht&&(rowrite=!0,rowobj.hpt=parseFloat(tag.ht),rowobj.hpx=pt2px(rowobj.hpt)),tag.hidden&&parsexmlbool(tag.hidden)&&(rowrite=!0,rowobj.hidden=!0),tag.outlineLevel!=null&&(rowrite=!0,rowobj.level=+tag.outlineLevel),rowrite&&(rows[tagr-1]=rowobj)),cells=x.slice(ri).split(cellregex);for(var rslice=0;rslice!=cells.length&&cells[rslice].trim().charAt(0)=="<";++rslice);for(cells=cells.slice(rslice),ri=0;ri!=cells.length;++ri)if(x=cells[ri].trim(),x.length!==0){if(cref=x.match(rregex),idx=ri,i=0,cc=0,x="<c "+(x.slice(0,1)=="<"?">":"")+x,cref!=null&&cref.length===2){for(idx=0,d=cref[1],i=0;i!=d.length&&!((cc=d.charCodeAt(i)-64)<1||cc>26);++i)idx=26*idx+cc;--idx,tagc=idx}else++tagc;for(i=0;i!=x.length&&x.charCodeAt(i)!==62;++i);if(++i,tag=parsexmltag(x.slice(0,i),!0),tag.r||(tag.r=encode_cell({r:tagr-1,c:tagc})),d=x.slice(i),p={t:""},(cref=str_match_xml_ns(d,"v"))!=null&&cref[1]!==""&&(p.v=unescapexml(cref[1])),opts.cellFormula){if((cref=str_match_xml_ns(d,"f"))!=null){if(cref[1]=="")cref[0].indexOf('t="shared"')>-1&&(ftag=parsexmltag(cref[0]),sharedf[ftag.si]&&(p.f=shift_formula_xlsx(sharedf[ftag.si][1],sharedf[ftag.si][2],tag.r)));else if(p.f=unescapexml(utf8read(cref[1]),!0),opts.xlfn||(p.f=_xlfn(p.f)),cref[0].indexOf('t="array"')>-1)p.F=(d.match(refregex)||[])[1],p.F.indexOf(":")>-1&&arrayf.push([safe_decode_range(p.F),p.F]);else if(cref[0].indexOf('t="shared"')>-1){ftag=parsexmltag(cref[0]);var ___f=unescapexml(utf8read(cref[1]));opts.xlfn||(___f=_xlfn(___f)),sharedf[parseInt(ftag.si,10)]=[ftag,___f,tag.r]}}else(cref=d.match(/<f[^<>]*\/>/))&&(ftag=parsexmltag(cref[0]),sharedf[ftag.si]&&(p.f=shift_formula_xlsx(sharedf[ftag.si][1],sharedf[ftag.si][2],tag.r)));var _tag=decode_cell(tag.r);for(i=0;i<arrayf.length;++i)_tag.r>=arrayf[i][0].s.r&&_tag.r<=arrayf[i][0].e.r&&_tag.c>=arrayf[i][0].s.c&&_tag.c<=arrayf[i][0].e.c&&(p.F=arrayf[i][1])}if(tag.t==null&&p.v===void 0)if(p.f||p.F)p.v=0,p.t="n";else if(sheetStubs)p.t="z";else continue;else p.t=tag.t||"n";switch(guess.s.c>tagc&&(guess.s.c=tagc),guess.e.c<tagc&&(guess.e.c=tagc),p.t){case"n":if(p.v==""||p.v==null){if(!sheetStubs)continue;p.t="z"}else p.v=parseFloat(p.v);break;case"s":if(typeof p.v>"u"){if(!sheetStubs)continue;p.t="z"}else sstr=strs[parseInt(p.v,10)],p.v=sstr.t,p.r=sstr.r,opts.cellHTML&&(p.h=sstr.h);break;case"str":p.t="s",p.v=p.v!=null?unescapexml(utf8read(p.v),!0):"",opts.cellHTML&&(p.h=escapehtml(p.v));break;case"inlineStr":cref=str_match_xml_ns(d,"is"),p.t="s",cref!=null&&(sstr=parse_si(cref[1]))?(p.v=sstr.t,opts.cellHTML&&(p.h=sstr.h)):p.v="";break;case"b":p.v=parsexmlbool(p.v);break;case"d":opts.cellDates?p.v=parseDate(p.v,date1904):(p.v=datenum(parseDate(p.v,date1904),date1904),p.t="n");break;case"e":(!opts||opts.cellText!==!1)&&(p.w=p.v),p.v=RBErr[p.v];break}if(fmtid=fillid=0,cf=null,do_format&&tag.s!==void 0&&(cf=styles.CellXf[tag.s],cf!=null&&(cf.numFmtId!=null&&(fmtid=cf.numFmtId),opts.cellStyles&&cf.fillId!=null&&(fillid=cf.fillId))),safe_format(p,fmtid,fillid,opts,themes,styles,date1904),opts.cellDates&&do_format&&p.t=="n"&&fmt_is_date(table_fmt[fmtid])&&(p.v=numdate(p.v+(date1904?1462:0)),p.t=typeof p.v=="number"?"n":"d"),tag.cm&&opts.xlmeta){var cm=(opts.xlmeta.Cell||[])[+tag.cm-1];cm&&cm.type=="XLDAPR"&&(p.D=!0)}var _r;opts.nodim&&(_r=decode_cell(tag.r),guess.s.r>_r.r&&(guess.s.r=_r.r),guess.e.r<_r.r&&(guess.e.r=_r.r)),dense?(_r=decode_cell(tag.r),s["!data"][_r.r]||(s["!data"][_r.r]=[]),s["!data"][_r.r][_r.c]=p):s[tag.r]=p}}}}rows.length>0&&(s["!rows"]=rows)}})();parse_BrtWsDim=parse_UncheckedRfX,write_BrtWsDim=write_UncheckedRfX;parse_BrtMergeCell=parse_UncheckedRfX,write_BrtMergeCell=write_UncheckedRfX;BrtMarginKeys=["left","right","top","bottom","header","footer"];WBPropsDef=[["allowRefreshQuery",!1,"bool"],["autoCompressPictures",!0,"bool"],["backupFile",!1,"bool"],["checkCompatibility",!1,"bool"],["CodeName",""],["date1904",!1,"bool"],["defaultThemeVersion",0,"int"],["filterPrivacy",!1,"bool"],["hidePivotFieldList",!1,"bool"],["promptedSolutions",!1,"bool"],["publishItems",!1,"bool"],["refreshAllConnections",!1,"bool"],["saveExternalLinkValues",!0,"bool"],["showBorderUnselectedTables",!0,"bool"],["showInkAnnotation",!0,"bool"],["showObjects","all"],["showPivotChartFilter",!1,"bool"],["updateLinks","userSet"]],WBViewDef=[["activeTab",0,"int"],["autoFilterDateGrouping",!0,"bool"],["firstSheet",0,"int"],["minimized",!1,"bool"],["showHorizontalScroll",!0,"bool"],["showSheetTabs",!0,"bool"],["showVerticalScroll",!0,"bool"],["tabRatio",600,"int"],["visibility","visible"]],SheetDef=[],CalcPrDef=[["calcCompleted","true"],["calcMode","auto"],["calcOnSave","true"],["concurrentCalc","true"],["fullCalcOnLoad","false"],["fullPrecision","true"],["iterate","false"],["iterateCount","100"],["iterateDelta","0.001"],["refMode","A1"]];badchars=":][*?/\\".split("");wbnsregex=/<\w+:workbook/;attregexg2=/\b((?:\w+:)?[\w]+)=((?:")([^"]*)(?:")|(?:')([^']*)(?:'))/g,attregex2=/\b((?:\w+:)?[\w]+)=((?:")(?:[^"]*)(?:")|(?:')(?:[^']*)(?:'))/;CONTINUE_RT=[60,1084,2066,2165,2175];PSCLSID={SI:"e0859ff2f94f6810ab9108002b27b3d9",DSI:"02d5cdd59c2e1b10939708002b2cf9ae",UDI:"05d5cdd59c2e1b10939708002b2cf9ae"};XLSBRecordEnum={0:{f:parse_BrtRowHdr},1:{f:parse_BrtCellBlank},2:{f:parse_BrtCellRk},3:{f:parse_BrtCellError},4:{f:parse_BrtCellBool},5:{f:parse_BrtCellReal},6:{f:parse_BrtCellSt},7:{f:parse_BrtCellIsst},8:{f:parse_BrtFmlaString},9:{f:parse_BrtFmlaNum},10:{f:parse_BrtFmlaBool},11:{f:parse_BrtFmlaError},12:{f:parse_BrtShortBlank},13:{f:parse_BrtShortRk},14:{f:parse_BrtShortError},15:{f:parse_BrtShortBool},16:{f:parse_BrtShortReal},17:{f:parse_BrtShortSt},18:{f:parse_BrtShortIsst},19:{f:parse_RichStr},20:{},21:{},22:{},23:{},24:{},25:{},26:{},27:{},28:{},29:{},30:{},31:{},32:{},33:{},34:{},35:{T:1},36:{T:-1},37:{T:1},38:{T:-1},39:{f:parse_BrtName},40:{},42:{},43:{f:parse_BrtFont},44:{f:parse_BrtFmt},45:{f:parse_BrtFill},46:{f:parse_BrtBorder},47:{f:parse_BrtXF},48:{},49:{f:parse_Int32LE},50:{},51:{f:parse_BrtMdb},52:{T:1},53:{T:-1},54:{T:1},55:{T:-1},56:{T:1},57:{T:-1},58:{},59:{},60:{f:parse_ColInfo},62:{f:parse_BrtCellRString},63:{f:parse_BrtCalcChainItem$},64:{f:parse_BrtDVal},65:{},66:{},67:{},68:{},69:{},70:{},128:{},129:{T:1},130:{T:-1},131:{T:1,f:parsenoop,p:0},132:{T:-1},133:{T:1},134:{T:-1},135:{T:1},136:{T:-1},137:{T:1,f:parse_BrtBeginWsView},138:{T:-1},139:{T:1},140:{T:-1},141:{T:1},142:{T:-1},143:{T:1},144:{T:-1},145:{T:1},146:{T:-1},147:{f:parse_BrtWsProp},148:{f:parse_BrtWsDim,p:16},151:{f:parse_BrtPane},152:{},153:{f:parse_BrtWbProp},154:{},155:{},156:{f:parse_BrtBundleSh},157:{},158:{},159:{T:1,f:parse_BrtBeginSst},160:{T:-1},161:{T:1,f:parse_UncheckedRfX},162:{T:-1},163:{T:1},164:{T:-1},165:{T:1},166:{T:-1},167:{},168:{},169:{},170:{},171:{},172:{T:1},173:{T:-1},174:{},175:{},176:{f:parse_BrtMergeCell},177:{T:1},178:{T:-1},179:{T:1},180:{T:-1},181:{T:1},182:{T:-1},183:{T:1},184:{T:-1},185:{T:1},186:{T:-1},187:{T:1},188:{T:-1},189:{T:1},190:{T:-1},191:{T:1},192:{T:-1},193:{T:1},194:{T:-1},195:{T:1},196:{T:-1},197:{T:1},198:{T:-1},199:{T:1},200:{T:-1},201:{T:1},202:{T:-1},203:{T:1},204:{T:-1},205:{T:1},206:{T:-1},207:{T:1},208:{T:-1},209:{T:1},210:{T:-1},211:{T:1},212:{T:-1},213:{T:1},214:{T:-1},215:{T:1},216:{T:-1},217:{T:1},218:{T:-1},219:{T:1},220:{T:-1},221:{T:1},222:{T:-1},223:{T:1},224:{T:-1},225:{T:1},226:{T:-1},227:{T:1},228:{T:-1},229:{T:1},230:{T:-1},231:{T:1},232:{T:-1},233:{T:1},234:{T:-1},235:{T:1},236:{T:-1},237:{T:1},238:{T:-1},239:{T:1},240:{T:-1},241:{T:1},242:{T:-1},243:{T:1},244:{T:-1},245:{T:1},246:{T:-1},247:{T:1},248:{T:-1},249:{T:1},250:{T:-1},251:{T:1},252:{T:-1},253:{T:1},254:{T:-1},255:{T:1},256:{T:-1},257:{T:1},258:{T:-1},259:{T:1},260:{T:-1},261:{T:1},262:{T:-1},263:{T:1},264:{T:-1},265:{T:1},266:{T:-1},267:{T:1},268:{T:-1},269:{T:1},270:{T:-1},271:{T:1},272:{T:-1},273:{T:1},274:{T:-1},275:{T:1},276:{T:-1},277:{},278:{T:1},279:{T:-1},280:{T:1},281:{T:-1},282:{T:1},283:{T:1},284:{T:-1},285:{T:1},286:{T:-1},287:{T:1},288:{T:-1},289:{T:1},290:{T:-1},291:{T:1},292:{T:-1},293:{T:1},294:{T:-1},295:{T:1},296:{T:-1},297:{T:1},298:{T:-1},299:{T:1},300:{T:-1},301:{T:1},302:{T:-1},303:{T:1},304:{T:-1},305:{T:1},306:{T:-1},307:{T:1},308:{T:-1},309:{T:1},310:{T:-1},311:{T:1},312:{T:-1},313:{T:-1},314:{T:1},315:{T:-1},316:{T:1},317:{T:-1},318:{T:1},319:{T:-1},320:{T:1},321:{T:-1},322:{T:1},323:{T:-1},324:{T:1},325:{T:-1},326:{T:1},327:{T:-1},328:{T:1},329:{T:-1},330:{T:1},331:{T:-1},332:{T:1},333:{T:-1},334:{T:1},335:{f:parse_BrtMdtinfo},336:{T:-1},337:{f:parse_BrtBeginEsmdb,T:1},338:{T:-1},339:{T:1},340:{T:-1},341:{T:1},342:{T:-1},343:{T:1},344:{T:-1},345:{T:1},346:{T:-1},347:{T:1},348:{T:-1},349:{T:1},350:{T:-1},351:{},352:{},353:{T:1},354:{T:-1},355:{f:parse_RelID},357:{},358:{},359:{},360:{T:1},361:{},362:{f:parse_ExternSheet},363:{},364:{},366:{},367:{},368:{},369:{},370:{},371:{},372:{T:1},373:{T:-1},374:{T:1},375:{T:-1},376:{T:1},377:{T:-1},378:{T:1},379:{T:-1},380:{T:1},381:{T:-1},382:{T:1},383:{T:-1},384:{T:1},385:{T:-1},386:{T:1},387:{T:-1},388:{T:1},389:{T:-1},390:{T:1},391:{T:-1},392:{T:1},393:{T:-1},394:{T:1},395:{T:-1},396:{},397:{},398:{},399:{},400:{},401:{T:1},403:{},404:{},405:{},406:{},407:{},408:{},409:{},410:{},411:{},412:{},413:{},414:{},415:{},416:{},417:{},418:{},419:{},420:{},421:{},422:{T:1},423:{T:1},424:{T:-1},425:{T:-1},426:{f:parse_BrtArrFmla},427:{f:parse_BrtShrFmla},428:{},429:{T:1},430:{T:-1},431:{T:1},432:{T:-1},433:{T:1},434:{T:-1},435:{T:1},436:{T:-1},437:{T:1},438:{T:-1},439:{T:1},440:{T:-1},441:{T:1},442:{T:-1},443:{T:1},444:{T:-1},445:{T:1},446:{T:-1},447:{T:1},448:{T:-1},449:{T:1},450:{T:-1},451:{T:1},452:{T:-1},453:{T:1},454:{T:-1},455:{T:1},456:{T:-1},457:{T:1},458:{T:-1},459:{T:1},460:{T:-1},461:{T:1},462:{T:-1},463:{T:1},464:{T:-1},465:{T:1},466:{T:-1},467:{T:1},468:{T:-1},469:{T:1},470:{T:-1},471:{},472:{},473:{T:1},474:{T:-1},475:{},476:{f:parse_BrtMargins},477:{},478:{},479:{T:1},480:{T:-1},481:{T:1},482:{T:-1},483:{T:1},484:{T:-1},485:{f:parse_BrtWsFmtInfo},486:{T:1},487:{T:-1},488:{T:1},489:{T:-1},490:{T:1},491:{T:-1},492:{T:1},493:{T:-1},494:{f:parse_BrtHLink},495:{T:1},496:{T:-1},497:{T:1},498:{T:-1},499:{},500:{T:1},501:{T:-1},502:{T:1},503:{T:-1},504:{},505:{T:1},506:{T:-1},507:{},508:{T:1},509:{T:-1},510:{T:1},511:{T:-1},512:{},513:{},514:{T:1},515:{T:-1},516:{T:1},517:{T:-1},518:{T:1},519:{T:-1},520:{T:1},521:{T:-1},522:{},523:{},524:{},525:{},526:{},527:{},528:{T:1},529:{T:-1},530:{T:1},531:{T:-1},532:{T:1},533:{T:-1},534:{},535:{},536:{},537:{},538:{T:1},539:{T:-1},540:{T:1},541:{T:-1},542:{T:1},548:{},549:{},550:{f:parse_RelID},551:{f:parse_XLNullableWideString},552:{},553:{},554:{T:1},555:{T:-1},556:{T:1},557:{T:-1},558:{T:1},559:{T:-1},560:{T:1},561:{T:-1},562:{},564:{},565:{T:1},566:{T:-1},569:{T:1},570:{T:-1},572:{},573:{T:1},574:{T:-1},577:{},578:{},579:{},580:{},581:{},582:{},583:{},584:{},585:{},586:{},587:{},588:{T:-1},589:{},590:{T:1},591:{T:-1},592:{T:1},593:{T:-1},594:{T:1},595:{T:-1},596:{},597:{T:1},598:{T:-1},599:{T:1},600:{T:-1},601:{T:1},602:{T:-1},603:{T:1},604:{T:-1},605:{T:1},606:{T:-1},607:{},608:{T:1},609:{T:-1},610:{},611:{T:1},612:{T:-1},613:{T:1},614:{T:-1},615:{T:1},616:{T:-1},617:{T:1},618:{T:-1},619:{T:1},620:{T:-1},625:{},626:{T:1},627:{T:-1},628:{T:1},629:{T:-1},630:{T:1},631:{T:-1},632:{f:parse_BrtCommentAuthor},633:{T:1},634:{T:-1},635:{T:1,f:parse_BrtBeginComment},636:{T:-1},637:{f:parse_BrtCommentText},638:{T:1},639:{},640:{T:-1},641:{T:1},642:{T:-1},643:{T:1},644:{},645:{T:-1},646:{T:1},648:{T:1},649:{},650:{T:-1},651:{f:parse_BrtCsProp},652:{},653:{T:1},654:{T:-1},655:{T:1},656:{T:-1},657:{T:1},658:{T:-1},659:{},660:{T:1},661:{},662:{T:-1},663:{},664:{T:1},665:{},666:{T:-1},667:{},668:{},669:{},671:{T:1},672:{T:-1},673:{T:1},674:{T:-1},675:{},676:{},677:{},678:{},679:{},680:{},681:{},1024:{},1025:{},1026:{T:1},1027:{T:-1},1028:{T:1},1029:{T:-1},1030:{},1031:{T:1},1032:{T:-1},1033:{T:1},1034:{T:-1},1035:{},1036:{},1037:{},1038:{T:1},1039:{T:-1},1040:{},1041:{T:1},1042:{T:-1},1043:{},1044:{},1045:{},1046:{T:1},1047:{T:-1},1048:{T:1},1049:{T:-1},1050:{},1051:{T:1},1052:{T:1},1053:{f:parse_BrtDVal14},1054:{T:1},1055:{},1056:{T:1},1057:{T:-1},1058:{T:1},1059:{T:-1},1061:{},1062:{T:1},1063:{T:-1},1064:{T:1},1065:{T:-1},1066:{T:1},1067:{T:-1},1068:{T:1},1069:{T:-1},1070:{T:1},1071:{T:-1},1072:{T:1},1073:{T:-1},1075:{T:1},1076:{T:-1},1077:{T:1},1078:{T:-1},1079:{T:1},1080:{T:-1},1081:{T:1},1082:{T:-1},1083:{T:1},1084:{T:-1},1085:{},1086:{T:1},1087:{T:-1},1088:{T:1},1089:{T:-1},1090:{T:1},1091:{T:-1},1092:{T:1},1093:{T:-1},1094:{T:1},1095:{T:-1},1096:{},1097:{T:1},1098:{},1099:{T:-1},1100:{T:1},1101:{T:-1},1102:{},1103:{},1104:{},1105:{},1111:{},1112:{},1113:{T:1},1114:{T:-1},1115:{T:1},1116:{T:-1},1117:{},1118:{T:1},1119:{T:-1},1120:{T:1},1121:{T:-1},1122:{T:1},1123:{T:-1},1124:{T:1},1125:{T:-1},1126:{},1128:{T:1},1129:{T:-1},1130:{},1131:{T:1},1132:{T:-1},1133:{T:1},1134:{T:-1},1135:{T:1},1136:{T:-1},1137:{T:1},1138:{T:-1},1139:{T:1},1140:{T:-1},1141:{},1142:{T:1},1143:{T:-1},1144:{T:1},1145:{T:-1},1146:{},1147:{T:1},1148:{T:-1},1149:{T:1},1150:{T:-1},1152:{T:1},1153:{T:-1},1154:{T:-1},1155:{T:-1},1156:{T:-1},1157:{T:1},1158:{T:-1},1159:{T:1},1160:{T:-1},1161:{T:1},1162:{T:-1},1163:{T:1},1164:{T:-1},1165:{T:1},1166:{T:-1},1167:{T:1},1168:{T:-1},1169:{T:1},1170:{T:-1},1171:{},1172:{T:1},1173:{T:-1},1177:{},1178:{T:1},1180:{},1181:{},1182:{},2048:{T:1},2049:{T:-1},2050:{},2051:{T:1},2052:{T:-1},2053:{},2054:{},2055:{T:1},2056:{T:-1},2057:{T:1},2058:{T:-1},2060:{},2067:{},2068:{T:1},2069:{T:-1},2070:{},2071:{},2072:{T:1},2073:{T:-1},2075:{},2076:{},2077:{T:1},2078:{T:-1},2079:{},2080:{T:1},2081:{T:-1},2082:{},2083:{T:1},2084:{T:-1},2085:{T:1},2086:{T:-1},2087:{T:1},2088:{T:-1},2089:{T:1},2090:{T:-1},2091:{},2092:{},2093:{T:1},2094:{T:-1},2095:{},2096:{T:1},2097:{T:-1},2098:{T:1},2099:{T:-1},2100:{T:1},2101:{T:-1},2102:{},2103:{T:1},2104:{T:-1},2105:{},2106:{T:1},2107:{T:-1},2108:{},2109:{T:1},2110:{T:-1},2111:{T:1},2112:{T:-1},2113:{T:1},2114:{T:-1},2115:{},2116:{},2117:{},2118:{T:1},2119:{T:-1},2120:{},2121:{T:1},2122:{T:-1},2123:{T:1},2124:{T:-1},2125:{},2126:{T:1},2127:{T:-1},2128:{},2129:{T:1},2130:{T:-1},2131:{T:1},2132:{T:-1},2133:{T:1},2134:{},2135:{},2136:{},2137:{T:1},2138:{T:-1},2139:{T:1},2140:{T:-1},2141:{},3072:{},3073:{},4096:{T:1},4097:{T:-1},5002:{T:1},5003:{T:-1},5081:{T:1},5082:{T:-1},5083:{},5084:{T:1},5085:{T:-1},5086:{T:1},5087:{T:-1},5088:{},5089:{},5090:{},5092:{T:1},5093:{T:-1},5094:{},5095:{T:1},5096:{T:-1},5097:{},5099:{},65535:{n:""}},XLSRecordEnum={6:{f:parse_Formula},10:{f:parsenoop2},12:{f:parseuint16},13:{f:parseuint16},14:{f:parsebool},15:{f:parsebool},16:{f:parse_Xnum},17:{f:parsebool},18:{f:parsebool},19:{f:parseuint16},20:{f:parse_XLHeaderFooter},21:{f:parse_XLHeaderFooter},23:{f:parse_ExternSheet},24:{f:parse_Lbl},25:{f:parsebool},26:{},27:{},28:{f:parse_Note},29:{},34:{f:parsebool},35:{f:parse_ExternName},38:{f:parse_Xnum},39:{f:parse_Xnum},40:{f:parse_Xnum},41:{f:parse_Xnum},42:{f:parsebool},43:{f:parsebool},47:{f:parse_FilePass},49:{f:parse_Font},51:{f:parseuint16},60:{},61:{f:parse_Window1},64:{f:parsebool},65:{f:parse_Pane},66:{f:parseuint16},77:{},80:{},81:{},82:{},85:{f:parseuint16},89:{},90:{},91:{},92:{f:parse_WriteAccess},93:{f:parse_Obj},94:{},95:{f:parsebool},96:{},97:{},99:{f:parsebool},125:{f:parse_ColInfo},128:{f:parse_Guts},129:{f:parse_WsBool},130:{f:parseuint16},131:{f:parsebool},132:{f:parsebool},133:{f:parse_BoundSheet8},134:{},140:{f:parse_Country},141:{f:parseuint16},144:{},146:{f:parse_Palette},151:{},152:{},153:{},154:{},155:{},156:{f:parseuint16},157:{},158:{},160:{f:parse_Scl},161:{f:parse_Setup},174:{},175:{},176:{},177:{},178:{},180:{},181:{},182:{},184:{},185:{},189:{f:parse_MulRk},190:{f:parse_MulBlank},193:{f:parsenoop2},197:{},198:{},199:{},200:{},201:{},202:{f:parsebool},203:{},204:{},205:{},206:{},207:{},208:{},209:{},210:{},211:{},213:{},215:{},216:{},217:{},218:{f:parseuint16},220:{},221:{f:parsebool},222:{},224:{f:parse_XF},225:{f:parse_InterfaceHdr},226:{f:parsenoop2},227:{},229:{f:parse_MergeCells},233:{},235:{},236:{},237:{},239:{},240:{},241:{},242:{},244:{},245:{},246:{},247:{},248:{},249:{},251:{},252:{f:parse_SST},253:{f:parse_LabelSst},255:{f:parse_ExtSST},256:{},259:{},290:{},311:{},312:{},315:{},317:{f:parseuint16a},318:{},319:{},320:{},330:{},331:{},333:{},334:{},335:{},336:{},337:{},338:{},339:{},340:{},351:{},352:{f:parsebool},353:{f:parsenoop2},401:{},402:{},403:{},404:{},405:{},406:{},407:{},408:{},425:{},426:{},427:{},428:{},429:{},430:{f:parse_SupBook},431:{f:parsebool},432:{},433:{},434:{},437:{},438:{f:parse_TxO},439:{f:parsebool},440:{f:parse_HLink},441:{},442:{f:parse_XLUnicodeString},443:{},444:{f:parseuint16},445:{},446:{},448:{f:parsenoop2},449:{f:parse_RecalcId,r:2},450:{f:parsenoop2},512:{f:parse_Dimensions},513:{f:parse_Blank},515:{f:parse_Number},516:{f:parse_Label},517:{f:parse_BoolErr},519:{f:parse_String},520:{f:parse_Row},523:{},545:{f:parse_Array},549:{f:parse_DefaultRowHeight},566:{},574:{f:parse_Window2},638:{f:parse_RK},659:{},1048:{},1054:{f:parse_Format},1084:{},1212:{f:parse_ShrFmla},2048:{f:parse_HLinkTooltip},2049:{},2050:{},2051:{},2052:{},2053:{},2054:{},2055:{},2056:{},2057:{f:parse_BOF},2058:{},2059:{},2060:{},2061:{},2062:{},2063:{},2064:{},2066:{},2067:{},2128:{},2129:{},2130:{},2131:{},2132:{},2133:{},2134:{},2135:{},2136:{},2137:{},2138:{},2146:{},2147:{r:12},2148:{},2149:{},2150:{},2151:{f:parsenoop2},2152:{},2154:{},2155:{},2156:{},2161:{},2162:{},2164:{},2165:{},2166:{},2167:{},2168:{},2169:{},2170:{},2171:{},2172:{f:parse_XFCRC,r:12},2173:{f:parse_XFExt,r:12},2174:{},2175:{},2180:{},2181:{},2182:{},2183:{},2184:{},2185:{},2186:{},2187:{},2188:{f:parsebool,r:12},2189:{},2190:{r:12},2191:{},2192:{},2194:{},2195:{},2196:{f:parse_NameCmt,r:12},2197:{},2198:{f:parse_Theme,r:12},2199:{},2200:{},2201:{},2202:{f:parse_MTRSettings,r:12},2203:{f:parsenoop2},2204:{},2205:{},2206:{},2207:{},2211:{f:parse_ForceFullCalculation},2212:{},2213:{},2214:{},2215:{},4097:{},4098:{},4099:{},4102:{},4103:{},4105:{},4106:{},4107:{},4108:{},4109:{},4116:{},4117:{},4118:{},4119:{},4120:{},4121:{},4122:{},4123:{},4124:{},4125:{},4126:{},4127:{},4128:{},4129:{},4130:{},4132:{},4133:{},4134:{f:parseuint16},4135:{},4146:{},4147:{},4148:{},4149:{},4154:{},4156:{},4157:{},4158:{},4159:{},4160:{},4161:{},4163:{},4164:{f:parse_ShtProps},4165:{},4166:{},4168:{},4170:{},4171:{},4174:{},4175:{},4176:{},4177:{},4187:{},4188:{f:parse_ClrtClient},4189:{},4191:{},4192:{},4193:{},4194:{},4195:{},4196:{},4197:{},4198:{},4199:{},4200:{},0:{f:parse_Dimensions},1:{},2:{f:parse_BIFF2INT},3:{f:parse_BIFF2NUM},4:{f:parse_BIFF2STR},5:{f:parse_BIFF2BOOLERR},7:{f:parse_BIFF2STRING},8:{},9:{f:parse_BOF},11:{},22:{f:parseuint16},30:{f:parse_BIFF2Format},31:{},32:{},33:{f:parse_Array},36:{},37:{f:parse_DefaultRowHeight},50:{f:parse_BIFF2FONTXTRA},62:{},52:{},67:{f:parse_BIFF2XF},68:{f:parseuint16},69:{},86:{},126:{},127:{f:parse_ImData},135:{},136:{},137:{},143:{f:parse_BIFF4SheetInfo},145:{},148:{},149:{},150:{},169:{},171:{},188:{},191:{},192:{},194:{},195:{},214:{f:parse_RString},223:{},234:{},354:{},421:{},518:{f:parse_Formula},521:{f:parse_BOF},536:{f:parse_Lbl},547:{f:parse_ExternName},561:{},579:{f:parse_BIFF3XF},1030:{f:parse_Formula},1033:{f:parse_BOF},1091:{f:parse_BIFF4XF},2157:{},2163:{},2177:{},2240:{},2241:{},2242:{},2243:{},2244:{},2245:{},2246:{},2247:{},2248:{},2249:{},2250:{},2251:{},2262:{r:12},101:{},102:{},105:{},106:{},107:{},109:{},112:{},114:{},29282:{}};b8oid=1,b8ocnts=[];HTML_BEGIN='<html><head><meta charset="utf-8"/><title>SheetJS Table Export</title></head><body>',HTML_END="</body></html>";write_styles_ods=(function(){var master_styles=["<office:master-styles>",'<style:master-page style:name="mp1" style:page-layout-name="mp1">',"<style:header/>",'<style:header-left style:display="false"/>',"<style:footer/>",'<style:footer-left style:display="false"/>',"</style:master-page>","</office:master-styles>"].join(""),payload="<office:document-styles "+wxt_helper({"xmlns:office":"urn:oasis:names:tc:opendocument:xmlns:office:1.0","xmlns:table":"urn:oasis:names:tc:opendocument:xmlns:table:1.0","xmlns:style":"urn:oasis:names:tc:opendocument:xmlns:style:1.0","xmlns:text":"urn:oasis:names:tc:opendocument:xmlns:text:1.0","xmlns:draw":"urn:oasis:names:tc:opendocument:xmlns:drawing:1.0","xmlns:fo":"urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0","xmlns:xlink":"http://www.w3.org/1999/xlink","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:of":"urn:oasis:names:tc:opendocument:xmlns:of:1.2","office:version":"1.2"})+">"+master_styles+"</office:document-styles>";return function(){return XML_HEADER+payload}})();write_content_ods=(function(){var write_text_p=function(text,span){return escapexml(text).replace(/ +/g,function($$){return'<text:s text:c="'+$$.length+'"/>'}).replace(/\t/g,"<text:tab/>").replace(/\n/g,span?"<text:line-break/>":"</text:p><text:p>").replace(/^ /,"<text:s/>").replace(/ $/,"<text:s/>")},null_cell_xml=` <table:table-cell />
|
|
102
|
-
`,write_ws=function(ws,wb,i,opts,nfs,date1904){var o=[];o.push(' <table:table table:name="'+escapexml(wb.SheetNames[i])+`" table:style-name="ta1">
|
|
103
|
-
`);var R=0,C=0,range=decode_range(ws["!ref"]||"A1"),marr=ws["!merges"]||[],mi=0,dense=ws["!data"]!=null;if(ws["!cols"])for(C=0;C<=range.e.c;++C)o.push(" <table:table-column"+(ws["!cols"][C]?' table:style-name="co'+ws["!cols"][C].ods+'"':"")+`></table:table-column>
|
|
104
|
-
`);var H="",ROWS=ws["!rows"]||[];for(R=0;R<range.s.r;++R)H=ROWS[R]?' table:style-name="ro'+ROWS[R].ods+'"':"",o.push(" <table:table-row"+H+`></table:table-row>
|
|
105
|
-
`);for(;R<=range.e.r;++R){for(H=ROWS[R]?' table:style-name="ro'+ROWS[R].ods+'"':"",o.push(" <table:table-row"+H+`>
|
|
106
|
-
`),C=0;C<range.s.c;++C)o.push(null_cell_xml);for(;C<=range.e.c;++C){var skip=!1,ct={},textp="";for(mi=0;mi!=marr.length;++mi)if(!(marr[mi].s.c>C)&&!(marr[mi].s.r>R)&&!(marr[mi].e.c<C)&&!(marr[mi].e.r<R)){(marr[mi].s.c!=C||marr[mi].s.r!=R)&&(skip=!0),ct["table:number-columns-spanned"]=marr[mi].e.c-marr[mi].s.c+1,ct["table:number-rows-spanned"]=marr[mi].e.r-marr[mi].s.r+1;break}if(skip){o.push(` <table:covered-table-cell/>
|
|
107
|
-
`);continue}var ref=encode_cell({r:R,c:C}),cell2=dense?(ws["!data"][R]||[])[C]:ws[ref];if(cell2&&cell2.f&&(ct["table:formula"]=escapexml(csf_to_ods_formula(cell2.f)),cell2.F&&cell2.F.slice(0,ref.length)==ref)){var _Fref=decode_range(cell2.F);ct["table:number-matrix-columns-spanned"]=_Fref.e.c-_Fref.s.c+1,ct["table:number-matrix-rows-spanned"]=_Fref.e.r-_Fref.s.r+1}if(!cell2){o.push(null_cell_xml);continue}switch(cell2.t){case"b":textp=cell2.v?"TRUE":"FALSE",ct["office:value-type"]="boolean",ct["office:boolean-value"]=cell2.v?"true":"false";break;case"n":isFinite(cell2.v)?(textp=cell2.w||String(cell2.v||0),ct["office:value-type"]="float",ct["office:value"]=cell2.v||0):(isNaN(cell2.v)?(textp="#NUM!",ct["table:formula"]="of:=#NUM!"):(textp="#DIV/0!",ct["table:formula"]="of:="+(cell2.v<0?"-":"")+"1/0"),ct["office:string-value"]="",ct["office:value-type"]="string",ct["calcext:value-type"]="error");break;case"s":case"str":textp=cell2.v==null?"":cell2.v,ct["office:value-type"]="string";break;case"d":textp=cell2.w||parseDate(cell2.v,date1904).toISOString(),ct["office:value-type"]="date",ct["office:date-value"]=parseDate(cell2.v,date1904).toISOString(),ct["table:style-name"]="ce1";break;default:o.push(null_cell_xml);continue}var text_p=write_text_p(textp);if(cell2.l&&cell2.l.Target){var _tgt=cell2.l.Target;_tgt=_tgt.charAt(0)=="#"?"#"+csf_to_ods_3D(_tgt.slice(1)):_tgt,_tgt.charAt(0)!="#"&&!_tgt.match(/^\w+:/)&&(_tgt="../"+_tgt),text_p=writextag("text:a",text_p,{"xlink:href":_tgt.replace(/&/g,"&")})}nfs[cell2.z]&&(ct["table:style-name"]="ce"+nfs[cell2.z].slice(1));var payload=writextag("text:p",text_p,{});if(cell2.c){for(var acreator="",apayload="",aprops={},ci=0;ci<cell2.c.length;++ci)!acreator&&cell2.c[ci].a&&(acreator=cell2.c[ci].a),apayload+="<text:p>"+write_text_p(cell2.c[ci].t)+"</text:p>";cell2.c.hidden||(aprops["office:display"]=!0),payload=writextag("office:annotation",apayload,aprops)+payload}o.push(" "+writextag("table:table-cell",payload,ct)+`
|
|
108
|
-
`)}o.push(` </table:table-row>
|
|
109
|
-
`)}return(wb.Workbook||{}).Names&&o.push(write_names_ods(wb.Workbook.Names,wb.SheetNames,i)),o.push(` </table:table>
|
|
110
|
-
`),o.join("")},write_automatic_styles_ods=function(o,wb){o.push(` <office:automatic-styles>
|
|
111
|
-
`);var cidx=0;wb.SheetNames.map(function(n){return wb.Sheets[n]}).forEach(function(ws){if(ws&&ws["!cols"]){for(var C=0;C<ws["!cols"].length;++C)if(ws["!cols"][C]){var colobj=ws["!cols"][C];if(colobj.width==null&&colobj.wpx==null&&colobj.wch==null)continue;process_col(colobj),colobj.ods=cidx;var w=ws["!cols"][C].wpx+"px";o.push(' <style:style style:name="co'+cidx+`" style:family="table-column">
|
|
112
|
-
`),o.push(' <style:table-column-properties fo:break-before="auto" style:column-width="'+w+`"/>
|
|
113
|
-
`),o.push(` </style:style>
|
|
114
|
-
`),++cidx}}});var ridx=0;wb.SheetNames.map(function(n){return wb.Sheets[n]}).forEach(function(ws){if(ws&&ws["!rows"]){for(var R=0;R<ws["!rows"].length;++R)if(ws["!rows"][R]){ws["!rows"][R].ods=ridx;var h=ws["!rows"][R].hpx+"px";o.push(' <style:style style:name="ro'+ridx+`" style:family="table-row">
|
|
115
|
-
`),o.push(' <style:table-row-properties fo:break-before="auto" style:row-height="'+h+`"/>
|
|
116
|
-
`),o.push(` </style:style>
|
|
117
|
-
`),++ridx}}}),o.push(` <style:style style:name="ta1" style:family="table" style:master-page-name="mp1">
|
|
118
|
-
`),o.push(` <style:table-properties table:display="true" style:writing-mode="lr-tb"/>
|
|
119
|
-
`),o.push(` </style:style>
|
|
120
|
-
`),o.push(` <number:date-style style:name="N37" number:automatic-order="true">
|
|
121
|
-
`),o.push(` <number:month number:style="long"/>
|
|
122
|
-
`),o.push(` <number:text>/</number:text>
|
|
123
|
-
`),o.push(` <number:day number:style="long"/>
|
|
124
|
-
`),o.push(` <number:text>/</number:text>
|
|
125
|
-
`),o.push(` <number:year/>
|
|
126
|
-
`),o.push(` </number:date-style>
|
|
127
|
-
`);var nfs={},nfi=69;return wb.SheetNames.map(function(n){return wb.Sheets[n]}).forEach(function(ws){if(ws){var dense=ws["!data"]!=null;if(ws["!ref"])for(var range=decode_range(ws["!ref"]),R=0;R<=range.e.r;++R)for(var C=0;C<=range.e.c;++C){var c=dense?(ws["!data"][R]||[])[C]:ws[encode_cell({r:R,c:C})];if(!(!c||!c.z||c.z.toLowerCase()=="general")&&!nfs[c.z]){var out=write_number_format_ods(c.z,"N"+nfi);out&&(nfs[c.z]="N"+nfi,++nfi,o.push(out+`
|
|
128
|
-
`))}}}}),o.push(` <style:style style:name="ce1" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="N37"/>
|
|
129
|
-
`),keys(nfs).forEach(function(nf){o.push('<style:style style:name="ce'+nfs[nf].slice(1)+'" style:family="table-cell" style:parent-style-name="Default" style:data-style-name="'+nfs[nf]+`"/>
|
|
130
|
-
`)}),o.push(` </office:automatic-styles>
|
|
131
|
-
`),nfs};return function(wb,opts){var o=[XML_HEADER],attr=wxt_helper({"xmlns:office":"urn:oasis:names:tc:opendocument:xmlns:office:1.0","xmlns:table":"urn:oasis:names:tc:opendocument:xmlns:table:1.0","xmlns:style":"urn:oasis:names:tc:opendocument:xmlns:style:1.0","xmlns:text":"urn:oasis:names:tc:opendocument:xmlns:text:1.0","xmlns:draw":"urn:oasis:names:tc:opendocument:xmlns:drawing:1.0","xmlns:fo":"urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0","xmlns:xlink":"http://www.w3.org/1999/xlink","xmlns:dc":"http://purl.org/dc/elements/1.1/","xmlns:meta":"urn:oasis:names:tc:opendocument:xmlns:meta:1.0","xmlns:number":"urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0","xmlns:presentation":"urn:oasis:names:tc:opendocument:xmlns:presentation:1.0","xmlns:svg":"urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0","xmlns:chart":"urn:oasis:names:tc:opendocument:xmlns:chart:1.0","xmlns:dr3d":"urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0","xmlns:math":"http://www.w3.org/1998/Math/MathML","xmlns:form":"urn:oasis:names:tc:opendocument:xmlns:form:1.0","xmlns:script":"urn:oasis:names:tc:opendocument:xmlns:script:1.0","xmlns:ooo":"http://openoffice.org/2004/office","xmlns:ooow":"http://openoffice.org/2004/writer","xmlns:oooc":"http://openoffice.org/2004/calc","xmlns:dom":"http://www.w3.org/2001/xml-events","xmlns:xforms":"http://www.w3.org/2002/xforms","xmlns:xsd":"http://www.w3.org/2001/XMLSchema","xmlns:xsi":"http://www.w3.org/2001/XMLSchema-instance","xmlns:sheet":"urn:oasis:names:tc:opendocument:sh33tjs:1.0","xmlns:rpt":"http://openoffice.org/2005/report","xmlns:of":"urn:oasis:names:tc:opendocument:xmlns:of:1.2","xmlns:xhtml":"http://www.w3.org/1999/xhtml","xmlns:grddl":"http://www.w3.org/2003/g/data-view#","xmlns:tableooo":"http://openoffice.org/2009/table","xmlns:drawooo":"http://openoffice.org/2010/draw","xmlns:calcext":"urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0","xmlns:loext":"urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0","xmlns:field":"urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0","xmlns:formx":"urn:openoffice:names:experimental:ooxml-odf-interop:xmlns:form:1.0","xmlns:css3t":"http://www.w3.org/TR/css3-text/","office:version":"1.2"}),fods=wxt_helper({"xmlns:config":"urn:oasis:names:tc:opendocument:xmlns:config:1.0","office:mimetype":"application/vnd.oasis.opendocument.spreadsheet"});opts.bookType=="fods"?(o.push("<office:document"+attr+fods+`>
|
|
132
|
-
`),o.push(write_meta_ods().replace(/<office:document-meta[^<>]*?>/,"").replace(/<\/office:document-meta>/,"")+`
|
|
133
|
-
`)):o.push("<office:document-content"+attr+`>
|
|
134
|
-
`);var nfs=write_automatic_styles_ods(o,wb);o.push(` <office:body>
|
|
135
|
-
`),o.push(` <office:spreadsheet>
|
|
136
|
-
`),((wb.Workbook||{}).WBProps||{}).date1904&&o.push(` <table:calculation-settings table:case-sensitive="false" table:search-criteria-must-apply-to-whole-cell="true" table:use-wildcards="true" table:use-regular-expressions="false" table:automatic-find-labels="false">
|
|
137
|
-
<table:null-date table:date-value="1904-01-01"/>
|
|
138
|
-
</table:calculation-settings>
|
|
139
|
-
`);for(var i=0;i!=wb.SheetNames.length;++i)o.push(write_ws(wb.Sheets[wb.SheetNames[i]],wb,i,opts,nfs,((wb.Workbook||{}).WBProps||{}).date1904));return(wb.Workbook||{}).Names&&o.push(write_names_ods(wb.Workbook.Names,wb.SheetNames,-1)),o.push(` </office:spreadsheet>
|
|
140
|
-
`),o.push(` </office:body>
|
|
141
|
-
`),opts.bookType=="fods"?o.push("</office:document>"):o.push("</office:document-content>"),o.join("")}})();subarray=(function(){try{return typeof Uint8Array>"u"||typeof Uint8Array.prototype.subarray>"u"?"slice":typeof Buffer<"u"?typeof Buffer.prototype.subarray>"u"?"slice":(typeof Buffer.from=="function"?Buffer.from([72,62]):new Buffer([72,62]))instanceof Uint8Array?"subarray":"slice":"subarray"}catch{return"slice"}})();numbers_lut_new=function(){return{sst:[],rsst:[],ofmt:[],nfmt:[],fmla:[],ferr:[],cmnt:[]}};USE_WIDE_ROWS=!0;qreg=/"/g;utils={encode_col,encode_row,encode_cell,encode_range,decode_col,decode_row,split_cell,decode_cell,decode_range,format_cell,sheet_new,sheet_add_aoa,sheet_add_json,sheet_add_dom,aoa_to_sheet,json_to_sheet,table_to_sheet:parse_dom_table,table_to_book,sheet_to_csv,sheet_to_txt,sheet_to_json,sheet_to_html,sheet_to_formulae,sheet_to_row_object_array:sheet_to_json,sheet_get_cell:ws_get_cell_stub,book_new,book_append_sheet,book_set_sheet_visibility,cell_set_number_format,cell_set_hyperlink,cell_set_internal_link,cell_add_comment,sheet_set_array_formula,consts:{SHEET_VISIBLE:0,SHEET_HIDDEN:1,SHEET_VERY_HIDDEN:2}};__stream={to_json:write_json_stream,to_html:write_html_stream,to_csv:write_csv_stream,to_xlml:write_xlml_stream,set_readable},version=XLSX.version,xlsx_default={parse_xlscfb,parse_zip,read:readSync,readFile:readFileSync,readFileSync,write:writeSync,writeFile:writeFileSync,writeFileSync,writeFileAsync,writeXLSX:writeSyncXLSX,writeFileXLSX:writeFileSyncXLSX,utils,set_fs,set_cptable,stream:__stream,SSF,CFB}}});var operate_xlsx_exports={};__export(operate_xlsx_exports,{loadSheetJs:()=>loadSheetJs,readWorkbookBytes:()=>readWorkbookBytes,workbookEngine:()=>workbookEngine,writeWorkbookBytes:()=>writeWorkbookBytes,xlsxEngine:()=>xlsxEngine});module.exports=__toCommonJS(operate_xlsx_exports);var import_delimited2=require("@ai-matrx/kit/delimited");var import_download=require("@ai-matrx/kit/download"),import_json_format=require("@ai-matrx/kit/json-format"),import_html_escape=require("@ai-matrx/kit/html-escape"),import_delimited=require("@ai-matrx/kit/delimited"),import_transfer_json=require("@ai-matrx/kit/transfer-json"),import_transfer_json2=require("@ai-matrx/kit/transfer-json");var enc=x=>x.replace(/~/g,"~0").replace(/\//g,"~1"),dec=x=>x.replace(/~1/g,"/").replace(/~0/g,"~");function deepFreeze(v){if(ArrayBuffer.isView(v))return v;if(v&&typeof v=="object"&&!Object.isFrozen(v)){Object.freeze(v);for(let x of Object.values(v))deepFreeze(x)}return v}function at(v,path){if(validatePointer(path),path==="")return v;if(!path.startsWith("/"))throw new import_transfer_json.ContentTransferError("invalid-path","Expected RFC 6901 pointer",path);let cur=v;for(let part of path.slice(1).split("/").map(dec))if(Array.isArray(cur))cur=cur[Number(part)];else if(cur&&typeof cur=="object")cur=Object.hasOwn(cur,part)?cur[part]:void 0;else return;return cur}function validatePointer(path){if(path!==""&&!path.startsWith("/")||/~(?![01])/u.test(path))throw new import_transfer_json.ContentTransferError("invalid-path","Expected an RFC 6901 JSON pointer",path)}function readTransferCell(row,column){return at(row,column.path)}var textValue=value=>value==null?"":typeof value=="string"?value:(0,import_json_format.stringifyJson)(value,{style:"compact"});function sealTransferArtifact(artifact){if(!artifact.file)return deepFreeze({...artifact,omissions:artifact.omissions.map(o=>({...o}))});let bytes=artifact.file.bytes.slice(),file={filename:artifact.file.filename,mime:artifact.file.mime,get bytes(){return bytes.slice()}};return deepFreeze({...artifact,file,omissions:artifact.omissions.map(o=>({...o}))})}function exportedColumns(columns){return columns.filter(c=>c.visible&&c.exportable!==!1&&c.classification!=="secret"&&c.classification!=="credential")}function serialize(draft,format,options={}){let payload=draft.payload,omissions=draft.omissions.map(o=>({...o})),plainText="",html,mime="text/plain;charset=utf-8",extension="txt",columnCell=(row,column)=>textValue(readTransferCell(row,column));if((format==="csv"||format==="tsv")&&payload.kind!=="rows")throw new import_transfer_json.ContentTransferError("unsupported-format",`${format.toUpperCase()} requires tabular data`);if(format==="json"||format==="compact-json"){let value=payload.kind==="rows"?payload.rows:payload.kind==="text"||payload.kind==="markdown"?payload.text:payload.value;plainText=(0,import_json_format.stringifyJson)(value,{style:format==="json"?"pretty":"compact"}),mime="application/json;charset=utf-8",extension="json"}else if(payload.kind==="rows"){let columns=exportedColumns(payload.columns);if(format==="markdown"){let escapeCell=value=>(0,import_html_escape.escapeHtml)(value).replace(/\\/g,"\\\\").replace(/\|/g,"\\|").replace(/\r\n|\r|\n/g,"<br>");plainText=[`| ${columns.map(c=>escapeCell(c.label)).join(" | ")} |`,`| ${columns.map(()=>"---").join(" | ")} |`,...payload.rows.map(row=>`| ${columns.map(c=>escapeCell(columnCell(row,c))).join(" | ")} |`)].join(`
|
|
1
|
+
"use strict";var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __hasOwnProp=Object.prototype.hasOwnProperty;var __export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var operate_xlsx_exports={};__export(operate_xlsx_exports,{loadSheetJs:()=>import_xlsx2.loadSheetJs,readWorkbookBytes:()=>import_xlsx2.readWorkbookBytes,workbookEngine:()=>workbookEngine,writeWorkbookBytes:()=>import_xlsx2.writeWorkbookBytes,xlsxEngine:()=>xlsxEngine});module.exports=__toCommonJS(operate_xlsx_exports);var import_delimited2=require("@ai-matrx/kit/delimited");var import_download=require("@ai-matrx/kit/download"),import_json_format=require("@ai-matrx/kit/json-format"),import_html_escape=require("@ai-matrx/kit/html-escape"),import_delimited=require("@ai-matrx/kit/delimited"),import_transfer_json=require("@ai-matrx/kit/transfer-json"),import_transfer_json2=require("@ai-matrx/kit/transfer-json");var enc=x=>x.replace(/~/g,"~0").replace(/\//g,"~1"),dec=x=>x.replace(/~1/g,"/").replace(/~0/g,"~");function deepFreeze(v){if(ArrayBuffer.isView(v))return v;if(v&&typeof v=="object"&&!Object.isFrozen(v)){Object.freeze(v);for(let x of Object.values(v))deepFreeze(x)}return v}function at(v,path){if(validatePointer(path),path==="")return v;if(!path.startsWith("/"))throw new import_transfer_json.ContentTransferError("invalid-path","Expected RFC 6901 pointer",path);let cur=v;for(let part of path.slice(1).split("/").map(dec))if(Array.isArray(cur))cur=cur[Number(part)];else if(cur&&typeof cur=="object")cur=Object.hasOwn(cur,part)?cur[part]:void 0;else return;return cur}function validatePointer(path){if(path!==""&&!path.startsWith("/")||/~(?![01])/u.test(path))throw new import_transfer_json.ContentTransferError("invalid-path","Expected an RFC 6901 JSON pointer",path)}function readTransferCell(row,column){return at(row,column.path)}var textValue=value=>value==null?"":typeof value=="string"?value:(0,import_json_format.stringifyJson)(value,{style:"compact"});function sealTransferArtifact(artifact){if(!artifact.file)return deepFreeze({...artifact,omissions:artifact.omissions.map(o=>({...o}))});let bytes=artifact.file.bytes.slice(),file={filename:artifact.file.filename,mime:artifact.file.mime,get bytes(){return bytes.slice()}};return deepFreeze({...artifact,file,omissions:artifact.omissions.map(o=>({...o}))})}function exportedColumns(columns){return columns.filter(c=>c.visible&&c.exportable!==!1&&c.classification!=="secret"&&c.classification!=="credential")}function serialize(draft,format,options={}){let payload=draft.payload,omissions=draft.omissions.map(o=>({...o})),plainText="",html,mime="text/plain;charset=utf-8",extension="txt",columnCell=(row,column)=>textValue(readTransferCell(row,column));if((format==="csv"||format==="tsv")&&payload.kind!=="rows")throw new import_transfer_json.ContentTransferError("unsupported-format",`${format.toUpperCase()} requires tabular data`);if(format==="json"||format==="compact-json"){let value=payload.kind==="rows"?payload.rows:payload.kind==="text"||payload.kind==="markdown"?payload.text:payload.value;plainText=(0,import_json_format.stringifyJson)(value,{style:format==="json"?"pretty":"compact"}),mime="application/json;charset=utf-8",extension="json"}else if(payload.kind==="rows"){let columns=exportedColumns(payload.columns);if(format==="markdown"){let escapeCell=value=>(0,import_html_escape.escapeHtml)(value).replace(/\\/g,"\\\\").replace(/\|/g,"\\|").replace(/\r\n|\r|\n/g,"<br>");plainText=[`| ${columns.map(c=>escapeCell(c.label)).join(" | ")} |`,`| ${columns.map(()=>"---").join(" | ")} |`,...payload.rows.map(row=>`| ${columns.map(c=>escapeCell(columnCell(row,c))).join(" | ")} |`)].join(`
|
|
142
2
|
`),mime="text/markdown;charset=utf-8",extension="md"}else{let delimiter=format==="csv"?",":" ",safe=options.spreadsheetSafe??(0,import_delimited.spreadsheetSafeByDefault)(format),encode=(value,path,isString=!0)=>{let out=(0,import_delimited.encodeDelimitedCell)(value,{delimiter,spreadsheetSafe:safe&&isString});return out.escaped&&omissions.push({path,reason:"escaped",count:1}),out.text};plainText=[columns.map(c=>encode(c.label,`/columns/${enc(c.id)}`)).join(delimiter),...payload.rows.map((row,index)=>columns.map(c=>encode(columnCell(row,c),`/rows/${index}${c.path}`,typeof readTransferCell(row,c)=="string")).join(delimiter))].join(`
|
|
143
|
-
`),format==="csv"&&(mime="text/csv;charset=utf-8",extension="csv"),format==="tsv"&&(mime="text/tab-separated-values;charset=utf-8",extension="tsv")}format==="html"&&(html=`<table><thead><tr>${columns.map(c=>`<th>${(0,import_html_escape.escapeHtml)(c.label)}</th>`).join("")}</tr></thead><tbody>${payload.rows.map(row=>`<tr>${columns.map(c=>`<td>${(0,import_html_escape.escapeHtml)(columnCell(row,c)).replace(/\r\n|\r|\n/g,"<br>")}</td>`).join("")}</tr>`).join("")}</tbody></table>`)}else plainText=payload.kind==="text"||payload.kind==="markdown"?payload.text:(0,import_json_format.stringifyJson)(payload.value,{style:"pretty"}),format==="markdown"&&(mime="text/markdown;charset=utf-8",extension="md"),format==="html"&&(html=`<pre>${(0,import_html_escape.escapeHtml)(plainText)}</pre>`);return format==="html"&&(mime="text/html;charset=utf-8",extension="html"),sealTransferArtifact({snapshotId:draft.snapshotId,draftRevision:draft.revision,format,plainText,...html===void 0?{}:{html},file:{filename:options.filename??`export.${extension}`,mime,bytes:new TextEncoder().encode(format==="html"?html??plainText:plainText)},omissions})}var cell=value=>value==null?null:typeof value=="string"||typeof value=="number"||typeof value=="boolean"?value:JSON.stringify(value),xlsxEngine={async build(draft,options,signal){if(signal.aborted)throw new DOMException("Cancelled","AbortError");let p=draft.payload;if(p.kind!=="rows")throw new import_transfer_json2.ContentTransferError("unsupported-format","An Excel workbook needs table rows. Download it as CSV or JSON instead.");let columns=p.columns.filter(c=>c.visible&&c.exportable!==!1&&c.classification!=="secret"&&c.classification!=="credential"),
|
|
144
|
-
/*! Bundled license information:
|
|
145
|
-
|
|
146
|
-
xlsx/xlsx.mjs:
|
|
147
|
-
(*! xlsx.js (C) 2013-present SheetJS -- http://sheetjs.com *)
|
|
148
|
-
(*! sheetjs (C) 2013-present SheetJS -- http://sheetjs.com *)
|
|
149
|
-
*/
|
|
3
|
+
`),format==="csv"&&(mime="text/csv;charset=utf-8",extension="csv"),format==="tsv"&&(mime="text/tab-separated-values;charset=utf-8",extension="tsv")}format==="html"&&(html=`<table><thead><tr>${columns.map(c=>`<th>${(0,import_html_escape.escapeHtml)(c.label)}</th>`).join("")}</tr></thead><tbody>${payload.rows.map(row=>`<tr>${columns.map(c=>`<td>${(0,import_html_escape.escapeHtml)(columnCell(row,c)).replace(/\r\n|\r|\n/g,"<br>")}</td>`).join("")}</tr>`).join("")}</tbody></table>`)}else plainText=payload.kind==="text"||payload.kind==="markdown"?payload.text:(0,import_json_format.stringifyJson)(payload.value,{style:"pretty"}),format==="markdown"&&(mime="text/markdown;charset=utf-8",extension="md"),format==="html"&&(html=`<pre>${(0,import_html_escape.escapeHtml)(plainText)}</pre>`);return format==="html"&&(mime="text/html;charset=utf-8",extension="html"),sealTransferArtifact({snapshotId:draft.snapshotId,draftRevision:draft.revision,format,plainText,...html===void 0?{}:{html},file:{filename:options.filename??`export.${extension}`,mime,bytes:new TextEncoder().encode(format==="html"?html??plainText:plainText)},omissions})}var import_xlsx=require("@ai-matrx/print/xlsx"),import_xlsx2=require("@ai-matrx/print/xlsx"),cell=value=>value==null?null:typeof value=="string"||typeof value=="number"||typeof value=="boolean"?value:JSON.stringify(value),xlsxEngine={async build(draft,options,signal){if(signal.aborted)throw new DOMException("Cancelled","AbortError");let p=draft.payload;if(p.kind!=="rows")throw new import_transfer_json2.ContentTransferError("unsupported-format","An Excel workbook needs table rows. Download it as CSV or JSON instead.");let columns=p.columns.filter(c=>c.visible&&c.exportable!==!1&&c.classification!=="secret"&&c.classification!=="credential"),filename=options.filename??"export.xlsx",sheetName=filename.replace(/\.xlsx$/i,"").replace(/[\\/?*[\]:]/g," ").trim().slice(0,31)||"Data",written=await(0,import_xlsx.writeWorkbookBytes)({sheets:[{name:sheetName,rows:[columns.map(c=>c.label),...p.rows.map(row=>columns.map(c=>cell(readTransferCell(row,c))))]}]});if(signal.aborted)throw new DOMException("Cancelled","AbortError");return sealTransferArtifact({snapshotId:draft.snapshotId,draftRevision:draft.revision,format:"xlsx",plainText:serialize(draft,"tsv").plainText,file:{filename,mime:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",bytes:written},omissions:draft.omissions.map(o=>({...o}))})}},XLSX_MIME="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",workbookEngine={async build(draft,options,signal){if(signal.aborted)throw new DOMException("Cancelled","AbortError");let p=draft.payload;if(p.kind!=="registered"||p.format!=="workbook")throw new import_transfer_json2.ContentTransferError("unsupported-format","A formatted workbook needs workbook content. Download the table as Excel instead.");let value=p.value,bytes=await(0,import_xlsx.writeWorkbookBytes)(value);if(signal.aborted)throw new DOMException("Cancelled","AbortError");let plainText=(0,import_delimited2.toDelimited)((value.sheets[0]?.rows??[]).map(row=>row.map(c=>c==null?null:typeof c=="object"?c.v??null:c)),{format:"tsv"});return sealTransferArtifact({snapshotId:draft.snapshotId,draftRevision:draft.revision,format:"xlsx-workbook",plainText,file:{filename:options.filename??"workbook.xlsx",mime:XLSX_MIME,bytes},omissions:draft.omissions.map(o=>({...o}))})}};
|
|
150
4
|
//# sourceMappingURL=operate-xlsx.cjs.map
|