@cj-tech-master/excelts 9.4.0 → 9.4.1
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/dist/browser/index.browser.d.ts +1 -0
- package/dist/browser/index.browser.js +1 -0
- package/dist/browser/index.d.ts +1 -0
- package/dist/browser/index.js +1 -0
- package/dist/browser/modules/excel/cell.d.ts +1 -0
- package/dist/browser/modules/excel/note.d.ts +3 -23
- package/dist/browser/modules/excel/note.js +8 -2
- package/dist/browser/modules/excel/utils/ooxml-paths.d.ts +17 -5
- package/dist/browser/modules/excel/utils/ooxml-paths.js +46 -19
- package/dist/browser/modules/excel/xlsx/xform/comment/comment-xform.js +3 -2
- package/dist/browser/modules/excel/xlsx/xform/comment/comments-xform.d.ts +8 -0
- package/dist/browser/modules/excel/xlsx/xform/comment/comments-xform.js +52 -5
- package/dist/browser/modules/excel/xlsx/xform/comment/vml-client-data-xform.d.ts +6 -0
- package/dist/browser/modules/excel/xlsx/xform/comment/vml-client-data-xform.js +27 -1
- package/dist/browser/modules/excel/xlsx/xform/comment/vml-shape-xform.js +4 -0
- package/dist/browser/modules/excel/xlsx/xform/sheet/worksheet-xform.js +54 -14
- package/dist/browser/modules/excel/xlsx/xlsx.browser.d.ts +3 -3
- package/dist/browser/modules/excel/xlsx/xlsx.browser.js +16 -15
- package/dist/cjs/index.js +4 -2
- package/dist/cjs/modules/excel/note.js +8 -2
- package/dist/cjs/modules/excel/utils/ooxml-paths.js +49 -24
- package/dist/cjs/modules/excel/xlsx/xform/comment/comment-xform.js +3 -2
- package/dist/cjs/modules/excel/xlsx/xform/comment/comments-xform.js +52 -5
- package/dist/cjs/modules/excel/xlsx/xform/comment/vml-client-data-xform.js +27 -1
- package/dist/cjs/modules/excel/xlsx/xform/comment/vml-shape-xform.js +4 -0
- package/dist/cjs/modules/excel/xlsx/xform/sheet/worksheet-xform.js +53 -13
- package/dist/cjs/modules/excel/xlsx/xlsx.browser.js +15 -14
- package/dist/esm/index.browser.js +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/modules/excel/note.js +8 -2
- package/dist/esm/modules/excel/utils/ooxml-paths.js +46 -19
- package/dist/esm/modules/excel/xlsx/xform/comment/comment-xform.js +3 -2
- package/dist/esm/modules/excel/xlsx/xform/comment/comments-xform.js +52 -5
- package/dist/esm/modules/excel/xlsx/xform/comment/vml-client-data-xform.js +27 -1
- package/dist/esm/modules/excel/xlsx/xform/comment/vml-shape-xform.js +4 -0
- package/dist/esm/modules/excel/xlsx/xform/sheet/worksheet-xform.js +54 -14
- package/dist/esm/modules/excel/xlsx/xlsx.browser.js +16 -15
- package/dist/iife/excelts.iife.js +149 -56
- package/dist/iife/excelts.iife.js.map +1 -1
- package/dist/iife/excelts.iife.min.js +30 -30
- package/dist/types/index.browser.d.ts +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/modules/excel/cell.d.ts +1 -0
- package/dist/types/modules/excel/note.d.ts +3 -23
- package/dist/types/modules/excel/utils/ooxml-paths.d.ts +17 -5
- package/dist/types/modules/excel/xlsx/xform/comment/comments-xform.d.ts +8 -0
- package/dist/types/modules/excel/xlsx/xform/comment/vml-client-data-xform.d.ts +6 -0
- package/dist/types/modules/excel/xlsx/xlsx.browser.d.ts +3 -3
- package/package.json +4 -4
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* @cj-tech-master/excelts v9.4.
|
|
2
|
+
* @cj-tech-master/excelts v9.4.1
|
|
3
3
|
* Zero-dependency TypeScript toolkit — Excel (XLSX), PDF, CSV, Markdown, XML, ZIP/TAR, and streaming.
|
|
4
4
|
* (c) 2026 cjnoname
|
|
5
5
|
* Released under the MIT License
|
|
@@ -112,8 +112,8 @@ onmessage = async (ev) => {
|
|
|
112
112
|
`],{type:`text/javascript`});return Os=URL.createObjectURL(t),Os}var As=class extends ir{constructor(e){super({write:(e,t,n)=>{this._doWrite(e,n)},final:e=>{this._doClose(e)}}),this._nextId=1,this._pendingAcks=new Map,this._workerClosed=!1,this._junkError=!1,this._terminated=!1;let t=ks(e);this.worker=new Worker(t),this.worker.onmessage=e=>{let t=e.data;if(!(!t||typeof t.t!=`string`)){if(t.t===`data`){let e=t.chunk;this.push(e);return}if(t.t===`end`){this.push(null),this._terminateWorker();return}if(t.t===`aborted`){this._terminateWorker();return}if(t.t===`ack`){let e=t.id,n=this._pendingAcks.get(e);n&&(this._pendingAcks.delete(e),n());return}if(t.t===`error`){let e=typeof t.message==`string`?t.message:`Worker inflate error`;if(e.includes(`Junk`)||e.includes(`junk`)){this._junkError=!0,this.push(null),this._terminateWorker(),this._settlePendingAcks();return}let n=Error(e);this._settlePendingAcks(n),this.emit(`error`,n),this._terminateWorker();return}}},this.worker.onerror=e=>{let t=Error(e.message??`Worker error`);this._settlePendingAcks(t),this.emit(`error`,t),this._terminateWorker()}}_settlePendingAcks(e){if(this._pendingAcks.size!==0){for(let t of this._pendingAcks.values())t(e);this._pendingAcks.clear()}}_terminateWorker(){if(!this._terminated){this._terminated=!0;try{this.worker.terminate()}catch{}}}_doWrite(e,t){if(this._workerClosed||this._junkError){t();return}let n=this._nextId++;this._pendingAcks.set(n,t);let r=e.byteOffset===0&&e.byteLength===e.buffer.byteLength?e:e.slice();this.worker.postMessage({t:`write`,id:n,chunk:r},[r.buffer])}_doClose(e){if(this._workerClosed){e();return}this._workerClosed=!0,this.worker.postMessage({t:`close`}),e()}destroy(e){if(!this._workerClosed){this._workerClosed=!0;try{this.worker.postMessage({t:`abort`})}catch{}}return this._terminateWorker(),super.destroy(e??void 0)}},js=class extends ir{constructor(){super({write:(e,t,n)=>{if(this._finished){n(Error(`write after end`));return}this.chunks.push(e),n()},final:e=>{this._decompress(e)}}),this.chunks=[],this._finished=!1}_decompress(e){try{let t=ki(E(this.chunks));this.push(t),this.push(null),this._finished=!0,e()}catch(t){e(o(t))}}destroy(e){return this._finished=!0,this.chunks=[],super.destroy(e??void 0)}};function Ms(){return si()?new Ds:new js}let Ns=Yo;function Ps(e){return class extends ir{constructor(t={}){super({objectMode:!0,write:(e,t,n)=>{this._handleWrite(e,n)},final:e=>{this.finished=!0,this._maybeReleaseWriteCallback(),this._wakeUp(),this.emit(`data-available`),this.emit(`chunk`,!1),this._parsingDone.then(()=>e()).catch(e)}}),this._buffer=new ti,this.finished=!1,this._driverState={},this._parsingDone=Promise.resolve(),this._parserDoneFlag=!1,this._parserError=null,this._parserDeferred=null,this._parserDonePromise=null,this._entryQueue=[],this._entryWaiter=null,this._entriesDone=!1,this._opts=t,this.on(`error`,e=>{this._rejectParserDeferred(e),this._closeEntryQueue(e)});let n=Math.max(64*1024,t.inputHighWaterMarkBytes??2*1024*1024),r=Math.max(32*1024,t.inputLowWaterMarkBytes??Math.floor(n/4));this._inputHighWaterMarkBytes=n,this._inputLowWaterMarkBytes=Math.min(r,n);let i={pull:e=>this.pull(e),pullUntil:(e,t)=>this.pullUntil(e,t),stream:e=>this.stream(e),streamUntilDataDescriptor:()=>this._streamUntilDataDescriptor(),setDone:()=>{this.push(null)}},a={emitEntry:e=>{this.emit(`entry`,e)},pushEntry:e=>{this.push(e),this._enqueueEntry(e)},pushEntryIfPiped:e=>{this._enqueueEntry(e)},emitCrxHeader:e=>{this.crxHeader=e,this.emit(`crx-header`,e)},emitError:e=>{this.__emittedError=e,this.emit(`error`,e)},emitClose:()=>{this.emit(`close`)}};queueMicrotask(()=>{let t=()=>{if(this._opts.useWorkerInflate&&typeof Worker<`u`&&si())try{return new As(this._opts.workerInflateUrl)}catch{return e()}return e()};this._parsingDone=ws(this._opts,i,a,t,this._driverState),this._parsingDone.then(()=>{this.__emittedError?(this._rejectParserDeferred(this.__emittedError),this._closeEntryQueue(this.__emittedError)):(this._resolveParserDeferred(),this._closeEntryQueue())},e=>{(!this.__emittedError||this.__emittedError!==e)&&(this.__emittedError=e,this.emit(`error`,e)),this._rejectParserDeferred(e),this._closeEntryQueue(e),this.emit(`close`)})})}_handleWrite(e,t){this._buffer.append(e),this._buffer.length>=this._inputHighWaterMarkBytes?this._writeCb=t:t(),this._wakeUp(),this.emit(`data-available`),this.emit(`chunk`)}get buffer(){return this._buffer.view()}set buffer(e){this._buffer.reset(e)}_wakeUp(){if(this._pendingResolve){let e=this._pendingResolve;this._pendingResolve=void 0,this._pendingDataPromise=void 0,e()}}_maybeReleaseWriteCallback(){if(!this._writeCb||this._buffer.length>this._inputLowWaterMarkBytes)return;let e=this._writeCb;this._writeCb=void 0,e()}_waitForData(){return this._pendingDataPromise||=new Promise(e=>{this._pendingResolve=e}),this._pendingDataPromise}async _pullInternal(e){if(e===0)return P;let t=e,n=null,r=null,i=e=>{if(e.length!==0){if(!n){n=e;return}if(!r){r=[n,e];return}r.push(e)}};for(;t>0;){for(;this._buffer.length===0;){if(this.finished)throw Error(`FILE_ENDED`);await this._waitForData()}let e=Math.min(t,this._buffer.length);i(this._buffer.read(e)),t-=e,this._buffer.length===0&&this._maybeReleaseWriteCallback()}return this._maybeReleaseWriteCallback(),n?r?E(r):n:P}async _pullUntilInternal(e,t=!1){let n=null,r=null,i=new _s(e),a=e.length,o=e=>{if(e.length!==0){if(!n){n=e;return}if(!r){r=[n,e];return}r.push(e)}};for(;;){let e=this._buffer.length,s=i.find(this._buffer);if(s!==-1){this.match=s;let e=s+(t?a:0);return e>0&&(o(this._buffer.read(e)),this._maybeReleaseWriteCallback()),n?r?E(r):n:P}if(i.onNoMatch(e),this.finished)throw Error(`FILE_ENDED`);let c=this._buffer.length-a;c>0&&(o(this._buffer.read(c)),i.onConsume(c),this._maybeReleaseWriteCallback()),await this._waitForData()}}_streamFixedLength(e){let t=new or({highWaterMark:bs}),n=e,r=!1,i=!1,a=()=>{i=!1,o()},o=()=>{if(!r&&!i){for(;n>0&&this._buffer.length>0;){let e=Math.min(n,this._buffer.length),r=this._buffer.read(e);n-=e;let o=t.write(r);if(this._maybeReleaseWriteCallback(),!o){i=!0,t.once(`drain`,a);return}}n===0?(r=!0,this.removeListener(`data-available`,o),t.end()):this.finished&&(r=!0,this.removeListener(`data-available`,o),t.destroy(Error(`FILE_ENDED`)))}};return this.on(`data-available`,o),queueMicrotask(()=>o()),t}_streamUntilPattern(e,t=!1){let n=new or({highWaterMark:bs}),r=!1,i=e.length,a=new _s(e),o=!1,s=()=>{o=!1,c()},c=()=>{if(!(r||o))for(;!(this._buffer.length<=0);){let e=this._buffer.length,l=a.find(this._buffer);if(l!==-1){this.match=l;let e=t?l+i:l;if(e>0){let t=n.write(this._buffer.read(e));if(a.onConsume(e),this._maybeReleaseWriteCallback(),!t){o=!0,n.once(`drain`,s);return}}r=!0,this.removeListener(`data-available`,c),n.end();return}if(a.onNoMatch(e),this.finished){r=!0,this.removeListener(`data-available`,c),n.destroy(Error(`FILE_ENDED`));return}let u=e-i;if(u<=0){this._buffer.length<=i&&this._maybeReleaseWriteCallback();break}let d=n.write(this._buffer.read(u));if(a.onConsume(u),this._maybeReleaseWriteCallback(),!d){o=!0,n.once(`drain`,s);return}}};return this.on(`data-available`,c),queueMicrotask(()=>c()),n}stream(e,t){return typeof e==`number`?this._streamFixedLength(e):this._streamUntilPattern(e,t??!1)}pull(e,t){if(e===0)return Promise.resolve(P);if(typeof e==`number`){if(this.finished&&this._buffer.length<e)return Promise.reject(Error(`FILE_ENDED`));if(this._buffer.length>=e){let t=this._buffer.read(e);return this._maybeReleaseWriteCallback(),Promise.resolve(t)}return this._pullInternal(e)}return this.finished?Promise.reject(Error(`FILE_ENDED`)):this._pullUntilInternal(e,t??!1)}pullUntil(e,t){return this.pull(e,t)}_streamUntilDataDescriptor(){return Cs({source:{getLength:()=>this._buffer.length,read:e=>this._buffer.read(e),peekChunks:e=>this._buffer.peekChunks(e),discard:e=>this._buffer.discard(e),indexOfPattern:(e,t)=>this._buffer.indexOfPattern(e,t),peekUint32LE:e=>this._buffer.peekUint32LE(e),isFinished:()=>this.finished,onDataAvailable:e=>(this.on(`data-available`,e),()=>this.removeListener(`data-available`,e)),maybeReleaseWriteCallback:()=>this._maybeReleaseWriteCallback()},dataDescriptorSignature:Ns})}promise(){return this._parserDoneFlag?this._parserError?Promise.reject(this._parserError):Promise.resolve():(this._parserDonePromise||=new Promise((e,t)=>{this._parserDeferred={resolve:e,reject:t}}),this._parserDonePromise)}_resolveParserDeferred(){if(!this._parserDoneFlag&&(this._parserDoneFlag=!0,this._parserDeferred)){let{resolve:e}=this._parserDeferred;this._parserDeferred=null,e()}}_rejectParserDeferred(e){if(!this._parserDoneFlag&&(this._parserDoneFlag=!0,this._parserError=e,this._parserDeferred)){let{reject:t}=this._parserDeferred;this._parserDeferred=null,t(e)}}_enqueueEntry(e){if(this._entryWaiter){let{resolve:t}=this._entryWaiter;this._entryWaiter=null,t({value:e,done:!1})}else this._entryQueue.push(e)}_closeEntryQueue(e){if(this._entriesDone=!0,this._entryWaiter){let t=this._entryWaiter;this._entryWaiter=null,e?t.reject(e):t.resolve({value:void 0,done:!0})}}[Symbol.asyncIterator](){let e={next:()=>this._entryQueue.length>0?Promise.resolve({value:this._entryQueue.shift(),done:!1}):this._entriesDone?this._parserError?Promise.reject(this._parserError):Promise.resolve({value:void 0,done:!0}):new Promise((e,t)=>{this._entryWaiter={resolve:e,reject:t}}),return:()=>(this._entriesDone=!0,this._entryQueue.length=0,this._entryWaiter=null,Promise.resolve({value:void 0,done:!0})),[Symbol.asyncIterator](){return e}};return e}}}let Fs=Ps(Ms);var Is=class extends Fs{};function Ls(e){return new Is(e)}let Rs=function(e){return e[e.Null=0]=`Null`,e[e.Merge=1]=`Merge`,e[e.Number=2]=`Number`,e[e.String=3]=`String`,e[e.Date=4]=`Date`,e[e.Hyperlink=5]=`Hyperlink`,e[e.Formula=6]=`Formula`,e[e.SharedString=7]=`SharedString`,e[e.RichText=8]=`RichText`,e[e.Boolean=9]=`Boolean`,e[e.Error=10]=`Error`,e[e.JSON=11]=`JSON`,e[e.Checkbox=12]=`Checkbox`,e}({}),zs=function(e){return e[e.None=0]=`None`,e[e.Master=1]=`Master`,e[e.Shared=2]=`Shared`,e}({}),Bs=function(e){return e[e.None=0]=`None`,e[e.OfficeDocument=1]=`OfficeDocument`,e[e.Worksheet=2]=`Worksheet`,e[e.CalcChain=3]=`CalcChain`,e[e.SharedStrings=4]=`SharedStrings`,e[e.Styles=5]=`Styles`,e[e.Theme=6]=`Theme`,e[e.Hyperlink=7]=`Hyperlink`,e}({}),Vs=function(e){return e[e.Xlsx=1]=`Xlsx`,e}({}),Hs=function(e){return e[e.LeftToRight=1]=`LeftToRight`,e[e.RightToLeft=2]=`RightToLeft`,e}({}),Us={NotApplicable:`#N/A`,Ref:`#REF!`,Name:`#NAME?`,DivZero:`#DIV/0!`,Null:`#NULL!`,Value:`#VALUE!`,Num:`#NUM!`},Ws={ValueType:Rs,FormulaType:zs,RelationshipType:Bs,DocumentType:Vs,ReadingOrder:Hs,ErrorValue:Us},F={OfficeDocument:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument`,Worksheet:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet`,CalcChain:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/calcChain`,SharedStrings:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings`,Styles:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles`,Theme:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme`,Hyperlink:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink`,Image:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,CoreProperties:`http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties`,ExtenderProperties:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties`,Comments:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/comments`,VmlDrawing:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/vmlDrawing`,Table:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/table`,PivotCacheDefinition:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotCacheDefinition`,PivotCacheRecords:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotCacheRecords`,PivotTable:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/pivotTable`,FeaturePropertyBag:`http://schemas.microsoft.com/office/2022/11/relationships/FeaturePropertyBag`,CtrlProp:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/ctrlProp`,SheetMetadata:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/sheetMetadata`,ExternalLink:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLink`,ExternalLinkPath:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/externalLinkPath`};var Gs=class extends n{constructor(...e){super(...e),this.name=`XmlError`}},Ks=class extends Gs{constructor(e,t,n){let r=[];t?.fileName&&r.push(t.fileName),t?.line!==void 0&&r.push(`${t.line}:${t.column??0}`);let i=r.length>0?`${r.join(`:`)}: `:``;super(`${i}${e}`,n),this.name=`XmlParseError`,this.line=t?.line,this.column=t?.column,this.fileName=t?.fileName}},qs=class extends Gs{constructor(e,t,n){super(`Cannot ${e}: ${t}`,n),this.name=`XmlWriteError`,this.operation=e,this.state=t}};let Js=65533,Ys=(()=>{let e=Array(128);for(let t=0;t<128;t++)e[t]=String.fromCharCode(t);return e})();function I(e){return e<128?Ys[e]:String.fromCodePoint(e)}let Xs=(()=>{let e=new Uint8Array(128);for(let t=97;t<=122;t++)e[t]=1;for(let t=65;t<=90;t++)e[t]=1;return e[95]=1,e[58]=1,e})(),Zs=(()=>{let e=new Uint8Array(128);for(let t=97;t<=122;t++)e[t]=1;for(let t=65;t<=90;t++)e[t]=1;for(let t=48;t<=57;t++)e[t]=1;return e[95]=1,e[58]=1,e[45]=1,e[46]=1,e})();function Qs(e){return e===32||e===10||e===13||e===9}function $s(e){return e===34||e===39}function ec(e){return e<128?Xs[e]===1:e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=880&&e<=893||e>=895&&e<=8191||e===8204||e===8205||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}function tc(e){return e<128?Zs[e]===1:e===183||e>=192&&e<=214||e>=216&&e<=246||e>=248&&e<=767||e>=768&&e<=879||e>=880&&e<=893||e>=895&&e<=8191||e===8204||e===8205||e>=8255&&e<=8256||e>=8304&&e<=8591||e>=11264&&e<=12271||e>=12289&&e<=55295||e>=63744&&e<=64975||e>=65008&&e<=65533||e>=65536&&e<=983039}function nc(e){return e>=32&&e<=55295||e===10||e===13||e===9||e>=57344&&e<=65533||e>=65536&&e<=1114111}let rc={amp:`&`,gt:`>`,lt:`<`,quot:`"`,apos:`'`};var ic=class{constructor(e){this._entityExpansionCount=0,this._nsStack=[],this.state=0,this.chunk=``,this.i=0,this.prevI=0,this.text=``,this.name=``,this.q=null,this.tags=[],this.tag=null,this.attribList=[],this.entity=``,this.entityReturnState=0,this.openWakaBang=``,this.sawRoot=!1,this.closedRoot=!1,this._bomStripped=!1,this._closed=!1,this.reportedTextBeforeRoot=!1,this.reportedTextAfterRoot=!1,this.line=1,this.column=0,this.positionAtNewLine=0,this.chunkPosition=0,this.ENTITIES={...rc},this._handlers={},this.trackPosition=e?.position!==!1,this.fileName=e?.fileName,this.fragment=e?.fragment??!1,this.xmlns=e?.xmlns??!1,this.maxDepth=e?.maxDepth===void 0?256:e.maxDepth,this.maxEntityExpansions=e?.maxEntityExpansions===void 0?1e4:e.maxEntityExpansions,this.invalidCharHandling=e?.invalidCharHandling??`error`,this._init()}get closed(){return this._closed}get position(){return this.chunkPosition+this.i}_init(){this.state=0,this.text=``,this.name=``,this.q=null,this.tags=[],this.tag=null,this.attribList=[],this.entity=``,this.openWakaBang=``,this.sawRoot=this.fragment,this.closedRoot=this.fragment,this.reportedTextBeforeRoot=this.fragment,this.reportedTextAfterRoot=this.fragment,this.carriedFromPrevious=void 0,this._bomStripped=!1,this.line=1,this.column=0,this.positionAtNewLine=0,this.chunkPosition=0,this.chunk=``,this.i=0,this.prevI=0,this._nsStack=this.xmlns?[{xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`}]:[],this._entityExpansionCount=0}on(e,t){this._handlers[e]=t}off(e){delete this._handlers[e]}makeError(e){return new Ks(e,{line:this.trackPosition?this.line:void 0,column:this.trackPosition?this.column:void 0,fileName:this.fileName})}fail(e){let t=this.makeError(e);if(this._handlers.error)this._handlers.error(t);else throw t;return this}write(e){if(this._closed){if(e===null)return this;this._closed=!1,this._init()}let t=!1;e===null&&(t=!0,e=``),this.carriedFromPrevious!==void 0&&(e=this.carriedFromPrevious+e,this.carriedFromPrevious=void 0),this._bomStripped||(this._bomStripped=!0,e.length>0&&e.charCodeAt(0)===65279&&(e=e.slice(1)));let n=e.length;if(!t&&n>0){let t=e.charCodeAt(n-1);(t===13||t>=55296&&t<=56319)&&(this.carriedFromPrevious=e[n-1],n--,e=e.slice(0,n))}for(this.chunk=e,this.i=0;this.i<n;)this.processState();return this.chunkPosition+=n,t?this.end():this}close(){return this.write(null)}handleInvalidChar(e,t){switch(this.invalidCharHandling){case`replace`:return Js;case`skip`:return-2;default:{let n=t?`invalid XML character: ${t} 0x${e.toString(16)}`:`invalid XML character: 0x${e.toString(16)}`;return this.fail(n),e}}}handleInvalidCharInText(e,t,n,r){switch(this.invalidCharHandling){case`skip`:return t&&n<this.prevI&&(this.text+=this.chunk.slice(n,this.prevI)),this.i;case`replace`:return t&&(n<this.prevI&&(this.text+=this.chunk.slice(n,this.prevI)),this.text+=`�`),this.i;default:{let t=r?`invalid XML character: ${r} 0x${e.toString(16)}`:`invalid XML character: 0x${e.toString(16)}`;return this.fail(t),n}}}handleInvalidCharInAttr(e,t,n){switch(this.invalidCharHandling){case`skip`:return t<this.prevI&&(this.text+=this.chunk.slice(t,this.prevI)),this.i;case`replace`:return t<this.prevI&&(this.text+=this.chunk.slice(t,this.prevI)),this.text+=`�`,this.i;default:{let r=n?`invalid XML character: ${n} 0x${e.toString(16)}`:`invalid XML character: 0x${e.toString(16)}`;return this.fail(r),t}}}getCode(){for(;;){let{chunk:e}=this,t=this.i;if(this.prevI=t,this.i=t+1,t>=e.length)return-1;let n=e.charCodeAt(t);if(n>=32&&n<=126||n===9)return this.trackPosition&&this.column++,n;if(n===13)return e.charCodeAt(t+1)===10&&(this.i=t+2),this.trackPosition&&(this.line++,this.column=0,this.positionAtNewLine=this.position),10;if(n===10)return this.trackPosition&&(this.line++,this.column=0,this.positionAtNewLine=this.position),10;if(n>=55296&&n<=56319){let r=e.charCodeAt(t+1);if(r>=56320&&r<=57343)return this.i=t+2,this.trackPosition&&this.column++,65536+((n-55296)*1024+(r-56320));let i=this.handleInvalidChar(n,`lone surrogate`);if(i!==-2)return i;continue}if(n>=56320&&n<=57343){let e=this.handleInvalidChar(n,`lone surrogate`);if(e!==-2)return e;continue}if(n>=128){if(this.trackPosition&&this.column++,n===65534||n===65535){let e=this.handleInvalidChar(n);if(e!==-2)return e;continue}return n}this.trackPosition&&this.column++;let r=this.handleInvalidChar(n);if(r!==-2)return r}}unget(){this.i=this.prevI,this.trackPosition&&this.column--}processState(){switch(this.state){case 0:this.sText();break;case 1:this.sOpenWaka();break;case 2:this.sOpenWakaBang();break;case 3:this.sOpenTag();break;case 4:this.sOpenTagSlash();break;case 5:this.sAttrib();break;case 6:this.sAttribName();break;case 7:this.sAttribNameSawWhite();break;case 8:this.sAttribValue();break;case 9:this.sAttribValueQuoted();break;case 10:this.sAttribValueClosed();break;case 11:this.sCloseTag();break;case 12:this.sCloseTagSawWhite();break;case 13:this.sComment();break;case 14:this.sCommentEnding();break;case 15:this.sCommentEnded();break;case 16:this.sCData();break;case 17:this.sCDataEnding();break;case 18:this.sCDataEnding2();break;case 19:this.sPI();break;case 20:this.sPIEnding();break;case 21:this.sDoctype();break;case 22:this.sDoctypeQuote();break;case 23:this.sDoctypeDTD();break;case 24:this.sDoctypeDTDQuoted();break;case 25:this.sEntity();break}}sText(){this.tags.length===0?this.handleTextOutsideRoot():this.handleTextInRoot()}handleTextInRoot(){let{chunk:e}=this,{i:t}=this,n=this._handlers.text,r=e.length;for(;this.i<r;){let r=e.charCodeAt(this.i);if(r>=32&&r<=126&&r!==60&&r!==38){this.i++,this.trackPosition&&this.column++;continue}if(r===9){this.i++,this.trackPosition&&this.column++;continue}if(r===60){if(this.prevI=this.i,this.i++,this.trackPosition&&this.column++,n){let r=e.slice(t,this.prevI);this.text.length>0?(n(this.text+r),this.text=``):r.length>0&&n(r)}this.state=1;return}if(r===38){this.prevI=this.i,this.i++,this.trackPosition&&this.column++,n&&(this.text+=e.slice(t,this.prevI)),this.state=25,this.entityReturnState=0,this.entity=``;return}if(r===10){this.prevI=this.i,this.i++,this.trackPosition&&(this.line++,this.column=0,this.positionAtNewLine=this.position),n&&(this.text+=e.slice(t,this.prevI)+`
|
|
113
113
|
`),t=this.i;continue}if(r===13){this.prevI=this.i,this.i++,e.charCodeAt(this.i)===10&&this.i++,this.trackPosition&&(this.line++,this.column=0,this.positionAtNewLine=this.position),n&&(this.text+=e.slice(t,this.prevI)+`
|
|
114
114
|
`),t=this.i;continue}if(r>=128){if(this.prevI=this.i,r>=55296&&r<=56319){let i=e.charCodeAt(this.i+1);i>=56320&&i<=57343?this.i+=2:(this.i++,t=this.handleInvalidCharInText(r,n,t,`lone surrogate`))}else r>=56320&&r<=57343?(this.i++,t=this.handleInvalidCharInText(r,n,t,`lone surrogate`)):r===65534||r===65535?(this.i++,t=this.handleInvalidCharInText(r,n,t)):this.i++;this.trackPosition&&this.column++;continue}this.prevI=this.i,this.i++,this.trackPosition&&this.column++,t=this.handleInvalidCharInText(r,n,t)}n&&t<this.i&&(this.text+=e.slice(t,this.i))}handleTextOutsideRoot(){let{chunk:e}=this,{i:t}=this,n=this._handlers.text,r=!1,i=this.invalidCharHandling===`skip`,a=this.invalidCharHandling===`replace`;for(;;){let o=this.i,s=this.getCode();if(s===-1){n&&t<o&&(this.text+=e.slice(t,o));break}if(i&&this.prevI>o&&(n&&t<o&&(this.text+=e.slice(t,o)),t=this.prevI),a&&s===Js&&e.charCodeAt(this.prevI)!==Js){n&&(t<this.prevI&&(this.text+=e.slice(t,this.prevI)),this.text+=`�`),t=this.i,r=!0;continue}if(s===60){if(n){let r=e.slice(t,this.prevI);this.text.length>0?(n(this.text+r),this.text=``):r.length>0&&n(r)}this.state=1;break}if(s===38){n&&(this.text+=e.slice(t,this.prevI)),this.state=25,this.entityReturnState=0,this.entity=``,r=!0;break}s===10?(n&&(this.text+=e.slice(t,this.prevI)+`
|
|
115
|
-
`),t=this.i):Qs(s)||(r=!0)}r&&(!this.sawRoot&&!this.reportedTextBeforeRoot&&(this.fail(`text data outside of root node.`),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail(`text data outside of root node.`),this.reportedTextAfterRoot=!0))}sOpenWaka(){let e=this.getCode();if(e!==-1){if(ec(e)){this.closedRoot&&!this.fragment&&this.fail(`documents may contain only one root element`),this.state=3,this.name=I(e);return}switch(e){case 47:this.state=11,this.name=``;break;case 33:this.state=2,this.openWakaBang=``;break;case 63:this.state=19,this.text=``;break;default:this.fail(`unexpected character in tag`),this.state=0}}}sOpenWakaBang(){let e=this.getCode();if(e!==-1)switch(this.openWakaBang+=I(e),this.openWakaBang){case`[CDATA[`:this.state=16,this.text=``,this.openWakaBang=``;break;case`--`:this.state=13,this.text=``,this.openWakaBang=``;break;case`DOCTYPE`:this.state=21,this.text=``,this.openWakaBang=``;break;default:this.openWakaBang.length>=7&&(this.fail(`incorrect syntax`),this.state=0)}}sOpenTag(){let{chunk:e}=this,t=this.i,n=this.i;for(;n<e.length;){let t=e.charCodeAt(n);if(t<128?Zs[t]===1:tc(t))n++;else break}if(n>=e.length){this.name+=e.slice(t,n),this.i=n,this.trackPosition&&(this.column+=n-t);return}this.name+=e.slice(t,n),this.i=n,this.trackPosition&&(this.column+=n-t);let r=this.getCode();r!==-1&&(this.tag={name:this.name,attributes:Object.create(null),isSelfClosing:!1},this.attribList=[],this.sawRoot=!0,r===62?this.openTag():r===47?this.state=4:(Qs(r)||this.fail(`unexpected character in tag`),this.state=5))}sOpenTagSlash(){let e=this.getCode();e!==-1&&(e===62?this.openSelfClosingTag():(this.fail(`expected >`),this.state=5))}sAttrib(){let e=this.skipSpaces();e!==-1&&(ec(e)?(this.name=I(e),this.state=6):e===62?this.openTag():e===47?this.state=4:this.fail(`unexpected character in attribute`))}sAttribName(){let{chunk:e}=this,t=this.i,n=this.i;for(;n<e.length;){let t=e.charCodeAt(n);if(t<128?Zs[t]===1:tc(t))n++;else break}if(n>=e.length){this.name+=e.slice(t,n),this.i=n,this.trackPosition&&(this.column+=n-t);return}this.name+=e.slice(t,n),this.i=n,this.trackPosition&&(this.column+=n-t);let r=this.getCode();r!==-1&&(r===61?this.state=8:Qs(r)?this.state=7:r===62?(this.fail(`attribute without value`),this.attribList.push({name:this.name,value:this.name}),this.name=``,this.openTag()):this.fail(`unexpected character in attribute name`))}sAttribNameSawWhite(){let e=this.skipSpaces();e!==-1&&(e===61?this.state=8:(this.fail(`attribute without value`),this.name=``,this.text=``,e===62?this.openTag():ec(e)?(this.name=I(e),this.state=6):(this.fail(`unexpected character`),this.state=5)))}sAttribValue(){let e=this.skipSpaces();e!==-1&&($s(e)?(this.q=e,this.text=``,this.state=9):(this.fail(`unquoted attribute value`),this.state=0))}sAttribValueQuoted(){let{q:e,chunk:t}=this,{i:n}=this,r=t.length;for(;this.i<r;){let r=t.charCodeAt(this.i);if(r>=32&&r<=126&&r!==e&&r!==38&&r!==60){this.i++,this.trackPosition&&this.column++;continue}if(r===e){this.prevI=this.i,this.i++,this.trackPosition&&this.column++,this.attribList.push({name:this.name,value:this.text+t.slice(n,this.prevI)}),this.name=``,this.text=``,this.q=null,this.state=10;return}if(r===38){this.prevI=this.i,this.i++,this.trackPosition&&this.column++,this.text+=t.slice(n,this.prevI),this.state=25,this.entityReturnState=9,this.entity=``;return}if(r===60){this.prevI=this.i,this.i++,this.trackPosition&&this.column++,this.text+=t.slice(n,this.prevI),this.fail(`< not allowed in attribute value`),this.attribList.push({name:this.name,value:this.text}),this.name=``,this.text=``,this.q=null,this.unget(),this.state=0;return}if(r===9||r===10){this.prevI=this.i,this.i++,r===10&&this.trackPosition?(this.line++,this.column=0,this.positionAtNewLine=this.position):this.trackPosition&&this.column++,this.text+=t.slice(n,this.prevI)+` `,n=this.i;continue}if(r===13){this.prevI=this.i,this.i++,t.charCodeAt(this.i)===10&&this.i++,this.trackPosition&&(this.line++,this.column=0,this.positionAtNewLine=this.position),this.text+=t.slice(n,this.prevI)+` `,n=this.i;continue}if(r>=128){if(this.prevI=this.i,r>=55296&&r<=56319){let e=t.charCodeAt(this.i+1);e>=56320&&e<=57343?this.i+=2:(this.i++,n=this.handleInvalidCharInAttr(r,n,`lone surrogate`))}else r>=56320&&r<=57343?(this.i++,n=this.handleInvalidCharInAttr(r,n,`lone surrogate`)):r===65534||r===65535?(this.i++,n=this.handleInvalidCharInAttr(r,n)):this.i++;this.trackPosition&&this.column++;continue}this.prevI=this.i,this.i++,this.trackPosition&&this.column++,n=this.handleInvalidCharInAttr(r,n)}this.text+=t.slice(n,this.i)}sAttribValueClosed(){let e=this.getCode();e!==-1&&(Qs(e)?this.state=5:e===62?this.openTag():e===47?this.state=4:ec(e)?(this.fail(`no whitespace between attributes`),this.name=I(e),this.state=6):this.fail(`unexpected character after attribute`))}sCloseTag(){let{chunk:e}=this,t=this.i;if(this.name===``){if(t>=e.length){let e=this.getCode();if(e===-1)return;ec(e)?this.name=I(e):this.fail(`unexpected character in close tag`);return}let n=e.charCodeAt(t);if(n<128?Xs[n]!==1:!ec(n)){this.i=t,this.getCode()!==-1&&this.fail(`unexpected character in close tag`);return}this.name=e[t],t++,this.trackPosition&&this.column++}let n=t;for(;t<e.length;){let n=e.charCodeAt(t);if(n<128?Zs[n]===1:tc(n))t++;else break}if(t>n&&(this.name+=e.slice(n,t)),this.trackPosition&&(this.column+=t-n),t>=e.length){this.i=t;return}this.i=t;let r=this.getCode();r!==-1&&(r===62?this.closeTag():Qs(r)?this.state=12:this.fail(`unexpected character in close tag`))}sCloseTagSawWhite(){let e=this.skipSpaces();e!==-1&&(e===62?this.closeTag():this.fail(`unexpected character in close tag`))}sComment(){let e=this.getCode();e!==-1&&(e===45?this.state=14:this.text+=I(e))}sCommentEnding(){let e=this.getCode();e!==-1&&(e===45?this.state=15:(this.text+=`-`+I(e),this.state=13))}sCommentEnded(){let e=this.getCode();e!==-1&&(e===62?(this._handlers.comment?.(this.text),this.text=``,this.state=0):e===45?this.text+=`-`:(this.fail(`malformed comment`),this.text+=`--`+I(e),this.state=13))}sCData(){let e=this.getCode();e!==-1&&(e===93?this.state=17:this.text+=I(e))}sCDataEnding(){let e=this.getCode();e!==-1&&(e===93?this.state=18:(this.text+=`]`+I(e),this.state=16))}sCDataEnding2(){let e=this.getCode();e!==-1&&(e===62?(this._handlers.cdata?this._handlers.cdata(this.text):this._handlers.text&&this.text.length>0&&this._handlers.text(this.text),this.text=``,this.state=0):e===93?this.text+=`]`:(this.text+=`]]`+I(e),this.state=16))}sPI(){let e=this.getCode();e!==-1&&(e===63?this.state=20:this.text+=I(e))}sPIEnding(){let e=this.getCode();if(e!==-1)if(e===62){let e=this.text,t=e.indexOf(` `);t>=0?this._handlers.pi?.(e.slice(0,t),e.slice(t+1)):this._handlers.pi?.(e,``),this.text=``,this.state=0}else e===63?this.text+=`?`:(this.text+=`?`+I(e),this.state=19)}sDoctype(){let e=this.getCode();e!==-1&&(e===62?(this.text=``,this.state=0):$s(e)?(this.q=e,this.state=22):e===91?this.state=23:this.text+=I(e))}sDoctypeQuote(){let e=this.getCode();e!==-1&&(e===this.q?(this.q=null,this.state=21):this.text+=I(e))}sDoctypeDTD(){let e=this.getCode();e!==-1&&(e===93?this.state=21:$s(e)&&(this.q=e,this.state=24))}sDoctypeDTDQuoted(){let e=this.getCode();e!==-1&&e===this.q&&(this.q=null,this.state=23)}sEntity(){let e=this.getCode();if(e!==-1)if(e===59){let e=this.entity,t;e===``?(this.fail(`empty entity`),t=`&;`):t=this.parseEntity(e),this.text+=t,this.state=this.entityReturnState,this.entity=``}else tc(e)||e===35?(this.entity+=I(e),this.entity.length>64&&(this.fail(`entity name too long`),this.text+=`&`+this.entity,this.state=this.entityReturnState,this.entity=``)):(this.fail(`invalid entity character`),this.text+=`&`+this.entity+I(e),this.state=this.entityReturnState,this.entity=``)}parseEntity(e){if(e[0]!==`#`){let t=this.ENTITIES[e];return t===void 0?(this.fail(`undefined entity: `+e),`&`+e+`;`):this.maxEntityExpansions>0&&e!==`lt`&&e!==`gt`&&e!==`amp`&&e!==`quot`&&e!==`apos`&&(this._entityExpansionCount++,this._entityExpansionCount>this.maxEntityExpansions)?(this.fail(`entity expansion limit (${this.maxEntityExpansions}) exceeded — possible XML bomb`),``):t}let t;return t=e[1]===`x`||e[1]===`X`?parseInt(e.slice(2),16):parseInt(e.slice(1),10),isNaN(t)||t<1||t>=55296&&t<=57343||t>1114111?(this.fail(`invalid character entity: &#`+e.slice(1)+`;`),``):nc(t)?String.fromCodePoint(t):(this.fail(`invalid character entity`),``)}skipSpaces(){for(;;){let e=this.getCode();if(e===-1||!Qs(e))return e}}splitQName(e){let t=e.indexOf(`:`);return t<0?[``,e]:[e.slice(0,t),e.slice(t+1)]}resolveNs(e){for(let t=this._nsStack.length-1;t>=0;t--){let n=this._nsStack[t][e];if(n!==void 0)return n}return``}applyNamespaces(e){let t=`http://www.w3.org/XML/1998/namespace`,n=`http://www.w3.org/2000/xmlns/`,r={},i=e.attributes;for(let e in i)if(Object.prototype.hasOwnProperty.call(i,e)){if(e===`xmlns`)r[``]=i[e];else if(e.startsWith(`xmlns:`)){let a=e.slice(6),o=i[e];a===`xmlns`?this.fail(`the "xmlns" prefix must not be declared`):a===`xml`&&o!==t?this.fail(`the "xml" prefix must be bound to "${t}"`):o===t&&a!==`xml`?this.fail(`namespace "${t}" must only be bound to the "xml" prefix`):o===n&&this.fail(`namespace "${n}" must not be bound to any prefix`),r[a]=o}}this._nsStack.push(r),Object.keys(r).length>0&&(e.ns=r);let[a,o]=this.splitQName(e.name);o.includes(`:`)&&this.fail(`invalid QName "${e.name}": local part must not contain ":"`),e.prefix=a,e.local=o,e.uri=this.resolveNs(a),a!==``&&e.uri===``&&this.fail(`unbound namespace prefix: "${a}"`);let s=new Set;for(let e in i){if(!Object.prototype.hasOwnProperty.call(i,e)||e===`xmlns`||e.startsWith(`xmlns:`))continue;let[t,n]=this.splitQName(e);if(n.includes(`:`)&&this.fail(`invalid attribute QName "${e}": local part must not contain ":"`),t!==``){let e=this.resolveNs(t);e===``&&this.fail(`unbound namespace prefix on attribute: "${t}"`);let r=e+`\0`+n;s.has(r)&&this.fail(`duplicate attribute by expanded name: {${e}}${n}`),s.add(r)}}}openTag(){let e=this.tag;e.isSelfClosing=!1;for(let{name:t,value:n}of this.attribList)t in e.attributes&&this.fail(`duplicate attribute: ${t}`),e.attributes[t]=n;this.attribList=[],this.xmlns&&this.applyNamespaces(e),this.maxDepth>0&&this.tags.length>=this.maxDepth&&this.fail(`maximum element nesting depth (${this.maxDepth}) exceeded`),this._handlers.opentag?.(e),this.tags.push(e),this.name=``,this.state=0}openSelfClosingTag(){let e=this.tag;e.isSelfClosing=!0;for(let{name:t,value:n}of this.attribList)t in e.attributes&&this.fail(`duplicate attribute: ${t}`),e.attributes[t]=n;this.attribList=[],this.xmlns&&this.applyNamespaces(e),this.maxDepth>0&&this.tags.length>=this.maxDepth&&this.fail(`maximum element nesting depth (${this.maxDepth}) exceeded`),this._handlers.opentag?.(e),this._handlers.closetag?.(e),this.xmlns&&this._nsStack.pop(),this.tags.length===0&&(this.closedRoot=!0),this.name=``,this.state=0}closeTag(){let{tags:e,name:t}=this;if(this.state=0,this.name=``,t===``){this.fail(`empty close tag`),this.text+=`</>`;return}let n=!1;for(let r=e.length-1;r>=0;r--)if(e[r].name===t){for(;e.length>r;){let t=e.pop();this._handlers.closetag?.(t),this.xmlns&&this._nsStack.pop(),e.length>r&&this.fail(`unclosed tag: `+t.name)}n=!0;break}n||(this.fail(`unmatched close tag: `+t),this.text+=`</`+t+`>`),e.length===0&&(this.closedRoot=!0)}end(){for(this.sawRoot||this.fail(`document must contain a root element`);this.tags.length>0;){let e=this.tags.pop();this.fail(`unclosed tag: `+e.name)}return this.text.length>0&&this._handlers.text&&(this._handlers.text(this.text),this.text=``),this._closed=!0,this._init(),this}};async function ac(e,t){let n=new TextDecoder(`utf-8`,{fatal:!0}),r,i=e._handlers?.error;e.on(`error`,e=>{r=e,i?.(e)});for await(let i of t){let t=typeof i==`string`?i:n.decode(i,{stream:!0});if(e.write(t),r)throw o(r)}let a=n.decode();if(a&&e.write(a),e.close(),r)throw o(r)}var oc=class extends D{constructor({workbook:e,id:t,iterator:n,options:r}){super(),this._hyperlinkCount=0,this.workbook=e,this.id=t,this.iterator=n,this.options=r}get count(){return this.hyperlinks?this._hyperlinkCount:0}each(e){let t=this.hyperlinks;if(t)for(let n in t)e(t[n],n)}async read(){let{iterator:e}=this,t=this.options.hyperlinks,n=t===`emit`,r=t===`cache`,i=null;if(r&&(this._hyperlinkCount=0,this.hyperlinks=i=Object.create(null)),!n&&!r){this.emit(`finished`);return}try{let t=new ic({position:!1,invalidCharHandling:`skip`}),r=new TextDecoder(`utf-8`,{fatal:!0});t.on(`opentag`,e=>{if(e.name!==`Relationship`)return;let t=e.attributes;if(t.Type!==F.Hyperlink)return;let r={type:7,rId:t.Id,target:t.Target,targetMode:t.TargetMode};if(n){this.emit(`hyperlink`,r);return}let a=r.rId;i&&i[a]===void 0&&(this._hyperlinkCount+=1),i[a]=r});for await(let n of e){let e=typeof n==`string`?n:r.decode(n,{stream:!0});t.write(e)}let a=r.decode();a&&t.write(a),t.close(),this.emit(`finished`)}catch(e){this.emit(`error`,e)}}};let sc=(e,t)=>({...e,...t.reduce((t,n)=>(e[n]&&(t[n]={...e[n]}),t),{})}),cc=(e,t,n,r=[])=>{e[n]&&(t[n]=sc(e[n],r))},lc=e=>Object.keys(e).length===0,L=e=>{if(!e)return e;if(lc(e))return{};let t={...e};return cc(e,t,`font`,[`color`]),cc(e,t,`alignment`),cc(e,t,`protection`),e.border&&(cc(e,t,`border`),cc(e.border,t.border,`top`,[`color`]),cc(e.border,t.border,`left`,[`color`]),cc(e.border,t.border,`bottom`,[`color`]),cc(e.border,t.border,`right`,[`color`]),cc(e.border,t.border,`diagonal`,[`color`])),e.fill&&(cc(e,t,`fill`,[`fgColor`,`bgColor`,`center`]),e.fill.stops&&(t.fill.stops=e.fill.stops.map(e=>sc(e,[`color`])))),t},uc={'"':`"`,"&":`&`,"<":`<`,">":`>`},dc=/["&<>]/g;function fc(e,t){if(e===t)return!0;if(e==null||t==null)return e===t;let n=typeof e;if(n!==typeof t||n!==`object`)return!1;let r=Array.isArray(e);if(r!==Array.isArray(t))return!1;if(r){let n=e.length;if(n!==t.length)return!1;for(let r=0;r<n;r++)if(!fc(e[r],t[r]))return!1;return!0}let i=Object.keys(e),a=Object.keys(t);if(i.length!==a.length)return!1;for(let n=0,r=i.length;n<r;n++){let r=i[n];if(!Object.prototype.hasOwnProperty.call(t,r)||!fc(e[r],t[r]))return!1}return!0}function pc(e){return e.replace(dc,e=>uc[e])}function mc(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function hc(...e){let t=e[0]||{},n=e.length;for(let r=1;r<n;r++){let n=e[r];if(n)if(Array.isArray(n))for(let e=0,r=n.length;e<r;e++){let r=n[e];if(r===void 0)continue;let i=t[e];Array.isArray(r)?t[e]=hc(Array.isArray(i)?i:[],r):mc(r)?t[e]=hc(mc(i)?i:{},r):t[e]=r}else{let e=Object.keys(n);for(let r=0,i=e.length;r<i;r++){let i=e[r];if(i===`__proto__`||i===`constructor`||i===`prototype`)continue;let a=n[i];if(a===void 0)continue;let o=t[i];Array.isArray(a)?t[i]=hc(Array.isArray(o)?o:[],a):mc(a)?t[i]=hc(mc(o)?o:{},a):t[i]=a}}}return t}var gc=class e{constructor(e,t,n){this._worksheet=e,this._number=t,n!==!1&&(this.defn=n)}get number(){return this._number}get worksheet(){return this._worksheet}get letter(){return M.n2l(this._number)}get isCustomWidth(){return this.width!==void 0&&this.width!==9}get defn(){return{header:this._header,key:this.key,width:this.width,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel,bestFit:this.bestFit}}set defn(e){e?(this.key=e.key,this.width=e.width===void 0?9:e.width,this.outlineLevel=e.outlineLevel,e.style?this.style=L(e.style)??{}:this.style={},this.header=e.header,this._hidden=!!e.hidden,this.bestFit=e.bestFit):(delete this._header,delete this._key,delete this.width,this.style={},this.outlineLevel=0,delete this.bestFit)}get headers(){return Array.isArray(this._header)?this._header:this._header===void 0?[]:[this._header]}get header(){return this._header}set header(e){e===void 0?this._header=void 0:(this._header=e,this.headers.forEach((e,t)=>{this._worksheet.getCell(t+1,this.number).value=e}))}get key(){return this._key}set key(e){(this._key&&this._worksheet.getColumnKey(this._key))===this&&this._worksheet.deleteColumnKey(this._key),this._key=e,e&&this._worksheet.setColumnKey(e,this)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel??0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=(this._worksheet.properties.outlineLevelCol??0))}toString(){return JSON.stringify({key:this.key,width:this.width,headers:this.headers.length?this.headers:void 0})}equivalentTo(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&fc(this.style,e.style)}equivalentToModel(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&this.bestFit===e.bestFit&&fc(this.style,e.style)}get isDefault(){if(this.isCustomWidth||this.hidden||this.outlineLevel||this.bestFit)return!1;let e=this.style;return!(e&&(e.font||e.numFmt||e.alignment||e.border||e.fill||e.protection))}get headerCount(){return this.headers.length}eachCell(e,t){let n=this.number,r,i;typeof e==`function`?(r={},i=e):(r=e,i=t),this._worksheet.eachRow(r,(e,t)=>{i(e.getCell(n),t)})}get values(){let e=[];return this.eachCell((t,n)=>{t&&t.type!==0&&(e[n]=t.value)}),e}set values(e){if(!e)return;let t=this.number,n=0;Object.prototype.hasOwnProperty.call(e,`0`)&&(n=1),e.forEach((e,r)=>{this._worksheet.getCell(r+n,t).value=e})}addPageBreak(e,t){let n=this._worksheet,r=Math.max(0,(e??0)-1)||0,i=Math.max(0,(t??0)-1)||1048575,a={id:this._number,max:i,man:1};r&&(a.min=r),n.colBreaks.push(a)}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e,this.eachCell(t=>{t.numFmt=e})}get font(){return this.style.font}set font(e){this.style.font=e,this.eachCell(t=>{t.font=e&&structuredClone(e)})}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e,this.eachCell(t=>{t.alignment=e&&structuredClone(e)})}get protection(){return this.style.protection}set protection(e){this.style.protection=e,this.eachCell(t=>{t.protection=e&&structuredClone(e)})}get border(){return this.style.border}set border(e){this.style.border=e,this.eachCell(t=>{t.border=e&&structuredClone(e)})}get fill(){return this.style.fill}set fill(e){this.style.fill=e,this.eachCell(t=>{t.fill=e&&structuredClone(e)})}static toModel(e){let t=[],n=null;return e.forEach((e,r)=>{e.isDefault?n&&=null:!n||!e.equivalentToModel(n)?(n={min:r+1,max:r+1,width:e.width===void 0?9:e.width,style:e.style,isCustomWidth:e.isCustomWidth,hidden:e.hidden,outlineLevel:e.outlineLevel,collapsed:e.collapsed,bestFit:e.bestFit},t.push(n)):n.max=r+1}),t.length?t:void 0}static fromModel(t,n){let r=t,i=Array.isArray(t)?t:n??[];i??=[];let a=[],o=1,s=0;for(i=i.sort((e,t)=>e.min-t.min);s<i.length;){let t=i[s++];for(;o<t.min;)a.push(new e(r,o++));for(;o<=t.max;)a.push(new e(r,o++,t))}return a}},_c=class e{static{this.DEFAULT_CONFIGS={note:{margins:{insetmode:`auto`,inset:[.13,.13,.25,.25]},protection:{locked:`True`,lockText:`True`},editAs:`absolute`},type:`note`}}constructor(e){this.note=e}get model(){let t;switch(typeof this.note){case`string`:t={type:`note`,note:{texts:[{text:this.note}]}};break;default:t={type:`note`,note:this.note??{}};break}return hc({},e.DEFAULT_CONFIGS,t)}set model(e){let{note:t}=e,{texts:n}=t;n&&n.length===1&&Object.keys(n[0]).length===1?this.note=n[0].text:this.note=t}static fromModel(t){let n=new e;return n.model=t,n}};function vc(){return typeof process<`u`&&!!process.versions?.node}let yc={lt:`<`,gt:`>`,amp:`&`,quot:`"`,apos:`'`},bc=/&(#\d+|#[xX][0-9A-Fa-f]+|\w+);/g,xc=(()=>{let e=new Uint8Array(128);for(let t=0;t<=8;t++)e[t]=2;e[11]=2,e[12]=2;for(let t=14;t<=31;t++)e[t]=2;return e[127]=2,e[34]=1,e[38]=1,e[39]=1,e[60]=1,e[62]=1,e})(),Sc={34:`"`,38:`&`,39:`'`,60:`<`,62:`>`};function Cc(e){return e.indexOf(`&`)===-1?e:e.replace(bc,(e,t)=>{if(t[0]===`#`){let n=t[1]===`x`||t[1]===`X`?parseInt(t.slice(2),16):parseInt(t.slice(1),10);return Number.isNaN(n)||n<1||n>=55296&&n<=57343||n>1114111?e:String.fromCodePoint(n)}return yc[t]??e})}function R(e){let t=e.length,n=-1;for(let r=0;r<t;r++){let t=e.charCodeAt(r);if(t<128){if(xc[t]!==0){n=r;break}}else if(t>=55296&&t<=57343){if(t<=56319){let t=e.charCodeAt(r+1);if(t>=56320&&t<=57343){r++;continue}}n=r;break}else if(t===65534||t===65535){n=r;break}}if(n===-1)return e;let r=[],i=0;for(let a=n;a<t;a++){let t=e.charCodeAt(a);if(t<128){let n=xc[t];if(n===0)continue;i<a&&r.push(e.substring(i,a)),n===1&&r.push(Sc[t]),i=a+1}else if(t>=55296&&t<=56319){let t=e.charCodeAt(a+1);if(t>=56320&&t<=57343){a++;continue}i<a&&r.push(e.substring(i,a)),i=a+1}else (t>=56320&&t<=57343||t===65534||t===65535)&&(i<a&&r.push(e.substring(i,a)),i=a+1)}return i<t&&r.push(e.substring(i)),r.length===1?r[0]:r.join(``)}function wc(e){return R(e)}let Tc=/[\s<>"'/=&]/;function Ec(e){if(!e)throw new Gs(`XML name must not be empty`);if(Tc.test(e))throw new Gs(`Invalid XML name: contains forbidden character in "${e}"`);let t=e.charCodeAt(0);if(t>=48&&t<=57||t===45||t===46)throw new Gs(`Invalid XML name: "${e}" starts with forbidden character`)}function Dc(e){return`<![CDATA[`+e.split(`]]>`).join(`]]]]><![CDATA[>`)+`]]>`}function Oc(e){if(e.includes(`--`)||e.endsWith(`-`))throw new Gs(`Invalid comment: must not contain "--" or end with "-"`)}let z={version:`1.0`,encoding:`UTF-8`,standalone:`yes`};function kc(e){if(vc())return Buffer.from(e,`base64`);let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function Ac(e,t){return 25569+e.getTime()/(24*3600*1e3)-(t?1462:0)}function jc(e,t){let n=Math.round((e-25569+(t?1462:0))*24*3600*1e3);return new Date(n)}function Mc(e){return new Date(e.endsWith(`Z`)?e:e+`Z`)}let Nc=/_x([0-9A-Fa-f]{4})_/g;function Pc(e){return e.replace(Nc,(e,t)=>{let n=parseInt(t,16);return n===0||n>=1&&n<=8||n===11||n===12||n>=14&&n<=31||n===127||n>=55296&&n<=57343||n===65534||n===65535?e:String.fromCharCode(n)})}function Fc(e){return e.replace(Nc,`_x005F_x$1_`)}let Ic=/[\t\n\r]/g,Lc={" ":`_x0009_`,"\n":`_x000A_`,"\r":`_x000D_`};function Rc(e){let t=e.replace(Nc,`_x005F_x$1_`);return t=t.replace(Ic,e=>Lc[e]),t}function zc(e){let t=typeof e==`number`?e:parseInt(e,10);return Number.isNaN(t)?0:t}function Bc(e){let t=[],n=``,r=!1,i=!1;for(let a=0;a<e.length;a++){let o=e[a];o===`"`&&!i?(r=!r,n+=o):o===`[`&&!r?(i=!0,n+=o):o===`]`&&!r?(i=!1,n+=o):o===`;`&&!r&&!i?(t.push(n),n=``):n+=o}return t.push(n),t}let Vc=/[ymdhMsb]/,Hc=/\[[^\]]*\]|"[^"]*"/g,Uc=new Map;function Wc(e){if(!e)return!1;let t=Uc.get(e);if(t!==void 0)return t;let n=Bc(e)[0].replace(Hc,``),r;return r=n.indexOf(`@`)>-1?!1:Vc.test(n),Uc.set(e,r),r}function Gc(e){return e===!0||e===`true`||e===1||e===`1`}function*Kc(e,t,n=1){let r=n>0?(e,t)=>e<t:(e,t)=>e>t;for(let i=e;r(i,t);i+=n)yield i}function qc(e){let t=Array.from(e);return t.length<=1?t:t.every(e=>Number.isFinite(e))?t.sort((e,t)=>e-t):t.every(e=>e instanceof Date)?t.sort((e,t)=>e.getTime()-t.getTime()):t.sort((e,t)=>{let n=Jc(e),r=Jc(t);return n===r?n===0?e-t:n===1?e.getTime()-t.getTime():String(e).localeCompare(String(t)):n-r})}function Jc(e){return Number.isFinite(e)?0:e instanceof Date?1:2}let Yc=new TextDecoder(`utf-8`),Xc,Zc=!1;function Qc(){if(!Zc){Zc=!0;try{Xc=new TextDecoder(`latin1`)}catch{Xc=void 0}}return Xc}function $c(e){return typeof e==`string`?e:Yc.decode(e)}function el(e){if(vc())return Buffer.from(e).toString(`base64`);if(Qc())try{return btoa(Xc.decode(e))}catch{}let t=32768,n=[];for(let r=0;r<e.length;r+=t)n.push(String.fromCharCode.apply(null,e.subarray(r,r+t)));return btoa(n.join(``))}function tl(e){let t=new Uint8Array(e.length*2);for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t[n*2]=r&255,t[n*2+1]=r>>8&255}return t}function nl(){return new Promise(e=>setTimeout(e,0))}function rl(e,t){let n=Math.round(e).toString();for(;n.length<t;)n=`0`+n;return n}function il(e){if(e.length<=3)return e;let t=e.length%3,n=e.substring(0,t);for(let r=t;r<e.length;r+=3)n+=(n.length>0?`,`:``)+e.substring(r,r+3);return n}function al(e,t){let n=10**t;return Math.round(e*n)/n}function ol(e){let t=e.replace(/_./g,` `);return t=t.replace(/\*./g,``),t}function sl(e){return/^General$/i.test(e.trim())}function cl(e){let t=e.replace(/\[[^\]]*\]/g,``);return/[ymdhs]/i.test(t)&&!/^[#0.,E%$\s()\-+]+$/i.test(t)}let ll=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],ul=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],dl=[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],fl=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],pl=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`];function ml(e){let t=/\x00(?:Y[24]|D[12]|MN[345])\x00/,n=/\x00H[12]\x00/g,r=/\x00S[12]\x00/g,i=``,a=e,o=a.search(/mm/i);for(;o!==-1;){let e=a.slice(0,o),s=a.slice(o+2),c=-1,l;for(n.lastIndex=0;(l=n.exec(e))!==null;)c=l.index;r.lastIndex=0;let u=r.exec(s),d=u?u.index:-1,f=c!==-1&&!t.test(e.slice(c)),p=d!==-1&&!t.test(s.slice(0,d));i+=e+(f||p?`\0MI2\0`:`\0M2\0`),a=s,o=a.search(/mm/i)}return i+=a,i}function hl(e,t){let n=Math.round(e*86400)%86400,r=Math.floor(n/3600),i=Math.floor(n%3600/60),a=n%60,o=jc(e,!1),s=o.getUTCFullYear(),c=o.getUTCMonth(),l=o.getUTCDate(),u=o.getUTCDay(),d=e*86400-Math.floor(e*86400),f=/AM\/PM|A\/P/i.test(t),p=r>=12,m=r%12||12,h=t.replace(/\[(Red|Green|Blue|Yellow|Magenta|Cyan|White|Black|Color\d+)\]/gi,``);h=ol(h);let g=h.match(/ss\.(0+)/i),_=``;if(g){let e=g[1].length;_=Math.round(d*10**e).toString().padStart(e,`0`),h=h.replace(/ss\.0+/gi,`\0SF\0`)}h=h.replace(/yyyy/gi,`\0Y4\0`),h=h.replace(/yy/gi,`\0Y2\0`),h=h.replace(/mmmmm/gi,`\0MN5\0`),h=h.replace(/mmmm/gi,`\0MN4\0`),h=h.replace(/mmm/gi,`\0MN3\0`),h=h.replace(/dddd/gi,`\0DN4\0`),h=h.replace(/ddd/gi,`\0DN3\0`),h=h.replace(/dd/gi,`\0D2\0`),h=h.replace(/\bd\b/gi,`\0D1\0`),h=h.replace(/hh/gi,`\0H2\0`),h=h.replace(/\bh\b/gi,`\0H1\0`),h=h.replace(/ss/gi,`\0S2\0`),h=h.replace(/\bs\b/gi,`\0S1\0`),h=ml(h),h=h.replace(/\bm\b/gi,`\0M1\0`),h=h.replace(/AM\/PM/gi,`\0AMPM\0`),h=h.replace(/A\/P/gi,`\0AP\0`);let v=f?m:r;return h=h.replace(/\x00Y4\x00/g,s.toString()).replace(/\x00Y2\x00/g,(s%100).toString().padStart(2,`0`)).replace(/\x00MN5\x00/g,dl[c]).replace(/\x00MN4\x00/g,ul[c]).replace(/\x00MN3\x00/g,ll[c]).replace(/\x00M2\x00/g,(c+1).toString().padStart(2,`0`)).replace(/\x00M1\x00/g,(c+1).toString()).replace(/\x00DN4\x00/g,pl[u]).replace(/\x00DN3\x00/g,fl[u]).replace(/\x00D2\x00/g,l.toString().padStart(2,`0`)).replace(/\x00D1\x00/g,l.toString()).replace(/\x00H2\x00/g,v.toString().padStart(2,`0`)).replace(/\x00H1\x00/g,v.toString()).replace(/\x00MI2\x00/g,i.toString().padStart(2,`0`)).replace(/\x00S2\x00/g,a.toString().padStart(2,`0`)).replace(/\x00S1\x00/g,a.toString()).replace(/\x00SF\x00/g,a.toString().padStart(2,`0`)+`.`+_).replace(/\x00AMPM\x00/g,p?`PM`:`AM`).replace(/\x00AP\x00/g,p?`P`:`A`),h=h.replace(/\\/g,``),h}function gl(e){return typeof e==`boolean`?e?`TRUE`:`FALSE`:typeof e==`string`?e:Number.isInteger(e)?e.toString():e.toPrecision(11).replace(/\.?0+$/,``).replace(/\.?0+e/,`e`)}function _l(e,t){let n=(t.match(/%/g)??[]).length;return Sl(e*100**n,t.replace(/%/g,``)||`0`)+`%`.repeat(n)}function vl(e,t){let n=e<0?`-`:``,r=Math.abs(e);if(r===0){let e=t.match(/\.([0#]+)E/i),n=e?e[1].length:2;return`0.`+`0`.repeat(n)+`E+00`}let i=t.match(/\.([0#]+)E/i),a=i?i[1].length:2,o=t.includes(`E+`),s=Math.floor(Math.log10(r)),c=al(r/10**s,a).toFixed(a),l=s>=0?o?`+`:``:`-`,u=rl(Math.abs(s),2);return n+c+`E`+l+u}function yl(e,t){let n=e<0?-1:1,r=Math.abs(e),i=Math.floor(r);if(r-=i,r<1e-10)return[n*i,0,1];let a=0,o=1,s=1,c=0,l=Math.floor(r),u=l,d=1;for(;c<t&&(l=Math.floor(r),u=l*o+a,d=l*c+s,!(r-l<1e-10));)r=1/(r-l),a=o,o=u,s=c,c=d;return d>t&&(d=c,u=o),[n*i,n*u,d]}function bl(e,t){let n=e<0?`-`:``,r=Math.abs(e),i=t.match(/\?+\s*\/\s*(\d+)/);if(i){let e=parseInt(i[1],10),a=Math.floor(r),o=r-a,s=Math.round(o*e);return t.includes(`#`)||t.includes(`0`)?s===0?n+a.toString():n+(a>0?a+` `:``)+s+`/`+e:n+(a*e+s)+`/`+e}let a=t.match(/\/\s*(\?+)/),[o,s,c]=yl(r,10**(a?a[1].length:2)-1);return t.includes(`#`)&&o!==0?s===0?n+Math.abs(o).toString():n+Math.abs(o)+` `+Math.abs(s)+`/`+c:s===0?o===0?`0`:n+Math.abs(o).toString():n+(Math.abs(o)*c+Math.abs(s))+`/`+c}function xl(e,t){let n=Math.round(e*86400),r=Math.floor(n/60),i=Math.floor(r/60),a=n%60,o=r%60,s=i,c=t;return/\[h+\]/i.test(c)&&(c=c.replace(/\[h+\]/gi,s.toString())),/\[m+\]/i.test(c)&&(c=c.replace(/\[m+\]/gi,r.toString())),/\[s+\]/i.test(c)&&(c=c.replace(/\[s+\]/gi,n.toString())),c=c.replace(/mm/gi,o.toString().padStart(2,`0`)),c=c.replace(/ss/gi,a.toString().padStart(2,`0`)),c}function Sl(e,t){let n=Math.abs(e),r=e<0?`-`:``,i=0,a=t;for(;a.endsWith(`,`);)i++,a=a.slice(0,-1);let o=n/1e3**i,s=a.indexOf(`.`),c=a,l=``;s!==-1&&(c=a.substring(0,s),l=a.substring(s+1));let u=l.replace(/[^0#?]/g,``).length,d=al(o,u);if(d===0&&!c.includes(`0`)&&!l.includes(`0`)){let e=``;for(let t of c)t===`?`?e+=` `:t!==`#`&&t!==`,`&&(e+=t);if(u>0&&/[0?]/.test(l)){e+=`.`;for(let t of l)t===`?`&&(e+=` `)}return r+e}let[f,p=``]=d.toString().split(`.`),m=/[0#?][^0#?,.\s][0#?]/.test(c),h;if(m){let e=c.replace(/[^0#?]/g,``).length,t=f;t.length<e&&(t=`0`.repeat(e-t.length)+t),h=``;let n=t.length-e;for(let e=0;e<c.length;e++){let r=c[e];r===`0`||r===`#`||r===`?`?n<t.length&&(h+=t[n],n++):r!==`,`&&(h+=r)}}else{h=f,c.includes(`,`)&&(h=il(f));let e=(c.match(/0/g)??[]).length,t=(c.match(/[0?]/g)??[]).length;h.length<e&&(h=`0`.repeat(e-h.length)+h),h.length<t&&(h=` `.repeat(t-h.length)+h),h===`0`&&e===0&&t===0&&(h=``)}let g=``;if(u>0){let e=(p+`0`.repeat(u)).substring(0,u).split(``);for(let t=l.length-1;t>=0;t--)if(!(t>=e.length))if(l[t]===`#`&&e[t]===`0`)e[t]=``;else if(l[t]===`?`&&e[t]===`0`)e[t]=` `;else break;let t=e.join(``);t.length>0&&(g=`.`+t)}return r+h+g}function Cl(e){let t=``,n=0;for(;n<e.length;)if(e[n]===`"`){for(n++;n<e.length&&e[n]!==`"`;)t+=e[n],n++;n++}else e[n]===`\\`&&n+1<e.length?(n++,t+=e[n],n++):(t+=e[n],n++);return t}function wl(e,t){let n=t.match(/\[(=|>|<|>=|<=|<>)(-?\d+(?:\.\d*)?)\]/);if(!n)return!1;let r=n[1],i=parseFloat(n[2]);switch(r){case`=`:return e===i;case`>`:return e>i;case`<`:return e<i;case`>=`:return e>=i;case`<=`:return e<=i;case`<>`:return e!==i;default:return!1}}function Tl(e,t){if(typeof t==`string`){let n=Bc(e);return n.length>=4&&n[3]?Cl(n[3]).replace(/@/g,t):t}if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=Bc(e),r=/\[(=|>|<|>=|<=|<>)-?\d+(?:\.\d*)?\]/;if((n[0]&&r.test(n[0])||n[1]&&r.test(n[1]))&&n.length>=2){for(let e=0;e<Math.min(n.length,2);e++){let r=n[e].match(/\[(=|>|<|>=|<=|<>)-?\d+(?:\.\d*)?\]/);if(r&&wl(t,r[0]))return n[e]}return n[n.length>2?2:1]}return n.length===1?n[0]:n.length===2?t>=0?n[0]:n[1]:t>0?n[0]:t<0?n[1]:n[2]||n[0]}function El(e,t){let n=Bc(e);return n.length>=2&&n[1]===t}function Dl(e,t){if(t==null)return``;if(sl(e))return gl(t);if(typeof t==`string`)return Tl(e,t);if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=t,r=Tl(e,n);n<0&&El(e,r)&&(n=Math.abs(n));let i=r.replace(/\[(Red|Green|Blue|Yellow|Magenta|Cyan|White|Black|Color\d+)\]/gi,``);if(i=i.replace(/\[(>|<|>=|<=|=|<>)-?\d+(\.\d+)?\]/g,``),i=i.replace(/\[\$[^\]]*\]/g,``),i=ol(i),i=Cl(i),/\[[hms]+\]/i.test(i))return xl(n,i);if(cl(i))return hl(n,i);if(i.includes(`%`))return _l(n,i);if(/E[+-]?/i.test(i))return vl(n,i);if(/\?+\s*\/\s*[\d?]+/.test(i))return bl(n,i);if(i.includes(`(`)&&i.includes(`)`)&&n<0){let e=i.replace(/\(|\)/g,``);return`(`+Sl(-n,e)+`)`}if(i===`@`)return n.toString();let a=``,o=``,s=i.match(/^([^#0?.,]+)/);s&&(a=s[1],i=i.substring(s[0].length));let c=i.match(/([^#0?.,]+)$/);c&&!c[1].includes(`%`)&&(o=c[1],i=i.substring(0,i.length-c[0].length));let l=Sl(n,i);return a+l+o}function Ol(e){let t=e.replace(/"[^"]*"/g,``);if(/\[[hms]\]/i.test(t))return!1;let n=t.replace(/\[[^\]]*\]/g,``),r=/[hs]/i.test(n)||/AM\/PM|A\/P/i.test(n);return/[yd]/i.test(n)||/m/i.test(n)&&!r?!1:r}function kl(e){let t=e.replace(/"[^"]*"/g,``);if(/\[[hms]\]/i.test(t))return!1;let n=t.replace(/\[[^\]]*\]/g,``);return!!(/[yd]/i.test(n)||/m/i.test(n)&&!(/[hs]/i.test(n)||/AM\/PM|A\/P/i.test(n)))}function Al(e,t,n){if(e instanceof Date){let r=Ac(e);if(Ol(t))return r%=1,r<0&&(r+=1),Dl(t,r);let i;return i=n&&kl(t)?n:!t||sl(t)?r%1==0?`yyyy-mm-dd`:`yyyy-mm-dd hh:mm:ss`:t,Dl(i,r)}return Dl(t,e)}function jl(e,t){let n=e.value,r=e.numFmt,i=typeof r==`string`?r:r?.formatCode??`General`;if(n==null)return``;if(n instanceof Date||typeof n==`number`||typeof n==`boolean`||typeof n==`string`)return Al(n,i,t);if(typeof n==`object`&&`formula`in n){let e=n.result;if(e==null)return``;if(e instanceof Date||typeof e==`number`||typeof e==`boolean`||typeof e==`string`)return Al(e,i,t)}return e.text}let Ml=/(([a-z_\-0-9]*)!)?([a-z0-9_$]{2,})([(])?/gi,Nl=/^([$])?([a-z]+)([$])?([1-9][0-9]*)$/i;function Pl(e,t,n){let r=M.decode(t),i=M.decode(n);return e.replace(Ml,(e,t,n,a,o)=>{if(o)return e;let s=Nl.exec(a);if(s){let n=s[1],a=s[2].toUpperCase(),o=s[3],c=s[4];if(a.length>3||a.length===3&&a>`XFD`)return e;let l=M.l2n(a),u=parseInt(c,10);return n||(l+=i.col-r.col),o||(u+=i.row-r.row),(t??``)+(n??``)+M.n2l(l)+(o??``)+u}return e})}let Fl=e=>!!e&&(typeof e!=`object`||Object.keys(e).length>0);function Il(e){let t=``;for(let n of e)n&&typeof n.text==`string`&&(t+=n.text);return t}function Ll(e){let t,n;Array.isArray(e.richText)&&e.richText.length>0?(n=e.richText,t=Il(n)):t=typeof e.text==`string`?e.text:``;let r={text:t,hyperlink:typeof e.hyperlink==`string`?e.hyperlink:``};return n&&(r.richText=n),typeof e.tooltip==`string`&&e.tooltip.length>0&&(r.tooltip=e.tooltip),r}var B=class e{static{this.Types=Ws.ValueType}constructor(t,n,r){if(!t||!n)throw new j(`A Cell needs a Row`);this._row=t,this._column=n,M.validateAddress(r),this._address=r,this._value=Zl.create(e.Types.Null,this),this.style=this._mergeStyle(t.style,n.style,{}),this._mergeCount=0}get worksheet(){return this._row.worksheet}get workbook(){return this._row.worksheet.workbook}destroy(){this.style=void 0,this._value=void 0,this._row=void 0,this._column=void 0,this._address=void 0}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e}get font(){return this.style.font}set font(e){this.style.font=e}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e}get border(){return this.style.border}set border(e){this.style.border=e}get fill(){return this.style.fill}set fill(e){this.style.fill=e}get protection(){return this.style.protection}set protection(e){this.style.protection=e}_mergeStyle(e,t,n){let r=e&&e.numFmt||t&&t.numFmt;r&&(n.numFmt=r);let i=e&&Fl(e.font)&&e.font||t&&Fl(t.font)&&t.font;i&&(n.font=structuredClone(i));let a=e&&Fl(e.alignment)&&e.alignment||t&&Fl(t.alignment)&&t.alignment;a&&(n.alignment=structuredClone(a));let o=e&&Fl(e.border)&&e.border||t&&Fl(t.border)&&t.border;o&&(n.border=structuredClone(o));let s=e&&Fl(e.fill)&&e.fill||t&&Fl(t.fill)&&t.fill;s&&(n.fill=structuredClone(s));let c=e&&Fl(e.protection)&&e.protection||t&&Fl(t.protection)&&t.protection;return c&&(n.protection=structuredClone(c)),n}get address(){return this._address}get row(){return this._row.number}get col(){return this._column.number}get $col$row(){return`$${this._column.letter}$${this.row}`}get type(){return this._value.type}get effectiveType(){return this._value.effectiveType}toCsvString(){return this._value.toCsvString()}addMergeRef(){this._mergeCount++}releaseMergeRef(){this._mergeCount--}get isMerged(){return this._mergeCount>0||this.type===e.Types.Merge}merge(t,n){this._value.release(),this._value=Zl.create(e.Types.Merge,this,t),n||(this.style=L(t.style)??{})}unmerge(){this.type===e.Types.Merge&&(this._value.release(),this._value=Zl.create(e.Types.Null,this),this.style=this._mergeStyle(this._row.style,this._column.style,{...this.style}))}isMergedTo(t){return this._value.type===e.Types.Merge&&this._value.isMergedTo?this._value.isMergedTo(t):!1}get master(){return this.type===e.Types.Merge?this._value.master:this}get isHyperlink(){return this._value.type===e.Types.Hyperlink}get hyperlink(){return this._value.hyperlink}get value(){return this._value.value}set value(t){if(this.type===e.Types.Merge){this._value.master.value=t;return}this._value.release(),this._value=Zl.create(Zl.getType(t),this,t)}get note(){if(this._comment)return this._comment.note}set note(e){this._comment=new _c(e)}get comment(){return this._comment}set comment(e){e===void 0?this._comment=void 0:e instanceof _c?this._comment=e:this._comment=new _c(e)}get text(){return this._value.toString()}get displayText(){return jl(this)}get html(){return pc(this.text)}toString(){return this.text}_upgradeToHyperlink(t){switch(this.type){case e.Types.String:this._value=Zl.create(e.Types.Hyperlink,this,{text:String(this._value.value),hyperlink:t});break;case e.Types.RichText:{let n=this._value.value,r=n&&Array.isArray(n.richText)?n.richText:[];this._value=Zl.create(e.Types.Hyperlink,this,{text:Il(r),richText:r.length>0?r:void 0,hyperlink:t});break}default:break}}get formula(){return this._value.formula}get result(){return this._value.result}set result(t){this.type===e.Types.Formula&&(this._value.result=t)}get formulaType(){return this._value.formulaType??0}get fullAddress(){let{worksheet:e}=this._row;return{sheetName:e.name,address:this.address,row:this.row,col:this.col}}get name(){return this.names[0]}set name(e){this.names=[e]}get names(){return this.workbook.definedNames.getNamesEx(this.fullAddress)}set names(e){let{definedNames:t}=this.workbook;t.removeAllNames(this.fullAddress),e.forEach(e=>{t.addEx(this.fullAddress,e)})}addName(e){this.workbook.definedNames.addEx(this.fullAddress,e)}removeName(e){this.workbook.definedNames.removeEx(this.fullAddress,e)}removeAllNames(){this.workbook.definedNames.removeAllNames(this.fullAddress)}get _dataValidations(){return this.worksheet.dataValidations}get dataValidation(){return this._dataValidations.find(this.address)}set dataValidation(e){this._dataValidations.add(this.address,e)}get model(){let{model:e}=this._value;return e.style=this.style,this._comment&&(e.comment=this._comment.model),e}set model(e){if(this._value.release(),this._value=Zl.create(e.type,this),this._value.model=e,e.comment)switch(e.comment.type){case`note`:this._comment=_c.fromModel(e.comment);break}e.style?this.style=L(e.style)??{}:this.style={}}},Rl=class{constructor(e){this.model={address:e.address,type:B.Types.Null}}get value(){return null}set value(e){}get type(){return B.Types.Null}get effectiveType(){return B.Types.Null}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return``}release(){}toString(){return``}},zl=class{constructor(e,t){this.model={address:e.address,type:B.Types.Number,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.Number}get effectiveType(){return B.Types.Number}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}},Bl=class{constructor(e,t){this.model={address:e.address,type:B.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.String}get effectiveType(){return B.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return`"${this.model.value.replace(/"/g,`""`)}"`}release(){}toString(){return this.model.value}},Vl=class{constructor(e,t){this.model={address:e.address,type:B.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}toString(){return this.model.value.richText.map(e=>e.text).join(``)}get type(){return B.Types.RichText}get effectiveType(){return B.Types.RichText}get address(){return this.model.address}set address(e){this.model.address=e}get text(){return this.toString()}toCsvString(){return`"${this.text.replace(/"/g,`""`)}"`}release(){}},Hl=class{constructor(e,t){this.model={address:e.address,type:B.Types.Date,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.Date}get effectiveType(){return B.Types.Date}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toISOString()}release(){}toString(){return this.model.value.toString()}},Ul=class{constructor(e,t){if(this.model={address:e.address,type:B.Types.Hyperlink},t){if(`formula`in t&&typeof t.formula==`string`){let e=t,n=e.result===void 0||e.result===null?``:String(e.result);this.model.text=n,this.model.hyperlink=e.hyperlink??``,e.tooltip!==void 0&&(this.model.tooltip=e.tooltip),this.model.formula=e.formula,e.result!==void 0&&(this.model.result=e.result);return}let e=Ll(t);this.model.text=e.text,this.model.hyperlink=e.hyperlink,e.richText&&(this.model.richText=e.richText),e.tooltip!==void 0&&(this.model.tooltip=e.tooltip)}}get value(){let e={text:this.model.text??``,hyperlink:this.model.hyperlink??``};return this.model.richText&&this.model.richText.length>0&&(e.richText=this.model.richText),this.model.tooltip!==void 0&&(e.tooltip=this.model.tooltip),e}set value(e){let t=Ll(e);this.model.text=t.text,this.model.hyperlink=t.hyperlink,t.richText?this.model.richText=t.richText:delete this.model.richText,t.tooltip===void 0?delete this.model.tooltip:this.model.tooltip=t.tooltip}get text(){return this.model.text}set text(e){this.model.richText&&delete this.model.richText,this.model.text=e}get richText(){return this.model.richText}set richText(e){Array.isArray(e)&&e.length>0?(this.model.richText=e,this.model.text=Il(e)):delete this.model.richText}get hyperlink(){return this.model.hyperlink}set hyperlink(e){this.model.hyperlink=e}get type(){return B.Types.Hyperlink}get effectiveType(){return B.Types.Hyperlink}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.hyperlink??``}release(){}toString(){return this.model.text??``}},Wl=class{constructor(e,t){this.model={address:e.address,type:B.Types.Merge,master:t?t.address:void 0},this._master=t,t&&t.addMergeRef()}get value(){return this._master.value}set value(e){e instanceof B?(this._master&&this._master.releaseMergeRef(),e.addMergeRef(),this._master=e):this._master.value=e}isMergedTo(e){return e===this._master}get master(){return this._master}get type(){return B.Types.Merge}get effectiveType(){return this._master.effectiveType}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return``}release(){this._master.releaseMergeRef()}toString(){return this.value==null?``:this.value.toString()}},Gl=class{constructor(e,t){this.cell=e,this.model={address:e.address,type:B.Types.Formula,shareType:t?t.shareType:void 0,ref:t?t.ref:void 0,formula:t?t.formula:void 0,sharedFormula:t?t.sharedFormula:void 0,result:t?t.result:void 0,isDynamicArray:t?t.isDynamicArray:void 0}}_copyModel(e){let t={};return e.formula&&(t.formula=e.formula),e.result!==void 0&&(t.result=e.result),e.ref&&(t.ref=e.ref),e.shareType&&(t.shareType=e.shareType),e.sharedFormula&&(t.sharedFormula=e.sharedFormula),e.isDynamicArray&&(t.isDynamicArray=e.isDynamicArray),t}get value(){return this._copyModel(this.model)}set value(e){e.formula&&(this.model.formula=e.formula),e.result!==void 0&&(this.model.result=e.result),e.ref&&(this.model.ref=e.ref),e.shareType&&(this.model.shareType=e.shareType),e.sharedFormula&&(this.model.sharedFormula=e.sharedFormula),e.isDynamicArray!==void 0&&(this.model.isDynamicArray=e.isDynamicArray)}validate(e){switch(Zl.getType(e)){case B.Types.Null:case B.Types.String:case B.Types.Number:case B.Types.Date:break;case B.Types.Hyperlink:case B.Types.Formula:default:throw new Ar(String(Zl.getType(e)),`Cannot process that type of result value`)}}get dependencies(){return{ranges:this.formula.match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g),cells:this.formula.replace(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g,``).match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}/g)}}get formula(){return this.model.formula||this._getTranslatedFormula()||``}set formula(e){this.model.formula=e}get formulaType(){return this.model.formula?1:this.model.sharedFormula?2:0}get result(){return this.model.result}set result(e){this.model.result=e}get type(){return B.Types.Formula}get effectiveType(){let e=this.model.result;return e==null?0:typeof e==`string`?3:typeof e==`number`?2:e instanceof Date?4:typeof e==`object`&&`error`in e?10:0}get address(){return this.model.address}set address(e){this.model.address=e}_getTranslatedFormula(){if(!this._translatedFormula&&this.model.sharedFormula){let{worksheet:e}=this.cell,t=e.findCell(this.model.sharedFormula);this._translatedFormula=t&&t.formula?Pl(t.formula,t.address,this.model.address):void 0}return this._translatedFormula}toCsvString(){return`${this.model.result??``}`}release(){}toString(){return this.model.result?this.model.result.toString():``}},Kl=class{constructor(e,t){this.model={address:e.address,type:B.Types.SharedString,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.SharedString}get effectiveType(){return B.Types.SharedString}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}},ql=class{constructor(e,t){this.model={address:e.address,type:B.Types.Boolean,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.Boolean}get effectiveType(){return B.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return+!!this.model.value}release(){}toString(){return this.model.value.toString()}},Jl=class{constructor(e,t){this.model={address:e.address,type:B.Types.Checkbox,value:t.checkbox}}get value(){return{checkbox:this.model.value}}set value(e){this.model.value=e.checkbox}get type(){return B.Types.Checkbox}get effectiveType(){return B.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return+!!this.model.value}release(){}toString(){return this.model.value.toString()}},Yl=class{constructor(e,t){this.model={address:e.address,type:B.Types.Error,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.Error}get effectiveType(){return B.Types.Error}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.toString()}release(){}toString(){return this.model.value.error.toString()}},Xl=class{constructor(e,t){this.model={address:e.address,type:B.Types.String,value:JSON.stringify(t),rawValue:t}}get value(){return this.model.rawValue}set value(e){this.model.rawValue=e,this.model.value=JSON.stringify(e)}get type(){return B.Types.String}get effectiveType(){return B.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value}release(){}toString(){return this.model.value}};let Zl={getType(e){if(e==null)return B.Types.Null;if(typeof e==`string`)return B.Types.String;if(typeof e==`number`)return B.Types.Number;if(typeof e==`boolean`)return B.Types.Boolean;if(e instanceof Date)return B.Types.Date;if(typeof e==`object`){if(`checkbox`in e&&typeof e.checkbox==`boolean`)return B.Types.Checkbox;if(`hyperlink`in e&&typeof e.hyperlink==`string`&&e.hyperlink){let t=`text`in e&&typeof e.text==`string`&&e.text.length>0,n=`richText`in e&&Array.isArray(e.richText)&&e.richText.length>0,r=`formula`in e&&typeof e.formula==`string`;if(t||n||r)return B.Types.Hyperlink}if(`formula`in e&&e.formula||`sharedFormula`in e&&e.sharedFormula)return B.Types.Formula;if(`richText`in e&&Array.isArray(e.richText)&&e.richText.length>0)return B.Types.RichText;if(`sharedString`in e&&e.sharedString)return B.Types.SharedString;if(`error`in e&&e.error)return B.Types.Error}return B.Types.JSON},types:[{t:B.Types.Null,f:Rl},{t:B.Types.Number,f:zl},{t:B.Types.String,f:Bl},{t:B.Types.Date,f:Hl},{t:B.Types.Hyperlink,f:Ul},{t:B.Types.Formula,f:Gl},{t:B.Types.Merge,f:Wl},{t:B.Types.JSON,f:Xl},{t:B.Types.SharedString,f:Kl},{t:B.Types.RichText,f:Vl},{t:B.Types.Boolean,f:ql},{t:B.Types.Error,f:Yl},{t:B.Types.Checkbox,f:Jl}].reduce((e,t)=>(e[t.t]=t.f,e),[]),create(e,t,n){let r=this.types[e];if(!r)throw new Ar(String(e),`Could not create Value`);return new r(t,n)}};var Ql=class{constructor(e,t){this._worksheet=e,this._number=t,this._cells=[],this.style={},this.outlineLevel=0}get number(){return this._number}get worksheet(){return this._worksheet}commit(){this._worksheet._commitRow(this)}destroy(){this._worksheet=void 0,this._cells=void 0,this.style=void 0}findCell(e){return this._cells[e-1]}getCellEx(e){let t=this._cells[e.col-1];if(!t){let n=this._worksheet.getColumn(e.col);t=new B(this,n,e.address),this._cells[e.col-1]=t}return t}getCell(e){let t;if(typeof e==`string`){let n=this._worksheet.getColumnKey(e);t=n?n.number:M.l2n(e)}else t=e;return this._cells[t-1]||this.getCellEx({address:M.encodeAddress(this._number,t),row:this._number,col:t})}splice(e,t,...n){let r=e+t,i=n.length-t,a=this._cells.length,o,s,c;if(i<0)for(o=e+n.length;o<=a;o++)c=this._cells[o-1],s=this._cells[o-i-1],s?(c=this.getCell(o),c.value=s.value,c.style=L(s.style)??{},c.comment=s.comment):c&&(c.value=null,c.style={},c.comment=void 0);else if(i>0)for(o=a;o>=r;o--)s=this._cells[o-1],s?(c=this.getCell(o+i),c.value=s.value,c.style=L(s.style)??{},c.comment=s.comment):this._cells[o+i-1]=void 0;for(o=0;o<n.length;o++)c=this.getCell(e+o),c.value=n[o],c.style={},c.comment=void 0}eachCell(e,t){let n=null,r;if(typeof e==`function`?r=e:(n=e,r=t),n&&n.includeEmpty){let e=this._cells.length;for(let t=1;t<=e;t++)r(this.getCell(t),t)}else this._cells.forEach((e,t)=>{e&&e.type!==0&&r(e,t+1)})}addPageBreak(e,t){let n=this._worksheet,r=Math.max(0,(e??0)-1)||0,i=Math.max(0,(t??0)-1)||16838,a={id:this._number,max:i,man:1};r&&(a.min=r),n.rowBreaks.push(a)}get values(){let e=[];return this._cells.forEach(t=>{t&&t.type!==0&&(e[t.col]=t.value)}),e}set values(e){if(this._cells=[],e)if(e instanceof Array){let t=0;Object.prototype.hasOwnProperty.call(e,`0`)&&(t=1),e.forEach((e,n)=>{e!==void 0&&(this.getCellEx({address:M.encodeAddress(this._number,n+t),row:this._number,col:n+t}).value=e)})}else this._worksheet.eachColumnKey((t,n)=>{e[n]!==void 0&&(this.getCellEx({address:M.encodeAddress(this._number,t.number),row:this._number,col:t.number}).value=e[n])})}getValues(){let e=[];return this._cells.forEach(t=>{t&&t.type!==0&&(e[t.col-1]=t.value)}),e}valuesToString(e=`,`){return this.getValues().join(e)}get hasValues(){return this._cells.some(e=>e&&e.type!==0)}get cellCount(){return this._cells.length}get actualCellCount(){let e=0;return this.eachCell(()=>{e++}),e}get dimensions(){let e=0,t=0;return this._cells.forEach(n=>{n&&n.type!==0&&((!e||e>n.col)&&(e=n.col),t<n.col&&(t=n.col))}),e>0?{min:e,max:t}:null}_applyStyle(e,t){this.style[e]=t,this._cells.forEach(n=>{n&&(n.style[e]=typeof t==`object`&&t?structuredClone(t):t)})}get numFmt(){return this.style.numFmt}set numFmt(e){e!==void 0&&this._applyStyle(`numFmt`,e)}get font(){return this.style.font}set font(e){e!==void 0&&this._applyStyle(`font`,e)}get alignment(){return this.style.alignment}set alignment(e){e!==void 0&&this._applyStyle(`alignment`,e)}get protection(){return this.style.protection}set protection(e){e!==void 0&&this._applyStyle(`protection`,e)}get border(){return this.style.border}set border(e){e!==void 0&&this._applyStyle(`border`,e)}get fill(){return this.style.fill}set fill(e){e!==void 0&&this._applyStyle(`fill`,e)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel??0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=(this._worksheet.properties.outlineLevelRow??0))}get model(){let e=[],t=0,n=0;return this._cells.forEach(r=>{if(r){let i=r.model;i&&((!t||t>r.col)&&(t=r.col),n<r.col&&(n=r.col),e.push(i))}}),this.height!=null||e.length?{cells:e,number:this.number,min:t,max:n,height:this.height,customHeight:this.customHeight,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel,collapsed:this.collapsed,dyDescent:this.dyDescent}:null}set model(e){if(e.number!==this._number)throw new j(`Invalid row number in model`);this._cells=[];let t;e.cells.forEach(e=>{switch(e.type){case B.Types.Merge:break;default:{let n;if(e.address)n=M.decodeAddress(e.address);else if(t){let{row:e}=t,r=t.col+1;n={row:e,col:r,address:M.encodeAddress(e,r),$col$row:`$${M.n2l(r)}$${e}`}}if(t=n,!n)break;let r=this.getCellEx(n);r.model=e;break}}}),e.height==null?delete this.height:this.height=e.height,e.customHeight==null?delete this.customHeight:this.customHeight=e.customHeight,this.hidden=e.hidden,this.outlineLevel=e.outlineLevel??0,this.dyDescent=e.dyDescent,this.style=e.style?structuredClone(e.style):{}}},$l=class extends D{constructor({workbook:e,id:t,iterator:n,options:r}){super(),this.workbook=e,this.id=t,this.sheetNo=typeof t==`number`?t:parseInt(String(t),10),this.iterator=n,this.options=r||{},this.name=`Sheet${this.id}`,this._columns=[],this._keys=Object.create(null),this._dimensions=new N}destroy(){throw new Pr(`destroy`,`Invalid operation for a streaming reader`)}get dimensions(){return this._dimensions}get columns(){return this._columns}getColumn(e){if(typeof e==`string`){let t=this._keys[e];if(t)return t;e=M.l2n(e)}if(e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new gc(this,t++))}return this._columns[e-1]}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){let t=this._keys;for(let n in t)e(t[n],n)}async read(){try{for await(let e of this.parse())for(let t=0;t<e.length;t++){let n=e[t];this.emit(n.eventType,n.value)}this.emit(`finished`)}catch(e){this.emit(`error`,e)}}async*[Symbol.asyncIterator](){for await(let e of this.parse())for(let t=0;t<e.length;t++){let n=e[t];n.eventType===`row`&&(yield n.value)}}async*parse(){let{iterator:e,options:t}=this,n=!1,r=!1,i=null;switch(t.worksheets){case`emit`:n=!0;break;case`prep`:break;default:break}switch(t.hyperlinks){case`emit`:r=!0;break;case`cache`:this.hyperlinks=i=Object.create(null);break;default:break}if(!n&&!r&&!i)return;let a=r||i!==null,{sharedStrings:o,styles:s,properties:c}=this.workbook,l=!1,u=!1,d=!1,f=null,p=null,m=null,h=null,g=null,_=new ic({position:!1,invalidCharHandling:`skip`});_.on(`opentag`,e=>{if(n)switch(e.name){case`cols`:l=!0,f=[];break;case`sheetData`:u=!0;break;case`col`:l&&f.push({min:parseInt(e.attributes.min,10),max:parseInt(e.attributes.max,10),width:parseFloat(e.attributes.width),styleId:parseInt(e.attributes.style??`0`,10)});break;case`row`:if(u){let t=parseInt(e.attributes.r,10);if(p=new Ql(this,t),e.attributes.ht&&(p.height=parseFloat(e.attributes.ht)),e.attributes.customHeight===`1`&&(p.customHeight=!0),e.attributes.s!==void 0){let t=parseInt(e.attributes.s,10),n=s.getStyleModel(t);n&&(p.style=L(n)??{})}}break;case`c`:if(p){let t=e.attributes.s,n=e.attributes.cm;m={ref:e.attributes.r,s:t===void 0?void 0:parseInt(t,10),t:e.attributes.t,cm:n===void 0?void 0:parseInt(n,10)}}break;case`f`:m&&(h=m.f={text:``});break;case`v`:m&&(h=m.v={text:``});break;case`is`:case`t`:m&&(h=m.v={text:``});break;case`mergeCell`:break;default:break}if(a)switch(e.name){case`hyperlinks`:d=!0;break;case`hyperlink`:if(d){let t=e.attributes.location,n={ref:e.attributes.ref,rId:e.attributes[`r:id`],target:t?t.startsWith(`#`)?t:`#${t}`:void 0};r?(g||=[]).push({eventType:`hyperlink`,value:n}):i[n.ref]=n}break;default:break}}),_.on(`text`,e=>{n&&h&&(h.text+=e)}),_.on(`closetag`,e=>{if(n)switch(e.name){case`cols`:l=!1,this._columns=gc.fromModel(f);break;case`sheetData`:u=!1;break;case`row`:p&&(this._dimensions.expandRow({number:p.number,dimensions:p.dimensions??void 0}),(g||=[]).push({eventType:`row`,value:p})),p=null;break;case`c`:if(p&&m){let e=M.decodeAddress(m.ref),t=p.getCell(e.col);if(m.s!==void 0){let e=s.getStyleModel(m.s);e&&(t.style=L(e)??{})}if(m.f){let e={formula:m.f.text};if(m.v&&(m.t===`str`?e.result=m.v.text:e.result=parseFloat(m.v.text)),m.cm!==void 0){let{workbook:t}=this;t.dynamicArrayCmIndices?t.dynamicArrayCmIndices.has(m.cm)&&(e.isDynamicArray=!0):t.hasDynamicArrayMetadata&&(e.isDynamicArray=!0)}t.value=e}else if(m.v)switch(m.t){case`s`:{let e=parseInt(m.v.text,10);o?t.value=o[e]:t.value={sharedString:e};break}case`inlineStr`:t.value=m.v.text.includes(`_x`)?Pc(m.v.text):m.v.text;break;case`str`:t.value=m.v.text;break;case`e`:t.value={error:m.v.text};break;case`b`:t.value=parseInt(m.v.text,10)!==0;break;default:{let e=typeof t.numFmt==`string`?t.numFmt:t.numFmt?.formatCode;e&&Wc(e)?t.value=jc(parseFloat(m.v.text),c?.model?.date1904):t.value=parseFloat(m.v.text);break}}if(i){let e=i[m.ref];e&&(t.text=t.value,t.value=void 0,t.hyperlink=e)}m=null,h=null}break;default:break}if(a)switch(e.name){case`hyperlinks`:d=!1;break;default:break}});let v=new TextDecoder(`utf-8`,{fatal:!0});for await(let t of e){let e=typeof t==`string`?t:v.decode(t,{stream:!0});_.write(e);let n=g;n&&n.length>0&&(g=null,yield n)}let y=v.decode();y&&_.write(y),_.close();let b=g;b&&b.length>0&&(yield b)}};async function*eu(e){let t=[],n=null,r=e=>{t.push(e),n&&=(n(),null)};e.on(`data`,r);let i=!1,a=()=>{i=!0,n&&=(n(),null)};e.on(`end`,a);let s=!1,c=e=>{s=e,n&&=(n(),null)};e.on(`error`,c);try{for(;!i||t.length>0;){if(t.length===0)e.resume(),await new Promise(e=>{n=e});else{e.pause();let n=t.shift();n!==void 0&&(yield n)}if(s)throw o(s)}}finally{e.removeListener(`data`,r),e.removeListener(`end`,a),e.removeListener(`error`,c)}}let V={contentTypes:`[Content_Types].xml`,rootRels:`_rels/.rels`,docPropsApp:`docProps/app.xml`,docPropsCore:`docProps/core.xml`,xlWorkbook:`xl/workbook.xml`,xlWorkbookRels:`xl/_rels/workbook.xml.rels`,xlSharedStrings:`xl/sharedStrings.xml`,xlStyles:`xl/styles.xml`,xlTheme1:`xl/theme/theme1.xml`,xlFeaturePropertyBag:`xl/featurePropertyBag/featurePropertyBag.xml`,xlMetadata:`xl/metadata.xml`},tu=/^xl\/worksheets\/sheet(\d+)[.]xml$/,nu=/^xl\/worksheets\/_rels\/sheet(\d+)[.]xml[.]rels$/,ru=/^xl\/theme\/[a-zA-Z0-9]+[.]xml$/,iu=/^xl\/media\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/,au=/^xl\/drawings\/(drawing\d+)[.]xml$/,ou=/^xl\/drawings\/_rels\/(drawing\d+)[.]xml[.]rels$/,su=/^xl\/drawings\/(vmlDrawing\d+)[.]vml$/,cu=/^xl\/drawings\/(vmlDrawingHF\d+)[.]vml$/,lu=/^xl\/comments(\d+)[.]xml$/,uu=/^xl\/tables\/(table\d+)[.]xml$/,du=/^xl\/pivotTables\/(pivotTable\d+)[.]xml$/,fu=/^xl\/pivotTables\/_rels\/(pivotTable\d+)[.]xml[.]rels$/,pu=/^xl\/pivotCache\/(pivotCacheDefinition\d+)[.]xml$/,mu=/^xl\/pivotCache\/_rels\/(pivotCacheDefinition\d+)[.]xml[.]rels$/,hu=/^xl\/pivotCache\/(pivotCacheRecords\d+)[.]xml$/,gu=/^xl\/externalLinks\/externalLink(\d+)[.]xml$/,_u=/^xl\/externalLinks\/_rels\/externalLink(\d+)[.]xml[.]rels$/;function vu(e){return e.startsWith(`/`)?e.slice(1):e}function yu(e){let t=tu.exec(e);if(t)return parseInt(t[1],10)}function bu(e){let t=nu.exec(e);if(t)return parseInt(t[1],10)}function xu(e){return e.startsWith(`xl/media/`)}function Su(e){let t=iu.exec(e);return t?t[1]:void 0}function Cu(e){return ru.test(e)}function wu(e){let t=/^xl\/theme\/([a-zA-Z0-9]+)[.]xml$/.exec(e);return t?t[1]:void 0}function Tu(e){return xu(e)||Cu(e)}function Eu(e){let t=au.exec(e);return t?t[1]:void 0}function Du(e){let t=ou.exec(e);return t?t[1]:void 0}function Ou(e){let t=su.exec(e);return t?t[1]:void 0}function ku(e){let t=cu.exec(e);return t?t[1]:void 0}function Au(e){let t=lu.exec(e);return t?t[1]:void 0}function ju(e){let t=uu.exec(e);return t?t[1]:void 0}function Mu(e){let t=du.exec(e);return t?t[1]:void 0}function Nu(e){let t=fu.exec(e);return t?t[1]:void 0}function Pu(e){let t=pu.exec(e);return t?t[1]:void 0}function Fu(e){let t=mu.exec(e);return t?t[1]:void 0}function Iu(e){let t=hu.exec(e);return t?t[1]:void 0}function Lu(e){let t=gu.exec(e);return t?parseInt(t[1],10):void 0}function Ru(e){let t=_u.exec(e);return t?parseInt(t[1],10):void 0}function H(e){return e.startsWith(`/`)?e:`/${e}`}function zu(e){return`xl/theme/${e}.xml`}function Bu(e){return`xl/media/${e}`}function Vu(e){return`xl/worksheets/sheet${e}.xml`}function Hu(e){return`xl/worksheets/_rels/sheet${e}.xml.rels`}function Uu(e){return`worksheets/sheet${e}.xml`}function Wu(e){return`xl/comments${e}.xml`}function Gu(e){return`xl/${e}.xml`}function Ku(e){return`xl/drawings/vmlDrawing${e}.vml`}function qu(e){return`xl/drawings/vmlDrawingHF${e}.vml`}function Ju(e){return`xl/drawings/_rels/vmlDrawingHF${e}.vml.rels`}function Yu(e){return`xl/tables/${e}`}function Xu(e){return`xl/drawings/${e}.xml`}function Zu(e){return`xl/drawings/_rels/${e}.xml.rels`}function Qu(e){return`xl/pivotCache/pivotCacheDefinition${e}.xml`}function $u(e){return`xl/pivotCache/_rels/pivotCacheDefinition${e}.xml.rels`}function ed(e){return`xl/pivotCache/pivotCacheRecords${e}.xml`}function td(e){return`pivotCacheRecords${e}.xml`}function nd(e){return`xl/pivotTables/pivotTable${e}.xml`}function rd(e){return`xl/pivotTables/_rels/pivotTable${e}.xml.rels`}function id(e){return`xl/externalLinks/externalLink${e}.xml`}function ad(e){return`xl/externalLinks/_rels/externalLink${e}.xml.rels`}function od(e){return`externalLinks/externalLink${e}.xml`}function sd(e){return`../pivotCache/pivotCacheDefinition${e}.xml`}let cd={workbookStyles:`styles.xml`,workbookSharedStrings:`sharedStrings.xml`,workbookTheme1:`theme/theme1.xml`,workbookFeaturePropertyBag:`featurePropertyBag/featurePropertyBag.xml`,workbookMetadata:`metadata.xml`};function ld(e){return`pivotCache/pivotCacheDefinition${e}.xml`}function ud(e){return`../comments${e}.xml`}function dd(e){return`../drawings/vmlDrawing${e}.vml`}function fd(e){return`../drawings/vmlDrawingHF${e}.vml`}function pd(e){return`../drawings/${e}.xml`}function md(e){return`../drawings/${e}.vml`}function hd(e){return`../${e}.xml`}function gd(e){return`../pivotTables/pivotTable${e}.xml`}function _d(e){return`../pivotTables/${e}.xml`}function vd(e){return`../tables/${e}`}function yd(e){return`../tables/${e}.xml`}function bd(e){return`../media/${e}`}function xd(e){return`xl/ctrlProps/ctrlProp${e}.xml`}function Sd(e){return`../ctrlProps/ctrlProp${e}.xml`}function Cd(e,t){if(t)for(let n in t){let r=t[n];r!==void 0&&(Ec(n),e.push(` ${n}="${wc(String(r))}"`))}}var wd=class{constructor(){this._parts=[],this._chunks=[],this._stack=[],this._snapshots=[],this._leaf=!1,this._open=!1}_consolidate(){this._snapshots.length>0||this._parts.length>=1e4&&(this._chunks.push(this._parts.join(``)),this._parts.length=0)}get depth(){return this._stack.length}get currentElement(){return this._stack.length>0?this._stack[this._stack.length-1]:void 0}get cursor(){return this._chunks.length*1e4+this._parts.length}openXml(e){let t=e?{...z,...e}:z;this._parts.push(`<?xml`),Cd(this._parts,t),this._parts.push(`?>
|
|
116
|
-
`)}openNode(e,t){Ec(e),this._open&&this._parts.push(`>`),this._stack.push(e);let n=`<`+e;if(t)for(let e in t){let r=t[e];r!==void 0&&(Ec(e),n+=` ${e}="${wc(String(r))}"`)}this._parts.push(n),this._leaf=!0,this._open=!0}addAttribute(e,t){if(!this._open)throw new qs(`add attribute`,`no element is open`);Ec(e),this._parts.push(` ${e}="${wc(String(t))}"`)}addAttributes(e){if(!this._open)throw new qs(`add attributes`,`no element is open`);Cd(this._parts,e)}writeText(e){this._open&&=(this._parts.push(`>`),!1),this._leaf=!1,this._parts.push(R(String(e)))}writeRaw(e){this._open&&=(this._parts.push(`>`),!1),this._leaf=!1,this._parts.push(e)}writeCData(e){this._open&&=(this._parts.push(`>`),!1),this._leaf=!1,this._parts.push(Dc(e))}writeComment(e){this._open&&=(this._parts.push(`>`),!1),this._leaf=!1,Oc(e),this._parts.push(`<!--${e}-->`)}closeNode(){let e=this._stack.pop();if(e===void 0)throw new qs(`close node`,`no element is open`);this._leaf?this._parts.push(`/>`):this._parts.push(`</${e}>`),this._open=!1,this._leaf=!1,this._consolidate()}leafNode(e,t,n){Ec(e),this._open&&=(this._parts.push(`>`),!1);let r=`<`+e;if(t)for(let e in t){let n=t[e];n!==void 0&&(Ec(e),r+=` ${e}="${wc(String(n))}"`)}n===void 0?r+=`/>`:r+=`>`+R(String(n))+`</`+e+`>`,this._parts.push(r),this._leaf=!1}closeAll(){for(;this._stack.length>0;)this.closeNode()}toString(){return this._chunks.length===0?this._parts.join(``):this._chunks.join(``)+this._parts.join(``)}get xml(){return this.toString()}save(){this._snapshots.push({partsLength:this._parts.length,chunksLength:this._chunks.length,stackLength:this._stack.length,leaf:this._leaf,open:this._open})}commit(){if(this._snapshots.length===0)throw new qs(`commit`,`no snapshot to commit`);this._snapshots.pop()}rollback(){if(this._snapshots.length===0)throw new qs(`rollback`,`no snapshot to rollback`);let e=this._snapshots.pop();this._parts.length=e.partsLength,this._chunks.length=e.chunksLength,this._stack.length=e.stackLength,this._leaf=e.leaf,this._open=e.open}reset(){this._parts=[],this._chunks=[],this._stack=[],this._snapshots=[],this._leaf=!1,this._open=!1}};let Td=new Set([`ep`,`cp`,`dc`,`dcterms`,`dcmitype`,`vt`]);function Ed(e,t){let n=!1;for(let e in t)if(e.length>6&&e.startsWith(`xmlns:`)){let r=e.slice(6);if(t[e]===`http://schemas.openxmlformats.org/spreadsheetml/2006/main`)return r;Td.has(r)&&(n=!0)}if(n)return null;let r=e.indexOf(`:`);return r!==-1&&Td.has(e.slice(0,r))?null:void 0}function Dd(e,t){let n=e.indexOf(`:`);if(n===-1)return e;let r=e.slice(0,n);return r===t||Td.has(r)?e.slice(n+1):e}var U=class e{prepare(e,t){}render(e,t){}parseOpen(e){}parseText(e){}parseClose(e){return!1}reconcile(e,t){}reset(){this.model=void 0,this.map&&Object.values(this.map).forEach(t=>{t instanceof e?t.reset():t.xform&&t.xform.reset()})}mergeModel(e){this.model=Object.assign(this.model||{},e)}async parse(e){let t=!1,n,r=0,i=null;for await(let a of e)if(!t){for(let{eventType:e,value:o}of a)if(e===`opentag`){if(r===1){this.parseOpen(o);continue}if(r===0){let e=Ed(o.name,o.attributes);if(e===void 0){r=1,this.parseOpen(o);continue}r=2,i=e}let e=Dd(o.name,i);e===o.name?this.parseOpen(o):this.parseOpen({name:e,attributes:o.attributes,isSelfClosing:o.isSelfClosing})}else if(e===`text`)this.parseText(o);else if(e===`closetag`){if(r===1){if(!this.parseClose(o.name)){t=!0,n=this.model;break}continue}if(!this.parseClose(Dd(o.name,i))){t=!0,n=this.model;break}}}return t?n:this.model}async parseStreamDirect(e){let t=new ic({invalidCharHandling:`skip`}),n=new TextDecoder(`utf-8`,{fatal:!0}),r=!1,i,a=0,s=null,c;t.on(`error`,e=>{r||(c=e)}),t.on(`opentag`,e=>{if(r)return;if(a===1){this.parseOpen(e);return}if(a===0){let t=Ed(e.name,e.attributes);if(t===void 0){a=1,this.parseOpen(e);return}a=2,s=t}let t=Dd(e.name,s);t===e.name?this.parseOpen(e):this.parseOpen({name:t,attributes:e.attributes,isSelfClosing:e.isSelfClosing})}),t.on(`text`,e=>{r||this.parseText(e)}),t.on(`closetag`,e=>{if(r)return;let t=a===2?Dd(e.name,s):e.name;this.parseClose(t)||(r=!0,i=this.model)});for await(let i of e){if(r)continue;let e=typeof i==`string`?i:n.decode(i,{stream:!0});if(t.write(e),c)throw o(c)}if(!r){let e=n.decode();if(e&&(t.write(e),c)||(t.close(),c))throw o(c)}return r?i:this.model}async parseStream(e){return this.parseStreamDirect(e)}get xml(){return this.toXml(this.model)}toXml(e){let t=new wd;return this.render(t,e),t.xml}static toAttribute(e,t,n=!1){if(e===void 0){if(n)return t}else if(n||e!==t)return e.toString()}static toStringAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toStringValue(e,t){return e===void 0?t:e}static toBoolAttribute(e,t,n=!1){if(e===void 0){if(n)return t}else if(n||e!==t)return e?`1`:`0`}static toBoolValue(e,t){return e===void 0?t:e===`1`}static toIntAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toIntValue(e,t){return e===void 0?t:parseInt(e,10)}static toFloatAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toFloatValue(e,t){return e===void 0?t:parseFloat(e)}},Od=class extends U{constructor(){super(),this._parsedText=[]}render(e,t){e.openNode(`definedName`,{name:t.name,localSheetId:t.localSheetId}),t.kind===`opaque`&&t.rawText?e.writeText(t.rawText):e.writeText(t.ranges.join(`,`)),e.closeNode()}parseOpen(e){switch(e.name){case`definedName`:return this._parsedName=e.attributes.name,this._parsedLocalSheetId=e.attributes.localSheetId,this._parsedText=[],!0;default:return!1}}parseText(e){this._parsedText.push(e)}parseClose(){let e=this._parsedText.join(``),t={name:this._parsedName,ranges:[],rawText:e.trim()||void 0};return this._parsedLocalSheetId!==void 0&&(t.localSheetId=parseInt(this._parsedLocalSheetId,10)),this.model=t,!1}},kd=class extends U{render(e,t){e.leafNode(`externalReference`,{"r:id":t.rId})}parseOpen(e){return e.name===`externalReference`?(this.model={rId:e.attributes[`r:id`]??``},!0):!1}parseText(){}parseClose(){return!1}};let Ad=new Set([`visible`,`hidden`,`veryHidden`]);function jd(e){let t=e||`visible`;return Ad.has(t)?t:`visible`}var Md=class extends U{render(e,t){e.leafNode(`sheet`,{name:t.name,sheetId:t.id,state:t.state===`visible`?void 0:t.state,"r:id":t.rId})}parseOpen(e){return e.name===`sheet`?(this.model={name:e.attributes.name,id:parseInt(e.attributes.sheetId,10),state:jd(e.attributes.state),rId:e.attributes[`r:id`]},!0):!1}parseText(){}parseClose(){return!1}},Nd=class extends U{render(e,t){e.leafNode(`calcPr`,{calcId:171027,fullCalcOnLoad:t.fullCalcOnLoad?1:void 0,iterate:t.iterate?1:void 0,iterateCount:t.iterateCount===void 0?void 0:t.iterateCount,iterateDelta:t.iterateDelta===void 0?void 0:t.iterateDelta})}parseOpen(e){if(e.name===`calcPr`){let t=e.attributes??{};return this.model={fullCalcOnLoad:t.fullCalcOnLoad===`1`,iterate:t.iterate===`1`?!0:void 0,iterateCount:t.iterateCount===void 0?void 0:parseInt(t.iterateCount,10),iterateDelta:t.iterateDelta===void 0?void 0:parseFloat(t.iterateDelta)},!0}return!1}parseText(){}parseClose(){return!1}},Pd=class extends U{render(e,t){e.leafNode(`pivotCache`,{cacheId:t.cacheId,"r:id":t.rId})}parseOpen(e){return e.name===`pivotCache`?(this.model={cacheId:e.attributes.cacheId,rId:e.attributes[`r:id`]},!0):!1}parseText(){}parseClose(){return!1}},Fd=class extends U{render(e,t){e.leafNode(`workbookPr`,{date1904:t.date1904?1:void 0,filterPrivacy:1})}parseOpen(e){return e.name===`workbookPr`?(this.model={date1904:e.attributes.date1904===`1`},!0):!1}parseText(){}parseClose(){return!1}},Id=class extends U{get tag(){return`workbookProtection`}render(e,t){if(!t)return;let n={};t.lockStructure&&(n.lockStructure=`1`),t.lockWindows&&(n.lockWindows=`1`),t.lockRevision&&(n.lockRevision=`1`),t.workbookPassword&&(n.workbookPassword=t.workbookPassword),t.revisionsPassword&&(n.revisionsPassword=t.revisionsPassword),t.algorithmName&&(n.workbookAlgorithmName=t.algorithmName,n.workbookHashValue=t.hashValue,n.workbookSaltValue=t.saltValue,n.workbookSpinCount=t.spinCount?.toString()),Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}parseOpen(e){switch(e.name){case this.tag:{let t=e.attributes;return this.model={lockStructure:t.lockStructure===`1`||void 0,lockWindows:t.lockWindows===`1`||void 0,lockRevision:t.lockRevision===`1`||void 0,workbookPassword:t.workbookPassword||void 0,revisionsPassword:t.revisionsPassword||void 0},t.workbookAlgorithmName&&(this.model.algorithmName=t.workbookAlgorithmName,this.model.hashValue=t.workbookHashValue,this.model.saltValue=t.workbookSaltValue,this.model.spinCount=t.workbookSpinCount?parseInt(t.workbookSpinCount,10):void 0),!0}default:return!1}}parseText(){}parseClose(){return!1}},Ld=class extends U{render(e,t){let n={xWindow:t.x??0,yWindow:t.y??0,windowWidth:t.width??12e3,windowHeight:t.height??24e3,firstSheet:t.firstSheet,activeTab:t.activeTab};t.visibility&&t.visibility!==`visible`&&(n.visibility=t.visibility),e.leafNode(`workbookView`,n)}parseOpen(e){if(e.name===`workbookView`){let t=this.model={},n=function(e,n,r){t[e]=n===void 0?r:n},r=function(e,n,r){let i=n===void 0?r:parseInt(n,10);i!==void 0&&(t[e]=i)};return r(`x`,e.attributes.xWindow,0),r(`y`,e.attributes.yWindow,0),r(`width`,e.attributes.windowWidth,25e3),r(`height`,e.attributes.windowHeight,1e4),n(`visibility`,e.attributes.visibility,`visible`),r(`activeTab`,e.attributes.activeTab,void 0),r(`firstSheet`,e.attributes.firstSheet,void 0),!0}return!1}parseText(){}parseClose(){return!1}},W=class extends U{constructor(e){super(),this.tag=e.tag,this.always=!!e.always,this.count=e.count,this.empty=e.empty,this.$count=e.$count??`count`,this.$=e.$,this.childXform=e.childXform,this.maxItems=e.maxItems}prepare(e,t){let{childXform:n}=this;e&&e.forEach((e,r)=>{t.index=r,n.prepare(e,t)})}render(e,t){if(this.always||t&&t.length){e.openNode(this.tag,this.$),this.count&&e.addAttribute(this.$count,t?.length??0);let{childXform:n}=this;(t??[]).forEach((t,r)=>{n.render(e,t,r)}),e.closeNode()}else this.empty&&e.leafNode(this.tag)}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model=[],!0):this.childXform.parseOpen(e)?(this.parser=this.childXform,!0):!1}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)&&(this.model.push(this.parser.model),this.parser=void 0,this.maxItems&&this.model.length>this.maxItems))throw new zr(this.childXform.tag,this.maxItems);return!0}return!1}reconcile(e,t){if(e){let{childXform:n}=this;e.forEach(e=>{n.reconcile(e,t)})}}reset(){super.reset(),this.childXform&&this.childXform.reset()}};function Rd(e,t){e.openNode(t.tag,t.$),t.c&&t.c.forEach(t=>{Rd(e,t)}),t.t&&e.writeText(t.t),e.closeNode()}var zd=class extends U{constructor(e){super(),this._model=e}render(e){if(!this._xml){let e=new wd;Rd(e,this._model),this._xml=e.xml}e.writeRaw(this._xml)}parseOpen(){return!0}parseText(){}parseClose(e){switch(e){case this._model.tag:return!1;default:return!0}}},Bd=class e extends U{constructor(){super(),this.map={fileVersion:e.STATIC_XFORMS.fileVersion,workbookPr:new Fd,workbookProtection:new Id,bookViews:new W({tag:`bookViews`,count:!1,childXform:new Ld}),sheets:new W({tag:`sheets`,count:!1,childXform:new Md}),definedNames:new W({tag:`definedNames`,count:!1,childXform:new Od}),calcPr:new Nd,pivotCaches:new W({tag:`pivotCaches`,count:!1,childXform:new Pd}),externalReferences:new W({tag:`externalReferences`,count:!1,childXform:new kd})}}prepare(e){e.sheets=e.worksheets;let t=[],n=0;e.sheets.forEach(e=>{if(e.pageSetup&&e.pageSetup.printArea&&e.pageSetup.printArea.split(`&&`).forEach(r=>{let i=r.split(`:`),a=i[0],o=i[1]??a,s={name:`_xlnm.Print_Area`,ranges:[`'${e.name}'!$${a}:$${o}`],localSheetId:n};t.push(s)}),e.pageSetup&&(e.pageSetup.printTitlesRow||e.pageSetup.printTitlesColumn)){let r=[];if(e.pageSetup.printTitlesColumn){let t=e.pageSetup.printTitlesColumn.split(`:`),n=t[0],i=t[1]??n;r.push(`'${e.name}'!$${n}:$${i}`)}if(e.pageSetup.printTitlesRow){let t=e.pageSetup.printTitlesRow.split(`:`),n=t[0],i=t[1]??n;r.push(`'${e.name}'!$${n}:$${i}`)}let i={name:`_xlnm.Print_Titles`,ranges:r,localSheetId:n};t.push(i)}n++}),t.length&&(e.definedNames=e.definedNames.concat(t)),(e.media??[]).forEach((e,t)=>{e.name=e.type+(t+1)})}render(t,n){t.openXml(z),t.openNode(`workbook`,e.WORKBOOK_ATTRIBUTES),this.map.fileVersion.render(t),this.map.workbookPr.render(t,n.properties),this.map.workbookProtection.render(t,n.protection),this.map.bookViews.render(t,n.views),this.map.sheets.render(t,n.sheets),this.map.definedNames.render(t,n.definedNames),this.map.calcPr.render(t,n.calcProperties);let r=n.pivotTables??[],i=new Set,a=r.filter(e=>i.has(e.cacheId)?!1:(i.add(e.cacheId),!0));this.map.pivotCaches.render(t,a);let o=n.externalLinks??[];if(o.length>0){let e=o.map(e=>({rId:e.rId}));this.map.externalReferences.render(t,e)}t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`workbook`:return!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`workbook`:return this.model={sheets:this.map.sheets.model,properties:this.map.workbookPr.model||{},protection:this.map.workbookProtection.model,views:this.map.bookViews.model,calcProperties:this.map.calcPr.model||{}},this.map.definedNames.model&&(this.model.definedNames=this.map.definedNames.model),this.map.pivotCaches.model&&this.map.pivotCaches.model.length>0&&(this.model.pivotCaches=this.map.pivotCaches.model),this.map.externalReferences.model&&this.map.externalReferences.model.length>0&&(this.model.externalReferences=this.map.externalReferences.model),!1;default:return!0}}reconcile(e){let t=(e.workbookRels??[]).reduce((e,t)=>(e[t.Id]=t,e),{}),n=[],r,i=0;(e.sheets??[]).forEach(a=>{let o=t[a.rId];o&&(r=e.worksheetHash[`xl/${o.Target.replace(/^(\s|\/xl\/)+/,``)}`],r&&(r.name=a.name,r.id=a.id,r.state=a.state,n[i++]=r))});let a=[];e.definedNames&&e.definedNames.forEach(e=>{let t=e.ranges?.length>0?e.ranges:e.rawText?[e.rawText]:[];if(e.name===`_xlnm.Print_Area`){if(r=n[e.localSheetId],r&&t.length>0){r.pageSetup||={};let e=M.decodeEx(t[0]);r.pageSetup.printArea=r.pageSetup.printArea?`${r.pageSetup.printArea}&&${e.dimensions}`:e.dimensions}}else if(e.name===`_xlnm.Print_Titles`){if(r=n[e.localSheetId],r&&t.length>0){r.pageSetup||={};let e=t.join(`,`),n=/\$/g,i=e.match(/\$\d+:\$\d+/);if(i&&i.length){let e=i[0];r.pageSetup.printTitlesRow=e.replace(n,``)}let a=e.match(/\$[A-Z]+:\$[A-Z]+/);if(a&&a.length){let e=a[0];r.pageSetup.printTitlesColumn=e.replace(n,``)}}}else a.push(e)}),e.definedNames=a,e.media.forEach((e,t)=>{e.index=t})}static{this.WORKBOOK_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`x15`,"xmlns:x15":`http://schemas.microsoft.com/office/spreadsheetml/2010/11/main`}}static{this.STATIC_XFORMS={fileVersion:new zd({tag:`fileVersion`,$:{appName:`xl`,lastEdited:5,lowestEdited:5,rupBuild:9303}})}}},Vd=class extends U{constructor(...e){super(...e),this._metadataTypeNames=[],this._cellMetadataTypeRefs=[],this._inCellMetadata=!1,this._currentRcType=void 0}get tag(){return`metadata`}render(e,t){!t||t.dynamicArrayCount<=0||(e.openXml(z),e.openNode(`metadata`,{xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:xda":`http://schemas.microsoft.com/office/spreadsheetml/2017/dynamicarray`}),e.openNode(`metadataTypes`,{count:`1`}),e.leafNode(`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`,adjust:`1`,cellMeta:`1`}),e.closeNode(),e.openNode(`futureMetadata`,{name:`XLDAPR`,count:`1`}),e.openNode(`bk`),e.openNode(`extLst`),e.openNode(`ext`,{uri:`{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}`}),e.leafNode(`xda:dynamicArrayProperties`,{fDynamic:`1`,fCollapsed:`0`}),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode(),e.openNode(`cellMetadata`,{count:`1`}),e.openNode(`bk`),e.leafNode(`rc`,{t:`1`,v:`0`}),e.closeNode(),e.closeNode(),e.closeNode())}reset(){this._metadataTypeNames=[],this._cellMetadataTypeRefs=[],this._inCellMetadata=!1,this._currentRcType=void 0}parseOpen(e){switch(e.name){case`metadata`:return this.reset(),!0;case`metadataType`:return this._metadataTypeNames.push(e.attributes.name||``),!0;case`cellMetadata`:return this._inCellMetadata=!0,!0;case`bk`:return this._inCellMetadata&&(this._currentRcType=void 0),!0;case`rc`:return this._inCellMetadata&&e.attributes.t!==void 0&&(this._currentRcType=parseInt(e.attributes.t,10)),!0;case`metadataTypes`:case`futureMetadata`:case`extLst`:case`ext`:case`xda:dynamicArrayProperties`:return!0;default:return!1}}parseText(){}parseClose(e){switch(e){case`bk`:return this._inCellMetadata&&(this._cellMetadataTypeRefs.push(this._currentRcType??0),this._currentRcType=void 0),!0;case`cellMetadata`:return this._inCellMetadata=!1,!0;case`metadata`:{let e=new Set;for(let t=0;t<this._cellMetadataTypeRefs.length;t++){let n=this._cellMetadataTypeRefs[t];this._metadataTypeNames[n-1]===`XLDAPR`&&e.add(t+1)}return this.model={hasDynamicArrays:e.size>0,dynamicArrayCmIndices:e},!1}default:return!0}}},Hd=class extends U{render(e,t){e.leafNode(`Relationship`,t)}parseOpen(e){switch(e.name){case`Relationship`:return this.model=e.attributes,!0;default:return!1}}parseText(){}parseClose(){return!1}},Ud=class e extends U{constructor(){super(),this.map={Relationship:new Hd}}render(t,n){let r=n||this._values;t.openXml(z),t.openNode(`Relationships`,e.RELATIONSHIPS_ATTRIBUTES),r.forEach(e=>{this.map.Relationship.render(t,e)}),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`Relationships`:return this.model=[],!0;default:if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw new jr(`Relationships`,`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.push(this.parser.model),this.parser=void 0),!0;switch(e){case`Relationships`:return!1;default:throw new jr(`Relationships`,`Unexpected xml node in parseClose: ${e}`)}}static{this.RELATIONSHIPS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/package/2006/relationships`}}},Wd=class extends U{constructor(e){super(),this.name=e??`color`}get tag(){return this.name}render(e,t){return t?(e.openNode(this.name),t.argb?e.addAttribute(`rgb`,t.argb):t.theme===void 0?t.indexed===void 0?e.addAttribute(`auto`,`1`):e.addAttribute(`indexed`,t.indexed):(e.addAttribute(`theme`,t.theme),t.tint!==void 0&&e.addAttribute(`tint`,t.tint)),e.closeNode(),!0):!1}parseOpen(e){return e.name===this.name?(e.attributes.rgb?this.model={argb:e.attributes.rgb}:e.attributes.theme?(this.model={theme:parseInt(e.attributes.theme,10)},e.attributes.tint&&(this.model.tint=parseFloat(e.attributes.tint))):e.attributes.indexed?this.model={indexed:parseInt(e.attributes.indexed,10)}:this.model=void 0,!0):!1}parseText(){}parseClose(){return!1}},Gd=class e extends U{constructor(e){super(),this.name=e,this.map={color:new Wd}}get tag(){return this.name}render(e,t,n){let r=t&&t.color||n||this.defaultColor;e.openNode(this.name),t&&t.style&&(e.addAttribute(`style`,t.style),r&&this.map.color.render(e,r)),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.name:{let{style:t}=e.attributes;return t?this.model={style:t}:this.model=void 0,!0}case`color`:return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(e===this.name&&this.map.color.model&&(this.model||={},this.model.color=this.map.color.model),!1)}validStyle(t){return e.validStyleValues[t]}static{this.validStyleValues=[`thin`,`dashed`,`dotted`,`dashDot`,`hair`,`dashDotDot`,`slantDashDot`,`mediumDashed`,`mediumDashDotDot`,`mediumDashDot`,`medium`,`double`,`thick`].reduce((e,t)=>(e[t]=!0,e),{})}},Kd=class extends U{constructor(){super(),this.map={top:new Gd(`top`),left:new Gd(`left`),bottom:new Gd(`bottom`),right:new Gd(`right`),diagonal:new Gd(`diagonal`)}}render(e,t){let{color:n}=t;e.openNode(`border`),t.diagonal&&t.diagonal.style&&(t.diagonal.up&&e.addAttribute(`diagonalUp`,`1`),t.diagonal.down&&e.addAttribute(`diagonalDown`,`1`));let r=(r,i)=>{let a=r;a&&!a.color&&t.color&&(a={...a,color:t.color}),i.render(e,a,n)};r(t.left,this.map.left),r(t.right,this.map.right),r(t.top,this.map.top),r(t.bottom,this.map.bottom),r(t.diagonal,this.map.diagonal),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`border`:return this.reset(),this.diagonalUp=Gc(e.attributes.diagonalUp),this.diagonalDown=Gc(e.attributes.diagonalDown),!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if(e===`border`){let e={},t=!1,n=(n,r,i)=>{r&&(i&&Object.assign(r,i),e[n]=r,t=!0)};n(`left`,this.map.left.model),n(`right`,this.map.right.model),n(`top`,this.map.top.model),n(`bottom`,this.map.bottom.model),n(`diagonal`,this.map.diagonal.model,{up:this.diagonalUp,down:this.diagonalDown}),this.model=t?e:void 0}return!1}};let qd={ReadingOrder:{LeftToRight:1,RightToLeft:2}},Jd={horizontalValues:[`left`,`center`,`right`,`fill`,`centerContinuous`,`distributed`,`justify`].reduce((e,t)=>(e[t]=!0,e),{}),horizontal(e){return this.horizontalValues[e]?e:void 0},verticalValues:[`top`,`middle`,`bottom`,`distributed`,`justify`].reduce((e,t)=>(e[t]=!0,e),{}),vertical(e){return e===`middle`?`center`:this.verticalValues[e]?e:void 0},wrapText(e){return e?!0:void 0},shrinkToFit(e){return e?!0:void 0},textRotation(e){switch(e){case`vertical`:return e;default:{let t=zc(e);return t!==void 0&&t>=-90&&t<=90?t:void 0}}},indent(e){let t=zc(e);return Math.max(0,t)},readingOrder(e){switch(e){case`ltr`:return qd.ReadingOrder.LeftToRight;case`rtl`:return qd.ReadingOrder.RightToLeft;default:return}}},Yd={toXml(e){let t=Jd.textRotation(e);if(t){if(t===`vertical`)return 255;let e=Math.round(t);if(e>=0&&e<=90)return e;if(e<0&&e>=-90)return 90-e}},toModel(e){let t=zc(e);if(t!==void 0){if(t===255)return`vertical`;if(t>=0&&t<=90)return t;if(t>90&&t<=180)return 90-t}}};var Xd=class extends U{get tag(){return`alignment`}render(e,t){let n={};function r(e,t){t&&(n[e]=t)}r(`horizontal`,Jd.horizontal(t.horizontal)),r(`vertical`,Jd.vertical(t.vertical)),r(`wrapText`,Jd.wrapText(t.wrapText)?`1`:!1),r(`shrinkToFit`,Jd.shrinkToFit(t.shrinkToFit)?`1`:!1),r(`indent`,Jd.indent(t.indent)),r(`textRotation`,Yd.toXml(t.textRotation)),r(`readingOrder`,Jd.readingOrder(t.readingOrder)),Object.keys(n).length>0&&e.leafNode(`alignment`,n)}parseOpen(e){let t={},n=!1;function r(e,r,i){e&&(t[r]=i,n=!0)}r(e.attributes.horizontal,`horizontal`,e.attributes.horizontal),r(e.attributes.vertical,`vertical`,e.attributes.vertical===`center`?`middle`:e.attributes.vertical),r(e.attributes.wrapText,`wrapText`,Gc(e.attributes.wrapText)),r(e.attributes.shrinkToFit,`shrinkToFit`,Gc(e.attributes.shrinkToFit)),r(e.attributes.indent,`indent`,parseInt(e.attributes.indent,10)),r(e.attributes.textRotation,`textRotation`,Yd.toModel(e.attributes.textRotation)),r(e.attributes.readingOrder,`readingOrder`,e.attributes.readingOrder===`2`?`rtl`:`ltr`),this.model=n?t:null}parseText(){}parseClose(){return!1}},Zd=class extends U{constructor(){super(),this.map={color:new Wd}}get tag(){return`stop`}render(e,t){e.openNode(`stop`),e.addAttribute(`position`,t.position),this.map.color.render(e,t.color),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`stop`:return this.model={position:parseFloat(e.attributes.position)},!0;case`color`:return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.color=this.parser.model,this.parser=void 0),!0):!1}},Qd=class extends U{constructor(){super(),this.map={fgColor:new Wd(`fgColor`),bgColor:new Wd(`bgColor`)}}get name(){return`pattern`}get tag(){return`patternFill`}render(e,t){e.openNode(`patternFill`),e.addAttribute(`patternType`,t.pattern),t.fgColor&&this.map.fgColor.render(e,t.fgColor),t.bgColor&&this.map.bgColor.render(e,t.bgColor),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`patternFill`:return this.model={type:`pattern`,pattern:e.attributes.patternType},!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser.model&&(this.model[e]=this.parser.model),this.parser=void 0),!0):!1}},$d=class extends U{constructor(){super(),this.map={stop:new Zd}}get name(){return`gradient`}get tag(){return`gradientFill`}render(e,t){switch(e.openNode(`gradientFill`),t.gradient){case`angle`:e.addAttribute(`degree`,t.degree);break;case`path`:e.addAttribute(`type`,`path`),t.center.left&&(e.addAttribute(`left`,t.center.left),t.center.right===void 0&&e.addAttribute(`right`,t.center.left)),t.center.right&&e.addAttribute(`right`,t.center.right),t.center.top&&(e.addAttribute(`top`,t.center.top),t.center.bottom===void 0&&e.addAttribute(`bottom`,t.center.top)),t.center.bottom&&e.addAttribute(`bottom`,t.center.bottom);break;default:break}let n=this.map.stop;t.stops.forEach(t=>{n.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`gradientFill`:{let t=this.model={stops:[]};return e.attributes.degree?(t.gradient=`angle`,t.degree=parseInt(e.attributes.degree,10)):e.attributes.type===`path`&&(t.gradient=`path`,t.center={left:e.attributes.left?parseFloat(e.attributes.left):0,top:e.attributes.top?parseFloat(e.attributes.top):0},e.attributes.right!==e.attributes.left&&(t.center.right=e.attributes.right?parseFloat(e.attributes.right):0),e.attributes.bottom!==e.attributes.top&&(t.center.bottom=e.attributes.bottom?parseFloat(e.attributes.bottom):0)),!0}case`stop`:return this.parser=this.map.stop,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.stops.push(this.parser.model),this.parser=void 0),!0):!1}},ef=class e extends U{constructor(){super(),this.map={patternFill:new Qd,gradientFill:new $d}}get tag(){return`fill`}render(e,t){t.type!==`pattern`&&t.type!==`gradient`||(e.openNode(`fill`),t.type===`pattern`?this.map.patternFill.render(e,t):this.map.gradientFill.render(e,t),e.closeNode())}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`fill`:return this.model={},!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model=this.parser.model,this.model.type=this.parser.name,this.parser=void 0),!0):!1}validStyle(t){return e.validPatternValues[t]}static{this.validPatternValues=[`none`,`solid`,`darkVertical`,`darkGray`,`mediumGray`,`lightGray`,`gray125`,`gray0625`,`darkHorizontal`,`darkVertical`,`darkDown`,`darkUp`,`darkGrid`,`darkTrellis`,`lightHorizontal`,`lightVertical`,`lightDown`,`lightUp`,`lightGrid`,`lightTrellis`,`lightGrid`].reduce((e,t)=>(e[t]=!0,e),{})}static{this.StopXform=Zd}static{this.PatternFillXform=Qd}static{this.GradientFillXform=$d}},tf=class extends U{constructor(e){super(),this.tag=e.tag,this.attr=e.attr}render(e,t){t&&(e.openNode(this.tag),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.model=!0)}parseText(){}parseClose(){return!1}},nf=class extends U{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.zero=e.zero,this.text=[]}render(e,t){(t||this.zero)&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){return e.name===this.tag?(this.attr?this.model=parseInt(e.attributes[this.attr],10):this.text=[],!0):!1}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=parseInt(this.text.join(``)||`0`,10)),!1}},G=class extends U{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.text=[]}render(e,t){t!==void 0&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=e.attributes[this.attr]:this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this.text.join(``)),!1}},rf=class e extends U{static{this.Attributes={single:{},double:{val:`double`},singleAccounting:{val:`singleAccounting`},doubleAccounting:{val:`doubleAccounting`}}}constructor(e){super(),this.model=e}get tag(){return`u`}render(t,n){if(n||=this.model,n===!0)t.leafNode(`u`);else{let r=e.Attributes[n];r&&t.leafNode(`u`,r)}}parseOpen(e){e.name===`u`&&(this.model=e.attributes.val||!0)}parseText(){}parseClose(){return!1}},af=class e extends U{constructor(t){super(),this.options=t||e.OPTIONS;let n=[{tag:`b`,prop:`bold`,xform:new tf({tag:`b`,attr:`val`})},{tag:`i`,prop:`italic`,xform:new tf({tag:`i`,attr:`val`})},{tag:`u`,prop:`underline`,xform:new rf},{tag:`strike`,prop:`strike`,xform:new tf({tag:`strike`,attr:`val`})},{tag:`condense`,prop:`condense`,xform:new tf({tag:`condense`,attr:`val`})},{tag:`extend`,prop:`extend`,xform:new tf({tag:`extend`,attr:`val`})},{tag:`outline`,prop:`outline`,xform:new tf({tag:`outline`,attr:`val`})},{tag:`shadow`,prop:`shadow`,xform:new tf({tag:`shadow`,attr:`val`})},{tag:`sz`,prop:`size`,xform:new nf({tag:`sz`,attr:`val`})},{tag:`color`,prop:`color`,xform:new Wd},{tag:this.options.fontNameTag,prop:`name`,xform:new G({tag:this.options.fontNameTag,attr:`val`})},{tag:`family`,prop:`family`,xform:new nf({tag:`family`,attr:`val`})},{tag:`scheme`,prop:`scheme`,xform:new G({tag:`scheme`,attr:`val`})},{tag:`charset`,prop:`charset`,xform:new nf({tag:`charset`,attr:`val`})},{tag:`vertAlign`,prop:`vertAlign`,xform:new G({tag:`vertAlign`,attr:`val`})}];this.map=Object.fromEntries(n.map(e=>[e.tag,{prop:e.prop,xform:e.xform}])),this.renderOrder=n.map(e=>e.tag)}get tag(){return this.options.tagName}render(e,t){let{map:n,renderOrder:r}=this;e.openNode(this.options.tagName),r.forEach(r=>{n[r].xform.render(e,t[n[r].prop])}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(this.map[e.name])return this.parser=this.map[e.name].xform,this.parser.parseOpen(e);switch(e.name){case this.options.tagName:return this.model={},!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser&&!this.parser.parseClose(e)){let t=this.map[e];return this.parser.model&&(this.model[t.prop]=this.parser.model),this.parser=void 0,!0}switch(e){case this.options.tagName:return!1;default:return!0}}static{this.OPTIONS={tagName:`font`,fontNameTag:`name`}}};let of={0:{f:`General`},1:{f:`0`},2:{f:`0.00`},3:{f:`#,##0`},4:{f:`#,##0.00`},9:{f:`0%`},10:{f:`0.00%`},11:{f:`0.00E+00`},12:{f:`# ?/?`},13:{f:`# ??/??`},14:{f:`mm-dd-yy`},15:{f:`d-mmm-yy`},16:{f:`d-mmm`},17:{f:`mmm-yy`},18:{f:`h:mm AM/PM`},19:{f:`h:mm:ss AM/PM`},20:{f:`h:mm`},21:{f:`h:mm:ss`},22:{f:`m/d/yy h:mm`},27:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},28:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},29:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},30:{"zh-tw":`m/d/yy `,"zh-cn":`m-d-yy`,"ja-jp":`m/d/yy`,"ko-kr":`mm-dd-yy`},31:{"zh-tw":`yyyy"年"m"月"d"日"`,"zh-cn":`yyyy"年"m"月"d"日"`,"ja-jp":`yyyy"年"m"月"d"日"`,"ko-kr":`yyyy"년" mm"월" dd"일"`},32:{"zh-tw":`hh"時"mm"分"`,"zh-cn":`h"时"mm"分"`,"ja-jp":`h"時"mm"分"`,"ko-kr":`h"시" mm"분"`},33:{"zh-tw":`hh"時"mm"分"ss"秒"`,"zh-cn":`h"时"mm"分"ss"秒"`,"ja-jp":`h"時"mm"分"ss"秒"`,"ko-kr":`h"시" mm"분" ss"초"`},34:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`上午/下午 h"时"mm"分"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},35:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`上午/下午 h"时"mm"分"ss"秒"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},36:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},37:{f:`#,##0 ;(#,##0)`},38:{f:`#,##0 ;[Red](#,##0)`},39:{f:`#,##0.00;(#,##0.00)`},40:{f:`#,##0.00;[Red](#,##0.00)`},45:{f:`mm:ss`},46:{f:`[h]:mm:ss`},47:{f:`mmss.0`},48:{f:`##0.0E+0`},49:{f:`@`},50:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},51:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},52:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},53:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`m"月"d"日"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},54:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},55:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`上午/下午 h"时"mm"分"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},56:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`上午/下午 h"时"mm"分"ss"秒"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},57:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},58:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},59:{"th-th":`t0`},60:{"th-th":`t0.00`},61:{"th-th":`t#,##0`},62:{"th-th":`t#,##0.00`},67:{"th-th":`t0%`},68:{"th-th":`t0.00%`},69:{"th-th":`t# ?/?`},70:{"th-th":`t# ??/??`},81:{"th-th":`d/m/bb`}};function sf(){let e={};return Object.entries(of).forEach(([t,n])=>{n.f&&(e[n.f]=parseInt(t,10))}),e}let cf=null;function lf(){return cf||=sf(),cf}var uf=class extends U{constructor(e,t){super(),this.id=e,this.formatCode=t}get tag(){return`numFmt`}render(e,t){e.leafNode(`numFmt`,{numFmtId:t.id,formatCode:t.formatCode})}parseOpen(e){switch(e.name){case`numFmt`:return this.model={id:parseInt(e.attributes.numFmtId,10),formatCode:e.attributes.formatCode.replace(/[\\](.)/g,`$1`)},!0;default:return!1}}parseText(){}parseClose(){return!1}static getDefaultFmtId(e){return lf()[e]}static getDefaultFmtCode(e){return of[e]&&of[e].f}};let df={boolean(e,t){return e===void 0?t:e}};var ff=class extends U{get tag(){return`protection`}render(e,t){let n={},r=df.boolean(t.locked,!0)?void 0:`0`,i=df.boolean(t.hidden,!1)?`1`:void 0;r!==void 0&&(n.locked=r),i!==void 0&&(n.hidden=i),Object.keys(n).length>0&&e.leafNode(`protection`,n)}parseOpen(e){let t={locked:e.attributes.locked!==`0`,hidden:e.attributes.hidden===`1`},n=!t.locked||t.hidden;this.model=n?t:null}parseText(){}parseClose(){return!1}},pf=class extends U{constructor(){super(),this.map={alignment:new Xd,border:new Kd,fill:new ef,font:new af,numFmt:new uf,protection:new ff}}get tag(){return`dxf`}render(e,t){if(e.openNode(this.tag),t.font&&this.map.font.render(e,t.font),t.numFmt&&t.numFmtId){let n={id:t.numFmtId,formatCode:t.numFmt};this.map.numFmt.render(e,n)}t.fill&&this.map.fill.render(e,t.fill),t.alignment&&this.map.alignment.render(e,t.alignment),t.border&&this.map.border.render(e,t.border),t.protection&&this.map.protection.render(e,t.protection),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:return this.reset(),!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e===this.tag?(this.model={alignment:this.map.alignment.model,border:this.map.border.model,fill:this.map.fill.model,font:this.map.font.model,numFmt:this.map.numFmt.model,protection:this.map.protection.model},!1):!0}},mf=class extends U{constructor(e){super(),this.xfId=!!(e&&e.xfId),this.map={alignment:new Xd,protection:new ff}}get tag(){return`xf`}render(e,t){e.openNode(`xf`,{numFmtId:t.numFmtId??0,fontId:t.fontId??0,fillId:t.fillId??0,borderId:t.borderId??0}),this.xfId&&e.addAttribute(`xfId`,t.xfId??0),(t.applyNumberFormat||t.numFmtId)&&e.addAttribute(`applyNumberFormat`,`1`),(t.applyFont||t.fontId)&&e.addAttribute(`applyFont`,`1`),(t.applyFill||t.fillId)&&e.addAttribute(`applyFill`,`1`),(t.applyBorder||t.borderId)&&e.addAttribute(`applyBorder`,`1`),(t.applyAlignment||t.alignment)&&e.addAttribute(`applyAlignment`,`1`),(t.applyProtection||t.protection)&&e.addAttribute(`applyProtection`,`1`),t.pivotButton&&e.addAttribute(`pivotButton`,`1`),t.alignment&&this.map.alignment.render(e,t.alignment),t.protection&&this.map.protection.render(e,t.protection),t.checkbox&&t.xfComplementIndex!==void 0&&(e.openNode(`extLst`),e.openNode(`ext`,{"xmlns:xfpb":`http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag`,uri:`{C7286773-470A-42A8-94C5-96B5CB345126}`}),e.leafNode(`xfpb:xfComplement`,{i:t.xfComplementIndex}),e.closeNode(),e.closeNode()),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`xf`:this.model={numFmtId:parseInt(e.attributes.numFmtId,10),fontId:parseInt(e.attributes.fontId,10),fillId:parseInt(e.attributes.fillId,10),borderId:parseInt(e.attributes.borderId,10)},this.xfId&&(this.model.xfId=parseInt(e.attributes.xfId,10)),e.attributes.pivotButton===`1`&&(this.model.pivotButton=!0);for(let t of[`applyNumberFormat`,`applyFont`,`applyFill`,`applyBorder`,`applyAlignment`,`applyProtection`])e.attributes[t]===`1`&&(this.model[t]=!0);return!0;case`alignment`:return this.parser=this.map.alignment,this.parser.parseOpen(e),!0;case`protection`:return this.parser=this.map.protection,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.map.protection===this.parser?this.model.protection=this.parser.model:this.model.alignment=this.parser.model,this.parser=void 0),!0):e!==`xf`}},hf=class e extends U{constructor(t){super(),this.map={numFmts:new W({tag:`numFmts`,count:!0,childXform:new uf}),fonts:new W({tag:`fonts`,count:!0,childXform:new af,$:{"x14ac:knownFonts":1}}),fills:new W({tag:`fills`,count:!0,childXform:new ef}),borders:new W({tag:`borders`,count:!0,childXform:new Kd}),cellStyleXfs:new W({tag:`cellStyleXfs`,count:!0,childXform:new mf}),cellXfs:new W({tag:`cellXfs`,count:!0,childXform:new mf({xfId:!0})}),dxfs:new W({tag:`dxfs`,always:!0,count:!0,childXform:new pf}),numFmt:new uf,font:new af,fill:new ef,border:new Kd,style:new mf({xfId:!0}),cellStyles:e.STATIC_XFORMS.cellStyles,tableStyles:e.STATIC_XFORMS.tableStyles,extLst:e.STATIC_XFORMS.extLst},t&&this.init()}initIndex(){this.index={style:{},numFmt:{},numFmtNextId:164,font:{},border:{},fill:{}}}init(){this.model={styles:[],numFmts:[],fonts:[],borders:[],fills:[],dxfs:[]},this.initIndex(),this._addBorder({}),this._addStyle({numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}),this._addFill({type:`pattern`,pattern:`none`}),this._addFill({type:`pattern`,pattern:`gray125`}),this.weakMap=new WeakMap,this._hasCheckboxes=!1}setDefaultFont(e){this.defaultFont=e}render(t,n){let r=n||this.model;t.openXml(z),t.openNode(`styleSheet`,e.STYLESHEET_ATTRIBUTES),this.index?(r.numFmts&&r.numFmts.length&&(t.openNode(`numFmts`,{count:r.numFmts.length}),r.numFmts.forEach(e=>{t.writeRaw(e)}),t.closeNode()),r.fonts.length||this._addFont(this.defaultFont||{size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`}),t.openNode(`fonts`,{count:r.fonts.length,"x14ac:knownFonts":1}),r.fonts.forEach(e=>{t.writeRaw(e)}),t.closeNode(),t.openNode(`fills`,{count:r.fills.length}),r.fills.forEach(e=>{t.writeRaw(e)}),t.closeNode(),t.openNode(`borders`,{count:r.borders.length}),r.borders.forEach(e=>{t.writeRaw(e)}),t.closeNode(),this.map.cellStyleXfs.render(t,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),t.openNode(`cellXfs`,{count:r.styles.length}),r.styles.forEach(e=>{t.writeRaw(e)}),t.closeNode()):(this.map.numFmts.render(t,r.numFmts),this.map.fonts.render(t,r.fonts),this.map.fills.render(t,r.fills),this.map.borders.render(t,r.borders),this.map.cellStyleXfs.render(t,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),this.map.cellXfs.render(t,r.styles)),e.STATIC_XFORMS.cellStyles.render(t),this.map.dxfs.render(t,r.dxfs),e.STATIC_XFORMS.tableStyles.render(t),e.STATIC_XFORMS.extLst.render(t),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`styleSheet`:return this.initIndex(),!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`styleSheet`:{this.model={};let e=(e,t)=>{t.model&&t.model.length&&(this.model[e]=t.model)};if(e(`numFmts`,this.map.numFmts),e(`fonts`,this.map.fonts),e(`fills`,this.map.fills),e(`borders`,this.map.borders),e(`styles`,this.map.cellXfs),e(`dxfs`,this.map.dxfs),this.map.fonts.model&&this.map.fonts.model.length>0&&(this.defaultFont=this.map.fonts.model[0]),this.index={model:[],numFmt:{}},this.model.numFmts){let e=this.index.numFmt;this.model.numFmts.forEach(t=>{e[t.id]=t.formatCode})}return!1}default:return!0}}addStyleModel(e,t){if(!e)return 0;this.model.fonts.length||this._addFont(this.defaultFont||{size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`});let n=t||2;if(n!==12&&this.weakMap&&this.weakMap.has(e))return this.weakMap.get(e);let r={};if(e.numFmt)r.numFmtId=this._addNumFmtStr(e.numFmt);else switch(n){case 2:r.numFmtId=this._addNumFmtStr(`General`);break;case 4:r.numFmtId=this._addNumFmtStr(`mm-dd-yy`);break;default:break}e.font&&(r.fontId=this._addFont(e.font)),e.border&&(r.borderId=this._addBorder(e.border)),e.fill&&(r.fillId=this._addFill(e.fill)),e.alignment&&(r.alignment=e.alignment),e.protection&&(r.protection=e.protection);for(let t of[`pivotButton`,`applyNumberFormat`,`applyFont`,`applyFill`,`applyBorder`,`applyAlignment`,`applyProtection`])e[t]&&(r[t]=!0);n===12&&(this._hasCheckboxes=!0,r.alignment=r.alignment||{},r.checkbox=!0,r.xfComplementIndex=0);let i=this._addStyle(r);return n!==12&&this.weakMap&&this.weakMap.set(e,i),i}getStyleModel(e){let t=this.model.styles[e];if(!t)return null;let n=this.index.model[e];if(n)return n;if(n=this.index.model[e]={},t.numFmtId){let e=this.index.numFmt[t.numFmtId]||uf.getDefaultFmtCode(t.numFmtId);e&&(n.numFmt=e)}function r(e,t,r){if(r||r===0){let i=t[r];i&&(n[e]=i)}}r(`font`,this.model.fonts,t.fontId),r(`border`,this.model.borders,t.borderId),r(`fill`,this.model.fills,t.fillId),t.alignment&&(n.alignment=t.alignment),t.protection&&(n.protection=t.protection);for(let e of[`pivotButton`,`applyNumberFormat`,`applyFont`,`applyFill`,`applyBorder`,`applyAlignment`,`applyProtection`])t[e]&&(n[e]=!0);return n}addDxfStyle(e){return e.numFmt&&(e.numFmtId=this._addNumFmtStr(e.numFmt)),this.model.dxfs.push(e),this.model.dxfs.length-1}getDxfStyle(e){return this.model.dxfs[e]}get hasCheckboxes(){return!!this._hasCheckboxes}_addStyle(e){let t=this.map.style.toXml(e),n=this.index.style[t];return n===void 0&&(n=this.index.style[t]=this.model.styles.length,this.model.styles.push(t)),n}_addNumFmtStr(e){let t=uf.getDefaultFmtId(e);if(t!==void 0||(t=this.index.numFmt[e],t!==void 0))return t;t=this.index.numFmt[e]=164+this.model.numFmts.length;let n=this.map.numFmt.toXml({id:t,formatCode:e});return this.model.numFmts.push(n),t}_addFont(e){let t=this.map.font.toXml(e),n=this.index.font[t];return n===void 0&&(n=this.index.font[t]=this.model.fonts.length,this.model.fonts.push(t)),n}_addBorder(e){let t=this.map.border.toXml(e),n=this.index.border[t];return n===void 0&&(n=this.index.border[t]=this.model.borders.length,this.model.borders.push(t)),n}_addFill(e){let t=this.map.fill.toXml(e),n=this.index.fill[t];return n===void 0&&(n=this.index.fill[t]=this.model.fills.length,this.model.fills.push(t)),n}static{this.STYLESHEET_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`x14ac x16r2`,"xmlns:x14ac":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac`,"xmlns:x16r2":`http://schemas.microsoft.com/office/spreadsheetml/2015/02/main`}}static{this.STATIC_XFORMS={cellStyles:new zd({tag:`cellStyles`,$:{count:1},c:[{tag:`cellStyle`,$:{name:`Normal`,xfId:0,builtinId:0}}]}),dxfs:new zd({tag:`dxfs`,$:{count:0}}),tableStyles:new zd({tag:`tableStyles`,$:{count:0,defaultTableStyle:`TableStyleMedium2`,defaultPivotStyle:`PivotStyleLight16`}}),extLst:new zd({tag:`extLst`,c:[{tag:`ext`,$:{uri:`{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`},c:[{tag:`x14:slicerStyles`,$:{defaultSlicerStyle:`SlicerStyleLight1`}}]},{tag:`ext`,$:{uri:`{9260A510-F301-46a8-8635-F512D64BE5F5}`,"xmlns:x15":`http://schemas.microsoft.com/office/spreadsheetml/2010/11/main`},c:[{tag:`x15:timelineStyles`,$:{defaultTimelineStyle:`TimeSlicerStyleLight1`}}]}]})}}};hf.Mock=class extends hf{constructor(){super(),this.model={styles:[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}],numFmts:[],fonts:[{size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`}],borders:[{}],fills:[{type:`pattern`,pattern:`none`},{type:`pattern`,pattern:`gray125`}]}}parseStream(e){return e.autodrain(),Promise.resolve()}addStyleModel(e,t){switch(t){case 12:throw new Mr(`Checkbox cells`,`require styles to be enabled (useStyles: true)`);case 4:return this.dateStyleId;default:return 0}}get hasCheckboxes(){return!1}get dateStyleId(){if(!this._dateStyleId){let e={numFmtId:uf.getDefaultFmtId(`mm-dd-yy`)};this._dateStyleId=this.model.styles.length,this.model.styles.push(e)}return this._dateStyleId}getStyleModel(){return{}}};var gf=class extends D{getHyperlinkReader(e){return this._hyperlinkReadersBySheetNo?.[String(e)]}getHyperlink(e,t){return this.getHyperlinkReader(e)?.hyperlinks?.[t]}getHyperlinkTarget(e,t){return this.getHyperlink(e,t)?.target}constructor(e,t,n,r){super(),this.hasDynamicArrayMetadata=!1,this._totalBufferedBytes=0,this.input=e,this.WorksheetReaderClass=n,this.HyperlinkReaderClass=r,this._maxBufferedBytes=t.maxBufferedWorksheetBytes??256*1024*1024,this.options={worksheets:`emit`,sharedStrings:`cache`,hyperlinks:`ignore`,styles:`ignore`,entries:`ignore`,...t},this.styles=new hf,this.styles.init()}_getStream(e){if(e instanceof k)return e;if(e&&typeof e==`object`&&typeof e.getReader==`function`){let t=k.fromWeb;if(typeof t==`function`)return t(e);try{return new k({stream:e})}catch{throw new Nr(`<ReadableStream>`,`read`,`Could not recognise input`)}}let t=e;if(t instanceof ArrayBuffer&&(t=new Uint8Array(t)),t instanceof Uint8Array)return k.from([t]);throw new Nr(String(e),`read`,`Could not recognise input`)}_cleanupWaitingWorksheets(e){for(let t of e)t&&typeof t.cleanup==`function`&&t.cleanup()}_createWorksheetReader(e){return new this.WorksheetReaderClass({workbook:this,id:e.id,iterator:e.iterator,options:e.options})}_createHyperlinkReader(e){return new this.HyperlinkReaderClass({workbook:this,id:e.id,iterator:e.iterator,options:e.options})}async read(e,t){try{for await(let{eventType:n,value:r}of this.parse(e,t))switch(n){case`shared-strings`:this.emit(n,r);break;case`worksheet`:this.emit(n,r),await r.read();break;case`hyperlinks`:this.emit(n,r);break}this.emit(`end`),this.emit(`finished`)}catch(e){this.emit(`error`,e)}}async*[Symbol.asyncIterator](){for await(let{eventType:e,value:t}of this.parse())e===`worksheet`&&(yield t)}async*parse(e,t){t&&(this.options=t);let n=this.stream=this._getStream(e||this.input),r=[];try{for await(let e of this._parseEntries(n))if(e.eventType===`waiting-worksheet`){let t=await this._storeWaitingWorksheet(e.sheetNo,e.entry);r.push(t)}else yield e;yield*this._processWaitingWorksheets(r)}catch(e){throw this._cleanupWaitingWorksheets(r),e}}_emitEntry(e){this.options.entries===`emit`&&this.emit(`entry`,e)}async _parseRels(e){let t=new Ud;this.workbookRels=await t.parseStream(eu(e)),this._workbookRelIdByTarget=Object.create(null);for(let e of this.workbookRels??[])e?.Target&&e?.Id&&(this._workbookRelIdByTarget[e.Target]=e.Id)}async _parseWorkbook(e){this._emitEntry({type:`workbook`});let t=new Bd;this.model=await t.parseStream(eu(e)),this.properties=t.map?.workbookPr,this._sheetByRelId=Object.create(null);for(let e of this.model?.sheets??[])this._sheetByRelId[e.rId]=e}async*_parseSharedStrings(e){switch(this._emitEntry({type:`shared-strings`}),this.options.sharedStrings){case`cache`:this.sharedStrings=[];break;case`emit`:break;default:return}let t=null,n=[],r=0,i=null,a=!1;if(this.options.sharedStrings===`cache`){let r=this.sharedStrings,o=new ic({position:!1,invalidCharHandling:`skip`});o.on(`opentag`,e=>{switch(e.name){case`b`:i||={},i.bold=!0;break;case`charset`:i||={},i.charset=parseInt(e.attributes.charset,10);break;case`color`:i||={},i.color={},e.attributes.rgb&&(i.color.argb=e.attributes.rgb),e.attributes.val&&(i.color.argb=e.attributes.val),e.attributes.theme&&(i.color.theme=e.attributes.theme);break;case`family`:i||={},i.family=parseInt(e.attributes.val,10);break;case`i`:i||={},i.italic=!0;break;case`outline`:i||={},i.outline=!0;break;case`rFont`:i||={},i.name=e.attributes.val;break;case`r`:a=!0;break;case`si`:i=null,n=[],t=null,a=!1;break;case`sz`:i||={},i.size=parseInt(e.attributes.val,10);break;case`strike`:i||={},i.strike=!0;break;case`t`:t=null;break;case`u`:i||={},i.underline=!0;break;case`vertAlign`:i||={},i.vertAlign=e.attributes.val;break}}),o.on(`text`,e=>{t=t?t+e:e}),o.on(`closetag`,e=>{switch(e.name){case`t`:t!=null&&t.includes(`_x`)&&(t=Pc(t));break;case`r`:a&&(n.push({font:i,text:t}),i=null,t=null);break;case`si`:r.push(n.length?{richText:n}:t??``),n=[],i=null,t=null,a=!1;break}}),await ac(o,eu(e));return}let o=new ic({invalidCharHandling:`skip`}),s=new TextDecoder(`utf-8`,{fatal:!0}),c=[];o.on(`opentag`,e=>{switch(e.name){case`b`:i||={},i.bold=!0;break;case`charset`:i||={},i.charset=parseInt(e.attributes.charset,10);break;case`color`:i||={},i.color={},e.attributes.rgb&&(i.color.argb=e.attributes.rgb),e.attributes.val&&(i.color.argb=e.attributes.val),e.attributes.theme&&(i.color.theme=e.attributes.theme);break;case`family`:i||={},i.family=parseInt(e.attributes.val,10);break;case`i`:i||={},i.italic=!0;break;case`outline`:i||={},i.outline=!0;break;case`rFont`:i||={},i.name=e.attributes.val;break;case`r`:a=!0;break;case`si`:i=null,n=[],t=null,a=!1;break;case`sz`:i||={},i.size=parseInt(e.attributes.val,10);break;case`strike`:i||={},i.strike=!0;break;case`t`:t=null;break;case`u`:i||={},i.underline=!0;break;case`vertAlign`:i||={},i.vertAlign=e.attributes.val;break}}),o.on(`text`,e=>{t=t?t+e:e}),o.on(`closetag`,e=>{switch(e.name){case`t`:t!=null&&t.includes(`_x`)&&(t=Pc(t));break;case`r`:a&&(n.push({font:i,text:t}),i=null,t=null);break;case`si`:c.push({index:r++,text:n.length?{richText:n}:t??``}),n=[],i=null,t=null,a=!1;break}});for await(let t of eu(e)){let e=typeof t==`string`?t:s.decode(t,{stream:!0});if(o.write(e),c.length>0){for(let e of c)yield e;c=[]}}let l=s.decode();if(l&&o.write(l),o.close(),c.length>0)for(let e of c)yield e}async _parseStyles(e){this._emitEntry({type:`styles`}),this.options.styles===`cache`&&(this.styles=new hf,await this.styles.parseStream(eu(e)))}async _parseMetadata(e){let t=await new Vd().parseStream(eu(e));t&&(this.hasDynamicArrayMetadata=!!t.hasDynamicArrays,this.dynamicArrayCmIndices=t.dynamicArrayCmIndices)}*_parseWorksheet(e,t){this._emitEntry({type:`worksheet`,id:t});let n=parseInt(t,10),r=this._createWorksheetReader({id:n,iterator:e,options:this.options});r.sheetNo=n;let i=this._workbookRelIdByTarget?.[Uu(t)],a=i?this._sheetByRelId?.[i]:void 0;a&&(r.id=a.id,r.name=a.name,r.state=a.state),this.options.worksheets===`emit`&&(yield{eventType:`worksheet`,value:r})}async*_parseHyperlinks(e,t){this._emitEntry({type:`hyperlinks`,id:t});let n=this._createHyperlinkReader({id:parseInt(t,10),iterator:e,options:this.options});if(this.options.hyperlinks===`cache`){this._hyperlinkReadersBySheetNo||=Object.create(null),this._hyperlinkReadersBySheetNo[t]=n;let e=n.read;typeof e==`function`&&await e.call(n);return}this.options.hyperlinks===`emit`&&(yield{eventType:`hyperlinks`,value:n})}async*_parseEntries(e){let t=Ls({forceStream:!0});e.on(`error`,e=>t.emit(`error`,e)),e.pipe(t);for await(let e of eu(t)){let t,n=vu(e.path);switch(n){case V.rootRels:break;case V.xlWorkbookRels:await this._parseRels(e);break;case V.xlWorkbook:await this._parseWorkbook(e);break;case V.xlSharedStrings:for await(let t of this._parseSharedStrings(e))yield{eventType:`shared-strings`,value:t};break;case V.xlStyles:await this._parseStyles(e);break;case V.xlMetadata:await this._parseMetadata(e);break;default:if(t=yu(n)?.toString(),t)if(this.workbookRels&&this.model&&(this.options.sharedStrings!==`cache`||this.sharedStrings)){yield*this._parseWorksheet(eu(e),t);continue}else{yield{eventType:`waiting-worksheet`,sheetNo:t,entry:e};continue}if(t=bu(n)?.toString(),t){yield*this._parseHyperlinks(eu(e),t);continue}break}e.autodrain()}}},_f=class extends gf{constructor(e,t={}){super(e,t,$l,oc)}async _storeWaitingWorksheet(e,t){let n=[],r=new TextEncoder;for await(let e of eu(t)){let t;if(e instanceof Uint8Array)t=e;else if(typeof e==`string`)t=r.encode(e);else continue;if(this._totalBufferedBytes+=t.length,this._totalBufferedBytes>this._maxBufferedBytes)throw Error(`Buffered worksheet data exceeds limit of ${this._maxBufferedBytes} bytes. The XLSX file may be malicious (adversarial ZIP entry ordering) or too large for streaming. Increase maxBufferedWorksheetBytes if this is expected.`);n.push(t)}return{sheetNo:e,data:n}}async*_processWaitingWorksheets(e){for(let t of e){let e=(async function*(){for(let e of t.data)yield e})();yield*this._parseWorksheet(e,t.sheetNo)}}};let vf={maxWorkers:typeof navigator<`u`&&navigator.hardwareConcurrency||4,minWorkers:0,idleTimeout:3e4,useTransferables:!0,workerUrl:void 0};function yf(e){let t=e?.maxWorkers??vf.maxWorkers,n=e?.minWorkers??vf.minWorkers;return{maxWorkers:Math.max(1,t),minWorkers:Math.max(0,Math.min(n,t)),idleTimeout:Math.max(0,e?.idleTimeout??vf.idleTimeout),useTransferables:e?.useTransferables??vf.useTransferables,workerUrl:e?.workerUrl}}let bf={high:3,normal:2,low:1};function xf(e){return e?bf[e]??bf.normal:bf.normal}function Sf(){return typeof Worker<`u`&&typeof Blob<`u`}function Cf(){return`
|
|
115
|
+
`),t=this.i):Qs(s)||(r=!0)}r&&(!this.sawRoot&&!this.reportedTextBeforeRoot&&(this.fail(`text data outside of root node.`),this.reportedTextBeforeRoot=!0),this.closedRoot&&!this.reportedTextAfterRoot&&(this.fail(`text data outside of root node.`),this.reportedTextAfterRoot=!0))}sOpenWaka(){let e=this.getCode();if(e!==-1){if(ec(e)){this.closedRoot&&!this.fragment&&this.fail(`documents may contain only one root element`),this.state=3,this.name=I(e);return}switch(e){case 47:this.state=11,this.name=``;break;case 33:this.state=2,this.openWakaBang=``;break;case 63:this.state=19,this.text=``;break;default:this.fail(`unexpected character in tag`),this.state=0}}}sOpenWakaBang(){let e=this.getCode();if(e!==-1)switch(this.openWakaBang+=I(e),this.openWakaBang){case`[CDATA[`:this.state=16,this.text=``,this.openWakaBang=``;break;case`--`:this.state=13,this.text=``,this.openWakaBang=``;break;case`DOCTYPE`:this.state=21,this.text=``,this.openWakaBang=``;break;default:this.openWakaBang.length>=7&&(this.fail(`incorrect syntax`),this.state=0)}}sOpenTag(){let{chunk:e}=this,t=this.i,n=this.i;for(;n<e.length;){let t=e.charCodeAt(n);if(t<128?Zs[t]===1:tc(t))n++;else break}if(n>=e.length){this.name+=e.slice(t,n),this.i=n,this.trackPosition&&(this.column+=n-t);return}this.name+=e.slice(t,n),this.i=n,this.trackPosition&&(this.column+=n-t);let r=this.getCode();r!==-1&&(this.tag={name:this.name,attributes:Object.create(null),isSelfClosing:!1},this.attribList=[],this.sawRoot=!0,r===62?this.openTag():r===47?this.state=4:(Qs(r)||this.fail(`unexpected character in tag`),this.state=5))}sOpenTagSlash(){let e=this.getCode();e!==-1&&(e===62?this.openSelfClosingTag():(this.fail(`expected >`),this.state=5))}sAttrib(){let e=this.skipSpaces();e!==-1&&(ec(e)?(this.name=I(e),this.state=6):e===62?this.openTag():e===47?this.state=4:this.fail(`unexpected character in attribute`))}sAttribName(){let{chunk:e}=this,t=this.i,n=this.i;for(;n<e.length;){let t=e.charCodeAt(n);if(t<128?Zs[t]===1:tc(t))n++;else break}if(n>=e.length){this.name+=e.slice(t,n),this.i=n,this.trackPosition&&(this.column+=n-t);return}this.name+=e.slice(t,n),this.i=n,this.trackPosition&&(this.column+=n-t);let r=this.getCode();r!==-1&&(r===61?this.state=8:Qs(r)?this.state=7:r===62?(this.fail(`attribute without value`),this.attribList.push({name:this.name,value:this.name}),this.name=``,this.openTag()):this.fail(`unexpected character in attribute name`))}sAttribNameSawWhite(){let e=this.skipSpaces();e!==-1&&(e===61?this.state=8:(this.fail(`attribute without value`),this.name=``,this.text=``,e===62?this.openTag():ec(e)?(this.name=I(e),this.state=6):(this.fail(`unexpected character`),this.state=5)))}sAttribValue(){let e=this.skipSpaces();e!==-1&&($s(e)?(this.q=e,this.text=``,this.state=9):(this.fail(`unquoted attribute value`),this.state=0))}sAttribValueQuoted(){let{q:e,chunk:t}=this,{i:n}=this,r=t.length;for(;this.i<r;){let r=t.charCodeAt(this.i);if(r>=32&&r<=126&&r!==e&&r!==38&&r!==60){this.i++,this.trackPosition&&this.column++;continue}if(r===e){this.prevI=this.i,this.i++,this.trackPosition&&this.column++,this.attribList.push({name:this.name,value:this.text+t.slice(n,this.prevI)}),this.name=``,this.text=``,this.q=null,this.state=10;return}if(r===38){this.prevI=this.i,this.i++,this.trackPosition&&this.column++,this.text+=t.slice(n,this.prevI),this.state=25,this.entityReturnState=9,this.entity=``;return}if(r===60){this.prevI=this.i,this.i++,this.trackPosition&&this.column++,this.text+=t.slice(n,this.prevI),this.fail(`< not allowed in attribute value`),this.attribList.push({name:this.name,value:this.text}),this.name=``,this.text=``,this.q=null,this.unget(),this.state=0;return}if(r===9||r===10){this.prevI=this.i,this.i++,r===10&&this.trackPosition?(this.line++,this.column=0,this.positionAtNewLine=this.position):this.trackPosition&&this.column++,this.text+=t.slice(n,this.prevI)+` `,n=this.i;continue}if(r===13){this.prevI=this.i,this.i++,t.charCodeAt(this.i)===10&&this.i++,this.trackPosition&&(this.line++,this.column=0,this.positionAtNewLine=this.position),this.text+=t.slice(n,this.prevI)+` `,n=this.i;continue}if(r>=128){if(this.prevI=this.i,r>=55296&&r<=56319){let e=t.charCodeAt(this.i+1);e>=56320&&e<=57343?this.i+=2:(this.i++,n=this.handleInvalidCharInAttr(r,n,`lone surrogate`))}else r>=56320&&r<=57343?(this.i++,n=this.handleInvalidCharInAttr(r,n,`lone surrogate`)):r===65534||r===65535?(this.i++,n=this.handleInvalidCharInAttr(r,n)):this.i++;this.trackPosition&&this.column++;continue}this.prevI=this.i,this.i++,this.trackPosition&&this.column++,n=this.handleInvalidCharInAttr(r,n)}this.text+=t.slice(n,this.i)}sAttribValueClosed(){let e=this.getCode();e!==-1&&(Qs(e)?this.state=5:e===62?this.openTag():e===47?this.state=4:ec(e)?(this.fail(`no whitespace between attributes`),this.name=I(e),this.state=6):this.fail(`unexpected character after attribute`))}sCloseTag(){let{chunk:e}=this,t=this.i;if(this.name===``){if(t>=e.length){let e=this.getCode();if(e===-1)return;ec(e)?this.name=I(e):this.fail(`unexpected character in close tag`);return}let n=e.charCodeAt(t);if(n<128?Xs[n]!==1:!ec(n)){this.i=t,this.getCode()!==-1&&this.fail(`unexpected character in close tag`);return}this.name=e[t],t++,this.trackPosition&&this.column++}let n=t;for(;t<e.length;){let n=e.charCodeAt(t);if(n<128?Zs[n]===1:tc(n))t++;else break}if(t>n&&(this.name+=e.slice(n,t)),this.trackPosition&&(this.column+=t-n),t>=e.length){this.i=t;return}this.i=t;let r=this.getCode();r!==-1&&(r===62?this.closeTag():Qs(r)?this.state=12:this.fail(`unexpected character in close tag`))}sCloseTagSawWhite(){let e=this.skipSpaces();e!==-1&&(e===62?this.closeTag():this.fail(`unexpected character in close tag`))}sComment(){let e=this.getCode();e!==-1&&(e===45?this.state=14:this.text+=I(e))}sCommentEnding(){let e=this.getCode();e!==-1&&(e===45?this.state=15:(this.text+=`-`+I(e),this.state=13))}sCommentEnded(){let e=this.getCode();e!==-1&&(e===62?(this._handlers.comment?.(this.text),this.text=``,this.state=0):e===45?this.text+=`-`:(this.fail(`malformed comment`),this.text+=`--`+I(e),this.state=13))}sCData(){let e=this.getCode();e!==-1&&(e===93?this.state=17:this.text+=I(e))}sCDataEnding(){let e=this.getCode();e!==-1&&(e===93?this.state=18:(this.text+=`]`+I(e),this.state=16))}sCDataEnding2(){let e=this.getCode();e!==-1&&(e===62?(this._handlers.cdata?this._handlers.cdata(this.text):this._handlers.text&&this.text.length>0&&this._handlers.text(this.text),this.text=``,this.state=0):e===93?this.text+=`]`:(this.text+=`]]`+I(e),this.state=16))}sPI(){let e=this.getCode();e!==-1&&(e===63?this.state=20:this.text+=I(e))}sPIEnding(){let e=this.getCode();if(e!==-1)if(e===62){let e=this.text,t=e.indexOf(` `);t>=0?this._handlers.pi?.(e.slice(0,t),e.slice(t+1)):this._handlers.pi?.(e,``),this.text=``,this.state=0}else e===63?this.text+=`?`:(this.text+=`?`+I(e),this.state=19)}sDoctype(){let e=this.getCode();e!==-1&&(e===62?(this.text=``,this.state=0):$s(e)?(this.q=e,this.state=22):e===91?this.state=23:this.text+=I(e))}sDoctypeQuote(){let e=this.getCode();e!==-1&&(e===this.q?(this.q=null,this.state=21):this.text+=I(e))}sDoctypeDTD(){let e=this.getCode();e!==-1&&(e===93?this.state=21:$s(e)&&(this.q=e,this.state=24))}sDoctypeDTDQuoted(){let e=this.getCode();e!==-1&&e===this.q&&(this.q=null,this.state=23)}sEntity(){let e=this.getCode();if(e!==-1)if(e===59){let e=this.entity,t;e===``?(this.fail(`empty entity`),t=`&;`):t=this.parseEntity(e),this.text+=t,this.state=this.entityReturnState,this.entity=``}else tc(e)||e===35?(this.entity+=I(e),this.entity.length>64&&(this.fail(`entity name too long`),this.text+=`&`+this.entity,this.state=this.entityReturnState,this.entity=``)):(this.fail(`invalid entity character`),this.text+=`&`+this.entity+I(e),this.state=this.entityReturnState,this.entity=``)}parseEntity(e){if(e[0]!==`#`){let t=this.ENTITIES[e];return t===void 0?(this.fail(`undefined entity: `+e),`&`+e+`;`):this.maxEntityExpansions>0&&e!==`lt`&&e!==`gt`&&e!==`amp`&&e!==`quot`&&e!==`apos`&&(this._entityExpansionCount++,this._entityExpansionCount>this.maxEntityExpansions)?(this.fail(`entity expansion limit (${this.maxEntityExpansions}) exceeded — possible XML bomb`),``):t}let t;return t=e[1]===`x`||e[1]===`X`?parseInt(e.slice(2),16):parseInt(e.slice(1),10),isNaN(t)||t<1||t>=55296&&t<=57343||t>1114111?(this.fail(`invalid character entity: &#`+e.slice(1)+`;`),``):nc(t)?String.fromCodePoint(t):(this.fail(`invalid character entity`),``)}skipSpaces(){for(;;){let e=this.getCode();if(e===-1||!Qs(e))return e}}splitQName(e){let t=e.indexOf(`:`);return t<0?[``,e]:[e.slice(0,t),e.slice(t+1)]}resolveNs(e){for(let t=this._nsStack.length-1;t>=0;t--){let n=this._nsStack[t][e];if(n!==void 0)return n}return``}applyNamespaces(e){let t=`http://www.w3.org/XML/1998/namespace`,n=`http://www.w3.org/2000/xmlns/`,r={},i=e.attributes;for(let e in i)if(Object.prototype.hasOwnProperty.call(i,e)){if(e===`xmlns`)r[``]=i[e];else if(e.startsWith(`xmlns:`)){let a=e.slice(6),o=i[e];a===`xmlns`?this.fail(`the "xmlns" prefix must not be declared`):a===`xml`&&o!==t?this.fail(`the "xml" prefix must be bound to "${t}"`):o===t&&a!==`xml`?this.fail(`namespace "${t}" must only be bound to the "xml" prefix`):o===n&&this.fail(`namespace "${n}" must not be bound to any prefix`),r[a]=o}}this._nsStack.push(r),Object.keys(r).length>0&&(e.ns=r);let[a,o]=this.splitQName(e.name);o.includes(`:`)&&this.fail(`invalid QName "${e.name}": local part must not contain ":"`),e.prefix=a,e.local=o,e.uri=this.resolveNs(a),a!==``&&e.uri===``&&this.fail(`unbound namespace prefix: "${a}"`);let s=new Set;for(let e in i){if(!Object.prototype.hasOwnProperty.call(i,e)||e===`xmlns`||e.startsWith(`xmlns:`))continue;let[t,n]=this.splitQName(e);if(n.includes(`:`)&&this.fail(`invalid attribute QName "${e}": local part must not contain ":"`),t!==``){let e=this.resolveNs(t);e===``&&this.fail(`unbound namespace prefix on attribute: "${t}"`);let r=e+`\0`+n;s.has(r)&&this.fail(`duplicate attribute by expanded name: {${e}}${n}`),s.add(r)}}}openTag(){let e=this.tag;e.isSelfClosing=!1;for(let{name:t,value:n}of this.attribList)t in e.attributes&&this.fail(`duplicate attribute: ${t}`),e.attributes[t]=n;this.attribList=[],this.xmlns&&this.applyNamespaces(e),this.maxDepth>0&&this.tags.length>=this.maxDepth&&this.fail(`maximum element nesting depth (${this.maxDepth}) exceeded`),this._handlers.opentag?.(e),this.tags.push(e),this.name=``,this.state=0}openSelfClosingTag(){let e=this.tag;e.isSelfClosing=!0;for(let{name:t,value:n}of this.attribList)t in e.attributes&&this.fail(`duplicate attribute: ${t}`),e.attributes[t]=n;this.attribList=[],this.xmlns&&this.applyNamespaces(e),this.maxDepth>0&&this.tags.length>=this.maxDepth&&this.fail(`maximum element nesting depth (${this.maxDepth}) exceeded`),this._handlers.opentag?.(e),this._handlers.closetag?.(e),this.xmlns&&this._nsStack.pop(),this.tags.length===0&&(this.closedRoot=!0),this.name=``,this.state=0}closeTag(){let{tags:e,name:t}=this;if(this.state=0,this.name=``,t===``){this.fail(`empty close tag`),this.text+=`</>`;return}let n=!1;for(let r=e.length-1;r>=0;r--)if(e[r].name===t){for(;e.length>r;){let t=e.pop();this._handlers.closetag?.(t),this.xmlns&&this._nsStack.pop(),e.length>r&&this.fail(`unclosed tag: `+t.name)}n=!0;break}n||(this.fail(`unmatched close tag: `+t),this.text+=`</`+t+`>`),e.length===0&&(this.closedRoot=!0)}end(){for(this.sawRoot||this.fail(`document must contain a root element`);this.tags.length>0;){let e=this.tags.pop();this.fail(`unclosed tag: `+e.name)}return this.text.length>0&&this._handlers.text&&(this._handlers.text(this.text),this.text=``),this._closed=!0,this._init(),this}};async function ac(e,t){let n=new TextDecoder(`utf-8`,{fatal:!0}),r,i=e._handlers?.error;e.on(`error`,e=>{r=e,i?.(e)});for await(let i of t){let t=typeof i==`string`?i:n.decode(i,{stream:!0});if(e.write(t),r)throw o(r)}let a=n.decode();if(a&&e.write(a),e.close(),r)throw o(r)}var oc=class extends D{constructor({workbook:e,id:t,iterator:n,options:r}){super(),this._hyperlinkCount=0,this.workbook=e,this.id=t,this.iterator=n,this.options=r}get count(){return this.hyperlinks?this._hyperlinkCount:0}each(e){let t=this.hyperlinks;if(t)for(let n in t)e(t[n],n)}async read(){let{iterator:e}=this,t=this.options.hyperlinks,n=t===`emit`,r=t===`cache`,i=null;if(r&&(this._hyperlinkCount=0,this.hyperlinks=i=Object.create(null)),!n&&!r){this.emit(`finished`);return}try{let t=new ic({position:!1,invalidCharHandling:`skip`}),r=new TextDecoder(`utf-8`,{fatal:!0});t.on(`opentag`,e=>{if(e.name!==`Relationship`)return;let t=e.attributes;if(t.Type!==F.Hyperlink)return;let r={type:7,rId:t.Id,target:t.Target,targetMode:t.TargetMode};if(n){this.emit(`hyperlink`,r);return}let a=r.rId;i&&i[a]===void 0&&(this._hyperlinkCount+=1),i[a]=r});for await(let n of e){let e=typeof n==`string`?n:r.decode(n,{stream:!0});t.write(e)}let a=r.decode();a&&t.write(a),t.close(),this.emit(`finished`)}catch(e){this.emit(`error`,e)}}};let sc=(e,t)=>({...e,...t.reduce((t,n)=>(e[n]&&(t[n]={...e[n]}),t),{})}),cc=(e,t,n,r=[])=>{e[n]&&(t[n]=sc(e[n],r))},lc=e=>Object.keys(e).length===0,L=e=>{if(!e)return e;if(lc(e))return{};let t={...e};return cc(e,t,`font`,[`color`]),cc(e,t,`alignment`),cc(e,t,`protection`),e.border&&(cc(e,t,`border`),cc(e.border,t.border,`top`,[`color`]),cc(e.border,t.border,`left`,[`color`]),cc(e.border,t.border,`bottom`,[`color`]),cc(e.border,t.border,`right`,[`color`]),cc(e.border,t.border,`diagonal`,[`color`])),e.fill&&(cc(e,t,`fill`,[`fgColor`,`bgColor`,`center`]),e.fill.stops&&(t.fill.stops=e.fill.stops.map(e=>sc(e,[`color`])))),t},uc={'"':`"`,"&":`&`,"<":`<`,">":`>`},dc=/["&<>]/g;function fc(e,t){if(e===t)return!0;if(e==null||t==null)return e===t;let n=typeof e;if(n!==typeof t||n!==`object`)return!1;let r=Array.isArray(e);if(r!==Array.isArray(t))return!1;if(r){let n=e.length;if(n!==t.length)return!1;for(let r=0;r<n;r++)if(!fc(e[r],t[r]))return!1;return!0}let i=Object.keys(e),a=Object.keys(t);if(i.length!==a.length)return!1;for(let n=0,r=i.length;n<r;n++){let r=i[n];if(!Object.prototype.hasOwnProperty.call(t,r)||!fc(e[r],t[r]))return!1}return!0}function pc(e){return e.replace(dc,e=>uc[e])}function mc(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function hc(...e){let t=e[0]||{},n=e.length;for(let r=1;r<n;r++){let n=e[r];if(n)if(Array.isArray(n))for(let e=0,r=n.length;e<r;e++){let r=n[e];if(r===void 0)continue;let i=t[e];Array.isArray(r)?t[e]=hc(Array.isArray(i)?i:[],r):mc(r)?t[e]=hc(mc(i)?i:{},r):t[e]=r}else{let e=Object.keys(n);for(let r=0,i=e.length;r<i;r++){let i=e[r];if(i===`__proto__`||i===`constructor`||i===`prototype`)continue;let a=n[i];if(a===void 0)continue;let o=t[i];Array.isArray(a)?t[i]=hc(Array.isArray(o)?o:[],a):mc(a)?t[i]=hc(mc(o)?o:{},a):t[i]=a}}}return t}var gc=class e{constructor(e,t,n){this._worksheet=e,this._number=t,n!==!1&&(this.defn=n)}get number(){return this._number}get worksheet(){return this._worksheet}get letter(){return M.n2l(this._number)}get isCustomWidth(){return this.width!==void 0&&this.width!==9}get defn(){return{header:this._header,key:this.key,width:this.width,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel,bestFit:this.bestFit}}set defn(e){e?(this.key=e.key,this.width=e.width===void 0?9:e.width,this.outlineLevel=e.outlineLevel,e.style?this.style=L(e.style)??{}:this.style={},this.header=e.header,this._hidden=!!e.hidden,this.bestFit=e.bestFit):(delete this._header,delete this._key,delete this.width,this.style={},this.outlineLevel=0,delete this.bestFit)}get headers(){return Array.isArray(this._header)?this._header:this._header===void 0?[]:[this._header]}get header(){return this._header}set header(e){e===void 0?this._header=void 0:(this._header=e,this.headers.forEach((e,t)=>{this._worksheet.getCell(t+1,this.number).value=e}))}get key(){return this._key}set key(e){(this._key&&this._worksheet.getColumnKey(this._key))===this&&this._worksheet.deleteColumnKey(this._key),this._key=e,e&&this._worksheet.setColumnKey(e,this)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel??0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=(this._worksheet.properties.outlineLevelCol??0))}toString(){return JSON.stringify({key:this.key,width:this.width,headers:this.headers.length?this.headers:void 0})}equivalentTo(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&fc(this.style,e.style)}equivalentToModel(e){return this.width===e.width&&this.hidden===e.hidden&&this.outlineLevel===e.outlineLevel&&this.bestFit===e.bestFit&&fc(this.style,e.style)}get isDefault(){if(this.isCustomWidth||this.hidden||this.outlineLevel||this.bestFit)return!1;let e=this.style;return!(e&&(e.font||e.numFmt||e.alignment||e.border||e.fill||e.protection))}get headerCount(){return this.headers.length}eachCell(e,t){let n=this.number,r,i;typeof e==`function`?(r={},i=e):(r=e,i=t),this._worksheet.eachRow(r,(e,t)=>{i(e.getCell(n),t)})}get values(){let e=[];return this.eachCell((t,n)=>{t&&t.type!==0&&(e[n]=t.value)}),e}set values(e){if(!e)return;let t=this.number,n=0;Object.prototype.hasOwnProperty.call(e,`0`)&&(n=1),e.forEach((e,r)=>{this._worksheet.getCell(r+n,t).value=e})}addPageBreak(e,t){let n=this._worksheet,r=Math.max(0,(e??0)-1)||0,i=Math.max(0,(t??0)-1)||1048575,a={id:this._number,max:i,man:1};r&&(a.min=r),n.colBreaks.push(a)}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e,this.eachCell(t=>{t.numFmt=e})}get font(){return this.style.font}set font(e){this.style.font=e,this.eachCell(t=>{t.font=e&&structuredClone(e)})}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e,this.eachCell(t=>{t.alignment=e&&structuredClone(e)})}get protection(){return this.style.protection}set protection(e){this.style.protection=e,this.eachCell(t=>{t.protection=e&&structuredClone(e)})}get border(){return this.style.border}set border(e){this.style.border=e,this.eachCell(t=>{t.border=e&&structuredClone(e)})}get fill(){return this.style.fill}set fill(e){this.style.fill=e,this.eachCell(t=>{t.fill=e&&structuredClone(e)})}static toModel(e){let t=[],n=null;return e.forEach((e,r)=>{e.isDefault?n&&=null:!n||!e.equivalentToModel(n)?(n={min:r+1,max:r+1,width:e.width===void 0?9:e.width,style:e.style,isCustomWidth:e.isCustomWidth,hidden:e.hidden,outlineLevel:e.outlineLevel,collapsed:e.collapsed,bestFit:e.bestFit},t.push(n)):n.max=r+1}),t.length?t:void 0}static fromModel(t,n){let r=t,i=Array.isArray(t)?t:n??[];i??=[];let a=[],o=1,s=0;for(i=i.sort((e,t)=>e.min-t.min);s<i.length;){let t=i[s++];for(;o<t.min;)a.push(new e(r,o++));for(;o<=t.max;)a.push(new e(r,o++,t))}return a}},_c=class e{static{this.DEFAULT_CONFIGS={note:{margins:{insetmode:`auto`,inset:[.13,.13,.25,.25]},protection:{locked:`True`,lockText:`True`},editAs:`absolute`},type:`note`}}constructor(e,t){this.note=e,this.author=t}get model(){let t;switch(typeof this.note){case`string`:t={type:`note`,note:{texts:[{text:this.note}]}};break;default:t={type:`note`,note:this.note??{}};break}let n=hc({},e.DEFAULT_CONFIGS,t);return this.author!==void 0&&(n.author=this.author),n}set model(e){let{note:t}=e,{texts:n}=t;n&&n.length===1&&Object.keys(n[0]).length===1?this.note=n[0].text:this.note=t,this.author=e.author}static fromModel(t){let n=new e;return n.model=t,n}};function vc(){return typeof process<`u`&&!!process.versions?.node}let yc={lt:`<`,gt:`>`,amp:`&`,quot:`"`,apos:`'`},bc=/&(#\d+|#[xX][0-9A-Fa-f]+|\w+);/g,xc=(()=>{let e=new Uint8Array(128);for(let t=0;t<=8;t++)e[t]=2;e[11]=2,e[12]=2;for(let t=14;t<=31;t++)e[t]=2;return e[127]=2,e[34]=1,e[38]=1,e[39]=1,e[60]=1,e[62]=1,e})(),Sc={34:`"`,38:`&`,39:`'`,60:`<`,62:`>`};function Cc(e){return e.indexOf(`&`)===-1?e:e.replace(bc,(e,t)=>{if(t[0]===`#`){let n=t[1]===`x`||t[1]===`X`?parseInt(t.slice(2),16):parseInt(t.slice(1),10);return Number.isNaN(n)||n<1||n>=55296&&n<=57343||n>1114111?e:String.fromCodePoint(n)}return yc[t]??e})}function R(e){let t=e.length,n=-1;for(let r=0;r<t;r++){let t=e.charCodeAt(r);if(t<128){if(xc[t]!==0){n=r;break}}else if(t>=55296&&t<=57343){if(t<=56319){let t=e.charCodeAt(r+1);if(t>=56320&&t<=57343){r++;continue}}n=r;break}else if(t===65534||t===65535){n=r;break}}if(n===-1)return e;let r=[],i=0;for(let a=n;a<t;a++){let t=e.charCodeAt(a);if(t<128){let n=xc[t];if(n===0)continue;i<a&&r.push(e.substring(i,a)),n===1&&r.push(Sc[t]),i=a+1}else if(t>=55296&&t<=56319){let t=e.charCodeAt(a+1);if(t>=56320&&t<=57343){a++;continue}i<a&&r.push(e.substring(i,a)),i=a+1}else (t>=56320&&t<=57343||t===65534||t===65535)&&(i<a&&r.push(e.substring(i,a)),i=a+1)}return i<t&&r.push(e.substring(i)),r.length===1?r[0]:r.join(``)}function wc(e){return R(e)}let Tc=/[\s<>"'/=&]/;function Ec(e){if(!e)throw new Gs(`XML name must not be empty`);if(Tc.test(e))throw new Gs(`Invalid XML name: contains forbidden character in "${e}"`);let t=e.charCodeAt(0);if(t>=48&&t<=57||t===45||t===46)throw new Gs(`Invalid XML name: "${e}" starts with forbidden character`)}function Dc(e){return`<![CDATA[`+e.split(`]]>`).join(`]]]]><![CDATA[>`)+`]]>`}function Oc(e){if(e.includes(`--`)||e.endsWith(`-`))throw new Gs(`Invalid comment: must not contain "--" or end with "-"`)}let z={version:`1.0`,encoding:`UTF-8`,standalone:`yes`};function kc(e){if(vc())return Buffer.from(e,`base64`);let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function Ac(e,t){return 25569+e.getTime()/(24*3600*1e3)-(t?1462:0)}function jc(e,t){let n=Math.round((e-25569+(t?1462:0))*24*3600*1e3);return new Date(n)}function Mc(e){return new Date(e.endsWith(`Z`)?e:e+`Z`)}let Nc=/_x([0-9A-Fa-f]{4})_/g;function Pc(e){return e.replace(Nc,(e,t)=>{let n=parseInt(t,16);return n===0||n>=1&&n<=8||n===11||n===12||n>=14&&n<=31||n===127||n>=55296&&n<=57343||n===65534||n===65535?e:String.fromCharCode(n)})}function Fc(e){return e.replace(Nc,`_x005F_x$1_`)}let Ic=/[\t\n\r]/g,Lc={" ":`_x0009_`,"\n":`_x000A_`,"\r":`_x000D_`};function Rc(e){let t=e.replace(Nc,`_x005F_x$1_`);return t=t.replace(Ic,e=>Lc[e]),t}function zc(e){let t=typeof e==`number`?e:parseInt(e,10);return Number.isNaN(t)?0:t}function Bc(e){let t=[],n=``,r=!1,i=!1;for(let a=0;a<e.length;a++){let o=e[a];o===`"`&&!i?(r=!r,n+=o):o===`[`&&!r?(i=!0,n+=o):o===`]`&&!r?(i=!1,n+=o):o===`;`&&!r&&!i?(t.push(n),n=``):n+=o}return t.push(n),t}let Vc=/[ymdhMsb]/,Hc=/\[[^\]]*\]|"[^"]*"/g,Uc=new Map;function Wc(e){if(!e)return!1;let t=Uc.get(e);if(t!==void 0)return t;let n=Bc(e)[0].replace(Hc,``),r;return r=n.indexOf(`@`)>-1?!1:Vc.test(n),Uc.set(e,r),r}function Gc(e){return e===!0||e===`true`||e===1||e===`1`}function*Kc(e,t,n=1){let r=n>0?(e,t)=>e<t:(e,t)=>e>t;for(let i=e;r(i,t);i+=n)yield i}function qc(e){let t=Array.from(e);return t.length<=1?t:t.every(e=>Number.isFinite(e))?t.sort((e,t)=>e-t):t.every(e=>e instanceof Date)?t.sort((e,t)=>e.getTime()-t.getTime()):t.sort((e,t)=>{let n=Jc(e),r=Jc(t);return n===r?n===0?e-t:n===1?e.getTime()-t.getTime():String(e).localeCompare(String(t)):n-r})}function Jc(e){return Number.isFinite(e)?0:e instanceof Date?1:2}let Yc=new TextDecoder(`utf-8`),Xc,Zc=!1;function Qc(){if(!Zc){Zc=!0;try{Xc=new TextDecoder(`latin1`)}catch{Xc=void 0}}return Xc}function $c(e){return typeof e==`string`?e:Yc.decode(e)}function el(e){if(vc())return Buffer.from(e).toString(`base64`);if(Qc())try{return btoa(Xc.decode(e))}catch{}let t=32768,n=[];for(let r=0;r<e.length;r+=t)n.push(String.fromCharCode.apply(null,e.subarray(r,r+t)));return btoa(n.join(``))}function tl(e){let t=new Uint8Array(e.length*2);for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t[n*2]=r&255,t[n*2+1]=r>>8&255}return t}function nl(){return new Promise(e=>setTimeout(e,0))}function rl(e,t){let n=Math.round(e).toString();for(;n.length<t;)n=`0`+n;return n}function il(e){if(e.length<=3)return e;let t=e.length%3,n=e.substring(0,t);for(let r=t;r<e.length;r+=3)n+=(n.length>0?`,`:``)+e.substring(r,r+3);return n}function al(e,t){let n=10**t;return Math.round(e*n)/n}function ol(e){let t=e.replace(/_./g,` `);return t=t.replace(/\*./g,``),t}function sl(e){return/^General$/i.test(e.trim())}function cl(e){let t=e.replace(/\[[^\]]*\]/g,``);return/[ymdhs]/i.test(t)&&!/^[#0.,E%$\s()\-+]+$/i.test(t)}let ll=[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`],ul=[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],dl=[`J`,`F`,`M`,`A`,`M`,`J`,`J`,`A`,`S`,`O`,`N`,`D`],fl=[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],pl=[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`];function ml(e){let t=/\x00(?:Y[24]|D[12]|MN[345])\x00/,n=/\x00H[12]\x00/g,r=/\x00S[12]\x00/g,i=``,a=e,o=a.search(/mm/i);for(;o!==-1;){let e=a.slice(0,o),s=a.slice(o+2),c=-1,l;for(n.lastIndex=0;(l=n.exec(e))!==null;)c=l.index;r.lastIndex=0;let u=r.exec(s),d=u?u.index:-1,f=c!==-1&&!t.test(e.slice(c)),p=d!==-1&&!t.test(s.slice(0,d));i+=e+(f||p?`\0MI2\0`:`\0M2\0`),a=s,o=a.search(/mm/i)}return i+=a,i}function hl(e,t){let n=Math.round(e*86400)%86400,r=Math.floor(n/3600),i=Math.floor(n%3600/60),a=n%60,o=jc(e,!1),s=o.getUTCFullYear(),c=o.getUTCMonth(),l=o.getUTCDate(),u=o.getUTCDay(),d=e*86400-Math.floor(e*86400),f=/AM\/PM|A\/P/i.test(t),p=r>=12,m=r%12||12,h=t.replace(/\[(Red|Green|Blue|Yellow|Magenta|Cyan|White|Black|Color\d+)\]/gi,``);h=ol(h);let g=h.match(/ss\.(0+)/i),_=``;if(g){let e=g[1].length;_=Math.round(d*10**e).toString().padStart(e,`0`),h=h.replace(/ss\.0+/gi,`\0SF\0`)}h=h.replace(/yyyy/gi,`\0Y4\0`),h=h.replace(/yy/gi,`\0Y2\0`),h=h.replace(/mmmmm/gi,`\0MN5\0`),h=h.replace(/mmmm/gi,`\0MN4\0`),h=h.replace(/mmm/gi,`\0MN3\0`),h=h.replace(/dddd/gi,`\0DN4\0`),h=h.replace(/ddd/gi,`\0DN3\0`),h=h.replace(/dd/gi,`\0D2\0`),h=h.replace(/\bd\b/gi,`\0D1\0`),h=h.replace(/hh/gi,`\0H2\0`),h=h.replace(/\bh\b/gi,`\0H1\0`),h=h.replace(/ss/gi,`\0S2\0`),h=h.replace(/\bs\b/gi,`\0S1\0`),h=ml(h),h=h.replace(/\bm\b/gi,`\0M1\0`),h=h.replace(/AM\/PM/gi,`\0AMPM\0`),h=h.replace(/A\/P/gi,`\0AP\0`);let v=f?m:r;return h=h.replace(/\x00Y4\x00/g,s.toString()).replace(/\x00Y2\x00/g,(s%100).toString().padStart(2,`0`)).replace(/\x00MN5\x00/g,dl[c]).replace(/\x00MN4\x00/g,ul[c]).replace(/\x00MN3\x00/g,ll[c]).replace(/\x00M2\x00/g,(c+1).toString().padStart(2,`0`)).replace(/\x00M1\x00/g,(c+1).toString()).replace(/\x00DN4\x00/g,pl[u]).replace(/\x00DN3\x00/g,fl[u]).replace(/\x00D2\x00/g,l.toString().padStart(2,`0`)).replace(/\x00D1\x00/g,l.toString()).replace(/\x00H2\x00/g,v.toString().padStart(2,`0`)).replace(/\x00H1\x00/g,v.toString()).replace(/\x00MI2\x00/g,i.toString().padStart(2,`0`)).replace(/\x00S2\x00/g,a.toString().padStart(2,`0`)).replace(/\x00S1\x00/g,a.toString()).replace(/\x00SF\x00/g,a.toString().padStart(2,`0`)+`.`+_).replace(/\x00AMPM\x00/g,p?`PM`:`AM`).replace(/\x00AP\x00/g,p?`P`:`A`),h=h.replace(/\\/g,``),h}function gl(e){return typeof e==`boolean`?e?`TRUE`:`FALSE`:typeof e==`string`?e:Number.isInteger(e)?e.toString():e.toPrecision(11).replace(/\.?0+$/,``).replace(/\.?0+e/,`e`)}function _l(e,t){let n=(t.match(/%/g)??[]).length;return Sl(e*100**n,t.replace(/%/g,``)||`0`)+`%`.repeat(n)}function vl(e,t){let n=e<0?`-`:``,r=Math.abs(e);if(r===0){let e=t.match(/\.([0#]+)E/i),n=e?e[1].length:2;return`0.`+`0`.repeat(n)+`E+00`}let i=t.match(/\.([0#]+)E/i),a=i?i[1].length:2,o=t.includes(`E+`),s=Math.floor(Math.log10(r)),c=al(r/10**s,a).toFixed(a),l=s>=0?o?`+`:``:`-`,u=rl(Math.abs(s),2);return n+c+`E`+l+u}function yl(e,t){let n=e<0?-1:1,r=Math.abs(e),i=Math.floor(r);if(r-=i,r<1e-10)return[n*i,0,1];let a=0,o=1,s=1,c=0,l=Math.floor(r),u=l,d=1;for(;c<t&&(l=Math.floor(r),u=l*o+a,d=l*c+s,!(r-l<1e-10));)r=1/(r-l),a=o,o=u,s=c,c=d;return d>t&&(d=c,u=o),[n*i,n*u,d]}function bl(e,t){let n=e<0?`-`:``,r=Math.abs(e),i=t.match(/\?+\s*\/\s*(\d+)/);if(i){let e=parseInt(i[1],10),a=Math.floor(r),o=r-a,s=Math.round(o*e);return t.includes(`#`)||t.includes(`0`)?s===0?n+a.toString():n+(a>0?a+` `:``)+s+`/`+e:n+(a*e+s)+`/`+e}let a=t.match(/\/\s*(\?+)/),[o,s,c]=yl(r,10**(a?a[1].length:2)-1);return t.includes(`#`)&&o!==0?s===0?n+Math.abs(o).toString():n+Math.abs(o)+` `+Math.abs(s)+`/`+c:s===0?o===0?`0`:n+Math.abs(o).toString():n+(Math.abs(o)*c+Math.abs(s))+`/`+c}function xl(e,t){let n=Math.round(e*86400),r=Math.floor(n/60),i=Math.floor(r/60),a=n%60,o=r%60,s=i,c=t;return/\[h+\]/i.test(c)&&(c=c.replace(/\[h+\]/gi,s.toString())),/\[m+\]/i.test(c)&&(c=c.replace(/\[m+\]/gi,r.toString())),/\[s+\]/i.test(c)&&(c=c.replace(/\[s+\]/gi,n.toString())),c=c.replace(/mm/gi,o.toString().padStart(2,`0`)),c=c.replace(/ss/gi,a.toString().padStart(2,`0`)),c}function Sl(e,t){let n=Math.abs(e),r=e<0?`-`:``,i=0,a=t;for(;a.endsWith(`,`);)i++,a=a.slice(0,-1);let o=n/1e3**i,s=a.indexOf(`.`),c=a,l=``;s!==-1&&(c=a.substring(0,s),l=a.substring(s+1));let u=l.replace(/[^0#?]/g,``).length,d=al(o,u);if(d===0&&!c.includes(`0`)&&!l.includes(`0`)){let e=``;for(let t of c)t===`?`?e+=` `:t!==`#`&&t!==`,`&&(e+=t);if(u>0&&/[0?]/.test(l)){e+=`.`;for(let t of l)t===`?`&&(e+=` `)}return r+e}let[f,p=``]=d.toString().split(`.`),m=/[0#?][^0#?,.\s][0#?]/.test(c),h;if(m){let e=c.replace(/[^0#?]/g,``).length,t=f;t.length<e&&(t=`0`.repeat(e-t.length)+t),h=``;let n=t.length-e;for(let e=0;e<c.length;e++){let r=c[e];r===`0`||r===`#`||r===`?`?n<t.length&&(h+=t[n],n++):r!==`,`&&(h+=r)}}else{h=f,c.includes(`,`)&&(h=il(f));let e=(c.match(/0/g)??[]).length,t=(c.match(/[0?]/g)??[]).length;h.length<e&&(h=`0`.repeat(e-h.length)+h),h.length<t&&(h=` `.repeat(t-h.length)+h),h===`0`&&e===0&&t===0&&(h=``)}let g=``;if(u>0){let e=(p+`0`.repeat(u)).substring(0,u).split(``);for(let t=l.length-1;t>=0;t--)if(!(t>=e.length))if(l[t]===`#`&&e[t]===`0`)e[t]=``;else if(l[t]===`?`&&e[t]===`0`)e[t]=` `;else break;let t=e.join(``);t.length>0&&(g=`.`+t)}return r+h+g}function Cl(e){let t=``,n=0;for(;n<e.length;)if(e[n]===`"`){for(n++;n<e.length&&e[n]!==`"`;)t+=e[n],n++;n++}else e[n]===`\\`&&n+1<e.length?(n++,t+=e[n],n++):(t+=e[n],n++);return t}function wl(e,t){let n=t.match(/\[(=|>|<|>=|<=|<>)(-?\d+(?:\.\d*)?)\]/);if(!n)return!1;let r=n[1],i=parseFloat(n[2]);switch(r){case`=`:return e===i;case`>`:return e>i;case`<`:return e<i;case`>=`:return e>=i;case`<=`:return e<=i;case`<>`:return e!==i;default:return!1}}function Tl(e,t){if(typeof t==`string`){let n=Bc(e);return n.length>=4&&n[3]?Cl(n[3]).replace(/@/g,t):t}if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=Bc(e),r=/\[(=|>|<|>=|<=|<>)-?\d+(?:\.\d*)?\]/;if((n[0]&&r.test(n[0])||n[1]&&r.test(n[1]))&&n.length>=2){for(let e=0;e<Math.min(n.length,2);e++){let r=n[e].match(/\[(=|>|<|>=|<=|<>)-?\d+(?:\.\d*)?\]/);if(r&&wl(t,r[0]))return n[e]}return n[n.length>2?2:1]}return n.length===1?n[0]:n.length===2?t>=0?n[0]:n[1]:t>0?n[0]:t<0?n[1]:n[2]||n[0]}function El(e,t){let n=Bc(e);return n.length>=2&&n[1]===t}function Dl(e,t){if(t==null)return``;if(sl(e))return gl(t);if(typeof t==`string`)return Tl(e,t);if(typeof t==`boolean`)return t?`TRUE`:`FALSE`;let n=t,r=Tl(e,n);n<0&&El(e,r)&&(n=Math.abs(n));let i=r.replace(/\[(Red|Green|Blue|Yellow|Magenta|Cyan|White|Black|Color\d+)\]/gi,``);if(i=i.replace(/\[(>|<|>=|<=|=|<>)-?\d+(\.\d+)?\]/g,``),i=i.replace(/\[\$[^\]]*\]/g,``),i=ol(i),i=Cl(i),/\[[hms]+\]/i.test(i))return xl(n,i);if(cl(i))return hl(n,i);if(i.includes(`%`))return _l(n,i);if(/E[+-]?/i.test(i))return vl(n,i);if(/\?+\s*\/\s*[\d?]+/.test(i))return bl(n,i);if(i.includes(`(`)&&i.includes(`)`)&&n<0){let e=i.replace(/\(|\)/g,``);return`(`+Sl(-n,e)+`)`}if(i===`@`)return n.toString();let a=``,o=``,s=i.match(/^([^#0?.,]+)/);s&&(a=s[1],i=i.substring(s[0].length));let c=i.match(/([^#0?.,]+)$/);c&&!c[1].includes(`%`)&&(o=c[1],i=i.substring(0,i.length-c[0].length));let l=Sl(n,i);return a+l+o}function Ol(e){let t=e.replace(/"[^"]*"/g,``);if(/\[[hms]\]/i.test(t))return!1;let n=t.replace(/\[[^\]]*\]/g,``),r=/[hs]/i.test(n)||/AM\/PM|A\/P/i.test(n);return/[yd]/i.test(n)||/m/i.test(n)&&!r?!1:r}function kl(e){let t=e.replace(/"[^"]*"/g,``);if(/\[[hms]\]/i.test(t))return!1;let n=t.replace(/\[[^\]]*\]/g,``);return!!(/[yd]/i.test(n)||/m/i.test(n)&&!(/[hs]/i.test(n)||/AM\/PM|A\/P/i.test(n)))}function Al(e,t,n){if(e instanceof Date){let r=Ac(e);if(Ol(t))return r%=1,r<0&&(r+=1),Dl(t,r);let i;return i=n&&kl(t)?n:!t||sl(t)?r%1==0?`yyyy-mm-dd`:`yyyy-mm-dd hh:mm:ss`:t,Dl(i,r)}return Dl(t,e)}function jl(e,t){let n=e.value,r=e.numFmt,i=typeof r==`string`?r:r?.formatCode??`General`;if(n==null)return``;if(n instanceof Date||typeof n==`number`||typeof n==`boolean`||typeof n==`string`)return Al(n,i,t);if(typeof n==`object`&&`formula`in n){let e=n.result;if(e==null)return``;if(e instanceof Date||typeof e==`number`||typeof e==`boolean`||typeof e==`string`)return Al(e,i,t)}return e.text}let Ml=/(([a-z_\-0-9]*)!)?([a-z0-9_$]{2,})([(])?/gi,Nl=/^([$])?([a-z]+)([$])?([1-9][0-9]*)$/i;function Pl(e,t,n){let r=M.decode(t),i=M.decode(n);return e.replace(Ml,(e,t,n,a,o)=>{if(o)return e;let s=Nl.exec(a);if(s){let n=s[1],a=s[2].toUpperCase(),o=s[3],c=s[4];if(a.length>3||a.length===3&&a>`XFD`)return e;let l=M.l2n(a),u=parseInt(c,10);return n||(l+=i.col-r.col),o||(u+=i.row-r.row),(t??``)+(n??``)+M.n2l(l)+(o??``)+u}return e})}let Fl=e=>!!e&&(typeof e!=`object`||Object.keys(e).length>0);function Il(e){let t=``;for(let n of e)n&&typeof n.text==`string`&&(t+=n.text);return t}function Ll(e){let t,n;Array.isArray(e.richText)&&e.richText.length>0?(n=e.richText,t=Il(n)):t=typeof e.text==`string`?e.text:``;let r={text:t,hyperlink:typeof e.hyperlink==`string`?e.hyperlink:``};return n&&(r.richText=n),typeof e.tooltip==`string`&&e.tooltip.length>0&&(r.tooltip=e.tooltip),r}var B=class e{static{this.Types=Ws.ValueType}constructor(t,n,r){if(!t||!n)throw new j(`A Cell needs a Row`);this._row=t,this._column=n,M.validateAddress(r),this._address=r,this._value=Zl.create(e.Types.Null,this),this.style=this._mergeStyle(t.style,n.style,{}),this._mergeCount=0}get worksheet(){return this._row.worksheet}get workbook(){return this._row.worksheet.workbook}destroy(){this.style=void 0,this._value=void 0,this._row=void 0,this._column=void 0,this._address=void 0}get numFmt(){return this.style.numFmt}set numFmt(e){this.style.numFmt=e}get font(){return this.style.font}set font(e){this.style.font=e}get alignment(){return this.style.alignment}set alignment(e){this.style.alignment=e}get border(){return this.style.border}set border(e){this.style.border=e}get fill(){return this.style.fill}set fill(e){this.style.fill=e}get protection(){return this.style.protection}set protection(e){this.style.protection=e}_mergeStyle(e,t,n){let r=e&&e.numFmt||t&&t.numFmt;r&&(n.numFmt=r);let i=e&&Fl(e.font)&&e.font||t&&Fl(t.font)&&t.font;i&&(n.font=structuredClone(i));let a=e&&Fl(e.alignment)&&e.alignment||t&&Fl(t.alignment)&&t.alignment;a&&(n.alignment=structuredClone(a));let o=e&&Fl(e.border)&&e.border||t&&Fl(t.border)&&t.border;o&&(n.border=structuredClone(o));let s=e&&Fl(e.fill)&&e.fill||t&&Fl(t.fill)&&t.fill;s&&(n.fill=structuredClone(s));let c=e&&Fl(e.protection)&&e.protection||t&&Fl(t.protection)&&t.protection;return c&&(n.protection=structuredClone(c)),n}get address(){return this._address}get row(){return this._row.number}get col(){return this._column.number}get $col$row(){return`$${this._column.letter}$${this.row}`}get type(){return this._value.type}get effectiveType(){return this._value.effectiveType}toCsvString(){return this._value.toCsvString()}addMergeRef(){this._mergeCount++}releaseMergeRef(){this._mergeCount--}get isMerged(){return this._mergeCount>0||this.type===e.Types.Merge}merge(t,n){this._value.release(),this._value=Zl.create(e.Types.Merge,this,t),n||(this.style=L(t.style)??{})}unmerge(){this.type===e.Types.Merge&&(this._value.release(),this._value=Zl.create(e.Types.Null,this),this.style=this._mergeStyle(this._row.style,this._column.style,{...this.style}))}isMergedTo(t){return this._value.type===e.Types.Merge&&this._value.isMergedTo?this._value.isMergedTo(t):!1}get master(){return this.type===e.Types.Merge?this._value.master:this}get isHyperlink(){return this._value.type===e.Types.Hyperlink}get hyperlink(){return this._value.hyperlink}get value(){return this._value.value}set value(t){if(this.type===e.Types.Merge){this._value.master.value=t;return}this._value.release(),this._value=Zl.create(Zl.getType(t),this,t)}get note(){if(this._comment)return this._comment.note}set note(e){this._comment=new _c(e)}get comment(){return this._comment}set comment(e){e===void 0?this._comment=void 0:e instanceof _c?this._comment=e:this._comment=new _c(e)}get text(){return this._value.toString()}get displayText(){return jl(this)}get html(){return pc(this.text)}toString(){return this.text}_upgradeToHyperlink(t){switch(this.type){case e.Types.String:this._value=Zl.create(e.Types.Hyperlink,this,{text:String(this._value.value),hyperlink:t});break;case e.Types.RichText:{let n=this._value.value,r=n&&Array.isArray(n.richText)?n.richText:[];this._value=Zl.create(e.Types.Hyperlink,this,{text:Il(r),richText:r.length>0?r:void 0,hyperlink:t});break}default:break}}get formula(){return this._value.formula}get result(){return this._value.result}set result(t){this.type===e.Types.Formula&&(this._value.result=t)}get formulaType(){return this._value.formulaType??0}get fullAddress(){let{worksheet:e}=this._row;return{sheetName:e.name,address:this.address,row:this.row,col:this.col}}get name(){return this.names[0]}set name(e){this.names=[e]}get names(){return this.workbook.definedNames.getNamesEx(this.fullAddress)}set names(e){let{definedNames:t}=this.workbook;t.removeAllNames(this.fullAddress),e.forEach(e=>{t.addEx(this.fullAddress,e)})}addName(e){this.workbook.definedNames.addEx(this.fullAddress,e)}removeName(e){this.workbook.definedNames.removeEx(this.fullAddress,e)}removeAllNames(){this.workbook.definedNames.removeAllNames(this.fullAddress)}get _dataValidations(){return this.worksheet.dataValidations}get dataValidation(){return this._dataValidations.find(this.address)}set dataValidation(e){this._dataValidations.add(this.address,e)}get model(){let{model:e}=this._value;return e.style=this.style,this._comment&&(e.comment=this._comment.model),e}set model(e){if(this._value.release(),this._value=Zl.create(e.type,this),this._value.model=e,e.comment)switch(e.comment.type){case`note`:this._comment=_c.fromModel(e.comment);break}e.style?this.style=L(e.style)??{}:this.style={}}},Rl=class{constructor(e){this.model={address:e.address,type:B.Types.Null}}get value(){return null}set value(e){}get type(){return B.Types.Null}get effectiveType(){return B.Types.Null}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return``}release(){}toString(){return``}},zl=class{constructor(e,t){this.model={address:e.address,type:B.Types.Number,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.Number}get effectiveType(){return B.Types.Number}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}},Bl=class{constructor(e,t){this.model={address:e.address,type:B.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.String}get effectiveType(){return B.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return`"${this.model.value.replace(/"/g,`""`)}"`}release(){}toString(){return this.model.value}},Vl=class{constructor(e,t){this.model={address:e.address,type:B.Types.String,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}toString(){return this.model.value.richText.map(e=>e.text).join(``)}get type(){return B.Types.RichText}get effectiveType(){return B.Types.RichText}get address(){return this.model.address}set address(e){this.model.address=e}get text(){return this.toString()}toCsvString(){return`"${this.text.replace(/"/g,`""`)}"`}release(){}},Hl=class{constructor(e,t){this.model={address:e.address,type:B.Types.Date,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.Date}get effectiveType(){return B.Types.Date}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toISOString()}release(){}toString(){return this.model.value.toString()}},Ul=class{constructor(e,t){if(this.model={address:e.address,type:B.Types.Hyperlink},t){if(`formula`in t&&typeof t.formula==`string`){let e=t,n=e.result===void 0||e.result===null?``:String(e.result);this.model.text=n,this.model.hyperlink=e.hyperlink??``,e.tooltip!==void 0&&(this.model.tooltip=e.tooltip),this.model.formula=e.formula,e.result!==void 0&&(this.model.result=e.result);return}let e=Ll(t);this.model.text=e.text,this.model.hyperlink=e.hyperlink,e.richText&&(this.model.richText=e.richText),e.tooltip!==void 0&&(this.model.tooltip=e.tooltip)}}get value(){let e={text:this.model.text??``,hyperlink:this.model.hyperlink??``};return this.model.richText&&this.model.richText.length>0&&(e.richText=this.model.richText),this.model.tooltip!==void 0&&(e.tooltip=this.model.tooltip),e}set value(e){let t=Ll(e);this.model.text=t.text,this.model.hyperlink=t.hyperlink,t.richText?this.model.richText=t.richText:delete this.model.richText,t.tooltip===void 0?delete this.model.tooltip:this.model.tooltip=t.tooltip}get text(){return this.model.text}set text(e){this.model.richText&&delete this.model.richText,this.model.text=e}get richText(){return this.model.richText}set richText(e){Array.isArray(e)&&e.length>0?(this.model.richText=e,this.model.text=Il(e)):delete this.model.richText}get hyperlink(){return this.model.hyperlink}set hyperlink(e){this.model.hyperlink=e}get type(){return B.Types.Hyperlink}get effectiveType(){return B.Types.Hyperlink}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.hyperlink??``}release(){}toString(){return this.model.text??``}},Wl=class{constructor(e,t){this.model={address:e.address,type:B.Types.Merge,master:t?t.address:void 0},this._master=t,t&&t.addMergeRef()}get value(){return this._master.value}set value(e){e instanceof B?(this._master&&this._master.releaseMergeRef(),e.addMergeRef(),this._master=e):this._master.value=e}isMergedTo(e){return e===this._master}get master(){return this._master}get type(){return B.Types.Merge}get effectiveType(){return this._master.effectiveType}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return``}release(){this._master.releaseMergeRef()}toString(){return this.value==null?``:this.value.toString()}},Gl=class{constructor(e,t){this.cell=e,this.model={address:e.address,type:B.Types.Formula,shareType:t?t.shareType:void 0,ref:t?t.ref:void 0,formula:t?t.formula:void 0,sharedFormula:t?t.sharedFormula:void 0,result:t?t.result:void 0,isDynamicArray:t?t.isDynamicArray:void 0}}_copyModel(e){let t={};return e.formula&&(t.formula=e.formula),e.result!==void 0&&(t.result=e.result),e.ref&&(t.ref=e.ref),e.shareType&&(t.shareType=e.shareType),e.sharedFormula&&(t.sharedFormula=e.sharedFormula),e.isDynamicArray&&(t.isDynamicArray=e.isDynamicArray),t}get value(){return this._copyModel(this.model)}set value(e){e.formula&&(this.model.formula=e.formula),e.result!==void 0&&(this.model.result=e.result),e.ref&&(this.model.ref=e.ref),e.shareType&&(this.model.shareType=e.shareType),e.sharedFormula&&(this.model.sharedFormula=e.sharedFormula),e.isDynamicArray!==void 0&&(this.model.isDynamicArray=e.isDynamicArray)}validate(e){switch(Zl.getType(e)){case B.Types.Null:case B.Types.String:case B.Types.Number:case B.Types.Date:break;case B.Types.Hyperlink:case B.Types.Formula:default:throw new Ar(String(Zl.getType(e)),`Cannot process that type of result value`)}}get dependencies(){return{ranges:this.formula.match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g),cells:this.formula.replace(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}:[A-Z]{1,3}\d{1,4}/g,``).match(/([a-zA-Z0-9]+!)?[A-Z]{1,3}\d{1,4}/g)}}get formula(){return this.model.formula||this._getTranslatedFormula()||``}set formula(e){this.model.formula=e}get formulaType(){return this.model.formula?1:this.model.sharedFormula?2:0}get result(){return this.model.result}set result(e){this.model.result=e}get type(){return B.Types.Formula}get effectiveType(){let e=this.model.result;return e==null?0:typeof e==`string`?3:typeof e==`number`?2:e instanceof Date?4:typeof e==`object`&&`error`in e?10:0}get address(){return this.model.address}set address(e){this.model.address=e}_getTranslatedFormula(){if(!this._translatedFormula&&this.model.sharedFormula){let{worksheet:e}=this.cell,t=e.findCell(this.model.sharedFormula);this._translatedFormula=t&&t.formula?Pl(t.formula,t.address,this.model.address):void 0}return this._translatedFormula}toCsvString(){return`${this.model.result??``}`}release(){}toString(){return this.model.result?this.model.result.toString():``}},Kl=class{constructor(e,t){this.model={address:e.address,type:B.Types.SharedString,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.SharedString}get effectiveType(){return B.Types.SharedString}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value.toString()}release(){}toString(){return this.model.value.toString()}},ql=class{constructor(e,t){this.model={address:e.address,type:B.Types.Boolean,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.Boolean}get effectiveType(){return B.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return+!!this.model.value}release(){}toString(){return this.model.value.toString()}},Jl=class{constructor(e,t){this.model={address:e.address,type:B.Types.Checkbox,value:t.checkbox}}get value(){return{checkbox:this.model.value}}set value(e){this.model.value=e.checkbox}get type(){return B.Types.Checkbox}get effectiveType(){return B.Types.Boolean}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return+!!this.model.value}release(){}toString(){return this.model.value.toString()}},Yl=class{constructor(e,t){this.model={address:e.address,type:B.Types.Error,value:t}}get value(){return this.model.value}set value(e){this.model.value=e}get type(){return B.Types.Error}get effectiveType(){return B.Types.Error}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.toString()}release(){}toString(){return this.model.value.error.toString()}},Xl=class{constructor(e,t){this.model={address:e.address,type:B.Types.String,value:JSON.stringify(t),rawValue:t}}get value(){return this.model.rawValue}set value(e){this.model.rawValue=e,this.model.value=JSON.stringify(e)}get type(){return B.Types.String}get effectiveType(){return B.Types.String}get address(){return this.model.address}set address(e){this.model.address=e}toCsvString(){return this.model.value}release(){}toString(){return this.model.value}};let Zl={getType(e){if(e==null)return B.Types.Null;if(typeof e==`string`)return B.Types.String;if(typeof e==`number`)return B.Types.Number;if(typeof e==`boolean`)return B.Types.Boolean;if(e instanceof Date)return B.Types.Date;if(typeof e==`object`){if(`checkbox`in e&&typeof e.checkbox==`boolean`)return B.Types.Checkbox;if(`hyperlink`in e&&typeof e.hyperlink==`string`&&e.hyperlink){let t=`text`in e&&typeof e.text==`string`&&e.text.length>0,n=`richText`in e&&Array.isArray(e.richText)&&e.richText.length>0,r=`formula`in e&&typeof e.formula==`string`;if(t||n||r)return B.Types.Hyperlink}if(`formula`in e&&e.formula||`sharedFormula`in e&&e.sharedFormula)return B.Types.Formula;if(`richText`in e&&Array.isArray(e.richText)&&e.richText.length>0)return B.Types.RichText;if(`sharedString`in e&&e.sharedString)return B.Types.SharedString;if(`error`in e&&e.error)return B.Types.Error}return B.Types.JSON},types:[{t:B.Types.Null,f:Rl},{t:B.Types.Number,f:zl},{t:B.Types.String,f:Bl},{t:B.Types.Date,f:Hl},{t:B.Types.Hyperlink,f:Ul},{t:B.Types.Formula,f:Gl},{t:B.Types.Merge,f:Wl},{t:B.Types.JSON,f:Xl},{t:B.Types.SharedString,f:Kl},{t:B.Types.RichText,f:Vl},{t:B.Types.Boolean,f:ql},{t:B.Types.Error,f:Yl},{t:B.Types.Checkbox,f:Jl}].reduce((e,t)=>(e[t.t]=t.f,e),[]),create(e,t,n){let r=this.types[e];if(!r)throw new Ar(String(e),`Could not create Value`);return new r(t,n)}};var Ql=class{constructor(e,t){this._worksheet=e,this._number=t,this._cells=[],this.style={},this.outlineLevel=0}get number(){return this._number}get worksheet(){return this._worksheet}commit(){this._worksheet._commitRow(this)}destroy(){this._worksheet=void 0,this._cells=void 0,this.style=void 0}findCell(e){return this._cells[e-1]}getCellEx(e){let t=this._cells[e.col-1];if(!t){let n=this._worksheet.getColumn(e.col);t=new B(this,n,e.address),this._cells[e.col-1]=t}return t}getCell(e){let t;if(typeof e==`string`){let n=this._worksheet.getColumnKey(e);t=n?n.number:M.l2n(e)}else t=e;return this._cells[t-1]||this.getCellEx({address:M.encodeAddress(this._number,t),row:this._number,col:t})}splice(e,t,...n){let r=e+t,i=n.length-t,a=this._cells.length,o,s,c;if(i<0)for(o=e+n.length;o<=a;o++)c=this._cells[o-1],s=this._cells[o-i-1],s?(c=this.getCell(o),c.value=s.value,c.style=L(s.style)??{},c.comment=s.comment):c&&(c.value=null,c.style={},c.comment=void 0);else if(i>0)for(o=a;o>=r;o--)s=this._cells[o-1],s?(c=this.getCell(o+i),c.value=s.value,c.style=L(s.style)??{},c.comment=s.comment):this._cells[o+i-1]=void 0;for(o=0;o<n.length;o++)c=this.getCell(e+o),c.value=n[o],c.style={},c.comment=void 0}eachCell(e,t){let n=null,r;if(typeof e==`function`?r=e:(n=e,r=t),n&&n.includeEmpty){let e=this._cells.length;for(let t=1;t<=e;t++)r(this.getCell(t),t)}else this._cells.forEach((e,t)=>{e&&e.type!==0&&r(e,t+1)})}addPageBreak(e,t){let n=this._worksheet,r=Math.max(0,(e??0)-1)||0,i=Math.max(0,(t??0)-1)||16838,a={id:this._number,max:i,man:1};r&&(a.min=r),n.rowBreaks.push(a)}get values(){let e=[];return this._cells.forEach(t=>{t&&t.type!==0&&(e[t.col]=t.value)}),e}set values(e){if(this._cells=[],e)if(e instanceof Array){let t=0;Object.prototype.hasOwnProperty.call(e,`0`)&&(t=1),e.forEach((e,n)=>{e!==void 0&&(this.getCellEx({address:M.encodeAddress(this._number,n+t),row:this._number,col:n+t}).value=e)})}else this._worksheet.eachColumnKey((t,n)=>{e[n]!==void 0&&(this.getCellEx({address:M.encodeAddress(this._number,t.number),row:this._number,col:t.number}).value=e[n])})}getValues(){let e=[];return this._cells.forEach(t=>{t&&t.type!==0&&(e[t.col-1]=t.value)}),e}valuesToString(e=`,`){return this.getValues().join(e)}get hasValues(){return this._cells.some(e=>e&&e.type!==0)}get cellCount(){return this._cells.length}get actualCellCount(){let e=0;return this.eachCell(()=>{e++}),e}get dimensions(){let e=0,t=0;return this._cells.forEach(n=>{n&&n.type!==0&&((!e||e>n.col)&&(e=n.col),t<n.col&&(t=n.col))}),e>0?{min:e,max:t}:null}_applyStyle(e,t){this.style[e]=t,this._cells.forEach(n=>{n&&(n.style[e]=typeof t==`object`&&t?structuredClone(t):t)})}get numFmt(){return this.style.numFmt}set numFmt(e){e!==void 0&&this._applyStyle(`numFmt`,e)}get font(){return this.style.font}set font(e){e!==void 0&&this._applyStyle(`font`,e)}get alignment(){return this.style.alignment}set alignment(e){e!==void 0&&this._applyStyle(`alignment`,e)}get protection(){return this.style.protection}set protection(e){e!==void 0&&this._applyStyle(`protection`,e)}get border(){return this.style.border}set border(e){e!==void 0&&this._applyStyle(`border`,e)}get fill(){return this.style.fill}set fill(e){e!==void 0&&this._applyStyle(`fill`,e)}get hidden(){return!!this._hidden}set hidden(e){this._hidden=e}get outlineLevel(){return this._outlineLevel??0}set outlineLevel(e){this._outlineLevel=e}get collapsed(){return!!(this._outlineLevel&&this._outlineLevel>=(this._worksheet.properties.outlineLevelRow??0))}get model(){let e=[],t=0,n=0;return this._cells.forEach(r=>{if(r){let i=r.model;i&&((!t||t>r.col)&&(t=r.col),n<r.col&&(n=r.col),e.push(i))}}),this.height!=null||e.length?{cells:e,number:this.number,min:t,max:n,height:this.height,customHeight:this.customHeight,style:this.style,hidden:this.hidden,outlineLevel:this.outlineLevel,collapsed:this.collapsed,dyDescent:this.dyDescent}:null}set model(e){if(e.number!==this._number)throw new j(`Invalid row number in model`);this._cells=[];let t;e.cells.forEach(e=>{switch(e.type){case B.Types.Merge:break;default:{let n;if(e.address)n=M.decodeAddress(e.address);else if(t){let{row:e}=t,r=t.col+1;n={row:e,col:r,address:M.encodeAddress(e,r),$col$row:`$${M.n2l(r)}$${e}`}}if(t=n,!n)break;let r=this.getCellEx(n);r.model=e;break}}}),e.height==null?delete this.height:this.height=e.height,e.customHeight==null?delete this.customHeight:this.customHeight=e.customHeight,this.hidden=e.hidden,this.outlineLevel=e.outlineLevel??0,this.dyDescent=e.dyDescent,this.style=e.style?structuredClone(e.style):{}}},$l=class extends D{constructor({workbook:e,id:t,iterator:n,options:r}){super(),this.workbook=e,this.id=t,this.sheetNo=typeof t==`number`?t:parseInt(String(t),10),this.iterator=n,this.options=r||{},this.name=`Sheet${this.id}`,this._columns=[],this._keys=Object.create(null),this._dimensions=new N}destroy(){throw new Pr(`destroy`,`Invalid operation for a streaming reader`)}get dimensions(){return this._dimensions}get columns(){return this._columns}getColumn(e){if(typeof e==`string`){let t=this._keys[e];if(t)return t;e=M.l2n(e)}if(e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new gc(this,t++))}return this._columns[e-1]}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){let t=this._keys;for(let n in t)e(t[n],n)}async read(){try{for await(let e of this.parse())for(let t=0;t<e.length;t++){let n=e[t];this.emit(n.eventType,n.value)}this.emit(`finished`)}catch(e){this.emit(`error`,e)}}async*[Symbol.asyncIterator](){for await(let e of this.parse())for(let t=0;t<e.length;t++){let n=e[t];n.eventType===`row`&&(yield n.value)}}async*parse(){let{iterator:e,options:t}=this,n=!1,r=!1,i=null;switch(t.worksheets){case`emit`:n=!0;break;case`prep`:break;default:break}switch(t.hyperlinks){case`emit`:r=!0;break;case`cache`:this.hyperlinks=i=Object.create(null);break;default:break}if(!n&&!r&&!i)return;let a=r||i!==null,{sharedStrings:o,styles:s,properties:c}=this.workbook,l=!1,u=!1,d=!1,f=null,p=null,m=null,h=null,g=null,_=new ic({position:!1,invalidCharHandling:`skip`});_.on(`opentag`,e=>{if(n)switch(e.name){case`cols`:l=!0,f=[];break;case`sheetData`:u=!0;break;case`col`:l&&f.push({min:parseInt(e.attributes.min,10),max:parseInt(e.attributes.max,10),width:parseFloat(e.attributes.width),styleId:parseInt(e.attributes.style??`0`,10)});break;case`row`:if(u){let t=parseInt(e.attributes.r,10);if(p=new Ql(this,t),e.attributes.ht&&(p.height=parseFloat(e.attributes.ht)),e.attributes.customHeight===`1`&&(p.customHeight=!0),e.attributes.s!==void 0){let t=parseInt(e.attributes.s,10),n=s.getStyleModel(t);n&&(p.style=L(n)??{})}}break;case`c`:if(p){let t=e.attributes.s,n=e.attributes.cm;m={ref:e.attributes.r,s:t===void 0?void 0:parseInt(t,10),t:e.attributes.t,cm:n===void 0?void 0:parseInt(n,10)}}break;case`f`:m&&(h=m.f={text:``});break;case`v`:m&&(h=m.v={text:``});break;case`is`:case`t`:m&&(h=m.v={text:``});break;case`mergeCell`:break;default:break}if(a)switch(e.name){case`hyperlinks`:d=!0;break;case`hyperlink`:if(d){let t=e.attributes.location,n={ref:e.attributes.ref,rId:e.attributes[`r:id`],target:t?t.startsWith(`#`)?t:`#${t}`:void 0};r?(g||=[]).push({eventType:`hyperlink`,value:n}):i[n.ref]=n}break;default:break}}),_.on(`text`,e=>{n&&h&&(h.text+=e)}),_.on(`closetag`,e=>{if(n)switch(e.name){case`cols`:l=!1,this._columns=gc.fromModel(f);break;case`sheetData`:u=!1;break;case`row`:p&&(this._dimensions.expandRow({number:p.number,dimensions:p.dimensions??void 0}),(g||=[]).push({eventType:`row`,value:p})),p=null;break;case`c`:if(p&&m){let e=M.decodeAddress(m.ref),t=p.getCell(e.col);if(m.s!==void 0){let e=s.getStyleModel(m.s);e&&(t.style=L(e)??{})}if(m.f){let e={formula:m.f.text};if(m.v&&(m.t===`str`?e.result=m.v.text:e.result=parseFloat(m.v.text)),m.cm!==void 0){let{workbook:t}=this;t.dynamicArrayCmIndices?t.dynamicArrayCmIndices.has(m.cm)&&(e.isDynamicArray=!0):t.hasDynamicArrayMetadata&&(e.isDynamicArray=!0)}t.value=e}else if(m.v)switch(m.t){case`s`:{let e=parseInt(m.v.text,10);o?t.value=o[e]:t.value={sharedString:e};break}case`inlineStr`:t.value=m.v.text.includes(`_x`)?Pc(m.v.text):m.v.text;break;case`str`:t.value=m.v.text;break;case`e`:t.value={error:m.v.text};break;case`b`:t.value=parseInt(m.v.text,10)!==0;break;default:{let e=typeof t.numFmt==`string`?t.numFmt:t.numFmt?.formatCode;e&&Wc(e)?t.value=jc(parseFloat(m.v.text),c?.model?.date1904):t.value=parseFloat(m.v.text);break}}if(i){let e=i[m.ref];e&&(t.text=t.value,t.value=void 0,t.hyperlink=e)}m=null,h=null}break;default:break}if(a)switch(e.name){case`hyperlinks`:d=!1;break;default:break}});let v=new TextDecoder(`utf-8`,{fatal:!0});for await(let t of e){let e=typeof t==`string`?t:v.decode(t,{stream:!0});_.write(e);let n=g;n&&n.length>0&&(g=null,yield n)}let y=v.decode();y&&_.write(y),_.close();let b=g;b&&b.length>0&&(yield b)}};async function*eu(e){let t=[],n=null,r=e=>{t.push(e),n&&=(n(),null)};e.on(`data`,r);let i=!1,a=()=>{i=!0,n&&=(n(),null)};e.on(`end`,a);let s=!1,c=e=>{s=e,n&&=(n(),null)};e.on(`error`,c);try{for(;!i||t.length>0;){if(t.length===0)e.resume(),await new Promise(e=>{n=e});else{e.pause();let n=t.shift();n!==void 0&&(yield n)}if(s)throw o(s)}}finally{e.removeListener(`data`,r),e.removeListener(`end`,a),e.removeListener(`error`,c)}}let V={contentTypes:`[Content_Types].xml`,rootRels:`_rels/.rels`,docPropsApp:`docProps/app.xml`,docPropsCore:`docProps/core.xml`,xlWorkbook:`xl/workbook.xml`,xlWorkbookRels:`xl/_rels/workbook.xml.rels`,xlSharedStrings:`xl/sharedStrings.xml`,xlStyles:`xl/styles.xml`,xlTheme1:`xl/theme/theme1.xml`,xlFeaturePropertyBag:`xl/featurePropertyBag/featurePropertyBag.xml`,xlMetadata:`xl/metadata.xml`},tu=/^xl\/worksheets\/sheet(\d+)[.]xml$/,nu=/^xl\/worksheets\/_rels\/sheet(\d+)[.]xml[.]rels$/,ru=/^xl\/theme\/[a-zA-Z0-9]+[.]xml$/,iu=/^xl\/media\/([a-zA-Z0-9]+[.][a-zA-Z0-9]{3,4})$/,au=/^xl\/drawings\/(drawing\d+)[.]xml$/,ou=/^xl\/drawings\/_rels\/(drawing\d+)[.]xml[.]rels$/,su=/^xl\/drawings\/(vmlDrawing\d+)[.]vml$/,cu=/^xl\/drawings\/(vmlDrawingHF\d+)[.]vml$/,lu=/^xl\/(?:comments(\d+)|comments\/comment(\d+))[.]xml$/,uu=/^xl\/tables\/(table\d+)[.]xml$/,du=/^xl\/pivotTables\/(pivotTable\d+)[.]xml$/,fu=/^xl\/pivotTables\/_rels\/(pivotTable\d+)[.]xml[.]rels$/,pu=/^xl\/pivotCache\/(pivotCacheDefinition\d+)[.]xml$/,mu=/^xl\/pivotCache\/_rels\/(pivotCacheDefinition\d+)[.]xml[.]rels$/,hu=/^xl\/pivotCache\/(pivotCacheRecords\d+)[.]xml$/,gu=/^xl\/externalLinks\/externalLink(\d+)[.]xml$/,_u=/^xl\/externalLinks\/_rels\/externalLink(\d+)[.]xml[.]rels$/;function vu(e){return e.startsWith(`/`)?e.slice(1):e}function yu(e){let t=tu.exec(e);if(t)return parseInt(t[1],10)}function bu(e){let t=nu.exec(e);if(t)return parseInt(t[1],10)}function xu(e){return e.startsWith(`xl/media/`)}function Su(e){let t=iu.exec(e);return t?t[1]:void 0}function Cu(e){return ru.test(e)}function wu(e){let t=/^xl\/theme\/([a-zA-Z0-9]+)[.]xml$/.exec(e);return t?t[1]:void 0}function Tu(e){return xu(e)||Cu(e)}function Eu(e){let t=au.exec(e);return t?t[1]:void 0}function Du(e){let t=ou.exec(e);return t?t[1]:void 0}function Ou(e){let t=su.exec(e);return t?t[1]:void 0}function ku(e){let t=cu.exec(e);return t?t[1]:void 0}function Au(e){return lu.test(e)}function ju(e){let t=uu.exec(e);return t?t[1]:void 0}function Mu(e){let t=du.exec(e);return t?t[1]:void 0}function Nu(e){let t=fu.exec(e);return t?t[1]:void 0}function Pu(e){let t=pu.exec(e);return t?t[1]:void 0}function Fu(e){let t=mu.exec(e);return t?t[1]:void 0}function Iu(e){let t=hu.exec(e);return t?t[1]:void 0}function Lu(e){let t=gu.exec(e);return t?parseInt(t[1],10):void 0}function Ru(e){let t=_u.exec(e);return t?parseInt(t[1],10):void 0}function H(e){return e.startsWith(`/`)?e:`/${e}`}function zu(e){return`xl/theme/${e}.xml`}function Bu(e){return`xl/media/${e}`}function Vu(e){return`xl/worksheets/sheet${e}.xml`}function Hu(e){return`xl/worksheets/_rels/sheet${e}.xml.rels`}function Uu(e){return`worksheets/sheet${e}.xml`}function Wu(e){return`xl/comments${e}.xml`}function Gu(e){return`xl/${e}.xml`}function Ku(e){return`xl/drawings/vmlDrawing${e}.vml`}function qu(e){return`xl/drawings/vmlDrawingHF${e}.vml`}function Ju(e){return`xl/drawings/_rels/vmlDrawingHF${e}.vml.rels`}function Yu(e){return`xl/tables/${e}`}function Xu(e){return`xl/drawings/${e}.xml`}function Zu(e){return`xl/drawings/_rels/${e}.xml.rels`}function Qu(e){return`xl/pivotCache/pivotCacheDefinition${e}.xml`}function $u(e){return`xl/pivotCache/_rels/pivotCacheDefinition${e}.xml.rels`}function ed(e){return`xl/pivotCache/pivotCacheRecords${e}.xml`}function td(e){return`pivotCacheRecords${e}.xml`}function nd(e){return`xl/pivotTables/pivotTable${e}.xml`}function rd(e){return`xl/pivotTables/${e}.xml`}function id(e){return`xl/pivotTables/_rels/pivotTable${e}.xml.rels`}function ad(e){return`xl/externalLinks/externalLink${e}.xml`}function od(e){return`xl/externalLinks/_rels/externalLink${e}.xml.rels`}function sd(e){return`externalLinks/externalLink${e}.xml`}function cd(e){return`../pivotCache/pivotCacheDefinition${e}.xml`}let ld={workbookStyles:`styles.xml`,workbookSharedStrings:`sharedStrings.xml`,workbookTheme1:`theme/theme1.xml`,workbookFeaturePropertyBag:`featurePropertyBag/featurePropertyBag.xml`,workbookMetadata:`metadata.xml`};function ud(e){return`pivotCache/pivotCacheDefinition${e}.xml`}function dd(e){return`../comments${e}.xml`}function fd(e){return`../drawings/vmlDrawing${e}.vml`}function pd(e){return`../drawings/vmlDrawingHF${e}.vml`}function md(e){return`../drawings/${e}.xml`}function hd(e){return`../pivotTables/pivotTable${e}.xml`}function gd(e){return`../tables/${e}`}function _d(e){return`../media/${e}`}function vd(e){return`xl/ctrlProps/ctrlProp${e}.xml`}function yd(e){return`../ctrlProps/ctrlProp${e}.xml`}function bd(e,t){if(t.startsWith(`/`))return t.slice(1);let n=((e.endsWith(`/`)?e:e+`/`)+t).split(`/`),r=[];for(let e of n)if(e===`.`||e===``)continue;else e===`..`?r.pop():r.push(e);return r.join(`/`)}function xd(e,t){if(t)for(let n in t){let r=t[n];r!==void 0&&(Ec(n),e.push(` ${n}="${wc(String(r))}"`))}}var Sd=class{constructor(){this._parts=[],this._chunks=[],this._stack=[],this._snapshots=[],this._leaf=!1,this._open=!1}_consolidate(){this._snapshots.length>0||this._parts.length>=1e4&&(this._chunks.push(this._parts.join(``)),this._parts.length=0)}get depth(){return this._stack.length}get currentElement(){return this._stack.length>0?this._stack[this._stack.length-1]:void 0}get cursor(){return this._chunks.length*1e4+this._parts.length}openXml(e){let t=e?{...z,...e}:z;this._parts.push(`<?xml`),xd(this._parts,t),this._parts.push(`?>
|
|
116
|
+
`)}openNode(e,t){Ec(e),this._open&&this._parts.push(`>`),this._stack.push(e);let n=`<`+e;if(t)for(let e in t){let r=t[e];r!==void 0&&(Ec(e),n+=` ${e}="${wc(String(r))}"`)}this._parts.push(n),this._leaf=!0,this._open=!0}addAttribute(e,t){if(!this._open)throw new qs(`add attribute`,`no element is open`);Ec(e),this._parts.push(` ${e}="${wc(String(t))}"`)}addAttributes(e){if(!this._open)throw new qs(`add attributes`,`no element is open`);xd(this._parts,e)}writeText(e){this._open&&=(this._parts.push(`>`),!1),this._leaf=!1,this._parts.push(R(String(e)))}writeRaw(e){this._open&&=(this._parts.push(`>`),!1),this._leaf=!1,this._parts.push(e)}writeCData(e){this._open&&=(this._parts.push(`>`),!1),this._leaf=!1,this._parts.push(Dc(e))}writeComment(e){this._open&&=(this._parts.push(`>`),!1),this._leaf=!1,Oc(e),this._parts.push(`<!--${e}-->`)}closeNode(){let e=this._stack.pop();if(e===void 0)throw new qs(`close node`,`no element is open`);this._leaf?this._parts.push(`/>`):this._parts.push(`</${e}>`),this._open=!1,this._leaf=!1,this._consolidate()}leafNode(e,t,n){Ec(e),this._open&&=(this._parts.push(`>`),!1);let r=`<`+e;if(t)for(let e in t){let n=t[e];n!==void 0&&(Ec(e),r+=` ${e}="${wc(String(n))}"`)}n===void 0?r+=`/>`:r+=`>`+R(String(n))+`</`+e+`>`,this._parts.push(r),this._leaf=!1}closeAll(){for(;this._stack.length>0;)this.closeNode()}toString(){return this._chunks.length===0?this._parts.join(``):this._chunks.join(``)+this._parts.join(``)}get xml(){return this.toString()}save(){this._snapshots.push({partsLength:this._parts.length,chunksLength:this._chunks.length,stackLength:this._stack.length,leaf:this._leaf,open:this._open})}commit(){if(this._snapshots.length===0)throw new qs(`commit`,`no snapshot to commit`);this._snapshots.pop()}rollback(){if(this._snapshots.length===0)throw new qs(`rollback`,`no snapshot to rollback`);let e=this._snapshots.pop();this._parts.length=e.partsLength,this._chunks.length=e.chunksLength,this._stack.length=e.stackLength,this._leaf=e.leaf,this._open=e.open}reset(){this._parts=[],this._chunks=[],this._stack=[],this._snapshots=[],this._leaf=!1,this._open=!1}};let Cd=new Set([`ep`,`cp`,`dc`,`dcterms`,`dcmitype`,`vt`]);function wd(e,t){let n=!1;for(let e in t)if(e.length>6&&e.startsWith(`xmlns:`)){let r=e.slice(6);if(t[e]===`http://schemas.openxmlformats.org/spreadsheetml/2006/main`)return r;Cd.has(r)&&(n=!0)}if(n)return null;let r=e.indexOf(`:`);return r!==-1&&Cd.has(e.slice(0,r))?null:void 0}function Td(e,t){let n=e.indexOf(`:`);if(n===-1)return e;let r=e.slice(0,n);return r===t||Cd.has(r)?e.slice(n+1):e}var U=class e{prepare(e,t){}render(e,t){}parseOpen(e){}parseText(e){}parseClose(e){return!1}reconcile(e,t){}reset(){this.model=void 0,this.map&&Object.values(this.map).forEach(t=>{t instanceof e?t.reset():t.xform&&t.xform.reset()})}mergeModel(e){this.model=Object.assign(this.model||{},e)}async parse(e){let t=!1,n,r=0,i=null;for await(let a of e)if(!t){for(let{eventType:e,value:o}of a)if(e===`opentag`){if(r===1){this.parseOpen(o);continue}if(r===0){let e=wd(o.name,o.attributes);if(e===void 0){r=1,this.parseOpen(o);continue}r=2,i=e}let e=Td(o.name,i);e===o.name?this.parseOpen(o):this.parseOpen({name:e,attributes:o.attributes,isSelfClosing:o.isSelfClosing})}else if(e===`text`)this.parseText(o);else if(e===`closetag`){if(r===1){if(!this.parseClose(o.name)){t=!0,n=this.model;break}continue}if(!this.parseClose(Td(o.name,i))){t=!0,n=this.model;break}}}return t?n:this.model}async parseStreamDirect(e){let t=new ic({invalidCharHandling:`skip`}),n=new TextDecoder(`utf-8`,{fatal:!0}),r=!1,i,a=0,s=null,c;t.on(`error`,e=>{r||(c=e)}),t.on(`opentag`,e=>{if(r)return;if(a===1){this.parseOpen(e);return}if(a===0){let t=wd(e.name,e.attributes);if(t===void 0){a=1,this.parseOpen(e);return}a=2,s=t}let t=Td(e.name,s);t===e.name?this.parseOpen(e):this.parseOpen({name:t,attributes:e.attributes,isSelfClosing:e.isSelfClosing})}),t.on(`text`,e=>{r||this.parseText(e)}),t.on(`closetag`,e=>{if(r)return;let t=a===2?Td(e.name,s):e.name;this.parseClose(t)||(r=!0,i=this.model)});for await(let i of e){if(r)continue;let e=typeof i==`string`?i:n.decode(i,{stream:!0});if(t.write(e),c)throw o(c)}if(!r){let e=n.decode();if(e&&(t.write(e),c)||(t.close(),c))throw o(c)}return r?i:this.model}async parseStream(e){return this.parseStreamDirect(e)}get xml(){return this.toXml(this.model)}toXml(e){let t=new Sd;return this.render(t,e),t.xml}static toAttribute(e,t,n=!1){if(e===void 0){if(n)return t}else if(n||e!==t)return e.toString()}static toStringAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toStringValue(e,t){return e===void 0?t:e}static toBoolAttribute(e,t,n=!1){if(e===void 0){if(n)return t}else if(n||e!==t)return e?`1`:`0`}static toBoolValue(e,t){return e===void 0?t:e===`1`}static toIntAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toIntValue(e,t){return e===void 0?t:parseInt(e,10)}static toFloatAttribute(t,n,r=!1){return e.toAttribute(t,n,r)}static toFloatValue(e,t){return e===void 0?t:parseFloat(e)}},Ed=class extends U{constructor(){super(),this._parsedText=[]}render(e,t){e.openNode(`definedName`,{name:t.name,localSheetId:t.localSheetId}),t.kind===`opaque`&&t.rawText?e.writeText(t.rawText):e.writeText(t.ranges.join(`,`)),e.closeNode()}parseOpen(e){switch(e.name){case`definedName`:return this._parsedName=e.attributes.name,this._parsedLocalSheetId=e.attributes.localSheetId,this._parsedText=[],!0;default:return!1}}parseText(e){this._parsedText.push(e)}parseClose(){let e=this._parsedText.join(``),t={name:this._parsedName,ranges:[],rawText:e.trim()||void 0};return this._parsedLocalSheetId!==void 0&&(t.localSheetId=parseInt(this._parsedLocalSheetId,10)),this.model=t,!1}},Dd=class extends U{render(e,t){e.leafNode(`externalReference`,{"r:id":t.rId})}parseOpen(e){return e.name===`externalReference`?(this.model={rId:e.attributes[`r:id`]??``},!0):!1}parseText(){}parseClose(){return!1}};let Od=new Set([`visible`,`hidden`,`veryHidden`]);function kd(e){let t=e||`visible`;return Od.has(t)?t:`visible`}var Ad=class extends U{render(e,t){e.leafNode(`sheet`,{name:t.name,sheetId:t.id,state:t.state===`visible`?void 0:t.state,"r:id":t.rId})}parseOpen(e){return e.name===`sheet`?(this.model={name:e.attributes.name,id:parseInt(e.attributes.sheetId,10),state:kd(e.attributes.state),rId:e.attributes[`r:id`]},!0):!1}parseText(){}parseClose(){return!1}},jd=class extends U{render(e,t){e.leafNode(`calcPr`,{calcId:171027,fullCalcOnLoad:t.fullCalcOnLoad?1:void 0,iterate:t.iterate?1:void 0,iterateCount:t.iterateCount===void 0?void 0:t.iterateCount,iterateDelta:t.iterateDelta===void 0?void 0:t.iterateDelta})}parseOpen(e){if(e.name===`calcPr`){let t=e.attributes??{};return this.model={fullCalcOnLoad:t.fullCalcOnLoad===`1`,iterate:t.iterate===`1`?!0:void 0,iterateCount:t.iterateCount===void 0?void 0:parseInt(t.iterateCount,10),iterateDelta:t.iterateDelta===void 0?void 0:parseFloat(t.iterateDelta)},!0}return!1}parseText(){}parseClose(){return!1}},Md=class extends U{render(e,t){e.leafNode(`pivotCache`,{cacheId:t.cacheId,"r:id":t.rId})}parseOpen(e){return e.name===`pivotCache`?(this.model={cacheId:e.attributes.cacheId,rId:e.attributes[`r:id`]},!0):!1}parseText(){}parseClose(){return!1}},Nd=class extends U{render(e,t){e.leafNode(`workbookPr`,{date1904:t.date1904?1:void 0,filterPrivacy:1})}parseOpen(e){return e.name===`workbookPr`?(this.model={date1904:e.attributes.date1904===`1`},!0):!1}parseText(){}parseClose(){return!1}},Pd=class extends U{get tag(){return`workbookProtection`}render(e,t){if(!t)return;let n={};t.lockStructure&&(n.lockStructure=`1`),t.lockWindows&&(n.lockWindows=`1`),t.lockRevision&&(n.lockRevision=`1`),t.workbookPassword&&(n.workbookPassword=t.workbookPassword),t.revisionsPassword&&(n.revisionsPassword=t.revisionsPassword),t.algorithmName&&(n.workbookAlgorithmName=t.algorithmName,n.workbookHashValue=t.hashValue,n.workbookSaltValue=t.saltValue,n.workbookSpinCount=t.spinCount?.toString()),Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}parseOpen(e){switch(e.name){case this.tag:{let t=e.attributes;return this.model={lockStructure:t.lockStructure===`1`||void 0,lockWindows:t.lockWindows===`1`||void 0,lockRevision:t.lockRevision===`1`||void 0,workbookPassword:t.workbookPassword||void 0,revisionsPassword:t.revisionsPassword||void 0},t.workbookAlgorithmName&&(this.model.algorithmName=t.workbookAlgorithmName,this.model.hashValue=t.workbookHashValue,this.model.saltValue=t.workbookSaltValue,this.model.spinCount=t.workbookSpinCount?parseInt(t.workbookSpinCount,10):void 0),!0}default:return!1}}parseText(){}parseClose(){return!1}},Fd=class extends U{render(e,t){let n={xWindow:t.x??0,yWindow:t.y??0,windowWidth:t.width??12e3,windowHeight:t.height??24e3,firstSheet:t.firstSheet,activeTab:t.activeTab};t.visibility&&t.visibility!==`visible`&&(n.visibility=t.visibility),e.leafNode(`workbookView`,n)}parseOpen(e){if(e.name===`workbookView`){let t=this.model={},n=function(e,n,r){t[e]=n===void 0?r:n},r=function(e,n,r){let i=n===void 0?r:parseInt(n,10);i!==void 0&&(t[e]=i)};return r(`x`,e.attributes.xWindow,0),r(`y`,e.attributes.yWindow,0),r(`width`,e.attributes.windowWidth,25e3),r(`height`,e.attributes.windowHeight,1e4),n(`visibility`,e.attributes.visibility,`visible`),r(`activeTab`,e.attributes.activeTab,void 0),r(`firstSheet`,e.attributes.firstSheet,void 0),!0}return!1}parseText(){}parseClose(){return!1}},W=class extends U{constructor(e){super(),this.tag=e.tag,this.always=!!e.always,this.count=e.count,this.empty=e.empty,this.$count=e.$count??`count`,this.$=e.$,this.childXform=e.childXform,this.maxItems=e.maxItems}prepare(e,t){let{childXform:n}=this;e&&e.forEach((e,r)=>{t.index=r,n.prepare(e,t)})}render(e,t){if(this.always||t&&t.length){e.openNode(this.tag,this.$),this.count&&e.addAttribute(this.$count,t?.length??0);let{childXform:n}=this;(t??[]).forEach((t,r)=>{n.render(e,t,r)}),e.closeNode()}else this.empty&&e.leafNode(this.tag)}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model=[],!0):this.childXform.parseOpen(e)?(this.parser=this.childXform,!0):!1}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)&&(this.model.push(this.parser.model),this.parser=void 0,this.maxItems&&this.model.length>this.maxItems))throw new zr(this.childXform.tag,this.maxItems);return!0}return!1}reconcile(e,t){if(e){let{childXform:n}=this;e.forEach(e=>{n.reconcile(e,t)})}}reset(){super.reset(),this.childXform&&this.childXform.reset()}};function Id(e,t){e.openNode(t.tag,t.$),t.c&&t.c.forEach(t=>{Id(e,t)}),t.t&&e.writeText(t.t),e.closeNode()}var Ld=class extends U{constructor(e){super(),this._model=e}render(e){if(!this._xml){let e=new Sd;Id(e,this._model),this._xml=e.xml}e.writeRaw(this._xml)}parseOpen(){return!0}parseText(){}parseClose(e){switch(e){case this._model.tag:return!1;default:return!0}}},Rd=class e extends U{constructor(){super(),this.map={fileVersion:e.STATIC_XFORMS.fileVersion,workbookPr:new Nd,workbookProtection:new Pd,bookViews:new W({tag:`bookViews`,count:!1,childXform:new Fd}),sheets:new W({tag:`sheets`,count:!1,childXform:new Ad}),definedNames:new W({tag:`definedNames`,count:!1,childXform:new Ed}),calcPr:new jd,pivotCaches:new W({tag:`pivotCaches`,count:!1,childXform:new Md}),externalReferences:new W({tag:`externalReferences`,count:!1,childXform:new Dd})}}prepare(e){e.sheets=e.worksheets;let t=[],n=0;e.sheets.forEach(e=>{if(e.pageSetup&&e.pageSetup.printArea&&e.pageSetup.printArea.split(`&&`).forEach(r=>{let i=r.split(`:`),a=i[0],o=i[1]??a,s={name:`_xlnm.Print_Area`,ranges:[`'${e.name}'!$${a}:$${o}`],localSheetId:n};t.push(s)}),e.pageSetup&&(e.pageSetup.printTitlesRow||e.pageSetup.printTitlesColumn)){let r=[];if(e.pageSetup.printTitlesColumn){let t=e.pageSetup.printTitlesColumn.split(`:`),n=t[0],i=t[1]??n;r.push(`'${e.name}'!$${n}:$${i}`)}if(e.pageSetup.printTitlesRow){let t=e.pageSetup.printTitlesRow.split(`:`),n=t[0],i=t[1]??n;r.push(`'${e.name}'!$${n}:$${i}`)}let i={name:`_xlnm.Print_Titles`,ranges:r,localSheetId:n};t.push(i)}n++}),t.length&&(e.definedNames=e.definedNames.concat(t)),(e.media??[]).forEach((e,t)=>{e.name=e.type+(t+1)})}render(t,n){t.openXml(z),t.openNode(`workbook`,e.WORKBOOK_ATTRIBUTES),this.map.fileVersion.render(t),this.map.workbookPr.render(t,n.properties),this.map.workbookProtection.render(t,n.protection),this.map.bookViews.render(t,n.views),this.map.sheets.render(t,n.sheets),this.map.definedNames.render(t,n.definedNames),this.map.calcPr.render(t,n.calcProperties);let r=n.pivotTables??[],i=new Set,a=r.filter(e=>i.has(e.cacheId)?!1:(i.add(e.cacheId),!0));this.map.pivotCaches.render(t,a);let o=n.externalLinks??[];if(o.length>0){let e=o.map(e=>({rId:e.rId}));this.map.externalReferences.render(t,e)}t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`workbook`:return!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`workbook`:return this.model={sheets:this.map.sheets.model,properties:this.map.workbookPr.model||{},protection:this.map.workbookProtection.model,views:this.map.bookViews.model,calcProperties:this.map.calcPr.model||{}},this.map.definedNames.model&&(this.model.definedNames=this.map.definedNames.model),this.map.pivotCaches.model&&this.map.pivotCaches.model.length>0&&(this.model.pivotCaches=this.map.pivotCaches.model),this.map.externalReferences.model&&this.map.externalReferences.model.length>0&&(this.model.externalReferences=this.map.externalReferences.model),!1;default:return!0}}reconcile(e){let t=(e.workbookRels??[]).reduce((e,t)=>(e[t.Id]=t,e),{}),n=[],r,i=0;(e.sheets??[]).forEach(a=>{let o=t[a.rId];o&&(r=e.worksheetHash[`xl/${o.Target.replace(/^(\s|\/xl\/)+/,``)}`],r&&(r.name=a.name,r.id=a.id,r.state=a.state,n[i++]=r))});let a=[];e.definedNames&&e.definedNames.forEach(e=>{let t=e.ranges?.length>0?e.ranges:e.rawText?[e.rawText]:[];if(e.name===`_xlnm.Print_Area`){if(r=n[e.localSheetId],r&&t.length>0){r.pageSetup||={};let e=M.decodeEx(t[0]);r.pageSetup.printArea=r.pageSetup.printArea?`${r.pageSetup.printArea}&&${e.dimensions}`:e.dimensions}}else if(e.name===`_xlnm.Print_Titles`){if(r=n[e.localSheetId],r&&t.length>0){r.pageSetup||={};let e=t.join(`,`),n=/\$/g,i=e.match(/\$\d+:\$\d+/);if(i&&i.length){let e=i[0];r.pageSetup.printTitlesRow=e.replace(n,``)}let a=e.match(/\$[A-Z]+:\$[A-Z]+/);if(a&&a.length){let e=a[0];r.pageSetup.printTitlesColumn=e.replace(n,``)}}}else a.push(e)}),e.definedNames=a,e.media.forEach((e,t)=>{e.index=t})}static{this.WORKBOOK_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`x15`,"xmlns:x15":`http://schemas.microsoft.com/office/spreadsheetml/2010/11/main`}}static{this.STATIC_XFORMS={fileVersion:new Ld({tag:`fileVersion`,$:{appName:`xl`,lastEdited:5,lowestEdited:5,rupBuild:9303}})}}},zd=class extends U{constructor(...e){super(...e),this._metadataTypeNames=[],this._cellMetadataTypeRefs=[],this._inCellMetadata=!1,this._currentRcType=void 0}get tag(){return`metadata`}render(e,t){!t||t.dynamicArrayCount<=0||(e.openXml(z),e.openNode(`metadata`,{xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:xda":`http://schemas.microsoft.com/office/spreadsheetml/2017/dynamicarray`}),e.openNode(`metadataTypes`,{count:`1`}),e.leafNode(`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`,adjust:`1`,cellMeta:`1`}),e.closeNode(),e.openNode(`futureMetadata`,{name:`XLDAPR`,count:`1`}),e.openNode(`bk`),e.openNode(`extLst`),e.openNode(`ext`,{uri:`{bdbb8cdc-fa1e-496e-a857-3c3f30c029c3}`}),e.leafNode(`xda:dynamicArrayProperties`,{fDynamic:`1`,fCollapsed:`0`}),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode(),e.openNode(`cellMetadata`,{count:`1`}),e.openNode(`bk`),e.leafNode(`rc`,{t:`1`,v:`0`}),e.closeNode(),e.closeNode(),e.closeNode())}reset(){this._metadataTypeNames=[],this._cellMetadataTypeRefs=[],this._inCellMetadata=!1,this._currentRcType=void 0}parseOpen(e){switch(e.name){case`metadata`:return this.reset(),!0;case`metadataType`:return this._metadataTypeNames.push(e.attributes.name||``),!0;case`cellMetadata`:return this._inCellMetadata=!0,!0;case`bk`:return this._inCellMetadata&&(this._currentRcType=void 0),!0;case`rc`:return this._inCellMetadata&&e.attributes.t!==void 0&&(this._currentRcType=parseInt(e.attributes.t,10)),!0;case`metadataTypes`:case`futureMetadata`:case`extLst`:case`ext`:case`xda:dynamicArrayProperties`:return!0;default:return!1}}parseText(){}parseClose(e){switch(e){case`bk`:return this._inCellMetadata&&(this._cellMetadataTypeRefs.push(this._currentRcType??0),this._currentRcType=void 0),!0;case`cellMetadata`:return this._inCellMetadata=!1,!0;case`metadata`:{let e=new Set;for(let t=0;t<this._cellMetadataTypeRefs.length;t++){let n=this._cellMetadataTypeRefs[t];this._metadataTypeNames[n-1]===`XLDAPR`&&e.add(t+1)}return this.model={hasDynamicArrays:e.size>0,dynamicArrayCmIndices:e},!1}default:return!0}}},Bd=class extends U{render(e,t){e.leafNode(`Relationship`,t)}parseOpen(e){switch(e.name){case`Relationship`:return this.model=e.attributes,!0;default:return!1}}parseText(){}parseClose(){return!1}},Vd=class e extends U{constructor(){super(),this.map={Relationship:new Bd}}render(t,n){let r=n||this._values;t.openXml(z),t.openNode(`Relationships`,e.RELATIONSHIPS_ATTRIBUTES),r.forEach(e=>{this.map.Relationship.render(t,e)}),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`Relationships`:return this.model=[],!0;default:if(this.parser=this.map[e.name],this.parser)return this.parser.parseOpen(e),!0;throw new jr(`Relationships`,`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.push(this.parser.model),this.parser=void 0),!0;switch(e){case`Relationships`:return!1;default:throw new jr(`Relationships`,`Unexpected xml node in parseClose: ${e}`)}}static{this.RELATIONSHIPS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/package/2006/relationships`}}},Hd=class extends U{constructor(e){super(),this.name=e??`color`}get tag(){return this.name}render(e,t){return t?(e.openNode(this.name),t.argb?e.addAttribute(`rgb`,t.argb):t.theme===void 0?t.indexed===void 0?e.addAttribute(`auto`,`1`):e.addAttribute(`indexed`,t.indexed):(e.addAttribute(`theme`,t.theme),t.tint!==void 0&&e.addAttribute(`tint`,t.tint)),e.closeNode(),!0):!1}parseOpen(e){return e.name===this.name?(e.attributes.rgb?this.model={argb:e.attributes.rgb}:e.attributes.theme?(this.model={theme:parseInt(e.attributes.theme,10)},e.attributes.tint&&(this.model.tint=parseFloat(e.attributes.tint))):e.attributes.indexed?this.model={indexed:parseInt(e.attributes.indexed,10)}:this.model=void 0,!0):!1}parseText(){}parseClose(){return!1}},Ud=class e extends U{constructor(e){super(),this.name=e,this.map={color:new Hd}}get tag(){return this.name}render(e,t,n){let r=t&&t.color||n||this.defaultColor;e.openNode(this.name),t&&t.style&&(e.addAttribute(`style`,t.style),r&&this.map.color.render(e,r)),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.name:{let{style:t}=e.attributes;return t?this.model={style:t}:this.model=void 0,!0}case`color`:return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(e===this.name&&this.map.color.model&&(this.model||={},this.model.color=this.map.color.model),!1)}validStyle(t){return e.validStyleValues[t]}static{this.validStyleValues=[`thin`,`dashed`,`dotted`,`dashDot`,`hair`,`dashDotDot`,`slantDashDot`,`mediumDashed`,`mediumDashDotDot`,`mediumDashDot`,`medium`,`double`,`thick`].reduce((e,t)=>(e[t]=!0,e),{})}},Wd=class extends U{constructor(){super(),this.map={top:new Ud(`top`),left:new Ud(`left`),bottom:new Ud(`bottom`),right:new Ud(`right`),diagonal:new Ud(`diagonal`)}}render(e,t){let{color:n}=t;e.openNode(`border`),t.diagonal&&t.diagonal.style&&(t.diagonal.up&&e.addAttribute(`diagonalUp`,`1`),t.diagonal.down&&e.addAttribute(`diagonalDown`,`1`));let r=(r,i)=>{let a=r;a&&!a.color&&t.color&&(a={...a,color:t.color}),i.render(e,a,n)};r(t.left,this.map.left),r(t.right,this.map.right),r(t.top,this.map.top),r(t.bottom,this.map.bottom),r(t.diagonal,this.map.diagonal),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`border`:return this.reset(),this.diagonalUp=Gc(e.attributes.diagonalUp),this.diagonalDown=Gc(e.attributes.diagonalDown),!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if(e===`border`){let e={},t=!1,n=(n,r,i)=>{r&&(i&&Object.assign(r,i),e[n]=r,t=!0)};n(`left`,this.map.left.model),n(`right`,this.map.right.model),n(`top`,this.map.top.model),n(`bottom`,this.map.bottom.model),n(`diagonal`,this.map.diagonal.model,{up:this.diagonalUp,down:this.diagonalDown}),this.model=t?e:void 0}return!1}};let Gd={ReadingOrder:{LeftToRight:1,RightToLeft:2}},Kd={horizontalValues:[`left`,`center`,`right`,`fill`,`centerContinuous`,`distributed`,`justify`].reduce((e,t)=>(e[t]=!0,e),{}),horizontal(e){return this.horizontalValues[e]?e:void 0},verticalValues:[`top`,`middle`,`bottom`,`distributed`,`justify`].reduce((e,t)=>(e[t]=!0,e),{}),vertical(e){return e===`middle`?`center`:this.verticalValues[e]?e:void 0},wrapText(e){return e?!0:void 0},shrinkToFit(e){return e?!0:void 0},textRotation(e){switch(e){case`vertical`:return e;default:{let t=zc(e);return t!==void 0&&t>=-90&&t<=90?t:void 0}}},indent(e){let t=zc(e);return Math.max(0,t)},readingOrder(e){switch(e){case`ltr`:return Gd.ReadingOrder.LeftToRight;case`rtl`:return Gd.ReadingOrder.RightToLeft;default:return}}},qd={toXml(e){let t=Kd.textRotation(e);if(t){if(t===`vertical`)return 255;let e=Math.round(t);if(e>=0&&e<=90)return e;if(e<0&&e>=-90)return 90-e}},toModel(e){let t=zc(e);if(t!==void 0){if(t===255)return`vertical`;if(t>=0&&t<=90)return t;if(t>90&&t<=180)return 90-t}}};var Jd=class extends U{get tag(){return`alignment`}render(e,t){let n={};function r(e,t){t&&(n[e]=t)}r(`horizontal`,Kd.horizontal(t.horizontal)),r(`vertical`,Kd.vertical(t.vertical)),r(`wrapText`,Kd.wrapText(t.wrapText)?`1`:!1),r(`shrinkToFit`,Kd.shrinkToFit(t.shrinkToFit)?`1`:!1),r(`indent`,Kd.indent(t.indent)),r(`textRotation`,qd.toXml(t.textRotation)),r(`readingOrder`,Kd.readingOrder(t.readingOrder)),Object.keys(n).length>0&&e.leafNode(`alignment`,n)}parseOpen(e){let t={},n=!1;function r(e,r,i){e&&(t[r]=i,n=!0)}r(e.attributes.horizontal,`horizontal`,e.attributes.horizontal),r(e.attributes.vertical,`vertical`,e.attributes.vertical===`center`?`middle`:e.attributes.vertical),r(e.attributes.wrapText,`wrapText`,Gc(e.attributes.wrapText)),r(e.attributes.shrinkToFit,`shrinkToFit`,Gc(e.attributes.shrinkToFit)),r(e.attributes.indent,`indent`,parseInt(e.attributes.indent,10)),r(e.attributes.textRotation,`textRotation`,qd.toModel(e.attributes.textRotation)),r(e.attributes.readingOrder,`readingOrder`,e.attributes.readingOrder===`2`?`rtl`:`ltr`),this.model=n?t:null}parseText(){}parseClose(){return!1}},Yd=class extends U{constructor(){super(),this.map={color:new Hd}}get tag(){return`stop`}render(e,t){e.openNode(`stop`),e.addAttribute(`position`,t.position),this.map.color.render(e,t.color),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`stop`:return this.model={position:parseFloat(e.attributes.position)},!0;case`color`:return this.parser=this.map.color,this.parser.parseOpen(e),!0;default:return!1}}parseText(){}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.color=this.parser.model,this.parser=void 0),!0):!1}},Xd=class extends U{constructor(){super(),this.map={fgColor:new Hd(`fgColor`),bgColor:new Hd(`bgColor`)}}get name(){return`pattern`}get tag(){return`patternFill`}render(e,t){e.openNode(`patternFill`),e.addAttribute(`patternType`,t.pattern),t.fgColor&&this.map.fgColor.render(e,t.fgColor),t.bgColor&&this.map.bgColor.render(e,t.bgColor),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`patternFill`:return this.model={type:`pattern`,pattern:e.attributes.patternType},!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser.model&&(this.model[e]=this.parser.model),this.parser=void 0),!0):!1}},Zd=class extends U{constructor(){super(),this.map={stop:new Yd}}get name(){return`gradient`}get tag(){return`gradientFill`}render(e,t){switch(e.openNode(`gradientFill`),t.gradient){case`angle`:e.addAttribute(`degree`,t.degree);break;case`path`:e.addAttribute(`type`,`path`),t.center.left&&(e.addAttribute(`left`,t.center.left),t.center.right===void 0&&e.addAttribute(`right`,t.center.left)),t.center.right&&e.addAttribute(`right`,t.center.right),t.center.top&&(e.addAttribute(`top`,t.center.top),t.center.bottom===void 0&&e.addAttribute(`bottom`,t.center.top)),t.center.bottom&&e.addAttribute(`bottom`,t.center.bottom);break;default:break}let n=this.map.stop;t.stops.forEach(t=>{n.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`gradientFill`:{let t=this.model={stops:[]};return e.attributes.degree?(t.gradient=`angle`,t.degree=parseInt(e.attributes.degree,10)):e.attributes.type===`path`&&(t.gradient=`path`,t.center={left:e.attributes.left?parseFloat(e.attributes.left):0,top:e.attributes.top?parseFloat(e.attributes.top):0},e.attributes.right!==e.attributes.left&&(t.center.right=e.attributes.right?parseFloat(e.attributes.right):0),e.attributes.bottom!==e.attributes.top&&(t.center.bottom=e.attributes.bottom?parseFloat(e.attributes.bottom):0)),!0}case`stop`:return this.parser=this.map.stop,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model.stops.push(this.parser.model),this.parser=void 0),!0):!1}},Qd=class e extends U{constructor(){super(),this.map={patternFill:new Xd,gradientFill:new Zd}}get tag(){return`fill`}render(e,t){t.type!==`pattern`&&t.type!==`gradient`||(e.openNode(`fill`),t.type===`pattern`?this.map.patternFill.render(e,t):this.map.gradientFill.render(e,t),e.closeNode())}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`fill`:return this.model={},!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.model=this.parser.model,this.model.type=this.parser.name,this.parser=void 0),!0):!1}validStyle(t){return e.validPatternValues[t]}static{this.validPatternValues=[`none`,`solid`,`darkVertical`,`darkGray`,`mediumGray`,`lightGray`,`gray125`,`gray0625`,`darkHorizontal`,`darkVertical`,`darkDown`,`darkUp`,`darkGrid`,`darkTrellis`,`lightHorizontal`,`lightVertical`,`lightDown`,`lightUp`,`lightGrid`,`lightTrellis`,`lightGrid`].reduce((e,t)=>(e[t]=!0,e),{})}static{this.StopXform=Yd}static{this.PatternFillXform=Xd}static{this.GradientFillXform=Zd}},$d=class extends U{constructor(e){super(),this.tag=e.tag,this.attr=e.attr}render(e,t){t&&(e.openNode(this.tag),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.model=!0)}parseText(){}parseClose(){return!1}},ef=class extends U{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.zero=e.zero,this.text=[]}render(e,t){(t||this.zero)&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){return e.name===this.tag?(this.attr?this.model=parseInt(e.attributes[this.attr],10):this.text=[],!0):!1}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=parseInt(this.text.join(``)||`0`,10)),!1}},G=class extends U{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.text=[]}render(e,t){t!==void 0&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,t):e.writeText(t),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=e.attributes[this.attr]:this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this.text.join(``)),!1}},tf=class e extends U{static{this.Attributes={single:{},double:{val:`double`},singleAccounting:{val:`singleAccounting`},doubleAccounting:{val:`doubleAccounting`}}}constructor(e){super(),this.model=e}get tag(){return`u`}render(t,n){if(n||=this.model,n===!0)t.leafNode(`u`);else{let r=e.Attributes[n];r&&t.leafNode(`u`,r)}}parseOpen(e){e.name===`u`&&(this.model=e.attributes.val||!0)}parseText(){}parseClose(){return!1}},nf=class e extends U{constructor(t){super(),this.options=t||e.OPTIONS;let n=[{tag:`b`,prop:`bold`,xform:new $d({tag:`b`,attr:`val`})},{tag:`i`,prop:`italic`,xform:new $d({tag:`i`,attr:`val`})},{tag:`u`,prop:`underline`,xform:new tf},{tag:`strike`,prop:`strike`,xform:new $d({tag:`strike`,attr:`val`})},{tag:`condense`,prop:`condense`,xform:new $d({tag:`condense`,attr:`val`})},{tag:`extend`,prop:`extend`,xform:new $d({tag:`extend`,attr:`val`})},{tag:`outline`,prop:`outline`,xform:new $d({tag:`outline`,attr:`val`})},{tag:`shadow`,prop:`shadow`,xform:new $d({tag:`shadow`,attr:`val`})},{tag:`sz`,prop:`size`,xform:new ef({tag:`sz`,attr:`val`})},{tag:`color`,prop:`color`,xform:new Hd},{tag:this.options.fontNameTag,prop:`name`,xform:new G({tag:this.options.fontNameTag,attr:`val`})},{tag:`family`,prop:`family`,xform:new ef({tag:`family`,attr:`val`})},{tag:`scheme`,prop:`scheme`,xform:new G({tag:`scheme`,attr:`val`})},{tag:`charset`,prop:`charset`,xform:new ef({tag:`charset`,attr:`val`})},{tag:`vertAlign`,prop:`vertAlign`,xform:new G({tag:`vertAlign`,attr:`val`})}];this.map=Object.fromEntries(n.map(e=>[e.tag,{prop:e.prop,xform:e.xform}])),this.renderOrder=n.map(e=>e.tag)}get tag(){return this.options.tagName}render(e,t){let{map:n,renderOrder:r}=this;e.openNode(this.options.tagName),r.forEach(r=>{n[r].xform.render(e,t[n[r].prop])}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(this.map[e.name])return this.parser=this.map[e.name].xform,this.parser.parseOpen(e);switch(e.name){case this.options.tagName:return this.model={},!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser&&!this.parser.parseClose(e)){let t=this.map[e];return this.parser.model&&(this.model[t.prop]=this.parser.model),this.parser=void 0,!0}switch(e){case this.options.tagName:return!1;default:return!0}}static{this.OPTIONS={tagName:`font`,fontNameTag:`name`}}};let rf={0:{f:`General`},1:{f:`0`},2:{f:`0.00`},3:{f:`#,##0`},4:{f:`#,##0.00`},9:{f:`0%`},10:{f:`0.00%`},11:{f:`0.00E+00`},12:{f:`# ?/?`},13:{f:`# ??/??`},14:{f:`mm-dd-yy`},15:{f:`d-mmm-yy`},16:{f:`d-mmm`},17:{f:`mmm-yy`},18:{f:`h:mm AM/PM`},19:{f:`h:mm:ss AM/PM`},20:{f:`h:mm`},21:{f:`h:mm:ss`},22:{f:`m/d/yy h:mm`},27:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},28:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},29:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},30:{"zh-tw":`m/d/yy `,"zh-cn":`m-d-yy`,"ja-jp":`m/d/yy`,"ko-kr":`mm-dd-yy`},31:{"zh-tw":`yyyy"年"m"月"d"日"`,"zh-cn":`yyyy"年"m"月"d"日"`,"ja-jp":`yyyy"年"m"月"d"日"`,"ko-kr":`yyyy"년" mm"월" dd"일"`},32:{"zh-tw":`hh"時"mm"分"`,"zh-cn":`h"时"mm"分"`,"ja-jp":`h"時"mm"分"`,"ko-kr":`h"시" mm"분"`},33:{"zh-tw":`hh"時"mm"分"ss"秒"`,"zh-cn":`h"时"mm"分"ss"秒"`,"ja-jp":`h"時"mm"分"ss"秒"`,"ko-kr":`h"시" mm"분" ss"초"`},34:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`上午/下午 h"时"mm"分"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},35:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`上午/下午 h"时"mm"分"ss"秒"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},36:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},37:{f:`#,##0 ;(#,##0)`},38:{f:`#,##0 ;[Red](#,##0)`},39:{f:`#,##0.00;(#,##0.00)`},40:{f:`#,##0.00;[Red](#,##0.00)`},45:{f:`mm:ss`},46:{f:`[h]:mm:ss`},47:{f:`mmss.0`},48:{f:`##0.0E+0`},49:{f:`@`},50:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},51:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},52:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},53:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`m"月"d"日"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},54:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},55:{"zh-tw":`上午/下午 hh"時"mm"分"`,"zh-cn":`上午/下午 h"时"mm"分"`,"ja-jp":`yyyy"年"m"月"`,"ko-kr":`yyyy-mm-dd`},56:{"zh-tw":`上午/下午 hh"時"mm"分"ss"秒"`,"zh-cn":`上午/下午 h"时"mm"分"ss"秒"`,"ja-jp":`m"月"d"日"`,"ko-kr":`yyyy-mm-dd`},57:{"zh-tw":`[$-404]e/m/d`,"zh-cn":`yyyy"年"m"月"`,"ja-jp":`[$-411]ge.m.d`,"ko-kr":`yyyy"年" mm"月" dd"日"`},58:{"zh-tw":`[$-404]e"年"m"月"d"日"`,"zh-cn":`m"月"d"日"`,"ja-jp":`[$-411]ggge"年"m"月"d"日"`,"ko-kr":`mm-dd`},59:{"th-th":`t0`},60:{"th-th":`t0.00`},61:{"th-th":`t#,##0`},62:{"th-th":`t#,##0.00`},67:{"th-th":`t0%`},68:{"th-th":`t0.00%`},69:{"th-th":`t# ?/?`},70:{"th-th":`t# ??/??`},81:{"th-th":`d/m/bb`}};function af(){let e={};return Object.entries(rf).forEach(([t,n])=>{n.f&&(e[n.f]=parseInt(t,10))}),e}let of=null;function sf(){return of||=af(),of}var cf=class extends U{constructor(e,t){super(),this.id=e,this.formatCode=t}get tag(){return`numFmt`}render(e,t){e.leafNode(`numFmt`,{numFmtId:t.id,formatCode:t.formatCode})}parseOpen(e){switch(e.name){case`numFmt`:return this.model={id:parseInt(e.attributes.numFmtId,10),formatCode:e.attributes.formatCode.replace(/[\\](.)/g,`$1`)},!0;default:return!1}}parseText(){}parseClose(){return!1}static getDefaultFmtId(e){return sf()[e]}static getDefaultFmtCode(e){return rf[e]&&rf[e].f}};let lf={boolean(e,t){return e===void 0?t:e}};var uf=class extends U{get tag(){return`protection`}render(e,t){let n={},r=lf.boolean(t.locked,!0)?void 0:`0`,i=lf.boolean(t.hidden,!1)?`1`:void 0;r!==void 0&&(n.locked=r),i!==void 0&&(n.hidden=i),Object.keys(n).length>0&&e.leafNode(`protection`,n)}parseOpen(e){let t={locked:e.attributes.locked!==`0`,hidden:e.attributes.hidden===`1`},n=!t.locked||t.hidden;this.model=n?t:null}parseText(){}parseClose(){return!1}},df=class extends U{constructor(){super(),this.map={alignment:new Jd,border:new Wd,fill:new Qd,font:new nf,numFmt:new cf,protection:new uf}}get tag(){return`dxf`}render(e,t){if(e.openNode(this.tag),t.font&&this.map.font.render(e,t.font),t.numFmt&&t.numFmtId){let n={id:t.numFmtId,formatCode:t.numFmt};this.map.numFmt.render(e,n)}t.fill&&this.map.fill.render(e,t.fill),t.alignment&&this.map.alignment.render(e,t.alignment),t.border&&this.map.border.render(e,t.border),t.protection&&this.map.protection.render(e,t.protection),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:return this.reset(),!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):e===this.tag?(this.model={alignment:this.map.alignment.model,border:this.map.border.model,fill:this.map.fill.model,font:this.map.font.model,numFmt:this.map.numFmt.model,protection:this.map.protection.model},!1):!0}},ff=class extends U{constructor(e){super(),this.xfId=!!(e&&e.xfId),this.map={alignment:new Jd,protection:new uf}}get tag(){return`xf`}render(e,t){e.openNode(`xf`,{numFmtId:t.numFmtId??0,fontId:t.fontId??0,fillId:t.fillId??0,borderId:t.borderId??0}),this.xfId&&e.addAttribute(`xfId`,t.xfId??0),(t.applyNumberFormat||t.numFmtId)&&e.addAttribute(`applyNumberFormat`,`1`),(t.applyFont||t.fontId)&&e.addAttribute(`applyFont`,`1`),(t.applyFill||t.fillId)&&e.addAttribute(`applyFill`,`1`),(t.applyBorder||t.borderId)&&e.addAttribute(`applyBorder`,`1`),(t.applyAlignment||t.alignment)&&e.addAttribute(`applyAlignment`,`1`),(t.applyProtection||t.protection)&&e.addAttribute(`applyProtection`,`1`),t.pivotButton&&e.addAttribute(`pivotButton`,`1`),t.alignment&&this.map.alignment.render(e,t.alignment),t.protection&&this.map.protection.render(e,t.protection),t.checkbox&&t.xfComplementIndex!==void 0&&(e.openNode(`extLst`),e.openNode(`ext`,{"xmlns:xfpb":`http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag`,uri:`{C7286773-470A-42A8-94C5-96B5CB345126}`}),e.leafNode(`xfpb:xfComplement`,{i:t.xfComplementIndex}),e.closeNode(),e.closeNode()),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`xf`:this.model={numFmtId:parseInt(e.attributes.numFmtId,10),fontId:parseInt(e.attributes.fontId,10),fillId:parseInt(e.attributes.fillId,10),borderId:parseInt(e.attributes.borderId,10)},this.xfId&&(this.model.xfId=parseInt(e.attributes.xfId,10)),e.attributes.pivotButton===`1`&&(this.model.pivotButton=!0);for(let t of[`applyNumberFormat`,`applyFont`,`applyFill`,`applyBorder`,`applyAlignment`,`applyProtection`])e.attributes[t]===`1`&&(this.model[t]=!0);return!0;case`alignment`:return this.parser=this.map.alignment,this.parser.parseOpen(e),!0;case`protection`:return this.parser=this.map.protection,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.map.protection===this.parser?this.model.protection=this.parser.model:this.model.alignment=this.parser.model,this.parser=void 0),!0):e!==`xf`}},pf=class e extends U{constructor(t){super(),this.map={numFmts:new W({tag:`numFmts`,count:!0,childXform:new cf}),fonts:new W({tag:`fonts`,count:!0,childXform:new nf,$:{"x14ac:knownFonts":1}}),fills:new W({tag:`fills`,count:!0,childXform:new Qd}),borders:new W({tag:`borders`,count:!0,childXform:new Wd}),cellStyleXfs:new W({tag:`cellStyleXfs`,count:!0,childXform:new ff}),cellXfs:new W({tag:`cellXfs`,count:!0,childXform:new ff({xfId:!0})}),dxfs:new W({tag:`dxfs`,always:!0,count:!0,childXform:new df}),numFmt:new cf,font:new nf,fill:new Qd,border:new Wd,style:new ff({xfId:!0}),cellStyles:e.STATIC_XFORMS.cellStyles,tableStyles:e.STATIC_XFORMS.tableStyles,extLst:e.STATIC_XFORMS.extLst},t&&this.init()}initIndex(){this.index={style:{},numFmt:{},numFmtNextId:164,font:{},border:{},fill:{}}}init(){this.model={styles:[],numFmts:[],fonts:[],borders:[],fills:[],dxfs:[]},this.initIndex(),this._addBorder({}),this._addStyle({numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}),this._addFill({type:`pattern`,pattern:`none`}),this._addFill({type:`pattern`,pattern:`gray125`}),this.weakMap=new WeakMap,this._hasCheckboxes=!1}setDefaultFont(e){this.defaultFont=e}render(t,n){let r=n||this.model;t.openXml(z),t.openNode(`styleSheet`,e.STYLESHEET_ATTRIBUTES),this.index?(r.numFmts&&r.numFmts.length&&(t.openNode(`numFmts`,{count:r.numFmts.length}),r.numFmts.forEach(e=>{t.writeRaw(e)}),t.closeNode()),r.fonts.length||this._addFont(this.defaultFont||{size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`}),t.openNode(`fonts`,{count:r.fonts.length,"x14ac:knownFonts":1}),r.fonts.forEach(e=>{t.writeRaw(e)}),t.closeNode(),t.openNode(`fills`,{count:r.fills.length}),r.fills.forEach(e=>{t.writeRaw(e)}),t.closeNode(),t.openNode(`borders`,{count:r.borders.length}),r.borders.forEach(e=>{t.writeRaw(e)}),t.closeNode(),this.map.cellStyleXfs.render(t,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),t.openNode(`cellXfs`,{count:r.styles.length}),r.styles.forEach(e=>{t.writeRaw(e)}),t.closeNode()):(this.map.numFmts.render(t,r.numFmts),this.map.fonts.render(t,r.fonts),this.map.fills.render(t,r.fills),this.map.borders.render(t,r.borders),this.map.cellStyleXfs.render(t,[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}]),this.map.cellXfs.render(t,r.styles)),e.STATIC_XFORMS.cellStyles.render(t),this.map.dxfs.render(t,r.dxfs),e.STATIC_XFORMS.tableStyles.render(t),e.STATIC_XFORMS.extLst.render(t),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`styleSheet`:return this.initIndex(),!0;default:return this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e),!0}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`styleSheet`:{this.model={};let e=(e,t)=>{t.model&&t.model.length&&(this.model[e]=t.model)};if(e(`numFmts`,this.map.numFmts),e(`fonts`,this.map.fonts),e(`fills`,this.map.fills),e(`borders`,this.map.borders),e(`styles`,this.map.cellXfs),e(`dxfs`,this.map.dxfs),this.map.fonts.model&&this.map.fonts.model.length>0&&(this.defaultFont=this.map.fonts.model[0]),this.index={model:[],numFmt:{}},this.model.numFmts){let e=this.index.numFmt;this.model.numFmts.forEach(t=>{e[t.id]=t.formatCode})}return!1}default:return!0}}addStyleModel(e,t){if(!e)return 0;this.model.fonts.length||this._addFont(this.defaultFont||{size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`});let n=t||2;if(n!==12&&this.weakMap&&this.weakMap.has(e))return this.weakMap.get(e);let r={};if(e.numFmt)r.numFmtId=this._addNumFmtStr(e.numFmt);else switch(n){case 2:r.numFmtId=this._addNumFmtStr(`General`);break;case 4:r.numFmtId=this._addNumFmtStr(`mm-dd-yy`);break;default:break}e.font&&(r.fontId=this._addFont(e.font)),e.border&&(r.borderId=this._addBorder(e.border)),e.fill&&(r.fillId=this._addFill(e.fill)),e.alignment&&(r.alignment=e.alignment),e.protection&&(r.protection=e.protection);for(let t of[`pivotButton`,`applyNumberFormat`,`applyFont`,`applyFill`,`applyBorder`,`applyAlignment`,`applyProtection`])e[t]&&(r[t]=!0);n===12&&(this._hasCheckboxes=!0,r.alignment=r.alignment||{},r.checkbox=!0,r.xfComplementIndex=0);let i=this._addStyle(r);return n!==12&&this.weakMap&&this.weakMap.set(e,i),i}getStyleModel(e){let t=this.model.styles[e];if(!t)return null;let n=this.index.model[e];if(n)return n;if(n=this.index.model[e]={},t.numFmtId){let e=this.index.numFmt[t.numFmtId]||cf.getDefaultFmtCode(t.numFmtId);e&&(n.numFmt=e)}function r(e,t,r){if(r||r===0){let i=t[r];i&&(n[e]=i)}}r(`font`,this.model.fonts,t.fontId),r(`border`,this.model.borders,t.borderId),r(`fill`,this.model.fills,t.fillId),t.alignment&&(n.alignment=t.alignment),t.protection&&(n.protection=t.protection);for(let e of[`pivotButton`,`applyNumberFormat`,`applyFont`,`applyFill`,`applyBorder`,`applyAlignment`,`applyProtection`])t[e]&&(n[e]=!0);return n}addDxfStyle(e){return e.numFmt&&(e.numFmtId=this._addNumFmtStr(e.numFmt)),this.model.dxfs.push(e),this.model.dxfs.length-1}getDxfStyle(e){return this.model.dxfs[e]}get hasCheckboxes(){return!!this._hasCheckboxes}_addStyle(e){let t=this.map.style.toXml(e),n=this.index.style[t];return n===void 0&&(n=this.index.style[t]=this.model.styles.length,this.model.styles.push(t)),n}_addNumFmtStr(e){let t=cf.getDefaultFmtId(e);if(t!==void 0||(t=this.index.numFmt[e],t!==void 0))return t;t=this.index.numFmt[e]=164+this.model.numFmts.length;let n=this.map.numFmt.toXml({id:t,formatCode:e});return this.model.numFmts.push(n),t}_addFont(e){let t=this.map.font.toXml(e),n=this.index.font[t];return n===void 0&&(n=this.index.font[t]=this.model.fonts.length,this.model.fonts.push(t)),n}_addBorder(e){let t=this.map.border.toXml(e),n=this.index.border[t];return n===void 0&&(n=this.index.border[t]=this.model.borders.length,this.model.borders.push(t)),n}_addFill(e){let t=this.map.fill.toXml(e),n=this.index.fill[t];return n===void 0&&(n=this.index.fill[t]=this.model.fills.length,this.model.fills.push(t)),n}static{this.STYLESHEET_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`x14ac x16r2`,"xmlns:x14ac":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac`,"xmlns:x16r2":`http://schemas.microsoft.com/office/spreadsheetml/2015/02/main`}}static{this.STATIC_XFORMS={cellStyles:new Ld({tag:`cellStyles`,$:{count:1},c:[{tag:`cellStyle`,$:{name:`Normal`,xfId:0,builtinId:0}}]}),dxfs:new Ld({tag:`dxfs`,$:{count:0}}),tableStyles:new Ld({tag:`tableStyles`,$:{count:0,defaultTableStyle:`TableStyleMedium2`,defaultPivotStyle:`PivotStyleLight16`}}),extLst:new Ld({tag:`extLst`,c:[{tag:`ext`,$:{uri:`{EB79DEF2-80B8-43e5-95BD-54CBDDF9020C}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`},c:[{tag:`x14:slicerStyles`,$:{defaultSlicerStyle:`SlicerStyleLight1`}}]},{tag:`ext`,$:{uri:`{9260A510-F301-46a8-8635-F512D64BE5F5}`,"xmlns:x15":`http://schemas.microsoft.com/office/spreadsheetml/2010/11/main`},c:[{tag:`x15:timelineStyles`,$:{defaultTimelineStyle:`TimeSlicerStyleLight1`}}]}]})}}};pf.Mock=class extends pf{constructor(){super(),this.model={styles:[{numFmtId:0,fontId:0,fillId:0,borderId:0,xfId:0}],numFmts:[],fonts:[{size:11,color:{theme:1},name:`Calibri`,family:2,scheme:`minor`}],borders:[{}],fills:[{type:`pattern`,pattern:`none`},{type:`pattern`,pattern:`gray125`}]}}parseStream(e){return e.autodrain(),Promise.resolve()}addStyleModel(e,t){switch(t){case 12:throw new Mr(`Checkbox cells`,`require styles to be enabled (useStyles: true)`);case 4:return this.dateStyleId;default:return 0}}get hasCheckboxes(){return!1}get dateStyleId(){if(!this._dateStyleId){let e={numFmtId:cf.getDefaultFmtId(`mm-dd-yy`)};this._dateStyleId=this.model.styles.length,this.model.styles.push(e)}return this._dateStyleId}getStyleModel(){return{}}};var mf=class extends D{getHyperlinkReader(e){return this._hyperlinkReadersBySheetNo?.[String(e)]}getHyperlink(e,t){return this.getHyperlinkReader(e)?.hyperlinks?.[t]}getHyperlinkTarget(e,t){return this.getHyperlink(e,t)?.target}constructor(e,t,n,r){super(),this.hasDynamicArrayMetadata=!1,this._totalBufferedBytes=0,this.input=e,this.WorksheetReaderClass=n,this.HyperlinkReaderClass=r,this._maxBufferedBytes=t.maxBufferedWorksheetBytes??256*1024*1024,this.options={worksheets:`emit`,sharedStrings:`cache`,hyperlinks:`ignore`,styles:`ignore`,entries:`ignore`,...t},this.styles=new pf,this.styles.init()}_getStream(e){if(e instanceof k)return e;if(e&&typeof e==`object`&&typeof e.getReader==`function`){let t=k.fromWeb;if(typeof t==`function`)return t(e);try{return new k({stream:e})}catch{throw new Nr(`<ReadableStream>`,`read`,`Could not recognise input`)}}let t=e;if(t instanceof ArrayBuffer&&(t=new Uint8Array(t)),t instanceof Uint8Array)return k.from([t]);throw new Nr(String(e),`read`,`Could not recognise input`)}_cleanupWaitingWorksheets(e){for(let t of e)t&&typeof t.cleanup==`function`&&t.cleanup()}_createWorksheetReader(e){return new this.WorksheetReaderClass({workbook:this,id:e.id,iterator:e.iterator,options:e.options})}_createHyperlinkReader(e){return new this.HyperlinkReaderClass({workbook:this,id:e.id,iterator:e.iterator,options:e.options})}async read(e,t){try{for await(let{eventType:n,value:r}of this.parse(e,t))switch(n){case`shared-strings`:this.emit(n,r);break;case`worksheet`:this.emit(n,r),await r.read();break;case`hyperlinks`:this.emit(n,r);break}this.emit(`end`),this.emit(`finished`)}catch(e){this.emit(`error`,e)}}async*[Symbol.asyncIterator](){for await(let{eventType:e,value:t}of this.parse())e===`worksheet`&&(yield t)}async*parse(e,t){t&&(this.options=t);let n=this.stream=this._getStream(e||this.input),r=[];try{for await(let e of this._parseEntries(n))if(e.eventType===`waiting-worksheet`){let t=await this._storeWaitingWorksheet(e.sheetNo,e.entry);r.push(t)}else yield e;yield*this._processWaitingWorksheets(r)}catch(e){throw this._cleanupWaitingWorksheets(r),e}}_emitEntry(e){this.options.entries===`emit`&&this.emit(`entry`,e)}async _parseRels(e){let t=new Vd;this.workbookRels=await t.parseStream(eu(e)),this._workbookRelIdByTarget=Object.create(null);for(let e of this.workbookRels??[])e?.Target&&e?.Id&&(this._workbookRelIdByTarget[e.Target]=e.Id)}async _parseWorkbook(e){this._emitEntry({type:`workbook`});let t=new Rd;this.model=await t.parseStream(eu(e)),this.properties=t.map?.workbookPr,this._sheetByRelId=Object.create(null);for(let e of this.model?.sheets??[])this._sheetByRelId[e.rId]=e}async*_parseSharedStrings(e){switch(this._emitEntry({type:`shared-strings`}),this.options.sharedStrings){case`cache`:this.sharedStrings=[];break;case`emit`:break;default:return}let t=null,n=[],r=0,i=null,a=!1;if(this.options.sharedStrings===`cache`){let r=this.sharedStrings,o=new ic({position:!1,invalidCharHandling:`skip`});o.on(`opentag`,e=>{switch(e.name){case`b`:i||={},i.bold=!0;break;case`charset`:i||={},i.charset=parseInt(e.attributes.charset,10);break;case`color`:i||={},i.color={},e.attributes.rgb&&(i.color.argb=e.attributes.rgb),e.attributes.val&&(i.color.argb=e.attributes.val),e.attributes.theme&&(i.color.theme=e.attributes.theme);break;case`family`:i||={},i.family=parseInt(e.attributes.val,10);break;case`i`:i||={},i.italic=!0;break;case`outline`:i||={},i.outline=!0;break;case`rFont`:i||={},i.name=e.attributes.val;break;case`r`:a=!0;break;case`si`:i=null,n=[],t=null,a=!1;break;case`sz`:i||={},i.size=parseInt(e.attributes.val,10);break;case`strike`:i||={},i.strike=!0;break;case`t`:t=null;break;case`u`:i||={},i.underline=!0;break;case`vertAlign`:i||={},i.vertAlign=e.attributes.val;break}}),o.on(`text`,e=>{t=t?t+e:e}),o.on(`closetag`,e=>{switch(e.name){case`t`:t!=null&&t.includes(`_x`)&&(t=Pc(t));break;case`r`:a&&(n.push({font:i,text:t}),i=null,t=null);break;case`si`:r.push(n.length?{richText:n}:t??``),n=[],i=null,t=null,a=!1;break}}),await ac(o,eu(e));return}let o=new ic({invalidCharHandling:`skip`}),s=new TextDecoder(`utf-8`,{fatal:!0}),c=[];o.on(`opentag`,e=>{switch(e.name){case`b`:i||={},i.bold=!0;break;case`charset`:i||={},i.charset=parseInt(e.attributes.charset,10);break;case`color`:i||={},i.color={},e.attributes.rgb&&(i.color.argb=e.attributes.rgb),e.attributes.val&&(i.color.argb=e.attributes.val),e.attributes.theme&&(i.color.theme=e.attributes.theme);break;case`family`:i||={},i.family=parseInt(e.attributes.val,10);break;case`i`:i||={},i.italic=!0;break;case`outline`:i||={},i.outline=!0;break;case`rFont`:i||={},i.name=e.attributes.val;break;case`r`:a=!0;break;case`si`:i=null,n=[],t=null,a=!1;break;case`sz`:i||={},i.size=parseInt(e.attributes.val,10);break;case`strike`:i||={},i.strike=!0;break;case`t`:t=null;break;case`u`:i||={},i.underline=!0;break;case`vertAlign`:i||={},i.vertAlign=e.attributes.val;break}}),o.on(`text`,e=>{t=t?t+e:e}),o.on(`closetag`,e=>{switch(e.name){case`t`:t!=null&&t.includes(`_x`)&&(t=Pc(t));break;case`r`:a&&(n.push({font:i,text:t}),i=null,t=null);break;case`si`:c.push({index:r++,text:n.length?{richText:n}:t??``}),n=[],i=null,t=null,a=!1;break}});for await(let t of eu(e)){let e=typeof t==`string`?t:s.decode(t,{stream:!0});if(o.write(e),c.length>0){for(let e of c)yield e;c=[]}}let l=s.decode();if(l&&o.write(l),o.close(),c.length>0)for(let e of c)yield e}async _parseStyles(e){this._emitEntry({type:`styles`}),this.options.styles===`cache`&&(this.styles=new pf,await this.styles.parseStream(eu(e)))}async _parseMetadata(e){let t=await new zd().parseStream(eu(e));t&&(this.hasDynamicArrayMetadata=!!t.hasDynamicArrays,this.dynamicArrayCmIndices=t.dynamicArrayCmIndices)}*_parseWorksheet(e,t){this._emitEntry({type:`worksheet`,id:t});let n=parseInt(t,10),r=this._createWorksheetReader({id:n,iterator:e,options:this.options});r.sheetNo=n;let i=this._workbookRelIdByTarget?.[Uu(t)],a=i?this._sheetByRelId?.[i]:void 0;a&&(r.id=a.id,r.name=a.name,r.state=a.state),this.options.worksheets===`emit`&&(yield{eventType:`worksheet`,value:r})}async*_parseHyperlinks(e,t){this._emitEntry({type:`hyperlinks`,id:t});let n=this._createHyperlinkReader({id:parseInt(t,10),iterator:e,options:this.options});if(this.options.hyperlinks===`cache`){this._hyperlinkReadersBySheetNo||=Object.create(null),this._hyperlinkReadersBySheetNo[t]=n;let e=n.read;typeof e==`function`&&await e.call(n);return}this.options.hyperlinks===`emit`&&(yield{eventType:`hyperlinks`,value:n})}async*_parseEntries(e){let t=Ls({forceStream:!0});e.on(`error`,e=>t.emit(`error`,e)),e.pipe(t);for await(let e of eu(t)){let t,n=vu(e.path);switch(n){case V.rootRels:break;case V.xlWorkbookRels:await this._parseRels(e);break;case V.xlWorkbook:await this._parseWorkbook(e);break;case V.xlSharedStrings:for await(let t of this._parseSharedStrings(e))yield{eventType:`shared-strings`,value:t};break;case V.xlStyles:await this._parseStyles(e);break;case V.xlMetadata:await this._parseMetadata(e);break;default:if(t=yu(n)?.toString(),t)if(this.workbookRels&&this.model&&(this.options.sharedStrings!==`cache`||this.sharedStrings)){yield*this._parseWorksheet(eu(e),t);continue}else{yield{eventType:`waiting-worksheet`,sheetNo:t,entry:e};continue}if(t=bu(n)?.toString(),t){yield*this._parseHyperlinks(eu(e),t);continue}break}e.autodrain()}}},hf=class extends mf{constructor(e,t={}){super(e,t,$l,oc)}async _storeWaitingWorksheet(e,t){let n=[],r=new TextEncoder;for await(let e of eu(t)){let t;if(e instanceof Uint8Array)t=e;else if(typeof e==`string`)t=r.encode(e);else continue;if(this._totalBufferedBytes+=t.length,this._totalBufferedBytes>this._maxBufferedBytes)throw Error(`Buffered worksheet data exceeds limit of ${this._maxBufferedBytes} bytes. The XLSX file may be malicious (adversarial ZIP entry ordering) or too large for streaming. Increase maxBufferedWorksheetBytes if this is expected.`);n.push(t)}return{sheetNo:e,data:n}}async*_processWaitingWorksheets(e){for(let t of e){let e=(async function*(){for(let e of t.data)yield e})();yield*this._parseWorksheet(e,t.sheetNo)}}};let gf={maxWorkers:typeof navigator<`u`&&navigator.hardwareConcurrency||4,minWorkers:0,idleTimeout:3e4,useTransferables:!0,workerUrl:void 0};function _f(e){let t=e?.maxWorkers??gf.maxWorkers,n=e?.minWorkers??gf.minWorkers;return{maxWorkers:Math.max(1,t),minWorkers:Math.max(0,Math.min(n,t)),idleTimeout:Math.max(0,e?.idleTimeout??gf.idleTimeout),useTransferables:e?.useTransferables??gf.useTransferables,workerUrl:e?.workerUrl}}let vf={high:3,normal:2,low:1};function yf(e){return e?vf[e]??vf.normal:vf.normal}function bf(){return typeof Worker<`u`&&typeof Blob<`u`}function xf(){return`
|
|
117
117
|
'use strict';
|
|
118
118
|
|
|
119
119
|
// Check deflate-raw support once at startup
|
|
@@ -400,54 +400,54 @@ self.onmessage = async function(event) {
|
|
|
400
400
|
}
|
|
401
401
|
}
|
|
402
402
|
};
|
|
403
|
-
`}let wf=null,Tf=0;function Ef(){if(wf===null){let e=Cf(),t=new Blob([e],{type:`text/javascript`});wf=URL.createObjectURL(t)}return Tf++,wf}function Df(){if(wf!==null&&--Tf<=0){try{URL.revokeObjectURL(wf)}catch{}wf=null,Tf=0}}let Of=new Uint8Array,kf={onData:e=>{},onEnd:()=>{},onError:e=>{}};function Af(e){return e.byteOffset===0&&e.byteLength===e.buffer.byteLength}function jf(e){return Af(e)?e:e.slice()}var Mf=class{_taskQueueSize(){return this._taskQueue.length-this._taskQueueHead}_compactTaskQueueIfNeeded(){this._taskQueueHead>32&&this._taskQueueHead*2>=this._taskQueue.length&&(this._taskQueue.splice(0,this._taskQueueHead),this._taskQueueHead=0)}_dequeueTask(){if(this._taskQueueHead>=this._taskQueue.length)return;let e=this._taskQueue[this._taskQueueHead++];return this._compactTaskQueueIfNeeded(),e}_compactPendingStreamRequestsIfNeeded(){this._pendingStreamRequestHead>32&&this._pendingStreamRequestHead*2>=this._pendingStreamRequests.length&&(this._pendingStreamRequests.splice(0,this._pendingStreamRequestHead),this._pendingStreamRequestHead=0)}_dequeuePendingStreamRequest(){if(this._pendingStreamRequestHead>=this._pendingStreamRequests.length)return;let e=this._pendingStreamRequests[this._pendingStreamRequestHead++];return this._compactPendingStreamRequestsIfNeeded(),e}_waitForStreamSlot(e){return e.slotWaitPromise||=new Promise(t=>{e.resolveSlotWait=()=>{e.slotWaitPromise=null,e.resolveSlotWait=null,t()}}),e.slotWaitPromise}_waitForStreamDrain(e){return e.drainWaitPromise||=new Promise(t=>{e.resolveDrainWait=()=>{e.drainWaitPromise=null,e.resolveDrainWait=null,t()}}),e.drainWaitPromise}_resolveSlotWaiter(e){e.resolveSlotWait?.()}_resolveDrainWaiter(e){e.resolveDrainWait?.()}constructor(e){this._workers=new Map,this._taskQueue=[],this._taskQueueHead=0,this._pendingTasks=new Map,this._nextTaskId=1,this._nextWorkerId=1,this._terminated=!1,this._completedTasks=0,this._failedTasks=0,this._pendingStreamRequests=[],this._pendingStreamRequestHead=0,this._options=yf(e),this._options.workerUrl?(this._workerUrl=this._options.workerUrl,this._useCustomUrl=!0):(this._workerUrl=Ef(),this._useCustomUrl=!1);for(let e=0;e<this._options.minWorkers;e++)this._createWorker()}async execute(e,t,n){if(this._terminated)throw Error(`Worker pool has been terminated`);if(!Sf())throw Error(`Web Workers are not supported in this environment`);if(n?.signal?.aborted)throw i();let r=this._nextTaskId++,a=n?.priority??`normal`,o=xf(a);return new Promise((i,s)=>{let c={taskId:r,taskType:e,data:t,level:n?.level,priority:a,priorityValue:o,resolve:i,reject:s,signal:n?.signal,allowTransfer:n?.allowTransfer,startTime:performance.now()};n?.signal&&(c.abortHandler=()=>{this._cancelTask(r)},n.signal.addEventListener(`abort`,c.abortHandler,{once:!0})),this._pendingTasks.set(r,c),this._enqueueTask(c),this._processQueue()})}getStats(){let e=this._workers.size,t=0;for(let e of this._workers.values())e.busy&&t++;return{totalWorkers:e,activeWorkers:t,idleWorkers:e-t,pendingTasks:this._taskQueueSize(),completedTasks:this._completedTasks,failedTasks:this._failedTasks}}terminate(){if(this._terminated)return;this._terminated=!0;for(let e of this._workers.values())this._terminateWorker(e);this._workers.clear();let e=Error(`Worker pool terminated`);for(let t of this._pendingTasks.values())this._cleanupTask(t),t.reject(e);this._pendingTasks.clear(),this._taskQueue.length=0,this._taskQueueHead=0,this._pendingStreamRequests.length=0,this._pendingStreamRequestHead=0,this._useCustomUrl||Df()}isTerminated(){return this._terminated}_createWorker(){if(this._terminated||this._workers.size>=this._options.maxWorkers)return null;let e=this._nextWorkerId++,t=new Worker(this._workerUrl),n={id:e,worker:t,busy:!1,currentTaskId:null,idleTimer:null,streamSession:null};return t.onmessage=e=>{this._handleWorkerMessage(n,e.data)},t.onerror=e=>{this._handleWorkerError(n,e)},this._workers.set(e,n),n}_terminateWorker(e){this._clearIdleTimer(e);try{e.worker.postMessage({type:`terminate`})}catch{}try{e.worker.terminate()}catch{}this._workers.delete(e.id)}_clearIdleTimer(e){e.idleTimer!==null&&(clearTimeout(e.idleTimer),e.idleTimer=null)}_findIdleWorker(){for(let e of this._workers.values())if(!e.busy)return e}_enqueueTask(e){let t=this._taskQueue,n=e.priorityValue;this._compactTaskQueueIfNeeded();let r=this._taskQueueHead,i=t.length;for(;r<i;){let e=r+i>>>1;t[e].priorityValue>=n?r=e+1:i=e}t.splice(r,0,e)}_processQueue(){for(;!this._terminated&&this._taskQueueSize()>0;){let e=this._findIdleWorker()??this._createWorker()??void 0;if(!e)return;for(;;){let t=this._dequeueTask();if(!t)return;if(t.signal?.aborted){this._pendingTasks.delete(t.taskId),this._cleanupTask(t),t.reject(i());continue}this._assignTask(e,t);break}}}_assignTask(e,t){this._clearIdleTimer(e),e.busy=!0,e.currentTaskId=t.taskId;let n=this._options.useTransferables&&t.allowTransfer===!0,r=n?jf(t.data):t.data,i={type:`task`,taskId:t.taskId,taskType:t.taskType,data:r,level:t.level};n?e.worker.postMessage(i,[r.buffer]):e.worker.postMessage(i)}_handleWorkerMessage(e,t){if(t.type!==`ready`){if(e.streamSession){let n=e.streamSession;switch(t.type){case`started`:if(t.taskId!==n.taskId)return;n.startReady=!0,n.resolveStart?.(),n.resolveStart=null,n.rejectStart=null;return;case`out`:if(t.taskId!==n.taskId)return;n.onData(t.data);return;case`ack`:if(t.taskId!==n.taskId)return;n.inflightChunkCount>0&&n.inflightChunkCount--,this._resolveSlotWaiter(n),n.inflightChunkCount===0&&n.resolveDrainWait&&this._resolveDrainWaiter(n);return;case`done`:if(t.taskId!==n.taskId)return;n.ended=!0,n.inflightChunkCount=0,n.startReady=!0,n.resolveStart?.(),n.resolveStart=null,n.rejectStart=null,this._resolveSlotWaiter(n),this._resolveDrainWaiter(n),this._completedTasks++,t.duration??performance.now()-n.startTime,n.onEnd(),e.streamSession=null,this._workerBecameIdle(e);return;case`error`:{if(t.taskId!==n.taskId)return;let r=Error(t.error??`Unknown worker error`);n.ended=!0,n.inflightChunkCount=0,n.startReady=!0,n.rejectStart?.(r),n.resolveStart=null,n.rejectStart=null,this._resolveSlotWaiter(n),this._resolveDrainWaiter(n),this._failedTasks++,n.onError(r),e.streamSession=null,this._workerBecameIdle(e);return}default:break}}switch(t.type){case`result`:case`error`:{let n=t.taskId;if(typeof n!=`number`)return;let r=this._pendingTasks.get(n);if(!r){this._workerBecameIdle(e);return}if(this._pendingTasks.delete(n),this._cleanupTask(r),t.type===`result`){this._completedTasks++;let e=t.duration??performance.now()-r.startTime;r.resolve({data:t.data,duration:e})}else this._failedTasks++,r.reject(Error(t.error??`Unknown worker error`));this._workerBecameIdle(e);return}default:return}}}_handleWorkerError(e,t){let n=e.currentTaskId;if(this._terminateWorker(e),n!==null){let e=this._pendingTasks.get(n);e&&(this._pendingTasks.delete(n),this._cleanupTask(e),this._failedTasks++,e.reject(Error(t.message||`Worker error`)))}this._processQueue()}_workerBecameIdle(e){if(e.busy=!1,e.currentTaskId=null,this._pendingStreamRequestHead<this._pendingStreamRequests.length){let t=this._dequeuePendingStreamRequest();if(t){t(e);return}}this._taskQueueSize()>0?this._processQueue():this._workers.size>this._options.minWorkers&&this._options.idleTimeout>0&&(e.idleTimer=setTimeout(()=>{!e.busy&&this._workers.size>this._options.minWorkers&&!this._terminated&&this._terminateWorker(e)},this._options.idleTimeout))}openStream(e,t=kf){if(this._terminated)throw Error(`Worker pool has been terminated`);if(!Sf())throw Error(`Web Workers are not supported in this environment`);let n=this._nextTaskId++,r=t.allowTransfer===!0,i=this._options.useTransferables&&r,a=i?jf:e=>e,o=i?(e,t,n)=>{e.postMessage(t,[n.buffer])}:(e,t,n)=>{e.postMessage(t)},s=null,c=null,l=async()=>{if(s)return s;if(c)return c;c=(async()=>{let r=this._findIdleWorker()??this._createWorker()??void 0;return r?(s=r,this._bindStreamSession(s,n,e,t.level,t),this._startStreamSession(s),s):(s=await new Promise(e=>{this._pendingStreamRequests.push(e)}),this._bindStreamSession(s,n,e,t.level,t),this._startStreamSession(s),s)})();try{return await c}finally{c=null}};l();let u=(e,t,n)=>{let r=a(n),i=t.chunkMessage;i.data=r,o(e.worker,i,r)},d=(e,t,n)=>{if(t.inflightChunkCount>=8)return this._waitForStreamSlot(t).then(()=>{t.ended||(t.inflightChunkCount++,u(e,t,n))});t.inflightChunkCount++,u(e,t,n)};return{write:async e=>{if(e.byteLength===0)return;let t=s??await l(),n=t.streamSession;if(!n||n.ended)throw Error(`Streaming session is not active`);n.writeChain=n.writeChain.then(()=>{if(!n.ended)return n.startReady?d(t,n,e):n.startPromise.then(()=>{if(!n.ended)return d(t,n,e)})}),await n.writeChain},end:async()=>{let e=await l(),t=e.streamSession;!t||t.ended||(t.startReady||await t.startPromise,await t.writeChain,t.inflightChunkCount>0&&await this._waitForStreamDrain(t),t.ended=!0,e.worker.postMessage(t.endMessage))},abort:e=>{l().then(t=>{let n=t.streamSession;if(!n)return;let r=n.abortMessage;r.error=e,t.worker.postMessage(r)})}}}_bindStreamSession(e,t,n,r,i){this._clearIdleTimer(e),e.busy=!0,e.currentTaskId=t;let a=null,o=null,s=new Promise((e,t)=>{a=e,o=t}),c=setTimeout(()=>{o?.(Error(`Worker stream start timeout`))},5e3);s.finally(()=>clearTimeout(c)),e.streamSession={taskId:t,taskType:n,startTime:performance.now(),started:!1,startReady:!1,startPromise:s,resolveStart:a,rejectStart:o,level:r,writeChain:Promise.resolve(),inflightChunkCount:0,slotWaitPromise:null,resolveSlotWait:null,drainWaitPromise:null,resolveDrainWait:null,chunkMessage:{type:`chunk`,taskId:t,data:Of},startMessage:{type:`start`,taskId:t,taskType:n,level:r},endMessage:{type:`end`,taskId:t},abortMessage:{type:`abort`,taskId:t,error:void 0},ended:!1,onData:i.onData,onEnd:i.onEnd,onError:i.onError}}_startStreamSession(e){let t=e.streamSession;!t||t.started||(t.started=!0,e.worker.postMessage(t.startMessage))}_cancelTask(e){let t=this._pendingTasks.get(e);if(!t)return;this._pendingTasks.delete(e),this._cleanupTask(t);let n=-1;for(let t=this._taskQueueHead;t<this._taskQueue.length;t++)if(this._taskQueue[t].taskId===e){n=t;break}n>=0&&this._taskQueue.splice(n,1),t.reject(i())}_cleanupTask(e){e.abortHandler&&e.signal&&e.signal.removeEventListener(`abort`,e.abortHandler)}async executeBatch(e){let t=Array(e.length);for(let n=0;n<e.length;n++){let r=e[n];t[n]=this.execute(r.taskType,r.data,r.options)}return Promise.all(t)}};let Nf=null;function Pf(e){return(!Nf||Nf.isTerminated())&&(Nf=new Mf(e)),Nf}async function Ff(e,t){return(await Pf().execute(`inflate`,e,t)).data}function If(e,t){let n=Sf();if(t.useWorker===!0)return n;if(t.useWorker===!1)return!1;let r=t.autoWorkerThreshold??1048576;return n&&e.length>=r}function Lf(e,t){if(t?.aborted||a(e))throw i(t?.reason??e)}let Rf={hasNative:si,native:di,worker:Ff,jsFallback:ki};async function zf(e,t,n){let r=e.hasNative(),i=Sf(),a=n.useWorker;if(a===!0&&i)try{return await e.worker(t,{level:n.level,signal:n.signal,allowTransfer:n.allowTransfer})}catch(e){Lf(e,n.signal)}return r?e.native(t):a!==!0&&If(t,n)?e.worker(t,{level:n.level,signal:n.signal,allowTransfer:n.allowTransfer}):e.jsFallback(t,n.level)}async function Bf(e,t={}){return zf(Rf,e,t)}function Vf(e){return ki(e)}new Uint8Array([31,139,8,0,0,0,0,0,0,255]);function Hf(e,t,n){return E([_i(n),e,vi(pi(t))])}function Uf(e,t={}){let n=t.level??6;return Hf(n===0?Ai(e):Fi(e,n),e,n)}let Wf=`write after end`;function Gf(e,t,n){let r=o(t);n?n(r):e.emit(`error`,r)}var Kf=class extends D{constructor(...e){super(...e),this.ended=!1,this.destroyed=!1,this.writeChain=Promise.resolve(),this._backend=null}setBackend(e){this._backend=e}write(e,t){if(this.ended)return Gf(this,Error(Wf),t),!1;if(e.byteLength===0)return t&&queueMicrotask(t),!0;let n=this._backend;if(!n)throw Error(`Backend not initialized`);let r=this.writeChain.then(()=>n.write(e));return this.writeChain=r,r.then(()=>{this.destroyed||t?.()}).catch(e=>{this.destroyed||Gf(this,e,t)}),!0}end(e){if(this.ended){e?.();return}this.ended=!0;let t=this._backend;if(!t)throw Error(`Backend not initialized`);this.writeChain.then(()=>t.close()).then(()=>e?.()).catch(t=>Gf(this,t,e))}destroy(e){this.ended=!0,this.destroyed=!0,this._backend?.abort(e),e&&this.emit(`error`,e)}};function qf(e,t){let n=t?new CompressionStream(e):new DecompressionStream(e),r=n.writable.getWriter(),i=n.readable.getReader(),a=new Kf,s=null,c=(async()=>{try{for(;;){let{value:e,done:t}=await i.read();if(t)break;e&&a.emit(`data`,e)}a.emit(`end`)}catch(e){let t=o(e);s=t,a.emit(`error`,t)}})();return a.setBackend({write:e=>r.write(e),close:async()=>{if(await r.close(),await c,s)throw o(s)},abort:e=>{i.cancel(e).catch(()=>{}),r.abort(e).catch(()=>{})}}),a}function Jf(e,t,n,r){let i=t??Pf(),a=null,o=null,s=new Promise((e,t)=>{a=e,o=t}),c=new Kf,l=i.openStream(e,{level:n,allowTransfer:r,onData:e=>c.emit(`data`,e),onEnd:()=>{c.emit(`end`),a?.()},onError:e=>{c.emit(`error`,e),o?.(e)}});return c.setBackend({write:e=>l.write(e),close:async()=>{await l.end(),await s},abort:e=>{a?.(),l.abort(e?.message)}}),c}var Yf=class extends D{constructor(e){super(),this.process=e,this.chunks=[],this.ended=!1}write(e,t){return this.ended?(Gf(this,Error(Wf),t),!1):e.byteLength===0?(t&&queueMicrotask(t),!0):(this.chunks.push(e),t&&queueMicrotask(t),!0)}end(e){if(this.ended){e?.();return}this.ended=!0;let t=this.chunks.length,n=t===0?P:t===1?this.chunks[0]:E(this.chunks);this.chunks.length=0;try{let t=this.process(n);this.emit(`data`,t),this.emit(`end`),e?.()}catch(t){Gf(this,t,e)}}destroy(e){this.ended=!0,this.chunks.length=0,e&&this.emit(`error`,e)}};function Xf(e,t){let n=e===`deflate`?t.level??6:void 0;return t.useWorker&&Sf()?Jf(e,t.workerPool,n,t.allowTransfer):(e===`deflate`?oi():ci())?qf(`deflate-raw`,e===`deflate`):new Yf(e===`deflate`?e=>Fi(e,n):ki)}function Zf(e={}){return Xf(`deflate`,e)}function Qf(){return oi()}function $f(e){let t={key0:305419896,key1:591751049,key2:878082192},n=typeof e==`string`?Cn(e):e;for(let e=0;e<n.length;e++)ep(t,n[e]);return t}function ep(e,t){e.key0=ra(e.key0,t),e.key1=e.key1+(e.key0&255)>>>0,e.key1=(Math.imul(e.key1,134775813)>>>0)+1>>>0,e.key2=ra(e.key2,e.key1>>>24&255)}function tp(e){let t=(e.key2|2)>>>0;return Math.imul(t,t^1)>>>8&255}function np(e,t){let n=(t^tp(e))&255;return ep(e,n),n}function rp(e,t){let n=(t^tp(e))&255;return ep(e,t),n}function ip(e,t,n,r){if(t.length!==12)return!1;let i=new Uint8Array(12);for(let n=0;n<12;n++)i[n]=np(e,t[n]);let a=i[11];return a===(n>>>24&255)||r!==void 0&&a===(r>>>8&255)}function ap(e,t,n){let r=new Uint8Array(12),i=n(11);for(let t=0;t<11;t++)r[t]=rp(e,i[t]);return r[11]=rp(e,t>>>24&255),r}function op(e,t,n,r){if(e.length<12)return null;let i=$f(t);if(!ip(i,e.subarray(0,12),n,r))return null;let a=e.length-12,o=new Uint8Array(a);for(let t=0;t<a;t++)o[t]=np(i,e[12+t]);return o}let sp={"aes-128":128,"aes-192":192,"aes-256":256};function cp(e){return e in sp}function lp(e){return sp[e]}function up(e){return e.replace(/\\/g,`/`)}function dp(e){return e.replace(/^\/+/,``)}function fp(e){return e.replace(/^[a-zA-Z]:\/?/,``)}function pp(e){let t=e.split(`/`),n=[];for(let e of t)if(!(!e||e===`.`)){if(e===`..`){n.length>0?n.pop():n.push(`..`);continue}n.push(e)}return n.join(`/`)}function mp(e){return e.startsWith(`/`)}function hp(e){return/^[a-zA-Z]:/.test(e)}function gp(e,t={}){let n=t.mode??`legacy`,r=e;r=up(r);let i=hp(r);if(n===`legacy`)return r=dp(r),t.prependSlash?`/`+r:r;let a=t.stripDrive??!0;if(n===`safe`&&i&&!a)throw Error(`Unsafe ZIP path (drive): ${e}`);a&&(r=fp(r));let o=mp(r);if(r=dp(r),r=pp(r),n===`safe`){if(o)throw Error(`Unsafe ZIP path (absolute): ${e}`);if(r===`..`||r.startsWith(`../`))throw Error(`Unsafe ZIP path (traversal): ${e}`)}return t.prependSlash?`/`+r:r}function _p(e){return Math.log(e)/Math.LN2}function vp(e,t){let n=0;for(let r=0;r<256;r++){let i=e[r];if(i===0)continue;let a=i/t;n-=a*_p(a)}return n}function yp(e,t){let n=new Uint32Array(256),r=0,i=0;if(Array.isArray(e))for(let a=0;a<e.length&&!(r>=t);a++){let o=e[a],s=Math.min(o.length,t-r);for(let e=0;e<s;e++){let t=o[e];n[t]===0&&(i+=1),n[t]+=1}r+=s}else for(let a of e){if(r>=t)break;let e=Math.min(a.length,t-r);for(let t=0;t<e;t++){let e=a[t];n[e]===0&&(i+=1),n[e]+=1}r+=e}return{total:r,unique:i,counts:n}}function bp(e,t={}){let n=t.sampleBytes??65536,r=t.minDecisionBytes??16384,{total:i,unique:a,counts:o}=yp(e,n);return i<r||a<200?!1:vp(o,i)>=7.95}function xp(e,t=20){return(e&255)<<8|t&255}function Sp(e){switch(e){case`directory`:return Oo;case`symlink`:return Do;default:return 32768}}function Cp(e){return e>>>0&65535}function wp(e,t){let n=e.endsWith(`/`)||e.endsWith(`\\`);return t!==void 0&&Ao(t)?`symlink`:n?`directory`:`file`}function Tp(e){let t=e.kind,n=t===`directory`?16:32,r=(e.msDosAttributes??n)&255,i=e.mode;i!==void 0&&(i&61440||(i=i&4095|Sp(t)),i=Cp(i));let a=((i??0)&65535)<<16|r,o=xp(i!==void 0||t===`symlink`?3:0);return{externalAttributes:a>>>0,versionMadeBy:o}}function Ep(e){if(e.externalAttributes!==void 0)return{externalAttributes:e.externalAttributes,versionMadeBy:e.versionMadeBy};let t=Tp({kind:wp(e.name,e.mode),mode:e.mode,msDosAttributes:e.msDosAttributes});return{externalAttributes:t.externalAttributes,versionMadeBy:e.versionMadeBy??t.versionMadeBy}}function Dp(e){return e?8:0}function Op(e,t=!0){let n=0;return t&&(n|=To),e&&(n|=8),n}function kp(e){let t=da(e.codec),n=t.encode(e.name),r=fa(e.comment,t),{dosTime:i,dosDate:a}=Ma(e.modTime),o=e.atime||e.ctime||e.birthTime?{atime:e.atime,ctime:e.ctime,birthTime:e.birthTime}:void 0,s=ja(e.modTime,e.timestamps,o);return!t.useUtf8Flag&&t.useUnicodeExtraFields&&(e.name&&(s=Vo(s,fo(n,e.name))),e.comment&&(s=Vo(s,po(r,e.comment)))),{nameBytes:n,commentBytes:r,dosTime:i,dosDate:a,extraField:s,compressionMethod:Dp(e.deflate),flags:Op(e.useDataDescriptor,t.useUtf8Flag)}}function Ap(e,t,n,r,i){if(!i)return 0;let a=0;return(e||t>4294967295)&&(a+=8),(e||n>4294967295)&&(a+=8),(e||r>4294967295)&&(a+=8),a>0?4+a:0}function jp(e){let t=e[0];return t?.fileName===void 0?t?.compressedData===void 0?`central`:`processed`:`input`}function Mp(e,t){let n=t.zip64Mode===!0,r=t.zip64Mode===!1,i=jp(e),a=0;for(let t=0;t<e.length;t++){let r=e[t],o=i===`input`?r.fileName:r.name,s=r.extraField,c=r.comment,l=i===`processed`?r.compressedData.length:r.compressedSize,u=r.uncompressedSize,d=i===`input`?r.localHeaderOffset:r.offset,f=i===`processed`?void 0:r.zip64,p=n||f===!0||d>4294967295||l>4294967295||u>4294967295;a+=46+o.length+s.length+Ap(n,u,l,d,p)+(c?.length??0)}let o=e.length>65535||t.centralDirOffset>4294967295,s=n||o||a>4294967295;if(r&&s)throw Error(`ZIP64 is required but zip64=false`);let c=s?98+t.zipComment.length:22+t.zipComment.length;return{centralDirSize:a,trailerSize:c,totalSize:a+c,usedZip64:s}}function Np(e,t){let n=t.zip64Mode===!0,r=Mp(e,{zipComment:t.zipComment,zip64Mode:t.zip64Mode,centralDirOffset:t.centralDirOffset}),i=jp(e),a=t.offset,o=new DataView(t.out.buffer,t.out.byteOffset,t.out.byteLength);for(let r=0;r<e.length;r++){let s=e[r],c=i===`input`?s.fileName:s.name,l=s.extraField,u=s.comment,d=s.flags,f=i===`input`?s.crc32:s.crc,p=i===`processed`?s.compressedData.length:s.compressedSize,m=s.uncompressedSize,h=s.compressionMethod,g=i===`processed`?s.modTime:s.dosTime,_=i===`processed`?s.modDate:s.dosDate,v=i===`input`?s.localHeaderOffset:s.offset,y=i===`processed`?void 0:s.zip64,b=s.externalAttributes,x=s.versionMadeBy,S=n||y===!0||v>4294967295||p>4294967295||m>4294967295,C=S?Bo({uncompressedSize:n||m>4294967295?m:void 0,compressedSize:n||p>4294967295?p:void 0,localHeaderOffset:n||v>4294967295?v:void 0}):P,ee=S&&C.length>0?Vo(l,C):l;a+=Fo(t.out,o,a,{fileName:c,extraField:ee,comment:u??P,flags:d,compressionMethod:h,dosTime:g,dosDate:_,crc32:f,compressedSize:S?Mo:p,uncompressedSize:S?Mo:m,localHeaderOffset:S?Mo:v,versionMadeBy:x??20,versionNeeded:S?45:20,externalAttributes:b})}if(r.usedZip64){let n=t.centralDirOffset+r.centralDirSize;a+=Ho(t.out,o,a,{entryCountOnDisk:e.length,entryCountTotal:e.length,centralDirSize:r.centralDirSize,centralDirOffset:t.centralDirOffset}),a+=Uo(t.out,o,a,{zip64EndOfCentralDirectoryOffset:n,totalDisks:1}),Io(t.out,o,a,{entryCount:65535,centralDirSize:Mo,centralDirOffset:Mo,comment:t.zipComment})}else Io(t.out,o,a,{entryCount:e.length,centralDirSize:r.centralDirSize,centralDirOffset:t.centralDirOffset,comment:t.zipComment});return{centralDirSize:r.centralDirSize,trailerSize:r.trailerSize,totalWritten:r.totalSize,usedZip64:r.usedZip64}}let Pp=16*1024,Fp=65536;var Ip=class{constructor(e,t){this._deflate=null,this._crc=4294967295,this._uncompressedSize=0,this._compressedSize=0,this._finalized=!1,this._headerEmitted=!1,this._ondata=null,this._onerror=null,this._centralDirEntryInfo=null,this._pendingEnd=!1,this._emittedDataDescriptor=!1,this._localHeader=null,this._zip64Mode=`auto`,this._zip64=!1,this._deflateWanted=null,this._pendingChunks=[],this._sampleLen=0,this._completeResolve=null,this._completeReject=null,this._completePromise=null,this._completeError=null,this._encryptionMethod=`none`,this._zipCryptoState=null,this._aesBuffer=[],this._aesBufferSize=0,this._originalCompressionMethod=0,this._aesExtraField=null,this._dataQueue=[],this._finalQueued=!1,this._pushChain=Promise.resolve(),this._inputBuf=null,this._inputPos=0,this._syncDeflater=null,this._syncZlibReady=!1;let n=t?.path?gp(e,t.path):e;this.name=n;let r=t?.modTime??new Date;if(this._modTime=r,this.level=t?.level??6,this._smartStore=t?.smartStore??!0,this._zip64Mode=t?.zip64??`auto`,this._zip64=this._zip64Mode===!0,this._encryptionMethod=t?.encryptionMethod??`none`,this._password=t?.password,this._encryptionMethod!==`none`&&!this._password)throw Error(`Password is required for encryption`);cp(this._encryptionMethod)&&(this._aesKeyStrength=lp(this._encryptionMethod)),this._stringCodec=da(t?.encoding);let i=kp({name:n,comment:t?.comment,modTime:r,atime:t?.atime,ctime:t?.ctime,birthTime:t?.birthTime,timestamps:t?.timestamps??`dos`,useDataDescriptor:!0,deflate:!1,codec:this._stringCodec});this.nameBytes=i.nameBytes,this.commentBytes=i.commentBytes,this.dosTime=i.dosTime,this.dosDate=i.dosDate,this.extraField=i.extraField,this._flags=i.flags,this._compressionMethod=i.compressionMethod;let a=Ep({name:n,mode:t?.mode,msDosAttributes:t?.msDosAttributes,externalAttributes:t?.externalAttributes,versionMadeBy:t?.versionMadeBy});if(this._externalAttributes=a.externalAttributes,this._versionMadeBy=a.versionMadeBy,this._encryptionMethod!==`none`&&(this._flags|=1),!this._smartStore){let e=this.level>0;this._deflateWanted=e,this._compressionMethod=this._buildCompressionMethod(e),e&&this._initDeflateStream();return}this.level===0&&(this._deflateWanted=!1,this._compressionMethod=this._buildCompressionMethod(!1))}_buildCompressionMethod(e){return Dp(e)}_getAesExtraField(){return this._aesKeyStrength?(this._aesExtraField||=io(2,this._aesKeyStrength,this._originalCompressionMethod),this._aesExtraField):P}_initZipCryptoEncryption(){if(this._zipCryptoState||this._encryptionMethod!==`zipcrypto`)return;this._zipCryptoState=$f(this._password);let e=this.dosTime<<16|this.dosDate,t=ap(this._zipCryptoState,e,Va);this._compressedSize+=t.length,this._enqueueData(t,!1)}_zipCryptoEncryptChunk(e){if(!this._zipCryptoState)return e;let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=rp(this._zipCryptoState,e[n]);return t}_initDeflateStream(){this._deflate||(this._deflate=Zf({level:this.level}),this._deflate.on(`error`,e=>{this._rejectComplete(e)}),this._deflate.on(`data`,e=>{if(this._aesKeyStrength){this._aesBuffer.push(e),this._aesBufferSize+=e.length;return}if(this._encryptionMethod===`zipcrypto`){this._initZipCryptoEncryption();let t=this._zipCryptoEncryptChunk(e);this._compressedSize+=t.length,this._enqueueData(t,!1);return}this._compressedSize+=e.length,this._enqueueData(e,!1)}),this._deflate.on(`end`,()=>{this._pendingEnd&&!this._emittedDataDescriptor&&(this._emittedDataDescriptor=!0,this._finalizeEncryptionAndEmitDescriptor())}))}_finalizeEncryptionAndEmitDescriptor(){if(this._aesKeyStrength&&this._aesBuffer.length>0){this._finalizeAesEncryption().then(()=>this._emitDataDescriptor()).catch(e=>this._rejectComplete(e));return}this._emitDataDescriptor()}async _finalizeAesEncryption(){if(!this._aesKeyStrength||this._aesBufferSize===0)return;let e;if(this._aesBuffer.length===1)e=this._aesBuffer[0];else{e=new Uint8Array(this._aesBufferSize);let t=0;for(let n=0;n<this._aesBuffer.length;n++){let r=this._aesBuffer[n];e.set(r,t),t+=r.length}}this._aesBuffer.length=0,this._aesBufferSize=0;let t=await lo(e,this._password,this._aesKeyStrength);this._compressedSize=t.length,this._enqueueData(t,!1)}_buildLocalHeader(){let e=this.extraField,t=this._compressionMethod;return this._aesKeyStrength&&(this._originalCompressionMethod=this._compressionMethod,t=99,e=Vo(this.extraField,this._getAesExtraField())),Po({fileName:this.nameBytes,extraField:e,flags:this._flags,compressionMethod:t,dosTime:this.dosTime,dosDate:this.dosDate,crc32:0,compressedSize:0,uncompressedSize:0,versionNeeded:this._zip64?45:20})}_accumulateSampleLen(e){if(this._deflateWanted!==null||e.length===0||this._sampleLen>=Pp)return;let t=Math.min(Pp-this._sampleLen,e.length);t<=0||(this._sampleLen+=t)}_shouldDecide(e){return this._deflateWanted===null?e||this._sampleLen>=Pp:!1}_decideCompressionIfNeeded(e,t,n=!1){if(this._deflateWanted!==null)return;if(e&&this._sampleLen===0){this._deflateWanted=!1,this._sampleLen=0,this._compressionMethod=this._buildCompressionMethod(!1),this._localHeader=null;return}let r=bp((function*(e,t){for(let t of e)t.length&&(yield t);t.length&&(yield t)})(this._pendingChunks,t),{sampleBytes:Pp,minDecisionBytes:Pp});this._deflateWanted=!r,this._sampleLen=0,this._compressionMethod=this._buildCompressionMethod(this._deflateWanted),this._localHeader=null,this._deflateWanted&&(n||this._initDeflateStream())}_emitHeaderIfNeeded(){this._headerEmitted||=(this._emitHeader(),!0)}async _flushPendingChunks(){if(this._pendingChunks.length!==0){for(let e of this._pendingChunks)await this._writeData(e);this._pendingChunks.length=0}}_enqueueData(e,t){this._ondata?this._ondata(e,t):(this._dataQueue.push(e),t&&(this._finalQueued=!0))}_flushQueue(){if(!this._ondata)return;let e=this._dataQueue.length,t=this._finalQueued?e-1:-1;for(let n=0;n<e;n++)this._ondata(this._dataQueue[n],n===t);this._dataQueue.length=0,this._finalQueued=!1}get ondata(){return this._ondata}set ondata(e){this._ondata=e,this._flushQueue()}get onerror(){return this._onerror}set onerror(e){this._onerror=e,this._completeError&&e(this._completeError)}_resolveComplete(){this._completeResolve&&this._completeResolve()}_rejectComplete(e){this._completeError||(this._completeError=e,this._onerror&&this._onerror(e),this._completeReject&&this._completeReject(e))}_ensureCompletePromise(){return this._completeError?Promise.reject(this._completeError):this._emittedDataDescriptor?Promise.resolve():(this._completePromise||=new Promise((e,t)=>{this._completeResolve=e,this._completeReject=t}),this._completePromise)}_tapCallback(e,t){t&&e.then(()=>t()).catch(e=>t(e))}_writeDataSync(e,t){if(!(e.length===0&&!t)){if(e.length>0&&(this._crc=ea(this._crc,e),this._uncompressedSize+=e.length),this._deflateWanted){if(this._syncDeflater||=new Gi(this.level),e.length>0){let t=this._syncDeflater.write(e);t.length>0&&(this._compressedSize+=t.length,this._enqueueData(t,!1))}if(t){let e=this._syncDeflater.finish();e.length>0&&(this._compressedSize+=e.length,this._enqueueData(e,!1)),this._syncDeflater=null}return}if(this._aesKeyStrength){this._aesBuffer.push(e),this._aesBufferSize+=e.length;return}if(this._encryptionMethod===`zipcrypto`){this._initZipCryptoEncryption();let t=this._zipCryptoEncryptChunk(e);this._compressedSize+=t.length,this._enqueueData(t,!1);return}e.length>0&&(this._compressedSize+=e.length,this._enqueueData(e,!1))}}_writeData(e){if(e.length===0)return Promise.resolve();if(this._crc=ea(this._crc,e),this._uncompressedSize+=e.length,this._deflate)return new Promise((t,n)=>{this._deflate.write(e,e=>{e?n(e):t()})});if(this._aesKeyStrength)return this._aesBuffer.push(e),this._aesBufferSize+=e.length,Promise.resolve();if(this._encryptionMethod===`zipcrypto`){this._initZipCryptoEncryption();let t=this._zipCryptoEncryptChunk(e);return this._compressedSize+=t.length,this._enqueueData(t,!1),Promise.resolve()}return this._compressedSize+=e.length,this._enqueueData(e,!1),Promise.resolve()}_endDeflateAndWait(){return new Promise((e,t)=>{let n=this._deflate,r=e=>{a(),t(e)},i=()=>{a(),e()},a=()=>{n.off(`error`,r),n.off(`end`,i)};n.once(`error`,r),n.once(`end`,i),n.end()})}_finalizeAfterWrite(e){this._finalized=!0,this._pendingEnd=!0;let t=this._ensureCompletePromise();return this._deflate?e.then(()=>this._endDeflateAndWait()).then(()=>t):this._aesKeyStrength&&this._aesBufferSize>0?(this._emittedDataDescriptor=!0,this._finalizeAesEncryption().then(()=>this._emitDataDescriptor()).catch(e=>this._rejectComplete(e)),t):(this._emittedDataDescriptor=!0,this._emitDataDescriptor(),t)}_pushUnchained(e,t,n){if(this._finalized){let e=Promise.reject(Error(`Cannot push to finalized ZipDeflateFile`));return this._tapCallback(e,n),e}if(this._completeError){let e=Promise.reject(this._completeError);return this._tapCallback(e,n),e}if(this._deflateWanted===null){if(this._accumulateSampleLen(e),!this._shouldDecide(t)){e.length>0&&this._pendingChunks.push(e);let t=Promise.resolve();return this._tapCallback(t,n),t}this._decideCompressionIfNeeded(t,e),this._emitHeaderIfNeeded();let r=this._pendingChunks.length>0,i=this._flushPendingChunks(),a=i;e.length>0&&(a=r?i.then(()=>this._writeData(e)):this._writeData(e));let o=t?this._finalizeAfterWrite(a):a;return this._tapCallback(o,n),o}this._emitHeaderIfNeeded();let r=this._writeData(e),i=t?this._finalizeAfterWrite(r):r;return this._tapCallback(i,n),i}push(e,t=!1,n){if(!this._deflate&&this._encryptionMethod===`none`&&!Qf()){try{this._pushSyncPath(e,t),n?.()}catch(e){return n?.(e instanceof Error?e:Error(String(e))),Promise.reject(e)}return Promise.resolve()}if(!t&&e.length>0&&e.length<Fp){if(this._inputBuf||(this._inputBuf=new Uint8Array(Fp),this._inputPos=0),this._inputPos+e.length<=Fp)return this._inputBuf.set(e,this._inputPos),this._inputPos+=e.length,n?.(),Promise.resolve();let t=new Uint8Array(this._inputPos+e.length);return t.set(this._inputBuf.subarray(0,this._inputPos)),t.set(e,this._inputPos),this._inputPos=0,this._pushAsync(t,!1,n)}if(this._inputPos>0){let r=this._inputBuf.slice(0,this._inputPos);this._inputPos=0;let i=this._pushAsync(r,!1),a=this._pushChain=i.then(()=>this._pushUnchained(e,t,n),()=>this._pushUnchained(e,t,n));return a.catch(()=>{}),a}return this._pushAsync(e,t,n)}_pushAsync(e,t,n){let r=this._pushChain=this._pushChain.then(()=>this._pushUnchained(e,t,n),()=>this._pushUnchained(e,t,n));return r.catch(()=>{}),r}_pushSyncPath(e,t=!1){if(this._finalized)throw Error(`Cannot push to finalized ZipDeflateFile`);if(this._syncZlibReady||=!0,this._deflateWanted===null){if(this._accumulateSampleLen(e),!this._shouldDecide(t)){e.length>0&&this._pendingChunks.push(e);return}this._decideCompressionIfNeeded(t,e,!0),this._emitHeaderIfNeeded();for(let e of this._pendingChunks)this._writeDataSync(e,!1);this._pendingChunks.length=0,e.length>0&&this._writeDataSync(e,t),t&&this._finalizeSyncAfterWrite();return}this._emitHeaderIfNeeded(),this._writeDataSync(e,t),t&&this._finalizeSyncAfterWrite()}_finalizeSyncAfterWrite(){if(this._finalized=!0,this._pendingEnd=!1,this._emittedDataDescriptor=!0,this._aesKeyStrength&&this._aesBufferSize>0)throw Error(`AES encryption is not supported with synchronous push`);if(this._syncDeflater){let e=this._syncDeflater.finish();e.length>0&&(this._compressedSize+=e.length,this._enqueueData(e,!1)),this._syncDeflater=null}if(this._emitDataDescriptor(),this._completeError)throw this._completeError}_emitHeader(){this._localHeader||=this._buildLocalHeader(),this._enqueueData(this._localHeader,!1)}_emitDataDescriptor(){let e=ta(this._crc),t=this._compressedSize>4294967295||this._uncompressedSize>4294967295;if(this._zip64Mode===!1&&t){this._rejectComplete(Error(`ZIP64 is required but zip64=false`));return}(this._zip64Mode===!0||t&&!this._zip64)&&(this._zip64=!0);let n=this._zip64?zo(e,this._compressedSize,this._uncompressedSize):Lo(e,this._compressedSize,this._uncompressedSize),r=this._compressionMethod,i=this.extraField;this._aesKeyStrength&&(r=99,i=Vo(this.extraField,this._getAesExtraField())),this._centralDirEntryInfo={name:this.nameBytes,extraField:i,comment:this.commentBytes,flags:this._flags,crc:e,compressedSize:this._compressedSize,uncompressedSize:this._uncompressedSize,compressionMethod:r,dosTime:this.dosTime,dosDate:this.dosDate,offset:-1,zip64:this._zip64,externalAttributes:this._externalAttributes,versionMadeBy:this._versionMadeBy},this._enqueueData(n,!0),this._resolveComplete()}complete(){return this._ensureCompletePromise()}getEntryInfo(){if(!this._centralDirEntryInfo)return null;let e=this.name,t=e.endsWith(`/`)||e.endsWith(`\\`),n=this._centralDirEntryInfo.externalAttributes,r=ko(n);return{path:e,type:Ao(r)?`symlink`:t?`directory`:`file`,compressedSize:this._centralDirEntryInfo.compressedSize,uncompressedSize:this._centralDirEntryInfo.uncompressedSize,compressionMethod:this._centralDirEntryInfo.compressionMethod,crc32:this._centralDirEntryInfo.crc,lastModified:this._modTime,localHeaderOffset:this._centralDirEntryInfo.offset,comment:this._stringCodec.decode(this._centralDirEntryInfo.comment),externalAttributes:n,mode:r,versionMadeBy:this._centralDirEntryInfo.versionMadeBy,extraField:this._centralDirEntryInfo.extraField,isEncrypted:this._encryptionMethod!==`none`,encryptionMethod:this._aesKeyStrength?`aes`:this._encryptionMethod===`zipcrypto`?`zipcrypto`:void 0,aesKeyStrength:this._aesKeyStrength,originalCompressionMethod:this._aesKeyStrength?this._originalCompressionMethod:void 0}}getCentralDirectoryEntryInfo(){return this._centralDirEntryInfo}isComplete(){return this._emittedDataDescriptor&&this._centralDirEntryInfo!==null}abort(e){if(this._completeError)return;let t=i(e);this._finalized=!0,this._pendingEnd=!0,this._rejectComplete(t);try{let e=this._deflate;e&&typeof e.destroy==`function`&&e.destroy(t)}catch{}}},Lp=class{constructor(e,t){this.entries=[],this.currentOffset=0,this.ended=!1,this.endPending=!1,this.addedEntryCount=0,this.fileQueue=[],this.fileQueueIndex=0,this.activeFile=null,this.callback=e,this._stringCodec=t?.codec??da(t?.encoding),this.zipComment=fa(t?.comment,this._stringCodec),this.zip64Mode=t?.zip64??`auto`}add(e){if(this.ended)throw Error(`Cannot add files after calling end() `);if(this.zip64Mode===!1&&this.addedEntryCount>=65535)throw Error(`ZIP64 is required but zip64=false`);this.addedEntryCount++,this.fileQueue.push(e),this.activeFile||this._processNextFile()}_processNextFile(){if(this.fileQueueIndex>=this.fileQueue.length){this.activeFile=null,this.fileQueue=[],this.fileQueueIndex=0,this.endPending&&this._finalize();return}let e=this.fileQueue[this.fileQueueIndex++];this.activeFile=e;let t=this.currentOffset;if(e.onerror=e=>{this.ended||(this.ended=!0,this.callback(e,P,!0))},e.ondata=(n,r)=>{if(!this.ended&&(this.currentOffset+=n.length,this.callback(null,n,!1),r)){let n=e.getCentralDirectoryEntryInfo();n&&(n.offset=t,this.entries.push(n)),this._processNextFile()}},typeof e.start==`function`)try{e.start().catch(t=>{let n=o(t);try{e.onerror?.(n)}catch{}})}catch(t){let n=o(t);try{e.onerror?.(n)}catch{}}}_finalize(){if(this.ended)return;this.ended=!0;let e=this.currentOffset,t;try{let n=Mp(this.entries,{zipComment:this.zipComment,zip64Mode:this.zip64Mode,centralDirOffset:e});t=new Uint8Array(n.totalSize),Np(this.entries,{zipComment:this.zipComment,zip64Mode:this.zip64Mode,centralDirOffset:e,out:t,offset:0})}catch(e){let t=o(e);this.callback(t,P,!0);return}this.callback(null,t,!0)}end(){this.endPending||this.ended||(this.endPending=!0,this.activeFile||this._finalize())}abort(e){if(this.ended)return;let t=i(e);this.ended=!0,this.endPending=!0;try{this.activeFile?.abort(t)}catch{}this.callback(t,P,!0)}};function Rp(e){return typeof e==`object`&&`nativeCol`in e&&`nativeRow`in e&&`nativeColOff`in e&&`nativeRowOff`in e}function zp(e){return typeof e==`object`&&`col`in e&&`row`in e}var Bp=class e{constructor(e,t,n=0){if(this.worksheet=e,!t)this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0;else if(typeof t==`string`){let e=M.decodeAddress(t);this.nativeCol=e.col+n,this.nativeColOff=0,this.nativeRow=e.row+n,this.nativeRowOff=0}else Rp(t)?(this.nativeCol=t.nativeCol??0,this.nativeColOff=t.nativeColOff??0,this.nativeRow=t.nativeRow??0,this.nativeRowOff=t.nativeRowOff??0):zp(t)?(this.col=t.col+n,this.row=t.row+n):(this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0)}static asInstance(t){return t==null?null:t instanceof e?t:new e(void 0,t)}get col(){return this.nativeColOff===0?this.nativeCol:this.nativeCol+Math.min(this.colWidth-1,this.nativeColOff)/this.colWidth}set col(e){this.nativeCol=Math.floor(e);let t=e-this.nativeCol;this.nativeColOff=t===0?0:Math.floor(t*this.colWidth)}get row(){return this.nativeRowOff===0?this.nativeRow:this.nativeRow+Math.min(this.rowHeight-1,this.nativeRowOff)/this.rowHeight}set row(e){this.nativeRow=Math.floor(e);let t=e-this.nativeRow;this.nativeRowOff=t===0?0:Math.floor(t*this.rowHeight)}get colWidth(){return this.worksheet&&this.worksheet.getColumn(this.nativeCol+1)&&this.worksheet.getColumn(this.nativeCol+1).isCustomWidth?Math.floor(this.worksheet.getColumn(this.nativeCol+1).width*1e4):64e4}get rowHeight(){let e=this.worksheet?.getRow(this.nativeRow+1)?.height;return e?Math.floor(e*1e4):18e4}get model(){return{nativeCol:this.nativeCol,nativeColOff:this.nativeColOff,nativeRow:this.nativeRow,nativeRowOff:this.nativeRowOff}}set model(e){this.nativeCol=e.nativeCol,this.nativeColOff=e.nativeColOff,this.nativeRow=e.nativeRow,this.nativeRowOff=e.nativeRowOff}clone(t){return new e(t??this.worksheet,this.model)}},Vp=class{constructor(e){this.model=e||{}}add(e,t){return this.model[e]=t}find(e){let t=this.model[e];if(t!==void 0)return t;let n;for(let t of Object.keys(this.model)){if(!t.startsWith(`range:`))continue;n||=M.decodeAddress(e);let r=t.slice(6),i=M.decodeEx(r);if(!(`dimensions`in i))continue;let{tl:a,br:o}=i,s=typeof a==`string`?M.decodeAddress(a):a,c=typeof o==`string`?M.decodeAddress(o):o;if(n.row>=s.row&&n.row<=c.row&&n.col>=s.col&&n.col<=c.col)return this.model[t]}}remove(e){this.model[e]=void 0}},Hp=class extends U{get tag(){return`t`}render(e,t){e.openNode(`t`),/^\s|\n|\s$/.test(t)&&e.addAttribute(`xml:space`,`preserve`),e.writeText(Fc(t)),e.closeNode()}parseOpen(e){return e.name===`t`?(this.model=``,!0):!1}parseText(e){this.model=this.model?this.model+e:e}parseClose(){let e=this.model;return e.includes(`_x`)&&(this.model=Pc(e)),!1}},Up=class e extends U{constructor(e){super(),this.model=e}get tag(){return`r`}get textXform(){return this._textXform||=new Hp}get fontXform(){return this._fontXform||=new af(e.FONT_OPTIONS)}render(e,t){let n=t||this.model;e.openNode(`r`),n.font&&this.fontXform.render(e,n.font),this.textXform.render(e,n.text),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`r`:return this.model={},!0;case`t`:return this.parser=this.textXform,this.parser.parseOpen(e),!0;case`rPr`:return this.parser=this.fontXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`r`:return!1;case`t`:return this.model.text=this.parser.model,this.parser=void 0,!0;case`rPr`:return this.model.font=this.parser.model,this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}static{this.FONT_OPTIONS={tagName:`rPr`,fontNameTag:`rFont`}}},Wp=class extends U{constructor(e){super(),this.model=e||{type:`note`,note:{texts:[]},ref:``}}get tag(){return`r`}get richTextXform(){return this._richTextXform||=new Up,this._richTextXform}render(e,t){let n=t||this.model;e.openNode(`comment`,{ref:n.ref,authorId:0}),e.openNode(`text`),n&&n.note&&n.note.texts&&n.note.texts.forEach(t=>{this.richTextXform.render(e,t)}),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`comment`:return this.model={type:`note`,note:{texts:[]},...e.attributes},!0;case`r`:return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`comment`:return!1;case`r`:return this.model.note.texts.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}},Gp=class extends U{constructor(e){super(),this._model=e||{},this.model={}}get tag(){return this._model?.tag??``}render(e,t,n){(n&&t===n[2]||n&&this.tag===`x:SizeWithCells`&&t===n[1])&&e.leafNode(this.tag)}parseOpen(e){switch(e.name){case this.tag:return this.model={},this.model[this.tag]=!0,!0;default:return!1}}parseText(){}parseClose(){return!1}},Kp=class extends U{constructor(e){super(),this._model=e||{},this.text=``}get tag(){return this._model?.tag??``}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(e){switch(e.name){case this.tag:return this.text=``,!0;default:return!1}}parseText(e){this.text=e}parseClose(){return!1}},qp=class extends U{constructor(){super(),this.text=``}get tag(){return`x:Anchor`}getAnchorRect(e){let t=Math.floor(e.left),n=Math.floor((e.left-t)*68),r=Math.floor(e.top),i=Math.floor((e.top-r)*18),a=Math.floor(e.right),o=Math.floor((e.right-a)*68),s=Math.floor(e.bottom);return[t,n,r,i,a,o,s,Math.floor((e.bottom-s)*18)]}getDefaultRect(e){let t=e.col,n=Math.max(e.row-2,0);return[t,6,n,14,t+2,2,n+4,16]}render(e,t){let n=t.anchor?this.getAnchorRect(t.anchor):this.getDefaultRect(t.refAddress);e.leafNode(`x:Anchor`,null,n.join(`, `))}parseOpen(e){switch(e.name){case this.tag:return this.text=``,!0;default:return!1}}parseText(e){this.text=e}parseClose(){return!1}};let Jp=[`twoCells`,`oneCells`,`absolute`];var Yp=class extends U{constructor(){super(),this.map={"x:Anchor":new qp,"x:Locked":new Kp({tag:`x:Locked`}),"x:LockText":new Kp({tag:`x:LockText`}),"x:SizeWithCells":new Gp({tag:`x:SizeWithCells`}),"x:MoveWithCells":new Gp({tag:`x:MoveWithCells`})},this.model={anchor:[],protection:{},editAs:``}}get tag(){return`x:ClientData`}render(e,t){let{protection:n,editAs:r}=t.note;e.openNode(this.tag,{ObjectType:`Note`}),this.map[`x:MoveWithCells`].render(e,r,Jp),this.map[`x:SizeWithCells`].render(e,r,Jp),this.map[`x:Anchor`].render(e,t),this.map[`x:Locked`].render(e,n.locked),e.leafNode(`x:AutoFill`,null,`False`),this.map[`x:LockText`].render(e,n.lockText),e.leafNode(`x:Row`,null,t.refAddress.row-1),e.leafNode(`x:Column`,null,t.refAddress.col-1),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:this.reset(),this.model={anchor:[],protection:{},editAs:``};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.normalizeModel(),!1;default:return!0}}normalizeModel(){let e=Object.assign({},this.map[`x:MoveWithCells`].model,this.map[`x:SizeWithCells`].model),t=Object.keys(e).length;this.model.editAs=Jp[t],this.model.anchor=this.map[`x:Anchor`].text,this.model.protection.locked=this.map[`x:Locked`].text,this.model.protection.lockText=this.map[`x:LockText`].text}},Xp=class extends U{constructor(){super(),this.model={}}get tag(){return`v:textbox`}conversionUnit(e,t,n){return`${(parseFloat(e.toString())*t).toFixed(2)}${n}`}reverseConversionUnit(e){return(e??``).split(`,`).map(e=>Number(parseFloat(this.conversionUnit(parseFloat(e),.1,``)).toFixed(2)))}render(e,t){let n={style:`mso-direction-alt:auto`};if(t&&t.note){let{inset:e}=t.note&&t.note.margins||{};Array.isArray(e)&&(e=e.map(e=>this.conversionUnit(e,10,`mm`)).join(`,`)),e&&(n.inset=e)}e.openNode(`v:textbox`,n),e.leafNode(`div`,{style:`text-align:left`}),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return this.model={inset:this.reverseConversionUnit(e.attributes.inset)},!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},Zp=class e extends U{constructor(){super(),this.map={"v:textbox":new Xp,"x:ClientData":new Yp}}get tag(){return`v:shape`}render(t,n,r){t.openNode(`v:shape`,e.V_SHAPE_ATTRIBUTES(n,r??0)),t.leafNode(`v:fill`,{color2:`infoBackground [80]`}),t.leafNode(`v:shadow`,{color:`none [81]`,obscured:`t`}),t.leafNode(`v:path`,{"o:connecttype":`none`}),this.map[`v:textbox`].render(t,n),this.map[`x:ClientData`].render(t,n),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={margins:{insetmode:e.attributes[`o:insetmode`]},anchor:``,editAs:``,protection:{}};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.margins.inset=this.map[`v:textbox`].model&&this.map[`v:textbox`].model.inset,this.model.protection=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.protection,this.model.anchor=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.anchor,this.model.editAs=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.editAs,!1;default:return!0}}static{this.V_SHAPE_ATTRIBUTES=(e,t)=>({id:`_x0000_s${1025+t}`,type:`#_x0000_t202`,style:`position:absolute; margin-left:105.3pt;margin-top:10.5pt;width:97.8pt;height:59.1pt;z-index:1;visibility:hidden`,fillcolor:`infoBackground [80]`,strokecolor:`none [81]`,"o:insetmode":e.note.margins&&e.note.margins.insetmode})}},Qp=class{constructor(e,t,n){this.id=n.id,this.count=0,this._worksheet=e,this._workbook=n.workbook,this._sheetRelsWriter=t}get commentsStream(){return this._commentsStream||=this._workbook._openStream(Wu(this.id)),this._commentsStream}get vmlStream(){return this._vmlStream||=this._workbook._openStream(Ku(this.id)),this._vmlStream}_addRelationships(){let e={Type:F.Comments,Target:ud(this.id)};this._sheetRelsWriter.addRelationship(e);let t={Type:F.VmlDrawing,Target:dd(this.id)};this.vmlRelId=this._sheetRelsWriter.addRelationship(t)}_addCommentRefs(){this._workbook.commentRefs.push({commentName:`comments${this.id}`,vmlDrawing:`vmlDrawing${this.id}`})}_writeOpen(){this.commentsStream.write(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><comments xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><authors><author>Author</author></authors><commentList>`),this.vmlStream.write(`<?xml version="1.0" encoding="UTF-8"?><xml xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:x="urn:schemas-microsoft-com:office:excel"><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1" /></o:shapelayout><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe"><v:stroke joinstyle="miter" /><v:path gradientshapeok="t" o:connecttype="rect" /></v:shapetype>`)}_writeComment(e,t){let n=new Wp,r=new wd;n.render(r,e),this.commentsStream.write(r.xml);let i=new Zp,a=new wd;i.render(a,e,t),this.vmlStream.write(a.xml)}_writeClose(){this.commentsStream.write(`</commentList></comments>`),this.vmlStream.write(`</xml>`)}addComments(e){e&&e.length&&(this.startedData||=(this._worksheet.comments=[],this._writeOpen(),this._addRelationships(),this._addCommentRefs(),!0),e.forEach(e=>{e.refAddress=M.decodeAddress(e.ref)}),e.forEach(e=>{this._writeComment(e,this.count),this.count+=1}))}commit(){this.count&&(this._writeClose(),this.commentsStream.end(),this.vmlStream.end())}},$p=class extends U{get tag(){return`hyperlink`}render(e,t){t.target&&em(t.target)?e.leafNode(`hyperlink`,{ref:t.address,tooltip:t.tooltip,location:t.target.slice(1)}):e.leafNode(`hyperlink`,{ref:t.address,"r:id":t.rId,tooltip:t.tooltip})}parseOpen(e){if(e.name===`hyperlink`){if(this.model={address:e.attributes.ref,rId:e.attributes[`r:id`],tooltip:e.attributes.tooltip},e.attributes.location){let t=e.attributes.location;this.model.target=t.startsWith(`#`)?t:`#${t}`}return!0}return!1}parseText(){}parseClose(){return!1}};function em(e){return e.startsWith(`#`)}var tm=class{constructor(e){this.writer=e}push(e){this.writer.addHyperlink(e)}},nm=class{constructor(e){this.id=e.id,this.count=0,this._hyperlinks=[],this._workbook=e.workbook}get stream(){return this._stream||=this._workbook._openStream(Hu(this.id)),this._stream}get length(){return this._hyperlinks.length}each(e){return this._hyperlinks.forEach(e)}get hyperlinksProxy(){return this._hyperlinksProxy||=new tm(this)}addHyperlink(e){if(em(e.target)){this._hyperlinks.push({address:e.address,target:e.target});return}let t={Target:e.target,Type:F.Hyperlink,TargetMode:`External`},n=this._writeRelationship(t);this._hyperlinks.push({rId:n,address:e.address})}addMedia(e){return this._writeRelationship(e)}addRelationship(e){return this._writeRelationship(e)}commit(){this.count&&(this._writeClose(),this.stream.end())}_writeOpen(){this.stream.write(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
404
|
-
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">`)}_writeRelationship(e){this.count||this._writeOpen();let t=`rId${++this.count}`;return e.TargetMode?this.stream.write(`<Relationship Id="${t}" Type="${R(e.Type)}" Target="${R(e.Target)}" TargetMode="${R(e.TargetMode)}"/>`):this.stream.write(`<Relationship Id="${t}" Type="${R(e.Type)}" Target="${R(e.Target)}"/>`),t}_writeClose(){this.stream.write(`</Relationships>`)}};function rm(e){return bd(e.name&&e.extension&&e.name.endsWith(`.${e.extension}`)?e.name:`${e.name}.${e.extension}`)}function im(e,t,n){let r=[],i=[...t],a={};for(let t of e){let e=String(t.imageId),o=n.getBookImage(t.imageId);if(!o)continue;let s=a[e];s||(s=n.nextRId(i),a[e]=s,i.push({Id:s,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,Target:rm(o)}));let c={picture:{rId:s},range:t.range};if(t.opacity!==void 0){let e=Math.max(0,Math.min(1,t.opacity));c.picture.alphaModFix=Math.round(e*1e5)}if(t.hyperlinks&&t.hyperlinks.hyperlink){let e=n.nextRId(i);c.picture.hyperlinks={tooltip:t.hyperlinks.tooltip,rId:e},i.push({Id:e,Type:F.Hyperlink,Target:t.hyperlinks.hyperlink,TargetMode:`External`})}r.push(c)}return{anchors:r,rels:i}}function am(e){return e.filter(e=>e==null?!1:e.range?.pos===void 0?e.range?.br&&e.shape?!0:!(!e.range?.br&&!e.picture||e.range?.br&&!e.picture&&!e.shape):!!e.picture)}function om(e,t,n,r,i){let a=i(e,t)?.style?.border,o=r-t+1,s=n-e+1,c=Array(o),l=Array(o),u=Array(s),d=Array(s),f=!1;for(let o=t;o<=r;o++){let r=o-t,s=i(e,o)?.style?.border;c[r]=s?.top||a?.top,n===e?l[r]=s?.bottom||a?.bottom:l[r]=i(n,o)?.style?.border?.bottom||a?.bottom,(c[r]||l[r])&&(f=!0)}for(let o=e;o<=n;o++){let n=o-e,s=i(o,t)?.style?.border;u[n]=s?.left||a?.left,r===t?d[n]=s?.right||a?.right:d[n]=i(o,r)?.style?.border?.right||a?.right,(u[n]||d[n])&&(f=!0)}let p=a?.diagonal,m=a?.color;if(!(!f&&!p))return{topEdges:c,bottomEdges:l,leftEdges:u,rightEdges:d,diagonal:p,color:m}}function sm(e,t,n,r,i,a){let{topEdges:o,bottomEdges:s,leftEdges:c,rightEdges:l,diagonal:u,color:d}=i,f=a(e,t).style;for(let i=e;i<=n;i++)for(let p=t;p<=r;p++){let m=a(i,p),h=L(f)||{},g={},_=!1;i===e&&o[p-t]&&(g.top=o[p-t],_=!0),i===n&&s[p-t]&&(g.bottom=s[p-t],_=!0),p===t&&c[i-e]&&(g.left=c[i-e],_=!0),p===r&&l[i-e]&&(g.right=l[i-e],_=!0),u&&(g.diagonal=u,_=!0),_?(d&&(g.color=d),h.border=g):delete h.border,m.style=h}}Ja();function cm(e){let t=new Uint8Array(4);return t[0]=e&255,t[1]=e>>8&255,t[2]=e>>16&255,t[3]=e>>24&255,t}let lm={async hash(e,...t){return Ha(e,E(t))},async convertPasswordToHash(e,t,n,r){let i=tl(e),a=kc(n),o=await this.hash(t,a,i);for(let e=0;e<r;e++)o=await this.hash(t,o,cm(e));return el(o)},randomBytes(e){return Va(e)}};async function um(e,t){let n={sheet:!0};return t&&`spinCount`in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(n.algorithmName=`SHA-512`,n.saltValue=el(lm.randomBytes(16)),n.spinCount=t&&`spinCount`in t?t.spinCount:1e5,n.hashValue=await lm.convertPasswordToHash(e,`SHA-512`,n.saltValue,n.spinCount)),t&&(Object.assign(n,t),!e&&`spinCount`in t&&delete n.spinCount),n}let dm=new TextEncoder;var fm=class{constructor(e){this._buf=new Uint8Array(e&&e.size||16384),this._inPos=0,this._buffer=void 0}get length(){return this._inPos}get capacity(){return this._buf.length}get buffer(){return this._buf}toBuffer(){return this._buffer||=this._buf.slice(0,this._inPos),this._buffer}reset(e){e??=0,this._buffer=void 0,this._inPos=e}_grow(e){let t=this._buf.length*2;for(;t<e;)t*=2;let n=new Uint8Array(t);n.set(this._buf),this._buf=n}addText(e){this._buffer=void 0;let t=this._inPos+e.length;t>this._buf.length-4&&this._grow(t);let n=this._buf.subarray(this._inPos),r=dm.encodeInto(e,n);if(r.read<e.length){let t=e.length-r.read;this._grow(this._inPos+r.written+t*3);let n=dm.encodeInto(e.substring(r.read),this._buf.subarray(this._inPos+r.written));this._inPos+=r.written+n.written}else this._inPos+=r.written}addStringBuf(e){e.length&&(this._buffer=void 0,this.length+e.length>this.capacity&&this._grow(this.length+e.length),this._buf.set(e._buf.subarray(0,e.length),this._inPos),this._inPos+=e.length)}},pm=class extends U{get tag(){return`autoFilter`}render(e,t){if(t)if(typeof t==`string`)e.leafNode(`autoFilter`,{ref:t});else{let n=function(e){return typeof e==`string`?e:M.getAddress(e.row,e.col).address},r=n(t.from),i=n(t.to);r&&i&&e.leafNode(`autoFilter`,{ref:`${r}:${i}`})}}parseOpen(e){e.name===`autoFilter`&&(this.model=e.attributes.ref)}},mm=class extends U{createNewModel(e){return{}}parseOpen(e){return this.parser=this.parser||this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model=this.createNewModel(e),!0):!1}parseText(e){this.parser&&this.parser.parseText(e)}onParserClose(e,t){this.model[e]=t.model}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.onParserClose(e,this.parser),this.parser=void 0),!0):e!==this.tag}get tag(){return``}},hm=class extends U{get tag(){return`cfvo`}render(e,t){e.leafNode(this.tag,{type:t.type,val:t.value})}parseOpen(e){this.model={type:e.attributes.type,value:U.toFloatValue(e.attributes.val)}}parseClose(e){return e!==this.tag}},gm=class extends mm{constructor(){super(),this.map={cfvo:this.cfvoXform=new hm,color:this.colorXform=new Wd}}get tag(){return`colorScale`}render(e,t){e.openNode(this.tag),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),t.color.forEach(t=>{this.colorXform.render(e,t)}),e.closeNode()}createNewModel(e){return{cfvo:[],color:[]}}onParserClose(e,t){this.model[e].push(t.model)}},_m=class extends mm{constructor(){super(),this.map={cfvo:this.cfvoXform=new hm,color:this.colorXform=new Wd}}get tag(){return`dataBar`}render(e,t){e.openNode(this.tag),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),this.colorXform.render(e,t.color),e.closeNode()}createNewModel(){return{cfvo:[]}}onParserClose(e,t){switch(e){case`cfvo`:this.model.cfvo.push(t.model);break;case`color`:this.model.color=t.model;break}}},vm=class extends U{get tag(){return`x14:id`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},ym=class extends mm{constructor(){super(),this.map={"x14:id":this.idXform=new vm}}get tag(){return`ext`}render(e,t){e.openNode(this.tag,{uri:`{B025F937-C7B1-47D3-B67F-A62EFF666E3E}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`}),this.idXform.render(e,t.x14Id),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model.x14Id=t.model}},bm=class extends mm{constructor(){super(),this.map={ext:new ym}}get tag(){return`extLst`}render(e,t){t.x14Id&&(e.openNode(this.tag),this.map.ext.render(e,t),e.closeNode())}createNewModel(){return{}}onParserClose(e,t){Object.assign(this.model,t.model)}},xm=class extends U{get tag(){return`formula`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},Sm=class extends mm{constructor(){super(),this.map={cfvo:this.cfvoXform=new hm}}get tag(){return`iconSet`}render(e,t){e.openNode(this.tag,{iconSet:U.toStringAttribute(t.iconSet,`3TrafficLights`),reverse:U.toBoolAttribute(t.reverse,!1),showValue:U.toBoolAttribute(t.showValue,!0)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),e.closeNode()}createNewModel({attributes:e}){return{iconSet:U.toStringValue(e.iconSet,`3TrafficLights`),reverse:U.toBoolValue(e.reverse),showValue:U.toBoolValue(e.showValue),cfvo:[]}}onParserClose(e,t){this.model[e].push(t.model)}};let Cm={"3Triangles":!0,"3Stars":!0,"5Boxes":!0},wm=e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];let{tl:t}=new N(e.ref);switch(e.operator){case`containsText`:return`NOT(ISERROR(SEARCH("${e.text}",${t})))`;case`containsBlanks`:return`LEN(TRIM(${t}))=0`;case`notContainsBlanks`:return`LEN(TRIM(${t}))>0`;case`containsErrors`:return`ISERROR(${t})`;case`notContainsErrors`:return`NOT(ISERROR(${t}))`;default:return}},Tm=e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];let{tl:t}=new N(e.ref);switch(e.timePeriod){case`thisWeek`:return`AND(TODAY()-ROUNDDOWN(${t},0)<=WEEKDAY(TODAY())-1,ROUNDDOWN(${t},0)-TODAY()<=7-WEEKDAY(TODAY()))`;case`lastWeek`:return`AND(TODAY()-ROUNDDOWN(${t},0)>=(WEEKDAY(TODAY())),TODAY()-ROUNDDOWN(${t},0)<(WEEKDAY(TODAY())+7))`;case`nextWeek`:return`AND(ROUNDDOWN(${t},0)-TODAY()>(7-WEEKDAY(TODAY())),ROUNDDOWN(${t},0)-TODAY()<(15-WEEKDAY(TODAY())))`;case`yesterday`:return`FLOOR(${t},1)=TODAY()-1`;case`today`:return`FLOOR(${t},1)=TODAY()`;case`tomorrow`:return`FLOOR(${t},1)=TODAY()+1`;case`last7Days`:return`AND(TODAY()-FLOOR(${t},1)<=6,FLOOR(${t},1)<=TODAY())`;case`lastMonth`:return`AND(MONTH(${t})=MONTH(EDATE(TODAY(),0-1)),YEAR(${t})=YEAR(EDATE(TODAY(),0-1)))`;case`thisMonth`:return`AND(MONTH(${t})=MONTH(TODAY()),YEAR(${t})=YEAR(TODAY()))`;case`nextMonth`:return`AND(MONTH(${t})=MONTH(EDATE(TODAY(),0+1)),YEAR(${t})=YEAR(EDATE(TODAY(),0+1)))`;default:return}},Em=e=>{let{type:t,operator:n}=e;switch(t){case`containsText`:case`containsBlanks`:case`notContainsBlanks`:case`containsErrors`:case`notContainsErrors`:return{type:`containsText`,operator:t};default:return{type:t,operator:n}}};var Dm=class e extends mm{constructor(){super(),this.map={dataBar:this.databarXform=new _m,extLst:this.extLstRefXform=new bm,formula:this.formulaXform=new xm,colorScale:this.colorScaleXform=new gm,iconSet:this.iconSetXform=new Sm}}get tag(){return`cfRule`}static isPrimitive(e){return!(e.type===`iconSet`&&(e.custom||Cm[e.iconSet]))}render(e,t){switch(t.type){case`expression`:this.renderExpression(e,t);break;case`cellIs`:this.renderCellIs(e,t);break;case`top10`:this.renderTop10(e,t);break;case`aboveAverage`:this.renderAboveAverage(e,t);break;case`dataBar`:this.renderDataBar(e,t);break;case`colorScale`:this.renderColorScale(e,t);break;case`iconSet`:this.renderIconSet(e,t);break;case`containsText`:this.renderText(e,t);break;case`timePeriod`:this.renderTimePeriod(e,t);break}}renderExpression(e,t){e.openNode(this.tag,{type:`expression`,dxfId:t.dxfId,priority:t.priority}),this.formulaXform.render(e,t.formulae[0]),e.closeNode()}renderCellIs(e,t){e.openNode(this.tag,{type:`cellIs`,dxfId:t.dxfId,priority:t.priority,operator:t.operator}),t.formulae.forEach(t=>{this.formulaXform.render(e,t)}),e.closeNode()}renderTop10(e,t){e.leafNode(this.tag,{type:`top10`,dxfId:t.dxfId,priority:t.priority,percent:U.toBoolAttribute(t.percent,!1),bottom:U.toBoolAttribute(t.bottom,!1),rank:U.toIntValue(t.rank,10)})}renderAboveAverage(e,t){e.leafNode(this.tag,{type:`aboveAverage`,dxfId:t.dxfId,priority:t.priority,aboveAverage:U.toBoolAttribute(t.aboveAverage,!0)})}renderDataBar(e,t){e.openNode(this.tag,{type:`dataBar`,priority:t.priority}),this.databarXform.render(e,t),this.extLstRefXform.render(e,t),e.closeNode()}renderColorScale(e,t){e.openNode(this.tag,{type:`colorScale`,priority:t.priority}),this.colorScaleXform.render(e,t),e.closeNode()}renderIconSet(t,n){e.isPrimitive(n)&&(t.openNode(this.tag,{type:`iconSet`,priority:n.priority}),this.iconSetXform.render(t,n),t.closeNode())}renderText(e,t){e.openNode(this.tag,{type:t.operator,dxfId:t.dxfId,priority:t.priority,operator:U.toStringAttribute(t.operator,`containsText`)});let n=wm(t);n&&this.formulaXform.render(e,n),e.closeNode()}renderTimePeriod(e,t){e.openNode(this.tag,{type:`timePeriod`,dxfId:t.dxfId,priority:t.priority,timePeriod:t.timePeriod});let n=Tm(t);n&&this.formulaXform.render(e,n),e.closeNode()}createNewModel({attributes:e}){return{...Em(e),dxfId:U.toIntValue(e.dxfId),priority:U.toIntValue(e.priority),timePeriod:e.timePeriod,percent:U.toBoolValue(e.percent),bottom:U.toBoolValue(e.bottom),rank:U.toIntValue(e.rank),aboveAverage:U.toBoolValue(e.aboveAverage)}}onParserClose(e,t){switch(e){case`dataBar`:case`extLst`:case`colorScale`:case`iconSet`:Object.assign(this.model,t.model);break;case`formula`:this.model.formulae=this.model.formulae??[],this.model.formulae.push(t.model);break}}},Om=class extends mm{constructor(){super(),this.map={cfRule:new Dm}}get tag(){return`conditionalFormatting`}render(e,t){t.rules.some(Dm.isPrimitive)&&(e.openNode(this.tag,{sqref:t.ref}),t.rules.forEach(n=>{Dm.isPrimitive(n)&&(n.ref=t.ref,this.map.cfRule.render(e,n))}),e.closeNode())}createNewModel({attributes:e}){return{ref:e.sqref,rules:[]}}onParserClose(e,t){this.model.rules.push(t.model)}},km=class extends U{constructor(){super(),this.cfXform=new Om}get tag(){return`conditionalFormatting`}reset(){this.model=[]}prepare(e,t){let n=e.reduce((e,t)=>Math.max(e,...t.rules.map(e=>e.priority??0)),1);e.forEach(e=>{e.rules.forEach(e=>{e.priority||=n++,e.style&&(e.dxfId=t.styles.addDxfStyle(e.style)),e.type===`dataBar`&&((!e.cfvo||e.cfvo.length<2)&&(e.cfvo=[{type:`min`},{type:`max`}]),e.color||={argb:`FF638EC6`})})})}render(e,t){t.forEach(t=>{this.cfXform.render(e,t)})}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`conditionalFormatting`:return this.parser=this.cfXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?this.parser.parseClose(e)?!0:(this.model.push(this.parser.model),this.parser=void 0,!1):!1}reconcile(e,t){e.forEach(e=>{e.rules.forEach(e=>{e.dxfId!==void 0&&(e.style=t.styles.getDxfStyle(e.dxfId),delete e.dxfId)})})}},Am=class extends U{get tag(){return`brk`}render(e,t){e.leafNode(`brk`,t)}parseOpen(e){if(e.name===`brk`){let{id:t,max:n,man:r,min:i}=e.attributes;return this.model={id:+t,max:+n,man:+r},i!==void 0&&(this.model.min=+i),!0}return!1}parseText(){}parseClose(){return!1}},jm=class extends W{constructor(){super({tag:`colBreaks`,count:!0,childXform:new Am})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),e.addAttribute(this.$count,t.length),e.addAttribute(`manualBreakCount`,t.length);let{childXform:n}=this;for(let r of t)n.render(e,r);e.closeNode()}}},Mm=class extends U{get tag(){return`col`}prepare(e,t){let n=t.styles.addStyleModel(e.style||{});n&&(e.styleId=n)}render(e,t){e.openNode(`col`),e.addAttribute(`min`,t.min),e.addAttribute(`max`,t.max),t.width&&e.addAttribute(`width`,t.width),t.styleId&&e.addAttribute(`style`,t.styleId),t.hidden&&e.addAttribute(`hidden`,`1`),t.bestFit&&e.addAttribute(`bestFit`,`1`),t.outlineLevel&&e.addAttribute(`outlineLevel`,t.outlineLevel),t.collapsed&&e.addAttribute(`collapsed`,`1`),e.addAttribute(`customWidth`,`1`),e.closeNode()}parseOpen(e){if(e.name===`col`){let t=this.model={min:parseInt(e.attributes.min??`0`,10),max:parseInt(e.attributes.max??`0`,10),width:e.attributes.width===void 0?void 0:parseFloat(e.attributes.width??`0`)};return e.attributes.style&&(t.styleId=parseInt(e.attributes.style,10)),Gc(e.attributes.hidden)&&(t.hidden=!0),Gc(e.attributes.bestFit)&&(t.bestFit=!0),e.attributes.outlineLevel&&(t.outlineLevel=parseInt(e.attributes.outlineLevel,10)),Gc(e.attributes.collapsed)&&(t.collapsed=!0),!0}return!1}parseText(){}parseClose(){return!1}reconcile(e,t){e.styleId!==void 0&&(e.style=t.styles.getStyleModel(e.styleId))}};function Nm(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=i}function Pm(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=Gc(i)}function Fm(e){if(!e)return[];let t=[],n={};for(let[r,i]of Object.entries(e))if(i!=null)if(r.startsWith(`range:`)){let e=r.slice(6),{sqref:n,...a}=i;t.push({...a,sqref:e})}else n[r]=i;if(Object.keys(n).length===0)return t;let r=Object.entries(n).map(([e,t])=>({address:e,dataValidation:t,marked:!1})).sort((e,t)=>M.compareAddress(e.address,t.address)),i=Object.fromEntries(r.map(e=>[e.address,e])),a=(e,t,r)=>{for(let i=0;i<t;i++){let t=M.encodeAddress(e.row+i,r);if(!n[t]||!fc(n[e.address],n[t]))return!1}return!0},o=r.map(e=>{if(!e.marked){let t=M.decodeEx(e.address);if(t.dimensions)return i[t.dimensions].marked=!0,{...e.dataValidation,sqref:e.address};let r=1,o=M.encodeAddress(t.row+r,t.col);for(;n[o]&&fc(e.dataValidation,n[o]);)r++,o=M.encodeAddress(t.row+r,t.col);let s=1;for(;a(t,r,t.col+s);)s++;for(let e=0;e<r;e++)for(let n=0;n<s;n++)o=M.encodeAddress(t.row+e,t.col+n),i[o].marked=!0;if(r>1||s>1){let n=t.row+(r-1),i=t.col+(s-1);return{...e.dataValidation,sqref:`${e.address}:${M.encodeAddress(n,i)}`}}return{...e.dataValidation,sqref:e.address}}return null}).filter(Boolean);return[...t,...o]}var Im=class extends U{get tag(){return`dataValidations`}render(e,t){let n=Fm(t);n.length&&(e.openNode(`dataValidations`,{count:n.length}),n.forEach(t=>{e.openNode(`dataValidation`),t.type!==`any`&&(e.addAttribute(`type`,t.type),t.operator&&t.type!==`list`&&t.operator!==`between`&&e.addAttribute(`operator`,t.operator),t.allowBlank&&e.addAttribute(`allowBlank`,`1`)),t.showInputMessage&&e.addAttribute(`showInputMessage`,`1`),t.promptTitle&&e.addAttribute(`promptTitle`,t.promptTitle),t.prompt&&e.addAttribute(`prompt`,t.prompt),t.showErrorMessage&&e.addAttribute(`showErrorMessage`,`1`),t.errorStyle&&e.addAttribute(`errorStyle`,t.errorStyle),t.errorTitle&&e.addAttribute(`errorTitle`,t.errorTitle),t.error&&e.addAttribute(`error`,t.error),e.addAttribute(`sqref`,t.sqref),(t.formulae??[]).forEach((n,r)=>{e.openNode(`formula${r+1}`),t.type===`date`?e.writeText(Ac(new Date(n))):e.writeText(n),e.closeNode()}),e.closeNode()}),e.closeNode())}parseOpen(e){switch(e.name){case`dataValidations`:return this.model={},!0;case`dataValidation`:{this._address=e.attributes.sqref;let t={type:e.attributes.type??`any`,formulae:[]};switch(e.attributes.type&&Pm(t,e.attributes,`allowBlank`),Pm(t,e.attributes,`showInputMessage`),Pm(t,e.attributes,`showErrorMessage`),t.type){case`any`:case`list`:case`custom`:break;default:Nm(t,e.attributes,`operator`,`between`);break}return Nm(t,e.attributes,`promptTitle`),Nm(t,e.attributes,`prompt`),Nm(t,e.attributes,`errorStyle`),Nm(t,e.attributes,`errorTitle`),Nm(t,e.attributes,`error`),this._dataValidation=t,!0}case`formula1`:case`formula2`:return this._formula=[],!0;default:return!1}}parseText(e){this._formula&&this._formula.push(e)}parseClose(e){switch(e){case`dataValidations`:return!1;case`dataValidation`:return(!this._dataValidation.formulae||!this._dataValidation.formulae.length)&&(delete this._dataValidation.formulae,delete this._dataValidation.operator),this._address.split(/\s+/g).forEach(e=>{e.includes(`:`)?this.model[`range:${e}`]=this._dataValidation:this.model[e]=this._dataValidation}),!0;case`formula1`:case`formula2`:{let e=this._formula.join(``);switch(this._dataValidation.type){case`whole`:case`textLength`:e=parseInt(e,10);break;case`decimal`:e=parseFloat(e);break;case`date`:e=jc(parseFloat(e));break;default:break}return this._dataValidation.formulae.push(e),this._formula=void 0,!0}default:return!0}}},Lm=class extends U{get tag(){return`drawing`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}},Rm=class extends U{get tag(){return`xm:f`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},zm=class extends mm{constructor(){super(),this.map={"xm:f":this.fExtXform=new Rm}}get tag(){return`x14:cfvo`}render(e,t){e.openNode(this.tag,{type:t.type}),t.value!==void 0&&this.fExtXform.render(e,t.value),e.closeNode()}createNewModel(e){return{type:e.attributes.type}}onParserClose(e,t){switch(e){case`xm:f`:this.model.value=t.model?parseFloat(t.model):0;break}}},Bm=class extends mm{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new zm,"x14:borderColor":this.borderColorXform=new Wd(`x14:borderColor`),"x14:negativeBorderColor":this.negativeBorderColorXform=new Wd(`x14:negativeBorderColor`),"x14:negativeFillColor":this.negativeFillColorXform=new Wd(`x14:negativeFillColor`),"x14:axisColor":this.axisColorXform=new Wd(`x14:axisColor`)}}static isExt(e){return!0}get tag(){return`x14:dataBar`}render(e,t){e.openNode(this.tag,{minLength:U.toIntAttribute(t.minLength,0,!0),maxLength:U.toIntAttribute(t.maxLength,100,!0),border:U.toBoolAttribute(t.border,!1),gradient:U.toBoolAttribute(t.gradient,!0),negativeBarColorSameAsPositive:U.toBoolAttribute(t.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:U.toBoolAttribute(t.negativeBarBorderColorSameAsPositive,!0),axisPosition:U.toAttribute(t.axisPosition,`auto`),direction:U.toAttribute(t.direction,`leftToRight`)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),this.borderColorXform.render(e,t.borderColor),this.negativeBorderColorXform.render(e,t.negativeBorderColor),this.negativeFillColorXform.render(e,t.negativeFillColor),this.axisColorXform.render(e,t.axisColor),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],minLength:U.toIntValue(e.minLength,0),maxLength:U.toIntValue(e.maxLength,100),border:U.toBoolValue(e.border,!1),gradient:U.toBoolValue(e.gradient,!0),negativeBarColorSameAsPositive:U.toBoolValue(e.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:U.toBoolValue(e.negativeBarBorderColorSameAsPositive,!0),axisPosition:U.toStringValue(e.axisPosition,`auto`),direction:U.toStringValue(e.direction,`leftToRight`)}}onParserClose(e,t){let[,n]=e.split(`:`);switch(n){case`cfvo`:this.model.cfvo.push(t.model);break;default:this.model[n]=t.model;break}}},Vm=class extends U{get tag(){return`x14:cfIcon`}render(e,t){e.leafNode(this.tag,{iconSet:t.iconSet,iconId:t.iconId})}parseOpen({attributes:e}){this.model={iconSet:e.iconSet,iconId:U.toIntValue(e.iconId)}}parseClose(e){return e!==this.tag}},Hm=class extends mm{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new zm,"x14:cfIcon":this.cfIconXform=new Vm}}get tag(){return`x14:iconSet`}render(e,t){e.openNode(this.tag,{iconSet:U.toStringAttribute(t.iconSet),reverse:U.toBoolAttribute(t.reverse,!1),showValue:U.toBoolAttribute(t.showValue,!0),custom:U.toBoolAttribute(t.icons,!1)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),t.icons&&t.icons.forEach((t,n)=>{t.iconId=n,this.cfIconXform.render(e,t)}),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],iconSet:U.toStringValue(e.iconSet,`3TrafficLights`),reverse:U.toBoolValue(e.reverse,!1),showValue:U.toBoolValue(e.showValue,!0)}}onParserClose(e,t){let[,n]=e.split(`:`);switch(n){case`cfvo`:this.model.cfvo.push(t.model);break;case`cfIcon`:this.model.icons||(this.model.icons=[]),this.model.icons.push(t.model);break;default:this.model[n]=t.model;break}}};function K(e){return e.toString(16).padStart(2,`0`)}function Um(e){e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=e;return K(t[0])+K(t[1])+K(t[2])+K(t[3])+`-`+K(t[4])+K(t[5])+`-`+K(t[6])+K(t[7])+`-`+K(t[8])+K(t[9])+`-`+K(t[10])+K(t[11])+K(t[12])+K(t[13])+K(t[14])+K(t[15])}function Wm(){let e=globalThis.crypto;if(e?.randomUUID)return e.randomUUID();let t=new Uint8Array(16);if(e?.getRandomValues)return e.getRandomValues(t),Um(t);for(let e=0;e<t.length;e++)t[e]=Math.floor(Math.random()*256);return Um(t)}let Gm={"3Triangles":!0,"3Stars":!0,"5Boxes":!0};var Km=class e extends mm{constructor(){super(),this.map={"x14:dataBar":this.databarXform=new Bm,"x14:iconSet":this.iconSetXform=new Hm}}get tag(){return`x14:cfRule`}static isExt(e){return e.type===`dataBar`?Bm.isExt(e):!!(e.type===`iconSet`&&(e.custom||Gm[e.iconSet]))}static prepareRule(t){e.isExt(t)&&!t.x14Id&&(t.x14Id=`{${Wm()}}`.toUpperCase())}prepare(t){e.prepareRule(t)}render(t,n){if(e.isExt(n))switch(n.type){case`dataBar`:this.renderDataBar(t,n);break;case`iconSet`:this.renderIconSet(t,n);break}}renderDataBar(e,t){e.openNode(this.tag,{type:`dataBar`,id:t.x14Id}),this.databarXform.render(e,t),e.closeNode()}renderIconSet(e,t){e.openNode(this.tag,{type:`iconSet`,priority:t.priority,id:t.x14Id??`{${Wm()}}`}),this.iconSetXform.render(e,t),e.closeNode()}createNewModel({attributes:e}){return{type:e.type,x14Id:e.id,priority:U.toIntValue(e.priority)}}onParserClose(e,t){Object.assign(this.model,t.model)}},qm=class extends U{get tag(){return`xm:sqref`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},Jm=class extends mm{constructor(){super(),this.map={"xm:sqref":this.sqRef=new qm,"x14:cfRule":this.cfRule=new Km}}get tag(){return`x14:conditionalFormatting`}prepare(e){e.rules.forEach(e=>{this.cfRule.prepare(e)})}render(e,t){t.rules.some(Km.isExt)&&(e.openNode(this.tag,{"xmlns:xm":`http://schemas.microsoft.com/office/excel/2006/main`}),t.rules.filter(Km.isExt).forEach(t=>this.cfRule.render(e,t)),this.sqRef.render(e,t.ref),e.closeNode())}createNewModel(){return{rules:[]}}onParserClose(e,t){switch(e){case`xm:sqref`:this.model.ref=t.model;break;case`x14:cfRule`:this.model.rules.push(t.model);break}}},Ym=class extends mm{constructor(){super(),this.map={"x14:conditionalFormatting":this.cfXform=new Jm}}get tag(){return`x14:conditionalFormattings`}hasContent(e){return e.hasExtContent===void 0&&(e.hasExtContent=e.some(e=>e.rules.some(Km.isExt))),e.hasExtContent}prepare(e){e.forEach(e=>{this.cfXform.prepare(e)})}render(e,t){this.hasContent(t)&&(e.openNode(this.tag),t.forEach(t=>this.cfXform.render(e,t)),e.closeNode())}createNewModel(){return[]}onParserClose(e,t){this.model.push(t.model)}},Xm=class extends mm{constructor(){super(),this.map={"x14:conditionalFormattings":this.conditionalFormattings=new Ym}}get tag(){return`ext`}hasContent(e){return this.conditionalFormattings.hasContent(e.conditionalFormattings)}prepare(e){this.conditionalFormattings.prepare(e.conditionalFormattings)}render(e,t){e.openNode(`ext`,{uri:`{78C0D931-6437-407d-A8EE-F0AAD7539E65}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`}),this.conditionalFormattings.render(e,t.conditionalFormattings),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}},Zm=class extends mm{constructor(){super(),this.map={ext:this.ext=new Xm}}get tag(){return`extLst`}prepare(e,t){this.ext.prepare(e)}hasContent(e){return this.ext.hasContent(e)}render(e,t){this.hasContent(t)&&(e.openNode(`extLst`),this.ext.render(e,t),e.closeNode())}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}},Qm=class extends U{get tag(){return`headerFooter`}render(e,t){if(!t)return;let n={},r=[];if(t.differentFirst&&(n.differentFirst=`1`),t.differentOddEven&&(n.differentOddEven=`1`),t.oddHeader&&typeof t.oddHeader==`string`&&r.push({name:`oddHeader`,text:t.oddHeader}),t.oddFooter&&typeof t.oddFooter==`string`&&r.push({name:`oddFooter`,text:t.oddFooter}),t.evenHeader&&typeof t.evenHeader==`string`&&r.push({name:`evenHeader`,text:t.evenHeader}),t.evenFooter&&typeof t.evenFooter==`string`&&r.push({name:`evenFooter`,text:t.evenFooter}),t.firstHeader&&typeof t.firstHeader==`string`&&r.push({name:`firstHeader`,text:t.firstHeader}),t.firstFooter&&typeof t.firstFooter==`string`&&r.push({name:`firstFooter`,text:t.firstFooter}),Object.keys(n).length>0||r.length>0){e.openNode(`headerFooter`,n);for(let t of r)e.leafNode(t.name,null,t.text);e.closeNode()}}parseOpen(e){switch(e.name){case`headerFooter`:return this.model={},e.attributes.differentFirst&&(this.model.differentFirst=parseInt(e.attributes.differentFirst,0)===1),e.attributes.differentOddEven&&(this.model.differentOddEven=parseInt(e.attributes.differentOddEven,0)===1),!0;case`oddHeader`:return this.currentNode=`oddHeader`,!0;case`oddFooter`:return this.currentNode=`oddFooter`,!0;case`evenHeader`:return this.currentNode=`evenHeader`,!0;case`evenFooter`:return this.currentNode=`evenFooter`,!0;case`firstHeader`:return this.currentNode=`firstHeader`,!0;case`firstFooter`:return this.currentNode=`firstFooter`,!0;default:return!1}}parseText(e){switch(this.currentNode){case`oddHeader`:this.model.oddHeader=(this.model.oddHeader??``)+e;break;case`oddFooter`:this.model.oddFooter=(this.model.oddFooter??``)+e;break;case`evenHeader`:this.model.evenHeader=(this.model.evenHeader??``)+e;break;case`evenFooter`:this.model.evenFooter=(this.model.evenFooter??``)+e;break;case`firstHeader`:this.model.firstHeader=(this.model.firstHeader??``)+e;break;case`firstFooter`:this.model.firstFooter=(this.model.firstFooter??``)+e;break;default:break}}parseClose(){switch(this.currentNode){case`oddHeader`:case`oddFooter`:case`evenHeader`:case`evenFooter`:case`firstHeader`:case`firstFooter`:return this.currentNode=void 0,!0;default:return!1}}};let $m=[`numberStoredAsText`,`formula`,`formulaRange`,`unlockedFormula`,`emptyCellReference`,`listDataValidation`,`calculatedColumn`,`evalError`,`twoDigitTextYear`];var eh=class extends U{get tag(){return`ignoredErrors`}render(e,t){if(!(!t||t.length===0)){e.openNode(`ignoredErrors`);for(let n of t){let t={sqref:n.ref};for(let e of $m)n[e]&&(t[e]=1);e.leafNode(`ignoredError`,t)}e.closeNode()}}parseOpen(e){switch(e.name){case`ignoredErrors`:return this.model=[],!0;case`ignoredError`:{let t={ref:e.attributes.sqref??``};for(let n of $m)(e.attributes[n]===`1`||e.attributes[n]===`true`)&&(t[n]=!0);return this.model.push(t),!0}default:return!0}}parseText(){}parseClose(e){switch(e){case`ignoredErrors`:return!1;default:return!0}}},th=class extends U{get tag(){return`pageMargins`}render(e,t){if(t){let n={left:t.left,right:t.right,top:t.top,bottom:t.bottom,header:t.header,footer:t.footer};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={left:parseFloat(e.attributes.left||.7),right:parseFloat(e.attributes.right||.7),top:parseFloat(e.attributes.top||.75),bottom:parseFloat(e.attributes.bottom||.75),header:parseFloat(e.attributes.header||.3),footer:parseFloat(e.attributes.footer||.3)},!0;default:return!1}}parseText(){}parseClose(){return!1}};function nh(e){return e?`1`:void 0}function rh(e){switch(e){case`overThenDown`:return e;default:return}}function ih(e){switch(e){case`atEnd`:case`asDisplyed`:return e;default:return}}function ah(e){switch(e){case`dash`:case`blank`:case`NA`:return e;default:return}}function oh(e){return e===void 0?void 0:parseInt(e,10)}var sh=class extends U{get tag(){return`pageSetup`}_dpiToXml(e){if(e!==void 0&&Number.isFinite(e)&&e!==4294967295)return e}render(e,t){if(t){let n={paperSize:t.paperSize,orientation:t.orientation,horizontalDpi:this._dpiToXml(t.horizontalDpi),verticalDpi:this._dpiToXml(t.verticalDpi),pageOrder:rh(t.pageOrder),blackAndWhite:nh(t.blackAndWhite),draft:nh(t.draft),cellComments:ih(t.cellComments),errors:ah(t.errors),scale:t.scale===100?void 0:t.scale,fitToWidth:t.fitToWidth===1?void 0:t.fitToWidth,fitToHeight:t.fitToHeight===1?void 0:t.fitToHeight,firstPageNumber:t.firstPageNumber,useFirstPageNumber:nh(!!t.firstPageNumber),usePrinterDefaults:nh(t.usePrinterDefaults),copies:t.copies};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={paperSize:oh(e.attributes.paperSize),orientation:e.attributes.orientation??`portrait`,horizontalDpi:parseInt(e.attributes.horizontalDpi??`4294967295`,10),verticalDpi:parseInt(e.attributes.verticalDpi??`4294967295`,10),pageOrder:e.attributes.pageOrder??`downThenOver`,blackAndWhite:e.attributes.blackAndWhite===`1`,draft:e.attributes.draft===`1`,cellComments:e.attributes.cellComments??`None`,errors:e.attributes.errors??`displayed`,scale:parseInt(e.attributes.scale??`100`,10),fitToWidth:parseInt(e.attributes.fitToWidth??`1`,10),fitToHeight:parseInt(e.attributes.fitToHeight??`1`,10),firstPageNumber:parseInt(e.attributes.firstPageNumber??`1`,10),useFirstPageNumber:e.attributes.useFirstPageNumber===`1`,usePrinterDefaults:e.attributes.usePrinterDefaults===`1`,copies:parseInt(e.attributes.copies??`1`,10)},!0;default:return!1}}parseText(){}parseClose(){return!1}},ch=class extends U{get tag(){return`picture`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}},lh=class extends W{constructor(){super({tag:`rowBreaks`,count:!0,childXform:new Am})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),e.addAttribute(this.$count,t.length),e.addAttribute(`manualBreakCount`,t.length);let{childXform:n}=this;for(let r of t)n.render(e,r);e.closeNode()}}};function uh(e){if(e==null)return 0;if(e instanceof String||typeof e==`string`)return 3;if(typeof e==`number`)return 2;if(typeof e==`boolean`)return 9;if(e instanceof Date)return 4;if(e.text&&e.hyperlink)return 5;if(e.formula)return 6;if(e.error)return 10;throw new Ar(typeof e,`Could not understand type of value`)}function dh(e){switch(e.type){case 6:return uh(e.result);default:return e.type}}function fh(e){if(e==null)return{text:``};if(typeof e==`string`)return{text:e};if(typeof e==`number`||typeof e==`boolean`)return{text:String(e)};if(typeof e==`object`){let t=e;if(Array.isArray(t.richText)){if(t.richText.length===0)return{text:``};let e=t.richText.map(e=>{let t=e,n={text:typeof t?.text==`string`?t.text:``};return t?.font!==null&&typeof t?.font==`object`&&(n.font=t.font),n});return{text:e.map(e=>e.text).join(``),richText:e}}if(typeof t.error==`string`)return{text:t.error}}return{text:String(e)}}var ph=class extends U{constructor(){super(),this.richTextXform=new Up}get tag(){return`c`}prepare(e,t){let n=t.styles.addStyleModel(e.style||{},dh(e));switch(n&&(e.styleId=n),e.comment&&t.comments.push({...e.comment,ref:e.address}),e.type){case 3:case 8:t.sharedStrings&&(e.ssId=t.sharedStrings.add(e.value));break;case 4:t.date1904&&(e.date1904=!0);break;case 5:t.sharedStrings&&(Array.isArray(e.richText)&&e.richText.length>0?e.ssId=t.sharedStrings.add({richText:e.richText}):e.text!==void 0&&e.text!==null&&(e.ssId=t.sharedStrings.add(e.text))),t.hyperlinks.push({address:e.address,target:e.hyperlink,tooltip:e.tooltip});break;case 1:t.merges.add(e);break;case 6:if(t.date1904&&(e.date1904=!0),e.isDynamicArray&&(e.cm=1),e.hyperlink&&t.hyperlinks.push({address:e.address,target:e.hyperlink,tooltip:e.tooltip}),e.shareType===`shared`&&(e.si=t.siFormulae++),e.formula)t.formulae[e.address]=e;else if(e.sharedFormula){let n=t.formulae[e.sharedFormula];if(!n)throw new j(`Shared Formula master must exist above and or left of clone for cell ${e.address}`);n.si===void 0?(n.shareType=`shared`,n.si=t.siFormulae++,n.range=new N(n.address,e.address)):n.range&&n.range.expandToAddress(e.address),e.si=n.si}break;default:break}}renderFormula(e,t){let n=null;switch(t.shareType){case`shared`:n={t:`shared`,ref:t.ref||t.range.range,si:t.si};break;case`array`:n={t:`array`,ref:t.ref};break;default:t.si!==void 0&&(n={t:`shared`,si:t.si});break}switch(uh(t.result)){case 0:e.leafNode(`f`,n,t.formula);break;case 3:e.addAttribute(`t`,`str`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result);break;case 2:e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result);break;case 9:e.addAttribute(`t`,`b`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,+!!t.result);break;case 10:e.addAttribute(`t`,`e`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result.error);break;case 4:e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,Ac(t.result,t.date1904));break;default:throw new Ar(String(uh(t.result)),`Could not understand type of value`)}}render(e,t){if(!(t.type===0&&!t.styleId)){switch(e.openNode(`c`),e.addAttribute(`r`,t.address),t.styleId&&e.addAttribute(`s`,t.styleId),t.cm&&e.addAttribute(`cm`,t.cm),t.type){case 0:break;case 2:e.leafNode(`v`,null,t.value);break;case 9:e.addAttribute(`t`,`b`),e.leafNode(`v`,null,t.value?`1`:`0`);break;case 12:e.addAttribute(`t`,`b`),e.leafNode(`v`,null,t.value?`1`:`0`);break;case 10:e.addAttribute(`t`,`e`),e.leafNode(`v`,null,t.value.error);break;case 3:case 8:t.ssId===void 0?t.value&&t.value.richText?(e.addAttribute(`t`,`inlineStr`),e.openNode(`is`),t.value.richText.forEach(t=>{this.richTextXform.render(e,t)}),e.closeNode(`is`)):(e.addAttribute(`t`,`str`),e.leafNode(`v`,null,t.value)):(e.addAttribute(`t`,`s`),e.leafNode(`v`,null,t.ssId));break;case 4:e.leafNode(`v`,null,Ac(t.value,t.date1904));break;case 5:t.formula||t.sharedFormula?this.renderFormula(e,t):t.ssId===void 0?Array.isArray(t.richText)&&t.richText.length>0?(e.addAttribute(`t`,`inlineStr`),e.openNode(`is`),t.richText.forEach(t=>{this.richTextXform.render(e,t)}),e.closeNode(`is`)):(e.addAttribute(`t`,`str`),e.leafNode(`v`,null,t.text)):(e.addAttribute(`t`,`s`),e.leafNode(`v`,null,t.ssId));break;case 6:this.renderFormula(e,t);break;case 1:break;default:break}e.closeNode()}}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`c`:return this.model={address:e.attributes.r},this.t=e.attributes.t,e.attributes.s&&(this.model.styleId=parseInt(e.attributes.s,10)),e.attributes.cm&&(this.model.cm=parseInt(e.attributes.cm,10)),!0;case`f`:return this.currentNode=`f`,this.model.si=e.attributes.si,this.model.shareType=e.attributes.t,this.model.ref=e.attributes.ref,!0;case`v`:return this.currentNode=`v`,!0;case`t`:return this.currentNode=`t`,!0;case`r`:return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){if(this.parser){this.parser.parseText(e);return}switch(this.currentNode){case`f`:this.model.formula=this.model.formula?this.model.formula+e:e;break;case`v`:case`t`:this.model.value&&this.model.value.richText?this.model.value.richText.text=this.model.value.richText.text?this.model.value.richText.text+e:e:this.model.value=this.model.value?this.model.value+e:e;break;default:break}}parseClose(e){switch(e){case`c`:{let{model:e}=this;if(e.formula||e.shareType)e.type=6,e.value&&=(this.t===`str`?e.result=e.value:this.t===`b`?e.result=parseInt(e.value,10)!==0:this.t===`e`?e.result={error:e.value}:e.result=parseFloat(e.value),void 0);else if(e.value!==void 0)switch(this.t){case`s`:e.type=3,e.value=parseInt(e.value,10);break;case`str`:e.type=3;break;case`inlineStr`:e.type=3,typeof e.value==`string`&&e.value.includes(`_x`)&&(e.value=Pc(e.value));break;case`b`:e.type=9,e.value=parseInt(e.value,10)!==0;break;case`e`:e.type=10,e.value={error:e.value};break;case`d`:e.type=4,e.value=new Date(e.value);break;default:e.type=2,e.value=parseFloat(e.value);break}else e.styleId?e.type=0:e.type=1;return!1}case`f`:case`v`:case`is`:return this.currentNode=void 0,!0;case`t`:return this.parser?(this.parser.parseClose(e),!0):(this.currentNode=void 0,!0);case`r`:return this.model.value=this.model.value||{},this.model.value.richText=this.model.value.richText??[],this.model.value.richText.push(this.parser.model),this.parser=void 0,this.currentNode=void 0,!0;default:return this.parser?(this.parser.parseClose(e),!0):!1}}reconcile(e,t){let n=e.styleId!==void 0&&t.styles&&t.styles.getStyleModel(e.styleId);switch(n&&(e.style=n),e.styleId!==void 0&&(e.styleId=void 0),e.type){case 3:if(typeof e.value==`number`&&t.sharedStrings){let n=e.value;if(e.value=t.sharedStrings.getString(n),e.value===void 0)throw new j(`Invalid shared string index ${n} in cell ${e.address}: the xlsx file appears to be corrupted`)}e.value&&e.value.richText&&(e.type=8);break;case 2:n&&Wc(n.numFmt)&&(e.type=4,e.value=jc(e.value,t.date1904));break;case 6:e.result!==void 0&&typeof e.result==`number`&&n&&Wc(n.numFmt)&&(e.result=jc(e.result,t.date1904)),e.shareType===`shared`&&(e.ref?t.formulae[e.si]=e.address:(e.sharedFormula=t.formulae[e.si],delete e.shareType),delete e.si),e.cm&&(t.dynamicArrayCmIndices?t.dynamicArrayCmIndices.has(e.cm)&&(e.isDynamicArray=!0):t.hasDynamicArrayMetadata&&(e.isDynamicArray=!0)),delete e.cm;break;default:break}let r=t.hyperlinkMap[e.address];if(r){let t;e.type===6?t=e.result:(t=e.value,e.value=void 0);let n=fh(t);e.text=n.text,n.richText?e.richText=n.richText:delete e.richText,e.type=5,e.hyperlink=r}let i=t.commentsMap&&t.commentsMap[e.address];i&&(e.comment=i)}},mh=class extends U{constructor(e){super(),this.maxItems=e&&e.maxItems,this.map={c:new ph}}get tag(){return`row`}reset(){super.reset(),this.numRowsSeen=0,this.lastCellCol=0}prepare(e,t){let n=t.styles.addStyleModel(e.style);n&&(e.styleId=n);let r=this.map.c;e.cells.forEach(e=>{r.prepare(e,t)})}render(e,t,n){if(!t)return;e.openNode(`row`),e.addAttribute(`r`,t.number),t.height!=null&&t.height>0?(e.addAttribute(`ht`,t.height),t.customHeight!==!1&&e.addAttribute(`customHeight`,`1`)):t.height===0&&e.addAttribute(`ht`,1),t.hidden&&e.addAttribute(`hidden`,`1`),t.min>0&&t.max>0&&t.min<=t.max&&e.addAttribute(`spans`,`${t.min}:${t.max}`),t.styleId&&(e.addAttribute(`s`,t.styleId),e.addAttribute(`customFormat`,`1`)),t.dyDescent!==void 0&&e.addAttribute(`x14ac:dyDescent`,t.dyDescent),t.outlineLevel&&e.addAttribute(`outlineLevel`,t.outlineLevel),t.collapsed&&e.addAttribute(`collapsed`,`1`);let r=this.map.c;t.cells.forEach(t=>{r.render(e,t,n)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===`row`){this.numRowsSeen+=1,this.lastCellCol=0;let t=e.attributes.spans,n,r;if(t){let e=t.indexOf(`:`);n=parseInt(t,10),r=e>-1?parseInt(t.substring(e+1),10):void 0}let i=e.attributes.r?parseInt(e.attributes.r,10):this.numRowsSeen,a=this.model={number:i,min:n,max:r,cells:[]};return e.attributes.s&&(a.styleId=parseInt(e.attributes.s,10)),Gc(e.attributes.hidden)&&(a.hidden=!0),Gc(e.attributes.bestFit)&&(a.bestFit=!0),e.attributes.ht&&(a.height=parseFloat(e.attributes.ht)),Gc(e.attributes.customHeight)&&(a.customHeight=!0),e.attributes.outlineLevel&&(a.outlineLevel=parseInt(e.attributes.outlineLevel,10)),Gc(e.attributes.collapsed)&&(a.collapsed=!0),e.attributes[`x14ac:dyDescent`]!==void 0&&(a.dyDescent=parseFloat(e.attributes[`x14ac:dyDescent`])),!0}return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){let e=this.parser.model;if(e.address?this.lastCellCol=M.decodeCol(e.address):(this.lastCellCol+=1,e.address=M.encodeAddress(this.model.number,this.lastCellCol)),this.model.cells.push(e),this.maxItems&&this.model.cells.length>this.maxItems)throw new zr(`column`,this.maxItems);this.parser=void 0}return!0}return!1}reconcile(e,t){e.style=e.styleId===void 0?{}:t.styles.getStyleModel(e.styleId),e.styleId!==void 0&&(e.styleId=void 0);let n=this.map.c;e.cells.forEach(e=>{n.reconcile(e,t)})}},hh=class extends U{get tag(){return`sheetFormatPr`}render(e,t){if(t){let n={defaultRowHeight:t.defaultRowHeight,outlineLevelRow:t.outlineLevelRow||void 0,outlineLevelCol:t.outlineLevelCol||void 0,"x14ac:dyDescent":t.dyDescent!==void 0&&t.dyDescent!==0?t.dyDescent:void 0};t.defaultColWidth&&(n.defaultColWidth=t.defaultColWidth),t.customHeight&&(n.customHeight=`1`),Object.values(n).some(e=>e!==void 0)&&e.leafNode(`sheetFormatPr`,n)}}parseOpen(e){return e.name===`sheetFormatPr`?(this.model={defaultRowHeight:parseFloat(e.attributes.defaultRowHeight??`0`),dyDescent:e.attributes[`x14ac:dyDescent`]===void 0?void 0:parseFloat(e.attributes[`x14ac:dyDescent`]),outlineLevelRow:parseInt(e.attributes.outlineLevelRow??`0`,10),outlineLevelCol:parseInt(e.attributes.outlineLevelCol??`0`,10)},e.attributes.defaultColWidth&&(this.model.defaultColWidth=parseFloat(e.attributes.defaultColWidth)),e.attributes.customHeight===`1`&&(this.model.customHeight=!0),!0):!1}parseText(){}parseClose(){return!1}};let gh=e=>e!==void 0;var _h=class extends U{get tag(){return`outlinePr`}render(e,t){return t&&(gh(t.summaryBelow)||gh(t.summaryRight))?(e.leafNode(this.tag,{summaryBelow:gh(t.summaryBelow)?Number(t.summaryBelow):void 0,summaryRight:gh(t.summaryRight)?Number(t.summaryRight):void 0}),!0):!1}parseOpen(e){return e.name===this.tag?(this.model={summaryBelow:gh(e.attributes.summaryBelow)?!!Number(e.attributes.summaryBelow):void 0,summaryRight:gh(e.attributes.summaryRight)?!!Number(e.attributes.summaryRight):void 0},!0):!1}parseText(){}parseClose(){return!1}},vh=class extends U{get tag(){return`pageSetUpPr`}render(e,t){return t&&t.fitToPage?(e.leafNode(this.tag,{fitToPage:t.fitToPage?`1`:void 0}),!0):!1}parseOpen(e){return e.name===this.tag?(this.model={fitToPage:e.attributes.fitToPage===`1`},!0):!1}parseText(){}parseClose(){return!1}},yh=class extends U{constructor(){super(),this.map={tabColor:new Wd(`tabColor`),pageSetUpPr:new vh,outlinePr:new _h}}get tag(){return`sheetPr`}render(e,t){if(!t)return;let n=!!t.tabColor,r=!!(t.pageSetup&&t.pageSetup.fitToPage),i=t.outlineProperties!==void 0&&t.outlineProperties!==null&&(t.outlineProperties.summaryBelow!==void 0||t.outlineProperties.summaryRight!==void 0);(n||r||i)&&(e.openNode(`sheetPr`),this.map.tabColor.render(e,t.tabColor),this.map.pageSetUpPr.render(e,t.pageSetup),this.map.outlinePr.render(e,t.outlineProperties),e.closeNode())}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.reset(),!0):this.map[e.name]?(this.parser=this.map[e.name],this.parser.parseOpen(e),!0):!1}parseText(e){return this.parser?(this.parser.parseText(e),!0):!1}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(this.map.tabColor.model||this.map.pageSetUpPr.model||this.map.outlinePr.model?(this.model={},this.map.tabColor.model&&(this.model.tabColor=this.map.tabColor.model),this.map.pageSetUpPr.model&&(this.model.pageSetup=this.map.pageSetUpPr.model),this.map.outlinePr.model&&(this.model.outlineProperties=this.map.outlinePr.model)):this.model=null,!1)}};function bh(e,t){return e?t:void 0}function xh(e,t){return e===t?!0:void 0}var Sh=class extends U{get tag(){return`sheetProtection`}render(e,t){if(t){let n={sheet:bh(t.sheet,`1`),selectLockedCells:t.selectLockedCells===!1?`1`:void 0,selectUnlockedCells:t.selectUnlockedCells===!1?`1`:void 0,formatCells:bh(t.formatCells,`0`),formatColumns:bh(t.formatColumns,`0`),formatRows:bh(t.formatRows,`0`),insertColumns:bh(t.insertColumns,`0`),insertRows:bh(t.insertRows,`0`),insertHyperlinks:bh(t.insertHyperlinks,`0`),deleteColumns:bh(t.deleteColumns,`0`),deleteRows:bh(t.deleteRows,`0`),sort:bh(t.sort,`0`),autoFilter:bh(t.autoFilter,`0`),pivotTables:bh(t.pivotTables,`0`)};t.sheet&&(n.algorithmName=t.algorithmName,n.hashValue=t.hashValue,n.saltValue=t.saltValue,n.spinCount=t.spinCount,n.objects=bh(t.objects===!1,`1`),n.scenarios=bh(t.scenarios===!1,`1`)),Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={sheet:xh(e.attributes.sheet,`1`),objects:e.attributes.objects===`1`?!1:void 0,scenarios:e.attributes.scenarios===`1`?!1:void 0,selectLockedCells:e.attributes.selectLockedCells===`1`?!1:void 0,selectUnlockedCells:e.attributes.selectUnlockedCells===`1`?!1:void 0,formatCells:xh(e.attributes.formatCells,`0`),formatColumns:xh(e.attributes.formatColumns,`0`),formatRows:xh(e.attributes.formatRows,`0`),insertColumns:xh(e.attributes.insertColumns,`0`),insertRows:xh(e.attributes.insertRows,`0`),insertHyperlinks:xh(e.attributes.insertHyperlinks,`0`),deleteColumns:xh(e.attributes.deleteColumns,`0`),deleteRows:xh(e.attributes.deleteRows,`0`),sort:xh(e.attributes.sort,`0`),autoFilter:xh(e.attributes.autoFilter,`0`),pivotTables:xh(e.attributes.pivotTables,`0`)},e.attributes.algorithmName&&(this.model.algorithmName=e.attributes.algorithmName,this.model.hashValue=e.attributes.hashValue,this.model.saltValue=e.attributes.saltValue,this.model.spinCount=parseInt(e.attributes.spinCount,10)),!0;default:return!1}}parseText(){}parseClose(){return!1}};let Ch={frozen:`frozen`,frozenSplit:`frozen`,split:`split`};var wh=class extends U{get tag(){return`sheetView`}prepare(e){switch(e.state){case`frozen`:case`split`:break;default:e.state=`normal`;break}}render(e,t){let n={};t.tabSelected&&(n.tabSelected=`1`),n.workbookViewId=t.workbookViewId??0,e.openNode(`sheetView`,n);let r=function(t,n,r){r&&e.addAttribute(t,n)};r(`rightToLeft`,`1`,t.rightToLeft===!0),r(`showRuler`,`0`,t.showRuler===!1),r(`showRowColHeaders`,`0`,t.showRowColHeaders===!1),r(`showGridLines`,`0`,t.showGridLines===!1),r(`zoomScale`,t.zoomScale,t.zoomScale!==void 0&&t.zoomScale!==100),r(`zoomScaleNormal`,t.zoomScaleNormal,t.zoomScaleNormal!==void 0&&t.zoomScaleNormal!==100),r(`view`,t.style,t.style);let i,a,o,s;switch(t.state){case`frozen`:a=t.xSplit??0,o=t.ySplit??0,i=t.topLeftCell||M.getAddress(o+1,a+1).address,s=t.xSplit&&t.ySplit&&`bottomRight`||t.xSplit&&`topRight`||`bottomLeft`,e.leafNode(`pane`,{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:i,activePane:s,state:`frozen`}),e.leafNode(`selection`,{pane:s,activeCell:t.activeCell,sqref:t.activeCell});break;case`split`:t.activePane===`topLeft`&&(t.activePane=void 0),e.leafNode(`pane`,{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:t.topLeftCell,activePane:t.activePane}),e.leafNode(`selection`,{pane:t.activePane,activeCell:t.activeCell,sqref:t.activeCell});break;case`normal`:t.activeCell&&e.leafNode(`selection`,{activeCell:t.activeCell,sqref:t.activeCell});break;default:break}e.closeNode()}parseOpen(e){switch(e.name){case`sheetView`:return this.sheetView={workbookViewId:parseInt(e.attributes.workbookViewId,10),rightToLeft:e.attributes.rightToLeft===`1`,tabSelected:e.attributes.tabSelected===`1`,showRuler:e.attributes.showRuler!==`0`,showRowColHeaders:e.attributes.showRowColHeaders!==`0`,showGridLines:e.attributes.showGridLines!==`0`,zoomScale:parseInt(e.attributes.zoomScale??`100`,10),zoomScaleNormal:parseInt(e.attributes.zoomScaleNormal??`100`,10),style:e.attributes.view},this.pane=void 0,this.selections={},!0;case`pane`:return this.pane={xSplit:parseInt(e.attributes.xSplit??`0`,10),ySplit:parseInt(e.attributes.ySplit??`0`,10),topLeftCell:e.attributes.topLeftCell,activePane:e.attributes.activePane??`topLeft`,state:e.attributes.state},!0;case`selection`:{let t=e.attributes.pane??`topLeft`;return this.selections[t]={pane:t,activeCell:e.attributes.activeCell},!0}default:return!1}}parseText(){}parseClose(e){let t,n;switch(e){case`sheetView`:return this.sheetView&&this.pane?(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,tabSelected:this.sheetView.tabSelected,state:Ch[this.pane.state]??`split`,xSplit:this.pane.xSplit,ySplit:this.pane.ySplit,topLeftCell:this.pane.topLeftCell,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},this.model.state===`split`&&(t.activePane=this.pane.activePane),n=this.selections[this.pane.activePane],n&&n.activeCell&&(t.activeCell=n.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)):(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,tabSelected:this.sheetView.tabSelected,state:`normal`,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},n=this.selections.topLeft,n&&n.activeCell&&(t.activeCell=n.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)),!1;default:return!0}}reconcile(){}};let q=new fm,J={dataValidations:new Im,sheetProperties:new yh,sheetFormatProperties:new hh,columns:new W({tag:`cols`,count:!1,childXform:new Mm}),row:new mh,hyperlinks:new W({tag:`hyperlinks`,count:!1,childXform:new $p}),sheetViews:new W({tag:`sheetViews`,count:!1,childXform:new wh}),sheetProtection:new Sh,pageMargins:new th,pageSeteup:new sh,autoFilter:new pm,picture:new ch,drawing:new Lm,conditionalFormattings:new km,extLst:new Zm,ignoredErrors:new eh,headerFooter:new Qm,rowBreaks:new lh,colBreaks:new jm};var Th=class{constructor(e){this.id=e.id,this.name=e.name||`Sheet${this.id}`,this.state=e.state??`visible`,this._rows=[],this._columns=[],this._keys={},this._merges=[],this._merges.add=function(){},this._sheetRelsWriter=new nm(e),this._sheetCommentsWriter=new Qp(this,this._sheetRelsWriter,e),this._dimensions=new N,this._rowZero=1,this._rowOffset=0,this.committed=!1,this.dataValidations=new Vp,this._formulae={},this._siFormulae=0,this.conditionalFormatting=[],this.ignoredErrors=[],this.rowBreaks=[],this.colBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:`portrait`,horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!!(e.pageSetup&&(e.pageSetup.fitToWidth||e.pageSetup.fitToHeight)&&!e.pageSetup.scale),pageOrder:`downThenOver`,blackAndWhite:!1,draft:!1,cellComments:`None`,errors:`displayed`,scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.useSharedStrings=e.useSharedStrings??!1,this._workbook=e.workbook,this.hasComments=!1,this._views=e.views??[],this.autoFilter=e.autoFilter??null,this._media=[],this._watermark=null,this.sheetProtection=null,this._writeOpenWorksheet(),this.startedData=!1}get workbook(){return this._workbook}get stream(){return this._stream||=this._workbook._openStream(Vu(this.id)),this._stream}destroy(){throw new Pr(`destroy`,`Invalid operation for a streaming writer`)}commit(){if(!this.committed){for(let e=this._rowOffset;e<this._rows.length;e++){let t=this._rows[e];t&&this._writeRow(t)}this._rows=null,this.startedData||this._writeOpenSheetData(),this._writeCloseSheetData(),this._writeSheetProtection(),this._writeAutoFilter(),this._writeMergeCells(),this._writeHyperlinks(),this._writeConditionalFormatting(),this._writeDataValidations(),this._writePageMargins(),this._writePageSetup(),this._writeHeaderFooter(),this._writeRowBreaks(),this._writeColBreaks(),this._writeDrawing(),this._writeBackground(),this._writeLegacyData(),this._writeIgnoredErrors(),this._writeExtLst(),this._writeCloseWorksheet(),this.stream.end(),this._sheetCommentsWriter.commit(),this._sheetRelsWriter.commit(),this.committed=!0}}get dimensions(){return this._dimensions}get views(){return this._views}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce((e,t)=>{let n=t.header&&1||t.headers&&t.headers.length||0;return Math.max(e,n)},0);let t=1,n=this._columns=[];e.forEach(e=>{let r=new gc(this,t++,!1);n.push(r),r.defn=e})}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){Object.keys(this._keys).forEach(t=>e(this._keys[t],t))}getColumn(e){if(typeof e==`string`){let t=this._keys[e];if(t)return t;e=M.l2n(e)}if(e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new gc(this,t++))}return this._columns[e-1]}get _nextRow(){return this._rowZero+(this._rows.length-this._rowOffset)}eachRow(e,t){let n,r;if(typeof e==`function`?(n=e,r=void 0):(n=t,r=e),r&&r.includeEmpty){let e=this._nextRow;for(let t=this._rowZero;t<e;t++)n(this.getRow(t),t)}else this._rows.forEach(e=>{e&&e.hasValues&&n(e,e.number)})}_commitRow(e){let t=!1,n=this._rows;for(;this._rowOffset<n.length&&!t;){let r=n[this._rowOffset];n[this._rowOffset]=void 0,this._rowOffset++,this._rowZero++,r&&(this._writeRow(r),t=r.number===e.number,this._rowZero=r.number+1),this._rowOffset>1024&&this._rowOffset>n.length>>1&&(n.splice(0,this._rowOffset),this._rowOffset=0)}}get lastRow(){let e=this._rows;for(let t=e.length-1;t>=this._rowOffset;t--){let n=e[t];if(n)return n}}findRow(e){let t=e-this._rowZero+this._rowOffset;return this._rows[t]}getRow(e){let t=e-this._rowZero+this._rowOffset;if(t<this._rowOffset)throw new Or(e,`this row has been committed`);let n=this._rows[t];return n||(this._rows[t]=n=new Ql(this,e)),n}addRow(e){let t=new Ql(this,this._nextRow);return this._rows[t.number-this._rowZero+this._rowOffset]=t,t.values=e,t}addRows(e){return e.map(e=>this.addRow(e))}findCell(e,t){let n=M.getAddress(e,t),r=this.findRow(n.row);return r?r.findCell(n.col):void 0}getCell(e,t){let n=M.getAddress(e,t);return this.getRow(n.row).getCellEx(n)}mergeCells(...e){let t=new N(e);this._merges.forEach(e=>{if(e.intersects(t))throw new kr});let{top:n,left:r,bottom:i,right:a}=t,o=om(n,r,i,a,(e,t)=>this.findCell(e,t)),s=this.getCell(n,r);for(let e=n;e<=i;e++)for(let t=r;t<=a;t++)(e>n||t>r)&&this.getCell(e,t).merge(s);o&&sm(n,r,i,a,o,(e,t)=>this.getCell(e,t)),this._merges.push(t)}addConditionalFormatting(e){this.conditionalFormatting.push(e)}removeConditionalFormatting(e){typeof e==`number`?this.conditionalFormatting.splice(e,1):e instanceof Function?this.conditionalFormatting=this.conditionalFormatting.filter(e):this.conditionalFormatting=[]}addBackgroundImage(e){this._background={imageId:Number(e)}}getBackgroundImageId(){return this._background&&this._background.imageId}addImage(e,t){let n=this._parseImageRange(String(e),t);this._media.push(n)}getImages(){return this._media}addWatermark(e){this._media=this._media.filter(e=>e._watermarkTag!==!0);let t=e.opacity===void 0?.15:Math.max(0,Math.min(1,e.opacity));if(this._watermark={imageId:String(e.imageId),mode:e.mode??`overlay`,opacity:t,headerWidth:e.headerWidth,headerHeight:e.headerHeight,applyTo:e.applyTo},this._watermark.mode===`overlay`){let n={type:`image`,imageId:String(e.imageId),range:{tl:{nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0},br:{nativeCol:100,nativeColOff:0,nativeRow:200,nativeRowOff:0},editAs:`absolute`},_watermarkTag:!0,opacity:t};this._media.push(n)}}getWatermark(){return this._watermark}removeWatermark(){this._watermark=null,this._media=this._media.filter(e=>e._watermarkTag!==!0)}_parseImageRange(e,t){if(typeof t==`string`){let n=M.decode(t);if(`top`in n)return{type:`image`,imageId:e,range:{tl:new Bp(this,{col:n.left,row:n.top},-1).model,br:new Bp(this,{col:n.right,row:n.bottom},0).model,editAs:`oneCell`}};throw Error(`Invalid image range: "${t}". Expected a range like "A1:C3".`)}if(`pos`in t&&t.pos)return{type:`image`,imageId:e,range:{tl:{nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0},ext:t.ext,pos:t.pos},hyperlinks:t.hyperlinks};let n=t;return{type:`image`,imageId:e,range:{tl:new Bp(this,n.tl,0).model,br:n.br?new Bp(this,n.br,0).model:void 0,ext:n.ext,editAs:n.editAs},hyperlinks:n.hyperlinks}}async protect(e,t){this.sheetProtection={sheet:!0},this.sheetProtection=await um(e,t)}unprotect(){this.sheetProtection=null}_write(e){q.reset(),q.addText(e),this.stream.write(q)}_writeSheetProperties(e,t,n){let r={outlineProperties:t&&t.outlineProperties,tabColor:t&&t.tabColor,pageSetup:n&&n.fitToPage?{fitToPage:n.fitToPage}:void 0};e.addText(J.sheetProperties.toXml(r))}_writeSheetFormatProperties(e,t){let n=t?{defaultRowHeight:t.defaultRowHeight,dyDescent:t.dyDescent,outlineLevelCol:t.outlineLevelCol,outlineLevelRow:t.outlineLevelRow}:void 0;t&&t.defaultColWidth&&(n.defaultColWidth=t.defaultColWidth),e.addText(J.sheetFormatProperties.toXml(n))}_writeOpenWorksheet(){q.reset(),q.addText(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>`),q.addText(`<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">`),this._writeSheetProperties(q,this.properties,this.pageSetup),q.addText(J.sheetViews.toXml(this.views)),this._writeSheetFormatProperties(q,this.properties),this.stream.write(q)}_writeColumns(){let e=gc.toModel(this.columns);e&&(J.columns.prepare(e,{styles:this._workbook.styles}),this.stream.write(J.columns.toXml(e)))}_writeOpenSheetData(){this._write(`<sheetData>`)}_writeRow(e){if(this.startedData||=(this._writeColumns(),this._writeOpenSheetData(),!0),e.hasValues||e.height!=null){let{model:t}=e;if(!t)return;let n={styles:this._workbook.styles,sharedStrings:this.useSharedStrings?this._workbook.sharedStrings:void 0,hyperlinks:this._sheetRelsWriter.hyperlinksProxy,merges:this._merges,formulae:this._formulae,siFormulae:this._siFormulae,comments:[]};if(J.row.prepare(t,n),this.stream.write(J.row.toXml(t)),t.cells)for(let e of t.cells)e&&e.isDynamicArray&&this._workbook.dynamicArrayCount++;n.comments.length&&(this.hasComments=!0,this._sheetCommentsWriter.addComments(n.comments))}}_writeCloseSheetData(){this._write(`</sheetData>`)}_writeMergeCells(){this._merges.length&&(q.reset(),q.addText(`<mergeCells count="${this._merges.length}">`),this._merges.forEach(e=>{q.addText(`<mergeCell ref="${e}"/>`)}),q.addText(`</mergeCells>`),this.stream.write(q))}_writeHyperlinks(){this.stream.write(J.hyperlinks.toXml(this._sheetRelsWriter._hyperlinks))}_writeConditionalFormatting(){let e={styles:this._workbook.styles};J.conditionalFormattings.prepare(this.conditionalFormatting,e);let t={conditionalFormattings:this.conditionalFormatting};J.extLst.prepare(t),this.stream.write(J.conditionalFormattings.toXml(this.conditionalFormatting))}_writeExtLst(){let e={conditionalFormattings:this.conditionalFormatting};this.stream.write(J.extLst.toXml(e))}_writeIgnoredErrors(){this.ignoredErrors.length>0&&this.stream.write(J.ignoredErrors.toXml(this.ignoredErrors))}_writeRowBreaks(){this.stream.write(J.rowBreaks.toXml(this.rowBreaks))}_writeColBreaks(){this.stream.write(J.colBreaks.toXml(this.colBreaks))}_writeDataValidations(){this.stream.write(J.dataValidations.toXml(this.dataValidations.model))}_writeSheetProtection(){this.stream.write(J.sheetProtection.toXml(this.sheetProtection))}_writePageMargins(){this.stream.write(J.pageMargins.toXml(this.pageSetup.margins))}_writePageSetup(){this.stream.write(J.pageSeteup.toXml(this.pageSetup))}_writeHeaderFooter(){this.stream.write(J.headerFooter.toXml(this.headerFooter))}_writeAutoFilter(){this.stream.write(J.autoFilter.toXml(this.autoFilter))}_writeDrawing(){if(this._media.length===0)return;for(let e of this._media)if(e._watermarkTag){let t=this._dimensions.model,n=t?Math.max(t.right??100,100):100,r=t?Math.max(t.bottom??200,200):200;e.range.br={nativeCol:n,nativeColOff:0,nativeRow:r,nativeRowOff:0}}let e=`drawing${this.id}`,t=this._sheetRelsWriter.addRelationship({Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:pd(e)}),{anchors:n,rels:r}=im(this._media,[],{getBookImage:e=>this._workbook.getImage(Number(e)),nextRId:e=>`rId${e.length+1}`});this._drawing={rId:t,name:e,anchors:n,rels:r},this.stream.write(J.drawing.toXml({rId:t}))}get drawing(){return this._drawing}_writeBackground(){if(this._background){if(this._background.imageId!==void 0){let e=this._workbook.getImage(this._background.imageId);if(!e)return;let t=this._sheetRelsWriter.addMedia({Target:bd(e.name),Type:F.Image});this._background={...this._background,rId:t}}this.stream.write(J.picture.toXml({rId:this._background.rId}))}}_writeLegacyData(){this.hasComments&&(q.reset(),q.addText(`<legacyDrawing r:id="${this._sheetCommentsWriter.vmlRelId}"/>`),this.stream.write(q))}_writeDimensions(){}_writeCloseWorksheet(){this._write(`</worksheet>`)}};function Eh(e){if(typeof e!=`object`||!e)return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(Eh).join(`,`)}]`;let t=Object.keys(e).sort(),n=e;return`{${t.map(e=>`${JSON.stringify(e)}:${Eh(n[e])}`).join(`,`)}}`}var Dh=class{constructor(){this._values=[],this._totalRefs=0,this._hash=Object.create(null)}get count(){return this._values.length}get values(){return this._values}get totalRefs(){return this._totalRefs}getString(e){return this._values[e]}add(e){let t=typeof e==`string`?`s:${e}`:`r:${Eh(e.richText)}`,n=this._hash[t];return n===void 0&&(n=this._hash[t]=this._values.length,this._values.push(e)),this._totalRefs++,n}};let Oh=new TextEncoder;var kh=class{constructor(e){this._data=e}get length(){return this.toBuffer().length}copy(e,t,n,r){let i=this.toBuffer(),a=Math.min(r,i.length-n);return e.set(i.subarray(n,n+a),t),a}toBuffer(){return this._buffer||=Oh.encode(this._data),this._buffer}},Ah=class{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,n,r){let i=this.toBuffer(),a=Math.min(r,i.length-n);return e.set(i.subarray(n,n+a),t),a}toBuffer(){return this._data.toBuffer()}},jh=class{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,n,r){let i=Math.min(r,this._data.length-n);return e.set(this._data.subarray(n,n+i),t),i}toBuffer(){return this._data}},Mh=class{constructor(e){this.size=e,this.buffer=new Uint8Array(e),this.iRead=0,this.iWrite=0}toBuffer(){return this.iRead===0&&this.iWrite===this.size?this.buffer:this.buffer.subarray(this.iRead,this.iWrite)}get length(){return this.iWrite-this.iRead}get eod(){return this.iRead===this.iWrite}get full(){return this.iWrite===this.size}read(e){if(e===0)return null;if(e===void 0||e>=this.length){let e=this.toBuffer();return this.iRead=this.iWrite,e}let t=this.buffer.subarray(this.iRead,this.iRead+e);return this.iRead+=e,t}write(e,t,n){let r=Math.min(n,this.size-this.iWrite);return e.copy(this.buffer,this.iWrite,t,r),this.iWrite+=r,r}};let Nh=()=>{};var Ph=class extends D{constructor(e){super(),this._writableStreamWriter=null,this._asyncWriteQueue=Promise.resolve(),this.bufSize=e?.bufSize||1024*1024,this.buffers=[],this.batch=e?.batch??!1,this.corked=!1,this.paused=!1,this.encoding=null,this.pipes=[],this._ended=!1}get writable(){return!this._ended}toBuffer(){switch(this.buffers.length){case 0:return null;case 1:return this.buffers[0].toBuffer();default:{let e=this.buffers.reduce((e,t)=>e+t.length,0),t=new Uint8Array(e),n=0;for(let e of this.buffers){let r=e.toBuffer();t.set(r,n),n+=r.length}return t}}}_getWritableBuffer(){if(this.buffers.length){let e=this.buffers[this.buffers.length-1];if(!e.full)return e}let e=new Mh(this.bufSize);return this.buffers.push(e),e}async _pipeChunk(e){let t=this.pipes.map(t=>new Promise(n=>{t.write(e.toBuffer(),()=>n())}));await Promise.all(t)}_writeToBuffers(e){let t=0,n=e.length;for(;t<n;){let r=this._getWritableBuffer();t+=r.write(e,t,n-t)}}async write(e,t,n){typeof t==`function`&&(n=t),n||=Nh;let r;if(e instanceof fm||e&&e.constructor?.name===`StringBuf`)r=new Ah(e);else if(e instanceof Uint8Array)r=new jh(e);else if(ArrayBuffer.isView(e))r=new jh(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));else if(e instanceof ArrayBuffer)r=new jh(new Uint8Array(e));else if(typeof e==`string`)r=new kh(e);else throw new Ar(typeof e,`Chunk must be one of type String, Uint8Array, ArrayBuffer or StringBuf.`);if(this.pipes.length)if(this.batch)for(this._writeToBuffers(r);!this.corked&&this.buffers.length>1;){let e=this.buffers.shift();await this._pipeChunk(new jh(e.toBuffer()))}else this.corked?(this._writeToBuffers(r),queueMicrotask(()=>n())):(await this._pipeChunk(r),n());else{let e=r.toBuffer(),t=!1;!this.paused&&this.listenerCount(`data`)>0&&(this.emit(`data`,e),t=!0),this._writableStreamWriter&&(this._asyncWriteQueue=this._asyncWriteQueue.then(()=>this._writableStreamWriter.write(e)),t=!0),t||(this._writeToBuffers(r),this.emit(`readable`)),n()}return!0}cork(){this.corked=!0}_flush(){this.pipes.length&&(async()=>{for(;this.buffers.length;){let e=this.buffers.shift();await this._pipeChunk(new jh(e.toBuffer()))}})().catch(e=>this.emit(`error`,e))}uncork(){this.corked=!1,this._flush()}end(e,t,n){let r=e=>{if(e){n?.(e);return}this._ended=!0,this._flush(),this.pipes.forEach(e=>{typeof e.end==`function`&&e.end()}),this._writableStreamWriter?this._asyncWriteQueue.then(()=>this._writableStreamWriter.close()).then(()=>{this.emit(`finish`),this.emit(`close`)}).catch(e=>{this.emit(`error`,e)}):(this.emit(`finish`),this.emit(`close`))};e?this.write(e,t,r):r()}read(e){if(e){let t=[],n=e;for(;n&&this.buffers.length&&!this.buffers[0].eod;){let e=this.buffers[0],r=e.read(n);r&&(n-=r.length,t.push(r)),e.eod&&e.full&&this.buffers.shift()}return En(Fh(t))}let t=this.buffers.map(e=>e.toBuffer()).filter(Boolean);return this.buffers=[],En(Fh(t))}readString(e){let t=e??this.encoding??`utf-8`,n=this.read();return un(t).decode(n)}setEncoding(e){this.encoding=e}pause(){this.paused=!0}resume(){this.paused=!1}isPaused(){return this.paused}pipe(e){return this.pipes.push(e),!this.paused&&this.buffers.length&&this.end(),e}pipeTo(e){this._writableStreamWriter=e.getWriter()}unpipe(e){this.pipes=this.pipes.filter(t=>t!==e)}unshift(){throw new Mr(`unshift`,`Not implemented`)}wrap(){throw new Mr(`wrap`,`Not implemented`)}push(e){return e!==null&&this.write(e),!0}};function Fh(e){if(e.length===0)return new Uint8Array;if(e.length===1)return e[0];let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}async function Ih(e,t){let n={lockStructure:t?.lockStructure??!0,lockWindows:t?.lockWindows,lockRevision:t?.lockRevision};return e&&(n.algorithmName=`SHA-512`,n.saltValue=el(lm.randomBytes(16)),n.spinCount=t?.spinCount!=null&&Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5,n.hashValue=await lm.convertPasswordToHash(e,`SHA-512`,n.saltValue,n.spinCount)),n}var Lh=class extends U{render(e,t){e.openNode(`HeadingPairs`),e.openNode(`vt:vector`,{size:2,baseType:`variant`}),e.openNode(`vt:variant`),e.leafNode(`vt:lpstr`,void 0,`Worksheets`),e.closeNode(),e.openNode(`vt:variant`),e.leafNode(`vt:i4`,void 0,t.length),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(e){return e.name===`HeadingPairs`}parseText(){}parseClose(e){return e!==`HeadingPairs`}},Rh=class extends U{render(e,t){e.openNode(`TitlesOfParts`),e.openNode(`vt:vector`,{size:t.length,baseType:`lpstr`}),t.forEach(t=>{e.leafNode(`vt:lpstr`,void 0,t.name)}),e.closeNode(),e.closeNode()}parseOpen(e){return e.name===`TitlesOfParts`}parseText(){}parseClose(e){return e!==`TitlesOfParts`}},zh=class e extends U{constructor(){super(),this.map={Company:new G({tag:`Company`}),Manager:new G({tag:`Manager`}),HeadingPairs:new Lh,TitlesOfParts:new Rh}}render(t,n){t.openXml(z),t.openNode(`Properties`,e.PROPERTY_ATTRIBUTES),t.leafNode(`Application`,void 0,`Microsoft Excel`),t.leafNode(`DocSecurity`,void 0,`0`),t.leafNode(`ScaleCrop`,void 0,`false`),this.map.HeadingPairs.render(t,n.worksheets),this.map.TitlesOfParts.render(t,n.worksheets),this.map.Company.render(t,n.company??``),this.map.Manager.render(t,n.manager),t.leafNode(`LinksUpToDate`,void 0,`false`),t.leafNode(`SharedDoc`,void 0,`false`),t.leafNode(`HyperlinksChanged`,void 0,`false`),t.leafNode(`AppVersion`,void 0,`16.0300`),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`Properties`:return!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`Properties`:return this.model={worksheets:this.map.TitlesOfParts.model,company:this.map.Company.model,manager:this.map.Manager.model},!1;default:return!0}}static{this.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3,6}/,``)}}static{this.DateAttrs={"xsi:type":`dcterms:W3CDTF`}}static{this.PROPERTY_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/officeDocument/2006/extended-properties`,"xmlns:vt":`http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes`}}},Bh=class e extends U{render(t,n){t.openXml(z),t.openNode(`Types`,e.PROPERTY_ATTRIBUTES);let r={};if((n.media??[]).forEach(e=>{if(e.type===`image`){let n=e.extension;r[n]||(r[n]=!0,t.leafNode(`Default`,{Extension:n,ContentType:`image/${n}`}))}}),t.leafNode(`Default`,{Extension:`rels`,ContentType:`application/vnd.openxmlformats-package.relationships+xml`}),t.leafNode(`Default`,{Extension:`xml`,ContentType:`application/xml`}),t.leafNode(`Override`,{PartName:H(V.xlWorkbook),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml`}),n.worksheets.forEach(e=>{t.leafNode(`Override`,{PartName:H(Vu(e.fileIndex)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml`})}),(n.pivotTables??[]).length){let e=new Set;(n.pivotTables??[]).forEach(n=>{let r=n.tableNumber,i=n.cacheId;e.has(i)||(e.add(i),t.leafNode(`Override`,{PartName:H(Qu(r)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml`}),(!n.isLoaded||n.cacheRecords)&&t.leafNode(`Override`,{PartName:H(ed(r)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml`})),t.leafNode(`Override`,{PartName:H(nd(r)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml`})})}if(t.leafNode(`Override`,{PartName:H(V.xlTheme1),ContentType:`application/vnd.openxmlformats-officedocument.theme+xml`}),t.leafNode(`Override`,{PartName:H(V.xlStyles),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml`}),n.externalLinks&&n.externalLinks.length>0)for(let e of n.externalLinks)t.leafNode(`Override`,{PartName:H(id(e.index)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml`});n.hasCheckboxes&&t.leafNode(`Override`,{PartName:H(V.xlFeaturePropertyBag),ContentType:`application/vnd.ms-excel.featurepropertybag+xml`}),n.hasDynamicArrayFormulas&&t.leafNode(`Override`,{PartName:H(V.xlMetadata),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml`}),n.sharedStrings&&n.sharedStrings.count&&t.leafNode(`Override`,{PartName:H(V.xlSharedStrings),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml`}),n.tables&&n.tables.forEach(e=>{t.leafNode(`Override`,{PartName:H(Yu(e.target)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml`})}),n.drawings&&n.drawings.forEach(e=>{t.leafNode(`Override`,{PartName:H(Xu(e.name)),ContentType:`application/vnd.openxmlformats-officedocument.drawing+xml`})});let i=n.commentRefs&&n.commentRefs.length>0,a=n.formControlRefs&&n.formControlRefs.length>0,o=n.hasHeaderWatermark===!0;if((i||a||o)&&t.leafNode(`Default`,{Extension:`vml`,ContentType:`application/vnd.openxmlformats-officedocument.vmlDrawing`}),i&&n.commentRefs.forEach(({commentName:e})=>{t.leafNode(`Override`,{PartName:H(Gu(e)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml`})}),a)for(let e of n.formControlRefs)t.leafNode(`Override`,{PartName:H(xd(e)),ContentType:`application/vnd.ms-excel.controlproperties+xml`});if(n.passthroughContentTypes)for(let{partName:e,contentType:r}of n.passthroughContentTypes)t.leafNode(`Override`,{PartName:H(e),ContentType:r});t.leafNode(`Override`,{PartName:H(V.docPropsCore),ContentType:`application/vnd.openxmlformats-package.core-properties+xml`}),t.leafNode(`Override`,{PartName:H(V.docPropsApp),ContentType:`application/vnd.openxmlformats-officedocument.extended-properties+xml`}),t.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}static{this.PROPERTY_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/package/2006/content-types`}}},Vh=class extends U{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.text=[],this._format=e.format||function(e){try{return Number.isNaN(e.getTime())?``:e.toISOString()}catch{return``}},this._parse=e.parse||function(e){return new Date(e)}}render(e,t){t&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,this._format(t)):e.writeText(this._format(t)),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=this._parse(e.attributes[this.attr]):this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this._parse(this.text.join(``))),!1}};let Y={creator:`dc:creator`,title:`dc:title`,subject:`dc:subject`,description:`dc:description`,identifier:`dc:identifier`,language:`dc:language`,keywords:`cp:keywords`,category:`cp:category`,lastModifiedBy:`cp:lastModifiedBy`,lastPrinted:`cp:lastPrinted`,revision:`cp:revision`,version:`cp:version`,contentStatus:`cp:contentStatus`,contentType:`cp:contentType`,created:`dcterms:created`,modified:`dcterms:modified`};var Hh=class e extends U{constructor(){super(),this.map={creator:new G({tag:Y.creator}),title:new G({tag:Y.title}),subject:new G({tag:Y.subject}),description:new G({tag:Y.description}),identifier:new G({tag:Y.identifier}),language:new G({tag:Y.language}),keywords:new G({tag:Y.keywords}),category:new G({tag:Y.category}),lastModifiedBy:new G({tag:Y.lastModifiedBy}),lastPrinted:new Vh({tag:Y.lastPrinted,format:e.DateFormat}),revision:new nf({tag:Y.revision}),version:new G({tag:Y.version}),contentStatus:new G({tag:Y.contentStatus}),contentType:new G({tag:Y.contentType}),created:new Vh({tag:Y.created,attrs:e.DateAttrs,format:e.DateFormat}),modified:new Vh({tag:Y.modified,attrs:e.DateAttrs,format:e.DateFormat})}}render(t,n){t.openXml(z),t.openNode(`cp:coreProperties`,e.CORE_PROPERTY_ATTRIBUTES);for(let e of Object.keys(Y))this.map[e].render(t,n[e]);t.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):(e.name!==`coreProperties`&&(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if(e===`coreProperties`){this.model={};for(let e of Object.keys(Y)){let t=this.map[e].model;t!==void 0&&t!==``&&(this.model[e]=t)}return!1}return!0}static{this.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3}/,``)}}static{this.DateAttrs={"xsi:type":`dcterms:W3CDTF`}}static{this.CORE_PROPERTY_ATTRIBUTES={"xmlns:cp":`http://schemas.openxmlformats.org/package/2006/metadata/core-properties`,"xmlns:dc":`http://purl.org/dc/elements/1.1/`,"xmlns:dcterms":`http://purl.org/dc/terms/`,"xmlns:dcmitype":`http://purl.org/dc/dcmitype/`,"xmlns:xsi":`http://www.w3.org/2001/XMLSchema-instance`}}},Uh=class extends U{render(e){e.openXml({version:`1.0`,encoding:`UTF-8`,standalone:`yes`}),e.openNode(`FeaturePropertyBags`,{xmlns:`http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag`}),e.leafNode(`bag`,{type:`Checkbox`}),e.openNode(`bag`,{type:`XFControls`}),e.leafNode(`bagId`,{k:`CellControl`},`0`),e.closeNode(),e.openNode(`bag`,{type:`XFComplement`}),e.leafNode(`bagId`,{k:`XFControls`},`1`),e.closeNode(),e.openNode(`bag`,{type:`XFComplements`,extRef:`XFComplementsMapperExtRef`}),e.openNode(`a`,{k:`MappedFeaturePropertyBags`}),e.leafNode(`bagId`,{},`2`),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}},Wh=class extends U{parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={range:{editAs:e.attributes.editAs??`oneCell`}};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}reconcilePicture(e,t){if(e&&e.rId){let n=t.rels[e.rId];if(!n)return;let r=n.Target.match(/.*\/media\/(.+[.][a-zA-Z]{3,4})/);if(r){let n=r[1],i=t.mediaIndex[n],a=t.media[i];return a&&e.alphaModFix!==void 0?{...a,alphaModFix:e.alphaModFix}:a}}}};let Gh=9525;var Kh=class extends U{constructor(e){super(),this.tag=e.tag,this.map={},this.model={width:0,height:0}}render(e,t){e.openNode(this.tag);let n=Math.floor(t.width*Gh),r=Math.floor(t.height*Gh);e.addAttribute(`cx`,n),e.addAttribute(`cy`,r),e.closeNode()}parseOpen(e){return e.name===this.tag?(this.model={width:parseInt(e.attributes.cx??`0`,10)/Gh,height:parseInt(e.attributes.cy??`0`,10)/Gh},!0):!1}parseText(e){}parseClose(e){return!1}},qh=class extends U{constructor(){super(),this.model={rId:``}}get tag(){return`a:blip`}render(e,t){t.alphaModFix!==void 0&&t.alphaModFix<1e5?(e.openNode(this.tag,{"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"r:embed":t.rId,cstate:`print`}),e.leafNode(`a:alphaModFix`,{amt:String(t.alphaModFix)}),e.closeNode()):e.leafNode(this.tag,{"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"r:embed":t.rId,cstate:`print`})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:embed`]},!0;case`a:alphaModFix`:return e.attributes.amt&&(this.model.alphaModFix=parseInt(e.attributes.amt,10)),!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},Jh=class extends U{constructor(){super(),this.map={"a:blip":new qh}}get tag(){return`xdr:blipFill`}render(e,t){e.openNode(this.tag),this.map[`a:blip`].render(e,t),e.openNode(`a:stretch`),e.leafNode(`a:fillRect`),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`a:blip`].model,!1;default:return!0}}},Yh=class extends U{get tag(){return`xdr:cNvPicPr`}render(e){e.openNode(this.tag),e.leafNode(`a:picLocks`,{noChangeAspect:`1`}),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},Xh=class extends U{get tag(){return`a:extLst`}render(e){e.openNode(this.tag),e.openNode(`a:ext`,{uri:`{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}`}),e.leafNode(`a16:creationId`,{"xmlns:a16":`http://schemas.microsoft.com/office/drawing/2014/main`,id:`{00000000-0008-0000-0000-000002000000}`}),e.closeNode(),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},Zh=class extends U{constructor(){super(),this.model={}}get tag(){return`a:hlinkClick`}render(e,t){t.hyperlinks&&t.hyperlinks.rId&&e.leafNode(this.tag,{"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"r:id":t.hyperlinks.rId,tooltip:t.hyperlinks.tooltip})}parseOpen(e){switch(e.name){case this.tag:return this.model={hyperlinks:{rId:e.attributes[`r:id`],tooltip:e.attributes.tooltip}},!0;default:return!0}}parseText(){}parseClose(){return!1}},Qh=class extends U{constructor(){super(),this.map={"a:hlinkClick":new Zh,"a:extLst":new Xh}}get tag(){return`xdr:cNvPr`}render(e,t){e.openNode(this.tag,{id:t.index,name:`Picture ${t.index}`}),this.map[`a:hlinkClick`].render(e,t),this.map[`a:extLst`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`a:hlinkClick`].model,!1;default:return!0}}},$h=class extends U{constructor(){super(),this.map={"xdr:cNvPr":new Qh,"xdr:cNvPicPr":new Yh}}get tag(){return`xdr:nvPicPr`}render(e,t){e.openNode(this.tag),this.map[`xdr:cNvPr`].render(e,t),this.map[`xdr:cNvPicPr`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`xdr:cNvPr`].model,!1;default:return!0}}};let eg={tag:`xdr:spPr`,c:[{tag:`a:xfrm`,c:[{tag:`a:off`,$:{x:`0`,y:`0`}},{tag:`a:ext`,$:{cx:`0`,cy:`0`}}]},{tag:`a:prstGeom`,$:{prst:`rect`},c:[{tag:`a:avLst`}]}]};var tg=class extends U{constructor(){super(),this.map={"xdr:nvPicPr":new $h,"xdr:blipFill":new Jh,"xdr:spPr":new zd(eg)}}get tag(){return`xdr:pic`}prepare(e,t){e.index=t.index+1}render(e,t){e.openNode(this.tag),this.map[`xdr:nvPicPr`].render(e,t),this.map[`xdr:blipFill`].render(e,{rId:t.rId,alphaModFix:t.alphaModFix}),this.map[`xdr:spPr`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.mergeModel(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:return!0}}};let ng=9525;var rg=class extends U{constructor(){super(),this.map={},this.model={x:0,y:0}}get tag(){return`xdr:pos`}render(e,t){e.leafNode(this.tag,{x:Math.floor(t.x*ng),y:Math.floor(t.y*ng)})}parseOpen(e){return e.name===this.tag?(this.model={x:parseInt(e.attributes.x??`0`,10)/ng,y:parseInt(e.attributes.y??`0`,10)/ng},!0):!1}parseText(){}parseClose(){return!1}},ig=class extends Wh{constructor(){super(),this.map={"xdr:pos":new rg,"xdr:ext":new Kh({tag:`xdr:ext`}),"xdr:pic":new tg,"xdr:clientData":new zd({tag:`xdr:clientData`})}}get tag(){return`xdr:absoluteAnchor`}prepare(e,t){e.picture&&this.map[`xdr:pic`].prepare(e.picture,t)}render(e,t){e.openNode(this.tag),this.map[`xdr:pos`].render(e,t.range.pos??{x:0,y:0}),this.map[`xdr:ext`].render(e,t.range.ext),t.picture&&this.map[`xdr:pic`].render(e,t.picture),this.map[`xdr:clientData`].render(e,{}),e.closeNode()}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.range.pos=this.map[`xdr:pos`].model,this.model.range.ext=this.map[`xdr:ext`].model,this.model.picture=this.map[`xdr:pic`].model,!1;default:return!0}}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}},ag=class extends U{constructor(e){super(),this.tag=e.tag,this.map={"xdr:col":new nf({tag:`xdr:col`,zero:!0}),"xdr:colOff":new nf({tag:`xdr:colOff`,zero:!0}),"xdr:row":new nf({tag:`xdr:row`,zero:!0}),"xdr:rowOff":new nf({tag:`xdr:rowOff`,zero:!0})},this.model={nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0}}render(e,t){e.openNode(this.tag),this.map[`xdr:col`].render(e,t.nativeCol),this.map[`xdr:colOff`].render(e,t.nativeColOff),this.map[`xdr:row`].render(e,t.nativeRow),this.map[`xdr:rowOff`].render(e,t.nativeRowOff),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model={nativeCol:this.map[`xdr:col`].model,nativeColOff:this.map[`xdr:colOff`].model,nativeRow:this.map[`xdr:row`].model,nativeRowOff:this.map[`xdr:rowOff`].model},!1;default:return!0}}},og=class extends Wh{constructor(){super(),this.map={"xdr:from":new ag({tag:`xdr:from`}),"xdr:ext":new Kh({tag:`xdr:ext`}),"xdr:pic":new tg,"xdr:clientData":new zd({tag:`xdr:clientData`})}}get tag(){return`xdr:oneCellAnchor`}prepare(e,t){this.map[`xdr:pic`].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs??`oneCell`}),this.map[`xdr:from`].render(e,t.range.tl),this.map[`xdr:ext`].render(e,t.range.ext),this.map[`xdr:pic`].render(e,t.picture),this.map[`xdr:clientData`].render(e,{}),e.closeNode()}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.range.tl=this.map[`xdr:from`].model,this.model.range.ext=this.map[`xdr:ext`].model,this.model.picture=this.map[`xdr:pic`].model,!1;default:return!0}}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}},sg=class extends U{get tag(){return`xdr:sp`}render(e,t){t&&(e.openNode(this.tag,{macro:``,textlink:``}),e.openNode(`xdr:nvSpPr`),e.openNode(`xdr:cNvPr`,{id:t.cNvPrId,name:t.name,hidden:t.hidden?`1`:void 0}),e.openNode(`a:extLst`),e.openNode(`a:ext`,{uri:`{63B3BB69-23CF-44E3-9099-C40C66FF867C}`}),e.leafNode(`a14:compatExt`,{spid:t.spid,"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`},void 0),e.closeNode(),e.closeNode(),e.closeNode(),e.leafNode(`xdr:cNvSpPr`),e.closeNode(),e.openNode(`xdr:spPr`,{bwMode:`auto`}),e.openNode(`a:xfrm`),e.leafNode(`a:off`,{x:0,y:0}),e.leafNode(`a:ext`,{cx:0,cy:0}),e.closeNode(),e.openNode(`a:prstGeom`,{prst:`rect`}),e.leafNode(`a:avLst`),e.closeNode(),e.leafNode(`a:noFill`),e.openNode(`a:ln`),e.leafNode(`a:noFill`),e.closeNode(),e.openNode(`a:extLst`),e.openNode(`a:ext`,{uri:`{909E8E84-426E-40DD-AFC4-6F175D3DCCD1}`}),e.openNode(`a14:hiddenFill`,{"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`}),e.openNode(`a:solidFill`),e.leafNode(`a:srgbClr`,{val:`F0F0F0`}),e.closeNode(),e.closeNode(),e.closeNode(),e.openNode(`a:ext`,{uri:`{91240B29-F687-4F45-9708-019B960494DF}`}),e.openNode(`a14:hiddenLine`,{w:9525,"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`}),e.openNode(`a:solidFill`),e.leafNode(`a:srgbClr`,{val:`000000`}),e.closeNode(),e.leafNode(`a:miter`,{lim:8e5}),e.leafNode(`a:headEnd`),e.leafNode(`a:tailEnd`),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode(),e.openNode(`xdr:txBody`),e.leafNode(`a:bodyPr`,{vertOverflow:`clip`,wrap:`square`,lIns:18288,tIns:18288,rIns:0,bIns:18288,anchor:`ctr`,upright:1}),e.leafNode(`a:lstStyle`),e.openNode(`a:p`),e.openNode(`a:pPr`,{algn:`l`,rtl:0}),e.leafNode(`a:defRPr`,{sz:1e3}),e.closeNode(),e.openNode(`a:r`),e.openNode(`a:rPr`,{lang:`en-US`,sz:800,b:0,i:0,u:`none`,strike:`noStrike`,baseline:0}),e.openNode(`a:solidFill`),e.leafNode(`a:srgbClr`,{val:`000000`}),e.closeNode(),e.leafNode(`a:latin`,{typeface:`Tahoma`,pitchFamily:2,charset:0}),e.leafNode(`a:ea`,{typeface:`Tahoma`,pitchFamily:2,charset:0}),e.leafNode(`a:cs`,{typeface:`Tahoma`,pitchFamily:2,charset:0}),e.closeNode(),e.openNode(`a:t`),e.writeText(t.text??``),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode())}},cg=class extends Wh{constructor(){super(),this.map={"xdr:from":new ag({tag:`xdr:from`}),"xdr:to":new ag({tag:`xdr:to`}),"xdr:pic":new tg,"xdr:sp":new sg,"xdr:clientData":new zd({tag:`xdr:clientData`})}}get tag(){return`xdr:twoCellAnchor`}prepare(e,t){e.picture&&this.map[`xdr:pic`].prepare(e.picture,t)}render(e,t){let n=!!t.alternateContent;n&&(e.openNode(`mc:AlternateContent`,{"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`}),e.openNode(`mc:Choice`,{Requires:t.alternateContent?.requires,...t.alternateContent?.requires===`a14`?{"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`}:{}})),e.openNode(this.tag,{editAs:t.range.editAs??`oneCell`}),this.map[`xdr:from`].render(e,t.range.tl),this.map[`xdr:to`].render(e,t.range.br),t.picture?this.map[`xdr:pic`].render(e,t.picture):t.shape&&this.map[`xdr:sp`].render(e,t.shape),this.map[`xdr:clientData`].render(e,{}),e.closeNode(),n&&(e.closeNode(),e.leafNode(`mc:Fallback`),e.closeNode())}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.range.tl=this.map[`xdr:from`].model,this.model.range.br=this.map[`xdr:to`].model,this.model.picture=this.map[`xdr:pic`].model,!1;default:return!0}}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}};function lg(e){let t=typeof e.range==`string`?M.decode(e.range):e.range;return t.pos===void 0?t.br?`xdr:twoCellAnchor`:`xdr:oneCellAnchor`:`xdr:absoluteAnchor`}var ug=class e extends U{constructor(){super(),this.map={"xdr:twoCellAnchor":new cg,"xdr:oneCellAnchor":new og,"xdr:absoluteAnchor":new ig},this.model={anchors:[]}}prepare(e){e.anchors.forEach((e,t)=>{e.anchorType=lg(e),this.map[e.anchorType].prepare(e,{index:t})})}get tag(){return`xdr:wsDr`}render(t,n){let r=n||this.model;t.openXml(z),t.openNode(this.tag,e.DRAWING_ATTRIBUTES),r.anchors.forEach(e=>{this.map[e.anchorType].render(t,e)}),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={anchors:[]};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.anchors.push(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:return!0}}reconcile(e,t){e.anchors.forEach(e=>{e.range?.pos===void 0?e.br?this.map[`xdr:twoCellAnchor`].reconcile(e,t):this.map[`xdr:oneCellAnchor`].reconcile(e,t):this.map[`xdr:absoluteAnchor`].reconcile(e,t)})}static{this.DRAWING_ATTRIBUTES={"xmlns:xdr":`http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing`,"xmlns:a":`http://schemas.openxmlformats.org/drawingml/2006/main`}}},dg=class extends U{constructor(){super(),this.map={r:new Up,t:new Hp}}get tag(){return`rPh`}render(e,t){if(e.openNode(this.tag,{sb:t.sb??0,eb:t.eb??0}),t&&Object.prototype.hasOwnProperty.call(t,`richText`)&&t.richText){let{r:n}=this.map;t.richText.forEach(t=>{n.render(e,t)})}else t&&this.map.t.render(e,t.text);e.closeNode()}parseOpen(e){let{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={sb:parseInt(e.attributes.sb,10),eb:parseInt(e.attributes.eb,10)},!0):(this.parser=this.map[t],this.parser?(this.parser.parseOpen(e),!0):!1)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case`r`:{let e=this.model.richText;e||=this.model.richText=[],e.push(this.parser.model);break}case`t`:this.model.text=this.parser.model;break;default:break}this.parser=void 0}return!0}switch(e){case this.tag:return!1;default:return!0}}},fg=class extends U{constructor(e){super(),this.model=e,this.map={r:new Up,t:new Hp,rPh:new dg}}get tag(){return`si`}render(e,t){e.openNode(this.tag),t&&typeof t==`object`&&Object.prototype.hasOwnProperty.call(t,`richText`)&&t.richText?t.richText.length?t.richText.forEach(t=>{this.map.r.render(e,t)}):this.map.t.render(e,``):t!=null&&this.map.t.render(e,t),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model={},!0):(this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case`r`:{let e=this.model.richText;e||=this.model.richText=[],e.push(this.parser.model);break}case`t`:this.model=this.parser.model;break;default:break}this.parser=void 0}return!0}switch(e){case this.tag:return!1;default:return!0}}},pg=class extends U{constructor(e){super(),this.model=e||{values:[],count:0},this.hash=Object.create(null),this.rich=Object.create(null)}get sharedStringXform(){return this._sharedStringXform||=new fg}get values(){return this.model.values}get uniqueCount(){return this.model.values.length}get count(){return this.model.count}getString(e){return this.model.values[e]}add(e){return e.richText?this.addRichText(e):this.addText(e)}addText(e){let t=this.hash[e];return t===void 0&&(t=this.hash[e]=this.model.values.length,this.model.values.push(e)),this.model.count++,t}addRichText(e){let t=this.sharedStringXform.toXml(e),n=this.rich[t];return n===void 0&&(n=this.rich[t]=this.model.values.length,this.model.values.push(e)),this.model.count++,n}render(e,t){let n=t||this._values;e.openXml(z),e.openNode(`sst`,{xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,count:n.count,uniqueCount:n.values.length});let r=this.sharedStringXform;n.values.forEach(t=>{r.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`sst`:return!0;case`si`:return this.parser=this.sharedStringXform,this.parser.parseOpen(e),!0;default:throw new jr(`sharedStrings`,`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.values.push(this.parser.model),this.model.count++,this.parser=void 0),!0;switch(e){case`sst`:return!1;default:throw new jr(`sharedStrings`,`Unexpected xml node in parseClose: ${e}`)}}};let mg=new Uint8Array,hg=new TextDecoder;var gg=class{constructor(e,t){this.WorksheetWriterClass=t,this.created=e.created||new Date,this.modified=e.modified||this.created,this.creator=e.creator??`ExcelTS`,this.lastModifiedBy=e.lastModifiedBy??`ExcelTS`,this.lastPrinted=e.lastPrinted,this.useSharedStrings=e.useSharedStrings??!1,this.sharedStrings=new Dh,this.styles=e.useStyles?new hf(!0):new hf.Mock(!0),this._definedNames=new $r,this._worksheets=[],this.views=[],this.zipOptions=e.zip;let n=e.zip?.zlib?.level??e.zip?.compressionOptions?.level??6;this.compressionLevel=Math.max(0,Math.min(9,n)),this.media=[],this.commentRefs=[],this.dynamicArrayCount=0,this._trueStreaming=e.trueStreaming??!1,this.zip=new Lp((e,t,n)=>{e?this.stream.emit(`error`,e):(this.stream.write(t),n&&this.stream.end())}),this.stream=this._createOutputStream(e),this.promise=Promise.resolve()}_createOutputStream(e){return e.stream?tr(e.stream):new Ph}get definedNames(){return this._definedNames}get defaultFont(){return this.styles.defaultFont}set defaultFont(e){this.styles.setDefaultFont&&this.styles.setDefaultFont(e)}_openStream(e){let t=new Ph({bufSize:this._trueStreaming?4096:65536,batch:!this._trueStreaming}),n=new Ip(e,{level:this.compressionLevel});this.zip.add(n);let r=e=>n.push(e);return t.on(`data`,r),t.once(`finish`,()=>{t.removeListener(`data`,r),n.push(mg,!0),t.emit(`zipped`)}),t}_addFile(e,t,n){let r=new Ip(t,{level:this.compressionLevel});this.zip.add(r);let i;i=n?kc(typeof e==`string`?e:hg.decode(e)):typeof e==`string`?Cn(e):e,r.push(i,!0)}_commitWorksheets(){let e=this._worksheets.map(e=>e.committed?Promise.resolve():new Promise(t=>{e.stream.once(`zipped`,()=>t()),e.commit()}));return e.length?Promise.all(e).then(()=>{}):Promise.resolve()}async commit(){await this.promise,await this._commitWorksheets(),await this.addMedia(),this.addDrawings(),await Promise.all([this.addThemes(),this.addOfficeRels(),this.addContentTypes(),this.addApp(),this.addCore(),this.addSharedStrings(),this.addStyles(),this.addFeaturePropertyBag(),this.addMetadata(),this.addWorkbookRels()]),await this.addWorkbook(),await this._finalize()}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addImage(e){let t=this.media.length,n={...e,type:`image`,name:`image${t}.${e.extension}`};return this.media.push(n),t}getImage(e){return this.media[e]}async protect(e,t){this.protection=await Ih(e,t)}unprotect(){this.protection=void 0}addWorksheet(e,t){let n=t||{},r=n.useSharedStrings===void 0?this.useSharedStrings:n.useSharedStrings;n.tabColor&&(console.trace(`tabColor option has moved to { properties: tabColor: {...} }`),n.properties={tabColor:n.tabColor,...n.properties});let i=this.nextId;e??=`sheet${i}`;let a=new this.WorksheetWriterClass({id:i,name:e,workbook:this,useSharedStrings:r,properties:n.properties,state:n.state,pageSetup:n.pageSetup,views:n.views,autoFilter:n.autoFilter,headerFooter:n.headerFooter});return this._worksheets[i]=a,a}getWorksheet(e){if(e===void 0)return this._worksheets.find(()=>!0);if(typeof e==`number`)return this._worksheets[e];if(typeof e==`string`){let t=e.toLowerCase();return this._worksheets.find(e=>e?.name?.toLowerCase()===t)}}addStyles(){return new Promise(e=>{this._addFile(this.styles.xml,V.xlStyles),e()})}addThemes(){return new Promise(e=>{this._addFile(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
405
|
-
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <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> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <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> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <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> </a:spDef> <a:lnDef> <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> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>`,V.xlTheme1),e()})}addOfficeRels(){return new Promise(e=>{let t=new Ud().toXml([{Id:`rId1`,Type:F.OfficeDocument,Target:V.xlWorkbook},{Id:`rId2`,Type:F.CoreProperties,Target:V.docPropsCore},{Id:`rId3`,Type:F.ExtenderProperties,Target:V.docPropsApp}]);this._addFile(t,V.rootRels),e()})}addContentTypes(){return new Promise(e=>{let t=this._worksheets.filter(Boolean);t.forEach(e=>{e.fileIndex=e.id});let n=t.filter(e=>e.drawing).map(e=>e.drawing),r={worksheets:t,sharedStrings:this.sharedStrings,commentRefs:this.commentRefs,media:this.media,drawings:n,hasCheckboxes:this.styles.hasCheckboxes,hasDynamicArrayFormulas:this.dynamicArrayCount>0},i=new Bh;this._addFile(i.toXml(r),V.contentTypes),e()})}addMedia(){return Promise.all(this.media.map(async e=>{if(e.type===`image`){let t=Bu(e.name);if(e.buffer){this._addFile(e.buffer,t);return}if(e.base64){let n=e.base64.substring(e.base64.indexOf(`,`)+1);this._addFile(n,t,!0);return}if(e.filename)throw new Mr(`Loading images from filename`,`not supported in browser. Use buffer or base64.`)}throw new Rr(`Unsupported media`)}))}addDrawings(){let e=new ug,t=new Ud;for(let n of this._worksheets){if(!n?.drawing)continue;let{drawing:r}=n,i=am(r.anchors),a={...r,anchors:i};e.prepare(a);let o=e.toXml(a);this._addFile(o,Xu(r.name));let s=t.toXml(r.rels);this._addFile(s,Zu(r.name))}}addApp(){return new Promise(e=>{let t=new zh;this._addFile(t.toXml({worksheets:this._worksheets.filter(Boolean)}),V.docPropsApp),e()})}addCore(){return new Promise(e=>{let t=new Hh;this._addFile(t.toXml(this),V.docPropsCore),e()})}addSharedStrings(){return this.sharedStrings.count?new Promise(e=>{let t=new pg;this._addFile(t.toXml(this.sharedStrings),V.xlSharedStrings),e()}):Promise.resolve()}addFeaturePropertyBag(){if(this.styles.hasCheckboxes){let e=new Uh;this._addFile(e.toXml({}),V.xlFeaturePropertyBag)}return Promise.resolve()}addMetadata(){if(this.dynamicArrayCount<=0)return Promise.resolve();let e=new Vd;return this._addFile(e.toXml({dynamicArrayCount:this.dynamicArrayCount}),V.xlMetadata),Promise.resolve()}addWorkbookRels(){let e=1,t=[{Id:`rId${e++}`,Type:F.Styles,Target:cd.workbookStyles},{Id:`rId${e++}`,Type:F.Theme,Target:cd.workbookTheme1}];return this.sharedStrings.count&&t.push({Id:`rId${e++}`,Type:F.SharedStrings,Target:cd.workbookSharedStrings}),this.styles.hasCheckboxes&&t.push({Id:`rId${e++}`,Type:F.FeaturePropertyBag,Target:cd.workbookFeaturePropertyBag}),this.dynamicArrayCount>0&&t.push({Id:`rId${e++}`,Type:F.SheetMetadata,Target:cd.workbookMetadata}),this._worksheets.forEach(n=>{n&&(n.rId=`rId${e++}`,t.push({Id:n.rId,Type:F.Worksheet,Target:Uu(n.id)}))}),new Promise(e=>{let n=new Ud;this._addFile(n.toXml(t),V.xlWorkbookRels),e()})}addWorkbook(){let e={worksheets:this._worksheets.filter(Boolean),definedNames:this._definedNames.model,views:this.views,properties:{},protection:this.protection,calcProperties:{}};return new Promise(t=>{let n=new Bd;n.prepare(e),this._addFile(n.toXml(e),V.xlWorkbook),t()})}_finalize(){return new Promise((e,t)=>{let n=()=>{this.stream.removeListener(`close`,i),this.stream.removeListener(`error`,r)},r=e=>{n(),t(e)},i=()=>{n(),e(this)};this.stream.once(`error`,r),this.stream.once(`close`,i),this.zip.end()})}},_g=class extends gg{constructor(e={}){super(e,Th)}};let vg=9525,yg=12700,bg=142875,xg=28575,Sg=276225,Cg=190500;var wg=class e{constructor(e,t,n){this.worksheet=e;let{tl:r,br:i}=this._parseRange(t),a=1025+(e.formControls?.length??0),o;n?.link&&(o=this._toAbsoluteRef(n.link)),this.model={shapeId:a,ctrlPropId:0,tl:r,br:i,link:o,checked:n?.checked?`Checked`:`Unchecked`,text:n?.text??``,noThreeD:n?.noThreeD??!0,print:n?.print??!1}}get checked(){return this.model.checked===`Checked`}set checked(e){this.model.checked=e?`Checked`:`Unchecked`}get link(){return this.model.link}set link(e){this.model.link=e?this._toAbsoluteRef(e):void 0}get text(){return this.model.text}set text(e){this.model.text=e}_toAbsoluteRef(e){if(e.includes(`$`))return e;let t=M.decodeAddress(e);return`$${M.n2l(t.col)}$${t.row}`}_parseRange(e){let t,n;if(typeof e==`string`)if(e.includes(`:`)){let r=M.decode(e);if(`top`in r)if(r.left===r.right&&r.top===r.bottom){let e=r.left-1,i=r.top-1;t={col:e,colOff:bg,row:i,rowOff:xg},n={col:e+2,colOff:Sg,row:i+1,rowOff:Cg}}else t={col:r.left-1,colOff:bg,row:r.top-1,rowOff:xg},n={col:r.right-1,colOff:Sg,row:r.bottom-1,rowOff:Cg};else t={col:r.col-1,colOff:bg,row:r.row-1,rowOff:xg},n={col:r.col+1,colOff:Sg,row:r.row,rowOff:Cg}}else{let r=M.decodeAddress(e);t={col:r.col-1,colOff:bg,row:r.row-1,rowOff:xg},n={col:r.col+1,colOff:Sg,row:r.row,rowOff:Cg}}else if(`startCol`in e)t={col:e.startCol,colOff:e.startColOff??bg,row:e.startRow,rowOff:e.startRowOff??xg},n={col:e.endCol,colOff:e.endColOff??Sg,row:e.endRow,rowOff:e.endRowOff??Cg};else{if(typeof e.tl==`string`){let n=M.decodeAddress(e.tl);t={col:n.col-1,colOff:bg,row:n.row-1,rowOff:xg}}else t={col:e.tl.col,colOff:e.tl.colOff??bg,row:e.tl.row,rowOff:e.tl.rowOff??xg};if(e.br)if(typeof e.br==`string`){let t=M.decodeAddress(e.br);n={col:t.col-1,colOff:Sg,row:t.row-1,rowOff:Cg}}else n={col:e.br.col,colOff:e.br.colOff??Sg,row:e.br.row,rowOff:e.br.rowOff??Cg};else n={col:t.col+2,colOff:Sg,row:t.row+1,rowOff:Cg}}return{tl:t,br:n}}getVmlAnchor(){return e.getVmlAnchor(this.model)}getVmlStyle(){return e.getVmlStyle(this.model)}getVmlCheckedValue(){return e.getVmlCheckedValue(this.model)}static getVmlAnchor(e){let{tl:t,br:n}=e,r=Math.round(t.colOff/vg),i=Math.round(t.rowOff/vg),a=Math.round(n.colOff/vg),o=Math.round(n.rowOff/vg);return`${t.col}, ${r}, ${t.row}, ${i}, ${n.col}, ${a}, ${n.row}, ${o}`}static getVmlStyle(e){return`position:absolute;margin-left:${Math.round(e.tl.colOff/yg)}pt;margin-top:${Math.round(e.tl.rowOff/yg)}pt;width:96pt;height:18pt;z-index:1;visibility:visible`}static getVmlCheckedValue(e){switch(e.checked){case`Checked`:return 1;case`Mixed`:return 2;default:return 0}}},Tg=class e{constructor(e,t){this.worksheet=e,t&&(this.model=t)}get model(){switch(this.type){case`background`:return{type:this.type,imageId:this.imageId??``};case`watermark`:return{type:this.type,imageId:this.imageId??``,opacity:this.opacity};case`headerImage`:return{type:this.type,imageId:this.imageId??``,headerWidth:this.headerWidth,headerHeight:this.headerHeight,applyTo:this.applyTo};case`image`:{let e=this.range;if(!e)throw new Rr(`Image has no range`);return e.pos?{type:this.type,imageId:this.imageId??``,hyperlinks:e.hyperlinks,range:{tl:{nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0},ext:e.ext,pos:e.pos}}:{type:this.type,imageId:this.imageId??``,hyperlinks:e.hyperlinks,range:{tl:e.tl.model,br:e.br?.model,ext:e.ext,editAs:e.editAs}}}default:throw new Rr(`Invalid Image Type`)}}set model({type:e,imageId:t,range:n,hyperlinks:r,opacity:i,headerWidth:a,headerHeight:o,applyTo:s}){if(this.type=e,this.imageId=t,this.opacity=i,this.headerWidth=a,this.headerHeight=o,this.applyTo=s,e===`image`)if(typeof n==`string`){let e=M.decode(n);`top`in e&&(this.range={tl:new Bp(this.worksheet,{col:e.left,row:e.top},-1),br:new Bp(this.worksheet,{col:e.right,row:e.bottom},0),editAs:`oneCell`})}else n&&`pos`in n&&n.pos?this.range={tl:new Bp(this.worksheet,null,0),ext:n.ext,hyperlinks:r||(`hyperlinks`in n?n.hyperlinks:void 0),pos:n.pos}:n&&(this.range={tl:new Bp(this.worksheet,n.tl,0),br:n.br?new Bp(this.worksheet,n.br,0):void 0,ext:n.ext,editAs:n.editAs,hyperlinks:r||(`hyperlinks`in n?n.hyperlinks:void 0)})}clone(t){let n=t??this.worksheet,r=new e(n);return r.type=this.type,r.imageId=this.imageId,r.opacity=this.opacity,r.headerWidth=this.headerWidth,r.headerHeight=this.headerHeight,r.applyTo=this.applyTo,this.range&&(r.range={tl:this.range.tl.clone(n),br:this.range.br?this.range.br.clone(n):void 0,ext:this.range.ext?{...this.range.ext}:void 0,editAs:this.range.editAs,hyperlinks:this.range.hyperlinks?{...this.range.hyperlinks}:void 0,pos:this.range.pos?{...this.range.pos}:void 0}),r}},Eg=class{constructor(e){this.code=e}toString(){return`#${this.code}`}};let Dg={sum:`Sum`,count:`Count`,average:`Average`,max:`Max`,min:`Min`,product:`Product`,countNums:`Count Numbers`,stdDev:`StdDev`,stdDevP:`StdDevP`,var:`Var`,varP:`VarP`},Og=new Set(Object.keys(Dg));function kg(e){let t=e.model;if(t.headerRow===!1)throw new Ir(`Cannot create pivot table from a table without headers. Set headerRow: true on the table.`);if(!t.rows||t.rows.length===0)throw new Ir(`Cannot create pivot table from an empty table. Add data rows to the table.`);let n=t.columns.map(e=>e.name),r=new Set;for(let e of n){if(r.has(e))throw new Ir(`Duplicate column name "${e}" found in table. Pivot tables require unique column names.`);r.add(e)}let i=[void 0,...n],a=t.rows.map(e=>[void 0,...e]),o=t.tl;if(!o)throw Error(`Table "${t.name}" is missing top-left cell address (tl)`);let s=o.row,c=o.col,l=s+t.rows.length,u=c+n.length-1,d=M.encode(s,c,l,u);return{name:e.worksheet.name,tableName:t.name,getRow(e){if(e===1)return{values:i};let t=e-2;return t>=0&&t<a.length?{values:a[t]}:{values:[]}},getColumn(e){if(e<1||e>n.length)return{values:[]};let r=[];r[1]=n[e-1];for(let n=0;n<t.rows.length;n++)r[n+2]=t.rows[n][e-1];return{values:r}},getSheetValues(){let e=[];e[1]=i;for(let t=0;t<a.length;t++)e[t+2]=a[t];return e},dimensions:{shortRange:d}}}function Ag(e){if(e.sourceSheet&&e.sourceTable)throw new Ir(`Cannot specify both sourceSheet and sourceTable. Choose one.`);if(e.sourceTable)return kg(e.sourceTable);if(!e.sourceSheet)throw Error(`Either sourceSheet or sourceTable must be provided.`);return e.sourceSheet}function jg(e){return typeof e==`string`?e:e.name}function Mg(e){return typeof e==`string`?void 0:e.metric}function Ng(e,t){let n=Ag(t);Pg(t,n);let{rows:r}=t,i=t.columns??[],a=t.pages??[],o=t.values.map(jg),s=t.metric??`sum`,c=t.values.map(e=>Mg(e)??s),l=Ig(n,[...r,...i,...a],o),u={};for(let e=0;e<l.length;e++)u[l[e].name]=e;let d=(e,t)=>{let n=u[e];if(n===void 0)throw Error(`${t} field "${e}" not found in cache fields`);return n},f=r.map(e=>d(e,`Row`)),p=i.map(e=>d(e,`Column`)),m=o.map(e=>d(e,`Value`)),h=a.map(e=>d(e,`Page`)),g=e.workbook.pivotTables.map(e=>e.tableNumber).filter(e=>Number.isFinite(e)),_=g.length>0?g.reduce((e,t)=>e>t?e:t,-1/0)+1:1,v=e.workbook.pivotTables.map(e=>parseInt(e.cacheId,10)).filter(e=>Number.isFinite(e)),y=v.length>0?v.reduce((e,t)=>e>t?e:t,-1/0)+1:10+_-1;return{source:n,rows:f,columns:p,values:m,pages:h,metric:s,valueMetrics:c,cacheFields:l,cacheId:String(y),applyWidthHeightFormats:t.applyWidthHeightFormats??`1`,tableNumber:_}}function Pg(e,t){let n=e.columns??[],r=e.pages??[],i=e.values.map(jg),a=t.getRow(1).values.slice(1);for(let e=0;e<a.length;e++){let n=a[e];if(n==null||n===``||typeof n==`string`&&n.trim()===``)throw Error(`Empty or missing header name at column ${e+1} in ${t.name}. Pivot tables require all columns to have non-empty headers.`)}let o=new Set;for(let e of a){let n=String(e);if(o.has(n))throw Error(`Duplicate header name "${n}" found in ${t.name}. Pivot tables require unique column names.`);o.add(n)}let s=new Set(a.map(String)),c=e=>{if(!s.has(e))throw new Ir(`The header name "${e}" was not found in ${t.name}.`)};for(let t of e.rows)c(t);for(let e of n)c(e);for(let e of i)c(e);for(let e of r)c(e);let l=new Map,u=[{name:`rows`,fields:e.rows},{name:`columns`,fields:n},{name:`pages`,fields:r}];for(let e of u)for(let t of e.fields){let n=l.get(t);if(n===e.name)throw Error(`Duplicate field "${t}" in ${e.name}. Each field can only appear once per axis area.`);if(n)throw Error(`Field "${t}" cannot appear in both ${n} and ${e.name}. Each field can only be assigned to one axis area.`);l.set(t,e.name)}if(!e.rows.length)throw new Ir(`No pivot table rows specified.`);if(e.values.length<1)throw new Ir(`Must have at least one value.`);if(e.metric!==void 0&&!Og.has(e.metric))throw Error(`Invalid metric "${e.metric}". Must be one of: ${[...Og].join(`, `)}.`);for(let t of e.values){let e=Mg(t);if(e!==void 0&&!Og.has(e))throw Error(`Invalid metric "${e}" on value field "${jg(t)}". Must be one of: ${[...Og].join(`, `)}.`)}let d=new Set;for(let e of i){if(d.has(e))throw Error(`Duplicate value field "${e}". Each value field name must be unique.`);d.add(e)}}function Fg(e){if(e==null)return null;if(typeof e!=`object`||e instanceof Date||e instanceof Eg)return e;let t=e;if(typeof t.error==`string`){let e=t.error;return new Eg(e.startsWith(`#`)?e.slice(1):e)}if(`formula`in t||`sharedFormula`in t){let e=t.result;return e==null?null:Fg(e)}return Array.isArray(t.richText)?t.richText.map(e=>e.text??``).join(``):typeof t.text==`string`&&typeof t.hyperlink==`string`?t.text:typeof t.checkbox==`boolean`?t.checkbox:String(e)}function Ig(e,t,n){let r=e.getRow(1).values,i=new Set(t),a=new Set(n),o=t=>{let n=e.getColumn(t).values,r=new Set,i=new Map,a=!1;for(let e=2;e<n.length;e++){let t=Fg(n[e]);t===null||typeof t==`number`&&isNaN(t)?a=!0:t instanceof Eg?i.has(t.code)||(i.set(t.code,t),r.add(t)):r.add(t)}let o=qc(r);return a&&o.push(null),o},s=t=>{let n=e.getColumn(t).values,r=1/0,i=-1/0,a=!1,o=!0;for(let e=2;e<n.length;e++){let t=Fg(n[e]);typeof t==`number`&&!isNaN(t)&&(a=!0,t<r&&(r=t),t>i&&(i=t),Number.isInteger(t)||(o=!1))}return a?{minValue:r,maxValue:i,allInteger:o}:null},c=[];for(let e of Kc(1,r.length)){let t=r[e],n=String(t);if(i.has(n))c.push({name:n,sharedItems:o(e)});else if(a.has(n)){let t=s(e);c.push({name:n,sharedItems:null,containsNumber:t?`1`:void 0,minValue:t?.minValue,maxValue:t?.maxValue,containsInteger:t?.allInteger?`1`:void 0})}else c.push({name:n,sharedItems:null})}return c}let Lg=/^[A-Za-z]{1,3}\d+$/,Rg=/^[Rr]\d+[Cc]\d+$/,zg=new Set([`C`,`c`,`R`,`r`]),Bg=/\s/g,Vg=/[^\p{L}\p{N}_.]/gu,Hg=/^[\p{L}_\\]/u;function Ug(e){let t=e.replace(Bg,`_`),n=!1;return t.startsWith(`\\`)&&(n=!0,t=t.slice(1)),t=t.replace(Vg,``),n&&(t=`\\${t}`),t.length>0&&!Hg.test(t)&&(t=`_${t}`),t.length===0?`_Table`:(t.length===1&&zg.has(t)&&(t=`_${t}`),(Lg.test(t)||Rg.test(t))&&(t=`_${t}`),t.length>255&&(t=t.slice(0,255)),t)}var Wg=class{constructor(e,t,n){this.table=e,this.column=t,this.index=n}_set(e,t){this.table.cacheState(),this.column[e]=t}get name(){return this.column.name}set name(e){this._set(`name`,e)}get filterButton(){return this.column.filterButton}set filterButton(e){this.column.filterButton=e}get style(){return this.column.style}set style(e){this.column.style=e}get totalsRowLabel(){return this.column.totalsRowLabel}set totalsRowLabel(e){this._set(`totalsRowLabel`,e)}get totalsRowFunction(){return this.column.totalsRowFunction}set totalsRowFunction(e){this._set(`totalsRowFunction`,e)}get totalsRowResult(){return this.column.totalsRowResult}set totalsRowResult(e){this._set(`totalsRowResult`,e)}get totalsRowFormula(){return this.column.totalsRowFormula}set totalsRowFormula(e){this._set(`totalsRowFormula`,e)}},Gg=class e{constructor(e,t){if(this.worksheet=e,t){if(this.table=t,Array.isArray(t.rows)&&t.rows.length===0&&t.tableRef){let n=M.decode(t.tableRef);if(`dimensions`in n){let r=n.top+(t.headerRow===!1?0:1),i=n.bottom-+(t.totalsRow===!0);if(i>=r)for(let a=r;a<=i;a++){let r=e.getRow(a),i=[];for(let e=n.left;e<=n.right;e++)i.push(r.getCell(e).value);t.rows.push(i)}}}this.validate(),this.store()}}static{this.SUBTOTAL_FUNCTIONS={average:101,countNums:102,count:103,max:104,min:105,stdDev:107,var:110,sum:109}}getFormula(t){if(t.totalsRowFunction===`none`)return null;if(t.totalsRowFunction===`custom`)return t.totalsRowFormula??null;let n=t.totalsRowFunction?e.SUBTOTAL_FUNCTIONS[t.totalsRowFunction]:void 0;if(n!==void 0)return`SUBTOTAL(${n},${this.table.name}[${t.name}])`;throw new Lr(`Invalid Totals Row Function: ${t.totalsRowFunction}`)}get width(){return this.table.columns.length}get height(){return this.table.rows.length}get filterHeight(){return this.height+ +!!this.table.headerRow}get tableHeight(){return this.filterHeight+ +!!this.table.totalsRow}validate(){let{table:e}=this,t=(e,t,n)=>{e[t]===void 0&&(e[t]=n)};t(e,`headerRow`,!0),t(e,`totalsRow`,!1),t(e,`style`,{});let n=e.style;t(n,`theme`,`TableStyleMedium2`),t(n,`showFirstColumn`,!1),t(n,`showLastColumn`,!1),t(n,`showRowStripes`,!1),t(n,`showColumnStripes`,!1),e.name&&=Ug(e.name),e.displayName&&=Ug(e.displayName);let r=(e,t)=>{if(!e)throw new Lr(t)};r(!!e.name,`Table must have a name`),r(!!e.ref,`Table must have ref`),r(!!e.columns,`Table must have column definitions`),r(!!e.rows,`Table must have row definitions`),e.tl=M.decodeAddress(e.ref);let{row:i,col:a}=e.tl;r(i>0,`Table must be on valid row`),r(a>0,`Table must be on valid col`);let{width:o,tableHeight:s}=this;e.autoFilterRef=M.encode(i,a,i,a+o-1),e.tableRef=M.encode(i,a,i+s-1,a+o-1),e.columns.forEach((e,n)=>{r(!!e.name,`Column ${n} must have a name`),n===0?t(e,`totalsRowLabel`,`Total`):(t(e,`totalsRowFunction`,`none`),e.totalsRowFormula=this.getFormula(e)??void 0)})}store(){let e=(e,t)=>{t&&Object.assign(e.style,t)},{worksheet:t,table:n}=this,{row:r,col:i}=n.tl,a=0;if(n.headerRow){let o=t.getRow(r+ a++);n.columns.forEach((t,n)=>{let{style:r,name:a}=t,s=o.getCell(i+n);s.value=a,e(s,r)})}if(n.rows.forEach(o=>{let s=t.getRow(r+ a++);o.forEach((t,r)=>{let a=s.getCell(i+r);if(typeof t==`object`&&t&&`formula`in t&&typeof t.formula==`string`){let e=t,r=n.qualifyImplicitStructuredReferences===!0;a.value={...e,formula:r?e.formula.replace(/(^|[^A-Za-z0-9_])\[@\[?([^[\]]+?)\]?\]/g,`$1${n.name}[[#This Row],[$2]]`):e.formula}}else a.value=t;e(a,n.columns[r]?.style)})}),n.totalsRow){let o=t.getRow(r+ a++);n.columns.forEach((t,n)=>{let r=o.getCell(i+n);if(n===0)r.value=t.totalsRowLabel;else{let e=this.getFormula(t);e?r.value={formula:e,result:t.totalsRowResult}:r.value=null}e(r,t.style)})}}load(e){let{table:t}=this,{row:n,col:r}=t.tl,i=0;if(t.headerRow){let a=e.getRow(n+ i++);t.columns.forEach((e,t)=>{let n=a.getCell(r+t);n.value=e.name})}if(t.rows.forEach(t=>{let a=e.getRow(n+ i++);t.forEach((e,t)=>{let n=a.getCell(r+t);n.value=e})}),t.totalsRow){let a=e.getRow(n+ i++);t.columns.forEach((e,t)=>{let n=a.getCell(r+t);if(t===0)n.value=e.totalsRowLabel;else{let t=this.getFormula(e);t&&(n.value={formula:t,result:e.totalsRowResult})}})}}get model(){return this.table}set model(e){this.table=e}cacheState(){this._cache||={ref:this.ref,width:this.width,tableHeight:this.tableHeight}}commit(){if(!this._cache)return;this.validate();let e=M.decodeAddress(this._cache.ref);if(this.ref!==this._cache.ref)for(let t=0;t<this._cache.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}else{for(let t=this.tableHeight;t<this._cache.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}for(let t=0;t<this.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=this.width;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}}this.store(),this._cache=void 0}addRow(e,t,n){this.cacheState(),t===void 0?this.table.rows.push(e):this.table.rows.splice(t,0,e),n?.commit!==!1&&this.commit()}removeRows(e,t=1,n){this.cacheState(),this.table.rows.splice(e,t),n?.commit!==!1&&this.commit()}getColumn(e){let t=this.table.columns[e];return new Wg(this,t,e)}addColumn(e,t,n){this.cacheState(),n===void 0?(this.table.columns.push(e),this.table.rows.forEach((e,n)=>{e.push(t[n])})):(this.table.columns.splice(n,0,e),this.table.rows.forEach((e,r)=>{e.splice(n,0,t[r])}))}removeColumns(e,t=1){this.cacheState(),this.table.columns.splice(e,t),this.table.rows.forEach(n=>{n.splice(e,t)})}_assign(e,t,n){this.cacheState(),e[t]=n}get ref(){return this.table.ref}set ref(e){this._assign(this.table,`ref`,e)}get name(){return this.table.name}set name(e){this.cacheState(),this.table.name=Ug(e)}get displayName(){return this.table.displayName||this.table.name}set displayName(e){this.cacheState(),this.table.displayName=Ug(e)}get headerRow(){return this.table.headerRow}set headerRow(e){this._assign(this.table,`headerRow`,e)}get totalsRow(){return this.table.totalsRow}set totalsRow(e){this._assign(this.table,`totalsRow`,e)}_ensureStyle(){return this.table.style||(this.table.style={}),this.table.style}get theme(){return this.table.style?.theme}set theme(e){this._ensureStyle().theme=e}get showFirstColumn(){return this.table.style?.showFirstColumn}set showFirstColumn(e){this._ensureStyle().showFirstColumn=e}get showLastColumn(){return this.table.style?.showLastColumn}set showLastColumn(e){this._ensureStyle().showLastColumn=e}get showRowStripes(){return this.table.style?.showRowStripes}set showRowStripes(e){this._ensureStyle().showRowStripes=e}get showColumnStripes(){return this.table.style?.showColumnStripes}set showColumnStripes(e){this._ensureStyle().showColumnStripes=e}};function Kg(e){return M.l2n(e.toUpperCase())-1}function qg(e){return M.n2l(e+1)}function Jg(e){return parseInt(e,10)-1}function Yg(e){return String(e+1)}function Xg(e){let t=M.decodeAddress(e.toUpperCase());return{c:t.col-1,r:t.row-1}}function Zg(e){return M.encodeAddress(e.r+1,e.c+1)}function Qg(e){let t=e.indexOf(`:`);if(t===-1){let t=Xg(e);return{s:t,e:{...t}}}return{s:Xg(e.slice(0,t)),e:Xg(e.slice(t+1))}}function $g(e,t){if(t===void 0){let t=e;return $g(t.s,t.e)}let n=Zg(e),r=Zg(t);return n===r?n:`${n}:${r}`}let e_={32:3,33:5,34:6,35:7,36:7,37:11,38:10,39:3,40:5,41:5,42:7,43:7,44:4,45:5,46:4,47:6,48:7,49:7,50:7,51:7,52:7,53:7,54:7,55:7,56:7,57:7,58:4,59:4,60:7,61:7,62:7,63:7,64:13,65:9,66:8,67:8,68:9,69:7,70:7,71:9,72:9,73:4,74:5,75:8,76:6,77:12,78:10,79:10,80:8,81:10,82:8,83:7,84:7,85:9,86:9,87:13,88:8,89:7,90:7,91:5,92:6,93:5,94:7,95:7,96:4,97:7,98:8,99:6,100:8,101:8,102:5,103:7,104:8,105:4,106:4,107:7,108:4,109:12,110:8,111:8,112:8,113:8,114:5,115:6,116:5,117:8,118:7,119:11,120:7,121:7,122:6,123:5,124:7,125:5,126:7},t_={header:{unitsPerEm:2048,usWinAscent:1950,usWinDescent:550,maxDigitAdvance:1038,sTypoAscender:1536,sTypoDescender:-512,sTypoLineGap:452},defaultAdvance:1e3,cjkAdvance:2048,advances:[[32,1,463],[33,1,667],[34,1,821],[35,1,1020],[36,1,1038],[37,1,1464],[38,1,1397],[39,1,452],[40,2,621],[42,2,1020],[44,1,511],[45,1,627],[46,1,517],[47,1,791],[48,10,1038],[58,2,548],[60,3,1020],[63,1,949],[64,1,1831],[65,1,1185],[66,1,1114],[67,1,1092],[68,1,1260],[69,1,1e3],[70,1,941],[71,1,1292],[72,1,1276],[73,1,516],[74,1,653],[75,1,1064],[76,1,861],[77,1,1751],[78,1,1322],[79,1,1356],[80,1,1058],[81,1,1378],[82,1,1112],[83,1,941],[84,1,998],[85,1,1314],[86,1,1162],[87,1,1822],[88,1,1063],[89,1,998],[90,1,959],[91,1,628],[92,1,791],[93,1,628],[94,2,1020],[96,1,596],[97,1,981],[98,1,1076],[99,1,866],[100,1,1076],[101,1,1019],[102,1,625],[103,1,964],[104,1,1076],[105,1,470],[106,1,490],[107,1,931],[108,1,470],[109,1,1636],[110,1,1076],[111,1,1080],[112,2,1076],[114,1,714],[115,1,801],[116,1,686],[117,1,1076],[118,1,925],[119,1,1464],[120,1,887],[121,1,927],[122,1,809],[123,1,644],[124,1,943],[125,1,644],[126,1,1020]]},n_={header:{unitsPerEm:2048,usWinAscent:1854,usWinDescent:434,maxDigitAdvance:1139,sTypoAscender:1491,sTypoDescender:-431,sTypoLineGap:307},defaultAdvance:1024,cjkAdvance:2048,advances:[[32,1,569],[33,1,569],[34,1,727],[35,1,1139],[36,1,1139],[37,1,1821],[38,1,1366],[39,1,391],[40,1,682],[41,1,682],[42,1,797],[43,1,1196],[44,1,569],[45,1,682],[46,1,569],[47,1,569],[48,10,1139],[58,1,569],[59,1,569],[60,1,1196],[61,1,1196],[62,1,1196],[63,1,1139],[64,1,2079],[65,1,1366],[66,1,1366],[67,1,1479],[68,1,1479],[69,1,1366],[70,1,1251],[71,1,1593],[72,1,1479],[73,1,569],[74,1,1024],[75,1,1366],[76,1,1139],[77,1,1706],[78,1,1479],[79,1,1593],[80,1,1366],[81,1,1593],[82,1,1479],[83,1,1366],[84,1,1251],[85,1,1479],[86,1,1366],[87,1,1933],[88,1,1366],[89,1,1366],[90,1,1251],[91,1,569],[92,1,569],[93,1,569],[94,1,961],[95,1,1139],[96,1,682],[97,1,1139],[98,1,1139],[99,1,1024],[100,1,1139],[101,1,1139],[102,1,569],[103,1,1139],[104,1,1139],[105,1,455],[106,1,455],[107,1,1024],[108,1,455],[109,1,1706],[110,1,1139],[111,1,1139],[112,1,1139],[113,1,1139],[114,1,682],[115,1,1024],[116,1,569],[117,1,1139],[118,1,1024],[119,1,1479],[120,1,1024],[121,1,1024],[122,1,1024],[123,1,684],[124,1,532],[125,1,684],[126,1,1196]]},r_={header:{unitsPerEm:2048,usWinAscent:1854,usWinDescent:434,maxDigitAdvance:1139,sTypoAscender:1491,sTypoDescender:-431,sTypoLineGap:307},defaultAdvance:1070,cjkAdvance:2048,advances:[[32,1,569],[33,1,682],[34,1,974],[35,1,1139],[36,1,1139],[37,1,1821],[38,1,1479],[39,1,569],[40,1,682],[41,1,682],[42,1,797],[43,1,1196],[44,1,569],[45,1,682],[46,1,569],[47,1,569],[48,10,1139],[58,1,682],[59,1,682],[60,1,1196],[61,1,1196],[62,1,1196],[63,1,1251],[64,1,1991],[65,1,1479],[66,1,1479],[67,1,1479],[68,1,1479],[69,1,1366],[70,1,1251],[71,1,1593],[72,1,1479],[73,1,682],[74,1,1139],[75,1,1479],[76,1,1251],[77,1,1706],[78,1,1479],[79,1,1593],[80,1,1366],[81,1,1593],[82,1,1479],[83,1,1366],[84,1,1251],[85,1,1479],[86,1,1366],[87,1,1933],[88,1,1366],[89,1,1366],[90,1,1251],[91,1,682],[92,1,569],[93,1,682],[94,1,1196],[95,1,1139],[96,1,682],[97,1,1139],[98,1,1251],[99,1,1024],[100,1,1251],[101,1,1139],[102,1,682],[103,1,1251],[104,1,1251],[105,1,569],[106,1,569],[107,1,1139],[108,1,569],[109,1,1821],[110,1,1251],[111,1,1251],[112,1,1251],[113,1,1251],[114,1,797],[115,1,1024],[116,1,682],[117,1,1251],[118,1,1139],[119,1,1593],[120,1,1139],[121,1,1139],[122,1,1024],[123,1,797],[124,1,569],[125,1,797],[126,1,1196]]},i_={header:{unitsPerEm:2048,usWinAscent:1825,usWinDescent:443,maxDigitAdvance:1024,sTypoAscender:1420,sTypoDescender:-442,sTypoLineGap:307},defaultAdvance:900,cjkAdvance:2048,advances:[[32,1,512],[33,1,682],[34,1,836],[35,1,1024],[36,1,1024],[37,1,1706],[38,1,1593],[39,1,369],[40,1,682],[41,1,682],[42,1,1024],[43,1,1155],[44,1,512],[45,1,682],[46,1,512],[47,1,569],[48,10,1024],[58,1,569],[59,1,569],[60,1,1155],[61,1,1155],[62,1,1155],[63,1,909],[64,1,1886],[65,1,1479],[66,1,1366],[67,1,1366],[68,1,1479],[69,1,1251],[70,1,1139],[71,1,1479],[72,1,1479],[73,1,682],[74,1,797],[75,1,1479],[76,1,1251],[77,1,1821],[78,1,1479],[79,1,1479],[80,1,1139],[81,1,1479],[82,1,1366],[83,1,1139],[84,1,1251],[85,1,1479],[86,1,1479],[87,1,1933],[88,1,1479],[89,1,1479],[90,1,1251],[91,1,682],[92,1,569],[93,1,682],[94,1,961],[95,1,1024],[96,1,682],[97,1,909],[98,1,1024],[99,1,909],[100,1,1024],[101,1,909],[102,1,682],[103,1,1024],[104,1,1024],[105,1,569],[106,1,569],[107,1,1024],[108,1,569],[109,1,1479],[110,1,1024],[111,1,1024],[112,1,1024],[113,1,1024],[114,1,682],[115,1,797],[116,1,569],[117,1,1024],[118,1,1024],[119,1,1479],[120,1,1024],[121,1,1024],[122,1,909],[123,1,983],[124,1,410],[125,1,983],[126,1,1073]]},a_={header:{unitsPerEm:2048,usWinAscent:1705,usWinDescent:615,maxDigitAdvance:1229,sTypoAscender:1255,sTypoDescender:-386,sTypoLineGap:0},defaultAdvance:1229,cjkAdvance:2048,advances:[[32,95,1229]]},o_={header:{unitsPerEm:2048,usWinAscent:2059,usWinDescent:430,maxDigitAdvance:1302,sTypoAscender:1566,sTypoDescender:-423,sTypoLineGap:202},defaultAdvance:1200,cjkAdvance:2048,advances:[[32,1,720],[33,1,756],[34,1,933],[35,1,1521],[36,1,1198],[37,1,1807],[38,1,1487],[39,1,510],[40,1,756],[41,1,756],[42,1,1198],[43,1,1521],[44,1,643],[45,1,811],[46,1,643],[47,1,899],[48,10,1302],[58,1,756],[59,1,756],[60,1,1521],[61,1,1521],[62,1,1521],[63,1,1151],[64,1,1937],[65,1,1362],[66,1,1382],[67,1,1279],[68,1,1490],[69,1,1279],[70,1,1186],[71,1,1458],[72,1,1498],[73,1,924],[74,1,922],[75,1,1362],[76,1,1145],[77,1,1728],[78,1,1498],[79,1,1476],[80,1,1262],[81,1,1476],[82,1,1396],[83,1,1300],[84,1,1185],[85,1,1448],[86,1,1362],[87,1,1864],[88,1,1244],[89,1,1183],[90,1,1204],[91,1,756],[92,1,899],[93,1,756],[94,1,1521],[95,1,1198],[96,1,1198],[97,1,1224],[98,1,1302],[99,1,1075],[100,1,1302],[101,1,1218],[102,1,756],[103,1,1302],[104,1,1317],[105,1,643],[106,1,700],[107,1,1183],[108,1,643],[109,1,1937],[110,1,1317],[111,1,1271],[112,1,1302],[113,1,1302],[114,1,899],[115,1,1075],[116,1,811],[117,1,1317],[118,1,1183],[119,1,1728],[120,1,1183],[121,1,1183],[122,1,1031],[123,1,787],[124,1,756],[125,1,787],[126,1,1521]]},s_={header:{unitsPerEm:2048,usWinAscent:1878,usWinDescent:449,maxDigitAdvance:1257,sTypoAscender:1549,sTypoDescender:-444,sTypoLineGap:198},defaultAdvance:1100,cjkAdvance:2048,advances:[[32,1,504],[33,1,614],[34,1,679],[35,1,1257],[36,1,1024],[37,1,1539],[38,1,1350],[39,1,391],[40,1,614],[41,1,614],[42,1,842],[43,1,1257],[44,1,504],[45,1,751],[46,1,504],[47,1,797],[48,10,1257],[58,1,569],[59,1,569],[60,1,1257],[61,1,1257],[62,1,1257],[63,1,885],[64,1,1614],[65,1,1350],[66,1,1273],[67,1,1161],[68,1,1427],[69,1,1163],[70,1,1074],[71,1,1314],[72,1,1517],[73,1,721],[74,1,772],[75,1,1397],[76,1,1176],[77,1,1770],[78,1,1462],[79,1,1392],[80,1,1118],[81,1,1392],[82,1,1321],[83,1,1019],[84,1,1163],[85,1,1456],[86,1,1321],[87,1,1887],[88,1,1314],[89,1,1220],[90,1,1055],[91,1,614],[92,1,797],[93,1,614],[94,1,1257],[95,1,1024],[96,1,682],[97,1,1019],[98,1,1100],[99,1,866],[100,1,1106],[101,1,958],[102,1,654],[103,1,1006],[104,1,1152],[105,1,606],[106,1,606],[107,1,1048],[108,1,606],[109,1,1700],[110,1,1131],[111,1,1042],[112,1,1100],[113,1,1100],[114,1,772],[115,1,820],[116,1,688],[117,1,1117],[118,1,1019],[119,1,1559],[120,1,1007],[121,1,1012],[122,1,880],[123,1,637],[124,1,583],[125,1,637],[126,1,1257]]},c_={header:{unitsPerEm:2048,usWinAscent:2049,usWinDescent:423,maxDigitAdvance:1118,sTypoAscender:1566,sTypoDescender:-423,sTypoLineGap:59},defaultAdvance:1050,cjkAdvance:2048,advances:[[32,1,461],[33,1,536],[34,1,717],[35,1,1232],[36,1,1014],[37,1,1625],[38,1,1327],[39,1,428],[40,1,616],[41,1,616],[42,1,900],[43,1,1232],[44,1,504],[45,1,700],[46,1,504],[47,1,753],[48,10,1118],[58,1,567],[59,1,567],[60,1,1232],[61,1,1232],[62,1,1232],[63,1,974],[64,1,1810],[65,1,1205],[66,1,1200],[67,1,1130],[68,1,1327],[69,1,1117],[70,1,1032],[71,1,1306],[72,1,1308],[73,1,614],[74,1,794],[75,1,1195],[76,1,1003],[77,1,1500],[78,1,1308],[79,1,1381],[80,1,1103],[81,1,1381],[82,1,1200],[83,1,1117],[84,1,1100],[85,1,1300],[86,1,1205],[87,1,1723],[88,1,1119],[89,1,1130],[90,1,1068],[91,1,616],[92,1,753],[93,1,616],[94,1,1232],[95,1,893],[96,1,1118],[97,1,1066],[98,1,1141],[99,1,942],[100,1,1141],[101,1,1086],[102,1,639],[103,1,1141],[104,1,1126],[105,1,500],[106,1,548],[107,1,1023],[108,1,500],[109,1,1705],[110,1,1126],[111,1,1103],[112,1,1141],[113,1,1141],[114,1,714],[115,1,918],[116,1,700],[117,1,1126],[118,1,1e3],[119,1,1500],[120,1,1e3],[121,1,1e3],[122,1,880],[123,1,616],[124,1,540],[125,1,616],[126,1,1232]]},l_={header:{unitsPerEm:2048,usWinAscent:1923,usWinDescent:455,maxDigitAdvance:1074,sTypoAscender:1510,sTypoDescender:-420,sTypoLineGap:0},defaultAdvance:1e3,cjkAdvance:2048,advances:[[32,1,453],[33,1,545],[34,1,613],[35,1,1107],[36,1,1074],[37,1,1341],[38,1,1213],[39,1,360],[40,1,616],[41,1,616],[42,1,860],[43,1,1107],[44,1,453],[45,1,697],[46,1,453],[47,1,766],[48,10,1074],[58,1,453],[59,1,453],[60,1,1107],[61,1,1107],[62,1,1107],[63,1,860],[64,1,1648],[65,1,1227],[66,1,1227],[67,1,1139],[68,1,1309],[69,1,1139],[70,1,1057],[71,1,1309],[72,1,1395],[73,1,627],[74,1,791],[75,1,1260],[76,1,1057],[77,1,1456],[78,1,1350],[79,1,1395],[80,1,1139],[81,1,1395],[82,1,1215],[83,1,1057],[84,1,1139],[85,1,1350],[86,1,1227],[87,1,1730],[88,1,1260],[89,1,1139],[90,1,1139],[91,1,616],[92,1,766],[93,1,616],[94,1,1107],[95,1,1074],[96,1,860],[97,1,1013],[98,1,1074],[99,1,936],[100,1,1074],[101,1,1013],[102,1,627],[103,1,1074],[104,1,1074],[105,1,545],[106,1,538],[107,1,1013],[108,1,545],[109,1,1539],[110,1,1074],[111,1,1074],[112,1,1074],[113,1,1074],[114,1,715],[115,1,860],[116,1,627],[117,1,1074],[118,1,936],[119,1,1481],[120,1,936],[121,1,936],[122,1,860],[123,1,616],[124,1,604],[125,1,616],[126,1,1107]]},u_={},d_={};function f_(e,t,n){u_[e.toLowerCase()]=t,n&&(d_[e.toLowerCase()]=n)}f_(`calibri`,t_),f_(`arial`,n_,r_),f_(`times new roman`,i_),f_(`courier new`,a_),f_(`verdana`,o_),f_(`georgia`,s_),f_(`tahoma`,c_),f_(`trebuchet ms`,l_);let p_={aptos:[1.03,1.37,1],"aptos display":[.96,1.31,1],"aptos narrow":[.82,1.07,1],"aptos serif":[.98,1.31,1],"calibri light":[.98,1.19,1],cambria:[1.07,1.28,1],"century gothic":[1.19,1.36,1],"comic sans ms":[1.14,1.46,1],consolas:[1.21,1.21,1],constantia:[1.05,1.34,1],corbel:[.97,1.2,1],garamond:[1.16,1.39,1],impact:[.96,1.01,1],"lucida console":[1.21,1.21,1],"lucida sans unicode":[1.16,1.4,1],"microsoft sans serif":[1.07,1.35,1],"palatino linotype":[1.12,1.44,1],"segoe ui":[1.08,1.31,1],"book antiqua":[1.12,1.44,1],candara:[1.02,1.25,1],"franklin gothic medium":[1.08,1.33,1],"goudy old style":[1.02,1.34,1],rockwell:[1.14,1.35,1],"tw cen mt":[.95,1.17,1],"microsoft yahei":[1.18,1.3,1.18],"microsoft yahei ui":[1.18,1.3,1.18],simsun:[1.1,1.1,1.1],宋体:[1.1,1.1,1.1],simhei:[1.1,1.1,1.1],黑体:[1.1,1.1,1.1],nsimsun:[1.1,1.1,1.1],新宋体:[1.1,1.1,1.1],dengxian:[1.05,1.28,1.08],等线:[1.05,1.28,1.08],fangsong:[1.1,1.1,1.1],仿宋:[1.1,1.1,1.1],kaiti:[1.1,1.1,1.1],楷体:[1.1,1.1,1.1],meiryo:[1.18,1.3,1.18],"meiryo ui":[1.1,1.2,1.18],"ms gothic":[1.21,1.21,1.1],"MS ゴシック":[1.21,1.21,1.1],"ms pgothic":[1.07,1.33,1.1],"ms mincho":[1.21,1.21,1.1],"yu gothic":[1.17,1.32,1.18],"yu gothic ui":[1.08,1.22,1.18],"yu mincho":[1.1,1.28,1.18],"malgun gothic":[1.12,1.28,1.14],"맑은 고딕":[1.12,1.28,1.14],batang:[1.1,1.1,1.1],gulim:[1.1,1.1,1.1],dotum:[1.1,1.1,1.1]},m_=new Map;function h_(e){let t=m_.get(e);if(t)return t;t=new Map;for(let[n,r,i]of e.advances)for(let e=0;e<r;e++)t.set(n+e,i);return m_.set(e,t),t}function g_(e,t){let n=e.toLowerCase();return t?d_[n]??u_[n]:u_[n]}function __(e){return Object.hasOwn(d_,e.toLowerCase())}function v_(){return t_}function y_(e,t){return t>=19968&&t<=40959||t>=13312&&t<=19903||t>=63744&&t<=64255||t>=131072&&t<=205743||t>=12288&&t<=12543||t>=44032&&t<=55215||t>=65281&&t<=65376||t>=11904&&t<=12255||t>=12544&&t<=13311?e.cjkAdvance:h_(e).get(t)??e.defaultAdvance}function b_(e){return e_[e]}function x_(e){return p_[e.toLowerCase()]}function S_(e){return e>=19968&&e<=40959||e>=13312&&e<=19903||e>=63744&&e<=64255||e>=65281&&e<=65376||e>=12288&&e<=12543||e>=11904&&e<=12255||e>=12544&&e<=13311||e>=44032&&e<=55215||e>=131072&&e<=205743}let C_=`Calibri`,w_=1790;function T_(e,t,n,r,i){if(t===`calibri`&&n===11){let t=b_(e);if(t!==void 0)return t}if(i){let t=y_(i,e),r=Math.round(n/72*96);return Math.round(t/i.header.unitsPerEm*r)}}function E_(e){return{name:(e?.name??C_).toLowerCase(),size:e?.size??11,bold:e?.bold??!1,italic:e?.italic??!1,vertAlign:e?.vertAlign}}function D_(e,t){if(!e)return 0;let n=E_(t),r=g_(n.name,n.bold),i=e.split(/\r\n|\r|\n/),a=0;for(let e of i){let t=O_(e,n,r);t>a&&(a=t)}return a}function O_(e,t,n){return e?n||t.name===`calibri`&&t.size===11?k_(e,t,n):A_(e,t):0}function k_(e,t,n){let r=0;for(let i of e)r+=B_(i.codePointAt(0),t,n);return t.vertAlign&&(r=Math.ceil(r*.6)),r}function A_(e,t){let n=x_(t.name),r=n?.[0]??1,i=n?.[1]??1.3,a=n?.[2]??1,o=0,s=0,c=0;for(let t of e)S_(t.codePointAt(0))?c+=2:t>=`A`&&t<=`Z`?s++:o++;let l=(o*r+s*i+c*a)*(t.size/11);t.bold&&(l*=1.05),t.italic&&(l*=1.02),t.vertAlign&&(l*=.6);let u=M_({name:t.name,size:t.size});return Math.ceil(l*u)}function j_(e,t){let n=0,r=0;for(let i of e){let e=i.font?{...t,...i.font}:t,a=i.text.split(/\r\n|\r|\n/);for(let t=0;t<a.length;t++)t>0&&(r>n&&(n=r),r=0),a[t]&&(r+=D_(a[t],e))}return r>n&&(n=r),n}function M_(e){let t=(e?.name??C_).toLowerCase(),n=e?.size??11;if(t===`calibri`&&n===11)return 7;let r=g_(t);if(r){let e=Math.round(n/72*96);return Math.round(r.header.maxDigitAdvance/r.header.unitsPerEm*e)}return Math.max(1,Math.round(n/11*7))}function N_(e){return 2*Math.ceil(e/4)+1}function P_(e,t){return t<=0?0:Math.trunc(e/t*256)/256}function F_(e,t){if(t<=0)return 0;let n=N_(t);return e===0?0:e<1?Math.round(e*(t+n)):Math.round(e*t)+n}function I_(e){return e*72/96}function L_(e,t,n){if(e<=0)return 0;let r=e+2*Math.ceil(e*.03+t/4)+1;n&&(r+=16),r>w_&&(r=w_);let i=P_(r,t);return Math.min(i,255)}function R_(e){let t=(e?.name??C_).toLowerCase(),n=e?.size??11,r=Math.round(n/72*96),i=g_(t);if(i){let{unitsPerEm:e,usWinDescent:t}=i.header;return(e+t)/e*r}return r*1.3}function z_(e,t,n){if(!e||t<=0)return 1;let r=E_(n),i=g_(r.name,r.bold),a=e.split(/\r\n|\r|\n/),o=0;for(let e of a){if(!e){o++;continue}o+=V_(e,t,r,i)}return o}function B_(e,t,n){let r;if(n||t.name===`calibri`&&t.size===11){let i=n??v_();r=T_(e,t.name,t.size,t.bold,i)??Math.round(i.defaultAdvance/i.header.unitsPerEm*Math.round(t.size/72*96))}else r=Math.ceil(t.size/11*M_({name:t.name,size:t.size})*(S_(e)?2:1));return t.bold&&!__(t.name)&&(r=Math.ceil(r*1.05)),t.italic&&(r=Math.ceil(r*1.02)),r}function V_(e,t,n,r){let i=H_(e);if(i.length===0)return 1;let a=1,o=0;for(let e of i){let i=0;for(let t of e)i+=B_(t.codePointAt(0),n,r);o===0?o=i:o+i>t?(a++,o=i):o+=i}return a}function H_(e){let t=[],n=``;for(let r of e)n+=r,(r===` `||r===`-`||r===` `)&&(t.push(n),n=``);return n&&t.push(n),t}function U_(e,t,n,r){if(!e)return I_(R_(t));let i=R_(t),a;return a=n?.wrapText&&r&&r>0?z_(e,r,t):e.split(/\r\n|\r|\n/).length,I_(i*a)}function W_(e,t,n,r){let i=t?.size??11,a=t;for(let n of e){let e=n.font?.size??t?.size??11;e>i&&(i=e,a=n.font?{...t,...n.font}:t)}return U_(e.map(e=>e.text).join(``),a,n,r)}function G_(e,t){let n=F_(e,t),r=N_(t);return Math.max(0,n-r)}function K_(e){let t=e.effectiveType,n=e.font;if(t===8){let t=e.value;if(t&&typeof t==`object`&&`richText`in t)return j_(t.richText,n)}let r=jl(e);return r?D_(r,n):0}function q_(e,t,n){let r=e.font,i=e.alignment;if(e.effectiveType===8){let t=e.value;if(t&&typeof t==`object`&&`richText`in t)return W_(t.richText,r,i,n)}let a=jl(e);return a?U_(a,r,i,i?.wrapText?n:void 0):0}var J_=class{constructor(e){this._workbook=e.workbook,this.id=e.id??0,this.orderNo=e.orderNo??0,this.name=e.name||`sheet${this.id}`,this.state=e.state??`visible`,this._rows=[],this._columns=[],this._keys={},this._merges={},this.rowBreaks=[],this.colBreaks=[],this.properties={defaultRowHeight:15,outlineLevelCol:0,outlineLevelRow:0,...e.properties},this.pageSetup={margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:`portrait`,horizontalDpi:void 0,verticalDpi:void 0,fitToPage:!!(e.pageSetup&&(e.pageSetup.fitToWidth||e.pageSetup.fitToHeight)&&!e.pageSetup.scale),pageOrder:`downThenOver`,blackAndWhite:!1,draft:!1,cellComments:`None`,errors:`displayed`,scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,firstPageNumber:void 0,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null,...e.pageSetup},this.headerFooter={differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null,...e.headerFooter},this.dataValidations=new Vp,this.views=e.views??[],this.autoFilter=e.autoFilter??null,this._media=[],this.sheetProtection=null,this.tables={},this.pivotTables=[],this.conditionalFormattings=[],this.formControls=[],this.ignoredErrors=[],this._watermark=null}get name(){return this._name}set name(e){if(e===void 0&&(e=`sheet${this.id}`),this._name===e)return;if(typeof e!=`string`)throw new Tr(`The name has to be a string.`);if(e===``)throw new Tr(`The name can't be empty.`);if(e===`History`)throw new Tr(`The name "History" is protected. Please use a different name.`);if(/[*?:/\\[\]]/.test(e))throw new Tr(`Worksheet name ${e} cannot include any of the following characters: * ? : \\ / [ ]`);if(/(^')|('$)/.test(e))throw new Tr(`The first or last character of worksheet name cannot be a single quotation mark: ${e}`);e.length>31&&(e=e.substring(0,31));let t=e.toLowerCase();if(this._workbook.worksheets.find(e=>e&&e!==this&&e.name.toLowerCase()===t))throw new Tr(`Worksheet name already exists: ${e}`);this._name=e}get workbook(){return this._workbook}destroy(){this._workbook.removeWorksheetEx(this)}get dimensions(){let e=new N;return this._rows.forEach(t=>{if(t){let n=t.dimensions;n&&e.expand(t.number,n.min,t.number,n.max)}}),e}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce((e,t)=>{let n=Array.isArray(t.header)?t.header.length:+!!t.header;return Math.max(e,n)},0);let t=1,n=this._columns=[];e.forEach(e=>{let r=new gc(this,t++,!1);n.push(r),r.defn=e})}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){Object.keys(this._keys).forEach(t=>e(this._keys[t],t))}getColumn(e){let t;if(typeof e==`string`){let n=this._keys[e];if(n)return n;t=M.l2n(e)}else t=e;if(t>this._columns.length){let e=this._columns.length+1;for(;e<=t;)this._columns.push(new gc(this,e++))}return this._columns[t-1]}spliceColumns(e,t,...n){for(let e of Object.values(this._merges))for(let t=e.top;t<=e.bottom;t++)for(let n=e.left;n<=e.right;n++){let e=this.findCell(t,n);e&&e.type===1&&e.unmerge()}let r=this._rows.length;if(n.length>0)for(let i=0;i<r;i++){let r=n.map(e=>e[i]??null);this.getRow(i+1).splice(e,t,...r)}else this._rows.forEach(n=>{n&&n.splice(e,t)});let i=n.length-t,a=e+t,o=this._columns.length;if(i<0)for(let t=e+n.length;t<=o;t++)this.getColumn(t).defn=this.getColumn(t-i).defn;else if(i>0)for(let e=o;e>=a;e--)this.getColumn(e+i).defn=this.getColumn(e).defn;for(let t=e;t<e+n.length;t++)this.getColumn(t).defn=void 0;if(this.workbook.definedNames.spliceColumns(this.name,e,t,n.length),i!==0){for(let t of this._media)if(t.type===`image`&&t.range){let{tl:n,br:r}=t.range;n&&n.nativeCol>=e-1&&(n.nativeCol=Math.max(0,n.nativeCol+i)),r&&r.nativeCol>=e-1&&(r.nativeCol=Math.max(0,r.nativeCol+i))}}this._spliceMerges(`col`,e,t,n.length)}get lastColumn(){return this.getColumn(this.columnCount)}get columnCount(){let e=0;return this.eachRow(t=>{e=Math.max(e,t.cellCount)}),e}get actualColumnCount(){let e=[],t=0;return this.eachRow(n=>{n.eachCell(({col:n})=>{e[n]||(e[n]=!0,t++)})}),t}_commitRow(e){}get _lastRowNumber(){let e=this._rows,t=e.length;for(;t>0&&e[t-1]===void 0;)t--;return t}get _nextRow(){return this._lastRowNumber+1}get lastRow(){if(this._rows.length)return this._rows[this._rows.length-1]}findRow(e){return this._rows[e-1]}findRows(e,t){return this._rows.slice(e-1,e-1+t)}get rowCount(){return this._lastRowNumber}get actualRowCount(){let e=0;return this.eachRow(()=>{e++}),e}getRow(e){let t=this._rows[e-1];return t||=this._rows[e-1]=new Ql(this,e),t}getRows(e,t){if(t<1)return;let n=[];for(let r=e;r<e+t;r++)n.push(this.getRow(r));return n}addRow(e,t=`n`){let n=this._nextRow,r=this.getRow(n);return r.values=e,this._setStyleOption(n,t[0]===`i`?t:`n`),r}addRows(e,t=`n`){let n=[];return e.forEach(e=>{n.push(this.addRow(e,t))}),n}insertRow(e,t,n=`n`){return this.spliceRows(e,0,t),this._setStyleOption(e,n),this.getRow(e)}insertRows(e,t,n=`n`){if(this.spliceRows(e,0,...t),n!==`n`)for(let r=0;r<t.length;r++)n[0]===`o`&&this.findRow(t.length+e+r)!==void 0?this._copyStyle(t.length+e+r,e+r,n[1]===`+`):n[0]===`i`&&this.findRow(e-1)!==void 0&&this._copyStyle(e-1,e+r,n[1]===`+`);return this.getRows(e,t.length)}_setStyleOption(e,t=`n`){t[0]===`o`&&this.findRow(e+1)!==void 0?this._copyStyle(e+1,e,t[1]===`+`):t[0]===`i`&&this.findRow(e-1)!==void 0&&this._copyStyle(e-1,e,t[1]===`+`)}_copyStyle(e,t,n=!1){let r=this.getRow(e),i=this.getRow(t);i.style=L(r.style)??{},r.eachCell({includeEmpty:n},(e,t)=>{i.getCell(t).style=L(e.style)??{}}),i.height=r.height}duplicateRow(e,t,n=!1){let r=this.getRow(e),i=Array.from({length:t}).fill(r.values),a=[];for(let t of Object.values(this._merges))t.top===e&&t.bottom===e&&a.push(t);let o=[],s=e-1;for(let e of this._media)e.type===`image`&&e.range&&e.range.tl.nativeRow===s&&o.push(e);this.spliceRows(e+1,n?0:t,...i);for(let n=0;n<t;n++){let t=this._rows[e+n];t.style=L(r.style)??{},t.height=r.height,r.eachCell({includeEmpty:!0},(e,n)=>{t.getCell(n).style=L(e.style)??{}})}if(a.length>0)for(let r=0;r<t;r++){let t=e+1+r;if(!n){let e=[];for(let[n,r]of Object.entries(this._merges))r.top<=t&&r.bottom>=t&&e.push(n);for(let t of e)this._unMergeMaster(this.getCell(t))}for(let e of a)this.mergeCellsWithoutStyle(t,e.left,t,e.right)}if(!n){let n=e,r=e+t-1;this._media=this._media.filter(e=>{if(e.type===`image`&&e.range){let t=e.range.tl.nativeRow;return t<n||t>r}return!0})}for(let e=0;e<t;e++){let t=e+1;for(let e of o){let n=e.clone();if(n.range.tl.nativeRow=s+t,n.range.br){let r=e.range.br.nativeRow-s;n.range.br.nativeRow=s+t+r}this._media.push(n)}}}spliceRows(e,t,...n){for(let e of Object.values(this._merges))for(let t=e.top;t<=e.bottom;t++)for(let n=e.left;n<=e.right;n++){let e=this.findCell(t,n);e&&e.type===1&&e.unmerge()}let r=e+t,i=n.length,a=i-t,o=this._rows.length,s,c;if(a<0)for(e===o&&(this._rows[o-1]=void 0),s=r;s<=o;s++)if(c=this._rows[s-1],c){let e=this.getRow(s+a);e.values=c.values,e.style=L(c.style)??{},e.height=c.height,c.eachCell({includeEmpty:!0},(t,n)=>{e.getCell(n).style=L(t.style)??{}}),this._rows[s-1]=void 0}else this._rows[s+a-1]=void 0;else if(a>0)for(s=o;s>=r;s--)if(c=this._rows[s-1],c){let e=this.getRow(s+a);e.values=c.values,e.style=L(c.style)??{},e.height=c.height,c.eachCell({includeEmpty:!0},(t,n)=>{e.getCell(n).style=L(t.style)??{}})}else this._rows[s+a-1]=void 0;for(s=0;s<i;s++){let t=this.getRow(e+s);t.style={},t.values=n[s]}if(this.workbook.definedNames.spliceRows(this.name,e,t,i),a!==0){for(let t of this._media)if(t.type===`image`&&t.range){let{tl:n,br:r}=t.range;n&&n.nativeRow>=e-1&&(n.nativeRow=Math.max(0,n.nativeRow+a)),r&&r.nativeRow>=e-1&&(r.nativeRow=Math.max(0,r.nativeRow+a))}}this._spliceMerges(`row`,e,t,i)}eachRow(e,t){let n,r;if(typeof e==`function`?r=e:(n=e,r=t),n&&n.includeEmpty){let e=this._rows.length;for(let t=1;t<=e;t++)r(this.getRow(t),t)}else this._rows.forEach(e=>{e&&e.hasValues&&r(e,e.number)})}getSheetValues(){let e=[];return this._rows.forEach(t=>{t&&(e[t.number]=t.values)}),e}findCell(e,t){let n=M.getAddress(e,t),r=this._rows[n.row-1];return r?r.findCell(n.col):void 0}getCell(e,t){let n=M.getAddress(e,t);return this.getRow(n.row).getCellEx(n)}mergeCells(...e){let t=new N(e);this._mergeCellsInternal(t)}mergeCellsWithoutStyle(...e){let t=new N(e);this._mergeCellsInternal(t,!0)}_mergeCellsInternal(e,t){Object.values(this._merges).forEach(t=>{if(t.intersects(e))throw new kr});let{top:n,left:r,bottom:i,right:a}=e,o=t?void 0:om(n,r,i,a,(e,t)=>this.findCell(e,t)),s=this.getCell(e.top,e.left);for(let e=n;e<=i;e++)for(let i=r;i<=a;i++)(e>n||i>r)&&this.getCell(e,i).merge(s,t);o&&sm(n,r,i,a,o,(e,t)=>this.getCell(e,t)),this._merges[s.address]=e}_unMergeMaster(e){let t=this._merges[e.address];if(t){for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++)this.getCell(e,n).unmerge();delete this._merges[e.address]}}_spliceMerges(e,t,n,r){let i=r-n;if(i===0&&n===0)return;let a=t+n,o=e===`row`,s={};for(let e of Object.values(this._merges)){let{top:r,left:c,bottom:l,right:u}=e.model,d=o?r:c,f=o?l:u;if(i<=0&&n>0){let n=a-1;if(d>n){let e=o?new N(r+i,c,l+i,u):new N(r,c+i,l,u+i);s[M.encodeAddress(e.top,e.left)]=e}else if(f<t)s[M.encodeAddress(r,c)]=e;else if(!(d>=t&&f<=n)){let e=r,n=c,a=l,d=u;o?(e=r<t?r:t,a=Math.max(e,l+i)):(n=c<t?c:t,d=Math.max(n,u+i));let f=new N(e,n,a,d);e===a&&n===d||(s[M.encodeAddress(f.top,f.left)]=f)}}else if(d>=a){let e=o?new N(r+i,c,l+i,u):new N(r,c+i,l,u+i);s[M.encodeAddress(e.top,e.left)]=e}else f<a||(o?e.model.bottom=l+i:e.model.right=u+i),s[M.encodeAddress(r,c)]=e}this._merges=s;for(let e of Object.values(s)){let t=this.getCell(e.top,e.left);for(let n=e.top;n<=e.bottom;n++)for(let r=e.left;r<=e.right;r++)(n>e.top||r>e.left)&&this.getCell(n,r).merge(t,!0)}}get hasMerges(){return Object.values(this._merges).some(Boolean)}unMergeCells(...e){let t=new N(e);for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++){let t=this.findCell(e,n);t&&(t.type===1?this._unMergeMaster(t.master):this._merges[t.address]&&this._unMergeMaster(t))}}fillFormula(e,t,n,r=`shared`){let{top:i,left:a,bottom:o,right:s}=M.decode(e),c=s-a+1,l=M.encodeAddress(i,a),u=r===`shared`,d;d=typeof n==`function`?n:Array.isArray(n)?Array.isArray(n[0])?(e,t)=>n[e-i][t-a]:(e,t)=>n[(e-i)*c+(t-a)]:()=>void 0;let f=!0;for(let n=i;n<=o;n++)for(let i=a;i<=s;i++)if(f){let a=this.getCell(n,i);a.value={shareType:r,formula:t,ref:e,result:d(n,i)},f=!1}else this.getCell(n,i).value=u?{sharedFormula:l,result:d(n,i)}:d(n,i)}addImage(e,t){let n={type:`image`,imageId:String(e),range:t};this._media.push(new Tg(this,n))}getImages(){return this._media.filter(e=>e.type===`image`)}addBackgroundImage(e){let t={type:`background`,imageId:String(e)};this._media.push(new Tg(this,t))}getBackgroundImageId(){let e=this._media.find(e=>e.type===`background`);return e&&e.imageId}addWatermark(e){if(this._media=this._media.filter(e=>e.type!==`watermark`&&e.type!==`headerImage`),this._watermark={imageId:String(e.imageId),mode:e.mode??`overlay`,opacity:e.opacity,headerWidth:e.headerWidth,headerHeight:e.headerHeight,applyTo:e.applyTo},this._watermark.mode===`overlay`){let t={type:`watermark`,imageId:String(e.imageId),opacity:e.opacity};this._media.push(new Tg(this,t))}else{let t={type:`headerImage`,imageId:String(e.imageId),headerWidth:e.headerWidth,headerHeight:e.headerHeight,applyTo:e.applyTo};this._media.push(new Tg(this,t))}}getWatermark(){return this._watermark}removeWatermark(){this._watermark=null,this._media=this._media.filter(e=>e.type!==`watermark`&&e.type!==`headerImage`)}addFormCheckbox(e,t){let n=new wg(this,e,t);return this.formControls.push(n),n}getFormCheckboxes(){return this.formControls}async protect(e,t){this.sheetProtection=await um(e,t)}unprotect(){this.sheetProtection=null}addTable(e){let t=new Gg(this,e),n=t.name.toLowerCase();if(this.tables[t.name])throw new Lr(`Table name "${t.name}" already exists in worksheet "${this.name}".`);if(this.workbook._tableNames.has(n))throw new Lr(`Table name "${t.name}" already exists in another worksheet. Table names must be unique across the entire workbook (case-insensitive).`);return this.tables[t.name]=t,this.workbook._tableNames.add(n),t}getTable(e){return this.tables[e]}removeTable(e){this.tables[e]&&this.workbook._tableNames.delete(e.toLowerCase()),delete this.tables[e]}getTables(){return Object.values(this.tables)}addPivotTable(e){let t=Ng(this,e);return this.pivotTables.push(t),this.workbook.pivotTables.push(t),t}addConditionalFormatting(e){this.conditionalFormattings.push(e)}removeConditionalFormatting(e){typeof e==`number`?this.conditionalFormattings.splice(e,1):e instanceof Function?this.conditionalFormattings=this.conditionalFormattings.filter(e):this.conditionalFormattings=[]}autoFitColumn(e){let t=typeof e==`string`?M.l2n(e):e;return this._autoFitColumnImpl(t),this}autoFitColumns(e,t){let n=this.dimensions;if(!n||n.left===void 0)return this;let r=e==null?n.left:typeof e==`string`?M.l2n(e):e,i=t==null?n.right:typeof t==`string`?M.l2n(t):t;for(let e=r;e<=i;e++)this._autoFitColumnImpl(e);return this}autoFitRow(e){return this._autoFitRowImpl(e),this}autoFitRows(e,t){let n=this.dimensions;if(!n||n.top===void 0)return this;let r=e??n.top,i=t??n.bottom;for(let e=r;e<=i;e++)this._autoFitRowImpl(e);return this}_autoFitColumnImpl(e){let t=M_(),n=this._isColumnInAutoFilter(e),r=0;if(this._rows.forEach(n=>{if(!n||n.hidden)return;let i=n.findCell(e);if(!i||i.type===1)return;if(i.isMerged){let e=this._merges[i.address];if(e&&e.left!==e.right)return}if(i.alignment?.shrinkToFit)return;let a=K_(i),o=i.alignment?.indent;o&&o>0&&(a+=o*3*t),a>r&&(r=a)}),r>0){let i=L_(r,t,n);if(i>0){let t=this.getColumn(e);t.width=i,t.bestFit=!0}}}_autoFitRowImpl(e){let t=this._rows[e-1];if(!t)return;let n=M_(),r=0;t.eachCell(e=>{if(e.type===1)return;if(e.isMerged){let t=this._merges[e.address];if(t&&t.top!==t.bottom)return}if(this._columns[e.col-1]?.hidden)return;let t=q_(e,n,this._getColumnContentWidthForCell(e,n));t>r&&(r=t)}),r>0&&(t.height=Math.ceil(r*4)/4,t.customHeight=!0)}_getColumnContentWidthForCell(e,t){if(e.alignment?.wrapText)return G_(this._columns[e.col-1]?.width??this.properties.defaultColWidth??9,t)}_isColumnInAutoFilter(e){if(!this.autoFilter)return!1;if(typeof this.autoFilter==`string`){let t=M.decode(this.autoFilter);return e>=t.left&&e<=t.right}let{from:t,to:n}=this.autoFilter,r=typeof t==`string`?M.decode(t).col:t.col,i=typeof n==`string`?M.decode(n).col:n.col;return e>=r&&e<=i}get model(){let e={id:this.id,name:this.name,dataValidations:this.dataValidations.model,properties:this.properties,state:this.state,pageSetup:this.pageSetup,headerFooter:this.headerFooter,rowBreaks:this.rowBreaks,colBreaks:this.colBreaks,views:this.views,autoFilter:this.autoFilter,media:this._media.map(e=>e.model),sheetProtection:this.sheetProtection,tables:Object.values(this.tables).map(e=>e.model),pivotTables:this.pivotTables,conditionalFormattings:this.conditionalFormattings,formControls:this.formControls.map(e=>e.model),ignoredErrors:this.ignoredErrors,watermark:this._watermark,drawing:this._drawing};e.cols=gc.toModel(this.columns);let t=e.rows=[],n=e.dimensions=new N;return this._rows.forEach(e=>{let r=e&&e.model;r&&(n.expand(r.number,r.min,r.number,r.max),t.push(r))}),e.mergeCells=Object.values(this._merges).map(e=>e.range),e}_parseRows(e){this._rows=[],e.rows&&e.rows.forEach(e=>{let t=new Ql(this,e.number);this._rows[t.number-1]=t,t.model=e})}_parseMergeCells(e){e.mergeCells&&e.mergeCells.forEach(e=>{this.mergeCellsWithoutStyle(e)})}set model(e){if(this.name=e.name,this.state=e.state,this._columns=gc.fromModel(this,e.cols??[]),this._parseRows(e),this._parseMergeCells(e),this.dataValidations=new Vp(e.dataValidations),this.properties=e.properties,this.pageSetup=e.pageSetup,this.headerFooter=e.headerFooter,this.rowBreaks=e.rowBreaks??[],this.colBreaks=e.colBreaks??[],this.views=e.views,this.autoFilter=e.autoFilter,this._media=e.media.map(e=>new Tg(this,e)),this._watermark=e.watermark??null,!this._watermark){for(let e of this._media)if(e.type===`watermark`){this._watermark={imageId:e.imageId??``,mode:`overlay`,opacity:e.opacity};break}else if(e.type===`headerImage`){this._watermark={imageId:e.imageId??``,mode:`header`,headerWidth:e.headerWidth,headerHeight:e.headerHeight};break}}this.sheetProtection=e.sheetProtection,this.tables=e.tables.reduce((e,t)=>{let n=new Gg(this,t);return n.model=t,e[t.name]=n,this.workbook._tableNames.add(t.name.toLowerCase()),e},{}),this.pivotTables=e.pivotTables,this.conditionalFormattings=e.conditionalFormattings,this.ignoredErrors=e.ignoredErrors??[],this.formControls=[],this._drawing=e.drawing}toJSON(e){let t=e||{},n=1,r=this.rowCount,i=1,a=this.columnCount;if(t.range!==void 0){if(typeof t.range==`number`)n=t.range+1;else if(typeof t.range==`string`){let e=Qg(t.range);n=e.s.r+1,r=e.e.r+1,i=e.s.c+1,a=e.e.c+1}}if(r<n||a<i)return[];let o=t.header;if(o===1){let e=[],o=t.blankRows!==!1;for(let s=n;s<=r;s++){let n=[],r=!0;for(let e=i;e<=a;e++){let a=this.getCell(s,e),o=t.raw===!1?jl(a,t.dateFormat).trim():a.value;o!=null&&o!==``?(n[e-i]=o,r=!1):t.defaultValue===void 0?n[e-i]=null:n[e-i]=t.defaultValue}(!r||o)&&e.push(n)}return e}if(o===`A`){let e=[],o=t.blankRows===!0;for(let s=n;s<=r;s++){let n={},r=!0;for(let e=i;e<=a;e++){let i=this.getCell(s,e),a=t.raw===!1?jl(i,t.dateFormat).trim():i.value,o=qg(e-1);a!=null&&a!==``?(n[o]=a,r=!1):t.defaultValue!==void 0&&(n[o]=t.defaultValue)}(!r||o)&&e.push(n)}return e}if(Array.isArray(o)){let e=[],s=t.blankRows===!0;for(let c=n;c<=r;c++){let n={},r=!0;for(let e=i;e<=a;e++){let a=e-i,s=o[a]??`__EMPTY_${a}`,l=this.getCell(c,e),u=t.raw===!1?jl(l,t.dateFormat).trim():l.value;u!=null&&u!==``?(n[s]=u,r=!1):t.defaultValue!==void 0&&(n[s]=t.defaultValue)}(!r||s)&&e.push(n)}return e}let s=[],c={};for(let e=i;e<=a;e++){let t=this.getCell(n,e).value,r=t==null?`__EMPTY_${e-i}`:String(t);c[r]===void 0?c[r]=0:(c[r]++,r=`${r}_${c[r]}`),s.push(r)}let l=[],u=n+1,d=t.blankRows===!0;for(let e=u;e<=r;e++){let n={},r=!0;for(let o=i;o<=a;o++){let a=this.getCell(e,o),c=t.raw===!1?jl(a,t.dateFormat).trim():a.value,l=s[o-i];c!=null&&c!==``?(n[l]=c,r=!1):t.defaultValue!==void 0&&(n[l]=t.defaultValue)}(!r||d)&&l.push(n)}return l}addJSON(e,t){if(e.length===0)return this;let n=t||{},r=1,i=1;if(n.origin!==void 0){let e=Y_(n.origin,this.rowCount);r=e.row,i=e.col}let a=new Set;e.forEach(e=>Object.keys(e).forEach(e=>a.add(e)));let o=n.header?[...n.header]:[...a];n.header&&a.forEach(e=>{o.includes(e)||o.push(e)});let s=r;n.skipHeader||(o.forEach((e,t)=>{this.getCell(s,i+t).value=e}),s++);for(let t of e)o.forEach((e,r)=>{let a=t[e];a===null&&n.nullError?this.getCell(s,i+r).value={error:`#NULL!`}:a!=null&&(this.getCell(s,i+r).value=a)}),s++;return this}toAOA(){let e=[];return this.eachRow({includeEmpty:!0},(t,n)=>{let r=[];t.eachCell({includeEmpty:!0},(e,t)=>{r[t-1]=e.value}),e[n-1]=r}),e}addAOA(e,t){if(e.length===0)return this;let n=1,r=1;if(t?.origin!==void 0){let e=Y_(t.origin,this.rowCount);n=e.row,r=e.col}return e.forEach((e,t)=>{e&&e.forEach((e,i)=>{e!=null&&(this.getCell(n+t,r+i).value=e)})}),this}};function Y_(e,t){if(typeof e==`string`){let t=Xg(e);return{row:t.r+1,col:t.c+1}}return typeof e==`number`?e===-1?{row:t+1,col:1}:{row:e+1,col:1}:{row:e.r+1,col:e.c+1}}let X_=BigInt(2**53-1);function Z_(e,t){if(e>X_)throw Error(`ZIP64 ${t} value ${e} exceeds Number.MAX_SAFE_INTEGER. The archive may be corrupted or malicious.`);return Number(e)}function Q_(e){return e.encoding?da(e.encoding):void 0}function $_(e,t=!1){for(let n=e.length-22;n>=0;n--)if(e[n]===80&&e[n+1]===75&&e[n+2]===5&&e[n+3]===6)if(t){let t=e[n+20]|e[n+21]<<8;if(n+22+t===e.length)return n}else return n;return-1}function ev(e,t){let n=t-20;return n<0?-1:e[n]===80&&e[n+1]===75&&e[n+2]===6&&e[n+3]===7?n:-1}function tv(e,t,n=!0,r){let i=new ba(e,t);i.skip(4);let a=i.readUint16(),o=i.readUint16(),s=i.readUint16(),c=i.readUint16(),l=i.readUint32(),u=i.readUint32(),d=i.readUint16(),f=``;if(d>0){let e=i.readBytes(d);n&&(f=r?r.decode(e):wn(e))}return{eocd:{diskNumber:a,centralDirDisk:o,entriesOnDisk:s,totalEntries:c,centralDirSize:l,centralDirOffset:u},comment:f}}function nv(e,t){let n=new ba(e,t);return n.readUint32()===117853008?(n.skip(4),Z_(n.readBigUint64(),`EOCD locator offset`)):-1}function rv(e,t){let n=new ba(e,t);return n.readUint32()===101075792?(n.skip(8),n.skip(2),n.skip(2),n.skip(4),n.skip(4),{entriesOnDisk:n.readBigUint64(),totalEntries:n.readBigUint64(),centralDirSize:n.readBigUint64(),centralDirOffset:n.readBigUint64()}):null}function iv(e,t){e.totalEntries===65535&&(e.totalEntries=Z_(t.totalEntries,`totalEntries`)),e.entriesOnDisk===65535&&(e.entriesOnDisk=Z_(t.entriesOnDisk,`entriesOnDisk`)),e.centralDirSize===4294967295&&(e.centralDirSize=Z_(t.centralDirSize,`centralDirSize`)),e.centralDirOffset===4294967295&&(e.centralDirOffset=Z_(t.centralDirOffset,`centralDirOffset`))}function av(e,t,n){let r=e.readUint16();e.skip(2);let i=e.readUint16(),a=e.readUint16(),o=e.readUint16(),s=e.readUint16(),c=e.readUint32(),l=e.readUint32(),u=e.readUint32(),d=e.readUint16(),f=e.readUint16(),p=e.readUint16();e.skip(2),e.skip(2);let m=e.readUint32(),h=e.readUint32(),g=d>0?e.readBytes(d):new Uint8Array,_={},v=new Uint8Array;if(f>0){v=e.readBytes(f);let t={compressedSize:l,uncompressedSize:u,offsetToLocalFileHeader:h};_=vo(v,t),l=t.compressedSize,u=t.uncompressedSize,h=t.offsetToLocalFileHeader??h}let y=p>0?e.readBytes(p):new Uint8Array,b=t?ha(g,i,_,n):``,x=t?ga(y,i,_,n):``,S=ko(m),C=r>>8&255,ee=Ao(S),te=jo(S)||C===0&&(m&16)!=0||b.endsWith(`/`),ne=(i&1)!=0,re=ee?`symlink`:te?`directory`:`file`,ie=_.mtimeUnixSeconds,ae=Aa(s,o,ie),oe=`none`,se,ce,le;return ne&&(a===99&&_.aesInfo?(oe=`aes`,se=_.aesInfo.version,ce=_.aesInfo.keyStrength,le=_.aesInfo.compressionMethod):oe=`zipcrypto`),{path:b,type:re,compressedSize:l,compressedSize64:_.compressedSize64,uncompressedSize:u,uncompressedSize64:_.uncompressedSize64,compressionMethod:a,crc32:c,lastModified:ae,localHeaderOffset:h,localHeaderOffset64:_.offsetToLocalFileHeader64,comment:x,externalAttributes:m,mode:S,versionMadeBy:r,extraField:v,isEncrypted:ne,encryptionMethod:oe,aesVersion:se,aesKeyStrength:ce,originalCompressionMethod:le,dosTime:o}}function ov(e,t,n,r={}){let i=r.decodeStrings??!0,a=Q_(r);if(n===0)return[];let o=Array(n),s=new ba(e,t);for(let e=0;e<n;e++){if(s.readUint32()!==33639248)throw Error(`Invalid Central Directory header signature at entry ${e}`);o[e]=av(s,i,a)}return o}function sv(e,t={}){let n=t.decodeStrings??!0,r=Q_(t),i=$_(e);if(i===-1)throw Error(`Invalid ZIP file: End of Central Directory not found`);let{eocd:a,comment:o}=tv(e,i,n,r),s=ev(e,i);if(s!==-1){let t=nv(e,s);if(t>=0){let n=rv(e,t);n&&iv(a,n)}}return{entries:ov(e,a.centralDirOffset,a.totalEntries,t),comment:o}}let cv=512*1024*1024;async function lv(e,t,n,r=!1,i=!0){let a;if(i&&e.uncompressedSize>cv)throw Error(`Entry "${e.path}" declares uncompressed size of ${e.uncompressedSize} bytes, which exceeds the maximum allowed size of ${cv} bytes. Use the streaming API for large entries.`);if(e.isEncrypted){if(!n)throw new Xi(e.path);if(e.encryptionMethod===`aes`&&e.aesKeyStrength){let r=await co(t,n,e.aesKeyStrength);if(!r)throw new Yi(e.path);a=await dv(r,e.originalCompressionMethod??0,e.path)}else if(e.encryptionMethod===`zipcrypto`){let r=op(t,n,e.crc32,e.dosTime);if(!r)throw new Yi(e.path);a=await dv(r,e.compressionMethod,e.path)}else throw new Yi(e.path,`Unsupported encryption method`)}else a=await dv(t,e.compressionMethod,e.path);if(i&&a.length!==e.uncompressedSize){let t=a.length>e.uncompressedSize?`too-many-bytes`:`too-few-bytes`;throw new Ji(e.path,e.uncompressedSize,a.length,t)}if(e.encryptionMethod===`zipcrypto`||r&&e.encryptionMethod!==`aes`){let t=na(a);if(t!==e.crc32)throw new qi(e.path,e.crc32,t)}return a}function uv(e,t,n,r=!0){let i;if(r&&e.uncompressedSize>cv)throw Error(`Entry "${e.path}" declares uncompressed size of ${e.uncompressedSize} bytes, which exceeds the maximum allowed size of ${cv} bytes. Use the streaming API for large entries.`);if(e.isEncrypted){if(!n)throw new Xi(e.path);if(e.encryptionMethod===`aes`)throw Error(`File "${e.path}" uses AES encryption. Use the async extract() method instead of extractSync().`);if(e.encryptionMethod===`zipcrypto`){let r=op(t,n,e.crc32,e.dosTime);if(!r)throw new Yi(e.path);i=fv(r,e.compressionMethod,e.path);let a=na(i);if(a!==e.crc32)throw new qi(e.path,e.crc32,a)}else throw new Yi(e.path,`Unsupported encryption method`)}else i=fv(t,e.compressionMethod,e.path);if(r&&i.length!==e.uncompressedSize){let t=i.length>e.uncompressedSize?`too-many-bytes`:`too-few-bytes`;throw new Ji(e.path,e.uncompressedSize,i.length,t)}return i}async function dv(e,t,n){if(t===0)return e;if(t===8)return Bf(e);throw new Zi(t)}function fv(e,t,n){if(t===0)return e;if(t===8)return Vf(e);throw new Zi(t)}function pv(e,t){if(e.readUint32()!==67324752)throw Error(`Invalid local file header signature at offset ${t}`);e.skip(2),e.skip(2),e.skip(2),e.skip(2),e.skip(2),e.skip(4),e.skip(4),e.skip(4);let n=e.readUint16(),r=e.readUint16();return e.skip(n),e.skip(r),e.position}function mv(e,t){let n=pv(new ba(e,t.localHeaderOffset),t.localHeaderOffset);return e.subarray(n,n+t.compressedSize)}let hv=BigInt(2**53-1);function gv(e){if(e.uncompressedSize64!==void 0&&e.uncompressedSize64>hv||e.compressedSize64!==void 0&&e.compressedSize64>hv)throw Error(`File "${e.path}" is too large to extract into memory (ZIP64 size > 2^53-1)`);if(e.localHeaderOffset64!==void 0&&e.localHeaderOffset64>hv)throw Error(`File "${e.path}" has a ZIP64 offset > 2^53-1 and cannot be extracted by the in-memory parser`)}function _v(e,t={}){return sv(e,{decodeStrings:t.decodeStrings,encoding:t.encoding})}async function vv(e,t,n={}){return t.type===`directory`?P:(gv(t),lv(t,mv(e,t),n.password))}function yv(e,t,n={}){return t.type===`directory`?P:(gv(t),uv(t,mv(e,t),n.password))}var bv=class{constructor(e,t={}){this.data=e instanceof ArrayBuffer?new Uint8Array(e):e;let n=_v(this.data,t);this.entries=n.entries,this.archiveComment=n.comment,this.entryMap=new Map(this.entries.map(e=>[e.path,e])),this.password=t.password}setPassword(e){this.password=e}getEntries(){return this.entries}getEntry(e){return this.entryMap.get(e)}getRawCompressedData(e){let t=this.entryMap.get(e);return t?mv(this.data,t):null}getRawEntry(e){let t=this.entryMap.get(e);return t?{info:t,compressedData:mv(this.data,t)}:null}hasEntry(e){return this.entryMap.has(e)}childCount(e){let t=this.entryMap.get(e);if(t&&t.type!==`directory`)return 0;let n=e.endsWith(`/`)?e:e+`/`,r=t?.type===`directory`?t:this.entryMap.get(n),i=(r?.path??n).endsWith(`/`)?r?.path??n:(r?.path??n)+`/`,a=0;for(let e of this.entries)e.path.startsWith(i)&&e.path!==i&&a++;return a}getZipComment(){return this.archiveComment}hasEncryptedEntries(){return this.entries.some(e=>e.isEncrypted)}getEncryptedEntries(){return this.entries.filter(e=>e.isEncrypted)}listFiles(){return this.entries.map(e=>e.path)}async extract(e,t){let n=this.entryMap.get(e);return n?vv(this.data,n,{password:t??this.password}):null}extractSync(e,t){let n=this.entryMap.get(e);return n?yv(this.data,n,{password:t??this.password}):null}async extractAll(e){let t=new Map,n=e??this.password;for(let e of this.entries){let r=await vv(this.data,e,{password:n});t.set(e.path,r)}return t}extractAllSync(e){let t={},n=e??this.password;for(let e of this.entries)t[e.path]=yv(this.data,e,{password:n});return t}async forEach(e,t){let n=t??this.password;for(let t of this.entries){let r=null;if(await e(t,()=>(r||=vv(this.data,t,{password:n}),r))===!1)break}}};let xv=/\[([^\]\\/:*?"<>|\s]+)\]([A-Za-z_\u00A1-\uFFFF][A-Za-z0-9_\u00A1-\uFFFF.]*)!/g,Sv=/'\[([^\]]+)\]((?:''|[^'])+)'!/g;function Cv(e){if(e.indexOf(`[`)===-1)return[];let t=[],n=Tv(e),r=(e,r,i,a,o,s)=>{if(Ev(e,n))return;let c=/^\d+$/.test(i);t.push({match:s,workbook:i,numeric:c,index:c?parseInt(i,10):null,sheet:Dv(a),quoted:o,start:e,end:r})};xv.lastIndex=0;let i;for(;(i=xv.exec(e))!==null;)r(i.index,i.index+i[0].length,i[1],i[2],!1,i[0]);for(Sv.lastIndex=0;(i=Sv.exec(e))!==null;)r(i.index,i.index+i[0].length,i[1],i[2],!0,i[0]);t.sort((e,t)=>e.start-t.start);let a=[],o=-1;for(let e of t)e.start>=o&&(a.push(e),o=e.end);return a}function wv(e,t){let n=Cv(e);if(n.length===0)return e;let r=``,i=0;for(let a of n){let n=t(a);if(n!==null){if(r+=e.slice(i,a.start),a.quoted){let t=e.slice(a.start+1,a.end-2);r+=`'`+t.replace(/^\[[^\]]*\]/,`[${n}]`)+`'!`}else r+=`[${n}]${a.match.slice(a.match.indexOf(`]`)+1)}`;i=a.end}}return r+=e.slice(i),r}function Tv(e){if(e.indexOf(`"`)===-1)return[];let t=[],n=e.length,r=0;for(;r<n;)if(e[r]===`"`){let i=r;for(r++;r<n;){if(e[r]===`"`){if(r+1<n&&e[r+1]===`"`){r+=2;continue}r++;break}r++}t.push([i,r])}else r++;return t}function Ev(e,t){for(let[n,r]of t)if(e>=n&&e<r)return!0;return!1}function Dv(e){return e.replace(/''/g,`'`)}let Ov=new Map([[/^xl\/charts\/chart\d+\.xml$/,`application/vnd.openxmlformats-officedocument.drawingml.chart+xml`],[/^xl\/charts\/style\d+\.xml$/,`application/vnd.ms-office.chartstyle+xml`],[/^xl\/charts\/colors\d+\.xml$/,`application/vnd.ms-office.chartcolorstyle+xml`]]),kv=[`xl/charts/`];var Av=class e{constructor(){this.files=new Map}static isPassthroughPath(e){return kv.some(t=>e.startsWith(t))}static getContentType(e){if(!e.startsWith(`xl/charts/_rels/`)){for(let[t,n]of Ov)if(t.test(e))return n}}add(e,t){this.files.set(e,t)}get(e){return this.files.get(e)}has(e){return this.files.has(e)}getPaths(){return[...this.files.keys()]}toRecord(){let e={};for(let[t,n]of this.files)e[t]=n;return e}fromRecord(e){this.files.clear();for(let[t,n]of Object.entries(e))this.files.set(t,n)}getContentTypes(){let t=[];for(let n of this.files.keys()){let r=e.getContentType(n);r&&t.push({partName:n,contentType:r})}return t}writeToZip(e){for(let[t,n]of this.files)e.append(n,{name:t})}clear(){this.files.clear()}get size(){return this.files.size}};let jv={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`};var Mv=class extends U{constructor(...e){super(...e),this.sheetNamesByIndex=[],this.currentSheetCells=null,this.currentSheetName=null,this.currentCellAddress=null,this.currentCellType=`n`,this.currentCellValue=null,this.inV=!1}get tag(){return`externalLink`}reset(){super.reset(),this.sheetNamesByIndex=[],this.currentSheetCells=null,this.currentSheetName=null,this.currentCellAddress=null,this.currentCellType=`n`,this.currentCellValue=null,this.inV=!1}render(e,t){if(e.openXml(z),e.openNode(`externalLink`,jv),e.openNode(`externalBook`,{"r:id":`rId1`}),t.sheetNames.length>0){e.openNode(`sheetNames`);for(let n of t.sheetNames)e.leafNode(`sheetName`,{val:n});e.closeNode()}let n=t.cachedValues??{};if(Object.keys(n).some(e=>{let t=n[e];return t&&Object.keys(t).length>0})){e.openNode(`sheetDataSet`);for(let r=0;r<t.sheetNames.length;r++){let i=n[t.sheetNames[r]];!i||Object.keys(i).length===0||Nv(e,r,i)}e.closeNode()}e.closeNode(),e.closeNode()}parseOpen(e){switch(e.name){case`externalLink`:return this.model={externalBookRId:``,sheetNames:[],cachedValues:{}},this.sheetNamesByIndex=[],!0;case`externalBook`:return this.model&&(this.model.externalBookRId=e.attributes[`r:id`]??``),!0;case`sheetName`:if(this.model){let t=e.attributes.val??``;this.model.sheetNames.push(t),this.sheetNamesByIndex.push(t)}return!0;case`sheetData`:{let t=e.attributes.sheetId,n=t===void 0?NaN:parseInt(t,10);return this.currentSheetName=Number.isFinite(n)?this.sheetNamesByIndex[n]??null:null,this.currentSheetCells=this.currentSheetName?{}:null,!0}case`cell`:return this.currentCellAddress=e.attributes.r??null,this.currentCellType=e.attributes.t??`n`,this.currentCellValue=null,!0;case`v`:return this.inV=!0,this.currentCellValue=``,!0;default:return!1}}parseText(e){this.inV&&(this.currentCellValue=(this.currentCellValue??``)+e)}parseClose(e){switch(e){case`v`:return this.inV=!1,!0;case`cell`:return this.model&&this.currentSheetCells&&this.currentCellAddress&&(this.currentSheetCells[this.currentCellAddress.toUpperCase()]=Bv(this.currentCellType,this.currentCellValue)),this.currentCellAddress=null,this.currentCellType=`n`,this.currentCellValue=null,!0;case`sheetData`:return this.model&&this.currentSheetName&&this.currentSheetCells&&Object.keys(this.currentSheetCells).length>0&&(this.model.cachedValues[this.currentSheetName]=this.currentSheetCells),this.currentSheetName=null,this.currentSheetCells=null,!0;case`externalLink`:return!1;default:return!0}}};function Nv(e,t,n){let r=Pv(n);e.openNode(`sheetData`,{sheetId:t});for(let t of r){e.openNode(`row`,{r:t.rowNum});for(let{address:n,value:r}of t.cells)Lv(e,n,r);e.closeNode()}e.closeNode()}function Pv(e){let t=new Map;for(let n of Object.keys(e)){let r=n.toUpperCase(),i=Fv(r);if(i===void 0)continue;let a=t.get(i);a||(a={rowNum:i,cells:[]},t.set(i,a)),a.cells.push({address:Iv(r),value:e[n]})}return[...t.values()].sort((e,t)=>e.rowNum-t.rowNum)}function Fv(e){let t=/^\$?[A-Z]+\$?(\d+)$/.exec(e);return t?parseInt(t[1],10):void 0}function Iv(e){return e.replace(/\$/g,``)}function Lv(e,t,n){if(n==null){e.leafNode(`cell`,{r:t});return}if(typeof n==`number`){e.openNode(`cell`,{r:t}),e.leafNode(`v`,void 0,String(n)),e.closeNode();return}if(typeof n==`boolean`){e.openNode(`cell`,{r:t,t:`b`}),e.leafNode(`v`,void 0,n?`1`:`0`),e.closeNode();return}if(zv(n)){e.openNode(`cell`,{r:t,t:`e`}),e.leafNode(`v`,void 0,n),e.closeNode();return}e.openNode(`cell`,{r:t,t:`str`}),e.leafNode(`v`,void 0,n),e.closeNode()}let Rv=new Set([`#NULL!`,`#DIV/0!`,`#VALUE!`,`#REF!`,`#NAME?`,`#NUM!`,`#N/A`,`#GETTING_DATA`,`#SPILL!`,`#CALC!`,`#CONNECT!`,`#BLOCKED!`,`#UNKNOWN!`,`#FIELD!`,`#PYTHON!`]);function zv(e){return Rv.has(e)}function Bv(e,t){if(t===null||t===``)return null;switch(e){case`b`:return t!==`0`&&t.toLowerCase()!==`false`;case`e`:return t;case`str`:return t;default:{let e=Number(t);return Number.isFinite(e)?e:t}}}var Vv=class e extends U{constructor(){super(),this.map={comment:new Wp},this.model={comments:[]}}render(t,n){let r=n||this.model;t.openXml(z),t.openNode(`comments`,e.COMMENTS_ATTRIBUTES),t.openNode(`authors`),t.leafNode(`author`,null,`Author`),t.closeNode(),t.openNode(`commentList`),r.comments.forEach(e=>{this.map.comment.render(t,e)}),t.closeNode(),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`commentList`:return this.model={comments:[]},!0;case`comment`:return this.parser=this.map.comment,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`commentList`:return!1;case`comment`:return this.model.comments.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}static{this.COMMENTS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}},Hv=class extends U{_checkedToXmlValue(e){switch(e){case`Checked`:return`1`;case`Mixed`:return`2`;default:return`0`}}get tag(){return`formControlPr`}render(e,t){let n=t||this.model,r={xmlns:`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`,objectType:`CheckBox`,checked:this._checkedToXmlValue(n.checked),lockText:`1`};n.link&&(r.fmlaLink=n.link),n.noThreeD&&(r.noThreeD=`1`),e.openXml({version:`1.0`,encoding:`UTF-8`,standalone:`yes`}),e.leafNode(this.tag,r)}toXml(e){let t=new wd;return this.render(t,e),t.xml}parseOpen(){return!0}parseText(){}parseClose(){return!1}},Uv=class e extends U{constructor(){super(),this._parsingHeaderImage=!1,this.map={"v:shape":new Zp},this.model={comments:[],formControls:[]}}get tag(){return`xml`}render(t,n){let r=n||this.model,i=r.comments,a=r.formControls,o=r.headerImage,s=i&&i.length>0,c=a&&a.length>0,l=!!o;if(t.openXml(z),t.openNode(this.tag,e.DRAWING_ATTRIBUTES),t.openNode(`o:shapelayout`,{"v:ext":`edit`}),t.leafNode(`o:idmap`,{"v:ext":`edit`,data:1}),t.closeNode(),s&&(t.openNode(`v:shapetype`,{id:`_x0000_t202`,coordsize:`21600,21600`,"o:spt":202,path:`m,l,21600r21600,l21600,xe`}),t.leafNode(`v:stroke`,{joinstyle:`miter`}),t.leafNode(`v:path`,{gradientshapeok:`t`,"o:connecttype":`rect`}),t.closeNode()),c&&(t.openNode(`v:shapetype`,{id:`_x0000_t201`,coordsize:`21600,21600`,"o:spt":`201`,path:`m,l,21600r21600,l21600,xe`}),t.leafNode(`v:stroke`,{joinstyle:`miter`}),t.leafNode(`v:path`,{shadowok:`f`,"o:extrusionok":`f`,strokeok:`f`,fillok:`f`,"o:connecttype":`rect`}),t.leafNode(`o:lock`,{"v:ext":`edit`,shapetype:`t`}),t.closeNode()),l&&(t.openNode(`v:shapetype`,{id:`_x0000_t75`,coordsize:`21600,21600`,"o:spt":`75`,"o:preferrelative":`t`,path:`m@4@5l@4@11@9@11@9@5xe`,filled:`f`,stroked:`f`}),t.leafNode(`v:stroke`,{joinstyle:`miter`}),t.openNode(`v:formulas`),t.leafNode(`v:f`,{eqn:`if lineDrawn pixelLineWidth 0`}),t.leafNode(`v:f`,{eqn:`sum @0 1 0`}),t.leafNode(`v:f`,{eqn:`sum 0 0 @1`}),t.leafNode(`v:f`,{eqn:`prod @2 1 2`}),t.leafNode(`v:f`,{eqn:`prod @3 21600 pixelWidth`}),t.leafNode(`v:f`,{eqn:`prod @3 21600 pixelHeight`}),t.leafNode(`v:f`,{eqn:`sum @0 0 1`}),t.leafNode(`v:f`,{eqn:`prod @6 1 2`}),t.leafNode(`v:f`,{eqn:`prod @7 21600 pixelWidth`}),t.leafNode(`v:f`,{eqn:`sum @8 21600 0`}),t.leafNode(`v:f`,{eqn:`prod @7 21600 pixelHeight`}),t.leafNode(`v:f`,{eqn:`sum @10 21600 0`}),t.closeNode(),t.leafNode(`v:path`,{"o:extrusionok":`f`,gradientshapeok:`t`,"o:connecttype":`rect`}),t.leafNode(`o:lock`,{"v:ext":`edit`,aspectratio:`t`}),t.closeNode()),s)for(let e=0;e<i.length;e++)this.map[`v:shape`].render(t,i[e],e);if(c)for(let e of a)this._renderCheckboxShape(t,e);l&&this._renderHeaderImageShape(t,o),t.closeNode()}_renderHeaderImageShape(e,t){let n=t.width??467.25,r=t.height??311.25;e.openNode(`v:shape`,{id:`CH`,"o:spid":`_x0000_s2049`,type:`#_x0000_t75`,style:`position:absolute;margin-left:0;margin-top:0;width:${n}pt;height:${r}pt;z-index:1`}),e.leafNode(`v:imagedata`,{"o:relid":t.imageRelId,"o:title":`watermark`}),e.leafNode(`o:lock`,{"v:ext":`edit`,rotation:`t`}),e.closeNode()}_renderCheckboxShape(e,t){let n={id:`_x0000_s${t.shapeId}`,type:`#_x0000_t201`,style:wg.getVmlStyle(t),"o:insetmode":`auto`,fillcolor:`buttonFace [67]`,strokecolor:`windowText [64]`,"o:preferrelative":`t`,filled:`f`,stroked:`f`};e.openNode(`v:shape`,n),e.leafNode(`v:fill`,{"o:detectmouseclick":`t`}),e.leafNode(`o:lock`,{"v:ext":`edit`,text:`t`}),t.text&&(e.openNode(`v:textbox`,{style:`mso-direction-alt:auto`,"o:singleclick":`t`}),e.openNode(`div`,{style:`text-align:left`}),e.openNode(`font`,{face:`Tahoma`,size:`160`,color:`auto`}),e.writeText(t.text),e.closeNode(),e.closeNode(),e.closeNode()),e.openNode(`x:ClientData`,{ObjectType:`Checkbox`}),e.leafNode(`x:MoveWithCells`),e.leafNode(`x:SizeWithCells`),e.openNode(`x:Anchor`),e.writeText(wg.getVmlAnchor(t)),e.closeNode(),e.leafNode(`x:Locked`,void 0,`False`),e.leafNode(`x:LockText`,void 0,`True`),e.leafNode(`x:PrintObject`,void 0,t.print?`True`:`False`),e.leafNode(`x:AutoFill`,void 0,`False`),e.leafNode(`x:AutoLine`,void 0,`False`),e.leafNode(`x:TextHAlign`,void 0,`Left`),e.leafNode(`x:TextVAlign`,void 0,`Center`),t.link&&e.leafNode(`x:FmlaLink`,void 0,t.link),t.noThreeD&&e.leafNode(`x:NoThreeD`),e.leafNode(`x:Checked`,void 0,String(wg.getVmlCheckedValue(t))),e.leafNode(`x:Row`,void 0,String(t.tl.row)),e.leafNode(`x:Column`,void 0,String(t.tl.col)),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={comments:[],formControls:[]};break;case`v:shape`:if(e.attributes.type===`#_x0000_t75`){this._parsingHeaderImage=!0;let t=e.attributes.style||``,n=/width:([0-9.]+)pt/.exec(t),r=/height:([0-9.]+)pt/.exec(t);this._headerImageWidth=n?parseFloat(n[1]):void 0,this._headerImageHeight=r?parseFloat(r[1]):void 0}else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break;default:this._parsingHeaderImage&&e.name===`v:imagedata`?this._headerImageRelId=e.attributes[`o:relid`]:(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e));break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.comments.push(this.parser.model),this.parser=void 0),!0;switch(e){case`v:shape`:return this._parsingHeaderImage&&this._headerImageRelId&&(this.model.headerImage={imageRelId:this._headerImageRelId,width:this._headerImageWidth,height:this._headerImageHeight}),this._parsingHeaderImage=!1,this._headerImageRelId=void 0,this._headerImageWidth=void 0,this._headerImageHeight=void 0,!0;case this.tag:return!1;default:return!0}}static{this.DRAWING_ATTRIBUTES={"xmlns:v":`urn:schemas-microsoft-com:vml`,"xmlns:o":`urn:schemas-microsoft-com:office:office`,"xmlns:x":`urn:schemas-microsoft-com:office:excel`}}};function Wv(e){return isNaN(e.getTime())?``:e.toISOString().replace(/\.\d{3}Z$/,``)}function Gv(e){let t=R(e.name),n=e.numFmtId??`0`,r=qv(e.extraAttrs),i=e.fieldGroupXml?`\n ${e.fieldGroupXml}`:``;if(e.sharedItems===null){if(e.isLoaded)return i?`<cacheField name="${t}" numFmtId="${n}"${r}>${i}\n </cacheField>`:`<cacheField name="${t}" numFmtId="${n}"${r} />`;let a;return a=e.minValue!==void 0&&e.maxValue!==void 0?` containsSemiMixedTypes="0" containsString="0" containsNumber="1"${e.containsInteger?` containsInteger="1"`:``} minValue="${e.minValue}" maxValue="${e.maxValue}"`:``,`<cacheField name="${t}" numFmtId="${n}"${r}>
|
|
403
|
+
`}let Sf=null,Cf=0;function wf(){if(Sf===null){let e=xf(),t=new Blob([e],{type:`text/javascript`});Sf=URL.createObjectURL(t)}return Cf++,Sf}function Tf(){if(Sf!==null&&--Cf<=0){try{URL.revokeObjectURL(Sf)}catch{}Sf=null,Cf=0}}let Ef=new Uint8Array,Df={onData:e=>{},onEnd:()=>{},onError:e=>{}};function Of(e){return e.byteOffset===0&&e.byteLength===e.buffer.byteLength}function kf(e){return Of(e)?e:e.slice()}var Af=class{_taskQueueSize(){return this._taskQueue.length-this._taskQueueHead}_compactTaskQueueIfNeeded(){this._taskQueueHead>32&&this._taskQueueHead*2>=this._taskQueue.length&&(this._taskQueue.splice(0,this._taskQueueHead),this._taskQueueHead=0)}_dequeueTask(){if(this._taskQueueHead>=this._taskQueue.length)return;let e=this._taskQueue[this._taskQueueHead++];return this._compactTaskQueueIfNeeded(),e}_compactPendingStreamRequestsIfNeeded(){this._pendingStreamRequestHead>32&&this._pendingStreamRequestHead*2>=this._pendingStreamRequests.length&&(this._pendingStreamRequests.splice(0,this._pendingStreamRequestHead),this._pendingStreamRequestHead=0)}_dequeuePendingStreamRequest(){if(this._pendingStreamRequestHead>=this._pendingStreamRequests.length)return;let e=this._pendingStreamRequests[this._pendingStreamRequestHead++];return this._compactPendingStreamRequestsIfNeeded(),e}_waitForStreamSlot(e){return e.slotWaitPromise||=new Promise(t=>{e.resolveSlotWait=()=>{e.slotWaitPromise=null,e.resolveSlotWait=null,t()}}),e.slotWaitPromise}_waitForStreamDrain(e){return e.drainWaitPromise||=new Promise(t=>{e.resolveDrainWait=()=>{e.drainWaitPromise=null,e.resolveDrainWait=null,t()}}),e.drainWaitPromise}_resolveSlotWaiter(e){e.resolveSlotWait?.()}_resolveDrainWaiter(e){e.resolveDrainWait?.()}constructor(e){this._workers=new Map,this._taskQueue=[],this._taskQueueHead=0,this._pendingTasks=new Map,this._nextTaskId=1,this._nextWorkerId=1,this._terminated=!1,this._completedTasks=0,this._failedTasks=0,this._pendingStreamRequests=[],this._pendingStreamRequestHead=0,this._options=_f(e),this._options.workerUrl?(this._workerUrl=this._options.workerUrl,this._useCustomUrl=!0):(this._workerUrl=wf(),this._useCustomUrl=!1);for(let e=0;e<this._options.minWorkers;e++)this._createWorker()}async execute(e,t,n){if(this._terminated)throw Error(`Worker pool has been terminated`);if(!bf())throw Error(`Web Workers are not supported in this environment`);if(n?.signal?.aborted)throw i();let r=this._nextTaskId++,a=n?.priority??`normal`,o=yf(a);return new Promise((i,s)=>{let c={taskId:r,taskType:e,data:t,level:n?.level,priority:a,priorityValue:o,resolve:i,reject:s,signal:n?.signal,allowTransfer:n?.allowTransfer,startTime:performance.now()};n?.signal&&(c.abortHandler=()=>{this._cancelTask(r)},n.signal.addEventListener(`abort`,c.abortHandler,{once:!0})),this._pendingTasks.set(r,c),this._enqueueTask(c),this._processQueue()})}getStats(){let e=this._workers.size,t=0;for(let e of this._workers.values())e.busy&&t++;return{totalWorkers:e,activeWorkers:t,idleWorkers:e-t,pendingTasks:this._taskQueueSize(),completedTasks:this._completedTasks,failedTasks:this._failedTasks}}terminate(){if(this._terminated)return;this._terminated=!0;for(let e of this._workers.values())this._terminateWorker(e);this._workers.clear();let e=Error(`Worker pool terminated`);for(let t of this._pendingTasks.values())this._cleanupTask(t),t.reject(e);this._pendingTasks.clear(),this._taskQueue.length=0,this._taskQueueHead=0,this._pendingStreamRequests.length=0,this._pendingStreamRequestHead=0,this._useCustomUrl||Tf()}isTerminated(){return this._terminated}_createWorker(){if(this._terminated||this._workers.size>=this._options.maxWorkers)return null;let e=this._nextWorkerId++,t=new Worker(this._workerUrl),n={id:e,worker:t,busy:!1,currentTaskId:null,idleTimer:null,streamSession:null};return t.onmessage=e=>{this._handleWorkerMessage(n,e.data)},t.onerror=e=>{this._handleWorkerError(n,e)},this._workers.set(e,n),n}_terminateWorker(e){this._clearIdleTimer(e);try{e.worker.postMessage({type:`terminate`})}catch{}try{e.worker.terminate()}catch{}this._workers.delete(e.id)}_clearIdleTimer(e){e.idleTimer!==null&&(clearTimeout(e.idleTimer),e.idleTimer=null)}_findIdleWorker(){for(let e of this._workers.values())if(!e.busy)return e}_enqueueTask(e){let t=this._taskQueue,n=e.priorityValue;this._compactTaskQueueIfNeeded();let r=this._taskQueueHead,i=t.length;for(;r<i;){let e=r+i>>>1;t[e].priorityValue>=n?r=e+1:i=e}t.splice(r,0,e)}_processQueue(){for(;!this._terminated&&this._taskQueueSize()>0;){let e=this._findIdleWorker()??this._createWorker()??void 0;if(!e)return;for(;;){let t=this._dequeueTask();if(!t)return;if(t.signal?.aborted){this._pendingTasks.delete(t.taskId),this._cleanupTask(t),t.reject(i());continue}this._assignTask(e,t);break}}}_assignTask(e,t){this._clearIdleTimer(e),e.busy=!0,e.currentTaskId=t.taskId;let n=this._options.useTransferables&&t.allowTransfer===!0,r=n?kf(t.data):t.data,i={type:`task`,taskId:t.taskId,taskType:t.taskType,data:r,level:t.level};n?e.worker.postMessage(i,[r.buffer]):e.worker.postMessage(i)}_handleWorkerMessage(e,t){if(t.type!==`ready`){if(e.streamSession){let n=e.streamSession;switch(t.type){case`started`:if(t.taskId!==n.taskId)return;n.startReady=!0,n.resolveStart?.(),n.resolveStart=null,n.rejectStart=null;return;case`out`:if(t.taskId!==n.taskId)return;n.onData(t.data);return;case`ack`:if(t.taskId!==n.taskId)return;n.inflightChunkCount>0&&n.inflightChunkCount--,this._resolveSlotWaiter(n),n.inflightChunkCount===0&&n.resolveDrainWait&&this._resolveDrainWaiter(n);return;case`done`:if(t.taskId!==n.taskId)return;n.ended=!0,n.inflightChunkCount=0,n.startReady=!0,n.resolveStart?.(),n.resolveStart=null,n.rejectStart=null,this._resolveSlotWaiter(n),this._resolveDrainWaiter(n),this._completedTasks++,t.duration??performance.now()-n.startTime,n.onEnd(),e.streamSession=null,this._workerBecameIdle(e);return;case`error`:{if(t.taskId!==n.taskId)return;let r=Error(t.error??`Unknown worker error`);n.ended=!0,n.inflightChunkCount=0,n.startReady=!0,n.rejectStart?.(r),n.resolveStart=null,n.rejectStart=null,this._resolveSlotWaiter(n),this._resolveDrainWaiter(n),this._failedTasks++,n.onError(r),e.streamSession=null,this._workerBecameIdle(e);return}default:break}}switch(t.type){case`result`:case`error`:{let n=t.taskId;if(typeof n!=`number`)return;let r=this._pendingTasks.get(n);if(!r){this._workerBecameIdle(e);return}if(this._pendingTasks.delete(n),this._cleanupTask(r),t.type===`result`){this._completedTasks++;let e=t.duration??performance.now()-r.startTime;r.resolve({data:t.data,duration:e})}else this._failedTasks++,r.reject(Error(t.error??`Unknown worker error`));this._workerBecameIdle(e);return}default:return}}}_handleWorkerError(e,t){let n=e.currentTaskId;if(this._terminateWorker(e),n!==null){let e=this._pendingTasks.get(n);e&&(this._pendingTasks.delete(n),this._cleanupTask(e),this._failedTasks++,e.reject(Error(t.message||`Worker error`)))}this._processQueue()}_workerBecameIdle(e){if(e.busy=!1,e.currentTaskId=null,this._pendingStreamRequestHead<this._pendingStreamRequests.length){let t=this._dequeuePendingStreamRequest();if(t){t(e);return}}this._taskQueueSize()>0?this._processQueue():this._workers.size>this._options.minWorkers&&this._options.idleTimeout>0&&(e.idleTimer=setTimeout(()=>{!e.busy&&this._workers.size>this._options.minWorkers&&!this._terminated&&this._terminateWorker(e)},this._options.idleTimeout))}openStream(e,t=Df){if(this._terminated)throw Error(`Worker pool has been terminated`);if(!bf())throw Error(`Web Workers are not supported in this environment`);let n=this._nextTaskId++,r=t.allowTransfer===!0,i=this._options.useTransferables&&r,a=i?kf:e=>e,o=i?(e,t,n)=>{e.postMessage(t,[n.buffer])}:(e,t,n)=>{e.postMessage(t)},s=null,c=null,l=async()=>{if(s)return s;if(c)return c;c=(async()=>{let r=this._findIdleWorker()??this._createWorker()??void 0;return r?(s=r,this._bindStreamSession(s,n,e,t.level,t),this._startStreamSession(s),s):(s=await new Promise(e=>{this._pendingStreamRequests.push(e)}),this._bindStreamSession(s,n,e,t.level,t),this._startStreamSession(s),s)})();try{return await c}finally{c=null}};l();let u=(e,t,n)=>{let r=a(n),i=t.chunkMessage;i.data=r,o(e.worker,i,r)},d=(e,t,n)=>{if(t.inflightChunkCount>=8)return this._waitForStreamSlot(t).then(()=>{t.ended||(t.inflightChunkCount++,u(e,t,n))});t.inflightChunkCount++,u(e,t,n)};return{write:async e=>{if(e.byteLength===0)return;let t=s??await l(),n=t.streamSession;if(!n||n.ended)throw Error(`Streaming session is not active`);n.writeChain=n.writeChain.then(()=>{if(!n.ended)return n.startReady?d(t,n,e):n.startPromise.then(()=>{if(!n.ended)return d(t,n,e)})}),await n.writeChain},end:async()=>{let e=await l(),t=e.streamSession;!t||t.ended||(t.startReady||await t.startPromise,await t.writeChain,t.inflightChunkCount>0&&await this._waitForStreamDrain(t),t.ended=!0,e.worker.postMessage(t.endMessage))},abort:e=>{l().then(t=>{let n=t.streamSession;if(!n)return;let r=n.abortMessage;r.error=e,t.worker.postMessage(r)})}}}_bindStreamSession(e,t,n,r,i){this._clearIdleTimer(e),e.busy=!0,e.currentTaskId=t;let a=null,o=null,s=new Promise((e,t)=>{a=e,o=t}),c=setTimeout(()=>{o?.(Error(`Worker stream start timeout`))},5e3);s.finally(()=>clearTimeout(c)),e.streamSession={taskId:t,taskType:n,startTime:performance.now(),started:!1,startReady:!1,startPromise:s,resolveStart:a,rejectStart:o,level:r,writeChain:Promise.resolve(),inflightChunkCount:0,slotWaitPromise:null,resolveSlotWait:null,drainWaitPromise:null,resolveDrainWait:null,chunkMessage:{type:`chunk`,taskId:t,data:Ef},startMessage:{type:`start`,taskId:t,taskType:n,level:r},endMessage:{type:`end`,taskId:t},abortMessage:{type:`abort`,taskId:t,error:void 0},ended:!1,onData:i.onData,onEnd:i.onEnd,onError:i.onError}}_startStreamSession(e){let t=e.streamSession;!t||t.started||(t.started=!0,e.worker.postMessage(t.startMessage))}_cancelTask(e){let t=this._pendingTasks.get(e);if(!t)return;this._pendingTasks.delete(e),this._cleanupTask(t);let n=-1;for(let t=this._taskQueueHead;t<this._taskQueue.length;t++)if(this._taskQueue[t].taskId===e){n=t;break}n>=0&&this._taskQueue.splice(n,1),t.reject(i())}_cleanupTask(e){e.abortHandler&&e.signal&&e.signal.removeEventListener(`abort`,e.abortHandler)}async executeBatch(e){let t=Array(e.length);for(let n=0;n<e.length;n++){let r=e[n];t[n]=this.execute(r.taskType,r.data,r.options)}return Promise.all(t)}};let jf=null;function Mf(e){return(!jf||jf.isTerminated())&&(jf=new Af(e)),jf}async function Nf(e,t){return(await Mf().execute(`inflate`,e,t)).data}function Pf(e,t){let n=bf();if(t.useWorker===!0)return n;if(t.useWorker===!1)return!1;let r=t.autoWorkerThreshold??1048576;return n&&e.length>=r}function Ff(e,t){if(t?.aborted||a(e))throw i(t?.reason??e)}let If={hasNative:si,native:di,worker:Nf,jsFallback:ki};async function Lf(e,t,n){let r=e.hasNative(),i=bf(),a=n.useWorker;if(a===!0&&i)try{return await e.worker(t,{level:n.level,signal:n.signal,allowTransfer:n.allowTransfer})}catch(e){Ff(e,n.signal)}return r?e.native(t):a!==!0&&Pf(t,n)?e.worker(t,{level:n.level,signal:n.signal,allowTransfer:n.allowTransfer}):e.jsFallback(t,n.level)}async function Rf(e,t={}){return Lf(If,e,t)}function zf(e){return ki(e)}new Uint8Array([31,139,8,0,0,0,0,0,0,255]);function Bf(e,t,n){return E([_i(n),e,vi(pi(t))])}function Vf(e,t={}){let n=t.level??6;return Bf(n===0?Ai(e):Fi(e,n),e,n)}let Hf=`write after end`;function Uf(e,t,n){let r=o(t);n?n(r):e.emit(`error`,r)}var Wf=class extends D{constructor(...e){super(...e),this.ended=!1,this.destroyed=!1,this.writeChain=Promise.resolve(),this._backend=null}setBackend(e){this._backend=e}write(e,t){if(this.ended)return Uf(this,Error(Hf),t),!1;if(e.byteLength===0)return t&&queueMicrotask(t),!0;let n=this._backend;if(!n)throw Error(`Backend not initialized`);let r=this.writeChain.then(()=>n.write(e));return this.writeChain=r,r.then(()=>{this.destroyed||t?.()}).catch(e=>{this.destroyed||Uf(this,e,t)}),!0}end(e){if(this.ended){e?.();return}this.ended=!0;let t=this._backend;if(!t)throw Error(`Backend not initialized`);this.writeChain.then(()=>t.close()).then(()=>e?.()).catch(t=>Uf(this,t,e))}destroy(e){this.ended=!0,this.destroyed=!0,this._backend?.abort(e),e&&this.emit(`error`,e)}};function Gf(e,t){let n=t?new CompressionStream(e):new DecompressionStream(e),r=n.writable.getWriter(),i=n.readable.getReader(),a=new Wf,s=null,c=(async()=>{try{for(;;){let{value:e,done:t}=await i.read();if(t)break;e&&a.emit(`data`,e)}a.emit(`end`)}catch(e){let t=o(e);s=t,a.emit(`error`,t)}})();return a.setBackend({write:e=>r.write(e),close:async()=>{if(await r.close(),await c,s)throw o(s)},abort:e=>{i.cancel(e).catch(()=>{}),r.abort(e).catch(()=>{})}}),a}function Kf(e,t,n,r){let i=t??Mf(),a=null,o=null,s=new Promise((e,t)=>{a=e,o=t}),c=new Wf,l=i.openStream(e,{level:n,allowTransfer:r,onData:e=>c.emit(`data`,e),onEnd:()=>{c.emit(`end`),a?.()},onError:e=>{c.emit(`error`,e),o?.(e)}});return c.setBackend({write:e=>l.write(e),close:async()=>{await l.end(),await s},abort:e=>{a?.(),l.abort(e?.message)}}),c}var qf=class extends D{constructor(e){super(),this.process=e,this.chunks=[],this.ended=!1}write(e,t){return this.ended?(Uf(this,Error(Hf),t),!1):e.byteLength===0?(t&&queueMicrotask(t),!0):(this.chunks.push(e),t&&queueMicrotask(t),!0)}end(e){if(this.ended){e?.();return}this.ended=!0;let t=this.chunks.length,n=t===0?P:t===1?this.chunks[0]:E(this.chunks);this.chunks.length=0;try{let t=this.process(n);this.emit(`data`,t),this.emit(`end`),e?.()}catch(t){Uf(this,t,e)}}destroy(e){this.ended=!0,this.chunks.length=0,e&&this.emit(`error`,e)}};function Jf(e,t){let n=e===`deflate`?t.level??6:void 0;return t.useWorker&&bf()?Kf(e,t.workerPool,n,t.allowTransfer):(e===`deflate`?oi():ci())?Gf(`deflate-raw`,e===`deflate`):new qf(e===`deflate`?e=>Fi(e,n):ki)}function Yf(e={}){return Jf(`deflate`,e)}function Xf(){return oi()}function Zf(e){let t={key0:305419896,key1:591751049,key2:878082192},n=typeof e==`string`?Cn(e):e;for(let e=0;e<n.length;e++)Qf(t,n[e]);return t}function Qf(e,t){e.key0=ra(e.key0,t),e.key1=e.key1+(e.key0&255)>>>0,e.key1=(Math.imul(e.key1,134775813)>>>0)+1>>>0,e.key2=ra(e.key2,e.key1>>>24&255)}function $f(e){let t=(e.key2|2)>>>0;return Math.imul(t,t^1)>>>8&255}function ep(e,t){let n=(t^$f(e))&255;return Qf(e,n),n}function tp(e,t){let n=(t^$f(e))&255;return Qf(e,t),n}function np(e,t,n,r){if(t.length!==12)return!1;let i=new Uint8Array(12);for(let n=0;n<12;n++)i[n]=ep(e,t[n]);let a=i[11];return a===(n>>>24&255)||r!==void 0&&a===(r>>>8&255)}function rp(e,t,n){let r=new Uint8Array(12),i=n(11);for(let t=0;t<11;t++)r[t]=tp(e,i[t]);return r[11]=tp(e,t>>>24&255),r}function ip(e,t,n,r){if(e.length<12)return null;let i=Zf(t);if(!np(i,e.subarray(0,12),n,r))return null;let a=e.length-12,o=new Uint8Array(a);for(let t=0;t<a;t++)o[t]=ep(i,e[12+t]);return o}let ap={"aes-128":128,"aes-192":192,"aes-256":256};function op(e){return e in ap}function sp(e){return ap[e]}function cp(e){return e.replace(/\\/g,`/`)}function lp(e){return e.replace(/^\/+/,``)}function up(e){return e.replace(/^[a-zA-Z]:\/?/,``)}function dp(e){let t=e.split(`/`),n=[];for(let e of t)if(!(!e||e===`.`)){if(e===`..`){n.length>0?n.pop():n.push(`..`);continue}n.push(e)}return n.join(`/`)}function fp(e){return e.startsWith(`/`)}function pp(e){return/^[a-zA-Z]:/.test(e)}function mp(e,t={}){let n=t.mode??`legacy`,r=e;r=cp(r);let i=pp(r);if(n===`legacy`)return r=lp(r),t.prependSlash?`/`+r:r;let a=t.stripDrive??!0;if(n===`safe`&&i&&!a)throw Error(`Unsafe ZIP path (drive): ${e}`);a&&(r=up(r));let o=fp(r);if(r=lp(r),r=dp(r),n===`safe`){if(o)throw Error(`Unsafe ZIP path (absolute): ${e}`);if(r===`..`||r.startsWith(`../`))throw Error(`Unsafe ZIP path (traversal): ${e}`)}return t.prependSlash?`/`+r:r}function hp(e){return Math.log(e)/Math.LN2}function gp(e,t){let n=0;for(let r=0;r<256;r++){let i=e[r];if(i===0)continue;let a=i/t;n-=a*hp(a)}return n}function _p(e,t){let n=new Uint32Array(256),r=0,i=0;if(Array.isArray(e))for(let a=0;a<e.length&&!(r>=t);a++){let o=e[a],s=Math.min(o.length,t-r);for(let e=0;e<s;e++){let t=o[e];n[t]===0&&(i+=1),n[t]+=1}r+=s}else for(let a of e){if(r>=t)break;let e=Math.min(a.length,t-r);for(let t=0;t<e;t++){let e=a[t];n[e]===0&&(i+=1),n[e]+=1}r+=e}return{total:r,unique:i,counts:n}}function vp(e,t={}){let n=t.sampleBytes??65536,r=t.minDecisionBytes??16384,{total:i,unique:a,counts:o}=_p(e,n);return i<r||a<200?!1:gp(o,i)>=7.95}function yp(e,t=20){return(e&255)<<8|t&255}function bp(e){switch(e){case`directory`:return Oo;case`symlink`:return Do;default:return 32768}}function xp(e){return e>>>0&65535}function Sp(e,t){let n=e.endsWith(`/`)||e.endsWith(`\\`);return t!==void 0&&Ao(t)?`symlink`:n?`directory`:`file`}function Cp(e){let t=e.kind,n=t===`directory`?16:32,r=(e.msDosAttributes??n)&255,i=e.mode;i!==void 0&&(i&61440||(i=i&4095|bp(t)),i=xp(i));let a=((i??0)&65535)<<16|r,o=yp(i!==void 0||t===`symlink`?3:0);return{externalAttributes:a>>>0,versionMadeBy:o}}function wp(e){if(e.externalAttributes!==void 0)return{externalAttributes:e.externalAttributes,versionMadeBy:e.versionMadeBy};let t=Cp({kind:Sp(e.name,e.mode),mode:e.mode,msDosAttributes:e.msDosAttributes});return{externalAttributes:t.externalAttributes,versionMadeBy:e.versionMadeBy??t.versionMadeBy}}function Tp(e){return e?8:0}function Ep(e,t=!0){let n=0;return t&&(n|=To),e&&(n|=8),n}function Dp(e){let t=da(e.codec),n=t.encode(e.name),r=fa(e.comment,t),{dosTime:i,dosDate:a}=Ma(e.modTime),o=e.atime||e.ctime||e.birthTime?{atime:e.atime,ctime:e.ctime,birthTime:e.birthTime}:void 0,s=ja(e.modTime,e.timestamps,o);return!t.useUtf8Flag&&t.useUnicodeExtraFields&&(e.name&&(s=Vo(s,fo(n,e.name))),e.comment&&(s=Vo(s,po(r,e.comment)))),{nameBytes:n,commentBytes:r,dosTime:i,dosDate:a,extraField:s,compressionMethod:Tp(e.deflate),flags:Ep(e.useDataDescriptor,t.useUtf8Flag)}}function Op(e,t,n,r,i){if(!i)return 0;let a=0;return(e||t>4294967295)&&(a+=8),(e||n>4294967295)&&(a+=8),(e||r>4294967295)&&(a+=8),a>0?4+a:0}function kp(e){let t=e[0];return t?.fileName===void 0?t?.compressedData===void 0?`central`:`processed`:`input`}function Ap(e,t){let n=t.zip64Mode===!0,r=t.zip64Mode===!1,i=kp(e),a=0;for(let t=0;t<e.length;t++){let r=e[t],o=i===`input`?r.fileName:r.name,s=r.extraField,c=r.comment,l=i===`processed`?r.compressedData.length:r.compressedSize,u=r.uncompressedSize,d=i===`input`?r.localHeaderOffset:r.offset,f=i===`processed`?void 0:r.zip64,p=n||f===!0||d>4294967295||l>4294967295||u>4294967295;a+=46+o.length+s.length+Op(n,u,l,d,p)+(c?.length??0)}let o=e.length>65535||t.centralDirOffset>4294967295,s=n||o||a>4294967295;if(r&&s)throw Error(`ZIP64 is required but zip64=false`);let c=s?98+t.zipComment.length:22+t.zipComment.length;return{centralDirSize:a,trailerSize:c,totalSize:a+c,usedZip64:s}}function jp(e,t){let n=t.zip64Mode===!0,r=Ap(e,{zipComment:t.zipComment,zip64Mode:t.zip64Mode,centralDirOffset:t.centralDirOffset}),i=kp(e),a=t.offset,o=new DataView(t.out.buffer,t.out.byteOffset,t.out.byteLength);for(let r=0;r<e.length;r++){let s=e[r],c=i===`input`?s.fileName:s.name,l=s.extraField,u=s.comment,d=s.flags,f=i===`input`?s.crc32:s.crc,p=i===`processed`?s.compressedData.length:s.compressedSize,m=s.uncompressedSize,h=s.compressionMethod,g=i===`processed`?s.modTime:s.dosTime,_=i===`processed`?s.modDate:s.dosDate,v=i===`input`?s.localHeaderOffset:s.offset,y=i===`processed`?void 0:s.zip64,b=s.externalAttributes,x=s.versionMadeBy,S=n||y===!0||v>4294967295||p>4294967295||m>4294967295,C=S?Bo({uncompressedSize:n||m>4294967295?m:void 0,compressedSize:n||p>4294967295?p:void 0,localHeaderOffset:n||v>4294967295?v:void 0}):P,ee=S&&C.length>0?Vo(l,C):l;a+=Fo(t.out,o,a,{fileName:c,extraField:ee,comment:u??P,flags:d,compressionMethod:h,dosTime:g,dosDate:_,crc32:f,compressedSize:S?Mo:p,uncompressedSize:S?Mo:m,localHeaderOffset:S?Mo:v,versionMadeBy:x??20,versionNeeded:S?45:20,externalAttributes:b})}if(r.usedZip64){let n=t.centralDirOffset+r.centralDirSize;a+=Ho(t.out,o,a,{entryCountOnDisk:e.length,entryCountTotal:e.length,centralDirSize:r.centralDirSize,centralDirOffset:t.centralDirOffset}),a+=Uo(t.out,o,a,{zip64EndOfCentralDirectoryOffset:n,totalDisks:1}),Io(t.out,o,a,{entryCount:65535,centralDirSize:Mo,centralDirOffset:Mo,comment:t.zipComment})}else Io(t.out,o,a,{entryCount:e.length,centralDirSize:r.centralDirSize,centralDirOffset:t.centralDirOffset,comment:t.zipComment});return{centralDirSize:r.centralDirSize,trailerSize:r.trailerSize,totalWritten:r.totalSize,usedZip64:r.usedZip64}}let Mp=16*1024,Np=65536;var Pp=class{constructor(e,t){this._deflate=null,this._crc=4294967295,this._uncompressedSize=0,this._compressedSize=0,this._finalized=!1,this._headerEmitted=!1,this._ondata=null,this._onerror=null,this._centralDirEntryInfo=null,this._pendingEnd=!1,this._emittedDataDescriptor=!1,this._localHeader=null,this._zip64Mode=`auto`,this._zip64=!1,this._deflateWanted=null,this._pendingChunks=[],this._sampleLen=0,this._completeResolve=null,this._completeReject=null,this._completePromise=null,this._completeError=null,this._encryptionMethod=`none`,this._zipCryptoState=null,this._aesBuffer=[],this._aesBufferSize=0,this._originalCompressionMethod=0,this._aesExtraField=null,this._dataQueue=[],this._finalQueued=!1,this._pushChain=Promise.resolve(),this._inputBuf=null,this._inputPos=0,this._syncDeflater=null,this._syncZlibReady=!1;let n=t?.path?mp(e,t.path):e;this.name=n;let r=t?.modTime??new Date;if(this._modTime=r,this.level=t?.level??6,this._smartStore=t?.smartStore??!0,this._zip64Mode=t?.zip64??`auto`,this._zip64=this._zip64Mode===!0,this._encryptionMethod=t?.encryptionMethod??`none`,this._password=t?.password,this._encryptionMethod!==`none`&&!this._password)throw Error(`Password is required for encryption`);op(this._encryptionMethod)&&(this._aesKeyStrength=sp(this._encryptionMethod)),this._stringCodec=da(t?.encoding);let i=Dp({name:n,comment:t?.comment,modTime:r,atime:t?.atime,ctime:t?.ctime,birthTime:t?.birthTime,timestamps:t?.timestamps??`dos`,useDataDescriptor:!0,deflate:!1,codec:this._stringCodec});this.nameBytes=i.nameBytes,this.commentBytes=i.commentBytes,this.dosTime=i.dosTime,this.dosDate=i.dosDate,this.extraField=i.extraField,this._flags=i.flags,this._compressionMethod=i.compressionMethod;let a=wp({name:n,mode:t?.mode,msDosAttributes:t?.msDosAttributes,externalAttributes:t?.externalAttributes,versionMadeBy:t?.versionMadeBy});if(this._externalAttributes=a.externalAttributes,this._versionMadeBy=a.versionMadeBy,this._encryptionMethod!==`none`&&(this._flags|=1),!this._smartStore){let e=this.level>0;this._deflateWanted=e,this._compressionMethod=this._buildCompressionMethod(e),e&&this._initDeflateStream();return}this.level===0&&(this._deflateWanted=!1,this._compressionMethod=this._buildCompressionMethod(!1))}_buildCompressionMethod(e){return Tp(e)}_getAesExtraField(){return this._aesKeyStrength?(this._aesExtraField||=io(2,this._aesKeyStrength,this._originalCompressionMethod),this._aesExtraField):P}_initZipCryptoEncryption(){if(this._zipCryptoState||this._encryptionMethod!==`zipcrypto`)return;this._zipCryptoState=Zf(this._password);let e=this.dosTime<<16|this.dosDate,t=rp(this._zipCryptoState,e,Va);this._compressedSize+=t.length,this._enqueueData(t,!1)}_zipCryptoEncryptChunk(e){if(!this._zipCryptoState)return e;let t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)t[n]=tp(this._zipCryptoState,e[n]);return t}_initDeflateStream(){this._deflate||(this._deflate=Yf({level:this.level}),this._deflate.on(`error`,e=>{this._rejectComplete(e)}),this._deflate.on(`data`,e=>{if(this._aesKeyStrength){this._aesBuffer.push(e),this._aesBufferSize+=e.length;return}if(this._encryptionMethod===`zipcrypto`){this._initZipCryptoEncryption();let t=this._zipCryptoEncryptChunk(e);this._compressedSize+=t.length,this._enqueueData(t,!1);return}this._compressedSize+=e.length,this._enqueueData(e,!1)}),this._deflate.on(`end`,()=>{this._pendingEnd&&!this._emittedDataDescriptor&&(this._emittedDataDescriptor=!0,this._finalizeEncryptionAndEmitDescriptor())}))}_finalizeEncryptionAndEmitDescriptor(){if(this._aesKeyStrength&&this._aesBuffer.length>0){this._finalizeAesEncryption().then(()=>this._emitDataDescriptor()).catch(e=>this._rejectComplete(e));return}this._emitDataDescriptor()}async _finalizeAesEncryption(){if(!this._aesKeyStrength||this._aesBufferSize===0)return;let e;if(this._aesBuffer.length===1)e=this._aesBuffer[0];else{e=new Uint8Array(this._aesBufferSize);let t=0;for(let n=0;n<this._aesBuffer.length;n++){let r=this._aesBuffer[n];e.set(r,t),t+=r.length}}this._aesBuffer.length=0,this._aesBufferSize=0;let t=await lo(e,this._password,this._aesKeyStrength);this._compressedSize=t.length,this._enqueueData(t,!1)}_buildLocalHeader(){let e=this.extraField,t=this._compressionMethod;return this._aesKeyStrength&&(this._originalCompressionMethod=this._compressionMethod,t=99,e=Vo(this.extraField,this._getAesExtraField())),Po({fileName:this.nameBytes,extraField:e,flags:this._flags,compressionMethod:t,dosTime:this.dosTime,dosDate:this.dosDate,crc32:0,compressedSize:0,uncompressedSize:0,versionNeeded:this._zip64?45:20})}_accumulateSampleLen(e){if(this._deflateWanted!==null||e.length===0||this._sampleLen>=Mp)return;let t=Math.min(Mp-this._sampleLen,e.length);t<=0||(this._sampleLen+=t)}_shouldDecide(e){return this._deflateWanted===null?e||this._sampleLen>=Mp:!1}_decideCompressionIfNeeded(e,t,n=!1){if(this._deflateWanted!==null)return;if(e&&this._sampleLen===0){this._deflateWanted=!1,this._sampleLen=0,this._compressionMethod=this._buildCompressionMethod(!1),this._localHeader=null;return}let r=vp((function*(e,t){for(let t of e)t.length&&(yield t);t.length&&(yield t)})(this._pendingChunks,t),{sampleBytes:Mp,minDecisionBytes:Mp});this._deflateWanted=!r,this._sampleLen=0,this._compressionMethod=this._buildCompressionMethod(this._deflateWanted),this._localHeader=null,this._deflateWanted&&(n||this._initDeflateStream())}_emitHeaderIfNeeded(){this._headerEmitted||=(this._emitHeader(),!0)}async _flushPendingChunks(){if(this._pendingChunks.length!==0){for(let e of this._pendingChunks)await this._writeData(e);this._pendingChunks.length=0}}_enqueueData(e,t){this._ondata?this._ondata(e,t):(this._dataQueue.push(e),t&&(this._finalQueued=!0))}_flushQueue(){if(!this._ondata)return;let e=this._dataQueue.length,t=this._finalQueued?e-1:-1;for(let n=0;n<e;n++)this._ondata(this._dataQueue[n],n===t);this._dataQueue.length=0,this._finalQueued=!1}get ondata(){return this._ondata}set ondata(e){this._ondata=e,this._flushQueue()}get onerror(){return this._onerror}set onerror(e){this._onerror=e,this._completeError&&e(this._completeError)}_resolveComplete(){this._completeResolve&&this._completeResolve()}_rejectComplete(e){this._completeError||(this._completeError=e,this._onerror&&this._onerror(e),this._completeReject&&this._completeReject(e))}_ensureCompletePromise(){return this._completeError?Promise.reject(this._completeError):this._emittedDataDescriptor?Promise.resolve():(this._completePromise||=new Promise((e,t)=>{this._completeResolve=e,this._completeReject=t}),this._completePromise)}_tapCallback(e,t){t&&e.then(()=>t()).catch(e=>t(e))}_writeDataSync(e,t){if(!(e.length===0&&!t)){if(e.length>0&&(this._crc=ea(this._crc,e),this._uncompressedSize+=e.length),this._deflateWanted){if(this._syncDeflater||=new Gi(this.level),e.length>0){let t=this._syncDeflater.write(e);t.length>0&&(this._compressedSize+=t.length,this._enqueueData(t,!1))}if(t){let e=this._syncDeflater.finish();e.length>0&&(this._compressedSize+=e.length,this._enqueueData(e,!1)),this._syncDeflater=null}return}if(this._aesKeyStrength){this._aesBuffer.push(e),this._aesBufferSize+=e.length;return}if(this._encryptionMethod===`zipcrypto`){this._initZipCryptoEncryption();let t=this._zipCryptoEncryptChunk(e);this._compressedSize+=t.length,this._enqueueData(t,!1);return}e.length>0&&(this._compressedSize+=e.length,this._enqueueData(e,!1))}}_writeData(e){if(e.length===0)return Promise.resolve();if(this._crc=ea(this._crc,e),this._uncompressedSize+=e.length,this._deflate)return new Promise((t,n)=>{this._deflate.write(e,e=>{e?n(e):t()})});if(this._aesKeyStrength)return this._aesBuffer.push(e),this._aesBufferSize+=e.length,Promise.resolve();if(this._encryptionMethod===`zipcrypto`){this._initZipCryptoEncryption();let t=this._zipCryptoEncryptChunk(e);return this._compressedSize+=t.length,this._enqueueData(t,!1),Promise.resolve()}return this._compressedSize+=e.length,this._enqueueData(e,!1),Promise.resolve()}_endDeflateAndWait(){return new Promise((e,t)=>{let n=this._deflate,r=e=>{a(),t(e)},i=()=>{a(),e()},a=()=>{n.off(`error`,r),n.off(`end`,i)};n.once(`error`,r),n.once(`end`,i),n.end()})}_finalizeAfterWrite(e){this._finalized=!0,this._pendingEnd=!0;let t=this._ensureCompletePromise();return this._deflate?e.then(()=>this._endDeflateAndWait()).then(()=>t):this._aesKeyStrength&&this._aesBufferSize>0?(this._emittedDataDescriptor=!0,this._finalizeAesEncryption().then(()=>this._emitDataDescriptor()).catch(e=>this._rejectComplete(e)),t):(this._emittedDataDescriptor=!0,this._emitDataDescriptor(),t)}_pushUnchained(e,t,n){if(this._finalized){let e=Promise.reject(Error(`Cannot push to finalized ZipDeflateFile`));return this._tapCallback(e,n),e}if(this._completeError){let e=Promise.reject(this._completeError);return this._tapCallback(e,n),e}if(this._deflateWanted===null){if(this._accumulateSampleLen(e),!this._shouldDecide(t)){e.length>0&&this._pendingChunks.push(e);let t=Promise.resolve();return this._tapCallback(t,n),t}this._decideCompressionIfNeeded(t,e),this._emitHeaderIfNeeded();let r=this._pendingChunks.length>0,i=this._flushPendingChunks(),a=i;e.length>0&&(a=r?i.then(()=>this._writeData(e)):this._writeData(e));let o=t?this._finalizeAfterWrite(a):a;return this._tapCallback(o,n),o}this._emitHeaderIfNeeded();let r=this._writeData(e),i=t?this._finalizeAfterWrite(r):r;return this._tapCallback(i,n),i}push(e,t=!1,n){if(!this._deflate&&this._encryptionMethod===`none`&&!Xf()){try{this._pushSyncPath(e,t),n?.()}catch(e){return n?.(e instanceof Error?e:Error(String(e))),Promise.reject(e)}return Promise.resolve()}if(!t&&e.length>0&&e.length<Np){if(this._inputBuf||(this._inputBuf=new Uint8Array(Np),this._inputPos=0),this._inputPos+e.length<=Np)return this._inputBuf.set(e,this._inputPos),this._inputPos+=e.length,n?.(),Promise.resolve();let t=new Uint8Array(this._inputPos+e.length);return t.set(this._inputBuf.subarray(0,this._inputPos)),t.set(e,this._inputPos),this._inputPos=0,this._pushAsync(t,!1,n)}if(this._inputPos>0){let r=this._inputBuf.slice(0,this._inputPos);this._inputPos=0;let i=this._pushAsync(r,!1),a=this._pushChain=i.then(()=>this._pushUnchained(e,t,n),()=>this._pushUnchained(e,t,n));return a.catch(()=>{}),a}return this._pushAsync(e,t,n)}_pushAsync(e,t,n){let r=this._pushChain=this._pushChain.then(()=>this._pushUnchained(e,t,n),()=>this._pushUnchained(e,t,n));return r.catch(()=>{}),r}_pushSyncPath(e,t=!1){if(this._finalized)throw Error(`Cannot push to finalized ZipDeflateFile`);if(this._syncZlibReady||=!0,this._deflateWanted===null){if(this._accumulateSampleLen(e),!this._shouldDecide(t)){e.length>0&&this._pendingChunks.push(e);return}this._decideCompressionIfNeeded(t,e,!0),this._emitHeaderIfNeeded();for(let e of this._pendingChunks)this._writeDataSync(e,!1);this._pendingChunks.length=0,e.length>0&&this._writeDataSync(e,t),t&&this._finalizeSyncAfterWrite();return}this._emitHeaderIfNeeded(),this._writeDataSync(e,t),t&&this._finalizeSyncAfterWrite()}_finalizeSyncAfterWrite(){if(this._finalized=!0,this._pendingEnd=!1,this._emittedDataDescriptor=!0,this._aesKeyStrength&&this._aesBufferSize>0)throw Error(`AES encryption is not supported with synchronous push`);if(this._syncDeflater){let e=this._syncDeflater.finish();e.length>0&&(this._compressedSize+=e.length,this._enqueueData(e,!1)),this._syncDeflater=null}if(this._emitDataDescriptor(),this._completeError)throw this._completeError}_emitHeader(){this._localHeader||=this._buildLocalHeader(),this._enqueueData(this._localHeader,!1)}_emitDataDescriptor(){let e=ta(this._crc),t=this._compressedSize>4294967295||this._uncompressedSize>4294967295;if(this._zip64Mode===!1&&t){this._rejectComplete(Error(`ZIP64 is required but zip64=false`));return}(this._zip64Mode===!0||t&&!this._zip64)&&(this._zip64=!0);let n=this._zip64?zo(e,this._compressedSize,this._uncompressedSize):Lo(e,this._compressedSize,this._uncompressedSize),r=this._compressionMethod,i=this.extraField;this._aesKeyStrength&&(r=99,i=Vo(this.extraField,this._getAesExtraField())),this._centralDirEntryInfo={name:this.nameBytes,extraField:i,comment:this.commentBytes,flags:this._flags,crc:e,compressedSize:this._compressedSize,uncompressedSize:this._uncompressedSize,compressionMethod:r,dosTime:this.dosTime,dosDate:this.dosDate,offset:-1,zip64:this._zip64,externalAttributes:this._externalAttributes,versionMadeBy:this._versionMadeBy},this._enqueueData(n,!0),this._resolveComplete()}complete(){return this._ensureCompletePromise()}getEntryInfo(){if(!this._centralDirEntryInfo)return null;let e=this.name,t=e.endsWith(`/`)||e.endsWith(`\\`),n=this._centralDirEntryInfo.externalAttributes,r=ko(n);return{path:e,type:Ao(r)?`symlink`:t?`directory`:`file`,compressedSize:this._centralDirEntryInfo.compressedSize,uncompressedSize:this._centralDirEntryInfo.uncompressedSize,compressionMethod:this._centralDirEntryInfo.compressionMethod,crc32:this._centralDirEntryInfo.crc,lastModified:this._modTime,localHeaderOffset:this._centralDirEntryInfo.offset,comment:this._stringCodec.decode(this._centralDirEntryInfo.comment),externalAttributes:n,mode:r,versionMadeBy:this._centralDirEntryInfo.versionMadeBy,extraField:this._centralDirEntryInfo.extraField,isEncrypted:this._encryptionMethod!==`none`,encryptionMethod:this._aesKeyStrength?`aes`:this._encryptionMethod===`zipcrypto`?`zipcrypto`:void 0,aesKeyStrength:this._aesKeyStrength,originalCompressionMethod:this._aesKeyStrength?this._originalCompressionMethod:void 0}}getCentralDirectoryEntryInfo(){return this._centralDirEntryInfo}isComplete(){return this._emittedDataDescriptor&&this._centralDirEntryInfo!==null}abort(e){if(this._completeError)return;let t=i(e);this._finalized=!0,this._pendingEnd=!0,this._rejectComplete(t);try{let e=this._deflate;e&&typeof e.destroy==`function`&&e.destroy(t)}catch{}}},Fp=class{constructor(e,t){this.entries=[],this.currentOffset=0,this.ended=!1,this.endPending=!1,this.addedEntryCount=0,this.fileQueue=[],this.fileQueueIndex=0,this.activeFile=null,this.callback=e,this._stringCodec=t?.codec??da(t?.encoding),this.zipComment=fa(t?.comment,this._stringCodec),this.zip64Mode=t?.zip64??`auto`}add(e){if(this.ended)throw Error(`Cannot add files after calling end() `);if(this.zip64Mode===!1&&this.addedEntryCount>=65535)throw Error(`ZIP64 is required but zip64=false`);this.addedEntryCount++,this.fileQueue.push(e),this.activeFile||this._processNextFile()}_processNextFile(){if(this.fileQueueIndex>=this.fileQueue.length){this.activeFile=null,this.fileQueue=[],this.fileQueueIndex=0,this.endPending&&this._finalize();return}let e=this.fileQueue[this.fileQueueIndex++];this.activeFile=e;let t=this.currentOffset;if(e.onerror=e=>{this.ended||(this.ended=!0,this.callback(e,P,!0))},e.ondata=(n,r)=>{if(!this.ended&&(this.currentOffset+=n.length,this.callback(null,n,!1),r)){let n=e.getCentralDirectoryEntryInfo();n&&(n.offset=t,this.entries.push(n)),this._processNextFile()}},typeof e.start==`function`)try{e.start().catch(t=>{let n=o(t);try{e.onerror?.(n)}catch{}})}catch(t){let n=o(t);try{e.onerror?.(n)}catch{}}}_finalize(){if(this.ended)return;this.ended=!0;let e=this.currentOffset,t;try{let n=Ap(this.entries,{zipComment:this.zipComment,zip64Mode:this.zip64Mode,centralDirOffset:e});t=new Uint8Array(n.totalSize),jp(this.entries,{zipComment:this.zipComment,zip64Mode:this.zip64Mode,centralDirOffset:e,out:t,offset:0})}catch(e){let t=o(e);this.callback(t,P,!0);return}this.callback(null,t,!0)}end(){this.endPending||this.ended||(this.endPending=!0,this.activeFile||this._finalize())}abort(e){if(this.ended)return;let t=i(e);this.ended=!0,this.endPending=!0;try{this.activeFile?.abort(t)}catch{}this.callback(t,P,!0)}};function Ip(e){return typeof e==`object`&&`nativeCol`in e&&`nativeRow`in e&&`nativeColOff`in e&&`nativeRowOff`in e}function Lp(e){return typeof e==`object`&&`col`in e&&`row`in e}var Rp=class e{constructor(e,t,n=0){if(this.worksheet=e,!t)this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0;else if(typeof t==`string`){let e=M.decodeAddress(t);this.nativeCol=e.col+n,this.nativeColOff=0,this.nativeRow=e.row+n,this.nativeRowOff=0}else Ip(t)?(this.nativeCol=t.nativeCol??0,this.nativeColOff=t.nativeColOff??0,this.nativeRow=t.nativeRow??0,this.nativeRowOff=t.nativeRowOff??0):Lp(t)?(this.col=t.col+n,this.row=t.row+n):(this.nativeCol=0,this.nativeColOff=0,this.nativeRow=0,this.nativeRowOff=0)}static asInstance(t){return t==null?null:t instanceof e?t:new e(void 0,t)}get col(){return this.nativeColOff===0?this.nativeCol:this.nativeCol+Math.min(this.colWidth-1,this.nativeColOff)/this.colWidth}set col(e){this.nativeCol=Math.floor(e);let t=e-this.nativeCol;this.nativeColOff=t===0?0:Math.floor(t*this.colWidth)}get row(){return this.nativeRowOff===0?this.nativeRow:this.nativeRow+Math.min(this.rowHeight-1,this.nativeRowOff)/this.rowHeight}set row(e){this.nativeRow=Math.floor(e);let t=e-this.nativeRow;this.nativeRowOff=t===0?0:Math.floor(t*this.rowHeight)}get colWidth(){return this.worksheet&&this.worksheet.getColumn(this.nativeCol+1)&&this.worksheet.getColumn(this.nativeCol+1).isCustomWidth?Math.floor(this.worksheet.getColumn(this.nativeCol+1).width*1e4):64e4}get rowHeight(){let e=this.worksheet?.getRow(this.nativeRow+1)?.height;return e?Math.floor(e*1e4):18e4}get model(){return{nativeCol:this.nativeCol,nativeColOff:this.nativeColOff,nativeRow:this.nativeRow,nativeRowOff:this.nativeRowOff}}set model(e){this.nativeCol=e.nativeCol,this.nativeColOff=e.nativeColOff,this.nativeRow=e.nativeRow,this.nativeRowOff=e.nativeRowOff}clone(t){return new e(t??this.worksheet,this.model)}},zp=class{constructor(e){this.model=e||{}}add(e,t){return this.model[e]=t}find(e){let t=this.model[e];if(t!==void 0)return t;let n;for(let t of Object.keys(this.model)){if(!t.startsWith(`range:`))continue;n||=M.decodeAddress(e);let r=t.slice(6),i=M.decodeEx(r);if(!(`dimensions`in i))continue;let{tl:a,br:o}=i,s=typeof a==`string`?M.decodeAddress(a):a,c=typeof o==`string`?M.decodeAddress(o):o;if(n.row>=s.row&&n.row<=c.row&&n.col>=s.col&&n.col<=c.col)return this.model[t]}}remove(e){this.model[e]=void 0}},Bp=class extends U{get tag(){return`t`}render(e,t){e.openNode(`t`),/^\s|\n|\s$/.test(t)&&e.addAttribute(`xml:space`,`preserve`),e.writeText(Fc(t)),e.closeNode()}parseOpen(e){return e.name===`t`?(this.model=``,!0):!1}parseText(e){this.model=this.model?this.model+e:e}parseClose(){let e=this.model;return e.includes(`_x`)&&(this.model=Pc(e)),!1}},Vp=class e extends U{constructor(e){super(),this.model=e}get tag(){return`r`}get textXform(){return this._textXform||=new Bp}get fontXform(){return this._fontXform||=new nf(e.FONT_OPTIONS)}render(e,t){let n=t||this.model;e.openNode(`r`),n.font&&this.fontXform.render(e,n.font),this.textXform.render(e,n.text),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`r`:return this.model={},!0;case`t`:return this.parser=this.textXform,this.parser.parseOpen(e),!0;case`rPr`:return this.parser=this.fontXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`r`:return!1;case`t`:return this.model.text=this.parser.model,this.parser=void 0,!0;case`rPr`:return this.model.font=this.parser.model,this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}static{this.FONT_OPTIONS={tagName:`rPr`,fontNameTag:`rFont`}}},Hp=class extends U{constructor(e){super(),this.model=e||{type:`note`,note:{texts:[]},ref:``}}get tag(){return`r`}get richTextXform(){return this._richTextXform||=new Vp,this._richTextXform}render(e,t){let n=t||this.model;e.openNode(`comment`,{ref:n.ref,authorId:n.authorId??0}),e.openNode(`text`),n&&n.note&&n.note.texts&&n.note.texts.forEach(t=>{this.richTextXform.render(e,t)}),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`comment`:return this.model={type:`note`,note:{texts:[]},ref:e.attributes.ref,authorId:e.attributes.authorId==null?void 0:Number(e.attributes.authorId)},!0;case`r`:return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`comment`:return!1;case`r`:return this.model.note.texts.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}},Up=class extends U{constructor(e){super(),this._model=e||{},this.model={}}get tag(){return this._model?.tag??``}render(e,t,n){(n&&t===n[2]||n&&this.tag===`x:SizeWithCells`&&t===n[1])&&e.leafNode(this.tag)}parseOpen(e){switch(e.name){case this.tag:return this.model={},this.model[this.tag]=!0,!0;default:return!1}}parseText(){}parseClose(){return!1}},Wp=class extends U{constructor(e){super(),this._model=e||{},this.text=``}get tag(){return this._model?.tag??``}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(e){switch(e.name){case this.tag:return this.text=``,!0;default:return!1}}parseText(e){this.text=e}parseClose(){return!1}},Gp=class extends U{constructor(){super(),this.text=``}get tag(){return`x:Anchor`}getAnchorRect(e){let t=Math.floor(e.left),n=Math.floor((e.left-t)*68),r=Math.floor(e.top),i=Math.floor((e.top-r)*18),a=Math.floor(e.right),o=Math.floor((e.right-a)*68),s=Math.floor(e.bottom);return[t,n,r,i,a,o,s,Math.floor((e.bottom-s)*18)]}getDefaultRect(e){let t=e.col,n=Math.max(e.row-2,0);return[t,6,n,14,t+2,2,n+4,16]}render(e,t){let n=t.anchor?this.getAnchorRect(t.anchor):this.getDefaultRect(t.refAddress);e.leafNode(`x:Anchor`,null,n.join(`, `))}parseOpen(e){switch(e.name){case this.tag:return this.text=``,!0;default:return!1}}parseText(e){this.text=e}parseClose(){return!1}};let Kp=[`twoCells`,`oneCells`,`absolute`];var qp=class extends U{constructor(){super(),this._leafText=``,this.map={"x:Anchor":new Gp,"x:Locked":new Wp({tag:`x:Locked`}),"x:LockText":new Wp({tag:`x:LockText`}),"x:SizeWithCells":new Up({tag:`x:SizeWithCells`}),"x:MoveWithCells":new Up({tag:`x:MoveWithCells`})},this.model={anchor:[],protection:{},editAs:``}}get tag(){return`x:ClientData`}render(e,t){let{protection:n,editAs:r}=t.note;e.openNode(this.tag,{ObjectType:`Note`}),this.map[`x:MoveWithCells`].render(e,r,Kp),this.map[`x:SizeWithCells`].render(e,r,Kp),this.map[`x:Anchor`].render(e,t),this.map[`x:Locked`].render(e,n.locked),e.leafNode(`x:AutoFill`,null,`False`),this.map[`x:LockText`].render(e,n.lockText),e.leafNode(`x:Row`,null,t.refAddress.row-1),e.leafNode(`x:Column`,null,t.refAddress.col-1),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:this.reset(),this.model={anchor:[],protection:{},editAs:``};break;case`x:Row`:case`x:Column`:this._leafName=e.name,this._leafText=``;break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this._leafName?this._leafText+=e:this.parser&&this.parser.parseText(e)}parseClose(e){if(this._leafName){if(e===this._leafName){let t=parseInt(this._leafText,10);e===`x:Row`?this.model.row=t+1:e===`x:Column`&&(this.model.col=t+1),this._leafName=void 0,this._leafText=``}return!0}if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.normalizeModel(),!1;default:return!0}}normalizeModel(){let e=Object.assign({},this.map[`x:MoveWithCells`].model,this.map[`x:SizeWithCells`].model),t=Object.keys(e).length;this.model.editAs=Kp[t],this.model.anchor=this.map[`x:Anchor`].text,this.model.protection.locked=this.map[`x:Locked`].text,this.model.protection.lockText=this.map[`x:LockText`].text}},Jp=class extends U{constructor(){super(),this.model={}}get tag(){return`v:textbox`}conversionUnit(e,t,n){return`${(parseFloat(e.toString())*t).toFixed(2)}${n}`}reverseConversionUnit(e){return(e??``).split(`,`).map(e=>Number(parseFloat(this.conversionUnit(parseFloat(e),.1,``)).toFixed(2)))}render(e,t){let n={style:`mso-direction-alt:auto`};if(t&&t.note){let{inset:e}=t.note&&t.note.margins||{};Array.isArray(e)&&(e=e.map(e=>this.conversionUnit(e,10,`mm`)).join(`,`)),e&&(n.inset=e)}e.openNode(`v:textbox`,n),e.leafNode(`div`,{style:`text-align:left`}),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return this.model={inset:this.reverseConversionUnit(e.attributes.inset)},!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},Yp=class e extends U{constructor(){super(),this.map={"v:textbox":new Jp,"x:ClientData":new qp}}get tag(){return`v:shape`}render(t,n,r){t.openNode(`v:shape`,e.V_SHAPE_ATTRIBUTES(n,r??0)),t.leafNode(`v:fill`,{color2:`infoBackground [80]`}),t.leafNode(`v:shadow`,{color:`none [81]`,obscured:`t`}),t.leafNode(`v:path`,{"o:connecttype":`none`}),this.map[`v:textbox`].render(t,n),this.map[`x:ClientData`].render(t,n),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={margins:{insetmode:e.attributes[`o:insetmode`]},anchor:``,editAs:``,protection:{}};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.margins.inset=this.map[`v:textbox`].model&&this.map[`v:textbox`].model.inset,this.model.protection=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.protection,this.model.anchor=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.anchor,this.model.editAs=this.map[`x:ClientData`].model&&this.map[`x:ClientData`].model.editAs,this.map[`x:ClientData`].model&&(this.model.row=this.map[`x:ClientData`].model.row,this.model.col=this.map[`x:ClientData`].model.col),!1;default:return!0}}static{this.V_SHAPE_ATTRIBUTES=(e,t)=>({id:`_x0000_s${1025+t}`,type:`#_x0000_t202`,style:`position:absolute; margin-left:105.3pt;margin-top:10.5pt;width:97.8pt;height:59.1pt;z-index:1;visibility:hidden`,fillcolor:`infoBackground [80]`,strokecolor:`none [81]`,"o:insetmode":e.note.margins&&e.note.margins.insetmode})}},Xp=class{constructor(e,t,n){this.id=n.id,this.count=0,this._worksheet=e,this._workbook=n.workbook,this._sheetRelsWriter=t}get commentsStream(){return this._commentsStream||=this._workbook._openStream(Wu(this.id)),this._commentsStream}get vmlStream(){return this._vmlStream||=this._workbook._openStream(Ku(this.id)),this._vmlStream}_addRelationships(){let e={Type:F.Comments,Target:dd(this.id)};this._sheetRelsWriter.addRelationship(e);let t={Type:F.VmlDrawing,Target:fd(this.id)};this.vmlRelId=this._sheetRelsWriter.addRelationship(t)}_addCommentRefs(){this._workbook.commentRefs.push({commentName:`comments${this.id}`,vmlDrawing:`vmlDrawing${this.id}`})}_writeOpen(){this.commentsStream.write(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?><comments xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><authors><author>Author</author></authors><commentList>`),this.vmlStream.write(`<?xml version="1.0" encoding="UTF-8"?><xml xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:x="urn:schemas-microsoft-com:office:excel"><o:shapelayout v:ext="edit"><o:idmap v:ext="edit" data="1" /></o:shapelayout><v:shapetype id="_x0000_t202" coordsize="21600,21600" o:spt="202" path="m,l,21600r21600,l21600,xe"><v:stroke joinstyle="miter" /><v:path gradientshapeok="t" o:connecttype="rect" /></v:shapetype>`)}_writeComment(e,t){let n=new Hp,r=new Sd;n.render(r,e),this.commentsStream.write(r.xml);let i=new Yp,a=new Sd;i.render(a,e,t),this.vmlStream.write(a.xml)}_writeClose(){this.commentsStream.write(`</commentList></comments>`),this.vmlStream.write(`</xml>`)}addComments(e){e&&e.length&&(this.startedData||=(this._worksheet.comments=[],this._writeOpen(),this._addRelationships(),this._addCommentRefs(),!0),e.forEach(e=>{e.refAddress=M.decodeAddress(e.ref)}),e.forEach(e=>{this._writeComment(e,this.count),this.count+=1}))}commit(){this.count&&(this._writeClose(),this.commentsStream.end(),this.vmlStream.end())}},Zp=class extends U{get tag(){return`hyperlink`}render(e,t){t.target&&Qp(t.target)?e.leafNode(`hyperlink`,{ref:t.address,tooltip:t.tooltip,location:t.target.slice(1)}):e.leafNode(`hyperlink`,{ref:t.address,"r:id":t.rId,tooltip:t.tooltip})}parseOpen(e){if(e.name===`hyperlink`){if(this.model={address:e.attributes.ref,rId:e.attributes[`r:id`],tooltip:e.attributes.tooltip},e.attributes.location){let t=e.attributes.location;this.model.target=t.startsWith(`#`)?t:`#${t}`}return!0}return!1}parseText(){}parseClose(){return!1}};function Qp(e){return e.startsWith(`#`)}var $p=class{constructor(e){this.writer=e}push(e){this.writer.addHyperlink(e)}},em=class{constructor(e){this.id=e.id,this.count=0,this._hyperlinks=[],this._workbook=e.workbook}get stream(){return this._stream||=this._workbook._openStream(Hu(this.id)),this._stream}get length(){return this._hyperlinks.length}each(e){return this._hyperlinks.forEach(e)}get hyperlinksProxy(){return this._hyperlinksProxy||=new $p(this)}addHyperlink(e){if(Qp(e.target)){this._hyperlinks.push({address:e.address,target:e.target});return}let t={Target:e.target,Type:F.Hyperlink,TargetMode:`External`},n=this._writeRelationship(t);this._hyperlinks.push({rId:n,address:e.address})}addMedia(e){return this._writeRelationship(e)}addRelationship(e){return this._writeRelationship(e)}commit(){this.count&&(this._writeClose(),this.stream.end())}_writeOpen(){this.stream.write(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
404
|
+
<Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships">`)}_writeRelationship(e){this.count||this._writeOpen();let t=`rId${++this.count}`;return e.TargetMode?this.stream.write(`<Relationship Id="${t}" Type="${R(e.Type)}" Target="${R(e.Target)}" TargetMode="${R(e.TargetMode)}"/>`):this.stream.write(`<Relationship Id="${t}" Type="${R(e.Type)}" Target="${R(e.Target)}"/>`),t}_writeClose(){this.stream.write(`</Relationships>`)}};function tm(e){return _d(e.name&&e.extension&&e.name.endsWith(`.${e.extension}`)?e.name:`${e.name}.${e.extension}`)}function nm(e,t,n){let r=[],i=[...t],a={};for(let t of e){let e=String(t.imageId),o=n.getBookImage(t.imageId);if(!o)continue;let s=a[e];s||(s=n.nextRId(i),a[e]=s,i.push({Id:s,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,Target:tm(o)}));let c={picture:{rId:s},range:t.range};if(t.opacity!==void 0){let e=Math.max(0,Math.min(1,t.opacity));c.picture.alphaModFix=Math.round(e*1e5)}if(t.hyperlinks&&t.hyperlinks.hyperlink){let e=n.nextRId(i);c.picture.hyperlinks={tooltip:t.hyperlinks.tooltip,rId:e},i.push({Id:e,Type:F.Hyperlink,Target:t.hyperlinks.hyperlink,TargetMode:`External`})}r.push(c)}return{anchors:r,rels:i}}function rm(e){return e.filter(e=>e==null?!1:e.range?.pos===void 0?e.range?.br&&e.shape?!0:!(!e.range?.br&&!e.picture||e.range?.br&&!e.picture&&!e.shape):!!e.picture)}function im(e,t,n,r,i){let a=i(e,t)?.style?.border,o=r-t+1,s=n-e+1,c=Array(o),l=Array(o),u=Array(s),d=Array(s),f=!1;for(let o=t;o<=r;o++){let r=o-t,s=i(e,o)?.style?.border;c[r]=s?.top||a?.top,n===e?l[r]=s?.bottom||a?.bottom:l[r]=i(n,o)?.style?.border?.bottom||a?.bottom,(c[r]||l[r])&&(f=!0)}for(let o=e;o<=n;o++){let n=o-e,s=i(o,t)?.style?.border;u[n]=s?.left||a?.left,r===t?d[n]=s?.right||a?.right:d[n]=i(o,r)?.style?.border?.right||a?.right,(u[n]||d[n])&&(f=!0)}let p=a?.diagonal,m=a?.color;if(!(!f&&!p))return{topEdges:c,bottomEdges:l,leftEdges:u,rightEdges:d,diagonal:p,color:m}}function am(e,t,n,r,i,a){let{topEdges:o,bottomEdges:s,leftEdges:c,rightEdges:l,diagonal:u,color:d}=i,f=a(e,t).style;for(let i=e;i<=n;i++)for(let p=t;p<=r;p++){let m=a(i,p),h=L(f)||{},g={},_=!1;i===e&&o[p-t]&&(g.top=o[p-t],_=!0),i===n&&s[p-t]&&(g.bottom=s[p-t],_=!0),p===t&&c[i-e]&&(g.left=c[i-e],_=!0),p===r&&l[i-e]&&(g.right=l[i-e],_=!0),u&&(g.diagonal=u,_=!0),_?(d&&(g.color=d),h.border=g):delete h.border,m.style=h}}Ja();function om(e){let t=new Uint8Array(4);return t[0]=e&255,t[1]=e>>8&255,t[2]=e>>16&255,t[3]=e>>24&255,t}let sm={async hash(e,...t){return Ha(e,E(t))},async convertPasswordToHash(e,t,n,r){let i=tl(e),a=kc(n),o=await this.hash(t,a,i);for(let e=0;e<r;e++)o=await this.hash(t,o,om(e));return el(o)},randomBytes(e){return Va(e)}};async function cm(e,t){let n={sheet:!0};return t&&`spinCount`in t&&(t.spinCount=Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5),e&&(n.algorithmName=`SHA-512`,n.saltValue=el(sm.randomBytes(16)),n.spinCount=t&&`spinCount`in t?t.spinCount:1e5,n.hashValue=await sm.convertPasswordToHash(e,`SHA-512`,n.saltValue,n.spinCount)),t&&(Object.assign(n,t),!e&&`spinCount`in t&&delete n.spinCount),n}let lm=new TextEncoder;var um=class{constructor(e){this._buf=new Uint8Array(e&&e.size||16384),this._inPos=0,this._buffer=void 0}get length(){return this._inPos}get capacity(){return this._buf.length}get buffer(){return this._buf}toBuffer(){return this._buffer||=this._buf.slice(0,this._inPos),this._buffer}reset(e){e??=0,this._buffer=void 0,this._inPos=e}_grow(e){let t=this._buf.length*2;for(;t<e;)t*=2;let n=new Uint8Array(t);n.set(this._buf),this._buf=n}addText(e){this._buffer=void 0;let t=this._inPos+e.length;t>this._buf.length-4&&this._grow(t);let n=this._buf.subarray(this._inPos),r=lm.encodeInto(e,n);if(r.read<e.length){let t=e.length-r.read;this._grow(this._inPos+r.written+t*3);let n=lm.encodeInto(e.substring(r.read),this._buf.subarray(this._inPos+r.written));this._inPos+=r.written+n.written}else this._inPos+=r.written}addStringBuf(e){e.length&&(this._buffer=void 0,this.length+e.length>this.capacity&&this._grow(this.length+e.length),this._buf.set(e._buf.subarray(0,e.length),this._inPos),this._inPos+=e.length)}},dm=class extends U{get tag(){return`autoFilter`}render(e,t){if(t)if(typeof t==`string`)e.leafNode(`autoFilter`,{ref:t});else{let n=function(e){return typeof e==`string`?e:M.getAddress(e.row,e.col).address},r=n(t.from),i=n(t.to);r&&i&&e.leafNode(`autoFilter`,{ref:`${r}:${i}`})}}parseOpen(e){e.name===`autoFilter`&&(this.model=e.attributes.ref)}},fm=class extends U{createNewModel(e){return{}}parseOpen(e){return this.parser=this.parser||this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model=this.createNewModel(e),!0):!1}parseText(e){this.parser&&this.parser.parseText(e)}onParserClose(e,t){this.model[e]=t.model}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.onParserClose(e,this.parser),this.parser=void 0),!0):e!==this.tag}get tag(){return``}},pm=class extends U{get tag(){return`cfvo`}render(e,t){e.leafNode(this.tag,{type:t.type,val:t.value})}parseOpen(e){this.model={type:e.attributes.type,value:U.toFloatValue(e.attributes.val)}}parseClose(e){return e!==this.tag}},mm=class extends fm{constructor(){super(),this.map={cfvo:this.cfvoXform=new pm,color:this.colorXform=new Hd}}get tag(){return`colorScale`}render(e,t){e.openNode(this.tag),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),t.color.forEach(t=>{this.colorXform.render(e,t)}),e.closeNode()}createNewModel(e){return{cfvo:[],color:[]}}onParserClose(e,t){this.model[e].push(t.model)}},hm=class extends fm{constructor(){super(),this.map={cfvo:this.cfvoXform=new pm,color:this.colorXform=new Hd}}get tag(){return`dataBar`}render(e,t){e.openNode(this.tag),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),this.colorXform.render(e,t.color),e.closeNode()}createNewModel(){return{cfvo:[]}}onParserClose(e,t){switch(e){case`cfvo`:this.model.cfvo.push(t.model);break;case`color`:this.model.color=t.model;break}}},gm=class extends U{get tag(){return`x14:id`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},_m=class extends fm{constructor(){super(),this.map={"x14:id":this.idXform=new gm}}get tag(){return`ext`}render(e,t){e.openNode(this.tag,{uri:`{B025F937-C7B1-47D3-B67F-A62EFF666E3E}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`}),this.idXform.render(e,t.x14Id),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model.x14Id=t.model}},vm=class extends fm{constructor(){super(),this.map={ext:new _m}}get tag(){return`extLst`}render(e,t){t.x14Id&&(e.openNode(this.tag),this.map.ext.render(e,t),e.closeNode())}createNewModel(){return{}}onParserClose(e,t){Object.assign(this.model,t.model)}},ym=class extends U{get tag(){return`formula`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},bm=class extends fm{constructor(){super(),this.map={cfvo:this.cfvoXform=new pm}}get tag(){return`iconSet`}render(e,t){e.openNode(this.tag,{iconSet:U.toStringAttribute(t.iconSet,`3TrafficLights`),reverse:U.toBoolAttribute(t.reverse,!1),showValue:U.toBoolAttribute(t.showValue,!0)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),e.closeNode()}createNewModel({attributes:e}){return{iconSet:U.toStringValue(e.iconSet,`3TrafficLights`),reverse:U.toBoolValue(e.reverse),showValue:U.toBoolValue(e.showValue),cfvo:[]}}onParserClose(e,t){this.model[e].push(t.model)}};let xm={"3Triangles":!0,"3Stars":!0,"5Boxes":!0},Sm=e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];let{tl:t}=new N(e.ref);switch(e.operator){case`containsText`:return`NOT(ISERROR(SEARCH("${e.text}",${t})))`;case`containsBlanks`:return`LEN(TRIM(${t}))=0`;case`notContainsBlanks`:return`LEN(TRIM(${t}))>0`;case`containsErrors`:return`ISERROR(${t})`;case`notContainsErrors`:return`NOT(ISERROR(${t}))`;default:return}},Cm=e=>{if(e.formulae&&e.formulae[0])return e.formulae[0];let{tl:t}=new N(e.ref);switch(e.timePeriod){case`thisWeek`:return`AND(TODAY()-ROUNDDOWN(${t},0)<=WEEKDAY(TODAY())-1,ROUNDDOWN(${t},0)-TODAY()<=7-WEEKDAY(TODAY()))`;case`lastWeek`:return`AND(TODAY()-ROUNDDOWN(${t},0)>=(WEEKDAY(TODAY())),TODAY()-ROUNDDOWN(${t},0)<(WEEKDAY(TODAY())+7))`;case`nextWeek`:return`AND(ROUNDDOWN(${t},0)-TODAY()>(7-WEEKDAY(TODAY())),ROUNDDOWN(${t},0)-TODAY()<(15-WEEKDAY(TODAY())))`;case`yesterday`:return`FLOOR(${t},1)=TODAY()-1`;case`today`:return`FLOOR(${t},1)=TODAY()`;case`tomorrow`:return`FLOOR(${t},1)=TODAY()+1`;case`last7Days`:return`AND(TODAY()-FLOOR(${t},1)<=6,FLOOR(${t},1)<=TODAY())`;case`lastMonth`:return`AND(MONTH(${t})=MONTH(EDATE(TODAY(),0-1)),YEAR(${t})=YEAR(EDATE(TODAY(),0-1)))`;case`thisMonth`:return`AND(MONTH(${t})=MONTH(TODAY()),YEAR(${t})=YEAR(TODAY()))`;case`nextMonth`:return`AND(MONTH(${t})=MONTH(EDATE(TODAY(),0+1)),YEAR(${t})=YEAR(EDATE(TODAY(),0+1)))`;default:return}},wm=e=>{let{type:t,operator:n}=e;switch(t){case`containsText`:case`containsBlanks`:case`notContainsBlanks`:case`containsErrors`:case`notContainsErrors`:return{type:`containsText`,operator:t};default:return{type:t,operator:n}}};var Tm=class e extends fm{constructor(){super(),this.map={dataBar:this.databarXform=new hm,extLst:this.extLstRefXform=new vm,formula:this.formulaXform=new ym,colorScale:this.colorScaleXform=new mm,iconSet:this.iconSetXform=new bm}}get tag(){return`cfRule`}static isPrimitive(e){return!(e.type===`iconSet`&&(e.custom||xm[e.iconSet]))}render(e,t){switch(t.type){case`expression`:this.renderExpression(e,t);break;case`cellIs`:this.renderCellIs(e,t);break;case`top10`:this.renderTop10(e,t);break;case`aboveAverage`:this.renderAboveAverage(e,t);break;case`dataBar`:this.renderDataBar(e,t);break;case`colorScale`:this.renderColorScale(e,t);break;case`iconSet`:this.renderIconSet(e,t);break;case`containsText`:this.renderText(e,t);break;case`timePeriod`:this.renderTimePeriod(e,t);break}}renderExpression(e,t){e.openNode(this.tag,{type:`expression`,dxfId:t.dxfId,priority:t.priority}),this.formulaXform.render(e,t.formulae[0]),e.closeNode()}renderCellIs(e,t){e.openNode(this.tag,{type:`cellIs`,dxfId:t.dxfId,priority:t.priority,operator:t.operator}),t.formulae.forEach(t=>{this.formulaXform.render(e,t)}),e.closeNode()}renderTop10(e,t){e.leafNode(this.tag,{type:`top10`,dxfId:t.dxfId,priority:t.priority,percent:U.toBoolAttribute(t.percent,!1),bottom:U.toBoolAttribute(t.bottom,!1),rank:U.toIntValue(t.rank,10)})}renderAboveAverage(e,t){e.leafNode(this.tag,{type:`aboveAverage`,dxfId:t.dxfId,priority:t.priority,aboveAverage:U.toBoolAttribute(t.aboveAverage,!0)})}renderDataBar(e,t){e.openNode(this.tag,{type:`dataBar`,priority:t.priority}),this.databarXform.render(e,t),this.extLstRefXform.render(e,t),e.closeNode()}renderColorScale(e,t){e.openNode(this.tag,{type:`colorScale`,priority:t.priority}),this.colorScaleXform.render(e,t),e.closeNode()}renderIconSet(t,n){e.isPrimitive(n)&&(t.openNode(this.tag,{type:`iconSet`,priority:n.priority}),this.iconSetXform.render(t,n),t.closeNode())}renderText(e,t){e.openNode(this.tag,{type:t.operator,dxfId:t.dxfId,priority:t.priority,operator:U.toStringAttribute(t.operator,`containsText`)});let n=Sm(t);n&&this.formulaXform.render(e,n),e.closeNode()}renderTimePeriod(e,t){e.openNode(this.tag,{type:`timePeriod`,dxfId:t.dxfId,priority:t.priority,timePeriod:t.timePeriod});let n=Cm(t);n&&this.formulaXform.render(e,n),e.closeNode()}createNewModel({attributes:e}){return{...wm(e),dxfId:U.toIntValue(e.dxfId),priority:U.toIntValue(e.priority),timePeriod:e.timePeriod,percent:U.toBoolValue(e.percent),bottom:U.toBoolValue(e.bottom),rank:U.toIntValue(e.rank),aboveAverage:U.toBoolValue(e.aboveAverage)}}onParserClose(e,t){switch(e){case`dataBar`:case`extLst`:case`colorScale`:case`iconSet`:Object.assign(this.model,t.model);break;case`formula`:this.model.formulae=this.model.formulae??[],this.model.formulae.push(t.model);break}}},Em=class extends fm{constructor(){super(),this.map={cfRule:new Tm}}get tag(){return`conditionalFormatting`}render(e,t){t.rules.some(Tm.isPrimitive)&&(e.openNode(this.tag,{sqref:t.ref}),t.rules.forEach(n=>{Tm.isPrimitive(n)&&(n.ref=t.ref,this.map.cfRule.render(e,n))}),e.closeNode())}createNewModel({attributes:e}){return{ref:e.sqref,rules:[]}}onParserClose(e,t){this.model.rules.push(t.model)}},Dm=class extends U{constructor(){super(),this.cfXform=new Em}get tag(){return`conditionalFormatting`}reset(){this.model=[]}prepare(e,t){let n=e.reduce((e,t)=>Math.max(e,...t.rules.map(e=>e.priority??0)),1);e.forEach(e=>{e.rules.forEach(e=>{e.priority||=n++,e.style&&(e.dxfId=t.styles.addDxfStyle(e.style)),e.type===`dataBar`&&((!e.cfvo||e.cfvo.length<2)&&(e.cfvo=[{type:`min`},{type:`max`}]),e.color||={argb:`FF638EC6`})})})}render(e,t){t.forEach(t=>{this.cfXform.render(e,t)})}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`conditionalFormatting`:return this.parser=this.cfXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){return this.parser?this.parser.parseClose(e)?!0:(this.model.push(this.parser.model),this.parser=void 0,!1):!1}reconcile(e,t){e.forEach(e=>{e.rules.forEach(e=>{e.dxfId!==void 0&&(e.style=t.styles.getDxfStyle(e.dxfId),delete e.dxfId)})})}},Om=class extends U{get tag(){return`brk`}render(e,t){e.leafNode(`brk`,t)}parseOpen(e){if(e.name===`brk`){let{id:t,max:n,man:r,min:i}=e.attributes;return this.model={id:+t,max:+n,man:+r},i!==void 0&&(this.model.min=+i),!0}return!1}parseText(){}parseClose(){return!1}},km=class extends W{constructor(){super({tag:`colBreaks`,count:!0,childXform:new Om})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),e.addAttribute(this.$count,t.length),e.addAttribute(`manualBreakCount`,t.length);let{childXform:n}=this;for(let r of t)n.render(e,r);e.closeNode()}}},Am=class extends U{get tag(){return`col`}prepare(e,t){let n=t.styles.addStyleModel(e.style||{});n&&(e.styleId=n)}render(e,t){e.openNode(`col`),e.addAttribute(`min`,t.min),e.addAttribute(`max`,t.max),t.width&&e.addAttribute(`width`,t.width),t.styleId&&e.addAttribute(`style`,t.styleId),t.hidden&&e.addAttribute(`hidden`,`1`),t.bestFit&&e.addAttribute(`bestFit`,`1`),t.outlineLevel&&e.addAttribute(`outlineLevel`,t.outlineLevel),t.collapsed&&e.addAttribute(`collapsed`,`1`),e.addAttribute(`customWidth`,`1`),e.closeNode()}parseOpen(e){if(e.name===`col`){let t=this.model={min:parseInt(e.attributes.min??`0`,10),max:parseInt(e.attributes.max??`0`,10),width:e.attributes.width===void 0?void 0:parseFloat(e.attributes.width??`0`)};return e.attributes.style&&(t.styleId=parseInt(e.attributes.style,10)),Gc(e.attributes.hidden)&&(t.hidden=!0),Gc(e.attributes.bestFit)&&(t.bestFit=!0),e.attributes.outlineLevel&&(t.outlineLevel=parseInt(e.attributes.outlineLevel,10)),Gc(e.attributes.collapsed)&&(t.collapsed=!0),!0}return!1}parseText(){}parseClose(){return!1}reconcile(e,t){e.styleId!==void 0&&(e.style=t.styles.getStyleModel(e.styleId))}};function jm(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=i}function Mm(e,t,n,r){let i=t[n];i===void 0?r!==void 0&&(e[n]=r):e[n]=Gc(i)}function Nm(e){if(!e)return[];let t=[],n={};for(let[r,i]of Object.entries(e))if(i!=null)if(r.startsWith(`range:`)){let e=r.slice(6),{sqref:n,...a}=i;t.push({...a,sqref:e})}else n[r]=i;if(Object.keys(n).length===0)return t;let r=Object.entries(n).map(([e,t])=>({address:e,dataValidation:t,marked:!1})).sort((e,t)=>M.compareAddress(e.address,t.address)),i=Object.fromEntries(r.map(e=>[e.address,e])),a=(e,t,r)=>{for(let i=0;i<t;i++){let t=M.encodeAddress(e.row+i,r);if(!n[t]||!fc(n[e.address],n[t]))return!1}return!0},o=r.map(e=>{if(!e.marked){let t=M.decodeEx(e.address);if(t.dimensions)return i[t.dimensions].marked=!0,{...e.dataValidation,sqref:e.address};let r=1,o=M.encodeAddress(t.row+r,t.col);for(;n[o]&&fc(e.dataValidation,n[o]);)r++,o=M.encodeAddress(t.row+r,t.col);let s=1;for(;a(t,r,t.col+s);)s++;for(let e=0;e<r;e++)for(let n=0;n<s;n++)o=M.encodeAddress(t.row+e,t.col+n),i[o].marked=!0;if(r>1||s>1){let n=t.row+(r-1),i=t.col+(s-1);return{...e.dataValidation,sqref:`${e.address}:${M.encodeAddress(n,i)}`}}return{...e.dataValidation,sqref:e.address}}return null}).filter(Boolean);return[...t,...o]}var Pm=class extends U{get tag(){return`dataValidations`}render(e,t){let n=Nm(t);n.length&&(e.openNode(`dataValidations`,{count:n.length}),n.forEach(t=>{e.openNode(`dataValidation`),t.type!==`any`&&(e.addAttribute(`type`,t.type),t.operator&&t.type!==`list`&&t.operator!==`between`&&e.addAttribute(`operator`,t.operator),t.allowBlank&&e.addAttribute(`allowBlank`,`1`)),t.showInputMessage&&e.addAttribute(`showInputMessage`,`1`),t.promptTitle&&e.addAttribute(`promptTitle`,t.promptTitle),t.prompt&&e.addAttribute(`prompt`,t.prompt),t.showErrorMessage&&e.addAttribute(`showErrorMessage`,`1`),t.errorStyle&&e.addAttribute(`errorStyle`,t.errorStyle),t.errorTitle&&e.addAttribute(`errorTitle`,t.errorTitle),t.error&&e.addAttribute(`error`,t.error),e.addAttribute(`sqref`,t.sqref),(t.formulae??[]).forEach((n,r)=>{e.openNode(`formula${r+1}`),t.type===`date`?e.writeText(Ac(new Date(n))):e.writeText(n),e.closeNode()}),e.closeNode()}),e.closeNode())}parseOpen(e){switch(e.name){case`dataValidations`:return this.model={},!0;case`dataValidation`:{this._address=e.attributes.sqref;let t={type:e.attributes.type??`any`,formulae:[]};switch(e.attributes.type&&Mm(t,e.attributes,`allowBlank`),Mm(t,e.attributes,`showInputMessage`),Mm(t,e.attributes,`showErrorMessage`),t.type){case`any`:case`list`:case`custom`:break;default:jm(t,e.attributes,`operator`,`between`);break}return jm(t,e.attributes,`promptTitle`),jm(t,e.attributes,`prompt`),jm(t,e.attributes,`errorStyle`),jm(t,e.attributes,`errorTitle`),jm(t,e.attributes,`error`),this._dataValidation=t,!0}case`formula1`:case`formula2`:return this._formula=[],!0;default:return!1}}parseText(e){this._formula&&this._formula.push(e)}parseClose(e){switch(e){case`dataValidations`:return!1;case`dataValidation`:return(!this._dataValidation.formulae||!this._dataValidation.formulae.length)&&(delete this._dataValidation.formulae,delete this._dataValidation.operator),this._address.split(/\s+/g).forEach(e=>{e.includes(`:`)?this.model[`range:${e}`]=this._dataValidation:this.model[e]=this._dataValidation}),!0;case`formula1`:case`formula2`:{let e=this._formula.join(``);switch(this._dataValidation.type){case`whole`:case`textLength`:e=parseInt(e,10);break;case`decimal`:e=parseFloat(e);break;case`date`:e=jc(parseFloat(e));break;default:break}return this._dataValidation.formulae.push(e),this._formula=void 0,!0}default:return!0}}},Fm=class extends U{get tag(){return`drawing`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}},Im=class extends U{get tag(){return`xm:f`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},Lm=class extends fm{constructor(){super(),this.map={"xm:f":this.fExtXform=new Im}}get tag(){return`x14:cfvo`}render(e,t){e.openNode(this.tag,{type:t.type}),t.value!==void 0&&this.fExtXform.render(e,t.value),e.closeNode()}createNewModel(e){return{type:e.attributes.type}}onParserClose(e,t){switch(e){case`xm:f`:this.model.value=t.model?parseFloat(t.model):0;break}}},Rm=class extends fm{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new Lm,"x14:borderColor":this.borderColorXform=new Hd(`x14:borderColor`),"x14:negativeBorderColor":this.negativeBorderColorXform=new Hd(`x14:negativeBorderColor`),"x14:negativeFillColor":this.negativeFillColorXform=new Hd(`x14:negativeFillColor`),"x14:axisColor":this.axisColorXform=new Hd(`x14:axisColor`)}}static isExt(e){return!0}get tag(){return`x14:dataBar`}render(e,t){e.openNode(this.tag,{minLength:U.toIntAttribute(t.minLength,0,!0),maxLength:U.toIntAttribute(t.maxLength,100,!0),border:U.toBoolAttribute(t.border,!1),gradient:U.toBoolAttribute(t.gradient,!0),negativeBarColorSameAsPositive:U.toBoolAttribute(t.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:U.toBoolAttribute(t.negativeBarBorderColorSameAsPositive,!0),axisPosition:U.toAttribute(t.axisPosition,`auto`),direction:U.toAttribute(t.direction,`leftToRight`)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),this.borderColorXform.render(e,t.borderColor),this.negativeBorderColorXform.render(e,t.negativeBorderColor),this.negativeFillColorXform.render(e,t.negativeFillColor),this.axisColorXform.render(e,t.axisColor),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],minLength:U.toIntValue(e.minLength,0),maxLength:U.toIntValue(e.maxLength,100),border:U.toBoolValue(e.border,!1),gradient:U.toBoolValue(e.gradient,!0),negativeBarColorSameAsPositive:U.toBoolValue(e.negativeBarColorSameAsPositive,!0),negativeBarBorderColorSameAsPositive:U.toBoolValue(e.negativeBarBorderColorSameAsPositive,!0),axisPosition:U.toStringValue(e.axisPosition,`auto`),direction:U.toStringValue(e.direction,`leftToRight`)}}onParserClose(e,t){let[,n]=e.split(`:`);switch(n){case`cfvo`:this.model.cfvo.push(t.model);break;default:this.model[n]=t.model;break}}},zm=class extends U{get tag(){return`x14:cfIcon`}render(e,t){e.leafNode(this.tag,{iconSet:t.iconSet,iconId:t.iconId})}parseOpen({attributes:e}){this.model={iconSet:e.iconSet,iconId:U.toIntValue(e.iconId)}}parseClose(e){return e!==this.tag}},Bm=class extends fm{constructor(){super(),this.map={"x14:cfvo":this.cfvoXform=new Lm,"x14:cfIcon":this.cfIconXform=new zm}}get tag(){return`x14:iconSet`}render(e,t){e.openNode(this.tag,{iconSet:U.toStringAttribute(t.iconSet),reverse:U.toBoolAttribute(t.reverse,!1),showValue:U.toBoolAttribute(t.showValue,!0),custom:U.toBoolAttribute(t.icons,!1)}),t.cfvo.forEach(t=>{this.cfvoXform.render(e,t)}),t.icons&&t.icons.forEach((t,n)=>{t.iconId=n,this.cfIconXform.render(e,t)}),e.closeNode()}createNewModel({attributes:e}){return{cfvo:[],iconSet:U.toStringValue(e.iconSet,`3TrafficLights`),reverse:U.toBoolValue(e.reverse,!1),showValue:U.toBoolValue(e.showValue,!0)}}onParserClose(e,t){let[,n]=e.split(`:`);switch(n){case`cfvo`:this.model.cfvo.push(t.model);break;case`cfIcon`:this.model.icons||(this.model.icons=[]),this.model.icons.push(t.model);break;default:this.model[n]=t.model;break}}};function K(e){return e.toString(16).padStart(2,`0`)}function Vm(e){e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=e;return K(t[0])+K(t[1])+K(t[2])+K(t[3])+`-`+K(t[4])+K(t[5])+`-`+K(t[6])+K(t[7])+`-`+K(t[8])+K(t[9])+`-`+K(t[10])+K(t[11])+K(t[12])+K(t[13])+K(t[14])+K(t[15])}function Hm(){let e=globalThis.crypto;if(e?.randomUUID)return e.randomUUID();let t=new Uint8Array(16);if(e?.getRandomValues)return e.getRandomValues(t),Vm(t);for(let e=0;e<t.length;e++)t[e]=Math.floor(Math.random()*256);return Vm(t)}let Um={"3Triangles":!0,"3Stars":!0,"5Boxes":!0};var Wm=class e extends fm{constructor(){super(),this.map={"x14:dataBar":this.databarXform=new Rm,"x14:iconSet":this.iconSetXform=new Bm}}get tag(){return`x14:cfRule`}static isExt(e){return e.type===`dataBar`?Rm.isExt(e):!!(e.type===`iconSet`&&(e.custom||Um[e.iconSet]))}static prepareRule(t){e.isExt(t)&&!t.x14Id&&(t.x14Id=`{${Hm()}}`.toUpperCase())}prepare(t){e.prepareRule(t)}render(t,n){if(e.isExt(n))switch(n.type){case`dataBar`:this.renderDataBar(t,n);break;case`iconSet`:this.renderIconSet(t,n);break}}renderDataBar(e,t){e.openNode(this.tag,{type:`dataBar`,id:t.x14Id}),this.databarXform.render(e,t),e.closeNode()}renderIconSet(e,t){e.openNode(this.tag,{type:`iconSet`,priority:t.priority,id:t.x14Id??`{${Hm()}}`}),this.iconSetXform.render(e,t),e.closeNode()}createNewModel({attributes:e}){return{type:e.type,x14Id:e.id,priority:U.toIntValue(e.priority)}}onParserClose(e,t){Object.assign(this.model,t.model)}},Gm=class extends U{get tag(){return`xm:sqref`}render(e,t){e.leafNode(this.tag,null,t)}parseOpen(){this.model=``}parseText(e){this.model+=e}parseClose(e){return e!==this.tag}},Km=class extends fm{constructor(){super(),this.map={"xm:sqref":this.sqRef=new Gm,"x14:cfRule":this.cfRule=new Wm}}get tag(){return`x14:conditionalFormatting`}prepare(e){e.rules.forEach(e=>{this.cfRule.prepare(e)})}render(e,t){t.rules.some(Wm.isExt)&&(e.openNode(this.tag,{"xmlns:xm":`http://schemas.microsoft.com/office/excel/2006/main`}),t.rules.filter(Wm.isExt).forEach(t=>this.cfRule.render(e,t)),this.sqRef.render(e,t.ref),e.closeNode())}createNewModel(){return{rules:[]}}onParserClose(e,t){switch(e){case`xm:sqref`:this.model.ref=t.model;break;case`x14:cfRule`:this.model.rules.push(t.model);break}}},qm=class extends fm{constructor(){super(),this.map={"x14:conditionalFormatting":this.cfXform=new Km}}get tag(){return`x14:conditionalFormattings`}hasContent(e){return e.hasExtContent===void 0&&(e.hasExtContent=e.some(e=>e.rules.some(Wm.isExt))),e.hasExtContent}prepare(e){e.forEach(e=>{this.cfXform.prepare(e)})}render(e,t){this.hasContent(t)&&(e.openNode(this.tag),t.forEach(t=>this.cfXform.render(e,t)),e.closeNode())}createNewModel(){return[]}onParserClose(e,t){this.model.push(t.model)}},Jm=class extends fm{constructor(){super(),this.map={"x14:conditionalFormattings":this.conditionalFormattings=new qm}}get tag(){return`ext`}hasContent(e){return this.conditionalFormattings.hasContent(e.conditionalFormattings)}prepare(e){this.conditionalFormattings.prepare(e.conditionalFormattings)}render(e,t){e.openNode(`ext`,{uri:`{78C0D931-6437-407d-A8EE-F0AAD7539E65}`,"xmlns:x14":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`}),this.conditionalFormattings.render(e,t.conditionalFormattings),e.closeNode()}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}},Ym=class extends fm{constructor(){super(),this.map={ext:this.ext=new Jm}}get tag(){return`extLst`}prepare(e,t){this.ext.prepare(e)}hasContent(e){return this.ext.hasContent(e)}render(e,t){this.hasContent(t)&&(e.openNode(`extLst`),this.ext.render(e,t),e.closeNode())}createNewModel(){return{}}onParserClose(e,t){this.model[e]=t.model}},Xm=class extends U{get tag(){return`headerFooter`}render(e,t){if(!t)return;let n={},r=[];if(t.differentFirst&&(n.differentFirst=`1`),t.differentOddEven&&(n.differentOddEven=`1`),t.oddHeader&&typeof t.oddHeader==`string`&&r.push({name:`oddHeader`,text:t.oddHeader}),t.oddFooter&&typeof t.oddFooter==`string`&&r.push({name:`oddFooter`,text:t.oddFooter}),t.evenHeader&&typeof t.evenHeader==`string`&&r.push({name:`evenHeader`,text:t.evenHeader}),t.evenFooter&&typeof t.evenFooter==`string`&&r.push({name:`evenFooter`,text:t.evenFooter}),t.firstHeader&&typeof t.firstHeader==`string`&&r.push({name:`firstHeader`,text:t.firstHeader}),t.firstFooter&&typeof t.firstFooter==`string`&&r.push({name:`firstFooter`,text:t.firstFooter}),Object.keys(n).length>0||r.length>0){e.openNode(`headerFooter`,n);for(let t of r)e.leafNode(t.name,null,t.text);e.closeNode()}}parseOpen(e){switch(e.name){case`headerFooter`:return this.model={},e.attributes.differentFirst&&(this.model.differentFirst=parseInt(e.attributes.differentFirst,0)===1),e.attributes.differentOddEven&&(this.model.differentOddEven=parseInt(e.attributes.differentOddEven,0)===1),!0;case`oddHeader`:return this.currentNode=`oddHeader`,!0;case`oddFooter`:return this.currentNode=`oddFooter`,!0;case`evenHeader`:return this.currentNode=`evenHeader`,!0;case`evenFooter`:return this.currentNode=`evenFooter`,!0;case`firstHeader`:return this.currentNode=`firstHeader`,!0;case`firstFooter`:return this.currentNode=`firstFooter`,!0;default:return!1}}parseText(e){switch(this.currentNode){case`oddHeader`:this.model.oddHeader=(this.model.oddHeader??``)+e;break;case`oddFooter`:this.model.oddFooter=(this.model.oddFooter??``)+e;break;case`evenHeader`:this.model.evenHeader=(this.model.evenHeader??``)+e;break;case`evenFooter`:this.model.evenFooter=(this.model.evenFooter??``)+e;break;case`firstHeader`:this.model.firstHeader=(this.model.firstHeader??``)+e;break;case`firstFooter`:this.model.firstFooter=(this.model.firstFooter??``)+e;break;default:break}}parseClose(){switch(this.currentNode){case`oddHeader`:case`oddFooter`:case`evenHeader`:case`evenFooter`:case`firstHeader`:case`firstFooter`:return this.currentNode=void 0,!0;default:return!1}}};let Zm=[`numberStoredAsText`,`formula`,`formulaRange`,`unlockedFormula`,`emptyCellReference`,`listDataValidation`,`calculatedColumn`,`evalError`,`twoDigitTextYear`];var Qm=class extends U{get tag(){return`ignoredErrors`}render(e,t){if(!(!t||t.length===0)){e.openNode(`ignoredErrors`);for(let n of t){let t={sqref:n.ref};for(let e of Zm)n[e]&&(t[e]=1);e.leafNode(`ignoredError`,t)}e.closeNode()}}parseOpen(e){switch(e.name){case`ignoredErrors`:return this.model=[],!0;case`ignoredError`:{let t={ref:e.attributes.sqref??``};for(let n of Zm)(e.attributes[n]===`1`||e.attributes[n]===`true`)&&(t[n]=!0);return this.model.push(t),!0}default:return!0}}parseText(){}parseClose(e){switch(e){case`ignoredErrors`:return!1;default:return!0}}},$m=class extends U{get tag(){return`pageMargins`}render(e,t){if(t){let n={left:t.left,right:t.right,top:t.top,bottom:t.bottom,header:t.header,footer:t.footer};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={left:parseFloat(e.attributes.left||.7),right:parseFloat(e.attributes.right||.7),top:parseFloat(e.attributes.top||.75),bottom:parseFloat(e.attributes.bottom||.75),header:parseFloat(e.attributes.header||.3),footer:parseFloat(e.attributes.footer||.3)},!0;default:return!1}}parseText(){}parseClose(){return!1}};function eh(e){return e?`1`:void 0}function th(e){switch(e){case`overThenDown`:return e;default:return}}function nh(e){switch(e){case`atEnd`:case`asDisplyed`:return e;default:return}}function rh(e){switch(e){case`dash`:case`blank`:case`NA`:return e;default:return}}function ih(e){return e===void 0?void 0:parseInt(e,10)}var ah=class extends U{get tag(){return`pageSetup`}_dpiToXml(e){if(e!==void 0&&Number.isFinite(e)&&e!==4294967295)return e}render(e,t){if(t){let n={paperSize:t.paperSize,orientation:t.orientation,horizontalDpi:this._dpiToXml(t.horizontalDpi),verticalDpi:this._dpiToXml(t.verticalDpi),pageOrder:th(t.pageOrder),blackAndWhite:eh(t.blackAndWhite),draft:eh(t.draft),cellComments:nh(t.cellComments),errors:rh(t.errors),scale:t.scale===100?void 0:t.scale,fitToWidth:t.fitToWidth===1?void 0:t.fitToWidth,fitToHeight:t.fitToHeight===1?void 0:t.fitToHeight,firstPageNumber:t.firstPageNumber,useFirstPageNumber:eh(!!t.firstPageNumber),usePrinterDefaults:eh(t.usePrinterDefaults),copies:t.copies};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={paperSize:ih(e.attributes.paperSize),orientation:e.attributes.orientation??`portrait`,horizontalDpi:parseInt(e.attributes.horizontalDpi??`4294967295`,10),verticalDpi:parseInt(e.attributes.verticalDpi??`4294967295`,10),pageOrder:e.attributes.pageOrder??`downThenOver`,blackAndWhite:e.attributes.blackAndWhite===`1`,draft:e.attributes.draft===`1`,cellComments:e.attributes.cellComments??`None`,errors:e.attributes.errors??`displayed`,scale:parseInt(e.attributes.scale??`100`,10),fitToWidth:parseInt(e.attributes.fitToWidth??`1`,10),fitToHeight:parseInt(e.attributes.fitToHeight??`1`,10),firstPageNumber:parseInt(e.attributes.firstPageNumber??`1`,10),useFirstPageNumber:e.attributes.useFirstPageNumber===`1`,usePrinterDefaults:e.attributes.usePrinterDefaults===`1`,copies:parseInt(e.attributes.copies??`1`,10)},!0;default:return!1}}parseText(){}parseClose(){return!1}},oh=class extends U{get tag(){return`picture`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}},sh=class extends W{constructor(){super({tag:`rowBreaks`,count:!0,childXform:new Om})}render(e,t){if(t&&t.length){e.openNode(this.tag,this.$),e.addAttribute(this.$count,t.length),e.addAttribute(`manualBreakCount`,t.length);let{childXform:n}=this;for(let r of t)n.render(e,r);e.closeNode()}}};function ch(e){if(e==null)return 0;if(e instanceof String||typeof e==`string`)return 3;if(typeof e==`number`)return 2;if(typeof e==`boolean`)return 9;if(e instanceof Date)return 4;if(e.text&&e.hyperlink)return 5;if(e.formula)return 6;if(e.error)return 10;throw new Ar(typeof e,`Could not understand type of value`)}function lh(e){switch(e.type){case 6:return ch(e.result);default:return e.type}}function uh(e){if(e==null)return{text:``};if(typeof e==`string`)return{text:e};if(typeof e==`number`||typeof e==`boolean`)return{text:String(e)};if(typeof e==`object`){let t=e;if(Array.isArray(t.richText)){if(t.richText.length===0)return{text:``};let e=t.richText.map(e=>{let t=e,n={text:typeof t?.text==`string`?t.text:``};return t?.font!==null&&typeof t?.font==`object`&&(n.font=t.font),n});return{text:e.map(e=>e.text).join(``),richText:e}}if(typeof t.error==`string`)return{text:t.error}}return{text:String(e)}}var dh=class extends U{constructor(){super(),this.richTextXform=new Vp}get tag(){return`c`}prepare(e,t){let n=t.styles.addStyleModel(e.style||{},lh(e));switch(n&&(e.styleId=n),e.comment&&t.comments.push({...e.comment,ref:e.address}),e.type){case 3:case 8:t.sharedStrings&&(e.ssId=t.sharedStrings.add(e.value));break;case 4:t.date1904&&(e.date1904=!0);break;case 5:t.sharedStrings&&(Array.isArray(e.richText)&&e.richText.length>0?e.ssId=t.sharedStrings.add({richText:e.richText}):e.text!==void 0&&e.text!==null&&(e.ssId=t.sharedStrings.add(e.text))),t.hyperlinks.push({address:e.address,target:e.hyperlink,tooltip:e.tooltip});break;case 1:t.merges.add(e);break;case 6:if(t.date1904&&(e.date1904=!0),e.isDynamicArray&&(e.cm=1),e.hyperlink&&t.hyperlinks.push({address:e.address,target:e.hyperlink,tooltip:e.tooltip}),e.shareType===`shared`&&(e.si=t.siFormulae++),e.formula)t.formulae[e.address]=e;else if(e.sharedFormula){let n=t.formulae[e.sharedFormula];if(!n)throw new j(`Shared Formula master must exist above and or left of clone for cell ${e.address}`);n.si===void 0?(n.shareType=`shared`,n.si=t.siFormulae++,n.range=new N(n.address,e.address)):n.range&&n.range.expandToAddress(e.address),e.si=n.si}break;default:break}}renderFormula(e,t){let n=null;switch(t.shareType){case`shared`:n={t:`shared`,ref:t.ref||t.range.range,si:t.si};break;case`array`:n={t:`array`,ref:t.ref};break;default:t.si!==void 0&&(n={t:`shared`,si:t.si});break}switch(ch(t.result)){case 0:e.leafNode(`f`,n,t.formula);break;case 3:e.addAttribute(`t`,`str`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result);break;case 2:e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result);break;case 9:e.addAttribute(`t`,`b`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,+!!t.result);break;case 10:e.addAttribute(`t`,`e`),e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,t.result.error);break;case 4:e.leafNode(`f`,n,t.formula),e.leafNode(`v`,null,Ac(t.result,t.date1904));break;default:throw new Ar(String(ch(t.result)),`Could not understand type of value`)}}render(e,t){if(!(t.type===0&&!t.styleId)){switch(e.openNode(`c`),e.addAttribute(`r`,t.address),t.styleId&&e.addAttribute(`s`,t.styleId),t.cm&&e.addAttribute(`cm`,t.cm),t.type){case 0:break;case 2:e.leafNode(`v`,null,t.value);break;case 9:e.addAttribute(`t`,`b`),e.leafNode(`v`,null,t.value?`1`:`0`);break;case 12:e.addAttribute(`t`,`b`),e.leafNode(`v`,null,t.value?`1`:`0`);break;case 10:e.addAttribute(`t`,`e`),e.leafNode(`v`,null,t.value.error);break;case 3:case 8:t.ssId===void 0?t.value&&t.value.richText?(e.addAttribute(`t`,`inlineStr`),e.openNode(`is`),t.value.richText.forEach(t=>{this.richTextXform.render(e,t)}),e.closeNode(`is`)):(e.addAttribute(`t`,`str`),e.leafNode(`v`,null,t.value)):(e.addAttribute(`t`,`s`),e.leafNode(`v`,null,t.ssId));break;case 4:e.leafNode(`v`,null,Ac(t.value,t.date1904));break;case 5:t.formula||t.sharedFormula?this.renderFormula(e,t):t.ssId===void 0?Array.isArray(t.richText)&&t.richText.length>0?(e.addAttribute(`t`,`inlineStr`),e.openNode(`is`),t.richText.forEach(t=>{this.richTextXform.render(e,t)}),e.closeNode(`is`)):(e.addAttribute(`t`,`str`),e.leafNode(`v`,null,t.text)):(e.addAttribute(`t`,`s`),e.leafNode(`v`,null,t.ssId));break;case 6:this.renderFormula(e,t);break;case 1:break;default:break}e.closeNode()}}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`c`:return this.model={address:e.attributes.r},this.t=e.attributes.t,e.attributes.s&&(this.model.styleId=parseInt(e.attributes.s,10)),e.attributes.cm&&(this.model.cm=parseInt(e.attributes.cm,10)),!0;case`f`:return this.currentNode=`f`,this.model.si=e.attributes.si,this.model.shareType=e.attributes.t,this.model.ref=e.attributes.ref,!0;case`v`:return this.currentNode=`v`,!0;case`t`:return this.currentNode=`t`,!0;case`r`:return this.parser=this.richTextXform,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){if(this.parser){this.parser.parseText(e);return}switch(this.currentNode){case`f`:this.model.formula=this.model.formula?this.model.formula+e:e;break;case`v`:case`t`:this.model.value&&this.model.value.richText?this.model.value.richText.text=this.model.value.richText.text?this.model.value.richText.text+e:e:this.model.value=this.model.value?this.model.value+e:e;break;default:break}}parseClose(e){switch(e){case`c`:{let{model:e}=this;if(e.formula||e.shareType)e.type=6,e.value&&=(this.t===`str`?e.result=e.value:this.t===`b`?e.result=parseInt(e.value,10)!==0:this.t===`e`?e.result={error:e.value}:e.result=parseFloat(e.value),void 0);else if(e.value!==void 0)switch(this.t){case`s`:e.type=3,e.value=parseInt(e.value,10);break;case`str`:e.type=3;break;case`inlineStr`:e.type=3,typeof e.value==`string`&&e.value.includes(`_x`)&&(e.value=Pc(e.value));break;case`b`:e.type=9,e.value=parseInt(e.value,10)!==0;break;case`e`:e.type=10,e.value={error:e.value};break;case`d`:e.type=4,e.value=new Date(e.value);break;default:e.type=2,e.value=parseFloat(e.value);break}else e.styleId?e.type=0:e.type=1;return!1}case`f`:case`v`:case`is`:return this.currentNode=void 0,!0;case`t`:return this.parser?(this.parser.parseClose(e),!0):(this.currentNode=void 0,!0);case`r`:return this.model.value=this.model.value||{},this.model.value.richText=this.model.value.richText??[],this.model.value.richText.push(this.parser.model),this.parser=void 0,this.currentNode=void 0,!0;default:return this.parser?(this.parser.parseClose(e),!0):!1}}reconcile(e,t){let n=e.styleId!==void 0&&t.styles&&t.styles.getStyleModel(e.styleId);switch(n&&(e.style=n),e.styleId!==void 0&&(e.styleId=void 0),e.type){case 3:if(typeof e.value==`number`&&t.sharedStrings){let n=e.value;if(e.value=t.sharedStrings.getString(n),e.value===void 0)throw new j(`Invalid shared string index ${n} in cell ${e.address}: the xlsx file appears to be corrupted`)}e.value&&e.value.richText&&(e.type=8);break;case 2:n&&Wc(n.numFmt)&&(e.type=4,e.value=jc(e.value,t.date1904));break;case 6:e.result!==void 0&&typeof e.result==`number`&&n&&Wc(n.numFmt)&&(e.result=jc(e.result,t.date1904)),e.shareType===`shared`&&(e.ref?t.formulae[e.si]=e.address:(e.sharedFormula=t.formulae[e.si],delete e.shareType),delete e.si),e.cm&&(t.dynamicArrayCmIndices?t.dynamicArrayCmIndices.has(e.cm)&&(e.isDynamicArray=!0):t.hasDynamicArrayMetadata&&(e.isDynamicArray=!0)),delete e.cm;break;default:break}let r=t.hyperlinkMap[e.address];if(r){let t;e.type===6?t=e.result:(t=e.value,e.value=void 0);let n=uh(t);e.text=n.text,n.richText?e.richText=n.richText:delete e.richText,e.type=5,e.hyperlink=r}let i=t.commentsMap&&t.commentsMap[e.address];i&&(e.comment=i)}},fh=class extends U{constructor(e){super(),this.maxItems=e&&e.maxItems,this.map={c:new dh}}get tag(){return`row`}reset(){super.reset(),this.numRowsSeen=0,this.lastCellCol=0}prepare(e,t){let n=t.styles.addStyleModel(e.style);n&&(e.styleId=n);let r=this.map.c;e.cells.forEach(e=>{r.prepare(e,t)})}render(e,t,n){if(!t)return;e.openNode(`row`),e.addAttribute(`r`,t.number),t.height!=null&&t.height>0?(e.addAttribute(`ht`,t.height),t.customHeight!==!1&&e.addAttribute(`customHeight`,`1`)):t.height===0&&e.addAttribute(`ht`,1),t.hidden&&e.addAttribute(`hidden`,`1`),t.min>0&&t.max>0&&t.min<=t.max&&e.addAttribute(`spans`,`${t.min}:${t.max}`),t.styleId&&(e.addAttribute(`s`,t.styleId),e.addAttribute(`customFormat`,`1`)),t.dyDescent!==void 0&&e.addAttribute(`x14ac:dyDescent`,t.dyDescent),t.outlineLevel&&e.addAttribute(`outlineLevel`,t.outlineLevel),t.collapsed&&e.addAttribute(`collapsed`,`1`);let r=this.map.c;t.cells.forEach(t=>{r.render(e,t,n)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;if(e.name===`row`){this.numRowsSeen+=1,this.lastCellCol=0;let t=e.attributes.spans,n,r;if(t){let e=t.indexOf(`:`);n=parseInt(t,10),r=e>-1?parseInt(t.substring(e+1),10):void 0}let i=e.attributes.r?parseInt(e.attributes.r,10):this.numRowsSeen,a=this.model={number:i,min:n,max:r,cells:[]};return e.attributes.s&&(a.styleId=parseInt(e.attributes.s,10)),Gc(e.attributes.hidden)&&(a.hidden=!0),Gc(e.attributes.bestFit)&&(a.bestFit=!0),e.attributes.ht&&(a.height=parseFloat(e.attributes.ht)),Gc(e.attributes.customHeight)&&(a.customHeight=!0),e.attributes.outlineLevel&&(a.outlineLevel=parseInt(e.attributes.outlineLevel,10)),Gc(e.attributes.collapsed)&&(a.collapsed=!0),e.attributes[`x14ac:dyDescent`]!==void 0&&(a.dyDescent=parseFloat(e.attributes[`x14ac:dyDescent`])),!0}return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){let e=this.parser.model;if(e.address?this.lastCellCol=M.decodeCol(e.address):(this.lastCellCol+=1,e.address=M.encodeAddress(this.model.number,this.lastCellCol)),this.model.cells.push(e),this.maxItems&&this.model.cells.length>this.maxItems)throw new zr(`column`,this.maxItems);this.parser=void 0}return!0}return!1}reconcile(e,t){e.style=e.styleId===void 0?{}:t.styles.getStyleModel(e.styleId),e.styleId!==void 0&&(e.styleId=void 0);let n=this.map.c;e.cells.forEach(e=>{n.reconcile(e,t)})}},ph=class extends U{get tag(){return`sheetFormatPr`}render(e,t){if(t){let n={defaultRowHeight:t.defaultRowHeight,outlineLevelRow:t.outlineLevelRow||void 0,outlineLevelCol:t.outlineLevelCol||void 0,"x14ac:dyDescent":t.dyDescent!==void 0&&t.dyDescent!==0?t.dyDescent:void 0};t.defaultColWidth&&(n.defaultColWidth=t.defaultColWidth),t.customHeight&&(n.customHeight=`1`),Object.values(n).some(e=>e!==void 0)&&e.leafNode(`sheetFormatPr`,n)}}parseOpen(e){return e.name===`sheetFormatPr`?(this.model={defaultRowHeight:parseFloat(e.attributes.defaultRowHeight??`0`),dyDescent:e.attributes[`x14ac:dyDescent`]===void 0?void 0:parseFloat(e.attributes[`x14ac:dyDescent`]),outlineLevelRow:parseInt(e.attributes.outlineLevelRow??`0`,10),outlineLevelCol:parseInt(e.attributes.outlineLevelCol??`0`,10)},e.attributes.defaultColWidth&&(this.model.defaultColWidth=parseFloat(e.attributes.defaultColWidth)),e.attributes.customHeight===`1`&&(this.model.customHeight=!0),!0):!1}parseText(){}parseClose(){return!1}};let mh=e=>e!==void 0;var hh=class extends U{get tag(){return`outlinePr`}render(e,t){return t&&(mh(t.summaryBelow)||mh(t.summaryRight))?(e.leafNode(this.tag,{summaryBelow:mh(t.summaryBelow)?Number(t.summaryBelow):void 0,summaryRight:mh(t.summaryRight)?Number(t.summaryRight):void 0}),!0):!1}parseOpen(e){return e.name===this.tag?(this.model={summaryBelow:mh(e.attributes.summaryBelow)?!!Number(e.attributes.summaryBelow):void 0,summaryRight:mh(e.attributes.summaryRight)?!!Number(e.attributes.summaryRight):void 0},!0):!1}parseText(){}parseClose(){return!1}},gh=class extends U{get tag(){return`pageSetUpPr`}render(e,t){return t&&t.fitToPage?(e.leafNode(this.tag,{fitToPage:t.fitToPage?`1`:void 0}),!0):!1}parseOpen(e){return e.name===this.tag?(this.model={fitToPage:e.attributes.fitToPage===`1`},!0):!1}parseText(){}parseClose(){return!1}},_h=class extends U{constructor(){super(),this.map={tabColor:new Hd(`tabColor`),pageSetUpPr:new gh,outlinePr:new hh}}get tag(){return`sheetPr`}render(e,t){if(!t)return;let n=!!t.tabColor,r=!!(t.pageSetup&&t.pageSetup.fitToPage),i=t.outlineProperties!==void 0&&t.outlineProperties!==null&&(t.outlineProperties.summaryBelow!==void 0||t.outlineProperties.summaryRight!==void 0);(n||r||i)&&(e.openNode(`sheetPr`),this.map.tabColor.render(e,t.tabColor),this.map.pageSetUpPr.render(e,t.pageSetup),this.map.outlinePr.render(e,t.outlineProperties),e.closeNode())}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.reset(),!0):this.map[e.name]?(this.parser=this.map[e.name],this.parser.parseOpen(e),!0):!1}parseText(e){return this.parser?(this.parser.parseText(e),!0):!1}parseClose(e){return this.parser?(this.parser.parseClose(e)||(this.parser=void 0),!0):(this.map.tabColor.model||this.map.pageSetUpPr.model||this.map.outlinePr.model?(this.model={},this.map.tabColor.model&&(this.model.tabColor=this.map.tabColor.model),this.map.pageSetUpPr.model&&(this.model.pageSetup=this.map.pageSetUpPr.model),this.map.outlinePr.model&&(this.model.outlineProperties=this.map.outlinePr.model)):this.model=null,!1)}};function vh(e,t){return e?t:void 0}function yh(e,t){return e===t?!0:void 0}var bh=class extends U{get tag(){return`sheetProtection`}render(e,t){if(t){let n={sheet:vh(t.sheet,`1`),selectLockedCells:t.selectLockedCells===!1?`1`:void 0,selectUnlockedCells:t.selectUnlockedCells===!1?`1`:void 0,formatCells:vh(t.formatCells,`0`),formatColumns:vh(t.formatColumns,`0`),formatRows:vh(t.formatRows,`0`),insertColumns:vh(t.insertColumns,`0`),insertRows:vh(t.insertRows,`0`),insertHyperlinks:vh(t.insertHyperlinks,`0`),deleteColumns:vh(t.deleteColumns,`0`),deleteRows:vh(t.deleteRows,`0`),sort:vh(t.sort,`0`),autoFilter:vh(t.autoFilter,`0`),pivotTables:vh(t.pivotTables,`0`)};t.sheet&&(n.algorithmName=t.algorithmName,n.hashValue=t.hashValue,n.saltValue=t.saltValue,n.spinCount=t.spinCount,n.objects=vh(t.objects===!1,`1`),n.scenarios=vh(t.scenarios===!1,`1`)),Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={sheet:yh(e.attributes.sheet,`1`),objects:e.attributes.objects===`1`?!1:void 0,scenarios:e.attributes.scenarios===`1`?!1:void 0,selectLockedCells:e.attributes.selectLockedCells===`1`?!1:void 0,selectUnlockedCells:e.attributes.selectUnlockedCells===`1`?!1:void 0,formatCells:yh(e.attributes.formatCells,`0`),formatColumns:yh(e.attributes.formatColumns,`0`),formatRows:yh(e.attributes.formatRows,`0`),insertColumns:yh(e.attributes.insertColumns,`0`),insertRows:yh(e.attributes.insertRows,`0`),insertHyperlinks:yh(e.attributes.insertHyperlinks,`0`),deleteColumns:yh(e.attributes.deleteColumns,`0`),deleteRows:yh(e.attributes.deleteRows,`0`),sort:yh(e.attributes.sort,`0`),autoFilter:yh(e.attributes.autoFilter,`0`),pivotTables:yh(e.attributes.pivotTables,`0`)},e.attributes.algorithmName&&(this.model.algorithmName=e.attributes.algorithmName,this.model.hashValue=e.attributes.hashValue,this.model.saltValue=e.attributes.saltValue,this.model.spinCount=parseInt(e.attributes.spinCount,10)),!0;default:return!1}}parseText(){}parseClose(){return!1}};let xh={frozen:`frozen`,frozenSplit:`frozen`,split:`split`};var Sh=class extends U{get tag(){return`sheetView`}prepare(e){switch(e.state){case`frozen`:case`split`:break;default:e.state=`normal`;break}}render(e,t){let n={};t.tabSelected&&(n.tabSelected=`1`),n.workbookViewId=t.workbookViewId??0,e.openNode(`sheetView`,n);let r=function(t,n,r){r&&e.addAttribute(t,n)};r(`rightToLeft`,`1`,t.rightToLeft===!0),r(`showRuler`,`0`,t.showRuler===!1),r(`showRowColHeaders`,`0`,t.showRowColHeaders===!1),r(`showGridLines`,`0`,t.showGridLines===!1),r(`zoomScale`,t.zoomScale,t.zoomScale!==void 0&&t.zoomScale!==100),r(`zoomScaleNormal`,t.zoomScaleNormal,t.zoomScaleNormal!==void 0&&t.zoomScaleNormal!==100),r(`view`,t.style,t.style);let i,a,o,s;switch(t.state){case`frozen`:a=t.xSplit??0,o=t.ySplit??0,i=t.topLeftCell||M.getAddress(o+1,a+1).address,s=t.xSplit&&t.ySplit&&`bottomRight`||t.xSplit&&`topRight`||`bottomLeft`,e.leafNode(`pane`,{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:i,activePane:s,state:`frozen`}),e.leafNode(`selection`,{pane:s,activeCell:t.activeCell,sqref:t.activeCell});break;case`split`:t.activePane===`topLeft`&&(t.activePane=void 0),e.leafNode(`pane`,{xSplit:t.xSplit||void 0,ySplit:t.ySplit||void 0,topLeftCell:t.topLeftCell,activePane:t.activePane}),e.leafNode(`selection`,{pane:t.activePane,activeCell:t.activeCell,sqref:t.activeCell});break;case`normal`:t.activeCell&&e.leafNode(`selection`,{activeCell:t.activeCell,sqref:t.activeCell});break;default:break}e.closeNode()}parseOpen(e){switch(e.name){case`sheetView`:return this.sheetView={workbookViewId:parseInt(e.attributes.workbookViewId,10),rightToLeft:e.attributes.rightToLeft===`1`,tabSelected:e.attributes.tabSelected===`1`,showRuler:e.attributes.showRuler!==`0`,showRowColHeaders:e.attributes.showRowColHeaders!==`0`,showGridLines:e.attributes.showGridLines!==`0`,zoomScale:parseInt(e.attributes.zoomScale??`100`,10),zoomScaleNormal:parseInt(e.attributes.zoomScaleNormal??`100`,10),style:e.attributes.view},this.pane=void 0,this.selections={},!0;case`pane`:return this.pane={xSplit:parseInt(e.attributes.xSplit??`0`,10),ySplit:parseInt(e.attributes.ySplit??`0`,10),topLeftCell:e.attributes.topLeftCell,activePane:e.attributes.activePane??`topLeft`,state:e.attributes.state},!0;case`selection`:{let t=e.attributes.pane??`topLeft`;return this.selections[t]={pane:t,activeCell:e.attributes.activeCell},!0}default:return!1}}parseText(){}parseClose(e){let t,n;switch(e){case`sheetView`:return this.sheetView&&this.pane?(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,tabSelected:this.sheetView.tabSelected,state:xh[this.pane.state]??`split`,xSplit:this.pane.xSplit,ySplit:this.pane.ySplit,topLeftCell:this.pane.topLeftCell,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},this.model.state===`split`&&(t.activePane=this.pane.activePane),n=this.selections[this.pane.activePane],n&&n.activeCell&&(t.activeCell=n.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)):(t=this.model={workbookViewId:this.sheetView.workbookViewId,rightToLeft:this.sheetView.rightToLeft,tabSelected:this.sheetView.tabSelected,state:`normal`,showRuler:this.sheetView.showRuler,showRowColHeaders:this.sheetView.showRowColHeaders,showGridLines:this.sheetView.showGridLines,zoomScale:this.sheetView.zoomScale,zoomScaleNormal:this.sheetView.zoomScaleNormal},n=this.selections.topLeft,n&&n.activeCell&&(t.activeCell=n.activeCell),this.sheetView.style&&(t.style=this.sheetView.style)),!1;default:return!0}}reconcile(){}};let q=new um,J={dataValidations:new Pm,sheetProperties:new _h,sheetFormatProperties:new ph,columns:new W({tag:`cols`,count:!1,childXform:new Am}),row:new fh,hyperlinks:new W({tag:`hyperlinks`,count:!1,childXform:new Zp}),sheetViews:new W({tag:`sheetViews`,count:!1,childXform:new Sh}),sheetProtection:new bh,pageMargins:new $m,pageSeteup:new ah,autoFilter:new dm,picture:new oh,drawing:new Fm,conditionalFormattings:new Dm,extLst:new Ym,ignoredErrors:new Qm,headerFooter:new Xm,rowBreaks:new sh,colBreaks:new km};var Ch=class{constructor(e){this.id=e.id,this.name=e.name||`Sheet${this.id}`,this.state=e.state??`visible`,this._rows=[],this._columns=[],this._keys={},this._merges=[],this._merges.add=function(){},this._sheetRelsWriter=new em(e),this._sheetCommentsWriter=new Xp(this,this._sheetRelsWriter,e),this._dimensions=new N,this._rowZero=1,this._rowOffset=0,this.committed=!1,this.dataValidations=new zp,this._formulae={},this._siFormulae=0,this.conditionalFormatting=[],this.ignoredErrors=[],this.rowBreaks=[],this.colBreaks=[],this.properties=Object.assign({},{defaultRowHeight:15,outlineLevelCol:0,outlineLevelRow:0},e.properties),this.headerFooter=Object.assign({},{differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null},e.headerFooter),this.pageSetup=Object.assign({},{margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:`portrait`,horizontalDpi:4294967295,verticalDpi:4294967295,fitToPage:!!(e.pageSetup&&(e.pageSetup.fitToWidth||e.pageSetup.fitToHeight)&&!e.pageSetup.scale),pageOrder:`downThenOver`,blackAndWhite:!1,draft:!1,cellComments:`None`,errors:`displayed`,scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null},e.pageSetup),this.useSharedStrings=e.useSharedStrings??!1,this._workbook=e.workbook,this.hasComments=!1,this._views=e.views??[],this.autoFilter=e.autoFilter??null,this._media=[],this._watermark=null,this.sheetProtection=null,this._writeOpenWorksheet(),this.startedData=!1}get workbook(){return this._workbook}get stream(){return this._stream||=this._workbook._openStream(Vu(this.id)),this._stream}destroy(){throw new Pr(`destroy`,`Invalid operation for a streaming writer`)}commit(){if(!this.committed){for(let e=this._rowOffset;e<this._rows.length;e++){let t=this._rows[e];t&&this._writeRow(t)}this._rows=null,this.startedData||this._writeOpenSheetData(),this._writeCloseSheetData(),this._writeSheetProtection(),this._writeAutoFilter(),this._writeMergeCells(),this._writeHyperlinks(),this._writeConditionalFormatting(),this._writeDataValidations(),this._writePageMargins(),this._writePageSetup(),this._writeHeaderFooter(),this._writeRowBreaks(),this._writeColBreaks(),this._writeDrawing(),this._writeBackground(),this._writeLegacyData(),this._writeIgnoredErrors(),this._writeExtLst(),this._writeCloseWorksheet(),this.stream.end(),this._sheetCommentsWriter.commit(),this._sheetRelsWriter.commit(),this.committed=!0}}get dimensions(){return this._dimensions}get views(){return this._views}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce((e,t)=>{let n=t.header&&1||t.headers&&t.headers.length||0;return Math.max(e,n)},0);let t=1,n=this._columns=[];e.forEach(e=>{let r=new gc(this,t++,!1);n.push(r),r.defn=e})}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){Object.keys(this._keys).forEach(t=>e(this._keys[t],t))}getColumn(e){if(typeof e==`string`){let t=this._keys[e];if(t)return t;e=M.l2n(e)}if(e>this._columns.length){let t=this._columns.length+1;for(;t<=e;)this._columns.push(new gc(this,t++))}return this._columns[e-1]}get _nextRow(){return this._rowZero+(this._rows.length-this._rowOffset)}eachRow(e,t){let n,r;if(typeof e==`function`?(n=e,r=void 0):(n=t,r=e),r&&r.includeEmpty){let e=this._nextRow;for(let t=this._rowZero;t<e;t++)n(this.getRow(t),t)}else this._rows.forEach(e=>{e&&e.hasValues&&n(e,e.number)})}_commitRow(e){let t=!1,n=this._rows;for(;this._rowOffset<n.length&&!t;){let r=n[this._rowOffset];n[this._rowOffset]=void 0,this._rowOffset++,this._rowZero++,r&&(this._writeRow(r),t=r.number===e.number,this._rowZero=r.number+1),this._rowOffset>1024&&this._rowOffset>n.length>>1&&(n.splice(0,this._rowOffset),this._rowOffset=0)}}get lastRow(){let e=this._rows;for(let t=e.length-1;t>=this._rowOffset;t--){let n=e[t];if(n)return n}}findRow(e){let t=e-this._rowZero+this._rowOffset;return this._rows[t]}getRow(e){let t=e-this._rowZero+this._rowOffset;if(t<this._rowOffset)throw new Or(e,`this row has been committed`);let n=this._rows[t];return n||(this._rows[t]=n=new Ql(this,e)),n}addRow(e){let t=new Ql(this,this._nextRow);return this._rows[t.number-this._rowZero+this._rowOffset]=t,t.values=e,t}addRows(e){return e.map(e=>this.addRow(e))}findCell(e,t){let n=M.getAddress(e,t),r=this.findRow(n.row);return r?r.findCell(n.col):void 0}getCell(e,t){let n=M.getAddress(e,t);return this.getRow(n.row).getCellEx(n)}mergeCells(...e){let t=new N(e);this._merges.forEach(e=>{if(e.intersects(t))throw new kr});let{top:n,left:r,bottom:i,right:a}=t,o=im(n,r,i,a,(e,t)=>this.findCell(e,t)),s=this.getCell(n,r);for(let e=n;e<=i;e++)for(let t=r;t<=a;t++)(e>n||t>r)&&this.getCell(e,t).merge(s);o&&am(n,r,i,a,o,(e,t)=>this.getCell(e,t)),this._merges.push(t)}addConditionalFormatting(e){this.conditionalFormatting.push(e)}removeConditionalFormatting(e){typeof e==`number`?this.conditionalFormatting.splice(e,1):e instanceof Function?this.conditionalFormatting=this.conditionalFormatting.filter(e):this.conditionalFormatting=[]}addBackgroundImage(e){this._background={imageId:Number(e)}}getBackgroundImageId(){return this._background&&this._background.imageId}addImage(e,t){let n=this._parseImageRange(String(e),t);this._media.push(n)}getImages(){return this._media}addWatermark(e){this._media=this._media.filter(e=>e._watermarkTag!==!0);let t=e.opacity===void 0?.15:Math.max(0,Math.min(1,e.opacity));if(this._watermark={imageId:String(e.imageId),mode:e.mode??`overlay`,opacity:t,headerWidth:e.headerWidth,headerHeight:e.headerHeight,applyTo:e.applyTo},this._watermark.mode===`overlay`){let n={type:`image`,imageId:String(e.imageId),range:{tl:{nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0},br:{nativeCol:100,nativeColOff:0,nativeRow:200,nativeRowOff:0},editAs:`absolute`},_watermarkTag:!0,opacity:t};this._media.push(n)}}getWatermark(){return this._watermark}removeWatermark(){this._watermark=null,this._media=this._media.filter(e=>e._watermarkTag!==!0)}_parseImageRange(e,t){if(typeof t==`string`){let n=M.decode(t);if(`top`in n)return{type:`image`,imageId:e,range:{tl:new Rp(this,{col:n.left,row:n.top},-1).model,br:new Rp(this,{col:n.right,row:n.bottom},0).model,editAs:`oneCell`}};throw Error(`Invalid image range: "${t}". Expected a range like "A1:C3".`)}if(`pos`in t&&t.pos)return{type:`image`,imageId:e,range:{tl:{nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0},ext:t.ext,pos:t.pos},hyperlinks:t.hyperlinks};let n=t;return{type:`image`,imageId:e,range:{tl:new Rp(this,n.tl,0).model,br:n.br?new Rp(this,n.br,0).model:void 0,ext:n.ext,editAs:n.editAs},hyperlinks:n.hyperlinks}}async protect(e,t){this.sheetProtection={sheet:!0},this.sheetProtection=await cm(e,t)}unprotect(){this.sheetProtection=null}_write(e){q.reset(),q.addText(e),this.stream.write(q)}_writeSheetProperties(e,t,n){let r={outlineProperties:t&&t.outlineProperties,tabColor:t&&t.tabColor,pageSetup:n&&n.fitToPage?{fitToPage:n.fitToPage}:void 0};e.addText(J.sheetProperties.toXml(r))}_writeSheetFormatProperties(e,t){let n=t?{defaultRowHeight:t.defaultRowHeight,dyDescent:t.dyDescent,outlineLevelCol:t.outlineLevelCol,outlineLevelRow:t.outlineLevelRow}:void 0;t&&t.defaultColWidth&&(n.defaultColWidth=t.defaultColWidth),e.addText(J.sheetFormatProperties.toXml(n))}_writeOpenWorksheet(){q.reset(),q.addText(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>`),q.addText(`<worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="x14ac" xmlns:x14ac="http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac">`),this._writeSheetProperties(q,this.properties,this.pageSetup),q.addText(J.sheetViews.toXml(this.views)),this._writeSheetFormatProperties(q,this.properties),this.stream.write(q)}_writeColumns(){let e=gc.toModel(this.columns);e&&(J.columns.prepare(e,{styles:this._workbook.styles}),this.stream.write(J.columns.toXml(e)))}_writeOpenSheetData(){this._write(`<sheetData>`)}_writeRow(e){if(this.startedData||=(this._writeColumns(),this._writeOpenSheetData(),!0),e.hasValues||e.height!=null){let{model:t}=e;if(!t)return;let n={styles:this._workbook.styles,sharedStrings:this.useSharedStrings?this._workbook.sharedStrings:void 0,hyperlinks:this._sheetRelsWriter.hyperlinksProxy,merges:this._merges,formulae:this._formulae,siFormulae:this._siFormulae,comments:[]};if(J.row.prepare(t,n),this.stream.write(J.row.toXml(t)),t.cells)for(let e of t.cells)e&&e.isDynamicArray&&this._workbook.dynamicArrayCount++;n.comments.length&&(this.hasComments=!0,this._sheetCommentsWriter.addComments(n.comments))}}_writeCloseSheetData(){this._write(`</sheetData>`)}_writeMergeCells(){this._merges.length&&(q.reset(),q.addText(`<mergeCells count="${this._merges.length}">`),this._merges.forEach(e=>{q.addText(`<mergeCell ref="${e}"/>`)}),q.addText(`</mergeCells>`),this.stream.write(q))}_writeHyperlinks(){this.stream.write(J.hyperlinks.toXml(this._sheetRelsWriter._hyperlinks))}_writeConditionalFormatting(){let e={styles:this._workbook.styles};J.conditionalFormattings.prepare(this.conditionalFormatting,e);let t={conditionalFormattings:this.conditionalFormatting};J.extLst.prepare(t),this.stream.write(J.conditionalFormattings.toXml(this.conditionalFormatting))}_writeExtLst(){let e={conditionalFormattings:this.conditionalFormatting};this.stream.write(J.extLst.toXml(e))}_writeIgnoredErrors(){this.ignoredErrors.length>0&&this.stream.write(J.ignoredErrors.toXml(this.ignoredErrors))}_writeRowBreaks(){this.stream.write(J.rowBreaks.toXml(this.rowBreaks))}_writeColBreaks(){this.stream.write(J.colBreaks.toXml(this.colBreaks))}_writeDataValidations(){this.stream.write(J.dataValidations.toXml(this.dataValidations.model))}_writeSheetProtection(){this.stream.write(J.sheetProtection.toXml(this.sheetProtection))}_writePageMargins(){this.stream.write(J.pageMargins.toXml(this.pageSetup.margins))}_writePageSetup(){this.stream.write(J.pageSeteup.toXml(this.pageSetup))}_writeHeaderFooter(){this.stream.write(J.headerFooter.toXml(this.headerFooter))}_writeAutoFilter(){this.stream.write(J.autoFilter.toXml(this.autoFilter))}_writeDrawing(){if(this._media.length===0)return;for(let e of this._media)if(e._watermarkTag){let t=this._dimensions.model,n=t?Math.max(t.right??100,100):100,r=t?Math.max(t.bottom??200,200):200;e.range.br={nativeCol:n,nativeColOff:0,nativeRow:r,nativeRowOff:0}}let e=`drawing${this.id}`,t=this._sheetRelsWriter.addRelationship({Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:md(e)}),{anchors:n,rels:r}=nm(this._media,[],{getBookImage:e=>this._workbook.getImage(Number(e)),nextRId:e=>`rId${e.length+1}`});this._drawing={rId:t,name:e,anchors:n,rels:r},this.stream.write(J.drawing.toXml({rId:t}))}get drawing(){return this._drawing}_writeBackground(){if(this._background){if(this._background.imageId!==void 0){let e=this._workbook.getImage(this._background.imageId);if(!e)return;let t=this._sheetRelsWriter.addMedia({Target:_d(e.name),Type:F.Image});this._background={...this._background,rId:t}}this.stream.write(J.picture.toXml({rId:this._background.rId}))}}_writeLegacyData(){this.hasComments&&(q.reset(),q.addText(`<legacyDrawing r:id="${this._sheetCommentsWriter.vmlRelId}"/>`),this.stream.write(q))}_writeDimensions(){}_writeCloseWorksheet(){this._write(`</worksheet>`)}};function wh(e){if(typeof e!=`object`||!e)return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(wh).join(`,`)}]`;let t=Object.keys(e).sort(),n=e;return`{${t.map(e=>`${JSON.stringify(e)}:${wh(n[e])}`).join(`,`)}}`}var Th=class{constructor(){this._values=[],this._totalRefs=0,this._hash=Object.create(null)}get count(){return this._values.length}get values(){return this._values}get totalRefs(){return this._totalRefs}getString(e){return this._values[e]}add(e){let t=typeof e==`string`?`s:${e}`:`r:${wh(e.richText)}`,n=this._hash[t];return n===void 0&&(n=this._hash[t]=this._values.length,this._values.push(e)),this._totalRefs++,n}};let Eh=new TextEncoder;var Dh=class{constructor(e){this._data=e}get length(){return this.toBuffer().length}copy(e,t,n,r){let i=this.toBuffer(),a=Math.min(r,i.length-n);return e.set(i.subarray(n,n+a),t),a}toBuffer(){return this._buffer||=Eh.encode(this._data),this._buffer}},Oh=class{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,n,r){let i=this.toBuffer(),a=Math.min(r,i.length-n);return e.set(i.subarray(n,n+a),t),a}toBuffer(){return this._data.toBuffer()}},kh=class{constructor(e){this._data=e}get length(){return this._data.length}copy(e,t,n,r){let i=Math.min(r,this._data.length-n);return e.set(this._data.subarray(n,n+i),t),i}toBuffer(){return this._data}},Ah=class{constructor(e){this.size=e,this.buffer=new Uint8Array(e),this.iRead=0,this.iWrite=0}toBuffer(){return this.iRead===0&&this.iWrite===this.size?this.buffer:this.buffer.subarray(this.iRead,this.iWrite)}get length(){return this.iWrite-this.iRead}get eod(){return this.iRead===this.iWrite}get full(){return this.iWrite===this.size}read(e){if(e===0)return null;if(e===void 0||e>=this.length){let e=this.toBuffer();return this.iRead=this.iWrite,e}let t=this.buffer.subarray(this.iRead,this.iRead+e);return this.iRead+=e,t}write(e,t,n){let r=Math.min(n,this.size-this.iWrite);return e.copy(this.buffer,this.iWrite,t,r),this.iWrite+=r,r}};let jh=()=>{};var Mh=class extends D{constructor(e){super(),this._writableStreamWriter=null,this._asyncWriteQueue=Promise.resolve(),this.bufSize=e?.bufSize||1024*1024,this.buffers=[],this.batch=e?.batch??!1,this.corked=!1,this.paused=!1,this.encoding=null,this.pipes=[],this._ended=!1}get writable(){return!this._ended}toBuffer(){switch(this.buffers.length){case 0:return null;case 1:return this.buffers[0].toBuffer();default:{let e=this.buffers.reduce((e,t)=>e+t.length,0),t=new Uint8Array(e),n=0;for(let e of this.buffers){let r=e.toBuffer();t.set(r,n),n+=r.length}return t}}}_getWritableBuffer(){if(this.buffers.length){let e=this.buffers[this.buffers.length-1];if(!e.full)return e}let e=new Ah(this.bufSize);return this.buffers.push(e),e}async _pipeChunk(e){let t=this.pipes.map(t=>new Promise(n=>{t.write(e.toBuffer(),()=>n())}));await Promise.all(t)}_writeToBuffers(e){let t=0,n=e.length;for(;t<n;){let r=this._getWritableBuffer();t+=r.write(e,t,n-t)}}async write(e,t,n){typeof t==`function`&&(n=t),n||=jh;let r;if(e instanceof um||e&&e.constructor?.name===`StringBuf`)r=new Oh(e);else if(e instanceof Uint8Array)r=new kh(e);else if(ArrayBuffer.isView(e))r=new kh(new Uint8Array(e.buffer,e.byteOffset,e.byteLength));else if(e instanceof ArrayBuffer)r=new kh(new Uint8Array(e));else if(typeof e==`string`)r=new Dh(e);else throw new Ar(typeof e,`Chunk must be one of type String, Uint8Array, ArrayBuffer or StringBuf.`);if(this.pipes.length)if(this.batch)for(this._writeToBuffers(r);!this.corked&&this.buffers.length>1;){let e=this.buffers.shift();await this._pipeChunk(new kh(e.toBuffer()))}else this.corked?(this._writeToBuffers(r),queueMicrotask(()=>n())):(await this._pipeChunk(r),n());else{let e=r.toBuffer(),t=!1;!this.paused&&this.listenerCount(`data`)>0&&(this.emit(`data`,e),t=!0),this._writableStreamWriter&&(this._asyncWriteQueue=this._asyncWriteQueue.then(()=>this._writableStreamWriter.write(e)),t=!0),t||(this._writeToBuffers(r),this.emit(`readable`)),n()}return!0}cork(){this.corked=!0}_flush(){this.pipes.length&&(async()=>{for(;this.buffers.length;){let e=this.buffers.shift();await this._pipeChunk(new kh(e.toBuffer()))}})().catch(e=>this.emit(`error`,e))}uncork(){this.corked=!1,this._flush()}end(e,t,n){let r=e=>{if(e){n?.(e);return}this._ended=!0,this._flush(),this.pipes.forEach(e=>{typeof e.end==`function`&&e.end()}),this._writableStreamWriter?this._asyncWriteQueue.then(()=>this._writableStreamWriter.close()).then(()=>{this.emit(`finish`),this.emit(`close`)}).catch(e=>{this.emit(`error`,e)}):(this.emit(`finish`),this.emit(`close`))};e?this.write(e,t,r):r()}read(e){if(e){let t=[],n=e;for(;n&&this.buffers.length&&!this.buffers[0].eod;){let e=this.buffers[0],r=e.read(n);r&&(n-=r.length,t.push(r)),e.eod&&e.full&&this.buffers.shift()}return En(Nh(t))}let t=this.buffers.map(e=>e.toBuffer()).filter(Boolean);return this.buffers=[],En(Nh(t))}readString(e){let t=e??this.encoding??`utf-8`,n=this.read();return un(t).decode(n)}setEncoding(e){this.encoding=e}pause(){this.paused=!0}resume(){this.paused=!1}isPaused(){return this.paused}pipe(e){return this.pipes.push(e),!this.paused&&this.buffers.length&&this.end(),e}pipeTo(e){this._writableStreamWriter=e.getWriter()}unpipe(e){this.pipes=this.pipes.filter(t=>t!==e)}unshift(){throw new Mr(`unshift`,`Not implemented`)}wrap(){throw new Mr(`wrap`,`Not implemented`)}push(e){return e!==null&&this.write(e),!0}};function Nh(e){if(e.length===0)return new Uint8Array;if(e.length===1)return e[0];let t=e.reduce((e,t)=>e+t.length,0),n=new Uint8Array(t),r=0;for(let t of e)n.set(t,r),r+=t.length;return n}async function Ph(e,t){let n={lockStructure:t?.lockStructure??!0,lockWindows:t?.lockWindows,lockRevision:t?.lockRevision};return e&&(n.algorithmName=`SHA-512`,n.saltValue=el(sm.randomBytes(16)),n.spinCount=t?.spinCount!=null&&Number.isFinite(t.spinCount)?Math.round(Math.max(0,t.spinCount)):1e5,n.hashValue=await sm.convertPasswordToHash(e,`SHA-512`,n.saltValue,n.spinCount)),n}var Fh=class extends U{render(e,t){e.openNode(`HeadingPairs`),e.openNode(`vt:vector`,{size:2,baseType:`variant`}),e.openNode(`vt:variant`),e.leafNode(`vt:lpstr`,void 0,`Worksheets`),e.closeNode(),e.openNode(`vt:variant`),e.leafNode(`vt:i4`,void 0,t.length),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(e){return e.name===`HeadingPairs`}parseText(){}parseClose(e){return e!==`HeadingPairs`}},Ih=class extends U{render(e,t){e.openNode(`TitlesOfParts`),e.openNode(`vt:vector`,{size:t.length,baseType:`lpstr`}),t.forEach(t=>{e.leafNode(`vt:lpstr`,void 0,t.name)}),e.closeNode(),e.closeNode()}parseOpen(e){return e.name===`TitlesOfParts`}parseText(){}parseClose(e){return e!==`TitlesOfParts`}},Lh=class e extends U{constructor(){super(),this.map={Company:new G({tag:`Company`}),Manager:new G({tag:`Manager`}),HeadingPairs:new Fh,TitlesOfParts:new Ih}}render(t,n){t.openXml(z),t.openNode(`Properties`,e.PROPERTY_ATTRIBUTES),t.leafNode(`Application`,void 0,`Microsoft Excel`),t.leafNode(`DocSecurity`,void 0,`0`),t.leafNode(`ScaleCrop`,void 0,`false`),this.map.HeadingPairs.render(t,n.worksheets),this.map.TitlesOfParts.render(t,n.worksheets),this.map.Company.render(t,n.company??``),this.map.Manager.render(t,n.manager),t.leafNode(`LinksUpToDate`,void 0,`false`),t.leafNode(`SharedDoc`,void 0,`false`),t.leafNode(`HyperlinksChanged`,void 0,`false`),t.leafNode(`AppVersion`,void 0,`16.0300`),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`Properties`:return!0;default:return this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`Properties`:return this.model={worksheets:this.map.TitlesOfParts.model,company:this.map.Company.model,manager:this.map.Manager.model},!1;default:return!0}}static{this.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3,6}/,``)}}static{this.DateAttrs={"xsi:type":`dcterms:W3CDTF`}}static{this.PROPERTY_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/officeDocument/2006/extended-properties`,"xmlns:vt":`http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes`}}},Rh=class e extends U{render(t,n){t.openXml(z),t.openNode(`Types`,e.PROPERTY_ATTRIBUTES);let r={};if((n.media??[]).forEach(e=>{if(e.type===`image`){let n=e.extension;r[n]||(r[n]=!0,t.leafNode(`Default`,{Extension:n,ContentType:`image/${n}`}))}}),t.leafNode(`Default`,{Extension:`rels`,ContentType:`application/vnd.openxmlformats-package.relationships+xml`}),t.leafNode(`Default`,{Extension:`xml`,ContentType:`application/xml`}),t.leafNode(`Override`,{PartName:H(V.xlWorkbook),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml`}),n.worksheets.forEach(e=>{t.leafNode(`Override`,{PartName:H(Vu(e.fileIndex)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml`})}),(n.pivotTables??[]).length){let e=new Set;(n.pivotTables??[]).forEach(n=>{let r=n.tableNumber,i=n.cacheId;e.has(i)||(e.add(i),t.leafNode(`Override`,{PartName:H(Qu(r)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheDefinition+xml`}),(!n.isLoaded||n.cacheRecords)&&t.leafNode(`Override`,{PartName:H(ed(r)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotCacheRecords+xml`})),t.leafNode(`Override`,{PartName:H(nd(r)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.pivotTable+xml`})})}if(t.leafNode(`Override`,{PartName:H(V.xlTheme1),ContentType:`application/vnd.openxmlformats-officedocument.theme+xml`}),t.leafNode(`Override`,{PartName:H(V.xlStyles),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml`}),n.externalLinks&&n.externalLinks.length>0)for(let e of n.externalLinks)t.leafNode(`Override`,{PartName:H(ad(e.index)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.externalLink+xml`});n.hasCheckboxes&&t.leafNode(`Override`,{PartName:H(V.xlFeaturePropertyBag),ContentType:`application/vnd.ms-excel.featurepropertybag+xml`}),n.hasDynamicArrayFormulas&&t.leafNode(`Override`,{PartName:H(V.xlMetadata),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheetMetadata+xml`}),n.sharedStrings&&n.sharedStrings.count&&t.leafNode(`Override`,{PartName:H(V.xlSharedStrings),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml`}),n.tables&&n.tables.forEach(e=>{t.leafNode(`Override`,{PartName:H(Yu(e.target)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml`})}),n.drawings&&n.drawings.forEach(e=>{t.leafNode(`Override`,{PartName:H(Xu(e.name)),ContentType:`application/vnd.openxmlformats-officedocument.drawing+xml`})});let i=n.commentRefs&&n.commentRefs.length>0,a=n.formControlRefs&&n.formControlRefs.length>0,o=n.hasHeaderWatermark===!0;if((i||a||o)&&t.leafNode(`Default`,{Extension:`vml`,ContentType:`application/vnd.openxmlformats-officedocument.vmlDrawing`}),i&&n.commentRefs.forEach(({commentName:e})=>{t.leafNode(`Override`,{PartName:H(Gu(e)),ContentType:`application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml`})}),a)for(let e of n.formControlRefs)t.leafNode(`Override`,{PartName:H(vd(e)),ContentType:`application/vnd.ms-excel.controlproperties+xml`});if(n.passthroughContentTypes)for(let{partName:e,contentType:r}of n.passthroughContentTypes)t.leafNode(`Override`,{PartName:H(e),ContentType:r});t.leafNode(`Override`,{PartName:H(V.docPropsCore),ContentType:`application/vnd.openxmlformats-package.core-properties+xml`}),t.leafNode(`Override`,{PartName:H(V.docPropsApp),ContentType:`application/vnd.openxmlformats-officedocument.extended-properties+xml`}),t.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}static{this.PROPERTY_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/package/2006/content-types`}}},zh=class extends U{constructor(e){super(),this.tag=e.tag,this.attr=e.attr,this.attrs=e.attrs,this.text=[],this._format=e.format||function(e){try{return Number.isNaN(e.getTime())?``:e.toISOString()}catch{return``}},this._parse=e.parse||function(e){return new Date(e)}}render(e,t){t&&(e.openNode(this.tag),this.attrs&&e.addAttributes(this.attrs),this.attr?e.addAttribute(this.attr,this._format(t)):e.writeText(this._format(t)),e.closeNode())}parseOpen(e){e.name===this.tag&&(this.attr?this.model=this._parse(e.attributes[this.attr]):this.text=[])}parseText(e){this.attr||this.text.push(e)}parseClose(){return this.attr||(this.model=this._parse(this.text.join(``))),!1}};let Y={creator:`dc:creator`,title:`dc:title`,subject:`dc:subject`,description:`dc:description`,identifier:`dc:identifier`,language:`dc:language`,keywords:`cp:keywords`,category:`cp:category`,lastModifiedBy:`cp:lastModifiedBy`,lastPrinted:`cp:lastPrinted`,revision:`cp:revision`,version:`cp:version`,contentStatus:`cp:contentStatus`,contentType:`cp:contentType`,created:`dcterms:created`,modified:`dcterms:modified`};var Bh=class e extends U{constructor(){super(),this.map={creator:new G({tag:Y.creator}),title:new G({tag:Y.title}),subject:new G({tag:Y.subject}),description:new G({tag:Y.description}),identifier:new G({tag:Y.identifier}),language:new G({tag:Y.language}),keywords:new G({tag:Y.keywords}),category:new G({tag:Y.category}),lastModifiedBy:new G({tag:Y.lastModifiedBy}),lastPrinted:new zh({tag:Y.lastPrinted,format:e.DateFormat}),revision:new ef({tag:Y.revision}),version:new G({tag:Y.version}),contentStatus:new G({tag:Y.contentStatus}),contentType:new G({tag:Y.contentType}),created:new zh({tag:Y.created,attrs:e.DateAttrs,format:e.DateFormat}),modified:new zh({tag:Y.modified,attrs:e.DateAttrs,format:e.DateFormat})}}render(t,n){t.openXml(z),t.openNode(`cp:coreProperties`,e.CORE_PROPERTY_ATTRIBUTES);for(let e of Object.keys(Y))this.map[e].render(t,n[e]);t.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):(e.name!==`coreProperties`&&(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;if(e===`coreProperties`){this.model={};for(let e of Object.keys(Y)){let t=this.map[e].model;t!==void 0&&t!==``&&(this.model[e]=t)}return!1}return!0}static{this.DateFormat=function(e){return e.toISOString().replace(/[.]\d{3}/,``)}}static{this.DateAttrs={"xsi:type":`dcterms:W3CDTF`}}static{this.CORE_PROPERTY_ATTRIBUTES={"xmlns:cp":`http://schemas.openxmlformats.org/package/2006/metadata/core-properties`,"xmlns:dc":`http://purl.org/dc/elements/1.1/`,"xmlns:dcterms":`http://purl.org/dc/terms/`,"xmlns:dcmitype":`http://purl.org/dc/dcmitype/`,"xmlns:xsi":`http://www.w3.org/2001/XMLSchema-instance`}}},Vh=class extends U{render(e){e.openXml({version:`1.0`,encoding:`UTF-8`,standalone:`yes`}),e.openNode(`FeaturePropertyBags`,{xmlns:`http://schemas.microsoft.com/office/spreadsheetml/2022/featurepropertybag`}),e.leafNode(`bag`,{type:`Checkbox`}),e.openNode(`bag`,{type:`XFControls`}),e.leafNode(`bagId`,{k:`CellControl`},`0`),e.closeNode(),e.openNode(`bag`,{type:`XFComplement`}),e.leafNode(`bagId`,{k:`XFControls`},`1`),e.closeNode(),e.openNode(`bag`,{type:`XFComplements`,extRef:`XFComplementsMapperExtRef`}),e.openNode(`a`,{k:`MappedFeaturePropertyBags`}),e.leafNode(`bagId`,{},`2`),e.closeNode(),e.closeNode(),e.closeNode()}parseOpen(){return!1}parseText(){}parseClose(){return!1}},Hh=class extends U{parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={range:{editAs:e.attributes.editAs??`oneCell`}};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}reconcilePicture(e,t){if(e&&e.rId){let n=t.rels[e.rId];if(!n)return;let r=n.Target.match(/.*\/media\/(.+[.][a-zA-Z]{3,4})/);if(r){let n=r[1],i=t.mediaIndex[n],a=t.media[i];return a&&e.alphaModFix!==void 0?{...a,alphaModFix:e.alphaModFix}:a}}}};let Uh=9525;var Wh=class extends U{constructor(e){super(),this.tag=e.tag,this.map={},this.model={width:0,height:0}}render(e,t){e.openNode(this.tag);let n=Math.floor(t.width*Uh),r=Math.floor(t.height*Uh);e.addAttribute(`cx`,n),e.addAttribute(`cy`,r),e.closeNode()}parseOpen(e){return e.name===this.tag?(this.model={width:parseInt(e.attributes.cx??`0`,10)/Uh,height:parseInt(e.attributes.cy??`0`,10)/Uh},!0):!1}parseText(e){}parseClose(e){return!1}},Gh=class extends U{constructor(){super(),this.model={rId:``}}get tag(){return`a:blip`}render(e,t){t.alphaModFix!==void 0&&t.alphaModFix<1e5?(e.openNode(this.tag,{"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"r:embed":t.rId,cstate:`print`}),e.leafNode(`a:alphaModFix`,{amt:String(t.alphaModFix)}),e.closeNode()):e.leafNode(this.tag,{"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"r:embed":t.rId,cstate:`print`})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:embed`]},!0;case`a:alphaModFix`:return e.attributes.amt&&(this.model.alphaModFix=parseInt(e.attributes.amt,10)),!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},Kh=class extends U{constructor(){super(),this.map={"a:blip":new Gh}}get tag(){return`xdr:blipFill`}render(e,t){e.openNode(this.tag),this.map[`a:blip`].render(e,t),e.openNode(`a:stretch`),e.leafNode(`a:fillRect`),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`a:blip`].model,!1;default:return!0}}},qh=class extends U{get tag(){return`xdr:cNvPicPr`}render(e){e.openNode(this.tag),e.leafNode(`a:picLocks`,{noChangeAspect:`1`}),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},Jh=class extends U{get tag(){return`a:extLst`}render(e){e.openNode(this.tag),e.openNode(`a:ext`,{uri:`{FF2B5EF4-FFF2-40B4-BE49-F238E27FC236}`}),e.leafNode(`a16:creationId`,{"xmlns:a16":`http://schemas.microsoft.com/office/drawing/2014/main`,id:`{00000000-0008-0000-0000-000002000000}`}),e.closeNode(),e.closeNode()}parseOpen(e){switch(e.name){case this.tag:return!0;default:return!0}}parseText(){}parseClose(e){switch(e){case this.tag:return!1;default:return!0}}},Yh=class extends U{constructor(){super(),this.model={}}get tag(){return`a:hlinkClick`}render(e,t){t.hyperlinks&&t.hyperlinks.rId&&e.leafNode(this.tag,{"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"r:id":t.hyperlinks.rId,tooltip:t.hyperlinks.tooltip})}parseOpen(e){switch(e.name){case this.tag:return this.model={hyperlinks:{rId:e.attributes[`r:id`],tooltip:e.attributes.tooltip}},!0;default:return!0}}parseText(){}parseClose(){return!1}},Xh=class extends U{constructor(){super(),this.map={"a:hlinkClick":new Yh,"a:extLst":new Jh}}get tag(){return`xdr:cNvPr`}render(e,t){e.openNode(this.tag,{id:t.index,name:`Picture ${t.index}`}),this.map[`a:hlinkClick`].render(e,t),this.map[`a:extLst`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`a:hlinkClick`].model,!1;default:return!0}}},Zh=class extends U{constructor(){super(),this.map={"xdr:cNvPr":new Xh,"xdr:cNvPicPr":new qh}}get tag(){return`xdr:nvPicPr`}render(e,t){e.openNode(this.tag),this.map[`xdr:cNvPr`].render(e,t),this.map[`xdr:cNvPicPr`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model=this.map[`xdr:cNvPr`].model,!1;default:return!0}}};let Qh={tag:`xdr:spPr`,c:[{tag:`a:xfrm`,c:[{tag:`a:off`,$:{x:`0`,y:`0`}},{tag:`a:ext`,$:{cx:`0`,cy:`0`}}]},{tag:`a:prstGeom`,$:{prst:`rect`},c:[{tag:`a:avLst`}]}]};var $h=class extends U{constructor(){super(),this.map={"xdr:nvPicPr":new Zh,"xdr:blipFill":new Kh,"xdr:spPr":new Ld(Qh)}}get tag(){return`xdr:pic`}prepare(e,t){e.index=t.index+1}render(e,t){e.openNode(this.tag),this.map[`xdr:nvPicPr`].render(e,t),this.map[`xdr:blipFill`].render(e,{rId:t.rId,alphaModFix:t.alphaModFix}),this.map[`xdr:spPr`].render(e,t),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.mergeModel(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:return!0}}};let eg=9525;var tg=class extends U{constructor(){super(),this.map={},this.model={x:0,y:0}}get tag(){return`xdr:pos`}render(e,t){e.leafNode(this.tag,{x:Math.floor(t.x*eg),y:Math.floor(t.y*eg)})}parseOpen(e){return e.name===this.tag?(this.model={x:parseInt(e.attributes.x??`0`,10)/eg,y:parseInt(e.attributes.y??`0`,10)/eg},!0):!1}parseText(){}parseClose(){return!1}},ng=class extends Hh{constructor(){super(),this.map={"xdr:pos":new tg,"xdr:ext":new Wh({tag:`xdr:ext`}),"xdr:pic":new $h,"xdr:clientData":new Ld({tag:`xdr:clientData`})}}get tag(){return`xdr:absoluteAnchor`}prepare(e,t){e.picture&&this.map[`xdr:pic`].prepare(e.picture,t)}render(e,t){e.openNode(this.tag),this.map[`xdr:pos`].render(e,t.range.pos??{x:0,y:0}),this.map[`xdr:ext`].render(e,t.range.ext),t.picture&&this.map[`xdr:pic`].render(e,t.picture),this.map[`xdr:clientData`].render(e,{}),e.closeNode()}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.range.pos=this.map[`xdr:pos`].model,this.model.range.ext=this.map[`xdr:ext`].model,this.model.picture=this.map[`xdr:pic`].model,!1;default:return!0}}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}},rg=class extends U{constructor(e){super(),this.tag=e.tag,this.map={"xdr:col":new ef({tag:`xdr:col`,zero:!0}),"xdr:colOff":new ef({tag:`xdr:colOff`,zero:!0}),"xdr:row":new ef({tag:`xdr:row`,zero:!0}),"xdr:rowOff":new ef({tag:`xdr:rowOff`,zero:!0})},this.model={nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0}}render(e,t){e.openNode(this.tag),this.map[`xdr:col`].render(e,t.nativeCol),this.map[`xdr:colOff`].render(e,t.nativeColOff),this.map[`xdr:row`].render(e,t.nativeRow),this.map[`xdr:rowOff`].render(e,t.nativeRowOff),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset();break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model={nativeCol:this.map[`xdr:col`].model,nativeColOff:this.map[`xdr:colOff`].model,nativeRow:this.map[`xdr:row`].model,nativeRowOff:this.map[`xdr:rowOff`].model},!1;default:return!0}}},ig=class extends Hh{constructor(){super(),this.map={"xdr:from":new rg({tag:`xdr:from`}),"xdr:ext":new Wh({tag:`xdr:ext`}),"xdr:pic":new $h,"xdr:clientData":new Ld({tag:`xdr:clientData`})}}get tag(){return`xdr:oneCellAnchor`}prepare(e,t){this.map[`xdr:pic`].prepare(e.picture,t)}render(e,t){e.openNode(this.tag,{editAs:t.range.editAs??`oneCell`}),this.map[`xdr:from`].render(e,t.range.tl),this.map[`xdr:ext`].render(e,t.range.ext),this.map[`xdr:pic`].render(e,t.picture),this.map[`xdr:clientData`].render(e,{}),e.closeNode()}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.range.tl=this.map[`xdr:from`].model,this.model.range.ext=this.map[`xdr:ext`].model,this.model.picture=this.map[`xdr:pic`].model,!1;default:return!0}}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}},ag=class extends U{get tag(){return`xdr:sp`}render(e,t){t&&(e.openNode(this.tag,{macro:``,textlink:``}),e.openNode(`xdr:nvSpPr`),e.openNode(`xdr:cNvPr`,{id:t.cNvPrId,name:t.name,hidden:t.hidden?`1`:void 0}),e.openNode(`a:extLst`),e.openNode(`a:ext`,{uri:`{63B3BB69-23CF-44E3-9099-C40C66FF867C}`}),e.leafNode(`a14:compatExt`,{spid:t.spid,"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`},void 0),e.closeNode(),e.closeNode(),e.closeNode(),e.leafNode(`xdr:cNvSpPr`),e.closeNode(),e.openNode(`xdr:spPr`,{bwMode:`auto`}),e.openNode(`a:xfrm`),e.leafNode(`a:off`,{x:0,y:0}),e.leafNode(`a:ext`,{cx:0,cy:0}),e.closeNode(),e.openNode(`a:prstGeom`,{prst:`rect`}),e.leafNode(`a:avLst`),e.closeNode(),e.leafNode(`a:noFill`),e.openNode(`a:ln`),e.leafNode(`a:noFill`),e.closeNode(),e.openNode(`a:extLst`),e.openNode(`a:ext`,{uri:`{909E8E84-426E-40DD-AFC4-6F175D3DCCD1}`}),e.openNode(`a14:hiddenFill`,{"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`}),e.openNode(`a:solidFill`),e.leafNode(`a:srgbClr`,{val:`F0F0F0`}),e.closeNode(),e.closeNode(),e.closeNode(),e.openNode(`a:ext`,{uri:`{91240B29-F687-4F45-9708-019B960494DF}`}),e.openNode(`a14:hiddenLine`,{w:9525,"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`}),e.openNode(`a:solidFill`),e.leafNode(`a:srgbClr`,{val:`000000`}),e.closeNode(),e.leafNode(`a:miter`,{lim:8e5}),e.leafNode(`a:headEnd`),e.leafNode(`a:tailEnd`),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode(),e.openNode(`xdr:txBody`),e.leafNode(`a:bodyPr`,{vertOverflow:`clip`,wrap:`square`,lIns:18288,tIns:18288,rIns:0,bIns:18288,anchor:`ctr`,upright:1}),e.leafNode(`a:lstStyle`),e.openNode(`a:p`),e.openNode(`a:pPr`,{algn:`l`,rtl:0}),e.leafNode(`a:defRPr`,{sz:1e3}),e.closeNode(),e.openNode(`a:r`),e.openNode(`a:rPr`,{lang:`en-US`,sz:800,b:0,i:0,u:`none`,strike:`noStrike`,baseline:0}),e.openNode(`a:solidFill`),e.leafNode(`a:srgbClr`,{val:`000000`}),e.closeNode(),e.leafNode(`a:latin`,{typeface:`Tahoma`,pitchFamily:2,charset:0}),e.leafNode(`a:ea`,{typeface:`Tahoma`,pitchFamily:2,charset:0}),e.leafNode(`a:cs`,{typeface:`Tahoma`,pitchFamily:2,charset:0}),e.closeNode(),e.openNode(`a:t`),e.writeText(t.text??``),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode(),e.closeNode())}},og=class extends Hh{constructor(){super(),this.map={"xdr:from":new rg({tag:`xdr:from`}),"xdr:to":new rg({tag:`xdr:to`}),"xdr:pic":new $h,"xdr:sp":new ag,"xdr:clientData":new Ld({tag:`xdr:clientData`})}}get tag(){return`xdr:twoCellAnchor`}prepare(e,t){e.picture&&this.map[`xdr:pic`].prepare(e.picture,t)}render(e,t){let n=!!t.alternateContent;n&&(e.openNode(`mc:AlternateContent`,{"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`}),e.openNode(`mc:Choice`,{Requires:t.alternateContent?.requires,...t.alternateContent?.requires===`a14`?{"xmlns:a14":`http://schemas.microsoft.com/office/drawing/2010/main`}:{}})),e.openNode(this.tag,{editAs:t.range.editAs??`oneCell`}),this.map[`xdr:from`].render(e,t.range.tl),this.map[`xdr:to`].render(e,t.range.br),t.picture?this.map[`xdr:pic`].render(e,t.picture):t.shape&&this.map[`xdr:sp`].render(e,t.shape),this.map[`xdr:clientData`].render(e,{}),e.closeNode(),n&&(e.closeNode(),e.leafNode(`mc:Fallback`),e.closeNode())}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.range.tl=this.map[`xdr:from`].model,this.model.range.br=this.map[`xdr:to`].model,this.model.picture=this.map[`xdr:pic`].model,!1;default:return!0}}reconcile(e,t){e.medium=this.reconcilePicture(e.picture,t)}};function sg(e){let t=typeof e.range==`string`?M.decode(e.range):e.range;return t.pos===void 0?t.br?`xdr:twoCellAnchor`:`xdr:oneCellAnchor`:`xdr:absoluteAnchor`}var cg=class e extends U{constructor(){super(),this.map={"xdr:twoCellAnchor":new og,"xdr:oneCellAnchor":new ig,"xdr:absoluteAnchor":new ng},this.model={anchors:[]}}prepare(e){e.anchors.forEach((e,t)=>{e.anchorType=sg(e),this.map[e.anchorType].prepare(e,{index:t})})}get tag(){return`xdr:wsDr`}render(t,n){let r=n||this.model;t.openXml(z),t.openNode(this.tag,e.DRAWING_ATTRIBUTES),r.anchors.forEach(e=>{this.map[e.anchorType].render(t,e)}),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={anchors:[]};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.anchors.push(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:return!0}}reconcile(e,t){e.anchors.forEach(e=>{e.range?.pos===void 0?e.br?this.map[`xdr:twoCellAnchor`].reconcile(e,t):this.map[`xdr:oneCellAnchor`].reconcile(e,t):this.map[`xdr:absoluteAnchor`].reconcile(e,t)})}static{this.DRAWING_ATTRIBUTES={"xmlns:xdr":`http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing`,"xmlns:a":`http://schemas.openxmlformats.org/drawingml/2006/main`}}},lg=class extends U{constructor(){super(),this.map={r:new Vp,t:new Bp}}get tag(){return`rPh`}render(e,t){if(e.openNode(this.tag,{sb:t.sb??0,eb:t.eb??0}),t&&Object.prototype.hasOwnProperty.call(t,`richText`)&&t.richText){let{r:n}=this.map;t.richText.forEach(t=>{n.render(e,t)})}else t&&this.map.t.render(e,t.text);e.closeNode()}parseOpen(e){let{name:t}=e;return this.parser?(this.parser.parseOpen(e),!0):t===this.tag?(this.model={sb:parseInt(e.attributes.sb,10),eb:parseInt(e.attributes.eb,10)},!0):(this.parser=this.map[t],this.parser?(this.parser.parseOpen(e),!0):!1)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case`r`:{let e=this.model.richText;e||=this.model.richText=[],e.push(this.parser.model);break}case`t`:this.model.text=this.parser.model;break;default:break}this.parser=void 0}return!0}switch(e){case this.tag:return!1;default:return!0}}},ug=class extends U{constructor(e){super(),this.model=e,this.map={r:new Vp,t:new Bp,rPh:new lg}}get tag(){return`si`}render(e,t){e.openNode(this.tag),t&&typeof t==`object`&&Object.prototype.hasOwnProperty.call(t,`richText`)&&t.richText?t.richText.length?t.richText.forEach(t=>{this.map.r.render(e,t)}):this.map.t.render(e,``):t!=null&&this.map.t.render(e,t),e.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===this.tag?(this.model={},!0):(this.parser=this.map[e.name],this.parser?(this.parser.parseOpen(e),!0):!1)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser){if(!this.parser.parseClose(e)){switch(e){case`r`:{let e=this.model.richText;e||=this.model.richText=[],e.push(this.parser.model);break}case`t`:this.model=this.parser.model;break;default:break}this.parser=void 0}return!0}switch(e){case this.tag:return!1;default:return!0}}},dg=class extends U{constructor(e){super(),this.model=e||{values:[],count:0},this.hash=Object.create(null),this.rich=Object.create(null)}get sharedStringXform(){return this._sharedStringXform||=new ug}get values(){return this.model.values}get uniqueCount(){return this.model.values.length}get count(){return this.model.count}getString(e){return this.model.values[e]}add(e){return e.richText?this.addRichText(e):this.addText(e)}addText(e){let t=this.hash[e];return t===void 0&&(t=this.hash[e]=this.model.values.length,this.model.values.push(e)),this.model.count++,t}addRichText(e){let t=this.sharedStringXform.toXml(e),n=this.rich[t];return n===void 0&&(n=this.rich[t]=this.model.values.length,this.model.values.push(e)),this.model.count++,n}render(e,t){let n=t||this._values;e.openXml(z),e.openNode(`sst`,{xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,count:n.count,uniqueCount:n.values.length});let r=this.sharedStringXform;n.values.forEach(t=>{r.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`sst`:return!0;case`si`:return this.parser=this.sharedStringXform,this.parser.parseOpen(e),!0;default:throw new jr(`sharedStrings`,`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.values.push(this.parser.model),this.model.count++,this.parser=void 0),!0;switch(e){case`sst`:return!1;default:throw new jr(`sharedStrings`,`Unexpected xml node in parseClose: ${e}`)}}};let fg=new Uint8Array,pg=new TextDecoder;var mg=class{constructor(e,t){this.WorksheetWriterClass=t,this.created=e.created||new Date,this.modified=e.modified||this.created,this.creator=e.creator??`ExcelTS`,this.lastModifiedBy=e.lastModifiedBy??`ExcelTS`,this.lastPrinted=e.lastPrinted,this.useSharedStrings=e.useSharedStrings??!1,this.sharedStrings=new Th,this.styles=e.useStyles?new pf(!0):new pf.Mock(!0),this._definedNames=new $r,this._worksheets=[],this.views=[],this.zipOptions=e.zip;let n=e.zip?.zlib?.level??e.zip?.compressionOptions?.level??6;this.compressionLevel=Math.max(0,Math.min(9,n)),this.media=[],this.commentRefs=[],this.dynamicArrayCount=0,this._trueStreaming=e.trueStreaming??!1,this.zip=new Fp((e,t,n)=>{e?this.stream.emit(`error`,e):(this.stream.write(t),n&&this.stream.end())}),this.stream=this._createOutputStream(e),this.promise=Promise.resolve()}_createOutputStream(e){return e.stream?tr(e.stream):new Mh}get definedNames(){return this._definedNames}get defaultFont(){return this.styles.defaultFont}set defaultFont(e){this.styles.setDefaultFont&&this.styles.setDefaultFont(e)}_openStream(e){let t=new Mh({bufSize:this._trueStreaming?4096:65536,batch:!this._trueStreaming}),n=new Pp(e,{level:this.compressionLevel});this.zip.add(n);let r=e=>n.push(e);return t.on(`data`,r),t.once(`finish`,()=>{t.removeListener(`data`,r),n.push(fg,!0),t.emit(`zipped`)}),t}_addFile(e,t,n){let r=new Pp(t,{level:this.compressionLevel});this.zip.add(r);let i;i=n?kc(typeof e==`string`?e:pg.decode(e)):typeof e==`string`?Cn(e):e,r.push(i,!0)}_commitWorksheets(){let e=this._worksheets.map(e=>e.committed?Promise.resolve():new Promise(t=>{e.stream.once(`zipped`,()=>t()),e.commit()}));return e.length?Promise.all(e).then(()=>{}):Promise.resolve()}async commit(){await this.promise,await this._commitWorksheets(),await this.addMedia(),this.addDrawings(),await Promise.all([this.addThemes(),this.addOfficeRels(),this.addContentTypes(),this.addApp(),this.addCore(),this.addSharedStrings(),this.addStyles(),this.addFeaturePropertyBag(),this.addMetadata(),this.addWorkbookRels()]),await this.addWorkbook(),await this._finalize()}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addImage(e){let t=this.media.length,n={...e,type:`image`,name:`image${t}.${e.extension}`};return this.media.push(n),t}getImage(e){return this.media[e]}async protect(e,t){this.protection=await Ph(e,t)}unprotect(){this.protection=void 0}addWorksheet(e,t){let n=t||{},r=n.useSharedStrings===void 0?this.useSharedStrings:n.useSharedStrings;n.tabColor&&(console.trace(`tabColor option has moved to { properties: tabColor: {...} }`),n.properties={tabColor:n.tabColor,...n.properties});let i=this.nextId;e??=`sheet${i}`;let a=new this.WorksheetWriterClass({id:i,name:e,workbook:this,useSharedStrings:r,properties:n.properties,state:n.state,pageSetup:n.pageSetup,views:n.views,autoFilter:n.autoFilter,headerFooter:n.headerFooter});return this._worksheets[i]=a,a}getWorksheet(e){if(e===void 0)return this._worksheets.find(()=>!0);if(typeof e==`number`)return this._worksheets[e];if(typeof e==`string`){let t=e.toLowerCase();return this._worksheets.find(e=>e?.name?.toLowerCase()===t)}}addStyles(){return new Promise(e=>{this._addFile(this.styles.xml,V.xlStyles),e()})}addThemes(){return new Promise(e=>{this._addFile(`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
405
|
+
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <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> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <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> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <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> </a:spDef> <a:lnDef> <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> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>`,V.xlTheme1),e()})}addOfficeRels(){return new Promise(e=>{let t=new Vd().toXml([{Id:`rId1`,Type:F.OfficeDocument,Target:V.xlWorkbook},{Id:`rId2`,Type:F.CoreProperties,Target:V.docPropsCore},{Id:`rId3`,Type:F.ExtenderProperties,Target:V.docPropsApp}]);this._addFile(t,V.rootRels),e()})}addContentTypes(){return new Promise(e=>{let t=this._worksheets.filter(Boolean);t.forEach(e=>{e.fileIndex=e.id});let n=t.filter(e=>e.drawing).map(e=>e.drawing),r={worksheets:t,sharedStrings:this.sharedStrings,commentRefs:this.commentRefs,media:this.media,drawings:n,hasCheckboxes:this.styles.hasCheckboxes,hasDynamicArrayFormulas:this.dynamicArrayCount>0},i=new Rh;this._addFile(i.toXml(r),V.contentTypes),e()})}addMedia(){return Promise.all(this.media.map(async e=>{if(e.type===`image`){let t=Bu(e.name);if(e.buffer){this._addFile(e.buffer,t);return}if(e.base64){let n=e.base64.substring(e.base64.indexOf(`,`)+1);this._addFile(n,t,!0);return}if(e.filename)throw new Mr(`Loading images from filename`,`not supported in browser. Use buffer or base64.`)}throw new Rr(`Unsupported media`)}))}addDrawings(){let e=new cg,t=new Vd;for(let n of this._worksheets){if(!n?.drawing)continue;let{drawing:r}=n,i=rm(r.anchors),a={...r,anchors:i};e.prepare(a);let o=e.toXml(a);this._addFile(o,Xu(r.name));let s=t.toXml(r.rels);this._addFile(s,Zu(r.name))}}addApp(){return new Promise(e=>{let t=new Lh;this._addFile(t.toXml({worksheets:this._worksheets.filter(Boolean)}),V.docPropsApp),e()})}addCore(){return new Promise(e=>{let t=new Bh;this._addFile(t.toXml(this),V.docPropsCore),e()})}addSharedStrings(){return this.sharedStrings.count?new Promise(e=>{let t=new dg;this._addFile(t.toXml(this.sharedStrings),V.xlSharedStrings),e()}):Promise.resolve()}addFeaturePropertyBag(){if(this.styles.hasCheckboxes){let e=new Vh;this._addFile(e.toXml({}),V.xlFeaturePropertyBag)}return Promise.resolve()}addMetadata(){if(this.dynamicArrayCount<=0)return Promise.resolve();let e=new zd;return this._addFile(e.toXml({dynamicArrayCount:this.dynamicArrayCount}),V.xlMetadata),Promise.resolve()}addWorkbookRels(){let e=1,t=[{Id:`rId${e++}`,Type:F.Styles,Target:ld.workbookStyles},{Id:`rId${e++}`,Type:F.Theme,Target:ld.workbookTheme1}];return this.sharedStrings.count&&t.push({Id:`rId${e++}`,Type:F.SharedStrings,Target:ld.workbookSharedStrings}),this.styles.hasCheckboxes&&t.push({Id:`rId${e++}`,Type:F.FeaturePropertyBag,Target:ld.workbookFeaturePropertyBag}),this.dynamicArrayCount>0&&t.push({Id:`rId${e++}`,Type:F.SheetMetadata,Target:ld.workbookMetadata}),this._worksheets.forEach(n=>{n&&(n.rId=`rId${e++}`,t.push({Id:n.rId,Type:F.Worksheet,Target:Uu(n.id)}))}),new Promise(e=>{let n=new Vd;this._addFile(n.toXml(t),V.xlWorkbookRels),e()})}addWorkbook(){let e={worksheets:this._worksheets.filter(Boolean),definedNames:this._definedNames.model,views:this.views,properties:{},protection:this.protection,calcProperties:{}};return new Promise(t=>{let n=new Rd;n.prepare(e),this._addFile(n.toXml(e),V.xlWorkbook),t()})}_finalize(){return new Promise((e,t)=>{let n=()=>{this.stream.removeListener(`close`,i),this.stream.removeListener(`error`,r)},r=e=>{n(),t(e)},i=()=>{n(),e(this)};this.stream.once(`error`,r),this.stream.once(`close`,i),this.zip.end()})}},hg=class extends mg{constructor(e={}){super(e,Ch)}};let gg=9525,_g=12700,vg=142875,yg=28575,bg=276225,xg=190500;var Sg=class e{constructor(e,t,n){this.worksheet=e;let{tl:r,br:i}=this._parseRange(t),a=1025+(e.formControls?.length??0),o;n?.link&&(o=this._toAbsoluteRef(n.link)),this.model={shapeId:a,ctrlPropId:0,tl:r,br:i,link:o,checked:n?.checked?`Checked`:`Unchecked`,text:n?.text??``,noThreeD:n?.noThreeD??!0,print:n?.print??!1}}get checked(){return this.model.checked===`Checked`}set checked(e){this.model.checked=e?`Checked`:`Unchecked`}get link(){return this.model.link}set link(e){this.model.link=e?this._toAbsoluteRef(e):void 0}get text(){return this.model.text}set text(e){this.model.text=e}_toAbsoluteRef(e){if(e.includes(`$`))return e;let t=M.decodeAddress(e);return`$${M.n2l(t.col)}$${t.row}`}_parseRange(e){let t,n;if(typeof e==`string`)if(e.includes(`:`)){let r=M.decode(e);if(`top`in r)if(r.left===r.right&&r.top===r.bottom){let e=r.left-1,i=r.top-1;t={col:e,colOff:vg,row:i,rowOff:yg},n={col:e+2,colOff:bg,row:i+1,rowOff:xg}}else t={col:r.left-1,colOff:vg,row:r.top-1,rowOff:yg},n={col:r.right-1,colOff:bg,row:r.bottom-1,rowOff:xg};else t={col:r.col-1,colOff:vg,row:r.row-1,rowOff:yg},n={col:r.col+1,colOff:bg,row:r.row,rowOff:xg}}else{let r=M.decodeAddress(e);t={col:r.col-1,colOff:vg,row:r.row-1,rowOff:yg},n={col:r.col+1,colOff:bg,row:r.row,rowOff:xg}}else if(`startCol`in e)t={col:e.startCol,colOff:e.startColOff??vg,row:e.startRow,rowOff:e.startRowOff??yg},n={col:e.endCol,colOff:e.endColOff??bg,row:e.endRow,rowOff:e.endRowOff??xg};else{if(typeof e.tl==`string`){let n=M.decodeAddress(e.tl);t={col:n.col-1,colOff:vg,row:n.row-1,rowOff:yg}}else t={col:e.tl.col,colOff:e.tl.colOff??vg,row:e.tl.row,rowOff:e.tl.rowOff??yg};if(e.br)if(typeof e.br==`string`){let t=M.decodeAddress(e.br);n={col:t.col-1,colOff:bg,row:t.row-1,rowOff:xg}}else n={col:e.br.col,colOff:e.br.colOff??bg,row:e.br.row,rowOff:e.br.rowOff??xg};else n={col:t.col+2,colOff:bg,row:t.row+1,rowOff:xg}}return{tl:t,br:n}}getVmlAnchor(){return e.getVmlAnchor(this.model)}getVmlStyle(){return e.getVmlStyle(this.model)}getVmlCheckedValue(){return e.getVmlCheckedValue(this.model)}static getVmlAnchor(e){let{tl:t,br:n}=e,r=Math.round(t.colOff/gg),i=Math.round(t.rowOff/gg),a=Math.round(n.colOff/gg),o=Math.round(n.rowOff/gg);return`${t.col}, ${r}, ${t.row}, ${i}, ${n.col}, ${a}, ${n.row}, ${o}`}static getVmlStyle(e){return`position:absolute;margin-left:${Math.round(e.tl.colOff/_g)}pt;margin-top:${Math.round(e.tl.rowOff/_g)}pt;width:96pt;height:18pt;z-index:1;visibility:visible`}static getVmlCheckedValue(e){switch(e.checked){case`Checked`:return 1;case`Mixed`:return 2;default:return 0}}},Cg=class e{constructor(e,t){this.worksheet=e,t&&(this.model=t)}get model(){switch(this.type){case`background`:return{type:this.type,imageId:this.imageId??``};case`watermark`:return{type:this.type,imageId:this.imageId??``,opacity:this.opacity};case`headerImage`:return{type:this.type,imageId:this.imageId??``,headerWidth:this.headerWidth,headerHeight:this.headerHeight,applyTo:this.applyTo};case`image`:{let e=this.range;if(!e)throw new Rr(`Image has no range`);return e.pos?{type:this.type,imageId:this.imageId??``,hyperlinks:e.hyperlinks,range:{tl:{nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0},ext:e.ext,pos:e.pos}}:{type:this.type,imageId:this.imageId??``,hyperlinks:e.hyperlinks,range:{tl:e.tl.model,br:e.br?.model,ext:e.ext,editAs:e.editAs}}}default:throw new Rr(`Invalid Image Type`)}}set model({type:e,imageId:t,range:n,hyperlinks:r,opacity:i,headerWidth:a,headerHeight:o,applyTo:s}){if(this.type=e,this.imageId=t,this.opacity=i,this.headerWidth=a,this.headerHeight=o,this.applyTo=s,e===`image`)if(typeof n==`string`){let e=M.decode(n);`top`in e&&(this.range={tl:new Rp(this.worksheet,{col:e.left,row:e.top},-1),br:new Rp(this.worksheet,{col:e.right,row:e.bottom},0),editAs:`oneCell`})}else n&&`pos`in n&&n.pos?this.range={tl:new Rp(this.worksheet,null,0),ext:n.ext,hyperlinks:r||(`hyperlinks`in n?n.hyperlinks:void 0),pos:n.pos}:n&&(this.range={tl:new Rp(this.worksheet,n.tl,0),br:n.br?new Rp(this.worksheet,n.br,0):void 0,ext:n.ext,editAs:n.editAs,hyperlinks:r||(`hyperlinks`in n?n.hyperlinks:void 0)})}clone(t){let n=t??this.worksheet,r=new e(n);return r.type=this.type,r.imageId=this.imageId,r.opacity=this.opacity,r.headerWidth=this.headerWidth,r.headerHeight=this.headerHeight,r.applyTo=this.applyTo,this.range&&(r.range={tl:this.range.tl.clone(n),br:this.range.br?this.range.br.clone(n):void 0,ext:this.range.ext?{...this.range.ext}:void 0,editAs:this.range.editAs,hyperlinks:this.range.hyperlinks?{...this.range.hyperlinks}:void 0,pos:this.range.pos?{...this.range.pos}:void 0}),r}},wg=class{constructor(e){this.code=e}toString(){return`#${this.code}`}};let Tg={sum:`Sum`,count:`Count`,average:`Average`,max:`Max`,min:`Min`,product:`Product`,countNums:`Count Numbers`,stdDev:`StdDev`,stdDevP:`StdDevP`,var:`Var`,varP:`VarP`},Eg=new Set(Object.keys(Tg));function Dg(e){let t=e.model;if(t.headerRow===!1)throw new Ir(`Cannot create pivot table from a table without headers. Set headerRow: true on the table.`);if(!t.rows||t.rows.length===0)throw new Ir(`Cannot create pivot table from an empty table. Add data rows to the table.`);let n=t.columns.map(e=>e.name),r=new Set;for(let e of n){if(r.has(e))throw new Ir(`Duplicate column name "${e}" found in table. Pivot tables require unique column names.`);r.add(e)}let i=[void 0,...n],a=t.rows.map(e=>[void 0,...e]),o=t.tl;if(!o)throw Error(`Table "${t.name}" is missing top-left cell address (tl)`);let s=o.row,c=o.col,l=s+t.rows.length,u=c+n.length-1,d=M.encode(s,c,l,u);return{name:e.worksheet.name,tableName:t.name,getRow(e){if(e===1)return{values:i};let t=e-2;return t>=0&&t<a.length?{values:a[t]}:{values:[]}},getColumn(e){if(e<1||e>n.length)return{values:[]};let r=[];r[1]=n[e-1];for(let n=0;n<t.rows.length;n++)r[n+2]=t.rows[n][e-1];return{values:r}},getSheetValues(){let e=[];e[1]=i;for(let t=0;t<a.length;t++)e[t+2]=a[t];return e},dimensions:{shortRange:d}}}function Og(e){if(e.sourceSheet&&e.sourceTable)throw new Ir(`Cannot specify both sourceSheet and sourceTable. Choose one.`);if(e.sourceTable)return Dg(e.sourceTable);if(!e.sourceSheet)throw Error(`Either sourceSheet or sourceTable must be provided.`);return e.sourceSheet}function kg(e){return typeof e==`string`?e:e.name}function Ag(e){return typeof e==`string`?void 0:e.metric}function jg(e,t){let n=Og(t);Mg(t,n);let{rows:r}=t,i=t.columns??[],a=t.pages??[],o=t.values.map(kg),s=t.metric??`sum`,c=t.values.map(e=>Ag(e)??s),l=Pg(n,[...r,...i,...a],o),u={};for(let e=0;e<l.length;e++)u[l[e].name]=e;let d=(e,t)=>{let n=u[e];if(n===void 0)throw Error(`${t} field "${e}" not found in cache fields`);return n},f=r.map(e=>d(e,`Row`)),p=i.map(e=>d(e,`Column`)),m=o.map(e=>d(e,`Value`)),h=a.map(e=>d(e,`Page`)),g=e.workbook.pivotTables.map(e=>e.tableNumber).filter(e=>Number.isFinite(e)),_=g.length>0?g.reduce((e,t)=>e>t?e:t,-1/0)+1:1,v=e.workbook.pivotTables.map(e=>parseInt(e.cacheId,10)).filter(e=>Number.isFinite(e)),y=v.length>0?v.reduce((e,t)=>e>t?e:t,-1/0)+1:10+_-1;return{source:n,rows:f,columns:p,values:m,pages:h,metric:s,valueMetrics:c,cacheFields:l,cacheId:String(y),applyWidthHeightFormats:t.applyWidthHeightFormats??`1`,tableNumber:_}}function Mg(e,t){let n=e.columns??[],r=e.pages??[],i=e.values.map(kg),a=t.getRow(1).values.slice(1);for(let e=0;e<a.length;e++){let n=a[e];if(n==null||n===``||typeof n==`string`&&n.trim()===``)throw Error(`Empty or missing header name at column ${e+1} in ${t.name}. Pivot tables require all columns to have non-empty headers.`)}let o=new Set;for(let e of a){let n=String(e);if(o.has(n))throw Error(`Duplicate header name "${n}" found in ${t.name}. Pivot tables require unique column names.`);o.add(n)}let s=new Set(a.map(String)),c=e=>{if(!s.has(e))throw new Ir(`The header name "${e}" was not found in ${t.name}.`)};for(let t of e.rows)c(t);for(let e of n)c(e);for(let e of i)c(e);for(let e of r)c(e);let l=new Map,u=[{name:`rows`,fields:e.rows},{name:`columns`,fields:n},{name:`pages`,fields:r}];for(let e of u)for(let t of e.fields){let n=l.get(t);if(n===e.name)throw Error(`Duplicate field "${t}" in ${e.name}. Each field can only appear once per axis area.`);if(n)throw Error(`Field "${t}" cannot appear in both ${n} and ${e.name}. Each field can only be assigned to one axis area.`);l.set(t,e.name)}if(!e.rows.length)throw new Ir(`No pivot table rows specified.`);if(e.values.length<1)throw new Ir(`Must have at least one value.`);if(e.metric!==void 0&&!Eg.has(e.metric))throw Error(`Invalid metric "${e.metric}". Must be one of: ${[...Eg].join(`, `)}.`);for(let t of e.values){let e=Ag(t);if(e!==void 0&&!Eg.has(e))throw Error(`Invalid metric "${e}" on value field "${kg(t)}". Must be one of: ${[...Eg].join(`, `)}.`)}let d=new Set;for(let e of i){if(d.has(e))throw Error(`Duplicate value field "${e}". Each value field name must be unique.`);d.add(e)}}function Ng(e){if(e==null)return null;if(typeof e!=`object`||e instanceof Date||e instanceof wg)return e;let t=e;if(typeof t.error==`string`){let e=t.error;return new wg(e.startsWith(`#`)?e.slice(1):e)}if(`formula`in t||`sharedFormula`in t){let e=t.result;return e==null?null:Ng(e)}return Array.isArray(t.richText)?t.richText.map(e=>e.text??``).join(``):typeof t.text==`string`&&typeof t.hyperlink==`string`?t.text:typeof t.checkbox==`boolean`?t.checkbox:String(e)}function Pg(e,t,n){let r=e.getRow(1).values,i=new Set(t),a=new Set(n),o=t=>{let n=e.getColumn(t).values,r=new Set,i=new Map,a=!1;for(let e=2;e<n.length;e++){let t=Ng(n[e]);t===null||typeof t==`number`&&isNaN(t)?a=!0:t instanceof wg?i.has(t.code)||(i.set(t.code,t),r.add(t)):r.add(t)}let o=qc(r);return a&&o.push(null),o},s=t=>{let n=e.getColumn(t).values,r=1/0,i=-1/0,a=!1,o=!0;for(let e=2;e<n.length;e++){let t=Ng(n[e]);typeof t==`number`&&!isNaN(t)&&(a=!0,t<r&&(r=t),t>i&&(i=t),Number.isInteger(t)||(o=!1))}return a?{minValue:r,maxValue:i,allInteger:o}:null},c=[];for(let e of Kc(1,r.length)){let t=r[e],n=String(t);if(i.has(n))c.push({name:n,sharedItems:o(e)});else if(a.has(n)){let t=s(e);c.push({name:n,sharedItems:null,containsNumber:t?`1`:void 0,minValue:t?.minValue,maxValue:t?.maxValue,containsInteger:t?.allInteger?`1`:void 0})}else c.push({name:n,sharedItems:null})}return c}let Fg=/^[A-Za-z]{1,3}\d+$/,Ig=/^[Rr]\d+[Cc]\d+$/,Lg=new Set([`C`,`c`,`R`,`r`]),Rg=/\s/g,zg=/[^\p{L}\p{N}_.]/gu,Bg=/^[\p{L}_\\]/u;function Vg(e){let t=e.replace(Rg,`_`),n=!1;return t.startsWith(`\\`)&&(n=!0,t=t.slice(1)),t=t.replace(zg,``),n&&(t=`\\${t}`),t.length>0&&!Bg.test(t)&&(t=`_${t}`),t.length===0?`_Table`:(t.length===1&&Lg.has(t)&&(t=`_${t}`),(Fg.test(t)||Ig.test(t))&&(t=`_${t}`),t.length>255&&(t=t.slice(0,255)),t)}var Hg=class{constructor(e,t,n){this.table=e,this.column=t,this.index=n}_set(e,t){this.table.cacheState(),this.column[e]=t}get name(){return this.column.name}set name(e){this._set(`name`,e)}get filterButton(){return this.column.filterButton}set filterButton(e){this.column.filterButton=e}get style(){return this.column.style}set style(e){this.column.style=e}get totalsRowLabel(){return this.column.totalsRowLabel}set totalsRowLabel(e){this._set(`totalsRowLabel`,e)}get totalsRowFunction(){return this.column.totalsRowFunction}set totalsRowFunction(e){this._set(`totalsRowFunction`,e)}get totalsRowResult(){return this.column.totalsRowResult}set totalsRowResult(e){this._set(`totalsRowResult`,e)}get totalsRowFormula(){return this.column.totalsRowFormula}set totalsRowFormula(e){this._set(`totalsRowFormula`,e)}},Ug=class e{constructor(e,t){if(this.worksheet=e,t){if(this.table=t,Array.isArray(t.rows)&&t.rows.length===0&&t.tableRef){let n=M.decode(t.tableRef);if(`dimensions`in n){let r=n.top+(t.headerRow===!1?0:1),i=n.bottom-+(t.totalsRow===!0);if(i>=r)for(let a=r;a<=i;a++){let r=e.getRow(a),i=[];for(let e=n.left;e<=n.right;e++)i.push(r.getCell(e).value);t.rows.push(i)}}}this.validate(),this.store()}}static{this.SUBTOTAL_FUNCTIONS={average:101,countNums:102,count:103,max:104,min:105,stdDev:107,var:110,sum:109}}getFormula(t){if(t.totalsRowFunction===`none`)return null;if(t.totalsRowFunction===`custom`)return t.totalsRowFormula??null;let n=t.totalsRowFunction?e.SUBTOTAL_FUNCTIONS[t.totalsRowFunction]:void 0;if(n!==void 0)return`SUBTOTAL(${n},${this.table.name}[${t.name}])`;throw new Lr(`Invalid Totals Row Function: ${t.totalsRowFunction}`)}get width(){return this.table.columns.length}get height(){return this.table.rows.length}get filterHeight(){return this.height+ +!!this.table.headerRow}get tableHeight(){return this.filterHeight+ +!!this.table.totalsRow}validate(){let{table:e}=this,t=(e,t,n)=>{e[t]===void 0&&(e[t]=n)};t(e,`headerRow`,!0),t(e,`totalsRow`,!1),t(e,`style`,{});let n=e.style;t(n,`theme`,`TableStyleMedium2`),t(n,`showFirstColumn`,!1),t(n,`showLastColumn`,!1),t(n,`showRowStripes`,!1),t(n,`showColumnStripes`,!1),e.name&&=Vg(e.name),e.displayName&&=Vg(e.displayName);let r=(e,t)=>{if(!e)throw new Lr(t)};r(!!e.name,`Table must have a name`),r(!!e.ref,`Table must have ref`),r(!!e.columns,`Table must have column definitions`),r(!!e.rows,`Table must have row definitions`),e.tl=M.decodeAddress(e.ref);let{row:i,col:a}=e.tl;r(i>0,`Table must be on valid row`),r(a>0,`Table must be on valid col`);let{width:o,tableHeight:s}=this;e.autoFilterRef=M.encode(i,a,i,a+o-1),e.tableRef=M.encode(i,a,i+s-1,a+o-1),e.columns.forEach((e,n)=>{r(!!e.name,`Column ${n} must have a name`),n===0?t(e,`totalsRowLabel`,`Total`):(t(e,`totalsRowFunction`,`none`),e.totalsRowFormula=this.getFormula(e)??void 0)})}store(){let e=(e,t)=>{t&&Object.assign(e.style,t)},{worksheet:t,table:n}=this,{row:r,col:i}=n.tl,a=0;if(n.headerRow){let o=t.getRow(r+ a++);n.columns.forEach((t,n)=>{let{style:r,name:a}=t,s=o.getCell(i+n);s.value=a,e(s,r)})}if(n.rows.forEach(o=>{let s=t.getRow(r+ a++);o.forEach((t,r)=>{let a=s.getCell(i+r);if(typeof t==`object`&&t&&`formula`in t&&typeof t.formula==`string`){let e=t,r=n.qualifyImplicitStructuredReferences===!0;a.value={...e,formula:r?e.formula.replace(/(^|[^A-Za-z0-9_])\[@\[?([^[\]]+?)\]?\]/g,`$1${n.name}[[#This Row],[$2]]`):e.formula}}else a.value=t;e(a,n.columns[r]?.style)})}),n.totalsRow){let o=t.getRow(r+ a++);n.columns.forEach((t,n)=>{let r=o.getCell(i+n);if(n===0)r.value=t.totalsRowLabel;else{let e=this.getFormula(t);e?r.value={formula:e,result:t.totalsRowResult}:r.value=null}e(r,t.style)})}}load(e){let{table:t}=this,{row:n,col:r}=t.tl,i=0;if(t.headerRow){let a=e.getRow(n+ i++);t.columns.forEach((e,t)=>{let n=a.getCell(r+t);n.value=e.name})}if(t.rows.forEach(t=>{let a=e.getRow(n+ i++);t.forEach((e,t)=>{let n=a.getCell(r+t);n.value=e})}),t.totalsRow){let a=e.getRow(n+ i++);t.columns.forEach((e,t)=>{let n=a.getCell(r+t);if(t===0)n.value=e.totalsRowLabel;else{let t=this.getFormula(e);t&&(n.value={formula:t,result:e.totalsRowResult})}})}}get model(){return this.table}set model(e){this.table=e}cacheState(){this._cache||={ref:this.ref,width:this.width,tableHeight:this.tableHeight}}commit(){if(!this._cache)return;this.validate();let e=M.decodeAddress(this._cache.ref);if(this.ref!==this._cache.ref)for(let t=0;t<this._cache.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}else{for(let t=this.tableHeight;t<this._cache.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=0;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}for(let t=0;t<this.tableHeight;t++){let n=this.worksheet.getRow(e.row+t);for(let t=this.width;t<this._cache.width;t++){let r=n.getCell(e.col+t);r.value=null}}}this.store(),this._cache=void 0}addRow(e,t,n){this.cacheState(),t===void 0?this.table.rows.push(e):this.table.rows.splice(t,0,e),n?.commit!==!1&&this.commit()}removeRows(e,t=1,n){this.cacheState(),this.table.rows.splice(e,t),n?.commit!==!1&&this.commit()}getColumn(e){let t=this.table.columns[e];return new Hg(this,t,e)}addColumn(e,t,n){this.cacheState(),n===void 0?(this.table.columns.push(e),this.table.rows.forEach((e,n)=>{e.push(t[n])})):(this.table.columns.splice(n,0,e),this.table.rows.forEach((e,r)=>{e.splice(n,0,t[r])}))}removeColumns(e,t=1){this.cacheState(),this.table.columns.splice(e,t),this.table.rows.forEach(n=>{n.splice(e,t)})}_assign(e,t,n){this.cacheState(),e[t]=n}get ref(){return this.table.ref}set ref(e){this._assign(this.table,`ref`,e)}get name(){return this.table.name}set name(e){this.cacheState(),this.table.name=Vg(e)}get displayName(){return this.table.displayName||this.table.name}set displayName(e){this.cacheState(),this.table.displayName=Vg(e)}get headerRow(){return this.table.headerRow}set headerRow(e){this._assign(this.table,`headerRow`,e)}get totalsRow(){return this.table.totalsRow}set totalsRow(e){this._assign(this.table,`totalsRow`,e)}_ensureStyle(){return this.table.style||(this.table.style={}),this.table.style}get theme(){return this.table.style?.theme}set theme(e){this._ensureStyle().theme=e}get showFirstColumn(){return this.table.style?.showFirstColumn}set showFirstColumn(e){this._ensureStyle().showFirstColumn=e}get showLastColumn(){return this.table.style?.showLastColumn}set showLastColumn(e){this._ensureStyle().showLastColumn=e}get showRowStripes(){return this.table.style?.showRowStripes}set showRowStripes(e){this._ensureStyle().showRowStripes=e}get showColumnStripes(){return this.table.style?.showColumnStripes}set showColumnStripes(e){this._ensureStyle().showColumnStripes=e}};function Wg(e){return M.l2n(e.toUpperCase())-1}function Gg(e){return M.n2l(e+1)}function Kg(e){return parseInt(e,10)-1}function qg(e){return String(e+1)}function Jg(e){let t=M.decodeAddress(e.toUpperCase());return{c:t.col-1,r:t.row-1}}function Yg(e){return M.encodeAddress(e.r+1,e.c+1)}function Xg(e){let t=e.indexOf(`:`);if(t===-1){let t=Jg(e);return{s:t,e:{...t}}}return{s:Jg(e.slice(0,t)),e:Jg(e.slice(t+1))}}function Zg(e,t){if(t===void 0){let t=e;return Zg(t.s,t.e)}let n=Yg(e),r=Yg(t);return n===r?n:`${n}:${r}`}let Qg={32:3,33:5,34:6,35:7,36:7,37:11,38:10,39:3,40:5,41:5,42:7,43:7,44:4,45:5,46:4,47:6,48:7,49:7,50:7,51:7,52:7,53:7,54:7,55:7,56:7,57:7,58:4,59:4,60:7,61:7,62:7,63:7,64:13,65:9,66:8,67:8,68:9,69:7,70:7,71:9,72:9,73:4,74:5,75:8,76:6,77:12,78:10,79:10,80:8,81:10,82:8,83:7,84:7,85:9,86:9,87:13,88:8,89:7,90:7,91:5,92:6,93:5,94:7,95:7,96:4,97:7,98:8,99:6,100:8,101:8,102:5,103:7,104:8,105:4,106:4,107:7,108:4,109:12,110:8,111:8,112:8,113:8,114:5,115:6,116:5,117:8,118:7,119:11,120:7,121:7,122:6,123:5,124:7,125:5,126:7},$g={header:{unitsPerEm:2048,usWinAscent:1950,usWinDescent:550,maxDigitAdvance:1038,sTypoAscender:1536,sTypoDescender:-512,sTypoLineGap:452},defaultAdvance:1e3,cjkAdvance:2048,advances:[[32,1,463],[33,1,667],[34,1,821],[35,1,1020],[36,1,1038],[37,1,1464],[38,1,1397],[39,1,452],[40,2,621],[42,2,1020],[44,1,511],[45,1,627],[46,1,517],[47,1,791],[48,10,1038],[58,2,548],[60,3,1020],[63,1,949],[64,1,1831],[65,1,1185],[66,1,1114],[67,1,1092],[68,1,1260],[69,1,1e3],[70,1,941],[71,1,1292],[72,1,1276],[73,1,516],[74,1,653],[75,1,1064],[76,1,861],[77,1,1751],[78,1,1322],[79,1,1356],[80,1,1058],[81,1,1378],[82,1,1112],[83,1,941],[84,1,998],[85,1,1314],[86,1,1162],[87,1,1822],[88,1,1063],[89,1,998],[90,1,959],[91,1,628],[92,1,791],[93,1,628],[94,2,1020],[96,1,596],[97,1,981],[98,1,1076],[99,1,866],[100,1,1076],[101,1,1019],[102,1,625],[103,1,964],[104,1,1076],[105,1,470],[106,1,490],[107,1,931],[108,1,470],[109,1,1636],[110,1,1076],[111,1,1080],[112,2,1076],[114,1,714],[115,1,801],[116,1,686],[117,1,1076],[118,1,925],[119,1,1464],[120,1,887],[121,1,927],[122,1,809],[123,1,644],[124,1,943],[125,1,644],[126,1,1020]]},e_={header:{unitsPerEm:2048,usWinAscent:1854,usWinDescent:434,maxDigitAdvance:1139,sTypoAscender:1491,sTypoDescender:-431,sTypoLineGap:307},defaultAdvance:1024,cjkAdvance:2048,advances:[[32,1,569],[33,1,569],[34,1,727],[35,1,1139],[36,1,1139],[37,1,1821],[38,1,1366],[39,1,391],[40,1,682],[41,1,682],[42,1,797],[43,1,1196],[44,1,569],[45,1,682],[46,1,569],[47,1,569],[48,10,1139],[58,1,569],[59,1,569],[60,1,1196],[61,1,1196],[62,1,1196],[63,1,1139],[64,1,2079],[65,1,1366],[66,1,1366],[67,1,1479],[68,1,1479],[69,1,1366],[70,1,1251],[71,1,1593],[72,1,1479],[73,1,569],[74,1,1024],[75,1,1366],[76,1,1139],[77,1,1706],[78,1,1479],[79,1,1593],[80,1,1366],[81,1,1593],[82,1,1479],[83,1,1366],[84,1,1251],[85,1,1479],[86,1,1366],[87,1,1933],[88,1,1366],[89,1,1366],[90,1,1251],[91,1,569],[92,1,569],[93,1,569],[94,1,961],[95,1,1139],[96,1,682],[97,1,1139],[98,1,1139],[99,1,1024],[100,1,1139],[101,1,1139],[102,1,569],[103,1,1139],[104,1,1139],[105,1,455],[106,1,455],[107,1,1024],[108,1,455],[109,1,1706],[110,1,1139],[111,1,1139],[112,1,1139],[113,1,1139],[114,1,682],[115,1,1024],[116,1,569],[117,1,1139],[118,1,1024],[119,1,1479],[120,1,1024],[121,1,1024],[122,1,1024],[123,1,684],[124,1,532],[125,1,684],[126,1,1196]]},t_={header:{unitsPerEm:2048,usWinAscent:1854,usWinDescent:434,maxDigitAdvance:1139,sTypoAscender:1491,sTypoDescender:-431,sTypoLineGap:307},defaultAdvance:1070,cjkAdvance:2048,advances:[[32,1,569],[33,1,682],[34,1,974],[35,1,1139],[36,1,1139],[37,1,1821],[38,1,1479],[39,1,569],[40,1,682],[41,1,682],[42,1,797],[43,1,1196],[44,1,569],[45,1,682],[46,1,569],[47,1,569],[48,10,1139],[58,1,682],[59,1,682],[60,1,1196],[61,1,1196],[62,1,1196],[63,1,1251],[64,1,1991],[65,1,1479],[66,1,1479],[67,1,1479],[68,1,1479],[69,1,1366],[70,1,1251],[71,1,1593],[72,1,1479],[73,1,682],[74,1,1139],[75,1,1479],[76,1,1251],[77,1,1706],[78,1,1479],[79,1,1593],[80,1,1366],[81,1,1593],[82,1,1479],[83,1,1366],[84,1,1251],[85,1,1479],[86,1,1366],[87,1,1933],[88,1,1366],[89,1,1366],[90,1,1251],[91,1,682],[92,1,569],[93,1,682],[94,1,1196],[95,1,1139],[96,1,682],[97,1,1139],[98,1,1251],[99,1,1024],[100,1,1251],[101,1,1139],[102,1,682],[103,1,1251],[104,1,1251],[105,1,569],[106,1,569],[107,1,1139],[108,1,569],[109,1,1821],[110,1,1251],[111,1,1251],[112,1,1251],[113,1,1251],[114,1,797],[115,1,1024],[116,1,682],[117,1,1251],[118,1,1139],[119,1,1593],[120,1,1139],[121,1,1139],[122,1,1024],[123,1,797],[124,1,569],[125,1,797],[126,1,1196]]},n_={header:{unitsPerEm:2048,usWinAscent:1825,usWinDescent:443,maxDigitAdvance:1024,sTypoAscender:1420,sTypoDescender:-442,sTypoLineGap:307},defaultAdvance:900,cjkAdvance:2048,advances:[[32,1,512],[33,1,682],[34,1,836],[35,1,1024],[36,1,1024],[37,1,1706],[38,1,1593],[39,1,369],[40,1,682],[41,1,682],[42,1,1024],[43,1,1155],[44,1,512],[45,1,682],[46,1,512],[47,1,569],[48,10,1024],[58,1,569],[59,1,569],[60,1,1155],[61,1,1155],[62,1,1155],[63,1,909],[64,1,1886],[65,1,1479],[66,1,1366],[67,1,1366],[68,1,1479],[69,1,1251],[70,1,1139],[71,1,1479],[72,1,1479],[73,1,682],[74,1,797],[75,1,1479],[76,1,1251],[77,1,1821],[78,1,1479],[79,1,1479],[80,1,1139],[81,1,1479],[82,1,1366],[83,1,1139],[84,1,1251],[85,1,1479],[86,1,1479],[87,1,1933],[88,1,1479],[89,1,1479],[90,1,1251],[91,1,682],[92,1,569],[93,1,682],[94,1,961],[95,1,1024],[96,1,682],[97,1,909],[98,1,1024],[99,1,909],[100,1,1024],[101,1,909],[102,1,682],[103,1,1024],[104,1,1024],[105,1,569],[106,1,569],[107,1,1024],[108,1,569],[109,1,1479],[110,1,1024],[111,1,1024],[112,1,1024],[113,1,1024],[114,1,682],[115,1,797],[116,1,569],[117,1,1024],[118,1,1024],[119,1,1479],[120,1,1024],[121,1,1024],[122,1,909],[123,1,983],[124,1,410],[125,1,983],[126,1,1073]]},r_={header:{unitsPerEm:2048,usWinAscent:1705,usWinDescent:615,maxDigitAdvance:1229,sTypoAscender:1255,sTypoDescender:-386,sTypoLineGap:0},defaultAdvance:1229,cjkAdvance:2048,advances:[[32,95,1229]]},i_={header:{unitsPerEm:2048,usWinAscent:2059,usWinDescent:430,maxDigitAdvance:1302,sTypoAscender:1566,sTypoDescender:-423,sTypoLineGap:202},defaultAdvance:1200,cjkAdvance:2048,advances:[[32,1,720],[33,1,756],[34,1,933],[35,1,1521],[36,1,1198],[37,1,1807],[38,1,1487],[39,1,510],[40,1,756],[41,1,756],[42,1,1198],[43,1,1521],[44,1,643],[45,1,811],[46,1,643],[47,1,899],[48,10,1302],[58,1,756],[59,1,756],[60,1,1521],[61,1,1521],[62,1,1521],[63,1,1151],[64,1,1937],[65,1,1362],[66,1,1382],[67,1,1279],[68,1,1490],[69,1,1279],[70,1,1186],[71,1,1458],[72,1,1498],[73,1,924],[74,1,922],[75,1,1362],[76,1,1145],[77,1,1728],[78,1,1498],[79,1,1476],[80,1,1262],[81,1,1476],[82,1,1396],[83,1,1300],[84,1,1185],[85,1,1448],[86,1,1362],[87,1,1864],[88,1,1244],[89,1,1183],[90,1,1204],[91,1,756],[92,1,899],[93,1,756],[94,1,1521],[95,1,1198],[96,1,1198],[97,1,1224],[98,1,1302],[99,1,1075],[100,1,1302],[101,1,1218],[102,1,756],[103,1,1302],[104,1,1317],[105,1,643],[106,1,700],[107,1,1183],[108,1,643],[109,1,1937],[110,1,1317],[111,1,1271],[112,1,1302],[113,1,1302],[114,1,899],[115,1,1075],[116,1,811],[117,1,1317],[118,1,1183],[119,1,1728],[120,1,1183],[121,1,1183],[122,1,1031],[123,1,787],[124,1,756],[125,1,787],[126,1,1521]]},a_={header:{unitsPerEm:2048,usWinAscent:1878,usWinDescent:449,maxDigitAdvance:1257,sTypoAscender:1549,sTypoDescender:-444,sTypoLineGap:198},defaultAdvance:1100,cjkAdvance:2048,advances:[[32,1,504],[33,1,614],[34,1,679],[35,1,1257],[36,1,1024],[37,1,1539],[38,1,1350],[39,1,391],[40,1,614],[41,1,614],[42,1,842],[43,1,1257],[44,1,504],[45,1,751],[46,1,504],[47,1,797],[48,10,1257],[58,1,569],[59,1,569],[60,1,1257],[61,1,1257],[62,1,1257],[63,1,885],[64,1,1614],[65,1,1350],[66,1,1273],[67,1,1161],[68,1,1427],[69,1,1163],[70,1,1074],[71,1,1314],[72,1,1517],[73,1,721],[74,1,772],[75,1,1397],[76,1,1176],[77,1,1770],[78,1,1462],[79,1,1392],[80,1,1118],[81,1,1392],[82,1,1321],[83,1,1019],[84,1,1163],[85,1,1456],[86,1,1321],[87,1,1887],[88,1,1314],[89,1,1220],[90,1,1055],[91,1,614],[92,1,797],[93,1,614],[94,1,1257],[95,1,1024],[96,1,682],[97,1,1019],[98,1,1100],[99,1,866],[100,1,1106],[101,1,958],[102,1,654],[103,1,1006],[104,1,1152],[105,1,606],[106,1,606],[107,1,1048],[108,1,606],[109,1,1700],[110,1,1131],[111,1,1042],[112,1,1100],[113,1,1100],[114,1,772],[115,1,820],[116,1,688],[117,1,1117],[118,1,1019],[119,1,1559],[120,1,1007],[121,1,1012],[122,1,880],[123,1,637],[124,1,583],[125,1,637],[126,1,1257]]},o_={header:{unitsPerEm:2048,usWinAscent:2049,usWinDescent:423,maxDigitAdvance:1118,sTypoAscender:1566,sTypoDescender:-423,sTypoLineGap:59},defaultAdvance:1050,cjkAdvance:2048,advances:[[32,1,461],[33,1,536],[34,1,717],[35,1,1232],[36,1,1014],[37,1,1625],[38,1,1327],[39,1,428],[40,1,616],[41,1,616],[42,1,900],[43,1,1232],[44,1,504],[45,1,700],[46,1,504],[47,1,753],[48,10,1118],[58,1,567],[59,1,567],[60,1,1232],[61,1,1232],[62,1,1232],[63,1,974],[64,1,1810],[65,1,1205],[66,1,1200],[67,1,1130],[68,1,1327],[69,1,1117],[70,1,1032],[71,1,1306],[72,1,1308],[73,1,614],[74,1,794],[75,1,1195],[76,1,1003],[77,1,1500],[78,1,1308],[79,1,1381],[80,1,1103],[81,1,1381],[82,1,1200],[83,1,1117],[84,1,1100],[85,1,1300],[86,1,1205],[87,1,1723],[88,1,1119],[89,1,1130],[90,1,1068],[91,1,616],[92,1,753],[93,1,616],[94,1,1232],[95,1,893],[96,1,1118],[97,1,1066],[98,1,1141],[99,1,942],[100,1,1141],[101,1,1086],[102,1,639],[103,1,1141],[104,1,1126],[105,1,500],[106,1,548],[107,1,1023],[108,1,500],[109,1,1705],[110,1,1126],[111,1,1103],[112,1,1141],[113,1,1141],[114,1,714],[115,1,918],[116,1,700],[117,1,1126],[118,1,1e3],[119,1,1500],[120,1,1e3],[121,1,1e3],[122,1,880],[123,1,616],[124,1,540],[125,1,616],[126,1,1232]]},s_={header:{unitsPerEm:2048,usWinAscent:1923,usWinDescent:455,maxDigitAdvance:1074,sTypoAscender:1510,sTypoDescender:-420,sTypoLineGap:0},defaultAdvance:1e3,cjkAdvance:2048,advances:[[32,1,453],[33,1,545],[34,1,613],[35,1,1107],[36,1,1074],[37,1,1341],[38,1,1213],[39,1,360],[40,1,616],[41,1,616],[42,1,860],[43,1,1107],[44,1,453],[45,1,697],[46,1,453],[47,1,766],[48,10,1074],[58,1,453],[59,1,453],[60,1,1107],[61,1,1107],[62,1,1107],[63,1,860],[64,1,1648],[65,1,1227],[66,1,1227],[67,1,1139],[68,1,1309],[69,1,1139],[70,1,1057],[71,1,1309],[72,1,1395],[73,1,627],[74,1,791],[75,1,1260],[76,1,1057],[77,1,1456],[78,1,1350],[79,1,1395],[80,1,1139],[81,1,1395],[82,1,1215],[83,1,1057],[84,1,1139],[85,1,1350],[86,1,1227],[87,1,1730],[88,1,1260],[89,1,1139],[90,1,1139],[91,1,616],[92,1,766],[93,1,616],[94,1,1107],[95,1,1074],[96,1,860],[97,1,1013],[98,1,1074],[99,1,936],[100,1,1074],[101,1,1013],[102,1,627],[103,1,1074],[104,1,1074],[105,1,545],[106,1,538],[107,1,1013],[108,1,545],[109,1,1539],[110,1,1074],[111,1,1074],[112,1,1074],[113,1,1074],[114,1,715],[115,1,860],[116,1,627],[117,1,1074],[118,1,936],[119,1,1481],[120,1,936],[121,1,936],[122,1,860],[123,1,616],[124,1,604],[125,1,616],[126,1,1107]]},c_={},l_={};function u_(e,t,n){c_[e.toLowerCase()]=t,n&&(l_[e.toLowerCase()]=n)}u_(`calibri`,$g),u_(`arial`,e_,t_),u_(`times new roman`,n_),u_(`courier new`,r_),u_(`verdana`,i_),u_(`georgia`,a_),u_(`tahoma`,o_),u_(`trebuchet ms`,s_);let d_={aptos:[1.03,1.37,1],"aptos display":[.96,1.31,1],"aptos narrow":[.82,1.07,1],"aptos serif":[.98,1.31,1],"calibri light":[.98,1.19,1],cambria:[1.07,1.28,1],"century gothic":[1.19,1.36,1],"comic sans ms":[1.14,1.46,1],consolas:[1.21,1.21,1],constantia:[1.05,1.34,1],corbel:[.97,1.2,1],garamond:[1.16,1.39,1],impact:[.96,1.01,1],"lucida console":[1.21,1.21,1],"lucida sans unicode":[1.16,1.4,1],"microsoft sans serif":[1.07,1.35,1],"palatino linotype":[1.12,1.44,1],"segoe ui":[1.08,1.31,1],"book antiqua":[1.12,1.44,1],candara:[1.02,1.25,1],"franklin gothic medium":[1.08,1.33,1],"goudy old style":[1.02,1.34,1],rockwell:[1.14,1.35,1],"tw cen mt":[.95,1.17,1],"microsoft yahei":[1.18,1.3,1.18],"microsoft yahei ui":[1.18,1.3,1.18],simsun:[1.1,1.1,1.1],宋体:[1.1,1.1,1.1],simhei:[1.1,1.1,1.1],黑体:[1.1,1.1,1.1],nsimsun:[1.1,1.1,1.1],新宋体:[1.1,1.1,1.1],dengxian:[1.05,1.28,1.08],等线:[1.05,1.28,1.08],fangsong:[1.1,1.1,1.1],仿宋:[1.1,1.1,1.1],kaiti:[1.1,1.1,1.1],楷体:[1.1,1.1,1.1],meiryo:[1.18,1.3,1.18],"meiryo ui":[1.1,1.2,1.18],"ms gothic":[1.21,1.21,1.1],"MS ゴシック":[1.21,1.21,1.1],"ms pgothic":[1.07,1.33,1.1],"ms mincho":[1.21,1.21,1.1],"yu gothic":[1.17,1.32,1.18],"yu gothic ui":[1.08,1.22,1.18],"yu mincho":[1.1,1.28,1.18],"malgun gothic":[1.12,1.28,1.14],"맑은 고딕":[1.12,1.28,1.14],batang:[1.1,1.1,1.1],gulim:[1.1,1.1,1.1],dotum:[1.1,1.1,1.1]},f_=new Map;function p_(e){let t=f_.get(e);if(t)return t;t=new Map;for(let[n,r,i]of e.advances)for(let e=0;e<r;e++)t.set(n+e,i);return f_.set(e,t),t}function m_(e,t){let n=e.toLowerCase();return t?l_[n]??c_[n]:c_[n]}function h_(e){return Object.hasOwn(l_,e.toLowerCase())}function g_(){return $g}function __(e,t){return t>=19968&&t<=40959||t>=13312&&t<=19903||t>=63744&&t<=64255||t>=131072&&t<=205743||t>=12288&&t<=12543||t>=44032&&t<=55215||t>=65281&&t<=65376||t>=11904&&t<=12255||t>=12544&&t<=13311?e.cjkAdvance:p_(e).get(t)??e.defaultAdvance}function v_(e){return Qg[e]}function y_(e){return d_[e.toLowerCase()]}function b_(e){return e>=19968&&e<=40959||e>=13312&&e<=19903||e>=63744&&e<=64255||e>=65281&&e<=65376||e>=12288&&e<=12543||e>=11904&&e<=12255||e>=12544&&e<=13311||e>=44032&&e<=55215||e>=131072&&e<=205743}let x_=`Calibri`,S_=1790;function C_(e,t,n,r,i){if(t===`calibri`&&n===11){let t=v_(e);if(t!==void 0)return t}if(i){let t=__(i,e),r=Math.round(n/72*96);return Math.round(t/i.header.unitsPerEm*r)}}function w_(e){return{name:(e?.name??x_).toLowerCase(),size:e?.size??11,bold:e?.bold??!1,italic:e?.italic??!1,vertAlign:e?.vertAlign}}function T_(e,t){if(!e)return 0;let n=w_(t),r=m_(n.name,n.bold),i=e.split(/\r\n|\r|\n/),a=0;for(let e of i){let t=E_(e,n,r);t>a&&(a=t)}return a}function E_(e,t,n){return e?n||t.name===`calibri`&&t.size===11?D_(e,t,n):O_(e,t):0}function D_(e,t,n){let r=0;for(let i of e)r+=R_(i.codePointAt(0),t,n);return t.vertAlign&&(r=Math.ceil(r*.6)),r}function O_(e,t){let n=y_(t.name),r=n?.[0]??1,i=n?.[1]??1.3,a=n?.[2]??1,o=0,s=0,c=0;for(let t of e)b_(t.codePointAt(0))?c+=2:t>=`A`&&t<=`Z`?s++:o++;let l=(o*r+s*i+c*a)*(t.size/11);t.bold&&(l*=1.05),t.italic&&(l*=1.02),t.vertAlign&&(l*=.6);let u=A_({name:t.name,size:t.size});return Math.ceil(l*u)}function k_(e,t){let n=0,r=0;for(let i of e){let e=i.font?{...t,...i.font}:t,a=i.text.split(/\r\n|\r|\n/);for(let t=0;t<a.length;t++)t>0&&(r>n&&(n=r),r=0),a[t]&&(r+=T_(a[t],e))}return r>n&&(n=r),n}function A_(e){let t=(e?.name??x_).toLowerCase(),n=e?.size??11;if(t===`calibri`&&n===11)return 7;let r=m_(t);if(r){let e=Math.round(n/72*96);return Math.round(r.header.maxDigitAdvance/r.header.unitsPerEm*e)}return Math.max(1,Math.round(n/11*7))}function j_(e){return 2*Math.ceil(e/4)+1}function M_(e,t){return t<=0?0:Math.trunc(e/t*256)/256}function N_(e,t){if(t<=0)return 0;let n=j_(t);return e===0?0:e<1?Math.round(e*(t+n)):Math.round(e*t)+n}function P_(e){return e*72/96}function F_(e,t,n){if(e<=0)return 0;let r=e+2*Math.ceil(e*.03+t/4)+1;n&&(r+=16),r>S_&&(r=S_);let i=M_(r,t);return Math.min(i,255)}function I_(e){let t=(e?.name??x_).toLowerCase(),n=e?.size??11,r=Math.round(n/72*96),i=m_(t);if(i){let{unitsPerEm:e,usWinDescent:t}=i.header;return(e+t)/e*r}return r*1.3}function L_(e,t,n){if(!e||t<=0)return 1;let r=w_(n),i=m_(r.name,r.bold),a=e.split(/\r\n|\r|\n/),o=0;for(let e of a){if(!e){o++;continue}o+=z_(e,t,r,i)}return o}function R_(e,t,n){let r;if(n||t.name===`calibri`&&t.size===11){let i=n??g_();r=C_(e,t.name,t.size,t.bold,i)??Math.round(i.defaultAdvance/i.header.unitsPerEm*Math.round(t.size/72*96))}else r=Math.ceil(t.size/11*A_({name:t.name,size:t.size})*(b_(e)?2:1));return t.bold&&!h_(t.name)&&(r=Math.ceil(r*1.05)),t.italic&&(r=Math.ceil(r*1.02)),r}function z_(e,t,n,r){let i=B_(e);if(i.length===0)return 1;let a=1,o=0;for(let e of i){let i=0;for(let t of e)i+=R_(t.codePointAt(0),n,r);o===0?o=i:o+i>t?(a++,o=i):o+=i}return a}function B_(e){let t=[],n=``;for(let r of e)n+=r,(r===` `||r===`-`||r===` `)&&(t.push(n),n=``);return n&&t.push(n),t}function V_(e,t,n,r){if(!e)return P_(I_(t));let i=I_(t),a;return a=n?.wrapText&&r&&r>0?L_(e,r,t):e.split(/\r\n|\r|\n/).length,P_(i*a)}function H_(e,t,n,r){let i=t?.size??11,a=t;for(let n of e){let e=n.font?.size??t?.size??11;e>i&&(i=e,a=n.font?{...t,...n.font}:t)}return V_(e.map(e=>e.text).join(``),a,n,r)}function U_(e,t){let n=N_(e,t),r=j_(t);return Math.max(0,n-r)}function W_(e){let t=e.effectiveType,n=e.font;if(t===8){let t=e.value;if(t&&typeof t==`object`&&`richText`in t)return k_(t.richText,n)}let r=jl(e);return r?T_(r,n):0}function G_(e,t,n){let r=e.font,i=e.alignment;if(e.effectiveType===8){let t=e.value;if(t&&typeof t==`object`&&`richText`in t)return H_(t.richText,r,i,n)}let a=jl(e);return a?V_(a,r,i,i?.wrapText?n:void 0):0}var K_=class{constructor(e){this._workbook=e.workbook,this.id=e.id??0,this.orderNo=e.orderNo??0,this.name=e.name||`sheet${this.id}`,this.state=e.state??`visible`,this._rows=[],this._columns=[],this._keys={},this._merges={},this.rowBreaks=[],this.colBreaks=[],this.properties={defaultRowHeight:15,outlineLevelCol:0,outlineLevelRow:0,...e.properties},this.pageSetup={margins:{left:.7,right:.7,top:.75,bottom:.75,header:.3,footer:.3},orientation:`portrait`,horizontalDpi:void 0,verticalDpi:void 0,fitToPage:!!(e.pageSetup&&(e.pageSetup.fitToWidth||e.pageSetup.fitToHeight)&&!e.pageSetup.scale),pageOrder:`downThenOver`,blackAndWhite:!1,draft:!1,cellComments:`None`,errors:`displayed`,scale:100,fitToWidth:1,fitToHeight:1,paperSize:void 0,showRowColHeaders:!1,showGridLines:!1,firstPageNumber:void 0,horizontalCentered:!1,verticalCentered:!1,rowBreaks:null,colBreaks:null,...e.pageSetup},this.headerFooter={differentFirst:!1,differentOddEven:!1,oddHeader:null,oddFooter:null,evenHeader:null,evenFooter:null,firstHeader:null,firstFooter:null,...e.headerFooter},this.dataValidations=new zp,this.views=e.views??[],this.autoFilter=e.autoFilter??null,this._media=[],this.sheetProtection=null,this.tables={},this.pivotTables=[],this.conditionalFormattings=[],this.formControls=[],this.ignoredErrors=[],this._watermark=null}get name(){return this._name}set name(e){if(e===void 0&&(e=`sheet${this.id}`),this._name===e)return;if(typeof e!=`string`)throw new Tr(`The name has to be a string.`);if(e===``)throw new Tr(`The name can't be empty.`);if(e===`History`)throw new Tr(`The name "History" is protected. Please use a different name.`);if(/[*?:/\\[\]]/.test(e))throw new Tr(`Worksheet name ${e} cannot include any of the following characters: * ? : \\ / [ ]`);if(/(^')|('$)/.test(e))throw new Tr(`The first or last character of worksheet name cannot be a single quotation mark: ${e}`);e.length>31&&(e=e.substring(0,31));let t=e.toLowerCase();if(this._workbook.worksheets.find(e=>e&&e!==this&&e.name.toLowerCase()===t))throw new Tr(`Worksheet name already exists: ${e}`);this._name=e}get workbook(){return this._workbook}destroy(){this._workbook.removeWorksheetEx(this)}get dimensions(){let e=new N;return this._rows.forEach(t=>{if(t){let n=t.dimensions;n&&e.expand(t.number,n.min,t.number,n.max)}}),e}get columns(){return this._columns}set columns(e){this._headerRowCount=e.reduce((e,t)=>{let n=Array.isArray(t.header)?t.header.length:+!!t.header;return Math.max(e,n)},0);let t=1,n=this._columns=[];e.forEach(e=>{let r=new gc(this,t++,!1);n.push(r),r.defn=e})}getColumnKey(e){return this._keys[e]}setColumnKey(e,t){this._keys[e]=t}deleteColumnKey(e){delete this._keys[e]}eachColumnKey(e){Object.keys(this._keys).forEach(t=>e(this._keys[t],t))}getColumn(e){let t;if(typeof e==`string`){let n=this._keys[e];if(n)return n;t=M.l2n(e)}else t=e;if(t>this._columns.length){let e=this._columns.length+1;for(;e<=t;)this._columns.push(new gc(this,e++))}return this._columns[t-1]}spliceColumns(e,t,...n){for(let e of Object.values(this._merges))for(let t=e.top;t<=e.bottom;t++)for(let n=e.left;n<=e.right;n++){let e=this.findCell(t,n);e&&e.type===1&&e.unmerge()}let r=this._rows.length;if(n.length>0)for(let i=0;i<r;i++){let r=n.map(e=>e[i]??null);this.getRow(i+1).splice(e,t,...r)}else this._rows.forEach(n=>{n&&n.splice(e,t)});let i=n.length-t,a=e+t,o=this._columns.length;if(i<0)for(let t=e+n.length;t<=o;t++)this.getColumn(t).defn=this.getColumn(t-i).defn;else if(i>0)for(let e=o;e>=a;e--)this.getColumn(e+i).defn=this.getColumn(e).defn;for(let t=e;t<e+n.length;t++)this.getColumn(t).defn=void 0;if(this.workbook.definedNames.spliceColumns(this.name,e,t,n.length),i!==0){for(let t of this._media)if(t.type===`image`&&t.range){let{tl:n,br:r}=t.range;n&&n.nativeCol>=e-1&&(n.nativeCol=Math.max(0,n.nativeCol+i)),r&&r.nativeCol>=e-1&&(r.nativeCol=Math.max(0,r.nativeCol+i))}}this._spliceMerges(`col`,e,t,n.length)}get lastColumn(){return this.getColumn(this.columnCount)}get columnCount(){let e=0;return this.eachRow(t=>{e=Math.max(e,t.cellCount)}),e}get actualColumnCount(){let e=[],t=0;return this.eachRow(n=>{n.eachCell(({col:n})=>{e[n]||(e[n]=!0,t++)})}),t}_commitRow(e){}get _lastRowNumber(){let e=this._rows,t=e.length;for(;t>0&&e[t-1]===void 0;)t--;return t}get _nextRow(){return this._lastRowNumber+1}get lastRow(){if(this._rows.length)return this._rows[this._rows.length-1]}findRow(e){return this._rows[e-1]}findRows(e,t){return this._rows.slice(e-1,e-1+t)}get rowCount(){return this._lastRowNumber}get actualRowCount(){let e=0;return this.eachRow(()=>{e++}),e}getRow(e){let t=this._rows[e-1];return t||=this._rows[e-1]=new Ql(this,e),t}getRows(e,t){if(t<1)return;let n=[];for(let r=e;r<e+t;r++)n.push(this.getRow(r));return n}addRow(e,t=`n`){let n=this._nextRow,r=this.getRow(n);return r.values=e,this._setStyleOption(n,t[0]===`i`?t:`n`),r}addRows(e,t=`n`){let n=[];return e.forEach(e=>{n.push(this.addRow(e,t))}),n}insertRow(e,t,n=`n`){return this.spliceRows(e,0,t),this._setStyleOption(e,n),this.getRow(e)}insertRows(e,t,n=`n`){if(this.spliceRows(e,0,...t),n!==`n`)for(let r=0;r<t.length;r++)n[0]===`o`&&this.findRow(t.length+e+r)!==void 0?this._copyStyle(t.length+e+r,e+r,n[1]===`+`):n[0]===`i`&&this.findRow(e-1)!==void 0&&this._copyStyle(e-1,e+r,n[1]===`+`);return this.getRows(e,t.length)}_setStyleOption(e,t=`n`){t[0]===`o`&&this.findRow(e+1)!==void 0?this._copyStyle(e+1,e,t[1]===`+`):t[0]===`i`&&this.findRow(e-1)!==void 0&&this._copyStyle(e-1,e,t[1]===`+`)}_copyStyle(e,t,n=!1){let r=this.getRow(e),i=this.getRow(t);i.style=L(r.style)??{},r.eachCell({includeEmpty:n},(e,t)=>{i.getCell(t).style=L(e.style)??{}}),i.height=r.height}duplicateRow(e,t,n=!1){let r=this.getRow(e),i=Array.from({length:t}).fill(r.values),a=[];for(let t of Object.values(this._merges))t.top===e&&t.bottom===e&&a.push(t);let o=[],s=e-1;for(let e of this._media)e.type===`image`&&e.range&&e.range.tl.nativeRow===s&&o.push(e);this.spliceRows(e+1,n?0:t,...i);for(let n=0;n<t;n++){let t=this._rows[e+n];t.style=L(r.style)??{},t.height=r.height,r.eachCell({includeEmpty:!0},(e,n)=>{t.getCell(n).style=L(e.style)??{}})}if(a.length>0)for(let r=0;r<t;r++){let t=e+1+r;if(!n){let e=[];for(let[n,r]of Object.entries(this._merges))r.top<=t&&r.bottom>=t&&e.push(n);for(let t of e)this._unMergeMaster(this.getCell(t))}for(let e of a)this.mergeCellsWithoutStyle(t,e.left,t,e.right)}if(!n){let n=e,r=e+t-1;this._media=this._media.filter(e=>{if(e.type===`image`&&e.range){let t=e.range.tl.nativeRow;return t<n||t>r}return!0})}for(let e=0;e<t;e++){let t=e+1;for(let e of o){let n=e.clone();if(n.range.tl.nativeRow=s+t,n.range.br){let r=e.range.br.nativeRow-s;n.range.br.nativeRow=s+t+r}this._media.push(n)}}}spliceRows(e,t,...n){for(let e of Object.values(this._merges))for(let t=e.top;t<=e.bottom;t++)for(let n=e.left;n<=e.right;n++){let e=this.findCell(t,n);e&&e.type===1&&e.unmerge()}let r=e+t,i=n.length,a=i-t,o=this._rows.length,s,c;if(a<0)for(e===o&&(this._rows[o-1]=void 0),s=r;s<=o;s++)if(c=this._rows[s-1],c){let e=this.getRow(s+a);e.values=c.values,e.style=L(c.style)??{},e.height=c.height,c.eachCell({includeEmpty:!0},(t,n)=>{e.getCell(n).style=L(t.style)??{}}),this._rows[s-1]=void 0}else this._rows[s+a-1]=void 0;else if(a>0)for(s=o;s>=r;s--)if(c=this._rows[s-1],c){let e=this.getRow(s+a);e.values=c.values,e.style=L(c.style)??{},e.height=c.height,c.eachCell({includeEmpty:!0},(t,n)=>{e.getCell(n).style=L(t.style)??{}})}else this._rows[s+a-1]=void 0;for(s=0;s<i;s++){let t=this.getRow(e+s);t.style={},t.values=n[s]}if(this.workbook.definedNames.spliceRows(this.name,e,t,i),a!==0){for(let t of this._media)if(t.type===`image`&&t.range){let{tl:n,br:r}=t.range;n&&n.nativeRow>=e-1&&(n.nativeRow=Math.max(0,n.nativeRow+a)),r&&r.nativeRow>=e-1&&(r.nativeRow=Math.max(0,r.nativeRow+a))}}this._spliceMerges(`row`,e,t,i)}eachRow(e,t){let n,r;if(typeof e==`function`?r=e:(n=e,r=t),n&&n.includeEmpty){let e=this._rows.length;for(let t=1;t<=e;t++)r(this.getRow(t),t)}else this._rows.forEach(e=>{e&&e.hasValues&&r(e,e.number)})}getSheetValues(){let e=[];return this._rows.forEach(t=>{t&&(e[t.number]=t.values)}),e}findCell(e,t){let n=M.getAddress(e,t),r=this._rows[n.row-1];return r?r.findCell(n.col):void 0}getCell(e,t){let n=M.getAddress(e,t);return this.getRow(n.row).getCellEx(n)}mergeCells(...e){let t=new N(e);this._mergeCellsInternal(t)}mergeCellsWithoutStyle(...e){let t=new N(e);this._mergeCellsInternal(t,!0)}_mergeCellsInternal(e,t){Object.values(this._merges).forEach(t=>{if(t.intersects(e))throw new kr});let{top:n,left:r,bottom:i,right:a}=e,o=t?void 0:im(n,r,i,a,(e,t)=>this.findCell(e,t)),s=this.getCell(e.top,e.left);for(let e=n;e<=i;e++)for(let i=r;i<=a;i++)(e>n||i>r)&&this.getCell(e,i).merge(s,t);o&&am(n,r,i,a,o,(e,t)=>this.getCell(e,t)),this._merges[s.address]=e}_unMergeMaster(e){let t=this._merges[e.address];if(t){for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++)this.getCell(e,n).unmerge();delete this._merges[e.address]}}_spliceMerges(e,t,n,r){let i=r-n;if(i===0&&n===0)return;let a=t+n,o=e===`row`,s={};for(let e of Object.values(this._merges)){let{top:r,left:c,bottom:l,right:u}=e.model,d=o?r:c,f=o?l:u;if(i<=0&&n>0){let n=a-1;if(d>n){let e=o?new N(r+i,c,l+i,u):new N(r,c+i,l,u+i);s[M.encodeAddress(e.top,e.left)]=e}else if(f<t)s[M.encodeAddress(r,c)]=e;else if(!(d>=t&&f<=n)){let e=r,n=c,a=l,d=u;o?(e=r<t?r:t,a=Math.max(e,l+i)):(n=c<t?c:t,d=Math.max(n,u+i));let f=new N(e,n,a,d);e===a&&n===d||(s[M.encodeAddress(f.top,f.left)]=f)}}else if(d>=a){let e=o?new N(r+i,c,l+i,u):new N(r,c+i,l,u+i);s[M.encodeAddress(e.top,e.left)]=e}else f<a||(o?e.model.bottom=l+i:e.model.right=u+i),s[M.encodeAddress(r,c)]=e}this._merges=s;for(let e of Object.values(s)){let t=this.getCell(e.top,e.left);for(let n=e.top;n<=e.bottom;n++)for(let r=e.left;r<=e.right;r++)(n>e.top||r>e.left)&&this.getCell(n,r).merge(t,!0)}}get hasMerges(){return Object.values(this._merges).some(Boolean)}unMergeCells(...e){let t=new N(e);for(let e=t.top;e<=t.bottom;e++)for(let n=t.left;n<=t.right;n++){let t=this.findCell(e,n);t&&(t.type===1?this._unMergeMaster(t.master):this._merges[t.address]&&this._unMergeMaster(t))}}fillFormula(e,t,n,r=`shared`){let{top:i,left:a,bottom:o,right:s}=M.decode(e),c=s-a+1,l=M.encodeAddress(i,a),u=r===`shared`,d;d=typeof n==`function`?n:Array.isArray(n)?Array.isArray(n[0])?(e,t)=>n[e-i][t-a]:(e,t)=>n[(e-i)*c+(t-a)]:()=>void 0;let f=!0;for(let n=i;n<=o;n++)for(let i=a;i<=s;i++)if(f){let a=this.getCell(n,i);a.value={shareType:r,formula:t,ref:e,result:d(n,i)},f=!1}else this.getCell(n,i).value=u?{sharedFormula:l,result:d(n,i)}:d(n,i)}addImage(e,t){let n={type:`image`,imageId:String(e),range:t};this._media.push(new Cg(this,n))}getImages(){return this._media.filter(e=>e.type===`image`)}addBackgroundImage(e){let t={type:`background`,imageId:String(e)};this._media.push(new Cg(this,t))}getBackgroundImageId(){let e=this._media.find(e=>e.type===`background`);return e&&e.imageId}addWatermark(e){if(this._media=this._media.filter(e=>e.type!==`watermark`&&e.type!==`headerImage`),this._watermark={imageId:String(e.imageId),mode:e.mode??`overlay`,opacity:e.opacity,headerWidth:e.headerWidth,headerHeight:e.headerHeight,applyTo:e.applyTo},this._watermark.mode===`overlay`){let t={type:`watermark`,imageId:String(e.imageId),opacity:e.opacity};this._media.push(new Cg(this,t))}else{let t={type:`headerImage`,imageId:String(e.imageId),headerWidth:e.headerWidth,headerHeight:e.headerHeight,applyTo:e.applyTo};this._media.push(new Cg(this,t))}}getWatermark(){return this._watermark}removeWatermark(){this._watermark=null,this._media=this._media.filter(e=>e.type!==`watermark`&&e.type!==`headerImage`)}addFormCheckbox(e,t){let n=new Sg(this,e,t);return this.formControls.push(n),n}getFormCheckboxes(){return this.formControls}async protect(e,t){this.sheetProtection=await cm(e,t)}unprotect(){this.sheetProtection=null}addTable(e){let t=new Ug(this,e),n=t.name.toLowerCase();if(this.tables[t.name])throw new Lr(`Table name "${t.name}" already exists in worksheet "${this.name}".`);if(this.workbook._tableNames.has(n))throw new Lr(`Table name "${t.name}" already exists in another worksheet. Table names must be unique across the entire workbook (case-insensitive).`);return this.tables[t.name]=t,this.workbook._tableNames.add(n),t}getTable(e){return this.tables[e]}removeTable(e){this.tables[e]&&this.workbook._tableNames.delete(e.toLowerCase()),delete this.tables[e]}getTables(){return Object.values(this.tables)}addPivotTable(e){let t=jg(this,e);return this.pivotTables.push(t),this.workbook.pivotTables.push(t),t}addConditionalFormatting(e){this.conditionalFormattings.push(e)}removeConditionalFormatting(e){typeof e==`number`?this.conditionalFormattings.splice(e,1):e instanceof Function?this.conditionalFormattings=this.conditionalFormattings.filter(e):this.conditionalFormattings=[]}autoFitColumn(e){let t=typeof e==`string`?M.l2n(e):e;return this._autoFitColumnImpl(t),this}autoFitColumns(e,t){let n=this.dimensions;if(!n||n.left===void 0)return this;let r=e==null?n.left:typeof e==`string`?M.l2n(e):e,i=t==null?n.right:typeof t==`string`?M.l2n(t):t;for(let e=r;e<=i;e++)this._autoFitColumnImpl(e);return this}autoFitRow(e){return this._autoFitRowImpl(e),this}autoFitRows(e,t){let n=this.dimensions;if(!n||n.top===void 0)return this;let r=e??n.top,i=t??n.bottom;for(let e=r;e<=i;e++)this._autoFitRowImpl(e);return this}_autoFitColumnImpl(e){let t=A_(),n=this._isColumnInAutoFilter(e),r=0;if(this._rows.forEach(n=>{if(!n||n.hidden)return;let i=n.findCell(e);if(!i||i.type===1)return;if(i.isMerged){let e=this._merges[i.address];if(e&&e.left!==e.right)return}if(i.alignment?.shrinkToFit)return;let a=W_(i),o=i.alignment?.indent;o&&o>0&&(a+=o*3*t),a>r&&(r=a)}),r>0){let i=F_(r,t,n);if(i>0){let t=this.getColumn(e);t.width=i,t.bestFit=!0}}}_autoFitRowImpl(e){let t=this._rows[e-1];if(!t)return;let n=A_(),r=0;t.eachCell(e=>{if(e.type===1)return;if(e.isMerged){let t=this._merges[e.address];if(t&&t.top!==t.bottom)return}if(this._columns[e.col-1]?.hidden)return;let t=G_(e,n,this._getColumnContentWidthForCell(e,n));t>r&&(r=t)}),r>0&&(t.height=Math.ceil(r*4)/4,t.customHeight=!0)}_getColumnContentWidthForCell(e,t){if(e.alignment?.wrapText)return U_(this._columns[e.col-1]?.width??this.properties.defaultColWidth??9,t)}_isColumnInAutoFilter(e){if(!this.autoFilter)return!1;if(typeof this.autoFilter==`string`){let t=M.decode(this.autoFilter);return e>=t.left&&e<=t.right}let{from:t,to:n}=this.autoFilter,r=typeof t==`string`?M.decode(t).col:t.col,i=typeof n==`string`?M.decode(n).col:n.col;return e>=r&&e<=i}get model(){let e={id:this.id,name:this.name,dataValidations:this.dataValidations.model,properties:this.properties,state:this.state,pageSetup:this.pageSetup,headerFooter:this.headerFooter,rowBreaks:this.rowBreaks,colBreaks:this.colBreaks,views:this.views,autoFilter:this.autoFilter,media:this._media.map(e=>e.model),sheetProtection:this.sheetProtection,tables:Object.values(this.tables).map(e=>e.model),pivotTables:this.pivotTables,conditionalFormattings:this.conditionalFormattings,formControls:this.formControls.map(e=>e.model),ignoredErrors:this.ignoredErrors,watermark:this._watermark,drawing:this._drawing};e.cols=gc.toModel(this.columns);let t=e.rows=[],n=e.dimensions=new N;return this._rows.forEach(e=>{let r=e&&e.model;r&&(n.expand(r.number,r.min,r.number,r.max),t.push(r))}),e.mergeCells=Object.values(this._merges).map(e=>e.range),e}_parseRows(e){this._rows=[],e.rows&&e.rows.forEach(e=>{let t=new Ql(this,e.number);this._rows[t.number-1]=t,t.model=e})}_parseMergeCells(e){e.mergeCells&&e.mergeCells.forEach(e=>{this.mergeCellsWithoutStyle(e)})}set model(e){if(this.name=e.name,this.state=e.state,this._columns=gc.fromModel(this,e.cols??[]),this._parseRows(e),this._parseMergeCells(e),this.dataValidations=new zp(e.dataValidations),this.properties=e.properties,this.pageSetup=e.pageSetup,this.headerFooter=e.headerFooter,this.rowBreaks=e.rowBreaks??[],this.colBreaks=e.colBreaks??[],this.views=e.views,this.autoFilter=e.autoFilter,this._media=e.media.map(e=>new Cg(this,e)),this._watermark=e.watermark??null,!this._watermark){for(let e of this._media)if(e.type===`watermark`){this._watermark={imageId:e.imageId??``,mode:`overlay`,opacity:e.opacity};break}else if(e.type===`headerImage`){this._watermark={imageId:e.imageId??``,mode:`header`,headerWidth:e.headerWidth,headerHeight:e.headerHeight};break}}this.sheetProtection=e.sheetProtection,this.tables=e.tables.reduce((e,t)=>{let n=new Ug(this,t);return n.model=t,e[t.name]=n,this.workbook._tableNames.add(t.name.toLowerCase()),e},{}),this.pivotTables=e.pivotTables,this.conditionalFormattings=e.conditionalFormattings,this.ignoredErrors=e.ignoredErrors??[],this.formControls=[],this._drawing=e.drawing}toJSON(e){let t=e||{},n=1,r=this.rowCount,i=1,a=this.columnCount;if(t.range!==void 0){if(typeof t.range==`number`)n=t.range+1;else if(typeof t.range==`string`){let e=Xg(t.range);n=e.s.r+1,r=e.e.r+1,i=e.s.c+1,a=e.e.c+1}}if(r<n||a<i)return[];let o=t.header;if(o===1){let e=[],o=t.blankRows!==!1;for(let s=n;s<=r;s++){let n=[],r=!0;for(let e=i;e<=a;e++){let a=this.getCell(s,e),o=t.raw===!1?jl(a,t.dateFormat).trim():a.value;o!=null&&o!==``?(n[e-i]=o,r=!1):t.defaultValue===void 0?n[e-i]=null:n[e-i]=t.defaultValue}(!r||o)&&e.push(n)}return e}if(o===`A`){let e=[],o=t.blankRows===!0;for(let s=n;s<=r;s++){let n={},r=!0;for(let e=i;e<=a;e++){let i=this.getCell(s,e),a=t.raw===!1?jl(i,t.dateFormat).trim():i.value,o=Gg(e-1);a!=null&&a!==``?(n[o]=a,r=!1):t.defaultValue!==void 0&&(n[o]=t.defaultValue)}(!r||o)&&e.push(n)}return e}if(Array.isArray(o)){let e=[],s=t.blankRows===!0;for(let c=n;c<=r;c++){let n={},r=!0;for(let e=i;e<=a;e++){let a=e-i,s=o[a]??`__EMPTY_${a}`,l=this.getCell(c,e),u=t.raw===!1?jl(l,t.dateFormat).trim():l.value;u!=null&&u!==``?(n[s]=u,r=!1):t.defaultValue!==void 0&&(n[s]=t.defaultValue)}(!r||s)&&e.push(n)}return e}let s=[],c={};for(let e=i;e<=a;e++){let t=this.getCell(n,e).value,r=t==null?`__EMPTY_${e-i}`:String(t);c[r]===void 0?c[r]=0:(c[r]++,r=`${r}_${c[r]}`),s.push(r)}let l=[],u=n+1,d=t.blankRows===!0;for(let e=u;e<=r;e++){let n={},r=!0;for(let o=i;o<=a;o++){let a=this.getCell(e,o),c=t.raw===!1?jl(a,t.dateFormat).trim():a.value,l=s[o-i];c!=null&&c!==``?(n[l]=c,r=!1):t.defaultValue!==void 0&&(n[l]=t.defaultValue)}(!r||d)&&l.push(n)}return l}addJSON(e,t){if(e.length===0)return this;let n=t||{},r=1,i=1;if(n.origin!==void 0){let e=q_(n.origin,this.rowCount);r=e.row,i=e.col}let a=new Set;e.forEach(e=>Object.keys(e).forEach(e=>a.add(e)));let o=n.header?[...n.header]:[...a];n.header&&a.forEach(e=>{o.includes(e)||o.push(e)});let s=r;n.skipHeader||(o.forEach((e,t)=>{this.getCell(s,i+t).value=e}),s++);for(let t of e)o.forEach((e,r)=>{let a=t[e];a===null&&n.nullError?this.getCell(s,i+r).value={error:`#NULL!`}:a!=null&&(this.getCell(s,i+r).value=a)}),s++;return this}toAOA(){let e=[];return this.eachRow({includeEmpty:!0},(t,n)=>{let r=[];t.eachCell({includeEmpty:!0},(e,t)=>{r[t-1]=e.value}),e[n-1]=r}),e}addAOA(e,t){if(e.length===0)return this;let n=1,r=1;if(t?.origin!==void 0){let e=q_(t.origin,this.rowCount);n=e.row,r=e.col}return e.forEach((e,t)=>{e&&e.forEach((e,i)=>{e!=null&&(this.getCell(n+t,r+i).value=e)})}),this}};function q_(e,t){if(typeof e==`string`){let t=Jg(e);return{row:t.r+1,col:t.c+1}}return typeof e==`number`?e===-1?{row:t+1,col:1}:{row:e+1,col:1}:{row:e.r+1,col:e.c+1}}let J_=BigInt(2**53-1);function Y_(e,t){if(e>J_)throw Error(`ZIP64 ${t} value ${e} exceeds Number.MAX_SAFE_INTEGER. The archive may be corrupted or malicious.`);return Number(e)}function X_(e){return e.encoding?da(e.encoding):void 0}function Z_(e,t=!1){for(let n=e.length-22;n>=0;n--)if(e[n]===80&&e[n+1]===75&&e[n+2]===5&&e[n+3]===6)if(t){let t=e[n+20]|e[n+21]<<8;if(n+22+t===e.length)return n}else return n;return-1}function Q_(e,t){let n=t-20;return n<0?-1:e[n]===80&&e[n+1]===75&&e[n+2]===6&&e[n+3]===7?n:-1}function $_(e,t,n=!0,r){let i=new ba(e,t);i.skip(4);let a=i.readUint16(),o=i.readUint16(),s=i.readUint16(),c=i.readUint16(),l=i.readUint32(),u=i.readUint32(),d=i.readUint16(),f=``;if(d>0){let e=i.readBytes(d);n&&(f=r?r.decode(e):wn(e))}return{eocd:{diskNumber:a,centralDirDisk:o,entriesOnDisk:s,totalEntries:c,centralDirSize:l,centralDirOffset:u},comment:f}}function ev(e,t){let n=new ba(e,t);return n.readUint32()===117853008?(n.skip(4),Y_(n.readBigUint64(),`EOCD locator offset`)):-1}function tv(e,t){let n=new ba(e,t);return n.readUint32()===101075792?(n.skip(8),n.skip(2),n.skip(2),n.skip(4),n.skip(4),{entriesOnDisk:n.readBigUint64(),totalEntries:n.readBigUint64(),centralDirSize:n.readBigUint64(),centralDirOffset:n.readBigUint64()}):null}function nv(e,t){e.totalEntries===65535&&(e.totalEntries=Y_(t.totalEntries,`totalEntries`)),e.entriesOnDisk===65535&&(e.entriesOnDisk=Y_(t.entriesOnDisk,`entriesOnDisk`)),e.centralDirSize===4294967295&&(e.centralDirSize=Y_(t.centralDirSize,`centralDirSize`)),e.centralDirOffset===4294967295&&(e.centralDirOffset=Y_(t.centralDirOffset,`centralDirOffset`))}function rv(e,t,n){let r=e.readUint16();e.skip(2);let i=e.readUint16(),a=e.readUint16(),o=e.readUint16(),s=e.readUint16(),c=e.readUint32(),l=e.readUint32(),u=e.readUint32(),d=e.readUint16(),f=e.readUint16(),p=e.readUint16();e.skip(2),e.skip(2);let m=e.readUint32(),h=e.readUint32(),g=d>0?e.readBytes(d):new Uint8Array,_={},v=new Uint8Array;if(f>0){v=e.readBytes(f);let t={compressedSize:l,uncompressedSize:u,offsetToLocalFileHeader:h};_=vo(v,t),l=t.compressedSize,u=t.uncompressedSize,h=t.offsetToLocalFileHeader??h}let y=p>0?e.readBytes(p):new Uint8Array,b=t?ha(g,i,_,n):``,x=t?ga(y,i,_,n):``,S=ko(m),C=r>>8&255,ee=Ao(S),te=jo(S)||C===0&&(m&16)!=0||b.endsWith(`/`),ne=(i&1)!=0,re=ee?`symlink`:te?`directory`:`file`,ie=_.mtimeUnixSeconds,ae=Aa(s,o,ie),oe=`none`,se,ce,le;return ne&&(a===99&&_.aesInfo?(oe=`aes`,se=_.aesInfo.version,ce=_.aesInfo.keyStrength,le=_.aesInfo.compressionMethod):oe=`zipcrypto`),{path:b,type:re,compressedSize:l,compressedSize64:_.compressedSize64,uncompressedSize:u,uncompressedSize64:_.uncompressedSize64,compressionMethod:a,crc32:c,lastModified:ae,localHeaderOffset:h,localHeaderOffset64:_.offsetToLocalFileHeader64,comment:x,externalAttributes:m,mode:S,versionMadeBy:r,extraField:v,isEncrypted:ne,encryptionMethod:oe,aesVersion:se,aesKeyStrength:ce,originalCompressionMethod:le,dosTime:o}}function iv(e,t,n,r={}){let i=r.decodeStrings??!0,a=X_(r);if(n===0)return[];let o=Array(n),s=new ba(e,t);for(let e=0;e<n;e++){if(s.readUint32()!==33639248)throw Error(`Invalid Central Directory header signature at entry ${e}`);o[e]=rv(s,i,a)}return o}function av(e,t={}){let n=t.decodeStrings??!0,r=X_(t),i=Z_(e);if(i===-1)throw Error(`Invalid ZIP file: End of Central Directory not found`);let{eocd:a,comment:o}=$_(e,i,n,r),s=Q_(e,i);if(s!==-1){let t=ev(e,s);if(t>=0){let n=tv(e,t);n&&nv(a,n)}}return{entries:iv(e,a.centralDirOffset,a.totalEntries,t),comment:o}}let ov=512*1024*1024;async function sv(e,t,n,r=!1,i=!0){let a;if(i&&e.uncompressedSize>ov)throw Error(`Entry "${e.path}" declares uncompressed size of ${e.uncompressedSize} bytes, which exceeds the maximum allowed size of ${ov} bytes. Use the streaming API for large entries.`);if(e.isEncrypted){if(!n)throw new Xi(e.path);if(e.encryptionMethod===`aes`&&e.aesKeyStrength){let r=await co(t,n,e.aesKeyStrength);if(!r)throw new Yi(e.path);a=await lv(r,e.originalCompressionMethod??0,e.path)}else if(e.encryptionMethod===`zipcrypto`){let r=ip(t,n,e.crc32,e.dosTime);if(!r)throw new Yi(e.path);a=await lv(r,e.compressionMethod,e.path)}else throw new Yi(e.path,`Unsupported encryption method`)}else a=await lv(t,e.compressionMethod,e.path);if(i&&a.length!==e.uncompressedSize){let t=a.length>e.uncompressedSize?`too-many-bytes`:`too-few-bytes`;throw new Ji(e.path,e.uncompressedSize,a.length,t)}if(e.encryptionMethod===`zipcrypto`||r&&e.encryptionMethod!==`aes`){let t=na(a);if(t!==e.crc32)throw new qi(e.path,e.crc32,t)}return a}function cv(e,t,n,r=!0){let i;if(r&&e.uncompressedSize>ov)throw Error(`Entry "${e.path}" declares uncompressed size of ${e.uncompressedSize} bytes, which exceeds the maximum allowed size of ${ov} bytes. Use the streaming API for large entries.`);if(e.isEncrypted){if(!n)throw new Xi(e.path);if(e.encryptionMethod===`aes`)throw Error(`File "${e.path}" uses AES encryption. Use the async extract() method instead of extractSync().`);if(e.encryptionMethod===`zipcrypto`){let r=ip(t,n,e.crc32,e.dosTime);if(!r)throw new Yi(e.path);i=uv(r,e.compressionMethod,e.path);let a=na(i);if(a!==e.crc32)throw new qi(e.path,e.crc32,a)}else throw new Yi(e.path,`Unsupported encryption method`)}else i=uv(t,e.compressionMethod,e.path);if(r&&i.length!==e.uncompressedSize){let t=i.length>e.uncompressedSize?`too-many-bytes`:`too-few-bytes`;throw new Ji(e.path,e.uncompressedSize,i.length,t)}return i}async function lv(e,t,n){if(t===0)return e;if(t===8)return Rf(e);throw new Zi(t)}function uv(e,t,n){if(t===0)return e;if(t===8)return zf(e);throw new Zi(t)}function dv(e,t){if(e.readUint32()!==67324752)throw Error(`Invalid local file header signature at offset ${t}`);e.skip(2),e.skip(2),e.skip(2),e.skip(2),e.skip(2),e.skip(4),e.skip(4),e.skip(4);let n=e.readUint16(),r=e.readUint16();return e.skip(n),e.skip(r),e.position}function fv(e,t){let n=dv(new ba(e,t.localHeaderOffset),t.localHeaderOffset);return e.subarray(n,n+t.compressedSize)}let pv=BigInt(2**53-1);function mv(e){if(e.uncompressedSize64!==void 0&&e.uncompressedSize64>pv||e.compressedSize64!==void 0&&e.compressedSize64>pv)throw Error(`File "${e.path}" is too large to extract into memory (ZIP64 size > 2^53-1)`);if(e.localHeaderOffset64!==void 0&&e.localHeaderOffset64>pv)throw Error(`File "${e.path}" has a ZIP64 offset > 2^53-1 and cannot be extracted by the in-memory parser`)}function hv(e,t={}){return av(e,{decodeStrings:t.decodeStrings,encoding:t.encoding})}async function gv(e,t,n={}){return t.type===`directory`?P:(mv(t),sv(t,fv(e,t),n.password))}function _v(e,t,n={}){return t.type===`directory`?P:(mv(t),cv(t,fv(e,t),n.password))}var vv=class{constructor(e,t={}){this.data=e instanceof ArrayBuffer?new Uint8Array(e):e;let n=hv(this.data,t);this.entries=n.entries,this.archiveComment=n.comment,this.entryMap=new Map(this.entries.map(e=>[e.path,e])),this.password=t.password}setPassword(e){this.password=e}getEntries(){return this.entries}getEntry(e){return this.entryMap.get(e)}getRawCompressedData(e){let t=this.entryMap.get(e);return t?fv(this.data,t):null}getRawEntry(e){let t=this.entryMap.get(e);return t?{info:t,compressedData:fv(this.data,t)}:null}hasEntry(e){return this.entryMap.has(e)}childCount(e){let t=this.entryMap.get(e);if(t&&t.type!==`directory`)return 0;let n=e.endsWith(`/`)?e:e+`/`,r=t?.type===`directory`?t:this.entryMap.get(n),i=(r?.path??n).endsWith(`/`)?r?.path??n:(r?.path??n)+`/`,a=0;for(let e of this.entries)e.path.startsWith(i)&&e.path!==i&&a++;return a}getZipComment(){return this.archiveComment}hasEncryptedEntries(){return this.entries.some(e=>e.isEncrypted)}getEncryptedEntries(){return this.entries.filter(e=>e.isEncrypted)}listFiles(){return this.entries.map(e=>e.path)}async extract(e,t){let n=this.entryMap.get(e);return n?gv(this.data,n,{password:t??this.password}):null}extractSync(e,t){let n=this.entryMap.get(e);return n?_v(this.data,n,{password:t??this.password}):null}async extractAll(e){let t=new Map,n=e??this.password;for(let e of this.entries){let r=await gv(this.data,e,{password:n});t.set(e.path,r)}return t}extractAllSync(e){let t={},n=e??this.password;for(let e of this.entries)t[e.path]=_v(this.data,e,{password:n});return t}async forEach(e,t){let n=t??this.password;for(let t of this.entries){let r=null;if(await e(t,()=>(r||=gv(this.data,t,{password:n}),r))===!1)break}}};let yv=/\[([^\]\\/:*?"<>|\s]+)\]([A-Za-z_\u00A1-\uFFFF][A-Za-z0-9_\u00A1-\uFFFF.]*)!/g,bv=/'\[([^\]]+)\]((?:''|[^'])+)'!/g;function xv(e){if(e.indexOf(`[`)===-1)return[];let t=[],n=Cv(e),r=(e,r,i,a,o,s)=>{if(wv(e,n))return;let c=/^\d+$/.test(i);t.push({match:s,workbook:i,numeric:c,index:c?parseInt(i,10):null,sheet:Tv(a),quoted:o,start:e,end:r})};yv.lastIndex=0;let i;for(;(i=yv.exec(e))!==null;)r(i.index,i.index+i[0].length,i[1],i[2],!1,i[0]);for(bv.lastIndex=0;(i=bv.exec(e))!==null;)r(i.index,i.index+i[0].length,i[1],i[2],!0,i[0]);t.sort((e,t)=>e.start-t.start);let a=[],o=-1;for(let e of t)e.start>=o&&(a.push(e),o=e.end);return a}function Sv(e,t){let n=xv(e);if(n.length===0)return e;let r=``,i=0;for(let a of n){let n=t(a);if(n!==null){if(r+=e.slice(i,a.start),a.quoted){let t=e.slice(a.start+1,a.end-2);r+=`'`+t.replace(/^\[[^\]]*\]/,`[${n}]`)+`'!`}else r+=`[${n}]${a.match.slice(a.match.indexOf(`]`)+1)}`;i=a.end}}return r+=e.slice(i),r}function Cv(e){if(e.indexOf(`"`)===-1)return[];let t=[],n=e.length,r=0;for(;r<n;)if(e[r]===`"`){let i=r;for(r++;r<n;){if(e[r]===`"`){if(r+1<n&&e[r+1]===`"`){r+=2;continue}r++;break}r++}t.push([i,r])}else r++;return t}function wv(e,t){for(let[n,r]of t)if(e>=n&&e<r)return!0;return!1}function Tv(e){return e.replace(/''/g,`'`)}let Ev=new Map([[/^xl\/charts\/chart\d+\.xml$/,`application/vnd.openxmlformats-officedocument.drawingml.chart+xml`],[/^xl\/charts\/style\d+\.xml$/,`application/vnd.ms-office.chartstyle+xml`],[/^xl\/charts\/colors\d+\.xml$/,`application/vnd.ms-office.chartcolorstyle+xml`]]),Dv=[`xl/charts/`];var Ov=class e{constructor(){this.files=new Map}static isPassthroughPath(e){return Dv.some(t=>e.startsWith(t))}static getContentType(e){if(!e.startsWith(`xl/charts/_rels/`)){for(let[t,n]of Ev)if(t.test(e))return n}}add(e,t){this.files.set(e,t)}get(e){return this.files.get(e)}has(e){return this.files.has(e)}getPaths(){return[...this.files.keys()]}toRecord(){let e={};for(let[t,n]of this.files)e[t]=n;return e}fromRecord(e){this.files.clear();for(let[t,n]of Object.entries(e))this.files.set(t,n)}getContentTypes(){let t=[];for(let n of this.files.keys()){let r=e.getContentType(n);r&&t.push({partName:n,contentType:r})}return t}writeToZip(e){for(let[t,n]of this.files)e.append(n,{name:t})}clear(){this.files.clear()}get size(){return this.files.size}};let kv={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`};var Av=class extends U{constructor(...e){super(...e),this.sheetNamesByIndex=[],this.currentSheetCells=null,this.currentSheetName=null,this.currentCellAddress=null,this.currentCellType=`n`,this.currentCellValue=null,this.inV=!1}get tag(){return`externalLink`}reset(){super.reset(),this.sheetNamesByIndex=[],this.currentSheetCells=null,this.currentSheetName=null,this.currentCellAddress=null,this.currentCellType=`n`,this.currentCellValue=null,this.inV=!1}render(e,t){if(e.openXml(z),e.openNode(`externalLink`,kv),e.openNode(`externalBook`,{"r:id":`rId1`}),t.sheetNames.length>0){e.openNode(`sheetNames`);for(let n of t.sheetNames)e.leafNode(`sheetName`,{val:n});e.closeNode()}let n=t.cachedValues??{};if(Object.keys(n).some(e=>{let t=n[e];return t&&Object.keys(t).length>0})){e.openNode(`sheetDataSet`);for(let r=0;r<t.sheetNames.length;r++){let i=n[t.sheetNames[r]];!i||Object.keys(i).length===0||jv(e,r,i)}e.closeNode()}e.closeNode(),e.closeNode()}parseOpen(e){switch(e.name){case`externalLink`:return this.model={externalBookRId:``,sheetNames:[],cachedValues:{}},this.sheetNamesByIndex=[],!0;case`externalBook`:return this.model&&(this.model.externalBookRId=e.attributes[`r:id`]??``),!0;case`sheetName`:if(this.model){let t=e.attributes.val??``;this.model.sheetNames.push(t),this.sheetNamesByIndex.push(t)}return!0;case`sheetData`:{let t=e.attributes.sheetId,n=t===void 0?NaN:parseInt(t,10);return this.currentSheetName=Number.isFinite(n)?this.sheetNamesByIndex[n]??null:null,this.currentSheetCells=this.currentSheetName?{}:null,!0}case`cell`:return this.currentCellAddress=e.attributes.r??null,this.currentCellType=e.attributes.t??`n`,this.currentCellValue=null,!0;case`v`:return this.inV=!0,this.currentCellValue=``,!0;default:return!1}}parseText(e){this.inV&&(this.currentCellValue=(this.currentCellValue??``)+e)}parseClose(e){switch(e){case`v`:return this.inV=!1,!0;case`cell`:return this.model&&this.currentSheetCells&&this.currentCellAddress&&(this.currentSheetCells[this.currentCellAddress.toUpperCase()]=Rv(this.currentCellType,this.currentCellValue)),this.currentCellAddress=null,this.currentCellType=`n`,this.currentCellValue=null,!0;case`sheetData`:return this.model&&this.currentSheetName&&this.currentSheetCells&&Object.keys(this.currentSheetCells).length>0&&(this.model.cachedValues[this.currentSheetName]=this.currentSheetCells),this.currentSheetName=null,this.currentSheetCells=null,!0;case`externalLink`:return!1;default:return!0}}};function jv(e,t,n){let r=Mv(n);e.openNode(`sheetData`,{sheetId:t});for(let t of r){e.openNode(`row`,{r:t.rowNum});for(let{address:n,value:r}of t.cells)Fv(e,n,r);e.closeNode()}e.closeNode()}function Mv(e){let t=new Map;for(let n of Object.keys(e)){let r=n.toUpperCase(),i=Nv(r);if(i===void 0)continue;let a=t.get(i);a||(a={rowNum:i,cells:[]},t.set(i,a)),a.cells.push({address:Pv(r),value:e[n]})}return[...t.values()].sort((e,t)=>e.rowNum-t.rowNum)}function Nv(e){let t=/^\$?[A-Z]+\$?(\d+)$/.exec(e);return t?parseInt(t[1],10):void 0}function Pv(e){return e.replace(/\$/g,``)}function Fv(e,t,n){if(n==null){e.leafNode(`cell`,{r:t});return}if(typeof n==`number`){e.openNode(`cell`,{r:t}),e.leafNode(`v`,void 0,String(n)),e.closeNode();return}if(typeof n==`boolean`){e.openNode(`cell`,{r:t,t:`b`}),e.leafNode(`v`,void 0,n?`1`:`0`),e.closeNode();return}if(Lv(n)){e.openNode(`cell`,{r:t,t:`e`}),e.leafNode(`v`,void 0,n),e.closeNode();return}e.openNode(`cell`,{r:t,t:`str`}),e.leafNode(`v`,void 0,n),e.closeNode()}let Iv=new Set([`#NULL!`,`#DIV/0!`,`#VALUE!`,`#REF!`,`#NAME?`,`#NUM!`,`#N/A`,`#GETTING_DATA`,`#SPILL!`,`#CALC!`,`#CONNECT!`,`#BLOCKED!`,`#UNKNOWN!`,`#FIELD!`,`#PYTHON!`]);function Lv(e){return Iv.has(e)}function Rv(e,t){if(t===null||t===``)return null;switch(e){case`b`:return t!==`0`&&t.toLowerCase()!==`false`;case`e`:return t;case`str`:return t;default:{let e=Number(t);return Number.isFinite(e)?e:t}}}let zv=`Author`;var Bv=class e extends U{constructor(){super(),this._authors=[],this._inAuthors=!1,this._inAuthor=!1,this._currentAuthor=``,this.map={comment:new Hp},this.model={comments:[]}}render(t,n){let r=n||this.model;t.openXml(z),t.openNode(`comments`,e.COMMENTS_ATTRIBUTES);let i=new Set;for(let e of r.comments)i.add(e.author??zv);let a=[...i];t.openNode(`authors`);for(let e of a)t.leafNode(`author`,null,e);t.closeNode(),t.openNode(`commentList`),r.comments.forEach(e=>{let n=a.indexOf(e.author??zv);this.map.comment.render(t,{...e,authorId:n>=0?n:0})}),t.closeNode(),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case`authors`:return this._inAuthors=!0,this._authors=[],!0;case`author`:return this._inAuthors&&(this._inAuthor=!0,this._currentAuthor=``),!0;case`commentList`:return this.model={comments:[]},!0;case`comment`:return this.parser=this.map.comment,this.parser.parseOpen(e),!0;default:return!1}}parseText(e){this._inAuthor?this._currentAuthor+=e:this.parser&&this.parser.parseText(e)}parseClose(e){switch(e){case`authors`:return this._inAuthors=!1,!0;case`author`:return this._inAuthors&&(this._authors.push(this._currentAuthor),this._inAuthor=!1,this._currentAuthor=``),!0;case`commentList`:for(let e of this.model.comments){let{authorId:t}=e;t!=null&&t>=0&&t<this._authors.length&&(e.author=this._authors[t])}return!1;case`comment`:return this.model.comments.push(this.parser.model),this.parser=void 0,!0;default:return this.parser&&this.parser.parseClose(e),!0}}static{this.COMMENTS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}},Vv=class extends U{_checkedToXmlValue(e){switch(e){case`Checked`:return`1`;case`Mixed`:return`2`;default:return`0`}}get tag(){return`formControlPr`}render(e,t){let n=t||this.model,r={xmlns:`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`,objectType:`CheckBox`,checked:this._checkedToXmlValue(n.checked),lockText:`1`};n.link&&(r.fmlaLink=n.link),n.noThreeD&&(r.noThreeD=`1`),e.openXml({version:`1.0`,encoding:`UTF-8`,standalone:`yes`}),e.leafNode(this.tag,r)}toXml(e){let t=new Sd;return this.render(t,e),t.xml}parseOpen(){return!0}parseText(){}parseClose(){return!1}},Hv=class e extends U{constructor(){super(),this._parsingHeaderImage=!1,this.map={"v:shape":new Yp},this.model={comments:[],formControls:[]}}get tag(){return`xml`}render(t,n){let r=n||this.model,i=r.comments,a=r.formControls,o=r.headerImage,s=i&&i.length>0,c=a&&a.length>0,l=!!o;if(t.openXml(z),t.openNode(this.tag,e.DRAWING_ATTRIBUTES),t.openNode(`o:shapelayout`,{"v:ext":`edit`}),t.leafNode(`o:idmap`,{"v:ext":`edit`,data:1}),t.closeNode(),s&&(t.openNode(`v:shapetype`,{id:`_x0000_t202`,coordsize:`21600,21600`,"o:spt":202,path:`m,l,21600r21600,l21600,xe`}),t.leafNode(`v:stroke`,{joinstyle:`miter`}),t.leafNode(`v:path`,{gradientshapeok:`t`,"o:connecttype":`rect`}),t.closeNode()),c&&(t.openNode(`v:shapetype`,{id:`_x0000_t201`,coordsize:`21600,21600`,"o:spt":`201`,path:`m,l,21600r21600,l21600,xe`}),t.leafNode(`v:stroke`,{joinstyle:`miter`}),t.leafNode(`v:path`,{shadowok:`f`,"o:extrusionok":`f`,strokeok:`f`,fillok:`f`,"o:connecttype":`rect`}),t.leafNode(`o:lock`,{"v:ext":`edit`,shapetype:`t`}),t.closeNode()),l&&(t.openNode(`v:shapetype`,{id:`_x0000_t75`,coordsize:`21600,21600`,"o:spt":`75`,"o:preferrelative":`t`,path:`m@4@5l@4@11@9@11@9@5xe`,filled:`f`,stroked:`f`}),t.leafNode(`v:stroke`,{joinstyle:`miter`}),t.openNode(`v:formulas`),t.leafNode(`v:f`,{eqn:`if lineDrawn pixelLineWidth 0`}),t.leafNode(`v:f`,{eqn:`sum @0 1 0`}),t.leafNode(`v:f`,{eqn:`sum 0 0 @1`}),t.leafNode(`v:f`,{eqn:`prod @2 1 2`}),t.leafNode(`v:f`,{eqn:`prod @3 21600 pixelWidth`}),t.leafNode(`v:f`,{eqn:`prod @3 21600 pixelHeight`}),t.leafNode(`v:f`,{eqn:`sum @0 0 1`}),t.leafNode(`v:f`,{eqn:`prod @6 1 2`}),t.leafNode(`v:f`,{eqn:`prod @7 21600 pixelWidth`}),t.leafNode(`v:f`,{eqn:`sum @8 21600 0`}),t.leafNode(`v:f`,{eqn:`prod @7 21600 pixelHeight`}),t.leafNode(`v:f`,{eqn:`sum @10 21600 0`}),t.closeNode(),t.leafNode(`v:path`,{"o:extrusionok":`f`,gradientshapeok:`t`,"o:connecttype":`rect`}),t.leafNode(`o:lock`,{"v:ext":`edit`,aspectratio:`t`}),t.closeNode()),s)for(let e=0;e<i.length;e++)this.map[`v:shape`].render(t,i[e],e);if(c)for(let e of a)this._renderCheckboxShape(t,e);l&&this._renderHeaderImageShape(t,o),t.closeNode()}_renderHeaderImageShape(e,t){let n=t.width??467.25,r=t.height??311.25;e.openNode(`v:shape`,{id:`CH`,"o:spid":`_x0000_s2049`,type:`#_x0000_t75`,style:`position:absolute;margin-left:0;margin-top:0;width:${n}pt;height:${r}pt;z-index:1`}),e.leafNode(`v:imagedata`,{"o:relid":t.imageRelId,"o:title":`watermark`}),e.leafNode(`o:lock`,{"v:ext":`edit`,rotation:`t`}),e.closeNode()}_renderCheckboxShape(e,t){let n={id:`_x0000_s${t.shapeId}`,type:`#_x0000_t201`,style:Sg.getVmlStyle(t),"o:insetmode":`auto`,fillcolor:`buttonFace [67]`,strokecolor:`windowText [64]`,"o:preferrelative":`t`,filled:`f`,stroked:`f`};e.openNode(`v:shape`,n),e.leafNode(`v:fill`,{"o:detectmouseclick":`t`}),e.leafNode(`o:lock`,{"v:ext":`edit`,text:`t`}),t.text&&(e.openNode(`v:textbox`,{style:`mso-direction-alt:auto`,"o:singleclick":`t`}),e.openNode(`div`,{style:`text-align:left`}),e.openNode(`font`,{face:`Tahoma`,size:`160`,color:`auto`}),e.writeText(t.text),e.closeNode(),e.closeNode(),e.closeNode()),e.openNode(`x:ClientData`,{ObjectType:`Checkbox`}),e.leafNode(`x:MoveWithCells`),e.leafNode(`x:SizeWithCells`),e.openNode(`x:Anchor`),e.writeText(Sg.getVmlAnchor(t)),e.closeNode(),e.leafNode(`x:Locked`,void 0,`False`),e.leafNode(`x:LockText`,void 0,`True`),e.leafNode(`x:PrintObject`,void 0,t.print?`True`:`False`),e.leafNode(`x:AutoFill`,void 0,`False`),e.leafNode(`x:AutoLine`,void 0,`False`),e.leafNode(`x:TextHAlign`,void 0,`Left`),e.leafNode(`x:TextVAlign`,void 0,`Center`),t.link&&e.leafNode(`x:FmlaLink`,void 0,t.link),t.noThreeD&&e.leafNode(`x:NoThreeD`),e.leafNode(`x:Checked`,void 0,String(Sg.getVmlCheckedValue(t))),e.leafNode(`x:Row`,void 0,String(t.tl.row)),e.leafNode(`x:Column`,void 0,String(t.tl.col)),e.closeNode(),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:this.reset(),this.model={comments:[],formControls:[]};break;case`v:shape`:if(e.attributes.type===`#_x0000_t75`){this._parsingHeaderImage=!0;let t=e.attributes.style||``,n=/width:([0-9.]+)pt/.exec(t),r=/height:([0-9.]+)pt/.exec(t);this._headerImageWidth=n?parseFloat(n[1]):void 0,this._headerImageHeight=r?parseFloat(r[1]):void 0}else this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break;default:this._parsingHeaderImage&&e.name===`v:imagedata`?this._headerImageRelId=e.attributes[`o:relid`]:(this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e));break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.comments.push(this.parser.model),this.parser=void 0),!0;switch(e){case`v:shape`:return this._parsingHeaderImage&&this._headerImageRelId&&(this.model.headerImage={imageRelId:this._headerImageRelId,width:this._headerImageWidth,height:this._headerImageHeight}),this._parsingHeaderImage=!1,this._headerImageRelId=void 0,this._headerImageWidth=void 0,this._headerImageHeight=void 0,!0;case this.tag:return!1;default:return!0}}static{this.DRAWING_ATTRIBUTES={"xmlns:v":`urn:schemas-microsoft-com:vml`,"xmlns:o":`urn:schemas-microsoft-com:office:office`,"xmlns:x":`urn:schemas-microsoft-com:office:excel`}}};function Uv(e){return isNaN(e.getTime())?``:e.toISOString().replace(/\.\d{3}Z$/,``)}function Wv(e){let t=R(e.name),n=e.numFmtId??`0`,r=Kv(e.extraAttrs),i=e.fieldGroupXml?`\n ${e.fieldGroupXml}`:``;if(e.sharedItems===null){if(e.isLoaded)return i?`<cacheField name="${t}" numFmtId="${n}"${r}>${i}\n </cacheField>`:`<cacheField name="${t}" numFmtId="${n}"${r} />`;let a;return a=e.minValue!==void 0&&e.maxValue!==void 0?` containsSemiMixedTypes="0" containsString="0" containsNumber="1"${e.containsInteger?` containsInteger="1"`:``} minValue="${e.minValue}" maxValue="${e.maxValue}"`:``,`<cacheField name="${t}" numFmtId="${n}"${r}>
|
|
406
406
|
<sharedItems${a} />${i}
|
|
407
407
|
</cacheField>`}if(e.isLoaded&&e.sharedItems.length===0)return`<cacheField name="${t}" numFmtId="${n}"${r}>
|
|
408
|
-
<sharedItems${
|
|
409
|
-
</cacheField>`;if(e.isLoaded){let a=
|
|
410
|
-
<sharedItems${
|
|
408
|
+
<sharedItems${qv(e)} />${i}
|
|
409
|
+
</cacheField>`;if(e.isLoaded){let a=Gv(e.sharedItems);return`<cacheField name="${t}" numFmtId="${n}"${r}>
|
|
410
|
+
<sharedItems${qv(e)} count="${e.sharedItems.length}">
|
|
411
411
|
${a}
|
|
412
412
|
</sharedItems>${i}
|
|
413
|
-
</cacheField>`}let a=!1,o=!1,s=!1,c=!1,l=!1,u=!1,d=!0,f=1/0,p=-1/0;for(let t of e.sharedItems)t===null?l=!0:t instanceof
|
|
413
|
+
</cacheField>`}let a=!1,o=!1,s=!1,c=!1,l=!1,u=!1,d=!0,f=1/0,p=-1/0;for(let t of e.sharedItems)t===null?l=!0:t instanceof wg?u=!0:typeof t==`string`?a=!0:typeof t==`number`?Number.isFinite(t)?(o=!0,t<f&&(f=t),t>p&&(p=t),Number.isInteger(t)||(d=!1)):l=!0:typeof t==`boolean`?s=!0:t instanceof Date&&(c=!0);let m=[];a||(m.push(`containsSemiMixedTypes="0"`),m.push(`containsString="0"`)),+!!a+ +!!o+ +!!s+ +!!c+ +!!u>1&&m.push(`containsMixedTypes="1"`),o&&(m.push(`containsNumber="1"`),d&&m.push(`containsInteger="1"`),m.push(`minValue="${f}"`),m.push(`maxValue="${p}"`)),c&&m.push(`containsDate="1"`),l&&m.push(`containsBlank="1"`);let h=Gv(e.sharedItems);return`<cacheField name="${t}" numFmtId="${n}"${r}>
|
|
414
414
|
<sharedItems${m.length>0?` ${m.join(` `)}`:``} count="${e.sharedItems.length}">
|
|
415
415
|
${h}
|
|
416
416
|
</sharedItems>${i}
|
|
417
|
-
</cacheField>`}function Kv(e){let t=[];for(let n of e)n===null?t.push(`<m />`):n instanceof Eg?t.push(`<e v="${R(n.code)}" />`):typeof n==`number`?Number.isFinite(n)?t.push(`<n v="${n}" />`):t.push(`<m />`):typeof n==`boolean`?t.push(`<b v="${n?`1`:`0`}" />`):n instanceof Date?t.push(`<d v="${Wv(n)}" />`):t.push(`<s v="${R(n)}" />`);return t.join(``)}function qv(e){return e?Object.entries(e).map(([e,t])=>` ${e}="${R(t)}"`).join(``):``}function Jv(e){let t=[];return e.containsSemiMixedTypes!==void 0&&t.push(`containsSemiMixedTypes="${e.containsSemiMixedTypes}"`),e.containsNonDate!==void 0&&t.push(`containsNonDate="${e.containsNonDate}"`),e.containsString!==void 0&&t.push(`containsString="${e.containsString}"`),e.containsBlank!==void 0&&t.push(`containsBlank="${e.containsBlank}"`),e.containsMixedTypes!==void 0&&t.push(`containsMixedTypes="${e.containsMixedTypes}"`),e.containsNumber!==void 0&&t.push(`containsNumber="${e.containsNumber}"`),e.containsInteger!==void 0&&t.push(`containsInteger="${e.containsInteger}"`),e.minValue!==void 0&&t.push(`minValue="${e.minValue}"`),e.maxValue!==void 0&&t.push(`maxValue="${e.maxValue}"`),e.containsDate!==void 0&&t.push(`containsDate="${e.containsDate}"`),t.length>0?` ${t.join(` `)}`:``}var Yv=class{constructor(e){this.active=!1,this.depth=0,this.buffer=[],this.lastOpenIndex=-1,this.rootTag=e}start(e){this.active=!0,this.depth=0;let t=Xv(e);this.buffer=[`<${this.rootTag}${t?` `+t:``}>`]}startAs(e,t){this.rootTag=e,this.start(t)}reset(){this.active=!1,this.depth=0,this.buffer.length=0,this.lastOpenIndex=-1}feedOpen(e,t){let n=Xv(t);this.buffer.push(`<${e}${n?` `+n:``}>`),this.depth++,this.lastOpenIndex=this.buffer.length-1}feedText(e){this.buffer.push(R(e)),this.lastOpenIndex=-1}feedClose(e){if(e===this.rootTag&&this.depth===0)return this.buffer.push(`</${e}>`),this.active=!1,this.lastOpenIndex=-1,!0;if(this.depth>0&&this.depth--,this.lastOpenIndex>=0&&this.lastOpenIndex===this.buffer.length-1){let e=this.buffer[this.lastOpenIndex];return this.buffer[this.lastOpenIndex]=e.slice(0,-1)+` />`,this.lastOpenIndex=-1,!1}return this.lastOpenIndex=-1,this.buffer.push(`</${e}>`),!1}get result(){return this.buffer.join(``)}};function Xv(e){if(!e)return``;let t=Object.entries(e);return t.length===0?``:t.filter(([,e])=>e!=null).map(([e,t])=>`${e}="${R(String(t))}"`).join(` `)}let Zv=new Set([`name`,`numFmtId`]);var Qv=class extends U{constructor(){super(),this.inSharedItems=!1,this.fieldGroupCollector=new Yv(`fieldGroup`),this.model=null}get tag(){return`cacheField`}reset(){this.model=null,this.inSharedItems=!1,this.fieldGroupCollector.reset()}parseOpen(e){let{name:t,attributes:n}=e;if(this.fieldGroupCollector.active)return this.fieldGroupCollector.feedOpen(t,n),!0;switch(t){case`cacheField`:{let e={};for(let[t,r]of Object.entries(n))Zv.has(t)||(e[t]=String(r));this.model={name:n.name??``,sharedItems:null,numFmtId:n.numFmtId,isLoaded:!0,extraAttrs:Object.keys(e).length>0?e:void 0};break}case`fieldGroup`:this.model&&this.fieldGroupCollector.start(n);break;case`sharedItems`:if(this.inSharedItems=!0,this.model){if(n.containsNumber!==void 0&&(this.model.containsNumber=n.containsNumber),n.containsInteger!==void 0&&(this.model.containsInteger=n.containsInteger),n.minValue!==void 0){let e=parseFloat(n.minValue);Number.isFinite(e)&&(this.model.minValue=e)}if(n.maxValue!==void 0){let e=parseFloat(n.maxValue);Number.isFinite(e)&&(this.model.maxValue=e)}n.containsSemiMixedTypes!==void 0&&(this.model.containsSemiMixedTypes=n.containsSemiMixedTypes),n.containsNonDate!==void 0&&(this.model.containsNonDate=n.containsNonDate),n.containsString!==void 0&&(this.model.containsString=n.containsString),n.containsBlank!==void 0&&(this.model.containsBlank=n.containsBlank),n.containsDate!==void 0&&(this.model.containsDate=n.containsDate),n.containsMixedTypes!==void 0&&(this.model.containsMixedTypes=n.containsMixedTypes),this.model.sharedItems=[]}break;case`s`:case`n`:case`b`:case`e`:case`m`:case`d`:this.inSharedItems&&this.model&&this.model.sharedItems!==null&&this.model.sharedItems.push($v(t,n));break}return!0}parseText(e){this.fieldGroupCollector.active&&this.fieldGroupCollector.feedText(e)}parseClose(e){if(this.fieldGroupCollector.active)return this.fieldGroupCollector.feedClose(e)&&(this.model&&(this.model.fieldGroupXml=this.fieldGroupCollector.result),this.fieldGroupCollector.reset()),!0;switch(e){case`cacheField`:return!1;case`sharedItems`:this.inSharedItems=!1;break}return!0}};function $v(e,t){switch(e){case`s`:return t.v??``;case`n`:return t.v===void 0||t.v===``?null:parseFloat(t.v);case`b`:return t.v===`1`;case`e`:return new Eg(t.v??``);case`m`:return null;case`d`:{if(!t.v)return null;let e=Mc(t.v);return isNaN(e.getTime())?null:e}default:return null}}let ey=new Set([`xmlns`,`xmlns:r`,`r:id`,`refreshOnLoad`,`createdVersion`,`refreshedVersion`,`minRefreshableVersion`,`recordCount`,`backgroundQuery`,`supportSubquery`,`supportAdvancedDrill`]);var ty=class e extends U{constructor(){super(),this.currentCacheField=null,this.inCacheFields=!1,this.inCacheSource=!1,this.extLstCollector=new Yv(`extLst`),this.unknownCollector=new Yv(``),this.unknownElementsXmlParts=[],this.cacheSourceChildCollector=new Yv(``),this.cacheSourceXmlParts=[],this.model=null}get tag(){return`pivotCacheDefinition`}reset(){this.model=null,this.currentCacheField=null,this.inCacheFields=!1,this.inCacheSource=!1,this.extLstCollector.reset(),this.unknownCollector.reset(),this.unknownElementsXmlParts=[],this.cacheSourceChildCollector.reset(),this.cacheSourceXmlParts=[]}render(e,t){`isLoaded`in t&&t.isLoaded||!(`source`in t)?this.renderLoaded(e,t):this.renderNew(e,t)}renderNew(t,n){let{source:r,cacheFields:i}=n,a=r.getSheetValues().slice(2).filter(Array.isArray).length;t.openXml(z),t.openNode(this.tag,{...e.PIVOT_CACHE_DEFINITION_ATTRIBUTES,"r:id":`rId1`,refreshOnLoad:`1`,createdVersion:`8`,refreshedVersion:`8`,minRefreshableVersion:`3`,recordCount:a}),t.openNode(`cacheSource`,{type:`worksheet`});let o=r.tableName?{name:r.tableName}:{ref:r.dimensions.shortRange,sheet:r.name};t.leafNode(`worksheetSource`,o),t.closeNode(),t.openNode(`cacheFields`,{count:i.length}),t.writeRaw(e.renderCacheFieldsXml(i)),t.closeNode(),t.closeNode()}renderLoaded(t,n){let{cacheFields:r,sourceRef:i,sourceSheet:a,sourceTableName:o,recordCount:s}=n;t.openXml(z);let c={...e.PIVOT_CACHE_DEFINITION_ATTRIBUTES,"r:id":n.rId??`rId1`};if(n.refreshOnLoad&&(c.refreshOnLoad=n.refreshOnLoad),c.createdVersion=n.createdVersion??`8`,c.refreshedVersion=n.refreshedVersion??`8`,c.minRefreshableVersion=n.minRefreshableVersion??`3`,s!==void 0&&(c.recordCount=s),n.backgroundQuery&&(c.backgroundQuery=n.backgroundQuery),n.supportSubquery&&(c.supportSubquery=n.supportSubquery),n.supportAdvancedDrill&&(c.supportAdvancedDrill=n.supportAdvancedDrill),n.extraRootAttrs)for(let[e,t]of Object.entries(n.extraRootAttrs))c[e]=t;if(t.openNode(this.tag,c),t.openNode(`cacheSource`,{type:n.cacheSourceType??`worksheet`}),!n.cacheSourceType||n.cacheSourceType===`worksheet`){let e=o?{name:o}:{ref:i,sheet:a};n.worksheetSourceRId&&(e[`r:id`]=n.worksheetSourceRId),Object.values(e).some(e=>e!==void 0)&&t.leafNode(`worksheetSource`,e)}n.cacheSourceXml&&t.writeRaw(n.cacheSourceXml),t.closeNode(),t.openNode(`cacheFields`,{count:r.length}),t.writeRaw(e.renderCacheFieldsXml(r)),t.closeNode(),n.unknownElementsXml&&t.writeRaw(n.unknownElementsXml),n.extLstXml&&t.writeRaw(n.extLstXml),t.closeNode()}parseOpen(e){let{name:t,attributes:n}=e;if(this.extLstCollector.active)return this.extLstCollector.feedOpen(t,n),!0;if(this.unknownCollector.active)return this.unknownCollector.feedOpen(t,n),!0;if(this.cacheSourceChildCollector.active)return this.cacheSourceChildCollector.feedOpen(t,n),!0;if(this.currentCacheField)return this.currentCacheField.parseOpen(e),!0;switch(t){case this.tag:{this.reset();let e={};for(let[t,r]of Object.entries(n))ey.has(t)||(e[t]=String(r));this.model={cacheFields:[],rId:n[`r:id`],refreshOnLoad:n.refreshOnLoad,createdVersion:n.createdVersion,refreshedVersion:n.refreshedVersion,minRefreshableVersion:n.minRefreshableVersion,recordCount:n.recordCount?parseInt(n.recordCount,10):void 0,backgroundQuery:n.backgroundQuery,supportSubquery:n.supportSubquery,supportAdvancedDrill:n.supportAdvancedDrill,extraRootAttrs:Object.keys(e).length>0?e:void 0,isLoaded:!0};break}case`cacheSource`:this.inCacheSource=!0,this.model&&(this.model.cacheSourceType=n.type);break;case`worksheetSource`:this.inCacheSource&&this.model&&(this.model.sourceRef=n.ref,this.model.sourceSheet=n.sheet,this.model.sourceTableName=n.name,n[`r:id`]&&(this.model.worksheetSourceRId=n[`r:id`]));break;case`cacheFields`:this.inCacheFields=!0;break;case`cacheField`:this.inCacheFields&&(this.currentCacheField=new Qv,this.currentCacheField.parseOpen(e));break;case`extLst`:this.model&&this.extLstCollector.start(n);break;default:if(this.inCacheSource&&this.model){this.cacheSourceChildCollector.startAs(t,n);break}this.model&&this.unknownCollector.startAs(t,n);break}return!0}parseText(e){if(this.extLstCollector.active){this.extLstCollector.feedText(e);return}if(this.unknownCollector.active){this.unknownCollector.feedText(e);return}if(this.cacheSourceChildCollector.active){this.cacheSourceChildCollector.feedText(e);return}this.currentCacheField&&this.currentCacheField.parseText(e)}parseClose(e){if(this.extLstCollector.active)return this.extLstCollector.feedClose(e)&&(this.model&&(this.model.extLstXml=this.extLstCollector.result),this.extLstCollector.reset()),!0;if(this.unknownCollector.active)return this.unknownCollector.feedClose(e)&&(this.unknownElementsXmlParts.push(this.unknownCollector.result),this.unknownCollector.reset()),!0;if(this.cacheSourceChildCollector.active)return this.cacheSourceChildCollector.feedClose(e)&&(this.cacheSourceXmlParts.push(this.cacheSourceChildCollector.result),this.cacheSourceChildCollector.reset()),!0;if(this.currentCacheField)return this.currentCacheField.parseClose(e)||(this.model&&this.currentCacheField.model&&this.model.cacheFields.push(this.currentCacheField.model),this.currentCacheField=null),!0;switch(e){case this.tag:return this.model&&this.unknownElementsXmlParts.length>0&&(this.model.unknownElementsXml=this.unknownElementsXmlParts.join(``)),!1;case`cacheSource`:this.inCacheSource=!1,this.model&&this.cacheSourceXmlParts.length>0&&(this.model.cacheSourceXml=this.cacheSourceXmlParts.join(``));break;case`cacheFields`:this.inCacheFields=!1;break}return!0}static renderCacheFieldsXml(e){return`
|
|
418
|
-
`+e.map(e=>
|
|
419
|
-
`)}static{this.PIVOT_CACHE_DEFINITION_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`}}};let
|
|
417
|
+
</cacheField>`}function Gv(e){let t=[];for(let n of e)n===null?t.push(`<m />`):n instanceof wg?t.push(`<e v="${R(n.code)}" />`):typeof n==`number`?Number.isFinite(n)?t.push(`<n v="${n}" />`):t.push(`<m />`):typeof n==`boolean`?t.push(`<b v="${n?`1`:`0`}" />`):n instanceof Date?t.push(`<d v="${Uv(n)}" />`):t.push(`<s v="${R(n)}" />`);return t.join(``)}function Kv(e){return e?Object.entries(e).map(([e,t])=>` ${e}="${R(t)}"`).join(``):``}function qv(e){let t=[];return e.containsSemiMixedTypes!==void 0&&t.push(`containsSemiMixedTypes="${e.containsSemiMixedTypes}"`),e.containsNonDate!==void 0&&t.push(`containsNonDate="${e.containsNonDate}"`),e.containsString!==void 0&&t.push(`containsString="${e.containsString}"`),e.containsBlank!==void 0&&t.push(`containsBlank="${e.containsBlank}"`),e.containsMixedTypes!==void 0&&t.push(`containsMixedTypes="${e.containsMixedTypes}"`),e.containsNumber!==void 0&&t.push(`containsNumber="${e.containsNumber}"`),e.containsInteger!==void 0&&t.push(`containsInteger="${e.containsInteger}"`),e.minValue!==void 0&&t.push(`minValue="${e.minValue}"`),e.maxValue!==void 0&&t.push(`maxValue="${e.maxValue}"`),e.containsDate!==void 0&&t.push(`containsDate="${e.containsDate}"`),t.length>0?` ${t.join(` `)}`:``}var Jv=class{constructor(e){this.active=!1,this.depth=0,this.buffer=[],this.lastOpenIndex=-1,this.rootTag=e}start(e){this.active=!0,this.depth=0;let t=Yv(e);this.buffer=[`<${this.rootTag}${t?` `+t:``}>`]}startAs(e,t){this.rootTag=e,this.start(t)}reset(){this.active=!1,this.depth=0,this.buffer.length=0,this.lastOpenIndex=-1}feedOpen(e,t){let n=Yv(t);this.buffer.push(`<${e}${n?` `+n:``}>`),this.depth++,this.lastOpenIndex=this.buffer.length-1}feedText(e){this.buffer.push(R(e)),this.lastOpenIndex=-1}feedClose(e){if(e===this.rootTag&&this.depth===0)return this.buffer.push(`</${e}>`),this.active=!1,this.lastOpenIndex=-1,!0;if(this.depth>0&&this.depth--,this.lastOpenIndex>=0&&this.lastOpenIndex===this.buffer.length-1){let e=this.buffer[this.lastOpenIndex];return this.buffer[this.lastOpenIndex]=e.slice(0,-1)+` />`,this.lastOpenIndex=-1,!1}return this.lastOpenIndex=-1,this.buffer.push(`</${e}>`),!1}get result(){return this.buffer.join(``)}};function Yv(e){if(!e)return``;let t=Object.entries(e);return t.length===0?``:t.filter(([,e])=>e!=null).map(([e,t])=>`${e}="${R(String(t))}"`).join(` `)}let Xv=new Set([`name`,`numFmtId`]);var Zv=class extends U{constructor(){super(),this.inSharedItems=!1,this.fieldGroupCollector=new Jv(`fieldGroup`),this.model=null}get tag(){return`cacheField`}reset(){this.model=null,this.inSharedItems=!1,this.fieldGroupCollector.reset()}parseOpen(e){let{name:t,attributes:n}=e;if(this.fieldGroupCollector.active)return this.fieldGroupCollector.feedOpen(t,n),!0;switch(t){case`cacheField`:{let e={};for(let[t,r]of Object.entries(n))Xv.has(t)||(e[t]=String(r));this.model={name:n.name??``,sharedItems:null,numFmtId:n.numFmtId,isLoaded:!0,extraAttrs:Object.keys(e).length>0?e:void 0};break}case`fieldGroup`:this.model&&this.fieldGroupCollector.start(n);break;case`sharedItems`:if(this.inSharedItems=!0,this.model){if(n.containsNumber!==void 0&&(this.model.containsNumber=n.containsNumber),n.containsInteger!==void 0&&(this.model.containsInteger=n.containsInteger),n.minValue!==void 0){let e=parseFloat(n.minValue);Number.isFinite(e)&&(this.model.minValue=e)}if(n.maxValue!==void 0){let e=parseFloat(n.maxValue);Number.isFinite(e)&&(this.model.maxValue=e)}n.containsSemiMixedTypes!==void 0&&(this.model.containsSemiMixedTypes=n.containsSemiMixedTypes),n.containsNonDate!==void 0&&(this.model.containsNonDate=n.containsNonDate),n.containsString!==void 0&&(this.model.containsString=n.containsString),n.containsBlank!==void 0&&(this.model.containsBlank=n.containsBlank),n.containsDate!==void 0&&(this.model.containsDate=n.containsDate),n.containsMixedTypes!==void 0&&(this.model.containsMixedTypes=n.containsMixedTypes),this.model.sharedItems=[]}break;case`s`:case`n`:case`b`:case`e`:case`m`:case`d`:this.inSharedItems&&this.model&&this.model.sharedItems!==null&&this.model.sharedItems.push(Qv(t,n));break}return!0}parseText(e){this.fieldGroupCollector.active&&this.fieldGroupCollector.feedText(e)}parseClose(e){if(this.fieldGroupCollector.active)return this.fieldGroupCollector.feedClose(e)&&(this.model&&(this.model.fieldGroupXml=this.fieldGroupCollector.result),this.fieldGroupCollector.reset()),!0;switch(e){case`cacheField`:return!1;case`sharedItems`:this.inSharedItems=!1;break}return!0}};function Qv(e,t){switch(e){case`s`:return t.v??``;case`n`:return t.v===void 0||t.v===``?null:parseFloat(t.v);case`b`:return t.v===`1`;case`e`:return new wg(t.v??``);case`m`:return null;case`d`:{if(!t.v)return null;let e=Mc(t.v);return isNaN(e.getTime())?null:e}default:return null}}let $v=new Set([`xmlns`,`xmlns:r`,`r:id`,`refreshOnLoad`,`createdVersion`,`refreshedVersion`,`minRefreshableVersion`,`recordCount`,`backgroundQuery`,`supportSubquery`,`supportAdvancedDrill`]);var ey=class e extends U{constructor(){super(),this.currentCacheField=null,this.inCacheFields=!1,this.inCacheSource=!1,this.extLstCollector=new Jv(`extLst`),this.unknownCollector=new Jv(``),this.unknownElementsXmlParts=[],this.cacheSourceChildCollector=new Jv(``),this.cacheSourceXmlParts=[],this.model=null}get tag(){return`pivotCacheDefinition`}reset(){this.model=null,this.currentCacheField=null,this.inCacheFields=!1,this.inCacheSource=!1,this.extLstCollector.reset(),this.unknownCollector.reset(),this.unknownElementsXmlParts=[],this.cacheSourceChildCollector.reset(),this.cacheSourceXmlParts=[]}render(e,t){`isLoaded`in t&&t.isLoaded||!(`source`in t)?this.renderLoaded(e,t):this.renderNew(e,t)}renderNew(t,n){let{source:r,cacheFields:i}=n,a=r.getSheetValues().slice(2).filter(Array.isArray).length;t.openXml(z),t.openNode(this.tag,{...e.PIVOT_CACHE_DEFINITION_ATTRIBUTES,"r:id":`rId1`,refreshOnLoad:`1`,createdVersion:`8`,refreshedVersion:`8`,minRefreshableVersion:`3`,recordCount:a}),t.openNode(`cacheSource`,{type:`worksheet`});let o=r.tableName?{name:r.tableName}:{ref:r.dimensions.shortRange,sheet:r.name};t.leafNode(`worksheetSource`,o),t.closeNode(),t.openNode(`cacheFields`,{count:i.length}),t.writeRaw(e.renderCacheFieldsXml(i)),t.closeNode(),t.closeNode()}renderLoaded(t,n){let{cacheFields:r,sourceRef:i,sourceSheet:a,sourceTableName:o,recordCount:s}=n;t.openXml(z);let c={...e.PIVOT_CACHE_DEFINITION_ATTRIBUTES,"r:id":n.rId??`rId1`};if(n.refreshOnLoad&&(c.refreshOnLoad=n.refreshOnLoad),c.createdVersion=n.createdVersion??`8`,c.refreshedVersion=n.refreshedVersion??`8`,c.minRefreshableVersion=n.minRefreshableVersion??`3`,s!==void 0&&(c.recordCount=s),n.backgroundQuery&&(c.backgroundQuery=n.backgroundQuery),n.supportSubquery&&(c.supportSubquery=n.supportSubquery),n.supportAdvancedDrill&&(c.supportAdvancedDrill=n.supportAdvancedDrill),n.extraRootAttrs)for(let[e,t]of Object.entries(n.extraRootAttrs))c[e]=t;if(t.openNode(this.tag,c),t.openNode(`cacheSource`,{type:n.cacheSourceType??`worksheet`}),!n.cacheSourceType||n.cacheSourceType===`worksheet`){let e=o?{name:o}:{ref:i,sheet:a};n.worksheetSourceRId&&(e[`r:id`]=n.worksheetSourceRId),Object.values(e).some(e=>e!==void 0)&&t.leafNode(`worksheetSource`,e)}n.cacheSourceXml&&t.writeRaw(n.cacheSourceXml),t.closeNode(),t.openNode(`cacheFields`,{count:r.length}),t.writeRaw(e.renderCacheFieldsXml(r)),t.closeNode(),n.unknownElementsXml&&t.writeRaw(n.unknownElementsXml),n.extLstXml&&t.writeRaw(n.extLstXml),t.closeNode()}parseOpen(e){let{name:t,attributes:n}=e;if(this.extLstCollector.active)return this.extLstCollector.feedOpen(t,n),!0;if(this.unknownCollector.active)return this.unknownCollector.feedOpen(t,n),!0;if(this.cacheSourceChildCollector.active)return this.cacheSourceChildCollector.feedOpen(t,n),!0;if(this.currentCacheField)return this.currentCacheField.parseOpen(e),!0;switch(t){case this.tag:{this.reset();let e={};for(let[t,r]of Object.entries(n))$v.has(t)||(e[t]=String(r));this.model={cacheFields:[],rId:n[`r:id`],refreshOnLoad:n.refreshOnLoad,createdVersion:n.createdVersion,refreshedVersion:n.refreshedVersion,minRefreshableVersion:n.minRefreshableVersion,recordCount:n.recordCount?parseInt(n.recordCount,10):void 0,backgroundQuery:n.backgroundQuery,supportSubquery:n.supportSubquery,supportAdvancedDrill:n.supportAdvancedDrill,extraRootAttrs:Object.keys(e).length>0?e:void 0,isLoaded:!0};break}case`cacheSource`:this.inCacheSource=!0,this.model&&(this.model.cacheSourceType=n.type);break;case`worksheetSource`:this.inCacheSource&&this.model&&(this.model.sourceRef=n.ref,this.model.sourceSheet=n.sheet,this.model.sourceTableName=n.name,n[`r:id`]&&(this.model.worksheetSourceRId=n[`r:id`]));break;case`cacheFields`:this.inCacheFields=!0;break;case`cacheField`:this.inCacheFields&&(this.currentCacheField=new Zv,this.currentCacheField.parseOpen(e));break;case`extLst`:this.model&&this.extLstCollector.start(n);break;default:if(this.inCacheSource&&this.model){this.cacheSourceChildCollector.startAs(t,n);break}this.model&&this.unknownCollector.startAs(t,n);break}return!0}parseText(e){if(this.extLstCollector.active){this.extLstCollector.feedText(e);return}if(this.unknownCollector.active){this.unknownCollector.feedText(e);return}if(this.cacheSourceChildCollector.active){this.cacheSourceChildCollector.feedText(e);return}this.currentCacheField&&this.currentCacheField.parseText(e)}parseClose(e){if(this.extLstCollector.active)return this.extLstCollector.feedClose(e)&&(this.model&&(this.model.extLstXml=this.extLstCollector.result),this.extLstCollector.reset()),!0;if(this.unknownCollector.active)return this.unknownCollector.feedClose(e)&&(this.unknownElementsXmlParts.push(this.unknownCollector.result),this.unknownCollector.reset()),!0;if(this.cacheSourceChildCollector.active)return this.cacheSourceChildCollector.feedClose(e)&&(this.cacheSourceXmlParts.push(this.cacheSourceChildCollector.result),this.cacheSourceChildCollector.reset()),!0;if(this.currentCacheField)return this.currentCacheField.parseClose(e)||(this.model&&this.currentCacheField.model&&this.model.cacheFields.push(this.currentCacheField.model),this.currentCacheField=null),!0;switch(e){case this.tag:return this.model&&this.unknownElementsXmlParts.length>0&&(this.model.unknownElementsXml=this.unknownElementsXmlParts.join(``)),!1;case`cacheSource`:this.inCacheSource=!1,this.model&&this.cacheSourceXmlParts.length>0&&(this.model.cacheSourceXml=this.cacheSourceXmlParts.join(``));break;case`cacheFields`:this.inCacheFields=!1;break}return!0}static renderCacheFieldsXml(e){return`
|
|
418
|
+
`+e.map(e=>Wv(e)).join(`
|
|
419
|
+
`)}static{this.PIVOT_CACHE_DEFINITION_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`}}};let ty=new Set([`xmlns`,`xmlns:r`,`count`]);var ny=class e extends U{constructor(){super(),this.model=null,this.currentRecord=null}get tag(){return`pivotCacheRecords`}reset(){this.model=null,this.currentRecord=null}render(e,t){`isLoaded`in t&&t.isLoaded||!(`source`in t)?this.renderLoaded(e,t):this.renderNew(e,t)}renderNew(t,n){let{source:r,cacheFields:i}=n,a=r.getSheetValues().slice(2).filter(Array.isArray);t.openXml(z),t.openNode(this.tag,{...e.PIVOT_CACHE_RECORDS_ATTRIBUTES,count:a.length}),t.writeRaw(this.renderTableNew(a,i)),t.closeNode()}renderLoaded(t,n){t.openXml(z);let r={xmlns:e.PIVOT_CACHE_RECORDS_ATTRIBUTES.xmlns,"xmlns:r":e.PIVOT_CACHE_RECORDS_ATTRIBUTES[`xmlns:r`]};if(n.extraRootAttrs)for(let[e,t]of Object.entries(n.extraRootAttrs))r[e]=t;else r[`xmlns:mc`]=e.PIVOT_CACHE_RECORDS_ATTRIBUTES[`xmlns:mc`],r[`mc:Ignorable`]=e.PIVOT_CACHE_RECORDS_ATTRIBUTES[`mc:Ignorable`],r[`xmlns:xr`]=e.PIVOT_CACHE_RECORDS_ATTRIBUTES[`xmlns:xr`];r.count=n.records.length,t.openNode(this.tag,r);for(let e of n.records){t.writeRaw(`
|
|
420
420
|
<r>`);for(let n of e)t.writeRaw(`
|
|
421
421
|
`),t.writeRaw(this.renderRecordValue(n));t.writeRaw(`
|
|
422
|
-
</r>`)}t.closeNode()}renderRecordValue(e){switch(e.type){case`x`:return`<x v="${e.value}" />`;case`n`:return Number.isFinite(e.value)?`<n v="${e.value}" />`:`<m />`;case`s`:return`<s v="${R(e.value)}" />`;case`b`:return`<b v="${e.value?`1`:`0`}" />`;case`m`:return`<m />`;case`d`:return`<d v="${
|
|
422
|
+
</r>`)}t.closeNode()}renderRecordValue(e){switch(e.type){case`x`:return`<x v="${e.value}" />`;case`n`:return Number.isFinite(e.value)?`<n v="${e.value}" />`:`<m />`;case`s`:return`<s v="${R(e.value)}" />`;case`b`:return`<b v="${e.value?`1`:`0`}" />`;case`m`:return`<m />`;case`d`:return`<d v="${Uv(e.value)}" />`;case`e`:return`<e v="${R(e.value)}" />`;default:throw Error(`Unhandled record value type: ${e.type}`)}}renderTableNew(e,t){let n=[];for(let r of e){let e=r.slice(1);n.push(`
|
|
423
423
|
<r>`);let i=Math.min(e.length,t.length);for(let r=0;r<i;r++)n.push(`
|
|
424
424
|
`+this.renderCellNew(e[r],t[r].sharedItems));for(let e=i;e<t.length;e++)n.push(`
|
|
425
425
|
<m />`);n.push(`
|
|
426
|
-
</r>`)}return n.join(``)}renderCellNew(e,t){if(e==null||typeof e==`number`&&!Number.isFinite(e)){if(t===null)return`<m />`;let e=t.indexOf(null);return e>=0?`<x v="${e}" />`:`<m />`}if(t===null)return e instanceof Eg?`<e v="${R(e.code)}" />`:typeof e==`boolean`?`<b v="${e?`1`:`0`}" />`:e instanceof Date?`<d v="${Wv(e)}" />`:Number.isFinite(e)?`<n v="${e}" />`:`<s v="${R(String(e))}" />`;let n=iy(t,e);if(n<0)throw new Ir(`${JSON.stringify(e)} not in sharedItems ${JSON.stringify(t)}`);return`<x v="${n}" />`}parseOpen(e){let{name:t,attributes:n}=e;switch(t){case this.tag:{this.reset();let e={};for(let[t,r]of Object.entries(n))ny.has(t)||(e[t]=String(r));this.model={records:[],count:parseInt(n.count??`0`,10),isLoaded:!0,extraRootAttrs:Object.keys(e).length>0?e:void 0};break}case`r`:this.currentRecord=[];break;case`x`:this.currentRecord&&this.currentRecord.push({type:`x`,value:parseInt(n.v??`0`,10)});break;case`n`:this.currentRecord&&(n.v===void 0||n.v===``?this.currentRecord.push({type:`m`}):this.currentRecord.push({type:`n`,value:parseFloat(n.v)}));break;case`s`:this.currentRecord&&this.currentRecord.push({type:`s`,value:n.v??``});break;case`b`:this.currentRecord&&this.currentRecord.push({type:`b`,value:n.v===`1`});break;case`m`:this.currentRecord&&this.currentRecord.push({type:`m`});break;case`d`:if(this.currentRecord)if(!n.v)this.currentRecord.push({type:`m`});else{let e=Mc(n.v);isNaN(e.getTime())?this.currentRecord.push({type:`m`}):this.currentRecord.push({type:`d`,value:e})}break;case`e`:this.currentRecord&&this.currentRecord.push({type:`e`,value:n.v??``});break}return!0}parseText(e){}parseClose(e){switch(e){case this.tag:return!1;case`r`:this.model&&this.currentRecord&&(this.model.records.push(this.currentRecord),this.currentRecord=null);break}return!0}static{this.PIVOT_CACHE_RECORDS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`xr`,"xmlns:xr":`http://schemas.microsoft.com/office/spreadsheetml/2014/revision`}}};function iy(e,t){if(t instanceof Date){let n=t.getTime();for(let t=0;t<e.length;t++){let r=e[t];if(r instanceof Date&&r.getTime()===n)return t}return-1}if(t instanceof Eg){for(let n=0;n<e.length;n++){let r=e[n];if(r instanceof Eg&&r.code===t.code)return n}return-1}return e.indexOf(t)}let ay=`PivotStyleLight16`,oy=new Set([`axisRow`,`axisCol`,`axisPage`,`axisValues`]),sy=[`x`,`t`,`h`,`sd`,`f`,`m`,`c`,`d`];function cy(){return{currentSection:null,inPivotArea:!1,inAutoSortScope:!1}}let ly=new Set([`axis`,`dataField`,`compact`,`outline`,`showAll`,`defaultSubtotal`,`numFmtId`,`sortType`,`subtotalTop`,`insertBlankRow`,`multipleItemSelectionAllowed`]);var uy=class e extends U{constructor(){super(),this.state=cy(),this.currentPivotField=null,this.currentRowItem=null,this.currentColItem=null,this.currentChartFormat=null,this.pivotAreaXmlBuffer=[],this.autoSortScopeXmlBuffer=[],this.extLstCollector=new Yv(`extLst`),this.formatsCollector=new Yv(`formats`),this.conditionalFormatsCollector=new Yv(`conditionalFormats`),this.filtersCollector=new Yv(`filters`),this.unknownCollector=new Yv(``),this.unknownElementsXmlParts=[],this.model=null}get tag(){return`pivotTableDefinition`}reset(){this.model=null,this.state=cy(),this.currentPivotField=null,this.currentRowItem=null,this.currentColItem=null,this.currentChartFormat=null,this.pivotAreaXmlBuffer=[],this.autoSortScopeXmlBuffer=[],this.extLstCollector.reset(),this.formatsCollector.reset(),this.conditionalFormatsCollector.reset(),this.filtersCollector.reset(),this.unknownCollector.reset(),this.unknownElementsXmlParts=[]}render(e,t){`isLoaded`in t&&t.isLoaded?this.renderLoaded(e,t):this.renderNew(e,t)}renderNew(t,n){let{rows:r,columns:i,values:a,pages:o=[],cacheFields:s,cacheId:c,tableNumber:l,applyWidthHeightFormats:u}=n,d=i.length===0&&a.length>1,f=o.length,p=f>0?f+1:0,m=r.length,h=3+p,g=h+1,_=m+(d?a.length:1),v=`A${h}:${M.n2l(_)}${g}`;t.openXml(z),t.openNode(this.tag,{...e.PIVOT_TABLE_ATTRIBUTES,name:`PivotTable${l}`,cacheId:c,applyNumberFormats:`0`,applyBorderFormats:`0`,applyFontFormats:`0`,applyPatternFormats:`0`,applyAlignmentFormats:`0`,applyWidthHeightFormats:u,dataCaption:`Values`,updatedVersion:`8`,minRefreshableVersion:`3`,useAutoFormatting:`1`,itemPrintTitles:`1`,createdVersion:`8`,indent:`0`,compact:`0`,compactData:`0`,multipleFieldFilters:`0`});let y={ref:v,firstHeaderRow:1,firstDataRow:1,firstDataCol:m};f>0&&(y.rowPageCount=f,y.colPageCount=1),t.leafNode(`location`,y),py(t,n),t.openNode(`rowFields`,{count:r.length});for(let e of r)t.leafNode(`field`,{x:e});if(t.closeNode(),t.openNode(`rowItems`,{count:1}),t.openNode(`i`,{t:`grand`}),t.leafNode(`x`),t.closeNode(),t.closeNode(),i.length>0){let e=a.length>1?i.length+1:i.length;t.openNode(`colFields`,{count:e});for(let e of i)t.leafNode(`field`,{x:e});a.length>1&&t.leafNode(`field`,{x:-2}),t.closeNode()}else d&&(t.openNode(`colFields`,{count:1}),t.leafNode(`field`,{x:-2}),t.closeNode());if(d){t.openNode(`colItems`,{count:a.length+1});for(let e=0;e<a.length;e++)t.openNode(`i`),t.leafNode(`x`,e===0?void 0:{v:e}),t.closeNode();t.openNode(`i`,{t:`grand`}),t.leafNode(`x`),t.closeNode(),t.closeNode()}else t.openNode(`colItems`,{count:1}),t.leafNode(`i`),t.closeNode();if(f>0){t.openNode(`pageFields`,{count:f});for(let e of o)t.leafNode(`pageField`,{fld:e,hier:-1});t.closeNode()}fy(t,s,a,n.valueMetrics),t.leafNode(`pivotTableStyleInfo`,{name:ay,showRowHeaders:`1`,showColHeaders:`1`,showRowStripes:`0`,showColStripes:`0`,showLastColumn:`1`}),t.writeRaw(e.EXTLST_XML),t.closeNode()}renderLoaded(t,n){let r=this.buildLoadedRootAttributes(n);if(t.openXml(z),t.openNode(this.tag,r),n.location){let e={ref:n.location.ref,firstHeaderRow:n.location.firstHeaderRow,firstDataRow:n.location.firstDataRow,firstDataCol:n.location.firstDataCol};n.location.rowPageCount!==void 0&&(e.rowPageCount=n.location.rowPageCount),n.location.colPageCount!==void 0&&(e.colPageCount=n.location.colPageCount),t.leafNode(`location`,e)}if(n.pivotFields.length>0){t.openNode(`pivotFields`,{count:n.pivotFields.length});for(let e of n.pivotFields)this.renderPivotFieldLoaded(t,e);t.closeNode()}if(n.rowFields.length>0){t.openNode(`rowFields`,{count:n.rowFields.length});for(let e of n.rowFields)t.leafNode(`field`,{x:e});t.closeNode()}if(n.rowItems&&n.rowItems.length>0){t.openNode(`rowItems`,{count:n.rowItems.length});for(let e of n.rowItems)this.renderRowColItem(t,e);t.closeNode()}else n.hasRowItems&&t.writeRaw(`<rowItems count="1"><i t="grand"><x/></i></rowItems>`);if(n.hasColFields||n.colFields.length>0)if(n.colFields.length===0&&n.dataFields.length<=1)t.leafNode(`colFields`,{count:0});else{let e=n.colFields.length===0?1:n.colFields.length;if(t.openNode(`colFields`,{count:e}),n.colFields.length===0)t.leafNode(`field`,{x:-2});else for(let e of n.colFields)t.leafNode(`field`,{x:e});t.closeNode()}if(n.colItems&&n.colItems.length>0){t.openNode(`colItems`,{count:n.colItems.length});for(let e of n.colItems)this.renderRowColItem(t,e);t.closeNode()}else n.hasColItems&&t.writeRaw(`<colItems count="1"><i t="grand"><x/></i></colItems>`);if(n.pageFields&&n.pageFields.length>0){t.openNode(`pageFields`,{count:n.pageFields.length});for(let e of n.pageFields){let n={fld:e.fld};e.item!==void 0&&(n.item=e.item),e.hier!==void 0&&(n.hier=e.hier),e.name!==void 0&&(n.name=e.name),t.leafNode(`pageField`,n)}t.closeNode()}if(n.dataFields.length>0){t.openNode(`dataFields`,{count:n.dataFields.length});for(let e of n.dataFields){let n={name:e.name,fld:e.fld};e.baseField!==void 0&&(n.baseField=e.baseField),e.baseItem!==void 0&&(n.baseItem=e.baseItem),e.subtotal!==void 0&&e.subtotal!==`sum`&&(n.subtotal=e.subtotal),e.numFmtId!==void 0&&(n.numFmtId=e.numFmtId),t.leafNode(`dataField`,n)}t.closeNode()}n.formatsXml&&t.writeRaw(n.formatsXml),n.conditionalFormatsXml&&t.writeRaw(n.conditionalFormatsXml),n.chartFormats&&n.chartFormats.length>0&&this.renderChartFormats(t,n.chartFormats);let i=n.styleInfo;t.leafNode(`pivotTableStyleInfo`,{name:i?.name??n.styleName??ay,showRowHeaders:i?.showRowHeaders??`1`,showColHeaders:i?.showColHeaders??`1`,showRowStripes:i?.showRowStripes??`0`,showColStripes:i?.showColStripes??`0`,showLastColumn:i?.showLastColumn??`1`}),n.filtersXml&&t.writeRaw(n.filtersXml),n.unknownElementsXml&&t.writeRaw(n.unknownElementsXml);let a=n.extLstXml??(n.isLoaded?``:e.EXTLST_XML);a&&t.writeRaw(a),t.closeNode()}buildLoadedRootAttributes(t){let n={...e.PIVOT_TABLE_ATTRIBUTES,name:t.name??`PivotTable1`,cacheId:String(t.cacheId),applyNumberFormats:t.applyNumberFormats??`0`,applyBorderFormats:t.applyBorderFormats??`0`,applyFontFormats:t.applyFontFormats??`0`,applyPatternFormats:t.applyPatternFormats??`0`,applyAlignmentFormats:t.applyAlignmentFormats??`0`,applyWidthHeightFormats:t.applyWidthHeightFormats??`0`,dataCaption:t.dataCaption??`Values`,updatedVersion:t.updatedVersion??`8`,minRefreshableVersion:t.minRefreshableVersion??`3`};return t.useAutoFormatting!==void 0&&(n.useAutoFormatting=t.useAutoFormatting),t.itemPrintTitles!==void 0&&(n.itemPrintTitles=t.itemPrintTitles),t.multipleFieldFilters!==void 0&&(n.multipleFieldFilters=t.multipleFieldFilters),n.createdVersion=t.createdVersion??`8`,t.indent!==void 0&&(n.indent=String(t.indent)),t.uid&&(n[`xmlns:xr`]=`http://schemas.microsoft.com/office/spreadsheetml/2014/revision`,n[`xr:uid`]=t.uid),t.outline&&(n.outline=`1`),t.outlineData&&(n.outlineData=`1`),t.chartFormat!==void 0&&(n.chartFormat=String(t.chartFormat)),t.colGrandTotals!==void 0&&(n.colGrandTotals=t.colGrandTotals),t.rowGrandTotals!==void 0&&(n.rowGrandTotals=t.rowGrandTotals),t.showError!==void 0&&(n.showError=t.showError),t.errorCaption!==void 0&&(n.errorCaption=t.errorCaption),t.showMissing!==void 0&&(n.showMissing=t.showMissing),t.missingCaption!==void 0&&(n.missingCaption=t.missingCaption),t.grandTotalCaption!==void 0&&(n.grandTotalCaption=t.grandTotalCaption),t.compact===!1&&(n.compact=`0`),t.compactData===!1&&(n.compactData=`0`),n}renderChartFormats(e,t){e.openNode(`chartFormats`,{count:t.length});for(let n of t)e.openNode(`chartFormat`,{chart:n.chart,format:n.format,series:n.series===!0?`1`:n.series===!1?`0`:void 0}),n.pivotAreaXml?e.writeRaw(n.pivotAreaXml):e.writeRaw(`<pivotArea type="data" outline="0" fieldPosition="0"><references count="1"><reference field="4294967294" count="1" selected="0"><x v="0"/></reference></references></pivotArea>`),e.closeNode();e.closeNode()}renderRowColItem(e,t){let n={};if(t.t!==void 0&&(n.t=t.t),t.r!==void 0&&(n.r=t.r),t.i!==void 0&&(n.i=t.i),t.x.length>0){e.openNode(`i`,n);for(let n of t.x)n.v===0?e.leafNode(`x`):e.leafNode(`x`,{v:n.v});e.closeNode()}else e.leafNode(`i`,n)}renderPivotFieldLoaded(e,t){let n={};if(t.axis&&(n.axis=t.axis),t.dataField&&(n.dataField=`1`),t.numFmtId!==void 0&&(n.numFmtId=String(t.numFmtId)),t.sortType&&(n.sortType=t.sortType),t.compact===!1&&(n.compact=`0`),t.outline===!1&&(n.outline=`0`),n.showAll=t.showAll?`1`:`0`,t.defaultSubtotal===!1&&(n.defaultSubtotal=`0`),t.subtotalTop===!1&&(n.subtotalTop=`0`),t.insertBlankRow===!0&&(n.insertBlankRow=`1`),t.multipleItemSelectionAllowed===!0&&(n.multipleItemSelectionAllowed=`1`),t.extraAttrs)for(let[e,r]of Object.entries(t.extraAttrs))n[e]=r;if(t.items!==void 0&&t.items.length>0||t.autoSortScopeXml!==void 0){if(e.openNode(`pivotField`,n),t.items!==void 0&&t.items.length>0){e.openNode(`items`,{count:t.items.length});for(let n of t.items){let t={};for(let e of sy)n[e]!==void 0&&(t[e]=n[e]);e.leafNode(`item`,t)}e.closeNode()}t.autoSortScopeXml&&e.writeRaw(t.autoSortScopeXml),e.closeNode()}else e.leafNode(`pivotField`,n)}parseOpen(e){let{name:t,attributes:n}=e;if(this.extLstCollector.active)return this.extLstCollector.feedOpen(t,n),!0;if(this.formatsCollector.active)return this.formatsCollector.feedOpen(t,n),!0;if(this.conditionalFormatsCollector.active)return this.conditionalFormatsCollector.feedOpen(t,n),!0;if(this.filtersCollector.active)return this.filtersCollector.feedOpen(t,n),!0;if(this.unknownCollector.active)return this.unknownCollector.feedOpen(t,n),!0;switch(t){case this.tag:this.reset(),this.model={name:n.name,cacheId:parseInt(n.cacheId??`0`,10),uid:n[`xr:uid`],pivotFields:[],rowFields:[],colFields:[],pageFields:[],dataFields:[],applyNumberFormats:n.applyNumberFormats,applyBorderFormats:n.applyBorderFormats,applyFontFormats:n.applyFontFormats,applyPatternFormats:n.applyPatternFormats,applyAlignmentFormats:n.applyAlignmentFormats,applyWidthHeightFormats:n.applyWidthHeightFormats,dataCaption:n.dataCaption,updatedVersion:n.updatedVersion,minRefreshableVersion:n.minRefreshableVersion,createdVersion:n.createdVersion,useAutoFormatting:n.useAutoFormatting,itemPrintTitles:n.itemPrintTitles,indent:n.indent===void 0?void 0:parseInt(n.indent,10),compact:n.compact!==`0`,compactData:n.compactData!==`0`,multipleFieldFilters:n.multipleFieldFilters,outline:n.outline===`1`,outlineData:n.outlineData===`1`,chartFormat:n.chartFormat===void 0?void 0:parseInt(n.chartFormat,10),colGrandTotals:n.colGrandTotals,rowGrandTotals:n.rowGrandTotals,showError:n.showError,errorCaption:n.errorCaption,showMissing:n.showMissing,missingCaption:n.missingCaption,grandTotalCaption:n.grandTotalCaption,rowItems:[],colItems:[],chartFormats:[],isLoaded:!0};break;case`location`:this.model&&(this.model.location={ref:n.ref,firstHeaderRow:n.firstHeaderRow===void 0?void 0:parseInt(n.firstHeaderRow,10),firstDataRow:n.firstDataRow===void 0?void 0:parseInt(n.firstDataRow,10),firstDataCol:n.firstDataCol===void 0?void 0:parseInt(n.firstDataCol,10),rowPageCount:n.rowPageCount===void 0?void 0:parseInt(n.rowPageCount,10),colPageCount:n.colPageCount===void 0?void 0:parseInt(n.colPageCount,10)});break;case`pivotFields`:this.state.currentSection=`pivotFields`;break;case`pivotField`:if(this.state.currentSection===`pivotFields`){let e={};for(let[t,r]of Object.entries(n))ly.has(t)||(e[t]=String(r));this.currentPivotField={axis:oy.has(n.axis)?n.axis:void 0,dataField:n.dataField===`1`,items:[],compact:n.compact!==`0`,outline:n.outline!==`0`,showAll:n.showAll!==`0`,defaultSubtotal:n.defaultSubtotal!==`0`,numFmtId:n.numFmtId===void 0?void 0:parseInt(n.numFmtId,10),sortType:n.sortType,subtotalTop:n.subtotalTop===void 0?void 0:n.subtotalTop===`1`,insertBlankRow:n.insertBlankRow===`1`?!0:void 0,multipleItemSelectionAllowed:n.multipleItemSelectionAllowed===`1`?!0:void 0,extraAttrs:Object.keys(e).length>0?e:void 0}}break;case`items`:break;case`item`:if(this.currentPivotField){let e={};n.x!==void 0&&(e.x=parseInt(n.x,10));for(let t of sy)t!==`x`&&n[t]!==void 0&&(e[t]=n[t]);this.currentPivotField.items.push(e)}break;case`autoSortScope`:this.currentPivotField&&(this.state.inAutoSortScope=!0,this.autoSortScopeXmlBuffer=[`<autoSortScope>`]);break;case`rowFields`:this.state.currentSection=`rowFields`;break;case`colFields`:this.state.currentSection=`colFields`,this.model&&(this.model.hasColFields=!0);break;case`dataFields`:this.state.currentSection=`dataFields`;break;case`pageFields`:this.state.currentSection=`pageFields`;break;case`pageField`:this.state.currentSection===`pageFields`&&this.model&&this.model.pageFields.push({fld:parseInt(n.fld??`0`,10),item:n.item===void 0?void 0:parseInt(n.item,10),hier:n.hier===void 0?void 0:parseInt(n.hier,10),name:n.name});break;case`rowItems`:this.state.currentSection=`rowItems`,this.model&&(this.model.hasRowItems=!0);break;case`colItems`:this.state.currentSection=`colItems`,this.model&&(this.model.hasColItems=!0);break;case`i`:if(this.model){let e=this.state.currentSection===`rowItems`||this.state.currentSection===`colItems`?dy(n):null;this.state.currentSection===`rowItems`?this.currentRowItem=e:this.state.currentSection===`colItems`&&(this.currentColItem=e)}break;case`x`:if(this.state.inPivotArea){let e=Xv(n);this.state.inAutoSortScope?this.autoSortScopeXmlBuffer.push(e?`<x ${e}/>`:`<x/>`):this.pivotAreaXmlBuffer.push(e?`<x ${e}/>`:`<x/>`)}else this.currentRowItem?this.currentRowItem.x.push({v:parseInt(n.v??`0`,10)}):this.currentColItem&&this.currentColItem.x.push({v:parseInt(n.v??`0`,10)});break;case`chartFormats`:this.state.currentSection=`chartFormats`;break;case`chartFormat`:this.state.currentSection===`chartFormats`&&this.model&&(this.currentChartFormat={chart:parseInt(n.chart??`0`,10),format:parseInt(n.format??`0`,10),series:n.series===void 0?void 0:n.series===`1`});break;case`pivotArea`:if(this.currentChartFormat){this.state.inPivotArea=!0;let e=Xv(n);this.pivotAreaXmlBuffer=[e?`<pivotArea ${e}>`:`<pivotArea>`]}else if(this.state.inAutoSortScope){this.state.inPivotArea=!0;let e=Xv(n);this.autoSortScopeXmlBuffer.push(e?`<pivotArea ${e}>`:`<pivotArea>`)}break;case`references`:case`reference`:if(this.state.inPivotArea){let e=Xv(n);this.state.inAutoSortScope?this.autoSortScopeXmlBuffer.push(`<${t}${e?` `+e:``}>`):this.pivotAreaXmlBuffer.push(`<${t}${e?` `+e:``}>`)}break;case`field`:if(this.model){let e=parseInt(n.x??`0`,10);this.state.currentSection===`rowFields`?this.model.rowFields.push(e):this.state.currentSection===`colFields`&&this.model.colFields.push(e)}break;case`dataField`:this.state.currentSection===`dataFields`&&this.model&&this.model.dataFields.push({name:n.name??``,fld:parseInt(n.fld??`0`,10),baseField:n.baseField===void 0?void 0:parseInt(n.baseField,10),baseItem:n.baseItem===void 0?void 0:parseInt(n.baseItem,10),subtotal:Og.has(n.subtotal)?n.subtotal:void 0,numFmtId:n.numFmtId===void 0?void 0:parseInt(n.numFmtId,10)});break;case`pivotTableStyleInfo`:this.model&&(this.model.styleName=n.name,this.model.styleInfo={name:n.name,showRowHeaders:n.showRowHeaders,showColHeaders:n.showColHeaders,showRowStripes:n.showRowStripes,showColStripes:n.showColStripes,showLastColumn:n.showLastColumn});break;case`extLst`:this.model&&this.extLstCollector.start(n);break;case`formats`:this.model&&this.formatsCollector.start(n);break;case`conditionalFormats`:this.model&&this.conditionalFormatsCollector.start(n);break;case`filters`:this.model&&this.filtersCollector.start(n);break;default:this.model&&this.state.currentSection===null&&!this.state.inPivotArea&&!this.state.inAutoSortScope&&this.unknownCollector.startAs(t,n);break}return!0}parseText(e){this.extLstCollector.active?this.extLstCollector.feedText(e):this.formatsCollector.active?this.formatsCollector.feedText(e):this.conditionalFormatsCollector.active?this.conditionalFormatsCollector.feedText(e):this.filtersCollector.active?this.filtersCollector.feedText(e):this.unknownCollector.active&&this.unknownCollector.feedText(e)}tryCloseCollector(e,t,n){e.feedClose(t)&&(this.model&&(this.model[n]=e.result),e.reset())}parseClose(e){if(this.extLstCollector.active)return this.tryCloseCollector(this.extLstCollector,e,`extLstXml`),!0;if(this.formatsCollector.active)return this.tryCloseCollector(this.formatsCollector,e,`formatsXml`),!0;if(this.conditionalFormatsCollector.active)return this.tryCloseCollector(this.conditionalFormatsCollector,e,`conditionalFormatsXml`),!0;if(this.filtersCollector.active)return this.tryCloseCollector(this.filtersCollector,e,`filtersXml`),!0;if(this.unknownCollector.active)return this.unknownCollector.feedClose(e)&&(this.unknownElementsXmlParts.push(this.unknownCollector.result),this.unknownCollector.reset()),!0;if(this.state.inPivotArea)return e===`pivotArea`?(this.state.inAutoSortScope?this.autoSortScopeXmlBuffer.push(`</pivotArea>`):(this.pivotAreaXmlBuffer.push(`</pivotArea>`),this.currentChartFormat&&(this.currentChartFormat.pivotAreaXml=this.pivotAreaXmlBuffer.join(``)),this.pivotAreaXmlBuffer=[]),this.state.inPivotArea=!1,!0):((e===`references`||e===`reference`)&&(this.state.inAutoSortScope?this.autoSortScopeXmlBuffer.push(`</${e}>`):this.pivotAreaXmlBuffer.push(`</${e}>`)),!0);switch(e){case this.tag:return this.model&&this.unknownElementsXmlParts.length>0&&(this.model.unknownElementsXml=this.unknownElementsXmlParts.join(``)),!1;case`pivotFields`:case`rowFields`:case`colFields`:case`dataFields`:case`pageFields`:case`rowItems`:case`colItems`:case`chartFormats`:this.state.currentSection=null;break;case`pivotField`:this.currentPivotField&&this.model&&(this.model.pivotFields.push(this.currentPivotField),this.currentPivotField=null);break;case`items`:break;case`autoSortScope`:this.state.inAutoSortScope&&this.currentPivotField&&(this.autoSortScopeXmlBuffer.push(`</autoSortScope>`),this.currentPivotField.autoSortScopeXml=this.autoSortScopeXmlBuffer.join(``),this.autoSortScopeXmlBuffer=[],this.state.inAutoSortScope=!1);break;case`i`:this.currentRowItem&&this.model?(this.model.rowItems?.push(this.currentRowItem),this.currentRowItem=null):this.currentColItem&&this.model&&(this.model.colItems?.push(this.currentColItem),this.currentColItem=null);break;case`chartFormat`:this.currentChartFormat&&this.model&&(this.model.chartFormats?.push(this.currentChartFormat),this.currentChartFormat=null);break}return!0}static{this.PIVOT_TABLE_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}static{this.EXTLST_XML=`<extLst><ext uri="{962EF5D1-5CA2-4c93-8EF4-DBF5C05439D2}" xmlns:x14="http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"><x14:pivotTableDefinition hideValuesRow="1" xmlns:xm="http://schemas.microsoft.com/office/excel/2006/main"/></ext><ext uri="{747A6164-185A-40DC-8AA5-F01512510D54}" xmlns:xpdl="http://schemas.microsoft.com/office/spreadsheetml/2016/pivotdefaultlayout"><xpdl:pivotTableDefinition16 EnabledSubtotalsDefault="0" SubtotalsOnTopDefault="0"/></ext></extLst>`}};function dy(e){return{t:e.t,r:e.r===void 0?void 0:parseInt(e.r,10),i:e.i===void 0?void 0:parseInt(e.i,10),x:[]}}function fy(e,t,n,r){e.openNode(`dataFields`,{count:n.length});for(let i=0;i<n.length;i++){let a=n[i],o=r[i]??`sum`,s=Dg[o],c=t[a];if(!c)throw Error(`Value field index ${a} is out of bounds (cacheFields has ${t.length} entries)`);let l={name:`${s} of ${c.name}`,fld:a,baseField:0,baseItem:0};o!==`sum`&&(l.subtotal=o),e.leafNode(`dataField`,l)}e.closeNode()}function py(e,t){let n=new Set(t.rows),r=new Set(t.columns),i=new Set(t.values),a=new Set(t.pages??[]);e.openNode(`pivotFields`,{count:t.cacheFields.length});for(let o=0;o<t.cacheFields.length;o++){let s=t.cacheFields[o];my(e,n.has(o),r.has(o),i.has(o),a.has(o),s.sharedItems)}e.closeNode()}function my(e,t,n,r,i,a){if(t||n||i){if(!a)throw Error(`sharedItems is required for axis field (row/column/page)`);let i={axis:t?`axisRow`:n?`axisCol`:`axisPage`};r&&(i.dataField=`1`),i.compact=`0`,i.outline=`0`,i.showAll=`0`,e.openNode(`pivotField`,i),e.openNode(`items`,{count:a.length+1});for(let t=0;t<a.length;t++)e.leafNode(`item`,{x:t});e.leafNode(`item`,{t:`default`}),e.closeNode(),e.closeNode();return}let o={};r&&(o.dataField=`1`),o.compact=`0`,o.outline=`0`,o.showAll=`0`,o.defaultSubtotal=`0`,e.leafNode(`pivotField`,o)}var hy=class extends U{get tag(){return`dimension`}render(e,t){t&&e.leafNode(`dimension`,{ref:t})}parseOpen(e){return e.name===`dimension`?(this.model=e.attributes.ref,!0):!1}parseText(){}parseClose(){return!1}},gy=class extends U{get tag(){return`mergeCell`}render(e,t){e.leafNode(`mergeCell`,{ref:t})}parseOpen(e){return e.name===`mergeCell`?(this.model=e.attributes.ref,!0):!1}parseText(){}parseClose(){return!1}},_y=class{constructor(){this.merges={}}add(e){if(this.merges[e.master])this.merges[e.master].expandToAddress(e.address);else{let t=`${e.master}:${e.address}`;this.merges[e.master]=new N(t)}}get mergeCells(){return Object.values(this.merges).map(e=>e.range)}reconcile(e,t){e.forEach(e=>{let n=M.decode(e);for(let e=n.top;e<=n.bottom;e++){let r=t[e-1];for(let t=n.left;t<=n.right;t++){let i=r.cells[t-1];i?i.type===1&&(i.master=n.tl):r.cells[t]={type:0,address:M.encodeAddress(e,t)}}}})}getMasterAddress(e){let t=this.hash[e];return t&&t.tl}};function vy(e){return e?`1`:void 0}var yy=class extends U{get tag(){return`printOptions`}render(e,t){if(t){let n={headings:vy(t.showRowColHeaders),gridLines:vy(t.showGridLines),horizontalCentered:vy(t.horizontalCentered),verticalCentered:vy(t.verticalCentered)};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={showRowColHeaders:e.attributes.headings===`1`,showGridLines:e.attributes.gridLines===`1`,horizontalCentered:e.attributes.horizontalCentered===`1`,verticalCentered:e.attributes.verticalCentered===`1`},!0;default:return!1}}parseText(){}parseClose(){return!1}},by=class extends U{get tag(){return`tablePart`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}};let xy=(e,t)=>{Object.keys(t).forEach(n=>{let r=e[n],i=t[n];r===void 0&&i!==void 0&&(e[n]=i)})},Sy=(e,t)=>{if(!t||!t.length)return e;if(!e||!e.length)return t;let n={},r={};return e.forEach(e=>{n[e.ref]=e,e.rules.forEach(e=>{let{x14Id:t}=e;t&&(r[t]=e)})}),t.forEach(t=>{t.rules.forEach(i=>{let a=r[i.x14Id];a?xy(a,i):n[t.ref]?n[t.ref].rules.push(i):e.push({ref:t.ref,rules:[i]})})}),e};var Cy=class e extends U{static{this.WORKSHEET_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"xmlns:x14ac":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac`,"mc:Ignorable":`x14ac`}}constructor(e){super();let{maxRows:t,maxCols:n,ignoreNodes:r}=e||{};this.ignoreNodes=r??[],this.map={sheetPr:new yh,dimension:new hy,sheetViews:new W({tag:`sheetViews`,count:!1,childXform:new wh}),sheetFormatPr:new hh,cols:new W({tag:`cols`,count:!1,childXform:new Mm}),sheetData:new W({tag:`sheetData`,count:!1,empty:!0,childXform:new mh({maxItems:n}),maxItems:t}),autoFilter:new pm,mergeCells:new W({tag:`mergeCells`,count:!0,childXform:new gy}),rowBreaks:new lh,colBreaks:new jm,hyperlinks:new W({tag:`hyperlinks`,count:!1,childXform:new $p}),pageMargins:new th,dataValidations:new Im,pageSetup:new sh,headerFooter:new Qm,printOptions:new yy,picture:new ch,drawing:new Lm,sheetProtection:new Sh,tableParts:new W({tag:`tableParts`,count:!0,childXform:new by}),conditionalFormatting:new km,extLst:new Zm,ignoredErrors:new eh}}prepare(e,t){t.merges=new _y,e.hyperlinks=t.hyperlinks=[],e.comments=t.comments=[],e.formControls&&e.formControls.length>0&&(!e.views||e.views.length===0)&&(e.views=[{workbookViewId:0}]),t.formulae={},t.siFormulae=0,this.map.cols.prepare(e.cols,t),this.map.sheetData.prepare(e.rows,t),this.map.conditionalFormatting.prepare(e.conditionalFormattings,t),e.mergeCells=t.merges.mergeCells;let n=e.rels=[];function r(e){return`rId${e.length+1}`}e.hyperlinks.forEach(e=>{if(em(e.target))return;let t=r(n);e.rId=t,n.push({Id:t,Type:F.Hyperlink,Target:e.target,TargetMode:`External`})});let{fileIndex:i}=e;if(e.comments.length>0){let a={Id:r(n),Type:F.Comments,Target:ud(i)};n.push(a);let o={Id:r(n),Type:F.VmlDrawing,Target:dd(i)};n.push(o),e.comments.forEach(e=>{e.refAddress=M.decodeAddress(e.ref)}),t.commentRefs.push({commentName:`comments${i}`,vmlDrawing:`vmlDrawing${i}`})}if(e.drawing&&e.drawing.anchors){let i=e.drawing;i.rId=r(n),i.name||=`drawing${++t.drawingsCount}`;let a=(i.rels??[]).some(e=>e.Target&&e.Target.includes(`/charts/`));i.anchors=[],a||(i.rels=[]),t.drawings.push(i),n.push({Id:i.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:pd(i.name)})}let a=[],o=[],s=[],c=[];if(e.media.forEach(e=>{e.type===`background`?a.push(e):e.type===`image`?o.push(e):e.type===`watermark`?s.push(e):e.type===`headerImage`&&c.push(e)}),a.forEach(i=>{let a=r(n),o=t.media[i.imageId];n.push({Id:a,Type:F.Image,Target:rm(o)}),e.background={rId:a},e.image=t.media[i.imageId]}),o.length>0){let{drawing:i}=e;i||(i=e.drawing={rId:r(n),name:`drawing${++t.drawingsCount}`,anchors:[],rels:[]},t.drawings.push(i),n.push({Id:i.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:pd(i.name)}));let a=im(o,i.rels,{getBookImage:e=>t.media[e],nextRId:e=>r(e)});i.anchors.push(...a.anchors),i.rels=a.rels}if(s.length>0){let{drawing:i}=e;i||(i=e.drawing={rId:r(n),name:`drawing${++t.drawingsCount}`,anchors:[],rels:[]},t.drawings.push(i),n.push({Id:i.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:pd(i.name)}));for(let n of s){let a=t.media[n.imageId];if(!a)continue;let o=r(i.rels);i.rels.push({Id:o,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,Target:rm(a)});let s=n.opacity===void 0?.15:n.opacity,c=Math.round(Math.max(0,Math.min(1,s))*1e5),l=e.dimensions,u=l?Math.max(l.model?.right??100,100):100,d=l?Math.max(l.model?.bottom??200,200):200;i.anchors.push({picture:{rId:o,alphaModFix:c},range:{editAs:`absolute`,tl:{nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0},br:{nativeCol:u,nativeColOff:0,nativeRow:d,nativeRowOff:0}}})}}if(c.length>0){let a=c[0],o=t.media[a.imageId];if(o){let s=r(n);n.push({Id:s,Type:F.VmlDrawing,Target:fd(i)}),e.headerImage={vmlRelId:s,imageId:a.imageId,bookImage:o,headerWidth:a.headerWidth,headerHeight:a.headerHeight},t.hasHeaderWatermark=!0,e.headerFooter||={};let c=a.applyTo||`all`,l=t=>{let n=e.headerFooter[t]||``;return n.includes(`&G`)?n:n.includes(`&C`)?n.replace(`&C`,`&C&G`):n+`&C&G`};(c===`all`||c===`odd`)&&(e.headerFooter.oddHeader=l(`oddHeader`)),(c===`all`||c===`even`)&&(e.headerFooter.evenHeader=l(`evenHeader`),e.headerFooter.differentOddEven=!0),(c===`all`||c===`first`)&&(e.headerFooter.firstHeader=l(`firstHeader`),e.headerFooter.differentFirst=!0)}}if(e.tables.forEach(e=>{let i=r(n);e.rId=i,n.push({Id:i,Type:F.Table,Target:vd(e.target)}),e.columns.forEach(e=>{let{style:n}=e;n&&(e.dxfId=t.styles.addDxfStyle(n))})}),(e.pivotTables??[]).forEach(e=>{n.push({Id:r(n),Type:F.PivotTable,Target:gd(e.tableNumber)})}),e.formControls&&e.formControls.length>0){let{drawing:a}=e;a||(a=e.drawing={rId:r(n),name:`drawing${++t.drawingsCount}`,anchors:[],rels:[]},t.drawings.push(a),n.push({Id:a.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:pd(a.name)})),e.comments.length===0&&n.push({Id:r(n),Type:F.VmlDrawing,Target:dd(i)});let o=e=>({nativeCol:e.col,nativeColOff:e.colOff,nativeRow:e.row,nativeRowOff:e.rowOff});for(let i of e.formControls){let e=t.formControlRefs.length+1;i.ctrlPropId=e;let s=r(n);i.ctrlPropRelId=s,n.push({Id:s,Type:F.CtrlProp,Target:Sd(e)}),t.formControlRefs.push(e);let c=`Check Box ${Math.max(1,i.shapeId-1024)}`;a.anchors.push({range:{editAs:`absolute`,tl:o(i.tl),br:o(i.br)},alternateContent:{requires:`a14`},shape:{cNvPrId:i.shapeId,name:i.name||c,hidden:!0,spid:`_x0000_s${i.shapeId}`,text:i.text}})}}this.map.extLst.prepare(e,t)}render(t,n){t.openXml(z);let r={...e.WORKSHEET_ATTRIBUTES};n.formControls&&n.formControls.length>0&&(r[`xmlns:x14`]=`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`,r[`xmlns:xdr`]=`http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing`,r[`mc:Ignorable`]=`${r[`mc:Ignorable`]} x14`),t.openNode(`worksheet`,r);let i=n.properties?{defaultRowHeight:n.properties.defaultRowHeight,dyDescent:n.properties.dyDescent,outlineLevelCol:n.properties.outlineLevelCol,outlineLevelRow:n.properties.outlineLevelRow,customHeight:n.properties.customHeight}:void 0;n.properties&&n.properties.defaultColWidth&&(i.defaultColWidth=n.properties.defaultColWidth);let a={outlineProperties:n.properties&&n.properties.outlineProperties,tabColor:n.properties&&n.properties.tabColor,pageSetup:n.pageSetup&&n.pageSetup.fitToPage?{fitToPage:n.pageSetup.fitToPage}:void 0},o=n.pageSetup&&n.pageSetup.margins,s={showRowColHeaders:n.pageSetup&&n.pageSetup.showRowColHeaders,showGridLines:n.pageSetup&&n.pageSetup.showGridLines,horizontalCentered:n.pageSetup&&n.pageSetup.horizontalCentered,verticalCentered:n.pageSetup&&n.pageSetup.verticalCentered},c=n.sheetProtection;if(this.map.sheetPr.render(t,a),this.map.dimension.render(t,n.dimensions),this.map.sheetViews.render(t,n.views),this.map.sheetFormatPr.render(t,i),this.map.cols.render(t,n.cols),this.map.sheetData.render(t,n.rows),this.map.sheetProtection.render(t,c),this.map.autoFilter.render(t,n.autoFilter),this.map.mergeCells.render(t,n.mergeCells),this.map.conditionalFormatting.render(t,n.conditionalFormattings),this.map.dataValidations.render(t,n.dataValidations),this.map.hyperlinks.render(t,n.hyperlinks),this.map.printOptions.render(t,s),this.map.pageMargins.render(t,o),this.map.pageSetup.render(t,n.pageSetup),this.map.headerFooter.render(t,n.headerFooter),this.map.rowBreaks.render(t,n.rowBreaks),this.map.colBreaks.render(t,n.colBreaks),this.map.drawing.render(t,n.drawing),this.map.picture.render(t,n.background),n.rels&&n.rels.forEach(e=>{if(e.Type===F.VmlDrawing){if(n.headerImage&&e.Id===n.headerImage.vmlRelId)return;t.leafNode(`legacyDrawing`,{"r:id":e.Id})}}),n.headerImage&&t.leafNode(`legacyDrawingHF`,{"r:id":n.headerImage.vmlRelId}),n.formControls&&n.formControls.length>0){t.openNode(`mc:AlternateContent`),t.openNode(`mc:Choice`,{Requires:`x14`}),t.openNode(`controls`);for(let e of n.formControls){if(!e.ctrlPropRelId)continue;let n=`Check Box ${Math.max(1,e.shapeId-1024)}`;t.openNode(`mc:AlternateContent`),t.openNode(`mc:Choice`,{Requires:`x14`}),t.openNode(`control`,{shapeId:e.shapeId,"r:id":e.ctrlPropRelId,name:e.name||n}),t.openNode(`controlPr`,{locked:0,defaultSize:0,print:+!!e.print,autoFill:0,autoLine:0,autoPict:0}),t.openNode(`anchor`),t.openNode(`from`),t.leafNode(`xdr:col`,void 0,e.tl.col),t.leafNode(`xdr:colOff`,void 0,e.tl.colOff),t.leafNode(`xdr:row`,void 0,e.tl.row),t.leafNode(`xdr:rowOff`,void 0,e.tl.rowOff),t.closeNode(),t.openNode(`to`),t.leafNode(`xdr:col`,void 0,e.br.col),t.leafNode(`xdr:colOff`,void 0,e.br.colOff),t.leafNode(`xdr:row`,void 0,e.br.row),t.leafNode(`xdr:rowOff`,void 0,e.br.rowOff),t.closeNode(),t.closeNode(),t.closeNode(),t.closeNode(),t.closeNode(),t.leafNode(`mc:Fallback`),t.closeNode()}t.closeNode(),t.closeNode(),t.leafNode(`mc:Fallback`),t.closeNode()}this.map.ignoredErrors.render(t,n.ignoredErrors),this.map.tableParts.render(t,n.tables),this.map.extLst.render(t,n),t.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===`worksheet`?(Object.values(this.map).forEach(e=>{e.reset()}),!0):(this.map[e.name]&&!this.ignoreNodes.includes(e.name)&&(this.parser=this.map[e.name],this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`worksheet`:{let e=this.map.sheetFormatPr.model||{};this.map.sheetPr.model&&this.map.sheetPr.model.tabColor&&(e.tabColor=this.map.sheetPr.model.tabColor),this.map.sheetPr.model&&this.map.sheetPr.model.outlineProperties&&(e.outlineProperties=this.map.sheetPr.model.outlineProperties);let t={fitToPage:this.map.sheetPr.model&&this.map.sheetPr.model.pageSetup&&this.map.sheetPr.model.pageSetup.fitToPage||!1,margins:this.map.pageMargins.model},n=Object.assign(t,this.map.pageSetup.model,this.map.printOptions.model),r=Sy(this.map.conditionalFormatting.model,this.map.extLst.model&&this.map.extLst.model[`x14:conditionalFormattings`]);return this.model={dimensions:this.map.dimension.model,cols:this.map.cols.model,rows:this.map.sheetData.model,mergeCells:this.map.mergeCells.model,hyperlinks:this.map.hyperlinks.model,dataValidations:this.map.dataValidations.model,properties:e,views:this.map.sheetViews.model,pageSetup:n,headerFooter:this.map.headerFooter.model,background:this.map.picture.model,drawing:this.map.drawing.model,tables:this.map.tableParts.model,conditionalFormattings:r,rowBreaks:this.map.rowBreaks.model??[],colBreaks:this.map.colBreaks.model??[],ignoredErrors:this.map.ignoredErrors.model??[]},this.map.autoFilter.model&&(this.model.autoFilter=this.map.autoFilter.model),this.map.sheetProtection.model&&(this.model.sheetProtection=this.map.sheetProtection.model),!1}default:return!0}}reconcile(e,t){let n=(e.relationships??[]).reduce((n,r)=>{if(n[r.Id]=r,r.Type===F.Comments){let n=t.comments?.[r.Target];n&&(e.comments=n.comments)}if(r.Type===F.VmlDrawing&&e.comments&&e.comments.length){let n=t.vmlDrawings?.[r.Target];if(n){let t=n.comments;e.comments.forEach((e,n)=>{e.note=Object.assign({},e.note,t[n])})}}return n},{});if(t.commentsMap=(e.comments??[]).reduce((e,t)=>(t.ref&&(e[t.ref]=t),e),{}),t.hyperlinkMap=(e.hyperlinks??[]).reduce((e,t)=>{if(t.rId){let r=n[t.rId];r&&(e[t.address]=r.Target)}else t.target&&(e[t.address]=t.target);return e},{}),t.formulae={},e.rows){e.rows.includes(void 0)&&(e.rows=e.rows.filter(Boolean));for(let t=0;t<e.rows.length;t++){let n=e.rows[t];n.cells?.includes(void 0)&&(n.cells=n.cells.filter(Boolean))}}else e.rows=[];if(this.map.cols.reconcile(e.cols,t),this.map.sheetData.reconcile(e.rows,t),this.map.conditionalFormatting.reconcile(e.conditionalFormattings,t),e.media=[],e.drawing){let r=n[e.drawing.rId];if(r){let n=r.Target.match(/\/drawings\/([a-zA-Z0-9]+)[.][a-zA-Z]{3,4}$/);if(n){let r=n[1],i=t.drawings[r];i?(e.drawing={...i,name:r,rels:t.drawingRels?.[r]??i.rels??[]},i.anchors.forEach(t=>{t.medium&&(t.medium.alphaModFix!==void 0&&t.medium.alphaModFix<1e5?e.media.push({type:`watermark`,imageId:t.medium.index,opacity:t.medium.alphaModFix/1e5}):e.media.push({type:`image`,imageId:t.medium.index,range:t.range,hyperlinks:t.picture.hyperlinks}))})):e.drawing=void 0}else e.drawing=void 0}else e.drawing=void 0}let r=e.background&&n[e.background.rId];if(r){let n=r.Target.split(`/media/`)[1],i=t.mediaIndex&&t.mediaIndex[n];i!==void 0&&e.media.push({type:`background`,imageId:i})}else e.background&&=void 0;e.tables=(e.tables??[]).reduce((e,r)=>{let i=n[r.rId];if(i){let n=t.tables[i.Target];n&&e.push(n)}return e},[]),e.pivotTables=[],(e.relationships??[]).forEach(n=>{if(n.Type===F.PivotTable&&t.pivotTables){let r=t.pivotTables[n.Target];r&&e.pivotTables.push(r)}}),delete e.relationships,delete e.hyperlinks,delete e.comments}},wy=class extends U{constructor(){super(),this.model={val:``}}get tag(){return`customFilter`}render(e,t){e.leafNode(this.tag,{val:t.val,operator:t.operator})}parseOpen(e){return e.name===this.tag?(this.model={val:e.attributes.val,operator:e.attributes.operator},!0):!1}parseText(){}parseClose(){return!1}},Ty=class extends U{constructor(){super(),this.model={val:``}}get tag(){return`filter`}render(e,t){e.leafNode(this.tag,{val:t.val})}parseOpen(e){return e.name===this.tag?(this.model={val:e.attributes.val},!0):!1}parseText(){}parseClose(){return!1}},Ey=class extends U{constructor(){super(),this.map={customFilters:new W({tag:`customFilters`,count:!1,empty:!0,childXform:new wy}),filters:new W({tag:`filters`,count:!1,empty:!0,childXform:new Ty})},this.model={filterButton:!1}}get tag(){return`filterColumn`}prepare(e,t){e.colId=t.index.toString()}render(e,t){if(t.customFilters){e.openNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?`0`:`1`}),this.map.customFilters.render(e,t.customFilters),e.closeNode();return}e.leafNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?`0`:`1`})}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;let{attributes:t}=e;switch(e.name){case this.tag:return this.model={filterButton:t.hiddenButton===`0`},!0;case`dynamicFilter`:return!0;default:if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw new jr(`filterColumn`,`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.customFilters=this.map.customFilters.model,!1;default:return!0}}},Dy=class extends U{constructor(){super(),this.map={filterColumn:new Ey},this.model={autoFilterRef:``,columns:[]}}get tag(){return`autoFilter`}prepare(e){e.columns.forEach((e,t)=>{this.map.filterColumn.prepare(e,{index:t})})}render(e,t){e.openNode(this.tag,{ref:t.autoFilterRef}),t.columns.forEach(t=>{this.map.filterColumn.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:return this.model={autoFilterRef:e.attributes.ref,columns:[]},!0;default:if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw new jr(`autoFilter`,`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.columns.push(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:throw new jr(`autoFilter`,`Unexpected xml node in parseClose: ${e}`)}}},Oy=class extends U{constructor(){super(),this._childText=``,this.model={name:``}}get tag(){return`tableColumn`}prepare(e,t){e.id=t.index+1}_renderAttributes(e){return{id:e.id.toString(),name:Rc(e.name),totalsRowLabel:e.totalsRowLabel?Rc(e.totalsRowLabel):void 0,totalsRowFunction:e.totalsRowFunction===`none`?void 0:e.totalsRowFunction,dxfId:e.dxfId}}render(e,t){t.calculatedColumnFormula||t.totalsRowFormula?(e.openNode(this.tag,this._renderAttributes(t)),t.calculatedColumnFormula&&e.leafNode(`calculatedColumnFormula`,void 0,t.calculatedColumnFormula),t.totalsRowFormula&&e.leafNode(`totalsRowFormula`,void 0,t.totalsRowFormula),e.closeNode()):e.leafNode(this.tag,this._renderAttributes(t))}parseOpen(e){if(e.name===this.tag){let{attributes:t}=e;return this.model={name:Pc(t.name),totalsRowLabel:t.totalsRowLabel?Pc(t.totalsRowLabel):void 0,totalsRowFunction:t.totalsRowFunction,dxfId:t.dxfId},!0}return(e.name===`calculatedColumnFormula`||e.name===`totalsRowFormula`)&&(this._childTag=e.name,this._childText=``),!0}parseText(e){this._childTag&&(this._childText+=e)}parseClose(e){return e===this.tag?!1:(this._childTag&&e===this._childTag&&(this.model[this._childTag]=this._childText,this._childTag=void 0),!0)}},ky=class extends U{constructor(){super(),this.model={theme:null,showFirstColumn:!1,showLastColumn:!1,showRowStripes:!1,showColumnStripes:!1}}get tag(){return`tableStyleInfo`}render(e,t){e.leafNode(this.tag,{name:t.theme?t.theme:void 0,showFirstColumn:t.showFirstColumn?`1`:`0`,showLastColumn:t.showLastColumn?`1`:`0`,showRowStripes:t.showRowStripes?`1`:`0`,showColumnStripes:t.showColumnStripes?`1`:`0`})}parseOpen(e){if(e.name===this.tag){let{attributes:t}=e;return this.model={theme:t.name?t.name:null,showFirstColumn:t.showFirstColumn===`1`,showLastColumn:t.showLastColumn===`1`,showRowStripes:t.showRowStripes===`1`,showColumnStripes:t.showColumnStripes===`1`},!0}return!1}parseText(){}parseClose(){return!1}},Ay=class e extends U{constructor(){super(),this.map={autoFilter:new Dy,tableColumns:new W({tag:`tableColumns`,count:!0,empty:!0,childXform:new Oy}),tableStyleInfo:new ky},this.model={id:0,name:``,tableRef:``,columns:[]}}prepare(e,t){this.map.autoFilter.prepare(e),this.map.tableColumns.prepare(e.columns,t)}get tag(){return`table`}render(t,n){t.openXml(z),t.openNode(this.tag,{...e.TABLE_ATTRIBUTES,id:n.id,name:n.name,displayName:n.displayName||n.name,ref:n.tableRef,totalsRowCount:n.totalsRow?`1`:void 0,headerRowCount:n.headerRow?void 0:`0`}),this.map.autoFilter.render(t,n),this.map.tableColumns.render(t,n.columns),this.map.tableStyleInfo.render(t,n.style),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;let{name:t,attributes:n}=e;switch(t){case this.tag:this.reset(),this.model={name:n.name,displayName:n.displayName||n.name,tableRef:n.ref,totalsRow:n.totalsRowCount===`1`,headerRow:n.headerRowCount!==`0`};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.columns=this.map.tableColumns.model,this.map.autoFilter.model&&(this.model.autoFilterRef=this.map.autoFilter.model.autoFilterRef,this.map.autoFilter.model.columns.forEach((e,t)=>{this.model.columns[t].filterButton=e.filterButton})),this.model.style=this.map.tableStyleInfo.model,!1;default:return!0}}reconcile(e,t){e.tableRef&&!e.ref&&(e.ref=e.tableRef),e.rows||=[],e.columns.forEach(e=>{e.dxfId!==void 0&&(e.style=t.styles.getDxfStyle(e.dxfId))})}static{this.TABLE_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}},jy=class{constructor(e){this._stack=[],this._leaf=!1,this._open=!1,this._pending=``,this._target=e}get depth(){return this._stack.length}get currentElement(){return this._stack.length>0?this._stack[this._stack.length-1]:void 0}_flushOpen(e){this._target.write(this._pending+e),this._pending=``,this._open=!1}openXml(e){let t=e?{...z,...e}:z,n=`<?xml`;for(let e in t){let r=t[e];r!==void 0&&(Ec(e),n+=` ${e}="${wc(String(r))}"`)}this._target.write(n+`?>
|
|
427
|
-
`)}openNode(e,t){Ec(e),this._open&&this._flushOpen(`>`);let n=`<${e}`;if(t)for(let e in t){let r=t[e];r!==void 0&&(Ec(e),n+=` ${e}="${wc(String(r))}"`)}this._pending=n,this._stack.push(e),this._leaf=!0,this._open=!0}addAttribute(e,t){if(!this._open)throw new qs(`add attribute`,`no element is open`);Ec(e),this._pending+=` ${e}="${wc(String(t))}"`}addAttributes(e){if(!this._open)throw new qs(`add attributes`,`no element is open`);if(e)for(let t in e){let n=e[t];n!==void 0&&(Ec(t),this._pending+=` ${t}="${wc(String(n))}"`)}}writeText(e){this._open&&this._flushOpen(`>`),this._leaf=!1,this._target.write(R(String(e)))}writeRaw(e){this._open&&this._flushOpen(`>`),this._leaf=!1,this._target.write(e)}writeCData(e){this._open&&this._flushOpen(`>`),this._leaf=!1,this._target.write(Dc(e))}writeComment(e){this._open&&this._flushOpen(`>`),this._leaf=!1,Oc(e),this._target.write(`<!--${e}-->`)}closeNode(){let e=this._stack.pop();if(e===void 0)throw new qs(`close node`,`no element is open`);this._leaf&&this._open?this._flushOpen(`/>`):(this._open&&this._flushOpen(`>`),this._target.write(`</${e}>`)),this._open=!1,this._leaf=!1}leafNode(e,t,n){Ec(e),this._open&&this._flushOpen(`>`);let r=`<${e}`;if(t)for(let e in t){let n=t[e];n!==void 0&&(Ec(e),r+=` ${e}="${wc(String(n))}"`)}n===void 0?r+=`/>`:r+=`>${R(String(n))}</${e}>`,this._target.write(r),this._leaf=!1}closeAll(){for(;this._stack.length>0;)this.closeNode()}},My=class e{static{this.textEncoder=new TextEncoder}constructor(e){this.events=new Map,this.pipedStream=null,this.finalized=!1,this._needsDrain=!1,this._drainResolvers=[],this._pendingWrites=0,this._pendingWriteResolvers=[],this._earlyError=null,this.level=e?.level??6,this.modTime=e?.modTime,this.timestamps=e?.timestamps,this.zip=new Lp((e,t,n)=>{if(e){this._emit(`error`,e);return}t&&t.length>0&&(this._emit(`data`,t),this.pipedStream&&this._checkBackpressure(this.pipedStream.write(t))),n&&(this.pipedStream&&this.pipedStream.end(),this._emit(`finish`))})}_emit(e,...t){if(e===`error`){let n=this.events.get(e);if(!n||n.size===0){this._earlyError=t[0]instanceof Error?t[0]:Error(String(t[0]));return}}let n=this.events.get(e);if(n)for(let e of n)e(...t)}_checkBackpressure(e){if(e instanceof Promise){this._pendingWrites++,e.then(e=>{e||(this._needsDrain=!0)},()=>{}).finally(()=>{if(this._pendingWrites--,this._pendingWrites===0){let e=this._pendingWriteResolvers.splice(0);for(let t of e)t()}});return}e===!1&&(this._needsDrain=!0)}on(e,t){let n=this.events.get(e)||new Set;if(n.add(t),this.events.set(e,n),e===`error`&&this._earlyError){let e=this._earlyError;this._earlyError=null,t(e)}return this}once(e,t){let n=(...r)=>{this.off(e,n),t(...r)};return this.on(e,n)}off(e,t){let n=this.events.get(e);return n?(n.delete(t),n.size===0&&this.events.delete(e),this):this}pipe(e){this.pipedStream=e,e&&typeof e.on==`function`&&e.on(`drain`,()=>{this._needsDrain=!1;let e=this._drainResolvers.splice(0);for(let t of e)t()})}async waitForDrain(){if(this._pendingWrites>0&&await new Promise(e=>{this._pendingWriteResolvers.push(e)}),!(!this._needsDrain||!this.pipedStream))return new Promise(e=>{this._drainResolvers.push(e)})}append(t,n){if(this.finalized)throw new Pr(`append`,`stream already finalized`);let r;r=n.base64?kc(typeof t==`string`?t:String(t)):typeof t==`string`?e.textEncoder.encode(t):t instanceof Uint8Array?t:ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t instanceof ArrayBuffer?new Uint8Array(t):t;let i=new Ip(n.name,{level:this.level,modTime:this.modTime,timestamps:this.timestamps});this.zip.add(i),i.push(r,!0)}createEntry(t){if(this.finalized)throw new Pr(`createEntry`,`stream already finalized`);let n=new Ip(t,{level:this.level,modTime:this.modTime,timestamps:this.timestamps});this.zip.add(n);let r=e.textEncoder;return{write(e){n.push(r.encode(e))},end(){n.push(new Uint8Array,!0)}}}finalize(){this.finalized||(this.finalized=!0,this.zip.end())}};function Ny(e){let t=/(?:^|\/)externalLink(\d+)[.]xml$/.exec(e);return t?parseInt(t[1],10):void 0}function Py(e,t){t&&(e.sheetNames.includes(t)||e.sheetNames.push(t))}var Fy=class e{static{this.RelType=F}constructor(e){this.workbook=e}createBinaryStream(e){let t=new or;return t.end(e),t}createTextStream(e){let t=new or;return t.end(e),t}createStreamBuf(){return new Ph}bufferToString(e){return $c(e)}createZipWriter(e){return new My(e)}async writeToZip(e,t){let{model:n}=this.workbook;this.prepareModel(n,t),await this.addContentTypes(e,n),await this.addOfficeRels(e,n),await this.addWorkbookRels(e,n),await this.addWorkbook(e,n),await this.addWorksheets(e,n),await this.addSharedStrings(e,n),await this.addDrawings(e,n),await this.addTables(e,n),await this.addPivotTables(e,n),await this.addExternalLinks(e,n),this.addPassthrough(e,n),await this.addThemes(e,n),await this.addStyles(e,n),await this.addFeaturePropertyBag(e,n),await this.addMetadata(e,n),await this.addMedia(e,n),await this.addApp(e,n),await this.addCore(e,n)}async read(e,t){let n=[];return await new Promise((t,r)=>{let i=e=>{n.push(e)},a=()=>{e.off(`data`,i),e.off(`end`,a),e.off(`error`,o),t()},o=t=>{e.off(`data`,i),e.off(`end`,a),e.off(`error`,o),r(t)};e.on(`data`,i),e.on(`end`,a),e.on(`error`,o)}),this.loadBuffer(E(n),t)}async write(e,t){t||={},t.zip=t.zip||{},t.zip.modTime??=this.workbook.modified??this.workbook.created;let n=this.createZipWriter(t.zip);return n.pipe(e),await this.writeToZip(n,t),this._finalize(n)}async load(e,t){if(e==null)throw new Nr(`<input>`,`read`,`Can't read the data of 'the loaded zip file'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?`);let n;if(typeof e==`string`){if(!t?.base64)throw new Nr(`<input>`,`read`,`Can't read the data of 'the loaded zip file'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ? String input requires options.base64 === true (base64-encoded zip archive).`);n=kc(e)}else if(e instanceof Uint8Array)n=e;else if(e instanceof ArrayBuffer)n=new Uint8Array(e);else if(ArrayBuffer.isView(e))n=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);else throw new Nr(`<input>`,`read`,`Can't read the data of 'the loaded zip file'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?`);return this.loadBuffer(n,t)}async loadBuffer(e,t){let n=await new bv(e).extractAll(),r={};for(let[e,t]of n)r[e]=t;return this.loadFromFiles(r,t)}createEmptyModel(){return{worksheets:[],worksheetHash:{},worksheetRels:[],themes:{},media:[],mediaIndex:{},drawings:{},drawingRels:{},rawDrawings:{},comments:{},tables:{},vmlDrawings:{},pivotTables:{},pivotTableRels:{},pivotCacheDefinitions:{},pivotCacheRecords:{},passthrough:{},externalLinksByIndex:{},externalLinkRelsByIndex:{}}}async collectStreamData(e){let t=[];return await new Promise((n,r)=>{e.on(`data`,e=>{typeof e==`string`?t.push(new TextEncoder().encode(e)):e instanceof Uint8Array?t.push(e):t.push(new Uint8Array(e))}),e.on(`end`,()=>n()),e.on(`error`,r)}),E(t)}drawingHasChartReference(e){return e.rels&&e.rels.some(e=>e.Target&&e.Target.includes(`/charts/`))}drawingRelsHasChartReference(e){return Array.isArray(e)&&e.some(e=>typeof e?.Target==`string`&&e.Target.includes(`/charts/`))}async _processKnownEntry(e,t,n,r){let i=yu(n);if(i!==void 0)return await this._processWorksheetEntry(e,t,i,r,n),!0;switch(n){case V.rootRels:return t.globalRels=await this.parseRels(e),!0;case V.xlWorkbook:{let n=await this.parseWorkbook(e);return t.sheets=n.sheets,t.definedNames=n.definedNames,t.views=n.views,t.properties=n.properties,t.protection=n.protection,t.calcProperties=n.calcProperties,t.pivotCaches=n.pivotCaches,t.externalReferences=n.externalReferences,!0}case V.xlSharedStrings:return t.sharedStrings=new pg,await t.sharedStrings.parseStream(e),!0;case V.xlWorkbookRels:return t.workbookRels=await this.parseRels(e),!0;case V.docPropsApp:{let n=await new zh().parseStream(e);return n&&(t.company=n.company,t.manager=n.manager),!0}case V.docPropsCore:{let n=await new Hh().parseStream(e);return Object.assign(t,n),!0}case V.xlStyles:return t.styles=new hf,await t.styles.parseStream(e),!0;case V.xlMetadata:{let n=await new Vd().parseStream(e);return n&&(t.metadata=n),!0}default:return!1}}async loadFromZipEntries(e,t){let n=this.createEmptyModel();for await(let r of e){let e=!1,i=async()=>{e||(e=!0,await r.drain())};if(r.type===`Directory`){await i();continue}let a=vu(r.name),o=r.stream;try{await this._processKnownEntry(o,n,a,t)||await this._processDefaultEntry(o,n,a)||await i()}finally{try{await i()}catch{}}}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async writeBuffer(e){e||={},e.zip=e.zip||{},e.zip.modTime??=this.workbook.modified??this.workbook.created;let t=this.createZipWriter(e.zip),n=this.createStreamBuf();return t.pipe(n),await this.writeToZip(t,e),await this._finalize(t),n.read()||new Uint8Array}async addMedia(e,t){await Promise.all(t.media.map(async t=>{if(t.type!==`image`)throw new Rr(`Unsupported media`);let n=Bu(`${t.name??`undefined`}.${t.extension}`);if(t.filename){if(this.readFileAsync){let r=await this.readFileAsync(t.filename);return e.append(r,{name:n})}throw new Mr(`Loading images from filename`,`not supported in this environment`)}if(t.buffer)return e.append(t.buffer,{name:n});if(t.base64){let r=t.base64.substring(t.base64.indexOf(`,`)+1);return e.append(r,{name:n,base64:!0})}throw new Rr(`Unsupported media`)}))}parseRels(e){return new Ud().parseStream(e)}parseWorkbook(e){return new Bd().parseStream(e)}parseSharedStrings(e){return new pg().parseStream(e)}reconcile(e,t){let n=new Bd,r=new Cy(t),i=new ug,a=new Ay;n.reconcile(e);let o={media:e.media,mediaIndex:e.mediaIndex};if(Object.keys(e.drawings).forEach(t=>{let n=e.drawings[t],r=e.drawingRels[t];r&&(o.rels=r.reduce((e,t)=>(e[t.Id]=t,e),{}),(n.anchors??[]).forEach(e=>{let t=e.picture&&e.picture.hyperlinks;t&&o.rels[t.rId]&&(t.hyperlink=o.rels[t.rId].Target,delete t.rId)}),i.reconcile(n,o))}),e.rawDrawings&&e.drawingRels)for(let t of Object.keys(e.rawDrawings)){let n=e.drawingRels[t];n&&!this.drawingRelsHasChartReference(n)&&delete e.rawDrawings[t]}let s={styles:e.styles};Object.values(e.tables).forEach(e=>{a.reconcile(e,s)}),this._reconcilePivotTables(e);let c={styles:e.styles,sharedStrings:e.sharedStrings,media:e.media,mediaIndex:e.mediaIndex,date1904:e.properties?.date1904,drawings:e.drawings,drawingRels:e.drawingRels,comments:e.comments,tables:e.tables,vmlDrawings:e.vmlDrawings,pivotTables:e.pivotTablesIndexed,hasDynamicArrayMetadata:!!e.metadata?.hasDynamicArrays,dynamicArrayCmIndices:e.metadata?.dynamicArrayCmIndices};e.worksheets.forEach(t=>{t.relationships=e.worksheetRels[t.sheetNo],r.reconcile(t,c)}),this._reconcileExternalLinks(e),delete e.worksheetHash,delete e.worksheetRels,delete e.globalRels,delete e.sharedStrings,delete e.workbookRels,delete e.sheetDefs,e.defaultFont=e.styles?.defaultFont,delete e.styles,delete e.mediaIndex,delete e.drawings,delete e.drawingRels,delete e.vmlDrawings,delete e.pivotTableRels,delete e.metadata,delete e.externalReferences,delete e.externalLinksByIndex,delete e.externalLinkRelsByIndex}_reconcileExternalLinks(e){let t=e.externalReferences;if(!t||t.length===0){e.externalLinks||=[];return}let n=e.workbookRels??[],r=new Map;for(let e of n)e.Type===F.ExternalLink&&r.set(e.Id,e);let i=[];for(let n=0;n<t.length;n++){let a=t[n],o=r.get(a.rId);if(!o)continue;let s=Ny(o.Target);if(s===void 0)continue;let c=e.externalLinksByIndex[s],l=e.externalLinkRelsByIndex[s]??[],u=l.find(e=>e.Type===F.ExternalLinkPath)??l.find(e=>e.TargetMode===`External`);i.push({index:n+1,rId:a.rId,target:u?.Target??``,targetMode:u?.TargetMode??`External`,sheetNames:c?.sheetNames??[],cachedValues:c?.cachedValues??{}})}e.externalLinks=i}_normaliseExternalLinks(e){let t=this.workbook._collectExternalLinksForWrite(),n=new Map;for(let e of t)e.target&&n.set(e.target.toLowerCase(),e);let r={links:t,byTarget:n,workbook:this.workbook};for(let t of e.worksheets??[])for(let e of t.rows??[])for(let t of e.cells??[])typeof t?.formula==`string`&&t.formula.length>0&&(t.formula=this._normaliseFormulaExternalRefs(t.formula,r)),typeof t?.sharedFormula==`string`&&t.sharedFormula.length>0&&(t.sharedFormula=this._normaliseFormulaExternalRefs(t.sharedFormula,r));e.externalLinks=t}_normaliseFormulaExternalRefs(e,t){return wv(e,e=>{if(e.numeric)return e.index!==null&&e.index>=1&&e.index<=t.links.length?(Py(t.links[e.index-1],e.sheet),e.index):null;let n=e.workbook.toLowerCase(),r=t.byTarget.get(n);return r?(Py(r,e.sheet),e.sheet&&t.workbook._recordAutoExternalLink(e.workbook,e.sheet)):(r={index:t.workbook._recordAutoExternalLink(e.workbook,e.sheet),target:e.workbook,targetMode:`External`,sheetNames:e.sheet?[e.sheet]:[],cachedValues:{}},t.links.push(r),t.byTarget.set(n,r)),r.index})}_reconcilePivotTables(e){let t=e.pivotTables||{};if(typeof t!=`object`||Object.keys(t).length===0){e.pivotTables=[],e.pivotTablesIndexed={};return}let n=this._buildDefinitionToCacheIdMap(e),r=new Map;Object.entries(e.pivotCacheDefinitions||{}).forEach(([t,i])=>{let a=n.get(t);if(a!==void 0){let n=t.replace(`Definition`,`Records`);r.set(a,{definition:i,records:e.pivotCacheRecords?.[n],definitionName:t})}});let i=[],a={};Object.entries(t).forEach(([e,t])=>{let n=this._extractTableNumber(e),o=r.get(t.cacheId),s=this._determineMetric(t.dataFields),c={...t,tableNumber:n,cacheId:String(t.cacheId),cacheDefinition:o?.definition,cacheRecords:o?.records,cacheFields:o?.definition?.cacheFields??[],rows:t.rowFields.filter(e=>e>=0),columns:t.colFields.filter(e=>e>=0&&e!==-2),values:t.dataFields.map(e=>e.fld),pages:t.pageFields.map(e=>e.fld),metric:s,valueMetrics:this._determineValueMetrics(t.dataFields,s),applyWidthHeightFormats:t.applyWidthHeightFormats===`1`?`1`:`0`};i.push(c),a[_d(e)]=c}),i.sort((e,t)=>e.tableNumber-t.tableNumber),e.pivotTables=i,e.pivotTablesIndexed=a}_extractTableNumber(e){let t=e.match(/pivotTable(\d+)/);return t?parseInt(t[1],10):1}_buildCacheIdMap(e){let t=new Map,n=e.pivotCaches??[];for(let e of n)e.cacheId&&e.rId&&t.set(e.rId,parseInt(e.cacheId,10));return t}_buildDefinitionToCacheIdMap(t){let n=new Map,r=this._buildCacheIdMap(t),i=t.workbookRels??[];for(let t of i)if(t.Type===e.RelType.PivotCacheDefinition&&t.Target){let e=t.Target.match(/pivotCacheDefinition(\d+)\.xml/);if(e){let i=`pivotCacheDefinition${e[1]}`,a=r.get(t.Id);a!==void 0&&n.set(i,a)}}return n}_determineMetric(e){return e.length>0&&e[0].subtotal?e[0].subtotal:`sum`}_determineValueMetrics(e,t){return e.map(e=>e.subtotal||t)}async _processWorksheetEntry(e,t,n,r,i){let a=await new Cy(r).parseStream(e);if(!a)throw new jr(i,`Failed to parse worksheet`);a.sheetNo=n,t.worksheetHash[i]=a,t.worksheets.push(a)}async _processCommentEntry(e,t,n){let r=await new Vv().parseStream(e);t.comments[hd(n)]=r}async _processTableEntry(e,t,n){let r=await new Ay().parseStream(e);t.tables[yd(n)]=r}async _processWorksheetRelsEntry(e,t,n){let r=await new Ud().parseStream(e);t.worksheetRels[n]=r}async _processMediaEntry(e,t,n){let r=n.lastIndexOf(`.`);if(r>=1){let i=n.substr(r+1),a=n.substr(0,r);await new Promise((r,o)=>{let s=this.createStreamBuf(),c=()=>{e.off(`error`,u),s.off(`error`,u),s.off(`finish`,l)},l=()=>{c(),t.mediaIndex[n]=t.media.length,t.mediaIndex[a]=t.media.length;let e={type:`image`,name:a,extension:i,buffer:s.read()};t.media.push(e),r()},u=e=>{c(),o(e)};s.once(`finish`,l),e.on(`error`,u),s.on(`error`,u),e.pipe(s)})}}async _processDrawingEntry(e,t,n,r){let i=r??await this.collectStreamData(e),a=new ug,o=this.bufferToString(i),s=await a.parseStream(this.createTextStream(o));t.drawings[n]=s,t.rawDrawings[n]=i}async _processDrawingRelsEntry(e,t,n){let r=await new Ud().parseStream(e);t.drawingRels[n]=r}async _processVmlDrawingEntry(e,t,n){let r=await new Uv().parseStream(e);t.vmlDrawings[md(n)]=r}async _processVmlDrawingHFEntry(e,t,n){let r=await new Uv().parseStream(e);r&&r.headerImage&&(t.vmlDrawingHF||={},t.vmlDrawingHF[n]=r.headerImage)}async _processThemeEntry(e,t,n){await new Promise((r,i)=>{let a=this.createStreamBuf(),o=()=>{e.off(`error`,c),a.off(`error`,c),a.off(`finish`,s)},s=()=>{o();let e=a.read();t.themes[n]=e?typeof e==`string`?e:this.bufferToString(e):``,r()},c=e=>{o(),i(e)};a.once(`finish`,s),e.on(`error`,c),a.on(`error`,c),e.pipe(a)})}async _processPivotTableEntry(e,t,n){let r=await new uy().parseStream(e);r&&(t.pivotTables[n]=r)}async _processPivotTableRelsEntry(e,t,n){let r=await new Ud().parseStream(e);t.pivotTableRels[n]=r}async _processPivotCacheDefinitionEntry(e,t,n){let r=await new ty().parseStream(e);r&&(t.pivotCacheDefinitions[n]=r)}async _processPivotCacheRecordsEntry(e,t,n){let r=await new ry().parseStream(e);r&&(t.pivotCacheRecords[n]=r)}async _processExternalLinkEntry(e,t,n){let r=await new Mv().parseStream(e);r&&(t.externalLinksByIndex[n]=r)}async _processExternalLinkRelsEntry(e,t,n){let r=await this.parseRels(e);t.externalLinkRelsByIndex[n]=r??[]}async loadFromFiles(e,t){let n=this.createEmptyModel(),r=Object.keys(e).map(t=>({name:t,dir:t.endsWith(`/`),data:e[t]}));for(let e of r)if(!e.dir){let r=vu(e.name),i=Tu(r)?this.createBinaryStream(e.data):this.createTextStream(this.bufferToString(e.data));await this._processKnownEntry(i,n,r,t)||await this._processDefaultEntry(i,n,r,e.data)}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async _processDefaultEntry(e,t,n,r){let i=bu(n);if(i!==void 0)return await this._processWorksheetRelsEntry(e,t,i),!0;let a=Su(n);if(a)return await this._processMediaEntry(e,t,a),!0;let o=Eu(n);if(o)return await this._processDrawingEntry(e,t,o,r),!0;let s=Du(n);if(s)return await this._processDrawingRelsEntry(e,t,s),!0;let c=Ou(n);if(c)return await this._processVmlDrawingEntry(e,t,c),!0;let l=ku(n);if(l)return await this._processVmlDrawingHFEntry(e,t,l),!0;let u=Au(n);if(u)return await this._processCommentEntry(e,t,`comments${u}`),!0;let d=ju(n);if(d)return await this._processTableEntry(e,t,d),!0;let f=wu(n);if(f)return await this._processThemeEntry(e,t,f),!0;let p=Mu(n);if(p)return await this._processPivotTableEntry(e,t,p),!0;let m=Nu(n);if(m)return await this._processPivotTableRelsEntry(e,t,m),!0;let h=Pu(n);if(h)return await this._processPivotCacheDefinitionEntry(e,t,h),!0;if(Fu(n))return!0;let g=Iu(n);if(g)return await this._processPivotCacheRecordsEntry(e,t,g),!0;let _=Lu(n);if(_!==void 0)return await this._processExternalLinkEntry(e,t,_),!0;let v=Ru(n);return v===void 0?Av.isPassthroughPath(n)?(r?t.passthrough[n]=r:await this._processPassthroughEntry(e,t,n),!0):!1:(await this._processExternalLinkRelsEntry(e,t,v),!0)}async _processPassthroughEntry(e,t,n){let r=await this.collectStreamData(e);t.passthrough[n]=r}async _renderToZip(e,t,n,r){let i=e.createEntry(t),a=new jy(i);n.render(a,r),i.end(),await e.waitForDrain()}async addContentTypes(e,t){await this._renderToZip(e,V.contentTypes,new Bh,t)}async addApp(e,t){await this._renderToZip(e,V.docPropsApp,new zh,t)}async addCore(e,t){await this._renderToZip(e,V.docPropsCore,new Hh,t)}async addThemes(e,t){let n=t.themes||{theme1:`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
428
|
-
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <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> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <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> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <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> </a:spDef> <a:lnDef> <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> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>`};Object.keys(n).forEach(t=>{let r=n[t];e.append(r,{name:zu(t)})})}async addOfficeRels(t,n){await this._renderToZip(t,V.rootRels,new Ud,[{Id:`rId1`,Type:e.RelType.OfficeDocument,Target:V.xlWorkbook},{Id:`rId2`,Type:e.RelType.CoreProperties,Target:V.docPropsCore},{Id:`rId3`,Type:e.RelType.ExtenderProperties,Target:V.docPropsApp}])}async addWorkbookRels(t,n){let r=1,i=[{Id:`rId${r++}`,Type:e.RelType.Styles,Target:cd.workbookStyles},{Id:`rId${r++}`,Type:e.RelType.Theme,Target:cd.workbookTheme1}];n.sharedStrings.count&&i.push({Id:`rId${r++}`,Type:e.RelType.SharedStrings,Target:cd.workbookSharedStrings}),n.hasCheckboxes&&i.push({Id:`rId${r++}`,Type:e.RelType.FeaturePropertyBag,Target:cd.workbookFeaturePropertyBag}),n.hasDynamicArrayFormulas&&i.push({Id:`rId${r++}`,Type:e.RelType.SheetMetadata,Target:cd.workbookMetadata});let a=new Map;(n.pivotTables??[]).forEach(t=>{let n=a.get(t.cacheId);n?t.rId=n:(t.rId=`rId${r++}`,a.set(t.cacheId,t.rId),i.push({Id:t.rId,Type:e.RelType.PivotCacheDefinition,Target:ld(t.tableNumber)}))}),n.worksheets.forEach(t=>{t.rId=`rId${r++}`,i.push({Id:t.rId,Type:e.RelType.Worksheet,Target:Uu(t.fileIndex)})});let o=n.externalLinks??[];for(let t of o)t.rId=`rId${r++}`,i.push({Id:t.rId,Type:e.RelType.ExternalLink,Target:od(t.index)});let s=new Ud;await this._renderToZip(t,V.xlWorkbookRels,s,i)}async addFeaturePropertyBag(e,t){t.hasCheckboxes&&await this._renderToZip(e,V.xlFeaturePropertyBag,new Uh,{})}async addMetadata(e,t){t.hasDynamicArrayFormulas&&await this._renderToZip(e,V.xlMetadata,new Vd,{dynamicArrayCount:t.dynamicArrayCount})}async addSharedStrings(e,t){t.sharedStrings&&t.sharedStrings.count&&await this._renderToZip(e,V.xlSharedStrings,t.sharedStrings,t.sharedStrings.model)}async addStyles(e,t){t.styles&&await this._renderToZip(e,V.xlStyles,t.styles,t.styles.model)}async addWorkbook(e,t){await this._renderToZip(e,V.xlWorkbook,new Bd,t)}async addWorksheets(e,t){let n=new Cy,r=new Ud,i=new Vv,a=new Uv,o=new Hv;for(let s of t.worksheets){let{fileIndex:t}=s,c=e.createEntry(Vu(t)),l=new jy(c);n.render(l,s),c.end(),await e.waitForDrain(),s.rels&&s.rels.length&&await this._renderToZip(e,Hu(t),r,s.rels),s.comments.length>0&&await this._renderToZip(e,Wu(t),i,s);let u=s.comments.length>0,d=s.formControls&&s.formControls.length>0;if((u||d)&&await this._renderToZip(e,Ku(t),a,{comments:u?s.comments:[],formControls:d?s.formControls:[]}),s.headerImage){let n=s.headerImage,i=n.bookImage,o=`../media/${i.name&&i.extension&&i.name.endsWith(`.${i.extension}`)?i.name:`${i.name}.${i.extension}`}`;await this._renderToZip(e,qu(t),a,{comments:[],formControls:[],headerImage:{imageRelId:`rId1`,width:n.headerWidth,height:n.headerHeight}}),await this._renderToZip(e,Ju(t),r,[{Id:`rId1`,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,Target:o}])}if(d)for(let t of s.formControls)await this._renderToZip(e,xd(t.ctrlPropId),o,t)}}async addDrawings(e,t){let n=new ug,r=new Ud,i=t.rawDrawings||{};for(let a of t.worksheets){let{drawing:t}=a;if(t){if(this.drawingHasChartReference(t)&&i[t.name])e.append(i[t.name],{name:Xu(t.name)});else{let r=am(t.anchors??[]),i=t.anchors?{...t,anchors:r}:t;n.prepare(i),await this._renderToZip(e,Xu(t.name),n,i)}await this._renderToZip(e,Zu(t.name),r,t.rels)}}}async addTables(e,t){let n=new Ay;for(let r of t.worksheets)for(let t of r.tables)n.prepare(t,{}),await this._renderToZip(e,Yu(t.target),n,t)}async addExternalLinks(t,n){let r=n.externalLinks??[];if(r.length===0)return;let i=new Mv,a=new Ud;for(let n of r)await this._renderToZip(t,id(n.index),i,n),await this._renderToZip(t,ad(n.index),a,[{Id:`rId1`,Type:e.RelType.ExternalLinkPath,Target:n.target,TargetMode:n.targetMode??`External`}])}addPassthrough(e,t){let n=new Av;n.fromRecord(t.passthrough||{}),n.writeToZip(e)}async addPivotTables(t,n){if(!n.pivotTables.length)return;let r=new ry,i=new ty,a=new uy,o=new Ud,s=new Map;for(let c of n.pivotTables){let n=c.tableNumber,l=c.isLoaded,u=c.cacheId;if(!s.has(u)&&(s.set(u,n),l?(c.cacheDefinition&&await this._renderToZip(t,Qu(n),i,c.cacheDefinition),c.cacheRecords&&await this._renderToZip(t,ed(n),r,c.cacheRecords)):(await this._renderToZip(t,ed(n),r,c),await this._renderToZip(t,Qu(n),i,c)),!l||c.cacheRecords)){let r=(l?c.cacheDefinition?.rId:void 0)??`rId1`;await this._renderToZip(t,$u(n),o,[{Id:r,Type:e.RelType.PivotCacheRecords,Target:td(n)}])}await this._renderToZip(t,nd(n),a,c);let d=s.get(u);await this._renderToZip(t,rd(n),o,[{Id:`rId1`,Type:e.RelType.PivotCacheDefinition,Target:sd(d)}])}}_finalize(e){return new Promise((t,n)=>{e.on(`finish`,()=>{t(this)}),e.on(`error`,n),e.finalize()})}prepareModel(e,t){e.creator=e.creator??`ExcelTS`,e.lastModifiedBy=e.lastModifiedBy??`ExcelTS`,e.created=e.created??new Date,e.modified=e.modified??new Date,e.useSharedStrings=t.useSharedStrings===void 0?!0:t.useSharedStrings,e.useStyles=t.useStyles===void 0?!0:t.useStyles,e.sharedStrings=new pg;let n=e.defaultFont;e.styles=e.useStyles?new hf(!0):new hf.Mock,n&&e.styles.setDefaultFont&&e.styles.setDefaultFont(n);let r=new Bd,i=new Cy;r.prepare(e),this._normaliseExternalLinks(e);let a={sharedStrings:e.sharedStrings,styles:e.styles,date1904:e.properties?.date1904,drawingsCount:0,media:e.media};a.drawings=e.drawings=[],a.commentRefs=e.commentRefs=[],a.formControlRefs=e.formControlRefs=[],e.hasHeaderWatermark=!1;let o=0;e.tables=[];let s=new Map;e.worksheets.forEach((t,n)=>{t.fileIndex=n+1,t.tables.forEach(n=>{let r=n.name.toLowerCase(),i=s.get(r);if(i!==void 0)throw new Lr(`Duplicate table name "${n.name}": already used in worksheet "${i}". Table names must be unique across the entire workbook (case-insensitive).`);s.set(r,t.name),o++,n.target=`table${o}.xml`,n.id=o,e.tables.push(n)}),i.prepare(t,a)}),e.hasCheckboxes=e.styles.hasCheckboxes;let c=0;e.worksheets.forEach(e=>{(e.rows??[]).forEach(e=>{(e.cells??[]).forEach(e=>{e.isDynamicArray&&c++})})}),e.hasDynamicArrayFormulas=c>0,e.dynamicArrayCount=c,a.hasHeaderWatermark&&(e.hasHeaderWatermark=!0);let l=e.passthrough||{},u=new Av;u.fromRecord(l),e.passthroughContentTypes=u.getContentTypes()}};function Iy(e){throw Error("No formula engine is installed. Call `installFormulaEngine()` from `@cj-tech-master/excelts/formula` once at startup to enable `Workbook.calculateFormulas()` and automatic recalculation during `excelToPdf()`.")}let Ly=/\r\n|\r|\n/,Ry=/\r\n|[|\\\r\n]/g,zy=/\\([|\\])/g,By=/<br\s*\/?>/gi,Vy=/\r\n|\r|\n/g;function Hy(e){let t=0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if(r>=55296&&r<=56319&&n+1<e.length){let r=e.charCodeAt(n+1);if(r>=56320&&r<=57343){t+=2,n++;continue}}if(!(r===8203||r===8204||r===8205||r===65279)&&!(r>=768&&r<=879||r>=6832&&r<=6911||r>=7616&&r<=7679||r>=8400&&r<=8447||r>=65056&&r<=65071)){if(r>=4352&&r<=4447||r>=11904&&r<=12350||r>=12352&&r<=13247||r>=13312&&r<=19903||r>=19968&&r<=42191||r>=43360&&r<=43391||r>=44032&&r<=55215||r>=63744&&r<=64255||r>=65040&&r<=65049||r>=65072&&r<=65135||r>=65281&&r<=65376||r>=65504&&r<=65510){t+=2;continue}t+=1}}return t}function Uy(e){if(e==null)return``;if(e instanceof Date)return e.toISOString();if(typeof e==`object`)try{return JSON.stringify(e)}catch{return`[object Object]`}return String(e)}function Wy(e){return e.replace(Ry,e=>e===`|`||e===`\\`?`\\`+e:`<br>`)}function Gy(e){return e.indexOf(`
|
|
429
|
-
`)!==-1||e.indexOf(`\r`)!==-1?e.replace(
|
|
426
|
+
</r>`)}return n.join(``)}renderCellNew(e,t){if(e==null||typeof e==`number`&&!Number.isFinite(e)){if(t===null)return`<m />`;let e=t.indexOf(null);return e>=0?`<x v="${e}" />`:`<m />`}if(t===null)return e instanceof wg?`<e v="${R(e.code)}" />`:typeof e==`boolean`?`<b v="${e?`1`:`0`}" />`:e instanceof Date?`<d v="${Uv(e)}" />`:Number.isFinite(e)?`<n v="${e}" />`:`<s v="${R(String(e))}" />`;let n=ry(t,e);if(n<0)throw new Ir(`${JSON.stringify(e)} not in sharedItems ${JSON.stringify(t)}`);return`<x v="${n}" />`}parseOpen(e){let{name:t,attributes:n}=e;switch(t){case this.tag:{this.reset();let e={};for(let[t,r]of Object.entries(n))ty.has(t)||(e[t]=String(r));this.model={records:[],count:parseInt(n.count??`0`,10),isLoaded:!0,extraRootAttrs:Object.keys(e).length>0?e:void 0};break}case`r`:this.currentRecord=[];break;case`x`:this.currentRecord&&this.currentRecord.push({type:`x`,value:parseInt(n.v??`0`,10)});break;case`n`:this.currentRecord&&(n.v===void 0||n.v===``?this.currentRecord.push({type:`m`}):this.currentRecord.push({type:`n`,value:parseFloat(n.v)}));break;case`s`:this.currentRecord&&this.currentRecord.push({type:`s`,value:n.v??``});break;case`b`:this.currentRecord&&this.currentRecord.push({type:`b`,value:n.v===`1`});break;case`m`:this.currentRecord&&this.currentRecord.push({type:`m`});break;case`d`:if(this.currentRecord)if(!n.v)this.currentRecord.push({type:`m`});else{let e=Mc(n.v);isNaN(e.getTime())?this.currentRecord.push({type:`m`}):this.currentRecord.push({type:`d`,value:e})}break;case`e`:this.currentRecord&&this.currentRecord.push({type:`e`,value:n.v??``});break}return!0}parseText(e){}parseClose(e){switch(e){case this.tag:return!1;case`r`:this.model&&this.currentRecord&&(this.model.records.push(this.currentRecord),this.currentRecord=null);break}return!0}static{this.PIVOT_CACHE_RECORDS_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"mc:Ignorable":`xr`,"xmlns:xr":`http://schemas.microsoft.com/office/spreadsheetml/2014/revision`}}};function ry(e,t){if(t instanceof Date){let n=t.getTime();for(let t=0;t<e.length;t++){let r=e[t];if(r instanceof Date&&r.getTime()===n)return t}return-1}if(t instanceof wg){for(let n=0;n<e.length;n++){let r=e[n];if(r instanceof wg&&r.code===t.code)return n}return-1}return e.indexOf(t)}let iy=`PivotStyleLight16`,ay=new Set([`axisRow`,`axisCol`,`axisPage`,`axisValues`]),oy=[`x`,`t`,`h`,`sd`,`f`,`m`,`c`,`d`];function sy(){return{currentSection:null,inPivotArea:!1,inAutoSortScope:!1}}let cy=new Set([`axis`,`dataField`,`compact`,`outline`,`showAll`,`defaultSubtotal`,`numFmtId`,`sortType`,`subtotalTop`,`insertBlankRow`,`multipleItemSelectionAllowed`]);var ly=class e extends U{constructor(){super(),this.state=sy(),this.currentPivotField=null,this.currentRowItem=null,this.currentColItem=null,this.currentChartFormat=null,this.pivotAreaXmlBuffer=[],this.autoSortScopeXmlBuffer=[],this.extLstCollector=new Jv(`extLst`),this.formatsCollector=new Jv(`formats`),this.conditionalFormatsCollector=new Jv(`conditionalFormats`),this.filtersCollector=new Jv(`filters`),this.unknownCollector=new Jv(``),this.unknownElementsXmlParts=[],this.model=null}get tag(){return`pivotTableDefinition`}reset(){this.model=null,this.state=sy(),this.currentPivotField=null,this.currentRowItem=null,this.currentColItem=null,this.currentChartFormat=null,this.pivotAreaXmlBuffer=[],this.autoSortScopeXmlBuffer=[],this.extLstCollector.reset(),this.formatsCollector.reset(),this.conditionalFormatsCollector.reset(),this.filtersCollector.reset(),this.unknownCollector.reset(),this.unknownElementsXmlParts=[]}render(e,t){`isLoaded`in t&&t.isLoaded?this.renderLoaded(e,t):this.renderNew(e,t)}renderNew(t,n){let{rows:r,columns:i,values:a,pages:o=[],cacheFields:s,cacheId:c,tableNumber:l,applyWidthHeightFormats:u}=n,d=i.length===0&&a.length>1,f=o.length,p=f>0?f+1:0,m=r.length,h=3+p,g=h+1,_=m+(d?a.length:1),v=`A${h}:${M.n2l(_)}${g}`;t.openXml(z),t.openNode(this.tag,{...e.PIVOT_TABLE_ATTRIBUTES,name:`PivotTable${l}`,cacheId:c,applyNumberFormats:`0`,applyBorderFormats:`0`,applyFontFormats:`0`,applyPatternFormats:`0`,applyAlignmentFormats:`0`,applyWidthHeightFormats:u,dataCaption:`Values`,updatedVersion:`8`,minRefreshableVersion:`3`,useAutoFormatting:`1`,itemPrintTitles:`1`,createdVersion:`8`,indent:`0`,compact:`0`,compactData:`0`,multipleFieldFilters:`0`});let y={ref:v,firstHeaderRow:1,firstDataRow:1,firstDataCol:m};f>0&&(y.rowPageCount=f,y.colPageCount=1),t.leafNode(`location`,y),fy(t,n),t.openNode(`rowFields`,{count:r.length});for(let e of r)t.leafNode(`field`,{x:e});if(t.closeNode(),t.openNode(`rowItems`,{count:1}),t.openNode(`i`,{t:`grand`}),t.leafNode(`x`),t.closeNode(),t.closeNode(),i.length>0){let e=a.length>1?i.length+1:i.length;t.openNode(`colFields`,{count:e});for(let e of i)t.leafNode(`field`,{x:e});a.length>1&&t.leafNode(`field`,{x:-2}),t.closeNode()}else d&&(t.openNode(`colFields`,{count:1}),t.leafNode(`field`,{x:-2}),t.closeNode());if(d){t.openNode(`colItems`,{count:a.length+1});for(let e=0;e<a.length;e++)t.openNode(`i`),t.leafNode(`x`,e===0?void 0:{v:e}),t.closeNode();t.openNode(`i`,{t:`grand`}),t.leafNode(`x`),t.closeNode(),t.closeNode()}else t.openNode(`colItems`,{count:1}),t.leafNode(`i`),t.closeNode();if(f>0){t.openNode(`pageFields`,{count:f});for(let e of o)t.leafNode(`pageField`,{fld:e,hier:-1});t.closeNode()}dy(t,s,a,n.valueMetrics),t.leafNode(`pivotTableStyleInfo`,{name:iy,showRowHeaders:`1`,showColHeaders:`1`,showRowStripes:`0`,showColStripes:`0`,showLastColumn:`1`}),t.writeRaw(e.EXTLST_XML),t.closeNode()}renderLoaded(t,n){let r=this.buildLoadedRootAttributes(n);if(t.openXml(z),t.openNode(this.tag,r),n.location){let e={ref:n.location.ref,firstHeaderRow:n.location.firstHeaderRow,firstDataRow:n.location.firstDataRow,firstDataCol:n.location.firstDataCol};n.location.rowPageCount!==void 0&&(e.rowPageCount=n.location.rowPageCount),n.location.colPageCount!==void 0&&(e.colPageCount=n.location.colPageCount),t.leafNode(`location`,e)}if(n.pivotFields.length>0){t.openNode(`pivotFields`,{count:n.pivotFields.length});for(let e of n.pivotFields)this.renderPivotFieldLoaded(t,e);t.closeNode()}if(n.rowFields.length>0){t.openNode(`rowFields`,{count:n.rowFields.length});for(let e of n.rowFields)t.leafNode(`field`,{x:e});t.closeNode()}if(n.rowItems&&n.rowItems.length>0){t.openNode(`rowItems`,{count:n.rowItems.length});for(let e of n.rowItems)this.renderRowColItem(t,e);t.closeNode()}else n.hasRowItems&&t.writeRaw(`<rowItems count="1"><i t="grand"><x/></i></rowItems>`);if(n.hasColFields||n.colFields.length>0)if(n.colFields.length===0&&n.dataFields.length<=1)t.leafNode(`colFields`,{count:0});else{let e=n.colFields.length===0?1:n.colFields.length;if(t.openNode(`colFields`,{count:e}),n.colFields.length===0)t.leafNode(`field`,{x:-2});else for(let e of n.colFields)t.leafNode(`field`,{x:e});t.closeNode()}if(n.colItems&&n.colItems.length>0){t.openNode(`colItems`,{count:n.colItems.length});for(let e of n.colItems)this.renderRowColItem(t,e);t.closeNode()}else n.hasColItems&&t.writeRaw(`<colItems count="1"><i t="grand"><x/></i></colItems>`);if(n.pageFields&&n.pageFields.length>0){t.openNode(`pageFields`,{count:n.pageFields.length});for(let e of n.pageFields){let n={fld:e.fld};e.item!==void 0&&(n.item=e.item),e.hier!==void 0&&(n.hier=e.hier),e.name!==void 0&&(n.name=e.name),t.leafNode(`pageField`,n)}t.closeNode()}if(n.dataFields.length>0){t.openNode(`dataFields`,{count:n.dataFields.length});for(let e of n.dataFields){let n={name:e.name,fld:e.fld};e.baseField!==void 0&&(n.baseField=e.baseField),e.baseItem!==void 0&&(n.baseItem=e.baseItem),e.subtotal!==void 0&&e.subtotal!==`sum`&&(n.subtotal=e.subtotal),e.numFmtId!==void 0&&(n.numFmtId=e.numFmtId),t.leafNode(`dataField`,n)}t.closeNode()}n.formatsXml&&t.writeRaw(n.formatsXml),n.conditionalFormatsXml&&t.writeRaw(n.conditionalFormatsXml),n.chartFormats&&n.chartFormats.length>0&&this.renderChartFormats(t,n.chartFormats);let i=n.styleInfo;t.leafNode(`pivotTableStyleInfo`,{name:i?.name??n.styleName??iy,showRowHeaders:i?.showRowHeaders??`1`,showColHeaders:i?.showColHeaders??`1`,showRowStripes:i?.showRowStripes??`0`,showColStripes:i?.showColStripes??`0`,showLastColumn:i?.showLastColumn??`1`}),n.filtersXml&&t.writeRaw(n.filtersXml),n.unknownElementsXml&&t.writeRaw(n.unknownElementsXml);let a=n.extLstXml??(n.isLoaded?``:e.EXTLST_XML);a&&t.writeRaw(a),t.closeNode()}buildLoadedRootAttributes(t){let n={...e.PIVOT_TABLE_ATTRIBUTES,name:t.name??`PivotTable1`,cacheId:String(t.cacheId),applyNumberFormats:t.applyNumberFormats??`0`,applyBorderFormats:t.applyBorderFormats??`0`,applyFontFormats:t.applyFontFormats??`0`,applyPatternFormats:t.applyPatternFormats??`0`,applyAlignmentFormats:t.applyAlignmentFormats??`0`,applyWidthHeightFormats:t.applyWidthHeightFormats??`0`,dataCaption:t.dataCaption??`Values`,updatedVersion:t.updatedVersion??`8`,minRefreshableVersion:t.minRefreshableVersion??`3`};return t.useAutoFormatting!==void 0&&(n.useAutoFormatting=t.useAutoFormatting),t.itemPrintTitles!==void 0&&(n.itemPrintTitles=t.itemPrintTitles),t.multipleFieldFilters!==void 0&&(n.multipleFieldFilters=t.multipleFieldFilters),n.createdVersion=t.createdVersion??`8`,t.indent!==void 0&&(n.indent=String(t.indent)),t.uid&&(n[`xmlns:xr`]=`http://schemas.microsoft.com/office/spreadsheetml/2014/revision`,n[`xr:uid`]=t.uid),t.outline&&(n.outline=`1`),t.outlineData&&(n.outlineData=`1`),t.chartFormat!==void 0&&(n.chartFormat=String(t.chartFormat)),t.colGrandTotals!==void 0&&(n.colGrandTotals=t.colGrandTotals),t.rowGrandTotals!==void 0&&(n.rowGrandTotals=t.rowGrandTotals),t.showError!==void 0&&(n.showError=t.showError),t.errorCaption!==void 0&&(n.errorCaption=t.errorCaption),t.showMissing!==void 0&&(n.showMissing=t.showMissing),t.missingCaption!==void 0&&(n.missingCaption=t.missingCaption),t.grandTotalCaption!==void 0&&(n.grandTotalCaption=t.grandTotalCaption),t.compact===!1&&(n.compact=`0`),t.compactData===!1&&(n.compactData=`0`),n}renderChartFormats(e,t){e.openNode(`chartFormats`,{count:t.length});for(let n of t)e.openNode(`chartFormat`,{chart:n.chart,format:n.format,series:n.series===!0?`1`:n.series===!1?`0`:void 0}),n.pivotAreaXml?e.writeRaw(n.pivotAreaXml):e.writeRaw(`<pivotArea type="data" outline="0" fieldPosition="0"><references count="1"><reference field="4294967294" count="1" selected="0"><x v="0"/></reference></references></pivotArea>`),e.closeNode();e.closeNode()}renderRowColItem(e,t){let n={};if(t.t!==void 0&&(n.t=t.t),t.r!==void 0&&(n.r=t.r),t.i!==void 0&&(n.i=t.i),t.x.length>0){e.openNode(`i`,n);for(let n of t.x)n.v===0?e.leafNode(`x`):e.leafNode(`x`,{v:n.v});e.closeNode()}else e.leafNode(`i`,n)}renderPivotFieldLoaded(e,t){let n={};if(t.axis&&(n.axis=t.axis),t.dataField&&(n.dataField=`1`),t.numFmtId!==void 0&&(n.numFmtId=String(t.numFmtId)),t.sortType&&(n.sortType=t.sortType),t.compact===!1&&(n.compact=`0`),t.outline===!1&&(n.outline=`0`),n.showAll=t.showAll?`1`:`0`,t.defaultSubtotal===!1&&(n.defaultSubtotal=`0`),t.subtotalTop===!1&&(n.subtotalTop=`0`),t.insertBlankRow===!0&&(n.insertBlankRow=`1`),t.multipleItemSelectionAllowed===!0&&(n.multipleItemSelectionAllowed=`1`),t.extraAttrs)for(let[e,r]of Object.entries(t.extraAttrs))n[e]=r;if(t.items!==void 0&&t.items.length>0||t.autoSortScopeXml!==void 0){if(e.openNode(`pivotField`,n),t.items!==void 0&&t.items.length>0){e.openNode(`items`,{count:t.items.length});for(let n of t.items){let t={};for(let e of oy)n[e]!==void 0&&(t[e]=n[e]);e.leafNode(`item`,t)}e.closeNode()}t.autoSortScopeXml&&e.writeRaw(t.autoSortScopeXml),e.closeNode()}else e.leafNode(`pivotField`,n)}parseOpen(e){let{name:t,attributes:n}=e;if(this.extLstCollector.active)return this.extLstCollector.feedOpen(t,n),!0;if(this.formatsCollector.active)return this.formatsCollector.feedOpen(t,n),!0;if(this.conditionalFormatsCollector.active)return this.conditionalFormatsCollector.feedOpen(t,n),!0;if(this.filtersCollector.active)return this.filtersCollector.feedOpen(t,n),!0;if(this.unknownCollector.active)return this.unknownCollector.feedOpen(t,n),!0;switch(t){case this.tag:this.reset(),this.model={name:n.name,cacheId:parseInt(n.cacheId??`0`,10),uid:n[`xr:uid`],pivotFields:[],rowFields:[],colFields:[],pageFields:[],dataFields:[],applyNumberFormats:n.applyNumberFormats,applyBorderFormats:n.applyBorderFormats,applyFontFormats:n.applyFontFormats,applyPatternFormats:n.applyPatternFormats,applyAlignmentFormats:n.applyAlignmentFormats,applyWidthHeightFormats:n.applyWidthHeightFormats,dataCaption:n.dataCaption,updatedVersion:n.updatedVersion,minRefreshableVersion:n.minRefreshableVersion,createdVersion:n.createdVersion,useAutoFormatting:n.useAutoFormatting,itemPrintTitles:n.itemPrintTitles,indent:n.indent===void 0?void 0:parseInt(n.indent,10),compact:n.compact!==`0`,compactData:n.compactData!==`0`,multipleFieldFilters:n.multipleFieldFilters,outline:n.outline===`1`,outlineData:n.outlineData===`1`,chartFormat:n.chartFormat===void 0?void 0:parseInt(n.chartFormat,10),colGrandTotals:n.colGrandTotals,rowGrandTotals:n.rowGrandTotals,showError:n.showError,errorCaption:n.errorCaption,showMissing:n.showMissing,missingCaption:n.missingCaption,grandTotalCaption:n.grandTotalCaption,rowItems:[],colItems:[],chartFormats:[],isLoaded:!0};break;case`location`:this.model&&(this.model.location={ref:n.ref,firstHeaderRow:n.firstHeaderRow===void 0?void 0:parseInt(n.firstHeaderRow,10),firstDataRow:n.firstDataRow===void 0?void 0:parseInt(n.firstDataRow,10),firstDataCol:n.firstDataCol===void 0?void 0:parseInt(n.firstDataCol,10),rowPageCount:n.rowPageCount===void 0?void 0:parseInt(n.rowPageCount,10),colPageCount:n.colPageCount===void 0?void 0:parseInt(n.colPageCount,10)});break;case`pivotFields`:this.state.currentSection=`pivotFields`;break;case`pivotField`:if(this.state.currentSection===`pivotFields`){let e={};for(let[t,r]of Object.entries(n))cy.has(t)||(e[t]=String(r));this.currentPivotField={axis:ay.has(n.axis)?n.axis:void 0,dataField:n.dataField===`1`,items:[],compact:n.compact!==`0`,outline:n.outline!==`0`,showAll:n.showAll!==`0`,defaultSubtotal:n.defaultSubtotal!==`0`,numFmtId:n.numFmtId===void 0?void 0:parseInt(n.numFmtId,10),sortType:n.sortType,subtotalTop:n.subtotalTop===void 0?void 0:n.subtotalTop===`1`,insertBlankRow:n.insertBlankRow===`1`?!0:void 0,multipleItemSelectionAllowed:n.multipleItemSelectionAllowed===`1`?!0:void 0,extraAttrs:Object.keys(e).length>0?e:void 0}}break;case`items`:break;case`item`:if(this.currentPivotField){let e={};n.x!==void 0&&(e.x=parseInt(n.x,10));for(let t of oy)t!==`x`&&n[t]!==void 0&&(e[t]=n[t]);this.currentPivotField.items.push(e)}break;case`autoSortScope`:this.currentPivotField&&(this.state.inAutoSortScope=!0,this.autoSortScopeXmlBuffer=[`<autoSortScope>`]);break;case`rowFields`:this.state.currentSection=`rowFields`;break;case`colFields`:this.state.currentSection=`colFields`,this.model&&(this.model.hasColFields=!0);break;case`dataFields`:this.state.currentSection=`dataFields`;break;case`pageFields`:this.state.currentSection=`pageFields`;break;case`pageField`:this.state.currentSection===`pageFields`&&this.model&&this.model.pageFields.push({fld:parseInt(n.fld??`0`,10),item:n.item===void 0?void 0:parseInt(n.item,10),hier:n.hier===void 0?void 0:parseInt(n.hier,10),name:n.name});break;case`rowItems`:this.state.currentSection=`rowItems`,this.model&&(this.model.hasRowItems=!0);break;case`colItems`:this.state.currentSection=`colItems`,this.model&&(this.model.hasColItems=!0);break;case`i`:if(this.model){let e=this.state.currentSection===`rowItems`||this.state.currentSection===`colItems`?uy(n):null;this.state.currentSection===`rowItems`?this.currentRowItem=e:this.state.currentSection===`colItems`&&(this.currentColItem=e)}break;case`x`:if(this.state.inPivotArea){let e=Yv(n);this.state.inAutoSortScope?this.autoSortScopeXmlBuffer.push(e?`<x ${e}/>`:`<x/>`):this.pivotAreaXmlBuffer.push(e?`<x ${e}/>`:`<x/>`)}else this.currentRowItem?this.currentRowItem.x.push({v:parseInt(n.v??`0`,10)}):this.currentColItem&&this.currentColItem.x.push({v:parseInt(n.v??`0`,10)});break;case`chartFormats`:this.state.currentSection=`chartFormats`;break;case`chartFormat`:this.state.currentSection===`chartFormats`&&this.model&&(this.currentChartFormat={chart:parseInt(n.chart??`0`,10),format:parseInt(n.format??`0`,10),series:n.series===void 0?void 0:n.series===`1`});break;case`pivotArea`:if(this.currentChartFormat){this.state.inPivotArea=!0;let e=Yv(n);this.pivotAreaXmlBuffer=[e?`<pivotArea ${e}>`:`<pivotArea>`]}else if(this.state.inAutoSortScope){this.state.inPivotArea=!0;let e=Yv(n);this.autoSortScopeXmlBuffer.push(e?`<pivotArea ${e}>`:`<pivotArea>`)}break;case`references`:case`reference`:if(this.state.inPivotArea){let e=Yv(n);this.state.inAutoSortScope?this.autoSortScopeXmlBuffer.push(`<${t}${e?` `+e:``}>`):this.pivotAreaXmlBuffer.push(`<${t}${e?` `+e:``}>`)}break;case`field`:if(this.model){let e=parseInt(n.x??`0`,10);this.state.currentSection===`rowFields`?this.model.rowFields.push(e):this.state.currentSection===`colFields`&&this.model.colFields.push(e)}break;case`dataField`:this.state.currentSection===`dataFields`&&this.model&&this.model.dataFields.push({name:n.name??``,fld:parseInt(n.fld??`0`,10),baseField:n.baseField===void 0?void 0:parseInt(n.baseField,10),baseItem:n.baseItem===void 0?void 0:parseInt(n.baseItem,10),subtotal:Eg.has(n.subtotal)?n.subtotal:void 0,numFmtId:n.numFmtId===void 0?void 0:parseInt(n.numFmtId,10)});break;case`pivotTableStyleInfo`:this.model&&(this.model.styleName=n.name,this.model.styleInfo={name:n.name,showRowHeaders:n.showRowHeaders,showColHeaders:n.showColHeaders,showRowStripes:n.showRowStripes,showColStripes:n.showColStripes,showLastColumn:n.showLastColumn});break;case`extLst`:this.model&&this.extLstCollector.start(n);break;case`formats`:this.model&&this.formatsCollector.start(n);break;case`conditionalFormats`:this.model&&this.conditionalFormatsCollector.start(n);break;case`filters`:this.model&&this.filtersCollector.start(n);break;default:this.model&&this.state.currentSection===null&&!this.state.inPivotArea&&!this.state.inAutoSortScope&&this.unknownCollector.startAs(t,n);break}return!0}parseText(e){this.extLstCollector.active?this.extLstCollector.feedText(e):this.formatsCollector.active?this.formatsCollector.feedText(e):this.conditionalFormatsCollector.active?this.conditionalFormatsCollector.feedText(e):this.filtersCollector.active?this.filtersCollector.feedText(e):this.unknownCollector.active&&this.unknownCollector.feedText(e)}tryCloseCollector(e,t,n){e.feedClose(t)&&(this.model&&(this.model[n]=e.result),e.reset())}parseClose(e){if(this.extLstCollector.active)return this.tryCloseCollector(this.extLstCollector,e,`extLstXml`),!0;if(this.formatsCollector.active)return this.tryCloseCollector(this.formatsCollector,e,`formatsXml`),!0;if(this.conditionalFormatsCollector.active)return this.tryCloseCollector(this.conditionalFormatsCollector,e,`conditionalFormatsXml`),!0;if(this.filtersCollector.active)return this.tryCloseCollector(this.filtersCollector,e,`filtersXml`),!0;if(this.unknownCollector.active)return this.unknownCollector.feedClose(e)&&(this.unknownElementsXmlParts.push(this.unknownCollector.result),this.unknownCollector.reset()),!0;if(this.state.inPivotArea)return e===`pivotArea`?(this.state.inAutoSortScope?this.autoSortScopeXmlBuffer.push(`</pivotArea>`):(this.pivotAreaXmlBuffer.push(`</pivotArea>`),this.currentChartFormat&&(this.currentChartFormat.pivotAreaXml=this.pivotAreaXmlBuffer.join(``)),this.pivotAreaXmlBuffer=[]),this.state.inPivotArea=!1,!0):((e===`references`||e===`reference`)&&(this.state.inAutoSortScope?this.autoSortScopeXmlBuffer.push(`</${e}>`):this.pivotAreaXmlBuffer.push(`</${e}>`)),!0);switch(e){case this.tag:return this.model&&this.unknownElementsXmlParts.length>0&&(this.model.unknownElementsXml=this.unknownElementsXmlParts.join(``)),!1;case`pivotFields`:case`rowFields`:case`colFields`:case`dataFields`:case`pageFields`:case`rowItems`:case`colItems`:case`chartFormats`:this.state.currentSection=null;break;case`pivotField`:this.currentPivotField&&this.model&&(this.model.pivotFields.push(this.currentPivotField),this.currentPivotField=null);break;case`items`:break;case`autoSortScope`:this.state.inAutoSortScope&&this.currentPivotField&&(this.autoSortScopeXmlBuffer.push(`</autoSortScope>`),this.currentPivotField.autoSortScopeXml=this.autoSortScopeXmlBuffer.join(``),this.autoSortScopeXmlBuffer=[],this.state.inAutoSortScope=!1);break;case`i`:this.currentRowItem&&this.model?(this.model.rowItems?.push(this.currentRowItem),this.currentRowItem=null):this.currentColItem&&this.model&&(this.model.colItems?.push(this.currentColItem),this.currentColItem=null);break;case`chartFormat`:this.currentChartFormat&&this.model&&(this.model.chartFormats?.push(this.currentChartFormat),this.currentChartFormat=null);break}return!0}static{this.PIVOT_TABLE_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}static{this.EXTLST_XML=`<extLst><ext uri="{962EF5D1-5CA2-4c93-8EF4-DBF5C05439D2}" xmlns:x14="http://schemas.microsoft.com/office/spreadsheetml/2009/9/main"><x14:pivotTableDefinition hideValuesRow="1" xmlns:xm="http://schemas.microsoft.com/office/excel/2006/main"/></ext><ext uri="{747A6164-185A-40DC-8AA5-F01512510D54}" xmlns:xpdl="http://schemas.microsoft.com/office/spreadsheetml/2016/pivotdefaultlayout"><xpdl:pivotTableDefinition16 EnabledSubtotalsDefault="0" SubtotalsOnTopDefault="0"/></ext></extLst>`}};function uy(e){return{t:e.t,r:e.r===void 0?void 0:parseInt(e.r,10),i:e.i===void 0?void 0:parseInt(e.i,10),x:[]}}function dy(e,t,n,r){e.openNode(`dataFields`,{count:n.length});for(let i=0;i<n.length;i++){let a=n[i],o=r[i]??`sum`,s=Tg[o],c=t[a];if(!c)throw Error(`Value field index ${a} is out of bounds (cacheFields has ${t.length} entries)`);let l={name:`${s} of ${c.name}`,fld:a,baseField:0,baseItem:0};o!==`sum`&&(l.subtotal=o),e.leafNode(`dataField`,l)}e.closeNode()}function fy(e,t){let n=new Set(t.rows),r=new Set(t.columns),i=new Set(t.values),a=new Set(t.pages??[]);e.openNode(`pivotFields`,{count:t.cacheFields.length});for(let o=0;o<t.cacheFields.length;o++){let s=t.cacheFields[o];py(e,n.has(o),r.has(o),i.has(o),a.has(o),s.sharedItems)}e.closeNode()}function py(e,t,n,r,i,a){if(t||n||i){if(!a)throw Error(`sharedItems is required for axis field (row/column/page)`);let i={axis:t?`axisRow`:n?`axisCol`:`axisPage`};r&&(i.dataField=`1`),i.compact=`0`,i.outline=`0`,i.showAll=`0`,e.openNode(`pivotField`,i),e.openNode(`items`,{count:a.length+1});for(let t=0;t<a.length;t++)e.leafNode(`item`,{x:t});e.leafNode(`item`,{t:`default`}),e.closeNode(),e.closeNode();return}let o={};r&&(o.dataField=`1`),o.compact=`0`,o.outline=`0`,o.showAll=`0`,o.defaultSubtotal=`0`,e.leafNode(`pivotField`,o)}var my=class extends U{get tag(){return`dimension`}render(e,t){t&&e.leafNode(`dimension`,{ref:t})}parseOpen(e){return e.name===`dimension`?(this.model=e.attributes.ref,!0):!1}parseText(){}parseClose(){return!1}},hy=class extends U{get tag(){return`mergeCell`}render(e,t){e.leafNode(`mergeCell`,{ref:t})}parseOpen(e){return e.name===`mergeCell`?(this.model=e.attributes.ref,!0):!1}parseText(){}parseClose(){return!1}},gy=class{constructor(){this.merges={}}add(e){if(this.merges[e.master])this.merges[e.master].expandToAddress(e.address);else{let t=`${e.master}:${e.address}`;this.merges[e.master]=new N(t)}}get mergeCells(){return Object.values(this.merges).map(e=>e.range)}reconcile(e,t){e.forEach(e=>{let n=M.decode(e);for(let e=n.top;e<=n.bottom;e++){let r=t[e-1];for(let t=n.left;t<=n.right;t++){let i=r.cells[t-1];i?i.type===1&&(i.master=n.tl):r.cells[t]={type:0,address:M.encodeAddress(e,t)}}}})}getMasterAddress(e){let t=this.hash[e];return t&&t.tl}};function _y(e){return e?`1`:void 0}var vy=class extends U{get tag(){return`printOptions`}render(e,t){if(t){let n={headings:_y(t.showRowColHeaders),gridLines:_y(t.showGridLines),horizontalCentered:_y(t.horizontalCentered),verticalCentered:_y(t.verticalCentered)};Object.values(n).some(e=>e!==void 0)&&e.leafNode(this.tag,n)}}parseOpen(e){switch(e.name){case this.tag:return this.model={showRowColHeaders:e.attributes.headings===`1`,showGridLines:e.attributes.gridLines===`1`,horizontalCentered:e.attributes.horizontalCentered===`1`,verticalCentered:e.attributes.verticalCentered===`1`},!0;default:return!1}}parseText(){}parseClose(){return!1}},yy=class extends U{get tag(){return`tablePart`}render(e,t){t&&e.leafNode(this.tag,{"r:id":t.rId})}parseOpen(e){switch(e.name){case this.tag:return this.model={rId:e.attributes[`r:id`]},!0;default:return!1}}parseText(){}parseClose(){return!1}};let by=(e,t)=>{Object.keys(t).forEach(n=>{let r=e[n],i=t[n];r===void 0&&i!==void 0&&(e[n]=i)})},xy=(e,t)=>{if(!t||!t.length)return e;if(!e||!e.length)return t;let n={},r={};return e.forEach(e=>{n[e.ref]=e,e.rules.forEach(e=>{let{x14Id:t}=e;t&&(r[t]=e)})}),t.forEach(t=>{t.rules.forEach(i=>{let a=r[i.x14Id];a?by(a,i):n[t.ref]?n[t.ref].rules.push(i):e.push({ref:t.ref,rules:[i]})})}),e};var Sy=class e extends U{static{this.WORKSHEET_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`,"xmlns:r":`http://schemas.openxmlformats.org/officeDocument/2006/relationships`,"xmlns:mc":`http://schemas.openxmlformats.org/markup-compatibility/2006`,"xmlns:x14ac":`http://schemas.microsoft.com/office/spreadsheetml/2009/9/ac`,"mc:Ignorable":`x14ac`}}constructor(e){super();let{maxRows:t,maxCols:n,ignoreNodes:r}=e||{};this.ignoreNodes=r??[],this.map={sheetPr:new _h,dimension:new my,sheetViews:new W({tag:`sheetViews`,count:!1,childXform:new Sh}),sheetFormatPr:new ph,cols:new W({tag:`cols`,count:!1,childXform:new Am}),sheetData:new W({tag:`sheetData`,count:!1,empty:!0,childXform:new fh({maxItems:n}),maxItems:t}),autoFilter:new dm,mergeCells:new W({tag:`mergeCells`,count:!0,childXform:new hy}),rowBreaks:new sh,colBreaks:new km,hyperlinks:new W({tag:`hyperlinks`,count:!1,childXform:new Zp}),pageMargins:new $m,dataValidations:new Pm,pageSetup:new ah,headerFooter:new Xm,printOptions:new vy,picture:new oh,drawing:new Fm,sheetProtection:new bh,tableParts:new W({tag:`tableParts`,count:!0,childXform:new yy}),conditionalFormatting:new Dm,extLst:new Ym,ignoredErrors:new Qm}}prepare(e,t){t.merges=new gy,e.hyperlinks=t.hyperlinks=[],e.comments=t.comments=[],e.formControls&&e.formControls.length>0&&(!e.views||e.views.length===0)&&(e.views=[{workbookViewId:0}]),t.formulae={},t.siFormulae=0,this.map.cols.prepare(e.cols,t),this.map.sheetData.prepare(e.rows,t),this.map.conditionalFormatting.prepare(e.conditionalFormattings,t),e.mergeCells=t.merges.mergeCells;let n=e.rels=[];function r(e){return`rId${e.length+1}`}e.hyperlinks.forEach(e=>{if(Qp(e.target))return;let t=r(n);e.rId=t,n.push({Id:t,Type:F.Hyperlink,Target:e.target,TargetMode:`External`})});let{fileIndex:i}=e;if(e.comments.length>0){let a={Id:r(n),Type:F.Comments,Target:dd(i)};n.push(a);let o={Id:r(n),Type:F.VmlDrawing,Target:fd(i)};n.push(o),e.comments.forEach(e=>{e.refAddress=M.decodeAddress(e.ref)}),t.commentRefs.push({commentName:`comments${i}`,vmlDrawing:`vmlDrawing${i}`})}if(e.drawing&&e.drawing.anchors){let i=e.drawing;i.rId=r(n),i.name||=`drawing${++t.drawingsCount}`;let a=(i.rels??[]).some(e=>e.Target&&e.Target.includes(`/charts/`));i.anchors=[],a||(i.rels=[]),t.drawings.push(i),n.push({Id:i.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:md(i.name)})}let a=[],o=[],s=[],c=[];if(e.media.forEach(e=>{e.type===`background`?a.push(e):e.type===`image`?o.push(e):e.type===`watermark`?s.push(e):e.type===`headerImage`&&c.push(e)}),a.forEach(i=>{let a=r(n),o=t.media[i.imageId];n.push({Id:a,Type:F.Image,Target:tm(o)}),e.background={rId:a},e.image=t.media[i.imageId]}),o.length>0){let{drawing:i}=e;i||(i=e.drawing={rId:r(n),name:`drawing${++t.drawingsCount}`,anchors:[],rels:[]},t.drawings.push(i),n.push({Id:i.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:md(i.name)}));let a=nm(o,i.rels,{getBookImage:e=>t.media[e],nextRId:e=>r(e)});i.anchors.push(...a.anchors),i.rels=a.rels}if(s.length>0){let{drawing:i}=e;i||(i=e.drawing={rId:r(n),name:`drawing${++t.drawingsCount}`,anchors:[],rels:[]},t.drawings.push(i),n.push({Id:i.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:md(i.name)}));for(let n of s){let a=t.media[n.imageId];if(!a)continue;let o=r(i.rels);i.rels.push({Id:o,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,Target:tm(a)});let s=n.opacity===void 0?.15:n.opacity,c=Math.round(Math.max(0,Math.min(1,s))*1e5),l=e.dimensions,u=l?Math.max(l.model?.right??100,100):100,d=l?Math.max(l.model?.bottom??200,200):200;i.anchors.push({picture:{rId:o,alphaModFix:c},range:{editAs:`absolute`,tl:{nativeCol:0,nativeColOff:0,nativeRow:0,nativeRowOff:0},br:{nativeCol:u,nativeColOff:0,nativeRow:d,nativeRowOff:0}}})}}if(c.length>0){let a=c[0],o=t.media[a.imageId];if(o){let s=r(n);n.push({Id:s,Type:F.VmlDrawing,Target:pd(i)}),e.headerImage={vmlRelId:s,imageId:a.imageId,bookImage:o,headerWidth:a.headerWidth,headerHeight:a.headerHeight},t.hasHeaderWatermark=!0,e.headerFooter||={};let c=a.applyTo||`all`,l=t=>{let n=e.headerFooter[t]||``;return n.includes(`&G`)?n:n.includes(`&C`)?n.replace(`&C`,`&C&G`):n+`&C&G`};(c===`all`||c===`odd`)&&(e.headerFooter.oddHeader=l(`oddHeader`)),(c===`all`||c===`even`)&&(e.headerFooter.evenHeader=l(`evenHeader`),e.headerFooter.differentOddEven=!0),(c===`all`||c===`first`)&&(e.headerFooter.firstHeader=l(`firstHeader`),e.headerFooter.differentFirst=!0)}}if(e.tables.forEach(e=>{let i=r(n);e.rId=i,n.push({Id:i,Type:F.Table,Target:gd(e.target)}),e.columns.forEach(e=>{let{style:n}=e;n&&(e.dxfId=t.styles.addDxfStyle(n))})}),(e.pivotTables??[]).forEach(e=>{n.push({Id:r(n),Type:F.PivotTable,Target:hd(e.tableNumber)})}),e.formControls&&e.formControls.length>0){let{drawing:a}=e;a||(a=e.drawing={rId:r(n),name:`drawing${++t.drawingsCount}`,anchors:[],rels:[]},t.drawings.push(a),n.push({Id:a.rId,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/drawing`,Target:md(a.name)})),e.comments.length===0&&n.push({Id:r(n),Type:F.VmlDrawing,Target:fd(i)});let o=e=>({nativeCol:e.col,nativeColOff:e.colOff,nativeRow:e.row,nativeRowOff:e.rowOff});for(let i of e.formControls){let e=t.formControlRefs.length+1;i.ctrlPropId=e;let s=r(n);i.ctrlPropRelId=s,n.push({Id:s,Type:F.CtrlProp,Target:yd(e)}),t.formControlRefs.push(e);let c=`Check Box ${Math.max(1,i.shapeId-1024)}`;a.anchors.push({range:{editAs:`absolute`,tl:o(i.tl),br:o(i.br)},alternateContent:{requires:`a14`},shape:{cNvPrId:i.shapeId,name:i.name||c,hidden:!0,spid:`_x0000_s${i.shapeId}`,text:i.text}})}}this.map.extLst.prepare(e,t)}render(t,n){t.openXml(z);let r={...e.WORKSHEET_ATTRIBUTES};n.formControls&&n.formControls.length>0&&(r[`xmlns:x14`]=`http://schemas.microsoft.com/office/spreadsheetml/2009/9/main`,r[`xmlns:xdr`]=`http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing`,r[`mc:Ignorable`]=`${r[`mc:Ignorable`]} x14`),t.openNode(`worksheet`,r);let i=n.properties?{defaultRowHeight:n.properties.defaultRowHeight,dyDescent:n.properties.dyDescent,outlineLevelCol:n.properties.outlineLevelCol,outlineLevelRow:n.properties.outlineLevelRow,customHeight:n.properties.customHeight}:void 0;n.properties&&n.properties.defaultColWidth&&(i.defaultColWidth=n.properties.defaultColWidth);let a={outlineProperties:n.properties&&n.properties.outlineProperties,tabColor:n.properties&&n.properties.tabColor,pageSetup:n.pageSetup&&n.pageSetup.fitToPage?{fitToPage:n.pageSetup.fitToPage}:void 0},o=n.pageSetup&&n.pageSetup.margins,s={showRowColHeaders:n.pageSetup&&n.pageSetup.showRowColHeaders,showGridLines:n.pageSetup&&n.pageSetup.showGridLines,horizontalCentered:n.pageSetup&&n.pageSetup.horizontalCentered,verticalCentered:n.pageSetup&&n.pageSetup.verticalCentered},c=n.sheetProtection;if(this.map.sheetPr.render(t,a),this.map.dimension.render(t,n.dimensions),this.map.sheetViews.render(t,n.views),this.map.sheetFormatPr.render(t,i),this.map.cols.render(t,n.cols),this.map.sheetData.render(t,n.rows),this.map.sheetProtection.render(t,c),this.map.autoFilter.render(t,n.autoFilter),this.map.mergeCells.render(t,n.mergeCells),this.map.conditionalFormatting.render(t,n.conditionalFormattings),this.map.dataValidations.render(t,n.dataValidations),this.map.hyperlinks.render(t,n.hyperlinks),this.map.printOptions.render(t,s),this.map.pageMargins.render(t,o),this.map.pageSetup.render(t,n.pageSetup),this.map.headerFooter.render(t,n.headerFooter),this.map.rowBreaks.render(t,n.rowBreaks),this.map.colBreaks.render(t,n.colBreaks),this.map.drawing.render(t,n.drawing),this.map.picture.render(t,n.background),n.rels&&n.rels.forEach(e=>{if(e.Type===F.VmlDrawing){if(n.headerImage&&e.Id===n.headerImage.vmlRelId)return;t.leafNode(`legacyDrawing`,{"r:id":e.Id})}}),n.headerImage&&t.leafNode(`legacyDrawingHF`,{"r:id":n.headerImage.vmlRelId}),n.formControls&&n.formControls.length>0){t.openNode(`mc:AlternateContent`),t.openNode(`mc:Choice`,{Requires:`x14`}),t.openNode(`controls`);for(let e of n.formControls){if(!e.ctrlPropRelId)continue;let n=`Check Box ${Math.max(1,e.shapeId-1024)}`;t.openNode(`mc:AlternateContent`),t.openNode(`mc:Choice`,{Requires:`x14`}),t.openNode(`control`,{shapeId:e.shapeId,"r:id":e.ctrlPropRelId,name:e.name||n}),t.openNode(`controlPr`,{locked:0,defaultSize:0,print:+!!e.print,autoFill:0,autoLine:0,autoPict:0}),t.openNode(`anchor`),t.openNode(`from`),t.leafNode(`xdr:col`,void 0,e.tl.col),t.leafNode(`xdr:colOff`,void 0,e.tl.colOff),t.leafNode(`xdr:row`,void 0,e.tl.row),t.leafNode(`xdr:rowOff`,void 0,e.tl.rowOff),t.closeNode(),t.openNode(`to`),t.leafNode(`xdr:col`,void 0,e.br.col),t.leafNode(`xdr:colOff`,void 0,e.br.colOff),t.leafNode(`xdr:row`,void 0,e.br.row),t.leafNode(`xdr:rowOff`,void 0,e.br.rowOff),t.closeNode(),t.closeNode(),t.closeNode(),t.closeNode(),t.closeNode(),t.leafNode(`mc:Fallback`),t.closeNode()}t.closeNode(),t.closeNode(),t.leafNode(`mc:Fallback`),t.closeNode()}this.map.ignoredErrors.render(t,n.ignoredErrors),this.map.tableParts.render(t,n.tables),this.map.extLst.render(t,n),t.closeNode()}parseOpen(e){return this.parser?(this.parser.parseOpen(e),!0):e.name===`worksheet`?(Object.values(this.map).forEach(e=>{e.reset()}),!0):(this.map[e.name]&&!this.ignoreNodes.includes(e.name)&&(this.parser=this.map[e.name],this.parser.parseOpen(e)),!0)}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case`worksheet`:{let e=this.map.sheetFormatPr.model||{};this.map.sheetPr.model&&this.map.sheetPr.model.tabColor&&(e.tabColor=this.map.sheetPr.model.tabColor),this.map.sheetPr.model&&this.map.sheetPr.model.outlineProperties&&(e.outlineProperties=this.map.sheetPr.model.outlineProperties);let t={fitToPage:this.map.sheetPr.model&&this.map.sheetPr.model.pageSetup&&this.map.sheetPr.model.pageSetup.fitToPage||!1,margins:this.map.pageMargins.model},n=Object.assign(t,this.map.pageSetup.model,this.map.printOptions.model),r=xy(this.map.conditionalFormatting.model,this.map.extLst.model&&this.map.extLst.model[`x14:conditionalFormattings`]);return this.model={dimensions:this.map.dimension.model,cols:this.map.cols.model,rows:this.map.sheetData.model,mergeCells:this.map.mergeCells.model,hyperlinks:this.map.hyperlinks.model,dataValidations:this.map.dataValidations.model,properties:e,views:this.map.sheetViews.model,pageSetup:n,headerFooter:this.map.headerFooter.model,background:this.map.picture.model,drawing:this.map.drawing.model,tables:this.map.tableParts.model,conditionalFormattings:r,rowBreaks:this.map.rowBreaks.model??[],colBreaks:this.map.colBreaks.model??[],ignoredErrors:this.map.ignoredErrors.model??[]},this.map.autoFilter.model&&(this.model.autoFilter=this.map.autoFilter.model),this.map.sheetProtection.model&&(this.model.sheetProtection=this.map.sheetProtection.model),!1}default:return!0}}reconcile(e,t){let n=e.relationships??[],r=n.reduce((e,t)=>(e[t.Id]=t,e),{});for(let r of n)if(r.Type===F.Comments){let n=bd(`xl/worksheets/`,r.Target),i=t.comments?.[n];i&&(e.comments=i.comments)}if(e.comments&&e.comments.length){for(let r of n)if(r.Type===F.VmlDrawing){let n=bd(`xl/worksheets/`,r.Target),i=t.vmlDrawings?.[n];if(i){let t=i.comments,n={},r=!1;for(let e of t)if(e.row!=null&&e.col!=null){let t=M.encodeAddress(e.row,e.col);n[t]=e,r=!0}if(r)for(let t of e.comments){let e=n[t.ref];e&&(t.note=Object.assign({},t.note,e))}else e.comments.forEach((e,n)=>{n<t.length&&(e.note=Object.assign({},e.note,t[n]))})}}}if(t.commentsMap=(e.comments??[]).reduce((e,t)=>(t.ref&&(e[t.ref]=t),e),{}),t.hyperlinkMap=(e.hyperlinks??[]).reduce((e,t)=>{if(t.rId){let n=r[t.rId];n&&(e[t.address]=n.Target)}else t.target&&(e[t.address]=t.target);return e},{}),t.formulae={},e.rows){e.rows.includes(void 0)&&(e.rows=e.rows.filter(Boolean));for(let t=0;t<e.rows.length;t++){let n=e.rows[t];n.cells?.includes(void 0)&&(n.cells=n.cells.filter(Boolean))}}else e.rows=[];if(this.map.cols.reconcile(e.cols,t),this.map.sheetData.reconcile(e.rows,t),this.map.conditionalFormatting.reconcile(e.conditionalFormattings,t),e.media=[],e.drawing){let n=r[e.drawing.rId];if(n){let r=n.Target.match(/\/drawings\/([a-zA-Z0-9]+)[.][a-zA-Z]{3,4}$/);if(r){let n=r[1],i=t.drawings[n];i?(e.drawing={...i,name:n,rels:t.drawingRels?.[n]??i.rels??[]},i.anchors.forEach(t=>{t.medium&&(t.medium.alphaModFix!==void 0&&t.medium.alphaModFix<1e5?e.media.push({type:`watermark`,imageId:t.medium.index,opacity:t.medium.alphaModFix/1e5}):e.media.push({type:`image`,imageId:t.medium.index,range:t.range,hyperlinks:t.picture.hyperlinks}))})):e.drawing=void 0}else e.drawing=void 0}else e.drawing=void 0}let i=e.background&&r[e.background.rId];if(i){let n=i.Target.split(`/media/`)[1],r=t.mediaIndex&&t.mediaIndex[n];r!==void 0&&e.media.push({type:`background`,imageId:r})}else e.background&&=void 0;e.tables=(e.tables??[]).reduce((e,n)=>{let i=r[n.rId];if(i){let n=bd(`xl/worksheets/`,i.Target),r=t.tables[n];r&&e.push(r)}return e},[]),e.pivotTables=[],(e.relationships??[]).forEach(n=>{if(n.Type===F.PivotTable&&t.pivotTables){let r=bd(`xl/worksheets/`,n.Target),i=t.pivotTables[r];i&&e.pivotTables.push(i)}}),delete e.relationships,delete e.hyperlinks,delete e.comments}},Cy=class extends U{constructor(){super(),this.model={val:``}}get tag(){return`customFilter`}render(e,t){e.leafNode(this.tag,{val:t.val,operator:t.operator})}parseOpen(e){return e.name===this.tag?(this.model={val:e.attributes.val,operator:e.attributes.operator},!0):!1}parseText(){}parseClose(){return!1}},wy=class extends U{constructor(){super(),this.model={val:``}}get tag(){return`filter`}render(e,t){e.leafNode(this.tag,{val:t.val})}parseOpen(e){return e.name===this.tag?(this.model={val:e.attributes.val},!0):!1}parseText(){}parseClose(){return!1}},Ty=class extends U{constructor(){super(),this.map={customFilters:new W({tag:`customFilters`,count:!1,empty:!0,childXform:new Cy}),filters:new W({tag:`filters`,count:!1,empty:!0,childXform:new wy})},this.model={filterButton:!1}}get tag(){return`filterColumn`}prepare(e,t){e.colId=t.index.toString()}render(e,t){if(t.customFilters){e.openNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?`0`:`1`}),this.map.customFilters.render(e,t.customFilters),e.closeNode();return}e.leafNode(this.tag,{colId:t.colId,hiddenButton:t.filterButton?`0`:`1`})}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;let{attributes:t}=e;switch(e.name){case this.tag:return this.model={filterButton:t.hiddenButton===`0`},!0;case`dynamicFilter`:return!0;default:if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw new jr(`filterColumn`,`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(){}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.customFilters=this.map.customFilters.model,!1;default:return!0}}},Ey=class extends U{constructor(){super(),this.map={filterColumn:new Ty},this.model={autoFilterRef:``,columns:[]}}get tag(){return`autoFilter`}prepare(e){e.columns.forEach((e,t)=>{this.map.filterColumn.prepare(e,{index:t})})}render(e,t){e.openNode(this.tag,{ref:t.autoFilterRef}),t.columns.forEach(t=>{this.map.filterColumn.render(e,t)}),e.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;switch(e.name){case this.tag:return this.model={autoFilterRef:e.attributes.ref,columns:[]},!0;default:if(this.parser=this.map[e.name],this.parser)return this.parseOpen(e),!0;throw new jr(`autoFilter`,`Unexpected xml node in parseOpen: ${JSON.stringify(e)}`)}}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.model.columns.push(this.parser.model),this.parser=void 0),!0;switch(e){case this.tag:return!1;default:throw new jr(`autoFilter`,`Unexpected xml node in parseClose: ${e}`)}}},Dy=class extends U{constructor(){super(),this._childText=``,this.model={name:``}}get tag(){return`tableColumn`}prepare(e,t){e.id=t.index+1}_renderAttributes(e){return{id:e.id.toString(),name:Rc(e.name),totalsRowLabel:e.totalsRowLabel?Rc(e.totalsRowLabel):void 0,totalsRowFunction:e.totalsRowFunction===`none`?void 0:e.totalsRowFunction,dxfId:e.dxfId}}render(e,t){t.calculatedColumnFormula||t.totalsRowFormula?(e.openNode(this.tag,this._renderAttributes(t)),t.calculatedColumnFormula&&e.leafNode(`calculatedColumnFormula`,void 0,t.calculatedColumnFormula),t.totalsRowFormula&&e.leafNode(`totalsRowFormula`,void 0,t.totalsRowFormula),e.closeNode()):e.leafNode(this.tag,this._renderAttributes(t))}parseOpen(e){if(e.name===this.tag){let{attributes:t}=e;return this.model={name:Pc(t.name),totalsRowLabel:t.totalsRowLabel?Pc(t.totalsRowLabel):void 0,totalsRowFunction:t.totalsRowFunction,dxfId:t.dxfId},!0}return(e.name===`calculatedColumnFormula`||e.name===`totalsRowFormula`)&&(this._childTag=e.name,this._childText=``),!0}parseText(e){this._childTag&&(this._childText+=e)}parseClose(e){return e===this.tag?!1:(this._childTag&&e===this._childTag&&(this.model[this._childTag]=this._childText,this._childTag=void 0),!0)}},Oy=class extends U{constructor(){super(),this.model={theme:null,showFirstColumn:!1,showLastColumn:!1,showRowStripes:!1,showColumnStripes:!1}}get tag(){return`tableStyleInfo`}render(e,t){e.leafNode(this.tag,{name:t.theme?t.theme:void 0,showFirstColumn:t.showFirstColumn?`1`:`0`,showLastColumn:t.showLastColumn?`1`:`0`,showRowStripes:t.showRowStripes?`1`:`0`,showColumnStripes:t.showColumnStripes?`1`:`0`})}parseOpen(e){if(e.name===this.tag){let{attributes:t}=e;return this.model={theme:t.name?t.name:null,showFirstColumn:t.showFirstColumn===`1`,showLastColumn:t.showLastColumn===`1`,showRowStripes:t.showRowStripes===`1`,showColumnStripes:t.showColumnStripes===`1`},!0}return!1}parseText(){}parseClose(){return!1}},ky=class e extends U{constructor(){super(),this.map={autoFilter:new Ey,tableColumns:new W({tag:`tableColumns`,count:!0,empty:!0,childXform:new Dy}),tableStyleInfo:new Oy},this.model={id:0,name:``,tableRef:``,columns:[]}}prepare(e,t){this.map.autoFilter.prepare(e),this.map.tableColumns.prepare(e.columns,t)}get tag(){return`table`}render(t,n){t.openXml(z),t.openNode(this.tag,{...e.TABLE_ATTRIBUTES,id:n.id,name:n.name,displayName:n.displayName||n.name,ref:n.tableRef,totalsRowCount:n.totalsRow?`1`:void 0,headerRowCount:n.headerRow?void 0:`0`}),this.map.autoFilter.render(t,n),this.map.tableColumns.render(t,n.columns),this.map.tableStyleInfo.render(t,n.style),t.closeNode()}parseOpen(e){if(this.parser)return this.parser.parseOpen(e),!0;let{name:t,attributes:n}=e;switch(t){case this.tag:this.reset(),this.model={name:n.name,displayName:n.displayName||n.name,tableRef:n.ref,totalsRow:n.totalsRowCount===`1`,headerRow:n.headerRowCount!==`0`};break;default:this.parser=this.map[e.name],this.parser&&this.parser.parseOpen(e);break}return!0}parseText(e){this.parser&&this.parser.parseText(e)}parseClose(e){if(this.parser)return this.parser.parseClose(e)||(this.parser=void 0),!0;switch(e){case this.tag:return this.model.columns=this.map.tableColumns.model,this.map.autoFilter.model&&(this.model.autoFilterRef=this.map.autoFilter.model.autoFilterRef,this.map.autoFilter.model.columns.forEach((e,t)=>{this.model.columns[t].filterButton=e.filterButton})),this.model.style=this.map.tableStyleInfo.model,!1;default:return!0}}reconcile(e,t){e.tableRef&&!e.ref&&(e.ref=e.tableRef),e.rows||=[],e.columns.forEach(e=>{e.dxfId!==void 0&&(e.style=t.styles.getDxfStyle(e.dxfId))})}static{this.TABLE_ATTRIBUTES={xmlns:`http://schemas.openxmlformats.org/spreadsheetml/2006/main`}}},Ay=class{constructor(e){this._stack=[],this._leaf=!1,this._open=!1,this._pending=``,this._target=e}get depth(){return this._stack.length}get currentElement(){return this._stack.length>0?this._stack[this._stack.length-1]:void 0}_flushOpen(e){this._target.write(this._pending+e),this._pending=``,this._open=!1}openXml(e){let t=e?{...z,...e}:z,n=`<?xml`;for(let e in t){let r=t[e];r!==void 0&&(Ec(e),n+=` ${e}="${wc(String(r))}"`)}this._target.write(n+`?>
|
|
427
|
+
`)}openNode(e,t){Ec(e),this._open&&this._flushOpen(`>`);let n=`<${e}`;if(t)for(let e in t){let r=t[e];r!==void 0&&(Ec(e),n+=` ${e}="${wc(String(r))}"`)}this._pending=n,this._stack.push(e),this._leaf=!0,this._open=!0}addAttribute(e,t){if(!this._open)throw new qs(`add attribute`,`no element is open`);Ec(e),this._pending+=` ${e}="${wc(String(t))}"`}addAttributes(e){if(!this._open)throw new qs(`add attributes`,`no element is open`);if(e)for(let t in e){let n=e[t];n!==void 0&&(Ec(t),this._pending+=` ${t}="${wc(String(n))}"`)}}writeText(e){this._open&&this._flushOpen(`>`),this._leaf=!1,this._target.write(R(String(e)))}writeRaw(e){this._open&&this._flushOpen(`>`),this._leaf=!1,this._target.write(e)}writeCData(e){this._open&&this._flushOpen(`>`),this._leaf=!1,this._target.write(Dc(e))}writeComment(e){this._open&&this._flushOpen(`>`),this._leaf=!1,Oc(e),this._target.write(`<!--${e}-->`)}closeNode(){let e=this._stack.pop();if(e===void 0)throw new qs(`close node`,`no element is open`);this._leaf&&this._open?this._flushOpen(`/>`):(this._open&&this._flushOpen(`>`),this._target.write(`</${e}>`)),this._open=!1,this._leaf=!1}leafNode(e,t,n){Ec(e),this._open&&this._flushOpen(`>`);let r=`<${e}`;if(t)for(let e in t){let n=t[e];n!==void 0&&(Ec(e),r+=` ${e}="${wc(String(n))}"`)}n===void 0?r+=`/>`:r+=`>${R(String(n))}</${e}>`,this._target.write(r),this._leaf=!1}closeAll(){for(;this._stack.length>0;)this.closeNode()}},jy=class e{static{this.textEncoder=new TextEncoder}constructor(e){this.events=new Map,this.pipedStream=null,this.finalized=!1,this._needsDrain=!1,this._drainResolvers=[],this._pendingWrites=0,this._pendingWriteResolvers=[],this._earlyError=null,this.level=e?.level??6,this.modTime=e?.modTime,this.timestamps=e?.timestamps,this.zip=new Fp((e,t,n)=>{if(e){this._emit(`error`,e);return}t&&t.length>0&&(this._emit(`data`,t),this.pipedStream&&this._checkBackpressure(this.pipedStream.write(t))),n&&(this.pipedStream&&this.pipedStream.end(),this._emit(`finish`))})}_emit(e,...t){if(e===`error`){let n=this.events.get(e);if(!n||n.size===0){this._earlyError=t[0]instanceof Error?t[0]:Error(String(t[0]));return}}let n=this.events.get(e);if(n)for(let e of n)e(...t)}_checkBackpressure(e){if(e instanceof Promise){this._pendingWrites++,e.then(e=>{e||(this._needsDrain=!0)},()=>{}).finally(()=>{if(this._pendingWrites--,this._pendingWrites===0){let e=this._pendingWriteResolvers.splice(0);for(let t of e)t()}});return}e===!1&&(this._needsDrain=!0)}on(e,t){let n=this.events.get(e)||new Set;if(n.add(t),this.events.set(e,n),e===`error`&&this._earlyError){let e=this._earlyError;this._earlyError=null,t(e)}return this}once(e,t){let n=(...r)=>{this.off(e,n),t(...r)};return this.on(e,n)}off(e,t){let n=this.events.get(e);return n?(n.delete(t),n.size===0&&this.events.delete(e),this):this}pipe(e){this.pipedStream=e,e&&typeof e.on==`function`&&e.on(`drain`,()=>{this._needsDrain=!1;let e=this._drainResolvers.splice(0);for(let t of e)t()})}async waitForDrain(){if(this._pendingWrites>0&&await new Promise(e=>{this._pendingWriteResolvers.push(e)}),!(!this._needsDrain||!this.pipedStream))return new Promise(e=>{this._drainResolvers.push(e)})}append(t,n){if(this.finalized)throw new Pr(`append`,`stream already finalized`);let r;r=n.base64?kc(typeof t==`string`?t:String(t)):typeof t==`string`?e.textEncoder.encode(t):t instanceof Uint8Array?t:ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength):t instanceof ArrayBuffer?new Uint8Array(t):t;let i=new Pp(n.name,{level:this.level,modTime:this.modTime,timestamps:this.timestamps});this.zip.add(i),i.push(r,!0)}createEntry(t){if(this.finalized)throw new Pr(`createEntry`,`stream already finalized`);let n=new Pp(t,{level:this.level,modTime:this.modTime,timestamps:this.timestamps});this.zip.add(n);let r=e.textEncoder;return{write(e){n.push(r.encode(e))},end(){n.push(new Uint8Array,!0)}}}finalize(){this.finalized||(this.finalized=!0,this.zip.end())}};function My(e){let t=/(?:^|\/)externalLink(\d+)[.]xml$/.exec(e);return t?parseInt(t[1],10):void 0}function Ny(e,t){t&&(e.sheetNames.includes(t)||e.sheetNames.push(t))}var Py=class e{static{this.RelType=F}constructor(e){this.workbook=e}createBinaryStream(e){let t=new or;return t.end(e),t}createTextStream(e){let t=new or;return t.end(e),t}createStreamBuf(){return new Mh}bufferToString(e){return $c(e)}createZipWriter(e){return new jy(e)}async writeToZip(e,t){let{model:n}=this.workbook;this.prepareModel(n,t),await this.addContentTypes(e,n),await this.addOfficeRels(e,n),await this.addWorkbookRels(e,n),await this.addWorkbook(e,n),await this.addWorksheets(e,n),await this.addSharedStrings(e,n),await this.addDrawings(e,n),await this.addTables(e,n),await this.addPivotTables(e,n),await this.addExternalLinks(e,n),this.addPassthrough(e,n),await this.addThemes(e,n),await this.addStyles(e,n),await this.addFeaturePropertyBag(e,n),await this.addMetadata(e,n),await this.addMedia(e,n),await this.addApp(e,n),await this.addCore(e,n)}async read(e,t){let n=[];return await new Promise((t,r)=>{let i=e=>{n.push(e)},a=()=>{e.off(`data`,i),e.off(`end`,a),e.off(`error`,o),t()},o=t=>{e.off(`data`,i),e.off(`end`,a),e.off(`error`,o),r(t)};e.on(`data`,i),e.on(`end`,a),e.on(`error`,o)}),this.loadBuffer(E(n),t)}async write(e,t){t||={},t.zip=t.zip||{},t.zip.modTime??=this.workbook.modified??this.workbook.created;let n=this.createZipWriter(t.zip);return n.pipe(e),await this.writeToZip(n,t),this._finalize(n)}async load(e,t){if(e==null)throw new Nr(`<input>`,`read`,`Can't read the data of 'the loaded zip file'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?`);let n;if(typeof e==`string`){if(!t?.base64)throw new Nr(`<input>`,`read`,`Can't read the data of 'the loaded zip file'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ? String input requires options.base64 === true (base64-encoded zip archive).`);n=kc(e)}else if(e instanceof Uint8Array)n=e;else if(e instanceof ArrayBuffer)n=new Uint8Array(e);else if(ArrayBuffer.isView(e))n=new Uint8Array(e.buffer,e.byteOffset,e.byteLength);else throw new Nr(`<input>`,`read`,`Can't read the data of 'the loaded zip file'. Is it in a supported JavaScript type (String, Blob, ArrayBuffer, etc) ?`);return this.loadBuffer(n,t)}async loadBuffer(e,t){let n=await new vv(e).extractAll(),r={};for(let[e,t]of n)r[e]=t;return this.loadFromFiles(r,t)}createEmptyModel(){return{worksheets:[],worksheetHash:{},worksheetRels:[],themes:{},media:[],mediaIndex:{},drawings:{},drawingRels:{},rawDrawings:{},comments:{},tables:{},vmlDrawings:{},pivotTables:{},pivotTableRels:{},pivotCacheDefinitions:{},pivotCacheRecords:{},passthrough:{},externalLinksByIndex:{},externalLinkRelsByIndex:{}}}async collectStreamData(e){let t=[];return await new Promise((n,r)=>{e.on(`data`,e=>{typeof e==`string`?t.push(new TextEncoder().encode(e)):e instanceof Uint8Array?t.push(e):t.push(new Uint8Array(e))}),e.on(`end`,()=>n()),e.on(`error`,r)}),E(t)}drawingHasChartReference(e){return e.rels&&e.rels.some(e=>e.Target&&e.Target.includes(`/charts/`))}drawingRelsHasChartReference(e){return Array.isArray(e)&&e.some(e=>typeof e?.Target==`string`&&e.Target.includes(`/charts/`))}async _processKnownEntry(e,t,n,r){let i=yu(n);if(i!==void 0)return await this._processWorksheetEntry(e,t,i,r,n),!0;switch(n){case V.rootRels:return t.globalRels=await this.parseRels(e),!0;case V.xlWorkbook:{let n=await this.parseWorkbook(e);return t.sheets=n.sheets,t.definedNames=n.definedNames,t.views=n.views,t.properties=n.properties,t.protection=n.protection,t.calcProperties=n.calcProperties,t.pivotCaches=n.pivotCaches,t.externalReferences=n.externalReferences,!0}case V.xlSharedStrings:return t.sharedStrings=new dg,await t.sharedStrings.parseStream(e),!0;case V.xlWorkbookRels:return t.workbookRels=await this.parseRels(e),!0;case V.docPropsApp:{let n=await new Lh().parseStream(e);return n&&(t.company=n.company,t.manager=n.manager),!0}case V.docPropsCore:{let n=await new Bh().parseStream(e);return Object.assign(t,n),!0}case V.xlStyles:return t.styles=new pf,await t.styles.parseStream(e),!0;case V.xlMetadata:{let n=await new zd().parseStream(e);return n&&(t.metadata=n),!0}default:return!1}}async loadFromZipEntries(e,t){let n=this.createEmptyModel();for await(let r of e){let e=!1,i=async()=>{e||(e=!0,await r.drain())};if(r.type===`Directory`){await i();continue}let a=vu(r.name),o=r.stream;try{await this._processKnownEntry(o,n,a,t)||await this._processDefaultEntry(o,n,a)||await i()}finally{try{await i()}catch{}}}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async writeBuffer(e){e||={},e.zip=e.zip||{},e.zip.modTime??=this.workbook.modified??this.workbook.created;let t=this.createZipWriter(e.zip),n=this.createStreamBuf();return t.pipe(n),await this.writeToZip(t,e),await this._finalize(t),n.read()||new Uint8Array}async addMedia(e,t){await Promise.all(t.media.map(async t=>{if(t.type!==`image`)throw new Rr(`Unsupported media`);let n=Bu(`${t.name??`undefined`}.${t.extension}`);if(t.filename){if(this.readFileAsync){let r=await this.readFileAsync(t.filename);return e.append(r,{name:n})}throw new Mr(`Loading images from filename`,`not supported in this environment`)}if(t.buffer)return e.append(t.buffer,{name:n});if(t.base64){let r=t.base64.substring(t.base64.indexOf(`,`)+1);return e.append(r,{name:n,base64:!0})}throw new Rr(`Unsupported media`)}))}parseRels(e){return new Vd().parseStream(e)}parseWorkbook(e){return new Rd().parseStream(e)}parseSharedStrings(e){return new dg().parseStream(e)}reconcile(e,t){let n=new Rd,r=new Sy(t),i=new cg,a=new ky;n.reconcile(e);let o={media:e.media,mediaIndex:e.mediaIndex};if(Object.keys(e.drawings).forEach(t=>{let n=e.drawings[t],r=e.drawingRels[t];r&&(o.rels=r.reduce((e,t)=>(e[t.Id]=t,e),{}),(n.anchors??[]).forEach(e=>{let t=e.picture&&e.picture.hyperlinks;t&&o.rels[t.rId]&&(t.hyperlink=o.rels[t.rId].Target,delete t.rId)}),i.reconcile(n,o))}),e.rawDrawings&&e.drawingRels)for(let t of Object.keys(e.rawDrawings)){let n=e.drawingRels[t];n&&!this.drawingRelsHasChartReference(n)&&delete e.rawDrawings[t]}let s={styles:e.styles};Object.values(e.tables).forEach(e=>{a.reconcile(e,s)}),this._reconcilePivotTables(e);let c={styles:e.styles,sharedStrings:e.sharedStrings,media:e.media,mediaIndex:e.mediaIndex,date1904:e.properties?.date1904,drawings:e.drawings,drawingRels:e.drawingRels,comments:e.comments,tables:e.tables,vmlDrawings:e.vmlDrawings,pivotTables:e.pivotTablesIndexed,hasDynamicArrayMetadata:!!e.metadata?.hasDynamicArrays,dynamicArrayCmIndices:e.metadata?.dynamicArrayCmIndices};e.worksheets.forEach(t=>{t.relationships=e.worksheetRels[t.sheetNo],r.reconcile(t,c)}),this._reconcileExternalLinks(e),delete e.worksheetHash,delete e.worksheetRels,delete e.globalRels,delete e.sharedStrings,delete e.workbookRels,delete e.sheetDefs,e.defaultFont=e.styles?.defaultFont,delete e.styles,delete e.mediaIndex,delete e.drawings,delete e.drawingRels,delete e.vmlDrawings,delete e.pivotTableRels,delete e.metadata,delete e.externalReferences,delete e.externalLinksByIndex,delete e.externalLinkRelsByIndex}_reconcileExternalLinks(e){let t=e.externalReferences;if(!t||t.length===0){e.externalLinks||=[];return}let n=e.workbookRels??[],r=new Map;for(let e of n)e.Type===F.ExternalLink&&r.set(e.Id,e);let i=[];for(let n=0;n<t.length;n++){let a=t[n],o=r.get(a.rId);if(!o)continue;let s=My(o.Target);if(s===void 0)continue;let c=e.externalLinksByIndex[s],l=e.externalLinkRelsByIndex[s]??[],u=l.find(e=>e.Type===F.ExternalLinkPath)??l.find(e=>e.TargetMode===`External`);i.push({index:n+1,rId:a.rId,target:u?.Target??``,targetMode:u?.TargetMode??`External`,sheetNames:c?.sheetNames??[],cachedValues:c?.cachedValues??{}})}e.externalLinks=i}_normaliseExternalLinks(e){let t=this.workbook._collectExternalLinksForWrite(),n=new Map;for(let e of t)e.target&&n.set(e.target.toLowerCase(),e);let r={links:t,byTarget:n,workbook:this.workbook};for(let t of e.worksheets??[])for(let e of t.rows??[])for(let t of e.cells??[])typeof t?.formula==`string`&&t.formula.length>0&&(t.formula=this._normaliseFormulaExternalRefs(t.formula,r)),typeof t?.sharedFormula==`string`&&t.sharedFormula.length>0&&(t.sharedFormula=this._normaliseFormulaExternalRefs(t.sharedFormula,r));e.externalLinks=t}_normaliseFormulaExternalRefs(e,t){return Sv(e,e=>{if(e.numeric)return e.index!==null&&e.index>=1&&e.index<=t.links.length?(Ny(t.links[e.index-1],e.sheet),e.index):null;let n=e.workbook.toLowerCase(),r=t.byTarget.get(n);return r?(Ny(r,e.sheet),e.sheet&&t.workbook._recordAutoExternalLink(e.workbook,e.sheet)):(r={index:t.workbook._recordAutoExternalLink(e.workbook,e.sheet),target:e.workbook,targetMode:`External`,sheetNames:e.sheet?[e.sheet]:[],cachedValues:{}},t.links.push(r),t.byTarget.set(n,r)),r.index})}_reconcilePivotTables(e){let t=e.pivotTables||{};if(typeof t!=`object`||Object.keys(t).length===0){e.pivotTables=[],e.pivotTablesIndexed={};return}let n=this._buildDefinitionToCacheIdMap(e),r=new Map;Object.entries(e.pivotCacheDefinitions||{}).forEach(([t,i])=>{let a=n.get(t);if(a!==void 0){let n=t.replace(`Definition`,`Records`);r.set(a,{definition:i,records:e.pivotCacheRecords?.[n],definitionName:t})}});let i=[],a={};Object.entries(t).forEach(([e,t])=>{let n=this._extractTableNumber(e),o=r.get(t.cacheId),s=this._determineMetric(t.dataFields),c={...t,tableNumber:n,cacheId:String(t.cacheId),cacheDefinition:o?.definition,cacheRecords:o?.records,cacheFields:o?.definition?.cacheFields??[],rows:t.rowFields.filter(e=>e>=0),columns:t.colFields.filter(e=>e>=0&&e!==-2),values:t.dataFields.map(e=>e.fld),pages:t.pageFields.map(e=>e.fld),metric:s,valueMetrics:this._determineValueMetrics(t.dataFields,s),applyWidthHeightFormats:t.applyWidthHeightFormats===`1`?`1`:`0`};i.push(c),a[rd(e)]=c}),i.sort((e,t)=>e.tableNumber-t.tableNumber),e.pivotTables=i,e.pivotTablesIndexed=a}_extractTableNumber(e){let t=e.match(/pivotTable(\d+)/);return t?parseInt(t[1],10):1}_buildCacheIdMap(e){let t=new Map,n=e.pivotCaches??[];for(let e of n)e.cacheId&&e.rId&&t.set(e.rId,parseInt(e.cacheId,10));return t}_buildDefinitionToCacheIdMap(t){let n=new Map,r=this._buildCacheIdMap(t),i=t.workbookRels??[];for(let t of i)if(t.Type===e.RelType.PivotCacheDefinition&&t.Target){let e=t.Target.match(/pivotCacheDefinition(\d+)\.xml/);if(e){let i=`pivotCacheDefinition${e[1]}`,a=r.get(t.Id);a!==void 0&&n.set(i,a)}}return n}_determineMetric(e){return e.length>0&&e[0].subtotal?e[0].subtotal:`sum`}_determineValueMetrics(e,t){return e.map(e=>e.subtotal||t)}async _processWorksheetEntry(e,t,n,r,i){let a=await new Sy(r).parseStream(e);if(!a)throw new jr(i,`Failed to parse worksheet`);a.sheetNo=n,t.worksheetHash[i]=a,t.worksheets.push(a)}async _processCommentEntry(e,t,n){let r=await new Bv().parseStream(e);t.comments[n]=r}async _processTableEntry(e,t,n){let r=await new ky().parseStream(e);t.tables[n]=r}async _processWorksheetRelsEntry(e,t,n){let r=await new Vd().parseStream(e);t.worksheetRels[n]=r}async _processMediaEntry(e,t,n){let r=n.lastIndexOf(`.`);if(r>=1){let i=n.substr(r+1),a=n.substr(0,r);await new Promise((r,o)=>{let s=this.createStreamBuf(),c=()=>{e.off(`error`,u),s.off(`error`,u),s.off(`finish`,l)},l=()=>{c(),t.mediaIndex[n]=t.media.length,t.mediaIndex[a]=t.media.length;let e={type:`image`,name:a,extension:i,buffer:s.read()};t.media.push(e),r()},u=e=>{c(),o(e)};s.once(`finish`,l),e.on(`error`,u),s.on(`error`,u),e.pipe(s)})}}async _processDrawingEntry(e,t,n,r){let i=r??await this.collectStreamData(e),a=new cg,o=this.bufferToString(i),s=await a.parseStream(this.createTextStream(o));t.drawings[n]=s,t.rawDrawings[n]=i}async _processDrawingRelsEntry(e,t,n){let r=await new Vd().parseStream(e);t.drawingRels[n]=r}async _processVmlDrawingEntry(e,t,n){let r=await new Hv().parseStream(e);t.vmlDrawings[n]=r}async _processVmlDrawingHFEntry(e,t,n){let r=await new Hv().parseStream(e);r&&r.headerImage&&(t.vmlDrawingHF||={},t.vmlDrawingHF[n]=r.headerImage)}async _processThemeEntry(e,t,n){await new Promise((r,i)=>{let a=this.createStreamBuf(),o=()=>{e.off(`error`,c),a.off(`error`,c),a.off(`finish`,s)},s=()=>{o();let e=a.read();t.themes[n]=e?typeof e==`string`?e:this.bufferToString(e):``,r()},c=e=>{o(),i(e)};a.once(`finish`,s),e.on(`error`,c),a.on(`error`,c),e.pipe(a)})}async _processPivotTableEntry(e,t,n){let r=await new ly().parseStream(e);r&&(t.pivotTables[n]=r)}async _processPivotTableRelsEntry(e,t,n){let r=await new Vd().parseStream(e);t.pivotTableRels[n]=r}async _processPivotCacheDefinitionEntry(e,t,n){let r=await new ey().parseStream(e);r&&(t.pivotCacheDefinitions[n]=r)}async _processPivotCacheRecordsEntry(e,t,n){let r=await new ny().parseStream(e);r&&(t.pivotCacheRecords[n]=r)}async _processExternalLinkEntry(e,t,n){let r=await new Av().parseStream(e);r&&(t.externalLinksByIndex[n]=r)}async _processExternalLinkRelsEntry(e,t,n){let r=await this.parseRels(e);t.externalLinkRelsByIndex[n]=r??[]}async loadFromFiles(e,t){let n=this.createEmptyModel(),r=Object.keys(e).map(t=>({name:t,dir:t.endsWith(`/`),data:e[t]}));for(let e of r)if(!e.dir){let r=vu(e.name),i=Tu(r)?this.createBinaryStream(e.data):this.createTextStream(this.bufferToString(e.data));await this._processKnownEntry(i,n,r,t)||await this._processDefaultEntry(i,n,r,e.data)}return this.reconcile(n,t),this.workbook.model=n,this.workbook}async _processDefaultEntry(e,t,n,r){let i=bu(n);if(i!==void 0)return await this._processWorksheetRelsEntry(e,t,i),!0;let a=Su(n);if(a)return await this._processMediaEntry(e,t,a),!0;let o=Eu(n);if(o)return await this._processDrawingEntry(e,t,o,r),!0;let s=Du(n);if(s)return await this._processDrawingRelsEntry(e,t,s),!0;if(Ou(n))return await this._processVmlDrawingEntry(e,t,n),!0;let c=ku(n);if(c)return await this._processVmlDrawingHFEntry(e,t,c),!0;if(Au(n))return await this._processCommentEntry(e,t,n),!0;if(ju(n))return await this._processTableEntry(e,t,n),!0;let l=wu(n);if(l)return await this._processThemeEntry(e,t,l),!0;let u=Mu(n);if(u)return await this._processPivotTableEntry(e,t,u),!0;let d=Nu(n);if(d)return await this._processPivotTableRelsEntry(e,t,d),!0;let f=Pu(n);if(f)return await this._processPivotCacheDefinitionEntry(e,t,f),!0;if(Fu(n))return!0;let p=Iu(n);if(p)return await this._processPivotCacheRecordsEntry(e,t,p),!0;let m=Lu(n);if(m!==void 0)return await this._processExternalLinkEntry(e,t,m),!0;let h=Ru(n);return h===void 0?Ov.isPassthroughPath(n)?(r?t.passthrough[n]=r:await this._processPassthroughEntry(e,t,n),!0):!1:(await this._processExternalLinkRelsEntry(e,t,h),!0)}async _processPassthroughEntry(e,t,n){let r=await this.collectStreamData(e);t.passthrough[n]=r}async _renderToZip(e,t,n,r){let i=e.createEntry(t),a=new Ay(i);n.render(a,r),i.end(),await e.waitForDrain()}async addContentTypes(e,t){await this._renderToZip(e,V.contentTypes,new Rh,t)}async addApp(e,t){await this._renderToZip(e,V.docPropsApp,new Lh,t)}async addCore(e,t){await this._renderToZip(e,V.docPropsCore,new Bh,t)}async addThemes(e,t){let n=t.themes||{theme1:`<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
428
|
+
<a:theme xmlns:a="http://schemas.openxmlformats.org/drawingml/2006/main" name="Office Theme"> <a:themeElements> <a:clrScheme name="Office"> <a:dk1> <a:sysClr val="windowText" lastClr="000000"/> </a:dk1> <a:lt1> <a:sysClr val="window" lastClr="FFFFFF"/> </a:lt1> <a:dk2> <a:srgbClr val="1F497D"/> </a:dk2> <a:lt2> <a:srgbClr val="EEECE1"/> </a:lt2> <a:accent1> <a:srgbClr val="4F81BD"/> </a:accent1> <a:accent2> <a:srgbClr val="C0504D"/> </a:accent2> <a:accent3> <a:srgbClr val="9BBB59"/> </a:accent3> <a:accent4> <a:srgbClr val="8064A2"/> </a:accent4> <a:accent5> <a:srgbClr val="4BACC6"/> </a:accent5> <a:accent6> <a:srgbClr val="F79646"/> </a:accent6> <a:hlink> <a:srgbClr val="0000FF"/> </a:hlink> <a:folHlink> <a:srgbClr val="800080"/> </a:folHlink> </a:clrScheme> <a:fontScheme name="Office"> <a:majorFont> <a:latin typeface="Cambria"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Times New Roman"/> <a:font script="Hebr" typeface="Times New Roman"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="MoolBoran"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Times New Roman"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:majorFont> <a:minorFont> <a:latin typeface="Calibri"/> <a:ea typeface=""/> <a:cs typeface=""/> <a:font script="Jpan" typeface="MS Pゴシック"/> <a:font script="Hang" typeface="맑은 고딕"/> <a:font script="Hans" typeface="宋体"/> <a:font script="Hant" typeface="新細明體"/> <a:font script="Arab" typeface="Arial"/> <a:font script="Hebr" typeface="Arial"/> <a:font script="Thai" typeface="Tahoma"/> <a:font script="Ethi" typeface="Nyala"/> <a:font script="Beng" typeface="Vrinda"/> <a:font script="Gujr" typeface="Shruti"/> <a:font script="Khmr" typeface="DaunPenh"/> <a:font script="Knda" typeface="Tunga"/> <a:font script="Guru" typeface="Raavi"/> <a:font script="Cans" typeface="Euphemia"/> <a:font script="Cher" typeface="Plantagenet Cherokee"/> <a:font script="Yiii" typeface="Microsoft Yi Baiti"/> <a:font script="Tibt" typeface="Microsoft Himalaya"/> <a:font script="Thaa" typeface="MV Boli"/> <a:font script="Deva" typeface="Mangal"/> <a:font script="Telu" typeface="Gautami"/> <a:font script="Taml" typeface="Latha"/> <a:font script="Syrc" typeface="Estrangelo Edessa"/> <a:font script="Orya" typeface="Kalinga"/> <a:font script="Mlym" typeface="Kartika"/> <a:font script="Laoo" typeface="DokChampa"/> <a:font script="Sinh" typeface="Iskoola Pota"/> <a:font script="Mong" typeface="Mongolian Baiti"/> <a:font script="Viet" typeface="Arial"/> <a:font script="Uigh" typeface="Microsoft Uighur"/> <a:font script="Geor" typeface="Sylfaen"/> </a:minorFont> </a:fontScheme> <a:fmtScheme name="Office"> <a:fillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="35000"> <a:schemeClr val="phClr"> <a:tint val="37000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="15000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="1"/> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="100000"/> <a:shade val="100000"/> <a:satMod val="130000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:tint val="50000"/> <a:shade val="100000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:lin ang="16200000" scaled="0"/> </a:gradFill> </a:fillStyleLst> <a:lnStyleLst> <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> <a:ln w="25400" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> <a:ln w="38100" cap="flat" cmpd="sng" algn="ctr"> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:prstDash val="solid"/> </a:ln> </a:lnStyleLst> <a:effectStyleLst> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="20000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="38000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> </a:effectStyle> <a:effectStyle> <a:effectLst> <a:outerShdw blurRad="40000" dist="23000" dir="5400000" rotWithShape="0"> <a:srgbClr val="000000"> <a:alpha val="35000"/> </a:srgbClr> </a:outerShdw> </a:effectLst> <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> <a:sp3d> <a:bevelT w="63500" h="25400"/> </a:sp3d> </a:effectStyle> </a:effectStyleLst> <a:bgFillStyleLst> <a:solidFill> <a:schemeClr val="phClr"/> </a:solidFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="40000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="40000"> <a:schemeClr val="phClr"> <a:tint val="45000"/> <a:shade val="99000"/> <a:satMod val="350000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="20000"/> <a:satMod val="255000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="-80000" r="50000" b="180000"/> </a:path> </a:gradFill> <a:gradFill rotWithShape="1"> <a:gsLst> <a:gs pos="0"> <a:schemeClr val="phClr"> <a:tint val="80000"/> <a:satMod val="300000"/> </a:schemeClr> </a:gs> <a:gs pos="100000"> <a:schemeClr val="phClr"> <a:shade val="30000"/> <a:satMod val="200000"/> </a:schemeClr> </a:gs> </a:gsLst> <a:path path="circle"> <a:fillToRect l="50000" t="50000" r="50000" b="50000"/> </a:path> </a:gradFill> </a:bgFillStyleLst> </a:fmtScheme> </a:themeElements> <a:objectDefaults> <a:spDef> <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> </a:spDef> <a:lnDef> <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> </a:lnDef> </a:objectDefaults> <a:extraClrSchemeLst/> </a:theme>`};Object.keys(n).forEach(t=>{let r=n[t];e.append(r,{name:zu(t)})})}async addOfficeRels(t,n){await this._renderToZip(t,V.rootRels,new Vd,[{Id:`rId1`,Type:e.RelType.OfficeDocument,Target:V.xlWorkbook},{Id:`rId2`,Type:e.RelType.CoreProperties,Target:V.docPropsCore},{Id:`rId3`,Type:e.RelType.ExtenderProperties,Target:V.docPropsApp}])}async addWorkbookRels(t,n){let r=1,i=[{Id:`rId${r++}`,Type:e.RelType.Styles,Target:ld.workbookStyles},{Id:`rId${r++}`,Type:e.RelType.Theme,Target:ld.workbookTheme1}];n.sharedStrings.count&&i.push({Id:`rId${r++}`,Type:e.RelType.SharedStrings,Target:ld.workbookSharedStrings}),n.hasCheckboxes&&i.push({Id:`rId${r++}`,Type:e.RelType.FeaturePropertyBag,Target:ld.workbookFeaturePropertyBag}),n.hasDynamicArrayFormulas&&i.push({Id:`rId${r++}`,Type:e.RelType.SheetMetadata,Target:ld.workbookMetadata});let a=new Map;(n.pivotTables??[]).forEach(t=>{let n=a.get(t.cacheId);n?t.rId=n:(t.rId=`rId${r++}`,a.set(t.cacheId,t.rId),i.push({Id:t.rId,Type:e.RelType.PivotCacheDefinition,Target:ud(t.tableNumber)}))}),n.worksheets.forEach(t=>{t.rId=`rId${r++}`,i.push({Id:t.rId,Type:e.RelType.Worksheet,Target:Uu(t.fileIndex)})});let o=n.externalLinks??[];for(let t of o)t.rId=`rId${r++}`,i.push({Id:t.rId,Type:e.RelType.ExternalLink,Target:sd(t.index)});let s=new Vd;await this._renderToZip(t,V.xlWorkbookRels,s,i)}async addFeaturePropertyBag(e,t){t.hasCheckboxes&&await this._renderToZip(e,V.xlFeaturePropertyBag,new Vh,{})}async addMetadata(e,t){t.hasDynamicArrayFormulas&&await this._renderToZip(e,V.xlMetadata,new zd,{dynamicArrayCount:t.dynamicArrayCount})}async addSharedStrings(e,t){t.sharedStrings&&t.sharedStrings.count&&await this._renderToZip(e,V.xlSharedStrings,t.sharedStrings,t.sharedStrings.model)}async addStyles(e,t){t.styles&&await this._renderToZip(e,V.xlStyles,t.styles,t.styles.model)}async addWorkbook(e,t){await this._renderToZip(e,V.xlWorkbook,new Rd,t)}async addWorksheets(e,t){let n=new Sy,r=new Vd,i=new Bv,a=new Hv,o=new Vv;for(let s of t.worksheets){let{fileIndex:t}=s,c=e.createEntry(Vu(t)),l=new Ay(c);n.render(l,s),c.end(),await e.waitForDrain(),s.rels&&s.rels.length&&await this._renderToZip(e,Hu(t),r,s.rels),s.comments.length>0&&await this._renderToZip(e,Wu(t),i,s);let u=s.comments.length>0,d=s.formControls&&s.formControls.length>0;if((u||d)&&await this._renderToZip(e,Ku(t),a,{comments:u?s.comments:[],formControls:d?s.formControls:[]}),s.headerImage){let n=s.headerImage,i=n.bookImage,o=`../media/${i.name&&i.extension&&i.name.endsWith(`.${i.extension}`)?i.name:`${i.name}.${i.extension}`}`;await this._renderToZip(e,qu(t),a,{comments:[],formControls:[],headerImage:{imageRelId:`rId1`,width:n.headerWidth,height:n.headerHeight}}),await this._renderToZip(e,Ju(t),r,[{Id:`rId1`,Type:`http://schemas.openxmlformats.org/officeDocument/2006/relationships/image`,Target:o}])}if(d)for(let t of s.formControls)await this._renderToZip(e,vd(t.ctrlPropId),o,t)}}async addDrawings(e,t){let n=new cg,r=new Vd,i=t.rawDrawings||{};for(let a of t.worksheets){let{drawing:t}=a;if(t){if(this.drawingHasChartReference(t)&&i[t.name])e.append(i[t.name],{name:Xu(t.name)});else{let r=rm(t.anchors??[]),i=t.anchors?{...t,anchors:r}:t;n.prepare(i),await this._renderToZip(e,Xu(t.name),n,i)}await this._renderToZip(e,Zu(t.name),r,t.rels)}}}async addTables(e,t){let n=new ky;for(let r of t.worksheets)for(let t of r.tables)n.prepare(t,{}),await this._renderToZip(e,Yu(t.target),n,t)}async addExternalLinks(t,n){let r=n.externalLinks??[];if(r.length===0)return;let i=new Av,a=new Vd;for(let n of r)await this._renderToZip(t,ad(n.index),i,n),await this._renderToZip(t,od(n.index),a,[{Id:`rId1`,Type:e.RelType.ExternalLinkPath,Target:n.target,TargetMode:n.targetMode??`External`}])}addPassthrough(e,t){let n=new Ov;n.fromRecord(t.passthrough||{}),n.writeToZip(e)}async addPivotTables(t,n){if(!n.pivotTables.length)return;let r=new ny,i=new ey,a=new ly,o=new Vd,s=new Map;for(let c of n.pivotTables){let n=c.tableNumber,l=c.isLoaded,u=c.cacheId;if(!s.has(u)&&(s.set(u,n),l?(c.cacheDefinition&&await this._renderToZip(t,Qu(n),i,c.cacheDefinition),c.cacheRecords&&await this._renderToZip(t,ed(n),r,c.cacheRecords)):(await this._renderToZip(t,ed(n),r,c),await this._renderToZip(t,Qu(n),i,c)),!l||c.cacheRecords)){let r=(l?c.cacheDefinition?.rId:void 0)??`rId1`;await this._renderToZip(t,$u(n),o,[{Id:r,Type:e.RelType.PivotCacheRecords,Target:td(n)}])}await this._renderToZip(t,nd(n),a,c);let d=s.get(u);await this._renderToZip(t,id(n),o,[{Id:`rId1`,Type:e.RelType.PivotCacheDefinition,Target:cd(d)}])}}_finalize(e){return new Promise((t,n)=>{e.on(`finish`,()=>{t(this)}),e.on(`error`,n),e.finalize()})}prepareModel(e,t){e.creator=e.creator??`ExcelTS`,e.lastModifiedBy=e.lastModifiedBy??`ExcelTS`,e.created=e.created??new Date,e.modified=e.modified??new Date,e.useSharedStrings=t.useSharedStrings===void 0?!0:t.useSharedStrings,e.useStyles=t.useStyles===void 0?!0:t.useStyles,e.sharedStrings=new dg;let n=e.defaultFont;e.styles=e.useStyles?new pf(!0):new pf.Mock,n&&e.styles.setDefaultFont&&e.styles.setDefaultFont(n);let r=new Rd,i=new Sy;r.prepare(e),this._normaliseExternalLinks(e);let a={sharedStrings:e.sharedStrings,styles:e.styles,date1904:e.properties?.date1904,drawingsCount:0,media:e.media};a.drawings=e.drawings=[],a.commentRefs=e.commentRefs=[],a.formControlRefs=e.formControlRefs=[],e.hasHeaderWatermark=!1;let o=0;e.tables=[];let s=new Map;e.worksheets.forEach((t,n)=>{t.fileIndex=n+1,t.tables.forEach(n=>{let r=n.name.toLowerCase(),i=s.get(r);if(i!==void 0)throw new Lr(`Duplicate table name "${n.name}": already used in worksheet "${i}". Table names must be unique across the entire workbook (case-insensitive).`);s.set(r,t.name),o++,n.target=`table${o}.xml`,n.id=o,e.tables.push(n)}),i.prepare(t,a)}),e.hasCheckboxes=e.styles.hasCheckboxes;let c=0;e.worksheets.forEach(e=>{(e.rows??[]).forEach(e=>{(e.cells??[]).forEach(e=>{e.isDynamicArray&&c++})})}),e.hasDynamicArrayFormulas=c>0,e.dynamicArrayCount=c,a.hasHeaderWatermark&&(e.hasHeaderWatermark=!0);let l=e.passthrough||{},u=new Ov;u.fromRecord(l),e.passthroughContentTypes=u.getContentTypes()}};function Fy(e){throw Error("No formula engine is installed. Call `installFormulaEngine()` from `@cj-tech-master/excelts/formula` once at startup to enable `Workbook.calculateFormulas()` and automatic recalculation during `excelToPdf()`.")}let Iy=/\r\n|\r|\n/,Ly=/\r\n|[|\\\r\n]/g,Ry=/\\([|\\])/g,zy=/<br\s*\/?>/gi,By=/\r\n|\r|\n/g;function Vy(e){let t=0;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);if(r>=55296&&r<=56319&&n+1<e.length){let r=e.charCodeAt(n+1);if(r>=56320&&r<=57343){t+=2,n++;continue}}if(!(r===8203||r===8204||r===8205||r===65279)&&!(r>=768&&r<=879||r>=6832&&r<=6911||r>=7616&&r<=7679||r>=8400&&r<=8447||r>=65056&&r<=65071)){if(r>=4352&&r<=4447||r>=11904&&r<=12350||r>=12352&&r<=13247||r>=13312&&r<=19903||r>=19968&&r<=42191||r>=43360&&r<=43391||r>=44032&&r<=55215||r>=63744&&r<=64255||r>=65040&&r<=65049||r>=65072&&r<=65135||r>=65281&&r<=65376||r>=65504&&r<=65510){t+=2;continue}t+=1}}return t}function Hy(e){if(e==null)return``;if(e instanceof Date)return e.toISOString();if(typeof e==`object`)try{return JSON.stringify(e)}catch{return`[object Object]`}return String(e)}function Uy(e){return e.replace(Ly,e=>e===`|`||e===`\\`?`\\`+e:`<br>`)}function Wy(e){return e.indexOf(`
|
|
429
|
+
`)!==-1||e.indexOf(`\r`)!==-1?e.replace(By,`<br>`):e}function Gy(e,t){switch(e){case`left`:return`:`+`-`.repeat(t-1);case`right`:return`-`.repeat(t-1)+`:`;case`center`:return`:`+`-`.repeat(Math.max(t-2,1))+`:`;default:return`-`.repeat(t)}}function Ky(e,t,n){let r=Vy(e);if(r>=t)return e;let i=t-r;switch(n){case`right`:return` `.repeat(i)+e;case`center`:{let t=Math.floor(i/2),n=i-t;return` `.repeat(t)+e+` `.repeat(n)}default:return e+` `.repeat(i)}}function qy(e,t){let n=e.length,r=t.alignment??`left`,i=Array(n),a=Array(n),o=Array(n);if(t.columns&&t.columns.length>0)for(let s=0;s<n;s++){let n=s<t.columns.length?t.columns[s]:void 0;typeof n==`string`?(i[s]=n,a[s]=r,o[s]=3):n?(i[s]=n.header,a[s]=n.alignment??r,o[s]=n.minWidth??3):(i[s]=e[s]??``,a[s]=r,o[s]=3)}else for(let t=0;t<n;t++)i[t]=e[t]??``,a[t]=r,o[t]=3;return{displayHeaders:i,alignments:a,minWidths:o}}function Jy(e,t,n={}){let{padding:r=!0,trailingNewline:i=!0,escapeContent:a=!0,stringify:o=Hy}=n,s=e.length;if(s===0)return``;let{displayHeaders:c,alignments:l,minWidths:u}=qy(e,n),d=Array(s),f=Array(s);for(let e=0;e<s;e++){let t=a?Uy(c[e]):Wy(c[e]);d[e]=t,f[e]=r?Math.max(Vy(t),u[e]):Math.max(u[e],3)}let p=Array(t.length);for(let e=0;e<t.length;e++){let n=t[e],i=Array(s);for(let e=0;e<s;e++){let t=e<n.length?o(n[e]):``,s=a?Uy(t):Wy(t);if(i[e]=s,r){let t=Vy(s);t>f[e]&&(f[e]=t)}}p[e]=i}let m=2+p.length,h=Array(m),g=Array(s);for(let e=0;e<s;e++)g[e]=r?` `+Ky(d[e],f[e],l[e])+` `:` `+d[e]+` `;h[0]=`|`+g.join(`|`)+`|`;let _=Array(s);for(let e=0;e<s;e++)_[e]=Gy(l[e],f[e]+2);h[1]=`|`+_.join(`|`)+`|`;for(let e=0;e<p.length;e++){let t=Array(s);for(let n=0;n<s;n++)t[n]=r?` `+Ky(p[e][n],f[n],l[n])+` `:` `+p[e][n]+` `;h[e+2]=`|`+t.join(`|`)+`|`}let v=h.join(`
|
|
430
430
|
`);return i&&(v+=`
|
|
431
|
-
`),v}var
|
|
432
|
-
`)),n}function ib(e,t,n){let r=Array(t);for(let i=0;i<t;i++)r[i]=i<e.length?rb(e[i],n):``;return r}function ab(e){for(let t=0;t<e.length;t++)if(e[t]!==``)return!1;return!0}function ob(e){return e.indexOf(`|`)!==-1}function sb(e){let t=e.length,n=0;for(;n<t;){let t=e.charCodeAt(n);if(t!==32&&t!==9)return t===124;n++}return!1}function cb(e){return e.indexOf(`-`)!==-1}function lb(e,t,n,r){if(t>=n-1)return null;let i=e[t].trim();if(i===``||!ob(i))return null;let a=$y(i);if(a.length<1)return null;let o=e[t+1].trim();if(o===``||!cb(o))return null;let s=$y(o);if(!nb(s))return null;let c=a.length,l=Array(c),u=Array(c);for(let e=0;e<c;e++)l[e]=rb(a[e],r),u[e]=e<s.length?eb(s[e]):`none`;let d=sb(i),f=[],p=t+2;for(;p<n;p++){let t=e[p].trim();if(t===``||!ob(t)||d&&!sb(t))break;if(r.maxRows!==void 0&&f.length>=r.maxRows){for(;p<n;){let t=e[p].trim();if(t===``||!ob(t)||d&&!sb(t))break;p++}break}let i=ib($y(t),c,r);r.skipEmpty&&ab(i)||f.push(i)}return{result:{headers:l,rows:f,alignments:u},endLine:p}}function ub(e,t={}){let n=Qy(t),r=e.split(Ly),i=r.length;for(let e=0;e<i-1;e++){let t=lb(r,e,i,n);if(t)return t.result}throw new Zy(`No valid Markdown table found in input`,i>0?i:1)}function db(e,t={}){let n=Qy(t),r=e.split(Ly),i=r.length,a=[],o=0;for(;o<i-1;){let e=lb(r,o,i,n);e?(a.push(e.result),o=e.endLine):o++}return a}let fb=[`YYYY-MM-DD[T]HH:mm:ssZ`,`YYYY-MM-DD[T]HH:mm:ss`,`MM-DD-YYYY`,`YYYY-MM-DD`],pb={true:!0,false:!1,"#N/A":{error:`#N/A`},"#REF!":{error:`#REF!`},"#NAME?":{error:`#NAME?`},"#DIV/0!":{error:`#DIV/0!`},"#NULL!":{error:`#NULL!`},"#VALUE!":{error:`#VALUE!`},"#NUM!":{error:`#NUM!`}};function mb(e,t){let n=$e.create(e),r=t?.decimalSeparator??`.`;return function(e){if(e===``)return null;if(typeof e==`string`){let t=ae(e,r);if(!Number.isNaN(t)&&t!==1/0)return t}else{let t=Number(e);if(!Number.isNaN(t)&&t!==1/0)return t}if(typeof e==`string`){let t=n.parse(e);if(t)return t;let r=pb[e];if(r!==void 0)return r}return e}}function hb(e,t){let n=e?tt.create(e,{utc:t}):tt.iso(t);return function(e){if(e==null)return e;if(e instanceof Date)return n.format(e);if(typeof e!=`object`)return e;let t=e;if(typeof t.hyperlink==`string`||typeof t.text==`string`){let e=typeof t.hyperlink==`string`?t.hyperlink:``,n=typeof t.text==`string`?t.text:``;return e||n||``}return`formula`in e||`sharedFormula`in e?e.result??``:`richText`in e&&Array.isArray(e.richText)?e.richText.map(e=>e.text).join(``):`checkbox`in e&&typeof e.checkbox==`boolean`?e.checkbox:`error`in e&&typeof e.error==`string`?e.error:JSON.stringify(e)}}function gb(e,t){let n=e?tt.create(e,{utc:t}):tt.iso(t);return function(e){if(e==null)return``;if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`bigint`)return String(e);if(typeof e==`boolean`)return e?`true`:`false`;if(e instanceof Date)return n.format(e);if(typeof e==`object`){let t=e;if(t.text||t.hyperlink)return t.hyperlink||t.text||``;if(t.formula||t.result)return t.result==null?``:String(t.result);if(t.richText&&Array.isArray(t.richText))return t.richText.map(e=>e.text).join(``);if(t.error)return t.error;try{return JSON.stringify(e)}catch{return`[object Object]`}}return String(e)}}function _b(e){return typeof e==`string`&&/^https?:\/\//i.test(e)}function vb(e){return typeof File<`u`&&e instanceof File}function yb(e){return typeof Blob<`u`&&e instanceof Blob&&!vb(e)}function bb(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t[Symbol.asyncIterator]==`function`||typeof t.pipe==`function`&&typeof t.on==`function`}function xb(e){return{delimiter:e?.delimiter??`,`,quote:e?.quote,escape:e?.escape,delimitersToGuess:e?.delimitersToGuess,lineEnding:e?.lineEnding,headers:e?.headers,skipEmptyLines:e?.skipEmptyLines,trim:e?.trim,ltrim:e?.ltrim,rtrim:e?.rtrim,comment:e?.comment,maxRows:e?.maxRows,toLine:e?.toLine,skipLines:e?.skipLines,skipRows:e?.skipRows,columnMismatch:e?.columnMismatch,groupColumnsByName:e?.groupColumnsByName,relaxQuotes:e?.relaxQuotes,fastMode:e?.fastMode,info:e?.info,raw:e?.raw,skipRecordsWithError:e?.skipRecordsWithError,skipRecordsWithEmptyValues:e?.skipRecordsWithEmptyValues,onSkip:e?.onSkip}}function Sb(e){return{delimiter:e?.delimiter??`,`,quote:e?.quote,escape:e?.escape,lineEnding:e?.lineEnding,quoteColumns:e?.quoteColumns,quoteHeaders:e?.quoteHeaders,decimalSeparator:e?.decimalSeparator??`.`,escapeFormulae:e?.escapeFormulae??!0,writeHeaders:e?.writeHeaders}}var Cb=class{static{this.Writer=_g}static{this.Reader=_f}constructor(e){this._tableNames=new Set,this.category=``,this.company=``,this.created=new Date,this.description=``,this.keywords=``,this.manager=``,this.modified=this.created,this.properties={},this.calcProperties={},this._worksheets=[],this.subject=``,this.title=``,this.views=[],this.media=[],this.pivotTables=[],this.externalLinks=[],this._passthrough={},this._rawDrawings={},this._writerExternalLinkCache=new Map,this._definedNames=new $r(e?.formulaSyntaxProbe)}get defaultFont(){return this._defaultFont}set defaultFont(e){this._defaultFont=e}importSheet(e,t){let n=this.addWorksheet(t??e.name);return n.model={...e.model,id:n.id,name:n.name},n}async protect(e,t){this.protection=await Ih(e,t)}unprotect(){this.protection=void 0}get xlsx(){return this._xlsx||=new Fy(this),this._xlsx}async readCsv(e,t){return _b(e)?this._readCsvUrl(e,t):vb(e)?this._readCsvFile(e,t):yb(e)?this._readCsvBlob(e,t):bb(e)?this._readCsvStream(e,t):this._readCsvContent(e,t)}writeCsv(e,t){return e&&typeof e.write==`function`?this._writeCsvStream(e,t):this._writeCsvString(e)}async writeCsvBuffer(e){let t=this._writeCsvString(e);return new TextEncoder().encode(t)}async readCsvFile(e,t){throw new Mr(`readCsvFile()`,`not available in browser. Use readCsv(url) or readCsv(file) instead.`)}async writeCsvFile(e,t){throw new Mr(`writeCsvFile()`,`not available in browser. Use writeCsv() and trigger a download instead.`)}createCsvReadStream(e){let t=this.getWorksheet(e?.sheetName||e?.sheetId),n=e?.map||hb(e?.dateFormat,e?.dateUTC),r=e?.includeEmptyRows!==!1,i=new Sr(Sb(e));return setTimeout(t?()=>{let e=1;t.eachRow((t,a)=>{if(r)for(;e++<a-1;)i.write([]);let{values:o}=t;o.shift(),i.write(o.map(n)),e=a}),i.end()}:()=>i.end(),0),i}createCsvWriteStream(e){let t=this.addWorksheet(e?.sheetName),n=e?.dateFormats??fb,r=e?.decimalSeparator,i=e?.map||mb(n,{decimalSeparator:r}),a=new br(xb(e)),o=!!e?.headers,s=null;return o&&a.on(`headers`,e=>{s=e,t.addRow(e)}),a.on(`data`,e=>{if(o&&s&&e&&typeof e==`object`&&!Array.isArray(e)){let n=e,r=s.map(e=>n[e]);t.addRow(r.map(i))}else Array.isArray(e)&&t.addRow(e.map(i))}),a}_readCsvContent(e,t){let n;n=typeof e==`string`?e:e instanceof ArrayBuffer||e instanceof Uint8Array?new TextDecoder().decode(e):String(e);let r=this.addWorksheet(t?.sheetName),i=t?.dateFormats??fb,a=t?.decimalSeparator,o=t?.map||mb(i,{decimalSeparator:a}),s=tn(n,xb(t));if(Array.isArray(s))for(let e of s)r.addRow(e.map(o));else{s.headers&&r.addRow(s.headers);for(let e of s.rows){let t=s.headers.map(t=>e[t]);r.addRow(t.map(o))}}return r}async _readCsvStream(e,t){let n=this.addWorksheet(t?.sheetName),r=t?.dateFormats??fb,i=t?.decimalSeparator,a=t?.map||mb(r,{decimalSeparator:i}),o=new br(xb(t)),s=!!t?.headers,c=null;return new Promise((t,r)=>{s&&o.on(`headers`,e=>{c=e,n.addRow(e)}),o.on(`data`,e=>{if(s&&c&&e&&typeof e==`object`&&!Array.isArray(e)){let t=e,r=c.map(e=>t[e]);n.addRow(r.map(a))}else Array.isArray(e)&&n.addRow(e.map(a))}),gr(e,o).then(()=>t(n)).catch(r)})}async _readCsvUrl(e,t){let n={method:t?.requestBody?`POST`:`GET`,headers:t?.requestHeaders,body:t?.requestBody,credentials:t?.withCredentials?`include`:`same-origin`,signal:t?.signal},r=await fetch(e,n);if(!r.ok)throw new Fr(e,r.status,r.statusText);if(t?.stream&&r.body){let e=Dn(r.body);return this._readCsvStream(e,t)}let i=await r.text();return this._readCsvContent(i,t)}async _readCsvFile(e,t){if((t?.stream||e.size>10*1024*1024)&&typeof e.stream==`function`){let n=Dn(e.stream());return this._readCsvStream(n,t)}return new Promise((n,r)=>{let i=new FileReader,a=t?.encoding??`UTF-8`;t?.onProgress&&(i.onprogress=n=>{t.onProgress(n.loaded,n.total||e.size)}),i.onload=e=>{try{let r=e.target?.result;n(this._readCsvContent(r,t))}catch(e){r(e)}},i.onerror=()=>r(Error(`Failed to read file: ${e.name}`)),i.readAsText(e,a)})}async _readCsvBlob(e,t){let n=await e.text();return this._readCsvContent(n,t)}_writeCsvString(e){let t=this.getWorksheet(e?.sheetName||e?.sheetId);if(!t)return``;let n=e?.map||hb(e?.dateFormat,e?.dateUTC),r=e?.includeEmptyRows!==!1,i=[],a=1;return t.eachRow((e,t)=>{if(r)for(;a++<t-1;)i.push([]);let{values:o}=e;o.shift(),i.push(o.map(n)),a=t}),ke(i,Sb(e))}async _writeCsvStream(e,t){let n=this.getWorksheet(t?.sheetName||t?.sheetId);if(!n){e.end();return}let r=t?.map||hb(t?.dateFormat,t?.dateUTC),i=t?.includeEmptyRows!==!1,a=new Sr(Sb(t)),o=gr(a,e),s=1;n.eachRow((e,t)=>{if(i)for(;s++<t-1;)a.write([]);let{values:n}=e;n.shift(),a.write(n.map(r)),s=t}),a.end(),await o}_populateMarkdownWorksheet(e,t,n){e.addRow(t.headers),e._markdownAlignments=t.alignments;for(let r of t.rows)n?e.addRow(r.map((e,t)=>n(e,t))):e.addRow(r)}readMarkdown(e,t){let n=ub(e,{trim:t?.trim,unescape:t?.unescape,skipEmptyRows:t?.skipEmptyRows,maxRows:t?.maxRows,convertBr:t?.convertBr}),r=this.addWorksheet(t?.sheetName);return this._populateMarkdownWorksheet(r,n,t?.map),r}readMarkdownAll(e,t){let n=db(e,{trim:t?.trim,unescape:t?.unescape,skipEmptyRows:t?.skipEmptyRows,maxRows:t?.maxRows,convertBr:t?.convertBr}),r=t?.sheetName,i=t?.map,a=[];for(let e=0;e<n.length;e++){let t=r?e===0?r:`${r}_${e+1}`:void 0,o=this.addWorksheet(t);this._populateMarkdownWorksheet(o,n[e],i),a.push(o)}return a}writeMarkdown(e){let t=this.getWorksheet(e?.sheetName||e?.sheetId);if(!t)return``;let n=e?.dateFormat,r=e?.dateUTC,i=e?.includeEmptyRows!==!1,a=e?.stringify??gb(n,r),o=[],s=1;if(t.eachRow((e,t)=>{if(i)for(;s++<t-1;)o.push([]);let n=Array.from(e.values).slice(1);o.push(n),s=t}),o.length===0)return``;let c=o[0].map(e=>a(e)),l=o.slice(1),u=t._markdownAlignments,d=e?.columns,f;return!d&&u&&(f=c.map((e,t)=>({header:e,alignment:t<u.length?u[t]:void 0}))),Yy(c,l,{columns:f??d,alignment:e?.alignment,padding:e?.padding,trailingNewline:e?.trailingNewline,escapeContent:e?.escapeContent,stringify:a})}writeMarkdownBuffer(e){let t=this.writeMarkdown(e);return new TextEncoder().encode(t)}async readMarkdownFile(e,t){throw new Mr(`readMarkdownFile()`,`not available in browser. Use readMarkdown(string) instead.`)}async readMarkdownAllFile(e,t){throw new Mr(`readMarkdownAllFile()`,`not available in browser. Use readMarkdownAll(string) instead.`)}async writeMarkdownFile(e,t){throw new Mr(`writeMarkdownFile()`,`not available in browser. Use writeMarkdown() and trigger a download instead.`)}static createStreamWriter(e){return new _g(e)}static createStreamReader(e,t){return new _f(e,t)}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addWorksheet(e,t){let n=this.nextId,r=this._worksheets.reduce((e,t)=>(t&&t.orderNo)>e?t.orderNo:e,0),i=new J_({...t,id:n,name:e,orderNo:r+1,workbook:this});return this._worksheets[n]=i,i}removeWorksheetEx(e){this._worksheets[e.id]=void 0}removeWorksheet(e){let t=this.getWorksheet(e);t&&t.destroy()}getWorksheet(e){if(e===void 0)return this._worksheets.find(Boolean);if(typeof e==`number`)return this._worksheets[e];if(typeof e==`string`){let t=e.toLowerCase();return this._worksheets.find(e=>e&&e.name.toLowerCase()===t)}}get worksheets(){return this._worksheets.slice(1).sort((e,t)=>e.orderNo-t.orderNo).filter(Boolean)}eachSheet(e){this.worksheets.forEach(t=>{e(t,t.id)})}get definedNames(){return this._definedNames}calculateFormulas(){Iy(this)}registerFunction(e,t,n){this.userFunctions||=new Map,this.userFunctions.set(e.toUpperCase(),{minArity:n?.minArity??0,maxArity:n?.maxArity??255,invoke:t,volatile:n?.volatile??!1})}unregisterFunction(e){return this.userFunctions?.delete(e.toUpperCase())??!1}clearThemes(){this._themes=void 0}addImage(e){let t=this.media.length;return this.media.push({...e,type:`image`}),t}getImage(e){return this.media[Number(e)]}addExternalLink(e){let t={index:this.externalLinks.length+1,target:e.target,targetMode:e.targetMode??`External`,sheetNames:e.sheetNames?[...e.sheetNames]:[],cachedValues:e.cachedValues?{...e.cachedValues}:{}};return this.externalLinks.push(t),t}getExternalLink(e){if(typeof e==`number`)return this.externalLinks[e-1];let t=e.toLowerCase();return this.externalLinks.find(e=>e.target.toLowerCase()===t)}_collectExternalLinksForWrite(){let e=new Set(this.externalLinks.map(e=>e.target.toLowerCase())),t=this.externalLinks.map((e,t)=>({...e,index:t+1,sheetNames:[...e.sheetNames??[]],cachedValues:{...e.cachedValues??{}},targetMode:e.targetMode??`External`}));for(let n of this._writerExternalLinkCache.values())e.has(n.target.toLowerCase())||t.push({...n,index:t.length+1,sheetNames:[...n.sheetNames],cachedValues:{...n.cachedValues}});return t}_recordAutoExternalLink(e,t){let n=e.toLowerCase(),r=this.externalLinks.findIndex(e=>e.target.toLowerCase()===n);if(r!==-1)return r+1;let i=this._writerExternalLinkCache.get(n);i||(i={index:0,target:e,targetMode:`External`,sheetNames:[],cachedValues:{}},this._writerExternalLinkCache.set(n,i)),t&&!i.sheetNames.includes(t)&&i.sheetNames.push(t);let a=this.externalLinks.length,o=0;for(let e of this._writerExternalLinkCache.keys())if(o++,e===n)return a+o;return a+this._writerExternalLinkCache.size}get model(){return{creator:this.creator||`Unknown`,lastModifiedBy:this.lastModifiedBy||`Unknown`,lastPrinted:this.lastPrinted,created:this.created,modified:this.modified,properties:this.properties,protection:this.protection,worksheets:this.worksheets.map(e=>e.model),sheets:this.worksheets.map(e=>e.model).filter(Boolean),definedNames:this._definedNames.model,views:this.views,company:this.company,manager:this.manager,title:this.title,subject:this.subject,keywords:this.keywords,category:this.category,description:this.description,language:this.language,revision:this.revision,contentStatus:this.contentStatus,themes:this._themes,media:this.media,pivotTables:this.pivotTables,calcProperties:this.calcProperties,passthrough:this._passthrough,rawDrawings:this._rawDrawings,defaultFont:this._defaultFont,externalLinks:this.externalLinks}}set model(e){this.creator=e.creator,this.lastModifiedBy=e.lastModifiedBy,this.lastPrinted=e.lastPrinted,this.created=e.created,this.modified=e.modified,this.company=e.company,this.manager=e.manager,this.title=e.title,this.subject=e.subject,this.keywords=e.keywords,this.category=e.category,this.description=e.description,this.language=e.language,this.revision=e.revision,this.contentStatus=e.contentStatus,this.properties=e.properties,this.protection=e.protection,this.calcProperties=e.calcProperties,this._worksheets=[],this._tableNames.clear(),e.worksheets.forEach(t=>{let{id:n,name:r,state:i}=t,a=e.sheets&&e.sheets.findIndex(e=>e.id===n),o=this._worksheets[n]=new J_({id:n,name:r,orderNo:a===-1?void 0:a,state:i,workbook:this});o.model=t}),this._definedNames.model=e.definedNames,this.views=e.views,this._themes=e.themes,this.media=e.media||[],this.pivotTables=e.pivotTables||e.loadedPivotTables||[],this._passthrough=e.passthrough||{},this._rawDrawings=e.rawDrawings||{},this._defaultFont=e.defaultFont,this.externalLinks=e.externalLinks?[...e.externalLinks]:[],this._writerExternalLinkCache=new Map}};let wb=function(e){return e[e.Legal=5]=`Legal`,e[e.Executive=7]=`Executive`,e[e.A4=9]=`A4`,e[e.A5=11]=`A5`,e[e.B5=13]=`B5`,e[e.Envelope_10=20]=`Envelope_10`,e[e.Envelope_DL=27]=`Envelope_DL`,e[e.Envelope_C5=28]=`Envelope_C5`,e[e.Envelope_B5=34]=`Envelope_B5`,e[e.Envelope_Monarch=37]=`Envelope_Monarch`,e[e.Double_Japan_Postcard_Rotated=82]=`Double_Japan_Postcard_Rotated`,e[e.K16_197x273_mm=119]=`K16_197x273_mm`,e}({});function Tb(e,t){let n=t?.fontSize??48,r=t?.color??{r:128,g:128,b:128},i=Math.max(0,Math.min(100,t?.opacity??40)),a=t?.rotation??-45,o=t?.padding??20,{width:s,height:c,pixels:l}=Ob(e,Math.max(1,Math.round(n/Eb))),u=s+o*2,d=c+o*2,f=new Uint8Array(u*d);for(let e=0;e<c;e++)for(let t=0;t<s;t++)f[(e+o)*u+(t+o)]=l[e*s+t];let{width:p,height:m,pixels:h}=kb(f,u,d,a),g=Math.round(i/100*255),_=new Uint8Array(p*m*4);for(let e=0;e<p*m;e++){let t=h[e];t>0&&(_[e*4]=r.r,_[e*4+1]=r.g,_[e*4+2]=r.b,_[e*4+3]=Math.round(t/255*g))}return Ab(_,p,m)}let Eb=8,Db={32:[0,0,0,0,0,0,0,0],33:[4,4,4,4,4,0,4,0],34:[10,10,10,0,0,0,0,0],35:[10,10,31,10,31,10,10,0],36:[4,15,20,14,5,30,4,0],37:[24,25,2,4,8,19,3,0],38:[12,18,20,8,21,18,13,0],39:[4,4,8,0,0,0,0,0],40:[2,4,8,8,8,4,2,0],41:[8,4,2,2,2,4,8,0],42:[0,4,21,14,21,4,0,0],43:[0,4,4,31,4,4,0,0],44:[0,0,0,0,0,4,4,8],45:[0,0,0,31,0,0,0,0],46:[0,0,0,0,0,0,4,0],47:[0,1,2,4,8,16,0,0],48:[14,17,19,21,25,17,14,0],49:[4,12,4,4,4,4,14,0],50:[14,17,1,2,4,8,31,0],51:[31,2,4,2,1,17,14,0],52:[2,6,10,18,31,2,2,0],53:[31,16,30,1,1,17,14,0],54:[6,8,16,30,17,17,14,0],55:[31,1,2,4,8,8,8,0],56:[14,17,17,14,17,17,14,0],57:[14,17,17,15,1,2,12,0],58:[0,0,4,0,0,4,0,0],59:[0,0,4,0,0,4,4,8],60:[2,4,8,16,8,4,2,0],61:[0,0,31,0,31,0,0,0],62:[8,4,2,1,2,4,8,0],63:[14,17,1,2,4,0,4,0],64:[14,17,23,21,23,16,14,0],65:[14,17,17,31,17,17,17,0],66:[30,17,17,30,17,17,30,0],67:[14,17,16,16,16,17,14,0],68:[28,18,17,17,17,18,28,0],69:[31,16,16,30,16,16,31,0],70:[31,16,16,30,16,16,16,0],71:[14,17,16,23,17,17,15,0],72:[17,17,17,31,17,17,17,0],73:[14,4,4,4,4,4,14,0],74:[7,2,2,2,2,18,12,0],75:[17,18,20,24,20,18,17,0],76:[16,16,16,16,16,16,31,0],77:[17,27,21,21,17,17,17,0],78:[17,25,21,19,17,17,17,0],79:[14,17,17,17,17,17,14,0],80:[30,17,17,30,16,16,16,0],81:[14,17,17,17,21,18,13,0],82:[30,17,17,30,20,18,17,0],83:[15,16,16,14,1,1,30,0],84:[31,4,4,4,4,4,4,0],85:[17,17,17,17,17,17,14,0],86:[17,17,17,17,17,10,4,0],87:[17,17,17,21,21,27,17,0],88:[17,17,10,4,10,17,17,0],89:[17,17,10,4,4,4,4,0],90:[31,1,2,4,8,16,31,0],91:[14,8,8,8,8,8,14,0],92:[0,16,8,4,2,1,0,0],93:[14,2,2,2,2,2,14,0],94:[4,10,17,0,0,0,0,0],95:[0,0,0,0,0,0,31,0],96:[8,4,2,0,0,0,0,0],97:[0,0,14,1,15,17,15,0],98:[16,16,22,25,17,17,30,0],99:[0,0,14,16,16,17,14,0],100:[1,1,13,19,17,17,15,0],101:[0,0,14,17,31,16,14,0],102:[6,9,8,28,8,8,8,0],103:[0,0,15,17,15,1,14,0],104:[16,16,22,25,17,17,17,0],105:[4,0,12,4,4,4,14,0],106:[2,0,6,2,2,18,12,0],107:[16,16,18,20,24,20,18,0],108:[12,4,4,4,4,4,14,0],109:[0,0,26,21,21,17,17,0],110:[0,0,22,25,17,17,17,0],111:[0,0,14,17,17,17,14,0],112:[0,0,30,17,30,16,16,0],113:[0,0,13,19,15,1,1,0],114:[0,0,22,25,16,16,16,0],115:[0,0,14,16,14,1,30,0],116:[8,8,28,8,8,9,6,0],117:[0,0,17,17,17,19,13,0],118:[0,0,17,17,17,10,4,0],119:[0,0,17,17,21,21,10,0],120:[0,0,17,10,4,10,17,0],121:[0,0,17,17,15,1,14,0],122:[0,0,31,2,4,8,31,0],123:[2,4,4,8,4,4,2,0],124:[4,4,4,4,4,4,4,0],125:[8,4,4,2,4,4,8,0],126:[0,0,8,21,2,0,0,0]};function Ob(e,t){let n=6*t,r=8*t,i=e.length*n,a=r,o=new Uint8Array(i*a);for(let r=0;r<e.length;r++){let s=Db[e.charCodeAt(r)]??Db[63],c=r*n;for(let e=0;e<8;e++){let n=s[e];for(let r=0;r<6;r++)if(n&1<<5-r)for(let n=0;n<t;n++)for(let s=0;s<t;s++){let l=c+r*t+s,u=e*t+n;l<i&&u<a&&(o[u*i+l]=255)}}}return{width:i,height:a,pixels:o}}function kb(e,t,n,r){if(r===0)return{width:t,height:n,pixels:e};let i=r*Math.PI/180,a=Math.cos(i),o=Math.sin(i),s=[{x:0,y:0},{x:t,y:0},{x:t,y:n},{x:0,y:n}],c=1/0,l=1/0,u=-1/0,d=-1/0;for(let e of s){let t=e.x*a-e.y*o,n=e.x*o+e.y*a;c=Math.min(c,t),l=Math.min(l,n),u=Math.max(u,t),d=Math.max(d,n)}let f=Math.ceil(u-c),p=Math.ceil(d-l),m=new Uint8Array(f*p),h=a,g=-o;for(let r=0;r<p;r++)for(let i=0;i<f;i++){let a=i+c,o=r+l,s=Math.round(a*h-o*g),u=Math.round(a*g+o*h);s>=0&&s<t&&u>=0&&u<n&&(m[r*f+i]=e[u*t+s])}return{width:f,height:p,pixels:m}}function Ab(e,t,n){let r=1+t*4,i=new Uint8Array(r*n);for(let a=0;a<n;a++)i[a*r]=0,i.set(e.subarray(a*t*4,(a+1)*t*4),a*r+1);let a=Nb(i),o=new Uint8Array([137,80,78,71,13,10,26,10]),s=new Uint8Array(13);Mb(s,0,t),Mb(s,4,n),s[8]=8,s[9]=6,s[10]=0,s[11]=0,s[12]=0;let c=jb(1229472850,s),l=jb(1229209940,a),u=jb(1229278788,new Uint8Array),d=new Uint8Array(o.length+c.length+l.length+u.length),f=0;return d.set(o,f),f+=o.length,d.set(c,f),f+=c.length,d.set(l,f),f+=l.length,d.set(u,f),d}function jb(e,t){let n=new Uint8Array(12+t.length);Mb(n,0,t.length),Mb(n,4,e),n.set(t,8);let r=Ib(n.subarray(4,8+t.length));return Mb(n,8+t.length,r),n}function Mb(e,t,n){e[t]=n>>>24&255,e[t+1]=n>>>16&255,e[t+2]=n>>>8&255,e[t+3]=n&255}function Nb(e){let t=Fi(e,6),n=Pb(e),r=new Uint8Array(2+t.length+4);return r[0]=120,r[1]=1,r.set(t,2),Mb(r,2+t.length,n),r}function Pb(e){let t=1,n=0;for(let r=0;r<e.length;r++)t=(t+e[r])%65521,n=(n+t)%65521;return n<<16|t}let Fb=(()=>{let e=new Uint32Array(256);for(let t=0;t<256;t++){let n=t;for(let e=0;e<8;e++)n=n&1?3988292384^n>>>1:n>>>1;e[t]=n}return e})();function Ib(e){let t=4294967295;for(let n=0;n<e.length;n++)t=Fb[(t^e[n])&255]^t>>>8;return(t^4294967295)>>>0}function Lb(e){return Hb(e)?`(${e.replace(/\\/g,`\\\\`).replace(/\(/g,`\\(`).replace(/\)/g,`\\)`).replace(/\r\n/g,`\\n`).replace(/\r/g,`\\n`).replace(/\n/g,`\\n`)})`:Rb(Ub(e))}function Rb(e){let t=`<`;for(let n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,`0`);return t+`>`}function zb(e){let t=`/`;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);r<33||r>126||r===35||r===40||r===41||r===60||r===62||r===91||r===93||r===123||r===125||r===47?t+=`#`+r.toString(16).padStart(2,`0`):t+=e[n]}return t}function X(e){return Number.isFinite(e)?Number.isInteger(e)?e.toString():(Math.round(e*1e4)/1e4).toString():`0`}function Bb(e){return`[`+e.join(` `)+`]`}function Z(e,t=0){return`${e} ${t} R`}function Vb(e){return`(D:${e.getUTCFullYear().toString().padStart(4,`0`)}${(e.getUTCMonth()+1).toString().padStart(2,`0`)}${e.getUTCDate().toString().padStart(2,`0`)}${e.getUTCHours().toString().padStart(2,`0`)}${e.getUTCMinutes().toString().padStart(2,`0`)}${e.getUTCSeconds().toString().padStart(2,`0`)}Z)`}function Hb(e){for(let t=0;t<e.length;t++)if(e.charCodeAt(t)>127)return!1;return!0}function Ub(e){let t=new Uint8Array(2+e.length*2);t[0]=254,t[1]=255;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t[2+n*2]=r>>8&255,t[3+n*2]=r&255}return t}var Q=class e{constructor(){this.entries=[],this._raw=null}static fromRawString(t){let n=new e;return n._raw=t,n}set(e,t){if(this._raw!==null){let n=RegExp(`(/${e})\\s+\\S+(?:\\s+\\d+\\s+R)?`);return n.test(this._raw)?this._raw=this._raw.replace(n,`/${e} ${t}`):this._raw=this._raw.replace(/>>$/,`\n${zb(e)} ${t}\n>>`),this}let n=this.entries.findIndex(([t])=>t===e);return n>=0?this.entries[n]=[e,t]:this.entries.push([e,t]),this}setIf(e,t,n){return e&&this.set(t,n),this}delete(e){let t=this.entries.findIndex(([t])=>t===e);return t>=0&&this.entries.splice(t,1),this}toString(){if(this._raw!==null)return this._raw;let e=[`<<`];for(let[t,n]of this.entries)e.push(`${zb(t)} ${n}`);return e.push(`>>`),e.join(`
|
|
433
|
-
`)}};let
|
|
434
|
-
`)}toUint8Array(){return new TextEncoder().encode(this.toString())}};function
|
|
431
|
+
`),v}var Yy=class extends n{constructor(...e){super(...e),this.name=`MarkdownError`}},Xy=class extends Yy{constructor(e,t,n){super(`Line ${t}: ${e}`,n),this.name=`MarkdownParseError`,this.line=t}};function Zy(e){return{trim:e.trim!==!1,unescape:e.unescape!==!1,skipEmpty:e.skipEmptyRows!==!1,maxRows:e.maxRows,convertBr:e.convertBr===!0}}function Qy(e){let t=[],n=e.length,r=+(n>0&&e.charCodeAt(0)===124),i=n;if(n>1&&e.charCodeAt(n-1)===124){let t=0,r=n-2;for(;r>=0&&e.charCodeAt(r)===92;)t++,r--;t%2==0&&(i=n-1)}let a=r,o=``,s=!1;for(;r<i;){let n=e.charCodeAt(r);n===92&&r+1<i?(s=!0,r>a&&(o+=e.slice(a,r)),o+=e.slice(r,r+2),r+=2,a=r):n===124?(s?(r>a&&(o+=e.slice(a,r)),t.push(o),o=``,s=!1):t.push(e.slice(a,r)),r++,a=r):r++}return s?(i>a&&(o+=e.slice(a,i)),t.push(o)):t.push(e.slice(a,i)),t}function $y(e){let t=e.trim(),n=t.length;if(n===0)return`none`;let r=t.charCodeAt(0)===58,i=t.charCodeAt(n-1)===58;return r&&i?`center`:r?`left`:i?`right`:`none`}function eb(e){let t=e.length,n=0;for(;n<t;){let t=e.charCodeAt(n);if(t!==32&&t!==9)break;n++}n<t&&e.charCodeAt(n)===58&&n++;let r=n;for(;n<t&&e.charCodeAt(n)===45;)n++;if(n===r)return!1;for(n<t&&e.charCodeAt(n)===58&&n++;n<t;){let t=e.charCodeAt(n);if(t!==32&&t!==9)return!1;n++}return!0}function tb(e){if(e.length===0)return!1;for(let t=0;t<e.length;t++)if(!eb(e[t]))return!1;return!0}function nb(e,t){let n=t.trim?e.trim():e;return t.unescape&&(n=n.replace(Ry,`$1`)),t.convertBr&&(n=n.replace(zy,`
|
|
432
|
+
`)),n}function rb(e,t,n){let r=Array(t);for(let i=0;i<t;i++)r[i]=i<e.length?nb(e[i],n):``;return r}function ib(e){for(let t=0;t<e.length;t++)if(e[t]!==``)return!1;return!0}function ab(e){return e.indexOf(`|`)!==-1}function ob(e){let t=e.length,n=0;for(;n<t;){let t=e.charCodeAt(n);if(t!==32&&t!==9)return t===124;n++}return!1}function sb(e){return e.indexOf(`-`)!==-1}function cb(e,t,n,r){if(t>=n-1)return null;let i=e[t].trim();if(i===``||!ab(i))return null;let a=Qy(i);if(a.length<1)return null;let o=e[t+1].trim();if(o===``||!sb(o))return null;let s=Qy(o);if(!tb(s))return null;let c=a.length,l=Array(c),u=Array(c);for(let e=0;e<c;e++)l[e]=nb(a[e],r),u[e]=e<s.length?$y(s[e]):`none`;let d=ob(i),f=[],p=t+2;for(;p<n;p++){let t=e[p].trim();if(t===``||!ab(t)||d&&!ob(t))break;if(r.maxRows!==void 0&&f.length>=r.maxRows){for(;p<n;){let t=e[p].trim();if(t===``||!ab(t)||d&&!ob(t))break;p++}break}let i=rb(Qy(t),c,r);r.skipEmpty&&ib(i)||f.push(i)}return{result:{headers:l,rows:f,alignments:u},endLine:p}}function lb(e,t={}){let n=Zy(t),r=e.split(Iy),i=r.length;for(let e=0;e<i-1;e++){let t=cb(r,e,i,n);if(t)return t.result}throw new Xy(`No valid Markdown table found in input`,i>0?i:1)}function ub(e,t={}){let n=Zy(t),r=e.split(Iy),i=r.length,a=[],o=0;for(;o<i-1;){let e=cb(r,o,i,n);e?(a.push(e.result),o=e.endLine):o++}return a}let db=[`YYYY-MM-DD[T]HH:mm:ssZ`,`YYYY-MM-DD[T]HH:mm:ss`,`MM-DD-YYYY`,`YYYY-MM-DD`],fb={true:!0,false:!1,"#N/A":{error:`#N/A`},"#REF!":{error:`#REF!`},"#NAME?":{error:`#NAME?`},"#DIV/0!":{error:`#DIV/0!`},"#NULL!":{error:`#NULL!`},"#VALUE!":{error:`#VALUE!`},"#NUM!":{error:`#NUM!`}};function pb(e,t){let n=$e.create(e),r=t?.decimalSeparator??`.`;return function(e){if(e===``)return null;if(typeof e==`string`){let t=ae(e,r);if(!Number.isNaN(t)&&t!==1/0)return t}else{let t=Number(e);if(!Number.isNaN(t)&&t!==1/0)return t}if(typeof e==`string`){let t=n.parse(e);if(t)return t;let r=fb[e];if(r!==void 0)return r}return e}}function mb(e,t){let n=e?tt.create(e,{utc:t}):tt.iso(t);return function(e){if(e==null)return e;if(e instanceof Date)return n.format(e);if(typeof e!=`object`)return e;let t=e;if(typeof t.hyperlink==`string`||typeof t.text==`string`){let e=typeof t.hyperlink==`string`?t.hyperlink:``,n=typeof t.text==`string`?t.text:``;return e||n||``}return`formula`in e||`sharedFormula`in e?e.result??``:`richText`in e&&Array.isArray(e.richText)?e.richText.map(e=>e.text).join(``):`checkbox`in e&&typeof e.checkbox==`boolean`?e.checkbox:`error`in e&&typeof e.error==`string`?e.error:JSON.stringify(e)}}function hb(e,t){let n=e?tt.create(e,{utc:t}):tt.iso(t);return function(e){if(e==null)return``;if(typeof e==`string`)return e;if(typeof e==`number`||typeof e==`bigint`)return String(e);if(typeof e==`boolean`)return e?`true`:`false`;if(e instanceof Date)return n.format(e);if(typeof e==`object`){let t=e;if(t.text||t.hyperlink)return t.hyperlink||t.text||``;if(t.formula||t.result)return t.result==null?``:String(t.result);if(t.richText&&Array.isArray(t.richText))return t.richText.map(e=>e.text).join(``);if(t.error)return t.error;try{return JSON.stringify(e)}catch{return`[object Object]`}}return String(e)}}function gb(e){return typeof e==`string`&&/^https?:\/\//i.test(e)}function _b(e){return typeof File<`u`&&e instanceof File}function vb(e){return typeof Blob<`u`&&e instanceof Blob&&!_b(e)}function yb(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t[Symbol.asyncIterator]==`function`||typeof t.pipe==`function`&&typeof t.on==`function`}function bb(e){return{delimiter:e?.delimiter??`,`,quote:e?.quote,escape:e?.escape,delimitersToGuess:e?.delimitersToGuess,lineEnding:e?.lineEnding,headers:e?.headers,skipEmptyLines:e?.skipEmptyLines,trim:e?.trim,ltrim:e?.ltrim,rtrim:e?.rtrim,comment:e?.comment,maxRows:e?.maxRows,toLine:e?.toLine,skipLines:e?.skipLines,skipRows:e?.skipRows,columnMismatch:e?.columnMismatch,groupColumnsByName:e?.groupColumnsByName,relaxQuotes:e?.relaxQuotes,fastMode:e?.fastMode,info:e?.info,raw:e?.raw,skipRecordsWithError:e?.skipRecordsWithError,skipRecordsWithEmptyValues:e?.skipRecordsWithEmptyValues,onSkip:e?.onSkip}}function xb(e){return{delimiter:e?.delimiter??`,`,quote:e?.quote,escape:e?.escape,lineEnding:e?.lineEnding,quoteColumns:e?.quoteColumns,quoteHeaders:e?.quoteHeaders,decimalSeparator:e?.decimalSeparator??`.`,escapeFormulae:e?.escapeFormulae??!0,writeHeaders:e?.writeHeaders}}var Sb=class{static{this.Writer=hg}static{this.Reader=hf}constructor(e){this._tableNames=new Set,this.category=``,this.company=``,this.created=new Date,this.description=``,this.keywords=``,this.manager=``,this.modified=this.created,this.properties={},this.calcProperties={},this._worksheets=[],this.subject=``,this.title=``,this.views=[],this.media=[],this.pivotTables=[],this.externalLinks=[],this._passthrough={},this._rawDrawings={},this._writerExternalLinkCache=new Map,this._definedNames=new $r(e?.formulaSyntaxProbe)}get defaultFont(){return this._defaultFont}set defaultFont(e){this._defaultFont=e}importSheet(e,t){let n=this.addWorksheet(t??e.name);return n.model={...e.model,id:n.id,name:n.name},n}async protect(e,t){this.protection=await Ph(e,t)}unprotect(){this.protection=void 0}get xlsx(){return this._xlsx||=new Py(this),this._xlsx}async readCsv(e,t){return gb(e)?this._readCsvUrl(e,t):_b(e)?this._readCsvFile(e,t):vb(e)?this._readCsvBlob(e,t):yb(e)?this._readCsvStream(e,t):this._readCsvContent(e,t)}writeCsv(e,t){return e&&typeof e.write==`function`?this._writeCsvStream(e,t):this._writeCsvString(e)}async writeCsvBuffer(e){let t=this._writeCsvString(e);return new TextEncoder().encode(t)}async readCsvFile(e,t){throw new Mr(`readCsvFile()`,`not available in browser. Use readCsv(url) or readCsv(file) instead.`)}async writeCsvFile(e,t){throw new Mr(`writeCsvFile()`,`not available in browser. Use writeCsv() and trigger a download instead.`)}createCsvReadStream(e){let t=this.getWorksheet(e?.sheetName||e?.sheetId),n=e?.map||mb(e?.dateFormat,e?.dateUTC),r=e?.includeEmptyRows!==!1,i=new Sr(xb(e));return setTimeout(t?()=>{let e=1;t.eachRow((t,a)=>{if(r)for(;e++<a-1;)i.write([]);let{values:o}=t;o.shift(),i.write(o.map(n)),e=a}),i.end()}:()=>i.end(),0),i}createCsvWriteStream(e){let t=this.addWorksheet(e?.sheetName),n=e?.dateFormats??db,r=e?.decimalSeparator,i=e?.map||pb(n,{decimalSeparator:r}),a=new br(bb(e)),o=!!e?.headers,s=null;return o&&a.on(`headers`,e=>{s=e,t.addRow(e)}),a.on(`data`,e=>{if(o&&s&&e&&typeof e==`object`&&!Array.isArray(e)){let n=e,r=s.map(e=>n[e]);t.addRow(r.map(i))}else Array.isArray(e)&&t.addRow(e.map(i))}),a}_readCsvContent(e,t){let n;n=typeof e==`string`?e:e instanceof ArrayBuffer||e instanceof Uint8Array?new TextDecoder().decode(e):String(e);let r=this.addWorksheet(t?.sheetName),i=t?.dateFormats??db,a=t?.decimalSeparator,o=t?.map||pb(i,{decimalSeparator:a}),s=tn(n,bb(t));if(Array.isArray(s))for(let e of s)r.addRow(e.map(o));else{s.headers&&r.addRow(s.headers);for(let e of s.rows){let t=s.headers.map(t=>e[t]);r.addRow(t.map(o))}}return r}async _readCsvStream(e,t){let n=this.addWorksheet(t?.sheetName),r=t?.dateFormats??db,i=t?.decimalSeparator,a=t?.map||pb(r,{decimalSeparator:i}),o=new br(bb(t)),s=!!t?.headers,c=null;return new Promise((t,r)=>{s&&o.on(`headers`,e=>{c=e,n.addRow(e)}),o.on(`data`,e=>{if(s&&c&&e&&typeof e==`object`&&!Array.isArray(e)){let t=e,r=c.map(e=>t[e]);n.addRow(r.map(a))}else Array.isArray(e)&&n.addRow(e.map(a))}),gr(e,o).then(()=>t(n)).catch(r)})}async _readCsvUrl(e,t){let n={method:t?.requestBody?`POST`:`GET`,headers:t?.requestHeaders,body:t?.requestBody,credentials:t?.withCredentials?`include`:`same-origin`,signal:t?.signal},r=await fetch(e,n);if(!r.ok)throw new Fr(e,r.status,r.statusText);if(t?.stream&&r.body){let e=Dn(r.body);return this._readCsvStream(e,t)}let i=await r.text();return this._readCsvContent(i,t)}async _readCsvFile(e,t){if((t?.stream||e.size>10*1024*1024)&&typeof e.stream==`function`){let n=Dn(e.stream());return this._readCsvStream(n,t)}return new Promise((n,r)=>{let i=new FileReader,a=t?.encoding??`UTF-8`;t?.onProgress&&(i.onprogress=n=>{t.onProgress(n.loaded,n.total||e.size)}),i.onload=e=>{try{let r=e.target?.result;n(this._readCsvContent(r,t))}catch(e){r(e)}},i.onerror=()=>r(Error(`Failed to read file: ${e.name}`)),i.readAsText(e,a)})}async _readCsvBlob(e,t){let n=await e.text();return this._readCsvContent(n,t)}_writeCsvString(e){let t=this.getWorksheet(e?.sheetName||e?.sheetId);if(!t)return``;let n=e?.map||mb(e?.dateFormat,e?.dateUTC),r=e?.includeEmptyRows!==!1,i=[],a=1;return t.eachRow((e,t)=>{if(r)for(;a++<t-1;)i.push([]);let{values:o}=e;o.shift(),i.push(o.map(n)),a=t}),ke(i,xb(e))}async _writeCsvStream(e,t){let n=this.getWorksheet(t?.sheetName||t?.sheetId);if(!n){e.end();return}let r=t?.map||mb(t?.dateFormat,t?.dateUTC),i=t?.includeEmptyRows!==!1,a=new Sr(xb(t)),o=gr(a,e),s=1;n.eachRow((e,t)=>{if(i)for(;s++<t-1;)a.write([]);let{values:n}=e;n.shift(),a.write(n.map(r)),s=t}),a.end(),await o}_populateMarkdownWorksheet(e,t,n){e.addRow(t.headers),e._markdownAlignments=t.alignments;for(let r of t.rows)n?e.addRow(r.map((e,t)=>n(e,t))):e.addRow(r)}readMarkdown(e,t){let n=lb(e,{trim:t?.trim,unescape:t?.unescape,skipEmptyRows:t?.skipEmptyRows,maxRows:t?.maxRows,convertBr:t?.convertBr}),r=this.addWorksheet(t?.sheetName);return this._populateMarkdownWorksheet(r,n,t?.map),r}readMarkdownAll(e,t){let n=ub(e,{trim:t?.trim,unescape:t?.unescape,skipEmptyRows:t?.skipEmptyRows,maxRows:t?.maxRows,convertBr:t?.convertBr}),r=t?.sheetName,i=t?.map,a=[];for(let e=0;e<n.length;e++){let t=r?e===0?r:`${r}_${e+1}`:void 0,o=this.addWorksheet(t);this._populateMarkdownWorksheet(o,n[e],i),a.push(o)}return a}writeMarkdown(e){let t=this.getWorksheet(e?.sheetName||e?.sheetId);if(!t)return``;let n=e?.dateFormat,r=e?.dateUTC,i=e?.includeEmptyRows!==!1,a=e?.stringify??hb(n,r),o=[],s=1;if(t.eachRow((e,t)=>{if(i)for(;s++<t-1;)o.push([]);let n=Array.from(e.values).slice(1);o.push(n),s=t}),o.length===0)return``;let c=o[0].map(e=>a(e)),l=o.slice(1),u=t._markdownAlignments,d=e?.columns,f;return!d&&u&&(f=c.map((e,t)=>({header:e,alignment:t<u.length?u[t]:void 0}))),Jy(c,l,{columns:f??d,alignment:e?.alignment,padding:e?.padding,trailingNewline:e?.trailingNewline,escapeContent:e?.escapeContent,stringify:a})}writeMarkdownBuffer(e){let t=this.writeMarkdown(e);return new TextEncoder().encode(t)}async readMarkdownFile(e,t){throw new Mr(`readMarkdownFile()`,`not available in browser. Use readMarkdown(string) instead.`)}async readMarkdownAllFile(e,t){throw new Mr(`readMarkdownAllFile()`,`not available in browser. Use readMarkdownAll(string) instead.`)}async writeMarkdownFile(e,t){throw new Mr(`writeMarkdownFile()`,`not available in browser. Use writeMarkdown() and trigger a download instead.`)}static createStreamWriter(e){return new hg(e)}static createStreamReader(e,t){return new hf(e,t)}get nextId(){for(let e=1;e<this._worksheets.length;e++)if(!this._worksheets[e])return e;return this._worksheets.length||1}addWorksheet(e,t){let n=this.nextId,r=this._worksheets.reduce((e,t)=>(t&&t.orderNo)>e?t.orderNo:e,0),i=new K_({...t,id:n,name:e,orderNo:r+1,workbook:this});return this._worksheets[n]=i,i}removeWorksheetEx(e){this._worksheets[e.id]=void 0}removeWorksheet(e){let t=this.getWorksheet(e);t&&t.destroy()}getWorksheet(e){if(e===void 0)return this._worksheets.find(Boolean);if(typeof e==`number`)return this._worksheets[e];if(typeof e==`string`){let t=e.toLowerCase();return this._worksheets.find(e=>e&&e.name.toLowerCase()===t)}}get worksheets(){return this._worksheets.slice(1).sort((e,t)=>e.orderNo-t.orderNo).filter(Boolean)}eachSheet(e){this.worksheets.forEach(t=>{e(t,t.id)})}get definedNames(){return this._definedNames}calculateFormulas(){Fy(this)}registerFunction(e,t,n){this.userFunctions||=new Map,this.userFunctions.set(e.toUpperCase(),{minArity:n?.minArity??0,maxArity:n?.maxArity??255,invoke:t,volatile:n?.volatile??!1})}unregisterFunction(e){return this.userFunctions?.delete(e.toUpperCase())??!1}clearThemes(){this._themes=void 0}addImage(e){let t=this.media.length;return this.media.push({...e,type:`image`}),t}getImage(e){return this.media[Number(e)]}addExternalLink(e){let t={index:this.externalLinks.length+1,target:e.target,targetMode:e.targetMode??`External`,sheetNames:e.sheetNames?[...e.sheetNames]:[],cachedValues:e.cachedValues?{...e.cachedValues}:{}};return this.externalLinks.push(t),t}getExternalLink(e){if(typeof e==`number`)return this.externalLinks[e-1];let t=e.toLowerCase();return this.externalLinks.find(e=>e.target.toLowerCase()===t)}_collectExternalLinksForWrite(){let e=new Set(this.externalLinks.map(e=>e.target.toLowerCase())),t=this.externalLinks.map((e,t)=>({...e,index:t+1,sheetNames:[...e.sheetNames??[]],cachedValues:{...e.cachedValues??{}},targetMode:e.targetMode??`External`}));for(let n of this._writerExternalLinkCache.values())e.has(n.target.toLowerCase())||t.push({...n,index:t.length+1,sheetNames:[...n.sheetNames],cachedValues:{...n.cachedValues}});return t}_recordAutoExternalLink(e,t){let n=e.toLowerCase(),r=this.externalLinks.findIndex(e=>e.target.toLowerCase()===n);if(r!==-1)return r+1;let i=this._writerExternalLinkCache.get(n);i||(i={index:0,target:e,targetMode:`External`,sheetNames:[],cachedValues:{}},this._writerExternalLinkCache.set(n,i)),t&&!i.sheetNames.includes(t)&&i.sheetNames.push(t);let a=this.externalLinks.length,o=0;for(let e of this._writerExternalLinkCache.keys())if(o++,e===n)return a+o;return a+this._writerExternalLinkCache.size}get model(){return{creator:this.creator||`Unknown`,lastModifiedBy:this.lastModifiedBy||`Unknown`,lastPrinted:this.lastPrinted,created:this.created,modified:this.modified,properties:this.properties,protection:this.protection,worksheets:this.worksheets.map(e=>e.model),sheets:this.worksheets.map(e=>e.model).filter(Boolean),definedNames:this._definedNames.model,views:this.views,company:this.company,manager:this.manager,title:this.title,subject:this.subject,keywords:this.keywords,category:this.category,description:this.description,language:this.language,revision:this.revision,contentStatus:this.contentStatus,themes:this._themes,media:this.media,pivotTables:this.pivotTables,calcProperties:this.calcProperties,passthrough:this._passthrough,rawDrawings:this._rawDrawings,defaultFont:this._defaultFont,externalLinks:this.externalLinks}}set model(e){this.creator=e.creator,this.lastModifiedBy=e.lastModifiedBy,this.lastPrinted=e.lastPrinted,this.created=e.created,this.modified=e.modified,this.company=e.company,this.manager=e.manager,this.title=e.title,this.subject=e.subject,this.keywords=e.keywords,this.category=e.category,this.description=e.description,this.language=e.language,this.revision=e.revision,this.contentStatus=e.contentStatus,this.properties=e.properties,this.protection=e.protection,this.calcProperties=e.calcProperties,this._worksheets=[],this._tableNames.clear(),e.worksheets.forEach(t=>{let{id:n,name:r,state:i}=t,a=e.sheets&&e.sheets.findIndex(e=>e.id===n),o=this._worksheets[n]=new K_({id:n,name:r,orderNo:a===-1?void 0:a,state:i,workbook:this});o.model=t}),this._definedNames.model=e.definedNames,this.views=e.views,this._themes=e.themes,this.media=e.media||[],this.pivotTables=e.pivotTables||e.loadedPivotTables||[],this._passthrough=e.passthrough||{},this._rawDrawings=e.rawDrawings||{},this._defaultFont=e.defaultFont,this.externalLinks=e.externalLinks?[...e.externalLinks]:[],this._writerExternalLinkCache=new Map}};let Cb=function(e){return e[e.Legal=5]=`Legal`,e[e.Executive=7]=`Executive`,e[e.A4=9]=`A4`,e[e.A5=11]=`A5`,e[e.B5=13]=`B5`,e[e.Envelope_10=20]=`Envelope_10`,e[e.Envelope_DL=27]=`Envelope_DL`,e[e.Envelope_C5=28]=`Envelope_C5`,e[e.Envelope_B5=34]=`Envelope_B5`,e[e.Envelope_Monarch=37]=`Envelope_Monarch`,e[e.Double_Japan_Postcard_Rotated=82]=`Double_Japan_Postcard_Rotated`,e[e.K16_197x273_mm=119]=`K16_197x273_mm`,e}({});function wb(e,t){let n=t?.fontSize??48,r=t?.color??{r:128,g:128,b:128},i=Math.max(0,Math.min(100,t?.opacity??40)),a=t?.rotation??-45,o=t?.padding??20,{width:s,height:c,pixels:l}=Db(e,Math.max(1,Math.round(n/Tb))),u=s+o*2,d=c+o*2,f=new Uint8Array(u*d);for(let e=0;e<c;e++)for(let t=0;t<s;t++)f[(e+o)*u+(t+o)]=l[e*s+t];let{width:p,height:m,pixels:h}=Ob(f,u,d,a),g=Math.round(i/100*255),_=new Uint8Array(p*m*4);for(let e=0;e<p*m;e++){let t=h[e];t>0&&(_[e*4]=r.r,_[e*4+1]=r.g,_[e*4+2]=r.b,_[e*4+3]=Math.round(t/255*g))}return kb(_,p,m)}let Tb=8,Eb={32:[0,0,0,0,0,0,0,0],33:[4,4,4,4,4,0,4,0],34:[10,10,10,0,0,0,0,0],35:[10,10,31,10,31,10,10,0],36:[4,15,20,14,5,30,4,0],37:[24,25,2,4,8,19,3,0],38:[12,18,20,8,21,18,13,0],39:[4,4,8,0,0,0,0,0],40:[2,4,8,8,8,4,2,0],41:[8,4,2,2,2,4,8,0],42:[0,4,21,14,21,4,0,0],43:[0,4,4,31,4,4,0,0],44:[0,0,0,0,0,4,4,8],45:[0,0,0,31,0,0,0,0],46:[0,0,0,0,0,0,4,0],47:[0,1,2,4,8,16,0,0],48:[14,17,19,21,25,17,14,0],49:[4,12,4,4,4,4,14,0],50:[14,17,1,2,4,8,31,0],51:[31,2,4,2,1,17,14,0],52:[2,6,10,18,31,2,2,0],53:[31,16,30,1,1,17,14,0],54:[6,8,16,30,17,17,14,0],55:[31,1,2,4,8,8,8,0],56:[14,17,17,14,17,17,14,0],57:[14,17,17,15,1,2,12,0],58:[0,0,4,0,0,4,0,0],59:[0,0,4,0,0,4,4,8],60:[2,4,8,16,8,4,2,0],61:[0,0,31,0,31,0,0,0],62:[8,4,2,1,2,4,8,0],63:[14,17,1,2,4,0,4,0],64:[14,17,23,21,23,16,14,0],65:[14,17,17,31,17,17,17,0],66:[30,17,17,30,17,17,30,0],67:[14,17,16,16,16,17,14,0],68:[28,18,17,17,17,18,28,0],69:[31,16,16,30,16,16,31,0],70:[31,16,16,30,16,16,16,0],71:[14,17,16,23,17,17,15,0],72:[17,17,17,31,17,17,17,0],73:[14,4,4,4,4,4,14,0],74:[7,2,2,2,2,18,12,0],75:[17,18,20,24,20,18,17,0],76:[16,16,16,16,16,16,31,0],77:[17,27,21,21,17,17,17,0],78:[17,25,21,19,17,17,17,0],79:[14,17,17,17,17,17,14,0],80:[30,17,17,30,16,16,16,0],81:[14,17,17,17,21,18,13,0],82:[30,17,17,30,20,18,17,0],83:[15,16,16,14,1,1,30,0],84:[31,4,4,4,4,4,4,0],85:[17,17,17,17,17,17,14,0],86:[17,17,17,17,17,10,4,0],87:[17,17,17,21,21,27,17,0],88:[17,17,10,4,10,17,17,0],89:[17,17,10,4,4,4,4,0],90:[31,1,2,4,8,16,31,0],91:[14,8,8,8,8,8,14,0],92:[0,16,8,4,2,1,0,0],93:[14,2,2,2,2,2,14,0],94:[4,10,17,0,0,0,0,0],95:[0,0,0,0,0,0,31,0],96:[8,4,2,0,0,0,0,0],97:[0,0,14,1,15,17,15,0],98:[16,16,22,25,17,17,30,0],99:[0,0,14,16,16,17,14,0],100:[1,1,13,19,17,17,15,0],101:[0,0,14,17,31,16,14,0],102:[6,9,8,28,8,8,8,0],103:[0,0,15,17,15,1,14,0],104:[16,16,22,25,17,17,17,0],105:[4,0,12,4,4,4,14,0],106:[2,0,6,2,2,18,12,0],107:[16,16,18,20,24,20,18,0],108:[12,4,4,4,4,4,14,0],109:[0,0,26,21,21,17,17,0],110:[0,0,22,25,17,17,17,0],111:[0,0,14,17,17,17,14,0],112:[0,0,30,17,30,16,16,0],113:[0,0,13,19,15,1,1,0],114:[0,0,22,25,16,16,16,0],115:[0,0,14,16,14,1,30,0],116:[8,8,28,8,8,9,6,0],117:[0,0,17,17,17,19,13,0],118:[0,0,17,17,17,10,4,0],119:[0,0,17,17,21,21,10,0],120:[0,0,17,10,4,10,17,0],121:[0,0,17,17,15,1,14,0],122:[0,0,31,2,4,8,31,0],123:[2,4,4,8,4,4,2,0],124:[4,4,4,4,4,4,4,0],125:[8,4,4,2,4,4,8,0],126:[0,0,8,21,2,0,0,0]};function Db(e,t){let n=6*t,r=8*t,i=e.length*n,a=r,o=new Uint8Array(i*a);for(let r=0;r<e.length;r++){let s=Eb[e.charCodeAt(r)]??Eb[63],c=r*n;for(let e=0;e<8;e++){let n=s[e];for(let r=0;r<6;r++)if(n&1<<5-r)for(let n=0;n<t;n++)for(let s=0;s<t;s++){let l=c+r*t+s,u=e*t+n;l<i&&u<a&&(o[u*i+l]=255)}}}return{width:i,height:a,pixels:o}}function Ob(e,t,n,r){if(r===0)return{width:t,height:n,pixels:e};let i=r*Math.PI/180,a=Math.cos(i),o=Math.sin(i),s=[{x:0,y:0},{x:t,y:0},{x:t,y:n},{x:0,y:n}],c=1/0,l=1/0,u=-1/0,d=-1/0;for(let e of s){let t=e.x*a-e.y*o,n=e.x*o+e.y*a;c=Math.min(c,t),l=Math.min(l,n),u=Math.max(u,t),d=Math.max(d,n)}let f=Math.ceil(u-c),p=Math.ceil(d-l),m=new Uint8Array(f*p),h=a,g=-o;for(let r=0;r<p;r++)for(let i=0;i<f;i++){let a=i+c,o=r+l,s=Math.round(a*h-o*g),u=Math.round(a*g+o*h);s>=0&&s<t&&u>=0&&u<n&&(m[r*f+i]=e[u*t+s])}return{width:f,height:p,pixels:m}}function kb(e,t,n){let r=1+t*4,i=new Uint8Array(r*n);for(let a=0;a<n;a++)i[a*r]=0,i.set(e.subarray(a*t*4,(a+1)*t*4),a*r+1);let a=Mb(i),o=new Uint8Array([137,80,78,71,13,10,26,10]),s=new Uint8Array(13);jb(s,0,t),jb(s,4,n),s[8]=8,s[9]=6,s[10]=0,s[11]=0,s[12]=0;let c=Ab(1229472850,s),l=Ab(1229209940,a),u=Ab(1229278788,new Uint8Array),d=new Uint8Array(o.length+c.length+l.length+u.length),f=0;return d.set(o,f),f+=o.length,d.set(c,f),f+=c.length,d.set(l,f),f+=l.length,d.set(u,f),d}function Ab(e,t){let n=new Uint8Array(12+t.length);jb(n,0,t.length),jb(n,4,e),n.set(t,8);let r=Fb(n.subarray(4,8+t.length));return jb(n,8+t.length,r),n}function jb(e,t,n){e[t]=n>>>24&255,e[t+1]=n>>>16&255,e[t+2]=n>>>8&255,e[t+3]=n&255}function Mb(e){let t=Fi(e,6),n=Nb(e),r=new Uint8Array(2+t.length+4);return r[0]=120,r[1]=1,r.set(t,2),jb(r,2+t.length,n),r}function Nb(e){let t=1,n=0;for(let r=0;r<e.length;r++)t=(t+e[r])%65521,n=(n+t)%65521;return n<<16|t}let Pb=(()=>{let e=new Uint32Array(256);for(let t=0;t<256;t++){let n=t;for(let e=0;e<8;e++)n=n&1?3988292384^n>>>1:n>>>1;e[t]=n}return e})();function Fb(e){let t=4294967295;for(let n=0;n<e.length;n++)t=Pb[(t^e[n])&255]^t>>>8;return(t^4294967295)>>>0}function Ib(e){return Vb(e)?`(${e.replace(/\\/g,`\\\\`).replace(/\(/g,`\\(`).replace(/\)/g,`\\)`).replace(/\r\n/g,`\\n`).replace(/\r/g,`\\n`).replace(/\n/g,`\\n`)})`:Lb(Hb(e))}function Lb(e){let t=`<`;for(let n=0;n<e.length;n++)t+=e[n].toString(16).padStart(2,`0`);return t+`>`}function Rb(e){let t=`/`;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);r<33||r>126||r===35||r===40||r===41||r===60||r===62||r===91||r===93||r===123||r===125||r===47?t+=`#`+r.toString(16).padStart(2,`0`):t+=e[n]}return t}function X(e){return Number.isFinite(e)?Number.isInteger(e)?e.toString():(Math.round(e*1e4)/1e4).toString():`0`}function zb(e){return`[`+e.join(` `)+`]`}function Z(e,t=0){return`${e} ${t} R`}function Bb(e){return`(D:${e.getUTCFullYear().toString().padStart(4,`0`)}${(e.getUTCMonth()+1).toString().padStart(2,`0`)}${e.getUTCDate().toString().padStart(2,`0`)}${e.getUTCHours().toString().padStart(2,`0`)}${e.getUTCMinutes().toString().padStart(2,`0`)}${e.getUTCSeconds().toString().padStart(2,`0`)}Z)`}function Vb(e){for(let t=0;t<e.length;t++)if(e.charCodeAt(t)>127)return!1;return!0}function Hb(e){let t=new Uint8Array(2+e.length*2);t[0]=254,t[1]=255;for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t[2+n*2]=r>>8&255,t[3+n*2]=r&255}return t}var Q=class e{constructor(){this.entries=[],this._raw=null}static fromRawString(t){let n=new e;return n._raw=t,n}set(e,t){if(this._raw!==null){let n=RegExp(`(/${e})\\s+\\S+(?:\\s+\\d+\\s+R)?`);return n.test(this._raw)?this._raw=this._raw.replace(n,`/${e} ${t}`):this._raw=this._raw.replace(/>>$/,`\n${Rb(e)} ${t}\n>>`),this}let n=this.entries.findIndex(([t])=>t===e);return n>=0?this.entries[n]=[e,t]:this.entries.push([e,t]),this}setIf(e,t,n){return e&&this.set(t,n),this}delete(e){let t=this.entries.findIndex(([t])=>t===e);return t>=0&&this.entries.splice(t,1),this}toString(){if(this._raw!==null)return this._raw;let e=[`<<`];for(let[t,n]of this.entries)e.push(`${Rb(t)} ${n}`);return e.push(`>>`),e.join(`
|
|
433
|
+
`)}};let Ub=1e8;function Wb(e){if(e.length<8||e[0]!==137||e[1]!==80||e[2]!==78||e[3]!==71)throw Error(`Invalid PNG signature`);let t=8,n=0,r=0,i=0,a=0,o=[],s=null,c=null;for(;t+8<=e.length;){let l=new DataView(e.buffer,e.byteOffset,e.byteLength).getUint32(t,!1),u=String.fromCharCode(e[t+4],e[t+5],e[t+6],e[t+7]),d=e.subarray(t+8,t+8+l);switch(t+=8+l+4,u){case`IHDR`:{let e=new DataView(d.buffer,d.byteOffset,d.byteLength);if(n=e.getUint32(0,!1),r=e.getUint32(4,!1),i=d[8],a=d[9],d[12]!==0)throw Error(`Interlaced PNG is not supported`);if(i!==8)throw Error(`Unsupported PNG bit depth: ${i}. Only 8-bit PNGs are supported.`);if(n===0||r===0)throw Error(`Invalid PNG dimensions: ${n}x${r}`);let t=n*r;if(t>Ub)throw Error(`PNG dimensions too large: ${n}x${r} (${t} pixels). Maximum allowed: ${Ub} pixels.`);break}case`PLTE`:s=new Uint8Array(d);break;case`tRNS`:c=new Uint8Array(d);break;case`IDAT`:o.push(d);break;case`IEND`:break}}if(n===0||r===0)throw Error(`PNG missing IHDR chunk`);let l=E(o),u;u=l.length>6&&(l[0]&15)==8?l.subarray(2,l.length-4):l;let d=zf(u),f=qb(a),p=Math.max(1,f*i/8),m=Math.ceil(n*f*i/8);return Jb(Gb(d,n,r,m,p),n,r,a,i,s,c)}function Gb(e,t,n,r,i){let a=new Uint8Array(n*r),o=Math.max(1,Math.floor(i)),s=0;for(let t=0;t<n;t++){let n=e[s++],i=t*r,c=t>0?(t-1)*r:-1;for(let t=0;t<r;t++){let r=e[s++]??0,l=t>=o?a[i+t-o]:0,u=c>=0?a[c+t]:0,d=c>=0&&t>=o?a[c+t-o]:0;switch(n){case 0:a[i+t]=r;break;case 1:a[i+t]=r+l&255;break;case 2:a[i+t]=r+u&255;break;case 3:a[i+t]=r+Math.floor((l+u)/2)&255;break;case 4:a[i+t]=r+Kb(l,u,d)&255;break;default:a[i+t]=r}}}return a}function Kb(e,t,n){let r=e+t-n,i=Math.abs(r-e),a=Math.abs(r-t),o=Math.abs(r-n);return i<=a&&i<=o?e:a<=o?t:n}function qb(e){switch(e){case 0:return 1;case 2:return 3;case 3:return 1;case 4:return 2;case 6:return 4;default:return 3}}function Jb(e,t,n,r,i,a,o){let s=t*n,c=new Uint8Array(s*3),l=null;switch(r){case 2:if(c.set(e.subarray(0,s*3)),o&&o.length>=6){let t=o[1],n=o[3],r=o[5];l=new Uint8Array(s),l.fill(255);for(let i=0;i<s;i++)e[i*3]===t&&e[i*3+1]===n&&e[i*3+2]===r&&(l[i]=0)}break;case 6:l=new Uint8Array(s);for(let t=0;t<s;t++)c[t*3]=e[t*4],c[t*3+1]=e[t*4+1],c[t*3+2]=e[t*4+2],l[t]=e[t*4+3];break;case 0:{let t=-1;o&&o.length>=2&&(t=o[1]),t>=0&&(l=new Uint8Array(s),l.fill(255));for(let n=0;n<s;n++){let r=e[n];c[n*3]=r,c[n*3+1]=r,c[n*3+2]=r,l&&r===t&&(l[n]=0)}break}case 4:l=new Uint8Array(s);for(let t=0;t<s;t++){let n=e[t*2];c[t*3]=n,c[t*3+1]=n,c[t*3+2]=n,l[t]=e[t*2+1]}break;case 3:if(!a)throw Error(`PNG palette color type (3) but missing PLTE chunk`);o&&o.length>0&&(l=new Uint8Array(s));for(let t=0;t<s;t++){let n=e[t];c[t*3]=a[n*3]??0,c[t*3+1]=a[n*3+1]??0,c[t*3+2]=a[n*3+2]??0,l&&(l[t]=n<o.length?o[n]:255)}break;default:throw Error(`Unsupported PNG color type: ${r}`)}if(l){let e=!0;for(let t=0;t<l.length;t++)if(l[t]!==255){e=!1;break}e&&(l=null)}return{width:t,height:n,pixels:c,alpha:l,bitsPerComponent:8}}function Yb(e,t){return t===`png`?Xb(e):Zb(e)}function Xb(e){return e.length>=24&&e[12]===73&&e[13]===72&&e[14]===68&&e[15]===82?{width:e[16]<<24|e[17]<<16|e[18]<<8|e[19],height:e[20]<<24|e[21]<<16|e[22]<<8|e[23]}:{width:1,height:1}}function Zb(e){let t=2;for(;t<e.length-1;){for(;t<e.length&&e[t]===255&&e[t+1]===255;)t++;if(t>=e.length-1||e[t]!==255)break;let n=e[t+1];if(n>=192&&n<=207&&n!==196&&n!==200&&n!==204&&t+8<e.length)return{width:e[t+7]<<8|e[t+8],height:e[t+5]<<8|e[t+6]};if(t+3>=e.length)break;let r=e[t+2]<<8|e[t+3];t+=2+r}return{width:1,height:1}}function Qb(e,t,n){return n===`png`?ex(e,t):$b(e,t)}function $b(e,t){let n=e.allocObject(),r=Zb(t),i=new Q().set(`Type`,`/XObject`).set(`Subtype`,`/Image`).set(`Width`,X(r.width)).set(`Height`,X(r.height)).set(`ColorSpace`,`/DeviceRGB`).set(`BitsPerComponent`,`8`).set(`Filter`,`/DCTDecode`);return e.addStreamObject(n,i,t),n}function ex(e,t){let n=Wb(t),r=e.allocObject(),i=new Q().set(`Type`,`/XObject`).set(`Subtype`,`/Image`).set(`Width`,X(n.width)).set(`Height`,X(n.height)).set(`ColorSpace`,`/DeviceRGB`).set(`BitsPerComponent`,X(n.bitsPerComponent));if(n.alpha){let t=e.allocObject(),r=new Q().set(`Type`,`/XObject`).set(`Subtype`,`/Image`).set(`Width`,X(n.width)).set(`Height`,X(n.height)).set(`ColorSpace`,`/DeviceGray`).set(`BitsPerComponent`,`8`);e.addStreamObject(t,r,n.alpha),i.set(`SMask`,Z(t))}return e.addStreamObject(r,i,n.pixels),r}Ja();function tx(e){return Ba(e)}Ja();function nx(e){let t=ix(e.userPassword??``),n=ix(e.ownerPassword),r=ax(e.permissions),i=Va(32),a=Va(8),o=Va(8),s=Va(8),c=Va(8),l=E([tx(E([t,a])),a,o]),u=tx(E([t,o])),d=new Uint8Array(16),f=La(i,u,d),p=E([tx(E([n,s,l])),s,c]),m=La(i,tx(E([n,c,l])),d),h=new Uint8Array(16);return new DataView(h.buffer).setInt32(0,r,!0),h[4]=255,h[5]=255,h[6]=255,h[7]=255,h[8]=84,h[9]=97,h[10]=100,h[11]=98,{encryptionKey:i,oValue:p,uValue:l,oeValue:m,ueValue:f,permsValue:Ra(h,i),permissions:r,fileId:Va(16)}}function rx(e,t,n,r){let i=Va(16),a=Ia(e,r,i),o=new Uint8Array(16+a.length);return o.set(i),o.set(a,16),o}function ix(e){let t=new TextEncoder().encode(e);return t.length>127?t.subarray(0,127):t}function ax(e){let t=-3904;return e?.print&&(t|=4),e?.modify&&(t|=8),e?.copy&&(t|=16),e?.annotate&&(t|=32),e?.fillForms&&(t|=256),e?.accessibility&&(t|=512),e?.assemble&&(t|=1024),e?.printHighQuality&&(t|=2048),t|0}var ox=class{constructor(){this.parts=[]}save(){return this.parts.push(`q`),this}restore(){return this.parts.push(`Q`),this}setGraphicsState(e){return this.parts.push(`/${e} gs`),this}setStrokeColor(e){return this.parts.push(`${X(e.r)} ${X(e.g)} ${X(e.b)} RG`),this}setFillColor(e){return this.parts.push(`${X(e.r)} ${X(e.g)} ${X(e.b)} rg`),this}setLineWidth(e){return this.parts.push(`${X(e)} w`),this}setDashPattern(e,t=0){let n=e.map(X).join(` `);return this.parts.push(`[${n}] ${X(t)} d`),this}setLineCap(e){return this.parts.push(`${e} J`),this}setLineJoin(e){return this.parts.push(`${e} j`),this}moveTo(e,t){return this.parts.push(`${X(e)} ${X(t)} m`),this}lineTo(e,t){return this.parts.push(`${X(e)} ${X(t)} l`),this}rect(e,t,n,r){return this.parts.push(`${X(e)} ${X(t)} ${X(n)} ${X(r)} re`),this}curveTo(e,t,n,r,i,a){return this.parts.push(`${X(e)} ${X(t)} ${X(n)} ${X(r)} ${X(i)} ${X(a)} c`),this}curveToV(e,t,n,r){return this.parts.push(`${X(e)} ${X(t)} ${X(n)} ${X(r)} v`),this}curveToY(e,t,n,r){return this.parts.push(`${X(e)} ${X(t)} ${X(n)} ${X(r)} y`),this}stroke(){return this.parts.push(`S`),this}fill(){return this.parts.push(`f`),this}fillAndStroke(){return this.parts.push(`B`),this}closePath(){return this.parts.push(`h`),this}endPath(){return this.parts.push(`n`),this}clip(){return this.parts.push(`W`),this}beginText(){return this.parts.push(`BT`),this}endText(){return this.parts.push(`ET`),this}setFont(e,t){return this.parts.push(`/${e} ${X(t)} Tf`),this}setTextMatrix(e,t,n,r,i,a){return this.parts.push(`${X(e)} ${X(t)} ${X(n)} ${X(r)} ${X(i)} ${X(a)} Tm`),this}moveText(e,t){return this.parts.push(`${X(e)} ${X(t)} Td`),this}setTextLeading(e){return this.parts.push(`${X(e)} TL`),this}showText(e){return cx(e)?this.showTextWinAnsi(e):(this.parts.push(`(${sx(e)}) Tj`),this)}showTextWinAnsi(e){let t=`<`;for(let n=0;n<e.length;n++){let r=e.codePointAt(n);r>65535&&n++;let i=ux(r);t+=i.toString(16).padStart(2,`0`)}return t+=`>`,this.parts.push(`${t} Tj`),this}showTextHex(e){return this.parts.push(`${e} Tj`),this}nextLineShowText(e){if(cx(e)){let t=`<`;for(let n=0;n<e.length;n++){let r=e.codePointAt(n);r>65535&&n++;let i=ux(r);t+=i.toString(16).padStart(2,`0`)}return t+=`>`,this.parts.push(`${t} '`),this}return this.parts.push(`(${sx(e)}) '`),this}setTextRise(e){return this.parts.push(`${X(e)} Ts`),this}setCharacterSpacing(e){return this.parts.push(`${X(e)} Tc`),this}setWordSpacing(e){return this.parts.push(`${X(e)} Tw`),this}drawImage(e,t,n,r,i){return this.save().concat(r,0,0,i,t,n).doXObject(e).restore()}concat(e,t,n,r,i,a){return this.parts.push(`${X(e)} ${X(t)} ${X(n)} ${X(r)} ${X(i)} ${X(a)} cm`),this}doXObject(e){return this.parts.push(`/${e} Do`),this}fillRect(e,t,n,r,i){return this.save().setFillColor(i).rect(e,t,n,r).fill().restore()}drawLine(e,t,n,r,i,a,o=[]){return this.save().setStrokeColor(i).setLineWidth(a),o.length>0&&this.setDashPattern(o),this.moveTo(e,t).lineTo(n,r).stroke().restore()}ellipse(e,t,n,r){let i=.5522847,a=i*n,o=i*r;return this.moveTo(e+n,t),this.curveTo(e+n,t+o,e+a,t+r,e,t+r),this.curveTo(e-a,t+r,e-n,t+o,e-n,t),this.curveTo(e-n,t-o,e-a,t-r,e,t-r),this.curveTo(e+a,t-r,e+n,t-o,e+n,t),this}circle(e,t,n){return this.ellipse(e,t,n,n)}roundedRect(e,t,n,r,i){let a=.5522847*i;return this.moveTo(e+i,t),this.lineTo(e+n-i,t),this.curveTo(e+n-i+a,t,e+n,t+i-a,e+n,t+i),this.lineTo(e+n,t+r-i),this.curveTo(e+n,t+r-i+a,e+n-i+a,t+r,e+n-i,t+r),this.lineTo(e+i,t+r),this.curveTo(e+i-a,t+r,e,t+r-i+a,e,t+r-i),this.lineTo(e,t+i),this.curveTo(e,t+i-a,e+i-a,t,e+i,t),this}toString(){return this.parts.join(`
|
|
434
|
+
`)}toUint8Array(){return new TextEncoder().encode(this.toString())}};function sx(e){return e.replace(/\\/g,`\\\\`).replace(/\(/g,`\\(`).replace(/\)/g,`\\)`).replace(/\r\n/g,`\\n`).replace(/\r/g,`\\n`).replace(/\n/g,`\\n`)}function cx(e){for(let t=0;t<e.length;t++)if(e.charCodeAt(t)>127)return!0;return!1}let lx=new Map([[8364,128],[8218,130],[402,131],[8222,132],[8230,133],[8224,134],[8225,135],[710,136],[8240,137],[352,138],[8249,139],[338,140],[381,142],[8216,145],[8217,146],[8220,147],[8221,148],[8226,149],[8211,150],[8212,151],[732,152],[8482,153],[353,154],[8250,155],[339,156],[382,158],[376,159]]);function ux(e){if(e<128||e>=160&&e<=255)return e;let t=lx.get(e);return t===void 0?63:t}var dx=class extends n{constructor(...e){super(...e),this.name=`PdfError`}},fx=class extends dx{constructor(...e){super(...e),this.name=`PdfRenderError`}},px=class extends dx{constructor(...e){super(...e),this.name=`PdfFontError`}},mx=class extends dx{constructor(...e){super(...e),this.name=`PdfStructureError`}};function hx(e){return e instanceof dx}var gx=class{constructor(){this.nextObjectNumber=1,this.objects=[],this.catalogRef=0,this.infoRef=0,this.encryption=null,this.pdfVersion=`2.0`}setVersion(e){this.pdfVersion=e}setEncryption(e){this.encryption=e}allocObject(){return this.nextObjectNumber++}addObject(e,t){this.objects.push({objectNumber:e,offset:0,content:typeof t==`string`?t:t.toString()})}addStreamObject(e,t,n,r){let i=n instanceof Uint8Array?n:n.toUint8Array();if((r?.compress??!0)&&i.length>256&&!t.toString().includes(`/Filter`)){let e=Vf(i,{level:6});e.length<i.length&&(t.set(`Filter`,`/FlateDecode`),i=e)}t.set(`Length`,X(i.length)),this.objects.push({objectNumber:e,offset:0,content:t.toString(),streamData:i})}getObjects(){return this.objects.map(e=>{let t={objectNumber:e.objectNumber,content:e.content};return`streamData`in e&&(t.streamData=e.streamData),t})}setCatalog(e){this.catalogRef=e}addInfoDict(e){let t=this.allocObject(),n=new Q;return e.title&&n.set(`Title`,Ib(e.title)),e.author&&n.set(`Author`,Ib(e.author)),e.subject&&n.set(`Subject`,Ib(e.subject)),e.creator&&n.set(`Creator`,Ib(e.creator)),n.set(`Producer`,Ib(`excelts`)),n.set(`CreationDate`,Bb(new Date)),this.addObject(t,n),this.infoRef=t,t}addPage(e){let t=this.allocObject(),n=`[0 0 ${X(e.width)} ${X(e.height)}]`,r=typeof e.contentsRef==`string`?e.contentsRef:Z(e.contentsRef),i=new Q().set(`Type`,`/Page`).set(`Parent`,Z(e.parentRef)).set(`MediaBox`,n).set(`Contents`,r).set(`Resources`,Z(e.resourcesRef));return e.annotRefs&&e.annotRefs.length>0&&i.set(`Annots`,`[`+e.annotRefs.map(e=>Z(e)).join(` `)+`]`),this.addObject(t,i),t}addCatalog(e,t){let n=typeof t==`number`?{outlinesRef:t}:t??{},r=this.allocObject(),i=new Q().set(`Type`,`/Catalog`).set(`Pages`,Z(e));if(n.outlinesRef&&(i.set(`Outlines`,Z(n.outlinesRef)),i.set(`PageMode`,`/UseOutlines`)),n.extraEntries)for(let[e,t]of n.extraEntries)i.set(e,t);return this.addObject(r,i),this.setCatalog(r),r}build(){if(this.catalogRef===0)throw new mx(`No catalog object set. Call addCatalog() before build().`);let e=new TextEncoder,t=[],n=0,r=`%PDF-${this.pdfVersion}\n`,i=e.encode(r);t.push(i),n+=i.length;let a=new Uint8Array([37,226,227,207,211,10]);t.push(a),n+=a.length,this.objects.sort((e,t)=>e.objectNumber-t.objectNumber);let o=this.encryption?this.allocObject():0;for(let r of this.objects){r.offset=n;let i=`${r.objectNumber} 0 obj\n`,a=e.encode(i);t.push(a),n+=a.length;let s=r.content;this.encryption&&r.objectNumber!==o&&(s=_x(s,r.objectNumber,0,this.encryption.encryptionKey));let c=null;`streamData`in r&&r.streamData&&(c=r.streamData,this.encryption&&r.objectNumber!==o&&(c=rx(c,r.objectNumber,0,this.encryption.encryptionKey),s=s.replace(/\/Length \d+/,`/Length ${c.length}`)));let l=e.encode(s+`
|
|
435
435
|
`);if(t.push(l),n+=l.length,c){let r=e.encode(`stream
|
|
436
436
|
`);t.push(r),n+=r.length,t.push(c),n+=c.length;let i=e.encode(`
|
|
437
437
|
endstream
|
|
438
438
|
`);t.push(i),n+=i.length}let u=e.encode(`endobj
|
|
439
|
-
`);t.push(u),n+=u.length}if(this.encryption){let r=new Q().set(`Filter`,`/Standard`).set(`V`,`5`).set(`R`,`5`).set(`Length`,`256`).set(`P`,String(this.encryption.permissions)).set(`O`,
|
|
439
|
+
`);t.push(u),n+=u.length}if(this.encryption){let r=new Q().set(`Filter`,`/Standard`).set(`V`,`5`).set(`R`,`5`).set(`Length`,`256`).set(`P`,String(this.encryption.permissions)).set(`O`,Lb(this.encryption.oValue)).set(`U`,Lb(this.encryption.uValue)).set(`OE`,Lb(this.encryption.oeValue)).set(`UE`,Lb(this.encryption.ueValue)).set(`Perms`,Lb(this.encryption.permsValue)).set(`EncryptMetadata`,`true`).set(`CF`,`<< /StdCF << /Type /CryptFilter /CFM /AESV3 /AuthEvent /DocOpen /Length 32 >> >>`).set(`StmF`,`/StdCF`).set(`StrF`,`/StdCF`).toString(),i={objectNumber:o,offset:n,content:r};this.objects.push(i);let a=e.encode(`${o} 0 obj\n`);t.push(a),n+=a.length;let s=e.encode(r+`
|
|
440
440
|
`);t.push(s),n+=s.length;let c=e.encode(`endobj
|
|
441
441
|
`);t.push(c),n+=c.length}let s=n,c=new Map;for(let e of this.objects)c.set(e.objectNumber,e);let l=this.objects.reduce((e,t)=>Math.max(e,t.objectNumber),0),u=[];u.push(`xref`),u.push(`0 ${l+1}`);let d=[0];for(let e=1;e<=l;e++)c.has(e)||d.push(e);let f=new Map;for(let e=0;e<d.length-1;e++)f.set(d[e],d[e+1]);f.set(d[d.length-1],0);let p=(f.get(0)??0).toString().padStart(10,`0`);u.push(`${p} 65535 f `);for(let e=1;e<=l;e++){let t=c.get(e);if(t){let e=t.offset.toString().padStart(10,`0`);u.push(`${e} 00000 n `)}else{let t=(f.get(e)??0).toString().padStart(10,`0`);u.push(`${t} 65535 f `)}}let m=u.join(`
|
|
442
442
|
`)+`
|
|
443
443
|
`,h=e.encode(m);t.push(h);let g=`trailer
|
|
444
444
|
<<
|
|
445
|
-
`;g+=`/Size ${l+1}\n`,g+=`/Root ${Z(this.catalogRef)}\n`,this.infoRef>0&&(g+=`/Info ${Z(this.infoRef)}\n`),o>0&&(g+=`/Encrypt ${Z(o)}\n`,g+=`/ID [${
|
|
445
|
+
`;g+=`/Size ${l+1}\n`,g+=`/Root ${Z(this.catalogRef)}\n`,this.infoRef>0&&(g+=`/Info ${Z(this.infoRef)}\n`),o>0&&(g+=`/Encrypt ${Z(o)}\n`,g+=`/ID [${Lb(this.encryption.fileId)} ${Lb(this.encryption.fileId)}]\n`),g+=`>>
|
|
446
446
|
`,g+=`startxref
|
|
447
447
|
`,g+=`${s}\n`,g+=`%%EOF
|
|
448
|
-
`;let _=e.encode(g);return t.push(_),E(t)}};function
|
|
449
|
-
`;break;case`r`:t+=`\r`;break;case`t`:t+=` `;break;case`(`:t+=`(`;break;case`)`:t+=`)`;break;case`\\`:t+=`\\`;break;default:t+=i;break}n++}return t}function
|
|
450
|
-
`);return new TextEncoder().encode(i)}function
|
|
451
|
-
`)}getRegisteredFonts(){let e=[];for(let[t,n]of this.type1Map)e.push({resourceName:n,pdfFontName:t});return e}};function Wx(e,t){let n=`<`;for(let r=0;r<e.length;r++){let i=e.codePointAt(r);i>65535&&r++;let a=t.get(i)??0;n+=a.toString(16).toUpperCase().padStart(4,`0`)}return n+=`>`,n}function Gx(e,t,n){let r=0;for(let n=0;n<e.length;n++){let i=e.codePointAt(n);i>65535&&n++;let a=t.cmap.get(i)??0;r+=t.advanceWidths[a]??0}return r/t.unitsPerEm*n}let Kx=65536,qx=2e6;var Jx=class e{constructor(e,t=0){this.data=e,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.offset=t}u8(){let e=this.view.getUint8(this.offset);return this.offset+=1,e}u16(){let e=this.view.getUint16(this.offset,!1);return this.offset+=2,e}i16(){let e=this.view.getInt16(this.offset,!1);return this.offset+=2,e}u32(){let e=this.view.getUint32(this.offset,!1);return this.offset+=4,e}i32(){let e=this.view.getInt32(this.offset,!1);return this.offset+=4,e}fixed(){return this.i32()/65536}bytes(e){let t=this.data.subarray(this.offset,this.offset+e);return this.offset+=e,t}tag(){return String.fromCharCode(this.u8(),this.u8(),this.u8(),this.u8())}skip(e){this.offset+=e}at(t){return new e(this.data,t)}u16At(e){return this.view.getUint16(e,!1)}u32At(e){return this.view.getUint32(e,!1)}i16At(e){return this.view.getInt16(e,!1)}};function Yx(e){let t=new Jx(e),n=t.u32();if(n!==65536&&n!==1953658213)throw n===1330926671?new mx(`CFF-flavored OpenType (.otf) is not supported. Use a TrueType (.ttf) font.`):new mx(`Invalid TrueType font: bad sfVersion 0x${n.toString(16)}`);let r=t.u16();t.skip(6);let i=new Map;for(let e=0;e<r;e++){let e=t.tag();t.skip(4);let n=t.u32(),r=t.u32();i.set(e,{offset:n,length:r})}for(let e of[`head`,`hhea`,`maxp`,`cmap`,`hmtx`])if(!i.has(e))throw new mx(`Missing required table '${e}' in TrueType font`);let a=Xx(t,i.get(`head`)),o=Zx(t,i.get(`hhea`)),s=Qx(t,i.get(`maxp`)),c=i.has(`OS/2`)?$x(t,i.get(`OS/2`)):null,l=i.has(`post`)?eS(t,i.get(`post`)):null,u=i.has(`name`)?tS(t,i.get(`name`)):null,d=nS(t,i.get(`cmap`)),f=aS(t,i.get(`hmtx`),o.numHMetrics,s.numGlyphs),p=i.has(`loca`)&&i.has(`glyf`)?oS(t,i.get(`loca`),s.numGlyphs,a.indexToLocFormat):new Uint32Array(s.numGlyphs+1),m=c?.sTypoAscender??o.ascent,h=c?.sTypoDescender??o.descent,g=c?.sCapHeight??Math.round(m*.7),_=0;l?.isFixedPitch&&(_|=1),a.macStyle&2&&(_|=64),_|=32;let v=c?.usWeightClass??400,y=Math.round(50+(v/65)**2),b=u?.familyName??`Unknown`;return{data:e,familyName:b,postScriptName:u?.postScriptName??b.replace(/\s+/g,``),unitsPerEm:a.unitsPerEm,ascent:m,descent:h,capHeight:g,italicAngle:l?.italicAngle??0,flags:_,bbox:[a.xMin,a.yMin,a.xMax,a.yMax],stemV:y,numGlyphs:s.numGlyphs,indexToLocFormat:a.indexToLocFormat,numHMetrics:o.numHMetrics,tables:i,cmap:d,advanceWidths:f,glyphOffsets:p}}function Xx(e,t){let n=e.at(t.offset);n.skip(4),n.skip(4),n.skip(4),n.skip(4),n.skip(2);let r=n.u16();n.skip(16);let i=n.i16(),a=n.i16(),o=n.i16(),s=n.i16(),c=n.u16();return n.skip(2),n.skip(2),{unitsPerEm:r,xMin:i,yMin:a,xMax:o,yMax:s,macStyle:c,indexToLocFormat:n.i16()}}function Zx(e,t){let n=e.at(t.offset);n.skip(4);let r=n.i16(),i=n.i16(),a=n.i16();return n.skip(2),n.skip(22),{ascent:r,descent:i,lineGap:a,numHMetrics:n.u16()}}function Qx(e,t){let n=e.at(t.offset);return n.skip(4),{numGlyphs:n.u16()}}function $x(e,t){let n=e.at(t.offset),r=n.u16();n.skip(2);let i=n.u16();n.skip(2),n.skip(2),n.skip(22),n.skip(10),n.skip(16),n.skip(4),n.skip(2),n.skip(2),n.skip(2);let a=n.i16(),o=n.i16();n.skip(2),n.skip(2),n.skip(2);let s;return r>=2?(n.skip(8),n.skip(2),s=n.i16()):s=Math.round(a*.7),{usWeightClass:i,sTypoAscender:a,sTypoDescender:o,sCapHeight:s}}function eS(e,t){let n=e.at(t.offset);n.skip(4);let r=n.fixed();return n.skip(2),n.skip(2),{italicAngle:r,isFixedPitch:n.u32()!==0}}function tS(e,t){let n=t.offset,r=e.at(n);r.skip(2);let i=r.u16(),a=n+r.u16(),o=``,s=``;for(let t=0;t<i;t++){let t=r.u16(),n=r.u16();r.skip(2);let i=r.u16(),c=r.u16(),l=r.u16();if(i!==1&&i!==6)continue;let u=e.at(a+l).bytes(c),d;if(t===3||t===0)d=sS(u);else if(t===1&&n===0)d=cS(u);else continue;i===1&&!o&&(o=d),i===6&&!s&&(s=d)}return{familyName:o||`Unknown`,postScriptName:s||o||`Unknown`}}function nS(e,t){let n=t.offset,r=e.at(n);r.skip(2);let i=r.u16(),a=-1,o=-1;for(let t=0;t<i;t++){let t=r.u16(),i=r.u16(),s=r.u32();if(!(t===0||t===3&&(i===1||i===10)))continue;let c=e.u16At(n+s);c===12&&o<0&&(o=n+s),c===4&&a<0&&(a=n+s)}if(o>=0)return iS(e,o);if(a>=0)return rS(e,a);throw new mx(`No usable Unicode cmap subtable found in font`)}function rS(e,t){let n=e.at(t);n.skip(2),n.skip(2),n.skip(2);let r=n.u16()/2;n.skip(6);let i=[];for(let e=0;e<r;e++)i.push(n.u16());n.skip(2);let a=[];for(let e=0;e<r;e++)a.push(n.u16());let o=[];for(let e=0;e<r;e++)o.push(n.i16());let s=n.offset,c=[];for(let e=0;e<r;e++)c.push(n.u16());let l=new Map;for(let t=0;t<r;t++){let n=a[t],r=i[t],u=o[t],d=c[t];if(n===65535)break;for(let i=n;i<=r;i++){let r;if(d===0)r=i+u&65535;else{let a=s+t*2+d+(i-n)*2;r=e.u16At(a),r!==0&&(r=r+u&65535)}r!==0&&l.set(i,r)}}return l}function iS(e,t){let n=e.at(t);n.skip(2),n.skip(2),n.skip(4),n.skip(4);let r=n.u32();if(r>Kx)throw new mx(`cmap format 12 has ${r} groups, exceeding limit of ${Kx}. The font file may be malicious or corrupted.`);let i=new Map,a=0;for(let e=0;e<r;e++){let e=n.u32(),t=n.u32(),r=n.u32(),o=t>=e?t-e+1:0;if(a+=o,a>qx)throw new mx(`cmap format 12 maps too many codepoints (>${qx}). The font file may be malicious or corrupted.`);for(let n=e;n<=t;n++)i.set(n,r+(n-e))}return i}function aS(e,t,n,r){let i=e.at(t.offset),a=new Uint16Array(r),o=0;for(let e=0;e<n;e++)o=i.u16(),i.skip(2),a[e]=o;for(let e=n;e<r;e++)a[e]=o;return a}function oS(e,t,n,r){let i=e.at(t.offset),a=new Uint32Array(n+1);if(r===0)for(let e=0;e<=n;e++)a[e]=i.u16()*2;else for(let e=0;e<=n;e++)a[e]=i.u32();return a}function sS(e){let t=[];for(let n=0;n+1<e.length;n+=2){let r=e[n]<<8|e[n+1];if(r>=55296&&r<=56319&&n+3<e.length){let i=e[n+2]<<8|e[n+3];if(i>=56320&&i<=57343){t.push(String.fromCodePoint((r-55296<<10)+(i-56320)+65536)),n+=2;continue}}t.push(String.fromCharCode(r))}return t.join(``)}function cS(e){let t=[];for(let n=0;n<e.length;n++)t.push(String.fromCharCode(e[n]));return t.join(``)}let $={Empty:0,String:1,Number:2,Boolean:3,Date:4,RichText:5,Error:6,Formula:7,Hyperlink:8,Merge:9},lS={A3:{width:841.89,height:1190.55},A4:{width:595.28,height:841.89},A5:{width:419.53,height:595.28},LETTER:{width:612,height:792},LEGAL:{width:612,height:1008},TABLOID:{width:792,height:1224}},uS=1.2,dS=72/96;function fS(e,t=1){return{left:(3+e.borderInsets.left)*t,right:(3+e.borderInsets.right)*t,top:(2+e.borderInsets.top)*t,bottom:(2+e.borderInsets.bottom)*t}}function pS(e,t,n,r){let i=new sx,a=new Set;t.showGridLines&&mS(i,e,t);for(let t of e.cells)t.fillColor&&hS(i,t,a);for(let t of e.cells)vS(i,t);let o=e.scaleFactor;for(let t of e.cells)t.text&&bS(i,t,n,a,o);return t.showSheetNames&&NS(i,e,t,n),t.showPageNumbers&&PS(i,e,t,n,r),{stream:i,alphaValues:a}}function mS(e,t,n){if(t.columnWidths.length===0||t.rowHeights.length===0)return;let r=n.gridLineColor;e.save(),e.setStrokeColor(r),e.setLineWidth(.25);let i=t.rowYPositions[0],a=t.rowYPositions.length-1,o=t.rowYPositions[a]-t.rowHeights[a];for(let n=0;n<=t.columnWidths.length;n++){let r=n<t.columnWidths.length?t.columnOffsets[n]:t.columnOffsets[n-1]+t.columnWidths[n-1];e.moveTo(r,i),e.lineTo(r,o)}let s=t.columnOffsets[0],c=t.columnOffsets.length-1,l=t.columnOffsets[c]+t.columnWidths[c];for(let n=0;n<=t.rowYPositions.length;n++){let r=n<t.rowYPositions.length?t.rowYPositions[n]:t.rowYPositions[n-1]-t.rowHeights[n-1];e.moveTo(s,r),e.lineTo(l,r)}e.stroke(),e.restore()}function hS(e,t,n){if(!t.fillColor)return;let r=t.fillColor.a;if(r!==void 0&&r<1){let i=OS(r);n.add(r),e.save(),e.setGraphicsState(i),e.fillRect(t.rect.x,t.rect.y,t.rect.width,t.rect.height,t.fillColor),e.restore()}else e.fillRect(t.rect.x,t.rect.y,t.rect.width,t.rect.height,t.fillColor)}function gS(e){return typeof e==`number`?e<=90?e:-(e-90):0}function _S(e,t){let n=gS(e);if(n===0)return 0;let r=Math.abs(n);if(r<.01||r>89.99)return 0;let i=r*Math.PI/180,a=t*Math.cos(i)/Math.sin(i);return n<0?-a:a}function vS(e,t){let{rect:n,borders:r,textRotation:i}=t,{x:a,y:o,width:s,height:c}=n,l=_S(i,c);r.top&&yS(e,r.top,a+l,o+c,a+s+l,o+c,!0),r.bottom&&yS(e,r.bottom,a,o,a+s,o,!0),r.left&&yS(e,r.left,a,o,a+l,o+c,!1),r.right&&yS(e,r.right,a+s,o,a+s+l,o+c,!1)}function yS(e,t,n,r,i,a,o){if(t.isDouble){let s=.4,c=Math.min(t.width,.25);o?(e.drawLine(n,r+s,i,a+s,t.color,c,t.dashPattern),e.drawLine(n,r-s,i,a-s,t.color,c,t.dashPattern)):(e.drawLine(n+s,r,i+s,a,t.color,c,t.dashPattern),e.drawLine(n-s,r,i-s,a,t.color,c,t.dashPattern))}else e.drawLine(n,r,i,a,t.color,t.width,t.dashPattern)}function bS(e,t,n,r,i=1){let{rect:a,text:o,fontSize:s,horizontalAlign:c,verticalAlign:l,wrapText:u}=t;if(!o&&!t.richText)return;let d=fS(t,i),f=a.width-d.left-d.right,p=a.height-d.top-d.bottom;if(f<=0||p<=0)return;let m=t.indent*10*i,h=a.width+(t.textOverflowWidth||0);e.save();let g=_S(t.textRotation,a.height);g===0?e.rect(a.x,a.y,h,a.height):(e.moveTo(a.x,a.y),e.lineTo(a.x+h,a.y),e.lineTo(a.x+h+g,a.y+a.height),e.lineTo(a.x+g,a.y+a.height),e.closePath()),e.clip(),e.endPath();let _=t.textColor.a;if(_!==void 0&&_<1&&(r.add(_),e.setGraphicsState(OS(_))),t.textRotation===`vertical`){DS(e,t,n,m,i),e.restore();return}if(typeof t.textRotation==`number`&&t.textRotation!==0){SS(e,t,n,m,i),e.restore();return}if(t.richText&&t.richText.length>0){xS(e,t,n,m,i),e.restore();return}let v=n.hasEmbeddedFont()?n.getEmbeddedResourceName():n.ensureFont(Hx(t.fontFamily,t.bold,t.italic)),y=e=>n.measureText(e,v,s),b=f-m,x=u?MS(o,y,b):o.split(/\r?\n/),S=s*uS,C=n.getFontAscent(v,s),ee=kS(l,a,x.length*S,C,d.top,d.bottom);e.setFillColor(t.textColor),e.beginText(),e.setFont(v,s);for(let t=0;t<x.length;t++){let r=x[t],i=ee-t*S,o=AS(c,a,y(r),m,d.left,d.right);e.setTextMatrix(1,0,0,1,o,i);let s=n.encodeText(r,v);s?e.showTextHex(s):e.showText(r)}e.endText(),jS(e,t,x,S,ee,y,v,n,m,d),e.restore()}function xS(e,t,n,r,i=1){let{rect:a,horizontalAlign:o,verticalAlign:s,wrapText:c}=t,l=t.richText,u=fS(t,i),d=t.fontSize;for(let e of l)e.fontSize>d&&(d=e.fontSize);let f=d,p=f*uS,m=n.hasEmbeddedFont(),h=e=>m?n.getEmbeddedResourceName():n.ensureFont(Hx(e.fontFamily,e.bold,e.italic));if(c){let t=a.width-u.left-u.right-r;if(t<=0)return;let i=l.map(e=>e.text).join(``),c=h(l[0]),d=MS(i,e=>n.measureText(e,c,f),t),m=[];for(let e=0;e<l.length;e++)for(let t=0;t<l[e].text.length;t++)m.push(e);let g=h(l[0]),_=n.getFontAscent(g,f),v=kS(s,a,d.length*p,_,u.top,u.bottom),y=0;for(let t=0;t<d.length;t++){let s=v-t*p,c=d[t].length,f=[],g=y;for(let e=0;e<c;e++){let n=m[y+e]??m.length-1,r=f[f.length-1];r&&r.run===l[n]?r.text+=d[t][e]:f.push({run:l[n],text:d[t][e],resourceName:h(l[n])})}for(y+=c;y<m.length&&y<g+c+1;){let e=t+1<d.length?i.indexOf(d[t+1],y):i.length;if(e>y){y=e;break}break}let _=0;for(let e of f)_+=n.measureText(e.text,e.resourceName,e.run.fontSize);let b=AS(o,a,_,r,u.left,u.right);for(let t of f){let{run:r,text:i,resourceName:a}=t,o=n.measureText(i,a,r.fontSize);e.setFillColor(r.textColor),e.beginText(),e.setFont(a,r.fontSize),e.setTextMatrix(1,0,0,1,b,s);let c=n.encodeText(i,a);if(c?e.showTextHex(c):e.showText(i),e.endText(),r.strike){let t=s+n.getFontDescent(a,r.fontSize)+r.fontSize*.3;e.drawLine(b,t,b+o,t,r.textColor,.5)}if(r.underline){let t=s+n.getFontDescent(a,r.fontSize)*.5;e.drawLine(b,t,b+o,t,r.textColor,.5)}b+=o}}return}let g=0,_=[];for(let e of l){let t=h(e),r=n.measureText(e.text,t,e.fontSize);_.push({resourceName:t,width:r}),g+=r}let v=_[0]?.resourceName??`F1`,y=kS(s,a,p,n.getFontAscent(v,f),u.top,u.bottom),b=AS(o,a,g,r,u.left,u.right);for(let t=0;t<l.length;t++){let r=l[t],{resourceName:i}=_[t];e.setFillColor(r.textColor),e.beginText(),e.setFont(i,r.fontSize),e.setTextMatrix(1,0,0,1,b,y);let a=n.encodeText(r.text,i);a?e.showTextHex(a):e.showText(r.text),e.endText();let o=_[t].width;if(r.strike){let t=y+n.getFontDescent(i,r.fontSize)+r.fontSize*.3;e.drawLine(b,t,b+o,t,r.textColor,.5)}if(r.underline){let t=y+n.getFontDescent(i,r.fontSize)*.5;e.drawLine(b,t,b+o,t,r.textColor,.5)}b+=_[t].width}}function SS(e,t,n,r,i=1){let{rect:a,wrapText:o}=t,{fontSize:s}=t,c=fS(t,i),l=n.hasEmbeddedFont()?n.getEmbeddedResourceName():n.ensureFont(Hx(t.fontFamily,t.bold,t.italic)),u=gS(t.textRotation),d=u*Math.PI/180,f=Math.cos(d),p=Math.sin(d),m=Math.abs(p),h=Math.abs(f),g=a.width-c.left-c.right,_=a.height-c.top-c.bottom,v;v=m>.01&&h>.01?Math.min(_/m,g/h):m>.01?_/m:g;let y=e=>n.measureText(e,l,s),b;b=o?MS(t.text,y,Math.max(v-1,1)):t.text.split(/\r?\n/);let x=s*uS,S=b.length*x;if(!o){let e=0;for(let t of b){let n=y(t);n>e&&(e=n)}let t=e*h+S*m,n=e*m+S*h;if(g>0&&_>0&&(t>g||n>_)){let e=Math.min(g/t,_/n);e<1&&(s*=e)}}let C=s*uS,ee=n.getFontAscent(l,s),te=Math.abs(u-90)<.01,ne=Math.abs(u+90)<.01;e.setFillColor(t.textColor),te?CS(e,t,b,n,l,s,C,ee,c):ne?wS(e,t,b,n,l,s,C,ee,c):TS(e,t,b,n,l,s,C,ee,f,p,r)}function CS(e,t,n,r,i,a,o,s,c){let{rect:l,horizontalAlign:u,verticalAlign:d}=t,f=n.length*o,p;p=u===`center`?l.x+l.width/2-f/2+s:u===`right`?l.x+l.width-c.right-f+s:l.x+c.left+s;for(let t=0;t<n.length;t++){let s=n[t],u=r.measureText(s,i,a),f=p+t*o,m;m=d===`top`?l.y+l.height-c.top-u:d===`middle`?l.y+(l.height-u)/2:l.y+c.bottom,m=Math.max(m,l.y+c.bottom),e.beginText(),e.setFont(i,a),e.setTextMatrix(0,1,-1,0,f,m),ES(e,r,s,i),e.endText()}}function wS(e,t,n,r,i,a,o,s,c){let{rect:l,horizontalAlign:u,verticalAlign:d}=t,f=n.length*o,p;p=u===`center`?l.x+l.width/2+f/2-o+s:u===`right`?l.x+l.width-c.right-o+s:l.x+c.left+f-o+s;for(let t=0;t<n.length;t++){let s=n[t],u=r.measureText(s,i,a),f=p-t*o,m;m=d===`top`?l.y+l.height-c.top:d===`middle`?l.y+(l.height+u)/2:l.y+c.bottom+u,m=Math.min(m,l.y+l.height-c.top),e.beginText(),e.setFont(i,a),e.setTextMatrix(0,-1,1,0,f,m),ES(e,r,s,i),e.endText()}}function TS(e,t,n,r,i,a,o,s,c,l,u){let{rect:d,horizontalAlign:f,verticalAlign:p}=t,m=fS(t),h=0;for(let e of n){let t=r.measureText(e,i,a);t>h&&(h=t)}let g=n.length*o,_=Math.abs(l),v=Math.abs(c),y=h*v+g*_,b=h*_+g*v,x=_S(t.textRotation,d.height)/2,S=f===`left`?u/2:f===`right`?-u/2:0,C;C=p===`top`?d.y+d.height-m.top-b/2:p===`bottom`?d.y+m.bottom+b/2:d.y+d.height/2;let ee=d.height>0?(C-d.y)/d.height:.5,te=x*2*ee,ne;ne=f===`right`?d.x+d.width-m.right-y/2+S+te:f===`left`?d.x+m.left+y/2+S+te:d.x+d.width/2+S+te;for(let t=0;t<n.length;t++){let u=n[t],d=r.measureText(u,i,a),f=(t-(n.length-1)/2)*o,p=-d/2,m=-s/2-f,h=ne+p*c-m*l,g=C+p*l+m*c;e.beginText(),e.setFont(i,a),e.setTextMatrix(c,l,-l,c,h,g),ES(e,r,u,i),e.endText()}}function ES(e,t,n,r){let i=t.encodeText(n,r);i?e.showTextHex(i):e.showText(n)}function DS(e,t,n,r,i=1){let{rect:a,text:o,fontSize:s,horizontalAlign:c,verticalAlign:l}=t,u=fS(t,i),d=n.hasEmbeddedFont()?n.getEmbeddedResourceName():n.ensureFont(Hx(t.fontFamily,t.bold,t.italic)),f=s*1.3,p=n.getFontAscent(d,s),m=o.split(/\r?\n/),h=s*1.4,g=m.length*h,_;_=c===`center`?a.x+a.width/2-g/2+h/2:c===`right`?a.x+a.width-u.right-g+h/2:a.x+u.left+h/2,e.setFillColor(t.textColor);for(let t=0;t<m.length;t++){let r=m[t],i=_+t*h,o=r.length*f,c;c=l===`middle`?a.y+a.height/2+o/2-p:l===`bottom`?a.y+u.bottom+o-p:a.y+a.height-u.top-p;for(let t of r){if(c<a.y+u.bottom)break;let r=n.measureText(t,d,s);e.beginText(),e.setFont(d,s),e.setTextMatrix(1,0,0,1,i-r/2,c),ES(e,n,t,d),e.endText(),c-=f}}}function OS(e){return`GS${Math.round(e*1e4)}`}function kS(e,t,n,r,i=2,a=i){let o;switch(e){case`top`:o=t.y+t.height-i-r;break;case`middle`:o=t.y+t.height/2+n/2-r;break;default:o=t.y+a+(n-r);break}let s=t.y+t.height-i-r;o>s&&(o=s);let c=t.y+a;return o<c&&(o=c),o}function AS(e,t,n,r=0,i=3,a=i){let o;switch(e){case`center`:o=t.x+(t.width-n)/2;break;case`right`:o=t.x+t.width-a-n;break;default:o=t.x+i+r;break}let s=t.x+i;return o<s&&(o=s),o}function jS(e,t,n,r,i,a,o,s,c,l){if(t.strike){let u=i+s.getFontDescent(o,t.fontSize)+t.fontSize*.3;for(let i=0;i<n.length;i++){let o=u-i*r,s=a(n[i]),d=AS(t.horizontalAlign,t.rect,s,c,l?.left,l?.right);e.drawLine(d,o,d+s,o,t.textColor,.5)}}if(t.underline){let u=s.getFontDescent(o,t.fontSize)*.5;for(let o=0;o<n.length;o++){let s=i-o*r+u,d=a(n[o]),f=AS(t.horizontalAlign,t.rect,d,c,l?.left,l?.right);e.drawLine(f,s,f+d,s,t.textColor,.5)}}}function MS(e,t,n){if(!e)return[``];let r=e.split(/\r?\n/),i=[];for(let e of r){if(!e){i.push(``);continue}let r=e.split(/\s+/),a=``;for(let e of r){if(!a){a=e;continue}let r=a+` `+e;t(r)<=n?a=r:(i.push(a),a=e)}a&&i.push(a)}return i.length>0?i:[``]}function NS(e,t,n,r){let i=t.sheetName,a=r.hasEmbeddedFont()?r.getEmbeddedResourceName():r.ensureFont(Hx(n.defaultFontFamily,!0,!1)),o=r.measureText(i,a,10),s=(t.width-o)/2,c=t.height-n.margins.top+5;e.save(),e.setFillColor({r:.3,g:.3,b:.3}),e.beginText(),e.setFont(a,10),e.setTextMatrix(1,0,0,1,s,c);let l=r.encodeText(i,a);l?e.showTextHex(l):e.showText(i),e.endText(),e.restore()}function PS(e,t,n,r,i){let a=`Page ${t.pageNumber} of ${i}`,o=r.ensureFont(Hx(n.defaultFontFamily,!1,!1)),s=r.measureText(a,o,9),c=(t.width-s)/2,l=Math.max(5,n.margins.bottom-15);e.save(),e.setFillColor({r:.5,g:.5,b:.5}),e.beginText(),e.setFont(o,9),e.setTextMatrix(1,0,0,1,c,l),e.showText(a),e.endText(),e.restore()}let FS={fontSize:54,color:{r:.75,g:.75,b:.75},opacity:.15,rotation:-45,fontFamily:`Helvetica`,bold:!1,italic:!1,repeatSpacingX:200,repeatSpacingY:200},IS={opacity:.15,rotation:0,scale:.5,repeatSpacingX:200,repeatSpacingY:200};function LS(e,t,n,r){return n.type===`text`?VS(e,t,RS(n),r):HS(e,t,zS(n))}function RS(e){return{...e,opacity:BS(e.opacity??FS.opacity),fontSize:Math.max(1,e.fontSize??FS.fontSize),repeatSpacingX:Math.max(10,e.repeatSpacingX??FS.repeatSpacingX),repeatSpacingY:Math.max(10,e.repeatSpacingY??FS.repeatSpacingY)}}function zS(e){return{...e,opacity:BS(e.opacity??IS.opacity),scale:Math.max(.01,e.scale??IS.scale),width:e.width===void 0?void 0:Math.max(1,e.width),height:e.height===void 0?void 0:Math.max(1,e.height),repeatSpacingX:Math.max(10,e.repeatSpacingX??IS.repeatSpacingX),repeatSpacingY:Math.max(10,e.repeatSpacingY??IS.repeatSpacingY)}}function BS(e){return Math.max(0,Math.min(1,e))}function VS(e,t,n,r){let i=n.fontSize??FS.fontSize,a=n.color??FS.color,o=n.opacity??FS.opacity,s=n.rotation??FS.rotation,c=n.fontFamily??FS.fontFamily,l=n.bold??FS.bold,u=n.italic??FS.italic,d=r.hasEmbeddedFont()?r.getEmbeddedResourceName():r.ensureFont(Hx(c,l,u)),f=r.measureText(n.text,d,i),p=i*.7,m=s*Math.PI/180,h=Math.cos(m),g=Math.sin(m),_=o<1,v=_?OS(o):``,y=(t,o)=>{let s=f/2,c=p/2,l=t-s*h+c*g,u=o-s*g-c*h;e.save(),_&&e.setGraphicsState(v),e.setFillColor(a),e.beginText(),e.setFont(d,i),e.setTextMatrix(h,g,-g,h,l,u);let m=r.encodeText(n.text,d);m?e.showTextHex(m):e.showText(n.text),e.endText(),e.restore()};if(n.repeat){let e=n.repeatSpacingX??FS.repeatSpacingX,r=n.repeatSpacingY??FS.repeatSpacingY;WS(t.width,t.height,e,r,y)}else{let{cx:e,cy:r}=US(t,n.position);y(e,r)}return{alphaValues:_?[o]:[],imageXObjects:[]}}function HS(e,t,n){let r=n.opacity??IS.opacity,i=n.rotation??IS.rotation,a=n.scale??IS.scale,o=r<1,s,c;if(n.width!==void 0&&n.height!==void 0)s=n.width,c=n.height;else{let e=Xb(n.data,n.format),r=Math.min(t.width,t.height)*a,i=Math.max(e.width,e.height),o=i>0?r/i:1;s=e.width*o,c=e.height*o}let l=i*Math.PI/180,u=Math.cos(l),d=Math.sin(l),f=o?OS(r):``,p=`WmImg`,m=(t,n)=>{e.save(),o&&e.setGraphicsState(f);let r=s/2,i=c/2,a=t-r*u+i*d,l=n-r*d-i*u;e.concat(s*u,s*d,-c*d,c*u,a,l),e.doXObject(p),e.restore()};if(n.repeat){let e=n.repeatSpacingX??IS.repeatSpacingX,r=n.repeatSpacingY??IS.repeatSpacingY;WS(t.width,t.height,e,r,m)}else{let{cx:e,cy:r}=US(t,n.position);m(e,r)}return{alphaValues:o?[r]:[],imageXObjects:[{name:p,data:n.data,format:n.format}]}}function US(e,t){return!t||t===`center`?{cx:e.width/2,cy:e.height/2}:{cx:t.x,cy:t.y}}function WS(e,t,n,r,i){let a=Math.max(e,t)*.5,o=0;for(let s=-a;s<t+a;s+=r){let t=o%2==1?n/2:0;for(let r=-a;r<e+a;r+=n)i(r+t,s);o++}}function GS(e){if(!e||e.length<6)return null;let t,n,r,i;if(e.length>=8?(t=parseInt(e.substring(0,2),16),n=parseInt(e.substring(2,4),16),r=parseInt(e.substring(4,6),16),i=parseInt(e.substring(6,8),16)):(t=255,n=parseInt(e.substring(0,2),16),r=parseInt(e.substring(2,4),16),i=parseInt(e.substring(4,6),16)),isNaN(n)||isNaN(r)||isNaN(i))return null;let a=t/255;return{r:n/255,g:r/255,b:i/255,...a<1?{a}:{}}}function KS(e){if(!e)return null;if(e.argb)return GS(e.argb);if(e.theme!==void 0){let t=qS(e.theme);if(!t)return null;let n=e.tint;return n!==void 0&&n!==0?JS(t,n):t}return null}function qS(e){let t=[{r:1,g:1,b:1},{r:0,g:0,b:0},{r:.906,g:.902,b:.902},{r:.267,g:.329,b:.416},{r:.267,g:.447,b:.769},{r:.929,g:.49,b:.192},{r:.647,g:.647,b:.647},{r:1,g:.753,b:0},{r:.357,g:.608,b:.835},{r:.439,g:.678,b:.278}];return e>=0&&e<t.length?t[e]:null}function JS(e,t){let n=e=>t<0?e*(1+t):e+(1-e)*t;return{r:Math.max(0,Math.min(1,n(e.r))),g:Math.max(0,Math.min(1,n(e.g))),b:Math.max(0,Math.min(1,n(e.b)))}}let YS={black:{r:0,g:0,b:0},white:{r:1,g:1,b:1},gridLine:{r:.816,g:.816,b:.816}};function XS(e,t,n){return{fontFamily:e?.name??t,fontSize:e?.size??n,bold:e?.bold??!1,italic:e?.italic??!1,strike:e?.strike??!1,underline:!!(e?.underline&&e.underline!==`none`),textColor:KS(e?.color)??YS.black}}function ZS(e){if(!e)return null;if(e.type===`pattern`){if(e.pattern===`solid`&&e.fgColor)return KS(e.fgColor);if(e.pattern===`none`)return null;if(e.fgColor)return KS(e.fgColor)}return e.type===`gradient`&&e.stops&&e.stops.length>0?KS(e.stops[0].color):null}function QS(e){switch(e){case`thin`:return .25;case`medium`:return .5;case`thick`:return 1;case`double`:return .25;case`hair`:return .1;case`dotted`:return .25;case`dashed`:return .25;case`dashDot`:return .25;case`dashDotDot`:return .25;case`slantDashDot`:return .25;case`mediumDashed`:return .5;case`mediumDashDot`:return .5;case`mediumDashDotDot`:return .5;default:return .25}}function $S(e){switch(e){case`dotted`:return[1,1];case`dashed`:case`mediumDashed`:return[3,2];case`dashDot`:case`mediumDashDot`:return[3,1,1,1];case`dashDotDot`:case`mediumDashDotDot`:return[3,1,1,1,1,1];case`slantDashDot`:return[4,2,1,2];case`hair`:return[.5,.5];default:return[]}}function eC(e){return!e||!e.style?null:{width:QS(e.style),color:KS(e.color)??YS.black,dashPattern:$S(e.style),isDouble:e.style===`double`}}function tC(e){return e?{top:eC(e.top),right:eC(e.right),bottom:eC(e.bottom),left:eC(e.left)}:{top:null,right:null,bottom:null,left:null}}function nC(e){if(!e?.horizontal)return`left`;switch(e.horizontal){case`center`:case`centerContinuous`:return`center`;case`right`:return`right`;default:return`left`}}function rC(e){if(!e?.vertical)return`bottom`;switch(e.vertical){case`top`:return`top`;case`middle`:return`middle`;default:return`bottom`}}let iC=8.43;function aC(e,t,n){if(e?.horizontal&&e.horizontal!==`general`)return nC(e);if(t!==void 0)switch(t){case $.Number:case $.Date:return`right`;case $.Boolean:case $.Error:return`center`;case $.Formula:return typeof n==`number`||n instanceof Date?`right`:typeof n==`boolean`?`center`:`left`;default:return`left`}return`left`}async function oC(e,t,n){let r=sC(e,t,n);if(!r)return[lC(e,t)];let i=[],a=r.rowPages.length*r.colGroups.length;for(let o of r.rowPages)for(let s of r.colGroups)i.push(cC(r,o,s,i.length,e,t,n)),i.length<a&&await nl();return i.length>0&&e.images&&wC(e.images,i,r.scaleFactor),i}function sC(e,t,n){let{margins:r}=t,i=t.pageSize.width,a=t.pageSize.height;t.orientation===`landscape`&&([i,a]=[a,i]);let o=i-r.left-r.right,s=a-r.top-r.bottom,c=t.showSheetNames?20:0,l=t.showPageNumbers?20:0,u=s-c-l,d=fC(e),{columnWidths:f,visibleCols:p}=pC(e,d);if(p.length===0)return null;let m=f.reduce((e,t)=>e+t,0),h=t.scale;if(t.fitToPage&&m>0){let e=o/m;e<1&&(h*=e)}let g=f.map(e=>e*h),{rowHeights:_,visibleRows:v}=mC(e,h,d,n,t),y=vC(e),b=yC(_,u,typeof t.repeatRows==`number`?t.repeatRows:0,_C(e,v)),x=bC(g,o,e,p);return{pageWidth:i,pageHeight:a,contentWidth:o,headerHeight:c,scaleFactor:h,scaledColumnWidths:g,rowHeights:_,visibleRows:v,visibleCols:p,mergeMap:y,rowPages:b,colGroups:x,margins:r}}function cC(e,t,n,r,i,a,o){let{scaledColumnWidths:s,rowHeights:c,visibleRows:l,visibleCols:u,mergeMap:d,pageWidth:f,pageHeight:p,contentWidth:m,headerHeight:h,scaleFactor:g,margins:_}=e,v=[],y=n.map(e=>s[e]),b=y.reduce((e,t)=>e+t,0),x=[],S=_.left;b<m&&(S=_.left+(m-b)/2);for(let e of y)x.push(S),S+=e;let C=[],ee=[],te=p-_.top-h;for(let e of t){let t=c[e]??15*g;C.push(te),ee.push(t),te-=t}let ne=new Map;for(let e=0;e<t.length;e++){let r=t[e],s=l[r];for(let t=0;t<n.length;t++){let c=u[n[t]],f=`${s}:${c}`,p=d.get(f);if(p&&!p.isMaster)continue;let m=i.rows.get(s)?.cells.get(c),h=1,_=1;if(p&&p.isMaster){let e=c+p.colSpan-1;h=0;for(let r=t;r<n.length&&u[n[r]]<=e;r++)h++;let i=s+p.rowSpan-1;_=0;for(let e=r;e<l.length&&l[e]<=i;e++)_++;h=Math.max(h,1),_=Math.max(_,1)}let b=x[t],S=C[e],te=0;for(let e=0;e<h&&t+e<y.length;e++)te+=y[t+e];let re=0;for(let t=0;t<_&&e+t<ee.length;t++)re+=ee[e+t];let ie=S-re;v.push(xC(m,b,ie,te,re,h,_,a,o,g));let ae=v[v.length-1];p?.isMaster&&TC(ae,p,s,c,i),ne.set(`${e}:${t}`,ae)}}return CC(ne,t.length,n.length),EC(ne,t,n,l,u,y,d,o),{pageNumber:r+1,options:a,cells:v,width:f,height:p,sheetName:i.name,sheetCols:n.map(e=>u[e]),columnOffsets:x,columnWidths:y,sheetRows:t.map(e=>l[e]),rowYPositions:C,rowHeights:ee,images:[],scaleFactor:g}}function lC(e,t){let n=t.pageSize.width,r=t.pageSize.height;return t.orientation===`landscape`&&([n,r]=[r,n]),{pageNumber:1,options:t,cells:[],width:n,height:r,sheetName:e.name,sheetCols:[],columnOffsets:[],columnWidths:[],sheetRows:[],rowYPositions:[],rowHeights:[],images:[],scaleFactor:1}}function uC(e){let t=e.replace(/\$/g,``).toUpperCase(),n=0,r=0;for(;r<t.length&&t.charCodeAt(r)>=65&&t.charCodeAt(r)<=90;)n=n*26+(t.charCodeAt(r)-64),r++;let i=parseInt(t.substring(r),10);return{c:n-1,r:i-1}}function dC(e){let t=e.indexOf(`:`);if(t===-1){let t=uC(e);return{s:t,e:{...t}}}return{s:uC(e.slice(0,t)),e:uC(e.slice(t+1))}}function fC(e){let t=e.pageSetup?.printArea;if(!t||typeof t!=`string`)return null;let n=t.split(`&&`)[0].trim();if(!n)return null;try{let e=dC(n);return{startRow:e.s.r+1,endRow:e.e.r+1,startCol:e.s.c+1,endCol:e.e.c+1}}catch{return null}}function pC(e,t){let n=e.bounds;if(!(n.top>0&&n.left>0))return{columnWidths:[],visibleCols:[]};let r=t?.startCol??n.left,i=t?.endCol??n.right,a=[],o=[];for(let t=r;t<=i;t++){let n=e.columns.get(t);if(n?.hidden)continue;let r=(n?.width??iC)*7+5,i=Math.max(r*dS,3);a.push(i),o.push(t)}return{columnWidths:a,visibleCols:o}}function mC(e,t,n,r,i){let a=e.bounds;if(a.top<=0)return{rowHeights:[],visibleRows:[]};let o=n?.startRow??a.top,s=n?.endRow??a.bottom,c=[],l=[];for(let n=o;n<=s;n++){let a=e.rows.get(n);if(a?.hidden)continue;let o;if(a?.height&&a.customHeight)o=a.height;else if(a?.height)o=a.height;else if(o=15,a)for(let n of a.cells.values()){let a=hC(n),s=gC(n,a,t,e,r,i),c=a*uS,l=n.style?.border?.top?.style?QS(n.style.border.top.style)/2:0,u=n.style?.border?.bottom?.style?QS(n.style.border.bottom.style)/2:0,d=a+(s-1)*c+(2+l+u)*2;d>o&&(o=d)}c.push(o*t),l.push(n)}return{rowHeights:c,visibleRows:l}}function hC(e){let t=e.style?.font?.size??11;if(e.type===$.RichText){let n=e.value;if(n&&typeof n==`object`&&`richText`in n){let e=n.richText;for(let n of e){let e=n.font?.size??t;e>t&&(t=e)}}}return t}function gC(e,t,n,r,i,a){let o=typeof e.text==`string`?e.text:String(e.text??``),s=Math.max(1,(o.match(/\n/g)??[]).length+1);if(!e.style?.alignment?.wrapText||o.length===0)return s;let c=((r.columns.get(e.col)?.width??iC)*7+5)*dS*n,l=e.style.alignment.indent??0,u=e.style?.border?.left?.style?QS(e.style.border.left.style)/2:0,d=e.style?.border?.right?.style?QS(e.style.border.right.style)/2:0,f=3+u+(3+d)+l*10,p=Math.max(c-f,1),m=t*n,h=XS(e.style.font,a.defaultFontFamily,a.defaultFontSize),g=Hx(h.fontFamily,h.bold,h.italic),_=i.hasEmbeddedFont()?i.getEmbeddedResourceName():i.ensureFont(g),v=MS(o,e=>i.measureText(e,_,m),p);return Math.max(s,v.length)}function _C(e,t){let n=new Set,r=e.rowBreaks??[];if(r.length===0)return n;let i=new Map;for(let e=0;e<t.length;e++)i.set(t[e],e);for(let e of r){let t=i.get(e);t!==void 0&&n.add(t+1)}return n}function vC(e){let t=new Map,n=e.merges;if(!n||n.length===0)return t;for(let e of n){let n=dC(e),r=n.s.r+1,i=n.s.c+1,a=n.e.r+1,o=n.e.c+1,s=a-r+1,c=o-i+1;for(let e=r;e<=a;e++)for(let n=i;n<=o;n++)t.set(`${e}:${n}`,{isMaster:e===r&&n===i,rowSpan:s,colSpan:c})}return t}function yC(e,t,n,r){if(e.length===0)return[[]];let i=[],a=[],o=0,s=!0,c=0,l=()=>{c=0;for(let r=0;r<n&&r<e.length&&!(o+e[r]>t&&a.length>0);r++)a.push(r),o+=e[r],c++};for(let u=0;u<e.length;u++){let d=e[u],f=t;for(;;){let e=r.has(u)&&a.length>0;if((e||o+d>f)&&a.length>0){if(!e&&!s&&a.length>0&&a.length===c){a=[],o=0,c=0;continue}i.push(a),a=[],o=0,c=0,s=!1,l();continue}if(!s&&u<n&&a.includes(u))break;a.push(u),o+=d;break}}return a.length>0&&i.push(a),i.length>0?i:[[]]}function bC(e,t,n,r){if(e.length===0)return[[]];let i=new Set,a=n.colBreaks??[];if(a.length>0){let e=new Map;for(let t=0;t<r.length;t++)e.set(r[t],t);for(let t of a){let n=e.get(t);n!==void 0&&i.add(n+1)}}let o=[],s=[],c=0;for(let n=0;n<e.length;n++){let r=e[n];(i.has(n)&&s.length>0||c+r>t+.01)&&s.length>0&&(o.push(s),s=[],c=0),s.push(n),c+=r}return s.length>0&&o.push(s),o.length>0?o:[Array.from({length:e.length},(e,t)=>t)]}function xC(e,t,n,r,i,a,o,s,c,l){let u=e?.text??``,d=e?.style??{},f=XS(d.font,s.defaultFontFamily,s.defaultFontSize),p=f.fontSize*l;if(c.hasEmbeddedFont())c.trackText(u);else{let e=Hx(f.fontFamily,f.bold,f.italic);c.ensureFont(e)}let m=DC(e,s,c,l),h=tC(d.border);return{text:u,rect:{x:t,y:n,width:r,height:i},fontFamily:f.fontFamily,fontSize:p,bold:f.bold,italic:f.italic,strike:f.strike,underline:f.underline,textColor:f.textColor,fillColor:ZS(d.fill),horizontalAlign:aC(d.alignment,e?.type,e?.result),verticalAlign:rC(d.alignment),wrapText:d.alignment?.wrapText??!1,borders:h,borderInsets:{top:(h.top?.width??0)/2,right:(h.right?.width??0)/2,bottom:(h.bottom?.width??0)/2,left:(h.left?.width??0)/2},colSpan:a,rowSpan:o,hyperlink:e?.hyperlink??null,richText:m,indent:d.alignment?.indent??0,textRotation:d.alignment?.textRotation===255?`vertical`:d.alignment?.textRotation??0,textOverflowWidth:0}}function SC(e){let t=e.width*1e3;e.dashPattern.length===0&&(t+=100),e.isDouble&&(t+=50);let n=e.color.r+e.color.g+e.color.b;return t+=(3-n)*10,t}function CC(e,t,n){for(let r=0;r<t;r++)for(let t=0;t<n;t++){let n=e.get(`${r}:${t}`);if(n){if(n.borders.right){let i=e.get(`${r}:${t+1}`);if(i?.borders.left){let e=SC(n.borders.right);SC(i.borders.left)>e?(n.borderInsets.right=i.borders.left.width/2,n.borders.right=null):(i.borderInsets.left=n.borders.right.width/2,i.borders.left=null)}}if(n.borders.bottom){let i=e.get(`${r+1}:${t}`);if(i?.borders.top){let e=SC(n.borders.bottom);SC(i.borders.top)>e?(n.borderInsets.bottom=i.borders.top.width/2,n.borders.bottom=null):(i.borderInsets.top=n.borders.bottom.width/2,i.borders.top=null)}}}}}function wC(e,t,n){for(let r of e){let e=r.range.tl,i=(e.nativeCol??e.col??0)+1,a=(e.nativeRow??e.row??0)+1,o=t.find(e=>e.sheetCols.includes(i)&&e.sheetRows.includes(a));if(!o)continue;let s=o.sheetCols.indexOf(i),c=o.sheetRows.indexOf(a),l=o.columnOffsets[s]??o.options.margins.left,u=o.rowYPositions[c]??o.height-o.options.margins.top-(o.options.showSheetNames?20:0),d=((e.nativeColOff??0)/12700||0)*n,f=((e.nativeRowOff??0)/12700||0)*n,p=l+d,m=u-f,h=100,g=100;if(r.range.ext)h=(r.range.ext.width??100)*.75*n,g=(r.range.ext.height??100)*.75*n;else if(r.range.br){let e=r.range.br,t=(e.nativeCol??e.col??0)+1,i=(e.nativeRow??e.row??0)+1,a=o.sheetCols.indexOf(t),l=o.sheetRows.indexOf(i),u=a>=0?o.columnOffsets[a]:p+(o.columnWidths[s]??100),d=l>=0?o.rowYPositions[l]:m-(o.rowHeights[c]??100),f=((e.nativeColOff??0)/12700||0)*n,_=((e.nativeRowOff??0)/12700||0)*n,v=u+f,y=d-_;h=v-p,g=m-y}o.images.push({data:r.data,format:r.format,rect:{x:p,y:m-g,width:Math.abs(h),height:Math.abs(g)}})}}function TC(e,t,n,r,i){if(t.colSpan>1){let a=r+t.colSpan-1,o=i.rows.get(n)?.cells.get(a);if(o?.style?.border?.right){let t=tC({right:o.style.border.right});t.right&&(e.borders.right=t.right,e.borderInsets.right=t.right.width/2)}}if(t.rowSpan>1){let a=n+t.rowSpan-1,o=i.rows.get(a)?.cells.get(r);if(o?.style?.border?.bottom){let t=tC({bottom:o.style.border.bottom});t.bottom&&(e.borders.bottom=t.bottom,e.borderInsets.bottom=t.bottom.width/2)}}}function EC(e,t,n,r,i,a,o,s){for(let c=0;c<t.length;c++)for(let l=0;l<n.length;l++){let u=e.get(`${c}:${l}`);if(!u||u.wrapText||u.colSpan>1||!u.text||u.richText||typeof u.textRotation==`number`&&u.textRotation!==0||u.textRotation===`vertical`)continue;let d=s.hasEmbeddedFont()?s.getEmbeddedResourceName():s.ensureFont(Hx(u.fontFamily,u.bold,u.italic)),f=s.measureText(u.text,d,u.fontSize),p=u.rect.width-(3+u.borderInsets.left)-(3+u.borderInsets.right);if(f<=p)continue;let m=f-p,h=0;for(let s=l+1;s<n.length;s++){let l=r[t[c]],u=i[n[s]];if(o.has(`${l}:${u}`)||e.get(`${c}:${s}`)?.text||(h+=a[s],h>=m))break}h>0&&(u.textOverflowWidth=Math.min(m,h))}}function DC(e,t,n,r){if(!e||e.type!==$.RichText)return null;let i=e.value;if(!i||typeof i!=`object`||!(`richText`in i))return null;let a=i.richText;return a.length===0?null:a.map(e=>{let i=XS(e.font,t.defaultFontFamily,t.defaultFontSize);if(n.hasEmbeddedFont())n.trackText(e.text);else{let e=Hx(i.fontFamily,i.bold,i.italic);n.ensureFont(e)}return{text:e.text,fontFamily:i.fontFamily,fontSize:i.fontSize*r,bold:i.bold,italic:i.italic,strike:i.strike,underline:i.underline,textColor:i.textColor}})}async function OC(e,t){let n=kC(e,t);for(let e of n.sheets)await AC(n,e,t);return jC(n,e,t)}function kC(e,t){let n=RC(e,t?.sheets);if(n.length===0)throw new fx(`No sheets to export. The workbook is empty or no sheets matched.`);let r=new Ux,i=new _x;if(t?.font)try{let e=Yx(t.font);r.registerEmbeddedFont(e)}catch(e){throw new px(`Failed to parse TrueType font`,{cause:e})}return{sheets:n,fontManager:r,writer:i,allPages:[]}}async function AC(e,t,n){try{let r=await oC(t,zC(n,t),e.fontManager);e.allPages.push(...r)}catch(e){throw new px(`Failed to layout sheet "${t.name}"`,{cause:e})}}async function jC(e,t,n){let{allPages:r,fontManager:i,writer:a,sheets:o}=e,s=zC(n,o[0]);MC(r,s,o),NC(r),PC(r,i);let c=s.watermark;if(c&&c.type===`text`){let e=c.fontFamily??`Helvetica`,t=c.bold??!1,n=c.italic??!1;i.hasEmbeddedFont()?i.trackText(c.text):i.ensureFont(Hx(e,t,n))}let{pageObjNums:l,sheetFirstPage:u,pagesTreeObjNum:d}=await FC(r,i,a,i.writeFontResources(a),c);return LC(a,l,d,u,s,t,n)}function MC(e,t,n){e.length===0&&e.push({pageNumber:1,options:t,cells:[],width:t.pageSize.width,height:t.pageSize.height,sheetName:n[0]?.name??`Sheet1`,sheetCols:[],columnOffsets:[],columnWidths:[],sheetRows:[],rowYPositions:[],rowHeights:[],images:[],scaleFactor:1})}function NC(e){for(let t=0;t<e.length;t++)e[t].pageNumber=t+1}function PC(e,t){if(t.hasEmbeddedFont())for(let n of e)n.options.showSheetNames&&t.trackText(n.sheetName);for(let n of e)n.options.showPageNumbers&&t.ensureFont(Hx(n.options.defaultFontFamily,!1,!1));if(!t.hasEmbeddedFont())for(let n of e)n.options.showSheetNames&&t.ensureFont(Hx(n.options.defaultFontFamily,!0,!1))}async function FC(e,t,n,r,i){let a=[],o=n.allocObject(),s=new Map,c=e.length;for(let l=0;l<e.length;l++)IC(e[l],t,n,r,c,a,o,s,i),l<e.length-1&&await nl();return{pageObjNums:a,sheetFirstPage:s,pagesTreeObjNum:o}}function IC(e,t,n,r,i,a,o,s,c){try{let{stream:l,alphaValues:u}=pS(e,e.options,t,i),d=new Map;if(e.images.length>0)for(let t=0;t<e.images.length;t++){let r=e.images[t],i=`Im${t+1}`,a=$b(n,r.data,r.format);d.set(i,a),l.drawImage(i,r.rect.x,r.rect.y,r.rect.width,r.rect.height)}let f;if(c&&WC(c,e)){let r=new sx,i=LS(r,e,c,t);for(let e of i.alphaValues)u.add(e);for(let e of i.imageXObjects){let t=$b(n,e.data,e.format);d.set(e.name,t)}f=n.allocObject(),n.addStreamObject(f,new Q,r)}let p=n.allocObject();n.addStreamObject(p,new Q,l);let m;m=f?(c?.placement??`under`)===`over`?`[${Z(p)} ${Z(f)}]`:`[${Z(f)} ${Z(p)}]`:Z(p);let h=n.allocObject(),g=t.buildFontDictString(r),_=new Q().set(`Font`,g);if(d.size>0){let e=[`<<`];for(let[t,n]of d)e.push(`/${t} ${Z(n)}`);e.push(`>>`),_.set(`XObject`,e.join(`
|
|
452
|
-
`))}if(u.size>0){let e=[`<<`];for(let t of u){let r=n.allocObject(),i=new Q().set(`Type`,`/ExtGState`).set(`ca`,X(t)).set(`CA`,X(t));n.addObject(r,i),e.push(`/${
|
|
453
|
-
`))}n.addObject(h,_);let v=[];for(let t of e.cells)if(t.hyperlink){let e=n.allocObject(),r=`[${X(t.rect.x)} ${X(t.rect.y)} ${X(t.rect.x+t.rect.width)} ${X(t.rect.y+t.rect.height)}]`,i=new Q().set(`Type`,`/Annot`).set(`Subtype`,`/Link`).set(`Rect`,r).set(`Border`,`[0 0 0]`).set(`A`,`<< /Type /Action /S /URI /URI (${t.hyperlink.replace(/[()\\]/g,`\\$&`)}) >>`);n.addObject(e,i),v.push(e)}let y=n.addPage({parentRef:o,width:e.width,height:e.height,contentsRef:m,resourcesRef:h,annotRefs:v.length>0?v:void 0});a.push(y),s.has(e.sheetName)||s.set(e.sheetName,a.length-1)}catch(t){throw new px(`Failed to render page ${e.pageNumber} of "${e.sheetName}"`,{cause:t})}}function LC(e,t,n,r,i,a,o){let s=`[`+t.map(e=>Z(e)).join(` `)+`]`,c=new Q().set(`Type`,`/Pages`).set(`Kids`,s).set(`Count`,String(t.length));e.addObject(n,c);let l;if(r.size>1&&(l=UC(e,r,t)),e.addCatalog(n,l),e.addInfoDict({title:i.title||a.title||void 0,author:i.author||a.creator||void 0,subject:i.subject||a.subject||void 0,creator:i.creator}),o?.encryption){let t=rx(o.encryption);e.setEncryption(t)}return e.build()}function RC(e,t){let n=e.sheets;if(!t||t.length===0)return n.filter(e=>e.state!==`hidden`&&e.state!==`veryHidden`);let r=[];for(let e of t)if(typeof e==`string`){let t=n.find(t=>t.name.toLowerCase()===e.toLowerCase());t&&r.push(t)}else if(typeof e==`number`){let t=n[e-1];t&&r.push(t)}return r}function zC(e,t){let n=t?.pageSetup,r=VC(e?.pageSize,n?.paperSize),i=e?.orientation??(n?.orientation===`landscape`?`landscape`:`portrait`),a=HC(e?.margins,n?.margins),o=GS(e?.gridLineColor??`FFD0D0D0`)??{r:.816,g:.816,b:.816},s=e?.repeatRows??!1;if(s===!1&&n?.printTitlesRow){let e=n.printTitlesRow.match(/^(\d+)(?::(\d+))?$/);e&&(s=parseInt(e[2]??e[1],10))}return{pageSize:r,orientation:i,margins:a,fitToPage:e?.fitToPage===void 0?!0:e.fitToPage,scale:Math.max(.1,Math.min(3,e?.scale??(e?.fitToPage===void 0||e.fitToPage?1:n?.scale?n.scale/100:1))),showGridLines:e?.showGridLines??n?.showGridLines??!1,gridLineColor:o,repeatRows:s,defaultFontFamily:e?.defaultFontFamily??`Helvetica`,defaultFontSize:e?.defaultFontSize??11,showSheetNames:e?.showSheetNames??!1,showPageNumbers:e?.showPageNumbers??!1,title:e?.title??``,author:e?.author??``,subject:e?.subject??``,creator:e?.creator??`excelts`,watermark:e?.watermark}}let BC={1:lS.LETTER,5:lS.LEGAL,9:lS.A4,8:lS.A3,11:lS.A5,17:lS.TABLOID};function VC(e,t){return e?typeof e==`string`?lS[e]??lS.A4:e:t===void 0?lS.A4:BC[t]??lS.A4}function HC(e,t){let n=t?{top:t.top*72,right:t.right*72,bottom:t.bottom*72,left:t.left*72}:{top:72,right:72,bottom:72,left:72};return e?{top:e.top??n.top,right:e.right??n.right,bottom:e.bottom??n.bottom,left:e.left??n.left}:n}function UC(e,t,n){let r=e.allocObject(),i=Array.from(t.entries()),a=[];for(let t=0;t<i.length;t++)a.push(e.allocObject());for(let t=0;t<i.length;t++){let[o,s]=i[t],c=n[s],l=new Q().set(`Title`,Lb(o)).set(`Parent`,Z(r)).set(`Dest`,`[${Z(c)} /Fit]`);t>0&&l.set(`Prev`,Z(a[t-1])),t<i.length-1&&l.set(`Next`,Z(a[t+1])),e.addObject(a[t],l)}let o=new Q().set(`Type`,`/Outlines`).set(`First`,Z(a[0])).set(`Last`,Z(a[a.length-1])).set(`Count`,String(i.length));return e.addObject(r,o),r}function WC(e,t){if(e.pages&&e.pages.length>0&&!e.pages.includes(t.pageNumber))return!1;if(e.sheets&&e.sheets.length>0){let n=t.sheetName.toLowerCase();if(!e.sheets.some(e=>e.toLowerCase()===n))return!1}return!0}async function GC(e,t){return OC(KC(e),t)}function KC(e){return Array.isArray(e)?{sheets:[qC({data:e})]}:`sheets`in e?{title:e.title,creator:e.author,sheets:e.sheets.map((e,t)=>qC(e,t))}:{sheets:[qC(e)]}}function qC(e,t){let n=e.data,r=e.name??`Sheet${(t??0)+1}`,i=e.columns?.map(e=>typeof e==`number`?void 0:e.header),a=i?.some(e=>e!==void 0)??!1,o=0;for(let e of n)e.length>o&&(o=e.length);let s=Math.max(o,e.columns?.length??0),c=n.length+ +!!a;if(e.images)for(let t of e.images){let e=t.col+1,n=t.row+1;e>s&&(s=e),n>c&&(c=n)}if(s===0)return{name:r,bounds:{top:0,left:0,bottom:0,right:0},columns:new Map,rows:new Map};let l=new Map;if(e.columns)for(let t=0;t<e.columns.length;t++){let n=e.columns[t],r=typeof n==`number`?n:n.width;l.set(t+1,{width:r??12})}for(let e=1;e<=s;e++)l.has(e)||l.set(e,{width:12});let u=new Map,d=1;if(a&&i){let e=new Map;for(let t=0;t<i.length;t++){let n=i[t];n!==void 0&&e.set(t+1,{type:$.String,value:n,text:n,col:t+1,style:{font:{bold:!0}}})}u.set(1,{cells:e}),d=2}for(let e=0;e<n.length;e++){let t=e+d,r=n[e],i=new Map;for(let e=0;e<r.length;e++){let t=JC(r[e],e+1);t&&i.set(e+1,t)}u.set(t,{cells:i})}let f;if(e.images&&e.images.length>0){f=e.images.map(e=>({data:e.data,format:e.format,range:{tl:{col:e.col,row:e.row},ext:{width:e.width,height:e.height}}}));for(let e=1;e<=s;e++)l.has(e)||l.set(e,{width:12});for(let e=1;e<=c;e++)u.has(e)||u.set(e,{cells:new Map})}return{name:r,bounds:{top:1,left:1,bottom:c,right:s},columns:l,rows:u,images:f}}function JC(e,t){if(e==null)return null;if(typeof e==`object`&&!(e instanceof Date)&&`value`in e){let n=e,r=JC(n.value,t);if(!r)return null;let i={};return(n.bold||n.italic||n.fontSize||n.fontColor)&&(i.font={bold:n.bold,italic:n.italic,size:n.fontSize,color:n.fontColor?{argb:n.fontColor}:void 0}),n.fillColor&&(i.fill={type:`pattern`,pattern:`solid`,fgColor:{argb:n.fillColor}}),n.align&&(i.alignment={horizontal:n.align}),r.style=i,r}return typeof e==`string`?{type:$.String,value:e,text:e,col:t}:typeof e==`number`?{type:$.Number,value:e,text:String(e),col:t}:typeof e==`boolean`?{type:$.Boolean,value:e,text:e?`TRUE`:`FALSE`,col:t}:e instanceof Date?{type:$.Date,value:e,text:e.toLocaleDateString(),col:t}:null}async function YC(e,t){return OC(XC(e),t)}function XC(e){return{title:e.title||void 0,creator:e.creator||void 0,subject:e.subject||void 0,sheets:e.worksheets.map(t=>ZC(t,e))}}function ZC(e,t){let n=e.dimensions,r=n&&n.model.top>0&&n.model.left>0,i=r?{top:n.model.top,left:n.model.left,bottom:n.model.bottom,right:n.model.right}:{top:0,left:0,bottom:0,right:0},a=new Map;if(r)for(let t=i.left;t<=i.right;t++){let n=e.getColumn(t);a.set(t,{hidden:n.hidden||void 0,width:n.width??void 0})}let o=new Map;if(r)for(let t=i.top;t<=i.bottom;t++){let n=e.findRow(t);if(!n)continue;let r=new Map;n.eachCell({includeEmpty:!0},e=>{let t=e.type!==0&&e.type!==1,n=e.style&&(e.style.border&&(e.style.border.top||e.style.border.right||e.style.border.bottom||e.style.border.left)||e.style.fill||e.style.font);(t||n)&&r.set(e.col,QC(e))}),o.set(t,{hidden:n.hidden||void 0,height:n.height??void 0,customHeight:n.customHeight||void 0,cells:r})}let s=e.hasMerges&&e.model.mergeCells?[...e.model.mergeCells]:void 0,c=e.pageSetup,l=c?{orientation:c.orientation,paperSize:c.paperSize,margins:c.margins?{left:c.margins.left,right:c.margins.right,top:c.margins.top,bottom:c.margins.bottom}:void 0,scale:c.scale,printTitlesRow:c.printTitlesRow,showGridLines:c.showGridLines,printArea:c.printArea}:void 0,u=e.rowBreaks?.map(e=>e.id),d=e.colBreaks?.map(e=>e.id),f=uw(e,t);if(f){for(let e of f){let t=e.range.tl,n=(t.nativeCol??t.col??0)+1,r=(t.nativeRow??t.row??0)+1;if(i.top===0&&i.left===0&&(i.top=1,i.left=1),n>i.right&&(i.right=n),r>i.bottom&&(i.bottom=r),e.range.br){let t=e.range.br,n=(t.nativeCol??t.col??0)+1,r=(t.nativeRow??t.row??0)+1;n>i.right&&(i.right=n),r>i.bottom&&(i.bottom=r)}}for(let t=i.left;t<=i.right;t++)if(!a.has(t)){let n=e.getColumn(t);a.set(t,{hidden:n.hidden||void 0,width:n.width??void 0})}for(let e=i.top;e<=i.bottom;e++)o.has(e)||o.set(e,{cells:new Map})}return{name:e.name,state:e.state??`visible`,bounds:i,columns:a,rows:o,merges:s,pageSetup:l,rowBreaks:u,colBreaks:d,images:f}}function QC(e){let t=$C(e.type),n=ew(e),r=rw(e.style);return{type:t,value:nw(e),text:n,style:r,hyperlink:e.hyperlink||void 0,result:e.result??void 0,col:e.col}}function $C(e){switch(e){case 0:return $.Empty;case 1:return $.Merge;case 2:return $.Number;case 3:case 7:return $.String;case 4:return $.Date;case 5:return $.Hyperlink;case 6:return $.Formula;case 8:return $.RichText;case 9:return $.Boolean;case 10:return $.Error;default:return $.String}}function ew(e){if(!e)return``;switch(e.type){case 0:case 1:return``;case 8:case 5:return e.text??``;case 10:return e.value?.error??e.text??``;case 6:{let t=e.result;return t==null?e.text??``:typeof t==`object`&&`error`in t?t.error:tw(t,e.style?.numFmt)}default:{let t=e.value;return t==null?``:tw(t,e.style?.numFmt)}}}function tw(e,t){let n=typeof t==`string`?t:t?.formatCode;if(n&&(typeof e==`number`||e instanceof Date||typeof e==`boolean`))try{return Al(e,n)}catch{}return e instanceof Date?e.toLocaleDateString():String(e)}function nw(e){if(e.type===8){let t=e.value;if(t?.richText)return{richText:t.richText.map(e=>({text:e.text,font:e.font?iw(e.font):void 0}))}}return e.value}function rw(e){if(e)return{font:e.font?iw(e.font):void 0,numFmt:e.numFmt,fill:e.fill?ow(e.fill):void 0,border:e.border?cw(e.border):void 0,alignment:e.alignment?lw(e.alignment):void 0}}function iw(e){return{name:e.name,size:e.size,bold:e.bold,italic:e.italic,strike:e.strike,underline:e.underline,color:e.color?aw(e.color):void 0}}function aw(e){return{argb:e.argb,theme:e.theme,tint:e.tint}}function ow(e){let t={type:e.type??`pattern`,pattern:e.pattern,fgColor:e.fgColor?aw(e.fgColor):void 0};return e.stops&&(t.stops=e.stops.map(e=>({color:aw(e.color)}))),t}function sw(e){return{style:e.style,color:e.color?aw(e.color):void 0}}function cw(e){return{top:e.top?sw(e.top):void 0,right:e.right?sw(e.right):void 0,bottom:e.bottom?sw(e.bottom):void 0,left:e.left?sw(e.left):void 0}}function lw(e){return{horizontal:e.horizontal,vertical:e.vertical,wrapText:e.wrapText,indent:e.indent,textRotation:e.textRotation}}function uw(e,t){let n=e.getImages?.();if(!n||!Array.isArray(n)||n.length===0)return;let r=[];for(let e of n){if(!e.range?.tl)continue;let n=e.imageId,i=t.getImage?.(Number(n));if(!i)continue;let a;if(i.buffer instanceof Uint8Array?a=i.buffer:i.base64&&(a=kc(i.base64)),!a||a.length===0)continue;let o=i.extension;o!==`jpeg`&&o!==`png`||r.push({data:a,format:o,range:{tl:{col:e.range.tl.col??0,row:e.range.tl.row??0,nativeCol:e.range.tl.nativeCol,nativeRow:e.range.tl.nativeRow,nativeColOff:e.range.tl.nativeColOff,nativeRowOff:e.range.tl.nativeRowOff},br:e.range.br?{col:e.range.br.col??0,row:e.range.br.row??0,nativeCol:e.range.br.nativeCol,nativeRow:e.range.br.nativeRow,nativeColOff:e.range.br.nativeColOff,nativeRowOff:e.range.br.nativeRowOff}:void 0,ext:e.range.ext?{width:e.range.ext.width,height:e.range.ext.height}:void 0}})}return r.length>0?r:void 0}return e.Anchor=Bp,e.BaseError=n,e.Cell=B,e.Column=gc,e.ColumnOutOfBoundsError=Dr,e.CsvFormatterStream=Sr,e.CsvParserStream=br,e.DataValidations=Vp,e.DateFormatter=tt,e.DateParser=$e,e.DefinedNames=$r,e.DocumentType=Vs,e.Enums=Ws,e.ErrorValue=Us,e.ExcelDownloadError=Fr,e.ExcelError=j,e.ExcelFileError=Nr,e.ExcelNotSupportedError=Mr,e.ExcelStreamStateError=Pr,e.FormCheckbox=wg,e.FormulaType=zs,e.Image=Tg,e.ImageError=Rr,e.InvalidAddressError=Er,e.InvalidValueTypeError=Ar,e.MarkdownError=Xy,e.MarkdownParseError=Zy,e.MaxItemsExceededError=zr,e.MergeConflictError=kr,e.PageSizes=lS,e.PaperSize=wb,e.PdfError=fx,e.PdfFontError=mx,e.PdfRenderError=px,e.PdfStructureError=hx,e.PivotTableError=Ir,e.Range=N,e.ReadingOrder=Hs,e.RelationshipType=Bs,e.Row=Ql,e.RowOutOfBoundsError=Or,e.Table=Gg,e.TableError=Lr,e.ValueType=Rs,e.Workbook=Cb,e.WorkbookReader=_f,e.WorkbookWriter=_g,e.Worksheet=J_,e.WorksheetNameError=Tr,e.WorksheetReader=$l,e.WorksheetWriter=Th,e.XmlParseError=jr,e.base64ToUint8Array=kc,e.concatUint8Arrays=E,e.createCsvFormatterStream=Cr,e.createCsvParserStream=xr,e.createTextWatermarkImage=Tb,e.dateToExcel=Ac,e.decodeCell=Xg,e.decodeCol=Kg,e.decodeRange=Qg,e.decodeRow=Jg,e.encodeCell=Zg,e.encodeCol=qg,e.encodeRange=$g,e.encodeRow=Yg,e.errorToJSON=s,e.excelToDate=jc,e.excelToPdf=YC,e.getErrorChain=c,e.getRootCause=l,e.getSupportedFormats=nt,e.isExcelError=wr,e.isPdfError=gx,e.pdf=GC,e.stringToUint8Array=Cn,e.toError=o,e.toUint8Array=Tn,e.uint8ArrayToBase64=el,e.uint8ArrayToString=wn,e.xmlDecode=Cc,e.xmlEncode=R,e})({});
|
|
448
|
+
`;let _=e.encode(g);return t.push(_),E(t)}};function _x(e,t,n,r){let i=new TextEncoder,a=[],o=0;for(;o<e.length;)if(e[o]===`(`){let s=o;o++;let c=``,l=1;for(;o<e.length&&l>0;){let t=e[o];t===`\\`?(c+=e[o]+(e[o+1]??``),o+=2):t===`(`?(l++,c+=t,o++):t===`)`?(l--,l>0&&(c+=t),o++):(c+=t,o++)}if(l!==0){a.push(e.slice(s,o));continue}let u=vx(c),d=rx(i.encode(u),t,n,r);a.push(Lb(d))}else if(e[o]===`<`&&e[o+1]===`<`)a.push(`<<`),o+=2;else if(e[o]===`>`&&e[o+1]===`>`)a.push(`>>`),o+=2;else if(e[o]===`<`){o++;let i=``;for(;o<e.length&&e[o]!==`>`;)i+=e[o],o++;o<e.length&&o++;let s=i.replace(/\s/g,``);if(s.length===0){a.push(`<>`);continue}let c=new Uint8Array(Math.ceil(s.length/2));for(let e=0;e<c.length;e++)c[e]=parseInt(s.substring(e*2,e*2+2).padEnd(2,`0`),16);let l=rx(c,t,n,r);a.push(Lb(l))}else a.push(e[o]),o++;return a.join(``)}function vx(e){let t=``;for(let n=0;n<e.length;n++){let r=e[n];if(r!==`\\`){t+=r;continue}let i=e[n+1];if(i===void 0){t+=`\\`;break}switch(i){case`n`:t+=`
|
|
449
|
+
`;break;case`r`:t+=`\r`;break;case`t`:t+=` `;break;case`(`:t+=`(`;break;case`)`:t+=`)`;break;case`\\`:t+=`\\`;break;default:t+=i;break}n++}return t}function yx(e,t,n,r){let{oldToNewGid:i,unicodeToCid:a,cidWidths:o,usedGlyphIds:s}=bx(t,n),c=xx(t,s,i),l=Vf(c,{level:6}),u=e.allocObject(),d=new Q().set(`Length`,X(l.length)).set(`Length1`,X(c.length)).set(`Filter`,`/FlateDecode`);e.addStreamObject(u,d,l);let f=1e3/t.unitsPerEm,p=e.allocObject(),m=new Q().set(`Type`,`/FontDescriptor`).set(`FontName`,Rb(t.postScriptName+`-Subset`)).set(`Flags`,X(t.flags)).set(`FontBBox`,zb(t.bbox.map(e=>X(Math.round(e*f))))).set(`ItalicAngle`,X(t.italicAngle)).set(`Ascent`,X(Math.round(t.ascent*f))).set(`Descent`,X(Math.round(t.descent*f))).set(`CapHeight`,X(Math.round(t.capHeight*f))).set(`StemV`,X(t.stemV)).set(`FontFile2`,Z(u));e.addObject(p,m);let h=Ex(o,t.unitsPerEm),g=e.allocObject(),_=new Q().set(`Type`,`/Font`).set(`Subtype`,`/CIDFontType2`).set(`BaseFont`,Rb(t.postScriptName+`-Subset`)).set(`CIDSystemInfo`,`<< /Registry (Adobe) /Ordering (Identity) /Supplement 0 >>`).set(`FontDescriptor`,Z(p)).set(`DW`,X(1e3)).set(`W`,h).set(`CIDToGIDMap`,`/Identity`);e.addObject(g,_);let v=Vf(Tx(a),{level:6}),y=e.allocObject(),b=new Q().set(`Length`,X(v.length)).set(`Filter`,`/FlateDecode`);e.addStreamObject(y,b,v);let x=e.allocObject(),S=new Q().set(`Type`,`/Font`).set(`Subtype`,`/Type0`).set(`BaseFont`,Rb(t.postScriptName+`-Subset`)).set(`Encoding`,`/Identity-H`).set(`DescendantFonts`,zb([Z(g)])).set(`ToUnicode`,Z(y));return e.addObject(x,S),{resourceName:r,fontObjNum:x,font:t,unicodeToCid:a,cidWidths:o}}function bx(e,t){let n=new Set,r=new Map;n.add(0);for(let i of t){let t=e.cmap.get(i);t!==void 0&&t>0&&(n.add(t),r.set(i,t))}let i=e.tables.get(`glyf`);if(i){let t=i.offset,r=new Set(n),a=Array.from(r);for(;a.length>0;){let i=Dx(e,a.pop(),t);for(let e of i)r.has(e)||(r.add(e),n.add(e),a.push(e))}}let a=Array.from(n).sort((e,t)=>e-t),o=new Map;for(let e=0;e<a.length;e++)o.set(a[e],e);let s=new Map,c=Array(a.length).fill(0);c[0]=e.advanceWidths[0]??0;for(let[t,n]of r){let r=o.get(n);s.set(t,r),c[r]=e.advanceWidths[n]??0}return{oldToNewGid:o,unicodeToCid:s,cidWidths:c,usedGlyphIds:n}}function xx(e,t,n){let r=n.size,i=Array.from(t).sort((e,t)=>e-t),a=e.tables.get(`glyf`)?.offset??0,o=[],s=[],c=0;for(let t of i){s.push(c);let r=e.glyphOffsets[t],i=e.glyphOffsets[t+1],l=i-r;if(l>0){let t=Ox(e.data.subarray(a+r,a+i),n);o.push(t),c+=l;let s=(4-l%4)%4;s>0&&(o.push(new Uint8Array(s)),c+=s)}}s.push(c);let l=E(o),u=new Uint8Array((r+1)*4),d=new DataView(u.buffer);for(let e=0;e<=r;e++)d.setUint32(e*4,s[e]??c,!1);let f=new Uint8Array(r*4),p=new DataView(f.buffer);for(let t=0;t<i.length;t++){let n=i[t];p.setUint16(t*4,e.advanceWidths[n]??0,!1),p.setInt16(t*4+2,0,!1)}let m=Sx(n,e.cmap),h=e.tables.get(`head`),g=new Uint8Array(e.data.subarray(h.offset,h.offset+h.length));new DataView(g.buffer,g.byteOffset,g.byteLength).setInt16(50,1,!1);let _=e.tables.get(`hhea`),v=new Uint8Array(e.data.subarray(_.offset,_.offset+_.length));new DataView(v.buffer,v.byteOffset,v.byteLength).setUint16(34,r,!1);let y=e.tables.get(`maxp`),b=new Uint8Array(e.data.subarray(y.offset,y.offset+y.length));new DataView(b.buffer,b.byteOffset,b.byteLength).setUint16(4,r,!1);let x=new Uint8Array(32);return new DataView(x.buffer).setUint32(0,196608,!1),Cx([[`head`,g],[`hhea`,v],[`maxp`,b],[`post`,x],[`cmap`,m],[`hmtx`,f],[`loca`,u],[`glyf`,l]])}function Sx(e,t){let n=[];for(let[r,i]of t){let t=e.get(i);t!==void 0&&n.push([r,t])}n.sort((e,t)=>e[0]-t[0]);let r=[];for(let[e,t]of n){let n=r[r.length-1];n&&e===n.endCP+1&&t===n.startGID+(e-n.startCP)?n.endCP=e:r.push({startCP:e,endCP:e,startGID:t})}let i=16+r.length*12,a=12+i,o=new Uint8Array(a),s=new DataView(o.buffer),c=0;s.setUint16(c,0,!1),c+=2,s.setUint16(c,1,!1),c+=2,s.setUint16(c,3,!1),c+=2,s.setUint16(c,10,!1),c+=2,s.setUint32(c,12,!1),c+=4,s.setUint16(c,12,!1),c+=2,s.setUint16(c,0,!1),c+=2,s.setUint32(c,i,!1),c+=4,s.setUint32(c,0,!1),c+=4,s.setUint32(c,r.length,!1),c+=4;for(let e of r)s.setUint32(c,e.startCP,!1),c+=4,s.setUint32(c,e.endCP,!1),c+=4,s.setUint32(c,e.startGID,!1),c+=4;return o}function Cx(e){let t=e.length,n=12+t*16,r=[];for(let[t,i]of e){let e=i.length,a=e+3&-4,o=new Uint8Array(a);o.set(i),r.push({tag:t,data:o,originalLength:e,offset:n,checksum:wx(o)}),n+=a}let i=new Uint8Array(n),a=new DataView(i.buffer),o=0;a.setUint32(o,65536,!1),o+=4,a.setUint16(o,t,!1),o+=2;let s=2**Math.floor(Math.log2(t));a.setUint16(o,s*16,!1),o+=2,a.setUint16(o,Math.floor(Math.log2(t)),!1),o+=2,a.setUint16(o,t*16-s*16,!1),o+=2;for(let e of r){for(let t=0;t<4;t++)i[o++]=e.tag.charCodeAt(t);a.setUint32(o,e.checksum,!1),o+=4,a.setUint32(o,e.offset,!1),o+=4,a.setUint32(o,e.originalLength,!1),o+=4}for(let e of r)i.set(e.data,e.offset);return i}function wx(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength),n=0,r=Math.floor(e.length/4);for(let e=0;e<r;e++)n=n+t.getUint32(e*4,!1)>>>0;return n}function Tx(e){let t=new Map;for(let[n,r]of e)t.set(r,n);let n=Array.from(t.entries()).sort((e,t)=>e[0]-t[0]),r=[];r.push(`/CIDInit /ProcSet findresource begin`),r.push(`12 dict begin`),r.push(`begincmap`),r.push(`/CIDSystemInfo`),r.push(`<< /Registry (Adobe) /Ordering (UCS) /Supplement 0 >> def`),r.push(`/CMapName /Adobe-Identity-UCS def`),r.push(`/CMapType 2 def`),r.push(`1 begincodespacerange`),r.push(`<0000> <FFFF>`),r.push(`endcodespacerange`);for(let e=0;e<n.length;e+=100){let t=n.slice(e,e+100);r.push(`${t.length} beginbfchar`);for(let[e,n]of t){let t=e.toString(16).toUpperCase().padStart(4,`0`),i;if(n>65535){let e=55296+(n-65536>>10),t=56320+(n-65536&1023);i=e.toString(16).toUpperCase().padStart(4,`0`)+t.toString(16).toUpperCase().padStart(4,`0`)}else i=n.toString(16).toUpperCase().padStart(4,`0`);r.push(`<${t}> <${i}>`)}r.push(`endbfchar`)}r.push(`endcmap`),r.push(`CMapName currentdict /CMap defineresource pop`),r.push(`end`),r.push(`end`);let i=r.join(`
|
|
450
|
+
`);return new TextEncoder().encode(i)}function Ex(e,t){if(e.length===0)return`[]`;let n=1e3/t;return`[0 [${e.map(e=>X(Math.round(e*n))).join(` `)}]]`}function Dx(e,t,n){let r=e.glyphOffsets[t];if(e.glyphOffsets[t+1]-r<4)return[];let i=new DataView(e.data.buffer,e.data.byteOffset,e.data.byteLength),a=n+r;if(i.getInt16(a,!1)>=0)return[];let o=a+10,s=[];for(;;){let e=i.getUint16(o,!1);o+=2;let t=i.getUint16(o,!1);if(o+=2,s.push(t),e&1?o+=4:o+=2,e&8?o+=2:e&64?o+=4:e&128&&(o+=8),!(e&32))break}return s}function Ox(e,t){if(e.length<10||new DataView(e.buffer,e.byteOffset,e.byteLength).getInt16(0,!1)>=0)return e;let n=new Uint8Array(e.length);n.set(e);let r=new DataView(n.buffer,n.byteOffset,n.byteLength),i=10;for(;;){let e=r.getUint16(i,!1);i+=2;let n=r.getUint16(i,!1),a=t.get(n)??0;if(r.setUint16(i,a,!1),i+=2,e&1?i+=4:i+=2,e&8?i+=2:e&64?i+=4:e&128&&(i+=8),!(e&32))break}return n}let kx={32:278,33:278,34:355,35:556,36:556,37:889,38:667,39:191,40:333,41:333,42:389,43:584,44:278,45:333,46:278,47:278,48:556,49:556,50:556,51:556,52:556,53:556,54:556,55:556,56:556,57:556,58:278,59:278,60:584,61:584,62:584,63:556,64:1015,65:667,66:667,67:722,68:722,69:667,70:611,71:778,72:722,73:278,74:500,75:667,76:556,77:833,78:722,79:778,80:667,81:778,82:722,83:667,84:611,85:722,86:667,87:944,88:667,89:667,90:611,91:278,92:278,93:278,94:469,95:556,96:333,97:556,98:556,99:500,100:556,101:556,102:278,103:556,104:556,105:222,106:222,107:500,108:222,109:833,110:556,111:556,112:556,113:556,114:333,115:500,116:278,117:556,118:500,119:722,120:500,121:500,122:500,123:334,124:260,125:334,126:584},Ax={32:278,33:333,34:474,35:556,36:556,37:889,38:722,39:238,40:333,41:333,42:389,43:584,44:278,45:333,46:278,47:278,48:556,49:556,50:556,51:556,52:556,53:556,54:556,55:556,56:556,57:556,58:333,59:333,60:584,61:584,62:584,63:611,64:975,65:722,66:722,67:722,68:722,69:667,70:611,71:778,72:722,73:278,74:556,75:722,76:611,77:833,78:722,79:778,80:667,81:778,82:722,83:667,84:611,85:722,86:667,87:944,88:667,89:667,90:611,91:333,92:278,93:333,94:584,95:556,96:333,97:556,98:611,99:556,100:611,101:556,102:333,103:611,104:611,105:278,106:278,107:556,108:278,109:889,110:611,111:611,112:611,113:611,114:389,115:556,116:333,117:611,118:556,119:778,120:556,121:556,122:500,123:389,124:280,125:389,126:584},jx={32:250,33:333,34:408,35:500,36:500,37:833,38:778,39:180,40:333,41:333,42:500,43:564,44:250,45:333,46:250,47:278,48:500,49:500,50:500,51:500,52:500,53:500,54:500,55:500,56:500,57:500,58:278,59:278,60:564,61:564,62:564,63:444,64:921,65:722,66:667,67:667,68:722,69:611,70:556,71:722,72:722,73:333,74:389,75:722,76:611,77:889,78:722,79:722,80:556,81:722,82:667,83:556,84:611,85:722,86:722,87:944,88:722,89:722,90:611,91:333,92:278,93:333,94:469,95:500,96:333,97:444,98:500,99:444,100:500,101:444,102:333,103:500,104:500,105:278,106:278,107:500,108:278,109:778,110:500,111:500,112:500,113:500,114:333,115:389,116:278,117:500,118:500,119:722,120:500,121:500,122:444,123:480,124:200,125:480,126:541},Mx={32:250,33:333,34:555,35:500,36:500,37:1e3,38:833,39:278,40:333,41:333,42:500,43:570,44:250,45:333,46:250,47:278,48:500,49:500,50:500,51:500,52:500,53:500,54:500,55:500,56:500,57:500,58:333,59:333,60:570,61:570,62:570,63:500,64:930,65:722,66:667,67:722,68:722,69:667,70:611,71:778,72:778,73:389,74:500,75:778,76:667,77:944,78:722,79:778,80:611,81:778,82:722,83:556,84:667,85:722,86:722,87:1e3,88:722,89:722,90:667,91:333,92:278,93:333,94:581,95:500,96:333,97:500,98:556,99:444,100:556,101:444,102:333,103:500,104:556,105:278,106:333,107:556,108:278,109:833,110:556,111:500,112:556,113:556,114:444,115:389,116:333,117:556,118:500,119:722,120:500,121:500,122:444,123:394,124:220,125:394,126:520},Nx={Helvetica:{ascent:718,descent:-207,capHeight:718,avgWidth:513,widths:kx},"Helvetica-Bold":{ascent:718,descent:-207,capHeight:718,avgWidth:535,widths:Ax},"Helvetica-Oblique":{ascent:718,descent:-207,capHeight:718,avgWidth:513,widths:kx},"Helvetica-BoldOblique":{ascent:718,descent:-207,capHeight:718,avgWidth:535,widths:Ax},"Times-Roman":{ascent:683,descent:-217,capHeight:662,avgWidth:478,widths:jx},"Times-Bold":{ascent:683,descent:-217,capHeight:676,avgWidth:505,widths:Mx},"Times-Italic":{ascent:683,descent:-217,capHeight:653,avgWidth:478,widths:jx},"Times-BoldItalic":{ascent:683,descent:-217,capHeight:669,avgWidth:505,widths:Mx},Courier:{ascent:629,descent:-157,capHeight:562,avgWidth:600,widths:null,monoWidth:600},"Courier-Bold":{ascent:629,descent:-157,capHeight:562,avgWidth:600,widths:null,monoWidth:600},"Courier-Oblique":{ascent:629,descent:-157,capHeight:562,avgWidth:600,widths:null,monoWidth:600},"Courier-BoldOblique":{ascent:629,descent:-157,capHeight:562,avgWidth:600,widths:null,monoWidth:600}};function Px(e,t){let n=Nx[t];return n?n.monoWidth===void 0?n.widths?.[e]??n.avgWidth:n.monoWidth:Px(e,`Helvetica`)}function Fx(e,t,n){let r=0;for(let n=0;n<e.length;n++)r+=Px(e.charCodeAt(n),t);return r/1e3*n}function Ix(e,t){return(Nx[e]??Nx.Helvetica).ascent/1e3*t}function Lx(e,t){return(Nx[e]??Nx.Helvetica).descent/1e3*t}function Rx(e,t){let n=Nx[e]??Nx.Helvetica;return(n.ascent-n.descent)/1e3*t}let zx={helvetica:`Helvetica`,arial:`Helvetica`,calibri:`Helvetica`,"segoe ui":`Helvetica`,"trebuchet ms":`Helvetica`,verdana:`Helvetica`,tahoma:`Helvetica`,"gill sans":`Helvetica`,"franklin gothic":`Helvetica`,"lucida sans":`Helvetica`,aptos:`Helvetica`,"times new roman":`Times`,times:`Times`,georgia:`Times`,garamond:`Times`,"book antiqua":`Times`,palatino:`Times`,"palatino linotype":`Times`,cambria:`Times`,"century schoolbook":`Times`,"courier new":`Courier`,courier:`Courier`,consolas:`Courier`,"lucida console":`Courier`,monaco:`Courier`,"andale mono":`Courier`,"cascadia code":`Courier`,"cascadia mono":`Courier`,menlo:`Courier`};function Bx(e){return zx[e.toLowerCase().trim()]??`Helvetica`}function Vx(e,t,n){let r=Bx(e);return r===`Helvetica`?t&&n?`Helvetica-BoldOblique`:t?`Helvetica-Bold`:n?`Helvetica-Oblique`:`Helvetica`:r===`Times`?t&&n?`Times-BoldItalic`:t?`Times-Bold`:n?`Times-Italic`:`Times-Roman`:r===`Courier`?t&&n?`Courier-BoldOblique`:t?`Courier-Bold`:n?`Courier-Oblique`:`Courier`:`Helvetica`}var Hx=class{constructor(){this.type1Map=new Map,this.resourceToType1=new Map,this.nextType1Id=1,this.embeddedFont=null,this.embeddedResourceName=``,this.usedCodePoints=new Set,this.nextEmbeddedId=1,this._embeddedResult=null}registerEmbeddedFont(e){return this.embeddedFont=e,this.embeddedResourceName=`EF${this.nextEmbeddedId++}`,this.embeddedResourceName}hasEmbeddedFont(){return this.embeddedFont!==null}getEmbeddedResourceName(){return this.embeddedResourceName}trackText(e){if(this.embeddedFont)for(let t=0;t<e.length;t++){let n=e.codePointAt(t);this.usedCodePoints.add(n),n>65535&&t++}}ensureFont(e){let t=this.type1Map.get(e);return t||(t=`F${this.nextType1Id++}`,this.type1Map.set(e,t),this.resourceToType1.set(t,e)),t}resolveFont(e,t,n){if(this.embeddedFont)return this.embeddedResourceName;let r=Vx(e,t,n);return this.ensureFont(r)}getPdfFontName(e){return this.resourceToType1.get(e)??`Helvetica`}measureText(e,t,n){return this.embeddedFont&&t===this.embeddedResourceName?Wx(e,this.embeddedFont,n):Fx(e,this.getPdfFontName(t),n)}getFontAscent(e,t){return this.embeddedFont&&e===this.embeddedResourceName?this.embeddedFont.ascent/this.embeddedFont.unitsPerEm*t:Ix(this.getPdfFontName(e),t)}getFontDescent(e,t){return this.embeddedFont&&e===this.embeddedResourceName?this.embeddedFont.descent/this.embeddedFont.unitsPerEm*t:Lx(this.getPdfFontName(e),t)}getLineHeight(e,t){if(this.embeddedFont&&e===this.embeddedResourceName){let e=this.embeddedFont;return(e.ascent-e.descent)/e.unitsPerEm*t}return Rx(this.getPdfFontName(e),t)}isEmbeddedFont(e){return this.embeddedFont!==null&&e===this.embeddedResourceName}encodeText(e,t){if(!this.embeddedFont||t!==this.embeddedResourceName)return null;if(this._embeddedResult)return Ux(e,this._embeddedResult.unicodeToCid);throw new px(`encodeText called before writeFontResources — subset mapping not available`)}writeFontResources(e){let t=new Map;for(let[n,r]of this.type1Map){let i=e.allocObject(),a=new Q().set(`Type`,`/Font`).set(`Subtype`,`/Type1`).set(`BaseFont`,Rb(n)).set(`Encoding`,`/WinAnsiEncoding`);e.addObject(i,a),t.set(r,i)}if(this.embeddedFont&&this.embeddedResourceName){let n=yx(e,this.embeddedFont,this.usedCodePoints,this.embeddedResourceName);t.set(this.embeddedResourceName,n.fontObjNum),this._embeddedResult=n}return t}getEmbeddedResult(){return this._embeddedResult}buildFontDictString(e){let t=[`<<`];for(let[n,r]of e)t.push(`${Rb(n)} ${Z(r)}`);return t.push(`>>`),t.join(`
|
|
451
|
+
`)}getRegisteredFonts(){let e=[];for(let[t,n]of this.type1Map)e.push({resourceName:n,pdfFontName:t});return e}};function Ux(e,t){let n=`<`;for(let r=0;r<e.length;r++){let i=e.codePointAt(r);i>65535&&r++;let a=t.get(i)??0;n+=a.toString(16).toUpperCase().padStart(4,`0`)}return n+=`>`,n}function Wx(e,t,n){let r=0;for(let n=0;n<e.length;n++){let i=e.codePointAt(n);i>65535&&n++;let a=t.cmap.get(i)??0;r+=t.advanceWidths[a]??0}return r/t.unitsPerEm*n}let Gx=65536,Kx=2e6;var qx=class e{constructor(e,t=0){this.data=e,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.offset=t}u8(){let e=this.view.getUint8(this.offset);return this.offset+=1,e}u16(){let e=this.view.getUint16(this.offset,!1);return this.offset+=2,e}i16(){let e=this.view.getInt16(this.offset,!1);return this.offset+=2,e}u32(){let e=this.view.getUint32(this.offset,!1);return this.offset+=4,e}i32(){let e=this.view.getInt32(this.offset,!1);return this.offset+=4,e}fixed(){return this.i32()/65536}bytes(e){let t=this.data.subarray(this.offset,this.offset+e);return this.offset+=e,t}tag(){return String.fromCharCode(this.u8(),this.u8(),this.u8(),this.u8())}skip(e){this.offset+=e}at(t){return new e(this.data,t)}u16At(e){return this.view.getUint16(e,!1)}u32At(e){return this.view.getUint32(e,!1)}i16At(e){return this.view.getInt16(e,!1)}};function Jx(e){let t=new qx(e),n=t.u32();if(n!==65536&&n!==1953658213)throw n===1330926671?new px(`CFF-flavored OpenType (.otf) is not supported. Use a TrueType (.ttf) font.`):new px(`Invalid TrueType font: bad sfVersion 0x${n.toString(16)}`);let r=t.u16();t.skip(6);let i=new Map;for(let e=0;e<r;e++){let e=t.tag();t.skip(4);let n=t.u32(),r=t.u32();i.set(e,{offset:n,length:r})}for(let e of[`head`,`hhea`,`maxp`,`cmap`,`hmtx`])if(!i.has(e))throw new px(`Missing required table '${e}' in TrueType font`);let a=Yx(t,i.get(`head`)),o=Xx(t,i.get(`hhea`)),s=Zx(t,i.get(`maxp`)),c=i.has(`OS/2`)?Qx(t,i.get(`OS/2`)):null,l=i.has(`post`)?$x(t,i.get(`post`)):null,u=i.has(`name`)?eS(t,i.get(`name`)):null,d=tS(t,i.get(`cmap`)),f=iS(t,i.get(`hmtx`),o.numHMetrics,s.numGlyphs),p=i.has(`loca`)&&i.has(`glyf`)?aS(t,i.get(`loca`),s.numGlyphs,a.indexToLocFormat):new Uint32Array(s.numGlyphs+1),m=c?.sTypoAscender??o.ascent,h=c?.sTypoDescender??o.descent,g=c?.sCapHeight??Math.round(m*.7),_=0;l?.isFixedPitch&&(_|=1),a.macStyle&2&&(_|=64),_|=32;let v=c?.usWeightClass??400,y=Math.round(50+(v/65)**2),b=u?.familyName??`Unknown`;return{data:e,familyName:b,postScriptName:u?.postScriptName??b.replace(/\s+/g,``),unitsPerEm:a.unitsPerEm,ascent:m,descent:h,capHeight:g,italicAngle:l?.italicAngle??0,flags:_,bbox:[a.xMin,a.yMin,a.xMax,a.yMax],stemV:y,numGlyphs:s.numGlyphs,indexToLocFormat:a.indexToLocFormat,numHMetrics:o.numHMetrics,tables:i,cmap:d,advanceWidths:f,glyphOffsets:p}}function Yx(e,t){let n=e.at(t.offset);n.skip(4),n.skip(4),n.skip(4),n.skip(4),n.skip(2);let r=n.u16();n.skip(16);let i=n.i16(),a=n.i16(),o=n.i16(),s=n.i16(),c=n.u16();return n.skip(2),n.skip(2),{unitsPerEm:r,xMin:i,yMin:a,xMax:o,yMax:s,macStyle:c,indexToLocFormat:n.i16()}}function Xx(e,t){let n=e.at(t.offset);n.skip(4);let r=n.i16(),i=n.i16(),a=n.i16();return n.skip(2),n.skip(22),{ascent:r,descent:i,lineGap:a,numHMetrics:n.u16()}}function Zx(e,t){let n=e.at(t.offset);return n.skip(4),{numGlyphs:n.u16()}}function Qx(e,t){let n=e.at(t.offset),r=n.u16();n.skip(2);let i=n.u16();n.skip(2),n.skip(2),n.skip(22),n.skip(10),n.skip(16),n.skip(4),n.skip(2),n.skip(2),n.skip(2);let a=n.i16(),o=n.i16();n.skip(2),n.skip(2),n.skip(2);let s;return r>=2?(n.skip(8),n.skip(2),s=n.i16()):s=Math.round(a*.7),{usWeightClass:i,sTypoAscender:a,sTypoDescender:o,sCapHeight:s}}function $x(e,t){let n=e.at(t.offset);n.skip(4);let r=n.fixed();return n.skip(2),n.skip(2),{italicAngle:r,isFixedPitch:n.u32()!==0}}function eS(e,t){let n=t.offset,r=e.at(n);r.skip(2);let i=r.u16(),a=n+r.u16(),o=``,s=``;for(let t=0;t<i;t++){let t=r.u16(),n=r.u16();r.skip(2);let i=r.u16(),c=r.u16(),l=r.u16();if(i!==1&&i!==6)continue;let u=e.at(a+l).bytes(c),d;if(t===3||t===0)d=oS(u);else if(t===1&&n===0)d=sS(u);else continue;i===1&&!o&&(o=d),i===6&&!s&&(s=d)}return{familyName:o||`Unknown`,postScriptName:s||o||`Unknown`}}function tS(e,t){let n=t.offset,r=e.at(n);r.skip(2);let i=r.u16(),a=-1,o=-1;for(let t=0;t<i;t++){let t=r.u16(),i=r.u16(),s=r.u32();if(!(t===0||t===3&&(i===1||i===10)))continue;let c=e.u16At(n+s);c===12&&o<0&&(o=n+s),c===4&&a<0&&(a=n+s)}if(o>=0)return rS(e,o);if(a>=0)return nS(e,a);throw new px(`No usable Unicode cmap subtable found in font`)}function nS(e,t){let n=e.at(t);n.skip(2),n.skip(2),n.skip(2);let r=n.u16()/2;n.skip(6);let i=[];for(let e=0;e<r;e++)i.push(n.u16());n.skip(2);let a=[];for(let e=0;e<r;e++)a.push(n.u16());let o=[];for(let e=0;e<r;e++)o.push(n.i16());let s=n.offset,c=[];for(let e=0;e<r;e++)c.push(n.u16());let l=new Map;for(let t=0;t<r;t++){let n=a[t],r=i[t],u=o[t],d=c[t];if(n===65535)break;for(let i=n;i<=r;i++){let r;if(d===0)r=i+u&65535;else{let a=s+t*2+d+(i-n)*2;r=e.u16At(a),r!==0&&(r=r+u&65535)}r!==0&&l.set(i,r)}}return l}function rS(e,t){let n=e.at(t);n.skip(2),n.skip(2),n.skip(4),n.skip(4);let r=n.u32();if(r>Gx)throw new px(`cmap format 12 has ${r} groups, exceeding limit of ${Gx}. The font file may be malicious or corrupted.`);let i=new Map,a=0;for(let e=0;e<r;e++){let e=n.u32(),t=n.u32(),r=n.u32(),o=t>=e?t-e+1:0;if(a+=o,a>Kx)throw new px(`cmap format 12 maps too many codepoints (>${Kx}). The font file may be malicious or corrupted.`);for(let n=e;n<=t;n++)i.set(n,r+(n-e))}return i}function iS(e,t,n,r){let i=e.at(t.offset),a=new Uint16Array(r),o=0;for(let e=0;e<n;e++)o=i.u16(),i.skip(2),a[e]=o;for(let e=n;e<r;e++)a[e]=o;return a}function aS(e,t,n,r){let i=e.at(t.offset),a=new Uint32Array(n+1);if(r===0)for(let e=0;e<=n;e++)a[e]=i.u16()*2;else for(let e=0;e<=n;e++)a[e]=i.u32();return a}function oS(e){let t=[];for(let n=0;n+1<e.length;n+=2){let r=e[n]<<8|e[n+1];if(r>=55296&&r<=56319&&n+3<e.length){let i=e[n+2]<<8|e[n+3];if(i>=56320&&i<=57343){t.push(String.fromCodePoint((r-55296<<10)+(i-56320)+65536)),n+=2;continue}}t.push(String.fromCharCode(r))}return t.join(``)}function sS(e){let t=[];for(let n=0;n<e.length;n++)t.push(String.fromCharCode(e[n]));return t.join(``)}let $={Empty:0,String:1,Number:2,Boolean:3,Date:4,RichText:5,Error:6,Formula:7,Hyperlink:8,Merge:9},cS={A3:{width:841.89,height:1190.55},A4:{width:595.28,height:841.89},A5:{width:419.53,height:595.28},LETTER:{width:612,height:792},LEGAL:{width:612,height:1008},TABLOID:{width:792,height:1224}},lS=1.2,uS=72/96;function dS(e,t=1){return{left:(3+e.borderInsets.left)*t,right:(3+e.borderInsets.right)*t,top:(2+e.borderInsets.top)*t,bottom:(2+e.borderInsets.bottom)*t}}function fS(e,t,n,r){let i=new ox,a=new Set;t.showGridLines&&pS(i,e,t);for(let t of e.cells)t.fillColor&&mS(i,t,a);for(let t of e.cells)_S(i,t);let o=e.scaleFactor;for(let t of e.cells)t.text&&yS(i,t,n,a,o);return t.showSheetNames&&MS(i,e,t,n),t.showPageNumbers&&NS(i,e,t,n,r),{stream:i,alphaValues:a}}function pS(e,t,n){if(t.columnWidths.length===0||t.rowHeights.length===0)return;let r=n.gridLineColor;e.save(),e.setStrokeColor(r),e.setLineWidth(.25);let i=t.rowYPositions[0],a=t.rowYPositions.length-1,o=t.rowYPositions[a]-t.rowHeights[a];for(let n=0;n<=t.columnWidths.length;n++){let r=n<t.columnWidths.length?t.columnOffsets[n]:t.columnOffsets[n-1]+t.columnWidths[n-1];e.moveTo(r,i),e.lineTo(r,o)}let s=t.columnOffsets[0],c=t.columnOffsets.length-1,l=t.columnOffsets[c]+t.columnWidths[c];for(let n=0;n<=t.rowYPositions.length;n++){let r=n<t.rowYPositions.length?t.rowYPositions[n]:t.rowYPositions[n-1]-t.rowHeights[n-1];e.moveTo(s,r),e.lineTo(l,r)}e.stroke(),e.restore()}function mS(e,t,n){if(!t.fillColor)return;let r=t.fillColor.a;if(r!==void 0&&r<1){let i=DS(r);n.add(r),e.save(),e.setGraphicsState(i),e.fillRect(t.rect.x,t.rect.y,t.rect.width,t.rect.height,t.fillColor),e.restore()}else e.fillRect(t.rect.x,t.rect.y,t.rect.width,t.rect.height,t.fillColor)}function hS(e){return typeof e==`number`?e<=90?e:-(e-90):0}function gS(e,t){let n=hS(e);if(n===0)return 0;let r=Math.abs(n);if(r<.01||r>89.99)return 0;let i=r*Math.PI/180,a=t*Math.cos(i)/Math.sin(i);return n<0?-a:a}function _S(e,t){let{rect:n,borders:r,textRotation:i}=t,{x:a,y:o,width:s,height:c}=n,l=gS(i,c);r.top&&vS(e,r.top,a+l,o+c,a+s+l,o+c,!0),r.bottom&&vS(e,r.bottom,a,o,a+s,o,!0),r.left&&vS(e,r.left,a,o,a+l,o+c,!1),r.right&&vS(e,r.right,a+s,o,a+s+l,o+c,!1)}function vS(e,t,n,r,i,a,o){if(t.isDouble){let s=.4,c=Math.min(t.width,.25);o?(e.drawLine(n,r+s,i,a+s,t.color,c,t.dashPattern),e.drawLine(n,r-s,i,a-s,t.color,c,t.dashPattern)):(e.drawLine(n+s,r,i+s,a,t.color,c,t.dashPattern),e.drawLine(n-s,r,i-s,a,t.color,c,t.dashPattern))}else e.drawLine(n,r,i,a,t.color,t.width,t.dashPattern)}function yS(e,t,n,r,i=1){let{rect:a,text:o,fontSize:s,horizontalAlign:c,verticalAlign:l,wrapText:u}=t;if(!o&&!t.richText)return;let d=dS(t,i),f=a.width-d.left-d.right,p=a.height-d.top-d.bottom;if(f<=0||p<=0)return;let m=t.indent*10*i,h=a.width+(t.textOverflowWidth||0);e.save();let g=gS(t.textRotation,a.height);g===0?e.rect(a.x,a.y,h,a.height):(e.moveTo(a.x,a.y),e.lineTo(a.x+h,a.y),e.lineTo(a.x+h+g,a.y+a.height),e.lineTo(a.x+g,a.y+a.height),e.closePath()),e.clip(),e.endPath();let _=t.textColor.a;if(_!==void 0&&_<1&&(r.add(_),e.setGraphicsState(DS(_))),t.textRotation===`vertical`){ES(e,t,n,m,i),e.restore();return}if(typeof t.textRotation==`number`&&t.textRotation!==0){xS(e,t,n,m,i),e.restore();return}if(t.richText&&t.richText.length>0){bS(e,t,n,m,i),e.restore();return}let v=n.hasEmbeddedFont()?n.getEmbeddedResourceName():n.ensureFont(Vx(t.fontFamily,t.bold,t.italic)),y=e=>n.measureText(e,v,s),b=f-m,x=u?jS(o,y,b):o.split(/\r?\n/),S=s*lS,C=n.getFontAscent(v,s),ee=OS(l,a,x.length*S,C,d.top,d.bottom);e.setFillColor(t.textColor),e.beginText(),e.setFont(v,s);for(let t=0;t<x.length;t++){let r=x[t],i=ee-t*S,o=kS(c,a,y(r),m,d.left,d.right);e.setTextMatrix(1,0,0,1,o,i);let s=n.encodeText(r,v);s?e.showTextHex(s):e.showText(r)}e.endText(),AS(e,t,x,S,ee,y,v,n,m,d),e.restore()}function bS(e,t,n,r,i=1){let{rect:a,horizontalAlign:o,verticalAlign:s,wrapText:c}=t,l=t.richText,u=dS(t,i),d=t.fontSize;for(let e of l)e.fontSize>d&&(d=e.fontSize);let f=d,p=f*lS,m=n.hasEmbeddedFont(),h=e=>m?n.getEmbeddedResourceName():n.ensureFont(Vx(e.fontFamily,e.bold,e.italic));if(c){let t=a.width-u.left-u.right-r;if(t<=0)return;let i=l.map(e=>e.text).join(``),c=h(l[0]),d=jS(i,e=>n.measureText(e,c,f),t),m=[];for(let e=0;e<l.length;e++)for(let t=0;t<l[e].text.length;t++)m.push(e);let g=h(l[0]),_=n.getFontAscent(g,f),v=OS(s,a,d.length*p,_,u.top,u.bottom),y=0;for(let t=0;t<d.length;t++){let s=v-t*p,c=d[t].length,f=[],g=y;for(let e=0;e<c;e++){let n=m[y+e]??m.length-1,r=f[f.length-1];r&&r.run===l[n]?r.text+=d[t][e]:f.push({run:l[n],text:d[t][e],resourceName:h(l[n])})}for(y+=c;y<m.length&&y<g+c+1;){let e=t+1<d.length?i.indexOf(d[t+1],y):i.length;if(e>y){y=e;break}break}let _=0;for(let e of f)_+=n.measureText(e.text,e.resourceName,e.run.fontSize);let b=kS(o,a,_,r,u.left,u.right);for(let t of f){let{run:r,text:i,resourceName:a}=t,o=n.measureText(i,a,r.fontSize);e.setFillColor(r.textColor),e.beginText(),e.setFont(a,r.fontSize),e.setTextMatrix(1,0,0,1,b,s);let c=n.encodeText(i,a);if(c?e.showTextHex(c):e.showText(i),e.endText(),r.strike){let t=s+n.getFontDescent(a,r.fontSize)+r.fontSize*.3;e.drawLine(b,t,b+o,t,r.textColor,.5)}if(r.underline){let t=s+n.getFontDescent(a,r.fontSize)*.5;e.drawLine(b,t,b+o,t,r.textColor,.5)}b+=o}}return}let g=0,_=[];for(let e of l){let t=h(e),r=n.measureText(e.text,t,e.fontSize);_.push({resourceName:t,width:r}),g+=r}let v=_[0]?.resourceName??`F1`,y=OS(s,a,p,n.getFontAscent(v,f),u.top,u.bottom),b=kS(o,a,g,r,u.left,u.right);for(let t=0;t<l.length;t++){let r=l[t],{resourceName:i}=_[t];e.setFillColor(r.textColor),e.beginText(),e.setFont(i,r.fontSize),e.setTextMatrix(1,0,0,1,b,y);let a=n.encodeText(r.text,i);a?e.showTextHex(a):e.showText(r.text),e.endText();let o=_[t].width;if(r.strike){let t=y+n.getFontDescent(i,r.fontSize)+r.fontSize*.3;e.drawLine(b,t,b+o,t,r.textColor,.5)}if(r.underline){let t=y+n.getFontDescent(i,r.fontSize)*.5;e.drawLine(b,t,b+o,t,r.textColor,.5)}b+=_[t].width}}function xS(e,t,n,r,i=1){let{rect:a,wrapText:o}=t,{fontSize:s}=t,c=dS(t,i),l=n.hasEmbeddedFont()?n.getEmbeddedResourceName():n.ensureFont(Vx(t.fontFamily,t.bold,t.italic)),u=hS(t.textRotation),d=u*Math.PI/180,f=Math.cos(d),p=Math.sin(d),m=Math.abs(p),h=Math.abs(f),g=a.width-c.left-c.right,_=a.height-c.top-c.bottom,v;v=m>.01&&h>.01?Math.min(_/m,g/h):m>.01?_/m:g;let y=e=>n.measureText(e,l,s),b;b=o?jS(t.text,y,Math.max(v-1,1)):t.text.split(/\r?\n/);let x=s*lS,S=b.length*x;if(!o){let e=0;for(let t of b){let n=y(t);n>e&&(e=n)}let t=e*h+S*m,n=e*m+S*h;if(g>0&&_>0&&(t>g||n>_)){let e=Math.min(g/t,_/n);e<1&&(s*=e)}}let C=s*lS,ee=n.getFontAscent(l,s),te=Math.abs(u-90)<.01,ne=Math.abs(u+90)<.01;e.setFillColor(t.textColor),te?SS(e,t,b,n,l,s,C,ee,c):ne?CS(e,t,b,n,l,s,C,ee,c):wS(e,t,b,n,l,s,C,ee,f,p,r)}function SS(e,t,n,r,i,a,o,s,c){let{rect:l,horizontalAlign:u,verticalAlign:d}=t,f=n.length*o,p;p=u===`center`?l.x+l.width/2-f/2+s:u===`right`?l.x+l.width-c.right-f+s:l.x+c.left+s;for(let t=0;t<n.length;t++){let s=n[t],u=r.measureText(s,i,a),f=p+t*o,m;m=d===`top`?l.y+l.height-c.top-u:d===`middle`?l.y+(l.height-u)/2:l.y+c.bottom,m=Math.max(m,l.y+c.bottom),e.beginText(),e.setFont(i,a),e.setTextMatrix(0,1,-1,0,f,m),TS(e,r,s,i),e.endText()}}function CS(e,t,n,r,i,a,o,s,c){let{rect:l,horizontalAlign:u,verticalAlign:d}=t,f=n.length*o,p;p=u===`center`?l.x+l.width/2+f/2-o+s:u===`right`?l.x+l.width-c.right-o+s:l.x+c.left+f-o+s;for(let t=0;t<n.length;t++){let s=n[t],u=r.measureText(s,i,a),f=p-t*o,m;m=d===`top`?l.y+l.height-c.top:d===`middle`?l.y+(l.height+u)/2:l.y+c.bottom+u,m=Math.min(m,l.y+l.height-c.top),e.beginText(),e.setFont(i,a),e.setTextMatrix(0,-1,1,0,f,m),TS(e,r,s,i),e.endText()}}function wS(e,t,n,r,i,a,o,s,c,l,u){let{rect:d,horizontalAlign:f,verticalAlign:p}=t,m=dS(t),h=0;for(let e of n){let t=r.measureText(e,i,a);t>h&&(h=t)}let g=n.length*o,_=Math.abs(l),v=Math.abs(c),y=h*v+g*_,b=h*_+g*v,x=gS(t.textRotation,d.height)/2,S=f===`left`?u/2:f===`right`?-u/2:0,C;C=p===`top`?d.y+d.height-m.top-b/2:p===`bottom`?d.y+m.bottom+b/2:d.y+d.height/2;let ee=d.height>0?(C-d.y)/d.height:.5,te=x*2*ee,ne;ne=f===`right`?d.x+d.width-m.right-y/2+S+te:f===`left`?d.x+m.left+y/2+S+te:d.x+d.width/2+S+te;for(let t=0;t<n.length;t++){let u=n[t],d=r.measureText(u,i,a),f=(t-(n.length-1)/2)*o,p=-d/2,m=-s/2-f,h=ne+p*c-m*l,g=C+p*l+m*c;e.beginText(),e.setFont(i,a),e.setTextMatrix(c,l,-l,c,h,g),TS(e,r,u,i),e.endText()}}function TS(e,t,n,r){let i=t.encodeText(n,r);i?e.showTextHex(i):e.showText(n)}function ES(e,t,n,r,i=1){let{rect:a,text:o,fontSize:s,horizontalAlign:c,verticalAlign:l}=t,u=dS(t,i),d=n.hasEmbeddedFont()?n.getEmbeddedResourceName():n.ensureFont(Vx(t.fontFamily,t.bold,t.italic)),f=s*1.3,p=n.getFontAscent(d,s),m=o.split(/\r?\n/),h=s*1.4,g=m.length*h,_;_=c===`center`?a.x+a.width/2-g/2+h/2:c===`right`?a.x+a.width-u.right-g+h/2:a.x+u.left+h/2,e.setFillColor(t.textColor);for(let t=0;t<m.length;t++){let r=m[t],i=_+t*h,o=r.length*f,c;c=l===`middle`?a.y+a.height/2+o/2-p:l===`bottom`?a.y+u.bottom+o-p:a.y+a.height-u.top-p;for(let t of r){if(c<a.y+u.bottom)break;let r=n.measureText(t,d,s);e.beginText(),e.setFont(d,s),e.setTextMatrix(1,0,0,1,i-r/2,c),TS(e,n,t,d),e.endText(),c-=f}}}function DS(e){return`GS${Math.round(e*1e4)}`}function OS(e,t,n,r,i=2,a=i){let o;switch(e){case`top`:o=t.y+t.height-i-r;break;case`middle`:o=t.y+t.height/2+n/2-r;break;default:o=t.y+a+(n-r);break}let s=t.y+t.height-i-r;o>s&&(o=s);let c=t.y+a;return o<c&&(o=c),o}function kS(e,t,n,r=0,i=3,a=i){let o;switch(e){case`center`:o=t.x+(t.width-n)/2;break;case`right`:o=t.x+t.width-a-n;break;default:o=t.x+i+r;break}let s=t.x+i;return o<s&&(o=s),o}function AS(e,t,n,r,i,a,o,s,c,l){if(t.strike){let u=i+s.getFontDescent(o,t.fontSize)+t.fontSize*.3;for(let i=0;i<n.length;i++){let o=u-i*r,s=a(n[i]),d=kS(t.horizontalAlign,t.rect,s,c,l?.left,l?.right);e.drawLine(d,o,d+s,o,t.textColor,.5)}}if(t.underline){let u=s.getFontDescent(o,t.fontSize)*.5;for(let o=0;o<n.length;o++){let s=i-o*r+u,d=a(n[o]),f=kS(t.horizontalAlign,t.rect,d,c,l?.left,l?.right);e.drawLine(f,s,f+d,s,t.textColor,.5)}}}function jS(e,t,n){if(!e)return[``];let r=e.split(/\r?\n/),i=[];for(let e of r){if(!e){i.push(``);continue}let r=e.split(/\s+/),a=``;for(let e of r){if(!a){a=e;continue}let r=a+` `+e;t(r)<=n?a=r:(i.push(a),a=e)}a&&i.push(a)}return i.length>0?i:[``]}function MS(e,t,n,r){let i=t.sheetName,a=r.hasEmbeddedFont()?r.getEmbeddedResourceName():r.ensureFont(Vx(n.defaultFontFamily,!0,!1)),o=r.measureText(i,a,10),s=(t.width-o)/2,c=t.height-n.margins.top+5;e.save(),e.setFillColor({r:.3,g:.3,b:.3}),e.beginText(),e.setFont(a,10),e.setTextMatrix(1,0,0,1,s,c);let l=r.encodeText(i,a);l?e.showTextHex(l):e.showText(i),e.endText(),e.restore()}function NS(e,t,n,r,i){let a=`Page ${t.pageNumber} of ${i}`,o=r.ensureFont(Vx(n.defaultFontFamily,!1,!1)),s=r.measureText(a,o,9),c=(t.width-s)/2,l=Math.max(5,n.margins.bottom-15);e.save(),e.setFillColor({r:.5,g:.5,b:.5}),e.beginText(),e.setFont(o,9),e.setTextMatrix(1,0,0,1,c,l),e.showText(a),e.endText(),e.restore()}let PS={fontSize:54,color:{r:.75,g:.75,b:.75},opacity:.15,rotation:-45,fontFamily:`Helvetica`,bold:!1,italic:!1,repeatSpacingX:200,repeatSpacingY:200},FS={opacity:.15,rotation:0,scale:.5,repeatSpacingX:200,repeatSpacingY:200};function IS(e,t,n,r){return n.type===`text`?BS(e,t,LS(n),r):VS(e,t,RS(n))}function LS(e){return{...e,opacity:zS(e.opacity??PS.opacity),fontSize:Math.max(1,e.fontSize??PS.fontSize),repeatSpacingX:Math.max(10,e.repeatSpacingX??PS.repeatSpacingX),repeatSpacingY:Math.max(10,e.repeatSpacingY??PS.repeatSpacingY)}}function RS(e){return{...e,opacity:zS(e.opacity??FS.opacity),scale:Math.max(.01,e.scale??FS.scale),width:e.width===void 0?void 0:Math.max(1,e.width),height:e.height===void 0?void 0:Math.max(1,e.height),repeatSpacingX:Math.max(10,e.repeatSpacingX??FS.repeatSpacingX),repeatSpacingY:Math.max(10,e.repeatSpacingY??FS.repeatSpacingY)}}function zS(e){return Math.max(0,Math.min(1,e))}function BS(e,t,n,r){let i=n.fontSize??PS.fontSize,a=n.color??PS.color,o=n.opacity??PS.opacity,s=n.rotation??PS.rotation,c=n.fontFamily??PS.fontFamily,l=n.bold??PS.bold,u=n.italic??PS.italic,d=r.hasEmbeddedFont()?r.getEmbeddedResourceName():r.ensureFont(Vx(c,l,u)),f=r.measureText(n.text,d,i),p=i*.7,m=s*Math.PI/180,h=Math.cos(m),g=Math.sin(m),_=o<1,v=_?DS(o):``,y=(t,o)=>{let s=f/2,c=p/2,l=t-s*h+c*g,u=o-s*g-c*h;e.save(),_&&e.setGraphicsState(v),e.setFillColor(a),e.beginText(),e.setFont(d,i),e.setTextMatrix(h,g,-g,h,l,u);let m=r.encodeText(n.text,d);m?e.showTextHex(m):e.showText(n.text),e.endText(),e.restore()};if(n.repeat){let e=n.repeatSpacingX??PS.repeatSpacingX,r=n.repeatSpacingY??PS.repeatSpacingY;US(t.width,t.height,e,r,y)}else{let{cx:e,cy:r}=HS(t,n.position);y(e,r)}return{alphaValues:_?[o]:[],imageXObjects:[]}}function VS(e,t,n){let r=n.opacity??FS.opacity,i=n.rotation??FS.rotation,a=n.scale??FS.scale,o=r<1,s,c;if(n.width!==void 0&&n.height!==void 0)s=n.width,c=n.height;else{let e=Yb(n.data,n.format),r=Math.min(t.width,t.height)*a,i=Math.max(e.width,e.height),o=i>0?r/i:1;s=e.width*o,c=e.height*o}let l=i*Math.PI/180,u=Math.cos(l),d=Math.sin(l),f=o?DS(r):``,p=`WmImg`,m=(t,n)=>{e.save(),o&&e.setGraphicsState(f);let r=s/2,i=c/2,a=t-r*u+i*d,l=n-r*d-i*u;e.concat(s*u,s*d,-c*d,c*u,a,l),e.doXObject(p),e.restore()};if(n.repeat){let e=n.repeatSpacingX??FS.repeatSpacingX,r=n.repeatSpacingY??FS.repeatSpacingY;US(t.width,t.height,e,r,m)}else{let{cx:e,cy:r}=HS(t,n.position);m(e,r)}return{alphaValues:o?[r]:[],imageXObjects:[{name:p,data:n.data,format:n.format}]}}function HS(e,t){return!t||t===`center`?{cx:e.width/2,cy:e.height/2}:{cx:t.x,cy:t.y}}function US(e,t,n,r,i){let a=Math.max(e,t)*.5,o=0;for(let s=-a;s<t+a;s+=r){let t=o%2==1?n/2:0;for(let r=-a;r<e+a;r+=n)i(r+t,s);o++}}function WS(e){if(!e||e.length<6)return null;let t,n,r,i;if(e.length>=8?(t=parseInt(e.substring(0,2),16),n=parseInt(e.substring(2,4),16),r=parseInt(e.substring(4,6),16),i=parseInt(e.substring(6,8),16)):(t=255,n=parseInt(e.substring(0,2),16),r=parseInt(e.substring(2,4),16),i=parseInt(e.substring(4,6),16)),isNaN(n)||isNaN(r)||isNaN(i))return null;let a=t/255;return{r:n/255,g:r/255,b:i/255,...a<1?{a}:{}}}function GS(e){if(!e)return null;if(e.argb)return WS(e.argb);if(e.theme!==void 0){let t=KS(e.theme);if(!t)return null;let n=e.tint;return n!==void 0&&n!==0?qS(t,n):t}return null}function KS(e){let t=[{r:1,g:1,b:1},{r:0,g:0,b:0},{r:.906,g:.902,b:.902},{r:.267,g:.329,b:.416},{r:.267,g:.447,b:.769},{r:.929,g:.49,b:.192},{r:.647,g:.647,b:.647},{r:1,g:.753,b:0},{r:.357,g:.608,b:.835},{r:.439,g:.678,b:.278}];return e>=0&&e<t.length?t[e]:null}function qS(e,t){let n=e=>t<0?e*(1+t):e+(1-e)*t;return{r:Math.max(0,Math.min(1,n(e.r))),g:Math.max(0,Math.min(1,n(e.g))),b:Math.max(0,Math.min(1,n(e.b)))}}let JS={black:{r:0,g:0,b:0},white:{r:1,g:1,b:1},gridLine:{r:.816,g:.816,b:.816}};function YS(e,t,n){return{fontFamily:e?.name??t,fontSize:e?.size??n,bold:e?.bold??!1,italic:e?.italic??!1,strike:e?.strike??!1,underline:!!(e?.underline&&e.underline!==`none`),textColor:GS(e?.color)??JS.black}}function XS(e){if(!e)return null;if(e.type===`pattern`){if(e.pattern===`solid`&&e.fgColor)return GS(e.fgColor);if(e.pattern===`none`)return null;if(e.fgColor)return GS(e.fgColor)}return e.type===`gradient`&&e.stops&&e.stops.length>0?GS(e.stops[0].color):null}function ZS(e){switch(e){case`thin`:return .25;case`medium`:return .5;case`thick`:return 1;case`double`:return .25;case`hair`:return .1;case`dotted`:return .25;case`dashed`:return .25;case`dashDot`:return .25;case`dashDotDot`:return .25;case`slantDashDot`:return .25;case`mediumDashed`:return .5;case`mediumDashDot`:return .5;case`mediumDashDotDot`:return .5;default:return .25}}function QS(e){switch(e){case`dotted`:return[1,1];case`dashed`:case`mediumDashed`:return[3,2];case`dashDot`:case`mediumDashDot`:return[3,1,1,1];case`dashDotDot`:case`mediumDashDotDot`:return[3,1,1,1,1,1];case`slantDashDot`:return[4,2,1,2];case`hair`:return[.5,.5];default:return[]}}function $S(e){return!e||!e.style?null:{width:ZS(e.style),color:GS(e.color)??JS.black,dashPattern:QS(e.style),isDouble:e.style===`double`}}function eC(e){return e?{top:$S(e.top),right:$S(e.right),bottom:$S(e.bottom),left:$S(e.left)}:{top:null,right:null,bottom:null,left:null}}function tC(e){if(!e?.horizontal)return`left`;switch(e.horizontal){case`center`:case`centerContinuous`:return`center`;case`right`:return`right`;default:return`left`}}function nC(e){if(!e?.vertical)return`bottom`;switch(e.vertical){case`top`:return`top`;case`middle`:return`middle`;default:return`bottom`}}let rC=8.43;function iC(e,t,n){if(e?.horizontal&&e.horizontal!==`general`)return tC(e);if(t!==void 0)switch(t){case $.Number:case $.Date:return`right`;case $.Boolean:case $.Error:return`center`;case $.Formula:return typeof n==`number`||n instanceof Date?`right`:typeof n==`boolean`?`center`:`left`;default:return`left`}return`left`}async function aC(e,t,n){let r=oC(e,t,n);if(!r)return[cC(e,t)];let i=[],a=r.rowPages.length*r.colGroups.length;for(let o of r.rowPages)for(let s of r.colGroups)i.push(sC(r,o,s,i.length,e,t,n)),i.length<a&&await nl();return i.length>0&&e.images&&CC(e.images,i,r.scaleFactor),i}function oC(e,t,n){let{margins:r}=t,i=t.pageSize.width,a=t.pageSize.height;t.orientation===`landscape`&&([i,a]=[a,i]);let o=i-r.left-r.right,s=a-r.top-r.bottom,c=t.showSheetNames?20:0,l=t.showPageNumbers?20:0,u=s-c-l,d=dC(e),{columnWidths:f,visibleCols:p}=fC(e,d);if(p.length===0)return null;let m=f.reduce((e,t)=>e+t,0),h=t.scale;if(t.fitToPage&&m>0){let e=o/m;e<1&&(h*=e)}let g=f.map(e=>e*h),{rowHeights:_,visibleRows:v}=pC(e,h,d,n,t),y=_C(e),b=vC(_,u,typeof t.repeatRows==`number`?t.repeatRows:0,gC(e,v)),x=yC(g,o,e,p);return{pageWidth:i,pageHeight:a,contentWidth:o,headerHeight:c,scaleFactor:h,scaledColumnWidths:g,rowHeights:_,visibleRows:v,visibleCols:p,mergeMap:y,rowPages:b,colGroups:x,margins:r}}function sC(e,t,n,r,i,a,o){let{scaledColumnWidths:s,rowHeights:c,visibleRows:l,visibleCols:u,mergeMap:d,pageWidth:f,pageHeight:p,contentWidth:m,headerHeight:h,scaleFactor:g,margins:_}=e,v=[],y=n.map(e=>s[e]),b=y.reduce((e,t)=>e+t,0),x=[],S=_.left;b<m&&(S=_.left+(m-b)/2);for(let e of y)x.push(S),S+=e;let C=[],ee=[],te=p-_.top-h;for(let e of t){let t=c[e]??15*g;C.push(te),ee.push(t),te-=t}let ne=new Map;for(let e=0;e<t.length;e++){let r=t[e],s=l[r];for(let t=0;t<n.length;t++){let c=u[n[t]],f=`${s}:${c}`,p=d.get(f);if(p&&!p.isMaster)continue;let m=i.rows.get(s)?.cells.get(c),h=1,_=1;if(p&&p.isMaster){let e=c+p.colSpan-1;h=0;for(let r=t;r<n.length&&u[n[r]]<=e;r++)h++;let i=s+p.rowSpan-1;_=0;for(let e=r;e<l.length&&l[e]<=i;e++)_++;h=Math.max(h,1),_=Math.max(_,1)}let b=x[t],S=C[e],te=0;for(let e=0;e<h&&t+e<y.length;e++)te+=y[t+e];let re=0;for(let t=0;t<_&&e+t<ee.length;t++)re+=ee[e+t];let ie=S-re;v.push(bC(m,b,ie,te,re,h,_,a,o,g));let ae=v[v.length-1];p?.isMaster&&wC(ae,p,s,c,i),ne.set(`${e}:${t}`,ae)}}return SC(ne,t.length,n.length),TC(ne,t,n,l,u,y,d,o),{pageNumber:r+1,options:a,cells:v,width:f,height:p,sheetName:i.name,sheetCols:n.map(e=>u[e]),columnOffsets:x,columnWidths:y,sheetRows:t.map(e=>l[e]),rowYPositions:C,rowHeights:ee,images:[],scaleFactor:g}}function cC(e,t){let n=t.pageSize.width,r=t.pageSize.height;return t.orientation===`landscape`&&([n,r]=[r,n]),{pageNumber:1,options:t,cells:[],width:n,height:r,sheetName:e.name,sheetCols:[],columnOffsets:[],columnWidths:[],sheetRows:[],rowYPositions:[],rowHeights:[],images:[],scaleFactor:1}}function lC(e){let t=e.replace(/\$/g,``).toUpperCase(),n=0,r=0;for(;r<t.length&&t.charCodeAt(r)>=65&&t.charCodeAt(r)<=90;)n=n*26+(t.charCodeAt(r)-64),r++;let i=parseInt(t.substring(r),10);return{c:n-1,r:i-1}}function uC(e){let t=e.indexOf(`:`);if(t===-1){let t=lC(e);return{s:t,e:{...t}}}return{s:lC(e.slice(0,t)),e:lC(e.slice(t+1))}}function dC(e){let t=e.pageSetup?.printArea;if(!t||typeof t!=`string`)return null;let n=t.split(`&&`)[0].trim();if(!n)return null;try{let e=uC(n);return{startRow:e.s.r+1,endRow:e.e.r+1,startCol:e.s.c+1,endCol:e.e.c+1}}catch{return null}}function fC(e,t){let n=e.bounds;if(!(n.top>0&&n.left>0))return{columnWidths:[],visibleCols:[]};let r=t?.startCol??n.left,i=t?.endCol??n.right,a=[],o=[];for(let t=r;t<=i;t++){let n=e.columns.get(t);if(n?.hidden)continue;let r=(n?.width??rC)*7+5,i=Math.max(r*uS,3);a.push(i),o.push(t)}return{columnWidths:a,visibleCols:o}}function pC(e,t,n,r,i){let a=e.bounds;if(a.top<=0)return{rowHeights:[],visibleRows:[]};let o=n?.startRow??a.top,s=n?.endRow??a.bottom,c=[],l=[];for(let n=o;n<=s;n++){let a=e.rows.get(n);if(a?.hidden)continue;let o;if(a?.height&&a.customHeight)o=a.height;else if(a?.height)o=a.height;else if(o=15,a)for(let n of a.cells.values()){let a=mC(n),s=hC(n,a,t,e,r,i),c=a*lS,l=n.style?.border?.top?.style?ZS(n.style.border.top.style)/2:0,u=n.style?.border?.bottom?.style?ZS(n.style.border.bottom.style)/2:0,d=a+(s-1)*c+(2+l+u)*2;d>o&&(o=d)}c.push(o*t),l.push(n)}return{rowHeights:c,visibleRows:l}}function mC(e){let t=e.style?.font?.size??11;if(e.type===$.RichText){let n=e.value;if(n&&typeof n==`object`&&`richText`in n){let e=n.richText;for(let n of e){let e=n.font?.size??t;e>t&&(t=e)}}}return t}function hC(e,t,n,r,i,a){let o=typeof e.text==`string`?e.text:String(e.text??``),s=Math.max(1,(o.match(/\n/g)??[]).length+1);if(!e.style?.alignment?.wrapText||o.length===0)return s;let c=((r.columns.get(e.col)?.width??rC)*7+5)*uS*n,l=e.style.alignment.indent??0,u=e.style?.border?.left?.style?ZS(e.style.border.left.style)/2:0,d=e.style?.border?.right?.style?ZS(e.style.border.right.style)/2:0,f=3+u+(3+d)+l*10,p=Math.max(c-f,1),m=t*n,h=YS(e.style.font,a.defaultFontFamily,a.defaultFontSize),g=Vx(h.fontFamily,h.bold,h.italic),_=i.hasEmbeddedFont()?i.getEmbeddedResourceName():i.ensureFont(g),v=jS(o,e=>i.measureText(e,_,m),p);return Math.max(s,v.length)}function gC(e,t){let n=new Set,r=e.rowBreaks??[];if(r.length===0)return n;let i=new Map;for(let e=0;e<t.length;e++)i.set(t[e],e);for(let e of r){let t=i.get(e);t!==void 0&&n.add(t+1)}return n}function _C(e){let t=new Map,n=e.merges;if(!n||n.length===0)return t;for(let e of n){let n=uC(e),r=n.s.r+1,i=n.s.c+1,a=n.e.r+1,o=n.e.c+1,s=a-r+1,c=o-i+1;for(let e=r;e<=a;e++)for(let n=i;n<=o;n++)t.set(`${e}:${n}`,{isMaster:e===r&&n===i,rowSpan:s,colSpan:c})}return t}function vC(e,t,n,r){if(e.length===0)return[[]];let i=[],a=[],o=0,s=!0,c=0,l=()=>{c=0;for(let r=0;r<n&&r<e.length&&!(o+e[r]>t&&a.length>0);r++)a.push(r),o+=e[r],c++};for(let u=0;u<e.length;u++){let d=e[u],f=t;for(;;){let e=r.has(u)&&a.length>0;if((e||o+d>f)&&a.length>0){if(!e&&!s&&a.length>0&&a.length===c){a=[],o=0,c=0;continue}i.push(a),a=[],o=0,c=0,s=!1,l();continue}if(!s&&u<n&&a.includes(u))break;a.push(u),o+=d;break}}return a.length>0&&i.push(a),i.length>0?i:[[]]}function yC(e,t,n,r){if(e.length===0)return[[]];let i=new Set,a=n.colBreaks??[];if(a.length>0){let e=new Map;for(let t=0;t<r.length;t++)e.set(r[t],t);for(let t of a){let n=e.get(t);n!==void 0&&i.add(n+1)}}let o=[],s=[],c=0;for(let n=0;n<e.length;n++){let r=e[n];(i.has(n)&&s.length>0||c+r>t+.01)&&s.length>0&&(o.push(s),s=[],c=0),s.push(n),c+=r}return s.length>0&&o.push(s),o.length>0?o:[Array.from({length:e.length},(e,t)=>t)]}function bC(e,t,n,r,i,a,o,s,c,l){let u=e?.text??``,d=e?.style??{},f=YS(d.font,s.defaultFontFamily,s.defaultFontSize),p=f.fontSize*l;if(c.hasEmbeddedFont())c.trackText(u);else{let e=Vx(f.fontFamily,f.bold,f.italic);c.ensureFont(e)}let m=EC(e,s,c,l),h=eC(d.border);return{text:u,rect:{x:t,y:n,width:r,height:i},fontFamily:f.fontFamily,fontSize:p,bold:f.bold,italic:f.italic,strike:f.strike,underline:f.underline,textColor:f.textColor,fillColor:XS(d.fill),horizontalAlign:iC(d.alignment,e?.type,e?.result),verticalAlign:nC(d.alignment),wrapText:d.alignment?.wrapText??!1,borders:h,borderInsets:{top:(h.top?.width??0)/2,right:(h.right?.width??0)/2,bottom:(h.bottom?.width??0)/2,left:(h.left?.width??0)/2},colSpan:a,rowSpan:o,hyperlink:e?.hyperlink??null,richText:m,indent:d.alignment?.indent??0,textRotation:d.alignment?.textRotation===255?`vertical`:d.alignment?.textRotation??0,textOverflowWidth:0}}function xC(e){let t=e.width*1e3;e.dashPattern.length===0&&(t+=100),e.isDouble&&(t+=50);let n=e.color.r+e.color.g+e.color.b;return t+=(3-n)*10,t}function SC(e,t,n){for(let r=0;r<t;r++)for(let t=0;t<n;t++){let n=e.get(`${r}:${t}`);if(n){if(n.borders.right){let i=e.get(`${r}:${t+1}`);if(i?.borders.left){let e=xC(n.borders.right);xC(i.borders.left)>e?(n.borderInsets.right=i.borders.left.width/2,n.borders.right=null):(i.borderInsets.left=n.borders.right.width/2,i.borders.left=null)}}if(n.borders.bottom){let i=e.get(`${r+1}:${t}`);if(i?.borders.top){let e=xC(n.borders.bottom);xC(i.borders.top)>e?(n.borderInsets.bottom=i.borders.top.width/2,n.borders.bottom=null):(i.borderInsets.top=n.borders.bottom.width/2,i.borders.top=null)}}}}}function CC(e,t,n){for(let r of e){let e=r.range.tl,i=(e.nativeCol??e.col??0)+1,a=(e.nativeRow??e.row??0)+1,o=t.find(e=>e.sheetCols.includes(i)&&e.sheetRows.includes(a));if(!o)continue;let s=o.sheetCols.indexOf(i),c=o.sheetRows.indexOf(a),l=o.columnOffsets[s]??o.options.margins.left,u=o.rowYPositions[c]??o.height-o.options.margins.top-(o.options.showSheetNames?20:0),d=((e.nativeColOff??0)/12700||0)*n,f=((e.nativeRowOff??0)/12700||0)*n,p=l+d,m=u-f,h=100,g=100;if(r.range.ext)h=(r.range.ext.width??100)*.75*n,g=(r.range.ext.height??100)*.75*n;else if(r.range.br){let e=r.range.br,t=(e.nativeCol??e.col??0)+1,i=(e.nativeRow??e.row??0)+1,a=o.sheetCols.indexOf(t),l=o.sheetRows.indexOf(i),u=a>=0?o.columnOffsets[a]:p+(o.columnWidths[s]??100),d=l>=0?o.rowYPositions[l]:m-(o.rowHeights[c]??100),f=((e.nativeColOff??0)/12700||0)*n,_=((e.nativeRowOff??0)/12700||0)*n,v=u+f,y=d-_;h=v-p,g=m-y}o.images.push({data:r.data,format:r.format,rect:{x:p,y:m-g,width:Math.abs(h),height:Math.abs(g)}})}}function wC(e,t,n,r,i){if(t.colSpan>1){let a=r+t.colSpan-1,o=i.rows.get(n)?.cells.get(a);if(o?.style?.border?.right){let t=eC({right:o.style.border.right});t.right&&(e.borders.right=t.right,e.borderInsets.right=t.right.width/2)}}if(t.rowSpan>1){let a=n+t.rowSpan-1,o=i.rows.get(a)?.cells.get(r);if(o?.style?.border?.bottom){let t=eC({bottom:o.style.border.bottom});t.bottom&&(e.borders.bottom=t.bottom,e.borderInsets.bottom=t.bottom.width/2)}}}function TC(e,t,n,r,i,a,o,s){for(let c=0;c<t.length;c++)for(let l=0;l<n.length;l++){let u=e.get(`${c}:${l}`);if(!u||u.wrapText||u.colSpan>1||!u.text||u.richText||typeof u.textRotation==`number`&&u.textRotation!==0||u.textRotation===`vertical`)continue;let d=s.hasEmbeddedFont()?s.getEmbeddedResourceName():s.ensureFont(Vx(u.fontFamily,u.bold,u.italic)),f=s.measureText(u.text,d,u.fontSize),p=u.rect.width-(3+u.borderInsets.left)-(3+u.borderInsets.right);if(f<=p)continue;let m=f-p,h=0;for(let s=l+1;s<n.length;s++){let l=r[t[c]],u=i[n[s]];if(o.has(`${l}:${u}`)||e.get(`${c}:${s}`)?.text||(h+=a[s],h>=m))break}h>0&&(u.textOverflowWidth=Math.min(m,h))}}function EC(e,t,n,r){if(!e||e.type!==$.RichText)return null;let i=e.value;if(!i||typeof i!=`object`||!(`richText`in i))return null;let a=i.richText;return a.length===0?null:a.map(e=>{let i=YS(e.font,t.defaultFontFamily,t.defaultFontSize);if(n.hasEmbeddedFont())n.trackText(e.text);else{let e=Vx(i.fontFamily,i.bold,i.italic);n.ensureFont(e)}return{text:e.text,fontFamily:i.fontFamily,fontSize:i.fontSize*r,bold:i.bold,italic:i.italic,strike:i.strike,underline:i.underline,textColor:i.textColor}})}async function DC(e,t){let n=OC(e,t);for(let e of n.sheets)await kC(n,e,t);return AC(n,e,t)}function OC(e,t){let n=LC(e,t?.sheets);if(n.length===0)throw new dx(`No sheets to export. The workbook is empty or no sheets matched.`);let r=new Hx,i=new gx;if(t?.font)try{let e=Jx(t.font);r.registerEmbeddedFont(e)}catch(e){throw new fx(`Failed to parse TrueType font`,{cause:e})}return{sheets:n,fontManager:r,writer:i,allPages:[]}}async function kC(e,t,n){try{let r=await aC(t,RC(n,t),e.fontManager);e.allPages.push(...r)}catch(e){throw new fx(`Failed to layout sheet "${t.name}"`,{cause:e})}}async function AC(e,t,n){let{allPages:r,fontManager:i,writer:a,sheets:o}=e,s=RC(n,o[0]);jC(r,s,o),MC(r),NC(r,i);let c=s.watermark;if(c&&c.type===`text`){let e=c.fontFamily??`Helvetica`,t=c.bold??!1,n=c.italic??!1;i.hasEmbeddedFont()?i.trackText(c.text):i.ensureFont(Vx(e,t,n))}let{pageObjNums:l,sheetFirstPage:u,pagesTreeObjNum:d}=await PC(r,i,a,i.writeFontResources(a),c);return IC(a,l,d,u,s,t,n)}function jC(e,t,n){e.length===0&&e.push({pageNumber:1,options:t,cells:[],width:t.pageSize.width,height:t.pageSize.height,sheetName:n[0]?.name??`Sheet1`,sheetCols:[],columnOffsets:[],columnWidths:[],sheetRows:[],rowYPositions:[],rowHeights:[],images:[],scaleFactor:1})}function MC(e){for(let t=0;t<e.length;t++)e[t].pageNumber=t+1}function NC(e,t){if(t.hasEmbeddedFont())for(let n of e)n.options.showSheetNames&&t.trackText(n.sheetName);for(let n of e)n.options.showPageNumbers&&t.ensureFont(Vx(n.options.defaultFontFamily,!1,!1));if(!t.hasEmbeddedFont())for(let n of e)n.options.showSheetNames&&t.ensureFont(Vx(n.options.defaultFontFamily,!0,!1))}async function PC(e,t,n,r,i){let a=[],o=n.allocObject(),s=new Map,c=e.length;for(let l=0;l<e.length;l++)FC(e[l],t,n,r,c,a,o,s,i),l<e.length-1&&await nl();return{pageObjNums:a,sheetFirstPage:s,pagesTreeObjNum:o}}function FC(e,t,n,r,i,a,o,s,c){try{let{stream:l,alphaValues:u}=fS(e,e.options,t,i),d=new Map;if(e.images.length>0)for(let t=0;t<e.images.length;t++){let r=e.images[t],i=`Im${t+1}`,a=Qb(n,r.data,r.format);d.set(i,a),l.drawImage(i,r.rect.x,r.rect.y,r.rect.width,r.rect.height)}let f;if(c&&UC(c,e)){let r=new ox,i=IS(r,e,c,t);for(let e of i.alphaValues)u.add(e);for(let e of i.imageXObjects){let t=Qb(n,e.data,e.format);d.set(e.name,t)}f=n.allocObject(),n.addStreamObject(f,new Q,r)}let p=n.allocObject();n.addStreamObject(p,new Q,l);let m;m=f?(c?.placement??`under`)===`over`?`[${Z(p)} ${Z(f)}]`:`[${Z(f)} ${Z(p)}]`:Z(p);let h=n.allocObject(),g=t.buildFontDictString(r),_=new Q().set(`Font`,g);if(d.size>0){let e=[`<<`];for(let[t,n]of d)e.push(`/${t} ${Z(n)}`);e.push(`>>`),_.set(`XObject`,e.join(`
|
|
452
|
+
`))}if(u.size>0){let e=[`<<`];for(let t of u){let r=n.allocObject(),i=new Q().set(`Type`,`/ExtGState`).set(`ca`,X(t)).set(`CA`,X(t));n.addObject(r,i),e.push(`/${DS(t)} ${Z(r)}`)}e.push(`>>`),_.set(`ExtGState`,e.join(`
|
|
453
|
+
`))}n.addObject(h,_);let v=[];for(let t of e.cells)if(t.hyperlink){let e=n.allocObject(),r=`[${X(t.rect.x)} ${X(t.rect.y)} ${X(t.rect.x+t.rect.width)} ${X(t.rect.y+t.rect.height)}]`,i=new Q().set(`Type`,`/Annot`).set(`Subtype`,`/Link`).set(`Rect`,r).set(`Border`,`[0 0 0]`).set(`A`,`<< /Type /Action /S /URI /URI (${t.hyperlink.replace(/[()\\]/g,`\\$&`)}) >>`);n.addObject(e,i),v.push(e)}let y=n.addPage({parentRef:o,width:e.width,height:e.height,contentsRef:m,resourcesRef:h,annotRefs:v.length>0?v:void 0});a.push(y),s.has(e.sheetName)||s.set(e.sheetName,a.length-1)}catch(t){throw new fx(`Failed to render page ${e.pageNumber} of "${e.sheetName}"`,{cause:t})}}function IC(e,t,n,r,i,a,o){let s=`[`+t.map(e=>Z(e)).join(` `)+`]`,c=new Q().set(`Type`,`/Pages`).set(`Kids`,s).set(`Count`,String(t.length));e.addObject(n,c);let l;if(r.size>1&&(l=HC(e,r,t)),e.addCatalog(n,l),e.addInfoDict({title:i.title||a.title||void 0,author:i.author||a.creator||void 0,subject:i.subject||a.subject||void 0,creator:i.creator}),o?.encryption){let t=nx(o.encryption);e.setEncryption(t)}return e.build()}function LC(e,t){let n=e.sheets;if(!t||t.length===0)return n.filter(e=>e.state!==`hidden`&&e.state!==`veryHidden`);let r=[];for(let e of t)if(typeof e==`string`){let t=n.find(t=>t.name.toLowerCase()===e.toLowerCase());t&&r.push(t)}else if(typeof e==`number`){let t=n[e-1];t&&r.push(t)}return r}function RC(e,t){let n=t?.pageSetup,r=BC(e?.pageSize,n?.paperSize),i=e?.orientation??(n?.orientation===`landscape`?`landscape`:`portrait`),a=VC(e?.margins,n?.margins),o=WS(e?.gridLineColor??`FFD0D0D0`)??{r:.816,g:.816,b:.816},s=e?.repeatRows??!1;if(s===!1&&n?.printTitlesRow){let e=n.printTitlesRow.match(/^(\d+)(?::(\d+))?$/);e&&(s=parseInt(e[2]??e[1],10))}return{pageSize:r,orientation:i,margins:a,fitToPage:e?.fitToPage===void 0?!0:e.fitToPage,scale:Math.max(.1,Math.min(3,e?.scale??(e?.fitToPage===void 0||e.fitToPage?1:n?.scale?n.scale/100:1))),showGridLines:e?.showGridLines??n?.showGridLines??!1,gridLineColor:o,repeatRows:s,defaultFontFamily:e?.defaultFontFamily??`Helvetica`,defaultFontSize:e?.defaultFontSize??11,showSheetNames:e?.showSheetNames??!1,showPageNumbers:e?.showPageNumbers??!1,title:e?.title??``,author:e?.author??``,subject:e?.subject??``,creator:e?.creator??`excelts`,watermark:e?.watermark}}let zC={1:cS.LETTER,5:cS.LEGAL,9:cS.A4,8:cS.A3,11:cS.A5,17:cS.TABLOID};function BC(e,t){return e?typeof e==`string`?cS[e]??cS.A4:e:t===void 0?cS.A4:zC[t]??cS.A4}function VC(e,t){let n=t?{top:t.top*72,right:t.right*72,bottom:t.bottom*72,left:t.left*72}:{top:72,right:72,bottom:72,left:72};return e?{top:e.top??n.top,right:e.right??n.right,bottom:e.bottom??n.bottom,left:e.left??n.left}:n}function HC(e,t,n){let r=e.allocObject(),i=Array.from(t.entries()),a=[];for(let t=0;t<i.length;t++)a.push(e.allocObject());for(let t=0;t<i.length;t++){let[o,s]=i[t],c=n[s],l=new Q().set(`Title`,Ib(o)).set(`Parent`,Z(r)).set(`Dest`,`[${Z(c)} /Fit]`);t>0&&l.set(`Prev`,Z(a[t-1])),t<i.length-1&&l.set(`Next`,Z(a[t+1])),e.addObject(a[t],l)}let o=new Q().set(`Type`,`/Outlines`).set(`First`,Z(a[0])).set(`Last`,Z(a[a.length-1])).set(`Count`,String(i.length));return e.addObject(r,o),r}function UC(e,t){if(e.pages&&e.pages.length>0&&!e.pages.includes(t.pageNumber))return!1;if(e.sheets&&e.sheets.length>0){let n=t.sheetName.toLowerCase();if(!e.sheets.some(e=>e.toLowerCase()===n))return!1}return!0}async function WC(e,t){return DC(GC(e),t)}function GC(e){return Array.isArray(e)?{sheets:[KC({data:e})]}:`sheets`in e?{title:e.title,creator:e.author,sheets:e.sheets.map((e,t)=>KC(e,t))}:{sheets:[KC(e)]}}function KC(e,t){let n=e.data,r=e.name??`Sheet${(t??0)+1}`,i=e.columns?.map(e=>typeof e==`number`?void 0:e.header),a=i?.some(e=>e!==void 0)??!1,o=0;for(let e of n)e.length>o&&(o=e.length);let s=Math.max(o,e.columns?.length??0),c=n.length+ +!!a;if(e.images)for(let t of e.images){let e=t.col+1,n=t.row+1;e>s&&(s=e),n>c&&(c=n)}if(s===0)return{name:r,bounds:{top:0,left:0,bottom:0,right:0},columns:new Map,rows:new Map};let l=new Map;if(e.columns)for(let t=0;t<e.columns.length;t++){let n=e.columns[t],r=typeof n==`number`?n:n.width;l.set(t+1,{width:r??12})}for(let e=1;e<=s;e++)l.has(e)||l.set(e,{width:12});let u=new Map,d=1;if(a&&i){let e=new Map;for(let t=0;t<i.length;t++){let n=i[t];n!==void 0&&e.set(t+1,{type:$.String,value:n,text:n,col:t+1,style:{font:{bold:!0}}})}u.set(1,{cells:e}),d=2}for(let e=0;e<n.length;e++){let t=e+d,r=n[e],i=new Map;for(let e=0;e<r.length;e++){let t=qC(r[e],e+1);t&&i.set(e+1,t)}u.set(t,{cells:i})}let f;if(e.images&&e.images.length>0){f=e.images.map(e=>({data:e.data,format:e.format,range:{tl:{col:e.col,row:e.row},ext:{width:e.width,height:e.height}}}));for(let e=1;e<=s;e++)l.has(e)||l.set(e,{width:12});for(let e=1;e<=c;e++)u.has(e)||u.set(e,{cells:new Map})}return{name:r,bounds:{top:1,left:1,bottom:c,right:s},columns:l,rows:u,images:f}}function qC(e,t){if(e==null)return null;if(typeof e==`object`&&!(e instanceof Date)&&`value`in e){let n=e,r=qC(n.value,t);if(!r)return null;let i={};return(n.bold||n.italic||n.fontSize||n.fontColor)&&(i.font={bold:n.bold,italic:n.italic,size:n.fontSize,color:n.fontColor?{argb:n.fontColor}:void 0}),n.fillColor&&(i.fill={type:`pattern`,pattern:`solid`,fgColor:{argb:n.fillColor}}),n.align&&(i.alignment={horizontal:n.align}),r.style=i,r}return typeof e==`string`?{type:$.String,value:e,text:e,col:t}:typeof e==`number`?{type:$.Number,value:e,text:String(e),col:t}:typeof e==`boolean`?{type:$.Boolean,value:e,text:e?`TRUE`:`FALSE`,col:t}:e instanceof Date?{type:$.Date,value:e,text:e.toLocaleDateString(),col:t}:null}async function JC(e,t){return DC(YC(e),t)}function YC(e){return{title:e.title||void 0,creator:e.creator||void 0,subject:e.subject||void 0,sheets:e.worksheets.map(t=>XC(t,e))}}function XC(e,t){let n=e.dimensions,r=n&&n.model.top>0&&n.model.left>0,i=r?{top:n.model.top,left:n.model.left,bottom:n.model.bottom,right:n.model.right}:{top:0,left:0,bottom:0,right:0},a=new Map;if(r)for(let t=i.left;t<=i.right;t++){let n=e.getColumn(t);a.set(t,{hidden:n.hidden||void 0,width:n.width??void 0})}let o=new Map;if(r)for(let t=i.top;t<=i.bottom;t++){let n=e.findRow(t);if(!n)continue;let r=new Map;n.eachCell({includeEmpty:!0},e=>{let t=e.type!==0&&e.type!==1,n=e.style&&(e.style.border&&(e.style.border.top||e.style.border.right||e.style.border.bottom||e.style.border.left)||e.style.fill||e.style.font);(t||n)&&r.set(e.col,ZC(e))}),o.set(t,{hidden:n.hidden||void 0,height:n.height??void 0,customHeight:n.customHeight||void 0,cells:r})}let s=e.hasMerges&&e.model.mergeCells?[...e.model.mergeCells]:void 0,c=e.pageSetup,l=c?{orientation:c.orientation,paperSize:c.paperSize,margins:c.margins?{left:c.margins.left,right:c.margins.right,top:c.margins.top,bottom:c.margins.bottom}:void 0,scale:c.scale,printTitlesRow:c.printTitlesRow,showGridLines:c.showGridLines,printArea:c.printArea}:void 0,u=e.rowBreaks?.map(e=>e.id),d=e.colBreaks?.map(e=>e.id),f=lw(e,t);if(f){for(let e of f){let t=e.range.tl,n=(t.nativeCol??t.col??0)+1,r=(t.nativeRow??t.row??0)+1;if(i.top===0&&i.left===0&&(i.top=1,i.left=1),n>i.right&&(i.right=n),r>i.bottom&&(i.bottom=r),e.range.br){let t=e.range.br,n=(t.nativeCol??t.col??0)+1,r=(t.nativeRow??t.row??0)+1;n>i.right&&(i.right=n),r>i.bottom&&(i.bottom=r)}}for(let t=i.left;t<=i.right;t++)if(!a.has(t)){let n=e.getColumn(t);a.set(t,{hidden:n.hidden||void 0,width:n.width??void 0})}for(let e=i.top;e<=i.bottom;e++)o.has(e)||o.set(e,{cells:new Map})}return{name:e.name,state:e.state??`visible`,bounds:i,columns:a,rows:o,merges:s,pageSetup:l,rowBreaks:u,colBreaks:d,images:f}}function ZC(e){let t=QC(e.type),n=$C(e),r=nw(e.style);return{type:t,value:tw(e),text:n,style:r,hyperlink:e.hyperlink||void 0,result:e.result??void 0,col:e.col}}function QC(e){switch(e){case 0:return $.Empty;case 1:return $.Merge;case 2:return $.Number;case 3:case 7:return $.String;case 4:return $.Date;case 5:return $.Hyperlink;case 6:return $.Formula;case 8:return $.RichText;case 9:return $.Boolean;case 10:return $.Error;default:return $.String}}function $C(e){if(!e)return``;switch(e.type){case 0:case 1:return``;case 8:case 5:return e.text??``;case 10:return e.value?.error??e.text??``;case 6:{let t=e.result;return t==null?e.text??``:typeof t==`object`&&`error`in t?t.error:ew(t,e.style?.numFmt)}default:{let t=e.value;return t==null?``:ew(t,e.style?.numFmt)}}}function ew(e,t){let n=typeof t==`string`?t:t?.formatCode;if(n&&(typeof e==`number`||e instanceof Date||typeof e==`boolean`))try{return Al(e,n)}catch{}return e instanceof Date?e.toLocaleDateString():String(e)}function tw(e){if(e.type===8){let t=e.value;if(t?.richText)return{richText:t.richText.map(e=>({text:e.text,font:e.font?rw(e.font):void 0}))}}return e.value}function nw(e){if(e)return{font:e.font?rw(e.font):void 0,numFmt:e.numFmt,fill:e.fill?aw(e.fill):void 0,border:e.border?sw(e.border):void 0,alignment:e.alignment?cw(e.alignment):void 0}}function rw(e){return{name:e.name,size:e.size,bold:e.bold,italic:e.italic,strike:e.strike,underline:e.underline,color:e.color?iw(e.color):void 0}}function iw(e){return{argb:e.argb,theme:e.theme,tint:e.tint}}function aw(e){let t={type:e.type??`pattern`,pattern:e.pattern,fgColor:e.fgColor?iw(e.fgColor):void 0};return e.stops&&(t.stops=e.stops.map(e=>({color:iw(e.color)}))),t}function ow(e){return{style:e.style,color:e.color?iw(e.color):void 0}}function sw(e){return{top:e.top?ow(e.top):void 0,right:e.right?ow(e.right):void 0,bottom:e.bottom?ow(e.bottom):void 0,left:e.left?ow(e.left):void 0}}function cw(e){return{horizontal:e.horizontal,vertical:e.vertical,wrapText:e.wrapText,indent:e.indent,textRotation:e.textRotation}}function lw(e,t){let n=e.getImages?.();if(!n||!Array.isArray(n)||n.length===0)return;let r=[];for(let e of n){if(!e.range?.tl)continue;let n=e.imageId,i=t.getImage?.(Number(n));if(!i)continue;let a;if(i.buffer instanceof Uint8Array?a=i.buffer:i.base64&&(a=kc(i.base64)),!a||a.length===0)continue;let o=i.extension;o!==`jpeg`&&o!==`png`||r.push({data:a,format:o,range:{tl:{col:e.range.tl.col??0,row:e.range.tl.row??0,nativeCol:e.range.tl.nativeCol,nativeRow:e.range.tl.nativeRow,nativeColOff:e.range.tl.nativeColOff,nativeRowOff:e.range.tl.nativeRowOff},br:e.range.br?{col:e.range.br.col??0,row:e.range.br.row??0,nativeCol:e.range.br.nativeCol,nativeRow:e.range.br.nativeRow,nativeColOff:e.range.br.nativeColOff,nativeRowOff:e.range.br.nativeRowOff}:void 0,ext:e.range.ext?{width:e.range.ext.width,height:e.range.ext.height}:void 0}})}return r.length>0?r:void 0}return e.Anchor=Rp,e.BaseError=n,e.Cell=B,e.Column=gc,e.ColumnOutOfBoundsError=Dr,e.CsvFormatterStream=Sr,e.CsvParserStream=br,e.DataValidations=zp,e.DateFormatter=tt,e.DateParser=$e,e.DefinedNames=$r,e.DocumentType=Vs,e.Enums=Ws,e.ErrorValue=Us,e.ExcelDownloadError=Fr,e.ExcelError=j,e.ExcelFileError=Nr,e.ExcelNotSupportedError=Mr,e.ExcelStreamStateError=Pr,e.FormCheckbox=Sg,e.FormulaType=zs,e.Image=Cg,e.ImageError=Rr,e.InvalidAddressError=Er,e.InvalidValueTypeError=Ar,e.MarkdownError=Yy,e.MarkdownParseError=Xy,e.MaxItemsExceededError=zr,e.MergeConflictError=kr,e.Note=_c,e.PageSizes=cS,e.PaperSize=Cb,e.PdfError=dx,e.PdfFontError=px,e.PdfRenderError=fx,e.PdfStructureError=mx,e.PivotTableError=Ir,e.Range=N,e.ReadingOrder=Hs,e.RelationshipType=Bs,e.Row=Ql,e.RowOutOfBoundsError=Or,e.Table=Ug,e.TableError=Lr,e.ValueType=Rs,e.Workbook=Sb,e.WorkbookReader=hf,e.WorkbookWriter=hg,e.Worksheet=K_,e.WorksheetNameError=Tr,e.WorksheetReader=$l,e.WorksheetWriter=Ch,e.XmlParseError=jr,e.base64ToUint8Array=kc,e.concatUint8Arrays=E,e.createCsvFormatterStream=Cr,e.createCsvParserStream=xr,e.createTextWatermarkImage=wb,e.dateToExcel=Ac,e.decodeCell=Jg,e.decodeCol=Wg,e.decodeRange=Xg,e.decodeRow=Kg,e.encodeCell=Yg,e.encodeCol=Gg,e.encodeRange=Zg,e.encodeRow=qg,e.errorToJSON=s,e.excelToDate=jc,e.excelToPdf=JC,e.getErrorChain=c,e.getRootCause=l,e.getSupportedFormats=nt,e.isExcelError=wr,e.isPdfError=hx,e.pdf=WC,e.stringToUint8Array=Cn,e.toError=o,e.toUint8Array=Tn,e.uint8ArrayToBase64=el,e.uint8ArrayToString=wn,e.xmlDecode=Cc,e.xmlEncode=R,e})({});
|